From 35450ac004682f4eeb5891e4dacbb1a57f5b56c2 Mon Sep 17 00:00:00 2001 From: Thomas Kaul <4159106+dtslvr@users.noreply.github.com> Date: Tue, 6 Feb 2024 16:58:54 +0100 Subject: [PATCH 001/135] Bugfix/add missing data provider info to search results of coingecko (#2967) * Add missing data provider info * Update changelog --- CHANGELOG.md | 6 ++++++ .../services/data-provider/coingecko/coingecko.service.ts | 1 + 2 files changed, 7 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 22fecdb40..e31741534 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,12 @@ 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 + +### Fixed + +- Added the missing data provider information to the _CoinGecko_ service + ## 2.48.0 - 2024-02-05 ### Added diff --git a/apps/api/src/services/data-provider/coingecko/coingecko.service.ts b/apps/api/src/services/data-provider/coingecko/coingecko.service.ts index c9fd47a1d..9a0f4aa44 100644 --- a/apps/api/src/services/data-provider/coingecko/coingecko.service.ts +++ b/apps/api/src/services/data-provider/coingecko/coingecko.service.ts @@ -243,6 +243,7 @@ export class CoinGeckoService implements DataProviderInterface { assetClass: AssetClass.CASH, assetSubClass: AssetSubClass.CRYPTOCURRENCY, currency: DEFAULT_CURRENCY, + dataProviderInfo: this.getDataProviderInfo(), dataSource: this.getName() }; }); From cc1d9811e0efed6c1e1e5891834c0f59cd3d996b Mon Sep 17 00:00:00 2001 From: Thomas Kaul <4159106+dtslvr@users.noreply.github.com> Date: Tue, 6 Feb 2024 17:00:40 +0100 Subject: [PATCH 002/135] Release 2.48.1 (#2968) --- CHANGELOG.md | 2 +- package.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index e31741534..60867ef1b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -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.48.1 - 2024-02-06 ### Fixed diff --git a/package.json b/package.json index 4a455a54a..12fda56e5 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "ghostfolio", - "version": "2.48.0", + "version": "2.48.1", "homepage": "https://ghostfol.io", "license": "AGPL-3.0", "repository": "https://github.com/ghostfolio/ghostfolio", From e7d4641d13472d49c101c8e19c7449b899838c59 Mon Sep 17 00:00:00 2001 From: Martin Mui Date: Wed, 7 Feb 2024 15:03:28 -0500 Subject: [PATCH 003/135] Feature/reload data on logo click (#2959) * Reload data on logo click * Update changelog --- CHANGELOG.md | 6 ++++++ .../components/header/header.component.html | 1 + .../app/components/header/header.component.ts | 8 ++++++++ .../home-overview/home-overview.component.ts | 8 ++++++++ apps/client/src/app/core/layout.service.ts | 19 +++++++++++++++++++ git-hooks/pre-commit | 0 6 files changed, 42 insertions(+) create mode 100644 apps/client/src/app/core/layout.service.ts mode change 100755 => 100644 git-hooks/pre-commit diff --git a/CHANGELOG.md b/CHANGELOG.md index 60867ef1b..26d39805e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,12 @@ 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 + +### Changed + +- Improved the usability by reloading the content with a logo click on the home page + ## 2.48.1 - 2024-02-06 ### Fixed diff --git a/apps/client/src/app/components/header/header.component.html b/apps/client/src/app/components/header/header.component.html index e192d7fee..c3cd958c1 100644 --- a/apps/client/src/app/components/header/header.component.html +++ b/apps/client/src/app/components/header/header.component.html @@ -6,6 +6,7 @@ mat-button [ngClass]="{ 'w-100': hasTabs }" [routerLink]="['/']" + (click)="onLogoClick()" > diff --git a/apps/client/src/app/components/header/header.component.ts b/apps/client/src/app/components/header/header.component.ts index 412082de8..6f467c238 100644 --- a/apps/client/src/app/components/header/header.component.ts +++ b/apps/client/src/app/components/header/header.component.ts @@ -13,6 +13,7 @@ import { MatMenuTrigger } from '@angular/material/menu'; import { Router } from '@angular/router'; import { UpdateUserSettingDto } from '@ghostfolio/api/app/user/update-user-setting.dto'; import { LoginWithAccessTokenDialog } from '@ghostfolio/client/components/login-with-access-token-dialog/login-with-access-token-dialog.component'; +import { LayoutService } from '@ghostfolio/client/core/layout.service'; import { DataService } from '@ghostfolio/client/services/data.service'; import { ImpersonationStorageService } from '@ghostfolio/client/services/impersonation-storage.service'; import { @@ -89,6 +90,7 @@ export class HeaderComponent implements OnChanges { private dataService: DataService, private dialog: MatDialog, private impersonationStorageService: ImpersonationStorageService, + private layoutService: LayoutService, private router: Router, private settingsStorageService: SettingsStorageService, private tokenStorageService: TokenStorageService, @@ -192,6 +194,12 @@ export class HeaderComponent implements OnChanges { }); } + public onLogoClick() { + if (this.currentRoute === 'home' || this.currentRoute === 'zen') { + this.layoutService.getShouldReloadSubject().next(); + } + } + public onMenuClosed() { this.isMenuOpen = false; } diff --git a/apps/client/src/app/components/home-overview/home-overview.component.ts b/apps/client/src/app/components/home-overview/home-overview.component.ts index 47809ee53..42993a71f 100644 --- a/apps/client/src/app/components/home-overview/home-overview.component.ts +++ b/apps/client/src/app/components/home-overview/home-overview.component.ts @@ -2,6 +2,7 @@ import { ChangeDetectorRef, Component, OnDestroy, OnInit } from '@angular/core'; import { ToggleComponent } from '@ghostfolio/client/components/toggle/toggle.component'; import { DataService } from '@ghostfolio/client/services/data.service'; import { ImpersonationStorageService } from '@ghostfolio/client/services/impersonation-storage.service'; +import { LayoutService } from '@ghostfolio/client/core/layout.service'; import { UserService } from '@ghostfolio/client/services/user/user.service'; import { LineChartItem, @@ -43,6 +44,7 @@ export class HomeOverviewComponent implements OnDestroy, OnInit { private dataService: DataService, private deviceService: DeviceDetectorService, private impersonationStorageService: ImpersonationStorageService, + private layoutService: LayoutService, private userService: UserService ) { this.userService.stateChanged @@ -73,6 +75,12 @@ export class HomeOverviewComponent implements OnDestroy, OnInit { this.changeDetectorRef.markForCheck(); }); + this.layoutService.shouldReloadContent$ + .pipe(takeUntil(this.unsubscribeSubject)) + .subscribe(() => { + this.update(); + }); + this.showDetails = !this.user.settings.isRestrictedView && this.user.settings.viewMode !== 'ZEN'; diff --git a/apps/client/src/app/core/layout.service.ts b/apps/client/src/app/core/layout.service.ts new file mode 100644 index 000000000..3ba7af91e --- /dev/null +++ b/apps/client/src/app/core/layout.service.ts @@ -0,0 +1,19 @@ +import { Injectable } from '@angular/core'; +import { Observable, Subject } from 'rxjs'; + +@Injectable({ + providedIn: 'root' +}) +export class LayoutService { + public shouldReloadContent$: Observable; + + private shouldReloadSubject = new Subject(); + + public constructor() { + this.shouldReloadContent$ = this.shouldReloadSubject.asObservable(); + } + + public getShouldReloadSubject() { + return this.shouldReloadSubject; + } +} diff --git a/git-hooks/pre-commit b/git-hooks/pre-commit old mode 100755 new mode 100644 From 609c03f174f15d8bb4df81358dd502f425bbb6cc Mon Sep 17 00:00:00 2001 From: Thomas Kaul <4159106+dtslvr@users.noreply.github.com> Date: Thu, 8 Feb 2024 08:00:04 +0100 Subject: [PATCH 004/135] Add analytics image (#2970) --- README.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/README.md b/README.md index dd580dfc9..0d4bf3cfb 100644 --- a/README.md +++ b/README.md @@ -280,6 +280,10 @@ Not sure what to work on? We have got some ideas. Please join the Ghostfolio [Sl If you like to support this project, get [**Ghostfolio Premium**](https://ghostfol.io/en/pricing) or [**Buy me a coffee**](https://www.buymeacoffee.com/ghostfolio). +## Analytics + +![Alt](https://repobeats.axiom.co/api/embed/281a80b2d0c4af1162866c24c803f1f18e5ed60e.svg 'Repobeats analytics image') + ## License © 2021 - 2024 [Ghostfolio](https://ghostfol.io) From 4078229fe6365b66d1ceee7a3255a9e9b38449a6 Mon Sep 17 00:00:00 2001 From: Thomas Kaul <4159106+dtslvr@users.noreply.github.com> Date: Fri, 9 Feb 2024 09:45:54 +0100 Subject: [PATCH 005/135] Feature/add button to apply filters in assistant (#2971) * Add apply filters button * Update changelog --- CHANGELOG.md | 4 + .../components/header/header.component.html | 4 +- .../components/header/header.component.scss | 4 - apps/client/src/locales/messages.de.xlf | 340 +++++++++++++----- apps/client/src/locales/messages.es.xlf | 340 +++++++++++++----- apps/client/src/locales/messages.fr.xlf | 340 +++++++++++++----- apps/client/src/locales/messages.it.xlf | 340 +++++++++++++----- apps/client/src/locales/messages.nl.xlf | 340 +++++++++++++----- apps/client/src/locales/messages.pl.xlf | 340 +++++++++++++----- apps/client/src/locales/messages.pt.xlf | 340 +++++++++++++----- apps/client/src/locales/messages.tr.xlf | 340 +++++++++++++----- apps/client/src/locales/messages.xlf | 336 ++++++++++++----- apps/client/src/styles.scss | 4 + .../src/lib/assistant/assistant.component.ts | 40 +-- libs/ui/src/lib/assistant/assistant.html | 16 +- 15 files changed, 2344 insertions(+), 784 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 26d39805e..99e73d30f 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 + +- Added a button to apply the active filters in the assistant (experimental) + ### Changed - Improved the usability by reloading the content with a logo click on the home page diff --git a/apps/client/src/app/components/header/header.component.html b/apps/client/src/app/components/header/header.component.html index c3cd958c1..b1bbaea67 100644 --- a/apps/client/src/app/components/header/header.component.html +++ b/apps/client/src/app/components/header/header.component.html @@ -11,7 +11,7 @@ - +