48 lines
1.8 KiB
Markdown

# Frontend FSD Screener — задачи
Статус: в работе
Подробные шаги, карта файлов и verification-команды находятся в [plan.md](plan.md).
## 1. API слой
- [ ] Создать `features/screener/api/screenerApi.ts` — перенос `ScreenerQuery` + `getScreenerResults`
- [ ] Обновить импорты: `@/shared/api/client`, `@/shared/api/responses`
## 2. Модель
- [ ] Создать `features/screener/model/useScreener.ts` — перенос хука
- [ ] Создать `features/screener/model/index.ts`
## 3. UI компоненты
- [ ] Перенести `FilterPanel.tsx` в `features/screener/ui/`
- [ ] Перенести `FilterPanelShare.tsx` в `features/screener/ui/`
- [ ] Перенести `FilterPanelBond.tsx` в `features/screener/ui/`
- [ ] Перенести `ScreenerTable.tsx` в `features/screener/ui/`
- [ ] Создать `features/screener/ui/index.ts`
- [ ] Создать `features/screener/index.ts`
## 4. Pages
- [ ] Создать `pages/screener/ui/ScreenerPage.tsx` — обновить импорты на `@/features/screener`
- [ ] Создать `pages/screener/index.ts`
## 5. Роутинг
- [ ] Обновить `app/routing/AppRoutes.tsx` — import from `@/pages/screener`
## 6. Удаление legacy
- [ ] Удалить `api/screener.ts`
- [ ] Удалить `hooks/useScreener.ts`
- [ ] Удалить `components/screener/` (директория)
## 7. Verification
- [ ] `npm test -w apps/frontend` — PASS
- [ ] `npm run lint -w apps/frontend` — PASS
- [ ] `npm run build -w apps/frontend` — PASS
- [ ] Нет deep imports в `features/screener/` извне
- [ ] `pages/screener/` импортируется только через barrel