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:
Mike Cao 2023-04-17 11:08:17 -07:00
commit dfae0c150d
592 changed files with 44367 additions and 31628 deletions

View file

@ -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;