Текстовые документы
Создание и редактирование text documents в проекте: дерево папок + таблица listing, страница деталей с rich-text редактором, ручные версии, изображения, импорт и экспорт.
Маршруты: /web/{locale}/text_document/listing?project_id=… и /web/{locale}/text_document/details/{id}?project_id=….
Папки
Документы сгруппированы в дерево папок (аналог сьютов для тест-кейсов).
| Действие | Где |
|---|---|
| Создать папку | Дерево в sidebar listing |
| Переименовать / переместить | Контекст папки в дереве |
| Создать документ в папке | Выбрать папку → Создать |
Документы в корне возможны, если папка не выбрана (зависит от UI по умолчанию).
Listing
Listing = дерево папок (слева) + таблица (справа).
Типичные колонки:
| Колонка | Смысл |
|---|---|
| Название | Заголовок |
| Статус | Черновик, Опубликован, В архиве |
| Папка | Родительская папка |
| Автор | Создатель |
| Создан / Обновлён | Даты |
Фильтрация и сортировка - как у других сущностей проекта. Статус можно менять inline, если колонка редактируемая.
Статусы документа
| Статус | Когда использовать |
|---|---|
| Черновик | В работе, не финализирован |
| Опубликован | Готов для читателей в проекте |
| В архиве | Закрыт, хранится для истории |
Статус описывает жизненный цикл в проекте. Он не связан со статусом модерации публичной ссылки (см. Публичный доступ).
Создание документа
- Откройте Документы проекта.
- Выберите папку (необязательно).
- Нажмите Создать.
- Система создаёт запись со статусом Черновик и пустым HTML в хранилище.
- Переход на детали для редактирования.
Страница деталей
Метаданные (pivot)
Редактируются Название, Статус, Папка; Автор и даты - только чтение. Сохранение через тот же механизм update property, что и у других сущностей.
Редактор (CKEditor 4)
Полноэкранный режим - кнопка Maximize на панели CKEditor 4. Toolbar и допустимые HTML-теги заданы в конфигурации приложения (согласованы с правилами безопасности file storage).
Форматирование (MVP):
- Заголовки 1–3
- Жирный, курсив, подчёркивание, зачёркивание
- Цвет текста и выделение (если есть в toolbar)
- Выравнивание
- Маркированные и нумерованные списки
- Ссылки, цитата, блок кода, горизонтальная линия
- Изображения (см. ниже)
Не в MVP: таблицы в теле документа.
Автосохранение (локально)
Пока вы редактируете, содержимое сохраняется в local storage браузера по id документа. Защита от случайного закрытия вкладки; версию на сервере не создаёт.
Сохранить vs Сохранить версию
| Кнопка | Эффект |
|---|---|
| Сохранить | Загрузка HTML в текущий файл (без новой строки в истории) |
| Сохранить версию | Новая запись в истории версий (максимум 15) |
При превышении лимита старые версии удаляются автоматически.
История версий
Диалог Версии на деталях:
- Список версий с датами
- Восстановить - подставляет содержимое в редактор (подтвердите, если есть несохранённые правки)
- Хранится не более 15 версий на документ
Изображения
Вставка:
- Кнопка изображение на панели
- Вставка из буфера / перетаскивание (где поддерживается)
- Выбор из файлов - уже прикреплённые к документу или скриншоты проекта (например из Utils)
- Ручной file UUID (продвинутый режим)
Файлы в file service (категория screenshot, привязка к документу). В HTML - атрибут data-file-uuid.
| Лимит | Значение |
|---|---|
| Изображений в документе | 20 |
При лимите удалите или замените изображение перед добавлением нового.
Импорт и экспорт
Экспорт:
- HTML
- Markdown
- Plain text
Импорт полностью заменяет содержимое редактора (HTML или Markdown). Проверьте текст перед Сохранить или Сохранить версию.
Действия жизненного цикла
| Действие | Где |
|---|---|
| Создать | Listing |
| Редактировать тело и метаданные | Детали |
| Сохранить / Сохранить версию | Toolbar деталей |
| Версии / Восстановить | Диалог версий |
| Импорт / Экспорт | Диалог import/export |
| Удалить | Listing или детали |
| Публичная ссылка | Публичный доступ |
Заметки о поведении
- Загрузка тела - при открытии деталей HTML приходит из file service через Main App.
- Большие документы - очень длинный HTML может тормозить редактор; изображения храните как файлы, не base64 inline.
- Одновременное редактирование - побеждает последнее сохранение; co-editing в MVP нет.
- Права - в MVP редактируют все участники проекта; ролевые ограничения - позже.
См. также
| Версия | 1.3.0 |
| Последнее изменение | 2026-07-04 |