From 9e74eec04d53675af43a6a62344562d94ff5cd89 Mon Sep 17 00:00:00 2001 From: Thomas Kaul <4159106+dtslvr@users.noreply.github.com> Date: Thu, 29 May 2025 17:44:50 +0200 Subject: [PATCH 1/4] Feature/rename orders to activities in Tag database schema (#4783) * Rename orders to activities in Tag database schema * Update changelog --- CHANGELOG.md | 1 + apps/api/src/services/tag/tag.service.ts | 8 ++++---- prisma/schema.prisma | 10 +++++----- 3 files changed, 10 insertions(+), 9 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4406ba060..f9b081a08 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 `orders` to `activities` in the `Tag` database schema - Improved the language localization for Dutch (`nl`) ## 2.164.0 - 2025-05-28 diff --git a/apps/api/src/services/tag/tag.service.ts b/apps/api/src/services/tag/tag.service.ts index 3d6bd3907..eb2d7bfef 100644 --- a/apps/api/src/services/tag/tag.service.ts +++ b/apps/api/src/services/tag/tag.service.ts @@ -52,7 +52,7 @@ export class TagService { include: { _count: { select: { - orders: { + activities: { where: { userId } @@ -79,7 +79,7 @@ export class TagService { id, name, userId, - isUsed: _count.orders > 0 + isUsed: _count.activities > 0 })); } @@ -87,7 +87,7 @@ export class TagService { const tagsWithOrderCount = await this.prismaService.tag.findMany({ include: { _count: { - select: { orders: true } + select: { activities: true } } } }); @@ -97,7 +97,7 @@ export class TagService { id, name, userId, - activityCount: _count.orders + activityCount: _count.activities }; }); } diff --git a/prisma/schema.prisma b/prisma/schema.prisma index 6182ebfe4..dd3be8cef 100644 --- a/prisma/schema.prisma +++ b/prisma/schema.prisma @@ -233,11 +233,11 @@ model Subscription { } model Tag { - id String @id @default(uuid()) - name String - orders Order[] - userId String? - User User? @relation(fields: [userId], onDelete: Cascade, references: [id]) + activities Order[] + id String @id @default(uuid()) + name String + userId String? + User User? @relation(fields: [userId], onDelete: Cascade, references: [id]) @@unique([name, userId]) @@index([name]) From 5db5fd903e49c078251c9d6ed1aa9841b542a1af Mon Sep 17 00:00:00 2001 From: Thomas Kaul <4159106+dtslvr@users.noreply.github.com> Date: Thu, 29 May 2025 17:45:32 +0200 Subject: [PATCH 2/4] Feature/extend FAQ section by performance calculation method (#4773) * Extend FAQ by performance calculation method * Update changelog --- CHANGELOG.md | 4 ++++ .../app/pages/faq/overview/faq-overview-page.html | 15 +++++++++++++++ 2 files changed, 19 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index f9b081a08..6c3b428c5 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 + +- Extended the content of the _General_ section by the performance calculation method on the Frequently Asked Questions (FAQ) page + ### Changed - Renamed `orders` to `activities` in the `Tag` database schema diff --git a/apps/client/src/app/pages/faq/overview/faq-overview-page.html b/apps/client/src/app/pages/faq/overview/faq-overview-page.html index f8fd62eb0..bc7f6ba37 100644 --- a/apps/client/src/app/pages/faq/overview/faq-overview-page.html +++ b/apps/client/src/app/pages/faq/overview/faq-overview-page.html @@ -40,6 +40,21 @@ here. + + + Which calculation method does Ghostfolio use for + performance? + + Ghostfolio uses the Return on Average Investment (ROAI) + calculation method based on the average amount of capital invested + over time. ROAI aims to provide a more insightful view of investment + performance than simpler approaches, especially when contributions are + made over time. + Can I use Ghostfolio anonymously? From 5fa97a9a4005761a1e44e0a7404de37ee18b324e Mon Sep 17 00:00:00 2001 From: Thomas Kaul <4159106+dtslvr@users.noreply.github.com> Date: Thu, 29 May 2025 17:45:59 +0200 Subject: [PATCH 3/4] Feature/upgrade big.js to version 7.0.1 (#4784) * Upgrade big.js to version 7.0.1 * 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 6c3b428c5..9babd5a6a 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 `orders` to `activities` in the `Tag` database schema - Improved the language localization for Dutch (`nl`) +- Upgraded `big.js` from version `6.2.2` to `7.0.1` ## 2.164.0 - 2025-05-28 diff --git a/package-lock.json b/package-lock.json index 6dedf1606..38be1e11f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -47,7 +47,7 @@ "@simplewebauthn/server": "13.1.1", "@stripe/stripe-js": "5.4.0", "alphavantage": "2.2.0", - "big.js": "6.2.2", + "big.js": "7.0.1", "bootstrap": "4.6.2", "bull": "4.16.5", "chart.js": "4.4.9", @@ -15220,9 +15220,9 @@ } }, "node_modules/big.js": { - "version": "6.2.2", - "resolved": "https://registry.npmjs.org/big.js/-/big.js-6.2.2.tgz", - "integrity": "sha512-y/ie+Faknx7sZA5MfGA2xKlu0GDv8RWrXGsmlteyJQ2lvoKv9GBK/fpRMc2qlSoBAgNxrixICFCBefIq8WCQpQ==", + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/big.js/-/big.js-7.0.1.tgz", + "integrity": "sha512-iFgV784tD8kq4ccF1xtNMZnXeZzVuXWWM+ERFzKQjv+A5G9HC8CY3DuV45vgzFFcW+u2tIvmF95+AzWgs6BjCg==", "license": "MIT", "engines": { "node": "*" diff --git a/package.json b/package.json index 7b07b4c00..03fd45f35 100644 --- a/package.json +++ b/package.json @@ -93,7 +93,7 @@ "@simplewebauthn/server": "13.1.1", "@stripe/stripe-js": "5.4.0", "alphavantage": "2.2.0", - "big.js": "6.2.2", + "big.js": "7.0.1", "bootstrap": "4.6.2", "bull": "4.16.5", "chart.js": "4.4.9", From 62e304490d2e60ed9c1f57be580e8320be50e411 Mon Sep 17 00:00:00 2001 From: Jakub Nowak Date: Thu, 29 May 2025 12:27:09 -0500 Subject: [PATCH 4/4] Feature/improve language localization for ES 20250529 (#4785) * Improve language localization for ES * Update changelog --- CHANGELOG.md | 1 + apps/client/src/locales/messages.es.xlf | 40 ++++++++++++------------- 2 files changed, 21 insertions(+), 20 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 9babd5a6a..d54cb3f89 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 `orders` to `activities` in the `Tag` database schema - Improved the language localization for Dutch (`nl`) +- Improved the language localization for Spanish (`es`) - Upgraded `big.js` from version `6.2.2` to `7.0.1` ## 2.164.0 - 2025-05-28 diff --git a/apps/client/src/locales/messages.es.xlf b/apps/client/src/locales/messages.es.xlf index 01b51e793..95c2af93f 100644 --- a/apps/client/src/locales/messages.es.xlf +++ b/apps/client/src/locales/messages.es.xlf @@ -5008,7 +5008,7 @@ into minimalism - into minimalism + en el minimalismo apps/client/src/app/pages/landing/landing-page.html 299 @@ -5016,7 +5016,7 @@ caring about diversifying your financial resources - caring about diversifying your financial resources + preocuparse por diversificar tus recursos financieros apps/client/src/app/pages/landing/landing-page.html 303 @@ -5024,7 +5024,7 @@ interested in financial independence - interested in financial independence + interesado en la independencia financiera apps/client/src/app/pages/landing/landing-page.html 307 @@ -5032,7 +5032,7 @@ saying no to spreadsheets in - saying no to spreadsheets in + diciendo no a las hojas de cálculo en apps/client/src/app/pages/landing/landing-page.html 311 @@ -5040,7 +5040,7 @@ still reading this list - still reading this list + todavía leyendo esta lista apps/client/src/app/pages/landing/landing-page.html 314 @@ -5048,7 +5048,7 @@ Learn more about Ghostfolio - Learn more about Ghostfolio + Más información sobre Ghostfolio apps/client/src/app/pages/landing/landing-page.html 319 @@ -5056,7 +5056,7 @@ What our users are saying - What our users are saying + Lo que nuestros usuarios están diciendo apps/client/src/app/pages/landing/landing-page.html 327 @@ -5064,7 +5064,7 @@ Members from around the globe are using Ghostfolio Premium - Members from around the globe are using Ghostfolio Premium + Miembros de todo el mundo están usando Ghostfolio Premium apps/client/src/app/pages/landing/landing-page.html 366 @@ -5072,7 +5072,7 @@ How does Ghostfolio work? - How does Ghostfolio work? + ¿Cómo Ghostfolio work? apps/client/src/app/pages/landing/landing-page.html 383 @@ -5080,7 +5080,7 @@ Sign up anonymously* - Sign up anonymously* + Regístrate de forma anónima* apps/client/src/app/pages/landing/landing-page.html 392 @@ -5088,7 +5088,7 @@ * no e-mail address nor credit card required - * no e-mail address nor credit card required + * no se requiere dirección de correo electrónico ni tarjeta de crédito apps/client/src/app/pages/landing/landing-page.html 394 @@ -5096,7 +5096,7 @@ Add any of your historical transactions - Add any of your historical transactions + Agrega cualquiera de tus transacciones históricas apps/client/src/app/pages/landing/landing-page.html 405 @@ -5104,7 +5104,7 @@ Get valuable insights of your portfolio composition - Get valuable insights of your portfolio composition + Obtén información valiosa sobre la composición de tu portafolio apps/client/src/app/pages/landing/landing-page.html 417 @@ -5112,7 +5112,7 @@ Are you ready? - Are you ready? + ¿Estás listo? apps/client/src/app/pages/landing/landing-page.html 431 @@ -5120,7 +5120,7 @@ Live Demo - Live Demo + Demostración en vivo apps/client/src/app/pages/landing/landing-page.html 49 @@ -5132,7 +5132,7 @@ Get the full picture of your personal finances across multiple platforms. - Get the full picture of your personal finances across multiple platforms. + Obtén una visión completa de tus finanzas personales en múltiples plataformas. apps/client/src/app/pages/landing/landing-page.html 242 @@ -5140,7 +5140,7 @@ Get started in only 3 steps - Get started in only 3 steps + Comienza en solo 3 pasos apps/client/src/app/pages/landing/landing-page.html 386 @@ -5229,7 +5229,7 @@ This overview page features a curated collection of personal finance tools compared to the open source alternative Ghostfolio. If you value transparency, data privacy, and community collaboration, Ghostfolio provides an excellent opportunity to take control of your financial management. - This overview page features a curated collection of personal finance tools compared to the open source alternative Ghostfolio. If you value transparency, data privacy, and community collaboration, Ghostfolio provides an excellent opportunity to take control of your financial management. + Esta página de resumen presenta una colección seleccionada de herramientas de finanzas personales, comparadas con la alternativa de código abierto Ghostfolio. Si valoras la transparencia, la privacidad de los datos y la colaboración comunitaria, Ghostfolio ofrece una excelente oportunidad para tomar el control de tu gestión financiera. apps/client/src/app/pages/resources/personal-finance-tools/personal-finance-tools-page.html 8 @@ -5237,7 +5237,7 @@ Explore the links below to compare a variety of personal finance tools with Ghostfolio. - Explore the links below to compare a variety of personal finance tools with Ghostfolio. + Explora los siguientes enlaces para comparar una variedad de herramientas de finanzas personales con Ghostfolio. apps/client/src/app/pages/resources/personal-finance-tools/personal-finance-tools-page.html 16 @@ -5245,7 +5245,7 @@ Open Source Alternative to - Alternativa de software libre a + Alternativa de software libre a apps/client/src/app/pages/resources/personal-finance-tools/personal-finance-tools-page.html 42