mirror of
https://github.com/umami-software/umami.git
synced 2026-02-04 12:47:13 +01:00
Merge branch 'dev'
# Conflicts: # components/common/Calendar.js # components/common/EventDataButton.js # components/forms/EventDataForm.js # components/layout/Header.js # db/mysql/migrations/02_add_event_data/migration.sql # lang/be-BY.json # lang/de-CH.json # lang/es-MX.json # lang/fa-IR.json # lang/km-KH.json # lang/lt-LT.json # lang/th-TH.json # lib/auth.js # lib/detect.ts # lib/lang.js # lib/middleware.js # lib/prisma.js # package.json # pages/_app.js # pages/api/accounts/[id]/password.js # pages/api/collect.js # pages/api/realtime/init.js # pages/api/websites/[id]/index.js # pages/api/websites/[id]/reset.ts # pages/api/websites/index.js # public/intl/messages/fa-IR.json # public/intl/messages/lt-LT.json # public/intl/messages/pt-BR.json # public/intl/messages/th-TH.json # queries/analytics/event/getEventData.js # queries/analytics/event/getEventMetrics.js # queries/analytics/pageview/getPageviewMetrics.js # queries/analytics/pageview/getPageviewParams.js # queries/analytics/pageview/getPageviewStats.js # queries/analytics/session/getSessionMetrics.js # queries/analytics/stats/getActiveVisitors.js # queries/analytics/stats/getWebsiteStats.js # sql/schema.mysql.sql # styles/index.css # yarn.lock
This commit is contained in:
commit
dfae0c150d
592 changed files with 44367 additions and 31628 deletions
22
lib/date.js
22
lib/date.js
|
|
@ -26,6 +26,7 @@ import {
|
|||
differenceInCalendarMonths,
|
||||
differenceInCalendarYears,
|
||||
format,
|
||||
parseISO,
|
||||
} from 'date-fns';
|
||||
import { getDateLocale } from 'lib/lang';
|
||||
|
||||
|
|
@ -37,7 +38,16 @@ export function getLocalTime(t) {
|
|||
return addMinutes(new Date(t), new Date().getTimezoneOffset());
|
||||
}
|
||||
|
||||
export function getDateRange(value, locale = 'en-US') {
|
||||
export function parseDateRange(value, locale = 'en-US') {
|
||||
if (typeof value === 'object') {
|
||||
const { startDate, endDate } = value;
|
||||
return {
|
||||
...value,
|
||||
startDate: typeof startDate === 'string' ? parseISO(startDate) : startDate,
|
||||
endDate: typeof endDate === 'string' ? parseISO(endDate) : endDate,
|
||||
};
|
||||
}
|
||||
|
||||
const now = new Date();
|
||||
const dateLocale = getDateLocale(locale);
|
||||
|
||||
|
|
@ -170,19 +180,19 @@ export function getDateArray(data, startDate, endDate, unit) {
|
|||
const [diff, add, normalize] = dateFuncs[unit];
|
||||
const n = diff(endDate, startDate) + 1;
|
||||
|
||||
function findData(t) {
|
||||
const x = data.find(e => {
|
||||
return normalize(getDateFromString(e.t)).getTime() === t.getTime();
|
||||
function findData(date) {
|
||||
const d = data.find(({ x }) => {
|
||||
return normalize(getDateFromString(x)).getTime() === date.getTime();
|
||||
});
|
||||
|
||||
return x?.y || 0;
|
||||
return d?.y || 0;
|
||||
}
|
||||
|
||||
for (let i = 0; i < n; i++) {
|
||||
const t = normalize(add(startDate, i));
|
||||
const y = findData(t);
|
||||
|
||||
arr.push({ ...data[i], t, y });
|
||||
arr.push({ x: t, y });
|
||||
}
|
||||
|
||||
return arr;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue