@netgrif/components-core
Version:
Netgrif Application engine frontend core Angular library
72 lines (71 loc) • 3.81 kB
TypeScript
import { OnDestroy, OnInit } from '@angular/core';
import { MatExpansionPanel } from '@angular/material/expansion';
import { AbstractPanelWithHeaderBindingComponent } from '../abstract/panel-with-header-binding';
import { HeaderColumn } from '../../header/models/header-column';
import { LoggerService } from '../../logger/services/logger.service';
import { TextField } from '../../data-fields/text-field/models/text-field';
import { DateTimeField } from '../../data-fields/date-time-field/models/date-time-field';
import { Behavior } from '../../data-fields/models/behavior';
import { Net } from '../../process/net';
import { TranslateService } from '@ngx-translate/core';
import { WorkflowViewService } from '../../view/workflow-view/workflow-view.service';
import { FeaturedValue } from '../abstract/featured-value';
import { PetriNetResourceService } from '../../resources/engine-endpoint/petri-net-resource.service';
import { OverflowService } from '../../header/services/overflow.service';
import * as i0 from "@angular/core";
export interface WorkflowPanelContent {
netIdentifier: TextField;
title: TextField;
version: TextField;
author: TextField;
uploaded: DateTimeField;
}
export declare abstract class AbstractWorkflowPanelComponent extends AbstractPanelWithHeaderBindingComponent implements OnInit, OnDestroy {
protected _log: LoggerService;
protected _translate: TranslateService;
protected _workflowService: WorkflowViewService;
protected _petriNetResource: PetriNetResourceService;
protected _overflowService: OverflowService;
workflow: Net;
responsiveBody: boolean;
showDeleteMenu: boolean;
first: boolean;
last: boolean;
panelRef: MatExpansionPanel;
panelContent: WorkflowPanelContent;
private _subscription;
private readonly TRANSLATION_NET;
private readonly TRANSLATION_TITLE;
private readonly TRANSLATION_VERSION;
private readonly TRANSLATION_AUTHOR;
private readonly TRANSLATION_UPLOAD;
protected dataFieldsBehaviour: Behavior;
protected constructor(_log: LoggerService, _translate: TranslateService, _workflowService: WorkflowViewService, _petriNetResource: PetriNetResourceService, _overflowService: OverflowService);
ngOnInit(): void;
ngOnDestroy(): void;
show(event: MouseEvent): boolean;
collapse(): void;
setPanelRef(panelRef: MatExpansionPanel): void;
/**
* Handles the logic that should be executed when the "delete workflow" button is clicked.
*
* Calls the appropriate method in the {@link WorkflowViewService}.
*/
deleteWorkflow(): void;
/**
* Handles the logic that should be executed when the "download workflow" button is clicked.
*
* Calls the appropriate method in the {@link WorkflowViewService}.
*/
downloadNetFile(): void;
downloadViaAnchor(blob: Blob): void;
/**
* Populate data fields group for every petri net model
*/
protected createPanelContent(): WorkflowPanelContent;
protected resolveFeaturedFieldsValues(): void;
protected getFeaturedMetaValue(selectedHeader: HeaderColumn): FeaturedValue;
protected getFeaturedImmediateValue(selectedHeader: HeaderColumn): FeaturedValue;
static ɵfac: i0.ɵɵFactoryDeclaration<AbstractWorkflowPanelComponent, [null, null, null, null, { optional: true; }]>;
static ɵcmp: i0.ɵɵComponentDeclaration<AbstractWorkflowPanelComponent, "ncc-abstract-workflow-panel", never, { "workflow": { "alias": "workflow"; "required": false; }; "responsiveBody": { "alias": "responsiveBody"; "required": false; }; "showDeleteMenu": { "alias": "showDeleteMenu"; "required": false; }; "first": { "alias": "first"; "required": false; }; "last": { "alias": "last"; "required": false; }; }, {}, never, never, false, never>;
}