Skip to content

Commit 6062309

Browse files
authored
Merge pull request #669 from mapswipe/fix/timeseries-aggregation
Fix timeseries aggregation issue
2 parents ec51bfa + e70756d commit 6062309

File tree

2 files changed

+15
-4
lines changed

2 files changed

+15
-4
lines changed

community-dashboard/app/Base/utils/temporal.ts

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ import { isDefined } from '@togglecorp/fujs';
22

33
export function getDateSafe(value: Date | number | string) {
44
if (typeof value === 'string') {
5-
return new Date(`${value}T00:00`);
5+
return new Date(`${value}T00:00:00.000`);
66
}
77

88
return new Date(value);
@@ -11,17 +11,26 @@ export function getDateSafe(value: Date | number | string) {
1111
export function resolveTime(date: Date | number | string, resolution: 'day' | 'month' | 'year'): Date {
1212
const newDate = getDateSafe(date);
1313

14-
if (resolution === 'day' || resolution === 'month' || resolution === 'year') {
14+
if (resolution === 'day') {
1515
newDate.setHours(0);
1616
newDate.setMinutes(0);
1717
newDate.setSeconds(0);
1818
newDate.setMilliseconds(0);
1919
}
20-
if (resolution === 'month' || resolution === 'year') {
20+
if (resolution === 'month') {
2121
newDate.setDate(1);
22+
newDate.setHours(0);
23+
newDate.setMinutes(0);
24+
newDate.setSeconds(0);
25+
newDate.setMilliseconds(0);
2226
}
2327
if (resolution === 'year') {
2428
newDate.setMonth(0);
29+
newDate.setDate(1);
30+
newDate.setHours(0);
31+
newDate.setMinutes(0);
32+
newDate.setSeconds(0);
33+
newDate.setMilliseconds(0);
2534
}
2635
return newDate;
2736
}

community-dashboard/app/views/StatsBoard/index.tsx

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -271,14 +271,16 @@ function StatsBoard(props: Props) {
271271
}))
272272
.filter((contribution) => contribution.total > 0);
273273

274-
return mergeItems(
274+
const mergedItems = mergeItems(
275275
values,
276276
(item) => String(item.date),
277277
(foo, bar) => ({
278278
date: foo.date,
279279
total: foo.total + bar.total,
280280
}),
281281
).sort((a, b) => (a.date - b.date));
282+
283+
return mergedItems;
282284
},
283285
[contributionTimeStats, resolution],
284286
);

0 commit comments

Comments
 (0)