# Рефакторинг: чек-лист

`[x]` — отрефакторено.

## Страницы

- [x] **LegalConverterPage** — вынести бизнес-логику (расчёт комиссии, упаковку имени/контакта в `comment` и парсинг) из страницы в `features`/`model`. → чистая логика в `features/b2b/lib/purchaseRequest.ts`, форма-хук в `widgets/legal-converter/model`, тонкий UI `LegalConverterSection`. Док: `pages/converter/README.md`.
- [x] **Юридические страницы** (`publichnaya-oferta`, `politika-personalnyh-dannyh`, `politika-cookie`, `soglasie-personalnyh-dannyh`, `reestr-pd-rkn`) — статичный текст вынести в данные, рендерить общим шаблоном. → текст в `pages/<slug>/model/content.ts` (`LegalDoc`-объекты), единый шаблон+стиль `entities/legal-doc` (`LegalDoc`), 5 старых `*.module.css` удалены. Док: `entities/legal-doc/README.md`.

## Виджеты

- [ ] **swap-form** / **bridge-form** — бизнес-логику (quote-payload, мутации, инвалидация кэша) вынести в `model`-хуки.
- [ ] **bridge-form** / **token-table** — убрать межвиджетные импорты, общие части опустить в `features`/`entities`/`shared`.
- [ ] **Метаданные сетей** (`CHAIN_ID`, `RELAY_CHAIN_ID`, `NATIVE_ADDR`, `CHAIN_META`, `TICKER_TO_CHAIN`) — свести к единому источнику в `entities`/`shared`.
- [ ] **Утилиты** (`formatUsd`, `toBaseUnits`, разбор ошибок) — убрать локальные дубли, использовать `shared/lib/utils`.
- [ ] **send-modal** — логику (base-units, разбор ошибок) в `model`; инлайн-SVG и дропдауны в отдельные компоненты.
- [ ] **staking/StakeCard**, **pools/LpDepositCard** — финансовые расчёты вынести из UI в `model`-хук.
- [ ] **token-table** — разбить `renderRow`/`renderCard` на компоненты, убрать локальный `formatUsd` и инлайн-SVG.
