Browse Source

Merge branch 'main' into feature/optimize-get-range-query-in-market-data-service

feature/optimize-get-range-query-in-market-data-service
Thomas Kaul 1 day ago
committed by GitHub
parent
commit
3ca3718f90
No known key found for this signature in database GPG Key ID: B5690EEEBB952194
  1. 13
      CHANGELOG.md
  2. 16
      apps/api/src/services/data-provider/financial-modeling-prep/financial-modeling-prep.service.ts
  3. 4
      apps/client/src/locales/messages.ca.xlf
  4. 4
      apps/client/src/locales/messages.de.xlf
  5. 4
      apps/client/src/locales/messages.es.xlf
  6. 4
      apps/client/src/locales/messages.fr.xlf
  7. 4
      apps/client/src/locales/messages.it.xlf
  8. 4
      apps/client/src/locales/messages.nl.xlf
  9. 4
      apps/client/src/locales/messages.pl.xlf
  10. 4
      apps/client/src/locales/messages.pt.xlf
  11. 4
      apps/client/src/locales/messages.tr.xlf
  12. 4
      apps/client/src/locales/messages.uk.xlf
  13. 4
      apps/client/src/locales/messages.xlf
  14. 4
      apps/client/src/locales/messages.zh.xlf
  15. 2
      libs/ui/src/lib/premium-indicator/premium-indicator.component.html
  16. 2
      libs/ui/src/lib/premium-indicator/premium-indicator.component.ts
  17. 4
      package-lock.json
  18. 2
      package.json

13
CHANGELOG.md

@ -7,17 +7,28 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
## Unreleased
### Changed
- Optimized the query of the data range functionality (`getRange()`) in the market data service
## 2.151.0 - 2025-04-11
### Added
- Added the data gathering status column to the historical market data table of the admin control
### Changed
- Optimized the query of the data range functionality (`getRange()`) in the market data service
- Set the maximum number of symbols per request in the _Financial Modeling Prep_ service
- Migrated the get quotes functionality of the _Financial Modeling Prep_ service to its stable API version
- Improved the language localization for Enlish (`en`)
- Upgraded `eslint` dependencies
- Upgraded `Nx` from version `20.6.4` to `20.7.1`
### Fixed
- Fixed the link to the pricing page in the premium indicator component
## 2.150.0 - 2025-04-05
### Added

16
apps/api/src/services/data-provider/financial-modeling-prep/financial-modeling-prep.service.ts

@ -325,6 +325,10 @@ export class FinancialModelingPrepService implements DataProviderInterface {
}
}
public getMaxNumberOfSymbolsPerRequest() {
return 20;
}
public getName(): DataSource {
return DataSource.FINANCIAL_MODELING_PREP;
}
@ -341,7 +345,7 @@ export class FinancialModelingPrepService implements DataProviderInterface {
try {
const quotes = await fetch(
`${this.URL}/quote/${symbols.join(',')}?apikey=${this.apiKey}`,
`${this.getUrl({ version: 'stable' })}/batch-quote-short?symbols=${symbols.join(',')}&apikey=${this.apiKey}`,
{
signal: AbortSignal.timeout(requestTimeout)
}
@ -451,8 +455,14 @@ export class FinancialModelingPrepService implements DataProviderInterface {
return name;
}
private getUrl({ version }: { version: number }) {
return `https://financialmodelingprep.com/api/v${version}`;
private getUrl({ version }: { version: number | 'stable' }) {
const baseUrl = 'https://financialmodelingprep.com';
if (version === 'stable') {
return `${baseUrl}/stable`;
}
return `${baseUrl}/api/v${version}`;
}
private parseAssetClass(profile: any): {

4
apps/client/src/locales/messages.ca.xlf

@ -719,6 +719,10 @@
<context context-type="sourcefile">libs/ui/src/lib/membership-card/membership-card.component.ts</context>
<context context-type="linenumber">30</context>
</context-group>
<context-group purpose="location">
<context context-type="sourcefile">libs/ui/src/lib/premium-indicator/premium-indicator.component.ts</context>
<context context-type="linenumber">21</context>
</context-group>
</trans-unit>
<trans-unit id="5915338689523424386" datatype="html">
<source>register</source>

4
apps/client/src/locales/messages.de.xlf

@ -5535,6 +5535,10 @@
<context context-type="sourcefile">libs/ui/src/lib/membership-card/membership-card.component.ts</context>
<context context-type="linenumber">30</context>
</context-group>
<context-group purpose="location">
<context context-type="sourcefile">libs/ui/src/lib/premium-indicator/premium-indicator.component.ts</context>
<context context-type="linenumber">21</context>
</context-group>
</trans-unit>
<trans-unit id="5915338689523424386" datatype="html">
<source>register</source>

4
apps/client/src/locales/messages.es.xlf

@ -5512,6 +5512,10 @@
<context context-type="sourcefile">libs/ui/src/lib/membership-card/membership-card.component.ts</context>
<context context-type="linenumber">30</context>
</context-group>
<context-group purpose="location">
<context context-type="sourcefile">libs/ui/src/lib/premium-indicator/premium-indicator.component.ts</context>
<context context-type="linenumber">21</context>
</context-group>
</trans-unit>
<trans-unit id="5915338689523424386" datatype="html">
<source>register</source>

4
apps/client/src/locales/messages.fr.xlf

@ -5511,6 +5511,10 @@
<context context-type="sourcefile">libs/ui/src/lib/membership-card/membership-card.component.ts</context>
<context context-type="linenumber">30</context>
</context-group>
<context-group purpose="location">
<context context-type="sourcefile">libs/ui/src/lib/premium-indicator/premium-indicator.component.ts</context>
<context context-type="linenumber">21</context>
</context-group>
</trans-unit>
<trans-unit id="5915338689523424386" datatype="html">
<source>register</source>

4
apps/client/src/locales/messages.it.xlf

@ -5512,6 +5512,10 @@
<context context-type="sourcefile">libs/ui/src/lib/membership-card/membership-card.component.ts</context>
<context context-type="linenumber">30</context>
</context-group>
<context-group purpose="location">
<context context-type="sourcefile">libs/ui/src/lib/premium-indicator/premium-indicator.component.ts</context>
<context context-type="linenumber">21</context>
</context-group>
</trans-unit>
<trans-unit id="5915338689523424386" datatype="html">
<source>register</source>

4
apps/client/src/locales/messages.nl.xlf

@ -5511,6 +5511,10 @@
<context context-type="sourcefile">libs/ui/src/lib/membership-card/membership-card.component.ts</context>
<context context-type="linenumber">30</context>
</context-group>
<context-group purpose="location">
<context context-type="sourcefile">libs/ui/src/lib/premium-indicator/premium-indicator.component.ts</context>
<context context-type="linenumber">21</context>
</context-group>
</trans-unit>
<trans-unit id="5915338689523424386" datatype="html">
<source>register</source>

4
apps/client/src/locales/messages.pl.xlf

@ -338,6 +338,10 @@
<context context-type="sourcefile">libs/ui/src/lib/membership-card/membership-card.component.ts</context>
<context context-type="linenumber">30</context>
</context-group>
<context-group purpose="location">
<context context-type="sourcefile">libs/ui/src/lib/premium-indicator/premium-indicator.component.ts</context>
<context context-type="linenumber">21</context>
</context-group>
</trans-unit>
<trans-unit id="6948811958230386934" datatype="html">
<source>privacy-policy</source>

4
apps/client/src/locales/messages.pt.xlf

@ -5511,6 +5511,10 @@
<context context-type="sourcefile">libs/ui/src/lib/membership-card/membership-card.component.ts</context>
<context context-type="linenumber">30</context>
</context-group>
<context-group purpose="location">
<context context-type="sourcefile">libs/ui/src/lib/premium-indicator/premium-indicator.component.ts</context>
<context context-type="linenumber">21</context>
</context-group>
</trans-unit>
<trans-unit id="5915338689523424386" datatype="html">
<source>register</source>

4
apps/client/src/locales/messages.tr.xlf

@ -338,6 +338,10 @@
<context context-type="sourcefile">libs/ui/src/lib/membership-card/membership-card.component.ts</context>
<context context-type="linenumber">30</context>
</context-group>
<context-group purpose="location">
<context context-type="sourcefile">libs/ui/src/lib/premium-indicator/premium-indicator.component.ts</context>
<context context-type="linenumber">21</context>
</context-group>
</trans-unit>
<trans-unit id="6948811958230386934" datatype="html">
<source>privacy-policy</source>

4
apps/client/src/locales/messages.uk.xlf

@ -719,6 +719,10 @@
<context context-type="sourcefile">libs/ui/src/lib/membership-card/membership-card.component.ts</context>
<context context-type="linenumber">30</context>
</context-group>
<context-group purpose="location">
<context context-type="sourcefile">libs/ui/src/lib/premium-indicator/premium-indicator.component.ts</context>
<context context-type="linenumber">21</context>
</context-group>
</trans-unit>
<trans-unit id="5915338689523424386" datatype="html">
<source>register</source>

4
apps/client/src/locales/messages.xlf

@ -333,6 +333,10 @@
<context context-type="sourcefile">libs/ui/src/lib/membership-card/membership-card.component.ts</context>
<context context-type="linenumber">30</context>
</context-group>
<context-group purpose="location">
<context context-type="sourcefile">libs/ui/src/lib/premium-indicator/premium-indicator.component.ts</context>
<context context-type="linenumber">21</context>
</context-group>
</trans-unit>
<trans-unit id="6948811958230386934" datatype="html">
<source>privacy-policy</source>

4
apps/client/src/locales/messages.zh.xlf

@ -339,6 +339,10 @@
<context context-type="sourcefile">libs/ui/src/lib/membership-card/membership-card.component.ts</context>
<context context-type="linenumber">30</context>
</context-group>
<context-group purpose="location">
<context context-type="sourcefile">libs/ui/src/lib/premium-indicator/premium-indicator.component.ts</context>
<context context-type="linenumber">21</context>
</context-group>
</trans-unit>
<trans-unit id="6948811958230386934" datatype="html">
<source>privacy-policy</source>

2
libs/ui/src/lib/premium-indicator/premium-indicator.component.html

@ -2,6 +2,6 @@
class="align-items-center d-flex"
title="Upgrade to Ghostfolio Premium"
[ngStyle]="{ 'pointer-events': enableLink ? 'initial' : 'none' }"
[routerLink]="['/pricing']"
[routerLink]="routerLinkPricing"
><ion-icon class="text-muted" name="diamond-outline"
/></a>

2
libs/ui/src/lib/premium-indicator/premium-indicator.component.ts

@ -17,4 +17,6 @@ import { RouterModule } from '@angular/router';
})
export class GfPremiumIndicatorComponent {
@Input() enableLink = true;
public routerLinkPricing = ['/' + $localize`:snake-case:pricing`];
}

4
package-lock.json

@ -1,12 +1,12 @@
{
"name": "ghostfolio",
"version": "2.150.0",
"version": "2.151.0",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "ghostfolio",
"version": "2.150.0",
"version": "2.151.0",
"hasInstallScript": true,
"license": "AGPL-3.0",
"dependencies": {

2
package.json

@ -1,6 +1,6 @@
{
"name": "ghostfolio",
"version": "2.150.0",
"version": "2.151.0",
"homepage": "https://ghostfol.io",
"license": "AGPL-3.0",
"repository": "https://github.com/ghostfolio/ghostfolio",

Loading…
Cancel
Save