@anoki/fse-ui 1.0.731 → 1.0.732

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 (491) hide show
  1. package/dist/index.cjs10.js +1 -1
  2. package/dist/index.cjs130.js +1 -1
  3. package/dist/index.cjs131.js +1 -1
  4. package/dist/index.cjs132.js +1 -1
  5. package/dist/index.cjs133.js +1 -1
  6. package/dist/index.cjs134.js +1 -1
  7. package/dist/index.cjs135.js +1 -1
  8. package/dist/index.cjs136.js +1 -1
  9. package/dist/index.cjs137.js +1 -1
  10. package/dist/index.cjs138.js +1 -1
  11. package/dist/index.cjs139.js +1 -1
  12. package/dist/index.cjs140.js +1 -1
  13. package/dist/index.cjs141.js +1 -1
  14. package/dist/index.cjs142.js +1 -1
  15. package/dist/index.cjs143.js +1 -1
  16. package/dist/index.cjs144.js +1 -1
  17. package/dist/index.cjs145.js +1 -1
  18. package/dist/index.cjs146.js +1 -1
  19. package/dist/index.cjs147.js +1 -1
  20. package/dist/index.cjs148.js +1 -1
  21. package/dist/index.cjs149.js +1 -1
  22. package/dist/index.cjs150.js +1 -1
  23. package/dist/index.cjs151.js +1 -1
  24. package/dist/index.cjs152.js +1 -1
  25. package/dist/index.cjs156.js +1 -1
  26. package/dist/index.cjs157.js +1 -1
  27. package/dist/index.cjs158.js +1 -1
  28. package/dist/index.cjs160.js +1 -1
  29. package/dist/index.cjs161.js +1 -1
  30. package/dist/index.cjs162.js +1 -1
  31. package/dist/index.cjs163.js +1 -1
  32. package/dist/index.cjs164.js +1 -1
  33. package/dist/index.cjs165.js +1 -1
  34. package/dist/index.cjs166.js +1 -1
  35. package/dist/index.cjs167.js +1 -1
  36. package/dist/index.cjs168.js +1 -1
  37. package/dist/index.cjs170.js +1 -1
  38. package/dist/index.cjs171.js +1 -1
  39. package/dist/index.cjs172.js +1 -1
  40. package/dist/index.cjs173.js +1 -1
  41. package/dist/index.cjs174.js +1 -1
  42. package/dist/index.cjs175.js +1 -1
  43. package/dist/index.cjs176.js +1 -1
  44. package/dist/index.cjs178.js +1 -1
  45. package/dist/index.cjs179.js +1 -1
  46. package/dist/index.cjs180.js +1 -1
  47. package/dist/index.cjs181.js +1 -1
  48. package/dist/index.cjs182.js +1 -1
  49. package/dist/index.cjs183.js +1 -1
  50. package/dist/index.cjs184.js +1 -1
  51. package/dist/index.cjs191.js +1 -1
  52. package/dist/index.cjs216.js +1 -1
  53. package/dist/index.cjs22.js +1 -1
  54. package/dist/index.cjs223.js +1 -1
  55. package/dist/index.cjs227.js +1 -1
  56. package/dist/index.cjs227.js.map +1 -1
  57. package/dist/index.cjs228.js +2 -0
  58. package/dist/index.cjs228.js.map +1 -0
  59. package/dist/index.cjs237.js +1 -1
  60. package/dist/index.cjs244.js +1 -1
  61. package/dist/index.cjs247.js +1 -1
  62. package/dist/index.cjs248.js +1 -1
  63. package/dist/index.cjs25.js +1 -1
  64. package/dist/index.cjs255.js +1 -1
  65. package/dist/index.cjs265.js +1 -1
  66. package/dist/index.cjs269.js +1 -1
  67. package/dist/index.cjs271.js +1 -1
  68. package/dist/index.cjs296.js +1 -1
  69. package/dist/index.cjs297.js +1 -1
  70. package/dist/index.cjs298.js +1 -1
  71. package/dist/index.cjs337.js +1 -1
  72. package/dist/index.cjs350.js +1 -1
  73. package/dist/index.cjs364.js +1 -1
  74. package/dist/index.cjs378.js +1 -1
  75. package/dist/index.cjs379.js +1 -1
  76. package/dist/index.cjs380.js +1 -27
  77. package/dist/index.cjs380.js.map +1 -1
  78. package/dist/index.cjs381.js +2 -1
  79. package/dist/index.cjs381.js.map +1 -1
  80. package/dist/index.cjs382.js +27 -1
  81. package/dist/index.cjs382.js.map +1 -1
  82. package/dist/index.cjs383.js +1 -1
  83. package/dist/index.cjs383.js.map +1 -1
  84. package/dist/index.cjs384.js +1 -2
  85. package/dist/index.cjs384.js.map +1 -1
  86. package/dist/index.cjs389.js +1 -1
  87. package/dist/index.cjs389.js.map +1 -1
  88. package/dist/index.cjs390.js +1 -1
  89. package/dist/index.cjs390.js.map +1 -1
  90. package/dist/index.cjs391.js +1 -1
  91. package/dist/index.cjs391.js.map +1 -1
  92. package/dist/index.cjs392.js +2 -0
  93. package/dist/index.cjs392.js.map +1 -0
  94. package/dist/index.cjs393.js +1 -1
  95. package/dist/index.cjs393.js.map +1 -1
  96. package/dist/index.cjs394.js +2 -0
  97. package/dist/index.cjs394.js.map +1 -0
  98. package/dist/index.cjs395.js +2 -0
  99. package/dist/index.cjs395.js.map +1 -0
  100. package/dist/index.cjs396.js +1 -1
  101. package/dist/index.cjs396.js.map +1 -1
  102. package/dist/index.cjs397.js +1 -1
  103. package/dist/index.cjs397.js.map +1 -1
  104. package/dist/index.cjs398.js +1 -1
  105. package/dist/index.cjs398.js.map +1 -1
  106. package/dist/index.cjs399.js +1 -1
  107. package/dist/index.cjs399.js.map +1 -1
  108. package/dist/index.cjs400.js +1 -1
  109. package/dist/index.cjs400.js.map +1 -1
  110. package/dist/index.cjs401.js +1 -1
  111. package/dist/index.cjs401.js.map +1 -1
  112. package/dist/index.cjs402.js +1 -1
  113. package/dist/index.cjs402.js.map +1 -1
  114. package/dist/index.cjs406.js +1 -1
  115. package/dist/index.cjs406.js.map +1 -1
  116. package/dist/index.cjs409.js +2 -0
  117. package/dist/index.cjs409.js.map +1 -0
  118. package/dist/index.cjs410.js +2 -0
  119. package/dist/index.cjs410.js.map +1 -0
  120. package/dist/index.cjs411.js +2 -0
  121. package/dist/index.cjs411.js.map +1 -0
  122. package/dist/index.cjs412.js +2 -0
  123. package/dist/index.cjs412.js.map +1 -0
  124. package/dist/index.cjs424.js +1 -1
  125. package/dist/index.cjs424.js.map +1 -1
  126. package/dist/index.cjs425.js +1 -1
  127. package/dist/index.cjs425.js.map +1 -1
  128. package/dist/index.cjs426.js +1 -1
  129. package/dist/index.cjs426.js.map +1 -1
  130. package/dist/index.cjs427.js +1 -1
  131. package/dist/index.cjs427.js.map +1 -1
  132. package/dist/index.cjs428.js +1 -1
  133. package/dist/index.cjs428.js.map +1 -1
  134. package/dist/index.cjs429.js +1 -1
  135. package/dist/index.cjs429.js.map +1 -1
  136. package/dist/index.cjs430.js +1 -1
  137. package/dist/index.cjs430.js.map +1 -1
  138. package/dist/index.cjs431.js +1 -1
  139. package/dist/index.cjs431.js.map +1 -1
  140. package/dist/index.cjs432.js +1 -1
  141. package/dist/index.cjs432.js.map +1 -1
  142. package/dist/index.cjs433.js +1 -1
  143. package/dist/index.cjs433.js.map +1 -1
  144. package/dist/index.cjs434.js +1 -1
  145. package/dist/index.cjs434.js.map +1 -1
  146. package/dist/index.cjs435.js +1 -1
  147. package/dist/index.cjs435.js.map +1 -1
  148. package/dist/index.cjs441.js +1 -1
  149. package/dist/index.cjs441.js.map +1 -1
  150. package/dist/index.cjs442.js +1 -1
  151. package/dist/index.cjs442.js.map +1 -1
  152. package/dist/index.cjs443.js +1 -1
  153. package/dist/index.cjs443.js.map +1 -1
  154. package/dist/index.cjs444.js +1 -1
  155. package/dist/index.cjs444.js.map +1 -1
  156. package/dist/index.cjs445.js +1 -1
  157. package/dist/index.cjs445.js.map +1 -1
  158. package/dist/index.cjs446.js +1 -1
  159. package/dist/index.cjs446.js.map +1 -1
  160. package/dist/index.cjs447.js +1 -1
  161. package/dist/index.cjs448.js +1 -1
  162. package/dist/index.cjs448.js.map +1 -1
  163. package/dist/index.cjs449.js +1 -1
  164. package/dist/index.cjs449.js.map +1 -1
  165. package/dist/index.cjs450.js +1 -1
  166. package/dist/index.cjs450.js.map +1 -1
  167. package/dist/index.cjs451.js +4 -1
  168. package/dist/index.cjs451.js.map +1 -1
  169. package/dist/index.cjs452.js +1 -1
  170. package/dist/index.cjs452.js.map +1 -1
  171. package/dist/index.cjs453.js +1 -1
  172. package/dist/index.cjs453.js.map +1 -1
  173. package/dist/index.cjs454.js +1 -1
  174. package/dist/index.cjs454.js.map +1 -1
  175. package/dist/index.cjs455.js +1 -1
  176. package/dist/index.cjs455.js.map +1 -1
  177. package/dist/index.cjs456.js +1 -1
  178. package/dist/index.cjs456.js.map +1 -1
  179. package/dist/index.cjs457.js +1 -1
  180. package/dist/index.cjs457.js.map +1 -1
  181. package/dist/index.cjs458.js +1 -1
  182. package/dist/index.cjs458.js.map +1 -1
  183. package/dist/index.cjs459.js +1 -4
  184. package/dist/index.cjs459.js.map +1 -1
  185. package/dist/index.cjs460.js +1 -1
  186. package/dist/index.cjs460.js.map +1 -1
  187. package/dist/index.cjs461.js +38 -5
  188. package/dist/index.cjs461.js.map +1 -1
  189. package/dist/index.cjs462.js +1 -1
  190. package/dist/index.cjs462.js.map +1 -1
  191. package/dist/index.cjs463.js +1 -1
  192. package/dist/index.cjs463.js.map +1 -1
  193. package/dist/index.cjs464.js +1 -1
  194. package/dist/index.cjs464.js.map +1 -1
  195. package/dist/index.cjs465.js +1 -1
  196. package/dist/index.cjs465.js.map +1 -1
  197. package/dist/index.cjs466.js +5 -1
  198. package/dist/index.cjs466.js.map +1 -1
  199. package/dist/index.cjs467.js +1 -1
  200. package/dist/index.cjs467.js.map +1 -1
  201. package/dist/index.cjs468.js +1 -1
  202. package/dist/index.cjs468.js.map +1 -1
  203. package/dist/index.cjs469.js +1 -1
  204. package/dist/index.cjs469.js.map +1 -1
  205. package/dist/index.cjs470.js +1 -1
  206. package/dist/index.cjs470.js.map +1 -1
  207. package/dist/index.cjs471.js +1 -1
  208. package/dist/index.cjs471.js.map +1 -1
  209. package/dist/index.cjs472.js +1 -1
  210. package/dist/index.cjs472.js.map +1 -1
  211. package/dist/index.cjs473.js +1 -38
  212. package/dist/index.cjs473.js.map +1 -1
  213. package/dist/index.cjs474.js +1 -1
  214. package/dist/index.cjs474.js.map +1 -1
  215. package/dist/index.cjs475.js +1 -1
  216. package/dist/index.cjs475.js.map +1 -1
  217. package/dist/index.cjs476.js +1 -1
  218. package/dist/index.cjs476.js.map +1 -1
  219. package/dist/index.cjs477.js +1 -1
  220. package/dist/index.cjs477.js.map +1 -1
  221. package/dist/index.cjs57.js +1 -1
  222. package/dist/index.cjs6.js +1 -1
  223. package/dist/index.cjs66.js +1 -1
  224. package/dist/index.cjs66.js.map +1 -1
  225. package/dist/index.cjs67.js +1 -1
  226. package/dist/index.cjs67.js.map +1 -1
  227. package/dist/index.cjs7.js +1 -1
  228. package/dist/index.cjs8.js +1 -1
  229. package/dist/index.cjs9.js +1 -1
  230. package/dist/index.es10.js +2 -2
  231. package/dist/index.es130.js +1 -1
  232. package/dist/index.es131.js +1 -1
  233. package/dist/index.es132.js +1 -1
  234. package/dist/index.es133.js +1 -1
  235. package/dist/index.es134.js +1 -1
  236. package/dist/index.es135.js +1 -1
  237. package/dist/index.es136.js +1 -1
  238. package/dist/index.es137.js +1 -1
  239. package/dist/index.es138.js +1 -1
  240. package/dist/index.es139.js +1 -1
  241. package/dist/index.es140.js +1 -1
  242. package/dist/index.es141.js +1 -1
  243. package/dist/index.es142.js +1 -1
  244. package/dist/index.es143.js +1 -1
  245. package/dist/index.es144.js +1 -1
  246. package/dist/index.es145.js +1 -1
  247. package/dist/index.es146.js +1 -1
  248. package/dist/index.es147.js +1 -1
  249. package/dist/index.es148.js +1 -1
  250. package/dist/index.es149.js +1 -1
  251. package/dist/index.es150.js +1 -1
  252. package/dist/index.es151.js +1 -1
  253. package/dist/index.es152.js +1 -1
  254. package/dist/index.es156.js +1 -1
  255. package/dist/index.es157.js +1 -1
  256. package/dist/index.es158.js +1 -1
  257. package/dist/index.es160.js +1 -1
  258. package/dist/index.es161.js +1 -1
  259. package/dist/index.es162.js +1 -1
  260. package/dist/index.es163.js +1 -1
  261. package/dist/index.es164.js +1 -1
  262. package/dist/index.es165.js +1 -1
  263. package/dist/index.es166.js +1 -1
  264. package/dist/index.es167.js +1 -1
  265. package/dist/index.es168.js +1 -1
  266. package/dist/index.es170.js +1 -1
  267. package/dist/index.es171.js +1 -1
  268. package/dist/index.es172.js +1 -1
  269. package/dist/index.es173.js +1 -1
  270. package/dist/index.es174.js +1 -1
  271. package/dist/index.es175.js +1 -1
  272. package/dist/index.es176.js +1 -1
  273. package/dist/index.es178.js +1 -1
  274. package/dist/index.es179.js +1 -1
  275. package/dist/index.es180.js +1 -1
  276. package/dist/index.es181.js +1 -1
  277. package/dist/index.es182.js +1 -1
  278. package/dist/index.es183.js +1 -1
  279. package/dist/index.es184.js +1 -1
  280. package/dist/index.es191.js +1 -1
  281. package/dist/index.es216.js +1 -1
  282. package/dist/index.es22.js +1 -1
  283. package/dist/index.es223.js +2 -2
  284. package/dist/index.es227.js +2 -27
  285. package/dist/index.es227.js.map +1 -1
  286. package/dist/index.es228.js +30 -0
  287. package/dist/index.es228.js.map +1 -0
  288. package/dist/index.es237.js +1 -1
  289. package/dist/index.es244.js +7 -7
  290. package/dist/index.es247.js +1 -1
  291. package/dist/index.es248.js +1 -1
  292. package/dist/index.es25.js +1 -1
  293. package/dist/index.es255.js +8 -8
  294. package/dist/index.es265.js +1 -1
  295. package/dist/index.es269.js +1 -1
  296. package/dist/index.es271.js +14 -14
  297. package/dist/index.es296.js +1 -1
  298. package/dist/index.es297.js +1 -1
  299. package/dist/index.es298.js +7 -7
  300. package/dist/index.es337.js +4 -4
  301. package/dist/index.es350.js +8 -8
  302. package/dist/index.es364.js +3 -3
  303. package/dist/index.es378.js +1 -1
  304. package/dist/index.es379.js +1 -1
  305. package/dist/index.es380.js +5 -3674
  306. package/dist/index.es380.js.map +1 -1
  307. package/dist/index.es381.js +520 -5
  308. package/dist/index.es381.js.map +1 -1
  309. package/dist/index.es382.js +3675 -2
  310. package/dist/index.es382.js.map +1 -1
  311. package/dist/index.es383.js +5 -5
  312. package/dist/index.es383.js.map +1 -1
  313. package/dist/index.es384.js +2 -521
  314. package/dist/index.es384.js.map +1 -1
  315. package/dist/index.es389.js +6 -32
  316. package/dist/index.es389.js.map +1 -1
  317. package/dist/index.es390.js +23 -618
  318. package/dist/index.es390.js.map +1 -1
  319. package/dist/index.es391.js +67 -10
  320. package/dist/index.es391.js.map +1 -1
  321. package/dist/index.es392.js +14 -0
  322. package/dist/index.es392.js.map +1 -0
  323. package/dist/index.es393.js +30 -15
  324. package/dist/index.es393.js.map +1 -1
  325. package/dist/index.es394.js +128 -0
  326. package/dist/index.es394.js.map +1 -0
  327. package/dist/index.es395.js +138 -0
  328. package/dist/index.es395.js.map +1 -0
  329. package/dist/index.es396.js +14 -6
  330. package/dist/index.es396.js.map +1 -1
  331. package/dist/index.es397.js +67 -23
  332. package/dist/index.es397.js.map +1 -1
  333. package/dist/index.es398.js +31 -67
  334. package/dist/index.es398.js.map +1 -1
  335. package/dist/index.es399.js +12 -122
  336. package/dist/index.es399.js.map +1 -1
  337. package/dist/index.es400.js +8 -134
  338. package/dist/index.es400.js.map +1 -1
  339. package/dist/index.es401.js +50 -14
  340. package/dist/index.es401.js.map +1 -1
  341. package/dist/index.es402.js +51 -13
  342. package/dist/index.es402.js.map +1 -1
  343. package/dist/index.es406.js +15 -15
  344. package/dist/index.es406.js.map +1 -1
  345. package/dist/index.es409.js +625 -0
  346. package/dist/index.es409.js.map +1 -0
  347. package/dist/index.es410.js +9 -0
  348. package/dist/index.es410.js.map +1 -0
  349. package/dist/index.es411.js +28 -0
  350. package/dist/index.es411.js.map +1 -0
  351. package/dist/index.es412.js +18 -0
  352. package/dist/index.es412.js.map +1 -0
  353. package/dist/index.es424.js +2 -2032
  354. package/dist/index.es424.js.map +1 -1
  355. package/dist/index.es425.js +2 -60
  356. package/dist/index.es425.js.map +1 -1
  357. package/dist/index.es426.js +2017 -174
  358. package/dist/index.es426.js.map +1 -1
  359. package/dist/index.es427.js +60 -2
  360. package/dist/index.es427.js.map +1 -1
  361. package/dist/index.es428.js +189 -2
  362. package/dist/index.es428.js.map +1 -1
  363. package/dist/index.es429.js +4 -11
  364. package/dist/index.es429.js.map +1 -1
  365. package/dist/index.es430.js +10 -45
  366. package/dist/index.es430.js.map +1 -1
  367. package/dist/index.es431.js +11 -7
  368. package/dist/index.es431.js.map +1 -1
  369. package/dist/index.es432.js +43 -215
  370. package/dist/index.es432.js.map +1 -1
  371. package/dist/index.es433.js +7 -177
  372. package/dist/index.es433.js.map +1 -1
  373. package/dist/index.es434.js +217 -3
  374. package/dist/index.es434.js.map +1 -1
  375. package/dist/index.es435.js +177 -11
  376. package/dist/index.es435.js.map +1 -1
  377. package/dist/index.es441.js +22 -202
  378. package/dist/index.es441.js.map +1 -1
  379. package/dist/index.es442.js +27 -20
  380. package/dist/index.es442.js.map +1 -1
  381. package/dist/index.es443.js +5 -393
  382. package/dist/index.es443.js.map +1 -1
  383. package/dist/index.es444.js +202 -22
  384. package/dist/index.es444.js.map +1 -1
  385. package/dist/index.es445.js +20 -27
  386. package/dist/index.es445.js.map +1 -1
  387. package/dist/index.es446.js +393 -5
  388. package/dist/index.es446.js.map +1 -1
  389. package/dist/index.es447.js +1 -1
  390. package/dist/index.es448.js +5 -5
  391. package/dist/index.es448.js.map +1 -1
  392. package/dist/index.es449.js +3 -4
  393. package/dist/index.es449.js.map +1 -1
  394. package/dist/index.es450.js +23 -4
  395. package/dist/index.es450.js.map +1 -1
  396. package/dist/index.es451.js +109 -9
  397. package/dist/index.es451.js.map +1 -1
  398. package/dist/index.es452.js +15 -55
  399. package/dist/index.es452.js.map +1 -1
  400. package/dist/index.es453.js +5 -8
  401. package/dist/index.es453.js.map +1 -1
  402. package/dist/index.es454.js +4 -6
  403. package/dist/index.es454.js.map +1 -1
  404. package/dist/index.es455.js +4 -532
  405. package/dist/index.es455.js.map +1 -1
  406. package/dist/index.es456.js +10 -5
  407. package/dist/index.es456.js.map +1 -1
  408. package/dist/index.es457.js +56 -3
  409. package/dist/index.es457.js.map +1 -1
  410. package/dist/index.es458.js +7 -23
  411. package/dist/index.es458.js.map +1 -1
  412. package/dist/index.es459.js +5 -109
  413. package/dist/index.es459.js.map +1 -1
  414. package/dist/index.es460.js +531 -14
  415. package/dist/index.es460.js.map +1 -1
  416. package/dist/index.es461.js +69 -40
  417. package/dist/index.es461.js.map +1 -1
  418. package/dist/index.es462.js +9 -2
  419. package/dist/index.es462.js.map +1 -1
  420. package/dist/index.es463.js +14 -2
  421. package/dist/index.es463.js.map +1 -1
  422. package/dist/index.es464.js +62 -2
  423. package/dist/index.es464.js.map +1 -1
  424. package/dist/index.es465.js +65 -3
  425. package/dist/index.es465.js.map +1 -1
  426. package/dist/index.es466.js +40 -2
  427. package/dist/index.es466.js.map +1 -1
  428. package/dist/index.es467.js +2 -4
  429. package/dist/index.es467.js.map +1 -1
  430. package/dist/index.es468.js +2 -5
  431. package/dist/index.es468.js.map +1 -1
  432. package/dist/index.es469.js +2 -523
  433. package/dist/index.es469.js.map +1 -1
  434. package/dist/index.es470.js +3 -127
  435. package/dist/index.es470.js.map +1 -1
  436. package/dist/index.es471.js +2 -129
  437. package/dist/index.es471.js.map +1 -1
  438. package/dist/index.es472.js +3 -64
  439. package/dist/index.es472.js.map +1 -1
  440. package/dist/index.es473.js +5 -69
  441. package/dist/index.es473.js.map +1 -1
  442. package/dist/index.es474.js +4 -9
  443. package/dist/index.es474.js.map +1 -1
  444. package/dist/index.es475.js +520 -11
  445. package/dist/index.es475.js.map +1 -1
  446. package/dist/index.es476.js +126 -61
  447. package/dist/index.es476.js.map +1 -1
  448. package/dist/index.es477.js +128 -3
  449. package/dist/index.es477.js.map +1 -1
  450. package/dist/index.es57.js +1 -1
  451. package/dist/index.es6.js +1 -1
  452. package/dist/index.es66.js +154 -161
  453. package/dist/index.es66.js.map +1 -1
  454. package/dist/index.es67.js +1 -1
  455. package/dist/index.es67.js.map +1 -1
  456. package/dist/index.es7.js +1 -1
  457. package/dist/index.es8.js +1 -1
  458. package/dist/index.es9.js +2 -2
  459. package/package.json +1 -1
  460. package/dist/index.cjs229.js +0 -2
  461. package/dist/index.cjs229.js.map +0 -1
  462. package/dist/index.cjs385.js +0 -2
  463. package/dist/index.cjs385.js.map +0 -1
  464. package/dist/index.cjs386.js +0 -2
  465. package/dist/index.cjs386.js.map +0 -1
  466. package/dist/index.cjs387.js +0 -2
  467. package/dist/index.cjs387.js.map +0 -1
  468. package/dist/index.cjs388.js +0 -2
  469. package/dist/index.cjs388.js.map +0 -1
  470. package/dist/index.cjs403.js +0 -2
  471. package/dist/index.cjs403.js.map +0 -1
  472. package/dist/index.cjs404.js +0 -2
  473. package/dist/index.cjs404.js.map +0 -1
  474. package/dist/index.cjs405.js +0 -2
  475. package/dist/index.cjs405.js.map +0 -1
  476. package/dist/index.es229.js +0 -5
  477. package/dist/index.es229.js.map +0 -1
  478. package/dist/index.es385.js +0 -10
  479. package/dist/index.es385.js.map +0 -1
  480. package/dist/index.es386.js +0 -30
  481. package/dist/index.es386.js.map +0 -1
  482. package/dist/index.es387.js +0 -71
  483. package/dist/index.es387.js.map +0 -1
  484. package/dist/index.es388.js +0 -33
  485. package/dist/index.es388.js.map +0 -1
  486. package/dist/index.es403.js +0 -12
  487. package/dist/index.es403.js.map +0 -1
  488. package/dist/index.es404.js +0 -53
  489. package/dist/index.es404.js.map +0 -1
  490. package/dist/index.es405.js +0 -56
  491. package/dist/index.es405.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.es66.js","sources":["../src/components/ui/Table/index.tsx"],"sourcesContent":["import * as React from \"react\";\nimport clsx from \"clsx\";\nimport \"./Table.scss\";\nimport { Download, Info, TriangleDown, TriangleUp } from \"@/icons\";\nimport { ActionIconText } from \"@/components\";\nimport { CommonIconsType } from \"@/types/icons\";\nimport { InfoPopupProps } from \"../InfoPopup\";\nimport { useEffect } from \"react\";\n\n// per le celle che vanno renderizzate su due righe\nexport interface DoubleLineData {\n firstLine: string;\n secondLine: string;\n}\n\n//per le celle che renderizzano un link o un bottone\nexport interface ActionData {\n label: string | React.ReactNode;\n ariaLabel: string;\n type: \"link\" | \"button\";\n link?: string;\n action?: () => void;\n}\n\nexport interface ColumnConfig {\n label: string;\n ariaLabel: string;\n sortable: boolean;\n action?: () => void;\n iconAction?: () => void;\n popupInfo?: InfoPopupProps;\n icon?: React.ReactNode | CommonIconsType;\n iconPosition?: \"left\" | \"right\";\n key?: string;\n type?: \"string\" | \"date\" | \"number\";\n}\n\nexport interface TableRowData {\n [key: string]: string | DoubleLineData | ActionData;\n}\n\nexport interface TableHeaderProps\n extends React.HTMLAttributes<HTMLTableSectionElement> {\n className?: string;\n children?: React.ReactNode;\n}\n\nexport interface TableBodyProps\n extends React.HTMLAttributes<HTMLTableSectionElement> {\n className?: string;\n children?: React.ReactNode;\n}\n\nexport interface TableRowProps\n extends React.HTMLAttributes<HTMLTableRowElement> {\n className?: string;\n children?: React.ReactNode;\n}\n\nexport interface TableHeadProps\n extends React.ThHTMLAttributes<HTMLTableCellElement> {\n className?: string;\n children?: React.ReactNode;\n}\n\nexport interface TableCellBaseProps\n extends Omit<React.TdHTMLAttributes<HTMLTableCellElement>, \"content\"> {\n type?: \"double-line\" | \"action\";\n}\n\nexport interface TableCellProps extends TableCellBaseProps {\n content: string | DoubleLineData | ActionData;\n}\n\nexport interface PaginationProps {\n currentPage: number;\n totalResults: number;\n resultsPerPage: number;\n setCurrentPage: (page: number) => void;\n onPageChange?: (page: number) => void;\n className?: string;\n serverSide?: boolean;\n totalItems?: number;\n hasNextPage?: boolean;\n hasPreviousPage?: boolean;\n onNextPage?: () => void;\n onPreviousPage?: () => void;\n}\n\nexport interface TableProps\n extends React.TableHTMLAttributes<HTMLTableElement> {\n className?: string;\n columns: ColumnConfig[];\n data: TableRowData[];\n pagination?: boolean;\n initialCurrentPage?: number;\n resultsPerPage?: number;\n defaultSortDirection?: \"asc\" | \"desc\";\n setSelectedSort?: (sortConfig: {\n key: string;\n direction: \"asc\" | \"desc\";\n }) => void;\n initialSortConfig?: { key: string; direction: \"asc\" | \"desc\" };\n serverSidePagination?: boolean;\n totalItems?: number;\n hasNextPage?: boolean;\n hasPreviousPage?: boolean;\n onNextPage?: () => void;\n onPreviousPage?: () => void;\n onPageChange?: (page: number) => void;\n variant?: \"default\" | \"exemptions\";\n}\n\nconst Table = React.forwardRef<HTMLTableElement, TableProps>(\n (\n {\n className,\n columns,\n data,\n pagination,\n initialCurrentPage = 1,\n resultsPerPage = 10,\n defaultSortDirection = \"desc\",\n setSelectedSort,\n initialSortConfig,\n serverSidePagination = false,\n totalItems,\n hasNextPage,\n hasPreviousPage,\n onNextPage,\n onPreviousPage,\n onPageChange,\n ...props\n },\n ref,\n ) => {\n const [sortConfig, setSortConfig] = React.useState<{\n key: string;\n direction: \"asc\" | \"desc\";\n }>(\n initialSortConfig || {\n key: columns[0].key || columns[0].label,\n direction: defaultSortDirection,\n },\n );\n const [currentPage, setCurrentPage] = React.useState(initialCurrentPage);\n\n useEffect(() => {\n if (initialSortConfig) {\n setSortConfig(initialSortConfig);\n }\n }, [initialSortConfig]);\n\n const sortedData = React.useMemo(() => {\n return [...data].sort((a, b) => {\n const aValue = a[sortConfig.key];\n const bValue = b[sortConfig.key];\n const column = columns.find(\n (col) => (col.key || col.label) === sortConfig.key,\n );\n\n if (typeof aValue === \"string\" && typeof bValue === \"string\") {\n if (column?.type === \"date\") {\n // Convert Italian date format (DD/MM/YYYY - HH:mm) to Date object\n const parseDate = (dateStr: string) => {\n const [datePart, timePart] = dateStr.split(\" - \");\n const [day, month, year] = datePart.split(\"/\").map(Number);\n const [hours, minutes] = timePart.split(\":\").map(Number);\n return new Date(year, month - 1, day, hours, minutes);\n };\n\n const dateA = parseDate(aValue);\n const dateB = parseDate(bValue);\n return sortConfig.direction === \"asc\"\n ? dateA.getTime() - dateB.getTime()\n : dateB.getTime() - dateA.getTime();\n }\n\n if (column?.type === \"number\") {\n const numA = parseFloat(aValue);\n const numB = parseFloat(bValue);\n return sortConfig.direction === \"asc\" ? numA - numB : numB - numA;\n }\n\n return sortConfig.direction === \"asc\"\n ? aValue.localeCompare(bValue)\n : bValue.localeCompare(aValue);\n }\n\n if (isDoubleLineData(aValue) && isDoubleLineData(bValue)) {\n return sortConfig.direction === \"asc\"\n ? aValue.firstLine.localeCompare(bValue.firstLine)\n : bValue.firstLine.localeCompare(aValue.firstLine);\n }\n\n return 0;\n });\n }, [data, sortConfig, columns]);\n\n const handleSort = (columnKey: string) => {\n const newSortConfig = {\n key: columnKey,\n direction:\n sortConfig.key === columnKey && sortConfig.direction === \"asc\"\n ? \"desc\"\n : \"asc\",\n } as { key: string; direction: \"asc\" | \"desc\" };\n\n setSortConfig(newSortConfig);\n if (setSelectedSort) {\n setSelectedSort(newSortConfig);\n }\n };\n\n const startIndex =\n pagination && !serverSidePagination\n ? (currentPage - 1) * resultsPerPage\n : 0;\n const endIndex =\n pagination && !serverSidePagination\n ? Math.min(startIndex + resultsPerPage, sortedData.length)\n : sortedData.length;\n const currentPageData = serverSidePagination\n ? sortedData\n : sortedData.slice(startIndex, endIndex);\n\n return (\n <div className=\"position-relative w-full\">\n <table\n ref={ref}\n className={clsx(\"table\", className)}\n role=\"table\"\n {...props}\n >\n <TableHeader className=\"table__header\">\n <TableRow>\n {columns.map((column, index) => (\n <TableHead\n key={`${column.label}-${index}`}\n config={column}\n sortConfig={sortConfig}\n onSort={() =>\n column.sortable && handleSort(column.key || column.label)\n }\n variant={props.variant}\n />\n ))}\n </TableRow>\n </TableHeader>\n <TableBody className=\"table__body\">\n {currentPageData.map((row, rowIndex) => (\n <TableRow key={rowIndex} className=\"table__row\">\n {columns.map((column, cellIndex) => {\n const key = column.key || column.label;\n const value = row[key];\n if (!value) return null;\n if (key === \"actionData\" && isActionData(value)) {\n return (\n <TableCell\n key={`${key}-${cellIndex}`}\n content={value}\n type=\"action\"\n />\n );\n }\n if (isDoubleLineData(value)) {\n return (\n <TableCell\n key={`${key}-${cellIndex}`}\n content={value}\n type=\"double-line\"\n />\n );\n }\n if (typeof value === \"string\") {\n return (\n <TableCell key={`${key}-${cellIndex}`} content={value} />\n );\n }\n return null;\n })}\n </TableRow>\n ))}\n </TableBody>\n </table>\n {pagination && (\n <Pagination\n currentPage={currentPage}\n totalResults={\n serverSidePagination ? totalItems || 0 : sortedData.length\n }\n resultsPerPage={resultsPerPage}\n setCurrentPage={setCurrentPage}\n onPageChange={onPageChange}\n serverSide={serverSidePagination}\n totalItems={totalItems}\n hasNextPage={hasNextPage}\n hasPreviousPage={hasPreviousPage}\n onNextPage={onNextPage}\n onPreviousPage={onPreviousPage}\n />\n )}\n </div>\n );\n },\n);\nTable.displayName = \"Table\";\n\nconst TableHeader = React.forwardRef<HTMLTableSectionElement, TableHeaderProps>(\n ({ className, children, ...props }, ref) => (\n <thead\n ref={ref}\n className={clsx(\"[&_tr]:border-b-0\", className)}\n {...props}\n >\n {children}\n </thead>\n ),\n);\nTableHeader.displayName = \"TableHeader\";\n\nconst TableBody = React.forwardRef<HTMLTableSectionElement, TableBodyProps>(\n ({ className, children, ...props }, ref) => (\n <tbody\n ref={ref}\n className={clsx(\"[&_tr:last-child]:border-0\", className)}\n {...props}\n >\n {children}\n </tbody>\n ),\n);\nTableBody.displayName = \"TableBody\";\n\nconst TableRow = React.forwardRef<HTMLTableRowElement, TableRowProps>(\n ({ className, children, ...props }, ref) => (\n <tr\n ref={ref}\n className={clsx(\n \"border-b transition-colors hover:bg-muted/50 data-[state=selected]:bg-muted\",\n className,\n )}\n {...props}\n >\n {children}\n </tr>\n ),\n);\nTableRow.displayName = \"TableRow\";\n\nconst TableHead = React.forwardRef<\n HTMLTableCellElement,\n TableHeadProps & {\n config: ColumnConfig;\n sortConfig: { key: string; direction: \"asc\" | \"desc\" };\n onSort?: () => void;\n variant?: \"default\" | \"exemptions\";\n }\n>(({ className, config, sortConfig, onSort, ...props }, ref) => {\n const isSorted = sortConfig.key === (config.key || config.label);\n const sortDirection = isSorted ? sortConfig.direction : null;\n\n const getAriaSortValue = (): \"ascending\" | \"descending\" => {\n return sortDirection === \"asc\" ? \"ascending\" : \"descending\";\n };\n\n const renderIcon = (icon: React.ReactNode | CommonIconsType) => {\n switch (icon) {\n case \"info\":\n return <Info />;\n case \"download\":\n return <Download />;\n default:\n return icon;\n }\n };\n\n return (\n <th\n ref={ref}\n className={clsx(\n \"table__cell table__cell--header\",\n {\n \"table__cell--sortable\": config.sortable,\n \"table__cell--action\": config.action,\n },\n className,\n )}\n onClick={config.sortable ? onSort : config.action}\n aria-label={config.ariaLabel}\n aria-sort={isSorted ? getAriaSortValue() : undefined}\n {...props}\n >\n <div className=\"table__cell--header--content\">\n <div>\n <ActionIconText\n icon={renderIcon(config.icon)}\n noIcon={!renderIcon(config.icon)}\n textLabel={config.label}\n iconPosition={config.iconPosition}\n handleIconAction={() => {\n config.iconAction;\n }}\n popupInfo={config.popupInfo}\n positionPopUp={config.popupInfo?.positionPopUp}\n classNameText={\n props.variant && \"fw-bold text-slate-28 fs-custom md-fs-6\"\n }\n />\n </div>\n {config.sortable && (\n <span className=\"sort-indicator\">\n <TriangleUp\n filled={isSorted && sortDirection === \"desc\"}\n className={clsx(\"sort-indicator__triangle\", {\n active: isSorted && sortDirection === \"desc\",\n })}\n />\n <TriangleDown\n filled={isSorted && sortDirection === \"asc\"}\n className={clsx(\"sort-indicator__triangle\", {\n active: isSorted && sortDirection === \"asc\",\n })}\n />\n </span>\n )}\n </div>\n </th>\n );\n});\nTableHead.displayName = \"TableHead\";\n\nconst DoubleLineContent: React.FC<{ data: DoubleLineData }> = ({ data }) => (\n <>\n <div className=\"table__cell--firstLine\">{data.firstLine}</div>\n <div className=\"table__cell--secondLine\">{data.secondLine}</div>\n </>\n);\n\nconst ActionContent: React.FC<{ data: ActionData }> = ({ data }) => {\n if (data.type === \"link\" && data.link) {\n return (\n <a href={data.link} aria-label={data.ariaLabel}>\n {data.label}\n </a>\n );\n }\n return (\n <button onClick={data.action} aria-label={data.ariaLabel}>\n {data.label}\n </button>\n );\n};\n\n// check if we are rendering a double line data\nconst isDoubleLineData = (\n content: TableCellProps[\"content\"],\n): content is DoubleLineData => {\n return (\n typeof content === \"object\" &&\n content !== null &&\n \"firstLine\" in content &&\n \"secondLine\" in content\n );\n};\n\n// check if we are rendering an action data\nconst isActionData = (\n content: TableCellProps[\"content\"],\n): content is ActionData => {\n return (\n typeof content === \"object\" &&\n content !== null &&\n \"label\" in content &&\n \"type\" in content\n );\n};\n\nconst TableCellContent: React.FC<{ content: TableCellProps[\"content\"] }> = ({\n content,\n}) => {\n if (typeof content === \"string\") {\n return <>{content}</>;\n }\n if (isDoubleLineData(content)) {\n return <DoubleLineContent data={content} />;\n }\n if (isActionData(content)) {\n return <ActionContent data={content} />;\n }\n return null;\n};\n\nconst TableCell = React.forwardRef<HTMLTableCellElement, TableCellProps>(\n ({ className, content, type, ...props }, ref) => (\n <td\n ref={ref}\n className={clsx(\n \"table__cell\",\n {\n \"table__cell--double-line\": type === \"double-line\",\n \"table__cell--action\": type === \"action\",\n },\n className,\n )}\n {...props}\n >\n <TableCellContent content={content} />\n </td>\n ),\n);\nTableCell.displayName = \"TableCell\";\n\nconst Pagination: React.FC<PaginationProps> = ({\n currentPage = 1,\n totalResults,\n resultsPerPage,\n setCurrentPage,\n onPageChange,\n className,\n serverSide = false,\n totalItems,\n hasNextPage,\n hasPreviousPage,\n onNextPage,\n onPreviousPage,\n}) => {\n const totalPages = serverSide\n ? Math.ceil((totalItems || totalResults) / resultsPerPage)\n : Math.ceil(totalResults / resultsPerPage);\n\n const handlePageChange = (page: number) => {\n setCurrentPage(page);\n if (onPageChange) {\n onPageChange(page);\n }\n };\n\n const handleNextPage = () => {\n const nextPage = currentPage + 1;\n if (serverSide && onNextPage) {\n onNextPage();\n }\n handlePageChange(nextPage);\n };\n\n const handlePreviousPage = () => {\n const prevPage = currentPage - 1;\n if (serverSide && onPreviousPage) {\n onPreviousPage();\n }\n handlePageChange(prevPage);\n };\n\n const isNextDisabled = serverSide ? !hasNextPage : currentPage === totalPages;\n const isPrevDisabled = serverSide ? !hasPreviousPage : currentPage === 1;\n\n const getPageNumbers = () => {\n const pages = [];\n const maxVisiblePages = 5;\n\n if (totalPages <= maxVisiblePages) {\n for (let i = 1; i <= totalPages; i++) {\n pages.push(i);\n }\n } else {\n pages.push(1);\n\n let start = Math.max(2, currentPage - 1);\n let end = Math.min(totalPages - 1, currentPage + 1);\n\n if (currentPage <= 3) {\n end = 4;\n } else if (currentPage >= totalPages - 2) {\n start = totalPages - 3;\n }\n\n if (start > 2) {\n pages.push(\"...\");\n }\n\n for (let i = start; i <= end; i++) {\n pages.push(i);\n }\n\n if (end < totalPages - 1) {\n pages.push(\"...\");\n }\n\n pages.push(totalPages);\n }\n\n return pages;\n };\n\n return (\n <div className={clsx(\"pagination\", className)}>\n <div className=\"pagination__info\">\n Stai visualizzando{\" \"}\n <span className=\"pagination__info__resultsPerPage\">\n {resultsPerPage}\n </span>{\" \"}\n di {serverSide ? totalItems || totalResults : totalResults} risultati\n </div>\n <div className=\"pagination__nav\">\n <button\n className={clsx(\n \"pagination__button\",\n isPrevDisabled && \"pagination__button--disabled\",\n )}\n onClick={handlePreviousPage}\n disabled={isPrevDisabled}\n aria-label=\"Previous page\"\n >\n <svg className=\"pagination__button-arrow\" viewBox=\"0 0 24 24\">\n <path d=\"M15 18l-6-6 6-6\" />\n </svg>\n </button>\n\n {getPageNumbers().map((page, index) =>\n page === \"...\" ? (\n <span key={`ellipsis-${index}`} className=\"pagination__ellipsis\">\n ...\n </span>\n ) : (\n <button\n key={page}\n className={clsx(\n \"pagination__button\",\n currentPage === page && \"pagination__button--active\",\n )}\n onClick={() => handlePageChange(page as number)}\n disabled={page === currentPage}\n >\n {page}\n </button>\n ),\n )}\n\n <button\n className={clsx(\n \"pagination__button\",\n isNextDisabled && \"pagination__button--disabled\",\n )}\n onClick={handleNextPage}\n disabled={isNextDisabled}\n aria-label=\"Next page\"\n >\n <svg className=\"pagination__button-arrow\" viewBox=\"0 0 24 24\">\n <path d=\"M9 6l6 6-6 6\" />\n </svg>\n </button>\n </div>\n </div>\n );\n};\n\nexport {\n Table,\n TableHeader,\n TableBody,\n TableHead,\n TableRow,\n TableCell,\n Pagination,\n};\n"],"names":["Table","React","className","columns","data","pagination","initialCurrentPage","resultsPerPage","defaultSortDirection","setSelectedSort","initialSortConfig","serverSidePagination","totalItems","hasNextPage","hasPreviousPage","onNextPage","onPreviousPage","onPageChange","props","ref","sortConfig","setSortConfig","currentPage","setCurrentPage","useEffect","sortedData","a","b","aValue","bValue","column","col","parseDate","dateStr","datePart","timePart","day","month","year","hours","minutes","dateA","dateB","numA","numB","isDoubleLineData","handleSort","columnKey","newSortConfig","startIndex","endIndex","currentPageData","jsxs","clsx","jsx","TableHeader","TableRow","index","TableHead","TableBody","row","rowIndex","cellIndex","key","value","isActionData","TableCell","Pagination","children","config","onSort","isSorted","sortDirection","getAriaSortValue","renderIcon","icon","Info","Download","ActionIconText","_a","TriangleUp","TriangleDown","DoubleLineContent","Fragment","ActionContent","content","TableCellContent","type","totalResults","serverSide","totalPages","handlePageChange","page","handleNextPage","nextPage","handlePreviousPage","prevPage","isNextDisabled","isPrevDisabled","getPageNumbers","pages","i","start","end"],"mappings":"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"}
1
+ {"version":3,"file":"index.es66.js","sources":["../src/components/ui/Table/index.tsx"],"sourcesContent":["import * as React from \"react\";\nimport clsx from \"clsx\";\nimport \"./Table.scss\";\nimport { Download, Info, TriangleDown, TriangleUp } from \"@/icons\";\nimport { ActionIconText } from \"@/components\";\nimport { CommonIconsType } from \"@/types/icons\";\nimport { InfoPopupProps } from \"../InfoPopup\";\nimport { useEffect } from \"react\";\n\n// per le celle che vanno renderizzate su due righe\nexport interface DoubleLineData {\n firstLine: string;\n secondLine: string;\n}\n\n//per le celle che renderizzano un link o un bottone\nexport interface ActionData {\n label: string | React.ReactNode;\n ariaLabel: string;\n type: \"link\" | \"button\";\n link?: string;\n action?: () => void;\n}\n\nexport interface ColumnConfig {\n label: string;\n ariaLabel: string;\n sortable: boolean;\n action?: () => void;\n iconAction?: () => void;\n popupInfo?: InfoPopupProps;\n icon?: React.ReactNode | CommonIconsType;\n iconPosition?: \"left\" | \"right\";\n key?: string;\n type?: \"string\" | \"date\" | \"number\";\n}\n\nexport interface TableRowData {\n [key: string]: string | DoubleLineData | ActionData;\n}\n\nexport interface TableHeaderProps\n extends React.HTMLAttributes<HTMLTableSectionElement> {\n className?: string;\n children?: React.ReactNode;\n}\n\nexport interface TableBodyProps\n extends React.HTMLAttributes<HTMLTableSectionElement> {\n className?: string;\n children?: React.ReactNode;\n}\n\nexport interface TableRowProps\n extends React.HTMLAttributes<HTMLTableRowElement> {\n className?: string;\n children?: React.ReactNode;\n}\n\nexport interface TableHeadProps\n extends React.ThHTMLAttributes<HTMLTableCellElement> {\n className?: string;\n children?: React.ReactNode;\n}\n\nexport interface TableCellBaseProps\n extends Omit<React.TdHTMLAttributes<HTMLTableCellElement>, \"content\"> {\n type?: \"double-line\" | \"action\";\n}\n\nexport interface TableCellProps extends TableCellBaseProps {\n content: string | DoubleLineData | ActionData;\n}\n\nexport interface PaginationProps {\n currentPage: number;\n totalResults: number;\n resultsPerPage: number;\n setCurrentPage: (page: number) => void;\n onPageChange?: (page: number) => void;\n className?: string;\n serverSide?: boolean;\n totalItems?: number;\n hasNextPage?: boolean;\n hasPreviousPage?: boolean;\n onNextPage?: () => void;\n onPreviousPage?: () => void;\n}\n\nexport interface TableProps\n extends React.TableHTMLAttributes<HTMLTableElement> {\n className?: string;\n columns: ColumnConfig[];\n data: TableRowData[];\n pagination?: boolean;\n initialCurrentPage?: number;\n resultsPerPage?: number;\n defaultSortDirection?: \"asc\" | \"desc\";\n setSelectedSort?: (sortConfig: {\n key: string;\n direction: \"asc\" | \"desc\";\n }) => void;\n initialSortConfig?: { key: string; direction: \"asc\" | \"desc\" };\n serverSidePagination?: boolean;\n totalItems?: number;\n hasNextPage?: boolean;\n hasPreviousPage?: boolean;\n onNextPage?: () => void;\n onPreviousPage?: () => void;\n onPageChange?: (page: number) => void;\n variant?: \"default\" | \"exemptions\";\n}\n\nconst Table = React.forwardRef<HTMLTableElement, TableProps>(\n (\n {\n className,\n columns,\n data,\n pagination,\n initialCurrentPage = 1,\n resultsPerPage = 10,\n defaultSortDirection = \"desc\",\n setSelectedSort,\n initialSortConfig,\n serverSidePagination = false,\n totalItems,\n hasNextPage,\n hasPreviousPage,\n onNextPage,\n onPreviousPage,\n onPageChange,\n ...props\n },\n ref,\n ) => {\n const [sortConfig, setSortConfig] = React.useState<{\n key: string;\n direction: \"asc\" | \"desc\";\n }>(\n initialSortConfig || {\n key: columns[0].key || columns[0].label,\n direction: defaultSortDirection,\n },\n );\n const [currentPage, setCurrentPage] = React.useState(initialCurrentPage);\n\n useEffect(() => {\n if (initialSortConfig) {\n setSortConfig(initialSortConfig);\n }\n }, [initialSortConfig]);\n\n const sortedData = React.useMemo(() => {\n return [...data].sort((a, b) => {\n const aValue = a[sortConfig.key];\n const bValue = b[sortConfig.key];\n const column = columns.find(\n (col) => (col.key || col.label) === sortConfig.key,\n );\n\n if (typeof aValue === \"string\" && typeof bValue === \"string\") {\n if (column?.type === \"date\") {\n // Convert Italian date format (DD/MM/YYYY - HH:mm) to Date object\n const parseDate = (dateStr: string) => {\n const [datePart, timePart] = dateStr.split(\" - \");\n const [day, month, year] = datePart.split(\"/\").map(Number);\n const [hours, minutes] = timePart.split(\":\").map(Number);\n return new Date(year, month - 1, day, hours, minutes);\n };\n\n const dateA = parseDate(aValue);\n const dateB = parseDate(bValue);\n return sortConfig.direction === \"asc\"\n ? dateA.getTime() - dateB.getTime()\n : dateB.getTime() - dateA.getTime();\n }\n\n if (column?.type === \"number\") {\n const numA = parseFloat(aValue);\n const numB = parseFloat(bValue);\n return sortConfig.direction === \"asc\" ? numA - numB : numB - numA;\n }\n\n return sortConfig.direction === \"asc\"\n ? aValue.localeCompare(bValue)\n : bValue.localeCompare(aValue);\n }\n\n if (isDoubleLineData(aValue) && isDoubleLineData(bValue)) {\n return sortConfig.direction === \"asc\"\n ? aValue.firstLine.localeCompare(bValue.firstLine)\n : bValue.firstLine.localeCompare(aValue.firstLine);\n }\n\n return 0;\n });\n }, [data, sortConfig, columns]);\n\n const handleSort = (columnKey: string) => {\n const newSortConfig = {\n key: columnKey,\n direction:\n sortConfig.key === columnKey && sortConfig.direction === \"asc\"\n ? \"desc\"\n : \"asc\",\n } as { key: string; direction: \"asc\" | \"desc\" };\n\n setSortConfig(newSortConfig);\n if (setSelectedSort) {\n setSelectedSort(newSortConfig);\n }\n };\n\n const startIndex =\n pagination && !serverSidePagination\n ? (currentPage - 1) * resultsPerPage\n : 0;\n const endIndex =\n pagination && !serverSidePagination\n ? Math.min(startIndex + resultsPerPage, sortedData.length)\n : sortedData.length;\n const currentPageData = serverSidePagination\n ? sortedData\n : sortedData.slice(startIndex, endIndex);\n\n return (\n <div className=\"position-relative w-full\">\n <table\n ref={ref}\n className={clsx(\"table\", className)}\n role=\"table\"\n {...props}\n >\n <TableHeader className=\"table__header\">\n <TableRow>\n {columns.map((column, index) => (\n <TableHead\n key={`${column.label}-${index}`}\n config={column}\n sortConfig={sortConfig}\n onSort={() =>\n column.sortable && handleSort(column.key || column.label)\n }\n variant={props.variant}\n />\n ))}\n </TableRow>\n </TableHeader>\n <TableBody className=\"table__body\">\n {currentPageData.map((row, rowIndex) => (\n <TableRow key={rowIndex} className=\"table__row\">\n {columns.map((column, cellIndex) => {\n const key = column.key || column.label;\n const value = row[key];\n return (\n <TableCell\n key={`${key}-${cellIndex}`}\n content={value || \"\"}\n type={\n value && isDoubleLineData(value)\n ? \"double-line\"\n : value && isActionData(value)\n ? \"action\"\n : undefined\n }\n />\n );\n })}\n </TableRow>\n ))}\n </TableBody>\n </table>\n {pagination && (\n <Pagination\n currentPage={currentPage}\n totalResults={\n serverSidePagination ? totalItems || 0 : sortedData.length\n }\n resultsPerPage={resultsPerPage}\n setCurrentPage={setCurrentPage}\n onPageChange={onPageChange}\n serverSide={serverSidePagination}\n totalItems={totalItems}\n hasNextPage={hasNextPage}\n hasPreviousPage={hasPreviousPage}\n onNextPage={onNextPage}\n onPreviousPage={onPreviousPage}\n />\n )}\n </div>\n );\n },\n);\nTable.displayName = \"Table\";\n\nconst TableHeader = React.forwardRef<HTMLTableSectionElement, TableHeaderProps>(\n ({ className, children, ...props }, ref) => (\n <thead\n ref={ref}\n className={clsx(\"[&_tr]:border-b-0\", className)}\n {...props}\n >\n {children}\n </thead>\n ),\n);\nTableHeader.displayName = \"TableHeader\";\n\nconst TableBody = React.forwardRef<HTMLTableSectionElement, TableBodyProps>(\n ({ className, children, ...props }, ref) => (\n <tbody\n ref={ref}\n className={clsx(\"[&_tr:last-child]:border-0\", className)}\n {...props}\n >\n {children}\n </tbody>\n ),\n);\nTableBody.displayName = \"TableBody\";\n\nconst TableRow = React.forwardRef<HTMLTableRowElement, TableRowProps>(\n ({ className, children, ...props }, ref) => (\n <tr\n ref={ref}\n className={clsx(\n \"border-b transition-colors hover:bg-muted/50 data-[state=selected]:bg-muted\",\n className,\n )}\n {...props}\n >\n {children}\n </tr>\n ),\n);\nTableRow.displayName = \"TableRow\";\n\nconst TableHead = React.forwardRef<\n HTMLTableCellElement,\n TableHeadProps & {\n config: ColumnConfig;\n sortConfig: { key: string; direction: \"asc\" | \"desc\" };\n onSort?: () => void;\n variant?: \"default\" | \"exemptions\";\n }\n>(({ className, config, sortConfig, onSort, ...props }, ref) => {\n const isSorted = sortConfig.key === (config.key || config.label);\n const sortDirection = isSorted ? sortConfig.direction : null;\n\n const getAriaSortValue = (): \"ascending\" | \"descending\" => {\n return sortDirection === \"asc\" ? \"ascending\" : \"descending\";\n };\n\n const renderIcon = (icon: React.ReactNode | CommonIconsType) => {\n switch (icon) {\n case \"info\":\n return <Info />;\n case \"download\":\n return <Download />;\n default:\n return icon;\n }\n };\n\n return (\n <th\n ref={ref}\n className={clsx(\n \"table__cell table__cell--header\",\n {\n \"table__cell--sortable\": config.sortable,\n \"table__cell--action\": config.action,\n },\n className,\n )}\n onClick={config.sortable ? onSort : config.action}\n aria-label={config.ariaLabel}\n aria-sort={isSorted ? getAriaSortValue() : undefined}\n {...props}\n >\n <div className=\"table__cell--header--content\">\n <div>\n <ActionIconText\n icon={renderIcon(config.icon)}\n noIcon={!renderIcon(config.icon)}\n textLabel={config.label}\n iconPosition={config.iconPosition}\n handleIconAction={() => {\n if (config.iconAction) {\n config.iconAction();\n }\n }}\n popupInfo={config.popupInfo}\n positionPopUp={config.popupInfo?.positionPopUp}\n classNameText={\n props.variant && \"fw-bold text-slate-28 fs-custom md-fs-6\"\n }\n />\n </div>\n {config.sortable && (\n <span className=\"sort-indicator\">\n <TriangleUp\n filled={isSorted && sortDirection === \"desc\"}\n className={clsx(\"sort-indicator__triangle\", {\n active: isSorted && sortDirection === \"desc\",\n })}\n />\n <TriangleDown\n filled={isSorted && sortDirection === \"asc\"}\n className={clsx(\"sort-indicator__triangle\", {\n active: isSorted && sortDirection === \"asc\",\n })}\n />\n </span>\n )}\n </div>\n </th>\n );\n});\nTableHead.displayName = \"TableHead\";\n\nconst DoubleLineContent: React.FC<{ data: DoubleLineData }> = ({ data }) => (\n <>\n <div className=\"table__cell--firstLine\">{data.firstLine}</div>\n <div className=\"table__cell--secondLine\">{data.secondLine}</div>\n </>\n);\n\nconst ActionContent: React.FC<{ data: ActionData }> = ({ data }) => {\n if (data.type === \"link\" && data.link) {\n return (\n <a href={data.link} aria-label={data.ariaLabel}>\n {data.label}\n </a>\n );\n }\n return (\n <button onClick={data.action} aria-label={data.ariaLabel}>\n {data.label}\n </button>\n );\n};\n\n// check if we are rendering a double line data\nconst isDoubleLineData = (\n content: TableCellProps[\"content\"],\n): content is DoubleLineData => {\n return (\n typeof content === \"object\" &&\n content !== null &&\n \"firstLine\" in content &&\n \"secondLine\" in content\n );\n};\n\n// check if we are rendering an action data\nconst isActionData = (\n content: TableCellProps[\"content\"],\n): content is ActionData => {\n return (\n typeof content === \"object\" &&\n content !== null &&\n \"label\" in content &&\n \"type\" in content\n );\n};\n\nconst TableCellContent: React.FC<{ content: TableCellProps[\"content\"] }> = ({\n content,\n}) => {\n if (typeof content === \"string\") {\n return <>{content}</>;\n }\n if (isDoubleLineData(content)) {\n return <DoubleLineContent data={content} />;\n }\n if (isActionData(content)) {\n return <ActionContent data={content} />;\n }\n return null;\n};\n\nconst TableCell = React.forwardRef<HTMLTableCellElement, TableCellProps>(\n ({ className, content, type, ...props }, ref) => (\n <td\n ref={ref}\n className={clsx(\n \"table__cell\",\n {\n \"table__cell--double-line\": type === \"double-line\",\n \"table__cell--action\": type === \"action\",\n },\n className,\n )}\n {...props}\n >\n <TableCellContent content={content} />\n </td>\n ),\n);\nTableCell.displayName = \"TableCell\";\n\nconst Pagination: React.FC<PaginationProps> = ({\n currentPage = 1,\n totalResults,\n resultsPerPage,\n setCurrentPage,\n onPageChange,\n className,\n serverSide = false,\n totalItems,\n hasNextPage,\n hasPreviousPage,\n onNextPage,\n onPreviousPage,\n}) => {\n const totalPages = serverSide\n ? Math.ceil((totalItems || totalResults) / resultsPerPage)\n : Math.ceil(totalResults / resultsPerPage);\n\n const handlePageChange = (page: number) => {\n setCurrentPage(page);\n if (onPageChange) {\n onPageChange(page);\n }\n };\n\n const handleNextPage = () => {\n const nextPage = currentPage + 1;\n if (serverSide && onNextPage) {\n onNextPage();\n }\n handlePageChange(nextPage);\n };\n\n const handlePreviousPage = () => {\n const prevPage = currentPage - 1;\n if (serverSide && onPreviousPage) {\n onPreviousPage();\n }\n handlePageChange(prevPage);\n };\n\n const isNextDisabled = serverSide ? !hasNextPage : currentPage === totalPages;\n const isPrevDisabled = serverSide ? !hasPreviousPage : currentPage === 1;\n\n const getPageNumbers = () => {\n const pages = [];\n const maxVisiblePages = 5;\n\n if (totalPages <= maxVisiblePages) {\n for (let i = 1; i <= totalPages; i++) {\n pages.push(i);\n }\n } else {\n pages.push(1);\n\n let start = Math.max(2, currentPage - 1);\n let end = Math.min(totalPages - 1, currentPage + 1);\n\n if (currentPage <= 3) {\n end = 4;\n } else if (currentPage >= totalPages - 2) {\n start = totalPages - 3;\n }\n\n if (start > 2) {\n pages.push(\"...\");\n }\n\n for (let i = start; i <= end; i++) {\n pages.push(i);\n }\n\n if (end < totalPages - 1) {\n pages.push(\"...\");\n }\n\n pages.push(totalPages);\n }\n\n return pages;\n };\n\n return (\n <div className={clsx(\"pagination\", className)}>\n <div className=\"pagination__info\">\n Stai visualizzando{\" \"}\n <span className=\"pagination__info__resultsPerPage\">\n {resultsPerPage}\n </span>{\" \"}\n di {serverSide ? totalItems || totalResults : totalResults} risultati\n </div>\n <div className=\"pagination__nav\">\n <button\n className={clsx(\n \"pagination__button\",\n isPrevDisabled && \"pagination__button--disabled\",\n )}\n onClick={handlePreviousPage}\n disabled={isPrevDisabled}\n aria-label=\"Previous page\"\n >\n <svg className=\"pagination__button-arrow\" viewBox=\"0 0 24 24\">\n <path d=\"M15 18l-6-6 6-6\" />\n </svg>\n </button>\n\n {getPageNumbers().map((page, index) =>\n page === \"...\" ? (\n <span key={`ellipsis-${index}`} className=\"pagination__ellipsis\">\n ...\n </span>\n ) : (\n <button\n key={page}\n className={clsx(\n \"pagination__button\",\n currentPage === page && \"pagination__button--active\",\n )}\n onClick={() => handlePageChange(page as number)}\n disabled={page === currentPage}\n >\n {page}\n </button>\n ),\n )}\n\n <button\n className={clsx(\n \"pagination__button\",\n isNextDisabled && \"pagination__button--disabled\",\n )}\n onClick={handleNextPage}\n disabled={isNextDisabled}\n aria-label=\"Next page\"\n >\n <svg className=\"pagination__button-arrow\" viewBox=\"0 0 24 24\">\n <path d=\"M9 6l6 6-6 6\" />\n </svg>\n </button>\n </div>\n </div>\n );\n};\n\nexport {\n Table,\n TableHeader,\n TableBody,\n TableHead,\n TableRow,\n TableCell,\n Pagination,\n};\n"],"names":["Table","React","className","columns","data","pagination","initialCurrentPage","resultsPerPage","defaultSortDirection","setSelectedSort","initialSortConfig","serverSidePagination","totalItems","hasNextPage","hasPreviousPage","onNextPage","onPreviousPage","onPageChange","props","ref","sortConfig","setSortConfig","currentPage","setCurrentPage","useEffect","sortedData","a","b","aValue","bValue","column","col","parseDate","dateStr","datePart","timePart","day","month","year","hours","minutes","dateA","dateB","numA","numB","isDoubleLineData","handleSort","columnKey","newSortConfig","startIndex","endIndex","currentPageData","jsxs","clsx","jsx","TableHeader","TableRow","index","TableHead","TableBody","row","rowIndex","cellIndex","key","value","TableCell","isActionData","Pagination","children","config","onSort","isSorted","sortDirection","getAriaSortValue","renderIcon","icon","Info","Download","ActionIconText","_a","TriangleUp","TriangleDown","DoubleLineContent","Fragment","ActionContent","content","TableCellContent","type","totalResults","serverSide","totalPages","handlePageChange","page","handleNextPage","nextPage","handlePreviousPage","prevPage","isNextDisabled","isPrevDisabled","getPageNumbers","pages","i","start","end"],"mappings":"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"}
@@ -65,7 +65,7 @@ const C = ({
65
65
  onSortChange: l
66
66
  }) => {
67
67
  const m = (n) => {
68
- if (!n) return null;
68
+ if (!n) return "";
69
69
  if (typeof n == "object" && "firstLine" in n) {
70
70
  const e = n;
71
71
  return `${e.firstLine}${e.secondLine ? ` ${e.secondLine}` : ""}`;
@@ -1 +1 @@
1
- {"version":3,"file":"index.es67.js","sources":["../src/components/ui/TableMobile/index.tsx"],"sourcesContent":["import {\n ActionData,\n ActionIconText,\n Button,\n Col,\n ColumnConfig,\n DoubleLineData,\n Row,\n TableRowData,\n} from \"@/components\";\nimport clsx from \"clsx\";\nimport \"./TableMobile.scss\";\nimport { Download, Info, TriangleDown, TriangleUp } from \"@/icons\";\nimport { ReactNode } from \"react\";\nimport * as React from \"react\";\nimport { CommonIconsType } from \"@/types/icons.ts\";\nimport { useState } from \"react\";\n\nexport type TableMobileProps = {\n data: TableRowData[];\n columns: ColumnConfig[];\n pagination?: boolean;\n resultsPerPage?: number;\n totalResults?: number;\n initialCurrentPage?: number;\n serverSidePagination?: boolean;\n totalItems?: number;\n hasNextPage?: boolean;\n onNextPage?: () => void;\n onPageChange?: (page: number) => void;\n setCurrentPage?: (page: number) => void;\n nextButtonLabel?: string;\n sortConfig?: { key: string; direction: \"asc\" | \"desc\" } | null;\n onSortChange?: (key: string, direction: \"asc\" | \"desc\") => void;\n};\n\nexport const TableMobile = ({\n data,\n columns,\n pagination = true,\n resultsPerPage = 5,\n totalResults,\n initialCurrentPage = 1,\n serverSidePagination = false,\n totalItems,\n hasNextPage,\n onNextPage,\n onPageChange,\n setCurrentPage: externalSetCurrentPage,\n nextButtonLabel = \"Visualizza altri\",\n sortConfig = null,\n onSortChange,\n}: TableMobileProps) => {\n const [currentPage, setInternalCurrentPage] = useState(initialCurrentPage);\n const handleSetCurrentPage = (page: number) => {\n setInternalCurrentPage(page);\n externalSetCurrentPage?.(page);\n };\n\n const startIndex = serverSidePagination\n ? 0\n : (currentPage - 1) * resultsPerPage;\n const endIndex = serverSidePagination\n ? data.length\n : Math.min(startIndex + resultsPerPage, data.length);\n const currentPageData = data.slice(startIndex, endIndex);\n\n return (\n <Col className={\"w-full h-full\"} gap={\"x16\"}>\n {currentPageData.map((data, index) => (\n <CardTable\n columns={columns}\n key={index}\n data={data}\n sortConfig={sortConfig}\n onSortChange={onSortChange}\n />\n ))}\n\n {pagination && (\n <TableMobilePagination\n currentPage={currentPage}\n totalResults={totalResults || data.length}\n resultsPerPage={resultsPerPage}\n setCurrentPage={handleSetCurrentPage}\n onPageChange={onPageChange}\n serverSide={serverSidePagination}\n totalItems={totalItems}\n hasNextPage={hasNextPage}\n onNextPage={onNextPage}\n className=\"mt-x16\"\n nextButtonLabel={nextButtonLabel}\n />\n )}\n </Col>\n );\n};\n\nexport type CardTableProps = {\n columns: ColumnConfig[];\n data: TableRowData;\n sortConfig: { key: string; direction: \"asc\" | \"desc\" } | null;\n onSortChange?: (key: string, direction: \"asc\" | \"desc\") => void;\n};\n\nconst ActionContent: React.FC<{ data: ActionData }> = ({ data }) => {\n if (data.type === \"link\" && data.link) {\n return (\n <a href={data.link} aria-label={data.ariaLabel}>\n {data.label}\n </a>\n );\n }\n return (\n <button onClick={data.action} aria-label={data.ariaLabel}>\n {data.label}\n </button>\n );\n};\n\nexport const CardTable = ({\n columns,\n sortConfig,\n data,\n onSortChange,\n}: CardTableProps) => {\n const renderColumnValue = (value: any): ReactNode => {\n if (!value) return null;\n\n if (typeof value === \"object\" && \"firstLine\" in value) {\n const doubleLineValue = value as DoubleLineData;\n return `${doubleLineValue.firstLine}${doubleLineValue.secondLine ? ` ${doubleLineValue.secondLine}` : \"\"}`;\n }\n\n if (typeof value === \"object\" && \"label\" in value && \"type\" in value) {\n return <ActionContent data={value} />;\n }\n\n return value;\n };\n\n const renderIcon = (icon: React.ReactNode | CommonIconsType) => {\n switch (icon) {\n case \"info\":\n return <Info />;\n case \"download\":\n return <Download />;\n default:\n return icon;\n }\n };\n\n const handleSortClick = (key: string) => {\n if (!onSortChange || !sortConfig) return;\n\n const newDirection =\n sortConfig.key === key\n ? sortConfig.direction === \"asc\"\n ? \"desc\"\n : \"asc\"\n : \"asc\";\n\n onSortChange(key, newDirection);\n };\n\n return (\n <div\n className={clsx(\"ui-card-table shadow br-x4 text-slate-28 fs-custom \")}\n >\n {columns.map((column, index) => {\n if (!column.key || column.key === \"actionData\") {\n return (\n <Row\n key={index}\n p={\"x16\"}\n className={\"ui-table-header\"}\n justifyContent={\"space-between\"}\n >\n <Col justifyContent={\"end\"} gap={\"x4\"} className={\"w-full\"}>\n <Row justifyContent={\"end\"} className=\"table-mobile-actions\">\n {renderColumnValue(data.actionData)}\n </Row>\n </Col>\n </Row>\n );\n }\n const columnValue = data[column.key];\n\n const config = column;\n\n const isSorted = sortConfig?.key === column.key;\n const sortDirection = isSorted ? sortConfig.direction : null;\n\n return (\n <Row\n key={index}\n p={\"x16\"}\n className={\"ui-table-header\"}\n justifyContent={\"space-between\"}\n >\n <Col justifyContent={\"center\"} gap={\"x4\"} className={\"w-full\"}>\n <ActionIconText\n justifyContent={\"space-between\"}\n alignItems={\"center\"}\n icon={renderIcon(config.icon)}\n noIcon={!renderIcon(config.icon)}\n textLabel={config.label}\n iconPosition={config.iconPosition}\n popupInfo={config.popupInfo}\n positionPopUp={\"left\"}\n classNameText={\"fw-bold text-slate-28 fs-custom md-fs-6\"}\n >\n {config.sortable && (\n <span\n className=\"sort-indicator\"\n onClick={(e) => {\n e.stopPropagation();\n handleSortClick(column.key!);\n }}\n >\n <TriangleUp\n filled={isSorted && sortDirection === \"desc\"}\n className={clsx(\"sort-indicator__triangle\", {\n active: isSorted && sortDirection === \"desc\",\n })}\n />\n <TriangleDown\n filled={isSorted && sortDirection === \"asc\"}\n className={clsx(\"sort-indicator__triangle\", {\n active: isSorted && sortDirection === \"asc\",\n })}\n />\n </span>\n )}\n </ActionIconText>\n <Row>{renderColumnValue(columnValue)}</Row>\n </Col>\n </Row>\n );\n })}\n </div>\n );\n};\n\nexport type TableMobilePaginationProps = {\n currentPage?: number;\n totalResults?: number;\n resultsPerPage: number;\n setCurrentPage?: (page: number) => void;\n onPageChange?: (page: number) => void;\n className?: string;\n serverSide?: boolean;\n totalItems?: number;\n hasNextPage?: boolean;\n onNextPage?: () => void;\n nextButtonLabel: string;\n};\n\nexport const TableMobilePagination: React.FC<TableMobilePaginationProps> = ({\n currentPage = 1,\n totalResults = 0,\n resultsPerPage,\n setCurrentPage,\n onPageChange,\n className,\n serverSide = false,\n totalItems,\n hasNextPage,\n onNextPage,\n nextButtonLabel,\n}) => {\n const totalPages = serverSide\n ? Math.ceil((totalItems || totalResults) / resultsPerPage)\n : Math.ceil(totalResults / resultsPerPage);\n\n const handleNextPage = () => {\n const nextPage = currentPage + 1;\n if (serverSide && onNextPage) {\n onNextPage();\n }\n\n setCurrentPage?.(nextPage);\n onPageChange?.(nextPage);\n };\n\n const isNextDisabled = serverSide ? !hasNextPage : currentPage === totalPages;\n\n return (\n <Col\n className={clsx(\"pagination-mobile fs-6 text-slate-28\", className)}\n gap=\"x16\"\n >\n <div className=\"info\">\n Stai visualizzando{\" \"}\n <span className=\"info_resultsPerPage fw-bold\">\n {Math.min(\n currentPage * resultsPerPage,\n serverSide ? totalItems || totalResults : totalResults,\n )}\n </span>{\" \"}\n di {serverSide ? totalItems || totalResults : totalResults} risultati\n </div>\n\n <Button\n variant=\"primary\"\n disabled={isNextDisabled}\n size={\"2\"}\n onClick={handleNextPage}\n >\n {nextButtonLabel}\n </Button>\n </Col>\n );\n};\n"],"names":["TableMobile","data","columns","pagination","resultsPerPage","totalResults","initialCurrentPage","serverSidePagination","totalItems","hasNextPage","onNextPage","onPageChange","externalSetCurrentPage","nextButtonLabel","sortConfig","onSortChange","currentPage","setInternalCurrentPage","useState","handleSetCurrentPage","page","startIndex","endIndex","currentPageData","jsxs","Col","index","jsx","CardTable","TableMobilePagination","ActionContent","renderColumnValue","value","doubleLineValue","renderIcon","icon","Info","Download","handleSortClick","key","newDirection","clsx","column","Row","columnValue","config","isSorted","sortDirection","ActionIconText","e","TriangleUp","TriangleDown","setCurrentPage","className","serverSide","totalPages","handleNextPage","nextPage","isNextDisabled","Button"],"mappings":"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"}
1
+ {"version":3,"file":"index.es67.js","sources":["../src/components/ui/TableMobile/index.tsx"],"sourcesContent":["import {\n ActionData,\n ActionIconText,\n Button,\n Col,\n ColumnConfig,\n DoubleLineData,\n Row,\n TableRowData,\n} from \"@/components\";\nimport clsx from \"clsx\";\nimport \"./TableMobile.scss\";\nimport { Download, Info, TriangleDown, TriangleUp } from \"@/icons\";\nimport { ReactNode } from \"react\";\nimport * as React from \"react\";\nimport { CommonIconsType } from \"@/types/icons.ts\";\nimport { useState } from \"react\";\n\nexport type TableMobileProps = {\n data: TableRowData[];\n columns: ColumnConfig[];\n pagination?: boolean;\n resultsPerPage?: number;\n totalResults?: number;\n initialCurrentPage?: number;\n serverSidePagination?: boolean;\n totalItems?: number;\n hasNextPage?: boolean;\n onNextPage?: () => void;\n onPageChange?: (page: number) => void;\n setCurrentPage?: (page: number) => void;\n nextButtonLabel?: string;\n sortConfig?: { key: string; direction: \"asc\" | \"desc\" } | null;\n onSortChange?: (key: string, direction: \"asc\" | \"desc\") => void;\n};\n\nexport const TableMobile = ({\n data,\n columns,\n pagination = true,\n resultsPerPage = 5,\n totalResults,\n initialCurrentPage = 1,\n serverSidePagination = false,\n totalItems,\n hasNextPage,\n onNextPage,\n onPageChange,\n setCurrentPage: externalSetCurrentPage,\n nextButtonLabel = \"Visualizza altri\",\n sortConfig = null,\n onSortChange,\n}: TableMobileProps) => {\n const [currentPage, setInternalCurrentPage] = useState(initialCurrentPage);\n const handleSetCurrentPage = (page: number) => {\n setInternalCurrentPage(page);\n externalSetCurrentPage?.(page);\n };\n\n const startIndex = serverSidePagination\n ? 0\n : (currentPage - 1) * resultsPerPage;\n const endIndex = serverSidePagination\n ? data.length\n : Math.min(startIndex + resultsPerPage, data.length);\n const currentPageData = data.slice(startIndex, endIndex);\n\n return (\n <Col className={\"w-full h-full\"} gap={\"x16\"}>\n {currentPageData.map((data, index) => (\n <CardTable\n columns={columns}\n key={index}\n data={data}\n sortConfig={sortConfig}\n onSortChange={onSortChange}\n />\n ))}\n\n {pagination && (\n <TableMobilePagination\n currentPage={currentPage}\n totalResults={totalResults || data.length}\n resultsPerPage={resultsPerPage}\n setCurrentPage={handleSetCurrentPage}\n onPageChange={onPageChange}\n serverSide={serverSidePagination}\n totalItems={totalItems}\n hasNextPage={hasNextPage}\n onNextPage={onNextPage}\n className=\"mt-x16\"\n nextButtonLabel={nextButtonLabel}\n />\n )}\n </Col>\n );\n};\n\nexport type CardTableProps = {\n columns: ColumnConfig[];\n data: TableRowData;\n sortConfig: { key: string; direction: \"asc\" | \"desc\" } | null;\n onSortChange?: (key: string, direction: \"asc\" | \"desc\") => void;\n};\n\nconst ActionContent: React.FC<{ data: ActionData }> = ({ data }) => {\n if (data.type === \"link\" && data.link) {\n return (\n <a href={data.link} aria-label={data.ariaLabel}>\n {data.label}\n </a>\n );\n }\n return (\n <button onClick={data.action} aria-label={data.ariaLabel}>\n {data.label}\n </button>\n );\n};\n\nexport const CardTable = ({\n columns,\n sortConfig,\n data,\n onSortChange,\n}: CardTableProps) => {\n const renderColumnValue = (value: any): ReactNode => {\n if (!value) return \"\";\n\n if (typeof value === \"object\" && \"firstLine\" in value) {\n const doubleLineValue = value as DoubleLineData;\n return `${doubleLineValue.firstLine}${doubleLineValue.secondLine ? ` ${doubleLineValue.secondLine}` : \"\"}`;\n }\n\n if (typeof value === \"object\" && \"label\" in value && \"type\" in value) {\n return <ActionContent data={value} />;\n }\n\n return value;\n };\n\n const renderIcon = (icon: React.ReactNode | CommonIconsType) => {\n switch (icon) {\n case \"info\":\n return <Info />;\n case \"download\":\n return <Download />;\n default:\n return icon;\n }\n };\n\n const handleSortClick = (key: string) => {\n if (!onSortChange || !sortConfig) return;\n\n const newDirection =\n sortConfig.key === key\n ? sortConfig.direction === \"asc\"\n ? \"desc\"\n : \"asc\"\n : \"asc\";\n\n onSortChange(key, newDirection);\n };\n\n return (\n <div\n className={clsx(\"ui-card-table shadow br-x4 text-slate-28 fs-custom \")}\n >\n {columns.map((column, index) => {\n if (!column.key || column.key === \"actionData\") {\n return (\n <Row\n key={index}\n p={\"x16\"}\n className={\"ui-table-header\"}\n justifyContent={\"space-between\"}\n >\n <Col justifyContent={\"end\"} gap={\"x4\"} className={\"w-full\"}>\n <Row justifyContent={\"end\"} className=\"table-mobile-actions\">\n {renderColumnValue(data.actionData)}\n </Row>\n </Col>\n </Row>\n );\n }\n\n const columnValue = data[column.key];\n const config = column;\n const isSorted = sortConfig?.key === column.key;\n const sortDirection = isSorted ? sortConfig.direction : null;\n\n return (\n <Row\n key={index}\n p={\"x16\"}\n className={\"ui-table-header\"}\n justifyContent={\"space-between\"}\n >\n <Col justifyContent={\"center\"} gap={\"x4\"} className={\"w-full\"}>\n <ActionIconText\n justifyContent={\"space-between\"}\n alignItems={\"center\"}\n icon={renderIcon(config.icon)}\n noIcon={!renderIcon(config.icon)}\n textLabel={config.label}\n iconPosition={config.iconPosition}\n popupInfo={config.popupInfo}\n positionPopUp={\"left\"}\n classNameText={\"fw-bold text-slate-28 fs-custom md-fs-6\"}\n >\n {config.sortable && (\n <span\n className=\"sort-indicator\"\n onClick={(e) => {\n e.stopPropagation();\n handleSortClick(column.key!);\n }}\n >\n <TriangleUp\n filled={isSorted && sortDirection === \"desc\"}\n className={clsx(\"sort-indicator__triangle\", {\n active: isSorted && sortDirection === \"desc\",\n })}\n />\n <TriangleDown\n filled={isSorted && sortDirection === \"asc\"}\n className={clsx(\"sort-indicator__triangle\", {\n active: isSorted && sortDirection === \"asc\",\n })}\n />\n </span>\n )}\n </ActionIconText>\n <Row>{renderColumnValue(columnValue)}</Row>\n </Col>\n </Row>\n );\n })}\n </div>\n );\n};\n\nexport type TableMobilePaginationProps = {\n currentPage?: number;\n totalResults?: number;\n resultsPerPage: number;\n setCurrentPage?: (page: number) => void;\n onPageChange?: (page: number) => void;\n className?: string;\n serverSide?: boolean;\n totalItems?: number;\n hasNextPage?: boolean;\n onNextPage?: () => void;\n nextButtonLabel: string;\n};\n\nexport const TableMobilePagination: React.FC<TableMobilePaginationProps> = ({\n currentPage = 1,\n totalResults = 0,\n resultsPerPage,\n setCurrentPage,\n onPageChange,\n className,\n serverSide = false,\n totalItems,\n hasNextPage,\n onNextPage,\n nextButtonLabel,\n}) => {\n const totalPages = serverSide\n ? Math.ceil((totalItems || totalResults) / resultsPerPage)\n : Math.ceil(totalResults / resultsPerPage);\n\n const handleNextPage = () => {\n const nextPage = currentPage + 1;\n if (serverSide && onNextPage) {\n onNextPage();\n }\n\n setCurrentPage?.(nextPage);\n onPageChange?.(nextPage);\n };\n\n const isNextDisabled = serverSide ? !hasNextPage : currentPage === totalPages;\n\n return (\n <Col\n className={clsx(\"pagination-mobile fs-6 text-slate-28\", className)}\n gap=\"x16\"\n >\n <div className=\"info\">\n Stai visualizzando{\" \"}\n <span className=\"info_resultsPerPage fw-bold\">\n {Math.min(\n currentPage * resultsPerPage,\n serverSide ? totalItems || totalResults : totalResults,\n )}\n </span>{\" \"}\n di {serverSide ? totalItems || totalResults : totalResults} risultati\n </div>\n\n <Button\n variant=\"primary\"\n disabled={isNextDisabled}\n size={\"2\"}\n onClick={handleNextPage}\n >\n {nextButtonLabel}\n </Button>\n </Col>\n );\n};\n"],"names":["TableMobile","data","columns","pagination","resultsPerPage","totalResults","initialCurrentPage","serverSidePagination","totalItems","hasNextPage","onNextPage","onPageChange","externalSetCurrentPage","nextButtonLabel","sortConfig","onSortChange","currentPage","setInternalCurrentPage","useState","handleSetCurrentPage","page","startIndex","endIndex","currentPageData","jsxs","Col","index","jsx","CardTable","TableMobilePagination","ActionContent","renderColumnValue","value","doubleLineValue","renderIcon","icon","Info","Download","handleSortClick","key","newDirection","clsx","column","Row","columnValue","config","isSorted","sortDirection","ActionIconText","e","TriangleUp","TriangleDown","setCurrentPage","className","serverSide","totalPages","handleNextPage","nextPage","isNextDisabled","Button"],"mappings":";;;;;;;;;;;;AAoCO,MAAMA,IAAc,CAAC;AAAA,EAC1B,MAAAC;AAAA,EACA,SAAAC;AAAA,EACA,YAAAC,IAAa;AAAA,EACb,gBAAAC,IAAiB;AAAA,EACjB,cAAAC;AAAA,EACA,oBAAAC,IAAqB;AAAA,EACrB,sBAAAC,IAAuB;AAAA,EACvB,YAAAC;AAAA,EACA,aAAAC;AAAA,EACA,YAAAC;AAAA,EACA,cAAAC;AAAA,EACA,gBAAgBC;AAAA,EAChB,iBAAAC,IAAkB;AAAA,EAClB,YAAAC,IAAa;AAAA,EACb,cAAAC;AACF,MAAwB;AACtB,QAAM,CAACC,GAAaC,CAAsB,IAAIC,EAASZ,CAAkB,GACnEa,IAAuB,CAACC,MAAiB;AAC7C,IAAAH,EAAuBG,CAAI,GAC3BR,KAAA,QAAAA,EAAyBQ;AAAA,EAC3B,GAEMC,IAAad,IACf,KACCS,IAAc,KAAKZ,GAClBkB,IAAWf,IACbN,EAAK,SACL,KAAK,IAAIoB,IAAajB,GAAgBH,EAAK,MAAM,GAC/CsB,IAAkBtB,EAAK,MAAMoB,GAAYC,CAAQ;AAEvD,SACGE,gBAAAA,EAAAA,KAAAC,GAAA,EAAI,WAAW,iBAAiB,KAAK,OACnC,UAAA;AAAA,IAAgBF,EAAA,IAAI,CAACtB,GAAMyB,MAC1BC,gBAAAA,EAAA;AAAA,MAACC;AAAA,MAAA;AAAA,QACC,SAAA1B;AAAA,QAEA,MAAMD;AAAAA,QACN,YAAAa;AAAA,QACA,cAAAC;AAAA,MAAA;AAAA,MAHKW;AAAA,IAAA,CAKR;AAAA,IAEAvB,KACCwB,gBAAAA,EAAA;AAAA,MAACE;AAAA,MAAA;AAAA,QACC,aAAAb;AAAA,QACA,cAAcX,KAAgBJ,EAAK;AAAA,QACnC,gBAAAG;AAAA,QACA,gBAAgBe;AAAA,QAChB,cAAAR;AAAA,QACA,YAAYJ;AAAA,QACZ,YAAAC;AAAA,QACA,aAAAC;AAAA,QACA,YAAAC;AAAA,QACA,WAAU;AAAA,QACV,iBAAAG;AAAA,MAAA;AAAA,IAAA;AAAA,EACF,GAEJ;AAEJ,GASMiB,IAAgD,CAAC,EAAE,MAAA7B,QACnDA,EAAK,SAAS,UAAUA,EAAK,OAE7B0B,gBAAAA,EAAA,IAAC,OAAE,MAAM1B,EAAK,MAAM,cAAYA,EAAK,WAClC,UAAAA,EAAK,MACR,CAAA,IAIF0B,gBAAAA,EAAA,IAAC,YAAO,SAAS1B,EAAK,QAAQ,cAAYA,EAAK,WAC5C,UAAAA,EAAK,MACR,CAAA,GAIS2B,IAAY,CAAC;AAAA,EACxB,SAAA1B;AAAA,EACA,YAAAY;AAAA,EACA,MAAAb;AAAA,EACA,cAAAc;AACF,MAAsB;AACd,QAAAgB,IAAoB,CAACC,MAA0B;AAC/C,QAAA,CAACA,EAAc,QAAA;AAEnB,QAAI,OAAOA,KAAU,YAAY,eAAeA,GAAO;AACrD,YAAMC,IAAkBD;AACjB,aAAA,GAAGC,EAAgB,SAAS,GAAGA,EAAgB,aAAa,IAAIA,EAAgB,UAAU,KAAK,EAAE;AAAA,IAAA;AAG1G,WAAI,OAAOD,KAAU,YAAY,WAAWA,KAAS,UAAUA,IACtDL,gBAAAA,EAAA,IAACG,GAAc,EAAA,MAAME,EAAO,CAAA,IAG9BA;AAAA,EACT,GAEME,IAAa,CAACC,MAA4C;AAC9D,YAAQA,GAAM;AAAA,MACZ,KAAK;AACH,qCAAQC,GAAK,EAAA;AAAA,MACf,KAAK;AACH,qCAAQC,GAAS,EAAA;AAAA,MACnB;AACS,eAAAF;AAAA,IAAA;AAAA,EAEb,GAEMG,IAAkB,CAACC,MAAgB;AACnC,QAAA,CAACxB,KAAgB,CAACD,EAAY;AAE5B,UAAA0B,IACJ1B,EAAW,QAAQyB,KACfzB,EAAW,cAAc,QACvB,SAEF;AAEN,IAAAC,EAAawB,GAAKC,CAAY;AAAA,EAChC;AAGE,SAAAb,gBAAAA,EAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAWc,EAAK,qDAAqD;AAAA,MAEpE,UAAQvC,EAAA,IAAI,CAACwC,GAAQhB,MAAU;AAC9B,YAAI,CAACgB,EAAO,OAAOA,EAAO,QAAQ;AAE9B,iBAAAf,gBAAAA,EAAA;AAAA,YAACgB;AAAA,YAAA;AAAA,cAEC,GAAG;AAAA,cACH,WAAW;AAAA,cACX,gBAAgB;AAAA,cAEhB,gCAAClB,GAAI,EAAA,gBAAgB,OAAO,KAAK,MAAM,WAAW,UAChD,UAAAE,gBAAAA,EAAAA,IAACgB,GAAI,EAAA,gBAAgB,OAAO,WAAU,wBACnC,YAAkB1C,EAAK,UAAU,GACpC,EACF,CAAA;AAAA,YAAA;AAAA,YATKyB;AAAA,UAUP;AAIE,cAAAkB,IAAc3C,EAAKyC,EAAO,GAAG,GAC7BG,IAASH,GACTI,KAAWhC,KAAA,gBAAAA,EAAY,SAAQ4B,EAAO,KACtCK,IAAgBD,IAAWhC,EAAW,YAAY;AAGtD,eAAAa,gBAAAA,EAAA;AAAA,UAACgB;AAAA,UAAA;AAAA,YAEC,GAAG;AAAA,YACH,WAAW;AAAA,YACX,gBAAgB;AAAA,YAEhB,iCAAClB,GAAI,EAAA,gBAAgB,UAAU,KAAK,MAAM,WAAW,UACnD,UAAA;AAAA,cAAAE,gBAAAA,EAAA;AAAA,gBAACqB;AAAA,gBAAA;AAAA,kBACC,gBAAgB;AAAA,kBAChB,YAAY;AAAA,kBACZ,MAAMd,EAAWW,EAAO,IAAI;AAAA,kBAC5B,QAAQ,CAACX,EAAWW,EAAO,IAAI;AAAA,kBAC/B,WAAWA,EAAO;AAAA,kBAClB,cAAcA,EAAO;AAAA,kBACrB,WAAWA,EAAO;AAAA,kBAClB,eAAe;AAAA,kBACf,eAAe;AAAA,kBAEd,YAAO,YACNrB,gBAAAA,EAAA;AAAA,oBAAC;AAAA,oBAAA;AAAA,sBACC,WAAU;AAAA,sBACV,SAAS,CAACyB,MAAM;AACd,wBAAAA,EAAE,gBAAgB,GAClBX,EAAgBI,EAAO,GAAI;AAAA,sBAC7B;AAAA,sBAEA,UAAA;AAAA,wBAAAf,gBAAAA,EAAA;AAAA,0BAACuB;AAAA,0BAAA;AAAA,4BACC,QAAQJ,KAAYC,MAAkB;AAAA,4BACtC,WAAWN,EAAK,4BAA4B;AAAA,8BAC1C,QAAQK,KAAYC,MAAkB;AAAA,4BACvC,CAAA;AAAA,0BAAA;AAAA,wBACH;AAAA,wBACApB,gBAAAA,EAAA;AAAA,0BAACwB;AAAA,0BAAA;AAAA,4BACC,QAAQL,KAAYC,MAAkB;AAAA,4BACtC,WAAWN,EAAK,4BAA4B;AAAA,8BAC1C,QAAQK,KAAYC,MAAkB;AAAA,4BACvC,CAAA;AAAA,0BAAA;AAAA,wBAAA;AAAA,sBACH;AAAA,oBAAA;AAAA,kBAAA;AAAA,gBACF;AAAA,cAEJ;AAAA,cACCpB,gBAAAA,EAAAA,IAAAgB,GAAA,EAAK,UAAkBZ,EAAAa,CAAW,EAAE,CAAA;AAAA,YAAA,EACvC,CAAA;AAAA,UAAA;AAAA,UAzCKlB;AAAA,QA0CP;AAAA,MAEH,CAAA;AAAA,IAAA;AAAA,EACH;AAEJ,GAgBaG,IAA8D,CAAC;AAAA,EAC1E,aAAAb,IAAc;AAAA,EACd,cAAAX,IAAe;AAAA,EACf,gBAAAD;AAAA,EACA,gBAAAgD;AAAA,EACA,cAAAzC;AAAA,EACA,WAAA0C;AAAA,EACA,YAAAC,IAAa;AAAA,EACb,YAAA9C;AAAA,EACA,aAAAC;AAAA,EACA,YAAAC;AAAA,EACA,iBAAAG;AACF,MAAM;AACE,QAAA0C,IACF,KAAK,KADUD,KACJ9C,KAAcH,KAAgBD,IAC/BC,IAAeD,CAD8B,GAGrDoD,IAAiB,MAAM;AAC3B,UAAMC,IAAWzC,IAAc;AAC/B,IAAIsC,KAAc5C,KACLA,EAAA,GAGb0C,KAAA,QAAAA,EAAiBK,IACjB9C,KAAA,QAAAA,EAAe8C;AAAA,EACjB,GAEMC,IAAiBJ,IAAa,CAAC7C,IAAcO,MAAgBuC;AAGjE,SAAA/B,gBAAAA,EAAA;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,WAAWgB,EAAK,wCAAwCY,CAAS;AAAA,MACjE,KAAI;AAAA,MAEJ,UAAA;AAAA,QAAC7B,gBAAAA,EAAAA,KAAA,OAAA,EAAI,WAAU,QAAO,UAAA;AAAA,UAAA;AAAA,UACD;AAAA,UAClBG,gBAAAA,EAAA,IAAA,QAAA,EAAK,WAAU,+BACb,UAAK,KAAA;AAAA,YACJX,IAAcZ;AAAA,YACdkD,KAAa9C,KAAcH;AAAA,UAAe,GAE9C;AAAA,UAAQ;AAAA,UAAI;AAAA,UACRiD,KAAa9C,KAAcH;AAAA,UAA4B;AAAA,QAAA,GAC7D;AAAA,QAEAsB,gBAAAA,EAAA;AAAA,UAACgC;AAAA,UAAA;AAAA,YACC,SAAQ;AAAA,YACR,UAAUD;AAAA,YACV,MAAM;AAAA,YACN,SAASF;AAAA,YAER,UAAA3C;AAAA,UAAA;AAAA,QAAA;AAAA,MACH;AAAA,IAAA;AAAA,EACF;AAEJ;"}
package/dist/index.es7.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import { j as a } from "./index.es212.js";
2
2
  import { useMemo as i } from "react";
3
3
  import { clsx as m } from "./index.es214.js";
4
- import { createSpacingClasses as c } from "./index.es227.js";
4
+ import { createSpacingClasses as c } from "./index.es228.js";
5
5
  const g = ({
6
6
  as: o,
7
7
  className: r,
package/dist/index.es8.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import { j as g } from "./index.es212.js";
2
2
  import { useMemo as s } from "react";
3
3
  import { clsx as x } from "./index.es214.js";
4
- import { createSpacingClasses as f } from "./index.es227.js";
4
+ import { createSpacingClasses as f } from "./index.es228.js";
5
5
  const v = ({
6
6
  as: e,
7
7
  className: i,
package/dist/index.es9.js CHANGED
@@ -1,8 +1,8 @@
1
1
  import { j as x } from "./index.es212.js";
2
2
  import { useMemo as y } from "react";
3
3
  import { clsx as g } from "./index.es214.js";
4
- import { createSpacingClasses as j } from "./index.es227.js";
5
- import { createColorClasses as u } from "./index.es229.js";
4
+ import { createSpacingClasses as j } from "./index.es228.js";
5
+ import { createColorClasses as u } from "./index.es227.js";
6
6
  import { createTypographyClasses as h } from "./index.es230.js";
7
7
  const E = ({
8
8
  as: o,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@anoki/fse-ui",
3
- "version": "1.0.731",
3
+ "version": "1.0.732",
4
4
  "description": "FSE UI components library",
5
5
  "type": "module",
6
6
  "main": "dist/index.cjs.js",
@@ -1,2 +0,0 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=["bg","text","color","border"],o=e=>t.map(r=>e[r]?r==="color"?`text-${e[r]}`:`${r}-${e[r]}`:"").filter(Boolean);exports.createColorClasses=o;
2
- //# sourceMappingURL=index.cjs229.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.cjs229.js","sources":["../src/theme/colors.ts"],"sourcesContent":["export type ColorKeys =\n | \"primary\"\n | \"white\"\n | \"status-success\"\n | \"warning\"\n | \"error\"\n | \"muted\"\n | \"emphasis\"\n | \"slate-20\"\n | \"slate-14\"\n | \"slate-28\"\n | \"border-divider\"\n | \"transparent\"\n | \"blue-30\"\n | \"disabled\"\n | \"lightblue-a01\"\n | \"lightblue-a02\"\n | \"lightblue-a03\"\n | \"secondary\"\n | \"blue-48\";\n\nexport type ColorProps = {\n bg?: ColorKeys;\n text?: ColorKeys;\n color?: ColorKeys;\n border?: ColorKeys;\n};\n\nexport type ColorPropsKeys = keyof ColorProps;\nconst colorPropsKeys: ColorPropsKeys[] = [\"bg\", \"text\", \"color\", \"border\"];\n\nexport const createColorClasses = <TProps extends ColorProps>(\n props: TProps,\n) => {\n return colorPropsKeys\n .map((key) => {\n if (!props[key]) return \"\";\n\n if (key === \"color\") return `text-${props[key]}`;\n return `${key}-${props[key]}`;\n })\n .filter(Boolean);\n};\n"],"names":["colorPropsKeys","createColorClasses","props","key"],"mappings":"gFA6BA,MAAMA,EAAmC,CAAC,KAAM,OAAQ,QAAS,QAAQ,EAE5DC,EACXC,GAEOF,EACJ,IAAKG,GACCD,EAAMC,CAAG,EAEVA,IAAQ,QAAgB,QAAQD,EAAMC,CAAG,CAAC,GACvC,GAAGA,CAAG,IAAID,EAAMC,CAAG,CAAC,GAHH,EAIzB,EACA,OAAO,OAAO"}
@@ -1,2 +0,0 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});function u(s,c,{checkForDefaultPrevented:t=!0}={}){return function(f){if(s==null||s(f),t===!1||!f.defaultPrevented)return c==null?void 0:c(f)}}exports.composeEventHandlers=u;
2
- //# sourceMappingURL=index.cjs385.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.cjs385.js","sources":["../node_modules/@radix-ui/primitive/dist/index.mjs"],"sourcesContent":["// packages/core/primitive/src/primitive.tsx\nfunction composeEventHandlers(originalEventHandler, ourEventHandler, { checkForDefaultPrevented = true } = {}) {\n return function handleEvent(event) {\n originalEventHandler?.(event);\n if (checkForDefaultPrevented === false || !event.defaultPrevented) {\n return ourEventHandler?.(event);\n }\n };\n}\nexport {\n composeEventHandlers\n};\n//# sourceMappingURL=index.mjs.map\n"],"names":["composeEventHandlers","originalEventHandler","ourEventHandler","checkForDefaultPrevented","event"],"mappings":"gFACA,SAASA,EAAqBC,EAAsBC,EAAiB,CAAE,yBAAAC,EAA2B,EAAM,EAAG,GAAI,CAC7G,OAAO,SAAqBC,EAAO,CAEjC,GADAH,GAAA,MAAAA,EAAuBG,GACnBD,IAA6B,IAAS,CAACC,EAAM,iBAC/C,OAAOF,GAAA,YAAAA,EAAkBE,EAE5B,CACH","x_google_ignoreList":[0]}
@@ -1,2 +0,0 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const l=require("react");function f(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const n in e)if(n!=="default"){const u=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,u.get?u:{enumerable:!0,get:()=>e[n]})}}return t.default=e,Object.freeze(t)}const i=f(l);function r(e,t){if(typeof e=="function")return e(t);e!=null&&(e.current=t)}function s(...e){return t=>{let n=!1;const u=e.map(o=>{const c=r(o,t);return!n&&typeof c=="function"&&(n=!0),c});if(n)return()=>{for(let o=0;o<u.length;o++){const c=u[o];typeof c=="function"?c():r(e[o],null)}}}}function a(...e){return i.useCallback(s(...e),e)}exports.composeRefs=s;exports.useComposedRefs=a;
2
- //# sourceMappingURL=index.cjs386.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.cjs386.js","sources":["../node_modules/@radix-ui/react-compose-refs/dist/index.mjs"],"sourcesContent":["// packages/react/compose-refs/src/compose-refs.tsx\nimport * as React from \"react\";\nfunction setRef(ref, value) {\n if (typeof ref === \"function\") {\n return ref(value);\n } else if (ref !== null && ref !== void 0) {\n ref.current = value;\n }\n}\nfunction composeRefs(...refs) {\n return (node) => {\n let hasCleanup = false;\n const cleanups = refs.map((ref) => {\n const cleanup = setRef(ref, node);\n if (!hasCleanup && typeof cleanup == \"function\") {\n hasCleanup = true;\n }\n return cleanup;\n });\n if (hasCleanup) {\n return () => {\n for (let i = 0; i < cleanups.length; i++) {\n const cleanup = cleanups[i];\n if (typeof cleanup == \"function\") {\n cleanup();\n } else {\n setRef(refs[i], null);\n }\n }\n };\n }\n };\n}\nfunction useComposedRefs(...refs) {\n return React.useCallback(composeRefs(...refs), refs);\n}\nexport {\n composeRefs,\n useComposedRefs\n};\n//# sourceMappingURL=index.mjs.map\n"],"names":["setRef","ref","value","composeRefs","refs","node","hasCleanup","cleanups","cleanup","i","useComposedRefs","React"],"mappings":"mYAEA,SAASA,EAAOC,EAAKC,EAAO,CAC1B,GAAI,OAAOD,GAAQ,WACjB,OAAOA,EAAIC,CAAK,EACPD,GAAQ,OACjBA,EAAI,QAAUC,EAElB,CACA,SAASC,KAAeC,EAAM,CAC5B,OAAQC,GAAS,CACf,IAAIC,EAAa,GACjB,MAAMC,EAAWH,EAAK,IAAKH,GAAQ,CACjC,MAAMO,EAAUR,EAAOC,EAAKI,CAAI,EAChC,MAAI,CAACC,GAAc,OAAOE,GAAW,aACnCF,EAAa,IAERE,CACb,CAAK,EACD,GAAIF,EACF,MAAO,IAAM,CACX,QAASG,EAAI,EAAGA,EAAIF,EAAS,OAAQE,IAAK,CACxC,MAAMD,EAAUD,EAASE,CAAC,EACtB,OAAOD,GAAW,WACpBA,EAAS,EAETR,EAAOI,EAAKK,CAAC,EAAG,IAAI,CAEhC,CACO,CAEJ,CACH,CACA,SAASC,KAAmBN,EAAM,CAChC,OAAOO,EAAM,YAAYR,EAAY,GAAGC,CAAI,EAAGA,CAAI,CACrD","x_google_ignoreList":[0]}
@@ -1,2 +0,0 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const j=require("react"),b=require("./index.cjs212.js");function P(e){const r=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const t in e)if(t!=="default"){const s=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(r,t,s.get?s:{enumerable:!0,get:()=>e[t]})}}return r.default=e,Object.freeze(r)}const i=P(j);function g(e,r){const t=i.createContext(r),s=c=>{const{children:n,...o}=c,u=i.useMemo(()=>o,Object.values(o));return b.jsxRuntimeExports.jsx(t.Provider,{value:u,children:n})};s.displayName=e+"Provider";function a(c){const n=i.useContext(t);if(n)return n;if(r!==void 0)return r;throw new Error(`\`${c}\` must be used within \`${e}\``)}return[s,a]}function _(e,r=[]){let t=[];function s(c,n){const o=i.createContext(n),u=t.length;t=[...t,n];const f=d=>{var S;const{scope:x,children:m,...p}=d,l=((S=x==null?void 0:x[e])==null?void 0:S[u])||o,C=i.useMemo(()=>p,Object.values(p));return b.jsxRuntimeExports.jsx(l.Provider,{value:C,children:m})};f.displayName=c+"Provider";function v(d,x){var l;const m=((l=x==null?void 0:x[e])==null?void 0:l[u])||o,p=i.useContext(m);if(p)return p;if(n!==void 0)return n;throw new Error(`\`${d}\` must be used within \`${c}\``)}return[f,v]}const a=()=>{const c=t.map(n=>i.createContext(n));return function(o){const u=(o==null?void 0:o[e])||c;return i.useMemo(()=>({[`__scope${e}`]:{...o,[e]:u}}),[o,u])}};return a.scopeName=e,[s,h(a,...r)]}function h(...e){const r=e[0];if(e.length===1)return r;const t=()=>{const s=e.map(a=>({useScope:a(),scopeName:a.scopeName}));return function(c){const n=s.reduce((o,{useScope:u,scopeName:f})=>{const d=u(c)[`__scope${f}`];return{...o,...d}},{});return i.useMemo(()=>({[`__scope${r.scopeName}`]:n}),[n])}};return t.scopeName=r.scopeName,t}exports.createContext=g;exports.createContextScope=_;
2
- //# sourceMappingURL=index.cjs387.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.cjs387.js","sources":["../node_modules/@radix-ui/react-context/dist/index.mjs"],"sourcesContent":["// packages/react/context/src/create-context.tsx\nimport * as React from \"react\";\nimport { jsx } from \"react/jsx-runtime\";\nfunction createContext2(rootComponentName, defaultContext) {\n const Context = React.createContext(defaultContext);\n const Provider = (props) => {\n const { children, ...context } = props;\n const value = React.useMemo(() => context, Object.values(context));\n return /* @__PURE__ */ jsx(Context.Provider, { value, children });\n };\n Provider.displayName = rootComponentName + \"Provider\";\n function useContext2(consumerName) {\n const context = React.useContext(Context);\n if (context) return context;\n if (defaultContext !== void 0) return defaultContext;\n throw new Error(`\\`${consumerName}\\` must be used within \\`${rootComponentName}\\``);\n }\n return [Provider, useContext2];\n}\nfunction createContextScope(scopeName, createContextScopeDeps = []) {\n let defaultContexts = [];\n function createContext3(rootComponentName, defaultContext) {\n const BaseContext = React.createContext(defaultContext);\n const index = defaultContexts.length;\n defaultContexts = [...defaultContexts, defaultContext];\n const Provider = (props) => {\n const { scope, children, ...context } = props;\n const Context = scope?.[scopeName]?.[index] || BaseContext;\n const value = React.useMemo(() => context, Object.values(context));\n return /* @__PURE__ */ jsx(Context.Provider, { value, children });\n };\n Provider.displayName = rootComponentName + \"Provider\";\n function useContext2(consumerName, scope) {\n const Context = scope?.[scopeName]?.[index] || BaseContext;\n const context = React.useContext(Context);\n if (context) return context;\n if (defaultContext !== void 0) return defaultContext;\n throw new Error(`\\`${consumerName}\\` must be used within \\`${rootComponentName}\\``);\n }\n return [Provider, useContext2];\n }\n const createScope = () => {\n const scopeContexts = defaultContexts.map((defaultContext) => {\n return React.createContext(defaultContext);\n });\n return function useScope(scope) {\n const contexts = scope?.[scopeName] || scopeContexts;\n return React.useMemo(\n () => ({ [`__scope${scopeName}`]: { ...scope, [scopeName]: contexts } }),\n [scope, contexts]\n );\n };\n };\n createScope.scopeName = scopeName;\n return [createContext3, composeContextScopes(createScope, ...createContextScopeDeps)];\n}\nfunction composeContextScopes(...scopes) {\n const baseScope = scopes[0];\n if (scopes.length === 1) return baseScope;\n const createScope = () => {\n const scopeHooks = scopes.map((createScope2) => ({\n useScope: createScope2(),\n scopeName: createScope2.scopeName\n }));\n return function useComposedScopes(overrideScopes) {\n const nextScopes = scopeHooks.reduce((nextScopes2, { useScope, scopeName }) => {\n const scopeProps = useScope(overrideScopes);\n const currentScope = scopeProps[`__scope${scopeName}`];\n return { ...nextScopes2, ...currentScope };\n }, {});\n return React.useMemo(() => ({ [`__scope${baseScope.scopeName}`]: nextScopes }), [nextScopes]);\n };\n };\n createScope.scopeName = baseScope.scopeName;\n return createScope;\n}\nexport {\n createContext2 as createContext,\n createContextScope\n};\n//# sourceMappingURL=index.mjs.map\n"],"names":["createContext2","rootComponentName","defaultContext","Context","React","Provider","props","children","context","value","jsx","useContext2","consumerName","createContextScope","scopeName","createContextScopeDeps","defaultContexts","createContext3","BaseContext","index","scope","_a","createScope","scopeContexts","contexts","composeContextScopes","scopes","baseScope","scopeHooks","createScope2","overrideScopes","nextScopes","nextScopes2","useScope","currentScope"],"mappings":"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","x_google_ignoreList":[0]}
@@ -1,2 +0,0 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const b=require("react"),f=require("./index.cjs429.js");function S(e){const o=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const t in e)if(t!=="default"){const n=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(o,t,n.get?n:{enumerable:!0,get:()=>e[t]})}}return o.default=e,Object.freeze(o)}const s=S(b);function g({prop:e,defaultProp:o,onChange:t=()=>{}}){const[n,c]=v({defaultProp:o,onChange:t}),l=e!==void 0,i=l?e:n,u=f.useCallbackRef(t),d=s.useCallback(r=>{if(l){const a=typeof r=="function"?r(e):r;a!==e&&u(a)}else c(r)},[l,e,c,u]);return[i,d]}function v({defaultProp:e,onChange:o}){const t=s.useState(e),[n]=t,c=s.useRef(n),l=f.useCallbackRef(o);return s.useEffect(()=>{c.current!==n&&(l(n),c.current=n)},[n,c,l]),t}exports.useControllableState=g;
2
- //# sourceMappingURL=index.cjs388.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.cjs388.js","sources":["../node_modules/@radix-ui/react-use-controllable-state/dist/index.mjs"],"sourcesContent":["// packages/react/use-controllable-state/src/use-controllable-state.tsx\nimport * as React from \"react\";\nimport { useCallbackRef } from \"@radix-ui/react-use-callback-ref\";\nfunction useControllableState({\n prop,\n defaultProp,\n onChange = () => {\n }\n}) {\n const [uncontrolledProp, setUncontrolledProp] = useUncontrolledState({ defaultProp, onChange });\n const isControlled = prop !== void 0;\n const value = isControlled ? prop : uncontrolledProp;\n const handleChange = useCallbackRef(onChange);\n const setValue = React.useCallback(\n (nextValue) => {\n if (isControlled) {\n const setter = nextValue;\n const value2 = typeof nextValue === \"function\" ? setter(prop) : nextValue;\n if (value2 !== prop) handleChange(value2);\n } else {\n setUncontrolledProp(nextValue);\n }\n },\n [isControlled, prop, setUncontrolledProp, handleChange]\n );\n return [value, setValue];\n}\nfunction useUncontrolledState({\n defaultProp,\n onChange\n}) {\n const uncontrolledState = React.useState(defaultProp);\n const [value] = uncontrolledState;\n const prevValueRef = React.useRef(value);\n const handleChange = useCallbackRef(onChange);\n React.useEffect(() => {\n if (prevValueRef.current !== value) {\n handleChange(value);\n prevValueRef.current = value;\n }\n }, [value, prevValueRef, handleChange]);\n return uncontrolledState;\n}\nexport {\n useControllableState\n};\n//# sourceMappingURL=index.mjs.map\n"],"names":["useControllableState","prop","defaultProp","onChange","uncontrolledProp","setUncontrolledProp","useUncontrolledState","isControlled","value","handleChange","useCallbackRef","setValue","React","nextValue","value2","uncontrolledState","prevValueRef"],"mappings":"kaAGA,SAASA,EAAqB,CAC5B,KAAAC,EACA,YAAAC,EACA,SAAAC,EAAW,IAAM,CACnB,CACA,EAAG,CACD,KAAM,CAACC,EAAkBC,CAAmB,EAAIC,EAAqB,CAAE,YAAAJ,EAAa,SAAAC,EAAU,EACxFI,EAAeN,IAAS,OACxBO,EAAQD,EAAeN,EAAOG,EAC9BK,EAAeC,EAAc,eAACP,CAAQ,EACtCQ,EAAWC,EAAM,YACpBC,GAAc,CACb,GAAIN,EAAc,CAEhB,MAAMO,EAAS,OAAOD,GAAc,WADrBA,EACyCZ,CAAI,EAAIY,EAC5DC,IAAWb,GAAMQ,EAAaK,CAAM,CAChD,MACQT,EAAoBQ,CAAS,CAEhC,EACD,CAACN,EAAcN,EAAMI,EAAqBI,CAAY,CACvD,EACD,MAAO,CAACD,EAAOG,CAAQ,CACzB,CACA,SAASL,EAAqB,CAC5B,YAAAJ,EACA,SAAAC,CACF,EAAG,CACD,MAAMY,EAAoBH,EAAM,SAASV,CAAW,EAC9C,CAACM,CAAK,EAAIO,EACVC,EAAeJ,EAAM,OAAOJ,CAAK,EACjCC,EAAeC,EAAc,eAACP,CAAQ,EAC5CS,OAAAA,EAAM,UAAU,IAAM,CAChBI,EAAa,UAAYR,IAC3BC,EAAaD,CAAK,EAClBQ,EAAa,QAAUR,EAE1B,EAAE,CAACA,EAAOQ,EAAcP,CAAY,CAAC,EAC/BM,CACT","x_google_ignoreList":[0]}
@@ -1,2 +0,0 @@
1
- "use strict";const a=require("./index.cjs444.js"),l=require("react"),s=require("./index.cjs445.js"),i=require("./index.cjs446.js");function u(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const r in e)if(r!=="default"){const c=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,c.get?c:{enumerable:!0,get:()=>e[r]})}}return t.default=e,Object.freeze(t)}const o=u(l);var n=o.forwardRef(function(e,t){return o.createElement(s.RemoveScroll,a.__assign({},e,{ref:t,sideCar:i}))});n.classNames=s.RemoveScroll.classNames;module.exports=n;
2
- //# sourceMappingURL=index.cjs403.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.cjs403.js","sources":["../node_modules/react-remove-scroll/dist/es2015/Combination.js"],"sourcesContent":["import { __assign } from \"tslib\";\nimport * as React from 'react';\nimport { RemoveScroll } from './UI';\nimport SideCar from './sidecar';\nvar ReactRemoveScroll = React.forwardRef(function (props, ref) { return (React.createElement(RemoveScroll, __assign({}, props, { ref: ref, sideCar: SideCar }))); });\nReactRemoveScroll.classNames = RemoveScroll.classNames;\nexport default ReactRemoveScroll;\n"],"names":["ReactRemoveScroll","React","props","ref","RemoveScroll","__assign","SideCar"],"mappings":"6ZAIG,IAACA,EAAoBC,EAAM,WAAW,SAAUC,EAAOC,EAAK,CAAE,OAAQF,EAAM,cAAcG,EAAAA,aAAcC,EAAAA,SAAS,CAAE,EAAEH,EAAO,CAAE,IAAKC,EAAK,QAASG,EAAS,CAAC,CAAK,CAAA,EACnKN,EAAkB,WAAaI,EAAAA,aAAa","x_google_ignoreList":[0]}
@@ -1,2 +0,0 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});var k=function(r){if(typeof document>"u")return null;var u=Array.isArray(r)?r[0]:r;return u.ownerDocument.body},f=new WeakMap,v=new WeakMap,p={},h=0,b=function(r){return r&&(r.host||b(r.parentNode))},O=function(r,u){return u.map(function(t){if(r.contains(t))return t;var n=b(t);return n&&r.contains(n)?n:(console.error("aria-hidden",t,"in not contained inside",r,". Doing nothing"),null)}).filter(function(t){return!!t})},D=function(r,u,t,n){var i=O(u,Array.isArray(r)?r:[r]);p[t]||(p[t]=new WeakMap);var o=p[t],l=[],s=new Set,S=new Set(i),y=function(e){!e||s.has(e)||(s.add(e),y(e.parentNode))};i.forEach(y);var A=function(e){!e||S.has(e)||Array.prototype.forEach.call(e.children,function(a){if(s.has(a))A(a);else try{var c=a.getAttribute(n),d=c!==null&&c!=="false",w=(f.get(a)||0)+1,M=(o.get(a)||0)+1;f.set(a,w),o.set(a,M),l.push(a),w===1&&d&&v.set(a,!0),M===1&&a.setAttribute(t,"true"),d||a.setAttribute(n,"true")}catch(W){console.error("aria-hidden: cannot operate on ",a,W)}})};return A(u),s.clear(),h++,function(){l.forEach(function(e){var a=f.get(e)-1,c=o.get(e)-1;f.set(e,a),o.set(e,c),a||(v.has(e)||e.removeAttribute(n),v.delete(e)),c||e.removeAttribute(t)}),h--,h||(f=new WeakMap,f=new WeakMap,v=new WeakMap,p={})}},E=function(r,u,t){t===void 0&&(t="data-aria-hidden");var n=Array.from(Array.isArray(r)?r:[r]),i=k(r);return i?(n.push.apply(n,Array.from(i.querySelectorAll("[aria-live]"))),D(n,i,t,"aria-hidden")):function(){return null}};exports.hideOthers=E;
2
- //# sourceMappingURL=index.cjs404.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.cjs404.js","sources":["../node_modules/aria-hidden/dist/es2015/index.js"],"sourcesContent":["var getDefaultParent = function (originalTarget) {\n if (typeof document === 'undefined') {\n return null;\n }\n var sampleTarget = Array.isArray(originalTarget) ? originalTarget[0] : originalTarget;\n return sampleTarget.ownerDocument.body;\n};\nvar counterMap = new WeakMap();\nvar uncontrolledNodes = new WeakMap();\nvar markerMap = {};\nvar lockCount = 0;\nvar unwrapHost = function (node) {\n return node && (node.host || unwrapHost(node.parentNode));\n};\nvar correctTargets = function (parent, targets) {\n return targets\n .map(function (target) {\n if (parent.contains(target)) {\n return target;\n }\n var correctedTarget = unwrapHost(target);\n if (correctedTarget && parent.contains(correctedTarget)) {\n return correctedTarget;\n }\n console.error('aria-hidden', target, 'in not contained inside', parent, '. Doing nothing');\n return null;\n })\n .filter(function (x) { return Boolean(x); });\n};\n/**\n * Marks everything except given node(or nodes) as aria-hidden\n * @param {Element | Element[]} originalTarget - elements to keep on the page\n * @param [parentNode] - top element, defaults to document.body\n * @param {String} [markerName] - a special attribute to mark every node\n * @param {String} [controlAttribute] - html Attribute to control\n * @return {Undo} undo command\n */\nvar applyAttributeToOthers = function (originalTarget, parentNode, markerName, controlAttribute) {\n var targets = correctTargets(parentNode, Array.isArray(originalTarget) ? originalTarget : [originalTarget]);\n if (!markerMap[markerName]) {\n markerMap[markerName] = new WeakMap();\n }\n var markerCounter = markerMap[markerName];\n var hiddenNodes = [];\n var elementsToKeep = new Set();\n var elementsToStop = new Set(targets);\n var keep = function (el) {\n if (!el || elementsToKeep.has(el)) {\n return;\n }\n elementsToKeep.add(el);\n keep(el.parentNode);\n };\n targets.forEach(keep);\n var deep = function (parent) {\n if (!parent || elementsToStop.has(parent)) {\n return;\n }\n Array.prototype.forEach.call(parent.children, function (node) {\n if (elementsToKeep.has(node)) {\n deep(node);\n }\n else {\n try {\n var attr = node.getAttribute(controlAttribute);\n var alreadyHidden = attr !== null && attr !== 'false';\n var counterValue = (counterMap.get(node) || 0) + 1;\n var markerValue = (markerCounter.get(node) || 0) + 1;\n counterMap.set(node, counterValue);\n markerCounter.set(node, markerValue);\n hiddenNodes.push(node);\n if (counterValue === 1 && alreadyHidden) {\n uncontrolledNodes.set(node, true);\n }\n if (markerValue === 1) {\n node.setAttribute(markerName, 'true');\n }\n if (!alreadyHidden) {\n node.setAttribute(controlAttribute, 'true');\n }\n }\n catch (e) {\n console.error('aria-hidden: cannot operate on ', node, e);\n }\n }\n });\n };\n deep(parentNode);\n elementsToKeep.clear();\n lockCount++;\n return function () {\n hiddenNodes.forEach(function (node) {\n var counterValue = counterMap.get(node) - 1;\n var markerValue = markerCounter.get(node) - 1;\n counterMap.set(node, counterValue);\n markerCounter.set(node, markerValue);\n if (!counterValue) {\n if (!uncontrolledNodes.has(node)) {\n node.removeAttribute(controlAttribute);\n }\n uncontrolledNodes.delete(node);\n }\n if (!markerValue) {\n node.removeAttribute(markerName);\n }\n });\n lockCount--;\n if (!lockCount) {\n // clear\n counterMap = new WeakMap();\n counterMap = new WeakMap();\n uncontrolledNodes = new WeakMap();\n markerMap = {};\n }\n };\n};\n/**\n * Marks everything except given node(or nodes) as aria-hidden\n * @param {Element | Element[]} originalTarget - elements to keep on the page\n * @param [parentNode] - top element, defaults to document.body\n * @param {String} [markerName] - a special attribute to mark every node\n * @return {Undo} undo command\n */\nexport var hideOthers = function (originalTarget, parentNode, markerName) {\n if (markerName === void 0) { markerName = 'data-aria-hidden'; }\n var targets = Array.from(Array.isArray(originalTarget) ? originalTarget : [originalTarget]);\n var activeParentNode = parentNode || getDefaultParent(originalTarget);\n if (!activeParentNode) {\n return function () { return null; };\n }\n // we should not hide ariaLive elements - https://github.com/theKashey/aria-hidden/issues/10\n targets.push.apply(targets, Array.from(activeParentNode.querySelectorAll('[aria-live]')));\n return applyAttributeToOthers(targets, activeParentNode, markerName, 'aria-hidden');\n};\n/**\n * Marks everything except given node(or nodes) as inert\n * @param {Element | Element[]} originalTarget - elements to keep on the page\n * @param [parentNode] - top element, defaults to document.body\n * @param {String} [markerName] - a special attribute to mark every node\n * @return {Undo} undo command\n */\nexport var inertOthers = function (originalTarget, parentNode, markerName) {\n if (markerName === void 0) { markerName = 'data-inert-ed'; }\n var activeParentNode = parentNode || getDefaultParent(originalTarget);\n if (!activeParentNode) {\n return function () { return null; };\n }\n return applyAttributeToOthers(originalTarget, activeParentNode, markerName, 'inert');\n};\n/**\n * @returns if current browser supports inert\n */\nexport var supportsInert = function () {\n return typeof HTMLElement !== 'undefined' && HTMLElement.prototype.hasOwnProperty('inert');\n};\n/**\n * Automatic function to \"suppress\" DOM elements - _hide_ or _inert_ in the best possible way\n * @param {Element | Element[]} originalTarget - elements to keep on the page\n * @param [parentNode] - top element, defaults to document.body\n * @param {String} [markerName] - a special attribute to mark every node\n * @return {Undo} undo command\n */\nexport var suppressOthers = function (originalTarget, parentNode, markerName) {\n if (markerName === void 0) { markerName = 'data-suppressed'; }\n return (supportsInert() ? inertOthers : hideOthers)(originalTarget, parentNode, markerName);\n};\n"],"names":["getDefaultParent","originalTarget","sampleTarget","counterMap","uncontrolledNodes","markerMap","lockCount","unwrapHost","node","correctTargets","parent","targets","target","correctedTarget","x","applyAttributeToOthers","parentNode","markerName","controlAttribute","markerCounter","hiddenNodes","elementsToKeep","elementsToStop","keep","el","deep","attr","alreadyHidden","counterValue","markerValue","e","hideOthers","activeParentNode"],"mappings":"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","x_google_ignoreList":[0]}
@@ -1,2 +0,0 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const y=require("react"),g=require("./index.cjs386.js"),u=require("./index.cjs212.js");function S(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const n in e)if(n!=="default"){const r=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,r.get?r:{enumerable:!0,get:()=>e[n]})}}return t.default=e,Object.freeze(t)}const l=S(y);function b(e){const t=x(e),n=l.forwardRef((r,o)=>{const{children:i,...c}=r,s=l.Children.toArray(i),f=s.find(E);if(f){const a=f.props.children,m=s.map(p=>p===f?l.Children.count(a)>1?l.Children.only(null):l.isValidElement(a)?a.props.children:null:p);return u.jsxRuntimeExports.jsx(t,{...c,ref:o,children:l.isValidElement(a)?l.cloneElement(a,void 0,m):null})}return u.jsxRuntimeExports.jsx(t,{...c,ref:o,children:i})});return n.displayName=`${e}.Slot`,n}function x(e){const t=l.forwardRef((n,r)=>{const{children:o,...i}=n;if(l.isValidElement(o)){const c=O(o),s=R(i,o.props);return o.type!==l.Fragment&&(s.ref=r?g.composeRefs(r,c):c),l.cloneElement(o,s)}return l.Children.count(o)>1?l.Children.only(null):null});return t.displayName=`${e}.SlotClone`,t}var d=Symbol("radix.slottable");function j(e){const t=({children:n})=>u.jsxRuntimeExports.jsx(u.jsxRuntimeExports.Fragment,{children:n});return t.displayName=`${e}.Slottable`,t.__radixId=d,t}function E(e){return l.isValidElement(e)&&typeof e.type=="function"&&"__radixId"in e.type&&e.type.__radixId===d}function R(e,t){const n={...t};for(const r in t){const o=e[r],i=t[r];/^on[A-Z]/.test(r)?o&&i?n[r]=(...s)=>{i(...s),o(...s)}:o&&(n[r]=o):r==="style"?n[r]={...o,...i}:r==="className"&&(n[r]=[o,i].filter(Boolean).join(" "))}return{...e,...n}}function O(e){var r,o;let t=(r=Object.getOwnPropertyDescriptor(e.props,"ref"))==null?void 0:r.get,n=t&&"isReactWarning"in t&&t.isReactWarning;return n?e.ref:(t=(o=Object.getOwnPropertyDescriptor(e,"ref"))==null?void 0:o.get,n=t&&"isReactWarning"in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}exports.createSlot=b;exports.createSlottable=j;
2
- //# sourceMappingURL=index.cjs405.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.cjs405.js","sources":["../node_modules/@radix-ui/react-slot/dist/index.mjs"],"sourcesContent":["// packages/react/slot/src/slot.tsx\nimport * as React from \"react\";\nimport { composeRefs } from \"@radix-ui/react-compose-refs\";\nimport { Fragment as Fragment2, jsx } from \"react/jsx-runtime\";\n// @__NO_SIDE_EFFECTS__\nfunction createSlot(ownerName) {\n const SlotClone = /* @__PURE__ */ createSlotClone(ownerName);\n const Slot2 = React.forwardRef((props, forwardedRef) => {\n const { children, ...slotProps } = props;\n const childrenArray = React.Children.toArray(children);\n const slottable = childrenArray.find(isSlottable);\n if (slottable) {\n const newElement = slottable.props.children;\n const newChildren = childrenArray.map((child) => {\n if (child === slottable) {\n if (React.Children.count(newElement) > 1) return React.Children.only(null);\n return React.isValidElement(newElement) ? newElement.props.children : null;\n } else {\n return child;\n }\n });\n return /* @__PURE__ */ jsx(SlotClone, { ...slotProps, ref: forwardedRef, children: React.isValidElement(newElement) ? React.cloneElement(newElement, void 0, newChildren) : null });\n }\n return /* @__PURE__ */ jsx(SlotClone, { ...slotProps, ref: forwardedRef, children });\n });\n Slot2.displayName = `${ownerName}.Slot`;\n return Slot2;\n}\nvar Slot = /* @__PURE__ */ createSlot(\"Slot\");\n// @__NO_SIDE_EFFECTS__\nfunction createSlotClone(ownerName) {\n const SlotClone = React.forwardRef((props, forwardedRef) => {\n const { children, ...slotProps } = props;\n if (React.isValidElement(children)) {\n const childrenRef = getElementRef(children);\n const props2 = mergeProps(slotProps, children.props);\n if (children.type !== React.Fragment) {\n props2.ref = forwardedRef ? composeRefs(forwardedRef, childrenRef) : childrenRef;\n }\n return React.cloneElement(children, props2);\n }\n return React.Children.count(children) > 1 ? React.Children.only(null) : null;\n });\n SlotClone.displayName = `${ownerName}.SlotClone`;\n return SlotClone;\n}\nvar SLOTTABLE_IDENTIFIER = Symbol(\"radix.slottable\");\n// @__NO_SIDE_EFFECTS__\nfunction createSlottable(ownerName) {\n const Slottable2 = ({ children }) => {\n return /* @__PURE__ */ jsx(Fragment2, { children });\n };\n Slottable2.displayName = `${ownerName}.Slottable`;\n Slottable2.__radixId = SLOTTABLE_IDENTIFIER;\n return Slottable2;\n}\nvar Slottable = /* @__PURE__ */ createSlottable(\"Slottable\");\nfunction isSlottable(child) {\n return React.isValidElement(child) && typeof child.type === \"function\" && \"__radixId\" in child.type && child.type.__radixId === SLOTTABLE_IDENTIFIER;\n}\nfunction mergeProps(slotProps, childProps) {\n const overrideProps = { ...childProps };\n for (const propName in childProps) {\n const slotPropValue = slotProps[propName];\n const childPropValue = childProps[propName];\n const isHandler = /^on[A-Z]/.test(propName);\n if (isHandler) {\n if (slotPropValue && childPropValue) {\n overrideProps[propName] = (...args) => {\n childPropValue(...args);\n slotPropValue(...args);\n };\n } else if (slotPropValue) {\n overrideProps[propName] = slotPropValue;\n }\n } else if (propName === \"style\") {\n overrideProps[propName] = { ...slotPropValue, ...childPropValue };\n } else if (propName === \"className\") {\n overrideProps[propName] = [slotPropValue, childPropValue].filter(Boolean).join(\" \");\n }\n }\n return { ...slotProps, ...overrideProps };\n}\nfunction getElementRef(element) {\n let getter = Object.getOwnPropertyDescriptor(element.props, \"ref\")?.get;\n let mayWarn = getter && \"isReactWarning\" in getter && getter.isReactWarning;\n if (mayWarn) {\n return element.ref;\n }\n getter = Object.getOwnPropertyDescriptor(element, \"ref\")?.get;\n mayWarn = getter && \"isReactWarning\" in getter && getter.isReactWarning;\n if (mayWarn) {\n return element.props.ref;\n }\n return element.props.ref || element.ref;\n}\nexport {\n Slot as Root,\n Slot,\n Slottable,\n createSlot,\n createSlottable\n};\n//# sourceMappingURL=index.mjs.map\n"],"names":["createSlot","ownerName","SlotClone","createSlotClone","Slot2","React","props","forwardedRef","children","slotProps","childrenArray","slottable","isSlottable","newElement","newChildren","child","jsx","childrenRef","getElementRef","props2","mergeProps","composeRefs","SLOTTABLE_IDENTIFIER","createSlottable","Slottable2","Fragment2","childProps","overrideProps","propName","slotPropValue","childPropValue","args","element","getter","_a","mayWarn","_b"],"mappings":"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","x_google_ignoreList":[0]}
@@ -1,5 +0,0 @@
1
- const t = ["bg", "text", "color", "border"], e = (o) => t.map((r) => o[r] ? r === "color" ? `text-${o[r]}` : `${r}-${o[r]}` : "").filter(Boolean);
2
- export {
3
- e as createColorClasses
4
- };
5
- //# sourceMappingURL=index.es229.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.es229.js","sources":["../src/theme/colors.ts"],"sourcesContent":["export type ColorKeys =\n | \"primary\"\n | \"white\"\n | \"status-success\"\n | \"warning\"\n | \"error\"\n | \"muted\"\n | \"emphasis\"\n | \"slate-20\"\n | \"slate-14\"\n | \"slate-28\"\n | \"border-divider\"\n | \"transparent\"\n | \"blue-30\"\n | \"disabled\"\n | \"lightblue-a01\"\n | \"lightblue-a02\"\n | \"lightblue-a03\"\n | \"secondary\"\n | \"blue-48\";\n\nexport type ColorProps = {\n bg?: ColorKeys;\n text?: ColorKeys;\n color?: ColorKeys;\n border?: ColorKeys;\n};\n\nexport type ColorPropsKeys = keyof ColorProps;\nconst colorPropsKeys: ColorPropsKeys[] = [\"bg\", \"text\", \"color\", \"border\"];\n\nexport const createColorClasses = <TProps extends ColorProps>(\n props: TProps,\n) => {\n return colorPropsKeys\n .map((key) => {\n if (!props[key]) return \"\";\n\n if (key === \"color\") return `text-${props[key]}`;\n return `${key}-${props[key]}`;\n })\n .filter(Boolean);\n};\n"],"names":["colorPropsKeys","createColorClasses","props","key"],"mappings":"AA6BA,MAAMA,IAAmC,CAAC,MAAM,QAAQ,SAAS,QAAQ,GAE5DC,IAAqB,CAChCC,MAEOF,EACJ,IAAI,CAACG,MACCD,EAAMC,CAAG,IAEVA,MAAQ,UAAgB,QAAQD,EAAMC,CAAG,CAAC,KACvC,GAAGA,CAAG,IAAID,EAAMC,CAAG,CAAC,KAHH,EAIzB,EACA,OAAO,OAAO;"}
@@ -1,10 +0,0 @@
1
- function h(f, c, { checkForDefaultPrevented: p = !0 } = {}) {
2
- return function(s) {
3
- if (f == null || f(s), p === !1 || !s.defaultPrevented)
4
- return c == null ? void 0 : c(s);
5
- };
6
- }
7
- export {
8
- h as composeEventHandlers
9
- };
10
- //# sourceMappingURL=index.es385.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.es385.js","sources":["../node_modules/@radix-ui/primitive/dist/index.mjs"],"sourcesContent":["// packages/core/primitive/src/primitive.tsx\nfunction composeEventHandlers(originalEventHandler, ourEventHandler, { checkForDefaultPrevented = true } = {}) {\n return function handleEvent(event) {\n originalEventHandler?.(event);\n if (checkForDefaultPrevented === false || !event.defaultPrevented) {\n return ourEventHandler?.(event);\n }\n };\n}\nexport {\n composeEventHandlers\n};\n//# sourceMappingURL=index.mjs.map\n"],"names":["composeEventHandlers","originalEventHandler","ourEventHandler","checkForDefaultPrevented","event"],"mappings":"AACA,SAASA,EAAqBC,GAAsBC,GAAiB,EAAE,0BAAAC,IAA2B,GAAM,IAAG,IAAI;AAC7G,SAAO,SAAqBC,GAAO;AAEjC,QADAH,KAAA,QAAAA,EAAuBG,IACnBD,MAA6B,MAAS,CAACC,EAAM;AAC/C,aAAOF,KAAA,gBAAAA,EAAkBE;AAAA,EAE5B;AACH;","x_google_ignoreList":[0]}
@@ -1,30 +0,0 @@
1
- import * as f from "react";
2
- function l(n, o) {
3
- if (typeof n == "function")
4
- return n(o);
5
- n != null && (n.current = o);
6
- }
7
- function i(...n) {
8
- return (o) => {
9
- let u = !1;
10
- const c = n.map((t) => {
11
- const e = l(t, o);
12
- return !u && typeof e == "function" && (u = !0), e;
13
- });
14
- if (u)
15
- return () => {
16
- for (let t = 0; t < c.length; t++) {
17
- const e = c[t];
18
- typeof e == "function" ? e() : l(n[t], null);
19
- }
20
- };
21
- };
22
- }
23
- function s(...n) {
24
- return f.useCallback(i(...n), n);
25
- }
26
- export {
27
- i as composeRefs,
28
- s as useComposedRefs
29
- };
30
- //# sourceMappingURL=index.es386.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.es386.js","sources":["../node_modules/@radix-ui/react-compose-refs/dist/index.mjs"],"sourcesContent":["// packages/react/compose-refs/src/compose-refs.tsx\nimport * as React from \"react\";\nfunction setRef(ref, value) {\n if (typeof ref === \"function\") {\n return ref(value);\n } else if (ref !== null && ref !== void 0) {\n ref.current = value;\n }\n}\nfunction composeRefs(...refs) {\n return (node) => {\n let hasCleanup = false;\n const cleanups = refs.map((ref) => {\n const cleanup = setRef(ref, node);\n if (!hasCleanup && typeof cleanup == \"function\") {\n hasCleanup = true;\n }\n return cleanup;\n });\n if (hasCleanup) {\n return () => {\n for (let i = 0; i < cleanups.length; i++) {\n const cleanup = cleanups[i];\n if (typeof cleanup == \"function\") {\n cleanup();\n } else {\n setRef(refs[i], null);\n }\n }\n };\n }\n };\n}\nfunction useComposedRefs(...refs) {\n return React.useCallback(composeRefs(...refs), refs);\n}\nexport {\n composeRefs,\n useComposedRefs\n};\n//# sourceMappingURL=index.mjs.map\n"],"names":["setRef","ref","value","composeRefs","refs","node","hasCleanup","cleanups","cleanup","i","useComposedRefs","React"],"mappings":";AAEA,SAASA,EAAOC,GAAKC,GAAO;AAC1B,MAAI,OAAOD,KAAQ;AACjB,WAAOA,EAAIC,CAAK;AACX,EAAID,KAAQ,SACjBA,EAAI,UAAUC;AAElB;AACA,SAASC,KAAeC,GAAM;AAC5B,SAAO,CAACC,MAAS;AACf,QAAIC,IAAa;AACjB,UAAMC,IAAWH,EAAK,IAAI,CAACH,MAAQ;AACjC,YAAMO,IAAUR,EAAOC,GAAKI,CAAI;AAChC,aAAI,CAACC,KAAc,OAAOE,KAAW,eACnCF,IAAa,KAERE;AAAA,IACb,CAAK;AACD,QAAIF;AACF,aAAO,MAAM;AACX,iBAASG,IAAI,GAAGA,IAAIF,EAAS,QAAQE,KAAK;AACxC,gBAAMD,IAAUD,EAASE,CAAC;AAC1B,UAAI,OAAOD,KAAW,aACpBA,EAAS,IAETR,EAAOI,EAAKK,CAAC,GAAG,IAAI;AAAA,QAEhC;AAAA,MACO;AAAA,EAEJ;AACH;AACA,SAASC,KAAmBN,GAAM;AAChC,SAAOO,EAAM,YAAYR,EAAY,GAAGC,CAAI,GAAGA,CAAI;AACrD;","x_google_ignoreList":[0]}
@@ -1,71 +0,0 @@
1
- import * as u from "react";
2
- import { j as h } from "./index.es212.js";
3
- function j(e, c) {
4
- const o = u.createContext(c), a = (r) => {
5
- const { children: t, ...n } = r, s = u.useMemo(() => n, Object.values(n));
6
- return /* @__PURE__ */ h.jsx(o.Provider, { value: s, children: t });
7
- };
8
- a.displayName = e + "Provider";
9
- function i(r) {
10
- const t = u.useContext(o);
11
- if (t) return t;
12
- if (c !== void 0) return c;
13
- throw new Error(`\`${r}\` must be used within \`${e}\``);
14
- }
15
- return [a, i];
16
- }
17
- function w(e, c = []) {
18
- let o = [];
19
- function a(r, t) {
20
- const n = u.createContext(t), s = o.length;
21
- o = [...o, t];
22
- const d = (m) => {
23
- var S;
24
- const { scope: x, children: C, ...p } = m, v = ((S = x == null ? void 0 : x[e]) == null ? void 0 : S[s]) || n, P = u.useMemo(() => p, Object.values(p));
25
- return /* @__PURE__ */ h.jsx(v.Provider, { value: P, children: C });
26
- };
27
- d.displayName = r + "Provider";
28
- function f(m, x) {
29
- var v;
30
- const C = ((v = x == null ? void 0 : x[e]) == null ? void 0 : v[s]) || n, p = u.useContext(C);
31
- if (p) return p;
32
- if (t !== void 0) return t;
33
- throw new Error(`\`${m}\` must be used within \`${r}\``);
34
- }
35
- return [d, f];
36
- }
37
- const i = () => {
38
- const r = o.map((t) => u.createContext(t));
39
- return function(n) {
40
- const s = (n == null ? void 0 : n[e]) || r;
41
- return u.useMemo(
42
- () => ({ [`__scope${e}`]: { ...n, [e]: s } }),
43
- [n, s]
44
- );
45
- };
46
- };
47
- return i.scopeName = e, [a, l(i, ...c)];
48
- }
49
- function l(...e) {
50
- const c = e[0];
51
- if (e.length === 1) return c;
52
- const o = () => {
53
- const a = e.map((i) => ({
54
- useScope: i(),
55
- scopeName: i.scopeName
56
- }));
57
- return function(r) {
58
- const t = a.reduce((n, { useScope: s, scopeName: d }) => {
59
- const m = s(r)[`__scope${d}`];
60
- return { ...n, ...m };
61
- }, {});
62
- return u.useMemo(() => ({ [`__scope${c.scopeName}`]: t }), [t]);
63
- };
64
- };
65
- return o.scopeName = c.scopeName, o;
66
- }
67
- export {
68
- j as createContext,
69
- w as createContextScope
70
- };
71
- //# sourceMappingURL=index.es387.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.es387.js","sources":["../node_modules/@radix-ui/react-context/dist/index.mjs"],"sourcesContent":["// packages/react/context/src/create-context.tsx\nimport * as React from \"react\";\nimport { jsx } from \"react/jsx-runtime\";\nfunction createContext2(rootComponentName, defaultContext) {\n const Context = React.createContext(defaultContext);\n const Provider = (props) => {\n const { children, ...context } = props;\n const value = React.useMemo(() => context, Object.values(context));\n return /* @__PURE__ */ jsx(Context.Provider, { value, children });\n };\n Provider.displayName = rootComponentName + \"Provider\";\n function useContext2(consumerName) {\n const context = React.useContext(Context);\n if (context) return context;\n if (defaultContext !== void 0) return defaultContext;\n throw new Error(`\\`${consumerName}\\` must be used within \\`${rootComponentName}\\``);\n }\n return [Provider, useContext2];\n}\nfunction createContextScope(scopeName, createContextScopeDeps = []) {\n let defaultContexts = [];\n function createContext3(rootComponentName, defaultContext) {\n const BaseContext = React.createContext(defaultContext);\n const index = defaultContexts.length;\n defaultContexts = [...defaultContexts, defaultContext];\n const Provider = (props) => {\n const { scope, children, ...context } = props;\n const Context = scope?.[scopeName]?.[index] || BaseContext;\n const value = React.useMemo(() => context, Object.values(context));\n return /* @__PURE__ */ jsx(Context.Provider, { value, children });\n };\n Provider.displayName = rootComponentName + \"Provider\";\n function useContext2(consumerName, scope) {\n const Context = scope?.[scopeName]?.[index] || BaseContext;\n const context = React.useContext(Context);\n if (context) return context;\n if (defaultContext !== void 0) return defaultContext;\n throw new Error(`\\`${consumerName}\\` must be used within \\`${rootComponentName}\\``);\n }\n return [Provider, useContext2];\n }\n const createScope = () => {\n const scopeContexts = defaultContexts.map((defaultContext) => {\n return React.createContext(defaultContext);\n });\n return function useScope(scope) {\n const contexts = scope?.[scopeName] || scopeContexts;\n return React.useMemo(\n () => ({ [`__scope${scopeName}`]: { ...scope, [scopeName]: contexts } }),\n [scope, contexts]\n );\n };\n };\n createScope.scopeName = scopeName;\n return [createContext3, composeContextScopes(createScope, ...createContextScopeDeps)];\n}\nfunction composeContextScopes(...scopes) {\n const baseScope = scopes[0];\n if (scopes.length === 1) return baseScope;\n const createScope = () => {\n const scopeHooks = scopes.map((createScope2) => ({\n useScope: createScope2(),\n scopeName: createScope2.scopeName\n }));\n return function useComposedScopes(overrideScopes) {\n const nextScopes = scopeHooks.reduce((nextScopes2, { useScope, scopeName }) => {\n const scopeProps = useScope(overrideScopes);\n const currentScope = scopeProps[`__scope${scopeName}`];\n return { ...nextScopes2, ...currentScope };\n }, {});\n return React.useMemo(() => ({ [`__scope${baseScope.scopeName}`]: nextScopes }), [nextScopes]);\n };\n };\n createScope.scopeName = baseScope.scopeName;\n return createScope;\n}\nexport {\n createContext2 as createContext,\n createContextScope\n};\n//# sourceMappingURL=index.mjs.map\n"],"names":["createContext2","rootComponentName","defaultContext","Context","React","Provider","props","children","context","value","jsx","useContext2","consumerName","createContextScope","scopeName","createContextScopeDeps","defaultContexts","createContext3","BaseContext","index","scope","_a","createScope","scopeContexts","contexts","composeContextScopes","scopes","baseScope","scopeHooks","createScope2","overrideScopes","nextScopes","nextScopes2","useScope","currentScope"],"mappings":"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","x_google_ignoreList":[0]}