@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,473 @@
1
+ import { toHant, IMAGE_PLATFORM_PRESETS, compensateAnnotationRotation } from './chunk-XCBM7P7N.js';
2
+
3
+ // src/filerobot.ts
4
+ var IMAGE_EDITOR_DARK_PALETTE = {
5
+ // 文本
6
+ "txt-primary": "#f1f1f4",
7
+ "txt-secondary": "#b6bac4",
8
+ "txt-secondary-invert": "#14141a",
9
+ "txt-placeholder": "#7c818c",
10
+ "txt-warning": "#fbbf24",
11
+ "txt-error": "#f87171",
12
+ "txt-info": "#7cc4f5",
13
+ // 图标(primary 是单数 icon-primary)
14
+ "icon-primary": "#d6d8e0",
15
+ "icons-secondary": "#9aa0ac",
16
+ "icons-muted": "#7c818c",
17
+ "icons-placeholder": "#3a3a44",
18
+ "icons-invert": "#14141a",
19
+ "icons-primary-hover": "#ffffff",
20
+ "icons-secondary-hover": "#d6d8e0",
21
+ // 背景
22
+ "bg-primary": "#14141a",
23
+ "bg-primary-light": "#1a1a22",
24
+ "bg-primary-hover": "#20202a",
25
+ "bg-primary-active": "#2a2a38",
26
+ "bg-primary-stateless": "#20202a",
27
+ "bg-secondary": "#1a1a22",
28
+ "bg-stateless": "#1a1a22",
29
+ "bg-active": "#262633",
30
+ "bg-hover": "#20202a",
31
+ "bg-grey": "#23232e",
32
+ "bg-base-light": "#23232e",
33
+ "bg-base-medium": "#2a2a38",
34
+ "bg-tooltip": "#2a2a33",
35
+ // 强调色(Linear 靛蓝 · 暗色档)
36
+ "accent-primary": "#7C7CF0",
37
+ "accent-primary-hover": "#8F8FF5",
38
+ "accent-primary-active": "#6A6AE8",
39
+ "accent-stateless": "#7C7CF0",
40
+ // 按钮文字(secondary 默认黑色 → 改浅)
41
+ "btn-primary-text": "#ffffff",
42
+ "btn-secondary-text": "#f1f1f4",
43
+ "btn-disabled-text": "#6a6a72",
44
+ // 链接
45
+ "link-primary": "#c4c4cc",
46
+ "link-stateless": "#c4c4cc",
47
+ "link-hover": "#ffffff",
48
+ "link-active": "#ffffff",
49
+ // 边框
50
+ "borders-primary": "#2e2e3a",
51
+ "borders-primary-hover": "#4a4a58",
52
+ "borders-secondary": "#26262f",
53
+ "borders-strong": "#3a3a46",
54
+ "borders-invert": "#d6d8e0",
55
+ "borders-item": "#26262f",
56
+ "borders-button": "#3a3a46",
57
+ // 状态(active-secondary 默认白色 → 改深)
58
+ "active-secondary": "#1f1f29",
59
+ "active-secondary-hover": "rgba(124,124,240,0.16)",
60
+ tag: "#9aa0ac",
61
+ "light-shadow": "rgba(0,0,0,0.4)",
62
+ "medium-shadow": "rgba(0,0,0,0.5)"
63
+ };
64
+ var IMAGE_EDITOR_LIGHT_PALETTE = {
65
+ // 文本
66
+ "txt-primary": "#0a0a0a",
67
+ "txt-secondary": "#52525b",
68
+ "txt-secondary-invert": "#ffffff",
69
+ "txt-placeholder": "#a1a1aa",
70
+ "txt-warning": "#b45309",
71
+ "txt-error": "#dc2626",
72
+ "txt-info": "#2563eb",
73
+ // 图标
74
+ "icon-primary": "#3f3f46",
75
+ "icons-secondary": "#71717a",
76
+ "icons-muted": "#a1a1aa",
77
+ "icons-placeholder": "#d4d4d8",
78
+ "icons-invert": "#ffffff",
79
+ "icons-primary-hover": "#0a0a0a",
80
+ "icons-secondary-hover": "#3f3f46",
81
+ // 背景
82
+ "bg-primary": "#ffffff",
83
+ "bg-primary-light": "#fafafa",
84
+ "bg-primary-hover": "#f4f4f5",
85
+ "bg-primary-active": "#e4e4e7",
86
+ "bg-primary-stateless": "#f4f4f5",
87
+ "bg-secondary": "#fafafa",
88
+ "bg-stateless": "#fafafa",
89
+ "bg-active": "#ededfb",
90
+ "bg-hover": "#f4f4f5",
91
+ "bg-grey": "#f1f1f3",
92
+ "bg-base-light": "#f4f4f5",
93
+ "bg-base-medium": "#e4e4e7",
94
+ "bg-tooltip": "#18181b",
95
+ // 强调色(Linear 靛蓝 · 亮色档)
96
+ "accent-primary": "#5B5BD6",
97
+ "accent-primary-hover": "#4F4FC9",
98
+ "accent-primary-active": "#4444B8",
99
+ "accent-stateless": "#5B5BD6",
100
+ // 按钮文字
101
+ "btn-primary-text": "#ffffff",
102
+ "btn-secondary-text": "#0a0a0a",
103
+ "btn-disabled-text": "#a1a1aa",
104
+ // 链接
105
+ "link-primary": "#5B5BD6",
106
+ "link-stateless": "#5B5BD6",
107
+ "link-hover": "#4444B8",
108
+ "link-active": "#4444B8",
109
+ // 边框
110
+ "borders-primary": "#e6e6e8",
111
+ "borders-primary-hover": "#d4d4d8",
112
+ "borders-secondary": "#ededf0",
113
+ "borders-strong": "#d4d4d8",
114
+ "borders-invert": "#3f3f46",
115
+ "borders-item": "#ededf0",
116
+ "borders-button": "#d4d4d8",
117
+ // 状态
118
+ "active-secondary": "#ededfb",
119
+ "active-secondary-hover": "rgba(91,91,214,0.10)",
120
+ tag: "#71717a",
121
+ "light-shadow": "rgba(0,0,0,0.06)",
122
+ "medium-shadow": "rgba(0,0,0,0.12)"
123
+ };
124
+ var FIE_ZH = {
125
+ name: "\u540D\u79F0",
126
+ save: "\u4FDD\u5B58",
127
+ saveAs: "\u53E6\u5B58\u4E3A",
128
+ back: "\u8FD4\u56DE",
129
+ loading: "\u52A0\u8F7D\u4E2D\u2026",
130
+ resetOperations: "\u91CD\u7F6E/\u6E05\u9664\u5168\u90E8\u64CD\u4F5C",
131
+ changesLoseWarningHint: "\u6309\u4E0B\u300C\u91CD\u7F6E\u300D\u5C06\u4E22\u5931\u6240\u6709\u4FEE\u6539,\u786E\u5B9A\u7EE7\u7EED\u5417?",
132
+ discardChangesWarningHint: "\u5173\u95ED\u5F39\u7A97\u540E,\u6700\u540E\u7684\u4FEE\u6539\u5C06\u4E0D\u4F1A\u4FDD\u5B58\u3002",
133
+ cancel: "\u53D6\u6D88",
134
+ apply: "\u5E94\u7528",
135
+ warning: "\u8B66\u544A",
136
+ confirm: "\u786E\u8BA4",
137
+ discardChanges: "\u653E\u5F03\u4FEE\u6539",
138
+ undoTitle: "\u64A4\u9500\u4E0A\u4E00\u6B65",
139
+ redoTitle: "\u91CD\u505A\u4E0A\u4E00\u6B65",
140
+ showImageTitle: "\u663E\u793A\u539F\u56FE",
141
+ zoomInTitle: "\u653E\u5927",
142
+ fitTitle: "\u9002\u5E94",
143
+ zoomOutTitle: "\u7F29\u5C0F",
144
+ toggleZoomMenuTitle: "\u7F29\u653E\u83DC\u5355",
145
+ pointerToolTitle: "\u6307\u9488\u5DE5\u5177",
146
+ panToolTitle: "\u624B\u5DE5\u5177\uFF1A\u62D6\u52A8\u753B\u9762",
147
+ adjustTab: "\u8C03\u6574",
148
+ finetuneTab: "\u5FAE\u8C03",
149
+ filtersTab: "\u6EE4\u955C",
150
+ watermarkTab: "\u6C34\u5370",
151
+ annotateTabLabel: "\u753B\u753B",
152
+ resize: "\u8C03\u6574\u5C3A\u5BF8",
153
+ resizeTab: "\u5C3A\u5BF8",
154
+ imageName: "\u56FE\u7247\u540D\u79F0",
155
+ invalidImageError: "\u63D0\u4F9B\u7684\u56FE\u7247\u65E0\u6548\u3002",
156
+ uploadImageError: "\u4E0A\u4F20\u56FE\u7247\u51FA\u9519\u3002",
157
+ areNotImages: "\u4E0D\u662F\u56FE\u7247",
158
+ isNotImage: "\u4E0D\u662F\u56FE\u7247",
159
+ toBeUploaded: "\u5F85\u4E0A\u4F20",
160
+ cropTool: "\u88C1\u526A",
161
+ original: "\u539F\u59CB",
162
+ custom: "\u81EA\u5B9A\u4E49",
163
+ square: "\u65B9\u5F62",
164
+ landscape: "\u6A2A\u5411",
165
+ portrait: "\u7EB5\u5411",
166
+ ellipse: "\u692D\u5706",
167
+ classicTv: "\u7ECF\u5178\u7535\u89C6",
168
+ cinemascope: "\u5BBD\u94F6\u5E55",
169
+ arrowTool: "\u7BAD\u5934",
170
+ blurTool: "\u6A21\u7CCA",
171
+ brightnessTool: "\u4EAE\u5EA6",
172
+ contrastTool: "\u5BF9\u6BD4\u5EA6",
173
+ ellipseTool: "\u692D\u5706",
174
+ unFlipX: "\u53D6\u6D88\u6C34\u5E73\u7FFB\u8F6C",
175
+ flipX: "\u6C34\u5E73\u7FFB\u8F6C",
176
+ unFlipY: "\u53D6\u6D88\u5782\u76F4\u7FFB\u8F6C",
177
+ flipY: "\u5782\u76F4\u7FFB\u8F6C",
178
+ hsvTool: "HSV",
179
+ hue: "\u8272\u76F8",
180
+ brightness: "\u4EAE\u5EA6",
181
+ saturation: "\u9971\u548C\u5EA6",
182
+ value: "\u660E\u5EA6",
183
+ imageTool: "\u56FE\u7247",
184
+ importing: "\u5BFC\u5165\u4E2D\u2026",
185
+ addImage: "\u6DFB\u52A0\u56FE\u7247",
186
+ uploadImage: "\u4E0A\u4F20\u56FE\u7247",
187
+ fromGallery: "\u4ECE\u56FE\u5E93",
188
+ lineTool: "\u76F4\u7EBF",
189
+ penTool: "\u753B\u7B14",
190
+ polygonTool: "\u591A\u8FB9\u5F62",
191
+ sides: "\u8FB9\u6570",
192
+ rectangleTool: "\u77E9\u5F62",
193
+ cornerRadius: "\u5706\u89D2",
194
+ resizeWidthTitle: "\u5BBD\u5EA6(\u50CF\u7D20)",
195
+ resizeHeightTitle: "\u9AD8\u5EA6(\u50CF\u7D20)",
196
+ toggleRatioLockTitle: "\u9501\u5B9A/\u89E3\u9501\u6BD4\u4F8B",
197
+ resetSize: "\u91CD\u7F6E\u4E3A\u539F\u56FE\u5C3A\u5BF8",
198
+ rotateTool: "\u65CB\u8F6C",
199
+ textTool: "\u6587\u5B57",
200
+ textSpacings: "\u6587\u5B57\u95F4\u8DDD",
201
+ textAlignment: "\u6587\u5B57\u5BF9\u9F50",
202
+ fontFamily: "\u5B57\u4F53",
203
+ size: "\u5927\u5C0F",
204
+ letterSpacing: "\u5B57\u95F4\u8DDD",
205
+ lineHeight: "\u884C\u9AD8",
206
+ warmthTool: "\u8272\u6E29",
207
+ addWatermark: "\u6DFB\u52A0\u6C34\u5370",
208
+ addTextWatermark: "\u6DFB\u52A0\u6587\u5B57\u6C34\u5370",
209
+ addWatermarkTitle: "\u9009\u62E9\u6C34\u5370\u7C7B\u578B",
210
+ uploadWatermark: "\u4E0A\u4F20\u6C34\u5370",
211
+ addWatermarkAsText: "\u4EE5\u6587\u5B57\u6DFB\u52A0",
212
+ padding: "\u5185\u8FB9\u8DDD",
213
+ paddings: "\u5185\u8FB9\u8DDD",
214
+ shadow: "\u9634\u5F71",
215
+ horizontal: "\u6C34\u5E73",
216
+ vertical: "\u5782\u76F4",
217
+ blur: "\u6A21\u7CCA",
218
+ opacity: "\u4E0D\u900F\u660E\u5EA6",
219
+ transparency: "\u900F\u660E\u5EA6",
220
+ position: "\u4F4D\u7F6E",
221
+ stroke: "\u63CF\u8FB9",
222
+ saveAsModalTitle: "\u53E6\u5B58\u4E3A",
223
+ extension: "\u6269\u5C55\u540D",
224
+ format: "\u683C\u5F0F",
225
+ nameIsRequired: "\u540D\u79F0\u5FC5\u586B\u3002",
226
+ quality: "\u8D28\u91CF",
227
+ imageDimensionsHoverTitle: "\u4FDD\u5B58\u56FE\u7247\u5C3A\u5BF8(\u5BBD \xD7 \u9AD8)",
228
+ cropSizeLowerThanResizedWarning: "\u6CE8\u610F:\u6240\u9009\u88C1\u526A\u533A\u57DF\u5C0F\u4E8E\u5DF2\u5E94\u7528\u7684\u8C03\u6574\u5C3A\u5BF8,\u53EF\u80FD\u5BFC\u81F4\u753B\u8D28\u4E0B\u964D",
229
+ actualSize: "\u5B9E\u9645\u5927\u5C0F(100%)",
230
+ fitSize: "\u9002\u5E94\u5927\u5C0F",
231
+ addImageTitle: "\u9009\u62E9\u8981\u6DFB\u52A0\u7684\u56FE\u7247\u2026",
232
+ mutualizedFailedToLoadImg: "\u56FE\u7247\u52A0\u8F7D\u5931\u8D25\u3002",
233
+ tabsMenu: "\u83DC\u5355",
234
+ download: "\u4E0B\u8F7D",
235
+ width: "\u5BBD\u5EA6",
236
+ height: "\u9AD8\u5EA6",
237
+ cropItemNoEffect: "\u8BE5\u88C1\u526A\u9879\u65E0\u9884\u89C8",
238
+ px: "px",
239
+ invalidTextContent: "\u6587\u5B57\u5185\u5BB9\u65E0\u6548",
240
+ baselineShift: "\u57FA\u7EBF\u504F\u79FB",
241
+ aiTab: "AI \u5DE5\u5177",
242
+ objectRemovalTool: "\u5BF9\u8C61\u79FB\u9664",
243
+ objectRemovalBrushSize: "\u753B\u7B14\u5927\u5C0F(px)",
244
+ objectRemovalApplyButton: "\u5E94\u7528",
245
+ objectRemovalBrushMode: "\u753B\u7B14\u6A21\u5F0F",
246
+ objectRemovalBrushCircleType: "\u5706\u5F62\u753B\u7B14",
247
+ objectRemovalBrushSquareType: "\u65B9\u5F62\u753B\u7B14",
248
+ objectRemovalApplyingText: "\u6B63\u5728\u79FB\u9664\u6240\u9009\u533A\u57DF",
249
+ objectRemovalMarkModeTooltip: "\u6807\u8BB0\u6A21\u5F0F",
250
+ objectRemovalUnMarkModeTooltip: "\u53D6\u6D88\u6807\u8BB0\u6A21\u5F0F",
251
+ objectRemovalCancelConfirmationTitle: "\u53D6\u6D88\u5904\u7406",
252
+ objectRemovalCancelConfirmationHint: "\u786E\u5B9A\u8981\u53D6\u6D88\u79FB\u9664\u4EE5\u4E0B\u7D20\u6750\u4E2D\u7684\u5BF9\u8C61:",
253
+ objectRemovalCancelConfirmationHintCompletion: "?",
254
+ theKeyword: "\u8BE5"
255
+ };
256
+ var FIE_ES = {
257
+ name: "Nombre",
258
+ save: "Guardar",
259
+ saveAs: "Guardar como",
260
+ back: "Volver",
261
+ loading: "Cargando\u2026",
262
+ resetOperations: "Restablecer / borrar cambios",
263
+ changesLoseWarningHint: "Al pulsar \u201CRestablecer\u201D se perder\xE1n todos los cambios. \xBFContinuar?",
264
+ discardChangesWarningHint: "Al cerrar el cuadro, los \xFAltimos cambios no se guardar\xE1n.",
265
+ cancel: "Cancelar",
266
+ apply: "Aplicar",
267
+ warning: "Advertencia",
268
+ confirm: "Confirmar",
269
+ discardChanges: "Descartar cambios",
270
+ undoTitle: "Deshacer",
271
+ redoTitle: "Rehacer",
272
+ showImageTitle: "Mostrar original",
273
+ zoomInTitle: "Ampliar",
274
+ fitTitle: "Ajustar",
275
+ zoomOutTitle: "Reducir",
276
+ toggleZoomMenuTitle: "Men\xFA de zoom",
277
+ pointerToolTitle: "Herramienta de puntero",
278
+ panToolTitle: "Mano: desplazar lienzo",
279
+ adjustTab: "Ajustar",
280
+ finetuneTab: "Ajustes finos",
281
+ filtersTab: "Filtros",
282
+ watermarkTab: "Marca de agua",
283
+ annotateTabLabel: "Dibujar",
284
+ resize: "Redimensionar",
285
+ resizeTab: "Tama\xF1o",
286
+ imageName: "Nombre de imagen",
287
+ invalidImageError: "La imagen proporcionada no es v\xE1lida.",
288
+ uploadImageError: "Error al subir la imagen.",
289
+ areNotImages: "No son im\xE1genes",
290
+ isNotImage: "No es una imagen",
291
+ toBeUploaded: "Pendiente de subir",
292
+ cropTool: "Recortar",
293
+ original: "Original",
294
+ custom: "Personalizado",
295
+ square: "Cuadrado",
296
+ landscape: "Horizontal",
297
+ portrait: "Vertical",
298
+ ellipse: "Elipse",
299
+ classicTv: "TV cl\xE1sica",
300
+ cinemascope: "Cinemascope",
301
+ arrowTool: "Flecha",
302
+ blurTool: "Desenfoque",
303
+ brightnessTool: "Brillo",
304
+ contrastTool: "Contraste",
305
+ ellipseTool: "Elipse",
306
+ unFlipX: "Quitar volteo horizontal",
307
+ flipX: "Voltear horizontal",
308
+ unFlipY: "Quitar volteo vertical",
309
+ flipY: "Voltear vertical",
310
+ hsvTool: "HSV",
311
+ hue: "Matiz",
312
+ brightness: "Brillo",
313
+ saturation: "Saturaci\xF3n",
314
+ value: "Valor",
315
+ imageTool: "Imagen",
316
+ importing: "Importando\u2026",
317
+ addImage: "A\xF1adir imagen",
318
+ uploadImage: "Subir imagen",
319
+ fromGallery: "Desde galer\xEDa",
320
+ lineTool: "L\xEDnea",
321
+ penTool: "Pincel",
322
+ polygonTool: "Pol\xEDgono",
323
+ sides: "Lados",
324
+ rectangleTool: "Rect\xE1ngulo",
325
+ cornerRadius: "Radio de esquina",
326
+ resizeWidthTitle: "Ancho (px)",
327
+ resizeHeightTitle: "Alto (px)",
328
+ toggleRatioLockTitle: "Bloquear/desbloquear proporci\xF3n",
329
+ resetSize: "Restablecer tama\xF1o original",
330
+ rotateTool: "Rotar",
331
+ textTool: "Texto",
332
+ textSpacings: "Espaciado de texto",
333
+ textAlignment: "Alineaci\xF3n de texto",
334
+ fontFamily: "Fuente",
335
+ size: "Tama\xF1o",
336
+ letterSpacing: "Espaciado",
337
+ lineHeight: "Altura de l\xEDnea",
338
+ warmthTool: "Temperatura",
339
+ addWatermark: "A\xF1adir marca de agua",
340
+ addTextWatermark: "A\xF1adir marca de texto",
341
+ addWatermarkTitle: "Elegir tipo de marca",
342
+ uploadWatermark: "Subir marca de agua",
343
+ addWatermarkAsText: "A\xF1adir como texto",
344
+ padding: "Relleno",
345
+ paddings: "Relleno",
346
+ shadow: "Sombra",
347
+ horizontal: "Horizontal",
348
+ vertical: "Vertical",
349
+ blur: "Desenfoque",
350
+ opacity: "Opacidad",
351
+ transparency: "Transparencia",
352
+ position: "Posici\xF3n",
353
+ stroke: "Trazo",
354
+ saveAsModalTitle: "Guardar como",
355
+ extension: "Extensi\xF3n",
356
+ format: "Formato",
357
+ nameIsRequired: "El nombre es obligatorio.",
358
+ quality: "Calidad",
359
+ imageDimensionsHoverTitle: "Tama\xF1o guardado (ancho \xD7 alto)",
360
+ cropSizeLowerThanResizedWarning: "Nota: el \xE1rea recortada es menor que el tama\xF1o ajustado y puede reducir la calidad",
361
+ actualSize: "Tama\xF1o real (100%)",
362
+ fitSize: "Ajustar tama\xF1o",
363
+ addImageTitle: "Elegir imagen para a\xF1adir\u2026",
364
+ mutualizedFailedToLoadImg: "No se pudo cargar la imagen.",
365
+ tabsMenu: "Men\xFA",
366
+ download: "Descargar",
367
+ width: "Ancho",
368
+ height: "Alto",
369
+ cropItemNoEffect: "Este recorte no tiene vista previa",
370
+ px: "px",
371
+ invalidTextContent: "Contenido de texto no v\xE1lido",
372
+ baselineShift: "Desplazamiento de l\xEDnea base",
373
+ aiTab: "Herramientas IA",
374
+ objectRemovalTool: "Eliminar objeto",
375
+ objectRemovalBrushSize: "Tama\xF1o de pincel (px)",
376
+ objectRemovalApplyButton: "Aplicar",
377
+ objectRemovalBrushMode: "Modo pincel",
378
+ objectRemovalBrushCircleType: "Pincel circular",
379
+ objectRemovalBrushSquareType: "Pincel cuadrado",
380
+ objectRemovalApplyingText: "Eliminando el \xE1rea seleccionada",
381
+ objectRemovalMarkModeTooltip: "Modo marcar",
382
+ objectRemovalUnMarkModeTooltip: "Modo desmarcar",
383
+ objectRemovalCancelConfirmationTitle: "Cancelar proceso",
384
+ objectRemovalCancelConfirmationHint: "\xBFSeguro que quieres cancelar la eliminaci\xF3n del objeto en:",
385
+ objectRemovalCancelConfirmationHintCompletion: "?",
386
+ theKeyword: "este"
387
+ };
388
+ var FIE_ZH_HANT = Object.fromEntries(
389
+ Object.entries(FIE_ZH).map(([key, value]) => [key, toHant(value)])
390
+ );
391
+ var FIE_LOCALE_TRANSLATIONS = {
392
+ zh: FIE_ZH,
393
+ es: FIE_ES,
394
+ "zh-Hant": FIE_ZH_HANT
395
+ };
396
+ var IMAGE_EDITOR_TABS = ["Adjust", "Annotate", "Watermark", "Filters", "Finetune", "Resize"];
397
+ function buildCropPresetItems(presets = IMAGE_PLATFORM_PRESETS, renderRatioIcon) {
398
+ return presets.map((p, i) => {
399
+ const item = {
400
+ titleKey: p.label,
401
+ descriptionKey: p.ratio,
402
+ ratio: p.value + (i + 1) * 1e-6
403
+ };
404
+ if (renderRatioIcon) item.icon = renderRatioIcon(p.value);
405
+ return item;
406
+ });
407
+ }
408
+ function buildImageEditorTranslations(locale, presets = IMAGE_PLATFORM_PRESETS, baseTranslations = {}) {
409
+ return {
410
+ ...baseTranslations,
411
+ ...Object.fromEntries(presets.flatMap((p) => [[p.label, p.label], [p.ratio, p.ratio]])),
412
+ ...FIE_LOCALE_TRANSLATIONS[locale] ?? {}
413
+ };
414
+ }
415
+ function createImageEditorConfig(opts) {
416
+ const locale = opts.locale ?? "zh";
417
+ const presets = opts.platformPresets ?? IMAGE_PLATFORM_PRESETS;
418
+ const translations = buildImageEditorTranslations(locale, presets, opts.baseTranslations);
419
+ const themeMode = opts.themeMode ?? "dark";
420
+ const palette = themeMode === "light" ? IMAGE_EDITOR_LIGHT_PALETTE : IMAGE_EDITOR_DARK_PALETTE;
421
+ const accent = palette["accent-primary"];
422
+ const annotationFill = themeMode === "light" ? "#18181b" : "#ffffff";
423
+ const shapeFill = themeMode === "light" ? "rgba(91,91,214,0.28)" : "rgba(124,124,240,0.35)";
424
+ const shape = { fill: shapeFill, stroke: accent, strokeWidth: 2 };
425
+ const strokeShape = { stroke: accent, strokeWidth: 4 };
426
+ const config = {
427
+ // 默认 true 会请求外网翻译源(i18n-fastly),文案完全自给
428
+ useBackendTranslations: false,
429
+ source: opts.source,
430
+ tabsIds: [...IMAGE_EDITOR_TABS],
431
+ defaultTabId: "Adjust",
432
+ defaultToolId: "Crop",
433
+ Crop: { presetsItems: buildCropPresetItems(presets, opts.renderRatioIcon) },
434
+ // 像素密度恢复库默认:savingPixelRatio 只提密度不膨胀输出尺寸;预览至少 2x 避免大图低清缓存。
435
+ savingPixelRatio: opts.savingPixelRatio ?? 4,
436
+ previewPixelRatio: opts.previewPixelRatio ?? 2,
437
+ // 文案语言固定 'en' + 自给 translations(非 en 覆盖在 translations 里完成)
438
+ language: "en",
439
+ translations,
440
+ // 输出默认 jpg@0.92
441
+ defaultSavedImageType: "jpeg",
442
+ defaultSavedImageQuality: 0.92,
443
+ // 兜底文件名(源为 objectURL 时无名);onBeforeSave 返回 false 跳过「另存为」弹窗 → 点保存一键触发 onSave
444
+ defaultSavedImageName: "image",
445
+ onBeforeSave: () => false,
446
+ // 标注默认填色随明暗档;形状半透明强调色填充 + 实线描边(默认 strokeWidth=0 + 同底色填充不可见)
447
+ annotationsCommon: { fill: annotationFill },
448
+ Rect: { ...shape },
449
+ Ellipse: { ...shape },
450
+ Polygon: { ...shape },
451
+ Text: { fontSize: 30 },
452
+ Line: { ...strokeShape },
453
+ Arrow: { ...strokeShape },
454
+ Pen: { ...strokeShape },
455
+ theme: {
456
+ palette: { ...palette, ...opts.theme?.palette },
457
+ typography: {
458
+ fontFamily: '-apple-system, BlinkMacSystemFont, "PingFang SC", "Microsoft YaHei", sans-serif',
459
+ ...opts.theme?.typography
460
+ }
461
+ },
462
+ // d.ts 未声明 onAnnotationAdd,纯函数注入(机理与单测见 filerobot-annotation)
463
+ onAnnotationAdd: compensateAnnotationRotation
464
+ };
465
+ if (opts.loadableDesignState !== void 0) config.loadableDesignState = opts.loadableDesignState;
466
+ if (opts.onSave) config.onSave = opts.onSave;
467
+ if (opts.onClose) config.onClose = opts.onClose;
468
+ return config;
469
+ }
470
+
471
+ export { FIE_ES, FIE_ZH, FIE_ZH_HANT, IMAGE_EDITOR_DARK_PALETTE, IMAGE_EDITOR_LIGHT_PALETTE, IMAGE_EDITOR_TABS, buildCropPresetItems, buildImageEditorTranslations, createImageEditorConfig };
472
+ //# sourceMappingURL=filerobot.js.map
473
+ //# sourceMappingURL=filerobot.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/filerobot.ts"],"names":[],"mappings":"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","file":"filerobot.js","sourcesContent":["/**\n * Filerobot 图片编辑器「配置工厂」—— 纯 TS,零 React / 零 DOM。\n *\n * 从 SocialEcho ImageEditor.tsx 抽取「配置」这一层(不抽 React 渲染层):产出一个普通对象,\n * 由框架无关运行时 @media-editor/image 透传给 <FilerobotImageEditor>。\n *\n * 两处「天然属于 React/Filerobot」的东西用依赖注入留给运行时,以保 core 零框架:\n * - 裁剪预设的 icon 是 React 组件 → 运行时传 renderRatioIcon;\n * - 内核英文默认词典 FIE_DEFAULTS → 运行时传 baseTranslations(从 filerobot 包深路径取)。\n */\nimport { toHant, type EditorLocale } from './i18n';\nimport { IMAGE_PLATFORM_PRESETS, type PlatformPreset } from './platform-presets';\nimport { compensateAnnotationRotation } from './filerobot-annotation';\n\n/**\n * 暗色 palette 覆盖。键名取自 @scaleflex/ui 的权威枚举(theme/roots/palette)。\n * 默认是亮色主题:文字/图标都是深色,在深色底上看不清 → 这里把「文字/图标/边框」翻浅、背景翻深。\n * 易踩键:主图标键是 'icon-primary'(单数);'btn-secondary-text' 默认黑、'active-secondary' 默认白,都要改。\n */\nexport const IMAGE_EDITOR_DARK_PALETTE: Record<string, string> = {\n // 文本\n 'txt-primary': '#f1f1f4',\n 'txt-secondary': '#b6bac4',\n 'txt-secondary-invert': '#14141a',\n 'txt-placeholder': '#7c818c',\n 'txt-warning': '#fbbf24',\n 'txt-error': '#f87171',\n 'txt-info': '#7cc4f5',\n // 图标(primary 是单数 icon-primary)\n 'icon-primary': '#d6d8e0',\n 'icons-secondary': '#9aa0ac',\n 'icons-muted': '#7c818c',\n 'icons-placeholder': '#3a3a44',\n 'icons-invert': '#14141a',\n 'icons-primary-hover': '#ffffff',\n 'icons-secondary-hover': '#d6d8e0',\n // 背景\n 'bg-primary': '#14141a',\n 'bg-primary-light': '#1a1a22',\n 'bg-primary-hover': '#20202a',\n 'bg-primary-active': '#2a2a38',\n 'bg-primary-stateless': '#20202a',\n 'bg-secondary': '#1a1a22',\n 'bg-stateless': '#1a1a22',\n 'bg-active': '#262633',\n 'bg-hover': '#20202a',\n 'bg-grey': '#23232e',\n 'bg-base-light': '#23232e',\n 'bg-base-medium': '#2a2a38',\n 'bg-tooltip': '#2a2a33',\n // 强调色(Linear 靛蓝 · 暗色档)\n 'accent-primary': '#7C7CF0',\n 'accent-primary-hover': '#8F8FF5',\n 'accent-primary-active': '#6A6AE8',\n 'accent-stateless': '#7C7CF0',\n // 按钮文字(secondary 默认黑色 → 改浅)\n 'btn-primary-text': '#ffffff',\n 'btn-secondary-text': '#f1f1f4',\n 'btn-disabled-text': '#6a6a72',\n // 链接\n 'link-primary': '#c4c4cc',\n 'link-stateless': '#c4c4cc',\n 'link-hover': '#ffffff',\n 'link-active': '#ffffff',\n // 边框\n 'borders-primary': '#2e2e3a',\n 'borders-primary-hover': '#4a4a58',\n 'borders-secondary': '#26262f',\n 'borders-strong': '#3a3a46',\n 'borders-invert': '#d6d8e0',\n 'borders-item': '#26262f',\n 'borders-button': '#3a3a46',\n // 状态(active-secondary 默认白色 → 改深)\n 'active-secondary': '#1f1f29',\n 'active-secondary-hover': 'rgba(124,124,240,0.16)',\n tag: '#9aa0ac',\n 'light-shadow': 'rgba(0,0,0,0.4)',\n 'medium-shadow': 'rgba(0,0,0,0.5)',\n};\n\n/**\n * 亮色 palette —— 同键集的浅色档(Vercel/Linear 亮色:近纯白底、发丝边框、靛蓝强调)。\n * 与暗色档一一对应,createImageEditorConfig 按 themeMode 选用。\n */\nexport const IMAGE_EDITOR_LIGHT_PALETTE: Record<string, string> = {\n // 文本\n 'txt-primary': '#0a0a0a',\n 'txt-secondary': '#52525b',\n 'txt-secondary-invert': '#ffffff',\n 'txt-placeholder': '#a1a1aa',\n 'txt-warning': '#b45309',\n 'txt-error': '#dc2626',\n 'txt-info': '#2563eb',\n // 图标\n 'icon-primary': '#3f3f46',\n 'icons-secondary': '#71717a',\n 'icons-muted': '#a1a1aa',\n 'icons-placeholder': '#d4d4d8',\n 'icons-invert': '#ffffff',\n 'icons-primary-hover': '#0a0a0a',\n 'icons-secondary-hover': '#3f3f46',\n // 背景\n 'bg-primary': '#ffffff',\n 'bg-primary-light': '#fafafa',\n 'bg-primary-hover': '#f4f4f5',\n 'bg-primary-active': '#e4e4e7',\n 'bg-primary-stateless': '#f4f4f5',\n 'bg-secondary': '#fafafa',\n 'bg-stateless': '#fafafa',\n 'bg-active': '#ededfb',\n 'bg-hover': '#f4f4f5',\n 'bg-grey': '#f1f1f3',\n 'bg-base-light': '#f4f4f5',\n 'bg-base-medium': '#e4e4e7',\n 'bg-tooltip': '#18181b',\n // 强调色(Linear 靛蓝 · 亮色档)\n 'accent-primary': '#5B5BD6',\n 'accent-primary-hover': '#4F4FC9',\n 'accent-primary-active': '#4444B8',\n 'accent-stateless': '#5B5BD6',\n // 按钮文字\n 'btn-primary-text': '#ffffff',\n 'btn-secondary-text': '#0a0a0a',\n 'btn-disabled-text': '#a1a1aa',\n // 链接\n 'link-primary': '#5B5BD6',\n 'link-stateless': '#5B5BD6',\n 'link-hover': '#4444B8',\n 'link-active': '#4444B8',\n // 边框\n 'borders-primary': '#e6e6e8',\n 'borders-primary-hover': '#d4d4d8',\n 'borders-secondary': '#ededf0',\n 'borders-strong': '#d4d4d8',\n 'borders-invert': '#3f3f46',\n 'borders-item': '#ededf0',\n 'borders-button': '#d4d4d8',\n // 状态\n 'active-secondary': '#ededfb',\n 'active-secondary-hover': 'rgba(91,91,214,0.10)',\n tag: '#71717a',\n 'light-shadow': 'rgba(0,0,0,0.06)',\n 'medium-shadow': 'rgba(0,0,0,0.12)',\n};\n\n/**\n * Filerobot 内核文案中文全量覆盖(与包内 defaultTranslations.js 同序,便于升级时 diff;en 模式用其内置英文)。\n * 升级 Filerobot 后用 defaultTranslations.js 复核键集。\n */\nexport const FIE_ZH: Record<string, string> = {\n name: '名称',\n save: '保存',\n saveAs: '另存为',\n back: '返回',\n loading: '加载中…',\n resetOperations: '重置/清除全部操作',\n changesLoseWarningHint: '按下「重置」将丢失所有修改,确定继续吗?',\n discardChangesWarningHint: '关闭弹窗后,最后的修改将不会保存。',\n cancel: '取消',\n apply: '应用',\n warning: '警告',\n confirm: '确认',\n discardChanges: '放弃修改',\n undoTitle: '撤销上一步',\n redoTitle: '重做上一步',\n showImageTitle: '显示原图',\n zoomInTitle: '放大',\n fitTitle: '适应',\n zoomOutTitle: '缩小',\n toggleZoomMenuTitle: '缩放菜单',\n pointerToolTitle: '指针工具',\n panToolTitle: '手工具:拖动画面',\n adjustTab: '调整',\n finetuneTab: '微调',\n filtersTab: '滤镜',\n watermarkTab: '水印',\n annotateTabLabel: '标注',\n resize: '调整尺寸',\n resizeTab: '尺寸',\n imageName: '图片名称',\n invalidImageError: '提供的图片无效。',\n uploadImageError: '上传图片出错。',\n areNotImages: '不是图片',\n isNotImage: '不是图片',\n toBeUploaded: '待上传',\n cropTool: '裁剪',\n original: '原始',\n custom: '自定义',\n square: '方形',\n landscape: '横向',\n portrait: '纵向',\n ellipse: '椭圆',\n classicTv: '经典电视',\n cinemascope: '宽银幕',\n arrowTool: '箭头',\n blurTool: '模糊',\n brightnessTool: '亮度',\n contrastTool: '对比度',\n ellipseTool: '椭圆',\n unFlipX: '取消水平翻转',\n flipX: '水平翻转',\n unFlipY: '取消垂直翻转',\n flipY: '垂直翻转',\n hsvTool: 'HSV',\n hue: '色相',\n brightness: '亮度',\n saturation: '饱和度',\n value: '明度',\n imageTool: '图片',\n importing: '导入中…',\n addImage: '添加图片',\n uploadImage: '上传图片',\n fromGallery: '从图库',\n lineTool: '直线',\n penTool: '画笔',\n polygonTool: '多边形',\n sides: '边数',\n rectangleTool: '矩形',\n cornerRadius: '圆角',\n resizeWidthTitle: '宽度(像素)',\n resizeHeightTitle: '高度(像素)',\n toggleRatioLockTitle: '锁定/解锁比例',\n resetSize: '重置为原图尺寸',\n rotateTool: '旋转',\n textTool: '文字',\n textSpacings: '文字间距',\n textAlignment: '文字对齐',\n fontFamily: '字体',\n size: '大小',\n letterSpacing: '字间距',\n lineHeight: '行高',\n warmthTool: '色温',\n addWatermark: '添加水印',\n addTextWatermark: '添加文字水印',\n addWatermarkTitle: '选择水印类型',\n uploadWatermark: '上传水印',\n addWatermarkAsText: '以文字添加',\n padding: '内边距',\n paddings: '内边距',\n shadow: '阴影',\n horizontal: '水平',\n vertical: '垂直',\n blur: '模糊',\n opacity: '不透明度',\n transparency: '透明度',\n position: '位置',\n stroke: '描边',\n saveAsModalTitle: '另存为',\n extension: '扩展名',\n format: '格式',\n nameIsRequired: '名称必填。',\n quality: '质量',\n imageDimensionsHoverTitle: '保存图片尺寸(宽 × 高)',\n cropSizeLowerThanResizedWarning: '注意:所选裁剪区域小于已应用的调整尺寸,可能导致画质下降',\n actualSize: '实际大小(100%)',\n fitSize: '适应大小',\n addImageTitle: '选择要添加的图片…',\n mutualizedFailedToLoadImg: '图片加载失败。',\n tabsMenu: '菜单',\n download: '下载',\n width: '宽度',\n height: '高度',\n cropItemNoEffect: '该裁剪项无预览',\n px: 'px',\n invalidTextContent: '文字内容无效',\n baselineShift: '基线偏移',\n aiTab: 'AI 工具',\n objectRemovalTool: '对象移除',\n objectRemovalBrushSize: '画笔大小(px)',\n objectRemovalApplyButton: '应用',\n objectRemovalBrushMode: '画笔模式',\n objectRemovalBrushCircleType: '圆形画笔',\n objectRemovalBrushSquareType: '方形画笔',\n objectRemovalApplyingText: '正在移除所选区域',\n objectRemovalMarkModeTooltip: '标记模式',\n objectRemovalUnMarkModeTooltip: '取消标记模式',\n objectRemovalCancelConfirmationTitle: '取消处理',\n objectRemovalCancelConfirmationHint: '确定要取消移除以下素材中的对象:',\n objectRemovalCancelConfirmationHintCompletion: '?',\n theKeyword: '该',\n};\n\nexport const FIE_ES: Record<string, string> = {\n name: 'Nombre',\n save: 'Guardar',\n saveAs: 'Guardar como',\n back: 'Volver',\n loading: 'Cargando…',\n resetOperations: 'Restablecer / borrar cambios',\n changesLoseWarningHint: 'Al pulsar “Restablecer” se perderán todos los cambios. ¿Continuar?',\n discardChangesWarningHint: 'Al cerrar el cuadro, los últimos cambios no se guardarán.',\n cancel: 'Cancelar',\n apply: 'Aplicar',\n warning: 'Advertencia',\n confirm: 'Confirmar',\n discardChanges: 'Descartar cambios',\n undoTitle: 'Deshacer',\n redoTitle: 'Rehacer',\n showImageTitle: 'Mostrar original',\n zoomInTitle: 'Ampliar',\n fitTitle: 'Ajustar',\n zoomOutTitle: 'Reducir',\n toggleZoomMenuTitle: 'Menú de zoom',\n pointerToolTitle: 'Herramienta de puntero',\n panToolTitle: 'Mano: desplazar lienzo',\n adjustTab: 'Ajustar',\n finetuneTab: 'Ajustes finos',\n filtersTab: 'Filtros',\n watermarkTab: 'Marca de agua',\n annotateTabLabel: 'Anotar',\n resize: 'Redimensionar',\n resizeTab: 'Tamaño',\n imageName: 'Nombre de imagen',\n invalidImageError: 'La imagen proporcionada no es válida.',\n uploadImageError: 'Error al subir la imagen.',\n areNotImages: 'No son imágenes',\n isNotImage: 'No es una imagen',\n toBeUploaded: 'Pendiente de subir',\n cropTool: 'Recortar',\n original: 'Original',\n custom: 'Personalizado',\n square: 'Cuadrado',\n landscape: 'Horizontal',\n portrait: 'Vertical',\n ellipse: 'Elipse',\n classicTv: 'TV clásica',\n cinemascope: 'Cinemascope',\n arrowTool: 'Flecha',\n blurTool: 'Desenfoque',\n brightnessTool: 'Brillo',\n contrastTool: 'Contraste',\n ellipseTool: 'Elipse',\n unFlipX: 'Quitar volteo horizontal',\n flipX: 'Voltear horizontal',\n unFlipY: 'Quitar volteo vertical',\n flipY: 'Voltear vertical',\n hsvTool: 'HSV',\n hue: 'Matiz',\n brightness: 'Brillo',\n saturation: 'Saturación',\n value: 'Valor',\n imageTool: 'Imagen',\n importing: 'Importando…',\n addImage: 'Añadir imagen',\n uploadImage: 'Subir imagen',\n fromGallery: 'Desde galería',\n lineTool: 'Línea',\n penTool: 'Pincel',\n polygonTool: 'Polígono',\n sides: 'Lados',\n rectangleTool: 'Rectángulo',\n cornerRadius: 'Radio de esquina',\n resizeWidthTitle: 'Ancho (px)',\n resizeHeightTitle: 'Alto (px)',\n toggleRatioLockTitle: 'Bloquear/desbloquear proporción',\n resetSize: 'Restablecer tamaño original',\n rotateTool: 'Rotar',\n textTool: 'Texto',\n textSpacings: 'Espaciado de texto',\n textAlignment: 'Alineación de texto',\n fontFamily: 'Fuente',\n size: 'Tamaño',\n letterSpacing: 'Espaciado',\n lineHeight: 'Altura de línea',\n warmthTool: 'Temperatura',\n addWatermark: 'Añadir marca de agua',\n addTextWatermark: 'Añadir marca de texto',\n addWatermarkTitle: 'Elegir tipo de marca',\n uploadWatermark: 'Subir marca de agua',\n addWatermarkAsText: 'Añadir como texto',\n padding: 'Relleno',\n paddings: 'Relleno',\n shadow: 'Sombra',\n horizontal: 'Horizontal',\n vertical: 'Vertical',\n blur: 'Desenfoque',\n opacity: 'Opacidad',\n transparency: 'Transparencia',\n position: 'Posición',\n stroke: 'Trazo',\n saveAsModalTitle: 'Guardar como',\n extension: 'Extensión',\n format: 'Formato',\n nameIsRequired: 'El nombre es obligatorio.',\n quality: 'Calidad',\n imageDimensionsHoverTitle: 'Tamaño guardado (ancho × alto)',\n cropSizeLowerThanResizedWarning: 'Nota: el área recortada es menor que el tamaño ajustado y puede reducir la calidad',\n actualSize: 'Tamaño real (100%)',\n fitSize: 'Ajustar tamaño',\n addImageTitle: 'Elegir imagen para añadir…',\n mutualizedFailedToLoadImg: 'No se pudo cargar la imagen.',\n tabsMenu: 'Menú',\n download: 'Descargar',\n width: 'Ancho',\n height: 'Alto',\n cropItemNoEffect: 'Este recorte no tiene vista previa',\n px: 'px',\n invalidTextContent: 'Contenido de texto no válido',\n baselineShift: 'Desplazamiento de línea base',\n aiTab: 'Herramientas IA',\n objectRemovalTool: 'Eliminar objeto',\n objectRemovalBrushSize: 'Tamaño de pincel (px)',\n objectRemovalApplyButton: 'Aplicar',\n objectRemovalBrushMode: 'Modo pincel',\n objectRemovalBrushCircleType: 'Pincel circular',\n objectRemovalBrushSquareType: 'Pincel cuadrado',\n objectRemovalApplyingText: 'Eliminando el área seleccionada',\n objectRemovalMarkModeTooltip: 'Modo marcar',\n objectRemovalUnMarkModeTooltip: 'Modo desmarcar',\n objectRemovalCancelConfirmationTitle: 'Cancelar proceso',\n objectRemovalCancelConfirmationHint: '¿Seguro que quieres cancelar la eliminación del objeto en:',\n objectRemovalCancelConfirmationHintCompletion: '?',\n theKeyword: 'este',\n};\n\nexport const FIE_ZH_HANT: Record<string, string> = Object.fromEntries(\n Object.entries(FIE_ZH).map(([key, value]) => [key, toHant(value)]),\n) as Record<string, string>;\n\nconst FIE_LOCALE_TRANSLATIONS: Partial<Record<EditorLocale, Record<string, string>>> = {\n zh: FIE_ZH,\n es: FIE_ES,\n 'zh-Hant': FIE_ZH_HANT,\n};\n\n/** 进入编辑器的标签页顺序(Filerobot tabsIds 字面量) */\nexport const IMAGE_EDITOR_TABS = ['Adjust', 'Annotate', 'Watermark', 'Filters', 'Finetune', 'Resize'] as const;\n\n/** 单个裁剪预设项(对齐 Filerobot Crop.presetsItems[i]);icon 由运行时按 renderRatioIcon 注入 */\nexport interface CropPresetItem {\n titleKey: string;\n descriptionKey: string;\n ratio: number;\n icon?: unknown;\n}\n\n/**\n * 平台比例 → Filerobot 裁剪预设项。\n * Filerobot 用 ratio 数值当流内条目的 React key/选中态 —— 内置项与各平台同比例项会撞 key,\n * 故每项微扰 +(i+1)e-6(裁剪几何影响 <0.001px)。icon 仅在 renderRatioIcon 提供时附加。\n */\nexport function buildCropPresetItems(\n presets: PlatformPreset[] = IMAGE_PLATFORM_PRESETS,\n renderRatioIcon?: (value: number) => unknown,\n): CropPresetItem[] {\n return presets.map((p, i) => {\n const item: CropPresetItem = {\n titleKey: p.label,\n descriptionKey: p.ratio,\n ratio: p.value + (i + 1) * 1e-6,\n };\n if (renderRatioIcon) item.icon = renderRatioIcon(p.value);\n return item;\n });\n}\n\n/**\n * 合并出传给 Filerobot 的 translations:\n * 先铺内核英文默认(baseTranslations,运行时注入 FIE_DEFAULTS)——全局字典只增不删,EN 模式必须显式回灌英文;\n * 再加平台标签自映射(titleKey/descriptionKey 缺翻译时兜底显示自身);非 en 模式叠加 FIE_* 覆盖内核可见面。\n */\nexport function buildImageEditorTranslations(\n locale: EditorLocale,\n presets: PlatformPreset[] = IMAGE_PLATFORM_PRESETS,\n baseTranslations: Record<string, string> = {},\n): Record<string, string> {\n return {\n ...baseTranslations,\n ...Object.fromEntries(presets.flatMap((p) => [[p.label, p.label], [p.ratio, p.ratio]])),\n ...(FIE_LOCALE_TRANSLATIONS[locale] ?? {}),\n };\n}\n\nexport interface ImageEditorConfigOptions {\n /** 图片来源:dataURL 或 objectURL */\n source: string;\n /** 文案语言,默认 'zh' */\n locale?: EditorLocale;\n /** 上次保存的 designState(二次编辑回填) */\n loadableDesignState?: unknown;\n /** 保存回调:(savedImageData, designState) */\n onSave?: (editedImageObject: unknown, designState: unknown) => void;\n /** 关闭回调 */\n onClose?: () => void;\n /** 保存像素密度,默认 4(只提密度不膨胀输出尺寸) */\n savingPixelRatio?: number;\n /** 预览像素密度,默认 1;运行时按 window.devicePixelRatio 填 */\n previewPixelRatio?: number;\n /** 明暗档,默认 'dark';选用对应 palette 与标注/形状默认色('auto' 由运行时解析后传入) */\n themeMode?: 'light' | 'dark';\n /** 平台裁剪预设,默认内置全量 */\n platformPresets?: PlatformPreset[];\n /** 内核英文默认词典(运行时注入 FIE_DEFAULTS) */\n baseTranslations?: Record<string, string>;\n /** 裁剪预设比例图标工厂(运行时注入 React 组件) */\n renderRatioIcon?: (value: number) => unknown;\n /** 主题覆盖(palette/typography 浅合并到暗色默认之上) */\n theme?: { palette?: Record<string, string>; typography?: Record<string, unknown> };\n}\n\n/**\n * 产出传给 <FilerobotImageEditor> 的 props 对象(普通 JS,零 React/DOM)。\n * 返回 Record<string, unknown> 而非 Filerobot 类型,避免 core 依赖 react-filerobot-image-editor。\n */\nexport function createImageEditorConfig(opts: ImageEditorConfigOptions): Record<string, unknown> {\n const locale = opts.locale ?? 'zh';\n const presets = opts.platformPresets ?? IMAGE_PLATFORM_PRESETS;\n const translations = buildImageEditorTranslations(locale, presets, opts.baseTranslations);\n\n const themeMode = opts.themeMode ?? 'dark';\n const palette = themeMode === 'light' ? IMAGE_EDITOR_LIGHT_PALETTE : IMAGE_EDITOR_DARK_PALETTE;\n const accent = palette['accent-primary'];\n // 标注默认填色:暗档白字、亮档深字;形状半透明强调色填充 + 强调色描边\n const annotationFill = themeMode === 'light' ? '#18181b' : '#ffffff';\n const shapeFill = themeMode === 'light' ? 'rgba(91,91,214,0.28)' : 'rgba(124,124,240,0.35)';\n const shape = { fill: shapeFill, stroke: accent, strokeWidth: 2 };\n // 线类形状(直线/箭头/画笔)只有描边、无填充:Filerobot 默认 stroke 黑、strokeWidth 0 → 画出来是黑/不可见。\n // 显式给强调色描边 + 可见线宽,避免「边框颜色总是黑色」(用户可再用取色器改)。\n const strokeShape = { stroke: accent, strokeWidth: 4 };\n\n const config: Record<string, unknown> = {\n // 默认 true 会请求外网翻译源(i18n-fastly),文案完全自给\n useBackendTranslations: false,\n source: opts.source,\n tabsIds: [...IMAGE_EDITOR_TABS],\n defaultTabId: 'Adjust',\n defaultToolId: 'Crop',\n Crop: { presetsItems: buildCropPresetItems(presets, opts.renderRatioIcon) },\n // 像素密度恢复库默认:savingPixelRatio 只提密度不膨胀输出尺寸;预览至少 2x 避免大图低清缓存。\n savingPixelRatio: opts.savingPixelRatio ?? 4,\n previewPixelRatio: opts.previewPixelRatio ?? 2,\n // 文案语言固定 'en' + 自给 translations(非 en 覆盖在 translations 里完成)\n language: 'en',\n translations,\n // 输出默认 jpg@0.92\n defaultSavedImageType: 'jpeg',\n defaultSavedImageQuality: 0.92,\n // 兜底文件名(源为 objectURL 时无名);onBeforeSave 返回 false 跳过「另存为」弹窗 → 点保存一键触发 onSave\n defaultSavedImageName: 'image',\n onBeforeSave: () => false,\n // 标注默认填色随明暗档;形状半透明强调色填充 + 实线描边(默认 strokeWidth=0 + 同底色填充不可见)\n annotationsCommon: { fill: annotationFill },\n Rect: { ...shape },\n Ellipse: { ...shape },\n Polygon: { ...shape },\n Text: { fontSize: 30 },\n Line: { ...strokeShape },\n Arrow: { ...strokeShape },\n Pen: { ...strokeShape },\n theme: {\n palette: { ...palette, ...opts.theme?.palette },\n typography: {\n fontFamily: '-apple-system, BlinkMacSystemFont, \"PingFang SC\", \"Microsoft YaHei\", sans-serif',\n ...opts.theme?.typography,\n },\n },\n // d.ts 未声明 onAnnotationAdd,纯函数注入(机理与单测见 filerobot-annotation)\n onAnnotationAdd: compensateAnnotationRotation,\n };\n\n if (opts.loadableDesignState !== undefined) config.loadableDesignState = opts.loadableDesignState;\n if (opts.onSave) config.onSave = opts.onSave;\n if (opts.onClose) config.onClose = opts.onClose;\n\n return config;\n}\n"]}