From db2c2426c648ec39e5d9393c3b0e80c63dad506c Mon Sep 17 00:00:00 2001 From: Dibyendu Sahoo Date: Fri, 17 Oct 2025 00:16:24 +0530 Subject: [PATCH 01/16] Task/refactor interest to interestInBaseCurrency in portfolio summary interface (#5763) * Refactor interest to interestInBaseCurrency --- apps/api/src/app/portfolio/portfolio.controller.ts | 2 +- apps/api/src/app/portfolio/portfolio.service.ts | 2 +- apps/api/src/helper/object.helper.spec.ts | 4 ++-- .../portfolio-summary/portfolio-summary.component.html | 2 +- libs/common/src/lib/interfaces/portfolio-summary.interface.ts | 2 +- 5 files changed, 6 insertions(+), 6 deletions(-) diff --git a/apps/api/src/app/portfolio/portfolio.controller.ts b/apps/api/src/app/portfolio/portfolio.controller.ts index 19b0636c7..f6f8e3d80 100644 --- a/apps/api/src/app/portfolio/portfolio.controller.ts +++ b/apps/api/src/app/portfolio/portfolio.controller.ts @@ -197,7 +197,7 @@ export class PortfolioController { 'filteredValueInBaseCurrency', 'grossPerformance', 'grossPerformanceWithCurrencyEffect', - 'interest', + 'interestInBaseCurrency', 'items', 'liabilities', 'netPerformance', diff --git a/apps/api/src/app/portfolio/portfolio.service.ts b/apps/api/src/app/portfolio/portfolio.service.ts index a5bc10fbd..bbfb31b79 100644 --- a/apps/api/src/app/portfolio/portfolio.service.ts +++ b/apps/api/src/app/portfolio/portfolio.service.ts @@ -2105,7 +2105,7 @@ export class PortfolioService { ) .plus(fees) .toNumber(), - interest: interest.toNumber(), + interestInBaseCurrency: interest.toNumber(), liabilitiesInBaseCurrency: liabilities.toNumber(), totalInvestment: totalInvestment.toNumber(), totalValueInBaseCurrency: netWorth diff --git a/apps/api/src/helper/object.helper.spec.ts b/apps/api/src/helper/object.helper.spec.ts index d7caf9bc9..433490325 100644 --- a/apps/api/src/helper/object.helper.spec.ts +++ b/apps/api/src/helper/object.helper.spec.ts @@ -1536,7 +1536,7 @@ describe('redactAttributes', () => { fireWealth: null, grossPerformance: null, grossPerformanceWithCurrencyEffect: null, - interest: null, + interestInBaseCurrency: null, items: null, liabilities: null, totalInvestment: null, @@ -3039,7 +3039,7 @@ describe('redactAttributes', () => { fireWealth: null, grossPerformance: null, grossPerformanceWithCurrencyEffect: null, - interest: null, + interestInBaseCurrency: null, items: null, liabilities: null, totalInvestment: null, diff --git a/apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html b/apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html index c8d710019..b20b6b263 100644 --- a/apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html +++ b/apps/client/src/app/components/portfolio-summary/portfolio-summary.component.html @@ -302,7 +302,7 @@ [isCurrency]="true" [locale]="locale" [unit]="baseCurrency" - [value]="isLoading ? undefined : summary?.interest" + [value]="isLoading ? undefined : summary?.interestInBaseCurrency" /> diff --git a/libs/common/src/lib/interfaces/portfolio-summary.interface.ts b/libs/common/src/lib/interfaces/portfolio-summary.interface.ts index 092a4bb97..f08eb61b8 100644 --- a/libs/common/src/lib/interfaces/portfolio-summary.interface.ts +++ b/libs/common/src/lib/interfaces/portfolio-summary.interface.ts @@ -20,7 +20,7 @@ export interface PortfolioSummary extends PortfolioPerformance { fireWealth: FireWealth; grossPerformance: number; grossPerformanceWithCurrencyEffect: number; - interest: number; + interestInBaseCurrency: number; liabilitiesInBaseCurrency: number; totalBuy: number; totalSell: number; From 835bde6662c2aa5118fc0dccb38aa972caffb640 Mon Sep 17 00:00:00 2001 From: Thomas Kaul <4159106+dtslvr@users.noreply.github.com> Date: Thu, 16 Oct 2025 20:51:14 +0200 Subject: [PATCH 02/16] Feature/extend pricing page (#5761) * Extend pricing page * Update changelog --- CHANGELOG.md | 1 + .../pages/pricing/pricing-page.component.ts | 10 +++++ .../src/app/pages/pricing/pricing-page.html | 43 +++++++++++++++---- 3 files changed, 46 insertions(+), 8 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index adc9dbf53..0fb55409a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,6 +10,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added - Extended the glossary of the resources page by _Stealth Wealth_ +- Extended the content of the pricing page - Added a _Storybook_ story for the holdings table component ### Changed diff --git a/apps/client/src/app/pages/pricing/pricing-page.component.ts b/apps/client/src/app/pages/pricing/pricing-page.component.ts index 170d70914..8bc3e3a67 100644 --- a/apps/client/src/app/pages/pricing/pricing-page.component.ts +++ b/apps/client/src/app/pages/pricing/pricing-page.component.ts @@ -69,6 +69,16 @@ export class GfPricingPageComponent implements OnDestroy, OnInit { public professionalDataProviderTooltipPremium = translate( 'PROFESSIONAL_DATA_PROVIDER_TOOLTIP_PREMIUM' ); + public referralBrokers = [ + 'DEGIRO', + 'finpension', + 'frankly', + 'Interactive Brokers', + 'Mintos', + 'Swissquote', + 'VIAC', + 'Zak' + ]; public routerLinkFeatures = publicRoutes.features.routerLink; public routerLinkRegister = publicRoutes.register.routerLink; public user: User; diff --git a/apps/client/src/app/pages/pricing/pricing-page.html b/apps/client/src/app/pages/pricing/pricing-page.html index ea68b74eb..ee006b2d6 100644 --- a/apps/client/src/app/pages/pricing/pricing-page.html +++ b/apps/client/src/app/pages/pricing/pricing-page.html @@ -326,16 +326,43 @@

- If you plan to open an account at DEGIRO, finpension, - frankly, Interactive Brokers, Swissquote, - VIAC, or Zak, please - If you plan to open an account at +   + @for ( + broker of referralBrokers; + track broker; + let i = $index; + let last = $last + ) { + {{ broker }} + @if (last) { + , + } @else { + @if (i === referralBrokers.length - 2) { +   + or +   + } @else { + , + } + } + } + please +   + contact us - to use our referral link and get a Ghostfolio Premium membership for - one year. Looking for a student discount? Request it - here - with your university e-mail address. +   + to use our referral link and get a Ghostfolio Premium membership + for one year. Looking for a student discount? +   + Request it +   + here +   + with your university e-mail address.

From ba1ee013d7868f549427df92bc379ab072bf372a Mon Sep 17 00:00:00 2001 From: Thomas Kaul <4159106+dtslvr@users.noreply.github.com> Date: Thu, 16 Oct 2025 20:51:39 +0200 Subject: [PATCH 03/16] Bugfix/fix word wrap in menus of activities table (#5764) * Fix word wrap * Update changelog --- CHANGELOG.md | 1 + .../activities-table/activities-table.component.html | 12 ++++++++++-- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 0fb55409a..a024cc722 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -25,6 +25,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Respected the include indices flag in the search functionality of the _Financial Modeling Prep_ service - Fixed an issue where the scroll position was not restored when changing pages +- Fixed the word wrap in the menus of the activities table component - Fixed the dark mode in the _As seen in_ section on the landing page ## 2.208.0 - 2025-10-11 diff --git a/libs/ui/src/lib/activities-table/activities-table.component.html b/libs/ui/src/lib/activities-table/activities-table.component.html index 472c24e2b..8079a6258 100644 --- a/libs/ui/src/lib/activities-table/activities-table.component.html +++ b/libs/ui/src/lib/activities-table/activities-table.component.html @@ -361,7 +361,11 @@ } - + @if (hasPermissionToCreateActivity) { } - + + + @for (dateRange of dateRangeOptions; track dateRange.value) { + + } +