@versatiledatakit/data-pipelines
Version:
Data Pipelines help Data Engineers develop, deploy, run, and manage data processing workloads (called 'Data Job')
77 lines (76 loc) • 2.66 kB
TypeScript
import { DatePipe } from '@angular/common';
import { EventEmitter, OnChanges, OnInit, SimpleChanges } from '@angular/core';
import { Chart, ScatterDataPoint } from 'chart.js';
import 'chartjs-adapter-date-fns';
import { DataJobExecutionStatus } from '../../../../../model';
import { GridDataJobExecution } from '../model';
import * as i0 from "@angular/core";
declare type CustomChartData = Partial<ScatterDataPoint> & {
startTime: number;
duration: number;
endTime: string;
status: DataJobExecutionStatus;
opId: string;
id: string;
};
interface ZoomPeriod {
from: Date;
to: Date;
}
export declare class ExecutionDurationChartComponent implements OnInit, OnChanges {
private readonly datePipe;
jobExecutions: GridDataJobExecution[];
/**
* ** Flag that indicates if duration chart is zoomed or not.
*/
chartZoomed: boolean;
/**
* ** Emits event whenever focus on execution changes.
*
* - Value could be either executionId or null.
*/
executionIdFocused: EventEmitter<string>;
/**
* ** Event Emitter that emits events on every user zoom period change in duration chart or reset zoom.
*/
zoomPeriodChanged: EventEmitter<ZoomPeriod>;
/**
* ** Reference to Duration chart instance.
*/
chart: Chart<'line', CustomChartData[], number>;
/**
* ** Currently focussed execution id, it could be either string if there is focussed execution or null if nothing is focussed.
* @private
*/
private _focusedExecutionId;
/**
* ** Zoom selection reference with from and to values.
* @private
*/
private _zoomPeriod;
constructor(datePipe: DatePipe);
resetZoom(): void;
/**
* @inheritDoc
*/
ngOnChanges(changes: SimpleChanges): void;
/**
* @inheritDoc
*/
ngOnInit(): void;
private _initChart;
private _updateChart;
private _getChartLabels;
private _getChartData;
private _getTimeScaleUnit;
private _getDurationUnit;
private _getMaxDurationSeconds;
private _getJobDurationSeconds;
private _emitFocussedExecutionId;
private _getMinMaxExecutionTuple;
private _getMinMaxExecutionTupleAdjusted;
private _getTimeUnitMilliseconds;
static ɵfac: i0.ɵɵFactoryDeclaration<ExecutionDurationChartComponent, never>;
static ɵcmp: i0.ɵɵComponentDeclaration<ExecutionDurationChartComponent, "lib-execution-duration-chart", never, { "jobExecutions": "jobExecutions"; "chartZoomed": "chartZoomed"; }, { "executionIdFocused": "executionIdFocused"; "zoomPeriodChanged": "zoomPeriodChanged"; }, never, never>;
}
export {};