fix(web): баннер сервера из снапшота, приглашение, встроенные звуки
- READY-снапшот больше не теряет banner/splash/accent: шапка сервера показывает баннер сразу после подключения (AGENT.md 7.4) - GUILD_UPDATE несёт всё оформление, клиент применяет его без перезагрузки - кнопка приглашения в шапке сервера со ссылкой и копированием - встроенные звуки интерфейса на Web Audio с разблокировкой по жесту - object URL превью через безопасные обёртки (jsdom и урезанные webview)
This commit is contained in:
@@ -220,6 +220,10 @@ interface SnapshotGuildInput {
|
||||
/** Владелец сервера: по умолчанию текущий пользователь (`user-1`). */
|
||||
owner_id?: string;
|
||||
icon_file_id?: string;
|
||||
/** Оформление сервера (AGENT.md 7.4): баннер, splash и акцентный цвет. */
|
||||
banner_file_id?: string;
|
||||
splash_file_id?: string;
|
||||
accent_color?: number;
|
||||
my_permissions?: string[];
|
||||
my_nickname?: string;
|
||||
/** Кастомные эмодзи сервера (AGENT.md 7.12). */
|
||||
@@ -288,6 +292,9 @@ export function makeReadySnapshot(
|
||||
owner_id: guild.owner_id ?? 'user-1',
|
||||
is_main: guild.is_main ?? false,
|
||||
...(guild.icon_file_id === undefined ? {} : { icon_file_id: guild.icon_file_id }),
|
||||
...(guild.banner_file_id === undefined ? {} : { banner_file_id: guild.banner_file_id }),
|
||||
...(guild.splash_file_id === undefined ? {} : { splash_file_id: guild.splash_file_id }),
|
||||
...(guild.accent_color === undefined ? {} : { accent_color: guild.accent_color }),
|
||||
...(guild.my_nickname === undefined ? {} : { my_nickname: guild.my_nickname }),
|
||||
channels: (guild.channels ?? []).map((channel, index) => ({
|
||||
id: channel.id,
|
||||
|
||||
Reference in New Issue
Block a user