diff --git a/apps/36-blocks/src/app/panel/dashboard/dashboard.component.html b/apps/36-blocks/src/app/panel/dashboard/dashboard.component.html index c42a74e9..8ca577c1 100644 --- a/apps/36-blocks/src/app/panel/dashboard/dashboard.component.html +++ b/apps/36-blocks/src/app/panel/dashboard/dashboard.component.html @@ -78,7 +78,7 @@

Analytics Overview

>

- {{ getCardValue(overviewData(), card.valueKey) | number }} + {{ getCardValue(overviewData(), card.valueKey, card.valueKeyFallback) | number }}

{{ card.sub }} diff --git a/apps/36-blocks/src/app/panel/dashboard/dashboard.component.ts b/apps/36-blocks/src/app/panel/dashboard/dashboard.component.ts index 3a2847db..780a87ab 100644 --- a/apps/36-blocks/src/app/panel/dashboard/dashboard.component.ts +++ b/apps/36-blocks/src/app/panel/dashboard/dashboard.component.ts @@ -70,8 +70,14 @@ export class DashboardComponent extends BaseComponent implements OnInit { readonly overviewCards = OVERVIEW_CARDS; - getCardValue(data: any, path: string): number { - return path.split('.').reduce((acc, k) => acc?.[k], data) ?? 0; + getCardValue(data: any, path: string, fallbackPath?: string): number { + const read = (p: string) => p.split('.').reduce((acc, k) => acc?.[k], data); + const primary = read(path); + if (fallbackPath) { + if (primary) return primary as number; + return (read(fallbackPath) as number) ?? 0; + } + return (primary as number) ?? 0; } readonly rangeOptions = RANGE_OPTIONS; diff --git a/apps/36-blocks/src/app/panel/dashboard/dashboard.models.ts b/apps/36-blocks/src/app/panel/dashboard/dashboard.models.ts index 0c59c191..5c1ae0de 100644 --- a/apps/36-blocks/src/app/panel/dashboard/dashboard.models.ts +++ b/apps/36-blocks/src/app/panel/dashboard/dashboard.models.ts @@ -33,6 +33,7 @@ export interface IRangeOption { export interface IOverviewCard { key: string; valueKey: string; + valueKeyFallback?: string; label: string; icon: string; sub: string; @@ -85,7 +86,8 @@ export interface IBreakdownGroupByOption { export const OVERVIEW_CARDS: IOverviewCard[] = [ { key: 'users', - valueKey: 'users.client_total', + valueKey: 'users.feature_configuration_total', + valueKeyFallback: 'users.client_total', label: 'Total Users', icon: 'people', sub: 'registered total', diff --git a/apps/36-blocks/src/app/panel/onboarding/onboarding.component.ts b/apps/36-blocks/src/app/panel/onboarding/onboarding.component.ts index 23e48111..f317cc69 100644 --- a/apps/36-blocks/src/app/panel/onboarding/onboarding.component.ts +++ b/apps/36-blocks/src/app/panel/onboarding/onboarding.component.ts @@ -108,7 +108,7 @@ export class OnboardingComponent implements OnInit, OnDestroy { }); public ngOnInit(): void { - this.pendingJwtToken = this.activatedRoute.snapshot.queryParamMap.get('token'); + this.pendingJwtToken = this.activatedRoute.snapshot.queryParamMap.get('onboarding_token'); } public ngOnDestroy(): void {