@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,359 @@
1
+ import * as zod from 'zod';
2
+ import { V as VideoEditStateT, O as OverlayT } from './state-B85vkf7_.js';
3
+
4
+ type TransitionT = {
5
+ type: 'none' | 'fade' | 'slide' | 'wipe' | 'flip' | 'clockWipe' | 'star' | 'circle' | 'rectangle';
6
+ duration: number;
7
+ };
8
+ type VideoEditStateWithTransitions = VideoEditStateT & {
9
+ transitions?: TransitionT[];
10
+ };
11
+
12
+ /** 视频源元数据(File/objectURL 是运行时的事,不进引擎;引擎只认 srcIdx + 元数据) */
13
+ interface VideoSourceMeta {
14
+ duration: number;
15
+ width: number;
16
+ height: number;
17
+ }
18
+ /** 音频源元数据 */
19
+ interface AudioSourceMeta {
20
+ duration: number;
21
+ }
22
+ interface MutOpts {
23
+ /** true = 瞬时(拖拽中间帧,不入 undo 栈) */
24
+ transient?: boolean;
25
+ }
26
+ type FilterKey = 'brightness' | 'contrast' | 'saturation' | 'temperature' | 'tint' | 'vibrance' | 'gamma' | 'highlights' | 'shadows' | 'whites' | 'blacks' | 'lightSense' | 'sharpen' | 'clarity' | 'grain' | 'fade' | 'vignette';
27
+ type EngineListener = (state: VideoEditStateWithTransitions) => void;
28
+ /** 导出计划:压缩后的状态 + 上传槽位映射(slot i 对应原 srcIdx = order[i]) */
29
+ interface ExportPlan {
30
+ state: VideoEditStateWithTransitions;
31
+ videoSrcOrder: number[];
32
+ audioSrcOrder: number[];
33
+ }
34
+ declare class VideoEditorEngine {
35
+ private history;
36
+ private videoSources;
37
+ private audioSources;
38
+ private listeners;
39
+ /** 瞬时拖拽序列的起始 base(拖拽前的提交态);null = 不在拖拽中 */
40
+ private transientBase;
41
+ constructor(initial?: VideoEditStateWithTransitions);
42
+ /** 当前编辑状态(引用稳定:仅在变更时换新对象,适配 useSyncExternalStore) */
43
+ getState(): VideoEditStateWithTransitions;
44
+ /** useSyncExternalStore 用别名 */
45
+ getSnapshot: () => VideoEditStateWithTransitions;
46
+ subscribe: (fn: EngineListener) => (() => void);
47
+ private emit;
48
+ canUndo(): boolean;
49
+ canRedo(): boolean;
50
+ undo(): void;
51
+ redo(): void;
52
+ /**
53
+ * 全部变更的唯一入口。mut 接收「计算基准态」返回新态。
54
+ * 瞬时:基准恒为 transientBase(拖拽前态),replacePresent;
55
+ * 提交:基准为 transientBase ?? present;若刚结束一段瞬时,先把 present 还原回 base 再 push,
56
+ * 使整段拖拽只占一步 undo。
57
+ */
58
+ private applyMut;
59
+ /**
60
+ * 登记一个视频源并入时间轴。首源:用其分辨率初始化 canvas 并重建 history(清空 undo);
61
+ * 后续源:追加整段 clip(pushHistory)。
62
+ */
63
+ registerVideoSource(meta: VideoSourceMeta): number;
64
+ /** 登记一个音频源并入音轨(整段、volume=1、startAt=0,clamp 后 push) */
65
+ registerAudioSource(meta: AudioSourceMeta): number;
66
+ getVideoSource(idx: number): VideoSourceMeta | undefined;
67
+ getAudioSource(idx: number): AudioSourceMeta | undefined;
68
+ /** 把已登记源再追加一段整段 clip(同源可多次引用) */
69
+ addClipFromSource(srcIdx: number): void;
70
+ splitAtPlayhead(outputTime: number): void;
71
+ removeClip(idx: number): void;
72
+ duplicateClip(idx: number): void;
73
+ reorderClips(from: number, to: number): void;
74
+ /** 拖把手改 in/out 到源时刻 srcT;拖拽中传 {transient:true},松手再调一次提交 */
75
+ trimClip(idx: number, edge: 'in' | 'out', srcT: number, opts?: MutOpts): void;
76
+ moveAudioClip(idx: number, startAt: number, opts?: MutOpts): void;
77
+ trimAudioClip(idx: number, edge: 'in' | 'out', t: number, opts?: MutOpts): void;
78
+ setAudioVolume(idx: number, volume: number, opts?: MutOpts): void;
79
+ removeAudioClip(idx: number): void;
80
+ /** 改一条音频片段并 clamp(volume 改动不需 clamp 几何,clampGeom=false 跳过) */
81
+ private patchAudio;
82
+ setCrop(crop: NonNullable<VideoEditStateWithTransitions['crop']>, opts?: MutOpts): void;
83
+ clearCrop(): void;
84
+ setScale(scale: NonNullable<VideoEditStateWithTransitions['scale']>): void;
85
+ clearScale(): void;
86
+ setRotation(deg: number, opts?: MutOpts): void;
87
+ /** 90° 步进(顺时针正);结果钳到 [-180,180] */
88
+ rotateBy(step: number): void;
89
+ flipX(): void;
90
+ flipY(): void;
91
+ setFilter(key: FilterKey, value: number, opts?: MutOpts): void;
92
+ setFilters(partial: Partial<VideoEditStateWithTransitions['filters']>, opts?: MutOpts): void;
93
+ setFilterPreset(id: string | undefined): void;
94
+ addOverlay(o: OverlayT): void;
95
+ updateOverlay(idx: number, patch: Partial<OverlayT>, opts?: MutOpts): void;
96
+ removeOverlay(idx: number): void;
97
+ /**
98
+ * 通用补丁:把 partial 浅合并进状态(UI 一次改多字段,如旋转同时重置 crop)。
99
+ * - `{transient:true}`:拖拽中间帧,基于拖拽前 base 合并、replacePresent,不入栈(= 原 patchLive)。
100
+ * - 默认:一次性提交(= commit(partial))。
101
+ */
102
+ patch(partial: Partial<VideoEditStateWithTransitions>, opts?: MutOpts): void;
103
+ /**
104
+ * 定格当前态为一步 undo(= 原 commit):保留 present(含拖拽末值),可再合并 partial;
105
+ * 若处于瞬时序列,先把 past 接到拖拽前 base 上,使整段拖拽只占一步。
106
+ */
107
+ commit(partial?: Partial<VideoEditStateWithTransitions>): void;
108
+ setKeepAudio(keep: boolean): void;
109
+ setPoster(time: number): void;
110
+ totalDuration(): number;
111
+ contentDuration(): number;
112
+ /** 输出时刻 → 所属片段与源内时刻(播放头定位) */
113
+ locate(outputTime: number): {
114
+ idx: number;
115
+ srcTime: number;
116
+ } | null;
117
+ usedVideoSources(): number[];
118
+ /**
119
+ * 生成导出计划:剔除未引用源、把 clips/audioClips 的 srcIdx 重映射到 [0..n),
120
+ * 返回压缩后的状态与上传槽位顺序(framework 按 order 取 File 上传)。
121
+ */
122
+ getExportPlan(): ExportPlan;
123
+ /** 校验当前(导出)状态是否符合 schema —— 提交前兜底 */
124
+ validate(): zod.SafeParseReturnType<{
125
+ clips: {
126
+ srcIdx: number;
127
+ in: number;
128
+ out: number;
129
+ }[];
130
+ canvas: {
131
+ w: number;
132
+ h: number;
133
+ };
134
+ rotation?: number | undefined;
135
+ audioClips?: {
136
+ srcIdx: number;
137
+ in: number;
138
+ out: number;
139
+ startAt: number;
140
+ volume: number;
141
+ }[] | undefined;
142
+ crop?: {
143
+ width: number;
144
+ x: number;
145
+ y: number;
146
+ height: number;
147
+ } | undefined;
148
+ scale?: {
149
+ width: number;
150
+ height: number;
151
+ fit: "contain" | "cover" | "force";
152
+ } | undefined;
153
+ flipX?: boolean | undefined;
154
+ flipY?: boolean | undefined;
155
+ filters?: {
156
+ brightness: number;
157
+ contrast: number;
158
+ saturation: number;
159
+ temperature?: number | undefined;
160
+ tint?: number | undefined;
161
+ vibrance?: number | undefined;
162
+ gamma?: number | undefined;
163
+ highlights?: number | undefined;
164
+ shadows?: number | undefined;
165
+ whites?: number | undefined;
166
+ blacks?: number | undefined;
167
+ lightSense?: number | undefined;
168
+ sharpen?: number | undefined;
169
+ clarity?: number | undefined;
170
+ grain?: number | undefined;
171
+ fade?: number | undefined;
172
+ vignette?: number | undefined;
173
+ } | undefined;
174
+ filterPreset?: string | undefined;
175
+ overlays?: ({
176
+ type: "pen";
177
+ points: number[];
178
+ color: string;
179
+ width: number;
180
+ rotation?: number | undefined;
181
+ } | {
182
+ type: "line";
183
+ color: string;
184
+ width: number;
185
+ x1: number;
186
+ y1: number;
187
+ x2: number;
188
+ y2: number;
189
+ rotation?: number | undefined;
190
+ } | {
191
+ type: "arrow";
192
+ color: string;
193
+ width: number;
194
+ x1: number;
195
+ y1: number;
196
+ x2: number;
197
+ y2: number;
198
+ rotation?: number | undefined;
199
+ } | {
200
+ type: "rect";
201
+ color: string;
202
+ width: number;
203
+ x: number;
204
+ y: number;
205
+ w: number;
206
+ h: number;
207
+ rotation?: number | undefined;
208
+ } | {
209
+ type: "ellipse";
210
+ color: string;
211
+ width: number;
212
+ x: number;
213
+ y: number;
214
+ w: number;
215
+ h: number;
216
+ rotation?: number | undefined;
217
+ } | {
218
+ type: "text";
219
+ color: string;
220
+ x: number;
221
+ y: number;
222
+ text: string;
223
+ fontSize: number;
224
+ rotation?: number | undefined;
225
+ } | {
226
+ type: "sticker";
227
+ x: number;
228
+ y: number;
229
+ w: number;
230
+ h: number;
231
+ rotation?: number | undefined;
232
+ emoji?: string | undefined;
233
+ src?: string | undefined;
234
+ })[] | undefined;
235
+ keepAudio?: boolean | undefined;
236
+ poster?: {
237
+ time: number;
238
+ } | undefined;
239
+ }, {
240
+ rotation: number;
241
+ clips: {
242
+ srcIdx: number;
243
+ in: number;
244
+ out: number;
245
+ }[];
246
+ audioClips: {
247
+ srcIdx: number;
248
+ in: number;
249
+ out: number;
250
+ startAt: number;
251
+ volume: number;
252
+ }[];
253
+ canvas: {
254
+ w: number;
255
+ h: number;
256
+ };
257
+ flipX: boolean;
258
+ flipY: boolean;
259
+ filters: {
260
+ brightness: number;
261
+ contrast: number;
262
+ saturation: number;
263
+ temperature: number;
264
+ tint: number;
265
+ vibrance: number;
266
+ gamma: number;
267
+ highlights: number;
268
+ shadows: number;
269
+ whites: number;
270
+ blacks: number;
271
+ lightSense: number;
272
+ sharpen: number;
273
+ clarity: number;
274
+ grain: number;
275
+ fade: number;
276
+ vignette: number;
277
+ };
278
+ keepAudio: boolean;
279
+ crop?: {
280
+ width: number;
281
+ x: number;
282
+ y: number;
283
+ height: number;
284
+ } | undefined;
285
+ scale?: {
286
+ width: number;
287
+ height: number;
288
+ fit: "contain" | "cover" | "force";
289
+ } | undefined;
290
+ filterPreset?: string | undefined;
291
+ overlays?: ({
292
+ type: "pen";
293
+ points: number[];
294
+ color: string;
295
+ width: number;
296
+ rotation?: number | undefined;
297
+ } | {
298
+ type: "line";
299
+ color: string;
300
+ width: number;
301
+ x1: number;
302
+ y1: number;
303
+ x2: number;
304
+ y2: number;
305
+ rotation?: number | undefined;
306
+ } | {
307
+ type: "arrow";
308
+ color: string;
309
+ width: number;
310
+ x1: number;
311
+ y1: number;
312
+ x2: number;
313
+ y2: number;
314
+ rotation?: number | undefined;
315
+ } | {
316
+ type: "rect";
317
+ color: string;
318
+ width: number;
319
+ x: number;
320
+ y: number;
321
+ w: number;
322
+ h: number;
323
+ rotation?: number | undefined;
324
+ } | {
325
+ type: "ellipse";
326
+ color: string;
327
+ width: number;
328
+ x: number;
329
+ y: number;
330
+ w: number;
331
+ h: number;
332
+ rotation?: number | undefined;
333
+ } | {
334
+ type: "text";
335
+ color: string;
336
+ x: number;
337
+ y: number;
338
+ text: string;
339
+ fontSize: number;
340
+ rotation?: number | undefined;
341
+ } | {
342
+ type: "sticker";
343
+ x: number;
344
+ y: number;
345
+ w: number;
346
+ h: number;
347
+ rotation?: number | undefined;
348
+ emoji?: string | undefined;
349
+ src?: string | undefined;
350
+ })[] | undefined;
351
+ poster?: {
352
+ time: number;
353
+ } | undefined;
354
+ }>;
355
+ /** 重置为给定状态(清空 history、源登记保留) */
356
+ reset(state?: VideoEditStateWithTransitions): void;
357
+ }
358
+
359
+ export { type AudioSourceMeta, type EngineListener, type ExportPlan, type FilterKey, type MutOpts, TransitionT, VideoEditStateWithTransitions, VideoEditorEngine, type VideoSourceMeta };
@@ -0,0 +1,315 @@
1
+ import { createHistory, defaultVideoEditState, canUndo, canRedo, undo, redo, replacePresent, pushHistory, clampAudioClip, totalDuration, splitAtOutput, removeClip, duplicateClip, reorderClips, trimClipEdge, contentDuration, locateOutput, usedVideoSrcIndices, remapSrcIndices, VideoEditState } from './chunk-MGKYVYOH.js';
2
+
3
+ // src/engine.ts
4
+ function evenize(n) {
5
+ const v = Math.min(Math.max(Math.round(n), 2), 4096);
6
+ return v % 2 === 0 ? v : v - 1;
7
+ }
8
+ var clampRotation = (deg) => Math.min(Math.max(deg, -180), 180);
9
+ var VideoEditorEngine = class {
10
+ constructor(initial = defaultVideoEditState()) {
11
+ this.videoSources = [];
12
+ this.audioSources = [];
13
+ this.listeners = /* @__PURE__ */ new Set();
14
+ /** 瞬时拖拽序列的起始 base(拖拽前的提交态);null = 不在拖拽中 */
15
+ this.transientBase = null;
16
+ /** useSyncExternalStore 用别名 */
17
+ this.getSnapshot = () => this.history.present;
18
+ this.subscribe = (fn) => {
19
+ this.listeners.add(fn);
20
+ return () => this.listeners.delete(fn);
21
+ };
22
+ this.history = createHistory(initial);
23
+ }
24
+ // ─── 读 / 订阅 ───────────────────────────────────────────────
25
+ /** 当前编辑状态(引用稳定:仅在变更时换新对象,适配 useSyncExternalStore) */
26
+ getState() {
27
+ return this.history.present;
28
+ }
29
+ emit() {
30
+ const s = this.history.present;
31
+ for (const fn of this.listeners) fn(s);
32
+ }
33
+ // ─── 历史 ────────────────────────────────────────────────────
34
+ canUndo() {
35
+ return canUndo(this.history);
36
+ }
37
+ canRedo() {
38
+ return canRedo(this.history);
39
+ }
40
+ undo() {
41
+ this.transientBase = null;
42
+ this.history = undo(this.history);
43
+ this.emit();
44
+ }
45
+ redo() {
46
+ this.transientBase = null;
47
+ this.history = redo(this.history);
48
+ this.emit();
49
+ }
50
+ /**
51
+ * 全部变更的唯一入口。mut 接收「计算基准态」返回新态。
52
+ * 瞬时:基准恒为 transientBase(拖拽前态),replacePresent;
53
+ * 提交:基准为 transientBase ?? present;若刚结束一段瞬时,先把 present 还原回 base 再 push,
54
+ * 使整段拖拽只占一步 undo。
55
+ */
56
+ applyMut(mut, transient = false) {
57
+ if (transient) {
58
+ if (this.transientBase === null) this.transientBase = this.history.present;
59
+ this.history = replacePresent(this.history, mut(this.transientBase));
60
+ } else {
61
+ const base = this.transientBase ?? this.history.present;
62
+ const next = mut(base);
63
+ const h = this.transientBase ? { ...this.history, present: this.transientBase } : this.history;
64
+ this.history = pushHistory(h, next);
65
+ this.transientBase = null;
66
+ }
67
+ this.emit();
68
+ }
69
+ // ─── 源登记(返回新 srcIdx)──────────────────────────────────
70
+ /**
71
+ * 登记一个视频源并入时间轴。首源:用其分辨率初始化 canvas 并重建 history(清空 undo);
72
+ * 后续源:追加整段 clip(pushHistory)。
73
+ */
74
+ registerVideoSource(meta) {
75
+ const srcIdx = this.videoSources.length;
76
+ this.videoSources.push(meta);
77
+ const clip = { srcIdx, in: 0, out: meta.duration };
78
+ if (srcIdx === 0 || this.history.present.clips.length === 0) {
79
+ this.transientBase = null;
80
+ this.history = createHistory({
81
+ ...defaultVideoEditState(),
82
+ clips: [clip],
83
+ canvas: { w: evenize(meta.width), h: evenize(meta.height) },
84
+ poster: { time: Math.min(1, meta.duration / 2) }
85
+ });
86
+ this.emit();
87
+ } else {
88
+ this.applyMut((s) => ({ ...s, clips: [...s.clips, clip] }));
89
+ }
90
+ return srcIdx;
91
+ }
92
+ /** 登记一个音频源并入音轨(整段、volume=1、startAt=0,clamp 后 push) */
93
+ registerAudioSource(meta) {
94
+ const srcIdx = this.audioSources.length;
95
+ this.audioSources.push(meta);
96
+ this.applyMut((s) => {
97
+ const usedTracks = new Set(
98
+ (s.audioClips ?? []).map((clip, index) =>
99
+ Number.isInteger(clip?.track) && clip.track >= 0 ? clip.track : index
100
+ )
101
+ );
102
+ let nextTrack = 0;
103
+ while (usedTracks.has(nextTrack)) nextTrack += 1;
104
+ const a = clampAudioClip(
105
+ { srcIdx, track: nextTrack, startAt: 0, in: 0, out: meta.duration, volume: 1 },
106
+ meta.duration,
107
+ totalDuration(s.clips)
108
+ );
109
+ return { ...s, audioClips: [...s.audioClips, a] };
110
+ });
111
+ return srcIdx;
112
+ }
113
+ getVideoSource(idx) {
114
+ return this.videoSources[idx];
115
+ }
116
+ getAudioSource(idx) {
117
+ return this.audioSources[idx];
118
+ }
119
+ // ─── 视频片段 ─────────────────────────────────────────────────
120
+ /** 把已登记源再追加一段整段 clip(同源可多次引用) */
121
+ addClipFromSource(srcIdx) {
122
+ const meta = this.videoSources[srcIdx];
123
+ if (!meta) return;
124
+ this.applyMut((s) => ({ ...s, clips: [...s.clips, { srcIdx, in: 0, out: meta.duration }] }));
125
+ }
126
+ splitAtPlayhead(outputTime) {
127
+ this.applyMut((s) => ({ ...s, clips: splitAtOutput(s.clips, outputTime) }));
128
+ }
129
+ removeClip(idx) {
130
+ this.applyMut((s) => ({ ...s, clips: removeClip(s.clips, idx) }));
131
+ }
132
+ duplicateClip(idx) {
133
+ this.applyMut((s) => ({ ...s, clips: duplicateClip(s.clips, idx) }));
134
+ }
135
+ reorderClips(from, to) {
136
+ this.applyMut((s) => ({ ...s, clips: reorderClips(s.clips, from, to) }));
137
+ }
138
+ /** 拖把手改 in/out 到源时刻 srcT;拖拽中传 {transient:true},松手再调一次提交 */
139
+ trimClip(idx, edge, srcT, opts) {
140
+ this.applyMut((s) => {
141
+ const c = s.clips[idx];
142
+ if (!c) return s;
143
+ const srcDur = this.videoSources[c.srcIdx]?.duration ?? c.out;
144
+ return { ...s, clips: trimClipEdge(s.clips, idx, edge, srcT, srcDur) };
145
+ }, opts?.transient);
146
+ }
147
+ // ─── 音频片段 ─────────────────────────────────────────────────
148
+ moveAudioClip(idx, startAt, opts) {
149
+ this.applyMut((s) => this.patchAudio(s, idx, (a) => ({ ...a, startAt })), opts?.transient);
150
+ }
151
+ trimAudioClip(idx, edge, t, opts) {
152
+ this.applyMut((s) => {
153
+ return this.patchAudio(s, idx, (a) => {
154
+ if (edge === "in") {
155
+ const delta = t - a.in;
156
+ return { ...a, in: t, startAt: a.startAt + delta };
157
+ }
158
+ return { ...a, out: t };
159
+ });
160
+ }, opts?.transient);
161
+ }
162
+ setAudioVolume(idx, volume, opts) {
163
+ this.applyMut((s) => this.patchAudio(s, idx, (a) => ({ ...a, volume }), false), opts?.transient);
164
+ }
165
+ removeAudioClip(idx) {
166
+ this.applyMut((s) => ({ ...s, audioClips: s.audioClips.filter((_, i) => i !== idx) }));
167
+ }
168
+ /** 改一条音频片段并 clamp(volume 改动不需 clamp 几何,clampGeom=false 跳过) */
169
+ patchAudio(s, idx, fn, clampGeom = true) {
170
+ const a = s.audioClips[idx];
171
+ if (!a) return s;
172
+ let next = fn(a);
173
+ if (clampGeom) {
174
+ const srcDur = this.audioSources[a.srcIdx]?.duration ?? a.out;
175
+ next = clampAudioClip(next, srcDur, totalDuration(s.clips));
176
+ }
177
+ return { ...s, audioClips: s.audioClips.map((x, i) => i === idx ? next : x) };
178
+ }
179
+ // ─── 几何:crop / scale / 旋转 / 翻转 ─────────────────────────
180
+ setCrop(crop, opts) {
181
+ this.applyMut((s) => ({ ...s, crop }), opts?.transient);
182
+ }
183
+ clearCrop() {
184
+ this.applyMut((s) => ({ ...s, crop: void 0 }));
185
+ }
186
+ setScale(scale) {
187
+ this.applyMut((s) => ({ ...s, scale }));
188
+ }
189
+ clearScale() {
190
+ this.applyMut((s) => ({ ...s, scale: void 0 }));
191
+ }
192
+ setRotation(deg, opts) {
193
+ this.applyMut((s) => ({ ...s, rotation: clampRotation(deg) }), opts?.transient);
194
+ }
195
+ /** 90° 步进(顺时针正);结果钳到 [-180,180] */
196
+ rotateBy(step) {
197
+ this.applyMut((s) => {
198
+ let r = s.rotation + step;
199
+ if (r > 180) r -= 360;
200
+ if (r < -180) r += 360;
201
+ return { ...s, rotation: clampRotation(r) };
202
+ });
203
+ }
204
+ flipX() {
205
+ this.applyMut((s) => ({ ...s, flipX: !s.flipX }));
206
+ }
207
+ flipY() {
208
+ this.applyMut((s) => ({ ...s, flipY: !s.flipY }));
209
+ }
210
+ // ─── 滤镜 ────────────────────────────────────────────────────
211
+ setFilter(key, value, opts) {
212
+ this.applyMut((s) => ({ ...s, filters: { ...s.filters, [key]: value } }), opts?.transient);
213
+ }
214
+ setFilters(partial, opts) {
215
+ this.applyMut((s) => ({ ...s, filters: { ...s.filters, ...partial } }), opts?.transient);
216
+ }
217
+ setFilterPreset(id) {
218
+ this.applyMut((s) => ({ ...s, filterPreset: id }));
219
+ }
220
+ // ─── 标注 overlays ───────────────────────────────────────────
221
+ addOverlay(o) {
222
+ this.applyMut((s) => ({ ...s, overlays: [...s.overlays ?? [], o] }));
223
+ }
224
+ updateOverlay(idx, patch, opts) {
225
+ this.applyMut((s) => {
226
+ const ovs = s.overlays ?? [];
227
+ if (!ovs[idx]) return s;
228
+ return { ...s, overlays: ovs.map((o, i) => i === idx ? { ...o, ...patch } : o) };
229
+ }, opts?.transient);
230
+ }
231
+ removeOverlay(idx) {
232
+ this.applyMut((s) => ({ ...s, overlays: (s.overlays ?? []).filter((_, i) => i !== idx) }));
233
+ }
234
+ // ─── 杂项 ────────────────────────────────────────────────────
235
+ /**
236
+ * 通用补丁:把 partial 浅合并进状态(UI 一次改多字段,如旋转同时重置 crop)。
237
+ * - `{transient:true}`:拖拽中间帧,基于拖拽前 base 合并、replacePresent,不入栈(= 原 patchLive)。
238
+ * - 默认:一次性提交(= commit(partial))。
239
+ */
240
+ patch(partial, opts) {
241
+ if (opts?.transient) {
242
+ if (this.transientBase === null) this.transientBase = this.history.present;
243
+ this.history = replacePresent(this.history, { ...this.transientBase, ...partial });
244
+ this.emit();
245
+ } else {
246
+ this.commit(partial);
247
+ }
248
+ }
249
+ /**
250
+ * 定格当前态为一步 undo(= 原 commit):保留 present(含拖拽末值),可再合并 partial;
251
+ * 若处于瞬时序列,先把 past 接到拖拽前 base 上,使整段拖拽只占一步。
252
+ */
253
+ commit(partial) {
254
+ const next = partial ? { ...this.history.present, ...partial } : this.history.present;
255
+ const base = this.transientBase;
256
+ this.transientBase = null;
257
+ this.history = base ? pushHistory({ ...this.history, present: base }, next) : pushHistory(this.history, next);
258
+ this.emit();
259
+ }
260
+ setKeepAudio(keep) {
261
+ this.applyMut((s) => ({ ...s, keepAudio: keep }));
262
+ }
263
+ setPoster(time) {
264
+ this.applyMut((s) => ({ ...s, poster: { time: Math.max(0, time) } }));
265
+ }
266
+ // ─── 派生只读 ────────────────────────────────────────────────
267
+ totalDuration() {
268
+ return totalDuration(this.history.present.clips);
269
+ }
270
+ contentDuration() {
271
+ const s = this.history.present;
272
+ return contentDuration(s.clips, s.audioClips, s.overlays);
273
+ }
274
+ /** 输出时刻 → 所属片段与源内时刻(播放头定位) */
275
+ locate(outputTime) {
276
+ return locateOutput(this.history.present.clips, outputTime);
277
+ }
278
+ usedVideoSources() {
279
+ return usedVideoSrcIndices(this.history.present.clips);
280
+ }
281
+ // ─── 导出 ────────────────────────────────────────────────────
282
+ /**
283
+ * 生成导出计划:剔除未引用源、把 clips/audioClips 的 srcIdx 重映射到 [0..n),
284
+ * 返回压缩后的状态与上传槽位顺序(framework 按 order 取 File 上传)。
285
+ */
286
+ getExportPlan() {
287
+ const s = this.history.present;
288
+ const videoSrcOrder = usedVideoSrcIndices(s.clips);
289
+ const audioSrcOrder = [...new Set(s.audioClips.map((a) => a.srcIdx))].sort((x, y) => x - y);
290
+ const audioMap = new Map(audioSrcOrder.map((src, i) => [src, i]));
291
+ return {
292
+ state: {
293
+ ...s,
294
+ clips: remapSrcIndices(s.clips, videoSrcOrder),
295
+ audioClips: s.audioClips.map((a) => ({ ...a, srcIdx: audioMap.get(a.srcIdx) ?? 0 }))
296
+ },
297
+ videoSrcOrder,
298
+ audioSrcOrder
299
+ };
300
+ }
301
+ /** 校验当前(导出)状态是否符合 schema —— 提交前兜底 */
302
+ validate() {
303
+ return VideoEditState.safeParse(this.getExportPlan().state);
304
+ }
305
+ /** 重置为给定状态(清空 history、源登记保留) */
306
+ reset(state = defaultVideoEditState()) {
307
+ this.transientBase = null;
308
+ this.history = createHistory(state);
309
+ this.emit();
310
+ }
311
+ };
312
+
313
+ export { VideoEditorEngine };
314
+ //# sourceMappingURL=engine.js.map
315
+ //# sourceMappingURL=engine.js.map