chore(openspec): archive add-phone-album-sync and sync main specs
Sync the deltas into phpne...
This commit is contained in:
@@ -79,8 +79,12 @@ Android-клиент для self-hosted galo: настройка подключ
|
||||
|
||||
### Requirement: Список альбомов
|
||||
|
||||
Приложение SHALL показывать доступные пользователю альбомы с обложкой и счётчиками,
|
||||
беря данные из API, а при отсутствии сети — из локального кэша.
|
||||
Приложение SHALL показывать доступные пользователю альбомы одним смешанным списком:
|
||||
серверные альбомы, получаемые из API, а при отсутствии сети — из локального кэша, и
|
||||
альбомы устройства. Элементы SHALL различать источник. Связанная пара «альбом
|
||||
устройства → серверный альбом» SHALL отображаться одной карточкой альбома устройства
|
||||
с указателем связи и меткой режима; связанный серверный альбом SHALL NOT показываться
|
||||
в списке отдельной записью.
|
||||
|
||||
#### Scenario: Онлайн
|
||||
|
||||
@@ -92,6 +96,53 @@ Android-клиент для self-hosted galo: настройка подключ
|
||||
- **WHEN** сеть недоступна, но кэш существует
|
||||
- **THEN** список альбомов отображается из кэша с признаком офлайн-режима
|
||||
|
||||
#### Scenario: Альбомы устройства
|
||||
|
||||
- **WHEN** у приложения есть доступ к медиа устройства
|
||||
- **THEN** в списке появляются альбомы устройства наряду с серверными и помечены источником
|
||||
|
||||
#### Scenario: Связанная пара
|
||||
|
||||
- **WHEN** альбом устройства синхронизируется с серверным альбомом
|
||||
- **THEN** в списке показывается одна карточка альбома устройства с указателем связи и меткой режима, а связанный серверный альбом отдельной записью не показывается
|
||||
|
||||
### Requirement: Экран альбома устройства и настройки синхронизации
|
||||
|
||||
Приложение SHALL открывать альбом устройства с сеткой медиа и SHALL предоставлять
|
||||
настройки синхронизации этого альбома по свайпу вправо. Настройки SHALL содержать
|
||||
только выбор режима синхронизации.
|
||||
|
||||
#### Scenario: Открытие альбома устройства
|
||||
|
||||
- **WHEN** пользователь выбирает альбом устройства в списке
|
||||
- **THEN** открывается сетка медиа этого альбома
|
||||
|
||||
#### Scenario: Настройки по свайпу
|
||||
|
||||
- **WHEN** пользователь свайпает вправо в открытом альбоме устройства
|
||||
- **THEN** открываются настройки синхронизации с выбором режима и только им
|
||||
|
||||
#### Scenario: Метка перенесённого элемента
|
||||
|
||||
- **WHEN** оригинал элемента разгружен на сервер в режиме переноса
|
||||
- **THEN** в сетке на элементе показывается значок облака
|
||||
|
||||
### Requirement: Доступ к альбомам устройства
|
||||
|
||||
Приложение SHALL запрашивать доступ к медиа устройства, нужный для перечисления
|
||||
альбомов и чтения файлов, и SHALL работать без него, не показывая альбомы
|
||||
устройства.
|
||||
|
||||
#### Scenario: Доступ предоставлен
|
||||
|
||||
- **WHEN** пользователь предоставляет доступ к медиа устройства
|
||||
- **THEN** приложение перечисляет альбомы устройства и их содержимое
|
||||
|
||||
#### Scenario: Доступ не предоставлен
|
||||
|
||||
- **WHEN** доступ к медиа устройства не предоставлен
|
||||
- **THEN** приложение продолжает работать с серверными альбомами и не показывает альбомы устройства
|
||||
|
||||
### Requirement: Постраничный просмотр альбома
|
||||
|
||||
Приложение SHALL показывать сетку медиа альбома с постраничной загрузкой по курсору и
|
||||
|
||||
Reference in New Issue
Block a user