Arham Amin
2c5f4fdca2
test(portfolio): cover a missing exchange rate in the calculator
Builds the BALN.SW buy with both fee fields unset, which is the state the
calculator sees when no exchange rate is available for the activity's date.
Asserts the snapshot is still produced and the fees count as 0.
Fails with "[big.js] Invalid number" without the preceding fix.
1 month ago
Arham Amin
d83578e223
fix(portfolio): tolerate unconvertible fees in the calculator
`toCurrencyAtDate()` resolves to undefined when no exchange rate exists for an
activity's date, so `feeInAssetProfileCurrency` and `feeInBaseCurrency` can
reach the calculator unset. Passing those straight into `new Big()` threw
"[big.js] Invalid number" and failed the whole portfolio request, so the
Overview, Portfolio and Holdings pages rendered "Oops! Something went wrong".
Fees are only ever accumulated, so 0 is the identity here and the snapshot
stays computable while the exchange rate data is still being gathered.
Refs ghostfolio/ghostfolio#6482
1 month ago
Thomas Kaul
faf01ae820
Feature/support migrating asset profile to MANUAL data source ( #7376 )
* Support migrating asset profile to MANUAL data source
* Update changelog
1 month ago
Thomas Kaul
7cd6ebe000
Task/eliminate unneeded symbol pipe ( #7375 )
Eliminate symbol pipe
1 month ago
Thomas Kaul
20afbdc202
Task/restrict get symbol data endpoint to authenticated users ( #7372 )
* Restrict symbol data endpoint to authenticated users
* Update changelog
1 month ago
Thomas Kaul
82faa08412
Task/remove deprecated auth endpoint ( #7373 )
* Remove deprecated auth endpoint
* Update changelog
1 month ago
Kenrick Tandrian
11db199b94
Task/enforce noImplicitOverride TypeScript rule ( #7355 )
* feat(ts): enable no implicit override
* fix(api): resolve type errors
* fix(client): resolve type errors
* fix(ui): resolve type errors
* fix(common): resolve type errors
1 month ago
Thomas Kaul
37bd17d3c1
Task/simplify getHistorical() function response in data provider interface ( #7369 )
* Simplify getHistorical() function response
* Update changelog
1 month ago
github-actions[bot]
3276cb82c0
Task/update locales ( #7366 )
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
1 month ago
Kenrick Tandrian
b888134056
Task/improve type safety in statistics gathering and tag services ( #7328 )
* feat(api): create interface for BetterStack update SLA response
* fix(api): resolve type errors
* fix(api): resolve type errors in tag service
1 month ago
Thomas Kaul
ae257f8acb
Feature/support Fear & Greed index via Ghostfolio data provider in self-hosted environments ( #7364 )
* Support Fear & Greed index via Ghostfolio data provider in self-hosted environments
* Update changelog
1 month ago
Thomas Kaul
74e8df4ac9
Task/upgrade stripe to version 22.3.2 ( #7363 )
* Update stripe to version 22.3.2
* Update changelog
1 month ago
Thomas Kaul
96b6830fe4
Task/improve language localization for DE (20260717) ( #7362 )
* Update translations
* Update changelog
1 month ago
github-actions[bot]
136e32095a
Task/update locales ( #7290 )
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
1 month ago
Kenrick Tandrian
0ad326b7c8
Task/enforce noImplicitThis and allowUnreachableCode TypeScript rules ( #7354 )
* feat(ts): disable allowing unreachable code
* feat(ts): enable no implicit this
1 month ago
Thomas Kaul
1ba6603fae
Task/improve language localization in historical market data table of admin control panel ( #7351 )
* Improve language localization
* Update changelog
1 month ago
Thomas Kaul
842e74fe88
Task/improve language localization in tag management of admin control panel ( #7349 )
* Improve language localization
* Update changelog
1 month ago
Thomas Kaul
ece4ed3ede
Task/migrate activity dialogs to dedicated routes ( #7343 )
* Migrate clone, create and edit activity dialogs to dedicated routes
* Update changelog
1 month ago
Thomas Kaul
22d68e7ac1
Bugfix/remove linked account from BUY / SELL / DIVIDEND activity ( #7346 )
* Fix removing a linked account from a buy, sell or dividend activity
* Update changelog
1 month ago
Thomas Kaul
05b9cd2cc4
Bugfix/preserve tags when updating activity ( #7347 )
* Validate tags when creating or updating an activity
* Fix loss of activity tags when updating an activity fails
* Update changelog
1 month ago
Thomas Kaul
def15e544a
Bugfix/liabilities without market data ( #7345 )
* Fix liabilities without market data
* Update changelog
1 month ago
Thomas Kaul
9e4269fa37
Bugfix/preserve asset profile when cloning activity ( #7339 )
* Preserve asset profile when cloning activity
* Update changelog
1 month ago
Thomas Kaul
05192164db
Task/validate and encode URL in logo endpoint ( #7330 )
* Harden URL validation in logo endpoint
* Update changelog
1 month ago
Thomas Kaul
d35e76737b
Task/improve error handling in HTML template middleware ( #7331 )
* Improve error handling
* Update changelog
1 month ago
Thomas Kaul
465798f6c2
Task/improve line breaks in email templates ( #7332 )
Improve line breaks
1 month ago
Thomas Kaul
9ecb5909c7
Bugfix/startup error in data gathering caused by uninitialized data provider mappings ( #7333 )
* Initialize data provider mappings
* Update changelog
1 month ago
Thomas Kaul
7a2e25d583
Bugfix/improve error handling in get quotes of FMP service ( #7334 )
* Improve error handling
* Update changelog
1 month ago
Thomas Kaul
6666f110f2
Task/set change detection strategy to OnPush in various page components (part II) ( #7329 )
* Set change detection strategy to OnPush
* Update changelog
1 month ago
Thomas Kaul
df5fa6a4b9
Task/refactor canDeleteUser() helper ( #7324 )
Refactor canDeleteUser()
1 month ago
Thomas Kaul
d857bc882c
Task/add skeleton loader to coupons table of admin control panel ( #7327 )
Add skeleton loader
1 month ago
Kenrick Tandrian
45ef139cf8
Task/enable @typescript-eslint/prefer-nullish-coalescing rule in libs/ui and apps/client ( #7317 )
* feat(ui): implement prefer-nullish-coalescing eslint check
* feat(client): implement prefer-nullish-coalescing eslint check
* fix(client): remove whitespace
1 month ago
Kenrick Tandrian
b4a12341c5
Task/improve type safety in treemap chart component ( #7325 )
* fix(ui): resolve type errors
* feat(ui): enforce encapsulation
* feat(ui): implement viewChild signal
* feat(ui): implement output signal
* feat(ui): implement input signal
1 month ago
Thomas Kaul
69254032a3
Feature/add markets endpoint for Fear & Greed index to Ghostfolio data provider ( #7323 )
* Add markets endpoint
* Update changelog
1 month ago
Thomas Kaul
d5fb6311c1
Task/deprecate SymbolProfile in favor of assetProfile in activity interface ( #7315 )
* Deprecate SymbolProfile in favor of assetProfile
* Update changelog
1 month ago
Thomas Kaul
6c948d39eb
Task/round Fear & Greed index in Twitter bot service ( #7318 )
* Round value
* Update changelog
1 month ago
David Requeno
de975a5991
Task/set change detection strategy to OnPush in X-ray page ( #7313 )
* Set change detection strategy to OnPush
* Update changelog
1 month ago
Kenrick Tandrian
fd61a1e62b
Task/enable strict null checks in apps/client ( #7309 )
* fix(client): resolve type errors
* feat(ui): resolve type error in assistant component
* feat(client): enable strict null checks
* feat(client): enforce encapsulation
* feat(client): enforce immutability
* feat(client): replace constructor based DI with inject functions
* fix(client): prevent race condition in nested subscription
1 month ago
Thomas Kaul
3fdf9d7e34
Task/rename SymbolProfile to assetProfile in portfolio order interface ( #7310 )
Rename SymbolProfile to assetProfile
1 month ago
Red Rose
eaa5965f1b
Bugfix/truncate long labels in page tabs ( #7178 )
* Truncate long labels
* Update changelog
1 month ago
Kenrick Tandrian
00d908c7e2
Task/improve type safety in create or update activity dialog component ( #7294 )
* fix(client): resolve type errors
* feat(client): enforce encapsulation
* feat(client): replace constructor based DI with inject functions
* feat(client): enforce immutability
* fix(client): resolve type error in import activities dialog
1 month ago
Cole Munz
59baec0acc
Task/improve language localization for NL ( #7296 )
* Update translations
* Update changelog
1 month ago
Thomas Kaul
55e3bd00d2
Task/change default data source of fear and greed index stocks to MANUAL ( #7307 )
* Change default value to MANUAL
* Update changelog
1 month ago
Kenrick Tandrian
6c74aeb436
Task/improve type safety in multiple client components ( #7302 )
Improve type safety
1 month ago
Thomas Kaul
d0d458347d
Task/simplify webauthn page ( #7305 )
Simplify webauthn page
1 month ago
Cole Munz
c679e791dc
Bugfix/corrupted state attributes in CA and TR locales ( #7297 )
Fix states
1 month ago
Thomas Kaul
618e22e3fa
Task/round value in fear and greed index component ( #7303 )
* Round value
* Update changelog
1 month ago
moduvoice
0afd17773b
Task/improve language localization for KO ( #7279 )
* Update translations
* Update changelog
1 month ago
Thomas Kaul
d207d7a753
Feature/add rate limiting to authentication and sign up endpoints ( #7263 )
* Add rate limiting to authentication and sign up endpoints
* Update changelog
1 month ago
Kenrick Tandrian
9cea437b2c
Task/improve type safety in user account registration dialog component ( #7301 )
* fix(client): resolve type errors
* feat(client): enforce encapsulation
* feat(client): replace constructor based DI with inject functions
* feat(client): implement viewChild signal
1 month ago
Kenrick Tandrian
cb692f8d06
Task/improve type safety in user detail dialog component ( #7292 )
Improve type safety
1 month ago