feat: Stepper (навигация по шагам, логика в stepperLogic) — 0.5.0

This commit is contained in:
Тимур Городецкий
2026-08-17 09:08:00 +05:00
parent e3a9b5360c
commit d7bebe0a2f
12 changed files with 288 additions and 10 deletions
+10
View File
@@ -140,6 +140,16 @@ Generic Badge в kit (variant: neutral/muted/info/success/warning/danger/primary
StatusBadge переписан в тонкий маппер REQUEST_STATUS→variant поверх Badge; StatusBadge.module.scss
удалён. Это шаблон для будущего разделения пикеров (group 3): вид в kit, привязка к данным в проекте.
### Stepper + тесты (не опубликовано, будет 0.5.0)
- Добавлен generic `Stepper` (степпер шагов) — эталон kps Breadcrumbs, но чистый (без шапки),
логика навигации по индексу (highestReachableIndex, вынесена в stepperLogic.ts — тестируемо).
Кликабельны шаги до highestId включительно (защита от прыжка вперёд). Адаптивный (подписи
прячутся < sm). Экспортирован из index.
- Заведён юнит-тест: `npm test` (vitest, node-окружение, vitest.config.ts — ОТДЕЛЬНО от
storybook-browser-проекта в vite.config). Первый тест stepperLogic.test.ts (4 кейса).
`*.test.ts` исключены из сборки пакета (vite dts exclude + tsconfig exclude).
- ПРАКТИКА тестов: чистую логику выносить в отдельные файлы (без React/scss) и покрывать в node.
### Порядок работ
1. [СДЕЛАНО в 0.1.0] Быстрая пачка (20 компонентов): вся Группа 1 (кроме ErrorOverlay/
StatusBadge — оказались связаны с diagnostics/statuses, отложены) + ConfirmDialog/