@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,148 +0,0 @@
1
- import React from 'react';
2
- import type { Point } from '@lumx/react/utils/type';
3
- import type { useAnimateScroll } from './useAnimateScroll';
4
-
5
- /**
6
- * Listen to mouse wheel + ctrl and multi-pointer pinch to zoom
7
- */
8
- export function usePointerZoom(
9
- scrollAreaRef: React.RefObject<HTMLDivElement>,
10
- onScaleChange: ((value: number) => void) | undefined,
11
- animateScroll: ReturnType<typeof useAnimateScroll>,
12
- ) {
13
- const [isPointerZooming, setPointerZooming] = React.useState(false);
14
- React.useEffect(() => {
15
- const scrollArea = scrollAreaRef.current as HTMLDivElement;
16
- if (!scrollArea || !onScaleChange) {
17
- return undefined;
18
- }
19
-
20
- let animationFrame: number | null;
21
- let zoomStateTimeoutId: ReturnType<typeof setTimeout> | null;
22
-
23
- function updateScaleOnNextFrame(newScale: number, mousePosition: Point): void {
24
- // Cancel previously scheduled frame
25
- if (animationFrame) cancelAnimationFrame(animationFrame);
26
-
27
- // Cancel previously scheduled zoom state change
28
- if (zoomStateTimeoutId) clearTimeout(zoomStateTimeoutId);
29
-
30
- function nextFrame() {
31
- setPointerZooming(true);
32
- onScaleChange?.(newScale);
33
-
34
- animationFrame = null;
35
- // Wait a bit before indicating the pointer zooming is finished
36
- zoomStateTimeoutId = setTimeout(() => setPointerZooming(false), 100);
37
- }
38
- animationFrame = requestAnimationFrame(nextFrame);
39
-
40
- // Animate scroll in parallel (centering on the current mouse position)
41
- animateScroll(mousePosition, {
42
- width: scrollArea.scrollWidth,
43
- height: scrollArea.scrollHeight,
44
- });
45
- }
46
-
47
- function onWheel(event: WheelEvent) {
48
- if (!event.ctrlKey) {
49
- return;
50
- }
51
- event.preventDefault();
52
- const newScale = Math.exp(-event.deltaY / 50);
53
-
54
- // Update scale on next frame (focused on the mouse position)
55
- updateScaleOnNextFrame(newScale, {
56
- x: event.clientX,
57
- y: event.clientY,
58
- });
59
- }
60
-
61
- const activePointers: Record<PointerEvent['pointerId'], PointerEvent> = {};
62
- let prevDistance: number | null = null;
63
- let previousCenterPoint: Point | null = null;
64
-
65
- function onPointerDown(event: PointerEvent) {
66
- activePointers[event.pointerId] = event;
67
- }
68
- function onPointerMove(event: PointerEvent) {
69
- // Update pointer in cache
70
- if (activePointers[event.pointerId]) {
71
- activePointers[event.pointerId] = event;
72
- }
73
-
74
- const pointers = Object.values(activePointers);
75
-
76
- // Make sure we run computation on one of the pointer in the group
77
- if (pointers[0]?.pointerId !== event.pointerId) {
78
- return;
79
- }
80
-
81
- // Centered point between all pointers
82
- const centerPoint: Point = {
83
- x: pointers.reduce((x, { clientX }) => x + clientX, 0) / pointers.length,
84
- y: pointers.reduce((y, { clientY }) => y + clientY, 0) / pointers.length,
85
- };
86
-
87
- // Movement of the center point
88
- const deltaCenterPoint = previousCenterPoint && {
89
- left: previousCenterPoint.x - centerPoint.x,
90
- top: previousCenterPoint.y - centerPoint.y,
91
- };
92
-
93
- // Pan X & Y
94
- if (deltaCenterPoint) {
95
- // Apply movement of the center point to the scroll
96
- scrollArea.scrollBy({
97
- top: deltaCenterPoint.top / 2,
98
- left: deltaCenterPoint.left / 2,
99
- });
100
- }
101
-
102
- // Pinch to zoom
103
- if (pointers.length === 2) {
104
- const [pointer1, pointer2] = pointers;
105
- const distance = Math.hypot(pointer2.clientX - pointer1.clientX, pointer2.clientY - pointer1.clientY);
106
-
107
- if (prevDistance && deltaCenterPoint) {
108
- const delta = prevDistance - distance;
109
- const absDelta = Math.abs(delta);
110
-
111
- // Zoom only if we are "pinching" more than we are moving the pointers
112
- if (absDelta > Math.abs(deltaCenterPoint.left) && absDelta > Math.abs(deltaCenterPoint.top)) {
113
- // Update scale on next frame (focused on the center point between the two pointers)
114
- const newScale = Math.exp(-delta / 100);
115
- updateScaleOnNextFrame(newScale, centerPoint);
116
- }
117
- }
118
-
119
- prevDistance = distance;
120
- }
121
-
122
- previousCenterPoint = centerPoint;
123
- }
124
- function onPointerUp(event: PointerEvent) {
125
- prevDistance = null;
126
- previousCenterPoint = null;
127
- delete activePointers[event.pointerId];
128
- }
129
-
130
- scrollArea.addEventListener('wheel', onWheel, { passive: false });
131
- const isMultiTouch = navigator.maxTouchPoints >= 2;
132
- if (isMultiTouch) {
133
- scrollArea.addEventListener('pointerdown', onPointerDown);
134
- scrollArea.addEventListener('pointermove', onPointerMove);
135
- scrollArea.addEventListener('pointerup', onPointerUp);
136
- }
137
- return () => {
138
- scrollArea.removeEventListener('wheel', onWheel);
139
- if (isMultiTouch) {
140
- scrollArea.removeEventListener('pointerdown', onPointerDown);
141
- scrollArea.removeEventListener('pointermove', onPointerMove);
142
- scrollArea.removeEventListener('pointerup', onPointerUp);
143
- }
144
- };
145
- }, [animateScroll, onScaleChange, scrollAreaRef]);
146
-
147
- return isPointerZooming;
148
- }
@@ -1,48 +0,0 @@
1
- import type { IconButtonProps, LightboxProps, SlideshowProps, ThumbnailProps } from '@lumx/react';
2
- import type { HasClassName } from '@lumx/react/utils/type';
3
- import type { ImageCaptionMetadata } from '@lumx/react/components/image-block/ImageCaption';
4
-
5
- export type InheritedSlideShowProps = Pick<SlideshowProps, 'slideshowControlsProps' | 'slideGroupLabel'>;
6
-
7
- export interface ZoomButtonProps {
8
- /** Zoom in button props */
9
- zoomInButtonProps?: IconButtonProps;
10
- /** Zoom out button props */
11
- zoomOutButtonProps?: IconButtonProps;
12
- }
13
-
14
- export type InheritedThumbnailProps = Pick<
15
- ThumbnailProps,
16
- 'image' | 'alt' | 'imgProps' | 'imgRef' | 'loadingPlaceholderImageRef'
17
- >;
18
-
19
- export type InheritedImageMetadata = Pick<ImageCaptionMetadata, 'title' | 'description' | 'tags'>;
20
-
21
- export type ImageProps = InheritedThumbnailProps & InheritedImageMetadata;
22
-
23
- export interface ImagesProps {
24
- /** Index of the active image to show on open */
25
- activeImageIndex?: number;
26
- /** List of images to display */
27
- images: Array<ImageProps>;
28
- /** Ref of the active image when the lightbox is open */
29
- activeImageRef?: React.Ref<HTMLImageElement>;
30
- }
31
-
32
- export type InheritedLightboxProps = Pick<
33
- LightboxProps,
34
- 'isOpen' | 'parentElement' | 'onClose' | 'closeButtonProps' | 'aria-label' | 'aria-labelledby'
35
- >;
36
-
37
- export type ForwardedProps = React.ComponentPropsWithoutRef<'div'>;
38
-
39
- /**
40
- * ImageLightbox component props
41
- */
42
- export interface ImageLightboxProps
43
- extends HasClassName,
44
- ZoomButtonProps,
45
- ImagesProps,
46
- InheritedSlideShowProps,
47
- InheritedLightboxProps,
48
- ForwardedProps {}
@@ -1,141 +0,0 @@
1
- import React from 'react';
2
-
3
- import memoize from 'lodash/memoize';
4
-
5
- import { startViewTransition } from '@lumx/react/utils/browser/DOM/startViewTransition';
6
- import { findImage } from '@lumx/react/utils/browser/DOM/findImage';
7
-
8
- import type { ImageLightboxProps } from './types';
9
- import { CLASSNAME } from './constants';
10
-
11
- /** Subset of the ImageLightboxProps managed by the useImageLightbox hook */
12
- type ManagedProps = Pick<
13
- ImageLightboxProps,
14
- 'isOpen' | 'images' | 'parentElement' | 'activeImageRef' | 'onClose' | 'activeImageIndex'
15
- >;
16
-
17
- const EMPTY_PROPS: ManagedProps = { isOpen: false, images: [], parentElement: React.createRef() };
18
-
19
- type TriggerOptions = Pick<ImageLightboxProps, 'activeImageIndex'>;
20
-
21
- /**
22
- * Set up an ImageLightbox with images and triggers.
23
- *
24
- * - Associate a trigger with the lightbox to properly focus the trigger on close
25
- * - Associate a trigger with an image to display on open
26
- * - Automatically provide a view transition between an image trigger and the displayed image on open & close
27
- *
28
- * @param props Images to display in the image lightbox
29
- */
30
- export function useImageLightbox<P extends Partial<ImageLightboxProps>>(
31
- props: P,
32
- ): {
33
- /**
34
- * Generates trigger props
35
- * @param index Provide an index to choose which image to display when the image lightbox opens.
36
- * */
37
- getTriggerProps: (options?: TriggerOptions) => { onClick: React.MouseEventHandler; ref: React.Ref<any> };
38
- /** Props to forward to the ImageLightbox */
39
- imageLightboxProps: ManagedProps & P;
40
- } {
41
- const propsRef = React.useRef(props);
42
-
43
- React.useEffect(() => {
44
- propsRef.current = props;
45
- }, [props]);
46
-
47
- // Keep reference for each image elements
48
- const imageRefsRef = React.useRef<Array<React.RefObject<HTMLImageElement>>>([]);
49
-
50
- const currentImageRef = React.useRef<HTMLImageElement>(null);
51
- const [imageLightboxProps, setImageLightboxProps] = React.useState(
52
- () => ({ ...EMPTY_PROPS, ...props }) as ManagedProps & P,
53
- );
54
-
55
- const getTriggerProps = React.useMemo(() => {
56
- const triggerImageRefs: Record<number, React.RefObject<HTMLImageElement>> = {};
57
-
58
- async function close() {
59
- const currentImage = currentImageRef.current;
60
- if (!currentImage) {
61
- return;
62
- }
63
- const currentIndex = imageRefsRef.current.findIndex(
64
- (imageRef) => imageRef.current === currentImage,
65
- ) as number;
66
-
67
- await startViewTransition({
68
- changes() {
69
- // Close lightbox
70
- setImageLightboxProps((prevProps) => ({ ...prevProps, isOpen: false }));
71
- },
72
- // Morph from the image in lightbox to the image in trigger
73
- viewTransitionName: {
74
- source: currentImageRef,
75
- target: triggerImageRefs[currentIndex],
76
- name: CLASSNAME,
77
- },
78
- });
79
- }
80
-
81
- async function open(triggerElement: HTMLElement, { activeImageIndex }: TriggerOptions = {}) {
82
- // If we find an image inside the trigger, animate it in transition with the opening image
83
- const triggerImage = triggerImageRefs[activeImageIndex as any]?.current || findImage(triggerElement);
84
-
85
- // Inject refs to improve transition and loading style
86
- const images = propsRef.current?.images?.map((image, idx) => {
87
- // Get or create image reference
88
- let imgRef = imageRefsRef.current[idx];
89
- if (!imgRef) {
90
- imgRef = React.createRef();
91
- imageRefsRef.current[idx] = imgRef;
92
- }
93
-
94
- // Try to use the trigger image as the loading placeholder
95
- const loadingPlaceholderImageRef =
96
- triggerImage && idx === activeImageIndex ? { current: triggerImage } : undefined;
97
-
98
- return { loadingPlaceholderImageRef, ...image, imgRef };
99
- });
100
-
101
- await startViewTransition({
102
- changes: () => {
103
- // Open lightbox with setup props
104
- setImageLightboxProps((prevProps) => ({
105
- ...prevProps,
106
- ...propsRef.current,
107
- activeImageRef: currentImageRef,
108
- parentElement: { current: triggerElement },
109
- isOpen: true,
110
- onClose: () => {
111
- close();
112
- propsRef.current?.onClose?.();
113
- },
114
- images,
115
- activeImageIndex: activeImageIndex || 0,
116
- }));
117
- },
118
- // Morph from the image in trigger to the image in lightbox
119
- viewTransitionName: {
120
- source: triggerImage,
121
- target: currentImageRef,
122
- name: CLASSNAME,
123
- },
124
- });
125
- }
126
-
127
- return memoize((options?: TriggerOptions) => ({
128
- ref(element: HTMLElement | null) {
129
- // Track trigger image ref if any
130
- if (options?.activeImageIndex !== undefined && element) {
131
- triggerImageRefs[options.activeImageIndex] = { current: findImage(element) };
132
- }
133
- },
134
- onClick(e: React.MouseEvent) {
135
- open(e.target as HTMLElement, options);
136
- },
137
- }));
138
- }, []);
139
-
140
- return { getTriggerProps, imageLightboxProps };
141
- }
@@ -1,77 +0,0 @@
1
- import { mdiEarth } from '@lumx/icons';
2
- import { Icon, Text } from '@lumx/react';
3
- import { withResizableBox } from '@lumx/react/stories/decorators/withResizableBox';
4
- import { allTypographyArgType } from '@lumx/react/stories/controls/typography';
5
- import { colorArgType, colorVariantArgType } from '@lumx/react/stories/controls/color';
6
- import { InlineList } from '.';
7
-
8
- export default {
9
- title: 'LumX components/inline-list/InlineList',
10
- component: InlineList,
11
- argTypes: {
12
- typography: allTypographyArgType,
13
- color: colorArgType,
14
- colorVariant: colorVariantArgType,
15
- children: { control: false },
16
- },
17
- };
18
-
19
- /**
20
- * Inline list with three simple text elements
21
- */
22
- export const WithElements = {
23
- args: {
24
- children: [
25
- <span key="1">Some text</span>,
26
- <span key="2">Some other text</span>,
27
- <span key="3">Some other other text</span>,
28
- ],
29
- },
30
- };
31
-
32
- /**
33
- * Using color, typography and more complex elements
34
- */
35
- export const MixedNoWrapAndTruncate = {
36
- args: {
37
- typography: 'body1',
38
- color: 'dark',
39
- colorVariant: 'L2',
40
- style: { width: '100%' },
41
- children: [
42
- <Text key="1" as="span" truncate>
43
- Very very very very very long text
44
- </Text>,
45
- <Text key="2" as="span" noWrap>
46
- <Icon icon={mdiEarth} />
47
- Some text
48
- </Text>,
49
- <Text key="3" as="span" truncate>
50
- Very very very very very long text
51
- </Text>,
52
- ],
53
- },
54
- decorators: [withResizableBox({ width: 400 })],
55
- };
56
-
57
- /**
58
- * Line wrap on overflow
59
- */
60
- export const Wrap = {
61
- args: {
62
- wrap: true,
63
- children: [
64
- <Text key="1" as="span">
65
- Very very very very very long text
66
- </Text>,
67
- <Text key="2" as="span">
68
- <Icon icon={mdiEarth} />
69
- Some text
70
- </Text>,
71
- <Text key="3" as="span">
72
- Very very very very very long text
73
- </Text>,
74
- ],
75
- },
76
- decorators: [withResizableBox({ width: 400 })],
77
- };
@@ -1,52 +0,0 @@
1
- import { commonTestsSuiteRTL } from '@lumx/react/testing/utils';
2
- import { render, screen, within } from '@testing-library/react';
3
- import { queryByClassName } from '@lumx/react/testing/utils/queries';
4
- import { InlineList, InlineListProps } from '.';
5
-
6
- const CLASSNAME = InlineList.className as string;
7
-
8
- const setup = (props: Partial<InlineListProps> = {}) => {
9
- render(<InlineList {...props} />);
10
- const inlineList = queryByClassName(document.body, CLASSNAME);
11
- return { props, inlineList };
12
- };
13
-
14
- describe(`<${InlineList.displayName}>`, () => {
15
- describe('Snapshots and structure', () => {
16
- it('should render default', () => {
17
- const { inlineList } = setup({ children: ['Some text', 'Some other text'] });
18
-
19
- expect(inlineList).toBeInTheDocument();
20
-
21
- const list = screen.getByRole('list');
22
- expect(list).toBeInTheDocument();
23
-
24
- const listItems = within(list).queryAllByRole('listitem');
25
- expect(listItems.length).toBe(2);
26
- expect(listItems[0]).toHaveTextContent('Some text');
27
- expect(listItems[1]).toHaveTextContent('Some other text');
28
- });
29
-
30
- it('should render with typography', () => {
31
- const { inlineList } = setup({ typography: 'body2', children: 'Some text' });
32
- expect(inlineList).toHaveClass('lumx-typography-body2');
33
- });
34
-
35
- it('should render with color', () => {
36
- const { inlineList } = setup({ color: 'blue', children: 'Some text' });
37
- expect(inlineList).toHaveClass('lumx-color-font-blue-N');
38
- });
39
-
40
- it('should render with color and variant', () => {
41
- const { inlineList } = setup({ color: 'blue', colorVariant: 'D2', children: 'Some text' });
42
- expect(inlineList).toHaveClass('lumx-color-font-blue-D2');
43
- });
44
- });
45
-
46
- // Common tests suite.
47
- commonTestsSuiteRTL(setup, {
48
- baseClassName: CLASSNAME,
49
- forwardClassName: 'inlineList',
50
- forwardAttributes: 'inlineList',
51
- });
52
- });
@@ -1,96 +0,0 @@
1
- import { Children, isValidElement } from 'react';
2
-
3
- import classNames from 'classnames';
4
-
5
- import { ColorVariant, ColorWithVariants, Typography } from '@lumx/react';
6
- import { GenericProps } from '@lumx/react/utils/type';
7
- import { fontColorClass, getRootClassName, getTypographyClassName } from '@lumx/core/js/utils/className';
8
- import { forwardRef } from '@lumx/react/utils/react/forwardRef';
9
-
10
- /**
11
- * Defines the props of the component.
12
- */
13
- export interface InlineListProps extends GenericProps {
14
- /**
15
- * Text color.
16
- */
17
- color?: ColorWithVariants;
18
- /**
19
- * Lightened or darkened variant of the selected color.
20
- */
21
- colorVariant?: ColorVariant;
22
- /**
23
- * Typography variant.
24
- */
25
- typography?: Typography;
26
- /**
27
- * Activate line wrap on overflow.
28
- */
29
- wrap?: boolean;
30
- /**
31
- * Children
32
- */
33
- children?: React.ReactNode;
34
- }
35
-
36
- /**
37
- * Component display name.
38
- */
39
- const COMPONENT_NAME = 'InlineList';
40
-
41
- /**
42
- * Component default class name and class prefix.
43
- */
44
- const CLASSNAME = getRootClassName(COMPONENT_NAME);
45
-
46
- /**
47
- * Component default props.
48
- */
49
- const DEFAULT_PROPS = {} as const;
50
-
51
- /**
52
- * InlineList component.
53
- *
54
- * @param props Component props.
55
- * @param ref Component ref.
56
- * @return React element.
57
- */
58
- export const InlineList = forwardRef<InlineListProps>((props, ref) => {
59
- const { className, color, colorVariant, typography, children, wrap, ...forwardedProps } = props;
60
- const typographyClassName = typography && getTypographyClassName(typography);
61
- return (
62
- // eslint-disable-next-line jsx-a11y/no-redundant-roles
63
- <ul
64
- {...forwardedProps}
65
- ref={ref as any}
66
- className={classNames(
67
- className,
68
- CLASSNAME,
69
- wrap && `${CLASSNAME}--wrap`,
70
- fontColorClass(color, colorVariant),
71
- typographyClassName,
72
- )}
73
- // Lists with removed bullet style can lose their a11y list role on some browsers
74
- role="list"
75
- >
76
- {Children.toArray(children).map((child, index) => {
77
- const key = (isValidElement(child) && child.key) || index;
78
- return (
79
- // We need to item is set as display: contents which removes the semantic.
80
- // eslint-disable-next-line jsx-a11y/no-redundant-roles
81
- <li key={key} role="listitem" className={`${CLASSNAME}__item`}>
82
- {index !== 0 && (
83
- <span className={`${CLASSNAME}__item-separator`} aria-hidden="true">
84
- {'\u00A0•\u00A0'}
85
- </span>
86
- )}
87
- {child}
88
- </li>
89
- );
90
- })}
91
- </ul>
92
- );
93
- });
94
- InlineList.displayName = COMPONENT_NAME;
95
- InlineList.className = CLASSNAME;
96
- InlineList.defaultProps = DEFAULT_PROPS;
@@ -1 +0,0 @@
1
- export * from './InlineList';
@@ -1,35 +0,0 @@
1
- import { InputHelper, Kind } from '@lumx/react';
2
- import { getSelectArgType } from '@lumx/react/stories/controls/selectArgType';
3
- import { withCombinations } from '@lumx/react/stories/decorators/withCombinations';
4
- import { withUndefined } from '@lumx/react/stories/controls/withUndefined';
5
-
6
- export default {
7
- title: 'LumX components/input-helper/Input Helper',
8
- component: InputHelper,
9
- argTypes: {
10
- kind: getSelectArgType(Kind),
11
- },
12
- args: {
13
- ...InputHelper.defaultProps,
14
- children: 'Some helper text',
15
- },
16
- };
17
-
18
- /**
19
- * Default input helper
20
- */
21
- export const Default = {};
22
-
23
- /**
24
- * All `kind` variants
25
- */
26
- export const AllKinds = {
27
- argTypes: { kind: { control: false } },
28
- decorators: [
29
- withCombinations({
30
- combinations: {
31
- rows: { key: 'kind', options: withUndefined(Kind) },
32
- },
33
- }),
34
- ],
35
- };
@@ -1,55 +0,0 @@
1
- import { Kind, Theme } from '@lumx/react';
2
- import { commonTestsSuiteRTL, SetupRenderOptions } from '@lumx/react/testing/utils';
3
- import { getByClassName } from '@lumx/react/testing/utils/queries';
4
- import { render } from '@testing-library/react';
5
- import { INPUT_HELPER_CONFIGURATION } from '@lumx/react/components/input-helper/constants';
6
- import { InputHelper, InputHelperProps } from './InputHelper';
7
-
8
- const CLASSNAME = InputHelper.className as string;
9
-
10
- type SetupProps = Partial<InputHelperProps>;
11
-
12
- /**
13
- * Mounts the component and returns common DOM elements / data needed in multiple tests further down.
14
- */
15
- const setup = (propsOverride: SetupProps = {}, { wrapper }: SetupRenderOptions = {}) => {
16
- const props: any = { ...propsOverride };
17
- render(<InputHelper {...props} />, { wrapper });
18
- const helper = getByClassName(document.body, CLASSNAME);
19
-
20
- return { helper, props };
21
- };
22
-
23
- describe(`<${InputHelper.displayName}>`, () => {
24
- describe('Props', () => {
25
- it('should render text', () => {
26
- const { props, helper } = setup({ children: 'helper text' });
27
-
28
- expect(helper).toHaveTextContent(props.children);
29
- expect(helper.className).toMatchInlineSnapshot('"lumx-input-helper lumx-input-helper--theme-light"');
30
- });
31
-
32
- it('should render dark theme', () => {
33
- const { helper } = setup({ theme: Theme.dark });
34
- expect(helper).toHaveClass('lumx-input-helper--theme-dark');
35
- });
36
-
37
- it.each(Object.values(Kind))('should render kind %s', (kind) => {
38
- const { helper } = setup({ kind });
39
- const { color } = INPUT_HELPER_CONFIGURATION[kind as any] || {};
40
- if (color) expect(helper).toHaveClass(`${CLASSNAME}--color-${color}`);
41
- });
42
- });
43
-
44
- commonTestsSuiteRTL(setup, {
45
- baseClassName: CLASSNAME,
46
- forwardClassName: 'helper',
47
- forwardAttributes: 'helper',
48
- applyTheme: {
49
- affects: [{ element: 'helper' }],
50
- viaProp: true,
51
- viaContext: true,
52
- defaultTheme: 'light',
53
- },
54
- });
55
- });