From 6e6da3fdbca242f2095fa1ccacb8c1e5ebcb9177 Mon Sep 17 00:00:00 2001 From: Torsten Dittmann Date: Tue, 4 Mar 2025 17:45:32 +0400 Subject: [PATCH 1/2] fix: accumulate charts with trailing zeros --- src/lib/layout/usage.svelte | 12 +++++++++++- .../usage/[[invoice]]/+page.svelte | 5 +++-- .../usage/[[invoice]]/+page.ts | 5 +---- 3 files changed, 15 insertions(+), 7 deletions(-) diff --git a/src/lib/layout/usage.svelte b/src/lib/layout/usage.svelte index d9f31bc11..40c270def 100644 --- a/src/lib/layout/usage.svelte +++ b/src/lib/layout/usage.svelte @@ -41,10 +41,20 @@ export function accumulateFromEndingTotal( metrics: Models.Metric[], - endingTotal: number + endingTotal: number, + startingDayToFillZero: Date = null ): Array<[string, number]> { return (metrics ?? []).reduceRight( (acc, curr) => { + if (startingDayToFillZero) { + const date = new Date(curr.date); + if (date > new Date(startingDayToFillZero)) { + acc.data.unshift([date.toISOString(), 0]); + acc.total -= 0; + + return acc; + } + } acc.data.unshift([curr.date, acc.total]); acc.total -= curr.value; return acc; diff --git a/src/routes/(console)/organization-[organization]/usage/[[invoice]]/+page.svelte b/src/routes/(console)/organization-[organization]/usage/[[invoice]]/+page.svelte index d07363bf9..c798830d7 100644 --- a/src/routes/(console)/organization-[organization]/usage/[[invoice]]/+page.svelte +++ b/src/routes/(console)/organization-[organization]/usage/[[invoice]]/+page.svelte @@ -175,8 +175,9 @@ { name: 'Users', data: accumulateFromEndingTotal( - data.usersUsageToDate, - data.organizationUsage.usersTotal + data.organizationUsage.users, + data.organizationUsage.usersTotal, + new Date() ) } ]} /> diff --git a/src/routes/(console)/organization-[organization]/usage/[[invoice]]/+page.ts b/src/routes/(console)/organization-[organization]/usage/[[invoice]]/+page.ts index 940a8cc02..85fb93e1e 100644 --- a/src/routes/(console)/organization-[organization]/usage/[[invoice]]/+page.ts +++ b/src/routes/(console)/organization-[organization]/usage/[[invoice]]/+page.ts @@ -78,15 +78,12 @@ export const load: PageLoad = async ({ params, parent }) => { } } - const usersUsageToDate = usage.users.filter((user) => new Date(user.date) < new Date()); - return { organizationUsage: usage, projectNames, invoices, currentInvoice, organizationMembers, - plan, - usersUsageToDate + plan }; }; From a8274bad264b02be481b9dcf0f618bea2c9c4110 Mon Sep 17 00:00:00 2001 From: Torsten Dittmann Date: Tue, 4 Mar 2025 18:05:08 +0400 Subject: [PATCH 2/2] fix: code quality --- src/lib/layout/usage.svelte | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/lib/layout/usage.svelte b/src/lib/layout/usage.svelte index 40c270def..638855386 100644 --- a/src/lib/layout/usage.svelte +++ b/src/lib/layout/usage.svelte @@ -46,9 +46,9 @@ ): Array<[string, number]> { return (metrics ?? []).reduceRight( (acc, curr) => { - if (startingDayToFillZero) { + if (startingDayToFillZero !== null && startingDayToFillZero instanceof Date) { const date = new Date(curr.date); - if (date > new Date(startingDayToFillZero)) { + if (date > startingDayToFillZero) { acc.data.unshift([date.toISOString(), 0]); acc.total -= 0;