feat(channels): фон комнаты и статичные превью при reduced-motion
- миграция 00014: background_file_id у комнаты (AGENT.md 7.5, 7.7)
- API: POST/DELETE /channels/{id}/background под MANAGE_CHANNEL_BACKGROUND,
фон отдаётся в списке комнат и рассылается событием CHANNEL_UPDATE
- клиент: фон рисуется за лентой с затемнением, блок «Фон комнаты» в настройках
комнаты (загрузка, замена, удаление)
- AnimatedImage: при «уменьшить движение» показывает статичный первый кадр,
нарисованный на canvas, вместо анимации
- тесты: Go (загрузка, права, снятие) и Vitest (лента, настройки, reduced-motion)
This commit is contained in:
@@ -257,6 +257,8 @@ interface SnapshotGuildInput {
|
||||
parent_id?: string;
|
||||
can_send?: boolean;
|
||||
can_view?: boolean;
|
||||
/** Фон комнаты: файл-картинка за лентой (AGENT.md 7.5). */
|
||||
background_file_id?: string;
|
||||
}[];
|
||||
}
|
||||
|
||||
@@ -304,6 +306,9 @@ export function makeReadySnapshot(
|
||||
...(channel.parent_id === undefined ? {} : { parent_id: channel.parent_id }),
|
||||
...(channel.can_send === undefined ? {} : { can_send: channel.can_send }),
|
||||
...(channel.can_view === undefined ? {} : { can_view: channel.can_view }),
|
||||
...(channel.background_file_id === undefined
|
||||
? {}
|
||||
: { background_file_id: channel.background_file_id }),
|
||||
})),
|
||||
roles: [],
|
||||
member_ids: ['user-1'],
|
||||
|
||||
Reference in New Issue
Block a user