@lumx/react 3.0.1 → 3.0.2-alpha-react-utils.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (612) hide show
  1. package/{esm/_internal/useDisableBodyScroll.js → _internal/0062d1bc.js} +1 -1
  2. package/_internal/0062d1bc.js.map +1 -0
  3. package/_internal/03e8323d.d.ts +118 -0
  4. package/_internal/0402f9bc.d.ts +183 -0
  5. package/{esm/_internal/List2.js → _internal/0b370acc.js} +7 -10
  6. package/_internal/0b370acc.js.map +1 -0
  7. package/_internal/0d154d73.d.ts +67 -0
  8. package/_internal/113e3b40.d.ts +31 -0
  9. package/{esm/_internal/InputLabel.js → _internal/12ab39e4.js} +4 -4
  10. package/_internal/12ab39e4.js.map +1 -0
  11. package/{esm/_internal/DatePickerField.js → _internal/13e759f3.js} +10 -14
  12. package/_internal/13e759f3.js.map +1 -0
  13. package/{esm/_internal/SideNavigationItem.js → _internal/158b46d5.js} +8 -8
  14. package/_internal/158b46d5.js.map +1 -0
  15. package/_internal/17b74e16.d.ts +31 -0
  16. package/_internal/1b1530a4.d.ts +43 -0
  17. package/_internal/20976405.js +87 -0
  18. package/_internal/20976405.js.map +1 -0
  19. package/_internal/20b0e9a5.d.ts +77 -0
  20. package/{esm/_internal/Chip2.js → _internal/26cd9c63.js} +4 -4
  21. package/_internal/26cd9c63.js.map +1 -0
  22. package/{esm/_internal/ListSubheader.js → _internal/27f21164.js} +3 -3
  23. package/_internal/27f21164.js.map +1 -0
  24. package/{esm/_internal/constants.js → _internal/288dfd0f.js} +1 -1
  25. package/_internal/288dfd0f.js.map +1 -0
  26. package/_internal/28aaf23a.d.ts +41 -0
  27. package/_internal/2c829c0b.d.ts +57 -0
  28. package/{esm/_internal/useFocusTrap.js → _internal/2cc0aec5.js} +3 -3
  29. package/_internal/2cc0aec5.js.map +1 -0
  30. package/{esm/_internal/types.js → _internal/2d0a5b28.js} +3 -3
  31. package/_internal/2d0a5b28.js.map +1 -0
  32. package/_internal/2d4b5a5e.d.ts +92 -0
  33. package/_internal/2d770113.d.ts +38 -0
  34. package/{esm/_internal/TableRow.js → _internal/2fe97f00.js} +5 -5
  35. package/_internal/2fe97f00.js.map +1 -0
  36. package/_internal/31c16fa0.d.ts +37 -0
  37. package/{esm/_internal/renderLink.js → _internal/329a01d3.js} +2 -2
  38. package/_internal/329a01d3.js.map +1 -0
  39. package/{esm/_internal/SkeletonTypography.js → _internal/3326e990.js} +4 -4
  40. package/_internal/3326e990.js.map +1 -0
  41. package/{esm/_internal/IconButton.js → _internal/377b2f44.js} +7 -11
  42. package/_internal/377b2f44.js.map +1 -0
  43. package/{esm/_internal/CommentBlock.js → _internal/3b8d2a6e.js} +6 -6
  44. package/_internal/3b8d2a6e.js.map +1 -0
  45. package/_internal/3bd3186e.d.ts +57 -0
  46. package/{esm/_internal/ImageBlock.js → _internal/48e40868.js} +5 -5
  47. package/_internal/48e40868.js.map +1 -0
  48. package/{esm/_internal/TextField.js → _internal/490ec1da.js} +10 -10
  49. package/_internal/490ec1da.js.map +1 -0
  50. package/_internal/49127d69.d.ts +52 -0
  51. package/{esm/_internal/Message2.js → _internal/4dcd87cb.js} +5 -5
  52. package/_internal/4dcd87cb.js.map +1 -0
  53. package/{esm/_internal/Dropdown2.js → _internal/4f44d848.js} +6 -6
  54. package/_internal/4f44d848.js.map +1 -0
  55. package/{esm/_internal/partitionMulti.js → _internal/4fc64a2e.js} +2 -2
  56. package/_internal/4fc64a2e.js.map +1 -0
  57. package/_internal/53a831be.js +108 -0
  58. package/_internal/53a831be.js.map +1 -0
  59. package/_internal/55271fa1.d.ts +34 -0
  60. package/_internal/55d30377.d.ts +22 -0
  61. package/{esm/_internal/Switch2.js → _internal/56385b04.js} +7 -7
  62. package/_internal/56385b04.js.map +1 -0
  63. package/_internal/599e250a.d.ts +88 -0
  64. package/_internal/5a054691.d.ts +33 -0
  65. package/{esm/_internal/Avatar2.js → _internal/5a127b58.js} +5 -5
  66. package/_internal/5a127b58.js.map +1 -0
  67. package/{esm/_internal/ExpansionPanel.js → _internal/5a1c0db4.js} +10 -10
  68. package/_internal/5a1c0db4.js.map +1 -0
  69. package/{esm/_internal/RadioGroup.js → _internal/5babcc39.js} +7 -7
  70. package/_internal/5babcc39.js.map +1 -0
  71. package/_internal/5c1bf4d4.d.ts +81 -0
  72. package/_internal/5d8ed4ee.js +113 -0
  73. package/_internal/5d8ed4ee.js.map +1 -0
  74. package/{esm/_internal/Thumbnail2.js → _internal/616f2912.js} +6 -6
  75. package/_internal/616f2912.js.map +1 -0
  76. package/_internal/61f915de.d.ts +49 -0
  77. package/{esm/_internal/ChipGroup.js → _internal/620081fa.js} +4 -4
  78. package/_internal/620081fa.js.map +1 -0
  79. package/{esm/_internal/_rollupPluginBabelHelpers.js → _internal/6340c129.js} +18 -2
  80. package/_internal/6340c129.js.map +1 -0
  81. package/_internal/6581c863.d.ts +34 -0
  82. package/_internal/66de4d45.d.ts +32 -0
  83. package/_internal/6735c5c8.d.ts +62 -0
  84. package/_internal/69dd1472.js +112 -0
  85. package/_internal/69dd1472.js.map +1 -0
  86. package/{esm/_internal/Slider2.js → _internal/6a0e1c77.js} +7 -7
  87. package/_internal/6a0e1c77.js.map +1 -0
  88. package/_internal/701c20b0.d.ts +24 -0
  89. package/{esm/_internal/Progress2.js → _internal/7391188a.js} +4 -4
  90. package/_internal/7391188a.js.map +1 -0
  91. package/{esm/_internal/ButtonRoot.js → _internal/74cb6c26.js} +6 -5
  92. package/_internal/74cb6c26.js.map +1 -0
  93. package/{esm/_internal/ProgressTrackerStepPanel.js → _internal/761031bf.js} +11 -9
  94. package/_internal/761031bf.js.map +1 -0
  95. package/{esm/_internal/DragHandle.js → _internal/76fed69d.js} +5 -5
  96. package/_internal/76fed69d.js.map +1 -0
  97. package/{esm/_internal/type.js → _internal/78ef8e34.js} +1 -1
  98. package/_internal/78ef8e34.js.map +1 -0
  99. package/_internal/7b906e16.d.ts +17 -0
  100. package/_internal/7be11ddc.d.ts +35 -0
  101. package/_internal/7d39705e.d.ts +20 -0
  102. package/{esm/_internal/useDelayedVisibility.js → _internal/7e03266f.js} +2 -2
  103. package/_internal/7e03266f.js.map +1 -0
  104. package/{esm/_internal/Button2.js → _internal/7e8d0ac5.js} +6 -6
  105. package/_internal/7e8d0ac5.js.map +1 -0
  106. package/{esm/_internal/Flag2.js → _internal/7ffa45f6.js} +5 -5
  107. package/_internal/7ffa45f6.js.map +1 -0
  108. package/{esm/_internal/AutocompleteMultiple.js → _internal/84c1ec44.js} +10 -10
  109. package/_internal/84c1ec44.js.map +1 -0
  110. package/{esm/_internal/PostBlock.js → _internal/8518279f.js} +6 -6
  111. package/_internal/8518279f.js.map +1 -0
  112. package/{esm/_internal/mergeRefs.js → _internal/853713cd.js} +1 -1
  113. package/_internal/853713cd.js.map +1 -0
  114. package/_internal/86566d75.d.ts +27 -0
  115. package/_internal/86d22dde.d.ts +57 -0
  116. package/_internal/8e755ded.d.ts +101 -0
  117. package/_internal/901471f5.d.ts +37 -0
  118. package/_internal/935ce959.d.ts +49 -0
  119. package/_internal/97089888.d.ts +16 -0
  120. package/_internal/97cc728c.d.ts +26 -0
  121. package/{esm/_internal/Popover2.js → _internal/9ab3c637.js} +7 -6
  122. package/_internal/9ab3c637.js.map +1 -0
  123. package/{esm/_internal/Toolbar2.js → _internal/9ca3f59c.js} +3 -3
  124. package/_internal/9ca3f59c.js.map +1 -0
  125. package/_internal/9e95ea38.d.ts +43 -0
  126. package/{esm/_internal/Uploader2.js → _internal/a0108f92.js} +5 -5
  127. package/_internal/a0108f92.js.map +1 -0
  128. package/_internal/a493a193.d.ts +65 -0
  129. package/{esm/_internal/Icon2.js → _internal/a521723d.js} +4 -4
  130. package/_internal/a521723d.js.map +1 -0
  131. package/_internal/a6fad025.d.ts +107 -0
  132. package/{esm/_internal/Lightbox2.js → _internal/a8fa525f.js} +13 -12
  133. package/_internal/a8fa525f.js.map +1 -0
  134. package/{esm/_internal/AlertDialog.js → _internal/aca2ecf5.js} +9 -9
  135. package/_internal/aca2ecf5.js.map +1 -0
  136. package/{esm/_internal/Divider2.js → _internal/aef2ef1c.js} +5 -5
  137. package/_internal/aef2ef1c.js.map +1 -0
  138. package/{esm/_internal/Mosaic2.js → _internal/af048b0c.js} +5 -5
  139. package/_internal/af048b0c.js.map +1 -0
  140. package/_internal/af2cd0cd.d.ts +17 -0
  141. package/{esm/_internal/Slides.js → _internal/afec6b62.js} +278 -87
  142. package/_internal/afec6b62.js.map +1 -0
  143. package/{esm/_internal/InputHelper.js → _internal/b0eb3a30.js} +4 -4
  144. package/_internal/b0eb3a30.js.map +1 -0
  145. package/{esm/_internal/Dialog2.js → _internal/b89517ea.js} +14 -13
  146. package/_internal/b89517ea.js.map +1 -0
  147. package/{esm/_internal/Checkbox2.js → _internal/bafa6fcc.js} +8 -8
  148. package/_internal/bafa6fcc.js.map +1 -0
  149. package/{esm/_internal/ButtonGroup.js → _internal/bbbeb49e.js} +3 -7
  150. package/_internal/bbbeb49e.js.map +1 -0
  151. package/_internal/c11f6162.d.ts +52 -0
  152. package/{esm/_internal/Notification2.js → _internal/c723dab4.js} +8 -8
  153. package/_internal/c723dab4.js.map +1 -0
  154. package/_internal/c87cc857.d.ts +42 -0
  155. package/{esm/_internal/SelectMultiple.js → _internal/c97f8d04.js} +13 -13
  156. package/_internal/c97f8d04.js.map +1 -0
  157. package/_internal/cbb373ea.d.ts +6 -0
  158. package/_internal/cbef23b6.d.ts +104 -0
  159. package/_internal/cdf77f06.d.ts +88 -0
  160. package/{esm/_internal/LinkPreview.js → _internal/d350f2ff.js} +6 -6
  161. package/_internal/d350f2ff.js.map +1 -0
  162. package/{esm/_internal/Badge2.js → _internal/d71a8cf7.js} +4 -4
  163. package/_internal/d71a8cf7.js.map +1 -0
  164. package/{esm/_internal/GridItem.js → _internal/d9337952.js} +4 -4
  165. package/_internal/d9337952.js.map +1 -0
  166. package/_internal/def14e1a.d.ts +24 -0
  167. package/_internal/e0cd29c7.d.ts +35 -0
  168. package/{esm/_internal/useRovingTabIndex.js → _internal/e354228f.js} +4 -81
  169. package/_internal/e354228f.js.map +1 -0
  170. package/_internal/e3922a05.d.ts +22 -0
  171. package/_internal/e3cb6177.d.ts +75 -0
  172. package/_internal/e810c841.d.ts +182 -0
  173. package/_internal/ea700b01.d.ts +43 -0
  174. package/_internal/eca6d4dc.d.ts +269 -0
  175. package/{esm/_internal/Link2.js → _internal/eed07003.js} +6 -6
  176. package/_internal/eed07003.js.map +1 -0
  177. package/_internal/f1c9b334.d.ts +22 -0
  178. package/{esm/_internal/TabPanel.js → _internal/f3c3a674.js} +9 -7
  179. package/_internal/f3c3a674.js.map +1 -0
  180. package/{esm/_internal/UserBlock.js → _internal/f571cdcd.js} +6 -6
  181. package/_internal/f571cdcd.js.map +1 -0
  182. package/{esm/_internal/Tooltip2.js → _internal/f5bdff7e.js} +8 -8
  183. package/_internal/f5bdff7e.js.map +1 -0
  184. package/_internal/f851fc00.d.ts +34 -0
  185. package/_internal/f859b007.d.ts +49 -0
  186. package/_internal/fb384b79.d.ts +38 -0
  187. package/_internal/fc4c034b.js +63 -0
  188. package/_internal/fc4c034b.js.map +1 -0
  189. package/{esm/index2.js → _internal/fc608bd9.js} +1 -1
  190. package/_internal/fc608bd9.js.map +1 -0
  191. package/_internal/fd1f4d68.d.ts +36 -0
  192. package/{esm/_internal/getRootClassName.js → _internal/fd867c9d.js} +33 -33
  193. package/_internal/fd867c9d.js.map +1 -0
  194. package/{esm/_internal/FlexBox.js → _internal/ff8081e5.js} +9 -7
  195. package/_internal/ff8081e5.js.map +1 -0
  196. package/{esm/_internal/GenericBlock.js → _internal/ffd1bfe3.js} +7 -9
  197. package/_internal/ffd1bfe3.js.map +1 -0
  198. package/components/alert-dialog.d.ts +6 -0
  199. package/components/alert-dialog.js +35 -0
  200. package/components/alert-dialog.js.map +1 -0
  201. package/components/autocomplete.d.ts +8 -0
  202. package/components/autocomplete.js +33 -0
  203. package/{esm/_internal → components}/autocomplete.js.map +1 -1
  204. package/components/avatar.d.ts +4 -0
  205. package/components/avatar.js +13 -0
  206. package/{esm/_internal → components}/avatar.js.map +0 -0
  207. package/components/badge.d.ts +3 -0
  208. package/components/badge.js +10 -0
  209. package/{esm/_internal → components}/badge.js.map +0 -0
  210. package/components/button.d.ts +8 -0
  211. package/components/button.js +26 -0
  212. package/{esm/_internal → components}/button.js.map +1 -1
  213. package/components/checkbox.d.ts +3 -0
  214. package/components/checkbox.js +14 -0
  215. package/{esm/_internal → components}/checkbox.js.map +0 -0
  216. package/components/chip.d.ts +3 -0
  217. package/components/chip.js +12 -0
  218. package/{esm/_internal → components}/chip.js.map +0 -0
  219. package/components/comment-block.d.ts +5 -0
  220. package/components/comment-block.js +25 -0
  221. package/{esm/_internal → components}/comment-block.js.map +1 -1
  222. package/components/date-picker.d.ts +7 -0
  223. package/components/date-picker.js +33 -0
  224. package/{esm/_internal → components}/date-picker.js.map +1 -1
  225. package/components/dialog.d.ts +3 -0
  226. package/components/dialog.js +28 -0
  227. package/{esm/_internal → components}/dialog.js.map +1 -1
  228. package/components/divider.d.ts +3 -0
  229. package/components/divider.js +10 -0
  230. package/{esm/_internal → components}/divider.js.map +0 -0
  231. package/components/drag-handle.d.ts +3 -0
  232. package/components/drag-handle.js +11 -0
  233. package/{esm/_internal → components}/drag-handle.js.map +0 -0
  234. package/components/dropdown.d.ts +4 -0
  235. package/components/dropdown.js +22 -0
  236. package/{esm/_internal → components}/dropdown.js.map +1 -1
  237. package/components/expansion-panel.d.ts +7 -0
  238. package/components/expansion-panel.js +33 -0
  239. package/components/expansion-panel.js.map +1 -0
  240. package/components/flag.d.ts +3 -0
  241. package/components/flag.js +11 -0
  242. package/{esm/_internal → components}/flag.js.map +0 -0
  243. package/components/flex-box.d.ts +3 -0
  244. package/{esm/_internal → components}/flex-box.js +5 -5
  245. package/{esm/_internal → components}/flex-box.js.map +0 -0
  246. package/components/generic-block.d.ts +4 -0
  247. package/{esm/_internal → components}/generic-block.js +10 -10
  248. package/{esm/_internal → components}/generic-block.js.map +0 -0
  249. package/components/grid.d.ts +3 -0
  250. package/components/grid.js +10 -0
  251. package/{esm/_internal → components}/grid.js.map +0 -0
  252. package/components/heading.d.ts +4 -0
  253. package/components/heading.js +11 -0
  254. package/components/heading.js.map +1 -0
  255. package/components/icon.d.ts +3 -0
  256. package/components/icon.js +10 -0
  257. package/{esm/_internal → components}/icon.js.map +0 -0
  258. package/components/image-block.d.ts +4 -0
  259. package/{esm/_internal → components}/image-block.js +8 -8
  260. package/{esm/_internal → components}/image-block.js.map +0 -0
  261. package/components/input-helper.d.ts +3 -0
  262. package/{esm/_internal → components}/input-helper.js +5 -5
  263. package/{esm/_internal → components}/input-helper.js.map +0 -0
  264. package/components/input-label.d.ts +3 -0
  265. package/{esm/_internal → components}/input-label.js +5 -5
  266. package/{esm/_internal → components}/input-label.js.map +0 -0
  267. package/components/lightbox.d.ts +7 -0
  268. package/components/lightbox.js +28 -0
  269. package/{esm/_internal → components}/lightbox.js.map +1 -1
  270. package/components/link-preview.d.ts +5 -0
  271. package/components/link-preview.js +15 -0
  272. package/{esm/_internal → components}/link-preview.js.map +0 -0
  273. package/components/link.d.ts +3 -0
  274. package/components/link.js +12 -0
  275. package/{esm/_internal → components}/link.js.map +0 -0
  276. package/components/list.d.ts +3 -0
  277. package/components/list.js +15 -0
  278. package/{esm/_internal → components}/list.js.map +0 -0
  279. package/components/message.d.ts +3 -0
  280. package/components/message.js +11 -0
  281. package/{esm/_internal → components}/message.js.map +0 -0
  282. package/components/mosaic.d.ts +4 -0
  283. package/components/mosaic.js +14 -0
  284. package/{esm/_internal → components}/mosaic.js.map +0 -0
  285. package/components/notification.d.ts +3 -0
  286. package/components/notification.js +18 -0
  287. package/{esm/_internal → components}/notification.js.map +0 -0
  288. package/components/popover.d.ts +3 -0
  289. package/components/popover.js +16 -0
  290. package/{esm/_internal → components}/popover.js.map +1 -1
  291. package/components/post-block.d.ts +4 -0
  292. package/components/post-block.js +15 -0
  293. package/{esm/_internal → components}/post-block.js.map +0 -0
  294. package/components/progress-tracker.d.ts +3 -0
  295. package/components/progress-tracker.js +17 -0
  296. package/{esm/_internal → components}/progress-tracker.js.map +1 -1
  297. package/components/progress.d.ts +3 -0
  298. package/components/progress.js +10 -0
  299. package/{esm/_internal → components}/progress.js.map +0 -0
  300. package/components/radio-button.d.ts +3 -0
  301. package/components/radio-button.js +13 -0
  302. package/{esm/_internal → components}/radio-button.js.map +0 -0
  303. package/components/select.d.ts +7 -0
  304. package/components/select.js +32 -0
  305. package/{esm/_internal → components}/select.js.map +1 -1
  306. package/components/side-navigation.d.ts +7 -0
  307. package/components/side-navigation.js +26 -0
  308. package/{esm/_internal → components}/side-navigation.js.map +1 -1
  309. package/components/skeleton.d.ts +3 -0
  310. package/{esm/_internal → components}/skeleton.js +5 -5
  311. package/{esm/_internal → components}/skeleton.js.map +0 -0
  312. package/components/slider.d.ts +3 -0
  313. package/components/slider.js +13 -0
  314. package/{esm/_internal → components}/slider.js.map +0 -0
  315. package/components/slideshow.d.ts +7 -0
  316. package/components/slideshow.js +30 -0
  317. package/{esm/_internal → components}/slideshow.js.map +1 -1
  318. package/components/switch.d.ts +3 -0
  319. package/components/switch.js +13 -0
  320. package/{esm/_internal → components}/switch.js.map +0 -0
  321. package/components/table.d.ts +3 -0
  322. package/{esm/_internal → components}/table.js +6 -6
  323. package/{esm/_internal → components}/table.js.map +0 -0
  324. package/components/tabs.d.ts +4 -0
  325. package/components/tabs.js +15 -0
  326. package/{esm/_internal → components}/tabs.js.map +1 -1
  327. package/components/text-field.d.ts +7 -0
  328. package/components/text-field.js +27 -0
  329. package/{esm/_internal → components}/text-field.js.map +1 -1
  330. package/components/text.d.ts +3 -0
  331. package/components/text.js +10 -0
  332. package/components/text.js.map +1 -0
  333. package/components/thumbnail.d.ts +4 -0
  334. package/components/thumbnail.js +13 -0
  335. package/{esm/_internal → components}/thumbnail.js.map +0 -0
  336. package/components/toolbar.d.ts +3 -0
  337. package/{esm/_internal → components}/toolbar.js +4 -4
  338. package/{esm/_internal → components}/toolbar.js.map +0 -0
  339. package/components/tooltip.d.ts +4 -0
  340. package/components/tooltip.js +19 -0
  341. package/{esm/_internal → components}/tooltip.js.map +1 -1
  342. package/components/uploader.d.ts +3 -0
  343. package/components/uploader.js +11 -0
  344. package/{esm/_internal → components}/uploader.js.map +0 -0
  345. package/components/user-block.d.ts +5 -0
  346. package/components/user-block.js +17 -0
  347. package/{esm/_internal → components}/user-block.js.map +0 -0
  348. package/components.d.ts +2 -0
  349. package/{esm/_internal/components.js → components.js} +2 -1
  350. package/components.js.map +1 -0
  351. package/index.d.ts +56 -0
  352. package/index.js +96 -0
  353. package/{esm/index.js.map → index.js.map} +1 -1
  354. package/package.json +7 -7
  355. package/src/components/alert-dialog/AlertDialog.tsx +2 -1
  356. package/src/components/autocomplete/Autocomplete.tsx +2 -2
  357. package/src/components/autocomplete/AutocompleteMultiple.tsx +2 -1
  358. package/src/components/avatar/Avatar.tsx +2 -1
  359. package/src/components/badge/Badge.test.tsx +1 -1
  360. package/src/components/badge/Badge.tsx +2 -1
  361. package/src/components/button/Button.test.tsx +1 -1
  362. package/src/components/button/Button.tsx +2 -1
  363. package/src/components/button/ButtonGroup.tsx +2 -1
  364. package/src/components/button/ButtonRoot.test.tsx +1 -1
  365. package/src/components/button/ButtonRoot.tsx +2 -1
  366. package/src/components/button/IconButton.tsx +2 -1
  367. package/src/components/checkbox/Checkbox.test.tsx +1 -1
  368. package/src/components/checkbox/Checkbox.tsx +2 -1
  369. package/src/components/chip/Chip.test.tsx +1 -1
  370. package/src/components/chip/Chip.tsx +3 -1
  371. package/src/components/chip/ChipGroup.tsx +2 -1
  372. package/src/components/comment-block/CommentBlock.tsx +2 -1
  373. package/src/components/date-picker/DatePicker.tsx +1 -1
  374. package/src/components/date-picker/DatePickerControlled.tsx +1 -1
  375. package/src/components/date-picker/DatePickerField.tsx +1 -1
  376. package/src/components/date-picker/constants.ts +1 -1
  377. package/src/components/date-picker/types.ts +1 -1
  378. package/src/components/dialog/Dialog.tsx +4 -8
  379. package/src/components/divider/Divider.test.tsx +1 -1
  380. package/src/components/divider/Divider.tsx +3 -2
  381. package/src/components/drag-handle/DragHandle.tsx +2 -1
  382. package/src/components/dropdown/Dropdown.tsx +2 -1
  383. package/src/components/expansion-panel/ExpansionPanel.test.tsx +1 -1
  384. package/src/components/expansion-panel/ExpansionPanel.tsx +3 -10
  385. package/src/components/flag/Flag.test.tsx +1 -1
  386. package/src/components/flag/Flag.tsx +2 -1
  387. package/src/components/flex-box/FlexBox.stories.tsx +68 -4
  388. package/src/components/flex-box/FlexBox.tsx +14 -7
  389. package/src/components/flex-box/__snapshots__/FlexBox.test.tsx.snap +51 -0
  390. package/src/components/generic-block/GenericBlock.stories.jsx +23 -1
  391. package/src/components/generic-block/GenericBlock.tsx +3 -1
  392. package/src/components/grid/Grid.tsx +2 -1
  393. package/src/components/grid/GridItem.tsx +2 -1
  394. package/src/components/heading/Heading.stories.tsx +108 -0
  395. package/src/components/heading/Heading.test.tsx +77 -0
  396. package/src/components/heading/Heading.tsx +63 -0
  397. package/src/components/heading/HeadingLevelProvider.tsx +30 -0
  398. package/src/components/heading/constants.ts +16 -0
  399. package/src/components/heading/context.tsx +13 -0
  400. package/src/components/heading/index.ts +3 -0
  401. package/src/components/heading/useHeadingLevel.tsx +8 -0
  402. package/src/components/icon/Icon.test.tsx +1 -1
  403. package/src/components/icon/Icon.tsx +2 -1
  404. package/src/components/image-block/ImageBlock.tsx +2 -1
  405. package/src/components/index.ts +2 -1
  406. package/src/components/input-helper/InputHelper.tsx +2 -1
  407. package/src/components/input-label/InputLabel.tsx +2 -1
  408. package/src/components/lightbox/Lightbox.tsx +2 -1
  409. package/src/components/link/Link.tsx +2 -1
  410. package/src/components/link-preview/LinkPreview.test.tsx +1 -1
  411. package/src/components/link-preview/LinkPreview.tsx +2 -1
  412. package/src/components/list/List.tsx +2 -1
  413. package/src/components/list/ListDivider.tsx +2 -1
  414. package/src/components/list/ListItem.tsx +3 -8
  415. package/src/components/list/ListSubheader.tsx +2 -1
  416. package/src/components/list/useInteractiveList.tsx +1 -1
  417. package/src/components/message/Message.test.tsx +1 -1
  418. package/src/components/message/Message.tsx +2 -1
  419. package/src/components/mosaic/Mosaic.tsx +2 -1
  420. package/src/components/notification/Notification.tsx +2 -1
  421. package/src/components/popover/Popover.tsx +2 -1
  422. package/src/components/post-block/PostBlock.tsx +2 -1
  423. package/src/components/progress/Progress.tsx +2 -1
  424. package/src/components/progress-tracker/ProgressTracker.tsx +2 -1
  425. package/src/components/progress-tracker/ProgressTrackerStep.test.tsx +1 -1
  426. package/src/components/progress-tracker/ProgressTrackerStep.tsx +2 -1
  427. package/src/components/progress-tracker/ProgressTrackerStepPanel.tsx +2 -1
  428. package/src/components/radio-button/RadioButton.test.tsx +1 -1
  429. package/src/components/radio-button/RadioButton.tsx +2 -1
  430. package/src/components/radio-button/RadioGroup.tsx +2 -1
  431. package/src/components/select/Select.test.tsx +1 -1
  432. package/src/components/select/Select.tsx +2 -1
  433. package/src/components/select/SelectMultiple.test.tsx +1 -1
  434. package/src/components/select/SelectMultiple.tsx +2 -1
  435. package/src/components/select/WithSelectContext.tsx +1 -1
  436. package/src/components/select/constants.ts +1 -1
  437. package/src/components/side-navigation/SideNavigation.tsx +2 -1
  438. package/src/components/side-navigation/SideNavigationItem.test.tsx +1 -1
  439. package/src/components/side-navigation/SideNavigationItem.tsx +3 -9
  440. package/src/components/skeleton/SkeletonCircle.tsx +2 -1
  441. package/src/components/skeleton/SkeletonRectangle.tsx +2 -1
  442. package/src/components/skeleton/SkeletonTypography.tsx +2 -1
  443. package/src/components/slider/Slider.tsx +2 -1
  444. package/src/components/slideshow/Slides.tsx +35 -4
  445. package/src/components/slideshow/Slideshow.stories.tsx +98 -2
  446. package/src/components/slideshow/Slideshow.tsx +16 -4
  447. package/src/components/slideshow/SlideshowControls.stories.tsx +1 -1
  448. package/src/components/slideshow/SlideshowControls.tsx +51 -12
  449. package/src/components/slideshow/SlideshowItem.tsx +2 -6
  450. package/src/components/slideshow/SlideshowItemGroup.tsx +64 -0
  451. package/src/components/slideshow/__snapshots__/Slideshow.test.tsx.snap +4 -1
  452. package/src/components/slideshow/useSlideFocusManagement.tsx +92 -0
  453. package/src/components/switch/Switch.test.tsx +1 -1
  454. package/src/components/switch/Switch.tsx +2 -1
  455. package/src/components/table/Table.tsx +2 -1
  456. package/src/components/table/TableBody.tsx +2 -1
  457. package/src/components/table/TableCell.tsx +3 -1
  458. package/src/components/table/TableHeader.tsx +2 -1
  459. package/src/components/table/TableRow.tsx +2 -1
  460. package/src/components/tabs/Tab.test.tsx +1 -1
  461. package/src/components/tabs/Tab.tsx +2 -1
  462. package/src/components/tabs/TabList.test.tsx +1 -1
  463. package/src/components/tabs/TabList.tsx +2 -1
  464. package/src/components/tabs/TabPanel.tsx +2 -1
  465. package/src/components/text/Text.stories.tsx +80 -0
  466. package/src/components/text/Text.test.tsx +62 -0
  467. package/src/components/text/Text.tsx +95 -0
  468. package/src/components/text/index.ts +1 -0
  469. package/src/components/text-field/TextField.test.tsx +1 -1
  470. package/src/components/text-field/TextField.tsx +2 -1
  471. package/src/components/thumbnail/Thumbnail.tsx +2 -1
  472. package/src/components/thumbnail/types.ts +1 -1
  473. package/src/components/toolbar/Toolbar.tsx +2 -1
  474. package/src/components/tooltip/Tooltip.tsx +2 -1
  475. package/src/components/tooltip/useTooltipOpen.tsx +1 -1
  476. package/src/components/uploader/Uploader.test.tsx +1 -1
  477. package/src/components/uploader/Uploader.tsx +2 -1
  478. package/src/components/user-block/UserBlock.tsx +2 -1
  479. package/src/hooks/useCallbackOnEscape.ts +2 -1
  480. package/src/hooks/useClickAway.tsx +1 -1
  481. package/src/hooks/useDisableBodyScroll.ts +1 -1
  482. package/src/hooks/useFocusTrap.ts +1 -1
  483. package/src/hooks/useInterval.tsx +1 -1
  484. package/src/hooks/useOnResize.ts +1 -1
  485. package/src/hooks/useRovingTabIndex.tsx +9 -0
  486. package/src/index.ts +6 -0
  487. package/src/testing/utils/commonTestsSuite.ts +1 -1
  488. package/src/utils/{getRootClassName.ts → className.ts} +2 -0
  489. package/src/utils/event.ts +1 -0
  490. package/src/utils/focus/constants.ts +5 -0
  491. package/src/utils/focus/getFirstAndLastFocusable.ts +4 -10
  492. package/src/utils/focus/getFocusableElements.test.ts +151 -0
  493. package/src/utils/focus/getFocusableElements.ts +7 -0
  494. package/src/utils/index.ts +5 -0
  495. package/src/utils/utils.test.ts +1 -1
  496. package/types.d.ts +96 -11
  497. package/utils/index.d.ts +29 -0
  498. package/utils/index.js +5 -0
  499. package/utils/index.js.map +1 -0
  500. package/esm/_internal/AlertDialog.js.map +0 -1
  501. package/esm/_internal/AutocompleteMultiple.js.map +0 -1
  502. package/esm/_internal/Avatar2.js.map +0 -1
  503. package/esm/_internal/Badge2.js.map +0 -1
  504. package/esm/_internal/Button2.js.map +0 -1
  505. package/esm/_internal/ButtonGroup.js.map +0 -1
  506. package/esm/_internal/ButtonRoot.js.map +0 -1
  507. package/esm/_internal/Checkbox2.js.map +0 -1
  508. package/esm/_internal/Chip2.js.map +0 -1
  509. package/esm/_internal/ChipGroup.js.map +0 -1
  510. package/esm/_internal/ClickAwayProvider.js +0 -213
  511. package/esm/_internal/ClickAwayProvider.js.map +0 -1
  512. package/esm/_internal/CommentBlock.js.map +0 -1
  513. package/esm/_internal/DatePickerField.js.map +0 -1
  514. package/esm/_internal/Dialog2.js.map +0 -1
  515. package/esm/_internal/Divider2.js.map +0 -1
  516. package/esm/_internal/DragHandle.js.map +0 -1
  517. package/esm/_internal/Dropdown2.js.map +0 -1
  518. package/esm/_internal/ExpansionPanel.js.map +0 -1
  519. package/esm/_internal/Flag2.js.map +0 -1
  520. package/esm/_internal/FlexBox.js.map +0 -1
  521. package/esm/_internal/GenericBlock.js.map +0 -1
  522. package/esm/_internal/GridItem.js.map +0 -1
  523. package/esm/_internal/Icon2.js.map +0 -1
  524. package/esm/_internal/IconButton.js.map +0 -1
  525. package/esm/_internal/ImageBlock.js.map +0 -1
  526. package/esm/_internal/InputHelper.js.map +0 -1
  527. package/esm/_internal/InputLabel.js.map +0 -1
  528. package/esm/_internal/Lightbox2.js.map +0 -1
  529. package/esm/_internal/Link2.js.map +0 -1
  530. package/esm/_internal/LinkPreview.js.map +0 -1
  531. package/esm/_internal/List2.js.map +0 -1
  532. package/esm/_internal/ListSubheader.js.map +0 -1
  533. package/esm/_internal/Message2.js.map +0 -1
  534. package/esm/_internal/Mosaic2.js.map +0 -1
  535. package/esm/_internal/Notification2.js.map +0 -1
  536. package/esm/_internal/Popover2.js.map +0 -1
  537. package/esm/_internal/PostBlock.js.map +0 -1
  538. package/esm/_internal/Progress2.js.map +0 -1
  539. package/esm/_internal/ProgressTrackerStepPanel.js.map +0 -1
  540. package/esm/_internal/RadioGroup.js.map +0 -1
  541. package/esm/_internal/SelectMultiple.js.map +0 -1
  542. package/esm/_internal/SideNavigationItem.js.map +0 -1
  543. package/esm/_internal/SkeletonTypography.js.map +0 -1
  544. package/esm/_internal/Slider2.js.map +0 -1
  545. package/esm/_internal/Slides.js.map +0 -1
  546. package/esm/_internal/Switch2.js.map +0 -1
  547. package/esm/_internal/TabPanel.js.map +0 -1
  548. package/esm/_internal/TableRow.js.map +0 -1
  549. package/esm/_internal/TextField.js.map +0 -1
  550. package/esm/_internal/Thumbnail2.js.map +0 -1
  551. package/esm/_internal/Toolbar2.js.map +0 -1
  552. package/esm/_internal/Tooltip2.js.map +0 -1
  553. package/esm/_internal/Uploader2.js.map +0 -1
  554. package/esm/_internal/UserBlock.js.map +0 -1
  555. package/esm/_internal/_rollupPluginBabelHelpers.js.map +0 -1
  556. package/esm/_internal/alert-dialog.js +0 -34
  557. package/esm/_internal/alert-dialog.js.map +0 -1
  558. package/esm/_internal/autocomplete.js +0 -32
  559. package/esm/_internal/avatar.js +0 -13
  560. package/esm/_internal/badge.js +0 -10
  561. package/esm/_internal/button.js +0 -25
  562. package/esm/_internal/checkbox.js +0 -14
  563. package/esm/_internal/chip.js +0 -12
  564. package/esm/_internal/comment-block.js +0 -24
  565. package/esm/_internal/components.js.map +0 -1
  566. package/esm/_internal/constants.js.map +0 -1
  567. package/esm/_internal/date-picker.js +0 -32
  568. package/esm/_internal/dialog.js +0 -27
  569. package/esm/_internal/divider.js +0 -10
  570. package/esm/_internal/drag-handle.js +0 -11
  571. package/esm/_internal/dropdown.js +0 -21
  572. package/esm/_internal/expansion-panel.js +0 -32
  573. package/esm/_internal/expansion-panel.js.map +0 -1
  574. package/esm/_internal/flag.js +0 -11
  575. package/esm/_internal/getRootClassName.js.map +0 -1
  576. package/esm/_internal/grid.js +0 -10
  577. package/esm/_internal/icon.js +0 -10
  578. package/esm/_internal/lightbox.js +0 -27
  579. package/esm/_internal/link-preview.js +0 -15
  580. package/esm/_internal/link.js +0 -12
  581. package/esm/_internal/list.js +0 -15
  582. package/esm/_internal/mergeRefs.js.map +0 -1
  583. package/esm/_internal/message.js +0 -11
  584. package/esm/_internal/mosaic.js +0 -14
  585. package/esm/_internal/notification.js +0 -18
  586. package/esm/_internal/partitionMulti.js.map +0 -1
  587. package/esm/_internal/popover.js +0 -15
  588. package/esm/_internal/post-block.js +0 -15
  589. package/esm/_internal/progress-tracker.js +0 -16
  590. package/esm/_internal/progress.js +0 -10
  591. package/esm/_internal/radio-button.js +0 -13
  592. package/esm/_internal/renderLink.js.map +0 -1
  593. package/esm/_internal/select.js +0 -31
  594. package/esm/_internal/side-navigation.js +0 -25
  595. package/esm/_internal/slider.js +0 -13
  596. package/esm/_internal/slideshow.js +0 -27
  597. package/esm/_internal/switch.js +0 -13
  598. package/esm/_internal/tabs.js +0 -14
  599. package/esm/_internal/text-field.js +0 -26
  600. package/esm/_internal/thumbnail.js +0 -13
  601. package/esm/_internal/tooltip.js +0 -18
  602. package/esm/_internal/type.js.map +0 -1
  603. package/esm/_internal/types.js.map +0 -1
  604. package/esm/_internal/uploader.js +0 -11
  605. package/esm/_internal/useDelayedVisibility.js.map +0 -1
  606. package/esm/_internal/useDisableBodyScroll.js.map +0 -1
  607. package/esm/_internal/useFocusTrap.js.map +0 -1
  608. package/esm/_internal/useRovingTabIndex.js.map +0 -1
  609. package/esm/_internal/user-block.js +0 -17
  610. package/esm/index.js +0 -91
  611. package/esm/index2.js.map +0 -1
  612. package/src/utils/index.tsx +0 -7
@@ -0,0 +1 @@
1
+ {"version":3,"file":"c97f8d04.js","sources":["../../src/hooks/useListenFocus.tsx","../../src/components/select/constants.ts","../../src/components/select/WithSelectContext.tsx","../../src/components/select/Select.tsx","../../src/components/select/SelectMultiple.tsx"],"sourcesContent":["import { RefObject, useEffect, useState } from 'react';\n\n/**\n * Listen on element focus to store the focus status.\n */\nexport function useListenFocus(ref: RefObject<HTMLElement>) {\n const [isFocus, setFocus] = useState(false);\n\n useEffect(() => {\n const { current: element } = ref;\n if (!element) {\n return undefined;\n }\n\n const onFocus = () => setFocus(true);\n const onBlur = () => setFocus(false);\n element.addEventListener('focus', onFocus);\n element.addEventListener('blur', onBlur);\n return () => {\n element.removeEventListener('focus', onFocus);\n element.removeEventListener('blur', onBlur);\n };\n }, [ref, setFocus]);\n\n return isFocus;\n}\n","import { IconButtonProps } from '@lumx/react';\nimport { GenericProps, HasTheme, ValueOf } from '@lumx/react/utils/type';\nimport { ReactNode, SyntheticEvent } from 'react';\n\n/**\n * Select variants.\n */\nexport const SelectVariant = { input: 'input', chip: 'chip' } as const;\nexport type SelectVariant = ValueOf<typeof SelectVariant>;\n\nexport interface CoreSelectProps extends GenericProps, HasTheme {\n /** Props to pass to the clear button (minus those already set by the Select props). If not specified, the button won't be displayed. */\n clearButtonProps?: Pick<IconButtonProps, 'label'> &\n Omit<IconButtonProps, 'label' | 'onClick' | 'icon' | 'emphasis'>;\n /** Whether the select (input variant) is displayed with error style or not. */\n hasError?: boolean;\n /** Error message. */\n error?: string | ReactNode;\n /** Helper text. */\n helper?: string;\n /** Whether the select should close on click. */\n closeOnClick?: boolean;\n /** Icon (SVG path). */\n icon?: string;\n /** Whether the component is disabled or not. */\n isDisabled?: boolean;\n /** Whether the component is required or not. */\n isRequired?: boolean;\n /** Whether the component is open or not. */\n isOpen?: boolean;\n /** Whether the select (input variant) is displayed with valid style or not. */\n isValid?: boolean;\n /** Label text. */\n label?: string;\n /** Placeholder input text. */\n placeholder?: string;\n /** Select variant. */\n variant?: SelectVariant;\n /** On clear callback. */\n onClear?(event: SyntheticEvent, value?: string): void;\n /** On blur callback. */\n onBlur?(): void;\n /** On filter text change callback (with 500ms debounce). */\n onFilter?(): void;\n /** On input click callback (can be used for dropdown toggle). */\n onInputClick?(): void;\n /** On dropdown close callback. */\n onDropdownClose?(): void;\n /** On scroll end callback. */\n onInfiniteScroll?(): void;\n /** Render value function. Default: Renders the value as a string. */\n selectedValueRender?(choice: string): ReactNode | string;\n}\n","import React, { Ref, useCallback, useMemo, useRef } from 'react';\n\nimport classNames from 'classnames';\nimport { uid } from 'uid';\n\nimport { Kind, Theme } from '@lumx/react/components';\nimport { Dropdown } from '@lumx/react/components/dropdown/Dropdown';\nimport { InputHelper } from '@lumx/react/components/input-helper/InputHelper';\nimport { Placement } from '@lumx/react/components/popover/Popover';\n\nimport { getRootClassName, handleBasicClasses } from '@lumx/react/utils/className';\nimport { mergeRefs } from '@lumx/react/utils/mergeRefs';\nimport { useListenFocus } from '@lumx/react/hooks/useListenFocus';\nimport { CoreSelectProps, SelectVariant } from './constants';\n\n/** The display name of the component. */\nconst COMPONENT_NAME = 'Select';\n\n/** The default class name and classes prefix for this component. */\nconst CLASSNAME = getRootClassName(COMPONENT_NAME);\n\n/** The default value of props. */\nexport const DEFAULT_PROPS: Partial<CoreSelectProps> = {\n theme: Theme.light,\n variant: SelectVariant.input,\n};\n\nexport const WithSelectContext = (\n SelectElement: React.FC<any>,\n {\n children,\n className,\n isMultiple,\n closeOnClick = !isMultiple,\n disabled,\n error,\n hasError,\n helper,\n id,\n isDisabled = disabled,\n isEmpty,\n isOpen,\n isRequired,\n isValid,\n label,\n onClear,\n onDropdownClose,\n onInfiniteScroll,\n onInputClick,\n placeholder,\n theme = DEFAULT_PROPS.theme,\n value,\n variant = DEFAULT_PROPS.variant,\n ...forwardedProps\n }: CoreSelectProps,\n ref: Ref<HTMLDivElement>,\n): React.ReactElement => {\n const selectId = useMemo(() => id || `select-${uid()}`, [id]);\n const anchorRef = useRef<HTMLElement>(null);\n const selectRef = useRef<HTMLDivElement>(null);\n const isFocus = useListenFocus(anchorRef);\n\n const handleKeyboardNav = useCallback(\n (evt: React.KeyboardEvent<HTMLElement>) => {\n if ((evt.key === 'Enter' || evt.key === ' ' || evt.key === 'ArrowDown') && onInputClick) {\n evt.preventDefault();\n onInputClick();\n }\n },\n [onInputClick],\n );\n\n const onClose = () => {\n if (onDropdownClose) {\n onDropdownClose();\n }\n anchorRef?.current?.blur();\n };\n\n return (\n <div\n ref={mergeRefs(ref, selectRef)}\n className={classNames(\n className,\n handleBasicClasses({\n hasError,\n hasLabel: Boolean(label),\n hasPlaceholder: Boolean(placeholder),\n hasValue: !isEmpty,\n isDisabled,\n isEmpty,\n isFocus,\n isOpen,\n isValid,\n prefix: CLASSNAME,\n theme: theme === Theme.light ? Theme.light : Theme.dark,\n }),\n )}\n >\n <SelectElement\n {...forwardedProps}\n anchorRef={anchorRef}\n aria-disabled={isDisabled}\n handleKeyboardNav={handleKeyboardNav}\n hasError={hasError}\n isDisabled={isDisabled}\n isEmpty={isEmpty}\n isRequired={isRequired}\n isValid={isValid}\n label={label}\n placeholder={placeholder}\n id={selectId}\n theme={theme}\n value={value}\n variant={variant}\n onClear={onClear}\n onInputClick={onInputClick}\n />\n <Dropdown\n anchorRef={anchorRef}\n closeOnClick={closeOnClick}\n closeOnClickAway\n closeOnEscape\n isOpen={!!isOpen}\n placement={Placement.BOTTOM_START}\n onClose={onClose}\n onInfiniteScroll={onInfiniteScroll}\n >\n {children}\n </Dropdown>\n {hasError && error && (\n <InputHelper className={`${CLASSNAME}__helper`} kind={Kind.error} theme={theme}>\n {error}\n </InputHelper>\n )}\n {helper && (\n <InputHelper className={`${CLASSNAME}__helper`} theme={theme}>\n {helper}\n </InputHelper>\n )}\n </div>\n );\n};\n","import React, { forwardRef, RefObject } from 'react';\n\nimport classNames from 'classnames';\nimport lodashIsEmpty from 'lodash/isEmpty';\n\nimport { mdiAlertCircle, mdiCheckCircle, mdiCloseCircle, mdiMenuDown } from '@lumx/icons';\n\nimport { Emphasis, Size, Theme } from '@lumx/react/components';\nimport { IconButton } from '@lumx/react/components/button/IconButton';\nimport { Chip } from '@lumx/react/components/chip/Chip';\nimport { Icon } from '@lumx/react/components/icon/Icon';\nimport { InputLabel } from '@lumx/react/components/input-label/InputLabel';\n\nimport { Comp } from '@lumx/react/utils/type';\nimport { getRootClassName, handleBasicClasses } from '@lumx/react/utils/className';\n\nimport { WithSelectContext } from './WithSelectContext';\nimport { CoreSelectProps, SelectVariant } from './constants';\n\n/** Defines the props of the component. */\nexport interface SelectProps extends CoreSelectProps {\n /** Selected value. */\n value: string;\n}\n\nexport { SelectVariant };\n\n/** The display name of the component. */\nconst COMPONENT_NAME = 'Select';\n\n/** The default class name and classes prefix for this component. */\nconst CLASSNAME = getRootClassName(COMPONENT_NAME);\n\n/** The default value of props. */\nconst DEFAULT_PROPS: Partial<SelectProps> = {\n selectedValueRender: (choice) => choice,\n};\n\nconst stopPropagation = (evt: Event) => evt.stopPropagation();\n\n/**\n * Select component.\n */\nconst SelectField: React.FC<SelectProps> = ({\n anchorRef,\n clearButtonProps,\n handleKeyboardNav,\n hasError,\n hasInputClear,\n icon,\n id,\n isDisabled,\n isEmpty,\n isRequired,\n isValid,\n label,\n onClear,\n onInputClick,\n placeholder,\n selectedValueRender,\n theme,\n value,\n variant,\n ...forwardedProps\n}) => {\n return (\n <>\n {variant === SelectVariant.input && (\n <>\n {label && (\n <div className={`${CLASSNAME}__header`}>\n <InputLabel\n htmlFor={id}\n className={`${CLASSNAME}__label`}\n isRequired={isRequired}\n theme={theme}\n >\n {label}\n </InputLabel>\n </div>\n )}\n\n {/* eslint-disable-next-line jsx-a11y/no-static-element-interactions */}\n <div\n ref={anchorRef as RefObject<HTMLDivElement>}\n id={id}\n className={`${CLASSNAME}__wrapper`}\n onClick={onInputClick}\n onKeyDown={handleKeyboardNav}\n tabIndex={isDisabled ? undefined : 0}\n aria-disabled={isDisabled || undefined}\n {...forwardedProps}\n >\n {icon && (\n <Icon\n className={`${CLASSNAME}__input-icon`}\n color={theme === Theme.dark ? 'light' : undefined}\n icon={icon}\n size={Size.xs}\n />\n )}\n\n <div\n className={classNames([\n `${CLASSNAME}__input-native`,\n isEmpty && placeholder && `${CLASSNAME}__input-native--placeholder`,\n ])}\n >\n {!isEmpty && <span>{selectedValueRender?.(value)}</span>}\n\n {isEmpty && placeholder && <span>{placeholder}</span>}\n </div>\n\n {(isValid || hasError) && (\n <div className={`${CLASSNAME}__input-validity`}>\n <Icon icon={isValid ? mdiCheckCircle : mdiAlertCircle} size={Size.xxs} />\n </div>\n )}\n\n {hasInputClear && clearButtonProps && (\n <IconButton\n {...clearButtonProps}\n className={`${CLASSNAME}__input-clear`}\n icon={mdiCloseCircle}\n emphasis={Emphasis.low}\n size={Size.s}\n theme={theme}\n onClick={onClear}\n onKeyDown={stopPropagation}\n />\n )}\n\n <div className={`${CLASSNAME}__input-indicator`}>\n <Icon icon={mdiMenuDown} size={Size.s} />\n </div>\n </div>\n </>\n )}\n\n {variant === SelectVariant.chip && (\n <Chip\n id={id}\n isSelected={!isEmpty}\n isDisabled={isDisabled}\n after={<Icon icon={isEmpty ? mdiMenuDown : mdiCloseCircle} />}\n onAfterClick={isEmpty ? onInputClick : onClear}\n onClick={onInputClick}\n ref={anchorRef as RefObject<HTMLAnchorElement>}\n theme={theme}\n {...forwardedProps}\n >\n {isEmpty && <span>{label}</span>}\n\n {!isEmpty && <span>{selectedValueRender?.(value)}</span>}\n </Chip>\n )}\n </>\n );\n};\n\n/**\n * Select component.\n *\n * @param props Component props.\n * @param ref Component ref.\n * @return React element.\n */\nexport const Select: Comp<SelectProps, HTMLDivElement> = forwardRef((props, ref) => {\n const isEmpty = lodashIsEmpty(props.value);\n const hasInputClear = props.onClear && props.clearButtonProps && !isEmpty;\n\n return WithSelectContext(\n SelectField,\n {\n ...props,\n className: classNames(\n props.className,\n handleBasicClasses({\n hasInputClear,\n hasUnique: !props.isEmpty,\n prefix: CLASSNAME,\n }),\n ),\n hasInputClear,\n isEmpty,\n },\n ref,\n );\n});\nSelect.displayName = COMPONENT_NAME;\nSelect.className = CLASSNAME;\nSelect.defaultProps = DEFAULT_PROPS;\nSelect.className = CLASSNAME;\n","import React, { forwardRef, ReactNode, RefObject, SyntheticEvent } from 'react';\n\nimport classNames from 'classnames';\n\nimport { mdiAlertCircle, mdiCheckCircle, mdiClose, mdiCloseCircle, mdiMenuDown } from '@lumx/icons';\n\nimport { Size, Theme } from '@lumx/react/components';\nimport { Chip } from '@lumx/react/components/chip/Chip';\nimport { Icon } from '@lumx/react/components/icon/Icon';\nimport { InputLabel } from '@lumx/react/components/input-label/InputLabel';\n\nimport { Comp } from '@lumx/react/utils/type';\nimport { getRootClassName, handleBasicClasses } from '@lumx/react/utils/className';\n\nimport { WithSelectContext } from './WithSelectContext';\nimport { CoreSelectProps, SelectVariant } from './constants';\n\n/** Defines the props of the component. */\nexport interface SelectMultipleProps extends CoreSelectProps {\n /** Selected values. */\n value: string[];\n /** Selected value render function. Default: Renders the value inside of a Chip. */\n selectedChipRender?(\n choice: string,\n index: number,\n onClear?: (event: SyntheticEvent, choice: string) => void,\n isDisabled?: boolean,\n theme?: any,\n ): ReactNode | string;\n}\n\n/** The display name of the component. */\nconst COMPONENT_NAME = 'Select';\n\n/** The default class name and classes prefix for this component. */\nconst CLASSNAME = getRootClassName(COMPONENT_NAME);\n\n/** The default value of props. */\nconst DEFAULT_PROPS: Partial<SelectMultipleProps> = {\n selectedChipRender(choice, index, onClear, isDisabled?, theme?) {\n const onClick = (event: React.MouseEvent) => onClear && onClear(event, choice);\n return (\n <Chip\n key={index}\n after={onClear && <Icon icon={mdiClose} size={Size.xxs} />}\n isDisabled={isDisabled}\n size={Size.s}\n onAfterClick={onClick}\n onClick={onClick}\n theme={theme}\n >\n {choice}\n </Chip>\n );\n },\n selectedValueRender: (choice) => choice,\n};\n\nexport const SelectMultipleField: React.FC<SelectMultipleProps> = ({\n anchorRef,\n handleKeyboardNav,\n hasError,\n icon,\n id,\n isDisabled,\n isEmpty,\n isRequired,\n isValid,\n label,\n onClear,\n onInputClick,\n placeholder,\n selectedChipRender,\n selectedValueRender,\n theme,\n value,\n variant,\n ...forwardedProps\n}) => (\n <>\n {variant === SelectVariant.input && (\n <>\n {label && (\n <div className={`${CLASSNAME}__header`}>\n <InputLabel\n htmlFor={id}\n className={`${CLASSNAME}__label`}\n isRequired={isRequired}\n theme={theme}\n >\n {label}\n </InputLabel>\n </div>\n )}\n\n {/* eslint-disable-next-line jsx-a11y/no-static-element-interactions */}\n <div\n ref={anchorRef as RefObject<HTMLDivElement>}\n id={id}\n className={`${CLASSNAME}__wrapper`}\n onClick={onInputClick}\n onKeyDown={handleKeyboardNav}\n tabIndex={isDisabled ? undefined : 0}\n aria-disabled={isDisabled || undefined}\n {...forwardedProps}\n >\n {icon && (\n <Icon\n className={`${CLASSNAME}__input-icon`}\n color={theme === Theme.dark ? 'light' : undefined}\n icon={icon}\n size={Size.xs}\n />\n )}\n\n <div className={`${CLASSNAME}__chips`}>\n {!isEmpty &&\n value.map((val, index) => selectedChipRender?.(val, index, onClear, isDisabled, theme))}\n </div>\n\n {isEmpty && placeholder && (\n <div\n className={classNames([\n `${CLASSNAME}__input-native`,\n `${CLASSNAME}__input-native--placeholder`,\n ])}\n >\n <span>{placeholder}</span>\n </div>\n )}\n\n {(isValid || hasError) && (\n <div className={`${CLASSNAME}__input-validity`}>\n <Icon icon={isValid ? mdiCheckCircle : mdiAlertCircle} size={Size.xxs} />\n </div>\n )}\n\n <div className={`${CLASSNAME}__input-indicator`}>\n <Icon icon={mdiMenuDown} size={Size.s} />\n </div>\n </div>\n </>\n )}\n\n {variant === SelectVariant.chip && (\n <Chip\n id={id}\n isSelected={!isEmpty}\n isDisabled={isDisabled}\n after={<Icon icon={isEmpty ? mdiMenuDown : mdiCloseCircle} />}\n onAfterClick={isEmpty ? onInputClick : onClear}\n onClick={onInputClick}\n ref={anchorRef as RefObject<HTMLAnchorElement>}\n theme={theme}\n {...forwardedProps}\n >\n {isEmpty && <span>{label}</span>}\n\n {!isEmpty && (\n <span>\n <span>{selectedValueRender?.(value[0])}</span>\n\n {value.length > 1 && <span>&nbsp;+{value.length - 1}</span>}\n </span>\n )}\n </Chip>\n )}\n </>\n);\n\n/**\n * SelectMultiple component.\n *\n * @param props Component props.\n * @param ref Component ref.\n * @return React element.\n */\nexport const SelectMultiple: Comp<SelectMultipleProps, HTMLDivElement> = forwardRef((props, ref) => {\n return WithSelectContext(\n SelectMultipleField,\n {\n ...props,\n className: classNames(\n props.className,\n handleBasicClasses({\n hasMultiple: !props.isEmpty,\n prefix: CLASSNAME,\n }),\n ),\n isEmpty: props.value.length === 0,\n isMultiple: true,\n },\n ref,\n );\n});\nSelectMultiple.displayName = COMPONENT_NAME;\nSelectMultiple.className = CLASSNAME;\nSelectMultiple.defaultProps = DEFAULT_PROPS;\n"],"names":["useListenFocus","ref","useState","isFocus","setFocus","useEffect","element","current","undefined","onFocus","onBlur","addEventListener","removeEventListener","SelectVariant","input","chip","COMPONENT_NAME","CLASSNAME","getRootClassName","DEFAULT_PROPS","theme","Theme","light","variant","WithSelectContext","SelectElement","children","className","isMultiple","closeOnClick","disabled","error","hasError","helper","id","isDisabled","isEmpty","isOpen","isRequired","isValid","label","onClear","onDropdownClose","onInfiniteScroll","onInputClick","placeholder","value","forwardedProps","selectId","useMemo","uid","anchorRef","useRef","selectRef","handleKeyboardNav","useCallback","evt","key","preventDefault","onClose","blur","mergeRefs","classNames","handleBasicClasses","hasLabel","Boolean","hasPlaceholder","hasValue","prefix","dark","Placement","BOTTOM_START","Kind","selectedValueRender","choice","stopPropagation","SelectField","clearButtonProps","hasInputClear","icon","Size","xs","mdiCheckCircle","mdiAlertCircle","xxs","mdiCloseCircle","Emphasis","low","s","mdiMenuDown","Select","forwardRef","props","lodashIsEmpty","hasUnique","displayName","defaultProps","selectedChipRender","index","onClick","event","mdiClose","SelectMultipleField","map","val","length","SelectMultiple","hasMultiple"],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import { CSSProperties } from 'react';
2
+ import { T as ThumbnailProps } from './3bd3186e.js';
3
+
4
+ declare const useFocusPointStyle: ({ image, aspectRatio, focusPoint, imgProps: { width, height } }: ThumbnailProps, element: HTMLImageElement | undefined, isLoaded: boolean) => CSSProperties;
5
+
6
+ export { useFocusPointStyle as u };
@@ -0,0 +1,104 @@
1
+ import React, { ReactNode } from 'react';
2
+ import { l as GenericProps, m as HasTheme, A as Alignment, k as Comp } from './eca6d4dc.js';
3
+ import { a as IconProps } from './5a054691.js';
4
+
5
+ interface TabProviderProps {
6
+ /** Active tab index. */
7
+ activeTabIndex?: number;
8
+ /** Tab provider children. */
9
+ children: ReactNode;
10
+ /** Tab panel children should not render if the tab panel is hidden. */
11
+ isLazy?: boolean;
12
+ /** Activate tabs on focus. */
13
+ shouldActivateOnFocus?: boolean;
14
+ /** Tab change callback. */
15
+ onChange?(index: number): void;
16
+ }
17
+ /**
18
+ * This component provides a context in which tabs can be defined and linked to their tab panel.
19
+ *
20
+ * It does not produce any markup so you can wrap it around any React elements and then split the TabList and TabPanel
21
+ * components in the react tree.
22
+ *
23
+ * @param props React component props.
24
+ * @return React element.
25
+ */
26
+ declare const TabProvider: React.FC<TabProviderProps>;
27
+
28
+ declare enum TabListLayout {
29
+ clustered = "clustered",
30
+ fixed = "fixed"
31
+ }
32
+ /**
33
+ * Defines the props of the component.
34
+ */
35
+ interface TabListProps extends GenericProps, HasTheme {
36
+ /** ARIA label (purpose of the set of tabs). */
37
+ ['aria-label']: string;
38
+ /** Tab list. */
39
+ children: ReactNode;
40
+ /** Layout of the tabs in the list. */
41
+ layout?: TabListLayout;
42
+ /** Position of the tabs in the list (requires 'clustered' layout). */
43
+ position?: Alignment;
44
+ }
45
+ /**
46
+ * TabList component.
47
+ *
48
+ * Implements WAI-ARIA `tablist` role {@see https://www.w3.org/TR/wai-aria-practices-1.1/examples/tabs/tabs-1/tabs.html#rps_label}
49
+ *
50
+ * @param props Component props.
51
+ * @param ref Component ref.
52
+ * @return React element.
53
+ */
54
+ declare const TabList: Comp<TabListProps, HTMLDivElement>;
55
+
56
+ /**
57
+ * Defines the props of the component.
58
+ */
59
+ interface TabProps extends GenericProps {
60
+ /** Children are not supported. */
61
+ children?: never;
62
+ /** Icon (SVG path). */
63
+ icon?: IconProps['icon'];
64
+ /** Native id property. */
65
+ id?: string;
66
+ /** Whether the tab is active or not. */
67
+ isActive?: boolean;
68
+ /** Whether the component is disabled or not. */
69
+ isDisabled?: boolean;
70
+ /** Label content. */
71
+ label: string | ReactNode;
72
+ }
73
+ /**
74
+ * Tab component.
75
+ *
76
+ * Implements WAI-ARIA `tab` role {@see https://www.w3.org/TR/wai-aria-practices-1.1/examples/tabs/tabs-1/tabs.html#rps_label}
77
+ *
78
+ * @param props Component props.
79
+ * @param ref Component ref.
80
+ * @return React element.
81
+ */
82
+ declare const Tab: Comp<TabProps, HTMLButtonElement>;
83
+
84
+ /**
85
+ * Defines the props of the component.
86
+ */
87
+ interface TabPanelProps extends GenericProps {
88
+ /** Native id property */
89
+ id?: string;
90
+ /** Whether the tab is active or not. */
91
+ isActive?: boolean;
92
+ }
93
+ /**
94
+ * TabPanel component.
95
+ *
96
+ * Implements WAI-ARIA `tabpanel` role {@see https://www.w3.org/TR/wai-aria-practices-1.1/examples/tabs/tabs-1/tabs.html#rps_label}
97
+ *
98
+ * @param props Component props.
99
+ * @param ref Component ref.
100
+ * @return React element.
101
+ */
102
+ declare const TabPanel: Comp<TabPanelProps, HTMLDivElement>;
103
+
104
+ export { TabProviderProps as T, TabProvider as a, TabListLayout as b, TabListProps as c, TabList as d, TabProps as e, Tab as f, TabPanelProps as g, TabPanel as h };
@@ -0,0 +1,88 @@
1
+ import React, { ReactNode, SyntheticEvent } from 'react';
2
+ import { n as ValueOf, l as GenericProps, m as HasTheme, k as Comp } from './eca6d4dc.js';
3
+ import { I as IconButtonProps } from './2d770113.js';
4
+
5
+ /**
6
+ * Select variants.
7
+ */
8
+ declare const SelectVariant: {
9
+ readonly input: "input";
10
+ readonly chip: "chip";
11
+ };
12
+ declare type SelectVariant = ValueOf<typeof SelectVariant>;
13
+ interface CoreSelectProps extends GenericProps, HasTheme {
14
+ /** Props to pass to the clear button (minus those already set by the Select props). If not specified, the button won't be displayed. */
15
+ clearButtonProps?: Pick<IconButtonProps, 'label'> & Omit<IconButtonProps, 'label' | 'onClick' | 'icon' | 'emphasis'>;
16
+ /** Whether the select (input variant) is displayed with error style or not. */
17
+ hasError?: boolean;
18
+ /** Error message. */
19
+ error?: string | ReactNode;
20
+ /** Helper text. */
21
+ helper?: string;
22
+ /** Whether the select should close on click. */
23
+ closeOnClick?: boolean;
24
+ /** Icon (SVG path). */
25
+ icon?: string;
26
+ /** Whether the component is disabled or not. */
27
+ isDisabled?: boolean;
28
+ /** Whether the component is required or not. */
29
+ isRequired?: boolean;
30
+ /** Whether the component is open or not. */
31
+ isOpen?: boolean;
32
+ /** Whether the select (input variant) is displayed with valid style or not. */
33
+ isValid?: boolean;
34
+ /** Label text. */
35
+ label?: string;
36
+ /** Placeholder input text. */
37
+ placeholder?: string;
38
+ /** Select variant. */
39
+ variant?: SelectVariant;
40
+ /** On clear callback. */
41
+ onClear?(event: SyntheticEvent, value?: string): void;
42
+ /** On blur callback. */
43
+ onBlur?(): void;
44
+ /** On filter text change callback (with 500ms debounce). */
45
+ onFilter?(): void;
46
+ /** On input click callback (can be used for dropdown toggle). */
47
+ onInputClick?(): void;
48
+ /** On dropdown close callback. */
49
+ onDropdownClose?(): void;
50
+ /** On scroll end callback. */
51
+ onInfiniteScroll?(): void;
52
+ /** Render value function. Default: Renders the value as a string. */
53
+ selectedValueRender?(choice: string): ReactNode | string;
54
+ }
55
+
56
+ /** Defines the props of the component. */
57
+ interface SelectProps extends CoreSelectProps {
58
+ /** Selected value. */
59
+ value: string;
60
+ }
61
+
62
+ /**
63
+ * Select component.
64
+ *
65
+ * @param props Component props.
66
+ * @param ref Component ref.
67
+ * @return React element.
68
+ */
69
+ declare const Select: Comp<SelectProps, HTMLDivElement>;
70
+
71
+ /** Defines the props of the component. */
72
+ interface SelectMultipleProps extends CoreSelectProps {
73
+ /** Selected values. */
74
+ value: string[];
75
+ /** Selected value render function. Default: Renders the value inside of a Chip. */
76
+ selectedChipRender?(choice: string, index: number, onClear?: (event: SyntheticEvent, choice: string) => void, isDisabled?: boolean, theme?: any): ReactNode | string;
77
+ }
78
+ declare const SelectMultipleField: React.FC<SelectMultipleProps>;
79
+ /**
80
+ * SelectMultiple component.
81
+ *
82
+ * @param props Component props.
83
+ * @param ref Component ref.
84
+ * @return React element.
85
+ */
86
+ declare const SelectMultiple: Comp<SelectMultipleProps, HTMLDivElement>;
87
+
88
+ export { SelectVariant as S, SelectProps as a, Select as b, SelectMultipleProps as c, SelectMultipleField as d, SelectMultiple as e };
@@ -1,9 +1,9 @@
1
- import { b as _objectWithoutProperties, c as _extends, _ as _objectSpread2 } from './_rollupPluginBabelHelpers.js';
2
- import { AspectRatio, Theme, ColorPalette, ColorVariant, Size } from './components.js';
1
+ import { b as _objectWithoutProperties, c as _extends, _ as _objectSpread2 } from './6340c129.js';
2
+ import { AspectRatio, Theme, ColorPalette, ColorVariant, Size } from '../components.js';
3
3
  import React, { forwardRef } from 'react';
4
- import { g as getRootClassName, c as classnames, h as handleBasicClasses } from './getRootClassName.js';
5
- import { L as Link } from './Link2.js';
6
- import { T as Thumbnail } from './Thumbnail2.js';
4
+ import { g as getRootClassName, c as classnames, h as handleBasicClasses } from './fd867c9d.js';
5
+ import { L as Link } from './eed07003.js';
6
+ import { T as Thumbnail } from './616f2912.js';
7
7
 
8
8
  /**
9
9
  * Defines the props of the component.
@@ -102,4 +102,4 @@ LinkPreview.className = CLASSNAME;
102
102
  LinkPreview.defaultProps = DEFAULT_PROPS;
103
103
 
104
104
  export { LinkPreview as L };
105
- //# sourceMappingURL=LinkPreview.js.map
105
+ //# sourceMappingURL=d350f2ff.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"d350f2ff.js","sources":["../../src/components/link-preview/LinkPreview.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\n\nimport classNames from 'classnames';\n\nimport {\n AspectRatio,\n ColorPalette,\n ColorVariant,\n Link,\n LinkProps,\n Size,\n Theme,\n Thumbnail,\n ThumbnailProps,\n} from '@lumx/react';\n\nimport { Comp, GenericProps, HeadingElement, HasTheme } from '@lumx/react/utils/type';\nimport { getRootClassName, handleBasicClasses } from '@lumx/react/utils/className';\n\n/**\n * Defines the props of the component.\n */\nexport interface LinkPreviewProps extends GenericProps, HasTheme {\n /** Description. */\n description?: string;\n /** Link URL. */\n link: string;\n /** Custom react component for the link (can be used to inject react router Link). */\n linkAs?: 'a' | any;\n /** Props to pass to the link (minus those already set by the LinkPreview props). */\n linkProps?: Omit<LinkProps, 'color' | 'colorVariant' | 'href' | 'target'>;\n /** Size variant. */\n size?: Extract<Size, 'regular' | 'big'>;\n /** Thumbnail for the link preview. */\n thumbnailProps?: ThumbnailProps;\n /** Title. */\n title?: string;\n /** Customize the title heading tag. */\n titleHeading?: HeadingElement;\n}\n\n/**\n * Component display name.\n */\nconst COMPONENT_NAME = 'LinkPreview';\n\n/**\n * Component default class name and class prefix.\n */\nconst CLASSNAME = getRootClassName(COMPONENT_NAME);\n\n/**\n * Component default props.\n */\nconst DEFAULT_PROPS = {\n size: Size.regular,\n theme: Theme.light,\n titleHeading: 'h2',\n} as const;\n\n/**\n * LinkPreview component.\n *\n * @param props Component props.\n * @param ref Component ref.\n * @return React element.\n */\nexport const LinkPreview: Comp<LinkPreviewProps, HTMLDivElement> = forwardRef((props, ref) => {\n const {\n className,\n description,\n link,\n linkAs,\n linkProps,\n size,\n theme,\n thumbnailProps,\n title,\n titleHeading,\n ...forwardedProps\n } = props;\n // Use title heading as title wrapper (see DEFAULT_PROPS for the default value).\n const TitleHeading = titleHeading as HeadingElement;\n\n return (\n <article\n ref={ref}\n {...forwardedProps}\n className={classNames(\n className,\n handleBasicClasses({\n prefix: CLASSNAME,\n size: size === Size.big && thumbnailProps ? Size.big : Size.regular,\n theme,\n }),\n )}\n >\n <div className={`${CLASSNAME}__wrapper`}>\n {thumbnailProps && (\n <div className={`${CLASSNAME}__thumbnail`}>\n <Thumbnail\n {...thumbnailProps}\n linkAs={linkAs}\n linkProps={{\n ...linkProps,\n href: link,\n target: '_blank',\n // Avoid redundant links in focus order\n tabIndex: -1,\n }}\n aspectRatio={AspectRatio.free}\n fillHeight\n />\n </div>\n )}\n\n <div className={`${CLASSNAME}__container`}>\n {title && (\n <TitleHeading className={`${CLASSNAME}__title`}>\n <Link\n {...linkProps}\n linkAs={linkAs}\n target=\"_blank\"\n href={link}\n color={theme === Theme.light ? ColorPalette.dark : ColorPalette.light}\n colorVariant={ColorVariant.N}\n >\n {title}\n </Link>\n </TitleHeading>\n )}\n\n {description && <p className={`${CLASSNAME}__description`}>{description}</p>}\n\n <div className={`${CLASSNAME}__link`}>\n <Link\n {...linkProps}\n linkAs={linkAs}\n className={classNames(`${CLASSNAME}__link`, linkProps?.className)}\n target=\"_blank\"\n href={link}\n color={theme === Theme.light ? ColorPalette.primary : ColorPalette.light}\n colorVariant={ColorVariant.N}\n // Avoid redundant links in focus order\n tabIndex={title ? '-1' : undefined}\n >\n {link}\n </Link>\n </div>\n </div>\n </div>\n </article>\n );\n});\n\nLinkPreview.displayName = COMPONENT_NAME;\nLinkPreview.className = CLASSNAME;\nLinkPreview.defaultProps = DEFAULT_PROPS;\n"],"names":["COMPONENT_NAME","CLASSNAME","getRootClassName","DEFAULT_PROPS","size","Size","regular","theme","Theme","light","titleHeading","LinkPreview","forwardRef","props","ref","className","description","link","linkAs","linkProps","thumbnailProps","title","forwardedProps","TitleHeading","classNames","handleBasicClasses","prefix","big","href","target","tabIndex","AspectRatio","free","ColorPalette","dark","ColorVariant","N","primary","undefined","displayName","defaultProps"],"mappings":"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"}
@@ -1,7 +1,7 @@
1
- import { b as _objectWithoutProperties, c as _extends } from './_rollupPluginBabelHelpers.js';
2
- import { ColorPalette } from './components.js';
1
+ import { b as _objectWithoutProperties, c as _extends } from './6340c129.js';
2
+ import { ColorPalette } from '../components.js';
3
3
  import React, { forwardRef } from 'react';
4
- import { g as getRootClassName, c as classnames, h as handleBasicClasses } from './getRootClassName.js';
4
+ import { g as getRootClassName, c as classnames, h as handleBasicClasses } from './fd867c9d.js';
5
5
 
6
6
  /**
7
7
  * Defines the props of the component.
@@ -51,4 +51,4 @@ Badge.className = CLASSNAME;
51
51
  Badge.defaultProps = DEFAULT_PROPS;
52
52
 
53
53
  export { Badge as B };
54
- //# sourceMappingURL=Badge2.js.map
54
+ //# sourceMappingURL=d71a8cf7.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"d71a8cf7.js","sources":["../../src/components/badge/Badge.tsx"],"sourcesContent":["import { Color, ColorPalette } from '@lumx/react';\nimport { Comp, GenericProps } from '@lumx/react/utils/type';\nimport { getRootClassName, handleBasicClasses } from '@lumx/react/utils/className';\nimport classNames from 'classnames';\nimport React, { forwardRef, ReactNode } from 'react';\n\n/**\n * Defines the props of the component.\n */\nexport interface BadgeProps extends GenericProps {\n /** Badge content. */\n children?: ReactNode;\n /** Color variant. */\n color?: Color;\n}\n\n/**\n * Component display name.\n */\nconst COMPONENT_NAME = 'Badge';\n\n/**\n * Component default class name and class prefix.\n */\nconst CLASSNAME = getRootClassName(COMPONENT_NAME);\n\n/**\n * Component default props.\n */\nconst DEFAULT_PROPS: Partial<BadgeProps> = {\n color: ColorPalette.primary,\n};\n\n/**\n * Badge component.\n *\n * @param props Component props.\n * @param ref Component ref.\n * @return React element.\n */\nexport const Badge: Comp<BadgeProps, HTMLDivElement> = forwardRef((props, ref) => {\n const { children, className, color, ...forwardedProps } = props;\n return (\n <div\n ref={ref}\n {...forwardedProps}\n className={classNames(className, handleBasicClasses({ prefix: CLASSNAME, color }))}\n >\n {children}\n </div>\n );\n});\nBadge.displayName = COMPONENT_NAME;\nBadge.className = CLASSNAME;\nBadge.defaultProps = DEFAULT_PROPS;\n"],"names":["COMPONENT_NAME","CLASSNAME","getRootClassName","DEFAULT_PROPS","color","ColorPalette","primary","Badge","forwardRef","props","ref","children","className","forwardedProps","classNames","handleBasicClasses","prefix","displayName","defaultProps"],"mappings":";;;;;AAMA;;;;AAUA;;;AAGA,IAAMA,cAAc,GAAG,OAAvB;AAEA;;;;AAGA,IAAMC,SAAS,GAAGC,gBAAgB,CAACF,cAAD,CAAlC;AAEA;;;;AAGA,IAAMG,aAAkC,GAAG;AACvCC,EAAAA,KAAK,EAAEC,YAAY,CAACC;AADmB,CAA3C;AAIA;;;;;;;;IAOaC,KAAuC,GAAGC,UAAU,CAAC,UAACC,KAAD,EAAQC,GAAR,EAAgB;AAAA,MACtEC,QADsE,GACpBF,KADoB,CACtEE,QADsE;AAAA,MAC5DC,SAD4D,GACpBH,KADoB,CAC5DG,SAD4D;AAAA,MACjDR,KADiD,GACpBK,KADoB,CACjDL,KADiD;AAAA,MACvCS,cADuC,4BACpBJ,KADoB;;AAE9E,SACI;AACI,IAAA,GAAG,EAAEC;AADT,KAEQG,cAFR;AAGI,IAAA,SAAS,EAAEC,UAAU,CAACF,SAAD,EAAYG,kBAAkB,CAAC;AAAEC,MAAAA,MAAM,EAAEf,SAAV;AAAqBG,MAAAA,KAAK,EAALA;AAArB,KAAD,CAA9B;AAHzB,MAKKO,QALL,CADJ;AASH,CAXgE;AAYjEJ,KAAK,CAACU,WAAN,GAAoBjB,cAApB;AACAO,KAAK,CAACK,SAAN,GAAkBX,SAAlB;AACAM,KAAK,CAACW,YAAN,GAAqBf,aAArB;;;;"}
@@ -1,7 +1,7 @@
1
- import { b as _objectWithoutProperties, c as _extends, a as _defineProperty } from './_rollupPluginBabelHelpers.js';
2
- import { Orientation } from './components.js';
1
+ import { b as _objectWithoutProperties, c as _extends, a as _defineProperty } from './6340c129.js';
2
+ import { Orientation } from '../components.js';
3
3
  import React, { forwardRef } from 'react';
4
- import { g as getRootClassName, c as classnames, h as handleBasicClasses } from './getRootClassName.js';
4
+ import { g as getRootClassName, c as classnames, h as handleBasicClasses } from './fd867c9d.js';
5
5
 
6
6
  /**
7
7
  * Component display name.
@@ -93,4 +93,4 @@ GridItem.displayName = COMPONENT_NAME$1;
93
93
  GridItem.className = CLASSNAME$1;
94
94
 
95
95
  export { Grid as G, GridItem as a };
96
- //# sourceMappingURL=GridItem.js.map
96
+ //# sourceMappingURL=d9337952.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"d9337952.js","sources":["../../src/components/grid/Grid.tsx","../../src/components/grid/GridItem.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\n\nimport classNames from 'classnames';\n\nimport { Alignment, Orientation, Size } from '@lumx/react';\nimport { Comp, GenericProps } from '@lumx/react/utils/type';\nimport { getRootClassName, handleBasicClasses } from '@lumx/react/utils/className';\n\ntype GridGutterSize = Extract<Size, 'regular' | 'big' | 'huge'>;\n\n/**\n * Defines the props of the component.\n */\nexport interface GridProps extends GenericProps {\n /** Orientation. */\n orientation?: Orientation;\n /** Whether the children are wrapped or not. */\n wrap?: string;\n /** Vertical alignment. */\n vAlign?: Alignment;\n /** Horizontal alignment. */\n hAlign?: Alignment;\n /** Gutter size. */\n gutter?: GridGutterSize;\n}\n\n/**\n * Component display name.\n */\nconst COMPONENT_NAME = 'Grid';\n\n/**\n * Component default class name and class prefix.\n */\nconst CLASSNAME = getRootClassName(COMPONENT_NAME);\n\n/**\n * Component default props.\n */\nconst DEFAULT_PROPS: Partial<GridProps> = {\n orientation: Orientation.horizontal,\n wrap: 'nowrap',\n};\n\n/**\n * Grid component.\n *\n * @param props Component props.\n * @param ref Component ref.\n * @return React element.\n */\nexport const Grid: Comp<GridProps, HTMLDivElement> = forwardRef((props, ref) => {\n const { children, className, gutter, hAlign, orientation, vAlign, wrap, ...forwardedProps } = props;\n\n return (\n <div\n ref={ref}\n {...forwardedProps}\n className={classNames(\n className,\n `${CLASSNAME}-container`,\n { [`${CLASSNAME}--h-align-${hAlign}`]: hAlign },\n { [`${CLASSNAME}--v-align-${vAlign}`]: vAlign },\n handleBasicClasses({ prefix: CLASSNAME, orientation, wrap, gutter }),\n )}\n >\n {children}\n </div>\n );\n});\nGrid.displayName = COMPONENT_NAME;\nGrid.className = CLASSNAME;\nGrid.defaultProps = DEFAULT_PROPS;\n","import React, { forwardRef } from 'react';\n\nimport classNames from 'classnames';\n\nimport { Alignment } from '@lumx/react';\nimport { Comp, GenericProps } from '@lumx/react/utils/type';\nimport { getRootClassName, handleBasicClasses } from '@lumx/react/utils/className';\n\ntype Columns = '1' | '2' | '3' | '4' | '5' | '6' | '7' | '8' | '9' | '10' | '11' | '12';\n\n/**\n * Defines the props of the component.\n */\nexport interface GridItemProps extends GenericProps {\n /** Alignment. */\n align?: Alignment;\n /** Order. */\n order?: Columns;\n /** Width. */\n width?: Columns;\n}\n\n/**\n * Component display name.\n */\nconst COMPONENT_NAME = 'GridItem';\n\n/**\n * Component default class name and class prefix.\n */\nconst CLASSNAME = getRootClassName(COMPONENT_NAME);\n\n/**\n * GridItem component.\n *\n * @param props Component props.\n * @param ref Component ref.\n * @return React element.\n */\nexport const GridItem: Comp<GridItemProps, HTMLDivElement> = forwardRef((props, ref) => {\n const { children, className, width, align, order, ...forwardedProps } = props;\n\n return (\n <div\n ref={ref}\n {...forwardedProps}\n className={classNames(className, handleBasicClasses({ prefix: CLASSNAME, width, order, align }))}\n >\n {children}\n </div>\n );\n});\nGridItem.displayName = COMPONENT_NAME;\nGridItem.className = CLASSNAME;\n"],"names":["COMPONENT_NAME","CLASSNAME","getRootClassName","DEFAULT_PROPS","orientation","Orientation","horizontal","wrap","Grid","forwardRef","props","ref","children","className","gutter","hAlign","vAlign","forwardedProps","classNames","handleBasicClasses","prefix","displayName","defaultProps","GridItem","width","align","order"],"mappings":";;;;;AA0BA;;;AAGA,IAAMA,cAAc,GAAG,MAAvB;AAEA;;;;AAGA,IAAMC,SAAS,GAAGC,gBAAgB,CAACF,cAAD,CAAlC;AAEA;;;;AAGA,IAAMG,aAAiC,GAAG;AACtCC,EAAAA,WAAW,EAAEC,WAAW,CAACC,UADa;AAEtCC,EAAAA,IAAI,EAAE;AAFgC,CAA1C;AAKA;;;;;;;;IAOaC,IAAqC,GAAGC,UAAU,CAAC,UAACC,KAAD,EAAQC,GAAR,EAAgB;AAAA,MACpEC,QADoE,GACkBF,KADlB,CACpEE,QADoE;AAAA,MAC1DC,SAD0D,GACkBH,KADlB,CAC1DG,SAD0D;AAAA,MAC/CC,MAD+C,GACkBJ,KADlB,CAC/CI,MAD+C;AAAA,MACvCC,MADuC,GACkBL,KADlB,CACvCK,MADuC;AAAA,MAC/BX,WAD+B,GACkBM,KADlB,CAC/BN,WAD+B;AAAA,MAClBY,MADkB,GACkBN,KADlB,CAClBM,MADkB;AAAA,MACVT,IADU,GACkBG,KADlB,CACVH,IADU;AAAA,MACDU,cADC,4BACkBP,KADlB;;AAG5E,SACI;AACI,IAAA,GAAG,EAAEC;AADT,KAEQM,cAFR;AAGI,IAAA,SAAS,EAAEC,UAAU,CACjBL,SADiB,YAEdZ,SAFc,+CAGXA,SAHW,uBAGWc,MAHX,GAGsBA,MAHtB,iCAIXd,SAJW,uBAIWe,MAJX,GAIsBA,MAJtB,GAKjBG,kBAAkB,CAAC;AAAEC,MAAAA,MAAM,EAAEnB,SAAV;AAAqBG,MAAAA,WAAW,EAAXA,WAArB;AAAkCG,MAAAA,IAAI,EAAJA,IAAlC;AAAwCO,MAAAA,MAAM,EAANA;AAAxC,KAAD,CALD;AAHzB,MAWKF,QAXL,CADJ;AAeH,CAlB8D;AAmB/DJ,IAAI,CAACa,WAAL,GAAmBrB,cAAnB;AACAQ,IAAI,CAACK,SAAL,GAAiBZ,SAAjB;AACAO,IAAI,CAACc,YAAL,GAAoBnB,aAApB;;AClDA;;;AAGA,IAAMH,gBAAc,GAAG,UAAvB;AAEA;;;;AAGA,IAAMC,WAAS,GAAGC,gBAAgB,CAACF,gBAAD,CAAlC;AAEA;;;;;;;;IAOauB,QAA6C,GAAGd,UAAU,CAAC,UAACC,KAAD,EAAQC,GAAR,EAAgB;AAAA,MAC5EC,QAD4E,GACZF,KADY,CAC5EE,QAD4E;AAAA,MAClEC,SADkE,GACZH,KADY,CAClEG,SADkE;AAAA,MACvDW,KADuD,GACZd,KADY,CACvDc,KADuD;AAAA,MAChDC,KADgD,GACZf,KADY,CAChDe,KADgD;AAAA,MACzCC,KADyC,GACZhB,KADY,CACzCgB,KADyC;AAAA,MAC/BT,cAD+B,4BACZP,KADY;;AAGpF,SACI;AACI,IAAA,GAAG,EAAEC;AADT,KAEQM,cAFR;AAGI,IAAA,SAAS,EAAEC,UAAU,CAACL,SAAD,EAAYM,kBAAkB,CAAC;AAAEC,MAAAA,MAAM,EAAEnB,WAAV;AAAqBuB,MAAAA,KAAK,EAALA,KAArB;AAA4BE,MAAAA,KAAK,EAALA,KAA5B;AAAmCD,MAAAA,KAAK,EAALA;AAAnC,KAAD,CAA9B;AAHzB,MAKKb,QALL,CADJ;AASH,CAZsE;AAavEW,QAAQ,CAACF,WAAT,GAAuBrB,gBAAvB;AACAuB,QAAQ,CAACV,SAAT,GAAqBZ,WAArB;;;;"}
@@ -0,0 +1,24 @@
1
+ import { ReactNode } from 'react';
2
+ import { l as GenericProps, m as HasTheme, k as Comp } from './eca6d4dc.js';
3
+
4
+ /**
5
+ * Defines the props of the component.
6
+ */
7
+ interface InputLabelProps extends GenericProps, HasTheme {
8
+ /** Label content. */
9
+ children: string | ReactNode;
10
+ /** Native htmlFor property. */
11
+ htmlFor: string;
12
+ /** Whether the component is required or not. */
13
+ isRequired?: boolean;
14
+ }
15
+ /**
16
+ * InputLabel component.
17
+ *
18
+ * @param props Component props.
19
+ * @param ref Component ref.
20
+ * @return React element.
21
+ */
22
+ declare const InputLabel: Comp<InputLabelProps, HTMLLabelElement>;
23
+
24
+ export { InputLabelProps as I, InputLabel as a };
@@ -0,0 +1,35 @@
1
+ import { l as GenericProps, m as HasTheme, S as Size, p as HeadingElement, k as Comp } from './eca6d4dc.js';
2
+ import { T as ThumbnailProps } from './3bd3186e.js';
3
+ import { L as LinkProps } from './31c16fa0.js';
4
+
5
+ /**
6
+ * Defines the props of the component.
7
+ */
8
+ interface LinkPreviewProps extends GenericProps, HasTheme {
9
+ /** Description. */
10
+ description?: string;
11
+ /** Link URL. */
12
+ link: string;
13
+ /** Custom react component for the link (can be used to inject react router Link). */
14
+ linkAs?: 'a' | any;
15
+ /** Props to pass to the link (minus those already set by the LinkPreview props). */
16
+ linkProps?: Omit<LinkProps, 'color' | 'colorVariant' | 'href' | 'target'>;
17
+ /** Size variant. */
18
+ size?: Extract<Size, 'regular' | 'big'>;
19
+ /** Thumbnail for the link preview. */
20
+ thumbnailProps?: ThumbnailProps;
21
+ /** Title. */
22
+ title?: string;
23
+ /** Customize the title heading tag. */
24
+ titleHeading?: HeadingElement;
25
+ }
26
+ /**
27
+ * LinkPreview component.
28
+ *
29
+ * @param props Component props.
30
+ * @param ref Component ref.
31
+ * @return React element.
32
+ */
33
+ declare const LinkPreview: Comp<LinkPreviewProps, HTMLDivElement>;
34
+
35
+ export { LinkPreviewProps as L, LinkPreview as a };
@@ -1,6 +1,6 @@
1
- import { e as _toConsumableArray, _ as _objectSpread2, a as _defineProperty, d as _slicedToArray } from './_rollupPluginBabelHelpers.js';
1
+ import { e as _toConsumableArray, _ as _objectSpread2, a as _defineProperty, d as _slicedToArray } from './6340c129.js';
2
2
  import { createContext, useContext, useMemo, useEffect, useCallback } from 'react';
3
- import { u as uid } from '../index2.js';
3
+ import { u as uid } from './fc608bd9.js';
4
4
 
5
5
  var INIT_STATE = {
6
6
  isLazy: true,
@@ -141,82 +141,5 @@ var useTabProviderContextState = function useTabProviderContextState() {
141
141
  return context === null || context === void 0 ? void 0 : context[0];
142
142
  };
143
143
 
144
- var useRovingTabIndex = function useRovingTabIndex(_ref) {
145
- var parentRef = _ref.parentRef,
146
- elementSelector = _ref.elementSelector,
147
- keepTabIndex = _ref.keepTabIndex,
148
- _ref$extraDependencie = _ref.extraDependencies,
149
- extraDependencies = _ref$extraDependencie === void 0 ? [] : _ref$extraDependencie;
150
- useEffect(function () {
151
- var parent = parentRef === null || parentRef === void 0 ? void 0 : parentRef.current;
152
-
153
- if (!parent) {
154
- return undefined;
155
- }
156
-
157
- var elements = parent.querySelectorAll(elementSelector);
158
- var initialFocusableElement = parent === null || parent === void 0 ? void 0 : parent.querySelector("".concat(elementSelector, "[tabindex=\"0\"]"));
159
-
160
- var handleKeyDown = function handleKeyDown(index) {
161
- return function (evt) {
162
- var newTabFocus = index;
163
-
164
- if (!(evt.key === 'ArrowRight' || evt.key === 'ArrowLeft')) {
165
- return;
166
- }
167
-
168
- if (evt.key === 'ArrowRight') {
169
- // Move right
170
- newTabFocus += 1; // If we're at the end, go to the start
171
-
172
- if (newTabFocus >= elements.length) {
173
- newTabFocus = 0;
174
- }
175
- } else if (evt.key === 'ArrowLeft') {
176
- // Move left
177
- newTabFocus -= 1;
178
-
179
- if (newTabFocus < 0) {
180
- // If we're at the start, move to the end
181
- newTabFocus = elements.length - 1;
182
- }
183
- }
184
-
185
- var newElement = elements[newTabFocus];
186
- newElement === null || newElement === void 0 ? void 0 : newElement.focus();
187
-
188
- if (keepTabIndex) {
189
- evt.currentTarget.setAttribute('tabindex', '-1');
190
- newElement === null || newElement === void 0 ? void 0 : newElement.setAttribute('tabindex', '0');
191
- }
192
- };
193
- };
194
-
195
- if ((elements === null || elements === void 0 ? void 0 : elements.length) > 0) {
196
- elements.forEach(function (el, key) {
197
- // if no element has tabindex set to 0, set the first element as focusable
198
- if (!initialFocusableElement && key === 0) {
199
- el.setAttribute('tabindex', '0'); // set all other to -1
200
- } else if (initialFocusableElement !== el) {
201
- el.setAttribute('tabindex', '-1');
202
- } // add event listener
203
-
204
-
205
- el.addEventListener('keydown', handleKeyDown(key));
206
- });
207
- } // Cleanup listeners
208
-
209
-
210
- return function () {
211
- if ((elements === null || elements === void 0 ? void 0 : elements.length) > 0) {
212
- elements.forEach(function (el, key) {
213
- el.removeEventListener('keydown', handleKeyDown(key));
214
- });
215
- }
216
- };
217
- }, // eslint-disable-next-line react-hooks/exhaustive-deps
218
- [parentRef].concat(_toConsumableArray(extraDependencies)));
219
- };
220
-
221
- export { INIT_STATE as I, TabProviderContext as T, useTabProviderContextState as a, useTabProviderContext as b, reducer as r, useRovingTabIndex as u };
222
- //# sourceMappingURL=useRovingTabIndex.js.map
144
+ export { INIT_STATE as I, TabProviderContext as T, useTabProviderContext as a, reducer as r, useTabProviderContextState as u };
145
+ //# sourceMappingURL=e354228f.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"e354228f.js","sources":["../../src/components/tabs/state.ts"],"sourcesContent":["import { Dispatch, createContext, useCallback, useContext, useEffect, useMemo } from 'react';\nimport { uid } from 'uid';\n\ntype TabType = 'tab' | 'tabPanel';\n\nexport interface State {\n isLazy: boolean;\n shouldActivateOnFocus: boolean;\n activeTabIndex: number;\n ids: Record<TabType, string[]>;\n}\n\nexport const INIT_STATE: State = {\n isLazy: true,\n shouldActivateOnFocus: false,\n activeTabIndex: 0,\n ids: { tab: [], tabPanel: [] },\n};\n\nexport type Action =\n | { type: 'update'; payload: Partial<State> }\n | { type: 'setActiveTabIndex'; payload: number }\n | { type: 'register'; payload: { type: TabType; id: string } }\n | { type: 'unregister'; payload: { type: TabType; id: string } };\n\nexport const reducer = (state: State, action: Action): State => {\n switch (action.type) {\n case 'update':\n return { ...state, ...action.payload };\n case 'setActiveTabIndex': {\n if (state.activeTabIndex === action.payload) {\n return state;\n }\n // Change active tab index.\n return { ...state, activeTabIndex: action.payload };\n }\n case 'register': {\n const { type, id } = action.payload;\n // Append tab/tabPanel id in state.\n return { ...state, ids: { ...state.ids, [type]: [...state.ids[type], id] } };\n }\n case 'unregister': {\n const { type, id } = action.payload;\n const index = state.ids[type].indexOf(id);\n if (index === -1) return state;\n // Remove tab & tab panel at index.\n const tabIds = [...state.ids.tab];\n tabIds.splice(index, 1);\n const tabPanelIds = [...state.ids.tabPanel];\n tabPanelIds.splice(index, 1);\n return {\n ...state,\n ids: { tab: tabIds, tabPanel: tabPanelIds },\n };\n }\n default:\n return state;\n }\n};\n\nexport const TabProviderContext = createContext<[State, Dispatch<Action>] | null>(null);\n\nexport type TabState = Pick<Required<State>, 'isLazy' | 'shouldActivateOnFocus'> & {\n isActive: boolean;\n tabId: string;\n tabPanelId: string;\n changeToTab(): void;\n};\n\n/* eslint-disable react-hooks/rules-of-hooks */\nexport const useTabProviderContext = (type: TabType, originalId?: string): undefined | TabState => {\n const context = useContext(TabProviderContext);\n if (!context) {\n return undefined;\n }\n const [state, dispatch] = context;\n\n // Current tab or tab panel id.\n const id = useMemo(\n () => originalId || `${type}-${uid()}`,\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [],\n );\n useEffect(\n () => {\n // On mount: register tab or tab panel id.\n dispatch({ type: 'register', payload: { type, id } });\n return () => {\n // On unmount: unregister tab or tab panel id.\n dispatch({ type: 'unregister', payload: { type, id } });\n };\n },\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [],\n );\n\n // Find tab/tabPanel index using it's id.\n const index = useMemo(() => state.ids[type].indexOf(id), [state.ids, type, id]);\n const tabId = useMemo(() => state.ids.tab[index] || '', [state, index]);\n const tabPanelId = useMemo(() => state.ids.tabPanel[index] || '', [state, index]);\n const isActive = useMemo(() => state.activeTabIndex === index, [state, index]);\n const changeToTab = useCallback(() => dispatch({ type: 'setActiveTabIndex', payload: index }), [dispatch, index]);\n return {\n isLazy: state.isLazy,\n shouldActivateOnFocus: state.shouldActivateOnFocus,\n tabId,\n tabPanelId,\n isActive,\n changeToTab,\n };\n};\n\nexport const useTabProviderContextState = (): State | undefined => {\n const context = useContext(TabProviderContext);\n return context?.[0];\n};\n"],"names":["INIT_STATE","isLazy","shouldActivateOnFocus","activeTabIndex","ids","tab","tabPanel","reducer","state","action","type","payload","id","index","indexOf","tabIds","splice","tabPanelIds","TabProviderContext","createContext","useTabProviderContext","originalId","context","useContext","undefined","dispatch","useMemo","uid","useEffect","tabId","tabPanelId","isActive","changeToTab","useCallback","useTabProviderContextState"],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ import { ReactNode } from 'react';
2
+ import { l as GenericProps, m as HasTheme, K as Kind, k as Comp } from './eca6d4dc.js';
3
+
4
+ /**
5
+ * Defines the props of the component.
6
+ */
7
+ interface InputHelperProps extends GenericProps, HasTheme {
8
+ /** Helper content. */
9
+ children: string | ReactNode;
10
+ /** Helper variant. */
11
+ kind?: Kind;
12
+ }
13
+ /**
14
+ * InputHelper component.
15
+ *
16
+ * @param props Component props.
17
+ * @param ref Component ref.
18
+ * @return React element.
19
+ */
20
+ declare const InputHelper: Comp<InputHelperProps, HTMLSpanElement>;
21
+
22
+ export { InputHelperProps as I, InputHelper as a };