aboutsummaryrefslogtreecommitdiff
path: root/modern/src/store/reports.js
diff options
context:
space:
mode:
authorAnton Tananaev <anton@traccar.org>2022-10-02 09:32:45 -0700
committerAnton Tananaev <anton@traccar.org>2022-10-02 09:32:45 -0700
commit1a372fb0f8a7be5766267c80adf73abf589afa4e (patch)
tree8855a5e3fe93b0fe1febb8cf94bd9c4f70bca9df /modern/src/store/reports.js
parent9e581b0ede5d275ce8555f1324a4d0da56a256bf (diff)
downloadtrackermap-web-1a372fb0f8a7be5766267c80adf73abf589afa4e.tar.gz
trackermap-web-1a372fb0f8a7be5766267c80adf73abf589afa4e.tar.bz2
trackermap-web-1a372fb0f8a7be5766267c80adf73abf589afa4e.zip
Persist report form (fix #1019)
Diffstat (limited to 'modern/src/store/reports.js')
-rw-r--r--modern/src/store/reports.js37
1 files changed, 37 insertions, 0 deletions
diff --git a/modern/src/store/reports.js b/modern/src/store/reports.js
new file mode 100644
index 00000000..0c336f7a
--- /dev/null
+++ b/modern/src/store/reports.js
@@ -0,0 +1,37 @@
+import { createSlice } from '@reduxjs/toolkit';
+import moment from 'moment';
+
+const { reducer, actions } = createSlice({
+ name: 'reports',
+ initialState: {
+ deviceId: null,
+ deviceIds: [],
+ groupIds: [],
+ period: 'today',
+ from: moment().subtract(1, 'hour').locale('en').format(moment.HTML5_FMT.DATETIME_LOCAL),
+ to: moment().locale('en').format(moment.HTML5_FMT.DATETIME_LOCAL),
+ },
+ reducers: {
+ updateDeviceId(state, action) {
+ state.deviceId = action.payload;
+ },
+ updateDeviceIds(state, action) {
+ state.deviceIds = action.payload;
+ },
+ updateGroupIds(state, action) {
+ state.groupIds = action.payload;
+ },
+ updatePeriod(state, action) {
+ state.period = action.payload;
+ },
+ updateFrom(state, action) {
+ state.from = action.payload;
+ },
+ updateTo(state, action) {
+ state.to = action.payload;
+ },
+ },
+});
+
+export { actions as reportsActions };
+export { reducer as reportsReducer };