@lumx/react 3.20.1-alpha.3 → 3.20.1-alpha.30

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 (698) hide show
  1. package/CONTRIBUTING.md +1 -5
  2. package/README.md +0 -2
  3. package/_internal/Button-4b67daa8.js +98 -0
  4. package/_internal/Button-4b67daa8.js.map +1 -0
  5. package/_internal/ButtonRoot-a70baf82.js +118 -0
  6. package/_internal/ButtonRoot-a70baf82.js.map +1 -0
  7. package/_internal/Chip-70af04b4.js +144 -0
  8. package/_internal/Chip-70af04b4.js.map +1 -0
  9. package/_internal/ClickAwayProvider-1204f237.js +95 -0
  10. package/_internal/ClickAwayProvider-1204f237.js.map +1 -0
  11. package/_internal/DisabledStateContext-ea04260d.js +29 -0
  12. package/_internal/DisabledStateContext-ea04260d.js.map +1 -0
  13. package/_internal/HeadingLevelProvider-ebdcb0c7.js +61 -0
  14. package/_internal/HeadingLevelProvider-ebdcb0c7.js.map +1 -0
  15. package/_internal/IconButton-8d61f5be.js +77 -0
  16. package/_internal/IconButton-8d61f5be.js.map +1 -0
  17. package/_internal/ImageCaption-db44ec9e.js +75 -0
  18. package/_internal/ImageCaption-db44ec9e.js.map +1 -0
  19. package/_internal/List-c75646f2.js +818 -0
  20. package/_internal/List-c75646f2.js.map +1 -0
  21. package/_internal/PopoverDialog-35b2d87d.js +657 -0
  22. package/_internal/PopoverDialog-35b2d87d.js.map +1 -0
  23. package/_internal/Portal-3f86608e.js +45 -0
  24. package/_internal/Portal-3f86608e.js.map +1 -0
  25. package/_internal/RawClickable-2c2b6a89.js +52 -0
  26. package/_internal/RawClickable-2c2b6a89.js.map +1 -0
  27. package/_internal/Slides-ce641b5f.js +679 -0
  28. package/_internal/Slides-ce641b5f.js.map +1 -0
  29. package/_internal/ThemeContext-3181f000.js +14 -0
  30. package/_internal/ThemeContext-3181f000.js.map +1 -0
  31. package/_internal/Thumbnail-02bd6869.js +314 -0
  32. package/_internal/Thumbnail-02bd6869.js.map +1 -0
  33. package/_internal/components/alert-dialog-a24330ed.js +166 -0
  34. package/_internal/components/alert-dialog-a24330ed.js.map +1 -0
  35. package/_internal/components/autocomplete-70749e51.js +262 -0
  36. package/_internal/components/autocomplete-70749e51.js.map +1 -0
  37. package/_internal/components/avatar-ed9f4869.js +84 -0
  38. package/_internal/components/avatar-ed9f4869.js.map +1 -0
  39. package/_internal/components/badge-ccf47147.js +82 -0
  40. package/_internal/components/badge-ccf47147.js.map +1 -0
  41. package/_internal/components/button-9f710830.js +48 -0
  42. package/_internal/components/button-9f710830.js.map +1 -0
  43. package/_internal/components/checkbox-8ab51ef9.js +142 -0
  44. package/_internal/components/checkbox-8ab51ef9.js.map +1 -0
  45. package/_internal/components/chip-19e40755.js +103 -0
  46. package/_internal/components/chip-19e40755.js.map +1 -0
  47. package/_internal/components/comment-block-bb6a0603.js +139 -0
  48. package/_internal/components/comment-block-bb6a0603.js.map +1 -0
  49. package/_internal/components/date-picker-e4209b01.js +2 -0
  50. package/_internal/components/date-picker-e4209b01.js.map +1 -0
  51. package/_internal/components/dialog-30336ccb.js +239 -0
  52. package/_internal/components/dialog-30336ccb.js.map +1 -0
  53. package/_internal/components/divider-0e93aa3d.js +51 -0
  54. package/_internal/components/divider-0e93aa3d.js.map +1 -0
  55. package/_internal/components/drag-handle-ba2e7e67.js +52 -0
  56. package/_internal/components/drag-handle-ba2e7e67.js.map +1 -0
  57. package/_internal/components/dropdown-d18122d7.js +148 -0
  58. package/_internal/components/dropdown-d18122d7.js.map +1 -0
  59. package/_internal/components/expansion-panel-0b263437.js +169 -0
  60. package/_internal/components/expansion-panel-0b263437.js.map +1 -0
  61. package/_internal/components/flag-8f9a498a.js +60 -0
  62. package/_internal/components/flag-8f9a498a.js.map +1 -0
  63. package/_internal/components/flex-box-15be92f6.js +57 -0
  64. package/_internal/components/flex-box-15be92f6.js.map +1 -0
  65. package/_internal/components/generic-block-5d843f1e.js +128 -0
  66. package/_internal/components/generic-block-5d843f1e.js.map +1 -0
  67. package/_internal/components/grid-8c08dc4b.js +105 -0
  68. package/_internal/components/grid-8c08dc4b.js.map +1 -0
  69. package/_internal/components/grid-column-85e305e7.js +59 -0
  70. package/_internal/components/grid-column-85e305e7.js.map +1 -0
  71. package/_internal/components/heading-7bfafd7d.js +54 -0
  72. package/_internal/components/heading-7bfafd7d.js.map +1 -0
  73. package/_internal/components/icon-ee15673b.js +103 -0
  74. package/_internal/components/icon-ee15673b.js.map +1 -0
  75. package/_internal/components/image-block-3479abda.js +111 -0
  76. package/_internal/components/image-block-3479abda.js.map +1 -0
  77. package/_internal/components/image-lightbox-1d7ca133.js +758 -0
  78. package/_internal/components/image-lightbox-1d7ca133.js.map +1 -0
  79. package/_internal/components/inline-list-5ba8bb0f.js +75 -0
  80. package/_internal/components/inline-list-5ba8bb0f.js.map +1 -0
  81. package/_internal/components/input-helper-2e4e49fd.js +72 -0
  82. package/_internal/components/input-helper-2e4e49fd.js.map +1 -0
  83. package/_internal/components/input-label-30d199c3.js +60 -0
  84. package/_internal/components/input-label-30d199c3.js.map +1 -0
  85. package/_internal/components/lightbox-c5f9afd0.js +156 -0
  86. package/_internal/components/lightbox-c5f9afd0.js.map +1 -0
  87. package/_internal/components/link-43ee103e.js +73 -0
  88. package/_internal/components/link-43ee103e.js.map +1 -0
  89. package/_internal/components/link-preview-db0ee2d6.js +118 -0
  90. package/_internal/components/link-preview-db0ee2d6.js.map +1 -0
  91. package/_internal/components/list-2f256244.js +72 -0
  92. package/_internal/components/list-2f256244.js.map +1 -0
  93. package/_internal/components/message-f7674e0e.js +101 -0
  94. package/_internal/components/message-f7674e0e.js.map +1 -0
  95. package/_internal/components/mosaic-3effd0cf.js +95 -0
  96. package/_internal/components/mosaic-3effd0cf.js.map +1 -0
  97. package/_internal/components/navigation-3a5dc270.js +227 -0
  98. package/_internal/components/navigation-3a5dc270.js.map +1 -0
  99. package/_internal/components/notification-098c5600.js +146 -0
  100. package/_internal/components/notification-098c5600.js.map +1 -0
  101. package/_internal/components/popover-dfcddda4.js +3 -0
  102. package/_internal/components/popover-dfcddda4.js.map +1 -0
  103. package/_internal/components/post-block-69797e4d.js +110 -0
  104. package/_internal/components/post-block-69797e4d.js.map +1 -0
  105. package/_internal/components/progress-44bb0301.js +183 -0
  106. package/_internal/components/progress-44bb0301.js.map +1 -0
  107. package/_internal/components/progress-tracker-e0981fcc.js +309 -0
  108. package/_internal/components/progress-tracker-e0981fcc.js.map +1 -0
  109. package/_internal/components/radio-button-929c7bee.js +150 -0
  110. package/_internal/components/radio-button-929c7bee.js.map +1 -0
  111. package/_internal/components/select-64bc72a0.js +458 -0
  112. package/_internal/components/select-64bc72a0.js.map +1 -0
  113. package/_internal/components/side-navigation-c610c689.js +166 -0
  114. package/_internal/components/side-navigation-c610c689.js.map +1 -0
  115. package/_internal/components/skeleton-1ea8c82a.js +167 -0
  116. package/_internal/components/skeleton-1ea8c82a.js.map +1 -0
  117. package/_internal/components/slider-78cfaa67.js +312 -0
  118. package/_internal/components/slider-78cfaa67.js.map +1 -0
  119. package/_internal/components/slideshow-d8a943a7.js +151 -0
  120. package/_internal/components/slideshow-d8a943a7.js.map +1 -0
  121. package/_internal/components/switch-25b65051.js +122 -0
  122. package/_internal/components/switch-25b65051.js.map +1 -0
  123. package/_internal/components/table-ec20c66c.js +296 -0
  124. package/_internal/components/table-ec20c66c.js.map +1 -0
  125. package/_internal/components/tabs-89c055bd.js +299 -0
  126. package/_internal/components/tabs-89c055bd.js.map +1 -0
  127. package/_internal/components/text-d04d0f1b.js +2 -0
  128. package/_internal/components/text-d04d0f1b.js.map +1 -0
  129. package/_internal/components/text-field-8f13957e.js +361 -0
  130. package/_internal/components/text-field-8f13957e.js.map +1 -0
  131. package/_internal/components/thumbnail-1255957f.js +42 -0
  132. package/_internal/components/thumbnail-1255957f.js.map +1 -0
  133. package/_internal/components/toolbar-e7c984e6.js +62 -0
  134. package/_internal/components/toolbar-e7c984e6.js.map +1 -0
  135. package/_internal/components/tooltip-dcb43bbe.js +328 -0
  136. package/_internal/components/tooltip-dcb43bbe.js.map +1 -0
  137. package/_internal/components/uploader-7ef4db39.js +154 -0
  138. package/_internal/components/uploader-7ef4db39.js.map +1 -0
  139. package/_internal/components/user-block-24d97650.js +145 -0
  140. package/_internal/components/user-block-24d97650.js.map +1 -0
  141. package/_internal/constants-43721918.js +2170 -0
  142. package/_internal/constants-43721918.js.map +1 -0
  143. package/_internal/constants-d0e3f49e.js +24 -0
  144. package/_internal/constants-d0e3f49e.js.map +1 -0
  145. package/_internal/context-9d1336a1.js +19 -0
  146. package/_internal/context-9d1336a1.js.map +1 -0
  147. package/_internal/forwardRef-8bce732e.js +9 -0
  148. package/_internal/forwardRef-8bce732e.js.map +1 -0
  149. package/_internal/getFocusableElements-230173a8.js +13 -0
  150. package/_internal/getFocusableElements-230173a8.js.map +1 -0
  151. package/_internal/index-25c9e8c2.js +118 -0
  152. package/_internal/index-25c9e8c2.js.map +1 -0
  153. package/_internal/index-25d2a45e.js +437 -0
  154. package/_internal/index-25d2a45e.js.map +1 -0
  155. package/_internal/isComponent-b9762ff1.js +18 -0
  156. package/_internal/isComponent-b9762ff1.js.map +1 -0
  157. package/_internal/isComponentType-e806b848.js +9 -0
  158. package/_internal/isComponentType-e806b848.js.map +1 -0
  159. package/_internal/mergeRefs-f0d7d6ea.js +30 -0
  160. package/_internal/mergeRefs-f0d7d6ea.js.map +1 -0
  161. package/_internal/state-db358714.js +130 -0
  162. package/_internal/state-db358714.js.map +1 -0
  163. package/_internal/useBooleanState-2a3d237c.js +12 -0
  164. package/_internal/useBooleanState-2a3d237c.js.map +1 -0
  165. package/_internal/useCallbackOnEscape-b956a85d.js +64 -0
  166. package/_internal/useCallbackOnEscape-b956a85d.js.map +1 -0
  167. package/_internal/useDisableBodyScroll-36bd7352.js +219 -0
  168. package/_internal/useDisableBodyScroll-36bd7352.js.map +1 -0
  169. package/_internal/useDisableStateProps-69e16b7c.js +36 -0
  170. package/_internal/useDisableStateProps-69e16b7c.js.map +1 -0
  171. package/_internal/useFocusTrap-2dbae79e.js +112 -0
  172. package/_internal/useFocusTrap-2dbae79e.js.map +1 -0
  173. package/_internal/useId-3a1facc0.js +18 -0
  174. package/_internal/useId-3a1facc0.js.map +1 -0
  175. package/_internal/useRovingTabIndex-7daf0f24.js +77 -0
  176. package/_internal/useRovingTabIndex-7daf0f24.js.map +1 -0
  177. package/_internal/useTransitionVisibility-321fdbfa.js +50 -0
  178. package/_internal/useTransitionVisibility-321fdbfa.js.map +1 -0
  179. package/_internal/wrapChildrenIconWithSpaces-50d705e6.js +20 -0
  180. package/_internal/wrapChildrenIconWithSpaces-50d705e6.js.map +1 -0
  181. package/index.d.ts +11 -368
  182. package/index.js +65 -14523
  183. package/index.js.map +1 -1
  184. package/package.json +8 -22
  185. package/utils/index.d.ts +1 -1
  186. package/utils/index.js +3 -1
  187. package/utils/index.js.map +1 -1
  188. package/_internal/Falsy.d.ts +0 -7
  189. package/_internal/index.js +0 -229
  190. package/_internal/index.js.map +0 -1
  191. package/src/components/alert-dialog/AlertDialog.stories.tsx +0 -127
  192. package/src/components/alert-dialog/AlertDialog.test.tsx +0 -34
  193. package/src/components/alert-dialog/AlertDialog.tsx +0 -189
  194. package/src/components/alert-dialog/index.ts +0 -1
  195. package/src/components/autocomplete/Autocomplete.stories.tsx +0 -75
  196. package/src/components/autocomplete/Autocomplete.test.tsx +0 -99
  197. package/src/components/autocomplete/Autocomplete.tsx +0 -294
  198. package/src/components/autocomplete/AutocompleteMultiple.stories.tsx +0 -167
  199. package/src/components/autocomplete/AutocompleteMultiple.test.tsx +0 -61
  200. package/src/components/autocomplete/AutocompleteMultiple.tsx +0 -156
  201. package/src/components/autocomplete/__mockData__/index.ts +0 -39
  202. package/src/components/autocomplete/index.ts +0 -2
  203. package/src/components/avatar/Avatar.stories.tsx +0 -119
  204. package/src/components/avatar/Avatar.test.tsx +0 -32
  205. package/src/components/avatar/Avatar.tsx +0 -114
  206. package/src/components/avatar/index.ts +0 -1
  207. package/src/components/badge/Badge.stories.tsx +0 -69
  208. package/src/components/badge/Badge.test.tsx +0 -45
  209. package/src/components/badge/Badge.tsx +0 -58
  210. package/src/components/badge/BadgeWrapper.stories.tsx +0 -75
  211. package/src/components/badge/BadgeWrapper.test.tsx +0 -47
  212. package/src/components/badge/BadgeWrapper.tsx +0 -37
  213. package/src/components/badge/index.ts +0 -2
  214. package/src/components/button/Button.stories.tsx +0 -355
  215. package/src/components/button/Button.test.tsx +0 -125
  216. package/src/components/button/Button.tsx +0 -101
  217. package/src/components/button/ButtonGroup.stories.tsx +0 -52
  218. package/src/components/button/ButtonGroup.test.tsx +0 -41
  219. package/src/components/button/ButtonGroup.tsx +0 -50
  220. package/src/components/button/ButtonRoot.tsx +0 -163
  221. package/src/components/button/IconButton.stories.tsx +0 -52
  222. package/src/components/button/IconButton.test.tsx +0 -66
  223. package/src/components/button/IconButton.tsx +0 -91
  224. package/src/components/button/index.ts +0 -4
  225. package/src/components/checkbox/Checkbox.stories.tsx +0 -64
  226. package/src/components/checkbox/Checkbox.test.tsx +0 -154
  227. package/src/components/checkbox/Checkbox.tsx +0 -164
  228. package/src/components/checkbox/index.ts +0 -1
  229. package/src/components/chip/Chip.stories.tsx +0 -164
  230. package/src/components/chip/Chip.test.tsx +0 -243
  231. package/src/components/chip/Chip.tsx +0 -168
  232. package/src/components/chip/ChipGroup.stories.tsx +0 -47
  233. package/src/components/chip/ChipGroup.test.tsx +0 -37
  234. package/src/components/chip/ChipGroup.tsx +0 -60
  235. package/src/components/chip/index.ts +0 -2
  236. package/src/components/comment-block/CommentBlock.stories.tsx +0 -91
  237. package/src/components/comment-block/CommentBlock.test.tsx +0 -28
  238. package/src/components/comment-block/CommentBlock.tsx +0 -172
  239. package/src/components/comment-block/index.ts +0 -1
  240. package/src/components/date-picker/DatePicker.stories.tsx +0 -118
  241. package/src/components/date-picker/DatePicker.test.tsx +0 -34
  242. package/src/components/date-picker/DatePicker.tsx +0 -52
  243. package/src/components/date-picker/DatePickerControlled.test.tsx +0 -91
  244. package/src/components/date-picker/DatePickerControlled.tsx +0 -259
  245. package/src/components/date-picker/DatePickerField.stories.tsx +0 -100
  246. package/src/components/date-picker/DatePickerField.test.tsx +0 -70
  247. package/src/components/date-picker/DatePickerField.tsx +0 -135
  248. package/src/components/date-picker/constants.ts +0 -11
  249. package/src/components/date-picker/index.ts +0 -4
  250. package/src/components/date-picker/types.ts +0 -28
  251. package/src/components/dialog/Dialog.stories.tsx +0 -318
  252. package/src/components/dialog/Dialog.test.tsx +0 -97
  253. package/src/components/dialog/Dialog.tsx +0 -288
  254. package/src/components/dialog/index.ts +0 -1
  255. package/src/components/divider/Divider.test.tsx +0 -51
  256. package/src/components/divider/Divider.tsx +0 -50
  257. package/src/components/divider/index.ts +0 -1
  258. package/src/components/drag-handle/DragHandle.test.tsx +0 -36
  259. package/src/components/drag-handle/DragHandle.tsx +0 -51
  260. package/src/components/drag-handle/index.ts +0 -1
  261. package/src/components/dropdown/Dropdown.stories.tsx +0 -31
  262. package/src/components/dropdown/Dropdown.test.tsx +0 -66
  263. package/src/components/dropdown/Dropdown.tsx +0 -186
  264. package/src/components/dropdown/index.ts +0 -1
  265. package/src/components/expansion-panel/ExpansionPanel.stories.tsx +0 -91
  266. package/src/components/expansion-panel/ExpansionPanel.test.tsx +0 -185
  267. package/src/components/expansion-panel/ExpansionPanel.tsx +0 -195
  268. package/src/components/expansion-panel/index.ts +0 -1
  269. package/src/components/flag/Flag.stories.tsx +0 -48
  270. package/src/components/flag/Flag.test.tsx +0 -62
  271. package/src/components/flag/Flag.tsx +0 -52
  272. package/src/components/flag/index.ts +0 -1
  273. package/src/components/flex-box/FlexBox.stories.tsx +0 -156
  274. package/src/components/flex-box/FlexBox.test.tsx +0 -24
  275. package/src/components/flex-box/FlexBox.tsx +0 -100
  276. package/src/components/flex-box/index.ts +0 -1
  277. package/src/components/generic-block/GenericBlock.stories.jsx +0 -128
  278. package/src/components/generic-block/GenericBlock.test.tsx +0 -156
  279. package/src/components/generic-block/GenericBlock.tsx +0 -225
  280. package/src/components/generic-block/constants.ts +0 -9
  281. package/src/components/generic-block/index.ts +0 -2
  282. package/src/components/grid/Grid.tsx +0 -83
  283. package/src/components/grid/GridItem.tsx +0 -55
  284. package/src/components/grid/index.ts +0 -2
  285. package/src/components/grid-column/GridColumn.stories.tsx +0 -45
  286. package/src/components/grid-column/GridColumn.test.jsx +0 -56
  287. package/src/components/grid-column/GridColumn.tsx +0 -83
  288. package/src/components/grid-column/index.ts +0 -1
  289. package/src/components/heading/Heading.stories.tsx +0 -69
  290. package/src/components/heading/Heading.test.tsx +0 -82
  291. package/src/components/heading/Heading.tsx +0 -65
  292. package/src/components/heading/HeadingLevelProvider.tsx +0 -30
  293. package/src/components/heading/constants.ts +0 -16
  294. package/src/components/heading/context.tsx +0 -13
  295. package/src/components/heading/index.ts +0 -3
  296. package/src/components/heading/useHeadingLevel.tsx +0 -8
  297. package/src/components/icon/Icon.stories.tsx +0 -73
  298. package/src/components/icon/Icon.test.tsx +0 -125
  299. package/src/components/icon/Icon.tsx +0 -22
  300. package/src/components/icon/index.ts +0 -1
  301. package/src/components/image-block/ImageBlock.stories.tsx +0 -117
  302. package/src/components/image-block/ImageBlock.test.tsx +0 -58
  303. package/src/components/image-block/ImageBlock.tsx +0 -142
  304. package/src/components/image-block/ImageCaption.tsx +0 -115
  305. package/src/components/image-block/index.ts +0 -1
  306. package/src/components/image-lightbox/ImageLightbox.stories.tsx +0 -160
  307. package/src/components/image-lightbox/ImageLightbox.test.tsx +0 -254
  308. package/src/components/image-lightbox/ImageLightbox.tsx +0 -90
  309. package/src/components/image-lightbox/constants.ts +0 -11
  310. package/src/components/image-lightbox/index.ts +0 -2
  311. package/src/components/image-lightbox/internal/ImageSlide.tsx +0 -107
  312. package/src/components/image-lightbox/internal/ImageSlideshow.tsx +0 -164
  313. package/src/components/image-lightbox/internal/useAnimateScroll.ts +0 -55
  314. package/src/components/image-lightbox/internal/usePointerZoom.ts +0 -148
  315. package/src/components/image-lightbox/types.ts +0 -48
  316. package/src/components/image-lightbox/useImageLightbox.tsx +0 -141
  317. package/src/components/inline-list/InlineList.stories.tsx +0 -77
  318. package/src/components/inline-list/InlineList.test.tsx +0 -52
  319. package/src/components/inline-list/InlineList.tsx +0 -96
  320. package/src/components/inline-list/index.ts +0 -1
  321. package/src/components/input-helper/InputHelper.stories.tsx +0 -35
  322. package/src/components/input-helper/InputHelper.test.tsx +0 -55
  323. package/src/components/input-helper/InputHelper.tsx +0 -65
  324. package/src/components/input-helper/constants.ts +0 -11
  325. package/src/components/input-helper/index.ts +0 -1
  326. package/src/components/input-label/InputLabel.stories.tsx +0 -45
  327. package/src/components/input-label/InputLabel.test.tsx +0 -59
  328. package/src/components/input-label/InputLabel.tsx +0 -69
  329. package/src/components/input-label/index.ts +0 -1
  330. package/src/components/lightbox/Lightbox.stories.tsx +0 -101
  331. package/src/components/lightbox/Lightbox.test.tsx +0 -53
  332. package/src/components/lightbox/Lightbox.tsx +0 -180
  333. package/src/components/lightbox/index.ts +0 -1
  334. package/src/components/link/Link.stories.tsx +0 -195
  335. package/src/components/link/Link.test.tsx +0 -127
  336. package/src/components/link/Link.tsx +0 -106
  337. package/src/components/link/index.ts +0 -1
  338. package/src/components/link-preview/LinkPreview.stories.tsx +0 -61
  339. package/src/components/link-preview/LinkPreview.test.tsx +0 -105
  340. package/src/components/link-preview/LinkPreview.tsx +0 -158
  341. package/src/components/link-preview/index.ts +0 -1
  342. package/src/components/list/List.stories.tsx +0 -116
  343. package/src/components/list/List.test.tsx +0 -18
  344. package/src/components/list/List.tsx +0 -104
  345. package/src/components/list/ListDivider.stories.tsx +0 -12
  346. package/src/components/list/ListDivider.test.tsx +0 -22
  347. package/src/components/list/ListDivider.tsx +0 -35
  348. package/src/components/list/ListItem.stories.tsx +0 -66
  349. package/src/components/list/ListItem.test.tsx +0 -93
  350. package/src/components/list/ListItem.tsx +0 -157
  351. package/src/components/list/ListSubheader.stories.tsx +0 -11
  352. package/src/components/list/ListSubheader.test.tsx +0 -21
  353. package/src/components/list/ListSubheader.tsx +0 -44
  354. package/src/components/list/index.ts +0 -4
  355. package/src/components/list/useInteractiveList.tsx +0 -202
  356. package/src/components/message/Message.stories.tsx +0 -72
  357. package/src/components/message/Message.test.tsx +0 -76
  358. package/src/components/message/Message.tsx +0 -100
  359. package/src/components/message/index.ts +0 -1
  360. package/src/components/mosaic/Mosaic.stories.tsx +0 -89
  361. package/src/components/mosaic/Mosaic.test.tsx +0 -77
  362. package/src/components/mosaic/Mosaic.tsx +0 -98
  363. package/src/components/mosaic/index.ts +0 -1
  364. package/src/components/navigation/Navigation.stories.tsx +0 -234
  365. package/src/components/navigation/Navigation.test.tsx +0 -65
  366. package/src/components/navigation/Navigation.tsx +0 -79
  367. package/src/components/navigation/NavigationItem.test.tsx +0 -35
  368. package/src/components/navigation/NavigationItem.tsx +0 -82
  369. package/src/components/navigation/NavigationSection.test.tsx +0 -137
  370. package/src/components/navigation/NavigationSection.tsx +0 -108
  371. package/src/components/navigation/context.tsx +0 -7
  372. package/src/components/navigation/index.ts +0 -1
  373. package/src/components/notification/Notification.test.tsx +0 -94
  374. package/src/components/notification/Notification.tsx +0 -138
  375. package/src/components/notification/Notifications.stories.tsx +0 -92
  376. package/src/components/notification/constants.ts +0 -28
  377. package/src/components/notification/index.ts +0 -1
  378. package/src/components/popover/Popover.stories.tsx +0 -264
  379. package/src/components/popover/Popover.test.tsx +0 -62
  380. package/src/components/popover/Popover.tsx +0 -201
  381. package/src/components/popover/constants.ts +0 -62
  382. package/src/components/popover/index.ts +0 -3
  383. package/src/components/popover/usePopoverStyle.tsx +0 -184
  384. package/src/components/popover/useRestoreFocusOnClose.tsx +0 -47
  385. package/src/components/popover-dialog/PopoverDialog.stories.tsx +0 -64
  386. package/src/components/popover-dialog/PopoverDialog.test.tsx +0 -139
  387. package/src/components/popover-dialog/PopoverDialog.tsx +0 -74
  388. package/src/components/popover-dialog/index.tsx +0 -1
  389. package/src/components/post-block/PostBlock.test.tsx +0 -27
  390. package/src/components/post-block/PostBlock.tsx +0 -122
  391. package/src/components/post-block/index.ts +0 -1
  392. package/src/components/progress/Progress.tsx +0 -68
  393. package/src/components/progress/ProgressCircular.stories.tsx +0 -43
  394. package/src/components/progress/ProgressCircular.test.tsx +0 -46
  395. package/src/components/progress/ProgressCircular.tsx +0 -82
  396. package/src/components/progress/ProgressLinear.stories.tsx +0 -12
  397. package/src/components/progress/ProgressLinear.test.tsx +0 -30
  398. package/src/components/progress/ProgressLinear.tsx +0 -50
  399. package/src/components/progress/index.ts +0 -3
  400. package/src/components/progress-tracker/ProgressTracker.stories.tsx +0 -145
  401. package/src/components/progress-tracker/ProgressTracker.test.tsx +0 -42
  402. package/src/components/progress-tracker/ProgressTracker.tsx +0 -87
  403. package/src/components/progress-tracker/ProgressTrackerProvider.test.tsx +0 -65
  404. package/src/components/progress-tracker/ProgressTrackerProvider.tsx +0 -67
  405. package/src/components/progress-tracker/ProgressTrackerStep.test.tsx +0 -36
  406. package/src/components/progress-tracker/ProgressTrackerStep.tsx +0 -159
  407. package/src/components/progress-tracker/ProgressTrackerStepPanel.test.tsx +0 -34
  408. package/src/components/progress-tracker/ProgressTrackerStepPanel.tsx +0 -67
  409. package/src/components/progress-tracker/index.ts +0 -4
  410. package/src/components/radio-button/RadioButton.stories.tsx +0 -71
  411. package/src/components/radio-button/RadioButton.test.tsx +0 -143
  412. package/src/components/radio-button/RadioButton.tsx +0 -143
  413. package/src/components/radio-button/RadioGroup.stories.tsx +0 -39
  414. package/src/components/radio-button/RadioGroup.test.tsx +0 -29
  415. package/src/components/radio-button/RadioGroup.tsx +0 -44
  416. package/src/components/radio-button/index.ts +0 -2
  417. package/src/components/select/Select.stories.tsx +0 -385
  418. package/src/components/select/Select.test.tsx +0 -199
  419. package/src/components/select/Select.tsx +0 -199
  420. package/src/components/select/SelectMultiple.stories.tsx +0 -315
  421. package/src/components/select/SelectMultiple.test.tsx +0 -213
  422. package/src/components/select/SelectMultiple.tsx +0 -206
  423. package/src/components/select/WithSelectContext.tsx +0 -147
  424. package/src/components/select/constants.ts +0 -55
  425. package/src/components/select/index.ts +0 -2
  426. package/src/components/side-navigation/SideNavigation.stories.tsx +0 -191
  427. package/src/components/side-navigation/SideNavigation.test.tsx +0 -37
  428. package/src/components/side-navigation/SideNavigation.tsx +0 -52
  429. package/src/components/side-navigation/SideNavigationItem.stories.tsx +0 -133
  430. package/src/components/side-navigation/SideNavigationItem.test.tsx +0 -136
  431. package/src/components/side-navigation/SideNavigationItem.tsx +0 -165
  432. package/src/components/side-navigation/index.ts +0 -2
  433. package/src/components/skeleton/SkeletonCircle.stories.tsx +0 -41
  434. package/src/components/skeleton/SkeletonCircle.test.tsx +0 -27
  435. package/src/components/skeleton/SkeletonCircle.tsx +0 -52
  436. package/src/components/skeleton/SkeletonRectangle.stories.tsx +0 -82
  437. package/src/components/skeleton/SkeletonRectangle.test.tsx +0 -27
  438. package/src/components/skeleton/SkeletonRectangle.tsx +0 -88
  439. package/src/components/skeleton/SkeletonTypography.stories.tsx +0 -19
  440. package/src/components/skeleton/SkeletonTypography.test.tsx +0 -27
  441. package/src/components/skeleton/SkeletonTypography.tsx +0 -59
  442. package/src/components/skeleton/index.ts +0 -3
  443. package/src/components/slider/Slider.stories.tsx +0 -45
  444. package/src/components/slider/Slider.test.tsx +0 -29
  445. package/src/components/slider/Slider.tsx +0 -299
  446. package/src/components/slider/index.ts +0 -2
  447. package/src/components/slideshow/Slides.tsx +0 -130
  448. package/src/components/slideshow/Slideshow.stories.tsx +0 -179
  449. package/src/components/slideshow/Slideshow.test.tsx +0 -35
  450. package/src/components/slideshow/Slideshow.tsx +0 -173
  451. package/src/components/slideshow/SlideshowControls.stories.tsx +0 -100
  452. package/src/components/slideshow/SlideshowControls.tsx +0 -243
  453. package/src/components/slideshow/SlideshowItem.tsx +0 -44
  454. package/src/components/slideshow/SlideshowItemGroup.tsx +0 -60
  455. package/src/components/slideshow/constants.ts +0 -24
  456. package/src/components/slideshow/index.ts +0 -4
  457. package/src/components/slideshow/useKeyNavigate.ts +0 -28
  458. package/src/components/slideshow/usePaginationVisibleRange.ts +0 -37
  459. package/src/components/slideshow/useSlideFocusManagement.tsx +0 -92
  460. package/src/components/slideshow/useSwipeNavigate.ts +0 -18
  461. package/src/components/switch/Switch.stories.tsx +0 -49
  462. package/src/components/switch/Switch.test.tsx +0 -144
  463. package/src/components/switch/Switch.tsx +0 -145
  464. package/src/components/switch/index.ts +0 -1
  465. package/src/components/table/Table.test.tsx +0 -29
  466. package/src/components/table/Table.tsx +0 -59
  467. package/src/components/table/TableBody.test.tsx +0 -30
  468. package/src/components/table/TableBody.tsx +0 -42
  469. package/src/components/table/TableCell.test.tsx +0 -72
  470. package/src/components/table/TableCell.tsx +0 -130
  471. package/src/components/table/TableHeader.test.tsx +0 -30
  472. package/src/components/table/TableHeader.tsx +0 -48
  473. package/src/components/table/TableRow.test.tsx +0 -40
  474. package/src/components/table/TableRow.tsx +0 -71
  475. package/src/components/table/index.ts +0 -5
  476. package/src/components/tabs/Tab.test.tsx +0 -50
  477. package/src/components/tabs/Tab.tsx +0 -133
  478. package/src/components/tabs/TabList.test.tsx +0 -49
  479. package/src/components/tabs/TabList.tsx +0 -94
  480. package/src/components/tabs/TabPanel.test.tsx +0 -37
  481. package/src/components/tabs/TabPanel.tsx +0 -67
  482. package/src/components/tabs/TabProvider.test.tsx +0 -161
  483. package/src/components/tabs/TabProvider.tsx +0 -67
  484. package/src/components/tabs/Tabs.stories.tsx +0 -170
  485. package/src/components/tabs/index.ts +0 -4
  486. package/src/components/tabs/state.ts +0 -114
  487. package/src/components/tabs/test-utils.ts +0 -39
  488. package/src/components/text/Text.stories.tsx +0 -177
  489. package/src/components/text/Text.test.tsx +0 -92
  490. package/src/components/text/Text.tsx +0 -139
  491. package/src/components/text/index.ts +0 -1
  492. package/src/components/text-field/TextField.stories.tsx +0 -180
  493. package/src/components/text-field/TextField.test.tsx +0 -298
  494. package/src/components/text-field/TextField.tsx +0 -493
  495. package/src/components/text-field/index.ts +0 -1
  496. package/src/components/thumbnail/Thumbnail.stories.tsx +0 -448
  497. package/src/components/thumbnail/Thumbnail.test.tsx +0 -88
  498. package/src/components/thumbnail/Thumbnail.tsx +0 -248
  499. package/src/components/thumbnail/index.ts +0 -3
  500. package/src/components/thumbnail/types.ts +0 -48
  501. package/src/components/thumbnail/useFocusPointStyle.test.ts +0 -92
  502. package/src/components/thumbnail/useFocusPointStyle.tsx +0 -107
  503. package/src/components/thumbnail/useImageLoad.ts +0 -40
  504. package/src/components/toolbar/Toolbar.tsx +0 -68
  505. package/src/components/toolbar/index.ts +0 -1
  506. package/src/components/tooltip/Tooltip.stories.tsx +0 -118
  507. package/src/components/tooltip/Tooltip.test.tsx +0 -417
  508. package/src/components/tooltip/Tooltip.tsx +0 -165
  509. package/src/components/tooltip/constants.ts +0 -8
  510. package/src/components/tooltip/context.tsx +0 -17
  511. package/src/components/tooltip/index.ts +0 -1
  512. package/src/components/tooltip/useInjectTooltipRef.tsx +0 -55
  513. package/src/components/tooltip/useTooltipOpen.tsx +0 -143
  514. package/src/components/uploader/Uploader.stories.tsx +0 -109
  515. package/src/components/uploader/Uploader.test.tsx +0 -146
  516. package/src/components/uploader/Uploader.tsx +0 -177
  517. package/src/components/uploader/index.ts +0 -1
  518. package/src/components/user-block/UserBlock.stories.tsx +0 -133
  519. package/src/components/user-block/UserBlock.test.tsx +0 -106
  520. package/src/components/user-block/UserBlock.tsx +0 -193
  521. package/src/components/user-block/index.ts +0 -1
  522. package/src/constants.ts +0 -27
  523. package/src/hooks/useBooleanState.tsx +0 -13
  524. package/src/hooks/useCallbackOnEscape.ts +0 -34
  525. package/src/hooks/useChipGroupNavigation.tsx +0 -75
  526. package/src/hooks/useClickAway.tsx +0 -48
  527. package/src/hooks/useDisableBodyScroll.ts +0 -28
  528. package/src/hooks/useEventCallback.tsx +0 -17
  529. package/src/hooks/useFocus.tsx +0 -21
  530. package/src/hooks/useFocusTrap.ts +0 -93
  531. package/src/hooks/useFocusWithin.ts +0 -33
  532. package/src/hooks/useId.test.tsx +0 -22
  533. package/src/hooks/useId.ts +0 -15
  534. package/src/hooks/useImageSize.ts +0 -17
  535. package/src/hooks/useInfiniteScroll.tsx +0 -60
  536. package/src/hooks/useIntersectionObserver.tsx +0 -43
  537. package/src/hooks/useInterval.tsx +0 -31
  538. package/src/hooks/useKeyboardListNavigation.tsx +0 -204
  539. package/src/hooks/useListenFocus.tsx +0 -26
  540. package/src/hooks/useOverflowTooltipLabel.tsx +0 -32
  541. package/src/hooks/usePopper.ts +0 -12
  542. package/src/hooks/usePreviousValue.ts +0 -12
  543. package/src/hooks/useRovingTabIndex.tsx +0 -90
  544. package/src/hooks/useSizeOnWindowResize.ts +0 -30
  545. package/src/hooks/useSlideshowControls.ts +0 -246
  546. package/src/hooks/useStopPropagation.ts +0 -21
  547. package/src/hooks/useTransitionVisibility.ts +0 -48
  548. package/src/index.ts +0 -63
  549. package/src/stories/controls/color.ts +0 -7
  550. package/src/stories/controls/element.ts +0 -6
  551. package/src/stories/controls/focusPoint.ts +0 -1
  552. package/src/stories/controls/icons.ts +0 -126
  553. package/src/stories/controls/image.ts +0 -84
  554. package/src/stories/controls/selectArgType.ts +0 -8
  555. package/src/stories/controls/theme.ts +0 -3
  556. package/src/stories/controls/typography.ts +0 -5
  557. package/src/stories/controls/withUndefined.ts +0 -1
  558. package/src/stories/decorators/withChromaticForceScreenSize.tsx +0 -7
  559. package/src/stories/decorators/withCombinations.tsx +0 -132
  560. package/src/stories/decorators/withNestedProps.tsx +0 -22
  561. package/src/stories/decorators/withResizableBox.tsx +0 -21
  562. package/src/stories/decorators/withThemedBackground.tsx +0 -16
  563. package/src/stories/decorators/withValueOnChange.tsx +0 -18
  564. package/src/stories/decorators/withWrapper.tsx +0 -19
  565. package/src/stories/generated/Autocomplete/Demos.stories.tsx +0 -7
  566. package/src/stories/generated/Avatar/Demos.stories.tsx +0 -7
  567. package/src/stories/generated/Badge/Demos.stories.tsx +0 -9
  568. package/src/stories/generated/Button/Demos.stories.tsx +0 -11
  569. package/src/stories/generated/Checkbox/Demos.stories.tsx +0 -6
  570. package/src/stories/generated/Chip/Demos.stories.tsx +0 -11
  571. package/src/stories/generated/CommentBlock/Demos.stories.tsx +0 -8
  572. package/src/stories/generated/DatePicker/Demos.stories.tsx +0 -8
  573. package/src/stories/generated/Dialog/Demos.stories.tsx +0 -10
  574. package/src/stories/generated/Divider/Demos.stories.tsx +0 -6
  575. package/src/stories/generated/Dropdown/Demos.stories.tsx +0 -8
  576. package/src/stories/generated/ExpansionPanel/Demos.stories.tsx +0 -9
  577. package/src/stories/generated/Flag/Demos.stories.tsx +0 -6
  578. package/src/stories/generated/GenericBlock/Demos.stories.tsx +0 -8
  579. package/src/stories/generated/Heading/Demos.stories.tsx +0 -6
  580. package/src/stories/generated/Icon/Demos.stories.tsx +0 -8
  581. package/src/stories/generated/ImageBlock/Demos.stories.tsx +0 -9
  582. package/src/stories/generated/ImageLightbox/Demos.stories.tsx +0 -6
  583. package/src/stories/generated/Lightbox/Demos.stories.tsx +0 -6
  584. package/src/stories/generated/LinkPreview/Demos.stories.tsx +0 -7
  585. package/src/stories/generated/List/Demos.stories.tsx +0 -11
  586. package/src/stories/generated/Message/Demos.stories.tsx +0 -11
  587. package/src/stories/generated/Mosaic/Demos.stories.tsx +0 -10
  588. package/src/stories/generated/Notification/Demos.stories.tsx +0 -6
  589. package/src/stories/generated/Popover/Demos.stories.tsx +0 -11
  590. package/src/stories/generated/PopoverDialog/Demos.stories.tsx +0 -6
  591. package/src/stories/generated/PostBlock/Demos.stories.tsx +0 -6
  592. package/src/stories/generated/Progress/Demos.stories.tsx +0 -7
  593. package/src/stories/generated/ProgressTracker/Demos.stories.tsx +0 -9
  594. package/src/stories/generated/RadioButton/Demos.stories.tsx +0 -6
  595. package/src/stories/generated/Select/Demos.stories.tsx +0 -14
  596. package/src/stories/generated/SideNavigation/Demos.stories.tsx +0 -10
  597. package/src/stories/generated/Skeleton/Demos.stories.tsx +0 -9
  598. package/src/stories/generated/Slider/Demos.stories.tsx +0 -9
  599. package/src/stories/generated/Slideshow/Demos.stories.tsx +0 -8
  600. package/src/stories/generated/Switch/Demos.stories.tsx +0 -6
  601. package/src/stories/generated/Table/Demos.stories.tsx +0 -7
  602. package/src/stories/generated/Tabs/Demos.stories.tsx +0 -8
  603. package/src/stories/generated/TextField/Demos.stories.tsx +0 -20
  604. package/src/stories/generated/Thumbnail/Demos.stories.tsx +0 -12
  605. package/src/stories/generated/Toolbar/Demos.stories.tsx +0 -10
  606. package/src/stories/generated/Tooltip/Demos.stories.tsx +0 -8
  607. package/src/stories/generated/Uploader/Demos.stories.tsx +0 -8
  608. package/src/stories/generated/UserBlock/Demos.stories.tsx +0 -11
  609. package/src/stories/utils/CustomLink.tsx +0 -12
  610. package/src/stories/utils/concatPath.tsx +0 -17
  611. package/src/stories/utils/disableArgTypes.ts +0 -3
  612. package/src/stories/utils/initDemoShadowDOMPortal.ts +0 -10
  613. package/src/stories/utils/lorem.ts +0 -59
  614. package/src/stories/utils/theming.tsx +0 -166
  615. package/src/stories/utils/toFlattenProps.ts +0 -28
  616. package/src/stories/utils/withCategory.ts +0 -12
  617. package/src/testing/utils/ThemeSentinel.tsx +0 -10
  618. package/src/testing/utils/commonTestsSuiteRTL.tsx +0 -193
  619. package/src/testing/utils/index.ts +0 -1
  620. package/src/testing/utils/queries.ts +0 -19
  621. package/src/untypped-modules.d.ts +0 -9
  622. package/src/utils/ClickAwayProvider/ClickAwayProvider.stories.jsx +0 -70
  623. package/src/utils/ClickAwayProvider/ClickAwayProvider.tsx +0 -69
  624. package/src/utils/ClickAwayProvider/index.ts +0 -1
  625. package/src/utils/MaterialThemeSwitcher/MaterialThemeSwitcher.tsx +0 -54
  626. package/src/utils/MaterialThemeSwitcher/index.ts +0 -1
  627. package/src/utils/Portal/Portal.test.tsx +0 -31
  628. package/src/utils/Portal/Portal.tsx +0 -33
  629. package/src/utils/Portal/PortalProvider.stories.jsx +0 -22
  630. package/src/utils/Portal/PortalProvider.test.tsx +0 -72
  631. package/src/utils/Portal/PortalProvider.tsx +0 -24
  632. package/src/utils/Portal/index.tsx +0 -2
  633. package/src/utils/browser/DOM/findImage.tsx +0 -3
  634. package/src/utils/browser/DOM/startViewTransition.ts +0 -68
  635. package/src/utils/browser/focus/constants.ts +0 -7
  636. package/src/utils/browser/focus/getFirstAndLastFocusable.test.ts +0 -134
  637. package/src/utils/browser/focus/getFirstAndLastFocusable.ts +0 -21
  638. package/src/utils/browser/focus/getFocusableElements.test.ts +0 -151
  639. package/src/utils/browser/focus/getFocusableElements.ts +0 -7
  640. package/src/utils/browser/isFocusVisible.ts +0 -9
  641. package/src/utils/browser/isHoverNotSupported.test.js +0 -24
  642. package/src/utils/browser/isHoverNotSupported.ts +0 -2
  643. package/src/utils/browser/isReducedMotion.ts +0 -6
  644. package/src/utils/date/addMonthResetDay.test.ts +0 -13
  645. package/src/utils/date/addMonthResetDay.ts +0 -9
  646. package/src/utils/date/formatDayNumber.test.ts +0 -12
  647. package/src/utils/date/formatDayNumber.ts +0 -5
  648. package/src/utils/date/getFirstDayOfWeek.test.ts +0 -20
  649. package/src/utils/date/getFirstDayOfWeek.ts +0 -59
  650. package/src/utils/date/getMonthCalendar.test.ts +0 -127
  651. package/src/utils/date/getMonthCalendar.ts +0 -69
  652. package/src/utils/date/getWeekDays.test.ts +0 -48
  653. package/src/utils/date/getWeekDays.ts +0 -34
  654. package/src/utils/date/getYearDisplayName.test.ts +0 -20
  655. package/src/utils/date/getYearDisplayName.ts +0 -12
  656. package/src/utils/date/isDateValid.test.ts +0 -15
  657. package/src/utils/date/isDateValid.ts +0 -4
  658. package/src/utils/date/isSameDay.test.ts +0 -37
  659. package/src/utils/date/isSameDay.ts +0 -11
  660. package/src/utils/disabled/DisabledStateContext.tsx +0 -29
  661. package/src/utils/disabled/DisabledStateProvider.stories.tsx +0 -92
  662. package/src/utils/disabled/index.ts +0 -2
  663. package/src/utils/disabled/useDisableStateProps.test.tsx +0 -74
  664. package/src/utils/disabled/useDisableStateProps.tsx +0 -37
  665. package/src/utils/function/makeListenerTowerContext.ts +0 -32
  666. package/src/utils/index.ts +0 -7
  667. package/src/utils/locale/getCurrentLocale.ts +0 -4
  668. package/src/utils/locale/parseLocale.test.ts +0 -17
  669. package/src/utils/locale/parseLocale.ts +0 -23
  670. package/src/utils/locale/types.ts +0 -8
  671. package/src/utils/number/clamp.ts +0 -17
  672. package/src/utils/object/isEqual.test.ts +0 -25
  673. package/src/utils/object/isEqual.ts +0 -11
  674. package/src/utils/partitionMulti.test.ts +0 -27
  675. package/src/utils/partitionMulti.ts +0 -29
  676. package/src/utils/react/OnBeforeUnmount.tsx +0 -20
  677. package/src/utils/react/RawClickable.test.tsx +0 -153
  678. package/src/utils/react/RawClickable.tsx +0 -65
  679. package/src/utils/react/flattenChildren.ts +0 -32
  680. package/src/utils/react/forwardRef.ts +0 -11
  681. package/src/utils/react/forwardRefPolymorphic.ts +0 -9
  682. package/src/utils/react/mergeRefs.ts +0 -33
  683. package/src/utils/react/renderLink.tsx +0 -17
  684. package/src/utils/react/skipRender.tsx +0 -18
  685. package/src/utils/react/unref.ts +0 -7
  686. package/src/utils/react/wrapChildrenIconWithSpaces.test.tsx +0 -37
  687. package/src/utils/react/wrapChildrenIconWithSpaces.tsx +0 -22
  688. package/src/utils/theme/ThemeContext.ts +0 -16
  689. package/src/utils/theme/invertTheme.ts +0 -4
  690. package/src/utils/type/Comp.ts +0 -14
  691. package/src/utils/type/ComponentRef.ts +0 -16
  692. package/src/utils/type/HasAriaDisabled.ts +0 -6
  693. package/src/utils/type/HasPolymorphicAs.ts +0 -6
  694. package/src/utils/type/HasRequiredLinkHref.ts +0 -1
  695. package/src/utils/type/MaybeElementOrRef.ts +0 -6
  696. package/src/utils/type/index.ts +0 -9
  697. package/src/utils/type/isComponent.ts +0 -33
  698. package/src/utils/type/isComponentType.ts +0 -9
@@ -1,59 +0,0 @@
1
- import { Locale } from '@lumx/react/utils/locale/types';
2
-
3
- /** Get first day of week for locale from the browser API */
4
- export const getFromBrowser = (locale: Locale): number | undefined => {
5
- try {
6
- const localeMetadata = new Intl.Locale(locale.code) as any;
7
- const { firstDay } = localeMetadata.getWeekInfo?.() || localeMetadata.weekInfo;
8
- // Sunday is represented as `0` in Date.getDay()
9
- if (firstDay === 7) return 0;
10
- return firstDay;
11
- } catch (e) {
12
- return undefined;
13
- }
14
- };
15
-
16
- /** List first day for each locale (could be removed when all browser implement Locale weekInfo) */
17
- const FIRST_DAY_FOR_LOCALES = [
18
- {
19
- // Locales with Sunday as the first day of the week
20
- localeRX: /^(af|ar-(dz|eg|sa)|bn|cy|en-(ca|us|za)|fr-ca|gd|he|hi|ja|km|ko|pt-br|te|th|ug|zh-hk)$/i,
21
- firstDay: 0,
22
- },
23
- {
24
- // Locales with Monday as the first day of the week
25
- localeRX:
26
- /^(ar-(ma|tn)|az|be|bg|bs|ca|cs|da|de|el|en-(au|gb|ie|in|nz)|eo|es|et|eu|fi|fr|fy|gl|gu|hr|ht|hu|hy|id|is|it|ka|kk|kn|lb|lt|lv|mk|mn|ms|mt|nb|nl|nn|oc|pl|pt|ro|ru|sk|sl|sq|sr|sv|ta|tr|uk|uz|vi|zh-(cn|tw))$/i,
27
- firstDay: 1,
28
- },
29
- {
30
- // Locales with Saturday as the first day of the week
31
- localeRX: /^(ar|fa-ir)$/i,
32
- firstDay: 6,
33
- },
34
- ];
35
-
36
- /** Find first day of week for locale from the constant */
37
- const getFromConstant = (locale: Locale, searchBy: keyof Locale = 'code'): number | undefined => {
38
- // Search for locale (lang + region)
39
- for (const { localeRX, firstDay } of FIRST_DAY_FOR_LOCALES) {
40
- if (localeRX.test(locale[searchBy] as string)) return firstDay;
41
- }
42
- // Fallback search for locale lang
43
- if (locale.code !== locale.language) {
44
- return getFromConstant(locale, 'language');
45
- }
46
- return undefined;
47
- };
48
-
49
- /**
50
- * Get first day of the week for the given locale code (language + region).
51
- */
52
- export const getFirstDayOfWeek = (locale: Locale): number | undefined => {
53
- // Get from browser API
54
- const firstDay = getFromBrowser(locale);
55
- if (firstDay !== undefined) return firstDay;
56
-
57
- // Get from constant
58
- return getFromConstant(locale);
59
- };
@@ -1,127 +0,0 @@
1
- import { parseLocale } from '@lumx/react/utils/locale/parseLocale';
2
- import { Locale } from '@lumx/react/utils/locale/types';
3
- import { getMonthCalendar } from './getMonthCalendar';
4
-
5
- describe(getMonthCalendar.name, () => {
6
- it('should generate calendar', () => {
7
- const referenceDate = new Date('2017-02-03');
8
- const french = parseLocale('fr') as Locale;
9
- const month = getMonthCalendar(french, referenceDate);
10
-
11
- expect(month).toEqual({
12
- weekDays: [
13
- { long: 'lundi', letter: 'L', number: 1 },
14
- { long: 'mardi', letter: 'M', number: 2 },
15
- { long: 'mercredi', letter: 'M', number: 3 },
16
- { long: 'jeudi', letter: 'J', number: 4 },
17
- { long: 'vendredi', letter: 'V', number: 5 },
18
- { long: 'samedi', letter: 'S', number: 6 },
19
- { long: 'dimanche', letter: 'D', number: 0 },
20
- ],
21
- weeks: [
22
- {
23
- '3': { date: new Date('2017-02-01') },
24
- '4': { date: new Date('2017-02-02') },
25
- '5': { date: new Date('2017-02-03') },
26
- '6': { date: new Date('2017-02-04') },
27
- '0': { date: new Date('2017-02-05') },
28
- },
29
- {
30
- '1': { date: new Date('2017-02-06') },
31
- '2': { date: new Date('2017-02-07') },
32
- '3': { date: new Date('2017-02-08') },
33
- '4': { date: new Date('2017-02-09') },
34
- '5': { date: new Date('2017-02-10') },
35
- '6': { date: new Date('2017-02-11') },
36
- '0': { date: new Date('2017-02-12') },
37
- },
38
- {
39
- '1': { date: new Date('2017-02-13') },
40
- '2': { date: new Date('2017-02-14') },
41
- '3': { date: new Date('2017-02-15') },
42
- '4': { date: new Date('2017-02-16') },
43
- '5': { date: new Date('2017-02-17') },
44
- '6': { date: new Date('2017-02-18') },
45
- '0': { date: new Date('2017-02-19') },
46
- },
47
- {
48
- '1': { date: new Date('2017-02-20') },
49
- '2': { date: new Date('2017-02-21') },
50
- '3': { date: new Date('2017-02-22') },
51
- '4': { date: new Date('2017-02-23') },
52
- '5': { date: new Date('2017-02-24') },
53
- '6': { date: new Date('2017-02-25') },
54
- '0': { date: new Date('2017-02-26') },
55
- },
56
- {
57
- '1': { date: new Date('2017-02-27') },
58
- '2': { date: new Date('2017-02-28') },
59
- },
60
- // Empty row (used for padding to avoid layout shift)
61
- {},
62
- ],
63
- });
64
- });
65
-
66
- it('should generate calendar with sunday as start of week and mark dates in range', () => {
67
- const referenceDate = new Date('2017-02-03');
68
- const minDate = new Date('2017-02-06');
69
- const maxDate = new Date('2017-02-10');
70
- const englishUS = parseLocale('en-US') as Locale;
71
- const month = getMonthCalendar(englishUS, referenceDate, minDate, maxDate);
72
-
73
- expect(month).toEqual({
74
- weekDays: [
75
- { long: 'Sunday', letter: 'S', number: 0 },
76
- { long: 'Monday', letter: 'M', number: 1 },
77
- { long: 'Tuesday', letter: 'T', number: 2 },
78
- { long: 'Wednesday', letter: 'W', number: 3 },
79
- { long: 'Thursday', letter: 'T', number: 4 },
80
- { long: 'Friday', letter: 'F', number: 5 },
81
- { long: 'Saturday', letter: 'S', number: 6 },
82
- ],
83
- weeks: [
84
- {
85
- '3': { date: new Date('2017-02-01'), isOutOfRange: true },
86
- '4': { date: new Date('2017-02-02'), isOutOfRange: true },
87
- '5': { date: new Date('2017-02-03'), isOutOfRange: true },
88
- '6': { date: new Date('2017-02-04'), isOutOfRange: true },
89
- },
90
- {
91
- '0': { date: new Date('2017-02-05'), isOutOfRange: true },
92
- '1': { date: new Date('2017-02-06') },
93
- '2': { date: new Date('2017-02-07') },
94
- '3': { date: new Date('2017-02-08') },
95
- '4': { date: new Date('2017-02-09') },
96
- '5': { date: new Date('2017-02-10') },
97
- '6': { date: new Date('2017-02-11'), isOutOfRange: true },
98
- },
99
- {
100
- '0': { date: new Date('2017-02-12'), isOutOfRange: true },
101
- '1': { date: new Date('2017-02-13'), isOutOfRange: true },
102
- '2': { date: new Date('2017-02-14'), isOutOfRange: true },
103
- '3': { date: new Date('2017-02-15'), isOutOfRange: true },
104
- '4': { date: new Date('2017-02-16'), isOutOfRange: true },
105
- '5': { date: new Date('2017-02-17'), isOutOfRange: true },
106
- '6': { date: new Date('2017-02-18'), isOutOfRange: true },
107
- },
108
- {
109
- '0': { date: new Date('2017-02-19'), isOutOfRange: true },
110
- '1': { date: new Date('2017-02-20'), isOutOfRange: true },
111
- '2': { date: new Date('2017-02-21'), isOutOfRange: true },
112
- '3': { date: new Date('2017-02-22'), isOutOfRange: true },
113
- '4': { date: new Date('2017-02-23'), isOutOfRange: true },
114
- '5': { date: new Date('2017-02-24'), isOutOfRange: true },
115
- '6': { date: new Date('2017-02-25'), isOutOfRange: true },
116
- },
117
- {
118
- '0': { date: new Date('2017-02-26'), isOutOfRange: true },
119
- '1': { date: new Date('2017-02-27'), isOutOfRange: true },
120
- '2': { date: new Date('2017-02-28'), isOutOfRange: true },
121
- },
122
- // Empty row (used for padding to avoid layout shift)
123
- {},
124
- ],
125
- });
126
- });
127
- });
@@ -1,69 +0,0 @@
1
- import last from 'lodash/last';
2
-
3
- import { getWeekDays, WeekDayInfo } from '@lumx/react/utils/date/getWeekDays';
4
- import { Locale } from '@lumx/react/utils/locale/types';
5
-
6
- type AnnotatedDay = { date: Date; isOutOfRange?: boolean };
7
- type AnnotatedWeek = Partial<Record<number, AnnotatedDay>>;
8
-
9
- interface MonthCalendar {
10
- weekDays: Array<WeekDayInfo>;
11
- weeks: Array<AnnotatedWeek>;
12
- }
13
-
14
- /** Up to 6 rows can appear in a month calendar => 4 weeks + 1 start of month partial week + 1 send of month partial week */
15
- const MONTH_ROW_COUNT = 6;
16
-
17
- /**
18
- * Get month calendar.
19
- * A list of weeks with days indexed by week day number
20
- */
21
- export const getMonthCalendar = (
22
- locale: Locale,
23
- referenceDate = new Date(),
24
- rangeMinDate?: Date,
25
- rangeMaxDate?: Date,
26
- ): MonthCalendar => {
27
- const month = referenceDate.getMonth();
28
- const iterDate = new Date(referenceDate);
29
- iterDate.setDate(1);
30
-
31
- const minDate = rangeMinDate && new Date(rangeMinDate);
32
- const maxDate = rangeMaxDate && new Date(rangeMaxDate);
33
- // Reset time to compare dates only.
34
- iterDate.setUTCHours(0, 0, 0, 0);
35
- minDate?.setUTCHours(0, 0, 0, 0);
36
- maxDate?.setUTCHours(0, 0, 0, 0);
37
-
38
- const weekDays = getWeekDays(locale);
39
- const lastDayOfWeek = last(weekDays) as WeekDayInfo;
40
-
41
- const weeks: Array<AnnotatedWeek> = [];
42
- let week: AnnotatedWeek = {};
43
- let rowCount = 0;
44
-
45
- while (rowCount < MONTH_ROW_COUNT) {
46
- const weekDayNumber = iterDate.getDay();
47
- const day: AnnotatedDay = { date: new Date(iterDate.getTime()) };
48
-
49
- // If a range is specified, check if the day is out of range.
50
- // min and max date are included within the valid range.
51
- if ((minDate && iterDate < minDate) || (maxDate && iterDate > maxDate)) {
52
- day.isOutOfRange = true;
53
- }
54
-
55
- if (iterDate.getMonth() === month) {
56
- week[weekDayNumber] = day;
57
- }
58
-
59
- if (weekDayNumber === lastDayOfWeek.number) {
60
- weeks.push(week);
61
- rowCount += 1;
62
- week = {};
63
- }
64
- iterDate.setDate(iterDate.getDate() + 1);
65
- }
66
- if (Object.keys(week).length) weeks.push(week);
67
-
68
- return { weeks, weekDays };
69
- };
@@ -1,48 +0,0 @@
1
- import { parseLocale } from '@lumx/react/utils/locale/parseLocale';
2
- import { Locale } from '@lumx/react/utils/locale/types';
3
- import { getWeekDays } from './getWeekDays';
4
-
5
- describe(getWeekDays.name, () => {
6
- const french = parseLocale('fr') as Locale;
7
- const englishUS = parseLocale('en-us') as Locale;
8
- const farsi = parseLocale('fa-ir') as Locale;
9
-
10
- it('should list french week days', () => {
11
- const weekDays = getWeekDays(french);
12
- expect(weekDays).toEqual([
13
- { long: 'lundi', letter: 'L', number: 1 },
14
- { long: 'mardi', letter: 'M', number: 2 },
15
- { long: 'mercredi', letter: 'M', number: 3 },
16
- { long: 'jeudi', letter: 'J', number: 4 },
17
- { long: 'vendredi', letter: 'V', number: 5 },
18
- { long: 'samedi', letter: 'S', number: 6 },
19
- { long: 'dimanche', letter: 'D', number: 0 },
20
- ]);
21
- });
22
-
23
- it('should list US week days', () => {
24
- const weekDays = getWeekDays(englishUS);
25
- expect(weekDays).toEqual([
26
- { long: 'Sunday', letter: 'S', number: 0 },
27
- { long: 'Monday', letter: 'M', number: 1 },
28
- { long: 'Tuesday', letter: 'T', number: 2 },
29
- { long: 'Wednesday', letter: 'W', number: 3 },
30
- { long: 'Thursday', letter: 'T', number: 4 },
31
- { long: 'Friday', letter: 'F', number: 5 },
32
- { long: 'Saturday', letter: 'S', number: 6 },
33
- ]);
34
- });
35
-
36
- it('should list fa-ir week days', () => {
37
- const weekDays = getWeekDays(farsi);
38
- expect(weekDays).toEqual([
39
- { long: 'شنبه', letter: 'ش', number: 6 },
40
- { long: 'یکشنبه', letter: 'ی', number: 0 },
41
- { long: 'دوشنبه', letter: 'د', number: 1 },
42
- { long: 'سه‌شنبه', letter: 'س', number: 2 },
43
- { long: 'چهارشنبه', letter: 'چ', number: 3 },
44
- { long: 'پنجشنبه', letter: 'پ', number: 4 },
45
- { long: 'جمعه', letter: 'ج', number: 5 },
46
- ]);
47
- });
48
- });
@@ -1,34 +0,0 @@
1
- import { Locale } from '@lumx/react/utils/locale/types';
2
- import { getFirstDayOfWeek } from './getFirstDayOfWeek';
3
-
4
- export type WeekDayInfo = { letter: string; number: number; long: string };
5
-
6
- export const DAYS_PER_WEEK = 7;
7
-
8
- /**
9
- * List week days (based on locale) with the week day letter (ex: "M" for "Monday") and week day number
10
- * (0-based index starting on Sunday).
11
- */
12
- export const getWeekDays = (locale: Locale): Array<WeekDayInfo> => {
13
- const iterDate = new Date();
14
- const firstDay = getFirstDayOfWeek(locale) ?? 1;
15
-
16
- // Go to start of the week
17
- const offset = firstDay - iterDate.getDay();
18
- iterDate.setDate(iterDate.getDate() + offset);
19
-
20
- // Iterate through the days of the week
21
- const weekDays: Array<WeekDayInfo> = [];
22
- for (let i = 0; i < DAYS_PER_WEEK; i++) {
23
- // Single letter week day (ex: "M" for "Monday", "L" for "Lundi", etc.)
24
- const letter = iterDate.toLocaleDateString(locale.code, { weekday: 'narrow' });
25
- // Weed day long notation
26
- const long = iterDate.toLocaleDateString(locale.code, { weekday: 'long' });
27
- // Day number (1-based index starting on Monday)
28
- const number = iterDate.getDay();
29
-
30
- weekDays.push({ letter, number, long });
31
- iterDate.setDate(iterDate.getDate() + 1);
32
- }
33
- return weekDays;
34
- };
@@ -1,20 +0,0 @@
1
- import { getYearDisplayName } from './getYearDisplayName';
2
-
3
- describe(getYearDisplayName, () => {
4
- beforeEach(() => {
5
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
6
- // @ts-ignore
7
- vi.spyOn(Intl, 'DisplayNames').mockImplementation(() => ({
8
- resolvedOptions: () => ({
9
- fallback: 'code',
10
- locale: 'fr',
11
- style: 'short',
12
- type: 'dateTimeField',
13
- }),
14
- of: () => 'année',
15
- }));
16
- });
17
- it('should return a label', () => {
18
- expect(getYearDisplayName('fr-FR')).toEqual('année');
19
- });
20
- });
@@ -1,12 +0,0 @@
1
- export const getYearDisplayName = (locale: string) => {
2
- let label: string | undefined;
3
- try {
4
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
5
- // @ts-ignore
6
- const displayNames = new Intl.DisplayNames(locale, { type: 'dateTimeField' });
7
- label = displayNames.of('year');
8
- } catch (error) {
9
- label = '';
10
- }
11
- return label;
12
- };
@@ -1,15 +0,0 @@
1
- import { isDateValid } from '@lumx/react/utils/date/isDateValid';
2
-
3
- describe(isDateValid.name, () => {
4
- it('should mark `undefined` as invalid', () => {
5
- expect(isDateValid(undefined)).toBe(false);
6
- });
7
-
8
- it('should mark invalid date as invalid', () => {
9
- expect(isDateValid(new Date('foo'))).toBe(false);
10
- });
11
-
12
- it('should mark valid date as valid', () => {
13
- expect(isDateValid(new Date())).toBe(true);
14
- });
15
- });
@@ -1,4 +0,0 @@
1
- /**
2
- * Check if given date is valid.
3
- */
4
- export const isDateValid = (date?: Date) => date instanceof Date && !Number.isNaN(date.getTime());
@@ -1,37 +0,0 @@
1
- import { isSameDay } from '@lumx/react/utils/date/isSameDay';
2
-
3
- describe(isSameDay, () => {
4
- it('should return true for same dates', () => {
5
- const date1 = new Date('2023-08-26T12:00:00');
6
- const date2 = new Date('2023-08-26T15:30:00');
7
- expect(isSameDay(date1, date2)).toBe(true);
8
- });
9
-
10
- it('should return false for different dates', () => {
11
- const date1 = new Date('2023-08-26T10:00:00');
12
- const date2 = new Date('2023-08-27T10:00:00');
13
- expect(isSameDay(date1, date2)).toBe(false);
14
- });
15
-
16
- it('should handle different months', () => {
17
- const date1 = new Date('2023-08-15T08:00:00');
18
- const date2 = new Date('2023-09-15T08:00:00');
19
- expect(isSameDay(date1, date2)).toBe(false);
20
- });
21
-
22
- it('should handle different years', () => {
23
- const date1 = new Date('2022-12-25T18:30:00');
24
- const date2 = new Date('1923-12-25T18:30:00');
25
- expect(isSameDay(date1, date2)).toBe(false);
26
- });
27
-
28
- it('should handle invalid date', () => {
29
- // Invalid date input are not comparable, so we always return `false`
30
- // Undefined date
31
- expect(isSameDay(undefined as any, undefined as any)).toBe(false);
32
- // Null date
33
- expect(isSameDay(null as any, new Date())).toBe(false);
34
- // Invalid date
35
- expect(isSameDay(new Date('-'), new Date('-'))).toBe(false);
36
- });
37
- });
@@ -1,11 +0,0 @@
1
- import { isDateValid } from '@lumx/react/utils/date/isDateValid';
2
-
3
- /**
4
- * Check `date1` is on the same day as `date2`.
5
- */
6
- export const isSameDay = (date1: Date, date2: Date) =>
7
- isDateValid(date1) &&
8
- isDateValid(date2) &&
9
- date1.getFullYear() === date2.getFullYear() &&
10
- date1.getMonth() === date2.getMonth() &&
11
- date1.getDate() === date2.getDate();
@@ -1,29 +0,0 @@
1
- import React, { useContext } from 'react';
2
-
3
- /** Disable state */
4
- type DisabledStateContextValue =
5
- | {
6
- state: 'disabled';
7
- }
8
- | { state: undefined | null };
9
-
10
- export const DisabledStateContext = React.createContext<DisabledStateContextValue>({ state: null });
11
-
12
- export type DisabledStateProviderProps = DisabledStateContextValue & {
13
- children: React.ReactNode;
14
- };
15
-
16
- /**
17
- * Disabled state provider.
18
- * All nested LumX Design System components inherit this disabled state.
19
- */
20
- export function DisabledStateProvider({ children, ...value }: DisabledStateProviderProps) {
21
- return <DisabledStateContext.Provider value={value}>{children}</DisabledStateContext.Provider>;
22
- }
23
-
24
- /**
25
- * Get DisabledState context value
26
- */
27
- export function useDisabledStateContext(): DisabledStateContextValue {
28
- return useContext(DisabledStateContext);
29
- }
@@ -1,92 +0,0 @@
1
- import {
2
- Button,
3
- Checkbox,
4
- Chip,
5
- DatePickerField,
6
- IconButton,
7
- Link,
8
- List,
9
- ListItem,
10
- RadioButton,
11
- Switch,
12
- TextField,
13
- Thumbnail,
14
- Uploader,
15
- } from '@lumx/react';
16
- import { DisabledStateProvider } from '@lumx/react/utils';
17
- import { getSelectArgType } from '@lumx/react/stories/controls/selectArgType';
18
- import { disableArgTypes } from '@lumx/react/stories/utils/disableArgTypes';
19
- import { mdiFoodApple } from '@lumx/icons';
20
- import { LANDSCAPE_IMAGES } from '@lumx/react/stories/controls/image';
21
-
22
- export default {
23
- title: 'LumX components/DisabledStateProvider',
24
- component: DisabledStateProvider,
25
- argTypes: {
26
- state: getSelectArgType(['disabled', undefined]),
27
- ...disableArgTypes(['children']),
28
- },
29
- };
30
-
31
- /**
32
- * Disabling nested children
33
- */
34
- export const Disabled = {
35
- args: {
36
- state: 'disabled',
37
- },
38
- render: ({ state }: any) => (
39
- <DisabledStateProvider state={state}>
40
- <Button>Button</Button>
41
- <Button isDisabled>Disabled Button</Button>
42
- </DisabledStateProvider>
43
- ),
44
- };
45
-
46
- /**
47
- * Testing when the context is not active
48
- */
49
- export const NotDisabled = {
50
- args: {
51
- state: undefined,
52
- },
53
- render: ({ state }: any) => (
54
- <DisabledStateProvider state={state}>
55
- <Button>Button</Button>
56
- <Button isDisabled>Disabled Button</Button>
57
- </DisabledStateProvider>
58
- ),
59
- };
60
-
61
- /**
62
- * Testing disabling children
63
- */
64
- export const AllComponents = {
65
- args: {
66
- state: 'disabled',
67
- },
68
- render: ({ state }: any) => (
69
- <DisabledStateProvider state={state}>
70
- <Button>Button</Button>
71
- <IconButton label="Icon button" icon={mdiFoodApple} />
72
- <Checkbox label="Checkbox" />
73
- <Chip onClick={() => {}}>Chip</Chip>
74
- <DatePickerField
75
- label="Date picker field"
76
- nextButtonProps={{ label: 'Next' }}
77
- previousButtonProps={{ label: 'Previous' }}
78
- value={new Date()}
79
- onChange={() => {}}
80
- />
81
- <Link href="https://example.com">Link</Link>
82
- <List>
83
- <ListItem onItemSelected={() => {}}>Clickable list item</ListItem>
84
- </List>
85
- <RadioButton label="Radio button" />
86
- <Switch>Switch</Switch>
87
- <TextField label="texfield" onChange={() => {}} value="" />
88
- <Thumbnail alt="Thumbnail" image={LANDSCAPE_IMAGES.landscape1s200} onClick={() => {}} />
89
- <Uploader label="Upload a file" fileInputProps={{ onChange: () => {} }} />
90
- </DisabledStateProvider>
91
- ),
92
- };
@@ -1,2 +0,0 @@
1
- export { useDisableStateProps } from './useDisableStateProps';
2
- export { DisabledStateProvider, useDisabledStateContext } from './DisabledStateContext';
@@ -1,74 +0,0 @@
1
- import React from 'react';
2
-
3
- import { fireEvent, render } from '@testing-library/react';
4
- import { DisabledStateProvider } from './DisabledStateContext';
5
- import { useDisableStateProps } from './useDisableStateProps';
6
-
7
- describe(useDisableStateProps.name, () => {
8
- const setup = (props: any, wrapper?: React.ComponentType) => {
9
- const testId = 'test-container';
10
- const Component = () => {
11
- const { disabledStateProps, otherProps } = useDisableStateProps(props);
12
- return <div data-testid={testId} {...otherProps} {...disabledStateProps} />;
13
- };
14
- const renderResult = render(wrapper ? React.createElement(wrapper, undefined, <Component />) : <Component />);
15
- return { ...renderResult, element: renderResult.getByTestId(testId) };
16
- };
17
-
18
- it('should not be disabled by default', () => {
19
- const { element } = setup({});
20
- expect(element).not.toHaveAttribute('disabled');
21
- expect(element).toHaveAttribute('aria-disabled', 'false');
22
- });
23
-
24
- it('should be disabled with `disabled` prop', () => {
25
- const { element } = setup({ disabled: true });
26
- expect(element).toHaveAttribute('disabled');
27
- });
28
-
29
- it('should be disabled with `isDisabled` prop', () => {
30
- const { element } = setup({ isDisabled: true });
31
- expect(element).toHaveAttribute('disabled');
32
- });
33
-
34
- it('should be disabled with `aria-disabled` prop', () => {
35
- const { element } = setup({ 'aria-disabled': true });
36
- expect(element).toHaveAttribute('aria-disabled', 'true');
37
- });
38
-
39
- it('should be disabled with `aria-disabled` string prop', () => {
40
- const { element } = setup({ 'aria-disabled': 'true' });
41
- expect(element).toHaveAttribute('aria-disabled', 'true');
42
- });
43
-
44
- it('should be disabled with context', () => {
45
- const wrapper = ({ children }: any) => (
46
- <DisabledStateProvider state="disabled">{children}</DisabledStateProvider>
47
- );
48
- const { element } = setup({}, wrapper);
49
- expect(element).toHaveAttribute('disabled');
50
- });
51
-
52
- it('should prioritize context', () => {
53
- const wrapper = ({ children }: any) => (
54
- <DisabledStateProvider state="disabled">{children}</DisabledStateProvider>
55
- );
56
- const { element } = setup({ disabled: false }, wrapper);
57
- expect(element).toHaveAttribute('disabled');
58
- expect(element).toHaveAttribute('aria-disabled', 'false');
59
- });
60
-
61
- it('should forward onClick when not disabled', () => {
62
- const onClick = vi.fn();
63
- const { element } = setup({ onClick });
64
- fireEvent.click(element);
65
- expect(onClick).toHaveBeenCalled();
66
- });
67
-
68
- it('should not forward onClick when disabled', () => {
69
- const onClick = vi.fn();
70
- const { element } = setup({ disabled: true, onClick });
71
- fireEvent.click(element);
72
- expect(onClick).not.toHaveBeenCalled();
73
- });
74
- });