SHA256
UI: добавить карусель вложений
This commit is contained in:
@@ -31,6 +31,8 @@
|
||||
|
||||
После последнего attach-блока идёт обычный пользовательский текст. Пользовательский текст может быть пустым, если есть хотя бы одно валидное вложение.
|
||||
|
||||
Клиент SHiNE ограничивает одно сообщение максимум 10 вложениями и сохраняет порядок attach-блоков в том порядке, в котором пользователь прикрепил файлы.
|
||||
|
||||
## Поля
|
||||
|
||||
Обязательные поля:
|
||||
@@ -67,8 +69,18 @@ UI поддерживает три сценария:
|
||||
1. читает валидные attach-блоки только из начала текста;
|
||||
2. скрывает технические attach-строки;
|
||||
3. отображает вложения над пользовательским текстом;
|
||||
4. каждое вложение показывает как карточку/ссылку на Arweave gateway;
|
||||
5. если attach-блок битый, игнорирует только этот блок и продолжает отображать сообщение.
|
||||
4. показывает вложения горизонтальной каруселью: одно вложение на экране, переключение свайпом или стрелками, счётчик вида `1 из 3`;
|
||||
5. определяет тип вложения по расширению имени файла:
|
||||
- изображение показывает как ограниченное по размеру превью;
|
||||
- видео показывает как превью с кнопкой воспроизведения и открывает большой HTML5-плеер по нажатию;
|
||||
- обычный файл показывает как карточку с именем, расширением, размером и скачиванием;
|
||||
6. при перелистывании останавливает воспроизводящееся видео;
|
||||
7. если attach-блок битый, игнорирует только этот блок и продолжает отображать сообщение.
|
||||
|
||||
Если файл по ссылке Arweave gateway недоступен, клиент показывает диагностический блок:
|
||||
|
||||
- если сообщение создано менее 20 минут назад: файл, скорее всего, ещё не распространился в Arweave, нужно повторить через несколько минут;
|
||||
- если сообщение старше 20 минут: файл считается недоступным.
|
||||
|
||||
Старые клиенты без поддержки формата могут показывать attach-блоки как обычный текст.
|
||||
|
||||
@@ -79,6 +91,6 @@ UI поддерживает три сценария:
|
||||
## Ограничения v1
|
||||
|
||||
- `ar` допускает только короткий Arweave `txId`, полный URL не используется;
|
||||
- превью типа image/video/audio не входит в формат v1;
|
||||
- MIME type не записывается, поэтому UI определяет image/video/file по расширению имени файла;
|
||||
- MIME type, width, height, duration и thumbnail не записываются в блокчейн;
|
||||
- проверка существующего `txId` скачивает файл локально через gateway, поэтому UI ограничивает максимальный размер такой проверки.
|
||||
|
||||
Reference in New Issue
Block a user