diff --git a/apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html b/apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html
index b0f9ba376..6682e6ee7 100644
--- a/apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html
+++ b/apps/client/src/app/components/account-detail-dialog/account-detail-dialog.html
@@ -1,50 +1,99 @@
-
+
-
+
- Cash Balance
+ Cash Balance
- Equity
+ Equity
- Activities
+ Activities
Platform
-
-
-
+
+
+ Activities
+
-
-
+
+ Balances
+
-
\ No newline at end of file
+
diff --git a/apps/client/src/app/components/account-detail-dialog/account-detail-dialog.module.ts b/apps/client/src/app/components/account-detail-dialog/account-detail-dialog.module.ts
index 93b5649bb..83ac5b6ea 100644
--- a/apps/client/src/app/components/account-detail-dialog/account-detail-dialog.module.ts
+++ b/apps/client/src/app/components/account-detail-dialog/account-detail-dialog.module.ts
@@ -6,8 +6,8 @@ import { MatTabsModule } from '@angular/material/tabs';
import { GfDialogFooterModule } from '@ghostfolio/client/components/dialog-footer/dialog-footer.module';
import { GfDialogHeaderModule } from '@ghostfolio/client/components/dialog-header/dialog-header.module';
import { GfInvestmentChartModule } from '@ghostfolio/client/components/investment-chart/investment-chart.module';
-import { GfActivitiesTableModule } from '@ghostfolio/ui/activities-table/activities-table.module';
import { GfAccountBalancesModule } from '@ghostfolio/ui/account-balances/account-balances.module';
+import { GfActivitiesTableModule } from '@ghostfolio/ui/activities-table/activities-table.module';
import { GfValueModule } from '@ghostfolio/ui/value';
import { NgxSkeletonLoaderModule } from 'ngx-skeleton-loader';
diff --git a/libs/common/src/lib/interfaces/index.ts b/libs/common/src/lib/interfaces/index.ts
index b57b6abf9..7634aad7b 100644
--- a/libs/common/src/lib/interfaces/index.ts
+++ b/libs/common/src/lib/interfaces/index.ts
@@ -1,6 +1,6 @@
import type { Access } from './access.interface';
-import type { Accounts } from './accounts.interface';
import type { AccountBalance } from './account-balance.interface';
+import type { Accounts } from './accounts.interface';
import type { AdminData } from './admin-data.interface';
import type { AdminJobs } from './admin-jobs.interface';
import type { AdminMarketDataDetails } from './admin-market-data-details.interface';
diff --git a/libs/ui/src/lib/account-balances/account-balances.component.html b/libs/ui/src/lib/account-balances/account-balances.component.html
index c9c5966d4..78bfb6c38 100644
--- a/libs/ui/src/lib/account-balances/account-balances.component.html
+++ b/libs/ui/src/lib/account-balances/account-balances.component.html
@@ -1,15 +1,27 @@
-
-
+
- Date |
- {{balance.date}} |
+ Date |
+
+
+ |
- Value |
- {{balance.value}} |
+
+ Value
+ |
+
+
+
+
+ |
-
-
-
\ No newline at end of file
+
+
+
diff --git a/libs/ui/src/lib/account-balances/account-balances.component.ts b/libs/ui/src/lib/account-balances/account-balances.component.ts
index 104dab886..d31b6d504 100644
--- a/libs/ui/src/lib/account-balances/account-balances.component.ts
+++ b/libs/ui/src/lib/account-balances/account-balances.component.ts
@@ -1,10 +1,12 @@
import {
ChangeDetectionStrategy,
+ ChangeDetectorRef,
Component,
Input,
OnDestroy,
OnInit
} from '@angular/core';
+import { MatTableDataSource } from '@angular/material/table';
import { DataService } from '@ghostfolio/client/services/data.service';
import { AccountBalance } from '@ghostfolio/common/interfaces';
import { Subject, takeUntil } from 'rxjs';
@@ -17,26 +19,33 @@ import { Subject, takeUntil } from 'rxjs';
})
export class AccountBalancesComponent implements OnDestroy, OnInit {
@Input() accountId: string;
+ @Input() currency: string;
+ @Input() locale: string;
- public balances: AccountBalance[];
+ public dataSource: MatTableDataSource =
+ new MatTableDataSource();
public displayedColumns: string[] = ['date', 'value'];
private unsubscribeSubject = new Subject();
- public constructor(private dataService: DataService) {}
+ public constructor(
+ private changeDetectorRef: ChangeDetectorRef,
+ private dataService: DataService
+ ) {}
+
+ public ngOnInit() {
+ this.fetchBalances();
+ }
public fetchBalances() {
this.dataService
.fetchAccountBalances(this.accountId)
.pipe(takeUntil(this.unsubscribeSubject))
.subscribe(({ balances }) => {
- console.log({ balances });
- this.balances = balances;
- });
- }
+ this.dataSource = new MatTableDataSource(balances);
- public ngOnInit() {
- this.fetchBalances();
+ this.changeDetectorRef.markForCheck();
+ });
}
public ngOnDestroy() {
diff --git a/libs/ui/src/lib/account-balances/account-balances.module.ts b/libs/ui/src/lib/account-balances/account-balances.module.ts
index eb4a994f6..1e570d36e 100644
--- a/libs/ui/src/lib/account-balances/account-balances.module.ts
+++ b/libs/ui/src/lib/account-balances/account-balances.module.ts
@@ -1,44 +1,14 @@
import { CommonModule } from '@angular/common';
import { CUSTOM_ELEMENTS_SCHEMA, NgModule } from '@angular/core';
-import { MatButtonModule } from '@angular/material/button';
-import { MatCheckboxModule } from '@angular/material/checkbox';
-import { MatMenuModule } from '@angular/material/menu';
-import { MatPaginatorModule } from '@angular/material/paginator';
-import { MatSortModule } from '@angular/material/sort';
import { MatTableModule } from '@angular/material/table';
-import { MatTooltipModule } from '@angular/material/tooltip';
-import { RouterModule } from '@angular/router';
-import { GfSymbolIconModule } from '@ghostfolio/client/components/symbol-icon/symbol-icon.module';
-import { GfSymbolModule } from '@ghostfolio/client/pipes/symbol/symbol.module';
-import { GfActivitiesFilterModule } from '@ghostfolio/ui/activities-filter/activities-filter.module';
-import { GfActivityTypeModule } from '@ghostfolio/ui/activity-type';
-import { GfNoTransactionsInfoModule } from '@ghostfolio/ui/no-transactions-info';
import { GfValueModule } from '@ghostfolio/ui/value';
-import { NgxSkeletonLoaderModule } from 'ngx-skeleton-loader';
import { AccountBalancesComponent } from './account-balances.component';
@NgModule({
declarations: [AccountBalancesComponent],
exports: [AccountBalancesComponent],
- imports: [
- CommonModule,
- GfActivitiesFilterModule,
- GfActivityTypeModule,
- GfNoTransactionsInfoModule,
- GfSymbolIconModule,
- GfSymbolModule,
- GfValueModule,
- MatButtonModule,
- MatCheckboxModule,
- MatMenuModule,
- MatPaginatorModule,
- MatSortModule,
- MatTableModule,
- MatTooltipModule,
- NgxSkeletonLoaderModule,
- RouterModule
- ],
+ imports: [CommonModule, GfValueModule, MatTableModule],
schemas: [CUSTOM_ELEMENTS_SCHEMA]
})
export class GfAccountBalancesModule {}