@lumx/react 3.20.1-alpha.2 → 3.20.1-alpha.20

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 (697) hide show
  1. package/CONTRIBUTING.md +1 -5
  2. package/README.md +0 -2
  3. package/_internal/Button-1f227024.js +98 -0
  4. package/_internal/Button-1f227024.js.map +1 -0
  5. package/_internal/ButtonRoot-823f3e9c.js +117 -0
  6. package/_internal/ButtonRoot-823f3e9c.js.map +1 -0
  7. package/_internal/Chip-a34f6905.js +146 -0
  8. package/_internal/Chip-a34f6905.js.map +1 -0
  9. package/_internal/ClickAwayProvider-7093ba23.js +95 -0
  10. package/_internal/ClickAwayProvider-7093ba23.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-f4df224c.js +77 -0
  16. package/_internal/IconButton-f4df224c.js.map +1 -0
  17. package/_internal/ImageCaption-8134a3aa.js +75 -0
  18. package/_internal/ImageCaption-8134a3aa.js.map +1 -0
  19. package/_internal/List-54237e0e.js +793 -0
  20. package/_internal/List-54237e0e.js.map +1 -0
  21. package/_internal/PopoverDialog-e0967e5f.js +655 -0
  22. package/_internal/PopoverDialog-e0967e5f.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-b7a67f32.js +678 -0
  28. package/_internal/Slides-b7a67f32.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-b5dea0af.js +313 -0
  32. package/_internal/Thumbnail-b5dea0af.js.map +1 -0
  33. package/_internal/components/alert-dialog-b284b191.js +162 -0
  34. package/_internal/components/alert-dialog-b284b191.js.map +1 -0
  35. package/_internal/components/autocomplete-8d3f37ea.js +261 -0
  36. package/_internal/components/autocomplete-8d3f37ea.js.map +1 -0
  37. package/_internal/components/avatar-5fc70e00.js +83 -0
  38. package/_internal/components/avatar-5fc70e00.js.map +1 -0
  39. package/_internal/components/badge-8390e590.js +81 -0
  40. package/_internal/components/badge-8390e590.js.map +1 -0
  41. package/_internal/components/button-e3c7f2eb.js +47 -0
  42. package/_internal/components/button-e3c7f2eb.js.map +1 -0
  43. package/_internal/components/checkbox-d1ca9748.js +140 -0
  44. package/_internal/components/checkbox-d1ca9748.js.map +1 -0
  45. package/_internal/components/chip-e40c5521.js +102 -0
  46. package/_internal/components/chip-e40c5521.js.map +1 -0
  47. package/_internal/components/comment-block-a3cf7b9b.js +138 -0
  48. package/_internal/components/comment-block-a3cf7b9b.js.map +1 -0
  49. package/_internal/components/date-picker-6c1b14e4.js +2 -0
  50. package/_internal/components/date-picker-6c1b14e4.js.map +1 -0
  51. package/_internal/components/dialog-ebdb9500.js +238 -0
  52. package/_internal/components/dialog-ebdb9500.js.map +1 -0
  53. package/_internal/components/divider-116af6b9.js +50 -0
  54. package/_internal/components/divider-116af6b9.js.map +1 -0
  55. package/_internal/components/drag-handle-5215cd21.js +51 -0
  56. package/_internal/components/drag-handle-5215cd21.js.map +1 -0
  57. package/_internal/components/dropdown-0baed51b.js +147 -0
  58. package/_internal/components/dropdown-0baed51b.js.map +1 -0
  59. package/_internal/components/expansion-panel-5533a680.js +167 -0
  60. package/_internal/components/expansion-panel-5533a680.js.map +1 -0
  61. package/_internal/components/flag-8d4a7e72.js +59 -0
  62. package/_internal/components/flag-8d4a7e72.js.map +1 -0
  63. package/_internal/components/flex-box-55144e5f.js +56 -0
  64. package/_internal/components/flex-box-55144e5f.js.map +1 -0
  65. package/_internal/components/generic-block-ff0509ee.js +124 -0
  66. package/_internal/components/generic-block-ff0509ee.js.map +1 -0
  67. package/_internal/components/grid-6f1b5a41.js +104 -0
  68. package/_internal/components/grid-6f1b5a41.js.map +1 -0
  69. package/_internal/components/grid-column-f01df853.js +59 -0
  70. package/_internal/components/grid-column-f01df853.js.map +1 -0
  71. package/_internal/components/heading-89239843.js +53 -0
  72. package/_internal/components/heading-89239843.js.map +1 -0
  73. package/_internal/components/icon-b708cca4.js +102 -0
  74. package/_internal/components/icon-b708cca4.js.map +1 -0
  75. package/_internal/components/image-block-7938422d.js +110 -0
  76. package/_internal/components/image-block-7938422d.js.map +1 -0
  77. package/_internal/components/image-lightbox-58331704.js +756 -0
  78. package/_internal/components/image-lightbox-58331704.js.map +1 -0
  79. package/_internal/components/inline-list-e6f19a98.js +74 -0
  80. package/_internal/components/inline-list-e6f19a98.js.map +1 -0
  81. package/_internal/components/input-helper-64153099.js +71 -0
  82. package/_internal/components/input-helper-64153099.js.map +1 -0
  83. package/_internal/components/input-label-2feb0bb0.js +59 -0
  84. package/_internal/components/input-label-2feb0bb0.js.map +1 -0
  85. package/_internal/components/lightbox-570ad9e5.js +155 -0
  86. package/_internal/components/lightbox-570ad9e5.js.map +1 -0
  87. package/_internal/components/link-91f76477.js +72 -0
  88. package/_internal/components/link-91f76477.js.map +1 -0
  89. package/_internal/components/link-preview-fdd8d738.js +117 -0
  90. package/_internal/components/link-preview-fdd8d738.js.map +1 -0
  91. package/_internal/components/list-b08d8423.js +71 -0
  92. package/_internal/components/list-b08d8423.js.map +1 -0
  93. package/_internal/components/message-29cb9181.js +96 -0
  94. package/_internal/components/message-29cb9181.js.map +1 -0
  95. package/_internal/components/mosaic-cdb9f563.js +95 -0
  96. package/_internal/components/mosaic-cdb9f563.js.map +1 -0
  97. package/_internal/components/navigation-8b7d9bd8.js +225 -0
  98. package/_internal/components/navigation-8b7d9bd8.js.map +1 -0
  99. package/_internal/components/notification-a45fda96.js +145 -0
  100. package/_internal/components/notification-a45fda96.js.map +1 -0
  101. package/_internal/components/popover-65bfbc57.js +3 -0
  102. package/_internal/components/popover-65bfbc57.js.map +1 -0
  103. package/_internal/components/post-block-52e58dd5.js +109 -0
  104. package/_internal/components/post-block-52e58dd5.js.map +1 -0
  105. package/_internal/components/progress-f39c3fa2.js +182 -0
  106. package/_internal/components/progress-f39c3fa2.js.map +1 -0
  107. package/_internal/components/progress-tracker-512d7a08.js +305 -0
  108. package/_internal/components/progress-tracker-512d7a08.js.map +1 -0
  109. package/_internal/components/radio-button-559a4863.js +149 -0
  110. package/_internal/components/radio-button-559a4863.js.map +1 -0
  111. package/_internal/components/select-48d4fa8c.js +454 -0
  112. package/_internal/components/select-48d4fa8c.js.map +1 -0
  113. package/_internal/components/side-navigation-f9bc5b4e.js +165 -0
  114. package/_internal/components/side-navigation-f9bc5b4e.js.map +1 -0
  115. package/_internal/components/skeleton-c66516ee.js +166 -0
  116. package/_internal/components/skeleton-c66516ee.js.map +1 -0
  117. package/_internal/components/slider-efbfbc45.js +311 -0
  118. package/_internal/components/slider-efbfbc45.js.map +1 -0
  119. package/_internal/components/slideshow-dd312470.js +151 -0
  120. package/_internal/components/slideshow-dd312470.js.map +1 -0
  121. package/_internal/components/switch-769a2a04.js +122 -0
  122. package/_internal/components/switch-769a2a04.js.map +1 -0
  123. package/_internal/components/table-8617b1ba.js +294 -0
  124. package/_internal/components/table-8617b1ba.js.map +1 -0
  125. package/_internal/components/tabs-884c57b6.js +298 -0
  126. package/_internal/components/tabs-884c57b6.js.map +1 -0
  127. package/_internal/components/text-c7b1e079.js +2 -0
  128. package/_internal/components/text-c7b1e079.js.map +1 -0
  129. package/_internal/components/text-field-478acd86.js +359 -0
  130. package/_internal/components/text-field-478acd86.js.map +1 -0
  131. package/_internal/components/thumbnail-310a4c4b.js +42 -0
  132. package/_internal/components/thumbnail-310a4c4b.js.map +1 -0
  133. package/_internal/components/toolbar-a43533a2.js +61 -0
  134. package/_internal/components/toolbar-a43533a2.js.map +1 -0
  135. package/_internal/components/tooltip-2885ab2e.js +327 -0
  136. package/_internal/components/tooltip-2885ab2e.js.map +1 -0
  137. package/_internal/components/uploader-1e7f5bbb.js +153 -0
  138. package/_internal/components/uploader-1e7f5bbb.js.map +1 -0
  139. package/_internal/components/user-block-68a51ed0.js +145 -0
  140. package/_internal/components/user-block-68a51ed0.js.map +1 -0
  141. package/_internal/constants-b9e57936.js +2155 -0
  142. package/_internal/constants-b9e57936.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-15f62847.js +70 -0
  148. package/_internal/forwardRef-15f62847.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-9df37c0d.js +436 -0
  152. package/_internal/index-9df37c0d.js.map +1 -0
  153. package/_internal/index-a9c5cd69.js +117 -0
  154. package/_internal/index-a9c5cd69.js.map +1 -0
  155. package/_internal/isComponent-78df9309.js +20 -0
  156. package/_internal/isComponent-78df9309.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/{src/utils/partitionMulti.ts → _internal/partitionMulti-4daccdd5.js} +5 -9
  162. package/_internal/partitionMulti-4daccdd5.js.map +1 -0
  163. package/_internal/state-db358714.js +130 -0
  164. package/_internal/state-db358714.js.map +1 -0
  165. package/_internal/useBooleanState-2a3d237c.js +12 -0
  166. package/_internal/useBooleanState-2a3d237c.js.map +1 -0
  167. package/_internal/useCallbackOnEscape-ea4d9eb4.js +62 -0
  168. package/_internal/useCallbackOnEscape-ea4d9eb4.js.map +1 -0
  169. package/_internal/useDisableBodyScroll-36bd7352.js +219 -0
  170. package/_internal/useDisableBodyScroll-36bd7352.js.map +1 -0
  171. package/_internal/useDisableStateProps-69e16b7c.js +36 -0
  172. package/_internal/useDisableStateProps-69e16b7c.js.map +1 -0
  173. package/_internal/useFocusTrap-c3c6378b.js +112 -0
  174. package/_internal/useFocusTrap-c3c6378b.js.map +1 -0
  175. package/_internal/useId-3a1facc0.js +18 -0
  176. package/_internal/useId-3a1facc0.js.map +1 -0
  177. package/_internal/useRovingTabIndex-7daf0f24.js +77 -0
  178. package/_internal/useRovingTabIndex-7daf0f24.js.map +1 -0
  179. package/_internal/useTransitionVisibility-321fdbfa.js +50 -0
  180. package/_internal/useTransitionVisibility-321fdbfa.js.map +1 -0
  181. package/_internal/wrapChildrenIconWithSpaces-c1faaae4.js +20 -0
  182. package/_internal/wrapChildrenIconWithSpaces-c1faaae4.js.map +1 -0
  183. package/index.d.ts +42 -387
  184. package/index.js +65 -14526
  185. package/index.js.map +1 -1
  186. package/package.json +11 -21
  187. package/utils/index.d.ts +7 -7
  188. package/utils/index.js +3 -1
  189. package/utils/index.js.map +1 -1
  190. package/_internal/Falsy.d.ts +0 -7
  191. package/_internal/index.js +0 -229
  192. package/_internal/index.js.map +0 -1
  193. package/src/components/alert-dialog/AlertDialog.stories.tsx +0 -127
  194. package/src/components/alert-dialog/AlertDialog.test.tsx +0 -35
  195. package/src/components/alert-dialog/AlertDialog.tsx +0 -189
  196. package/src/components/alert-dialog/index.ts +0 -1
  197. package/src/components/autocomplete/Autocomplete.stories.tsx +0 -75
  198. package/src/components/autocomplete/Autocomplete.test.tsx +0 -101
  199. package/src/components/autocomplete/Autocomplete.tsx +0 -294
  200. package/src/components/autocomplete/AutocompleteMultiple.stories.tsx +0 -167
  201. package/src/components/autocomplete/AutocompleteMultiple.test.tsx +0 -63
  202. package/src/components/autocomplete/AutocompleteMultiple.tsx +0 -156
  203. package/src/components/autocomplete/__mockData__/index.ts +0 -39
  204. package/src/components/autocomplete/index.ts +0 -2
  205. package/src/components/avatar/Avatar.stories.tsx +0 -121
  206. package/src/components/avatar/Avatar.test.tsx +0 -34
  207. package/src/components/avatar/Avatar.tsx +0 -114
  208. package/src/components/avatar/index.ts +0 -1
  209. package/src/components/badge/Badge.stories.tsx +0 -70
  210. package/src/components/badge/Badge.test.tsx +0 -47
  211. package/src/components/badge/Badge.tsx +0 -58
  212. package/src/components/badge/BadgeWrapper.stories.tsx +0 -76
  213. package/src/components/badge/BadgeWrapper.test.tsx +0 -49
  214. package/src/components/badge/BadgeWrapper.tsx +0 -37
  215. package/src/components/badge/index.ts +0 -2
  216. package/src/components/button/Button.stories.tsx +0 -356
  217. package/src/components/button/Button.test.tsx +0 -127
  218. package/src/components/button/Button.tsx +0 -103
  219. package/src/components/button/ButtonGroup.stories.tsx +0 -54
  220. package/src/components/button/ButtonGroup.test.tsx +0 -43
  221. package/src/components/button/ButtonGroup.tsx +0 -52
  222. package/src/components/button/ButtonRoot.tsx +0 -193
  223. package/src/components/button/IconButton.stories.tsx +0 -52
  224. package/src/components/button/IconButton.test.tsx +0 -68
  225. package/src/components/button/IconButton.tsx +0 -93
  226. package/src/components/button/index.ts +0 -4
  227. package/src/components/checkbox/Checkbox.stories.tsx +0 -64
  228. package/src/components/checkbox/Checkbox.test.tsx +0 -156
  229. package/src/components/checkbox/Checkbox.tsx +0 -164
  230. package/src/components/checkbox/index.ts +0 -1
  231. package/src/components/chip/Chip.stories.tsx +0 -166
  232. package/src/components/chip/Chip.test.tsx +0 -243
  233. package/src/components/chip/Chip.tsx +0 -168
  234. package/src/components/chip/ChipGroup.stories.tsx +0 -49
  235. package/src/components/chip/ChipGroup.test.tsx +0 -39
  236. package/src/components/chip/ChipGroup.tsx +0 -60
  237. package/src/components/chip/index.ts +0 -2
  238. package/src/components/comment-block/CommentBlock.stories.tsx +0 -92
  239. package/src/components/comment-block/CommentBlock.test.tsx +0 -29
  240. package/src/components/comment-block/CommentBlock.tsx +0 -172
  241. package/src/components/comment-block/index.ts +0 -1
  242. package/src/components/date-picker/DatePicker.stories.tsx +0 -118
  243. package/src/components/date-picker/DatePicker.test.tsx +0 -36
  244. package/src/components/date-picker/DatePicker.tsx +0 -52
  245. package/src/components/date-picker/DatePickerControlled.test.tsx +0 -93
  246. package/src/components/date-picker/DatePickerControlled.tsx +0 -259
  247. package/src/components/date-picker/DatePickerField.stories.tsx +0 -100
  248. package/src/components/date-picker/DatePickerField.test.tsx +0 -72
  249. package/src/components/date-picker/DatePickerField.tsx +0 -135
  250. package/src/components/date-picker/constants.ts +0 -11
  251. package/src/components/date-picker/index.ts +0 -4
  252. package/src/components/date-picker/types.ts +0 -28
  253. package/src/components/dialog/Dialog.stories.tsx +0 -318
  254. package/src/components/dialog/Dialog.test.tsx +0 -99
  255. package/src/components/dialog/Dialog.tsx +0 -288
  256. package/src/components/dialog/index.ts +0 -1
  257. package/src/components/divider/Divider.test.tsx +0 -53
  258. package/src/components/divider/Divider.tsx +0 -52
  259. package/src/components/divider/index.ts +0 -1
  260. package/src/components/drag-handle/DragHandle.test.tsx +0 -38
  261. package/src/components/drag-handle/DragHandle.tsx +0 -53
  262. package/src/components/drag-handle/index.ts +0 -1
  263. package/src/components/dropdown/Dropdown.stories.tsx +0 -31
  264. package/src/components/dropdown/Dropdown.test.tsx +0 -66
  265. package/src/components/dropdown/Dropdown.tsx +0 -186
  266. package/src/components/dropdown/index.ts +0 -1
  267. package/src/components/expansion-panel/ExpansionPanel.stories.tsx +0 -91
  268. package/src/components/expansion-panel/ExpansionPanel.test.tsx +0 -186
  269. package/src/components/expansion-panel/ExpansionPanel.tsx +0 -195
  270. package/src/components/expansion-panel/index.ts +0 -1
  271. package/src/components/flag/Flag.stories.tsx +0 -48
  272. package/src/components/flag/Flag.test.tsx +0 -64
  273. package/src/components/flag/Flag.tsx +0 -54
  274. package/src/components/flag/index.ts +0 -1
  275. package/src/components/flex-box/FlexBox.stories.tsx +0 -158
  276. package/src/components/flex-box/FlexBox.test.tsx +0 -25
  277. package/src/components/flex-box/FlexBox.tsx +0 -100
  278. package/src/components/flex-box/index.ts +0 -1
  279. package/src/components/generic-block/GenericBlock.stories.jsx +0 -128
  280. package/src/components/generic-block/GenericBlock.test.tsx +0 -156
  281. package/src/components/generic-block/GenericBlock.tsx +0 -225
  282. package/src/components/generic-block/constants.ts +0 -9
  283. package/src/components/generic-block/index.ts +0 -2
  284. package/src/components/grid/Grid.tsx +0 -85
  285. package/src/components/grid/GridItem.tsx +0 -57
  286. package/src/components/grid/index.ts +0 -2
  287. package/src/components/grid-column/GridColumn.stories.tsx +0 -46
  288. package/src/components/grid-column/GridColumn.test.jsx +0 -58
  289. package/src/components/grid-column/GridColumn.tsx +0 -83
  290. package/src/components/grid-column/index.ts +0 -1
  291. package/src/components/heading/Heading.stories.tsx +0 -70
  292. package/src/components/heading/Heading.test.tsx +0 -84
  293. package/src/components/heading/Heading.tsx +0 -67
  294. package/src/components/heading/HeadingLevelProvider.tsx +0 -30
  295. package/src/components/heading/constants.ts +0 -16
  296. package/src/components/heading/context.tsx +0 -13
  297. package/src/components/heading/index.ts +0 -3
  298. package/src/components/heading/useHeadingLevel.tsx +0 -8
  299. package/src/components/icon/Icon.stories.tsx +0 -47
  300. package/src/components/icon/Icon.test.tsx +0 -44
  301. package/src/components/icon/Icon.tsx +0 -24
  302. package/src/components/icon/index.ts +0 -1
  303. package/src/components/image-block/ImageBlock.stories.tsx +0 -119
  304. package/src/components/image-block/ImageBlock.test.tsx +0 -59
  305. package/src/components/image-block/ImageBlock.tsx +0 -142
  306. package/src/components/image-block/ImageCaption.tsx +0 -115
  307. package/src/components/image-block/index.ts +0 -1
  308. package/src/components/image-lightbox/ImageLightbox.stories.tsx +0 -161
  309. package/src/components/image-lightbox/ImageLightbox.test.tsx +0 -252
  310. package/src/components/image-lightbox/ImageLightbox.tsx +0 -90
  311. package/src/components/image-lightbox/constants.ts +0 -11
  312. package/src/components/image-lightbox/index.ts +0 -2
  313. package/src/components/image-lightbox/internal/ImageSlide.tsx +0 -107
  314. package/src/components/image-lightbox/internal/ImageSlideshow.tsx +0 -164
  315. package/src/components/image-lightbox/internal/useAnimateScroll.ts +0 -55
  316. package/src/components/image-lightbox/internal/usePointerZoom.ts +0 -148
  317. package/src/components/image-lightbox/types.ts +0 -50
  318. package/src/components/image-lightbox/useImageLightbox.tsx +0 -141
  319. package/src/components/inline-list/InlineList.stories.tsx +0 -78
  320. package/src/components/inline-list/InlineList.test.tsx +0 -54
  321. package/src/components/inline-list/InlineList.tsx +0 -96
  322. package/src/components/inline-list/index.ts +0 -1
  323. package/src/components/input-helper/InputHelper.stories.tsx +0 -35
  324. package/src/components/input-helper/InputHelper.test.tsx +0 -57
  325. package/src/components/input-helper/InputHelper.tsx +0 -65
  326. package/src/components/input-helper/constants.ts +0 -11
  327. package/src/components/input-helper/index.ts +0 -1
  328. package/src/components/input-label/InputLabel.stories.tsx +0 -47
  329. package/src/components/input-label/InputLabel.test.tsx +0 -61
  330. package/src/components/input-label/InputLabel.tsx +0 -69
  331. package/src/components/input-label/index.ts +0 -1
  332. package/src/components/lightbox/Lightbox.stories.tsx +0 -101
  333. package/src/components/lightbox/Lightbox.test.tsx +0 -55
  334. package/src/components/lightbox/Lightbox.tsx +0 -180
  335. package/src/components/lightbox/index.ts +0 -1
  336. package/src/components/link/Link.stories.tsx +0 -196
  337. package/src/components/link/Link.test.tsx +0 -127
  338. package/src/components/link/Link.tsx +0 -119
  339. package/src/components/link/index.ts +0 -1
  340. package/src/components/link-preview/LinkPreview.stories.tsx +0 -61
  341. package/src/components/link-preview/LinkPreview.test.tsx +0 -107
  342. package/src/components/link-preview/LinkPreview.tsx +0 -160
  343. package/src/components/link-preview/index.ts +0 -1
  344. package/src/components/list/List.stories.tsx +0 -116
  345. package/src/components/list/List.test.tsx +0 -20
  346. package/src/components/list/List.tsx +0 -104
  347. package/src/components/list/ListDivider.stories.tsx +0 -12
  348. package/src/components/list/ListDivider.test.tsx +0 -24
  349. package/src/components/list/ListDivider.tsx +0 -37
  350. package/src/components/list/ListItem.stories.tsx +0 -66
  351. package/src/components/list/ListItem.test.tsx +0 -95
  352. package/src/components/list/ListItem.tsx +0 -157
  353. package/src/components/list/ListSubheader.stories.tsx +0 -11
  354. package/src/components/list/ListSubheader.test.tsx +0 -23
  355. package/src/components/list/ListSubheader.tsx +0 -44
  356. package/src/components/list/index.ts +0 -4
  357. package/src/components/list/useInteractiveList.tsx +0 -202
  358. package/src/components/message/Message.stories.tsx +0 -72
  359. package/src/components/message/Message.test.tsx +0 -77
  360. package/src/components/message/Message.tsx +0 -100
  361. package/src/components/message/index.ts +0 -1
  362. package/src/components/mosaic/Mosaic.stories.tsx +0 -89
  363. package/src/components/mosaic/Mosaic.test.tsx +0 -79
  364. package/src/components/mosaic/Mosaic.tsx +0 -98
  365. package/src/components/mosaic/index.ts +0 -1
  366. package/src/components/navigation/Navigation.stories.tsx +0 -236
  367. package/src/components/navigation/Navigation.test.tsx +0 -67
  368. package/src/components/navigation/Navigation.tsx +0 -81
  369. package/src/components/navigation/NavigationItem.test.tsx +0 -37
  370. package/src/components/navigation/NavigationItem.tsx +0 -86
  371. package/src/components/navigation/NavigationSection.test.tsx +0 -139
  372. package/src/components/navigation/NavigationSection.tsx +0 -107
  373. package/src/components/navigation/context.tsx +0 -7
  374. package/src/components/navigation/index.ts +0 -1
  375. package/src/components/notification/Notification.test.tsx +0 -95
  376. package/src/components/notification/Notification.tsx +0 -138
  377. package/src/components/notification/Notifications.stories.tsx +0 -92
  378. package/src/components/notification/constants.ts +0 -28
  379. package/src/components/notification/index.ts +0 -1
  380. package/src/components/popover/Popover.stories.tsx +0 -264
  381. package/src/components/popover/Popover.test.tsx +0 -64
  382. package/src/components/popover/Popover.tsx +0 -201
  383. package/src/components/popover/constants.ts +0 -62
  384. package/src/components/popover/index.ts +0 -3
  385. package/src/components/popover/usePopoverStyle.tsx +0 -184
  386. package/src/components/popover/useRestoreFocusOnClose.tsx +0 -47
  387. package/src/components/popover-dialog/PopoverDialog.stories.tsx +0 -64
  388. package/src/components/popover-dialog/PopoverDialog.test.tsx +0 -140
  389. package/src/components/popover-dialog/PopoverDialog.tsx +0 -76
  390. package/src/components/popover-dialog/index.tsx +0 -1
  391. package/src/components/post-block/PostBlock.test.tsx +0 -29
  392. package/src/components/post-block/PostBlock.tsx +0 -122
  393. package/src/components/post-block/index.ts +0 -1
  394. package/src/components/progress/Progress.tsx +0 -70
  395. package/src/components/progress/ProgressCircular.stories.tsx +0 -44
  396. package/src/components/progress/ProgressCircular.test.tsx +0 -48
  397. package/src/components/progress/ProgressCircular.tsx +0 -84
  398. package/src/components/progress/ProgressLinear.stories.tsx +0 -12
  399. package/src/components/progress/ProgressLinear.test.tsx +0 -32
  400. package/src/components/progress/ProgressLinear.tsx +0 -52
  401. package/src/components/progress/index.ts +0 -3
  402. package/src/components/progress-tracker/ProgressTracker.stories.tsx +0 -145
  403. package/src/components/progress-tracker/ProgressTracker.test.tsx +0 -44
  404. package/src/components/progress-tracker/ProgressTracker.tsx +0 -87
  405. package/src/components/progress-tracker/ProgressTrackerProvider.test.tsx +0 -67
  406. package/src/components/progress-tracker/ProgressTrackerProvider.tsx +0 -67
  407. package/src/components/progress-tracker/ProgressTrackerStep.test.tsx +0 -38
  408. package/src/components/progress-tracker/ProgressTrackerStep.tsx +0 -159
  409. package/src/components/progress-tracker/ProgressTrackerStepPanel.test.tsx +0 -36
  410. package/src/components/progress-tracker/ProgressTrackerStepPanel.tsx +0 -69
  411. package/src/components/progress-tracker/index.ts +0 -4
  412. package/src/components/radio-button/RadioButton.stories.tsx +0 -71
  413. package/src/components/radio-button/RadioButton.test.tsx +0 -145
  414. package/src/components/radio-button/RadioButton.tsx +0 -143
  415. package/src/components/radio-button/RadioGroup.stories.tsx +0 -39
  416. package/src/components/radio-button/RadioGroup.test.tsx +0 -31
  417. package/src/components/radio-button/RadioGroup.tsx +0 -44
  418. package/src/components/radio-button/index.ts +0 -2
  419. package/src/components/select/Select.stories.tsx +0 -385
  420. package/src/components/select/Select.test.tsx +0 -200
  421. package/src/components/select/Select.tsx +0 -199
  422. package/src/components/select/SelectMultiple.stories.tsx +0 -315
  423. package/src/components/select/SelectMultiple.test.tsx +0 -215
  424. package/src/components/select/SelectMultiple.tsx +0 -206
  425. package/src/components/select/WithSelectContext.tsx +0 -147
  426. package/src/components/select/constants.ts +0 -55
  427. package/src/components/select/index.ts +0 -2
  428. package/src/components/side-navigation/SideNavigation.stories.tsx +0 -191
  429. package/src/components/side-navigation/SideNavigation.test.tsx +0 -39
  430. package/src/components/side-navigation/SideNavigation.tsx +0 -52
  431. package/src/components/side-navigation/SideNavigationItem.stories.tsx +0 -133
  432. package/src/components/side-navigation/SideNavigationItem.test.tsx +0 -138
  433. package/src/components/side-navigation/SideNavigationItem.tsx +0 -170
  434. package/src/components/side-navigation/index.ts +0 -2
  435. package/src/components/skeleton/SkeletonCircle.stories.tsx +0 -41
  436. package/src/components/skeleton/SkeletonCircle.test.tsx +0 -29
  437. package/src/components/skeleton/SkeletonCircle.tsx +0 -54
  438. package/src/components/skeleton/SkeletonRectangle.stories.tsx +0 -82
  439. package/src/components/skeleton/SkeletonRectangle.test.tsx +0 -29
  440. package/src/components/skeleton/SkeletonRectangle.tsx +0 -90
  441. package/src/components/skeleton/SkeletonTypography.stories.tsx +0 -21
  442. package/src/components/skeleton/SkeletonTypography.test.tsx +0 -29
  443. package/src/components/skeleton/SkeletonTypography.tsx +0 -59
  444. package/src/components/skeleton/index.ts +0 -3
  445. package/src/components/slider/Slider.stories.tsx +0 -45
  446. package/src/components/slider/Slider.test.tsx +0 -31
  447. package/src/components/slider/Slider.tsx +0 -299
  448. package/src/components/slider/index.ts +0 -2
  449. package/src/components/slideshow/Slides.tsx +0 -130
  450. package/src/components/slideshow/Slideshow.stories.tsx +0 -180
  451. package/src/components/slideshow/Slideshow.test.tsx +0 -37
  452. package/src/components/slideshow/Slideshow.tsx +0 -173
  453. package/src/components/slideshow/SlideshowControls.stories.tsx +0 -102
  454. package/src/components/slideshow/SlideshowControls.tsx +0 -243
  455. package/src/components/slideshow/SlideshowItem.tsx +0 -46
  456. package/src/components/slideshow/SlideshowItemGroup.tsx +0 -60
  457. package/src/components/slideshow/constants.ts +0 -24
  458. package/src/components/slideshow/index.ts +0 -4
  459. package/src/components/slideshow/useKeyNavigate.ts +0 -28
  460. package/src/components/slideshow/usePaginationVisibleRange.ts +0 -37
  461. package/src/components/slideshow/useSlideFocusManagement.tsx +0 -92
  462. package/src/components/slideshow/useSwipeNavigate.ts +0 -18
  463. package/src/components/switch/Switch.stories.tsx +0 -49
  464. package/src/components/switch/Switch.test.tsx +0 -146
  465. package/src/components/switch/Switch.tsx +0 -145
  466. package/src/components/switch/index.ts +0 -1
  467. package/src/components/table/Table.test.tsx +0 -31
  468. package/src/components/table/Table.tsx +0 -61
  469. package/src/components/table/TableBody.test.tsx +0 -32
  470. package/src/components/table/TableBody.tsx +0 -44
  471. package/src/components/table/TableCell.test.tsx +0 -74
  472. package/src/components/table/TableCell.tsx +0 -132
  473. package/src/components/table/TableHeader.test.tsx +0 -32
  474. package/src/components/table/TableHeader.tsx +0 -50
  475. package/src/components/table/TableRow.test.tsx +0 -42
  476. package/src/components/table/TableRow.tsx +0 -73
  477. package/src/components/table/index.ts +0 -5
  478. package/src/components/tabs/Tab.test.tsx +0 -52
  479. package/src/components/tabs/Tab.tsx +0 -133
  480. package/src/components/tabs/TabList.test.tsx +0 -51
  481. package/src/components/tabs/TabList.tsx +0 -94
  482. package/src/components/tabs/TabPanel.test.tsx +0 -39
  483. package/src/components/tabs/TabPanel.tsx +0 -69
  484. package/src/components/tabs/TabProvider.test.tsx +0 -163
  485. package/src/components/tabs/TabProvider.tsx +0 -67
  486. package/src/components/tabs/Tabs.stories.tsx +0 -170
  487. package/src/components/tabs/index.ts +0 -4
  488. package/src/components/tabs/state.ts +0 -114
  489. package/src/components/tabs/test-utils.ts +0 -39
  490. package/src/components/text/Text.stories.tsx +0 -177
  491. package/src/components/text/Text.test.tsx +0 -94
  492. package/src/components/text/Text.tsx +0 -141
  493. package/src/components/text/index.ts +0 -1
  494. package/src/components/text-field/TextField.stories.tsx +0 -180
  495. package/src/components/text-field/TextField.test.tsx +0 -299
  496. package/src/components/text-field/TextField.tsx +0 -493
  497. package/src/components/text-field/index.ts +0 -1
  498. package/src/components/thumbnail/Thumbnail.stories.tsx +0 -448
  499. package/src/components/thumbnail/Thumbnail.test.tsx +0 -66
  500. package/src/components/thumbnail/Thumbnail.tsx +0 -248
  501. package/src/components/thumbnail/index.ts +0 -3
  502. package/src/components/thumbnail/types.ts +0 -48
  503. package/src/components/thumbnail/useFocusPointStyle.test.ts +0 -92
  504. package/src/components/thumbnail/useFocusPointStyle.tsx +0 -107
  505. package/src/components/thumbnail/useImageLoad.ts +0 -40
  506. package/src/components/toolbar/Toolbar.tsx +0 -68
  507. package/src/components/toolbar/index.ts +0 -1
  508. package/src/components/tooltip/Tooltip.stories.tsx +0 -117
  509. package/src/components/tooltip/Tooltip.test.tsx +0 -411
  510. package/src/components/tooltip/Tooltip.tsx +0 -165
  511. package/src/components/tooltip/constants.ts +0 -8
  512. package/src/components/tooltip/context.tsx +0 -17
  513. package/src/components/tooltip/index.ts +0 -1
  514. package/src/components/tooltip/useInjectTooltipRef.tsx +0 -55
  515. package/src/components/tooltip/useTooltipOpen.tsx +0 -143
  516. package/src/components/uploader/Uploader.stories.tsx +0 -109
  517. package/src/components/uploader/Uploader.test.tsx +0 -148
  518. package/src/components/uploader/Uploader.tsx +0 -177
  519. package/src/components/uploader/index.ts +0 -1
  520. package/src/components/user-block/UserBlock.stories.tsx +0 -135
  521. package/src/components/user-block/UserBlock.test.tsx +0 -108
  522. package/src/components/user-block/UserBlock.tsx +0 -193
  523. package/src/components/user-block/index.ts +0 -1
  524. package/src/constants.ts +0 -27
  525. package/src/hooks/useBooleanState.tsx +0 -13
  526. package/src/hooks/useCallbackOnEscape.ts +0 -34
  527. package/src/hooks/useChipGroupNavigation.tsx +0 -75
  528. package/src/hooks/useClickAway.tsx +0 -48
  529. package/src/hooks/useDisableBodyScroll.ts +0 -28
  530. package/src/hooks/useEventCallback.tsx +0 -17
  531. package/src/hooks/useFocus.tsx +0 -21
  532. package/src/hooks/useFocusTrap.ts +0 -93
  533. package/src/hooks/useFocusWithin.ts +0 -33
  534. package/src/hooks/useId.test.tsx +0 -23
  535. package/src/hooks/useId.ts +0 -15
  536. package/src/hooks/useImageSize.ts +0 -17
  537. package/src/hooks/useInfiniteScroll.tsx +0 -60
  538. package/src/hooks/useIntersectionObserver.tsx +0 -43
  539. package/src/hooks/useInterval.tsx +0 -31
  540. package/src/hooks/useKeyboardListNavigation.tsx +0 -204
  541. package/src/hooks/useListenFocus.tsx +0 -26
  542. package/src/hooks/useOverflowTooltipLabel.tsx +0 -32
  543. package/src/hooks/usePopper.ts +0 -12
  544. package/src/hooks/usePreviousValue.ts +0 -13
  545. package/src/hooks/useRovingTabIndex.tsx +0 -90
  546. package/src/hooks/useSizeOnWindowResize.ts +0 -30
  547. package/src/hooks/useSlideshowControls.ts +0 -246
  548. package/src/hooks/useStopPropagation.ts +0 -21
  549. package/src/hooks/useTransitionVisibility.ts +0 -48
  550. package/src/index.ts +0 -63
  551. package/src/stories/controls/color.ts +0 -7
  552. package/src/stories/controls/element.ts +0 -6
  553. package/src/stories/controls/focusPoint.ts +0 -1
  554. package/src/stories/controls/icons.ts +0 -126
  555. package/src/stories/controls/image.ts +0 -84
  556. package/src/stories/controls/selectArgType.ts +0 -8
  557. package/src/stories/controls/theme.ts +0 -3
  558. package/src/stories/controls/typography.ts +0 -5
  559. package/src/stories/controls/withUndefined.ts +0 -1
  560. package/src/stories/decorators/withChromaticForceScreenSize.tsx +0 -8
  561. package/src/stories/decorators/withCombinations.tsx +0 -132
  562. package/src/stories/decorators/withNestedProps.tsx +0 -23
  563. package/src/stories/decorators/withResizableBox.tsx +0 -21
  564. package/src/stories/decorators/withThemedBackground.tsx +0 -18
  565. package/src/stories/decorators/withValueOnChange.tsx +0 -18
  566. package/src/stories/decorators/withWrapper.tsx +0 -21
  567. package/src/stories/generated/Autocomplete/Demos.stories.tsx +0 -7
  568. package/src/stories/generated/Avatar/Demos.stories.tsx +0 -7
  569. package/src/stories/generated/Badge/Demos.stories.tsx +0 -9
  570. package/src/stories/generated/Button/Demos.stories.tsx +0 -11
  571. package/src/stories/generated/Checkbox/Demos.stories.tsx +0 -6
  572. package/src/stories/generated/Chip/Demos.stories.tsx +0 -11
  573. package/src/stories/generated/CommentBlock/Demos.stories.tsx +0 -8
  574. package/src/stories/generated/DatePicker/Demos.stories.tsx +0 -8
  575. package/src/stories/generated/Dialog/Demos.stories.tsx +0 -10
  576. package/src/stories/generated/Divider/Demos.stories.tsx +0 -6
  577. package/src/stories/generated/Dropdown/Demos.stories.tsx +0 -8
  578. package/src/stories/generated/ExpansionPanel/Demos.stories.tsx +0 -9
  579. package/src/stories/generated/Flag/Demos.stories.tsx +0 -6
  580. package/src/stories/generated/GenericBlock/Demos.stories.tsx +0 -8
  581. package/src/stories/generated/Heading/Demos.stories.tsx +0 -6
  582. package/src/stories/generated/Icon/Demos.stories.tsx +0 -8
  583. package/src/stories/generated/ImageBlock/Demos.stories.tsx +0 -9
  584. package/src/stories/generated/ImageLightbox/Demos.stories.tsx +0 -6
  585. package/src/stories/generated/Lightbox/Demos.stories.tsx +0 -6
  586. package/src/stories/generated/LinkPreview/Demos.stories.tsx +0 -7
  587. package/src/stories/generated/List/Demos.stories.tsx +0 -11
  588. package/src/stories/generated/Message/Demos.stories.tsx +0 -11
  589. package/src/stories/generated/Mosaic/Demos.stories.tsx +0 -10
  590. package/src/stories/generated/Notification/Demos.stories.tsx +0 -6
  591. package/src/stories/generated/Popover/Demos.stories.tsx +0 -11
  592. package/src/stories/generated/PopoverDialog/Demos.stories.tsx +0 -6
  593. package/src/stories/generated/PostBlock/Demos.stories.tsx +0 -6
  594. package/src/stories/generated/Progress/Demos.stories.tsx +0 -7
  595. package/src/stories/generated/ProgressTracker/Demos.stories.tsx +0 -9
  596. package/src/stories/generated/RadioButton/Demos.stories.tsx +0 -6
  597. package/src/stories/generated/Select/Demos.stories.tsx +0 -14
  598. package/src/stories/generated/SideNavigation/Demos.stories.tsx +0 -10
  599. package/src/stories/generated/Skeleton/Demos.stories.tsx +0 -9
  600. package/src/stories/generated/Slider/Demos.stories.tsx +0 -9
  601. package/src/stories/generated/Slideshow/Demos.stories.tsx +0 -8
  602. package/src/stories/generated/Switch/Demos.stories.tsx +0 -6
  603. package/src/stories/generated/Table/Demos.stories.tsx +0 -7
  604. package/src/stories/generated/Tabs/Demos.stories.tsx +0 -8
  605. package/src/stories/generated/TextField/Demos.stories.tsx +0 -20
  606. package/src/stories/generated/Thumbnail/Demos.stories.tsx +0 -12
  607. package/src/stories/generated/Toolbar/Demos.stories.tsx +0 -10
  608. package/src/stories/generated/Tooltip/Demos.stories.tsx +0 -8
  609. package/src/stories/generated/Uploader/Demos.stories.tsx +0 -8
  610. package/src/stories/generated/UserBlock/Demos.stories.tsx +0 -11
  611. package/src/stories/utils/CustomLink.tsx +0 -13
  612. package/src/stories/utils/concatPath.tsx +0 -17
  613. package/src/stories/utils/disableArgTypes.ts +0 -3
  614. package/src/stories/utils/initDemoShadowDOMPortal.ts +0 -10
  615. package/src/stories/utils/lorem.ts +0 -59
  616. package/src/stories/utils/theming.tsx +0 -166
  617. package/src/stories/utils/toFlattenProps.ts +0 -28
  618. package/src/stories/utils/withCategory.ts +0 -12
  619. package/src/testing/utils/ThemeSentinel.tsx +0 -11
  620. package/src/testing/utils/commonTestsSuiteRTL.tsx +0 -193
  621. package/src/testing/utils/index.ts +0 -1
  622. package/src/testing/utils/queries.ts +0 -19
  623. package/src/untypped-modules.d.ts +0 -5
  624. package/src/utils/ClickAwayProvider/ClickAwayProvider.stories.jsx +0 -70
  625. package/src/utils/ClickAwayProvider/ClickAwayProvider.tsx +0 -69
  626. package/src/utils/ClickAwayProvider/index.ts +0 -1
  627. package/src/utils/MaterialThemeSwitcher/MaterialThemeSwitcher.tsx +0 -54
  628. package/src/utils/MaterialThemeSwitcher/index.ts +0 -1
  629. package/src/utils/Portal/Portal.test.tsx +0 -32
  630. package/src/utils/Portal/Portal.tsx +0 -33
  631. package/src/utils/Portal/PortalProvider.stories.jsx +0 -23
  632. package/src/utils/Portal/PortalProvider.test.tsx +0 -73
  633. package/src/utils/Portal/PortalProvider.tsx +0 -24
  634. package/src/utils/Portal/index.tsx +0 -2
  635. package/src/utils/browser/DOM/findImage.tsx +0 -3
  636. package/src/utils/browser/DOM/startViewTransition.ts +0 -68
  637. package/src/utils/browser/focus/constants.ts +0 -7
  638. package/src/utils/browser/focus/getFirstAndLastFocusable.test.ts +0 -134
  639. package/src/utils/browser/focus/getFirstAndLastFocusable.ts +0 -21
  640. package/src/utils/browser/focus/getFocusableElements.test.ts +0 -151
  641. package/src/utils/browser/focus/getFocusableElements.ts +0 -7
  642. package/src/utils/browser/isFocusVisible.ts +0 -9
  643. package/src/utils/browser/isHoverNotSupported.test.js +0 -24
  644. package/src/utils/browser/isHoverNotSupported.ts +0 -2
  645. package/src/utils/browser/isReducedMotion.ts +0 -6
  646. package/src/utils/date/addMonthResetDay.test.ts +0 -13
  647. package/src/utils/date/addMonthResetDay.ts +0 -9
  648. package/src/utils/date/formatDayNumber.test.ts +0 -12
  649. package/src/utils/date/formatDayNumber.ts +0 -5
  650. package/src/utils/date/getFirstDayOfWeek.test.ts +0 -20
  651. package/src/utils/date/getFirstDayOfWeek.ts +0 -59
  652. package/src/utils/date/getMonthCalendar.test.ts +0 -127
  653. package/src/utils/date/getMonthCalendar.ts +0 -69
  654. package/src/utils/date/getWeekDays.test.ts +0 -48
  655. package/src/utils/date/getWeekDays.ts +0 -34
  656. package/src/utils/date/getYearDisplayName.test.ts +0 -20
  657. package/src/utils/date/getYearDisplayName.ts +0 -12
  658. package/src/utils/date/isDateValid.test.ts +0 -15
  659. package/src/utils/date/isDateValid.ts +0 -4
  660. package/src/utils/date/isSameDay.test.ts +0 -37
  661. package/src/utils/date/isSameDay.ts +0 -11
  662. package/src/utils/disabled/DisabledStateContext.tsx +0 -29
  663. package/src/utils/disabled/DisabledStateProvider.stories.tsx +0 -94
  664. package/src/utils/disabled/index.ts +0 -2
  665. package/src/utils/disabled/useDisableStateProps.test.tsx +0 -74
  666. package/src/utils/disabled/useDisableStateProps.tsx +0 -37
  667. package/src/utils/function/makeListenerTowerContext.ts +0 -32
  668. package/src/utils/index.ts +0 -7
  669. package/src/utils/locale/getCurrentLocale.ts +0 -4
  670. package/src/utils/locale/parseLocale.test.ts +0 -17
  671. package/src/utils/locale/parseLocale.ts +0 -23
  672. package/src/utils/locale/types.ts +0 -8
  673. package/src/utils/number/clamp.ts +0 -17
  674. package/src/utils/object/isEqual.test.ts +0 -25
  675. package/src/utils/object/isEqual.ts +0 -11
  676. package/src/utils/partitionMulti.test.ts +0 -27
  677. package/src/utils/react/OnBeforeUnmount.tsx +0 -20
  678. package/src/utils/react/flattenChildren.ts +0 -32
  679. package/src/utils/react/forwardRef.ts +0 -11
  680. package/src/utils/react/forwardRefPolymorphic.ts +0 -9
  681. package/src/utils/react/mergeRefs.ts +0 -33
  682. package/src/utils/react/renderButtonOrLink.tsx +0 -16
  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 -8
  694. package/src/utils/type/MaybeElementOrRef.ts +0 -6
  695. package/src/utils/type/index.ts +0 -8
  696. package/src/utils/type/isComponent.ts +0 -33
  697. package/src/utils/type/isComponentType.ts +0 -9
@@ -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
- jest.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,94 +0,0 @@
1
- import React from 'react';
2
-
3
- import {
4
- Button,
5
- Checkbox,
6
- Chip,
7
- DatePickerField,
8
- IconButton,
9
- Link,
10
- List,
11
- ListItem,
12
- RadioButton,
13
- Switch,
14
- TextField,
15
- Thumbnail,
16
- Uploader,
17
- } from '@lumx/react';
18
- import { DisabledStateProvider } from '@lumx/react/utils';
19
- import { getSelectArgType } from '@lumx/react/stories/controls/selectArgType';
20
- import { disableArgTypes } from '@lumx/react/stories/utils/disableArgTypes';
21
- import { mdiFoodApple } from '@lumx/icons';
22
- import { LANDSCAPE_IMAGES } from '@lumx/react/stories/controls/image';
23
-
24
- export default {
25
- title: 'LumX components/DisabledStateProvider',
26
- component: DisabledStateProvider,
27
- argTypes: {
28
- state: getSelectArgType(['disabled', undefined]),
29
- ...disableArgTypes(['children']),
30
- },
31
- };
32
-
33
- /**
34
- * Disabling nested children
35
- */
36
- export const Disabled = {
37
- args: {
38
- state: 'disabled',
39
- },
40
- render: ({ state }: any) => (
41
- <DisabledStateProvider state={state}>
42
- <Button>Button</Button>
43
- <Button isDisabled>Disabled Button</Button>
44
- </DisabledStateProvider>
45
- ),
46
- };
47
-
48
- /**
49
- * Testing when the context is not active
50
- */
51
- export const NotDisabled = {
52
- args: {
53
- state: undefined,
54
- },
55
- render: ({ state }: any) => (
56
- <DisabledStateProvider state={state}>
57
- <Button>Button</Button>
58
- <Button isDisabled>Disabled Button</Button>
59
- </DisabledStateProvider>
60
- ),
61
- };
62
-
63
- /**
64
- * Testing disabling children
65
- */
66
- export const AllComponents = {
67
- args: {
68
- state: 'disabled',
69
- },
70
- render: ({ state }: any) => (
71
- <DisabledStateProvider state={state}>
72
- <Button>Button</Button>
73
- <IconButton label="Icon button" icon={mdiFoodApple} />
74
- <Checkbox label="Checkbox" />
75
- <Chip onClick={() => {}}>Chip</Chip>
76
- <DatePickerField
77
- label="Date picker field"
78
- nextButtonProps={{ label: 'Next' }}
79
- previousButtonProps={{ label: 'Previous' }}
80
- value={new Date()}
81
- onChange={() => {}}
82
- />
83
- <Link href="https://example.com">Link</Link>
84
- <List>
85
- <ListItem onItemSelected={() => {}}>Clickable list item</ListItem>
86
- </List>
87
- <RadioButton label="Radio button" />
88
- <Switch>Switch</Switch>
89
- <TextField label="texfield" onChange={() => {}} value="" />
90
- <Thumbnail alt="Thumbnail" image={LANDSCAPE_IMAGES.landscape1s200} onClick={() => {}} />
91
- <Uploader label="Upload a file" fileInputProps={{ onChange: () => {} }} />
92
- </DisabledStateProvider>
93
- ),
94
- };
@@ -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 = jest.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 = jest.fn();
70
- const { element } = setup({ disabled: true, onClick });
71
- fireEvent.click(element);
72
- expect(onClick).not.toHaveBeenCalled();
73
- });
74
- });
@@ -1,37 +0,0 @@
1
- import { useDisabledStateContext } from './DisabledStateContext';
2
-
3
- type GenericProps = {
4
- disabled?: boolean;
5
- isDisabled?: boolean;
6
- 'aria-disabled'?: boolean | 'true' | 'false';
7
- onClick?: any;
8
- onChange?: any;
9
- };
10
-
11
- interface Output<TProps extends GenericProps> {
12
- /** Is disabled or aria-disabled */
13
- isAnyDisabled?: boolean;
14
- disabledStateProps: { disabled?: boolean; 'aria-disabled'?: boolean };
15
- otherProps: TProps & { disabled: never; 'aria-disabled': never; isDisabled: never };
16
- }
17
-
18
- /**
19
- * Resolve disabled state from props.
20
- * (handles `disabled`, `isDisabled` and `aria-disabled`)
21
- *
22
- * @params component props
23
- */
24
- export function useDisableStateProps<TProps extends GenericProps>(props: TProps): Output<TProps> {
25
- const { disabled, isDisabled = disabled, 'aria-disabled': ariaDisabled, onClick, onChange, ...otherProps } = props;
26
- const disabledStateContext = useDisabledStateContext();
27
- const disabledStateProps = {
28
- disabled: disabledStateContext?.state === 'disabled' || isDisabled,
29
- 'aria-disabled': ariaDisabled === true || ariaDisabled === 'true',
30
- };
31
- const isAnyDisabled = disabledStateProps['aria-disabled'] || disabledStateProps.disabled;
32
- if (!isAnyDisabled) {
33
- (otherProps as any).onClick = onClick;
34
- (otherProps as any).onChange = onChange;
35
- }
36
- return { disabledStateProps, otherProps: otherProps as Output<TProps>['otherProps'], isAnyDisabled };
37
- }
@@ -1,32 +0,0 @@
1
- import last from 'lodash/last';
2
- import pull from 'lodash/pull';
3
-
4
- export type Listener = { enable(): void; disable(): void };
5
-
6
- /**
7
- * Keep track of listeners, only the last registered listener gets activated at any point (previously registered
8
- * listener are disabled).
9
- * When a listener gets unregistered, the previously registered listener gets enabled again.
10
- */
11
- export function makeListenerTowerContext() {
12
- const LISTENERS: Listener[] = [];
13
-
14
- return {
15
- register(listener: Listener) {
16
- // Disable previous listener.
17
- last(LISTENERS)?.disable();
18
- // Keep track of current listener.
19
- LISTENERS.push(listener);
20
- // Enable current listener.
21
- listener.enable();
22
- },
23
- unregister(listener: Listener) {
24
- // Disable current listener.
25
- listener.disable();
26
- // Remove current listener.
27
- pull(LISTENERS, listener);
28
- // Enable previous listener.
29
- last(LISTENERS)?.enable();
30
- },
31
- };
32
- }
@@ -1,7 +0,0 @@
1
- /**
2
- * WARNING: All modules exported here are exposed to NPM in '@lumx/react/utils'.
3
- */
4
-
5
- export { ClickAwayProvider } from './ClickAwayProvider';
6
- export { Portal, type PortalProps, type PortalInit, PortalProvider, type PortalProviderProps } from './Portal';
7
- export { DisabledStateProvider, useDisabledStateContext } from './disabled';