diff --git a/CHANGELOG.md b/CHANGELOG.md index 0f0db15da..7c282f0a0 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.206.0 - 2025-01-27 ### Added diff --git a/apps/api/src/app/portfolio/portfolio.controller.ts b/apps/api/src/app/portfolio/portfolio.controller.ts index d703cf604..5659818a8 100644 --- a/apps/api/src/app/portfolio/portfolio.controller.ts +++ b/apps/api/src/app/portfolio/portfolio.controller.ts @@ -195,7 +195,6 @@ export class PortfolioController { 'excludedAccountsAndActivities', 'fees', 'filteredValueInBaseCurrency', - 'fireWealth', 'grossPerformance', 'grossPerformanceWithCurrencyEffect', 'interest', diff --git a/apps/api/src/app/portfolio/portfolio.service.ts b/apps/api/src/app/portfolio/portfolio.service.ts index f5b4ab1c6..e73f79784 100644 --- a/apps/api/src/app/portfolio/portfolio.service.ts +++ b/apps/api/src/app/portfolio/portfolio.service.ts @@ -2092,9 +2092,13 @@ export class PortfolioService { filteredValueInPercentage: netWorth ? filteredValueInBaseCurrency.div(netWorth).toNumber() : undefined, - fireWealth: new Big(currentValueInBaseCurrency) - .minus(emergencyFundHoldingsValueInBaseCurrency) - .toNumber(), + fireWealth: { + today: { + valueInBaseCurrency: new Big(currentValueInBaseCurrency) + .minus(emergencyFundHoldingsValueInBaseCurrency) + .toNumber() + } + }, grossPerformance: new Big(netPerformance).plus(fees).toNumber(), grossPerformanceWithCurrencyEffect: new Big( netPerformanceWithCurrencyEffect diff --git a/apps/api/src/services/data-provider/financial-modeling-prep/financial-modeling-prep.service.ts b/apps/api/src/services/data-provider/financial-modeling-prep/financial-modeling-prep.service.ts index e64416258..8bb8f8327 100644 --- a/apps/api/src/services/data-provider/financial-modeling-prep/financial-modeling-prep.service.ts +++ b/apps/api/src/services/data-provider/financial-modeling-prep/financial-modeling-prep.service.ts @@ -161,7 +161,7 @@ export class FinancialModelingPrepService implements DataProviderInterface { } ).then((res) => res.json()); - if (etfInformation.website) { + if (etfInformation?.website) { response.url = etfInformation.website; } diff --git a/apps/client/src/app/app-routing.module.ts b/apps/client/src/app/app-routing.module.ts index 53db1f06b..5c5eadcab 100644 --- a/apps/client/src/app/app-routing.module.ts +++ b/apps/client/src/app/app-routing.module.ts @@ -94,7 +94,7 @@ const routes: Routes = [ { path: publicRoutes.openStartup.path, loadChildren: () => - import('./pages/open/open-page.module').then((m) => m.OpenPageModule) + import('./pages/open/open-page.routes').then((m) => m.routes) }, { path: internalRoutes.portfolio.path, diff --git a/apps/client/src/app/components/admin-market-data/admin-market-data.component.ts b/apps/client/src/app/components/admin-market-data/admin-market-data.component.ts index 4e410c3a0..e907f4b03 100644 --- a/apps/client/src/app/components/admin-market-data/admin-market-data.component.ts +++ b/apps/client/src/app/components/admin-market-data/admin-market-data.component.ts @@ -1,4 +1,4 @@ -import { GfSymbolModule } from '@ghostfolio/client/pipes/symbol/symbol.module'; +import { GfSymbolPipe } from '@ghostfolio/client/pipes/symbol/symbol.pipe'; import { AdminService } from '@ghostfolio/client/services/admin.service'; import { DataService } from '@ghostfolio/client/services/data.service'; import { UserService } from '@ghostfolio/client/services/user/user.service'; @@ -79,7 +79,7 @@ import { CreateAssetProfileDialogParams } from './create-asset-profile-dialog/in CommonModule, GfActivitiesFilterComponent, GfPremiumIndicatorComponent, - GfSymbolModule, + GfSymbolPipe, GfValueComponent, IonIcon, MatButtonModule, diff --git a/apps/client/src/app/components/home-watchlist/create-watchlist-item-dialog/create-watchlist-item-dialog.html b/apps/client/src/app/components/home-watchlist/create-watchlist-item-dialog/create-watchlist-item-dialog.html index dd59a9309..92e194891 100644 --- a/apps/client/src/app/components/home-watchlist/create-watchlist-item-dialog/create-watchlist-item-dialog.html +++ b/apps/client/src/app/components/home-watchlist/create-watchlist-item-dialog/create-watchlist-item-dialog.html @@ -12,7 +12,13 @@
- +
} @else { @@ -50,22 +51,23 @@ class="w-100" [ngClass]="{ 'd-none': !data.rule.configuration.thresholdMin }" > -
+
Threshold Min: - @if (data.rule.configuration.threshold.unit === '%') { - {{ data.settings.thresholdMin | percent: '1.2-2' }} - } @else { - {{ data.settings.thresholdMin }} - } +
- @if (data.rule.configuration.threshold.unit === '%') { - - } @else { - - } + - @if (data.rule.configuration.threshold.unit === '%') { - - } @else { - - } +
-
+
Threshold Max: - @if (data.rule.configuration.threshold.unit === '%') { - {{ data.settings.thresholdMax | percent: '1.2-2' }} - } @else { - {{ data.settings.thresholdMax }} - } +
- @if (data.rule.configuration.threshold.unit === '%') { - - } @else { - - } + - @if (data.rule.configuration.threshold.unit === '%') { - - } @else { - - } +
} diff --git a/apps/client/src/app/directives/file-drop/file-drop.directive.ts b/apps/client/src/app/directives/file-drop/file-drop.directive.ts index 93f444572..a7e628bc9 100644 --- a/apps/client/src/app/directives/file-drop/file-drop.directive.ts +++ b/apps/client/src/app/directives/file-drop/file-drop.directive.ts @@ -1,10 +1,9 @@ import { Directive, EventEmitter, HostListener, Output } from '@angular/core'; @Directive({ - selector: '[gfFileDrop]', - standalone: false + selector: '[gfFileDrop]' }) -export class FileDropDirective { +export class GfFileDropDirective { @Output() filesDropped = new EventEmitter(); @HostListener('dragenter', ['$event']) onDragEnter(event: DragEvent) { diff --git a/apps/client/src/app/directives/file-drop/file-drop.module.ts b/apps/client/src/app/directives/file-drop/file-drop.module.ts deleted file mode 100644 index a0148516e..000000000 --- a/apps/client/src/app/directives/file-drop/file-drop.module.ts +++ /dev/null @@ -1,9 +0,0 @@ -import { NgModule } from '@angular/core'; - -import { FileDropDirective } from './file-drop.directive'; - -@NgModule({ - declarations: [FileDropDirective], - exports: [FileDropDirective] -}) -export class GfFileDropModule {} diff --git a/apps/client/src/app/pages/open/open-page-routing.module.ts b/apps/client/src/app/pages/open/open-page-routing.module.ts deleted file mode 100644 index c56fe80ba..000000000 --- a/apps/client/src/app/pages/open/open-page-routing.module.ts +++ /dev/null @@ -1,22 +0,0 @@ -import { AuthGuard } from '@ghostfolio/client/core/auth.guard'; -import { publicRoutes } from '@ghostfolio/common/routes/routes'; - -import { NgModule } from '@angular/core'; -import { RouterModule, Routes } from '@angular/router'; - -import { OpenPageComponent } from './open-page.component'; - -const routes: Routes = [ - { - canActivate: [AuthGuard], - component: OpenPageComponent, - path: '', - title: publicRoutes.openStartup.title - } -]; - -@NgModule({ - imports: [RouterModule.forChild(routes)], - exports: [RouterModule] -}) -export class OpenPageRoutingModule {} diff --git a/apps/client/src/app/pages/open/open-page.component.ts b/apps/client/src/app/pages/open/open-page.component.ts index c876c3cc8..6521951da 100644 --- a/apps/client/src/app/pages/open/open-page.component.ts +++ b/apps/client/src/app/pages/open/open-page.component.ts @@ -1,18 +1,28 @@ import { DataService } from '@ghostfolio/client/services/data.service'; import { UserService } from '@ghostfolio/client/services/user/user.service'; import { Statistics, User } from '@ghostfolio/common/interfaces'; - -import { ChangeDetectorRef, Component, OnDestroy, OnInit } from '@angular/core'; +import { GfValueComponent } from '@ghostfolio/ui/value'; + +import { CommonModule } from '@angular/common'; +import { + ChangeDetectorRef, + Component, + CUSTOM_ELEMENTS_SCHEMA, + OnDestroy, + OnInit +} from '@angular/core'; +import { MatCardModule } from '@angular/material/card'; import { Subject, takeUntil } from 'rxjs'; @Component({ host: { class: 'page' }, + imports: [CommonModule, GfValueComponent, MatCardModule], + schemas: [CUSTOM_ELEMENTS_SCHEMA], selector: 'gf-open-page', styleUrls: ['./open-page.scss'], - templateUrl: './open-page.html', - standalone: false + templateUrl: './open-page.html' }) -export class OpenPageComponent implements OnDestroy, OnInit { +export class GfOpenPageComponent implements OnDestroy, OnInit { public statistics: Statistics; public user: User; diff --git a/apps/client/src/app/pages/open/open-page.module.ts b/apps/client/src/app/pages/open/open-page.module.ts deleted file mode 100644 index ab48f2d4a..000000000 --- a/apps/client/src/app/pages/open/open-page.module.ts +++ /dev/null @@ -1,20 +0,0 @@ -import { GfValueComponent } from '@ghostfolio/ui/value'; - -import { CommonModule } from '@angular/common'; -import { CUSTOM_ELEMENTS_SCHEMA, NgModule } from '@angular/core'; -import { MatCardModule } from '@angular/material/card'; - -import { OpenPageRoutingModule } from './open-page-routing.module'; -import { OpenPageComponent } from './open-page.component'; - -@NgModule({ - declarations: [OpenPageComponent], - imports: [ - CommonModule, - GfValueComponent, - MatCardModule, - OpenPageRoutingModule - ], - schemas: [CUSTOM_ELEMENTS_SCHEMA] -}) -export class OpenPageModule {} diff --git a/apps/client/src/app/pages/open/open-page.routes.ts b/apps/client/src/app/pages/open/open-page.routes.ts new file mode 100644 index 000000000..da04d6f5b --- /dev/null +++ b/apps/client/src/app/pages/open/open-page.routes.ts @@ -0,0 +1,15 @@ +import { AuthGuard } from '@ghostfolio/client/core/auth.guard'; +import { publicRoutes } from '@ghostfolio/common/routes/routes'; + +import { Routes } from '@angular/router'; + +import { GfOpenPageComponent } from './open-page.component'; + +export const routes: Routes = [ + { + canActivate: [AuthGuard], + component: GfOpenPageComponent, + path: '', + title: publicRoutes.openStartup.title + } +]; diff --git a/apps/client/src/app/pages/portfolio/activities/import-activities-dialog/import-activities-dialog.component.ts b/apps/client/src/app/pages/portfolio/activities/import-activities-dialog/import-activities-dialog.component.ts index 228eac5c3..2439a4b65 100644 --- a/apps/client/src/app/pages/portfolio/activities/import-activities-dialog/import-activities-dialog.component.ts +++ b/apps/client/src/app/pages/portfolio/activities/import-activities-dialog/import-activities-dialog.component.ts @@ -4,8 +4,8 @@ import { CreateAssetProfileWithMarketDataDto } from '@ghostfolio/api/app/import/ import { Activity } from '@ghostfolio/api/app/order/interfaces/activities.interface'; import { GfDialogFooterComponent } from '@ghostfolio/client/components/dialog-footer/dialog-footer.component'; import { GfDialogHeaderComponent } from '@ghostfolio/client/components/dialog-header/dialog-header.component'; -import { GfFileDropModule } from '@ghostfolio/client/directives/file-drop/file-drop.module'; -import { GfSymbolModule } from '@ghostfolio/client/pipes/symbol/symbol.module'; +import { GfFileDropDirective } from '@ghostfolio/client/directives/file-drop/file-drop.directive'; +import { GfSymbolPipe } from '@ghostfolio/client/pipes/symbol/symbol.pipe'; import { DataService } from '@ghostfolio/client/services/data.service'; import { ImportActivitiesService } from '@ghostfolio/client/services/import-activities.service'; import { PortfolioPosition } from '@ghostfolio/common/interfaces'; @@ -15,6 +15,7 @@ import { StepperOrientation, StepperSelectionEvent } from '@angular/cdk/stepper'; +import { CommonModule } from '@angular/common'; import { ChangeDetectionStrategy, ChangeDetectorRef, @@ -59,11 +60,12 @@ import { ImportActivitiesDialogParams } from './interfaces/interfaces'; changeDetection: ChangeDetectionStrategy.OnPush, host: { class: 'd-flex flex-column h-100' }, imports: [ + CommonModule, GfActivitiesTableComponent, GfDialogFooterComponent, GfDialogHeaderComponent, - GfFileDropModule, - GfSymbolModule, + GfFileDropDirective, + GfSymbolPipe, IonIcon, MatButtonModule, MatDialogModule, diff --git a/apps/client/src/app/pages/portfolio/fire/fire-page.component.ts b/apps/client/src/app/pages/portfolio/fire/fire-page.component.ts index ab0fbc787..c80b55c45 100644 --- a/apps/client/src/app/pages/portfolio/fire/fire-page.component.ts +++ b/apps/client/src/app/pages/portfolio/fire/fire-page.component.ts @@ -1,7 +1,7 @@ import { DataService } from '@ghostfolio/client/services/data.service'; import { ImpersonationStorageService } from '@ghostfolio/client/services/impersonation-storage.service'; import { UserService } from '@ghostfolio/client/services/user/user.service'; -import { User } from '@ghostfolio/common/interfaces'; +import { FireWealth, User } from '@ghostfolio/common/interfaces'; import { hasPermission, permissions } from '@ghostfolio/common/permissions'; import { GfFireCalculatorComponent } from '@ghostfolio/ui/fire-calculator'; import { GfPremiumIndicatorComponent } from '@ghostfolio/ui/premium-indicator'; @@ -29,7 +29,7 @@ import { takeUntil } from 'rxjs/operators'; }) export class GfFirePageComponent implements OnDestroy, OnInit { public deviceType: string; - public fireWealth: Big; + public fireWealth: FireWealth; public hasImpersonationId: boolean; public hasPermissionToUpdateUserSettings: boolean; public isLoading = false; @@ -55,17 +55,24 @@ export class GfFirePageComponent implements OnDestroy, OnInit { .fetchPortfolioDetails() .pipe(takeUntil(this.unsubscribeSubject)) .subscribe(({ summary }) => { - this.fireWealth = summary.fireWealth - ? new Big(summary.fireWealth) - : new Big(0); - + this.fireWealth = { + today: { + valueInBaseCurrency: summary.fireWealth + ? summary.fireWealth.today.valueInBaseCurrency + : 0 + } + }; if (this.user.subscription?.type === 'Basic') { - this.fireWealth = new Big(10000); + this.fireWealth = { + today: { + valueInBaseCurrency: 10000 + } + }; } - this.withdrawalRatePerYear = this.fireWealth.mul( - this.user.settings.safeWithdrawalRate - ); + this.withdrawalRatePerYear = Big( + this.fireWealth.today.valueInBaseCurrency + ).mul(this.user.settings.safeWithdrawalRate); this.withdrawalRatePerMonth = this.withdrawalRatePerYear.div(12); diff --git a/apps/client/src/app/pages/portfolio/fire/fire-page.html b/apps/client/src/app/pages/portfolio/fire/fire-page.html index df81991c3..d6548f761 100644 --- a/apps/client/src/app/pages/portfolio/fire/fire-page.html +++ b/apps/client/src/app/pages/portfolio/fire/fire-page.html @@ -14,7 +14,7 @@ [colorScheme]="user?.settings?.colorScheme" [currency]="user?.settings?.baseCurrency" [deviceType]="deviceType" - [fireWealth]="fireWealth?.toNumber()" + [fireWealth]="fireWealth?.today.valueInBaseCurrency" [hasPermissionToUpdateUserSettings]=" !hasImpersonationId && hasPermissionToUpdateUserSettings " @@ -100,7 +100,7 @@ [isCurrency]="true" [locale]="user?.settings?.locale" [unit]="user?.settings?.baseCurrency" - [value]="fireWealth?.toNumber()" + [value]="fireWealth?.today.valueInBaseCurrency" />   diff --git a/apps/client/src/app/pipes/symbol/symbol.module.ts b/apps/client/src/app/pipes/symbol/symbol.module.ts deleted file mode 100644 index 7ba1c1c73..000000000 --- a/apps/client/src/app/pipes/symbol/symbol.module.ts +++ /dev/null @@ -1,9 +0,0 @@ -import { NgModule } from '@angular/core'; - -import { SymbolPipe } from './symbol.pipe'; - -@NgModule({ - declarations: [SymbolPipe], - exports: [SymbolPipe] -}) -export class GfSymbolModule {} diff --git a/apps/client/src/app/pipes/symbol/symbol.pipe.ts b/apps/client/src/app/pipes/symbol/symbol.pipe.ts index 2b30d1041..6f4981699 100644 --- a/apps/client/src/app/pipes/symbol/symbol.pipe.ts +++ b/apps/client/src/app/pipes/symbol/symbol.pipe.ts @@ -3,10 +3,9 @@ import { prettifySymbol } from '@ghostfolio/common/helper'; import { Pipe, PipeTransform } from '@angular/core'; @Pipe({ - name: 'gfSymbol', - standalone: false + name: 'gfSymbol' }) -export class SymbolPipe implements PipeTransform { +export class GfSymbolPipe implements PipeTransform { public transform(aSymbol: string) { return prettifySymbol(aSymbol); } diff --git a/libs/common/src/lib/interfaces/fire-wealth.interface.ts b/libs/common/src/lib/interfaces/fire-wealth.interface.ts new file mode 100644 index 000000000..42fbeabd4 --- /dev/null +++ b/libs/common/src/lib/interfaces/fire-wealth.interface.ts @@ -0,0 +1,3 @@ +export interface FireWealth { + today: { valueInBaseCurrency: number }; +} diff --git a/libs/common/src/lib/interfaces/index.ts b/libs/common/src/lib/interfaces/index.ts index 6529fa3ef..1da2236e8 100644 --- a/libs/common/src/lib/interfaces/index.ts +++ b/libs/common/src/lib/interfaces/index.ts @@ -19,6 +19,7 @@ import type { EnhancedSymbolProfile } from './enhanced-symbol-profile.interface' import type { Export } from './export.interface'; import type { FilterGroup } from './filter-group.interface'; import type { Filter } from './filter.interface'; +import type { FireWealth } from './fire-wealth.interface'; import type { HistoricalDataItem } from './historical-data-item.interface'; import type { HoldingWithParents } from './holding-with-parents.interface'; import type { Holding } from './holding.interface'; @@ -104,6 +105,7 @@ export { Export, Filter, FilterGroup, + FireWealth, HistoricalDataItem, HistoricalResponse, Holding, diff --git a/libs/common/src/lib/interfaces/portfolio-summary.interface.ts b/libs/common/src/lib/interfaces/portfolio-summary.interface.ts index 419915a79..05fac0ba0 100644 --- a/libs/common/src/lib/interfaces/portfolio-summary.interface.ts +++ b/libs/common/src/lib/interfaces/portfolio-summary.interface.ts @@ -1,3 +1,4 @@ +import { FireWealth } from './fire-wealth.interface'; import { PortfolioPerformance } from './portfolio-performance.interface'; export interface PortfolioSummary extends PortfolioPerformance { @@ -16,7 +17,7 @@ export interface PortfolioSummary extends PortfolioPerformance { fees: number; filteredValueInBaseCurrency?: number; filteredValueInPercentage?: number; - fireWealth: number; + fireWealth: FireWealth; grossPerformance: number; grossPerformanceWithCurrencyEffect: number; interest: number; diff --git a/libs/ui/src/lib/activities-filter/activities-filter.component.ts b/libs/ui/src/lib/activities-filter/activities-filter.component.ts index c31a5fecd..cb659988a 100644 --- a/libs/ui/src/lib/activities-filter/activities-filter.component.ts +++ b/libs/ui/src/lib/activities-filter/activities-filter.component.ts @@ -1,4 +1,4 @@ -import { GfSymbolModule } from '@ghostfolio/client/pipes/symbol/symbol.module'; +import { GfSymbolPipe } from '@ghostfolio/client/pipes/symbol/symbol.pipe'; import { Filter, FilterGroup } from '@ghostfolio/common/interfaces'; import { COMMA, ENTER } from '@angular/cdk/keycodes'; @@ -39,7 +39,7 @@ import { translate } from '../i18n'; changeDetection: ChangeDetectionStrategy.OnPush, imports: [ CommonModule, - GfSymbolModule, + GfSymbolPipe, IonIcon, MatAutocompleteModule, MatButtonModule, diff --git a/libs/ui/src/lib/activities-table/activities-table.component.ts b/libs/ui/src/lib/activities-table/activities-table.component.ts index 4be9fbec6..ce2de1caa 100644 --- a/libs/ui/src/lib/activities-table/activities-table.component.ts +++ b/libs/ui/src/lib/activities-table/activities-table.component.ts @@ -1,7 +1,7 @@ import { Activity } from '@ghostfolio/api/app/order/interfaces/activities.interface'; import { ConfirmationDialogType } from '@ghostfolio/client/core/notification/confirmation-dialog/confirmation-dialog.type'; import { NotificationService } from '@ghostfolio/client/core/notification/notification.service'; -import { GfSymbolModule } from '@ghostfolio/client/pipes/symbol/symbol.module'; +import { GfSymbolPipe } from '@ghostfolio/client/pipes/symbol/symbol.pipe'; import { DEFAULT_PAGE_SIZE, TAG_ID_EXCLUDE_FROM_ANALYSIS @@ -73,7 +73,7 @@ import { GfValueComponent } from '../value/value.component'; GfActivityTypeComponent, GfEntityLogoComponent, GfNoTransactionsInfoComponent, - GfSymbolModule, + GfSymbolPipe, GfValueComponent, IonIcon, MatButtonModule, diff --git a/libs/ui/src/lib/assistant/assistant-list-item/assistant-list-item.component.ts b/libs/ui/src/lib/assistant/assistant-list-item/assistant-list-item.component.ts index 1cfcfec6a..f75aaea01 100644 --- a/libs/ui/src/lib/assistant/assistant-list-item/assistant-list-item.component.ts +++ b/libs/ui/src/lib/assistant/assistant-list-item/assistant-list-item.component.ts @@ -1,4 +1,4 @@ -import { GfSymbolModule } from '@ghostfolio/client/pipes/symbol/symbol.module'; +import { GfSymbolPipe } from '@ghostfolio/client/pipes/symbol/symbol.pipe'; import { internalRoutes } from '@ghostfolio/common/routes/routes'; import { FocusableOption } from '@angular/cdk/a11y'; @@ -24,7 +24,7 @@ import { @Component({ changeDetection: ChangeDetectionStrategy.OnPush, - imports: [GfSymbolModule, RouterModule], + imports: [GfSymbolPipe, RouterModule], selector: 'gf-assistant-list-item', styleUrls: ['./assistant-list-item.scss'], templateUrl: './assistant-list-item.html' diff --git a/libs/ui/src/lib/assistant/assistant.component.ts b/libs/ui/src/lib/assistant/assistant.component.ts index a0a1fd31f..274128152 100644 --- a/libs/ui/src/lib/assistant/assistant.component.ts +++ b/libs/ui/src/lib/assistant/assistant.component.ts @@ -1,4 +1,4 @@ -import { GfSymbolModule } from '@ghostfolio/client/pipes/symbol/symbol.module'; +import { GfSymbolPipe } from '@ghostfolio/client/pipes/symbol/symbol.pipe'; import { AdminService } from '@ghostfolio/client/services/admin.service'; import { DataService } from '@ghostfolio/client/services/data.service'; import { getAssetProfileIdentifier } from '@ghostfolio/common/helper'; @@ -76,7 +76,7 @@ import { FormsModule, GfAssistantListItemComponent, GfEntityLogoComponent, - GfSymbolModule, + GfSymbolPipe, IonIcon, MatButtonModule, MatFormFieldModule, diff --git a/libs/ui/src/lib/holdings-table/holdings-table.component.ts b/libs/ui/src/lib/holdings-table/holdings-table.component.ts index 89bb4a541..83faf7621 100644 --- a/libs/ui/src/lib/holdings-table/holdings-table.component.ts +++ b/libs/ui/src/lib/holdings-table/holdings-table.component.ts @@ -1,4 +1,4 @@ -import { GfSymbolModule } from '@ghostfolio/client/pipes/symbol/symbol.module'; +import { GfSymbolPipe } from '@ghostfolio/client/pipes/symbol/symbol.pipe'; import { getLocale } from '@ghostfolio/common/helper'; import { AssetProfileIdentifier, @@ -34,7 +34,7 @@ import { GfValueComponent } from '../value/value.component'; imports: [ CommonModule, GfEntityLogoComponent, - GfSymbolModule, + GfSymbolPipe, GfValueComponent, MatButtonModule, MatDialogModule, diff --git a/libs/ui/src/lib/symbol-autocomplete/symbol-autocomplete.component.ts b/libs/ui/src/lib/symbol-autocomplete/symbol-autocomplete.component.ts index f6c289b72..80315fc06 100644 --- a/libs/ui/src/lib/symbol-autocomplete/symbol-autocomplete.component.ts +++ b/libs/ui/src/lib/symbol-autocomplete/symbol-autocomplete.component.ts @@ -1,4 +1,4 @@ -import { GfSymbolModule } from '@ghostfolio/client/pipes/symbol/symbol.module'; +import { GfSymbolPipe } from '@ghostfolio/client/pipes/symbol/symbol.pipe'; import { DataService } from '@ghostfolio/client/services/data.service'; import { LookupItem } from '@ghostfolio/common/interfaces'; @@ -57,7 +57,7 @@ import { AbstractMatFormField } from '../shared/abstract-mat-form-field'; imports: [ FormsModule, GfPremiumIndicatorComponent, - GfSymbolModule, + GfSymbolPipe, MatAutocompleteModule, MatFormFieldModule, MatInputModule, diff --git a/libs/ui/src/lib/top-holdings/top-holdings.component.ts b/libs/ui/src/lib/top-holdings/top-holdings.component.ts index b4ebf4c8c..c9f7e0372 100644 --- a/libs/ui/src/lib/top-holdings/top-holdings.component.ts +++ b/libs/ui/src/lib/top-holdings/top-holdings.component.ts @@ -1,4 +1,4 @@ -import { GfSymbolModule } from '@ghostfolio/client/pipes/symbol/symbol.module'; +import { GfSymbolPipe } from '@ghostfolio/client/pipes/symbol/symbol.pipe'; import { getLocale } from '@ghostfolio/common/helper'; import { AssetProfileIdentifier, @@ -46,7 +46,7 @@ import { GfValueComponent } from '../value/value.component'; changeDetection: ChangeDetectionStrategy.OnPush, imports: [ CommonModule, - GfSymbolModule, + GfSymbolPipe, GfValueComponent, MatButtonModule, MatPaginatorModule,