@bylqwjc/media-editor-react 1.0.12

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 (434) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +51 -0
  3. package/dist/index.cjs +282 -0
  4. package/dist/index.cjs.map +1 -0
  5. package/dist/index.d.cts +54 -0
  6. package/dist/index.d.ts +54 -0
  7. package/dist/index.js +240 -0
  8. package/dist/index.js.map +1 -0
  9. package/filerobot.css +1669 -0
  10. package/node_modules/@media-editor/client/LICENSE +21 -0
  11. package/node_modules/@media-editor/client/README.md +27 -0
  12. package/node_modules/@media-editor/client/dist/index.cjs +60 -0
  13. package/node_modules/@media-editor/client/dist/index.cjs.map +1 -0
  14. package/node_modules/@media-editor/client/dist/index.d.cts +24 -0
  15. package/node_modules/@media-editor/client/dist/index.d.ts +24 -0
  16. package/node_modules/@media-editor/client/dist/index.js +35 -0
  17. package/node_modules/@media-editor/client/dist/index.js.map +1 -0
  18. package/node_modules/@media-editor/client/package.json +23 -0
  19. package/node_modules/@media-editor/core/LICENSE +21 -0
  20. package/node_modules/@media-editor/core/README.md +14 -0
  21. package/node_modules/@media-editor/core/dist/browser.cjs +505 -0
  22. package/node_modules/@media-editor/core/dist/browser.cjs.map +1 -0
  23. package/node_modules/@media-editor/core/dist/browser.d.cts +100 -0
  24. package/node_modules/@media-editor/core/dist/browser.d.ts +100 -0
  25. package/node_modules/@media-editor/core/dist/browser.js +883 -0
  26. package/node_modules/@media-editor/core/dist/browser.js.map +1 -0
  27. package/node_modules/@media-editor/core/dist/chunk-MGKYVYOH.js +371 -0
  28. package/node_modules/@media-editor/core/dist/chunk-MGKYVYOH.js.map +1 -0
  29. package/node_modules/@media-editor/core/dist/chunk-USY6UDGL.js +87 -0
  30. package/node_modules/@media-editor/core/dist/chunk-USY6UDGL.js.map +1 -0
  31. package/node_modules/@media-editor/core/dist/chunk-XCBM7P7N.js +592 -0
  32. package/node_modules/@media-editor/core/dist/chunk-XCBM7P7N.js.map +1 -0
  33. package/node_modules/@media-editor/core/dist/engine.cjs +540 -0
  34. package/node_modules/@media-editor/core/dist/engine.cjs.map +1 -0
  35. package/node_modules/@media-editor/core/dist/engine.d.cts +325 -0
  36. package/node_modules/@media-editor/core/dist/engine.d.ts +359 -0
  37. package/node_modules/@media-editor/core/dist/engine.js +315 -0
  38. package/node_modules/@media-editor/core/dist/engine.js.map +1 -0
  39. package/node_modules/@media-editor/core/dist/filerobot.cjs +818 -0
  40. package/node_modules/@media-editor/core/dist/filerobot.cjs.map +1 -0
  41. package/node_modules/@media-editor/core/dist/filerobot.d.cts +88 -0
  42. package/node_modules/@media-editor/core/dist/filerobot.d.ts +88 -0
  43. package/node_modules/@media-editor/core/dist/filerobot.js +473 -0
  44. package/node_modules/@media-editor/core/dist/filerobot.js.map +1 -0
  45. package/node_modules/@media-editor/core/dist/index.cjs +1276 -0
  46. package/node_modules/@media-editor/core/dist/index.cjs.map +1 -0
  47. package/node_modules/@media-editor/core/dist/index.d.cts +242 -0
  48. package/node_modules/@media-editor/core/dist/index.d.ts +264 -0
  49. package/node_modules/@media-editor/core/dist/index.js +682 -0
  50. package/node_modules/@media-editor/core/dist/index.js.map +1 -0
  51. package/node_modules/@media-editor/core/dist/platform-presets-B-o4C6uY.d.cts +80 -0
  52. package/node_modules/@media-editor/core/dist/platform-presets-B-o4C6uY.d.ts +80 -0
  53. package/node_modules/@media-editor/core/dist/state-B85vkf7_.d.cts +936 -0
  54. package/node_modules/@media-editor/core/dist/state-B85vkf7_.d.ts +1027 -0
  55. package/node_modules/@media-editor/core/node_modules/zod/LICENSE +21 -0
  56. package/node_modules/@media-editor/core/node_modules/zod/README.md +208 -0
  57. package/node_modules/@media-editor/core/node_modules/zod/index.cjs +33 -0
  58. package/node_modules/@media-editor/core/node_modules/zod/index.d.cts +4 -0
  59. package/node_modules/@media-editor/core/node_modules/zod/index.d.ts +4 -0
  60. package/node_modules/@media-editor/core/node_modules/zod/index.js +4 -0
  61. package/node_modules/@media-editor/core/node_modules/zod/package.json +118 -0
  62. package/node_modules/@media-editor/core/node_modules/zod/v3/ZodError.cjs +138 -0
  63. package/node_modules/@media-editor/core/node_modules/zod/v3/ZodError.d.cts +164 -0
  64. package/node_modules/@media-editor/core/node_modules/zod/v3/ZodError.d.ts +164 -0
  65. package/node_modules/@media-editor/core/node_modules/zod/v3/ZodError.js +133 -0
  66. package/node_modules/@media-editor/core/node_modules/zod/v3/errors.cjs +17 -0
  67. package/node_modules/@media-editor/core/node_modules/zod/v3/errors.d.cts +5 -0
  68. package/node_modules/@media-editor/core/node_modules/zod/v3/errors.d.ts +5 -0
  69. package/node_modules/@media-editor/core/node_modules/zod/v3/errors.js +9 -0
  70. package/node_modules/@media-editor/core/node_modules/zod/v3/external.cjs +22 -0
  71. package/node_modules/@media-editor/core/node_modules/zod/v3/external.d.cts +6 -0
  72. package/node_modules/@media-editor/core/node_modules/zod/v3/external.d.ts +6 -0
  73. package/node_modules/@media-editor/core/node_modules/zod/v3/external.js +6 -0
  74. package/node_modules/@media-editor/core/node_modules/zod/v3/helpers/enumUtil.cjs +2 -0
  75. package/node_modules/@media-editor/core/node_modules/zod/v3/helpers/enumUtil.d.cts +8 -0
  76. package/node_modules/@media-editor/core/node_modules/zod/v3/helpers/enumUtil.d.ts +8 -0
  77. package/node_modules/@media-editor/core/node_modules/zod/v3/helpers/enumUtil.js +1 -0
  78. package/node_modules/@media-editor/core/node_modules/zod/v3/helpers/errorUtil.cjs +9 -0
  79. package/node_modules/@media-editor/core/node_modules/zod/v3/helpers/errorUtil.d.cts +9 -0
  80. package/node_modules/@media-editor/core/node_modules/zod/v3/helpers/errorUtil.d.ts +9 -0
  81. package/node_modules/@media-editor/core/node_modules/zod/v3/helpers/errorUtil.js +6 -0
  82. package/node_modules/@media-editor/core/node_modules/zod/v3/helpers/parseUtil.cjs +124 -0
  83. package/node_modules/@media-editor/core/node_modules/zod/v3/helpers/parseUtil.d.cts +78 -0
  84. package/node_modules/@media-editor/core/node_modules/zod/v3/helpers/parseUtil.d.ts +78 -0
  85. package/node_modules/@media-editor/core/node_modules/zod/v3/helpers/parseUtil.js +109 -0
  86. package/node_modules/@media-editor/core/node_modules/zod/v3/helpers/partialUtil.cjs +2 -0
  87. package/node_modules/@media-editor/core/node_modules/zod/v3/helpers/partialUtil.d.cts +8 -0
  88. package/node_modules/@media-editor/core/node_modules/zod/v3/helpers/partialUtil.d.ts +8 -0
  89. package/node_modules/@media-editor/core/node_modules/zod/v3/helpers/partialUtil.js +1 -0
  90. package/node_modules/@media-editor/core/node_modules/zod/v3/helpers/typeAliases.cjs +2 -0
  91. package/node_modules/@media-editor/core/node_modules/zod/v3/helpers/typeAliases.d.cts +2 -0
  92. package/node_modules/@media-editor/core/node_modules/zod/v3/helpers/typeAliases.d.ts +2 -0
  93. package/node_modules/@media-editor/core/node_modules/zod/v3/helpers/typeAliases.js +1 -0
  94. package/node_modules/@media-editor/core/node_modules/zod/v3/helpers/util.cjs +137 -0
  95. package/node_modules/@media-editor/core/node_modules/zod/v3/helpers/util.d.cts +85 -0
  96. package/node_modules/@media-editor/core/node_modules/zod/v3/helpers/util.d.ts +85 -0
  97. package/node_modules/@media-editor/core/node_modules/zod/v3/helpers/util.js +133 -0
  98. package/node_modules/@media-editor/core/node_modules/zod/v3/index.cjs +33 -0
  99. package/node_modules/@media-editor/core/node_modules/zod/v3/index.d.cts +4 -0
  100. package/node_modules/@media-editor/core/node_modules/zod/v3/index.d.ts +4 -0
  101. package/node_modules/@media-editor/core/node_modules/zod/v3/index.js +4 -0
  102. package/node_modules/@media-editor/core/node_modules/zod/v3/locales/en.cjs +111 -0
  103. package/node_modules/@media-editor/core/node_modules/zod/v3/locales/en.d.cts +3 -0
  104. package/node_modules/@media-editor/core/node_modules/zod/v3/locales/en.d.ts +3 -0
  105. package/node_modules/@media-editor/core/node_modules/zod/v3/locales/en.js +109 -0
  106. package/node_modules/@media-editor/core/node_modules/zod/v3/standard-schema.cjs +2 -0
  107. package/node_modules/@media-editor/core/node_modules/zod/v3/standard-schema.d.cts +102 -0
  108. package/node_modules/@media-editor/core/node_modules/zod/v3/standard-schema.d.ts +102 -0
  109. package/node_modules/@media-editor/core/node_modules/zod/v3/standard-schema.js +1 -0
  110. package/node_modules/@media-editor/core/node_modules/zod/v3/types.cjs +3775 -0
  111. package/node_modules/@media-editor/core/node_modules/zod/v3/types.d.cts +1031 -0
  112. package/node_modules/@media-editor/core/node_modules/zod/v3/types.d.ts +1031 -0
  113. package/node_modules/@media-editor/core/node_modules/zod/v3/types.js +3693 -0
  114. package/node_modules/@media-editor/core/node_modules/zod/v4/classic/checks.cjs +32 -0
  115. package/node_modules/@media-editor/core/node_modules/zod/v4/classic/checks.d.cts +1 -0
  116. package/node_modules/@media-editor/core/node_modules/zod/v4/classic/checks.d.ts +1 -0
  117. package/node_modules/@media-editor/core/node_modules/zod/v4/classic/checks.js +1 -0
  118. package/node_modules/@media-editor/core/node_modules/zod/v4/classic/coerce.cjs +47 -0
  119. package/node_modules/@media-editor/core/node_modules/zod/v4/classic/coerce.d.cts +17 -0
  120. package/node_modules/@media-editor/core/node_modules/zod/v4/classic/coerce.d.ts +17 -0
  121. package/node_modules/@media-editor/core/node_modules/zod/v4/classic/coerce.js +17 -0
  122. package/node_modules/@media-editor/core/node_modules/zod/v4/classic/compat.cjs +57 -0
  123. package/node_modules/@media-editor/core/node_modules/zod/v4/classic/compat.d.cts +46 -0
  124. package/node_modules/@media-editor/core/node_modules/zod/v4/classic/compat.d.ts +46 -0
  125. package/node_modules/@media-editor/core/node_modules/zod/v4/classic/compat.js +27 -0
  126. package/node_modules/@media-editor/core/node_modules/zod/v4/classic/errors.cjs +67 -0
  127. package/node_modules/@media-editor/core/node_modules/zod/v4/classic/errors.d.cts +30 -0
  128. package/node_modules/@media-editor/core/node_modules/zod/v4/classic/errors.d.ts +30 -0
  129. package/node_modules/@media-editor/core/node_modules/zod/v4/classic/errors.js +41 -0
  130. package/node_modules/@media-editor/core/node_modules/zod/v4/classic/external.cjs +70 -0
  131. package/node_modules/@media-editor/core/node_modules/zod/v4/classic/external.d.cts +13 -0
  132. package/node_modules/@media-editor/core/node_modules/zod/v4/classic/external.d.ts +13 -0
  133. package/node_modules/@media-editor/core/node_modules/zod/v4/classic/external.js +18 -0
  134. package/node_modules/@media-editor/core/node_modules/zod/v4/classic/index.cjs +33 -0
  135. package/node_modules/@media-editor/core/node_modules/zod/v4/classic/index.d.cts +4 -0
  136. package/node_modules/@media-editor/core/node_modules/zod/v4/classic/index.d.ts +4 -0
  137. package/node_modules/@media-editor/core/node_modules/zod/v4/classic/index.js +4 -0
  138. package/node_modules/@media-editor/core/node_modules/zod/v4/classic/iso.cjs +60 -0
  139. package/node_modules/@media-editor/core/node_modules/zod/v4/classic/iso.d.cts +22 -0
  140. package/node_modules/@media-editor/core/node_modules/zod/v4/classic/iso.d.ts +22 -0
  141. package/node_modules/@media-editor/core/node_modules/zod/v4/classic/iso.js +30 -0
  142. package/node_modules/@media-editor/core/node_modules/zod/v4/classic/parse.cjs +32 -0
  143. package/node_modules/@media-editor/core/node_modules/zod/v4/classic/parse.d.cts +23 -0
  144. package/node_modules/@media-editor/core/node_modules/zod/v4/classic/parse.d.ts +23 -0
  145. package/node_modules/@media-editor/core/node_modules/zod/v4/classic/parse.js +6 -0
  146. package/node_modules/@media-editor/core/node_modules/zod/v4/classic/schemas.cjs +1109 -0
  147. package/node_modules/@media-editor/core/node_modules/zod/v4/classic/schemas.d.cts +630 -0
  148. package/node_modules/@media-editor/core/node_modules/zod/v4/classic/schemas.d.ts +630 -0
  149. package/node_modules/@media-editor/core/node_modules/zod/v4/classic/schemas.js +1006 -0
  150. package/node_modules/@media-editor/core/node_modules/zod/v4/core/api.cjs +1039 -0
  151. package/node_modules/@media-editor/core/node_modules/zod/v4/core/api.d.cts +284 -0
  152. package/node_modules/@media-editor/core/node_modules/zod/v4/core/api.d.ts +284 -0
  153. package/node_modules/@media-editor/core/node_modules/zod/v4/core/api.js +906 -0
  154. package/node_modules/@media-editor/core/node_modules/zod/v4/core/checks.cjs +591 -0
  155. package/node_modules/@media-editor/core/node_modules/zod/v4/core/checks.d.cts +278 -0
  156. package/node_modules/@media-editor/core/node_modules/zod/v4/core/checks.d.ts +278 -0
  157. package/node_modules/@media-editor/core/node_modules/zod/v4/core/checks.js +565 -0
  158. package/node_modules/@media-editor/core/node_modules/zod/v4/core/core.cjs +67 -0
  159. package/node_modules/@media-editor/core/node_modules/zod/v4/core/core.d.cts +49 -0
  160. package/node_modules/@media-editor/core/node_modules/zod/v4/core/core.d.ts +49 -0
  161. package/node_modules/@media-editor/core/node_modules/zod/v4/core/core.js +61 -0
  162. package/node_modules/@media-editor/core/node_modules/zod/v4/core/doc.cjs +39 -0
  163. package/node_modules/@media-editor/core/node_modules/zod/v4/core/doc.d.cts +14 -0
  164. package/node_modules/@media-editor/core/node_modules/zod/v4/core/doc.d.ts +14 -0
  165. package/node_modules/@media-editor/core/node_modules/zod/v4/core/doc.js +35 -0
  166. package/node_modules/@media-editor/core/node_modules/zod/v4/core/errors.cjs +226 -0
  167. package/node_modules/@media-editor/core/node_modules/zod/v4/core/errors.d.cts +208 -0
  168. package/node_modules/@media-editor/core/node_modules/zod/v4/core/errors.d.ts +208 -0
  169. package/node_modules/@media-editor/core/node_modules/zod/v4/core/errors.js +195 -0
  170. package/node_modules/@media-editor/core/node_modules/zod/v4/core/function.cjs +102 -0
  171. package/node_modules/@media-editor/core/node_modules/zod/v4/core/function.d.cts +52 -0
  172. package/node_modules/@media-editor/core/node_modules/zod/v4/core/function.d.ts +52 -0
  173. package/node_modules/@media-editor/core/node_modules/zod/v4/core/function.js +75 -0
  174. package/node_modules/@media-editor/core/node_modules/zod/v4/core/index.cjs +44 -0
  175. package/node_modules/@media-editor/core/node_modules/zod/v4/core/index.d.cts +15 -0
  176. package/node_modules/@media-editor/core/node_modules/zod/v4/core/index.d.ts +15 -0
  177. package/node_modules/@media-editor/core/node_modules/zod/v4/core/index.js +15 -0
  178. package/node_modules/@media-editor/core/node_modules/zod/v4/core/json-schema.cjs +2 -0
  179. package/node_modules/@media-editor/core/node_modules/zod/v4/core/json-schema.d.cts +87 -0
  180. package/node_modules/@media-editor/core/node_modules/zod/v4/core/json-schema.d.ts +87 -0
  181. package/node_modules/@media-editor/core/node_modules/zod/v4/core/json-schema.js +1 -0
  182. package/node_modules/@media-editor/core/node_modules/zod/v4/core/parse.cjs +87 -0
  183. package/node_modules/@media-editor/core/node_modules/zod/v4/core/parse.d.cts +25 -0
  184. package/node_modules/@media-editor/core/node_modules/zod/v4/core/parse.d.ts +25 -0
  185. package/node_modules/@media-editor/core/node_modules/zod/v4/core/parse.js +57 -0
  186. package/node_modules/@media-editor/core/node_modules/zod/v4/core/regexes.cjs +103 -0
  187. package/node_modules/@media-editor/core/node_modules/zod/v4/core/regexes.d.cts +62 -0
  188. package/node_modules/@media-editor/core/node_modules/zod/v4/core/regexes.d.ts +62 -0
  189. package/node_modules/@media-editor/core/node_modules/zod/v4/core/regexes.js +95 -0
  190. package/node_modules/@media-editor/core/node_modules/zod/v4/core/registries.cjs +56 -0
  191. package/node_modules/@media-editor/core/node_modules/zod/v4/core/registries.d.cts +35 -0
  192. package/node_modules/@media-editor/core/node_modules/zod/v4/core/registries.d.ts +35 -0
  193. package/node_modules/@media-editor/core/node_modules/zod/v4/core/registries.js +51 -0
  194. package/node_modules/@media-editor/core/node_modules/zod/v4/core/schemas.cjs +1748 -0
  195. package/node_modules/@media-editor/core/node_modules/zod/v4/core/schemas.d.cts +1041 -0
  196. package/node_modules/@media-editor/core/node_modules/zod/v4/core/schemas.d.ts +1041 -0
  197. package/node_modules/@media-editor/core/node_modules/zod/v4/core/schemas.js +1717 -0
  198. package/node_modules/@media-editor/core/node_modules/zod/v4/core/standard-schema.cjs +2 -0
  199. package/node_modules/@media-editor/core/node_modules/zod/v4/core/standard-schema.d.cts +55 -0
  200. package/node_modules/@media-editor/core/node_modules/zod/v4/core/standard-schema.d.ts +55 -0
  201. package/node_modules/@media-editor/core/node_modules/zod/v4/core/standard-schema.js +1 -0
  202. package/node_modules/@media-editor/core/node_modules/zod/v4/core/to-json-schema.cjs +854 -0
  203. package/node_modules/@media-editor/core/node_modules/zod/v4/core/to-json-schema.d.cts +88 -0
  204. package/node_modules/@media-editor/core/node_modules/zod/v4/core/to-json-schema.d.ts +88 -0
  205. package/node_modules/@media-editor/core/node_modules/zod/v4/core/to-json-schema.js +849 -0
  206. package/node_modules/@media-editor/core/node_modules/zod/v4/core/util.cjs +539 -0
  207. package/node_modules/@media-editor/core/node_modules/zod/v4/core/util.d.cts +183 -0
  208. package/node_modules/@media-editor/core/node_modules/zod/v4/core/util.d.ts +183 -0
  209. package/node_modules/@media-editor/core/node_modules/zod/v4/core/util.js +493 -0
  210. package/node_modules/@media-editor/core/node_modules/zod/v4/core/versions.cjs +8 -0
  211. package/node_modules/@media-editor/core/node_modules/zod/v4/core/versions.d.cts +5 -0
  212. package/node_modules/@media-editor/core/node_modules/zod/v4/core/versions.d.ts +5 -0
  213. package/node_modules/@media-editor/core/node_modules/zod/v4/core/versions.js +5 -0
  214. package/node_modules/@media-editor/core/node_modules/zod/v4/index.cjs +22 -0
  215. package/node_modules/@media-editor/core/node_modules/zod/v4/index.d.cts +3 -0
  216. package/node_modules/@media-editor/core/node_modules/zod/v4/index.d.ts +3 -0
  217. package/node_modules/@media-editor/core/node_modules/zod/v4/index.js +3 -0
  218. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ar.cjs +142 -0
  219. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ar.d.cts +4 -0
  220. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ar.d.ts +4 -0
  221. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ar.js +116 -0
  222. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/az.cjs +141 -0
  223. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/az.d.cts +4 -0
  224. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/az.d.ts +4 -0
  225. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/az.js +115 -0
  226. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/be.cjs +190 -0
  227. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/be.d.cts +4 -0
  228. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/be.d.ts +4 -0
  229. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/be.js +164 -0
  230. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ca.cjs +144 -0
  231. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ca.d.cts +4 -0
  232. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ca.d.ts +4 -0
  233. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ca.js +118 -0
  234. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/cs.cjs +161 -0
  235. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/cs.d.cts +4 -0
  236. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/cs.d.ts +4 -0
  237. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/cs.js +135 -0
  238. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/de.cjs +142 -0
  239. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/de.d.cts +4 -0
  240. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/de.d.ts +4 -0
  241. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/de.js +116 -0
  242. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/en.cjs +145 -0
  243. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/en.d.cts +5 -0
  244. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/en.d.ts +5 -0
  245. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/en.js +117 -0
  246. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/eo.cjs +144 -0
  247. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/eo.d.cts +5 -0
  248. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/eo.d.ts +5 -0
  249. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/eo.js +116 -0
  250. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/es.cjs +143 -0
  251. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/es.d.cts +4 -0
  252. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/es.d.ts +4 -0
  253. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/es.js +117 -0
  254. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/fa.cjs +148 -0
  255. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/fa.d.cts +4 -0
  256. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/fa.d.ts +4 -0
  257. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/fa.js +122 -0
  258. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/fi.cjs +148 -0
  259. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/fi.d.cts +4 -0
  260. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/fi.d.ts +4 -0
  261. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/fi.js +122 -0
  262. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/fr-CA.cjs +143 -0
  263. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/fr-CA.d.cts +4 -0
  264. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/fr-CA.d.ts +4 -0
  265. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/fr-CA.js +117 -0
  266. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/fr.cjs +142 -0
  267. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/fr.d.cts +4 -0
  268. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/fr.d.ts +4 -0
  269. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/fr.js +116 -0
  270. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/he.cjs +143 -0
  271. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/he.d.cts +4 -0
  272. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/he.d.ts +4 -0
  273. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/he.js +117 -0
  274. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/hu.cjs +143 -0
  275. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/hu.d.cts +4 -0
  276. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/hu.d.ts +4 -0
  277. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/hu.js +117 -0
  278. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/id.cjs +142 -0
  279. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/id.d.cts +4 -0
  280. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/id.d.ts +4 -0
  281. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/id.js +116 -0
  282. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/index.cjs +84 -0
  283. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/index.d.cts +39 -0
  284. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/index.d.ts +39 -0
  285. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/index.js +39 -0
  286. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/it.cjs +143 -0
  287. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/it.d.cts +4 -0
  288. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/it.d.ts +4 -0
  289. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/it.js +117 -0
  290. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ja.cjs +141 -0
  291. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ja.d.cts +4 -0
  292. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ja.d.ts +4 -0
  293. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ja.js +115 -0
  294. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/kh.cjs +143 -0
  295. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/kh.d.cts +4 -0
  296. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/kh.d.ts +4 -0
  297. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/kh.js +117 -0
  298. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ko.cjs +147 -0
  299. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ko.d.cts +4 -0
  300. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ko.d.ts +4 -0
  301. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ko.js +121 -0
  302. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/mk.cjs +144 -0
  303. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/mk.d.cts +4 -0
  304. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/mk.d.ts +4 -0
  305. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/mk.js +118 -0
  306. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ms.cjs +142 -0
  307. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ms.d.cts +4 -0
  308. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ms.d.ts +4 -0
  309. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ms.js +116 -0
  310. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/nl.cjs +143 -0
  311. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/nl.d.cts +4 -0
  312. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/nl.d.ts +4 -0
  313. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/nl.js +117 -0
  314. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/no.cjs +142 -0
  315. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/no.d.cts +4 -0
  316. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/no.d.ts +4 -0
  317. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/no.js +116 -0
  318. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ota.cjs +143 -0
  319. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ota.d.cts +4 -0
  320. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ota.d.ts +4 -0
  321. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ota.js +117 -0
  322. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/pl.cjs +143 -0
  323. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/pl.d.cts +4 -0
  324. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/pl.d.ts +4 -0
  325. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/pl.js +117 -0
  326. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ps.cjs +148 -0
  327. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ps.d.cts +4 -0
  328. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ps.d.ts +4 -0
  329. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ps.js +122 -0
  330. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/pt.cjs +142 -0
  331. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/pt.d.cts +4 -0
  332. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/pt.d.ts +4 -0
  333. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/pt.js +116 -0
  334. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ru.cjs +190 -0
  335. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ru.d.cts +4 -0
  336. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ru.d.ts +4 -0
  337. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ru.js +164 -0
  338. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/sl.cjs +143 -0
  339. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/sl.d.cts +4 -0
  340. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/sl.d.ts +4 -0
  341. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/sl.js +117 -0
  342. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/sv.cjs +144 -0
  343. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/sv.d.cts +4 -0
  344. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/sv.d.ts +4 -0
  345. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/sv.js +118 -0
  346. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ta.cjs +143 -0
  347. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ta.d.cts +4 -0
  348. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ta.d.ts +4 -0
  349. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ta.js +117 -0
  350. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/th.cjs +143 -0
  351. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/th.d.cts +4 -0
  352. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/th.d.ts +4 -0
  353. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/th.js +117 -0
  354. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/tr.cjs +143 -0
  355. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/tr.d.cts +5 -0
  356. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/tr.d.ts +5 -0
  357. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/tr.js +115 -0
  358. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ua.cjs +143 -0
  359. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ua.d.cts +4 -0
  360. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ua.d.ts +4 -0
  361. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ua.js +117 -0
  362. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ur.cjs +143 -0
  363. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ur.d.cts +4 -0
  364. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ur.d.ts +4 -0
  365. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ur.js +117 -0
  366. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/vi.cjs +142 -0
  367. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/vi.d.cts +4 -0
  368. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/vi.d.ts +4 -0
  369. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/vi.js +116 -0
  370. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/zh-CN.cjs +142 -0
  371. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/zh-CN.d.cts +4 -0
  372. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/zh-CN.d.ts +4 -0
  373. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/zh-CN.js +116 -0
  374. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/zh-TW.cjs +143 -0
  375. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/zh-TW.d.cts +4 -0
  376. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/zh-TW.d.ts +4 -0
  377. package/node_modules/@media-editor/core/node_modules/zod/v4/locales/zh-TW.js +117 -0
  378. package/node_modules/@media-editor/core/node_modules/zod/v4/mini/checks.cjs +34 -0
  379. package/node_modules/@media-editor/core/node_modules/zod/v4/mini/checks.d.cts +1 -0
  380. package/node_modules/@media-editor/core/node_modules/zod/v4/mini/checks.d.ts +1 -0
  381. package/node_modules/@media-editor/core/node_modules/zod/v4/mini/checks.js +1 -0
  382. package/node_modules/@media-editor/core/node_modules/zod/v4/mini/coerce.cjs +47 -0
  383. package/node_modules/@media-editor/core/node_modules/zod/v4/mini/coerce.d.cts +7 -0
  384. package/node_modules/@media-editor/core/node_modules/zod/v4/mini/coerce.d.ts +7 -0
  385. package/node_modules/@media-editor/core/node_modules/zod/v4/mini/coerce.js +17 -0
  386. package/node_modules/@media-editor/core/node_modules/zod/v4/mini/external.cjs +62 -0
  387. package/node_modules/@media-editor/core/node_modules/zod/v4/mini/external.d.cts +11 -0
  388. package/node_modules/@media-editor/core/node_modules/zod/v4/mini/external.d.ts +11 -0
  389. package/node_modules/@media-editor/core/node_modules/zod/v4/mini/external.js +13 -0
  390. package/node_modules/@media-editor/core/node_modules/zod/v4/mini/index.cjs +32 -0
  391. package/node_modules/@media-editor/core/node_modules/zod/v4/mini/index.d.cts +3 -0
  392. package/node_modules/@media-editor/core/node_modules/zod/v4/mini/index.d.ts +3 -0
  393. package/node_modules/@media-editor/core/node_modules/zod/v4/mini/index.js +3 -0
  394. package/node_modules/@media-editor/core/node_modules/zod/v4/mini/iso.cjs +60 -0
  395. package/node_modules/@media-editor/core/node_modules/zod/v4/mini/iso.d.cts +22 -0
  396. package/node_modules/@media-editor/core/node_modules/zod/v4/mini/iso.d.ts +22 -0
  397. package/node_modules/@media-editor/core/node_modules/zod/v4/mini/iso.js +30 -0
  398. package/node_modules/@media-editor/core/node_modules/zod/v4/mini/parse.cjs +8 -0
  399. package/node_modules/@media-editor/core/node_modules/zod/v4/mini/parse.d.cts +1 -0
  400. package/node_modules/@media-editor/core/node_modules/zod/v4/mini/parse.d.ts +1 -0
  401. package/node_modules/@media-editor/core/node_modules/zod/v4/mini/parse.js +1 -0
  402. package/node_modules/@media-editor/core/node_modules/zod/v4/mini/schemas.cjs +839 -0
  403. package/node_modules/@media-editor/core/node_modules/zod/v4/mini/schemas.d.cts +356 -0
  404. package/node_modules/@media-editor/core/node_modules/zod/v4/mini/schemas.d.ts +356 -0
  405. package/node_modules/@media-editor/core/node_modules/zod/v4/mini/schemas.js +732 -0
  406. package/node_modules/@media-editor/core/node_modules/zod/v4-mini/index.cjs +17 -0
  407. package/node_modules/@media-editor/core/node_modules/zod/v4-mini/index.d.cts +1 -0
  408. package/node_modules/@media-editor/core/node_modules/zod/v4-mini/index.d.ts +1 -0
  409. package/node_modules/@media-editor/core/node_modules/zod/v4-mini/index.js +1 -0
  410. package/node_modules/@media-editor/core/package.json +42 -0
  411. package/node_modules/@media-editor/image/LICENSE +21 -0
  412. package/node_modules/@media-editor/image/README.md +48 -0
  413. package/node_modules/@media-editor/image/dist/chunk-5TBO732O.js +1 -0
  414. package/node_modules/@media-editor/image/dist/index-CU3vkvDR.d.ts +44 -0
  415. package/node_modules/@media-editor/image/dist/index.css +1 -0
  416. package/node_modules/@media-editor/image/dist/index.d.ts +2 -0
  417. package/node_modules/@media-editor/image/dist/index.js +364 -0
  418. package/node_modules/@media-editor/image/dist/lazy.css +1 -0
  419. package/node_modules/@media-editor/image/dist/lazy.d.ts +8 -0
  420. package/node_modules/@media-editor/image/dist/lazy.js +1 -0
  421. package/node_modules/@media-editor/image/package.json +29 -0
  422. package/node_modules/@media-editor/video/LICENSE +21 -0
  423. package/node_modules/@media-editor/video/README.md +55 -0
  424. package/node_modules/@media-editor/video/dist/chunk-EK7ODJWE.js +1 -0
  425. package/node_modules/@media-editor/video/dist/index-CX2iAapm.d.ts +51 -0
  426. package/node_modules/@media-editor/video/dist/index.d.ts +4 -0
  427. package/node_modules/@media-editor/video/dist/index.js +16919 -0
  428. package/node_modules/@media-editor/video/dist/lazy.d.ts +10 -0
  429. package/node_modules/@media-editor/video/dist/lazy.js +1 -0
  430. package/node_modules/@media-editor/video/dist/legacy.js +65 -0
  431. package/node_modules/@media-editor/video/package.json +29 -0
  432. package/package.json +48 -0
  433. package/style.css +1 -0
  434. package/theme.css +1214 -0
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/engine.ts"],"names":[],"mappings":"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","file":"engine.js","sourcesContent":["/**\n * VideoEditorEngine —— 框架无关的视频编辑「无头控制器」(纯 TS,零框架/零 DOM)。\n *\n * 从 SocialEcho VideoEditor.tsx 抽出「状态编排」这一层(不抽预览/播放/RAF/DOM):\n * 编排 state(EditState)+ history(undo/redo)+ timeline 纯函数,对外暴露命令式 API 与订阅。\n * 框架壳(React useSyncExternalStore / Vue reactive)只 subscribe + 调命令;\n * 预览 <video>/canvas、播放头 RAF、指针几何都是运行时的事,留给框架层 —— 与图片侧\n * 「core/filerobot 纯配置 + image 做 DOM」同构。\n *\n * 历史语义:\n * - 提交式(默认):一步入 undo 栈(add/split/reorder/delete/preset/toggle…)。\n * - 瞬时式(transient:true):高频拖拽中间帧,只 replacePresent 不入栈;\n * 拖拽结束再调一次提交式定格为「一步」。瞬时序列内所有中间值都基于拖拽前的 base 计算,\n * 避免逐帧 clamp 漂移。\n */\nimport {\n defaultVideoEditState,\n VideoEditState,\n type VideoEditStateT,\n type ClipT,\n type AudioClipT,\n type OverlayT,\n} from './state';\nimport {\n createHistory,\n pushHistory,\n replacePresent,\n undo as histUndo,\n redo as histRedo,\n canUndo as histCanUndo,\n canRedo as histCanRedo,\n type History,\n} from './history';\nimport * as TL from './timeline';\n\n/** 视频源元数据(File/objectURL 是运行时的事,不进引擎;引擎只认 srcIdx + 元数据) */\nexport interface VideoSourceMeta {\n duration: number;\n width: number;\n height: number;\n}\n/** 音频源元数据 */\nexport interface AudioSourceMeta {\n duration: number;\n}\n\nexport interface MutOpts {\n /** true = 瞬时(拖拽中间帧,不入 undo 栈) */\n transient?: boolean;\n}\n\nexport type FilterKey = 'brightness' | 'contrast' | 'saturation' | 'gamma';\nexport type EngineListener = (state: VideoEditStateT) => void;\n\n/** 导出计划:压缩后的状态 + 上传槽位映射(slot i 对应原 srcIdx = order[i]) */\nexport interface ExportPlan {\n state: VideoEditStateT;\n videoSrcOrder: number[];\n audioSrcOrder: number[];\n}\n\n/** 偶数化并钳到 [2, 4096](h264 要求偶数) */\nfunction evenize(n: number): number {\n const v = Math.min(Math.max(Math.round(n), 2), 4096);\n return v % 2 === 0 ? v : v - 1;\n}\n\nconst clampRotation = (deg: number) => Math.min(Math.max(deg, -180), 180);\n\nexport class VideoEditorEngine {\n private history: History<VideoEditStateT>;\n private videoSources: VideoSourceMeta[] = [];\n private audioSources: AudioSourceMeta[] = [];\n private listeners = new Set<EngineListener>();\n /** 瞬时拖拽序列的起始 base(拖拽前的提交态);null = 不在拖拽中 */\n private transientBase: VideoEditStateT | null = null;\n\n constructor(initial: VideoEditStateT = defaultVideoEditState()) {\n this.history = createHistory(initial);\n }\n\n // ─── 读 / 订阅 ───────────────────────────────────────────────\n /** 当前编辑状态(引用稳定:仅在变更时换新对象,适配 useSyncExternalStore) */\n getState(): VideoEditStateT {\n return this.history.present;\n }\n /** useSyncExternalStore 用别名 */\n getSnapshot = (): VideoEditStateT => this.history.present;\n\n subscribe = (fn: EngineListener): (() => void) => {\n this.listeners.add(fn);\n return () => this.listeners.delete(fn);\n };\n\n private emit() {\n const s = this.history.present;\n for (const fn of this.listeners) fn(s);\n }\n\n // ─── 历史 ────────────────────────────────────────────────────\n canUndo(): boolean {\n return histCanUndo(this.history);\n }\n canRedo(): boolean {\n return histCanRedo(this.history);\n }\n undo() {\n this.transientBase = null;\n this.history = histUndo(this.history);\n this.emit();\n }\n redo() {\n this.transientBase = null;\n this.history = histRedo(this.history);\n this.emit();\n }\n\n /**\n * 全部变更的唯一入口。mut 接收「计算基准态」返回新态。\n * 瞬时:基准恒为 transientBase(拖拽前态),replacePresent;\n * 提交:基准为 transientBase ?? present;若刚结束一段瞬时,先把 present 还原回 base 再 push,\n * 使整段拖拽只占一步 undo。\n */\n private applyMut(mut: (s: VideoEditStateT) => VideoEditStateT, transient = false) {\n if (transient) {\n if (this.transientBase === null) this.transientBase = this.history.present;\n this.history = replacePresent(this.history, mut(this.transientBase));\n } else {\n const base = this.transientBase ?? this.history.present;\n const next = mut(base);\n const h = this.transientBase ? { ...this.history, present: this.transientBase } : this.history;\n this.history = pushHistory(h, next);\n this.transientBase = null;\n }\n this.emit();\n }\n\n // ─── 源登记(返回新 srcIdx)──────────────────────────────────\n /**\n * 登记一个视频源并入时间轴。首源:用其分辨率初始化 canvas 并重建 history(清空 undo);\n * 后续源:追加整段 clip(pushHistory)。\n */\n registerVideoSource(meta: VideoSourceMeta): number {\n const srcIdx = this.videoSources.length;\n this.videoSources.push(meta);\n const clip: ClipT = { srcIdx, in: 0, out: meta.duration };\n if (srcIdx === 0 || this.history.present.clips.length === 0) {\n this.transientBase = null;\n this.history = createHistory({\n ...defaultVideoEditState(),\n clips: [clip],\n canvas: { w: evenize(meta.width), h: evenize(meta.height) },\n poster: { time: Math.min(1, meta.duration / 2) },\n });\n this.emit();\n } else {\n this.applyMut((s) => ({ ...s, clips: [...s.clips, clip] }));\n }\n return srcIdx;\n }\n\n /** 登记一个音频源并入音轨(整段、volume=1、startAt=0,clamp 后 push) */\n registerAudioSource(meta: AudioSourceMeta): number {\n const srcIdx = this.audioSources.length;\n this.audioSources.push(meta);\n this.applyMut((s) => {\n const a = TL.clampAudioClip(\n { srcIdx, startAt: 0, in: 0, out: meta.duration, volume: 1 },\n meta.duration,\n TL.totalDuration(s.clips),\n );\n return { ...s, audioClips: [...s.audioClips, a] };\n });\n return srcIdx;\n }\n\n getVideoSource(idx: number): VideoSourceMeta | undefined {\n return this.videoSources[idx];\n }\n getAudioSource(idx: number): AudioSourceMeta | undefined {\n return this.audioSources[idx];\n }\n\n // ─── 视频片段 ─────────────────────────────────────────────────\n /** 把已登记源再追加一段整段 clip(同源可多次引用) */\n addClipFromSource(srcIdx: number) {\n const meta = this.videoSources[srcIdx];\n if (!meta) return;\n this.applyMut((s) => ({ ...s, clips: [...s.clips, { srcIdx, in: 0, out: meta.duration }] }));\n }\n splitAtPlayhead(outputTime: number) {\n this.applyMut((s) => ({ ...s, clips: TL.splitAtOutput(s.clips, outputTime) }));\n }\n removeClip(idx: number) {\n this.applyMut((s) => ({ ...s, clips: TL.removeClip(s.clips, idx) }));\n }\n duplicateClip(idx: number) {\n this.applyMut((s) => ({ ...s, clips: TL.duplicateClip(s.clips, idx) }));\n }\n reorderClips(from: number, to: number) {\n this.applyMut((s) => ({ ...s, clips: TL.reorderClips(s.clips, from, to) }));\n }\n /** 拖把手改 in/out 到源时刻 srcT;拖拽中传 {transient:true},松手再调一次提交 */\n trimClip(idx: number, edge: 'in' | 'out', srcT: number, opts?: MutOpts) {\n this.applyMut((s) => {\n const c = s.clips[idx];\n if (!c) return s;\n const srcDur = this.videoSources[c.srcIdx]?.duration ?? c.out;\n return { ...s, clips: TL.trimClipEdge(s.clips, idx, edge, srcT, srcDur) };\n }, opts?.transient);\n }\n\n // ─── 音频片段 ─────────────────────────────────────────────────\n moveAudioClip(idx: number, startAt: number, opts?: MutOpts) {\n this.applyMut((s) => this.patchAudio(s, idx, (a) => ({ ...a, startAt })), opts?.transient);\n }\n trimAudioClip(idx: number, edge: 'in' | 'out', t: number, opts?: MutOpts) {\n this.applyMut((s) => {\n return this.patchAudio(s, idx, (a) => {\n if (edge === 'in') {\n // 左把手:in 移动,startAt 跟随左缘\n const delta = t - a.in;\n return { ...a, in: t, startAt: a.startAt + delta };\n }\n return { ...a, out: t };\n });\n }, opts?.transient);\n }\n setAudioVolume(idx: number, volume: number, opts?: MutOpts) {\n this.applyMut((s) => this.patchAudio(s, idx, (a) => ({ ...a, volume }), false), opts?.transient);\n }\n removeAudioClip(idx: number) {\n this.applyMut((s) => ({ ...s, audioClips: s.audioClips.filter((_, i) => i !== idx) }));\n }\n /** 改一条音频片段并 clamp(volume 改动不需 clamp 几何,clampGeom=false 跳过) */\n private patchAudio(\n s: VideoEditStateT,\n idx: number,\n fn: (a: AudioClipT) => AudioClipT,\n clampGeom = true,\n ): VideoEditStateT {\n const a = s.audioClips[idx];\n if (!a) return s;\n let next = fn(a);\n if (clampGeom) {\n const srcDur = this.audioSources[a.srcIdx]?.duration ?? a.out;\n next = TL.clampAudioClip(next, srcDur, TL.totalDuration(s.clips));\n }\n return { ...s, audioClips: s.audioClips.map((x, i) => (i === idx ? next : x)) };\n }\n\n // ─── 几何:crop / scale / 旋转 / 翻转 ─────────────────────────\n setCrop(crop: NonNullable<VideoEditStateT['crop']>, opts?: MutOpts) {\n this.applyMut((s) => ({ ...s, crop }), opts?.transient);\n }\n clearCrop() {\n this.applyMut((s) => ({ ...s, crop: undefined }));\n }\n setScale(scale: NonNullable<VideoEditStateT['scale']>) {\n this.applyMut((s) => ({ ...s, scale }));\n }\n clearScale() {\n this.applyMut((s) => ({ ...s, scale: undefined }));\n }\n setRotation(deg: number, opts?: MutOpts) {\n this.applyMut((s) => ({ ...s, rotation: clampRotation(deg) }), opts?.transient);\n }\n /** 90° 步进(顺时针正);结果钳到 [-180,180] */\n rotateBy(step: number) {\n this.applyMut((s) => {\n let r = s.rotation + step;\n if (r > 180) r -= 360;\n if (r < -180) r += 360;\n return { ...s, rotation: clampRotation(r) };\n });\n }\n flipX() {\n this.applyMut((s) => ({ ...s, flipX: !s.flipX }));\n }\n flipY() {\n this.applyMut((s) => ({ ...s, flipY: !s.flipY }));\n }\n\n // ─── 滤镜 ────────────────────────────────────────────────────\n setFilter(key: FilterKey, value: number, opts?: MutOpts) {\n this.applyMut((s) => ({ ...s, filters: { ...s.filters, [key]: value } }), opts?.transient);\n }\n setFilters(partial: Partial<VideoEditStateT['filters']>, opts?: MutOpts) {\n this.applyMut((s) => ({ ...s, filters: { ...s.filters, ...partial } }), opts?.transient);\n }\n setFilterPreset(id: string | undefined) {\n this.applyMut((s) => ({ ...s, filterPreset: id }));\n }\n\n // ─── 标注 overlays ───────────────────────────────────────────\n addOverlay(o: OverlayT) {\n this.applyMut((s) => ({ ...s, overlays: [...(s.overlays ?? []), o] }));\n }\n updateOverlay(idx: number, patch: Partial<OverlayT>, opts?: MutOpts) {\n this.applyMut((s) => {\n const ovs = s.overlays ?? [];\n if (!ovs[idx]) return s;\n return { ...s, overlays: ovs.map((o, i) => (i === idx ? ({ ...o, ...patch } as OverlayT) : o)) };\n }, opts?.transient);\n }\n removeOverlay(idx: number) {\n this.applyMut((s) => ({ ...s, overlays: (s.overlays ?? []).filter((_, i) => i !== idx) }));\n }\n\n // ─── 杂项 ────────────────────────────────────────────────────\n /**\n * 通用补丁:把 partial 浅合并进状态(UI 一次改多字段,如旋转同时重置 crop)。\n * - `{transient:true}`:拖拽中间帧,基于拖拽前 base 合并、replacePresent,不入栈(= 原 patchLive)。\n * - 默认:一次性提交(= commit(partial))。\n */\n patch(partial: Partial<VideoEditStateT>, opts?: MutOpts) {\n if (opts?.transient) {\n if (this.transientBase === null) this.transientBase = this.history.present;\n this.history = replacePresent(this.history, { ...this.transientBase, ...partial });\n this.emit();\n } else {\n this.commit(partial);\n }\n }\n\n /**\n * 定格当前态为一步 undo(= 原 commit):保留 present(含拖拽末值),可再合并 partial;\n * 若处于瞬时序列,先把 past 接到拖拽前 base 上,使整段拖拽只占一步。\n */\n commit(partial?: Partial<VideoEditStateT>) {\n const next = partial ? { ...this.history.present, ...partial } : this.history.present;\n const base = this.transientBase;\n this.transientBase = null;\n this.history = base ? pushHistory({ ...this.history, present: base }, next) : pushHistory(this.history, next);\n this.emit();\n }\n setKeepAudio(keep: boolean) {\n this.applyMut((s) => ({ ...s, keepAudio: keep }));\n }\n setPoster(time: number) {\n this.applyMut((s) => ({ ...s, poster: { time: Math.max(0, time) } }));\n }\n\n // ─── 派生只读 ────────────────────────────────────────────────\n totalDuration(): number {\n return TL.totalDuration(this.history.present.clips);\n }\n contentDuration(): number {\n const s = this.history.present;\n return TL.contentDuration(s.clips, s.audioClips);\n }\n /** 输出时刻 → 所属片段与源内时刻(播放头定位) */\n locate(outputTime: number) {\n return TL.locateOutput(this.history.present.clips, outputTime);\n }\n usedVideoSources(): number[] {\n return TL.usedVideoSrcIndices(this.history.present.clips);\n }\n\n // ─── 导出 ────────────────────────────────────────────────────\n /**\n * 生成导出计划:剔除未引用源、把 clips/audioClips 的 srcIdx 重映射到 [0..n),\n * 返回压缩后的状态与上传槽位顺序(framework 按 order 取 File 上传)。\n */\n getExportPlan(): ExportPlan {\n const s = this.history.present;\n const videoSrcOrder = TL.usedVideoSrcIndices(s.clips);\n const audioSrcOrder = [...new Set(s.audioClips.map((a) => a.srcIdx))].sort((x, y) => x - y);\n const audioMap = new Map(audioSrcOrder.map((src, i) => [src, i]));\n return {\n state: {\n ...s,\n clips: TL.remapSrcIndices(s.clips, videoSrcOrder),\n audioClips: s.audioClips.map((a) => ({ ...a, srcIdx: audioMap.get(a.srcIdx) ?? 0 })),\n },\n videoSrcOrder,\n audioSrcOrder,\n };\n }\n\n /** 校验当前(导出)状态是否符合 schema —— 提交前兜底 */\n validate() {\n return VideoEditState.safeParse(this.getExportPlan().state);\n }\n\n /** 重置为给定状态(清空 history、源登记保留) */\n reset(state: VideoEditStateT = defaultVideoEditState()) {\n this.transientBase = null;\n this.history = createHistory(state);\n this.emit();\n }\n}\n"]}