Browse Source

Task/refactor input in portfolio proportion chart component (#6691)

* Refactor input to isInPercentage
pull/6695/head
Thomas Kaul 7 days ago
committed by GitHub
parent
commit
b32f24a45c
No known key found for this signature in database GPG Key ID: B5690EEEBB952194
  1. 4
      apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html
  2. 4
      apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html
  3. 20
      apps/client/src/app/pages/portfolio/allocations/allocations-page.html
  4. 8
      apps/client/src/app/pages/public/public-page.html
  5. 2
      libs/ui/src/lib/portfolio-proportion-chart/portfolio-proportion-chart.component.stories.ts
  6. 6
      libs/ui/src/lib/portfolio-proportion-chart/portfolio-proportion-chart.component.ts

4
apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html

@ -280,7 +280,7 @@
<gf-portfolio-proportion-chart
[colorScheme]="data.colorScheme"
[data]="sectors"
[isInPercent]="true"
[isInPercentage]="true"
[keys]="['name']"
[maxItems]="10"
/>
@ -290,7 +290,7 @@
<gf-portfolio-proportion-chart
[colorScheme]="data.colorScheme"
[data]="countries"
[isInPercent]="true"
[isInPercentage]="true"
[keys]="['name']"
[maxItems]="10"
/>

4
apps/client/src/app/components/holding-detail-dialog/holding-detail-dialog.html

@ -286,7 +286,7 @@
[baseCurrency]="data.baseCurrency"
[colorScheme]="data.colorScheme"
[data]="sectors"
[isInPercent]="true"
[isInPercentage]="true"
[keys]="['name']"
[locale]="data.locale"
[maxItems]="10"
@ -298,7 +298,7 @@
[baseCurrency]="data.baseCurrency"
[colorScheme]="data.colorScheme"
[data]="countries"
[isInPercent]="true"
[isInPercentage]="true"
[keys]="['name']"
[locale]="data.locale"
[maxItems]="10"

20
apps/client/src/app/pages/portfolio/allocations/allocations-page.html

@ -47,7 +47,7 @@
[baseCurrency]="user?.settings?.baseCurrency"
[colorScheme]="user?.settings?.colorScheme"
[data]="platforms"
[isInPercent]="showValuesInPercentage()"
[isInPercentage]="showValuesInPercentage()"
[keys]="['id']"
[locale]="user?.settings?.locale"
/>
@ -69,7 +69,7 @@
[baseCurrency]="user?.settings?.baseCurrency"
[colorScheme]="user?.settings?.colorScheme"
[data]="holdings"
[isInPercent]="showValuesInPercentage()"
[isInPercentage]="showValuesInPercentage()"
[keys]="['currency']"
[locale]="user?.settings?.locale"
/>
@ -91,7 +91,7 @@
[baseCurrency]="user?.settings?.baseCurrency"
[colorScheme]="user?.settings?.colorScheme"
[data]="holdings"
[isInPercent]="showValuesInPercentage()"
[isInPercentage]="showValuesInPercentage()"
[keys]="['assetClassLabel', 'assetSubClassLabel']"
[locale]="user?.settings?.locale"
/>
@ -112,7 +112,7 @@
[baseCurrency]="user?.settings?.baseCurrency"
[colorScheme]="user?.settings?.colorScheme"
[data]="symbols"
[isInPercent]="showValuesInPercentage()"
[isInPercentage]="showValuesInPercentage()"
[keys]="['symbol']"
[locale]="user?.settings?.locale"
[showLabels]="deviceType !== 'mobile'"
@ -136,7 +136,7 @@
[baseCurrency]="user?.settings?.baseCurrency"
[colorScheme]="user?.settings?.colorScheme"
[data]="sectors"
[isInPercent]="showValuesInPercentage()"
[isInPercentage]="showValuesInPercentage()"
[keys]="['name']"
[locale]="user?.settings?.locale"
[maxItems]="10"
@ -159,7 +159,7 @@
[baseCurrency]="user?.settings?.baseCurrency"
[colorScheme]="user?.settings?.colorScheme"
[data]="continents"
[isInPercent]="showValuesInPercentage()"
[isInPercentage]="showValuesInPercentage()"
[keys]="['name']"
[locale]="user?.settings?.locale"
/>
@ -181,7 +181,7 @@
[baseCurrency]="user?.settings?.baseCurrency"
[colorScheme]="user?.settings?.colorScheme"
[data]="marketsAdvanced"
[isInPercent]="showValuesInPercentage()"
[isInPercentage]="showValuesInPercentage()"
[locale]="user?.settings?.locale"
/>
</mat-card-content>
@ -268,7 +268,7 @@
[baseCurrency]="user?.settings?.baseCurrency"
[colorScheme]="user?.settings?.colorScheme"
[data]="countries"
[isInPercent]="showValuesInPercentage()"
[isInPercentage]="showValuesInPercentage()"
[keys]="['name']"
[locale]="user?.settings?.locale"
[maxItems]="10"
@ -287,7 +287,7 @@
[baseCurrency]="user?.settings?.baseCurrency"
[colorScheme]="user?.settings?.colorScheme"
[data]="accounts"
[isInPercent]="showValuesInPercentage()"
[isInPercentage]="showValuesInPercentage()"
[keys]="['id']"
[locale]="user?.settings?.locale"
(proportionChartClicked)="onAccountChartClicked($event)"
@ -310,7 +310,7 @@
[baseCurrency]="user?.settings?.baseCurrency"
[colorScheme]="user?.settings?.colorScheme"
[data]="holdings"
[isInPercent]="showValuesInPercentage()"
[isInPercentage]="showValuesInPercentage()"
[keys]="['etfProvider']"
[locale]="user?.settings?.locale"
/>

8
apps/client/src/app/pages/public/public-page.html

@ -73,7 +73,7 @@
<gf-portfolio-proportion-chart
class="mx-auto"
[data]="symbols"
[isInPercent]="true"
[isInPercentage]="true"
[keys]="['symbol']"
[showLabels]="deviceType !== 'mobile'"
/>
@ -98,7 +98,7 @@
<mat-card-content>
<gf-portfolio-proportion-chart
[data]="positions"
[isInPercent]="true"
[isInPercentage]="true"
[keys]="['currency']"
[maxItems]="10"
/>
@ -115,7 +115,7 @@
<mat-card-content>
<gf-portfolio-proportion-chart
[data]="sectors"
[isInPercent]="true"
[isInPercentage]="true"
[keys]="['name']"
[maxItems]="10"
/>
@ -134,7 +134,7 @@
<mat-card-content>
<gf-portfolio-proportion-chart
[data]="continents"
[isInPercent]="true"
[isInPercentage]="true"
[keys]="['name']"
/>
</mat-card-content>

2
libs/ui/src/lib/portfolio-proportion-chart/portfolio-proportion-chart.component.stories.ts

@ -77,7 +77,7 @@ export const InPercentage: Story = {
JP: { name: 'Japan', value: 0 },
BE: { name: 'Belgium', value: 0 }
},
isInPercent: true,
isInPercentage: true,
keys: ['name']
}
};

6
libs/ui/src/lib/portfolio-proportion-chart/portfolio-proportion-chart.component.ts

@ -74,7 +74,7 @@ export class GfPortfolioProportionChartComponent
value: number;
};
} = {};
@Input() isInPercent = false;
@Input() isInPercentage = false;
@Input() keys: string[] = [];
@Input() locale = getLocale();
@Input() maxItems?: number;
@ -198,7 +198,7 @@ export class GfPortfolioProportionChartComponent
});
}
if (this.isInPercent) {
if (this.isInPercentage) {
const totalValueInPercentage = getSum(
Object.values(chartData).map(({ value }) => {
return value;
@ -465,7 +465,7 @@ export class GfPortfolioProportionChartComponent
if ((context.raw as number) === Number.MAX_SAFE_INTEGER) {
return $localize`No data available`;
} else if (this.isInPercent) {
} else if (this.isInPercentage) {
return [`${name ?? symbol}`, `${percentage.toFixed(2)}%`];
} else {
const value = context.raw as number;

Loading…
Cancel
Save