@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,753 @@
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 audioRecorderVariants = classVarianceAuthority.cva(
29
+ [
30
+ "relative flex flex-col gap-3",
31
+ "rounded-xl border border-border",
32
+ "bg-card text-card-foreground",
33
+ "transition-all duration-200"
34
+ ],
35
+ {
36
+ variants: {
37
+ size: {
38
+ sm: "p-3",
39
+ md: "p-4",
40
+ lg: "p-5"
41
+ },
42
+ variant: {
43
+ default: "",
44
+ minimal: "border-none bg-transparent shadow-none",
45
+ elevated: "shadow-lg border-0"
46
+ }
47
+ },
48
+ defaultVariants: {
49
+ size: "md",
50
+ variant: "default"
51
+ }
52
+ }
53
+ );
54
+ var waveformContainerVariants = classVarianceAuthority.cva(
55
+ [
56
+ "relative w-full overflow-hidden rounded-lg",
57
+ "bg-neutral-100 dark:bg-neutral-800",
58
+ "transition-all duration-200"
59
+ ],
60
+ {
61
+ variants: {
62
+ state: {
63
+ idle: "opacity-50",
64
+ listening: "opacity-75",
65
+ recording: "",
66
+ paused: "opacity-90",
67
+ stopped: "",
68
+ playback: ""
69
+ }
70
+ },
71
+ defaultVariants: {
72
+ state: "idle"
73
+ }
74
+ }
75
+ );
76
+ var controlButtonVariants = classVarianceAuthority.cva(
77
+ [
78
+ "inline-flex items-center justify-center",
79
+ "rounded-full transition-all duration-200",
80
+ "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",
81
+ "disabled:pointer-events-none disabled:opacity-50",
82
+ "active:scale-95"
83
+ ],
84
+ {
85
+ variants: {
86
+ variant: {
87
+ primary: [
88
+ "bg-primary-600 text-white",
89
+ "hover:bg-primary-700",
90
+ "active:bg-primary-800"
91
+ ],
92
+ secondary: [
93
+ "bg-neutral-200 text-neutral-700",
94
+ "hover:bg-neutral-300",
95
+ "dark:bg-neutral-700 dark:text-neutral-200",
96
+ "dark:hover:bg-neutral-600"
97
+ ],
98
+ danger: [
99
+ "bg-red-600 text-white",
100
+ "hover:bg-red-700",
101
+ "active:bg-red-800"
102
+ ],
103
+ ghost: [
104
+ "bg-transparent text-neutral-600",
105
+ "hover:bg-neutral-100",
106
+ "dark:text-neutral-400 dark:hover:bg-neutral-800"
107
+ ]
108
+ },
109
+ size: {
110
+ sm: "h-8 w-8",
111
+ md: "h-10 w-10",
112
+ lg: "h-12 w-12"
113
+ }
114
+ },
115
+ defaultVariants: {
116
+ variant: "primary",
117
+ size: "md"
118
+ }
119
+ }
120
+ );
121
+ function formatTime(seconds) {
122
+ const mins = Math.floor(seconds / 60);
123
+ const secs = Math.floor(seconds % 60);
124
+ return `${mins}:${secs.toString().padStart(2, "0")}`;
125
+ }
126
+ function MicrophoneIcon({ className }) {
127
+ return /* @__PURE__ */ jsxRuntime.jsx(
128
+ "svg",
129
+ {
130
+ className,
131
+ fill: "none",
132
+ viewBox: "0 0 24 24",
133
+ strokeWidth: 2,
134
+ stroke: "currentColor",
135
+ "aria-hidden": "true",
136
+ children: /* @__PURE__ */ jsxRuntime.jsx(
137
+ "path",
138
+ {
139
+ strokeLinecap: "round",
140
+ strokeLinejoin: "round",
141
+ d: "M12 18.75a6 6 0 006-6v-1.5m-6 7.5a6 6 0 01-6-6v-1.5m6 7.5v3.75m-3.75 0h7.5M12 15.75a3 3 0 01-3-3V4.5a3 3 0 116 0v8.25a3 3 0 01-3 3z"
142
+ }
143
+ )
144
+ }
145
+ );
146
+ }
147
+ function StopIcon({ className }) {
148
+ return /* @__PURE__ */ jsxRuntime.jsx(
149
+ "svg",
150
+ {
151
+ className,
152
+ fill: "currentColor",
153
+ viewBox: "0 0 24 24",
154
+ "aria-hidden": "true",
155
+ children: /* @__PURE__ */ jsxRuntime.jsx("rect", { x: "6", y: "6", width: "12", height: "12", rx: "2" })
156
+ }
157
+ );
158
+ }
159
+ function PlayIcon({ className }) {
160
+ return /* @__PURE__ */ jsxRuntime.jsx(
161
+ "svg",
162
+ {
163
+ className,
164
+ fill: "currentColor",
165
+ viewBox: "0 0 24 24",
166
+ "aria-hidden": "true",
167
+ children: /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M8 5.14v14l11-7-11-7z" })
168
+ }
169
+ );
170
+ }
171
+ function PauseIcon({ className }) {
172
+ return /* @__PURE__ */ jsxRuntime.jsx(
173
+ "svg",
174
+ {
175
+ className,
176
+ fill: "currentColor",
177
+ viewBox: "0 0 24 24",
178
+ "aria-hidden": "true",
179
+ children: /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M6 4h4v16H6V4zm8 0h4v16h-4V4z" })
180
+ }
181
+ );
182
+ }
183
+ function TrashIcon({ className }) {
184
+ return /* @__PURE__ */ jsxRuntime.jsx(
185
+ "svg",
186
+ {
187
+ className,
188
+ fill: "none",
189
+ viewBox: "0 0 24 24",
190
+ strokeWidth: 2,
191
+ stroke: "currentColor",
192
+ "aria-hidden": "true",
193
+ children: /* @__PURE__ */ jsxRuntime.jsx(
194
+ "path",
195
+ {
196
+ strokeLinecap: "round",
197
+ strokeLinejoin: "round",
198
+ d: "M14.74 9l-.346 9m-4.788 0L9.26 9m9.968-3.21c.342.052.682.107 1.022.166m-1.022-.165L18.16 19.673a2.25 2.25 0 01-2.244 2.077H8.084a2.25 2.25 0 01-2.244-2.077L4.772 5.79m14.456 0a48.108 48.108 0 00-3.478-.397m-12 .562c.34-.059.68-.114 1.022-.165m0 0a48.11 48.11 0 013.478-.397m7.5 0v-.916c0-1.18-.91-2.164-2.09-2.201a51.964 51.964 0 00-3.32 0c-1.18.037-2.09 1.022-2.09 2.201v.916m7.5 0a48.667 48.667 0 00-7.5 0"
199
+ }
200
+ )
201
+ }
202
+ );
203
+ }
204
+ function RecordingIndicator({
205
+ isRecording,
206
+ isPaused
207
+ }) {
208
+ if (!isRecording && !isPaused) return null;
209
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-2", children: [
210
+ /* @__PURE__ */ jsxRuntime.jsx(
211
+ "div",
212
+ {
213
+ className: chunkOR5DRJCW_cjs.cn(
214
+ "h-3 w-3 rounded-full",
215
+ isRecording && !isPaused ? "animate-pulse bg-red-500" : "bg-yellow-500"
216
+ ),
217
+ "aria-hidden": "true"
218
+ }
219
+ ),
220
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-sm font-medium text-neutral-600 dark:text-neutral-400", children: isPaused ? "Paused" : "Recording" })
221
+ ] });
222
+ }
223
+ function TimeDisplay({
224
+ currentTime,
225
+ duration,
226
+ maxDuration,
227
+ showMax
228
+ }) {
229
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-1 font-mono text-sm text-neutral-600 dark:text-neutral-400", children: [
230
+ /* @__PURE__ */ jsxRuntime.jsx("span", { children: formatTime(currentTime) }),
231
+ /* @__PURE__ */ jsxRuntime.jsx("span", { children: "/" }),
232
+ /* @__PURE__ */ jsxRuntime.jsx("span", { children: formatTime(showMax && maxDuration ? maxDuration : duration) })
233
+ ] });
234
+ }
235
+ function LiveVisualizer({
236
+ analyser,
237
+ isActive,
238
+ height,
239
+ barColor
240
+ }) {
241
+ const canvasRef = React__namespace.useRef(null);
242
+ const animationRef = React__namespace.useRef(void 0);
243
+ React__namespace.useEffect(() => {
244
+ if (!analyser || !canvasRef.current || !isActive) return;
245
+ const canvas = canvasRef.current;
246
+ const ctx = canvas.getContext("2d");
247
+ if (!ctx) return;
248
+ const bufferLength = analyser.frequencyBinCount;
249
+ const dataArray = new Uint8Array(bufferLength);
250
+ const draw = () => {
251
+ if (!isActive) return;
252
+ analyser.getByteFrequencyData(dataArray);
253
+ ctx.fillStyle = "transparent";
254
+ ctx.clearRect(0, 0, canvas.width, canvas.height);
255
+ const barWidth = canvas.width / bufferLength * 2.5;
256
+ let x = 0;
257
+ for (let i = 0; i < bufferLength; i++) {
258
+ const barHeight = dataArray[i] / 255 * canvas.height;
259
+ ctx.fillStyle = barColor || getComputedStyle(document.documentElement).getPropertyValue(
260
+ "--color-primary-500"
261
+ ) || "#3b82f6";
262
+ ctx.fillRect(x, canvas.height - barHeight, barWidth, barHeight);
263
+ x += barWidth + 1;
264
+ }
265
+ animationRef.current = requestAnimationFrame(draw);
266
+ };
267
+ draw();
268
+ return () => {
269
+ if (animationRef.current) {
270
+ cancelAnimationFrame(animationRef.current);
271
+ }
272
+ };
273
+ }, [analyser, isActive, barColor]);
274
+ return /* @__PURE__ */ jsxRuntime.jsx(
275
+ "canvas",
276
+ {
277
+ ref: canvasRef,
278
+ width: 600,
279
+ height,
280
+ className: "w-full",
281
+ style: { height }
282
+ }
283
+ );
284
+ }
285
+ function AudioRecorder({
286
+ state: controlledState,
287
+ onStateChange,
288
+ onRecordingComplete,
289
+ onRecordingStart,
290
+ onError,
291
+ maxDuration = 0,
292
+ mimeType = "audio/webm",
293
+ waveColor,
294
+ progressColor,
295
+ cursorColor,
296
+ waveformHeight = 80,
297
+ showTime = true,
298
+ showWaveform = true,
299
+ size,
300
+ variant,
301
+ className,
302
+ "aria-label": ariaLabel = "Audio recorder",
303
+ audioUrl,
304
+ disabled = false,
305
+ renderControls
306
+ }) {
307
+ const [internalState, setInternalState] = React__namespace.useState("idle");
308
+ const state = controlledState ?? internalState;
309
+ const [currentTime, setCurrentTime] = React__namespace.useState(0);
310
+ const [duration, setDuration] = React__namespace.useState(0);
311
+ const [audioBlob, setAudioBlob] = React__namespace.useState(null);
312
+ const [audioObjectUrl, setAudioObjectUrl] = React__namespace.useState(
313
+ null
314
+ );
315
+ const [pendingBlob, setPendingBlob] = React__namespace.useState(null);
316
+ const waveformRef = React__namespace.useRef(null);
317
+ const wavesurferRef = React__namespace.useRef(null);
318
+ const mediaRecorderRef = React__namespace.useRef(null);
319
+ const audioContextRef = React__namespace.useRef(null);
320
+ const analyserRef = React__namespace.useRef(null);
321
+ const streamRef = React__namespace.useRef(null);
322
+ const chunksRef = React__namespace.useRef([]);
323
+ const timerRef = React__namespace.useRef(void 0);
324
+ const startTimeRef = React__namespace.useRef(0);
325
+ const handleStopRef = React__namespace.useRef(() => {
326
+ });
327
+ const updateState = React__namespace.useCallback(
328
+ (newState) => {
329
+ if (!controlledState) {
330
+ setInternalState(newState);
331
+ }
332
+ onStateChange?.(newState);
333
+ },
334
+ [controlledState, onStateChange]
335
+ );
336
+ const initWaveSurfer = React__namespace.useCallback(async () => {
337
+ if (!waveformRef.current || !showWaveform) return;
338
+ const WaveSurferModule = await import('wavesurfer.js');
339
+ const WaveSurfer = WaveSurferModule.default;
340
+ if (wavesurferRef.current) {
341
+ wavesurferRef.current.destroy();
342
+ }
343
+ const computedStyle = getComputedStyle(document.documentElement);
344
+ const defaultWaveColor = computedStyle.getPropertyValue("--color-primary-400").trim() || "#60a5fa";
345
+ const defaultProgressColor = computedStyle.getPropertyValue("--color-primary-600").trim() || "#2563eb";
346
+ const defaultCursorColor = computedStyle.getPropertyValue("--color-primary-800").trim() || "#1e40af";
347
+ wavesurferRef.current = WaveSurfer.create({
348
+ container: waveformRef.current,
349
+ waveColor: waveColor || defaultWaveColor,
350
+ progressColor: progressColor || defaultProgressColor,
351
+ cursorColor: cursorColor || defaultCursorColor,
352
+ cursorWidth: 2,
353
+ height: waveformHeight,
354
+ barWidth: 2,
355
+ barGap: 1,
356
+ barRadius: 2,
357
+ normalize: true,
358
+ hideScrollbar: true
359
+ });
360
+ const ws = wavesurferRef.current;
361
+ ws.on("timeupdate", (time) => {
362
+ setCurrentTime(time);
363
+ });
364
+ ws.on("ready", () => {
365
+ if (wavesurferRef.current) {
366
+ setDuration(wavesurferRef.current.getDuration());
367
+ }
368
+ });
369
+ ws.on("finish", () => {
370
+ updateState("stopped");
371
+ });
372
+ }, [
373
+ showWaveform,
374
+ waveColor,
375
+ progressColor,
376
+ cursorColor,
377
+ waveformHeight,
378
+ updateState
379
+ ]);
380
+ React__namespace.useEffect(() => {
381
+ if (audioUrl && wavesurferRef.current) {
382
+ wavesurferRef.current.load(audioUrl);
383
+ updateState("stopped");
384
+ }
385
+ }, [audioUrl, updateState]);
386
+ React__namespace.useEffect(() => {
387
+ if (pendingBlob && waveformRef.current && state === "stopped") {
388
+ const loadBlob = async () => {
389
+ if (!wavesurferRef.current) {
390
+ await initWaveSurfer();
391
+ }
392
+ if (wavesurferRef.current && pendingBlob) {
393
+ wavesurferRef.current.loadBlob(pendingBlob);
394
+ setPendingBlob(null);
395
+ }
396
+ };
397
+ const timer = setTimeout(loadBlob, 50);
398
+ return () => clearTimeout(timer);
399
+ }
400
+ }, [pendingBlob, state, initWaveSurfer]);
401
+ React__namespace.useEffect(() => {
402
+ initWaveSurfer();
403
+ return () => {
404
+ if (wavesurferRef.current) {
405
+ wavesurferRef.current.destroy();
406
+ }
407
+ if (audioContextRef.current) {
408
+ audioContextRef.current.close();
409
+ }
410
+ if (streamRef.current) {
411
+ streamRef.current.getTracks().forEach((track) => track.stop());
412
+ }
413
+ if (audioObjectUrl) {
414
+ URL.revokeObjectURL(audioObjectUrl);
415
+ }
416
+ if (timerRef.current) {
417
+ clearInterval(timerRef.current);
418
+ }
419
+ };
420
+ }, [initWaveSurfer, audioObjectUrl]);
421
+ const handleRecord = React__namespace.useCallback(async () => {
422
+ if (disabled) return;
423
+ try {
424
+ const stream = await navigator.mediaDevices.getUserMedia({ audio: true });
425
+ streamRef.current = stream;
426
+ audioContextRef.current = new AudioContext();
427
+ const source = audioContextRef.current.createMediaStreamSource(stream);
428
+ analyserRef.current = audioContextRef.current.createAnalyser();
429
+ analyserRef.current.fftSize = 256;
430
+ source.connect(analyserRef.current);
431
+ const options = { mimeType };
432
+ if (!MediaRecorder.isTypeSupported(mimeType)) {
433
+ mediaRecorderRef.current = new MediaRecorder(stream);
434
+ } else {
435
+ mediaRecorderRef.current = new MediaRecorder(stream, options);
436
+ }
437
+ chunksRef.current = [];
438
+ mediaRecorderRef.current.ondataavailable = (e) => {
439
+ if (e.data.size > 0) {
440
+ chunksRef.current.push(e.data);
441
+ }
442
+ };
443
+ mediaRecorderRef.current.onstop = async () => {
444
+ const blob = new Blob(chunksRef.current, { type: mimeType });
445
+ setAudioBlob(blob);
446
+ if (audioObjectUrl) {
447
+ URL.revokeObjectURL(audioObjectUrl);
448
+ }
449
+ const url = URL.createObjectURL(blob);
450
+ setAudioObjectUrl(url);
451
+ setPendingBlob(blob);
452
+ onRecordingComplete?.(blob, duration);
453
+ updateState("stopped");
454
+ };
455
+ mediaRecorderRef.current.start(100);
456
+ startTimeRef.current = Date.now();
457
+ updateState("recording");
458
+ onRecordingStart?.();
459
+ timerRef.current = window.setInterval(() => {
460
+ const elapsed = (Date.now() - startTimeRef.current) / 1e3;
461
+ setCurrentTime(elapsed);
462
+ setDuration(elapsed);
463
+ if (maxDuration > 0 && elapsed >= maxDuration) {
464
+ handleStopRef.current();
465
+ }
466
+ }, 100);
467
+ } catch (error) {
468
+ onError?.(error);
469
+ updateState("idle");
470
+ }
471
+ }, [
472
+ disabled,
473
+ mimeType,
474
+ maxDuration,
475
+ audioObjectUrl,
476
+ duration,
477
+ onRecordingComplete,
478
+ onRecordingStart,
479
+ onError,
480
+ updateState
481
+ ]);
482
+ const handlePause = React__namespace.useCallback(() => {
483
+ if (mediaRecorderRef.current && mediaRecorderRef.current.state === "recording") {
484
+ mediaRecorderRef.current.pause();
485
+ if (timerRef.current) {
486
+ clearInterval(timerRef.current);
487
+ }
488
+ updateState("paused");
489
+ } else if (wavesurferRef.current && (state === "playback" || state === "stopped")) {
490
+ wavesurferRef.current.pause();
491
+ updateState("paused");
492
+ }
493
+ }, [state, updateState]);
494
+ const handleResume = React__namespace.useCallback(() => {
495
+ if (mediaRecorderRef.current && mediaRecorderRef.current.state === "paused") {
496
+ mediaRecorderRef.current.resume();
497
+ const pausedTime = currentTime;
498
+ startTimeRef.current = Date.now() - pausedTime * 1e3;
499
+ timerRef.current = window.setInterval(() => {
500
+ const elapsed = (Date.now() - startTimeRef.current) / 1e3;
501
+ setCurrentTime(elapsed);
502
+ setDuration(elapsed);
503
+ if (maxDuration > 0 && elapsed >= maxDuration) {
504
+ handleStopRef.current();
505
+ }
506
+ }, 100);
507
+ updateState("recording");
508
+ } else if (wavesurferRef.current && state === "paused") {
509
+ wavesurferRef.current.play();
510
+ updateState("playback");
511
+ }
512
+ }, [currentTime, maxDuration, state, updateState]);
513
+ const handleStop = React__namespace.useCallback(() => {
514
+ if (timerRef.current) {
515
+ clearInterval(timerRef.current);
516
+ }
517
+ if (mediaRecorderRef.current && (mediaRecorderRef.current.state === "recording" || mediaRecorderRef.current.state === "paused")) {
518
+ mediaRecorderRef.current.stop();
519
+ }
520
+ if (streamRef.current) {
521
+ streamRef.current.getTracks().forEach((track) => track.stop());
522
+ }
523
+ if (audioContextRef.current) {
524
+ audioContextRef.current.close();
525
+ audioContextRef.current = null;
526
+ }
527
+ analyserRef.current = null;
528
+ }, []);
529
+ handleStopRef.current = handleStop;
530
+ const handlePlay = React__namespace.useCallback(() => {
531
+ if (wavesurferRef.current) {
532
+ wavesurferRef.current.play();
533
+ updateState("playback");
534
+ }
535
+ }, [updateState]);
536
+ const handleSeek = React__namespace.useCallback((time) => {
537
+ if (wavesurferRef.current) {
538
+ const progress = time / wavesurferRef.current.getDuration();
539
+ wavesurferRef.current.seekTo(progress);
540
+ setCurrentTime(time);
541
+ }
542
+ }, []);
543
+ const handleDelete = React__namespace.useCallback(() => {
544
+ setAudioBlob(null);
545
+ if (audioObjectUrl) {
546
+ URL.revokeObjectURL(audioObjectUrl);
547
+ setAudioObjectUrl(null);
548
+ }
549
+ setCurrentTime(0);
550
+ setDuration(0);
551
+ updateState("idle");
552
+ }, [audioObjectUrl, updateState]);
553
+ const isRecording = state === "recording";
554
+ const isPaused = state === "paused";
555
+ const isPlaying = state === "playback";
556
+ const hasRecording = audioBlob !== null || audioUrl !== void 0;
557
+ const controlRenderProps = {
558
+ state,
559
+ currentTime,
560
+ duration,
561
+ isRecording,
562
+ isPaused,
563
+ isPlaying,
564
+ onRecord: handleRecord,
565
+ onPause: handlePause,
566
+ onResume: handleResume,
567
+ onStop: handleStop,
568
+ onPlay: handlePlay,
569
+ onSeek: handleSeek,
570
+ formatTime
571
+ };
572
+ return /* @__PURE__ */ jsxRuntime.jsxs(
573
+ "div",
574
+ {
575
+ className: chunkOR5DRJCW_cjs.cn(audioRecorderVariants({ size, variant }), className),
576
+ role: "group",
577
+ "aria-label": ariaLabel,
578
+ children: [
579
+ showWaveform && /* @__PURE__ */ jsxRuntime.jsx(
580
+ "div",
581
+ {
582
+ className: chunkOR5DRJCW_cjs.cn(waveformContainerVariants({ state })),
583
+ style: { height: waveformHeight },
584
+ children: (state === "recording" || state === "listening") && !hasRecording ? /* @__PURE__ */ jsxRuntime.jsx(
585
+ LiveVisualizer,
586
+ {
587
+ analyser: analyserRef.current,
588
+ isActive: isRecording,
589
+ height: waveformHeight,
590
+ barColor: waveColor
591
+ }
592
+ ) : /* @__PURE__ */ jsxRuntime.jsx("div", { ref: waveformRef, className: "w-full" })
593
+ }
594
+ ),
595
+ showTime && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center justify-between", children: [
596
+ /* @__PURE__ */ jsxRuntime.jsx(RecordingIndicator, { isRecording, isPaused }),
597
+ /* @__PURE__ */ jsxRuntime.jsx(
598
+ TimeDisplay,
599
+ {
600
+ currentTime,
601
+ duration,
602
+ maxDuration,
603
+ showMax: isRecording || isPaused
604
+ }
605
+ )
606
+ ] }),
607
+ renderControls ? renderControls(controlRenderProps) : /* @__PURE__ */ jsxRuntime.jsx(
608
+ DefaultControls,
609
+ {
610
+ ...controlRenderProps,
611
+ disabled,
612
+ hasRecording,
613
+ onDelete: handleDelete
614
+ }
615
+ )
616
+ ]
617
+ }
618
+ );
619
+ }
620
+ AudioRecorder.displayName = "AudioRecorder";
621
+ function DefaultControls({
622
+ state,
623
+ isRecording,
624
+ isPaused,
625
+ isPlaying,
626
+ hasRecording,
627
+ disabled,
628
+ onRecord,
629
+ onPause,
630
+ onResume,
631
+ onStop,
632
+ onPlay,
633
+ onDelete
634
+ }) {
635
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center justify-center gap-3", children: [
636
+ hasRecording && !isRecording && /* @__PURE__ */ jsxRuntime.jsx(
637
+ "button",
638
+ {
639
+ type: "button",
640
+ onClick: onDelete,
641
+ disabled,
642
+ className: chunkOR5DRJCW_cjs.cn(
643
+ controlButtonVariants({ variant: "ghost", size: "md" })
644
+ ),
645
+ "aria-label": "Delete recording",
646
+ children: /* @__PURE__ */ jsxRuntime.jsx(TrashIcon, { className: "h-5 w-5" })
647
+ }
648
+ ),
649
+ state === "idle" && /* @__PURE__ */ jsxRuntime.jsx(
650
+ "button",
651
+ {
652
+ type: "button",
653
+ onClick: onRecord,
654
+ disabled,
655
+ className: chunkOR5DRJCW_cjs.cn(
656
+ controlButtonVariants({ variant: "danger", size: "lg" })
657
+ ),
658
+ "aria-label": "Start recording",
659
+ children: /* @__PURE__ */ jsxRuntime.jsx(MicrophoneIcon, { className: "h-6 w-6" })
660
+ }
661
+ ),
662
+ isRecording && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
663
+ /* @__PURE__ */ jsxRuntime.jsx(
664
+ "button",
665
+ {
666
+ type: "button",
667
+ onClick: onPause,
668
+ disabled,
669
+ className: chunkOR5DRJCW_cjs.cn(
670
+ controlButtonVariants({ variant: "secondary", size: "md" })
671
+ ),
672
+ "aria-label": "Pause recording",
673
+ children: /* @__PURE__ */ jsxRuntime.jsx(PauseIcon, { className: "h-5 w-5" })
674
+ }
675
+ ),
676
+ /* @__PURE__ */ jsxRuntime.jsx(
677
+ "button",
678
+ {
679
+ type: "button",
680
+ onClick: onStop,
681
+ disabled,
682
+ className: chunkOR5DRJCW_cjs.cn(
683
+ controlButtonVariants({ variant: "danger", size: "lg" })
684
+ ),
685
+ "aria-label": "Stop recording",
686
+ children: /* @__PURE__ */ jsxRuntime.jsx(StopIcon, { className: "h-6 w-6" })
687
+ }
688
+ )
689
+ ] }),
690
+ isPaused && !hasRecording && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
691
+ /* @__PURE__ */ jsxRuntime.jsx(
692
+ "button",
693
+ {
694
+ type: "button",
695
+ onClick: onResume,
696
+ disabled,
697
+ className: chunkOR5DRJCW_cjs.cn(
698
+ controlButtonVariants({ variant: "danger", size: "lg" })
699
+ ),
700
+ "aria-label": "Resume recording",
701
+ children: /* @__PURE__ */ jsxRuntime.jsx(MicrophoneIcon, { className: "h-6 w-6" })
702
+ }
703
+ ),
704
+ /* @__PURE__ */ jsxRuntime.jsx(
705
+ "button",
706
+ {
707
+ type: "button",
708
+ onClick: onStop,
709
+ disabled,
710
+ className: chunkOR5DRJCW_cjs.cn(
711
+ controlButtonVariants({ variant: "secondary", size: "md" })
712
+ ),
713
+ "aria-label": "Stop recording",
714
+ children: /* @__PURE__ */ jsxRuntime.jsx(StopIcon, { className: "h-5 w-5" })
715
+ }
716
+ )
717
+ ] }),
718
+ (state === "stopped" || isPaused && hasRecording) && hasRecording && /* @__PURE__ */ jsxRuntime.jsx(
719
+ "button",
720
+ {
721
+ type: "button",
722
+ onClick: isPlaying || isPaused ? onPause : onPlay,
723
+ disabled,
724
+ className: chunkOR5DRJCW_cjs.cn(
725
+ controlButtonVariants({ variant: "primary", size: "lg" })
726
+ ),
727
+ "aria-label": isPaused ? "Resume playback" : isPlaying ? "Pause playback" : "Play recording",
728
+ children: isPaused || !isPlaying ? /* @__PURE__ */ jsxRuntime.jsx(PlayIcon, { className: "h-6 w-6" }) : /* @__PURE__ */ jsxRuntime.jsx(PauseIcon, { className: "h-6 w-6" })
729
+ }
730
+ ),
731
+ isPlaying && /* @__PURE__ */ jsxRuntime.jsx(
732
+ "button",
733
+ {
734
+ type: "button",
735
+ onClick: onPause,
736
+ disabled,
737
+ className: chunkOR5DRJCW_cjs.cn(
738
+ controlButtonVariants({ variant: "primary", size: "lg" })
739
+ ),
740
+ "aria-label": "Pause playback",
741
+ children: /* @__PURE__ */ jsxRuntime.jsx(PauseIcon, { className: "h-6 w-6" })
742
+ }
743
+ )
744
+ ] });
745
+ }
746
+
747
+ exports.AudioRecorder = AudioRecorder;
748
+ exports.audioRecorderVariants = audioRecorderVariants;
749
+ exports.controlButtonVariants = controlButtonVariants;
750
+ exports.formatTime = formatTime;
751
+ exports.waveformContainerVariants = waveformContainerVariants;
752
+ //# sourceMappingURL=chunk-53K3KWXQ.cjs.map
753
+ //# sourceMappingURL=chunk-53K3KWXQ.cjs.map