@anoki/fse-ui 1.0.551 → 1.0.552

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 (685) hide show
  1. package/dist/index.cjs.js.map +1 -1
  2. package/dist/index.cjs10.js.map +1 -1
  3. package/dist/index.cjs101.js.map +1 -1
  4. package/dist/index.cjs103.js.map +1 -1
  5. package/dist/index.cjs104.js.map +1 -1
  6. package/dist/index.cjs105.js.map +1 -1
  7. package/dist/index.cjs106.js.map +1 -1
  8. package/dist/index.cjs109.js.map +1 -1
  9. package/dist/index.cjs11.js.map +1 -1
  10. package/dist/index.cjs112.js.map +1 -1
  11. package/dist/index.cjs114.js.map +1 -1
  12. package/dist/index.cjs115.js.map +1 -1
  13. package/dist/index.cjs116.js.map +1 -1
  14. package/dist/index.cjs117.js.map +1 -1
  15. package/dist/index.cjs118.js.map +1 -1
  16. package/dist/index.cjs119.js.map +1 -1
  17. package/dist/index.cjs12.js.map +1 -1
  18. package/dist/index.cjs120.js.map +1 -1
  19. package/dist/index.cjs121.js.map +1 -1
  20. package/dist/index.cjs122.js.map +1 -1
  21. package/dist/index.cjs123.js.map +1 -1
  22. package/dist/index.cjs124.js.map +1 -1
  23. package/dist/index.cjs125.js.map +1 -1
  24. package/dist/index.cjs126.js.map +1 -1
  25. package/dist/index.cjs127.js.map +1 -1
  26. package/dist/index.cjs128.js.map +1 -1
  27. package/dist/index.cjs129.js.map +1 -1
  28. package/dist/index.cjs13.js.map +1 -1
  29. package/dist/index.cjs130.js.map +1 -1
  30. package/dist/index.cjs131.js.map +1 -1
  31. package/dist/index.cjs132.js.map +1 -1
  32. package/dist/index.cjs133.js.map +1 -1
  33. package/dist/index.cjs134.js.map +1 -1
  34. package/dist/index.cjs135.js.map +1 -1
  35. package/dist/index.cjs136.js.map +1 -1
  36. package/dist/index.cjs137.js.map +1 -1
  37. package/dist/index.cjs138.js.map +1 -1
  38. package/dist/index.cjs139.js.map +1 -1
  39. package/dist/index.cjs14.js.map +1 -1
  40. package/dist/index.cjs140.js.map +1 -1
  41. package/dist/index.cjs141.js.map +1 -1
  42. package/dist/index.cjs142.js.map +1 -1
  43. package/dist/index.cjs143.js.map +1 -1
  44. package/dist/index.cjs144.js.map +1 -1
  45. package/dist/index.cjs145.js.map +1 -1
  46. package/dist/index.cjs146.js.map +1 -1
  47. package/dist/index.cjs147.js.map +1 -1
  48. package/dist/index.cjs148.js.map +1 -1
  49. package/dist/index.cjs149.js.map +1 -1
  50. package/dist/index.cjs15.js.map +1 -1
  51. package/dist/index.cjs150.js.map +1 -1
  52. package/dist/index.cjs151.js.map +1 -1
  53. package/dist/index.cjs152.js.map +1 -1
  54. package/dist/index.cjs153.js.map +1 -1
  55. package/dist/index.cjs154.js.map +1 -1
  56. package/dist/index.cjs155.js.map +1 -1
  57. package/dist/index.cjs156.js.map +1 -1
  58. package/dist/index.cjs157.js.map +1 -1
  59. package/dist/index.cjs158.js.map +1 -1
  60. package/dist/index.cjs159.js.map +1 -1
  61. package/dist/index.cjs16.js.map +1 -1
  62. package/dist/index.cjs160.js.map +1 -1
  63. package/dist/index.cjs17.js.map +1 -1
  64. package/dist/index.cjs18.js.map +1 -1
  65. package/dist/index.cjs19.js.map +1 -1
  66. package/dist/index.cjs197.js.map +1 -1
  67. package/dist/index.cjs199.js.map +1 -1
  68. package/dist/index.cjs20.js.map +1 -1
  69. package/dist/index.cjs203.js.map +1 -1
  70. package/dist/index.cjs207.js.map +1 -1
  71. package/dist/index.cjs21.js.map +1 -1
  72. package/dist/index.cjs210.js.map +1 -1
  73. package/dist/index.cjs213.js +1 -1
  74. package/dist/index.cjs216.js.map +1 -1
  75. package/dist/index.cjs217.js +1 -1
  76. package/dist/index.cjs217.js.map +1 -1
  77. package/dist/index.cjs22.js.map +1 -1
  78. package/dist/index.cjs224.js +1 -1
  79. package/dist/index.cjs225.js.map +1 -1
  80. package/dist/index.cjs228.js.map +1 -1
  81. package/dist/index.cjs23.js.map +1 -1
  82. package/dist/index.cjs233.js.map +1 -1
  83. package/dist/index.cjs235.js +1 -1
  84. package/dist/index.cjs236.js.map +1 -1
  85. package/dist/index.cjs237.js.map +1 -1
  86. package/dist/index.cjs238.js.map +1 -1
  87. package/dist/index.cjs239.js.map +1 -1
  88. package/dist/index.cjs241.js.map +1 -1
  89. package/dist/index.cjs242.js +1 -1
  90. package/dist/index.cjs242.js.map +1 -1
  91. package/dist/index.cjs243.js +1 -1
  92. package/dist/index.cjs243.js.map +1 -1
  93. package/dist/index.cjs246.js.map +1 -1
  94. package/dist/index.cjs247.js +1 -1
  95. package/dist/index.cjs247.js.map +1 -1
  96. package/dist/index.cjs25.js.map +1 -1
  97. package/dist/index.cjs252.js +1 -1
  98. package/dist/index.cjs252.js.map +1 -1
  99. package/dist/index.cjs253.js.map +1 -1
  100. package/dist/index.cjs254.js +1 -1
  101. package/dist/index.cjs254.js.map +1 -1
  102. package/dist/index.cjs256.js.map +1 -1
  103. package/dist/index.cjs257.js.map +1 -1
  104. package/dist/index.cjs258.js.map +1 -1
  105. package/dist/index.cjs261.js.map +1 -1
  106. package/dist/index.cjs262.js +1 -1
  107. package/dist/index.cjs27.js.map +1 -1
  108. package/dist/index.cjs28.js.map +1 -1
  109. package/dist/index.cjs30.js.map +1 -1
  110. package/dist/index.cjs301.js +1 -1
  111. package/dist/index.cjs309.js.map +1 -1
  112. package/dist/index.cjs31.js.map +1 -1
  113. package/dist/index.cjs314.js +1 -1
  114. package/dist/index.cjs32.js.map +1 -1
  115. package/dist/index.cjs320.js.map +1 -1
  116. package/dist/index.cjs322.js.map +1 -1
  117. package/dist/index.cjs326.js +1 -1
  118. package/dist/index.cjs327.js +1 -1
  119. package/dist/index.cjs33.js.map +1 -1
  120. package/dist/index.cjs331.js +1 -1
  121. package/dist/index.cjs331.js.map +1 -1
  122. package/dist/index.cjs334.js +1 -1
  123. package/dist/index.cjs334.js.map +1 -1
  124. package/dist/index.cjs335.js +2 -0
  125. package/dist/index.cjs335.js.map +1 -0
  126. package/dist/index.cjs336.js +2 -0
  127. package/dist/index.cjs336.js.map +1 -0
  128. package/dist/index.cjs337.js +1 -1
  129. package/dist/index.cjs337.js.map +1 -1
  130. package/dist/index.cjs338.js +1 -1
  131. package/dist/index.cjs338.js.map +1 -1
  132. package/dist/index.cjs339.js +1 -1
  133. package/dist/index.cjs339.js.map +1 -1
  134. package/dist/index.cjs34.js.map +1 -1
  135. package/dist/index.cjs340.js +1 -1
  136. package/dist/index.cjs340.js.map +1 -1
  137. package/dist/index.cjs342.js +1 -1
  138. package/dist/index.cjs342.js.map +1 -1
  139. package/dist/index.cjs343.js +1 -1
  140. package/dist/index.cjs343.js.map +1 -1
  141. package/dist/index.cjs344.js +1 -1
  142. package/dist/index.cjs344.js.map +1 -1
  143. package/dist/index.cjs348.js +1 -1
  144. package/dist/index.cjs348.js.map +1 -1
  145. package/dist/index.cjs349.js +1 -1
  146. package/dist/index.cjs349.js.map +1 -1
  147. package/dist/index.cjs35.js.map +1 -1
  148. package/dist/index.cjs350.js +1 -1
  149. package/dist/index.cjs350.js.map +1 -1
  150. package/dist/index.cjs351.js +1 -1
  151. package/dist/index.cjs351.js.map +1 -1
  152. package/dist/index.cjs352.js +1 -1
  153. package/dist/index.cjs352.js.map +1 -1
  154. package/dist/index.cjs353.js +1 -1
  155. package/dist/index.cjs353.js.map +1 -1
  156. package/dist/index.cjs354.js +1 -1
  157. package/dist/index.cjs354.js.map +1 -1
  158. package/dist/index.cjs36.js.map +1 -1
  159. package/dist/{index.cjs332.js → index.cjs369.js} +1 -1
  160. package/dist/index.cjs369.js.map +1 -0
  161. package/dist/index.cjs37.js.map +1 -1
  162. package/dist/index.cjs370.js +2 -0
  163. package/dist/index.cjs370.js.map +1 -0
  164. package/dist/{index.cjs347.js → index.cjs371.js} +1 -1
  165. package/dist/{index.cjs347.js.map → index.cjs371.js.map} +1 -1
  166. package/dist/index.cjs372.js +2 -0
  167. package/dist/index.cjs372.js.map +1 -0
  168. package/dist/index.cjs373.js +2 -0
  169. package/dist/index.cjs373.js.map +1 -0
  170. package/dist/index.cjs374.js +2 -0
  171. package/dist/index.cjs374.js.map +1 -0
  172. package/dist/{index.cjs356.js → index.cjs375.js} +2 -2
  173. package/dist/{index.cjs356.js.map → index.cjs375.js.map} +1 -1
  174. package/dist/index.cjs376.js +1 -1
  175. package/dist/index.cjs376.js.map +1 -1
  176. package/dist/index.cjs377.js +1 -1
  177. package/dist/index.cjs377.js.map +1 -1
  178. package/dist/index.cjs378.js +1 -1
  179. package/dist/index.cjs378.js.map +1 -1
  180. package/dist/{index.cjs365.js → index.cjs379.js} +2 -2
  181. package/dist/{index.cjs365.js.map → index.cjs379.js.map} +1 -1
  182. package/dist/index.cjs38.js.map +1 -1
  183. package/dist/{index.cjs366.js → index.cjs380.js} +2 -2
  184. package/dist/{index.cjs366.js.map → index.cjs380.js.map} +1 -1
  185. package/dist/index.cjs381.js +2 -0
  186. package/dist/index.cjs381.js.map +1 -0
  187. package/dist/index.cjs382.js +1 -1
  188. package/dist/index.cjs382.js.map +1 -1
  189. package/dist/index.cjs383.js +1 -1
  190. package/dist/index.cjs383.js.map +1 -1
  191. package/dist/index.cjs384.js +1 -1
  192. package/dist/index.cjs384.js.map +1 -1
  193. package/dist/index.cjs385.js +1 -4
  194. package/dist/index.cjs385.js.map +1 -1
  195. package/dist/index.cjs386.js +1 -1
  196. package/dist/index.cjs386.js.map +1 -1
  197. package/dist/index.cjs387.js +1 -1
  198. package/dist/index.cjs387.js.map +1 -1
  199. package/dist/index.cjs388.js +1 -1
  200. package/dist/index.cjs388.js.map +1 -1
  201. package/dist/index.cjs389.js +1 -1
  202. package/dist/index.cjs389.js.map +1 -1
  203. package/dist/index.cjs39.js.map +1 -1
  204. package/dist/index.cjs390.js +1 -38
  205. package/dist/index.cjs390.js.map +1 -1
  206. package/dist/index.cjs391.js +1 -1
  207. package/dist/index.cjs391.js.map +1 -1
  208. package/dist/index.cjs392.js +1 -1
  209. package/dist/index.cjs392.js.map +1 -1
  210. package/dist/index.cjs393.js +1 -1
  211. package/dist/index.cjs393.js.map +1 -1
  212. package/dist/index.cjs394.js +1 -1
  213. package/dist/index.cjs394.js.map +1 -1
  214. package/dist/index.cjs395.js +4 -1
  215. package/dist/index.cjs395.js.map +1 -1
  216. package/dist/index.cjs396.js +1 -1
  217. package/dist/index.cjs396.js.map +1 -1
  218. package/dist/index.cjs397.js +5 -1
  219. package/dist/index.cjs397.js.map +1 -1
  220. package/dist/index.cjs398.js +1 -1
  221. package/dist/index.cjs398.js.map +1 -1
  222. package/dist/index.cjs399.js +1 -1
  223. package/dist/index.cjs399.js.map +1 -1
  224. package/dist/index.cjs40.js.map +1 -1
  225. package/dist/index.cjs400.js +1 -1
  226. package/dist/index.cjs400.js.map +1 -1
  227. package/dist/index.cjs401.js +2 -0
  228. package/dist/index.cjs401.js.map +1 -0
  229. package/dist/index.cjs402.js +2 -0
  230. package/dist/index.cjs402.js.map +1 -0
  231. package/dist/index.cjs403.js +1 -1
  232. package/dist/index.cjs403.js.map +1 -1
  233. package/dist/index.cjs404.js +1 -1
  234. package/dist/index.cjs404.js.map +1 -1
  235. package/dist/index.cjs405.js +1 -1
  236. package/dist/index.cjs405.js.map +1 -1
  237. package/dist/index.cjs406.js +1 -1
  238. package/dist/index.cjs406.js.map +1 -1
  239. package/dist/index.cjs407.js +1 -1
  240. package/dist/index.cjs407.js.map +1 -1
  241. package/dist/index.cjs408.js +1 -1
  242. package/dist/index.cjs408.js.map +1 -1
  243. package/dist/index.cjs409.js +38 -1
  244. package/dist/index.cjs409.js.map +1 -1
  245. package/dist/index.cjs41.js.map +1 -1
  246. package/dist/index.cjs410.js +1 -1
  247. package/dist/index.cjs410.js.map +1 -1
  248. package/dist/index.cjs411.js +1 -5
  249. package/dist/index.cjs411.js.map +1 -1
  250. package/dist/index.cjs412.js +1 -1
  251. package/dist/index.cjs412.js.map +1 -1
  252. package/dist/index.cjs413.js +1 -1
  253. package/dist/index.cjs413.js.map +1 -1
  254. package/dist/index.cjs414.js +1 -1
  255. package/dist/index.cjs414.js.map +1 -1
  256. package/dist/index.cjs415.js +1 -1
  257. package/dist/index.cjs415.js.map +1 -1
  258. package/dist/index.cjs416.js +1 -1
  259. package/dist/index.cjs416.js.map +1 -1
  260. package/dist/index.cjs417.js +1 -1
  261. package/dist/index.cjs417.js.map +1 -1
  262. package/dist/index.cjs418.js +1 -1
  263. package/dist/index.cjs418.js.map +1 -1
  264. package/dist/index.cjs419.js +1 -1
  265. package/dist/index.cjs419.js.map +1 -1
  266. package/dist/index.cjs42.js.map +1 -1
  267. package/dist/index.cjs43.js.map +1 -1
  268. package/dist/index.cjs44.js.map +1 -1
  269. package/dist/index.cjs45.js.map +1 -1
  270. package/dist/index.cjs46.js.map +1 -1
  271. package/dist/index.cjs47.js.map +1 -1
  272. package/dist/index.cjs48.js.map +1 -1
  273. package/dist/index.cjs49.js.map +1 -1
  274. package/dist/index.cjs50.js.map +1 -1
  275. package/dist/index.cjs51.js.map +1 -1
  276. package/dist/index.cjs52.js.map +1 -1
  277. package/dist/index.cjs53.js.map +1 -1
  278. package/dist/index.cjs54.js.map +1 -1
  279. package/dist/index.cjs56.js.map +1 -1
  280. package/dist/index.cjs57.js.map +1 -1
  281. package/dist/index.cjs58.js.map +1 -1
  282. package/dist/index.cjs59.js.map +1 -1
  283. package/dist/index.cjs6.js.map +1 -1
  284. package/dist/index.cjs60.js.map +1 -1
  285. package/dist/index.cjs61.js.map +1 -1
  286. package/dist/index.cjs62.js.map +1 -1
  287. package/dist/index.cjs63.js.map +1 -1
  288. package/dist/index.cjs64.js.map +1 -1
  289. package/dist/index.cjs65.js +1 -1
  290. package/dist/index.cjs65.js.map +1 -1
  291. package/dist/index.cjs67.js.map +1 -1
  292. package/dist/index.cjs68.js.map +1 -1
  293. package/dist/index.cjs69.js.map +1 -1
  294. package/dist/index.cjs7.js.map +1 -1
  295. package/dist/index.cjs71.js.map +1 -1
  296. package/dist/index.cjs72.js.map +1 -1
  297. package/dist/index.cjs73.js.map +1 -1
  298. package/dist/index.cjs74.js.map +1 -1
  299. package/dist/index.cjs75.js.map +1 -1
  300. package/dist/index.cjs76.js.map +1 -1
  301. package/dist/index.cjs77.js.map +1 -1
  302. package/dist/index.cjs78.js.map +1 -1
  303. package/dist/index.cjs79.js.map +1 -1
  304. package/dist/index.cjs8.js.map +1 -1
  305. package/dist/index.cjs80.js.map +1 -1
  306. package/dist/index.cjs81.js.map +1 -1
  307. package/dist/index.cjs82.js.map +1 -1
  308. package/dist/index.cjs83.js.map +1 -1
  309. package/dist/index.cjs84.js.map +1 -1
  310. package/dist/index.cjs85.js.map +1 -1
  311. package/dist/index.cjs86.js.map +1 -1
  312. package/dist/index.cjs87.js.map +1 -1
  313. package/dist/index.cjs88.js.map +1 -1
  314. package/dist/index.cjs90.js.map +1 -1
  315. package/dist/index.cjs91.js.map +1 -1
  316. package/dist/index.cjs94.js.map +1 -1
  317. package/dist/index.cjs95.js.map +1 -1
  318. package/dist/index.cjs96.js.map +1 -1
  319. package/dist/index.cjs97.js.map +1 -1
  320. package/dist/index.cjs98.js.map +1 -1
  321. package/dist/index.cjs99.js.map +1 -1
  322. package/dist/index.d.ts +1 -1
  323. package/dist/index.es.js.map +1 -1
  324. package/dist/index.es10.js.map +1 -1
  325. package/dist/index.es101.js.map +1 -1
  326. package/dist/index.es103.js.map +1 -1
  327. package/dist/index.es104.js.map +1 -1
  328. package/dist/index.es105.js.map +1 -1
  329. package/dist/index.es106.js.map +1 -1
  330. package/dist/index.es109.js.map +1 -1
  331. package/dist/index.es11.js.map +1 -1
  332. package/dist/index.es112.js.map +1 -1
  333. package/dist/index.es114.js.map +1 -1
  334. package/dist/index.es115.js.map +1 -1
  335. package/dist/index.es116.js.map +1 -1
  336. package/dist/index.es117.js.map +1 -1
  337. package/dist/index.es118.js.map +1 -1
  338. package/dist/index.es119.js.map +1 -1
  339. package/dist/index.es12.js.map +1 -1
  340. package/dist/index.es120.js.map +1 -1
  341. package/dist/index.es121.js.map +1 -1
  342. package/dist/index.es122.js.map +1 -1
  343. package/dist/index.es123.js.map +1 -1
  344. package/dist/index.es124.js.map +1 -1
  345. package/dist/index.es125.js.map +1 -1
  346. package/dist/index.es126.js.map +1 -1
  347. package/dist/index.es127.js.map +1 -1
  348. package/dist/index.es128.js.map +1 -1
  349. package/dist/index.es129.js.map +1 -1
  350. package/dist/index.es13.js.map +1 -1
  351. package/dist/index.es130.js.map +1 -1
  352. package/dist/index.es131.js.map +1 -1
  353. package/dist/index.es132.js.map +1 -1
  354. package/dist/index.es133.js.map +1 -1
  355. package/dist/index.es134.js.map +1 -1
  356. package/dist/index.es135.js.map +1 -1
  357. package/dist/index.es136.js.map +1 -1
  358. package/dist/index.es137.js.map +1 -1
  359. package/dist/index.es138.js.map +1 -1
  360. package/dist/index.es139.js.map +1 -1
  361. package/dist/index.es14.js.map +1 -1
  362. package/dist/index.es140.js.map +1 -1
  363. package/dist/index.es141.js.map +1 -1
  364. package/dist/index.es142.js.map +1 -1
  365. package/dist/index.es143.js.map +1 -1
  366. package/dist/index.es144.js.map +1 -1
  367. package/dist/index.es145.js.map +1 -1
  368. package/dist/index.es146.js.map +1 -1
  369. package/dist/index.es147.js.map +1 -1
  370. package/dist/index.es148.js.map +1 -1
  371. package/dist/index.es149.js.map +1 -1
  372. package/dist/index.es15.js.map +1 -1
  373. package/dist/index.es150.js.map +1 -1
  374. package/dist/index.es151.js.map +1 -1
  375. package/dist/index.es152.js.map +1 -1
  376. package/dist/index.es153.js.map +1 -1
  377. package/dist/index.es154.js.map +1 -1
  378. package/dist/index.es155.js.map +1 -1
  379. package/dist/index.es156.js.map +1 -1
  380. package/dist/index.es157.js.map +1 -1
  381. package/dist/index.es158.js.map +1 -1
  382. package/dist/index.es159.js.map +1 -1
  383. package/dist/index.es16.js.map +1 -1
  384. package/dist/index.es160.js.map +1 -1
  385. package/dist/index.es17.js.map +1 -1
  386. package/dist/index.es18.js.map +1 -1
  387. package/dist/index.es19.js.map +1 -1
  388. package/dist/index.es197.js.map +1 -1
  389. package/dist/index.es199.js.map +1 -1
  390. package/dist/index.es20.js.map +1 -1
  391. package/dist/index.es203.js.map +1 -1
  392. package/dist/index.es207.js.map +1 -1
  393. package/dist/index.es21.js.map +1 -1
  394. package/dist/index.es210.js.map +1 -1
  395. package/dist/index.es213.js +7 -7
  396. package/dist/index.es216.js.map +1 -1
  397. package/dist/index.es217.js +1 -1
  398. package/dist/index.es217.js.map +1 -1
  399. package/dist/index.es22.js.map +1 -1
  400. package/dist/index.es224.js +8 -8
  401. package/dist/index.es225.js.map +1 -1
  402. package/dist/index.es228.js.map +1 -1
  403. package/dist/index.es23.js.map +1 -1
  404. package/dist/index.es233.js.map +1 -1
  405. package/dist/index.es235.js +14 -14
  406. package/dist/index.es236.js.map +1 -1
  407. package/dist/index.es237.js.map +1 -1
  408. package/dist/index.es238.js.map +1 -1
  409. package/dist/index.es239.js.map +1 -1
  410. package/dist/index.es241.js.map +1 -1
  411. package/dist/index.es242.js +1 -1
  412. package/dist/index.es242.js.map +1 -1
  413. package/dist/index.es243.js +1 -1
  414. package/dist/index.es243.js.map +1 -1
  415. package/dist/index.es246.js.map +1 -1
  416. package/dist/index.es247.js +1 -1
  417. package/dist/index.es247.js.map +1 -1
  418. package/dist/index.es25.js.map +1 -1
  419. package/dist/index.es252.js +1 -1
  420. package/dist/index.es252.js.map +1 -1
  421. package/dist/index.es253.js.map +1 -1
  422. package/dist/index.es254.js +1 -1
  423. package/dist/index.es254.js.map +1 -1
  424. package/dist/index.es256.js.map +1 -1
  425. package/dist/index.es257.js.map +1 -1
  426. package/dist/index.es258.js.map +1 -1
  427. package/dist/index.es261.js.map +1 -1
  428. package/dist/index.es262.js +7 -7
  429. package/dist/index.es27.js.map +1 -1
  430. package/dist/index.es28.js.map +1 -1
  431. package/dist/index.es30.js.map +1 -1
  432. package/dist/index.es301.js +4 -4
  433. package/dist/index.es309.js.map +1 -1
  434. package/dist/index.es31.js.map +1 -1
  435. package/dist/index.es314.js +8 -8
  436. package/dist/index.es32.js.map +1 -1
  437. package/dist/index.es320.js.map +1 -1
  438. package/dist/index.es322.js.map +1 -1
  439. package/dist/index.es326.js +1 -1
  440. package/dist/index.es327.js +1 -1
  441. package/dist/index.es33.js.map +1 -1
  442. package/dist/index.es331.js +15 -2
  443. package/dist/index.es331.js.map +1 -1
  444. package/dist/index.es334.js +7 -15
  445. package/dist/index.es334.js.map +1 -1
  446. package/dist/index.es335.js +30 -0
  447. package/dist/index.es335.js.map +1 -0
  448. package/dist/index.es336.js +71 -0
  449. package/dist/index.es336.js.map +1 -0
  450. package/dist/index.es337.js +29 -6
  451. package/dist/index.es337.js.map +1 -1
  452. package/dist/index.es338.js +32 -26
  453. package/dist/index.es338.js.map +1 -1
  454. package/dist/index.es339.js +617 -63
  455. package/dist/index.es339.js.map +1 -1
  456. package/dist/index.es34.js.map +1 -1
  457. package/dist/index.es340.js +10 -29
  458. package/dist/index.es340.js.map +1 -1
  459. package/dist/index.es342.js +5 -621
  460. package/dist/index.es342.js.map +1 -1
  461. package/dist/index.es343.js +24 -10
  462. package/dist/index.es343.js.map +1 -1
  463. package/dist/index.es344.js +68 -5
  464. package/dist/index.es344.js.map +1 -1
  465. package/dist/index.es348.js +120 -48
  466. package/dist/index.es348.js.map +1 -1
  467. package/dist/index.es349.js +130 -41
  468. package/dist/index.es349.js.map +1 -1
  469. package/dist/index.es35.js.map +1 -1
  470. package/dist/index.es350.js +14 -8
  471. package/dist/index.es350.js.map +1 -1
  472. package/dist/index.es351.js +12 -122
  473. package/dist/index.es351.js.map +1 -1
  474. package/dist/index.es352.js +8 -14
  475. package/dist/index.es352.js.map +1 -1
  476. package/dist/index.es353.js +48 -133
  477. package/dist/index.es353.js.map +1 -1
  478. package/dist/index.es354.js +49 -214
  479. package/dist/index.es354.js.map +1 -1
  480. package/dist/index.es36.js.map +1 -1
  481. package/dist/index.es369.js +5 -0
  482. package/dist/index.es369.js.map +1 -0
  483. package/dist/index.es37.js.map +1 -1
  484. package/dist/{index.es332.js → index.es370.js} +1 -1
  485. package/dist/index.es370.js.map +1 -0
  486. package/dist/{index.es347.js → index.es371.js} +1 -1
  487. package/dist/{index.es347.js.map → index.es371.js.map} +1 -1
  488. package/dist/index.es372.js +49 -0
  489. package/dist/index.es372.js.map +1 -0
  490. package/dist/index.es373.js +11 -0
  491. package/dist/index.es373.js.map +1 -0
  492. package/dist/index.es374.js +221 -0
  493. package/dist/index.es374.js.map +1 -0
  494. package/dist/{index.es356.js → index.es375.js} +10 -10
  495. package/dist/{index.es356.js.map → index.es375.js.map} +1 -1
  496. package/dist/index.es376.js +3 -24
  497. package/dist/index.es376.js.map +1 -1
  498. package/dist/index.es377.js +12 -29
  499. package/dist/index.es377.js.map +1 -1
  500. package/dist/index.es378.js +205 -5
  501. package/dist/index.es378.js.map +1 -1
  502. package/dist/{index.es365.js → index.es379.js} +2 -2
  503. package/dist/{index.es365.js.map → index.es379.js.map} +1 -1
  504. package/dist/index.es38.js.map +1 -1
  505. package/dist/{index.es366.js → index.es380.js} +4 -4
  506. package/dist/{index.es366.js.map → index.es380.js.map} +1 -1
  507. package/dist/index.es381.js +28 -0
  508. package/dist/index.es381.js.map +1 -0
  509. package/dist/index.es382.js +29 -5
  510. package/dist/index.es382.js.map +1 -1
  511. package/dist/index.es383.js +5 -3
  512. package/dist/index.es383.js.map +1 -1
  513. package/dist/index.es384.js +5 -24
  514. package/dist/index.es384.js.map +1 -1
  515. package/dist/index.es385.js +4 -110
  516. package/dist/index.es385.js.map +1 -1
  517. package/dist/index.es386.js +4 -15
  518. package/dist/index.es386.js.map +1 -1
  519. package/dist/index.es387.js +9 -522
  520. package/dist/index.es387.js.map +1 -1
  521. package/dist/index.es388.js +53 -124
  522. package/dist/index.es388.js.map +1 -1
  523. package/dist/index.es389.js +7 -128
  524. package/dist/index.es389.js.map +1 -1
  525. package/dist/index.es39.js.map +1 -1
  526. package/dist/index.es390.js +6 -69
  527. package/dist/index.es390.js.map +1 -1
  528. package/dist/index.es391.js +531 -7
  529. package/dist/index.es391.js.map +1 -1
  530. package/dist/index.es392.js +5 -14
  531. package/dist/index.es392.js.map +1 -1
  532. package/dist/index.es393.js +3 -62
  533. package/dist/index.es393.js.map +1 -1
  534. package/dist/index.es394.js +22 -63
  535. package/dist/index.es394.js.map +1 -1
  536. package/dist/index.es395.js +109 -3
  537. package/dist/index.es395.js.map +1 -1
  538. package/dist/index.es396.js +15 -22
  539. package/dist/index.es396.js.map +1 -1
  540. package/dist/index.es397.js +40 -13
  541. package/dist/index.es397.js.map +1 -1
  542. package/dist/index.es398.js +2 -28
  543. package/dist/index.es398.js.map +1 -1
  544. package/dist/index.es399.js +2 -5
  545. package/dist/index.es399.js.map +1 -1
  546. package/dist/index.es40.js.map +1 -1
  547. package/dist/index.es400.js +2 -23
  548. package/dist/index.es400.js.map +1 -1
  549. package/dist/index.es401.js +6 -0
  550. package/dist/index.es401.js.map +1 -0
  551. package/dist/index.es402.js +5 -0
  552. package/dist/index.es402.js.map +1 -0
  553. package/dist/index.es403.js +4 -5
  554. package/dist/index.es403.js.map +1 -1
  555. package/dist/index.es404.js +5 -4
  556. package/dist/index.es404.js.map +1 -1
  557. package/dist/index.es405.js +522 -4
  558. package/dist/index.es405.js.map +1 -1
  559. package/dist/index.es406.js +126 -9
  560. package/dist/index.es406.js.map +1 -1
  561. package/dist/index.es407.js +124 -51
  562. package/dist/index.es407.js.map +1 -1
  563. package/dist/index.es408.js +64 -7
  564. package/dist/index.es408.js.map +1 -1
  565. package/dist/index.es409.js +69 -6
  566. package/dist/index.es409.js.map +1 -1
  567. package/dist/index.es41.js.map +1 -1
  568. package/dist/index.es410.js +7 -531
  569. package/dist/index.es410.js.map +1 -1
  570. package/dist/index.es411.js +13 -39
  571. package/dist/index.es411.js.map +1 -1
  572. package/dist/index.es412.js +62 -2
  573. package/dist/index.es412.js.map +1 -1
  574. package/dist/index.es413.js +4 -2
  575. package/dist/index.es413.js.map +1 -1
  576. package/dist/index.es414.js +4 -2
  577. package/dist/index.es414.js.map +1 -1
  578. package/dist/index.es415.js +23 -3
  579. package/dist/index.es415.js.map +1 -1
  580. package/dist/index.es416.js +23 -2
  581. package/dist/index.es416.js.map +1 -1
  582. package/dist/index.es417.js +13 -4
  583. package/dist/index.es417.js.map +1 -1
  584. package/dist/index.es418.js +27 -4
  585. package/dist/index.es418.js.map +1 -1
  586. package/dist/index.es419.js +5 -4
  587. package/dist/index.es419.js.map +1 -1
  588. package/dist/index.es42.js.map +1 -1
  589. package/dist/index.es43.js.map +1 -1
  590. package/dist/index.es44.js.map +1 -1
  591. package/dist/index.es45.js.map +1 -1
  592. package/dist/index.es46.js.map +1 -1
  593. package/dist/index.es47.js.map +1 -1
  594. package/dist/index.es48.js.map +1 -1
  595. package/dist/index.es49.js.map +1 -1
  596. package/dist/index.es50.js.map +1 -1
  597. package/dist/index.es51.js.map +1 -1
  598. package/dist/index.es52.js.map +1 -1
  599. package/dist/index.es53.js.map +1 -1
  600. package/dist/index.es54.js.map +1 -1
  601. package/dist/index.es56.js.map +1 -1
  602. package/dist/index.es57.js.map +1 -1
  603. package/dist/index.es58.js.map +1 -1
  604. package/dist/index.es59.js.map +1 -1
  605. package/dist/index.es6.js.map +1 -1
  606. package/dist/index.es60.js.map +1 -1
  607. package/dist/index.es61.js.map +1 -1
  608. package/dist/index.es62.js.map +1 -1
  609. package/dist/index.es63.js.map +1 -1
  610. package/dist/index.es64.js.map +1 -1
  611. package/dist/index.es65.js +83 -81
  612. package/dist/index.es65.js.map +1 -1
  613. package/dist/index.es67.js.map +1 -1
  614. package/dist/index.es68.js.map +1 -1
  615. package/dist/index.es69.js.map +1 -1
  616. package/dist/index.es7.js.map +1 -1
  617. package/dist/index.es71.js.map +1 -1
  618. package/dist/index.es72.js.map +1 -1
  619. package/dist/index.es73.js.map +1 -1
  620. package/dist/index.es74.js.map +1 -1
  621. package/dist/index.es75.js.map +1 -1
  622. package/dist/index.es76.js.map +1 -1
  623. package/dist/index.es77.js.map +1 -1
  624. package/dist/index.es78.js.map +1 -1
  625. package/dist/index.es79.js.map +1 -1
  626. package/dist/index.es8.js.map +1 -1
  627. package/dist/index.es80.js.map +1 -1
  628. package/dist/index.es81.js.map +1 -1
  629. package/dist/index.es82.js.map +1 -1
  630. package/dist/index.es83.js.map +1 -1
  631. package/dist/index.es84.js.map +1 -1
  632. package/dist/index.es85.js.map +1 -1
  633. package/dist/index.es86.js.map +1 -1
  634. package/dist/index.es87.js.map +1 -1
  635. package/dist/index.es88.js.map +1 -1
  636. package/dist/index.es90.js.map +1 -1
  637. package/dist/index.es91.js.map +1 -1
  638. package/dist/index.es94.js.map +1 -1
  639. package/dist/index.es95.js.map +1 -1
  640. package/dist/index.es96.js.map +1 -1
  641. package/dist/index.es97.js.map +1 -1
  642. package/dist/index.es98.js.map +1 -1
  643. package/dist/index.es99.js.map +1 -1
  644. package/package.json +109 -109
  645. package/readme.md +42 -42
  646. package/dist/index.cjs332.js.map +0 -1
  647. package/dist/index.cjs341.js +0 -2
  648. package/dist/index.cjs341.js.map +0 -1
  649. package/dist/index.cjs345.js +0 -2
  650. package/dist/index.cjs345.js.map +0 -1
  651. package/dist/index.cjs346.js +0 -2
  652. package/dist/index.cjs346.js.map +0 -1
  653. package/dist/index.cjs355.js +0 -2
  654. package/dist/index.cjs355.js.map +0 -1
  655. package/dist/index.cjs357.js +0 -2
  656. package/dist/index.cjs357.js.map +0 -1
  657. package/dist/index.cjs358.js +0 -2
  658. package/dist/index.cjs358.js.map +0 -1
  659. package/dist/index.cjs359.js +0 -2
  660. package/dist/index.cjs359.js.map +0 -1
  661. package/dist/index.cjs363.js +0 -2
  662. package/dist/index.cjs363.js.map +0 -1
  663. package/dist/index.cjs364.js +0 -2
  664. package/dist/index.cjs364.js.map +0 -1
  665. package/dist/index.es332.js.map +0 -1
  666. package/dist/index.es341.js +0 -36
  667. package/dist/index.es341.js.map +0 -1
  668. package/dist/index.es345.js +0 -28
  669. package/dist/index.es345.js.map +0 -1
  670. package/dist/index.es346.js +0 -72
  671. package/dist/index.es346.js.map +0 -1
  672. package/dist/index.es355.js +0 -17
  673. package/dist/index.es355.js.map +0 -1
  674. package/dist/index.es357.js +0 -53
  675. package/dist/index.es357.js.map +0 -1
  676. package/dist/index.es358.js +0 -12
  677. package/dist/index.es358.js.map +0 -1
  678. package/dist/index.es359.js +0 -7
  679. package/dist/index.es359.js.map +0 -1
  680. package/dist/index.es363.js +0 -15
  681. package/dist/index.es363.js.map +0 -1
  682. package/dist/index.es364.js +0 -208
  683. package/dist/index.es364.js.map +0 -1
  684. /package/dist/components/ui/{ConsentModal/ConsentModalContent/ConsentModalContent.css → DoctorConfirmModal/DoctorConfirmModalContent/DoctorConfirmModalContent.css} +0 -0
  685. /package/dist/components/ui/{DoctorModal/DoctorModalFooter/DoctorModalFooter.css → DoctorConfirmModal/DoctorConfirmModalFooter/DoctorConfirmModalFooter.css} +0 -0
@@ -1,94 +1,94 @@
1
1
  import { j as a } from "./index.es185.js";
2
2
  import * as _ from "react";
3
3
  import { useEffect as J } from "react";
4
- import { clsx as c } from "./index.es187.js";
4
+ import { clsx as d } from "./index.es187.js";
5
5
  import './components/ui/Table/Table.css';/* empty css */
6
- import { ActionIconText as Q } from "./index.es59.js";
7
- import { TriangleUp as W } from "./index.es154.js";
8
- import { TriangleDown as X } from "./index.es155.js";
9
- import { Download as Y } from "./index.es147.js";
10
- import { Info as Z } from "./index.es156.js";
11
- const K = _.forwardRef(
6
+ import { ActionIconText as P } from "./index.es59.js";
7
+ import { TriangleUp as Q } from "./index.es154.js";
8
+ import { TriangleDown as W } from "./index.es155.js";
9
+ import { Download as X } from "./index.es147.js";
10
+ import { Info as Y } from "./index.es156.js";
11
+ const Z = _.forwardRef(
12
12
  ({
13
13
  className: e,
14
14
  columns: t,
15
15
  data: s,
16
16
  pagination: i,
17
- initialCurrentPage: j = 1,
18
- resultsPerPage: p = 10,
17
+ initialCurrentPage: u = 1,
18
+ resultsPerPage: m = 10,
19
19
  defaultSortDirection: l = "desc",
20
20
  setSelectedSort: b,
21
- initialSortConfig: u,
21
+ initialSortConfig: j,
22
22
  ...g
23
23
  }, N) => {
24
- const [d, L] = _.useState(
25
- u || {
24
+ const [r, L] = _.useState(
25
+ j || {
26
26
  key: t[0].key || t[0].label,
27
27
  direction: l
28
28
  }
29
- ), [v, I] = _.useState(j);
29
+ ), [v, B] = _.useState(u);
30
30
  J(() => {
31
- u && L(u);
32
- }, [u]);
33
- const y = _.useMemo(() => [...s].sort((o, x) => {
34
- const r = o[d.key], n = x[d.key], m = t.find(
35
- (f) => (f.key || f.label) === d.key
31
+ j && L(j);
32
+ }, [j]);
33
+ const y = _.useMemo(() => [...s].sort((c, x) => {
34
+ const o = c[r.key], n = x[r.key], p = t.find(
35
+ (f) => (f.key || f.label) === r.key
36
36
  );
37
- if (typeof r == "string" && typeof n == "string") {
38
- if ((m == null ? void 0 : m.type) === "date") {
37
+ if (typeof o == "string" && typeof n == "string") {
38
+ if ((p == null ? void 0 : p.type) === "date") {
39
39
  const f = (S) => {
40
- const [V, z] = S.split(" - "), [E, O, U] = V.split("/").map(Number), [q, G] = z.split(":").map(Number);
41
- return new Date(U, O - 1, E, q, G);
42
- }, h = f(r), D = f(n);
43
- return d.direction === "asc" ? h.getTime() - D.getTime() : D.getTime() - h.getTime();
40
+ const [U, V] = S.split(" - "), [z, E, O] = U.split("/").map(Number), [q, G] = V.split(":").map(Number);
41
+ return new Date(O, E - 1, z, q, G);
42
+ }, h = f(o), D = f(n);
43
+ return r.direction === "asc" ? h.getTime() - D.getTime() : D.getTime() - h.getTime();
44
44
  }
45
- if ((m == null ? void 0 : m.type) === "number") {
46
- const f = parseFloat(r), h = parseFloat(n);
47
- return d.direction === "asc" ? f - h : h - f;
45
+ if ((p == null ? void 0 : p.type) === "number") {
46
+ const f = parseFloat(o), h = parseFloat(n);
47
+ return r.direction === "asc" ? f - h : h - f;
48
48
  }
49
- return d.direction === "asc" ? r.localeCompare(n) : n.localeCompare(r);
49
+ return r.direction === "asc" ? o.localeCompare(n) : n.localeCompare(o);
50
50
  }
51
- return w(r) && w(n) ? d.direction === "asc" ? r.firstLine.localeCompare(n.firstLine) : n.firstLine.localeCompare(r.firstLine) : 0;
52
- }), [s, d, t]), M = (o) => {
51
+ return w(o) && w(n) ? r.direction === "asc" ? o.firstLine.localeCompare(n.firstLine) : n.firstLine.localeCompare(o.firstLine) : 0;
52
+ }), [s, r, t]), M = (c) => {
53
53
  const x = {
54
- key: o,
55
- direction: d.key === o && d.direction === "asc" ? "desc" : "asc"
54
+ key: c,
55
+ direction: r.key === c && r.direction === "asc" ? "desc" : "asc"
56
56
  };
57
57
  L(x), b && b(x);
58
- }, C = i ? (v - 1) * p : 0, F = i ? Math.min(C + p, y.length) : y.length, H = y.slice(C, F);
58
+ }, C = i ? (v - 1) * m : 0, F = i ? Math.min(C + m, y.length) : y.length, H = y.slice(C, F);
59
59
  return /* @__PURE__ */ a.jsxs("div", { className: "position-relative w-full", children: [
60
60
  /* @__PURE__ */ a.jsxs(
61
61
  "table",
62
62
  {
63
63
  ref: N,
64
- className: c("table", e),
64
+ className: d("table", e),
65
65
  role: "table",
66
66
  ...g,
67
67
  children: [
68
- /* @__PURE__ */ a.jsx(R, { className: "table__header", children: /* @__PURE__ */ a.jsx(k, { children: t.map((o, x) => /* @__PURE__ */ a.jsx(
68
+ /* @__PURE__ */ a.jsx(R, { className: "table__header", children: /* @__PURE__ */ a.jsx(k, { children: t.map((c, x) => /* @__PURE__ */ a.jsx(
69
69
  $,
70
70
  {
71
- config: o,
72
- sortConfig: d,
73
- onSort: () => o.sortable && M(o.key || o.label)
71
+ config: c,
72
+ sortConfig: r,
73
+ onSort: () => c.sortable && M(c.key || c.label)
74
74
  },
75
- `${o.label}-${x}`
75
+ `${c.label}-${x}`
76
76
  )) }) }),
77
- /* @__PURE__ */ a.jsx(A, { className: "table__body", children: H.map((o, x) => /* @__PURE__ */ a.jsx(k, { className: "table__row", children: Object.entries(o).map(([r, n], m) => n ? r === "actionData" && B(n) ? /* @__PURE__ */ a.jsx(
77
+ /* @__PURE__ */ a.jsx(A, { className: "table__body", children: H.map((c, x) => /* @__PURE__ */ a.jsx(k, { className: "table__row", children: Object.entries(c).map(([o, n], p) => n ? o === "actionData" && I(n) ? /* @__PURE__ */ a.jsx(
78
78
  T,
79
79
  {
80
80
  content: n,
81
81
  type: "action"
82
82
  },
83
- `${r}-${m}`
83
+ `${o}-${p}`
84
84
  ) : w(n) ? /* @__PURE__ */ a.jsx(
85
85
  T,
86
86
  {
87
87
  content: n,
88
88
  type: "double-line"
89
89
  },
90
- `${r}-${m}`
91
- ) : typeof n == "string" ? /* @__PURE__ */ a.jsx(T, { content: n }, `${r}-${m}`) : null : null) }, x)) })
90
+ `${o}-${p}`
91
+ ) : typeof n == "string" ? /* @__PURE__ */ a.jsx(T, { content: n }, `${o}-${p}`) : null : null) }, x)) })
92
92
  ]
93
93
  }
94
94
  ),
@@ -97,20 +97,20 @@ const K = _.forwardRef(
97
97
  {
98
98
  currentPage: v,
99
99
  totalResults: y.length,
100
- resultsPerPage: p,
101
- setCurrentPage: I
100
+ resultsPerPage: m,
101
+ setCurrentPage: B
102
102
  }
103
103
  )
104
104
  ] });
105
105
  }
106
106
  );
107
- K.displayName = "Table";
107
+ Z.displayName = "Table";
108
108
  const R = _.forwardRef(
109
109
  ({ className: e, children: t, ...s }, i) => /* @__PURE__ */ a.jsx(
110
110
  "thead",
111
111
  {
112
112
  ref: i,
113
- className: c("[&_tr]:border-b-0", e),
113
+ className: d("[&_tr]:border-b-0", e),
114
114
  ...s,
115
115
  children: t
116
116
  }
@@ -122,7 +122,7 @@ const A = _.forwardRef(
122
122
  "tbody",
123
123
  {
124
124
  ref: i,
125
- className: c("[&_tr:last-child]:border-0", e),
125
+ className: d("[&_tr:last-child]:border-0", e),
126
126
  ...s,
127
127
  children: t
128
128
  }
@@ -134,7 +134,7 @@ const k = _.forwardRef(
134
134
  "tr",
135
135
  {
136
136
  ref: i,
137
- className: c(
137
+ className: d(
138
138
  "border-b transition-colors hover:bg-muted/50 data-[state=selected]:bg-muted",
139
139
  e
140
140
  ),
@@ -144,22 +144,23 @@ const k = _.forwardRef(
144
144
  )
145
145
  );
146
146
  k.displayName = "TableRow";
147
- const $ = _.forwardRef(({ className: e, config: t, sortConfig: s, onSort: i, ...j }, p) => {
148
- const l = s.key === (t.key || t.label), b = l ? s.direction : null, u = () => b === "asc" ? "ascending" : "descending", g = (N) => {
149
- switch (N) {
147
+ const $ = _.forwardRef(({ className: e, config: t, sortConfig: s, onSort: i, ...u }, m) => {
148
+ var N;
149
+ const l = s.key === (t.key || t.label), b = l ? s.direction : null, j = () => b === "asc" ? "ascending" : "descending", g = (r) => {
150
+ switch (r) {
150
151
  case "info":
151
- return /* @__PURE__ */ a.jsx(Z, {});
152
- case "download":
153
152
  return /* @__PURE__ */ a.jsx(Y, {});
153
+ case "download":
154
+ return /* @__PURE__ */ a.jsx(X, {});
154
155
  default:
155
- return N;
156
+ return r;
156
157
  }
157
158
  };
158
159
  return /* @__PURE__ */ a.jsx(
159
160
  "th",
160
161
  {
161
- ref: p,
162
- className: c(
162
+ ref: m,
163
+ className: d(
163
164
  "table__cell table__cell--header",
164
165
  {
165
166
  "table__cell--sortable": t.sortable,
@@ -169,11 +170,11 @@ const $ = _.forwardRef(({ className: e, config: t, sortConfig: s, onSort: i, ...
169
170
  ),
170
171
  onClick: t.sortable ? i : t.action,
171
172
  "aria-label": t.ariaLabel,
172
- "aria-sort": l ? u() : void 0,
173
- ...j,
173
+ "aria-sort": l ? j() : void 0,
174
+ ...u,
174
175
  children: /* @__PURE__ */ a.jsxs("div", { className: "table__cell--header--content", children: [
175
176
  /* @__PURE__ */ a.jsx("div", { children: /* @__PURE__ */ a.jsx(
176
- Q,
177
+ P,
177
178
  {
178
179
  icon: g(t.icon),
179
180
  textLabel: t.label,
@@ -181,24 +182,25 @@ const $ = _.forwardRef(({ className: e, config: t, sortConfig: s, onSort: i, ...
181
182
  handleIconAction: () => {
182
183
  t.iconAction;
183
184
  },
184
- popupInfo: t.popupInfo
185
+ popupInfo: t.popupInfo,
186
+ positionPopUp: (N = t.popupInfo) == null ? void 0 : N.positionPopUp
185
187
  }
186
188
  ) }),
187
189
  t.sortable && /* @__PURE__ */ a.jsxs("span", { className: "sort-indicator", children: [
188
190
  /* @__PURE__ */ a.jsx(
189
- W,
191
+ Q,
190
192
  {
191
193
  filled: l && b === "desc",
192
- className: c("sort-indicator__triangle", {
194
+ className: d("sort-indicator__triangle", {
193
195
  active: l && b === "desc"
194
196
  })
195
197
  }
196
198
  ),
197
199
  /* @__PURE__ */ a.jsx(
198
- X,
200
+ W,
199
201
  {
200
202
  filled: l && b === "asc",
201
- className: c("sort-indicator__triangle", {
203
+ className: d("sort-indicator__triangle", {
202
204
  active: l && b === "asc"
203
205
  })
204
206
  }
@@ -209,17 +211,17 @@ const $ = _.forwardRef(({ className: e, config: t, sortConfig: s, onSort: i, ...
209
211
  );
210
212
  });
211
213
  $.displayName = "TableHead";
212
- const P = ({ data: e }) => /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
214
+ const K = ({ data: e }) => /* @__PURE__ */ a.jsxs(a.Fragment, { children: [
213
215
  /* @__PURE__ */ a.jsx("div", { className: "table__cell--firstLine", children: e.firstLine }),
214
216
  /* @__PURE__ */ a.jsx("div", { className: "table__cell--secondLine", children: e.secondLine })
215
- ] }), ee = ({ data: e }) => e.type === "link" && e.link ? /* @__PURE__ */ a.jsx("a", { href: e.link, "aria-label": e.ariaLabel, children: e.label }) : /* @__PURE__ */ a.jsx("button", { onClick: e.action, "aria-label": e.ariaLabel, children: e.label }), w = (e) => typeof e == "object" && e !== null && "firstLine" in e && "secondLine" in e, B = (e) => typeof e == "object" && e !== null && "label" in e && "type" in e, ae = ({
217
+ ] }), ee = ({ data: e }) => e.type === "link" && e.link ? /* @__PURE__ */ a.jsx("a", { href: e.link, "aria-label": e.ariaLabel, children: e.label }) : /* @__PURE__ */ a.jsx("button", { onClick: e.action, "aria-label": e.ariaLabel, children: e.label }), w = (e) => typeof e == "object" && e !== null && "firstLine" in e && "secondLine" in e, I = (e) => typeof e == "object" && e !== null && "label" in e && "type" in e, ae = ({
216
218
  content: e
217
- }) => typeof e == "string" ? /* @__PURE__ */ a.jsx(a.Fragment, { children: e }) : w(e) ? /* @__PURE__ */ a.jsx(P, { data: e }) : B(e) ? /* @__PURE__ */ a.jsx(ee, { data: e }) : null, T = _.forwardRef(
218
- ({ className: e, content: t, type: s, ...i }, j) => /* @__PURE__ */ a.jsx(
219
+ }) => typeof e == "string" ? /* @__PURE__ */ a.jsx(a.Fragment, { children: e }) : w(e) ? /* @__PURE__ */ a.jsx(K, { data: e }) : I(e) ? /* @__PURE__ */ a.jsx(ee, { data: e }) : null, T = _.forwardRef(
220
+ ({ className: e, content: t, type: s, ...i }, u) => /* @__PURE__ */ a.jsx(
219
221
  "td",
220
222
  {
221
- ref: j,
222
- className: c(
223
+ ref: u,
224
+ className: d(
223
225
  "table__cell",
224
226
  {
225
227
  "table__cell--double-line": s === "double-line",
@@ -238,10 +240,10 @@ const te = ({
238
240
  totalResults: t,
239
241
  resultsPerPage: s,
240
242
  setCurrentPage: i,
241
- className: j
243
+ className: u
242
244
  }) => {
243
- const p = Math.ceil(t / s);
244
- return /* @__PURE__ */ a.jsxs("div", { className: c("pagination", j), children: [
245
+ const m = Math.ceil(t / s);
246
+ return /* @__PURE__ */ a.jsxs("div", { className: d("pagination", u), children: [
245
247
  /* @__PURE__ */ a.jsxs("div", { className: "pagination__info", children: [
246
248
  "Stai visualizzando",
247
249
  " ",
@@ -255,7 +257,7 @@ const te = ({
255
257
  /* @__PURE__ */ a.jsx(
256
258
  "button",
257
259
  {
258
- className: c(
260
+ className: d(
259
261
  "pagination__button",
260
262
  e === 1 && "pagination__button--disabled"
261
263
  ),
@@ -265,10 +267,10 @@ const te = ({
265
267
  children: /* @__PURE__ */ a.jsx("svg", { className: "pagination__button-arrow", viewBox: "0 0 24 24", children: /* @__PURE__ */ a.jsx("path", { d: "M15 18l-6-6 6-6" }) })
266
268
  }
267
269
  ),
268
- Array.from({ length: p }, (l, b) => b + 1).map((l) => /* @__PURE__ */ a.jsx(
270
+ Array.from({ length: m }, (l, b) => b + 1).map((l) => /* @__PURE__ */ a.jsx(
269
271
  "button",
270
272
  {
271
- className: c(
273
+ className: d(
272
274
  "pagination__button",
273
275
  e === l && "pagination__button--active"
274
276
  ),
@@ -280,12 +282,12 @@ const te = ({
280
282
  /* @__PURE__ */ a.jsx(
281
283
  "button",
282
284
  {
283
- className: c(
285
+ className: d(
284
286
  "pagination__button",
285
- e === p && "pagination__button--disabled"
287
+ e === m && "pagination__button--disabled"
286
288
  ),
287
289
  onClick: () => i(e + 1),
288
- disabled: e === p,
290
+ disabled: e === m,
289
291
  "aria-label": "Next page",
290
292
  children: /* @__PURE__ */ a.jsx("svg", { className: "pagination__button-arrow", viewBox: "0 0 24 24", children: /* @__PURE__ */ a.jsx("path", { d: "M9 6l6 6-6 6" }) })
291
293
  }
@@ -295,7 +297,7 @@ const te = ({
295
297
  };
296
298
  export {
297
299
  te as Pagination,
298
- K as Table,
300
+ Z as Table,
299
301
  A as TableBody,
300
302
  T as TableCell,
301
303
  $ as TableHead,
@@ -1 +1 @@
1
- {"version":3,"file":"index.es65.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 \"../ActionIconText\";\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}\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}\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 ...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 = pagination ? (currentPage - 1) * resultsPerPage : 0;\n const endIndex = pagination\n ? Math.min(startIndex + resultsPerPage, sortedData.length)\n : sortedData.length;\n const currentPageData = 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 />\n ))}\n </TableRow>\n </TableHeader>\n <TableBody className=\"table__body\">\n {currentPageData.map((row, rowIndex) => (\n <TableRow key={rowIndex} className=\"table__row\">\n {Object.entries(row).map(([key, value], cellIndex) => {\n if (!value) return null;\n\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={sortedData.length}\n resultsPerPage={resultsPerPage}\n setCurrentPage={setCurrentPage}\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 }\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 textLabel={config.label}\n iconPosition={config.iconPosition}\n handleIconAction={() => {\n config.iconAction;\n }}\n popupInfo={config.popupInfo}\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 className,\n}) => {\n const totalPages = Math.ceil(totalResults / resultsPerPage);\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 {totalResults} risultati\n </div>\n <div className=\"pagination__nav\">\n <button\n className={clsx(\n \"pagination__button\",\n currentPage === 1 && \"pagination__button--disabled\",\n )}\n onClick={() => setCurrentPage(currentPage - 1)}\n disabled={currentPage === 1}\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 {Array.from({ length: totalPages }, (_, i) => i + 1).map((page) => (\n <button\n key={page}\n className={clsx(\n \"pagination__button\",\n currentPage === page && \"pagination__button--active\",\n )}\n onClick={() => setCurrentPage(page)}\n >\n {page}\n </button>\n ))}\n <button\n className={clsx(\n \"pagination__button\",\n currentPage === totalPages && \"pagination__button--disabled\",\n )}\n onClick={() => setCurrentPage(currentPage + 1)}\n disabled={currentPage === totalPages}\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","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","key","value","cellIndex","isActionData","TableCell","Pagination","children","config","onSort","isSorted","sortDirection","getAriaSortValue","renderIcon","icon","Info","Download","ActionIconText","TriangleUp","TriangleDown","DoubleLineContent","Fragment","ActionContent","content","TableCellContent","type","totalResults","totalPages","_","i","page"],"mappings":"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"}
1
+ {"version":3,"file":"index.es65.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 \"../ActionIconText\";\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}\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}\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 ...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 = pagination ? (currentPage - 1) * resultsPerPage : 0;\n const endIndex = pagination\n ? Math.min(startIndex + resultsPerPage, sortedData.length)\n : sortedData.length;\n const currentPageData = 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 />\n ))}\n </TableRow>\n </TableHeader>\n <TableBody className=\"table__body\">\n {currentPageData.map((row, rowIndex) => (\n <TableRow key={rowIndex} className=\"table__row\">\n {Object.entries(row).map(([key, value], cellIndex) => {\n if (!value) return null;\n\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={sortedData.length}\n resultsPerPage={resultsPerPage}\n setCurrentPage={setCurrentPage}\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 }\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 textLabel={config.label}\n iconPosition={config.iconPosition}\n handleIconAction={() => {\n config.iconAction;\n }}\n popupInfo={config.popupInfo}\n positionPopUp={config.popupInfo?.positionPopUp}\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 className,\n}) => {\n const totalPages = Math.ceil(totalResults / resultsPerPage);\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 {totalResults} risultati\n </div>\n <div className=\"pagination__nav\">\n <button\n className={clsx(\n \"pagination__button\",\n currentPage === 1 && \"pagination__button--disabled\",\n )}\n onClick={() => setCurrentPage(currentPage - 1)}\n disabled={currentPage === 1}\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 {Array.from({ length: totalPages }, (_, i) => i + 1).map((page) => (\n <button\n key={page}\n className={clsx(\n \"pagination__button\",\n currentPage === page && \"pagination__button--active\",\n )}\n onClick={() => setCurrentPage(page)}\n >\n {page}\n </button>\n ))}\n <button\n className={clsx(\n \"pagination__button\",\n currentPage === totalPages && \"pagination__button--disabled\",\n )}\n onClick={() => setCurrentPage(currentPage + 1)}\n disabled={currentPage === totalPages}\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","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","key","value","cellIndex","isActionData","TableCell","Pagination","children","config","onSort","isSorted","sortDirection","getAriaSortValue","renderIcon","icon","Info","Download","ActionIconText","_a","TriangleUp","TriangleDown","DoubleLineContent","Fragment","ActionContent","content","TableCellContent","type","totalResults","totalPages","_","i","page"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.es67.js","sources":["../src/components/ui/CardNotification/index.tsx"],"sourcesContent":["import \"./CardNotification.scss\";\nimport { useMemo } from \"react\";\nimport { Actions, Calendar } from \"@/icons\";\nimport { Button, Row } from \"@/components\";\n\ntype Variant = \"primary\" | \"secondary\";\n\ntype NotificationIcon = \"calendar\" | \"actions\";\n\ntype CardNotificationProps = {\n type: string;\n date: string;\n icon: NotificationIcon;\n showBadge?: boolean;\n title: string;\n text: string;\n variant?: Variant;\n onClickEdit?: () => void;\n onClickManage?: () => void;\n onClickGoToDetails?: () => void;\n showExpired?: boolean;\n buttonMaxWidth?: boolean;\n onClickRightManage?: () => void;\n};\n\nexport const CardNotification = ({\n type,\n onClickEdit,\n onClickRightManage,\n showExpired = false,\n buttonMaxWidth,\n onClickGoToDetails,\n icon = \"calendar\",\n variant = \"primary\",\n onClickManage,\n date,\n title,\n showBadge = false,\n text,\n}: CardNotificationProps) => {\n const isSecondary = variant === \"secondary\";\n\n const iconToRender = useMemo(() => {\n if (icon === \"calendar\") {\n return <Calendar width={24} height={26} color=\"slate-28\" />;\n }\n if (icon === \"actions\") {\n return <Actions width={24} height={26} color=\"slate-28\" />;\n }\n }, [icon]);\n\n const cardClasses = ` ${\n isSecondary\n ? \"bg-lightblue-a03 ui-card-notifications-secondary\"\n : \"bg-white\"\n } shadow br-x4 `;\n\n const iconContainer = ` ui-card-notifications-icon base-row ${\n isSecondary ? \"bg-white\" : \"bg-lightblue-a03\"\n } `;\n\n const manageButtonClasses = ` ${\n buttonMaxWidth ? \"w-full\" : \"ui-card-notifications-button\"\n } `;\n\n return (\n <div className={cardClasses}>\n <Row px={\"x24\"} py={\"x8\"} justifyContent={\"space-between\"}>\n <p className={\"fs-7 fw-semibold\"}> {type}</p>\n <p className={\"fs-7 fw-semibold\"}>{date}</p>\n </Row>\n <div className={\"ui-card-notifications-divider \"} />\n <Row pt={\"x16\"} px={\"x24\"} pb={\"x24\"} gap={\"x16\"}>\n <div className={iconContainer}>\n {showBadge && (\n <div className={\"ui-card-notifications-badge-container\"}>\n <div className={\"ui-card-notifications-badge\"} />\n </div>\n )}\n {iconToRender}\n </div>\n <div className={\"w-full\"}>\n <div className={\"mb-x24\"}>\n <p className={\"my-x8 fs-5 fw-semibold\"}>{title}</p>\n {showExpired && (\n <Row mb={\"x8\"}>\n <div\n className={\n \"py-x4 px-x16 bg-status-error text-white rounded fw-semibold fs-7\"\n }\n >\n SCADUTO\n </div>\n </Row>\n )}\n <p>{text}</p>\n </div>\n\n {onClickManage && (\n <div className={\"base-row justify-content-center\"}>\n <Button className={manageButtonClasses} onClick={onClickManage}>\n Gestisci\n </Button>\n </div>\n )}\n\n <Row justifyContent={\"flex-end\"} className={\"w-full gap-x16\"}>\n {onClickRightManage && (\n <div className={\"base-row justify-content-center\"}>\n <Button onClick={onClickRightManage}>Gestisci</Button>\n </div>\n )}\n\n {!!onClickEdit && (\n <Button\n onClick={onClickEdit}\n bg=\"transparent\"\n textColor=\"primary\"\n >\n Modifica\n </Button>\n )}\n {!!onClickGoToDetails && (\n <Button onClick={onClickGoToDetails} variant={\"secondary\"}>\n Più dettagli\n </Button>\n )}\n </Row>\n </div>\n </Row>\n </div>\n );\n};\n"],"names":["CardNotification","type","onClickEdit","onClickRightManage","showExpired","buttonMaxWidth","onClickGoToDetails","icon","variant","onClickManage","date","title","showBadge","text","isSecondary","iconToRender","useMemo","Calendar","Actions","cardClasses","iconContainer","manageButtonClasses","jsxs","Row","jsx","Button"],"mappings":"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"}
1
+ {"version":3,"file":"index.es67.js","sources":["../src/components/ui/CardNotification/index.tsx"],"sourcesContent":["import \"./CardNotification.scss\";\r\nimport { useMemo } from \"react\";\r\nimport { Actions, Calendar } from \"@/icons\";\r\nimport { Button, Row } from \"@/components\";\r\n\r\ntype Variant = \"primary\" | \"secondary\";\r\n\r\ntype NotificationIcon = \"calendar\" | \"actions\";\r\n\r\ntype CardNotificationProps = {\r\n type: string;\r\n date: string;\r\n icon: NotificationIcon;\r\n showBadge?: boolean;\r\n title: string;\r\n text: string;\r\n variant?: Variant;\r\n onClickEdit?: () => void;\r\n onClickManage?: () => void;\r\n onClickGoToDetails?: () => void;\r\n showExpired?: boolean;\r\n buttonMaxWidth?: boolean;\r\n onClickRightManage?: () => void;\r\n};\r\n\r\nexport const CardNotification = ({\r\n type,\r\n onClickEdit,\r\n onClickRightManage,\r\n showExpired = false,\r\n buttonMaxWidth,\r\n onClickGoToDetails,\r\n icon = \"calendar\",\r\n variant = \"primary\",\r\n onClickManage,\r\n date,\r\n title,\r\n showBadge = false,\r\n text,\r\n}: CardNotificationProps) => {\r\n const isSecondary = variant === \"secondary\";\r\n\r\n const iconToRender = useMemo(() => {\r\n if (icon === \"calendar\") {\r\n return <Calendar width={24} height={26} color=\"slate-28\" />;\r\n }\r\n if (icon === \"actions\") {\r\n return <Actions width={24} height={26} color=\"slate-28\" />;\r\n }\r\n }, [icon]);\r\n\r\n const cardClasses = ` ${\r\n isSecondary\r\n ? \"bg-lightblue-a03 ui-card-notifications-secondary\"\r\n : \"bg-white\"\r\n } shadow br-x4 `;\r\n\r\n const iconContainer = ` ui-card-notifications-icon base-row ${\r\n isSecondary ? \"bg-white\" : \"bg-lightblue-a03\"\r\n } `;\r\n\r\n const manageButtonClasses = ` ${\r\n buttonMaxWidth ? \"w-full\" : \"ui-card-notifications-button\"\r\n } `;\r\n\r\n return (\r\n <div className={cardClasses}>\r\n <Row px={\"x24\"} py={\"x8\"} justifyContent={\"space-between\"}>\r\n <p className={\"fs-7 fw-semibold\"}> {type}</p>\r\n <p className={\"fs-7 fw-semibold\"}>{date}</p>\r\n </Row>\r\n <div className={\"ui-card-notifications-divider \"} />\r\n <Row pt={\"x16\"} px={\"x24\"} pb={\"x24\"} gap={\"x16\"}>\r\n <div className={iconContainer}>\r\n {showBadge && (\r\n <div className={\"ui-card-notifications-badge-container\"}>\r\n <div className={\"ui-card-notifications-badge\"} />\r\n </div>\r\n )}\r\n {iconToRender}\r\n </div>\r\n <div className={\"w-full\"}>\r\n <div className={\"mb-x24\"}>\r\n <p className={\"my-x8 fs-5 fw-semibold\"}>{title}</p>\r\n {showExpired && (\r\n <Row mb={\"x8\"}>\r\n <div\r\n className={\r\n \"py-x4 px-x16 bg-status-error text-white rounded fw-semibold fs-7\"\r\n }\r\n >\r\n SCADUTO\r\n </div>\r\n </Row>\r\n )}\r\n <p>{text}</p>\r\n </div>\r\n\r\n {onClickManage && (\r\n <div className={\"base-row justify-content-center\"}>\r\n <Button className={manageButtonClasses} onClick={onClickManage}>\r\n Gestisci\r\n </Button>\r\n </div>\r\n )}\r\n\r\n <Row justifyContent={\"flex-end\"} className={\"w-full gap-x16\"}>\r\n {onClickRightManage && (\r\n <div className={\"base-row justify-content-center\"}>\r\n <Button onClick={onClickRightManage}>Gestisci</Button>\r\n </div>\r\n )}\r\n\r\n {!!onClickEdit && (\r\n <Button\r\n onClick={onClickEdit}\r\n bg=\"transparent\"\r\n textColor=\"primary\"\r\n >\r\n Modifica\r\n </Button>\r\n )}\r\n {!!onClickGoToDetails && (\r\n <Button onClick={onClickGoToDetails} variant={\"secondary\"}>\r\n Più dettagli\r\n </Button>\r\n )}\r\n </Row>\r\n </div>\r\n </Row>\r\n </div>\r\n );\r\n};\r\n"],"names":["CardNotification","type","onClickEdit","onClickRightManage","showExpired","buttonMaxWidth","onClickGoToDetails","icon","variant","onClickManage","date","title","showBadge","text","isSecondary","iconToRender","useMemo","Calendar","Actions","cardClasses","iconContainer","manageButtonClasses","jsxs","Row","jsx","Button"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.es68.js","sources":["../src/components/ui/DatePicker/index.tsx"],"sourcesContent":["// src/components/ui/Button/index.tsx\nimport { DateTime } from \"luxon\";\nimport \"./DatePicker.scss\";\nimport clsx from \"clsx\";\nimport { useEffect, useRef } from \"react\";\n\ntype DatePickerProps = {\n label: string;\n value?: Date | null;\n maxValue?: Date;\n minValue?: Date;\n className?: string;\n disabled?: boolean;\n onClick?: () => void;\n onChange: (date: Date) => void;\n error?: string;\n required?: boolean;\n id?: string;\n};\n\nexport const DatePicker = ({\n label,\n value,\n maxValue,\n minValue,\n className,\n disabled,\n onClick,\n onChange,\n error,\n required = false,\n id,\n}: DatePickerProps) => {\n const inputRef = useRef<HTMLInputElement>(null);\n const inputId =\n id || `datepicker-${label.toLowerCase().replace(/\\s+/g, \"-\")}`;\n\n useEffect(() => {\n if (error && inputRef.current) {\n inputRef.current.setAttribute(\"aria-invalid\", \"true\");\n inputRef.current.setAttribute(\"aria-describedby\", `${inputId}-error`);\n } else if (inputRef.current) {\n inputRef.current.setAttribute(\"aria-invalid\", \"false\");\n inputRef.current.removeAttribute(\"aria-describedby\");\n }\n }, [error, inputId]);\n\n const handleKeyDown = (e: React.KeyboardEvent<HTMLInputElement>) => {\n if (e.key === \"Enter\" && !disabled) {\n onClick?.();\n }\n };\n\n const formattedValue = value\n ? DateTime.fromJSDate(value).toFormat(\"yyyy-MM-dd\")\n : \"\";\n\n return (\n <div\n className={clsx(\"datepicker-container\", className)}\n role=\"group\"\n aria-labelledby={`${inputId}-label`}\n aria-describedby={error ? `${inputId}-error` : undefined}\n >\n <label\n id={`${inputId}-label`}\n htmlFor={inputId}\n className=\"datepicker-label fs-7\"\n >\n {label}\n {required && (\n <span className=\"text-error ml-1\" aria-hidden=\"true\">\n *\n </span>\n )}\n </label>\n <input\n ref={inputRef}\n id={inputId}\n type=\"date\"\n className=\"datepicker-input fs-6\"\n disabled={disabled}\n value={formattedValue}\n max={\n maxValue\n ? DateTime.fromJSDate(maxValue).toFormat(\"yyyy-MM-dd\")\n : undefined\n }\n min={\n minValue\n ? DateTime.fromJSDate(minValue).toFormat(\"yyyy-MM-dd\")\n : undefined\n }\n onClick={() => onClick?.()}\n onChange={(e) => {\n const newDate = new Date(e.target.value);\n if (!isNaN(newDate.getTime())) {\n onChange(newDate);\n }\n }}\n onKeyDown={handleKeyDown}\n aria-required={required}\n aria-disabled={disabled}\n aria-label={label}\n aria-invalid={!!error}\n aria-describedby={error ? `${inputId}-error` : undefined}\n />\n {error && (\n <div\n id={`${inputId}-error`}\n className=\"datepicker-error\"\n role=\"alert\"\n aria-live=\"polite\"\n >\n {error}\n </div>\n )}\n </div>\n );\n};\n"],"names":["DatePicker","label","value","maxValue","minValue","className","disabled","onClick","onChange","error","required","id","inputRef","useRef","inputId","useEffect","handleKeyDown","e","formattedValue","DateTime","jsxs","clsx","jsx","newDate"],"mappings":";;;;;;AAoBO,MAAMA,IAAa,CAAC;AAAA,EACzB,OAAAC;AAAA,EACA,OAAAC;AAAA,EACA,UAAAC;AAAA,EACA,UAAAC;AAAA,EACA,WAAAC;AAAA,EACA,UAAAC;AAAA,EACA,SAAAC;AAAA,EACA,UAAAC;AAAA,EACA,OAAAC;AAAA,EACA,UAAAC,IAAW;AAAA,EACX,IAAAC;AACF,MAAuB;AACf,QAAAC,IAAWC,EAAyB,IAAI,GACxCC,IACJH,KAAM,cAAcV,EAAM,YAAc,EAAA,QAAQ,QAAQ,GAAG,CAAC;AAE9D,EAAAc,EAAU,MAAM;AACV,IAAAN,KAASG,EAAS,WACXA,EAAA,QAAQ,aAAa,gBAAgB,MAAM,GACpDA,EAAS,QAAQ,aAAa,oBAAoB,GAAGE,CAAO,QAAQ,KAC3DF,EAAS,YACTA,EAAA,QAAQ,aAAa,gBAAgB,OAAO,GAC5CA,EAAA,QAAQ,gBAAgB,kBAAkB;AAAA,EACrD,GACC,CAACH,GAAOK,CAAO,CAAC;AAEb,QAAAE,IAAgB,CAACC,MAA6C;AAClE,IAAIA,EAAE,QAAQ,WAAW,CAACX,MACdC,KAAA,QAAAA;AAAA,EAEd,GAEMW,IAAiBhB,IACnBiB,EAAS,WAAWjB,CAAK,EAAE,SAAS,YAAY,IAChD;AAGF,SAAAkB,gBAAAA,EAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAWC,EAAK,wBAAwBhB,CAAS;AAAA,MACjD,MAAK;AAAA,MACL,mBAAiB,GAAGS,CAAO;AAAA,MAC3B,oBAAkBL,IAAQ,GAAGK,CAAO,WAAW;AAAA,MAE/C,UAAA;AAAA,QAAAM,gBAAAA,EAAA;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,IAAI,GAAGN,CAAO;AAAA,YACd,SAASA;AAAA,YACT,WAAU;AAAA,YAET,UAAA;AAAA,cAAAb;AAAA,cACAS,KACEY,gBAAAA,EAAAA,IAAA,QAAA,EAAK,WAAU,mBAAkB,eAAY,QAAO,UAErD,IAAA,CAAA;AAAA,YAAA;AAAA,UAAA;AAAA,QAEJ;AAAA,QACAA,gBAAAA,EAAA;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,KAAKV;AAAA,YACL,IAAIE;AAAA,YACJ,MAAK;AAAA,YACL,WAAU;AAAA,YACV,UAAAR;AAAA,YACA,OAAOY;AAAA,YACP,KACEf,IACIgB,EAAS,WAAWhB,CAAQ,EAAE,SAAS,YAAY,IACnD;AAAA,YAEN,KACEC,IACIe,EAAS,WAAWf,CAAQ,EAAE,SAAS,YAAY,IACnD;AAAA,YAEN,SAAS,MAAMG,KAAA,gBAAAA;AAAA,YACf,UAAU,CAACU,MAAM;AACf,oBAAMM,IAAU,IAAI,KAAKN,EAAE,OAAO,KAAK;AACvC,cAAK,MAAMM,EAAQ,QAAS,CAAA,KAC1Bf,EAASe,CAAO;AAAA,YAEpB;AAAA,YACA,WAAWP;AAAA,YACX,iBAAeN;AAAA,YACf,iBAAeJ;AAAA,YACf,cAAYL;AAAA,YACZ,gBAAc,CAAC,CAACQ;AAAA,YAChB,oBAAkBA,IAAQ,GAAGK,CAAO,WAAW;AAAA,UAAA;AAAA,QACjD;AAAA,QACCL,KACCa,gBAAAA,EAAA;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,IAAI,GAAGR,CAAO;AAAA,YACd,WAAU;AAAA,YACV,MAAK;AAAA,YACL,aAAU;AAAA,YAET,UAAAL;AAAA,UAAA;AAAA,QAAA;AAAA,MACH;AAAA,IAAA;AAAA,EAEJ;AAEJ;"}
1
+ {"version":3,"file":"index.es68.js","sources":["../src/components/ui/DatePicker/index.tsx"],"sourcesContent":["// src/components/ui/Button/index.tsx\r\nimport { DateTime } from \"luxon\";\r\nimport \"./DatePicker.scss\";\r\nimport clsx from \"clsx\";\r\nimport { useEffect, useRef } from \"react\";\r\n\r\ntype DatePickerProps = {\r\n label: string;\r\n value?: Date | null;\r\n maxValue?: Date;\r\n minValue?: Date;\r\n className?: string;\r\n disabled?: boolean;\r\n onClick?: () => void;\r\n onChange: (date: Date) => void;\r\n error?: string;\r\n required?: boolean;\r\n id?: string;\r\n};\r\n\r\nexport const DatePicker = ({\r\n label,\r\n value,\r\n maxValue,\r\n minValue,\r\n className,\r\n disabled,\r\n onClick,\r\n onChange,\r\n error,\r\n required = false,\r\n id,\r\n}: DatePickerProps) => {\r\n const inputRef = useRef<HTMLInputElement>(null);\r\n const inputId =\r\n id || `datepicker-${label.toLowerCase().replace(/\\s+/g, \"-\")}`;\r\n\r\n useEffect(() => {\r\n if (error && inputRef.current) {\r\n inputRef.current.setAttribute(\"aria-invalid\", \"true\");\r\n inputRef.current.setAttribute(\"aria-describedby\", `${inputId}-error`);\r\n } else if (inputRef.current) {\r\n inputRef.current.setAttribute(\"aria-invalid\", \"false\");\r\n inputRef.current.removeAttribute(\"aria-describedby\");\r\n }\r\n }, [error, inputId]);\r\n\r\n const handleKeyDown = (e: React.KeyboardEvent<HTMLInputElement>) => {\r\n if (e.key === \"Enter\" && !disabled) {\r\n onClick?.();\r\n }\r\n };\r\n\r\n const formattedValue = value\r\n ? DateTime.fromJSDate(value).toFormat(\"yyyy-MM-dd\")\r\n : \"\";\r\n\r\n return (\r\n <div\r\n className={clsx(\"datepicker-container\", className)}\r\n role=\"group\"\r\n aria-labelledby={`${inputId}-label`}\r\n aria-describedby={error ? `${inputId}-error` : undefined}\r\n >\r\n <label\r\n id={`${inputId}-label`}\r\n htmlFor={inputId}\r\n className=\"datepicker-label fs-7\"\r\n >\r\n {label}\r\n {required && (\r\n <span className=\"text-error ml-1\" aria-hidden=\"true\">\r\n *\r\n </span>\r\n )}\r\n </label>\r\n <input\r\n ref={inputRef}\r\n id={inputId}\r\n type=\"date\"\r\n className=\"datepicker-input fs-6\"\r\n disabled={disabled}\r\n value={formattedValue}\r\n max={\r\n maxValue\r\n ? DateTime.fromJSDate(maxValue).toFormat(\"yyyy-MM-dd\")\r\n : undefined\r\n }\r\n min={\r\n minValue\r\n ? DateTime.fromJSDate(minValue).toFormat(\"yyyy-MM-dd\")\r\n : undefined\r\n }\r\n onClick={() => onClick?.()}\r\n onChange={(e) => {\r\n const newDate = new Date(e.target.value);\r\n if (!isNaN(newDate.getTime())) {\r\n onChange(newDate);\r\n }\r\n }}\r\n onKeyDown={handleKeyDown}\r\n aria-required={required}\r\n aria-disabled={disabled}\r\n aria-label={label}\r\n aria-invalid={!!error}\r\n aria-describedby={error ? `${inputId}-error` : undefined}\r\n />\r\n {error && (\r\n <div\r\n id={`${inputId}-error`}\r\n className=\"datepicker-error\"\r\n role=\"alert\"\r\n aria-live=\"polite\"\r\n >\r\n {error}\r\n </div>\r\n )}\r\n </div>\r\n );\r\n};\r\n"],"names":["DatePicker","label","value","maxValue","minValue","className","disabled","onClick","onChange","error","required","id","inputRef","useRef","inputId","useEffect","handleKeyDown","e","formattedValue","DateTime","jsxs","clsx","jsx","newDate"],"mappings":";;;;;;AAoBO,MAAMA,IAAa,CAAC;AAAA,EACzB,OAAAC;AAAA,EACA,OAAAC;AAAA,EACA,UAAAC;AAAA,EACA,UAAAC;AAAA,EACA,WAAAC;AAAA,EACA,UAAAC;AAAA,EACA,SAAAC;AAAA,EACA,UAAAC;AAAA,EACA,OAAAC;AAAA,EACA,UAAAC,IAAW;AAAA,EACX,IAAAC;AACF,MAAuB;AACf,QAAAC,IAAWC,EAAyB,IAAI,GACxCC,IACJH,KAAM,cAAcV,EAAM,YAAc,EAAA,QAAQ,QAAQ,GAAG,CAAC;AAE9D,EAAAc,EAAU,MAAM;AACV,IAAAN,KAASG,EAAS,WACXA,EAAA,QAAQ,aAAa,gBAAgB,MAAM,GACpDA,EAAS,QAAQ,aAAa,oBAAoB,GAAGE,CAAO,QAAQ,KAC3DF,EAAS,YACTA,EAAA,QAAQ,aAAa,gBAAgB,OAAO,GAC5CA,EAAA,QAAQ,gBAAgB,kBAAkB;AAAA,EACrD,GACC,CAACH,GAAOK,CAAO,CAAC;AAEb,QAAAE,IAAgB,CAACC,MAA6C;AAClE,IAAIA,EAAE,QAAQ,WAAW,CAACX,MACdC,KAAA,QAAAA;AAAA,EAEd,GAEMW,IAAiBhB,IACnBiB,EAAS,WAAWjB,CAAK,EAAE,SAAS,YAAY,IAChD;AAGF,SAAAkB,gBAAAA,EAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAWC,EAAK,wBAAwBhB,CAAS;AAAA,MACjD,MAAK;AAAA,MACL,mBAAiB,GAAGS,CAAO;AAAA,MAC3B,oBAAkBL,IAAQ,GAAGK,CAAO,WAAW;AAAA,MAE/C,UAAA;AAAA,QAAAM,gBAAAA,EAAA;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,IAAI,GAAGN,CAAO;AAAA,YACd,SAASA;AAAA,YACT,WAAU;AAAA,YAET,UAAA;AAAA,cAAAb;AAAA,cACAS,KACEY,gBAAAA,EAAAA,IAAA,QAAA,EAAK,WAAU,mBAAkB,eAAY,QAAO,UAErD,IAAA,CAAA;AAAA,YAAA;AAAA,UAAA;AAAA,QAEJ;AAAA,QACAA,gBAAAA,EAAA;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,KAAKV;AAAA,YACL,IAAIE;AAAA,YACJ,MAAK;AAAA,YACL,WAAU;AAAA,YACV,UAAAR;AAAA,YACA,OAAOY;AAAA,YACP,KACEf,IACIgB,EAAS,WAAWhB,CAAQ,EAAE,SAAS,YAAY,IACnD;AAAA,YAEN,KACEC,IACIe,EAAS,WAAWf,CAAQ,EAAE,SAAS,YAAY,IACnD;AAAA,YAEN,SAAS,MAAMG,KAAA,gBAAAA;AAAA,YACf,UAAU,CAACU,MAAM;AACf,oBAAMM,IAAU,IAAI,KAAKN,EAAE,OAAO,KAAK;AACvC,cAAK,MAAMM,EAAQ,QAAS,CAAA,KAC1Bf,EAASe,CAAO;AAAA,YAEpB;AAAA,YACA,WAAWP;AAAA,YACX,iBAAeN;AAAA,YACf,iBAAeJ;AAAA,YACf,cAAYL;AAAA,YACZ,gBAAc,CAAC,CAACQ;AAAA,YAChB,oBAAkBA,IAAQ,GAAGK,CAAO,WAAW;AAAA,UAAA;AAAA,QACjD;AAAA,QACCL,KACCa,gBAAAA,EAAA;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,IAAI,GAAGR,CAAO;AAAA,YACd,WAAU;AAAA,YACV,MAAK;AAAA,YACL,aAAU;AAAA,YAET,UAAAL;AAAA,UAAA;AAAA,QAAA;AAAA,MACH;AAAA,IAAA;AAAA,EAEJ;AAEJ;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.es69.js","sources":["../src/components/ui/DatePickerRange/index.tsx"],"sourcesContent":["// src/components/ui/Button/index.tsx\nimport clsx from \"clsx\";\nimport { useEffect, useRef } from \"react\";\nimport { DatePicker } from \"../DatePicker\";\nimport { Row } from \"@/components\";\n\ntype DatePickerRangeProps = {\n label?: string;\n startDateLabel?: string;\n endDateLabel?: string;\n startDate?: Date;\n endDate?: Date;\n className?: string;\n disabled?: boolean;\n required?: boolean;\n error?: string;\n onStartDateChange: (date: Date) => void;\n onEndDateChange: (date: Date) => void;\n onStartDateClick?: () => void;\n onEndDateClick?: () => void;\n};\n\nexport const DatePickerRange = ({\n label,\n startDateLabel = \"Start Date\",\n endDateLabel = \"End Date\",\n startDate,\n endDate,\n className,\n disabled = false,\n required = false,\n error,\n onStartDateChange,\n onEndDateChange,\n onStartDateClick,\n onEndDateClick,\n}: DatePickerRangeProps) => {\n const containerRef = useRef<HTMLDivElement>(null);\n // we need to generate a unique id for the container and manage errors\n const containerId = label\n ? `datepicker-range-${label.toLowerCase().replace(/\\s+/g, \"-\")}`\n : \"datepicker-range\";\n\n useEffect(() => {\n if (error && containerRef.current) {\n containerRef.current.setAttribute(\"aria-invalid\", \"true\");\n containerRef.current.setAttribute(\n \"aria-describedby\",\n `${containerId}-error`,\n );\n } else if (containerRef.current) {\n containerRef.current.setAttribute(\"aria-invalid\", \"false\");\n containerRef.current.removeAttribute(\"aria-describedby\");\n }\n }, [error, containerId]);\n\n const handleStartDateChange = (date: Date) => {\n // Ensure end date is not before start date\n if (endDate && date > endDate) {\n onStartDateChange(date);\n onEndDateChange(date);\n } else {\n onStartDateChange(date);\n }\n };\n\n const handleEndDateChange = (date: Date) => {\n // Ensure start date is not after end date\n if (startDate && date < startDate) {\n onStartDateChange(date);\n onEndDateChange(date);\n } else {\n onEndDateChange(date);\n }\n };\n\n return (\n <div\n ref={containerRef}\n className={clsx(\"base-col gap-x8\", className)}\n role=\"group\"\n aria-labelledby={label ? `${containerId}-label` : undefined}\n aria-describedby={error ? `${containerId}-error` : undefined}\n >\n {label && (\n <label id={`${containerId}-label`} className=\"text-sm text-dark\">\n {label}\n {required && (\n <span className=\"text-error ml-1\" aria-hidden=\"true\">\n *\n </span>\n )}\n </label>\n )}\n\n <Row gap={\"x16\"} role=\"group\">\n <DatePicker\n label={startDateLabel}\n value={startDate}\n maxValue={endDate}\n disabled={disabled}\n required={required}\n onChange={handleStartDateChange}\n onClick={onStartDateClick}\n className=\"flex-1\"\n />\n\n <DatePicker\n label={endDateLabel}\n value={endDate}\n minValue={startDate}\n disabled={disabled}\n required={required}\n onChange={handleEndDateChange}\n onClick={onEndDateClick}\n className=\"flex-1\"\n />\n </Row>\n\n {error && (\n <div\n id={`${containerId}-error`}\n className=\"text-sm text-error\"\n role=\"alert\"\n aria-live=\"polite\"\n >\n {error}\n </div>\n )}\n </div>\n );\n};\n"],"names":["DatePickerRange","label","startDateLabel","endDateLabel","startDate","endDate","className","disabled","required","error","onStartDateChange","onEndDateChange","onStartDateClick","onEndDateClick","containerRef","useRef","containerId","useEffect","handleStartDateChange","date","handleEndDateChange","jsxs","clsx","jsx","Row","DatePicker"],"mappings":";;;;;AAsBO,MAAMA,IAAkB,CAAC;AAAA,EAC9B,OAAAC;AAAA,EACA,gBAAAC,IAAiB;AAAA,EACjB,cAAAC,IAAe;AAAA,EACf,WAAAC;AAAA,EACA,SAAAC;AAAA,EACA,WAAAC;AAAA,EACA,UAAAC,IAAW;AAAA,EACX,UAAAC,IAAW;AAAA,EACX,OAAAC;AAAA,EACA,mBAAAC;AAAA,EACA,iBAAAC;AAAA,EACA,kBAAAC;AAAA,EACA,gBAAAC;AACF,MAA4B;AACpB,QAAAC,IAAeC,EAAuB,IAAI,GAE1CC,IAAcf,IAChB,oBAAoBA,EAAM,cAAc,QAAQ,QAAQ,GAAG,CAAC,KAC5D;AAEJ,EAAAgB,EAAU,MAAM;AACV,IAAAR,KAASK,EAAa,WACXA,EAAA,QAAQ,aAAa,gBAAgB,MAAM,GACxDA,EAAa,QAAQ;AAAA,MACnB;AAAA,MACA,GAAGE,CAAW;AAAA,IAChB,KACSF,EAAa,YACTA,EAAA,QAAQ,aAAa,gBAAgB,OAAO,GAC5CA,EAAA,QAAQ,gBAAgB,kBAAkB;AAAA,EACzD,GACC,CAACL,GAAOO,CAAW,CAAC;AAEjB,QAAAE,IAAwB,CAACC,MAAe;AAExC,IAAAd,KAAWc,IAAOd,KACpBK,EAAkBS,CAAI,GACtBR,EAAgBQ,CAAI,KAEpBT,EAAkBS,CAAI;AAAA,EAE1B,GAEMC,IAAsB,CAACD,MAAe;AAEtC,IAAAf,KAAae,IAAOf,KACtBM,EAAkBS,CAAI,GACtBR,EAAgBQ,CAAI;AAAA,EAIxB;AAGE,SAAAE,gBAAAA,EAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,KAAKP;AAAA,MACL,WAAWQ,EAAK,mBAAmBhB,CAAS;AAAA,MAC5C,MAAK;AAAA,MACL,mBAAiBL,IAAQ,GAAGe,CAAW,WAAW;AAAA,MAClD,oBAAkBP,IAAQ,GAAGO,CAAW,WAAW;AAAA,MAElD,UAAA;AAAA,QAAAf,4BACE,SAAM,EAAA,IAAI,GAAGe,CAAW,UAAU,WAAU,qBAC1C,UAAA;AAAA,UAAAf;AAAA,UACAO,KACEe,gBAAAA,EAAAA,IAAA,QAAA,EAAK,WAAU,mBAAkB,eAAY,QAAO,UAErD,IAAA,CAAA;AAAA,QAAA,GAEJ;AAAA,QAGDF,gBAAAA,EAAA,KAAAG,GAAA,EAAI,KAAK,OAAO,MAAK,SACpB,UAAA;AAAA,UAAAD,gBAAAA,EAAA;AAAA,YAACE;AAAA,YAAA;AAAA,cACC,OAAOvB;AAAA,cACP,OAAOE;AAAA,cACP,UAAUC;AAAA,cACV,UAAAE;AAAA,cACA,UAAAC;AAAA,cACA,UAAUU;AAAA,cACV,SAASN;AAAA,cACT,WAAU;AAAA,YAAA;AAAA,UACZ;AAAA,UAEAW,gBAAAA,EAAA;AAAA,YAACE;AAAA,YAAA;AAAA,cACC,OAAOtB;AAAA,cACP,OAAOE;AAAA,cACP,UAAUD;AAAA,cACV,UAAAG;AAAA,cACA,UAAAC;AAAA,cACA,UAAUY;AAAA,cACV,SAASP;AAAA,cACT,WAAU;AAAA,YAAA;AAAA,UAAA;AAAA,QACZ,GACF;AAAA,QAECJ,KACCc,gBAAAA,EAAA;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,IAAI,GAAGP,CAAW;AAAA,YAClB,WAAU;AAAA,YACV,MAAK;AAAA,YACL,aAAU;AAAA,YAET,UAAAP;AAAA,UAAA;AAAA,QAAA;AAAA,MACH;AAAA,IAAA;AAAA,EAEJ;AAEJ;"}
1
+ {"version":3,"file":"index.es69.js","sources":["../src/components/ui/DatePickerRange/index.tsx"],"sourcesContent":["// src/components/ui/Button/index.tsx\r\nimport clsx from \"clsx\";\r\nimport { useEffect, useRef } from \"react\";\r\nimport { DatePicker } from \"../DatePicker\";\r\nimport { Row } from \"@/components\";\r\n\r\ntype DatePickerRangeProps = {\r\n label?: string;\r\n startDateLabel?: string;\r\n endDateLabel?: string;\r\n startDate?: Date;\r\n endDate?: Date;\r\n className?: string;\r\n disabled?: boolean;\r\n required?: boolean;\r\n error?: string;\r\n onStartDateChange: (date: Date) => void;\r\n onEndDateChange: (date: Date) => void;\r\n onStartDateClick?: () => void;\r\n onEndDateClick?: () => void;\r\n};\r\n\r\nexport const DatePickerRange = ({\r\n label,\r\n startDateLabel = \"Start Date\",\r\n endDateLabel = \"End Date\",\r\n startDate,\r\n endDate,\r\n className,\r\n disabled = false,\r\n required = false,\r\n error,\r\n onStartDateChange,\r\n onEndDateChange,\r\n onStartDateClick,\r\n onEndDateClick,\r\n}: DatePickerRangeProps) => {\r\n const containerRef = useRef<HTMLDivElement>(null);\r\n // we need to generate a unique id for the container and manage errors\r\n const containerId = label\r\n ? `datepicker-range-${label.toLowerCase().replace(/\\s+/g, \"-\")}`\r\n : \"datepicker-range\";\r\n\r\n useEffect(() => {\r\n if (error && containerRef.current) {\r\n containerRef.current.setAttribute(\"aria-invalid\", \"true\");\r\n containerRef.current.setAttribute(\r\n \"aria-describedby\",\r\n `${containerId}-error`,\r\n );\r\n } else if (containerRef.current) {\r\n containerRef.current.setAttribute(\"aria-invalid\", \"false\");\r\n containerRef.current.removeAttribute(\"aria-describedby\");\r\n }\r\n }, [error, containerId]);\r\n\r\n const handleStartDateChange = (date: Date) => {\r\n // Ensure end date is not before start date\r\n if (endDate && date > endDate) {\r\n onStartDateChange(date);\r\n onEndDateChange(date);\r\n } else {\r\n onStartDateChange(date);\r\n }\r\n };\r\n\r\n const handleEndDateChange = (date: Date) => {\r\n // Ensure start date is not after end date\r\n if (startDate && date < startDate) {\r\n onStartDateChange(date);\r\n onEndDateChange(date);\r\n } else {\r\n onEndDateChange(date);\r\n }\r\n };\r\n\r\n return (\r\n <div\r\n ref={containerRef}\r\n className={clsx(\"base-col gap-x8\", className)}\r\n role=\"group\"\r\n aria-labelledby={label ? `${containerId}-label` : undefined}\r\n aria-describedby={error ? `${containerId}-error` : undefined}\r\n >\r\n {label && (\r\n <label id={`${containerId}-label`} className=\"text-sm text-dark\">\r\n {label}\r\n {required && (\r\n <span className=\"text-error ml-1\" aria-hidden=\"true\">\r\n *\r\n </span>\r\n )}\r\n </label>\r\n )}\r\n\r\n <Row gap={\"x16\"} role=\"group\">\r\n <DatePicker\r\n label={startDateLabel}\r\n value={startDate}\r\n maxValue={endDate}\r\n disabled={disabled}\r\n required={required}\r\n onChange={handleStartDateChange}\r\n onClick={onStartDateClick}\r\n className=\"flex-1\"\r\n />\r\n\r\n <DatePicker\r\n label={endDateLabel}\r\n value={endDate}\r\n minValue={startDate}\r\n disabled={disabled}\r\n required={required}\r\n onChange={handleEndDateChange}\r\n onClick={onEndDateClick}\r\n className=\"flex-1\"\r\n />\r\n </Row>\r\n\r\n {error && (\r\n <div\r\n id={`${containerId}-error`}\r\n className=\"text-sm text-error\"\r\n role=\"alert\"\r\n aria-live=\"polite\"\r\n >\r\n {error}\r\n </div>\r\n )}\r\n </div>\r\n );\r\n};\r\n"],"names":["DatePickerRange","label","startDateLabel","endDateLabel","startDate","endDate","className","disabled","required","error","onStartDateChange","onEndDateChange","onStartDateClick","onEndDateClick","containerRef","useRef","containerId","useEffect","handleStartDateChange","date","handleEndDateChange","jsxs","clsx","jsx","Row","DatePicker"],"mappings":";;;;;AAsBO,MAAMA,IAAkB,CAAC;AAAA,EAC9B,OAAAC;AAAA,EACA,gBAAAC,IAAiB;AAAA,EACjB,cAAAC,IAAe;AAAA,EACf,WAAAC;AAAA,EACA,SAAAC;AAAA,EACA,WAAAC;AAAA,EACA,UAAAC,IAAW;AAAA,EACX,UAAAC,IAAW;AAAA,EACX,OAAAC;AAAA,EACA,mBAAAC;AAAA,EACA,iBAAAC;AAAA,EACA,kBAAAC;AAAA,EACA,gBAAAC;AACF,MAA4B;AACpB,QAAAC,IAAeC,EAAuB,IAAI,GAE1CC,IAAcf,IAChB,oBAAoBA,EAAM,cAAc,QAAQ,QAAQ,GAAG,CAAC,KAC5D;AAEJ,EAAAgB,EAAU,MAAM;AACV,IAAAR,KAASK,EAAa,WACXA,EAAA,QAAQ,aAAa,gBAAgB,MAAM,GACxDA,EAAa,QAAQ;AAAA,MACnB;AAAA,MACA,GAAGE,CAAW;AAAA,IAChB,KACSF,EAAa,YACTA,EAAA,QAAQ,aAAa,gBAAgB,OAAO,GAC5CA,EAAA,QAAQ,gBAAgB,kBAAkB;AAAA,EACzD,GACC,CAACL,GAAOO,CAAW,CAAC;AAEjB,QAAAE,IAAwB,CAACC,MAAe;AAExC,IAAAd,KAAWc,IAAOd,KACpBK,EAAkBS,CAAI,GACtBR,EAAgBQ,CAAI,KAEpBT,EAAkBS,CAAI;AAAA,EAE1B,GAEMC,IAAsB,CAACD,MAAe;AAEtC,IAAAf,KAAae,IAAOf,KACtBM,EAAkBS,CAAI,GACtBR,EAAgBQ,CAAI;AAAA,EAIxB;AAGE,SAAAE,gBAAAA,EAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,KAAKP;AAAA,MACL,WAAWQ,EAAK,mBAAmBhB,CAAS;AAAA,MAC5C,MAAK;AAAA,MACL,mBAAiBL,IAAQ,GAAGe,CAAW,WAAW;AAAA,MAClD,oBAAkBP,IAAQ,GAAGO,CAAW,WAAW;AAAA,MAElD,UAAA;AAAA,QAAAf,4BACE,SAAM,EAAA,IAAI,GAAGe,CAAW,UAAU,WAAU,qBAC1C,UAAA;AAAA,UAAAf;AAAA,UACAO,KACEe,gBAAAA,EAAAA,IAAA,QAAA,EAAK,WAAU,mBAAkB,eAAY,QAAO,UAErD,IAAA,CAAA;AAAA,QAAA,GAEJ;AAAA,QAGDF,gBAAAA,EAAA,KAAAG,GAAA,EAAI,KAAK,OAAO,MAAK,SACpB,UAAA;AAAA,UAAAD,gBAAAA,EAAA;AAAA,YAACE;AAAA,YAAA;AAAA,cACC,OAAOvB;AAAA,cACP,OAAOE;AAAA,cACP,UAAUC;AAAA,cACV,UAAAE;AAAA,cACA,UAAAC;AAAA,cACA,UAAUU;AAAA,cACV,SAASN;AAAA,cACT,WAAU;AAAA,YAAA;AAAA,UACZ;AAAA,UAEAW,gBAAAA,EAAA;AAAA,YAACE;AAAA,YAAA;AAAA,cACC,OAAOtB;AAAA,cACP,OAAOE;AAAA,cACP,UAAUD;AAAA,cACV,UAAAG;AAAA,cACA,UAAAC;AAAA,cACA,UAAUY;AAAA,cACV,SAASP;AAAA,cACT,WAAU;AAAA,YAAA;AAAA,UAAA;AAAA,QACZ,GACF;AAAA,QAECJ,KACCc,gBAAAA,EAAA;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,IAAI,GAAGP,CAAW;AAAA,YAClB,WAAU;AAAA,YACV,MAAK;AAAA,YACL,aAAU;AAAA,YAET,UAAAP;AAAA,UAAA;AAAA,QAAA;AAAA,MACH;AAAA,IAAA;AAAA,EAEJ;AAEJ;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.es7.js","sources":["../src/components/ui/GridContainer/index.tsx"],"sourcesContent":["import { ElementType, ComponentPropsWithoutRef, useMemo } from \"react\";\nimport clsx from \"clsx\";\nimport { createSpacingClasses, SpacingProps } from \"@theme/spacing.ts\";\n\ntype PolymorphicProps<E extends ElementType> = {\n as?: E;\n} & SpacingProps &\n Omit<ComponentPropsWithoutRef<E>, keyof SpacingProps>;\n\nexport const GridContainer = <E extends ElementType = \"div\">({\n as,\n className,\n style,\n ...rest\n}: PolymorphicProps<E>) => {\n const Component = as || \"div\";\n\n const classNames = useMemo(() => {\n const spacingClasses = createSpacingClasses(rest);\n return [...spacingClasses].join(\" \");\n }, [rest]);\n\n return (\n <Component\n className={clsx(\"base-grid\", className, classNames)}\n style={{\n ...style,\n }}\n {...rest}\n />\n );\n};\n"],"names":["GridContainer","as","className","style","rest","Component","classNames","useMemo","createSpacingClasses","jsx","clsx"],"mappings":";;;;AASO,MAAMA,IAAgB,CAAgC;AAAA,EAC3D,IAAAC;AAAA,EACA,WAAAC;AAAA,EACA,OAAAC;AAAA,EACA,GAAGC;AACL,MAA2B;AACzB,QAAMC,IAAYJ,KAAM,OAElBK,IAAaC,EAAQ,MAElB,CAAC,GADeC,EAAqBJ,CAAI,CACvB,EAAE,KAAK,GAAG,GAClC,CAACA,CAAI,CAAC;AAGP,SAAAK,gBAAAA,EAAA;AAAA,IAACJ;AAAA,IAAA;AAAA,MACC,WAAWK,EAAK,aAAaR,GAAWI,CAAU;AAAA,MAClD,OAAO;AAAA,QACL,GAAGH;AAAA,MACL;AAAA,MACC,GAAGC;AAAA,IAAA;AAAA,EACN;AAEJ;"}
1
+ {"version":3,"file":"index.es7.js","sources":["../src/components/ui/GridContainer/index.tsx"],"sourcesContent":["import { ElementType, ComponentPropsWithoutRef, useMemo } from \"react\";\r\nimport clsx from \"clsx\";\r\nimport { createSpacingClasses, SpacingProps } from \"@theme/spacing.ts\";\r\n\r\ntype PolymorphicProps<E extends ElementType> = {\r\n as?: E;\r\n} & SpacingProps &\r\n Omit<ComponentPropsWithoutRef<E>, keyof SpacingProps>;\r\n\r\nexport const GridContainer = <E extends ElementType = \"div\">({\r\n as,\r\n className,\r\n style,\r\n ...rest\r\n}: PolymorphicProps<E>) => {\r\n const Component = as || \"div\";\r\n\r\n const classNames = useMemo(() => {\r\n const spacingClasses = createSpacingClasses(rest);\r\n return [...spacingClasses].join(\" \");\r\n }, [rest]);\r\n\r\n return (\r\n <Component\r\n className={clsx(\"base-grid\", className, classNames)}\r\n style={{\r\n ...style,\r\n }}\r\n {...rest}\r\n />\r\n );\r\n};\r\n"],"names":["GridContainer","as","className","style","rest","Component","classNames","useMemo","createSpacingClasses","jsx","clsx"],"mappings":";;;;AASO,MAAMA,IAAgB,CAAgC;AAAA,EAC3D,IAAAC;AAAA,EACA,WAAAC;AAAA,EACA,OAAAC;AAAA,EACA,GAAGC;AACL,MAA2B;AACzB,QAAMC,IAAYJ,KAAM,OAElBK,IAAaC,EAAQ,MAElB,CAAC,GADeC,EAAqBJ,CAAI,CACvB,EAAE,KAAK,GAAG,GAClC,CAACA,CAAI,CAAC;AAGP,SAAAK,gBAAAA,EAAA;AAAA,IAACJ;AAAA,IAAA;AAAA,MACC,WAAWK,EAAK,aAAaR,GAAWI,CAAU;AAAA,MAClD,OAAO;AAAA,QACL,GAAGH;AAAA,MACL;AAAA,MACC,GAAGC;AAAA,IAAA;AAAA,EACN;AAEJ;"}