From 1ffac115b411b26fa209aa7e85aa00250f64c1de Mon Sep 17 00:00:00 2001 From: Thomas Kaul <4159106+dtslvr@users.noreply.github.com> Date: Tue, 3 Dec 2024 21:19:25 +0100 Subject: [PATCH] Refactoring --- .../asset-profile-dialog.component.ts | 20 ++++++------ .../asset-profile-dialog.html | 2 +- ...al-market-data-editor-dialog.component.ts} | 15 ++++----- ...historical-market-data-editor-dialog.html} | 0 ...historical-market-data-editor-dialog.scss} | 0 .../interfaces/interfaces.ts | 2 +- ...historical-market-data-editor.component.ts | 31 ++++++++++--------- 7 files changed, 37 insertions(+), 33 deletions(-) rename libs/ui/src/lib/historical-market-data-editor/{market-data-detail-dialog/market-data-detail-dialog.component.ts => historical-market-data-editor-dialog/historical-market-data-editor-dialog.component.ts} (83%) rename libs/ui/src/lib/historical-market-data-editor/{market-data-detail-dialog/market-data-detail-dialog.html => historical-market-data-editor-dialog/historical-market-data-editor-dialog.html} (100%) rename libs/ui/src/lib/historical-market-data-editor/{market-data-detail-dialog/market-data-detail-dialog.scss => historical-market-data-editor-dialog/historical-market-data-editor-dialog.scss} (100%) rename libs/ui/src/lib/historical-market-data-editor/{market-data-detail-dialog => historical-market-data-editor-dialog}/interfaces/interfaces.ts (79%) diff --git a/apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.component.ts b/apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.component.ts index 165c63672..4fdc22986 100644 --- a/apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.component.ts +++ b/apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.component.ts @@ -77,7 +77,7 @@ export class AssetProfileDialog implements OnDestroy, OnInit { public ghostfolioScraperApiSymbolPrefix = ghostfolioScraperApiSymbolPrefix; public historicalDataItems: LineChartItem[]; public isBenchmark = false; - public marketDataDetails: MarketData[] = []; + public marketDataItems: MarketData[] = []; public sectors: { [name: string]: { name: string; value: number }; }; @@ -111,6 +111,8 @@ export class AssetProfileDialog implements OnDestroy, OnInit { } public initialize() { + this.historicalDataItems = undefined; + this.userService.stateChanged .pipe(takeUntil(this.unsubscribeSubject)) .subscribe((state) => { @@ -136,16 +138,14 @@ export class AssetProfileDialog implements OnDestroy, OnInit { return id === this.assetProfile.id; }); - this.historicalDataItems = this.marketDataDetails.map( - ({ date, marketPrice }) => { - return { - date: format(date, DATE_FORMAT), - value: marketPrice - }; - } - ); + this.historicalDataItems = marketData.map(({ date, marketPrice }) => { + return { + date: format(date, DATE_FORMAT), + value: marketPrice + }; + }); - this.marketDataDetails = marketData; + this.marketDataItems = marketData; this.sectors = {}; if (this.assetProfile?.countries?.length > 0) { diff --git a/apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html b/apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html index 44a2d64b7..eeb43e932 100644 --- a/apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html +++ b/apps/client/src/app/components/admin-market-data/asset-profile-dialog/asset-profile-dialog.html @@ -84,7 +84,7 @@ [dataSource]="data.dataSource" [dateOfFirstActivity]="assetProfile?.dateOfFirstActivity" [locale]="data.locale" - [marketData]="marketDataDetails" + [marketData]="marketDataItems" [symbol]="data.symbol" [user]="user" (marketDataChanged)="onMarketDataChanged($event)" diff --git a/libs/ui/src/lib/historical-market-data-editor/market-data-detail-dialog/market-data-detail-dialog.component.ts b/libs/ui/src/lib/historical-market-data-editor/historical-market-data-editor-dialog/historical-market-data-editor-dialog.component.ts similarity index 83% rename from libs/ui/src/lib/historical-market-data-editor/market-data-detail-dialog/market-data-detail-dialog.component.ts rename to libs/ui/src/lib/historical-market-data-editor/historical-market-data-editor-dialog/historical-market-data-editor-dialog.component.ts index 96e52d461..434266e1e 100644 --- a/libs/ui/src/lib/historical-market-data-editor/market-data-detail-dialog/market-data-detail-dialog.component.ts +++ b/libs/ui/src/lib/historical-market-data-editor/historical-market-data-editor-dialog/historical-market-data-editor-dialog.component.ts @@ -22,7 +22,7 @@ import { MatFormFieldModule } from '@angular/material/form-field'; import { MatInputModule } from '@angular/material/input'; import { Subject, takeUntil } from 'rxjs'; -import { MarketDataDetailDialogParams } from './interfaces/interfaces'; +import { HistoricalMarketDataEditorDialogParams } from './interfaces/interfaces'; @Component({ changeDetection: ChangeDetectionStrategy.OnPush, @@ -37,21 +37,22 @@ import { MarketDataDetailDialogParams } from './interfaces/interfaces'; MatInputModule, ReactiveFormsModule ], - selector: 'gf-market-data-detail-dialog', + selector: 'gf-historical-market-data-editor-dialog', schemas: [CUSTOM_ELEMENTS_SCHEMA], standalone: true, - styleUrls: ['./market-data-detail-dialog.scss'], - templateUrl: 'market-data-detail-dialog.html' + styleUrls: ['./historical-market-data-editor-dialog.scss'], + templateUrl: 'historical-market-data-editor-dialog.html' }) -export class MarketDataDetailDialogComponent implements OnDestroy { +export class GfHistoricalMarketDataEditorDialogComponent implements OnDestroy { private unsubscribeSubject = new Subject(); public constructor( private adminService: AdminService, private changeDetectorRef: ChangeDetectorRef, - @Inject(MAT_DIALOG_DATA) public data: MarketDataDetailDialogParams, + @Inject(MAT_DIALOG_DATA) + public data: HistoricalMarketDataEditorDialogParams, private dateAdapter: DateAdapter, - public dialogRef: MatDialogRef, + public dialogRef: MatDialogRef, @Inject(MAT_DATE_LOCALE) private locale: string ) {} diff --git a/libs/ui/src/lib/historical-market-data-editor/market-data-detail-dialog/market-data-detail-dialog.html b/libs/ui/src/lib/historical-market-data-editor/historical-market-data-editor-dialog/historical-market-data-editor-dialog.html similarity index 100% rename from libs/ui/src/lib/historical-market-data-editor/market-data-detail-dialog/market-data-detail-dialog.html rename to libs/ui/src/lib/historical-market-data-editor/historical-market-data-editor-dialog/historical-market-data-editor-dialog.html diff --git a/libs/ui/src/lib/historical-market-data-editor/market-data-detail-dialog/market-data-detail-dialog.scss b/libs/ui/src/lib/historical-market-data-editor/historical-market-data-editor-dialog/historical-market-data-editor-dialog.scss similarity index 100% rename from libs/ui/src/lib/historical-market-data-editor/market-data-detail-dialog/market-data-detail-dialog.scss rename to libs/ui/src/lib/historical-market-data-editor/historical-market-data-editor-dialog/historical-market-data-editor-dialog.scss diff --git a/libs/ui/src/lib/historical-market-data-editor/market-data-detail-dialog/interfaces/interfaces.ts b/libs/ui/src/lib/historical-market-data-editor/historical-market-data-editor-dialog/interfaces/interfaces.ts similarity index 79% rename from libs/ui/src/lib/historical-market-data-editor/market-data-detail-dialog/interfaces/interfaces.ts rename to libs/ui/src/lib/historical-market-data-editor/historical-market-data-editor-dialog/interfaces/interfaces.ts index 81188cd1f..4248b3fdb 100644 --- a/libs/ui/src/lib/historical-market-data-editor/market-data-detail-dialog/interfaces/interfaces.ts +++ b/libs/ui/src/lib/historical-market-data-editor/historical-market-data-editor-dialog/interfaces/interfaces.ts @@ -2,7 +2,7 @@ import { User } from '@ghostfolio/common/interfaces'; import { DataSource } from '@prisma/client'; -export interface MarketDataDetailDialogParams { +export interface HistoricalMarketDataEditorDialogParams { currency: string; dataSource: DataSource; dateString: string; diff --git a/libs/ui/src/lib/historical-market-data-editor/historical-market-data-editor.component.ts b/libs/ui/src/lib/historical-market-data-editor/historical-market-data-editor.component.ts index 3f7ed313d..0fce78621 100644 --- a/libs/ui/src/lib/historical-market-data-editor/historical-market-data-editor.component.ts +++ b/libs/ui/src/lib/historical-market-data-editor/historical-market-data-editor.component.ts @@ -43,8 +43,8 @@ import { parse as csvToJson } from 'papaparse'; import { EMPTY, Subject, takeUntil } from 'rxjs'; import { catchError } from 'rxjs/operators'; -import { MarketDataDetailDialogParams } from './market-data-detail-dialog/interfaces/interfaces'; -import { MarketDataDetailDialogComponent } from './market-data-detail-dialog/market-data-detail-dialog.component'; +import { GfHistoricalMarketDataEditorDialogComponent } from './historical-market-data-editor-dialog/historical-market-data-editor-dialog.component'; +import { HistoricalMarketDataEditorDialogParams } from './historical-market-data-editor-dialog/interfaces/interfaces'; @Component({ changeDetection: ChangeDetectionStrategy.OnPush, @@ -200,18 +200,21 @@ export class GfHistoricalMarketDataEditorComponent }) { const marketPrice = this.marketDataByMonth[yearMonth]?.[day]?.marketPrice; - const dialogRef = this.dialog.open(MarketDataDetailDialogComponent, { - data: { - marketPrice, - currency: this.currency, - dataSource: this.dataSource, - dateString: `${yearMonth}-${day}`, - symbol: this.symbol, - user: this.user - } as MarketDataDetailDialogParams, - height: this.deviceType === 'mobile' ? '98vh' : '80vh', - width: this.deviceType === 'mobile' ? '100vw' : '50rem' - }); + const dialogRef = this.dialog.open( + GfHistoricalMarketDataEditorDialogComponent, + { + data: { + marketPrice, + currency: this.currency, + dataSource: this.dataSource, + dateString: `${yearMonth}-${day}`, + symbol: this.symbol, + user: this.user + } as HistoricalMarketDataEditorDialogParams, + height: this.deviceType === 'mobile' ? '98vh' : '80vh', + width: this.deviceType === 'mobile' ? '100vw' : '50rem' + } + ); dialogRef .afterClosed()