umami/hooks/useDateRange.js

19 lines
571 B
JavaScript
Raw Normal View History

2020-09-01 00:02:32 +02:00
import { useSelector } from 'react-redux';
import { parseISO } from 'date-fns';
2020-09-01 00:02:32 +02:00
import { getDateRange } from 'lib/date';
import { getItem } from 'lib/web';
2020-09-01 00:02:32 +02:00
export function useDateRange(websiteId, defaultDateRange = '7day') {
const globalDefault = getItem('umami.date-range');
if (globalDefault) {
globalDefault.startDate = parseISO(globalDefault.startDate);
globalDefault.endDate = parseISO(globalDefault.endDate);
}
2020-09-01 00:02:32 +02:00
return useSelector(
state =>
state.websites[websiteId]?.dateRange || globalDefault || getDateRange(defaultDateRange),
2020-09-01 00:02:32 +02:00
);
}