B1-5..B1-20: distill remaining code behaviors into specs (rendering.allium, post/media/task/generation/editor specs)
This commit is contained in:
@@ -130,9 +130,15 @@ surface MediaEditorSurface {
|
||||
@guarantee TranslationsSection
|
||||
-- Shown only when language is set.
|
||||
-- List of existing translations: flag emoji + language name + title.
|
||||
-- Per-translation actions: click to edit inline, refresh button, delete button.
|
||||
-- Per-translation actions: click to edit (opens modal), refresh button, delete button.
|
||||
-- "No translations" message when list is empty.
|
||||
|
||||
@guarantee TranslationEditModal
|
||||
-- Editing a translation opens a modal dialog ("Edit Translation"), not
|
||||
-- an inline form. Hidden language field plus Title, Alt Text, and
|
||||
-- Caption (textarea) inputs. Footer: Cancel and Save buttons.
|
||||
-- Save persists the translation; Cancel/close discards.
|
||||
|
||||
@guarantee LinkedPostsSection
|
||||
-- "Link to Post" button opens inline post picker overlay.
|
||||
-- List of currently linked posts with document icon. Click navigates to post tab.
|
||||
@@ -214,8 +220,9 @@ rule MediaLinkToPost {
|
||||
|
||||
rule MediaTranslationEdit {
|
||||
when: MediaTranslationEditClicked(media_id, language)
|
||||
-- Loads translation fields inline (title, alt, caption) for that language
|
||||
-- Edit in place, save persists to translated sidecar {path}.{lang}.meta
|
||||
-- Opens the "Edit Translation" modal pre-filled with the translation's
|
||||
-- title, alt, and caption for that language
|
||||
-- Save persists to DB + translated sidecar {path}.{lang}.meta; Cancel discards
|
||||
}
|
||||
|
||||
rule MediaTranslationRefresh {
|
||||
|
||||
Reference in New Issue
Block a user