@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.
- package/LICENSE +21 -0
- package/README.md +51 -0
- package/dist/index.cjs +282 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.cts +54 -0
- package/dist/index.d.ts +54 -0
- package/dist/index.js +240 -0
- package/dist/index.js.map +1 -0
- package/filerobot.css +1669 -0
- package/node_modules/@media-editor/client/LICENSE +21 -0
- package/node_modules/@media-editor/client/README.md +27 -0
- package/node_modules/@media-editor/client/dist/index.cjs +60 -0
- package/node_modules/@media-editor/client/dist/index.cjs.map +1 -0
- package/node_modules/@media-editor/client/dist/index.d.cts +24 -0
- package/node_modules/@media-editor/client/dist/index.d.ts +24 -0
- package/node_modules/@media-editor/client/dist/index.js +35 -0
- package/node_modules/@media-editor/client/dist/index.js.map +1 -0
- package/node_modules/@media-editor/client/package.json +23 -0
- package/node_modules/@media-editor/core/LICENSE +21 -0
- package/node_modules/@media-editor/core/README.md +14 -0
- package/node_modules/@media-editor/core/dist/browser.cjs +505 -0
- package/node_modules/@media-editor/core/dist/browser.cjs.map +1 -0
- package/node_modules/@media-editor/core/dist/browser.d.cts +100 -0
- package/node_modules/@media-editor/core/dist/browser.d.ts +100 -0
- package/node_modules/@media-editor/core/dist/browser.js +883 -0
- package/node_modules/@media-editor/core/dist/browser.js.map +1 -0
- package/node_modules/@media-editor/core/dist/chunk-MGKYVYOH.js +371 -0
- package/node_modules/@media-editor/core/dist/chunk-MGKYVYOH.js.map +1 -0
- package/node_modules/@media-editor/core/dist/chunk-USY6UDGL.js +87 -0
- package/node_modules/@media-editor/core/dist/chunk-USY6UDGL.js.map +1 -0
- package/node_modules/@media-editor/core/dist/chunk-XCBM7P7N.js +592 -0
- package/node_modules/@media-editor/core/dist/chunk-XCBM7P7N.js.map +1 -0
- package/node_modules/@media-editor/core/dist/engine.cjs +540 -0
- package/node_modules/@media-editor/core/dist/engine.cjs.map +1 -0
- package/node_modules/@media-editor/core/dist/engine.d.cts +325 -0
- package/node_modules/@media-editor/core/dist/engine.d.ts +359 -0
- package/node_modules/@media-editor/core/dist/engine.js +315 -0
- package/node_modules/@media-editor/core/dist/engine.js.map +1 -0
- package/node_modules/@media-editor/core/dist/filerobot.cjs +818 -0
- package/node_modules/@media-editor/core/dist/filerobot.cjs.map +1 -0
- package/node_modules/@media-editor/core/dist/filerobot.d.cts +88 -0
- package/node_modules/@media-editor/core/dist/filerobot.d.ts +88 -0
- package/node_modules/@media-editor/core/dist/filerobot.js +473 -0
- package/node_modules/@media-editor/core/dist/filerobot.js.map +1 -0
- package/node_modules/@media-editor/core/dist/index.cjs +1276 -0
- package/node_modules/@media-editor/core/dist/index.cjs.map +1 -0
- package/node_modules/@media-editor/core/dist/index.d.cts +242 -0
- package/node_modules/@media-editor/core/dist/index.d.ts +264 -0
- package/node_modules/@media-editor/core/dist/index.js +682 -0
- package/node_modules/@media-editor/core/dist/index.js.map +1 -0
- package/node_modules/@media-editor/core/dist/platform-presets-B-o4C6uY.d.cts +80 -0
- package/node_modules/@media-editor/core/dist/platform-presets-B-o4C6uY.d.ts +80 -0
- package/node_modules/@media-editor/core/dist/state-B85vkf7_.d.cts +936 -0
- package/node_modules/@media-editor/core/dist/state-B85vkf7_.d.ts +1027 -0
- package/node_modules/@media-editor/core/node_modules/zod/LICENSE +21 -0
- package/node_modules/@media-editor/core/node_modules/zod/README.md +208 -0
- package/node_modules/@media-editor/core/node_modules/zod/index.cjs +33 -0
- package/node_modules/@media-editor/core/node_modules/zod/index.d.cts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/index.d.ts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/index.js +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/package.json +118 -0
- package/node_modules/@media-editor/core/node_modules/zod/v3/ZodError.cjs +138 -0
- package/node_modules/@media-editor/core/node_modules/zod/v3/ZodError.d.cts +164 -0
- package/node_modules/@media-editor/core/node_modules/zod/v3/ZodError.d.ts +164 -0
- package/node_modules/@media-editor/core/node_modules/zod/v3/ZodError.js +133 -0
- package/node_modules/@media-editor/core/node_modules/zod/v3/errors.cjs +17 -0
- package/node_modules/@media-editor/core/node_modules/zod/v3/errors.d.cts +5 -0
- package/node_modules/@media-editor/core/node_modules/zod/v3/errors.d.ts +5 -0
- package/node_modules/@media-editor/core/node_modules/zod/v3/errors.js +9 -0
- package/node_modules/@media-editor/core/node_modules/zod/v3/external.cjs +22 -0
- package/node_modules/@media-editor/core/node_modules/zod/v3/external.d.cts +6 -0
- package/node_modules/@media-editor/core/node_modules/zod/v3/external.d.ts +6 -0
- package/node_modules/@media-editor/core/node_modules/zod/v3/external.js +6 -0
- package/node_modules/@media-editor/core/node_modules/zod/v3/helpers/enumUtil.cjs +2 -0
- package/node_modules/@media-editor/core/node_modules/zod/v3/helpers/enumUtil.d.cts +8 -0
- package/node_modules/@media-editor/core/node_modules/zod/v3/helpers/enumUtil.d.ts +8 -0
- package/node_modules/@media-editor/core/node_modules/zod/v3/helpers/enumUtil.js +1 -0
- package/node_modules/@media-editor/core/node_modules/zod/v3/helpers/errorUtil.cjs +9 -0
- package/node_modules/@media-editor/core/node_modules/zod/v3/helpers/errorUtil.d.cts +9 -0
- package/node_modules/@media-editor/core/node_modules/zod/v3/helpers/errorUtil.d.ts +9 -0
- package/node_modules/@media-editor/core/node_modules/zod/v3/helpers/errorUtil.js +6 -0
- package/node_modules/@media-editor/core/node_modules/zod/v3/helpers/parseUtil.cjs +124 -0
- package/node_modules/@media-editor/core/node_modules/zod/v3/helpers/parseUtil.d.cts +78 -0
- package/node_modules/@media-editor/core/node_modules/zod/v3/helpers/parseUtil.d.ts +78 -0
- package/node_modules/@media-editor/core/node_modules/zod/v3/helpers/parseUtil.js +109 -0
- package/node_modules/@media-editor/core/node_modules/zod/v3/helpers/partialUtil.cjs +2 -0
- package/node_modules/@media-editor/core/node_modules/zod/v3/helpers/partialUtil.d.cts +8 -0
- package/node_modules/@media-editor/core/node_modules/zod/v3/helpers/partialUtil.d.ts +8 -0
- package/node_modules/@media-editor/core/node_modules/zod/v3/helpers/partialUtil.js +1 -0
- package/node_modules/@media-editor/core/node_modules/zod/v3/helpers/typeAliases.cjs +2 -0
- package/node_modules/@media-editor/core/node_modules/zod/v3/helpers/typeAliases.d.cts +2 -0
- package/node_modules/@media-editor/core/node_modules/zod/v3/helpers/typeAliases.d.ts +2 -0
- package/node_modules/@media-editor/core/node_modules/zod/v3/helpers/typeAliases.js +1 -0
- package/node_modules/@media-editor/core/node_modules/zod/v3/helpers/util.cjs +137 -0
- package/node_modules/@media-editor/core/node_modules/zod/v3/helpers/util.d.cts +85 -0
- package/node_modules/@media-editor/core/node_modules/zod/v3/helpers/util.d.ts +85 -0
- package/node_modules/@media-editor/core/node_modules/zod/v3/helpers/util.js +133 -0
- package/node_modules/@media-editor/core/node_modules/zod/v3/index.cjs +33 -0
- package/node_modules/@media-editor/core/node_modules/zod/v3/index.d.cts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v3/index.d.ts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v3/index.js +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v3/locales/en.cjs +111 -0
- package/node_modules/@media-editor/core/node_modules/zod/v3/locales/en.d.cts +3 -0
- package/node_modules/@media-editor/core/node_modules/zod/v3/locales/en.d.ts +3 -0
- package/node_modules/@media-editor/core/node_modules/zod/v3/locales/en.js +109 -0
- package/node_modules/@media-editor/core/node_modules/zod/v3/standard-schema.cjs +2 -0
- package/node_modules/@media-editor/core/node_modules/zod/v3/standard-schema.d.cts +102 -0
- package/node_modules/@media-editor/core/node_modules/zod/v3/standard-schema.d.ts +102 -0
- package/node_modules/@media-editor/core/node_modules/zod/v3/standard-schema.js +1 -0
- package/node_modules/@media-editor/core/node_modules/zod/v3/types.cjs +3775 -0
- package/node_modules/@media-editor/core/node_modules/zod/v3/types.d.cts +1031 -0
- package/node_modules/@media-editor/core/node_modules/zod/v3/types.d.ts +1031 -0
- package/node_modules/@media-editor/core/node_modules/zod/v3/types.js +3693 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/classic/checks.cjs +32 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/classic/checks.d.cts +1 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/classic/checks.d.ts +1 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/classic/checks.js +1 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/classic/coerce.cjs +47 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/classic/coerce.d.cts +17 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/classic/coerce.d.ts +17 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/classic/coerce.js +17 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/classic/compat.cjs +57 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/classic/compat.d.cts +46 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/classic/compat.d.ts +46 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/classic/compat.js +27 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/classic/errors.cjs +67 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/classic/errors.d.cts +30 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/classic/errors.d.ts +30 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/classic/errors.js +41 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/classic/external.cjs +70 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/classic/external.d.cts +13 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/classic/external.d.ts +13 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/classic/external.js +18 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/classic/index.cjs +33 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/classic/index.d.cts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/classic/index.d.ts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/classic/index.js +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/classic/iso.cjs +60 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/classic/iso.d.cts +22 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/classic/iso.d.ts +22 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/classic/iso.js +30 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/classic/parse.cjs +32 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/classic/parse.d.cts +23 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/classic/parse.d.ts +23 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/classic/parse.js +6 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/classic/schemas.cjs +1109 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/classic/schemas.d.cts +630 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/classic/schemas.d.ts +630 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/classic/schemas.js +1006 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/core/api.cjs +1039 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/core/api.d.cts +284 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/core/api.d.ts +284 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/core/api.js +906 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/core/checks.cjs +591 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/core/checks.d.cts +278 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/core/checks.d.ts +278 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/core/checks.js +565 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/core/core.cjs +67 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/core/core.d.cts +49 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/core/core.d.ts +49 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/core/core.js +61 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/core/doc.cjs +39 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/core/doc.d.cts +14 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/core/doc.d.ts +14 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/core/doc.js +35 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/core/errors.cjs +226 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/core/errors.d.cts +208 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/core/errors.d.ts +208 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/core/errors.js +195 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/core/function.cjs +102 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/core/function.d.cts +52 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/core/function.d.ts +52 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/core/function.js +75 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/core/index.cjs +44 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/core/index.d.cts +15 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/core/index.d.ts +15 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/core/index.js +15 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/core/json-schema.cjs +2 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/core/json-schema.d.cts +87 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/core/json-schema.d.ts +87 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/core/json-schema.js +1 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/core/parse.cjs +87 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/core/parse.d.cts +25 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/core/parse.d.ts +25 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/core/parse.js +57 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/core/regexes.cjs +103 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/core/regexes.d.cts +62 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/core/regexes.d.ts +62 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/core/regexes.js +95 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/core/registries.cjs +56 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/core/registries.d.cts +35 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/core/registries.d.ts +35 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/core/registries.js +51 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/core/schemas.cjs +1748 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/core/schemas.d.cts +1041 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/core/schemas.d.ts +1041 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/core/schemas.js +1717 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/core/standard-schema.cjs +2 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/core/standard-schema.d.cts +55 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/core/standard-schema.d.ts +55 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/core/standard-schema.js +1 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/core/to-json-schema.cjs +854 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/core/to-json-schema.d.cts +88 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/core/to-json-schema.d.ts +88 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/core/to-json-schema.js +849 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/core/util.cjs +539 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/core/util.d.cts +183 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/core/util.d.ts +183 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/core/util.js +493 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/core/versions.cjs +8 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/core/versions.d.cts +5 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/core/versions.d.ts +5 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/core/versions.js +5 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/index.cjs +22 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/index.d.cts +3 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/index.d.ts +3 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/index.js +3 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ar.cjs +142 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ar.d.cts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ar.d.ts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ar.js +116 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/az.cjs +141 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/az.d.cts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/az.d.ts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/az.js +115 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/be.cjs +190 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/be.d.cts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/be.d.ts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/be.js +164 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ca.cjs +144 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ca.d.cts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ca.d.ts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ca.js +118 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/cs.cjs +161 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/cs.d.cts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/cs.d.ts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/cs.js +135 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/de.cjs +142 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/de.d.cts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/de.d.ts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/de.js +116 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/en.cjs +145 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/en.d.cts +5 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/en.d.ts +5 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/en.js +117 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/eo.cjs +144 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/eo.d.cts +5 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/eo.d.ts +5 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/eo.js +116 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/es.cjs +143 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/es.d.cts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/es.d.ts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/es.js +117 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/fa.cjs +148 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/fa.d.cts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/fa.d.ts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/fa.js +122 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/fi.cjs +148 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/fi.d.cts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/fi.d.ts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/fi.js +122 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/fr-CA.cjs +143 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/fr-CA.d.cts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/fr-CA.d.ts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/fr-CA.js +117 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/fr.cjs +142 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/fr.d.cts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/fr.d.ts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/fr.js +116 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/he.cjs +143 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/he.d.cts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/he.d.ts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/he.js +117 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/hu.cjs +143 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/hu.d.cts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/hu.d.ts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/hu.js +117 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/id.cjs +142 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/id.d.cts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/id.d.ts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/id.js +116 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/index.cjs +84 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/index.d.cts +39 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/index.d.ts +39 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/index.js +39 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/it.cjs +143 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/it.d.cts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/it.d.ts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/it.js +117 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ja.cjs +141 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ja.d.cts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ja.d.ts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ja.js +115 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/kh.cjs +143 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/kh.d.cts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/kh.d.ts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/kh.js +117 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ko.cjs +147 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ko.d.cts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ko.d.ts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ko.js +121 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/mk.cjs +144 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/mk.d.cts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/mk.d.ts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/mk.js +118 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ms.cjs +142 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ms.d.cts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ms.d.ts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ms.js +116 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/nl.cjs +143 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/nl.d.cts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/nl.d.ts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/nl.js +117 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/no.cjs +142 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/no.d.cts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/no.d.ts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/no.js +116 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ota.cjs +143 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ota.d.cts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ota.d.ts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ota.js +117 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/pl.cjs +143 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/pl.d.cts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/pl.d.ts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/pl.js +117 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ps.cjs +148 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ps.d.cts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ps.d.ts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ps.js +122 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/pt.cjs +142 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/pt.d.cts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/pt.d.ts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/pt.js +116 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ru.cjs +190 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ru.d.cts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ru.d.ts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ru.js +164 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/sl.cjs +143 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/sl.d.cts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/sl.d.ts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/sl.js +117 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/sv.cjs +144 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/sv.d.cts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/sv.d.ts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/sv.js +118 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ta.cjs +143 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ta.d.cts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ta.d.ts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ta.js +117 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/th.cjs +143 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/th.d.cts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/th.d.ts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/th.js +117 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/tr.cjs +143 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/tr.d.cts +5 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/tr.d.ts +5 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/tr.js +115 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ua.cjs +143 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ua.d.cts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ua.d.ts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ua.js +117 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ur.cjs +143 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ur.d.cts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ur.d.ts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/ur.js +117 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/vi.cjs +142 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/vi.d.cts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/vi.d.ts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/vi.js +116 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/zh-CN.cjs +142 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/zh-CN.d.cts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/zh-CN.d.ts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/zh-CN.js +116 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/zh-TW.cjs +143 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/zh-TW.d.cts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/zh-TW.d.ts +4 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/locales/zh-TW.js +117 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/mini/checks.cjs +34 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/mini/checks.d.cts +1 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/mini/checks.d.ts +1 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/mini/checks.js +1 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/mini/coerce.cjs +47 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/mini/coerce.d.cts +7 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/mini/coerce.d.ts +7 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/mini/coerce.js +17 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/mini/external.cjs +62 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/mini/external.d.cts +11 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/mini/external.d.ts +11 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/mini/external.js +13 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/mini/index.cjs +32 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/mini/index.d.cts +3 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/mini/index.d.ts +3 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/mini/index.js +3 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/mini/iso.cjs +60 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/mini/iso.d.cts +22 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/mini/iso.d.ts +22 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/mini/iso.js +30 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/mini/parse.cjs +8 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/mini/parse.d.cts +1 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/mini/parse.d.ts +1 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/mini/parse.js +1 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/mini/schemas.cjs +839 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/mini/schemas.d.cts +356 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/mini/schemas.d.ts +356 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4/mini/schemas.js +732 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4-mini/index.cjs +17 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4-mini/index.d.cts +1 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4-mini/index.d.ts +1 -0
- package/node_modules/@media-editor/core/node_modules/zod/v4-mini/index.js +1 -0
- package/node_modules/@media-editor/core/package.json +42 -0
- package/node_modules/@media-editor/image/LICENSE +21 -0
- package/node_modules/@media-editor/image/README.md +48 -0
- package/node_modules/@media-editor/image/dist/chunk-5TBO732O.js +1 -0
- package/node_modules/@media-editor/image/dist/index-CU3vkvDR.d.ts +44 -0
- package/node_modules/@media-editor/image/dist/index.css +1 -0
- package/node_modules/@media-editor/image/dist/index.d.ts +2 -0
- package/node_modules/@media-editor/image/dist/index.js +364 -0
- package/node_modules/@media-editor/image/dist/lazy.css +1 -0
- package/node_modules/@media-editor/image/dist/lazy.d.ts +8 -0
- package/node_modules/@media-editor/image/dist/lazy.js +1 -0
- package/node_modules/@media-editor/image/package.json +29 -0
- package/node_modules/@media-editor/video/LICENSE +21 -0
- package/node_modules/@media-editor/video/README.md +55 -0
- package/node_modules/@media-editor/video/dist/chunk-EK7ODJWE.js +1 -0
- package/node_modules/@media-editor/video/dist/index-CX2iAapm.d.ts +51 -0
- package/node_modules/@media-editor/video/dist/index.d.ts +4 -0
- package/node_modules/@media-editor/video/dist/index.js +16919 -0
- package/node_modules/@media-editor/video/dist/lazy.d.ts +10 -0
- package/node_modules/@media-editor/video/dist/lazy.js +1 -0
- package/node_modules/@media-editor/video/dist/legacy.js +65 -0
- package/node_modules/@media-editor/video/package.json +29 -0
- package/package.json +48 -0
- package/style.css +1 -0
- package/theme.css +1214 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/i18n.ts","../src/platform-table.ts","../src/platform-presets.ts","../src/filerobot-annotation.ts","../src/filerobot.ts"],"names":[],"mappings":"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AAA,EAAG,QAAA;AAAA,EAAK,MAAA,EAAG,QAAA;AAAA,EAAK,MAAA,EAAG,QAAA;AAAA,EAAK,MAAA,EAAG,QAAA;AAAA,EAAK,MAAA,EAAG,QAAA;AAAA,EAAK,MAAA,EAAG,QAAA;AAAA,EAAK,MAAA,EAAG,QAAA;AAAA,EAC3D,MAAA,EAAG,QAAA;AAAA,EAAK,MAAA,EAAG,QAAA;AAAA,EAAK,MAAA,EAAG,QAAA;AAAA,EAAK,MAAA,EAAG,QAAA;AAAA,EAAK,MAAA,EAAG,QAAA;AAAA,EAAK,MAAA,EAAG,QAAA;AAAA,EAAK,MAAA,EAAG,QAAA;AAAA,EAAK,MAAA,EAAG,QAAA;AAAA,EAC3D,MAAA,EAAG,QAAA;AAAA,EAAK,MAAA,EAAG,QAAA;AAAA,EAAK,MAAA,EAAG,QAAA;AAAA,EAAK,MAAA,EAAG,QAAA;AAAA,EAAK,MAAA,EAAG,QAAA;AAAA,EAAK,MAAA,EAAG,QAAA;AAAA,EAAK,MAAA,EAAG,QAAA;AAAA,EAAK,MAAA,EAAG,QAAA;AAAA,EAC3D,MAAA,EAAG,QAAA;AAAA,EAAK,MAAA,EAAG,QAAA;AAAA,EAAK,MAAA,EAAG,QAAA;AAAA,EAAK,MAAA,EAAG,QAAA;AAAA,EAAK,MAAA,EAAG,QAAA;AAAA,EAAK,MAAA,EAAG,QAAA;AAAA,EAAK,MAAA,EAAG,QAAA;AAAA,EAAK,MAAA,EAAG,QAAA;AAAA,EAC3D,MAAA,EAAG,QAAA;AAAA,EAAK,MAAA,EAAG,QAAA;AAAA,EAAK,MAAA,EAAG,QAAA;AAAA,EAAK,MAAA,EAAG,QAAA;AAAA,EAAK,MAAA,EAAG,QAAA;AAAA,EAAK,MAAA,EAAG,QAAA;AAAA,EAAK,MAAA,EAAG,QAAA;AAAA,EAAK,MAAA,EAAG,QAAA;AAAA,EAC3D,MAAA,EAAG,QAAA;AAAA,EAAK,MAAA,EAAG,QAAA;AAAA,EAAK,MAAA,EAAG,QAAA;AAAA,EAAK,MAAA,EAAG,QAAA;AAAA,EAAK,MAAA,EAAG,QAAA;AAAA,EAAK,MAAA,EAAG,QAAA;AAAA,EAAK,MAAA,EAAG,QAAA;AAAA,EAAK,MAAA,EAAG,QAAA;AAAA,EAC3D,MAAA,EAAG,QAAA;AAAA,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","file":"filerobot.cjs","sourcesContent":["/**\n * editor-core/i18n —— 编辑器文案字典(纯 TS,零框架依赖,Vue/React 壳共用)。\n * key 规约(domain 扁平):tool.* tune.* overlay.* filter.* ratio.* act.* err.* tip.* msg.* lbl.* panel.* poster.* crop.*\n * 插值:{name} 形式,tEditor 第三参传值。\n * 单测保证所有 locale key 集合一致(Filerobot 内核覆盖键不在此,见 ImageEditor 的 FIE_* translations)。\n */\n\nexport type EditorLocale = 'zh' | 'en' | 'es' | 'zh-Hant';\n\nconst zh: Record<string, string> = {\n // 工具卡\n 'tool.trim': '剪辑',\n 'tool.crop': '裁剪',\n 'tool.tune': '调色',\n 'tool.filter': '滤镜',\n 'tool.annotate': '标注',\n 'tool.sticker': '贴纸',\n 'tool.resize': '比例',\n // 调色项\n 'tune.brightness': '亮度',\n 'tune.contrast': '对比',\n 'tune.saturation': '饱和',\n 'tune.gamma': 'Gamma',\n // 标注工具\n 'overlay.select': '选择',\n 'overlay.pen': '画笔',\n 'overlay.eraser': '橡皮',\n 'overlay.line': '直线',\n 'overlay.arrow': '箭头',\n 'overlay.rect': '矩形',\n 'overlay.ellipse': '椭圆',\n 'overlay.text': '文字',\n 'overlay.color': '线色',\n 'overlay.width': '线宽',\n 'overlay.copySelected': '复制',\n 'overlay.delSelected': '删除选中',\n 'overlay.editSelected': '编辑',\n 'overlay.pickImage': '选择图片',\n 'overlay.hint': '点 emoji/图片添加 → 画布上拖动摆位,拖右下角紫色把手缩放',\n 'overlay.textPlaceholder': '输入文字,回车确认',\n // 滤镜预设\n 'filter.none': '原图',\n 'filter.bw': '黑白',\n 'filter.sepia': '复古',\n 'filter.warm': '暖阳',\n 'filter.cool': '冷调',\n 'filter.vivid': '鲜艳',\n // 比例\n 'ratio.orig': '原始',\n 'ratio.free': '自由比例',\n 'ratio.9:16': '竖屏 9:16',\n 'ratio.16:9': '横屏 16:9',\n 'ratio.1:1': '方形 1:1',\n 'ratio.4:5': '竖图 4:5',\n // 动作\n 'act.fit': '适应',\n 'act.zoomFit': '缩放至适当大小',\n 'act.zoomTo': '缩放至 {value}%',\n 'act.split': '分割',\n 'act.copy': '复制',\n 'act.delete': '删除',\n 'act.restore': '还原',\n 'act.deleteMusic': '删除音乐',\n 'act.cancel': '取消',\n 'act.exportPoster': '导出封面',\n 'act.exporting': '导出中…',\n 'act.poster': '🖼 封面',\n 'act.again': '再次下载',\n 'act.saveDrive': '存网盘',\n 'act.changeImage': '← 换一张',\n 'act.changeVideo': '← 换一个',\n 'crop.rotateLeft': '↺ 向左旋转',\n 'crop.flipX': '⇋ 水平翻转',\n 'crop.flipY': '⇵ 垂直翻转',\n 'crop.rotateLeftShort': '左转',\n 'crop.flipXShort': '横翻',\n 'crop.flipYShort': '竖翻',\n // 提示(title)\n 'tip.close': '关闭(换文件)',\n 'tip.undo': '撤销',\n 'tip.redo': '重做',\n 'tip.resetOpened': '重置到打开文件时',\n 'tip.previewZoom': '预览缩放比例',\n 'tip.previewZoomOut': '缩小预览',\n 'tip.previewZoomIn': '放大预览',\n 'tip.previewZoomFit': '适应预览',\n 'tip.previewPointer': '指针工具',\n 'tip.previewPan': '手工具:拖动画面',\n 'tip.poster': '预览并选择封面帧',\n 'tip.keepAudio': '原视频声音开关(与音乐混音;预览同步)',\n 'tip.split': '在播放头处把当前片段一分为二',\n 'tip.zoomOut': '缩小时间轴(Ctrl+滚轮)',\n 'tip.zoomIn': '放大时间轴(Ctrl+滚轮)',\n 'tip.fit': '缩放到适应宽度',\n 'tip.addVideo': '添加视频片段',\n 'tip.addAudio': '添加音乐(音频文件,或选含声音的视频自动提取音轨;与原声混音)',\n 'tip.dupClip': '复制该片段(插到其后)',\n 'tip.delClip': '删除该片段',\n 'tip.lockAspect': '锁定纵横比',\n 'tip.dblConfirm': '双击确认裁剪',\n // 错误\n 'err.notVideo': '请选择视频文件',\n 'err.maxVideo': '最多 {max} 个视频素材',\n 'err.videoLoad': '视频加载失败,请换一个文件',\n 'err.notAudio': '请选择音频文件(mp3/wav/m4a),或含声音的视频(自动提取音轨)',\n 'err.maxAudio': '最多 {max} 个音频素材',\n 'err.audioLoad': '音频加载失败,请换一个文件',\n 'err.processFailed': '处理失败',\n 'err.posterFailed': '封面渲染失败',\n 'err.canvas': 'canvas 不可用',\n 'err.imageRead': '图片读取失败,请换一张',\n 'err.notImage': '请选择图片文件',\n 'err.fileType': '只支持图片或视频文件',\n 'err.saveDrive': '存网盘失败',\n // 状态\n 'msg.processing': '正在导出中…',\n 'msg.exportingHint': '请稍候,导出完成后会自动返回结果。',\n 'msg.done': '完成 ✓',\n 'msg.loading': '素材加载中…',\n 'msg.exported': '已导出:',\n 'msg.saving': '存网盘中…',\n 'msg.saved': '已存到网盘 ✓',\n // 视频视图文案\n 'lbl.ratioSection': '画面比例(裁剪,不变形)',\n 'lbl.dragToReposition': '↔ 拖动预览可调整裁剪位置',\n 'lbl.sizeSection': '导出尺寸(像素;比例不符时 cover 居中裁剪)',\n 'lbl.currentOut': '当前输出',\n 'lbl.zoomSize': '大小',\n 'lbl.noScale': '(未缩放)',\n 'lbl.coverNote': '· 比例不一致时居中裁剪(cover),不变形',\n 'lbl.audioTrackHint': '♪ 音频轨(右侧 + 添加音乐,与原声混音)',\n 'lbl.volume': '音量',\n 'lbl.volNote': '(预览最大 100%,导出按设定值)',\n 'lbl.music': '音乐',\n 'kbd.fit': '⇧ F',\n // 封面弹层\n 'poster.title': '选择封面帧',\n // 面板层\n 'panel.title': '媒体编辑器',\n 'panel.subtitle': '上传图片 / 视频,裁剪 · 滤镜 · 文字 · 导出',\n 'panel.pick': '点击选择图片或视频',\n 'panel.pickHint': '图片用 Filerobot · 视频可裁剪/静音/封面',\n};\n\nconst en: Record<string, string> = {\n 'tool.trim': 'Trim',\n 'tool.crop': 'Crop',\n 'tool.tune': 'Tune',\n 'tool.filter': 'Filters',\n 'tool.annotate': 'Annotate',\n 'tool.sticker': 'Stickers',\n 'tool.resize': 'Ratio',\n 'tune.brightness': 'Brightness',\n 'tune.contrast': 'Contrast',\n 'tune.saturation': 'Saturation',\n 'tune.gamma': 'Gamma',\n 'overlay.select': 'Select',\n 'overlay.pen': 'Pen',\n 'overlay.eraser': 'Eraser',\n 'overlay.line': 'Line',\n 'overlay.arrow': 'Arrow',\n 'overlay.rect': 'Rect',\n 'overlay.ellipse': 'Ellipse',\n 'overlay.text': 'Text',\n 'overlay.color': 'Color',\n 'overlay.width': 'Width',\n 'overlay.copySelected': 'Copy',\n 'overlay.delSelected': 'Delete selected',\n 'overlay.editSelected': 'Edit',\n 'overlay.pickImage': 'Pick image',\n 'overlay.hint': 'Tap emoji/image to add → drag to place, drag the purple corner handle to scale',\n 'overlay.textPlaceholder': 'Type text, Enter to confirm',\n 'filter.none': 'Original',\n 'filter.bw': 'B&W',\n 'filter.sepia': 'Sepia',\n 'filter.warm': 'Warm',\n 'filter.cool': 'Cool',\n 'filter.vivid': 'Vivid',\n 'ratio.orig': 'Original',\n 'ratio.free': 'Free ratio',\n 'ratio.9:16': 'Portrait 9:16',\n 'ratio.16:9': 'Landscape 16:9',\n 'ratio.1:1': 'Square 1:1',\n 'ratio.4:5': 'Vertical 4:5',\n 'act.fit': 'Fit',\n 'act.zoomFit': 'Zoom to fit',\n 'act.zoomTo': 'Zoom to {value}%',\n 'act.split': 'Split',\n 'act.copy': 'Copy',\n 'act.delete': 'Delete',\n 'act.restore': 'Reset',\n 'act.deleteMusic': 'Remove music',\n 'act.cancel': 'Cancel',\n 'act.exportPoster': 'Export cover',\n 'act.exporting': 'Exporting…',\n 'act.poster': '🖼 Cover',\n 'act.again': 'Download again',\n 'act.saveDrive': 'Save to drive',\n 'act.changeImage': '← Change image',\n 'act.changeVideo': '← Change file',\n 'crop.rotateLeft': '↺ Rotate left',\n 'crop.flipX': '⇋ Flip horizontal',\n 'crop.flipY': '⇵ Flip vertical',\n 'crop.rotateLeftShort': 'Rot',\n 'crop.flipXShort': 'Flip',\n 'crop.flipYShort': 'Flip',\n 'tip.close': 'Close (change file)',\n 'tip.undo': 'Undo',\n 'tip.redo': 'Redo',\n 'tip.resetOpened': 'Reset to opened file',\n 'tip.previewZoom': 'Preview zoom',\n 'tip.previewZoomOut': 'Zoom out preview',\n 'tip.previewZoomIn': 'Zoom in preview',\n 'tip.previewZoomFit': 'Fit preview',\n 'tip.previewPointer': 'Pointer tool',\n 'tip.previewPan': 'Hand tool: pan canvas',\n 'tip.poster': 'Preview and pick a cover frame',\n 'tip.keepAudio': 'Original audio on/off (mixed with music; preview follows)',\n 'tip.split': 'Split the current clip at the playhead',\n 'tip.zoomOut': 'Zoom out timeline (Ctrl+wheel)',\n 'tip.zoomIn': 'Zoom in timeline (Ctrl+wheel)',\n 'tip.fit': 'Fit to width',\n 'tip.addVideo': 'Add video clip',\n 'tip.addAudio': 'Add music (audio file, or a video with sound to extract its track; mixed with original)',\n 'tip.dupClip': 'Duplicate clip (insert after)',\n 'tip.delClip': 'Delete clip',\n 'tip.lockAspect': 'Lock aspect ratio',\n 'tip.dblConfirm': 'Double-click to confirm crop',\n 'err.notVideo': 'Please choose a video file',\n 'err.maxVideo': 'Up to {max} video sources',\n 'err.videoLoad': 'Failed to load video, try another file',\n 'err.notAudio': 'Choose an audio file (mp3/wav/m4a), or a video with sound (audio auto-extracted)',\n 'err.maxAudio': 'Up to {max} audio sources',\n 'err.audioLoad': 'Failed to load audio, try another file',\n 'err.processFailed': 'Processing failed',\n 'err.posterFailed': 'Failed to render cover',\n 'err.canvas': 'Canvas unavailable',\n 'err.imageRead': 'Failed to read image, try another',\n 'err.notImage': 'Please choose an image file',\n 'err.fileType': 'Only image or video files are supported',\n 'err.saveDrive': 'Failed to save to drive',\n 'msg.processing': 'Exporting…',\n 'msg.exportingHint': 'Please wait. The result will be returned automatically when export finishes.',\n 'msg.done': 'Done ✓',\n 'msg.loading': 'Loading media…',\n 'msg.exported': 'Exported: ',\n 'msg.saving': 'Saving…',\n 'msg.saved': 'Saved to drive ✓',\n 'lbl.ratioSection': 'Frame ratio (crop, no distortion)',\n 'lbl.dragToReposition': '↔ Drag the preview to reposition the crop',\n 'lbl.sizeSection': 'Export size (px; cover center-crop when ratios differ)',\n 'lbl.currentOut': 'Output',\n 'lbl.zoomSize': 'Size',\n 'lbl.noScale': '(no scaling)',\n 'lbl.coverNote': '· center-cropped (cover) when ratios differ, no distortion',\n 'lbl.audioTrackHint': '♪ Audio track (+ on the right to add music, mixed with original)',\n 'lbl.volume': 'Volume',\n 'lbl.volNote': '(preview caps at 100%, export uses the set value)',\n 'lbl.music': 'Music',\n 'kbd.fit': '⇧ F',\n 'poster.title': 'Pick a cover frame',\n 'panel.title': 'Media Editor',\n 'panel.subtitle': 'Upload an image / video — crop · filters · text · export',\n 'panel.pick': 'Click to choose an image or video',\n 'panel.pickHint': 'Images via Filerobot · videos: trim/mute/cover',\n};\n\nconst es: Record<string, string> = {\n 'tool.trim': 'Editar',\n 'tool.crop': 'Recortar',\n 'tool.tune': 'Ajustar color',\n 'tool.filter': 'Filtros',\n 'tool.annotate': 'Anotar',\n 'tool.sticker': 'Stickers',\n 'tool.resize': 'Proporción',\n 'tune.brightness': 'Brillo',\n 'tune.contrast': 'Contraste',\n 'tune.saturation': 'Saturación',\n 'tune.gamma': 'Gamma',\n 'overlay.select': 'Seleccionar',\n 'overlay.pen': 'Pincel',\n 'overlay.eraser': 'Borrador',\n 'overlay.line': 'Línea',\n 'overlay.arrow': 'Flecha',\n 'overlay.rect': 'Rectángulo',\n 'overlay.ellipse': 'Elipse',\n 'overlay.text': 'Texto',\n 'overlay.color': 'Color',\n 'overlay.width': 'Grosor',\n 'overlay.copySelected': 'Copiar',\n 'overlay.delSelected': 'Eliminar seleccionado',\n 'overlay.editSelected': 'Editar',\n 'overlay.pickImage': 'Elegir imagen',\n 'overlay.hint': 'Toca un emoji/imagen para añadirlo → arrastra para colocarlo, arrastra el tirador morado para escalar',\n 'overlay.textPlaceholder': 'Escribe texto, Enter para confirmar',\n 'filter.none': 'Original',\n 'filter.bw': 'Blanco y negro',\n 'filter.sepia': 'Sepia',\n 'filter.warm': 'Cálido',\n 'filter.cool': 'Frío',\n 'filter.vivid': 'Intenso',\n 'ratio.orig': 'Original',\n 'ratio.free': 'Libre',\n 'ratio.9:16': 'Vertical 9:16',\n 'ratio.16:9': 'Horizontal 16:9',\n 'ratio.1:1': 'Cuadrado 1:1',\n 'ratio.4:5': 'Vertical 4:5',\n 'act.fit': 'Ajustar',\n 'act.zoomFit': 'Ajustar a pantalla',\n 'act.zoomTo': 'Zoom al {value}%',\n 'act.split': 'Dividir',\n 'act.copy': 'Copiar',\n 'act.delete': 'Eliminar',\n 'act.restore': 'Restablecer',\n 'act.deleteMusic': 'Quitar música',\n 'act.cancel': 'Cancelar',\n 'act.exportPoster': 'Exportar portada',\n 'act.exporting': 'Exportando…',\n 'act.poster': '🖼 Portada',\n 'act.again': 'Descargar de nuevo',\n 'act.saveDrive': 'Guardar en disco',\n 'act.changeImage': '← Cambiar imagen',\n 'act.changeVideo': '← Cambiar archivo',\n 'crop.rotateLeft': '↺ Girar a la izquierda',\n 'crop.flipX': '⇋ Voltear horizontal',\n 'crop.flipY': '⇵ Voltear vertical',\n 'crop.rotateLeftShort': 'Giro',\n 'crop.flipXShort': 'Flip',\n 'crop.flipYShort': 'Flip',\n 'tip.close': 'Cerrar (cambiar archivo)',\n 'tip.undo': 'Deshacer',\n 'tip.redo': 'Rehacer',\n 'tip.resetOpened': 'Restablecer al archivo abierto',\n 'tip.previewZoom': 'Zoom de vista previa',\n 'tip.previewZoomOut': 'Reducir vista previa',\n 'tip.previewZoomIn': 'Ampliar vista previa',\n 'tip.previewZoomFit': 'Ajustar vista previa',\n 'tip.previewPointer': 'Herramienta de puntero',\n 'tip.previewPan': 'Mano: desplazar lienzo',\n 'tip.poster': 'Previsualizar y elegir portada',\n 'tip.keepAudio': 'Activar/desactivar audio original (mezclado con música; la vista previa lo refleja)',\n 'tip.split': 'Dividir el clip actual en el cursor',\n 'tip.zoomOut': 'Reducir línea de tiempo (Ctrl+rueda)',\n 'tip.zoomIn': 'Ampliar línea de tiempo (Ctrl+rueda)',\n 'tip.fit': 'Ajustar al ancho',\n 'tip.addVideo': 'Añadir clip de vídeo',\n 'tip.addAudio': 'Añadir música (archivo de audio o vídeo con sonido para extraer la pista; se mezcla con el original)',\n 'tip.dupClip': 'Duplicar clip (insertar después)',\n 'tip.delClip': 'Eliminar clip',\n 'tip.lockAspect': 'Bloquear proporción',\n 'tip.dblConfirm': 'Doble clic para confirmar recorte',\n 'err.notVideo': 'Elige un archivo de vídeo',\n 'err.maxVideo': 'Máximo {max} vídeos',\n 'err.videoLoad': 'No se pudo cargar el vídeo, prueba con otro archivo',\n 'err.notAudio': 'Elige un audio (mp3/wav/m4a) o un vídeo con sonido (se extrae automáticamente)',\n 'err.maxAudio': 'Máximo {max} audios',\n 'err.audioLoad': 'No se pudo cargar el audio, prueba con otro archivo',\n 'err.processFailed': 'Error de procesamiento',\n 'err.posterFailed': 'No se pudo renderizar la portada',\n 'err.canvas': 'Canvas no disponible',\n 'err.imageRead': 'No se pudo leer la imagen, prueba con otra',\n 'err.notImage': 'Elige un archivo de imagen',\n 'err.fileType': 'Solo se admiten archivos de imagen o vídeo',\n 'err.saveDrive': 'No se pudo guardar en disco',\n 'msg.processing': 'Exportando…',\n 'msg.exportingHint': 'Espera un momento. El resultado se devolverá automáticamente al finalizar.',\n 'msg.done': 'Listo ✓',\n 'msg.loading': 'Cargando medios…',\n 'msg.exported': 'Exportado: ',\n 'msg.saving': 'Guardando…',\n 'msg.saved': 'Guardado en disco ✓',\n 'lbl.ratioSection': 'Proporción de imagen (recorte, sin deformar)',\n 'lbl.dragToReposition': '↔ Arrastra la vista previa para reposicionar el recorte',\n 'lbl.sizeSection': 'Tamaño de exportación (px; recorte cover centrado si la proporción difiere)',\n 'lbl.currentOut': 'Salida',\n 'lbl.zoomSize': 'Tamaño',\n 'lbl.noScale': '(sin escala)',\n 'lbl.coverNote': '· recorte centrado (cover) cuando la proporción difiere, sin deformar',\n 'lbl.audioTrackHint': '♪ Pista de audio (+ a la derecha para añadir música, mezclada con el original)',\n 'lbl.volume': 'Volumen',\n 'lbl.volNote': '(la vista previa limita a 100%, la exportación usa el valor definido)',\n 'lbl.music': 'Música',\n 'kbd.fit': '⇧ F',\n 'poster.title': 'Elegir portada',\n 'panel.title': 'Editor multimedia',\n 'panel.subtitle': 'Sube una imagen / vídeo — recorta · filtros · texto · exporta',\n 'panel.pick': 'Haz clic para elegir una imagen o vídeo',\n 'panel.pickHint': 'Imágenes con Filerobot · vídeos: cortar/silenciar/portada',\n};\n\nconst ZH_HANT_MAP: Record<string, string> = {\n 简: '簡', 体: '體', 图: '圖', 频: '頻', 视: '視', 辑: '輯', 调: '調', 滤: '濾',\n 标: '標', 注: '註', 贴: '貼', 选: '選', 择: '擇', 线: '線', 箭: '箭', 头: '頭',\n 复: '複', 删: '刪', 除: '除', 编: '編', 边: '邊', 输: '輸', 入: '入', 确: '確',\n 认: '認', 饱: '飽', 对: '對', 暖: '暖', 阳: '陽', 冷: '冷', 纵: '縱', 横: '橫',\n 适: '適', 应: '應', 缩: '縮', 实: '實', 际: '際', 导: '導', 出: '出', 封: '封',\n 面: '面', 换: '換', 张: '張', 预: '預', 览: '覽', 动: '動', 声: '聲', 开: '開',\n 关: '關', 与: '與', 乐: '樂', 混: '混', 处: '處', 载: '載', 错: '錯', 误: '誤',\n 读: '讀', 仅: '僅', 终: '終', 稍: '稍', 候: '候', 返回: '返回',\n 当前: '目前', 输出: '輸出', 画: '畫', 变: '變', 音频: '音訊', 音轨: '音軌',\n 添加: '新增', 删除: '刪除', 保存: '儲存', 加载: '載入', 网盘: '網盤',\n};\n\nexport const toHant = (value: string) => {\n let next = value;\n for (const [from, to] of Object.entries(ZH_HANT_MAP).sort((a, b) => b[0].length - a[0].length)) {\n next = next.replaceAll(from, to);\n }\n return next;\n};\n\nconst zhHant: Record<string, string> = Object.fromEntries(\n Object.entries(zh).map(([key, value]) => [key, toHant(value)]),\n) as Record<string, string>;\n\nexport const EDITOR_MESSAGES: Record<EditorLocale, Record<string, string>> = { zh, en, es, 'zh-Hant': zhHant };\n\n/** 取文案;缺 key 兜底显示 key 本身;{name} 插值 */\nexport function tEditor(locale: EditorLocale, key: string, vars?: Record<string, string | number>): string {\n let s = EDITOR_MESSAGES[locale]?.[key] ?? EDITOR_MESSAGES.zh[key] ?? key;\n if (vars) {\n for (const [k, v] of Object.entries(vars)) s = s.replaceAll(`{${k}}`, String(v));\n }\n return s;\n}\n","/**\n * 内置平台发布目标表(SDK 自带默认值)。\n * 原 SocialEcho 仓从 lib/ark-config.ts 的 PUBLISH_TARGETS 派生预设;为让 SDK 自包含、\n * 去掉对宿主 ark-config 的硬依赖,这里内置编辑器预设真正用到的字段子集(15 行)。\n * 宿主仍可调 buildPlatformPresets(自己的 targets) 注入,保持单一真值源。\n */\nexport interface PlatformTarget {\n platform: string; // 'tiktok'\n postType: string; // 'video' | 'post' | 'reels' | ...\n label: string; // 'TikTok Video'\n shortLabel: string; // 'TT·Video'\n ratio: string; // '9:16'\n imageSize: string; // '1440x2560'\n videoRatio?: string; // '9:16'\n videoResolution?: '720p' | '1080p';\n}\n\n/** 默认平台表(与原仓 PUBLISH_TARGETS 同步;升级宿主数据时复核) */\nexport const DEFAULT_PLATFORM_TARGETS: PlatformTarget[] = [\n { platform: 'tiktok', postType: 'video', label: 'TikTok Video', shortLabel: 'TT·Video', ratio: '9:16', imageSize: '1440x2560', videoRatio: '9:16', videoResolution: '720p' },\n { platform: 'instagram', postType: 'post', label: 'Instagram Post', shortLabel: 'IG·Post', ratio: '1:1', imageSize: '2048x2048' },\n { platform: 'instagram', postType: 'reels', label: 'Instagram Reels', shortLabel: 'IG·Reels', ratio: '9:16', imageSize: '1440x2560', videoRatio: '9:16', videoResolution: '720p' },\n { platform: 'instagram', postType: 'story', label: 'Instagram Story', shortLabel: 'IG·Story', ratio: '9:16', imageSize: '1440x2560', videoRatio: '9:16', videoResolution: '720p' },\n { platform: 'facebook', postType: 'post', label: 'Facebook Post', shortLabel: 'FB·Post', ratio: '1:1', imageSize: '2048x2048' },\n { platform: 'facebook', postType: 'reels', label: 'Facebook Reels', shortLabel: 'FB·Reels', ratio: '9:16', imageSize: '1440x2560', videoRatio: '9:16', videoResolution: '720p' },\n { platform: 'youtube', postType: 'video', label: 'YouTube Video', shortLabel: 'YT·Video', ratio: '16:9', imageSize: '2560x1440', videoRatio: '16:9', videoResolution: '1080p' },\n { platform: 'youtube', postType: 'shorts', label: 'YouTube Shorts', shortLabel: 'YT·Shorts', ratio: '9:16', imageSize: '1440x2560', videoRatio: '9:16', videoResolution: '720p' },\n { platform: 'pinterest', postType: 'pin', label: 'Pinterest Pin', shortLabel: 'PIN', ratio: '2:3', imageSize: '1664x2496', videoRatio: '9:16', videoResolution: '720p' },\n { platform: 'x', postType: 'post', label: 'X Post', shortLabel: 'X·Post', ratio: '16:9', imageSize: '2560x1440', videoRatio: '16:9', videoResolution: '720p' },\n { platform: 'linkedin', postType: 'post', label: 'LinkedIn Post', shortLabel: 'LI·Post', ratio: '1:1', imageSize: '2048x2048' },\n { platform: 'linkedin', postType: 'video', label: 'LinkedIn Video', shortLabel: 'LI·Video', ratio: '16:9', imageSize: '2560x1440', videoRatio: '16:9', videoResolution: '1080p' },\n { platform: 'threads', postType: 'post', label: 'Threads Post', shortLabel: 'TH·Post', ratio: '1:1', imageSize: '2048x2048' },\n { platform: 'telegram', postType: 'post', label: 'Telegram Post', shortLabel: 'TG·Post', ratio: '1:1', imageSize: '2048x2048', videoRatio: '9:16', videoResolution: '720p' },\n { platform: 'reddit', postType: 'post', label: 'Reddit Post', shortLabel: 'RD·Post', ratio: '16:9', imageSize: '2560x1440', videoRatio: '16:9', videoResolution: '720p' },\n];\n","/**\n * 编辑器「平台 → 可选裁剪比例 / 输出尺寸」预设。\n * 默认从内置 DEFAULT_PLATFORM_TARGETS 派生(SDK 自包含);\n * 宿主可调 buildImagePlatformPresets/buildVideoSizePresets 传入自己的目标表保持单一真值源。\n */\nimport { DEFAULT_PLATFORM_TARGETS, type PlatformTarget } from './platform-table';\n\nexport interface RatioPreset {\n ratio: string; // '9:16'\n value: number; // 9/16\n label: string; // '竖屏 9:16'\n}\n\nconst RATIO_LABEL: Record<string, string> = {\n '1:1': '方形 1:1',\n '4:5': '竖图 4:5',\n '3:4': '竖图 3:4',\n '9:16': '竖屏 9:16',\n '16:9': '横屏 16:9',\n '2:3': '竖图 2:3',\n '1.91:1': '横幅 1.91:1',\n};\n\nexport function parseRatio(r: string): number {\n const [w, h] = r.split(':').map(Number);\n if (!w || !h) return 1;\n return w / h;\n}\n\nfunction dedupePresets(ratios: string[]): RatioPreset[] {\n const seen = new Set<string>();\n const out: RatioPreset[] = [];\n for (const r of ratios) {\n if (!r || seen.has(r)) continue;\n seen.add(r);\n out.push({ ratio: r, value: parseRatio(r), label: RATIO_LABEL[r] ?? r });\n }\n return out;\n}\n\n/** 图片比例预设:精确 7 项(顺序即 UI 顺序) */\nexport const IMAGE_RATIO_PRESETS: RatioPreset[] = dedupePresets([\n '1:1', '4:5', '3:4', '2:3', '9:16', '16:9', '1.91:1',\n]);\n\n/** 视频比例预设:精确 4 项(顺序即 UI 顺序) */\nexport const VIDEO_RATIO_PRESETS: RatioPreset[] = dedupePresets([\n '9:16', '16:9', '1:1', '4:5',\n]);\n\nexport interface VideoPlatformRatioPreset {\n platform: string;\n postType: string;\n label: string;\n ratio: string;\n value: number;\n}\n\n/** 视频平台比例快捷入口:从目标表 videoRatio 派生,保留平台/类型,按 platform+type+ratio 去重 */\nexport function buildVideoPlatformRatioPresets(targets: PlatformTarget[] = DEFAULT_PLATFORM_TARGETS): VideoPlatformRatioPreset[] {\n const seen = new Set<string>();\n const out: VideoPlatformRatioPreset[] = [];\n for (const t of targets) {\n if (!t.videoRatio) continue;\n const key = `${t.platform}:${t.postType}:${t.videoRatio}`;\n if (seen.has(key)) continue;\n seen.add(key);\n const name = t.label.split(' ').slice(0, -1).join(' ') || t.label;\n out.push({ platform: t.platform, postType: t.postType, label: `${name} ${t.videoRatio}`, ratio: t.videoRatio, value: parseRatio(t.videoRatio) });\n }\n return out;\n}\n\nexport const VIDEO_PLATFORM_RATIO_PRESETS: VideoPlatformRatioPreset[] = buildVideoPlatformRatioPresets();\n\n// ─── 图片平台推荐预设 ──────────────────────────────────────────────\n\nexport interface PlatformPreset {\n platform: string; // 'instagram'\n label: string; // 'Instagram 1:1'\n ratio: string; // '1:1'\n value: number; // 1\n w: number; // 2048\n h: number; // 2048\n}\n\n/** 每平台一条(优先 postType='post',否则取该平台首条);w/h 来自 imageSize */\nexport function buildImagePlatformPresets(targets: PlatformTarget[] = DEFAULT_PLATFORM_TARGETS): PlatformPreset[] {\n const byPlatform = new Map<string, PlatformTarget>();\n for (const t of targets) {\n const cur = byPlatform.get(t.platform);\n if (!cur || (cur.postType !== 'post' && t.postType === 'post')) byPlatform.set(t.platform, t);\n }\n return Array.from(byPlatform.values()).map((t) => {\n const [w, h] = t.imageSize.split('x').map(Number);\n const name = t.label.split(' ').slice(0, -1).join(' ') || t.label;\n return { platform: t.platform, label: `${name} ${t.ratio}`, ratio: t.ratio, value: parseRatio(t.ratio), w, h };\n });\n}\n\n/** 默认图片平台预设(内置表派生) */\nexport const IMAGE_PLATFORM_PRESETS: PlatformPreset[] = buildImagePlatformPresets();\n\n// ─── 视频输出尺寸预设 ──────────────────────────────────────────────\n\nexport interface SizePreset {\n label: string; // 'TikTok 1080×1920'\n w: number;\n h: number;\n}\n\nfunction sizeOf(ratioValue: number, shortSide: number): { w: number; h: number } {\n if (ratioValue >= 1) {\n return { w: Math.round((shortSide * ratioValue) / 2) * 2, h: shortSide };\n }\n return { w: shortSide, h: Math.round(shortSide / ratioValue / 2) * 2 };\n}\n\n/** 视频输出尺寸预设:从目标表派生(平台标签 + 实际像素),按 w×h 去重 */\nexport function buildVideoSizePresets(targets: PlatformTarget[] = DEFAULT_PLATFORM_TARGETS): SizePreset[] {\n const seen = new Set<string>();\n const out: SizePreset[] = [];\n for (const t of targets) {\n if (!t.videoRatio || !t.videoResolution) continue;\n const shortSide = t.videoResolution === '1080p' ? 1080 : 720;\n const { w, h } = sizeOf(parseRatio(t.videoRatio), shortSide);\n const key = `${w}x${h}`;\n if (seen.has(key)) continue;\n seen.add(key);\n out.push({ label: `${t.shortLabel} ${w}×${h}`, w, h });\n }\n return out;\n}\n\n/** 默认视频尺寸预设(内置表派生) */\nexport const VIDEO_SIZE_PRESETS: SizePreset[] = buildVideoSizePresets();\n","/**\n * Filerobot 图片编辑器的标注旋转补偿(纯函数,供 ImageEditor 注入 config.onAnnotationAdd)。\n *\n * 背景:Filerobot 把 rotation 加在整个 Konva DesignLayer 上(DesignLayerWrapper),\n * 新标注挂进同一层会继承父层旋转 → 旋转图片后再贴文字,文字方向跟着转。\n * onAnnotationAdd 是 5.0.0-beta.159 真实存在但未写进 index.d.ts 的 config 钩子:\n * 源码 lib/actions/setAnnotation.js 在「新建标注」时调用 (annotation, 全量state),\n * 把返回的 partial 合并进标注 —— 这里给新标注反向初始 rotation,与父层旋转叠加后视觉正向。\n */\nexport function compensateAnnotationRotation(\n ann: { rotation?: number; isDuplicated?: boolean },\n state: { adjustments?: { rotation?: number } }\n): { rotation?: number } {\n if (ann.isDuplicated) return {}; // 复制体已继承原件 rotation,不得重复补偿\n if ((ann.rotation ?? 0) !== 0) return {}; // 已带角度的(回填/再编辑)不动\n const rot = state.adjustments?.rotation ?? 0;\n return rot ? { rotation: -rot } : {};\n}\n","/**\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"]}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
import { E as EditorLocale, P as PlatformPreset } from './platform-presets-B-o4C6uY.cjs';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Filerobot 图片编辑器「配置工厂」—— 纯 TS,零 React / 零 DOM。
|
|
5
|
+
*
|
|
6
|
+
* 从 SocialEcho ImageEditor.tsx 抽取「配置」这一层(不抽 React 渲染层):产出一个普通对象,
|
|
7
|
+
* 由框架无关运行时 @media-editor/image 透传给 <FilerobotImageEditor>。
|
|
8
|
+
*
|
|
9
|
+
* 两处「天然属于 React/Filerobot」的东西用依赖注入留给运行时,以保 core 零框架:
|
|
10
|
+
* - 裁剪预设的 icon 是 React 组件 → 运行时传 renderRatioIcon;
|
|
11
|
+
* - 内核英文默认词典 FIE_DEFAULTS → 运行时传 baseTranslations(从 filerobot 包深路径取)。
|
|
12
|
+
*/
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* 暗色 palette 覆盖。键名取自 @scaleflex/ui 的权威枚举(theme/roots/palette)。
|
|
16
|
+
* 默认是亮色主题:文字/图标都是深色,在深色底上看不清 → 这里把「文字/图标/边框」翻浅、背景翻深。
|
|
17
|
+
* 易踩键:主图标键是 'icon-primary'(单数);'btn-secondary-text' 默认黑、'active-secondary' 默认白,都要改。
|
|
18
|
+
*/
|
|
19
|
+
declare const IMAGE_EDITOR_DARK_PALETTE: Record<string, string>;
|
|
20
|
+
/**
|
|
21
|
+
* 亮色 palette —— 同键集的浅色档(Vercel/Linear 亮色:近纯白底、发丝边框、靛蓝强调)。
|
|
22
|
+
* 与暗色档一一对应,createImageEditorConfig 按 themeMode 选用。
|
|
23
|
+
*/
|
|
24
|
+
declare const IMAGE_EDITOR_LIGHT_PALETTE: Record<string, string>;
|
|
25
|
+
/**
|
|
26
|
+
* Filerobot 内核文案中文全量覆盖(与包内 defaultTranslations.js 同序,便于升级时 diff;en 模式用其内置英文)。
|
|
27
|
+
* 升级 Filerobot 后用 defaultTranslations.js 复核键集。
|
|
28
|
+
*/
|
|
29
|
+
declare const FIE_ZH: Record<string, string>;
|
|
30
|
+
declare const FIE_ES: Record<string, string>;
|
|
31
|
+
declare const FIE_ZH_HANT: Record<string, string>;
|
|
32
|
+
/** 进入编辑器的标签页顺序(Filerobot tabsIds 字面量) */
|
|
33
|
+
declare const IMAGE_EDITOR_TABS: readonly ["Adjust", "Annotate", "Watermark", "Filters", "Finetune", "Resize"];
|
|
34
|
+
/** 单个裁剪预设项(对齐 Filerobot Crop.presetsItems[i]);icon 由运行时按 renderRatioIcon 注入 */
|
|
35
|
+
interface CropPresetItem {
|
|
36
|
+
titleKey: string;
|
|
37
|
+
descriptionKey: string;
|
|
38
|
+
ratio: number;
|
|
39
|
+
icon?: unknown;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* 平台比例 → Filerobot 裁剪预设项。
|
|
43
|
+
* Filerobot 用 ratio 数值当流内条目的 React key/选中态 —— 内置项与各平台同比例项会撞 key,
|
|
44
|
+
* 故每项微扰 +(i+1)e-6(裁剪几何影响 <0.001px)。icon 仅在 renderRatioIcon 提供时附加。
|
|
45
|
+
*/
|
|
46
|
+
declare function buildCropPresetItems(presets?: PlatformPreset[], renderRatioIcon?: (value: number) => unknown): CropPresetItem[];
|
|
47
|
+
/**
|
|
48
|
+
* 合并出传给 Filerobot 的 translations:
|
|
49
|
+
* 先铺内核英文默认(baseTranslations,运行时注入 FIE_DEFAULTS)——全局字典只增不删,EN 模式必须显式回灌英文;
|
|
50
|
+
* 再加平台标签自映射(titleKey/descriptionKey 缺翻译时兜底显示自身);非 en 模式叠加 FIE_* 覆盖内核可见面。
|
|
51
|
+
*/
|
|
52
|
+
declare function buildImageEditorTranslations(locale: EditorLocale, presets?: PlatformPreset[], baseTranslations?: Record<string, string>): Record<string, string>;
|
|
53
|
+
interface ImageEditorConfigOptions {
|
|
54
|
+
/** 图片来源:dataURL 或 objectURL */
|
|
55
|
+
source: string;
|
|
56
|
+
/** 文案语言,默认 'zh' */
|
|
57
|
+
locale?: EditorLocale;
|
|
58
|
+
/** 上次保存的 designState(二次编辑回填) */
|
|
59
|
+
loadableDesignState?: unknown;
|
|
60
|
+
/** 保存回调:(savedImageData, designState) */
|
|
61
|
+
onSave?: (editedImageObject: unknown, designState: unknown) => void;
|
|
62
|
+
/** 关闭回调 */
|
|
63
|
+
onClose?: () => void;
|
|
64
|
+
/** 保存像素密度,默认 4(只提密度不膨胀输出尺寸) */
|
|
65
|
+
savingPixelRatio?: number;
|
|
66
|
+
/** 预览像素密度,默认 1;运行时按 window.devicePixelRatio 填 */
|
|
67
|
+
previewPixelRatio?: number;
|
|
68
|
+
/** 明暗档,默认 'dark';选用对应 palette 与标注/形状默认色('auto' 由运行时解析后传入) */
|
|
69
|
+
themeMode?: 'light' | 'dark';
|
|
70
|
+
/** 平台裁剪预设,默认内置全量 */
|
|
71
|
+
platformPresets?: PlatformPreset[];
|
|
72
|
+
/** 内核英文默认词典(运行时注入 FIE_DEFAULTS) */
|
|
73
|
+
baseTranslations?: Record<string, string>;
|
|
74
|
+
/** 裁剪预设比例图标工厂(运行时注入 React 组件) */
|
|
75
|
+
renderRatioIcon?: (value: number) => unknown;
|
|
76
|
+
/** 主题覆盖(palette/typography 浅合并到暗色默认之上) */
|
|
77
|
+
theme?: {
|
|
78
|
+
palette?: Record<string, string>;
|
|
79
|
+
typography?: Record<string, unknown>;
|
|
80
|
+
};
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* 产出传给 <FilerobotImageEditor> 的 props 对象(普通 JS,零 React/DOM)。
|
|
84
|
+
* 返回 Record<string, unknown> 而非 Filerobot 类型,避免 core 依赖 react-filerobot-image-editor。
|
|
85
|
+
*/
|
|
86
|
+
declare function createImageEditorConfig(opts: ImageEditorConfigOptions): Record<string, unknown>;
|
|
87
|
+
|
|
88
|
+
export { type CropPresetItem, FIE_ES, FIE_ZH, FIE_ZH_HANT, IMAGE_EDITOR_DARK_PALETTE, IMAGE_EDITOR_LIGHT_PALETTE, IMAGE_EDITOR_TABS, type ImageEditorConfigOptions, buildCropPresetItems, buildImageEditorTranslations, createImageEditorConfig };
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
import { E as EditorLocale, P as PlatformPreset } from './platform-presets-B-o4C6uY.js';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Filerobot 图片编辑器「配置工厂」—— 纯 TS,零 React / 零 DOM。
|
|
5
|
+
*
|
|
6
|
+
* 从 SocialEcho ImageEditor.tsx 抽取「配置」这一层(不抽 React 渲染层):产出一个普通对象,
|
|
7
|
+
* 由框架无关运行时 @media-editor/image 透传给 <FilerobotImageEditor>。
|
|
8
|
+
*
|
|
9
|
+
* 两处「天然属于 React/Filerobot」的东西用依赖注入留给运行时,以保 core 零框架:
|
|
10
|
+
* - 裁剪预设的 icon 是 React 组件 → 运行时传 renderRatioIcon;
|
|
11
|
+
* - 内核英文默认词典 FIE_DEFAULTS → 运行时传 baseTranslations(从 filerobot 包深路径取)。
|
|
12
|
+
*/
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* 暗色 palette 覆盖。键名取自 @scaleflex/ui 的权威枚举(theme/roots/palette)。
|
|
16
|
+
* 默认是亮色主题:文字/图标都是深色,在深色底上看不清 → 这里把「文字/图标/边框」翻浅、背景翻深。
|
|
17
|
+
* 易踩键:主图标键是 'icon-primary'(单数);'btn-secondary-text' 默认黑、'active-secondary' 默认白,都要改。
|
|
18
|
+
*/
|
|
19
|
+
declare const IMAGE_EDITOR_DARK_PALETTE: Record<string, string>;
|
|
20
|
+
/**
|
|
21
|
+
* 亮色 palette —— 同键集的浅色档(Vercel/Linear 亮色:近纯白底、发丝边框、靛蓝强调)。
|
|
22
|
+
* 与暗色档一一对应,createImageEditorConfig 按 themeMode 选用。
|
|
23
|
+
*/
|
|
24
|
+
declare const IMAGE_EDITOR_LIGHT_PALETTE: Record<string, string>;
|
|
25
|
+
/**
|
|
26
|
+
* Filerobot 内核文案中文全量覆盖(与包内 defaultTranslations.js 同序,便于升级时 diff;en 模式用其内置英文)。
|
|
27
|
+
* 升级 Filerobot 后用 defaultTranslations.js 复核键集。
|
|
28
|
+
*/
|
|
29
|
+
declare const FIE_ZH: Record<string, string>;
|
|
30
|
+
declare const FIE_ES: Record<string, string>;
|
|
31
|
+
declare const FIE_ZH_HANT: Record<string, string>;
|
|
32
|
+
/** 进入编辑器的标签页顺序(Filerobot tabsIds 字面量) */
|
|
33
|
+
declare const IMAGE_EDITOR_TABS: readonly ["Adjust", "Annotate", "Watermark", "Filters", "Finetune", "Resize"];
|
|
34
|
+
/** 单个裁剪预设项(对齐 Filerobot Crop.presetsItems[i]);icon 由运行时按 renderRatioIcon 注入 */
|
|
35
|
+
interface CropPresetItem {
|
|
36
|
+
titleKey: string;
|
|
37
|
+
descriptionKey: string;
|
|
38
|
+
ratio: number;
|
|
39
|
+
icon?: unknown;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* 平台比例 → Filerobot 裁剪预设项。
|
|
43
|
+
* Filerobot 用 ratio 数值当流内条目的 React key/选中态 —— 内置项与各平台同比例项会撞 key,
|
|
44
|
+
* 故每项微扰 +(i+1)e-6(裁剪几何影响 <0.001px)。icon 仅在 renderRatioIcon 提供时附加。
|
|
45
|
+
*/
|
|
46
|
+
declare function buildCropPresetItems(presets?: PlatformPreset[], renderRatioIcon?: (value: number) => unknown): CropPresetItem[];
|
|
47
|
+
/**
|
|
48
|
+
* 合并出传给 Filerobot 的 translations:
|
|
49
|
+
* 先铺内核英文默认(baseTranslations,运行时注入 FIE_DEFAULTS)——全局字典只增不删,EN 模式必须显式回灌英文;
|
|
50
|
+
* 再加平台标签自映射(titleKey/descriptionKey 缺翻译时兜底显示自身);非 en 模式叠加 FIE_* 覆盖内核可见面。
|
|
51
|
+
*/
|
|
52
|
+
declare function buildImageEditorTranslations(locale: EditorLocale, presets?: PlatformPreset[], baseTranslations?: Record<string, string>): Record<string, string>;
|
|
53
|
+
interface ImageEditorConfigOptions {
|
|
54
|
+
/** 图片来源:dataURL 或 objectURL */
|
|
55
|
+
source: string;
|
|
56
|
+
/** 文案语言,默认 'zh' */
|
|
57
|
+
locale?: EditorLocale;
|
|
58
|
+
/** 上次保存的 designState(二次编辑回填) */
|
|
59
|
+
loadableDesignState?: unknown;
|
|
60
|
+
/** 保存回调:(savedImageData, designState) */
|
|
61
|
+
onSave?: (editedImageObject: unknown, designState: unknown) => void;
|
|
62
|
+
/** 关闭回调 */
|
|
63
|
+
onClose?: () => void;
|
|
64
|
+
/** 保存像素密度,默认 4(只提密度不膨胀输出尺寸) */
|
|
65
|
+
savingPixelRatio?: number;
|
|
66
|
+
/** 预览像素密度,默认 1;运行时按 window.devicePixelRatio 填 */
|
|
67
|
+
previewPixelRatio?: number;
|
|
68
|
+
/** 明暗档,默认 'dark';选用对应 palette 与标注/形状默认色('auto' 由运行时解析后传入) */
|
|
69
|
+
themeMode?: 'light' | 'dark';
|
|
70
|
+
/** 平台裁剪预设,默认内置全量 */
|
|
71
|
+
platformPresets?: PlatformPreset[];
|
|
72
|
+
/** 内核英文默认词典(运行时注入 FIE_DEFAULTS) */
|
|
73
|
+
baseTranslations?: Record<string, string>;
|
|
74
|
+
/** 裁剪预设比例图标工厂(运行时注入 React 组件) */
|
|
75
|
+
renderRatioIcon?: (value: number) => unknown;
|
|
76
|
+
/** 主题覆盖(palette/typography 浅合并到暗色默认之上) */
|
|
77
|
+
theme?: {
|
|
78
|
+
palette?: Record<string, string>;
|
|
79
|
+
typography?: Record<string, unknown>;
|
|
80
|
+
};
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* 产出传给 <FilerobotImageEditor> 的 props 对象(普通 JS,零 React/DOM)。
|
|
84
|
+
* 返回 Record<string, unknown> 而非 Filerobot 类型,避免 core 依赖 react-filerobot-image-editor。
|
|
85
|
+
*/
|
|
86
|
+
declare function createImageEditorConfig(opts: ImageEditorConfigOptions): Record<string, unknown>;
|
|
87
|
+
|
|
88
|
+
export { type CropPresetItem, FIE_ES, FIE_ZH, FIE_ZH_HANT, IMAGE_EDITOR_DARK_PALETTE, IMAGE_EDITOR_LIGHT_PALETTE, IMAGE_EDITOR_TABS, type ImageEditorConfigOptions, buildCropPresetItems, buildImageEditorTranslations, createImageEditorConfig };
|