feat(studio): theme picker — 4-color brand theme + curated preset swatches
Extends the studio's 2-color palette to the full 4-color brand theme (accent / secondary / background / text) matching the Remotion SceneColors, so the studio's colour state maps 1:1 to the scene engine. - studio-store: add sceneSecondaryColor + sceneTextColor + their setters + an applySceneTheme(accent,secondary,background,text) action (sets all four + recolours canvas layers: bg→background, overlays→secondary, shapes→accent, text→text explicitly); persist both new fields in hydrate + getSceneDataForSave. - studio-scene-data: carry sceneSecondaryColor + sceneTextColor through VideoPersistedSceneData / build / parse (with defaults). - ColorsCustomTab: 6 one-click theme presets (Warm/Berry/Midnight/Ocean/Sunset/ Mono) + 4 manual colour inputs + Apply. - i18n: secondaryColor/textColor/themePresets/applyTheme(+preset) in fa + en. Verified with `npm run build`. NOTE: the theme persists in scene_data and recolours the canvas; wiring the 4 colours all the way to a FlexStory render's saved_shared_colors depends on the studio-svc shared-colour sync (a small follow-up). Block-FIELD editing remains the Phase 4 follow-up. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
+7
-2
@@ -1148,8 +1148,13 @@
|
||||
"description": "صداگذاری را مستقیماً از روی متن خود در استودیو بسازید."
|
||||
},
|
||||
"componentsStudioSidebarColorsCustomTab": {
|
||||
"mainColor": "رنگ اصلی",
|
||||
"additionalColor": "رنگ مکمل",
|
||||
"mainColor": "پسزمینه",
|
||||
"additionalColor": "رنگ اصلی",
|
||||
"secondaryColor": "رنگ دوم",
|
||||
"textColor": "رنگ متن",
|
||||
"themePresets": "تمها",
|
||||
"applyThemePreset": "اعمال تم {name}",
|
||||
"applyTheme": "اعمال تم",
|
||||
"applyToAllScenes": "اعمال به همه صحنهها"
|
||||
},
|
||||
"componentsStudioSidebarColorsPalettesTab": {
|
||||
|
||||
Reference in New Issue
Block a user