docs
Some checks failed
Architecture Governance / architecture (push) Has been cancelled

This commit is contained in:
sdarbinyan
2026-07-05 04:23:47 +04:00
parent c901ec1e49
commit 10251f2fc6
24 changed files with 2424 additions and 0 deletions

View File

@@ -0,0 +1,53 @@
# 12. Система статических страниц
## Назначение
Система статических страниц управляет юридическими и информационными страницами (о компании, политика, доставка, возврат) через конфигурацию.
## Поведение системы
- Список страниц и маршруты берутся из bootstrap/pages.
- Контент может храниться как HTML/Markdown/структурированный JSON.
- Frontend рендерит контент безопасно, с tenant-aware навигацией.
## Обязательные JSON-свойства
- page.id
- page.key
- page.route.path
- page.type = "static"
- page.content.source
## Опциональные свойства
- page.seoKey
- page.visible
- page.translations
- page.lastUpdated
## Строгие правила
- Запрещено хардкодить список статических страниц во frontend.
- Контент должен быть изолирован по tenant.
- HTML-контент должен проходить sanitation на frontend и/или backend.
## Пример JSON статической страницы
```json
{
"id": "page-privacy",
"key": "privacy-policy",
"type": "static",
"route": { "path": "/privacy-policy", "exact": true },
"content": {
"source": "cms",
"contentType": "html",
"value": "<h1>Политика конфиденциальности</h1><p>...</p>"
},
"visible": true
}
```
## Ответственность Frontend
- Рендерить статические страницы по конфигурации маршрутов.
- Безопасно обрабатывать HTML-контент.
- Поддерживать локализованные версии страницы.
## Ответственность Backend
- Поставлять tenant-specific статический контент.
- Поддерживать версионирование и аудит контента.
- Гарантировать валидность route/content связки.