Migrate gf-* components to self-closing tags (#2934)

pull/2933/head
Thomas Kaul 8 months ago committed by GitHub
parent 1ca4f885b0
commit 857708dc4d
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

@ -38,7 +38,7 @@
[pageTitle]="pageTitle" [pageTitle]="pageTitle"
[user]="user" [user]="user"
(signOut)="onSignOut()" (signOut)="onSignOut()"
></gf-header> />
</header> </header>
<main role="main"> <main role="main">

@ -4,7 +4,7 @@
[deviceType]="data.deviceType" [deviceType]="data.deviceType"
[title]="name" [title]="name"
(closeButtonClicked)="onClose()" (closeButtonClicked)="onClose()"
></gf-dialog-header> />
<div class="flex-grow-1" mat-dialog-content> <div class="flex-grow-1" mat-dialog-content>
<div class="container p-0"> <div class="container p-0">
@ -16,7 +16,7 @@
[locale]="user?.settings?.locale" [locale]="user?.settings?.locale"
[unit]="user?.settings?.baseCurrency" [unit]="user?.settings?.baseCurrency"
[value]="valueInBaseCurrency" [value]="valueInBaseCurrency"
></gf-value> />
</div> </div>
</div> </div>
@ -28,7 +28,7 @@
[isInPercent]="hasImpersonationId || user.settings.isRestrictedView" [isInPercent]="hasImpersonationId || user.settings.isRestrictedView"
[isLoading]="isLoadingChart" [isLoading]="isLoadingChart"
[locale]="user?.settings?.locale" [locale]="user?.settings?.locale"
></gf-investment-chart> />
</div> </div>
<div class="mb-3 row"> <div class="mb-3 row">
@ -79,7 +79,7 @@
[deviceType]="data.deviceType" [deviceType]="data.deviceType"
[holdings]="holdings" [holdings]="holdings"
[locale]="user?.settings?.locale" [locale]="user?.settings?.locale"
></gf-holdings-table> />
</mat-tab> </mat-tab>
<mat-tab> <mat-tab>
<ng-template mat-tab-label> <ng-template mat-tab-label>
@ -102,7 +102,7 @@
[totalItems]="totalItems" [totalItems]="totalItems"
(export)="onExport()" (export)="onExport()"
(sortChanged)="onSortChanged($event)" (sortChanged)="onSortChanged($event)"
></gf-activities-table-lazy> />
<gf-activities-table <gf-activities-table
*ngIf="user?.settings?.isExperimentalFeatures !== true" *ngIf="user?.settings?.isExperimentalFeatures !== true"
[activities]="activities" [activities]="activities"
@ -115,7 +115,7 @@
[locale]="user?.settings?.locale" [locale]="user?.settings?.locale"
[showActions]="false" [showActions]="false"
(export)="onExport()" (export)="onExport()"
></gf-activities-table> />
</mat-tab> </mat-tab>
<mat-tab> <mat-tab>
<ng-template mat-tab-label> <ng-template mat-tab-label>
@ -128,7 +128,7 @@
[locale]="user?.settings?.locale" [locale]="user?.settings?.locale"
[showActions]="!hasImpersonationId && hasPermissionToDeleteAccountBalance && !user.settings.isRestrictedView" [showActions]="!hasImpersonationId && hasPermissionToDeleteAccountBalance && !user.settings.isRestrictedView"
(accountBalanceDeleted)="onDeleteAccountBalance($event)" (accountBalanceDeleted)="onDeleteAccountBalance($event)"
></gf-account-balances> />
</mat-tab> </mat-tab>
</mat-tab-group> </mat-tab-group>
</div> </div>
@ -138,4 +138,4 @@
mat-dialog-actions mat-dialog-actions
[deviceType]="data.deviceType" [deviceType]="data.deviceType"
(closeButtonClicked)="onClose()" (closeButtonClicked)="onClose()"
></gf-dialog-footer> />

@ -39,7 +39,7 @@
class="d-inline d-sm-none mr-1" class="d-inline d-sm-none mr-1"
[tooltip]="element.Platform?.name" [tooltip]="element.Platform?.name"
[url]="element.Platform?.url" [url]="element.Platform?.url"
></gf-symbol-icon> />
<span>{{ element.name }} </span> <span>{{ element.name }} </span>
<span <span
*ngIf="element.isDefault" *ngIf="element.isDefault"
@ -83,7 +83,7 @@
class="mr-1" class="mr-1"
[tooltip]="element.Platform?.name" [tooltip]="element.Platform?.name"
[url]="element.Platform?.url" [url]="element.Platform?.url"
></gf-symbol-icon> />
<span>{{ element.Platform?.name }}</span> <span>{{ element.Platform?.name }}</span>
</div> </div>
</td> </td>
@ -131,7 +131,7 @@
[isCurrency]="true" [isCurrency]="true"
[locale]="locale" [locale]="locale"
[value]="element.balance" [value]="element.balance"
></gf-value> />
</td> </td>
<td <td
*matFooterCellDef *matFooterCellDef
@ -143,7 +143,7 @@
[isCurrency]="true" [isCurrency]="true"
[locale]="locale" [locale]="locale"
[value]="totalBalanceInBaseCurrency" [value]="totalBalanceInBaseCurrency"
></gf-value> />
</td> </td>
</ng-container> </ng-container>
@ -166,7 +166,7 @@
[isCurrency]="true" [isCurrency]="true"
[locale]="locale" [locale]="locale"
[value]="element.value" [value]="element.value"
></gf-value> />
</td> </td>
<td <td
*matFooterCellDef *matFooterCellDef
@ -178,7 +178,7 @@
[isCurrency]="true" [isCurrency]="true"
[locale]="locale" [locale]="locale"
[value]="totalValueInBaseCurrency" [value]="totalValueInBaseCurrency"
></gf-value> />
</td> </td>
</ng-container> </ng-container>
@ -201,7 +201,7 @@
[isCurrency]="true" [isCurrency]="true"
[locale]="locale" [locale]="locale"
[value]="element.valueInBaseCurrency" [value]="element.valueInBaseCurrency"
></gf-value> />
</td> </td>
<td <td
*matFooterCellDef *matFooterCellDef
@ -213,7 +213,7 @@
[isCurrency]="true" [isCurrency]="true"
[locale]="locale" [locale]="locale"
[value]="totalValueInBaseCurrency" [value]="totalValueInBaseCurrency"
></gf-value> />
</td> </td>
</ng-container> </ng-container>

@ -8,7 +8,7 @@
[showXAxis]="true" [showXAxis]="true"
[showYAxis]="true" [showYAxis]="true"
[symbol]="symbol" [symbol]="symbol"
></gf-line-chart> />
<div <div
*ngFor="let itemByMonth of marketDataByMonth | keyvalue" *ngFor="let itemByMonth of marketDataByMonth | keyvalue"
class="d-flex" class="d-flex"

@ -6,7 +6,7 @@
[isLoading]="isLoading" [isLoading]="isLoading"
[placeholder]="placeholder" [placeholder]="placeholder"
(valueChanged)="filters$.next($event)" (valueChanged)="filters$.next($event)"
></gf-activities-filter> />
</div> </div>
</div> </div>
<div class="row"> <div class="row">

@ -50,7 +50,7 @@
[marketData]="marketDataDetails" [marketData]="marketDataDetails"
[symbol]="data.symbol" [symbol]="data.symbol"
(marketDataChanged)="onMarketDataChanged($event)" (marketDataChanged)="onMarketDataChanged($event)"
></gf-admin-market-data-detail> />
<div class="mt-3" formGroupName="historicalData"> <div class="mt-3" formGroupName="historicalData">
<mat-form-field appearance="outline" class="w-100 without-hint"> <mat-form-field appearance="outline" class="w-100 without-hint">
@ -162,7 +162,7 @@
[keys]="['name']" [keys]="['name']"
[maxItems]="10" [maxItems]="10"
[positions]="sectors" [positions]="sectors"
></gf-portfolio-proportion-chart> />
</div> </div>
<div class="col-md-6 mb-3"> <div class="col-md-6 mb-3">
<div class="h5" i18n>Countries</div> <div class="h5" i18n>Countries</div>
@ -172,7 +172,7 @@
[keys]="['name']" [keys]="['name']"
[maxItems]="10" [maxItems]="10"
[positions]="countries" [positions]="countries"
></gf-portfolio-proportion-chart> />
</div> </div>
</ng-template> </ng-template>
</ng-container> </ng-container>

@ -16,7 +16,7 @@
[locale]="user?.settings?.locale" [locale]="user?.settings?.locale"
[precision]="0" [precision]="0"
[value]="userCount" [value]="userCount"
></gf-value> />
</div> </div>
</div> </div>
<div class="d-flex my-3"> <div class="d-flex my-3">
@ -26,7 +26,7 @@
[locale]="user?.settings?.locale" [locale]="user?.settings?.locale"
[precision]="0" [precision]="0"
[value]="transactionCount" [value]="transactionCount"
></gf-value> />
<div *ngIf="transactionCount && userCount"> <div *ngIf="transactionCount && userCount">
{{ transactionCount / userCount | number : '1.2-2' }} {{ transactionCount / userCount | number : '1.2-2' }}
<span i18n>per User</span> <span i18n>per User</span>
@ -39,10 +39,7 @@
<table> <table>
<tr *ngFor="let exchangeRate of exchangeRates"> <tr *ngFor="let exchangeRate of exchangeRates">
<td> <td>
<gf-value <gf-value [locale]="user?.settings?.locale" [value]="1" />
[locale]="user?.settings?.locale"
[value]="1"
></gf-value>
</td> </td>
<td class="pl-1">{{ exchangeRate.label1 }}</td> <td class="pl-1">{{ exchangeRate.label1 }}</td>
<td class="px-1">=</td> <td class="px-1">=</td>
@ -52,7 +49,7 @@
[locale]="user?.settings?.locale" [locale]="user?.settings?.locale"
[precision]="4" [precision]="4"
[value]="exchangeRate.value" [value]="exchangeRate.value"
></gf-value> />
</td> </td>
<td class="pl-1">{{ exchangeRate.label2 }}</td> <td class="pl-1">{{ exchangeRate.label2 }}</td>
<td> <td>

@ -35,7 +35,7 @@
class="d-inline mr-1" class="d-inline mr-1"
[tooltip]="element.name" [tooltip]="element.name"
[url]="element.url" [url]="element.url"
></gf-symbol-icon> />
<span>{{ element.name }}</span> <span>{{ element.name }}</span>
</td></ng-container </td></ng-container
> >

@ -46,7 +46,7 @@
class="ml-1" class="ml-1"
[enableLink]="false" [enableLink]="false"
[title]="'Expires ' + formatDistanceToNow(element.subscription.expiresAt) + ' (' + (element.subscription.expiresAt | date: defaultDateFormat) + ')'" [title]="'Expires ' + formatDistanceToNow(element.subscription.expiresAt) + ' (' + (element.subscription.expiresAt | date: defaultDateFormat) + ')'"
></gf-premium-indicator> />
</div> </div>
</td> </td>
</ng-container> </ng-container>
@ -107,7 +107,7 @@
class="d-inline-block justify-content-end" class="d-inline-block justify-content-end"
[locale]="user?.settings?.locale" [locale]="user?.settings?.locale"
[value]="element.accountCount" [value]="element.accountCount"
></gf-value> />
</td> </td>
</ng-container> </ng-container>
@ -128,7 +128,7 @@
class="d-inline-block justify-content-end" class="d-inline-block justify-content-end"
[locale]="user?.settings?.locale" [locale]="user?.settings?.locale"
[value]="element.transactionCount" [value]="element.transactionCount"
></gf-value> />
</td> </td>
</ng-container> </ng-container>
@ -153,7 +153,7 @@
[locale]="user?.settings?.locale" [locale]="user?.settings?.locale"
[precision]="0" [precision]="0"
[value]="element.engagement" [value]="element.engagement"
></gf-value> />
</td> </td>
</ng-container> </ng-container>

@ -7,7 +7,7 @@
<gf-premium-indicator <gf-premium-indicator
*ngIf="user?.subscription?.type === 'Basic'" *ngIf="user?.subscription?.type === 'Basic'"
class="ml-1" class="ml-1"
></gf-premium-indicator> />
</div> </div>
</div> </div>
<div class="col-md-6 col-xs-12 d-flex justify-content-end"> <div class="col-md-6 col-xs-12 d-flex justify-content-end">

@ -7,7 +7,7 @@
[ngClass]="{ 'w-100': hasTabs }" [ngClass]="{ 'w-100': hasTabs }"
[routerLink]="['/']" [routerLink]="['/']"
> >
<gf-logo class="px-2" [label]="pageTitle"></gf-logo> <gf-logo class="px-2" [label]="pageTitle" />
</a> </a>
</div> </div>
<span class="spacer"></span> <span class="spacer"></span>
@ -295,7 +295,7 @@
class="px-2" class="px-2"
[label]="pageTitle" [label]="pageTitle"
[showLabel]="currentRoute !== 'register'" [showLabel]="currentRoute !== 'register'"
></gf-logo> />
</a> </a>
</div> </div>
<span class="spacer"></span> <span class="spacer"></span>

@ -5,7 +5,7 @@
[isLoading]="positions === undefined" [isLoading]="positions === undefined"
[options]="dateRangeOptions" [options]="dateRangeOptions"
(change)="onChangeDateRange($event.value)" (change)="onChangeDateRange($event.value)"
></gf-toggle> />
</div> </div>
<div class="row"> <div class="row">
<div class="align-items-center col-xs-12 col-md-8 offset-md-2"> <div class="align-items-center col-xs-12 col-md-8 offset-md-2">
@ -18,7 +18,7 @@
[locale]="user?.settings?.locale" [locale]="user?.settings?.locale"
[positions]="positions" [positions]="positions"
[range]="user?.settings?.dateRange" [range]="user?.settings?.dateRange"
></gf-positions> />
</mat-card-content> </mat-card-content>
</mat-card> </mat-card>
<div *ngIf="hasPermissionToCreateOrder" class="text-center"> <div *ngIf="hasPermissionToCreateOrder" class="text-center">

@ -18,11 +18,11 @@
[yMaxLabel]="greedLabel" [yMaxLabel]="greedLabel"
[yMin]="0" [yMin]="0"
[yMinLabel]="fearLabel" [yMinLabel]="fearLabel"
></gf-line-chart> />
<gf-fear-and-greed-index <gf-fear-and-greed-index
class="d-flex justify-content-center" class="d-flex justify-content-center"
[fearAndGreedIndex]="fearAndGreedIndex" [fearAndGreedIndex]="fearAndGreedIndex"
></gf-fear-and-greed-index> />
</div> </div>
</div> </div>
@ -32,7 +32,7 @@
[benchmarks]="benchmarks" [benchmarks]="benchmarks"
[locale]="user?.settings?.locale" [locale]="user?.settings?.locale"
[user]="user" [user]="user"
></gf-benchmark> />
<ngx-skeleton-loader <ngx-skeleton-loader
*ngIf="isLoading" *ngIf="isLoading"
animation="pulse" animation="pulse"

@ -78,7 +78,7 @@
[showLoader]="false" [showLoader]="false"
[showXAxis]="false" [showXAxis]="false"
[showYAxis]="false" [showYAxis]="false"
></gf-line-chart> />
</div> </div>
</div> </div>
</div> </div>
@ -95,7 +95,7 @@
[performance]="performance" [performance]="performance"
[showDetails]="showDetails" [showDetails]="showDetails"
[unit]="unit" [unit]="unit"
></gf-portfolio-performance> />
<div <div
*ngIf="showDetails && !user?.settings?.isExperimentalFeatures" *ngIf="showDetails && !user?.settings?.isExperimentalFeatures"
class="text-center" class="text-center"
@ -105,7 +105,7 @@
[isLoading]="isLoadingPerformance" [isLoading]="isLoadingPerformance"
[options]="dateRangeOptions" [options]="dateRangeOptions"
(change)="onChangeDateRange($event.value)" (change)="onChangeDateRange($event.value)"
></gf-toggle> />
</div> </div>
</div> </div>
</div> </div>

@ -12,7 +12,7 @@
[locale]="user?.settings?.locale" [locale]="user?.settings?.locale"
[summary]="summary" [summary]="summary"
(emergencyFundChanged)="onChangeEmergencyFund($event)" (emergencyFundChanged)="onChangeEmergencyFund($event)"
></gf-portfolio-summary> />
</mat-card-content> </mat-card-content>
</mat-card> </mat-card>
</div> </div>

@ -2,7 +2,7 @@
mat-dialog-title mat-dialog-title
[title]="data.title" [title]="data.title"
(closeButtonClicked)="onClose()" (closeButtonClicked)="onClose()"
></gf-dialog-header> />
<div class="py-3" mat-dialog-content> <div class="py-3" mat-dialog-content>
<div class="align-items-center d-flex flex-column"> <div class="align-items-center d-flex flex-column">

@ -41,7 +41,7 @@
[isCurrency]="true" [isCurrency]="true"
[locale]="locale" [locale]="locale"
[value]="isLoading ? undefined : performance?.currentNetPerformance" [value]="isLoading ? undefined : performance?.currentNetPerformance"
></gf-value> />
</div> </div>
<div class="col"> <div class="col">
<gf-value <gf-value
@ -51,7 +51,7 @@
[value]=" [value]="
isLoading ? undefined : performance?.currentNetPerformancePercent isLoading ? undefined : performance?.currentNetPerformancePercent
" "
></gf-value> />
</div> </div>
</div> </div>
</div> </div>

@ -2,7 +2,7 @@
<div class="flex-nowrap px-3 py-1 row"> <div class="flex-nowrap px-3 py-1 row">
<div class="flex-grow-1 text-truncate" i18n>Time in Market</div> <div class="flex-grow-1 text-truncate" i18n>Time in Market</div>
<div class="justify-content-end"> <div class="justify-content-end">
<gf-value class="justify-content-end" [value]="timeInMarket"></gf-value> <gf-value class="justify-content-end" [value]="timeInMarket" />
</div> </div>
</div> </div>
<div <div
@ -26,7 +26,7 @@
[locale]="locale" [locale]="locale"
[unit]="baseCurrency" [unit]="baseCurrency"
[value]="isLoading ? undefined : summary?.totalBuy" [value]="isLoading ? undefined : summary?.totalBuy"
></gf-value> />
</div> </div>
</div> </div>
<div class="flex-nowrap px-3 py-1 row"> <div class="flex-nowrap px-3 py-1 row">
@ -38,7 +38,7 @@
[locale]="locale" [locale]="locale"
[unit]="baseCurrency" [unit]="baseCurrency"
[value]="isLoading ? undefined : summary?.totalSell" [value]="isLoading ? undefined : summary?.totalSell"
></gf-value> />
</div> </div>
</div> </div>
<div class="row"> <div class="row">
@ -53,7 +53,7 @@
[locale]="locale" [locale]="locale"
[unit]="baseCurrency" [unit]="baseCurrency"
[value]="isLoading ? undefined : summary?.committedFunds" [value]="isLoading ? undefined : summary?.committedFunds"
></gf-value> />
</div> </div>
</div> </div>
<div class="flex-nowrap px-3 py-1 row"> <div class="flex-nowrap px-3 py-1 row">
@ -65,7 +65,7 @@
[locale]="locale" [locale]="locale"
[unit]="baseCurrency" [unit]="baseCurrency"
[value]="isLoading ? undefined : summary?.currentGrossPerformance" [value]="isLoading ? undefined : summary?.currentGrossPerformance"
></gf-value> />
</div> </div>
</div> </div>
<div class="flex-nowrap px-3 py-1 row"> <div class="flex-nowrap px-3 py-1 row">
@ -87,7 +87,7 @@
[value]=" [value]="
isLoading ? undefined : summary?.currentGrossPerformancePercent isLoading ? undefined : summary?.currentGrossPerformancePercent
" "
></gf-value> />
</div> </div>
</div> </div>
<div class="flex-nowrap px-3 py-1 row"> <div class="flex-nowrap px-3 py-1 row">
@ -100,7 +100,7 @@
[locale]="locale" [locale]="locale"
[unit]="baseCurrency" [unit]="baseCurrency"
[value]="isLoading ? undefined : summary?.fees" [value]="isLoading ? undefined : summary?.fees"
></gf-value> />
</div> </div>
</div> </div>
<div class="row"> <div class="row">
@ -115,7 +115,7 @@
[locale]="locale" [locale]="locale"
[unit]="baseCurrency" [unit]="baseCurrency"
[value]="isLoading ? undefined : summary?.currentNetPerformance" [value]="isLoading ? undefined : summary?.currentNetPerformance"
></gf-value> />
</div> </div>
</div> </div>
<div class="flex-nowrap px-3 py-1 row"> <div class="flex-nowrap px-3 py-1 row">
@ -135,7 +135,7 @@
[isPercent]="true" [isPercent]="true"
[locale]="locale" [locale]="locale"
[value]="isLoading ? undefined : summary?.currentNetPerformancePercent" [value]="isLoading ? undefined : summary?.currentNetPerformancePercent"
></gf-value> />
</div> </div>
</div> </div>
<div class="row"> <div class="row">
@ -151,7 +151,7 @@
[locale]="locale" [locale]="locale"
[unit]="baseCurrency" [unit]="baseCurrency"
[value]="isLoading ? undefined : summary?.currentValue" [value]="isLoading ? undefined : summary?.currentValue"
></gf-value> />
</div> </div>
</div> </div>
<div class="flex-nowrap px-3 py-1 row"> <div class="flex-nowrap px-3 py-1 row">
@ -163,7 +163,7 @@
[locale]="locale" [locale]="locale"
[unit]="baseCurrency" [unit]="baseCurrency"
[value]="isLoading ? undefined : summary?.items" [value]="isLoading ? undefined : summary?.items"
></gf-value> />
</div> </div>
</div> </div>
<div class="flex-nowrap px-3 py-1 row"> <div class="flex-nowrap px-3 py-1 row">
@ -184,7 +184,7 @@
[locale]="locale" [locale]="locale"
[unit]="baseCurrency" [unit]="baseCurrency"
[value]="isLoading ? undefined : summary?.emergencyFund?.total" [value]="isLoading ? undefined : summary?.emergencyFund?.total"
></gf-value> />
</div> </div>
</div> </div>
<div class="flex-nowrap px-3 py-1 row"> <div class="flex-nowrap px-3 py-1 row">
@ -197,7 +197,7 @@
[locale]="locale" [locale]="locale"
[unit]="baseCurrency" [unit]="baseCurrency"
[value]="isLoading ? undefined : summary?.emergencyFund?.cash" [value]="isLoading ? undefined : summary?.emergencyFund?.cash"
></gf-value> />
</div> </div>
</div> </div>
<div class="flex-nowrap px-3 py-1 row"> <div class="flex-nowrap px-3 py-1 row">
@ -210,7 +210,7 @@
[locale]="locale" [locale]="locale"
[unit]="baseCurrency" [unit]="baseCurrency"
[value]="isLoading ? undefined : summary?.emergencyFund?.assets" [value]="isLoading ? undefined : summary?.emergencyFund?.assets"
></gf-value> />
</div> </div>
</div> </div>
<div class="flex-nowrap px-3 py-1 row"> <div class="flex-nowrap px-3 py-1 row">
@ -222,7 +222,7 @@
[locale]="locale" [locale]="locale"
[unit]="baseCurrency" [unit]="baseCurrency"
[value]="isLoading ? undefined : summary?.cash" [value]="isLoading ? undefined : summary?.cash"
></gf-value> />
</div> </div>
</div> </div>
<div class="flex-nowrap px-3 py-1 row"> <div class="flex-nowrap px-3 py-1 row">
@ -234,7 +234,7 @@
[locale]="locale" [locale]="locale"
[unit]="baseCurrency" [unit]="baseCurrency"
[value]="isLoading ? undefined : summary?.excludedAccountsAndActivities" [value]="isLoading ? undefined : summary?.excludedAccountsAndActivities"
></gf-value> />
</div> </div>
</div> </div>
<div class="row"> <div class="row">
@ -254,7 +254,7 @@
[locale]="locale" [locale]="locale"
[unit]="baseCurrency" [unit]="baseCurrency"
[value]="isLoading ? undefined : summary?.liabilities" [value]="isLoading ? undefined : summary?.liabilities"
></gf-value> />
</div> </div>
</div> </div>
<div class="row"> <div class="row">
@ -269,7 +269,7 @@
[locale]="locale" [locale]="locale"
[unit]="baseCurrency" [unit]="baseCurrency"
[value]="isLoading ? undefined : summary?.netWorth" [value]="isLoading ? undefined : summary?.netWorth"
></gf-value> />
</div> </div>
</div> </div>
<div class="flex-nowrap px-3 py-1 row"> <div class="flex-nowrap px-3 py-1 row">
@ -284,7 +284,7 @@
[isPercent]="true" [isPercent]="true"
[locale]="locale" [locale]="locale"
[value]="isLoading ? undefined : summary?.annualizedPerformancePercent" [value]="isLoading ? undefined : summary?.annualizedPerformancePercent"
></gf-value> />
</div> </div>
</div> </div>
<div class="row"> <div class="row">
@ -299,7 +299,7 @@
[locale]="locale" [locale]="locale"
[unit]="baseCurrency" [unit]="baseCurrency"
[value]="isLoading ? undefined : summary?.interest" [value]="isLoading ? undefined : summary?.interest"
></gf-value> />
</div> </div>
</div> </div>
<div class="flex-nowrap px-3 py-1 row"> <div class="flex-nowrap px-3 py-1 row">
@ -311,7 +311,7 @@
[locale]="locale" [locale]="locale"
[unit]="baseCurrency" [unit]="baseCurrency"
[value]="isLoading ? undefined : summary?.dividend" [value]="isLoading ? undefined : summary?.dividend"
></gf-value> />
</div> </div>
</div> </div>
</div> </div>

@ -4,7 +4,7 @@
[deviceType]="data.deviceType" [deviceType]="data.deviceType"
[title]="SymbolProfile?.name ?? SymbolProfile?.symbol" [title]="SymbolProfile?.name ?? SymbolProfile?.symbol"
(closeButtonClicked)="onClose()" (closeButtonClicked)="onClose()"
></gf-dialog-header> />
<div class="flex-grow-1" mat-dialog-content> <div class="flex-grow-1" mat-dialog-content>
<div class="container p-0"> <div class="container p-0">
@ -16,7 +16,7 @@
[locale]="data.locale" [locale]="data.locale"
[unit]="data.baseCurrency" [unit]="data.baseCurrency"
[value]="value" [value]="value"
></gf-value> />
</div> </div>
</div> </div>
@ -33,7 +33,7 @@
[showXAxis]="true" [showXAxis]="true"
[showYAxis]="true" [showYAxis]="true"
[symbol]="data.symbol" [symbol]="data.symbol"
></gf-line-chart> />
<div class="row"> <div class="row">
<div class="col-6 mb-3"> <div class="col-6 mb-3">
@ -222,7 +222,7 @@
[locale]="data.locale" [locale]="data.locale"
[maxItems]="10" [maxItems]="10"
[positions]="sectors" [positions]="sectors"
></gf-portfolio-proportion-chart> />
</div> </div>
<div class="col-md-6 mb-3"> <div class="col-md-6 mb-3">
<div class="h5" i18n>Countries</div> <div class="h5" i18n>Countries</div>
@ -234,7 +234,7 @@
[locale]="data.locale" [locale]="data.locale"
[maxItems]="10" [maxItems]="10"
[positions]="countries" [positions]="countries"
></gf-portfolio-proportion-chart> />
</div> </div>
</ng-template> </ng-template>
</ng-container> </ng-container>
@ -266,7 +266,7 @@
[sortDisabled]="true" [sortDisabled]="true"
[totalItems]="totalItems" [totalItems]="totalItems"
(export)="onExport()" (export)="onExport()"
></gf-activities-table-lazy> />
<gf-activities-table <gf-activities-table
*ngIf="user?.settings?.isExperimentalFeatures !== true" *ngIf="user?.settings?.isExperimentalFeatures !== true"
[activities]="activities" [activities]="activities"
@ -280,7 +280,7 @@
[showActions]="false" [showActions]="false"
[showNameColumn]="false" [showNameColumn]="false"
(export)="onExport()" (export)="onExport()"
></gf-activities-table> />
</div> </div>
</div> </div>
@ -314,4 +314,4 @@
mat-dialog-actions mat-dialog-actions
[deviceType]="data.deviceType" [deviceType]="data.deviceType"
(closeButtonClicked)="onClose()" (closeButtonClicked)="onClose()"
></gf-dialog-footer> />

@ -18,7 +18,7 @@
[marketState]="position?.marketState" [marketState]="position?.marketState"
[range]="range" [range]="range"
[value]="position?.netPerformancePercentage" [value]="position?.netPerformancePercentage"
></gf-trend-indicator> />
</div> </div>
<div *ngIf="isLoading" class="flex-grow-1"> <div *ngIf="isLoading" class="flex-grow-1">
<ngx-skeleton-loader <ngx-skeleton-loader
@ -50,13 +50,13 @@
[locale]="locale" [locale]="locale"
[unit]="baseCurrency" [unit]="baseCurrency"
[value]="position?.netPerformance" [value]="position?.netPerformance"
></gf-value> />
<gf-value <gf-value
[colorizeSign]="true" [colorizeSign]="true"
[isPercent]="true" [isPercent]="true"
[locale]="locale" [locale]="locale"
[value]="position?.netPerformancePercentage" [value]="position?.netPerformancePercentage"
></gf-value> />
</div> </div>
</div> </div>
<div class="align-items-center d-flex"> <div class="align-items-center d-flex">

@ -2,7 +2,7 @@
<div class="row no-gutters"> <div class="row no-gutters">
<div class="col"> <div class="col">
<ng-container *ngIf="positions === undefined"> <ng-container *ngIf="positions === undefined">
<gf-position [isLoading]="true"></gf-position> <gf-position [isLoading]="true" />
</ng-container> </ng-container>
<ng-container *ngIf="positions !== undefined"> <ng-container *ngIf="positions !== undefined">
<ng-container *ngIf="hasPositions"> <ng-container *ngIf="hasPositions">
@ -13,7 +13,7 @@
[locale]="locale" [locale]="locale"
[position]="position" [position]="position"
[range]="range" [range]="range"
></gf-position> />
<gf-position <gf-position
*ngFor="let position of positionsRest" *ngFor="let position of positionsRest"
[baseCurrency]="baseCurrency" [baseCurrency]="baseCurrency"
@ -21,15 +21,13 @@
[locale]="locale" [locale]="locale"
[position]="position" [position]="position"
[range]="range" [range]="range"
></gf-position> />
</ng-container> </ng-container>
<div <div
*ngIf="hasPermissionToCreateOrder && !hasPositions" *ngIf="hasPermissionToCreateOrder && !hasPositions"
class="p-3 text-center" class="p-3 text-center"
> >
<gf-no-transactions-info-indicator <gf-no-transactions-info-indicator [hasBorder]="false" />
[hasBorder]="false"
></gf-no-transactions-info-indicator>
</div> </div>
</ng-container> </ng-container>
</div> </div>

@ -7,15 +7,13 @@
class="my-2 text-center" class="my-2 text-center"
> >
<mat-card-content> <mat-card-content>
<gf-no-transactions-info-indicator <gf-no-transactions-info-indicator [hasBorder]="false" />
[hasBorder]="false" </mat-card-content>
></gf-no-transactions-info-indicator
></mat-card-content>
</mat-card> </mat-card>
<gf-rule *ngIf="rules?.length === 0" [isLoading]="true"></gf-rule> <gf-rule *ngIf="rules?.length === 0" [isLoading]="true" />
<ng-container *ngIf="rules !== null && rules !== undefined"> <ng-container *ngIf="rules !== null && rules !== undefined">
<gf-rule *ngFor="let rule of rules" [rule]="rule"></gf-rule> <gf-rule *ngFor="let rule of rules" [rule]="rule" />
</ng-container> </ng-container>
</div> </div>
</div> </div>

@ -7,10 +7,7 @@
<div> <div>
<h5 class="align-items-center d-flex justify-content-center mb-3"> <h5 class="align-items-center d-flex justify-content-center mb-3">
<span>Ghostfolio Premium</span> <span>Ghostfolio Premium</span>
<gf-premium-indicator <gf-premium-indicator class="ml-1" [enableLink]="false" />
class="ml-1"
[enableLink]="false"
></gf-premium-indicator>
</h5> </h5>
<div class="font-weight-normal h5 mb-3 text-center" i18n> <div class="font-weight-normal h5 mb-3 text-center" i18n>
Are you an ambitious investor who needs the full picture? Are you an ambitious investor who needs the full picture?

@ -6,13 +6,13 @@
<gf-premium-indicator <gf-premium-indicator
*ngIf="user?.subscription?.type === 'Basic'" *ngIf="user?.subscription?.type === 'Basic'"
class="ml-1" class="ml-1"
></gf-premium-indicator> />
</h1> </h1>
<gf-access-table <gf-access-table
[accesses]="accesses" [accesses]="accesses"
[showActions]="hasPermissionToDeleteAccess" [showActions]="hasPermissionToDeleteAccess"
(accessDeleted)="onDeleteAccess($event)" (accessDeleted)="onDeleteAccess($event)"
></gf-access-table> />
<div *ngIf="hasPermissionToCreateAccess" class="fab-container"> <div *ngIf="hasPermissionToCreateAccess" class="fab-container">
<a <a
class="align-items-center d-flex justify-content-center" class="align-items-center d-flex justify-content-center"

@ -5,7 +5,7 @@
<gf-membership-card <gf-membership-card
[expiresAt]="user?.subscription?.expiresAt | date: defaultDateFormat" [expiresAt]="user?.subscription?.expiresAt | date: defaultDateFormat"
[name]="user?.subscription?.type" [name]="user?.subscription?.type"
></gf-membership-card> />
<div <div
*ngIf="user?.subscription?.type === 'Basic'" *ngIf="user?.subscription?.type === 'Basic'"
class="d-flex flex-column mt-5" class="d-flex flex-column mt-5"
@ -43,8 +43,8 @@
<gf-premium-indicator <gf-premium-indicator
class="d-inline-block ml-1" class="d-inline-block ml-1"
[enableLink]="false" [enableLink]="false"
></gf-premium-indicator />
></a> </a>
<a <a
*ngIf="hasPermissionToUpdateUserSettings" *ngIf="hasPermissionToUpdateUserSettings"
class="mx-1" class="mx-1"

@ -15,7 +15,7 @@
(accountDeleted)="onDeleteAccount($event)" (accountDeleted)="onDeleteAccount($event)"
(accountToUpdate)="onUpdateAccount($event)" (accountToUpdate)="onUpdateAccount($event)"
(transferBalance)="onTransferBalance()" (transferBalance)="onTransferBalance()"
></gf-accounts-table> />
</div> </div>
</div> </div>
</div> </div>

@ -61,7 +61,7 @@
class="mr-1" class="mr-1"
[tooltip]="platformEntry.name" [tooltip]="platformEntry.name"
[url]="platformEntry.url" [url]="platformEntry.url"
></gf-symbol-icon> />
<span>{{ platformEntry.name }}</span> <span>{{ platformEntry.name }}</span>
</span> </span>
</mat-option> </mat-option>

@ -17,8 +17,7 @@
class="mr-1" class="mr-1"
[tooltip]="account.Platform?.name" [tooltip]="account.Platform?.name"
[url]="account.Platform?.url" [url]="account.Platform?.url"
></gf-symbol-icon /><span>{{ account.name }}</span>
><span>{{ account.name }}</span>
</div> </div>
</mat-option> </mat-option>
</mat-select> </mat-select>
@ -35,8 +34,7 @@
class="mr-1" class="mr-1"
[tooltip]="account.Platform?.name" [tooltip]="account.Platform?.name"
[url]="account.Platform?.url" [url]="account.Platform?.url"
></gf-symbol-icon /><span>{{ account.name }}</span>
><span>{{ account.name }}</span>
</div> </div>
</mat-option> </mat-option>
</mat-select> </mat-select>

@ -20,8 +20,8 @@
<gf-premium-indicator <gf-premium-indicator
class="d-inline-block ml-1" class="d-inline-block ml-1"
[enableLink]="false" [enableLink]="false"
></gf-premium-indicator />
></span> </span>
annual plan for ambitious investors who need the full picture of annual plan for ambitious investors who need the full picture of
their financial assets. their financial assets.
</p> </p>

@ -21,8 +21,8 @@
<gf-premium-indicator <gf-premium-indicator
class="d-inline-block ml-1" class="d-inline-block ml-1"
[enableLink]="false" [enableLink]="false"
></gf-premium-indicator />
></span> </span>
annual plan with our exclusive Black Week deal. Elevate your annual plan with our exclusive Black Week deal. Elevate your
financial strategy with the power of Ghostfolio designed to give you financial strategy with the power of Ghostfolio designed to give you
the full picture of your assets. the full picture of your assets.

@ -142,7 +142,7 @@
<gf-premium-indicator <gf-premium-indicator
*ngIf="hasPermissionForSubscription" *ngIf="hasPermissionForSubscription"
class="ml-1" class="ml-1"
></gf-premium-indicator> />
</h4> </h4>
<p class="m-0"> <p class="m-0">
Check the rate of return of your portfolio for Check the rate of return of your portfolio for
@ -162,7 +162,7 @@
<gf-premium-indicator <gf-premium-indicator
*ngIf="hasPermissionForSubscription" *ngIf="hasPermissionForSubscription"
class="ml-1" class="ml-1"
></gf-premium-indicator> />
</h4> </h4>
<p class="m-0"> <p class="m-0">
Check the allocations of your portfolio by account, asset Check the allocations of your portfolio by account, asset
@ -207,7 +207,7 @@
<div class="flex-grow-1"> <div class="flex-grow-1">
<h4 class="align-items-center d-flex"> <h4 class="align-items-center d-flex">
<span i18n>Market Mood</span> <span i18n>Market Mood</span>
<gf-premium-indicator class="ml-1"></gf-premium-indicator> <gf-premium-indicator class="ml-1" />
</h4> </h4>
<p class="m-0"> <p class="m-0">
Check the current market mood (<a Check the current market mood (<a
@ -228,7 +228,7 @@
<gf-premium-indicator <gf-premium-indicator
*ngIf="hasPermissionForSubscription" *ngIf="hasPermissionForSubscription"
class="ml-1" class="ml-1"
></gf-premium-indicator> />
</h4> </h4>
<p class="m-0"> <p class="m-0">
Identify potential risks in your portfolio with Ghostfolio Identify potential risks in your portfolio with Ghostfolio

@ -328,11 +328,7 @@
<gf-carousel [aria-label]="'Testimonials'"> <gf-carousel [aria-label]="'Testimonials'">
<div *ngFor="let testimonial of testimonials" gf-carousel-item> <div *ngFor="let testimonial of testimonials" gf-carousel-item>
<div class="d-flex px-4"> <div class="d-flex px-4">
<gf-logo <gf-logo class="mr-3 mt-2 pt-1" size="medium" [showLabel]="false" />
class="mr-3 mt-2 pt-1"
size="medium"
[showLabel]="false"
></gf-logo>
<div> <div>
<div>{{ testimonial.quote }}</div> <div>{{ testimonial.quote }}</div>
<div class="mt-2 text-muted"> <div class="mt-2 text-muted">
@ -361,10 +357,7 @@
</h2> </h2>
</div> </div>
<div class="col-md-8 customer-map-container offset-md-2"> <div class="col-md-8 customer-map-container offset-md-2">
<gf-world-map-chart <gf-world-map-chart format="👻" [countries]="countriesOfSubscribersMap" />
format="👻"
[countries]="countriesOfSubscribersMap"
></gf-world-map-chart>
</div> </div>
</div> </div>
@ -450,7 +443,7 @@
<div <div
class="align-items-center d-flex flex-column justify-content-center w-100" class="align-items-center d-flex flex-column justify-content-center w-100"
> >
<gf-logo size="medium"></gf-logo> <gf-logo size="medium" />
<div>Wealth Management Software</div> <div>Wealth Management Software</div>
</div> </div>
</div> </div>

@ -1,7 +1,7 @@
<div class="container"> <div class="container">
<div class="row"> <div class="row">
<div class="col"> <div class="col">
<gf-home-market></gf-home-market> <gf-home-market />
</div> </div>
</div> </div>
</div> </div>

@ -26,7 +26,7 @@
(importDividends)="onImportDividends()" (importDividends)="onImportDividends()"
(pageChanged)="onChangePage($event)" (pageChanged)="onChangePage($event)"
(sortChanged)="onSortChanged($event)" (sortChanged)="onSortChanged($event)"
></gf-activities-table-lazy> />
<gf-activities-table <gf-activities-table
*ngIf="user?.settings?.isExperimentalFeatures !== true" *ngIf="user?.settings?.isExperimentalFeatures !== true"
[activities]="activities" [activities]="activities"
@ -44,7 +44,7 @@
(exportDrafts)="onExportDrafts($event)" (exportDrafts)="onExportDrafts($event)"
(import)="onImport()" (import)="onImport()"
(importDividends)="onImportDividends()" (importDividends)="onImportDividends()"
></gf-activities-table> />
</div> </div>
</div> </div>

@ -82,8 +82,7 @@
class="mr-1" class="mr-1"
[tooltip]="account.Platform?.name" [tooltip]="account.Platform?.name"
[url]="account.Platform?.url" [url]="account.Platform?.url"
></gf-symbol-icon /><span>{{ account.name }}</span>
><span>{{ account.name }}</span>
</div> </div>
</mat-option> </mat-option>
</mat-select> </mat-select>
@ -357,7 +356,7 @@
[locale]="data.user?.settings?.locale" [locale]="data.user?.settings?.locale"
[unit]="activityForm.controls['currency']?.value ?? data.user?.settings?.baseCurrency" [unit]="activityForm.controls['currency']?.value ?? data.user?.settings?.baseCurrency"
[value]="total" [value]="total"
></gf-value> />
<div> <div>
<button i18n mat-button type="button" (click)="onCancel()">Cancel</button> <button i18n mat-button type="button" (click)="onCancel()">Cancel</button>
<button <button

@ -3,7 +3,7 @@
[deviceType]="data.deviceType" [deviceType]="data.deviceType"
[title]="dialogTitle" [title]="dialogTitle"
(closeButtonClicked)="onCancel()" (closeButtonClicked)="onCancel()"
></gf-dialog-header> />
<div class="flex-grow-1" mat-dialog-content> <div class="flex-grow-1" mat-dialog-content>
<mat-stepper <mat-stepper
@ -136,7 +136,7 @@
[sortDisabled]="true" [sortDisabled]="true"
[totalItems]="totalItems" [totalItems]="totalItems"
(selectedActivities)="updateSelection($event)" (selectedActivities)="updateSelection($event)"
></gf-activities-table-lazy> />
<gf-activities-table <gf-activities-table
*ngIf="importStep === 1 && data?.user?.settings?.isExperimentalFeatures !== true" *ngIf="importStep === 1 && data?.user?.settings?.isExperimentalFeatures !== true"
[activities]="activities" [activities]="activities"
@ -153,7 +153,7 @@
[showFooter]="false" [showFooter]="false"
[showSymbolColumn]="false" [showSymbolColumn]="false"
(selectedActivities)="updateSelection($event)" (selectedActivities)="updateSelection($event)"
></gf-activities-table> />
<div class="d-flex justify-content-end mt-3"> <div class="d-flex justify-content-end mt-3">
<button mat-button (click)="onReset(stepper)"> <button mat-button (click)="onReset(stepper)">
<ng-container i18n>Back</ng-container> <ng-container i18n>Back</ng-container>
@ -214,4 +214,4 @@
mat-dialog-actions mat-dialog-actions
[deviceType]="data.deviceType" [deviceType]="data.deviceType"
(closeButtonClicked)="onCancel()" (closeButtonClicked)="onCancel()"
></gf-dialog-footer> />

@ -7,7 +7,7 @@
[isLoading]="isLoading" [isLoading]="isLoading"
[placeholder]="placeholder" [placeholder]="placeholder"
(valueChanged)="filters$.next($event)" (valueChanged)="filters$.next($event)"
></gf-activities-filter> />
</div> </div>
</div> </div>
<div class="row"> <div class="row">
@ -22,7 +22,7 @@
size="medium" size="medium"
[isPercent]="true" [isPercent]="true"
[value]="isLoading ? undefined : portfolioDetails?.filteredValueInPercentage" [value]="isLoading ? undefined : portfolioDetails?.filteredValueInPercentage"
></gf-value> />
</mat-card-header> </mat-card-header>
<mat-card-content> <mat-card-content>
<mat-progress-bar <mat-progress-bar
@ -50,7 +50,7 @@
[keys]="['id']" [keys]="['id']"
[locale]="user?.settings?.locale" [locale]="user?.settings?.locale"
[positions]="platforms" [positions]="platforms"
></gf-portfolio-proportion-chart> />
</mat-card-content> </mat-card-content>
</mat-card> </mat-card>
</div> </div>
@ -62,8 +62,8 @@
<gf-premium-indicator <gf-premium-indicator
*ngIf="user?.subscription?.type === 'Basic'" *ngIf="user?.subscription?.type === 'Basic'"
class="ml-1" class="ml-1"
></gf-premium-indicator />
></mat-card-title> </mat-card-title>
</mat-card-header> </mat-card-header>
<mat-card-content> <mat-card-content>
<gf-portfolio-proportion-chart <gf-portfolio-proportion-chart
@ -73,7 +73,7 @@
[keys]="['currency']" [keys]="['currency']"
[locale]="user?.settings?.locale" [locale]="user?.settings?.locale"
[positions]="positions" [positions]="positions"
></gf-portfolio-proportion-chart> />
</mat-card-content> </mat-card-content>
</mat-card> </mat-card>
</div> </div>
@ -85,8 +85,8 @@
><gf-premium-indicator ><gf-premium-indicator
*ngIf="user?.subscription?.type === 'Basic'" *ngIf="user?.subscription?.type === 'Basic'"
class="ml-1" class="ml-1"
></gf-premium-indicator />
></mat-card-title> </mat-card-title>
</mat-card-header> </mat-card-header>
<mat-card-content> <mat-card-content>
<gf-portfolio-proportion-chart <gf-portfolio-proportion-chart
@ -96,7 +96,7 @@
[keys]="['assetClassLabel', 'assetSubClassLabel']" [keys]="['assetClassLabel', 'assetSubClassLabel']"
[locale]="user?.settings?.locale" [locale]="user?.settings?.locale"
[positions]="positions" [positions]="positions"
></gf-portfolio-proportion-chart> />
</mat-card-content> </mat-card-content>
</mat-card> </mat-card>
</div> </div>
@ -119,7 +119,7 @@
[positions]="symbols" [positions]="symbols"
[showLabels]="deviceType !== 'mobile'" [showLabels]="deviceType !== 'mobile'"
(proportionChartClicked)="onSymbolChartClicked($event)" (proportionChartClicked)="onSymbolChartClicked($event)"
></gf-portfolio-proportion-chart> />
</mat-card-content> </mat-card-content>
</mat-card> </mat-card>
</div> </div>
@ -131,8 +131,8 @@
><gf-premium-indicator ><gf-premium-indicator
*ngIf="user?.subscription?.type === 'Basic'" *ngIf="user?.subscription?.type === 'Basic'"
class="ml-1" class="ml-1"
></gf-premium-indicator />
></mat-card-title> </mat-card-title>
</mat-card-header> </mat-card-header>
<mat-card-content> <mat-card-content>
<gf-portfolio-proportion-chart <gf-portfolio-proportion-chart
@ -143,7 +143,7 @@
[locale]="user?.settings?.locale" [locale]="user?.settings?.locale"
[maxItems]="10" [maxItems]="10"
[positions]="sectors" [positions]="sectors"
></gf-portfolio-proportion-chart> />
</mat-card-content> </mat-card-content>
</mat-card> </mat-card>
</div> </div>
@ -155,8 +155,8 @@
><gf-premium-indicator ><gf-premium-indicator
*ngIf="user?.subscription?.type === 'Basic'" *ngIf="user?.subscription?.type === 'Basic'"
class="ml-1" class="ml-1"
></gf-premium-indicator />
></mat-card-title> </mat-card-title>
</mat-card-header> </mat-card-header>
<mat-card-content> <mat-card-content>
<gf-portfolio-proportion-chart <gf-portfolio-proportion-chart
@ -166,7 +166,7 @@
[keys]="['name']" [keys]="['name']"
[locale]="user?.settings?.locale" [locale]="user?.settings?.locale"
[positions]="continents" [positions]="continents"
></gf-portfolio-proportion-chart> />
</mat-card-content> </mat-card-content>
</mat-card> </mat-card>
</div> </div>
@ -178,8 +178,8 @@
><gf-premium-indicator ><gf-premium-indicator
*ngIf="user?.subscription?.type === 'Basic'" *ngIf="user?.subscription?.type === 'Basic'"
class="ml-1" class="ml-1"
></gf-premium-indicator />
></mat-card-title> </mat-card-title>
</mat-card-header> </mat-card-header>
<mat-card-content> <mat-card-content>
<gf-portfolio-proportion-chart <gf-portfolio-proportion-chart
@ -188,7 +188,7 @@
[isInPercent]="hasImpersonationId || user.settings.isRestrictedView" [isInPercent]="hasImpersonationId || user.settings.isRestrictedView"
[locale]="user?.settings?.locale" [locale]="user?.settings?.locale"
[positions]="marketsAdvanced" [positions]="marketsAdvanced"
></gf-portfolio-proportion-chart> />
</mat-card-content> </mat-card-content>
</mat-card> </mat-card>
</div> </div>
@ -202,8 +202,8 @@
><gf-premium-indicator ><gf-premium-indicator
*ngIf="user?.subscription?.type === 'Basic'" *ngIf="user?.subscription?.type === 'Basic'"
class="ml-1" class="ml-1"
></gf-premium-indicator />
></mat-card-title> </mat-card-title>
</mat-card-header> </mat-card-header>
<mat-card-content> <mat-card-content>
<div class="world-map-chart-container"> <div class="world-map-chart-container">
@ -212,7 +212,7 @@
[format]="worldMapChartFormat" [format]="worldMapChartFormat"
[isInPercent]="hasImpersonationId || user.settings.isRestrictedView" [isInPercent]="hasImpersonationId || user.settings.isRestrictedView"
[locale]="user?.settings?.locale" [locale]="user?.settings?.locale"
></gf-world-map-chart> />
</div> </div>
<div class="row"> <div class="row">
<div class="col-xs-12 col-md my-2"> <div class="col-xs-12 col-md my-2">
@ -275,7 +275,7 @@
[locale]="user?.settings?.locale" [locale]="user?.settings?.locale"
[positions]="accounts" [positions]="accounts"
(proportionChartClicked)="onAccountChartClicked($event)" (proportionChartClicked)="onAccountChartClicked($event)"
></gf-portfolio-proportion-chart> />
</mat-card-content> </mat-card-content>
</mat-card> </mat-card>
</div> </div>
@ -287,8 +287,8 @@
><gf-premium-indicator ><gf-premium-indicator
*ngIf="user?.subscription?.type === 'Basic'" *ngIf="user?.subscription?.type === 'Basic'"
class="ml-1" class="ml-1"
></gf-premium-indicator />
></mat-card-title> </mat-card-title>
</mat-card-header> </mat-card-header>
<mat-card-content> <mat-card-content>
<gf-portfolio-proportion-chart <gf-portfolio-proportion-chart
@ -298,7 +298,7 @@
[keys]="['etfProvider']" [keys]="['etfProvider']"
[locale]="user?.settings?.locale" [locale]="user?.settings?.locale"
[positions]="positions" [positions]="positions"
></gf-portfolio-proportion-chart> />
</mat-card-content> </mat-card-content>
</mat-card> </mat-card>
</div> </div>
@ -310,8 +310,8 @@
><gf-premium-indicator ><gf-premium-indicator
*ngIf="user?.subscription?.type === 'Basic'" *ngIf="user?.subscription?.type === 'Basic'"
class="ml-1" class="ml-1"
></gf-premium-indicator />
></mat-card-title> </mat-card-title>
</mat-card-header> </mat-card-header>
<mat-card-content> <mat-card-content>
<gf-portfolio-proportion-chart <gf-portfolio-proportion-chart
@ -322,7 +322,7 @@
[locale]="user?.settings?.locale" [locale]="user?.settings?.locale"
[maxItems]="10" [maxItems]="10"
[positions]="countries" [positions]="countries"
></gf-portfolio-proportion-chart> />
</mat-card-content> </mat-card-content>
</mat-card> </mat-card>
</div> </div>

@ -7,14 +7,14 @@
[isLoading]="isLoadingBenchmarkComparator || isLoadingInvestmentChart" [isLoading]="isLoadingBenchmarkComparator || isLoadingInvestmentChart"
[options]="dateRangeOptions" [options]="dateRangeOptions"
(change)="onChangeDateRange($event.value)" (change)="onChangeDateRange($event.value)"
></gf-toggle> />
</div> </div>
<gf-activities-filter <gf-activities-filter
[allFilters]="allFilters" [allFilters]="allFilters"
[isLoading]="isLoadingBenchmarkComparator || isLoadingInvestmentChart" [isLoading]="isLoadingBenchmarkComparator || isLoadingInvestmentChart"
[placeholder]="placeholder" [placeholder]="placeholder"
(valueChanged)="filters$.next($event)" (valueChanged)="filters$.next($event)"
></gf-activities-filter> />
} }
<div class="mb-5 row"> <div class="mb-5 row">
<div class="col-lg"> <div class="col-lg">
@ -30,7 +30,7 @@
[performanceDataItems]="performanceDataItemsInPercentage" [performanceDataItems]="performanceDataItemsInPercentage"
[user]="user" [user]="user"
(benchmarkChanged)="onChangeBenchmark($event)" (benchmarkChanged)="onChangeBenchmark($event)"
></gf-benchmark-comparator> />
</div> </div>
</div> </div>
@ -51,7 +51,7 @@
[locale]="user?.settings?.locale" [locale]="user?.settings?.locale"
[unit]="user?.settings?.baseCurrency" [unit]="user?.settings?.baseCurrency"
[value]="isLoadingInvestmentChart ? undefined : performance?.currentNetPerformance" [value]="isLoadingInvestmentChart ? undefined : performance?.currentNetPerformance"
></gf-value> />
</div> </div>
</div> </div>
<div class="d-flex mb-3 ml-3 py-1"> <div class="d-flex mb-3 ml-3 py-1">
@ -66,7 +66,7 @@
[isPercent]="true" [isPercent]="true"
[locale]="user?.settings?.locale" [locale]="user?.settings?.locale"
[value]="isLoadingInvestmentChart ? undefined : performance?.currentNetPerformancePercent" [value]="isLoadingInvestmentChart ? undefined : performance?.currentNetPerformancePercent"
></gf-value> />
</div> </div>
</div> </div>
<div class="d-flex py-1"> <div class="d-flex py-1">
@ -81,7 +81,7 @@
[locale]="user?.settings?.locale" [locale]="user?.settings?.locale"
[unit]="user?.settings?.baseCurrency" [unit]="user?.settings?.baseCurrency"
[value]="isLoadingInvestmentChart ? undefined : (performance?.currentNetPerformanceWithCurrencyEffect === null ? null : performance?.currentNetPerformanceWithCurrencyEffect - performance?.currentNetPerformance)" [value]="isLoadingInvestmentChart ? undefined : (performance?.currentNetPerformanceWithCurrencyEffect === null ? null : performance?.currentNetPerformanceWithCurrencyEffect - performance?.currentNetPerformance)"
></gf-value> />
</div> </div>
</div> </div>
<div class="d-flex ml-3 py-1"> <div class="d-flex ml-3 py-1">
@ -96,7 +96,7 @@
[isPercent]="true" [isPercent]="true"
[locale]="user?.settings?.locale" [locale]="user?.settings?.locale"
[value]="isLoadingInvestmentChart ? undefined : performance?.currentNetPerformancePercentWithCurrencyEffect - performance?.currentNetPerformancePercent" [value]="isLoadingInvestmentChart ? undefined : performance?.currentNetPerformancePercentWithCurrencyEffect - performance?.currentNetPerformancePercent"
></gf-value> />
</div> </div>
</div> </div>
<div><hr /></div> <div><hr /></div>
@ -112,7 +112,7 @@
[locale]="user?.settings?.locale" [locale]="user?.settings?.locale"
[unit]="user?.settings?.baseCurrency" [unit]="user?.settings?.baseCurrency"
[value]="isLoadingInvestmentChart ? undefined : performance?.currentNetPerformanceWithCurrencyEffect" [value]="isLoadingInvestmentChart ? undefined : performance?.currentNetPerformanceWithCurrencyEffect"
></gf-value> />
</div> </div>
</div> </div>
<div class="d-flex ml-3 py-1"> <div class="d-flex ml-3 py-1">
@ -127,7 +127,7 @@
[isPercent]="true" [isPercent]="true"
[locale]="user?.settings?.locale" [locale]="user?.settings?.locale"
[value]="isLoadingInvestmentChart ? undefined : performance?.currentNetPerformancePercentWithCurrencyEffect" [value]="isLoadingInvestmentChart ? undefined : performance?.currentNetPerformancePercentWithCurrencyEffect"
></gf-value> />
</div> </div>
</div> </div>
</mat-card-content> </mat-card-content>
@ -167,7 +167,7 @@
[isPercent]="true" [isPercent]="true"
[locale]="user?.settings?.locale" [locale]="user?.settings?.locale"
[value]="position.netPerformancePercentage" [value]="position.netPerformancePercentage"
></gf-value> />
</div> </div>
</a> </a>
</li> </li>
@ -215,7 +215,7 @@
[isPercent]="true" [isPercent]="true"
[locale]="user?.settings?.locale" [locale]="user?.settings?.locale"
[value]="position.netPerformancePercentage" [value]="position.netPerformancePercentage"
></gf-value> />
</div> </div>
</a> </a>
</li> </li>
@ -245,7 +245,7 @@
<gf-premium-indicator <gf-premium-indicator
*ngIf="user?.subscription?.type === 'Basic'" *ngIf="user?.subscription?.type === 'Basic'"
class="ml-1" class="ml-1"
></gf-premium-indicator> />
</div> </div>
</div> </div>
<div class="chart-container"> <div class="chart-container">
@ -260,7 +260,7 @@
[isLoading]="isLoadingInvestmentChart" [isLoading]="isLoadingInvestmentChart"
[locale]="user?.settings?.locale" [locale]="user?.settings?.locale"
[range]="user?.settings?.dateRange" [range]="user?.settings?.dateRange"
></gf-investment-chart> />
</div> </div>
</div> </div>
</div> </div>
@ -275,7 +275,7 @@
<gf-premium-indicator <gf-premium-indicator
*ngIf="user?.subscription?.type === 'Basic'" *ngIf="user?.subscription?.type === 'Basic'"
class="ml-1" class="ml-1"
></gf-premium-indicator> />
</div> </div>
<gf-toggle <gf-toggle
class="d-none d-lg-block" class="d-none d-lg-block"
@ -283,7 +283,7 @@
[isLoading]="false" [isLoading]="false"
[options]="modeOptions" [options]="modeOptions"
(change)="onChangeGroupBy($event.value)" (change)="onChangeGroupBy($event.value)"
></gf-toggle> />
</div> </div>
<div *ngIf="streaks" class="row"> <div *ngIf="streaks" class="row">
<div class="col-md-6 col-xs-12 my-2"> <div class="col-md-6 col-xs-12 my-2">
@ -317,7 +317,7 @@
[locale]="user?.settings?.locale" [locale]="user?.settings?.locale"
[range]="user?.settings?.dateRange" [range]="user?.settings?.dateRange"
[savingsRate]="savingsRate" [savingsRate]="savingsRate"
></gf-investment-chart> />
</div> </div>
</div> </div>
</div> </div>
@ -332,7 +332,7 @@
<gf-premium-indicator <gf-premium-indicator
*ngIf="user?.subscription?.type === 'Basic'" *ngIf="user?.subscription?.type === 'Basic'"
class="ml-1" class="ml-1"
></gf-premium-indicator> />
</div> </div>
<gf-toggle <gf-toggle
class="d-none d-lg-block" class="d-none d-lg-block"
@ -340,7 +340,7 @@
[isLoading]="false" [isLoading]="false"
[options]="modeOptions" [options]="modeOptions"
(change)="onChangeGroupBy($event.value)" (change)="onChangeGroupBy($event.value)"
></gf-toggle> />
</div> </div>
<div class="chart-container"> <div class="chart-container">
<gf-investment-chart <gf-investment-chart
@ -353,7 +353,7 @@
[isInPercent]="hasImpersonationId || user.settings.isRestrictedView" [isInPercent]="hasImpersonationId || user.settings.isRestrictedView"
[locale]="user?.settings?.locale" [locale]="user?.settings?.locale"
[range]="user?.settings?.dateRange" [range]="user?.settings?.dateRange"
></gf-investment-chart> />
</div> </div>
</div> </div>
</div> </div>

@ -8,7 +8,7 @@
><gf-premium-indicator ><gf-premium-indicator
*ngIf="user?.subscription?.type === 'Basic'" *ngIf="user?.subscription?.type === 'Basic'"
class="ml-1" class="ml-1"
></gf-premium-indicator> />
</h4> </h4>
<gf-fire-calculator <gf-fire-calculator
[annualInterestRate]="user?.settings?.annualInterestRate" [annualInterestRate]="user?.settings?.annualInterestRate"
@ -25,7 +25,7 @@
(projectedTotalAmountChanged)="onProjectedTotalAmountChange($event)" (projectedTotalAmountChanged)="onProjectedTotalAmountChange($event)"
(retirementDateChanged)="onRetirementDateChange($event)" (retirementDateChanged)="onRetirementDateChange($event)"
(savingsRateChanged)="onSavingsRateChange($event)" (savingsRateChanged)="onSavingsRateChange($event)"
></gf-fire-calculator> />
</div> </div>
</div> </div>
</div> </div>
@ -35,7 +35,7 @@
><gf-premium-indicator ><gf-premium-indicator
*ngIf="user?.subscription?.type === 'Basic'" *ngIf="user?.subscription?.type === 'Basic'"
class="ml-1" class="ml-1"
></gf-premium-indicator> />
</h4> </h4>
<div *ngIf="isLoading"> <div *ngIf="isLoading">
<ngx-skeleton-loader <ngx-skeleton-loader
@ -63,7 +63,7 @@
[locale]="user?.settings?.locale" [locale]="user?.settings?.locale"
[unit]="user?.settings?.baseCurrency" [unit]="user?.settings?.baseCurrency"
[value]="withdrawalRatePerYear?.toNumber()" [value]="withdrawalRatePerYear?.toNumber()"
></gf-value> />
per year</span per year</span
> >
or or
@ -74,7 +74,7 @@
[locale]="user?.settings?.locale" [locale]="user?.settings?.locale"
[unit]="user?.settings?.baseCurrency" [unit]="user?.settings?.baseCurrency"
[value]="withdrawalRatePerMonth?.toNumber()" [value]="withdrawalRatePerMonth?.toNumber()"
></gf-value> />
per month</span per month</span
>, based on your total assets of >, based on your total assets of
<span class="font-weight-bold" <span class="font-weight-bold"
@ -84,8 +84,8 @@
[locale]="user?.settings?.locale" [locale]="user?.settings?.locale"
[unit]="user?.settings?.baseCurrency" [unit]="user?.settings?.baseCurrency"
[value]="fireWealth?.toNumber()" [value]="fireWealth?.toNumber()"
></gf-value />
></span> </span>
and a withdrawal rate of 4%. and a withdrawal rate of 4%.
</div> </div>
</div> </div>
@ -112,12 +112,12 @@
><gf-premium-indicator ><gf-premium-indicator
*ngIf="user?.subscription?.type === 'Basic'" *ngIf="user?.subscription?.type === 'Basic'"
class="ml-1" class="ml-1"
></gf-premium-indicator> />
</h4> </h4>
<gf-rules <gf-rules
[hasPermissionToCreateOrder]="hasPermissionToCreateOrder" [hasPermissionToCreateOrder]="hasPermissionToCreateOrder"
[rules]="emergencyFundRules" [rules]="emergencyFundRules"
></gf-rules> />
</div> </div>
<div class="mb-4"> <div class="mb-4">
<h4 class="align-items-center d-flex m-0"> <h4 class="align-items-center d-flex m-0">
@ -125,12 +125,12 @@
><gf-premium-indicator ><gf-premium-indicator
*ngIf="user?.subscription?.type === 'Basic'" *ngIf="user?.subscription?.type === 'Basic'"
class="ml-1" class="ml-1"
></gf-premium-indicator> />
</h4> </h4>
<gf-rules <gf-rules
[hasPermissionToCreateOrder]="hasPermissionToCreateOrder" [hasPermissionToCreateOrder]="hasPermissionToCreateOrder"
[rules]="currencyClusterRiskRules" [rules]="currencyClusterRiskRules"
></gf-rules> />
</div> </div>
<div class="mb-4"> <div class="mb-4">
<h4 class="align-items-center d-flex m-0"> <h4 class="align-items-center d-flex m-0">
@ -138,12 +138,12 @@
><gf-premium-indicator ><gf-premium-indicator
*ngIf="user?.subscription?.type === 'Basic'" *ngIf="user?.subscription?.type === 'Basic'"
class="ml-1" class="ml-1"
></gf-premium-indicator> />
</h4> </h4>
<gf-rules <gf-rules
[hasPermissionToCreateOrder]="hasPermissionToCreateOrder" [hasPermissionToCreateOrder]="hasPermissionToCreateOrder"
[rules]="accountClusterRiskRules" [rules]="accountClusterRiskRules"
></gf-rules> />
</div> </div>
<div> <div>
<h4 class="align-items-center d-flex m-0"> <h4 class="align-items-center d-flex m-0">
@ -151,12 +151,12 @@
><gf-premium-indicator ><gf-premium-indicator
*ngIf="user?.subscription?.type === 'Basic'" *ngIf="user?.subscription?.type === 'Basic'"
class="ml-1" class="ml-1"
></gf-premium-indicator> />
</h4> </h4>
<gf-rules <gf-rules
[hasPermissionToCreateOrder]="hasPermissionToCreateOrder" [hasPermissionToCreateOrder]="hasPermissionToCreateOrder"
[rules]="feeRules" [rules]="feeRules"
></gf-rules> />
</div> </div>
</div> </div>
</div> </div>

@ -8,7 +8,7 @@
[isLoading]="isLoading" [isLoading]="isLoading"
[placeholder]="placeholder" [placeholder]="placeholder"
(valueChanged)="filters$.next($event)" (valueChanged)="filters$.next($event)"
></gf-activities-filter> />
} }
</div> </div>
</div> </div>
@ -20,7 +20,7 @@
[hasPermissionToCreateActivity]="hasPermissionToCreateOrder" [hasPermissionToCreateActivity]="hasPermissionToCreateOrder"
[holdings]="holdings" [holdings]="holdings"
[locale]="user?.settings?.locale" [locale]="user?.settings?.locale"
></gf-holdings-table> />
<div <div
*ngIf="hasPermissionToCreateOrder && holdings?.length > 0" *ngIf="hasPermissionToCreateOrder && holdings?.length > 0"
class="text-center" class="text-center"

@ -171,10 +171,7 @@
<div class="align-items-center d-flex mb-2"> <div class="align-items-center d-flex mb-2">
<h4 class="align-items-center d-flex flex-grow-1 m-0"> <h4 class="align-items-center d-flex flex-grow-1 m-0">
<span>Premium</span> <span>Premium</span>
<gf-premium-indicator <gf-premium-indicator class="ml-1" [enableLink]="false" />
class="ml-1"
[enableLink]="false"
></gf-premium-indicator>
</h4> </h4>
<div *ngIf="user?.subscription?.type === 'Premium'"> <div *ngIf="user?.subscription?.type === 'Premium'">
<ion-icon class="mr-1" name="checkmark-outline" /> <ion-icon class="mr-1" name="checkmark-outline" />

@ -20,7 +20,7 @@
[keys]="['symbol']" [keys]="['symbol']"
[positions]="symbols" [positions]="symbols"
[showLabels]="deviceType !== 'mobile'" [showLabels]="deviceType !== 'mobile'"
></gf-portfolio-proportion-chart> />
</mat-card-content> </mat-card-content>
</mat-card> </mat-card>
</div> </div>
@ -35,7 +35,7 @@
[keys]="['currency']" [keys]="['currency']"
[maxItems]="10" [maxItems]="10"
[positions]="positions" [positions]="positions"
></gf-portfolio-proportion-chart> />
</mat-card-content> </mat-card-content>
</mat-card> </mat-card>
</div> </div>
@ -50,7 +50,7 @@
[keys]="['name']" [keys]="['name']"
[maxItems]="10" [maxItems]="10"
[positions]="sectors" [positions]="sectors"
></gf-portfolio-proportion-chart> />
</mat-card-content> </mat-card-content>
</mat-card> </mat-card>
</div> </div>
@ -64,7 +64,7 @@
[isInPercent]="true" [isInPercent]="true"
[keys]="['name']" [keys]="['name']"
[positions]="continents" [positions]="continents"
></gf-portfolio-proportion-chart> />
</mat-card-content> </mat-card-content>
</mat-card> </mat-card>
</div> </div>
@ -81,7 +81,7 @@
format="{0}%" format="{0}%"
[countries]="countries" [countries]="countries"
[isInPercent]="true" [isInPercent]="true"
></gf-world-map-chart> />
</div> </div>
<div class="row"> <div class="row">
<div class="col-xs-12 col-md my-2"> <div class="col-xs-12 col-md my-2">
@ -135,7 +135,7 @@
[hasPermissionToShowValues]="false" [hasPermissionToShowValues]="false"
[holdings]="holdings" [holdings]="holdings"
[pageSize]="7" [pageSize]="7"
></gf-holdings-table> />
</div> </div>
</div> </div>
<div class="row my-5"> <div class="row my-5">

@ -9,7 +9,7 @@
<div <div
class="align-items-center d-flex flex-column justify-content-center w-100" class="align-items-center d-flex flex-column justify-content-center w-100"
> >
<gf-logo size="large"></gf-logo> <gf-logo size="large" />
<p class="lead m-0">Wealth Management Software</p> <p class="lead m-0">Wealth Management Software</p>
</div> </div>
</div> </div>

@ -4,7 +4,7 @@
<div <div
class="align-items-center d-flex flex-column justify-content-center mb-4 w-100" class="align-items-center d-flex flex-column justify-content-center mb-4 w-100"
> >
<gf-logo size="medium"></gf-logo> <gf-logo size="medium" />
</div> </div>
<div *ngIf="!hasError" class="col d-flex justify-content-center"> <div *ngIf="!hasError" class="col d-flex justify-content-center">

@ -48,7 +48,7 @@
<link href="../assets/site.webmanifest" rel="manifest" /> <link href="../assets/site.webmanifest" rel="manifest" />
</head> </head>
<body> <body>
<gf-root></gf-root> <gf-root />
<script src="../ionicons/ionicons.esm.js" type="module"></script> <script src="../ionicons/ionicons.esm.js" type="module"></script>
<script nomodule="" src="ionicons.js"></script> <script nomodule="" src="ionicons.js"></script>

@ -26,7 +26,7 @@
[locale]="locale" [locale]="locale"
[unit]="element?.Account?.currency" [unit]="element?.Account?.currency"
[value]="element?.value" [value]="element?.value"
></gf-value> />
</div> </div>
</td> </td>
</ng-container> </ng-container>

@ -120,7 +120,7 @@
[dataSource]="element.SymbolProfile?.dataSource" [dataSource]="element.SymbolProfile?.dataSource"
[symbol]="element.SymbolProfile?.symbol" [symbol]="element.SymbolProfile?.symbol"
[tooltip]="element.SymbolProfile?.name" [tooltip]="element.SymbolProfile?.name"
></gf-symbol-icon> />
<div>{{ element.dataSource }}</div> <div>{{ element.dataSource }}</div>
</td> </td>
</ng-container> </ng-container>
@ -154,7 +154,7 @@
<ng-container i18n>Type</ng-container> <ng-container i18n>Type</ng-container>
</th> </th>
<td *matCellDef="let element" class="px-1" mat-cell> <td *matCellDef="let element" class="px-1" mat-cell>
<gf-activity-type [activityType]="element.type"></gf-activity-type> <gf-activity-type [activityType]="element.type" />
</td> </td>
</ng-container> </ng-container>
@ -188,7 +188,7 @@
[isCurrency]="true" [isCurrency]="true"
[locale]="locale" [locale]="locale"
[value]="isLoading ? undefined : element.quantity" [value]="isLoading ? undefined : element.quantity"
></gf-value> />
</div> </div>
</td> </td>
</ng-container> </ng-container>
@ -212,7 +212,7 @@
[isCurrency]="true" [isCurrency]="true"
[locale]="locale" [locale]="locale"
[value]="isLoading ? undefined : element.unitPrice" [value]="isLoading ? undefined : element.unitPrice"
></gf-value> />
</div> </div>
</td> </td>
</ng-container> </ng-container>
@ -236,7 +236,7 @@
[isCurrency]="true" [isCurrency]="true"
[locale]="locale" [locale]="locale"
[value]="isLoading ? undefined : element.fee" [value]="isLoading ? undefined : element.fee"
></gf-value> />
</div> </div>
</td> </td>
</ng-container> </ng-container>
@ -259,7 +259,7 @@
[isCurrency]="true" [isCurrency]="true"
[locale]="locale" [locale]="locale"
[value]="isLoading ? undefined : element.value" [value]="isLoading ? undefined : element.value"
></gf-value> />
</div> </div>
</td> </td>
</ng-container> </ng-container>
@ -291,7 +291,7 @@
[isCurrency]="true" [isCurrency]="true"
[locale]="locale" [locale]="locale"
[value]="isLoading ? undefined : element.valueInBaseCurrency" [value]="isLoading ? undefined : element.valueInBaseCurrency"
></gf-value> />
</div> </div>
</td> </td>
</ng-container> </ng-container>
@ -307,7 +307,7 @@
class="mr-1" class="mr-1"
[tooltip]="element.Account?.Platform?.name" [tooltip]="element.Account?.Platform?.name"
[url]="element.Account?.Platform?.url" [url]="element.Account?.Platform?.url"
></gf-symbol-icon> />
<span class="d-none d-lg-block">{{ element.Account?.name }}</span> <span class="d-none d-lg-block">{{ element.Account?.name }}</span>
</div> </div>
</td> </td>
@ -486,7 +486,5 @@
" "
class="p-3 text-center" class="p-3 text-center"
> >
<gf-no-transactions-info-indicator <gf-no-transactions-info-indicator [hasBorder]="false" />
[hasBorder]="false"
></gf-no-transactions-info-indicator>
</div> </div>

@ -4,7 +4,7 @@
[ngClass]="{ 'd-none': !hasPermissionToFilter }" [ngClass]="{ 'd-none': !hasPermissionToFilter }"
[placeholder]="placeholder" [placeholder]="placeholder"
(valueChanged)="filters$.next($event)" (valueChanged)="filters$.next($event)"
></gf-activities-filter> />
<div *ngIf="hasPermissionToCreateActivity" class="d-flex justify-content-end"> <div *ngIf="hasPermissionToCreateActivity" class="d-flex justify-content-end">
<button <button
@ -164,7 +164,7 @@
<ng-container i18n>Type</ng-container> <ng-container i18n>Type</ng-container>
</th> </th>
<td *matCellDef="let element" class="px-1" mat-cell> <td *matCellDef="let element" class="px-1" mat-cell>
<gf-activity-type [activityType]="element.type"></gf-activity-type> <gf-activity-type [activityType]="element.type" />
</td> </td>
<td *matFooterCellDef class="px-1" mat-footer-cell></td> <td *matFooterCellDef class="px-1" mat-footer-cell></td>
</ng-container> </ng-container>
@ -239,7 +239,7 @@
[isCurrency]="true" [isCurrency]="true"
[locale]="locale" [locale]="locale"
[value]="isLoading ? undefined : element.quantity" [value]="isLoading ? undefined : element.quantity"
></gf-value> />
</div> </div>
</td> </td>
<td <td
@ -268,7 +268,7 @@
[isCurrency]="true" [isCurrency]="true"
[locale]="locale" [locale]="locale"
[value]="isLoading ? undefined : element.unitPrice" [value]="isLoading ? undefined : element.unitPrice"
></gf-value> />
</div> </div>
</td> </td>
<td <td
@ -297,7 +297,7 @@
[isCurrency]="true" [isCurrency]="true"
[locale]="locale" [locale]="locale"
[value]="isLoading ? undefined : element.fee" [value]="isLoading ? undefined : element.fee"
></gf-value> />
</div> </div>
</td> </td>
<td *matFooterCellDef class="d-none d-lg-table-cell px-1" mat-footer-cell> <td *matFooterCellDef class="d-none d-lg-table-cell px-1" mat-footer-cell>
@ -306,7 +306,7 @@
[isCurrency]="true" [isCurrency]="true"
[locale]="locale" [locale]="locale"
[value]="isLoading ? undefined : totalFees" [value]="isLoading ? undefined : totalFees"
></gf-value> />
</div> </div>
</td> </td>
</ng-container> </ng-container>
@ -330,7 +330,7 @@
[isCurrency]="true" [isCurrency]="true"
[locale]="locale" [locale]="locale"
[value]="isLoading ? undefined : element.value" [value]="isLoading ? undefined : element.value"
></gf-value> />
</div> </div>
</td> </td>
<td *matFooterCellDef class="d-none d-lg-table-cell px-1" mat-footer-cell> <td *matFooterCellDef class="d-none d-lg-table-cell px-1" mat-footer-cell>
@ -341,7 +341,7 @@
[isCurrency]="true" [isCurrency]="true"
[locale]="locale" [locale]="locale"
[value]="isLoading ? undefined : totalValue" [value]="isLoading ? undefined : totalValue"
></gf-value> />
</div> </div>
</td> </td>
</ng-container> </ng-container>
@ -361,7 +361,7 @@
[isCurrency]="true" [isCurrency]="true"
[locale]="locale" [locale]="locale"
[value]="isLoading ? undefined : element.valueInBaseCurrency" [value]="isLoading ? undefined : element.valueInBaseCurrency"
></gf-value> />
</div> </div>
</td> </td>
<td *matFooterCellDef class="d-lg-none d-xl-none px-1" mat-footer-cell> <td *matFooterCellDef class="d-lg-none d-xl-none px-1" mat-footer-cell>
@ -372,7 +372,7 @@
[isCurrency]="true" [isCurrency]="true"
[locale]="locale" [locale]="locale"
[value]="isLoading ? undefined : totalValue" [value]="isLoading ? undefined : totalValue"
></gf-value> />
</div> </div>
</td> </td>
</ng-container> </ng-container>
@ -393,7 +393,7 @@
class="mr-1" class="mr-1"
[tooltip]="element.Account?.Platform?.name" [tooltip]="element.Account?.Platform?.name"
[url]="element.Account?.Platform?.url" [url]="element.Account?.Platform?.url"
></gf-symbol-icon> />
<span class="d-none d-lg-block">{{ element.Account?.name }}</span> <span class="d-none d-lg-block">{{ element.Account?.name }}</span>
</div> </div>
</td> </td>
@ -587,7 +587,5 @@
" "
class="p-3 text-center" class="p-3 text-center"
> >
<gf-no-transactions-info-indicator <gf-no-transactions-info-indicator [hasBorder]="false" />
[hasBorder]="false"
></gf-no-transactions-info-indicator>
</div> </div>

@ -14,7 +14,7 @@
[dataSource]="element.dataSource" [dataSource]="element.dataSource"
[symbol]="element.symbol" [symbol]="element.symbol"
[tooltip]="element.name" [tooltip]="element.name"
></gf-symbol-icon> />
</td> </td>
</ng-container> </ng-container>
@ -59,7 +59,7 @@
[isDate]="element.dateOfFirstActivity ? true : false" [isDate]="element.dateOfFirstActivity ? true : false"
[locale]="locale" [locale]="locale"
[value]="element.dateOfFirstActivity ?? ''" [value]="element.dateOfFirstActivity ?? ''"
></gf-value> />
</div> </div>
</td> </td>
</ng-container> </ng-container>
@ -83,7 +83,7 @@
[isCurrency]="true" [isCurrency]="true"
[locale]="locale" [locale]="locale"
[value]="isLoading ? undefined : element.valueInBaseCurrency" [value]="isLoading ? undefined : element.valueInBaseCurrency"
></gf-value> />
</div> </div>
</td> </td>
</ng-container> </ng-container>
@ -104,7 +104,7 @@
[isPercent]="true" [isPercent]="true"
[locale]="locale" [locale]="locale"
[value]="isLoading ? undefined : element.allocationInPercentage" [value]="isLoading ? undefined : element.allocationInPercentage"
></gf-value> />
</div> </div>
</td> </td>
</ng-container> </ng-container>
@ -126,7 +126,7 @@
[isPercent]="true" [isPercent]="true"
[locale]="locale" [locale]="locale"
[value]="isLoading ? undefined : element.netPerformancePercent" [value]="isLoading ? undefined : element.netPerformancePercent"
></gf-value> />
</div> </div>
</td> </td>
</ng-container> </ng-container>
@ -179,7 +179,5 @@
" "
class="p-3 text-center" class="p-3 text-center"
> >
<gf-no-transactions-info-indicator <gf-no-transactions-info-indicator [hasBorder]="false" />
[hasBorder]="false"
></gf-no-transactions-info-indicator>
</div> </div>

@ -1,6 +1,6 @@
<div class="p-3"> <div class="p-3">
<div class="d-flex justify-content-center mb-1"> <div class="d-flex justify-content-center mb-1">
<gf-logo size="large" [showLabel]="false"></gf-logo> <gf-logo size="large" [showLabel]="false" />
</div> </div>
<a <a
class="align-items-center justify-content-center" class="align-items-center justify-content-center"

Loading…
Cancel
Save