Events clearing UI refactoring
This commit is contained in:
		
							parent
							
								
									13a74c784e
								
							
						
					
					
						commit
						6e2c1e3419
					
				@ -84,7 +84,7 @@
 | 
			
		||||
                    [fxShow]="actionDescriptor.isEnabled()" *ngFor="let actionDescriptor of headerActionDescriptors"
 | 
			
		||||
                    matTooltip="{{ actionDescriptor.name }}"
 | 
			
		||||
                    matTooltipPosition="above"
 | 
			
		||||
                    (click)="actionDescriptor.onAction($event, entitiesTableConfig, pageLink)">
 | 
			
		||||
                    (click)="actionDescriptor.onAction($event)">
 | 
			
		||||
              <mat-icon *ngIf="actionDescriptor.isMdiIcon" [svgIcon]="actionDescriptor.icon"></mat-icon>
 | 
			
		||||
              <mat-icon *ngIf="!actionDescriptor.isMdiIcon">{{actionDescriptor.icon}}</mat-icon>
 | 
			
		||||
            </button>
 | 
			
		||||
 | 
			
		||||
@ -20,28 +20,28 @@ import {
 | 
			
		||||
  EntityTableColumn,
 | 
			
		||||
  EntityTableConfig
 | 
			
		||||
} from '@home/models/entity/entities-table-config.models';
 | 
			
		||||
import {DebugEventType, Event, EventType, FilterEventBody} from '@shared/models/event.models';
 | 
			
		||||
import {TimePageLink} from '@shared/models/page/page-link';
 | 
			
		||||
import {TranslateService} from '@ngx-translate/core';
 | 
			
		||||
import {DatePipe} from '@angular/common';
 | 
			
		||||
import {MatDialog} from '@angular/material/dialog';
 | 
			
		||||
import {EntityId} from '@shared/models/id/entity-id';
 | 
			
		||||
import {EventService} from '@app/core/http/event.service';
 | 
			
		||||
import {EventTableHeaderComponent} from '@home/components/event/event-table-header.component';
 | 
			
		||||
import {EntityTypeResource} from '@shared/models/entity-type.models';
 | 
			
		||||
import {Observable} from 'rxjs';
 | 
			
		||||
import {PageData} from '@shared/models/page/page-data';
 | 
			
		||||
import {Direction} from '@shared/models/page/sort-order';
 | 
			
		||||
import {DialogService} from '@core/services/dialog.service';
 | 
			
		||||
import {ContentType} from '@shared/models/constants';
 | 
			
		||||
import { DebugEventType, Event, EventType, FilterEventBody } from '@shared/models/event.models';
 | 
			
		||||
import { TimePageLink } from '@shared/models/page/page-link';
 | 
			
		||||
import { TranslateService } from '@ngx-translate/core';
 | 
			
		||||
import { DatePipe } from '@angular/common';
 | 
			
		||||
import { MatDialog } from '@angular/material/dialog';
 | 
			
		||||
import { EntityId } from '@shared/models/id/entity-id';
 | 
			
		||||
import { EventService } from '@app/core/http/event.service';
 | 
			
		||||
import { EventTableHeaderComponent } from '@home/components/event/event-table-header.component';
 | 
			
		||||
import { EntityTypeResource } from '@shared/models/entity-type.models';
 | 
			
		||||
import { Observable } from 'rxjs';
 | 
			
		||||
import { PageData } from '@shared/models/page/page-data';
 | 
			
		||||
import { Direction } from '@shared/models/page/sort-order';
 | 
			
		||||
import { DialogService } from '@core/services/dialog.service';
 | 
			
		||||
import { ContentType } from '@shared/models/constants';
 | 
			
		||||
import {
 | 
			
		||||
  EventContentDialogComponent,
 | 
			
		||||
  EventContentDialogData
 | 
			
		||||
} from '@home/components/event/event-content-dialog.component';
 | 
			
		||||
import {isEqual, sortObjectKeys} from '@core/utils';
 | 
			
		||||
import {ConnectedPosition, Overlay, OverlayConfig, OverlayRef} from '@angular/cdk/overlay';
 | 
			
		||||
import {ChangeDetectorRef, Injector, StaticProvider, ViewContainerRef} from '@angular/core';
 | 
			
		||||
import {ComponentPortal} from '@angular/cdk/portal';
 | 
			
		||||
import { isEqual, sortObjectKeys } from '@core/utils';
 | 
			
		||||
import { ConnectedPosition, Overlay, OverlayConfig, OverlayRef } from '@angular/cdk/overlay';
 | 
			
		||||
import { ChangeDetectorRef, Injector, StaticProvider, ViewContainerRef } from '@angular/core';
 | 
			
		||||
import { ComponentPortal } from '@angular/cdk/portal';
 | 
			
		||||
import {
 | 
			
		||||
  EVENT_FILTER_PANEL_DATA,
 | 
			
		||||
  EventFilterPanelComponent,
 | 
			
		||||
@ -140,8 +140,8 @@ export class EventTableConfig extends EntityTableConfig<Event, TimePageLink> {
 | 
			
		||||
      name: this.translate.instant('event.clean-events'),
 | 
			
		||||
      icon: 'delete',
 | 
			
		||||
      isEnabled: () => true,
 | 
			
		||||
      onAction: ($event, entity, pageLink: TimePageLink) => {
 | 
			
		||||
        this.eventService.clearEvents(entity.entityId, entity.eventType, entity.filterParams, entity.tenantId, pageLink).subscribe(
 | 
			
		||||
      onAction: ($event) => {
 | 
			
		||||
        this.eventService.clearEvents(this.entityId, this.eventType, this.filterParams, this.tenantId, this.table.pageLink as TimePageLink).subscribe(
 | 
			
		||||
          () => {
 | 
			
		||||
            this.table.paginator.pageIndex = 0;
 | 
			
		||||
            this.table.updateData();
 | 
			
		||||
 | 
			
		||||
@ -25,7 +25,6 @@ import { EventService } from '@core/http/event.service';
 | 
			
		||||
import { DialogService } from '@core/services/dialog.service';
 | 
			
		||||
import { DebugEventType, EventType } from '@shared/models/event.models';
 | 
			
		||||
import { Overlay } from '@angular/cdk/overlay';
 | 
			
		||||
import { HttpClient } from '@angular/common/http';
 | 
			
		||||
 | 
			
		||||
@Component({
 | 
			
		||||
  selector: 'tb-event-table',
 | 
			
		||||
@ -85,8 +84,7 @@ export class EventTableComponent implements OnInit {
 | 
			
		||||
              private dialog: MatDialog,
 | 
			
		||||
              private overlay: Overlay,
 | 
			
		||||
              private viewContainerRef: ViewContainerRef,
 | 
			
		||||
              private cd: ChangeDetectorRef,
 | 
			
		||||
              private http: HttpClient) {
 | 
			
		||||
              private cd: ChangeDetectorRef) {
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  ngOnInit() {
 | 
			
		||||
 | 
			
		||||
@ -25,7 +25,8 @@ import { EntityComponent } from '@home/components/entity/entity.component';
 | 
			
		||||
import { Type } from '@angular/core';
 | 
			
		||||
import { EntityAction } from './entity-component.models';
 | 
			
		||||
import { HasUUID } from '@shared/models/id/has-uuid';
 | 
			
		||||
import { PageLink } from '@shared/models/page/page-link';
 | 
			
		||||
import { PageLink, TimePageLink } from '@shared/models/page/page-link';
 | 
			
		||||
import { EntitiesTableComponent } from '@home/components/entity/entities-table.component';
 | 
			
		||||
import { EntityTableHeaderComponent } from '@home/components/entity/entity-table-header.component';
 | 
			
		||||
import { ActivatedRoute } from '@angular/router';
 | 
			
		||||
import { EntityTabsComponent } from '../../components/entity/entity-tabs.component';
 | 
			
		||||
@ -75,7 +76,7 @@ export interface HeaderActionDescriptor {
 | 
			
		||||
  icon: string;
 | 
			
		||||
  isMdiIcon?: boolean;
 | 
			
		||||
  isEnabled: () => boolean;
 | 
			
		||||
  onAction: ($event: MouseEvent, entity?, pageLink?) => void;
 | 
			
		||||
  onAction: ($event: MouseEvent) => void;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export type EntityTableColumnType = 'content' | 'action';
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user