From 7f615f74c44d7ca8186119782de2a064077c816a Mon Sep 17 00:00:00 2001 From: KenTandrian Date: Wed, 11 Feb 2026 11:17:29 +0700 Subject: [PATCH] feat(lib): use input function for hasPermission fields --- .../holdings-table/holdings-table.component.html | 2 +- .../lib/holdings-table/holdings-table.component.ts | 14 +++++++------- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/libs/ui/src/lib/holdings-table/holdings-table.component.html b/libs/ui/src/lib/holdings-table/holdings-table.component.html index b4aaed826..8ca18e09a 100644 --- a/libs/ui/src/lib/holdings-table/holdings-table.component.html +++ b/libs/ui/src/lib/holdings-table/holdings-table.component.html @@ -183,7 +183,7 @@ mat-row [ngClass]="{ 'cursor-pointer': - hasPermissionToOpenDetails && + hasPermissionToOpenDetails() && !ignoreAssetSubClasses.includes(row.assetSubClass) }" (click)=" diff --git a/libs/ui/src/lib/holdings-table/holdings-table.component.ts b/libs/ui/src/lib/holdings-table/holdings-table.component.ts index d5f0cf4ba..4c0a2dfdf 100644 --- a/libs/ui/src/lib/holdings-table/holdings-table.component.ts +++ b/libs/ui/src/lib/holdings-table/holdings-table.component.ts @@ -51,9 +51,6 @@ import { GfValueComponent } from '../value/value.component'; export class GfHoldingsTableComponent implements OnChanges, OnDestroy { @Input() baseCurrency: string; @Input() deviceType: string; - @Input() hasPermissionToOpenDetails = true; - @Input() hasPermissionToShowQuantities = true; - @Input() hasPermissionToShowValues = true; @Input() locale = getLocale(); @Input() pageSize = Number.MAX_SAFE_INTEGER; @@ -63,6 +60,9 @@ export class GfHoldingsTableComponent implements OnChanges, OnDestroy { public ignoreAssetSubClasses = [AssetSubClass.CASH]; public routeQueryParams: Subscription; + public readonly hasPermissionToOpenDetails = input(true); + public readonly hasPermissionToShowQuantities = input(true); + public readonly hasPermissionToShowValues = input(true); public readonly holdings = input.required(); public readonly paginator = viewChild.required(MatPaginator); public readonly sort = viewChild.required(MatSort); @@ -82,17 +82,17 @@ export class GfHoldingsTableComponent implements OnChanges, OnDestroy { public ngOnChanges() { this.displayedColumns = ['icon', 'nameWithSymbol', 'dateOfFirstActivity']; - if (this.hasPermissionToShowQuantities) { + if (this.hasPermissionToShowQuantities()) { this.displayedColumns.push('quantity'); } - if (this.hasPermissionToShowValues) { + if (this.hasPermissionToShowValues()) { this.displayedColumns.push('valueInBaseCurrency'); } this.displayedColumns.push('allocationInPercentage'); - if (this.hasPermissionToShowValues) { + if (this.hasPermissionToShowValues()) { this.displayedColumns.push('performance'); } @@ -100,7 +100,7 @@ export class GfHoldingsTableComponent implements OnChanges, OnDestroy { } public onOpenHoldingDialog({ dataSource, symbol }: AssetProfileIdentifier) { - if (this.hasPermissionToOpenDetails) { + if (this.hasPermissionToOpenDetails()) { this.holdingClicked.emit({ dataSource, symbol }); } }