@lumx/react 3.20.1-alpha.10 → 3.20.1-alpha.11

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 (723) hide show
  1. package/CONTRIBUTING.md +1 -5
  2. package/README.md +0 -2
  3. package/_internal/01bc8fcf.js +114 -0
  4. package/_internal/01bc8fcf.js.map +1 -0
  5. package/_internal/0361b7fb.js +15 -0
  6. package/_internal/0361b7fb.js.map +1 -0
  7. package/_internal/077b7bef.js +29 -0
  8. package/_internal/077b7bef.js.map +1 -0
  9. package/_internal/07e0bd90.js +147 -0
  10. package/_internal/07e0bd90.js.map +1 -0
  11. package/_internal/0a31e895.js +304 -0
  12. package/_internal/0a31e895.js.map +1 -0
  13. package/_internal/0b9c76cb.js +6 -0
  14. package/_internal/0b9c76cb.js.map +1 -0
  15. package/_internal/0f4b35b2.js +76 -0
  16. package/_internal/0f4b35b2.js.map +1 -0
  17. package/_internal/18334f0d.js +140 -0
  18. package/_internal/18334f0d.js.map +1 -0
  19. package/_internal/1921f348.js +72 -0
  20. package/_internal/1921f348.js.map +1 -0
  21. package/_internal/1aaa0341.js +645 -0
  22. package/_internal/1aaa0341.js.map +1 -0
  23. package/_internal/1ce667fb.js +790 -0
  24. package/_internal/1ce667fb.js.map +1 -0
  25. package/_internal/1e4b7ad5.js +60 -0
  26. package/_internal/1e4b7ad5.js.map +1 -0
  27. package/_internal/1eab656b.js +75 -0
  28. package/_internal/1eab656b.js.map +1 -0
  29. package/_internal/21aeb1c7.js +19 -0
  30. package/_internal/21aeb1c7.js.map +1 -0
  31. package/_internal/21cf275f.js +158 -0
  32. package/_internal/21cf275f.js.map +1 -0
  33. package/_internal/230173a8.js +13 -0
  34. package/_internal/230173a8.js.map +1 -0
  35. package/_internal/2368cb68.js +297 -0
  36. package/_internal/2368cb68.js.map +1 -0
  37. package/_internal/286fc728.js +2 -0
  38. package/_internal/286fc728.js.map +1 -0
  39. package/_internal/2938a251.js +147 -0
  40. package/_internal/2938a251.js.map +1 -0
  41. package/_internal/2a3d237c.js +12 -0
  42. package/_internal/2a3d237c.js.map +1 -0
  43. package/_internal/2c7942af.js +108 -0
  44. package/_internal/2c7942af.js.map +1 -0
  45. package/_internal/2d6bde7d.js +209 -0
  46. package/_internal/2d6bde7d.js.map +1 -0
  47. package/_internal/30f4c83c.js +59 -0
  48. package/_internal/30f4c83c.js.map +1 -0
  49. package/_internal/3181f000.js +14 -0
  50. package/_internal/3181f000.js.map +1 -0
  51. package/_internal/32698205.js +107 -0
  52. package/_internal/32698205.js.map +1 -0
  53. package/_internal/3646abc3.js +346 -0
  54. package/_internal/3646abc3.js.map +1 -0
  55. package/_internal/3683d267.js +52 -0
  56. package/_internal/3683d267.js.map +1 -0
  57. package/_internal/36bd7352.js +219 -0
  58. package/_internal/36bd7352.js.map +1 -0
  59. package/_internal/38b3ecf3.js +133 -0
  60. package/_internal/38b3ecf3.js.map +1 -0
  61. package/_internal/3a1facc0.js +18 -0
  62. package/_internal/3a1facc0.js.map +1 -0
  63. package/_internal/3f3de25e.js +112 -0
  64. package/_internal/3f3de25e.js.map +1 -0
  65. package/_internal/407735b4.js +2155 -0
  66. package/_internal/407735b4.js.map +1 -0
  67. package/_internal/43262bfe.js +48 -0
  68. package/_internal/43262bfe.js.map +1 -0
  69. package/_internal/432c85a7.js +50 -0
  70. package/_internal/432c85a7.js.map +1 -0
  71. package/_internal/49bbeed3.js +6 -0
  72. package/_internal/49bbeed3.js.map +1 -0
  73. package/_internal/4c5a7b63.js +53 -0
  74. package/_internal/4c5a7b63.js.map +1 -0
  75. package/_internal/4ceaf17c.js +75 -0
  76. package/_internal/4ceaf17c.js.map +1 -0
  77. package/_internal/4d92e13b.js +97 -0
  78. package/_internal/4d92e13b.js.map +1 -0
  79. package/{src/utils/partitionMulti.ts → _internal/4daccdd5.js} +5 -9
  80. package/_internal/4daccdd5.js.map +1 -0
  81. package/_internal/4e1dde79.js +104 -0
  82. package/_internal/4e1dde79.js.map +1 -0
  83. package/_internal/5ba8fae8.js +120 -0
  84. package/_internal/5ba8fae8.js.map +1 -0
  85. package/_internal/60923026.js +36 -0
  86. package/_internal/60923026.js.map +1 -0
  87. package/_internal/60f8e509.js +745 -0
  88. package/_internal/60f8e509.js.map +1 -0
  89. package/_internal/64046d7a.js +57 -0
  90. package/_internal/64046d7a.js.map +1 -0
  91. package/_internal/70cf341b.js +117 -0
  92. package/_internal/70cf341b.js.map +1 -0
  93. package/_internal/714809cc.js +312 -0
  94. package/_internal/714809cc.js.map +1 -0
  95. package/_internal/72407886.js +430 -0
  96. package/_internal/72407886.js.map +1 -0
  97. package/_internal/742d4906.js +148 -0
  98. package/_internal/742d4906.js.map +1 -0
  99. package/_internal/77eb8ef3.js +149 -0
  100. package/_internal/77eb8ef3.js.map +1 -0
  101. package/_internal/78df9309.js +20 -0
  102. package/_internal/78df9309.js.map +1 -0
  103. package/_internal/7b214f74.js +70 -0
  104. package/_internal/7b214f74.js.map +1 -0
  105. package/_internal/7b221b05.js +9 -0
  106. package/_internal/7b221b05.js.map +1 -0
  107. package/_internal/7c4f4643.js +20 -0
  108. package/_internal/7c4f4643.js.map +1 -0
  109. package/_internal/7daf0f24.js +77 -0
  110. package/_internal/7daf0f24.js.map +1 -0
  111. package/_internal/803945f7.js +65 -0
  112. package/_internal/803945f7.js.map +1 -0
  113. package/_internal/80e5c950.js +80 -0
  114. package/_internal/80e5c950.js.map +1 -0
  115. package/_internal/825ac334.js +130 -0
  116. package/_internal/825ac334.js.map +1 -0
  117. package/_internal/827b804a.js +6 -0
  118. package/_internal/827b804a.js.map +1 -0
  119. package/_internal/85d992d2.js +678 -0
  120. package/_internal/85d992d2.js.map +1 -0
  121. package/_internal/87bada02.js +262 -0
  122. package/_internal/87bada02.js.map +1 -0
  123. package/_internal/881714a1.js +187 -0
  124. package/_internal/881714a1.js.map +1 -0
  125. package/_internal/88ec77c2.js +130 -0
  126. package/_internal/88ec77c2.js.map +1 -0
  127. package/_internal/8fcceef3.js +120 -0
  128. package/_internal/8fcceef3.js.map +1 -0
  129. package/_internal/9210e2f3.js +61 -0
  130. package/_internal/9210e2f3.js.map +1 -0
  131. package/_internal/9452daf7.js +103 -0
  132. package/_internal/9452daf7.js.map +1 -0
  133. package/_internal/95a2e851.js +42 -0
  134. package/_internal/95a2e851.js.map +1 -0
  135. package/_internal/9cf0d217.js +147 -0
  136. package/_internal/9cf0d217.js.map +1 -0
  137. package/_internal/9cfa3e10.js +108 -0
  138. package/_internal/9cfa3e10.js.map +1 -0
  139. package/_internal/9d8130ae.js +301 -0
  140. package/_internal/9d8130ae.js.map +1 -0
  141. package/_internal/a67f26a8.js +98 -0
  142. package/_internal/a67f26a8.js.map +1 -0
  143. package/_internal/aa8c5d9b.js +50 -0
  144. package/_internal/aa8c5d9b.js.map +1 -0
  145. package/_internal/aafcf80e.js +312 -0
  146. package/_internal/aafcf80e.js.map +1 -0
  147. package/_internal/ac3bc511.js +2 -0
  148. package/_internal/ac3bc511.js.map +1 -0
  149. package/_internal/b3bfbe72.js +24 -0
  150. package/_internal/b3bfbe72.js.map +1 -0
  151. package/_internal/b925072d.js +91 -0
  152. package/_internal/b925072d.js.map +1 -0
  153. package/_internal/baa0a23b.js +95 -0
  154. package/_internal/baa0a23b.js.map +1 -0
  155. package/_internal/bba7d4c4.js +225 -0
  156. package/_internal/bba7d4c4.js.map +1 -0
  157. package/_internal/bc4cb4c0.js +86 -0
  158. package/_internal/bc4cb4c0.js.map +1 -0
  159. package/_internal/bcce6ceb.js +93 -0
  160. package/_internal/bcce6ceb.js.map +1 -0
  161. package/_internal/bdd41804.js +157 -0
  162. package/_internal/bdd41804.js.map +1 -0
  163. package/_internal/c43d098b.js +42 -0
  164. package/_internal/c43d098b.js.map +1 -0
  165. package/_internal/cb036703.js +113 -0
  166. package/_internal/cb036703.js.map +1 -0
  167. package/_internal/cc995526.js +2 -0
  168. package/_internal/cc995526.js.map +1 -0
  169. package/_internal/cdc3efab.js +173 -0
  170. package/_internal/cdc3efab.js.map +1 -0
  171. package/_internal/d0dd1815.js +10 -0
  172. package/_internal/d0dd1815.js.map +1 -0
  173. package/_internal/d3321a86.js +290 -0
  174. package/_internal/d3321a86.js.map +1 -0
  175. package/_internal/d66c4375.js +62 -0
  176. package/_internal/d66c4375.js.map +1 -0
  177. package/_internal/d6b3a3c0.js +317 -0
  178. package/_internal/d6b3a3c0.js.map +1 -0
  179. package/_internal/dd0a245d.js +142 -0
  180. package/_internal/dd0a245d.js.map +1 -0
  181. package/_internal/de24f857.js +4 -0
  182. package/_internal/de24f857.js.map +1 -0
  183. package/_internal/e2122a37.js +3 -0
  184. package/_internal/e2122a37.js.map +1 -0
  185. package/_internal/e2440593.js +148 -0
  186. package/_internal/e2440593.js.map +1 -0
  187. package/_internal/e4613195.js +59 -0
  188. package/_internal/e4613195.js.map +1 -0
  189. package/_internal/e53b5a39.js +407 -0
  190. package/_internal/e53b5a39.js.map +1 -0
  191. package/_internal/e566d502.js +54 -0
  192. package/_internal/e566d502.js.map +1 -0
  193. package/_internal/e806b848.js +9 -0
  194. package/_internal/e806b848.js.map +1 -0
  195. package/_internal/eaf6c45a.js +4 -0
  196. package/_internal/eaf6c45a.js.map +1 -0
  197. package/_internal/ee64ab0d.js +149 -0
  198. package/_internal/ee64ab0d.js.map +1 -0
  199. package/_internal/ef5d1aac.js +4 -0
  200. package/_internal/ef5d1aac.js.map +1 -0
  201. package/_internal/f0d7d6ea.js +30 -0
  202. package/_internal/f0d7d6ea.js.map +1 -0
  203. package/_internal/f57d4eb8.js +53 -0
  204. package/_internal/f57d4eb8.js.map +1 -0
  205. package/_internal/fc47f2da.js +72 -0
  206. package/_internal/fc47f2da.js.map +1 -0
  207. package/index.d.ts +1 -2
  208. package/index.js +65 -14607
  209. package/index.js.map +1 -1
  210. package/package.json +3 -7
  211. package/utils/index.d.ts +1 -1
  212. package/utils/index.js +3 -1
  213. package/utils/index.js.map +1 -1
  214. package/_internal/index.js +0 -229
  215. package/_internal/index.js.map +0 -1
  216. package/src/components/alert-dialog/AlertDialog.stories.tsx +0 -127
  217. package/src/components/alert-dialog/AlertDialog.test.tsx +0 -34
  218. package/src/components/alert-dialog/AlertDialog.tsx +0 -189
  219. package/src/components/alert-dialog/index.ts +0 -1
  220. package/src/components/autocomplete/Autocomplete.stories.tsx +0 -75
  221. package/src/components/autocomplete/Autocomplete.test.tsx +0 -99
  222. package/src/components/autocomplete/Autocomplete.tsx +0 -294
  223. package/src/components/autocomplete/AutocompleteMultiple.stories.tsx +0 -167
  224. package/src/components/autocomplete/AutocompleteMultiple.test.tsx +0 -61
  225. package/src/components/autocomplete/AutocompleteMultiple.tsx +0 -156
  226. package/src/components/autocomplete/__mockData__/index.ts +0 -39
  227. package/src/components/autocomplete/index.ts +0 -2
  228. package/src/components/avatar/Avatar.stories.tsx +0 -119
  229. package/src/components/avatar/Avatar.test.tsx +0 -32
  230. package/src/components/avatar/Avatar.tsx +0 -114
  231. package/src/components/avatar/index.ts +0 -1
  232. package/src/components/badge/Badge.stories.tsx +0 -69
  233. package/src/components/badge/Badge.test.tsx +0 -45
  234. package/src/components/badge/Badge.tsx +0 -58
  235. package/src/components/badge/BadgeWrapper.stories.tsx +0 -75
  236. package/src/components/badge/BadgeWrapper.test.tsx +0 -47
  237. package/src/components/badge/BadgeWrapper.tsx +0 -37
  238. package/src/components/badge/index.ts +0 -2
  239. package/src/components/button/Button.stories.tsx +0 -355
  240. package/src/components/button/Button.test.tsx +0 -125
  241. package/src/components/button/Button.tsx +0 -101
  242. package/src/components/button/ButtonGroup.stories.tsx +0 -52
  243. package/src/components/button/ButtonGroup.test.tsx +0 -41
  244. package/src/components/button/ButtonGroup.tsx +0 -50
  245. package/src/components/button/ButtonRoot.tsx +0 -163
  246. package/src/components/button/IconButton.stories.tsx +0 -52
  247. package/src/components/button/IconButton.test.tsx +0 -66
  248. package/src/components/button/IconButton.tsx +0 -91
  249. package/src/components/button/index.ts +0 -4
  250. package/src/components/checkbox/Checkbox.stories.tsx +0 -64
  251. package/src/components/checkbox/Checkbox.test.tsx +0 -154
  252. package/src/components/checkbox/Checkbox.tsx +0 -164
  253. package/src/components/checkbox/index.ts +0 -1
  254. package/src/components/chip/Chip.stories.tsx +0 -164
  255. package/src/components/chip/Chip.test.tsx +0 -243
  256. package/src/components/chip/Chip.tsx +0 -168
  257. package/src/components/chip/ChipGroup.stories.tsx +0 -47
  258. package/src/components/chip/ChipGroup.test.tsx +0 -37
  259. package/src/components/chip/ChipGroup.tsx +0 -60
  260. package/src/components/chip/index.ts +0 -2
  261. package/src/components/comment-block/CommentBlock.stories.tsx +0 -91
  262. package/src/components/comment-block/CommentBlock.test.tsx +0 -28
  263. package/src/components/comment-block/CommentBlock.tsx +0 -172
  264. package/src/components/comment-block/index.ts +0 -1
  265. package/src/components/date-picker/DatePicker.stories.tsx +0 -118
  266. package/src/components/date-picker/DatePicker.test.tsx +0 -34
  267. package/src/components/date-picker/DatePicker.tsx +0 -52
  268. package/src/components/date-picker/DatePickerControlled.test.tsx +0 -91
  269. package/src/components/date-picker/DatePickerControlled.tsx +0 -259
  270. package/src/components/date-picker/DatePickerField.stories.tsx +0 -100
  271. package/src/components/date-picker/DatePickerField.test.tsx +0 -70
  272. package/src/components/date-picker/DatePickerField.tsx +0 -135
  273. package/src/components/date-picker/constants.ts +0 -11
  274. package/src/components/date-picker/index.ts +0 -4
  275. package/src/components/date-picker/types.ts +0 -28
  276. package/src/components/dialog/Dialog.stories.tsx +0 -318
  277. package/src/components/dialog/Dialog.test.tsx +0 -97
  278. package/src/components/dialog/Dialog.tsx +0 -288
  279. package/src/components/dialog/index.ts +0 -1
  280. package/src/components/divider/Divider.test.tsx +0 -51
  281. package/src/components/divider/Divider.tsx +0 -50
  282. package/src/components/divider/index.ts +0 -1
  283. package/src/components/drag-handle/DragHandle.test.tsx +0 -36
  284. package/src/components/drag-handle/DragHandle.tsx +0 -51
  285. package/src/components/drag-handle/index.ts +0 -1
  286. package/src/components/dropdown/Dropdown.stories.tsx +0 -31
  287. package/src/components/dropdown/Dropdown.test.tsx +0 -66
  288. package/src/components/dropdown/Dropdown.tsx +0 -186
  289. package/src/components/dropdown/index.ts +0 -1
  290. package/src/components/expansion-panel/ExpansionPanel.stories.tsx +0 -91
  291. package/src/components/expansion-panel/ExpansionPanel.test.tsx +0 -185
  292. package/src/components/expansion-panel/ExpansionPanel.tsx +0 -195
  293. package/src/components/expansion-panel/index.ts +0 -1
  294. package/src/components/flag/Flag.stories.tsx +0 -48
  295. package/src/components/flag/Flag.test.tsx +0 -62
  296. package/src/components/flag/Flag.tsx +0 -52
  297. package/src/components/flag/index.ts +0 -1
  298. package/src/components/flex-box/FlexBox.stories.tsx +0 -156
  299. package/src/components/flex-box/FlexBox.test.tsx +0 -24
  300. package/src/components/flex-box/FlexBox.tsx +0 -100
  301. package/src/components/flex-box/index.ts +0 -1
  302. package/src/components/generic-block/GenericBlock.stories.jsx +0 -128
  303. package/src/components/generic-block/GenericBlock.test.tsx +0 -156
  304. package/src/components/generic-block/GenericBlock.tsx +0 -225
  305. package/src/components/generic-block/constants.ts +0 -9
  306. package/src/components/generic-block/index.ts +0 -2
  307. package/src/components/grid/Grid.tsx +0 -83
  308. package/src/components/grid/GridItem.tsx +0 -55
  309. package/src/components/grid/index.ts +0 -2
  310. package/src/components/grid-column/GridColumn.stories.tsx +0 -45
  311. package/src/components/grid-column/GridColumn.test.jsx +0 -56
  312. package/src/components/grid-column/GridColumn.tsx +0 -83
  313. package/src/components/grid-column/index.ts +0 -1
  314. package/src/components/heading/Heading.stories.tsx +0 -69
  315. package/src/components/heading/Heading.test.tsx +0 -82
  316. package/src/components/heading/Heading.tsx +0 -65
  317. package/src/components/heading/HeadingLevelProvider.tsx +0 -30
  318. package/src/components/heading/constants.ts +0 -16
  319. package/src/components/heading/context.tsx +0 -13
  320. package/src/components/heading/index.ts +0 -3
  321. package/src/components/heading/useHeadingLevel.tsx +0 -8
  322. package/src/components/icon/Icon.stories.tsx +0 -73
  323. package/src/components/icon/Icon.test.tsx +0 -125
  324. package/src/components/icon/Icon.tsx +0 -22
  325. package/src/components/icon/index.ts +0 -1
  326. package/src/components/image-block/ImageBlock.stories.tsx +0 -117
  327. package/src/components/image-block/ImageBlock.test.tsx +0 -58
  328. package/src/components/image-block/ImageBlock.tsx +0 -142
  329. package/src/components/image-block/ImageCaption.tsx +0 -115
  330. package/src/components/image-block/index.ts +0 -1
  331. package/src/components/image-lightbox/ImageLightbox.stories.tsx +0 -160
  332. package/src/components/image-lightbox/ImageLightbox.test.tsx +0 -254
  333. package/src/components/image-lightbox/ImageLightbox.tsx +0 -90
  334. package/src/components/image-lightbox/constants.ts +0 -11
  335. package/src/components/image-lightbox/index.ts +0 -2
  336. package/src/components/image-lightbox/internal/ImageSlide.tsx +0 -107
  337. package/src/components/image-lightbox/internal/ImageSlideshow.tsx +0 -164
  338. package/src/components/image-lightbox/internal/useAnimateScroll.ts +0 -55
  339. package/src/components/image-lightbox/internal/usePointerZoom.ts +0 -148
  340. package/src/components/image-lightbox/types.ts +0 -48
  341. package/src/components/image-lightbox/useImageLightbox.tsx +0 -141
  342. package/src/components/inline-list/InlineList.stories.tsx +0 -77
  343. package/src/components/inline-list/InlineList.test.tsx +0 -52
  344. package/src/components/inline-list/InlineList.tsx +0 -96
  345. package/src/components/inline-list/index.ts +0 -1
  346. package/src/components/input-helper/InputHelper.stories.tsx +0 -35
  347. package/src/components/input-helper/InputHelper.test.tsx +0 -55
  348. package/src/components/input-helper/InputHelper.tsx +0 -65
  349. package/src/components/input-helper/constants.ts +0 -11
  350. package/src/components/input-helper/index.ts +0 -1
  351. package/src/components/input-label/InputLabel.stories.tsx +0 -45
  352. package/src/components/input-label/InputLabel.test.tsx +0 -59
  353. package/src/components/input-label/InputLabel.tsx +0 -69
  354. package/src/components/input-label/index.ts +0 -1
  355. package/src/components/lightbox/Lightbox.stories.tsx +0 -101
  356. package/src/components/lightbox/Lightbox.test.tsx +0 -53
  357. package/src/components/lightbox/Lightbox.tsx +0 -180
  358. package/src/components/lightbox/index.ts +0 -1
  359. package/src/components/link/Link.stories.tsx +0 -195
  360. package/src/components/link/Link.test.tsx +0 -127
  361. package/src/components/link/Link.tsx +0 -106
  362. package/src/components/link/index.ts +0 -1
  363. package/src/components/link-preview/LinkPreview.stories.tsx +0 -61
  364. package/src/components/link-preview/LinkPreview.test.tsx +0 -105
  365. package/src/components/link-preview/LinkPreview.tsx +0 -158
  366. package/src/components/link-preview/index.ts +0 -1
  367. package/src/components/list/List.stories.tsx +0 -116
  368. package/src/components/list/List.test.tsx +0 -18
  369. package/src/components/list/List.tsx +0 -104
  370. package/src/components/list/ListDivider.stories.tsx +0 -12
  371. package/src/components/list/ListDivider.test.tsx +0 -22
  372. package/src/components/list/ListDivider.tsx +0 -35
  373. package/src/components/list/ListItem.stories.tsx +0 -66
  374. package/src/components/list/ListItem.test.tsx +0 -93
  375. package/src/components/list/ListItem.tsx +0 -157
  376. package/src/components/list/ListSubheader.stories.tsx +0 -11
  377. package/src/components/list/ListSubheader.test.tsx +0 -21
  378. package/src/components/list/ListSubheader.tsx +0 -44
  379. package/src/components/list/index.ts +0 -4
  380. package/src/components/list/useInteractiveList.tsx +0 -202
  381. package/src/components/message/Message.stories.tsx +0 -72
  382. package/src/components/message/Message.test.tsx +0 -76
  383. package/src/components/message/Message.tsx +0 -100
  384. package/src/components/message/index.ts +0 -1
  385. package/src/components/mosaic/Mosaic.stories.tsx +0 -89
  386. package/src/components/mosaic/Mosaic.test.tsx +0 -77
  387. package/src/components/mosaic/Mosaic.tsx +0 -98
  388. package/src/components/mosaic/index.ts +0 -1
  389. package/src/components/navigation/Navigation.stories.tsx +0 -234
  390. package/src/components/navigation/Navigation.test.tsx +0 -65
  391. package/src/components/navigation/Navigation.tsx +0 -79
  392. package/src/components/navigation/NavigationItem.test.tsx +0 -35
  393. package/src/components/navigation/NavigationItem.tsx +0 -82
  394. package/src/components/navigation/NavigationSection.test.tsx +0 -137
  395. package/src/components/navigation/NavigationSection.tsx +0 -108
  396. package/src/components/navigation/context.tsx +0 -7
  397. package/src/components/navigation/index.ts +0 -1
  398. package/src/components/notification/Notification.test.tsx +0 -94
  399. package/src/components/notification/Notification.tsx +0 -138
  400. package/src/components/notification/Notifications.stories.tsx +0 -92
  401. package/src/components/notification/constants.ts +0 -28
  402. package/src/components/notification/index.ts +0 -1
  403. package/src/components/popover/Popover.stories.tsx +0 -264
  404. package/src/components/popover/Popover.test.tsx +0 -62
  405. package/src/components/popover/Popover.tsx +0 -201
  406. package/src/components/popover/constants.ts +0 -62
  407. package/src/components/popover/index.ts +0 -3
  408. package/src/components/popover/usePopoverStyle.tsx +0 -184
  409. package/src/components/popover/useRestoreFocusOnClose.tsx +0 -47
  410. package/src/components/popover-dialog/PopoverDialog.stories.tsx +0 -64
  411. package/src/components/popover-dialog/PopoverDialog.test.tsx +0 -139
  412. package/src/components/popover-dialog/PopoverDialog.tsx +0 -74
  413. package/src/components/popover-dialog/index.tsx +0 -1
  414. package/src/components/post-block/PostBlock.test.tsx +0 -27
  415. package/src/components/post-block/PostBlock.tsx +0 -122
  416. package/src/components/post-block/index.ts +0 -1
  417. package/src/components/progress/Progress.tsx +0 -68
  418. package/src/components/progress/ProgressCircular.stories.tsx +0 -43
  419. package/src/components/progress/ProgressCircular.test.tsx +0 -46
  420. package/src/components/progress/ProgressCircular.tsx +0 -82
  421. package/src/components/progress/ProgressLinear.stories.tsx +0 -12
  422. package/src/components/progress/ProgressLinear.test.tsx +0 -30
  423. package/src/components/progress/ProgressLinear.tsx +0 -50
  424. package/src/components/progress/index.ts +0 -3
  425. package/src/components/progress-tracker/ProgressTracker.stories.tsx +0 -145
  426. package/src/components/progress-tracker/ProgressTracker.test.tsx +0 -42
  427. package/src/components/progress-tracker/ProgressTracker.tsx +0 -87
  428. package/src/components/progress-tracker/ProgressTrackerProvider.test.tsx +0 -65
  429. package/src/components/progress-tracker/ProgressTrackerProvider.tsx +0 -67
  430. package/src/components/progress-tracker/ProgressTrackerStep.test.tsx +0 -36
  431. package/src/components/progress-tracker/ProgressTrackerStep.tsx +0 -159
  432. package/src/components/progress-tracker/ProgressTrackerStepPanel.test.tsx +0 -34
  433. package/src/components/progress-tracker/ProgressTrackerStepPanel.tsx +0 -67
  434. package/src/components/progress-tracker/index.ts +0 -4
  435. package/src/components/radio-button/RadioButton.stories.tsx +0 -71
  436. package/src/components/radio-button/RadioButton.test.tsx +0 -143
  437. package/src/components/radio-button/RadioButton.tsx +0 -143
  438. package/src/components/radio-button/RadioGroup.stories.tsx +0 -39
  439. package/src/components/radio-button/RadioGroup.test.tsx +0 -29
  440. package/src/components/radio-button/RadioGroup.tsx +0 -44
  441. package/src/components/radio-button/index.ts +0 -2
  442. package/src/components/select/Select.stories.tsx +0 -385
  443. package/src/components/select/Select.test.tsx +0 -199
  444. package/src/components/select/Select.tsx +0 -199
  445. package/src/components/select/SelectMultiple.stories.tsx +0 -315
  446. package/src/components/select/SelectMultiple.test.tsx +0 -213
  447. package/src/components/select/SelectMultiple.tsx +0 -206
  448. package/src/components/select/WithSelectContext.tsx +0 -147
  449. package/src/components/select/constants.ts +0 -55
  450. package/src/components/select/index.ts +0 -2
  451. package/src/components/side-navigation/SideNavigation.stories.tsx +0 -191
  452. package/src/components/side-navigation/SideNavigation.test.tsx +0 -37
  453. package/src/components/side-navigation/SideNavigation.tsx +0 -52
  454. package/src/components/side-navigation/SideNavigationItem.stories.tsx +0 -133
  455. package/src/components/side-navigation/SideNavigationItem.test.tsx +0 -136
  456. package/src/components/side-navigation/SideNavigationItem.tsx +0 -165
  457. package/src/components/side-navigation/index.ts +0 -2
  458. package/src/components/skeleton/SkeletonCircle.stories.tsx +0 -41
  459. package/src/components/skeleton/SkeletonCircle.test.tsx +0 -27
  460. package/src/components/skeleton/SkeletonCircle.tsx +0 -52
  461. package/src/components/skeleton/SkeletonRectangle.stories.tsx +0 -82
  462. package/src/components/skeleton/SkeletonRectangle.test.tsx +0 -27
  463. package/src/components/skeleton/SkeletonRectangle.tsx +0 -88
  464. package/src/components/skeleton/SkeletonTypography.stories.tsx +0 -19
  465. package/src/components/skeleton/SkeletonTypography.test.tsx +0 -27
  466. package/src/components/skeleton/SkeletonTypography.tsx +0 -59
  467. package/src/components/skeleton/index.ts +0 -3
  468. package/src/components/slider/Slider.stories.tsx +0 -45
  469. package/src/components/slider/Slider.test.tsx +0 -29
  470. package/src/components/slider/Slider.tsx +0 -299
  471. package/src/components/slider/index.ts +0 -2
  472. package/src/components/slideshow/Slides.tsx +0 -130
  473. package/src/components/slideshow/Slideshow.stories.tsx +0 -179
  474. package/src/components/slideshow/Slideshow.test.tsx +0 -35
  475. package/src/components/slideshow/Slideshow.tsx +0 -173
  476. package/src/components/slideshow/SlideshowControls.stories.tsx +0 -100
  477. package/src/components/slideshow/SlideshowControls.tsx +0 -243
  478. package/src/components/slideshow/SlideshowItem.tsx +0 -44
  479. package/src/components/slideshow/SlideshowItemGroup.tsx +0 -60
  480. package/src/components/slideshow/constants.ts +0 -24
  481. package/src/components/slideshow/index.ts +0 -4
  482. package/src/components/slideshow/useKeyNavigate.ts +0 -28
  483. package/src/components/slideshow/usePaginationVisibleRange.ts +0 -37
  484. package/src/components/slideshow/useSlideFocusManagement.tsx +0 -92
  485. package/src/components/slideshow/useSwipeNavigate.ts +0 -18
  486. package/src/components/switch/Switch.stories.tsx +0 -49
  487. package/src/components/switch/Switch.test.tsx +0 -144
  488. package/src/components/switch/Switch.tsx +0 -145
  489. package/src/components/switch/index.ts +0 -1
  490. package/src/components/table/Table.test.tsx +0 -29
  491. package/src/components/table/Table.tsx +0 -59
  492. package/src/components/table/TableBody.test.tsx +0 -30
  493. package/src/components/table/TableBody.tsx +0 -42
  494. package/src/components/table/TableCell.test.tsx +0 -72
  495. package/src/components/table/TableCell.tsx +0 -130
  496. package/src/components/table/TableHeader.test.tsx +0 -30
  497. package/src/components/table/TableHeader.tsx +0 -48
  498. package/src/components/table/TableRow.test.tsx +0 -40
  499. package/src/components/table/TableRow.tsx +0 -71
  500. package/src/components/table/index.ts +0 -5
  501. package/src/components/tabs/Tab.test.tsx +0 -50
  502. package/src/components/tabs/Tab.tsx +0 -133
  503. package/src/components/tabs/TabList.test.tsx +0 -49
  504. package/src/components/tabs/TabList.tsx +0 -94
  505. package/src/components/tabs/TabPanel.test.tsx +0 -37
  506. package/src/components/tabs/TabPanel.tsx +0 -67
  507. package/src/components/tabs/TabProvider.test.tsx +0 -161
  508. package/src/components/tabs/TabProvider.tsx +0 -67
  509. package/src/components/tabs/Tabs.stories.tsx +0 -170
  510. package/src/components/tabs/index.ts +0 -4
  511. package/src/components/tabs/state.ts +0 -114
  512. package/src/components/tabs/test-utils.ts +0 -39
  513. package/src/components/text/Text.stories.tsx +0 -177
  514. package/src/components/text/Text.test.tsx +0 -92
  515. package/src/components/text/Text.tsx +0 -139
  516. package/src/components/text/index.ts +0 -1
  517. package/src/components/text-field/TextField.stories.tsx +0 -180
  518. package/src/components/text-field/TextField.test.tsx +0 -298
  519. package/src/components/text-field/TextField.tsx +0 -493
  520. package/src/components/text-field/index.ts +0 -1
  521. package/src/components/thumbnail/Thumbnail.stories.tsx +0 -448
  522. package/src/components/thumbnail/Thumbnail.test.tsx +0 -88
  523. package/src/components/thumbnail/Thumbnail.tsx +0 -248
  524. package/src/components/thumbnail/index.ts +0 -3
  525. package/src/components/thumbnail/types.ts +0 -48
  526. package/src/components/thumbnail/useFocusPointStyle.test.ts +0 -92
  527. package/src/components/thumbnail/useFocusPointStyle.tsx +0 -107
  528. package/src/components/thumbnail/useImageLoad.ts +0 -40
  529. package/src/components/toolbar/Toolbar.tsx +0 -68
  530. package/src/components/toolbar/index.ts +0 -1
  531. package/src/components/tooltip/Tooltip.stories.tsx +0 -118
  532. package/src/components/tooltip/Tooltip.test.tsx +0 -417
  533. package/src/components/tooltip/Tooltip.tsx +0 -165
  534. package/src/components/tooltip/constants.ts +0 -8
  535. package/src/components/tooltip/context.tsx +0 -17
  536. package/src/components/tooltip/index.ts +0 -1
  537. package/src/components/tooltip/useInjectTooltipRef.tsx +0 -55
  538. package/src/components/tooltip/useTooltipOpen.tsx +0 -143
  539. package/src/components/uploader/Uploader.stories.tsx +0 -109
  540. package/src/components/uploader/Uploader.test.tsx +0 -146
  541. package/src/components/uploader/Uploader.tsx +0 -177
  542. package/src/components/uploader/index.ts +0 -1
  543. package/src/components/user-block/UserBlock.stories.tsx +0 -133
  544. package/src/components/user-block/UserBlock.test.tsx +0 -106
  545. package/src/components/user-block/UserBlock.tsx +0 -193
  546. package/src/components/user-block/index.ts +0 -1
  547. package/src/constants.ts +0 -27
  548. package/src/hooks/useBooleanState.tsx +0 -13
  549. package/src/hooks/useCallbackOnEscape.ts +0 -34
  550. package/src/hooks/useChipGroupNavigation.tsx +0 -75
  551. package/src/hooks/useClickAway.tsx +0 -48
  552. package/src/hooks/useDisableBodyScroll.ts +0 -28
  553. package/src/hooks/useEventCallback.tsx +0 -17
  554. package/src/hooks/useFocus.tsx +0 -21
  555. package/src/hooks/useFocusTrap.ts +0 -93
  556. package/src/hooks/useFocusWithin.ts +0 -33
  557. package/src/hooks/useId.test.tsx +0 -22
  558. package/src/hooks/useId.ts +0 -15
  559. package/src/hooks/useImageSize.ts +0 -17
  560. package/src/hooks/useInfiniteScroll.tsx +0 -60
  561. package/src/hooks/useIntersectionObserver.tsx +0 -43
  562. package/src/hooks/useInterval.tsx +0 -31
  563. package/src/hooks/useKeyboardListNavigation.tsx +0 -204
  564. package/src/hooks/useListenFocus.tsx +0 -26
  565. package/src/hooks/useOverflowTooltipLabel.tsx +0 -32
  566. package/src/hooks/usePopper.ts +0 -12
  567. package/src/hooks/usePreviousValue.ts +0 -12
  568. package/src/hooks/useRovingTabIndex.tsx +0 -90
  569. package/src/hooks/useSizeOnWindowResize.ts +0 -30
  570. package/src/hooks/useSlideshowControls.ts +0 -246
  571. package/src/hooks/useStopPropagation.ts +0 -21
  572. package/src/hooks/useTransitionVisibility.ts +0 -48
  573. package/src/index.ts +0 -63
  574. package/src/stories/controls/color.ts +0 -7
  575. package/src/stories/controls/element.ts +0 -6
  576. package/src/stories/controls/focusPoint.ts +0 -1
  577. package/src/stories/controls/icons.ts +0 -126
  578. package/src/stories/controls/image.ts +0 -84
  579. package/src/stories/controls/selectArgType.ts +0 -8
  580. package/src/stories/controls/theme.ts +0 -3
  581. package/src/stories/controls/typography.ts +0 -5
  582. package/src/stories/controls/withUndefined.ts +0 -1
  583. package/src/stories/decorators/withChromaticForceScreenSize.tsx +0 -7
  584. package/src/stories/decorators/withCombinations.tsx +0 -132
  585. package/src/stories/decorators/withNestedProps.tsx +0 -22
  586. package/src/stories/decorators/withResizableBox.tsx +0 -21
  587. package/src/stories/decorators/withThemedBackground.tsx +0 -16
  588. package/src/stories/decorators/withValueOnChange.tsx +0 -18
  589. package/src/stories/decorators/withWrapper.tsx +0 -19
  590. package/src/stories/generated/Autocomplete/Demos.stories.tsx +0 -7
  591. package/src/stories/generated/Avatar/Demos.stories.tsx +0 -7
  592. package/src/stories/generated/Badge/Demos.stories.tsx +0 -9
  593. package/src/stories/generated/Button/Demos.stories.tsx +0 -11
  594. package/src/stories/generated/Checkbox/Demos.stories.tsx +0 -6
  595. package/src/stories/generated/Chip/Demos.stories.tsx +0 -11
  596. package/src/stories/generated/CommentBlock/Demos.stories.tsx +0 -8
  597. package/src/stories/generated/DatePicker/Demos.stories.tsx +0 -8
  598. package/src/stories/generated/Dialog/Demos.stories.tsx +0 -10
  599. package/src/stories/generated/Divider/Demos.stories.tsx +0 -6
  600. package/src/stories/generated/Dropdown/Demos.stories.tsx +0 -8
  601. package/src/stories/generated/ExpansionPanel/Demos.stories.tsx +0 -9
  602. package/src/stories/generated/Flag/Demos.stories.tsx +0 -6
  603. package/src/stories/generated/GenericBlock/Demos.stories.tsx +0 -8
  604. package/src/stories/generated/Heading/Demos.stories.tsx +0 -6
  605. package/src/stories/generated/Icon/Demos.stories.tsx +0 -8
  606. package/src/stories/generated/ImageBlock/Demos.stories.tsx +0 -9
  607. package/src/stories/generated/ImageLightbox/Demos.stories.tsx +0 -6
  608. package/src/stories/generated/Lightbox/Demos.stories.tsx +0 -6
  609. package/src/stories/generated/LinkPreview/Demos.stories.tsx +0 -7
  610. package/src/stories/generated/List/Demos.stories.tsx +0 -11
  611. package/src/stories/generated/Message/Demos.stories.tsx +0 -11
  612. package/src/stories/generated/Mosaic/Demos.stories.tsx +0 -10
  613. package/src/stories/generated/Notification/Demos.stories.tsx +0 -6
  614. package/src/stories/generated/Popover/Demos.stories.tsx +0 -11
  615. package/src/stories/generated/PopoverDialog/Demos.stories.tsx +0 -6
  616. package/src/stories/generated/PostBlock/Demos.stories.tsx +0 -6
  617. package/src/stories/generated/Progress/Demos.stories.tsx +0 -7
  618. package/src/stories/generated/ProgressTracker/Demos.stories.tsx +0 -9
  619. package/src/stories/generated/RadioButton/Demos.stories.tsx +0 -6
  620. package/src/stories/generated/Select/Demos.stories.tsx +0 -14
  621. package/src/stories/generated/SideNavigation/Demos.stories.tsx +0 -10
  622. package/src/stories/generated/Skeleton/Demos.stories.tsx +0 -9
  623. package/src/stories/generated/Slider/Demos.stories.tsx +0 -9
  624. package/src/stories/generated/Slideshow/Demos.stories.tsx +0 -8
  625. package/src/stories/generated/Switch/Demos.stories.tsx +0 -6
  626. package/src/stories/generated/Table/Demos.stories.tsx +0 -7
  627. package/src/stories/generated/Tabs/Demos.stories.tsx +0 -8
  628. package/src/stories/generated/TextField/Demos.stories.tsx +0 -20
  629. package/src/stories/generated/Thumbnail/Demos.stories.tsx +0 -12
  630. package/src/stories/generated/Toolbar/Demos.stories.tsx +0 -10
  631. package/src/stories/generated/Tooltip/Demos.stories.tsx +0 -8
  632. package/src/stories/generated/Uploader/Demos.stories.tsx +0 -8
  633. package/src/stories/generated/UserBlock/Demos.stories.tsx +0 -11
  634. package/src/stories/utils/CustomLink.tsx +0 -12
  635. package/src/stories/utils/concatPath.tsx +0 -17
  636. package/src/stories/utils/disableArgTypes.ts +0 -3
  637. package/src/stories/utils/initDemoShadowDOMPortal.ts +0 -10
  638. package/src/stories/utils/lorem.ts +0 -59
  639. package/src/stories/utils/theming.tsx +0 -166
  640. package/src/stories/utils/toFlattenProps.ts +0 -28
  641. package/src/stories/utils/withCategory.ts +0 -12
  642. package/src/testing/utils/ThemeSentinel.tsx +0 -10
  643. package/src/testing/utils/commonTestsSuiteRTL.tsx +0 -193
  644. package/src/testing/utils/index.ts +0 -1
  645. package/src/testing/utils/queries.ts +0 -19
  646. package/src/untypped-modules.d.ts +0 -9
  647. package/src/utils/ClickAwayProvider/ClickAwayProvider.stories.jsx +0 -70
  648. package/src/utils/ClickAwayProvider/ClickAwayProvider.tsx +0 -69
  649. package/src/utils/ClickAwayProvider/index.ts +0 -1
  650. package/src/utils/MaterialThemeSwitcher/MaterialThemeSwitcher.tsx +0 -54
  651. package/src/utils/MaterialThemeSwitcher/index.ts +0 -1
  652. package/src/utils/Portal/Portal.test.tsx +0 -31
  653. package/src/utils/Portal/Portal.tsx +0 -33
  654. package/src/utils/Portal/PortalProvider.stories.jsx +0 -22
  655. package/src/utils/Portal/PortalProvider.test.tsx +0 -72
  656. package/src/utils/Portal/PortalProvider.tsx +0 -24
  657. package/src/utils/Portal/index.tsx +0 -2
  658. package/src/utils/browser/DOM/findImage.tsx +0 -3
  659. package/src/utils/browser/DOM/startViewTransition.ts +0 -68
  660. package/src/utils/browser/focus/constants.ts +0 -7
  661. package/src/utils/browser/focus/getFirstAndLastFocusable.test.ts +0 -134
  662. package/src/utils/browser/focus/getFirstAndLastFocusable.ts +0 -21
  663. package/src/utils/browser/focus/getFocusableElements.test.ts +0 -151
  664. package/src/utils/browser/focus/getFocusableElements.ts +0 -7
  665. package/src/utils/browser/isFocusVisible.ts +0 -9
  666. package/src/utils/browser/isHoverNotSupported.test.js +0 -24
  667. package/src/utils/browser/isHoverNotSupported.ts +0 -2
  668. package/src/utils/browser/isReducedMotion.ts +0 -6
  669. package/src/utils/date/addMonthResetDay.test.ts +0 -13
  670. package/src/utils/date/addMonthResetDay.ts +0 -9
  671. package/src/utils/date/formatDayNumber.test.ts +0 -12
  672. package/src/utils/date/formatDayNumber.ts +0 -5
  673. package/src/utils/date/getFirstDayOfWeek.test.ts +0 -20
  674. package/src/utils/date/getFirstDayOfWeek.ts +0 -59
  675. package/src/utils/date/getMonthCalendar.test.ts +0 -127
  676. package/src/utils/date/getMonthCalendar.ts +0 -69
  677. package/src/utils/date/getWeekDays.test.ts +0 -48
  678. package/src/utils/date/getWeekDays.ts +0 -34
  679. package/src/utils/date/getYearDisplayName.test.ts +0 -20
  680. package/src/utils/date/getYearDisplayName.ts +0 -12
  681. package/src/utils/date/isDateValid.test.ts +0 -15
  682. package/src/utils/date/isDateValid.ts +0 -4
  683. package/src/utils/date/isSameDay.test.ts +0 -37
  684. package/src/utils/date/isSameDay.ts +0 -11
  685. package/src/utils/disabled/DisabledStateContext.tsx +0 -29
  686. package/src/utils/disabled/DisabledStateProvider.stories.tsx +0 -92
  687. package/src/utils/disabled/index.ts +0 -2
  688. package/src/utils/disabled/useDisableStateProps.test.tsx +0 -74
  689. package/src/utils/disabled/useDisableStateProps.tsx +0 -37
  690. package/src/utils/function/makeListenerTowerContext.ts +0 -32
  691. package/src/utils/index.ts +0 -7
  692. package/src/utils/locale/getCurrentLocale.ts +0 -4
  693. package/src/utils/locale/parseLocale.test.ts +0 -17
  694. package/src/utils/locale/parseLocale.ts +0 -23
  695. package/src/utils/locale/types.ts +0 -8
  696. package/src/utils/number/clamp.ts +0 -17
  697. package/src/utils/object/isEqual.test.ts +0 -25
  698. package/src/utils/object/isEqual.ts +0 -11
  699. package/src/utils/partitionMulti.test.ts +0 -27
  700. package/src/utils/react/OnBeforeUnmount.tsx +0 -20
  701. package/src/utils/react/RawClickable.test.tsx +0 -153
  702. package/src/utils/react/RawClickable.tsx +0 -65
  703. package/src/utils/react/flattenChildren.ts +0 -32
  704. package/src/utils/react/forwardRef.ts +0 -11
  705. package/src/utils/react/forwardRefPolymorphic.ts +0 -9
  706. package/src/utils/react/mergeRefs.ts +0 -33
  707. package/src/utils/react/renderLink.tsx +0 -17
  708. package/src/utils/react/skipRender.tsx +0 -18
  709. package/src/utils/react/unref.ts +0 -7
  710. package/src/utils/react/wrapChildrenIconWithSpaces.test.tsx +0 -37
  711. package/src/utils/react/wrapChildrenIconWithSpaces.tsx +0 -22
  712. package/src/utils/theme/ThemeContext.ts +0 -16
  713. package/src/utils/theme/invertTheme.ts +0 -4
  714. package/src/utils/type/Comp.ts +0 -14
  715. package/src/utils/type/ComponentRef.ts +0 -16
  716. package/src/utils/type/HasAriaDisabled.ts +0 -6
  717. package/src/utils/type/HasPolymorphicAs.ts +0 -6
  718. package/src/utils/type/HasRequiredLinkHref.ts +0 -1
  719. package/src/utils/type/MaybeElementOrRef.ts +0 -6
  720. package/src/utils/type/index.ts +0 -9
  721. package/src/utils/type/isComponent.ts +0 -33
  722. package/src/utils/type/isComponentType.ts +0 -9
  723. /package/_internal/{Falsy.d.ts → d95844c1.d.ts} +0 -0
@@ -1,248 +0,0 @@
1
- import React, {
2
- CSSProperties,
3
- ImgHTMLAttributes,
4
- KeyboardEventHandler,
5
- MouseEventHandler,
6
- ReactElement,
7
- ReactNode,
8
- Ref,
9
- useState,
10
- } from 'react';
11
-
12
- import classNames from 'classnames';
13
-
14
- import { AspectRatio, HorizontalAlignment, Icon, Size, Theme, ThumbnailObjectFit } from '@lumx/react';
15
- import { Falsy, GenericProps, HasTheme } from '@lumx/react/utils/type';
16
- import { getRootClassName, handleBasicClasses } from '@lumx/core/js/utils/className';
17
- import { mdiImageBroken } from '@lumx/icons';
18
- import { useMergeRefs } from '@lumx/react/utils/react/mergeRefs';
19
- import { useImageLoad } from '@lumx/react/components/thumbnail/useImageLoad';
20
- import { useFocusPointStyle } from '@lumx/react/components/thumbnail/useFocusPointStyle';
21
- import { useTheme } from '@lumx/react/utils/theme/ThemeContext';
22
- import { forwardRef } from '@lumx/react/utils/react/forwardRef';
23
-
24
- import { useDisableStateProps } from '@lumx/react/utils/disabled';
25
- import { RawClickable } from '@lumx/react/utils/react/RawClickable';
26
- import { FocusPoint, ThumbnailSize, ThumbnailVariant } from './types';
27
-
28
- type ImgHTMLProps = ImgHTMLAttributes<HTMLImageElement>;
29
-
30
- /**
31
- * Defines the props of the component.
32
- */
33
- export interface ThumbnailProps extends GenericProps, HasTheme {
34
- /** Alignment of the thumbnail in it's parent (requires flex parent). */
35
- align?: HorizontalAlignment;
36
- /** Image alternative text. */
37
- alt: string;
38
- /** Image aspect ratio. */
39
- aspectRatio?: AspectRatio;
40
- /** Badge. */
41
- badge?: ReactElement | Falsy;
42
- /** Image cross origin resource policy. */
43
- crossOrigin?: ImgHTMLProps['crossOrigin'];
44
- /** Fallback icon (SVG path) or react node when image fails to load. */
45
- fallback?: string | ReactNode;
46
- /** Whether the thumbnail should fill it's parent size (requires flex parent) or not. */
47
- fillHeight?: boolean;
48
- /** Apply relative vertical and horizontal shift (from -1 to 1) on the image position inside the thumbnail. */
49
- focusPoint?: FocusPoint;
50
- /** Image URL. */
51
- image: string;
52
- /** Props to inject into the native <img> element. */
53
- imgProps?: ImgHTMLProps;
54
- /** Reference to the native <img> element. */
55
- imgRef?: Ref<HTMLImageElement>;
56
- /** Set to true to force the display of the loading skeleton. */
57
- isLoading?: boolean;
58
- /** Set how the image should fit when its aspect ratio is constrained */
59
- objectFit?: ThumbnailObjectFit;
60
- /** Size variant of the component. */
61
- size?: ThumbnailSize;
62
- /** Image loading mode. */
63
- loading?: ImgHTMLProps['loading'];
64
- /** Ref of an existing placeholder image to display while loading. */
65
- loadingPlaceholderImageRef?: React.RefObject<HTMLImageElement>;
66
- /** On click callback. */
67
- onClick?: MouseEventHandler<HTMLDivElement>;
68
- /** On key press callback. */
69
- onKeyPress?: KeyboardEventHandler<HTMLDivElement>;
70
- /** Variant of the component. */
71
- variant?: ThumbnailVariant;
72
- /** Props to pass to the link wrapping the thumbnail. */
73
- linkProps?: React.DetailedHTMLProps<React.AnchorHTMLAttributes<HTMLAnchorElement>, HTMLAnchorElement>;
74
- /** Custom react component for the link (can be used to inject react router Link). */
75
- linkAs?: 'a' | any;
76
- }
77
-
78
- /**
79
- * Component display name.
80
- */
81
- const COMPONENT_NAME = 'Thumbnail';
82
-
83
- /**
84
- * Component default class name and class prefix.
85
- */
86
- const CLASSNAME = getRootClassName(COMPONENT_NAME);
87
-
88
- /**
89
- * Component default props.
90
- */
91
- const DEFAULT_PROPS: Partial<ThumbnailProps> = {
92
- fallback: mdiImageBroken,
93
- loading: 'lazy',
94
- };
95
-
96
- /**
97
- * Thumbnail component.
98
- *
99
- * @param props Component props.
100
- * @param ref Component ref.
101
- * @return React element.
102
- */
103
- export const Thumbnail = forwardRef<ThumbnailProps>((props, ref) => {
104
- const { isAnyDisabled, otherProps, disabledStateProps } = useDisableStateProps(props);
105
- const defaultTheme = useTheme() || Theme.light;
106
- const {
107
- align,
108
- alt,
109
- aspectRatio = AspectRatio.original,
110
- badge,
111
- className,
112
- crossOrigin,
113
- fallback = DEFAULT_PROPS.fallback,
114
- fillHeight,
115
- // `focusPoint` needs to be here to remove it from `forwardedProps`.
116
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
117
- focusPoint,
118
- image,
119
- imgProps,
120
- imgRef: propImgRef,
121
- isLoading: isLoadingProp,
122
- objectFit,
123
- loading = DEFAULT_PROPS.loading,
124
- loadingPlaceholderImageRef,
125
- size,
126
- theme = defaultTheme,
127
- variant,
128
- linkProps,
129
- linkAs,
130
- ...forwardedProps
131
- } = otherProps;
132
- const [imgElement, setImgElement] = useState<HTMLImageElement>();
133
-
134
- // Image loading state.
135
- const loadingState = useImageLoad(image, imgElement);
136
- const isLoaded = loadingState === 'isLoaded';
137
- const isLoading = isLoadingProp || loadingState === 'isLoading';
138
- const hasError = loadingState === 'hasError';
139
-
140
- // Focus point.
141
- const focusPointStyle = useFocusPointStyle(props, imgElement, isLoaded);
142
-
143
- const hasIconErrorFallback = hasError && typeof fallback === 'string';
144
- const hasCustomErrorFallback = hasError && !hasIconErrorFallback;
145
- const imageErrorStyle: CSSProperties = {};
146
- if (hasIconErrorFallback) {
147
- // Keep the image layout on icon fallback.
148
- imageErrorStyle.visibility = 'hidden';
149
- } else if (hasCustomErrorFallback) {
150
- // Remove the image on custom fallback.
151
- imageErrorStyle.display = 'none';
152
- }
153
-
154
- const isLink = Boolean(linkProps?.href || linkAs);
155
- const isClickable = !isAnyDisabled && Boolean(isLink || !!forwardedProps.onClick);
156
-
157
- const Wrapper: any = isClickable ? RawClickable : 'div';
158
- const wrapperProps = { ...forwardedProps };
159
- if (isClickable) {
160
- Object.assign(wrapperProps, { as: linkAs || (linkProps?.href ? 'a' : 'button') }, disabledStateProps);
161
- if (isLink) {
162
- Object.assign(wrapperProps, linkProps);
163
- } else {
164
- wrapperProps['aria-label'] = forwardedProps['aria-label'] || alt;
165
- }
166
- }
167
-
168
- // If we have a loading placeholder image that is really loaded (complete)
169
- const loadingPlaceholderImage =
170
- (isLoading && loadingPlaceholderImageRef?.current?.complete && loadingPlaceholderImageRef?.current) ||
171
- undefined;
172
-
173
- // Set loading placeholder image as background
174
- const loadingStyle = loadingPlaceholderImage
175
- ? { backgroundImage: `url(${loadingPlaceholderImage.src})` }
176
- : undefined;
177
-
178
- return (
179
- <Wrapper
180
- {...wrapperProps}
181
- ref={ref}
182
- className={classNames(
183
- linkProps?.className,
184
- className,
185
- handleBasicClasses({
186
- align,
187
- aspectRatio,
188
- prefix: CLASSNAME,
189
- size,
190
- theme,
191
- variant,
192
- isClickable,
193
- hasError,
194
- hasIconErrorFallback,
195
- hasCustomErrorFallback,
196
- isLoading,
197
- objectFit,
198
- hasBadge: !!badge,
199
- }),
200
- fillHeight && `${CLASSNAME}--fill-height`,
201
- )}
202
- >
203
- <span className={`${CLASSNAME}__background`}>
204
- <img
205
- // Use placeholder image size
206
- width={loadingPlaceholderImage?.naturalWidth}
207
- height={loadingPlaceholderImage?.naturalHeight}
208
- {...imgProps}
209
- style={{
210
- // Reserve space while loading (when possible)
211
- width: isLoading ? imgProps?.width || loadingPlaceholderImage?.naturalWidth : undefined,
212
- ...imgProps?.style,
213
- ...imageErrorStyle,
214
- ...focusPointStyle,
215
- ...loadingStyle,
216
- }}
217
- ref={useMergeRefs(setImgElement, propImgRef)}
218
- className={classNames(
219
- handleBasicClasses({
220
- prefix: `${CLASSNAME}__image`,
221
- isLoading,
222
- hasDefinedSize: Boolean(imgProps?.height && imgProps.width),
223
- }),
224
- imgProps?.className,
225
- )}
226
- crossOrigin={crossOrigin}
227
- src={image}
228
- alt={alt}
229
- loading={loading}
230
- />
231
- {!isLoading && hasError && (
232
- <span className={`${CLASSNAME}__fallback`}>
233
- {hasIconErrorFallback ? (
234
- <Icon icon={fallback as string} size={Size.xxs} theme={theme} />
235
- ) : (
236
- fallback
237
- )}
238
- </span>
239
- )}
240
- </span>
241
- {badge &&
242
- React.cloneElement(badge, { className: classNames(`${CLASSNAME}__badge`, badge.props.className) })}
243
- </Wrapper>
244
- );
245
- });
246
- Thumbnail.displayName = COMPONENT_NAME;
247
- Thumbnail.className = CLASSNAME;
248
- Thumbnail.defaultProps = DEFAULT_PROPS;
@@ -1,3 +0,0 @@
1
- export * from './Thumbnail';
2
- export * from './types';
3
- export { useFocusPointStyle } from '@lumx/react/components/thumbnail/useFocusPointStyle';
@@ -1,48 +0,0 @@
1
- import React from 'react';
2
- import { AspectRatio, Size } from '@lumx/react';
3
- import { ValueOf } from '@lumx/react/utils/type';
4
-
5
- /**
6
- * Focal point using vertical alignment, horizontal alignment or coordinates (from -1 to 1).
7
- */
8
- export type FocusPoint = { x?: number; y?: number };
9
-
10
- /**
11
- * Loading attribute is not yet supported in typescript, so we need
12
- * to add it in order to avoid a ts error.
13
- * https://github.com/typescript-cheatsheets/react-typescript-cheatsheet/blob/master/ADVANCED.md#adding-non-standard-attributes
14
- */
15
- declare module 'react' {
16
- interface ImgHTMLAttributes<T> extends React.HTMLAttributes<T> {
17
- loading?: 'eager' | 'lazy';
18
- }
19
- }
20
-
21
- /**
22
- * All available aspect ratios.
23
- * @deprecated
24
- */
25
- export const ThumbnailAspectRatio: Record<string, AspectRatio> = { ...AspectRatio };
26
-
27
- /**
28
- * Thumbnail sizes.
29
- */
30
- export type ThumbnailSize = Extract<Size, 'xxs' | 'xs' | 's' | 'm' | 'l' | 'xl' | 'xxl'>;
31
-
32
- /**
33
- * Thumbnail variants.
34
- */
35
- export const ThumbnailVariant = {
36
- squared: 'squared',
37
- rounded: 'rounded',
38
- } as const;
39
- export type ThumbnailVariant = ValueOf<typeof ThumbnailVariant>;
40
-
41
- /**
42
- * Thumbnail object fit.
43
- */
44
- export const ThumbnailObjectFit = {
45
- cover: 'cover',
46
- contain: 'contain',
47
- } as const;
48
- export type ThumbnailObjectFit = ValueOf<typeof ThumbnailObjectFit>;
@@ -1,92 +0,0 @@
1
- import { shiftPosition } from './useFocusPointStyle';
2
-
3
- describe('shiftPosition', () => {
4
- it('should always return 0% if the imageSize fits the containerSize', () => {
5
- expect(
6
- shiftPosition({
7
- scale: 1.5,
8
- focusPoint: 0,
9
- imageSize: 1200,
10
- containerSize: 800,
11
- }),
12
- ).toEqual(0);
13
- expect(
14
- shiftPosition({
15
- scale: 1,
16
- focusPoint: 0.27,
17
- imageSize: 1000,
18
- containerSize: 1000,
19
- }),
20
- ).toEqual(0);
21
- expect(
22
- shiftPosition({
23
- scale: 3,
24
- focusPoint: 0.5,
25
- imageSize: 1200,
26
- containerSize: 400,
27
- }),
28
- ).toEqual(0);
29
- expect(
30
- shiftPosition({
31
- scale: 2.4,
32
- focusPoint: 1,
33
- imageSize: 1200,
34
- containerSize: 500,
35
- }),
36
- ).toEqual(0);
37
- });
38
-
39
- describe('with bigger side than container ', () => {
40
- // This use case will come, for example, if you have an image in width 100%
41
- // but the image after being resized to keep the ratio is higher than the container.
42
- // Then we are calculating the y shift.
43
-
44
- const image = { width: 1000, height: 1200 };
45
- const container = { width: 1000, height: 300 };
46
- // scale is always the minimum scale ratio. Here imagewidth/containerwidth.
47
- const scale = image.width / container.width; // 1
48
- it('should return 0% if focusPoint equals 0', () => {
49
- expect(
50
- shiftPosition({
51
- scale,
52
- focusPoint: 0,
53
- imageSize: image.height,
54
- containerSize: container.height,
55
- }),
56
- ).toEqual(0);
57
- });
58
-
59
- it('should return 100% if focusPoint equals 1', () => {
60
- expect(
61
- shiftPosition({
62
- scale,
63
- focusPoint: 1,
64
- imageSize: image.height,
65
- containerSize: container.height,
66
- }),
67
- ).toEqual(100);
68
- });
69
-
70
- it('should return 50% if focusPoint equals 0.5', () => {
71
- expect(
72
- shiftPosition({
73
- scale,
74
- focusPoint: 0.5,
75
- imageSize: image.height,
76
- containerSize: container.height,
77
- }),
78
- ).toEqual(50);
79
- });
80
-
81
- it('should return 16% if focusPoint equals 0.25', () => {
82
- expect(
83
- shiftPosition({
84
- scale,
85
- focusPoint: 0.25,
86
- imageSize: image.height,
87
- containerSize: container.height,
88
- }),
89
- ).toEqual(16);
90
- });
91
- });
92
- });
@@ -1,107 +0,0 @@
1
- import { CSSProperties, useEffect, useMemo, useState } from 'react';
2
- import { AspectRatio } from '@lumx/core/js/constants';
3
- import { ThumbnailProps } from '@lumx/react/components/thumbnail/Thumbnail';
4
- import { RectSize } from '@lumx/react/utils/type';
5
-
6
- // Calculate shift to center the focus point in the container.
7
- export function shiftPosition({
8
- scale,
9
- focusPoint,
10
- imageSize,
11
- containerSize,
12
- }: {
13
- scale: number;
14
- focusPoint: number;
15
- imageSize: number;
16
- containerSize: number;
17
- }) {
18
- const scaledSize = imageSize / scale;
19
- if (scaledSize === containerSize) return 0;
20
-
21
- const scaledFocusHeight = focusPoint * scaledSize;
22
- const startFocus = scaledFocusHeight - containerSize / 2;
23
- const shift = startFocus / (scaledSize - containerSize);
24
-
25
- return Math.floor(Math.max(Math.min(shift, 1), 0) * 100);
26
- }
27
-
28
- // Compute CSS properties to apply the focus point.
29
- export const useFocusPointStyle = (
30
- { image, aspectRatio, focusPoint, imgProps: { width, height } = {} }: ThumbnailProps,
31
- element: HTMLImageElement | undefined,
32
- isLoaded: boolean,
33
- ): CSSProperties => {
34
- // Get natural image size from imgProps or img element.
35
- const imageSize: RectSize | undefined = useMemo(() => {
36
- // Focus point is not applicable => exit early
37
- if (!image || aspectRatio === AspectRatio.original || (!focusPoint?.x && !focusPoint?.y)) return undefined;
38
- if (typeof width === 'number' && typeof height === 'number') return { width, height };
39
- if (element && isLoaded) return { width: element.naturalWidth, height: element.naturalHeight };
40
- return undefined;
41
- }, [aspectRatio, element, focusPoint?.x, focusPoint?.y, height, image, isLoaded, width]);
42
-
43
- // Get container size (dependant on imageSize).
44
- const [containerSize, setContainerSize] = useState<RectSize | undefined>(undefined);
45
- useEffect(
46
- function updateContainerSize() {
47
- const cWidth = element?.offsetWidth;
48
- const cHeight = element?.offsetHeight;
49
- if (cWidth && cHeight) {
50
- // Update only if needed.
51
- setContainerSize((oldContainerSize) =>
52
- oldContainerSize?.width === cWidth && oldContainerSize.height === cHeight
53
- ? oldContainerSize
54
- : { width: cWidth, height: cHeight },
55
- );
56
- } else if (imageSize) {
57
- // Wait for a render (in case the container size is dependent on the image size).
58
- requestAnimationFrame(updateContainerSize);
59
- }
60
- },
61
- [element?.offsetHeight, element?.offsetWidth, imageSize],
62
- );
63
-
64
- // Compute style.
65
- const style: CSSProperties = useMemo(() => {
66
- // Focus point is not applicable => exit early
67
- if (!image || aspectRatio === AspectRatio.original || (!focusPoint?.x && !focusPoint?.y)) {
68
- return {};
69
- }
70
- if (!element || !imageSize) {
71
- // Focus point can be computed but now right now (image size unknown).
72
- return { visibility: 'hidden' };
73
- }
74
- if (!containerSize || !imageSize.height || !imageSize.width) {
75
- // Missing container or image size abort focus point compute.
76
- return {};
77
- }
78
-
79
- const heightScale = imageSize.height / containerSize.height;
80
- const widthScale = imageSize.width / containerSize.width;
81
- const scale = Math.min(widthScale, heightScale);
82
-
83
- // Focus Y relative to the top (instead of the center)
84
- const focusPointFromTop = Math.abs((focusPoint?.y || 0) - 1) / 2;
85
- const y = shiftPosition({
86
- scale,
87
- focusPoint: focusPointFromTop,
88
- imageSize: imageSize.height,
89
- containerSize: containerSize.height,
90
- });
91
-
92
- // Focus X relative to the left (instead of the center)
93
- const focusPointFromLeft = Math.abs((focusPoint?.x || 0) + 1) / 2;
94
- const x = shiftPosition({
95
- scale,
96
- focusPoint: focusPointFromLeft,
97
- imageSize: imageSize.width,
98
- containerSize: containerSize.width,
99
- });
100
-
101
- const objectPosition = `${x}% ${y}%`;
102
-
103
- return { objectPosition };
104
- }, [aspectRatio, containerSize, element, focusPoint?.x, focusPoint?.y, image, imageSize]);
105
-
106
- return style;
107
- };
@@ -1,40 +0,0 @@
1
- import { useEffect, useState } from 'react';
2
-
3
- export type LoadingState = 'isLoading' | 'isLoaded' | 'hasError';
4
-
5
- function getState(img: HTMLImageElement | null | undefined, event?: Event) {
6
- // Error event occurred or image has no source.
7
- if (event?.type === 'error' || (img?.complete && !img.getAttribute('src'))) {
8
- return 'hasError';
9
- }
10
- // Image is undefined or incomplete.
11
- if (!img || !img.complete) {
12
- return 'isLoading';
13
- }
14
- // Else loaded.
15
- return 'isLoaded';
16
- }
17
-
18
- export function useImageLoad(imageURL: string, imgRef?: HTMLImageElement): LoadingState {
19
- const [state, setState] = useState<LoadingState>(getState(imgRef));
20
-
21
- // Update state when changing image URL or DOM reference.
22
- useEffect(() => {
23
- setState(getState(imgRef));
24
- }, [imageURL, imgRef]);
25
-
26
- // Listen to `load` and `error` event on image
27
- useEffect(() => {
28
- const img = imgRef;
29
- if (!img) return undefined;
30
- const update = (event?: Event) => setState(getState(img, event));
31
- img.addEventListener('load', update);
32
- img.addEventListener('error', update);
33
- return () => {
34
- img.removeEventListener('load', update);
35
- img.removeEventListener('error', update);
36
- };
37
- }, [imgRef, imgRef?.src]);
38
-
39
- return state;
40
- }
@@ -1,68 +0,0 @@
1
- import { ReactNode } from 'react';
2
-
3
- import classNames from 'classnames';
4
-
5
- import { GenericProps } from '@lumx/react/utils/type';
6
- import { getRootClassName, handleBasicClasses } from '@lumx/core/js/utils/className';
7
- import { forwardRef } from '@lumx/react/utils/react/forwardRef';
8
-
9
- /**
10
- * Defines the props of the component.
11
- */
12
- export interface ToolbarProps extends GenericProps {
13
- /** After content (placed after the label). */
14
- after?: ReactNode;
15
- /** Before content (placed before the label). */
16
- before?: ReactNode;
17
- /** Label content. */
18
- label?: ReactNode;
19
- }
20
-
21
- /**
22
- * Component display name.
23
- */
24
- const COMPONENT_NAME = 'Toolbar';
25
-
26
- /**
27
- * Component default class name and class prefix.
28
- */
29
- const CLASSNAME = getRootClassName(COMPONENT_NAME);
30
-
31
- /**
32
- * Component default props.
33
- */
34
- const DEFAULT_PROPS: Partial<ToolbarProps> = {};
35
-
36
- /**
37
- * Toolbar component.
38
- *
39
- * @param props Component props.
40
- * @param ref Component ref.
41
- * @return React element.
42
- */
43
- export const Toolbar = forwardRef<ToolbarProps, HTMLDivElement>((props, ref) => {
44
- const { after, before, className, label, ...forwardedProps } = props;
45
-
46
- return (
47
- <div
48
- ref={ref}
49
- {...forwardedProps}
50
- className={classNames(
51
- className,
52
- handleBasicClasses({
53
- hasAfter: Boolean(after),
54
- hasBefore: Boolean(before),
55
- hasLabel: Boolean(label),
56
- prefix: CLASSNAME,
57
- }),
58
- )}
59
- >
60
- {before && <div className={`${CLASSNAME}__before`}>{before}</div>}
61
- {label && <div className={`${CLASSNAME}__label`}>{label}</div>}
62
- {after && <div className={`${CLASSNAME}__after`}>{after}</div>}
63
- </div>
64
- );
65
- });
66
- Toolbar.displayName = COMPONENT_NAME;
67
- Toolbar.className = CLASSNAME;
68
- Toolbar.defaultProps = DEFAULT_PROPS;
@@ -1 +0,0 @@
1
- export * from './Toolbar';