@tetacom/svg-charts 1.1.9 → 1.1.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/chart/base/series-base.component.d.ts +4 -6
- package/chart/chart/chart.component.d.ts +10 -3
- package/chart/chart-container/annotation/annotation.component.d.ts +22 -13
- package/chart/chart-container/chart-container.component.d.ts +3 -3
- package/chart/chart-container/gridlines/gridlines.component.d.ts +3 -1
- package/chart/chart-container/plotband/plot-band.component.d.ts +5 -2
- package/chart/chart-container/plotline/plotline.component.d.ts +4 -2
- package/chart/chart-container/series/area-series/area-series.component.d.ts +6 -14
- package/chart/chart-container/series/line/line-series.component.d.ts +3 -14
- package/chart/chart-container/series/linear-series-base.d.ts +30 -0
- package/chart/chart-container/series-host/series-host.component.d.ts +4 -8
- package/chart/chart-container/tooltip/tooltip.component.d.ts +1 -1
- package/chart/chart.module.d.ts +18 -17
- package/chart/directives/zoomable.directive.d.ts +11 -4
- package/chart/model/annotation.d.ts +8 -18
- package/chart/model/i-chart-config.d.ts +7 -1
- package/chart/model/series.d.ts +1 -0
- package/chart/service/brush.service.d.ts +3 -2
- package/chart/service/chart.service.d.ts +8 -0
- package/esm2020/chart/base/series-base.component.mjs +8 -6
- package/esm2020/chart/chart/chart.component.mjs +75 -19
- package/esm2020/chart/chart-container/annotation/annotation.component.mjs +66 -44
- package/esm2020/chart/chart-container/chart-container.component.mjs +11 -7
- package/esm2020/chart/chart-container/gridlines/gridlines.component.mjs +5 -3
- package/esm2020/chart/chart-container/plotband/plot-band.component.mjs +12 -6
- package/esm2020/chart/chart-container/plotline/plotline.component.mjs +7 -3
- package/esm2020/chart/chart-container/series/area-series/area-series.component.mjs +13 -138
- package/esm2020/chart/chart-container/series/block-series/block-series.component.mjs +2 -2
- package/esm2020/chart/chart-container/series/line/line-series.component.mjs +3 -159
- package/esm2020/chart/chart-container/series/linear-series-base.mjs +188 -0
- package/esm2020/chart/chart-container/series-host/series-host.component.mjs +9 -24
- package/esm2020/chart/chart-container/tooltip/tooltip.component.mjs +5 -5
- package/esm2020/chart/chart.module.mjs +4 -1
- package/esm2020/chart/default/default-chart-config.mjs +4 -2
- package/esm2020/chart/directives/brushable.directive.mjs +3 -2
- package/esm2020/chart/directives/zoomable.directive.mjs +81 -53
- package/esm2020/chart/model/annotation.mjs +2 -13
- package/esm2020/chart/model/i-chart-config.mjs +1 -1
- package/esm2020/chart/model/series.mjs +1 -1
- package/esm2020/chart/service/broadcast.service.mjs +9 -3
- package/esm2020/chart/service/brush.service.mjs +44 -18
- package/esm2020/chart/service/chart.service.mjs +17 -3
- package/esm2020/chart/service/scale.service.mjs +9 -3
- package/esm2020/chart/service/zoom.service.mjs +5 -2
- package/fesm2015/tetacom-svg-charts.mjs +404 -352
- package/fesm2015/tetacom-svg-charts.mjs.map +1 -1
- package/fesm2020/tetacom-svg-charts.mjs +387 -332
- package/fesm2020/tetacom-svg-charts.mjs.map +1 -1
- package/package.json +1 -1
|
@@ -4,7 +4,6 @@ import { Series } from '../model/series';
|
|
|
4
4
|
import { BasePoint } from '../model/base-point';
|
|
5
5
|
import { ScaleService } from '../service/scale.service';
|
|
6
6
|
import { ZoomService } from '../service/zoom.service';
|
|
7
|
-
import { Observable } from 'rxjs';
|
|
8
7
|
import { IChartConfig } from '../model/i-chart-config';
|
|
9
8
|
import * as i0 from "@angular/core";
|
|
10
9
|
export declare class SeriesBaseComponent<T extends BasePoint> implements OnInit {
|
|
@@ -13,15 +12,14 @@ export declare class SeriesBaseComponent<T extends BasePoint> implements OnInit
|
|
|
13
12
|
protected scaleService: ScaleService;
|
|
14
13
|
protected zoomService: ZoomService;
|
|
15
14
|
protected element: ElementRef;
|
|
16
|
-
config: IChartConfig;
|
|
15
|
+
set config(config: IChartConfig);
|
|
16
|
+
get config(): IChartConfig;
|
|
17
17
|
set series(series: Series<T>);
|
|
18
18
|
get series(): Series<T>;
|
|
19
|
-
size: DOMRect;
|
|
20
|
-
rect: any;
|
|
21
|
-
zoom: Observable<any>;
|
|
22
19
|
protected _series: Series<T>;
|
|
20
|
+
protected _config: IChartConfig;
|
|
23
21
|
constructor(svc: ChartService, cdr: ChangeDetectorRef, scaleService: ScaleService, zoomService: ZoomService, element: ElementRef);
|
|
24
22
|
ngOnInit(): void;
|
|
25
23
|
static ɵfac: i0.ɵɵFactoryDeclaration<SeriesBaseComponent<any>, never>;
|
|
26
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<SeriesBaseComponent<any>, "ng-component", never, { "config": "config"; "series": "series";
|
|
24
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<SeriesBaseComponent<any>, "ng-component", never, { "config": "config"; "series": "series"; }, {}, never, never>;
|
|
27
25
|
}
|
|
@@ -4,18 +4,22 @@ import { IChartConfig } from '../model/i-chart-config';
|
|
|
4
4
|
import { BasePoint } from '../model/base-point';
|
|
5
5
|
import { Series } from '../model/series';
|
|
6
6
|
import { ZoomService } from '../service/zoom.service';
|
|
7
|
+
import { ScaleService } from '../service/scale.service';
|
|
7
8
|
import { IChartEvent } from '../model/i-chart-event';
|
|
8
9
|
import { PlotLine } from '../model/plot-line';
|
|
9
10
|
import { PlotBand } from '../model/plot-band';
|
|
10
11
|
import { IPointMove } from '../model/i-point-move';
|
|
11
12
|
import { Observable } from 'rxjs';
|
|
13
|
+
import { Annotation } from '../model/annotation';
|
|
12
14
|
import * as i0 from "@angular/core";
|
|
13
15
|
export declare class ChartComponent implements OnInit, OnChanges, OnDestroy {
|
|
14
|
-
|
|
16
|
+
chartService: ChartService;
|
|
15
17
|
private _zoomService;
|
|
18
|
+
private _scaleService;
|
|
16
19
|
legendSeries: Array<Series<BasePoint>>;
|
|
17
20
|
hasSeriesData: Observable<boolean>;
|
|
18
21
|
svcConfig: Observable<IChartConfig>;
|
|
22
|
+
pointerMove: EventEmitter<IChartEvent<Map<number, number>>>;
|
|
19
23
|
plotBandsMove: EventEmitter<IChartEvent<PlotBand>>;
|
|
20
24
|
plotBandClick: EventEmitter<IChartEvent<PlotBand>>;
|
|
21
25
|
plotBandContextMenu: EventEmitter<IChartEvent<PlotBand>>;
|
|
@@ -23,13 +27,16 @@ export declare class ChartComponent implements OnInit, OnChanges, OnDestroy {
|
|
|
23
27
|
pointMove: EventEmitter<IChartEvent<IPointMove>>;
|
|
24
28
|
chartClick: EventEmitter<IChartEvent<BasePoint>>;
|
|
25
29
|
chartContextMenu: EventEmitter<IChartEvent<BasePoint>>;
|
|
30
|
+
annotationContextMenu: EventEmitter<IChartEvent<Annotation>>;
|
|
31
|
+
annotationClick: EventEmitter<IChartEvent<Annotation>>;
|
|
32
|
+
annotationMove: EventEmitter<IChartEvent<Annotation>>;
|
|
26
33
|
set config(config: IChartConfig);
|
|
27
34
|
private _alive;
|
|
28
|
-
constructor(
|
|
35
|
+
constructor(chartService: ChartService, _zoomService: ZoomService, _scaleService: ScaleService);
|
|
29
36
|
ngOnChanges(changes: SimpleChanges): void;
|
|
30
37
|
ngOnInit(): void;
|
|
31
38
|
ngAfterViewInit(): void;
|
|
32
39
|
ngOnDestroy(): void;
|
|
33
40
|
static ɵfac: i0.ɵɵFactoryDeclaration<ChartComponent, never>;
|
|
34
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<ChartComponent, "teta-svg-chart", never, { "config": "config"; }, { "plotBandsMove": "plotBandsMove"; "plotBandClick": "plotBandClick"; "plotBandContextMenu": "plotBandContextMenu"; "plotLinesMove": "plotLinesMove"; "pointMove": "pointMove"; "chartClick": "chartClick"; "chartContextMenu": "chartContextMenu"; }, never, never>;
|
|
41
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<ChartComponent, "teta-svg-chart", never, { "config": "config"; }, { "pointerMove": "pointerMove"; "plotBandsMove": "plotBandsMove"; "plotBandClick": "plotBandClick"; "plotBandContextMenu": "plotBandContextMenu"; "plotLinesMove": "plotLinesMove"; "pointMove": "pointMove"; "chartClick": "chartClick"; "chartContextMenu": "chartContextMenu"; "annotationContextMenu": "annotationContextMenu"; "annotationClick": "annotationClick"; "annotationMove": "annotationMove"; }, never, never>;
|
|
35
42
|
}
|
|
@@ -1,18 +1,27 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ChangeDetectorRef, ElementRef, OnDestroy } from '@angular/core';
|
|
2
2
|
import { Annotation } from '../../model/annotation';
|
|
3
|
+
import { Observable } from 'rxjs';
|
|
4
|
+
import { ScaleService } from '../../service/scale.service';
|
|
5
|
+
import { ChartService } from '../../service/chart.service';
|
|
3
6
|
import * as i0 from "@angular/core";
|
|
4
|
-
export declare class AnnotationComponent implements
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
7
|
+
export declare class AnnotationComponent implements OnDestroy {
|
|
8
|
+
private scaleService;
|
|
9
|
+
private cdr;
|
|
10
|
+
private chartService;
|
|
11
|
+
set annotation(annotation: Annotation);
|
|
12
|
+
get annotation(): Annotation;
|
|
13
|
+
set node(node: ElementRef);
|
|
14
|
+
get node(): ElementRef;
|
|
15
|
+
x: Observable<any>;
|
|
16
|
+
y: Observable<any>;
|
|
17
|
+
private drag;
|
|
18
|
+
private _annotation;
|
|
9
19
|
private _node;
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
ngOnChanges(changes: SimpleChanges): void;
|
|
20
|
+
constructor(scaleService: ScaleService, cdr: ChangeDetectorRef, chartService: ChartService);
|
|
21
|
+
click(event: MouseEvent): void;
|
|
22
|
+
contextMenu(event: MouseEvent): void;
|
|
23
|
+
ngOnDestroy(): void;
|
|
24
|
+
private init;
|
|
16
25
|
static ɵfac: i0.ɵɵFactoryDeclaration<AnnotationComponent, never>;
|
|
17
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<AnnotationComponent, "[teta-annotation]", never, { "
|
|
26
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<AnnotationComponent, "[teta-annotation]", never, { "annotation": "annotation"; }, {}, never, never>;
|
|
18
27
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ChangeDetectorRef, ElementRef, OnInit } from '@angular/core';
|
|
1
|
+
import { ChangeDetectorRef, ElementRef, OnDestroy, OnInit } from '@angular/core';
|
|
2
2
|
import { IChartConfig } from '../model/i-chart-config';
|
|
3
3
|
import { ChartService } from '../service/chart.service';
|
|
4
4
|
import { Observable } from 'rxjs';
|
|
@@ -6,7 +6,7 @@ import { Axis } from '../core/axis/axis';
|
|
|
6
6
|
import { ScaleService } from '../service/scale.service';
|
|
7
7
|
import { ZoomService } from '../service/zoom.service';
|
|
8
8
|
import * as i0 from "@angular/core";
|
|
9
|
-
export declare class ChartContainerComponent implements OnInit {
|
|
9
|
+
export declare class ChartContainerComponent implements OnInit, OnDestroy {
|
|
10
10
|
private _svc;
|
|
11
11
|
private _cdr;
|
|
12
12
|
private _scaleService;
|
|
@@ -25,7 +25,7 @@ export declare class ChartContainerComponent implements OnInit {
|
|
|
25
25
|
private filterPositionMap;
|
|
26
26
|
constructor(_svc: ChartService, _cdr: ChangeDetectorRef, _scaleService: ScaleService, _zoomService: ZoomService, _elementRef: ElementRef);
|
|
27
27
|
ngOnInit(): void;
|
|
28
|
-
|
|
28
|
+
ngOnDestroy(): void;
|
|
29
29
|
private sumSize;
|
|
30
30
|
getTranslate(axis?: Axis, size?: DOMRect): Observable<string>;
|
|
31
31
|
identify(index: any, item: any): any;
|
|
@@ -1,14 +1,16 @@
|
|
|
1
1
|
import { SimpleChanges } from '@angular/core';
|
|
2
|
+
import { IChartConfig } from "../../model/i-chart-config";
|
|
2
3
|
import * as i0 from "@angular/core";
|
|
3
4
|
export declare class GridlinesComponent {
|
|
4
5
|
size: DOMRect;
|
|
5
6
|
xScaleMap: Map<number, any>;
|
|
6
7
|
yScaleMap: Map<number, any>;
|
|
8
|
+
config: IChartConfig;
|
|
7
9
|
tickYValues: number[];
|
|
8
10
|
tickXValues: number[];
|
|
9
11
|
constructor();
|
|
10
12
|
draw(): void;
|
|
11
13
|
ngOnChanges(changes: SimpleChanges): void;
|
|
12
14
|
static ɵfac: i0.ɵɵFactoryDeclaration<GridlinesComponent, never>;
|
|
13
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<GridlinesComponent, "[teta-gridlines]", never, { "size": "size"; "xScaleMap": "xScaleMap"; "yScaleMap": "yScaleMap"; }, {}, never, never>;
|
|
15
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<GridlinesComponent, "[teta-gridlines]", never, { "size": "size"; "xScaleMap": "xScaleMap"; "yScaleMap": "yScaleMap"; "config": "config"; }, {}, never, never>;
|
|
14
16
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { AfterViewInit, ChangeDetectorRef, ElementRef } from '@angular/core';
|
|
1
|
+
import { AfterViewInit, ChangeDetectorRef, ElementRef, OnDestroy } from '@angular/core';
|
|
2
2
|
import { PlotBand } from '../../model/plot-band';
|
|
3
3
|
import { ScaleService } from '../../service/scale.service';
|
|
4
4
|
import { Axis } from '../../core/axis/axis';
|
|
@@ -7,7 +7,7 @@ import { AxisOrientation } from '../../model/enum/axis-orientation';
|
|
|
7
7
|
import { IChartEvent } from '../../model/i-chart-event';
|
|
8
8
|
import { ChartService } from '../../service/chart.service';
|
|
9
9
|
import * as i0 from "@angular/core";
|
|
10
|
-
export declare class PlotBandComponent implements AfterViewInit {
|
|
10
|
+
export declare class PlotBandComponent implements AfterViewInit, OnDestroy {
|
|
11
11
|
private scaleService;
|
|
12
12
|
private zoomService;
|
|
13
13
|
private chartService;
|
|
@@ -18,12 +18,15 @@ export declare class PlotBandComponent implements AfterViewInit {
|
|
|
18
18
|
scale: any;
|
|
19
19
|
size: DOMRect;
|
|
20
20
|
orientation: typeof AxisOrientation;
|
|
21
|
+
resizeElements: any;
|
|
22
|
+
dragElements: any;
|
|
21
23
|
domain: number[];
|
|
22
24
|
constructor(scaleService: ScaleService, zoomService: ZoomService, chartService: ChartService, cdr: ChangeDetectorRef, element: ElementRef);
|
|
23
25
|
click(event: MouseEvent): void;
|
|
24
26
|
contextMenu(event: MouseEvent): void;
|
|
25
27
|
emit(event: IChartEvent<PlotBand>): void;
|
|
26
28
|
ngAfterViewInit(): void;
|
|
29
|
+
ngOnDestroy(): void;
|
|
27
30
|
get bandSize(): number;
|
|
28
31
|
get height(): number;
|
|
29
32
|
get width(): number;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ChangeDetectorRef, ElementRef, OnInit } from '@angular/core';
|
|
1
|
+
import { ChangeDetectorRef, ElementRef, OnDestroy, OnInit } from '@angular/core';
|
|
2
2
|
import { PlotLine } from '../../model/plot-line';
|
|
3
3
|
import { Axis } from '../../core/axis/axis';
|
|
4
4
|
import { AxisOrientation } from '../../model/enum/axis-orientation';
|
|
@@ -7,7 +7,7 @@ import { ScaleService } from '../../service/scale.service';
|
|
|
7
7
|
import { IChartEvent } from '../../model/i-chart-event';
|
|
8
8
|
import { ChartService } from '../../service/chart.service';
|
|
9
9
|
import * as i0 from "@angular/core";
|
|
10
|
-
export declare class PlotlineComponent implements OnInit {
|
|
10
|
+
export declare class PlotlineComponent implements OnInit, OnDestroy {
|
|
11
11
|
private cdr;
|
|
12
12
|
private zoomService;
|
|
13
13
|
private scaleService;
|
|
@@ -18,9 +18,11 @@ export declare class PlotlineComponent implements OnInit {
|
|
|
18
18
|
axis: Axis;
|
|
19
19
|
scale: any;
|
|
20
20
|
orientation: typeof AxisOrientation;
|
|
21
|
+
dragElements: any;
|
|
21
22
|
private _domain;
|
|
22
23
|
constructor(cdr: ChangeDetectorRef, zoomService: ZoomService, scaleService: ScaleService, chartService: ChartService, element: ElementRef);
|
|
23
24
|
ngOnInit(): void;
|
|
25
|
+
ngOnDestroy(): void;
|
|
24
26
|
emit(event: IChartEvent<PlotLine>): void;
|
|
25
27
|
get value(): any;
|
|
26
28
|
get height(): number;
|
|
@@ -1,32 +1,24 @@
|
|
|
1
|
-
import { ChangeDetectorRef, ElementRef, OnInit } from '@angular/core';
|
|
2
|
-
import { SeriesBaseComponent } from '../../../base/series-base.component';
|
|
1
|
+
import { AfterViewInit, ChangeDetectorRef, ElementRef, OnDestroy, OnInit } from '@angular/core';
|
|
3
2
|
import { BasePoint } from '../../../model/base-point';
|
|
4
3
|
import { ChartService } from '../../../service/chart.service';
|
|
5
4
|
import { ScaleService } from '../../../service/scale.service';
|
|
6
5
|
import { ZoomService } from '../../../service/zoom.service';
|
|
7
|
-
import { Observable } from 'rxjs';
|
|
8
6
|
import { FillDirection, FillType } from '../../../model/enum/fill-type';
|
|
7
|
+
import { LinearSeriesBase } from '../linear-series-base';
|
|
8
|
+
import { Observable } from 'rxjs';
|
|
9
9
|
import * as i0 from "@angular/core";
|
|
10
|
-
export declare class AreaSeriesComponent<T extends BasePoint> extends
|
|
10
|
+
export declare class AreaSeriesComponent<T extends BasePoint> extends LinearSeriesBase<T> implements OnInit, AfterViewInit, OnDestroy {
|
|
11
11
|
protected svc: ChartService;
|
|
12
12
|
protected cdr: ChangeDetectorRef;
|
|
13
13
|
protected scaleService: ScaleService;
|
|
14
14
|
protected zoomService: ZoomService;
|
|
15
15
|
protected element: ElementRef;
|
|
16
|
-
|
|
17
|
-
display: Observable<number>;
|
|
18
|
-
path: Observable<string>;
|
|
19
|
-
svgElement: SVGGeometryElement;
|
|
20
|
-
x: any;
|
|
21
|
-
y: any;
|
|
22
|
-
id: string;
|
|
16
|
+
areaPath: Observable<string>;
|
|
23
17
|
fillDirection: typeof FillDirection;
|
|
24
18
|
fillType: typeof FillType;
|
|
19
|
+
id: string;
|
|
25
20
|
constructor(svc: ChartService, cdr: ChangeDetectorRef, scaleService: ScaleService, zoomService: ZoomService, element: ElementRef);
|
|
26
21
|
ngOnInit(): void;
|
|
27
|
-
ngAfterViewInit(): void;
|
|
28
|
-
getMarkers(): T[];
|
|
29
|
-
getTransform(event: any, x: Map<number, any>, y: Map<number, any>): Pick<BasePoint, 'x' | 'y'>;
|
|
30
22
|
static ɵfac: i0.ɵɵFactoryDeclaration<AreaSeriesComponent<any>, never>;
|
|
31
23
|
static ɵcmp: i0.ɵɵComponentDeclaration<AreaSeriesComponent<any>, "svg:svg[teta-area-series]", never, {}, {}, never, never>;
|
|
32
24
|
}
|
|
@@ -1,28 +1,17 @@
|
|
|
1
|
-
import { AfterViewInit, ChangeDetectorRef, ElementRef, OnInit } from '@angular/core';
|
|
2
|
-
import { SeriesBaseComponent } from '../../../base/series-base.component';
|
|
1
|
+
import { AfterViewInit, ChangeDetectorRef, ElementRef, OnDestroy, OnInit } from '@angular/core';
|
|
3
2
|
import { ChartService } from '../../../service/chart.service';
|
|
4
3
|
import { BasePoint } from '../../../model/base-point';
|
|
5
4
|
import { ScaleService } from '../../../service/scale.service';
|
|
6
|
-
import { Observable } from 'rxjs';
|
|
7
5
|
import { ZoomService } from '../../../service/zoom.service';
|
|
6
|
+
import { LinearSeriesBase } from '../linear-series-base';
|
|
8
7
|
import * as i0 from "@angular/core";
|
|
9
|
-
export declare class LineSeriesComponent<T extends BasePoint> extends
|
|
8
|
+
export declare class LineSeriesComponent<T extends BasePoint> extends LinearSeriesBase<T> implements OnInit, AfterViewInit, OnDestroy {
|
|
10
9
|
protected svc: ChartService;
|
|
11
10
|
protected cdr: ChangeDetectorRef;
|
|
12
11
|
protected scaleService: ScaleService;
|
|
13
12
|
protected zoomService: ZoomService;
|
|
14
13
|
protected element: ElementRef;
|
|
15
|
-
transform: Observable<Pick<BasePoint, 'x' | 'y'>>;
|
|
16
|
-
display: Observable<number>;
|
|
17
|
-
path: Observable<string>;
|
|
18
|
-
svgElement: SVGGeometryElement;
|
|
19
|
-
x: any;
|
|
20
|
-
y: any;
|
|
21
14
|
constructor(svc: ChartService, cdr: ChangeDetectorRef, scaleService: ScaleService, zoomService: ZoomService, element: ElementRef);
|
|
22
|
-
ngOnInit(): void;
|
|
23
|
-
ngAfterViewInit(): void;
|
|
24
|
-
getMarkers(): T[];
|
|
25
|
-
getTransform(event: any, scaleX: Map<number, any>, scaleY: Map<number, any>): Pick<BasePoint, 'x' | 'y'>;
|
|
26
15
|
static ɵfac: i0.ɵɵFactoryDeclaration<LineSeriesComponent<any>, never>;
|
|
27
16
|
static ɵcmp: i0.ɵɵComponentDeclaration<LineSeriesComponent<any>, "svg:svg[teta-line-series]", never, {}, {}, never, never>;
|
|
28
17
|
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { BasePoint } from '../../model/base-point';
|
|
2
|
+
import { SeriesBaseComponent } from '../../base/series-base.component';
|
|
3
|
+
import { AfterViewInit, ChangeDetectorRef, ElementRef, OnDestroy, OnInit } from '@angular/core';
|
|
4
|
+
import { Observable } from 'rxjs';
|
|
5
|
+
import { ChartService } from '../../service/chart.service';
|
|
6
|
+
import { ScaleService } from '../../service/scale.service';
|
|
7
|
+
import { ZoomService } from '../../service/zoom.service';
|
|
8
|
+
import * as i0 from "@angular/core";
|
|
9
|
+
export declare class LinearSeriesBase<T extends BasePoint> extends SeriesBaseComponent<T> implements OnInit, AfterViewInit, OnDestroy {
|
|
10
|
+
protected svc: ChartService;
|
|
11
|
+
protected cdr: ChangeDetectorRef;
|
|
12
|
+
protected scaleService: ScaleService;
|
|
13
|
+
protected zoomService: ZoomService;
|
|
14
|
+
protected element: ElementRef;
|
|
15
|
+
transform: Observable<Pick<BasePoint, 'x' | 'y'>>;
|
|
16
|
+
display: Observable<number>;
|
|
17
|
+
path: Observable<string>;
|
|
18
|
+
svgElement: SVGGeometryElement;
|
|
19
|
+
x: any;
|
|
20
|
+
y: any;
|
|
21
|
+
markers: any;
|
|
22
|
+
constructor(svc: ChartService, cdr: ChangeDetectorRef, scaleService: ScaleService, zoomService: ZoomService, element: ElementRef);
|
|
23
|
+
ngOnInit(): void;
|
|
24
|
+
ngOnDestroy(): void;
|
|
25
|
+
ngAfterViewInit(): void;
|
|
26
|
+
getMarkers(): T[];
|
|
27
|
+
getTransform(event: any, scaleX: Map<number, any>, scaleY: Map<number, any>): Pick<BasePoint, 'x' | 'y'>;
|
|
28
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<LinearSeriesBase<any>, never>;
|
|
29
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<LinearSeriesBase<any>, "ng-component", never, {}, {}, never, never>;
|
|
30
|
+
}
|
|
@@ -1,22 +1,18 @@
|
|
|
1
|
-
import { OnInit, SimpleChanges, ViewContainerRef } from '@angular/core';
|
|
1
|
+
import { OnDestroy, OnInit, SimpleChanges, ViewContainerRef } from '@angular/core';
|
|
2
2
|
import { Series } from '../../model/series';
|
|
3
3
|
import { BasePoint } from '../../model/base-point';
|
|
4
|
-
import { ChartService } from '../../service/chart.service';
|
|
5
4
|
import { IChartConfig } from '../../model/i-chart-config';
|
|
6
5
|
import * as i0 from "@angular/core";
|
|
7
|
-
export declare class SeriesHostComponent<T extends BasePoint> implements OnInit {
|
|
6
|
+
export declare class SeriesHostComponent<T extends BasePoint> implements OnInit, OnDestroy {
|
|
8
7
|
private viewContainerRef;
|
|
9
|
-
private chartService;
|
|
10
8
|
config: IChartConfig;
|
|
11
9
|
series: Series<T>;
|
|
12
|
-
size: DOMRect;
|
|
13
|
-
rect: any;
|
|
14
10
|
private _init;
|
|
15
11
|
private _componentRef;
|
|
16
|
-
constructor(viewContainerRef: ViewContainerRef
|
|
12
|
+
constructor(viewContainerRef: ViewContainerRef);
|
|
17
13
|
ngOnInit(): void;
|
|
18
14
|
ngOnDestroy(): void;
|
|
19
15
|
ngOnChanges(changes: SimpleChanges): void;
|
|
20
16
|
static ɵfac: i0.ɵɵFactoryDeclaration<SeriesHostComponent<any>, never>;
|
|
21
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<SeriesHostComponent<any>, "[teta-series-host]", never, { "config": "config"; "series": "series";
|
|
17
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<SeriesHostComponent<any>, "[teta-series-host]", never, { "config": "config"; "series": "series"; }, {}, never, never>;
|
|
22
18
|
}
|
|
@@ -23,7 +23,7 @@ export declare class TooltipComponent implements OnInit {
|
|
|
23
23
|
display: Observable<number>;
|
|
24
24
|
constructor(svc: ChartService, cdr: ChangeDetectorRef, zoomService: ZoomService, sanitizer: DomSanitizer, _zone: NgZone);
|
|
25
25
|
ngOnInit(): void;
|
|
26
|
-
private
|
|
26
|
+
private getPosition;
|
|
27
27
|
static ɵfac: i0.ɵɵFactoryDeclaration<TooltipComponent, never>;
|
|
28
28
|
static ɵcmp: i0.ɵɵComponentDeclaration<TooltipComponent, "teta-tooltip", never, { "size": "size"; "config": "config"; }, {}, never, never>;
|
|
29
29
|
}
|
package/chart/chart.module.d.ts
CHANGED
|
@@ -4,24 +4,25 @@ import * as i2 from "./chart-container/series-host/series-host.component";
|
|
|
4
4
|
import * as i3 from "./chart-container/chart-container.component";
|
|
5
5
|
import * as i4 from "./legend/legend.component";
|
|
6
6
|
import * as i5 from "./base/series-base.component";
|
|
7
|
-
import * as i6 from "./chart-container/series/
|
|
8
|
-
import * as i7 from "./chart-container/
|
|
9
|
-
import * as i8 from "./chart-container/
|
|
10
|
-
import * as i9 from "./chart-container/
|
|
11
|
-
import * as i10 from "./chart-container/
|
|
12
|
-
import * as i11 from "./chart-container/
|
|
13
|
-
import * as i12 from "./chart-container/
|
|
14
|
-
import * as i13 from "./chart-container/
|
|
15
|
-
import * as i14 from "./
|
|
16
|
-
import * as i15 from "./directives/
|
|
17
|
-
import * as i16 from "./
|
|
18
|
-
import * as i17 from "./chart-container/series/
|
|
19
|
-
import * as i18 from "./chart-container/series/
|
|
20
|
-
import * as i19 from "./chart-container/series/block-
|
|
21
|
-
import * as i20 from "./chart-container/
|
|
22
|
-
import * as i21 from "
|
|
7
|
+
import * as i6 from "./chart-container/series/linear-series-base";
|
|
8
|
+
import * as i7 from "./chart-container/series/line/line-series.component";
|
|
9
|
+
import * as i8 from "./chart-container/gridlines/gridlines.component";
|
|
10
|
+
import * as i9 from "./chart-container/x-axis/x-axis.component";
|
|
11
|
+
import * as i10 from "./chart-container/y-axis/y-axis.component";
|
|
12
|
+
import * as i11 from "./chart-container/plotline/plotline.component";
|
|
13
|
+
import * as i12 from "./chart-container/plotband/plot-band.component";
|
|
14
|
+
import * as i13 from "./chart-container/series/bar/bar-series.component";
|
|
15
|
+
import * as i14 from "./chart-container/tooltip/tooltip.component";
|
|
16
|
+
import * as i15 from "./directives/zoomable.directive";
|
|
17
|
+
import * as i16 from "./directives/brushable.directive";
|
|
18
|
+
import * as i17 from "./chart-container/series/area-series/area-series.component";
|
|
19
|
+
import * as i18 from "./chart-container/series/scatter-series/scatter-series.component";
|
|
20
|
+
import * as i19 from "./chart-container/series/block-series/block-series.component";
|
|
21
|
+
import * as i20 from "./chart-container/series/block-area-series/block-area-series.component";
|
|
22
|
+
import * as i21 from "./chart-container/annotation/annotation.component";
|
|
23
|
+
import * as i22 from "@angular/common";
|
|
23
24
|
export declare class ChartModule {
|
|
24
25
|
static ɵfac: i0.ɵɵFactoryDeclaration<ChartModule, never>;
|
|
25
|
-
static ɵmod: i0.ɵɵNgModuleDeclaration<ChartModule, [typeof i1.ChartComponent, typeof i2.SeriesHostComponent, typeof i3.ChartContainerComponent, typeof i4.LegendComponent, typeof i5.SeriesBaseComponent, typeof i6.
|
|
26
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<ChartModule, [typeof i1.ChartComponent, typeof i2.SeriesHostComponent, typeof i3.ChartContainerComponent, typeof i4.LegendComponent, typeof i5.SeriesBaseComponent, typeof i6.LinearSeriesBase, typeof i7.LineSeriesComponent, typeof i8.GridlinesComponent, typeof i9.XAxisComponent, typeof i10.YAxisComponent, typeof i11.PlotlineComponent, typeof i12.PlotBandComponent, typeof i13.BarSeriesComponent, typeof i14.TooltipComponent, typeof i15.ZoomableDirective, typeof i16.BrushableDirective, typeof i17.AreaSeriesComponent, typeof i18.ScatterSeriesComponent, typeof i19.BlockSeriesComponent, typeof i20.BlockAreaSeriesComponent, typeof i21.AnnotationComponent], [typeof i22.CommonModule], [typeof i1.ChartComponent, typeof i4.LegendComponent, typeof i5.SeriesBaseComponent, typeof i7.LineSeriesComponent, typeof i13.BarSeriesComponent, typeof i18.ScatterSeriesComponent, typeof i17.AreaSeriesComponent, typeof i19.BlockSeriesComponent, typeof i20.BlockAreaSeriesComponent]>;
|
|
26
27
|
static ɵinj: i0.ɵɵInjectorDeclaration<ChartModule>;
|
|
27
28
|
}
|
|
@@ -1,13 +1,15 @@
|
|
|
1
|
-
import { ElementRef, OnDestroy, SimpleChanges } from '@angular/core';
|
|
1
|
+
import { ElementRef, NgZone, OnDestroy, SimpleChanges } from '@angular/core';
|
|
2
2
|
import { ZoomService } from '../service/zoom.service';
|
|
3
3
|
import { IChartConfig } from '../model/i-chart-config';
|
|
4
4
|
import { Axis } from '../core/axis/axis';
|
|
5
|
-
import {
|
|
5
|
+
import { D3ZoomEvent } from 'd3';
|
|
6
|
+
import { BroadcastService } from '../service/broadcast.service';
|
|
6
7
|
import * as i0 from "@angular/core";
|
|
7
8
|
export declare class ZoomableDirective implements OnDestroy {
|
|
8
9
|
private elementRef;
|
|
9
10
|
private zoomService;
|
|
10
11
|
private broadcastService;
|
|
12
|
+
private zone;
|
|
11
13
|
config?: IChartConfig;
|
|
12
14
|
axis?: Axis;
|
|
13
15
|
size?: DOMRect;
|
|
@@ -17,11 +19,16 @@ export declare class ZoomableDirective implements OnDestroy {
|
|
|
17
19
|
private zoomAxis;
|
|
18
20
|
private zoom;
|
|
19
21
|
private alive;
|
|
20
|
-
|
|
22
|
+
private currentTransform;
|
|
23
|
+
private currentSelection;
|
|
24
|
+
private originScale;
|
|
25
|
+
constructor(elementRef: ElementRef, zoomService: ZoomService, broadcastService: BroadcastService, zone: NgZone);
|
|
21
26
|
ngOnInit(): void;
|
|
22
|
-
ngAfterViewInit(): void;
|
|
23
27
|
ngOnChanges(changes: SimpleChanges): void;
|
|
28
|
+
zoomed: (event: D3ZoomEvent<any, any>) => void;
|
|
29
|
+
ngAfterViewInit(): void;
|
|
24
30
|
ngOnDestroy(): void;
|
|
31
|
+
private updateZoom;
|
|
25
32
|
static ɵfac: i0.ɵɵFactoryDeclaration<ZoomableDirective, never>;
|
|
26
33
|
static ɵdir: i0.ɵɵDirectiveDeclaration<ZoomableDirective, "[tetaZoomable]", never, { "config": "config"; "axis": "axis"; "size": "size"; "brushScale": "brushScale"; }, {}, never>;
|
|
27
34
|
}
|
|
@@ -1,31 +1,21 @@
|
|
|
1
|
-
import { annotationBadge, annotationCallout, annotationCalloutCircle, annotationCalloutCurve, annotationCalloutElbow, annotationCalloutRect, annotationCustomType, annotationLabel, annotationXYThreshold } from 'd3-svg-annotation';
|
|
2
1
|
import { BasePoint } from './base-point';
|
|
3
2
|
import { SvgAttributes } from './svg-attributes';
|
|
4
|
-
|
|
5
|
-
declare type AnnotationTypes = typeof annotationMap[number];
|
|
3
|
+
import { TemplateRef } from '@angular/core';
|
|
6
4
|
export interface Annotation {
|
|
5
|
+
id?: number | string;
|
|
7
6
|
point: BasePoint;
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
enabled?: boolean;
|
|
7
|
+
draggable?: boolean;
|
|
8
|
+
yAxisIndex?: number;
|
|
9
|
+
xAxisIndex?: number;
|
|
12
10
|
dx?: number;
|
|
13
11
|
dy?: number;
|
|
14
12
|
className?: string;
|
|
15
|
-
connector?: {
|
|
16
|
-
end: string;
|
|
17
|
-
};
|
|
18
13
|
note?: {
|
|
19
14
|
label?: string;
|
|
20
15
|
title?: string;
|
|
21
|
-
|
|
22
|
-
top?: number;
|
|
23
|
-
right?: number;
|
|
24
|
-
bottom?: number;
|
|
25
|
-
left?: number;
|
|
26
|
-
};
|
|
27
|
-
bgRadius?: boolean;
|
|
16
|
+
hint?: string;
|
|
28
17
|
};
|
|
29
18
|
style?: SvgAttributes;
|
|
19
|
+
data?: any;
|
|
20
|
+
template?: TemplateRef<any>;
|
|
30
21
|
}
|
|
31
|
-
export {};
|
|
@@ -14,12 +14,14 @@ export interface IChartConfig {
|
|
|
14
14
|
type: ZoomType;
|
|
15
15
|
axisIndex?: number;
|
|
16
16
|
syncChannel?: string;
|
|
17
|
+
limit?: number;
|
|
17
18
|
};
|
|
18
19
|
brush?: {
|
|
19
20
|
enable?: boolean;
|
|
20
21
|
type: BrushType;
|
|
21
22
|
from?: number;
|
|
22
23
|
to?: number;
|
|
24
|
+
limit?: number;
|
|
23
25
|
};
|
|
24
26
|
legend?: {
|
|
25
27
|
enable?: boolean;
|
|
@@ -30,7 +32,11 @@ export interface IChartConfig {
|
|
|
30
32
|
xAxis: AxisOptions[];
|
|
31
33
|
yAxis: AxisOptions[];
|
|
32
34
|
annotations?: Annotation[];
|
|
33
|
-
gridLines?:
|
|
35
|
+
gridLines?: {
|
|
36
|
+
enable?: boolean;
|
|
37
|
+
showX?: boolean;
|
|
38
|
+
showY?: boolean;
|
|
39
|
+
};
|
|
34
40
|
width?: number;
|
|
35
41
|
height?: number;
|
|
36
42
|
}
|
package/chart/model/series.d.ts
CHANGED
|
@@ -1,15 +1,16 @@
|
|
|
1
|
-
import { ElementRef } from '@angular/core';
|
|
1
|
+
import { ElementRef, NgZone } from '@angular/core';
|
|
2
2
|
import { Subscription } from 'rxjs';
|
|
3
3
|
import { BroadcastService } from './broadcast.service';
|
|
4
4
|
import { IChartConfig } from '../model/i-chart-config';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
6
|
export declare class BrushService {
|
|
7
7
|
private broadcastService;
|
|
8
|
+
private zone;
|
|
8
9
|
broadcastSubscribtion: Subscription;
|
|
9
10
|
private brush;
|
|
10
11
|
private brushMap;
|
|
11
12
|
private selection;
|
|
12
|
-
constructor(broadcastService: BroadcastService);
|
|
13
|
+
constructor(broadcastService: BroadcastService, zone: NgZone);
|
|
13
14
|
applyBrush(svgElement: ElementRef, config: IChartConfig, brushScale: any): void;
|
|
14
15
|
clearPreviousSelection(): void;
|
|
15
16
|
static ɵfac: i0.ɵɵFactoryDeclaration<BrushService, never>;
|
|
@@ -7,6 +7,7 @@ import { PlotLine } from '../model/plot-line';
|
|
|
7
7
|
import { IPointMove } from '../model/i-point-move';
|
|
8
8
|
import { BasePoint } from '../model/base-point';
|
|
9
9
|
import { Series } from '../model/series';
|
|
10
|
+
import { Annotation } from "../model/annotation";
|
|
10
11
|
import * as i0 from "@angular/core";
|
|
11
12
|
export declare class ChartService {
|
|
12
13
|
config: Observable<IChartConfig>;
|
|
@@ -18,6 +19,9 @@ export declare class ChartService {
|
|
|
18
19
|
plotBandClick: Observable<IChartEvent<PlotBand>>;
|
|
19
20
|
plotBandContextMenu: Observable<IChartEvent<PlotBand>>;
|
|
20
21
|
pointMove: Observable<IChartEvent<IPointMove>>;
|
|
22
|
+
annotationMove: Observable<IChartEvent<Annotation>>;
|
|
23
|
+
annotationClick: Observable<IChartEvent<Annotation>>;
|
|
24
|
+
annotationContextMenu: Observable<IChartEvent<Annotation>>;
|
|
21
25
|
chartClick: Observable<IChartEvent<BasePoint>>;
|
|
22
26
|
chartContextMenu: Observable<IChartEvent<BasePoint>>;
|
|
23
27
|
private config$;
|
|
@@ -29,12 +33,16 @@ export declare class ChartService {
|
|
|
29
33
|
private pointMove$;
|
|
30
34
|
private chartClick$;
|
|
31
35
|
private chartContextMenu$;
|
|
36
|
+
private annotationEvent$;
|
|
37
|
+
private annotationMove$;
|
|
32
38
|
constructor();
|
|
33
39
|
setConfig(config: IChartConfig): void;
|
|
34
40
|
setSize(size: DOMRect): void;
|
|
35
41
|
setPointerMove(event: PointerEvent): void;
|
|
36
42
|
setTooltip(tooltip: IDisplayTooltip): void;
|
|
37
43
|
clearTooltips(): void;
|
|
44
|
+
emitMoveAnnotation(event: IChartEvent<Annotation>): void;
|
|
45
|
+
emitAnnotation(event: IChartEvent<Annotation>): void;
|
|
38
46
|
emitPlotband(event: IChartEvent<PlotBand>): void;
|
|
39
47
|
emitPlotline(event: IChartEvent<PlotLine>): void;
|
|
40
48
|
emitPoint(event: IChartEvent<IPointMove>): void;
|
|
@@ -11,6 +11,12 @@ export class SeriesBaseComponent {
|
|
|
11
11
|
this.zoomService = zoomService;
|
|
12
12
|
this.element = element;
|
|
13
13
|
}
|
|
14
|
+
set config(config) {
|
|
15
|
+
this._config = config;
|
|
16
|
+
}
|
|
17
|
+
get config() {
|
|
18
|
+
return this._config;
|
|
19
|
+
}
|
|
14
20
|
set series(series) {
|
|
15
21
|
this._series = series;
|
|
16
22
|
}
|
|
@@ -21,7 +27,7 @@ export class SeriesBaseComponent {
|
|
|
21
27
|
}
|
|
22
28
|
}
|
|
23
29
|
SeriesBaseComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.1", ngImport: i0, type: SeriesBaseComponent, deps: [{ token: i1.ChartService }, { token: i0.ChangeDetectorRef }, { token: i2.ScaleService }, { token: i3.ZoomService }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
24
|
-
SeriesBaseComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.1", type: SeriesBaseComponent, selector: "ng-component", inputs: { config: "config", series: "series"
|
|
30
|
+
SeriesBaseComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.1", type: SeriesBaseComponent, selector: "ng-component", inputs: { config: "config", series: "series" }, ngImport: i0, template: '', isInline: true });
|
|
25
31
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.1", ngImport: i0, type: SeriesBaseComponent, decorators: [{
|
|
26
32
|
type: Component,
|
|
27
33
|
args: [{
|
|
@@ -31,9 +37,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.1", ngImpor
|
|
|
31
37
|
type: Input
|
|
32
38
|
}], series: [{
|
|
33
39
|
type: Input
|
|
34
|
-
}], size: [{
|
|
35
|
-
type: Input
|
|
36
|
-
}], rect: [{
|
|
37
|
-
type: Input
|
|
38
40
|
}] } });
|
|
39
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
41
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VyaWVzLWJhc2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NoYXJ0L2Jhc2Uvc2VyaWVzLWJhc2UuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCxTQUFTLEVBRVQsS0FBSyxHQUVOLE1BQU0sZUFBZSxDQUFDOzs7OztBQVd2QixNQUFNLE9BQU8sbUJBQW1CO0lBc0I5QixZQUNZLEdBQWlCLEVBQ2pCLEdBQXNCLEVBQ3RCLFlBQTBCLEVBQzFCLFdBQXdCLEVBQ3hCLE9BQW1CO1FBSm5CLFFBQUcsR0FBSCxHQUFHLENBQWM7UUFDakIsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUFDdEIsaUJBQVksR0FBWixZQUFZLENBQWM7UUFDMUIsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDeEIsWUFBTyxHQUFQLE9BQU8sQ0FBWTtJQUUvQixDQUFDO0lBNUJELElBQ0ksTUFBTSxDQUFDLE1BQW9CO1FBQzdCLElBQUksQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFDO0lBQ3hCLENBQUM7SUFFRCxJQUFJLE1BQU07UUFDUixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDdEIsQ0FBQztJQUVELElBQ0ksTUFBTSxDQUFDLE1BQWlCO1FBQzFCLElBQUksQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFDO0lBQ3hCLENBQUM7SUFFRCxJQUFJLE1BQU07UUFDUixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDdEIsQ0FBQztJQWNELFFBQVE7SUFDUixDQUFDOztnSEFoQ1UsbUJBQW1CO29HQUFuQixtQkFBbUIsb0dBRnBCLEVBQUU7MkZBRUQsbUJBQW1CO2tCQUgvQixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxFQUFFO2lCQUNiO2lOQUdLLE1BQU07c0JBRFQsS0FBSztnQkFVRixNQUFNO3NCQURULEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBJbnB1dCxcbiAgT25Jbml0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Q2hhcnRTZXJ2aWNlfSBmcm9tICcuLi9zZXJ2aWNlL2NoYXJ0LnNlcnZpY2UnO1xuaW1wb3J0IHtTZXJpZXN9IGZyb20gJy4uL21vZGVsL3Nlcmllcyc7XG5pbXBvcnQge0Jhc2VQb2ludH0gZnJvbSAnLi4vbW9kZWwvYmFzZS1wb2ludCc7XG5pbXBvcnQge1NjYWxlU2VydmljZX0gZnJvbSAnLi4vc2VydmljZS9zY2FsZS5zZXJ2aWNlJztcbmltcG9ydCB7Wm9vbVNlcnZpY2V9IGZyb20gJy4uL3NlcnZpY2Uvem9vbS5zZXJ2aWNlJztcbmltcG9ydCB7SUNoYXJ0Q29uZmlnfSBmcm9tICcuLi9tb2RlbC9pLWNoYXJ0LWNvbmZpZyc7XG5cbkBDb21wb25lbnQoe1xuICB0ZW1wbGF0ZTogJycsXG59KVxuZXhwb3J0IGNsYXNzIFNlcmllc0Jhc2VDb21wb25lbnQ8VCBleHRlbmRzIEJhc2VQb2ludD4gaW1wbGVtZW50cyBPbkluaXQge1xuICBASW5wdXQoKVxuICBzZXQgY29uZmlnKGNvbmZpZzogSUNoYXJ0Q29uZmlnKSB7XG4gICAgdGhpcy5fY29uZmlnID0gY29uZmlnO1xuICB9XG5cbiAgZ2V0IGNvbmZpZygpIHtcbiAgICByZXR1cm4gdGhpcy5fY29uZmlnO1xuICB9XG5cbiAgQElucHV0KClcbiAgc2V0IHNlcmllcyhzZXJpZXM6IFNlcmllczxUPikge1xuICAgIHRoaXMuX3NlcmllcyA9IHNlcmllcztcbiAgfVxuXG4gIGdldCBzZXJpZXMoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3NlcmllcztcbiAgfVxuXG4gIHByb3RlY3RlZCBfc2VyaWVzOiBTZXJpZXM8VD47XG4gIHByb3RlY3RlZCBfY29uZmlnOiBJQ2hhcnRDb25maWc7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJvdGVjdGVkIHN2YzogQ2hhcnRTZXJ2aWNlLFxuICAgIHByb3RlY3RlZCBjZHI6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIHByb3RlY3RlZCBzY2FsZVNlcnZpY2U6IFNjYWxlU2VydmljZSxcbiAgICBwcm90ZWN0ZWQgem9vbVNlcnZpY2U6IFpvb21TZXJ2aWNlLFxuICAgIHByb3RlY3RlZCBlbGVtZW50OiBFbGVtZW50UmVmXG4gICkge1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gIH1cbn1cbiJdfQ==
|