@mdigital_ui/ui 0.4.0 → 0.4.2

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 (576) hide show
  1. package/dist/accordion/index.d.ts +6 -0
  2. package/dist/accordion/index.d.ts.map +1 -0
  3. package/dist/accordion/index.js +5 -0
  4. package/dist/accordion/index.js.map +1 -0
  5. package/dist/accordion/types.d.ts +126 -0
  6. package/dist/accordion/types.d.ts.map +1 -0
  7. package/dist/avatar/index.d.ts +14 -0
  8. package/dist/avatar/index.d.ts.map +1 -0
  9. package/dist/avatar/index.js +4 -0
  10. package/dist/avatar/index.js.map +1 -0
  11. package/dist/avatar/types.d.ts +147 -0
  12. package/dist/avatar/types.d.ts.map +1 -0
  13. package/dist/badge/index.d.ts +28 -0
  14. package/dist/badge/index.d.ts.map +1 -0
  15. package/dist/badge/index.js +5 -0
  16. package/dist/badge/index.js.map +1 -0
  17. package/dist/badge/types.d.ts +97 -0
  18. package/dist/badge/types.d.ts.map +1 -0
  19. package/dist/breadcrumbs/index.d.ts +13 -0
  20. package/dist/breadcrumbs/index.d.ts.map +1 -0
  21. package/dist/breadcrumbs/index.js +8 -0
  22. package/dist/breadcrumbs/index.js.map +1 -0
  23. package/dist/breadcrumbs/types.d.ts +118 -0
  24. package/dist/breadcrumbs/types.d.ts.map +1 -0
  25. package/dist/button/index.d.ts +15 -0
  26. package/dist/button/index.d.ts.map +1 -0
  27. package/dist/button/index.js +7 -0
  28. package/dist/button/index.js.map +1 -0
  29. package/dist/button/types.d.ts +103 -0
  30. package/dist/button/types.d.ts.map +1 -0
  31. package/dist/button-group/index.d.ts +34 -0
  32. package/dist/button-group/index.d.ts.map +1 -0
  33. package/dist/button-group/index.js +4 -0
  34. package/dist/button-group/index.js.map +1 -0
  35. package/dist/button-group/types.d.ts +75 -0
  36. package/dist/button-group/types.d.ts.map +1 -0
  37. package/dist/card/index.d.ts +71 -0
  38. package/dist/card/index.d.ts.map +1 -0
  39. package/dist/card/index.js +5 -0
  40. package/dist/card/index.js.map +1 -0
  41. package/dist/card/types.d.ts +136 -0
  42. package/dist/card/types.d.ts.map +1 -0
  43. package/dist/carousel/carousel-navigation.d.ts +9 -0
  44. package/dist/carousel/carousel-navigation.d.ts.map +1 -0
  45. package/dist/carousel/index.d.ts +50 -0
  46. package/dist/carousel/index.d.ts.map +1 -0
  47. package/dist/carousel/index.js +4 -0
  48. package/dist/carousel/index.js.map +1 -0
  49. package/dist/cascader/index.d.ts +27 -0
  50. package/dist/cascader/index.d.ts.map +1 -0
  51. package/dist/cascader/index.js +5 -0
  52. package/dist/cascader/index.js.map +1 -0
  53. package/dist/cascader/types.d.ts +220 -0
  54. package/dist/cascader/types.d.ts.map +1 -0
  55. package/dist/checkbox/index.d.ts +6 -0
  56. package/dist/checkbox/index.d.ts.map +1 -0
  57. package/dist/checkbox/index.js +5 -0
  58. package/dist/checkbox/index.js.map +1 -0
  59. package/dist/checkbox/types.d.ts +21 -0
  60. package/dist/checkbox/types.d.ts.map +1 -0
  61. package/dist/checkbox-group/index.d.ts +6 -0
  62. package/dist/checkbox-group/index.d.ts.map +1 -0
  63. package/dist/checkbox-group/index.js +4 -0
  64. package/dist/checkbox-group/index.js.map +1 -0
  65. package/dist/checkbox-group/types.d.ts +43 -0
  66. package/dist/checkbox-group/types.d.ts.map +1 -0
  67. package/dist/chunk-2PNLIQYM.js +76 -0
  68. package/dist/chunk-2PNLIQYM.js.map +1 -0
  69. package/dist/chunk-2TLOWZE4.js +689 -0
  70. package/dist/chunk-2TLOWZE4.js.map +1 -0
  71. package/dist/chunk-2WZVD7P3.js +145 -0
  72. package/dist/chunk-2WZVD7P3.js.map +1 -0
  73. package/dist/chunk-3BIV3QE2.js +353 -0
  74. package/dist/chunk-3BIV3QE2.js.map +1 -0
  75. package/dist/chunk-3BZE6BBJ.js +758 -0
  76. package/dist/chunk-3BZE6BBJ.js.map +1 -0
  77. package/dist/chunk-3PWILVOE.js +182 -0
  78. package/dist/chunk-3PWILVOE.js.map +1 -0
  79. package/dist/chunk-4FFVNUTK.js +35 -0
  80. package/dist/chunk-4FFVNUTK.js.map +1 -0
  81. package/dist/chunk-5PUATOLR.js +127 -0
  82. package/dist/chunk-5PUATOLR.js.map +1 -0
  83. package/dist/chunk-64NHVOZS.js +272 -0
  84. package/dist/chunk-64NHVOZS.js.map +1 -0
  85. package/dist/chunk-674JC24S.js +414 -0
  86. package/dist/chunk-674JC24S.js.map +1 -0
  87. package/dist/chunk-6BAP6QUT.js +72 -0
  88. package/dist/chunk-6BAP6QUT.js.map +1 -0
  89. package/dist/chunk-6G3BMY4N.js +349 -0
  90. package/dist/chunk-6G3BMY4N.js.map +1 -0
  91. package/dist/chunk-6HGUDHHE.js +86 -0
  92. package/dist/chunk-6HGUDHHE.js.map +1 -0
  93. package/dist/chunk-6JGNJI5T.js +174 -0
  94. package/dist/chunk-6JGNJI5T.js.map +1 -0
  95. package/dist/chunk-6LYRMQOI.js +328 -0
  96. package/dist/chunk-6LYRMQOI.js.map +1 -0
  97. package/dist/chunk-6YOOKE6C.js +138 -0
  98. package/dist/chunk-6YOOKE6C.js.map +1 -0
  99. package/dist/chunk-764UKE6X.js +359 -0
  100. package/dist/chunk-764UKE6X.js.map +1 -0
  101. package/dist/chunk-7UCNBMCV.js +261 -0
  102. package/dist/chunk-7UCNBMCV.js.map +1 -0
  103. package/dist/chunk-BPRCBPVJ.js +253 -0
  104. package/dist/chunk-BPRCBPVJ.js.map +1 -0
  105. package/dist/chunk-BVO2BNFG.js +437 -0
  106. package/dist/chunk-BVO2BNFG.js.map +1 -0
  107. package/dist/chunk-C5IGZLIT.js +107 -0
  108. package/dist/chunk-C5IGZLIT.js.map +1 -0
  109. package/dist/chunk-CN74CNAN.js +75 -0
  110. package/dist/chunk-CN74CNAN.js.map +1 -0
  111. package/dist/chunk-D4SUSZDN.js +360 -0
  112. package/dist/chunk-D4SUSZDN.js.map +1 -0
  113. package/dist/chunk-DUIL5BYS.js +293 -0
  114. package/dist/chunk-DUIL5BYS.js.map +1 -0
  115. package/dist/chunk-EHWXPH76.js +42 -0
  116. package/dist/chunk-EHWXPH76.js.map +1 -0
  117. package/dist/chunk-ERRZ2CSG.js +192 -0
  118. package/dist/chunk-ERRZ2CSG.js.map +1 -0
  119. package/dist/chunk-EZGK67T6.js +383 -0
  120. package/dist/chunk-EZGK67T6.js.map +1 -0
  121. package/dist/chunk-FZSCLZF6.js +552 -0
  122. package/dist/chunk-FZSCLZF6.js.map +1 -0
  123. package/dist/chunk-G6NVGBYZ.js +334 -0
  124. package/dist/chunk-G6NVGBYZ.js.map +1 -0
  125. package/dist/chunk-GJPZOMFE.js +407 -0
  126. package/dist/chunk-GJPZOMFE.js.map +1 -0
  127. package/dist/chunk-GOLARX5K.js +310 -0
  128. package/dist/chunk-GOLARX5K.js.map +1 -0
  129. package/dist/chunk-GVVP5TZM.js +506 -0
  130. package/dist/chunk-GVVP5TZM.js.map +1 -0
  131. package/dist/chunk-H6G4BUPA.js +586 -0
  132. package/dist/chunk-H6G4BUPA.js.map +1 -0
  133. package/dist/chunk-HCOTO5WX.js +77 -0
  134. package/dist/chunk-HCOTO5WX.js.map +1 -0
  135. package/dist/chunk-HECAAILV.js +94 -0
  136. package/dist/chunk-HECAAILV.js.map +1 -0
  137. package/dist/chunk-HUXODBIO.js +424 -0
  138. package/dist/chunk-HUXODBIO.js.map +1 -0
  139. package/dist/chunk-I32ZQUYY.js +184 -0
  140. package/dist/chunk-I32ZQUYY.js.map +1 -0
  141. package/dist/chunk-JWTWPZ32.js +355 -0
  142. package/dist/chunk-JWTWPZ32.js.map +1 -0
  143. package/dist/chunk-KH577UDI.js +218 -0
  144. package/dist/chunk-KH577UDI.js.map +1 -0
  145. package/dist/chunk-KJTMZJ7V.js +239 -0
  146. package/dist/chunk-KJTMZJ7V.js.map +1 -0
  147. package/dist/chunk-L5UYN5LX.js +787 -0
  148. package/dist/chunk-L5UYN5LX.js.map +1 -0
  149. package/dist/chunk-LOYLJRCF.js +485 -0
  150. package/dist/chunk-LOYLJRCF.js.map +1 -0
  151. package/dist/chunk-LX4FDH4J.js +299 -0
  152. package/dist/chunk-LX4FDH4J.js.map +1 -0
  153. package/dist/chunk-N2WHJ3FI.js +130 -0
  154. package/dist/chunk-N2WHJ3FI.js.map +1 -0
  155. package/dist/chunk-NGYLRX6F.js +42 -0
  156. package/dist/chunk-NGYLRX6F.js.map +1 -0
  157. package/dist/chunk-O3V3BTIJ.js +419 -0
  158. package/dist/chunk-O3V3BTIJ.js.map +1 -0
  159. package/dist/chunk-OFUPJH35.js +74 -0
  160. package/dist/chunk-OFUPJH35.js.map +1 -0
  161. package/dist/chunk-OLTQAMV2.js +210 -0
  162. package/dist/chunk-OLTQAMV2.js.map +1 -0
  163. package/dist/chunk-ON2CMF6J.js +503 -0
  164. package/dist/chunk-ON2CMF6J.js.map +1 -0
  165. package/dist/chunk-ONGJXAYQ.js +144 -0
  166. package/dist/chunk-ONGJXAYQ.js.map +1 -0
  167. package/dist/chunk-OQFYIKWR.js +1264 -0
  168. package/dist/chunk-OQFYIKWR.js.map +1 -0
  169. package/dist/chunk-POLVJ36Y.js +210 -0
  170. package/dist/chunk-POLVJ36Y.js.map +1 -0
  171. package/dist/chunk-POXI7JJ4.js +351 -0
  172. package/dist/chunk-POXI7JJ4.js.map +1 -0
  173. package/dist/chunk-R3TLU26W.js +110 -0
  174. package/dist/chunk-R3TLU26W.js.map +1 -0
  175. package/dist/chunk-RFHTC6AH.js +250 -0
  176. package/dist/chunk-RFHTC6AH.js.map +1 -0
  177. package/dist/chunk-ROA7BYGB.js +123 -0
  178. package/dist/chunk-ROA7BYGB.js.map +1 -0
  179. package/dist/chunk-SGRACNBP.js +60 -0
  180. package/dist/chunk-SGRACNBP.js.map +1 -0
  181. package/dist/chunk-TLNHWOQQ.js +1026 -0
  182. package/dist/chunk-TLNHWOQQ.js.map +1 -0
  183. package/dist/chunk-UTWQ2FZK.js +337 -0
  184. package/dist/chunk-UTWQ2FZK.js.map +1 -0
  185. package/dist/chunk-VOODO2ZE.js +180 -0
  186. package/dist/chunk-VOODO2ZE.js.map +1 -0
  187. package/dist/chunk-WRSG7WU5.js +278 -0
  188. package/dist/chunk-WRSG7WU5.js.map +1 -0
  189. package/dist/chunk-X3YNHX77.js +109 -0
  190. package/dist/chunk-X3YNHX77.js.map +1 -0
  191. package/dist/chunk-Y4XAXZHB.js +42 -0
  192. package/dist/chunk-Y4XAXZHB.js.map +1 -0
  193. package/dist/chunk-YJOLLSHH.js +132 -0
  194. package/dist/chunk-YJOLLSHH.js.map +1 -0
  195. package/dist/chunk-YS5AIY4A.js +43 -0
  196. package/dist/chunk-YS5AIY4A.js.map +1 -0
  197. package/dist/chunk-YXLIGJTN.js +336 -0
  198. package/dist/chunk-YXLIGJTN.js.map +1 -0
  199. package/dist/chunk-ZIYA7TGX.js +141 -0
  200. package/dist/chunk-ZIYA7TGX.js.map +1 -0
  201. package/dist/chunk-ZJNGZCRB.js +440 -0
  202. package/dist/chunk-ZJNGZCRB.js.map +1 -0
  203. package/dist/clipboard/index.d.ts +6 -0
  204. package/dist/clipboard/index.d.ts.map +1 -0
  205. package/dist/clipboard/index.js +6 -0
  206. package/dist/clipboard/index.js.map +1 -0
  207. package/dist/clipboard/types.d.ts +65 -0
  208. package/dist/clipboard/types.d.ts.map +1 -0
  209. package/dist/collapse/index.d.ts +6 -0
  210. package/dist/collapse/index.d.ts.map +1 -0
  211. package/dist/collapse/index.js +5 -0
  212. package/dist/collapse/index.js.map +1 -0
  213. package/dist/collapse/types.d.ts +60 -0
  214. package/dist/collapse/types.d.ts.map +1 -0
  215. package/dist/command/index.d.ts +74 -0
  216. package/dist/command/index.d.ts.map +1 -0
  217. package/dist/command/index.js +5 -0
  218. package/dist/command/index.js.map +1 -0
  219. package/dist/command/types.d.ts +24 -0
  220. package/dist/command/types.d.ts.map +1 -0
  221. package/dist/context-menu/index.d.ts +63 -0
  222. package/dist/context-menu/index.d.ts.map +1 -0
  223. package/dist/context-menu/index.js +5 -0
  224. package/dist/context-menu/index.js.map +1 -0
  225. package/dist/context-menu/types.d.ts +109 -0
  226. package/dist/context-menu/types.d.ts.map +1 -0
  227. package/dist/date-picker/index.d.ts +12 -0
  228. package/dist/date-picker/index.d.ts.map +1 -0
  229. package/dist/date-picker/index.js +6 -0
  230. package/dist/date-picker/index.js.map +1 -0
  231. package/dist/date-picker/types.d.ts +64 -0
  232. package/dist/date-picker/types.d.ts.map +1 -0
  233. package/dist/date-picker/utils.d.ts +10 -0
  234. package/dist/date-picker/utils.d.ts.map +1 -0
  235. package/dist/descriptions/index.d.ts +6 -0
  236. package/dist/descriptions/index.d.ts.map +1 -0
  237. package/dist/descriptions/index.js +4 -0
  238. package/dist/descriptions/index.js.map +1 -0
  239. package/dist/descriptions/types.d.ts +34 -0
  240. package/dist/descriptions/types.d.ts.map +1 -0
  241. package/dist/divider/index.d.ts +39 -0
  242. package/dist/divider/index.d.ts.map +1 -0
  243. package/dist/divider/index.js +4 -0
  244. package/dist/divider/index.js.map +1 -0
  245. package/dist/divider/types.d.ts +63 -0
  246. package/dist/divider/types.d.ts.map +1 -0
  247. package/dist/drawer/index.d.ts +23 -0
  248. package/dist/drawer/index.d.ts.map +1 -0
  249. package/dist/drawer/index.js +4 -0
  250. package/dist/drawer/index.js.map +1 -0
  251. package/dist/drawer/types.d.ts +309 -0
  252. package/dist/drawer/types.d.ts.map +1 -0
  253. package/dist/dropdown/index.d.ts +6 -0
  254. package/dist/dropdown/index.d.ts.map +1 -0
  255. package/dist/dropdown/index.js +7 -0
  256. package/dist/dropdown/index.js.map +1 -0
  257. package/dist/dropdown/types.d.ts +116 -0
  258. package/dist/dropdown/types.d.ts.map +1 -0
  259. package/dist/empty/index.d.ts +6 -0
  260. package/dist/empty/index.d.ts.map +1 -0
  261. package/dist/empty/index.js +4 -0
  262. package/dist/empty/index.js.map +1 -0
  263. package/dist/empty/types.d.ts +62 -0
  264. package/dist/empty/types.d.ts.map +1 -0
  265. package/dist/fetching-overlay/index.d.ts +10 -0
  266. package/dist/fetching-overlay/index.d.ts.map +1 -0
  267. package/dist/fetching-overlay/index.js +6 -0
  268. package/dist/fetching-overlay/index.js.map +1 -0
  269. package/dist/float-input/index.d.ts +6 -0
  270. package/dist/float-input/index.d.ts.map +1 -0
  271. package/dist/float-input/index.js +6 -0
  272. package/dist/float-input/index.js.map +1 -0
  273. package/dist/float-input/types.d.ts +23 -0
  274. package/dist/float-input/types.d.ts.map +1 -0
  275. package/dist/grid/index.d.ts +6 -0
  276. package/dist/grid/index.d.ts.map +1 -0
  277. package/dist/grid/index.js +4 -0
  278. package/dist/grid/index.js.map +1 -0
  279. package/dist/grid/types.d.ts +21 -0
  280. package/dist/grid/types.d.ts.map +1 -0
  281. package/dist/hooks/index.d.ts +6 -0
  282. package/dist/hooks/index.d.ts.map +1 -0
  283. package/dist/hooks/useControllable.d.ts +6 -0
  284. package/dist/hooks/useControllable.d.ts.map +1 -0
  285. package/dist/hooks/useDebounce.d.ts +2 -0
  286. package/dist/hooks/useDebounce.d.ts.map +1 -0
  287. package/dist/hooks/useMediaQuery.d.ts +2 -0
  288. package/dist/hooks/useMediaQuery.d.ts.map +1 -0
  289. package/dist/hooks/useRipple.d.ts +29 -0
  290. package/dist/hooks/useRipple.d.ts.map +1 -0
  291. package/dist/hooks/useThrottle.d.ts +2 -0
  292. package/dist/hooks/useThrottle.d.ts.map +1 -0
  293. package/dist/image/index.d.ts +6 -0
  294. package/dist/image/index.d.ts.map +1 -0
  295. package/dist/image/index.js +4 -0
  296. package/dist/image/index.js.map +1 -0
  297. package/dist/image/types.d.ts +57 -0
  298. package/dist/image/types.d.ts.map +1 -0
  299. package/dist/index.d.ts +142 -0
  300. package/dist/index.d.ts.map +1 -0
  301. package/dist/index.js +133 -0
  302. package/dist/index.js.map +1 -0
  303. package/dist/input/index.d.ts +6 -0
  304. package/dist/input/index.d.ts.map +1 -0
  305. package/dist/input/index.js +6 -0
  306. package/dist/input/index.js.map +1 -0
  307. package/dist/input/types.d.ts +28 -0
  308. package/dist/input/types.d.ts.map +1 -0
  309. package/dist/input-group/index.d.ts +9 -0
  310. package/dist/input-group/index.d.ts.map +1 -0
  311. package/dist/input-group/index.js +4 -0
  312. package/dist/input-group/index.js.map +1 -0
  313. package/dist/input-group/types.d.ts +68 -0
  314. package/dist/input-group/types.d.ts.map +1 -0
  315. package/dist/input-otp/index.d.ts +7 -0
  316. package/dist/input-otp/index.d.ts.map +1 -0
  317. package/dist/input-otp/index.js +4 -0
  318. package/dist/input-otp/index.js.map +1 -0
  319. package/dist/input-otp/types.d.ts +111 -0
  320. package/dist/input-otp/types.d.ts.map +1 -0
  321. package/dist/input-password/index.d.ts +6 -0
  322. package/dist/input-password/index.d.ts.map +1 -0
  323. package/dist/input-password/index.js +7 -0
  324. package/dist/input-password/index.js.map +1 -0
  325. package/dist/input-password/types.d.ts +16 -0
  326. package/dist/input-password/types.d.ts.map +1 -0
  327. package/dist/kbd/index.d.ts +6 -0
  328. package/dist/kbd/index.d.ts.map +1 -0
  329. package/dist/kbd/index.js +5 -0
  330. package/dist/kbd/index.js.map +1 -0
  331. package/dist/kbd/types.d.ts +26 -0
  332. package/dist/kbd/types.d.ts.map +1 -0
  333. package/dist/link/index.d.ts +9 -0
  334. package/dist/link/index.d.ts.map +1 -0
  335. package/dist/link/index.js +4 -0
  336. package/dist/link/index.js.map +1 -0
  337. package/dist/link/types.d.ts +30 -0
  338. package/dist/link/types.d.ts.map +1 -0
  339. package/dist/menubar/index.d.ts +6 -0
  340. package/dist/menubar/index.d.ts.map +1 -0
  341. package/dist/menubar/index.js +6 -0
  342. package/dist/menubar/index.js.map +1 -0
  343. package/dist/menubar/types.d.ts +40 -0
  344. package/dist/menubar/types.d.ts.map +1 -0
  345. package/dist/modal/index.d.ts +39 -0
  346. package/dist/modal/index.d.ts.map +1 -0
  347. package/dist/modal/index.js +4 -0
  348. package/dist/modal/index.js.map +1 -0
  349. package/dist/modal/types.d.ts +77 -0
  350. package/dist/modal/types.d.ts.map +1 -0
  351. package/dist/multi-select/index.d.ts +6 -0
  352. package/dist/multi-select/index.d.ts.map +1 -0
  353. package/dist/multi-select/index.js +8 -0
  354. package/dist/multi-select/index.js.map +1 -0
  355. package/dist/multi-select/types.d.ts +81 -0
  356. package/dist/multi-select/types.d.ts.map +1 -0
  357. package/dist/multi-select/utils.d.ts +12 -0
  358. package/dist/multi-select/utils.d.ts.map +1 -0
  359. package/dist/navigation-menu/index.d.ts +5 -0
  360. package/dist/navigation-menu/index.d.ts.map +1 -0
  361. package/dist/navigation-menu/index.js +4 -0
  362. package/dist/navigation-menu/index.js.map +1 -0
  363. package/dist/navigation-menu/types.d.ts +37 -0
  364. package/dist/navigation-menu/types.d.ts.map +1 -0
  365. package/dist/notification/index.d.ts +6 -0
  366. package/dist/notification/index.d.ts.map +1 -0
  367. package/dist/notification/index.js +5 -0
  368. package/dist/notification/index.js.map +1 -0
  369. package/dist/notification/types.d.ts +90 -0
  370. package/dist/notification/types.d.ts.map +1 -0
  371. package/dist/number-input/index.d.ts +6 -0
  372. package/dist/number-input/index.d.ts.map +1 -0
  373. package/dist/number-input/index.js +7 -0
  374. package/dist/number-input/index.js.map +1 -0
  375. package/dist/number-input/types.d.ts +28 -0
  376. package/dist/number-input/types.d.ts.map +1 -0
  377. package/dist/pagination/index.d.ts +6 -0
  378. package/dist/pagination/index.d.ts.map +1 -0
  379. package/dist/pagination/index.js +5 -0
  380. package/dist/pagination/index.js.map +1 -0
  381. package/dist/pagination/types.d.ts +87 -0
  382. package/dist/pagination/types.d.ts.map +1 -0
  383. package/dist/popover/index.d.ts +19 -0
  384. package/dist/popover/index.d.ts.map +1 -0
  385. package/dist/popover/index.js +5 -0
  386. package/dist/popover/index.js.map +1 -0
  387. package/dist/popover/types.d.ts +31 -0
  388. package/dist/popover/types.d.ts.map +1 -0
  389. package/dist/progress/index.d.ts +6 -0
  390. package/dist/progress/index.d.ts.map +1 -0
  391. package/dist/progress/index.js +4 -0
  392. package/dist/progress/index.js.map +1 -0
  393. package/dist/progress/styles.d.ts +39 -0
  394. package/dist/progress/styles.d.ts.map +1 -0
  395. package/dist/progress/types.d.ts +100 -0
  396. package/dist/progress/types.d.ts.map +1 -0
  397. package/dist/radio/index.d.ts +6 -0
  398. package/dist/radio/index.d.ts.map +1 -0
  399. package/dist/radio/index.js +5 -0
  400. package/dist/radio/index.js.map +1 -0
  401. package/dist/radio/types.d.ts +20 -0
  402. package/dist/radio/types.d.ts.map +1 -0
  403. package/dist/radio-group/index.d.ts +6 -0
  404. package/dist/radio-group/index.d.ts.map +1 -0
  405. package/dist/radio-group/index.js +4 -0
  406. package/dist/radio-group/index.js.map +1 -0
  407. package/dist/radio-group/types.d.ts +43 -0
  408. package/dist/radio-group/types.d.ts.map +1 -0
  409. package/dist/rating/index.d.ts +6 -0
  410. package/dist/rating/index.d.ts.map +1 -0
  411. package/dist/rating/index.js +4 -0
  412. package/dist/rating/index.js.map +1 -0
  413. package/dist/rating/types.d.ts +64 -0
  414. package/dist/rating/types.d.ts.map +1 -0
  415. package/dist/scroll-area/index.d.ts +10 -0
  416. package/dist/scroll-area/index.d.ts.map +1 -0
  417. package/dist/scroll-area/index.js +4 -0
  418. package/dist/scroll-area/index.js.map +1 -0
  419. package/dist/scroll-area/types.d.ts +24 -0
  420. package/dist/scroll-area/types.d.ts.map +1 -0
  421. package/dist/select/index.d.ts +6 -0
  422. package/dist/select/index.d.ts.map +1 -0
  423. package/dist/select/index.js +8 -0
  424. package/dist/select/index.js.map +1 -0
  425. package/dist/select/types.d.ts +34 -0
  426. package/dist/select/types.d.ts.map +1 -0
  427. package/dist/shared/useSelectBase.d.ts +56 -0
  428. package/dist/shared/useSelectBase.d.ts.map +1 -0
  429. package/dist/skeleton/index.d.ts +6 -0
  430. package/dist/skeleton/index.d.ts.map +1 -0
  431. package/dist/skeleton/index.js +5 -0
  432. package/dist/skeleton/index.js.map +1 -0
  433. package/dist/skeleton/types.d.ts +10 -0
  434. package/dist/skeleton/types.d.ts.map +1 -0
  435. package/dist/slider/index.d.ts +6 -0
  436. package/dist/slider/index.d.ts.map +1 -0
  437. package/dist/slider/index.js +4 -0
  438. package/dist/slider/index.js.map +1 -0
  439. package/dist/slider/types.d.ts +76 -0
  440. package/dist/slider/types.d.ts.map +1 -0
  441. package/dist/spinner/index.d.ts +6 -0
  442. package/dist/spinner/index.d.ts.map +1 -0
  443. package/dist/spinner/index.js +5 -0
  444. package/dist/spinner/index.js.map +1 -0
  445. package/dist/spinner/types.d.ts +10 -0
  446. package/dist/spinner/types.d.ts.map +1 -0
  447. package/dist/stepper/index.d.ts +6 -0
  448. package/dist/stepper/index.d.ts.map +1 -0
  449. package/dist/stepper/index.js +4 -0
  450. package/dist/stepper/index.js.map +1 -0
  451. package/dist/stepper/types.d.ts +86 -0
  452. package/dist/stepper/types.d.ts.map +1 -0
  453. package/dist/styles/themes/index.d.ts +9 -0
  454. package/dist/styles/themes/index.d.ts.map +1 -0
  455. package/dist/styles/themes/presets/index.d.ts +21 -0
  456. package/dist/styles/themes/presets/index.d.ts.map +1 -0
  457. package/dist/styles/tokens.d.ts +428 -0
  458. package/dist/styles/tokens.d.ts.map +1 -0
  459. package/dist/switch/index.d.ts +6 -0
  460. package/dist/switch/index.d.ts.map +1 -0
  461. package/dist/switch/index.js +5 -0
  462. package/dist/switch/index.js.map +1 -0
  463. package/dist/switch/types.d.ts +80 -0
  464. package/dist/switch/types.d.ts.map +1 -0
  465. package/dist/table/EditableCell.d.ts +13 -0
  466. package/dist/table/EditableCell.d.ts.map +1 -0
  467. package/dist/table/TableActions.d.ts +21 -0
  468. package/dist/table/TableActions.d.ts.map +1 -0
  469. package/dist/table/TableCell.d.ts +12 -0
  470. package/dist/table/TableCell.d.ts.map +1 -0
  471. package/dist/table/TableHeaderCell.d.ts +16 -0
  472. package/dist/table/TableHeaderCell.d.ts.map +1 -0
  473. package/dist/table/TableRow.d.ts +16 -0
  474. package/dist/table/TableRow.d.ts.map +1 -0
  475. package/dist/table/TableSkeleton.d.ts +13 -0
  476. package/dist/table/TableSkeleton.d.ts.map +1 -0
  477. package/dist/table/index.d.ts +15 -0
  478. package/dist/table/index.d.ts.map +1 -0
  479. package/dist/table/index.js +13 -0
  480. package/dist/table/index.js.map +1 -0
  481. package/dist/table/types.d.ts +110 -0
  482. package/dist/table/types.d.ts.map +1 -0
  483. package/dist/table/variants.d.ts +4 -0
  484. package/dist/table/variants.d.ts.map +1 -0
  485. package/dist/tabs/index.d.ts +7 -0
  486. package/dist/tabs/index.d.ts.map +1 -0
  487. package/dist/tabs/index.js +5 -0
  488. package/dist/tabs/index.js.map +1 -0
  489. package/dist/tabs/types.d.ts +90 -0
  490. package/dist/tabs/types.d.ts.map +1 -0
  491. package/dist/tag/index.d.ts +49 -0
  492. package/dist/tag/index.d.ts.map +1 -0
  493. package/dist/tag/index.js +5 -0
  494. package/dist/tag/index.js.map +1 -0
  495. package/dist/tag/types.d.ts +23 -0
  496. package/dist/tag/types.d.ts.map +1 -0
  497. package/dist/textarea/index.d.ts +6 -0
  498. package/dist/textarea/index.d.ts.map +1 -0
  499. package/dist/textarea/index.js +4 -0
  500. package/dist/textarea/index.js.map +1 -0
  501. package/dist/textarea/types.d.ts +84 -0
  502. package/dist/textarea/types.d.ts.map +1 -0
  503. package/dist/theme/ThemeProvider.d.ts +44 -0
  504. package/dist/theme/ThemeProvider.d.ts.map +1 -0
  505. package/dist/theme/index.d.ts +7 -0
  506. package/dist/theme/index.d.ts.map +1 -0
  507. package/dist/theme/index.js +3 -0
  508. package/dist/theme/index.js.map +1 -0
  509. package/dist/theme/types.d.ts +47 -0
  510. package/dist/theme/types.d.ts.map +1 -0
  511. package/dist/timeline/index.d.ts +6 -0
  512. package/dist/timeline/index.d.ts.map +1 -0
  513. package/dist/timeline/index.js +4 -0
  514. package/dist/timeline/index.js.map +1 -0
  515. package/dist/timeline/types.d.ts +27 -0
  516. package/dist/timeline/types.d.ts.map +1 -0
  517. package/dist/toast/index.d.ts +12 -0
  518. package/dist/toast/index.d.ts.map +1 -0
  519. package/dist/toast/index.js +5 -0
  520. package/dist/toast/index.js.map +1 -0
  521. package/dist/toast/types.d.ts +49 -0
  522. package/dist/toast/types.d.ts.map +1 -0
  523. package/dist/toggle/index.d.ts +6 -0
  524. package/dist/toggle/index.d.ts.map +1 -0
  525. package/dist/toggle/index.js +5 -0
  526. package/dist/toggle/index.js.map +1 -0
  527. package/dist/toggle/types.d.ts +57 -0
  528. package/dist/toggle/types.d.ts.map +1 -0
  529. package/dist/toggle-group/index.d.ts +6 -0
  530. package/dist/toggle-group/index.d.ts.map +1 -0
  531. package/dist/toggle-group/index.js +5 -0
  532. package/dist/toggle-group/index.js.map +1 -0
  533. package/dist/toggle-group/types.d.ts +80 -0
  534. package/dist/toggle-group/types.d.ts.map +1 -0
  535. package/dist/tooltip/index.d.ts +9 -0
  536. package/dist/tooltip/index.d.ts.map +1 -0
  537. package/dist/tooltip/index.js +5 -0
  538. package/dist/tooltip/index.js.map +1 -0
  539. package/dist/tooltip/types.d.ts +72 -0
  540. package/dist/tooltip/types.d.ts.map +1 -0
  541. package/dist/transfer/index.d.ts +5 -0
  542. package/dist/transfer/index.d.ts.map +1 -0
  543. package/dist/transfer/index.js +6 -0
  544. package/dist/transfer/index.js.map +1 -0
  545. package/dist/transfer/types.d.ts +83 -0
  546. package/dist/transfer/types.d.ts.map +1 -0
  547. package/dist/transfer/utils.d.ts +13 -0
  548. package/dist/transfer/utils.d.ts.map +1 -0
  549. package/dist/tree/index.d.ts +6 -0
  550. package/dist/tree/index.d.ts.map +1 -0
  551. package/dist/tree/index.js +4 -0
  552. package/dist/tree/index.js.map +1 -0
  553. package/dist/tree/types.d.ts +143 -0
  554. package/dist/tree/types.d.ts.map +1 -0
  555. package/dist/tree-select/index.d.ts +6 -0
  556. package/dist/tree-select/index.d.ts.map +1 -0
  557. package/dist/tree-select/index.js +7 -0
  558. package/dist/tree-select/index.js.map +1 -0
  559. package/dist/tree-select/types.d.ts +147 -0
  560. package/dist/tree-select/types.d.ts.map +1 -0
  561. package/dist/types.d.ts +53 -0
  562. package/dist/types.d.ts.map +1 -0
  563. package/dist/upload/index.d.ts +7 -0
  564. package/dist/upload/index.d.ts.map +1 -0
  565. package/dist/upload/index.js +5 -0
  566. package/dist/upload/index.js.map +1 -0
  567. package/dist/upload/types.d.ts +94 -0
  568. package/dist/upload/types.d.ts.map +1 -0
  569. package/dist/upload/utils.d.ts +26 -0
  570. package/dist/upload/utils.d.ts.map +1 -0
  571. package/dist/utils.d.ts +63 -0
  572. package/dist/utils.d.ts.map +1 -0
  573. package/dist/variants.d.ts +315 -0
  574. package/dist/variants.d.ts.map +1 -0
  575. package/package.json +1 -1
  576. package/styles/global.css +179 -245
@@ -0,0 +1,349 @@
1
+ import { componentColors } from './chunk-POXI7JJ4.js';
2
+ import { cn } from './chunk-NGYLRX6F.js';
3
+ import { cva } from 'class-variance-authority';
4
+ import React, { useState, useRef, useId, useLayoutEffect, useEffect, useCallback } from 'react';
5
+ import { jsxs, jsx } from 'react/jsx-runtime';
6
+
7
+ var useIsomorphicLayoutEffect = typeof window !== "undefined" ? useLayoutEffect : useEffect;
8
+ var pillActiveClasses = {
9
+ default: "text-text-primary",
10
+ primary: "text-white",
11
+ secondary: "text-white",
12
+ accent: "text-white",
13
+ success: "text-white",
14
+ error: "text-white",
15
+ warning: "text-white",
16
+ info: "text-white"
17
+ };
18
+ var defaultActiveClasses = {
19
+ default: "text-text-primary",
20
+ primary: "text-primary",
21
+ secondary: "text-secondary",
22
+ accent: "text-accent",
23
+ success: "text-success",
24
+ error: "text-error",
25
+ warning: "text-warning",
26
+ info: "text-info"
27
+ };
28
+ var softActiveClasses = {
29
+ default: "text-text-primary",
30
+ primary: "text-primary",
31
+ secondary: "text-secondary",
32
+ accent: "text-accent",
33
+ success: "text-success",
34
+ error: "text-error",
35
+ warning: "text-warning",
36
+ info: "text-info"
37
+ };
38
+ var pillIndicatorClasses = {
39
+ default: "bg-background",
40
+ primary: "bg-primary",
41
+ secondary: "bg-secondary",
42
+ accent: "bg-accent",
43
+ success: "bg-success",
44
+ error: "bg-error",
45
+ warning: "bg-warning",
46
+ info: "bg-info"
47
+ };
48
+ var underlineIndicatorClasses = {
49
+ default: "bg-border",
50
+ primary: "bg-primary",
51
+ secondary: "bg-secondary",
52
+ accent: "bg-accent",
53
+ success: "bg-success",
54
+ error: "bg-error",
55
+ warning: "bg-warning",
56
+ info: "bg-info"
57
+ };
58
+ var createActiveTabVariants = (variant, classMap) => {
59
+ return componentColors.map((color) => ({
60
+ variant,
61
+ color,
62
+ active: true,
63
+ className: classMap[color] || classMap.default
64
+ }));
65
+ };
66
+ var tabListVariants = cva("flex relative", {
67
+ variants: {
68
+ size: {
69
+ xs: "gap-(--tabs-gap-xs)",
70
+ sm: "gap-(--tabs-gap-sm)",
71
+ md: "gap-(--tabs-gap-md)",
72
+ lg: "gap-(--tabs-gap-lg)"
73
+ },
74
+ variant: {
75
+ default: "border-b",
76
+ solid: "border-b",
77
+ soft: "border-b",
78
+ pill: "bg-surface p-0.5 rounded-lg border border-border gap-0 w-fit"
79
+ }
80
+ },
81
+ defaultVariants: {
82
+ size: "md",
83
+ variant: "default"
84
+ }
85
+ });
86
+ var tabItemVariants = cva(
87
+ "relative z-[1] font-medium transition-colors duration-200 ease-out cursor-pointer flex items-center gap-2",
88
+ {
89
+ variants: {
90
+ size: {
91
+ xs: "text-xs px-(--tabs-padding-x-xs) py-(--tabs-padding-y-xs)",
92
+ sm: "text-sm px-(--tabs-padding-x-sm) py-(--tabs-padding-y-sm)",
93
+ md: "text-base px-(--tabs-padding-x-md) py-(--tabs-padding-y-md)",
94
+ lg: "text-lg px-(--tabs-padding-x-lg) py-(--tabs-padding-y-lg)"
95
+ },
96
+ variant: {
97
+ default: "pb-2 -mb-px",
98
+ solid: "pb-2 -mb-px",
99
+ soft: "pb-2 -mb-px",
100
+ pill: "rounded-md"
101
+ },
102
+ color: {
103
+ default: "",
104
+ primary: "",
105
+ secondary: "",
106
+ accent: "",
107
+ success: "",
108
+ error: "",
109
+ warning: "",
110
+ info: ""
111
+ },
112
+ active: {
113
+ true: "",
114
+ false: ""
115
+ }
116
+ },
117
+ compoundVariants: [
118
+ // Inactive states (all variants)
119
+ ...componentColors.map((color) => ({
120
+ color,
121
+ active: false,
122
+ className: "text-text-secondary hover:text-text-primary"
123
+ })),
124
+ // Active pill variant
125
+ ...createActiveTabVariants("pill", pillActiveClasses),
126
+ // Active default variant
127
+ ...createActiveTabVariants("default", defaultActiveClasses),
128
+ // Active solid variant
129
+ ...createActiveTabVariants("solid", defaultActiveClasses),
130
+ // Active soft variant
131
+ ...createActiveTabVariants("soft", softActiveClasses),
132
+ // Inactive pill variant hover
133
+ ...componentColors.map((color) => ({
134
+ variant: "pill",
135
+ color,
136
+ active: false,
137
+ className: "bg-transparent hover:bg-background/50"
138
+ }))
139
+ ],
140
+ defaultVariants: {
141
+ size: "md",
142
+ variant: "default",
143
+ color: "primary",
144
+ active: false
145
+ }
146
+ }
147
+ );
148
+ var Tabs = React.memo(
149
+ ({
150
+ items,
151
+ defaultActiveKey,
152
+ activeKey: controlledActiveKey,
153
+ color = "primary",
154
+ size = "md",
155
+ variant = "default",
156
+ onChange,
157
+ className,
158
+ classNames
159
+ }) => {
160
+ const [internalActiveKey, setInternalActiveKey] = useState(
161
+ defaultActiveKey || items[0]?.key || ""
162
+ );
163
+ const tabListRef = useRef(null);
164
+ const tabRefs = useRef(/* @__PURE__ */ new Map());
165
+ const [indicatorStyle, setIndicatorStyle] = useState(
166
+ {}
167
+ );
168
+ const [hasInitialized, setHasInitialized] = useState(false);
169
+ const uniqueId = useId();
170
+ const activeKey = controlledActiveKey !== void 0 ? controlledActiveKey : internalActiveKey;
171
+ useIsomorphicLayoutEffect(() => {
172
+ const activeTab = tabRefs.current.get(activeKey);
173
+ const tabList = tabListRef.current;
174
+ if (!activeTab || !tabList) return;
175
+ const listRect = tabList.getBoundingClientRect();
176
+ const tabRect = activeTab.getBoundingClientRect();
177
+ const isPill2 = variant === "pill";
178
+ if (isPill2) {
179
+ setIndicatorStyle({
180
+ transform: `translateX(${tabRect.left - listRect.left - 2}px)`,
181
+ width: `${tabRect.width}px`,
182
+ height: `${tabRect.height}px`,
183
+ opacity: 1
184
+ });
185
+ } else {
186
+ setIndicatorStyle({
187
+ transform: `translateX(${tabRect.left - listRect.left - 2}px)`,
188
+ width: `${tabRect.width}px`,
189
+ opacity: 1
190
+ });
191
+ }
192
+ if (!hasInitialized) {
193
+ requestAnimationFrame(() => setHasInitialized(true));
194
+ }
195
+ }, [activeKey, items, variant, size, hasInitialized]);
196
+ const handleTabClick = useCallback(
197
+ (key, disabled) => {
198
+ if (disabled) return;
199
+ if (controlledActiveKey === void 0) {
200
+ setInternalActiveKey(key);
201
+ }
202
+ onChange?.(key);
203
+ },
204
+ [controlledActiveKey, onChange]
205
+ );
206
+ const handleKeyDown = useCallback(
207
+ (event, currentIndex) => {
208
+ const enabledIndices = items.map((item, i) => !item.disabled ? i : -1).filter((i) => i !== -1);
209
+ const currentEnabledIndex = enabledIndices.indexOf(currentIndex);
210
+ let newIndex;
211
+ switch (event.key) {
212
+ case "ArrowLeft":
213
+ case "ArrowUp":
214
+ event.preventDefault();
215
+ newIndex = enabledIndices[currentEnabledIndex > 0 ? currentEnabledIndex - 1 : enabledIndices.length - 1];
216
+ break;
217
+ case "ArrowRight":
218
+ case "ArrowDown":
219
+ event.preventDefault();
220
+ newIndex = enabledIndices[currentEnabledIndex < enabledIndices.length - 1 ? currentEnabledIndex + 1 : 0];
221
+ break;
222
+ case "Home":
223
+ event.preventDefault();
224
+ newIndex = enabledIndices[0];
225
+ break;
226
+ case "End":
227
+ event.preventDefault();
228
+ newIndex = enabledIndices[enabledIndices.length - 1];
229
+ break;
230
+ }
231
+ if (newIndex !== void 0) {
232
+ const newItem = items[newIndex];
233
+ if (newItem) {
234
+ handleTabClick(newItem.key);
235
+ const btn = tabRefs.current.get(newItem.key);
236
+ btn?.focus();
237
+ }
238
+ }
239
+ },
240
+ [items, handleTabClick]
241
+ );
242
+ const activeItem = items.find((item) => item.key === activeKey);
243
+ const isPill = variant === "pill";
244
+ const indicatorColorClass = isPill ? pillIndicatorClasses[color] || pillIndicatorClasses.default : underlineIndicatorClasses[color] || underlineIndicatorClasses.default;
245
+ return /* @__PURE__ */ jsxs(
246
+ "div",
247
+ {
248
+ "data-slot": "tabs_root",
249
+ className: cn("tabs_root w-full", classNames?.root, className),
250
+ children: [
251
+ /* @__PURE__ */ jsxs(
252
+ "div",
253
+ {
254
+ ref: tabListRef,
255
+ role: "tablist",
256
+ "aria-orientation": "horizontal",
257
+ "data-slot": "tabs_list",
258
+ className: cn(
259
+ "tabs_list",
260
+ tabListVariants({ size, variant }),
261
+ variant !== "pill" && "border-border",
262
+ classNames?.list
263
+ ),
264
+ children: [
265
+ /* @__PURE__ */ jsx(
266
+ "span",
267
+ {
268
+ "data-slot": "tabs_indicator",
269
+ className: cn(
270
+ "tabs_indicator absolute pointer-events-none",
271
+ isPill ? cn("rounded-md shadow-sm top-0.5", indicatorColorClass) : cn("bottom-0 h-0.5 rounded-full", indicatorColorClass),
272
+ hasInitialized ? "transition-[transform,width] duration-300 ease-out" : "",
273
+ classNames?.indicator
274
+ ),
275
+ style: indicatorStyle,
276
+ "aria-hidden": "true"
277
+ }
278
+ ),
279
+ items.map((item, index) => {
280
+ const isActive = item.key === activeKey;
281
+ const tabId = `tab-${uniqueId}-${item.key}`;
282
+ const panelId = `panel-${uniqueId}-${item.key}`;
283
+ return /* @__PURE__ */ jsxs(
284
+ "button",
285
+ {
286
+ ref: (el) => {
287
+ if (el) tabRefs.current.set(item.key, el);
288
+ else tabRefs.current.delete(item.key);
289
+ },
290
+ id: tabId,
291
+ role: "tab",
292
+ type: "button",
293
+ "aria-selected": isActive,
294
+ "aria-controls": panelId,
295
+ tabIndex: isActive ? 0 : -1,
296
+ "data-slot": "tabs_tab",
297
+ className: cn(
298
+ "tabs_tab",
299
+ tabItemVariants({
300
+ size,
301
+ variant,
302
+ color,
303
+ active: isActive
304
+ }),
305
+ item.disabled && "opacity-50 cursor-not-allowed",
306
+ classNames?.tab,
307
+ isActive && classNames?.tabActive
308
+ ),
309
+ onClick: () => handleTabClick(item.key, item.disabled),
310
+ onKeyDown: (e) => handleKeyDown(e, index),
311
+ disabled: item.disabled,
312
+ children: [
313
+ item.icon && /* @__PURE__ */ jsx("span", { "aria-hidden": "true", children: item.icon }),
314
+ item.label
315
+ ]
316
+ },
317
+ item.key
318
+ );
319
+ })
320
+ ]
321
+ }
322
+ ),
323
+ activeItem?.content && /* @__PURE__ */ jsx(
324
+ "div",
325
+ {
326
+ id: `panel-${uniqueId}-${activeItem.key}`,
327
+ role: "tabpanel",
328
+ "aria-labelledby": `tab-${uniqueId}-${activeItem.key}`,
329
+ tabIndex: 0,
330
+ "data-slot": "tabs_panel",
331
+ className: cn(
332
+ "tabs_panel",
333
+ "py-4 animate-in fade-in slide-in-from-bottom-2 duration-300",
334
+ classNames?.panel
335
+ ),
336
+ children: activeItem?.content
337
+ }
338
+ )
339
+ ]
340
+ }
341
+ );
342
+ }
343
+ );
344
+ Tabs.displayName = "Tabs";
345
+ var tabs_default = Tabs;
346
+
347
+ export { tabs_default };
348
+ //# sourceMappingURL=chunk-6G3BMY4N.js.map
349
+ //# sourceMappingURL=chunk-6G3BMY4N.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/tabs/index.tsx"],"names":["isPill"],"mappings":"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","file":"chunk-6G3BMY4N.js","sourcesContent":["\"use client\";\n\nimport { cva } from \"class-variance-authority\";\nimport React, {\n useState,\n useId,\n useCallback,\n useRef,\n useLayoutEffect,\n useEffect,\n} from \"react\";\n\nimport { cn } from \"../utils\";\nimport { componentColors } from \"../variants\";\nimport type { TabsColor, TabsProps, TabsVariant } from \"./types\";\n\n// Use useLayoutEffect on client, useEffect on server (SSR safe)\nconst useIsomorphicLayoutEffect =\n typeof window !== \"undefined\" ? useLayoutEffect : useEffect;\n\n// Static class mappings for Tailwind JIT compatibility\nconst pillActiveClasses: Record<string, string> = {\n default: \"text-text-primary\",\n primary: \"text-white\",\n secondary: \"text-white\",\n accent: \"text-white\",\n success: \"text-white\",\n error: \"text-white\",\n warning: \"text-white\",\n info: \"text-white\",\n};\n\nconst defaultActiveClasses: Record<string, string> = {\n default: \"text-text-primary\",\n primary: \"text-primary\",\n secondary: \"text-secondary\",\n accent: \"text-accent\",\n success: \"text-success\",\n error: \"text-error\",\n warning: \"text-warning\",\n info: \"text-info\",\n};\n\nconst softActiveClasses: Record<string, string> = {\n default: \"text-text-primary\",\n primary: \"text-primary\",\n secondary: \"text-secondary\",\n accent: \"text-accent\",\n success: \"text-success\",\n error: \"text-error\",\n warning: \"text-warning\",\n info: \"text-info\",\n};\n\n// Sliding indicator background colors for pill variant\nconst pillIndicatorClasses: Record<string, string> = {\n default: \"bg-background\",\n primary: \"bg-primary\",\n secondary: \"bg-secondary\",\n accent: \"bg-accent\",\n success: \"bg-success\",\n error: \"bg-error\",\n warning: \"bg-warning\",\n info: \"bg-info\",\n};\n\n// Sliding indicator colors for underline variants\nconst underlineIndicatorClasses: Record<string, string> = {\n default: \"bg-border\",\n primary: \"bg-primary\",\n secondary: \"bg-secondary\",\n accent: \"bg-accent\",\n success: \"bg-success\",\n error: \"bg-error\",\n warning: \"bg-warning\",\n info: \"bg-info\",\n};\n\n// Tab-specific variant generators for DRY\nconst createActiveTabVariants = (\n variant: TabsVariant,\n classMap: Record<string, string>,\n) => {\n return componentColors.map((color) => ({\n variant,\n color: color as TabsColor,\n active: true as const,\n className: classMap[color] || classMap.default,\n }));\n};\n\nconst tabListVariants = cva(\"flex relative\", {\n variants: {\n size: {\n xs: \"gap-(--tabs-gap-xs)\",\n sm: \"gap-(--tabs-gap-sm)\",\n md: \"gap-(--tabs-gap-md)\",\n lg: \"gap-(--tabs-gap-lg)\",\n },\n variant: {\n default: \"border-b\",\n solid: \"border-b\",\n soft: \"border-b\",\n pill: \"bg-surface p-0.5 rounded-lg border border-border gap-0 w-fit\",\n },\n },\n defaultVariants: {\n size: \"md\",\n variant: \"default\",\n },\n});\n\nconst tabItemVariants = cva(\n \"relative z-[1] font-medium transition-colors duration-200 ease-out cursor-pointer flex items-center gap-2\",\n {\n variants: {\n size: {\n xs: \"text-xs px-(--tabs-padding-x-xs) py-(--tabs-padding-y-xs)\",\n sm: \"text-sm px-(--tabs-padding-x-sm) py-(--tabs-padding-y-sm)\",\n md: \"text-base px-(--tabs-padding-x-md) py-(--tabs-padding-y-md)\",\n lg: \"text-lg px-(--tabs-padding-x-lg) py-(--tabs-padding-y-lg)\",\n },\n variant: {\n default: \"pb-2 -mb-px\",\n solid: \"pb-2 -mb-px\",\n soft: \"pb-2 -mb-px\",\n pill: \"rounded-md\",\n },\n color: {\n default: \"\",\n primary: \"\",\n secondary: \"\",\n accent: \"\",\n success: \"\",\n error: \"\",\n warning: \"\",\n info: \"\",\n },\n active: {\n true: \"\",\n false: \"\",\n },\n },\n compoundVariants: [\n // Inactive states (all variants)\n ...componentColors.map((color) => ({\n color: color as TabsColor,\n active: false as const,\n className: \"text-text-secondary hover:text-text-primary\",\n })),\n\n // Active pill variant\n ...createActiveTabVariants(\"pill\", pillActiveClasses),\n\n // Active default variant\n ...createActiveTabVariants(\"default\", defaultActiveClasses),\n\n // Active solid variant\n ...createActiveTabVariants(\"solid\", defaultActiveClasses),\n\n // Active soft variant\n ...createActiveTabVariants(\"soft\", softActiveClasses),\n\n // Inactive pill variant hover\n ...componentColors.map((color) => ({\n variant: \"pill\" as const,\n color: color as TabsColor,\n active: false as const,\n className: \"bg-transparent hover:bg-background/50\",\n })),\n ],\n defaultVariants: {\n size: \"md\",\n variant: \"default\",\n color: \"primary\",\n active: false,\n },\n },\n);\n\nconst Tabs = React.memo<TabsProps>(\n ({\n items,\n defaultActiveKey,\n activeKey: controlledActiveKey,\n color = \"primary\",\n size = \"md\",\n variant = \"default\",\n onChange,\n className,\n classNames,\n }) => {\n const [internalActiveKey, setInternalActiveKey] = useState(\n defaultActiveKey || items[0]?.key || \"\",\n );\n const tabListRef = useRef<HTMLDivElement>(null);\n const tabRefs = useRef<Map<string, HTMLButtonElement>>(new Map());\n const [indicatorStyle, setIndicatorStyle] = useState<React.CSSProperties>(\n {},\n );\n const [hasInitialized, setHasInitialized] = useState(false);\n\n // Generate unique IDs for accessibility\n const uniqueId = useId();\n\n const activeKey =\n controlledActiveKey !== undefined\n ? controlledActiveKey\n : internalActiveKey;\n\n // Measure and position the sliding indicator\n useIsomorphicLayoutEffect(() => {\n const activeTab = tabRefs.current.get(activeKey);\n const tabList = tabListRef.current;\n if (!activeTab || !tabList) return;\n\n const listRect = tabList.getBoundingClientRect();\n const tabRect = activeTab.getBoundingClientRect();\n\n const isPill = variant === \"pill\";\n\n if (isPill) {\n setIndicatorStyle({\n transform: `translateX(${tabRect.left - listRect.left - 2}px)`,\n width: `${tabRect.width}px`,\n height: `${tabRect.height}px`,\n opacity: 1,\n });\n } else {\n setIndicatorStyle({\n transform: `translateX(${tabRect.left - listRect.left - 2}px)`,\n width: `${tabRect.width}px`,\n opacity: 1,\n });\n }\n\n // Enable transitions after initial positioning\n if (!hasInitialized) {\n requestAnimationFrame(() => setHasInitialized(true));\n }\n }, [activeKey, items, variant, size, hasInitialized]);\n\n const handleTabClick = useCallback(\n (key: string, disabled?: boolean) => {\n if (disabled) return;\n\n if (controlledActiveKey === undefined) {\n setInternalActiveKey(key);\n }\n onChange?.(key);\n },\n [controlledActiveKey, onChange],\n );\n\n // Handle keyboard navigation (arrow keys, Home, End)\n const handleKeyDown = useCallback(\n (event: React.KeyboardEvent<HTMLButtonElement>, currentIndex: number) => {\n const enabledIndices = items\n .map((item, i) => (!item.disabled ? i : -1))\n .filter((i): i is number => i !== -1);\n const currentEnabledIndex = enabledIndices.indexOf(currentIndex);\n\n let newIndex: number | undefined;\n\n switch (event.key) {\n case \"ArrowLeft\":\n case \"ArrowUp\":\n event.preventDefault();\n newIndex =\n enabledIndices[\n currentEnabledIndex > 0\n ? currentEnabledIndex - 1\n : enabledIndices.length - 1\n ];\n break;\n case \"ArrowRight\":\n case \"ArrowDown\":\n event.preventDefault();\n newIndex =\n enabledIndices[\n currentEnabledIndex < enabledIndices.length - 1\n ? currentEnabledIndex + 1\n : 0\n ];\n break;\n case \"Home\":\n event.preventDefault();\n newIndex = enabledIndices[0];\n break;\n case \"End\":\n event.preventDefault();\n newIndex = enabledIndices[enabledIndices.length - 1];\n break;\n }\n\n if (newIndex !== undefined) {\n const newItem = items[newIndex];\n if (newItem) {\n handleTabClick(newItem.key);\n // Focus the new tab\n const btn = tabRefs.current.get(newItem.key);\n btn?.focus();\n }\n }\n },\n [items, handleTabClick],\n );\n\n const activeItem = items.find((item) => item.key === activeKey);\n const isPill = variant === \"pill\";\n\n // Indicator element class based on variant + color\n const indicatorColorClass = isPill\n ? pillIndicatorClasses[color] || pillIndicatorClasses.default\n : underlineIndicatorClasses[color] || underlineIndicatorClasses.default;\n\n return (\n <div\n data-slot=\"tabs_root\"\n className={cn(\"tabs_root w-full\", classNames?.root, className)}\n >\n <div\n ref={tabListRef}\n role=\"tablist\"\n aria-orientation=\"horizontal\"\n data-slot=\"tabs_list\"\n className={cn(\n \"tabs_list\",\n tabListVariants({ size, variant }),\n variant !== \"pill\" && \"border-border\",\n classNames?.list,\n )}\n >\n {/* Sliding indicator */}\n <span\n data-slot=\"tabs_indicator\"\n className={cn(\n \"tabs_indicator absolute pointer-events-none\",\n isPill\n ? cn(\"rounded-md shadow-sm top-0.5\", indicatorColorClass)\n : cn(\"bottom-0 h-0.5 rounded-full\", indicatorColorClass),\n hasInitialized\n ? \"transition-[transform,width] duration-300 ease-out\"\n : \"\",\n classNames?.indicator,\n )}\n style={indicatorStyle}\n aria-hidden=\"true\"\n />\n\n {items.map((item, index) => {\n const isActive = item.key === activeKey;\n const tabId = `tab-${uniqueId}-${item.key}`;\n const panelId = `panel-${uniqueId}-${item.key}`;\n\n return (\n <button\n key={item.key}\n ref={(el) => {\n if (el) tabRefs.current.set(item.key, el);\n else tabRefs.current.delete(item.key);\n }}\n id={tabId}\n role=\"tab\"\n type=\"button\"\n aria-selected={isActive}\n aria-controls={panelId}\n tabIndex={isActive ? 0 : -1}\n data-slot=\"tabs_tab\"\n className={cn(\n \"tabs_tab\",\n tabItemVariants({\n size,\n variant,\n color,\n active: isActive,\n }),\n item.disabled && \"opacity-50 cursor-not-allowed\",\n classNames?.tab,\n isActive && classNames?.tabActive,\n )}\n onClick={() => handleTabClick(item.key, item.disabled)}\n onKeyDown={(e) => handleKeyDown(e, index)}\n disabled={item.disabled}\n >\n {item.icon && <span aria-hidden=\"true\">{item.icon}</span>}\n {item.label}\n </button>\n );\n })}\n </div>\n\n {activeItem?.content && (\n <div\n id={`panel-${uniqueId}-${activeItem.key}`}\n role=\"tabpanel\"\n aria-labelledby={`tab-${uniqueId}-${activeItem.key}`}\n tabIndex={0}\n data-slot=\"tabs_panel\"\n className={cn(\n \"tabs_panel\",\n \"py-4 animate-in fade-in slide-in-from-bottom-2 duration-300\",\n classNames?.panel,\n )}\n >\n {activeItem?.content}\n </div>\n )}\n </div>\n );\n },\n);\n\nTabs.displayName = \"Tabs\";\n\nexport type { TabsClassNames } from \"./types\";\nexport type * from \"./types\";\nexport default Tabs;\n"]}
@@ -0,0 +1,86 @@
1
+ import { cn } from './chunk-NGYLRX6F.js';
2
+ import { cva } from 'class-variance-authority';
3
+ import React from 'react';
4
+ import { jsx } from 'react/jsx-runtime';
5
+
6
+ var buttonGroupVariants = cva("inline-flex", {
7
+ variants: {
8
+ vertical: {
9
+ true: "flex-col",
10
+ false: "flex-row"
11
+ },
12
+ fullWidth: {
13
+ true: "w-full [&>*]:flex-1",
14
+ false: ""
15
+ }
16
+ },
17
+ defaultVariants: {
18
+ vertical: false,
19
+ fullWidth: false
20
+ }
21
+ });
22
+ var attachedHorizontalClasses = "[&>*:not(:first-child)]:rounded-l-none [&>*:not(:last-child)]:border-r-0 [&>*:not(:last-child)]:rounded-r-none";
23
+ var attachedVerticalClasses = "[&>*:not(:first-child)]:rounded-t-none [&>*:not(:last-child)]:border-b-0 [&>*:not(:last-child)]:rounded-b-none";
24
+ var gapClasses = {
25
+ sm: "gap-1",
26
+ md: "gap-2",
27
+ lg: "gap-3"
28
+ };
29
+ var ButtonGroup = React.memo(
30
+ ({
31
+ vertical = false,
32
+ attached = true,
33
+ gap = "md",
34
+ fullWidth = false,
35
+ size,
36
+ variant,
37
+ color,
38
+ shape,
39
+ disabled = false,
40
+ className,
41
+ classNames,
42
+ children,
43
+ ref,
44
+ ...props
45
+ }) => {
46
+ const enhancedChildren = React.Children.map(children, (child) => {
47
+ if (React.isValidElement(child)) {
48
+ return React.cloneElement(child, {
49
+ // Group props are defaults - child props take precedence
50
+ size: child.props.size ?? size,
51
+ variant: child.props.variant ?? variant,
52
+ color: child.props.color ?? color,
53
+ shape: child.props.shape ?? shape,
54
+ // Disabled is additive - if group is disabled, all children are disabled
55
+ disabled: child.props.disabled || disabled,
56
+ // Apply button classNames from ButtonGroup
57
+ className: cn(classNames?.button, child.props.className)
58
+ });
59
+ }
60
+ return child;
61
+ });
62
+ return /* @__PURE__ */ jsx(
63
+ "div",
64
+ {
65
+ ref,
66
+ role: "group",
67
+ className: cn(
68
+ "buttonGroup_root",
69
+ buttonGroupVariants({ vertical, fullWidth }),
70
+ attached ? vertical ? attachedVerticalClasses : attachedHorizontalClasses : gapClasses[gap],
71
+ classNames?.root,
72
+ className
73
+ ),
74
+ "data-slot": "root",
75
+ ...props,
76
+ children: enhancedChildren
77
+ }
78
+ );
79
+ }
80
+ );
81
+ ButtonGroup.displayName = "ButtonGroup";
82
+ var button_group_default = ButtonGroup;
83
+
84
+ export { button_group_default };
85
+ //# sourceMappingURL=chunk-6HGUDHHE.js.map
86
+ //# sourceMappingURL=chunk-6HGUDHHE.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/button-group/index.tsx"],"names":[],"mappings":";;;;;AAOA,IAAM,mBAAA,GAAsB,IAAI,aAAA,EAAe;AAAA,EAC7C,QAAA,EAAU;AAAA,IACR,QAAA,EAAU;AAAA,MACR,IAAA,EAAM,UAAA;AAAA,MACN,KAAA,EAAO;AAAA,KACT;AAAA,IACA,SAAA,EAAW;AAAA,MACT,IAAA,EAAM,qBAAA;AAAA,MACN,KAAA,EAAO;AAAA;AACT,GACF;AAAA,EACA,eAAA,EAAiB;AAAA,IACf,QAAA,EAAU,KAAA;AAAA,IACV,SAAA,EAAW;AAAA;AAEf,CAAC,CAAA;AAKD,IAAM,yBAAA,GACJ,gHAAA;AAEF,IAAM,uBAAA,GACJ,gHAAA;AAKF,IAAM,UAAA,GAAa;AAAA,EACjB,EAAA,EAAI,OAAA;AAAA,EACJ,EAAA,EAAI,OAAA;AAAA,EACJ,EAAA,EAAI;AACN,CAAA;AA8BA,IAAM,cAAc,KAAA,CAAM,IAAA;AAAA,EACxB,CAAC;AAAA,IACC,QAAA,GAAW,KAAA;AAAA,IACX,QAAA,GAAW,IAAA;AAAA,IACX,GAAA,GAAM,IAAA;AAAA,IACN,SAAA,GAAY,KAAA;AAAA,IACZ,IAAA;AAAA,IACA,OAAA;AAAA,IACA,KAAA;AAAA,IACA,KAAA;AAAA,IACA,QAAA,GAAW,KAAA;AAAA,IACX,SAAA;AAAA,IACA,UAAA;AAAA,IACA,QAAA;AAAA,IACA,GAAA;AAAA,IACA,GAAG;AAAA,GACL,KAAM;AAEJ,IAAA,MAAM,mBAAmB,KAAA,CAAM,QAAA,CAAS,GAAA,CAAI,QAAA,EAAU,CAAC,KAAA,KAAU;AAC/D,MAAA,IAAI,KAAA,CAAM,cAAA,CAA4B,KAAK,CAAA,EAAG;AAC5C,QAAA,OAAO,KAAA,CAAM,aAAa,KAAA,EAAO;AAAA;AAAA,UAE/B,IAAA,EAAM,KAAA,CAAM,KAAA,CAAM,IAAA,IAAQ,IAAA;AAAA,UAC1B,OAAA,EAAS,KAAA,CAAM,KAAA,CAAM,OAAA,IAAW,OAAA;AAAA,UAChC,KAAA,EAAO,KAAA,CAAM,KAAA,CAAM,KAAA,IAAS,KAAA;AAAA,UAC5B,KAAA,EAAO,KAAA,CAAM,KAAA,CAAM,KAAA,IAAS,KAAA;AAAA;AAAA,UAE5B,QAAA,EAAU,KAAA,CAAM,KAAA,CAAM,QAAA,IAAY,QAAA;AAAA;AAAA,UAElC,WAAW,EAAA,CAAG,UAAA,EAAY,MAAA,EAAQ,KAAA,CAAM,MAAM,SAAS;AAAA,SACxD,CAAA;AAAA,MACH;AACA,MAAA,OAAO,KAAA;AAAA,IACT,CAAC,CAAA;AAED,IAAA,uBACE,GAAA;AAAA,MAAC,KAAA;AAAA,MAAA;AAAA,QACC,GAAA;AAAA,QACA,IAAA,EAAK,OAAA;AAAA,QACL,SAAA,EAAW,EAAA;AAAA,UACT,kBAAA;AAAA,UACA,mBAAA,CAAoB,EAAE,QAAA,EAAU,SAAA,EAAW,CAAA;AAAA,UAC3C,QAAA,GACI,QAAA,GACE,uBAAA,GACA,yBAAA,GACF,WAAW,GAAG,CAAA;AAAA,UAClB,UAAA,EAAY,IAAA;AAAA,UACZ;AAAA,SACF;AAAA,QACA,WAAA,EAAU,MAAA;AAAA,QACT,GAAG,KAAA;AAAA,QAEH,QAAA,EAAA;AAAA;AAAA,KACH;AAAA,EAEJ;AACF,CAAA;AAEA,WAAA,CAAY,WAAA,GAAc,aAAA;AAG1B,IAAO,oBAAA,GAAQ","file":"chunk-6HGUDHHE.js","sourcesContent":["import { cva } from 'class-variance-authority'\nimport React from 'react'\n\nimport type { ButtonProps } from '../button/types'\nimport { cn } from '../utils'\nimport type { ButtonGroupProps } from './types'\n\nconst buttonGroupVariants = cva('inline-flex', {\n variants: {\n vertical: {\n true: 'flex-col',\n false: 'flex-row',\n },\n fullWidth: {\n true: 'w-full [&>*]:flex-1',\n false: '',\n },\n },\n defaultVariants: {\n vertical: false,\n fullWidth: false,\n },\n})\n\n/**\n * Attached button styling - removes inner borders and rounds only outer corners\n */\nconst attachedHorizontalClasses =\n '[&>*:not(:first-child)]:rounded-l-none [&>*:not(:last-child)]:border-r-0 [&>*:not(:last-child)]:rounded-r-none'\n\nconst attachedVerticalClasses =\n '[&>*:not(:first-child)]:rounded-t-none [&>*:not(:last-child)]:border-b-0 [&>*:not(:last-child)]:rounded-b-none'\n\n/**\n * Gap size classes\n */\nconst gapClasses = {\n sm: 'gap-1',\n md: 'gap-2',\n lg: 'gap-3',\n}\n\n/**\n * ButtonGroup Component\n *\n * Groups multiple buttons together with consistent styling and spacing.\n * Can propagate common props (size, variant, color, disabled) to all child buttons.\n *\n * @example\n * // Basic horizontal group\n * <ButtonGroup>\n * <Button>Save</Button>\n * <Button>Cancel</Button>\n * </ButtonGroup>\n *\n * @example\n * // Vertical group with uniform styling\n * <ButtonGroup vertical variant=\"outline\" size=\"sm\">\n * <Button>Option 1</Button>\n * <Button>Option 2</Button>\n * </ButtonGroup>\n *\n * @example\n * // Separated buttons with gap\n * <ButtonGroup attached={false} gap=\"md\">\n * <Button>A</Button>\n * <Button>B</Button>\n * <Button>C</Button>\n * </ButtonGroup>\n */\nconst ButtonGroup = React.memo<ButtonGroupProps>(\n ({\n vertical = false,\n attached = true,\n gap = 'md',\n fullWidth = false,\n size,\n variant,\n color,\n shape,\n disabled = false,\n className,\n classNames,\n children,\n ref,\n ...props\n }) => {\n // Clone children and inject group props\n const enhancedChildren = React.Children.map(children, (child) => {\n if (React.isValidElement<ButtonProps>(child)) {\n return React.cloneElement(child, {\n // Group props are defaults - child props take precedence\n size: child.props.size ?? size,\n variant: child.props.variant ?? variant,\n color: child.props.color ?? color,\n shape: child.props.shape ?? shape,\n // Disabled is additive - if group is disabled, all children are disabled\n disabled: child.props.disabled || disabled,\n // Apply button classNames from ButtonGroup\n className: cn(classNames?.button, child.props.className),\n })\n }\n return child\n })\n\n return (\n <div\n ref={ref}\n role=\"group\"\n className={cn(\n 'buttonGroup_root',\n buttonGroupVariants({ vertical, fullWidth }),\n attached\n ? vertical\n ? attachedVerticalClasses\n : attachedHorizontalClasses\n : gapClasses[gap],\n classNames?.root,\n className,\n )}\n data-slot=\"root\"\n {...props}\n >\n {enhancedChildren}\n </div>\n )\n },\n)\n\nButtonGroup.displayName = 'ButtonGroup'\n\nexport type * from './types'\nexport default ButtonGroup\n"]}
@@ -0,0 +1,174 @@
1
+ import { getValidationStatus, cn, statusMessageVariants } from './chunk-NGYLRX6F.js';
2
+ import { cva } from 'class-variance-authority';
3
+ import React, { useId } from 'react';
4
+ import { jsx, jsxs } from 'react/jsx-runtime';
5
+
6
+ var textareaVariants = cva(
7
+ "w-full rounded-md focus:border-primary transition-colors text-text-primary placeholder:text-text-secondary/50 disabled:opacity-50 disabled:cursor-not-allowed read-only:bg-surface read-only:cursor-default outline-none",
8
+ {
9
+ variants: {
10
+ variant: {
11
+ outline: "bg-background border border-border",
12
+ filled: "bg-surface border border-transparent"
13
+ },
14
+ status: {
15
+ default: "",
16
+ error: "!border-error focus:!border-error",
17
+ warning: "!border-warning focus:!border-warning",
18
+ info: "!border-info focus:!border-info",
19
+ success: "!border-success focus:!border-success"
20
+ },
21
+ size: {
22
+ xs: "min-h-(--textarea-min-height-xs) p-(--textarea-padding-xs) text-xs",
23
+ sm: "min-h-(--textarea-min-height-sm) p-(--textarea-padding-sm) text-sm",
24
+ md: "min-h-(--textarea-min-height-md) p-(--textarea-padding-md) text-base",
25
+ lg: "min-h-(--textarea-min-height-lg) p-(--textarea-padding-lg) text-lg"
26
+ },
27
+ resize: {
28
+ none: "resize-none",
29
+ vertical: "resize-y",
30
+ horizontal: "resize-x",
31
+ both: "resize"
32
+ },
33
+ fullWidth: {
34
+ true: "w-full",
35
+ false: "max-w-full"
36
+ }
37
+ },
38
+ defaultVariants: {
39
+ variant: "outline",
40
+ status: "default",
41
+ size: "md",
42
+ resize: "vertical",
43
+ fullWidth: true
44
+ }
45
+ }
46
+ );
47
+ var Textarea = React.memo(
48
+ ({
49
+ variant = "outline",
50
+ size = "md",
51
+ label,
52
+ helperText,
53
+ messagePosition = "bottom",
54
+ error,
55
+ warning,
56
+ info,
57
+ success,
58
+ resize = "vertical",
59
+ showCount = false,
60
+ maxLength,
61
+ autoResize = false,
62
+ fullWidth = true,
63
+ className,
64
+ classNames,
65
+ value,
66
+ onChange,
67
+ ref,
68
+ ...props
69
+ }) => {
70
+ const internalRef = React.useRef(null);
71
+ const textareaRef = ref || internalRef;
72
+ const [internalValue, setInternalValue] = React.useState(value || "");
73
+ const currentValue = value !== void 0 ? value : internalValue;
74
+ const currentLength = String(currentValue).length;
75
+ const uniqueId = useId();
76
+ const textareaId = props.id || `textarea-${uniqueId}`;
77
+ const helperId = `textarea-helper-${uniqueId}`;
78
+ const { status, message: helperMessage } = getValidationStatus({
79
+ error,
80
+ warning,
81
+ info,
82
+ success,
83
+ helperText
84
+ });
85
+ const handleChange = React.useCallback(
86
+ (e) => {
87
+ if (value === void 0) {
88
+ setInternalValue(e.target.value);
89
+ }
90
+ onChange?.(e);
91
+ },
92
+ [value, onChange]
93
+ );
94
+ React.useEffect(() => {
95
+ if (autoResize && textareaRef.current) {
96
+ textareaRef.current.style.height = "auto";
97
+ textareaRef.current.style.height = `${textareaRef.current.scrollHeight}px`;
98
+ }
99
+ }, [currentValue, autoResize, textareaRef]);
100
+ const textareaElement = /* @__PURE__ */ jsx(
101
+ "textarea",
102
+ {
103
+ ref: textareaRef,
104
+ id: textareaId,
105
+ className: cn(
106
+ "textarea_textarea",
107
+ textareaVariants({
108
+ variant,
109
+ status,
110
+ size,
111
+ resize: autoResize ? "none" : resize,
112
+ fullWidth
113
+ }),
114
+ autoResize && "overflow-hidden",
115
+ className,
116
+ classNames?.textarea
117
+ ),
118
+ maxLength,
119
+ value: currentValue,
120
+ onChange: handleChange,
121
+ "aria-invalid": status === "error",
122
+ "aria-describedby": helperMessage ? helperId : void 0,
123
+ ...props
124
+ }
125
+ );
126
+ return /* @__PURE__ */ jsxs(
127
+ "div",
128
+ {
129
+ className: cn(
130
+ "textarea_root",
131
+ "w-full flex flex-col relative",
132
+ !fullWidth && "inline-block",
133
+ classNames?.root
134
+ ),
135
+ children: [
136
+ /* @__PURE__ */ jsxs("div", { className: cn("textarea_wrapper", "flex gap-2 items-center relative mb-0.5", classNames?.wrapper), children: [
137
+ label && /* @__PURE__ */ jsxs("label", { htmlFor: textareaId, className: cn("textarea_label", "text-sm font-medium text-text-secondary", classNames?.label), children: [
138
+ label,
139
+ props.required && /* @__PURE__ */ jsx("span", { className: cn("textarea_error", "text-error ml-1", classNames?.error), children: "*" })
140
+ ] }),
141
+ helperMessage && messagePosition === "top" && /* @__PURE__ */ jsx(
142
+ "p",
143
+ {
144
+ id: helperId,
145
+ className: cn("textarea_helper", statusMessageVariants({ status }), classNames?.helper),
146
+ children: helperMessage
147
+ }
148
+ ),
149
+ showCount && maxLength && /* @__PURE__ */ jsxs("span", { className: cn("textarea_counter", "text-xs text-text-secondary absolute right-0", classNames?.counter), children: [
150
+ currentLength,
151
+ "/",
152
+ maxLength
153
+ ] })
154
+ ] }),
155
+ textareaElement,
156
+ helperMessage && messagePosition === "bottom" && /* @__PURE__ */ jsx(
157
+ "p",
158
+ {
159
+ id: helperId,
160
+ className: cn("textarea_helper", statusMessageVariants({ status }), "mt-0.5", classNames?.helper),
161
+ children: helperMessage
162
+ }
163
+ )
164
+ ]
165
+ }
166
+ );
167
+ }
168
+ );
169
+ Textarea.displayName = "Textarea";
170
+ var textarea_default = Textarea;
171
+
172
+ export { textarea_default };
173
+ //# sourceMappingURL=chunk-6JGNJI5T.js.map
174
+ //# sourceMappingURL=chunk-6JGNJI5T.js.map