From e2382834c36a22075ed830ab495dd50ebf042fea Mon Sep 17 00:00:00 2001 From: Thomas Kaul <4159106+dtslvr@users.noreply.github.com> Date: Fri, 19 Sep 2025 15:31:24 +0200 Subject: [PATCH 1/7] Bugfix/add unit price in asset profile currency to redacted values (#5547) * Add unitPriceInAssetProfileCurrency * Update changelog --- CHANGELOG.md | 4 ++++ .../redact-values-in-response.interceptor.ts | 1 + 2 files changed, 5 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index e6215adab..4b8b498fd 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,6 +11,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Refreshed the cryptocurrencies list +### Fixed + +- Fixed an issue with `unitPriceInAssetProfileCurrency` in the value redaction interceptor for the impersonation mode + ## 2.200.0 - 2025-09-17 ### Changed diff --git a/apps/api/src/interceptors/redact-values-in-response/redact-values-in-response.interceptor.ts b/apps/api/src/interceptors/redact-values-in-response/redact-values-in-response.interceptor.ts index 73b18960a..5e28e1591 100644 --- a/apps/api/src/interceptors/redact-values-in-response/redact-values-in-response.interceptor.ts +++ b/apps/api/src/interceptors/redact-values-in-response/redact-values-in-response.interceptor.ts @@ -61,6 +61,7 @@ export class RedactValuesInResponseInterceptor 'totalInterestInBaseCurrency', 'totalValueInBaseCurrency', 'unitPrice', + 'unitPriceInAssetProfileCurrency', 'value', 'valueInBaseCurrency' ].map((attribute) => { From 376006a8709562860ba0e0dae858c46d48ba5f88 Mon Sep 17 00:00:00 2001 From: Thomas Kaul <4159106+dtslvr@users.noreply.github.com> Date: Sat, 20 Sep 2025 17:26:53 +0200 Subject: [PATCH 2/7] Task/rename show access token to user account registration dialog component (#5539) * Rename show access token to user account registration dialog component * Update changelog --- CHANGELOG.md | 1 + .../pages/register/register-page.component.ts | 25 +++++++++++-------- .../interfaces/interfaces.ts | 2 +- ...-account-registration-dialog.component.ts} | 12 ++++----- .../user-account-registration-dialog.html} | 0 .../user-account-registration-dialog.scss} | 0 6 files changed, 22 insertions(+), 18 deletions(-) rename apps/client/src/app/pages/register/{show-access-token-dialog => user-account-registration-dialog}/interfaces/interfaces.ts (53%) rename apps/client/src/app/pages/register/{show-access-token-dialog/show-access-token-dialog.component.ts => user-account-registration-dialog/user-account-registration-dialog.component.ts} (87%) rename apps/client/src/app/pages/register/{show-access-token-dialog/show-access-token-dialog.html => user-account-registration-dialog/user-account-registration-dialog.html} (100%) rename apps/client/src/app/pages/register/{show-access-token-dialog/show-access-token-dialog.scss => user-account-registration-dialog/user-account-registration-dialog.scss} (100%) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4b8b498fd..c03d2d754 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,6 +9,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Changed +- Renamed the show access token dialog component to user account registration dialog component - Refreshed the cryptocurrencies list ### Fixed diff --git a/apps/client/src/app/pages/register/register-page.component.ts b/apps/client/src/app/pages/register/register-page.component.ts index 0f644600b..eff4e308b 100644 --- a/apps/client/src/app/pages/register/register-page.component.ts +++ b/apps/client/src/app/pages/register/register-page.component.ts @@ -18,8 +18,8 @@ import { DeviceDetectorService } from 'ngx-device-detector'; import { Subject } from 'rxjs'; import { takeUntil } from 'rxjs/operators'; -import { ShowAccessTokenDialogParams } from './show-access-token-dialog/interfaces/interfaces'; -import { GfShowAccessTokenDialogComponent } from './show-access-token-dialog/show-access-token-dialog.component'; +import { UserAccountRegistrationDialogParams } from './user-account-registration-dialog/interfaces/interfaces'; +import { GfUserAccountRegistrationDialogComponent } from './user-account-registration-dialog/user-account-registration-dialog.component'; @Component({ host: { class: 'page' }, @@ -84,15 +84,18 @@ export class GfRegisterPageComponent implements OnDestroy, OnInit { } public openShowAccessTokenDialog() { - const dialogRef = this.dialog.open(GfShowAccessTokenDialogComponent, { - data: { - deviceType: this.deviceType, - needsToAcceptTermsOfService: this.hasPermissionForSubscription - } as ShowAccessTokenDialogParams, - disableClose: true, - height: this.deviceType === 'mobile' ? '98vh' : undefined, - width: this.deviceType === 'mobile' ? '100vw' : '30rem' - }); + const dialogRef = this.dialog.open( + GfUserAccountRegistrationDialogComponent, + { + data: { + deviceType: this.deviceType, + needsToAcceptTermsOfService: this.hasPermissionForSubscription + } as UserAccountRegistrationDialogParams, + disableClose: true, + height: this.deviceType === 'mobile' ? '98vh' : undefined, + width: this.deviceType === 'mobile' ? '100vw' : '30rem' + } + ); dialogRef .afterClosed() diff --git a/apps/client/src/app/pages/register/show-access-token-dialog/interfaces/interfaces.ts b/apps/client/src/app/pages/register/user-account-registration-dialog/interfaces/interfaces.ts similarity index 53% rename from apps/client/src/app/pages/register/show-access-token-dialog/interfaces/interfaces.ts rename to apps/client/src/app/pages/register/user-account-registration-dialog/interfaces/interfaces.ts index c32acac40..15922f12f 100644 --- a/apps/client/src/app/pages/register/show-access-token-dialog/interfaces/interfaces.ts +++ b/apps/client/src/app/pages/register/user-account-registration-dialog/interfaces/interfaces.ts @@ -1,4 +1,4 @@ -export interface ShowAccessTokenDialogParams { +export interface UserAccountRegistrationDialogParams { deviceType: string; needsToAcceptTermsOfService: boolean; } diff --git a/apps/client/src/app/pages/register/show-access-token-dialog/show-access-token-dialog.component.ts b/apps/client/src/app/pages/register/user-account-registration-dialog/user-account-registration-dialog.component.ts similarity index 87% rename from apps/client/src/app/pages/register/show-access-token-dialog/show-access-token-dialog.component.ts rename to apps/client/src/app/pages/register/user-account-registration-dialog/user-account-registration-dialog.component.ts index a73d1cf2a..dfa8145dc 100644 --- a/apps/client/src/app/pages/register/show-access-token-dialog/show-access-token-dialog.component.ts +++ b/apps/client/src/app/pages/register/user-account-registration-dialog/user-account-registration-dialog.component.ts @@ -30,7 +30,7 @@ import { import { Subject } from 'rxjs'; import { takeUntil } from 'rxjs/operators'; -import { ShowAccessTokenDialogParams } from './interfaces/interfaces'; +import { UserAccountRegistrationDialogParams } from './interfaces/interfaces'; @Component({ changeDetection: ChangeDetectionStrategy.OnPush, @@ -50,11 +50,11 @@ import { ShowAccessTokenDialogParams } from './interfaces/interfaces'; TextFieldModule ], schemas: [CUSTOM_ELEMENTS_SCHEMA], - selector: 'gf-show-access-token-dialog', - styleUrls: ['./show-access-token-dialog.scss'], - templateUrl: 'show-access-token-dialog.html' + selector: 'gf-user-account-registration-dialog', + styleUrls: ['./user-account-registration-dialog.scss'], + templateUrl: 'user-account-registration-dialog.html' }) -export class GfShowAccessTokenDialogComponent { +export class GfUserAccountRegistrationDialogComponent { @ViewChild(MatStepper) stepper!: MatStepper; public accessToken: string; @@ -69,7 +69,7 @@ export class GfShowAccessTokenDialogComponent { public constructor( private changeDetectorRef: ChangeDetectorRef, - @Inject(MAT_DIALOG_DATA) public data: ShowAccessTokenDialogParams, + @Inject(MAT_DIALOG_DATA) public data: UserAccountRegistrationDialogParams, private dataService: DataService ) { addIcons({ arrowForwardOutline, checkmarkOutline, copyOutline }); diff --git a/apps/client/src/app/pages/register/show-access-token-dialog/show-access-token-dialog.html b/apps/client/src/app/pages/register/user-account-registration-dialog/user-account-registration-dialog.html similarity index 100% rename from apps/client/src/app/pages/register/show-access-token-dialog/show-access-token-dialog.html rename to apps/client/src/app/pages/register/user-account-registration-dialog/user-account-registration-dialog.html diff --git a/apps/client/src/app/pages/register/show-access-token-dialog/show-access-token-dialog.scss b/apps/client/src/app/pages/register/user-account-registration-dialog/user-account-registration-dialog.scss similarity index 100% rename from apps/client/src/app/pages/register/show-access-token-dialog/show-access-token-dialog.scss rename to apps/client/src/app/pages/register/user-account-registration-dialog/user-account-registration-dialog.scss From aa005e237c5f45efe4090c0c041d9ead0d15757b Mon Sep 17 00:00:00 2001 From: Raj Gupta <150777419+Raj-G07@users.noreply.github.com> Date: Sun, 21 Sep 2025 20:45:51 +0530 Subject: [PATCH 3/7] Feature/extend activities table component by showAccountColumn input (#5556) * Extend activities table component by showAccountColumn input * Update changelog --- CHANGELOG.md | 4 ++++ .../src/lib/activities-table/activities-table.component.ts | 7 +++++++ 2 files changed, 11 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index c03d2d754..13477c517 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## Unreleased +### Added + +- Added an option to configure the account column of the activities table component + ### Changed - Renamed the show access token dialog component to user account registration dialog component diff --git a/libs/ui/src/lib/activities-table/activities-table.component.ts b/libs/ui/src/lib/activities-table/activities-table.component.ts index b38af615e..db3341946 100644 --- a/libs/ui/src/lib/activities-table/activities-table.component.ts +++ b/libs/ui/src/lib/activities-table/activities-table.component.ts @@ -104,6 +104,7 @@ export class GfActivitiesTableComponent @Input() locale = getLocale(); @Input() pageIndex: number; @Input() pageSize = DEFAULT_PAGE_SIZE; + @Input() showAccountColumn = true; @Input() showActions = true; @Input() showCheckbox = false; @Input() showNameColumn = true; @@ -192,6 +193,12 @@ export class GfActivitiesTableComponent 'actions' ]; + if (!this.showAccountColumn) { + this.displayedColumns = this.displayedColumns.filter((column) => { + return column !== 'account'; + }); + } + if (!this.showCheckbox) { this.displayedColumns = this.displayedColumns.filter((column) => { return column !== 'importStatus' && column !== 'select'; From be7a9efc52dda8bfbfe215b0027b0098b2b9a812 Mon Sep 17 00:00:00 2001 From: Thomas Kaul <4159106+dtslvr@users.noreply.github.com> Date: Sun, 21 Sep 2025 17:47:50 +0200 Subject: [PATCH 4/7] Feature/upgrade countup.js to version 2.9.0 (#5534) * Upgrade countup.js to version 2.9.0 * Update changelog --- CHANGELOG.md | 1 + package-lock.json | 8 ++++---- package.json | 2 +- 3 files changed, 6 insertions(+), 5 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 13477c517..732d37680 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -15,6 +15,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Renamed the show access token dialog component to user account registration dialog component - Refreshed the cryptocurrencies list +- Upgraded `countup.js` from version `2.8.2` to `2.9.0` ### Fixed diff --git a/package-lock.json b/package-lock.json index 64a90002a..39e3c66a3 100644 --- a/package-lock.json +++ b/package-lock.json @@ -64,7 +64,7 @@ "color": "5.0.0", "countries-and-timezones": "3.8.0", "countries-list": "3.1.1", - "countup.js": "2.8.2", + "countup.js": "2.9.0", "date-fns": "4.1.0", "envalid": "8.1.0", "fuse.js": "7.1.0", @@ -18619,9 +18619,9 @@ "license": "MIT" }, "node_modules/countup.js": { - "version": "2.8.2", - "resolved": "https://registry.npmjs.org/countup.js/-/countup.js-2.8.2.tgz", - "integrity": "sha512-UtRoPH6udaru/MOhhZhI/GZHJKAyAxuKItD2Tr7AbrqrOPBX/uejWBBJt8q86169AMqKkE9h9/24kFWbUk/Bag==", + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/countup.js/-/countup.js-2.9.0.tgz", + "integrity": "sha512-llqrvyXztRFPp6+i8jx25phHWcVWhrHO4Nlt0uAOSKHB8778zzQswa4MU3qKBvkXfJKftRYFJuVHez67lyKdHg==", "license": "MIT" }, "node_modules/create-jest": { diff --git a/package.json b/package.json index 7ede9549d..69ba4a466 100644 --- a/package.json +++ b/package.json @@ -110,7 +110,7 @@ "color": "5.0.0", "countries-and-timezones": "3.8.0", "countries-list": "3.1.1", - "countup.js": "2.8.2", + "countup.js": "2.9.0", "date-fns": "4.1.0", "envalid": "8.1.0", "fuse.js": "7.1.0", From 5bc5f6a2da5aa14855764cce4bb726ea4ae5b80c Mon Sep 17 00:00:00 2001 From: Batwam <56710655+Batwam@users.noreply.github.com> Date: Sun, 21 Sep 2025 23:51:14 +0800 Subject: [PATCH 5/7] Feature/add symbol to benchmark component (#5530) * Add symbol to benchmark component * Update changelog --- CHANGELOG.md | 1 + .../src/app/components/home-market/home-market.html | 1 + apps/client/src/app/components/markets/markets.html | 1 + libs/ui/src/lib/benchmark/benchmark.component.html | 9 ++++++++- libs/ui/src/lib/benchmark/benchmark.component.ts | 1 + 5 files changed, 12 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 732d37680..ee1318bbf 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,6 +9,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added +- Added the symbol to the benchmark component - Added an option to configure the account column of the activities table component ### Changed diff --git a/apps/client/src/app/components/home-market/home-market.html b/apps/client/src/app/components/home-market/home-market.html index 9ea286301..fc7230d35 100644 --- a/apps/client/src/app/components/home-market/home-market.html +++ b/apps/client/src/app/components/home-market/home-market.html @@ -34,6 +34,7 @@ [benchmarks]="benchmarks" [deviceType]="deviceType" [locale]="user?.settings?.locale || undefined" + [showSymbol]="false" [user]="user" /> @if (benchmarks?.length > 0) { diff --git a/apps/client/src/app/components/markets/markets.html b/apps/client/src/app/components/markets/markets.html index 90ddbba06..38234a785 100644 --- a/apps/client/src/app/components/markets/markets.html +++ b/apps/client/src/app/components/markets/markets.html @@ -43,6 +43,7 @@ [benchmarks]="benchmarks" [deviceType]="deviceType" [locale]="user?.settings?.locale || undefined" + [showSymbol]="false" [user]="user" /> @if (benchmarks?.length > 0) { diff --git a/libs/ui/src/lib/benchmark/benchmark.component.html b/libs/ui/src/lib/benchmark/benchmark.component.html index 8df8417f1..2b75e5672 100644 --- a/libs/ui/src/lib/benchmark/benchmark.component.html +++ b/libs/ui/src/lib/benchmark/benchmark.component.html @@ -12,7 +12,14 @@ Name - {{ element?.name }} +
+ {{ element?.name }} +
+ @if (showSymbol) { +
+ {{ element?.symbol }} +
+ } diff --git a/libs/ui/src/lib/benchmark/benchmark.component.ts b/libs/ui/src/lib/benchmark/benchmark.component.ts index d0b2c94fd..3af9bc674 100644 --- a/libs/ui/src/lib/benchmark/benchmark.component.ts +++ b/libs/ui/src/lib/benchmark/benchmark.component.ts @@ -62,6 +62,7 @@ export class GfBenchmarkComponent implements OnChanges, OnDestroy { @Input() deviceType: string; @Input() hasPermissionToDeleteItem: boolean; @Input() locale = getLocale(); + @Input() showSymbol = true; @Input() user: User; @Output() itemDeleted = new EventEmitter(); From 9aefc6c8ed2c81efb9bb9822233479b3c5b765ef Mon Sep 17 00:00:00 2001 From: Thomas Kaul <4159106+dtslvr@users.noreply.github.com> Date: Mon, 22 Sep 2025 17:43:54 +0200 Subject: [PATCH 6/7] Task/update FUNDING.yml (#5564) * Change custom to buy_me_a_coffee --- .github/FUNDING.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml index 57ee8ad6f..9df3e0d6d 100644 --- a/.github/FUNDING.yml +++ b/.github/FUNDING.yml @@ -1 +1 @@ -custom: ['https://www.buymeacoffee.com/ghostfolio'] +buy_me_a_coffee: ghostfolio From 010b1e9b03b91123df42eec0945d086d40e3cdd0 Mon Sep 17 00:00:00 2001 From: Thomas Kaul <4159106+dtslvr@users.noreply.github.com> Date: Mon, 22 Sep 2025 17:44:16 +0200 Subject: [PATCH 7/7] Feature/remove account column from activities table of account detail dialog (#5559) * Remove account column of activities table * Update changelog --- CHANGELOG.md | 1 + .../components/account-detail-dialog/account-detail-dialog.html | 1 + 2 files changed, 2 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index ee1318bbf..7abc0ac03 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -14,6 +14,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Changed +- Hid the account column from the activities table of the account detail dialog to avoid redundant information - Renamed the show access token dialog component to user account registration dialog component - Refreshed the cryptocurrencies list - Upgraded `countup.js` from version `2.8.2` to `2.9.0` diff --git a/apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html b/apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html index 8ca54ce29..eff500d0a 100644 --- a/apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html +++ b/apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html @@ -126,6 +126,7 @@ [hasPermissionToFilter]="false" [hasPermissionToOpenDetails]="false" [locale]="user?.settings?.locale" + [showAccountColumn]="false" [showActions]=" !data.hasImpersonationId && data.hasPermissionToCreateActivity &&