@lumx/react 3.20.1-alpha.25 → 3.20.1-alpha.27

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 (710) hide show
  1. package/_internal/Button-2b55a913.js +97 -0
  2. package/_internal/Button-2b55a913.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-e1e85810.js +143 -0
  6. package/_internal/Chip-e1e85810.js.map +1 -0
  7. package/_internal/ClickAwayProvider-1204f237.js +95 -0
  8. package/_internal/ClickAwayProvider-1204f237.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-be160cb0.js +77 -0
  14. package/_internal/IconButton-be160cb0.js.map +1 -0
  15. package/_internal/ImageCaption-fcf5720c.js +75 -0
  16. package/_internal/ImageCaption-fcf5720c.js.map +1 -0
  17. package/_internal/List-dbf4297f.js +791 -0
  18. package/_internal/List-dbf4297f.js.map +1 -0
  19. package/_internal/PopoverDialog-193a0918.js +655 -0
  20. package/_internal/PopoverDialog-193a0918.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-2d267d8c.js +679 -0
  26. package/_internal/Slides-2d267d8c.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-a6ed922b.js +163 -0
  42. package/_internal/components/alert-dialog-a6ed922b.js.map +1 -0
  43. package/_internal/components/autocomplete-c97b7698.js +261 -0
  44. package/_internal/components/autocomplete-c97b7698.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-b05f8f0c.js +47 -0
  50. package/_internal/components/button-b05f8f0c.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-e3a6330f.js +102 -0
  54. package/_internal/components/chip-e3a6330f.js.map +1 -0
  55. package/_internal/components/comment-block-b1acc69f.js +138 -0
  56. package/_internal/components/comment-block-b1acc69f.js.map +1 -0
  57. package/_internal/components/date-picker-582c4925.js +2 -0
  58. package/_internal/components/date-picker-582c4925.js.map +1 -0
  59. package/_internal/components/dialog-785646aa.js +238 -0
  60. package/_internal/components/dialog-785646aa.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-c0c0cfe8.js +147 -0
  66. package/_internal/components/dropdown-c0c0cfe8.js.map +1 -0
  67. package/_internal/components/expansion-panel-1de1d1ff.js +167 -0
  68. package/_internal/components/expansion-panel-1de1d1ff.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-10423fa5.js +56 -0
  72. package/_internal/components/flex-box-10423fa5.js.map +1 -0
  73. package/_internal/components/generic-block-b79f163a.js +128 -0
  74. package/_internal/components/generic-block-b79f163a.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-ee504283.js +58 -0
  78. package/_internal/components/grid-column-ee504283.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-762eb669.js +110 -0
  84. package/_internal/components/image-block-762eb669.js.map +1 -0
  85. package/_internal/components/image-lightbox-10fef304.js +759 -0
  86. package/_internal/components/image-lightbox-10fef304.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-dcc9a7a0.js +155 -0
  94. package/_internal/components/lightbox-dcc9a7a0.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-f29e54b7.js +71 -0
  100. package/_internal/components/list-f29e54b7.js.map +1 -0
  101. package/_internal/components/message-aa3e3f76.js +98 -0
  102. package/_internal/components/message-aa3e3f76.js.map +1 -0
  103. package/_internal/components/mosaic-b4b35fa7.js +94 -0
  104. package/_internal/components/mosaic-b4b35fa7.js.map +1 -0
  105. package/_internal/components/navigation-8357dbe6.js +225 -0
  106. package/_internal/components/navigation-8357dbe6.js.map +1 -0
  107. package/_internal/components/notification-ec4cf95f.js +143 -0
  108. package/_internal/components/notification-ec4cf95f.js.map +1 -0
  109. package/_internal/components/popover-a674dd8d.js +3 -0
  110. package/_internal/components/popover-a674dd8d.js.map +1 -0
  111. package/_internal/components/post-block-bb3d3cbf.js +109 -0
  112. package/_internal/components/post-block-bb3d3cbf.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-8295a416.js +457 -0
  120. package/_internal/components/select-8295a416.js.map +1 -0
  121. package/_internal/components/side-navigation-40ee8bda.js +164 -0
  122. package/_internal/components/side-navigation-40ee8bda.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-c5faf531.js +151 -0
  128. package/_internal/components/slideshow-c5faf531.js.map +1 -0
  129. package/_internal/components/switch-a26a5a72.js +121 -0
  130. package/_internal/components/switch-a26a5a72.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-82adaeb4.js +359 -0
  138. package/_internal/components/text-field-82adaeb4.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-aa48ddda.js +327 -0
  144. package/_internal/components/tooltip-aa48ddda.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-fc03f01a.js +144 -0
  148. package/_internal/components/user-block-fc03f01a.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-8e7fecb5.js +436 -0
  162. package/_internal/index-8e7fecb5.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-b9762ff1.js +18 -0
  168. package/_internal/isComponent-b9762ff1.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/_internal/state-db358714.js +130 -0
  174. package/_internal/state-db358714.js.map +1 -0
  175. package/_internal/useBooleanState-2a3d237c.js +12 -0
  176. package/_internal/useBooleanState-2a3d237c.js.map +1 -0
  177. package/_internal/useCallbackOnEscape-0b220f9c.js +62 -0
  178. package/_internal/useCallbackOnEscape-0b220f9c.js.map +1 -0
  179. package/_internal/useDisableBodyScroll-36bd7352.js +219 -0
  180. package/_internal/useDisableBodyScroll-36bd7352.js.map +1 -0
  181. package/_internal/useDisableStateProps-69e16b7c.js +36 -0
  182. package/_internal/useDisableStateProps-69e16b7c.js.map +1 -0
  183. package/_internal/useFocusTrap-3114e5e8.js +112 -0
  184. package/_internal/useFocusTrap-3114e5e8.js.map +1 -0
  185. package/_internal/useId-3a1facc0.js +18 -0
  186. package/_internal/useId-3a1facc0.js.map +1 -0
  187. package/_internal/useRovingTabIndex-7daf0f24.js +77 -0
  188. package/_internal/useRovingTabIndex-7daf0f24.js.map +1 -0
  189. package/_internal/useTransitionVisibility-321fdbfa.js +50 -0
  190. package/_internal/useTransitionVisibility-321fdbfa.js.map +1 -0
  191. package/_internal/wrapChildrenIconWithSpaces-f1e91251.js +20 -0
  192. package/_internal/wrapChildrenIconWithSpaces-f1e91251.js.map +1 -0
  193. package/index.d.ts +11 -367
  194. package/index.js +65 -14486
  195. package/index.js.map +1 -1
  196. package/package.json +4 -11
  197. package/utils/index.d.ts +1 -1
  198. package/utils/index.js +3 -1
  199. package/utils/index.js.map +1 -1
  200. package/_internal/Falsy.d.ts +0 -7
  201. package/_internal/index.js +0 -236
  202. package/_internal/index.js.map +0 -1
  203. package/src/components/alert-dialog/AlertDialog.stories.tsx +0 -127
  204. package/src/components/alert-dialog/AlertDialog.test.tsx +0 -34
  205. package/src/components/alert-dialog/AlertDialog.tsx +0 -189
  206. package/src/components/alert-dialog/index.ts +0 -1
  207. package/src/components/autocomplete/Autocomplete.stories.tsx +0 -75
  208. package/src/components/autocomplete/Autocomplete.test.tsx +0 -99
  209. package/src/components/autocomplete/Autocomplete.tsx +0 -294
  210. package/src/components/autocomplete/AutocompleteMultiple.stories.tsx +0 -167
  211. package/src/components/autocomplete/AutocompleteMultiple.test.tsx +0 -61
  212. package/src/components/autocomplete/AutocompleteMultiple.tsx +0 -156
  213. package/src/components/autocomplete/__mockData__/index.ts +0 -39
  214. package/src/components/autocomplete/index.ts +0 -2
  215. package/src/components/avatar/Avatar.stories.tsx +0 -119
  216. package/src/components/avatar/Avatar.test.tsx +0 -32
  217. package/src/components/avatar/Avatar.tsx +0 -114
  218. package/src/components/avatar/index.ts +0 -1
  219. package/src/components/badge/Badge.stories.tsx +0 -69
  220. package/src/components/badge/Badge.test.tsx +0 -45
  221. package/src/components/badge/Badge.tsx +0 -58
  222. package/src/components/badge/BadgeWrapper.stories.tsx +0 -75
  223. package/src/components/badge/BadgeWrapper.test.tsx +0 -47
  224. package/src/components/badge/BadgeWrapper.tsx +0 -37
  225. package/src/components/badge/index.ts +0 -2
  226. package/src/components/button/Button.stories.tsx +0 -355
  227. package/src/components/button/Button.test.tsx +0 -125
  228. package/src/components/button/Button.tsx +0 -101
  229. package/src/components/button/ButtonGroup.stories.tsx +0 -52
  230. package/src/components/button/ButtonGroup.test.tsx +0 -41
  231. package/src/components/button/ButtonGroup.tsx +0 -50
  232. package/src/components/button/ButtonRoot.tsx +0 -163
  233. package/src/components/button/IconButton.stories.tsx +0 -52
  234. package/src/components/button/IconButton.test.tsx +0 -66
  235. package/src/components/button/IconButton.tsx +0 -91
  236. package/src/components/button/index.ts +0 -4
  237. package/src/components/checkbox/Checkbox.stories.tsx +0 -64
  238. package/src/components/checkbox/Checkbox.test.tsx +0 -154
  239. package/src/components/checkbox/Checkbox.tsx +0 -164
  240. package/src/components/checkbox/index.ts +0 -1
  241. package/src/components/chip/Chip.stories.tsx +0 -164
  242. package/src/components/chip/Chip.test.tsx +0 -243
  243. package/src/components/chip/Chip.tsx +0 -168
  244. package/src/components/chip/ChipGroup.stories.tsx +0 -47
  245. package/src/components/chip/ChipGroup.test.tsx +0 -37
  246. package/src/components/chip/ChipGroup.tsx +0 -60
  247. package/src/components/chip/index.ts +0 -2
  248. package/src/components/comment-block/CommentBlock.stories.tsx +0 -91
  249. package/src/components/comment-block/CommentBlock.test.tsx +0 -28
  250. package/src/components/comment-block/CommentBlock.tsx +0 -172
  251. package/src/components/comment-block/index.ts +0 -1
  252. package/src/components/date-picker/DatePicker.stories.tsx +0 -118
  253. package/src/components/date-picker/DatePicker.test.tsx +0 -34
  254. package/src/components/date-picker/DatePicker.tsx +0 -52
  255. package/src/components/date-picker/DatePickerControlled.test.tsx +0 -91
  256. package/src/components/date-picker/DatePickerControlled.tsx +0 -259
  257. package/src/components/date-picker/DatePickerField.stories.tsx +0 -100
  258. package/src/components/date-picker/DatePickerField.test.tsx +0 -70
  259. package/src/components/date-picker/DatePickerField.tsx +0 -135
  260. package/src/components/date-picker/constants.ts +0 -11
  261. package/src/components/date-picker/index.ts +0 -4
  262. package/src/components/date-picker/types.ts +0 -28
  263. package/src/components/dialog/Dialog.stories.tsx +0 -318
  264. package/src/components/dialog/Dialog.test.tsx +0 -97
  265. package/src/components/dialog/Dialog.tsx +0 -288
  266. package/src/components/dialog/index.ts +0 -1
  267. package/src/components/divider/Divider.test.tsx +0 -51
  268. package/src/components/divider/Divider.tsx +0 -50
  269. package/src/components/divider/index.ts +0 -1
  270. package/src/components/drag-handle/DragHandle.test.tsx +0 -36
  271. package/src/components/drag-handle/DragHandle.tsx +0 -51
  272. package/src/components/drag-handle/index.ts +0 -1
  273. package/src/components/dropdown/Dropdown.stories.tsx +0 -31
  274. package/src/components/dropdown/Dropdown.test.tsx +0 -66
  275. package/src/components/dropdown/Dropdown.tsx +0 -186
  276. package/src/components/dropdown/index.ts +0 -1
  277. package/src/components/expansion-panel/ExpansionPanel.stories.tsx +0 -91
  278. package/src/components/expansion-panel/ExpansionPanel.test.tsx +0 -185
  279. package/src/components/expansion-panel/ExpansionPanel.tsx +0 -195
  280. package/src/components/expansion-panel/index.ts +0 -1
  281. package/src/components/flag/Flag.stories.tsx +0 -48
  282. package/src/components/flag/Flag.test.tsx +0 -62
  283. package/src/components/flag/Flag.tsx +0 -52
  284. package/src/components/flag/index.ts +0 -1
  285. package/src/components/flex-box/FlexBox.stories.tsx +0 -156
  286. package/src/components/flex-box/FlexBox.test.tsx +0 -24
  287. package/src/components/flex-box/FlexBox.tsx +0 -100
  288. package/src/components/flex-box/index.ts +0 -1
  289. package/src/components/generic-block/GenericBlock.stories.jsx +0 -128
  290. package/src/components/generic-block/GenericBlock.test.tsx +0 -156
  291. package/src/components/generic-block/GenericBlock.tsx +0 -225
  292. package/src/components/generic-block/constants.ts +0 -9
  293. package/src/components/generic-block/index.ts +0 -2
  294. package/src/components/grid/Grid.tsx +0 -83
  295. package/src/components/grid/GridItem.tsx +0 -55
  296. package/src/components/grid/index.ts +0 -2
  297. package/src/components/grid-column/GridColumn.stories.tsx +0 -45
  298. package/src/components/grid-column/GridColumn.test.jsx +0 -56
  299. package/src/components/grid-column/GridColumn.tsx +0 -83
  300. package/src/components/grid-column/index.ts +0 -1
  301. package/src/components/heading/Heading.stories.tsx +0 -69
  302. package/src/components/heading/Heading.test.tsx +0 -82
  303. package/src/components/heading/Heading.tsx +0 -65
  304. package/src/components/heading/HeadingLevelProvider.tsx +0 -30
  305. package/src/components/heading/constants.ts +0 -16
  306. package/src/components/heading/context.tsx +0 -13
  307. package/src/components/heading/index.ts +0 -3
  308. package/src/components/heading/useHeadingLevel.tsx +0 -8
  309. package/src/components/icon/Icon.stories.tsx +0 -73
  310. package/src/components/icon/Icon.test.tsx +0 -125
  311. package/src/components/icon/Icon.tsx +0 -133
  312. package/src/components/icon/index.ts +0 -1
  313. package/src/components/image-block/ImageBlock.stories.tsx +0 -117
  314. package/src/components/image-block/ImageBlock.test.tsx +0 -58
  315. package/src/components/image-block/ImageBlock.tsx +0 -142
  316. package/src/components/image-block/ImageCaption.tsx +0 -115
  317. package/src/components/image-block/index.ts +0 -1
  318. package/src/components/image-lightbox/ImageLightbox.stories.tsx +0 -160
  319. package/src/components/image-lightbox/ImageLightbox.test.tsx +0 -254
  320. package/src/components/image-lightbox/ImageLightbox.tsx +0 -90
  321. package/src/components/image-lightbox/constants.ts +0 -11
  322. package/src/components/image-lightbox/index.ts +0 -2
  323. package/src/components/image-lightbox/internal/ImageSlide.tsx +0 -107
  324. package/src/components/image-lightbox/internal/ImageSlideshow.tsx +0 -164
  325. package/src/components/image-lightbox/internal/useAnimateScroll.ts +0 -55
  326. package/src/components/image-lightbox/internal/usePointerZoom.ts +0 -148
  327. package/src/components/image-lightbox/types.ts +0 -48
  328. package/src/components/image-lightbox/useImageLightbox.tsx +0 -141
  329. package/src/components/inline-list/InlineList.stories.tsx +0 -77
  330. package/src/components/inline-list/InlineList.test.tsx +0 -52
  331. package/src/components/inline-list/InlineList.tsx +0 -96
  332. package/src/components/inline-list/index.ts +0 -1
  333. package/src/components/input-helper/InputHelper.stories.tsx +0 -35
  334. package/src/components/input-helper/InputHelper.test.tsx +0 -55
  335. package/src/components/input-helper/InputHelper.tsx +0 -65
  336. package/src/components/input-helper/constants.ts +0 -11
  337. package/src/components/input-helper/index.ts +0 -1
  338. package/src/components/input-label/InputLabel.stories.tsx +0 -45
  339. package/src/components/input-label/InputLabel.test.tsx +0 -59
  340. package/src/components/input-label/InputLabel.tsx +0 -69
  341. package/src/components/input-label/index.ts +0 -1
  342. package/src/components/lightbox/Lightbox.stories.tsx +0 -101
  343. package/src/components/lightbox/Lightbox.test.tsx +0 -53
  344. package/src/components/lightbox/Lightbox.tsx +0 -180
  345. package/src/components/lightbox/index.ts +0 -1
  346. package/src/components/link/Link.stories.tsx +0 -195
  347. package/src/components/link/Link.test.tsx +0 -127
  348. package/src/components/link/Link.tsx +0 -106
  349. package/src/components/link/index.ts +0 -1
  350. package/src/components/link-preview/LinkPreview.stories.tsx +0 -61
  351. package/src/components/link-preview/LinkPreview.test.tsx +0 -105
  352. package/src/components/link-preview/LinkPreview.tsx +0 -158
  353. package/src/components/link-preview/index.ts +0 -1
  354. package/src/components/list/List.stories.tsx +0 -116
  355. package/src/components/list/List.test.tsx +0 -18
  356. package/src/components/list/List.tsx +0 -104
  357. package/src/components/list/ListDivider.stories.tsx +0 -12
  358. package/src/components/list/ListDivider.test.tsx +0 -22
  359. package/src/components/list/ListDivider.tsx +0 -35
  360. package/src/components/list/ListItem.stories.tsx +0 -66
  361. package/src/components/list/ListItem.test.tsx +0 -93
  362. package/src/components/list/ListItem.tsx +0 -157
  363. package/src/components/list/ListSubheader.stories.tsx +0 -11
  364. package/src/components/list/ListSubheader.test.tsx +0 -21
  365. package/src/components/list/ListSubheader.tsx +0 -44
  366. package/src/components/list/index.ts +0 -4
  367. package/src/components/list/useInteractiveList.tsx +0 -202
  368. package/src/components/message/Message.stories.tsx +0 -72
  369. package/src/components/message/Message.test.tsx +0 -76
  370. package/src/components/message/Message.tsx +0 -100
  371. package/src/components/message/index.ts +0 -1
  372. package/src/components/mosaic/Mosaic.stories.tsx +0 -89
  373. package/src/components/mosaic/Mosaic.test.tsx +0 -77
  374. package/src/components/mosaic/Mosaic.tsx +0 -98
  375. package/src/components/mosaic/index.ts +0 -1
  376. package/src/components/navigation/Navigation.stories.tsx +0 -234
  377. package/src/components/navigation/Navigation.test.tsx +0 -65
  378. package/src/components/navigation/Navigation.tsx +0 -79
  379. package/src/components/navigation/NavigationItem.test.tsx +0 -35
  380. package/src/components/navigation/NavigationItem.tsx +0 -82
  381. package/src/components/navigation/NavigationSection.test.tsx +0 -137
  382. package/src/components/navigation/NavigationSection.tsx +0 -108
  383. package/src/components/navigation/context.tsx +0 -7
  384. package/src/components/navigation/index.ts +0 -1
  385. package/src/components/notification/Notification.test.tsx +0 -94
  386. package/src/components/notification/Notification.tsx +0 -138
  387. package/src/components/notification/Notifications.stories.tsx +0 -92
  388. package/src/components/notification/constants.ts +0 -28
  389. package/src/components/notification/index.ts +0 -1
  390. package/src/components/popover/Popover.stories.tsx +0 -264
  391. package/src/components/popover/Popover.test.tsx +0 -62
  392. package/src/components/popover/Popover.tsx +0 -201
  393. package/src/components/popover/constants.ts +0 -62
  394. package/src/components/popover/index.ts +0 -3
  395. package/src/components/popover/usePopoverStyle.tsx +0 -184
  396. package/src/components/popover/useRestoreFocusOnClose.tsx +0 -47
  397. package/src/components/popover-dialog/PopoverDialog.stories.tsx +0 -64
  398. package/src/components/popover-dialog/PopoverDialog.test.tsx +0 -139
  399. package/src/components/popover-dialog/PopoverDialog.tsx +0 -74
  400. package/src/components/popover-dialog/index.tsx +0 -1
  401. package/src/components/post-block/PostBlock.test.tsx +0 -27
  402. package/src/components/post-block/PostBlock.tsx +0 -122
  403. package/src/components/post-block/index.ts +0 -1
  404. package/src/components/progress/Progress.tsx +0 -68
  405. package/src/components/progress/ProgressCircular.stories.tsx +0 -43
  406. package/src/components/progress/ProgressCircular.test.tsx +0 -46
  407. package/src/components/progress/ProgressCircular.tsx +0 -82
  408. package/src/components/progress/ProgressLinear.stories.tsx +0 -12
  409. package/src/components/progress/ProgressLinear.test.tsx +0 -30
  410. package/src/components/progress/ProgressLinear.tsx +0 -50
  411. package/src/components/progress/index.ts +0 -3
  412. package/src/components/progress-tracker/ProgressTracker.stories.tsx +0 -145
  413. package/src/components/progress-tracker/ProgressTracker.test.tsx +0 -42
  414. package/src/components/progress-tracker/ProgressTracker.tsx +0 -87
  415. package/src/components/progress-tracker/ProgressTrackerProvider.test.tsx +0 -65
  416. package/src/components/progress-tracker/ProgressTrackerProvider.tsx +0 -67
  417. package/src/components/progress-tracker/ProgressTrackerStep.test.tsx +0 -36
  418. package/src/components/progress-tracker/ProgressTrackerStep.tsx +0 -159
  419. package/src/components/progress-tracker/ProgressTrackerStepPanel.test.tsx +0 -34
  420. package/src/components/progress-tracker/ProgressTrackerStepPanel.tsx +0 -67
  421. package/src/components/progress-tracker/index.ts +0 -4
  422. package/src/components/radio-button/RadioButton.stories.tsx +0 -71
  423. package/src/components/radio-button/RadioButton.test.tsx +0 -143
  424. package/src/components/radio-button/RadioButton.tsx +0 -143
  425. package/src/components/radio-button/RadioGroup.stories.tsx +0 -39
  426. package/src/components/radio-button/RadioGroup.test.tsx +0 -29
  427. package/src/components/radio-button/RadioGroup.tsx +0 -44
  428. package/src/components/radio-button/index.ts +0 -2
  429. package/src/components/select/Select.stories.tsx +0 -385
  430. package/src/components/select/Select.test.tsx +0 -199
  431. package/src/components/select/Select.tsx +0 -199
  432. package/src/components/select/SelectMultiple.stories.tsx +0 -315
  433. package/src/components/select/SelectMultiple.test.tsx +0 -213
  434. package/src/components/select/SelectMultiple.tsx +0 -206
  435. package/src/components/select/WithSelectContext.tsx +0 -147
  436. package/src/components/select/constants.ts +0 -55
  437. package/src/components/select/index.ts +0 -2
  438. package/src/components/side-navigation/SideNavigation.stories.tsx +0 -191
  439. package/src/components/side-navigation/SideNavigation.test.tsx +0 -37
  440. package/src/components/side-navigation/SideNavigation.tsx +0 -52
  441. package/src/components/side-navigation/SideNavigationItem.stories.tsx +0 -133
  442. package/src/components/side-navigation/SideNavigationItem.test.tsx +0 -136
  443. package/src/components/side-navigation/SideNavigationItem.tsx +0 -165
  444. package/src/components/side-navigation/index.ts +0 -2
  445. package/src/components/skeleton/SkeletonCircle.stories.tsx +0 -41
  446. package/src/components/skeleton/SkeletonCircle.test.tsx +0 -27
  447. package/src/components/skeleton/SkeletonCircle.tsx +0 -52
  448. package/src/components/skeleton/SkeletonRectangle.stories.tsx +0 -82
  449. package/src/components/skeleton/SkeletonRectangle.test.tsx +0 -27
  450. package/src/components/skeleton/SkeletonRectangle.tsx +0 -88
  451. package/src/components/skeleton/SkeletonTypography.stories.tsx +0 -19
  452. package/src/components/skeleton/SkeletonTypography.test.tsx +0 -27
  453. package/src/components/skeleton/SkeletonTypography.tsx +0 -59
  454. package/src/components/skeleton/index.ts +0 -3
  455. package/src/components/slider/Slider.stories.tsx +0 -45
  456. package/src/components/slider/Slider.test.tsx +0 -29
  457. package/src/components/slider/Slider.tsx +0 -299
  458. package/src/components/slider/index.ts +0 -2
  459. package/src/components/slideshow/Slides.tsx +0 -130
  460. package/src/components/slideshow/Slideshow.stories.tsx +0 -179
  461. package/src/components/slideshow/Slideshow.test.tsx +0 -35
  462. package/src/components/slideshow/Slideshow.tsx +0 -173
  463. package/src/components/slideshow/SlideshowControls.stories.tsx +0 -100
  464. package/src/components/slideshow/SlideshowControls.tsx +0 -243
  465. package/src/components/slideshow/SlideshowItem.tsx +0 -44
  466. package/src/components/slideshow/SlideshowItemGroup.tsx +0 -60
  467. package/src/components/slideshow/constants.ts +0 -24
  468. package/src/components/slideshow/index.ts +0 -4
  469. package/src/components/slideshow/useKeyNavigate.ts +0 -28
  470. package/src/components/slideshow/usePaginationVisibleRange.ts +0 -37
  471. package/src/components/slideshow/useSlideFocusManagement.tsx +0 -92
  472. package/src/components/slideshow/useSwipeNavigate.ts +0 -18
  473. package/src/components/switch/Switch.stories.tsx +0 -49
  474. package/src/components/switch/Switch.test.tsx +0 -144
  475. package/src/components/switch/Switch.tsx +0 -145
  476. package/src/components/switch/index.ts +0 -1
  477. package/src/components/table/Table.test.tsx +0 -29
  478. package/src/components/table/Table.tsx +0 -59
  479. package/src/components/table/TableBody.test.tsx +0 -30
  480. package/src/components/table/TableBody.tsx +0 -42
  481. package/src/components/table/TableCell.test.tsx +0 -72
  482. package/src/components/table/TableCell.tsx +0 -130
  483. package/src/components/table/TableHeader.test.tsx +0 -30
  484. package/src/components/table/TableHeader.tsx +0 -48
  485. package/src/components/table/TableRow.test.tsx +0 -40
  486. package/src/components/table/TableRow.tsx +0 -71
  487. package/src/components/table/index.ts +0 -5
  488. package/src/components/tabs/Tab.test.tsx +0 -50
  489. package/src/components/tabs/Tab.tsx +0 -133
  490. package/src/components/tabs/TabList.test.tsx +0 -49
  491. package/src/components/tabs/TabList.tsx +0 -94
  492. package/src/components/tabs/TabPanel.test.tsx +0 -37
  493. package/src/components/tabs/TabPanel.tsx +0 -67
  494. package/src/components/tabs/TabProvider.test.tsx +0 -161
  495. package/src/components/tabs/TabProvider.tsx +0 -67
  496. package/src/components/tabs/Tabs.stories.tsx +0 -170
  497. package/src/components/tabs/index.ts +0 -4
  498. package/src/components/tabs/state.ts +0 -114
  499. package/src/components/tabs/test-utils.ts +0 -39
  500. package/src/components/text/Text.stories.tsx +0 -177
  501. package/src/components/text/Text.test.tsx +0 -92
  502. package/src/components/text/Text.tsx +0 -139
  503. package/src/components/text/index.ts +0 -1
  504. package/src/components/text-field/TextField.stories.tsx +0 -180
  505. package/src/components/text-field/TextField.test.tsx +0 -298
  506. package/src/components/text-field/TextField.tsx +0 -493
  507. package/src/components/text-field/index.ts +0 -1
  508. package/src/components/thumbnail/Thumbnail.stories.tsx +0 -448
  509. package/src/components/thumbnail/Thumbnail.test.tsx +0 -88
  510. package/src/components/thumbnail/Thumbnail.tsx +0 -248
  511. package/src/components/thumbnail/index.ts +0 -3
  512. package/src/components/thumbnail/types.ts +0 -48
  513. package/src/components/thumbnail/useFocusPointStyle.test.ts +0 -92
  514. package/src/components/thumbnail/useFocusPointStyle.tsx +0 -107
  515. package/src/components/thumbnail/useImageLoad.ts +0 -40
  516. package/src/components/toolbar/Toolbar.tsx +0 -68
  517. package/src/components/toolbar/index.ts +0 -1
  518. package/src/components/tooltip/Tooltip.stories.tsx +0 -118
  519. package/src/components/tooltip/Tooltip.test.tsx +0 -417
  520. package/src/components/tooltip/Tooltip.tsx +0 -165
  521. package/src/components/tooltip/constants.ts +0 -8
  522. package/src/components/tooltip/context.tsx +0 -17
  523. package/src/components/tooltip/index.ts +0 -1
  524. package/src/components/tooltip/useInjectTooltipRef.tsx +0 -55
  525. package/src/components/tooltip/useTooltipOpen.tsx +0 -143
  526. package/src/components/uploader/Uploader.stories.tsx +0 -109
  527. package/src/components/uploader/Uploader.test.tsx +0 -146
  528. package/src/components/uploader/Uploader.tsx +0 -177
  529. package/src/components/uploader/index.ts +0 -1
  530. package/src/components/user-block/UserBlock.stories.tsx +0 -133
  531. package/src/components/user-block/UserBlock.test.tsx +0 -106
  532. package/src/components/user-block/UserBlock.tsx +0 -193
  533. package/src/components/user-block/index.ts +0 -1
  534. package/src/constants.ts +0 -27
  535. package/src/hooks/useBooleanState.tsx +0 -13
  536. package/src/hooks/useCallbackOnEscape.ts +0 -34
  537. package/src/hooks/useChipGroupNavigation.tsx +0 -75
  538. package/src/hooks/useClickAway.tsx +0 -48
  539. package/src/hooks/useDisableBodyScroll.ts +0 -28
  540. package/src/hooks/useEventCallback.tsx +0 -17
  541. package/src/hooks/useFocus.tsx +0 -21
  542. package/src/hooks/useFocusTrap.ts +0 -93
  543. package/src/hooks/useFocusWithin.ts +0 -33
  544. package/src/hooks/useId.test.tsx +0 -22
  545. package/src/hooks/useId.ts +0 -15
  546. package/src/hooks/useImageSize.ts +0 -17
  547. package/src/hooks/useInfiniteScroll.tsx +0 -60
  548. package/src/hooks/useIntersectionObserver.tsx +0 -43
  549. package/src/hooks/useInterval.tsx +0 -31
  550. package/src/hooks/useKeyboardListNavigation.tsx +0 -204
  551. package/src/hooks/useListenFocus.tsx +0 -26
  552. package/src/hooks/useOverflowTooltipLabel.tsx +0 -32
  553. package/src/hooks/usePopper.ts +0 -12
  554. package/src/hooks/usePreviousValue.ts +0 -12
  555. package/src/hooks/useRovingTabIndex.tsx +0 -90
  556. package/src/hooks/useSizeOnWindowResize.ts +0 -30
  557. package/src/hooks/useSlideshowControls.ts +0 -246
  558. package/src/hooks/useStopPropagation.ts +0 -21
  559. package/src/hooks/useTransitionVisibility.ts +0 -48
  560. package/src/index.ts +0 -63
  561. package/src/stories/controls/color.ts +0 -7
  562. package/src/stories/controls/element.ts +0 -6
  563. package/src/stories/controls/focusPoint.ts +0 -1
  564. package/src/stories/controls/icons.ts +0 -126
  565. package/src/stories/controls/image.ts +0 -84
  566. package/src/stories/controls/selectArgType.ts +0 -8
  567. package/src/stories/controls/theme.ts +0 -3
  568. package/src/stories/controls/typography.ts +0 -5
  569. package/src/stories/controls/withUndefined.ts +0 -1
  570. package/src/stories/decorators/withChromaticForceScreenSize.tsx +0 -7
  571. package/src/stories/decorators/withCombinations.tsx +0 -132
  572. package/src/stories/decorators/withNestedProps.tsx +0 -22
  573. package/src/stories/decorators/withResizableBox.tsx +0 -21
  574. package/src/stories/decorators/withThemedBackground.tsx +0 -16
  575. package/src/stories/decorators/withValueOnChange.tsx +0 -18
  576. package/src/stories/decorators/withWrapper.tsx +0 -19
  577. package/src/stories/generated/Autocomplete/Demos.stories.tsx +0 -7
  578. package/src/stories/generated/Avatar/Demos.stories.tsx +0 -7
  579. package/src/stories/generated/Badge/Demos.stories.tsx +0 -9
  580. package/src/stories/generated/Button/Demos.stories.tsx +0 -11
  581. package/src/stories/generated/Checkbox/Demos.stories.tsx +0 -6
  582. package/src/stories/generated/Chip/Demos.stories.tsx +0 -11
  583. package/src/stories/generated/CommentBlock/Demos.stories.tsx +0 -8
  584. package/src/stories/generated/DatePicker/Demos.stories.tsx +0 -8
  585. package/src/stories/generated/Dialog/Demos.stories.tsx +0 -10
  586. package/src/stories/generated/Divider/Demos.stories.tsx +0 -6
  587. package/src/stories/generated/Dropdown/Demos.stories.tsx +0 -8
  588. package/src/stories/generated/ExpansionPanel/Demos.stories.tsx +0 -9
  589. package/src/stories/generated/Flag/Demos.stories.tsx +0 -6
  590. package/src/stories/generated/GenericBlock/Demos.stories.tsx +0 -8
  591. package/src/stories/generated/Heading/Demos.stories.tsx +0 -6
  592. package/src/stories/generated/Icon/Demos.stories.tsx +0 -8
  593. package/src/stories/generated/ImageBlock/Demos.stories.tsx +0 -9
  594. package/src/stories/generated/ImageLightbox/Demos.stories.tsx +0 -6
  595. package/src/stories/generated/Lightbox/Demos.stories.tsx +0 -6
  596. package/src/stories/generated/LinkPreview/Demos.stories.tsx +0 -7
  597. package/src/stories/generated/List/Demos.stories.tsx +0 -11
  598. package/src/stories/generated/Message/Demos.stories.tsx +0 -11
  599. package/src/stories/generated/Mosaic/Demos.stories.tsx +0 -10
  600. package/src/stories/generated/Notification/Demos.stories.tsx +0 -6
  601. package/src/stories/generated/Popover/Demos.stories.tsx +0 -11
  602. package/src/stories/generated/PopoverDialog/Demos.stories.tsx +0 -6
  603. package/src/stories/generated/PostBlock/Demos.stories.tsx +0 -6
  604. package/src/stories/generated/Progress/Demos.stories.tsx +0 -7
  605. package/src/stories/generated/ProgressTracker/Demos.stories.tsx +0 -9
  606. package/src/stories/generated/RadioButton/Demos.stories.tsx +0 -6
  607. package/src/stories/generated/Select/Demos.stories.tsx +0 -14
  608. package/src/stories/generated/SideNavigation/Demos.stories.tsx +0 -10
  609. package/src/stories/generated/Skeleton/Demos.stories.tsx +0 -9
  610. package/src/stories/generated/Slider/Demos.stories.tsx +0 -9
  611. package/src/stories/generated/Slideshow/Demos.stories.tsx +0 -8
  612. package/src/stories/generated/Switch/Demos.stories.tsx +0 -6
  613. package/src/stories/generated/Table/Demos.stories.tsx +0 -7
  614. package/src/stories/generated/Tabs/Demos.stories.tsx +0 -8
  615. package/src/stories/generated/TextField/Demos.stories.tsx +0 -20
  616. package/src/stories/generated/Thumbnail/Demos.stories.tsx +0 -12
  617. package/src/stories/generated/Toolbar/Demos.stories.tsx +0 -10
  618. package/src/stories/generated/Tooltip/Demos.stories.tsx +0 -8
  619. package/src/stories/generated/Uploader/Demos.stories.tsx +0 -8
  620. package/src/stories/generated/UserBlock/Demos.stories.tsx +0 -11
  621. package/src/stories/utils/CustomLink.tsx +0 -12
  622. package/src/stories/utils/concatPath.tsx +0 -17
  623. package/src/stories/utils/disableArgTypes.ts +0 -3
  624. package/src/stories/utils/initDemoShadowDOMPortal.ts +0 -10
  625. package/src/stories/utils/lorem.ts +0 -59
  626. package/src/stories/utils/theming.tsx +0 -166
  627. package/src/stories/utils/toFlattenProps.ts +0 -28
  628. package/src/stories/utils/withCategory.ts +0 -12
  629. package/src/testing/utils/ThemeSentinel.tsx +0 -10
  630. package/src/testing/utils/commonTestsSuiteRTL.tsx +0 -193
  631. package/src/testing/utils/index.ts +0 -1
  632. package/src/testing/utils/queries.ts +0 -19
  633. package/src/untypped-modules.d.ts +0 -9
  634. package/src/utils/ClickAwayProvider/ClickAwayProvider.stories.jsx +0 -70
  635. package/src/utils/ClickAwayProvider/ClickAwayProvider.tsx +0 -69
  636. package/src/utils/ClickAwayProvider/index.ts +0 -1
  637. package/src/utils/MaterialThemeSwitcher/MaterialThemeSwitcher.tsx +0 -54
  638. package/src/utils/MaterialThemeSwitcher/index.ts +0 -1
  639. package/src/utils/Portal/Portal.test.tsx +0 -31
  640. package/src/utils/Portal/Portal.tsx +0 -33
  641. package/src/utils/Portal/PortalProvider.stories.jsx +0 -22
  642. package/src/utils/Portal/PortalProvider.test.tsx +0 -72
  643. package/src/utils/Portal/PortalProvider.tsx +0 -24
  644. package/src/utils/Portal/index.tsx +0 -2
  645. package/src/utils/browser/DOM/findImage.tsx +0 -3
  646. package/src/utils/browser/DOM/startViewTransition.ts +0 -68
  647. package/src/utils/browser/focus/constants.ts +0 -7
  648. package/src/utils/browser/focus/getFirstAndLastFocusable.test.ts +0 -134
  649. package/src/utils/browser/focus/getFirstAndLastFocusable.ts +0 -21
  650. package/src/utils/browser/focus/getFocusableElements.test.ts +0 -151
  651. package/src/utils/browser/focus/getFocusableElements.ts +0 -7
  652. package/src/utils/browser/isFocusVisible.ts +0 -9
  653. package/src/utils/browser/isHoverNotSupported.test.js +0 -24
  654. package/src/utils/browser/isHoverNotSupported.ts +0 -2
  655. package/src/utils/browser/isReducedMotion.ts +0 -6
  656. package/src/utils/date/addMonthResetDay.test.ts +0 -13
  657. package/src/utils/date/addMonthResetDay.ts +0 -9
  658. package/src/utils/date/formatDayNumber.test.ts +0 -12
  659. package/src/utils/date/formatDayNumber.ts +0 -5
  660. package/src/utils/date/getFirstDayOfWeek.test.ts +0 -20
  661. package/src/utils/date/getFirstDayOfWeek.ts +0 -59
  662. package/src/utils/date/getMonthCalendar.test.ts +0 -127
  663. package/src/utils/date/getMonthCalendar.ts +0 -69
  664. package/src/utils/date/getWeekDays.test.ts +0 -48
  665. package/src/utils/date/getWeekDays.ts +0 -34
  666. package/src/utils/date/getYearDisplayName.test.ts +0 -20
  667. package/src/utils/date/getYearDisplayName.ts +0 -12
  668. package/src/utils/date/isDateValid.test.ts +0 -15
  669. package/src/utils/date/isDateValid.ts +0 -4
  670. package/src/utils/date/isSameDay.test.ts +0 -37
  671. package/src/utils/date/isSameDay.ts +0 -11
  672. package/src/utils/disabled/DisabledStateContext.tsx +0 -29
  673. package/src/utils/disabled/DisabledStateProvider.stories.tsx +0 -92
  674. package/src/utils/disabled/index.ts +0 -2
  675. package/src/utils/disabled/useDisableStateProps.test.tsx +0 -74
  676. package/src/utils/disabled/useDisableStateProps.tsx +0 -37
  677. package/src/utils/function/makeListenerTowerContext.ts +0 -32
  678. package/src/utils/index.ts +0 -7
  679. package/src/utils/locale/getCurrentLocale.ts +0 -4
  680. package/src/utils/locale/parseLocale.test.ts +0 -17
  681. package/src/utils/locale/parseLocale.ts +0 -23
  682. package/src/utils/locale/types.ts +0 -8
  683. package/src/utils/number/clamp.ts +0 -17
  684. package/src/utils/object/isEqual.test.ts +0 -25
  685. package/src/utils/object/isEqual.ts +0 -11
  686. package/src/utils/partitionMulti.test.ts +0 -27
  687. package/src/utils/partitionMulti.ts +0 -29
  688. package/src/utils/react/OnBeforeUnmount.tsx +0 -20
  689. package/src/utils/react/RawClickable.test.tsx +0 -153
  690. package/src/utils/react/RawClickable.tsx +0 -65
  691. package/src/utils/react/flattenChildren.ts +0 -32
  692. package/src/utils/react/forwardRef.ts +0 -11
  693. package/src/utils/react/forwardRefPolymorphic.ts +0 -9
  694. package/src/utils/react/mergeRefs.ts +0 -33
  695. package/src/utils/react/renderLink.tsx +0 -17
  696. package/src/utils/react/skipRender.tsx +0 -18
  697. package/src/utils/react/unref.ts +0 -7
  698. package/src/utils/react/wrapChildrenIconWithSpaces.test.tsx +0 -37
  699. package/src/utils/react/wrapChildrenIconWithSpaces.tsx +0 -22
  700. package/src/utils/theme/ThemeContext.ts +0 -16
  701. package/src/utils/theme/invertTheme.ts +0 -4
  702. package/src/utils/type/Comp.ts +0 -14
  703. package/src/utils/type/ComponentRef.ts +0 -16
  704. package/src/utils/type/HasAriaDisabled.ts +0 -6
  705. package/src/utils/type/HasPolymorphicAs.ts +0 -6
  706. package/src/utils/type/HasRequiredLinkHref.ts +0 -1
  707. package/src/utils/type/MaybeElementOrRef.ts +0 -6
  708. package/src/utils/type/index.ts +0 -9
  709. package/src/utils/type/isComponent.ts +0 -33
  710. package/src/utils/type/isComponentType.ts +0 -9
@@ -0,0 +1,103 @@
1
+ import { f as forwardRef, c as classNames } from './forwardRef-15f62847.js';
2
+ import { getRootClassName, resolveColorWithVariants, handleBasicClasses } from '@lumx/core/js/utils/className';
3
+ import { u as useTheme } from './ThemeContext-3181f000.js';
4
+ import { jsx } from 'react/jsx-runtime';
5
+ import { Theme, ColorPalette, Size } from '@lumx/core/js/constants';
6
+
7
+ const mdiAlertCircle = 'M13 13h-2V7h2m0 10h-2v-2h2M12 2A10 10 0 0 0 2 12a10 10 0 0 0 10 10 10 10 0 0 0 10-10A10 10 0 0 0 12 2';
8
+
9
+ /**
10
+ * Component display name.
11
+ */
12
+ const COMPONENT_NAME = 'Icon';
13
+
14
+ /**
15
+ * Component default class name and class prefix.
16
+ */
17
+ const CLASSNAME = getRootClassName(COMPONENT_NAME);
18
+
19
+ /**
20
+ * Component default props.
21
+ */
22
+ const DEFAULT_PROPS = {};
23
+
24
+ /**
25
+ * Icon component.
26
+ *
27
+ * @param props Component props.
28
+ * @param ref Component ref.
29
+ * @return React element.
30
+ */
31
+ const Icon = forwardRef((props, ref) => {
32
+ const defaultTheme = useTheme();
33
+ const {
34
+ className,
35
+ color: propColor,
36
+ colorVariant: propColorVariant,
37
+ hasShape,
38
+ icon,
39
+ size,
40
+ theme = defaultTheme,
41
+ alt,
42
+ ...forwardedProps
43
+ } = props;
44
+ const [color, colorVariant] = resolveColorWithVariants(propColor, propColorVariant);
45
+
46
+ // Color
47
+ let iconColor = color;
48
+ if (!iconColor && (hasShape || theme)) {
49
+ iconColor = theme === Theme.dark ? ColorPalette.light : ColorPalette.dark;
50
+ }
51
+
52
+ // Color variant
53
+ let iconColorVariant = colorVariant;
54
+ if (!iconColorVariant && hasShape && iconColor === ColorPalette.dark) {
55
+ iconColorVariant = 'L2';
56
+ }
57
+
58
+ // Size
59
+ let iconSize = size;
60
+ if (size && hasShape) {
61
+ if (size === Size.xxs || size === Size.xs) {
62
+ iconSize = Size.s;
63
+ } else if (size === Size.xxl) {
64
+ iconSize = Size.xl;
65
+ }
66
+ } else if (hasShape) {
67
+ iconSize = Size.m;
68
+ }
69
+ return /*#__PURE__*/jsx("i", {
70
+ ref: ref,
71
+ ...forwardedProps,
72
+ className: classNames(className, handleBasicClasses({
73
+ color: iconColor,
74
+ colorVariant: iconColorVariant,
75
+ hasShape,
76
+ prefix: CLASSNAME,
77
+ theme,
78
+ size: iconSize
79
+ }), !hasShape && `${CLASSNAME}--no-shape`, !hasShape && iconColor === ColorPalette.yellow && icon === mdiAlertCircle && `${CLASSNAME}--has-dark-layer`, `${CLASSNAME}--path`),
80
+ children: /*#__PURE__*/jsx("svg", {
81
+ "aria-hidden": alt ? undefined : 'true',
82
+ role: alt ? 'img' : undefined,
83
+ "aria-label": alt,
84
+ height: "1em",
85
+ preserveAspectRatio: "xMidYMid meet",
86
+ style: {
87
+ verticalAlign: '-0.125em'
88
+ },
89
+ viewBox: "0 0 24 24",
90
+ width: "1em",
91
+ children: /*#__PURE__*/jsx("path", {
92
+ d: icon,
93
+ fill: "currentColor"
94
+ })
95
+ })
96
+ });
97
+ });
98
+ Icon.displayName = COMPONENT_NAME;
99
+ Icon.className = CLASSNAME;
100
+ Icon.defaultProps = DEFAULT_PROPS;
101
+
102
+ export { Icon as I, mdiAlertCircle as m };
103
+ //# sourceMappingURL=index-192f8ada.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-192f8ada.js","sources":["../../../lumx-icons/dist/esm/alert-circle.js","../../src/components/icon/Icon.tsx"],"sourcesContent":["export const mdiAlertCircle = /*#__PURE__*/ 'M13 13h-2V7h2m0 10h-2v-2h2M12 2A10 10 0 0 0 2 12a10 10 0 0 0 10 10 10 10 0 0 0 10-10A10 10 0 0 0 12 2';","import classNames from 'classnames';\n\nimport { mdiAlertCircle } from '@lumx/icons';\nimport { ColorPalette, ColorVariant, ColorWithVariants, Size, Theme } from '@lumx/react';\nimport { GenericProps, HasTheme } from '@lumx/react/utils/type';\nimport { getRootClassName, handleBasicClasses, resolveColorWithVariants } from '@lumx/core/js/utils/className';\nimport { forwardRef } from '@lumx/react/utils/react/forwardRef';\nimport { useTheme } from '@lumx/react/utils/theme/ThemeContext';\n\nexport type IconSizes = Extract<Size, 'xxs' | 'xs' | 's' | 'm' | 'l' | 'xl' | 'xxl'>;\n\n/**\n * Defines the props of the component.\n */\nexport interface IconProps extends GenericProps, HasTheme {\n /** Color variant. */\n color?: ColorWithVariants;\n /** Lightened or darkened variant of the selected icon color. */\n colorVariant?: ColorVariant;\n /** Whether the icon has a shape. */\n hasShape?: boolean;\n /**\n * Icon (SVG path) draw code (`d` property of the `<path>` SVG element).\n * See https://developer.mozilla.org/en-US/docs/Web/SVG/Tutorial/Paths\n */\n icon: string;\n /** Size variant. */\n size?: IconSizes;\n /** Sets an alternative text on the svg. Will set an `img` role to the svg. */\n alt?: string;\n}\n\n/**\n * Component display name.\n */\nconst COMPONENT_NAME = 'Icon';\n\n/**\n * Component default class name and class prefix.\n */\nconst CLASSNAME = getRootClassName(COMPONENT_NAME);\n\n/**\n * Component default props.\n */\nconst DEFAULT_PROPS: Partial<IconProps> = {};\n\n/**\n * Icon component.\n *\n * @param props Component props.\n * @param ref Component ref.\n * @return React element.\n */\nexport const Icon = forwardRef<IconProps, HTMLElement>((props, ref) => {\n const defaultTheme = useTheme();\n const {\n className,\n color: propColor,\n colorVariant: propColorVariant,\n hasShape,\n icon,\n size,\n theme = defaultTheme,\n alt,\n ...forwardedProps\n } = props;\n const [color, colorVariant] = resolveColorWithVariants(propColor, propColorVariant);\n\n // Color\n let iconColor = color;\n if (!iconColor && (hasShape || theme)) {\n iconColor = theme === Theme.dark ? ColorPalette.light : ColorPalette.dark;\n }\n\n // Color variant\n let iconColorVariant = colorVariant;\n if (!iconColorVariant && hasShape && iconColor === ColorPalette.dark) {\n iconColorVariant = 'L2';\n }\n\n // Size\n let iconSize = size;\n if (size && hasShape) {\n if (size === Size.xxs || size === Size.xs) {\n iconSize = Size.s;\n } else if (size === Size.xxl) {\n iconSize = Size.xl;\n }\n } else if (hasShape) {\n iconSize = Size.m;\n }\n\n return (\n <i\n ref={ref}\n {...forwardedProps}\n className={classNames(\n className,\n handleBasicClasses({\n color: iconColor,\n colorVariant: iconColorVariant,\n hasShape,\n prefix: CLASSNAME,\n theme,\n size: iconSize,\n }),\n !hasShape && `${CLASSNAME}--no-shape`,\n !hasShape &&\n iconColor === ColorPalette.yellow &&\n icon === mdiAlertCircle &&\n `${CLASSNAME}--has-dark-layer`,\n `${CLASSNAME}--path`,\n )}\n >\n <svg\n aria-hidden={alt ? undefined : 'true'}\n role={alt ? 'img' : undefined}\n aria-label={alt}\n height=\"1em\"\n preserveAspectRatio=\"xMidYMid meet\"\n style={{ verticalAlign: '-0.125em' }}\n viewBox=\"0 0 24 24\"\n width=\"1em\"\n >\n <path d={icon} fill=\"currentColor\" />\n </svg>\n </i>\n );\n});\nIcon.displayName = COMPONENT_NAME;\nIcon.className = CLASSNAME;\nIcon.defaultProps = DEFAULT_PROPS;\n"],"names":["mdiAlertCircle","COMPONENT_NAME","CLASSNAME","getRootClassName","DEFAULT_PROPS","Icon","forwardRef","props","ref","defaultTheme","useTheme","className","color","propColor","colorVariant","propColorVariant","hasShape","icon","size","theme","alt","forwardedProps","resolveColorWithVariants","iconColor","Theme","dark","ColorPalette","light","iconColorVariant","iconSize","Size","xxs","xs","s","xxl","xl","m","_jsx","classNames","handleBasicClasses","prefix","yellow","children","undefined","role","height","preserveAspectRatio","style","verticalAlign","viewBox","width","d","fill","displayName","defaultProps"],"mappings":"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"}
@@ -0,0 +1,436 @@
1
+ import React__default, { useState, useEffect, useLayoutEffect, useMemo, useRef } from 'react';
2
+ import { f as forwardRef, c as classNames } from './forwardRef-15f62847.js';
3
+ import { u as useCallbackOnEscape } from './useCallbackOnEscape-0b220f9c.js';
4
+ import { D as DOCUMENT, W as WINDOW } from './constants-d0e3f49e.js';
5
+ import { getRootClassName, handleBasicClasses } from '@lumx/core/js/utils/className';
6
+ import { u as useMergeRefs } from './mergeRefs-f0d7d6ea.js';
7
+ import { g as getFirstAndLastFocusable, u as useFocusTrap } from './useFocusTrap-3114e5e8.js';
8
+ import { jsx, jsxs } from 'react/jsx-runtime';
9
+ import { T as ThemeProvider } from './ThemeContext-3181f000.js';
10
+ import memoize from 'lodash/memoize';
11
+ import { A as ARROW_SIZE, u as usePopper, d as detectOverflow, F as FitAnchorWidth, P as Placement, a as POPOVER_ZINDEX } from './constants-b9e57936.js';
12
+ import { P as Portal } from './Portal-3f86608e.js';
13
+ import { C as ClickAwayProvider } from './ClickAwayProvider-1204f237.js';
14
+
15
+ /**
16
+ * Hook focusing an element when defined and `focus` boolean `true`.
17
+ *
18
+ * @param element Element to focus.
19
+ * @param shouldFocus Boolean flag to trigger the focus
20
+ */
21
+ function useFocus(element, shouldFocus = true) {
22
+ const [wasFocus, setWasFocus] = useState(false);
23
+ useEffect(() => {
24
+ if (shouldFocus && wasFocus !== shouldFocus && element) {
25
+ element.focus();
26
+ setWasFocus(shouldFocus);
27
+ }
28
+ },
29
+ // eslint-disable-next-line react-hooks/exhaustive-deps
30
+ [element, shouldFocus]);
31
+ }
32
+
33
+ /**
34
+ * HOC component wrapping a component to skip render if predicate return falsy
35
+ */
36
+ const skipRender = (predicate, Component) => {
37
+ const Wrapper = /*#__PURE__*/React__default.forwardRef((props, ref) => {
38
+ if (!DOCUMENT) {
39
+ // Can't render in SSR.
40
+ return null;
41
+ }
42
+ return /*#__PURE__*/jsx(Component, {
43
+ ref: ref,
44
+ ...props
45
+ });
46
+ });
47
+ Wrapper.displayName = Component.displayName;
48
+ return Wrapper;
49
+ };
50
+
51
+ /**
52
+ * Helper component using useLayoutEffect to trigger a callback on before unmount.
53
+ *
54
+ * The callback must be wrapped in a React ref to avoid updating the `useLayoutEffect` before the un-mount
55
+ */
56
+ const OnBeforeUnmount = ({
57
+ callbackRef
58
+ }) => {
59
+ useLayoutEffect(() => {
60
+ return () => {
61
+ // On unmount
62
+ // eslint-disable-next-line react-hooks/exhaustive-deps
63
+ callbackRef.current?.();
64
+ };
65
+ },
66
+ // eslint-disable-next-line react-hooks/exhaustive-deps
67
+ []);
68
+ return null;
69
+ };
70
+
71
+ /**
72
+ * Provides an unmount sentinel to inject in the popover to detect when it closes and restore the focus to the
73
+ * anchor if needed.
74
+ */
75
+ function useRestoreFocusOnClose({
76
+ focusAnchorOnClose,
77
+ anchorRef,
78
+ parentElement
79
+ }, popoverElement) {
80
+ const onBeforeUnmountRef = React__default.useRef();
81
+ React__default.useEffect(() => {
82
+ if (!popoverElement || !focusAnchorOnClose) {
83
+ onBeforeUnmountRef.current = undefined;
84
+ return;
85
+ }
86
+ onBeforeUnmountRef.current = () => {
87
+ const isFocusWithin = popoverElement?.contains(document.activeElement);
88
+ if (!isFocusWithin) return;
89
+
90
+ // On next render
91
+ setTimeout(() => {
92
+ const anchor = anchorRef.current;
93
+ const elementToFocus =
94
+ // Provided parent element
95
+ parentElement?.current || (
96
+ // Or first focusable element in anchor
97
+ anchor ? getFirstAndLastFocusable(anchor).first : undefined) ||
98
+ // Fallback to anchor
99
+ anchor;
100
+ elementToFocus?.focus({
101
+ preventScroll: true
102
+ });
103
+ }, 0);
104
+ };
105
+ }, [anchorRef, focusAnchorOnClose, parentElement, popoverElement]);
106
+ return /*#__PURE__*/jsx(OnBeforeUnmount, {
107
+ callbackRef: onBeforeUnmountRef
108
+ });
109
+ }
110
+
111
+ /**
112
+ * Popper js modifier to fit popover min width to the anchor width.
113
+ */
114
+ const sameWidth = memoize(anchorWidthOption => ({
115
+ name: 'sameWidth',
116
+ enabled: true,
117
+ phase: 'beforeWrite',
118
+ requires: ['computeStyles'],
119
+ fn({
120
+ state
121
+ }) {
122
+ // eslint-disable-next-line no-param-reassign
123
+ state.styles.popper[anchorWidthOption] = `${state.rects.reference.width}px`;
124
+ },
125
+ effect({
126
+ state
127
+ }) {
128
+ // eslint-disable-next-line no-param-reassign
129
+ state.elements.popper.style[anchorWidthOption] = `${state.elements.reference.offsetWidth}px`;
130
+ }
131
+ }));
132
+
133
+ /**
134
+ * Popper js modifier to compute max size of the popover.
135
+ */
136
+ const maxSize = {
137
+ name: 'maxSize',
138
+ enabled: true,
139
+ phase: 'main',
140
+ requiresIfExists: ['offset', 'preventOverflow', 'flip'],
141
+ fn({
142
+ state,
143
+ name,
144
+ options
145
+ }) {
146
+ const overflow = detectOverflow(state, options);
147
+ const {
148
+ y = 0,
149
+ x = 0
150
+ } = state.modifiersData.preventOverflow;
151
+ const {
152
+ width,
153
+ height
154
+ } = state.rects.popper;
155
+ const [basePlacement] = state.placement.split('-');
156
+ const widthProp = basePlacement === 'left' ? 'left' : 'right';
157
+ const heightProp = basePlacement === 'top' ? 'top' : 'bottom';
158
+ // eslint-disable-next-line no-param-reassign
159
+ state.modifiersData[name] = {
160
+ width: width - overflow[widthProp] - x,
161
+ height: height - overflow[heightProp] - y
162
+ };
163
+ }
164
+ };
165
+
166
+ /**
167
+ * Popper js modifier to apply the max height.
168
+ */
169
+ const applyMaxHeight = {
170
+ name: 'applyMaxHeight',
171
+ enabled: true,
172
+ phase: 'beforeWrite',
173
+ requires: ['maxSize'],
174
+ fn({
175
+ state
176
+ }) {
177
+ const {
178
+ height
179
+ } = state.modifiersData.maxSize;
180
+ // eslint-disable-next-line no-param-reassign
181
+ state.elements.popper.style.maxHeight = `${height - ARROW_SIZE}px`;
182
+ }
183
+ };
184
+ function usePopoverStyle({
185
+ offset,
186
+ hasArrow,
187
+ fitToAnchorWidth,
188
+ fitWithinViewportHeight,
189
+ boundaryRef,
190
+ anchorRef,
191
+ placement,
192
+ style,
193
+ zIndex
194
+ }) {
195
+ const [popperElement, setPopperElement] = useState(null);
196
+ const [arrowElement, setArrowElement] = useState(null);
197
+ const actualOffset = [offset?.along ?? 0, (offset?.away ?? 0) + (hasArrow ? ARROW_SIZE : 0)];
198
+ const modifiers = [{
199
+ name: 'offset',
200
+ options: {
201
+ offset: actualOffset
202
+ }
203
+ }];
204
+ if (hasArrow && arrowElement) {
205
+ modifiers.push({
206
+ name: 'arrow',
207
+ options: {
208
+ element: arrowElement,
209
+ padding: ARROW_SIZE / 2
210
+ }
211
+ });
212
+ }
213
+ if (fitToAnchorWidth) {
214
+ const fitWidth = typeof fitToAnchorWidth === 'string' ? fitToAnchorWidth : FitAnchorWidth.MIN_WIDTH;
215
+ modifiers.push(sameWidth(fitWidth));
216
+ }
217
+ if (fitWithinViewportHeight) {
218
+ modifiers.push({
219
+ ...maxSize,
220
+ options: {
221
+ boundary: boundaryRef?.current
222
+ }
223
+ }, applyMaxHeight);
224
+ }
225
+ if (boundaryRef) {
226
+ modifiers.push({
227
+ name: 'flip',
228
+ options: {
229
+ boundary: boundaryRef.current
230
+ }
231
+ }, {
232
+ name: 'preventOverflow',
233
+ options: {
234
+ boundary: boundaryRef.current
235
+ }
236
+ });
237
+ }
238
+ const {
239
+ styles,
240
+ attributes,
241
+ state,
242
+ update
243
+ } = usePopper(anchorRef.current, popperElement, {
244
+ placement,
245
+ modifiers
246
+ });
247
+
248
+ // Auto update popover
249
+ useEffect(() => {
250
+ const {
251
+ current: anchorElement
252
+ } = anchorRef;
253
+ if (!update || !popperElement || !anchorElement || !WINDOW?.ResizeObserver) {
254
+ return undefined;
255
+ }
256
+ let running;
257
+ function updateRateLimited() {
258
+ if (running) return;
259
+ update?.();
260
+ running = setTimeout(() => {
261
+ running = undefined;
262
+ }, 100);
263
+ }
264
+ updateRateLimited();
265
+
266
+ // On anchor or popover resize
267
+ const resizeObserver = new ResizeObserver(updateRateLimited);
268
+ resizeObserver.observe(anchorElement);
269
+ resizeObserver.observe(popperElement);
270
+ return () => {
271
+ resizeObserver.disconnect();
272
+ };
273
+ }, [anchorRef, popperElement, update]);
274
+ const position = state?.placement ?? placement;
275
+ const popoverStyle = useMemo(() => {
276
+ const newStyles = {
277
+ ...style,
278
+ ...styles.popper,
279
+ zIndex
280
+ };
281
+ if (fitWithinViewportHeight && !newStyles.maxHeight) {
282
+ newStyles.maxHeight = WINDOW?.innerHeight || DOCUMENT?.documentElement.clientHeight;
283
+ }
284
+ return newStyles;
285
+ }, [style, styles.popper, zIndex, fitWithinViewportHeight]);
286
+ return {
287
+ styles: {
288
+ arrow: styles.arrow,
289
+ popover: popoverStyle
290
+ },
291
+ attributes,
292
+ isPositioned: (state?.rects?.popper?.y ?? -1) >= 0,
293
+ position,
294
+ setArrowElement,
295
+ setPopperElement,
296
+ popperElement
297
+ };
298
+ }
299
+
300
+ /**
301
+ * Component display name.
302
+ */
303
+ const COMPONENT_NAME = 'Popover';
304
+
305
+ /**
306
+ * Component default class name and class prefix.
307
+ */
308
+ const CLASSNAME = getRootClassName(COMPONENT_NAME);
309
+
310
+ /**
311
+ * Component default props.
312
+ */
313
+ const DEFAULT_PROPS = {
314
+ elevation: 3,
315
+ placement: Placement.AUTO,
316
+ focusAnchorOnClose: true,
317
+ usePortal: true,
318
+ zIndex: POPOVER_ZINDEX
319
+ };
320
+
321
+ // Inner component (must be wrapped before export)
322
+ const _InnerPopover = forwardRef((props, ref) => {
323
+ const {
324
+ anchorRef,
325
+ as: Component = 'div',
326
+ children,
327
+ className,
328
+ closeOnClickAway,
329
+ closeOnEscape,
330
+ elevation = DEFAULT_PROPS.elevation,
331
+ focusElement,
332
+ hasArrow,
333
+ isOpen,
334
+ onClose,
335
+ parentElement,
336
+ usePortal = DEFAULT_PROPS.usePortal,
337
+ focusAnchorOnClose = DEFAULT_PROPS.focusAnchorOnClose,
338
+ withFocusTrap,
339
+ boundaryRef,
340
+ fitToAnchorWidth,
341
+ fitWithinViewportHeight,
342
+ focusTrapZoneElement,
343
+ offset,
344
+ placement = DEFAULT_PROPS.placement,
345
+ style,
346
+ theme,
347
+ zIndex = DEFAULT_PROPS.zIndex,
348
+ ...forwardedProps
349
+ } = props;
350
+ const popoverRef = useRef(null);
351
+ const {
352
+ styles,
353
+ attributes,
354
+ isPositioned,
355
+ position,
356
+ setArrowElement,
357
+ setPopperElement,
358
+ popperElement
359
+ } = usePopoverStyle({
360
+ offset,
361
+ hasArrow,
362
+ fitToAnchorWidth,
363
+ fitWithinViewportHeight,
364
+ boundaryRef,
365
+ anchorRef,
366
+ placement,
367
+ style,
368
+ zIndex
369
+ });
370
+ const unmountSentinel = useRestoreFocusOnClose({
371
+ focusAnchorOnClose,
372
+ anchorRef,
373
+ parentElement
374
+ }, popperElement);
375
+ const focusZoneElement = focusTrapZoneElement?.current || popoverRef?.current;
376
+ useCallbackOnEscape(onClose, isOpen && closeOnEscape);
377
+
378
+ /** Only set focus within if the focus trap is disabled as they interfere with one another. */
379
+ useFocus(focusElement?.current, !withFocusTrap && isOpen && isPositioned);
380
+ useFocusTrap(withFocusTrap && isOpen && focusZoneElement, focusElement?.current);
381
+ const clickAwayRefs = useRef([popoverRef, anchorRef]);
382
+ const mergedRefs = useMergeRefs(setPopperElement, ref, popoverRef);
383
+ return isOpen ? /*#__PURE__*/jsx(Portal, {
384
+ enabled: usePortal,
385
+ children: /*#__PURE__*/jsxs(Component, {
386
+ ...forwardedProps,
387
+ ref: mergedRefs,
388
+ className: classNames(className, handleBasicClasses({
389
+ prefix: CLASSNAME,
390
+ theme,
391
+ elevation: Math.min(elevation || 0, 5),
392
+ position,
393
+ isInitializing: !styles.popover?.transform
394
+ })),
395
+ style: styles.popover,
396
+ ...attributes.popper,
397
+ children: [unmountSentinel, /*#__PURE__*/jsxs(ClickAwayProvider, {
398
+ callback: closeOnClickAway && onClose,
399
+ childrenRefs: clickAwayRefs,
400
+ children: [hasArrow && /*#__PURE__*/jsx("div", {
401
+ ref: setArrowElement,
402
+ className: `${CLASSNAME}__arrow`,
403
+ style: styles.arrow,
404
+ children: /*#__PURE__*/jsx("svg", {
405
+ viewBox: "0 0 14 14",
406
+ "aria-hidden": true,
407
+ children: /*#__PURE__*/jsx("path", {
408
+ d: "M8 3.49C7.62 2.82 6.66 2.82 6.27 3.48L.04 14 14.04 14 8 3.49Z"
409
+ })
410
+ })
411
+ }), /*#__PURE__*/jsx(ThemeProvider, {
412
+ value: theme,
413
+ children: children
414
+ })]
415
+ })]
416
+ })
417
+ }) : null;
418
+ });
419
+ _InnerPopover.displayName = COMPONENT_NAME;
420
+
421
+ /**
422
+ * Popover component.
423
+ *
424
+ * @param props Component props.
425
+ * @param ref Component ref.
426
+ * @return React element.
427
+ */
428
+ const Popover = skipRender(
429
+ // Skip render in SSR
430
+ () => Boolean(DOCUMENT), _InnerPopover);
431
+ Popover.displayName = COMPONENT_NAME;
432
+ Popover.className = CLASSNAME;
433
+ Popover.defaultProps = DEFAULT_PROPS;
434
+
435
+ export { Popover as P, useFocus as u };
436
+ //# sourceMappingURL=index-8e7fecb5.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-8e7fecb5.js","sources":["../../src/hooks/useFocus.tsx","../../src/utils/react/skipRender.tsx","../../src/utils/react/OnBeforeUnmount.tsx","../../src/components/popover/useRestoreFocusOnClose.tsx","../../src/components/popover/usePopoverStyle.tsx","../../src/components/popover/Popover.tsx"],"sourcesContent":["import { useEffect, useState } from 'react';\n\n/**\n * Hook focusing an element when defined and `focus` boolean `true`.\n *\n * @param element Element to focus.\n * @param shouldFocus Boolean flag to trigger the focus\n */\nexport function useFocus(element: HTMLElement | null | undefined, shouldFocus = true): void {\n const [wasFocus, setWasFocus] = useState(false);\n useEffect(\n () => {\n if (shouldFocus && wasFocus !== shouldFocus && element) {\n element.focus();\n setWasFocus(shouldFocus);\n }\n },\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [element, shouldFocus],\n );\n}\n","import React from 'react';\n\nimport { DOCUMENT } from '@lumx/react/constants';\nimport type { Comp } from '@lumx/react/utils/type';\n/**\n * HOC component wrapping a component to skip render if predicate return falsy\n */\nexport const skipRender = <P, T>(predicate: (props: P) => any, Component: Comp<P, T>) => {\n const Wrapper = React.forwardRef<T, P>((props, ref) => {\n if (!DOCUMENT) {\n // Can't render in SSR.\n return null;\n }\n return <Component ref={ref} {...props} />;\n });\n Wrapper.displayName = Component.displayName;\n return Wrapper;\n};\n","import { useLayoutEffect } from 'react';\n\n/**\n * Helper component using useLayoutEffect to trigger a callback on before unmount.\n *\n * The callback must be wrapped in a React ref to avoid updating the `useLayoutEffect` before the un-mount\n */\nexport const OnBeforeUnmount = ({ callbackRef }: { callbackRef: React.RefObject<(() => void) | undefined> }) => {\n useLayoutEffect(\n () => {\n return () => {\n // On unmount\n // eslint-disable-next-line react-hooks/exhaustive-deps\n callbackRef.current?.();\n };\n }, // eslint-disable-next-line react-hooks/exhaustive-deps\n [],\n );\n return null;\n};\n","import React from 'react';\nimport { getFirstAndLastFocusable } from '@lumx/react/utils/browser/focus/getFirstAndLastFocusable';\nimport { OnBeforeUnmount } from '@lumx/react/utils/react/OnBeforeUnmount';\nimport type { PopoverProps } from './Popover';\n\n/**\n * Provides an unmount sentinel to inject in the popover to detect when it closes and restore the focus to the\n * anchor if needed.\n */\nexport function useRestoreFocusOnClose(\n {\n focusAnchorOnClose,\n anchorRef,\n parentElement,\n }: Pick<PopoverProps, 'focusAnchorOnClose' | 'anchorRef' | 'parentElement'>,\n popoverElement?: HTMLElement | null,\n) {\n const onBeforeUnmountRef = React.useRef<(() => void) | undefined>();\n\n React.useEffect(() => {\n if (!popoverElement || !focusAnchorOnClose) {\n onBeforeUnmountRef.current = undefined;\n return;\n }\n\n onBeforeUnmountRef.current = () => {\n const isFocusWithin = popoverElement?.contains(document.activeElement);\n if (!isFocusWithin) return;\n\n // On next render\n setTimeout(() => {\n const anchor = anchorRef.current;\n const elementToFocus =\n // Provided parent element\n parentElement?.current ||\n // Or first focusable element in anchor\n (anchor ? getFirstAndLastFocusable(anchor).first : undefined) ||\n // Fallback to anchor\n anchor;\n\n elementToFocus?.focus({ preventScroll: true });\n }, 0);\n };\n }, [anchorRef, focusAnchorOnClose, parentElement, popoverElement]);\n\n return <OnBeforeUnmount callbackRef={onBeforeUnmountRef} />;\n}\n","import { useEffect, useMemo, useState } from 'react';\nimport memoize from 'lodash/memoize';\nimport { detectOverflow } from '@popperjs/core';\n\nimport { DOCUMENT, WINDOW } from '@lumx/react/constants';\nimport { PopoverProps } from '@lumx/react/components/popover/Popover';\nimport { usePopper } from '@lumx/react/hooks/usePopper';\nimport { ARROW_SIZE, FitAnchorWidth, Placement } from './constants';\n\n/**\n * Popper js modifier to fit popover min width to the anchor width.\n */\nconst sameWidth = memoize((anchorWidthOption: FitAnchorWidth) => ({\n name: 'sameWidth',\n enabled: true,\n phase: 'beforeWrite',\n requires: ['computeStyles'],\n fn({ state }: any) {\n // eslint-disable-next-line no-param-reassign\n state.styles.popper[anchorWidthOption] = `${state.rects.reference.width}px`;\n },\n effect({ state }: any) {\n // eslint-disable-next-line no-param-reassign\n state.elements.popper.style[anchorWidthOption] = `${state.elements.reference.offsetWidth}px`;\n },\n}));\n\n/**\n * Popper js modifier to compute max size of the popover.\n */\nconst maxSize = {\n name: 'maxSize',\n enabled: true,\n phase: 'main',\n requiresIfExists: ['offset', 'preventOverflow', 'flip'],\n fn({ state, name, options }: any) {\n const overflow = detectOverflow(state, options);\n\n const { y = 0, x = 0 } = state.modifiersData.preventOverflow;\n const { width, height } = state.rects.popper;\n\n const [basePlacement] = state.placement.split('-');\n\n const widthProp = basePlacement === 'left' ? 'left' : 'right';\n const heightProp = basePlacement === 'top' ? 'top' : 'bottom';\n // eslint-disable-next-line no-param-reassign\n state.modifiersData[name] = {\n width: width - overflow[widthProp] - x,\n height: height - overflow[heightProp] - y,\n };\n },\n};\n\n/**\n * Popper js modifier to apply the max height.\n */\nconst applyMaxHeight = {\n name: 'applyMaxHeight',\n enabled: true,\n phase: 'beforeWrite',\n requires: ['maxSize'],\n fn({ state }: any) {\n const { height } = state.modifiersData.maxSize;\n // eslint-disable-next-line no-param-reassign\n state.elements.popper.style.maxHeight = `${height - ARROW_SIZE}px`;\n },\n};\n\ntype Options = Pick<\n PopoverProps,\n | 'offset'\n | 'hasArrow'\n | 'fitToAnchorWidth'\n | 'fitWithinViewportHeight'\n | 'boundaryRef'\n | 'anchorRef'\n | 'placement'\n | 'style'\n | 'zIndex'\n>;\n\ninterface Output {\n styles: { arrow?: React.CSSProperties; popover?: React.CSSProperties };\n attributes: any;\n isPositioned: boolean;\n position?: Placement;\n setArrowElement?: React.Ref<HTMLDivElement>;\n setPopperElement?: React.Ref<HTMLDivElement>;\n popperElement: HTMLElement | null;\n}\n\nexport function usePopoverStyle({\n offset,\n hasArrow,\n fitToAnchorWidth,\n fitWithinViewportHeight,\n boundaryRef,\n anchorRef,\n placement,\n style,\n zIndex,\n}: Options): Output {\n const [popperElement, setPopperElement] = useState<null | HTMLElement>(null);\n const [arrowElement, setArrowElement] = useState<null | HTMLElement>(null);\n\n const actualOffset: [number, number] = [offset?.along ?? 0, (offset?.away ?? 0) + (hasArrow ? ARROW_SIZE : 0)];\n const modifiers: any = [\n {\n name: 'offset',\n options: { offset: actualOffset },\n },\n ];\n if (hasArrow && arrowElement) {\n modifiers.push({\n name: 'arrow',\n options: {\n element: arrowElement,\n padding: ARROW_SIZE / 2,\n },\n });\n }\n if (fitToAnchorWidth) {\n const fitWidth = typeof fitToAnchorWidth === 'string' ? fitToAnchorWidth : FitAnchorWidth.MIN_WIDTH;\n modifiers.push(sameWidth(fitWidth));\n }\n if (fitWithinViewportHeight) {\n modifiers.push({ ...maxSize, options: { boundary: boundaryRef?.current } }, applyMaxHeight);\n }\n if (boundaryRef) {\n modifiers.push(\n { name: 'flip', options: { boundary: boundaryRef.current } },\n { name: 'preventOverflow', options: { boundary: boundaryRef.current } },\n );\n }\n\n const { styles, attributes, state, update } = usePopper(anchorRef.current, popperElement, { placement, modifiers });\n\n // Auto update popover\n useEffect(() => {\n const { current: anchorElement } = anchorRef;\n if (!update || !popperElement || !anchorElement || !WINDOW?.ResizeObserver) {\n return undefined;\n }\n let running: ReturnType<typeof setTimeout> | undefined;\n function updateRateLimited() {\n if (running) return;\n update?.();\n running = setTimeout(() => {\n running = undefined;\n }, 100);\n }\n updateRateLimited();\n\n // On anchor or popover resize\n const resizeObserver = new ResizeObserver(updateRateLimited);\n resizeObserver.observe(anchorElement);\n resizeObserver.observe(popperElement);\n return () => {\n resizeObserver.disconnect();\n };\n }, [anchorRef, popperElement, update]);\n\n const position = state?.placement ?? placement;\n\n const popoverStyle = useMemo(() => {\n const newStyles = { ...style, ...styles.popper, zIndex };\n\n if (fitWithinViewportHeight && !newStyles.maxHeight) {\n newStyles.maxHeight = WINDOW?.innerHeight || DOCUMENT?.documentElement.clientHeight;\n }\n\n return newStyles;\n }, [style, styles.popper, zIndex, fitWithinViewportHeight]);\n\n return {\n styles: { arrow: styles.arrow, popover: popoverStyle },\n attributes,\n isPositioned: (state?.rects?.popper?.y ?? -1) >= 0,\n position,\n setArrowElement,\n setPopperElement,\n popperElement,\n };\n}\n","import { ReactNode, RefObject, useRef } from 'react';\n\nimport classNames from 'classnames';\n\nimport { useCallbackOnEscape } from '@lumx/react/hooks/useCallbackOnEscape';\nimport { useFocus } from '@lumx/react/hooks/useFocus';\nimport { ClickAwayProvider } from '@lumx/react/utils/ClickAwayProvider';\nimport { DOCUMENT } from '@lumx/react/constants';\nimport { Comp, GenericProps, HasTheme } from '@lumx/react/utils/type';\nimport { getRootClassName, handleBasicClasses } from '@lumx/core/js/utils/className';\nimport { useMergeRefs } from '@lumx/react/utils/react/mergeRefs';\nimport { useFocusTrap } from '@lumx/react/hooks/useFocusTrap';\nimport { skipRender } from '@lumx/react/utils/react/skipRender';\nimport { forwardRef } from '@lumx/react/utils/react/forwardRef';\n\nimport { ThemeProvider } from '@lumx/react/utils/theme/ThemeContext';\nimport { Portal } from '@lumx/react/utils';\nimport { useRestoreFocusOnClose } from './useRestoreFocusOnClose';\nimport { usePopoverStyle } from './usePopoverStyle';\nimport { Elevation, FitAnchorWidth, Offset, Placement, POPOVER_ZINDEX } from './constants';\n\n/**\n * Defines the props of the component.\n */\nexport interface PopoverProps extends GenericProps, HasTheme {\n /** Reference to the DOM element used to set the position of the popover. */\n anchorRef: React.RefObject<HTMLElement>;\n /** Customize the root element. (Must accept ref forwarding and props forwarding!). */\n as?: React.ElementType;\n /** Element which will act as boundary when opening the popover. */\n boundaryRef?: RefObject<HTMLElement>;\n /** Content. */\n children: ReactNode;\n /** Whether a click anywhere out of the popover would close it. */\n closeOnClickAway?: boolean;\n /** Whether an escape key press would close the popover. */\n closeOnEscape?: boolean;\n /** Shadow elevation. */\n elevation?: Elevation;\n /**\n * Manage popover width:\n * - `maxWidth`: popover not bigger than anchor\n * - `minWidth` or `true`: popover not smaller than anchor\n * - `width`: popover equal to the anchor.\n */\n fitToAnchorWidth?: FitAnchorWidth | boolean;\n /** Shrink popover if even after flipping there is not enough space. */\n fitWithinViewportHeight?: boolean;\n /** Element to focus when opening the popover. */\n focusElement?: RefObject<HTMLElement>;\n /** Whether the focus should go back on the anchor when popover closes and focus is within. */\n focusAnchorOnClose?: boolean;\n /** Whether we put an arrow or not. */\n hasArrow?: boolean;\n /** Whether the popover is open or not. */\n isOpen: boolean;\n /** Offset placement relative to anchor. */\n offset?: Offset;\n /** Reference to the parent element that triggered the popover (will get back focus on close or else fallback on the anchor element). */\n parentElement?: RefObject<HTMLElement>;\n /** Placement relative to anchor. */\n placement?: Placement;\n /** Whether the popover should be rendered into a DOM node that exists outside the DOM hierarchy of the parent component. */\n usePortal?: boolean;\n /** The element in which the focus trap should be set. Default to popover. */\n focusTrapZoneElement?: RefObject<HTMLElement>;\n /** Z-axis position. */\n zIndex?: number;\n /** On close callback (on click away or Escape pressed). */\n onClose?(): void;\n /** Whether the popover should trap the focus within itself. Default to false. */\n withFocusTrap?: boolean;\n}\n\n/**\n * Component display name.\n */\nconst COMPONENT_NAME = 'Popover';\n\n/**\n * Component default class name and class prefix.\n */\nconst CLASSNAME = getRootClassName(COMPONENT_NAME);\n\n/**\n * Component default props.\n */\nconst DEFAULT_PROPS: Partial<PopoverProps> = {\n elevation: 3,\n placement: Placement.AUTO,\n focusAnchorOnClose: true,\n usePortal: true,\n zIndex: POPOVER_ZINDEX,\n};\n\n// Inner component (must be wrapped before export)\nconst _InnerPopover = forwardRef<PopoverProps, HTMLDivElement>((props, ref) => {\n const {\n anchorRef,\n as: Component = 'div',\n children,\n className,\n closeOnClickAway,\n closeOnEscape,\n elevation = DEFAULT_PROPS.elevation,\n focusElement,\n hasArrow,\n isOpen,\n onClose,\n parentElement,\n usePortal = DEFAULT_PROPS.usePortal,\n focusAnchorOnClose = DEFAULT_PROPS.focusAnchorOnClose,\n withFocusTrap,\n boundaryRef,\n fitToAnchorWidth,\n fitWithinViewportHeight,\n focusTrapZoneElement,\n offset,\n placement = DEFAULT_PROPS.placement,\n style,\n theme,\n zIndex = DEFAULT_PROPS.zIndex,\n ...forwardedProps\n } = props;\n const popoverRef = useRef<HTMLDivElement>(null);\n\n const { styles, attributes, isPositioned, position, setArrowElement, setPopperElement, popperElement } =\n usePopoverStyle({\n offset,\n hasArrow,\n fitToAnchorWidth,\n fitWithinViewportHeight,\n boundaryRef,\n anchorRef,\n placement,\n style,\n zIndex,\n });\n\n const unmountSentinel = useRestoreFocusOnClose({ focusAnchorOnClose, anchorRef, parentElement }, popperElement);\n const focusZoneElement = focusTrapZoneElement?.current || popoverRef?.current;\n\n useCallbackOnEscape(onClose, isOpen && closeOnEscape);\n\n /** Only set focus within if the focus trap is disabled as they interfere with one another. */\n useFocus(focusElement?.current, !withFocusTrap && isOpen && isPositioned);\n useFocusTrap(withFocusTrap && isOpen && focusZoneElement, focusElement?.current);\n\n const clickAwayRefs = useRef([popoverRef, anchorRef]);\n const mergedRefs = useMergeRefs<HTMLDivElement>(setPopperElement, ref, popoverRef);\n\n return isOpen ? (\n <Portal enabled={usePortal}>\n <Component\n {...forwardedProps}\n ref={mergedRefs}\n className={classNames(\n className,\n handleBasicClasses({\n prefix: CLASSNAME,\n theme,\n elevation: Math.min(elevation || 0, 5),\n position,\n isInitializing: !styles.popover?.transform,\n }),\n )}\n style={styles.popover}\n {...attributes.popper}\n >\n {unmountSentinel}\n <ClickAwayProvider callback={closeOnClickAway && onClose} childrenRefs={clickAwayRefs}>\n {hasArrow && (\n <div ref={setArrowElement} className={`${CLASSNAME}__arrow`} style={styles.arrow}>\n <svg viewBox=\"0 0 14 14\" aria-hidden>\n <path d=\"M8 3.49C7.62 2.82 6.66 2.82 6.27 3.48L.04 14 14.04 14 8 3.49Z\" />\n </svg>\n </div>\n )}\n <ThemeProvider value={theme}>{children}</ThemeProvider>\n </ClickAwayProvider>\n </Component>\n </Portal>\n ) : null;\n});\n_InnerPopover.displayName = COMPONENT_NAME;\n\n/**\n * Popover component.\n *\n * @param props Component props.\n * @param ref Component ref.\n * @return React element.\n */\nexport const Popover: Comp<PopoverProps, HTMLDivElement> = skipRender(\n // Skip render in SSR\n () => Boolean(DOCUMENT),\n _InnerPopover,\n);\nPopover.displayName = COMPONENT_NAME;\nPopover.className = CLASSNAME;\nPopover.defaultProps = DEFAULT_PROPS;\n"],"names":["useFocus","element","shouldFocus","wasFocus","setWasFocus","useState","useEffect","focus","skipRender","predicate","Component","Wrapper","React","forwardRef","props","ref","DOCUMENT","_jsx","displayName","OnBeforeUnmount","callbackRef","useLayoutEffect","current","useRestoreFocusOnClose","focusAnchorOnClose","anchorRef","parentElement","popoverElement","onBeforeUnmountRef","useRef","undefined","isFocusWithin","contains","document","activeElement","setTimeout","anchor","elementToFocus","getFirstAndLastFocusable","first","preventScroll","sameWidth","memoize","anchorWidthOption","name","enabled","phase","requires","fn","state","styles","popper","rects","reference","width","effect","elements","style","offsetWidth","maxSize","requiresIfExists","options","overflow","detectOverflow","y","x","modifiersData","preventOverflow","height","basePlacement","placement","split","widthProp","heightProp","applyMaxHeight","maxHeight","ARROW_SIZE","usePopoverStyle","offset","hasArrow","fitToAnchorWidth","fitWithinViewportHeight","boundaryRef","zIndex","popperElement","setPopperElement","arrowElement","setArrowElement","actualOffset","along","away","modifiers","push","padding","fitWidth","FitAnchorWidth","MIN_WIDTH","boundary","attributes","update","usePopper","anchorElement","WINDOW","ResizeObserver","running","updateRateLimited","resizeObserver","observe","disconnect","position","popoverStyle","useMemo","newStyles","innerHeight","documentElement","clientHeight","arrow","popover","isPositioned","COMPONENT_NAME","CLASSNAME","getRootClassName","DEFAULT_PROPS","elevation","Placement","AUTO","usePortal","POPOVER_ZINDEX","_InnerPopover","as","children","className","closeOnClickAway","closeOnEscape","focusElement","isOpen","onClose","withFocusTrap","focusTrapZoneElement","theme","forwardedProps","popoverRef","unmountSentinel","focusZoneElement","useCallbackOnEscape","useFocusTrap","clickAwayRefs","mergedRefs","useMergeRefs","Portal","_jsxs","classNames","handleBasicClasses","prefix","Math","min","isInitializing","transform","ClickAwayProvider","callback","childrenRefs","viewBox","d","ThemeProvider","value","Popover","Boolean","defaultProps"],"mappings":"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"}