Browse Source

Merge branch 'main' into bugfix/redaction-of-values-of-etf-holdings

pull/7973/head
Thomas Kaul 2 weeks ago
committed by GitHub
parent
commit
d5a7b1b4c1
No known key found for this signature in database GPG Key ID: B5690EEEBB952194
  1. 3
      CHANGELOG.md
  2. 4
      apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html
  3. 1
      apps/client/src/app/pages/portfolio/allocations/allocations-page.html
  4. 4
      apps/client/src/app/pages/portfolio/fire/fire-page.component.ts
  5. 15
      libs/ui/src/lib/top-holdings/top-holdings.component.ts

3
CHANGELOG.md

@ -18,6 +18,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
### Fixed
- Fixed the value column of the top holdings on the allocations page in the _Presenter View_
- Fixed the projected sustainable retirement income on the _FIRE_ page for a projected total amount of zero (experimental)
- Fixed the emergency fund in the portfolio summary for redacted values
- Fixed the redaction of the values of the holdings of ETFs in a restricted view
## 3.75.0 - 2026-09-28

4
apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html

@ -486,7 +486,9 @@
[locale]="locale"
[precision]="precision"
[unit]="displayedCurrency"
[value]="summary?.emergencyFund?.total"
[value]="
summary?.emergencyFund === null ? null : summary?.emergencyFund?.total
"
/>
</div>
</div>

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

@ -341,6 +341,7 @@
<mat-card-content>
<gf-top-holdings
[baseCurrency]="user?.settings?.baseCurrency"
[hasPermissionToShowValues]="!showValuesInPercentage()"
[locale]="user?.settings?.locale"
[pageSize]="10"
[topHoldings]="topHoldings"

4
apps/client/src/app/pages/portfolio/fire/fire-page.component.ts

@ -27,6 +27,7 @@ import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
import { FormControl } from '@angular/forms';
import { Big } from 'big.js';
import { isFinite, isNumber } from 'lodash';
import { DeviceDetectorService } from 'ngx-device-detector';
import { NgxSkeletonLoaderModule } from 'ngx-skeleton-loader';
@ -256,7 +257,8 @@ export class GfFirePageComponent implements OnInit {
private calculateWithdrawalRatesProjected() {
if (
this.fireWealth &&
this.projectedTotalAmount &&
isNumber(this.projectedTotalAmount) &&
isFinite(this.projectedTotalAmount) &&
this.user?.settings?.safeWithdrawalRate
) {
this.withdrawalRatePerYearProjected = new Big(

15
libs/ui/src/lib/top-holdings/top-holdings.component.ts

@ -39,6 +39,7 @@ import { GfValueComponent } from '../value/value.component';
})
export class GfTopHoldingsComponent implements OnChanges {
@Input() baseCurrency: string;
@Input() hasPermissionToShowValues = true;
@Input() locale = getLocale();
@Input() pageSize = Number.MAX_SAFE_INTEGER;
@Input() topHoldings: HoldingWithParents[];
@ -48,14 +49,18 @@ export class GfTopHoldingsComponent implements OnChanges {
@ViewChild(MatPaginator) paginator: MatPaginator;
public dataSource = new MatTableDataSource<HoldingWithParents>();
public displayedColumns: string[] = [
'name',
'valueInBaseCurrency',
'allocationInPercentage'
];
public displayedColumns: string[] = [];
public isLoading = true;
public ngOnChanges() {
this.displayedColumns = ['name'];
if (this.hasPermissionToShowValues) {
this.displayedColumns.push('valueInBaseCurrency');
}
this.displayedColumns.push('allocationInPercentage');
this.isLoading = true;
this.dataSource = new MatTableDataSource(this.topHoldings);

Loading…
Cancel
Save