@etus/ui 0.4.0-beta.2 → 0.4.0-beta.4

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 (821) hide show
  1. package/dist/chunk-23BHD62H.js +288 -0
  2. package/dist/chunk-23BHD62H.js.map +1 -0
  3. package/dist/chunk-2D6OFVPN.js +145 -0
  4. package/dist/chunk-2D6OFVPN.js.map +1 -0
  5. package/dist/chunk-2HM5Z2YP.js +834 -0
  6. package/dist/chunk-2HM5Z2YP.js.map +1 -0
  7. package/dist/chunk-2IFYXJ3H.js +107 -0
  8. package/dist/chunk-2IFYXJ3H.js.map +1 -0
  9. package/dist/chunk-2UGDLAYC.js +71 -0
  10. package/dist/chunk-2UGDLAYC.js.map +1 -0
  11. package/dist/chunk-2VHARFMD.js +670 -0
  12. package/dist/chunk-2VHARFMD.js.map +1 -0
  13. package/dist/chunk-2XJWE2XR.js +36 -0
  14. package/dist/chunk-2XJWE2XR.js.map +1 -0
  15. package/dist/chunk-2Y7PQ6ZL.js +96 -0
  16. package/dist/chunk-2Y7PQ6ZL.js.map +1 -0
  17. package/dist/chunk-32IJQOUV.js +226 -0
  18. package/dist/chunk-32IJQOUV.js.map +1 -0
  19. package/dist/chunk-33JGPMUW.js +170 -0
  20. package/dist/chunk-33JGPMUW.js.map +1 -0
  21. package/dist/chunk-36XTKR3B.js +544 -0
  22. package/dist/chunk-36XTKR3B.js.map +1 -0
  23. package/dist/chunk-3L5G7VI2.js +203 -0
  24. package/dist/chunk-3L5G7VI2.js.map +1 -0
  25. package/dist/chunk-3MJNJKAF.js +264 -0
  26. package/dist/chunk-3MJNJKAF.js.map +1 -0
  27. package/dist/chunk-3NFQXZHO.js +199 -0
  28. package/dist/chunk-3NFQXZHO.js.map +1 -0
  29. package/dist/chunk-3RJEA2MM.js +560 -0
  30. package/dist/chunk-3RJEA2MM.js.map +1 -0
  31. package/dist/chunk-3WOGOTOV.js +152 -0
  32. package/dist/chunk-3WOGOTOV.js.map +1 -0
  33. package/dist/chunk-46ESMCEQ.js +80 -0
  34. package/dist/chunk-46ESMCEQ.js.map +1 -0
  35. package/dist/chunk-4GQN76L7.js +228 -0
  36. package/dist/chunk-4GQN76L7.js.map +1 -0
  37. package/dist/chunk-4MQNDQ4O.js +62 -0
  38. package/dist/chunk-4MQNDQ4O.js.map +1 -0
  39. package/dist/chunk-4RSHPKHB.js +268 -0
  40. package/dist/chunk-4RSHPKHB.js.map +1 -0
  41. package/dist/chunk-4Y72SPNL.js +283 -0
  42. package/dist/chunk-4Y72SPNL.js.map +1 -0
  43. package/dist/chunk-57KTYE5H.js +273 -0
  44. package/dist/chunk-57KTYE5H.js.map +1 -0
  45. package/dist/chunk-5J5OL4IV.js +529 -0
  46. package/dist/chunk-5J5OL4IV.js.map +1 -0
  47. package/dist/chunk-5KTMPLDK.js +251 -0
  48. package/dist/chunk-5KTMPLDK.js.map +1 -0
  49. package/dist/chunk-5XQIH6WM.js +204 -0
  50. package/dist/chunk-5XQIH6WM.js.map +1 -0
  51. package/dist/chunk-5YDFC74M.js +310 -0
  52. package/dist/chunk-5YDFC74M.js.map +1 -0
  53. package/dist/chunk-5ZEYTBTU.js +288 -0
  54. package/dist/chunk-5ZEYTBTU.js.map +1 -0
  55. package/dist/chunk-5ZKKXLPF.js +177 -0
  56. package/dist/chunk-5ZKKXLPF.js.map +1 -0
  57. package/dist/chunk-5ZWFIDO2.js +3 -0
  58. package/dist/chunk-5ZWFIDO2.js.map +1 -0
  59. package/dist/chunk-65YSTUD2.js +206 -0
  60. package/dist/chunk-65YSTUD2.js.map +1 -0
  61. package/dist/chunk-6GWO7JNP.js +438 -0
  62. package/dist/chunk-6GWO7JNP.js.map +1 -0
  63. package/dist/chunk-6SHOL6WR.js +163 -0
  64. package/dist/chunk-6SHOL6WR.js.map +1 -0
  65. package/dist/chunk-6SZRWNPT.js +67 -0
  66. package/dist/chunk-6SZRWNPT.js.map +1 -0
  67. package/dist/chunk-6VCJU6XD.js +19 -0
  68. package/dist/chunk-6VCJU6XD.js.map +1 -0
  69. package/dist/chunk-6XY7QYVR.js +812 -0
  70. package/dist/chunk-6XY7QYVR.js.map +1 -0
  71. package/dist/chunk-6Z73ZQOP.js +3 -0
  72. package/dist/chunk-6Z73ZQOP.js.map +1 -0
  73. package/dist/chunk-6ZAMTPGN.js +309 -0
  74. package/dist/chunk-6ZAMTPGN.js.map +1 -0
  75. package/dist/chunk-7I6KK6QE.js +411 -0
  76. package/dist/chunk-7I6KK6QE.js.map +1 -0
  77. package/dist/chunk-7RTHGI6E.js +154 -0
  78. package/dist/chunk-7RTHGI6E.js.map +1 -0
  79. package/dist/chunk-7Y2UQMX6.js +524 -0
  80. package/dist/chunk-7Y2UQMX6.js.map +1 -0
  81. package/dist/chunk-7ZJ32KRQ.js +100 -0
  82. package/dist/chunk-7ZJ32KRQ.js.map +1 -0
  83. package/dist/chunk-AB3S55W5.js +1208 -0
  84. package/dist/chunk-AB3S55W5.js.map +1 -0
  85. package/dist/chunk-AEE5GDNA.js +220 -0
  86. package/dist/chunk-AEE5GDNA.js.map +1 -0
  87. package/dist/chunk-AEHYYTFW.js +70 -0
  88. package/dist/chunk-AEHYYTFW.js.map +1 -0
  89. package/dist/chunk-AFCSDND5.js +58 -0
  90. package/dist/chunk-AFCSDND5.js.map +1 -0
  91. package/dist/chunk-AR3OXNPL.js +70 -0
  92. package/dist/chunk-AR3OXNPL.js.map +1 -0
  93. package/dist/chunk-ARNVOHVW.js +103 -0
  94. package/dist/chunk-ARNVOHVW.js.map +1 -0
  95. package/dist/chunk-ATIEGLR2.js +3 -0
  96. package/dist/chunk-ATIEGLR2.js.map +1 -0
  97. package/dist/chunk-AUCDXPWH.js +853 -0
  98. package/dist/chunk-AUCDXPWH.js.map +1 -0
  99. package/dist/chunk-AWYOWR5N.js +928 -0
  100. package/dist/chunk-AWYOWR5N.js.map +1 -0
  101. package/dist/chunk-AZANPNLR.js +134 -0
  102. package/dist/chunk-AZANPNLR.js.map +1 -0
  103. package/dist/chunk-B3BDIM4H.js +137 -0
  104. package/dist/chunk-B3BDIM4H.js.map +1 -0
  105. package/dist/chunk-B4ETIQOO.js +101 -0
  106. package/dist/chunk-B4ETIQOO.js.map +1 -0
  107. package/dist/chunk-B6KQKQ4S.js +774 -0
  108. package/dist/chunk-B6KQKQ4S.js.map +1 -0
  109. package/dist/chunk-B7ZLPQSO.js +181 -0
  110. package/dist/chunk-B7ZLPQSO.js.map +1 -0
  111. package/dist/chunk-BECPEVUL.js +115 -0
  112. package/dist/chunk-BECPEVUL.js.map +1 -0
  113. package/dist/chunk-BFBGESUI.js +217 -0
  114. package/dist/chunk-BFBGESUI.js.map +1 -0
  115. package/dist/chunk-BITATKTH.js +3 -0
  116. package/dist/chunk-BITATKTH.js.map +1 -0
  117. package/dist/chunk-BIUVOZQG.js +370 -0
  118. package/dist/chunk-BIUVOZQG.js.map +1 -0
  119. package/dist/chunk-BQMQULAC.js +37 -0
  120. package/dist/chunk-BQMQULAC.js.map +1 -0
  121. package/dist/chunk-BWGZKU3I.js +3 -0
  122. package/dist/chunk-BWGZKU3I.js.map +1 -0
  123. package/dist/chunk-CKD4UBV6.js +138 -0
  124. package/dist/chunk-CKD4UBV6.js.map +1 -0
  125. package/dist/chunk-CNRV2IGH.js +111 -0
  126. package/dist/chunk-CNRV2IGH.js.map +1 -0
  127. package/dist/chunk-CP2PEDG2.js +383 -0
  128. package/dist/chunk-CP2PEDG2.js.map +1 -0
  129. package/dist/chunk-CSXT7SKR.js +139 -0
  130. package/dist/chunk-CSXT7SKR.js.map +1 -0
  131. package/dist/chunk-CYIFWQ5Y.js +197 -0
  132. package/dist/chunk-CYIFWQ5Y.js.map +1 -0
  133. package/dist/chunk-D2V2HKLX.js +249 -0
  134. package/dist/chunk-D2V2HKLX.js.map +1 -0
  135. package/dist/chunk-D6TH3EGA.js +204 -0
  136. package/dist/chunk-D6TH3EGA.js.map +1 -0
  137. package/dist/chunk-DDM2I5C6.js +199 -0
  138. package/dist/chunk-DDM2I5C6.js.map +1 -0
  139. package/dist/chunk-DDR24GOP.js +182 -0
  140. package/dist/chunk-DDR24GOP.js.map +1 -0
  141. package/dist/chunk-DL7D5F7B.js +63 -0
  142. package/dist/chunk-DL7D5F7B.js.map +1 -0
  143. package/dist/chunk-DNAGXK2C.js +91 -0
  144. package/dist/chunk-DNAGXK2C.js.map +1 -0
  145. package/dist/chunk-DYDXGWH2.js +109 -0
  146. package/dist/chunk-DYDXGWH2.js.map +1 -0
  147. package/dist/chunk-E27SQ54A.js +122 -0
  148. package/dist/chunk-E27SQ54A.js.map +1 -0
  149. package/dist/chunk-EGYWK2XX.js +316 -0
  150. package/dist/chunk-EGYWK2XX.js.map +1 -0
  151. package/dist/chunk-ESLSPRYA.js +875 -0
  152. package/dist/chunk-ESLSPRYA.js.map +1 -0
  153. package/dist/chunk-EVUHEBWX.js +35 -0
  154. package/dist/chunk-EVUHEBWX.js.map +1 -0
  155. package/dist/chunk-F6ZKBK5B.js +265 -0
  156. package/dist/chunk-F6ZKBK5B.js.map +1 -0
  157. package/dist/chunk-F7XARQUW.js +82 -0
  158. package/dist/chunk-F7XARQUW.js.map +1 -0
  159. package/dist/chunk-FCSYPOHF.js +77 -0
  160. package/dist/chunk-FCSYPOHF.js.map +1 -0
  161. package/dist/chunk-FDES5YDF.js +159 -0
  162. package/dist/chunk-FDES5YDF.js.map +1 -0
  163. package/dist/chunk-FPCRGFNY.js +776 -0
  164. package/dist/chunk-FPCRGFNY.js.map +1 -0
  165. package/dist/chunk-FRDYXDAE.js +69 -0
  166. package/dist/chunk-FRDYXDAE.js.map +1 -0
  167. package/dist/chunk-FSMHI7DW.js +291 -0
  168. package/dist/chunk-FSMHI7DW.js.map +1 -0
  169. package/dist/chunk-FYJHWYPM.js +539 -0
  170. package/dist/chunk-FYJHWYPM.js.map +1 -0
  171. package/dist/chunk-G2V7D7VC.js +371 -0
  172. package/dist/chunk-G2V7D7VC.js.map +1 -0
  173. package/dist/chunk-G5TWK7L3.js +667 -0
  174. package/dist/chunk-G5TWK7L3.js.map +1 -0
  175. package/dist/chunk-G6SIIN2B.js +3 -0
  176. package/dist/chunk-G6SIIN2B.js.map +1 -0
  177. package/dist/chunk-GAP3OZR7.js +223 -0
  178. package/dist/chunk-GAP3OZR7.js.map +1 -0
  179. package/dist/chunk-GKMR5SVC.js +97 -0
  180. package/dist/chunk-GKMR5SVC.js.map +1 -0
  181. package/dist/chunk-GL56KIFL.js +79 -0
  182. package/dist/chunk-GL56KIFL.js.map +1 -0
  183. package/dist/chunk-GPW57XOW.js +80 -0
  184. package/dist/chunk-GPW57XOW.js.map +1 -0
  185. package/dist/chunk-H4ANCFZG.js +233 -0
  186. package/dist/chunk-H4ANCFZG.js.map +1 -0
  187. package/dist/chunk-HAEZLC7V.js +122 -0
  188. package/dist/chunk-HAEZLC7V.js.map +1 -0
  189. package/dist/chunk-HKXQLWGR.js +335 -0
  190. package/dist/chunk-HKXQLWGR.js.map +1 -0
  191. package/dist/chunk-HRNDJU7D.js +5 -5
  192. package/dist/chunk-HRNDJU7D.js.map +1 -1
  193. package/dist/chunk-HXHB2CK5.js +108 -0
  194. package/dist/chunk-HXHB2CK5.js.map +1 -0
  195. package/dist/chunk-I7ZLEC7Y.js +128 -0
  196. package/dist/chunk-I7ZLEC7Y.js.map +1 -0
  197. package/dist/chunk-IBVCSZCH.js +142 -0
  198. package/dist/chunk-IBVCSZCH.js.map +1 -0
  199. package/dist/chunk-ICAQYWCX.js +153 -0
  200. package/dist/chunk-ICAQYWCX.js.map +1 -0
  201. package/dist/chunk-ICM45N2K.js +225 -0
  202. package/dist/chunk-ICM45N2K.js.map +1 -0
  203. package/dist/chunk-IFHF4UES.js +387 -0
  204. package/dist/chunk-IFHF4UES.js.map +1 -0
  205. package/dist/chunk-ILAV2AZ4.js +226 -0
  206. package/dist/chunk-ILAV2AZ4.js.map +1 -0
  207. package/dist/chunk-IRIIK3BU.js +215 -0
  208. package/dist/chunk-IRIIK3BU.js.map +1 -0
  209. package/dist/chunk-IRKDMISK.js +62 -0
  210. package/dist/chunk-IRKDMISK.js.map +1 -0
  211. package/dist/chunk-IXJHHR3Y.js +3 -0
  212. package/dist/chunk-IXJHHR3Y.js.map +1 -0
  213. package/dist/chunk-J62TFQHR.js +174 -0
  214. package/dist/chunk-J62TFQHR.js.map +1 -0
  215. package/dist/chunk-JDTAG7KZ.js +33 -0
  216. package/dist/chunk-JDTAG7KZ.js.map +1 -0
  217. package/dist/chunk-JKYB5QAP.js +1070 -0
  218. package/dist/chunk-JKYB5QAP.js.map +1 -0
  219. package/dist/chunk-JMZ4CO6R.js +159 -0
  220. package/dist/chunk-JMZ4CO6R.js.map +1 -0
  221. package/dist/chunk-JPA2VQRW.js +119 -0
  222. package/dist/chunk-JPA2VQRW.js.map +1 -0
  223. package/dist/chunk-JWXK4TMX.js +106 -0
  224. package/dist/chunk-JWXK4TMX.js.map +1 -0
  225. package/dist/chunk-K45MMHLA.js +258 -0
  226. package/dist/chunk-K45MMHLA.js.map +1 -0
  227. package/dist/chunk-KC6CHPT3.js +995 -0
  228. package/dist/chunk-KC6CHPT3.js.map +1 -0
  229. package/dist/chunk-KPNNSUXM.js +130 -0
  230. package/dist/chunk-KPNNSUXM.js.map +1 -0
  231. package/dist/chunk-KR3IVNQH.js +402 -0
  232. package/dist/chunk-KR3IVNQH.js.map +1 -0
  233. package/dist/chunk-KRHL3YH2.js +3 -0
  234. package/dist/chunk-KRHL3YH2.js.map +1 -0
  235. package/dist/chunk-L2XR5IFJ.js +103 -0
  236. package/dist/chunk-L2XR5IFJ.js.map +1 -0
  237. package/dist/chunk-LATTRPLQ.js +286 -0
  238. package/dist/chunk-LATTRPLQ.js.map +1 -0
  239. package/dist/chunk-LFN7UHDT.js +122 -0
  240. package/dist/chunk-LFN7UHDT.js.map +1 -0
  241. package/dist/chunk-LNY2EXOV.js +349 -0
  242. package/dist/chunk-LNY2EXOV.js.map +1 -0
  243. package/dist/chunk-LQVQ7SHG.js +226 -0
  244. package/dist/chunk-LQVQ7SHG.js.map +1 -0
  245. package/dist/chunk-MK6ID2HI.js +532 -0
  246. package/dist/chunk-MK6ID2HI.js.map +1 -0
  247. package/dist/chunk-MQ2446N7.js +216 -0
  248. package/dist/chunk-MQ2446N7.js.map +1 -0
  249. package/dist/chunk-MVOENLOZ.js +3 -0
  250. package/dist/chunk-MVOENLOZ.js.map +1 -0
  251. package/dist/chunk-N23L6UDK.js +108 -0
  252. package/dist/chunk-N23L6UDK.js.map +1 -0
  253. package/dist/chunk-N3I6GA4I.js +137 -0
  254. package/dist/chunk-N3I6GA4I.js.map +1 -0
  255. package/dist/chunk-N4UTBJRY.js +72 -0
  256. package/dist/chunk-N4UTBJRY.js.map +1 -0
  257. package/dist/chunk-NCLOPI6U.js +347 -0
  258. package/dist/chunk-NCLOPI6U.js.map +1 -0
  259. package/dist/chunk-NGR4HFVA.js +136 -0
  260. package/dist/chunk-NGR4HFVA.js.map +1 -0
  261. package/dist/chunk-NK5Q2YRM.js +70 -0
  262. package/dist/chunk-NK5Q2YRM.js.map +1 -0
  263. package/dist/chunk-NWVYQYKK.js +75 -0
  264. package/dist/chunk-NWVYQYKK.js.map +1 -0
  265. package/dist/chunk-NXQ25PKF.js +318 -0
  266. package/dist/chunk-NXQ25PKF.js.map +1 -0
  267. package/dist/chunk-OEXQ2MOY.js +338 -0
  268. package/dist/chunk-OEXQ2MOY.js.map +1 -0
  269. package/dist/chunk-ONQCNOLU.js +233 -0
  270. package/dist/chunk-ONQCNOLU.js.map +1 -0
  271. package/dist/chunk-ONTUN5XH.js +57 -0
  272. package/dist/chunk-ONTUN5XH.js.map +1 -0
  273. package/dist/chunk-OQCGQG47.js +83 -0
  274. package/dist/chunk-OQCGQG47.js.map +1 -0
  275. package/dist/chunk-OWIFNJXZ.js +167 -0
  276. package/dist/chunk-OWIFNJXZ.js.map +1 -0
  277. package/dist/chunk-OWOVCGUZ.js +1062 -0
  278. package/dist/chunk-OWOVCGUZ.js.map +1 -0
  279. package/dist/chunk-PFVT27B5.js +92 -0
  280. package/dist/chunk-PFVT27B5.js.map +1 -0
  281. package/dist/chunk-PK5O62XD.js +58 -0
  282. package/dist/chunk-PK5O62XD.js.map +1 -0
  283. package/dist/chunk-PLLJNHWU.js +175 -0
  284. package/dist/chunk-PLLJNHWU.js.map +1 -0
  285. package/dist/chunk-PWCMCMDN.js +67 -0
  286. package/dist/chunk-PWCMCMDN.js.map +1 -0
  287. package/dist/chunk-Q43KJP5A.js +294 -0
  288. package/dist/chunk-Q43KJP5A.js.map +1 -0
  289. package/dist/chunk-QHKOBGLW.js +119 -0
  290. package/dist/chunk-QHKOBGLW.js.map +1 -0
  291. package/dist/chunk-QIETN4UU.js +924 -0
  292. package/dist/chunk-QIETN4UU.js.map +1 -0
  293. package/dist/chunk-QUENPT24.js +100 -0
  294. package/dist/chunk-QUENPT24.js.map +1 -0
  295. package/dist/chunk-QZWKXUZP.js +147 -0
  296. package/dist/chunk-QZWKXUZP.js.map +1 -0
  297. package/dist/chunk-R4UOT76L.js +342 -0
  298. package/dist/chunk-R4UOT76L.js.map +1 -0
  299. package/dist/chunk-RVUO7SDG.js +460 -0
  300. package/dist/chunk-RVUO7SDG.js.map +1 -0
  301. package/dist/chunk-S6ORCWM2.js +205 -0
  302. package/dist/chunk-S6ORCWM2.js.map +1 -0
  303. package/dist/chunk-SCGKQ5RE.js +55 -0
  304. package/dist/chunk-SCGKQ5RE.js.map +1 -0
  305. package/dist/chunk-SHS6EGWS.js +226 -0
  306. package/dist/chunk-SHS6EGWS.js.map +1 -0
  307. package/dist/chunk-SJSYKUCL.js +297 -0
  308. package/dist/chunk-SJSYKUCL.js.map +1 -0
  309. package/dist/chunk-SM4AZOEP.js +222 -0
  310. package/dist/chunk-SM4AZOEP.js.map +1 -0
  311. package/dist/chunk-SXJMERQL.js +40 -0
  312. package/dist/chunk-SXJMERQL.js.map +1 -0
  313. package/dist/chunk-TAZPML2P.js +198 -0
  314. package/dist/chunk-TAZPML2P.js.map +1 -0
  315. package/dist/chunk-TNROOKX3.js +352 -0
  316. package/dist/chunk-TNROOKX3.js.map +1 -0
  317. package/dist/chunk-TQBUBD3E.js +100 -0
  318. package/dist/chunk-TQBUBD3E.js.map +1 -0
  319. package/dist/chunk-U4H3XHSI.js +305 -0
  320. package/dist/chunk-U4H3XHSI.js.map +1 -0
  321. package/dist/chunk-U6EOAIPK.js +67 -0
  322. package/dist/chunk-U6EOAIPK.js.map +1 -0
  323. package/dist/chunk-U74PNG4S.js +167 -0
  324. package/dist/chunk-U74PNG4S.js.map +1 -0
  325. package/dist/chunk-U77MCUVE.js +3 -0
  326. package/dist/chunk-U77MCUVE.js.map +1 -0
  327. package/dist/chunk-UA3OQAHJ.js +140 -0
  328. package/dist/chunk-UA3OQAHJ.js.map +1 -0
  329. package/dist/chunk-UFRMZ3M6.js +284 -0
  330. package/dist/chunk-UFRMZ3M6.js.map +1 -0
  331. package/dist/chunk-UOHVT5KN.js +3 -0
  332. package/dist/chunk-UOHVT5KN.js.map +1 -0
  333. package/dist/chunk-UP2VWCW5.js +2 -7
  334. package/dist/chunk-UP2VWCW5.js.map +1 -1
  335. package/dist/chunk-V7WEN4SD.js +444 -0
  336. package/dist/chunk-V7WEN4SD.js.map +1 -0
  337. package/dist/chunk-V7XHE25E.js +354 -0
  338. package/dist/chunk-V7XHE25E.js.map +1 -0
  339. package/dist/chunk-VFALJSXB.js +373 -0
  340. package/dist/chunk-VFALJSXB.js.map +1 -0
  341. package/dist/chunk-VKDN66VL.js +129 -0
  342. package/dist/chunk-VKDN66VL.js.map +1 -0
  343. package/dist/chunk-VT4IMHGE.js +292 -0
  344. package/dist/chunk-VT4IMHGE.js.map +1 -0
  345. package/dist/chunk-VWW3DJKI.js +53 -0
  346. package/dist/chunk-VWW3DJKI.js.map +1 -0
  347. package/dist/chunk-VZZ3HP7G.js +230 -0
  348. package/dist/chunk-VZZ3HP7G.js.map +1 -0
  349. package/dist/chunk-W3QUVCRK.js +54 -0
  350. package/dist/chunk-W3QUVCRK.js.map +1 -0
  351. package/dist/chunk-W4NC5CU5.js +175 -0
  352. package/dist/chunk-W4NC5CU5.js.map +1 -0
  353. package/dist/chunk-WBE6VQOO.js +235 -0
  354. package/dist/chunk-WBE6VQOO.js.map +1 -0
  355. package/dist/chunk-WG5IYG7X.js +3 -0
  356. package/dist/chunk-WG5IYG7X.js.map +1 -0
  357. package/dist/chunk-WH7Y2MAY.js +24 -0
  358. package/dist/chunk-WH7Y2MAY.js.map +1 -0
  359. package/dist/chunk-X4YUWX7H.js +146 -0
  360. package/dist/chunk-X4YUWX7H.js.map +1 -0
  361. package/dist/chunk-XETKCF73.js +74 -0
  362. package/dist/chunk-XETKCF73.js.map +1 -0
  363. package/dist/chunk-XLTSCY22.js +93 -0
  364. package/dist/chunk-XLTSCY22.js.map +1 -0
  365. package/dist/chunk-XOGMDABS.js +152 -0
  366. package/dist/chunk-XOGMDABS.js.map +1 -0
  367. package/dist/chunk-XRMKL43Y.js +90 -0
  368. package/dist/chunk-XRMKL43Y.js.map +1 -0
  369. package/dist/chunk-XV6NXXXP.js +206 -0
  370. package/dist/chunk-XV6NXXXP.js.map +1 -0
  371. package/dist/chunk-XXFKDEFH.js +143 -0
  372. package/dist/chunk-XXFKDEFH.js.map +1 -0
  373. package/dist/chunk-Y3BOERVB.js +482 -0
  374. package/dist/chunk-Y3BOERVB.js.map +1 -0
  375. package/dist/chunk-Y555RCRZ.js +26 -0
  376. package/dist/chunk-Y555RCRZ.js.map +1 -0
  377. package/dist/chunk-Y5GO2F6P.js +188 -0
  378. package/dist/chunk-Y5GO2F6P.js.map +1 -0
  379. package/dist/chunk-Y7UFBSAD.js +515 -0
  380. package/dist/chunk-Y7UFBSAD.js.map +1 -0
  381. package/dist/chunk-YCZ6M6EF.js +912 -0
  382. package/dist/chunk-YCZ6M6EF.js.map +1 -0
  383. package/dist/chunk-YMYXWHDU.js +96 -0
  384. package/dist/chunk-YMYXWHDU.js.map +1 -0
  385. package/dist/chunk-YP2ATSXP.js +452 -0
  386. package/dist/chunk-YP2ATSXP.js.map +1 -0
  387. package/dist/chunk-YZY35OHQ.js +279 -0
  388. package/dist/chunk-YZY35OHQ.js.map +1 -0
  389. package/dist/chunk-Z3FL7LEK.js +401 -0
  390. package/dist/chunk-Z3FL7LEK.js.map +1 -0
  391. package/dist/chunk-ZARZYMBM.js +95 -0
  392. package/dist/chunk-ZARZYMBM.js.map +1 -0
  393. package/dist/chunk-ZKK7L7H7.js +78 -0
  394. package/dist/chunk-ZKK7L7H7.js.map +1 -0
  395. package/dist/chunk-ZO2EKJZM.js +4505 -0
  396. package/dist/chunk-ZO2EKJZM.js.map +1 -0
  397. package/dist/chunk-ZPCELVWJ.js +127 -0
  398. package/dist/chunk-ZPCELVWJ.js.map +1 -0
  399. package/dist/chunk-ZS2WS5NJ.js +655 -0
  400. package/dist/chunk-ZS2WS5NJ.js.map +1 -0
  401. package/dist/chunk-ZUFM33AV.js +113 -0
  402. package/dist/chunk-ZUFM33AV.js.map +1 -0
  403. package/dist/components/advanced/AssetManager/index.js +5 -0
  404. package/dist/components/advanced/AssetManager/index.js.map +1 -0
  405. package/dist/components/advanced/Calendar/index.js +10 -0
  406. package/dist/components/advanced/Calendar/index.js.map +1 -0
  407. package/dist/components/advanced/Command/index.js +6 -0
  408. package/dist/components/advanced/Command/index.js.map +1 -0
  409. package/dist/components/advanced/DragAndDrop/index.js +5 -0
  410. package/dist/components/advanced/DragAndDrop/index.js.map +1 -0
  411. package/dist/components/advanced/ErrorBoundary/index.js +5 -0
  412. package/dist/components/advanced/ErrorBoundary/index.js.map +1 -0
  413. package/dist/components/advanced/EventCalendar/index.js +10 -0
  414. package/dist/components/advanced/EventCalendar/index.js.map +1 -0
  415. package/dist/components/advanced/FileDropzone/index.js +5 -0
  416. package/dist/components/advanced/FileDropzone/index.js.map +1 -0
  417. package/dist/components/advanced/FilePreview/index.js +5 -0
  418. package/dist/components/advanced/FilePreview/index.js.map +1 -0
  419. package/dist/components/advanced/FileUpload/index.js +5 -0
  420. package/dist/components/advanced/FileUpload/index.js.map +1 -0
  421. package/dist/components/advanced/FilterBuilder/index.js +13 -0
  422. package/dist/components/advanced/FilterBuilder/index.js.map +1 -0
  423. package/dist/components/advanced/MarkdownEditor/index.js +9 -0
  424. package/dist/components/advanced/MarkdownEditor/index.js.map +1 -0
  425. package/dist/components/advanced/Portal/index.js +4 -0
  426. package/dist/components/advanced/Portal/index.js.map +1 -0
  427. package/dist/components/advanced/ReportBuilder/index.js +11 -0
  428. package/dist/components/advanced/ReportBuilder/index.js.map +1 -0
  429. package/dist/components/advanced/RichTextEditor/index.js +7 -0
  430. package/dist/components/advanced/RichTextEditor/index.js.map +1 -0
  431. package/dist/components/advanced/Search/index.js +5 -0
  432. package/dist/components/advanced/Search/index.js.map +1 -0
  433. package/dist/components/advanced/SortableList/index.js +5 -0
  434. package/dist/components/advanced/SortableList/index.js.map +1 -0
  435. package/dist/components/advanced/VersionControl/index.js +5 -0
  436. package/dist/components/advanced/VersionControl/index.js.map +1 -0
  437. package/dist/components/advanced/index.js +36 -0
  438. package/dist/components/advanced/index.js.map +1 -0
  439. package/dist/components/data-display/Accordion/index.js +5 -0
  440. package/dist/components/data-display/Accordion/index.js.map +1 -0
  441. package/dist/components/data-display/AreaChart/index.js +6 -0
  442. package/dist/components/data-display/AreaChart/index.js.map +1 -0
  443. package/dist/components/data-display/Banner/index.js +5 -0
  444. package/dist/components/data-display/Banner/index.js.map +1 -0
  445. package/dist/components/data-display/BarChart/index.js +6 -0
  446. package/dist/components/data-display/BarChart/index.js.map +1 -0
  447. package/dist/components/data-display/BarList/index.js +5 -0
  448. package/dist/components/data-display/BarList/index.js.map +1 -0
  449. package/dist/components/data-display/Callout/index.js +5 -0
  450. package/dist/components/data-display/Callout/index.js.map +1 -0
  451. package/dist/components/data-display/Carousel/index.js +10 -0
  452. package/dist/components/data-display/Carousel/index.js.map +1 -0
  453. package/dist/components/data-display/CategoryBar/index.js +6 -0
  454. package/dist/components/data-display/CategoryBar/index.js.map +1 -0
  455. package/dist/components/data-display/Chart/index.js +5 -0
  456. package/dist/components/data-display/Chart/index.js.map +1 -0
  457. package/dist/components/data-display/ChartCard/index.js +11 -0
  458. package/dist/components/data-display/ChartCard/index.js.map +1 -0
  459. package/dist/components/data-display/ChartLegend/index.js +6 -0
  460. package/dist/components/data-display/ChartLegend/index.js.map +1 -0
  461. package/dist/components/data-display/ComboChart/index.js +6 -0
  462. package/dist/components/data-display/ComboChart/index.js.map +1 -0
  463. package/dist/components/data-display/DashboardCard/index.js +6 -0
  464. package/dist/components/data-display/DashboardCard/index.js.map +1 -0
  465. package/dist/components/data-display/DashboardFilterbar/index.js +111 -0
  466. package/dist/components/data-display/DashboardFilterbar/index.js.map +1 -0
  467. package/dist/components/data-display/DataTable/FilterBuilder/index.js +13 -0
  468. package/dist/components/data-display/DataTable/FilterBuilder/index.js.map +1 -0
  469. package/dist/components/data-display/DataTable/index.js +22 -0
  470. package/dist/components/data-display/DataTable/index.js.map +1 -0
  471. package/dist/components/data-display/DeltaBar/index.js +6 -0
  472. package/dist/components/data-display/DeltaBar/index.js.map +1 -0
  473. package/dist/components/data-display/EmptyState/index.js +5 -0
  474. package/dist/components/data-display/EmptyState/index.js.map +1 -0
  475. package/dist/components/data-display/Feed/index.js +5 -0
  476. package/dist/components/data-display/Feed/index.js.map +1 -0
  477. package/dist/components/data-display/FunnelChart/index.js +6 -0
  478. package/dist/components/data-display/FunnelChart/index.js.map +1 -0
  479. package/dist/components/data-display/GaugeChart/index.js +5 -0
  480. package/dist/components/data-display/GaugeChart/index.js.map +1 -0
  481. package/dist/components/data-display/Heatmap/index.js +6 -0
  482. package/dist/components/data-display/Heatmap/index.js.map +1 -0
  483. package/dist/components/data-display/HoverCard/index.js +5 -0
  484. package/dist/components/data-display/HoverCard/index.js.map +1 -0
  485. package/dist/components/data-display/ImageGallery/index.js +6 -0
  486. package/dist/components/data-display/ImageGallery/index.js.map +1 -0
  487. package/dist/components/data-display/Item/index.js +6 -0
  488. package/dist/components/data-display/Item/index.js.map +1 -0
  489. package/dist/components/data-display/KPICard/index.js +12 -0
  490. package/dist/components/data-display/KPICard/index.js.map +1 -0
  491. package/dist/components/data-display/Lightbox/index.js +5 -0
  492. package/dist/components/data-display/Lightbox/index.js.map +1 -0
  493. package/dist/components/data-display/LineChart/index.js +6 -0
  494. package/dist/components/data-display/LineChart/index.js.map +1 -0
  495. package/dist/components/data-display/List/index.js +10 -0
  496. package/dist/components/data-display/List/index.js.map +1 -0
  497. package/dist/components/data-display/MarkerBar/index.js +6 -0
  498. package/dist/components/data-display/MarkerBar/index.js.map +1 -0
  499. package/dist/components/data-display/PieChart/index.js +6 -0
  500. package/dist/components/data-display/PieChart/index.js.map +1 -0
  501. package/dist/components/data-display/RadarChart/index.js +6 -0
  502. package/dist/components/data-display/RadarChart/index.js.map +1 -0
  503. package/dist/components/data-display/RadialChart/index.js +6 -0
  504. package/dist/components/data-display/RadialChart/index.js.map +1 -0
  505. package/dist/components/data-display/ScatterChart/index.js +6 -0
  506. package/dist/components/data-display/ScatterChart/index.js.map +1 -0
  507. package/dist/components/data-display/SingleStat/index.js +6 -0
  508. package/dist/components/data-display/SingleStat/index.js.map +1 -0
  509. package/dist/components/data-display/Sparkline/index.js +5 -0
  510. package/dist/components/data-display/Sparkline/index.js.map +1 -0
  511. package/dist/components/data-display/Table/index.js +5 -0
  512. package/dist/components/data-display/Table/index.js.map +1 -0
  513. package/dist/components/data-display/Timeline/index.js +5 -0
  514. package/dist/components/data-display/Timeline/index.js.map +1 -0
  515. package/dist/components/data-display/Tracker/index.js +6 -0
  516. package/dist/components/data-display/Tracker/index.js.map +1 -0
  517. package/dist/components/data-display/VirtualTable/index.js +8 -0
  518. package/dist/components/data-display/VirtualTable/index.js.map +1 -0
  519. package/dist/components/data-display/index.js +63 -0
  520. package/dist/components/data-display/index.js.map +1 -0
  521. package/dist/components/feedback/Alert/index.js +5 -0
  522. package/dist/components/feedback/Alert/index.js.map +1 -0
  523. package/dist/components/feedback/AlertDialog/index.js +10 -0
  524. package/dist/components/feedback/AlertDialog/index.js.map +1 -0
  525. package/dist/components/feedback/ConfirmModal/index.js +11 -0
  526. package/dist/components/feedback/ConfirmModal/index.js.map +1 -0
  527. package/dist/components/feedback/Dialog/index.js +5 -0
  528. package/dist/components/feedback/Dialog/index.js.map +1 -0
  529. package/dist/components/feedback/ErrorPage/index.js +5 -0
  530. package/dist/components/feedback/ErrorPage/index.js.map +1 -0
  531. package/dist/components/feedback/FocusTrap/index.js +5 -0
  532. package/dist/components/feedback/FocusTrap/index.js.map +1 -0
  533. package/dist/components/feedback/Message/index.js +5 -0
  534. package/dist/components/feedback/Message/index.js.map +1 -0
  535. package/dist/components/feedback/Modal/index.js +5 -0
  536. package/dist/components/feedback/Modal/index.js.map +1 -0
  537. package/dist/components/feedback/Notification/index.js +7 -0
  538. package/dist/components/feedback/Notification/index.js.map +1 -0
  539. package/dist/components/feedback/Popover/index.js +5 -0
  540. package/dist/components/feedback/Popover/index.js.map +1 -0
  541. package/dist/components/feedback/Toast/index.js +4 -0
  542. package/dist/components/feedback/Toast/index.js.map +1 -0
  543. package/dist/components/feedback/Tooltip/index.js +5 -0
  544. package/dist/components/feedback/Tooltip/index.js.map +1 -0
  545. package/dist/components/feedback/UpdatesWidget/index.js +5 -0
  546. package/dist/components/feedback/UpdatesWidget/index.js.map +1 -0
  547. package/dist/components/feedback/index.js +23 -0
  548. package/dist/components/feedback/index.js.map +1 -0
  549. package/dist/components/forms/Autocomplete/index.js +5 -0
  550. package/dist/components/forms/Autocomplete/index.js.map +1 -0
  551. package/dist/components/forms/Checkbox/index.js +5 -0
  552. package/dist/components/forms/Checkbox/index.js.map +1 -0
  553. package/dist/components/forms/CheckboxGroup/index.js +6 -0
  554. package/dist/components/forms/CheckboxGroup/index.js.map +1 -0
  555. package/dist/components/forms/ColorPicker/index.js +6 -0
  556. package/dist/components/forms/ColorPicker/index.js.map +1 -0
  557. package/dist/components/forms/Combobox/index.js +5 -0
  558. package/dist/components/forms/Combobox/index.js.map +1 -0
  559. package/dist/components/forms/DatePicker/index.js +13 -0
  560. package/dist/components/forms/DatePicker/index.js.map +1 -0
  561. package/dist/components/forms/DateRangePicker/index.js +13 -0
  562. package/dist/components/forms/DateRangePicker/index.js.map +1 -0
  563. package/dist/components/forms/EmailInput/index.js +7 -0
  564. package/dist/components/forms/EmailInput/index.js.map +1 -0
  565. package/dist/components/forms/ErrorMessage/index.js +5 -0
  566. package/dist/components/forms/ErrorMessage/index.js.map +1 -0
  567. package/dist/components/forms/Field/index.js +7 -0
  568. package/dist/components/forms/Field/index.js.map +1 -0
  569. package/dist/components/forms/FloatLabel/index.js +5 -0
  570. package/dist/components/forms/FloatLabel/index.js.map +1 -0
  571. package/dist/components/forms/Form/index.js +6 -0
  572. package/dist/components/forms/Form/index.js.map +1 -0
  573. package/dist/components/forms/FormValidation/index.js +5 -0
  574. package/dist/components/forms/FormValidation/index.js.map +1 -0
  575. package/dist/components/forms/HelpText/index.js +5 -0
  576. package/dist/components/forms/HelpText/index.js.map +1 -0
  577. package/dist/components/forms/IftaLabel/index.js +5 -0
  578. package/dist/components/forms/IftaLabel/index.js.map +1 -0
  579. package/dist/components/forms/InputGroup/index.js +13 -0
  580. package/dist/components/forms/InputGroup/index.js.map +1 -0
  581. package/dist/components/forms/InputOTP/index.js +5 -0
  582. package/dist/components/forms/InputOTP/index.js.map +1 -0
  583. package/dist/components/forms/InputOTPField/index.js +9 -0
  584. package/dist/components/forms/InputOTPField/index.js.map +1 -0
  585. package/dist/components/forms/MultiSelect/index.js +5 -0
  586. package/dist/components/forms/MultiSelect/index.js.map +1 -0
  587. package/dist/components/forms/NativeSelect/index.js +5 -0
  588. package/dist/components/forms/NativeSelect/index.js.map +1 -0
  589. package/dist/components/forms/NumberInput/index.js +6 -0
  590. package/dist/components/forms/NumberInput/index.js.map +1 -0
  591. package/dist/components/forms/PasswordInput/index.js +7 -0
  592. package/dist/components/forms/PasswordInput/index.js.map +1 -0
  593. package/dist/components/forms/PaymentInput/index.js +5 -0
  594. package/dist/components/forms/PaymentInput/index.js.map +1 -0
  595. package/dist/components/forms/PhoneInput/index.js +5 -0
  596. package/dist/components/forms/PhoneInput/index.js.map +1 -0
  597. package/dist/components/forms/RadioButton/index.js +6 -0
  598. package/dist/components/forms/RadioButton/index.js.map +1 -0
  599. package/dist/components/forms/RadioCardGroup/index.js +5 -0
  600. package/dist/components/forms/RadioCardGroup/index.js.map +1 -0
  601. package/dist/components/forms/RadioGroup/index.js +6 -0
  602. package/dist/components/forms/RadioGroup/index.js.map +1 -0
  603. package/dist/components/forms/Rating/index.js +5 -0
  604. package/dist/components/forms/Rating/index.js.map +1 -0
  605. package/dist/components/forms/SearchInput/index.js +7 -0
  606. package/dist/components/forms/SearchInput/index.js.map +1 -0
  607. package/dist/components/forms/Select/index.js +5 -0
  608. package/dist/components/forms/Select/index.js.map +1 -0
  609. package/dist/components/forms/Slider/index.js +5 -0
  610. package/dist/components/forms/Slider/index.js.map +1 -0
  611. package/dist/components/forms/SuccessMessage/index.js +5 -0
  612. package/dist/components/forms/SuccessMessage/index.js.map +1 -0
  613. package/dist/components/forms/Switch/index.js +5 -0
  614. package/dist/components/forms/Switch/index.js.map +1 -0
  615. package/dist/components/forms/TagsInput/index.js +8 -0
  616. package/dist/components/forms/TagsInput/index.js.map +1 -0
  617. package/dist/components/forms/TextInput/index.js +6 -0
  618. package/dist/components/forms/TextInput/index.js.map +1 -0
  619. package/dist/components/forms/Textarea/index.js +5 -0
  620. package/dist/components/forms/Textarea/index.js.map +1 -0
  621. package/dist/components/forms/TextareaField/index.js +9 -0
  622. package/dist/components/forms/TextareaField/index.js.map +1 -0
  623. package/dist/components/forms/TimePicker/index.js +7 -0
  624. package/dist/components/forms/TimePicker/index.js.map +1 -0
  625. package/dist/components/forms/ToggleGroup/index.js +6 -0
  626. package/dist/components/forms/ToggleGroup/index.js.map +1 -0
  627. package/dist/components/forms/URLInput/index.js +7 -0
  628. package/dist/components/forms/URLInput/index.js.map +1 -0
  629. package/dist/components/forms/index.js +58 -0
  630. package/dist/components/forms/index.js.map +1 -0
  631. package/dist/components/index.js +201 -0
  632. package/dist/components/index.js.map +1 -0
  633. package/dist/components/layout/Card/index.js +5 -0
  634. package/dist/components/layout/Card/index.js.map +1 -0
  635. package/dist/components/layout/Collapsible/index.js +5 -0
  636. package/dist/components/layout/Collapsible/index.js.map +1 -0
  637. package/dist/components/layout/Container/index.js +5 -0
  638. package/dist/components/layout/Container/index.js.map +1 -0
  639. package/dist/components/layout/Flex/index.js +5 -0
  640. package/dist/components/layout/Flex/index.js.map +1 -0
  641. package/dist/components/layout/Grid/index.js +5 -0
  642. package/dist/components/layout/Grid/index.js.map +1 -0
  643. package/dist/components/layout/Panel/index.js +5 -0
  644. package/dist/components/layout/Panel/index.js.map +1 -0
  645. package/dist/components/layout/ResizablePanels/index.js +5 -0
  646. package/dist/components/layout/ResizablePanels/index.js.map +1 -0
  647. package/dist/components/layout/ResponsiveContainer/index.js +5 -0
  648. package/dist/components/layout/ResponsiveContainer/index.js.map +1 -0
  649. package/dist/components/layout/ScrollArea/index.js +5 -0
  650. package/dist/components/layout/ScrollArea/index.js.map +1 -0
  651. package/dist/components/layout/Section/index.js +5 -0
  652. package/dist/components/layout/Section/index.js.map +1 -0
  653. package/dist/components/layout/Sheet/index.js +5 -0
  654. package/dist/components/layout/Sheet/index.js.map +1 -0
  655. package/dist/components/layout/Stack/index.js +5 -0
  656. package/dist/components/layout/Stack/index.js.map +1 -0
  657. package/dist/components/layout/index.js +17 -0
  658. package/dist/components/layout/index.js.map +1 -0
  659. package/dist/components/navigation/AccountSwitch/index.js +10 -0
  660. package/dist/components/navigation/AccountSwitch/index.js.map +1 -0
  661. package/dist/components/navigation/Breadcrumb/index.js +5 -0
  662. package/dist/components/navigation/Breadcrumb/index.js.map +1 -0
  663. package/dist/components/navigation/ContextMenu/index.js +5 -0
  664. package/dist/components/navigation/ContextMenu/index.js.map +1 -0
  665. package/dist/components/navigation/Drawer/index.js +5 -0
  666. package/dist/components/navigation/Drawer/index.js.map +1 -0
  667. package/dist/components/navigation/DropdownMenu/index.js +5 -0
  668. package/dist/components/navigation/DropdownMenu/index.js.map +1 -0
  669. package/dist/components/navigation/FileTree/index.js +5 -0
  670. package/dist/components/navigation/FileTree/index.js.map +1 -0
  671. package/dist/components/navigation/Header/index.js +5 -0
  672. package/dist/components/navigation/Header/index.js.map +1 -0
  673. package/dist/components/navigation/Menu/index.js +5 -0
  674. package/dist/components/navigation/Menu/index.js.map +1 -0
  675. package/dist/components/navigation/Menubar/index.js +5 -0
  676. package/dist/components/navigation/Menubar/index.js.map +1 -0
  677. package/dist/components/navigation/MobileSidebar/index.js +190 -0
  678. package/dist/components/navigation/MobileSidebar/index.js.map +1 -0
  679. package/dist/components/navigation/Navbar/index.js +5 -0
  680. package/dist/components/navigation/Navbar/index.js.map +1 -0
  681. package/dist/components/navigation/NavigationMenu/index.js +5 -0
  682. package/dist/components/navigation/NavigationMenu/index.js.map +1 -0
  683. package/dist/components/navigation/Pagination/index.js +10 -0
  684. package/dist/components/navigation/Pagination/index.js.map +1 -0
  685. package/dist/components/navigation/Sidebar/index.js +16 -0
  686. package/dist/components/navigation/Sidebar/index.js.map +1 -0
  687. package/dist/components/navigation/SkipLinks/index.js +5 -0
  688. package/dist/components/navigation/SkipLinks/index.js.map +1 -0
  689. package/dist/components/navigation/SpeedDial/index.js +6 -0
  690. package/dist/components/navigation/SpeedDial/index.js.map +1 -0
  691. package/dist/components/navigation/TabNavigation/index.js +5 -0
  692. package/dist/components/navigation/TabNavigation/index.js.map +1 -0
  693. package/dist/components/navigation/TabPanel/index.js +5 -0
  694. package/dist/components/navigation/TabPanel/index.js.map +1 -0
  695. package/dist/components/navigation/Tabs/index.js +5 -0
  696. package/dist/components/navigation/Tabs/index.js.map +1 -0
  697. package/dist/components/navigation/Toolbar/index.js +5 -0
  698. package/dist/components/navigation/Toolbar/index.js.map +1 -0
  699. package/dist/components/navigation/Topbar/index.js +5 -0
  700. package/dist/components/navigation/Topbar/index.js.map +1 -0
  701. package/dist/components/navigation/UserProfileDropdown/index.js +224 -0
  702. package/dist/components/navigation/UserProfileDropdown/index.js.map +1 -0
  703. package/dist/components/navigation/WorkspaceDropdown/index.js +192 -0
  704. package/dist/components/navigation/WorkspaceDropdown/index.js.map +1 -0
  705. package/dist/components/navigation/index.js +37 -0
  706. package/dist/components/navigation/index.js.map +1 -0
  707. package/dist/components/primitives/ArrowAnimated/index.js +92 -0
  708. package/dist/components/primitives/ArrowAnimated/index.js.map +1 -0
  709. package/dist/components/primitives/AspectRatio/index.js +4 -0
  710. package/dist/components/primitives/AspectRatio/index.js.map +1 -0
  711. package/dist/components/primitives/Avatar/index.js +6 -0
  712. package/dist/components/primitives/Avatar/index.js.map +1 -0
  713. package/dist/components/primitives/Badge/index.js +7 -0
  714. package/dist/components/primitives/Badge/index.js.map +1 -0
  715. package/dist/components/primitives/Button/index.js +9 -0
  716. package/dist/components/primitives/Button/index.js.map +1 -0
  717. package/dist/components/primitives/ButtonGroup/index.js +7 -0
  718. package/dist/components/primitives/ButtonGroup/index.js.map +1 -0
  719. package/dist/components/primitives/ConfirmButton/index.js +11 -0
  720. package/dist/components/primitives/ConfirmButton/index.js.map +1 -0
  721. package/dist/components/primitives/Divider/index.js +5 -0
  722. package/dist/components/primitives/Divider/index.js.map +1 -0
  723. package/dist/components/primitives/FeatureItem/index.js +5 -0
  724. package/dist/components/primitives/FeatureItem/index.js.map +1 -0
  725. package/dist/components/primitives/FeaturedIcon/index.js +5 -0
  726. package/dist/components/primitives/FeaturedIcon/index.js.map +1 -0
  727. package/dist/components/primitives/FolderStack/index.js +5 -0
  728. package/dist/components/primitives/FolderStack/index.js.map +1 -0
  729. package/dist/components/primitives/Heading/index.js +5 -0
  730. package/dist/components/primitives/Heading/index.js.map +1 -0
  731. package/dist/components/primitives/Icon/index.js +5 -0
  732. package/dist/components/primitives/Icon/index.js.map +1 -0
  733. package/dist/components/primitives/Image/index.js +5 -0
  734. package/dist/components/primitives/Image/index.js.map +1 -0
  735. package/dist/components/primitives/Kbd/index.js +5 -0
  736. package/dist/components/primitives/Kbd/index.js.map +1 -0
  737. package/dist/components/primitives/Label/index.js +5 -0
  738. package/dist/components/primitives/Label/index.js.map +1 -0
  739. package/dist/components/primitives/Link/index.js +5 -0
  740. package/dist/components/primitives/Link/index.js.map +1 -0
  741. package/dist/components/primitives/Paragraph/index.js +5 -0
  742. package/dist/components/primitives/Paragraph/index.js.map +1 -0
  743. package/dist/components/primitives/ProgressBar/index.js +6 -0
  744. package/dist/components/primitives/ProgressBar/index.js.map +1 -0
  745. package/dist/components/primitives/ProgressCircle/index.js +6 -0
  746. package/dist/components/primitives/ProgressCircle/index.js.map +1 -0
  747. package/dist/components/primitives/SkeletonLoader/index.js +5 -0
  748. package/dist/components/primitives/SkeletonLoader/index.js.map +1 -0
  749. package/dist/components/primitives/Spacer/index.js +5 -0
  750. package/dist/components/primitives/Spacer/index.js.map +1 -0
  751. package/dist/components/primitives/Spinner/index.js +5 -0
  752. package/dist/components/primitives/Spinner/index.js.map +1 -0
  753. package/dist/components/primitives/SplitButton/index.js +6 -0
  754. package/dist/components/primitives/SplitButton/index.js.map +1 -0
  755. package/dist/components/primitives/StatusIndicator/index.js +5 -0
  756. package/dist/components/primitives/StatusIndicator/index.js.map +1 -0
  757. package/dist/components/primitives/Tag/index.js +5 -0
  758. package/dist/components/primitives/Tag/index.js.map +1 -0
  759. package/dist/components/primitives/Text/index.js +5 -0
  760. package/dist/components/primitives/Text/index.js.map +1 -0
  761. package/dist/components/primitives/Thumbnail/index.js +6 -0
  762. package/dist/components/primitives/Thumbnail/index.js.map +1 -0
  763. package/dist/components/primitives/Toggle/index.js +5 -0
  764. package/dist/components/primitives/Toggle/index.js.map +1 -0
  765. package/dist/components/primitives/index.js +38 -0
  766. package/dist/components/primitives/index.js.map +1 -0
  767. package/dist/components/workflow/ApprovalFlow/index.js +11 -0
  768. package/dist/components/workflow/ApprovalFlow/index.js.map +1 -0
  769. package/dist/components/workflow/ApprovalStatus/index.js +5 -0
  770. package/dist/components/workflow/ApprovalStatus/index.js.map +1 -0
  771. package/dist/components/workflow/CommentSystem/index.js +12 -0
  772. package/dist/components/workflow/CommentSystem/index.js.map +1 -0
  773. package/dist/components/workflow/Dashboard/index.js +10 -0
  774. package/dist/components/workflow/Dashboard/index.js.map +1 -0
  775. package/dist/components/workflow/DashboardBuilder/index.js +13 -0
  776. package/dist/components/workflow/DashboardBuilder/index.js.map +1 -0
  777. package/dist/components/workflow/KanbanBoard/index.js +13 -0
  778. package/dist/components/workflow/KanbanBoard/index.js.map +1 -0
  779. package/dist/components/workflow/ProgressSteps/index.js +5 -0
  780. package/dist/components/workflow/ProgressSteps/index.js.map +1 -0
  781. package/dist/components/workflow/ReportGenerator/index.js +12 -0
  782. package/dist/components/workflow/ReportGenerator/index.js.map +1 -0
  783. package/dist/components/workflow/Stepper/index.js +5 -0
  784. package/dist/components/workflow/Stepper/index.js.map +1 -0
  785. package/dist/components/workflow/TaskCard/index.js +5 -0
  786. package/dist/components/workflow/TaskCard/index.js.map +1 -0
  787. package/dist/components/workflow/TaskList/index.js +5 -0
  788. package/dist/components/workflow/TaskList/index.js.map +1 -0
  789. package/dist/components/workflow/TaskStatus/index.js +6 -0
  790. package/dist/components/workflow/TaskStatus/index.js.map +1 -0
  791. package/dist/components/workflow/Wizard/index.js +11 -0
  792. package/dist/components/workflow/Wizard/index.js.map +1 -0
  793. package/dist/components/workflow/index.js +32 -0
  794. package/dist/components/workflow/index.js.map +1 -0
  795. package/dist/fonts/inter-OFL.txt +92 -0
  796. package/dist/fonts/inter-latin-400-normal.woff2 +0 -0
  797. package/dist/fonts/inter-latin-500-normal.woff2 +0 -0
  798. package/dist/fonts/inter-latin-600-normal.woff2 +0 -0
  799. package/dist/fonts/inter-latin-700-normal.woff2 +0 -0
  800. package/dist/fonts/jetbrains-mono-OFL.txt +93 -0
  801. package/dist/fonts/jetbrains-mono-latin-400-normal.woff2 +0 -0
  802. package/dist/fonts/jetbrains-mono-latin-500-normal.woff2 +0 -0
  803. package/dist/fonts/jetbrains-mono-latin-700-normal.woff2 +0 -0
  804. package/dist/hooks/index.js +6 -0
  805. package/dist/hooks/index.js.map +1 -0
  806. package/dist/index.d.ts +114 -27
  807. package/dist/index.js +202 -52453
  808. package/dist/index.js.map +1 -1
  809. package/dist/jspdf.node.min-CTWP225M.js +372 -656
  810. package/dist/jspdf.node.min-CTWP225M.js.map +1 -1
  811. package/dist/jspdf.plugin.autotable-AAE7PZKA.js +4 -14
  812. package/dist/jspdf.plugin.autotable-AAE7PZKA.js.map +1 -1
  813. package/dist/lib/chart-colors.js +4 -0
  814. package/dist/lib/chart-colors.js.map +1 -0
  815. package/dist/lib/utils.js +3 -7
  816. package/dist/lib/utils.js.map +1 -1
  817. package/dist/styles.css +5542 -0
  818. package/dist/xlsx-PWHBQ6NK.js +206 -366
  819. package/dist/xlsx-PWHBQ6NK.js.map +1 -1
  820. package/package.json +9 -6
  821. package/styles.css +0 -62
@@ -0,0 +1,204 @@
1
+ import { SkeletonLoader } from './chunk-QHKOBGLW.js';
2
+ import { cn } from './chunk-HRNDJU7D.js';
3
+ import { useState, useRef, useEffect } from 'react';
4
+ import { jsx, jsxs } from 'react/jsx-runtime';
5
+
6
+ var sizeClasses = {
7
+ lg: "text-[length:var(--single-stat-value-size-lg)]",
8
+ md: "text-[length:var(--single-stat-value-size-md)]",
9
+ sm: "text-[length:var(--single-stat-value-size-sm)]",
10
+ xl: "text-[length:var(--single-stat-value-size-xl)]",
11
+ xs: "text-[length:var(--single-stat-value-size-xs)]"
12
+ };
13
+ var skeletonSizes = {
14
+ lg: "h-10",
15
+ md: "h-8",
16
+ sm: "h-7",
17
+ xl: "h-14",
18
+ xs: "h-6"
19
+ };
20
+ function useAnimatedCounter(targetValue, duration, enabled) {
21
+ const [count, setCount] = useState(0);
22
+ const animationFrameRef = useRef(0);
23
+ const startTimeRef = useRef(null);
24
+ useEffect(() => {
25
+ if (!enabled) {
26
+ return;
27
+ }
28
+ startTimeRef.current = null;
29
+ const animate = (timestamp) => {
30
+ startTimeRef.current ??= timestamp;
31
+ const progress = Math.min((timestamp - startTimeRef.current) / duration, 1);
32
+ const eased = 1 - (1 - progress) * (1 - progress);
33
+ setCount(Math.floor(eased * targetValue));
34
+ if (progress < 1) {
35
+ animationFrameRef.current = requestAnimationFrame(animate);
36
+ }
37
+ };
38
+ animationFrameRef.current = requestAnimationFrame(animate);
39
+ return () => {
40
+ if (animationFrameRef.current) {
41
+ cancelAnimationFrame(animationFrameRef.current);
42
+ }
43
+ };
44
+ }, [targetValue, duration, enabled]);
45
+ return enabled ? count : targetValue;
46
+ }
47
+ function SingleStat({
48
+ value,
49
+ label,
50
+ variant = "default",
51
+ size = "md",
52
+ prefix,
53
+ suffix,
54
+ animated = false,
55
+ animationDuration = 1e3,
56
+ loading = false,
57
+ className,
58
+ ...props
59
+ }) {
60
+ const numericValue = typeof value === "number" ? value : Number.NaN;
61
+ const isNumeric = !Number.isNaN(numericValue);
62
+ const animatedValue = useAnimatedCounter(
63
+ isNumeric ? numericValue : 0,
64
+ animationDuration,
65
+ animated && isNumeric
66
+ );
67
+ const displayValue = animated && isNumeric ? animatedValue.toLocaleString() : typeof value === "number" ? value.toLocaleString() : value;
68
+ if (loading) {
69
+ if (variant === "compact") {
70
+ return /* @__PURE__ */ jsx(
71
+ SkeletonLoader,
72
+ {
73
+ className: cn(skeletonSizes[size], "w-24", className),
74
+ "data-slot": "single-stat",
75
+ ...props
76
+ }
77
+ );
78
+ }
79
+ if (variant === "inline") {
80
+ return /* @__PURE__ */ jsxs(
81
+ "div",
82
+ {
83
+ className: cn("flex items-baseline gap-2", className),
84
+ "data-slot": "single-stat",
85
+ ...props,
86
+ children: [
87
+ /* @__PURE__ */ jsx(SkeletonLoader, { className: cn(skeletonSizes[size], "w-20") }),
88
+ label && /* @__PURE__ */ jsx(SkeletonLoader, { className: "h-4 w-16" })
89
+ ]
90
+ }
91
+ );
92
+ }
93
+ return /* @__PURE__ */ jsxs(
94
+ "div",
95
+ {
96
+ className: cn("space-y-1", className),
97
+ "data-slot": "single-stat",
98
+ ...props,
99
+ children: [
100
+ label && /* @__PURE__ */ jsx(SkeletonLoader, { className: "h-4 w-20" }),
101
+ /* @__PURE__ */ jsx(SkeletonLoader, { className: cn(skeletonSizes[size], "w-24") })
102
+ ]
103
+ }
104
+ );
105
+ }
106
+ if (variant === "compact") {
107
+ const ariaValue = typeof displayValue === "string" ? displayValue : String(displayValue);
108
+ return /* @__PURE__ */ jsxs(
109
+ "span",
110
+ {
111
+ className: cn(
112
+ "font-[number:var(--single-stat-value-weight)] tabular-nums text-[color:var(--single-stat-value-color)]",
113
+ sizeClasses[size],
114
+ className
115
+ ),
116
+ "aria-label": label ? `${label}: ${prefix ?? ""}${ariaValue}${suffix ?? ""}` : void 0,
117
+ "data-slot": "single-stat",
118
+ role: "text",
119
+ ...props,
120
+ children: [
121
+ prefix && /* @__PURE__ */ jsx("span", { "aria-hidden": "true", children: prefix }),
122
+ displayValue,
123
+ suffix && /* @__PURE__ */ jsx("span", { "aria-hidden": "true", children: suffix })
124
+ ]
125
+ }
126
+ );
127
+ }
128
+ if (variant === "inline") {
129
+ return /* @__PURE__ */ jsxs(
130
+ "div",
131
+ {
132
+ "aria-label": label,
133
+ className: cn("flex items-baseline gap-2", className),
134
+ "data-slot": "single-stat",
135
+ role: "group",
136
+ ...props,
137
+ children: [
138
+ /* @__PURE__ */ jsxs(
139
+ "span",
140
+ {
141
+ className: cn(
142
+ "font-[number:var(--single-stat-value-weight)] tabular-nums text-[color:var(--single-stat-value-color)]",
143
+ sizeClasses[size]
144
+ ),
145
+ "data-slot": "single-stat-value",
146
+ children: [
147
+ prefix && /* @__PURE__ */ jsx("span", { "aria-hidden": "true", children: prefix }),
148
+ displayValue,
149
+ suffix && /* @__PURE__ */ jsx("span", { "aria-hidden": "true", children: suffix })
150
+ ]
151
+ }
152
+ ),
153
+ label && /* @__PURE__ */ jsx(
154
+ "span",
155
+ {
156
+ className: "text-sm font-[number:var(--single-stat-label-weight)] text-[color:var(--single-stat-label-color)]",
157
+ "data-slot": "single-stat-label",
158
+ children: label
159
+ }
160
+ )
161
+ ]
162
+ }
163
+ );
164
+ }
165
+ return /* @__PURE__ */ jsxs(
166
+ "div",
167
+ {
168
+ "aria-label": label,
169
+ className: cn("space-y-1", className),
170
+ "data-slot": "single-stat",
171
+ role: "group",
172
+ ...props,
173
+ children: [
174
+ label && /* @__PURE__ */ jsx(
175
+ "p",
176
+ {
177
+ className: "text-sm font-[number:var(--single-stat-label-weight)] text-[color:var(--single-stat-label-color)]",
178
+ "data-slot": "single-stat-label",
179
+ children: label
180
+ }
181
+ ),
182
+ /* @__PURE__ */ jsxs(
183
+ "p",
184
+ {
185
+ className: cn(
186
+ "font-[number:var(--single-stat-value-weight)] tabular-nums text-[color:var(--single-stat-value-color)]",
187
+ sizeClasses[size]
188
+ ),
189
+ "data-slot": "single-stat-value",
190
+ children: [
191
+ prefix && /* @__PURE__ */ jsx("span", { "aria-hidden": "true", children: prefix }),
192
+ displayValue,
193
+ suffix && /* @__PURE__ */ jsx("span", { "aria-hidden": "true", children: suffix })
194
+ ]
195
+ }
196
+ )
197
+ ]
198
+ }
199
+ );
200
+ }
201
+
202
+ export { SingleStat };
203
+ //# sourceMappingURL=chunk-D6TH3EGA.js.map
204
+ //# sourceMappingURL=chunk-D6TH3EGA.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/data-display/SingleStat/SingleStat.tsx"],"names":[],"mappings":"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","file":"chunk-D6TH3EGA.js","sourcesContent":["import type { SingleStatProps, SingleStatSize } from \"./SingleStat.types\"\n\nimport { useEffect, useRef, useState } from \"react\"\n\nimport { cn } from \"../../../lib/utils\"\nimport { SkeletonLoader } from \"../../primitives/SkeletonLoader\"\n\n/**\n * Size configuration for value typography\n */\nconst sizeClasses: Record<SingleStatSize, string> = {\n lg: \"text-[length:var(--single-stat-value-size-lg)]\",\n md: \"text-[length:var(--single-stat-value-size-md)]\",\n sm: \"text-[length:var(--single-stat-value-size-sm)]\",\n xl: \"text-[length:var(--single-stat-value-size-xl)]\",\n xs: \"text-[length:var(--single-stat-value-size-xs)]\",\n}\n\n/**\n * Skeleton height configuration by size\n */\nconst skeletonSizes: Record<SingleStatSize, string> = {\n lg: \"h-10\",\n md: \"h-8\",\n sm: \"h-7\",\n xl: \"h-14\",\n xs: \"h-6\",\n}\n\n/**\n * Hook for animated count-up effect\n */\nfunction useAnimatedCounter(\n targetValue: number,\n duration: number,\n enabled: boolean\n): number {\n // When not enabled, just return the target value directly\n const [count, setCount] = useState(0)\n const animationFrameRef = useRef<number>(0)\n const startTimeRef = useRef<null | number>(null)\n\n useEffect(() => {\n if (!enabled) {\n return\n }\n\n startTimeRef.current = null\n\n const animate = (timestamp: number) => {\n startTimeRef.current ??= timestamp\n const progress = Math.min((timestamp - startTimeRef.current) / duration, 1)\n\n // Use easeOutQuad for smoother animation\n const eased = 1 - (1 - progress) * (1 - progress)\n setCount(Math.floor(eased * targetValue))\n\n if (progress < 1) {\n animationFrameRef.current = requestAnimationFrame(animate)\n }\n }\n\n animationFrameRef.current = requestAnimationFrame(animate)\n\n return () => {\n if (animationFrameRef.current) {\n cancelAnimationFrame(animationFrameRef.current)\n }\n }\n }, [targetValue, duration, enabled])\n\n // Return target value when not animating, otherwise return animated count\n return enabled ? count : targetValue\n}\n\n/**\n * SingleStat - Minimalist single metric display\n *\n * A compact component for displaying a single highlighted metric.\n * Simpler than KPICard, focused only on value and label.\n * Ideal for inline indicators or space-constrained layouts.\n *\n * @example\n * ```tsx\n * <SingleStat value={1234} label=\"Total Users\" />\n * ```\n *\n * @example\n * ```tsx\n * <SingleStat\n * value={45231}\n * prefix=\"$\"\n * label=\"Revenue\"\n * size=\"lg\"\n * />\n * ```\n */\nfunction SingleStat({\n value,\n label,\n variant = \"default\",\n size = \"md\",\n prefix,\n suffix,\n animated = false,\n animationDuration = 1000,\n loading = false,\n className,\n ...props\n}: SingleStatProps) {\n // Use animated counter for numeric values\n const numericValue = typeof value === \"number\" ? value : Number.NaN\n const isNumeric = !Number.isNaN(numericValue)\n const animatedValue = useAnimatedCounter(\n isNumeric ? numericValue : 0,\n animationDuration,\n animated && isNumeric\n )\n\n // Format the display value\n const displayValue = animated && isNumeric\n ? animatedValue.toLocaleString()\n : typeof value === \"number\"\n ? value.toLocaleString()\n : value\n\n // Loading state\n if (loading) {\n if (variant === \"compact\") {\n return (\n <SkeletonLoader\n className={cn(skeletonSizes[size], \"w-24\", className)}\n data-slot=\"single-stat\"\n {...props}\n />\n )\n }\n\n if (variant === \"inline\") {\n return (\n <div\n className={cn(\"flex items-baseline gap-2\", className)}\n data-slot=\"single-stat\"\n {...props}\n >\n <SkeletonLoader className={cn(skeletonSizes[size], \"w-20\")} />\n {label && <SkeletonLoader className=\"h-4 w-16\" />}\n </div>\n )\n }\n\n return (\n <div\n className={cn(\"space-y-1\", className)}\n data-slot=\"single-stat\"\n {...props}\n >\n {label && <SkeletonLoader className=\"h-4 w-20\" />}\n <SkeletonLoader className={cn(skeletonSizes[size], \"w-24\")} />\n </div>\n )\n }\n\n // Compact variant: value only\n if (variant === \"compact\") {\n const ariaValue = typeof displayValue === \"string\" ? displayValue : String(displayValue)\n return (\n <span\n className={cn(\n \"font-[number:var(--single-stat-value-weight)] tabular-nums text-[color:var(--single-stat-value-color)]\",\n sizeClasses[size],\n className\n )}\n aria-label={label ? `${label}: ${prefix ?? \"\"}${ariaValue}${suffix ?? \"\"}` : undefined}\n data-slot=\"single-stat\"\n role=\"text\"\n {...props}\n >\n {prefix && <span aria-hidden=\"true\">{prefix}</span>}\n {displayValue}\n {suffix && <span aria-hidden=\"true\">{suffix}</span>}\n </span>\n )\n }\n\n // Inline variant: label and value side by side\n if (variant === \"inline\") {\n return (\n <div\n aria-label={label}\n className={cn(\"flex items-baseline gap-2\", className)}\n data-slot=\"single-stat\"\n role=\"group\"\n {...props}\n >\n <span\n className={cn(\n \"font-[number:var(--single-stat-value-weight)] tabular-nums text-[color:var(--single-stat-value-color)]\",\n sizeClasses[size]\n )}\n data-slot=\"single-stat-value\"\n >\n {prefix && <span aria-hidden=\"true\">{prefix}</span>}\n {displayValue}\n {suffix && <span aria-hidden=\"true\">{suffix}</span>}\n </span>\n {label && (\n <span\n className=\"text-sm font-[number:var(--single-stat-label-weight)] text-[color:var(--single-stat-label-color)]\"\n data-slot=\"single-stat-label\"\n >\n {label}\n </span>\n )}\n </div>\n )\n }\n\n // Default variant: label above, value below\n return (\n <div\n aria-label={label}\n className={cn(\"space-y-1\", className)}\n data-slot=\"single-stat\"\n role=\"group\"\n {...props}\n >\n {label && (\n <p\n className=\"text-sm font-[number:var(--single-stat-label-weight)] text-[color:var(--single-stat-label-color)]\"\n data-slot=\"single-stat-label\"\n >\n {label}\n </p>\n )}\n <p\n className={cn(\n \"font-[number:var(--single-stat-value-weight)] tabular-nums text-[color:var(--single-stat-value-color)]\",\n sizeClasses[size]\n )}\n data-slot=\"single-stat-value\"\n >\n {prefix && <span aria-hidden=\"true\">{prefix}</span>}\n {displayValue}\n {suffix && <span aria-hidden=\"true\">{suffix}</span>}\n </p>\n </div>\n )\n}\n\nexport { SingleStat }\n"]}
@@ -0,0 +1,199 @@
1
+ import { Badge } from './chunk-TNROOKX3.js';
2
+ import { cn } from './chunk-HRNDJU7D.js';
3
+ import { useRef, useState, useId, useCallback } from 'react';
4
+ import { cva } from 'class-variance-authority';
5
+ import { jsxs, jsx } from 'react/jsx-runtime';
6
+
7
+ var tagsInputVariants = cva(
8
+ [
9
+ "flex flex-wrap items-center gap-1.5 w-full min-w-0 rounded-md border bg-transparent transition-[color,box-shadow] outline-none",
10
+ "dark:bg-input/30",
11
+ "focus-within:border-ring focus-within:ring-ring/50 focus-within:ring-[3px]",
12
+ "aria-disabled:pointer-events-none aria-disabled:cursor-not-allowed aria-disabled:opacity-50",
13
+ "aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive"
14
+ ],
15
+ {
16
+ variants: {
17
+ size: {
18
+ sm: "min-h-8 px-2 py-1 text-sm",
19
+ md: "min-h-9 px-3 py-1.5 text-base md:text-sm",
20
+ lg: "min-h-10 px-3.5 py-2 text-base"
21
+ },
22
+ variant: {
23
+ default: "border-input shadow-xs",
24
+ filled: "border-transparent bg-muted",
25
+ flushed: "rounded-none border-x-0 border-t-0 border-b-input px-0"
26
+ }
27
+ },
28
+ defaultVariants: {
29
+ size: "md",
30
+ variant: "default"
31
+ }
32
+ }
33
+ );
34
+ var tagsInputInputVariants = cva(
35
+ [
36
+ "flex-1 min-w-24 bg-transparent outline-none",
37
+ "placeholder:text-muted-foreground",
38
+ "disabled:cursor-not-allowed"
39
+ ],
40
+ {
41
+ variants: {
42
+ size: {
43
+ sm: "text-sm h-5",
44
+ md: "text-base md:text-sm h-5",
45
+ lg: "text-base h-6"
46
+ }
47
+ },
48
+ defaultVariants: {
49
+ size: "md"
50
+ }
51
+ }
52
+ );
53
+ function TagsInput({
54
+ value: controlledValue,
55
+ defaultValue = [],
56
+ onChange,
57
+ onTagAdd,
58
+ onTagRemove,
59
+ placeholder = "Add tag...",
60
+ maxTags,
61
+ allowDuplicates = false,
62
+ disabled,
63
+ size = "md",
64
+ variant,
65
+ invalid,
66
+ delimiters = [","],
67
+ className,
68
+ ...props
69
+ }) {
70
+ const inputRef = useRef(null);
71
+ const [inputValue, setInputValue] = useState("");
72
+ const [internalTags, setInternalTags] = useState(defaultValue);
73
+ const id = useId();
74
+ const isControlled = controlledValue !== void 0;
75
+ const tags = isControlled ? controlledValue : internalTags;
76
+ const updateTags = useCallback(
77
+ (newTags) => {
78
+ if (!isControlled) {
79
+ setInternalTags(newTags);
80
+ }
81
+ onChange?.(newTags);
82
+ },
83
+ [isControlled, onChange]
84
+ );
85
+ const addTag = useCallback(
86
+ (tag) => {
87
+ const trimmedTag = tag.trim();
88
+ if (!trimmedTag) return;
89
+ if (!allowDuplicates && tags.includes(trimmedTag)) {
90
+ setInputValue("");
91
+ return;
92
+ }
93
+ if (maxTags && tags.length >= maxTags) {
94
+ setInputValue("");
95
+ return;
96
+ }
97
+ const newTags = [...tags, trimmedTag];
98
+ updateTags(newTags);
99
+ onTagAdd?.(trimmedTag);
100
+ setInputValue("");
101
+ },
102
+ [tags, allowDuplicates, maxTags, updateTags, onTagAdd]
103
+ );
104
+ const removeTag = useCallback(
105
+ (tagToRemove) => {
106
+ const newTags = tags.filter((tag) => tag !== tagToRemove);
107
+ updateTags(newTags);
108
+ onTagRemove?.(tagToRemove);
109
+ },
110
+ [tags, updateTags, onTagRemove]
111
+ );
112
+ const removeLastTag = useCallback(() => {
113
+ const lastTag = tags[tags.length - 1];
114
+ if (lastTag) {
115
+ removeTag(lastTag);
116
+ }
117
+ }, [tags, removeTag]);
118
+ const handleKeyDown = useCallback(
119
+ (e) => {
120
+ if (e.key === "Enter" || delimiters.includes(e.key)) {
121
+ e.preventDefault();
122
+ addTag(inputValue);
123
+ } else if (e.key === "Backspace" && inputValue === "" && tags.length > 0) {
124
+ removeLastTag();
125
+ }
126
+ },
127
+ [inputValue, tags.length, addTag, removeLastTag, delimiters]
128
+ );
129
+ const handleInputChange = useCallback(
130
+ (e) => {
131
+ const value = e.target.value;
132
+ for (const delimiter of delimiters) {
133
+ if (value.includes(delimiter)) {
134
+ const parts = value.split(delimiter);
135
+ parts.forEach((part, index) => {
136
+ if (index < parts.length - 1) {
137
+ addTag(part);
138
+ } else {
139
+ setInputValue(part);
140
+ }
141
+ });
142
+ return;
143
+ }
144
+ }
145
+ setInputValue(value);
146
+ },
147
+ [delimiters, addTag]
148
+ );
149
+ const handleContainerClick = useCallback(() => {
150
+ inputRef.current?.focus();
151
+ }, []);
152
+ const tagSize = size === "lg" ? "default" : "sm";
153
+ return /* @__PURE__ */ jsxs(
154
+ "div",
155
+ {
156
+ "aria-disabled": disabled ?? void 0,
157
+ "aria-invalid": invalid ?? void 0,
158
+ className: cn(tagsInputVariants({ size, variant }), className),
159
+ "data-slot": "tags-input",
160
+ onClick: handleContainerClick,
161
+ ...props,
162
+ children: [
163
+ tags.map((tag, index) => /* @__PURE__ */ jsx(
164
+ Badge,
165
+ {
166
+ color: "muted",
167
+ size: tagSize,
168
+ type: "pill-color",
169
+ onDismiss: disabled ? void 0 : () => {
170
+ removeTag(tag);
171
+ },
172
+ children: tag
173
+ },
174
+ `${tag}-${String(index)}`
175
+ )),
176
+ /* @__PURE__ */ jsx(
177
+ "input",
178
+ {
179
+ ref: inputRef,
180
+ "aria-label": "Add tag",
181
+ className: tagsInputInputVariants({ size }),
182
+ "data-slot": "tags-input-field",
183
+ disabled,
184
+ id,
185
+ placeholder: tags.length === 0 ? placeholder : void 0,
186
+ type: "text",
187
+ value: inputValue,
188
+ onChange: handleInputChange,
189
+ onKeyDown: handleKeyDown
190
+ }
191
+ )
192
+ ]
193
+ }
194
+ );
195
+ }
196
+
197
+ export { TagsInput, tagsInputInputVariants, tagsInputVariants };
198
+ //# sourceMappingURL=chunk-DDM2I5C6.js.map
199
+ //# sourceMappingURL=chunk-DDM2I5C6.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/forms/TagsInput/TagsInput.variants.ts","../src/components/forms/TagsInput/TagsInput.tsx"],"names":[],"mappings":"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","file":"chunk-DDM2I5C6.js","sourcesContent":["import { cva, type VariantProps } from \"class-variance-authority\"\n\n/**\n * TagsInput container variant styles using CVA\n */\nexport const tagsInputVariants = cva(\n [\n \"flex flex-wrap items-center gap-1.5 w-full min-w-0 rounded-md border bg-transparent transition-[color,box-shadow] outline-none\",\n \"dark:bg-input/30\",\n \"focus-within:border-ring focus-within:ring-ring/50 focus-within:ring-[3px]\",\n \"aria-disabled:pointer-events-none aria-disabled:cursor-not-allowed aria-disabled:opacity-50\",\n \"aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive\",\n ],\n {\n variants: {\n size: {\n sm: \"min-h-8 px-2 py-1 text-sm\",\n md: \"min-h-9 px-3 py-1.5 text-base md:text-sm\",\n lg: \"min-h-10 px-3.5 py-2 text-base\",\n },\n variant: {\n default: \"border-input shadow-xs\",\n filled: \"border-transparent bg-muted\",\n flushed: \"rounded-none border-x-0 border-t-0 border-b-input px-0\",\n },\n },\n defaultVariants: {\n size: \"md\",\n variant: \"default\",\n },\n }\n)\n\n/**\n * TagsInput inner input variant styles\n */\nexport const tagsInputInputVariants = cva(\n [\n \"flex-1 min-w-24 bg-transparent outline-none\",\n \"placeholder:text-muted-foreground\",\n \"disabled:cursor-not-allowed\",\n ],\n {\n variants: {\n size: {\n sm: \"text-sm h-5\",\n md: \"text-base md:text-sm h-5\",\n lg: \"text-base h-6\",\n },\n },\n defaultVariants: {\n size: \"md\",\n },\n }\n)\n\nexport type TagsInputVariantProps = VariantProps<typeof tagsInputVariants>\nexport type TagsInputInputVariantProps = VariantProps<typeof tagsInputInputVariants>\n","\"use client\"\n\nimport type { TagsInputProps } from \"./TagsInput.types\"\n\nimport * as React from \"react\"\nimport { useCallback, useId, useRef, useState } from \"react\"\n\nimport { cn } from \"../../../lib/utils\"\nimport { Badge } from \"../../primitives/Badge\"\nimport { tagsInputInputVariants, tagsInputVariants } from \"./TagsInput.variants\"\n\n/**\n * TagsInput - A multi-tag input component for entering and managing tags\n *\n * @example\n * ```tsx\n * // Uncontrolled\n * <TagsInput\n * defaultValue={[\"react\", \"typescript\"]}\n * placeholder=\"Add tags...\"\n * />\n *\n * // Controlled\n * const [tags, setTags] = useState([\"hello\"])\n * <TagsInput\n * value={tags}\n * onChange={setTags}\n * maxTags={5}\n * />\n * ```\n */\nfunction TagsInput({\n value: controlledValue,\n defaultValue = [],\n onChange,\n onTagAdd,\n onTagRemove,\n placeholder = \"Add tag...\",\n maxTags,\n allowDuplicates = false,\n disabled,\n size = \"md\",\n variant,\n invalid,\n delimiters = [\",\"],\n className,\n ...props\n}: TagsInputProps) {\n const inputRef = useRef<HTMLInputElement>(null)\n const [inputValue, setInputValue] = useState(\"\")\n const [internalTags, setInternalTags] = useState<string[]>(defaultValue)\n const id = useId()\n\n // Determine if controlled or uncontrolled\n const isControlled = controlledValue !== undefined\n const tags = isControlled ? controlledValue : internalTags\n\n const updateTags = useCallback(\n (newTags: string[]) => {\n if (!isControlled) {\n setInternalTags(newTags)\n }\n onChange?.(newTags)\n },\n [isControlled, onChange]\n )\n\n const addTag = useCallback(\n (tag: string) => {\n const trimmedTag = tag.trim()\n if (!trimmedTag) return\n\n // Check for duplicates\n if (!allowDuplicates && tags.includes(trimmedTag)) {\n setInputValue(\"\")\n return\n }\n\n // Check max tags\n if (maxTags && tags.length >= maxTags) {\n setInputValue(\"\")\n return\n }\n\n const newTags = [...tags, trimmedTag]\n updateTags(newTags)\n onTagAdd?.(trimmedTag)\n setInputValue(\"\")\n },\n [tags, allowDuplicates, maxTags, updateTags, onTagAdd]\n )\n\n const removeTag = useCallback(\n (tagToRemove: string) => {\n const newTags = tags.filter((tag) => tag !== tagToRemove)\n updateTags(newTags)\n onTagRemove?.(tagToRemove)\n },\n [tags, updateTags, onTagRemove]\n )\n\n const removeLastTag = useCallback(() => {\n const lastTag = tags[tags.length - 1]\n if (lastTag) {\n removeTag(lastTag)\n }\n }, [tags, removeTag])\n\n const handleKeyDown = useCallback(\n (e: React.KeyboardEvent<HTMLInputElement>) => {\n if (e.key === \"Enter\" || delimiters.includes(e.key)) {\n e.preventDefault()\n addTag(inputValue)\n } else if (e.key === \"Backspace\" && inputValue === \"\" && tags.length > 0) {\n removeLastTag()\n }\n },\n [inputValue, tags.length, addTag, removeLastTag, delimiters]\n )\n\n const handleInputChange = useCallback(\n (e: React.ChangeEvent<HTMLInputElement>) => {\n const value = e.target.value\n\n // Check if any delimiter is in the pasted/typed value\n for (const delimiter of delimiters) {\n if (value.includes(delimiter)) {\n const parts = value.split(delimiter)\n parts.forEach((part, index) => {\n if (index < parts.length - 1) {\n addTag(part)\n } else {\n setInputValue(part)\n }\n })\n return\n }\n }\n\n setInputValue(value)\n },\n [delimiters, addTag]\n )\n\n const handleContainerClick = useCallback(() => {\n inputRef.current?.focus()\n }, [])\n\n // Map size to Tag size\n const tagSize = size === \"lg\" ? \"default\" : \"sm\"\n\n return (\n <div\n aria-disabled={disabled ?? undefined}\n aria-invalid={invalid ?? undefined}\n className={cn(tagsInputVariants({ size, variant }), className)}\n data-slot=\"tags-input\"\n onClick={handleContainerClick}\n {...props}\n >\n {tags.map((tag, index) => (\n <Badge\n key={`${tag}-${String(index)}`}\n color=\"muted\"\n size={tagSize}\n type=\"pill-color\"\n onDismiss={disabled ? undefined : () => { removeTag(tag); }}\n >\n {tag}\n </Badge>\n ))}\n <input\n ref={inputRef}\n aria-label=\"Add tag\"\n className={tagsInputInputVariants({ size })}\n data-slot=\"tags-input-field\"\n disabled={disabled}\n id={id}\n placeholder={tags.length === 0 ? placeholder : undefined}\n type=\"text\"\n value={inputValue}\n onChange={handleInputChange}\n onKeyDown={handleKeyDown}\n />\n </div>\n )\n}\n\nexport { TagsInput }\n"]}
@@ -0,0 +1,182 @@
1
+ import { LineChart } from './chunk-XV6NXXXP.js';
2
+ import { SkeletonLoader } from './chunk-QHKOBGLW.js';
3
+ import { Badge } from './chunk-TNROOKX3.js';
4
+ import { cn } from './chunk-HRNDJU7D.js';
5
+ import * as React from 'react';
6
+ import { cva } from 'class-variance-authority';
7
+ import { jsxs, jsx } from 'react/jsx-runtime';
8
+
9
+ var chartCardVariants = cva(
10
+ "transition",
11
+ {
12
+ variants: {
13
+ variant: {
14
+ default: "",
15
+ outlined: "border border-border rounded-lg p-4",
16
+ elevated: "bg-card rounded-lg p-4 shadow-sm"
17
+ }
18
+ },
19
+ defaultVariants: {
20
+ variant: "default"
21
+ }
22
+ }
23
+ );
24
+ var chartCardHeaderVariants = cva(
25
+ "flex items-center justify-between gap-x-2"
26
+ );
27
+ var chartCardTitleVariants = cva(
28
+ "font-bold text-foreground sm:text-sm"
29
+ );
30
+ var chartCardValueContainerVariants = cva(
31
+ "mt-2 flex items-baseline justify-between"
32
+ );
33
+ var chartCardValueVariants = cva(
34
+ "text-xl text-foreground"
35
+ );
36
+ var chartCardPreviousValueVariants = cva(
37
+ "text-sm text-muted-foreground"
38
+ );
39
+ var chartCardChartVariants = cva(
40
+ "mt-6"
41
+ );
42
+ var defaultFormatter = (value) => String(value);
43
+ function getBadgeColor(value) {
44
+ if (value > 0) {
45
+ return "success";
46
+ } else if (value < 0) {
47
+ if (value < -50) {
48
+ return "warning";
49
+ }
50
+ return "destructive";
51
+ }
52
+ return "muted";
53
+ }
54
+ function formatPercentage(value) {
55
+ const sign = value > 0 ? "+" : "";
56
+ return `${sign}${(value * 100).toFixed(1)}%`;
57
+ }
58
+ function ChartCard({
59
+ title,
60
+ data,
61
+ config,
62
+ valueFormatter = defaultFormatter,
63
+ comparisonPeriod = "no-comparison",
64
+ isThumbnail = false,
65
+ loading = false,
66
+ badge,
67
+ chartHeight = "h-32",
68
+ showTooltip = true,
69
+ xAxisKey = "formattedDate",
70
+ emptyMessage,
71
+ variant,
72
+ className,
73
+ ...props
74
+ }) {
75
+ const isEmpty = !loading && data.length === 0;
76
+ const totalValue = React.useMemo(() => {
77
+ return data.reduce((acc, item) => acc + (item.value ?? 0), 0);
78
+ }, [data]);
79
+ const totalPreviousValue = React.useMemo(() => {
80
+ return data.reduce((acc, item) => acc + (item.previousValue ?? 0), 0);
81
+ }, [data]);
82
+ const evolution = React.useMemo(() => {
83
+ if (comparisonPeriod === "no-comparison" || totalPreviousValue === 0) {
84
+ return 0;
85
+ }
86
+ return (totalValue - totalPreviousValue) / totalPreviousValue;
87
+ }, [comparisonPeriod, totalPreviousValue, totalValue]);
88
+ const series = React.useMemo(() => {
89
+ return comparisonPeriod === "no-comparison" ? ["value"] : ["value", "previousValue"];
90
+ }, [comparisonPeriod]);
91
+ const showComparison = comparisonPeriod !== "no-comparison";
92
+ if (isEmpty) {
93
+ return /* @__PURE__ */ jsxs(
94
+ "article",
95
+ {
96
+ "aria-label": `${title}: empty`,
97
+ className: cn(chartCardVariants({ variant }), className),
98
+ "data-empty": "true",
99
+ "data-slot": "chart-card",
100
+ ...props,
101
+ children: [
102
+ /* @__PURE__ */ jsx("div", { className: cn(chartCardHeaderVariants()), children: /* @__PURE__ */ jsx("h3", { className: cn(chartCardTitleVariants()), children: title }) }),
103
+ /* @__PURE__ */ jsx(
104
+ "div",
105
+ {
106
+ className: cn(
107
+ chartCardChartVariants(),
108
+ chartHeight,
109
+ "flex items-center justify-center text-sm text-muted-foreground"
110
+ ),
111
+ "data-slot": "chart-card-empty",
112
+ children: emptyMessage ?? "No data available"
113
+ }
114
+ )
115
+ ]
116
+ }
117
+ );
118
+ }
119
+ if (loading) {
120
+ return /* @__PURE__ */ jsxs(
121
+ "article",
122
+ {
123
+ "aria-busy": "true",
124
+ className: cn(chartCardVariants({ variant }), className),
125
+ "data-slot": "chart-card",
126
+ ...props,
127
+ children: [
128
+ /* @__PURE__ */ jsxs("div", { className: cn(chartCardHeaderVariants()), children: [
129
+ /* @__PURE__ */ jsx(SkeletonLoader, { className: "h-4 w-24" }),
130
+ /* @__PURE__ */ jsx(SkeletonLoader, { className: "h-5 w-12" })
131
+ ] }),
132
+ /* @__PURE__ */ jsx("div", { className: cn(chartCardValueContainerVariants()), children: /* @__PURE__ */ jsx(SkeletonLoader, { className: "h-7 w-32" }) }),
133
+ /* @__PURE__ */ jsx("div", { className: cn(chartCardChartVariants(), chartHeight), children: /* @__PURE__ */ jsx(SkeletonLoader, { className: "h-full w-full" }) })
134
+ ]
135
+ }
136
+ );
137
+ }
138
+ return /* @__PURE__ */ jsxs(
139
+ "article",
140
+ {
141
+ "aria-label": `${title}: ${valueFormatter(totalValue)}`,
142
+ className: cn(chartCardVariants({ variant }), className),
143
+ "data-slot": "chart-card",
144
+ ...props,
145
+ children: [
146
+ /* @__PURE__ */ jsx("div", { className: cn(chartCardHeaderVariants()), children: /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-x-2", children: [
147
+ /* @__PURE__ */ jsx("h3", { className: cn(chartCardTitleVariants()), children: title }),
148
+ showComparison && (badge ?? /* @__PURE__ */ jsx(Badge, { color: getBadgeColor(evolution), size: "sm", children: formatPercentage(evolution) }))
149
+ ] }) }),
150
+ /* @__PURE__ */ jsxs("div", { className: cn(chartCardValueContainerVariants()), children: [
151
+ /* @__PURE__ */ jsx("p", { className: cn(chartCardValueVariants()), children: valueFormatter(totalValue) }),
152
+ showComparison && /* @__PURE__ */ jsxs("p", { className: cn(chartCardPreviousValueVariants()), children: [
153
+ "from ",
154
+ valueFormatter(totalPreviousValue)
155
+ ] })
156
+ ] }),
157
+ !isThumbnail && data.length > 0 && /* @__PURE__ */ jsx(
158
+ LineChart,
159
+ {
160
+ autoMinValue: true,
161
+ startEndOnly: true,
162
+ className: cn(chartCardChartVariants(), chartHeight),
163
+ config,
164
+ data,
165
+ series,
166
+ showLegend: false,
167
+ showTooltip,
168
+ showYAxis: false,
169
+ xAxisKey,
170
+ xAxisTickFormatter: (value) => String(value),
171
+ yAxisTickFormatter: (value) => valueFormatter(Number(value))
172
+ }
173
+ )
174
+ ]
175
+ }
176
+ );
177
+ }
178
+ ChartCard.displayName = "ChartCard";
179
+
180
+ export { ChartCard, chartCardChartVariants, chartCardHeaderVariants, chartCardPreviousValueVariants, chartCardTitleVariants, chartCardValueContainerVariants, chartCardValueVariants, chartCardVariants };
181
+ //# sourceMappingURL=chunk-DDR24GOP.js.map
182
+ //# sourceMappingURL=chunk-DDR24GOP.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/data-display/ChartCard/ChartCard.variants.ts","../src/components/data-display/ChartCard/ChartCard.tsx"],"names":[],"mappings":"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","file":"chunk-DDR24GOP.js","sourcesContent":["// ChartCard/ChartCard.variants.ts\nimport { cva } from \"class-variance-authority\"\n\n/**\n * ChartCard container variants\n */\nexport const chartCardVariants = cva(\n \"transition\",\n {\n variants: {\n variant: {\n default: \"\",\n outlined: \"border border-border rounded-lg p-4\",\n elevated: \"bg-card rounded-lg p-4 shadow-sm\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n },\n }\n)\n\n/**\n * ChartCard header variants\n */\nexport const chartCardHeaderVariants = cva(\n \"flex items-center justify-between gap-x-2\"\n)\n\n/**\n * ChartCard title variants\n */\nexport const chartCardTitleVariants = cva(\n \"font-bold text-foreground sm:text-sm\"\n)\n\n/**\n * ChartCard value container variants\n */\nexport const chartCardValueContainerVariants = cva(\n \"mt-2 flex items-baseline justify-between\"\n)\n\n/**\n * ChartCard value text variants\n */\nexport const chartCardValueVariants = cva(\n \"text-xl text-foreground\"\n)\n\n/**\n * ChartCard previous value variants\n */\nexport const chartCardPreviousValueVariants = cva(\n \"text-sm text-muted-foreground\"\n)\n\n/**\n * ChartCard chart container variants\n */\nexport const chartCardChartVariants = cva(\n \"mt-6\"\n)\n","// ChartCard/ChartCard.tsx\n\"use client\"\n\nimport type { ChartCardProps, ChartCardValueFormatter } from \"./ChartCard.types\"\n\nimport * as React from \"react\"\n\nimport { cn } from \"../../../lib/utils\"\nimport { Badge } from \"../../primitives/Badge\"\nimport { SkeletonLoader } from \"../../primitives/SkeletonLoader\"\nimport { LineChart } from \"../LineChart\"\nimport {\n chartCardChartVariants,\n chartCardHeaderVariants,\n chartCardPreviousValueVariants,\n chartCardTitleVariants,\n chartCardValueContainerVariants,\n chartCardValueVariants,\n chartCardVariants,\n} from \"./ChartCard.variants\"\n\n/**\n * Default value formatter (returns value as string)\n */\nconst defaultFormatter: ChartCardValueFormatter = (value) => String(value)\n\n/**\n * Get badge color based on evolution percentage\n */\nfunction getBadgeColor(value: number): \"destructive\" | \"muted\" | \"success\" | \"warning\" {\n if (value > 0) {\n return \"success\"\n } else if (value < 0) {\n if (value < -50) {\n return \"warning\"\n }\n return \"destructive\"\n }\n return \"muted\"\n}\n\n/**\n * Format percentage for display\n */\nfunction formatPercentage(value: number): string {\n const sign = value > 0 ? \"+\" : \"\"\n return `${sign}${(value * 100).toFixed(1)}%`\n}\n\n/**\n * ChartCard - Dashboard widget with integrated LineChart\n *\n * Displays a KPI value with trend chart and optional comparison period.\n * Matches the Tremor DashboardChartCard layout with evolution badge.\n *\n * @example\n * ```tsx\n * const data = [\n * { formattedDate: \"01/01\", value: 1000, previousValue: 900 },\n * { formattedDate: \"02/01\", value: 1200, previousValue: 1100 },\n * ]\n *\n * const config = {\n * value: { label: \"Current\", color: \"hsl(var(--chart-1))\" },\n * previousValue: { label: \"Previous\", color: \"hsl(var(--chart-2))\" },\n * }\n *\n * <ChartCard\n * title=\"Revenue\"\n * data={data}\n * config={config}\n * valueFormatter={(v) => `$${v.toLocaleString()}`}\n * comparisonPeriod=\"previous-year\"\n * />\n * ```\n */\nfunction ChartCard({\n title,\n data,\n config,\n valueFormatter = defaultFormatter,\n comparisonPeriod = \"no-comparison\",\n isThumbnail = false,\n loading = false,\n badge,\n chartHeight = \"h-32\",\n showTooltip = true,\n xAxisKey = \"formattedDate\",\n emptyMessage,\n variant,\n className,\n ...props\n}: ChartCardProps) {\n const isEmpty = !loading && data.length === 0\n // Calculate totals\n const totalValue = React.useMemo(() => {\n return data.reduce((acc, item) => acc + (item.value ?? 0), 0)\n }, [data])\n\n const totalPreviousValue = React.useMemo(() => {\n return data.reduce((acc, item) => acc + (item.previousValue ?? 0), 0)\n }, [data])\n\n // Calculate evolution percentage\n const evolution = React.useMemo(() => {\n if (comparisonPeriod === \"no-comparison\" || totalPreviousValue === 0) {\n return 0\n }\n return (totalValue - totalPreviousValue) / totalPreviousValue\n }, [comparisonPeriod, totalPreviousValue, totalValue])\n\n // Determine which series to show\n const series = React.useMemo(() => {\n return comparisonPeriod === \"no-comparison\"\n ? [\"value\"]\n : [\"value\", \"previousValue\"]\n }, [comparisonPeriod])\n\n // Show comparison UI elements\n const showComparison = comparisonPeriod !== \"no-comparison\"\n\n // Empty state (DES-1254 item 3 — Figma Empty State)\n if (isEmpty) {\n return (\n <article\n aria-label={`${title}: empty`}\n className={cn(chartCardVariants({ variant }), className)}\n data-empty=\"true\"\n data-slot=\"chart-card\"\n {...props}\n >\n <div className={cn(chartCardHeaderVariants())}>\n <h3 className={cn(chartCardTitleVariants())}>{title}</h3>\n </div>\n <div\n className={cn(\n chartCardChartVariants(),\n chartHeight,\n \"flex items-center justify-center text-sm text-muted-foreground\"\n )}\n data-slot=\"chart-card-empty\"\n >\n {emptyMessage ?? \"No data available\"}\n </div>\n </article>\n )\n }\n\n // Loading state\n if (loading) {\n return (\n <article\n aria-busy=\"true\"\n className={cn(chartCardVariants({ variant }), className)}\n data-slot=\"chart-card\"\n {...props}\n >\n <div className={cn(chartCardHeaderVariants())}>\n <SkeletonLoader className=\"h-4 w-24\" />\n <SkeletonLoader className=\"h-5 w-12\" />\n </div>\n <div className={cn(chartCardValueContainerVariants())}>\n <SkeletonLoader className=\"h-7 w-32\" />\n </div>\n <div className={cn(chartCardChartVariants(), chartHeight)}>\n <SkeletonLoader className=\"h-full w-full\" />\n </div>\n </article>\n )\n }\n\n return (\n <article\n aria-label={`${title}: ${valueFormatter(totalValue)}`}\n className={cn(chartCardVariants({ variant }), className)}\n data-slot=\"chart-card\"\n {...props}\n >\n {/* Header with title and badge */}\n <div className={cn(chartCardHeaderVariants())}>\n <div className=\"flex items-center gap-x-2\">\n <h3 className={cn(chartCardTitleVariants())}>\n {title}\n </h3>\n {showComparison && (\n badge ?? (\n <Badge color={getBadgeColor(evolution)} size=\"sm\">\n {formatPercentage(evolution)}\n </Badge>\n )\n )}\n </div>\n </div>\n\n {/* Value display */}\n <div className={cn(chartCardValueContainerVariants())}>\n <p className={cn(chartCardValueVariants())}>\n {valueFormatter(totalValue)}\n </p>\n {showComparison && (\n <p className={cn(chartCardPreviousValueVariants())}>\n from {valueFormatter(totalPreviousValue)}\n </p>\n )}\n </div>\n\n {/* Chart */}\n {!isThumbnail && data.length > 0 && (\n <LineChart\n autoMinValue\n startEndOnly\n className={cn(chartCardChartVariants(), chartHeight)}\n config={config}\n data={data}\n series={series}\n showLegend={false}\n showTooltip={showTooltip}\n showYAxis={false}\n xAxisKey={xAxisKey}\n xAxisTickFormatter={(value) => String(value)}\n yAxisTickFormatter={(value) => valueFormatter(Number(value))}\n />\n )}\n </article>\n )\n}\n\nChartCard.displayName = \"ChartCard\"\n\nexport { ChartCard }\n"]}