Merge branch 'main' of github.com:ghostfolio/ghostfolio
All checks were successful
Docker image CD / build_and_push (push) Successful in 29m50s
All checks were successful
Docker image CD / build_and_push (push) Successful in 29m50s
This commit is contained in:
commit
95325aad14
@ -5,7 +5,7 @@ All notable changes to this project will be documented in this file.
|
||||
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
||||
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
||||
|
||||
## Unreleased
|
||||
## 2.151.0 - 2025-04-11
|
||||
|
||||
### Added
|
||||
|
||||
@ -13,10 +13,16 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
||||
|
||||
### Changed
|
||||
|
||||
- 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
|
||||
|
@ -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): {
|
||||
|
@ -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>
|
||||
|
@ -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>
|
||||
|
@ -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>
|
||||
|
@ -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>
|
||||
|
@ -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>
|
||||
|
@ -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>
|
||||
|
@ -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>
|
||||
|
@ -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>
|
||||
|
@ -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>
|
||||
|
@ -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>
|
||||
|
@ -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>
|
||||
|
@ -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,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>
|
||||
|
@ -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
generated
4
package-lock.json
generated
@ -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": {
|
||||
|
@ -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…
x
Reference in New Issue
Block a user