@mieweb/ui 0.7.1 → 0.7.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (462) hide show
  1. package/dist/CsvBlock-LVJARITD.cjs +15 -0
  2. package/dist/{CsvBlock-2A5VEDD3.cjs.map → CsvBlock-LVJARITD.cjs.map} +1 -1
  3. package/dist/CsvBlock-VTYNQ75L.js +6 -0
  4. package/dist/{CsvBlock-D6PWAJ5X.js.map → CsvBlock-VTYNQ75L.js.map} +1 -1
  5. package/dist/HtmlPreviewBlock-F33P37UD.cjs +15 -0
  6. package/dist/{HtmlPreviewBlock-SYXCV5RH.cjs.map → HtmlPreviewBlock-F33P37UD.cjs.map} +1 -1
  7. package/dist/HtmlPreviewBlock-N4PPVJLJ.js +6 -0
  8. package/dist/{HtmlPreviewBlock-PEHTJ6C3.js.map → HtmlPreviewBlock-N4PPVJLJ.js.map} +1 -1
  9. package/dist/MermaidBlock-G5X4FPUN.cjs +15 -0
  10. package/dist/{MermaidBlock-AFXNP5NK.cjs.map → MermaidBlock-G5X4FPUN.cjs.map} +1 -1
  11. package/dist/MermaidBlock-HUT53CRG.js +6 -0
  12. package/dist/{MermaidBlock-7NK3AVK2.js.map → MermaidBlock-HUT53CRG.js.map} +1 -1
  13. package/dist/SurveyBlock-ORTPGA5T.cjs +15 -0
  14. package/dist/{SurveyBlock-6KRNKFH5.cjs.map → SurveyBlock-ORTPGA5T.cjs.map} +1 -1
  15. package/dist/SurveyBlock-PM3ZMWWR.js +6 -0
  16. package/dist/{SurveyBlock-NNDGXGG4.js.map → SurveyBlock-PM3ZMWWR.js.map} +1 -1
  17. package/dist/ag-grid.cjs +13 -13
  18. package/dist/ag-grid.js +2 -2
  19. package/dist/brands/index.cjs +7 -7
  20. package/dist/brands/index.js +2 -2
  21. package/dist/{chunk-4DMZAVB2.js → chunk-23AYDOCH.js} +3 -3
  22. package/dist/{chunk-4DMZAVB2.js.map → chunk-23AYDOCH.js.map} +1 -1
  23. package/dist/{chunk-MAMY5HTT.cjs → chunk-26DPQUSB.cjs} +22 -22
  24. package/dist/{chunk-MAMY5HTT.cjs.map → chunk-26DPQUSB.cjs.map} +1 -1
  25. package/dist/{chunk-TRZXK57D.js → chunk-2DW4PUJD.js} +3 -3
  26. package/dist/{chunk-TRZXK57D.js.map → chunk-2DW4PUJD.js.map} +1 -1
  27. package/dist/{chunk-OX2RIVN7.js → chunk-3D4ITDLO.js} +4 -4
  28. package/dist/{chunk-OX2RIVN7.js.map → chunk-3D4ITDLO.js.map} +1 -1
  29. package/dist/{chunk-PJAQDAMZ.cjs → chunk-3IAA3KCE.cjs} +15 -6
  30. package/dist/chunk-3IAA3KCE.cjs.map +1 -0
  31. package/dist/chunk-3PXOIAF6.js +3 -0
  32. package/dist/{chunk-DHKYGVP7.js.map → chunk-3PXOIAF6.js.map} +1 -1
  33. package/dist/{chunk-6D5F7EDM.js → chunk-3SRBIXQX.js} +18 -17
  34. package/dist/chunk-3SRBIXQX.js.map +1 -0
  35. package/dist/{chunk-Q2EWNXIB.cjs → chunk-3SZQRMHM.cjs} +9 -9
  36. package/dist/{chunk-Q2EWNXIB.cjs.map → chunk-3SZQRMHM.cjs.map} +1 -1
  37. package/dist/{chunk-JLBT76WH.js → chunk-3YSIZ2CK.js} +14 -5
  38. package/dist/chunk-3YSIZ2CK.js.map +1 -0
  39. package/dist/{chunk-NIEIRA5A.cjs → chunk-4AE2L6AO.cjs} +13 -13
  40. package/dist/{chunk-NIEIRA5A.cjs.map → chunk-4AE2L6AO.cjs.map} +1 -1
  41. package/dist/{chunk-PFWHWIXS.cjs → chunk-54OW6ZPL.cjs} +124 -3
  42. package/dist/chunk-54OW6ZPL.cjs.map +1 -0
  43. package/dist/{chunk-FJH7P5WG.js → chunk-5BDCQBYW.js} +6 -6
  44. package/dist/{chunk-FJH7P5WG.js.map → chunk-5BDCQBYW.js.map} +1 -1
  45. package/dist/{chunk-XP6HELVG.cjs → chunk-5IDYOJHO.cjs} +13 -13
  46. package/dist/{chunk-XP6HELVG.cjs.map → chunk-5IDYOJHO.cjs.map} +1 -1
  47. package/dist/{chunk-3CJBUAJ4.js → chunk-5U6GETAW.js} +3 -3
  48. package/dist/{chunk-3CJBUAJ4.js.map → chunk-5U6GETAW.js.map} +1 -1
  49. package/dist/{chunk-HEH3QXOQ.js → chunk-5Y5FSR4N.js} +3 -3
  50. package/dist/{chunk-HEH3QXOQ.js.map → chunk-5Y5FSR4N.js.map} +1 -1
  51. package/dist/{chunk-MSRU3XBH.cjs → chunk-6ECKH4DJ.cjs} +7 -7
  52. package/dist/{chunk-MSRU3XBH.cjs.map → chunk-6ECKH4DJ.cjs.map} +1 -1
  53. package/dist/{chunk-MV3MTHWQ.js → chunk-6EWJGRC3.js} +3 -3
  54. package/dist/{chunk-MV3MTHWQ.js.map → chunk-6EWJGRC3.js.map} +1 -1
  55. package/dist/{chunk-AES2BKEW.cjs → chunk-6J7UGYT5.cjs} +10 -10
  56. package/dist/{chunk-AES2BKEW.cjs.map → chunk-6J7UGYT5.cjs.map} +1 -1
  57. package/dist/{chunk-7WMSUXOQ.js → chunk-6OCYG6J2.js} +4 -4
  58. package/dist/{chunk-7WMSUXOQ.js.map → chunk-6OCYG6J2.js.map} +1 -1
  59. package/dist/{chunk-JCNPVK74.cjs → chunk-6OQE4ZMG.cjs} +8 -8
  60. package/dist/{chunk-JCNPVK74.cjs.map → chunk-6OQE4ZMG.cjs.map} +1 -1
  61. package/dist/{chunk-KBEKQMVY.cjs → chunk-6QVI6DAO.cjs} +5 -5
  62. package/dist/{chunk-KBEKQMVY.cjs.map → chunk-6QVI6DAO.cjs.map} +1 -1
  63. package/dist/{chunk-CVC4NWFA.cjs → chunk-7AMOKHTW.cjs} +4 -4
  64. package/dist/{chunk-CVC4NWFA.cjs.map → chunk-7AMOKHTW.cjs.map} +1 -1
  65. package/dist/{chunk-44CK4CT2.cjs → chunk-7EB7665B.cjs} +13 -13
  66. package/dist/{chunk-44CK4CT2.cjs.map → chunk-7EB7665B.cjs.map} +1 -1
  67. package/dist/{chunk-BB4WQ4LV.cjs → chunk-ABAOZASX.cjs} +8 -8
  68. package/dist/{chunk-BB4WQ4LV.cjs.map → chunk-ABAOZASX.cjs.map} +1 -1
  69. package/dist/{chunk-6LFG4JFF.js → chunk-AFGADE3B.js} +3 -3
  70. package/dist/{chunk-6LFG4JFF.js.map → chunk-AFGADE3B.js.map} +1 -1
  71. package/dist/{chunk-UOOH356R.cjs → chunk-AIJAFPGJ.cjs} +5 -5
  72. package/dist/{chunk-UOOH356R.cjs.map → chunk-AIJAFPGJ.cjs.map} +1 -1
  73. package/dist/{chunk-43GBCUSQ.js → chunk-AQ564XO7.js} +6 -6
  74. package/dist/chunk-AQ564XO7.js.map +1 -0
  75. package/dist/{chunk-CYMZ2QS5.js → chunk-BCJFOSZX.js} +2 -2
  76. package/dist/{chunk-CYMZ2QS5.js.map → chunk-BCJFOSZX.js.map} +1 -1
  77. package/dist/{chunk-T3C4RNJ4.js → chunk-BJKAVWED.js} +3 -3
  78. package/dist/{chunk-T3C4RNJ4.js.map → chunk-BJKAVWED.js.map} +1 -1
  79. package/dist/{chunk-MKWGKASO.js → chunk-BMRQ4VME.js} +4 -4
  80. package/dist/{chunk-MKWGKASO.js.map → chunk-BMRQ4VME.js.map} +1 -1
  81. package/dist/{chunk-T42BCIUA.js → chunk-BMSG4NBH.js} +4 -4
  82. package/dist/{chunk-T42BCIUA.js.map → chunk-BMSG4NBH.js.map} +1 -1
  83. package/dist/{chunk-QA6ZDHFP.js → chunk-BOOJDRJO.js} +35 -11
  84. package/dist/chunk-BOOJDRJO.js.map +1 -0
  85. package/dist/{chunk-C2544GKZ.js → chunk-BX5ZODPF.js} +4 -4
  86. package/dist/{chunk-C2544GKZ.js.map → chunk-BX5ZODPF.js.map} +1 -1
  87. package/dist/{chunk-IYIYL2SQ.js → chunk-CEQJGUAS.js} +3 -3
  88. package/dist/{chunk-IYIYL2SQ.js.map → chunk-CEQJGUAS.js.map} +1 -1
  89. package/dist/{chunk-6ZYE6JUK.cjs → chunk-CKRRJO7T.cjs} +11 -11
  90. package/dist/{chunk-6ZYE6JUK.cjs.map → chunk-CKRRJO7T.cjs.map} +1 -1
  91. package/dist/{chunk-WO5CAOAN.js → chunk-DCBMTFLE.js} +3 -3
  92. package/dist/{chunk-WO5CAOAN.js.map → chunk-DCBMTFLE.js.map} +1 -1
  93. package/dist/{chunk-J7Z7467B.js → chunk-DLBV42JD.js} +4 -4
  94. package/dist/{chunk-J7Z7467B.js.map → chunk-DLBV42JD.js.map} +1 -1
  95. package/dist/{chunk-MUYTGWGE.js → chunk-DVOQ3JNO.js} +3 -3
  96. package/dist/{chunk-MUYTGWGE.js.map → chunk-DVOQ3JNO.js.map} +1 -1
  97. package/dist/{chunk-LJ2ZWIX6.js → chunk-DWIF6VXZ.js} +124 -3
  98. package/dist/chunk-DWIF6VXZ.js.map +1 -0
  99. package/dist/{chunk-IHTRKWBG.js → chunk-EGWWTIWS.js} +119 -75
  100. package/dist/chunk-EGWWTIWS.js.map +1 -0
  101. package/dist/{chunk-UM6NA7HL.js → chunk-EKRT7K2K.js} +4 -4
  102. package/dist/{chunk-UM6NA7HL.js.map → chunk-EKRT7K2K.js.map} +1 -1
  103. package/dist/{chunk-WGPMTW36.cjs → chunk-EPQPUFS6.cjs} +7 -7
  104. package/dist/{chunk-WGPMTW36.cjs.map → chunk-EPQPUFS6.cjs.map} +1 -1
  105. package/dist/{chunk-J3BU3JBX.js → chunk-FDUA6OGN.js} +3 -3
  106. package/dist/{chunk-J3BU3JBX.js.map → chunk-FDUA6OGN.js.map} +1 -1
  107. package/dist/{chunk-JHYFHEHS.js → chunk-FDV7EQWH.js} +4 -4
  108. package/dist/{chunk-JHYFHEHS.js.map → chunk-FDV7EQWH.js.map} +1 -1
  109. package/dist/{chunk-KQAXXJ4G.cjs → chunk-FF235PKY.cjs} +7 -7
  110. package/dist/{chunk-KQAXXJ4G.cjs.map → chunk-FF235PKY.cjs.map} +1 -1
  111. package/dist/{chunk-FZJBFJJR.js → chunk-FJ7YPVKV.js} +3 -3
  112. package/dist/{chunk-FZJBFJJR.js.map → chunk-FJ7YPVKV.js.map} +1 -1
  113. package/dist/{chunk-5MAGWW5X.cjs → chunk-FKLUSYFP.cjs} +11 -11
  114. package/dist/{chunk-5MAGWW5X.cjs.map → chunk-FKLUSYFP.cjs.map} +1 -1
  115. package/dist/{chunk-ZGSC2CB2.js → chunk-GTHNWP4P.js} +36 -5
  116. package/dist/chunk-GTHNWP4P.js.map +1 -0
  117. package/dist/{chunk-6AHYYWVB.js → chunk-H3HF36ZL.js} +5 -5
  118. package/dist/{chunk-6AHYYWVB.js.map → chunk-H3HF36ZL.js.map} +1 -1
  119. package/dist/{chunk-YZT62IMX.js → chunk-HIDV32ZX.js} +5 -5
  120. package/dist/{chunk-YZT62IMX.js.map → chunk-HIDV32ZX.js.map} +1 -1
  121. package/dist/{chunk-BIT27PPD.js → chunk-HS25RPDW.js} +3 -3
  122. package/dist/{chunk-BIT27PPD.js.map → chunk-HS25RPDW.js.map} +1 -1
  123. package/dist/{chunk-BWYYA3LQ.cjs → chunk-I2ECTLON.cjs} +5 -5
  124. package/dist/{chunk-BWYYA3LQ.cjs.map → chunk-I2ECTLON.cjs.map} +1 -1
  125. package/dist/{chunk-DUPR6FEL.js → chunk-I3WGZPI6.js} +4 -4
  126. package/dist/{chunk-DUPR6FEL.js.map → chunk-I3WGZPI6.js.map} +1 -1
  127. package/dist/{chunk-TN33E2VN.cjs → chunk-IJYTASQQ.cjs} +15 -15
  128. package/dist/{chunk-TN33E2VN.cjs.map → chunk-IJYTASQQ.cjs.map} +1 -1
  129. package/dist/{chunk-BT3ZQJGT.cjs → chunk-IUDY6S7I.cjs} +6 -6
  130. package/dist/{chunk-BT3ZQJGT.cjs.map → chunk-IUDY6S7I.cjs.map} +1 -1
  131. package/dist/{chunk-TR2OJKQ4.cjs → chunk-JTSKPDPH.cjs} +8 -8
  132. package/dist/{chunk-TR2OJKQ4.cjs.map → chunk-JTSKPDPH.cjs.map} +1 -1
  133. package/dist/{chunk-XCLQZ4FV.js → chunk-KFLDXJEE.js} +3 -3
  134. package/dist/{chunk-XCLQZ4FV.js.map → chunk-KFLDXJEE.js.map} +1 -1
  135. package/dist/{chunk-4LVPQ44A.js → chunk-LMBXJZLG.js} +9 -5
  136. package/dist/chunk-LMBXJZLG.js.map +1 -0
  137. package/dist/{chunk-A2QVQF54.cjs → chunk-M26KJKZG.cjs} +4 -4
  138. package/dist/{chunk-A2QVQF54.cjs.map → chunk-M26KJKZG.cjs.map} +1 -1
  139. package/dist/{chunk-ZHBANUBI.cjs → chunk-MJWFNV3L.cjs} +31 -27
  140. package/dist/chunk-MJWFNV3L.cjs.map +1 -0
  141. package/dist/{chunk-UFYXU7KV.js → chunk-MWPPOX6F.js} +4 -4
  142. package/dist/{chunk-UFYXU7KV.js.map → chunk-MWPPOX6F.js.map} +1 -1
  143. package/dist/{chunk-ZDEYV373.cjs → chunk-MYFZYUPR.cjs} +35 -11
  144. package/dist/chunk-MYFZYUPR.cjs.map +1 -0
  145. package/dist/{chunk-MCCO4A23.js → chunk-NGLI2MSM.js} +256 -45
  146. package/dist/chunk-NGLI2MSM.js.map +1 -0
  147. package/dist/{chunk-FCBQP2U4.cjs → chunk-NPKPCYAT.cjs} +142 -16
  148. package/dist/chunk-NPKPCYAT.cjs.map +1 -0
  149. package/dist/{chunk-T3RWXOCM.js → chunk-NU6QKULE.js} +3 -3
  150. package/dist/{chunk-T3RWXOCM.js.map → chunk-NU6QKULE.js.map} +1 -1
  151. package/dist/{chunk-QUUFKGDF.cjs → chunk-OAHORW4N.cjs} +130 -86
  152. package/dist/chunk-OAHORW4N.cjs.map +1 -0
  153. package/dist/{chunk-BYUV3IZV.cjs → chunk-OGPJ3LRF.cjs} +4 -4
  154. package/dist/{chunk-BYUV3IZV.cjs.map → chunk-OGPJ3LRF.cjs.map} +1 -1
  155. package/dist/{chunk-XL7TTKHP.js → chunk-OLFTGCGD.js} +7 -7
  156. package/dist/{chunk-XL7TTKHP.js.map → chunk-OLFTGCGD.js.map} +1 -1
  157. package/dist/{chunk-BX6BTDTR.js → chunk-OQWZYKJM.js} +3 -3
  158. package/dist/{chunk-BX6BTDTR.js.map → chunk-OQWZYKJM.js.map} +1 -1
  159. package/dist/{chunk-JBB25LFB.js → chunk-OTQ72WX3.js} +3 -3
  160. package/dist/{chunk-JBB25LFB.js.map → chunk-OTQ72WX3.js.map} +1 -1
  161. package/dist/{chunk-AFKKJEV5.cjs → chunk-OZOSWBSI.cjs} +4 -4
  162. package/dist/{chunk-AFKKJEV5.cjs.map → chunk-OZOSWBSI.cjs.map} +1 -1
  163. package/dist/{chunk-KJPOFUF5.cjs → chunk-P2VTQ5AR.cjs} +10 -10
  164. package/dist/{chunk-KJPOFUF5.cjs.map → chunk-P2VTQ5AR.cjs.map} +1 -1
  165. package/dist/{chunk-ZAIEQWRA.js → chunk-P6L74SKG.js} +5 -5
  166. package/dist/{chunk-ZAIEQWRA.js.map → chunk-P6L74SKG.js.map} +1 -1
  167. package/dist/{chunk-QASIWBXU.cjs → chunk-P7UMS4E6.cjs} +7 -7
  168. package/dist/{chunk-QASIWBXU.cjs.map → chunk-P7UMS4E6.cjs.map} +1 -1
  169. package/dist/chunk-PAM5UUBL.cjs +740 -0
  170. package/dist/{chunk-UTYUT5YY.cjs.map → chunk-PAM5UUBL.cjs.map} +1 -1
  171. package/dist/{chunk-NVHAQOHH.cjs → chunk-PLMXN23Q.cjs} +10 -10
  172. package/dist/chunk-PLMXN23Q.cjs.map +1 -0
  173. package/dist/{chunk-KOCTIB6U.js → chunk-PS5INHGC.js} +3 -3
  174. package/dist/{chunk-KOCTIB6U.js.map → chunk-PS5INHGC.js.map} +1 -1
  175. package/dist/{chunk-Y2S6QMKU.js → chunk-PTZB2GKL.js} +3 -3
  176. package/dist/{chunk-Y2S6QMKU.js.map → chunk-PTZB2GKL.js.map} +1 -1
  177. package/dist/{chunk-7VF6WO7H.cjs → chunk-Q5VBO3I5.cjs} +310 -99
  178. package/dist/chunk-Q5VBO3I5.cjs.map +1 -0
  179. package/dist/{chunk-BLPCYP4D.cjs → chunk-QI2SB6U3.cjs} +29 -29
  180. package/dist/{chunk-BLPCYP4D.cjs.map → chunk-QI2SB6U3.cjs.map} +1 -1
  181. package/dist/{chunk-EZKRAW2X.js → chunk-QUUBTNMH.js} +3 -3
  182. package/dist/{chunk-EZKRAW2X.js.map → chunk-QUUBTNMH.js.map} +1 -1
  183. package/dist/{chunk-5BQE6BEL.js → chunk-QYSUYB3S.js} +13 -9
  184. package/dist/chunk-QYSUYB3S.js.map +1 -0
  185. package/dist/{chunk-MZPF2QGM.cjs → chunk-RBS3GHDZ.cjs} +15 -15
  186. package/dist/{chunk-MZPF2QGM.cjs.map → chunk-RBS3GHDZ.cjs.map} +1 -1
  187. package/dist/{chunk-KJ5BSGEO.cjs → chunk-RS5VA6QU.cjs} +17 -13
  188. package/dist/chunk-RS5VA6QU.cjs.map +1 -0
  189. package/dist/{chunk-CKD554XR.cjs → chunk-RUEEDOE3.cjs} +5 -5
  190. package/dist/{chunk-CKD554XR.cjs.map → chunk-RUEEDOE3.cjs.map} +1 -1
  191. package/dist/{chunk-372IIHUA.cjs → chunk-RYQ3S3KO.cjs} +53 -53
  192. package/dist/{chunk-372IIHUA.cjs.map → chunk-RYQ3S3KO.cjs.map} +1 -1
  193. package/dist/{chunk-RHYIFIT5.js → chunk-RZFSJD67.js} +3 -3
  194. package/dist/{chunk-RHYIFIT5.js.map → chunk-RZFSJD67.js.map} +1 -1
  195. package/dist/{chunk-NQME7MCK.js → chunk-RZJXCI53.js} +191 -204
  196. package/dist/chunk-RZJXCI53.js.map +1 -0
  197. package/dist/{chunk-DFCZPVG4.cjs → chunk-S3MKIDYG.cjs} +8 -8
  198. package/dist/{chunk-DFCZPVG4.cjs.map → chunk-S3MKIDYG.cjs.map} +1 -1
  199. package/dist/chunk-S5RVSXDV.cjs +45 -0
  200. package/dist/chunk-S5RVSXDV.cjs.map +1 -0
  201. package/dist/{chunk-XDFDVF2O.js → chunk-SH6B4MG5.js} +4 -4
  202. package/dist/{chunk-XDFDVF2O.js.map → chunk-SH6B4MG5.js.map} +1 -1
  203. package/dist/chunk-SVSHA7XV.js +487 -0
  204. package/dist/chunk-SVSHA7XV.js.map +1 -0
  205. package/dist/{chunk-KL2S36FM.js → chunk-TNUL4LGG.js} +6 -6
  206. package/dist/{chunk-KL2S36FM.js.map → chunk-TNUL4LGG.js.map} +1 -1
  207. package/dist/chunk-TQONQSJO.js +42 -0
  208. package/dist/chunk-TQONQSJO.js.map +1 -0
  209. package/dist/{chunk-V25Z5GR6.cjs → chunk-TU36DBH2.cjs} +9 -9
  210. package/dist/{chunk-V25Z5GR6.cjs.map → chunk-TU36DBH2.cjs.map} +1 -1
  211. package/dist/{chunk-FQ3UCZUX.cjs → chunk-U3JU6BI5.cjs} +7 -7
  212. package/dist/{chunk-FQ3UCZUX.cjs.map → chunk-U3JU6BI5.cjs.map} +1 -1
  213. package/dist/{chunk-VCO2IZOG.js → chunk-UA7E7PDS.js} +3 -3
  214. package/dist/{chunk-VCO2IZOG.js.map → chunk-UA7E7PDS.js.map} +1 -1
  215. package/dist/{chunk-OOYEHBYJ.js → chunk-UUI7WXI5.js} +142 -16
  216. package/dist/chunk-UUI7WXI5.js.map +1 -0
  217. package/dist/{chunk-SNEQXSC5.cjs → chunk-VA7QN4DX.cjs} +2 -2
  218. package/dist/{chunk-SNEQXSC5.cjs.map → chunk-VA7QN4DX.cjs.map} +1 -1
  219. package/dist/{chunk-I2W24RHW.js → chunk-VE6OUO7X.js} +3 -3
  220. package/dist/{chunk-I2W24RHW.js.map → chunk-VE6OUO7X.js.map} +1 -1
  221. package/dist/{chunk-STPK44AU.js → chunk-VNWJTCBQ.js} +3 -3
  222. package/dist/{chunk-STPK44AU.js.map → chunk-VNWJTCBQ.js.map} +1 -1
  223. package/dist/{chunk-ZNZZCB2M.cjs → chunk-VPIYTQCV.cjs} +9 -9
  224. package/dist/{chunk-ZNZZCB2M.cjs.map → chunk-VPIYTQCV.cjs.map} +1 -1
  225. package/dist/{chunk-DLNJLCNO.cjs → chunk-VTKXM7IE.cjs} +4 -4
  226. package/dist/{chunk-DLNJLCNO.cjs.map → chunk-VTKXM7IE.cjs.map} +1 -1
  227. package/dist/{chunk-VPNURIAY.cjs → chunk-VVI32P7L.cjs} +10 -10
  228. package/dist/{chunk-VPNURIAY.cjs.map → chunk-VVI32P7L.cjs.map} +1 -1
  229. package/dist/{chunk-PWHK7SWN.cjs → chunk-VWCMOWGH.cjs} +150 -149
  230. package/dist/chunk-VWCMOWGH.cjs.map +1 -0
  231. package/dist/{chunk-EUUQVDXX.cjs → chunk-W4Q4UEXA.cjs} +14 -14
  232. package/dist/{chunk-EUUQVDXX.cjs.map → chunk-W4Q4UEXA.cjs.map} +1 -1
  233. package/dist/{chunk-ZVSW2KS6.js → chunk-WRYZ2752.js} +3 -3
  234. package/dist/{chunk-ZVSW2KS6.js.map → chunk-WRYZ2752.js.map} +1 -1
  235. package/dist/{chunk-U3ABLVYH.cjs → chunk-WUNWHOLA.cjs} +6 -6
  236. package/dist/{chunk-U3ABLVYH.cjs.map → chunk-WUNWHOLA.cjs.map} +1 -1
  237. package/dist/{chunk-RH43XBNV.cjs → chunk-WWJIW2IH.cjs} +4 -4
  238. package/dist/{chunk-RH43XBNV.cjs.map → chunk-WWJIW2IH.cjs.map} +1 -1
  239. package/dist/chunk-X4LBUPJO.cjs +511 -0
  240. package/dist/chunk-X4LBUPJO.cjs.map +1 -0
  241. package/dist/{chunk-4GXECTPS.cjs → chunk-XB54G7WS.cjs} +37 -3
  242. package/dist/chunk-XB54G7WS.cjs.map +1 -0
  243. package/dist/{chunk-IUFDGB5O.js → chunk-XMCIXHGH.js} +3 -3
  244. package/dist/{chunk-IUFDGB5O.js.map → chunk-XMCIXHGH.js.map} +1 -1
  245. package/dist/{chunk-KAKH2UZA.js → chunk-XO3WLK65.js} +3 -3
  246. package/dist/{chunk-KAKH2UZA.js.map → chunk-XO3WLK65.js.map} +1 -1
  247. package/dist/{chunk-IWDQPSJN.cjs → chunk-XS35KPBZ.cjs} +211 -223
  248. package/dist/chunk-XS35KPBZ.cjs.map +1 -0
  249. package/dist/{chunk-DEZ7XSTG.cjs → chunk-XXVUHLQN.cjs} +7 -7
  250. package/dist/{chunk-DEZ7XSTG.cjs.map → chunk-XXVUHLQN.cjs.map} +1 -1
  251. package/dist/{chunk-3GGET5LK.cjs → chunk-YGA35Z2P.cjs} +7 -7
  252. package/dist/{chunk-3GGET5LK.cjs.map → chunk-YGA35Z2P.cjs.map} +1 -1
  253. package/dist/{chunk-GOKC4CCZ.cjs → chunk-YMHOF6WA.cjs} +8 -8
  254. package/dist/{chunk-GOKC4CCZ.cjs.map → chunk-YMHOF6WA.cjs.map} +1 -1
  255. package/dist/{chunk-OXYFTCRW.cjs → chunk-YP5T6NZD.cjs} +4 -4
  256. package/dist/{chunk-OXYFTCRW.cjs.map → chunk-YP5T6NZD.cjs.map} +1 -1
  257. package/dist/{chunk-EL2RSQTJ.cjs → chunk-YVL3XATO.cjs} +5 -5
  258. package/dist/{chunk-EL2RSQTJ.cjs.map → chunk-YVL3XATO.cjs.map} +1 -1
  259. package/dist/{chunk-PVUDXJAI.js → chunk-YXCE2HSK.js} +4 -4
  260. package/dist/{chunk-PVUDXJAI.js.map → chunk-YXCE2HSK.js.map} +1 -1
  261. package/dist/{chunk-ST2RE5UB.cjs → chunk-Z5KFXHDP.cjs} +6 -6
  262. package/dist/{chunk-ST2RE5UB.cjs.map → chunk-Z5KFXHDP.cjs.map} +1 -1
  263. package/dist/{chunk-DAPZPT5N.cjs → chunk-ZBI52NP2.cjs} +13 -13
  264. package/dist/{chunk-DAPZPT5N.cjs.map → chunk-ZBI52NP2.cjs.map} +1 -1
  265. package/dist/{chunk-4Z6ZZKIY.js → chunk-ZIUADGAR.js} +3 -3
  266. package/dist/{chunk-4Z6ZZKIY.js.map → chunk-ZIUADGAR.js.map} +1 -1
  267. package/dist/{chunk-LOTMAKUG.cjs → chunk-ZZJ4ZVYR.cjs} +11 -11
  268. package/dist/{chunk-LOTMAKUG.cjs.map → chunk-ZZJ4ZVYR.cjs.map} +1 -1
  269. package/dist/collabKit-QZL4P5T5.js +48 -0
  270. package/dist/collabKit-QZL4P5T5.js.map +1 -0
  271. package/dist/collabKit-UF7E6V3N.cjs +72 -0
  272. package/dist/collabKit-UF7E6V3N.cjs.map +1 -0
  273. package/dist/components/Alert/index.cjs +6 -6
  274. package/dist/components/Alert/index.js +2 -2
  275. package/dist/components/AlertDialog/index.cjs +5 -5
  276. package/dist/components/AlertDialog/index.js +4 -4
  277. package/dist/components/AudioPlayer/index.cjs +7 -7
  278. package/dist/components/AudioPlayer/index.js +2 -2
  279. package/dist/components/AudioRecorder/index.cjs +7 -7
  280. package/dist/components/AudioRecorder/index.js +2 -2
  281. package/dist/components/Autocomplete/index.cjs +5 -5
  282. package/dist/components/Autocomplete/index.js +4 -4
  283. package/dist/components/Avatar/index.cjs +6 -6
  284. package/dist/components/Avatar/index.js +2 -2
  285. package/dist/components/Badge/index.cjs +4 -4
  286. package/dist/components/Badge/index.js +2 -2
  287. package/dist/components/Breadcrumb/index.cjs +4 -4
  288. package/dist/components/Breadcrumb/index.js +2 -2
  289. package/dist/components/Button/index.cjs +4 -4
  290. package/dist/components/Button/index.js +2 -2
  291. package/dist/components/Card/index.cjs +16 -16
  292. package/dist/components/Card/index.d.cts +8 -3
  293. package/dist/components/Card/index.d.ts +8 -3
  294. package/dist/components/Card/index.js +2 -2
  295. package/dist/components/Checkbox/index.cjs +5 -5
  296. package/dist/components/Checkbox/index.js +2 -2
  297. package/dist/components/CollabStatus/index.cjs +21 -0
  298. package/dist/components/CollabStatus/index.cjs.map +1 -0
  299. package/dist/components/CollabStatus/index.d.cts +222 -0
  300. package/dist/components/CollabStatus/index.d.ts +222 -0
  301. package/dist/components/CollabStatus/index.js +4 -0
  302. package/dist/components/CollabStatus/index.js.map +1 -0
  303. package/dist/components/Collapsible/index.cjs +5 -5
  304. package/dist/components/Collapsible/index.js +2 -2
  305. package/dist/components/CountryCodeDropdown/index.cjs +6 -6
  306. package/dist/components/CountryCodeDropdown/index.js +3 -3
  307. package/dist/components/DateInput/index.cjs +5 -5
  308. package/dist/components/DateInput/index.d.cts +3 -1
  309. package/dist/components/DateInput/index.d.ts +3 -1
  310. package/dist/components/DateInput/index.js +4 -4
  311. package/dist/components/Dropdown/index.cjs +10 -10
  312. package/dist/components/Dropdown/index.d.cts +1 -1
  313. package/dist/components/Dropdown/index.d.ts +1 -1
  314. package/dist/components/Dropdown/index.js +4 -4
  315. package/dist/components/FloatingWindow/index.cjs +5 -5
  316. package/dist/components/FloatingWindow/index.js +3 -3
  317. package/dist/components/Input/index.cjs +4 -4
  318. package/dist/components/Input/index.js +2 -2
  319. package/dist/components/Label/index.cjs +4 -4
  320. package/dist/components/Label/index.js +2 -2
  321. package/dist/components/Markdown/index.cjs +17 -17
  322. package/dist/components/Markdown/index.js +8 -8
  323. package/dist/components/MediaEditor/index.cjs +16 -16
  324. package/dist/components/MediaEditor/index.d.cts +34 -1
  325. package/dist/components/MediaEditor/index.d.ts +34 -1
  326. package/dist/components/MediaEditor/index.js +11 -11
  327. package/dist/components/MediaPlayer/index.cjs +6 -6
  328. package/dist/components/MediaPlayer/index.js +3 -3
  329. package/dist/components/Modal/index.cjs +10 -10
  330. package/dist/components/Modal/index.js +2 -2
  331. package/dist/components/Pagination/index.cjs +5 -5
  332. package/dist/components/Pagination/index.js +2 -2
  333. package/dist/components/PhoneInput/index.cjs +5 -5
  334. package/dist/components/PhoneInput/index.js +3 -3
  335. package/dist/components/Progress/index.cjs +7 -7
  336. package/dist/components/Progress/index.js +2 -2
  337. package/dist/components/QuickAction/index.cjs +7 -7
  338. package/dist/components/QuickAction/index.js +2 -2
  339. package/dist/components/Radio/index.cjs +5 -5
  340. package/dist/components/Radio/index.js +2 -2
  341. package/dist/components/RecordButton/index.cjs +5 -5
  342. package/dist/components/RecordButton/index.js +2 -2
  343. package/dist/components/RichTextEditor/index.cjs +10 -10
  344. package/dist/components/RichTextEditor/index.js +7 -7
  345. package/dist/components/SchedulePicker/index.cjs +11 -11
  346. package/dist/components/SchedulePicker/index.js +2 -2
  347. package/dist/components/ScrollArea/index.cjs +4 -4
  348. package/dist/components/ScrollArea/index.js +2 -2
  349. package/dist/components/Select/index.cjs +5 -5
  350. package/dist/components/Select/index.js +3 -3
  351. package/dist/components/Separator/index.cjs +4 -4
  352. package/dist/components/Separator/index.js +2 -2
  353. package/dist/components/Sheet/index.cjs +11 -11
  354. package/dist/components/Sheet/index.d.cts +1 -1
  355. package/dist/components/Sheet/index.d.ts +1 -1
  356. package/dist/components/Sheet/index.js +2 -2
  357. package/dist/components/Skeleton/index.cjs +7 -7
  358. package/dist/components/Skeleton/index.js +2 -2
  359. package/dist/components/Slider/index.cjs +6 -6
  360. package/dist/components/Slider/index.js +2 -2
  361. package/dist/components/Spinner/index.cjs +6 -6
  362. package/dist/components/Spinner/index.js +2 -2
  363. package/dist/components/SuperChat/index.cjs +46 -46
  364. package/dist/components/SuperChat/index.d.cts +4 -4
  365. package/dist/components/SuperChat/index.d.ts +4 -4
  366. package/dist/components/SuperChat/index.js +9 -9
  367. package/dist/components/SuperChat/plugins/index.cjs +10 -10
  368. package/dist/components/SuperChat/plugins/index.d.cts +3 -3
  369. package/dist/components/SuperChat/plugins/index.d.ts +3 -3
  370. package/dist/components/SuperChat/plugins/index.js +4 -4
  371. package/dist/components/Switch/index.cjs +5 -5
  372. package/dist/components/Switch/index.js +2 -2
  373. package/dist/components/Table/index.cjs +10 -10
  374. package/dist/components/Table/index.js +2 -2
  375. package/dist/components/Tabs/index.cjs +8 -8
  376. package/dist/components/Tabs/index.js +2 -2
  377. package/dist/components/Text/index.cjs +5 -5
  378. package/dist/components/Text/index.d.cts +1 -1
  379. package/dist/components/Text/index.d.ts +1 -1
  380. package/dist/components/Text/index.js +2 -2
  381. package/dist/components/Textarea/index.cjs +4 -4
  382. package/dist/components/Textarea/index.js +2 -2
  383. package/dist/components/ThemeProvider/index.cjs +9 -9
  384. package/dist/components/ThemeProvider/index.js +3 -3
  385. package/dist/components/Toggle/index.cjs +4 -4
  386. package/dist/components/Toggle/index.js +2 -2
  387. package/dist/components/Tooltip/index.cjs +3 -3
  388. package/dist/components/Tooltip/index.js +2 -2
  389. package/dist/datavis.cjs +7 -7
  390. package/dist/datavis.js +3 -3
  391. package/dist/esheet.cjs +18 -18
  392. package/dist/esheet.js +15 -15
  393. package/dist/hooks/index.cjs +34 -22
  394. package/dist/hooks/index.d.cts +31 -3
  395. package/dist/hooks/index.d.ts +31 -3
  396. package/dist/hooks/index.js +3 -3
  397. package/dist/index.cjs +3422 -1875
  398. package/dist/index.cjs.map +1 -1
  399. package/dist/index.d.cts +212 -22
  400. package/dist/index.d.ts +212 -22
  401. package/dist/index.js +918 -124
  402. package/dist/index.js.map +1 -1
  403. package/dist/kerebron.cjs +60 -17
  404. package/dist/kerebron.cjs.map +1 -1
  405. package/dist/kerebron.d.cts +39 -1
  406. package/dist/kerebron.d.ts +39 -1
  407. package/dist/kerebron.js +60 -17
  408. package/dist/kerebron.js.map +1 -1
  409. package/dist/styles.css +1 -1
  410. package/dist/tailwind-preset.cjs +4 -4
  411. package/dist/tailwind-preset.js +1 -1
  412. package/dist/{types-BYnLjEFg.d.ts → types-B2RLmdVd.d.cts} +3 -1
  413. package/dist/{types-BYnLjEFg.d.cts → types-B2RLmdVd.d.ts} +3 -1
  414. package/dist/{types-CyCwYBlr.d.ts → types-BoTeTPdH.d.ts} +1 -1
  415. package/dist/{types-CBh8Zlje.d.cts → types-DyIB9HYT.d.cts} +1 -1
  416. package/dist/{useAnchoredPosition-nXdSFKHf.d.cts → useAnchoredPosition-C7PNglzD.d.cts} +6 -2
  417. package/dist/{useAnchoredPosition-nXdSFKHf.d.ts → useAnchoredPosition-C7PNglzD.d.ts} +6 -2
  418. package/dist/{useTranscriptEdits-Hy0Vm-H8.d.cts → useTranscriptEdits-CGzlemHT.d.cts} +16 -3
  419. package/dist/{useTranscriptEdits-C2BbMU37.d.ts → useTranscriptEdits-D32bLs0l.d.ts} +16 -3
  420. package/dist/utils/index.cjs +15 -11
  421. package/dist/utils/index.d.cts +6 -1
  422. package/dist/utils/index.d.ts +6 -1
  423. package/dist/utils/index.js +2 -2
  424. package/package.json +30 -12
  425. package/dist/CsvBlock-2A5VEDD3.cjs +0 -15
  426. package/dist/CsvBlock-D6PWAJ5X.js +0 -6
  427. package/dist/HtmlPreviewBlock-PEHTJ6C3.js +0 -6
  428. package/dist/HtmlPreviewBlock-SYXCV5RH.cjs +0 -15
  429. package/dist/MermaidBlock-7NK3AVK2.js +0 -6
  430. package/dist/MermaidBlock-AFXNP5NK.cjs +0 -15
  431. package/dist/SurveyBlock-6KRNKFH5.cjs +0 -15
  432. package/dist/SurveyBlock-NNDGXGG4.js +0 -6
  433. package/dist/chunk-43GBCUSQ.js.map +0 -1
  434. package/dist/chunk-4GXECTPS.cjs.map +0 -1
  435. package/dist/chunk-4LVPQ44A.js.map +0 -1
  436. package/dist/chunk-5BQE6BEL.js.map +0 -1
  437. package/dist/chunk-6D5F7EDM.js.map +0 -1
  438. package/dist/chunk-7VF6WO7H.cjs.map +0 -1
  439. package/dist/chunk-DHKYGVP7.js +0 -3
  440. package/dist/chunk-F3SOEIN2.js +0 -11
  441. package/dist/chunk-F3SOEIN2.js.map +0 -1
  442. package/dist/chunk-FCBQP2U4.cjs.map +0 -1
  443. package/dist/chunk-IHTRKWBG.js.map +0 -1
  444. package/dist/chunk-IWDQPSJN.cjs.map +0 -1
  445. package/dist/chunk-JLBT76WH.js.map +0 -1
  446. package/dist/chunk-KJ5BSGEO.cjs.map +0 -1
  447. package/dist/chunk-LJ2ZWIX6.js.map +0 -1
  448. package/dist/chunk-MCCO4A23.js.map +0 -1
  449. package/dist/chunk-NQME7MCK.js.map +0 -1
  450. package/dist/chunk-NVHAQOHH.cjs.map +0 -1
  451. package/dist/chunk-OOYEHBYJ.js.map +0 -1
  452. package/dist/chunk-OR5DRJCW.cjs +0 -13
  453. package/dist/chunk-OR5DRJCW.cjs.map +0 -1
  454. package/dist/chunk-PFWHWIXS.cjs.map +0 -1
  455. package/dist/chunk-PJAQDAMZ.cjs.map +0 -1
  456. package/dist/chunk-PWHK7SWN.cjs.map +0 -1
  457. package/dist/chunk-QA6ZDHFP.js.map +0 -1
  458. package/dist/chunk-QUUFKGDF.cjs.map +0 -1
  459. package/dist/chunk-UTYUT5YY.cjs +0 -240
  460. package/dist/chunk-ZDEYV373.cjs.map +0 -1
  461. package/dist/chunk-ZGSC2CB2.js.map +0 -1
  462. package/dist/chunk-ZHBANUBI.cjs.map +0 -1
@@ -1,11 +1,11 @@
1
- import { Slider } from './chunk-JBB25LFB.js';
2
- import { MediaPlayer } from './chunk-KOCTIB6U.js';
3
- import { Checkbox } from './chunk-XCLQZ4FV.js';
4
- import { Select } from './chunk-J7Z7467B.js';
5
- import { Modal, ModalHeader, ModalTitle, ModalClose, ModalBody, ModalFooter } from './chunk-IUFDGB5O.js';
6
- import { Input } from './chunk-PVUDXJAI.js';
7
- import { Button } from './chunk-ZVSW2KS6.js';
8
- import { useTranscriptEdits, DEFAULT_FILLER_WORDS } from './chunk-OOYEHBYJ.js';
1
+ import { Slider } from './chunk-OTQ72WX3.js';
2
+ import { MediaPlayer } from './chunk-PS5INHGC.js';
3
+ import { Checkbox } from './chunk-KFLDXJEE.js';
4
+ import { Select } from './chunk-DLBV42JD.js';
5
+ import { Modal, ModalHeader, ModalTitle, ModalClose, ModalBody, ModalFooter } from './chunk-XMCIXHGH.js';
6
+ import { Input } from './chunk-YXCE2HSK.js';
7
+ import { Button } from './chunk-WRYZ2752.js';
8
+ import { useTranscriptEdits, DEFAULT_FILLER_WORDS } from './chunk-UUI7WXI5.js';
9
9
  import { isSilenceType, PLAYBACK_SPEEDS } from './chunk-6CGM5H4J.js';
10
10
  import * as React6 from 'react';
11
11
  import { cva } from 'class-variance-authority';
@@ -801,6 +801,22 @@ var mediaEditorVariants = cva(
801
801
  }
802
802
  }
803
803
  );
804
+ function scrollWordIntoTranscript(container, wordIndex) {
805
+ if (!container) return;
806
+ if (container.scrollHeight <= container.clientHeight) return;
807
+ const el = container.querySelector(`[data-word-index="${wordIndex}"]`);
808
+ if (!el) return;
809
+ const containerBox = container.getBoundingClientRect();
810
+ const wordBox = el.getBoundingClientRect();
811
+ const above = wordBox.top - containerBox.top;
812
+ const below = wordBox.bottom - containerBox.bottom;
813
+ const delta = above < 0 ? above : below > 0 ? below : 0;
814
+ if (delta === 0) return;
815
+ container.scrollTo({
816
+ top: container.scrollTop + delta,
817
+ behavior: "smooth"
818
+ });
819
+ }
804
820
  function formatDuration2(ms) {
805
821
  const totalSeconds = Math.round(ms / 1e3);
806
822
  if (totalSeconds < 90) {
@@ -860,6 +876,11 @@ function wordClassName(s) {
860
876
  if (s.hasSpeedMarker) {
861
877
  parts.push("ml-0.5 border-l-[3px] border-l-warning pl-1.5");
862
878
  }
879
+ if (s.isSped) {
880
+ parts.push(
881
+ "underline decoration-warning decoration-dotted decoration-2 underline-offset-4"
882
+ );
883
+ }
863
884
  return parts.join(" ");
864
885
  }
865
886
  var Caret = ({ side }) => /* @__PURE__ */ jsx(
@@ -876,10 +897,19 @@ var MediaEditor = React6.forwardRef(
876
897
  transcript,
877
898
  initialEditedWords,
878
899
  initialUndoStack,
900
+ initialSpeedMarkers,
901
+ initialDefaultSpeed,
879
902
  onEditorStateChange,
880
903
  onHasEditsChange,
881
904
  onCursorTimestampChange,
882
905
  onEditedWordsRender,
906
+ onSpeedStateChange,
907
+ onUndoBeyond,
908
+ canUndoBeyond = false,
909
+ undoBeyondLabel,
910
+ onRedo,
911
+ canRedo = false,
912
+ redoLabel,
883
913
  playerRef: externalPlayerRef,
884
914
  className,
885
915
  splitLayout
@@ -888,6 +918,8 @@ var MediaEditor = React6.forwardRef(
888
918
  transcript,
889
919
  initialEditedWords,
890
920
  initialUndoStack,
921
+ initialSpeedMarkers,
922
+ initialDefaultSpeed,
891
923
  onChange: onEditorStateChange
892
924
  });
893
925
  const {
@@ -896,6 +928,8 @@ var MediaEditor = React6.forwardRef(
896
928
  clipboard,
897
929
  hasEdits,
898
930
  undo,
931
+ redo,
932
+ canRedo: canRedoWords,
899
933
  toggleWordDeleted,
900
934
  deleteRange,
901
935
  cut,
@@ -912,6 +946,7 @@ var MediaEditor = React6.forwardRef(
912
946
  defaultSpeed,
913
947
  setDefaultSpeed,
914
948
  toggleSpeedMarker,
949
+ setSpeedForRange,
915
950
  removeSpeedMarker,
916
951
  getSpeedAtIndex,
917
952
  getSpeedMarkerAtIndex,
@@ -919,6 +954,9 @@ var MediaEditor = React6.forwardRef(
919
954
  stats,
920
955
  fillerAnalysis
921
956
  } = edits;
957
+ const canUndoAnything = undoStack.length > 0 || canUndoBeyond && !!onUndoBeyond;
958
+ const canRedoAnything = canRedoWords || canRedo && !!onRedo;
959
+ const showUndoRedo = canUndoAnything || canRedoAnything || !!onRedo;
922
960
  const [activeWordIndex, setActiveWordIndex] = React6.useState(
923
961
  null
924
962
  );
@@ -965,6 +1003,10 @@ var MediaEditor = React6.forwardRef(
965
1003
  null
966
1004
  );
967
1005
  const longPressTriggered = React6.useRef(false);
1006
+ const selectionAnchorRef = React6.useRef(null);
1007
+ const dragPointer = React6.useRef(null);
1008
+ const dragScrollFrame = React6.useRef(null);
1009
+ const dragListeners = React6.useRef(null);
968
1010
  const wordPlaybackStartMs = React6.useRef(null);
969
1011
  const wordPlaybackEndMs = React6.useRef(null);
970
1012
  const sequenceSegments = React6.useRef([]);
@@ -975,6 +1017,13 @@ var MediaEditor = React6.forwardRef(
975
1017
  React6.useEffect(() => {
976
1018
  onEditedWordsRender?.(editedWords);
977
1019
  }, [editedWords, onEditedWordsRender]);
1020
+ const onSpeedStateChangeRef = React6.useRef(onSpeedStateChange);
1021
+ React6.useEffect(() => {
1022
+ onSpeedStateChangeRef.current = onSpeedStateChange;
1023
+ });
1024
+ React6.useEffect(() => {
1025
+ onSpeedStateChangeRef.current?.(speedMarkers, defaultSpeed);
1026
+ }, [speedMarkers, defaultSpeed]);
978
1027
  React6.useEffect(() => {
979
1028
  if (onCursorTimestampChange) {
980
1029
  const word = editedWords[cursorIndex];
@@ -1012,13 +1061,10 @@ var MediaEditor = React6.forwardRef(
1012
1061
  }, [activeWordIndex]);
1013
1062
  React6.useEffect(() => {
1014
1063
  if (activeWordIndex === null) return;
1015
- const el = contentRef.current?.querySelector(
1016
- `[data-word-index="${activeWordIndex}"]`
1017
- );
1018
- el?.scrollIntoView({ block: "nearest", behavior: "smooth" });
1064
+ scrollWordIntoTranscript(contentRef.current, activeWordIndex);
1019
1065
  }, [activeWordIndex]);
1020
1066
  React6.useEffect(() => {
1021
- contentRef.current?.focus();
1067
+ contentRef.current?.focus({ preventScroll: true });
1022
1068
  }, [transcript]);
1023
1069
  React6.useEffect(() => {
1024
1070
  const player = playerRef.current;
@@ -1214,6 +1260,157 @@ var MediaEditor = React6.forwardRef(
1214
1260
  setSelection(null);
1215
1261
  }
1216
1262
  };
1263
+ const AUTOSCROLL_EDGE_PX = 24;
1264
+ const AUTOSCROLL_MAX_STEP_PX = 24;
1265
+ const extendDragSelection = (index) => {
1266
+ const anchor = selectionAnchorRef.current;
1267
+ if (!isDragging.current || anchor === null) return;
1268
+ setSelection({
1269
+ start: Math.min(anchor, index),
1270
+ end: Math.max(anchor, index)
1271
+ });
1272
+ setCursorIndex(index);
1273
+ };
1274
+ const wordIndexAtPoint = (x, y) => {
1275
+ const span = document.elementFromPoint?.(x, y)?.closest?.("[data-word-index]");
1276
+ if (!span) return null;
1277
+ const parsed = Number(span.dataset.wordIndex);
1278
+ return Number.isInteger(parsed) ? parsed : null;
1279
+ };
1280
+ const extendSelectionToPointer = () => {
1281
+ const container = contentRef.current;
1282
+ const pointer = dragPointer.current;
1283
+ if (!container || !pointer) return;
1284
+ const rect = container.getBoundingClientRect();
1285
+ const top = Math.max(rect.top, 0);
1286
+ const bottom = Math.min(rect.bottom, window.innerHeight);
1287
+ const left = Math.max(rect.left, 0);
1288
+ const right = Math.min(rect.right, window.innerWidth);
1289
+ if (bottom <= top || right <= left) return;
1290
+ const y = Math.min(Math.max(pointer.y, top + 2), bottom - 2);
1291
+ const x = Math.min(Math.max(pointer.x, left + 2), right - 2);
1292
+ for (const rawX of [x, left + (right - left) / 2, left + 16]) {
1293
+ const probeX = Math.min(Math.max(rawX, left + 2), right - 2);
1294
+ const index = wordIndexAtPoint(probeX, y);
1295
+ if (index !== null) {
1296
+ extendDragSelection(index);
1297
+ return;
1298
+ }
1299
+ }
1300
+ const spans = container.querySelectorAll("[data-word-index]");
1301
+ if (spans.length === 0) return;
1302
+ if (spans[0].getBoundingClientRect().top > y) {
1303
+ const parsed = Number(spans[0].dataset.wordIndex);
1304
+ if (Number.isInteger(parsed)) extendDragSelection(parsed);
1305
+ return;
1306
+ }
1307
+ for (let i = spans.length - 1; i >= 0; i--) {
1308
+ const spanRect = spans[i].getBoundingClientRect();
1309
+ if (spanRect.top <= y) {
1310
+ const parsed = Number(spans[i].dataset.wordIndex);
1311
+ if (Number.isInteger(parsed)) extendDragSelection(parsed);
1312
+ return;
1313
+ }
1314
+ }
1315
+ };
1316
+ const stepDragAutoScroll = () => {
1317
+ dragScrollFrame.current = null;
1318
+ const container = contentRef.current;
1319
+ const pointer = dragPointer.current;
1320
+ if (!isDragging.current || !container || !pointer) return;
1321
+ const rect = container.getBoundingClientRect();
1322
+ const top = Math.max(rect.top, 0);
1323
+ const bottom = Math.min(rect.bottom, window.innerHeight);
1324
+ if (bottom <= top) {
1325
+ dragScrollFrame.current = requestAnimationFrame(stepDragAutoScroll);
1326
+ return;
1327
+ }
1328
+ let step = 0;
1329
+ if (pointer.y < top + AUTOSCROLL_EDGE_PX) {
1330
+ step = Math.max(
1331
+ (pointer.y - (top + AUTOSCROLL_EDGE_PX)) / 3,
1332
+ -AUTOSCROLL_MAX_STEP_PX
1333
+ );
1334
+ } else if (pointer.y > bottom - AUTOSCROLL_EDGE_PX) {
1335
+ step = Math.min(
1336
+ (pointer.y - (bottom - AUTOSCROLL_EDGE_PX)) / 3,
1337
+ AUTOSCROLL_MAX_STEP_PX
1338
+ );
1339
+ }
1340
+ if (step !== 0) {
1341
+ const before = container.scrollTop;
1342
+ container.scrollTop += step;
1343
+ if (container.scrollTop !== before) {
1344
+ extendSelectionToPointer();
1345
+ }
1346
+ }
1347
+ dragScrollFrame.current = requestAnimationFrame(stepDragAutoScroll);
1348
+ };
1349
+ const detachDragListeners = () => {
1350
+ if (dragListeners.current) {
1351
+ document.removeEventListener("mousemove", dragListeners.current.move);
1352
+ document.removeEventListener("mouseup", dragListeners.current.up);
1353
+ dragListeners.current = null;
1354
+ }
1355
+ if (dragScrollFrame.current !== null) {
1356
+ cancelAnimationFrame(dragScrollFrame.current);
1357
+ dragScrollFrame.current = null;
1358
+ }
1359
+ };
1360
+ const handleMouseUp = () => {
1361
+ if (longPressTimer.current) {
1362
+ clearTimeout(longPressTimer.current);
1363
+ longPressTimer.current = null;
1364
+ }
1365
+ if (isDragging.current) {
1366
+ isDragging.current = false;
1367
+ }
1368
+ detachDragListeners();
1369
+ };
1370
+ const beginDragTracking = () => {
1371
+ detachDragListeners();
1372
+ const up = () => handleMouseUp();
1373
+ const move = (e) => {
1374
+ if (!isDragging.current) return;
1375
+ if (e.buttons === 0) {
1376
+ up();
1377
+ return;
1378
+ }
1379
+ dragPointer.current = { x: e.clientX, y: e.clientY };
1380
+ const container = contentRef.current;
1381
+ if (container && longPressTimer.current) {
1382
+ const rect = container.getBoundingClientRect();
1383
+ const outside = e.clientX < rect.left || e.clientX > rect.right || e.clientY < rect.top || e.clientY > rect.bottom;
1384
+ if (outside) {
1385
+ clearTimeout(longPressTimer.current);
1386
+ longPressTimer.current = null;
1387
+ }
1388
+ }
1389
+ extendSelectionToPointer();
1390
+ };
1391
+ dragListeners.current = { move, up };
1392
+ document.addEventListener("mousemove", move);
1393
+ document.addEventListener("mouseup", up);
1394
+ dragScrollFrame.current = requestAnimationFrame(stepDragAutoScroll);
1395
+ };
1396
+ React6.useEffect(
1397
+ () => () => {
1398
+ if (dragListeners.current) {
1399
+ document.removeEventListener("mousemove", dragListeners.current.move);
1400
+ document.removeEventListener("mouseup", dragListeners.current.up);
1401
+ dragListeners.current = null;
1402
+ }
1403
+ if (dragScrollFrame.current !== null) {
1404
+ cancelAnimationFrame(dragScrollFrame.current);
1405
+ dragScrollFrame.current = null;
1406
+ }
1407
+ if (longPressTimer.current) {
1408
+ clearTimeout(longPressTimer.current);
1409
+ longPressTimer.current = null;
1410
+ }
1411
+ },
1412
+ []
1413
+ );
1217
1414
  const handleWordMouseDown = (index, e) => {
1218
1415
  if (e.button !== 0) return;
1219
1416
  longPressTriggered.current = false;
@@ -1222,31 +1419,20 @@ var MediaEditor = React6.forwardRef(
1222
1419
  openWordEditor(index);
1223
1420
  }, 500);
1224
1421
  isDragging.current = true;
1422
+ selectionAnchorRef.current = index;
1423
+ dragPointer.current = { x: e.clientX, y: e.clientY };
1225
1424
  setSelectionAnchor(index);
1226
1425
  setCursorIndex(index);
1227
1426
  setCursorPosition("before");
1228
1427
  setSelection(null);
1428
+ beginDragTracking();
1229
1429
  };
1230
1430
  const handleWordMouseEnter = (index) => {
1231
1431
  if (longPressTimer.current) {
1232
1432
  clearTimeout(longPressTimer.current);
1233
1433
  longPressTimer.current = null;
1234
1434
  }
1235
- if (!isDragging.current || selectionAnchor === null) return;
1236
- setSelection({
1237
- start: Math.min(selectionAnchor, index),
1238
- end: Math.max(selectionAnchor, index)
1239
- });
1240
- setCursorIndex(index);
1241
- };
1242
- const handleMouseUp = () => {
1243
- if (longPressTimer.current) {
1244
- clearTimeout(longPressTimer.current);
1245
- longPressTimer.current = null;
1246
- }
1247
- if (isDragging.current) {
1248
- isDragging.current = false;
1249
- }
1435
+ extendDragSelection(index);
1250
1436
  };
1251
1437
  const handleWordContextMenu = (index, e) => {
1252
1438
  e.preventDefault();
@@ -1285,6 +1471,10 @@ var MediaEditor = React6.forwardRef(
1285
1471
  } else if ((e.metaKey || e.ctrlKey) && e.key === "z" && !e.shiftKey) {
1286
1472
  undo();
1287
1473
  handled = true;
1474
+ } else if ((e.metaKey || e.ctrlKey) && (e.key === "z" && e.shiftKey || e.key === "y")) {
1475
+ if (canRedoWords) redo();
1476
+ else if (canRedo && onRedo) onRedo();
1477
+ handled = true;
1288
1478
  } else if (e.key === "ArrowLeft") {
1289
1479
  if (cursorPosition === "after") {
1290
1480
  setCursorPosition("before");
@@ -1398,10 +1588,7 @@ var MediaEditor = React6.forwardRef(
1398
1588
  setSelection(null);
1399
1589
  setSelectionAnchor(null);
1400
1590
  }
1401
- const wordElement = contentRef.current?.querySelector(
1402
- `[data-word-index="${newIndex}"]`
1403
- );
1404
- wordElement?.scrollIntoView({ block: "nearest", behavior: "smooth" });
1591
+ scrollWordIntoTranscript(contentRef.current, newIndex);
1405
1592
  }
1406
1593
  },
1407
1594
  [
@@ -1416,6 +1603,10 @@ var MediaEditor = React6.forwardRef(
1416
1603
  handleCut,
1417
1604
  handlePaste,
1418
1605
  undo,
1606
+ redo,
1607
+ canRedoWords,
1608
+ canRedo,
1609
+ onRedo,
1419
1610
  openWordEditor
1420
1611
  ]
1421
1612
  );
@@ -1463,7 +1654,8 @@ var MediaEditor = React6.forwardRef(
1463
1654
  isSilenceNewline,
1464
1655
  isAnchor,
1465
1656
  isFocused,
1466
- hasSpeedMarker
1657
+ hasSpeedMarker,
1658
+ isSped: effectiveSpeed !== defaultSpeed
1467
1659
  }),
1468
1660
  onClick: (e) => handleWordClick(ew.word, index, e),
1469
1661
  onDoubleClick: (e) => handleWordDoubleClick(index, e),
@@ -1510,7 +1702,7 @@ var MediaEditor = React6.forwardRef(
1510
1702
  /* @__PURE__ */ jsx(
1511
1703
  "div",
1512
1704
  {
1513
- className: `border-border bg-background min-h-0 shrink-0 ${splitLayout === "vertical" ? "md:w-1/2 md:border-r" : "max-h-[50%] border-b"}`,
1705
+ className: `border-border bg-background flex min-h-0 shrink-0 ${splitLayout === "vertical" ? "max-h-[55dvh] md:max-h-none md:w-1/2 md:border-r" : "max-h-[55dvh] border-b md:max-h-[50%]"}`,
1514
1706
  children: /* @__PURE__ */ jsx(
1515
1707
  MediaPlayer,
1516
1708
  {
@@ -1577,18 +1769,35 @@ var MediaEditor = React6.forwardRef(
1577
1769
  children: "\u2702\uFE0F"
1578
1770
  }
1579
1771
  ),
1580
- undoStack.length > 0 && /* @__PURE__ */ jsxs(
1772
+ showUndoRedo && /* @__PURE__ */ jsxs(
1581
1773
  Button,
1582
1774
  {
1583
1775
  variant: "ghost",
1584
1776
  size: "sm",
1585
- onClick: undo,
1586
- "aria-label": `Undo (${undoStack.length} available)`,
1587
- title: "Undo (\u2318Z)",
1777
+ disabled: !canUndoAnything,
1778
+ onClick: undoStack.length > 0 ? undo : onUndoBeyond,
1779
+ "aria-label": undoStack.length > 0 ? `Undo (${undoStack.length} available)` : canUndoBeyond && undoBeyondLabel ? `Undo: ${undoBeyondLabel}` : "Undo",
1780
+ title: undoStack.length > 0 ? `Undo (\u2318Z) \u2014 ${undoStack.length} step${undoStack.length === 1 ? "" : "s"}` : canUndoBeyond ? undoBeyondLabel ? `Undo (\u2318Z) \u2014 back to "${undoBeyondLabel}"` : "Undo (\u2318Z)" : "Nothing to undo",
1588
1781
  children: [
1589
- "Undo (",
1590
- undoStack.length,
1591
- ")"
1782
+ "Undo",
1783
+ undoStack.length > 0 ? ` (${undoStack.length})` : "",
1784
+ " ",
1785
+ /* @__PURE__ */ jsx("kbd", { className: "text-[10px] opacity-60", children: "\u2318Z" })
1786
+ ]
1787
+ }
1788
+ ),
1789
+ showUndoRedo && /* @__PURE__ */ jsxs(
1790
+ Button,
1791
+ {
1792
+ variant: "ghost",
1793
+ size: "sm",
1794
+ onClick: canRedoWords ? redo : onRedo,
1795
+ disabled: !canRedoAnything,
1796
+ "aria-label": !canRedoWords && canRedo && redoLabel ? `Redo: ${redoLabel}` : "Redo",
1797
+ title: canRedoWords ? "Redo (\u21E7\u2318Z)" : canRedo && redoLabel ? `Redo (\u21E7\u2318Z) \u2014 forward to "${redoLabel}"` : canRedo ? "Redo (\u21E7\u2318Z)" : "Nothing to redo",
1798
+ children: [
1799
+ "Redo ",
1800
+ /* @__PURE__ */ jsx("kbd", { className: "text-[10px] opacity-60", children: "\u21E7\u2318Z" })
1592
1801
  ]
1593
1802
  }
1594
1803
  )
@@ -1701,7 +1910,6 @@ var MediaEditor = React6.forwardRef(
1701
1910
  onFocus: () => setIsFocused(true),
1702
1911
  onBlur: () => setIsFocused(false),
1703
1912
  onMouseUp: handleMouseUp,
1704
- onMouseLeave: handleMouseUp,
1705
1913
  role: "listbox",
1706
1914
  "aria-label": "Transcript words",
1707
1915
  "aria-activedescendant": `word-${cursorIndex}`,
@@ -1765,7 +1973,10 @@ var MediaEditor = React6.forwardRef(
1765
1973
  currentMarker: speedMenuWordIndex !== null ? getSpeedMarkerAtIndex(speedMenuWordIndex) : void 0,
1766
1974
  defaultSpeed,
1767
1975
  onSetSpeed: (speed) => {
1768
- if (speedMenuWordIndex !== null) {
1976
+ if (speedMenuWordIndex === null) return;
1977
+ if (selection) {
1978
+ setSpeedForRange(selection.start, selection.end, speed);
1979
+ } else {
1769
1980
  toggleSpeedMarker(speedMenuWordIndex, speed);
1770
1981
  }
1771
1982
  },
@@ -1788,5 +1999,5 @@ var MediaEditor = React6.forwardRef(
1788
1999
  MediaEditor.displayName = "MediaEditor";
1789
2000
 
1790
2001
  export { FillerWordsModal, MediaEditor, SilenceSettingsModal, SpeedMarkerMenu, WordEditorModal };
1791
- //# sourceMappingURL=chunk-MCCO4A23.js.map
1792
- //# sourceMappingURL=chunk-MCCO4A23.js.map
2002
+ //# sourceMappingURL=chunk-NGLI2MSM.js.map
2003
+ //# sourceMappingURL=chunk-NGLI2MSM.js.map