// /redux/store.js
import { configureStore } from "@reduxjs/toolkit";
import lineVisibilityReducer from "./slices/lineVisibilitySlice";
import currentPoiReducer from "./slices/currentPoiSlice";
import polylineLayerVisibleReducer from "./slices/polylineLayerVisibleSlice";
import addPoiOnPolylineReducer from "./slices/addPoiOnPolylineSlice";
import polylineContextMenuReducer from "./slices/polylineContextMenuSlice";
import selectedPoiReducer from "./slices/selectedPoiSlice";
import selectedDeviceReducer from "./slices/selectedDeviceSlice";
import mapLayersReducer from "./slices/mapLayersSlice";
import poiLayerVisibleReducer from "./slices/poiLayerVisibleSlice";
import poiReadFromDbTriggerReducer from "./slices/poiReadFromDbTriggerSlice";
import polylineEventsDisabledReducer from "./slices/polylineEventsDisabledSlice";
import readPoiMarkersStoreReducer from "./slices/readPoiMarkersStoreSlice";
import selectedAreaReducer from "./slices/selectedAreaSlice";
import zoomTriggerReducer from "./slices/zoomTriggerSlice";
import urlParameterReducer from "./slices/urlParameterSlice";
//-----database------------
import priorityConfigReducer from "./slices/database/priorityConfigSlice";
import poiTypesReducer from "./slices/database/poiTypesSlice";
import locationDevicesFromDBReducer from "./slices/database/locationDevicesFromDBSlice";
import gisLinesFromDatabaseReducer from "./slices/database/gisLinesSlice";
import poiTypReducer from "./slices/database/poiTypSlice";
import poiIconsDataReducer from "./slices/database/poiIconsDataSlice";
//----webservice------------
import gisStationsStaticDistrictReducer from "./slices/webservice/gisStationsStaticDistrictSlice";
import gisStationsStatusDistrictReducer from "./slices/webservice/gisStationsStatusDistrictSlice";
import gisStationsMeasurementsReducer from "./slices/webservice/gisStationsMeasurementsSlice";
import gisSystemStaticReducer from "./slices/webservice/gisSystemStaticSlice";
import userRightsReducer from "./slices/webservice/userRightsSlice";
import gisLinesStatusFromWebserviceReducer from "./slices/webservice/gisLinesStatusSlice";
import addPoiReducer from "./slices/database/addPoiSlice";

export const store = configureStore({
  reducer: {
    gisStationsStaticDistrict: gisStationsStaticDistrictReducer,
    gisStationsStatusDistrict: gisStationsStatusDistrictReducer,
    gisStationsMeasurements: gisStationsMeasurementsReducer,
    gisSystemStatic: gisSystemStaticReducer,
    gisUserRightsFromWebservice: userRightsReducer,
    gisLinesStatusFromWebservice: gisLinesStatusFromWebserviceReducer,
    gisLinesFromDatabase: gisLinesFromDatabaseReducer,
    lineVisibility: lineVisibilityReducer,
    currentPoi: currentPoiReducer,
    polylineLayerVisible: polylineLayerVisibleReducer,
    locationDevicesFromDB: locationDevicesFromDBReducer,
    poiTypes: poiTypesReducer,
    addPoiOnPolyline: addPoiOnPolylineReducer,
    polylineContextMenu: polylineContextMenuReducer,
    selectedPoi: selectedPoiReducer,
    selectedDevice: selectedDeviceReducer,
    mapLayers: mapLayersReducer,
    poiLayerVisible: poiLayerVisibleReducer,
    poiReadFromDbTrigger: poiReadFromDbTriggerReducer,
    polylineEventsDisabled: polylineEventsDisabledReducer,
    readPoiMarkersStore: readPoiMarkersStoreReducer,
    selectedArea: selectedAreaReducer,
    zoomTrigger: zoomTriggerReducer,
    urlParameter: urlParameterReducer,
    priorityConfig: priorityConfigReducer,
    addPoi: addPoiReducer,
    poiTyp: poiTypReducer,
    poiIconsData: poiIconsDataReducer,
  },
});
