Region/district select; proper Map tabs

This commit is contained in:
2025-09-24 17:54:38 +09:00
parent 9758ab65b6
commit 2b0b08ae4e
7 changed files with 469 additions and 197 deletions

View File

@ -0,0 +1,36 @@
import { create } from 'zustand';
import { IDistrict, IRegion } from '../interfaces/gis';
export interface RegionsState {
regionsData: IRegion[],
districtsData: IDistrict[],
}
export const useRegionsStore = create<RegionsState>(() => ({
regionsData: [],
districtsData: []
}))
export const getRegionData = (id: number) => {
return useRegionsStore.getState().regionsData.find(region => region.id === id)
}
export const getRegionsData = () => {
return useRegionsStore.getState().regionsData
}
export const setRegionsData = (regionsData: any) => {
useRegionsStore.setState(() => ({ regionsData: regionsData }))
}
export const getDistrictData = (id: number) => {
return useRegionsStore.getState().districtsData.find(district => district.id === id)
}
export const getDistrictsData = () => {
return useRegionsStore.getState().districtsData
}
export const setDistrictsData = (districtsData: any) => {
useRegionsStore.setState(() => ({ districtsData: districtsData }))
}