mirror of
https://github.com/kremalicious/umami.git
synced 2024-11-01 07:45:34 +01:00
35 lines
765 B
JavaScript
35 lines
765 B
JavaScript
|
import { createSlice } from '@reduxjs/toolkit';
|
||
|
import produce from 'immer';
|
||
|
|
||
|
const websites = createSlice({
|
||
|
name: 'user',
|
||
|
initialState: {},
|
||
|
reducers: {
|
||
|
updateWebsites(state, action) {
|
||
|
state = action.payload;
|
||
|
return state;
|
||
|
},
|
||
|
},
|
||
|
});
|
||
|
|
||
|
export const { updateWebsites } = websites.actions;
|
||
|
|
||
|
export default websites.reducer;
|
||
|
|
||
|
export function setDateRange(websiteId, dateRange) {
|
||
|
return (dispatch, getState) => {
|
||
|
const state = getState();
|
||
|
let { websites = {} } = state;
|
||
|
|
||
|
websites = produce(websites, draft => {
|
||
|
if (!draft[websiteId]) {
|
||
|
draft[websiteId] = {};
|
||
|
}
|
||
|
dateRange.modified = Date.now();
|
||
|
draft[websiteId].dateRange = dateRange;
|
||
|
});
|
||
|
|
||
|
return dispatch(updateWebsites(websites));
|
||
|
};
|
||
|
}
|