# Карта: Файлы Источники (метод mail/078): **живой мобильный web** forbion (сессия Browser 1, аккаунт `cloude`, iframe ~390px, read-only — mail/073/075/079) для внешнего вида/порядка + **апстрим `nextcloud/server apps/files/src`** для состава кнопок/меню (сверено: `filters/`, `actions/`) + тема `forbion-theme/.../_mobile-files.css` (селекторы элементов окна). Приватность: реальные ФИО/почты сотрудников, права доступа и инвентарь бизнес-папок не фиксируются — только структура UI и дерево переходов. ## Вход Приложение «Файлы» — стартовое (нижняя панель / шторка приложений «Файлы»). URL `/apps/files/files`. Оболочку (нижняя панель, шторка, бургер) описывает `shell.md` (зона лида) — здесь только специфика приложения. ## Экран: Все файлы (главный / список папки) **Шапка (сверху вниз):** - Пилюля «Поиск» (Объединённый поиск) → экран поиска (см. ниже). - Иконка-сетка справа → «Переключиться на режим просмотра сеткой» (тумблер список⇄сетка). - Кнопка «Открыть навигацию [n]» → шторка навигации файлов (см. «Навигация файлов»). - Кнопка «Новый» → меню создания/загрузки (см. «Меню Новый»). - Хлебные крошки: 🏠 (корень) → сегменты пути; каждый сегмент кликабелен → переход к папке. - Чипы-фильтры: «Тип файла», «Изменён», «Участники» (в корне — три; внутри папки «Участники» пропадает, остаются «Тип файла»/«Изменён»). **Тело:** - Блок недавних/предложенных файлов (горизонтальная лента карточек: иконка типа + имя + «Последнее обновление: …»); тап по карточке → открытие файла. - Список папок/файлов (строки): чекбокс выделения · иконка типа (звёздочка = избранное) · имя · инлайн-кнопка «Скачать» (для файлов) · кнопка «Действия» (⋮). - Тап по строке-папке → открыть папку (крошки наращиваются, URL `?dir=/Путь`). - Тап по строке-файлу → открыть файл (по типу, см. «Открытие файла»). - Чекбокс → режим выделения (см. «Режим выделения»). - «Действия» (⋮) → контекстное меню файла/папки (см. ниже). **Пустое состояние (папка без файлов):** иконка + «Здесь нет файлов» + подзаголовок «Загрузите что-нибудь или синхронизируйте со своими устройствами!». ## Меню «Новый» (создание/загрузка) Открывается кнопкой «Новый». Два раздела: - **Загрузить с устройства:** «Загрузить файлы», «Загрузить папки». - **Создать новое:** «Новая папка», «Запрос на создание файла», «Новая диаграмма», «Новая доска», «Новая презентация», «Новая таблица», «Новый документ», «Новый текстовый файл», «Создать папку шаблонов». - (read-only: пункты только просмотрены, ничего не создавалось.) ## Навигация файлов (шторка «Открыть навигацию») Список представлений + дерево: - «Все файлы», «Личные файлы», «Недавно изменённые», «Избранные», «Опубликованные ресурсы», «Командные папки», «Метки», «Внешнее хранилище», «Дерево папок», «Корзина». - Внизу — индикатор квоты («Использовано N GB»). - Каждый пункт → соответствующее представление списка файлов. ## Фильтры - **«Тип файла»** → мультивыбор типов: Документы, Таблицы, Презентации, PDFs, Папки, Звук, Изображения, Видео (`TypeFilter.ts`). - **«Изменён»** → пресеты по дате (`ModifiedFilter.ts`): Сегодня, Последние 7 дней, Последние 30 дней, В этом году, В прошлом году. - **«Участники»** → фильтр по людям с доступом (даёт `files_sharing`, не ядро files) — чип есть в корне «Все файлы», внутри папки пропадает. ## Контекстное меню (⋮) — Папка «Добавить в избранное», «Подробно», «Варианты обмена», «Управление метками», «Переименовать», «Переместить или копировать», «Установить напоминание» ›, «Открыть локально», «Скачать», «Архивировать в...» ›, «Удалить папку». (Сверено с `apps/files/src/actions/`: favorite, sidebar=Подробно, moveOrCopy, rename, editLocally=«Открыть локально», download, delete, openFolder; метки/обмен/напоминание/архив — из соответствующих приложений тенанта.) ## Контекстное меню (⋮) — Файл «Добавить/Удалить из избранных», «Подробно», строка-статус общего доступа (если расшарен), «Управление метками», «Переименовать», «Переместить или копировать», «Установить напоминание» ›, «Сохранить как…» › (для офисных — форматы), «Открыть локально», «Скачать», «Архивировать в...» ›, «Удалить файл». ## Режим выделения (bulk) Отметка чекбокса → шапка списка меняется на: «Выбран N» (слева) + кнопка «Действия» (справа). Меню «Действия» (групповое): «Добавить в избранное», «Управление метками», «Переместить или копировать», «Скачать», «Архивировать в...» ›, «Удалить папку/файлы». ## Экран: Подробно (панель сведений о файле) Открывается пунктом «Подробно» в ⋮. Шапка: имя файла · × закрыть · владелец/аватар · «<дата изменения> / <размер>». Четыре вкладки-иконки: - **Общий доступ** (людской значок): подсекции «Внутренние ссылки» (поле «Введите имена или команды», список получателей с выпадающим правом «Можно редактировать/…», «Другие пользователи, имеющие доступ», «Внутренняя ссылка / Для тех, у кого уже есть доступ» + копировать), «Внешние ссылки» (поле e-mail, «Создать общедоступную ссылку» +), «Дополнительные ссылки». Внизу — ряд быстрых иконок связанных приложений. - **Версии** — история версий файла. - **Чат** — комментарии к файлу. - **События** — активность/лента событий по файлу. - (read-only: панель только просмотрена; персональные данные получателей не фиксируются.) ## Открытие файла (по типу) Тап по файлу открывает вьюер/редактор по типу (наблюдалось частично; часть — (?) по иконкам/ категориям типов): - Офисные (Таблицы/Документы/Презентации) → редактор Collabora/Richdocuments в WebView. - `.md` / текст → редактор текста/markdown. - Изображения → просмотрщик изображений. - `.whiteboard` / «доска» → редактор доски (WebView). - PDF → просмотрщик PDF. *(точный переход для PDF/аудио/видео — (?), не открывал.)* ## Экран: Поиск Пилюля «Поиск» → объединённый поиск (Nextcloud unified search) по файлам и приложениям. *(детальное дерево поиска не раскрывал — (?).)* ## Расхождения с нативным клиентом (сверено по коду `feature/files`, 2026-07-12) Сверка **состава/функций** по коду (не попиксельная — та ждёт сборки на устройстве, задача №1 mail/068). Итог: **4 подтверждённых расхождения, 1 снято.** - ✅ снято — меню «Новый»: нативный `FilesCreateMenu.kt` содержит весь веб-список (загрузка + 10 пунктов «Создать новое») и даже больше («Добавить описание папки»). Соответствует. - `расхождение:` **панель «Подробно» — 2 вкладки вместо 4.** `FileDetailsTab` (FilesModels.kt:67) = {Sharing, Events}; в вебе 4 (Общий доступ / **Версии** / **Чат** / События). Нет вкладок «Версии» и «Чат/комментарии». - `расхождение:` **фильтры-чипы — заглушки.** `FilesFilterChips` рисует «Тип файла/Участники/ Изменен», но обработчики (FilesScreen.kt:224-226): «Тип файла»→сортировка по типу, «Изменен»→сортировка по дате, «Участники»→пустой `{}`. В вебе это фильтры: Тип файла (мультивыбор 8 типов), Изменён (5 пресетов дат), Участники (по людям). Функционал фильтрации отсутствует. - `расхождение:` **групповые действия — 3 из 6.** `FilesBulkAction` (FilesComponents.kt:1064) = {Favorite, Download, Delete}, причём Download → `showWebOnlyMessage("Массовое скачивание")` (заглушка). В вебе 6: Добавить в избранное, Управление метками, Переместить или копировать, Скачать, Архивировать в…, Удалить. Нет меток/перемещения-копирования/архива; массовое скачивание не реализовано. - `расхождение:` **шэры — только публичная ссылка.** `createPublicShareLink` (FilesApiRepository.kt:174) создаёт лишь `shareType=3`. `fetchShares` (:199) читает и отображает существующие шэры любого типа, но СОЗДАНИЕ внутренних шэров (пользователь=0/группа=1) отсутствует. В вебе панель «Внутренние ссылки» это умеет. = план п.3 mail/068. Осталось (нужна сборка на устройстве, попиксельно): вёрстка по CSS-теме, переходы PDF/аудио/видео, дерево поиска.