@lumx/react 3.20.1-alpha.32 → 3.20.1-alpha.34

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 (688) hide show
  1. package/_internal/00560d40.js +11 -0
  2. package/_internal/00560d40.js.map +1 -0
  3. package/_internal/{components/grid-column-99652545.js → 00cc46ee.js} +2 -2
  4. package/_internal/00cc46ee.js.map +1 -0
  5. package/_internal/{useFocusTrap-c3c6378b.js → 0350c865.js} +5 -27
  6. package/_internal/0350c865.js.map +1 -0
  7. package/_internal/063618dc.js +21 -0
  8. package/_internal/063618dc.js.map +1 -0
  9. package/_internal/07f6dc7c.js +16 -0
  10. package/_internal/07f6dc7c.js.map +1 -0
  11. package/_internal/0846b7f3.js +4 -0
  12. package/_internal/0846b7f3.js.map +1 -0
  13. package/_internal/08948b47.js +109 -0
  14. package/_internal/08948b47.js.map +1 -0
  15. package/_internal/08b0de35.js +14 -0
  16. package/_internal/08b0de35.js.map +1 -0
  17. package/_internal/094c811d.js +24 -0
  18. package/_internal/094c811d.js.map +1 -0
  19. package/_internal/09d97180.js +18 -0
  20. package/_internal/09d97180.js.map +1 -0
  21. package/_internal/0a2c57a2.js +9 -0
  22. package/_internal/0a2c57a2.js.map +1 -0
  23. package/_internal/0a7f4911.js +64 -0
  24. package/_internal/0a7f4911.js.map +1 -0
  25. package/_internal/0aa9027f.js +10 -0
  26. package/_internal/0aa9027f.js.map +1 -0
  27. package/_internal/0c58c8e2.js +59 -0
  28. package/_internal/0c58c8e2.js.map +1 -0
  29. package/_internal/{Button-1b7d3b79.js → 0d7cc1e0.js} +8 -8
  30. package/_internal/0d7cc1e0.js.map +1 -0
  31. package/_internal/0db022d6.js +58 -0
  32. package/_internal/0db022d6.js.map +1 -0
  33. package/_internal/0e16222d.js +9 -0
  34. package/_internal/0e16222d.js.map +1 -0
  35. package/_internal/0f849025.js +4 -0
  36. package/_internal/0f849025.js.map +1 -0
  37. package/_internal/0fe87dc7.js +72 -0
  38. package/_internal/0fe87dc7.js.map +1 -0
  39. package/_internal/1060c47e.js +4 -0
  40. package/_internal/1060c47e.js.map +1 -0
  41. package/_internal/{isComponentType-e806b848.js → 111e65e5.js} +2 -2
  42. package/_internal/111e65e5.js.map +1 -0
  43. package/_internal/{useId-3a1facc0.js → 11687649.js} +2 -2
  44. package/_internal/11687649.js.map +1 -0
  45. package/_internal/14390eeb.js +7 -0
  46. package/_internal/14390eeb.js.map +1 -0
  47. package/_internal/145228a7.js +47 -0
  48. package/_internal/145228a7.js.map +1 -0
  49. package/_internal/{components/uploader-2e1b080e.js → 15fb66ce.js} +8 -8
  50. package/_internal/15fb66ce.js.map +1 -0
  51. package/_internal/160cf9fe.js +24 -0
  52. package/_internal/160cf9fe.js.map +1 -0
  53. package/_internal/1616343a.js +37 -0
  54. package/_internal/1616343a.js.map +1 -0
  55. package/_internal/{components/divider-0e93aa3d.js → 162672de.js} +3 -3
  56. package/_internal/162672de.js.map +1 -0
  57. package/_internal/168f211f.js +17 -0
  58. package/_internal/168f211f.js.map +1 -0
  59. package/_internal/{wrapChildrenIconWithSpaces-fb85a743.js → 16f5497d.js} +4 -4
  60. package/_internal/16f5497d.js.map +1 -0
  61. package/_internal/179a2989.js +129 -0
  62. package/_internal/179a2989.js.map +1 -0
  63. package/_internal/185778b8.js +4 -0
  64. package/_internal/185778b8.js.map +1 -0
  65. package/_internal/1afd2506.js +60 -0
  66. package/_internal/1afd2506.js.map +1 -0
  67. package/_internal/1c1cdfa2.js +159 -0
  68. package/_internal/1c1cdfa2.js.map +1 -0
  69. package/_internal/1c3b349b.js +4 -0
  70. package/_internal/1c3b349b.js.map +1 -0
  71. package/_internal/1d7267a1.js +173 -0
  72. package/_internal/1d7267a1.js.map +1 -0
  73. package/_internal/1df25415.js +53 -0
  74. package/_internal/1df25415.js.map +1 -0
  75. package/_internal/1ee5415f.js +27 -0
  76. package/_internal/1ee5415f.js.map +1 -0
  77. package/_internal/1ff933af.js +5 -0
  78. package/_internal/1ff933af.js.map +1 -0
  79. package/_internal/200c2ce1.js +17 -0
  80. package/_internal/200c2ce1.js.map +1 -0
  81. package/_internal/{index-77f213b1.js → 203b01d8.js} +6 -36
  82. package/_internal/203b01d8.js.map +1 -0
  83. package/_internal/2040beb8.js +169 -0
  84. package/_internal/2040beb8.js.map +1 -0
  85. package/_internal/20f07616.js +14 -0
  86. package/_internal/20f07616.js.map +1 -0
  87. package/_internal/215781b4.js +6 -0
  88. package/_internal/215781b4.js.map +1 -0
  89. package/_internal/{components/mosaic-c8084ee8.js → 226a2eac.js} +4 -4
  90. package/_internal/226a2eac.js.map +1 -0
  91. package/_internal/2291b633.js +52 -0
  92. package/_internal/2291b633.js.map +1 -0
  93. package/_internal/{components/inline-list-5ba8bb0f.js → 2403668c.js} +2 -2
  94. package/_internal/2403668c.js.map +1 -0
  95. package/_internal/24b48881.js +133 -0
  96. package/_internal/24b48881.js.map +1 -0
  97. package/_internal/2517d1d6.js +9 -0
  98. package/_internal/2517d1d6.js.map +1 -0
  99. package/_internal/256f8eff.js +4 -0
  100. package/_internal/256f8eff.js.map +1 -0
  101. package/_internal/{components/input-label-30d199c3.js → 26a92990.js} +3 -3
  102. package/_internal/26a92990.js.map +1 -0
  103. package/_internal/27a93417.js +223 -0
  104. package/_internal/27a93417.js.map +1 -0
  105. package/_internal/{mergeRefs-f0d7d6ea.js → 27df0cb6.js} +2 -2
  106. package/_internal/27df0cb6.js.map +1 -0
  107. package/_internal/28f344bd.js +52 -0
  108. package/_internal/28f344bd.js.map +1 -0
  109. package/_internal/2c5a950d.js +55 -0
  110. package/_internal/2c5a950d.js.map +1 -0
  111. package/_internal/2cdd9ec6.js +16 -0
  112. package/_internal/2cdd9ec6.js.map +1 -0
  113. package/_internal/2cfeae78.js +150 -0
  114. package/_internal/2cfeae78.js.map +1 -0
  115. package/_internal/{components/dropdown-25170b7c.js → 2d1acaa0.js} +8 -48
  116. package/_internal/2d1acaa0.js.map +1 -0
  117. package/_internal/2d69d0f5.js +4 -0
  118. package/_internal/2d69d0f5.js.map +1 -0
  119. package/_internal/2dcfa1df.js +18 -0
  120. package/_internal/2dcfa1df.js.map +1 -0
  121. package/_internal/2dff9a38.js +150 -0
  122. package/_internal/2dff9a38.js.map +1 -0
  123. package/_internal/2e5288d0.js +15 -0
  124. package/_internal/2e5288d0.js.map +1 -0
  125. package/_internal/2fc47dc4.js +133 -0
  126. package/_internal/2fc47dc4.js.map +1 -0
  127. package/_internal/30ecdee3.js +9 -0
  128. package/_internal/30ecdee3.js.map +1 -0
  129. package/_internal/{components/input-helper-2e4e49fd.js → 3119c1fe.js} +4 -15
  130. package/_internal/3119c1fe.js.map +1 -0
  131. package/_internal/31b6784b.js +14 -0
  132. package/_internal/31b6784b.js.map +1 -0
  133. package/_internal/341034b4.js +48 -0
  134. package/_internal/341034b4.js.map +1 -0
  135. package/_internal/341ceaa9.js +4 -0
  136. package/_internal/341ceaa9.js.map +1 -0
  137. package/_internal/355f875f.js +9 -0
  138. package/_internal/355f875f.js.map +1 -0
  139. package/_internal/{components/side-navigation-385825d4.js → 36008a95.js} +13 -49
  140. package/_internal/36008a95.js.map +1 -0
  141. package/_internal/378a6fb1.js +126 -0
  142. package/_internal/378a6fb1.js.map +1 -0
  143. package/_internal/37f5ba95.js +12 -0
  144. package/_internal/37f5ba95.js.map +1 -0
  145. package/_internal/{Portal-3f86608e.js → 38ac8c66.js} +3 -15
  146. package/_internal/38ac8c66.js.map +1 -0
  147. package/_internal/38ce97de.js +29 -0
  148. package/_internal/38ce97de.js.map +1 -0
  149. package/_internal/39534d28.js +30 -0
  150. package/_internal/39534d28.js.map +1 -0
  151. package/_internal/{ImageCaption-6f2f4131.js → 3996d544.js} +5 -5
  152. package/_internal/3996d544.js.map +1 -0
  153. package/_internal/3a7fd4bf.js +60 -0
  154. package/_internal/3a7fd4bf.js.map +1 -0
  155. package/_internal/3cfcb0a4.js +122 -0
  156. package/_internal/3cfcb0a4.js.map +1 -0
  157. package/_internal/3d5e1fd0.js +46 -0
  158. package/_internal/3d5e1fd0.js.map +1 -0
  159. package/_internal/3db5a3e4.js +258 -0
  160. package/_internal/3db5a3e4.js.map +1 -0
  161. package/_internal/{useBooleanState-2a3d237c.js → 3e2f0517.js} +2 -2
  162. package/_internal/3e2f0517.js.map +1 -0
  163. package/_internal/3eba1faf.js +87 -0
  164. package/_internal/3eba1faf.js.map +1 -0
  165. package/_internal/3f48eb48.js +73 -0
  166. package/_internal/3f48eb48.js.map +1 -0
  167. package/_internal/3f51175c.js +61 -0
  168. package/_internal/3f51175c.js.map +1 -0
  169. package/_internal/3f54fe9e.js +4 -0
  170. package/_internal/3f54fe9e.js.map +1 -0
  171. package/_internal/{components/text-field-8597b7f7.js → 41a8b20f.js} +13 -12
  172. package/_internal/41a8b20f.js.map +1 -0
  173. package/_internal/42b26576.js +4 -0
  174. package/_internal/42b26576.js.map +1 -0
  175. package/_internal/45ef51db.js +29 -0
  176. package/_internal/45ef51db.js.map +1 -0
  177. package/_internal/48148353.js +100 -0
  178. package/_internal/48148353.js.map +1 -0
  179. package/_internal/4bb19934.js +4 -0
  180. package/_internal/4bb19934.js.map +1 -0
  181. package/_internal/4c471276.js +75 -0
  182. package/_internal/4c471276.js.map +1 -0
  183. package/_internal/{components/image-block-4f3fe64c.js → 4c891480.js} +5 -5
  184. package/_internal/4c891480.js.map +1 -0
  185. package/_internal/4d540596.js +131 -0
  186. package/_internal/4d540596.js.map +1 -0
  187. package/_internal/4d751800.js +40 -0
  188. package/_internal/4d751800.js.map +1 -0
  189. package/_internal/4f71fd36.js +4 -0
  190. package/_internal/4f71fd36.js.map +1 -0
  191. package/_internal/507d9459.js +67 -0
  192. package/_internal/507d9459.js.map +1 -0
  193. package/_internal/5178b7ba.js +10 -0
  194. package/_internal/5178b7ba.js.map +1 -0
  195. package/_internal/51921a16.js +30 -0
  196. package/_internal/51921a16.js.map +1 -0
  197. package/_internal/535aa51f.js +44 -0
  198. package/_internal/535aa51f.js.map +1 -0
  199. package/_internal/{DisabledStateContext-ea04260d.js → 536517c5.js} +2 -2
  200. package/_internal/536517c5.js.map +1 -0
  201. package/_internal/53b8dea1.js +48 -0
  202. package/_internal/53b8dea1.js.map +1 -0
  203. package/_internal/5745f198.js +12 -0
  204. package/_internal/5745f198.js.map +1 -0
  205. package/_internal/57f2079b.js +10 -0
  206. package/_internal/57f2079b.js.map +1 -0
  207. package/_internal/{components/thumbnail-4928bba2.js → 58418448.js} +1 -2
  208. package/_internal/58418448.js.map +1 -0
  209. package/_internal/{index-d3e86bd8.js → 595d0e66.js} +5 -6
  210. package/_internal/595d0e66.js.map +1 -0
  211. package/_internal/{IconButton-e11b5e74.js → 5a0207d9.js} +7 -7
  212. package/_internal/5a0207d9.js.map +1 -0
  213. package/_internal/5a6b1aa5.js +139 -0
  214. package/_internal/5a6b1aa5.js.map +1 -0
  215. package/_internal/5c3e15ea.js +107 -0
  216. package/_internal/5c3e15ea.js.map +1 -0
  217. package/_internal/{components/lightbox-10ff28f9.js → 5c4e10a0.js} +14 -14
  218. package/_internal/5c4e10a0.js.map +1 -0
  219. package/_internal/5da9ff06.js +47 -0
  220. package/_internal/5da9ff06.js.map +1 -0
  221. package/_internal/60139f6a.js +9 -0
  222. package/_internal/60139f6a.js.map +1 -0
  223. package/_internal/612b7365.js +231 -0
  224. package/_internal/612b7365.js.map +1 -0
  225. package/_internal/612f6fb4.js +155 -0
  226. package/_internal/612f6fb4.js.map +1 -0
  227. package/_internal/617d453e.js +28 -0
  228. package/_internal/617d453e.js.map +1 -0
  229. package/_internal/{components/slider-78cfaa67.js → 62c6c615.js} +11 -43
  230. package/_internal/62c6c615.js.map +1 -0
  231. package/_internal/6417ddb1.js +24 -0
  232. package/_internal/6417ddb1.js.map +1 -0
  233. package/_internal/658e09de.js +7 -0
  234. package/_internal/658e09de.js.map +1 -0
  235. package/_internal/659a1cdd.js +144 -0
  236. package/_internal/659a1cdd.js.map +1 -0
  237. package/_internal/6671d28b.js +40 -0
  238. package/_internal/6671d28b.js.map +1 -0
  239. package/_internal/66950686.js +14 -0
  240. package/_internal/66950686.js.map +1 -0
  241. package/_internal/671b986c.js +14 -0
  242. package/_internal/671b986c.js.map +1 -0
  243. package/_internal/{components/notification-97a8a04a.js → 6893b89e.js} +10 -33
  244. package/_internal/6893b89e.js.map +1 -0
  245. package/_internal/68f13c1c.js +4 -0
  246. package/_internal/68f13c1c.js.map +1 -0
  247. package/_internal/{components/link-9d1bd2f6.js → 69eb2393.js} +6 -6
  248. package/_internal/69eb2393.js.map +1 -0
  249. package/_internal/{constants-d0e3f49e.js → 6af61e2f.js} +3 -3
  250. package/_internal/6af61e2f.js.map +1 -0
  251. package/_internal/{components/checkbox-f7751583.js → 6b510f5e.js} +11 -13
  252. package/_internal/6b510f5e.js.map +1 -0
  253. package/_internal/6b61b268.js +9 -0
  254. package/_internal/6b61b268.js.map +1 -0
  255. package/_internal/6f0ce1bb.js +67 -0
  256. package/_internal/6f0ce1bb.js.map +1 -0
  257. package/_internal/6f17bf65.js +8 -0
  258. package/_internal/6f17bf65.js.map +1 -0
  259. package/_internal/{close-circle-ef5d1aac.js → 6f37d603.js} +2 -2
  260. package/_internal/6f37d603.js.map +1 -0
  261. package/_internal/6f3bb7d6.js +16 -0
  262. package/_internal/6f3bb7d6.js.map +1 -0
  263. package/_internal/705f415e.js +67 -0
  264. package/_internal/705f415e.js.map +1 -0
  265. package/_internal/722ea461.js +9 -0
  266. package/_internal/722ea461.js.map +1 -0
  267. package/_internal/728684f6.js +6 -0
  268. package/_internal/728684f6.js.map +1 -0
  269. package/_internal/730f75dc.js +93 -0
  270. package/_internal/730f75dc.js.map +1 -0
  271. package/_internal/735bcfa5.js +38 -0
  272. package/_internal/735bcfa5.js.map +1 -0
  273. package/_internal/{ClickAwayProvider-7093ba23.js → 739f2f15.js} +4 -38
  274. package/_internal/739f2f15.js.map +1 -0
  275. package/_internal/7531ee4d.js +72 -0
  276. package/_internal/7531ee4d.js.map +1 -0
  277. package/_internal/75f285fb.js +104 -0
  278. package/_internal/75f285fb.js.map +1 -0
  279. package/_internal/78a9c3cd.js +4 -0
  280. package/_internal/78a9c3cd.js.map +1 -0
  281. package/_internal/7a2da67a.js +64 -0
  282. package/_internal/7a2da67a.js.map +1 -0
  283. package/_internal/7af4a428.js +39 -0
  284. package/_internal/7af4a428.js.map +1 -0
  285. package/_internal/7d4eb1c5.js +62 -0
  286. package/_internal/7d4eb1c5.js.map +1 -0
  287. package/_internal/{components/chip-1ed080fb.js → 7d9c0855.js} +2 -50
  288. package/_internal/7d9c0855.js.map +1 -0
  289. package/_internal/7eca7fcd.js +28 -0
  290. package/_internal/7eca7fcd.js.map +1 -0
  291. package/_internal/81a6a29a.js +55 -0
  292. package/_internal/81a6a29a.js.map +1 -0
  293. package/_internal/{components/user-block-5fd51607.js → 82159c03.js} +5 -5
  294. package/_internal/82159c03.js.map +1 -0
  295. package/_internal/82c6852b.js +19 -0
  296. package/_internal/82c6852b.js.map +1 -0
  297. package/_internal/{components/drag-handle-eec23fc2.js → 840e9690.js} +5 -6
  298. package/_internal/840e9690.js.map +1 -0
  299. package/_internal/{context-9d1336a1.js → 841c2303.js} +2 -2
  300. package/_internal/841c2303.js.map +1 -0
  301. package/_internal/8429fc80.js +141 -0
  302. package/_internal/8429fc80.js.map +1 -0
  303. package/_internal/84978777.js +55 -0
  304. package/_internal/84978777.js.map +1 -0
  305. package/_internal/{components/switch-24fea8d7.js → 851a3109.js} +7 -7
  306. package/_internal/851a3109.js.map +1 -0
  307. package/_internal/879fa64d.js +6 -0
  308. package/_internal/879fa64d.js.map +1 -0
  309. package/_internal/883321fd.js +17 -0
  310. package/_internal/883321fd.js.map +1 -0
  311. package/_internal/893eb653.js +4 -0
  312. package/_internal/893eb653.js.map +1 -0
  313. package/_internal/897e2dbb.js +80 -0
  314. package/_internal/897e2dbb.js.map +1 -0
  315. package/_internal/89ee5eb2.js +22 -0
  316. package/_internal/89ee5eb2.js.map +1 -0
  317. package/_internal/8acd6aff.js +82 -0
  318. package/_internal/8acd6aff.js.map +1 -0
  319. package/_internal/8d318b2b.js +138 -0
  320. package/_internal/8d318b2b.js.map +1 -0
  321. package/_internal/8e3efbc4.js +65 -0
  322. package/_internal/8e3efbc4.js.map +1 -0
  323. package/_internal/{useDisableBodyScroll-36bd7352.js → 8e8c5ab6.js} +2 -29
  324. package/_internal/8e8c5ab6.js.map +1 -0
  325. package/_internal/8fe4c01f.js +20 -0
  326. package/_internal/8fe4c01f.js.map +1 -0
  327. package/_internal/91f36a80.js +34 -0
  328. package/_internal/91f36a80.js.map +1 -0
  329. package/_internal/928fa938.js +102 -0
  330. package/_internal/928fa938.js.map +1 -0
  331. package/_internal/9361ef65.js +6 -0
  332. package/_internal/9361ef65.js.map +1 -0
  333. package/_internal/99513933.js +145 -0
  334. package/_internal/99513933.js.map +1 -0
  335. package/_internal/9976fe9a.js +28 -0
  336. package/_internal/9976fe9a.js.map +1 -0
  337. package/_internal/9a0544c4.js +34 -0
  338. package/_internal/9a0544c4.js.map +1 -0
  339. package/_internal/9a5db774.js +6 -0
  340. package/_internal/9a5db774.js.map +1 -0
  341. package/_internal/{components/radio-button-929c7bee.js → 9ae8998a.js} +21 -54
  342. package/_internal/9ae8998a.js.map +1 -0
  343. package/_internal/{ButtonRoot-a70baf82.js → 9b0c0489.js} +6 -6
  344. package/_internal/9b0c0489.js.map +1 -0
  345. package/_internal/9d063548.js +49 -0
  346. package/_internal/9d063548.js.map +1 -0
  347. package/_internal/{components/link-preview-9525e97f.js → 9e3b78fa.js} +5 -5
  348. package/_internal/9e3b78fa.js.map +1 -0
  349. package/_internal/a0a42aca.js +14 -0
  350. package/_internal/a0a42aca.js.map +1 -0
  351. package/_internal/{components/toolbar-e7c984e6.js → a1974f13.js} +2 -2
  352. package/_internal/a1974f13.js.map +1 -0
  353. package/_internal/a2b9eb60.js +90 -0
  354. package/_internal/a2b9eb60.js.map +1 -0
  355. package/_internal/a2c7c463.js +4 -0
  356. package/_internal/a2c7c463.js.map +1 -0
  357. package/_internal/a32628a1.js +4 -0
  358. package/_internal/a32628a1.js.map +1 -0
  359. package/_internal/a3f2000f.js +198 -0
  360. package/_internal/a3f2000f.js.map +1 -0
  361. package/_internal/a45cc1b9.js +128 -0
  362. package/_internal/a45cc1b9.js.map +1 -0
  363. package/_internal/a6be9f05.js +75 -0
  364. package/_internal/a6be9f05.js.map +1 -0
  365. package/_internal/{RawClickable-2c2b6a89.js → a6dc95cd.js} +3 -6
  366. package/_internal/a6dc95cd.js.map +1 -0
  367. package/_internal/a7abe967.js +20 -0
  368. package/_internal/a7abe967.js.map +1 -0
  369. package/_internal/{components/expansion-panel-df812318.js → a89bf7bc.js} +10 -9
  370. package/_internal/a89bf7bc.js.map +1 -0
  371. package/_internal/a9d0f94d.js +53 -0
  372. package/_internal/a9d0f94d.js.map +1 -0
  373. package/_internal/ab3e5463.js +39 -0
  374. package/_internal/ab3e5463.js.map +1 -0
  375. package/_internal/{components/generic-block-964b2724.js → ac3f7e4d.js} +6 -12
  376. package/_internal/ac3f7e4d.js.map +1 -0
  377. package/_internal/acd6bed6.js +6 -0
  378. package/_internal/acd6bed6.js.map +1 -0
  379. package/_internal/{close-eaf6c45a.js → ad7c38b0.js} +2 -2
  380. package/_internal/ad7c38b0.js.map +1 -0
  381. package/_internal/ae4dc9f0.js +62 -0
  382. package/_internal/ae4dc9f0.js.map +1 -0
  383. package/_internal/aeba575c.js +4 -0
  384. package/_internal/aeba575c.js.map +1 -0
  385. package/_internal/b0780b33.js +60 -0
  386. package/_internal/b0780b33.js.map +1 -0
  387. package/_internal/b0846836.js +4 -0
  388. package/_internal/b0846836.js.map +1 -0
  389. package/_internal/b1154f4b.js +14 -0
  390. package/_internal/b1154f4b.js.map +1 -0
  391. package/_internal/{Chip-8fbedc93.js → b125b718.js} +6 -22
  392. package/_internal/b125b718.js.map +1 -0
  393. package/_internal/b23a92ab.js +56 -0
  394. package/_internal/b23a92ab.js.map +1 -0
  395. package/_internal/b4018f8d.js +107 -0
  396. package/_internal/b4018f8d.js.map +1 -0
  397. package/_internal/b402784b.js +11 -0
  398. package/_internal/b402784b.js.map +1 -0
  399. package/_internal/b4dfa648.js +32 -0
  400. package/_internal/b4dfa648.js.map +1 -0
  401. package/_internal/b573621e.js +26 -0
  402. package/_internal/b573621e.js.map +1 -0
  403. package/_internal/b5edf49e.js +8 -0
  404. package/_internal/b5edf49e.js.map +1 -0
  405. package/_internal/b85a5f3f.js +57 -0
  406. package/_internal/b85a5f3f.js.map +1 -0
  407. package/_internal/b93aa71c.js +89 -0
  408. package/_internal/b93aa71c.js.map +1 -0
  409. package/_internal/b977b471.js +5 -0
  410. package/_internal/b977b471.js.map +1 -0
  411. package/_internal/{components/message-edd6a28a.js → b9e3e436.js} +9 -7
  412. package/_internal/b9e3e436.js.map +1 -0
  413. package/_internal/b9ed1f7a.js +4 -0
  414. package/_internal/b9ed1f7a.js.map +1 -0
  415. package/_internal/{components/button-c4127e86.js → bae815e2.js} +2 -4
  416. package/_internal/bae815e2.js.map +1 -0
  417. package/_internal/bb05343d.js +36 -0
  418. package/_internal/bb05343d.js.map +1 -0
  419. package/_internal/bb5fb0f9.js +28 -0
  420. package/_internal/bb5fb0f9.js.map +1 -0
  421. package/_internal/{useRovingTabIndex-7daf0f24.js → bb8088e1.js} +2 -2
  422. package/_internal/bb8088e1.js.map +1 -0
  423. package/_internal/bc393aec.js +8 -0
  424. package/_internal/bc393aec.js.map +1 -0
  425. package/_internal/{components/heading-6cc0f178.js → bd1cd49f.js} +6 -6
  426. package/_internal/bd1cd49f.js.map +1 -0
  427. package/_internal/{forwardRef-8bce732e.js → bd8b3ec8.js} +2 -2
  428. package/_internal/bd8b3ec8.js.map +1 -0
  429. package/_internal/be29f79e.js +52 -0
  430. package/_internal/be29f79e.js.map +1 -0
  431. package/_internal/bf202fa2.js +47 -0
  432. package/_internal/bf202fa2.js.map +1 -0
  433. package/_internal/bf411e5a.js +109 -0
  434. package/_internal/bf411e5a.js.map +1 -0
  435. package/_internal/c01c3bec.js +12 -0
  436. package/_internal/c01c3bec.js.map +1 -0
  437. package/_internal/{getFocusableElements-230173a8.js → c0a6dba6.js} +2 -7
  438. package/_internal/c0a6dba6.js.map +1 -0
  439. package/_internal/{components/post-block-7e63c4f4.js → c241db12.js} +5 -5
  440. package/_internal/c241db12.js.map +1 -0
  441. package/_internal/c3ccd387.js +20 -0
  442. package/_internal/c3ccd387.js.map +1 -0
  443. package/_internal/{components/alert-dialog-5326cf04.js → c51d37f8.js} +11 -9
  444. package/_internal/c51d37f8.js.map +1 -0
  445. package/_internal/c625d242.js +14 -0
  446. package/_internal/c625d242.js.map +1 -0
  447. package/_internal/c72d4f8b.js +4 -0
  448. package/_internal/c72d4f8b.js.map +1 -0
  449. package/_internal/c9a3b27f.js +6 -0
  450. package/_internal/c9a3b27f.js.map +1 -0
  451. package/_internal/c9bd0e84.js +29 -0
  452. package/_internal/c9bd0e84.js.map +1 -0
  453. package/_internal/{partitionMulti-4daccdd5.js → cb19eca6.js} +2 -2
  454. package/_internal/cb19eca6.js.map +1 -0
  455. package/_internal/cb525c68.js +165 -0
  456. package/_internal/cb525c68.js.map +1 -0
  457. package/_internal/cb7ac456.js +165 -0
  458. package/_internal/cb7ac456.js.map +1 -0
  459. package/_internal/{components/comment-block-343e1922.js → cc5cac50.js} +5 -5
  460. package/_internal/cc5cac50.js.map +1 -0
  461. package/_internal/{components/dialog-d0e090b1.js → cd8457fc.js} +17 -47
  462. package/_internal/cd8457fc.js.map +1 -0
  463. package/_internal/d0b96efd.js +8 -0
  464. package/_internal/d0b96efd.js.map +1 -0
  465. package/_internal/d3286249.js +72 -0
  466. package/_internal/d3286249.js.map +1 -0
  467. package/_internal/d57d3fc6.js +6 -0
  468. package/_internal/d57d3fc6.js.map +1 -0
  469. package/_internal/d5f5f3f5.js +18 -0
  470. package/_internal/d5f5f3f5.js.map +1 -0
  471. package/_internal/d672fc0e.js +24 -0
  472. package/_internal/d672fc0e.js.map +1 -0
  473. package/_internal/d7ee7efe.js +40 -0
  474. package/_internal/d7ee7efe.js.map +1 -0
  475. package/_internal/{ThemeContext-3181f000.js → d8ee966d.js} +2 -2
  476. package/_internal/d8ee966d.js.map +1 -0
  477. package/_internal/db88500d.js +10 -0
  478. package/_internal/db88500d.js.map +1 -0
  479. package/_internal/dbc379f8.js +45 -0
  480. package/_internal/dbc379f8.js.map +1 -0
  481. package/_internal/dbe906f1.js +179 -0
  482. package/_internal/dbe906f1.js.map +1 -0
  483. package/_internal/de52a4b9.js +20 -0
  484. package/_internal/de52a4b9.js.map +1 -0
  485. package/_internal/df688aab.js +121 -0
  486. package/_internal/df688aab.js.map +1 -0
  487. package/_internal/dfa00cf7.js +35 -0
  488. package/_internal/dfa00cf7.js.map +1 -0
  489. package/_internal/{state-db358714.js → e0398237.js} +3 -3
  490. package/_internal/e0398237.js.map +1 -0
  491. package/_internal/e142a98d.js +22 -0
  492. package/_internal/e142a98d.js.map +1 -0
  493. package/_internal/e429bd82.js +12 -0
  494. package/_internal/e429bd82.js.map +1 -0
  495. package/_internal/{check-circle-de24f857.js → e47dacb8.js} +2 -2
  496. package/_internal/e47dacb8.js.map +1 -0
  497. package/_internal/e4a199c0.js +20 -0
  498. package/_internal/e4a199c0.js.map +1 -0
  499. package/_internal/e50f2a75.js +27 -0
  500. package/_internal/e50f2a75.js.map +1 -0
  501. package/_internal/{components/slideshow-e0880d40.js → e5657997.js} +11 -32
  502. package/_internal/e5657997.js.map +1 -0
  503. package/_internal/e7aa44d1.js +13 -0
  504. package/_internal/e7aa44d1.js.map +1 -0
  505. package/_internal/e8e4d09e.js +95 -0
  506. package/_internal/e8e4d09e.js.map +1 -0
  507. package/_internal/e918f20b.js +57 -0
  508. package/_internal/e918f20b.js.map +1 -0
  509. package/_internal/e9c3b1e0.js +4 -0
  510. package/_internal/e9c3b1e0.js.map +1 -0
  511. package/_internal/ebd44733.js +7 -0
  512. package/_internal/ebd44733.js.map +1 -0
  513. package/_internal/{isComponent-78df9309.js → ebe24fd7.js} +2 -2
  514. package/_internal/ebe24fd7.js.map +1 -0
  515. package/_internal/ed03c692.js +17 -0
  516. package/_internal/ed03c692.js.map +1 -0
  517. package/_internal/eea52073.js +27 -0
  518. package/_internal/eea52073.js.map +1 -0
  519. package/_internal/eec574e6.js +40 -0
  520. package/_internal/eec574e6.js.map +1 -0
  521. package/_internal/eef5d63f.js +21 -0
  522. package/_internal/eef5d63f.js.map +1 -0
  523. package/_internal/ef907c21.js +41 -0
  524. package/_internal/ef907c21.js.map +1 -0
  525. package/_internal/{useDisableStateProps-69e16b7c.js → ef982c3d.js} +3 -3
  526. package/_internal/ef982c3d.js.map +1 -0
  527. package/_internal/f0052b9b.js +27 -0
  528. package/_internal/f0052b9b.js.map +1 -0
  529. package/_internal/f2e34298.js +75 -0
  530. package/_internal/f2e34298.js.map +1 -0
  531. package/_internal/f419ecef.js +4 -0
  532. package/_internal/f419ecef.js.map +1 -0
  533. package/_internal/f4baa1da.js +34 -0
  534. package/_internal/f4baa1da.js.map +1 -0
  535. package/_internal/{useTransitionVisibility-321fdbfa.js → f6bc7948.js} +3 -8
  536. package/_internal/f6bc7948.js.map +1 -0
  537. package/_internal/f7520b8e.js +52 -0
  538. package/_internal/f7520b8e.js.map +1 -0
  539. package/_internal/f8c49b24.js +14 -0
  540. package/_internal/f8c49b24.js.map +1 -0
  541. package/_internal/fb201a04.js +65 -0
  542. package/_internal/fb201a04.js.map +1 -0
  543. package/_internal/fb36ff46.js +51 -0
  544. package/_internal/fb36ff46.js.map +1 -0
  545. package/_internal/{components/flag-c8d690bc.js → fcc7c462.js} +5 -5
  546. package/_internal/fcc7c462.js.map +1 -0
  547. package/_internal/fcf83937.js +28 -0
  548. package/_internal/fcf83937.js.map +1 -0
  549. package/_internal/fd3e2f21.js +30 -0
  550. package/_internal/fd3e2f21.js.map +1 -0
  551. package/_internal/fdcf3942.js +157 -0
  552. package/_internal/fdcf3942.js.map +1 -0
  553. package/_internal/{components/flex-box-4eeba972.js → fdebc718.js} +2 -2
  554. package/_internal/fdebc718.js.map +1 -0
  555. package/_internal/ff96951d.js +8 -0
  556. package/_internal/ff96951d.js.map +1 -0
  557. package/_internal/{components/avatar-52bb217f.js → ffb2f7fa.js} +4 -4
  558. package/_internal/ffb2f7fa.js.map +1 -0
  559. package/index.js +95 -63
  560. package/index.js.map +1 -1
  561. package/package.json +3 -3
  562. package/utils/index.js +4 -3
  563. package/utils/index.js.map +1 -1
  564. package/_internal/Button-1b7d3b79.js.map +0 -1
  565. package/_internal/ButtonRoot-a70baf82.js.map +0 -1
  566. package/_internal/Chip-8fbedc93.js.map +0 -1
  567. package/_internal/ClickAwayProvider-7093ba23.js.map +0 -1
  568. package/_internal/DisabledStateContext-ea04260d.js.map +0 -1
  569. package/_internal/HeadingLevelProvider-ebdcb0c7.js +0 -61
  570. package/_internal/HeadingLevelProvider-ebdcb0c7.js.map +0 -1
  571. package/_internal/IconButton-e11b5e74.js.map +0 -1
  572. package/_internal/ImageCaption-6f2f4131.js.map +0 -1
  573. package/_internal/List-4e95288a.js +0 -820
  574. package/_internal/List-4e95288a.js.map +0 -1
  575. package/_internal/PopoverDialog-d85ff977.js +0 -656
  576. package/_internal/PopoverDialog-d85ff977.js.map +0 -1
  577. package/_internal/Portal-3f86608e.js.map +0 -1
  578. package/_internal/RawClickable-2c2b6a89.js.map +0 -1
  579. package/_internal/Slides-68a7d0e6.js +0 -683
  580. package/_internal/Slides-68a7d0e6.js.map +0 -1
  581. package/_internal/ThemeContext-3181f000.js.map +0 -1
  582. package/_internal/Thumbnail-22bbea7e.js +0 -315
  583. package/_internal/Thumbnail-22bbea7e.js.map +0 -1
  584. package/_internal/check-circle-de24f857.js.map +0 -1
  585. package/_internal/chevron-right-827b804a.js +0 -6
  586. package/_internal/chevron-right-827b804a.js.map +0 -1
  587. package/_internal/chevron-up-0b9c76cb.js +0 -6
  588. package/_internal/chevron-up-0b9c76cb.js.map +0 -1
  589. package/_internal/close-circle-ef5d1aac.js.map +0 -1
  590. package/_internal/close-eaf6c45a.js.map +0 -1
  591. package/_internal/components/alert-dialog-5326cf04.js.map +0 -1
  592. package/_internal/components/autocomplete-7d9581e8.js +0 -262
  593. package/_internal/components/autocomplete-7d9581e8.js.map +0 -1
  594. package/_internal/components/avatar-52bb217f.js.map +0 -1
  595. package/_internal/components/badge-ccf47147.js +0 -82
  596. package/_internal/components/badge-ccf47147.js.map +0 -1
  597. package/_internal/components/button-c4127e86.js.map +0 -1
  598. package/_internal/components/checkbox-f7751583.js.map +0 -1
  599. package/_internal/components/chip-1ed080fb.js.map +0 -1
  600. package/_internal/components/comment-block-343e1922.js.map +0 -1
  601. package/_internal/components/date-picker-b6b3dc77.js +0 -2
  602. package/_internal/components/date-picker-b6b3dc77.js.map +0 -1
  603. package/_internal/components/dialog-d0e090b1.js.map +0 -1
  604. package/_internal/components/divider-0e93aa3d.js.map +0 -1
  605. package/_internal/components/drag-handle-eec23fc2.js.map +0 -1
  606. package/_internal/components/dropdown-25170b7c.js.map +0 -1
  607. package/_internal/components/expansion-panel-df812318.js.map +0 -1
  608. package/_internal/components/flag-c8d690bc.js.map +0 -1
  609. package/_internal/components/flex-box-4eeba972.js.map +0 -1
  610. package/_internal/components/generic-block-964b2724.js.map +0 -1
  611. package/_internal/components/grid-8c08dc4b.js +0 -105
  612. package/_internal/components/grid-8c08dc4b.js.map +0 -1
  613. package/_internal/components/grid-column-99652545.js.map +0 -1
  614. package/_internal/components/heading-6cc0f178.js.map +0 -1
  615. package/_internal/components/icon-9cf785b1.js +0 -2
  616. package/_internal/components/icon-9cf785b1.js.map +0 -1
  617. package/_internal/components/image-block-4f3fe64c.js.map +0 -1
  618. package/_internal/components/image-lightbox-7b172571.js +0 -760
  619. package/_internal/components/image-lightbox-7b172571.js.map +0 -1
  620. package/_internal/components/inline-list-5ba8bb0f.js.map +0 -1
  621. package/_internal/components/input-helper-2e4e49fd.js.map +0 -1
  622. package/_internal/components/input-label-30d199c3.js.map +0 -1
  623. package/_internal/components/lightbox-10ff28f9.js.map +0 -1
  624. package/_internal/components/link-9d1bd2f6.js.map +0 -1
  625. package/_internal/components/link-preview-9525e97f.js.map +0 -1
  626. package/_internal/components/list-c8c7a6eb.js +0 -72
  627. package/_internal/components/list-c8c7a6eb.js.map +0 -1
  628. package/_internal/components/message-edd6a28a.js.map +0 -1
  629. package/_internal/components/mosaic-c8084ee8.js.map +0 -1
  630. package/_internal/components/navigation-c9121998.js +0 -226
  631. package/_internal/components/navigation-c9121998.js.map +0 -1
  632. package/_internal/components/notification-97a8a04a.js.map +0 -1
  633. package/_internal/components/popover-f93484cd.js +0 -3
  634. package/_internal/components/popover-f93484cd.js.map +0 -1
  635. package/_internal/components/post-block-7e63c4f4.js.map +0 -1
  636. package/_internal/components/progress-44bb0301.js +0 -183
  637. package/_internal/components/progress-44bb0301.js.map +0 -1
  638. package/_internal/components/progress-tracker-c9758d83.js +0 -310
  639. package/_internal/components/progress-tracker-c9758d83.js.map +0 -1
  640. package/_internal/components/radio-button-929c7bee.js.map +0 -1
  641. package/_internal/components/select-bea40e77.js +0 -459
  642. package/_internal/components/select-bea40e77.js.map +0 -1
  643. package/_internal/components/side-navigation-385825d4.js.map +0 -1
  644. package/_internal/components/skeleton-1ea8c82a.js +0 -167
  645. package/_internal/components/skeleton-1ea8c82a.js.map +0 -1
  646. package/_internal/components/slider-78cfaa67.js.map +0 -1
  647. package/_internal/components/slideshow-e0880d40.js.map +0 -1
  648. package/_internal/components/switch-24fea8d7.js.map +0 -1
  649. package/_internal/components/table-834af792.js +0 -298
  650. package/_internal/components/table-834af792.js.map +0 -1
  651. package/_internal/components/tabs-bebfe959.js +0 -299
  652. package/_internal/components/tabs-bebfe959.js.map +0 -1
  653. package/_internal/components/text-9074f440.js +0 -2
  654. package/_internal/components/text-9074f440.js.map +0 -1
  655. package/_internal/components/text-field-8597b7f7.js.map +0 -1
  656. package/_internal/components/thumbnail-4928bba2.js.map +0 -1
  657. package/_internal/components/toolbar-e7c984e6.js.map +0 -1
  658. package/_internal/components/tooltip-21018736.js +0 -328
  659. package/_internal/components/tooltip-21018736.js.map +0 -1
  660. package/_internal/components/uploader-2e1b080e.js.map +0 -1
  661. package/_internal/components/user-block-5fd51607.js.map +0 -1
  662. package/_internal/constants-43721918.js +0 -2170
  663. package/_internal/constants-43721918.js.map +0 -1
  664. package/_internal/constants-d0e3f49e.js.map +0 -1
  665. package/_internal/context-9d1336a1.js.map +0 -1
  666. package/_internal/forwardRef-8bce732e.js.map +0 -1
  667. package/_internal/getFocusableElements-230173a8.js.map +0 -1
  668. package/_internal/index-77f213b1.js.map +0 -1
  669. package/_internal/index-aa6d1d90.js +0 -437
  670. package/_internal/index-aa6d1d90.js.map +0 -1
  671. package/_internal/index-d3e86bd8.js.map +0 -1
  672. package/_internal/information-49bbeed3.js +0 -6
  673. package/_internal/information-49bbeed3.js.map +0 -1
  674. package/_internal/isComponent-78df9309.js.map +0 -1
  675. package/_internal/isComponentType-e806b848.js.map +0 -1
  676. package/_internal/mergeRefs-f0d7d6ea.js.map +0 -1
  677. package/_internal/partitionMulti-4daccdd5.js.map +0 -1
  678. package/_internal/state-db358714.js.map +0 -1
  679. package/_internal/useBooleanState-2a3d237c.js.map +0 -1
  680. package/_internal/useCallbackOnEscape-ea4d9eb4.js +0 -62
  681. package/_internal/useCallbackOnEscape-ea4d9eb4.js.map +0 -1
  682. package/_internal/useDisableBodyScroll-36bd7352.js.map +0 -1
  683. package/_internal/useDisableStateProps-69e16b7c.js.map +0 -1
  684. package/_internal/useFocusTrap-c3c6378b.js.map +0 -1
  685. package/_internal/useId-3a1facc0.js.map +0 -1
  686. package/_internal/useRovingTabIndex-7daf0f24.js.map +0 -1
  687. package/_internal/useTransitionVisibility-321fdbfa.js.map +0 -1
  688. package/_internal/wrapChildrenIconWithSpaces-fb85a743.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"a9d0f94d.js","sources":["../../src/components/date-picker/DatePicker.tsx"],"sourcesContent":["import { useState } from 'react';\n\nimport { addMonthResetDay } from '@lumx/react/utils/date/addMonthResetDay';\nimport { isDateValid } from '@lumx/react/utils/date/isDateValid';\nimport { forwardRef } from '@lumx/react/utils/react/forwardRef';\n\nimport { CLASSNAME, COMPONENT_NAME } from './constants';\nimport { DatePickerControlled } from './DatePickerControlled';\nimport { DatePickerProps } from './types';\n\n/**\n * DatePicker component.\n *\n * @param props Component props.\n * @param ref Component ref.\n * @return React element.\n */\nexport const DatePicker = forwardRef<DatePickerProps, HTMLDivElement>((props, ref) => {\n const { defaultMonth, locale, value, onChange, ...forwardedProps } = props;\n\n let referenceDate = value || defaultMonth || new Date();\n if (!isDateValid(referenceDate)) {\n // eslint-disable-next-line no-console\n console.warn(`[@lumx/react/DatePicker] Invalid date provided ${referenceDate}`);\n referenceDate = new Date();\n }\n\n const [selectedMonth, setSelectedMonth] = useState(referenceDate);\n const setPrevMonth = () => setSelectedMonth((current) => addMonthResetDay(current, -1));\n const setNextMonth = () => setSelectedMonth((current) => addMonthResetDay(current, +1));\n\n const onDatePickerChange = (newDate?: Date) => {\n onChange(newDate);\n };\n\n return (\n <DatePickerControlled\n ref={ref}\n {...forwardedProps}\n defaultMonth={defaultMonth}\n locale={locale}\n value={value}\n onPrevMonthChange={setPrevMonth}\n onNextMonthChange={setNextMonth}\n selectedMonth={selectedMonth}\n onChange={onDatePickerChange}\n onMonthChange={setSelectedMonth}\n />\n );\n});\nDatePicker.displayName = COMPONENT_NAME;\nDatePicker.className = CLASSNAME;\n"],"names":["DatePicker","forwardRef","props","ref","defaultMonth","locale","value","onChange","forwardedProps","referenceDate","Date","isDateValid","console","warn","selectedMonth","setSelectedMonth","useState","setPrevMonth","current","addMonthResetDay","setNextMonth","onDatePickerChange","newDate","_jsx","DatePickerControlled","onPrevMonthChange","onNextMonthChange","onMonthChange","displayName","COMPONENT_NAME","className","CLASSNAME"],"mappings":";;;;;;;;AAUA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAMA,UAAU,GAAGC,UAAU,CAAkC,CAACC,KAAK,EAAEC,GAAG,KAAK;EAClF,MAAM;IAAEC,YAAY;IAAEC,MAAM;IAAEC,KAAK;IAAEC,QAAQ;IAAE,GAAGC,cAAAA;AAAe,GAAC,GAAGN,KAAK,CAAA;EAE1E,IAAIO,aAAa,GAAGH,KAAK,IAAIF,YAAY,IAAI,IAAIM,IAAI,EAAE,CAAA;AACvD,EAAA,IAAI,CAACC,WAAW,CAACF,aAAa,CAAC,EAAE;AAC7B;AACAG,IAAAA,OAAO,CAACC,IAAI,CAAC,CAAkDJ,+CAAAA,EAAAA,aAAa,EAAE,CAAC,CAAA;AAC/EA,IAAAA,aAAa,GAAG,IAAIC,IAAI,EAAE,CAAA;AAC9B,GAAA;EAEA,MAAM,CAACI,aAAa,EAAEC,gBAAgB,CAAC,GAAGC,QAAQ,CAACP,aAAa,CAAC,CAAA;AACjE,EAAA,MAAMQ,YAAY,GAAGA,MAAMF,gBAAgB,CAAEG,OAAO,IAAKC,gBAAgB,CAACD,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;AACvF,EAAA,MAAME,YAAY,GAAGA,MAAML,gBAAgB,CAAEG,OAAO,IAAKC,gBAAgB,CAACD,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;EAEvF,MAAMG,kBAAkB,GAAIC,OAAc,IAAK;IAC3Cf,QAAQ,CAACe,OAAO,CAAC,CAAA;GACpB,CAAA;EAED,oBACIC,GAAA,CAACC,oBAAoB,EAAA;AACjBrB,IAAAA,GAAG,EAAEA,GAAI;AAAA,IAAA,GACLK,cAAc;AAClBJ,IAAAA,YAAY,EAAEA,YAAa;AAC3BC,IAAAA,MAAM,EAAEA,MAAO;AACfC,IAAAA,KAAK,EAAEA,KAAM;AACbmB,IAAAA,iBAAiB,EAAER,YAAa;AAChCS,IAAAA,iBAAiB,EAAEN,YAAa;AAChCN,IAAAA,aAAa,EAAEA,aAAc;AAC7BP,IAAAA,QAAQ,EAAEc,kBAAmB;AAC7BM,IAAAA,aAAa,EAAEZ,gBAAAA;AAAiB,GACnC,CAAC,CAAA;AAEV,CAAC,EAAC;AACFf,UAAU,CAAC4B,WAAW,GAAGC,cAAc,CAAA;AACvC7B,UAAU,CAAC8B,SAAS,GAAGC,SAAS;;;;"}
@@ -0,0 +1,39 @@
1
+ import { useEffect } from 'react';
2
+ import isEmpty from 'lodash/isEmpty';
3
+
4
+ const EVENT_TYPES = ['mousedown', 'touchstart'];
5
+ function isClickAway(targets, refs) {
6
+ // The targets elements are not contained in any of the listed element references.
7
+ return !refs.some(ref => targets.some(target => ref?.current?.contains(target)));
8
+ }
9
+ /**
10
+ * Listen to clicks away from the given elements and callback the passed in function.
11
+ *
12
+ * Warning: If you need to detect click away on nested React portals, please use the `ClickAwayProvider` component.
13
+ */
14
+ function useClickAway({
15
+ callback,
16
+ childrenRefs
17
+ }) {
18
+ useEffect(() => {
19
+ const {
20
+ current: currentRefs
21
+ } = childrenRefs;
22
+ if (!callback || !currentRefs || isEmpty(currentRefs)) {
23
+ return undefined;
24
+ }
25
+ const listener = evt => {
26
+ const targets = [evt.composedPath?.()[0], evt.target];
27
+ if (isClickAway(targets, currentRefs)) {
28
+ callback(evt);
29
+ }
30
+ };
31
+ EVENT_TYPES.forEach(evtType => document.addEventListener(evtType, listener));
32
+ return () => {
33
+ EVENT_TYPES.forEach(evtType => document.removeEventListener(evtType, listener));
34
+ };
35
+ }, [callback, childrenRefs]);
36
+ }
37
+
38
+ export { useClickAway };
39
+ //# sourceMappingURL=ab3e5463.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ab3e5463.js","sources":["../../src/hooks/useClickAway.tsx"],"sourcesContent":["import { RefObject, useEffect } from 'react';\n\nimport { Falsy } from '@lumx/react/utils/type';\n\nimport isEmpty from 'lodash/isEmpty';\n\nconst EVENT_TYPES = ['mousedown', 'touchstart'];\n\nfunction isClickAway(targets: HTMLElement[], refs: Array<RefObject<HTMLElement>>): boolean {\n // The targets elements are not contained in any of the listed element references.\n return !refs.some((ref) => targets.some((target) => ref?.current?.contains(target)));\n}\n\nexport interface ClickAwayParameters {\n /**\n * A callback function to call when the user clicks away from the elements.\n */\n callback: EventListener | Falsy;\n /**\n * Elements considered within the click away context (clicking outside them will trigger the click away callback).\n */\n childrenRefs: RefObject<Array<RefObject<HTMLElement>>>;\n}\n\n/**\n * Listen to clicks away from the given elements and callback the passed in function.\n *\n * Warning: If you need to detect click away on nested React portals, please use the `ClickAwayProvider` component.\n */\nexport function useClickAway({ callback, childrenRefs }: ClickAwayParameters): void {\n useEffect(() => {\n const { current: currentRefs } = childrenRefs;\n if (!callback || !currentRefs || isEmpty(currentRefs)) {\n return undefined;\n }\n const listener: EventListener = (evt) => {\n const targets = [evt.composedPath?.()[0], evt.target] as HTMLElement[];\n if (isClickAway(targets, currentRefs)) {\n callback(evt);\n }\n };\n\n EVENT_TYPES.forEach((evtType) => document.addEventListener(evtType, listener));\n return () => {\n EVENT_TYPES.forEach((evtType) => document.removeEventListener(evtType, listener));\n };\n }, [callback, childrenRefs]);\n}\n"],"names":["EVENT_TYPES","isClickAway","targets","refs","some","ref","target","current","contains","useClickAway","callback","childrenRefs","useEffect","currentRefs","isEmpty","undefined","listener","evt","composedPath","forEach","evtType","document","addEventListener","removeEventListener"],"mappings":";;;AAMA,MAAMA,WAAW,GAAG,CAAC,WAAW,EAAE,YAAY,CAAC,CAAA;AAE/C,SAASC,WAAWA,CAACC,OAAsB,EAAEC,IAAmC,EAAW;AACvF;EACA,OAAO,CAACA,IAAI,CAACC,IAAI,CAAEC,GAAG,IAAKH,OAAO,CAACE,IAAI,CAAEE,MAAM,IAAKD,GAAG,EAAEE,OAAO,EAAEC,QAAQ,CAACF,MAAM,CAAC,CAAC,CAAC,CAAA;AACxF,CAAA;AAaA;AACA;AACA;AACA;AACA;AACO,SAASG,YAAYA,CAAC;EAAEC,QAAQ;AAAEC,EAAAA,YAAAA;AAAkC,CAAC,EAAQ;AAChFC,EAAAA,SAAS,CAAC,MAAM;IACZ,MAAM;AAAEL,MAAAA,OAAO,EAAEM,WAAAA;AAAY,KAAC,GAAGF,YAAY,CAAA;IAC7C,IAAI,CAACD,QAAQ,IAAI,CAACG,WAAW,IAAIC,OAAO,CAACD,WAAW,CAAC,EAAE;AACnD,MAAA,OAAOE,SAAS,CAAA;AACpB,KAAA;IACA,MAAMC,QAAuB,GAAIC,GAAG,IAAK;AACrC,MAAA,MAAMf,OAAO,GAAG,CAACe,GAAG,CAACC,YAAY,IAAI,CAAC,CAAC,CAAC,EAAED,GAAG,CAACX,MAAM,CAAkB,CAAA;AACtE,MAAA,IAAIL,WAAW,CAACC,OAAO,EAAEW,WAAW,CAAC,EAAE;QACnCH,QAAQ,CAACO,GAAG,CAAC,CAAA;AACjB,OAAA;KACH,CAAA;AAEDjB,IAAAA,WAAW,CAACmB,OAAO,CAAEC,OAAO,IAAKC,QAAQ,CAACC,gBAAgB,CAACF,OAAO,EAAEJ,QAAQ,CAAC,CAAC,CAAA;AAC9E,IAAA,OAAO,MAAM;AACThB,MAAAA,WAAW,CAACmB,OAAO,CAAEC,OAAO,IAAKC,QAAQ,CAACE,mBAAmB,CAACH,OAAO,EAAEJ,QAAQ,CAAC,CAAC,CAAA;KACpF,CAAA;AACL,GAAC,EAAE,CAACN,QAAQ,EAAEC,YAAY,CAAC,CAAC,CAAA;AAChC;;;;"}
@@ -2,14 +2,13 @@ import React__default, { Children } from 'react';
2
2
  import classNames from 'classnames';
3
3
  import isEmpty from 'lodash/isEmpty';
4
4
  import noop from 'lodash/noop';
5
- import { i as isComponentType } from '../isComponentType-e806b848.js';
5
+ import { isComponentType } from './111e65e5.js';
6
6
  import { getRootClassName } from '@lumx/core/js/utils/className';
7
- import { p as partitionMulti } from '../partitionMulti-4daccdd5.js';
8
- import { f as forwardRef } from '../forwardRef-8bce732e.js';
7
+ import { partitionMulti } from './cb19eca6.js';
8
+ import { forwardRef } from './bd8b3ec8.js';
9
9
  import { jsxs } from 'react/jsx-runtime';
10
10
  import { Size, Orientation } from '@lumx/core/js/constants';
11
- import { FlexBox } from './flex-box-4eeba972.js';
12
- import pick from 'lodash/pick';
11
+ import { FlexBox } from './fdebc718.js';
13
12
 
14
13
  /**
15
14
  * Component display name.
@@ -116,10 +115,5 @@ const GenericBlock = Object.assign(BaseGenericBlock, {
116
115
  Actions
117
116
  });
118
117
 
119
- /**
120
- * Accepted gap sizes for the generic block.
121
- */
122
- const GenericBlockGapSize = pick(Size, ['tiny', 'regular', 'medium', 'big', 'huge']);
123
-
124
- export { GenericBlock, GenericBlockGapSize };
125
- //# sourceMappingURL=generic-block-964b2724.js.map
118
+ export { GenericBlock };
119
+ //# sourceMappingURL=ac3f7e4d.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ac3f7e4d.js","sources":["../../src/components/generic-block/GenericBlock.tsx"],"sourcesContent":["import React, { Children, ReactElement, ReactNode } from 'react';\n\nimport classNames from 'classnames';\nimport isEmpty from 'lodash/isEmpty';\nimport noop from 'lodash/noop';\n\nimport { Comp, isComponentType } from '@lumx/react/utils/type';\nimport { getRootClassName } from '@lumx/core/js/utils/className';\nimport { partitionMulti } from '@lumx/react/utils/partitionMulti';\nimport { Orientation, Size, FlexBox, FlexBoxProps } from '@lumx/react';\nimport { GenericBlockGapSize } from '@lumx/react/components/generic-block/constants';\nimport { forwardRef } from '@lumx/react/utils/react/forwardRef';\n\nexport interface GenericBlockProps extends FlexBoxProps {\n /**\n * Component to use as visual element.\n */\n figure?: ReactNode;\n /**\n * Actions to set after the main content.\n */\n actions?: ReactNode;\n /**\n * Main content to display or sections components\n * ({@see GenericBlock.Figure}, {@see GenericBlock.Content} & {@see GenericBlock.Actions})\n */\n children: ReactNode;\n /**\n * Orientation of the 3 sections\n */\n orientation?: FlexBoxProps['orientation'];\n /**\n * Horizontal alignment.\n */\n hAlign?: FlexBoxProps['hAlign'];\n /**\n * Vertical alignment.\n */\n vAlign?: FlexBoxProps['vAlign'];\n /**\n * The props to forward to the content.\n * By default, the content will have the same alignment as wrapper.\n */\n contentProps?: Omit<FlexBoxProps, 'children'>;\n /**\n * props to forward to the actions element.\n */\n actionsProps?: Omit<FlexBoxProps, 'children'>;\n /**\n * props to forward to the figure element.\n */\n figureProps?: Omit<FlexBoxProps, 'children'>;\n /**\n * Gap space between sections.\n */\n gap?: GenericBlockGapSize;\n}\n\n/**\n * Component display name.\n */\nconst COMPONENT_NAME = 'GenericBlock';\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<GenericBlockProps> = {\n gap: Size.big,\n orientation: Orientation.horizontal,\n};\n\ntype BaseGenericBlock = Comp<GenericBlockProps, HTMLDivElement>;\n\ninterface GenericBlockSectionProps extends FlexBoxProps {\n /**\n * Gap space between items.\n */\n gap?: GenericBlockGapSize;\n}\n\ninterface GenericBlock extends BaseGenericBlock {\n /**\n * Use `GenericBlock.Figure` component as children of the `GenericBlock` component as an alternative way to inject\n * the \"figure\" section of the block (instead of using `figure` and `figureProps` props).\n */\n Figure: Comp<GenericBlockSectionProps>;\n /**\n * Use `GenericBlock.Content` component as children of the `GenericBlock` component as an alternative way to inject\n * the \"content\" section of the block (instead of using `content` and `contentProps` props).\n */\n Content: Comp<GenericBlockSectionProps>;\n /**\n * Use `GenericBlock.Actions` component as children of the `GenericBlock` component as an alternative way to inject\n * the \"actions\" section of the block (instead of using `actions` and `actionsProps` props).\n */\n Actions: Comp<GenericBlockSectionProps>;\n}\n\nconst Figure = noop.bind({}) as Comp<FlexBoxProps>;\nconst isFigure = isComponentType(Figure);\n\nconst Content = noop.bind({}) as Comp<FlexBoxProps>;\nconst isContent = isComponentType(Content);\n\nconst Actions = noop.bind({}) as Comp<FlexBoxProps>;\nconst isActions = isComponentType(Actions);\n\n/**\n * The GenericBlock is a layout component made of 3 sections that can be\n * displayed either horizontally of vertically with the same gap between each section.\n *\n * The sections are:\n * - `Figure` => A visual element to display before the main content.\n * - `Content` => The main content displayed\n * - `Actions` => One or more actions to set after the element.\n *\n * @see https://www.figma.com/file/lzzrQmsfaXRaOyRfoEogPZ/DS%3A-playground?node-id=1%3A4076\n */\nconst BaseGenericBlock: BaseGenericBlock = forwardRef((props, ref) => {\n const {\n className,\n figure,\n figureProps,\n children,\n actions,\n actionsProps,\n gap = DEFAULT_PROPS.gap,\n orientation = DEFAULT_PROPS.orientation,\n contentProps,\n ...forwardedProps\n } = props;\n\n const sections = React.useMemo(() => {\n // Split children by section type\n const [[figureChild], [contentChild], [actionsChild], ...otherChildren] = partitionMulti(\n Children.toArray(children),\n [isFigure, isContent, isActions],\n );\n return {\n figureChild,\n figureChildProps: (figureChild as ReactElement)?.props,\n contentChild,\n contentChildProps: (contentChild as ReactElement)?.props,\n actionsChild,\n actionsChildProps: (actionsChild as ReactElement)?.props,\n otherChildren: otherChildren.filter((child) => !isEmpty(child)),\n };\n }, [children]);\n\n return (\n <FlexBox\n ref={ref}\n className={classNames(className, CLASSNAME)}\n gap={gap}\n orientation={orientation}\n {...forwardedProps}\n >\n {(figure || sections.figureChildProps?.children) && (\n <FlexBox\n ref={(sections.figureChild as any)?.ref}\n vAlign={forwardedProps.vAlign}\n hAlign={forwardedProps.hAlign}\n {...figureProps}\n {...sections.figureChildProps}\n className={classNames(\n figureProps?.className,\n sections.figureChildProps?.className,\n `${CLASSNAME}__figure`,\n )}\n >\n {figure}\n {sections.figureChildProps?.children}\n </FlexBox>\n )}\n\n {(sections.contentChildProps?.children || sections.otherChildren.length > 0) && (\n <FlexBox\n ref={(sections.contentChild as any)?.ref}\n orientation={Orientation.vertical}\n fillSpace\n vAlign={forwardedProps.vAlign}\n hAlign={forwardedProps.hAlign}\n {...contentProps}\n {...sections.contentChildProps}\n className={classNames(\n contentProps?.className,\n sections.contentChildProps?.className,\n `${CLASSNAME}__content`,\n )}\n >\n {sections.contentChildProps?.children}\n {sections.otherChildren}\n </FlexBox>\n )}\n\n {(actions || sections.actionsChildProps?.children) && (\n <FlexBox\n ref={(sections.actionsChild as any)?.ref}\n vAlign={forwardedProps.vAlign}\n hAlign={forwardedProps.hAlign}\n {...actionsProps}\n {...sections.actionsChildProps}\n className={classNames(\n actionsProps?.className,\n sections.actionsChildProps?.className,\n `${CLASSNAME}__actions`,\n )}\n >\n {actions}\n {sections.actionsChildProps?.children}\n </FlexBox>\n )}\n </FlexBox>\n );\n});\nBaseGenericBlock.displayName = COMPONENT_NAME;\nBaseGenericBlock.className = CLASSNAME;\nBaseGenericBlock.defaultProps = DEFAULT_PROPS;\n\nexport const GenericBlock: GenericBlock = Object.assign(BaseGenericBlock, { Figure, Content, Actions });\n"],"names":["COMPONENT_NAME","CLASSNAME","getRootClassName","DEFAULT_PROPS","gap","Size","big","orientation","Orientation","horizontal","Figure","noop","bind","isFigure","isComponentType","Content","isContent","Actions","isActions","BaseGenericBlock","forwardRef","props","ref","className","figure","figureProps","children","actions","actionsProps","contentProps","forwardedProps","sections","React","useMemo","figureChild","contentChild","actionsChild","otherChildren","partitionMulti","Children","toArray","figureChildProps","contentChildProps","actionsChildProps","filter","child","isEmpty","_jsxs","FlexBox","classNames","vAlign","hAlign","length","vertical","fillSpace","displayName","defaultProps","GenericBlock","Object","assign"],"mappings":";;;;;;;;;;;;AA0DA;AACA;AACA;AACA,MAAMA,cAAc,GAAG,cAAc,CAAA;;AAErC;AACA;AACA;AACA,MAAMC,SAAS,GAAGC,gBAAgB,CAACF,cAAc,CAAC,CAAA;;AAElD;AACA;AACA;AACA,MAAMG,aAAyC,GAAG;EAC9CC,GAAG,EAAEC,IAAI,CAACC,GAAG;EACbC,WAAW,EAAEC,WAAW,CAACC,UAAAA;AAC7B,CAAC,CAAA;AA6BD,MAAMC,MAAM,GAAGC,IAAI,CAACC,IAAI,CAAC,EAAE,CAAuB,CAAA;AAClD,MAAMC,QAAQ,GAAGC,eAAe,CAACJ,MAAM,CAAC,CAAA;AAExC,MAAMK,OAAO,GAAGJ,IAAI,CAACC,IAAI,CAAC,EAAE,CAAuB,CAAA;AACnD,MAAMI,SAAS,GAAGF,eAAe,CAACC,OAAO,CAAC,CAAA;AAE1C,MAAME,OAAO,GAAGN,IAAI,CAACC,IAAI,CAAC,EAAE,CAAuB,CAAA;AACnD,MAAMM,SAAS,GAAGJ,eAAe,CAACG,OAAO,CAAC,CAAA;;AAE1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAME,gBAAkC,GAAGC,UAAU,CAAC,CAACC,KAAK,EAAEC,GAAG,KAAK;EAClE,MAAM;IACFC,SAAS;IACTC,MAAM;IACNC,WAAW;IACXC,QAAQ;IACRC,OAAO;IACPC,YAAY;IACZxB,GAAG,GAAGD,aAAa,CAACC,GAAG;IACvBG,WAAW,GAAGJ,aAAa,CAACI,WAAW;IACvCsB,YAAY;IACZ,GAAGC,cAAAA;AACP,GAAC,GAAGT,KAAK,CAAA;AAET,EAAA,MAAMU,QAAQ,GAAGC,cAAK,CAACC,OAAO,CAAC,MAAM;AACjC;AACA,IAAA,MAAM,CAAC,CAACC,WAAW,CAAC,EAAE,CAACC,YAAY,CAAC,EAAE,CAACC,YAAY,CAAC,EAAE,GAAGC,aAAa,CAAC,GAAGC,cAAc,CACpFC,QAAQ,CAACC,OAAO,CAACd,QAAQ,CAAC,EAC1B,CAACb,QAAQ,EAAEG,SAAS,EAAEE,SAAS,CACnC,CAAC,CAAA;IACD,OAAO;MACHgB,WAAW;MACXO,gBAAgB,EAAGP,WAAW,EAAmBb,KAAK;MACtDc,YAAY;MACZO,iBAAiB,EAAGP,YAAY,EAAmBd,KAAK;MACxDe,YAAY;MACZO,iBAAiB,EAAGP,YAAY,EAAmBf,KAAK;MACxDgB,aAAa,EAAEA,aAAa,CAACO,MAAM,CAAEC,KAAK,IAAK,CAACC,OAAO,CAACD,KAAK,CAAC,CAAA;KACjE,CAAA;AACL,GAAC,EAAE,CAACnB,QAAQ,CAAC,CAAC,CAAA;EAEd,oBACIqB,IAAA,CAACC,OAAO,EAAA;AACJ1B,IAAAA,GAAG,EAAEA,GAAI;AACTC,IAAAA,SAAS,EAAE0B,UAAU,CAAC1B,SAAS,EAAEtB,SAAS,CAAE;AAC5CG,IAAAA,GAAG,EAAEA,GAAI;AACTG,IAAAA,WAAW,EAAEA,WAAY;AAAA,IAAA,GACrBuB,cAAc;AAAAJ,IAAAA,QAAA,EAEjB,CAAA,CAACF,MAAM,IAAIO,QAAQ,CAACU,gBAAgB,EAAEf,QAAQ,kBAC3CqB,IAAA,CAACC,OAAO,EAAA;AACJ1B,MAAAA,GAAG,EAAGS,QAAQ,CAACG,WAAW,EAAUZ,GAAI;MACxC4B,MAAM,EAAEpB,cAAc,CAACoB,MAAO;MAC9BC,MAAM,EAAErB,cAAc,CAACqB,MAAO;AAAA,MAAA,GAC1B1B,WAAW;MAAA,GACXM,QAAQ,CAACU,gBAAgB;AAC7BlB,MAAAA,SAAS,EAAE0B,UAAU,CACjBxB,WAAW,EAAEF,SAAS,EACtBQ,QAAQ,CAACU,gBAAgB,EAAElB,SAAS,EACpC,CAAGtB,EAAAA,SAAS,UAChB,CAAE;AAAAyB,MAAAA,QAAA,GAEDF,MAAM,EACNO,QAAQ,CAACU,gBAAgB,EAAEf,QAAQ,CAAA;AAAA,KAC/B,CACZ,EAEA,CAACK,QAAQ,CAACW,iBAAiB,EAAEhB,QAAQ,IAAIK,QAAQ,CAACM,aAAa,CAACe,MAAM,GAAG,CAAC,kBACvEL,IAAA,CAACC,OAAO,EAAA;AACJ1B,MAAAA,GAAG,EAAGS,QAAQ,CAACI,YAAY,EAAUb,GAAI;MACzCf,WAAW,EAAEC,WAAW,CAAC6C,QAAS;MAClCC,SAAS,EAAA,IAAA;MACTJ,MAAM,EAAEpB,cAAc,CAACoB,MAAO;MAC9BC,MAAM,EAAErB,cAAc,CAACqB,MAAO;AAAA,MAAA,GAC1BtB,YAAY;MAAA,GACZE,QAAQ,CAACW,iBAAiB;AAC9BnB,MAAAA,SAAS,EAAE0B,UAAU,CACjBpB,YAAY,EAAEN,SAAS,EACvBQ,QAAQ,CAACW,iBAAiB,EAAEnB,SAAS,EACrC,CAAGtB,EAAAA,SAAS,WAChB,CAAE;MAAAyB,QAAA,EAAA,CAEDK,QAAQ,CAACW,iBAAiB,EAAEhB,QAAQ,EACpCK,QAAQ,CAACM,aAAa,CAAA;AAAA,KAClB,CACZ,EAEA,CAACV,OAAO,IAAII,QAAQ,CAACY,iBAAiB,EAAEjB,QAAQ,kBAC7CqB,IAAA,CAACC,OAAO,EAAA;AACJ1B,MAAAA,GAAG,EAAGS,QAAQ,CAACK,YAAY,EAAUd,GAAI;MACzC4B,MAAM,EAAEpB,cAAc,CAACoB,MAAO;MAC9BC,MAAM,EAAErB,cAAc,CAACqB,MAAO;AAAA,MAAA,GAC1BvB,YAAY;MAAA,GACZG,QAAQ,CAACY,iBAAiB;AAC9BpB,MAAAA,SAAS,EAAE0B,UAAU,CACjBrB,YAAY,EAAEL,SAAS,EACvBQ,QAAQ,CAACY,iBAAiB,EAAEpB,SAAS,EACrC,CAAGtB,EAAAA,SAAS,WAChB,CAAE;AAAAyB,MAAAA,QAAA,GAEDC,OAAO,EACPI,QAAQ,CAACY,iBAAiB,EAAEjB,QAAQ,CAAA;AAAA,KAChC,CACZ,CAAA;AAAA,GACI,CAAC,CAAA;AAElB,CAAC,CAAC,CAAA;AACFP,gBAAgB,CAACoC,WAAW,GAAGvD,cAAc,CAAA;AAC7CmB,gBAAgB,CAACI,SAAS,GAAGtB,SAAS,CAAA;AACtCkB,gBAAgB,CAACqC,YAAY,GAAGrD,aAAa,CAAA;AAEtC,MAAMsD,YAA0B,GAAGC,MAAM,CAACC,MAAM,CAACxC,gBAAgB,EAAE;EAAET,MAAM;EAAEK,OAAO;AAAEE,EAAAA,OAAAA;AAAQ,CAAC;;;;"}
@@ -0,0 +1,6 @@
1
+ import { __require as requireReactIs } from './e4a199c0.js';
2
+
3
+ var reactIsExports = requireReactIs();
4
+
5
+ export { reactIsExports as r };
6
+ //# sourceMappingURL=acd6bed6.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"acd6bed6.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;"}
@@ -1,4 +1,4 @@
1
1
  const mdiClose = 'M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z';
2
2
 
3
- export { mdiClose as m };
4
- //# sourceMappingURL=close-eaf6c45a.js.map
3
+ export { mdiClose };
4
+ //# sourceMappingURL=ad7c38b0.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ad7c38b0.js","sources":["../../../lumx-icons/dist/esm/close.js"],"sourcesContent":["export const mdiClose = 'M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z';"],"names":["mdiClose"],"mappings":"AAAO,MAAMA,QAAQ,GAAG;;;;"}
@@ -0,0 +1,62 @@
1
+ import classNames from 'classnames';
2
+ import { useTabProviderContext } from './e0398237.js';
3
+ import './6af61e2f.js';
4
+ import { handleBasicClasses } from '@lumx/core/js/utils/className';
5
+ import { forwardRef } from './bd8b3ec8.js';
6
+ import { jsx } from 'react/jsx-runtime';
7
+ import { CSS_PREFIX } from '@lumx/core/js/constants';
8
+
9
+ /**
10
+ * Component display name.
11
+ */
12
+ const COMPONENT_NAME = 'ProgressTrackerStepPanel';
13
+
14
+ /**
15
+ * Component default class name and class prefix.
16
+ */
17
+ const CLASSNAME = `${CSS_PREFIX}-step-panel`;
18
+
19
+ /**
20
+ * Component default props.
21
+ */
22
+ const DEFAULT_PROPS = {};
23
+
24
+ /**
25
+ * ProgressTrackerStepPanel component.
26
+ *
27
+ * Implements WAI-ARIA `tabpanel` role {@see https://www.w3.org/TR/wai-aria-practices-1.1/examples/tabs/tabs-1/tabs.html#rps_label}
28
+ *
29
+ * @param props Component props.
30
+ * @param ref Component ref.
31
+ * @return React element.
32
+ */
33
+ const ProgressTrackerStepPanel = forwardRef((props, ref) => {
34
+ const {
35
+ children,
36
+ id,
37
+ className,
38
+ isActive: propIsActive,
39
+ ...forwardedProps
40
+ } = props;
41
+ const state = useTabProviderContext('tabPanel', id);
42
+ const isActive = propIsActive || state?.isActive;
43
+ return /*#__PURE__*/jsx("div", {
44
+ ref: ref,
45
+ ...forwardedProps,
46
+ id: state?.tabPanelId,
47
+ className: classNames(className, handleBasicClasses({
48
+ prefix: CLASSNAME,
49
+ isActive
50
+ })),
51
+ role: "tabpanel",
52
+ tabIndex: isActive ? 0 : -1,
53
+ "aria-labelledby": state?.tabId,
54
+ children: (!state?.isLazy || isActive) && children
55
+ });
56
+ });
57
+ ProgressTrackerStepPanel.displayName = COMPONENT_NAME;
58
+ ProgressTrackerStepPanel.className = CLASSNAME;
59
+ ProgressTrackerStepPanel.defaultProps = DEFAULT_PROPS;
60
+
61
+ export { ProgressTrackerStepPanel };
62
+ //# sourceMappingURL=ae4dc9f0.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ae4dc9f0.js","sources":["../../src/components/progress-tracker/ProgressTrackerStepPanel.tsx"],"sourcesContent":["import classNames from 'classnames';\n\nimport { useTabProviderContext } from '@lumx/react/components/tabs/state';\nimport { CSS_PREFIX } from '@lumx/react/constants';\nimport { GenericProps } from '@lumx/react/utils/type';\nimport { handleBasicClasses } from '@lumx/core/js/utils/className';\nimport { forwardRef } from '@lumx/react/utils/react/forwardRef';\n\n/**\n * Defines the props of the component.\n */\nexport interface ProgressTrackerStepPanelProps extends GenericProps {\n /** Native id property. */\n id?: string;\n /** Whether the step is active or not. */\n isActive?: boolean;\n /** Children */\n children?: React.ReactNode;\n}\n\n/**\n * Component display name.\n */\nconst COMPONENT_NAME = 'ProgressTrackerStepPanel';\n\n/**\n * Component default class name and class prefix.\n */\nconst CLASSNAME = `${CSS_PREFIX}-step-panel`;\n\n/**\n * Component default props.\n */\nconst DEFAULT_PROPS: Partial<ProgressTrackerStepPanelProps> = {};\n\n/**\n * ProgressTrackerStepPanel component.\n *\n * Implements WAI-ARIA `tabpanel` role {@see https://www.w3.org/TR/wai-aria-practices-1.1/examples/tabs/tabs-1/tabs.html#rps_label}\n *\n * @param props Component props.\n * @param ref Component ref.\n * @return React element.\n */\nexport const ProgressTrackerStepPanel = forwardRef<ProgressTrackerStepPanelProps, HTMLDivElement>((props, ref) => {\n const { children, id, className, isActive: propIsActive, ...forwardedProps } = props;\n\n const state = useTabProviderContext('tabPanel', id);\n const isActive = propIsActive || state?.isActive;\n\n return (\n <div\n ref={ref}\n {...forwardedProps}\n id={state?.tabPanelId}\n className={classNames(className, handleBasicClasses({ prefix: CLASSNAME, isActive }))}\n role=\"tabpanel\"\n tabIndex={isActive ? 0 : -1}\n aria-labelledby={state?.tabId}\n >\n {(!state?.isLazy || isActive) && children}\n </div>\n );\n});\nProgressTrackerStepPanel.displayName = COMPONENT_NAME;\nProgressTrackerStepPanel.className = CLASSNAME;\nProgressTrackerStepPanel.defaultProps = DEFAULT_PROPS;\n"],"names":["COMPONENT_NAME","CLASSNAME","CSS_PREFIX","DEFAULT_PROPS","ProgressTrackerStepPanel","forwardRef","props","ref","children","id","className","isActive","propIsActive","forwardedProps","state","useTabProviderContext","_jsx","tabPanelId","classNames","handleBasicClasses","prefix","role","tabIndex","tabId","isLazy","displayName","defaultProps"],"mappings":";;;;;;;;AAoBA;AACA;AACA;AACA,MAAMA,cAAc,GAAG,0BAA0B,CAAA;;AAEjD;AACA;AACA;AACA,MAAMC,SAAS,GAAG,CAAGC,EAAAA,UAAU,CAAa,WAAA,CAAA,CAAA;;AAE5C;AACA;AACA;AACA,MAAMC,aAAqD,GAAG,EAAE,CAAA;;AAEhE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAMC,wBAAwB,GAAGC,UAAU,CAAgD,CAACC,KAAK,EAAEC,GAAG,KAAK;EAC9G,MAAM;IAAEC,QAAQ;IAAEC,EAAE;IAAEC,SAAS;AAAEC,IAAAA,QAAQ,EAAEC,YAAY;IAAE,GAAGC,cAAAA;AAAe,GAAC,GAAGP,KAAK,CAAA;AAEpF,EAAA,MAAMQ,KAAK,GAAGC,qBAAqB,CAAC,UAAU,EAAEN,EAAE,CAAC,CAAA;AACnD,EAAA,MAAME,QAAQ,GAAGC,YAAY,IAAIE,KAAK,EAAEH,QAAQ,CAAA;AAEhD,EAAA,oBACIK,GAAA,CAAA,KAAA,EAAA;AACIT,IAAAA,GAAG,EAAEA,GAAI;AAAA,IAAA,GACLM,cAAc;IAClBJ,EAAE,EAAEK,KAAK,EAAEG,UAAW;AACtBP,IAAAA,SAAS,EAAEQ,UAAU,CAACR,SAAS,EAAES,kBAAkB,CAAC;AAAEC,MAAAA,MAAM,EAAEnB,SAAS;AAAEU,MAAAA,QAAAA;AAAS,KAAC,CAAC,CAAE;AACtFU,IAAAA,IAAI,EAAC,UAAU;AACfC,IAAAA,QAAQ,EAAEX,QAAQ,GAAG,CAAC,GAAG,CAAC,CAAE;IAC5B,iBAAiBG,EAAAA,KAAK,EAAES,KAAM;IAAAf,QAAA,EAE7B,CAAC,CAACM,KAAK,EAAEU,MAAM,IAAIb,QAAQ,KAAKH,QAAAA;AAAQ,GACxC,CAAC,CAAA;AAEd,CAAC,EAAC;AACFJ,wBAAwB,CAACqB,WAAW,GAAGzB,cAAc,CAAA;AACrDI,wBAAwB,CAACM,SAAS,GAAGT,SAAS,CAAA;AAC9CG,wBAAwB,CAACsB,YAAY,GAAGvB,aAAa;;;;"}
@@ -0,0 +1,4 @@
1
+ const mdiChevronRight = 'M8.59 16.58 13.17 12 8.59 7.41 10 6l6 6-6 6z';
2
+
3
+ export { mdiChevronRight };
4
+ //# sourceMappingURL=aeba575c.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"aeba575c.js","sources":["../../../lumx-icons/dist/esm/chevron-right.js"],"sourcesContent":["export const mdiChevronRight = 'M8.59 16.58 13.17 12 8.59 7.41 10 6l6 6-6 6z';"],"names":["mdiChevronRight"],"mappings":"AAAO,MAAMA,eAAe,GAAG;;;;"}
@@ -0,0 +1,60 @@
1
+ /** Get first day of week for locale from the browser API */
2
+ const getFromBrowser = locale => {
3
+ try {
4
+ const localeMetadata = new Intl.Locale(locale.code);
5
+ const {
6
+ firstDay
7
+ } = localeMetadata.getWeekInfo?.() || localeMetadata.weekInfo;
8
+ // Sunday is represented as `0` in Date.getDay()
9
+ if (firstDay === 7) return 0;
10
+ return firstDay;
11
+ } catch (e) {
12
+ return undefined;
13
+ }
14
+ };
15
+
16
+ /** List first day for each locale (could be removed when all browser implement Locale weekInfo) */
17
+ const FIRST_DAY_FOR_LOCALES = [{
18
+ // Locales with Sunday as the first day of the week
19
+ localeRX: /^(af|ar-(dz|eg|sa)|bn|cy|en-(ca|us|za)|fr-ca|gd|he|hi|ja|km|ko|pt-br|te|th|ug|zh-hk)$/i,
20
+ firstDay: 0
21
+ }, {
22
+ // Locales with Monday as the first day of the week
23
+ localeRX: /^(ar-(ma|tn)|az|be|bg|bs|ca|cs|da|de|el|en-(au|gb|ie|in|nz)|eo|es|et|eu|fi|fr|fy|gl|gu|hr|ht|hu|hy|id|is|it|ka|kk|kn|lb|lt|lv|mk|mn|ms|mt|nb|nl|nn|oc|pl|pt|ro|ru|sk|sl|sq|sr|sv|ta|tr|uk|uz|vi|zh-(cn|tw))$/i,
24
+ firstDay: 1
25
+ }, {
26
+ // Locales with Saturday as the first day of the week
27
+ localeRX: /^(ar|fa-ir)$/i,
28
+ firstDay: 6
29
+ }];
30
+
31
+ /** Find first day of week for locale from the constant */
32
+ const getFromConstant = (locale, searchBy = 'code') => {
33
+ // Search for locale (lang + region)
34
+ for (const {
35
+ localeRX,
36
+ firstDay
37
+ } of FIRST_DAY_FOR_LOCALES) {
38
+ if (localeRX.test(locale[searchBy])) return firstDay;
39
+ }
40
+ // Fallback search for locale lang
41
+ if (locale.code !== locale.language) {
42
+ return getFromConstant(locale, 'language');
43
+ }
44
+ return undefined;
45
+ };
46
+
47
+ /**
48
+ * Get first day of the week for the given locale code (language + region).
49
+ */
50
+ const getFirstDayOfWeek = locale => {
51
+ // Get from browser API
52
+ const firstDay = getFromBrowser(locale);
53
+ if (firstDay !== undefined) return firstDay;
54
+
55
+ // Get from constant
56
+ return getFromConstant(locale);
57
+ };
58
+
59
+ export { getFirstDayOfWeek, getFromBrowser };
60
+ //# sourceMappingURL=b0780b33.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"b0780b33.js","sources":["../../src/utils/date/getFirstDayOfWeek.ts"],"sourcesContent":["import { Locale } from '@lumx/react/utils/locale/types';\n\n/** Get first day of week for locale from the browser API */\nexport const getFromBrowser = (locale: Locale): number | undefined => {\n try {\n const localeMetadata = new Intl.Locale(locale.code) as any;\n const { firstDay } = localeMetadata.getWeekInfo?.() || localeMetadata.weekInfo;\n // Sunday is represented as `0` in Date.getDay()\n if (firstDay === 7) return 0;\n return firstDay;\n } catch (e) {\n return undefined;\n }\n};\n\n/** List first day for each locale (could be removed when all browser implement Locale weekInfo) */\nconst FIRST_DAY_FOR_LOCALES = [\n {\n // Locales with Sunday as the first day of the week\n localeRX: /^(af|ar-(dz|eg|sa)|bn|cy|en-(ca|us|za)|fr-ca|gd|he|hi|ja|km|ko|pt-br|te|th|ug|zh-hk)$/i,\n firstDay: 0,\n },\n {\n // Locales with Monday as the first day of the week\n localeRX:\n /^(ar-(ma|tn)|az|be|bg|bs|ca|cs|da|de|el|en-(au|gb|ie|in|nz)|eo|es|et|eu|fi|fr|fy|gl|gu|hr|ht|hu|hy|id|is|it|ka|kk|kn|lb|lt|lv|mk|mn|ms|mt|nb|nl|nn|oc|pl|pt|ro|ru|sk|sl|sq|sr|sv|ta|tr|uk|uz|vi|zh-(cn|tw))$/i,\n firstDay: 1,\n },\n {\n // Locales with Saturday as the first day of the week\n localeRX: /^(ar|fa-ir)$/i,\n firstDay: 6,\n },\n];\n\n/** Find first day of week for locale from the constant */\nconst getFromConstant = (locale: Locale, searchBy: keyof Locale = 'code'): number | undefined => {\n // Search for locale (lang + region)\n for (const { localeRX, firstDay } of FIRST_DAY_FOR_LOCALES) {\n if (localeRX.test(locale[searchBy] as string)) return firstDay;\n }\n // Fallback search for locale lang\n if (locale.code !== locale.language) {\n return getFromConstant(locale, 'language');\n }\n return undefined;\n};\n\n/**\n * Get first day of the week for the given locale code (language + region).\n */\nexport const getFirstDayOfWeek = (locale: Locale): number | undefined => {\n // Get from browser API\n const firstDay = getFromBrowser(locale);\n if (firstDay !== undefined) return firstDay;\n\n // Get from constant\n return getFromConstant(locale);\n};\n"],"names":["getFromBrowser","locale","localeMetadata","Intl","Locale","code","firstDay","getWeekInfo","weekInfo","e","undefined","FIRST_DAY_FOR_LOCALES","localeRX","getFromConstant","searchBy","test","language","getFirstDayOfWeek"],"mappings":"AAEA;AACaA,MAAAA,cAAc,GAAIC,MAAc,IAAyB;EAClE,IAAI;IACA,MAAMC,cAAc,GAAG,IAAIC,IAAI,CAACC,MAAM,CAACH,MAAM,CAACI,IAAI,CAAQ,CAAA;IAC1D,MAAM;AAAEC,MAAAA,QAAAA;KAAU,GAAGJ,cAAc,CAACK,WAAW,IAAI,IAAIL,cAAc,CAACM,QAAQ,CAAA;AAC9E;AACA,IAAA,IAAIF,QAAQ,KAAK,CAAC,EAAE,OAAO,CAAC,CAAA;AAC5B,IAAA,OAAOA,QAAQ,CAAA;GAClB,CAAC,OAAOG,CAAC,EAAE;AACR,IAAA,OAAOC,SAAS,CAAA;AACpB,GAAA;AACJ,EAAC;;AAED;AACA,MAAMC,qBAAqB,GAAG,CAC1B;AACI;AACAC,EAAAA,QAAQ,EAAE,wFAAwF;AAClGN,EAAAA,QAAQ,EAAE,CAAA;AACd,CAAC,EACD;AACI;AACAM,EAAAA,QAAQ,EACJ,+MAA+M;AACnNN,EAAAA,QAAQ,EAAE,CAAA;AACd,CAAC,EACD;AACI;AACAM,EAAAA,QAAQ,EAAE,eAAe;AACzBN,EAAAA,QAAQ,EAAE,CAAA;AACd,CAAC,CACJ,CAAA;;AAED;AACA,MAAMO,eAAe,GAAGA,CAACZ,MAAc,EAAEa,QAAsB,GAAG,MAAM,KAAyB;AAC7F;AACA,EAAA,KAAK,MAAM;IAAEF,QAAQ;AAAEN,IAAAA,QAAAA;GAAU,IAAIK,qBAAqB,EAAE;IACxD,IAAIC,QAAQ,CAACG,IAAI,CAACd,MAAM,CAACa,QAAQ,CAAW,CAAC,EAAE,OAAOR,QAAQ,CAAA;AAClE,GAAA;AACA;AACA,EAAA,IAAIL,MAAM,CAACI,IAAI,KAAKJ,MAAM,CAACe,QAAQ,EAAE;AACjC,IAAA,OAAOH,eAAe,CAACZ,MAAM,EAAE,UAAU,CAAC,CAAA;AAC9C,GAAA;AACA,EAAA,OAAOS,SAAS,CAAA;AACpB,CAAC,CAAA;;AAED;AACA;AACA;AACaO,MAAAA,iBAAiB,GAAIhB,MAAc,IAAyB;AACrE;AACA,EAAA,MAAMK,QAAQ,GAAGN,cAAc,CAACC,MAAM,CAAC,CAAA;AACvC,EAAA,IAAIK,QAAQ,KAAKI,SAAS,EAAE,OAAOJ,QAAQ,CAAA;;AAE3C;EACA,OAAOO,eAAe,CAACZ,MAAM,CAAC,CAAA;AAClC;;;;"}
@@ -0,0 +1,4 @@
1
+ const mdiMenuDown = 'm7 10 5 5 5-5z';
2
+
3
+ export { mdiMenuDown };
4
+ //# sourceMappingURL=b0846836.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"b0846836.js","sources":["../../../lumx-icons/dist/esm/menu-down.js"],"sourcesContent":["export const mdiMenuDown = 'm7 10 5 5 5-5z';"],"names":["mdiMenuDown"],"mappings":"AAAO,MAAMA,WAAW,GAAG;;;;"}
@@ -0,0 +1,14 @@
1
+ /** Minimal recursive deep equal of JS values */
2
+ function isEqual(obj1, obj2) {
3
+ if (obj1 === obj2) return true;
4
+ if (typeof obj1 === 'object' && typeof obj2 === 'object') {
5
+ const keys1 = Object.keys(obj1);
6
+ const keys2 = Object.keys(obj2);
7
+ if (keys1.length !== keys2.length) return false;
8
+ return keys1.every(key1 => isEqual(obj1[key1], obj2[key1]));
9
+ }
10
+ return false;
11
+ }
12
+
13
+ export { isEqual };
14
+ //# sourceMappingURL=b1154f4b.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"b1154f4b.js","sources":["../../src/utils/object/isEqual.ts"],"sourcesContent":["/** Minimal recursive deep equal of JS values */\nexport function isEqual(obj1: any, obj2: any): boolean {\n if (obj1 === obj2) return true;\n if (typeof obj1 === 'object' && typeof obj2 === 'object') {\n const keys1 = Object.keys(obj1);\n const keys2 = Object.keys(obj2);\n if (keys1.length !== keys2.length) return false;\n return keys1.every((key1) => isEqual(obj1[key1], obj2[key1]));\n }\n return false;\n}\n"],"names":["isEqual","obj1","obj2","keys1","Object","keys","keys2","length","every","key1"],"mappings":"AAAA;AACO,SAASA,OAAOA,CAACC,IAAS,EAAEC,IAAS,EAAW;AACnD,EAAA,IAAID,IAAI,KAAKC,IAAI,EAAE,OAAO,IAAI,CAAA;EAC9B,IAAI,OAAOD,IAAI,KAAK,QAAQ,IAAI,OAAOC,IAAI,KAAK,QAAQ,EAAE;AACtD,IAAA,MAAMC,KAAK,GAAGC,MAAM,CAACC,IAAI,CAACJ,IAAI,CAAC,CAAA;AAC/B,IAAA,MAAMK,KAAK,GAAGF,MAAM,CAACC,IAAI,CAACH,IAAI,CAAC,CAAA;IAC/B,IAAIC,KAAK,CAACI,MAAM,KAAKD,KAAK,CAACC,MAAM,EAAE,OAAO,KAAK,CAAA;AAC/C,IAAA,OAAOJ,KAAK,CAACK,KAAK,CAAEC,IAAI,IAAKT,OAAO,CAACC,IAAI,CAACQ,IAAI,CAAC,EAAEP,IAAI,CAACO,IAAI,CAAC,CAAC,CAAC,CAAA;AACjE,GAAA;AACA,EAAA,OAAO,KAAK,CAAA;AAChB;;;;"}
@@ -1,30 +1,14 @@
1
1
  import classNames from 'classnames';
2
2
  import isFunction from 'lodash/isFunction';
3
- import { useCallback } from 'react';
3
+ import { useStopPropagation } from './eef5d63f.js';
4
4
  import { getRootClassName, handleBasicClasses } from '@lumx/core/js/utils/className';
5
5
  import { onEnterPressed } from '@lumx/core/js/utils';
6
- import { f as forwardRef } from './forwardRef-8bce732e.js';
7
- import { u as useTheme } from './ThemeContext-3181f000.js';
8
- import { u as useDisableStateProps } from './useDisableStateProps-69e16b7c.js';
6
+ import { forwardRef } from './bd8b3ec8.js';
7
+ import { useTheme } from './d8ee966d.js';
8
+ import { useDisableStateProps } from './ef982c3d.js';
9
9
  import { jsxs, jsx } from 'react/jsx-runtime';
10
10
  import { Size, Theme, ColorPalette } from '@lumx/core/js/constants';
11
11
 
12
- /**
13
- * Wrap mouse event handler to stop event propagation.
14
- *
15
- * @param handler The mouse handler to wrap.
16
- * @return Mouse handler stopping propagation.
17
- */
18
- function useStopPropagation(handler) {
19
- return useCallback(evt => {
20
- if (!evt || !isFunction(handler)) {
21
- return;
22
- }
23
- handler(evt);
24
- evt.stopPropagation();
25
- }, [handler]);
26
- }
27
-
28
12
  /**
29
13
  * Component display name.
30
14
  */
@@ -143,5 +127,5 @@ Chip.displayName = COMPONENT_NAME;
143
127
  Chip.className = CLASSNAME;
144
128
  Chip.defaultProps = DEFAULT_PROPS;
145
129
 
146
- export { Chip as C };
147
- //# sourceMappingURL=Chip-8fbedc93.js.map
130
+ export { Chip };
131
+ //# sourceMappingURL=b125b718.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"b125b718.js","sources":["../../src/components/chip/Chip.tsx"],"sourcesContent":["import { MouseEventHandler, ReactNode } from 'react';\n\nimport classNames from 'classnames';\nimport isFunction from 'lodash/isFunction';\n\nimport { ColorPalette, Size, Theme } from '@lumx/react';\nimport { useStopPropagation } from '@lumx/react/hooks/useStopPropagation';\n\nimport { GenericProps, HasTheme } from '@lumx/react/utils/type';\nimport { getRootClassName, handleBasicClasses } from '@lumx/core/js/utils/className';\nimport { onEnterPressed } from '@lumx/core/js/utils';\nimport { forwardRef } from '@lumx/react/utils/react/forwardRef';\nimport { useTheme } from '@lumx/react/utils/theme/ThemeContext';\nimport { useDisableStateProps } from '@lumx/react/utils/disabled/useDisableStateProps';\nimport { HasAriaDisabled } from '@lumx/react/utils/type/HasAriaDisabled';\n\n/**\n * Chip sizes.\n */\ntype ChipSize = Extract<Size, 's' | 'm'>;\n\n/**\n * Defines the props of the component.\n */\nexport interface ChipProps extends GenericProps, HasTheme, HasAriaDisabled {\n /** A component to be rendered after the content. */\n after?: ReactNode;\n /** A component to be rendered before the content. */\n before?: ReactNode;\n /** Color variant. */\n color?: ColorPalette;\n /** Whether the component is clickable or not. */\n isClickable?: boolean;\n /** Whether the component is disabled or not. */\n isDisabled?: boolean;\n /** Whether the chip is currently in a highlighted state or not. */\n isHighlighted?: boolean;\n /** Whether the component is selected or not. */\n isSelected?: boolean;\n /** Size variant. */\n size?: ChipSize;\n /** On \"after\" element clicked callback. */\n onAfterClick?: MouseEventHandler;\n /** On \"before\" element clicked callback. */\n onBeforeClick?: MouseEventHandler;\n /** Children */\n children?: React.ReactNode;\n}\n\n/**\n * Component display name.\n */\nconst COMPONENT_NAME = 'Chip';\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<ChipProps> = {\n size: Size.m,\n};\n\n/**\n * Chip component.\n *\n * @param props Component props.\n * @param ref Component ref.\n * @return React element.\n */\nexport const Chip = forwardRef<ChipProps, HTMLAnchorElement>((props, ref) => {\n const defaultTheme = useTheme() || Theme.light;\n const { isAnyDisabled, disabledStateProps, otherProps } = useDisableStateProps(props);\n const {\n after,\n before,\n children,\n className,\n color,\n isClickable: propIsClickable,\n isHighlighted,\n isSelected,\n onAfterClick,\n onBeforeClick,\n onClick,\n size = DEFAULT_PROPS.size,\n theme = defaultTheme,\n href,\n onKeyDown,\n ...forwardedProps\n } = otherProps;\n const hasAfterClick = isFunction(onAfterClick);\n const hasBeforeClick = isFunction(onBeforeClick);\n const hasOnClick = isFunction(props.onClick);\n const isButton = hasOnClick && !href;\n const isClickable = Boolean(hasOnClick) || Boolean(href) || propIsClickable;\n\n // Adapt color to the theme.\n const chipColor = color || (theme === Theme.light ? ColorPalette.dark : ColorPalette.light);\n\n const handleOnBeforeClick = useStopPropagation(onBeforeClick);\n const handleOnAfterClick = useStopPropagation(onAfterClick);\n const handleKeyDown = (evt: React.KeyboardEvent) => {\n onKeyDown?.(evt);\n if (hasOnClick) {\n onEnterPressed(onClick)(evt);\n }\n };\n\n return (\n // eslint-disable-next-line jsx-a11y/no-static-element-interactions\n <a\n role={isButton ? 'button' : undefined}\n tabIndex={isClickable && !disabledStateProps.disabled ? 0 : undefined}\n {...forwardedProps}\n href={!disabledStateProps.disabled ? href : undefined}\n ref={ref}\n className={classNames(\n className,\n handleBasicClasses({\n clickable: isClickable,\n color: chipColor,\n isDisabled: isAnyDisabled,\n hasAfter: Boolean(after),\n hasBefore: Boolean(before),\n highlighted: Boolean(isHighlighted),\n prefix: CLASSNAME,\n selected: Boolean(isSelected),\n size,\n unselected: Boolean(!isSelected),\n }),\n )}\n aria-disabled={(isClickable && isAnyDisabled) || undefined}\n onClick={hasOnClick ? onClick : undefined}\n onKeyDown={handleKeyDown}\n >\n {before && (\n // eslint-disable-next-line jsx-a11y/click-events-have-key-events,jsx-a11y/no-static-element-interactions\n <div\n className={classNames(`${CLASSNAME}__before`, {\n [`${CLASSNAME}__before--is-clickable`]: hasBeforeClick,\n })}\n onClick={handleOnBeforeClick}\n >\n {before}\n </div>\n )}\n <div className={`${CLASSNAME}__label`}>{children}</div>\n {after && (\n // eslint-disable-next-line jsx-a11y/click-events-have-key-events,jsx-a11y/no-static-element-interactions\n <div\n className={classNames(`${CLASSNAME}__after`, {\n [`${CLASSNAME}__after--is-clickable`]: hasAfterClick,\n })}\n onClick={handleOnAfterClick}\n >\n {after}\n </div>\n )}\n </a>\n );\n});\nChip.displayName = COMPONENT_NAME;\nChip.className = CLASSNAME;\nChip.defaultProps = DEFAULT_PROPS;\n"],"names":["COMPONENT_NAME","CLASSNAME","getRootClassName","DEFAULT_PROPS","size","Size","m","Chip","forwardRef","props","ref","defaultTheme","useTheme","Theme","light","isAnyDisabled","disabledStateProps","otherProps","useDisableStateProps","after","before","children","className","color","isClickable","propIsClickable","isHighlighted","isSelected","onAfterClick","onBeforeClick","onClick","theme","href","onKeyDown","forwardedProps","hasAfterClick","isFunction","hasBeforeClick","hasOnClick","isButton","Boolean","chipColor","ColorPalette","dark","handleOnBeforeClick","useStopPropagation","handleOnAfterClick","handleKeyDown","evt","onEnterPressed","_jsxs","role","undefined","tabIndex","disabled","classNames","handleBasicClasses","clickable","isDisabled","hasAfter","hasBefore","highlighted","prefix","selected","unselected","_jsx","displayName","defaultProps"],"mappings":"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"}
@@ -0,0 +1,56 @@
1
+ import classNames from 'classnames';
2
+ import { getRootClassName, handleBasicClasses } from '@lumx/core/js/utils/className';
3
+ import { useTheme } from './d8ee966d.js';
4
+ import { forwardRef } from './bd8b3ec8.js';
5
+ import { jsxs, jsx } from 'react/jsx-runtime';
6
+ import { Theme } from '@lumx/core/js/constants';
7
+
8
+ /**
9
+ * Component display name.
10
+ */
11
+ const COMPONENT_NAME = 'ProgressLinear';
12
+
13
+ /**
14
+ * Component default class name and class prefix.
15
+ */
16
+ const CLASSNAME = getRootClassName(COMPONENT_NAME);
17
+
18
+ /**
19
+ * Component default props.
20
+ */
21
+ const DEFAULT_PROPS = {};
22
+
23
+ /**
24
+ * ProgressLinear component.
25
+ *
26
+ * @param props Component props.
27
+ * @param ref Component ref.
28
+ * @return React element.
29
+ */
30
+ const ProgressLinear = forwardRef((props, ref) => {
31
+ const defaultTheme = useTheme() || Theme.light;
32
+ const {
33
+ className,
34
+ theme = defaultTheme,
35
+ ...forwardedProps
36
+ } = props;
37
+ return /*#__PURE__*/jsxs("div", {
38
+ ref: ref,
39
+ ...forwardedProps,
40
+ className: classNames(className, handleBasicClasses({
41
+ prefix: CLASSNAME,
42
+ theme
43
+ })),
44
+ children: [/*#__PURE__*/jsx("div", {
45
+ className: "lumx-progress-linear__line1"
46
+ }), /*#__PURE__*/jsx("div", {
47
+ className: "lumx-progress-linear__line2"
48
+ })]
49
+ });
50
+ });
51
+ ProgressLinear.displayName = COMPONENT_NAME;
52
+ ProgressLinear.className = CLASSNAME;
53
+ ProgressLinear.defaultProps = DEFAULT_PROPS;
54
+
55
+ export { ProgressLinear };
56
+ //# sourceMappingURL=b23a92ab.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"b23a92ab.js","sources":["../../src/components/progress/ProgressLinear.tsx"],"sourcesContent":["import classNames from 'classnames';\n\nimport { Theme } from '@lumx/react';\nimport { GenericProps, HasTheme } from '@lumx/react/utils/type';\nimport { getRootClassName, handleBasicClasses } from '@lumx/core/js/utils/className';\nimport { useTheme } from '@lumx/react/utils/theme/ThemeContext';\nimport { forwardRef } from '@lumx/react/utils/react/forwardRef';\n\nexport interface ProgressLinearProps extends GenericProps, HasTheme {}\n\n/**\n * Component display name.\n */\nconst COMPONENT_NAME = 'ProgressLinear';\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<ProgressLinearProps> = {};\n\n/**\n * ProgressLinear component.\n *\n * @param props Component props.\n * @param ref Component ref.\n * @return React element.\n */\nexport const ProgressLinear = forwardRef<ProgressLinearProps, HTMLDivElement>((props, ref) => {\n const defaultTheme = useTheme() || Theme.light;\n const { className, theme = defaultTheme, ...forwardedProps } = props;\n\n return (\n <div\n ref={ref}\n {...forwardedProps}\n className={classNames(className, handleBasicClasses({ prefix: CLASSNAME, theme }))}\n >\n <div className=\"lumx-progress-linear__line1\" />\n <div className=\"lumx-progress-linear__line2\" />\n </div>\n );\n});\nProgressLinear.displayName = COMPONENT_NAME;\nProgressLinear.className = CLASSNAME;\nProgressLinear.defaultProps = DEFAULT_PROPS;\n"],"names":["COMPONENT_NAME","CLASSNAME","getRootClassName","DEFAULT_PROPS","ProgressLinear","forwardRef","props","ref","defaultTheme","useTheme","Theme","light","className","theme","forwardedProps","_jsxs","classNames","handleBasicClasses","prefix","children","_jsx","displayName","defaultProps"],"mappings":";;;;;;;AAUA;AACA;AACA;AACA,MAAMA,cAAc,GAAG,gBAAgB,CAAA;;AAEvC;AACA;AACA;AACA,MAAMC,SAAS,GAAGC,gBAAgB,CAACF,cAAc,CAAC,CAAA;;AAElD;AACA;AACA;AACA,MAAMG,aAA2C,GAAG,EAAE,CAAA;;AAEtD;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAMC,cAAc,GAAGC,UAAU,CAAsC,CAACC,KAAK,EAAEC,GAAG,KAAK;EAC1F,MAAMC,YAAY,GAAGC,QAAQ,EAAE,IAAIC,KAAK,CAACC,KAAK,CAAA;EAC9C,MAAM;IAAEC,SAAS;AAAEC,IAAAA,KAAK,GAAGL,YAAY;IAAE,GAAGM,cAAAA;AAAe,GAAC,GAAGR,KAAK,CAAA;AAEpE,EAAA,oBACIS,IAAA,CAAA,KAAA,EAAA;AACIR,IAAAA,GAAG,EAAEA,GAAI;AAAA,IAAA,GACLO,cAAc;AAClBF,IAAAA,SAAS,EAAEI,UAAU,CAACJ,SAAS,EAAEK,kBAAkB,CAAC;AAAEC,MAAAA,MAAM,EAAEjB,SAAS;AAAEY,MAAAA,KAAAA;AAAM,KAAC,CAAC,CAAE;AAAAM,IAAAA,QAAA,gBAEnFC,GAAA,CAAA,KAAA,EAAA;AAAKR,MAAAA,SAAS,EAAC,6BAAA;KAA+B,CAAC,eAC/CQ,GAAA,CAAA,KAAA,EAAA;AAAKR,MAAAA,SAAS,EAAC,6BAAA;AAA6B,KAAE,CAAC,CAAA;AAAA,GAC9C,CAAC,CAAA;AAEd,CAAC,EAAC;AACFR,cAAc,CAACiB,WAAW,GAAGrB,cAAc,CAAA;AAC3CI,cAAc,CAACQ,SAAS,GAAGX,SAAS,CAAA;AACpCG,cAAc,CAACkB,YAAY,GAAGnB,aAAa;;;;"}
@@ -0,0 +1,107 @@
1
+ import { useMemo, useState, useEffect } from 'react';
2
+ import { AspectRatio } from '@lumx/core/js/constants';
3
+
4
+ // Calculate shift to center the focus point in the container.
5
+ function shiftPosition({
6
+ scale,
7
+ focusPoint,
8
+ imageSize,
9
+ containerSize
10
+ }) {
11
+ const scaledSize = imageSize / scale;
12
+ if (scaledSize === containerSize) return 0;
13
+ const scaledFocusHeight = focusPoint * scaledSize;
14
+ const startFocus = scaledFocusHeight - containerSize / 2;
15
+ const shift = startFocus / (scaledSize - containerSize);
16
+ return Math.floor(Math.max(Math.min(shift, 1), 0) * 100);
17
+ }
18
+
19
+ // Compute CSS properties to apply the focus point.
20
+ const useFocusPointStyle = ({
21
+ image,
22
+ aspectRatio,
23
+ focusPoint,
24
+ imgProps: {
25
+ width,
26
+ height
27
+ } = {}
28
+ }, element, isLoaded) => {
29
+ // Get natural image size from imgProps or img element.
30
+ const imageSize = useMemo(() => {
31
+ // Focus point is not applicable => exit early
32
+ if (!image || aspectRatio === AspectRatio.original || !focusPoint?.x && !focusPoint?.y) return undefined;
33
+ if (typeof width === 'number' && typeof height === 'number') return {
34
+ width,
35
+ height
36
+ };
37
+ if (element && isLoaded) return {
38
+ width: element.naturalWidth,
39
+ height: element.naturalHeight
40
+ };
41
+ return undefined;
42
+ }, [aspectRatio, element, focusPoint?.x, focusPoint?.y, height, image, isLoaded, width]);
43
+
44
+ // Get container size (dependant on imageSize).
45
+ const [containerSize, setContainerSize] = useState(undefined);
46
+ useEffect(function updateContainerSize() {
47
+ const cWidth = element?.offsetWidth;
48
+ const cHeight = element?.offsetHeight;
49
+ if (cWidth && cHeight) {
50
+ // Update only if needed.
51
+ setContainerSize(oldContainerSize => oldContainerSize?.width === cWidth && oldContainerSize.height === cHeight ? oldContainerSize : {
52
+ width: cWidth,
53
+ height: cHeight
54
+ });
55
+ } else if (imageSize) {
56
+ // Wait for a render (in case the container size is dependent on the image size).
57
+ requestAnimationFrame(updateContainerSize);
58
+ }
59
+ }, [element?.offsetHeight, element?.offsetWidth, imageSize]);
60
+
61
+ // Compute style.
62
+ const style = useMemo(() => {
63
+ // Focus point is not applicable => exit early
64
+ if (!image || aspectRatio === AspectRatio.original || !focusPoint?.x && !focusPoint?.y) {
65
+ return {};
66
+ }
67
+ if (!element || !imageSize) {
68
+ // Focus point can be computed but now right now (image size unknown).
69
+ return {
70
+ visibility: 'hidden'
71
+ };
72
+ }
73
+ if (!containerSize || !imageSize.height || !imageSize.width) {
74
+ // Missing container or image size abort focus point compute.
75
+ return {};
76
+ }
77
+ const heightScale = imageSize.height / containerSize.height;
78
+ const widthScale = imageSize.width / containerSize.width;
79
+ const scale = Math.min(widthScale, heightScale);
80
+
81
+ // Focus Y relative to the top (instead of the center)
82
+ const focusPointFromTop = Math.abs((focusPoint?.y || 0) - 1) / 2;
83
+ const y = shiftPosition({
84
+ scale,
85
+ focusPoint: focusPointFromTop,
86
+ imageSize: imageSize.height,
87
+ containerSize: containerSize.height
88
+ });
89
+
90
+ // Focus X relative to the left (instead of the center)
91
+ const focusPointFromLeft = Math.abs((focusPoint?.x || 0) + 1) / 2;
92
+ const x = shiftPosition({
93
+ scale,
94
+ focusPoint: focusPointFromLeft,
95
+ imageSize: imageSize.width,
96
+ containerSize: containerSize.width
97
+ });
98
+ const objectPosition = `${x}% ${y}%`;
99
+ return {
100
+ objectPosition
101
+ };
102
+ }, [aspectRatio, containerSize, element, focusPoint?.x, focusPoint?.y, image, imageSize]);
103
+ return style;
104
+ };
105
+
106
+ export { shiftPosition, useFocusPointStyle };
107
+ //# sourceMappingURL=b4018f8d.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"b4018f8d.js","sources":["../../src/components/thumbnail/useFocusPointStyle.tsx"],"sourcesContent":["import { CSSProperties, useEffect, useMemo, useState } from 'react';\nimport { AspectRatio } from '@lumx/core/js/constants';\nimport { ThumbnailProps } from '@lumx/react/components/thumbnail/Thumbnail';\nimport { RectSize } from '@lumx/react/utils/type';\n\n// Calculate shift to center the focus point in the container.\nexport function shiftPosition({\n scale,\n focusPoint,\n imageSize,\n containerSize,\n}: {\n scale: number;\n focusPoint: number;\n imageSize: number;\n containerSize: number;\n}) {\n const scaledSize = imageSize / scale;\n if (scaledSize === containerSize) return 0;\n\n const scaledFocusHeight = focusPoint * scaledSize;\n const startFocus = scaledFocusHeight - containerSize / 2;\n const shift = startFocus / (scaledSize - containerSize);\n\n return Math.floor(Math.max(Math.min(shift, 1), 0) * 100);\n}\n\n// Compute CSS properties to apply the focus point.\nexport const useFocusPointStyle = (\n { image, aspectRatio, focusPoint, imgProps: { width, height } = {} }: ThumbnailProps,\n element: HTMLImageElement | undefined,\n isLoaded: boolean,\n): CSSProperties => {\n // Get natural image size from imgProps or img element.\n const imageSize: RectSize | undefined = useMemo(() => {\n // Focus point is not applicable => exit early\n if (!image || aspectRatio === AspectRatio.original || (!focusPoint?.x && !focusPoint?.y)) return undefined;\n if (typeof width === 'number' && typeof height === 'number') return { width, height };\n if (element && isLoaded) return { width: element.naturalWidth, height: element.naturalHeight };\n return undefined;\n }, [aspectRatio, element, focusPoint?.x, focusPoint?.y, height, image, isLoaded, width]);\n\n // Get container size (dependant on imageSize).\n const [containerSize, setContainerSize] = useState<RectSize | undefined>(undefined);\n useEffect(\n function updateContainerSize() {\n const cWidth = element?.offsetWidth;\n const cHeight = element?.offsetHeight;\n if (cWidth && cHeight) {\n // Update only if needed.\n setContainerSize((oldContainerSize) =>\n oldContainerSize?.width === cWidth && oldContainerSize.height === cHeight\n ? oldContainerSize\n : { width: cWidth, height: cHeight },\n );\n } else if (imageSize) {\n // Wait for a render (in case the container size is dependent on the image size).\n requestAnimationFrame(updateContainerSize);\n }\n },\n [element?.offsetHeight, element?.offsetWidth, imageSize],\n );\n\n // Compute style.\n const style: CSSProperties = useMemo(() => {\n // Focus point is not applicable => exit early\n if (!image || aspectRatio === AspectRatio.original || (!focusPoint?.x && !focusPoint?.y)) {\n return {};\n }\n if (!element || !imageSize) {\n // Focus point can be computed but now right now (image size unknown).\n return { visibility: 'hidden' };\n }\n if (!containerSize || !imageSize.height || !imageSize.width) {\n // Missing container or image size abort focus point compute.\n return {};\n }\n\n const heightScale = imageSize.height / containerSize.height;\n const widthScale = imageSize.width / containerSize.width;\n const scale = Math.min(widthScale, heightScale);\n\n // Focus Y relative to the top (instead of the center)\n const focusPointFromTop = Math.abs((focusPoint?.y || 0) - 1) / 2;\n const y = shiftPosition({\n scale,\n focusPoint: focusPointFromTop,\n imageSize: imageSize.height,\n containerSize: containerSize.height,\n });\n\n // Focus X relative to the left (instead of the center)\n const focusPointFromLeft = Math.abs((focusPoint?.x || 0) + 1) / 2;\n const x = shiftPosition({\n scale,\n focusPoint: focusPointFromLeft,\n imageSize: imageSize.width,\n containerSize: containerSize.width,\n });\n\n const objectPosition = `${x}% ${y}%`;\n\n return { objectPosition };\n }, [aspectRatio, containerSize, element, focusPoint?.x, focusPoint?.y, image, imageSize]);\n\n return style;\n};\n"],"names":["shiftPosition","scale","focusPoint","imageSize","containerSize","scaledSize","scaledFocusHeight","startFocus","shift","Math","floor","max","min","useFocusPointStyle","image","aspectRatio","imgProps","width","height","element","isLoaded","useMemo","AspectRatio","original","x","y","undefined","naturalWidth","naturalHeight","setContainerSize","useState","useEffect","updateContainerSize","cWidth","offsetWidth","cHeight","offsetHeight","oldContainerSize","requestAnimationFrame","style","visibility","heightScale","widthScale","focusPointFromTop","abs","focusPointFromLeft","objectPosition"],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ function getFreshSideObject() {
2
+ return {
3
+ top: 0,
4
+ right: 0,
5
+ bottom: 0,
6
+ left: 0
7
+ };
8
+ }
9
+
10
+ export { getFreshSideObject as default };
11
+ //# sourceMappingURL=b402784b.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"b402784b.js","sources":["../../../../node_modules/@popperjs/core/lib/utils/getFreshSideObject.js"],"sourcesContent":["export default function getFreshSideObject() {\n return {\n top: 0,\n right: 0,\n bottom: 0,\n left: 0\n };\n}"],"names":[],"mappings":"AAAe,SAAS,kBAAkB,GAAG;AAC7C,EAAE,OAAO;AACT,IAAI,GAAG,EAAE,CAAC;AACV,IAAI,KAAK,EAAE,CAAC;AACZ,IAAI,MAAM,EAAE,CAAC;AACb,IAAI,IAAI,EAAE,CAAC;AACX,GAAG,CAAC;AACJ;;;;","x_google_ignoreList":[0]}