@mieweb/ui 0.6.1 → 0.7.0-dev.179

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 (450) hide show
  1. package/README.md +90 -53
  2. package/dist/CsvBlock-2A5VEDD3.cjs +15 -0
  3. package/dist/CsvBlock-2A5VEDD3.cjs.map +1 -0
  4. package/dist/CsvBlock-D6PWAJ5X.js +6 -0
  5. package/dist/CsvBlock-D6PWAJ5X.js.map +1 -0
  6. package/dist/HtmlPreviewBlock-PEHTJ6C3.js +6 -0
  7. package/dist/HtmlPreviewBlock-PEHTJ6C3.js.map +1 -0
  8. package/dist/HtmlPreviewBlock-SYXCV5RH.cjs +15 -0
  9. package/dist/HtmlPreviewBlock-SYXCV5RH.cjs.map +1 -0
  10. package/dist/MedicationEditor-Bp4NLy7y.d.cts +352 -0
  11. package/dist/MedicationEditor-Bp4NLy7y.d.ts +352 -0
  12. package/dist/MermaidBlock-7NK3AVK2.js +6 -0
  13. package/dist/MermaidBlock-7NK3AVK2.js.map +1 -0
  14. package/dist/MermaidBlock-AFXNP5NK.cjs +15 -0
  15. package/dist/MermaidBlock-AFXNP5NK.cjs.map +1 -0
  16. package/dist/SurveyBlock-6KRNKFH5.cjs +15 -0
  17. package/dist/SurveyBlock-6KRNKFH5.cjs.map +1 -0
  18. package/dist/SurveyBlock-NNDGXGG4.js +6 -0
  19. package/dist/SurveyBlock-NNDGXGG4.js.map +1 -0
  20. package/dist/ag-grid.cjs +6 -6
  21. package/dist/ag-grid.cjs.map +1 -1
  22. package/dist/ag-grid.js +2 -2
  23. package/dist/ag-grid.js.map +1 -1
  24. package/dist/brands/index.cjs +17 -17
  25. package/dist/brands/index.js +4 -4
  26. package/dist/chunk-372IIHUA.cjs +2017 -0
  27. package/dist/chunk-372IIHUA.cjs.map +1 -0
  28. package/dist/{chunk-2DS3RJ2D.js → chunk-3TERETXH.js} +112 -3
  29. package/dist/chunk-3TERETXH.js.map +1 -0
  30. package/dist/chunk-44CK4CT2.cjs +336 -0
  31. package/dist/chunk-44CK4CT2.cjs.map +1 -0
  32. package/dist/{chunk-FSBFQBNE.cjs → chunk-4GXECTPS.cjs} +2 -2
  33. package/dist/{chunk-FSBFQBNE.cjs.map → chunk-4GXECTPS.cjs.map} +1 -1
  34. package/dist/chunk-4LVPQ44A.js +228 -0
  35. package/dist/chunk-4LVPQ44A.js.map +1 -0
  36. package/dist/{chunk-6555OYRU.js → chunk-5BQE6BEL.js} +2 -2
  37. package/dist/{chunk-6555OYRU.js.map → chunk-5BQE6BEL.js.map} +1 -1
  38. package/dist/chunk-62ZOA6PX.js +31 -0
  39. package/dist/chunk-62ZOA6PX.js.map +1 -0
  40. package/dist/chunk-63KVQHGQ.cjs +1802 -0
  41. package/dist/chunk-63KVQHGQ.cjs.map +1 -0
  42. package/dist/chunk-6AHYYWVB.js +78 -0
  43. package/dist/chunk-6AHYYWVB.js.map +1 -0
  44. package/dist/chunk-6I7IDZ4A.js +51 -0
  45. package/dist/chunk-6I7IDZ4A.js.map +1 -0
  46. package/dist/chunk-6ZYE6JUK.cjs +80 -0
  47. package/dist/chunk-6ZYE6JUK.cjs.map +1 -0
  48. package/dist/chunk-7QXG5BBB.cjs +164 -0
  49. package/dist/chunk-7QXG5BBB.cjs.map +1 -0
  50. package/dist/chunk-7WMSUXOQ.js +182 -0
  51. package/dist/chunk-7WMSUXOQ.js.map +1 -0
  52. package/dist/chunk-7XUN3OQT.js +3 -0
  53. package/dist/{chunk-V2DF2GUE.js.map → chunk-7XUN3OQT.js.map} +1 -1
  54. package/dist/chunk-7ZVTLTJF.js +109 -0
  55. package/dist/chunk-7ZVTLTJF.js.map +1 -0
  56. package/dist/chunk-AES2BKEW.cjs +229 -0
  57. package/dist/chunk-AES2BKEW.cjs.map +1 -0
  58. package/dist/chunk-AFKKJEV5.cjs +72 -0
  59. package/dist/chunk-AFKKJEV5.cjs.map +1 -0
  60. package/dist/chunk-AT732HC6.cjs +4 -0
  61. package/dist/{chunk-74K3RRU7.cjs.map → chunk-AT732HC6.cjs.map} +1 -1
  62. package/dist/chunk-BB4WQ4LV.cjs +137 -0
  63. package/dist/chunk-BB4WQ4LV.cjs.map +1 -0
  64. package/dist/chunk-BIT27PPD.js +49 -0
  65. package/dist/chunk-BIT27PPD.js.map +1 -0
  66. package/dist/chunk-BLPCYP4D.cjs +537 -0
  67. package/dist/chunk-BLPCYP4D.cjs.map +1 -0
  68. package/dist/chunk-BT3ZQJGT.cjs +130 -0
  69. package/dist/chunk-BT3ZQJGT.cjs.map +1 -0
  70. package/dist/chunk-BX6BTDTR.js +34 -0
  71. package/dist/chunk-BX6BTDTR.js.map +1 -0
  72. package/dist/chunk-C2544GKZ.js +313 -0
  73. package/dist/chunk-C2544GKZ.js.map +1 -0
  74. package/dist/chunk-C7RVKV25.cjs +25 -0
  75. package/dist/chunk-C7RVKV25.cjs.map +1 -0
  76. package/dist/chunk-CKD554XR.cjs +100 -0
  77. package/dist/chunk-CKD554XR.cjs.map +1 -0
  78. package/dist/chunk-CVC4NWFA.cjs +154 -0
  79. package/dist/chunk-CVC4NWFA.cjs.map +1 -0
  80. package/dist/{chunk-K3IVCUPP.js → chunk-CYMZ2QS5.js} +2 -2
  81. package/dist/{chunk-K3IVCUPP.js.map → chunk-CYMZ2QS5.js.map} +1 -1
  82. package/dist/{chunk-FRT6RQND.cjs → chunk-DAPZPT5N.cjs} +92 -56
  83. package/dist/chunk-DAPZPT5N.cjs.map +1 -0
  84. package/dist/chunk-DHKYGVP7.js +3 -0
  85. package/dist/{chunk-LEMY57MI.js.map → chunk-DHKYGVP7.js.map} +1 -1
  86. package/dist/chunk-DLNJLCNO.cjs +101 -0
  87. package/dist/chunk-DLNJLCNO.cjs.map +1 -0
  88. package/dist/chunk-DUPR6FEL.js +43 -0
  89. package/dist/chunk-DUPR6FEL.js.map +1 -0
  90. package/dist/{chunk-4FALCEJI.cjs → chunk-EL2RSQTJ.cjs} +2 -2
  91. package/dist/{chunk-4FALCEJI.cjs.map → chunk-EL2RSQTJ.cjs.map} +1 -1
  92. package/dist/chunk-ERLPVXOV.js +22 -0
  93. package/dist/chunk-ERLPVXOV.js.map +1 -0
  94. package/dist/chunk-FIWKHLWY.js +197 -0
  95. package/dist/chunk-FIWKHLWY.js.map +1 -0
  96. package/dist/chunk-FJH7P5WG.js +513 -0
  97. package/dist/chunk-FJH7P5WG.js.map +1 -0
  98. package/dist/chunk-FSGEDDF2.cjs +33 -0
  99. package/dist/chunk-FSGEDDF2.cjs.map +1 -0
  100. package/dist/chunk-GLXTVCHN.cjs +4 -0
  101. package/dist/{chunk-4ZU53GNR.cjs.map → chunk-GLXTVCHN.cjs.map} +1 -1
  102. package/dist/chunk-HRS6W74P.js +1568 -0
  103. package/dist/chunk-HRS6W74P.js.map +1 -0
  104. package/dist/chunk-I2W24RHW.js +196 -0
  105. package/dist/chunk-I2W24RHW.js.map +1 -0
  106. package/dist/chunk-I6CY5C6A.js +12 -0
  107. package/dist/chunk-I6CY5C6A.js.map +1 -0
  108. package/dist/chunk-IQ4KQJAO.js +3 -0
  109. package/dist/chunk-IQ4KQJAO.js.map +1 -0
  110. package/dist/chunk-IWDQPSJN.cjs +1452 -0
  111. package/dist/chunk-IWDQPSJN.cjs.map +1 -0
  112. package/dist/chunk-J7KWQJOB.js +14 -0
  113. package/dist/chunk-J7KWQJOB.js.map +1 -0
  114. package/dist/{chunk-R25H4N4Z.js → chunk-J7Z7467B.js} +92 -56
  115. package/dist/chunk-J7Z7467B.js.map +1 -0
  116. package/dist/{chunk-NINI4WVS.cjs → chunk-JC6Y3LGF.cjs} +297 -84
  117. package/dist/chunk-JC6Y3LGF.cjs.map +1 -0
  118. package/dist/chunk-JCNPVK74.cjs +347 -0
  119. package/dist/chunk-JCNPVK74.cjs.map +1 -0
  120. package/dist/chunk-JFLC7SHM.cjs +35 -0
  121. package/dist/chunk-JFLC7SHM.cjs.map +1 -0
  122. package/dist/chunk-JHYFHEHS.js +1967 -0
  123. package/dist/chunk-JHYFHEHS.js.map +1 -0
  124. package/dist/{chunk-IBZXDX4L.cjs → chunk-JQEY53SH.cjs} +112 -3
  125. package/dist/chunk-JQEY53SH.cjs.map +1 -0
  126. package/dist/chunk-JTBQNOSL.cjs +1605 -0
  127. package/dist/chunk-JTBQNOSL.cjs.map +1 -0
  128. package/dist/chunk-JYZW2PZS.cjs +166 -0
  129. package/dist/chunk-JYZW2PZS.cjs.map +1 -0
  130. package/dist/chunk-KBEKQMVY.cjs +198 -0
  131. package/dist/chunk-KBEKQMVY.cjs.map +1 -0
  132. package/dist/chunk-KJ5BSGEO.cjs +258 -0
  133. package/dist/chunk-KJ5BSGEO.cjs.map +1 -0
  134. package/dist/{chunk-DNPRRYPQ.js → chunk-KL2S36FM.js} +2 -2
  135. package/dist/chunk-KL2S36FM.js.map +1 -0
  136. package/dist/chunk-LIH3IZYK.js +689 -0
  137. package/dist/chunk-LIH3IZYK.js.map +1 -0
  138. package/dist/chunk-MAMY5HTT.cjs +1177 -0
  139. package/dist/chunk-MAMY5HTT.cjs.map +1 -0
  140. package/dist/{chunk-WFS6R2F5.js → chunk-MKWGKASO.js} +114 -101
  141. package/dist/chunk-MKWGKASO.js.map +1 -0
  142. package/dist/{chunk-CV4CVGLO.cjs → chunk-MZPF2QGM.cjs} +95 -74
  143. package/dist/chunk-MZPF2QGM.cjs.map +1 -0
  144. package/dist/chunk-NQME7MCK.js +1416 -0
  145. package/dist/chunk-NQME7MCK.js.map +1 -0
  146. package/dist/chunk-NTYGCBCL.js +543 -0
  147. package/dist/chunk-NTYGCBCL.js.map +1 -0
  148. package/dist/chunk-OF7NTZ2I.js +3 -0
  149. package/dist/chunk-OF7NTZ2I.js.map +1 -0
  150. package/dist/chunk-OXYFTCRW.cjs +57 -0
  151. package/dist/chunk-OXYFTCRW.cjs.map +1 -0
  152. package/dist/chunk-QA6ZDHFP.js +117 -0
  153. package/dist/chunk-QA6ZDHFP.js.map +1 -0
  154. package/dist/chunk-RHNPILZQ.cjs +4 -0
  155. package/dist/chunk-RHNPILZQ.cjs.map +1 -0
  156. package/dist/chunk-RHYIFIT5.js +98 -0
  157. package/dist/chunk-RHYIFIT5.js.map +1 -0
  158. package/dist/chunk-RI56YPED.cjs +201 -0
  159. package/dist/chunk-RI56YPED.cjs.map +1 -0
  160. package/dist/chunk-RISZWWEQ.js +3 -0
  161. package/dist/chunk-RISZWWEQ.js.map +1 -0
  162. package/dist/chunk-S6Z3KDEM.js +140 -0
  163. package/dist/chunk-S6Z3KDEM.js.map +1 -0
  164. package/dist/chunk-S7JQ3FV5.cjs +16 -0
  165. package/dist/chunk-S7JQ3FV5.cjs.map +1 -0
  166. package/dist/{chunk-OXGUG57G.cjs → chunk-SNEQXSC5.cjs} +2 -2
  167. package/dist/{chunk-OXGUG57G.cjs.map → chunk-SNEQXSC5.cjs.map} +1 -1
  168. package/dist/chunk-SQHMGT4W.js +164 -0
  169. package/dist/chunk-SQHMGT4W.js.map +1 -0
  170. package/dist/{chunk-JHPFOG2N.cjs → chunk-ST2RE5UB.cjs} +30 -18
  171. package/dist/chunk-ST2RE5UB.cjs.map +1 -0
  172. package/dist/{chunk-QVJBUWJQ.js → chunk-STPK44AU.js} +46 -12
  173. package/dist/chunk-STPK44AU.js.map +1 -0
  174. package/dist/chunk-T3C4RNJ4.js +106 -0
  175. package/dist/chunk-T3C4RNJ4.js.map +1 -0
  176. package/dist/chunk-T3RWXOCM.js +148 -0
  177. package/dist/chunk-T3RWXOCM.js.map +1 -0
  178. package/dist/{chunk-DCER2QQB.js → chunk-T42BCIUA.js} +2 -2
  179. package/dist/{chunk-DCER2QQB.js.map → chunk-T42BCIUA.js.map} +1 -1
  180. package/dist/{chunk-OYKS2JBB.cjs → chunk-TN33E2VN.cjs} +2 -2
  181. package/dist/chunk-TN33E2VN.cjs.map +1 -0
  182. package/dist/{chunk-K7IGBNZA.cjs → chunk-TR2OJKQ4.cjs} +46 -12
  183. package/dist/chunk-TR2OJKQ4.cjs.map +1 -0
  184. package/dist/chunk-UFYXU7KV.js +135 -0
  185. package/dist/chunk-UFYXU7KV.js.map +1 -0
  186. package/dist/chunk-UM6NA7HL.js +1145 -0
  187. package/dist/chunk-UM6NA7HL.js.map +1 -0
  188. package/dist/chunk-UO3KEUYK.cjs +220 -0
  189. package/dist/chunk-UO3KEUYK.cjs.map +1 -0
  190. package/dist/chunk-UOOH356R.cjs +66 -0
  191. package/dist/chunk-UOOH356R.cjs.map +1 -0
  192. package/dist/{chunk-4ZU53GNR.cjs → chunk-UTYUT5YY.cjs} +62 -2
  193. package/dist/chunk-UTYUT5YY.cjs.map +1 -0
  194. package/dist/chunk-UVSODK6V.cjs +53 -0
  195. package/dist/chunk-UVSODK6V.cjs.map +1 -0
  196. package/dist/chunk-V25Z5GR6.cjs +184 -0
  197. package/dist/chunk-V25Z5GR6.cjs.map +1 -0
  198. package/dist/chunk-VBWRH4UW.cjs +4 -0
  199. package/dist/chunk-VBWRH4UW.cjs.map +1 -0
  200. package/dist/chunk-VJOVJTFP.cjs +370 -0
  201. package/dist/chunk-VJOVJTFP.cjs.map +1 -0
  202. package/dist/{chunk-7BARESXI.cjs → chunk-VPNURIAY.cjs} +114 -101
  203. package/dist/chunk-VPNURIAY.cjs.map +1 -0
  204. package/dist/{chunk-I56VBDSC.js → chunk-XDFDVF2O.js} +30 -18
  205. package/dist/chunk-XDFDVF2O.js.map +1 -0
  206. package/dist/chunk-XL7TTKHP.js +327 -0
  207. package/dist/chunk-XL7TTKHP.js.map +1 -0
  208. package/dist/chunk-Y2S6QMKU.js +78 -0
  209. package/dist/chunk-Y2S6QMKU.js.map +1 -0
  210. package/dist/chunk-Y4ESBDQ5.cjs +552 -0
  211. package/dist/chunk-Y4ESBDQ5.cjs.map +1 -0
  212. package/dist/chunk-Y5KEFV5O.js +192 -0
  213. package/dist/chunk-Y5KEFV5O.js.map +1 -0
  214. package/dist/chunk-YBLIDESO.js +365 -0
  215. package/dist/chunk-YBLIDESO.js.map +1 -0
  216. package/dist/chunk-YVLP3ATI.js +1776 -0
  217. package/dist/chunk-YVLP3ATI.js.map +1 -0
  218. package/dist/chunk-YVPC65ZJ.cjs +134 -0
  219. package/dist/chunk-YVPC65ZJ.cjs.map +1 -0
  220. package/dist/{chunk-MPOWJVV4.js → chunk-YZT62IMX.js} +95 -74
  221. package/dist/chunk-YZT62IMX.js.map +1 -0
  222. package/dist/chunk-ZAIEQWRA.js +207 -0
  223. package/dist/chunk-ZAIEQWRA.js.map +1 -0
  224. package/dist/chunk-ZDEYV373.cjs +139 -0
  225. package/dist/chunk-ZDEYV373.cjs.map +1 -0
  226. package/dist/{chunk-Q7NBJFEB.js → chunk-ZGSC2CB2.js} +2 -2
  227. package/dist/{chunk-Q7NBJFEB.js.map → chunk-ZGSC2CB2.js.map} +1 -1
  228. package/dist/{chunk-3M4P2KMG.cjs → chunk-ZHBANUBI.cjs} +2 -2
  229. package/dist/{chunk-3M4P2KMG.cjs.map → chunk-ZHBANUBI.cjs.map} +1 -1
  230. package/dist/components/AlertDialog/index.cjs +18 -0
  231. package/dist/components/AlertDialog/index.cjs.map +1 -0
  232. package/dist/components/AlertDialog/index.d.cts +56 -0
  233. package/dist/components/AlertDialog/index.d.ts +56 -0
  234. package/dist/components/AlertDialog/index.js +9 -0
  235. package/dist/components/AlertDialog/index.js.map +1 -0
  236. package/dist/components/AudioRecorder/index.d.cts +1 -1
  237. package/dist/components/AudioRecorder/index.d.ts +1 -1
  238. package/dist/components/Autocomplete/index.cjs +16 -0
  239. package/dist/components/Autocomplete/index.cjs.map +1 -0
  240. package/dist/components/Autocomplete/index.d.cts +77 -0
  241. package/dist/components/Autocomplete/index.d.ts +77 -0
  242. package/dist/components/Autocomplete/index.js +7 -0
  243. package/dist/components/Autocomplete/index.js.map +1 -0
  244. package/dist/components/Badge/index.cjs +4 -3
  245. package/dist/components/Badge/index.js +2 -1
  246. package/dist/components/Card/index.cjs +16 -15
  247. package/dist/components/Card/index.js +2 -1
  248. package/dist/components/Collapsible/index.cjs +21 -0
  249. package/dist/components/Collapsible/index.cjs.map +1 -0
  250. package/dist/components/Collapsible/index.d.cts +33 -0
  251. package/dist/components/Collapsible/index.d.ts +33 -0
  252. package/dist/components/Collapsible/index.js +4 -0
  253. package/dist/components/Collapsible/index.js.map +1 -0
  254. package/dist/components/CountryCodeDropdown/index.cjs +6 -5
  255. package/dist/components/CountryCodeDropdown/index.js +3 -2
  256. package/dist/components/DateInput/index.cjs +2 -2
  257. package/dist/components/DateInput/index.d.cts +8 -2
  258. package/dist/components/DateInput/index.d.ts +8 -2
  259. package/dist/components/DateInput/index.js +1 -1
  260. package/dist/components/Dropdown/index.cjs +9 -8
  261. package/dist/components/Dropdown/index.d.cts +2 -1
  262. package/dist/components/Dropdown/index.d.ts +2 -1
  263. package/dist/components/Dropdown/index.js +3 -2
  264. package/dist/components/FloatingWindow/index.cjs +18 -0
  265. package/dist/components/FloatingWindow/index.cjs.map +1 -0
  266. package/dist/components/FloatingWindow/index.d.cts +64 -0
  267. package/dist/components/FloatingWindow/index.d.ts +64 -0
  268. package/dist/components/FloatingWindow/index.js +5 -0
  269. package/dist/components/FloatingWindow/index.js.map +1 -0
  270. package/dist/components/Label/index.cjs +17 -0
  271. package/dist/components/Label/index.cjs.map +1 -0
  272. package/dist/components/Label/index.d.cts +23 -0
  273. package/dist/components/Label/index.d.ts +23 -0
  274. package/dist/components/Label/index.js +4 -0
  275. package/dist/components/Label/index.js.map +1 -0
  276. package/dist/components/Markdown/index.cjs +51 -0
  277. package/dist/components/Markdown/index.cjs.map +1 -0
  278. package/dist/components/Markdown/index.css +331 -0
  279. package/dist/components/Markdown/index.css.map +1 -0
  280. package/dist/components/Markdown/index.d.cts +82 -0
  281. package/dist/components/Markdown/index.d.ts +82 -0
  282. package/dist/components/Markdown/index.js +10 -0
  283. package/dist/components/Markdown/index.js.map +1 -0
  284. package/dist/components/Markdown/styles.css +354 -0
  285. package/dist/components/MediaEditor/index.cjs +44 -0
  286. package/dist/components/MediaEditor/index.cjs.map +1 -0
  287. package/dist/components/MediaEditor/index.d.cts +151 -0
  288. package/dist/components/MediaEditor/index.d.ts +151 -0
  289. package/dist/components/MediaEditor/index.js +19 -0
  290. package/dist/components/MediaEditor/index.js.map +1 -0
  291. package/dist/components/MediaPlayer/index.cjs +24 -0
  292. package/dist/components/MediaPlayer/index.cjs.map +1 -0
  293. package/dist/components/MediaPlayer/index.d.cts +71 -0
  294. package/dist/components/MediaPlayer/index.d.ts +71 -0
  295. package/dist/components/MediaPlayer/index.js +7 -0
  296. package/dist/components/MediaPlayer/index.js.map +1 -0
  297. package/dist/components/RecordButton/index.cjs +4 -4
  298. package/dist/components/RecordButton/index.js +1 -1
  299. package/dist/components/RichTextEditor/index.cjs +33 -0
  300. package/dist/components/RichTextEditor/index.cjs.map +1 -0
  301. package/dist/components/RichTextEditor/index.d.cts +62 -0
  302. package/dist/components/RichTextEditor/index.d.ts +62 -0
  303. package/dist/components/RichTextEditor/index.js +12 -0
  304. package/dist/components/RichTextEditor/index.js.map +1 -0
  305. package/dist/components/ScrollArea/index.cjs +17 -0
  306. package/dist/components/ScrollArea/index.cjs.map +1 -0
  307. package/dist/components/ScrollArea/index.d.cts +22 -0
  308. package/dist/components/ScrollArea/index.d.ts +22 -0
  309. package/dist/components/ScrollArea/index.js +4 -0
  310. package/dist/components/ScrollArea/index.js.map +1 -0
  311. package/dist/components/Select/index.cjs +5 -3
  312. package/dist/components/Select/index.js +3 -1
  313. package/dist/components/Separator/index.cjs +17 -0
  314. package/dist/components/Separator/index.cjs.map +1 -0
  315. package/dist/components/Separator/index.d.cts +27 -0
  316. package/dist/components/Separator/index.d.ts +27 -0
  317. package/dist/components/Separator/index.js +4 -0
  318. package/dist/components/Separator/index.js.map +1 -0
  319. package/dist/components/Sheet/index.cjs +48 -0
  320. package/dist/components/Sheet/index.cjs.map +1 -0
  321. package/dist/components/Sheet/index.d.cts +62 -0
  322. package/dist/components/Sheet/index.d.ts +62 -0
  323. package/dist/components/Sheet/index.js +7 -0
  324. package/dist/components/Sheet/index.js.map +1 -0
  325. package/dist/components/SuperChat/index.cjs +1373 -0
  326. package/dist/components/SuperChat/index.cjs.map +1 -0
  327. package/dist/components/SuperChat/index.d.cts +189 -0
  328. package/dist/components/SuperChat/index.d.ts +189 -0
  329. package/dist/components/SuperChat/index.js +1336 -0
  330. package/dist/components/SuperChat/index.js.map +1 -0
  331. package/dist/components/SuperChat/plugins/index.cjs +1292 -0
  332. package/dist/components/SuperChat/plugins/index.cjs.map +1 -0
  333. package/dist/components/SuperChat/plugins/index.d.cts +233 -0
  334. package/dist/components/SuperChat/plugins/index.d.ts +233 -0
  335. package/dist/components/SuperChat/plugins/index.js +1252 -0
  336. package/dist/components/SuperChat/plugins/index.js.map +1 -0
  337. package/dist/components/Table/index.cjs +9 -9
  338. package/dist/components/Table/index.d.cts +4 -0
  339. package/dist/components/Table/index.d.ts +4 -0
  340. package/dist/components/Table/index.js +1 -1
  341. package/dist/components/ThemeProvider/index.cjs +7 -7
  342. package/dist/components/ThemeProvider/index.js +1 -1
  343. package/dist/components/Toggle/index.cjs +17 -0
  344. package/dist/components/Toggle/index.cjs.map +1 -0
  345. package/dist/components/Toggle/index.d.cts +28 -0
  346. package/dist/components/Toggle/index.d.ts +28 -0
  347. package/dist/components/Toggle/index.js +4 -0
  348. package/dist/components/Toggle/index.js.map +1 -0
  349. package/dist/components/TranscriptView/index.cjs +21 -0
  350. package/dist/components/TranscriptView/index.cjs.map +1 -0
  351. package/dist/components/TranscriptView/index.d.cts +55 -0
  352. package/dist/components/TranscriptView/index.d.ts +55 -0
  353. package/dist/components/TranscriptView/index.js +4 -0
  354. package/dist/components/TranscriptView/index.js.map +1 -0
  355. package/dist/datavis.cjs +268 -227
  356. package/dist/datavis.cjs.map +1 -1
  357. package/dist/datavis.d.cts +83 -9
  358. package/dist/datavis.d.ts +83 -9
  359. package/dist/datavis.js +235 -229
  360. package/dist/datavis.js.map +1 -1
  361. package/dist/esheet.cjs +184 -0
  362. package/dist/esheet.cjs.map +1 -1
  363. package/dist/esheet.d.cts +117 -0
  364. package/dist/esheet.d.ts +117 -0
  365. package/dist/esheet.js +163 -0
  366. package/dist/esheet.js.map +1 -1
  367. package/dist/hey-buddy-CLUVAY2X.cjs +1133 -0
  368. package/dist/hey-buddy-CLUVAY2X.cjs.map +1 -0
  369. package/dist/hey-buddy-NMSWZ4TN.js +1131 -0
  370. package/dist/hey-buddy-NMSWZ4TN.js.map +1 -0
  371. package/dist/hooks/index.cjs +76 -16
  372. package/dist/hooks/index.d.cts +151 -2
  373. package/dist/hooks/index.d.ts +151 -2
  374. package/dist/hooks/index.js +6 -2
  375. package/dist/html-MdxqSzjD.d.cts +13 -0
  376. package/dist/html-MdxqSzjD.d.ts +13 -0
  377. package/dist/index.cjs +10394 -6565
  378. package/dist/index.cjs.map +1 -1
  379. package/dist/index.css +331 -0
  380. package/dist/index.css.map +1 -0
  381. package/dist/index.d.cts +2022 -249
  382. package/dist/index.d.ts +2022 -249
  383. package/dist/index.js +9223 -5969
  384. package/dist/index.js.map +1 -1
  385. package/dist/kerebron.cjs +119 -0
  386. package/dist/kerebron.cjs.map +1 -0
  387. package/dist/kerebron.css +11 -0
  388. package/dist/kerebron.d.cts +23 -0
  389. package/dist/kerebron.d.ts +23 -0
  390. package/dist/kerebron.js +116 -0
  391. package/dist/kerebron.js.map +1 -0
  392. package/dist/nitroTableGrid-3J2GY6CK.cjs +47 -0
  393. package/dist/nitroTableGrid-3J2GY6CK.cjs.map +1 -0
  394. package/dist/nitroTableGrid-SIMT7635.js +25 -0
  395. package/dist/nitroTableGrid-SIMT7635.js.map +1 -0
  396. package/dist/orderRows-BUJYgSc7.d.cts +221 -0
  397. package/dist/orderRows-BUJYgSc7.d.ts +221 -0
  398. package/dist/speaker-verify-5GTWAN5Y.cjs +357 -0
  399. package/dist/speaker-verify-5GTWAN5Y.cjs.map +1 -0
  400. package/dist/speaker-verify-R67P433H.js +355 -0
  401. package/dist/speaker-verify-R67P433H.js.map +1 -0
  402. package/dist/styles/init.css +5 -0
  403. package/dist/styles.css +1 -1
  404. package/dist/tailwind-preset.cjs +4 -4
  405. package/dist/tailwind-preset.js +1 -1
  406. package/dist/transcript-oaWqY3yr.d.cts +81 -0
  407. package/dist/transcript-oaWqY3yr.d.ts +81 -0
  408. package/dist/types-BYnLjEFg.d.cts +248 -0
  409. package/dist/types-BYnLjEFg.d.ts +248 -0
  410. package/dist/types-CBh8Zlje.d.cts +240 -0
  411. package/dist/types-CyCwYBlr.d.ts +240 -0
  412. package/dist/useAnchoredPosition-nXdSFKHf.d.cts +65 -0
  413. package/dist/useAnchoredPosition-nXdSFKHf.d.ts +65 -0
  414. package/dist/useTranscriptEdits-BUylQFg0.d.cts +168 -0
  415. package/dist/useTranscriptEdits-CWYnjbGP.d.ts +168 -0
  416. package/dist/utils/index.cjs +27 -18
  417. package/dist/utils/index.d.cts +1 -0
  418. package/dist/utils/index.d.ts +1 -0
  419. package/dist/utils/index.js +3 -2
  420. package/package.json +180 -55
  421. package/dist/chunk-2DS3RJ2D.js.map +0 -1
  422. package/dist/chunk-74K3RRU7.cjs +0 -4
  423. package/dist/chunk-7BARESXI.cjs.map +0 -1
  424. package/dist/chunk-CV4CVGLO.cjs.map +0 -1
  425. package/dist/chunk-DNPRRYPQ.js.map +0 -1
  426. package/dist/chunk-FRT6RQND.cjs.map +0 -1
  427. package/dist/chunk-HYEJLKXI.js +0 -476
  428. package/dist/chunk-HYEJLKXI.js.map +0 -1
  429. package/dist/chunk-I56VBDSC.js.map +0 -1
  430. package/dist/chunk-IBZXDX4L.cjs.map +0 -1
  431. package/dist/chunk-IKMR2ADM.cjs +0 -25
  432. package/dist/chunk-IKMR2ADM.cjs.map +0 -1
  433. package/dist/chunk-JHPFOG2N.cjs.map +0 -1
  434. package/dist/chunk-K7IGBNZA.cjs.map +0 -1
  435. package/dist/chunk-LEMY57MI.js +0 -3
  436. package/dist/chunk-MPOWJVV4.js.map +0 -1
  437. package/dist/chunk-NINI4WVS.cjs.map +0 -1
  438. package/dist/chunk-OKBR6PX4.js +0 -23
  439. package/dist/chunk-OKBR6PX4.js.map +0 -1
  440. package/dist/chunk-OYKS2JBB.cjs.map +0 -1
  441. package/dist/chunk-QVJBUWJQ.js.map +0 -1
  442. package/dist/chunk-R25H4N4Z.js.map +0 -1
  443. package/dist/chunk-V2DF2GUE.js +0 -3
  444. package/dist/chunk-WFS6R2F5.js.map +0 -1
  445. package/dist/ozwell.cjs +0 -385
  446. package/dist/ozwell.cjs.map +0 -1
  447. package/dist/ozwell.d.cts +0 -15
  448. package/dist/ozwell.d.ts +0 -15
  449. package/dist/ozwell.js +0 -360
  450. package/dist/ozwell.js.map +0 -1
@@ -0,0 +1,198 @@
1
+ 'use strict';
2
+
3
+ var chunkCKD554XR_cjs = require('./chunk-CKD554XR.cjs');
4
+ var react = require('react');
5
+ var jsxRuntime = require('react/jsx-runtime');
6
+
7
+ var yamlPromise = null;
8
+ function loadYaml() {
9
+ if (!yamlPromise) {
10
+ yamlPromise = import(
11
+ /* @vite-ignore */
12
+ 'js-yaml'
13
+ ).then((mod) => {
14
+ const api = mod.default ?? mod;
15
+ const load = api.load;
16
+ if (typeof load !== "function")
17
+ throw new Error("js-yaml load not found");
18
+ return load;
19
+ }).catch((err) => {
20
+ yamlPromise = null;
21
+ throw err;
22
+ });
23
+ }
24
+ return yamlPromise;
25
+ }
26
+ function tryParseJson(code) {
27
+ try {
28
+ return { ok: true, data: JSON.parse(code) };
29
+ } catch {
30
+ return { ok: false };
31
+ }
32
+ }
33
+ function elementsToParsed(data) {
34
+ if (!data || typeof data !== "object") {
35
+ return { fields: [], error: "Invalid survey data format" };
36
+ }
37
+ const obj = data;
38
+ let elements = [];
39
+ if (Array.isArray(obj.pages)) {
40
+ for (const page of obj.pages) {
41
+ if (Array.isArray(page.elements)) {
42
+ elements = elements.concat(page.elements);
43
+ }
44
+ }
45
+ } else if (Array.isArray(obj.elements)) {
46
+ elements = obj.elements;
47
+ } else if (Array.isArray(obj.questions)) {
48
+ elements = obj.questions;
49
+ } else if (Array.isArray(obj.fields)) {
50
+ elements = obj.fields;
51
+ } else {
52
+ return { fields: [], error: "No survey questions found in data" };
53
+ }
54
+ return { fields: elements, error: null };
55
+ }
56
+ var SurveyBlock = ({ code, id }) => {
57
+ const [parsed, setParsed] = react.useState(null);
58
+ react.useEffect(() => {
59
+ let cancelled = false;
60
+ const jsonResult = tryParseJson(code);
61
+ if (jsonResult.ok) {
62
+ setParsed(elementsToParsed(jsonResult.data));
63
+ return;
64
+ }
65
+ loadYaml().then((load) => {
66
+ try {
67
+ const data = load(code);
68
+ if (!cancelled) setParsed(elementsToParsed(data));
69
+ } catch (err) {
70
+ if (!cancelled)
71
+ setParsed({
72
+ fields: [],
73
+ error: `Failed to parse survey data: ${err.message}`
74
+ });
75
+ }
76
+ }).catch(() => {
77
+ if (!cancelled)
78
+ setParsed({
79
+ fields: [],
80
+ error: "Survey preview requires the `js-yaml` package for YAML input. Install it with `npm install js-yaml`."
81
+ });
82
+ });
83
+ return () => {
84
+ cancelled = true;
85
+ };
86
+ }, [code]);
87
+ if (!parsed) {
88
+ return /* @__PURE__ */ jsxRuntime.jsx(chunkCKD554XR_cjs.FenceBlock, { code, language: "survey", supportsRawView: true, children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex items-center justify-center p-6 text-sm text-neutral-500", children: "Loading survey\u2026" }) });
89
+ }
90
+ const { fields, error } = parsed;
91
+ return /* @__PURE__ */ jsxRuntime.jsx(
92
+ chunkCKD554XR_cjs.FenceBlock,
93
+ {
94
+ code,
95
+ language: "survey",
96
+ supportsRawView: true,
97
+ error: error ?? void 0,
98
+ children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4 p-4", children: [
99
+ /* @__PURE__ */ jsxRuntime.jsx("h4", { className: "text-sm font-medium text-neutral-700 dark:text-neutral-300", children: "Survey Preview" }),
100
+ fields.map((field, i) => {
101
+ const fieldId = `${id}-field-${field.name ?? i}`;
102
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-1.5", children: [
103
+ /* @__PURE__ */ jsxRuntime.jsxs(
104
+ "label",
105
+ {
106
+ htmlFor: fieldId,
107
+ className: "block text-sm font-medium text-neutral-700 dark:text-neutral-300",
108
+ children: [
109
+ field.title ?? field.label ?? field.name,
110
+ field.isRequired && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "ml-1 text-red-500", children: "*" })
111
+ ]
112
+ }
113
+ ),
114
+ (field.type === "radiogroup" || field.type === "radio") && field.choices && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "space-y-1", children: field.choices.map((choice, ci) => {
115
+ const value = typeof choice === "string" ? choice : choice.value;
116
+ const text = typeof choice === "string" ? choice : choice.text;
117
+ return /* @__PURE__ */ jsxRuntime.jsxs(
118
+ "label",
119
+ {
120
+ className: "flex items-center gap-2 text-sm text-neutral-600 dark:text-neutral-400",
121
+ children: [
122
+ /* @__PURE__ */ jsxRuntime.jsx(
123
+ "input",
124
+ {
125
+ type: "radio",
126
+ name: `${id}-${field.name}`,
127
+ value,
128
+ disabled: true,
129
+ className: "accent-primary-500"
130
+ }
131
+ ),
132
+ text
133
+ ]
134
+ },
135
+ ci
136
+ );
137
+ }) }),
138
+ (field.type === "checkbox" || field.type === "boolean") && /* @__PURE__ */ jsxRuntime.jsx(
139
+ "input",
140
+ {
141
+ id: fieldId,
142
+ type: "checkbox",
143
+ disabled: true,
144
+ className: "accent-primary-500"
145
+ }
146
+ ),
147
+ (field.type === "text" || field.type === "comment") && /* @__PURE__ */ jsxRuntime.jsx(
148
+ "input",
149
+ {
150
+ id: fieldId,
151
+ type: "text",
152
+ disabled: true,
153
+ placeholder: field.title ?? field.name,
154
+ className: "w-full rounded-md border border-neutral-300 bg-neutral-100 px-3 py-1.5 text-sm dark:border-neutral-600 dark:bg-neutral-800"
155
+ }
156
+ ),
157
+ field.type === "rating" && /* @__PURE__ */ jsxRuntime.jsx(
158
+ "div",
159
+ {
160
+ role: "img",
161
+ className: "flex gap-1",
162
+ "aria-label": "Rating: 0 out of 5",
163
+ children: [1, 2, 3, 4, 5].map((n) => /* @__PURE__ */ jsxRuntime.jsx(
164
+ "span",
165
+ {
166
+ "aria-hidden": "true",
167
+ className: "text-lg text-neutral-500 dark:text-neutral-500",
168
+ children: "\u2605"
169
+ },
170
+ n
171
+ ))
172
+ }
173
+ ),
174
+ field.type === "dropdown" && field.choices && /* @__PURE__ */ jsxRuntime.jsx(
175
+ "select",
176
+ {
177
+ id: fieldId,
178
+ name: fieldId,
179
+ disabled: true,
180
+ className: "w-full rounded-md border border-neutral-300 bg-neutral-100 px-3 py-1.5 text-sm dark:border-neutral-600 dark:bg-neutral-800",
181
+ children: field.choices.map((choice, ci) => {
182
+ const value = typeof choice === "string" ? choice : choice.value;
183
+ const text = typeof choice === "string" ? choice : choice.text;
184
+ return /* @__PURE__ */ jsxRuntime.jsx("option", { value, children: text }, ci);
185
+ })
186
+ }
187
+ )
188
+ ] }, field.name ?? i);
189
+ }),
190
+ /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-xs text-neutral-600 dark:text-neutral-400", children: "This is a preview. Interactive survey support coming soon." })
191
+ ] })
192
+ }
193
+ );
194
+ };
195
+
196
+ exports.SurveyBlock = SurveyBlock;
197
+ //# sourceMappingURL=chunk-KBEKQMVY.cjs.map
198
+ //# sourceMappingURL=chunk-KBEKQMVY.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/Markdown/SurveyBlock.tsx"],"names":["useState","useEffect","jsx","FenceBlock","jsxs"],"mappings":"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","file":"chunk-KBEKQMVY.cjs","sourcesContent":["/** Survey/questionnaire preview from JSON or YAML. Requires `js-yaml` for YAML input. */\nimport React, { useEffect, useState } from 'react';\n\nimport { FenceBlock } from './FenceBlock';\n\ninterface SurveyBlockProps {\n code: string;\n id: string;\n}\n\ninterface SurveyField {\n type: string;\n name: string;\n title?: string;\n label?: string;\n choices?: Array<string | { value: string; text: string }>;\n isRequired?: boolean;\n}\n\ninterface ParsedSurvey {\n fields: SurveyField[];\n error: string | null;\n}\n\ntype YamlLoadFn = (input: string) => unknown;\nlet yamlPromise: Promise<YamlLoadFn> | null = null;\nfunction loadYaml(): Promise<YamlLoadFn> {\n if (!yamlPromise) {\n yamlPromise = import(/* @vite-ignore */ 'js-yaml')\n .then((mod) => {\n const api =\n (mod as { default?: { load?: YamlLoadFn }; load?: YamlLoadFn })\n .default ?? mod;\n const load = (api as { load?: YamlLoadFn }).load;\n if (typeof load !== 'function')\n throw new Error('js-yaml load not found');\n return load;\n })\n .catch((err) => {\n yamlPromise = null;\n throw err;\n });\n }\n return yamlPromise;\n}\n\nfunction tryParseJson(\n code: string\n): { ok: true; data: unknown } | { ok: false } {\n try {\n return { ok: true, data: JSON.parse(code) };\n } catch {\n return { ok: false };\n }\n}\n\nfunction elementsToParsed(data: unknown): ParsedSurvey {\n if (!data || typeof data !== 'object') {\n return { fields: [], error: 'Invalid survey data format' };\n }\n const obj = data as Record<string, unknown>;\n\n let elements: unknown[] = [];\n if (Array.isArray(obj.pages)) {\n for (const page of obj.pages as Array<Record<string, unknown>>) {\n if (Array.isArray(page.elements)) {\n elements = elements.concat(page.elements);\n }\n }\n } else if (Array.isArray(obj.elements)) {\n elements = obj.elements;\n } else if (Array.isArray(obj.questions)) {\n elements = obj.questions;\n } else if (Array.isArray(obj.fields)) {\n elements = obj.fields;\n } else {\n return { fields: [], error: 'No survey questions found in data' };\n }\n\n return { fields: elements as SurveyField[], error: null };\n}\n\nexport const SurveyBlock: React.FC<SurveyBlockProps> = ({ code, id }) => {\n const [parsed, setParsed] = useState<ParsedSurvey | null>(null);\n\n useEffect(() => {\n let cancelled = false;\n\n const jsonResult = tryParseJson(code);\n if (jsonResult.ok) {\n setParsed(elementsToParsed(jsonResult.data));\n return;\n }\n\n loadYaml()\n .then((load) => {\n try {\n const data = load(code);\n if (!cancelled) setParsed(elementsToParsed(data));\n } catch (err) {\n if (!cancelled)\n setParsed({\n fields: [],\n error: `Failed to parse survey data: ${(err as Error).message}`,\n });\n }\n })\n .catch(() => {\n if (!cancelled)\n setParsed({\n fields: [],\n error:\n 'Survey preview requires the `js-yaml` package for YAML input. Install it with `npm install js-yaml`.',\n });\n });\n return () => {\n cancelled = true;\n };\n }, [code]);\n\n if (!parsed) {\n return (\n <FenceBlock code={code} language=\"survey\" supportsRawView>\n <div className=\"flex items-center justify-center p-6 text-sm text-neutral-500\">\n Loading survey…\n </div>\n </FenceBlock>\n );\n }\n\n const { fields, error } = parsed;\n\n return (\n <FenceBlock\n code={code}\n language=\"survey\"\n supportsRawView\n error={error ?? undefined}\n >\n <div className=\"space-y-4 p-4\">\n <h4 className=\"text-sm font-medium text-neutral-700 dark:text-neutral-300\">\n Survey Preview\n </h4>\n {fields.map((field, i) => {\n const fieldId = `${id}-field-${field.name ?? i}`;\n return (\n <div key={field.name ?? i} className=\"space-y-1.5\">\n <label\n htmlFor={fieldId}\n className=\"block text-sm font-medium text-neutral-700 dark:text-neutral-300\"\n >\n {field.title ?? field.label ?? field.name}\n {field.isRequired && (\n <span className=\"ml-1 text-red-500\">*</span>\n )}\n </label>\n\n {(field.type === 'radiogroup' || field.type === 'radio') &&\n field.choices && (\n <div className=\"space-y-1\">\n {field.choices.map((choice, ci) => {\n const value =\n typeof choice === 'string' ? choice : choice.value;\n const text =\n typeof choice === 'string' ? choice : choice.text;\n return (\n <label\n key={ci}\n className=\"flex items-center gap-2 text-sm text-neutral-600 dark:text-neutral-400\"\n >\n <input\n type=\"radio\"\n name={`${id}-${field.name}`}\n value={value}\n disabled\n className=\"accent-primary-500\"\n />\n {text}\n </label>\n );\n })}\n </div>\n )}\n\n {(field.type === 'checkbox' || field.type === 'boolean') && (\n <input\n id={fieldId}\n type=\"checkbox\"\n disabled\n className=\"accent-primary-500\"\n />\n )}\n\n {(field.type === 'text' || field.type === 'comment') && (\n <input\n id={fieldId}\n type=\"text\"\n disabled\n placeholder={field.title ?? field.name}\n className=\"w-full rounded-md border border-neutral-300 bg-neutral-100 px-3 py-1.5 text-sm dark:border-neutral-600 dark:bg-neutral-800\"\n />\n )}\n\n {field.type === 'rating' && (\n <div\n role=\"img\"\n className=\"flex gap-1\"\n aria-label=\"Rating: 0 out of 5\"\n >\n {[1, 2, 3, 4, 5].map((n) => (\n <span\n key={n}\n aria-hidden=\"true\"\n className=\"text-lg text-neutral-500 dark:text-neutral-500\"\n >\n ★\n </span>\n ))}\n </div>\n )}\n\n {field.type === 'dropdown' && field.choices && (\n <select\n id={fieldId}\n name={fieldId}\n disabled\n className=\"w-full rounded-md border border-neutral-300 bg-neutral-100 px-3 py-1.5 text-sm dark:border-neutral-600 dark:bg-neutral-800\"\n >\n {field.choices.map((choice, ci) => {\n const value =\n typeof choice === 'string' ? choice : choice.value;\n const text =\n typeof choice === 'string' ? choice : choice.text;\n return (\n <option key={ci} value={value}>\n {text}\n </option>\n );\n })}\n </select>\n )}\n </div>\n );\n })}\n <p className=\"text-xs text-neutral-600 dark:text-neutral-400\">\n This is a preview. Interactive survey support coming soon.\n </p>\n </div>\n </FenceBlock>\n );\n};\n"]}
@@ -0,0 +1,258 @@
1
+ 'use strict';
2
+
3
+ var chunkNNEFAUHV_cjs = require('./chunk-NNEFAUHV.cjs');
4
+ var chunkFHY3K6PL_cjs = require('./chunk-FHY3K6PL.cjs');
5
+ var chunkOR5DRJCW_cjs = require('./chunk-OR5DRJCW.cjs');
6
+ var React = require('react');
7
+ var classVarianceAuthority = require('class-variance-authority');
8
+ var jsxRuntime = require('react/jsx-runtime');
9
+
10
+ function _interopNamespace(e) {
11
+ if (e && e.__esModule) return e;
12
+ var n = Object.create(null);
13
+ if (e) {
14
+ Object.keys(e).forEach(function (k) {
15
+ if (k !== 'default') {
16
+ var d = Object.getOwnPropertyDescriptor(e, k);
17
+ Object.defineProperty(n, k, d.get ? d : {
18
+ enumerable: true,
19
+ get: function () { return e[k]; }
20
+ });
21
+ }
22
+ });
23
+ }
24
+ n.default = e;
25
+ return Object.freeze(n);
26
+ }
27
+
28
+ var React__namespace = /*#__PURE__*/_interopNamespace(React);
29
+
30
+ var sheetOverlayVariants = classVarianceAuthority.cva([
31
+ "fixed inset-0 z-50",
32
+ "bg-black/50 backdrop-blur-sm",
33
+ "data-[state=open]:animate-in data-[state=open]:fade-in-0",
34
+ "data-[state=closed]:animate-out data-[state=closed]:fade-out-0"
35
+ ]);
36
+ var sheetContentVariants = classVarianceAuthority.cva(
37
+ [
38
+ "fixed z-50 flex flex-col gap-4",
39
+ "bg-card text-card-foreground shadow-lg",
40
+ "border-border",
41
+ "focus:outline-none",
42
+ "transition ease-in-out duration-200"
43
+ ],
44
+ {
45
+ variants: {
46
+ side: {
47
+ top: "inset-x-0 top-0 border-b max-h-dvh",
48
+ bottom: "inset-x-0 bottom-0 border-t max-h-dvh",
49
+ left: "inset-y-0 left-0 h-full border-r w-3/4 sm:max-w-sm",
50
+ right: "inset-y-0 right-0 h-full border-l w-3/4 sm:max-w-sm"
51
+ }
52
+ },
53
+ defaultVariants: {
54
+ side: "right"
55
+ }
56
+ }
57
+ );
58
+ function Sheet({
59
+ open,
60
+ onOpenChange,
61
+ children,
62
+ side,
63
+ closeOnOverlayClick = true,
64
+ closeOnEscape = true,
65
+ className,
66
+ id,
67
+ "aria-label": ariaLabel,
68
+ "aria-labelledby": ariaLabelledBy,
69
+ "aria-describedby": ariaDescribedBy
70
+ }) {
71
+ const generatedId = React__namespace.useId();
72
+ const sheetId = id || generatedId;
73
+ const focusTrapRef = chunkNNEFAUHV_cjs.useFocusTrap(open);
74
+ chunkFHY3K6PL_cjs.useEscapeKey(() => {
75
+ if (closeOnEscape && open) onOpenChange(false);
76
+ }, open);
77
+ const handleOverlayClick = React__namespace.useCallback(
78
+ (e) => {
79
+ if (closeOnOverlayClick && e.target === e.currentTarget) {
80
+ onOpenChange(false);
81
+ }
82
+ },
83
+ [closeOnOverlayClick, onOpenChange]
84
+ );
85
+ if (!open) return null;
86
+ return /* @__PURE__ */ jsxRuntime.jsx(
87
+ SheetContext.Provider,
88
+ {
89
+ value: { onClose: () => onOpenChange(false), sheetId },
90
+ children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "fixed inset-0 z-50", children: [
91
+ /* @__PURE__ */ jsxRuntime.jsx(
92
+ "div",
93
+ {
94
+ className: chunkOR5DRJCW_cjs.cn(sheetOverlayVariants()),
95
+ "data-state": "open",
96
+ "aria-hidden": "true",
97
+ onClick: handleOverlayClick
98
+ }
99
+ ),
100
+ /* @__PURE__ */ jsxRuntime.jsx(
101
+ "div",
102
+ {
103
+ ref: focusTrapRef,
104
+ role: "dialog",
105
+ "aria-modal": "true",
106
+ "aria-label": ariaLabel,
107
+ "aria-labelledby": ariaLabelledBy || `${sheetId}-title`,
108
+ "aria-describedby": ariaDescribedBy,
109
+ id: sheetId,
110
+ tabIndex: -1,
111
+ "data-state": "open",
112
+ "data-slot": "sheet",
113
+ className: chunkOR5DRJCW_cjs.cn(sheetContentVariants({ side }), className),
114
+ children
115
+ }
116
+ )
117
+ ] })
118
+ }
119
+ );
120
+ }
121
+ Sheet.displayName = "Sheet";
122
+ var SheetContext = React__namespace.createContext(
123
+ void 0
124
+ );
125
+ function useSheetContext() {
126
+ const context = React__namespace.useContext(SheetContext);
127
+ if (!context) {
128
+ throw new Error("Sheet components must be used within a Sheet");
129
+ }
130
+ return context;
131
+ }
132
+ var SheetHeader = React__namespace.forwardRef(
133
+ ({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
134
+ "div",
135
+ {
136
+ ref,
137
+ "data-slot": "sheet-header",
138
+ className: chunkOR5DRJCW_cjs.cn(
139
+ "flex shrink-0 items-center justify-between",
140
+ "border-border border-b px-6 py-4",
141
+ className
142
+ ),
143
+ ...props
144
+ }
145
+ )
146
+ );
147
+ SheetHeader.displayName = "SheetHeader";
148
+ var SheetTitle = React__namespace.forwardRef(
149
+ ({ className, children, ...props }, ref) => {
150
+ const { sheetId } = useSheetContext();
151
+ return /* @__PURE__ */ jsxRuntime.jsx(
152
+ "h2",
153
+ {
154
+ ref,
155
+ id: `${sheetId}-title`,
156
+ "data-slot": "sheet-title",
157
+ className: chunkOR5DRJCW_cjs.cn(
158
+ "text-lg leading-none font-semibold tracking-tight",
159
+ className
160
+ ),
161
+ ...props,
162
+ children
163
+ }
164
+ );
165
+ }
166
+ );
167
+ SheetTitle.displayName = "SheetTitle";
168
+ var SheetDescription = React__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
169
+ "p",
170
+ {
171
+ ref,
172
+ "data-slot": "sheet-description",
173
+ className: chunkOR5DRJCW_cjs.cn("text-muted-foreground text-sm", className),
174
+ ...props
175
+ }
176
+ ));
177
+ SheetDescription.displayName = "SheetDescription";
178
+ var SheetBody = React__namespace.forwardRef(
179
+ ({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
180
+ "div",
181
+ {
182
+ ref,
183
+ "data-slot": "sheet-body",
184
+ className: chunkOR5DRJCW_cjs.cn("flex-1 overflow-y-auto px-6 py-4", className),
185
+ ...props
186
+ }
187
+ )
188
+ );
189
+ SheetBody.displayName = "SheetBody";
190
+ var SheetFooter = React__namespace.forwardRef(
191
+ ({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
192
+ "div",
193
+ {
194
+ ref,
195
+ "data-slot": "sheet-footer",
196
+ className: chunkOR5DRJCW_cjs.cn(
197
+ "flex shrink-0 flex-col-reverse gap-2 sm:flex-row sm:justify-end",
198
+ "border-border border-t px-6 py-4",
199
+ className
200
+ ),
201
+ ...props
202
+ }
203
+ )
204
+ );
205
+ SheetFooter.displayName = "SheetFooter";
206
+ var SheetClose = React__namespace.forwardRef(
207
+ ({ className, children, onClick, ...props }, ref) => {
208
+ const { onClose } = useSheetContext();
209
+ return /* @__PURE__ */ jsxRuntime.jsx(
210
+ "button",
211
+ {
212
+ ref,
213
+ type: "button",
214
+ "data-slot": "sheet-close",
215
+ "aria-label": "Close",
216
+ onClick: (e) => {
217
+ onClose();
218
+ onClick?.(e);
219
+ },
220
+ className: chunkOR5DRJCW_cjs.cn(
221
+ "text-muted-foreground hover:text-foreground rounded-md",
222
+ "focus-visible:ring-ring focus-visible:ring-2 focus-visible:outline-none",
223
+ "transition-colors",
224
+ className
225
+ ),
226
+ ...props,
227
+ children: children ?? /* @__PURE__ */ jsxRuntime.jsx(
228
+ "svg",
229
+ {
230
+ width: "20",
231
+ height: "20",
232
+ viewBox: "0 0 24 24",
233
+ fill: "none",
234
+ stroke: "currentColor",
235
+ strokeWidth: "2",
236
+ strokeLinecap: "round",
237
+ strokeLinejoin: "round",
238
+ "aria-hidden": "true",
239
+ children: /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M18 6 6 18M6 6l12 12" })
240
+ }
241
+ )
242
+ }
243
+ );
244
+ }
245
+ );
246
+ SheetClose.displayName = "SheetClose";
247
+
248
+ exports.Sheet = Sheet;
249
+ exports.SheetBody = SheetBody;
250
+ exports.SheetClose = SheetClose;
251
+ exports.SheetDescription = SheetDescription;
252
+ exports.SheetFooter = SheetFooter;
253
+ exports.SheetHeader = SheetHeader;
254
+ exports.SheetTitle = SheetTitle;
255
+ exports.sheetContentVariants = sheetContentVariants;
256
+ exports.sheetOverlayVariants = sheetOverlayVariants;
257
+ //# sourceMappingURL=chunk-KJ5BSGEO.cjs.map
258
+ //# sourceMappingURL=chunk-KJ5BSGEO.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/Sheet/Sheet.tsx"],"names":["cva","React","useFocusTrap","useEscapeKey","jsx","jsxs","cn"],"mappings":"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","file":"chunk-KJ5BSGEO.cjs","sourcesContent":["import * as React from 'react';\nimport { cva, type VariantProps } from 'class-variance-authority';\nimport { cn } from '../../utils/cn';\nimport { useFocusTrap } from '../../hooks/useFocusTrap';\nimport { useEscapeKey } from '../../hooks/useEscapeKey';\n\nconst sheetOverlayVariants = cva([\n 'fixed inset-0 z-50',\n 'bg-black/50 backdrop-blur-sm',\n 'data-[state=open]:animate-in data-[state=open]:fade-in-0',\n 'data-[state=closed]:animate-out data-[state=closed]:fade-out-0',\n]);\n\nconst sheetContentVariants = cva(\n [\n 'fixed z-50 flex flex-col gap-4',\n 'bg-card text-card-foreground shadow-lg',\n 'border-border',\n 'focus:outline-none',\n 'transition ease-in-out duration-200',\n ],\n {\n variants: {\n side: {\n top: 'inset-x-0 top-0 border-b max-h-dvh',\n bottom: 'inset-x-0 bottom-0 border-t max-h-dvh',\n left: 'inset-y-0 left-0 h-full border-r w-3/4 sm:max-w-sm',\n right: 'inset-y-0 right-0 h-full border-l w-3/4 sm:max-w-sm',\n },\n },\n defaultVariants: {\n side: 'right',\n },\n }\n);\n\nexport interface SheetProps extends VariantProps<typeof sheetContentVariants> {\n /** Whether the sheet is open */\n open: boolean;\n /** Callback when the sheet should close */\n onOpenChange: (open: boolean) => void;\n /** Sheet content */\n children: React.ReactNode;\n /** Close when clicking the overlay (default true) */\n closeOnOverlayClick?: boolean;\n /** Close when pressing Escape (default true) */\n closeOnEscape?: boolean;\n /** Additional class name for the sheet content */\n className?: string;\n /** ID for the sheet, used for accessibility */\n id?: string;\n /** Accessible label for the sheet */\n 'aria-label'?: string;\n /** ID of the element that labels the sheet */\n 'aria-labelledby'?: string;\n /** ID of the element that describes the sheet */\n 'aria-describedby'?: string;\n}\n\n/**\n * A panel that slides in from an edge of the screen.\n *\n * @example\n * ```tsx\n * <Sheet open={open} onOpenChange={setOpen} side=\"right\">\n * <SheetHeader>\n * <SheetTitle>Filters</SheetTitle>\n * </SheetHeader>\n * <SheetBody>...</SheetBody>\n * </Sheet>\n * ```\n */\nfunction Sheet({\n open,\n onOpenChange,\n children,\n side,\n closeOnOverlayClick = true,\n closeOnEscape = true,\n className,\n id,\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledBy,\n 'aria-describedby': ariaDescribedBy,\n}: SheetProps) {\n const generatedId = React.useId();\n const sheetId = id || generatedId;\n\n const focusTrapRef = useFocusTrap<HTMLDivElement>(open);\n\n useEscapeKey(() => {\n if (closeOnEscape && open) onOpenChange(false);\n }, open);\n\n const handleOverlayClick = React.useCallback(\n (e: React.MouseEvent) => {\n if (closeOnOverlayClick && e.target === e.currentTarget) {\n onOpenChange(false);\n }\n },\n [closeOnOverlayClick, onOpenChange]\n );\n\n if (!open) return null;\n\n return (\n <SheetContext.Provider\n value={{ onClose: () => onOpenChange(false), sheetId }}\n >\n <div className=\"fixed inset-0 z-50\">\n <div\n className={cn(sheetOverlayVariants())}\n data-state=\"open\"\n aria-hidden=\"true\"\n onClick={handleOverlayClick}\n />\n <div\n ref={focusTrapRef}\n role=\"dialog\"\n aria-modal=\"true\"\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledBy || `${sheetId}-title`}\n aria-describedby={ariaDescribedBy}\n id={sheetId}\n tabIndex={-1}\n data-state=\"open\"\n data-slot=\"sheet\"\n className={cn(sheetContentVariants({ side }), className)}\n >\n {children}\n </div>\n </div>\n </SheetContext.Provider>\n );\n}\n\nSheet.displayName = 'Sheet';\n\ninterface SheetContextValue {\n onClose: () => void;\n sheetId: string;\n}\n\nconst SheetContext = React.createContext<SheetContextValue | undefined>(\n undefined\n);\n\nfunction useSheetContext() {\n const context = React.useContext(SheetContext);\n if (!context) {\n throw new Error('Sheet components must be used within a Sheet');\n }\n return context;\n}\n\nexport type SheetHeaderProps = React.HTMLAttributes<HTMLDivElement>;\n\nconst SheetHeader = React.forwardRef<HTMLDivElement, SheetHeaderProps>(\n ({ className, ...props }, ref) => (\n <div\n ref={ref}\n data-slot=\"sheet-header\"\n className={cn(\n 'flex shrink-0 items-center justify-between',\n 'border-border border-b px-6 py-4',\n className\n )}\n {...props}\n />\n )\n);\n\nSheetHeader.displayName = 'SheetHeader';\n\nexport type SheetTitleProps = React.HTMLAttributes<HTMLHeadingElement>;\n\nconst SheetTitle = React.forwardRef<HTMLHeadingElement, SheetTitleProps>(\n ({ className, children, ...props }, ref) => {\n const { sheetId } = useSheetContext();\n return (\n <h2\n ref={ref}\n id={`${sheetId}-title`}\n data-slot=\"sheet-title\"\n className={cn(\n 'text-lg leading-none font-semibold tracking-tight',\n className\n )}\n {...props}\n >\n {children}\n </h2>\n );\n }\n);\n\nSheetTitle.displayName = 'SheetTitle';\n\nexport type SheetDescriptionProps = React.HTMLAttributes<HTMLParagraphElement>;\n\nconst SheetDescription = React.forwardRef<\n HTMLParagraphElement,\n SheetDescriptionProps\n>(({ className, ...props }, ref) => (\n <p\n ref={ref}\n data-slot=\"sheet-description\"\n className={cn('text-muted-foreground text-sm', className)}\n {...props}\n />\n));\n\nSheetDescription.displayName = 'SheetDescription';\n\nexport type SheetBodyProps = React.HTMLAttributes<HTMLDivElement>;\n\nconst SheetBody = React.forwardRef<HTMLDivElement, SheetBodyProps>(\n ({ className, ...props }, ref) => (\n <div\n ref={ref}\n data-slot=\"sheet-body\"\n className={cn('flex-1 overflow-y-auto px-6 py-4', className)}\n {...props}\n />\n )\n);\n\nSheetBody.displayName = 'SheetBody';\n\nexport type SheetFooterProps = React.HTMLAttributes<HTMLDivElement>;\n\nconst SheetFooter = React.forwardRef<HTMLDivElement, SheetFooterProps>(\n ({ className, ...props }, ref) => (\n <div\n ref={ref}\n data-slot=\"sheet-footer\"\n className={cn(\n 'flex shrink-0 flex-col-reverse gap-2 sm:flex-row sm:justify-end',\n 'border-border border-t px-6 py-4',\n className\n )}\n {...props}\n />\n )\n);\n\nSheetFooter.displayName = 'SheetFooter';\n\nexport type SheetCloseProps = React.ButtonHTMLAttributes<HTMLButtonElement>;\n\nconst SheetClose = React.forwardRef<HTMLButtonElement, SheetCloseProps>(\n ({ className, children, onClick, ...props }, ref) => {\n const { onClose } = useSheetContext();\n return (\n <button\n ref={ref}\n type=\"button\"\n data-slot=\"sheet-close\"\n aria-label=\"Close\"\n onClick={(e) => {\n onClose();\n onClick?.(e);\n }}\n className={cn(\n 'text-muted-foreground hover:text-foreground rounded-md',\n 'focus-visible:ring-ring focus-visible:ring-2 focus-visible:outline-none',\n 'transition-colors',\n className\n )}\n {...props}\n >\n {children ?? (\n <svg\n width=\"20\"\n height=\"20\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n aria-hidden=\"true\"\n >\n <path d=\"M18 6 6 18M6 6l12 12\" />\n </svg>\n )}\n </button>\n );\n }\n);\n\nSheetClose.displayName = 'SheetClose';\n\nexport {\n Sheet,\n SheetHeader,\n SheetTitle,\n SheetDescription,\n SheetBody,\n SheetFooter,\n SheetClose,\n sheetContentVariants,\n sheetOverlayVariants,\n};\n"]}
@@ -201,5 +201,5 @@ function SortIcon({ direction }) {
201
201
  }
202
202
 
203
203
  export { Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow };
204
- //# sourceMappingURL=chunk-DNPRRYPQ.js.map
205
- //# sourceMappingURL=chunk-DNPRRYPQ.js.map
204
+ //# sourceMappingURL=chunk-KL2S36FM.js.map
205
+ //# sourceMappingURL=chunk-KL2S36FM.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/Table/Table.tsx"],"names":[],"mappings":"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","file":"chunk-KL2S36FM.js","sourcesContent":["import * as React from 'react';\nimport { cn } from '../../utils/cn';\n\n// ============================================================================\n// Table Root\n// ============================================================================\n\nexport interface TableProps extends React.TableHTMLAttributes<HTMLTableElement> {\n /** Whether to make the table responsive with horizontal scroll */\n responsive?: boolean;\n}\n\n/**\n * An accessible table component.\n *\n * Prefer DataVis NITRO in most cases -- it is designed to be simple out of the box while\n * exposing power-user features for click-curious users. Use `Table` only in lightweight\n * situations where that overhead is genuinely unneeded.\n *\n * @example\n * ```tsx\n * <Table>\n * <TableHeader>\n * <TableRow>\n * <TableHead>Name</TableHead>\n * <TableHead>Email</TableHead>\n * </TableRow>\n * </TableHeader>\n * <TableBody>\n * <TableRow>\n * <TableCell>John Doe</TableCell>\n * <TableCell>john@example.com</TableCell>\n * </TableRow>\n * </TableBody>\n * </Table>\n * ```\n */\nconst Table = React.forwardRef<HTMLTableElement, TableProps>(\n ({ className, responsive = true, children, ...props }, ref) => {\n const table = (\n <table\n ref={ref}\n data-slot=\"table\"\n className={cn('w-full caption-bottom text-sm', className)}\n {...props}\n >\n {children}\n </table>\n );\n\n if (responsive) {\n return <div className=\"relative w-full overflow-auto\">{table}</div>;\n }\n\n return table;\n }\n);\n\nTable.displayName = 'Table';\n\n// ============================================================================\n// Table Header\n// ============================================================================\n\nexport type TableHeaderProps = React.HTMLAttributes<HTMLTableSectionElement>;\n\nconst TableHeader = React.forwardRef<HTMLTableSectionElement, TableHeaderProps>(\n ({ className, ...props }, ref) => (\n <thead\n ref={ref}\n data-slot=\"table-header\"\n className={cn('[&_tr]:border-b', className)}\n {...props}\n />\n )\n);\n\nTableHeader.displayName = 'TableHeader';\n\n// ============================================================================\n// Table Body\n// ============================================================================\n\nexport type TableBodyProps = React.HTMLAttributes<HTMLTableSectionElement>;\n\nconst TableBody = React.forwardRef<HTMLTableSectionElement, TableBodyProps>(\n ({ className, ...props }, ref) => (\n <tbody\n ref={ref}\n data-slot=\"table-body\"\n className={cn('[&_tr:last-child]:border-0', className)}\n {...props}\n />\n )\n);\n\nTableBody.displayName = 'TableBody';\n\n// ============================================================================\n// Table Footer\n// ============================================================================\n\nexport type TableFooterProps = React.HTMLAttributes<HTMLTableSectionElement>;\n\nconst TableFooter = React.forwardRef<HTMLTableSectionElement, TableFooterProps>(\n ({ className, ...props }, ref) => (\n <tfoot\n ref={ref}\n data-slot=\"table-footer\"\n className={cn(\n 'bg-muted/50 border-t font-medium [&>tr]:last:border-b-0',\n className\n )}\n {...props}\n />\n )\n);\n\nTableFooter.displayName = 'TableFooter';\n\n// ============================================================================\n// Table Row\n// ============================================================================\n\nexport interface TableRowProps extends React.HTMLAttributes<HTMLTableRowElement> {\n /** Whether the row is selected */\n selected?: boolean;\n}\n\nconst TableRow = React.forwardRef<HTMLTableRowElement, TableRowProps>(\n ({ className, selected, ...props }, ref) => (\n <tr\n ref={ref}\n data-slot=\"table-row\"\n data-selected={selected}\n className={cn(\n 'border-border border-b transition-colors',\n 'hover:bg-muted/50',\n 'data-[selected=true]:bg-muted',\n className\n )}\n {...props}\n />\n )\n);\n\nTableRow.displayName = 'TableRow';\n\n// ============================================================================\n// Table Head\n// ============================================================================\n\nexport interface TableHeadProps extends React.ThHTMLAttributes<HTMLTableCellElement> {\n /** Sortable column configuration */\n sortable?: boolean;\n /** Current sort direction */\n sortDirection?: 'asc' | 'desc' | null;\n /** Callback when sort is triggered */\n onSort?: () => void;\n}\n\nconst TableHead = React.forwardRef<HTMLTableCellElement, TableHeadProps>(\n ({ className, sortable, sortDirection, onSort, children, ...props }, ref) => {\n const content = sortable ? (\n <button\n type=\"button\"\n onClick={onSort}\n className={cn(\n 'hover:text-foreground flex items-center gap-1 transition-colors',\n 'focus-visible:ring-ring rounded focus-visible:ring-2 focus-visible:outline-none'\n )}\n aria-label={`Sort column ${sortDirection === 'asc' ? 'descending' : 'ascending'}`}\n >\n {children}\n <SortIcon direction={sortDirection} />\n </button>\n ) : (\n children\n );\n\n return (\n <th\n ref={ref}\n data-slot=\"table-head\"\n aria-sort={\n sortable\n ? sortDirection === 'asc'\n ? 'ascending'\n : sortDirection === 'desc'\n ? 'descending'\n : 'none'\n : undefined\n }\n className={cn(\n 'text-muted-foreground h-12 px-4 text-left align-middle font-medium',\n '[&:has([role=checkbox])]:pr-0',\n className\n )}\n {...props}\n >\n {content}\n </th>\n );\n }\n);\n\nTableHead.displayName = 'TableHead';\n\n// ============================================================================\n// Table Cell\n// ============================================================================\n\nexport type TableCellProps = React.TdHTMLAttributes<HTMLTableCellElement>;\n\nconst TableCell = React.forwardRef<HTMLTableCellElement, TableCellProps>(\n ({ className, ...props }, ref) => (\n <td\n ref={ref}\n data-slot=\"table-cell\"\n className={cn(\n 'p-4 align-middle [&:has([role=checkbox])]:pr-0',\n className\n )}\n {...props}\n />\n )\n);\n\nTableCell.displayName = 'TableCell';\n\n// ============================================================================\n// Table Caption\n// ============================================================================\n\nexport type TableCaptionProps = React.HTMLAttributes<HTMLTableCaptionElement>;\n\nconst TableCaption = React.forwardRef<\n HTMLTableCaptionElement,\n TableCaptionProps\n>(({ className, ...props }, ref) => (\n <caption\n ref={ref}\n data-slot=\"table-caption\"\n className={cn('text-muted-foreground mt-4 text-sm', className)}\n {...props}\n />\n));\n\nTableCaption.displayName = 'TableCaption';\n\n// ============================================================================\n// Sort Icon\n// ============================================================================\n\nfunction SortIcon({ direction }: { direction?: 'asc' | 'desc' | null }) {\n if (direction === 'asc') {\n return (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n aria-hidden=\"true\"\n className=\"shrink-0\"\n >\n <path d=\"m5 12 7-7 7 7\" />\n </svg>\n );\n }\n\n if (direction === 'desc') {\n return (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n aria-hidden=\"true\"\n className=\"shrink-0\"\n >\n <path d=\"m19 12-7 7-7-7\" />\n </svg>\n );\n }\n\n return (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n aria-hidden=\"true\"\n className=\"shrink-0 opacity-50\"\n >\n <path d=\"m7 15 5 5 5-5\" />\n <path d=\"m7 9 5-5 5 5\" />\n </svg>\n );\n}\n\nexport {\n Table,\n TableHeader,\n TableBody,\n TableFooter,\n TableRow,\n TableHead,\n TableCell,\n TableCaption,\n};\n"]}