feat: Update city logic in map page with scrollbar
This commit is contained in:
@@ -1,62 +0,0 @@
|
|||||||
# Селектор городов
|
|
||||||
|
|
||||||
## Описание функциональности
|
|
||||||
|
|
||||||
Добавлена функциональность выбора города в админ-панели "Белые ночи":
|
|
||||||
|
|
||||||
### Основные возможности:
|
|
||||||
|
|
||||||
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. Пользователь может изменить город в форме если нужно
|
|
||||||
|
|
||||||
Функциональность полностью интегрирована и готова к использованию.
|
|
||||||
File diff suppressed because it is too large
Load Diff
@@ -514,4 +514,4 @@ export const CreateInformationTab = observer(
|
|||||||
</>
|
</>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|||||||
Reference in New Issue
Block a user