Files
WhiteNightsAdminPanel/CITY_SELECTOR_FEATURE.md

3.3 KiB
Raw Blame History

Селектор городов

Описание функциональности

Добавлена функциональность выбора города в админ-панели "Белые ночи":

Основные возможности:

  1. Селектор городов в шапке приложения

    • Расположен рядом с именем пользователя в верхней части приложения
    • Показывает список всех доступных городов
    • Имеет иконку MapPin для лучшего UX
  2. Сохранение в localStorage

    • Выбранный город автоматически сохраняется в localStorage
    • При перезагрузке страницы выбранный город восстанавливается
  3. Автоматическое использование в формах

    • При создании новой станции выбранный город автоматически подставляется
    • При создании нового перевозчика выбранный город автоматически подставляется
    • Пользователь может изменить город в форме при необходимости

Технические детали:

Новые компоненты и сторы:

  • SelectedCityStore - стор для управления выбранным городом
  • CitySelector - компонент селектора городов
  • useSelectedCity - хук для удобного доступа к выбранному городу

Интеграция:

  • Селектор добавлен в Layout компонент
  • Интегрирован в StationCreatePage и CarrierCreatePage
  • Использует существующий CityStore для получения списка городов

Файлы, которые были изменены:

  • src/widgets/Layout/index.tsx - добавлен CitySelector
  • src/pages/Station/StationCreatePage/index.tsx - автоматическая подстановка города
  • src/pages/Carrier/CarrierCreatePage/index.tsx - автоматическая подстановка города
  • src/shared/store/index.ts - добавлен экспорт SelectedCityStore
  • src/widgets/index.ts - добавлен экспорт CitySelector
  • src/shared/index.tsx - добавлен экспорт hooks

Новые файлы:

  • src/shared/store/SelectedCityStore/index.ts
  • src/widgets/CitySelector/index.tsx
  • src/shared/hooks/useSelectedCity.ts
  • src/shared/hooks/index.ts

Использование:

  1. Пользователь выбирает город в селекторе в шапке приложения
  2. Выбранный город сохраняется в localStorage
  3. При создании новой станции или перевозчика выбранный город автоматически подставляется в форму
  4. Пользователь может изменить город в форме если нужно

Функциональность полностью интегрирована и готова к использованию.