2023-05-20 18:02:08 +02:00
|
|
|
import { create } from 'zustand';
|
2022-02-23 07:47:59 +01:00
|
|
|
import produce from 'immer';
|
2023-07-26 22:42:55 +02:00
|
|
|
import { DateRange } from 'lib/types';
|
2022-02-23 07:47:59 +01:00
|
|
|
|
|
|
|
const store = create(() => ({}));
|
|
|
|
|
2023-07-26 22:42:55 +02:00
|
|
|
export function getWebsiteDateRange(websiteId: string) {
|
2023-03-09 01:37:43 +01:00
|
|
|
return store.getState()?.[websiteId];
|
|
|
|
}
|
|
|
|
|
2023-07-26 22:42:55 +02:00
|
|
|
export function setWebsiteDateRange(websiteId: string, dateRange: DateRange) {
|
2022-02-23 07:47:59 +01:00
|
|
|
store.setState(
|
|
|
|
produce(state => {
|
|
|
|
if (!state[websiteId]) {
|
|
|
|
state[websiteId] = {};
|
|
|
|
}
|
|
|
|
|
|
|
|
state[websiteId].dateRange = { ...dateRange, modified: Date.now() };
|
|
|
|
|
|
|
|
return state;
|
|
|
|
}),
|
|
|
|
);
|
|
|
|
}
|
|
|
|
|
|
|
|
export default store;
|