@lumx/react 3.20.1-alpha.24 → 3.20.1-alpha.26

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 (711) hide show
  1. package/_internal/Button-85482487.js +98 -0
  2. package/_internal/Button-85482487.js.map +1 -0
  3. package/_internal/ButtonRoot-823f3e9c.js +117 -0
  4. package/_internal/ButtonRoot-823f3e9c.js.map +1 -0
  5. package/_internal/Chip-a34f6905.js +146 -0
  6. package/_internal/Chip-a34f6905.js.map +1 -0
  7. package/_internal/ClickAwayProvider-7093ba23.js +95 -0
  8. package/_internal/ClickAwayProvider-7093ba23.js.map +1 -0
  9. package/_internal/DisabledStateContext-ea04260d.js +29 -0
  10. package/_internal/DisabledStateContext-ea04260d.js.map +1 -0
  11. package/_internal/HeadingLevelProvider-ebdcb0c7.js +61 -0
  12. package/_internal/HeadingLevelProvider-ebdcb0c7.js.map +1 -0
  13. package/_internal/IconButton-1a22c4c8.js +77 -0
  14. package/_internal/IconButton-1a22c4c8.js.map +1 -0
  15. package/_internal/ImageCaption-a0a6de5c.js +75 -0
  16. package/_internal/ImageCaption-a0a6de5c.js.map +1 -0
  17. package/_internal/List-54237e0e.js +793 -0
  18. package/_internal/List-54237e0e.js.map +1 -0
  19. package/_internal/PopoverDialog-4ebe79f2.js +655 -0
  20. package/_internal/PopoverDialog-4ebe79f2.js.map +1 -0
  21. package/_internal/Portal-3f86608e.js +45 -0
  22. package/_internal/Portal-3f86608e.js.map +1 -0
  23. package/_internal/RawClickable-2c2b6a89.js +52 -0
  24. package/_internal/RawClickable-2c2b6a89.js.map +1 -0
  25. package/_internal/Slides-ae91d12c.js +682 -0
  26. package/_internal/Slides-ae91d12c.js.map +1 -0
  27. package/_internal/ThemeContext-3181f000.js +14 -0
  28. package/_internal/ThemeContext-3181f000.js.map +1 -0
  29. package/_internal/Thumbnail-0872250e.js +314 -0
  30. package/_internal/Thumbnail-0872250e.js.map +1 -0
  31. package/_internal/check-circle-de24f857.js +4 -0
  32. package/_internal/check-circle-de24f857.js.map +1 -0
  33. package/_internal/chevron-right-827b804a.js +6 -0
  34. package/_internal/chevron-right-827b804a.js.map +1 -0
  35. package/_internal/chevron-up-0b9c76cb.js +6 -0
  36. package/_internal/chevron-up-0b9c76cb.js.map +1 -0
  37. package/_internal/close-circle-ef5d1aac.js +4 -0
  38. package/_internal/close-circle-ef5d1aac.js.map +1 -0
  39. package/_internal/close-eaf6c45a.js +4 -0
  40. package/_internal/close-eaf6c45a.js.map +1 -0
  41. package/_internal/components/alert-dialog-0eeb06ce.js +163 -0
  42. package/_internal/components/alert-dialog-0eeb06ce.js.map +1 -0
  43. package/_internal/components/autocomplete-32170542.js +261 -0
  44. package/_internal/components/autocomplete-32170542.js.map +1 -0
  45. package/_internal/components/avatar-d2214a61.js +83 -0
  46. package/_internal/components/avatar-d2214a61.js.map +1 -0
  47. package/_internal/components/badge-8390e590.js +81 -0
  48. package/_internal/components/badge-8390e590.js.map +1 -0
  49. package/_internal/components/button-b5818c5a.js +47 -0
  50. package/_internal/components/button-b5818c5a.js.map +1 -0
  51. package/_internal/components/checkbox-346834f8.js +143 -0
  52. package/_internal/components/checkbox-346834f8.js.map +1 -0
  53. package/_internal/components/chip-e40c5521.js +102 -0
  54. package/_internal/components/chip-e40c5521.js.map +1 -0
  55. package/_internal/components/comment-block-a4997791.js +138 -0
  56. package/_internal/components/comment-block-a4997791.js.map +1 -0
  57. package/_internal/components/date-picker-48a39549.js +2 -0
  58. package/_internal/components/date-picker-48a39549.js.map +1 -0
  59. package/_internal/components/dialog-ebdb9500.js +238 -0
  60. package/_internal/components/dialog-ebdb9500.js.map +1 -0
  61. package/_internal/components/divider-116af6b9.js +50 -0
  62. package/_internal/components/divider-116af6b9.js.map +1 -0
  63. package/_internal/components/drag-handle-6b073866.js +52 -0
  64. package/_internal/components/drag-handle-6b073866.js.map +1 -0
  65. package/_internal/components/dropdown-0baed51b.js +147 -0
  66. package/_internal/components/dropdown-0baed51b.js.map +1 -0
  67. package/_internal/components/expansion-panel-80edf6c9.js +167 -0
  68. package/_internal/components/expansion-panel-80edf6c9.js.map +1 -0
  69. package/_internal/components/flag-7c9d3abf.js +59 -0
  70. package/_internal/components/flag-7c9d3abf.js.map +1 -0
  71. package/_internal/components/flex-box-55144e5f.js +56 -0
  72. package/_internal/components/flex-box-55144e5f.js.map +1 -0
  73. package/_internal/components/generic-block-ff0509ee.js +124 -0
  74. package/_internal/components/generic-block-ff0509ee.js.map +1 -0
  75. package/_internal/components/grid-6f1b5a41.js +104 -0
  76. package/_internal/components/grid-6f1b5a41.js.map +1 -0
  77. package/_internal/components/grid-column-f01df853.js +59 -0
  78. package/_internal/components/grid-column-f01df853.js.map +1 -0
  79. package/_internal/components/heading-d4c66a34.js +53 -0
  80. package/_internal/components/heading-d4c66a34.js.map +1 -0
  81. package/_internal/components/icon-7c79ab42.js +2 -0
  82. package/_internal/components/icon-7c79ab42.js.map +1 -0
  83. package/_internal/components/image-block-755d8b96.js +110 -0
  84. package/_internal/components/image-block-755d8b96.js.map +1 -0
  85. package/_internal/components/image-lightbox-d31dcd8a.js +759 -0
  86. package/_internal/components/image-lightbox-d31dcd8a.js.map +1 -0
  87. package/_internal/components/inline-list-e6f19a98.js +74 -0
  88. package/_internal/components/inline-list-e6f19a98.js.map +1 -0
  89. package/_internal/components/input-helper-64153099.js +71 -0
  90. package/_internal/components/input-helper-64153099.js.map +1 -0
  91. package/_internal/components/input-label-2feb0bb0.js +59 -0
  92. package/_internal/components/input-label-2feb0bb0.js.map +1 -0
  93. package/_internal/components/lightbox-9dbd7c15.js +155 -0
  94. package/_internal/components/lightbox-9dbd7c15.js.map +1 -0
  95. package/_internal/components/link-f9421eab.js +72 -0
  96. package/_internal/components/link-f9421eab.js.map +1 -0
  97. package/_internal/components/link-preview-5c7e3878.js +117 -0
  98. package/_internal/components/link-preview-5c7e3878.js.map +1 -0
  99. package/_internal/components/list-b08d8423.js +71 -0
  100. package/_internal/components/list-b08d8423.js.map +1 -0
  101. package/_internal/components/message-b3957df0.js +98 -0
  102. package/_internal/components/message-b3957df0.js.map +1 -0
  103. package/_internal/components/mosaic-742a9109.js +95 -0
  104. package/_internal/components/mosaic-742a9109.js.map +1 -0
  105. package/_internal/components/navigation-b1cd43c3.js +225 -0
  106. package/_internal/components/navigation-b1cd43c3.js.map +1 -0
  107. package/_internal/components/notification-94679f51.js +146 -0
  108. package/_internal/components/notification-94679f51.js.map +1 -0
  109. package/_internal/components/popover-65bfbc57.js +3 -0
  110. package/_internal/components/popover-65bfbc57.js.map +1 -0
  111. package/_internal/components/post-block-3ac52237.js +109 -0
  112. package/_internal/components/post-block-3ac52237.js.map +1 -0
  113. package/_internal/components/progress-f39c3fa2.js +182 -0
  114. package/_internal/components/progress-f39c3fa2.js.map +1 -0
  115. package/_internal/components/progress-tracker-997931ac.js +309 -0
  116. package/_internal/components/progress-tracker-997931ac.js.map +1 -0
  117. package/_internal/components/radio-button-559a4863.js +149 -0
  118. package/_internal/components/radio-button-559a4863.js.map +1 -0
  119. package/_internal/components/select-f3b44cb6.js +458 -0
  120. package/_internal/components/select-f3b44cb6.js.map +1 -0
  121. package/_internal/components/side-navigation-414825d8.js +165 -0
  122. package/_internal/components/side-navigation-414825d8.js.map +1 -0
  123. package/_internal/components/skeleton-c66516ee.js +166 -0
  124. package/_internal/components/skeleton-c66516ee.js.map +1 -0
  125. package/_internal/components/slider-efbfbc45.js +311 -0
  126. package/_internal/components/slider-efbfbc45.js.map +1 -0
  127. package/_internal/components/slideshow-dc4b79ae.js +151 -0
  128. package/_internal/components/slideshow-dc4b79ae.js.map +1 -0
  129. package/_internal/components/switch-769a2a04.js +122 -0
  130. package/_internal/components/switch-769a2a04.js.map +1 -0
  131. package/_internal/components/table-c43ec4a5.js +297 -0
  132. package/_internal/components/table-c43ec4a5.js.map +1 -0
  133. package/_internal/components/tabs-4037fe57.js +298 -0
  134. package/_internal/components/tabs-4037fe57.js.map +1 -0
  135. package/_internal/components/text-851c62f8.js +2 -0
  136. package/_internal/components/text-851c62f8.js.map +1 -0
  137. package/_internal/components/text-field-0a15a15d.js +360 -0
  138. package/_internal/components/text-field-0a15a15d.js.map +1 -0
  139. package/_internal/components/thumbnail-f1784929.js +42 -0
  140. package/_internal/components/thumbnail-f1784929.js.map +1 -0
  141. package/_internal/components/toolbar-a43533a2.js +61 -0
  142. package/_internal/components/toolbar-a43533a2.js.map +1 -0
  143. package/_internal/components/tooltip-2885ab2e.js +327 -0
  144. package/_internal/components/tooltip-2885ab2e.js.map +1 -0
  145. package/_internal/components/uploader-7bc3adaa.js +153 -0
  146. package/_internal/components/uploader-7bc3adaa.js.map +1 -0
  147. package/_internal/components/user-block-5f7b09af.js +145 -0
  148. package/_internal/components/user-block-5f7b09af.js.map +1 -0
  149. package/_internal/constants-b9e57936.js +2155 -0
  150. package/_internal/constants-b9e57936.js.map +1 -0
  151. package/_internal/constants-d0e3f49e.js +24 -0
  152. package/_internal/constants-d0e3f49e.js.map +1 -0
  153. package/_internal/context-9d1336a1.js +19 -0
  154. package/_internal/context-9d1336a1.js.map +1 -0
  155. package/_internal/forwardRef-15f62847.js +70 -0
  156. package/_internal/forwardRef-15f62847.js.map +1 -0
  157. package/_internal/getFocusableElements-230173a8.js +13 -0
  158. package/_internal/getFocusableElements-230173a8.js.map +1 -0
  159. package/_internal/index-192f8ada.js +103 -0
  160. package/_internal/index-192f8ada.js.map +1 -0
  161. package/_internal/index-9df37c0d.js +436 -0
  162. package/_internal/index-9df37c0d.js.map +1 -0
  163. package/_internal/index-b06353f2.js +117 -0
  164. package/_internal/index-b06353f2.js.map +1 -0
  165. package/_internal/information-49bbeed3.js +6 -0
  166. package/_internal/information-49bbeed3.js.map +1 -0
  167. package/_internal/isComponent-78df9309.js +20 -0
  168. package/_internal/isComponent-78df9309.js.map +1 -0
  169. package/_internal/isComponentType-e806b848.js +9 -0
  170. package/_internal/isComponentType-e806b848.js.map +1 -0
  171. package/_internal/mergeRefs-f0d7d6ea.js +30 -0
  172. package/_internal/mergeRefs-f0d7d6ea.js.map +1 -0
  173. package/{src/utils/partitionMulti.ts → _internal/partitionMulti-4daccdd5.js} +5 -9
  174. package/_internal/partitionMulti-4daccdd5.js.map +1 -0
  175. package/_internal/state-db358714.js +130 -0
  176. package/_internal/state-db358714.js.map +1 -0
  177. package/_internal/useBooleanState-2a3d237c.js +12 -0
  178. package/_internal/useBooleanState-2a3d237c.js.map +1 -0
  179. package/_internal/useCallbackOnEscape-ea4d9eb4.js +62 -0
  180. package/_internal/useCallbackOnEscape-ea4d9eb4.js.map +1 -0
  181. package/_internal/useDisableBodyScroll-36bd7352.js +219 -0
  182. package/_internal/useDisableBodyScroll-36bd7352.js.map +1 -0
  183. package/_internal/useDisableStateProps-69e16b7c.js +36 -0
  184. package/_internal/useDisableStateProps-69e16b7c.js.map +1 -0
  185. package/_internal/useFocusTrap-c3c6378b.js +112 -0
  186. package/_internal/useFocusTrap-c3c6378b.js.map +1 -0
  187. package/_internal/useId-3a1facc0.js +18 -0
  188. package/_internal/useId-3a1facc0.js.map +1 -0
  189. package/_internal/useRovingTabIndex-7daf0f24.js +77 -0
  190. package/_internal/useRovingTabIndex-7daf0f24.js.map +1 -0
  191. package/_internal/useTransitionVisibility-321fdbfa.js +50 -0
  192. package/_internal/useTransitionVisibility-321fdbfa.js.map +1 -0
  193. package/_internal/wrapChildrenIconWithSpaces-f1e91251.js +20 -0
  194. package/_internal/wrapChildrenIconWithSpaces-f1e91251.js.map +1 -0
  195. package/index.d.ts +7 -352
  196. package/index.js +65 -14486
  197. package/index.js.map +1 -1
  198. package/package.json +4 -11
  199. package/utils/index.d.ts +1 -1
  200. package/utils/index.js +3 -1
  201. package/utils/index.js.map +1 -1
  202. package/_internal/Falsy.d.ts +0 -7
  203. package/_internal/index.js +0 -236
  204. package/_internal/index.js.map +0 -1
  205. package/src/components/alert-dialog/AlertDialog.stories.tsx +0 -127
  206. package/src/components/alert-dialog/AlertDialog.test.tsx +0 -34
  207. package/src/components/alert-dialog/AlertDialog.tsx +0 -189
  208. package/src/components/alert-dialog/index.ts +0 -1
  209. package/src/components/autocomplete/Autocomplete.stories.tsx +0 -75
  210. package/src/components/autocomplete/Autocomplete.test.tsx +0 -99
  211. package/src/components/autocomplete/Autocomplete.tsx +0 -294
  212. package/src/components/autocomplete/AutocompleteMultiple.stories.tsx +0 -167
  213. package/src/components/autocomplete/AutocompleteMultiple.test.tsx +0 -61
  214. package/src/components/autocomplete/AutocompleteMultiple.tsx +0 -156
  215. package/src/components/autocomplete/__mockData__/index.ts +0 -39
  216. package/src/components/autocomplete/index.ts +0 -2
  217. package/src/components/avatar/Avatar.stories.tsx +0 -119
  218. package/src/components/avatar/Avatar.test.tsx +0 -32
  219. package/src/components/avatar/Avatar.tsx +0 -114
  220. package/src/components/avatar/index.ts +0 -1
  221. package/src/components/badge/Badge.stories.tsx +0 -69
  222. package/src/components/badge/Badge.test.tsx +0 -45
  223. package/src/components/badge/Badge.tsx +0 -58
  224. package/src/components/badge/BadgeWrapper.stories.tsx +0 -75
  225. package/src/components/badge/BadgeWrapper.test.tsx +0 -47
  226. package/src/components/badge/BadgeWrapper.tsx +0 -37
  227. package/src/components/badge/index.ts +0 -2
  228. package/src/components/button/Button.stories.tsx +0 -355
  229. package/src/components/button/Button.test.tsx +0 -125
  230. package/src/components/button/Button.tsx +0 -101
  231. package/src/components/button/ButtonGroup.stories.tsx +0 -52
  232. package/src/components/button/ButtonGroup.test.tsx +0 -41
  233. package/src/components/button/ButtonGroup.tsx +0 -50
  234. package/src/components/button/ButtonRoot.tsx +0 -163
  235. package/src/components/button/IconButton.stories.tsx +0 -52
  236. package/src/components/button/IconButton.test.tsx +0 -66
  237. package/src/components/button/IconButton.tsx +0 -91
  238. package/src/components/button/index.ts +0 -4
  239. package/src/components/checkbox/Checkbox.stories.tsx +0 -64
  240. package/src/components/checkbox/Checkbox.test.tsx +0 -154
  241. package/src/components/checkbox/Checkbox.tsx +0 -164
  242. package/src/components/checkbox/index.ts +0 -1
  243. package/src/components/chip/Chip.stories.tsx +0 -164
  244. package/src/components/chip/Chip.test.tsx +0 -243
  245. package/src/components/chip/Chip.tsx +0 -168
  246. package/src/components/chip/ChipGroup.stories.tsx +0 -47
  247. package/src/components/chip/ChipGroup.test.tsx +0 -37
  248. package/src/components/chip/ChipGroup.tsx +0 -60
  249. package/src/components/chip/index.ts +0 -2
  250. package/src/components/comment-block/CommentBlock.stories.tsx +0 -91
  251. package/src/components/comment-block/CommentBlock.test.tsx +0 -28
  252. package/src/components/comment-block/CommentBlock.tsx +0 -172
  253. package/src/components/comment-block/index.ts +0 -1
  254. package/src/components/date-picker/DatePicker.stories.tsx +0 -118
  255. package/src/components/date-picker/DatePicker.test.tsx +0 -34
  256. package/src/components/date-picker/DatePicker.tsx +0 -52
  257. package/src/components/date-picker/DatePickerControlled.test.tsx +0 -91
  258. package/src/components/date-picker/DatePickerControlled.tsx +0 -259
  259. package/src/components/date-picker/DatePickerField.stories.tsx +0 -100
  260. package/src/components/date-picker/DatePickerField.test.tsx +0 -70
  261. package/src/components/date-picker/DatePickerField.tsx +0 -135
  262. package/src/components/date-picker/constants.ts +0 -11
  263. package/src/components/date-picker/index.ts +0 -4
  264. package/src/components/date-picker/types.ts +0 -28
  265. package/src/components/dialog/Dialog.stories.tsx +0 -318
  266. package/src/components/dialog/Dialog.test.tsx +0 -97
  267. package/src/components/dialog/Dialog.tsx +0 -288
  268. package/src/components/dialog/index.ts +0 -1
  269. package/src/components/divider/Divider.test.tsx +0 -51
  270. package/src/components/divider/Divider.tsx +0 -50
  271. package/src/components/divider/index.ts +0 -1
  272. package/src/components/drag-handle/DragHandle.test.tsx +0 -36
  273. package/src/components/drag-handle/DragHandle.tsx +0 -51
  274. package/src/components/drag-handle/index.ts +0 -1
  275. package/src/components/dropdown/Dropdown.stories.tsx +0 -31
  276. package/src/components/dropdown/Dropdown.test.tsx +0 -66
  277. package/src/components/dropdown/Dropdown.tsx +0 -186
  278. package/src/components/dropdown/index.ts +0 -1
  279. package/src/components/expansion-panel/ExpansionPanel.stories.tsx +0 -91
  280. package/src/components/expansion-panel/ExpansionPanel.test.tsx +0 -185
  281. package/src/components/expansion-panel/ExpansionPanel.tsx +0 -195
  282. package/src/components/expansion-panel/index.ts +0 -1
  283. package/src/components/flag/Flag.stories.tsx +0 -48
  284. package/src/components/flag/Flag.test.tsx +0 -62
  285. package/src/components/flag/Flag.tsx +0 -52
  286. package/src/components/flag/index.ts +0 -1
  287. package/src/components/flex-box/FlexBox.stories.tsx +0 -156
  288. package/src/components/flex-box/FlexBox.test.tsx +0 -24
  289. package/src/components/flex-box/FlexBox.tsx +0 -100
  290. package/src/components/flex-box/index.ts +0 -1
  291. package/src/components/generic-block/GenericBlock.stories.jsx +0 -128
  292. package/src/components/generic-block/GenericBlock.test.tsx +0 -156
  293. package/src/components/generic-block/GenericBlock.tsx +0 -225
  294. package/src/components/generic-block/constants.ts +0 -9
  295. package/src/components/generic-block/index.ts +0 -2
  296. package/src/components/grid/Grid.tsx +0 -83
  297. package/src/components/grid/GridItem.tsx +0 -55
  298. package/src/components/grid/index.ts +0 -2
  299. package/src/components/grid-column/GridColumn.stories.tsx +0 -45
  300. package/src/components/grid-column/GridColumn.test.jsx +0 -56
  301. package/src/components/grid-column/GridColumn.tsx +0 -83
  302. package/src/components/grid-column/index.ts +0 -1
  303. package/src/components/heading/Heading.stories.tsx +0 -69
  304. package/src/components/heading/Heading.test.tsx +0 -82
  305. package/src/components/heading/Heading.tsx +0 -65
  306. package/src/components/heading/HeadingLevelProvider.tsx +0 -30
  307. package/src/components/heading/constants.ts +0 -16
  308. package/src/components/heading/context.tsx +0 -13
  309. package/src/components/heading/index.ts +0 -3
  310. package/src/components/heading/useHeadingLevel.tsx +0 -8
  311. package/src/components/icon/Icon.stories.tsx +0 -73
  312. package/src/components/icon/Icon.test.tsx +0 -125
  313. package/src/components/icon/Icon.tsx +0 -133
  314. package/src/components/icon/index.ts +0 -1
  315. package/src/components/image-block/ImageBlock.stories.tsx +0 -117
  316. package/src/components/image-block/ImageBlock.test.tsx +0 -58
  317. package/src/components/image-block/ImageBlock.tsx +0 -142
  318. package/src/components/image-block/ImageCaption.tsx +0 -115
  319. package/src/components/image-block/index.ts +0 -1
  320. package/src/components/image-lightbox/ImageLightbox.stories.tsx +0 -160
  321. package/src/components/image-lightbox/ImageLightbox.test.tsx +0 -254
  322. package/src/components/image-lightbox/ImageLightbox.tsx +0 -90
  323. package/src/components/image-lightbox/constants.ts +0 -11
  324. package/src/components/image-lightbox/index.ts +0 -2
  325. package/src/components/image-lightbox/internal/ImageSlide.tsx +0 -107
  326. package/src/components/image-lightbox/internal/ImageSlideshow.tsx +0 -164
  327. package/src/components/image-lightbox/internal/useAnimateScroll.ts +0 -55
  328. package/src/components/image-lightbox/internal/usePointerZoom.ts +0 -148
  329. package/src/components/image-lightbox/types.ts +0 -48
  330. package/src/components/image-lightbox/useImageLightbox.tsx +0 -141
  331. package/src/components/inline-list/InlineList.stories.tsx +0 -77
  332. package/src/components/inline-list/InlineList.test.tsx +0 -52
  333. package/src/components/inline-list/InlineList.tsx +0 -96
  334. package/src/components/inline-list/index.ts +0 -1
  335. package/src/components/input-helper/InputHelper.stories.tsx +0 -35
  336. package/src/components/input-helper/InputHelper.test.tsx +0 -55
  337. package/src/components/input-helper/InputHelper.tsx +0 -65
  338. package/src/components/input-helper/constants.ts +0 -11
  339. package/src/components/input-helper/index.ts +0 -1
  340. package/src/components/input-label/InputLabel.stories.tsx +0 -45
  341. package/src/components/input-label/InputLabel.test.tsx +0 -59
  342. package/src/components/input-label/InputLabel.tsx +0 -69
  343. package/src/components/input-label/index.ts +0 -1
  344. package/src/components/lightbox/Lightbox.stories.tsx +0 -101
  345. package/src/components/lightbox/Lightbox.test.tsx +0 -53
  346. package/src/components/lightbox/Lightbox.tsx +0 -180
  347. package/src/components/lightbox/index.ts +0 -1
  348. package/src/components/link/Link.stories.tsx +0 -195
  349. package/src/components/link/Link.test.tsx +0 -127
  350. package/src/components/link/Link.tsx +0 -106
  351. package/src/components/link/index.ts +0 -1
  352. package/src/components/link-preview/LinkPreview.stories.tsx +0 -61
  353. package/src/components/link-preview/LinkPreview.test.tsx +0 -105
  354. package/src/components/link-preview/LinkPreview.tsx +0 -158
  355. package/src/components/link-preview/index.ts +0 -1
  356. package/src/components/list/List.stories.tsx +0 -116
  357. package/src/components/list/List.test.tsx +0 -18
  358. package/src/components/list/List.tsx +0 -104
  359. package/src/components/list/ListDivider.stories.tsx +0 -12
  360. package/src/components/list/ListDivider.test.tsx +0 -22
  361. package/src/components/list/ListDivider.tsx +0 -35
  362. package/src/components/list/ListItem.stories.tsx +0 -66
  363. package/src/components/list/ListItem.test.tsx +0 -93
  364. package/src/components/list/ListItem.tsx +0 -157
  365. package/src/components/list/ListSubheader.stories.tsx +0 -11
  366. package/src/components/list/ListSubheader.test.tsx +0 -21
  367. package/src/components/list/ListSubheader.tsx +0 -44
  368. package/src/components/list/index.ts +0 -4
  369. package/src/components/list/useInteractiveList.tsx +0 -202
  370. package/src/components/message/Message.stories.tsx +0 -72
  371. package/src/components/message/Message.test.tsx +0 -76
  372. package/src/components/message/Message.tsx +0 -100
  373. package/src/components/message/index.ts +0 -1
  374. package/src/components/mosaic/Mosaic.stories.tsx +0 -89
  375. package/src/components/mosaic/Mosaic.test.tsx +0 -77
  376. package/src/components/mosaic/Mosaic.tsx +0 -98
  377. package/src/components/mosaic/index.ts +0 -1
  378. package/src/components/navigation/Navigation.stories.tsx +0 -234
  379. package/src/components/navigation/Navigation.test.tsx +0 -65
  380. package/src/components/navigation/Navigation.tsx +0 -79
  381. package/src/components/navigation/NavigationItem.test.tsx +0 -35
  382. package/src/components/navigation/NavigationItem.tsx +0 -82
  383. package/src/components/navigation/NavigationSection.test.tsx +0 -137
  384. package/src/components/navigation/NavigationSection.tsx +0 -108
  385. package/src/components/navigation/context.tsx +0 -7
  386. package/src/components/navigation/index.ts +0 -1
  387. package/src/components/notification/Notification.test.tsx +0 -94
  388. package/src/components/notification/Notification.tsx +0 -138
  389. package/src/components/notification/Notifications.stories.tsx +0 -92
  390. package/src/components/notification/constants.ts +0 -28
  391. package/src/components/notification/index.ts +0 -1
  392. package/src/components/popover/Popover.stories.tsx +0 -264
  393. package/src/components/popover/Popover.test.tsx +0 -62
  394. package/src/components/popover/Popover.tsx +0 -201
  395. package/src/components/popover/constants.ts +0 -62
  396. package/src/components/popover/index.ts +0 -3
  397. package/src/components/popover/usePopoverStyle.tsx +0 -184
  398. package/src/components/popover/useRestoreFocusOnClose.tsx +0 -47
  399. package/src/components/popover-dialog/PopoverDialog.stories.tsx +0 -64
  400. package/src/components/popover-dialog/PopoverDialog.test.tsx +0 -139
  401. package/src/components/popover-dialog/PopoverDialog.tsx +0 -74
  402. package/src/components/popover-dialog/index.tsx +0 -1
  403. package/src/components/post-block/PostBlock.test.tsx +0 -27
  404. package/src/components/post-block/PostBlock.tsx +0 -122
  405. package/src/components/post-block/index.ts +0 -1
  406. package/src/components/progress/Progress.tsx +0 -68
  407. package/src/components/progress/ProgressCircular.stories.tsx +0 -43
  408. package/src/components/progress/ProgressCircular.test.tsx +0 -46
  409. package/src/components/progress/ProgressCircular.tsx +0 -82
  410. package/src/components/progress/ProgressLinear.stories.tsx +0 -12
  411. package/src/components/progress/ProgressLinear.test.tsx +0 -30
  412. package/src/components/progress/ProgressLinear.tsx +0 -50
  413. package/src/components/progress/index.ts +0 -3
  414. package/src/components/progress-tracker/ProgressTracker.stories.tsx +0 -145
  415. package/src/components/progress-tracker/ProgressTracker.test.tsx +0 -42
  416. package/src/components/progress-tracker/ProgressTracker.tsx +0 -87
  417. package/src/components/progress-tracker/ProgressTrackerProvider.test.tsx +0 -65
  418. package/src/components/progress-tracker/ProgressTrackerProvider.tsx +0 -67
  419. package/src/components/progress-tracker/ProgressTrackerStep.test.tsx +0 -36
  420. package/src/components/progress-tracker/ProgressTrackerStep.tsx +0 -159
  421. package/src/components/progress-tracker/ProgressTrackerStepPanel.test.tsx +0 -34
  422. package/src/components/progress-tracker/ProgressTrackerStepPanel.tsx +0 -67
  423. package/src/components/progress-tracker/index.ts +0 -4
  424. package/src/components/radio-button/RadioButton.stories.tsx +0 -71
  425. package/src/components/radio-button/RadioButton.test.tsx +0 -143
  426. package/src/components/radio-button/RadioButton.tsx +0 -143
  427. package/src/components/radio-button/RadioGroup.stories.tsx +0 -39
  428. package/src/components/radio-button/RadioGroup.test.tsx +0 -29
  429. package/src/components/radio-button/RadioGroup.tsx +0 -44
  430. package/src/components/radio-button/index.ts +0 -2
  431. package/src/components/select/Select.stories.tsx +0 -385
  432. package/src/components/select/Select.test.tsx +0 -199
  433. package/src/components/select/Select.tsx +0 -199
  434. package/src/components/select/SelectMultiple.stories.tsx +0 -315
  435. package/src/components/select/SelectMultiple.test.tsx +0 -213
  436. package/src/components/select/SelectMultiple.tsx +0 -206
  437. package/src/components/select/WithSelectContext.tsx +0 -147
  438. package/src/components/select/constants.ts +0 -55
  439. package/src/components/select/index.ts +0 -2
  440. package/src/components/side-navigation/SideNavigation.stories.tsx +0 -191
  441. package/src/components/side-navigation/SideNavigation.test.tsx +0 -37
  442. package/src/components/side-navigation/SideNavigation.tsx +0 -52
  443. package/src/components/side-navigation/SideNavigationItem.stories.tsx +0 -133
  444. package/src/components/side-navigation/SideNavigationItem.test.tsx +0 -136
  445. package/src/components/side-navigation/SideNavigationItem.tsx +0 -165
  446. package/src/components/side-navigation/index.ts +0 -2
  447. package/src/components/skeleton/SkeletonCircle.stories.tsx +0 -41
  448. package/src/components/skeleton/SkeletonCircle.test.tsx +0 -27
  449. package/src/components/skeleton/SkeletonCircle.tsx +0 -52
  450. package/src/components/skeleton/SkeletonRectangle.stories.tsx +0 -82
  451. package/src/components/skeleton/SkeletonRectangle.test.tsx +0 -27
  452. package/src/components/skeleton/SkeletonRectangle.tsx +0 -88
  453. package/src/components/skeleton/SkeletonTypography.stories.tsx +0 -19
  454. package/src/components/skeleton/SkeletonTypography.test.tsx +0 -27
  455. package/src/components/skeleton/SkeletonTypography.tsx +0 -59
  456. package/src/components/skeleton/index.ts +0 -3
  457. package/src/components/slider/Slider.stories.tsx +0 -45
  458. package/src/components/slider/Slider.test.tsx +0 -29
  459. package/src/components/slider/Slider.tsx +0 -299
  460. package/src/components/slider/index.ts +0 -2
  461. package/src/components/slideshow/Slides.tsx +0 -130
  462. package/src/components/slideshow/Slideshow.stories.tsx +0 -179
  463. package/src/components/slideshow/Slideshow.test.tsx +0 -35
  464. package/src/components/slideshow/Slideshow.tsx +0 -173
  465. package/src/components/slideshow/SlideshowControls.stories.tsx +0 -100
  466. package/src/components/slideshow/SlideshowControls.tsx +0 -243
  467. package/src/components/slideshow/SlideshowItem.tsx +0 -44
  468. package/src/components/slideshow/SlideshowItemGroup.tsx +0 -60
  469. package/src/components/slideshow/constants.ts +0 -24
  470. package/src/components/slideshow/index.ts +0 -4
  471. package/src/components/slideshow/useKeyNavigate.ts +0 -28
  472. package/src/components/slideshow/usePaginationVisibleRange.ts +0 -37
  473. package/src/components/slideshow/useSlideFocusManagement.tsx +0 -92
  474. package/src/components/slideshow/useSwipeNavigate.ts +0 -18
  475. package/src/components/switch/Switch.stories.tsx +0 -49
  476. package/src/components/switch/Switch.test.tsx +0 -144
  477. package/src/components/switch/Switch.tsx +0 -145
  478. package/src/components/switch/index.ts +0 -1
  479. package/src/components/table/Table.test.tsx +0 -29
  480. package/src/components/table/Table.tsx +0 -59
  481. package/src/components/table/TableBody.test.tsx +0 -30
  482. package/src/components/table/TableBody.tsx +0 -42
  483. package/src/components/table/TableCell.test.tsx +0 -72
  484. package/src/components/table/TableCell.tsx +0 -130
  485. package/src/components/table/TableHeader.test.tsx +0 -30
  486. package/src/components/table/TableHeader.tsx +0 -48
  487. package/src/components/table/TableRow.test.tsx +0 -40
  488. package/src/components/table/TableRow.tsx +0 -71
  489. package/src/components/table/index.ts +0 -5
  490. package/src/components/tabs/Tab.test.tsx +0 -50
  491. package/src/components/tabs/Tab.tsx +0 -133
  492. package/src/components/tabs/TabList.test.tsx +0 -49
  493. package/src/components/tabs/TabList.tsx +0 -94
  494. package/src/components/tabs/TabPanel.test.tsx +0 -37
  495. package/src/components/tabs/TabPanel.tsx +0 -67
  496. package/src/components/tabs/TabProvider.test.tsx +0 -161
  497. package/src/components/tabs/TabProvider.tsx +0 -67
  498. package/src/components/tabs/Tabs.stories.tsx +0 -170
  499. package/src/components/tabs/index.ts +0 -4
  500. package/src/components/tabs/state.ts +0 -114
  501. package/src/components/tabs/test-utils.ts +0 -39
  502. package/src/components/text/Text.stories.tsx +0 -177
  503. package/src/components/text/Text.test.tsx +0 -92
  504. package/src/components/text/Text.tsx +0 -139
  505. package/src/components/text/index.ts +0 -1
  506. package/src/components/text-field/TextField.stories.tsx +0 -180
  507. package/src/components/text-field/TextField.test.tsx +0 -298
  508. package/src/components/text-field/TextField.tsx +0 -493
  509. package/src/components/text-field/index.ts +0 -1
  510. package/src/components/thumbnail/Thumbnail.stories.tsx +0 -448
  511. package/src/components/thumbnail/Thumbnail.test.tsx +0 -88
  512. package/src/components/thumbnail/Thumbnail.tsx +0 -248
  513. package/src/components/thumbnail/index.ts +0 -3
  514. package/src/components/thumbnail/types.ts +0 -48
  515. package/src/components/thumbnail/useFocusPointStyle.test.ts +0 -92
  516. package/src/components/thumbnail/useFocusPointStyle.tsx +0 -107
  517. package/src/components/thumbnail/useImageLoad.ts +0 -40
  518. package/src/components/toolbar/Toolbar.tsx +0 -68
  519. package/src/components/toolbar/index.ts +0 -1
  520. package/src/components/tooltip/Tooltip.stories.tsx +0 -118
  521. package/src/components/tooltip/Tooltip.test.tsx +0 -417
  522. package/src/components/tooltip/Tooltip.tsx +0 -165
  523. package/src/components/tooltip/constants.ts +0 -8
  524. package/src/components/tooltip/context.tsx +0 -17
  525. package/src/components/tooltip/index.ts +0 -1
  526. package/src/components/tooltip/useInjectTooltipRef.tsx +0 -55
  527. package/src/components/tooltip/useTooltipOpen.tsx +0 -143
  528. package/src/components/uploader/Uploader.stories.tsx +0 -109
  529. package/src/components/uploader/Uploader.test.tsx +0 -146
  530. package/src/components/uploader/Uploader.tsx +0 -177
  531. package/src/components/uploader/index.ts +0 -1
  532. package/src/components/user-block/UserBlock.stories.tsx +0 -133
  533. package/src/components/user-block/UserBlock.test.tsx +0 -106
  534. package/src/components/user-block/UserBlock.tsx +0 -193
  535. package/src/components/user-block/index.ts +0 -1
  536. package/src/constants.ts +0 -27
  537. package/src/hooks/useBooleanState.tsx +0 -13
  538. package/src/hooks/useCallbackOnEscape.ts +0 -34
  539. package/src/hooks/useChipGroupNavigation.tsx +0 -75
  540. package/src/hooks/useClickAway.tsx +0 -48
  541. package/src/hooks/useDisableBodyScroll.ts +0 -28
  542. package/src/hooks/useEventCallback.tsx +0 -17
  543. package/src/hooks/useFocus.tsx +0 -21
  544. package/src/hooks/useFocusTrap.ts +0 -93
  545. package/src/hooks/useFocusWithin.ts +0 -33
  546. package/src/hooks/useId.test.tsx +0 -22
  547. package/src/hooks/useId.ts +0 -15
  548. package/src/hooks/useImageSize.ts +0 -17
  549. package/src/hooks/useInfiniteScroll.tsx +0 -60
  550. package/src/hooks/useIntersectionObserver.tsx +0 -43
  551. package/src/hooks/useInterval.tsx +0 -31
  552. package/src/hooks/useKeyboardListNavigation.tsx +0 -204
  553. package/src/hooks/useListenFocus.tsx +0 -26
  554. package/src/hooks/useOverflowTooltipLabel.tsx +0 -32
  555. package/src/hooks/usePopper.ts +0 -12
  556. package/src/hooks/usePreviousValue.ts +0 -12
  557. package/src/hooks/useRovingTabIndex.tsx +0 -90
  558. package/src/hooks/useSizeOnWindowResize.ts +0 -30
  559. package/src/hooks/useSlideshowControls.ts +0 -246
  560. package/src/hooks/useStopPropagation.ts +0 -21
  561. package/src/hooks/useTransitionVisibility.ts +0 -48
  562. package/src/index.ts +0 -63
  563. package/src/stories/controls/color.ts +0 -7
  564. package/src/stories/controls/element.ts +0 -6
  565. package/src/stories/controls/focusPoint.ts +0 -1
  566. package/src/stories/controls/icons.ts +0 -126
  567. package/src/stories/controls/image.ts +0 -84
  568. package/src/stories/controls/selectArgType.ts +0 -8
  569. package/src/stories/controls/theme.ts +0 -3
  570. package/src/stories/controls/typography.ts +0 -5
  571. package/src/stories/controls/withUndefined.ts +0 -1
  572. package/src/stories/decorators/withChromaticForceScreenSize.tsx +0 -7
  573. package/src/stories/decorators/withCombinations.tsx +0 -132
  574. package/src/stories/decorators/withNestedProps.tsx +0 -22
  575. package/src/stories/decorators/withResizableBox.tsx +0 -21
  576. package/src/stories/decorators/withThemedBackground.tsx +0 -16
  577. package/src/stories/decorators/withValueOnChange.tsx +0 -18
  578. package/src/stories/decorators/withWrapper.tsx +0 -19
  579. package/src/stories/generated/Autocomplete/Demos.stories.tsx +0 -7
  580. package/src/stories/generated/Avatar/Demos.stories.tsx +0 -7
  581. package/src/stories/generated/Badge/Demos.stories.tsx +0 -9
  582. package/src/stories/generated/Button/Demos.stories.tsx +0 -11
  583. package/src/stories/generated/Checkbox/Demos.stories.tsx +0 -6
  584. package/src/stories/generated/Chip/Demos.stories.tsx +0 -11
  585. package/src/stories/generated/CommentBlock/Demos.stories.tsx +0 -8
  586. package/src/stories/generated/DatePicker/Demos.stories.tsx +0 -8
  587. package/src/stories/generated/Dialog/Demos.stories.tsx +0 -10
  588. package/src/stories/generated/Divider/Demos.stories.tsx +0 -6
  589. package/src/stories/generated/Dropdown/Demos.stories.tsx +0 -8
  590. package/src/stories/generated/ExpansionPanel/Demos.stories.tsx +0 -9
  591. package/src/stories/generated/Flag/Demos.stories.tsx +0 -6
  592. package/src/stories/generated/GenericBlock/Demos.stories.tsx +0 -8
  593. package/src/stories/generated/Heading/Demos.stories.tsx +0 -6
  594. package/src/stories/generated/Icon/Demos.stories.tsx +0 -8
  595. package/src/stories/generated/ImageBlock/Demos.stories.tsx +0 -9
  596. package/src/stories/generated/ImageLightbox/Demos.stories.tsx +0 -6
  597. package/src/stories/generated/Lightbox/Demos.stories.tsx +0 -6
  598. package/src/stories/generated/LinkPreview/Demos.stories.tsx +0 -7
  599. package/src/stories/generated/List/Demos.stories.tsx +0 -11
  600. package/src/stories/generated/Message/Demos.stories.tsx +0 -11
  601. package/src/stories/generated/Mosaic/Demos.stories.tsx +0 -10
  602. package/src/stories/generated/Notification/Demos.stories.tsx +0 -6
  603. package/src/stories/generated/Popover/Demos.stories.tsx +0 -11
  604. package/src/stories/generated/PopoverDialog/Demos.stories.tsx +0 -6
  605. package/src/stories/generated/PostBlock/Demos.stories.tsx +0 -6
  606. package/src/stories/generated/Progress/Demos.stories.tsx +0 -7
  607. package/src/stories/generated/ProgressTracker/Demos.stories.tsx +0 -9
  608. package/src/stories/generated/RadioButton/Demos.stories.tsx +0 -6
  609. package/src/stories/generated/Select/Demos.stories.tsx +0 -14
  610. package/src/stories/generated/SideNavigation/Demos.stories.tsx +0 -10
  611. package/src/stories/generated/Skeleton/Demos.stories.tsx +0 -9
  612. package/src/stories/generated/Slider/Demos.stories.tsx +0 -9
  613. package/src/stories/generated/Slideshow/Demos.stories.tsx +0 -8
  614. package/src/stories/generated/Switch/Demos.stories.tsx +0 -6
  615. package/src/stories/generated/Table/Demos.stories.tsx +0 -7
  616. package/src/stories/generated/Tabs/Demos.stories.tsx +0 -8
  617. package/src/stories/generated/TextField/Demos.stories.tsx +0 -20
  618. package/src/stories/generated/Thumbnail/Demos.stories.tsx +0 -12
  619. package/src/stories/generated/Toolbar/Demos.stories.tsx +0 -10
  620. package/src/stories/generated/Tooltip/Demos.stories.tsx +0 -8
  621. package/src/stories/generated/Uploader/Demos.stories.tsx +0 -8
  622. package/src/stories/generated/UserBlock/Demos.stories.tsx +0 -11
  623. package/src/stories/utils/CustomLink.tsx +0 -12
  624. package/src/stories/utils/concatPath.tsx +0 -17
  625. package/src/stories/utils/disableArgTypes.ts +0 -3
  626. package/src/stories/utils/initDemoShadowDOMPortal.ts +0 -10
  627. package/src/stories/utils/lorem.ts +0 -59
  628. package/src/stories/utils/theming.tsx +0 -166
  629. package/src/stories/utils/toFlattenProps.ts +0 -28
  630. package/src/stories/utils/withCategory.ts +0 -12
  631. package/src/testing/utils/ThemeSentinel.tsx +0 -10
  632. package/src/testing/utils/commonTestsSuiteRTL.tsx +0 -193
  633. package/src/testing/utils/index.ts +0 -1
  634. package/src/testing/utils/queries.ts +0 -19
  635. package/src/untypped-modules.d.ts +0 -9
  636. package/src/utils/ClickAwayProvider/ClickAwayProvider.stories.jsx +0 -70
  637. package/src/utils/ClickAwayProvider/ClickAwayProvider.tsx +0 -69
  638. package/src/utils/ClickAwayProvider/index.ts +0 -1
  639. package/src/utils/MaterialThemeSwitcher/MaterialThemeSwitcher.tsx +0 -54
  640. package/src/utils/MaterialThemeSwitcher/index.ts +0 -1
  641. package/src/utils/Portal/Portal.test.tsx +0 -31
  642. package/src/utils/Portal/Portal.tsx +0 -33
  643. package/src/utils/Portal/PortalProvider.stories.jsx +0 -22
  644. package/src/utils/Portal/PortalProvider.test.tsx +0 -72
  645. package/src/utils/Portal/PortalProvider.tsx +0 -24
  646. package/src/utils/Portal/index.tsx +0 -2
  647. package/src/utils/browser/DOM/findImage.tsx +0 -3
  648. package/src/utils/browser/DOM/startViewTransition.ts +0 -68
  649. package/src/utils/browser/focus/constants.ts +0 -7
  650. package/src/utils/browser/focus/getFirstAndLastFocusable.test.ts +0 -134
  651. package/src/utils/browser/focus/getFirstAndLastFocusable.ts +0 -21
  652. package/src/utils/browser/focus/getFocusableElements.test.ts +0 -151
  653. package/src/utils/browser/focus/getFocusableElements.ts +0 -7
  654. package/src/utils/browser/isFocusVisible.ts +0 -9
  655. package/src/utils/browser/isHoverNotSupported.test.js +0 -24
  656. package/src/utils/browser/isHoverNotSupported.ts +0 -2
  657. package/src/utils/browser/isReducedMotion.ts +0 -6
  658. package/src/utils/date/addMonthResetDay.test.ts +0 -13
  659. package/src/utils/date/addMonthResetDay.ts +0 -9
  660. package/src/utils/date/formatDayNumber.test.ts +0 -12
  661. package/src/utils/date/formatDayNumber.ts +0 -5
  662. package/src/utils/date/getFirstDayOfWeek.test.ts +0 -20
  663. package/src/utils/date/getFirstDayOfWeek.ts +0 -59
  664. package/src/utils/date/getMonthCalendar.test.ts +0 -127
  665. package/src/utils/date/getMonthCalendar.ts +0 -69
  666. package/src/utils/date/getWeekDays.test.ts +0 -48
  667. package/src/utils/date/getWeekDays.ts +0 -34
  668. package/src/utils/date/getYearDisplayName.test.ts +0 -20
  669. package/src/utils/date/getYearDisplayName.ts +0 -12
  670. package/src/utils/date/isDateValid.test.ts +0 -15
  671. package/src/utils/date/isDateValid.ts +0 -4
  672. package/src/utils/date/isSameDay.test.ts +0 -37
  673. package/src/utils/date/isSameDay.ts +0 -11
  674. package/src/utils/disabled/DisabledStateContext.tsx +0 -29
  675. package/src/utils/disabled/DisabledStateProvider.stories.tsx +0 -92
  676. package/src/utils/disabled/index.ts +0 -2
  677. package/src/utils/disabled/useDisableStateProps.test.tsx +0 -74
  678. package/src/utils/disabled/useDisableStateProps.tsx +0 -37
  679. package/src/utils/function/makeListenerTowerContext.ts +0 -32
  680. package/src/utils/index.ts +0 -7
  681. package/src/utils/locale/getCurrentLocale.ts +0 -4
  682. package/src/utils/locale/parseLocale.test.ts +0 -17
  683. package/src/utils/locale/parseLocale.ts +0 -23
  684. package/src/utils/locale/types.ts +0 -8
  685. package/src/utils/number/clamp.ts +0 -17
  686. package/src/utils/object/isEqual.test.ts +0 -25
  687. package/src/utils/object/isEqual.ts +0 -11
  688. package/src/utils/partitionMulti.test.ts +0 -27
  689. package/src/utils/react/OnBeforeUnmount.tsx +0 -20
  690. package/src/utils/react/RawClickable.test.tsx +0 -153
  691. package/src/utils/react/RawClickable.tsx +0 -65
  692. package/src/utils/react/flattenChildren.ts +0 -32
  693. package/src/utils/react/forwardRef.ts +0 -11
  694. package/src/utils/react/forwardRefPolymorphic.ts +0 -9
  695. package/src/utils/react/mergeRefs.ts +0 -33
  696. package/src/utils/react/renderLink.tsx +0 -17
  697. package/src/utils/react/skipRender.tsx +0 -18
  698. package/src/utils/react/unref.ts +0 -7
  699. package/src/utils/react/wrapChildrenIconWithSpaces.test.tsx +0 -37
  700. package/src/utils/react/wrapChildrenIconWithSpaces.tsx +0 -22
  701. package/src/utils/theme/ThemeContext.ts +0 -16
  702. package/src/utils/theme/invertTheme.ts +0 -4
  703. package/src/utils/type/Comp.ts +0 -14
  704. package/src/utils/type/ComponentRef.ts +0 -16
  705. package/src/utils/type/HasAriaDisabled.ts +0 -6
  706. package/src/utils/type/HasPolymorphicAs.ts +0 -6
  707. package/src/utils/type/HasRequiredLinkHref.ts +0 -1
  708. package/src/utils/type/MaybeElementOrRef.ts +0 -6
  709. package/src/utils/type/index.ts +0 -9
  710. package/src/utils/type/isComponent.ts +0 -33
  711. package/src/utils/type/isComponentType.ts +0 -9
@@ -1,166 +0,0 @@
1
- import React from 'react';
2
- import { Predicate } from '@lumx/react/utils/type';
3
- import { FlexBox } from '@lumx/react';
4
-
5
- type Property = string | { value: string };
6
- interface PropertyTree {
7
- [key: string]: PropertyTree | Property;
8
- }
9
- type Entry = [key: string, value: string];
10
- type Variables = Record<string, string>;
11
-
12
- function asValue(prop?: PropertyTree | Property): string | undefined {
13
- if (typeof prop === 'string') {
14
- return prop;
15
- }
16
- if (typeof prop === 'object' && 'value' in prop) {
17
- return prop.value as string;
18
- }
19
- return undefined;
20
- }
21
-
22
- /** Convert property tree into a list of args entries ([key, value]) */
23
- function* toArgEntries(props: PropertyTree | Property, parent = ''): Iterable<Entry> {
24
- const value = asValue(props);
25
- if (value) {
26
- yield [parent, value];
27
- } else {
28
- for (const [key, prop] of Object.entries(props)) {
29
- const newParent = parent ? `${parent}-${key}` : key;
30
- yield* toArgEntries(prop, newParent);
31
- }
32
- }
33
- }
34
- function* parseVariableEntries(cssString: string, strict = false) {
35
- for (const line of cssString.split(/(?<=;)/)) {
36
- if (!line.trim()) continue;
37
- const match = line.match(/^\s*(--lumx[^:]+)\s*:\s*([^;]+);/m);
38
- if (!match) {
39
- if (strict) throw new Error(`Could not parse \`${line}\``);
40
- else continue;
41
- }
42
- const [, variableName, variableValue] = match;
43
- yield [variableName, variableValue];
44
- }
45
- }
46
-
47
- function VariableEditor({
48
- variable: [key, value],
49
- setVariable,
50
- defaultStyle,
51
- }: {
52
- variable: Entry;
53
- setVariable: (newVariable: Entry) => void;
54
- defaultStyle: Variables;
55
- }) {
56
- const onChange = React.useCallback<React.ChangeEventHandler<HTMLInputElement>>(
57
- (evt) => {
58
- setVariable([evt.target.name, evt.target.value]);
59
- },
60
- [setVariable],
61
- );
62
-
63
- return (
64
- <FlexBox as="label" orientation="horizontal" hAlign="center" style={{ whiteSpace: 'nowrap' }}>
65
- <span style={{ flexShrink: 0 }}>{key}</span>:
66
- <input
67
- name={key}
68
- onChange={onChange}
69
- style={{ border: 0, padding: 8, fieldSizing: 'content', display: 'inline' } as any}
70
- value={defaultStyle[key] === value ? '' : value}
71
- placeholder={value}
72
- />
73
- ;
74
- </FlexBox>
75
- );
76
- }
77
-
78
- function VariablesEditor({
79
- style,
80
- defaultStyle,
81
- setStyle,
82
- }: {
83
- style: Variables;
84
- defaultStyle: Variables;
85
- setStyle: (fn: (newStyle: Variables) => Variables) => void;
86
- }) {
87
- const setVariable = React.useCallback(
88
- ([key, value]: Entry) => {
89
- setStyle((prevStyle) => ({ ...prevStyle, [key]: value }));
90
- },
91
- [setStyle],
92
- );
93
- return (
94
- <details style={{ fontFamily: 'monospace' }} className="lumx-spacing-margin-vertical-huge">
95
- <summary className="lumx-typography-subtitle2">Edit variables</summary>
96
- {Object.entries(style).map((variable) => (
97
- <VariableEditor
98
- key={variable[0]}
99
- defaultStyle={defaultStyle}
100
- variable={variable}
101
- setVariable={setVariable}
102
- />
103
- ))}
104
- </details>
105
- );
106
- }
107
-
108
- const FILTER_PROPS = ['theme', 'emphasis', 'size'];
109
-
110
- export function withTheming<P extends PropertyTree>({
111
- properties,
112
- values,
113
- }: {
114
- properties?: P;
115
- values?: string | Partial<P>;
116
- }) {
117
- const initialStyle = values
118
- ? Object.fromEntries(
119
- typeof values === 'string'
120
- ? parseVariableEntries(values)
121
- : toArgEntries(values as PropertyTree, '--lumx'),
122
- )
123
- : [];
124
- const defaultStyle = Object.fromEntries(properties ? Array.from(toArgEntries(properties, '--lumx')) : []);
125
-
126
- const varNames = new Set(Object.keys(initialStyle).concat(Object.keys(defaultStyle)));
127
-
128
- function filteredStyles(args: any) {
129
- // Create predicate
130
- const filterArgs = Object.entries(args)
131
- .map(([argName, argValue]) => {
132
- if (typeof argValue === 'string' && FILTER_PROPS.includes(argName)) {
133
- return (varName: string) =>
134
- // Has the given arg with value
135
- varName.match(new RegExp(`${argName}-${argValue}`)) ||
136
- (argName === 'emphasis' &&
137
- (argValue === 'medium' || argValue === 'low') &&
138
- varName.match(/emphasis-selected/)) ||
139
- // Or does not have the arg at all
140
- !varName.match(new RegExp(`${argName}-\\w+`));
141
- }
142
- return false;
143
- })
144
- .filter(Boolean) as Array<Predicate<string>>;
145
- const styles = Object.fromEntries(
146
- Array.from(varNames.values())
147
- .map((varName) => {
148
- if (!filterArgs.every((filter) => filter(varName))) return null as any;
149
- return [varName, initialStyle[varName] || defaultStyle[varName]];
150
- })
151
- .filter(Boolean),
152
- );
153
- return () => styles;
154
- }
155
-
156
- return (Story: any, ctx: any) => {
157
- const [style, setStyle] = React.useState<Variables>(filteredStyles(ctx.args));
158
-
159
- return (
160
- <>
161
- <Story args={{ ...ctx.args, style: { ...ctx.args.style, ...style } }} />
162
- <VariablesEditor style={style} defaultStyle={defaultStyle} setStyle={setStyle} />
163
- </>
164
- );
165
- };
166
- }
@@ -1,28 +0,0 @@
1
- import castArray from 'lodash/castArray';
2
- import { concatPath } from './concatPath';
3
-
4
- type Props = Record<string, any>;
5
- type OneOrMoreProps = Props | Array<Props>;
6
-
7
- /**
8
- * Build a flat props object from the given nested props
9
- *
10
- * @example toFlattenProps({ foo: { bar: 4 } }) // => { 'foo.bar': 4 }
11
- * @example toFlattenProps({ foo: [{ bar: 4 }, { bar: 5 }] }) // => { 'foo[0].bar': 4, 'foo[0].bar': 5 }
12
- */
13
- export function toFlattenProps(props: { [prefix: string]: OneOrMoreProps }): Props {
14
- const out: Props = {};
15
- for (const [prefix, oneOrMoreProps] of Object.entries(props)) {
16
- const propsArray = castArray(oneOrMoreProps);
17
-
18
- for (let i = 0; i < propsArray.length; i += 1) {
19
- const path = Array.isArray(oneOrMoreProps) ? concatPath(prefix, i) : prefix;
20
- const subProps = propsArray[i];
21
-
22
- for (const [key, value] of Object.entries(subProps)) {
23
- out[concatPath(path, key)] = value;
24
- }
25
- }
26
- }
27
- return out;
28
- }
@@ -1,12 +0,0 @@
1
- import setWith from 'lodash/setWith';
2
-
3
- /**
4
- * Add table.category to the provided argTypes
5
- */
6
- export function withCategory(category: string, argTypes: Record<string, any>) {
7
- const out: typeof argTypes = {};
8
- for (const [key, value] of Object.entries(argTypes)) {
9
- out[key] = setWith({ ...value }, 'table.category', category);
10
- }
11
- return out;
12
- }
@@ -1,10 +0,0 @@
1
- import { useTheme } from '@lumx/react/utils/theme/ThemeContext';
2
-
3
- const TEST_ID = 'theme-sentinel';
4
-
5
- /** Test component used as sentinel to detect the value of the theme context */
6
- export function ThemeSentinel() {
7
- const theme = useTheme();
8
- return <div data-testid={TEST_ID} className={`--theme-${theme}`} />;
9
- }
10
- ThemeSentinel.testId = TEST_ID;
@@ -1,193 +0,0 @@
1
- import isEmpty from 'lodash/isEmpty';
2
-
3
- import { GenericProps } from '@lumx/react/utils/type';
4
- import { queryByClassName } from '@lumx/react/testing/utils/queries';
5
- import React from 'react';
6
- import { Theme } from '@lumx/react';
7
- import { RenderOptions } from '@testing-library/react';
8
- import { ThemeProvider } from '@lumx/react/utils/theme/ThemeContext';
9
- import castArray from 'lodash/castArray';
10
- import { invertTheme } from '@lumx/react/utils/theme/invertTheme';
11
-
12
- interface CommonSetup {
13
- props: GenericProps;
14
- }
15
-
16
- type AffectConfig<E> = { element: E; classModifier?: 'color' | 'theme'; inverted?: boolean };
17
- type Not<E> = { not: E };
18
-
19
- interface Options<S extends CommonSetup> {
20
- baseClassName: string;
21
- forwardClassName?: keyof S;
22
- forwardAttributes?: keyof S;
23
- forwardRef?: keyof S;
24
- applyTheme?: {
25
- /** Element(s) to which we apply the theme class */
26
- affects: Array<AffectConfig<keyof S> | Not<AffectConfig<keyof S>>>;
27
- /** Apply theme via theme prop */
28
- viaProp: boolean;
29
- /** Apply theme via theme context */
30
- viaContext: boolean;
31
- /** Apply a default theme if no prop or context was provided */
32
- defaultTheme?: Theme;
33
- /** Default props to apply when testing theme */
34
- defaultProps?: S['props'];
35
- };
36
- }
37
-
38
- export type RenderWrapper = RenderOptions['wrapper'];
39
- export type SetupRenderOptions = { wrapper?: RenderWrapper };
40
- export type SetupFunction<S extends CommonSetup> = (
41
- props?: GenericProps,
42
- options?: SetupRenderOptions,
43
- ) => S | Promise<S>;
44
-
45
- /**
46
- * Common tests on components
47
- * - Check base class name and class name forwarding
48
- * - Check props forwarding
49
- */
50
- export function commonTestsSuiteRTL<S extends CommonSetup>(setup: SetupFunction<S>, options: Options<S>): void {
51
- if (isEmpty(options)) {
52
- return;
53
- }
54
- const { baseClassName, forwardClassName, forwardAttributes, forwardRef, applyTheme } = options;
55
- describe('Common tests suite', () => {
56
- it('should render with base class name', async () => {
57
- await setup();
58
- expect(queryByClassName(document.body, baseClassName)).toBeInTheDocument();
59
- });
60
-
61
- if (forwardClassName) {
62
- it('should forward any CSS class', async () => {
63
- const modifiedProps = {
64
- className: 'component component--is-tested',
65
- };
66
- const wrappers = await setup(modifiedProps);
67
- expect(wrappers[forwardClassName]).toHaveClass(modifiedProps.className);
68
- });
69
- }
70
-
71
- if (forwardAttributes) {
72
- it('should forward any other prop', async () => {
73
- const modifiedProps = {
74
- winter: 'is coming',
75
- };
76
- const wrappers = await setup(modifiedProps);
77
- expect(wrappers[forwardAttributes]).toHaveAttribute('winter', modifiedProps.winter);
78
- });
79
- }
80
-
81
- if (forwardRef) {
82
- it('should forward ref', async () => {
83
- const ref = React.createRef();
84
- const wrappers = await setup({ ref });
85
- expect(ref.current).toBe(wrappers[forwardRef]);
86
- });
87
- }
88
-
89
- if (applyTheme) {
90
- describe('theme', () => {
91
- const { affects, defaultTheme, viaProp, viaContext } = applyTheme;
92
- const testElements = affects.map((configOrNot) => {
93
- let shouldHaveModifier: boolean = true;
94
- let config: AffectConfig<any>;
95
- if ('not' in configOrNot) {
96
- shouldHaveModifier = false;
97
- config = configOrNot.not;
98
- } else config = configOrNot;
99
-
100
- const {
101
- element,
102
- classModifier = 'theme',
103
- inverted = false,
104
- }: AffectConfig<any> = typeof config === 'object' ? config : { element: config };
105
- return {
106
- element,
107
- getExpectedClassModifier: (theme: Theme) =>
108
- `--${classModifier}-${inverted ? invertTheme(theme) : theme}`,
109
- shouldHaveModifier,
110
- apply: shouldHaveModifier ? 'apply' : 'not apply',
111
- };
112
- });
113
-
114
- const expectTheme = (
115
- wrappers: any,
116
- { element, getExpectedClassModifier, shouldHaveModifier }: any,
117
- theme: Theme,
118
- override: { shouldHaveModifier?: boolean } = {},
119
- ) => {
120
- for (const wrapper of castArray(wrappers[element])) {
121
- let expected: any = expect(wrapper.className);
122
- if (override.shouldHaveModifier === false || !shouldHaveModifier) {
123
- expected = expected.not;
124
- }
125
- expected.toContain(getExpectedClassModifier(theme));
126
- }
127
- };
128
-
129
- if (defaultTheme) {
130
- it.each(testElements)(
131
- `should $apply default theme (${defaultTheme}) to \`$element\``,
132
- async (affectedElement) => {
133
- const wrappers = await setup(applyTheme.defaultProps);
134
- expectTheme(wrappers, affectedElement, defaultTheme);
135
- },
136
- );
137
- }
138
-
139
- // Only the elements that are affected by theme
140
- const affectedElements = testElements.filter((e) => e.shouldHaveModifier);
141
- if (!defaultTheme && affectedElements.length) {
142
- it.each(affectedElements)(
143
- `should not apply default theme (${defaultTheme}) to \`$element\``,
144
- async (affectedElement) => {
145
- const wrappers = await setup(applyTheme.defaultProps);
146
- expectTheme(wrappers, affectedElement, Theme.light, { shouldHaveModifier: false });
147
- expectTheme(wrappers, affectedElement, Theme.dark, { shouldHaveModifier: false });
148
- },
149
- );
150
- }
151
-
152
- if (viaProp) {
153
- const theme = invertTheme(defaultTheme || Theme.light);
154
- it.each(testElements)(
155
- `should $apply prop theme=${theme} to \`$element\``,
156
- async (affectedElement) => {
157
- const wrappers = await setup({ ...applyTheme.defaultProps, theme });
158
- expectTheme(wrappers, affectedElement, theme);
159
- },
160
- );
161
- }
162
-
163
- const contextTheme = invertTheme(defaultTheme || Theme.light);
164
- it.each(testElements)(
165
- `should $apply context theme=${contextTheme} to \`$element\``,
166
- async (affectedElement) => {
167
- const Wrapper = ({ children }: any) => (
168
- <ThemeProvider value={contextTheme}>{children}</ThemeProvider>
169
- );
170
- const wrappers = await setup({}, { wrapper: Wrapper });
171
- expectTheme(wrappers, affectedElement, contextTheme, {
172
- shouldHaveModifier: !viaContext ? false : undefined,
173
- });
174
- },
175
- );
176
-
177
- if (viaProp && viaContext) {
178
- const propTheme = invertTheme(contextTheme);
179
- it.each(testElements)(
180
- `should $apply prop theme=${propTheme} to \`$element\` overriding the context theme=${contextTheme}`,
181
- async (affectedElement) => {
182
- const Wrapper = ({ children }: any) => (
183
- <ThemeProvider value={contextTheme}>{children}</ThemeProvider>
184
- );
185
- const wrappers = await setup({ theme: propTheme }, { wrapper: Wrapper });
186
- expectTheme(wrappers, affectedElement, propTheme);
187
- },
188
- );
189
- }
190
- });
191
- }
192
- });
193
- }
@@ -1 +0,0 @@
1
- export * from './commonTestsSuiteRTL';
@@ -1,19 +0,0 @@
1
- import { buildQueries } from '@testing-library/dom';
2
-
3
- export const queryAllByClassName = (container: HTMLElement, className: string) =>
4
- Array.from(container.getElementsByClassName(className) as HTMLCollectionOf<HTMLElement>);
5
-
6
- export const [queryByClassName, getAllByClassName, getByClassName, findAllByClassName, findByClassName] = buildQueries(
7
- queryAllByClassName,
8
- (_, className) => `Multiple \`.${className}\` found`,
9
- (_, className) => `No \`.${className}\` found`,
10
- );
11
-
12
- export const queryAllByTagName = (container: HTMLElement, tagName: string) =>
13
- Array.from(container.getElementsByTagName(tagName) as HTMLCollectionOf<HTMLElement>);
14
-
15
- export const [queryByTagName, getAllByTagName, getByTagName, findAllByTagName, findByTagName] = buildQueries(
16
- queryAllByTagName,
17
- (_, tagName) => `Multiple \`${tagName}\` found`,
18
- (_, tagName) => `No \`${tagName}\` found`,
19
- );
@@ -1,9 +0,0 @@
1
- // Extend CSSStyleDeclaration to support viewTransitionName for view transitions
2
- interface CSSStyleDeclaration {
3
- viewTransitionName: string | null;
4
- }
5
- /**
6
- * List untypped modules here to declare them as explicit any.
7
- */
8
- declare module 'test-data-bot';
9
- declare module '*.jpg';
@@ -1,70 +0,0 @@
1
- /* eslint-disable react-hooks/rules-of-hooks */
2
- /* eslint-disable @typescript-eslint/no-use-before-define */
3
- import { useCallback, useRef, useState } from 'react';
4
- import { Button } from '@lumx/react';
5
- import { ClickAwayProvider } from '@lumx/react/utils/ClickAwayProvider';
6
- import { initDemoShadowDOMPortal } from '@lumx/react/stories/utils/initDemoShadowDOMPortal';
7
- import { PortalProvider, Portal } from '@lumx/react/utils/Portal';
8
-
9
- export default {
10
- title: 'LumX components/ClickAwayProvider',
11
- parameters: {
12
- // Disables Chromatic snapshot (not relevant for this story).
13
- chromatic: { disable: true },
14
- },
15
- };
16
-
17
- // eslint-disable-next-line react/display-name
18
- const Card = React.forwardRef(({ top, children, close }, ref) => (
19
- <ClickAwayProvider callback={close} childrenRefs={useRef([ref])}>
20
- <Portal>
21
- <div
22
- className="lumx-spacing-padding"
23
- ref={ref}
24
- style={{ position: 'absolute', top, border: '1px solid red' }}
25
- >
26
- {children}
27
- </div>
28
- </Portal>
29
- </ClickAwayProvider>
30
- ));
31
-
32
- const ButtonWithCard = ({ level, parentRef }) => {
33
- const ref3 = useRef();
34
- const [isOpen3, setOpen3] = useState(false);
35
- const open3 = useCallback(() => setOpen3(true), []);
36
- const close3 = useCallback(() => setOpen3(false), []);
37
- const nextLevel = level + 1;
38
-
39
- return (
40
- <>
41
- Level {level} - <Button onClick={open3}>Open level {nextLevel}</Button>
42
- {isOpen3 && (
43
- <Card ref={ref3} close={close3} top={parentRef?.current?.getBoundingClientRect().bottom || '130px'}>
44
- {nextLevel === 4 ? `Level ${nextLevel}` : <ButtonWithCard level={nextLevel} parentRef={ref3} />}
45
- </Card>
46
- )}
47
- </>
48
- );
49
- };
50
-
51
- /**
52
- * This story showcases the detection of click away inside a nested React portal tree (i.e. not nested in the DOM)
53
- */
54
- export const NestedClickAway = () => (
55
- <>
56
- <p>Clicking inside a level should close all child levels but not parent levels</p>
57
- <ButtonWithCard level={0} />
58
- </>
59
- );
60
-
61
- /**
62
- * Testing close on click away for a popover rendered in a shadow DOM
63
- */
64
- export const InShadowDOM = () => {
65
- return (
66
- <PortalProvider value={initDemoShadowDOMPortal}>
67
- <NestedClickAway />
68
- </PortalProvider>
69
- );
70
- };
@@ -1,69 +0,0 @@
1
- import { createContext, RefObject, useContext, useEffect, useMemo, useRef } from 'react';
2
- import { ClickAwayParameters, useClickAway } from '@lumx/react/hooks/useClickAway';
3
-
4
- interface ContextValue {
5
- childrenRefs: Array<RefObject<HTMLElement>>;
6
- addRefs(...newChildrenRefs: Array<RefObject<HTMLElement>>): void;
7
- }
8
-
9
- const ClickAwayAncestorContext = createContext<ContextValue | null>(null);
10
-
11
- interface ClickAwayProviderProps extends ClickAwayParameters {
12
- /**
13
- * (Optional) Element that should be considered as part of the parent
14
- */
15
- parentRef?: RefObject<HTMLElement>;
16
- /**
17
- * Children
18
- */
19
- children?: React.ReactNode;
20
- }
21
-
22
- /**
23
- * Component combining the `useClickAway` hook with a React context to hook into the React component tree and make sure
24
- * we take into account both the DOM tree and the React tree to detect click away.
25
- *
26
- * @return the react component.
27
- */
28
- export const ClickAwayProvider: React.FC<ClickAwayProviderProps> = ({
29
- children,
30
- callback,
31
- childrenRefs,
32
- parentRef,
33
- }) => {
34
- const parentContext = useContext(ClickAwayAncestorContext);
35
- const currentContext = useMemo(() => {
36
- const context: ContextValue = {
37
- childrenRefs: [],
38
- /**
39
- * Add element refs to the current context and propagate to the parent context.
40
- */
41
- addRefs(...newChildrenRefs) {
42
- // Add element refs that should be considered as inside the click away context.
43
- context.childrenRefs.push(...newChildrenRefs);
44
-
45
- if (parentContext) {
46
- // Also add then to the parent context
47
- parentContext.addRefs(...newChildrenRefs);
48
- if (parentRef) {
49
- // The parent element is also considered as inside the parent click away context but not inside the current context
50
- parentContext.addRefs(parentRef);
51
- }
52
- }
53
- },
54
- };
55
- return context;
56
- }, [parentContext, parentRef]);
57
-
58
- useEffect(() => {
59
- const { current: currentRefs } = childrenRefs;
60
- if (!currentRefs) {
61
- return;
62
- }
63
- currentContext.addRefs(...currentRefs);
64
- }, [currentContext, childrenRefs]);
65
-
66
- useClickAway({ callback, childrenRefs: useRef(currentContext.childrenRefs) });
67
- return <ClickAwayAncestorContext.Provider value={currentContext}>{children}</ClickAwayAncestorContext.Provider>;
68
- };
69
- ClickAwayProvider.displayName = 'ClickAwayProvider';
@@ -1 +0,0 @@
1
- export * from './ClickAwayProvider';
@@ -1,54 +0,0 @@
1
- import { useCallback, useState } from 'react';
2
- import { Switch } from '@lumx/react/components/switch';
3
- import { Alignment } from '@lumx/react';
4
-
5
- // Global state used to
6
- const globalState = {
7
- isEnabled: false,
8
- styleSheet: null as any,
9
- };
10
-
11
- /** Toggle apply the material CSS override. */
12
- export async function toggleMaterialTheme(wasEnabled: boolean) {
13
- globalState.isEnabled = !wasEnabled;
14
-
15
- // Inject the material theme CSS file.
16
- if (!globalState.styleSheet) {
17
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
18
- // @ts-ignore
19
- const cssCode = await import('!!raw-loader!@lumx/core/css/material.css');
20
-
21
- // Inject CSS override in a <style> node in <head>
22
- const style = document.createElement('style');
23
- style.textContent = cssCode.default;
24
- document.head.appendChild(style);
25
-
26
- globalState.styleSheet = style.sheet;
27
- }
28
- // Disable/Enable stylesheet
29
- globalState.styleSheet.disabled = !globalState.isEnabled;
30
- }
31
-
32
- export const MaterialThemeSwitcher: React.FC<any> = ({ theme }) => {
33
- const [isEnabled, setEnabled] = useState(globalState.isEnabled);
34
- const toggleTheme = useCallback(
35
- () =>
36
- setEnabled((wasEnabled) => {
37
- toggleMaterialTheme(wasEnabled);
38
- return !wasEnabled;
39
- }),
40
- [],
41
- );
42
-
43
- return (
44
- <Switch
45
- className="material-theme-switcher"
46
- isChecked={isEnabled}
47
- onChange={toggleTheme}
48
- position={Alignment.right}
49
- theme={theme}
50
- >
51
- Material theme
52
- </Switch>
53
- );
54
- };
@@ -1 +0,0 @@
1
- export * from './MaterialThemeSwitcher';
@@ -1,31 +0,0 @@
1
- import { render, screen } from '@testing-library/react';
2
- import { Portal } from './Portal';
3
-
4
- const TEST_ID = 'portal-child';
5
- const PortalChild = () => <div data-testid={TEST_ID}>Hello from portal</div>;
6
-
7
- describe(Portal, () => {
8
- it('should render portal content in document.body by default', () => {
9
- render(
10
- <Portal>
11
- <PortalChild />
12
- </Portal>,
13
- );
14
-
15
- const child = screen.getByTestId(TEST_ID);
16
- expect(child.parentElement).toBe(document.body);
17
- });
18
-
19
- it('should render inline when enabled is false', () => {
20
- const { container } = render(
21
- <div id="wrapper">
22
- <Portal enabled={false}>
23
- <PortalChild />
24
- </Portal>
25
- </div>,
26
- );
27
-
28
- const child = screen.getByTestId(TEST_ID);
29
- expect(child.parentElement).toBe(container.querySelector('#wrapper'));
30
- });
31
- });