Feature/set up output for click in activities table component (#3856)
* Set up @output for click in activities table component
This commit is contained in:
parent
7f6b8145d7
commit
8364f7f703
@ -7,7 +7,7 @@ import { ImpersonationStorageService } from '@ghostfolio/client/services/imperso
|
||||
import { UserService } from '@ghostfolio/client/services/user/user.service';
|
||||
import { DEFAULT_PAGE_SIZE } from '@ghostfolio/common/config';
|
||||
import { downloadAsFile } from '@ghostfolio/common/helper';
|
||||
import { User } from '@ghostfolio/common/interfaces';
|
||||
import { AssetProfileIdentifier, User } from '@ghostfolio/common/interfaces';
|
||||
import { hasPermission, permissions } from '@ghostfolio/common/permissions';
|
||||
|
||||
import { ChangeDetectorRef, Component, OnDestroy, OnInit } from '@angular/core';
|
||||
@ -138,6 +138,16 @@ export class ActivitiesPageComponent implements OnDestroy, OnInit {
|
||||
this.fetchActivities();
|
||||
}
|
||||
|
||||
public onClickActivity({ dataSource, symbol }: AssetProfileIdentifier) {
|
||||
this.router.navigate([], {
|
||||
queryParams: {
|
||||
dataSource,
|
||||
symbol,
|
||||
holdingDetailDialog: true
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
public onCloneActivity(aActivity: Activity) {
|
||||
this.openCreateActivityDialog(aActivity);
|
||||
}
|
||||
|
@ -21,6 +21,7 @@
|
||||
[sortDirection]="sortDirection"
|
||||
[totalItems]="totalItems"
|
||||
(activitiesDeleted)="onDeleteActivities()"
|
||||
(activityClicked)="onClickActivity($event)"
|
||||
(activityDeleted)="onDeleteActivity($event)"
|
||||
(activityToClone)="onCloneActivity($event)"
|
||||
(activityToUpdate)="onUpdateActivity($event)"
|
||||
|
@ -42,7 +42,6 @@ import {
|
||||
} from '@angular/material/sort';
|
||||
import { MatTableDataSource, MatTableModule } from '@angular/material/table';
|
||||
import { MatTooltipModule } from '@angular/material/tooltip';
|
||||
import { Router, RouterModule } from '@angular/router';
|
||||
import { isUUID } from 'class-validator';
|
||||
import { endOfToday, isAfter } from 'date-fns';
|
||||
import { NgxSkeletonLoaderModule } from 'ngx-skeleton-loader';
|
||||
@ -64,8 +63,7 @@ import { Subject, Subscription, takeUntil } from 'rxjs';
|
||||
MatSortModule,
|
||||
MatTableModule,
|
||||
MatTooltipModule,
|
||||
NgxSkeletonLoaderModule,
|
||||
RouterModule
|
||||
NgxSkeletonLoaderModule
|
||||
],
|
||||
schemas: [CUSTOM_ELEMENTS_SCHEMA],
|
||||
selector: 'gf-activities-table',
|
||||
@ -95,6 +93,7 @@ export class GfActivitiesTableComponent
|
||||
@Input() totalItems = Number.MAX_SAFE_INTEGER;
|
||||
|
||||
@Output() activitiesDeleted = new EventEmitter<void>();
|
||||
@Output() activityClicked = new EventEmitter<AssetProfileIdentifier>();
|
||||
@Output() activityDeleted = new EventEmitter<string>();
|
||||
@Output() activityToClone = new EventEmitter<OrderWithAccount>();
|
||||
@Output() activityToUpdate = new EventEmitter<OrderWithAccount>();
|
||||
@ -122,10 +121,7 @@ export class GfActivitiesTableComponent
|
||||
|
||||
private unsubscribeSubject = new Subject<void>();
|
||||
|
||||
public constructor(
|
||||
private notificationService: NotificationService,
|
||||
private router: Router
|
||||
) {}
|
||||
public constructor(private notificationService: NotificationService) {}
|
||||
|
||||
public ngOnInit() {
|
||||
if (this.showCheckbox) {
|
||||
@ -203,7 +199,7 @@ export class GfActivitiesTableComponent
|
||||
activity.isDraft === false &&
|
||||
['BUY', 'DIVIDEND', 'SELL'].includes(activity.type)
|
||||
) {
|
||||
this.onOpenPositionDialog({
|
||||
this.activityClicked.emit({
|
||||
dataSource: activity.SymbolProfile.dataSource,
|
||||
symbol: activity.SymbolProfile.symbol
|
||||
});
|
||||
@ -268,12 +264,6 @@ export class GfActivitiesTableComponent
|
||||
});
|
||||
}
|
||||
|
||||
public onOpenPositionDialog({ dataSource, symbol }: AssetProfileIdentifier) {
|
||||
this.router.navigate([], {
|
||||
queryParams: { dataSource, symbol, holdingDetailDialog: true }
|
||||
});
|
||||
}
|
||||
|
||||
public onUpdateActivity(aActivity: OrderWithAccount) {
|
||||
this.activityToUpdate.emit(aActivity);
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user