From 2d5ec8721c2d9ae3d519dd5ff267a05b5f1ab96b Mon Sep 17 00:00:00 2001 From: Ashutosh Bishnoi Date: Tue, 20 Apr 2021 12:15:13 +0530 Subject: Created mostly used stores --- modern/src/store/calendars.js | 16 ++++++++++++++++ modern/src/store/commands.js | 16 ++++++++++++++++ modern/src/store/computedAttributes.js | 16 ++++++++++++++++ modern/src/store/drivers.js | 16 ++++++++++++++++ modern/src/store/groups.js | 16 ++++++++++++++++ modern/src/store/index.js | 22 ++++++++++++++++++++++ modern/src/store/maintenances.js | 16 ++++++++++++++++ modern/src/store/notifications.js | 16 ++++++++++++++++ 8 files changed, 134 insertions(+) create mode 100644 modern/src/store/calendars.js create mode 100644 modern/src/store/commands.js create mode 100644 modern/src/store/computedAttributes.js create mode 100644 modern/src/store/drivers.js create mode 100644 modern/src/store/groups.js create mode 100644 modern/src/store/maintenances.js create mode 100644 modern/src/store/notifications.js (limited to 'modern/src/store') diff --git a/modern/src/store/calendars.js b/modern/src/store/calendars.js new file mode 100644 index 0000000..3aa4d89 --- /dev/null +++ b/modern/src/store/calendars.js @@ -0,0 +1,16 @@ +import { createSlice } from '@reduxjs/toolkit'; + +const { reducer, actions } = createSlice({ + name: 'calendars', + initialState: { + items: {}, + }, + reducers: { + update(state, action) { + action.payload.forEach(item => state.items[item['id']] = item); + }, + } +}); + +export { actions as calendarsActions }; +export { reducer as calendarsReducer }; diff --git a/modern/src/store/commands.js b/modern/src/store/commands.js new file mode 100644 index 0000000..d18d609 --- /dev/null +++ b/modern/src/store/commands.js @@ -0,0 +1,16 @@ +import { createSlice } from '@reduxjs/toolkit'; + +const { reducer, actions } = createSlice({ + name: 'commands', + initialState: { + items: {}, + }, + reducers: { + update(state, action) { + action.payload.forEach(item => state.items[item['id']] = item); + }, + } +}); + +export { actions as commandsActions }; +export { reducer as commandsReducer }; diff --git a/modern/src/store/computedAttributes.js b/modern/src/store/computedAttributes.js new file mode 100644 index 0000000..d9e3531 --- /dev/null +++ b/modern/src/store/computedAttributes.js @@ -0,0 +1,16 @@ +import { createSlice } from '@reduxjs/toolkit'; + +const { reducer, actions } = createSlice({ + name: 'computedAttributes', + initialState: { + items: {}, + }, + reducers: { + update(state, action) { + action.payload.forEach(item => state.items[item['id']] = item); + }, + } +}); + +export { actions as computedAttributesActions }; +export { reducer as computedAttributesReducer }; diff --git a/modern/src/store/drivers.js b/modern/src/store/drivers.js new file mode 100644 index 0000000..63522d7 --- /dev/null +++ b/modern/src/store/drivers.js @@ -0,0 +1,16 @@ +import { createSlice } from '@reduxjs/toolkit'; + +const { reducer, actions } = createSlice({ + name: 'drivers', + initialState: { + items: {}, + }, + reducers: { + update(state, action) { + action.payload.forEach(item => state.items[item['id']] = item); + }, + } +}); + +export { actions as driversActions }; +export { reducer as driversReducer }; diff --git a/modern/src/store/groups.js b/modern/src/store/groups.js new file mode 100644 index 0000000..483323f --- /dev/null +++ b/modern/src/store/groups.js @@ -0,0 +1,16 @@ +import { createSlice } from '@reduxjs/toolkit'; + +const { reducer, actions } = createSlice({ + name: 'groups', + initialState: { + items: {}, + }, + reducers: { + update(state, action) { + action.payload.forEach(item => state.items[item['id']] = item); + }, + } +}); + +export { actions as groupsActions }; +export { reducer as groupsReducer }; diff --git a/modern/src/store/index.js b/modern/src/store/index.js index 1fddae9..9163e44 100644 --- a/modern/src/store/index.js +++ b/modern/src/store/index.js @@ -4,17 +4,39 @@ import { sessionReducer as session } from './session'; import { devicesReducer as devices } from './devices'; import { positionsReducer as positions } from './positions'; import { geofencesReducer as geofences } from './geofences'; +import { groupsReducer as groups } from './groups'; +import { driversReducer as drivers } from './drivers'; +import { maintenancesReducer as maintenances } from './maintenances'; +import { calendarsReducer as calendars } from './calendars'; +import { computedAttributesReducer as computedAttributes } from './computedAttributes'; +import { commandsReducer as commands } from './commands'; +import { notificationsReducer as notifications } from './notifications'; const reducer = combineReducers({ session, devices, positions, geofences, + groups, + drivers, + maintenances, + calendars, + computedAttributes, + commands, + notifications, + }); export { sessionActions } from './session'; export { devicesActions } from './devices'; export { positionsActions } from './positions'; export { geofencesActions } from './geofences'; +export { groupsActions } from './groups'; +export { driversActions } from './drivers'; +export { maintenancesActions } from './maintenances'; +export { calendarsActions } from './calendars'; +export { computedAttributesActions } from './computedAttributes'; +export { commandsActions } from './commands'; +export { notificationsActions } from './notifications'; export default configureStore({ reducer }); diff --git a/modern/src/store/maintenances.js b/modern/src/store/maintenances.js new file mode 100644 index 0000000..0813f6b --- /dev/null +++ b/modern/src/store/maintenances.js @@ -0,0 +1,16 @@ +import { createSlice } from '@reduxjs/toolkit'; + +const { reducer, actions } = createSlice({ + name: 'maintenances', + initialState: { + items: {}, + }, + reducers: { + update(state, action) { + action.payload.forEach(item => state.items[item['id']] = item); + }, + } +}); + +export { actions as maintenancesActions }; +export { reducer as maintenancesReducer }; diff --git a/modern/src/store/notifications.js b/modern/src/store/notifications.js new file mode 100644 index 0000000..be8a989 --- /dev/null +++ b/modern/src/store/notifications.js @@ -0,0 +1,16 @@ +import { createSlice } from '@reduxjs/toolkit'; + +const { reducer, actions } = createSlice({ + name: 'notifications', + initialState: { + items: {}, + }, + reducers: { + update(state, action) { + action.payload.forEach(item => state.items[item['id']] = item); + }, + } +}); + +export { actions as notificationsActions }; +export { reducer as notificationsReducer }; -- cgit v1.2.3