@mieweb/ui 0.1.0

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 (459) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +696 -0
  3. package/dist/brands/bluehive.cjs +18 -0
  4. package/dist/brands/bluehive.cjs.map +1 -0
  5. package/dist/brands/bluehive.css +136 -0
  6. package/dist/brands/bluehive.d.cts +16 -0
  7. package/dist/brands/bluehive.d.ts +16 -0
  8. package/dist/brands/bluehive.js +3 -0
  9. package/dist/brands/bluehive.js.map +1 -0
  10. package/dist/brands/enterprise-health.css +260 -0
  11. package/dist/brands/index.cjs +55 -0
  12. package/dist/brands/index.cjs.map +1 -0
  13. package/dist/brands/index.d.cts +100 -0
  14. package/dist/brands/index.d.ts +100 -0
  15. package/dist/brands/index.js +10 -0
  16. package/dist/brands/index.js.map +1 -0
  17. package/dist/brands/mieweb.css +138 -0
  18. package/dist/brands/types.cjs +20 -0
  19. package/dist/brands/types.cjs.map +1 -0
  20. package/dist/brands/types.d.cts +188 -0
  21. package/dist/brands/types.d.ts +188 -0
  22. package/dist/brands/types.js +3 -0
  23. package/dist/brands/types.js.map +1 -0
  24. package/dist/brands/waggleline.css +164 -0
  25. package/dist/brands/webchart.css +138 -0
  26. package/dist/chunk-265CFCCX.js +173 -0
  27. package/dist/chunk-265CFCCX.js.map +1 -0
  28. package/dist/chunk-2J2V4TMJ.cjs +139 -0
  29. package/dist/chunk-2J2V4TMJ.cjs.map +1 -0
  30. package/dist/chunk-2O7D6F67.cjs +63 -0
  31. package/dist/chunk-2O7D6F67.cjs.map +1 -0
  32. package/dist/chunk-3NJ72QU6.js +55 -0
  33. package/dist/chunk-3NJ72QU6.js.map +1 -0
  34. package/dist/chunk-4AWW5WPF.js +161 -0
  35. package/dist/chunk-4AWW5WPF.js.map +1 -0
  36. package/dist/chunk-4LNS5QDP.cjs +84 -0
  37. package/dist/chunk-4LNS5QDP.cjs.map +1 -0
  38. package/dist/chunk-4LTN2LEN.js +79 -0
  39. package/dist/chunk-4LTN2LEN.js.map +1 -0
  40. package/dist/chunk-4MHTSFPX.js +205 -0
  41. package/dist/chunk-4MHTSFPX.js.map +1 -0
  42. package/dist/chunk-4YRAEFYW.js +233 -0
  43. package/dist/chunk-4YRAEFYW.js.map +1 -0
  44. package/dist/chunk-53K3KWXQ.cjs +753 -0
  45. package/dist/chunk-53K3KWXQ.cjs.map +1 -0
  46. package/dist/chunk-6DP6RKUA.cjs +15 -0
  47. package/dist/chunk-6DP6RKUA.cjs.map +1 -0
  48. package/dist/chunk-6HFFWEM3.cjs +22 -0
  49. package/dist/chunk-6HFFWEM3.cjs.map +1 -0
  50. package/dist/chunk-6OCIIIAI.js +128 -0
  51. package/dist/chunk-6OCIIIAI.js.map +1 -0
  52. package/dist/chunk-6Q4SU72T.js +300 -0
  53. package/dist/chunk-6Q4SU72T.js.map +1 -0
  54. package/dist/chunk-AU5ADTYD.cjs +326 -0
  55. package/dist/chunk-AU5ADTYD.cjs.map +1 -0
  56. package/dist/chunk-AWIULTJW.js +190 -0
  57. package/dist/chunk-AWIULTJW.js.map +1 -0
  58. package/dist/chunk-B26RIQ5R.js +97 -0
  59. package/dist/chunk-B26RIQ5R.js.map +1 -0
  60. package/dist/chunk-B3L43JGH.js +98 -0
  61. package/dist/chunk-B3L43JGH.js.map +1 -0
  62. package/dist/chunk-B7DA35BY.cjs +496 -0
  63. package/dist/chunk-B7DA35BY.cjs.map +1 -0
  64. package/dist/chunk-B7YGVKTE.cjs +184 -0
  65. package/dist/chunk-B7YGVKTE.cjs.map +1 -0
  66. package/dist/chunk-BR2XGATJ.cjs +40 -0
  67. package/dist/chunk-BR2XGATJ.cjs.map +1 -0
  68. package/dist/chunk-BTJHYGPI.cjs +27 -0
  69. package/dist/chunk-BTJHYGPI.cjs.map +1 -0
  70. package/dist/chunk-BXK5TNJE.cjs +329 -0
  71. package/dist/chunk-BXK5TNJE.cjs.map +1 -0
  72. package/dist/chunk-C6MDPPPL.js +82 -0
  73. package/dist/chunk-C6MDPPPL.js.map +1 -0
  74. package/dist/chunk-CEHWXAAI.js +22 -0
  75. package/dist/chunk-CEHWXAAI.js.map +1 -0
  76. package/dist/chunk-CLNOI5J7.js +38 -0
  77. package/dist/chunk-CLNOI5J7.js.map +1 -0
  78. package/dist/chunk-CP7NPDQW.js +99 -0
  79. package/dist/chunk-CP7NPDQW.js.map +1 -0
  80. package/dist/chunk-CQCYXHCU.cjs +256 -0
  81. package/dist/chunk-CQCYXHCU.cjs.map +1 -0
  82. package/dist/chunk-D5IBXXF2.js +243 -0
  83. package/dist/chunk-D5IBXXF2.js.map +1 -0
  84. package/dist/chunk-DMA74PZ7.js +240 -0
  85. package/dist/chunk-DMA74PZ7.js.map +1 -0
  86. package/dist/chunk-EF46XW4Z.cjs +270 -0
  87. package/dist/chunk-EF46XW4Z.cjs.map +1 -0
  88. package/dist/chunk-EKIQE524.cjs +78 -0
  89. package/dist/chunk-EKIQE524.cjs.map +1 -0
  90. package/dist/chunk-F3SOEIN2.js +11 -0
  91. package/dist/chunk-F3SOEIN2.js.map +1 -0
  92. package/dist/chunk-FFJVCQ5R.cjs +128 -0
  93. package/dist/chunk-FFJVCQ5R.cjs.map +1 -0
  94. package/dist/chunk-FHY3K6PL.cjs +24 -0
  95. package/dist/chunk-FHY3K6PL.cjs.map +1 -0
  96. package/dist/chunk-FIUNOH6W.js +13 -0
  97. package/dist/chunk-FIUNOH6W.js.map +1 -0
  98. package/dist/chunk-FIXAVBUA.cjs +200 -0
  99. package/dist/chunk-FIXAVBUA.cjs.map +1 -0
  100. package/dist/chunk-FQ5G7J24.js +297 -0
  101. package/dist/chunk-FQ5G7J24.js.map +1 -0
  102. package/dist/chunk-G2DOD34H.js +215 -0
  103. package/dist/chunk-G2DOD34H.js.map +1 -0
  104. package/dist/chunk-GV5JQBPX.js +110 -0
  105. package/dist/chunk-GV5JQBPX.js.map +1 -0
  106. package/dist/chunk-H2CIKJQI.js +32 -0
  107. package/dist/chunk-H2CIKJQI.js.map +1 -0
  108. package/dist/chunk-HB7C7NB5.js +20 -0
  109. package/dist/chunk-HB7C7NB5.js.map +1 -0
  110. package/dist/chunk-HLW3XD5R.cjs +322 -0
  111. package/dist/chunk-HLW3XD5R.cjs.map +1 -0
  112. package/dist/chunk-HRA4FUO6.cjs +425 -0
  113. package/dist/chunk-HRA4FUO6.cjs.map +1 -0
  114. package/dist/chunk-IY7UQPDO.cjs +122 -0
  115. package/dist/chunk-IY7UQPDO.cjs.map +1 -0
  116. package/dist/chunk-JFAXLE2J.js +217 -0
  117. package/dist/chunk-JFAXLE2J.js.map +1 -0
  118. package/dist/chunk-JYMQJ32S.cjs +115 -0
  119. package/dist/chunk-JYMQJ32S.cjs.map +1 -0
  120. package/dist/chunk-KJOFWJHV.js +406 -0
  121. package/dist/chunk-KJOFWJHV.js.map +1 -0
  122. package/dist/chunk-KJZNEVYM.js +61 -0
  123. package/dist/chunk-KJZNEVYM.js.map +1 -0
  124. package/dist/chunk-KMN7JX2X.cjs +67 -0
  125. package/dist/chunk-KMN7JX2X.cjs.map +1 -0
  126. package/dist/chunk-LEE3NMNP.cjs +429 -0
  127. package/dist/chunk-LEE3NMNP.cjs.map +1 -0
  128. package/dist/chunk-LZEY55QZ.cjs +219 -0
  129. package/dist/chunk-LZEY55QZ.cjs.map +1 -0
  130. package/dist/chunk-MKJDBXX4.cjs +171 -0
  131. package/dist/chunk-MKJDBXX4.cjs.map +1 -0
  132. package/dist/chunk-MTZPVOP6.js +99 -0
  133. package/dist/chunk-MTZPVOP6.js.map +1 -0
  134. package/dist/chunk-N3QTYHRZ.cjs +134 -0
  135. package/dist/chunk-N3QTYHRZ.cjs.map +1 -0
  136. package/dist/chunk-N5EKL4DH.js +148 -0
  137. package/dist/chunk-N5EKL4DH.js.map +1 -0
  138. package/dist/chunk-NAATBUHR.cjs +231 -0
  139. package/dist/chunk-NAATBUHR.cjs.map +1 -0
  140. package/dist/chunk-NH2JVQ6V.cjs +272 -0
  141. package/dist/chunk-NH2JVQ6V.cjs.map +1 -0
  142. package/dist/chunk-NIHESA7O.js +114 -0
  143. package/dist/chunk-NIHESA7O.js.map +1 -0
  144. package/dist/chunk-NXRLGHEC.js +98 -0
  145. package/dist/chunk-NXRLGHEC.js.map +1 -0
  146. package/dist/chunk-O5HS7ZND.cjs +81 -0
  147. package/dist/chunk-O5HS7ZND.cjs.map +1 -0
  148. package/dist/chunk-O7WRE2WX.js +195 -0
  149. package/dist/chunk-O7WRE2WX.js.map +1 -0
  150. package/dist/chunk-ONWOB76P.js +319 -0
  151. package/dist/chunk-ONWOB76P.js.map +1 -0
  152. package/dist/chunk-OR5DRJCW.cjs +13 -0
  153. package/dist/chunk-OR5DRJCW.cjs.map +1 -0
  154. package/dist/chunk-ORUPC5TV.cjs +244 -0
  155. package/dist/chunk-ORUPC5TV.cjs.map +1 -0
  156. package/dist/chunk-OT36EMM5.js +22 -0
  157. package/dist/chunk-OT36EMM5.js.map +1 -0
  158. package/dist/chunk-OW2BWGST.js +238 -0
  159. package/dist/chunk-OW2BWGST.js.map +1 -0
  160. package/dist/chunk-OWPWP46L.js +92 -0
  161. package/dist/chunk-OWPWP46L.js.map +1 -0
  162. package/dist/chunk-P52GA3GJ.cjs +101 -0
  163. package/dist/chunk-P52GA3GJ.cjs.map +1 -0
  164. package/dist/chunk-PEFJAWNR.cjs +121 -0
  165. package/dist/chunk-PEFJAWNR.cjs.map +1 -0
  166. package/dist/chunk-PF3XWKE5.cjs +343 -0
  167. package/dist/chunk-PF3XWKE5.cjs.map +1 -0
  168. package/dist/chunk-QBWVTJKF.js +548 -0
  169. package/dist/chunk-QBWVTJKF.js.map +1 -0
  170. package/dist/chunk-QDGZBDBI.cjs +99 -0
  171. package/dist/chunk-QDGZBDBI.cjs.map +1 -0
  172. package/dist/chunk-QL2YTVTR.js +163 -0
  173. package/dist/chunk-QL2YTVTR.js.map +1 -0
  174. package/dist/chunk-QYJ7RQJ2.cjs +239 -0
  175. package/dist/chunk-QYJ7RQJ2.cjs.map +1 -0
  176. package/dist/chunk-QZLRB3UG.js +727 -0
  177. package/dist/chunk-QZLRB3UG.js.map +1 -0
  178. package/dist/chunk-R4DM4635.cjs +109 -0
  179. package/dist/chunk-R4DM4635.cjs.map +1 -0
  180. package/dist/chunk-RCMF6KZA.js +75 -0
  181. package/dist/chunk-RCMF6KZA.js.map +1 -0
  182. package/dist/chunk-RRQGH7C5.cjs +187 -0
  183. package/dist/chunk-RRQGH7C5.cjs.map +1 -0
  184. package/dist/chunk-S6UNPMAS.cjs +84 -0
  185. package/dist/chunk-S6UNPMAS.cjs.map +1 -0
  186. package/dist/chunk-SJ3BF4BO.cjs +199 -0
  187. package/dist/chunk-SJ3BF4BO.cjs.map +1 -0
  188. package/dist/chunk-SN52QMRT.js +58 -0
  189. package/dist/chunk-SN52QMRT.js.map +1 -0
  190. package/dist/chunk-SOFX4T7M.js +124 -0
  191. package/dist/chunk-SOFX4T7M.js.map +1 -0
  192. package/dist/chunk-SWMRCGL4.cjs +24 -0
  193. package/dist/chunk-SWMRCGL4.cjs.map +1 -0
  194. package/dist/chunk-SWV5E75F.cjs +94 -0
  195. package/dist/chunk-SWV5E75F.cjs.map +1 -0
  196. package/dist/chunk-T4ME7QCT.js +22 -0
  197. package/dist/chunk-T4ME7QCT.js.map +1 -0
  198. package/dist/chunk-TA6FVVCM.js +207 -0
  199. package/dist/chunk-TA6FVVCM.js.map +1 -0
  200. package/dist/chunk-UHSPAFY6.js +82 -0
  201. package/dist/chunk-UHSPAFY6.js.map +1 -0
  202. package/dist/chunk-ULOA7WBW.js +82 -0
  203. package/dist/chunk-ULOA7WBW.js.map +1 -0
  204. package/dist/chunk-UZUBLXVC.js +307 -0
  205. package/dist/chunk-UZUBLXVC.js.map +1 -0
  206. package/dist/chunk-VDMQCSXT.cjs +234 -0
  207. package/dist/chunk-VDMQCSXT.cjs.map +1 -0
  208. package/dist/chunk-VV4N4WY6.cjs +121 -0
  209. package/dist/chunk-VV4N4WY6.cjs.map +1 -0
  210. package/dist/chunk-VWXGUNBR.cjs +574 -0
  211. package/dist/chunk-VWXGUNBR.cjs.map +1 -0
  212. package/dist/chunk-WN2FJE23.js +474 -0
  213. package/dist/chunk-WN2FJE23.js.map +1 -0
  214. package/dist/chunk-XHJGYBYG.cjs +262 -0
  215. package/dist/chunk-XHJGYBYG.cjs.map +1 -0
  216. package/dist/chunk-XXOBTAKA.js +390 -0
  217. package/dist/chunk-XXOBTAKA.js.map +1 -0
  218. package/dist/chunk-Z3TFPXVN.cjs +84 -0
  219. package/dist/chunk-Z3TFPXVN.cjs.map +1 -0
  220. package/dist/chunk-ZJCPW6MS.cjs +54 -0
  221. package/dist/chunk-ZJCPW6MS.cjs.map +1 -0
  222. package/dist/chunk-ZO46CFVN.cjs +4 -0
  223. package/dist/chunk-ZO46CFVN.cjs.map +1 -0
  224. package/dist/chunk-ZQ4XMJH7.js +3 -0
  225. package/dist/chunk-ZQ4XMJH7.js.map +1 -0
  226. package/dist/components/Alert/index.cjs +25 -0
  227. package/dist/components/Alert/index.cjs.map +1 -0
  228. package/dist/components/Alert/index.d.cts +39 -0
  229. package/dist/components/Alert/index.d.ts +39 -0
  230. package/dist/components/Alert/index.js +4 -0
  231. package/dist/components/Alert/index.js.map +1 -0
  232. package/dist/components/AudioPlayer/index.cjs +29 -0
  233. package/dist/components/AudioPlayer/index.cjs.map +1 -0
  234. package/dist/components/AudioPlayer/index.d.cts +83 -0
  235. package/dist/components/AudioPlayer/index.d.ts +83 -0
  236. package/dist/components/AudioPlayer/index.js +4 -0
  237. package/dist/components/AudioPlayer/index.js.map +1 -0
  238. package/dist/components/AudioRecorder/index.cjs +29 -0
  239. package/dist/components/AudioRecorder/index.cjs.map +1 -0
  240. package/dist/components/AudioRecorder/index.d.cts +106 -0
  241. package/dist/components/AudioRecorder/index.d.ts +106 -0
  242. package/dist/components/AudioRecorder/index.js +4 -0
  243. package/dist/components/AudioRecorder/index.js.map +1 -0
  244. package/dist/components/Avatar/index.cjs +25 -0
  245. package/dist/components/Avatar/index.cjs.map +1 -0
  246. package/dist/components/Avatar/index.d.cts +62 -0
  247. package/dist/components/Avatar/index.d.ts +62 -0
  248. package/dist/components/Avatar/index.js +4 -0
  249. package/dist/components/Avatar/index.js.map +1 -0
  250. package/dist/components/Badge/index.cjs +17 -0
  251. package/dist/components/Badge/index.cjs.map +1 -0
  252. package/dist/components/Badge/index.d.cts +25 -0
  253. package/dist/components/Badge/index.d.ts +25 -0
  254. package/dist/components/Badge/index.js +4 -0
  255. package/dist/components/Badge/index.js.map +1 -0
  256. package/dist/components/Breadcrumb/index.cjs +17 -0
  257. package/dist/components/Breadcrumb/index.cjs.map +1 -0
  258. package/dist/components/Breadcrumb/index.d.cts +47 -0
  259. package/dist/components/Breadcrumb/index.d.ts +47 -0
  260. package/dist/components/Breadcrumb/index.js +4 -0
  261. package/dist/components/Breadcrumb/index.js.map +1 -0
  262. package/dist/components/Button/index.cjs +17 -0
  263. package/dist/components/Button/index.cjs.map +1 -0
  264. package/dist/components/Button/index.d.cts +32 -0
  265. package/dist/components/Button/index.d.ts +32 -0
  266. package/dist/components/Button/index.js +4 -0
  267. package/dist/components/Button/index.js.map +1 -0
  268. package/dist/components/Card/index.cjs +65 -0
  269. package/dist/components/Card/index.cjs.map +1 -0
  270. package/dist/components/Card/index.d.cts +119 -0
  271. package/dist/components/Card/index.d.ts +119 -0
  272. package/dist/components/Card/index.js +4 -0
  273. package/dist/components/Card/index.js.map +1 -0
  274. package/dist/components/Checkbox/index.cjs +21 -0
  275. package/dist/components/Checkbox/index.cjs.map +1 -0
  276. package/dist/components/Checkbox/index.d.cts +63 -0
  277. package/dist/components/Checkbox/index.d.ts +63 -0
  278. package/dist/components/Checkbox/index.js +4 -0
  279. package/dist/components/Checkbox/index.js.map +1 -0
  280. package/dist/components/DateInput/index.cjs +15 -0
  281. package/dist/components/DateInput/index.cjs.map +1 -0
  282. package/dist/components/DateInput/index.d.cts +55 -0
  283. package/dist/components/DateInput/index.d.ts +55 -0
  284. package/dist/components/DateInput/index.js +6 -0
  285. package/dist/components/DateInput/index.js.map +1 -0
  286. package/dist/components/Dropdown/index.cjs +35 -0
  287. package/dist/components/Dropdown/index.cjs.map +1 -0
  288. package/dist/components/Dropdown/index.d.cts +102 -0
  289. package/dist/components/Dropdown/index.d.ts +102 -0
  290. package/dist/components/Dropdown/index.js +6 -0
  291. package/dist/components/Dropdown/index.js.map +1 -0
  292. package/dist/components/Input/index.cjs +17 -0
  293. package/dist/components/Input/index.cjs.map +1 -0
  294. package/dist/components/Input/index.d.cts +32 -0
  295. package/dist/components/Input/index.d.ts +32 -0
  296. package/dist/components/Input/index.js +4 -0
  297. package/dist/components/Input/index.js.map +1 -0
  298. package/dist/components/Modal/index.cjs +43 -0
  299. package/dist/components/Modal/index.cjs.map +1 -0
  300. package/dist/components/Modal/index.d.cts +82 -0
  301. package/dist/components/Modal/index.d.ts +82 -0
  302. package/dist/components/Modal/index.js +6 -0
  303. package/dist/components/Modal/index.js.map +1 -0
  304. package/dist/components/Pagination/index.cjs +21 -0
  305. package/dist/components/Pagination/index.cjs.map +1 -0
  306. package/dist/components/Pagination/index.d.cts +78 -0
  307. package/dist/components/Pagination/index.d.ts +78 -0
  308. package/dist/components/Pagination/index.js +4 -0
  309. package/dist/components/Pagination/index.js.map +1 -0
  310. package/dist/components/PhoneInput/index.cjs +19 -0
  311. package/dist/components/PhoneInput/index.cjs.map +1 -0
  312. package/dist/components/PhoneInput/index.d.cts +80 -0
  313. package/dist/components/PhoneInput/index.d.ts +80 -0
  314. package/dist/components/PhoneInput/index.js +6 -0
  315. package/dist/components/PhoneInput/index.js.map +1 -0
  316. package/dist/components/Progress/index.cjs +29 -0
  317. package/dist/components/Progress/index.cjs.map +1 -0
  318. package/dist/components/Progress/index.d.cts +76 -0
  319. package/dist/components/Progress/index.d.ts +76 -0
  320. package/dist/components/Progress/index.js +4 -0
  321. package/dist/components/Progress/index.js.map +1 -0
  322. package/dist/components/QuickAction/index.cjs +29 -0
  323. package/dist/components/QuickAction/index.cjs.map +1 -0
  324. package/dist/components/QuickAction/index.d.cts +78 -0
  325. package/dist/components/QuickAction/index.d.ts +78 -0
  326. package/dist/components/QuickAction/index.js +4 -0
  327. package/dist/components/QuickAction/index.js.map +1 -0
  328. package/dist/components/Radio/index.cjs +21 -0
  329. package/dist/components/Radio/index.cjs.map +1 -0
  330. package/dist/components/Radio/index.d.cts +72 -0
  331. package/dist/components/Radio/index.d.ts +72 -0
  332. package/dist/components/Radio/index.js +4 -0
  333. package/dist/components/Radio/index.js.map +1 -0
  334. package/dist/components/RecordButton/index.cjs +25 -0
  335. package/dist/components/RecordButton/index.cjs.map +1 -0
  336. package/dist/components/RecordButton/index.d.cts +83 -0
  337. package/dist/components/RecordButton/index.d.ts +83 -0
  338. package/dist/components/RecordButton/index.js +4 -0
  339. package/dist/components/RecordButton/index.js.map +1 -0
  340. package/dist/components/SchedulePicker/index.cjs +45 -0
  341. package/dist/components/SchedulePicker/index.cjs.map +1 -0
  342. package/dist/components/SchedulePicker/index.d.cts +111 -0
  343. package/dist/components/SchedulePicker/index.d.ts +111 -0
  344. package/dist/components/SchedulePicker/index.js +4 -0
  345. package/dist/components/SchedulePicker/index.js.map +1 -0
  346. package/dist/components/Select/index.cjs +19 -0
  347. package/dist/components/Select/index.cjs.map +1 -0
  348. package/dist/components/Select/index.d.cts +79 -0
  349. package/dist/components/Select/index.d.ts +79 -0
  350. package/dist/components/Select/index.js +6 -0
  351. package/dist/components/Select/index.js.map +1 -0
  352. package/dist/components/Skeleton/index.cjs +29 -0
  353. package/dist/components/Skeleton/index.cjs.map +1 -0
  354. package/dist/components/Skeleton/index.d.cts +96 -0
  355. package/dist/components/Skeleton/index.d.ts +96 -0
  356. package/dist/components/Skeleton/index.js +4 -0
  357. package/dist/components/Skeleton/index.js.map +1 -0
  358. package/dist/components/Spinner/index.cjs +25 -0
  359. package/dist/components/Spinner/index.cjs.map +1 -0
  360. package/dist/components/Spinner/index.d.cts +67 -0
  361. package/dist/components/Spinner/index.d.ts +67 -0
  362. package/dist/components/Spinner/index.js +4 -0
  363. package/dist/components/Spinner/index.js.map +1 -0
  364. package/dist/components/Switch/index.cjs +21 -0
  365. package/dist/components/Switch/index.cjs.map +1 -0
  366. package/dist/components/Switch/index.d.cts +41 -0
  367. package/dist/components/Switch/index.d.ts +41 -0
  368. package/dist/components/Switch/index.js +4 -0
  369. package/dist/components/Switch/index.js.map +1 -0
  370. package/dist/components/Table/index.cjs +41 -0
  371. package/dist/components/Table/index.cjs.map +1 -0
  372. package/dist/components/Table/index.d.cts +54 -0
  373. package/dist/components/Table/index.d.ts +54 -0
  374. package/dist/components/Table/index.js +4 -0
  375. package/dist/components/Table/index.js.map +1 -0
  376. package/dist/components/Tabs/index.cjs +33 -0
  377. package/dist/components/Tabs/index.cjs.map +1 -0
  378. package/dist/components/Tabs/index.d.cts +70 -0
  379. package/dist/components/Tabs/index.d.ts +70 -0
  380. package/dist/components/Tabs/index.js +4 -0
  381. package/dist/components/Tabs/index.js.map +1 -0
  382. package/dist/components/Text/index.cjs +21 -0
  383. package/dist/components/Text/index.cjs.map +1 -0
  384. package/dist/components/Text/index.d.cts +35 -0
  385. package/dist/components/Text/index.d.ts +35 -0
  386. package/dist/components/Text/index.js +4 -0
  387. package/dist/components/Text/index.js.map +1 -0
  388. package/dist/components/Textarea/index.cjs +17 -0
  389. package/dist/components/Textarea/index.cjs.map +1 -0
  390. package/dist/components/Textarea/index.d.cts +42 -0
  391. package/dist/components/Textarea/index.d.ts +42 -0
  392. package/dist/components/Textarea/index.js +4 -0
  393. package/dist/components/Textarea/index.js.map +1 -0
  394. package/dist/components/ThemeProvider/index.cjs +36 -0
  395. package/dist/components/ThemeProvider/index.cjs.map +1 -0
  396. package/dist/components/ThemeProvider/index.d.cts +121 -0
  397. package/dist/components/ThemeProvider/index.d.ts +121 -0
  398. package/dist/components/ThemeProvider/index.js +7 -0
  399. package/dist/components/ThemeProvider/index.js.map +1 -0
  400. package/dist/components/Tooltip/index.cjs +14 -0
  401. package/dist/components/Tooltip/index.cjs.map +1 -0
  402. package/dist/components/Tooltip/index.d.cts +55 -0
  403. package/dist/components/Tooltip/index.d.ts +55 -0
  404. package/dist/components/Tooltip/index.js +5 -0
  405. package/dist/components/Tooltip/index.js.map +1 -0
  406. package/dist/components/VisuallyHidden/index.cjs +12 -0
  407. package/dist/components/VisuallyHidden/index.cjs.map +1 -0
  408. package/dist/components/VisuallyHidden/index.d.cts +20 -0
  409. package/dist/components/VisuallyHidden/index.d.ts +20 -0
  410. package/dist/components/VisuallyHidden/index.js +3 -0
  411. package/dist/components/VisuallyHidden/index.js.map +1 -0
  412. package/dist/default-LIRPABBK.js +3 -0
  413. package/dist/default-LIRPABBK.js.map +1 -0
  414. package/dist/default-ZGHKI5WF.cjs +18 -0
  415. package/dist/default-ZGHKI5WF.cjs.map +1 -0
  416. package/dist/enterprise-health-ORQQOLM3.js +3 -0
  417. package/dist/enterprise-health-ORQQOLM3.js.map +1 -0
  418. package/dist/enterprise-health-UDI25OCV.cjs +18 -0
  419. package/dist/enterprise-health-UDI25OCV.cjs.map +1 -0
  420. package/dist/hooks/index.cjs +69 -0
  421. package/dist/hooks/index.cjs.map +1 -0
  422. package/dist/hooks/index.d.cts +179 -0
  423. package/dist/hooks/index.d.ts +179 -0
  424. package/dist/hooks/index.js +8 -0
  425. package/dist/hooks/index.js.map +1 -0
  426. package/dist/index.cjs +33153 -0
  427. package/dist/index.cjs.map +1 -0
  428. package/dist/index.d.cts +8188 -0
  429. package/dist/index.d.ts +8188 -0
  430. package/dist/index.js +32162 -0
  431. package/dist/index.js.map +1 -0
  432. package/dist/mieweb-PV2YKYO7.js +3 -0
  433. package/dist/mieweb-PV2YKYO7.js.map +1 -0
  434. package/dist/mieweb-UJABK5XX.cjs +18 -0
  435. package/dist/mieweb-UJABK5XX.cjs.map +1 -0
  436. package/dist/styles.css +2 -0
  437. package/dist/tailwind-preset.cjs +22 -0
  438. package/dist/tailwind-preset.cjs.map +1 -0
  439. package/dist/tailwind-preset.d.cts +39 -0
  440. package/dist/tailwind-preset.d.ts +39 -0
  441. package/dist/tailwind-preset.js +3 -0
  442. package/dist/tailwind-preset.js.map +1 -0
  443. package/dist/useTheme-B9SWu6ui.d.cts +24 -0
  444. package/dist/useTheme-B9SWu6ui.d.ts +24 -0
  445. package/dist/utils/index.cjs +63 -0
  446. package/dist/utils/index.cjs.map +1 -0
  447. package/dist/utils/index.d.cts +73 -0
  448. package/dist/utils/index.d.ts +73 -0
  449. package/dist/utils/index.js +6 -0
  450. package/dist/utils/index.js.map +1 -0
  451. package/dist/waggleline-6IGA66HR.cjs +18 -0
  452. package/dist/waggleline-6IGA66HR.cjs.map +1 -0
  453. package/dist/waggleline-BMUYAFJF.js +3 -0
  454. package/dist/waggleline-BMUYAFJF.js.map +1 -0
  455. package/dist/webchart-2SLO5ICI.js +3 -0
  456. package/dist/webchart-2SLO5ICI.js.map +1 -0
  457. package/dist/webchart-EHVGP46N.cjs +18 -0
  458. package/dist/webchart-EHVGP46N.cjs.map +1 -0
  459. package/package.json +212 -0
@@ -0,0 +1,134 @@
1
+ 'use strict';
2
+
3
+ var chunkOR5DRJCW_cjs = require('./chunk-OR5DRJCW.cjs');
4
+ var classVarianceAuthority = require('class-variance-authority');
5
+ var jsxRuntime = require('react/jsx-runtime');
6
+
7
+ var skeletonVariants = classVarianceAuthority.cva(
8
+ ["animate-pulse rounded-md bg-neutral-200 dark:bg-neutral-700"],
9
+ {
10
+ variants: {
11
+ variant: {
12
+ default: "",
13
+ text: "h-4",
14
+ title: "h-6",
15
+ avatar: "rounded-full",
16
+ button: "h-10 w-24",
17
+ card: "h-40",
18
+ image: "aspect-video"
19
+ }
20
+ },
21
+ defaultVariants: {
22
+ variant: "default"
23
+ }
24
+ }
25
+ );
26
+ function Skeleton({
27
+ className,
28
+ variant,
29
+ width,
30
+ height,
31
+ circle,
32
+ style,
33
+ ...props
34
+ }) {
35
+ return /* @__PURE__ */ jsxRuntime.jsx(
36
+ "div",
37
+ {
38
+ className: chunkOR5DRJCW_cjs.cn(
39
+ skeletonVariants({ variant }),
40
+ circle && "rounded-full",
41
+ className
42
+ ),
43
+ style: {
44
+ width: typeof width === "number" ? `${width}px` : width,
45
+ height: typeof height === "number" ? `${height}px` : height,
46
+ ...style
47
+ },
48
+ "aria-hidden": "true",
49
+ ...props
50
+ }
51
+ );
52
+ }
53
+ Skeleton.displayName = "Skeleton";
54
+ function SkeletonText({
55
+ lines = 3,
56
+ lastLineWidth = "60%",
57
+ gap = "sm",
58
+ className
59
+ }) {
60
+ const gapClasses = {
61
+ sm: "space-y-2",
62
+ md: "space-y-3",
63
+ lg: "space-y-4"
64
+ };
65
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: chunkOR5DRJCW_cjs.cn(gapClasses[gap], className), "aria-hidden": "true", children: Array.from({ length: lines }).map((_, index) => /* @__PURE__ */ jsxRuntime.jsx(
66
+ Skeleton,
67
+ {
68
+ variant: "text",
69
+ style: {
70
+ width: index === lines - 1 ? lastLineWidth : "100%"
71
+ }
72
+ },
73
+ index
74
+ )) });
75
+ }
76
+ SkeletonText.displayName = "SkeletonText";
77
+ function SkeletonCard({
78
+ showImage = true,
79
+ showAvatar = false,
80
+ textLines = 2,
81
+ className
82
+ }) {
83
+ return /* @__PURE__ */ jsxRuntime.jsxs(
84
+ "div",
85
+ {
86
+ className: chunkOR5DRJCW_cjs.cn(
87
+ "border-border bg-card space-y-4 rounded-xl border p-4",
88
+ className
89
+ ),
90
+ "aria-hidden": "true",
91
+ children: [
92
+ showImage && /* @__PURE__ */ jsxRuntime.jsx(Skeleton, { variant: "image", className: "rounded-lg" }),
93
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-3", children: [
94
+ showAvatar && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-3", children: [
95
+ /* @__PURE__ */ jsxRuntime.jsx(Skeleton, { circle: true, width: 40, height: 40 }),
96
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex-1 space-y-2", children: [
97
+ /* @__PURE__ */ jsxRuntime.jsx(Skeleton, { variant: "text", width: "50%" }),
98
+ /* @__PURE__ */ jsxRuntime.jsx(Skeleton, { variant: "text", width: "30%" })
99
+ ] })
100
+ ] }),
101
+ /* @__PURE__ */ jsxRuntime.jsx(Skeleton, { variant: "title", width: "80%" }),
102
+ /* @__PURE__ */ jsxRuntime.jsx(SkeletonText, { lines: textLines })
103
+ ] })
104
+ ]
105
+ }
106
+ );
107
+ }
108
+ SkeletonCard.displayName = "SkeletonCard";
109
+ function SkeletonTable({
110
+ rows = 5,
111
+ columns = 4,
112
+ className
113
+ }) {
114
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: chunkOR5DRJCW_cjs.cn("space-y-3", className), "aria-hidden": "true", children: [
115
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex gap-4", children: Array.from({ length: columns }).map((_, i) => /* @__PURE__ */ jsxRuntime.jsx(Skeleton, { variant: "text", className: "h-5 flex-1" }, `header-${i}`)) }),
116
+ Array.from({ length: rows }).map((_, rowIndex) => /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex gap-4", children: Array.from({ length: columns }).map((_2, colIndex) => /* @__PURE__ */ jsxRuntime.jsx(
117
+ Skeleton,
118
+ {
119
+ variant: "text",
120
+ className: "flex-1"
121
+ },
122
+ `cell-${rowIndex}-${colIndex}`
123
+ )) }, `row-${rowIndex}`))
124
+ ] });
125
+ }
126
+ SkeletonTable.displayName = "SkeletonTable";
127
+
128
+ exports.Skeleton = Skeleton;
129
+ exports.SkeletonCard = SkeletonCard;
130
+ exports.SkeletonTable = SkeletonTable;
131
+ exports.SkeletonText = SkeletonText;
132
+ exports.skeletonVariants = skeletonVariants;
133
+ //# sourceMappingURL=chunk-N3QTYHRZ.cjs.map
134
+ //# sourceMappingURL=chunk-N3QTYHRZ.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/Skeleton/Skeleton.tsx"],"names":["cva","jsx","cn","jsxs","_"],"mappings":"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","file":"chunk-N3QTYHRZ.cjs","sourcesContent":["import * as React from 'react';\nimport { cva, type VariantProps } from 'class-variance-authority';\nimport { cn } from '../../utils/cn';\n\nconst skeletonVariants = cva(\n ['animate-pulse rounded-md bg-neutral-200 dark:bg-neutral-700'],\n {\n variants: {\n variant: {\n default: '',\n text: 'h-4',\n title: 'h-6',\n avatar: 'rounded-full',\n button: 'h-10 w-24',\n card: 'h-40',\n image: 'aspect-video',\n },\n },\n defaultVariants: {\n variant: 'default',\n },\n }\n);\n\nexport interface SkeletonProps\n extends\n React.HTMLAttributes<HTMLDivElement>,\n VariantProps<typeof skeletonVariants> {\n /** Width of the skeleton */\n width?: string | number;\n /** Height of the skeleton */\n height?: string | number;\n /** Whether to render as a circle */\n circle?: boolean;\n}\n\n/**\n * A skeleton loading placeholder component.\n *\n * @example\n * ```tsx\n * <Skeleton variant=\"text\" width=\"60%\" />\n * <Skeleton variant=\"avatar\" width={40} height={40} />\n * <Skeleton variant=\"card\" />\n * ```\n */\nfunction Skeleton({\n className,\n variant,\n width,\n height,\n circle,\n style,\n ...props\n}: SkeletonProps) {\n return (\n <div\n className={cn(\n skeletonVariants({ variant }),\n circle && 'rounded-full',\n className\n )}\n style={{\n width: typeof width === 'number' ? `${width}px` : width,\n height: typeof height === 'number' ? `${height}px` : height,\n ...style,\n }}\n aria-hidden=\"true\"\n {...props}\n />\n );\n}\n\nSkeleton.displayName = 'Skeleton';\n\n// ============================================================================\n// Skeleton Text\n// ============================================================================\n\nexport interface SkeletonTextProps {\n /** Number of lines to display */\n lines?: number;\n /** Width of the last line (for varying line lengths) */\n lastLineWidth?: string;\n /** Gap between lines */\n gap?: 'sm' | 'md' | 'lg';\n /** Additional class name */\n className?: string;\n}\n\n/**\n * A skeleton for text content with multiple lines.\n *\n * @example\n * ```tsx\n * <SkeletonText lines={3} lastLineWidth=\"60%\" />\n * ```\n */\nfunction SkeletonText({\n lines = 3,\n lastLineWidth = '60%',\n gap = 'sm',\n className,\n}: SkeletonTextProps) {\n const gapClasses = {\n sm: 'space-y-2',\n md: 'space-y-3',\n lg: 'space-y-4',\n };\n\n return (\n <div className={cn(gapClasses[gap], className)} aria-hidden=\"true\">\n {Array.from({ length: lines }).map((_, index) => (\n <Skeleton\n key={index}\n variant=\"text\"\n style={{\n width: index === lines - 1 ? lastLineWidth : '100%',\n }}\n />\n ))}\n </div>\n );\n}\n\nSkeletonText.displayName = 'SkeletonText';\n\n// ============================================================================\n// Skeleton Card\n// ============================================================================\n\nexport interface SkeletonCardProps {\n /** Show image placeholder */\n showImage?: boolean;\n /** Show avatar placeholder */\n showAvatar?: boolean;\n /** Number of text lines */\n textLines?: number;\n /** Additional class name */\n className?: string;\n}\n\n/**\n * A skeleton for card-like content.\n *\n * @example\n * ```tsx\n * <SkeletonCard showImage showAvatar textLines={2} />\n * ```\n */\nfunction SkeletonCard({\n showImage = true,\n showAvatar = false,\n textLines = 2,\n className,\n}: SkeletonCardProps) {\n return (\n <div\n className={cn(\n 'border-border bg-card space-y-4 rounded-xl border p-4',\n className\n )}\n aria-hidden=\"true\"\n >\n {showImage && <Skeleton variant=\"image\" className=\"rounded-lg\" />}\n <div className=\"space-y-3\">\n {showAvatar && (\n <div className=\"flex items-center gap-3\">\n <Skeleton circle width={40} height={40} />\n <div className=\"flex-1 space-y-2\">\n <Skeleton variant=\"text\" width=\"50%\" />\n <Skeleton variant=\"text\" width=\"30%\" />\n </div>\n </div>\n )}\n <Skeleton variant=\"title\" width=\"80%\" />\n <SkeletonText lines={textLines} />\n </div>\n </div>\n );\n}\n\nSkeletonCard.displayName = 'SkeletonCard';\n\n// ============================================================================\n// Skeleton Table Row\n// ============================================================================\n\nexport interface SkeletonTableProps {\n /** Number of rows */\n rows?: number;\n /** Number of columns */\n columns?: number;\n /** Additional class name */\n className?: string;\n}\n\n/**\n * A skeleton for table content.\n *\n * @example\n * ```tsx\n * <SkeletonTable rows={5} columns={4} />\n * ```\n */\nfunction SkeletonTable({\n rows = 5,\n columns = 4,\n className,\n}: SkeletonTableProps) {\n return (\n <div className={cn('space-y-3', className)} aria-hidden=\"true\">\n {/* Header */}\n <div className=\"flex gap-4\">\n {Array.from({ length: columns }).map((_, i) => (\n <Skeleton key={`header-${i}`} variant=\"text\" className=\"h-5 flex-1\" />\n ))}\n </div>\n {/* Rows */}\n {Array.from({ length: rows }).map((_, rowIndex) => (\n <div key={`row-${rowIndex}`} className=\"flex gap-4\">\n {Array.from({ length: columns }).map((_, colIndex) => (\n <Skeleton\n key={`cell-${rowIndex}-${colIndex}`}\n variant=\"text\"\n className=\"flex-1\"\n />\n ))}\n </div>\n ))}\n </div>\n );\n}\n\nSkeletonTable.displayName = 'SkeletonTable';\n\nexport {\n Skeleton,\n SkeletonText,\n SkeletonCard,\n SkeletonTable,\n skeletonVariants,\n};\n"]}
@@ -0,0 +1,148 @@
1
+ import { cn } from './chunk-F3SOEIN2.js';
2
+ import * as React from 'react';
3
+ import { cva } from 'class-variance-authority';
4
+ import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
5
+
6
+ var buttonVariants = cva(
7
+ // Base styles
8
+ [
9
+ "inline-flex items-center justify-center gap-2",
10
+ "font-semibold transition-all duration-200",
11
+ "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",
12
+ "disabled:pointer-events-none disabled:opacity-50",
13
+ "active:scale-[0.98]"
14
+ ],
15
+ {
16
+ variants: {
17
+ variant: {
18
+ primary: [
19
+ "bg-primary-800 text-white",
20
+ "hover:bg-primary-700",
21
+ "active:bg-primary-900"
22
+ ],
23
+ secondary: [
24
+ "bg-neutral-200 text-neutral-900",
25
+ "hover:bg-neutral-300",
26
+ "active:bg-neutral-400",
27
+ "dark:bg-neutral-700 dark:text-neutral-100",
28
+ "dark:hover:bg-neutral-600",
29
+ "dark:active:bg-neutral-500"
30
+ ],
31
+ ghost: [
32
+ "bg-transparent text-neutral-600",
33
+ "hover:bg-neutral-100",
34
+ "active:bg-neutral-200",
35
+ "dark:text-neutral-400",
36
+ "dark:hover:bg-neutral-800",
37
+ "dark:active:bg-neutral-700"
38
+ ],
39
+ outline: [
40
+ "border-2 border-primary-800 text-primary-800 bg-transparent",
41
+ "hover:bg-primary-50 hover:text-primary-900",
42
+ "active:bg-primary-100",
43
+ "dark:border-primary-400 dark:text-primary-400",
44
+ "dark:hover:bg-primary-950",
45
+ "dark:active:bg-primary-900"
46
+ ],
47
+ danger: [
48
+ "bg-red-600 text-white",
49
+ "hover:bg-red-700",
50
+ "active:bg-red-800"
51
+ ],
52
+ link: [
53
+ "text-primary-800 underline-offset-4",
54
+ "hover:underline hover:text-primary-900",
55
+ "active:text-primary-950",
56
+ "dark:text-primary-400"
57
+ ]
58
+ },
59
+ size: {
60
+ sm: "h-8 px-3 text-sm rounded-md",
61
+ md: "h-10 px-4 text-base rounded-lg",
62
+ lg: "h-12 px-6 text-lg rounded-xl",
63
+ icon: "h-10 w-10 rounded-lg"
64
+ },
65
+ fullWidth: {
66
+ true: "w-full",
67
+ false: ""
68
+ }
69
+ },
70
+ defaultVariants: {
71
+ variant: "primary",
72
+ size: "md",
73
+ fullWidth: false
74
+ }
75
+ }
76
+ );
77
+ var Button = React.forwardRef(
78
+ ({
79
+ className,
80
+ variant,
81
+ size,
82
+ fullWidth,
83
+ leftIcon,
84
+ rightIcon,
85
+ isLoading,
86
+ loadingText,
87
+ disabled,
88
+ children,
89
+ ...props
90
+ }, ref) => {
91
+ return /* @__PURE__ */ jsx(
92
+ "button",
93
+ {
94
+ className: cn(buttonVariants({ variant, size, fullWidth }), className),
95
+ ref,
96
+ disabled: disabled || isLoading,
97
+ "aria-busy": isLoading,
98
+ ...props,
99
+ children: isLoading ? /* @__PURE__ */ jsxs(Fragment, { children: [
100
+ /* @__PURE__ */ jsx(LoadingSpinner, {}),
101
+ loadingText || children
102
+ ] }) : /* @__PURE__ */ jsxs(Fragment, { children: [
103
+ React.isValidElement(leftIcon) && /* @__PURE__ */ jsx("span", { className: "shrink-0", children: leftIcon }),
104
+ children,
105
+ React.isValidElement(rightIcon) && /* @__PURE__ */ jsx("span", { className: "shrink-0", children: rightIcon })
106
+ ] })
107
+ }
108
+ );
109
+ }
110
+ );
111
+ Button.displayName = "Button";
112
+ function LoadingSpinner() {
113
+ return /* @__PURE__ */ jsxs(
114
+ "svg",
115
+ {
116
+ className: "h-4 w-4 animate-spin",
117
+ xmlns: "http://www.w3.org/2000/svg",
118
+ fill: "none",
119
+ viewBox: "0 0 24 24",
120
+ "aria-hidden": "true",
121
+ children: [
122
+ /* @__PURE__ */ jsx(
123
+ "circle",
124
+ {
125
+ className: "opacity-25",
126
+ cx: "12",
127
+ cy: "12",
128
+ r: "10",
129
+ stroke: "currentColor",
130
+ strokeWidth: "4"
131
+ }
132
+ ),
133
+ /* @__PURE__ */ jsx(
134
+ "path",
135
+ {
136
+ className: "opacity-75",
137
+ fill: "currentColor",
138
+ d: "M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"
139
+ }
140
+ )
141
+ ]
142
+ }
143
+ );
144
+ }
145
+
146
+ export { Button, buttonVariants };
147
+ //# sourceMappingURL=chunk-N5EKL4DH.js.map
148
+ //# sourceMappingURL=chunk-N5EKL4DH.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/Button/Button.tsx"],"names":[],"mappings":"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","file":"chunk-N5EKL4DH.js","sourcesContent":["import * as React from 'react';\nimport { cva, type VariantProps } from 'class-variance-authority';\nimport { cn } from '../../utils/cn';\n\nconst buttonVariants = cva(\n // Base styles\n [\n 'inline-flex items-center justify-center gap-2',\n 'font-semibold transition-all duration-200',\n 'focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2',\n 'disabled:pointer-events-none disabled:opacity-50',\n 'active:scale-[0.98]',\n ],\n {\n variants: {\n variant: {\n primary: [\n 'bg-primary-800 text-white',\n 'hover:bg-primary-700',\n 'active:bg-primary-900',\n ],\n secondary: [\n 'bg-neutral-200 text-neutral-900',\n 'hover:bg-neutral-300',\n 'active:bg-neutral-400',\n 'dark:bg-neutral-700 dark:text-neutral-100',\n 'dark:hover:bg-neutral-600',\n 'dark:active:bg-neutral-500',\n ],\n ghost: [\n 'bg-transparent text-neutral-600',\n 'hover:bg-neutral-100',\n 'active:bg-neutral-200',\n 'dark:text-neutral-400',\n 'dark:hover:bg-neutral-800',\n 'dark:active:bg-neutral-700',\n ],\n outline: [\n 'border-2 border-primary-800 text-primary-800 bg-transparent',\n 'hover:bg-primary-50 hover:text-primary-900',\n 'active:bg-primary-100',\n 'dark:border-primary-400 dark:text-primary-400',\n 'dark:hover:bg-primary-950',\n 'dark:active:bg-primary-900',\n ],\n danger: [\n 'bg-red-600 text-white',\n 'hover:bg-red-700',\n 'active:bg-red-800',\n ],\n link: [\n 'text-primary-800 underline-offset-4',\n 'hover:underline hover:text-primary-900',\n 'active:text-primary-950',\n 'dark:text-primary-400',\n ],\n },\n size: {\n sm: 'h-8 px-3 text-sm rounded-md',\n md: 'h-10 px-4 text-base rounded-lg',\n lg: 'h-12 px-6 text-lg rounded-xl',\n icon: 'h-10 w-10 rounded-lg',\n },\n fullWidth: {\n true: 'w-full',\n false: '',\n },\n },\n defaultVariants: {\n variant: 'primary',\n size: 'md',\n fullWidth: false,\n },\n }\n);\n\nexport interface ButtonProps\n extends\n React.ButtonHTMLAttributes<HTMLButtonElement>,\n VariantProps<typeof buttonVariants> {\n /** Optional icon element to render before the button text */\n leftIcon?: React.ReactElement | null;\n /** Optional icon element to render after the button text */\n rightIcon?: React.ReactElement | null;\n /** Shows a loading spinner and disables the button */\n isLoading?: boolean;\n /** Accessible label for the loading state */\n loadingText?: string;\n}\n\n/**\n * A versatile button component with multiple variants and sizes.\n *\n * @example\n * ```tsx\n * <Button variant=\"primary\" size=\"md\">Click me</Button>\n * <Button variant=\"danger\" leftIcon={<TrashIcon />}>Delete</Button>\n * <Button variant=\"ghost\" isLoading loadingText=\"Saving...\">Save</Button>\n * ```\n */\nconst Button = React.forwardRef<HTMLButtonElement, ButtonProps>(\n (\n {\n className,\n variant,\n size,\n fullWidth,\n leftIcon,\n rightIcon,\n isLoading,\n loadingText,\n disabled,\n children,\n ...props\n },\n ref\n ) => {\n return (\n <button\n className={cn(buttonVariants({ variant, size, fullWidth }), className)}\n ref={ref}\n disabled={disabled || isLoading}\n aria-busy={isLoading}\n {...props}\n >\n {isLoading ? (\n <>\n <LoadingSpinner />\n {loadingText || children}\n </>\n ) : (\n <>\n {React.isValidElement(leftIcon) && (\n <span className=\"shrink-0\">{leftIcon}</span>\n )}\n {children}\n {React.isValidElement(rightIcon) && (\n <span className=\"shrink-0\">{rightIcon}</span>\n )}\n </>\n )}\n </button>\n );\n }\n);\n\nButton.displayName = 'Button';\n\n/**\n * Simple loading spinner for the button\n */\nfunction LoadingSpinner() {\n return (\n <svg\n className=\"h-4 w-4 animate-spin\"\n xmlns=\"http://www.w3.org/2000/svg\"\n fill=\"none\"\n viewBox=\"0 0 24 24\"\n aria-hidden=\"true\"\n >\n <circle\n className=\"opacity-25\"\n cx=\"12\"\n cy=\"12\"\n r=\"10\"\n stroke=\"currentColor\"\n strokeWidth=\"4\"\n />\n <path\n className=\"opacity-75\"\n fill=\"currentColor\"\n d=\"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z\"\n />\n </svg>\n );\n}\n\nexport { Button, buttonVariants };\n"]}
@@ -0,0 +1,231 @@
1
+ 'use strict';
2
+
3
+ var chunkOR5DRJCW_cjs = require('./chunk-OR5DRJCW.cjs');
4
+ var React = require('react');
5
+ var classVarianceAuthority = require('class-variance-authority');
6
+ var jsxRuntime = require('react/jsx-runtime');
7
+
8
+ function _interopNamespace(e) {
9
+ if (e && e.__esModule) return e;
10
+ var n = Object.create(null);
11
+ if (e) {
12
+ Object.keys(e).forEach(function (k) {
13
+ if (k !== 'default') {
14
+ var d = Object.getOwnPropertyDescriptor(e, k);
15
+ Object.defineProperty(n, k, d.get ? d : {
16
+ enumerable: true,
17
+ get: function () { return e[k]; }
18
+ });
19
+ }
20
+ });
21
+ }
22
+ n.default = e;
23
+ return Object.freeze(n);
24
+ }
25
+
26
+ var React__namespace = /*#__PURE__*/_interopNamespace(React);
27
+
28
+ var progressBarTrackVariants = classVarianceAuthority.cva(
29
+ ["w-full overflow-hidden rounded-full bg-neutral-200 dark:bg-neutral-700"],
30
+ {
31
+ variants: {
32
+ size: {
33
+ sm: "h-1",
34
+ md: "h-2",
35
+ lg: "h-3",
36
+ xl: "h-4"
37
+ }
38
+ },
39
+ defaultVariants: {
40
+ size: "md"
41
+ }
42
+ }
43
+ );
44
+ var progressBarFillVariants = classVarianceAuthority.cva(
45
+ ["h-full rounded-full transition-all duration-300 ease-out"],
46
+ {
47
+ variants: {
48
+ variant: {
49
+ default: "bg-primary-500",
50
+ success: "bg-green-500",
51
+ warning: "bg-yellow-500",
52
+ danger: "bg-red-500"
53
+ },
54
+ animated: {
55
+ true: "animate-pulse",
56
+ false: ""
57
+ },
58
+ striped: {
59
+ true: [
60
+ "bg-gradient-to-r",
61
+ "from-transparent via-white/20 to-transparent",
62
+ "bg-[length:1rem_100%]",
63
+ "animate-[progress-stripes_1s_linear_infinite]"
64
+ ],
65
+ false: ""
66
+ }
67
+ },
68
+ defaultVariants: {
69
+ variant: "default",
70
+ animated: false,
71
+ striped: false
72
+ }
73
+ }
74
+ );
75
+ function Progress({
76
+ value,
77
+ max = 100,
78
+ label,
79
+ showValue = false,
80
+ formatValue,
81
+ size,
82
+ variant,
83
+ animated,
84
+ striped,
85
+ className,
86
+ indeterminate = false
87
+ }) {
88
+ const percentage = Math.min(Math.max(value / max * 100, 0), 100);
89
+ const progressId = React__namespace.useId();
90
+ const displayValue = formatValue ? formatValue(value, max) : `${Math.round(percentage)}%`;
91
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: chunkOR5DRJCW_cjs.cn("w-full", className), children: [
92
+ (label || showValue) && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "mb-1.5 flex items-center justify-between", children: [
93
+ label && /* @__PURE__ */ jsxRuntime.jsx(
94
+ "label",
95
+ {
96
+ id: `${progressId}-label`,
97
+ className: "text-foreground text-sm font-medium",
98
+ children: label
99
+ }
100
+ ),
101
+ showValue && !indeterminate && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-muted-foreground text-sm", children: displayValue })
102
+ ] }),
103
+ /* @__PURE__ */ jsxRuntime.jsx(
104
+ "div",
105
+ {
106
+ role: "progressbar",
107
+ "aria-valuenow": indeterminate ? void 0 : value,
108
+ "aria-valuemin": 0,
109
+ "aria-valuemax": max,
110
+ "aria-labelledby": label ? `${progressId}-label` : void 0,
111
+ "aria-label": !label ? "Progress" : void 0,
112
+ className: chunkOR5DRJCW_cjs.cn(progressBarTrackVariants({ size })),
113
+ children: /* @__PURE__ */ jsxRuntime.jsx(
114
+ "div",
115
+ {
116
+ className: chunkOR5DRJCW_cjs.cn(
117
+ progressBarFillVariants({ variant, animated, striped }),
118
+ indeterminate && "w-1/3 animate-[indeterminate_1.5s_ease-in-out_infinite]",
119
+ !striped && variant === "default" && "bg-primary-500",
120
+ !striped && variant === "success" && "bg-green-500",
121
+ !striped && variant === "warning" && "bg-yellow-500",
122
+ !striped && variant === "danger" && "bg-red-500"
123
+ ),
124
+ style: indeterminate ? void 0 : { width: `${percentage}%` }
125
+ }
126
+ )
127
+ }
128
+ )
129
+ ] });
130
+ }
131
+ Progress.displayName = "Progress";
132
+ var circularProgressVariants = classVarianceAuthority.cva(["relative inline-flex"], {
133
+ variants: {
134
+ size: {
135
+ sm: "h-8 w-8",
136
+ md: "h-12 w-12",
137
+ lg: "h-16 w-16",
138
+ xl: "h-24 w-24"
139
+ }
140
+ },
141
+ defaultVariants: {
142
+ size: "md"
143
+ }
144
+ });
145
+ function CircularProgress({
146
+ value,
147
+ max = 100,
148
+ variant = "default",
149
+ size,
150
+ strokeWidth = 4,
151
+ showValue = false,
152
+ indeterminate = false,
153
+ className
154
+ }) {
155
+ const percentage = Math.min(Math.max(value / max * 100, 0), 100);
156
+ const sizeMap = { sm: 32, md: 48, lg: 64, xl: 96 };
157
+ const svgSize = sizeMap[size || "md"];
158
+ const radius = (svgSize - strokeWidth) / 2;
159
+ const circumference = 2 * Math.PI * radius;
160
+ const offset = circumference - percentage / 100 * circumference;
161
+ const variantColors = {
162
+ default: "stroke-primary-500",
163
+ success: "stroke-green-500",
164
+ warning: "stroke-yellow-500",
165
+ danger: "stroke-red-500"
166
+ };
167
+ return /* @__PURE__ */ jsxRuntime.jsxs(
168
+ "div",
169
+ {
170
+ role: "progressbar",
171
+ "aria-valuenow": indeterminate ? void 0 : value,
172
+ "aria-valuemin": 0,
173
+ "aria-valuemax": max,
174
+ "aria-label": "Progress",
175
+ className: chunkOR5DRJCW_cjs.cn(circularProgressVariants({ size }), className),
176
+ children: [
177
+ /* @__PURE__ */ jsxRuntime.jsxs(
178
+ "svg",
179
+ {
180
+ className: chunkOR5DRJCW_cjs.cn("-rotate-90 transform", indeterminate && "animate-spin"),
181
+ width: svgSize,
182
+ height: svgSize,
183
+ children: [
184
+ /* @__PURE__ */ jsxRuntime.jsx(
185
+ "circle",
186
+ {
187
+ className: "stroke-neutral-200 dark:stroke-neutral-700",
188
+ fill: "none",
189
+ strokeWidth,
190
+ cx: svgSize / 2,
191
+ cy: svgSize / 2,
192
+ r: radius
193
+ }
194
+ ),
195
+ /* @__PURE__ */ jsxRuntime.jsx(
196
+ "circle",
197
+ {
198
+ className: chunkOR5DRJCW_cjs.cn(
199
+ variantColors[variant],
200
+ "transition-all duration-300 ease-out"
201
+ ),
202
+ fill: "none",
203
+ strokeWidth,
204
+ strokeLinecap: "round",
205
+ cx: svgSize / 2,
206
+ cy: svgSize / 2,
207
+ r: radius,
208
+ strokeDasharray: circumference,
209
+ strokeDashoffset: indeterminate ? circumference * 0.75 : offset
210
+ }
211
+ )
212
+ ]
213
+ }
214
+ ),
215
+ showValue && !indeterminate && /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "text-foreground absolute inset-0 flex items-center justify-center text-xs font-medium", children: [
216
+ Math.round(percentage),
217
+ "%"
218
+ ] })
219
+ ]
220
+ }
221
+ );
222
+ }
223
+ CircularProgress.displayName = "CircularProgress";
224
+
225
+ exports.CircularProgress = CircularProgress;
226
+ exports.Progress = Progress;
227
+ exports.circularProgressVariants = circularProgressVariants;
228
+ exports.progressBarFillVariants = progressBarFillVariants;
229
+ exports.progressBarTrackVariants = progressBarTrackVariants;
230
+ //# sourceMappingURL=chunk-NAATBUHR.cjs.map
231
+ //# sourceMappingURL=chunk-NAATBUHR.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/Progress/Progress.tsx"],"names":["cva","React","cn","jsxs","jsx"],"mappings":"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","file":"chunk-NAATBUHR.cjs","sourcesContent":["import * as React from 'react';\nimport { cva, type VariantProps } from 'class-variance-authority';\nimport { cn } from '../../utils/cn';\n\n// ============================================================================\n// Progress Bar Variants\n// ============================================================================\n\nconst progressBarTrackVariants = cva(\n ['w-full overflow-hidden rounded-full bg-neutral-200 dark:bg-neutral-700'],\n {\n variants: {\n size: {\n sm: 'h-1',\n md: 'h-2',\n lg: 'h-3',\n xl: 'h-4',\n },\n },\n defaultVariants: {\n size: 'md',\n },\n }\n);\n\nconst progressBarFillVariants = cva(\n ['h-full rounded-full transition-all duration-300 ease-out'],\n {\n variants: {\n variant: {\n default: 'bg-primary-500',\n success: 'bg-green-500',\n warning: 'bg-yellow-500',\n danger: 'bg-red-500',\n },\n animated: {\n true: 'animate-pulse',\n false: '',\n },\n striped: {\n true: [\n 'bg-gradient-to-r',\n 'from-transparent via-white/20 to-transparent',\n 'bg-[length:1rem_100%]',\n 'animate-[progress-stripes_1s_linear_infinite]',\n ],\n false: '',\n },\n },\n defaultVariants: {\n variant: 'default',\n animated: false,\n striped: false,\n },\n }\n);\n\n// ============================================================================\n// Progress Bar Component\n// ============================================================================\n\nexport interface ProgressProps\n extends\n VariantProps<typeof progressBarTrackVariants>,\n VariantProps<typeof progressBarFillVariants> {\n /** Current progress value (0-100) */\n value: number;\n /** Maximum value (default: 100) */\n max?: number;\n /** Label for the progress bar */\n label?: string;\n /** Show the percentage value */\n showValue?: boolean;\n /** Format the displayed value */\n formatValue?: (value: number, max: number) => string;\n /** Additional class name */\n className?: string;\n /** Whether the progress is indeterminate */\n indeterminate?: boolean;\n}\n\n/**\n * A progress bar component for showing completion status.\n *\n * @example\n * ```tsx\n * <Progress value={60} />\n * <Progress value={75} showValue label=\"Upload progress\" />\n * <Progress value={30} variant=\"success\" striped />\n * ```\n */\nfunction Progress({\n value,\n max = 100,\n label,\n showValue = false,\n formatValue,\n size,\n variant,\n animated,\n striped,\n className,\n indeterminate = false,\n}: ProgressProps) {\n const percentage = Math.min(Math.max((value / max) * 100, 0), 100);\n const progressId = React.useId();\n\n const displayValue = formatValue\n ? formatValue(value, max)\n : `${Math.round(percentage)}%`;\n\n return (\n <div className={cn('w-full', className)}>\n {(label || showValue) && (\n <div className=\"mb-1.5 flex items-center justify-between\">\n {label && (\n <label\n id={`${progressId}-label`}\n className=\"text-foreground text-sm font-medium\"\n >\n {label}\n </label>\n )}\n {showValue && !indeterminate && (\n <span className=\"text-muted-foreground text-sm\">\n {displayValue}\n </span>\n )}\n </div>\n )}\n <div\n role=\"progressbar\"\n aria-valuenow={indeterminate ? undefined : value}\n aria-valuemin={0}\n aria-valuemax={max}\n aria-labelledby={label ? `${progressId}-label` : undefined}\n aria-label={!label ? 'Progress' : undefined}\n className={cn(progressBarTrackVariants({ size }))}\n >\n <div\n className={cn(\n progressBarFillVariants({ variant, animated, striped }),\n indeterminate &&\n 'w-1/3 animate-[indeterminate_1.5s_ease-in-out_infinite]',\n !striped && variant === 'default' && 'bg-primary-500',\n !striped && variant === 'success' && 'bg-green-500',\n !striped && variant === 'warning' && 'bg-yellow-500',\n !striped && variant === 'danger' && 'bg-red-500'\n )}\n style={indeterminate ? undefined : { width: `${percentage}%` }}\n />\n </div>\n </div>\n );\n}\n\nProgress.displayName = 'Progress';\n\n// ============================================================================\n// Circular Progress Variants\n// ============================================================================\n\nconst circularProgressVariants = cva(['relative inline-flex'], {\n variants: {\n size: {\n sm: 'h-8 w-8',\n md: 'h-12 w-12',\n lg: 'h-16 w-16',\n xl: 'h-24 w-24',\n },\n },\n defaultVariants: {\n size: 'md',\n },\n});\n\n// ============================================================================\n// Circular Progress Component\n// ============================================================================\n\nexport interface CircularProgressProps extends VariantProps<\n typeof circularProgressVariants\n> {\n /** Current progress value (0-100) */\n value: number;\n /** Maximum value (default: 100) */\n max?: number;\n /** Color variant */\n variant?: 'default' | 'success' | 'warning' | 'danger';\n /** Stroke width */\n strokeWidth?: number;\n /** Show the percentage value in the center */\n showValue?: boolean;\n /** Whether the progress is indeterminate */\n indeterminate?: boolean;\n /** Additional class name */\n className?: string;\n}\n\n/**\n * A circular progress indicator component.\n *\n * @example\n * ```tsx\n * <CircularProgress value={75} showValue />\n * <CircularProgress value={50} variant=\"success\" size=\"lg\" />\n * ```\n */\nfunction CircularProgress({\n value,\n max = 100,\n variant = 'default',\n size,\n strokeWidth = 4,\n showValue = false,\n indeterminate = false,\n className,\n}: CircularProgressProps) {\n const percentage = Math.min(Math.max((value / max) * 100, 0), 100);\n\n // SVG calculations\n const sizeMap = { sm: 32, md: 48, lg: 64, xl: 96 };\n const svgSize = sizeMap[size || 'md'];\n const radius = (svgSize - strokeWidth) / 2;\n const circumference = 2 * Math.PI * radius;\n const offset = circumference - (percentage / 100) * circumference;\n\n const variantColors = {\n default: 'stroke-primary-500',\n success: 'stroke-green-500',\n warning: 'stroke-yellow-500',\n danger: 'stroke-red-500',\n };\n\n return (\n <div\n role=\"progressbar\"\n aria-valuenow={indeterminate ? undefined : value}\n aria-valuemin={0}\n aria-valuemax={max}\n aria-label=\"Progress\"\n className={cn(circularProgressVariants({ size }), className)}\n >\n <svg\n className={cn('-rotate-90 transform', indeterminate && 'animate-spin')}\n width={svgSize}\n height={svgSize}\n >\n {/* Background track */}\n <circle\n className=\"stroke-neutral-200 dark:stroke-neutral-700\"\n fill=\"none\"\n strokeWidth={strokeWidth}\n cx={svgSize / 2}\n cy={svgSize / 2}\n r={radius}\n />\n {/* Progress fill */}\n <circle\n className={cn(\n variantColors[variant],\n 'transition-all duration-300 ease-out'\n )}\n fill=\"none\"\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n cx={svgSize / 2}\n cy={svgSize / 2}\n r={radius}\n strokeDasharray={circumference}\n strokeDashoffset={indeterminate ? circumference * 0.75 : offset}\n />\n </svg>\n {showValue && !indeterminate && (\n <span className=\"text-foreground absolute inset-0 flex items-center justify-center text-xs font-medium\">\n {Math.round(percentage)}%\n </span>\n )}\n </div>\n );\n}\n\nCircularProgress.displayName = 'CircularProgress';\n\nexport {\n Progress,\n CircularProgress,\n progressBarTrackVariants,\n progressBarFillVariants,\n circularProgressVariants,\n};\n"]}