reshaped 3.4.1 → 3.4.3

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 (409) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/dist/bundle.css +1 -1
  3. package/dist/bundle.d.ts +8 -6
  4. package/dist/bundle.js +11 -11
  5. package/dist/cjs/cli/theming/index.js +0 -1
  6. package/dist/cjs/themes/_generator/definitions/figma.d.ts +1 -1
  7. package/dist/cjs/themes/_generator/definitions/figma.js +6 -5
  8. package/dist/cjs/themes/_generator/utilities/color.js +11 -11
  9. package/dist/cjs/themes/_generator/utilities/generateBackgroundColors.js +0 -2
  10. package/dist/cjs/themes/_generator/utilities/generateColors.js +1 -1
  11. package/dist/cjs/themes/_generator/utilities/generateUnits.js +0 -1
  12. package/dist/cjs/themes/_generator/utilities/mergeDeep.js +1 -1
  13. package/dist/cjs/themes/_generator/utilities/resolveTokenReference.js +2 -0
  14. package/dist/cjs/themes/figma/tailwind.css +1 -1
  15. package/dist/cjs/themes/figma/theme.css +1 -1
  16. package/dist/cli/theming/index.js +0 -1
  17. package/dist/components/Accordion/Accordion.d.ts +9 -2
  18. package/dist/components/Accordion/Accordion.js +1 -0
  19. package/dist/components/Accordion/AccordionContent.d.ts +4 -1
  20. package/dist/components/Accordion/AccordionContent.js +1 -0
  21. package/dist/components/Accordion/AccordionControlled.d.ts +4 -1
  22. package/dist/components/Accordion/AccordionControlled.js +1 -0
  23. package/dist/components/Accordion/AccordionTrigger.d.ts +4 -1
  24. package/dist/components/Accordion/AccordionTrigger.js +1 -0
  25. package/dist/components/Accordion/AccordionUncontrolled.d.ts +4 -1
  26. package/dist/components/Accordion/AccordionUncontrolled.js +1 -0
  27. package/dist/components/Accordion/tests/Accordion.stories.d.ts +9 -2
  28. package/dist/components/Accordion/tests/Accordion.stories.js +1 -1
  29. package/dist/components/ActionBar/ActionBar.d.ts +4 -1
  30. package/dist/components/ActionBar/ActionBar.js +1 -0
  31. package/dist/components/ActionBar/tests/ActionBar.stories.d.ts +4 -1
  32. package/dist/components/ActionBar/tests/ActionBar.test.stories.d.ts +4 -1
  33. package/dist/components/Actionable/Actionable.js +3 -0
  34. package/dist/components/Actionable/tests/Actionable.stories.js +1 -1
  35. package/dist/components/Actionable/tests/Actionable.test.stories.js +1 -1
  36. package/dist/components/Alert/Alert.d.ts +4 -1
  37. package/dist/components/Alert/Alert.js +1 -0
  38. package/dist/components/Alert/tests/Alert.stories.d.ts +4 -1
  39. package/dist/components/Alert/tests/Alert.test.stories.d.ts +4 -1
  40. package/dist/components/Autocomplete/Autocomplete.d.ts +5 -1
  41. package/dist/components/Autocomplete/Autocomplete.js +3 -0
  42. package/dist/components/Autocomplete/tests/Autocomplete.stories.d.ts +5 -1
  43. package/dist/components/Autocomplete/tests/Autocomplete.test.stories.d.ts +5 -1
  44. package/dist/components/Avatar/Avatar.d.ts +4 -1
  45. package/dist/components/Avatar/Avatar.js +1 -0
  46. package/dist/components/Avatar/tests/Avatar.stories.d.ts +4 -1
  47. package/dist/components/Avatar/tests/Avatar.test.stories.d.ts +4 -1
  48. package/dist/components/Badge/Badge.js +1 -0
  49. package/dist/components/Badge/BadgeContainer.d.ts +4 -1
  50. package/dist/components/Badge/BadgeContainer.js +1 -0
  51. package/dist/components/Breadcrumbs/Breadcrumbs.d.ts +4 -1
  52. package/dist/components/Breadcrumbs/Breadcrumbs.js +1 -0
  53. package/dist/components/Breadcrumbs/BreadcrumbsItem.d.ts +4 -1
  54. package/dist/components/Breadcrumbs/BreadcrumbsItem.js +1 -0
  55. package/dist/components/Breadcrumbs/index.d.ts +4 -1
  56. package/dist/components/Breadcrumbs/tests/Breadcrumbs.stories.d.ts +8 -2
  57. package/dist/components/Breadcrumbs/tests/Breadcrumbs.test.stories.d.ts +8 -2
  58. package/dist/components/Button/Button.js +1 -0
  59. package/dist/components/Button/ButtonAligner.d.ts +4 -1
  60. package/dist/components/Button/ButtonAligner.js +1 -0
  61. package/dist/components/Button/ButtonGroup.d.ts +4 -1
  62. package/dist/components/Button/ButtonGroup.js +1 -0
  63. package/dist/components/Calendar/Calendar.d.ts +4 -1
  64. package/dist/components/Calendar/Calendar.js +1 -0
  65. package/dist/components/Calendar/Calendar.module.css +1 -1
  66. package/dist/components/Calendar/Calendar.types.d.ts +4 -4
  67. package/dist/components/Calendar/CalendarControlled.d.ts +4 -1
  68. package/dist/components/Calendar/CalendarControlled.js +3 -2
  69. package/dist/components/Calendar/CalendarControls.d.ts +4 -1
  70. package/dist/components/Calendar/CalendarControls.js +1 -0
  71. package/dist/components/Calendar/CalendarDate.d.ts +4 -1
  72. package/dist/components/Calendar/CalendarDate.js +30 -11
  73. package/dist/components/Calendar/CalendarMonth.d.ts +4 -1
  74. package/dist/components/Calendar/CalendarMonth.js +3 -6
  75. package/dist/components/Calendar/CalendarUncontrolled.d.ts +4 -1
  76. package/dist/components/Calendar/CalendarUncontrolled.js +1 -0
  77. package/dist/components/Calendar/CalendarYear.d.ts +4 -1
  78. package/dist/components/Calendar/CalendarYear.js +1 -0
  79. package/dist/components/Calendar/tests/Calendar.stories.d.ts +23 -6
  80. package/dist/components/Calendar/tests/Calendar.stories.js +237 -27
  81. package/dist/components/Card/Card.d.ts +1 -1
  82. package/dist/components/Card/Card.js +3 -4
  83. package/dist/components/Card/tests/Card.stories.d.ts +1 -1
  84. package/dist/components/Card/tests/Card.test.stories.d.ts +1 -1
  85. package/dist/components/Carousel/Carousel.d.ts +4 -1
  86. package/dist/components/Carousel/Carousel.js +2 -2
  87. package/dist/components/Carousel/Carousel.types.d.ts +1 -5
  88. package/dist/components/Carousel/Carousel.types.js +1 -5
  89. package/dist/components/Carousel/CarouselControl.d.ts +4 -1
  90. package/dist/components/Carousel/CarouselControl.js +3 -3
  91. package/dist/components/Carousel/tests/Carousel.stories.d.ts +4 -1
  92. package/dist/components/Checkbox/Checkbox.d.ts +4 -1
  93. package/dist/components/Checkbox/Checkbox.js +1 -0
  94. package/dist/components/Checkbox/tests/Checkbox.stories.d.ts +4 -1
  95. package/dist/components/Checkbox/tests/Checkbox.test.stories.d.ts +4 -1
  96. package/dist/components/CheckboxGroup/CheckboxGroup.d.ts +4 -1
  97. package/dist/components/CheckboxGroup/CheckboxGroup.js +1 -0
  98. package/dist/components/CheckboxGroup/CheckboxGroupControlled.d.ts +4 -1
  99. package/dist/components/CheckboxGroup/CheckboxGroupControlled.js +1 -0
  100. package/dist/components/CheckboxGroup/CheckboxGroupUncontrolled.d.ts +4 -1
  101. package/dist/components/CheckboxGroup/CheckboxGroupUncontrolled.js +1 -0
  102. package/dist/components/CheckboxGroup/tests/CheckboxGroup.stories.d.ts +4 -1
  103. package/dist/components/CheckboxGroup/tests/CheckboxGroup.test.stories.d.ts +4 -1
  104. package/dist/components/Container/Container.d.ts +4 -1
  105. package/dist/components/Container/Container.js +1 -0
  106. package/dist/components/Container/tests/Container.stories.d.ts +4 -1
  107. package/dist/components/Container/tests/Container.stories.js +1 -1
  108. package/dist/components/Container/tests/Container.test.stories.d.ts +4 -1
  109. package/dist/components/Container/tests/Container.test.stories.js +1 -1
  110. package/dist/components/ContextMenu/ContextMenu.d.ts +21 -5
  111. package/dist/components/ContextMenu/ContextMenu.js +1 -0
  112. package/dist/components/ContextMenu/tests/ContextMenu.stories.d.ts +21 -5
  113. package/dist/components/ContextMenu/tests/ContextMenu.test.stories.d.ts +21 -5
  114. package/dist/components/Dismissible/Dismissible.d.ts +4 -1
  115. package/dist/components/Dismissible/Dismissible.js +1 -0
  116. package/dist/components/Dismissible/tests/Dismissible.stories.d.ts +4 -1
  117. package/dist/components/Dismissible/tests/Dismissible.stories.js +1 -1
  118. package/dist/components/Dismissible/tests/Dismissible.test.stories.d.ts +4 -1
  119. package/dist/components/Dismissible/tests/Dismissible.test.stories.js +1 -1
  120. package/dist/components/Divider/Divider.d.ts +4 -1
  121. package/dist/components/Divider/Divider.js +1 -0
  122. package/dist/components/Divider/tests/Divider.stories.d.ts +4 -1
  123. package/dist/components/Divider/tests/Divider.test.stories.d.ts +4 -1
  124. package/dist/components/DropdownMenu/DropdownMenu.d.ts +29 -7
  125. package/dist/components/DropdownMenu/DropdownMenu.js +7 -1
  126. package/dist/components/DropdownMenu/tests/DropdownMenu.stories.d.ts +29 -7
  127. package/dist/components/DropdownMenu/tests/DropdownMenu.test.stories.d.ts +29 -7
  128. package/dist/components/FileUpload/FileUpload.d.ts +5 -1
  129. package/dist/components/FileUpload/FileUpload.js +2 -0
  130. package/dist/components/FileUpload/tests/FileUpload.stories.d.ts +5 -1
  131. package/dist/components/FileUpload/tests/FileUpload.test.stories.d.ts +5 -1
  132. package/dist/components/FormControl/FormControl.context.d.ts +4 -0
  133. package/dist/components/FormControl/FormControl.js +1 -0
  134. package/dist/components/FormControl/FormControlError.d.ts +4 -1
  135. package/dist/components/FormControl/FormControlError.js +1 -0
  136. package/dist/components/FormControl/FormControlHelper.d.ts +4 -1
  137. package/dist/components/FormControl/FormControlHelper.js +1 -0
  138. package/dist/components/FormControl/FormControlLabel.d.ts +4 -1
  139. package/dist/components/FormControl/FormControlLabel.js +1 -0
  140. package/dist/components/FormControl/tests/FormControl.stories.js +1 -1
  141. package/dist/components/FormControl/tests/FormControl.test.stories.js +1 -1
  142. package/dist/components/Grid/Grid.d.ts +5 -1
  143. package/dist/components/Grid/Grid.js +10 -2
  144. package/dist/components/Grid/tests/Grid.stories.d.ts +5 -1
  145. package/dist/components/Grid/tests/Grid.stories.js +1 -1
  146. package/dist/components/Grid/tests/Grid.test.stories.d.ts +5 -1
  147. package/dist/components/Grid/tests/Grid.test.stories.js +1 -1
  148. package/dist/components/Hidden/Hidden.d.ts +4 -1
  149. package/dist/components/Hidden/Hidden.js +1 -0
  150. package/dist/components/Hidden/tests/Hidden.stories.d.ts +4 -1
  151. package/dist/components/Hidden/tests/Hidden.stories.js +1 -1
  152. package/dist/components/Hidden/tests/Hidden.test.stories.d.ts +4 -1
  153. package/dist/components/Hidden/tests/Hidden.test.stories.js +1 -1
  154. package/dist/components/HiddenVisually/HiddenVisually.d.ts +4 -1
  155. package/dist/components/HiddenVisually/HiddenVisually.js +1 -0
  156. package/dist/components/HiddenVisually/tests/HiddenVisually.stories.d.ts +4 -1
  157. package/dist/components/HiddenVisually/tests/HiddenVisually.stories.js +1 -1
  158. package/dist/components/HiddenVisually/tests/HiddenVisually.test.stories.d.ts +4 -1
  159. package/dist/components/HiddenVisually/tests/HiddenVisually.test.stories.js +1 -1
  160. package/dist/components/Hotkey/Hotkey.d.ts +4 -1
  161. package/dist/components/Hotkey/Hotkey.js +1 -0
  162. package/dist/components/Hotkey/tests/Hotkey.stories.d.ts +4 -1
  163. package/dist/components/Hotkey/tests/Hotkey.test.stories.d.ts +4 -1
  164. package/dist/components/Icon/Icon.d.ts +4 -1
  165. package/dist/components/Icon/Icon.js +2 -3
  166. package/dist/components/Icon/tests/Icon.stories.d.ts +4 -1
  167. package/dist/components/Icon/tests/Icon.stories.js +1 -1
  168. package/dist/components/Icon/tests/Icon.test.stories.d.ts +4 -1
  169. package/dist/components/Icon/tests/Icon.test.stories.js +1 -1
  170. package/dist/components/Image/Image.d.ts +4 -1
  171. package/dist/components/Image/Image.js +1 -0
  172. package/dist/components/Image/tests/Image.stories.d.ts +4 -1
  173. package/dist/components/Image/tests/Image.stories.js +1 -1
  174. package/dist/components/Image/tests/Image.test.stories.d.ts +4 -1
  175. package/dist/components/Image/tests/Image.test.stories.js +1 -1
  176. package/dist/components/Link/Link.js +1 -0
  177. package/dist/components/Loader/Loader.d.ts +4 -1
  178. package/dist/components/Loader/Loader.js +1 -0
  179. package/dist/components/Loader/tests/Loader.stories.d.ts +4 -1
  180. package/dist/components/Loader/tests/Loader.test.stories.d.ts +4 -1
  181. package/dist/components/MenuItem/MenuItem.js +1 -0
  182. package/dist/components/MenuItem/MenuItemAligner.d.ts +4 -1
  183. package/dist/components/MenuItem/MenuItemAligner.js +1 -0
  184. package/dist/components/Modal/Modal.d.ts +9 -2
  185. package/dist/components/Modal/Modal.js +3 -0
  186. package/dist/components/Modal/tests/Modal.stories.d.ts +9 -2
  187. package/dist/components/Modal/tests/Modal.test.stories.d.ts +9 -2
  188. package/dist/components/Overlay/Overlay.d.ts +4 -1
  189. package/dist/components/Overlay/Overlay.js +1 -0
  190. package/dist/components/Overlay/tests/Overlay.stories.d.ts +4 -1
  191. package/dist/components/Overlay/tests/Overlay.stories.js +1 -1
  192. package/dist/components/Overlay/tests/Overlay.test.stories.d.ts +4 -1
  193. package/dist/components/Overlay/tests/Overlay.test.stories.js +1 -1
  194. package/dist/components/Pagination/Pagination.d.ts +4 -1
  195. package/dist/components/Pagination/Pagination.js +1 -0
  196. package/dist/components/Pagination/PaginationControlled.d.ts +4 -1
  197. package/dist/components/Pagination/PaginationControlled.js +1 -0
  198. package/dist/components/Pagination/PaginationUncontrolled.d.ts +4 -1
  199. package/dist/components/Pagination/PaginationUncontrolled.js +1 -0
  200. package/dist/components/Pagination/tests/Pagination.stories.d.ts +4 -1
  201. package/dist/components/Pagination/tests/Pagination.test.stories.d.ts +4 -1
  202. package/dist/components/PinField/PinField.d.ts +4 -1
  203. package/dist/components/PinField/PinField.js +1 -0
  204. package/dist/components/PinField/PinFieldControlled.d.ts +4 -1
  205. package/dist/components/PinField/PinFieldControlled.js +1 -1
  206. package/dist/components/PinField/PinFieldUncontrolled.d.ts +4 -1
  207. package/dist/components/PinField/PinFieldUncontrolled.js +1 -0
  208. package/dist/components/PinField/tests/PinField.stories.d.ts +4 -1
  209. package/dist/components/PinField/tests/PinField.test.stories.d.ts +4 -1
  210. package/dist/components/Popover/Popover.d.ts +13 -3
  211. package/dist/components/Popover/Popover.js +2 -0
  212. package/dist/components/Popover/tests/Popover.stories.d.ts +13 -3
  213. package/dist/components/Popover/tests/Popover.test.stories.d.ts +13 -3
  214. package/dist/components/Progress/Progress.d.ts +4 -1
  215. package/dist/components/Progress/Progress.js +1 -0
  216. package/dist/components/Progress/tests/Progress.stories.d.ts +4 -1
  217. package/dist/components/Progress/tests/Progress.test.stories.d.ts +4 -1
  218. package/dist/components/ProgressIndicator/ProgressIndicator.d.ts +4 -1
  219. package/dist/components/ProgressIndicator/ProgressIndicator.js +1 -0
  220. package/dist/components/ProgressIndicator/tests/ProgressIndicator.stories.d.ts +4 -1
  221. package/dist/components/Radio/Radio.d.ts +4 -1
  222. package/dist/components/Radio/Radio.js +1 -0
  223. package/dist/components/Radio/tests/Radio.stories.d.ts +4 -1
  224. package/dist/components/Radio/tests/Radio.test.stories.d.ts +4 -1
  225. package/dist/components/RadioGroup/RadioGroup.d.ts +4 -1
  226. package/dist/components/RadioGroup/RadioGroup.js +1 -0
  227. package/dist/components/RadioGroup/RadioGroupControlled.d.ts +4 -1
  228. package/dist/components/RadioGroup/RadioGroupControlled.js +1 -0
  229. package/dist/components/RadioGroup/RadioGroupUncontrolled.d.ts +4 -1
  230. package/dist/components/RadioGroup/RadioGroupUncontrolled.js +1 -0
  231. package/dist/components/RadioGroup/tests/RadioGroup.stories.d.ts +4 -1
  232. package/dist/components/RadioGroup/tests/RadioGroup.test.stories.d.ts +4 -1
  233. package/dist/components/Reshaped/Reshaped.d.ts +4 -1
  234. package/dist/components/Reshaped/Reshaped.js +1 -0
  235. package/dist/components/Reshaped/tests/Reshaped.stories.js +1 -1
  236. package/dist/components/Resizable/Resizable.d.ts +1 -0
  237. package/dist/components/Resizable/Resizable.js +3 -1
  238. package/dist/components/Resizable/Resizable.types.d.ts +1 -1
  239. package/dist/components/Resizable/tests/Resizable.stories.d.ts +1 -0
  240. package/dist/components/Resizable/tests/Resizable.test.stories.d.ts +1 -0
  241. package/dist/components/Scrim/Scrim.d.ts +4 -1
  242. package/dist/components/Scrim/Scrim.js +1 -0
  243. package/dist/components/Scrim/tests/Scrim.stories.d.ts +4 -1
  244. package/dist/components/Scrim/tests/Scrim.test.stories.d.ts +4 -1
  245. package/dist/components/ScrollArea/ScrollArea.js +1 -0
  246. package/dist/components/ScrollArea/tests/ScrollArea.stories.js +1 -1
  247. package/dist/components/ScrollArea/tests/ScrollArea.test.stories.js +1 -1
  248. package/dist/components/Select/Select.d.ts +4 -1
  249. package/dist/components/Select/Select.js +1 -0
  250. package/dist/components/Select/tests/Select.stories.d.ts +4 -1
  251. package/dist/components/Select/tests/Select.test.stories.d.ts +4 -1
  252. package/dist/components/Skeleton/Skeleton.d.ts +4 -1
  253. package/dist/components/Skeleton/Skeleton.js +1 -0
  254. package/dist/components/Skeleton/tests/Skeleton.stories.d.ts +4 -1
  255. package/dist/components/Skeleton/tests/Skeleton.test.stories.d.ts +4 -1
  256. package/dist/components/Slider/Slider.d.ts +4 -1
  257. package/dist/components/Slider/Slider.js +1 -0
  258. package/dist/components/Slider/SliderControlled.d.ts +4 -1
  259. package/dist/components/Slider/SliderControlled.js +10 -3
  260. package/dist/components/Slider/SliderThumb.js +1 -0
  261. package/dist/components/Slider/SliderUncontrolled.d.ts +4 -1
  262. package/dist/components/Slider/SliderUncontrolled.js +1 -0
  263. package/dist/components/Slider/tests/Slider.stories.d.ts +4 -1
  264. package/dist/components/Slider/tests/Slider.test.stories.d.ts +4 -1
  265. package/dist/components/Stepper/Stepper.d.ts +5 -1
  266. package/dist/components/Stepper/Stepper.js +9 -2
  267. package/dist/components/Stepper/tests/Stepper.stories.d.ts +5 -1
  268. package/dist/components/Stepper/tests/Stepper.test.stories.d.ts +5 -1
  269. package/dist/components/Switch/Switch.d.ts +4 -1
  270. package/dist/components/Switch/Switch.js +1 -0
  271. package/dist/components/Switch/tests/Switch.stories.d.ts +4 -1
  272. package/dist/components/Switch/tests/Switch.test.stories.d.ts +4 -1
  273. package/dist/components/Table/Table.d.ts +21 -5
  274. package/dist/components/Table/Table.js +6 -0
  275. package/dist/components/Table/tests/Table.stories.d.ts +21 -5
  276. package/dist/components/Table/tests/Table.test.stories.d.ts +21 -5
  277. package/dist/components/Tabs/Tabs.d.ts +9 -2
  278. package/dist/components/Tabs/Tabs.js +1 -0
  279. package/dist/components/Tabs/TabsControlled.d.ts +4 -1
  280. package/dist/components/Tabs/TabsControlled.js +1 -0
  281. package/dist/components/Tabs/TabsItem.js +1 -0
  282. package/dist/components/Tabs/TabsList.d.ts +4 -1
  283. package/dist/components/Tabs/TabsList.js +8 -3
  284. package/dist/components/Tabs/TabsPanel.d.ts +4 -1
  285. package/dist/components/Tabs/TabsPanel.js +1 -0
  286. package/dist/components/Tabs/TabsUncontrolled.d.ts +4 -1
  287. package/dist/components/Tabs/TabsUncontrolled.js +1 -0
  288. package/dist/components/Tabs/tests/Tabs.stories.d.ts +9 -2
  289. package/dist/components/Tabs/tests/Tabs.test.stories.d.ts +9 -2
  290. package/dist/components/Text/Text.d.ts +4 -1
  291. package/dist/components/Text/Text.js +3 -4
  292. package/dist/components/Text/tests/Text.stories.d.ts +4 -1
  293. package/dist/components/Text/tests/Text.stories.js +1 -1
  294. package/dist/components/Text/tests/Text.test.stories.d.ts +4 -1
  295. package/dist/components/Text/tests/Text.test.stories.js +1 -1
  296. package/dist/components/TextArea/TextArea.d.ts +5 -1
  297. package/dist/components/TextArea/TextArea.js +1 -0
  298. package/dist/components/TextArea/tests/TextArea.stories.d.ts +5 -1
  299. package/dist/components/TextArea/tests/TextArea.test.stories.d.ts +5 -1
  300. package/dist/components/TextField/TextField.d.ts +5 -1
  301. package/dist/components/TextField/TextField.js +1 -0
  302. package/dist/components/TextField/tests/TextField.stories.d.ts +5 -1
  303. package/dist/components/TextField/tests/TextField.test.stories.d.ts +5 -1
  304. package/dist/components/Theme/GlobalColorMode.d.ts +4 -1
  305. package/dist/components/Theme/GlobalColorMode.js +1 -0
  306. package/dist/components/Theme/Theme.d.ts +4 -1
  307. package/dist/components/Theme/Theme.js +1 -0
  308. package/dist/components/Theme/tests/Theme.test.stories.d.ts +4 -1
  309. package/dist/components/Theme/tests/Theme.test.stories.js +1 -1
  310. package/dist/components/Timeline/Timeline.d.ts +5 -1
  311. package/dist/components/Timeline/Timeline.js +3 -1
  312. package/dist/components/Timeline/tests/Timeline.stories.d.ts +5 -1
  313. package/dist/components/Timeline/tests/Timeline.test.stories.d.ts +5 -1
  314. package/dist/components/Toast/Toast.d.ts +6 -3
  315. package/dist/components/Toast/Toast.js +1 -0
  316. package/dist/components/Toast/ToastContainer.d.ts +4 -1
  317. package/dist/components/Toast/ToastContainer.js +1 -0
  318. package/dist/components/Toast/ToastProvider.d.ts +4 -1
  319. package/dist/components/Toast/ToastProvider.js +9 -4
  320. package/dist/components/Toast/ToastRegion.d.ts +4 -1
  321. package/dist/components/Toast/ToastRegion.js +1 -0
  322. package/dist/components/Tooltip/Tooltip.d.ts +4 -1
  323. package/dist/components/Tooltip/Tooltip.js +1 -0
  324. package/dist/components/Tooltip/tests/Tooltip.stories.d.ts +4 -1
  325. package/dist/components/Tooltip/tests/Tooltip.test.stories.d.ts +4 -1
  326. package/dist/components/View/View.d.ts +5 -1
  327. package/dist/components/View/View.js +12 -5
  328. package/dist/components/View/tests/View.stories.d.ts +5 -1
  329. package/dist/components/View/tests/View.stories.js +1 -1
  330. package/dist/components/View/tests/View.test.stories.d.ts +5 -1
  331. package/dist/components/View/tests/View.test.stories.js +1 -1
  332. package/dist/components/_private/Aligner/Aligner.d.ts +4 -1
  333. package/dist/components/_private/Aligner/Aligner.js +1 -0
  334. package/dist/components/_private/Expandable/Expandable.d.ts +4 -1
  335. package/dist/components/_private/Expandable/Expandable.js +1 -0
  336. package/dist/components/_private/Flyout/Flyout.d.ts +9 -2
  337. package/dist/components/_private/Flyout/Flyout.js +1 -0
  338. package/dist/components/_private/Flyout/FlyoutContent.d.ts +4 -1
  339. package/dist/components/_private/Flyout/FlyoutContent.js +5 -1
  340. package/dist/components/_private/Flyout/FlyoutControlled.d.ts +5 -2
  341. package/dist/components/_private/Flyout/FlyoutControlled.js +8 -9
  342. package/dist/components/_private/Flyout/FlyoutTrigger.d.ts +4 -1
  343. package/dist/components/_private/Flyout/FlyoutTrigger.js +2 -1
  344. package/dist/components/_private/Flyout/FlyoutUncontrolled.d.ts +4 -1
  345. package/dist/components/_private/Flyout/FlyoutUncontrolled.js +1 -0
  346. package/dist/components/_private/Flyout/useFlyout.js +2 -0
  347. package/dist/components/_private/HiddenInput/HiddenInput.d.ts +4 -1
  348. package/dist/components/_private/HiddenInput/HiddenInput.js +1 -0
  349. package/dist/components/_private/Portal/Portal.d.ts +5 -1
  350. package/dist/components/_private/Portal/Portal.js +2 -0
  351. package/dist/config/tailwind.d.ts +1 -1
  352. package/dist/hooks/{useDrag.js → _private/useDrag.js} +6 -6
  353. package/dist/hooks/_private/useSingletonHotkeys.js +2 -0
  354. package/dist/hooks/tests/useDrag.stories.d.ts +26 -1
  355. package/dist/hooks/tests/useDrag.stories.js +120 -3
  356. package/dist/hooks/tests/useElementId.stories.d.ts +5 -0
  357. package/dist/hooks/tests/useElementId.stories.js +6 -2
  358. package/dist/hooks/tests/useHandlerRef.stories.d.ts +14 -0
  359. package/dist/hooks/tests/useHandlerRef.stories.js +44 -0
  360. package/dist/hooks/tests/useHotkeys.stories.d.ts +39 -1
  361. package/dist/hooks/tests/useHotkeys.stories.js +157 -38
  362. package/dist/hooks/tests/useKeyboardMode.stories.d.ts +5 -0
  363. package/dist/hooks/tests/useKeyboardMode.stories.js +6 -1
  364. package/dist/hooks/tests/useOnClickOutside.stories.d.ts +23 -0
  365. package/dist/hooks/tests/useOnClickOutside.stories.js +111 -0
  366. package/dist/hooks/tests/useRTL.stories.d.ts +5 -0
  367. package/dist/hooks/tests/useRTL.stories.js +9 -11
  368. package/dist/hooks/tests/useResponsiveClientValue.stories.d.ts +5 -0
  369. package/dist/hooks/tests/useResponsiveClientValue.stories.js +6 -1
  370. package/dist/hooks/tests/useScrollLock.stories.d.ts +7 -0
  371. package/dist/hooks/tests/useScrollLock.stories.js +47 -1
  372. package/dist/hooks/tests/useToggle.stories.d.ts +5 -0
  373. package/dist/hooks/tests/useToggle.stories.js +6 -1
  374. package/dist/hooks/useHandlerRef.js +1 -1
  375. package/dist/hooks/{_private/useOnClickOutside.d.ts → useOnClickOutside.d.ts} +3 -1
  376. package/dist/hooks/{_private/useOnClickOutside.js → useOnClickOutside.js} +13 -4
  377. package/dist/hooks/useResponsiveClientValue.d.ts +1 -1
  378. package/dist/hooks/useScrollLock.d.ts +1 -1
  379. package/dist/hooks/useScrollLock.js +2 -2
  380. package/dist/index.d.ts +8 -6
  381. package/dist/index.js +7 -4
  382. package/dist/tests/ShadowDOM.stories.js +1 -1
  383. package/dist/themes/_generator/definitions/figma.d.ts +1 -1
  384. package/dist/themes/_generator/definitions/figma.js +6 -5
  385. package/dist/themes/_generator/tests/themes.stories.js +1 -1
  386. package/dist/themes/_generator/utilities/color.js +11 -11
  387. package/dist/themes/_generator/utilities/generateBackgroundColors.js +0 -2
  388. package/dist/themes/_generator/utilities/generateColors.js +1 -1
  389. package/dist/themes/_generator/utilities/generateUnits.js +0 -1
  390. package/dist/themes/_generator/utilities/mergeDeep.js +1 -1
  391. package/dist/themes/_generator/utilities/resolveTokenReference.js +2 -0
  392. package/dist/themes/figma/tailwind.css +1 -1
  393. package/dist/themes/figma/theme.css +1 -1
  394. package/dist/types/global.d.ts +2 -2
  395. package/dist/utilities/a11y/TrapFocus.d.ts +1 -1
  396. package/dist/utilities/a11y/TrapFocus.js +17 -11
  397. package/dist/utilities/a11y/tests/TrapFocus.stories.d.ts +10 -2
  398. package/dist/utilities/a11y/tests/TrapFocus.stories.js +596 -40
  399. package/dist/utilities/a11y/types.d.ts +3 -1
  400. package/dist/utilities/helpers.js +4 -1
  401. package/dist/utilities/platform.js +1 -0
  402. package/package.json +36 -40
  403. package/dist/components/Calendar/tests/Calendar.test.stories.d.ts +0 -26
  404. package/dist/components/Calendar/tests/Calendar.test.stories.js +0 -161
  405. package/dist/hooks/tests/useDrag.test.stories.d.ts +0 -26
  406. package/dist/hooks/tests/useDrag.test.stories.js +0 -120
  407. package/dist/hooks/tests/useHotkeys.test.stories.d.ts +0 -39
  408. package/dist/hooks/tests/useHotkeys.test.stories.js +0 -119
  409. /package/dist/hooks/{useDrag.d.ts → _private/useDrag.d.ts} +0 -0
@@ -7,12 +7,14 @@ export const range = (start, end) => {
7
7
  return Array.from({ length: end - start + 1 }, (_, i) => start + i);
8
8
  };
9
9
  // from https://gist.github.com/ca0v/73a31f57b397606c9813472f7493a940
10
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-function-type
10
11
  export const debounce = (cb, wait = 20) => {
11
12
  let timer;
12
13
  const callable = (...args) => {
13
14
  clearTimeout(timer);
14
15
  timer = setTimeout(() => cb(...args), wait);
15
16
  };
17
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
16
18
  return callable;
17
19
  };
18
20
  export function debounceHandler(handler, timeout) {
@@ -23,6 +25,7 @@ export function debounceHandler(handler, timeout) {
23
25
  return debounced(event);
24
26
  };
25
27
  }
28
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-function-type
26
29
  export const throttle = (cb, wait) => {
27
30
  let waiting = false;
28
31
  return (...args) => {
@@ -131,7 +134,7 @@ export const resolveViewportValue = (viewport, value) => {
131
134
  let result;
132
135
  if (!isResponsive(value))
133
136
  return value;
134
- for (let currentViewport of viewports) {
137
+ for (const currentViewport of viewports) {
135
138
  const viewportValue = value[currentViewport];
136
139
  if (viewportValue !== undefined)
137
140
  result = viewportValue;
@@ -1,6 +1,7 @@
1
1
  const testPlatform = (re) => {
2
2
  // Using experimentral and deprecated features here since that's the only way to detect platform consistently
3
3
  const platform =
4
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
4
5
  // @ts-ignore
5
6
  window.navigator.userAgentData?.platform || window.navigator.platform;
6
7
  return typeof window !== "undefined" ? re.test(platform) : false;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "reshaped",
3
3
  "description": "Professionally crafted design system in React & Figma for building products of any scale and complexity",
4
- "version": "3.4.1",
4
+ "version": "3.4.3",
5
5
  "license": "MIT",
6
6
  "email": "hello@reshaped.so",
7
7
  "homepage": "https://reshaped.so",
@@ -95,62 +95,58 @@
95
95
  "defaults and not IE 11"
96
96
  ],
97
97
  "devDependencies": {
98
- "@commitlint/cli": "19.7.1",
99
- "@commitlint/config-conventional": "19.7.1",
100
- "@commitlint/types": "19.5.0",
101
- "@eslint/js": "9.16.0",
98
+ "@commitlint/cli": "19.8.0",
99
+ "@commitlint/config-conventional": "19.8.0",
100
+ "@commitlint/types": "19.8.0",
101
+ "@eslint/js": "9.23.0",
102
102
  "@size-limit/preset-big-lib": "11.2.0",
103
- "@storybook/addon-a11y": "8.6.2",
104
- "@storybook/addon-actions": "8.6.2",
105
- "@storybook/addon-controls": "8.6.2",
106
- "@storybook/addon-docs": "8.6.2",
107
- "@storybook/addon-storysource": "8.6.2",
108
- "@storybook/experimental-addon-test": "8.6.2",
109
- "@storybook/react": "8.6.2",
110
- "@storybook/react-vite": "8.6.2",
103
+ "@storybook/addon-a11y": "8.6.9",
104
+ "@storybook/addon-actions": "8.6.9",
105
+ "@storybook/addon-controls": "8.6.9",
106
+ "@storybook/addon-docs": "8.6.9",
107
+ "@storybook/addon-storysource": "8.6.9",
108
+ "@storybook/experimental-addon-test": "8.6.9",
109
+ "@storybook/react": "8.6.9",
110
+ "@storybook/react-vite": "8.6.9",
111
111
  "@types/culori": "2.1.1",
112
112
  "@types/events": "3.0.3",
113
- "@types/node": "22.13.5",
114
- "@types/react": "19.0.10",
113
+ "@types/node": "22.13.13",
114
+ "@types/react": "19.0.12",
115
115
  "@types/react-dom": "19.0.4",
116
- "@typescript-eslint/eslint-plugin": "7.18.0",
117
- "@typescript-eslint/parser": "7.18.0",
118
116
  "@vitejs/plugin-react": "4.3.4",
119
- "@vitest/browser": "3.0.7",
120
- "@vitest/coverage-istanbul": "3.0.7",
121
- "@vitest/coverage-v8": "3.0.7",
122
- "chromatic": "11.26.1",
117
+ "@vitest/browser": "3.0.9",
118
+ "@vitest/coverage-istanbul": "3.0.9",
119
+ "@vitest/coverage-v8": "3.0.9",
120
+ "chromatic": "11.27.0",
123
121
  "cz-conventional-changelog": "3.3.0",
124
- "eslint": "8.57.1",
125
- "eslint-config-prettier": "9.1.0",
126
- "eslint-plugin-import": "2.31.0",
122
+ "eslint": "9.23.0",
123
+ "eslint-config-prettier": "10.1.1",
127
124
  "eslint-plugin-jsx-a11y": "6.10.2",
128
- "eslint-plugin-prettier": "5.2.1",
129
- "eslint-plugin-react": "7.37.2",
130
- "eslint-plugin-react-hooks": "5.0.0",
131
- "globals": "15.12.0",
132
- "lefthook": "1.11.2",
133
- "playwright": "1.50.1",
125
+ "eslint-plugin-prettier": "5.2.5",
126
+ "eslint-plugin-react": "7.37.4",
127
+ "eslint-plugin-react-hooks": "5.2.0",
128
+ "lefthook": "1.11.5",
129
+ "playwright": "1.51.1",
134
130
  "postcss": "8.5.3",
135
- "postcss-cli": "11.0.0",
131
+ "postcss-cli": "11.0.1",
136
132
  "postcss-each": "1.1.0",
137
133
  "postcss-nested": "7.0.2",
138
- "prettier": "3.5.2",
134
+ "prettier": "3.5.3",
139
135
  "react": "18",
140
136
  "react-dom": "18",
141
- "react-shadow": "20.5.0",
137
+ "react-shadow": "20.6.0",
142
138
  "resolve-tspaths": "0.8.23",
143
139
  "size-limit": "11.2.0",
144
- "storybook": "8.6.2",
145
- "stylelint": "16.14.1",
140
+ "storybook": "8.6.9",
141
+ "stylelint": "16.16.0",
146
142
  "stylelint-config-prettier": "9.0.5",
147
143
  "stylelint-config-standard": "37.0.0",
148
144
  "ts-node": "10.9.2",
149
- "typescript": "5.7.3",
150
- "typescript-eslint": "8.16.0",
151
- "vite": "6.2.0",
145
+ "typescript": "5.8.2",
146
+ "typescript-eslint": "8.28.0",
147
+ "vite": "6.2.3",
152
148
  "vite-tsconfig-paths": "5.1.4",
153
- "vitest": "3.0.7",
149
+ "vitest": "3.0.9",
154
150
  "vitest-browser-react": "0.1.1"
155
151
  },
156
152
  "peerDependencies": {
@@ -161,7 +157,7 @@
161
157
  "dependencies": {
162
158
  "@csstools/postcss-global-data": "3.0.0",
163
159
  "chalk": "4.1.2",
164
- "commander": "12.1.0",
160
+ "commander": "13.1.0",
165
161
  "cssnano": "7.0.6",
166
162
  "csstype": "3.1.3",
167
163
  "culori": "4.0.1",
@@ -1,26 +0,0 @@
1
- import { StoryObj } from "@storybook/react";
2
- import { fn } from "@storybook/test";
3
- declare const _default: {
4
- title: string;
5
- component: (props: import("./..").CalendarProps) => import("react").JSX.Element;
6
- parameters: {
7
- iframe: {
8
- url: string;
9
- };
10
- chromatic: {
11
- disableSnapshot: boolean;
12
- };
13
- };
14
- };
15
- export default _default;
16
- export declare const base: StoryObj;
17
- export declare const onChange: StoryObj<{
18
- handleChange: ReturnType<typeof fn>;
19
- }>;
20
- export declare const defaultValue: StoryObj;
21
- export declare const value: StoryObj;
22
- export declare const range: StoryObj;
23
- export declare const minMax: StoryObj;
24
- export declare const monthSelection: StoryObj;
25
- export declare const ariaLabels: StoryObj;
26
- export declare const keyboardNavigation: StoryObj;
@@ -1,161 +0,0 @@
1
- import { expect, userEvent, fn } from "@storybook/test";
2
- import Calendar from "../index.js";
3
- export default {
4
- title: "Components/Calendar/tests",
5
- component: Calendar,
6
- parameters: {
7
- iframe: {
8
- url: "https://reshaped.so/docs/components/calendar",
9
- },
10
- chromatic: { disableSnapshot: true },
11
- },
12
- };
13
- export const base = {
14
- name: "base",
15
- render: () => <Calendar defaultMonth={new Date(2020, 0, 1)}/>,
16
- play: async ({ canvas }) => {
17
- const monthTitleEl = canvas.getByText("January 2020");
18
- const gridEl = canvas.getByRole("grid");
19
- const gridCellEls = canvas.getAllByRole("gridcell");
20
- const dateEls = canvas.getAllByRole("checkbox");
21
- const buttonEls = canvas.getAllByRole("button");
22
- expect(monthTitleEl).toBeInTheDocument();
23
- expect(gridEl).toBeInTheDocument();
24
- expect(gridCellEls).toHaveLength(31);
25
- expect(dateEls).toHaveLength(31);
26
- expect(dateEls[0].getAttribute("aria-label")).toBe("Wednesday, January 1");
27
- expect(dateEls[0]).toHaveAttribute("tabIndex", "0");
28
- expect(dateEls[1]).toHaveAttribute("tabIndex", "-1");
29
- // Previous month button
30
- expect(buttonEls[0].getAttribute("aria-label")).toBe("Previous month");
31
- // Month select button
32
- expect(buttonEls[1].innerHTML).toContain("Select a month");
33
- // Next month button
34
- expect(buttonEls[2].getAttribute("aria-label")).toBe("Next month");
35
- },
36
- };
37
- export const onChange = {
38
- name: "onChange",
39
- args: {
40
- handleChange: fn(),
41
- },
42
- render: (args) => <Calendar defaultMonth={new Date(2020, 0)} onChange={args.handleChange}/>,
43
- play: async ({ canvas, args }) => {
44
- const dateEls = canvas.getAllByRole("checkbox");
45
- await userEvent.click(dateEls[1]);
46
- expect(args.handleChange).toHaveBeenCalledTimes(1);
47
- // TODO: https://github.com/storybookjs/storybook/issues/30503
48
- // expect(args.handleChange).toHaveBeenCalledWith({ value: new Date(2020, 0, 2) });
49
- },
50
- };
51
- export const defaultValue = {
52
- name: "defaultValue",
53
- render: () => <Calendar defaultMonth={new Date(2020, 0)} defaultValue={new Date(2020, 0, 5)}/>,
54
- play: async ({ canvas }) => {
55
- const dateEls = canvas.getAllByRole("checkbox");
56
- const selectedDateEl = dateEls[4];
57
- expect(selectedDateEl).toBeInTheDocument();
58
- expect(selectedDateEl).toHaveAttribute("tabIndex", "0");
59
- expect(selectedDateEl).toHaveAttribute("aria-checked", "true");
60
- await userEvent.click(dateEls[6], { delay: null });
61
- expect(dateEls[6]).toHaveAttribute("aria-checked", "true");
62
- },
63
- };
64
- export const value = {
65
- name: "value",
66
- render: () => <Calendar defaultMonth={new Date(2020, 0)} value={new Date(2020, 0, 5)}/>,
67
- play: async ({ canvas }) => {
68
- const dateEls = canvas.getAllByRole("checkbox");
69
- const selectedDateEl = dateEls[4];
70
- expect(selectedDateEl).toBeInTheDocument();
71
- expect(selectedDateEl).toHaveAttribute("tabIndex", "0");
72
- expect(selectedDateEl).toHaveAttribute("aria-checked", "true");
73
- await userEvent.click(dateEls[6], { delay: null });
74
- expect(dateEls[6]).toHaveAttribute("aria-checked", "false");
75
- },
76
- };
77
- export const range = {
78
- name: "defaultValue, range",
79
- render: () => (<Calendar defaultMonth={new Date(2020, 0)} range defaultValue={{ start: new Date(2020, 0, 5), end: new Date(2020, 0, 7) }}/>),
80
- play: async ({ canvas }) => {
81
- const dateEls = canvas.getAllByRole("checkbox");
82
- const startDateEl = dateEls[4];
83
- const endDateEl = dateEls[6];
84
- expect(startDateEl).toHaveAttribute("tabIndex", "0");
85
- expect(startDateEl).toHaveAttribute("aria-checked", "true");
86
- expect(endDateEl).toHaveAttribute("tabIndex", "-1");
87
- expect(endDateEl).toHaveAttribute("aria-checked", "true");
88
- await userEvent.click(dateEls[3], { delay: null });
89
- expect(dateEls[3]).toHaveAttribute("aria-checked", "true");
90
- expect(dateEls[3]).toHaveAttribute("tabIndex", "0");
91
- expect(startDateEl).toHaveAttribute("aria-checked", "false");
92
- expect(startDateEl).toHaveAttribute("tabIndex", "-1");
93
- expect(endDateEl).toHaveAttribute("aria-checked", "false");
94
- expect(endDateEl).toHaveAttribute("tabIndex", "-1");
95
- // Click before the start date
96
- await userEvent.click(dateEls[2], { delay: null });
97
- expect(dateEls[2]).toHaveAttribute("aria-checked", "true");
98
- expect(dateEls[2]).toHaveAttribute("tabIndex", "0");
99
- expect(dateEls[3]).toHaveAttribute("aria-checked", "false");
100
- expect(dateEls[3]).toHaveAttribute("tabIndex", "-1");
101
- await userEvent.click(dateEls[4], { delay: null });
102
- expect(dateEls[2]).toHaveAttribute("aria-checked", "true");
103
- expect(dateEls[2]).toHaveAttribute("tabIndex", "0");
104
- expect(dateEls[4]).toHaveAttribute("aria-checked", "true");
105
- expect(dateEls[4]).toHaveAttribute("tabIndex", "-1");
106
- },
107
- };
108
- export const minMax = {
109
- name: "min, max",
110
- render: () => (<Calendar min={new Date(2020, 0, 5)} max={new Date(2020, 0, 25)} defaultMonth={new Date(2020, 0)}/>),
111
- play: async ({ canvas }) => {
112
- const dateEls = canvas.getAllByRole("checkbox");
113
- expect(dateEls).toHaveLength(21);
114
- },
115
- };
116
- export const monthSelection = {
117
- name: "month selection",
118
- render: () => <Calendar defaultMonth={new Date(2020, 0)}/>,
119
- play: async ({ canvas }) => {
120
- const buttonEls = canvas.getAllByRole("button");
121
- await userEvent.click(buttonEls[1], { delay: null });
122
- const monthEls = canvas.getAllByRole("button").filter((el) => el.hasAttribute("data-rs-date"));
123
- expect(monthEls).toHaveLength(12);
124
- },
125
- };
126
- export const ariaLabels = {
127
- name: "aria labels",
128
- render: () => (<Calendar defaultMonth={new Date(2020, 0)} nextYearAriaLabel="Test next year" nextMonthAriaLabel="Test next month" renderDateAriaLabel={() => "Test date"} renderMonthAriaLabel={() => "Test month"} previousYearAriaLabel="Test previous year" previousMonthAriaLabel="Test previous month" monthSelectionAriaLabel="Test month selection"/>),
129
- play: async ({ canvas }) => {
130
- const buttonEls = canvas.getAllByRole("button");
131
- const dateEls = canvas.getAllByRole("checkbox");
132
- expect(buttonEls[0]).toHaveAttribute("aria-label", "Test previous month");
133
- expect(buttonEls[1]).toHaveTextContent("Test month selection");
134
- expect(buttonEls[2]).toHaveAttribute("aria-label", "Test next month");
135
- expect(dateEls[0]).toHaveAttribute("aria-label", "Test date");
136
- await userEvent.click(buttonEls[1], { delay: null });
137
- const yearButtonEls = canvas.getAllByRole("button");
138
- expect(yearButtonEls[0]).toHaveAttribute("aria-label", "Test previous year");
139
- expect(yearButtonEls[1]).toHaveAttribute("aria-label", "Test next year");
140
- expect(yearButtonEls[2]).toHaveAttribute("aria-label", "Test month");
141
- },
142
- };
143
- export const keyboardNavigation = {
144
- name: "keyboard navigation",
145
- render: () => <Calendar defaultMonth={new Date(2020, 0)}/>,
146
- play: async ({ canvas }) => {
147
- const user = userEvent.setup();
148
- const dateEls = canvas.getAllByRole("checkbox");
149
- dateEls[0].focus();
150
- await user.keyboard("{ArrowRight/}");
151
- expect(document.activeElement).toHaveAttribute("data-rs-date", "2020-01-02");
152
- await user.keyboard("{ArrowLeft/}");
153
- expect(document.activeElement).toHaveAttribute("data-rs-date", "2020-01-01");
154
- await user.keyboard("{ArrowDown/}");
155
- expect(document.activeElement).toHaveAttribute("data-rs-date", "2020-01-08");
156
- await user.keyboard("{ArrowUp/}");
157
- expect(document.activeElement).toHaveAttribute("data-rs-date", "2020-01-01");
158
- await user.keyboard("{ArrowUp/}");
159
- expect(document.activeElement).toHaveAttribute("data-rs-date", "2019-12-25");
160
- },
161
- };
@@ -1,26 +0,0 @@
1
- import { StoryObj } from "@storybook/react";
2
- import { fn } from "@storybook/test";
3
- declare const _default: {
4
- title: string;
5
- parameters: {
6
- chromatic: {
7
- disableSnapshot: boolean;
8
- };
9
- };
10
- };
11
- export default _default;
12
- export declare const mouseEvents: StoryObj<{
13
- handleDrag: ReturnType<typeof fn>;
14
- }>;
15
- export declare const touchEvents: StoryObj<{
16
- handleDrag: ReturnType<typeof fn>;
17
- }>;
18
- export declare const orientationHorizontal: StoryObj<{
19
- handleDrag: ReturnType<typeof fn>;
20
- }>;
21
- export declare const orientationVertical: StoryObj<{
22
- handleDrag: ReturnType<typeof fn>;
23
- }>;
24
- export declare const disabled: StoryObj<{
25
- handleDrag: ReturnType<typeof fn>;
26
- }>;
@@ -1,120 +0,0 @@
1
- import { fireEvent, fn, expect } from "@storybook/test";
2
- import View from "../../components/View/index.js";
3
- import useDrag from "../useDrag.js";
4
- export default {
5
- title: "Hooks/useDrag/tests",
6
- parameters: {
7
- chromatic: { disableSnapshot: true },
8
- },
9
- };
10
- const Demo = (props) => {
11
- const { ref, containerRef } = useDrag((options) => {
12
- props.onDrag(options);
13
- }, {
14
- orientation: props.orientation,
15
- disabled: props.disabled,
16
- });
17
- return (<View backgroundColor="neutral-faded" width="200px" height="200px" attributes={{ ref: containerRef, "data-testid": "test-id" }}>
18
- <View height={8} width={8} backgroundColor="primary" attributes={{
19
- "data-testid": "test-handle-id",
20
- ref,
21
- }}/>
22
- </View>);
23
- };
24
- export const mouseEvents = {
25
- name: "onDrag, mouse events",
26
- args: {
27
- handleDrag: fn(),
28
- },
29
- render: (args) => {
30
- return <Demo onDrag={args.handleDrag}/>;
31
- },
32
- play: ({ canvas, args }) => {
33
- const trigger = canvas.getByTestId("test-handle-id");
34
- fireEvent.mouseDown(trigger);
35
- fireEvent.mouseMove(document.body, { clientX: 100, clientY: 50 });
36
- expect(args.handleDrag).toHaveBeenCalledTimes(1);
37
- expect(args.handleDrag).toHaveBeenCalledWith(expect.objectContaining({ x: 100, y: 50 }));
38
- fireEvent.mouseUp(trigger);
39
- fireEvent.mouseUp(document.body, { clientX: 50, clientY: 100 });
40
- expect(args.handleDrag).toHaveBeenCalledTimes(1);
41
- },
42
- };
43
- export const touchEvents = {
44
- name: "onDrag, touch events",
45
- args: {
46
- handleDrag: fn(),
47
- },
48
- render: (args) => {
49
- return <Demo onDrag={args.handleDrag}/>;
50
- },
51
- play: ({ canvas, args }) => {
52
- const createTouch = (target, x, y) => {
53
- return new Touch({
54
- identifier: Date.now(),
55
- target,
56
- clientX: x,
57
- clientY: y,
58
- screenX: x,
59
- screenY: y,
60
- pageX: x,
61
- pageY: y,
62
- });
63
- };
64
- const trigger = canvas.getByTestId("test-handle-id");
65
- fireEvent.touchStart(trigger, { changedTouches: [createTouch(trigger, 0, 0)] });
66
- fireEvent.touchMove(document.body, { changedTouches: [createTouch(trigger, 100, 50)] });
67
- expect(args.handleDrag).toHaveBeenCalledTimes(1);
68
- expect(args.handleDrag).toHaveBeenCalledWith(expect.objectContaining({ x: 100, y: 50 }));
69
- fireEvent.touchEnd(trigger);
70
- fireEvent.touchEnd(document.body, { changedTouches: [createTouch(trigger, 100, 50)] });
71
- expect(args.handleDrag).toHaveBeenCalledTimes(1);
72
- },
73
- };
74
- export const orientationHorizontal = {
75
- name: "orientation horizontal",
76
- args: {
77
- handleDrag: fn(),
78
- },
79
- render: (args) => {
80
- return <Demo onDrag={args.handleDrag} orientation="horizontal"/>;
81
- },
82
- play: ({ canvas, args }) => {
83
- const trigger = canvas.getByTestId("test-handle-id");
84
- fireEvent.mouseDown(trigger);
85
- fireEvent.mouseMove(document.body, { clientX: 100, clientY: 50 });
86
- expect(args.handleDrag).toHaveBeenCalledTimes(1);
87
- expect(args.handleDrag).toHaveBeenCalledWith(expect.objectContaining({ x: 100, y: 0 }));
88
- },
89
- };
90
- export const orientationVertical = {
91
- name: "orientation vertical",
92
- args: {
93
- handleDrag: fn(),
94
- },
95
- render: (args) => {
96
- return <Demo onDrag={args.handleDrag} orientation="vertical"/>;
97
- },
98
- play: ({ canvas, args }) => {
99
- const trigger = canvas.getByTestId("test-handle-id");
100
- fireEvent.mouseDown(trigger);
101
- fireEvent.mouseMove(document.body, { clientX: 100, clientY: 50 });
102
- expect(args.handleDrag).toHaveBeenCalledTimes(1);
103
- expect(args.handleDrag).toHaveBeenCalledWith(expect.objectContaining({ x: 0, y: 50 }));
104
- },
105
- };
106
- export const disabled = {
107
- name: "disabled",
108
- args: {
109
- handleDrag: fn(),
110
- },
111
- render: (args) => {
112
- return <Demo onDrag={args.handleDrag} disabled/>;
113
- },
114
- play: ({ canvas, args }) => {
115
- const trigger = canvas.getByTestId("test-handle-id");
116
- fireEvent.mouseDown(trigger);
117
- fireEvent.mouseMove(document.body, { clientX: 100, clientY: 50 });
118
- expect(args.handleDrag).toHaveBeenCalledTimes(0);
119
- },
120
- };
@@ -1,39 +0,0 @@
1
- import { StoryObj } from "@storybook/react";
2
- import { fn } from "@storybook/test";
3
- declare const _default: {
4
- title: string;
5
- parameters: {
6
- chromatic: {
7
- disableSnapshot: boolean;
8
- };
9
- };
10
- };
11
- export default _default;
12
- export declare const singleKey: StoryObj<{
13
- handleHotkey: ReturnType<typeof fn>;
14
- }>;
15
- export declare const modKey: StoryObj<{
16
- handleHotkey: ReturnType<typeof fn>;
17
- }>;
18
- export declare const modKeyHold: StoryObj<{
19
- handleHotkey: ReturnType<typeof fn>;
20
- }>;
21
- export declare const keyList: StoryObj<{
22
- handleHotkey: ReturnType<typeof fn>;
23
- }>;
24
- export declare const keyCombination: StoryObj<{
25
- handleHotkey: ReturnType<typeof fn>;
26
- }>;
27
- export declare const keyCombinationFormat: StoryObj<{
28
- handleHotkey: ReturnType<typeof fn>;
29
- }>;
30
- export declare const keyCombinationOrder: StoryObj<{
31
- handleHotkey: ReturnType<typeof fn>;
32
- }>;
33
- export declare const keyCombinationMoreThanRequired: StoryObj<{
34
- handleHotkey: ReturnType<typeof fn>;
35
- }>;
36
- export declare const optionModified: StoryObj<{
37
- handleHotkey: ReturnType<typeof fn>;
38
- handleHotkeyModified: ReturnType<typeof fn>;
39
- }>;
@@ -1,119 +0,0 @@
1
- import { expect, fn, userEvent } from "@storybook/test";
2
- import useHotkeys from "../useHotkeys.js";
3
- export default {
4
- title: "Hooks/useHotkeys/tests",
5
- parameters: {
6
- chromatic: { disableSnapshot: true },
7
- },
8
- };
9
- const Component = (props) => {
10
- const { hotkeys } = props;
11
- useHotkeys(hotkeys);
12
- return <div />;
13
- };
14
- export const singleKey = {
15
- name: "single key",
16
- args: {
17
- handleHotkey: fn(),
18
- },
19
- render: (args) => <Component hotkeys={{ a: args.handleHotkey }}/>,
20
- play: async ({ args }) => {
21
- await userEvent.keyboard("a");
22
- await userEvent.keyboard("b");
23
- expect(args.handleHotkey).toHaveBeenCalledTimes(1);
24
- },
25
- };
26
- export const modKey = {
27
- name: "mod key",
28
- args: {
29
- handleHotkey: fn(),
30
- },
31
- render: (args) => <Component hotkeys={{ mod: args.handleHotkey }}/>,
32
- play: async ({ args }) => {
33
- await userEvent.keyboard("{Meta/}");
34
- expect(args.handleHotkey).toHaveBeenCalledTimes(1);
35
- },
36
- };
37
- export const modKeyHold = {
38
- name: "mod key on hold",
39
- args: {
40
- handleHotkey: fn(),
41
- },
42
- render: (args) => <Component hotkeys={{ "Meta + b": args.handleHotkey }}/>,
43
- play: async ({ args }) => {
44
- await userEvent.keyboard("{Meta>}bb{/Meta}");
45
- expect(args.handleHotkey).toHaveBeenCalledTimes(2);
46
- },
47
- };
48
- export const keyList = {
49
- name: "key list",
50
- args: {
51
- handleHotkey: fn(),
52
- },
53
- render: (args) => <Component hotkeys={{ "a,b": args.handleHotkey }}/>,
54
- play: async ({ args }) => {
55
- await userEvent.keyboard("a");
56
- expect(args.handleHotkey).toHaveBeenCalledTimes(1);
57
- await userEvent.keyboard("b");
58
- expect(args.handleHotkey).toHaveBeenCalledTimes(2);
59
- },
60
- };
61
- export const keyCombination = {
62
- name: "key combination",
63
- args: {
64
- handleHotkey: fn(),
65
- },
66
- render: (args) => <Component hotkeys={{ "a+b": args.handleHotkey }}/>,
67
- play: async ({ args }) => {
68
- await userEvent.keyboard("{a>}b{/a}");
69
- expect(args.handleHotkey).toHaveBeenCalledTimes(1);
70
- },
71
- };
72
- export const keyCombinationFormat = {
73
- name: "key combination without formatting",
74
- args: {
75
- handleHotkey: fn(),
76
- },
77
- render: (args) => <Component hotkeys={{ "A + b": args.handleHotkey }}/>,
78
- play: async ({ args }) => {
79
- await userEvent.keyboard("{a>}b{/a}");
80
- expect(args.handleHotkey).toHaveBeenCalledTimes(1);
81
- },
82
- };
83
- export const keyCombinationOrder = {
84
- name: "key combination without order",
85
- args: {
86
- handleHotkey: fn(),
87
- },
88
- render: (args) => <Component hotkeys={{ "b+a": args.handleHotkey }}/>,
89
- play: async ({ args }) => {
90
- await userEvent.keyboard("{a>}b{/a}");
91
- expect(args.handleHotkey).toHaveBeenCalledTimes(1);
92
- },
93
- };
94
- export const keyCombinationMoreThanRequired = {
95
- name: "key combination, more keys pressed",
96
- args: {
97
- handleHotkey: fn(),
98
- },
99
- render: (args) => <Component hotkeys={{ "z + x": args.handleHotkey }}/>,
100
- play: async ({ args }) => {
101
- await userEvent.keyboard("{z>}{x>}c{/x}{/z}");
102
- // When c is pressed, it doesn't trigger a+b for the second time
103
- expect(args.handleHotkey).toHaveBeenCalledTimes(1);
104
- },
105
- };
106
- export const optionModified = {
107
- name: "modified with alt/option",
108
- args: {
109
- handleHotkey: fn(),
110
- handleHotkeyModified: fn(),
111
- },
112
- render: (args) => (<Component hotkeys={{ "alt+n": args.handleHotkeyModified, "alt+shift": args.handleHotkey }}/>),
113
- play: async ({ args }) => {
114
- await userEvent.keyboard("{Alt>}n{/Alt}");
115
- expect(args.handleHotkeyModified).toHaveBeenCalledTimes(1);
116
- await userEvent.keyboard("{Alt>}{Shift}{/Alt}");
117
- expect(args.handleHotkey).toHaveBeenCalledTimes(1);
118
- },
119
- };