@nodaro/shared 1.4.1
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 +202 -0
- package/README.md +32 -0
- package/dist/index.cjs +12506 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.cts +12269 -0
- package/dist/index.d.ts +12269 -0
- package/dist/index.js +11831 -0
- package/dist/index.js.map +1 -0
- package/package.json +54 -0
- package/src/__tests__/__snapshots__/prompt-builder-segments.test.ts.snap +65 -0
- package/src/__tests__/ai-avatar-pricing.test.ts +321 -0
- package/src/__tests__/apply-video-negative-prompt.test.ts +76 -0
- package/src/__tests__/attach-columns.test.ts +28 -0
- package/src/__tests__/audio-crossfade-curves.test.ts +33 -0
- package/src/__tests__/build-model-menu.test.ts +58 -0
- package/src/__tests__/character-aspect-defaults.test.ts +142 -0
- package/src/__tests__/character-mention-slug.test.ts +199 -0
- package/src/__tests__/character-reference-photo-kinds.test.ts +32 -0
- package/src/__tests__/character-usage-mode.test.ts +147 -0
- package/src/__tests__/character-variant-assets.test.ts +142 -0
- package/src/__tests__/character-voice.test.ts +130 -0
- package/src/__tests__/cinematic-avatar-pricing.test.ts +119 -0
- package/src/__tests__/combine-transitions.test.ts +137 -0
- package/src/__tests__/component-types.test.ts +87 -0
- package/src/__tests__/condition-variables.test.ts +98 -0
- package/src/__tests__/credit-identifiers.test.ts +811 -0
- package/src/__tests__/default-video-provider.test.ts +63 -0
- package/src/__tests__/entity-image-handle.test.ts +43 -0
- package/src/__tests__/entity-variants.test.ts +33 -0
- package/src/__tests__/fal-lip-sync-sets.test.ts +31 -0
- package/src/__tests__/featured-entities.test.ts +33 -0
- package/src/__tests__/film-pricing.test.ts +64 -0
- package/src/__tests__/filter-condition.test.ts +285 -0
- package/src/__tests__/freecut-protocol.test.ts +35 -0
- package/src/__tests__/generate-text-items.test.ts +19 -0
- package/src/__tests__/generated-results.test.ts +50 -0
- package/src/__tests__/graph-utils.test.ts +618 -0
- package/src/__tests__/group-aggregation.test.ts +83 -0
- package/src/__tests__/i18n-locale-completeness.test.ts +156 -0
- package/src/__tests__/image-critic-node.test.ts +86 -0
- package/src/__tests__/image-mask-mode.test.ts +16 -0
- package/src/__tests__/image-ref-limit.test.ts +78 -0
- package/src/__tests__/inpaint-region.test.ts +24 -0
- package/src/__tests__/input-field-map-parity.test.ts +30 -0
- package/src/__tests__/json-evaluator.test.ts +289 -0
- package/src/__tests__/json-path.test.ts +64 -0
- package/src/__tests__/lip-sync-pricing.test.ts +142 -0
- package/src/__tests__/list-merge.test.ts +96 -0
- package/src/__tests__/list-sort.test.ts +134 -0
- package/src/__tests__/llm-models.test.ts +445 -0
- package/src/__tests__/location-mention-slug.test.ts +246 -0
- package/src/__tests__/locations-coverage-critic-schema.test.ts +92 -0
- package/src/__tests__/loop-delimiter.test.ts +39 -0
- package/src/__tests__/lottie-slots.test.ts +245 -0
- package/src/__tests__/model-catalog-flux2-resolutions.test.ts +21 -0
- package/src/__tests__/model-constants-location.test.ts +20 -0
- package/src/__tests__/model-constants.test.ts +122 -0
- package/src/__tests__/model-tree.test.ts +86 -0
- package/src/__tests__/no-internal-imports.test.ts +25 -0
- package/src/__tests__/node-default-mappings.test.ts +175 -0
- package/src/__tests__/node-mappable-fields.test.ts +7 -0
- package/src/__tests__/node-preset-export.test.ts +46 -0
- package/src/__tests__/node-preset-extract.test.ts +166 -0
- package/src/__tests__/node-refs-canonical.test.ts +54 -0
- package/src/__tests__/node-refs-combine.test.ts +54 -0
- package/src/__tests__/node-refs.test.ts +187 -0
- package/src/__tests__/node-runtime-keys.test.ts +99 -0
- package/src/__tests__/object-aspect-defaults.test.ts +59 -0
- package/src/__tests__/parameter-node-value.test.ts +137 -0
- package/src/__tests__/pinterest-url.test.ts +35 -0
- package/src/__tests__/pipeline-chat.test.ts +110 -0
- package/src/__tests__/pipeline-validation.test.ts +98 -0
- package/src/__tests__/presentation-utils.test.ts +1137 -0
- package/src/__tests__/producer-types.test.ts +47 -0
- package/src/__tests__/prompt-length-limits.test.ts +156 -0
- package/src/__tests__/provider-directive-defaults.test.ts +46 -0
- package/src/__tests__/reduce-strategy-registry.test.ts +43 -0
- package/src/__tests__/reference-board-templates.test.ts +33 -0
- package/src/__tests__/reference-roles.test.ts +36 -0
- package/src/__tests__/resolve-field-mappings.test.ts +110 -0
- package/src/__tests__/resolve-pipeline-model.test.ts +76 -0
- package/src/__tests__/scene-node-types.test.ts +80 -0
- package/src/__tests__/scraper-actors.test.ts +67 -0
- package/src/__tests__/seedance-2-catalog.test.ts +18 -0
- package/src/__tests__/seedance-2-credit-id.test.ts +23 -0
- package/src/__tests__/seedance-aspects.test.ts +52 -0
- package/src/__tests__/selector.test.ts +1151 -0
- package/src/__tests__/settled-with-limit.test.ts +214 -0
- package/src/__tests__/social-media-specs.test.ts +129 -0
- package/src/__tests__/sub-workflow-validation.test.ts +88 -0
- package/src/__tests__/switchx-pricing.test.ts +28 -0
- package/src/__tests__/to-connected-references.test.ts +153 -0
- package/src/__tests__/utilities.test.ts +541 -0
- package/src/__tests__/video-analysis-pricing.test.ts +58 -0
- package/src/__tests__/video-analysis.test.ts +63 -0
- package/src/__tests__/video-audio-capability.test.ts +204 -0
- package/src/__tests__/video-gen-providers.test.ts +28 -0
- package/src/__tests__/video-mode-aliases.test.ts +150 -0
- package/src/__tests__/video-ref-limits.test.ts +72 -0
- package/src/__tests__/video-utils.test.ts +303 -0
- package/src/__tests__/voice-changer-models.test.ts +33 -0
- package/src/__tests__/workflow-export-strip.test.ts +46 -0
- package/src/ai-avatar-pricing.ts +213 -0
- package/src/ancestor-refs.ts +48 -0
- package/src/animals.ts +231 -0
- package/src/audio-crossfade-curves.ts +73 -0
- package/src/audio-fx-presets.ts +64 -0
- package/src/avatar-payload-validators.ts +214 -0
- package/src/caption-styles.ts +31 -0
- package/src/character-aspect-defaults.ts +102 -0
- package/src/character-facets.ts +37 -0
- package/src/character-mention-slug.ts +166 -0
- package/src/character-usage-mode.ts +109 -0
- package/src/character-variant-assets.ts +121 -0
- package/src/character-voice.ts +151 -0
- package/src/cinematic-avatar-pricing.ts +111 -0
- package/src/clone-utils.ts +46 -0
- package/src/combine-transitions.ts +482 -0
- package/src/community.ts +112 -0
- package/src/component-types.ts +127 -0
- package/src/condition-variables.ts +65 -0
- package/src/credit-estimators/index.ts +15 -0
- package/src/credit-estimators/video-utils.ts +165 -0
- package/src/credit-identifiers.ts +304 -0
- package/src/entity-approval-types.ts +31 -0
- package/src/entity-aspect-defaults.ts +82 -0
- package/src/entity-asset-types.ts +296 -0
- package/src/entity-image-handle.ts +36 -0
- package/src/extra-refs.ts +139 -0
- package/src/featured-entities.ts +136 -0
- package/src/film-pricing.ts +117 -0
- package/src/filter-condition.ts +250 -0
- package/src/flux2-pricing.ts +18 -0
- package/src/freecut-protocol.ts +52 -0
- package/src/furniture.ts +167 -0
- package/src/generate-text-items.ts +15 -0
- package/src/generated-results.ts +63 -0
- package/src/group-aggregation.ts +75 -0
- package/src/hint-graph-types.ts +18 -0
- package/src/i18n/action-fx.ar.ts +89 -0
- package/src/i18n/action-fx.de.ts +89 -0
- package/src/i18n/action-fx.es.ts +89 -0
- package/src/i18n/action-fx.fr.ts +89 -0
- package/src/i18n/action-fx.he.ts +89 -0
- package/src/i18n/action-fx.hi.ts +89 -0
- package/src/i18n/action-fx.ja.ts +89 -0
- package/src/i18n/action-fx.ko.ts +89 -0
- package/src/i18n/action-fx.pt-BR.ts +89 -0
- package/src/i18n/action-fx.ru.ts +89 -0
- package/src/i18n/action-fx.zh-CN.ts +89 -0
- package/src/i18n/aesthetic.ar.ts +170 -0
- package/src/i18n/aesthetic.de.ts +48 -0
- package/src/i18n/aesthetic.es.ts +169 -0
- package/src/i18n/aesthetic.fr.ts +52 -0
- package/src/i18n/aesthetic.he.ts +169 -0
- package/src/i18n/aesthetic.hi.ts +55 -0
- package/src/i18n/aesthetic.ja.ts +165 -0
- package/src/i18n/aesthetic.ko.ts +169 -0
- package/src/i18n/aesthetic.pt-BR.ts +148 -0
- package/src/i18n/aesthetic.ru.ts +155 -0
- package/src/i18n/aesthetic.zh-CN.ts +172 -0
- package/src/i18n/animals.ar.ts +145 -0
- package/src/i18n/animals.de.ts +144 -0
- package/src/i18n/animals.es.ts +158 -0
- package/src/i18n/animals.fr.ts +144 -0
- package/src/i18n/animals.he.ts +155 -0
- package/src/i18n/animals.hi.ts +157 -0
- package/src/i18n/animals.ja.ts +159 -0
- package/src/i18n/animals.ko.ts +159 -0
- package/src/i18n/animals.pt-BR.ts +157 -0
- package/src/i18n/animals.ru.ts +155 -0
- package/src/i18n/animals.zh-CN.ts +155 -0
- package/src/i18n/atmosphere.ar.ts +49 -0
- package/src/i18n/atmosphere.de.ts +47 -0
- package/src/i18n/atmosphere.es.ts +50 -0
- package/src/i18n/atmosphere.fr.ts +47 -0
- package/src/i18n/atmosphere.he.ts +47 -0
- package/src/i18n/atmosphere.hi.ts +49 -0
- package/src/i18n/atmosphere.ja.ts +49 -0
- package/src/i18n/atmosphere.ko.ts +49 -0
- package/src/i18n/atmosphere.pt-BR.ts +49 -0
- package/src/i18n/atmosphere.ru.ts +47 -0
- package/src/i18n/atmosphere.zh-CN.ts +152 -0
- package/src/i18n/backdrop.ar.ts +53 -0
- package/src/i18n/backdrop.de.ts +46 -0
- package/src/i18n/backdrop.es.ts +54 -0
- package/src/i18n/backdrop.fr.ts +52 -0
- package/src/i18n/backdrop.he.ts +51 -0
- package/src/i18n/backdrop.hi.ts +59 -0
- package/src/i18n/backdrop.ja.ts +61 -0
- package/src/i18n/backdrop.ko.ts +59 -0
- package/src/i18n/backdrop.pt-BR.ts +59 -0
- package/src/i18n/backdrop.ru.ts +57 -0
- package/src/i18n/backdrop.zh-CN.ts +57 -0
- package/src/i18n/camera-format.ar.ts +40 -0
- package/src/i18n/camera-format.de.ts +37 -0
- package/src/i18n/camera-format.es.ts +41 -0
- package/src/i18n/camera-format.fr.ts +37 -0
- package/src/i18n/camera-format.he.ts +37 -0
- package/src/i18n/camera-format.hi.ts +42 -0
- package/src/i18n/camera-format.ja.ts +37 -0
- package/src/i18n/camera-format.ko.ts +37 -0
- package/src/i18n/camera-format.pt-BR.ts +46 -0
- package/src/i18n/camera-format.ru.ts +42 -0
- package/src/i18n/camera-format.zh-CN.ts +42 -0
- package/src/i18n/camera-motions.ar.ts +86 -0
- package/src/i18n/camera-motions.de.ts +74 -0
- package/src/i18n/camera-motions.es.ts +86 -0
- package/src/i18n/camera-motions.fr.ts +86 -0
- package/src/i18n/camera-motions.he.ts +86 -0
- package/src/i18n/camera-motions.hi.ts +99 -0
- package/src/i18n/camera-motions.ja.ts +99 -0
- package/src/i18n/camera-motions.ko.ts +99 -0
- package/src/i18n/camera-motions.pt-BR.ts +99 -0
- package/src/i18n/camera-motions.ru.ts +99 -0
- package/src/i18n/camera-motions.zh-CN.ts +99 -0
- package/src/i18n/character-fx.ar.ts +72 -0
- package/src/i18n/character-fx.de.ts +72 -0
- package/src/i18n/character-fx.es.ts +72 -0
- package/src/i18n/character-fx.fr.ts +72 -0
- package/src/i18n/character-fx.he.ts +72 -0
- package/src/i18n/character-fx.hi.ts +72 -0
- package/src/i18n/character-fx.ja.ts +72 -0
- package/src/i18n/character-fx.ko.ts +72 -0
- package/src/i18n/character-fx.pt-BR.ts +72 -0
- package/src/i18n/character-fx.ru.ts +72 -0
- package/src/i18n/character-fx.zh-CN.ts +72 -0
- package/src/i18n/color-look.ar.ts +50 -0
- package/src/i18n/color-look.de.ts +47 -0
- package/src/i18n/color-look.es.ts +50 -0
- package/src/i18n/color-look.fr.ts +50 -0
- package/src/i18n/color-look.he.ts +49 -0
- package/src/i18n/color-look.hi.ts +52 -0
- package/src/i18n/color-look.ja.ts +54 -0
- package/src/i18n/color-look.ko.ts +54 -0
- package/src/i18n/color-look.pt-BR.ts +54 -0
- package/src/i18n/color-look.ru.ts +52 -0
- package/src/i18n/color-look.zh-CN.ts +53 -0
- package/src/i18n/composition-effects.ar.ts +26 -0
- package/src/i18n/composition-effects.de.ts +25 -0
- package/src/i18n/composition-effects.es.ts +27 -0
- package/src/i18n/composition-effects.fr.ts +25 -0
- package/src/i18n/composition-effects.he.ts +25 -0
- package/src/i18n/composition-effects.hi.ts +27 -0
- package/src/i18n/composition-effects.ja.ts +27 -0
- package/src/i18n/composition-effects.ko.ts +27 -0
- package/src/i18n/composition-effects.pt-BR.ts +25 -0
- package/src/i18n/composition-effects.ru.ts +82 -0
- package/src/i18n/composition-effects.zh-CN.ts +25 -0
- package/src/i18n/era.ar.ts +37 -0
- package/src/i18n/era.de.ts +34 -0
- package/src/i18n/era.es.ts +37 -0
- package/src/i18n/era.fr.ts +37 -0
- package/src/i18n/era.he.ts +36 -0
- package/src/i18n/era.hi.ts +39 -0
- package/src/i18n/era.ja.ts +41 -0
- package/src/i18n/era.ko.ts +39 -0
- package/src/i18n/era.pt-BR.ts +41 -0
- package/src/i18n/era.ru.ts +121 -0
- package/src/i18n/era.zh-CN.ts +39 -0
- package/src/i18n/exposure-settings.ar.ts +28 -0
- package/src/i18n/exposure-settings.de.ts +26 -0
- package/src/i18n/exposure-settings.es.ts +28 -0
- package/src/i18n/exposure-settings.fr.ts +29 -0
- package/src/i18n/exposure-settings.he.ts +28 -0
- package/src/i18n/exposure-settings.hi.ts +31 -0
- package/src/i18n/exposure-settings.ja.ts +31 -0
- package/src/i18n/exposure-settings.ko.ts +31 -0
- package/src/i18n/exposure-settings.pt-BR.ts +31 -0
- package/src/i18n/exposure-settings.ru.ts +31 -0
- package/src/i18n/exposure-settings.zh-CN.ts +31 -0
- package/src/i18n/framing.ar.ts +78 -0
- package/src/i18n/framing.de.ts +73 -0
- package/src/i18n/framing.es.ts +78 -0
- package/src/i18n/framing.fr.ts +78 -0
- package/src/i18n/framing.he.ts +77 -0
- package/src/i18n/framing.hi.ts +82 -0
- package/src/i18n/framing.ja.ts +84 -0
- package/src/i18n/framing.ko.ts +82 -0
- package/src/i18n/framing.pt-BR.ts +84 -0
- package/src/i18n/framing.ru.ts +82 -0
- package/src/i18n/framing.zh-CN.ts +82 -0
- package/src/i18n/furniture.ar.ts +92 -0
- package/src/i18n/furniture.de.ts +93 -0
- package/src/i18n/furniture.es.ts +101 -0
- package/src/i18n/furniture.fr.ts +93 -0
- package/src/i18n/furniture.he.ts +101 -0
- package/src/i18n/furniture.hi.ts +101 -0
- package/src/i18n/furniture.ja.ts +101 -0
- package/src/i18n/furniture.ko.ts +101 -0
- package/src/i18n/furniture.pt-BR.ts +101 -0
- package/src/i18n/furniture.ru.ts +101 -0
- package/src/i18n/furniture.zh-CN.ts +101 -0
- package/src/i18n/held-prop.ar.ts +74 -0
- package/src/i18n/held-prop.de.ts +65 -0
- package/src/i18n/held-prop.es.ts +83 -0
- package/src/i18n/held-prop.fr.ts +74 -0
- package/src/i18n/held-prop.he.ts +73 -0
- package/src/i18n/held-prop.hi.ts +82 -0
- package/src/i18n/held-prop.ja.ts +84 -0
- package/src/i18n/held-prop.ko.ts +84 -0
- package/src/i18n/held-prop.pt-BR.ts +84 -0
- package/src/i18n/held-prop.ru.ts +82 -0
- package/src/i18n/held-prop.zh-CN.ts +82 -0
- package/src/i18n/index.ts +208 -0
- package/src/i18n/instrumentation.ar.ts +195 -0
- package/src/i18n/instrumentation.de.ts +195 -0
- package/src/i18n/instrumentation.es.ts +195 -0
- package/src/i18n/instrumentation.fr.ts +195 -0
- package/src/i18n/instrumentation.he.ts +195 -0
- package/src/i18n/instrumentation.hi.ts +195 -0
- package/src/i18n/instrumentation.ja.ts +195 -0
- package/src/i18n/instrumentation.ko.ts +195 -0
- package/src/i18n/instrumentation.pt-BR.ts +195 -0
- package/src/i18n/instrumentation.ru.ts +195 -0
- package/src/i18n/instrumentation.zh-CN.ts +195 -0
- package/src/i18n/lens.ar.ts +24 -0
- package/src/i18n/lens.de.ts +24 -0
- package/src/i18n/lens.es.ts +24 -0
- package/src/i18n/lens.fr.ts +24 -0
- package/src/i18n/lens.he.ts +24 -0
- package/src/i18n/lens.hi.ts +24 -0
- package/src/i18n/lens.ja.ts +24 -0
- package/src/i18n/lens.ko.ts +24 -0
- package/src/i18n/lens.pt-BR.ts +24 -0
- package/src/i18n/lens.ru.ts +25 -0
- package/src/i18n/lens.zh-CN.ts +24 -0
- package/src/i18n/lighting.ar.ts +86 -0
- package/src/i18n/lighting.de.ts +84 -0
- package/src/i18n/lighting.es.ts +89 -0
- package/src/i18n/lighting.fr.ts +84 -0
- package/src/i18n/lighting.he.ts +88 -0
- package/src/i18n/lighting.hi.ts +90 -0
- package/src/i18n/lighting.ja.ts +90 -0
- package/src/i18n/lighting.ko.ts +90 -0
- package/src/i18n/lighting.pt-BR.ts +90 -0
- package/src/i18n/lighting.ru.ts +88 -0
- package/src/i18n/lighting.zh-CN.ts +92 -0
- package/src/i18n/loop-subject.ar.ts +39 -0
- package/src/i18n/loop-subject.de.ts +39 -0
- package/src/i18n/loop-subject.es.ts +39 -0
- package/src/i18n/loop-subject.fr.ts +39 -0
- package/src/i18n/loop-subject.he.ts +39 -0
- package/src/i18n/loop-subject.hi.ts +39 -0
- package/src/i18n/loop-subject.ja.ts +39 -0
- package/src/i18n/loop-subject.ko.ts +39 -0
- package/src/i18n/loop-subject.pt-BR.ts +39 -0
- package/src/i18n/loop-subject.ru.ts +39 -0
- package/src/i18n/loop-subject.zh-CN.ts +39 -0
- package/src/i18n/materials.ar.ts +80 -0
- package/src/i18n/materials.de.ts +80 -0
- package/src/i18n/materials.es.ts +87 -0
- package/src/i18n/materials.fr.ts +80 -0
- package/src/i18n/materials.he.ts +86 -0
- package/src/i18n/materials.hi.ts +86 -0
- package/src/i18n/materials.ja.ts +88 -0
- package/src/i18n/materials.ko.ts +88 -0
- package/src/i18n/materials.pt-BR.ts +88 -0
- package/src/i18n/materials.ru.ts +86 -0
- package/src/i18n/materials.zh-CN.ts +86 -0
- package/src/i18n/mood.ar.ts +61 -0
- package/src/i18n/mood.de.ts +61 -0
- package/src/i18n/mood.es.ts +66 -0
- package/src/i18n/mood.fr.ts +61 -0
- package/src/i18n/mood.he.ts +64 -0
- package/src/i18n/mood.hi.ts +66 -0
- package/src/i18n/mood.ja.ts +66 -0
- package/src/i18n/mood.ko.ts +66 -0
- package/src/i18n/mood.pt-BR.ts +64 -0
- package/src/i18n/mood.ru.ts +64 -0
- package/src/i18n/mood.zh-CN.ts +64 -0
- package/src/i18n/music-genre.ar.ts +302 -0
- package/src/i18n/music-genre.de.ts +302 -0
- package/src/i18n/music-genre.es.ts +302 -0
- package/src/i18n/music-genre.fr.ts +302 -0
- package/src/i18n/music-genre.he.ts +302 -0
- package/src/i18n/music-genre.hi.ts +302 -0
- package/src/i18n/music-genre.ja.ts +302 -0
- package/src/i18n/music-genre.ko.ts +302 -0
- package/src/i18n/music-genre.pt-BR.ts +302 -0
- package/src/i18n/music-genre.ru.ts +302 -0
- package/src/i18n/music-genre.zh-CN.ts +302 -0
- package/src/i18n/music-mood.ar.ts +75 -0
- package/src/i18n/music-mood.de.ts +75 -0
- package/src/i18n/music-mood.es.ts +75 -0
- package/src/i18n/music-mood.fr.ts +75 -0
- package/src/i18n/music-mood.he.ts +75 -0
- package/src/i18n/music-mood.hi.ts +75 -0
- package/src/i18n/music-mood.ja.ts +75 -0
- package/src/i18n/music-mood.ko.ts +75 -0
- package/src/i18n/music-mood.pt-BR.ts +75 -0
- package/src/i18n/music-mood.ru.ts +75 -0
- package/src/i18n/music-mood.zh-CN.ts +75 -0
- package/src/i18n/person.ar.ts +638 -0
- package/src/i18n/person.de.ts +629 -0
- package/src/i18n/person.es.ts +645 -0
- package/src/i18n/person.fr.ts +621 -0
- package/src/i18n/person.he.ts +656 -0
- package/src/i18n/person.hi.ts +654 -0
- package/src/i18n/person.ja.ts +662 -0
- package/src/i18n/person.ko.ts +662 -0
- package/src/i18n/person.pt-BR.ts +656 -0
- package/src/i18n/person.ru.ts +656 -0
- package/src/i18n/person.zh-CN.ts +656 -0
- package/src/i18n/photo-genre.ar.ts +58 -0
- package/src/i18n/photo-genre.de.ts +52 -0
- package/src/i18n/photo-genre.es.ts +64 -0
- package/src/i18n/photo-genre.fr.ts +58 -0
- package/src/i18n/photo-genre.he.ts +62 -0
- package/src/i18n/photo-genre.hi.ts +63 -0
- package/src/i18n/photo-genre.ja.ts +65 -0
- package/src/i18n/photo-genre.ko.ts +63 -0
- package/src/i18n/photo-genre.pt-BR.ts +65 -0
- package/src/i18n/photo-genre.ru.ts +63 -0
- package/src/i18n/photo-genre.zh-CN.ts +63 -0
- package/src/i18n/photographer.ar.ts +75 -0
- package/src/i18n/photographer.de.ts +74 -0
- package/src/i18n/photographer.es.ts +77 -0
- package/src/i18n/photographer.fr.ts +77 -0
- package/src/i18n/photographer.he.ts +78 -0
- package/src/i18n/photographer.hi.ts +80 -0
- package/src/i18n/photographer.ja.ts +84 -0
- package/src/i18n/photographer.ko.ts +84 -0
- package/src/i18n/photographer.pt-BR.ts +83 -0
- package/src/i18n/photographer.ru.ts +78 -0
- package/src/i18n/photographer.zh-CN.ts +78 -0
- package/src/i18n/pose.ar.ts +95 -0
- package/src/i18n/pose.de.ts +96 -0
- package/src/i18n/pose.es.ts +104 -0
- package/src/i18n/pose.fr.ts +96 -0
- package/src/i18n/pose.he.ts +104 -0
- package/src/i18n/pose.hi.ts +104 -0
- package/src/i18n/pose.ja.ts +104 -0
- package/src/i18n/pose.ko.ts +104 -0
- package/src/i18n/pose.pt-BR.ts +104 -0
- package/src/i18n/pose.ru.ts +104 -0
- package/src/i18n/pose.zh-CN.ts +104 -0
- package/src/i18n/post-process-effects.ar.ts +25 -0
- package/src/i18n/post-process-effects.de.ts +24 -0
- package/src/i18n/post-process-effects.es.ts +26 -0
- package/src/i18n/post-process-effects.fr.ts +24 -0
- package/src/i18n/post-process-effects.he.ts +24 -0
- package/src/i18n/post-process-effects.hi.ts +26 -0
- package/src/i18n/post-process-effects.ja.ts +26 -0
- package/src/i18n/post-process-effects.ko.ts +26 -0
- package/src/i18n/post-process-effects.pt-BR.ts +24 -0
- package/src/i18n/post-process-effects.ru.ts +24 -0
- package/src/i18n/post-process-effects.zh-CN.ts +24 -0
- package/src/i18n/render-quality.ar.ts +34 -0
- package/src/i18n/render-quality.de.ts +30 -0
- package/src/i18n/render-quality.es.ts +35 -0
- package/src/i18n/render-quality.fr.ts +34 -0
- package/src/i18n/render-quality.he.ts +33 -0
- package/src/i18n/render-quality.hi.ts +39 -0
- package/src/i18n/render-quality.ja.ts +39 -0
- package/src/i18n/render-quality.ko.ts +39 -0
- package/src/i18n/render-quality.pt-BR.ts +37 -0
- package/src/i18n/render-quality.ru.ts +37 -0
- package/src/i18n/render-quality.zh-CN.ts +37 -0
- package/src/i18n/seasons.ar.ts +10 -0
- package/src/i18n/seasons.de.ts +10 -0
- package/src/i18n/seasons.es.ts +10 -0
- package/src/i18n/seasons.fr.ts +10 -0
- package/src/i18n/seasons.he.ts +10 -0
- package/src/i18n/seasons.hi.ts +10 -0
- package/src/i18n/seasons.ja.ts +10 -0
- package/src/i18n/seasons.ko.ts +10 -0
- package/src/i18n/seasons.pt-BR.ts +10 -0
- package/src/i18n/seasons.ru.ts +10 -0
- package/src/i18n/seasons.zh-CN.ts +10 -0
- package/src/i18n/setting.ar.ts +73 -0
- package/src/i18n/setting.de.ts +73 -0
- package/src/i18n/setting.es.ts +77 -0
- package/src/i18n/setting.fr.ts +73 -0
- package/src/i18n/setting.he.ts +76 -0
- package/src/i18n/setting.hi.ts +76 -0
- package/src/i18n/setting.ja.ts +78 -0
- package/src/i18n/setting.ko.ts +76 -0
- package/src/i18n/setting.pt-BR.ts +78 -0
- package/src/i18n/setting.ru.ts +76 -0
- package/src/i18n/setting.zh-CN.ts +76 -0
- package/src/i18n/style.ar.ts +55 -0
- package/src/i18n/style.de.ts +54 -0
- package/src/i18n/style.es.ts +54 -0
- package/src/i18n/style.fr.ts +54 -0
- package/src/i18n/style.he.ts +54 -0
- package/src/i18n/style.hi.ts +54 -0
- package/src/i18n/style.ja.ts +54 -0
- package/src/i18n/style.ko.ts +54 -0
- package/src/i18n/style.pt-BR.ts +56 -0
- package/src/i18n/style.ru.ts +54 -0
- package/src/i18n/style.zh-CN.ts +54 -0
- package/src/i18n/styling.ar.ts +295 -0
- package/src/i18n/styling.de.ts +285 -0
- package/src/i18n/styling.es.ts +317 -0
- package/src/i18n/styling.fr.ts +285 -0
- package/src/i18n/styling.he.ts +307 -0
- package/src/i18n/styling.hi.ts +323 -0
- package/src/i18n/styling.ja.ts +317 -0
- package/src/i18n/styling.ko.ts +311 -0
- package/src/i18n/styling.pt-BR.ts +301 -0
- package/src/i18n/styling.ru.ts +301 -0
- package/src/i18n/styling.zh-CN.ts +307 -0
- package/src/i18n/temporal.ar.ts +31 -0
- package/src/i18n/temporal.de.ts +24 -0
- package/src/i18n/temporal.es.ts +27 -0
- package/src/i18n/temporal.fr.ts +28 -0
- package/src/i18n/temporal.he.ts +31 -0
- package/src/i18n/temporal.hi.ts +31 -0
- package/src/i18n/temporal.ja.ts +31 -0
- package/src/i18n/temporal.ko.ts +31 -0
- package/src/i18n/temporal.pt-BR.ts +31 -0
- package/src/i18n/temporal.ru.ts +31 -0
- package/src/i18n/temporal.zh-CN.ts +31 -0
- package/src/i18n/transitions.ar.ts +97 -0
- package/src/i18n/transitions.de.ts +97 -0
- package/src/i18n/transitions.es.ts +97 -0
- package/src/i18n/transitions.fr.ts +97 -0
- package/src/i18n/transitions.he.ts +97 -0
- package/src/i18n/transitions.hi.ts +97 -0
- package/src/i18n/transitions.ja.ts +97 -0
- package/src/i18n/transitions.ko.ts +97 -0
- package/src/i18n/transitions.pt-BR.ts +97 -0
- package/src/i18n/transitions.ru.ts +97 -0
- package/src/i18n/transitions.zh-CN.ts +97 -0
- package/src/i18n/types.ts +158 -0
- package/src/i18n/vehicles.ar.ts +137 -0
- package/src/i18n/vehicles.de.ts +125 -0
- package/src/i18n/vehicles.es.ts +138 -0
- package/src/i18n/vehicles.fr.ts +125 -0
- package/src/i18n/vehicles.he.ts +136 -0
- package/src/i18n/vehicles.hi.ts +138 -0
- package/src/i18n/vehicles.ja.ts +138 -0
- package/src/i18n/vehicles.ko.ts +138 -0
- package/src/i18n/vehicles.pt-BR.ts +136 -0
- package/src/i18n/vehicles.ru.ts +136 -0
- package/src/i18n/vehicles.zh-CN.ts +136 -0
- package/src/i18n/voice-character.ar.ts +126 -0
- package/src/i18n/voice-character.de.ts +126 -0
- package/src/i18n/voice-character.es.ts +126 -0
- package/src/i18n/voice-character.fr.ts +126 -0
- package/src/i18n/voice-character.he.ts +126 -0
- package/src/i18n/voice-character.hi.ts +126 -0
- package/src/i18n/voice-character.ja.ts +126 -0
- package/src/i18n/voice-character.ko.ts +126 -0
- package/src/i18n/voice-character.pt-BR.ts +126 -0
- package/src/i18n/voice-character.ru.ts +126 -0
- package/src/i18n/voice-character.zh-CN.ts +126 -0
- package/src/i18n/voice-delivery.ar.ts +77 -0
- package/src/i18n/voice-delivery.de.ts +77 -0
- package/src/i18n/voice-delivery.es.ts +77 -0
- package/src/i18n/voice-delivery.fr.ts +77 -0
- package/src/i18n/voice-delivery.he.ts +77 -0
- package/src/i18n/voice-delivery.hi.ts +77 -0
- package/src/i18n/voice-delivery.ja.ts +77 -0
- package/src/i18n/voice-delivery.ko.ts +77 -0
- package/src/i18n/voice-delivery.pt-BR.ts +77 -0
- package/src/i18n/voice-delivery.ru.ts +77 -0
- package/src/i18n/voice-delivery.zh-CN.ts +77 -0
- package/src/i18n/weapons.ar.ts +115 -0
- package/src/i18n/weapons.de.ts +114 -0
- package/src/i18n/weapons.es.ts +116 -0
- package/src/i18n/weapons.fr.ts +103 -0
- package/src/i18n/weapons.he.ts +114 -0
- package/src/i18n/weapons.hi.ts +116 -0
- package/src/i18n/weapons.ja.ts +116 -0
- package/src/i18n/weapons.ko.ts +116 -0
- package/src/i18n/weapons.pt-BR.ts +114 -0
- package/src/i18n/weapons.ru.ts +114 -0
- package/src/i18n/weapons.zh-CN.ts +114 -0
- package/src/image-critic-node.ts +61 -0
- package/src/image-critic-types.ts +40 -0
- package/src/index.ts +866 -0
- package/src/inject-upstream.ts +15 -0
- package/src/inpaint-region.ts +51 -0
- package/src/json-evaluator.ts +732 -0
- package/src/json-path.ts +52 -0
- package/src/lip-sync-pricing.ts +90 -0
- package/src/list-merge.ts +40 -0
- package/src/list-sort.ts +122 -0
- package/src/list-source-resolver.ts +50 -0
- package/src/llm-models.ts +245 -0
- package/src/location-mention-slug.ts +291 -0
- package/src/location-preset-catalog-map.ts +128 -0
- package/src/loop-delimiter.ts +73 -0
- package/src/lora-routing.ts +95 -0
- package/src/lottie-overlay-catalog.ts +175 -0
- package/src/lottie-slots.ts +309 -0
- package/src/model-catalog.ts +2386 -0
- package/src/model-constants.ts +1910 -0
- package/src/model-tree.ts +120 -0
- package/src/monetization.ts +15 -0
- package/src/multi-pick.ts +42 -0
- package/src/node-default-mappings.ts +262 -0
- package/src/node-mappable-fields.ts +70 -0
- package/src/node-preset-export.ts +56 -0
- package/src/node-preset-extract.ts +147 -0
- package/src/node-refs.ts +253 -0
- package/src/node-runtime-keys.ts +117 -0
- package/src/object-aspect-defaults.ts +72 -0
- package/src/object-picker-types.ts +22 -0
- package/src/parameter-node-value.ts +284 -0
- package/src/pinterest-url.ts +28 -0
- package/src/pipeline-chat.ts +72 -0
- package/src/pipeline-defaults.ts +318 -0
- package/src/pipeline-events.ts +162 -0
- package/src/pipeline-state-types.ts +196 -0
- package/src/pipeline-types.ts +647 -0
- package/src/pipeline-validation.ts +87 -0
- package/src/presentation-types.ts +23 -0
- package/src/presentation-utils.ts +397 -0
- package/src/producer-types.ts +188 -0
- package/src/progress-curve.ts +99 -0
- package/src/provider-directive-defaults.ts +69 -0
- package/src/reduce-strategy-registry.ts +121 -0
- package/src/reference-board-templates.ts +81 -0
- package/src/reference-roles.ts +153 -0
- package/src/reference-sheet/__tests__/board-to-column.test.ts +20 -0
- package/src/reference-sheet/__tests__/catalog.test.ts +50 -0
- package/src/reference-sheet/__tests__/cost.test.ts +38 -0
- package/src/reference-sheet/__tests__/no-drift.test.ts +28 -0
- package/src/reference-sheet/__tests__/panel-plan.test.ts +61 -0
- package/src/reference-sheet/__tests__/panel-prompts.test.ts +17 -0
- package/src/reference-sheet/__tests__/plan-generation.test.ts +72 -0
- package/src/reference-sheet/__tests__/presets.test.ts +54 -0
- package/src/reference-sheet/__tests__/types.test.ts +24 -0
- package/src/reference-sheet/catalog.ts +144 -0
- package/src/reference-sheet/cost.ts +37 -0
- package/src/reference-sheet/credit-id.ts +7 -0
- package/src/reference-sheet/index.ts +8 -0
- package/src/reference-sheet/panel-plan.ts +65 -0
- package/src/reference-sheet/panel-prompts.ts +14 -0
- package/src/reference-sheet/plan-generation.ts +79 -0
- package/src/reference-sheet/presets.ts +77 -0
- package/src/reference-sheet/types.ts +92 -0
- package/src/repeat-types.ts +97 -0
- package/src/resolve-field-mappings.ts +119 -0
- package/src/route-filter.ts +80 -0
- package/src/scene-helper-types.ts +249 -0
- package/src/scene-node-types.ts +281 -0
- package/src/scraper-actors.ts +57 -0
- package/src/scraper-output-schemas.ts +25 -0
- package/src/seasons.ts +45 -0
- package/src/selector.ts +864 -0
- package/src/settled-with-limit.ts +42 -0
- package/src/shot-element.ts +43 -0
- package/src/social-media-specs.ts +121 -0
- package/src/social-post.ts +24 -0
- package/src/sub-workflow-validation.ts +78 -0
- package/src/supported-fonts.ts +40 -0
- package/src/surround.ts +113 -0
- package/src/switchx-pricing.ts +33 -0
- package/src/text-separators.ts +59 -0
- package/src/to-connected-references.ts +77 -0
- package/src/types.ts +272 -0
- package/src/variant-job-id.ts +17 -0
- package/src/vehicles.ts +213 -0
- package/src/video-analysis-pricing.ts +74 -0
- package/src/video-analysis.ts +127 -0
- package/src/video-duration.ts +25 -0
- package/src/voice-changer-models.ts +36 -0
- package/src/voice-matcher-types.ts +37 -0
- package/src/voices.ts +92 -0
- package/src/weapons.ts +190 -0
- package/src/workflow-export.ts +153 -0
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
import type { LocaleCatalogMap } from "./types.js"
|
|
2
|
+
|
|
3
|
+
const map: LocaleCatalogMap = {
|
|
4
|
+
// Basic
|
|
5
|
+
"auto": { label: "Automático", description: "Deixe o modelo escolher o movimento de câmera apropriado" },
|
|
6
|
+
"static": { label: "Estática", description: "Câmera fixa, sem movimento" },
|
|
7
|
+
"handheld": { description: "Tremor natural de câmera na mão" },
|
|
8
|
+
"steadicam": { description: "Caminhada estabilizada e suave" },
|
|
9
|
+
|
|
10
|
+
// Pan
|
|
11
|
+
"pan-left": { description: "Gire a câmera horizontalmente para a esquerda" },
|
|
12
|
+
"pan-right": { description: "Gire a câmera horizontalmente para a direita" },
|
|
13
|
+
"whip-pan-left": { description: "Whip pan rápido para a esquerda com motion blur" },
|
|
14
|
+
"whip-pan-right": { description: "Whip pan rápido para a direita com motion blur" },
|
|
15
|
+
|
|
16
|
+
// Tilt
|
|
17
|
+
"tilt-up": { description: "Incline a câmera para cima" },
|
|
18
|
+
"tilt-down": { description: "Incline a câmera para baixo" },
|
|
19
|
+
|
|
20
|
+
// Zoom
|
|
21
|
+
"zoom-in": { description: "Zoom de lente em direção ao sujeito" },
|
|
22
|
+
"zoom-out": { description: "Zoom de lente afastando do sujeito" },
|
|
23
|
+
"crash-zoom-in": { description: "Crash zoom in seco em estilo whip" },
|
|
24
|
+
"crash-zoom-out": { description: "Crash zoom out seco em estilo whip" },
|
|
25
|
+
|
|
26
|
+
// Dolly
|
|
27
|
+
"dolly-in": { description: "Empurra a câmera em direção ao sujeito (com paralaxe)" },
|
|
28
|
+
"dolly-out": { description: "Afasta a câmera (com paralaxe)" },
|
|
29
|
+
"dolly-zoom": { description: "Efeito vertigo: dolly oposto ao zoom" },
|
|
30
|
+
"push-in": { description: "Empurro lento e sutil em direção ao sujeito" },
|
|
31
|
+
"pull-out": { description: "Afastamento lento e sutil do sujeito" },
|
|
32
|
+
"breathing": { label: "Câmera Respirante", description: "Oscilação contínua e sutil de empurro e afastamento, sensação orgânica de câmera na mão" },
|
|
33
|
+
"push-pull": { label: "Push-Pull / Vai-e-Vem", description: "A câmera se move em direção ao sujeito e depois se afasta, aproximação e retirada oscilantes" },
|
|
34
|
+
"creep-in": { label: "Aproximação Imperceptível", description: "Empurro extremamente lento e imperceptível que constrói pavor ou tensão" },
|
|
35
|
+
"creep-out": { label: "Afastamento Imperceptível", description: "Afastamento extremamente lento e imperceptível que isola o sujeito no espaço" },
|
|
36
|
+
|
|
37
|
+
// Truck
|
|
38
|
+
"truck-left": { description: "Desliza a câmera lateralmente para a esquerda" },
|
|
39
|
+
"truck-right": { description: "Desliza a câmera lateralmente para a direita" },
|
|
40
|
+
|
|
41
|
+
// Pedestal
|
|
42
|
+
"pedestal-up": { description: "Sobe a câmera verticalmente" },
|
|
43
|
+
"pedestal-down": { description: "Desce a câmera verticalmente" },
|
|
44
|
+
|
|
45
|
+
// Roll
|
|
46
|
+
"roll-left": { description: "Gira a câmera no sentido anti-horário" },
|
|
47
|
+
"roll-right": { description: "Gira a câmera no sentido horário" },
|
|
48
|
+
"dutch-angle": { description: "Quadro estático inclinado para criar tensão" },
|
|
49
|
+
|
|
50
|
+
// Orbit / Arc
|
|
51
|
+
"orbit-left": { description: "Volta completa em torno do sujeito para a esquerda" },
|
|
52
|
+
"orbit-right": { description: "Volta completa em torno do sujeito para a direita" },
|
|
53
|
+
"spin-360": { label: "Giro Completo 360°", description: "A câmera gira 360 graus completos sobre seu próprio eixo" },
|
|
54
|
+
"orbit-360": { label: "Órbita Completa 360°", description: "A câmera descreve um arco completo de 360 graus em torno do sujeito" },
|
|
55
|
+
"arc-left": { description: "Arco parcial em torno do sujeito pela esquerda" },
|
|
56
|
+
"arc-right": { description: "Arco parcial em torno do sujeito pela direita" },
|
|
57
|
+
|
|
58
|
+
// Crane / Jib
|
|
59
|
+
"crane-up": { description: "Subida ampla em grua revelando a cena" },
|
|
60
|
+
"crane-down": { description: "Descida ampla em grua" },
|
|
61
|
+
"boom-up": { description: "Subida em braço de boom" },
|
|
62
|
+
"boom-down": { description: "Descida em braço de boom" },
|
|
63
|
+
|
|
64
|
+
// Tracking / Follow
|
|
65
|
+
"tracking-shot": { description: "Câmera acompanha o sujeito em movimento, ao lado dele" },
|
|
66
|
+
"follow": { label: "Seguir", description: "Acompanhar o sujeito por trás" },
|
|
67
|
+
"lead": { label: "Liderar", description: "Mover-se à frente do sujeito que avança" },
|
|
68
|
+
"drone-follow": { description: "Drone elevado seguindo o sujeito" },
|
|
69
|
+
"dolly-track": { description: "Dolly em trilho paralelo ao lado do sujeito" },
|
|
70
|
+
"gimbal-walk": { label: "Caminhada com Gimbal", description: "Tomada caminhada suave em gimbal de 3 eixos, movimento flutuante e estável para frente" },
|
|
71
|
+
"ronin-glide": { label: "Deslizamento Ronin", description: "Movimento deslizante lento em gimbal Ronin / Movi, flutuação cinematográfica sem tremor" },
|
|
72
|
+
"serpentine": { label: "Trajetória Serpenteante", description: "A câmera serpenteia entre obstáculos em curvas em S, avançando por um caminho sinuoso" },
|
|
73
|
+
|
|
74
|
+
// Special angles / rigs
|
|
75
|
+
"pov": { description: "Ponto de vista em primeira pessoa" },
|
|
76
|
+
"over-the-shoulder": { description: "Enquadrar por cima do ombro de um personagem" },
|
|
77
|
+
"birds-eye": { description: "Visão direta de cima para baixo" },
|
|
78
|
+
"worms-eye": { description: "Ângulo extremamente baixo olhando para cima" },
|
|
79
|
+
"aerial": { label: "Aérea", description: "Cena aérea estilo drone em alta altitude" },
|
|
80
|
+
"helicopter": { label: "Helicóptero", description: "Aérea ampla e larga em alta altitude" },
|
|
81
|
+
"fly-over": { description: "Passagem aérea baixa e veloz sobre a cena" },
|
|
82
|
+
"flythrough": { description: "Câmera atravessa o espaço voando" },
|
|
83
|
+
"reveal": { label: "Revelação", description: "Revelar gradualmente a cena mais ampla" },
|
|
84
|
+
"snorricam": { description: "Câmera presa ao corpo (sujeito travado no quadro)" },
|
|
85
|
+
"rack-focus": { description: "Mudança de foco entre primeiro plano e fundo" },
|
|
86
|
+
|
|
87
|
+
// Modern / social-video
|
|
88
|
+
"handheld-vlog": { description: "Câmera na mão estilo vlog descontraído" },
|
|
89
|
+
"pov-walk": { description: "POV de caminhada em primeira pessoa" },
|
|
90
|
+
"velocity-edit": { description: "Pacing com speed-ramp estilo TikTok" },
|
|
91
|
+
"match-cut-zoom": { description: "Zoom no tempo de batida para corte" },
|
|
92
|
+
"screen-tap": { description: "Transição com toque na tela" },
|
|
93
|
+
"phone-flip": { description: "Troca entre câmera frontal e traseira" },
|
|
94
|
+
// Location-studio extension (PR #2505 follow-up)
|
|
95
|
+
"gentle-drift": { label: "Deriva Suave", description: "Movimento ambiente flutuante lento" },
|
|
96
|
+
"parallax": { label: "Paralaxe", description: "Movimento lateral com separação de profundidade entre primeiro plano e fundo" },
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
export default map
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
import type { LocaleCatalogMap } from "./types.js"
|
|
2
|
+
|
|
3
|
+
const map: LocaleCatalogMap = {
|
|
4
|
+
// Basic
|
|
5
|
+
"auto": { label: "Авто", description: "Дать модели выбрать подходящее движение камеры" },
|
|
6
|
+
"static": { label: "Статика", description: "Зафиксированная камера, без движения" },
|
|
7
|
+
"handheld": { label: "С рук", description: "Естественная дрожь при съёмке с рук" },
|
|
8
|
+
"steadicam": { label: "Стедикам", description: "Плавный стабилизированный кадр при ходьбе" },
|
|
9
|
+
|
|
10
|
+
// Pan
|
|
11
|
+
"pan-left": { label: "Панорама влево", description: "Поворот камеры по горизонтали влево" },
|
|
12
|
+
"pan-right": { label: "Панорама вправо", description: "Поворот камеры по горизонтали вправо" },
|
|
13
|
+
"whip-pan-left": { label: "Резкая панорама влево", description: "Быстрая резкая панорама влево с моушн-блюром" },
|
|
14
|
+
"whip-pan-right": { label: "Резкая панорама вправо", description: "Быстрая резкая панорама вправо с моушн-блюром" },
|
|
15
|
+
|
|
16
|
+
// Tilt
|
|
17
|
+
"tilt-up": { label: "Тилт вверх", description: "Наклон камеры вверх" },
|
|
18
|
+
"tilt-down": { label: "Тилт вниз", description: "Наклон камеры вниз" },
|
|
19
|
+
|
|
20
|
+
// Zoom
|
|
21
|
+
"zoom-in": { label: "Зум-ин", description: "Оптический зум на объект" },
|
|
22
|
+
"zoom-out": { label: "Зум-аут", description: "Оптический зум от объекта" },
|
|
23
|
+
"crash-zoom-in": { label: "Резкий зум-ин", description: "Быстрый стремительный зум на объект" },
|
|
24
|
+
"crash-zoom-out": { label: "Резкий зум-аут", description: "Быстрый стремительный зум от объекта" },
|
|
25
|
+
|
|
26
|
+
// Dolly
|
|
27
|
+
"dolly-in": { label: "Долли вперёд", description: "Толчок камеры к объекту (с параллаксом)" },
|
|
28
|
+
"dolly-out": { label: "Долли назад", description: "Отъезд камеры назад (с параллаксом)" },
|
|
29
|
+
"dolly-zoom": { label: "Долли-зум", description: "Эффект головокружения: долли против зума" },
|
|
30
|
+
"push-in": { label: "Лёгкий наезд", description: "Медленный мягкий наезд на объект" },
|
|
31
|
+
"pull-out": { label: "Лёгкий отъезд", description: "Медленный мягкий отъезд от объекта" },
|
|
32
|
+
"breathing": { label: "Дышащая камера", description: "Тонкое непрерывное колебание наезд-отъезд, органичное ощущение съёмки с рук" },
|
|
33
|
+
"push-pull": { label: "Push-Pull / Качание", description: "Камера движется к объекту, затем обратно, маятниковое приближение и отдаление" },
|
|
34
|
+
"creep-in": { label: "Незаметный наезд", description: "Чрезвычайно медленный незаметный наезд, нагнетающий страх или напряжение" },
|
|
35
|
+
"creep-out": { label: "Незаметный отъезд", description: "Чрезвычайно медленный незаметный отъезд, изолирующий объект в пространстве" },
|
|
36
|
+
|
|
37
|
+
// Truck
|
|
38
|
+
"truck-left": { label: "Тревеллинг влево", description: "Боковое смещение камеры влево" },
|
|
39
|
+
"truck-right": { label: "Тревеллинг вправо", description: "Боковое смещение камеры вправо" },
|
|
40
|
+
|
|
41
|
+
// Pedestal
|
|
42
|
+
"pedestal-up": { label: "Пьедестал вверх", description: "Подъём камеры по вертикали" },
|
|
43
|
+
"pedestal-down": { label: "Пьедестал вниз", description: "Опускание камеры по вертикали" },
|
|
44
|
+
|
|
45
|
+
// Roll
|
|
46
|
+
"roll-left": { label: "Крен влево", description: "Поворот камеры против часовой стрелки" },
|
|
47
|
+
"roll-right": { label: "Крен вправо", description: "Поворот камеры по часовой стрелке" },
|
|
48
|
+
"dutch-angle": { label: "Голландский угол", description: "Статичный наклонённый кадр для напряжения" },
|
|
49
|
+
|
|
50
|
+
// Orbit / Arc
|
|
51
|
+
"orbit-left": { label: "Орбита влево", description: "Полный круг вокруг объекта влево" },
|
|
52
|
+
"orbit-right": { label: "Орбита вправо", description: "Полный круг вокруг объекта вправо" },
|
|
53
|
+
"spin-360": { label: "Полный оборот 360°", description: "Камера поворачивается на полные 360 градусов вокруг своей оси" },
|
|
54
|
+
"orbit-360": { label: "Полная орбита 360°", description: "Камера описывает полную дугу 360 градусов вокруг объекта" },
|
|
55
|
+
"arc-left": { label: "Дуга влево", description: "Частичная дуга вокруг объекта влево" },
|
|
56
|
+
"arc-right": { label: "Дуга вправо", description: "Частичная дуга вокруг объекта вправо" },
|
|
57
|
+
|
|
58
|
+
// Crane / Jib
|
|
59
|
+
"crane-up": { label: "Кран вверх", description: "Размашистый подъём крана, раскрывающий сцену" },
|
|
60
|
+
"crane-down": { label: "Кран вниз", description: "Размашистое опускание крана" },
|
|
61
|
+
"boom-up": { label: "Стрела вверх", description: "Подъём на стреле" },
|
|
62
|
+
"boom-down": { label: "Стрела вниз", description: "Опускание на стреле" },
|
|
63
|
+
|
|
64
|
+
// Tracking / Follow
|
|
65
|
+
"tracking-shot": { label: "Тревеллинг", description: "Камера движется рядом с движущимся объектом" },
|
|
66
|
+
"follow": { label: "Преследование", description: "Преследование объекта сзади" },
|
|
67
|
+
"lead": { label: "Опережение", description: "Движение впереди приближающегося объекта" },
|
|
68
|
+
"drone-follow": { label: "Дрон-сопровождение", description: "Воздушное сопровождение объекта дроном" },
|
|
69
|
+
"dolly-track": { label: "Долли по рельсам", description: "Долли по параллельным рельсам рядом с объектом" },
|
|
70
|
+
"gimbal-walk": { label: "Ходьба со стабилизатором", description: "Плавная съёмка в движении на 3-осевом гимбале, парящее устойчивое движение вперёд" },
|
|
71
|
+
"ronin-glide": { label: "Скольжение Ronin", description: "Медленное скользящее движение на гимбале Ronin / Movi, кинематографическое парение без тряски" },
|
|
72
|
+
"serpentine": { label: "Серпантинная траектория", description: "Камера змеится между препятствиями по S-образным кривым, извилистый путь вперёд" },
|
|
73
|
+
|
|
74
|
+
// Special angles / rigs
|
|
75
|
+
"pov": { label: "POV", description: "Вид от первого лица" },
|
|
76
|
+
"over-the-shoulder": { label: "Через плечо", description: "Кадр через плечо персонажа" },
|
|
77
|
+
"birds-eye": { label: "С высоты птичьего полёта", description: "Прямой вид сверху вниз" },
|
|
78
|
+
"worms-eye": { label: "С земли", description: "Экстремально низкий ракурс снизу вверх" },
|
|
79
|
+
"aerial": { label: "Воздушная съёмка", description: "Высотный дроноподобный кадр" },
|
|
80
|
+
"helicopter": { label: "С вертолёта", description: "Широкий высотный размашистый воздушный пролёт" },
|
|
81
|
+
"fly-over": { label: "Пролёт над сценой", description: "Низкий быстрый воздушный пролёт над сценой" },
|
|
82
|
+
"flythrough": { label: "Пролёт сквозь", description: "Камера летит сквозь пространство" },
|
|
83
|
+
"reveal": { label: "Раскрытие", description: "Постепенное раскрытие более широкой сцены" },
|
|
84
|
+
"snorricam": { label: "Snorricam", description: "Камера, закреплённая на теле (объект зафиксирован в кадре)" },
|
|
85
|
+
"rack-focus": { label: "Перевод фокуса", description: "Перевод фокуса между передним и задним планом" },
|
|
86
|
+
|
|
87
|
+
// Modern / social-video vocabulary
|
|
88
|
+
"handheld-vlog": { label: "Влог с рук", description: "Непринуждённая ручная съёмка в стиле влога" },
|
|
89
|
+
"pov-walk": { label: "POV-ходьба", description: "POV-ходьба от первого лица" },
|
|
90
|
+
"velocity-edit": { label: "Скоростной монтаж", description: "Темп с ускорением в стиле TikTok" },
|
|
91
|
+
"match-cut-zoom": { label: "Зум для match cut", description: "Зум, синхронизированный с битом для склейки" },
|
|
92
|
+
"screen-tap": { label: "Касание экрана", description: "Переход с касанием пальца по экрану" },
|
|
93
|
+
"phone-flip": { label: "Переключение камеры телефона", description: "Переключение между фронтальной и основной камерой" },
|
|
94
|
+
// Location-studio extension (PR #2505 follow-up)
|
|
95
|
+
"gentle-drift": { label: "Плавный Дрейф", description: "Медленное плавающее окружающее движение" },
|
|
96
|
+
"parallax": { label: "Параллакс", description: "Боковое движение с разделением глубины переднего и заднего планов" },
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
export default map
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
import type { LocaleCatalogMap } from "./types.js"
|
|
2
|
+
|
|
3
|
+
const map: LocaleCatalogMap = {
|
|
4
|
+
// Basic
|
|
5
|
+
"auto": { label: "自动", description: "由模型选择合适的镜头运动" },
|
|
6
|
+
"static": { label: "固定", description: "镜头固定不动" },
|
|
7
|
+
"handheld": { label: "手持", description: "自然的手持抖动" },
|
|
8
|
+
"steadicam": { label: "斯坦尼康", description: "平稳的稳定器行走镜头" },
|
|
9
|
+
|
|
10
|
+
// Pan
|
|
11
|
+
"pan-left": { label: "向左摇镜", description: "镜头水平向左旋转" },
|
|
12
|
+
"pan-right": { label: "向右摇镜", description: "镜头水平向右旋转" },
|
|
13
|
+
"whip-pan-left": { label: "向左甩镜", description: "快速向左甩镜并带运动模糊" },
|
|
14
|
+
"whip-pan-right": { label: "向右甩镜", description: "快速向右甩镜并带运动模糊" },
|
|
15
|
+
|
|
16
|
+
// Tilt
|
|
17
|
+
"tilt-up": { label: "上摇", description: "镜头向上俯仰" },
|
|
18
|
+
"tilt-down": { label: "下摇", description: "镜头向下俯仰" },
|
|
19
|
+
|
|
20
|
+
// Zoom
|
|
21
|
+
"zoom-in": { label: "推近变焦", description: "镜头变焦推向被摄对象" },
|
|
22
|
+
"zoom-out": { label: "拉远变焦", description: "镜头变焦远离被摄对象" },
|
|
23
|
+
"crash-zoom-in": { label: "急推变焦", description: "急促的甩入式推近变焦" },
|
|
24
|
+
"crash-zoom-out": { label: "急拉变焦", description: "急促的甩出式拉远变焦" },
|
|
25
|
+
|
|
26
|
+
// Dolly
|
|
27
|
+
"dolly-in": { label: "推轨", description: "推动机位靠近被摄对象(带视差)" },
|
|
28
|
+
"dolly-out": { label: "拉轨", description: "拉远机位远离被摄对象(带视差)" },
|
|
29
|
+
"dolly-zoom": { label: "滑动变焦", description: "眩晕效果:推轨与变焦反向" },
|
|
30
|
+
"push-in": { label: "缓推", description: "缓慢轻柔地推向被摄对象" },
|
|
31
|
+
"pull-out": { label: "缓拉", description: "缓慢轻柔地拉远被摄对象" },
|
|
32
|
+
"breathing": { label: "呼吸式镜头", description: "细微而连续的推拉震荡,有机的手持质感" },
|
|
33
|
+
"push-pull": { label: "推拉/摇摆", description: "镜头先靠近主体再后退,摆动式的接近与撤离" },
|
|
34
|
+
"creep-in": { label: "渐近推近", description: "几乎察觉不到的极慢推近,营造恐惧或紧张感" },
|
|
35
|
+
"creep-out": { label: "渐远拉离", description: "几乎察觉不到的极慢拉离,使主体在空间中孤立" },
|
|
36
|
+
|
|
37
|
+
// Truck
|
|
38
|
+
"truck-left": { label: "向左横移", description: "机身横向向左滑移" },
|
|
39
|
+
"truck-right": { label: "向右横移", description: "机身横向向右滑移" },
|
|
40
|
+
|
|
41
|
+
// Pedestal
|
|
42
|
+
"pedestal-up": { label: "升镜", description: "机身垂直升高" },
|
|
43
|
+
"pedestal-down": { label: "降镜", description: "机身垂直下降" },
|
|
44
|
+
|
|
45
|
+
// Roll
|
|
46
|
+
"roll-left": { label: "左滚动", description: "镜头逆时针旋转" },
|
|
47
|
+
"roll-right": { label: "右滚动", description: "镜头顺时针旋转" },
|
|
48
|
+
"dutch-angle": { label: "荷兰角", description: "营造紧张感的固定倾斜画面" },
|
|
49
|
+
|
|
50
|
+
// Orbit / Arc
|
|
51
|
+
"orbit-left": { label: "向左环绕", description: "镜头绕被摄对象向左完整环绕" },
|
|
52
|
+
"orbit-right": { label: "向右环绕", description: "镜头绕被摄对象向右完整环绕" },
|
|
53
|
+
"spin-360": { label: "360°整圈自转", description: "镜头围绕自身轴心整圈360度旋转" },
|
|
54
|
+
"orbit-360": { label: "360°整圈环绕", description: "镜头围绕主体整圈360度环行" },
|
|
55
|
+
"arc-left": { label: "左弧形运镜", description: "围绕被摄对象向左做局部弧线" },
|
|
56
|
+
"arc-right": { label: "右弧形运镜", description: "围绕被摄对象向右做局部弧线" },
|
|
57
|
+
|
|
58
|
+
// Crane / Jib
|
|
59
|
+
"crane-up": { label: "升降臂上升", description: "用升降臂上升揭示场景" },
|
|
60
|
+
"crane-down": { label: "升降臂下降", description: "用升降臂下降的扫摇" },
|
|
61
|
+
"boom-up": { label: "摇臂上升", description: "摇臂抬升运动" },
|
|
62
|
+
"boom-down": { label: "摇臂下降", description: "摇臂下降运动" },
|
|
63
|
+
|
|
64
|
+
// Tracking
|
|
65
|
+
"tracking-shot": { label: "跟拍镜头", description: "镜头与移动主体并排跟随" },
|
|
66
|
+
"follow": { label: "跟随", description: "从主体身后跟随" },
|
|
67
|
+
"lead": { label: "倒退引拍", description: "在前进的主体前方退行拍摄" },
|
|
68
|
+
"drone-follow": { label: "无人机跟拍", description: "高空无人机跟随主体" },
|
|
69
|
+
"dolly-track": { label: "并行轨道推移", description: "在主体旁的平行轨道上推移" },
|
|
70
|
+
"gimbal-walk": { label: "稳定器行走", description: "三轴稳定器上的平稳行走镜头,稳定漂浮的前进运动" },
|
|
71
|
+
"ronin-glide": { label: "Ronin 滑行", description: "Ronin / Movi 稳定器上的缓慢滑行,无抖动的电影感漂浮" },
|
|
72
|
+
"serpentine": { label: "蛇形轨道", description: "镜头以 S 形曲线在障碍间穿行,蜿蜒前行的路径" },
|
|
73
|
+
|
|
74
|
+
// Special
|
|
75
|
+
"pov": { label: "主观视角", description: "第一人称视角" },
|
|
76
|
+
"over-the-shoulder":{ label: "过肩", description: "越过角色肩膀的取景" },
|
|
77
|
+
"birds-eye": { label: "鸟瞰", description: "正上方俯视画面" },
|
|
78
|
+
"worms-eye": { label: "蠕虫视角", description: "极低机位向上仰视" },
|
|
79
|
+
"aerial": { label: "航拍", description: "高空无人机风格画面" },
|
|
80
|
+
"helicopter": { label: "直升机镜头", description: "宽阔的高空横扫航拍" },
|
|
81
|
+
"fly-over": { label: "低空飞越", description: "低空快速掠过场景的航拍" },
|
|
82
|
+
"flythrough": { label: "穿越镜头", description: "镜头穿行穿越空间" },
|
|
83
|
+
"reveal": { label: "揭示镜头", description: "逐步揭示更广阔的场景" },
|
|
84
|
+
"snorricam": { label: "Snorricam 体绑机", description: "体绑摄影机(主体锁定在画面中)" },
|
|
85
|
+
"rack-focus": { label: "变焦点", description: "在前后景之间拉焦" },
|
|
86
|
+
|
|
87
|
+
// Modern / social-video
|
|
88
|
+
"handheld-vlog": { label: "手持 Vlog", description: "随性的 Vlog 风格手持" },
|
|
89
|
+
"pov-walk": { label: "主观行走", description: "第一人称行走主观镜头" },
|
|
90
|
+
"velocity-edit": { label: "速度剪辑", description: "TikTok 节奏的速率变化" },
|
|
91
|
+
"match-cut-zoom": { label: "节拍变焦", description: "卡点变焦用于剪辑" },
|
|
92
|
+
"screen-tap": { label: "点屏切换", description: "屏幕上手指点击触发的转场" },
|
|
93
|
+
"phone-flip": { label: "翻面切换", description: "前后摄像头翻转切换" },
|
|
94
|
+
// Location-studio extension (PR #2505 follow-up)
|
|
95
|
+
"gentle-drift": { label: "缓慢漂移", description: "缓慢的环境浮动运动" },
|
|
96
|
+
"parallax": { label: "视差", description: "前景与背景深度分离的横向运动" },
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
export default map
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import type { LocaleCatalogMap } from "./types.js"
|
|
2
|
+
|
|
3
|
+
const map: LocaleCatalogMap = {
|
|
4
|
+
// ── Transformation ──
|
|
5
|
+
"auto": { label: "تلقائي", description: "يختار النموذج التأثير المناسب" },
|
|
6
|
+
"none": { label: "لا شيء", description: "بدون تأثير على الشخصية" },
|
|
7
|
+
"werewolf": { label: "مستذئب", description: "يتحول إلى مستذئب" },
|
|
8
|
+
"vampire": { label: "مصاص دماء", description: "يتحول إلى مصاص دماء" },
|
|
9
|
+
"cyborg": { label: "كشف السايبورغ", description: "الجلد ينفتح ليكشف التحسينات الإلكترونية" },
|
|
10
|
+
"ghost-form": { label: "شكل الشبح", description: "الجسم يصبح شفافاً وأثيرياً" },
|
|
11
|
+
"statue-stone": { label: "تحجر", description: "الجسم يتحول إلى تمثال حجري" },
|
|
12
|
+
"liquid-metal": { label: "معدن سائل", description: "يتحول إلى معدن كروم سائل (بأسلوب T-1000)" },
|
|
13
|
+
"animalization": { label: "تحول حيواني", description: "يتحول إلى حيوان" },
|
|
14
|
+
"gorilla-form": { label: "شكل الغوريلا", description: "يتحول إلى غوريلا ضخمة" },
|
|
15
|
+
"mystification": { label: "تحول سحري", description: "هالة سحرية تحيط وتحول الشخصية" },
|
|
16
|
+
"gas-form": { label: "تحول غازي", description: "الجسم يتبدد إلى غيمة من الغاز" },
|
|
17
|
+
"diamond-skin": { label: "جلد الماس", description: "الجسم يتبلور إلى وجوه ماسية" },
|
|
18
|
+
"agent-reveal": { label: "كشف العميل", description: "بدلة ونظارات تظهر على الشخصية" },
|
|
19
|
+
|
|
20
|
+
// ── Power ──
|
|
21
|
+
"fire-breathe": { label: "تنفس النار", description: "يتنفس نفاثة مستمرة من اللهب" },
|
|
22
|
+
"ice-breathe": { label: "تنفس الجليد", description: "يتنفس تيار هواء جليدي متجمد" },
|
|
23
|
+
"air-bending": { label: "تحريك الهواء", description: "يتحكم في دوامة مرئية من الرياح" },
|
|
24
|
+
"water-bending": { label: "تحريك الماء", description: "يتحكم في شريط من الماء بالإيماءات" },
|
|
25
|
+
"earth-bending": { label: "تحريك الأرض", description: "يرفع ألواحاً حجرية من الأرض" },
|
|
26
|
+
"lightning-hands": { label: "أقواس كهربائية", description: "أقواس كهربائية تتفجر من يديه" },
|
|
27
|
+
"levitation": { label: "تحليق", description: "يرتفع عن الأرض، الجسم رأسي أو أفقي" },
|
|
28
|
+
"telekinesis": { label: "الحركة عن بُعد", description: "الأجسام القريبة تطفو وتدور حوله" },
|
|
29
|
+
"invisibility": { label: "الاختفاء", description: "الجسم يتلاشى إلى شفافية" },
|
|
30
|
+
"hero-flight": { label: "طيران البطل", description: "ينطلق إلى السماء بوضعية الطيران البطولية" },
|
|
31
|
+
"super-speed": { label: "سرعة فائقة", description: "يتحرك بسرعة خارقة مع ظلال متعددة" },
|
|
32
|
+
"soul-departure": { label: "خروج الروح", description: "روح شفافة تخرج من جسده" },
|
|
33
|
+
|
|
34
|
+
// ── Body-Mod ──
|
|
35
|
+
"wings-grow": { label: "نمو الأجنحة", description: "أجنحة تنبثق وتنتشر من الظهر" },
|
|
36
|
+
"horns-grow": { label: "بروز القرون", description: "قرون تخرج من الرأس" },
|
|
37
|
+
"tail-emerge": { label: "ظهور الذيل", description: "ذيل يمتد من قاعدة العمود الفقري" },
|
|
38
|
+
"tentacles-emerge": { label: "ظهور المجسات", description: "مجسات تلتوي وتخرج من الظهر أو الجسد" },
|
|
39
|
+
"extra-eyes": { label: "فتح عيون إضافية", description: "عيون إضافية تفتح عبر الوجه والجسم" },
|
|
40
|
+
"head-explode": { label: "انفجار الرأس", description: "الرأس ينفجر بجسيمات مجردة (مناسب للعموم)" },
|
|
41
|
+
"head-off": { label: "نزع الرأس", description: "الرأس ينفصل ويطفو (مصمم وغير دموي)" },
|
|
42
|
+
"spiders-from-mouth": { label: "عناكب من الفم", description: "عناكب تزحف من الفم المفتوح (رعب)" },
|
|
43
|
+
"skin-surge": { label: "تموج الجلد", description: "الجلد يتموج وكأن شيئاً يتحرك تحته" },
|
|
44
|
+
|
|
45
|
+
// ── Face-Expression ──
|
|
46
|
+
"horror-face": { label: "وجه الرعب", description: "الوجه يتشوه في تعبير مرعب" },
|
|
47
|
+
"oni-mask": { label: "قناع الأوني", description: "قناع شيطاني أحمر وذهبي يظهر على الوجه" },
|
|
48
|
+
"glowing-eyes": { label: "عيون متوهجة", description: "العينان تشتعلان بضوء داخلي" },
|
|
49
|
+
"floral-eyes": { label: "عيون زهرية", description: "أزهار تتفتح من محاجر العينين" },
|
|
50
|
+
"bloom-mouth": { label: "فم مزهر", description: "أزهار تتفتح من الفم المفتوح" },
|
|
51
|
+
"x-ray": { label: "كشف بالأشعة السينية", description: "الجسم يكشف هيكله العظمي بأسلوب الأشعة السينية" },
|
|
52
|
+
"agent-snap": { label: "ارتداء النظارات", description: "نظارات شمسية تظهر على عيني الشخصية" },
|
|
53
|
+
"visor-x": { label: "قناع سايبر", description: "قناع إلكتروني مستقبلي يتجسد على الوجه" },
|
|
54
|
+
|
|
55
|
+
// ── Aura-Ambient ──
|
|
56
|
+
"paparazzi": { label: "ومضات المصورين", description: "ومضات كاميرات تنطلق حول الشخصية" },
|
|
57
|
+
"money-rain": { label: "مطر الأموال", description: "أوراق نقدية تمطر حول الشخصية" },
|
|
58
|
+
"color-rain": { label: "مطر ملون", description: "قطرات مطر ملونة حول الشخصية" },
|
|
59
|
+
"saint-glow": { label: "هالة القديس", description: "هالة ذهبية وضوء إلهي يشعان حول الشخصية" },
|
|
60
|
+
"fire-aura": { label: "هالة نارية", description: "ألسنة لهب تلتف حول جسد الشخصية" },
|
|
61
|
+
"frost-aura": { label: "هالة جليدية", description: "صقيع وجليد يشعان من الشخصية" },
|
|
62
|
+
"shadow-aura": { label: "هالة الظلام", description: "خيوط ظل داكنة تلتف حول الشخصية" },
|
|
63
|
+
"electricity-aura": { label: "هالة كهربائية", description: "أقواس كهربائية كملفات تيسلا تحيط بالشخصية" },
|
|
64
|
+
"sparkles-around": { label: "بريق سحري", description: "بريق سحري وجسيمات تدور حول الشخصية" },
|
|
65
|
+
"fairies-around": { label: "جنيات حول الشخصية", description: "جنيات متوهجة صغيرة ترفرف حول الشخصية" },
|
|
66
|
+
"objects-orbit": { label: "أجسام تدور في مدار", description: "أجسام صغيرة تطفو وتدور حول الشخصية" },
|
|
67
|
+
"petals-around": { label: "بتلات حول الشخصية", description: "بتلات زهر الكرز تتساقط حول الشخصية" },
|
|
68
|
+
"glow-trace": { label: "أثر ضوئي", description: "مسارات مضيئة تتبع حركة الشخصية" },
|
|
69
|
+
"tattoo-animation": { label: "أنيميشن الوشم", description: "الوشوم تتوهج وتتحرك على الجلد" },
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
export default map
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import type { LocaleCatalogMap } from "./types.js"
|
|
2
|
+
|
|
3
|
+
const map: LocaleCatalogMap = {
|
|
4
|
+
// ── Transformation ──
|
|
5
|
+
"auto": { label: "Automatisch", description: "Das Modell wählt den Effekt" },
|
|
6
|
+
"none": { label: "Keiner", description: "Kein Charaktereffekt" },
|
|
7
|
+
"werewolf": { label: "Werwolf", description: "Verwandelt sich in einen Werwolf" },
|
|
8
|
+
"vampire": { label: "Vampir", description: "Verwandelt sich in einen Vampir" },
|
|
9
|
+
"cyborg": { label: "Cyborg-Enthüllung", description: "Die Haut öffnet sich und enthüllt Kybernetik" },
|
|
10
|
+
"ghost-form": { label: "Geisterform", description: "Der Körper wird transluzent und ätherisch" },
|
|
11
|
+
"statue-stone": { label: "Versteinerung", description: "Der Körper versteinert zu einer Steinstatue" },
|
|
12
|
+
"liquid-metal": { label: "Flüssiges Metall", description: "Flüssige Chrommetall-Form im T-1000-Stil" },
|
|
13
|
+
"animalization": { label: "Tierverwandlung", description: "Verwandelt sich in ein Tier" },
|
|
14
|
+
"gorilla-form": { label: "Gorilla-Form", description: "Verwandelt sich in einen Gorilla" },
|
|
15
|
+
"mystification": { label: "Mystifizierung", description: "Magische Aura umhüllt und verwandelt das Sujet" },
|
|
16
|
+
"gas-form": { label: "Gasform", description: "Der Körper löst sich in Gasform auf" },
|
|
17
|
+
"diamond-skin": { label: "Diamanthaut", description: "Der Körper kristallisiert zu Diamantfacetten" },
|
|
18
|
+
"agent-reveal": { label: "Agenten-Enthüllung", description: "Anzug und Sonnenbrille materialisieren sich auf dem Sujet" },
|
|
19
|
+
|
|
20
|
+
// ── Power ──
|
|
21
|
+
"fire-breathe": { label: "Feuerspeien", description: "Atmet einen anhaltenden Feuerstrahl aus" },
|
|
22
|
+
"ice-breathe": { label: "Eisatem", description: "Atmet einen Strahl eiskalter Luft aus" },
|
|
23
|
+
"air-bending": { label: "Luftkontrolle", description: "Manipuliert einen wirbelnden Luftvortex" },
|
|
24
|
+
"water-bending": { label: "Wasserkontrolle", description: "Manipuliert fließendes Wasser mit Gesten" },
|
|
25
|
+
"earth-bending": { label: "Erdkontrolle", description: "Hebt Steinplatten aus dem Boden" },
|
|
26
|
+
"lightning-hands": { label: "Blitzhände", description: "Elektrische Lichtbögen schießen aus den Händen" },
|
|
27
|
+
"levitation": { label: "Levitation", description: "Erhebt sich vom Boden in vertikaler oder horizontaler Haltung" },
|
|
28
|
+
"telekinesis": { label: "Telekinese", description: "Nahe Objekte schweben und kreisen" },
|
|
29
|
+
"invisibility": { label: "Unsichtbarkeit", description: "Der Körper verblasst bis zur Transparenz" },
|
|
30
|
+
"hero-flight": { label: "Heldenflug", description: "Schießt in heroischer Flugpose in den Himmel" },
|
|
31
|
+
"super-speed": { label: "Übergeschwindigkeit", description: "Verwischt zu ultraschneller Bewegung" },
|
|
32
|
+
"soul-departure": { label: "Seelenabgang", description: "Eine transluzente Seele erhebt sich aus dem Körper" },
|
|
33
|
+
|
|
34
|
+
// ── Body-Mod ──
|
|
35
|
+
"wings-grow": { label: "Flügel wachsen", description: "Flügel sprießen und entfalten sich aus dem Rücken" },
|
|
36
|
+
"horns-grow": { label: "Hörner wachsen", description: "Hörner dringen aus dem Kopf hervor" },
|
|
37
|
+
"tail-emerge": { label: "Schwanz wächst", description: "Ein Schwanz erstreckt sich von der Wirbelsäulenbasis" },
|
|
38
|
+
"tentacles-emerge": { label: "Tentakel wachsen", description: "Tentakel schlängeln sich aus dem Rücken oder Körper" },
|
|
39
|
+
"extra-eyes": { label: "Zusatzaugen öffnen sich", description: "Weitere Augen öffnen sich im Gesicht oder am Körper" },
|
|
40
|
+
"head-explode": { label: "Kopfexplosion", description: "Der Kopf explodiert gewaltsam (stilisiert, jugendfrei)" },
|
|
41
|
+
"head-off": { label: "Kopfabnahme", description: "Der Kopf löst sich und schwebt frei (stilisiert, jugendfrei)" },
|
|
42
|
+
"spiders-from-mouth":{ label: "Spinnen aus dem Mund", description: "Spinnen krabbeln aus dem geöffneten Mund (Horror)" },
|
|
43
|
+
"skin-surge": { label: "Hautwoge", description: "Die Haut wogt mit Bewegung unter der Oberfläche" },
|
|
44
|
+
|
|
45
|
+
// ── Face-Expression ──
|
|
46
|
+
"horror-face": { label: "Horrorgesicht", description: "Das Gesicht verzerrt sich zu einem Horrorausdruck" },
|
|
47
|
+
"oni-mask": { label: "Oni-Maske", description: "Eine Oni-Dämonenmaske materialisiert sich über dem Gesicht" },
|
|
48
|
+
"glowing-eyes": { label: "Leuchtende Augen", description: "Die Augen entzünden sich mit innerem Licht" },
|
|
49
|
+
"floral-eyes": { label: "Blumenaugen", description: "Blumen erblühen aus den Augenhöhlen" },
|
|
50
|
+
"bloom-mouth": { label: "Blütenmund", description: "Blumen erblühen aus dem geöffneten Mund" },
|
|
51
|
+
"x-ray": { label: "Röntgen-Enthüllung", description: "Der Körper wird im Röntgenstil sichtbar und zeigt das Skelett" },
|
|
52
|
+
"agent-snap": { label: "Sonnenbrille aufs Gesicht", description: "Eine Sonnenbrille schnappt mit einem Klick auf die Augen" },
|
|
53
|
+
"visor-x": { label: "Cyber-Visier", description: "Ein futuristisches Cyber-Visier materialisiert sich" },
|
|
54
|
+
|
|
55
|
+
// ── Aura-Ambient ──
|
|
56
|
+
"paparazzi": { label: "Paparazzi-Blitze", description: "Kamerablitze feuern um das Sujet herum" },
|
|
57
|
+
"money-rain": { label: "Geldregen", description: "Geldscheine regnen um das Sujet herum" },
|
|
58
|
+
"color-rain": { label: "Farbregen", description: "Leuchtend farbiger Regen um das Sujet herum" },
|
|
59
|
+
"saint-glow": { label: "Heiligenschein", description: "Heiligenschein und göttliches Licht strahlen um das Sujet" },
|
|
60
|
+
"fire-aura": { label: "Feueraura", description: "Flammen lecken um den Körper des Sujets" },
|
|
61
|
+
"frost-aura": { label: "Frostaura", description: "Raureif und Eis strahlen vom Sujet aus" },
|
|
62
|
+
"shadow-aura": { label: "Schattenaura", description: "Dunkle Schattenranken winden sich um das Sujet" },
|
|
63
|
+
"electricity-aura": { label: "Elektro-Aura", description: "Tesla-artige elektrische Bögen umgeben das Sujet" },
|
|
64
|
+
"sparkles-around": { label: "Magische Funken", description: "Magische Funken kreisen um das Sujet" },
|
|
65
|
+
"fairies-around": { label: "Feen ringsherum", description: "Kleine leuchtende Feen flattern um das Sujet herum" },
|
|
66
|
+
"objects-orbit": { label: "Kreisende Objekte", description: "Kleine Objekte schweben und kreisen um das Sujet" },
|
|
67
|
+
"petals-around": { label: "Blütenblätter", description: "Kirschblütenblätter treiben sanft um das Sujet" },
|
|
68
|
+
"glow-trace": { label: "Leuchtende Spur", description: "Leuchtende Spuren folgen der Bewegung des Sujets" },
|
|
69
|
+
"tattoo-animation": { label: "Tattoo-Animation", description: "Tätowierungen leuchten und animieren sich auf der Haut" },
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
export default map
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import type { LocaleCatalogMap } from "./types.js"
|
|
2
|
+
|
|
3
|
+
const map: LocaleCatalogMap = {
|
|
4
|
+
// ── Transformation ──
|
|
5
|
+
"auto": { label: "Automático", description: "El modelo elige el efecto" },
|
|
6
|
+
"none": { label: "Ninguno", description: "Sin efecto de personaje" },
|
|
7
|
+
"werewolf": { label: "Hombre Lobo", description: "Se transforma en hombre lobo" },
|
|
8
|
+
"vampire": { label: "Vampiro", description: "Se transforma en vampiro" },
|
|
9
|
+
"cyborg": { label: "Revelación de Cyborg", description: "La piel se abre revelando implantes cibernéticos" },
|
|
10
|
+
"ghost-form": { label: "Forma Fantasmal", description: "El cuerpo se vuelve translúcido y etéreo" },
|
|
11
|
+
"statue-stone": { label: "Petrificación", description: "El cuerpo se petrifica en estatua de piedra" },
|
|
12
|
+
"liquid-metal": { label: "Metal Líquido", description: "Forma de metal cromo líquido estilo T-1000" },
|
|
13
|
+
"animalization": { label: "Animalización", description: "Se transforma en un animal" },
|
|
14
|
+
"gorilla-form": { label: "Forma de Gorila", description: "Se transforma en un gorila" },
|
|
15
|
+
"mystification": { label: "Mistificación", description: "Aura mágica envuelve y transforma al sujeto" },
|
|
16
|
+
"gas-form": { label: "Transformación Gaseosa", description: "El cuerpo se disipa en forma gaseosa" },
|
|
17
|
+
"diamond-skin": { label: "Piel de Diamante", description: "El cuerpo se cristaliza en facetas de diamante" },
|
|
18
|
+
"agent-reveal": { label: "Revelación de Agente", description: "Traje y gafas oscuras se materializan sobre el sujeto" },
|
|
19
|
+
|
|
20
|
+
// ── Power ──
|
|
21
|
+
"fire-breathe": { label: "Escupefuego", description: "Exhala un chorro continuo de llamas" },
|
|
22
|
+
"ice-breathe": { label: "Aliento de Hielo", description: "Exhala un chorro de aire gélido" },
|
|
23
|
+
"air-bending": { label: "Control del Aire", description: "Manipula un vórtice giratorio de aire" },
|
|
24
|
+
"water-bending": { label: "Control del Agua", description: "Manipula el agua fluyente con gestos" },
|
|
25
|
+
"earth-bending": { label: "Control de la Tierra", description: "Levanta losas de piedra del suelo" },
|
|
26
|
+
"lightning-hands": { label: "Manos de Rayo", description: "Arcos eléctricos salen de las manos" },
|
|
27
|
+
"levitation": { label: "Levitación", description: "Se eleva del suelo en posición vertical u horizontal" },
|
|
28
|
+
"telekinesis": { label: "Telequinesis", description: "Objetos cercanos flotan y orbitan" },
|
|
29
|
+
"invisibility": { label: "Invisibilidad", description: "El cuerpo se desvanece hasta quedar transparente" },
|
|
30
|
+
"hero-flight": { label: "Vuelo de Héroe", description: "Se lanza al cielo en postura de vuelo heroico" },
|
|
31
|
+
"super-speed": { label: "Súpervelocidad", description: "Se difumina en movimiento ultrarrápido" },
|
|
32
|
+
"soul-departure": { label: "Partida del Alma", description: "Un alma translúcida se eleva del cuerpo" },
|
|
33
|
+
|
|
34
|
+
// ── Body-Mod ──
|
|
35
|
+
"wings-grow": { label: "Alas que Brotan", description: "Alas que brotan y se despliegan desde la espalda" },
|
|
36
|
+
"horns-grow": { label: "Cuernos que Emergen", description: "Cuernos que salen de la cabeza" },
|
|
37
|
+
"tail-emerge": { label: "Cola que Emerge", description: "Cola que se extiende desde la base de la columna" },
|
|
38
|
+
"tentacles-emerge": { label: "Tentáculos que Emergen", description: "Tentáculos que serpentean desde la espalda o el cuerpo" },
|
|
39
|
+
"extra-eyes": { label: "Ojos Extra que Abren", description: "Ojos adicionales que se abren en la cara o el cuerpo" },
|
|
40
|
+
"head-explode": { label: "Explosión de Cabeza", description: "La cabeza estalla violentamente (apto para menores)" },
|
|
41
|
+
"head-off": { label: "Cabeza Desprendida", description: "La cabeza se desprende y flota (estilizado, apto menores)" },
|
|
42
|
+
"spiders-from-mouth":{ label: "Arañas por la Boca", description: "Arañas que salen de la boca abierta (terror)" },
|
|
43
|
+
"skin-surge": { label: "Oleada de Piel", description: "La piel ondula con movimiento bajo la superficie" },
|
|
44
|
+
|
|
45
|
+
// ── Face-Expression ──
|
|
46
|
+
"horror-face": { label: "Cara de Terror", description: "La cara se contorsiona en expresión de horror" },
|
|
47
|
+
"oni-mask": { label: "Máscara Oni", description: "Máscara de demonio oni que se materializa sobre la cara" },
|
|
48
|
+
"glowing-eyes": { label: "Ojos Brillantes", description: "Los ojos se encienden con luz interna" },
|
|
49
|
+
"floral-eyes": { label: "Ojos Florales", description: "Flores que brotan de las cuencas oculares" },
|
|
50
|
+
"bloom-mouth": { label: "Boca en Flor", description: "Flores que brotan de la boca abierta" },
|
|
51
|
+
"x-ray": { label: "Revelación de Rayos X", description: "El cuerpo se vuelve visible en rayos X mostrando el esqueleto" },
|
|
52
|
+
"agent-snap": { label: "Gafas de Sol al Instante", description: "Las gafas oscuras se materializan sobre los ojos" },
|
|
53
|
+
"visor-x": { label: "Visor Cibernético", description: "Visor cibernético sci-fi que se materializa" },
|
|
54
|
+
|
|
55
|
+
// ── Aura-Ambient ──
|
|
56
|
+
"paparazzi": { label: "Flashes de Paparazzi", description: "Flashes de cámara estallan alrededor del sujeto" },
|
|
57
|
+
"money-rain": { label: "Lluvia de Dinero", description: "Billetes llueven alrededor del sujeto" },
|
|
58
|
+
"color-rain": { label: "Lluvia de Color", description: "Lluvia de colores vivos alrededor del sujeto" },
|
|
59
|
+
"saint-glow": { label: "Resplandor de Santo", description: "Halo y divina luz irradian alrededor del sujeto" },
|
|
60
|
+
"fire-aura": { label: "Aura de Fuego", description: "Llamas que lamen el cuerpo del sujeto" },
|
|
61
|
+
"frost-aura": { label: "Aura de Hielo", description: "Escarcha y hielo que irradian desde el sujeto" },
|
|
62
|
+
"shadow-aura": { label: "Aura de Sombra", description: "Zarcillos de sombra oscura que giran alrededor del sujeto" },
|
|
63
|
+
"electricity-aura": { label: "Aura Eléctrica", description: "Arcos eléctricos estilo bobina de Tesla alrededor del sujeto" },
|
|
64
|
+
"sparkles-around": { label: "Destellos Mágicos", description: "Destellos mágicos orbitan alrededor del sujeto" },
|
|
65
|
+
"fairies-around": { label: "Hadas Alrededor", description: "Pequeñas hadas brillantes revolotean alrededor del sujeto" },
|
|
66
|
+
"objects-orbit": { label: "Objetos en Órbita", description: "Pequeños objetos flotan y orbitan alrededor del sujeto" },
|
|
67
|
+
"petals-around": { label: "Pétalos Alrededor", description: "Pétalos de cerezo que se posan suavemente alrededor del sujeto" },
|
|
68
|
+
"glow-trace": { label: "Estela de Luz", description: "Estelas luminosas siguen el movimiento del sujeto" },
|
|
69
|
+
"tattoo-animation": { label: "Tatuajes Animados", description: "Los tatuajes brillan y se animan sobre la piel" },
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
export default map
|