@lumx/react 3.21.1 → 3.21.2-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (528) hide show
  1. package/CONTRIBUTING.md +1 -5
  2. package/README.md +0 -2
  3. package/_internal/{index.js → ClSM3-wl.js} +24 -101
  4. package/_internal/ClSM3-wl.js.map +1 -0
  5. package/index.d.ts +42 -385
  6. package/index.js +4455 -5351
  7. package/index.js.map +1 -1
  8. package/package.json +14 -29
  9. package/utils/index.d.ts +10 -9
  10. package/utils/index.js +1 -1
  11. package/_internal/Falsy.d.ts +0 -7
  12. package/_internal/index.js.map +0 -1
  13. package/src/components/alert-dialog/AlertDialog.stories.tsx +0 -127
  14. package/src/components/alert-dialog/AlertDialog.test.tsx +0 -36
  15. package/src/components/alert-dialog/AlertDialog.tsx +0 -189
  16. package/src/components/alert-dialog/index.ts +0 -1
  17. package/src/components/autocomplete/Autocomplete.stories.tsx +0 -75
  18. package/src/components/autocomplete/Autocomplete.test.tsx +0 -101
  19. package/src/components/autocomplete/Autocomplete.tsx +0 -294
  20. package/src/components/autocomplete/AutocompleteMultiple.stories.tsx +0 -167
  21. package/src/components/autocomplete/AutocompleteMultiple.test.tsx +0 -63
  22. package/src/components/autocomplete/AutocompleteMultiple.tsx +0 -156
  23. package/src/components/autocomplete/__mockData__/index.ts +0 -39
  24. package/src/components/autocomplete/index.ts +0 -2
  25. package/src/components/avatar/Avatar.stories.tsx +0 -121
  26. package/src/components/avatar/Avatar.test.tsx +0 -34
  27. package/src/components/avatar/Avatar.tsx +0 -114
  28. package/src/components/avatar/index.ts +0 -1
  29. package/src/components/badge/Badge.stories.tsx +0 -70
  30. package/src/components/badge/Badge.test.tsx +0 -47
  31. package/src/components/badge/Badge.tsx +0 -58
  32. package/src/components/badge/BadgeWrapper.stories.tsx +0 -76
  33. package/src/components/badge/BadgeWrapper.test.tsx +0 -49
  34. package/src/components/badge/BadgeWrapper.tsx +0 -37
  35. package/src/components/badge/index.ts +0 -2
  36. package/src/components/button/Button.stories.tsx +0 -356
  37. package/src/components/button/Button.test.tsx +0 -127
  38. package/src/components/button/Button.tsx +0 -103
  39. package/src/components/button/ButtonGroup.stories.tsx +0 -54
  40. package/src/components/button/ButtonGroup.test.tsx +0 -43
  41. package/src/components/button/ButtonGroup.tsx +0 -52
  42. package/src/components/button/ButtonRoot.tsx +0 -163
  43. package/src/components/button/IconButton.stories.tsx +0 -52
  44. package/src/components/button/IconButton.test.tsx +0 -68
  45. package/src/components/button/IconButton.tsx +0 -93
  46. package/src/components/button/index.ts +0 -4
  47. package/src/components/checkbox/Checkbox.stories.tsx +0 -64
  48. package/src/components/checkbox/Checkbox.test.tsx +0 -156
  49. package/src/components/checkbox/Checkbox.tsx +0 -164
  50. package/src/components/checkbox/index.ts +0 -1
  51. package/src/components/chip/Chip.stories.tsx +0 -166
  52. package/src/components/chip/Chip.test.tsx +0 -245
  53. package/src/components/chip/Chip.tsx +0 -168
  54. package/src/components/chip/ChipGroup.stories.tsx +0 -49
  55. package/src/components/chip/ChipGroup.test.tsx +0 -39
  56. package/src/components/chip/ChipGroup.tsx +0 -60
  57. package/src/components/chip/index.ts +0 -2
  58. package/src/components/comment-block/CommentBlock.stories.tsx +0 -92
  59. package/src/components/comment-block/CommentBlock.test.tsx +0 -29
  60. package/src/components/comment-block/CommentBlock.tsx +0 -172
  61. package/src/components/comment-block/index.ts +0 -1
  62. package/src/components/date-picker/DatePicker.stories.tsx +0 -118
  63. package/src/components/date-picker/DatePicker.test.tsx +0 -36
  64. package/src/components/date-picker/DatePicker.tsx +0 -52
  65. package/src/components/date-picker/DatePickerControlled.test.tsx +0 -93
  66. package/src/components/date-picker/DatePickerControlled.tsx +0 -259
  67. package/src/components/date-picker/DatePickerField.stories.tsx +0 -100
  68. package/src/components/date-picker/DatePickerField.test.tsx +0 -72
  69. package/src/components/date-picker/DatePickerField.tsx +0 -135
  70. package/src/components/date-picker/constants.ts +0 -11
  71. package/src/components/date-picker/index.ts +0 -4
  72. package/src/components/date-picker/types.ts +0 -28
  73. package/src/components/dialog/Dialog.stories.tsx +0 -318
  74. package/src/components/dialog/Dialog.test.tsx +0 -99
  75. package/src/components/dialog/Dialog.tsx +0 -288
  76. package/src/components/dialog/index.ts +0 -1
  77. package/src/components/divider/Divider.test.tsx +0 -53
  78. package/src/components/divider/Divider.tsx +0 -52
  79. package/src/components/divider/index.ts +0 -1
  80. package/src/components/drag-handle/DragHandle.test.tsx +0 -38
  81. package/src/components/drag-handle/DragHandle.tsx +0 -53
  82. package/src/components/drag-handle/index.ts +0 -1
  83. package/src/components/dropdown/Dropdown.stories.tsx +0 -31
  84. package/src/components/dropdown/Dropdown.test.tsx +0 -66
  85. package/src/components/dropdown/Dropdown.tsx +0 -186
  86. package/src/components/dropdown/index.ts +0 -1
  87. package/src/components/expansion-panel/ExpansionPanel.stories.tsx +0 -91
  88. package/src/components/expansion-panel/ExpansionPanel.test.tsx +0 -187
  89. package/src/components/expansion-panel/ExpansionPanel.tsx +0 -195
  90. package/src/components/expansion-panel/index.ts +0 -1
  91. package/src/components/flag/Flag.stories.tsx +0 -48
  92. package/src/components/flag/Flag.test.tsx +0 -64
  93. package/src/components/flag/Flag.tsx +0 -54
  94. package/src/components/flag/index.ts +0 -1
  95. package/src/components/flex-box/FlexBox.stories.tsx +0 -158
  96. package/src/components/flex-box/FlexBox.test.tsx +0 -25
  97. package/src/components/flex-box/FlexBox.tsx +0 -100
  98. package/src/components/flex-box/index.ts +0 -1
  99. package/src/components/generic-block/GenericBlock.stories.jsx +0 -128
  100. package/src/components/generic-block/GenericBlock.test.tsx +0 -156
  101. package/src/components/generic-block/GenericBlock.tsx +0 -225
  102. package/src/components/generic-block/constants.ts +0 -9
  103. package/src/components/generic-block/index.ts +0 -2
  104. package/src/components/grid/Grid.tsx +0 -85
  105. package/src/components/grid/GridItem.tsx +0 -57
  106. package/src/components/grid/index.ts +0 -2
  107. package/src/components/grid-column/GridColumn.stories.tsx +0 -46
  108. package/src/components/grid-column/GridColumn.test.jsx +0 -58
  109. package/src/components/grid-column/GridColumn.tsx +0 -83
  110. package/src/components/grid-column/index.ts +0 -1
  111. package/src/components/heading/Heading.stories.tsx +0 -70
  112. package/src/components/heading/Heading.test.tsx +0 -84
  113. package/src/components/heading/Heading.tsx +0 -67
  114. package/src/components/heading/HeadingLevelProvider.tsx +0 -30
  115. package/src/components/heading/constants.ts +0 -16
  116. package/src/components/heading/context.tsx +0 -13
  117. package/src/components/heading/index.ts +0 -3
  118. package/src/components/heading/useHeadingLevel.tsx +0 -8
  119. package/src/components/icon/Icon.stories.tsx +0 -73
  120. package/src/components/icon/Icon.test.tsx +0 -127
  121. package/src/components/icon/Icon.tsx +0 -135
  122. package/src/components/icon/index.ts +0 -1
  123. package/src/components/image-block/ImageBlock.stories.tsx +0 -119
  124. package/src/components/image-block/ImageBlock.test.tsx +0 -59
  125. package/src/components/image-block/ImageBlock.tsx +0 -142
  126. package/src/components/image-block/ImageCaption.tsx +0 -115
  127. package/src/components/image-block/index.ts +0 -1
  128. package/src/components/image-lightbox/ImageLightbox.stories.tsx +0 -161
  129. package/src/components/image-lightbox/ImageLightbox.test.tsx +0 -256
  130. package/src/components/image-lightbox/ImageLightbox.tsx +0 -90
  131. package/src/components/image-lightbox/constants.ts +0 -11
  132. package/src/components/image-lightbox/index.ts +0 -2
  133. package/src/components/image-lightbox/internal/ImageSlide.tsx +0 -107
  134. package/src/components/image-lightbox/internal/ImageSlideshow.tsx +0 -164
  135. package/src/components/image-lightbox/internal/useAnimateScroll.ts +0 -55
  136. package/src/components/image-lightbox/internal/usePointerZoom.ts +0 -148
  137. package/src/components/image-lightbox/types.ts +0 -50
  138. package/src/components/image-lightbox/useImageLightbox.tsx +0 -141
  139. package/src/components/inline-list/InlineList.stories.tsx +0 -78
  140. package/src/components/inline-list/InlineList.test.tsx +0 -54
  141. package/src/components/inline-list/InlineList.tsx +0 -96
  142. package/src/components/inline-list/index.ts +0 -1
  143. package/src/components/input-helper/InputHelper.stories.tsx +0 -35
  144. package/src/components/input-helper/InputHelper.test.tsx +0 -57
  145. package/src/components/input-helper/InputHelper.tsx +0 -65
  146. package/src/components/input-helper/constants.ts +0 -11
  147. package/src/components/input-helper/index.ts +0 -1
  148. package/src/components/input-label/InputLabel.stories.tsx +0 -47
  149. package/src/components/input-label/InputLabel.test.tsx +0 -61
  150. package/src/components/input-label/InputLabel.tsx +0 -69
  151. package/src/components/input-label/index.ts +0 -1
  152. package/src/components/lightbox/Lightbox.stories.tsx +0 -101
  153. package/src/components/lightbox/Lightbox.test.tsx +0 -55
  154. package/src/components/lightbox/Lightbox.tsx +0 -180
  155. package/src/components/lightbox/index.ts +0 -1
  156. package/src/components/link/Link.stories.tsx +0 -196
  157. package/src/components/link/Link.test.tsx +0 -129
  158. package/src/components/link/Link.tsx +0 -108
  159. package/src/components/link/index.ts +0 -1
  160. package/src/components/link-preview/LinkPreview.stories.tsx +0 -61
  161. package/src/components/link-preview/LinkPreview.test.tsx +0 -107
  162. package/src/components/link-preview/LinkPreview.tsx +0 -160
  163. package/src/components/link-preview/index.ts +0 -1
  164. package/src/components/list/List.stories.tsx +0 -116
  165. package/src/components/list/List.test.tsx +0 -20
  166. package/src/components/list/List.tsx +0 -104
  167. package/src/components/list/ListDivider.stories.tsx +0 -12
  168. package/src/components/list/ListDivider.test.tsx +0 -24
  169. package/src/components/list/ListDivider.tsx +0 -37
  170. package/src/components/list/ListItem.stories.tsx +0 -66
  171. package/src/components/list/ListItem.test.tsx +0 -95
  172. package/src/components/list/ListItem.tsx +0 -157
  173. package/src/components/list/ListSubheader.stories.tsx +0 -11
  174. package/src/components/list/ListSubheader.test.tsx +0 -23
  175. package/src/components/list/ListSubheader.tsx +0 -44
  176. package/src/components/list/index.ts +0 -4
  177. package/src/components/list/useInteractiveList.tsx +0 -202
  178. package/src/components/message/Message.stories.tsx +0 -72
  179. package/src/components/message/Message.test.tsx +0 -77
  180. package/src/components/message/Message.tsx +0 -100
  181. package/src/components/message/index.ts +0 -1
  182. package/src/components/mosaic/Mosaic.stories.tsx +0 -89
  183. package/src/components/mosaic/Mosaic.test.tsx +0 -79
  184. package/src/components/mosaic/Mosaic.tsx +0 -98
  185. package/src/components/mosaic/index.ts +0 -1
  186. package/src/components/navigation/Navigation.stories.tsx +0 -236
  187. package/src/components/navigation/Navigation.test.tsx +0 -67
  188. package/src/components/navigation/Navigation.tsx +0 -81
  189. package/src/components/navigation/NavigationItem.test.tsx +0 -37
  190. package/src/components/navigation/NavigationItem.tsx +0 -82
  191. package/src/components/navigation/NavigationSection.test.tsx +0 -139
  192. package/src/components/navigation/NavigationSection.tsx +0 -108
  193. package/src/components/navigation/context.tsx +0 -7
  194. package/src/components/navigation/index.ts +0 -1
  195. package/src/components/notification/Notification.test.tsx +0 -96
  196. package/src/components/notification/Notification.tsx +0 -138
  197. package/src/components/notification/Notifications.stories.tsx +0 -92
  198. package/src/components/notification/constants.ts +0 -28
  199. package/src/components/notification/index.ts +0 -1
  200. package/src/components/popover/Popover.stories.tsx +0 -264
  201. package/src/components/popover/Popover.test.tsx +0 -64
  202. package/src/components/popover/Popover.tsx +0 -201
  203. package/src/components/popover/constants.ts +0 -62
  204. package/src/components/popover/index.ts +0 -3
  205. package/src/components/popover/usePopoverStyle.tsx +0 -184
  206. package/src/components/popover/useRestoreFocusOnClose.tsx +0 -47
  207. package/src/components/popover-dialog/PopoverDialog.stories.tsx +0 -64
  208. package/src/components/popover-dialog/PopoverDialog.test.tsx +0 -140
  209. package/src/components/popover-dialog/PopoverDialog.tsx +0 -76
  210. package/src/components/popover-dialog/index.tsx +0 -1
  211. package/src/components/post-block/PostBlock.test.tsx +0 -29
  212. package/src/components/post-block/PostBlock.tsx +0 -122
  213. package/src/components/post-block/index.ts +0 -1
  214. package/src/components/progress/Progress.tsx +0 -70
  215. package/src/components/progress/ProgressCircular.stories.tsx +0 -44
  216. package/src/components/progress/ProgressCircular.test.tsx +0 -48
  217. package/src/components/progress/ProgressCircular.tsx +0 -84
  218. package/src/components/progress/ProgressLinear.stories.tsx +0 -12
  219. package/src/components/progress/ProgressLinear.test.tsx +0 -32
  220. package/src/components/progress/ProgressLinear.tsx +0 -52
  221. package/src/components/progress/index.ts +0 -3
  222. package/src/components/progress-tracker/ProgressTracker.stories.tsx +0 -145
  223. package/src/components/progress-tracker/ProgressTracker.test.tsx +0 -44
  224. package/src/components/progress-tracker/ProgressTracker.tsx +0 -87
  225. package/src/components/progress-tracker/ProgressTrackerProvider.test.tsx +0 -67
  226. package/src/components/progress-tracker/ProgressTrackerProvider.tsx +0 -67
  227. package/src/components/progress-tracker/ProgressTrackerStep.test.tsx +0 -38
  228. package/src/components/progress-tracker/ProgressTrackerStep.tsx +0 -159
  229. package/src/components/progress-tracker/ProgressTrackerStepPanel.test.tsx +0 -36
  230. package/src/components/progress-tracker/ProgressTrackerStepPanel.tsx +0 -69
  231. package/src/components/progress-tracker/index.ts +0 -4
  232. package/src/components/radio-button/RadioButton.stories.tsx +0 -71
  233. package/src/components/radio-button/RadioButton.test.tsx +0 -145
  234. package/src/components/radio-button/RadioButton.tsx +0 -143
  235. package/src/components/radio-button/RadioGroup.stories.tsx +0 -39
  236. package/src/components/radio-button/RadioGroup.test.tsx +0 -31
  237. package/src/components/radio-button/RadioGroup.tsx +0 -44
  238. package/src/components/radio-button/index.ts +0 -2
  239. package/src/components/select/Select.stories.tsx +0 -385
  240. package/src/components/select/Select.test.tsx +0 -201
  241. package/src/components/select/Select.tsx +0 -199
  242. package/src/components/select/SelectMultiple.stories.tsx +0 -315
  243. package/src/components/select/SelectMultiple.test.tsx +0 -215
  244. package/src/components/select/SelectMultiple.tsx +0 -206
  245. package/src/components/select/WithSelectContext.tsx +0 -147
  246. package/src/components/select/constants.ts +0 -55
  247. package/src/components/select/index.ts +0 -2
  248. package/src/components/side-navigation/SideNavigation.stories.tsx +0 -191
  249. package/src/components/side-navigation/SideNavigation.test.tsx +0 -39
  250. package/src/components/side-navigation/SideNavigation.tsx +0 -52
  251. package/src/components/side-navigation/SideNavigationItem.stories.tsx +0 -133
  252. package/src/components/side-navigation/SideNavigationItem.test.tsx +0 -138
  253. package/src/components/side-navigation/SideNavigationItem.tsx +0 -165
  254. package/src/components/side-navigation/index.ts +0 -2
  255. package/src/components/skeleton/SkeletonCircle.stories.tsx +0 -41
  256. package/src/components/skeleton/SkeletonCircle.test.tsx +0 -29
  257. package/src/components/skeleton/SkeletonCircle.tsx +0 -54
  258. package/src/components/skeleton/SkeletonRectangle.stories.tsx +0 -82
  259. package/src/components/skeleton/SkeletonRectangle.test.tsx +0 -29
  260. package/src/components/skeleton/SkeletonRectangle.tsx +0 -90
  261. package/src/components/skeleton/SkeletonTypography.stories.tsx +0 -21
  262. package/src/components/skeleton/SkeletonTypography.test.tsx +0 -29
  263. package/src/components/skeleton/SkeletonTypography.tsx +0 -59
  264. package/src/components/skeleton/index.ts +0 -3
  265. package/src/components/slider/Slider.stories.tsx +0 -45
  266. package/src/components/slider/Slider.test.tsx +0 -31
  267. package/src/components/slider/Slider.tsx +0 -299
  268. package/src/components/slider/index.ts +0 -2
  269. package/src/components/slideshow/Slides.tsx +0 -130
  270. package/src/components/slideshow/Slideshow.stories.tsx +0 -180
  271. package/src/components/slideshow/Slideshow.test.tsx +0 -37
  272. package/src/components/slideshow/Slideshow.tsx +0 -173
  273. package/src/components/slideshow/SlideshowControls.stories.tsx +0 -102
  274. package/src/components/slideshow/SlideshowControls.tsx +0 -243
  275. package/src/components/slideshow/SlideshowItem.tsx +0 -46
  276. package/src/components/slideshow/SlideshowItemGroup.tsx +0 -60
  277. package/src/components/slideshow/constants.ts +0 -24
  278. package/src/components/slideshow/index.ts +0 -4
  279. package/src/components/slideshow/useKeyNavigate.ts +0 -28
  280. package/src/components/slideshow/usePaginationVisibleRange.ts +0 -37
  281. package/src/components/slideshow/useSlideFocusManagement.tsx +0 -92
  282. package/src/components/slideshow/useSwipeNavigate.ts +0 -18
  283. package/src/components/switch/Switch.stories.tsx +0 -49
  284. package/src/components/switch/Switch.test.tsx +0 -146
  285. package/src/components/switch/Switch.tsx +0 -145
  286. package/src/components/switch/index.ts +0 -1
  287. package/src/components/table/Table.test.tsx +0 -31
  288. package/src/components/table/Table.tsx +0 -61
  289. package/src/components/table/TableBody.test.tsx +0 -32
  290. package/src/components/table/TableBody.tsx +0 -44
  291. package/src/components/table/TableCell.test.tsx +0 -74
  292. package/src/components/table/TableCell.tsx +0 -132
  293. package/src/components/table/TableHeader.test.tsx +0 -32
  294. package/src/components/table/TableHeader.tsx +0 -50
  295. package/src/components/table/TableRow.test.tsx +0 -42
  296. package/src/components/table/TableRow.tsx +0 -73
  297. package/src/components/table/index.ts +0 -5
  298. package/src/components/tabs/Tab.test.tsx +0 -52
  299. package/src/components/tabs/Tab.tsx +0 -133
  300. package/src/components/tabs/TabList.test.tsx +0 -51
  301. package/src/components/tabs/TabList.tsx +0 -94
  302. package/src/components/tabs/TabPanel.test.tsx +0 -39
  303. package/src/components/tabs/TabPanel.tsx +0 -69
  304. package/src/components/tabs/TabProvider.test.tsx +0 -163
  305. package/src/components/tabs/TabProvider.tsx +0 -67
  306. package/src/components/tabs/Tabs.stories.tsx +0 -170
  307. package/src/components/tabs/index.ts +0 -4
  308. package/src/components/tabs/state.ts +0 -114
  309. package/src/components/tabs/test-utils.ts +0 -39
  310. package/src/components/text/Text.stories.tsx +0 -177
  311. package/src/components/text/Text.test.tsx +0 -94
  312. package/src/components/text/Text.tsx +0 -141
  313. package/src/components/text/index.ts +0 -1
  314. package/src/components/text-field/RawInputText.stories.tsx +0 -18
  315. package/src/components/text-field/RawInputText.test.tsx +0 -59
  316. package/src/components/text-field/RawInputText.tsx +0 -69
  317. package/src/components/text-field/RawInputTextarea.stories.tsx +0 -22
  318. package/src/components/text-field/RawInputTextarea.test.tsx +0 -64
  319. package/src/components/text-field/RawInputTextarea.tsx +0 -74
  320. package/src/components/text-field/TextField.stories.tsx +0 -180
  321. package/src/components/text-field/TextField.test.tsx +0 -307
  322. package/src/components/text-field/TextField.tsx +0 -323
  323. package/src/components/text-field/constants.ts +0 -16
  324. package/src/components/text-field/index.ts +0 -3
  325. package/src/components/text-field/useFitRowsToContent.ts +0 -42
  326. package/src/components/thumbnail/Thumbnail.stories.tsx +0 -448
  327. package/src/components/thumbnail/Thumbnail.test.tsx +0 -90
  328. package/src/components/thumbnail/Thumbnail.tsx +0 -248
  329. package/src/components/thumbnail/index.ts +0 -3
  330. package/src/components/thumbnail/types.ts +0 -48
  331. package/src/components/thumbnail/useFocusPointStyle.test.ts +0 -92
  332. package/src/components/thumbnail/useFocusPointStyle.tsx +0 -107
  333. package/src/components/thumbnail/useImageLoad.ts +0 -40
  334. package/src/components/toolbar/Toolbar.tsx +0 -68
  335. package/src/components/toolbar/index.ts +0 -1
  336. package/src/components/tooltip/Tooltip.stories.tsx +0 -117
  337. package/src/components/tooltip/Tooltip.test.tsx +0 -417
  338. package/src/components/tooltip/Tooltip.tsx +0 -165
  339. package/src/components/tooltip/constants.ts +0 -8
  340. package/src/components/tooltip/context.tsx +0 -17
  341. package/src/components/tooltip/index.ts +0 -1
  342. package/src/components/tooltip/useInjectTooltipRef.tsx +0 -55
  343. package/src/components/tooltip/useTooltipOpen.tsx +0 -143
  344. package/src/components/uploader/Uploader.stories.tsx +0 -109
  345. package/src/components/uploader/Uploader.test.tsx +0 -148
  346. package/src/components/uploader/Uploader.tsx +0 -177
  347. package/src/components/uploader/index.ts +0 -1
  348. package/src/components/user-block/UserBlock.stories.tsx +0 -135
  349. package/src/components/user-block/UserBlock.test.tsx +0 -108
  350. package/src/components/user-block/UserBlock.tsx +0 -193
  351. package/src/components/user-block/index.ts +0 -1
  352. package/src/constants.ts +0 -27
  353. package/src/hooks/useBooleanState.tsx +0 -13
  354. package/src/hooks/useCallbackOnEscape.ts +0 -34
  355. package/src/hooks/useChipGroupNavigation.tsx +0 -75
  356. package/src/hooks/useClickAway.tsx +0 -48
  357. package/src/hooks/useDisableBodyScroll.ts +0 -28
  358. package/src/hooks/useEventCallback.tsx +0 -17
  359. package/src/hooks/useFocus.tsx +0 -21
  360. package/src/hooks/useFocusTrap.ts +0 -93
  361. package/src/hooks/useFocusWithin.ts +0 -33
  362. package/src/hooks/useId.test.tsx +0 -23
  363. package/src/hooks/useId.ts +0 -15
  364. package/src/hooks/useImageSize.ts +0 -17
  365. package/src/hooks/useInfiniteScroll.tsx +0 -60
  366. package/src/hooks/useIntersectionObserver.tsx +0 -43
  367. package/src/hooks/useInterval.tsx +0 -31
  368. package/src/hooks/useKeyboardListNavigation.tsx +0 -204
  369. package/src/hooks/useListenFocus.tsx +0 -26
  370. package/src/hooks/useOverflowTooltipLabel.tsx +0 -32
  371. package/src/hooks/usePopper.ts +0 -12
  372. package/src/hooks/usePreviousValue.ts +0 -13
  373. package/src/hooks/useRovingTabIndex.tsx +0 -90
  374. package/src/hooks/useSizeOnWindowResize.ts +0 -30
  375. package/src/hooks/useSlideshowControls.ts +0 -246
  376. package/src/hooks/useStopPropagation.ts +0 -21
  377. package/src/hooks/useTransitionVisibility.ts +0 -48
  378. package/src/index.ts +0 -63
  379. package/src/stories/controls/color.ts +0 -7
  380. package/src/stories/controls/element.ts +0 -6
  381. package/src/stories/controls/focusPoint.ts +0 -1
  382. package/src/stories/controls/icons.ts +0 -126
  383. package/src/stories/controls/image.ts +0 -84
  384. package/src/stories/controls/selectArgType.ts +0 -8
  385. package/src/stories/controls/theme.ts +0 -3
  386. package/src/stories/controls/typography.ts +0 -5
  387. package/src/stories/controls/withUndefined.ts +0 -1
  388. package/src/stories/decorators/withChromaticForceScreenSize.tsx +0 -8
  389. package/src/stories/decorators/withCombinations.tsx +0 -132
  390. package/src/stories/decorators/withNestedProps.tsx +0 -23
  391. package/src/stories/decorators/withResizableBox.tsx +0 -21
  392. package/src/stories/decorators/withThemedBackground.tsx +0 -18
  393. package/src/stories/decorators/withValueOnChange.tsx +0 -18
  394. package/src/stories/decorators/withWrapper.tsx +0 -21
  395. package/src/stories/generated/Autocomplete/Demos.stories.tsx +0 -7
  396. package/src/stories/generated/Avatar/Demos.stories.tsx +0 -7
  397. package/src/stories/generated/Badge/Demos.stories.tsx +0 -9
  398. package/src/stories/generated/Button/Demos.stories.tsx +0 -11
  399. package/src/stories/generated/Checkbox/Demos.stories.tsx +0 -6
  400. package/src/stories/generated/Chip/Demos.stories.tsx +0 -11
  401. package/src/stories/generated/CommentBlock/Demos.stories.tsx +0 -8
  402. package/src/stories/generated/DatePicker/Demos.stories.tsx +0 -8
  403. package/src/stories/generated/Dialog/Demos.stories.tsx +0 -10
  404. package/src/stories/generated/Divider/Demos.stories.tsx +0 -6
  405. package/src/stories/generated/Dropdown/Demos.stories.tsx +0 -8
  406. package/src/stories/generated/ExpansionPanel/Demos.stories.tsx +0 -9
  407. package/src/stories/generated/Flag/Demos.stories.tsx +0 -6
  408. package/src/stories/generated/GenericBlock/Demos.stories.tsx +0 -8
  409. package/src/stories/generated/Heading/Demos.stories.tsx +0 -6
  410. package/src/stories/generated/Icon/Demos.stories.tsx +0 -8
  411. package/src/stories/generated/ImageBlock/Demos.stories.tsx +0 -9
  412. package/src/stories/generated/ImageLightbox/Demos.stories.tsx +0 -6
  413. package/src/stories/generated/Lightbox/Demos.stories.tsx +0 -6
  414. package/src/stories/generated/LinkPreview/Demos.stories.tsx +0 -7
  415. package/src/stories/generated/List/Demos.stories.tsx +0 -11
  416. package/src/stories/generated/Message/Demos.stories.tsx +0 -11
  417. package/src/stories/generated/Mosaic/Demos.stories.tsx +0 -10
  418. package/src/stories/generated/Notification/Demos.stories.tsx +0 -6
  419. package/src/stories/generated/Popover/Demos.stories.tsx +0 -11
  420. package/src/stories/generated/PopoverDialog/Demos.stories.tsx +0 -6
  421. package/src/stories/generated/PostBlock/Demos.stories.tsx +0 -6
  422. package/src/stories/generated/Progress/Demos.stories.tsx +0 -7
  423. package/src/stories/generated/ProgressTracker/Demos.stories.tsx +0 -9
  424. package/src/stories/generated/RadioButton/Demos.stories.tsx +0 -6
  425. package/src/stories/generated/Select/Demos.stories.tsx +0 -14
  426. package/src/stories/generated/SideNavigation/Demos.stories.tsx +0 -10
  427. package/src/stories/generated/Skeleton/Demos.stories.tsx +0 -9
  428. package/src/stories/generated/Slider/Demos.stories.tsx +0 -9
  429. package/src/stories/generated/Slideshow/Demos.stories.tsx +0 -8
  430. package/src/stories/generated/Switch/Demos.stories.tsx +0 -6
  431. package/src/stories/generated/Table/Demos.stories.tsx +0 -7
  432. package/src/stories/generated/Tabs/Demos.stories.tsx +0 -8
  433. package/src/stories/generated/TextField/Demos.stories.tsx +0 -20
  434. package/src/stories/generated/Thumbnail/Demos.stories.tsx +0 -12
  435. package/src/stories/generated/Toolbar/Demos.stories.tsx +0 -10
  436. package/src/stories/generated/Tooltip/Demos.stories.tsx +0 -8
  437. package/src/stories/generated/Uploader/Demos.stories.tsx +0 -8
  438. package/src/stories/generated/UserBlock/Demos.stories.tsx +0 -11
  439. package/src/stories/utils/CustomLink.tsx +0 -13
  440. package/src/stories/utils/concatPath.tsx +0 -17
  441. package/src/stories/utils/disableArgTypes.ts +0 -3
  442. package/src/stories/utils/initDemoShadowDOMPortal.ts +0 -10
  443. package/src/stories/utils/lorem.ts +0 -59
  444. package/src/stories/utils/theming.tsx +0 -166
  445. package/src/stories/utils/toFlattenProps.ts +0 -28
  446. package/src/stories/utils/withCategory.ts +0 -12
  447. package/src/testing/utils/ThemeSentinel.tsx +0 -11
  448. package/src/testing/utils/commonTestsSuiteRTL.tsx +0 -193
  449. package/src/testing/utils/index.ts +0 -1
  450. package/src/testing/utils/queries.ts +0 -19
  451. package/src/untypped-modules.d.ts +0 -9
  452. package/src/utils/ClickAwayProvider/ClickAwayProvider.stories.jsx +0 -70
  453. package/src/utils/ClickAwayProvider/ClickAwayProvider.tsx +0 -69
  454. package/src/utils/ClickAwayProvider/index.ts +0 -1
  455. package/src/utils/MaterialThemeSwitcher/MaterialThemeSwitcher.tsx +0 -54
  456. package/src/utils/MaterialThemeSwitcher/index.ts +0 -1
  457. package/src/utils/Portal/Portal.test.tsx +0 -32
  458. package/src/utils/Portal/Portal.tsx +0 -33
  459. package/src/utils/Portal/PortalProvider.stories.jsx +0 -23
  460. package/src/utils/Portal/PortalProvider.test.tsx +0 -73
  461. package/src/utils/Portal/PortalProvider.tsx +0 -24
  462. package/src/utils/Portal/index.tsx +0 -2
  463. package/src/utils/browser/DOM/findImage.tsx +0 -3
  464. package/src/utils/browser/DOM/startViewTransition.ts +0 -68
  465. package/src/utils/browser/focus/constants.ts +0 -7
  466. package/src/utils/browser/focus/getFirstAndLastFocusable.test.ts +0 -134
  467. package/src/utils/browser/focus/getFirstAndLastFocusable.ts +0 -21
  468. package/src/utils/browser/focus/getFocusableElements.test.ts +0 -151
  469. package/src/utils/browser/focus/getFocusableElements.ts +0 -7
  470. package/src/utils/browser/isFocusVisible.ts +0 -9
  471. package/src/utils/browser/isHoverNotSupported.test.js +0 -24
  472. package/src/utils/browser/isHoverNotSupported.ts +0 -2
  473. package/src/utils/browser/isReducedMotion.ts +0 -6
  474. package/src/utils/date/addMonthResetDay.test.ts +0 -13
  475. package/src/utils/date/addMonthResetDay.ts +0 -9
  476. package/src/utils/date/formatDayNumber.test.ts +0 -12
  477. package/src/utils/date/formatDayNumber.ts +0 -5
  478. package/src/utils/date/getFirstDayOfWeek.test.ts +0 -20
  479. package/src/utils/date/getFirstDayOfWeek.ts +0 -59
  480. package/src/utils/date/getMonthCalendar.test.ts +0 -127
  481. package/src/utils/date/getMonthCalendar.ts +0 -69
  482. package/src/utils/date/getWeekDays.test.ts +0 -48
  483. package/src/utils/date/getWeekDays.ts +0 -34
  484. package/src/utils/date/getYearDisplayName.test.ts +0 -20
  485. package/src/utils/date/getYearDisplayName.ts +0 -12
  486. package/src/utils/date/isDateValid.test.ts +0 -15
  487. package/src/utils/date/isDateValid.ts +0 -4
  488. package/src/utils/date/isSameDay.test.ts +0 -37
  489. package/src/utils/date/isSameDay.ts +0 -11
  490. package/src/utils/disabled/DisabledStateContext.tsx +0 -29
  491. package/src/utils/disabled/DisabledStateProvider.stories.tsx +0 -94
  492. package/src/utils/disabled/index.ts +0 -2
  493. package/src/utils/disabled/useDisableStateProps.test.tsx +0 -74
  494. package/src/utils/disabled/useDisableStateProps.tsx +0 -37
  495. package/src/utils/function/makeListenerTowerContext.ts +0 -32
  496. package/src/utils/index.ts +0 -7
  497. package/src/utils/locale/getCurrentLocale.ts +0 -4
  498. package/src/utils/locale/parseLocale.test.ts +0 -17
  499. package/src/utils/locale/parseLocale.ts +0 -23
  500. package/src/utils/locale/types.ts +0 -8
  501. package/src/utils/number/clamp.ts +0 -17
  502. package/src/utils/object/isEqual.test.ts +0 -25
  503. package/src/utils/object/isEqual.ts +0 -11
  504. package/src/utils/partitionMulti.test.ts +0 -27
  505. package/src/utils/partitionMulti.ts +0 -29
  506. package/src/utils/react/OnBeforeUnmount.tsx +0 -20
  507. package/src/utils/react/RawClickable.test.tsx +0 -153
  508. package/src/utils/react/RawClickable.tsx +0 -65
  509. package/src/utils/react/flattenChildren.ts +0 -32
  510. package/src/utils/react/forwardRef.ts +0 -11
  511. package/src/utils/react/forwardRefPolymorphic.ts +0 -9
  512. package/src/utils/react/mergeRefs.ts +0 -33
  513. package/src/utils/react/renderLink.tsx +0 -17
  514. package/src/utils/react/skipRender.tsx +0 -18
  515. package/src/utils/react/unref.ts +0 -7
  516. package/src/utils/react/wrapChildrenIconWithSpaces.test.tsx +0 -37
  517. package/src/utils/react/wrapChildrenIconWithSpaces.tsx +0 -22
  518. package/src/utils/theme/ThemeContext.ts +0 -16
  519. package/src/utils/theme/invertTheme.ts +0 -4
  520. package/src/utils/type/Comp.ts +0 -14
  521. package/src/utils/type/ComponentRef.ts +0 -16
  522. package/src/utils/type/HasAriaDisabled.ts +0 -6
  523. package/src/utils/type/HasPolymorphicAs.ts +0 -8
  524. package/src/utils/type/HasRequiredLinkHref.ts +0 -1
  525. package/src/utils/type/MaybeElementOrRef.ts +0 -6
  526. package/src/utils/type/index.ts +0 -9
  527. package/src/utils/type/isComponent.ts +0 -33
  528. package/src/utils/type/isComponentType.ts +0 -9
@@ -1,48 +0,0 @@
1
- import { RefObject, useEffect, useRef, useState } from 'react';
2
- import { isReducedMotion } from '@lumx/react/utils/browser/isReducedMotion';
3
-
4
- /**
5
- * Returns true if the component is visible tracking the opacity transition.
6
- *
7
- * @param ref Element on which to listen the transition event.
8
- * @param isComponentVisible Whether the component intends to be visible or not.
9
- * @param onVisibilityChange Callback called when the visibility changes.
10
- * @return true if the component should be rendered
11
- */
12
- export const useTransitionVisibility = (
13
- ref: RefObject<HTMLElement>,
14
- isComponentVisible: boolean,
15
- timeout: number,
16
- onVisibilityChange?: (isVisible: boolean) => void,
17
- ) => {
18
- const [isVisible, setVisible] = useState(isComponentVisible);
19
- const previousVisibility = useRef(isVisible);
20
-
21
- // On component visibility change.
22
- useEffect(() => {
23
- if (isComponentVisible) {
24
- setVisible(true);
25
- return undefined;
26
- }
27
- const { current: element } = ref;
28
-
29
- // Transition event is not supported or the user prefers reduced motion.
30
- // => Skip and set visibility to false directly.
31
- if (!element || !window.TransitionEvent || isReducedMotion()) {
32
- setVisible(false);
33
- return undefined;
34
- }
35
-
36
- const timer = setTimeout(() => setVisible(false), timeout);
37
- return () => clearTimeout(timer);
38
- }, [isComponentVisible, ref, timeout]);
39
-
40
- useEffect(() => {
41
- if (onVisibilityChange && previousVisibility.current !== isVisible) {
42
- onVisibilityChange(isVisible);
43
- previousVisibility.current = isVisible;
44
- }
45
- }, [isVisible, onVisibilityChange]);
46
-
47
- return isVisible || isComponentVisible;
48
- };
package/src/index.ts DELETED
@@ -1,63 +0,0 @@
1
- /**
2
- * Components listed here will be exposed to NPM in '@lumx/react'.
3
- */
4
-
5
- export * from '@lumx/core/js/constants';
6
- export * from '@lumx/core/js/types';
7
-
8
- export * from './components/alert-dialog';
9
- export * from './components/autocomplete';
10
- export * from './components/avatar';
11
- export * from './components/badge';
12
- export * from './components/button';
13
- export * from './components/checkbox';
14
- export * from './components/chip';
15
- export * from './components/comment-block';
16
- export * from './components/date-picker';
17
- export * from './components/dialog';
18
- export * from './components/divider';
19
- export * from './components/drag-handle';
20
- export * from './components/dropdown';
21
- export * from './components/expansion-panel';
22
- export * from './components/flag';
23
- export * from './components/flex-box';
24
- export * from './components/generic-block';
25
- export * from './components/heading';
26
- export * from './components/grid';
27
- export * from './components/grid-column';
28
- export * from './components/icon';
29
- export * from './components/image-block';
30
- export * from './components/image-lightbox';
31
- export * from './components/inline-list';
32
- export * from './components/input-helper';
33
- export * from './components/input-label';
34
- export * from './components/lightbox';
35
- export * from './components/link';
36
- export * from './components/link-preview';
37
- export * from './components/list';
38
- export * from './components/message';
39
- export * from './components/mosaic';
40
- export * from './components/navigation';
41
- export * from './components/notification';
42
- export * from './components/popover';
43
- export * from './components/popover-dialog';
44
- export * from './components/post-block';
45
- export * from './components/progress';
46
- export * from './components/progress-tracker';
47
- export * from './components/radio-button';
48
- export * from './components/select';
49
- export * from './components/side-navigation';
50
- export * from './components/skeleton';
51
- export * from './components/slider';
52
- export * from './components/slideshow';
53
- export * from './components/switch';
54
- export * from './components/table';
55
- export * from './components/tabs';
56
- export * from './components/text';
57
- export * from './components/text-field';
58
- export * from './components/thumbnail';
59
- export * from './components/toolbar';
60
- export * from './components/tooltip';
61
- export * from './components/uploader';
62
- export * from './components/user-block';
63
- export { ThemeProvider, useTheme } from './utils/theme/ThemeContext';
@@ -1,7 +0,0 @@
1
- import { ColorPalette, ColorVariant } from '@lumx/react';
2
- import { getSelectArgType } from '@lumx/react/stories/controls/selectArgType';
3
- import { withUndefined } from '@lumx/react/stories/controls/withUndefined';
4
-
5
- export const ALL_COLORS = Object.values(ColorPalette);
6
- export const colorArgType = getSelectArgType(withUndefined(ALL_COLORS));
7
- export const colorVariantArgType = getSelectArgType(ColorVariant);
@@ -1,6 +0,0 @@
1
- import { getSelectArgType } from '@lumx/react/stories/controls/selectArgType';
2
- import { HeadingElement, TextElement } from '@lumx/react';
3
-
4
- export const HEADING_ELEMENTS = ['h1', 'h2', 'h3', 'h4', 'h5', 'h6'] as HeadingElement[];
5
- export const headingElementArgType = getSelectArgType<HeadingElement>(HEADING_ELEMENTS);
6
- export const textElementArgType = getSelectArgType<TextElement>(['p', 'span', ...HEADING_ELEMENTS]);
@@ -1 +0,0 @@
1
- export const focusPoint = { control: { type: 'range', min: -1, max: 1, step: 0.01 } };
@@ -1,126 +0,0 @@
1
- import {
2
- mdiAbTesting,
3
- mdiAbjadArabic,
4
- mdiAccount,
5
- mdiAccountBox,
6
- mdiAlert,
7
- mdiAlertCircle,
8
- mdiArrowDown,
9
- mdiArrowUp,
10
- mdiAtom,
11
- mdiBee,
12
- mdiBell,
13
- mdiBullhornOutline,
14
- mdiCheck,
15
- mdiCheckCircle,
16
- mdiChevronDown,
17
- mdiChevronLeft,
18
- mdiChevronRight,
19
- mdiChevronUp,
20
- mdiClose,
21
- mdiCloseCircle,
22
- mdiDelete,
23
- mdiDotsHorizontal,
24
- mdiDragVertical,
25
- mdiEarth,
26
- mdiEmail,
27
- mdiEye,
28
- mdiFileEdit,
29
- mdiFlag,
30
- mdiFolder,
31
- mdiFolderGoogleDrive,
32
- mdiFoodApple,
33
- mdiGoogleCirclesExtended,
34
- mdiHeart,
35
- mdiHome,
36
- mdiImageBroken,
37
- mdiInformation,
38
- mdiLink,
39
- mdiMagnifyMinusOutline,
40
- mdiMagnifyPlusOutline,
41
- mdiMenuDown,
42
- mdiMessageTextOutline,
43
- mdiMinus,
44
- mdiOpenInNew,
45
- mdiPauseCircleOutline,
46
- mdiPencil,
47
- mdiPlay,
48
- mdiPlayCircleOutline,
49
- mdiPlus,
50
- mdiRadioboxBlank,
51
- mdiRadioboxMarked,
52
- mdiReply,
53
- mdiSend,
54
- mdiStar,
55
- mdiTextBox,
56
- mdiTextBoxPlus,
57
- mdiTram,
58
- mdiTranslate,
59
- mdiViewList,
60
- } from '@lumx/icons';
61
-
62
- // Small selection of mdi icons to
63
- export const iconArgType = {
64
- control: { type: 'select' },
65
- options: {
66
- undefined,
67
- mdiAbTesting,
68
- mdiAbjadArabic,
69
- mdiAccount,
70
- mdiAccountBox,
71
- mdiAlert,
72
- mdiAlertCircle,
73
- mdiArrowDown,
74
- mdiArrowUp,
75
- mdiAtom,
76
- mdiBee,
77
- mdiBell,
78
- mdiBullhornOutline,
79
- mdiCheck,
80
- mdiCheckCircle,
81
- mdiChevronDown,
82
- mdiChevronLeft,
83
- mdiChevronRight,
84
- mdiChevronUp,
85
- mdiClose,
86
- mdiCloseCircle,
87
- mdiDelete,
88
- mdiDotsHorizontal,
89
- mdiDragVertical,
90
- mdiEarth,
91
- mdiEmail,
92
- mdiEye,
93
- mdiFileEdit,
94
- mdiFlag,
95
- mdiFolder,
96
- mdiFolderGoogleDrive,
97
- mdiFoodApple,
98
- mdiGoogleCirclesExtended,
99
- mdiHeart,
100
- mdiHome,
101
- mdiImageBroken,
102
- mdiInformation,
103
- mdiLink,
104
- mdiMagnifyMinusOutline,
105
- mdiMagnifyPlusOutline,
106
- mdiMenuDown,
107
- mdiMessageTextOutline,
108
- mdiMinus,
109
- mdiOpenInNew,
110
- mdiPauseCircleOutline,
111
- mdiPencil,
112
- mdiPlay,
113
- mdiPlayCircleOutline,
114
- mdiPlus,
115
- mdiRadioboxBlank,
116
- mdiRadioboxMarked,
117
- mdiReply,
118
- mdiSend,
119
- mdiStar,
120
- mdiTextBox,
121
- mdiTextBoxPlus,
122
- mdiTram,
123
- mdiTranslate,
124
- mdiViewList,
125
- },
126
- };
@@ -1,84 +0,0 @@
1
- import { getSelectArgType } from '@lumx/react/stories/controls/selectArgType';
2
-
3
- const avatar1 = '/demo-assets/avatar1.jpg';
4
- const avatar2 = '/demo-assets/avatar2.jpg';
5
- const avatar3 = '/demo-assets/avatar3.jpg';
6
- const avatar4 = '/demo-assets/avatar4.jpg';
7
- const landscape1 = '/demo-assets/landscape1.jpg';
8
- const landscape2 = '/demo-assets/landscape2.jpg';
9
- const landscape1s200 = '/demo-assets/landscape1-s200.jpg';
10
- const landscape3 = '/demo-assets/landscape3.jpg';
11
- const portrait1 = '/demo-assets/portrait1.jpg';
12
- const portrait1s200 = '/demo-assets/portrait1-s200.jpg';
13
- const portrait2 = '/demo-assets/portrait2.jpg';
14
- const portrait3 = '/demo-assets/portrait3.jpg';
15
- const square1 = '/demo-assets/square1.jpg';
16
- const square2 = '/demo-assets/square2.jpg';
17
- const defaultSvg = '/demo-assets/defaultSvg.svg';
18
- const emptyImage = '';
19
-
20
- export const AVATAR_IMAGES = { avatar1, avatar2, avatar3, avatar4 };
21
- export const SQUARE_IMAGES = { square1, square2 };
22
- export const SVG_IMAGES = { defaultSvg };
23
- export const EMPTY_IMAGES = { emptyImage };
24
- export const LANDSCAPE_IMAGES = { landscape1, landscape1s200, landscape2, landscape3 };
25
- export const LANDSCAPE_IMAGES_ALT: { [key in keyof typeof LANDSCAPE_IMAGES]: string } = {
26
- landscape1: 'A majestic snowy mountain range with a peak covered in glistening snow',
27
- landscape1s200: 'A majestic snowy mountain range with a peak covered in glistening snow',
28
- landscape2: 'A colorful rack of shirts displaying various hues and styles',
29
- landscape3: 'An open book resting on a table, ready to be explored and read',
30
- };
31
- export const PORTRAIT_IMAGES = { portrait1, portrait1s200, portrait2, portrait3 };
32
- export const IMAGES = {
33
- ...LANDSCAPE_IMAGES,
34
- ...PORTRAIT_IMAGES,
35
- ...SQUARE_IMAGES,
36
- ...AVATAR_IMAGES,
37
- ...SVG_IMAGES,
38
- ...EMPTY_IMAGES,
39
- };
40
-
41
- export const avatarImageArgType = getSelectArgType(AVATAR_IMAGES);
42
- export const squareImageArgType = getSelectArgType(SQUARE_IMAGES);
43
- export const landscapeImageArgType = getSelectArgType(LANDSCAPE_IMAGES);
44
- export const portraitImageArgType = getSelectArgType(PORTRAIT_IMAGES);
45
- export const imageArgType = getSelectArgType(IMAGES);
46
-
47
- type Size = { width: number; height: number };
48
-
49
- export const AVATAR_IMAGE_SIZES: Record<keyof typeof AVATAR_IMAGES, Size> = {
50
- avatar1: { width: 128, height: 128 },
51
- avatar2: { width: 150, height: 150 },
52
- avatar3: { width: 128, height: 128 },
53
- avatar4: { width: 128, height: 128 },
54
- };
55
- export const SQUARE_IMAGE_SIZES: Record<keyof typeof SQUARE_IMAGES, Size> = {
56
- square1: { width: 72, height: 72 },
57
- square2: { width: 300, height: 300 },
58
- };
59
- export const LANDSCAPE_IMAGE_SIZES: Record<keyof typeof LANDSCAPE_IMAGES, Size> = {
60
- landscape1: { width: 800, height: 546 },
61
- landscape1s200: { width: 200, height: 150 },
62
- landscape2: { width: 800, height: 600 },
63
- landscape3: { width: 640, height: 480 },
64
- };
65
- export const PORTRAIT_IMAGE_SIZES: Record<keyof typeof PORTRAIT_IMAGES, Size> = {
66
- portrait1: { width: 275, height: 500 },
67
- portrait1s200: { width: 200, height: 364 },
68
- portrait2: { width: 350, height: 500 },
69
- portrait3: { width: 300, height: 500 },
70
- };
71
- export const SVG_IMAGE_SIZES: Record<keyof typeof SVG_IMAGES, Size> = {
72
- defaultSvg: { width: 0, height: 0 },
73
- };
74
- export const EMPTY_IMAGES_SIZES: Record<keyof typeof EMPTY_IMAGES, Size> = {
75
- emptyImage: { width: 0, height: 0 },
76
- };
77
- export const IMAGE_SIZES: Record<keyof typeof IMAGES, Size> = {
78
- ...LANDSCAPE_IMAGE_SIZES,
79
- ...PORTRAIT_IMAGE_SIZES,
80
- ...SQUARE_IMAGE_SIZES,
81
- ...AVATAR_IMAGE_SIZES,
82
- ...SVG_IMAGE_SIZES,
83
- ...EMPTY_IMAGES_SIZES,
84
- };
@@ -1,8 +0,0 @@
1
- export const getSelectArgType = <E>(
2
- options: Array<E> | Record<string, E>,
3
- type: 'select' | 'inline-radio' = 'inline-radio',
4
- ) => ({
5
- control: { type },
6
- options: Object.values(options),
7
- mapping: !Array.isArray(options) ? options : undefined,
8
- });
@@ -1,3 +0,0 @@
1
- import { Theme } from '@lumx/react';
2
-
3
- export const themeArgType = { control: 'inline-radio', options: Theme };
@@ -1,5 +0,0 @@
1
- import { getSelectArgType } from '@lumx/react/stories/controls/selectArgType';
2
- import { TypographyCustom, TypographyInterface } from '@lumx/react';
3
-
4
- export const ALL_TYPOGRAPHY = [...Object.values(TypographyInterface), ...Object.values(TypographyCustom)];
5
- export const allTypographyArgType = getSelectArgType(ALL_TYPOGRAPHY);
@@ -1 +0,0 @@
1
- export const withUndefined = <E>(options: Array<E> | Record<string, E>) => [undefined, ...Object.values(options)];
@@ -1,8 +0,0 @@
1
- import React from 'react';
2
- import isChromatic from 'chromatic/isChromatic';
3
-
4
- /** Story decorator used to force a minimum screen size when running in chromatic */
5
- export const withChromaticForceScreenSize = () => {
6
- // eslint-disable-next-line react/display-name
7
- return (story: any) => (isChromatic() ? <div style={{ minWidth: 1200, minHeight: 800 }}>{story()}</div> : story());
8
- };
@@ -1,132 +0,0 @@
1
- /* eslint-disable react/display-name,jsx-a11y/control-has-associated-label,prefer-object-spread */
2
- import React from 'react';
3
- import isEmpty from 'lodash/isEmpty';
4
- import { Heading, HeadingLevelProvider } from '@lumx/react';
5
-
6
- type PropEntry = [key: string, value: unknown];
7
- type PropCombination = Record<string, Record<string, unknown>>;
8
- type PropArrayCombination = { key: string; options: Array<any> };
9
- type Combination = PropArrayCombination | PropCombination;
10
-
11
- const toProps = <E,>(arr: Array<E>, prop: string): PropEntry[] =>
12
- arr.map((value) => [String(value), { [prop]: value }]);
13
-
14
- const isArrayConfig = (c?: Combination): c is PropArrayCombination => !!c?.key;
15
-
16
- function toPropEntries(config?: Combination): PropEntry[] {
17
- if (isEmpty(config)) return [['', {}]];
18
- if (isArrayConfig(config)) return toProps(config.options, config.key);
19
- return Object.entries(config as PropCombination);
20
- }
21
-
22
- type Options = {
23
- /** Props combinations */
24
- combinations: {
25
- rows?: Combination;
26
- cols?: Combination;
27
- sections?: Combination;
28
- };
29
- /** Inject style on table */
30
- tableStyle?: React.CSSProperties;
31
- /** Inject style on first col */
32
- firstColStyle?: React.CSSProperties;
33
- /** Inject style on sections */
34
- sectionStyle?: React.CSSProperties;
35
- /** Inject style on cols */
36
- colStyle?: React.CSSProperties;
37
- /** Inject style on cells */
38
- cellStyle?: React.CSSProperties;
39
- /** Combinator function */
40
- combinator?: (a: any, b: any) => any;
41
- /** Exclude a combination */
42
- excludeCombination?: (args: any) => boolean;
43
- };
44
-
45
- /**
46
- * SB decorator generating a tables of combination of props (max 3 levels of props)
47
- */
48
- export const withCombinations =
49
- ({
50
- combinations,
51
- tableStyle,
52
- firstColStyle,
53
- cellStyle,
54
- colStyle,
55
- sectionStyle,
56
- combinator = Object.assign,
57
- excludeCombination,
58
- }: Options) =>
59
- (Story: any, ctx: any) => {
60
- const rows = toPropEntries(combinations.rows);
61
- const cols = toPropEntries(combinations.cols);
62
- const sections = toPropEntries(combinations.sections);
63
- const hasRows = rows.length > 1;
64
- const hasCols = cols.length > 1;
65
-
66
- return (
67
- <>
68
- {sections.map(([level2Key, level2Value]) => {
69
- const sectionArgs = combinator({ ...ctx.args }, level2Value);
70
- const sectionCols = cols
71
- .map(([level1Key, level1Value]) => {
72
- const args = combinator({ ...sectionArgs }, level1Value);
73
- if (excludeCombination?.(args)) return null;
74
- return [level1Key, args];
75
- })
76
- .filter(Boolean) as Array<[string, any]>;
77
- return (
78
- <section key={level2Key} style={sectionStyle}>
79
- <HeadingLevelProvider>
80
- {level2Key && <Heading style={{ textTransform: 'capitalize' }}>{level2Key}</Heading>}
81
-
82
- {hasRows || hasCols ? (
83
- <table style={{ ...tableStyle, borderCollapse: 'separate', borderSpacing: 8 }}>
84
- {combinations.cols && (
85
- <thead>
86
- <tr>
87
- {hasRows && <th aria-hidden />}
88
- {sectionCols.map(([key]) => (
89
- <th key={key} style={colStyle}>
90
- <small>{key}</small>
91
- </th>
92
- ))}
93
- </tr>
94
- </thead>
95
- )}
96
- <tbody>
97
- {rows.map(([level0Key, level0Value], i1) => {
98
- const rowArgs = combinator({ ...sectionArgs }, level0Value);
99
- if (excludeCombination?.(rowArgs)) return null;
100
- return (
101
- <tr key={i1}>
102
- {hasRows && (
103
- <th style={{ ...firstColStyle, textAlign: 'left' }}>
104
- <small>{level0Key}</small>
105
- </th>
106
- )}
107
- {cols.map(([level1Key, level1Value]) => {
108
- const args = combinator({ ...rowArgs }, level1Value);
109
- let render: React.ReactNode = <Story args={args} />;
110
- if (excludeCombination?.(args)) render = null;
111
- const textAlign = combinations.cols ? 'center' : undefined;
112
- return (
113
- <td key={level1Key} style={{ textAlign, ...cellStyle }}>
114
- {render}
115
- </td>
116
- );
117
- })}
118
- </tr>
119
- );
120
- })}
121
- </tbody>
122
- </table>
123
- ) : (
124
- <Story args={sectionArgs} />
125
- )}
126
- </HeadingLevelProvider>
127
- </section>
128
- );
129
- })}
130
- </>
131
- );
132
- };
@@ -1,23 +0,0 @@
1
- import React from 'react';
2
- import set from 'lodash/set';
3
-
4
- /**
5
- * Convert flattened props into nested props
6
- *
7
- * @example: toNestedProps({ 'foo.bar': 4 }) => { foo: { bar: 4 } }
8
- */
9
- export function toNestedProps(flattenedProps: Record<string, any>): Record<string, any> {
10
- const props = {};
11
- for (const [key, value] of Object.entries(flattenedProps)) {
12
- set(props, key, value);
13
- }
14
- return props;
15
- }
16
-
17
- /**
18
- * SB decorator converting args from flattened props to nested props
19
- */
20
- export const withNestedProps = () => {
21
- // eslint-disable-next-line react/display-name
22
- return (Story: any, ctx: any) => <Story args={toNestedProps(ctx.args)} />;
23
- };
@@ -1,21 +0,0 @@
1
- import type { CSSProperties } from 'react';
2
- import { withWrapper } from './withWrapper';
3
-
4
- /** Storybook decorator wrapping story in a resizable box */
5
- export const withResizableBox = ({
6
- width = 150,
7
- height = 50,
8
- ...style
9
- }: Pick<CSSProperties, 'height' | 'minWidth' | 'width'> = {}) => {
10
- return withWrapper({
11
- style: {
12
- display: 'flex',
13
- width,
14
- height,
15
- border: '1px solid red',
16
- resize: 'both',
17
- overflow: 'hidden',
18
- ...style,
19
- },
20
- });
21
- };
@@ -1,18 +0,0 @@
1
- import React from 'react';
2
-
3
- const LIGHT_BACKGROUND_COLOR = '#EEE';
4
- const DARK_BACKGROUND_COLOR = '#333';
5
-
6
- /**
7
- * SB decorator adding a background adapted to the current theme.
8
- */
9
- export const withThemedBackground = () => {
10
- return (Story: any, { args }: any) => {
11
- const backgroundColor = args.theme === 'dark' ? DARK_BACKGROUND_COLOR : LIGHT_BACKGROUND_COLOR;
12
- return (
13
- <div style={{ backgroundColor, padding: 8 }}>
14
- <Story />
15
- </div>
16
- );
17
- };
18
- };
@@ -1,18 +0,0 @@
1
- import React from 'react';
2
- import over from 'lodash/over';
3
- import identity from 'lodash/identity';
4
-
5
- export const withValueOnChange = ({
6
- valueProp = 'value',
7
- valueTransform = identity,
8
- }: {
9
- valueProp?: string;
10
- valueTransform?: (v: any) => any;
11
- } = {}) => {
12
- // eslint-disable-next-line react/display-name
13
- return (Story: any, ctx: any) => {
14
- const [value, onChange] = React.useState(ctx.args[valueProp]);
15
- const args = { ...ctx.args, onChange: over([onChange, ctx.args.onChange]), [valueProp]: valueTransform(value) };
16
- return <Story args={args} />;
17
- };
18
- };
@@ -1,21 +0,0 @@
1
- import React from 'react';
2
-
3
- /**
4
- * SB decorator adding a wrapping div around the story
5
- */
6
- export const withWrapper = <E extends React.ElementType = 'div'>(
7
- props: Omit<React.ComponentProps<E>, 'children'>,
8
- as?: E,
9
- ) => {
10
- // eslint-disable-next-line react/display-name
11
- return (Story: any, ctx: any) => {
12
- const Wrapper = as || 'div';
13
- const { wrapperProps } = ctx.parameters;
14
- const overriddenProps = { ...props, ...wrapperProps, style: { ...props?.style, ...wrapperProps?.style } };
15
- return (
16
- <Wrapper {...overriddenProps}>
17
- <Story />
18
- </Wrapper>
19
- );
20
- };
21
- };
@@ -1,7 +0,0 @@
1
- /**
2
- * File generated when storybook is started. Do not edit directly!
3
- */
4
- export default { title: 'LumX components/autocomplete/Autocomplete Demos' };
5
-
6
- export { App as Default } from './default';
7
- export { App as Multiple } from './multiple';
@@ -1,7 +0,0 @@
1
- /**
2
- * File generated when storybook is started. Do not edit directly!
3
- */
4
- export default { title: 'LumX components/avatar/Avatar Demos' };
5
-
6
- export { App as Actions } from './actions';
7
- export { App as Default } from './default';
@@ -1,9 +0,0 @@
1
- /**
2
- * File generated when storybook is started. Do not edit directly!
3
- */
4
- export default { title: 'LumX components/badge/Badge Demos' };
5
-
6
- export { App as Colors } from './colors';
7
- export { App as Icon } from './icon';
8
- export { App as Label } from './label';
9
- export { App as Thumbnail } from './thumbnail';
@@ -1,11 +0,0 @@
1
- /**
2
- * File generated when storybook is started. Do not edit directly!
3
- */
4
- export default { title: 'LumX components/button/Button Demos' };
5
-
6
- export { App as EmphasisHigh } from './emphasis-high';
7
- export { App as EmphasisLow } from './emphasis-low';
8
- export { App as EmphasisMedium } from './emphasis-medium';
9
- export { App as FullWidth } from './full-width';
10
- export { App as Small } from './small';
11
- export { App as Toggle } from './toggle';
@@ -1,6 +0,0 @@
1
- /**
2
- * File generated when storybook is started. Do not edit directly!
3
- */
4
- export default { title: 'LumX components/checkbox/Checkbox Demos' };
5
-
6
- export { App as Default } from './default';