# PR Checklist - соответствие стандартам Webasyst
Пожалуйста, отметьте пункты перед ревью/слиянием PR.
## 1) Кодировка файлов
- [ ] Все файлы в UTF-8 без BOM
## 2) UI 2.0 и стили
- [ ] Используются компоненты из `wa-apps/ui/templates/actions/component/`
- [ ] Подключен `wa-content/css/wa/wa-2.0.css`
- [ ] Подключен `ui_wrapper.html` (или эквивалент)
- [ ] Применяются стандартные классы (`.button`, `.field`, `.zebra`, и т.д.)
- [ ] Цвета/размеры только через CSS-переменные (без хардкода)
- [ ] Минимум кастомных стилей; нет переопределений базовых компонентов без необходимости
## 3) Локализация
- [ ] Все пользовательские строки локализованы
- [ ] В PHP используется `_w()` с корректными ключами
- [ ] В JS используется `$_()` и/или `$.wa.locale`
- [ ] Для JS-строк есть отдельный `?action=loc` (action + controller + шаблон)
- [ ] Нет хардкода строк на любом языке
- [ ] При необходимости реализована плюрализация
- [ ] При обновлении переводов использованы `generate_po_template` / `compile_mo`
## 4) JS и DOM
- [ ] Поиск элементов в JS по `id`, где это возможно
- [ ] Нет лишних инлайн-стилей; логика отделена от представления
- [ ] События навешиваются после загрузки DOM
- [ ] Нет утечек глобальных переменных; аккуратная работа с `window.*`
## 5) Безопасность и премиум-логика
- [ ] Для всех POST запросов добавлен CSRF (`_csrf`)
- [ ] Премиум-фичи защищены (entitlements + backend gating)
- [ ] Нет прямых ссылок на приватные ресурсы без проверок
## 6) Производительность
- [ ] Переиспользуются компоненты UI вместо кастомной верстки
- [ ] Нет лишних сетевых запросов/дублирующей загрузки ресурсов
- [ ] Ленивая загрузка тяжелых модулей (где уместно)
## 7) Код и структура
- [ ] Следует стандартной структуре Webasyst приложений
- [ ] Новые файлы/классы/действия имеют понятные названия
- [ ] Нет мертвого кода, отладочных `console.log` и т.п.
- [ ] Соответствие линтеру, отсутствие синтаксических ошибок
## 8) Документация
- [ ] Обновлены соответствующие разделы (`README.md`, др.)
- [ ] При необходимости добавлены/обновлены локализационные ключи
- [ ] Обновлены инструкции по сборке/установке (если повлияло)
---
Подробные стандарты см. в:
- `DEVELOPMENT_STANDARDS.md`
- `UI_COMPONENTS_REFERENCE.md`
- `LOCALIZATION_GUIDE.md`