@tetacom/svg-charts 1.4.1 → 1.4.3

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.
@@ -22,10 +22,11 @@ import * as i20 from "./chart-container/series/block-area-series/block-area-seri
22
22
  import * as i21 from "./chart-container/annotation/annotation.component";
23
23
  import * as i22 from "./chart-container/crosshair/crosshair.component";
24
24
  import * as i23 from "./directives/draggable-point.directive";
25
- import * as i24 from "@angular/common";
26
- import * as i25 from "@tetacom/ng-components";
25
+ import * as i24 from "./stories/bandseries/bandseries.component";
26
+ import * as i25 from "@angular/common";
27
+ import * as i26 from "@tetacom/ng-components";
27
28
  export declare class ChartModule {
28
29
  static ɵfac: i0.ɵɵFactoryDeclaration<ChartModule, never>;
29
- 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.CrosshairComponent, typeof i23.DraggablePointDirective], [typeof i24.CommonModule, typeof i25.LetModule], [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]>;
30
+ 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.CrosshairComponent, typeof i23.DraggablePointDirective, typeof i24.BandseriesComponent], [typeof i25.CommonModule, typeof i26.LetModule], [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]>;
30
31
  static ɵinj: i0.ɵɵInjectorDeclaration<ChartModule>;
31
32
  }
@@ -50,7 +50,7 @@ export declare class Axis {
50
50
  private setTicksValues;
51
51
  private setOptions;
52
52
  get scale(): any;
53
- get extremes(): Array<number>;
53
+ get extremes(): Array<number | string>;
54
54
  get orientation(): AxisOrientation;
55
55
  get selfSize(): number;
56
56
  get tickValues(): number[];
@@ -1,7 +1,7 @@
1
1
  import { IBuilder } from '../../../model/i-builder';
2
2
  import { Axis } from '../axis';
3
- export declare class ExtremesBuilder implements IBuilder<Axis, [number, number]> {
3
+ export declare class ExtremesBuilder implements IBuilder<Axis, number[] | string[]> {
4
4
  private extentAccessorMap;
5
5
  private extremes;
6
- build(settings: Axis): [number, number];
6
+ build(settings: Axis): number[] | string[];
7
7
  }
@@ -5,5 +5,5 @@ export declare enum ScaleType {
5
5
  pow = 3,
6
6
  sqrt = 4,
7
7
  time = 5,
8
- category = 6
8
+ band = 6
9
9
  }
@@ -26,9 +26,11 @@ export declare class ZoomMessage {
26
26
  export declare class BrushMessage {
27
27
  chartId: string;
28
28
  selection: [number, number];
29
+ mode: 'drag' | 'space' | 'handle' | 'center' | 'init';
29
30
  constructor(options?: {
30
31
  chartId: string;
31
32
  selection: [number, number];
33
+ mode: 'drag' | 'space' | 'handle' | 'center' | 'init';
32
34
  });
33
35
  }
34
36
  export interface IBroadcastMessage<T> {
@@ -0,0 +1,21 @@
1
+ import { ChangeDetectorRef, ElementRef, OnInit } from '@angular/core';
2
+ import { SeriesBaseComponent } from "../../base/series-base.component";
3
+ import { BasePoint } from "../../model/base-point";
4
+ import { ChartService } from '../../service/chart.service';
5
+ import { ScaleService } from "../../service/scale.service";
6
+ import { ZoomService } from "../../service/zoom.service";
7
+ import { Observable } from "rxjs";
8
+ import * as i0 from "@angular/core";
9
+ export declare class BandseriesComponent extends SeriesBaseComponent<BasePoint> implements OnInit {
10
+ protected svc: ChartService;
11
+ protected cdr: ChangeDetectorRef;
12
+ protected scaleService: ScaleService;
13
+ protected zoomService: ZoomService;
14
+ protected element: ElementRef;
15
+ x: Observable<any>;
16
+ y: Observable<any>;
17
+ constructor(svc: ChartService, cdr: ChangeDetectorRef, scaleService: ScaleService, zoomService: ZoomService, element: ElementRef);
18
+ ngOnInit(): void;
19
+ static ɵfac: i0.ɵɵFactoryDeclaration<BandseriesComponent, never>;
20
+ static ɵcmp: i0.ɵɵComponentDeclaration<BandseriesComponent, "svg:svg[teta-bandseries]", never, {}, {}, never, never, false>;
21
+ }
@@ -5,6 +5,7 @@ import { ScaleService } from '../service/scale.service';
5
5
  import { BrushService } from '../service/brush.service';
6
6
  import { map, takeWhile, withLatestFrom } from 'rxjs';
7
7
  import { TooltipTracking } from '../model/enum/tooltip-tracking';
8
+ import { ScaleType } from "../model/enum/scale-type";
8
9
  import * as i0 from "@angular/core";
9
10
  import * as i1 from "../service/chart.service";
10
11
  import * as i2 from "../service/zoom.service";
@@ -53,6 +54,9 @@ export class ChartComponent {
53
54
  if (tooltipTracking === TooltipTracking.y) {
54
55
  const result = new Map();
55
56
  y.forEach((value, key) => {
57
+ if (value.options.scaleType.type === ScaleType.band) {
58
+ return;
59
+ }
56
60
  result.set(key, value.scale.invert(event.offsetY));
57
61
  });
58
62
  this.pointerMove.emit({
@@ -63,6 +67,9 @@ export class ChartComponent {
63
67
  else {
64
68
  const result = new Map();
65
69
  x.forEach((value, key) => {
70
+ if (value.options.scaleType.type === ScaleType.band) {
71
+ return;
72
+ }
66
73
  result.set(key, value.scale.invert(event.offsetX));
67
74
  });
68
75
  this.pointerMove.emit({
@@ -156,4 +163,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImpor
156
163
  }], config: [{
157
164
  type: Input
158
165
  }] } });
159
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhcnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NoYXJ0L2NoYXJ0L2NoYXJ0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3NyYy9jaGFydC9jaGFydC9jaGFydC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUlMLE1BQU0sR0FFUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFHdEQsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQ3BELE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUN0RCxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFLdEQsT0FBTyxFQUFDLEdBQUcsRUFBYyxTQUFTLEVBQUUsY0FBYyxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBRWhFLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxnQ0FBZ0MsQ0FBQzs7Ozs7Ozs7O0FBVS9ELE1BQU0sT0FBTyxjQUFjO0lBaUR6QixZQUFtQixZQUEwQixFQUMxQixXQUF3QixFQUN4QixZQUEwQixFQUMxQixZQUEwQjtRQUgxQixpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUMxQixnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUN4QixpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUMxQixpQkFBWSxHQUFaLFlBQVksQ0FBYztRQWhEN0MsZ0JBQVcsR0FBbUQsSUFBSSxZQUFZLEVBQW9DLENBQUM7UUFHbkgsa0JBQWEsR0FBd0MsSUFBSSxZQUFZLEVBQXlCLENBQUM7UUFHL0Ysa0JBQWEsR0FBd0MsSUFBSSxZQUFZLEVBQXlCLENBQUM7UUFHL0Ysd0JBQW1CLEdBQXdDLElBQUksWUFBWSxFQUF5QixDQUFD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RFosTUFBTTtnQkFJUCxTQUFTO3NCQURSLE1BQU07Z0JBSVAsVUFBVTtzQkFEVCxNQUFNO2dCQUlQLGdCQUFnQjtzQkFEZixNQUFNO2dCQUlQLHFCQUFxQjtzQkFEcEIsTUFBTTtnQkFJUCxlQUFlO3NCQURkLE1BQU07Z0JBSVAsY0FBYztzQkFEYixNQUFNO2dCQUlQLG1CQUFtQjtzQkFEbEIsTUFBTTtnQkFJUCxvQkFBb0I7c0JBRG5CLE1BQU07Z0JBR00sTUFBTTtzQkFBbEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIE91dHB1dCxcbiAgU2ltcGxlQ2hhbmdlcyxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0NoYXJ0U2VydmljZX0gZnJvbSAnLi4vc2VydmljZS9jaGFydC5zZXJ2aWNlJztcbmltcG9ydCB7SUNoYXJ0Q29uZmlnfSBmcm9tICcuLi9tb2RlbC9pLWNoYXJ0LWNvbmZpZyc7XG5pbXBvcnQge0Jhc2VQb2ludH0gZnJvbSAnLi4vbW9kZWwvYmFzZS1wb2ludCc7XG5pbXBvcnQge1pvb21TZXJ2aWNlfSBmcm9tICcuLi9zZXJ2aWNlL3pvb20uc2VydmljZSc7XG5pbXBvcnQge1NjYWxlU2VydmljZX0gZnJvbSAnLi4vc2VydmljZS9zY2FsZS5zZXJ2aWNlJztcbmltcG9ydCB7QnJ1c2hTZXJ2aWNlfSBmcm9tICcuLi9zZXJ2aWNlL2JydXNoLnNlcnZpY2UnO1xuaW1wb3J0IHtJQ2hhcnRFdmVudH0gZnJvbSAnLi4vbW9kZWwvaS1jaGFydC1ldmVudCc7XG5pbXBvcnQge1Bsb3RMaW5lfSBmcm9tICcuLi9tb2RlbC9wbG90LWxpbmUnO1xuaW1wb3J0IHtQbG90QmFuZH0gZnJvbSAnLi4vbW9kZWwvcGxvdC1iYW5kJztcbmltcG9ydCB7SVBvaW50TW92ZX0gZnJvbSAnLi4vbW9kZWwvaS1wb2ludC1tb3ZlJztcbmltcG9ydCB7bWFwLCBPYnNlcnZhYmxlLCB0YWtlV2hpbGUsIHdpdGhMYXRlc3RGcm9tfSBmcm9tICdyeGpzJztcbmltcG9ydCB7QW5ub3RhdGlvbn0gZnJvbSAnLi4vbW9kZWwvYW5ub3RhdGlvbic7XG5pbXBvcnQge1Rvb2x0aXBUcmFja2luZ30gZnJvbSAnLi4vbW9kZWwvZW51bS90b29sdGlwLXRyYWNraW5nJztcbmltcG9ydCB7SVNjYWxlc01hcH0gZnJvbSAnLi4vbW9kZWwvaS1zY2FsZXMtbWFwJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndGV0YS1zdmctY2hhcnQnLFxuICB0ZW1wbGF0ZVVybDogJy4vY2hhcnQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9jaGFydC5jb21wb25lbnQuc2NzcyddLFxuICBwcm92aWRlcnM6IFtDaGFydFNlcnZpY2UsIFpvb21TZXJ2aWNlLCBTY2FsZVNlcnZpY2UsIEJydXNoU2VydmljZV0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBDaGFydENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3kge1xuICBoYXNTZXJpZXNEYXRhOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICBzdmNDb25maWc6IE9ic2VydmFibGU8SUNoYXJ0Q29uZmlnPjtcbiAgQE91dHB1dCgpXG4gIHBvaW50ZXJNb3ZlOiBFdmVudEVtaXR0ZXI8SUNoYXJ0RXZlbnQ8TWFwPG51bWJlciwgbnVtYmVyPj4+ID0gbmV3IEV2ZW50RW1pdHRlcjxJQ2hhcnRFdmVudDxNYXA8bnVtYmVyLCBudW1iZXI+Pj4oKTtcblxuICBAT3V0cHV0KClcbiAgcGxvdEJhbmRzTW92ZTogRXZlbnRFbWl0dGVyPElDaGFydEV2ZW50PFBsb3RCYW5kPj4gPSBuZXcgRXZlbnRFbWl0dGVyPElDaGFydEV2ZW50PFBsb3RCYW5kPj4oKTtcblxuICBAT3V0cHV0KClcbiAgcGxvdEJhbmRDbGljazogRXZlbnRFbWl0dGVyPElDaGFydEV2ZW50PFBsb3RCYW5kPj4gPSBuZXcgRXZlbnRFbWl0dGVyPElDaGFydEV2ZW50PFBsb3RCYW5kPj4oKTtcblxuICBAT3V0cHV0KClcbiAgcGxvdEJhbmRDb250ZXh0TWVudTogRXZlbnRFbWl0dGVyPElDaGFydEV2ZW50PFBsb3RCYW5kPj4gPSBuZXcgRXZlbnRFbWl0dGVyPElDaGFydEV2ZW50PFBsb3RCYW5kPj4oKTtcblxuICBAT3V0cHV0KClcbiAgcGxvdExpbmVzTW92ZTogRXZlbnRFbWl0dGVyPElDaGFydEV2ZW50PFBsb3RMaW5lPj4gPSBuZXcgRXZlbnRFbWl0dGVyPElDaGFydEV2ZW50PFBsb3RMaW5lPj4oKTtcblxuICBAT3V0cHV0KClcbiAgcG9pbnRNb3ZlOiBFdmVudEVtaXR0ZXI8SUNoYXJ0RXZlbnQ8SVBvaW50TW92ZT4+ID0gbmV3IEV2ZW50RW1pdHRlcjxJQ2hhcnRFdmVudDxJUG9pbnRNb3ZlPj4oKTtcblxuICBAT3V0cHV0KClcbiAgY2hhcnRDbGljazogRXZlbnRFbWl0dGVyPElDaGFydEV2ZW50PEJhc2VQb2ludD4+ID0gbmV3IEV2ZW50RW1pdHRlcjxJQ2hhcnRFdmVudDxCYXNlUG9pbnQ+PigpO1xuXG4gIEBPdXRwdXQoKVxuICBjaGFydENvbnRleHRNZW51OiBFdmVudEVtaXR0ZXI8SUNoYXJ0RXZlbnQ8QmFzZVBvaW50Pj4gPSBuZXcgRXZlbnRFbWl0dGVyPElDaGFydEV2ZW50PEJhc2VQb2ludD4+KCk7XG5cbiAgQE91dHB1dCgpXG4gIGFubm90YXRpb25Db250ZXh0TWVudTogRXZlbnRFbWl0dGVyPElDaGFydEV2ZW50PEFubm90YXRpb24+PiA9IG5ldyBFdmVudEVtaXR0ZXI8SUNoYXJ0RXZlbnQ8QW5ub3RhdGlvbj4+KCk7XG5cbiAgQE91dHB1dCgpXG4gIGFubm90YXRpb25DbGljazogRXZlbnRFbWl0dGVyPElDaGFydEV2ZW50PEFubm90YXRpb24+PiA9IG5ldyBFdmVudEVtaXR0ZXI8SUNoYXJ0RXZlbnQ8QW5ub3RhdGlvbj4+KCk7XG5cbiAgQE91dHB1dCgpXG4gIGFubm90YXRpb25Nb3ZlOiBFdmVudEVtaXR0ZXI8SUNoYXJ0RXZlbnQ8QW5ub3RhdGlvbj4+ID0gbmV3IEV2ZW50RW1pdHRlcjxJQ2hhcnRFdmVudDxBbm5vdGF0aW9uPj4oKTtcblxuICBAT3V0cHV0KClcbiAgem9vbVNlcnZpY2VJbnN0YW5jZTogRXZlbnRFbWl0dGVyPFpvb21TZXJ2aWNlPiA9IG5ldyBFdmVudEVtaXR0ZXI8Wm9vbVNlcnZpY2U+KCk7XG5cbiAgQE91dHB1dCgpXG4gIGJydXNoU2VydmljZUluc3RhbmNlOiBFdmVudEVtaXR0ZXI8QnJ1c2hTZXJ2aWNlPiA9IG5ldyBFdmVudEVtaXR0ZXI8QnJ1c2hTZXJ2aWNlPigpO1xuXG4gIEBJbnB1dCgpIHNldCBjb25maWcoY29uZmlnOiBJQ2hhcnRDb25maWcpIHtcbiAgICB0aGlzLmNoYXJ0U2VydmljZS5zZXRDb25maWcoY29uZmlnKTtcbiAgICB0aGlzLnpvb21TZXJ2aWNlLnNldEJyb2FkY2FzdENoYW5uZWwoY29uZmlnPy56b29tPy5zeW5jQ2hhbm5lbCk7XG4gIH1cblxuICBwcml2YXRlIF9hbGl2ZSA9IHRydWU7XG5cbiAgY29uc3RydWN0b3IocHVibGljIGNoYXJ0U2VydmljZTogQ2hhcnRTZXJ2aWNlLFxuICAgICAgICAgICAgICBwdWJsaWMgem9vbVNlcnZpY2U6IFpvb21TZXJ2aWNlLFxuICAgICAgICAgICAgICBwdWJsaWMgYnJ1c2hTZXJ2aWNlOiBCcnVzaFNlcnZpY2UsXG4gICAgICAgICAgICAgIHB1YmxpYyBzY2FsZVNlcnZpY2U6IFNjYWxlU2VydmljZSkge1xuICAgIHRoaXMuc3ZjQ29uZmlnID0gdGhpcy5jaGFydFNlcnZpY2UuY29uZmlnO1xuICAgIHRoaXMuaGFzU2VyaWVzRGF0YSA9IHRoaXMuc3ZjQ29uZmlnLnBpcGUoXG4gICAgICBtYXAoXG4gICAgICAgIChfKSA9PiBfLnNlcmllcz8ubGVuZ3RoID4gMCAmJiBfLnNlcmllcz8uc29tZSgoXykgPT4gXy5kYXRhPy5sZW5ndGggPiAwKVxuICAgICAgKVxuICAgICk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnpvb21TZXJ2aWNlSW5zdGFuY2UuZW1pdCh0aGlzLnpvb21TZXJ2aWNlKTtcbiAgICB0aGlzLmJydXNoU2VydmljZUluc3RhbmNlLmVtaXQodGhpcy5icnVzaFNlcnZpY2UpO1xuXG4gICAgdGhpcy5jaGFydFNlcnZpY2UucG9pbnRlck1vdmVcbiAgICAgIC5waXBlKFxuICAgICAgICB0YWtlV2hpbGUoKCkgPT4gdGhpcy5fYWxpdmUpLFxuICAgICAgICB3aXRoTGF0ZXN0RnJvbSh0aGlzLnNjYWxlU2VydmljZS5zY2FsZXMsIHRoaXMuY2hhcnRTZXJ2aWNlLmNvbmZpZylcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKGRhdGE6IFtQb2ludGVyRXZlbnQsIElTY2FsZXNNYXAsIElDaGFydENvbmZpZ10pID0+IHtcbiAgICAgICAgY29uc3QgW2V2ZW50LCB7eCwgeX0sIGNvbmZpZ10gPSBkYXRhO1xuICAgICAgICBjb25zdCB0b29sdGlwVHJhY2tpbmcgPSBjb25maWc/LnRvb2x0aXA/LnRyYWNraW5nO1xuICAgICAgICBpZiAodG9vbHRpcFRyYWNraW5nID09PSBUb29sdGlwVHJhY2tpbmcueSkge1xuICAgICAgICAgIGNvbnN0IHJlc3VsdCA9IG5ldyBNYXA8bnVtYmVyLCBudW1iZXI+KCk7XG4gICAgICAgICAgeS5mb3JFYWNoKCh2YWx1ZSwga2V5KSA9PiB7XG4gICAgICAgICAgICByZXN1bHQuc2V0KGtleSwgdmFsdWUuc2NhbGUuaW52ZXJ0KGV2ZW50Lm9mZnNldFkpKTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgICB0aGlzLnBvaW50ZXJNb3ZlLmVtaXQoe1xuICAgICAgICAgICAgZXZlbnQ6IGV2ZW50LFxuICAgICAgICAgICAgdGFyZ2V0OiByZXN1bHRcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBjb25zdCByZXN1bHQgPSBuZXcgTWFwPG51bWJlciwgbnVtYmVyPigpO1xuICAgICAgICAgIHguZm9yRWFjaCgodmFsdWUsIGtleSkgPT4ge1xuICAgICAgICAgICAgcmVzdWx0LnNldChrZXksIHZhbHVlLnNjYWxlLmludmVydChldmVudC5vZmZzZXRYKSk7XG4gICAgICAgICAgfSk7XG4gICAgICAgICAgdGhpcy5wb2ludGVyTW92ZS5lbWl0KHtcbiAgICAgICAgICAgIGV2ZW50OiBldmVudCxcbiAgICAgICAgICAgIHRhcmdldDogcmVzdWx0XG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuXG4gICAgdGhpcy5jaGFydFNlcnZpY2UucGxvdEJhbmRFdmVudFxuICAgICAgLnBpcGUodGFrZVdoaWxlKCgpID0+IHRoaXMuX2FsaXZlKSlcbiAgICAgIC5zdWJzY3JpYmUoKF8pID0+IHtcbiAgICAgICAgdGhpcy5wbG90QmFuZHNNb3ZlLmVtaXQoXyk7XG4gICAgICB9KTtcblxuICAgIHRoaXMuY2hhcnRTZXJ2aWNlLnBsb3RMaW5lTW92ZS5waXBlKHRha2VXaGlsZSgoKSA9PiB0aGlzLl9hbGl2ZSkpLnN1YnNjcmliZSgoXykgPT4ge1xuICAgICAgdGhpcy5wbG90TGluZXNNb3ZlLmVtaXQoXyk7XG4gICAgfSk7XG5cbiAgICB0aGlzLmNoYXJ0U2VydmljZS5wb2ludE1vdmUucGlwZSh0YWtlV2hpbGUoKCkgPT4gdGhpcy5fYWxpdmUpKS5zdWJzY3JpYmUoKF8pID0+IHtcbiAgICAgIHRoaXMucG9pbnRNb3ZlLmVtaXQoXyk7XG4gICAgfSk7XG5cbiAgICB0aGlzLmNoYXJ0U2VydmljZS5jaGFydENsaWNrXG4gICAgICAucGlwZShcbiAgICAgICAgdGFrZVdoaWxlKCgpID0+IHRoaXMuX2FsaXZlKVxuICAgICAgKS5zdWJzY3JpYmUoKF8pID0+IHtcbiAgICAgIHRoaXMuY2hhcnRDbGljay5lbWl0KF8pO1xuICAgIH0pO1xuXG4gICAgdGhpcy5jaGFydFNlcnZpY2UuY2hhcnRDb250ZXh0TWVudVxuICAgICAgLnBpcGUoXG4gICAgICAgIHRha2VXaGlsZSgoKSA9PiB0aGlzLl9hbGl2ZSlcbiAgICAgICkuc3Vic2NyaWJlKChfKSA9PiB7XG4gICAgICB0aGlzLmNoYXJ0Q29udGV4dE1lbnUuZW1pdChfKTtcbiAgICB9KTtcblxuICAgIHRoaXMuY2hhcnRTZXJ2aWNlLnBsb3RCYW5kQ2xpY2tcbiAgICAgIC5waXBlKFxuICAgICAgICB0YWtlV2hpbGUoKCkgPT4gdGhpcy5fYWxpdmUpKVxuICAgICAgLnN1YnNjcmliZSgoXykgPT4ge1xuICAgICAgICB0aGlzLnBsb3RCYW5kQ2xpY2suZW1pdChfKTtcbiAgICAgIH0pO1xuXG4gICAgdGhpcy5jaGFydFNlcnZpY2UucGxvdEJhbmRDb250ZXh0TWVudVxuICAgICAgLnBpcGUoXG4gICAgICAgIHRha2VXaGlsZSgoKSA9PiB0aGlzLl9hbGl2ZSkpXG4gICAgICAuc3Vic2NyaWJlKChfKSA9PiB7XG4gICAgICAgIHRoaXMucGxvdEJhbmRDb250ZXh0TWVudS5lbWl0KF8pO1xuICAgICAgfSk7XG5cbiAgICB0aGlzLmNoYXJ0U2VydmljZS5hbm5vdGF0aW9uQ29udGV4dE1lbnVcbiAgICAgIC5waXBlKFxuICAgICAgICB0YWtlV2hpbGUoKCkgPT4gdGhpcy5fYWxpdmUpKVxuICAgICAgLnN1YnNjcmliZSgoXykgPT4ge1xuICAgICAgICB0aGlzLmFubm90YXRpb25Db250ZXh0TWVudS5lbWl0KF8pO1xuICAgICAgfSk7XG5cbiAgICB0aGlzLmNoYXJ0U2VydmljZS5hbm5vdGF0aW9uQ2xpY2tcbiAgICAgIC5waXBlKFxuICAgICAgICB0YWtlV2hpbGUoKCkgPT4gdGhpcy5fYWxpdmUpKVxuICAgICAgLnN1YnNjcmliZSgoXykgPT4ge1xuICAgICAgICB0aGlzLmFubm90YXRpb25DbGljay5lbWl0KF8pO1xuICAgICAgfSk7XG5cbiAgICB0aGlzLmNoYXJ0U2VydmljZS5hbm5vdGF0aW9uTW92ZVxuICAgICAgLnBpcGUoXG4gICAgICAgIHRha2VXaGlsZSgoKSA9PiB0aGlzLl9hbGl2ZSkpXG4gICAgICAuc3Vic2NyaWJlKChfKSA9PiB7XG4gICAgICAgIHRoaXMuYW5ub3RhdGlvbk1vdmUuZW1pdChfKTtcbiAgICAgIH0pO1xuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5fYWxpdmUgPSBmYWxzZTtcbiAgfVxufVxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cIntcbiAgaGFzU2VyaWVzRGF0YTogaGFzU2VyaWVzRGF0YSB8IGFzeW5jLFxuICBzdmNDb25maWc6IHN2Y0NvbmZpZyB8IGFzeW5jXG59IGFzIGRhdGFcIj5cbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImRhdGEuaGFzU2VyaWVzRGF0YSA9PT0gdHJ1ZSBlbHNlIG5vRGF0YVwiPlxuICAgIDxkaXYgY2xhc3M9XCJjb2x1bW4gY29sdW1uX2F1dG9cIj5cbiAgICAgIDx0ZXRhLWNoYXJ0LWNvbnRhaW5lciBjbGFzcz1cImNoYXJ0LWNvbnRhaW5lciBwb3NpdGlvbi1yZWxhdGl2ZVwiPjwvdGV0YS1jaGFydC1jb250YWluZXI+XG4gICAgPC9kaXY+XG4gICAgPHRldGEtbGVnZW5kICpuZ0lmPVwiZGF0YS5zdmNDb25maWcubGVnZW5kPy5lbmFibGUgPT09IHRydWVcIiBbc2VyaWVzXT1cImRhdGEuc3ZjQ29uZmlnLnNlcmllc1wiPjwvdGV0YS1sZWdlbmQ+XG4gIDwvbmctY29udGFpbmVyPlxuPC9uZy1jb250YWluZXI+XG48bmctdGVtcGxhdGUgI25vRGF0YT5cbiAgPGRpdiBjbGFzcz1cImNvbHVtbiBjb2x1bW5fYXV0byBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyXCI+XG4gICAgPHNwYW4gY2xhc3M9XCJmb250LWJvZHktMyBjb2xvci10ZXh0LTQwIG92ZXJmbG93LWhpZGRlbiB0ZXh0LW92ZXJmbG93LWVsbGlwc2lzIG5vd3JhcCB0ZXh0LWFsaWduLWNlbnRlclwiPlxuICAgICAgPGRpdiAjcmVmPjxuZy1jb250ZW50PjwvbmctY29udGVudD48L2Rpdj5cbiAgICAgIDxzcGFuICpuZ0lmPVwiIXJlZi5oYXNDaGlsZE5vZGVzKClcIj5cbiAgICAgICAgTm8gZGF0YVxuICAgICAgPC9zcGFuPlxuICAgIDwvc3Bhbj5cbiAgPC9kaXY+XG48L25nLXRlbXBsYXRlPlxuIl19
166
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhcnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NoYXJ0L2NoYXJ0L2NoYXJ0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3NyYy9jaGFydC9jaGFydC9jaGFydC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUlMLE1BQU0sR0FFUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFHdEQsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQ3BELE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUN0RCxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFLdEQsT0FBTyxFQUFDLEdBQUcsRUFBYyxTQUFTLEVBQUUsY0FBYyxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBRWhFLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxnQ0FBZ0MsQ0FBQztBQUUvRCxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sMEJBQTBCLENBQUM7Ozs7Ozs7OztBQVNuRCxNQUFNLE9BQU8sY0FBYztJQWlEekIsWUFBbUIsWUFBMEIsRUFDMUIsV0FBd0IsRUFDeEIsWUFBMEIsRUFDMUIsWUFBMEI7UUFIMUIsaUJBQVksR0FBWixZQUFZLENBQWM7UUFDMUIsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDeEIsaUJBQVksR0FBWixZQUFZLENBQWM7UUFDMUIsaUJBQVksR0FBWixZQUFZLENBQWM7UUFoRDdDLGdCQUFXLEdBQW1ELElBQUksWUFBWSxFQUFvQyxDQUFDO1FBR25ILGtCQUFhLEdBQXdDLElBQUksWUFBWSxFQUF5QixDQUFDO1FBRy9GLGtCQUFhLEdBQXdDLElBQUksWUFBWSxFQUF5QixD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QXFCQTsyRkRhYSxjQUFjO2tCQVAxQixTQUFTOytCQUNFLGdCQUFnQixhQUdmLENBQUMsWUFBWSxFQUFFLFdBQVcsRUFBRSxZQUFZLEVBQUUsWUFBWSxDQUFDLG1CQUNqRCx1QkFBdUIsQ0FBQyxNQUFNO21MQU0vQyxXQUFXO3NCQURWLE1BQU07Z0JBSVAsYUFBYTtzQkFEWixNQUFNO2dCQUlQLGFBQWE7c0JBRFosTUFBTTtnQkFJUCxtQkFBbUI7c0JBRGxCLE1BQU07Z0JBSVAsYUFBYTtzQkFEWixNQUFNO2dCQUlQLFNBQVM7c0JBRFIsTUFBTTtnQkFJUCxVQUFVO3NCQURULE1BQU07Z0JBSVAsZ0JBQWdCO3NCQURmLE1BQU07Z0JBSVAscUJBQXFCO3NCQURwQixNQUFNO2dCQUlQLGVBQWU7c0JBRGQsTUFBTTtnQkFJUCxjQUFjO3NCQURiLE1BQU07Z0JBSVAsbUJBQW1CO3NCQURsQixNQUFNO2dCQUlQLG9CQUFvQjtzQkFEbkIsTUFBTTtnQkFHTSxNQUFNO3NCQUFsQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT25DaGFuZ2VzLFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgT3V0cHV0LFxuICBTaW1wbGVDaGFuZ2VzLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Q2hhcnRTZXJ2aWNlfSBmcm9tICcuLi9zZXJ2aWNlL2NoYXJ0LnNlcnZpY2UnO1xuaW1wb3J0IHtJQ2hhcnRDb25maWd9IGZyb20gJy4uL21vZGVsL2ktY2hhcnQtY29uZmlnJztcbmltcG9ydCB7QmFzZVBvaW50fSBmcm9tICcuLi9tb2RlbC9iYXNlLXBvaW50JztcbmltcG9ydCB7Wm9vbVNlcnZpY2V9IGZyb20gJy4uL3NlcnZpY2Uvem9vbS5zZXJ2aWNlJztcbmltcG9ydCB7U2NhbGVTZXJ2aWNlfSBmcm9tICcuLi9zZXJ2aWNlL3NjYWxlLnNlcnZpY2UnO1xuaW1wb3J0IHtCcnVzaFNlcnZpY2V9IGZyb20gJy4uL3NlcnZpY2UvYnJ1c2guc2VydmljZSc7XG5pbXBvcnQge0lDaGFydEV2ZW50fSBmcm9tICcuLi9tb2RlbC9pLWNoYXJ0LWV2ZW50JztcbmltcG9ydCB7UGxvdExpbmV9IGZyb20gJy4uL21vZGVsL3Bsb3QtbGluZSc7XG5pbXBvcnQge1Bsb3RCYW5kfSBmcm9tICcuLi9tb2RlbC9wbG90LWJhbmQnO1xuaW1wb3J0IHtJUG9pbnRNb3ZlfSBmcm9tICcuLi9tb2RlbC9pLXBvaW50LW1vdmUnO1xuaW1wb3J0IHttYXAsIE9ic2VydmFibGUsIHRha2VXaGlsZSwgd2l0aExhdGVzdEZyb219IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtBbm5vdGF0aW9ufSBmcm9tICcuLi9tb2RlbC9hbm5vdGF0aW9uJztcbmltcG9ydCB7VG9vbHRpcFRyYWNraW5nfSBmcm9tICcuLi9tb2RlbC9lbnVtL3Rvb2x0aXAtdHJhY2tpbmcnO1xuaW1wb3J0IHtJU2NhbGVzTWFwfSBmcm9tICcuLi9tb2RlbC9pLXNjYWxlcy1tYXAnO1xuaW1wb3J0IHtTY2FsZVR5cGV9IGZyb20gXCIuLi9tb2RlbC9lbnVtL3NjYWxlLXR5cGVcIjtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndGV0YS1zdmctY2hhcnQnLFxuICB0ZW1wbGF0ZVVybDogJy4vY2hhcnQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9jaGFydC5jb21wb25lbnQuc2NzcyddLFxuICBwcm92aWRlcnM6IFtDaGFydFNlcnZpY2UsIFpvb21TZXJ2aWNlLCBTY2FsZVNlcnZpY2UsIEJydXNoU2VydmljZV0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBDaGFydENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3kge1xuICBoYXNTZXJpZXNEYXRhOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICBzdmNDb25maWc6IE9ic2VydmFibGU8SUNoYXJ0Q29uZmlnPjtcbiAgQE91dHB1dCgpXG4gIHBvaW50ZXJNb3ZlOiBFdmVudEVtaXR0ZXI8SUNoYXJ0RXZlbnQ8TWFwPG51bWJlciwgbnVtYmVyPj4+ID0gbmV3IEV2ZW50RW1pdHRlcjxJQ2hhcnRFdmVudDxNYXA8bnVtYmVyLCBudW1iZXI+Pj4oKTtcblxuICBAT3V0cHV0KClcbiAgcGxvdEJhbmRzTW92ZTogRXZlbnRFbWl0dGVyPElDaGFydEV2ZW50PFBsb3RCYW5kPj4gPSBuZXcgRXZlbnRFbWl0dGVyPElDaGFydEV2ZW50PFBsb3RCYW5kPj4oKTtcblxuICBAT3V0cHV0KClcbiAgcGxvdEJhbmRDbGljazogRXZlbnRFbWl0dGVyPElDaGFydEV2ZW50PFBsb3RCYW5kPj4gPSBuZXcgRXZlbnRFbWl0dGVyPElDaGFydEV2ZW50PFBsb3RCYW5kPj4oKTtcblxuICBAT3V0cHV0KClcbiAgcGxvdEJhbmRDb250ZXh0TWVudTogRXZlbnRFbWl0dGVyPElDaGFydEV2ZW50PFBsb3RCYW5kPj4gPSBuZXcgRXZlbnRFbWl0dGVyPElDaGFydEV2ZW50PFBsb3RCYW5kPj4oKTtcblxuICBAT3V0cHV0KClcbiAgcGxvdExpbmVzTW92ZTogRXZlbnRFbWl0dGVyPElDaGFydEV2ZW50PFBsb3RMaW5lPj4gPSBuZXcgRXZlbnRFbWl0dGVyPElDaGFydEV2ZW50PFBsb3RMaW5lPj4oKTtcblxuICBAT3V0cHV0KClcbiAgcG9pbnRNb3ZlOiBFdmVudEVtaXR0ZXI8SUNoYXJ0RXZlbnQ8SVBvaW50TW92ZT4+ID0gbmV3IEV2ZW50RW1pdHRlcjxJQ2hhcnRFdmVudDxJUG9pbnRNb3ZlPj4oKTtcblxuICBAT3V0cHV0KClcbiAgY2hhcnRDbGljazogRXZlbnRFbWl0dGVyPElDaGFydEV2ZW50PEJhc2VQb2ludD4+ID0gbmV3IEV2ZW50RW1pdHRlcjxJQ2hhcnRFdmVudDxCYXNlUG9pbnQ+PigpO1xuXG4gIEBPdXRwdXQoKVxuICBjaGFydENvbnRleHRNZW51OiBFdmVudEVtaXR0ZXI8SUNoYXJ0RXZlbnQ8QmFzZVBvaW50Pj4gPSBuZXcgRXZlbnRFbWl0dGVyPElDaGFydEV2ZW50PEJhc2VQb2ludD4+KCk7XG5cbiAgQE91dHB1dCgpXG4gIGFubm90YXRpb25Db250ZXh0TWVudTogRXZlbnRFbWl0dGVyPElDaGFydEV2ZW50PEFubm90YXRpb24+PiA9IG5ldyBFdmVudEVtaXR0ZXI8SUNoYXJ0RXZlbnQ8QW5ub3RhdGlvbj4+KCk7XG5cbiAgQE91dHB1dCgpXG4gIGFubm90YXRpb25DbGljazogRXZlbnRFbWl0dGVyPElDaGFydEV2ZW50PEFubm90YXRpb24+PiA9IG5ldyBFdmVudEVtaXR0ZXI8SUNoYXJ0RXZlbnQ8QW5ub3RhdGlvbj4+KCk7XG5cbiAgQE91dHB1dCgpXG4gIGFubm90YXRpb25Nb3ZlOiBFdmVudEVtaXR0ZXI8SUNoYXJ0RXZlbnQ8QW5ub3RhdGlvbj4+ID0gbmV3IEV2ZW50RW1pdHRlcjxJQ2hhcnRFdmVudDxBbm5vdGF0aW9uPj4oKTtcblxuICBAT3V0cHV0KClcbiAgem9vbVNlcnZpY2VJbnN0YW5jZTogRXZlbnRFbWl0dGVyPFpvb21TZXJ2aWNlPiA9IG5ldyBFdmVudEVtaXR0ZXI8Wm9vbVNlcnZpY2U+KCk7XG5cbiAgQE91dHB1dCgpXG4gIGJydXNoU2VydmljZUluc3RhbmNlOiBFdmVudEVtaXR0ZXI8QnJ1c2hTZXJ2aWNlPiA9IG5ldyBFdmVudEVtaXR0ZXI8QnJ1c2hTZXJ2aWNlPigpO1xuXG4gIEBJbnB1dCgpIHNldCBjb25maWcoY29uZmlnOiBJQ2hhcnRDb25maWcpIHtcbiAgICB0aGlzLmNoYXJ0U2VydmljZS5zZXRDb25maWcoY29uZmlnKTtcbiAgICB0aGlzLnpvb21TZXJ2aWNlLnNldEJyb2FkY2FzdENoYW5uZWwoY29uZmlnPy56b29tPy5zeW5jQ2hhbm5lbCk7XG4gIH1cblxuICBwcml2YXRlIF9hbGl2ZSA9IHRydWU7XG5cbiAgY29uc3RydWN0b3IocHVibGljIGNoYXJ0U2VydmljZTogQ2hhcnRTZXJ2aWNlLFxuICAgICAgICAgICAgICBwdWJsaWMgem9vbVNlcnZpY2U6IFpvb21TZXJ2aWNlLFxuICAgICAgICAgICAgICBwdWJsaWMgYnJ1c2hTZXJ2aWNlOiBCcnVzaFNlcnZpY2UsXG4gICAgICAgICAgICAgIHB1YmxpYyBzY2FsZVNlcnZpY2U6IFNjYWxlU2VydmljZSkge1xuICAgIHRoaXMuc3ZjQ29uZmlnID0gdGhpcy5jaGFydFNlcnZpY2UuY29uZmlnO1xuICAgIHRoaXMuaGFzU2VyaWVzRGF0YSA9IHRoaXMuc3ZjQ29uZmlnLnBpcGUoXG4gICAgICBtYXAoXG4gICAgICAgIChfKSA9PiBfLnNlcmllcz8ubGVuZ3RoID4gMCAmJiBfLnNlcmllcz8uc29tZSgoXykgPT4gXy5kYXRhPy5sZW5ndGggPiAwKVxuICAgICAgKVxuICAgICk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnpvb21TZXJ2aWNlSW5zdGFuY2UuZW1pdCh0aGlzLnpvb21TZXJ2aWNlKTtcbiAgICB0aGlzLmJydXNoU2VydmljZUluc3RhbmNlLmVtaXQodGhpcy5icnVzaFNlcnZpY2UpO1xuXG4gICAgdGhpcy5jaGFydFNlcnZpY2UucG9pbnRlck1vdmVcbiAgICAgIC5waXBlKFxuICAgICAgICB0YWtlV2hpbGUoKCkgPT4gdGhpcy5fYWxpdmUpLFxuICAgICAgICB3aXRoTGF0ZXN0RnJvbSh0aGlzLnNjYWxlU2VydmljZS5zY2FsZXMsIHRoaXMuY2hhcnRTZXJ2aWNlLmNvbmZpZylcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKGRhdGE6IFtQb2ludGVyRXZlbnQsIElTY2FsZXNNYXAsIElDaGFydENvbmZpZ10pID0+IHtcbiAgICAgICAgY29uc3QgW2V2ZW50LCB7eCwgeX0sIGNvbmZpZ10gPSBkYXRhO1xuICAgICAgICBjb25zdCB0b29sdGlwVHJhY2tpbmcgPSBjb25maWc/LnRvb2x0aXA/LnRyYWNraW5nO1xuICAgICAgICBpZiAodG9vbHRpcFRyYWNraW5nID09PSBUb29sdGlwVHJhY2tpbmcueSkge1xuICAgICAgICAgIGNvbnN0IHJlc3VsdCA9IG5ldyBNYXA8bnVtYmVyLCBudW1iZXI+KCk7XG4gICAgICAgICAgeS5mb3JFYWNoKCh2YWx1ZSwga2V5KSA9PiB7XG4gICAgICAgICAgICBpZih2YWx1ZS5vcHRpb25zLnNjYWxlVHlwZS50eXBlID09PSBTY2FsZVR5cGUuYmFuZCl7XG4gICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJlc3VsdC5zZXQoa2V5LCB2YWx1ZS5zY2FsZS5pbnZlcnQoZXZlbnQub2Zmc2V0WSkpO1xuICAgICAgICAgIH0pO1xuICAgICAgICAgIHRoaXMucG9pbnRlck1vdmUuZW1pdCh7XG4gICAgICAgICAgICBldmVudDogZXZlbnQsXG4gICAgICAgICAgICB0YXJnZXQ6IHJlc3VsdFxuICAgICAgICAgIH0pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGNvbnN0IHJlc3VsdCA9IG5ldyBNYXA8bnVtYmVyLCBudW1iZXI+KCk7XG4gICAgICAgICAgeC5mb3JFYWNoKCh2YWx1ZSwga2V5KSA9PiB7XG4gICAgICAgICAgICBpZih2YWx1ZS5vcHRpb25zLnNjYWxlVHlwZS50eXBlID09PSBTY2FsZVR5cGUuYmFuZCl7XG4gICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJlc3VsdC5zZXQoa2V5LCB2YWx1ZS5zY2FsZS5pbnZlcnQoZXZlbnQub2Zmc2V0WCkpO1xuICAgICAgICAgIH0pO1xuICAgICAgICAgIHRoaXMucG9pbnRlck1vdmUuZW1pdCh7XG4gICAgICAgICAgICBldmVudDogZXZlbnQsXG4gICAgICAgICAgICB0YXJnZXQ6IHJlc3VsdFxuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICB9KTtcblxuICAgIHRoaXMuY2hhcnRTZXJ2aWNlLnBsb3RCYW5kRXZlbnRcbiAgICAgIC5waXBlKHRha2VXaGlsZSgoKSA9PiB0aGlzLl9hbGl2ZSkpXG4gICAgICAuc3Vic2NyaWJlKChfKSA9PiB7XG4gICAgICAgIHRoaXMucGxvdEJhbmRzTW92ZS5lbWl0KF8pO1xuICAgICAgfSk7XG5cbiAgICB0aGlzLmNoYXJ0U2VydmljZS5wbG90TGluZU1vdmUucGlwZSh0YWtlV2hpbGUoKCkgPT4gdGhpcy5fYWxpdmUpKS5zdWJzY3JpYmUoKF8pID0+IHtcbiAgICAgIHRoaXMucGxvdExpbmVzTW92ZS5lbWl0KF8pO1xuICAgIH0pO1xuXG4gICAgdGhpcy5jaGFydFNlcnZpY2UucG9pbnRNb3ZlLnBpcGUodGFrZVdoaWxlKCgpID0+IHRoaXMuX2FsaXZlKSkuc3Vic2NyaWJlKChfKSA9PiB7XG4gICAgICB0aGlzLnBvaW50TW92ZS5lbWl0KF8pO1xuICAgIH0pO1xuXG4gICAgdGhpcy5jaGFydFNlcnZpY2UuY2hhcnRDbGlja1xuICAgICAgLnBpcGUoXG4gICAgICAgIHRha2VXaGlsZSgoKSA9PiB0aGlzLl9hbGl2ZSlcbiAgICAgICkuc3Vic2NyaWJlKChfKSA9PiB7XG4gICAgICB0aGlzLmNoYXJ0Q2xpY2suZW1pdChfKTtcbiAgICB9KTtcblxuICAgIHRoaXMuY2hhcnRTZXJ2aWNlLmNoYXJ0Q29udGV4dE1lbnVcbiAgICAgIC5waXBlKFxuICAgICAgICB0YWtlV2hpbGUoKCkgPT4gdGhpcy5fYWxpdmUpXG4gICAgICApLnN1YnNjcmliZSgoXykgPT4ge1xuICAgICAgdGhpcy5jaGFydENvbnRleHRNZW51LmVtaXQoXyk7XG4gICAgfSk7XG5cbiAgICB0aGlzLmNoYXJ0U2VydmljZS5wbG90QmFuZENsaWNrXG4gICAgICAucGlwZShcbiAgICAgICAgdGFrZVdoaWxlKCgpID0+IHRoaXMuX2FsaXZlKSlcbiAgICAgIC5zdWJzY3JpYmUoKF8pID0+IHtcbiAgICAgICAgdGhpcy5wbG90QmFuZENsaWNrLmVtaXQoXyk7XG4gICAgICB9KTtcblxuICAgIHRoaXMuY2hhcnRTZXJ2aWNlLnBsb3RCYW5kQ29udGV4dE1lbnVcbiAgICAgIC5waXBlKFxuICAgICAgICB0YWtlV2hpbGUoKCkgPT4gdGhpcy5fYWxpdmUpKVxuICAgICAgLnN1YnNjcmliZSgoXykgPT4ge1xuICAgICAgICB0aGlzLnBsb3RCYW5kQ29udGV4dE1lbnUuZW1pdChfKTtcbiAgICAgIH0pO1xuXG4gICAgdGhpcy5jaGFydFNlcnZpY2UuYW5ub3RhdGlvbkNvbnRleHRNZW51XG4gICAgICAucGlwZShcbiAgICAgICAgdGFrZVdoaWxlKCgpID0+IHRoaXMuX2FsaXZlKSlcbiAgICAgIC5zdWJzY3JpYmUoKF8pID0+IHtcbiAgICAgICAgdGhpcy5hbm5vdGF0aW9uQ29udGV4dE1lbnUuZW1pdChfKTtcbiAgICAgIH0pO1xuXG4gICAgdGhpcy5jaGFydFNlcnZpY2UuYW5ub3RhdGlvbkNsaWNrXG4gICAgICAucGlwZShcbiAgICAgICAgdGFrZVdoaWxlKCgpID0+IHRoaXMuX2FsaXZlKSlcbiAgICAgIC5zdWJzY3JpYmUoKF8pID0+IHtcbiAgICAgICAgdGhpcy5hbm5vdGF0aW9uQ2xpY2suZW1pdChfKTtcbiAgICAgIH0pO1xuXG4gICAgdGhpcy5jaGFydFNlcnZpY2UuYW5ub3RhdGlvbk1vdmVcbiAgICAgIC5waXBlKFxuICAgICAgICB0YWtlV2hpbGUoKCkgPT4gdGhpcy5fYWxpdmUpKVxuICAgICAgLnN1YnNjcmliZSgoXykgPT4ge1xuICAgICAgICB0aGlzLmFubm90YXRpb25Nb3ZlLmVtaXQoXyk7XG4gICAgICB9KTtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuX2FsaXZlID0gZmFsc2U7XG4gIH1cbn1cbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCJ7XG4gIGhhc1Nlcmllc0RhdGE6IGhhc1Nlcmllc0RhdGEgfCBhc3luYyxcbiAgc3ZjQ29uZmlnOiBzdmNDb25maWcgfCBhc3luY1xufSBhcyBkYXRhXCI+XG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCJkYXRhLmhhc1Nlcmllc0RhdGEgPT09IHRydWUgZWxzZSBub0RhdGFcIj5cbiAgICA8ZGl2IGNsYXNzPVwiY29sdW1uIGNvbHVtbl9hdXRvXCI+XG4gICAgICA8dGV0YS1jaGFydC1jb250YWluZXIgY2xhc3M9XCJjaGFydC1jb250YWluZXIgcG9zaXRpb24tcmVsYXRpdmVcIj48L3RldGEtY2hhcnQtY29udGFpbmVyPlxuICAgIDwvZGl2PlxuICAgIDx0ZXRhLWxlZ2VuZCAqbmdJZj1cImRhdGEuc3ZjQ29uZmlnLmxlZ2VuZD8uZW5hYmxlID09PSB0cnVlXCIgW3Nlcmllc109XCJkYXRhLnN2Y0NvbmZpZy5zZXJpZXNcIj48L3RldGEtbGVnZW5kPlxuICA8L25nLWNvbnRhaW5lcj5cbjwvbmctY29udGFpbmVyPlxuPG5nLXRlbXBsYXRlICNub0RhdGE+XG4gIDxkaXYgY2xhc3M9XCJjb2x1bW4gY29sdW1uX2F1dG8ganVzdGlmeS1jb250ZW50LWNlbnRlclwiPlxuICAgIDxzcGFuIGNsYXNzPVwiZm9udC1ib2R5LTMgY29sb3ItdGV4dC00MCBvdmVyZmxvdy1oaWRkZW4gdGV4dC1vdmVyZmxvdy1lbGxpcHNpcyBub3dyYXAgdGV4dC1hbGlnbi1jZW50ZXJcIj5cbiAgICAgIDxkaXYgI3JlZj48bmctY29udGVudD48L25nLWNvbnRlbnQ+PC9kaXY+XG4gICAgICA8c3BhbiAqbmdJZj1cIiFyZWYuaGFzQ2hpbGROb2RlcygpXCI+XG4gICAgICAgIE5vIGRhdGFcbiAgICAgIDwvc3Bhbj5cbiAgICA8L3NwYW4+XG4gIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
@@ -24,6 +24,7 @@ import { LinearSeriesBase } from './chart-container/series/linear-series-base';
24
24
  import { CrosshairComponent } from './chart-container/crosshair/crosshair.component';
25
25
  import { LetModule } from '@tetacom/ng-components';
26
26
  import { DraggablePointDirective } from './directives/draggable-point.directive';
27
+ import { BandseriesComponent } from './stories/bandseries/bandseries.component';
27
28
  import * as i0 from "@angular/core";
28
29
  export class ChartModule {
29
30
  }
@@ -50,7 +51,8 @@ ChartModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "1
50
51
  BlockAreaSeriesComponent,
51
52
  AnnotationComponent,
52
53
  CrosshairComponent,
53
- DraggablePointDirective], imports: [CommonModule, LetModule], exports: [ChartComponent,
54
+ DraggablePointDirective,
55
+ BandseriesComponent], imports: [CommonModule, LetModule], exports: [ChartComponent,
54
56
  LegendComponent,
55
57
  SeriesBaseComponent,
56
58
  LineSeriesComponent,
@@ -87,6 +89,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImpor
87
89
  AnnotationComponent,
88
90
  CrosshairComponent,
89
91
  DraggablePointDirective,
92
+ BandseriesComponent,
90
93
  ],
91
94
  exports: [
92
95
  ChartComponent,
@@ -102,4 +105,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImpor
102
105
  imports: [CommonModule, LetModule],
103
106
  }]
104
107
  }] });
105
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhcnQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NoYXJ0L2NoYXJ0Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDdkQsT0FBTyxFQUFDLG1CQUFtQixFQUFDLE1BQU0scURBQXFELENBQUM7QUFDeEYsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sNkNBQTZDLENBQUM7QUFDcEYsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQzFELE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBQ2pFLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLHFEQUFxRCxDQUFDO0FBQ3hGLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLGlEQUFpRCxDQUFDO0FBQ25GLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSwyQ0FBMkMsQ0FBQztBQUN6RSxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sMkNBQTJDLENBQUM7QUFDekUsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sK0NBQStDLENBQUM7QUFDaEYsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sZ0RBQWdELENBQUM7QUFDakYsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sbURBQW1ELENBQUM7QUFDckYsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sNkNBQTZDLENBQUM7QUFDN0UsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0saUNBQWlDLENBQUM7QUFDbEUsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sa0NBQWtDLENBQUM7QUFDcEUsT0FBTyxFQUFDLHNCQUFzQixFQUFDLE1BQU0sa0VBQWtFLENBQUM7QUFDeEcsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sOERBQThELENBQUM7QUFDbEcsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0sd0VBQXdFLENBQUM7QUFDaEgsT0FBTyxFQUFDLG1CQUFtQixFQUFDLE1BQU0sNERBQTRELENBQUM7QUFDL0YsT0FBTyxFQUFDLG1CQUFtQixFQUFDLE1BQU0sbURBQW1ELENBQUM7QUFDdEYsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sNkNBQTZDLENBQUM7QUFDN0UsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0saURBQWlELENBQUM7QUFDbkYsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBQ2pELE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLHdDQUF3QyxDQUFDOztBQXlDL0UsTUFBTSxPQUFPLFdBQVc7O3dHQUFYLFdBQVc7eUdBQVgsV0FBVyxpQkFyQ3BCLGNBQWM7UUFDZCxtQkFBbUI7UUFDbkIsdUJBQXVCO1FBQ3ZCLGVBQWU7UUFDZixtQkFBbUI7UUFDbkIsZ0JBQWdCO1FBQ2hCLG1CQUFtQjtRQUNuQixrQkFBa0I7UUFDbEIsY0FBYztRQUNkLGNBQWM7UUFDZCxpQkFBaUI7UUFDakIsaUJBQWlCO1FBQ2pCLGtCQUFrQjtRQUNsQixnQkFBZ0I7UUFDaEIsaUJBQWlCO1FBQ2pCLGtCQUFrQjtRQUNsQixtQkFBbUI7UUFDbkIsc0JBQXNCO1FBQ3RCLG9CQUFvQjtRQUNwQix3QkFBd0I7UUFDeEIsbUJBQW1CO1FBQ25CLGtCQUFrQjtRQUNsQix1QkFBdUIsYUFhZixZQUFZLEVBQUUsU0FBUyxhQVYvQixjQUFjO1FBQ2QsZUFBZTtRQUNmLG1CQUFtQjtRQUNuQixtQkFBbUI7UUFDbkIsa0JBQWtCO1FBQ2xCLHNCQUFzQjtRQUN0QixtQkFBbUI7UUFDbkIsb0JBQW9CO1FBQ3BCLHdCQUF3Qjt5R0FJZixXQUFXLFlBRlosWUFBWSxFQUFFLFNBQVM7MkZBRXRCLFdBQVc7a0JBdkN2QixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRTt3QkFDWixjQUFjO3dCQUNkLG1CQUFtQjt3QkFDbkIsdUJBQXVCO3dCQUN2QixlQUFlO3dCQUNmLG1CQUFtQjt3QkFDbkIsZ0JBQWdCO3dCQUNoQixtQkFBbUI7d0JBQ25CLGtCQUFrQjt3QkFDbEIsY0FBYzt3QkFDZCxjQUFjO3dCQUNkLGlCQUFpQjt3QkFDakIsaUJBQWlCO3dCQUNqQixrQkFBa0I7d0JBQ2xCLGdCQUFnQjt3QkFDaEIsaUJBQWlCO3dCQUNqQixrQkFBa0I7d0JBQ2xCLG1CQUFtQjt3QkFDbkIsc0JBQXNCO3dCQUN0QixvQkFBb0I7d0JBQ3BCLHdCQUF3Qjt3QkFDeEIsbUJBQW1CO3dCQUNuQixrQkFBa0I7d0JBQ2xCLHVCQUF1QjtxQkFDeEI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLGNBQWM7d0JBQ2QsZUFBZTt3QkFDZixtQkFBbUI7d0JBQ25CLG1CQUFtQjt3QkFDbkIsa0JBQWtCO3dCQUNsQixzQkFBc0I7d0JBQ3RCLG1CQUFtQjt3QkFDbkIsb0JBQW9CO3dCQUNwQix3QkFBd0I7cUJBQ3pCO29CQUNELE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxTQUFTLENBQUM7aUJBQ25DIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtOZ01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0NvbW1vbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7Q2hhcnRDb21wb25lbnR9IGZyb20gJy4vY2hhcnQvY2hhcnQuY29tcG9uZW50JztcbmltcG9ydCB7U2VyaWVzSG9zdENvbXBvbmVudH0gZnJvbSAnLi9jaGFydC1jb250YWluZXIvc2VyaWVzLWhvc3Qvc2VyaWVzLWhvc3QuY29tcG9uZW50JztcbmltcG9ydCB7Q2hhcnRDb250YWluZXJDb21wb25lbnR9IGZyb20gJy4vY2hhcnQtY29udGFpbmVyL2NoYXJ0LWNvbnRhaW5lci5jb21wb25lbnQnO1xuaW1wb3J0IHtMZWdlbmRDb21wb25lbnR9IGZyb20gJy4vbGVnZW5kL2xlZ2VuZC5jb21wb25lbnQnO1xuaW1wb3J0IHtTZXJpZXNCYXNlQ29tcG9uZW50fSBmcm9tICcuL2Jhc2Uvc2VyaWVzLWJhc2UuY29tcG9uZW50JztcbmltcG9ydCB7TGluZVNlcmllc0NvbXBvbmVudH0gZnJvbSAnLi9jaGFydC1jb250YWluZXIvc2VyaWVzL2xpbmUvbGluZS1zZXJpZXMuY29tcG9uZW50JztcbmltcG9ydCB7R3JpZGxpbmVzQ29tcG9uZW50fSBmcm9tICcuL2NoYXJ0LWNvbnRhaW5lci9ncmlkbGluZXMvZ3JpZGxpbmVzLmNvbXBvbmVudCc7XG5pbXBvcnQge1hBeGlzQ29tcG9uZW50fSBmcm9tICcuL2NoYXJ0LWNvbnRhaW5lci94LWF4aXMveC1heGlzLmNvbXBvbmVudCc7XG5pbXBvcnQge1lBeGlzQ29tcG9uZW50fSBmcm9tICcuL2NoYXJ0LWNvbnRhaW5lci95LWF4aXMveS1heGlzLmNvbXBvbmVudCc7XG5pbXBvcnQge1Bsb3RsaW5lQ29tcG9uZW50fSBmcm9tICcuL2NoYXJ0LWNvbnRhaW5lci9wbG90bGluZS9wbG90bGluZS5jb21wb25lbnQnO1xuaW1wb3J0IHtQbG90QmFuZENvbXBvbmVudH0gZnJvbSAnLi9jaGFydC1jb250YWluZXIvcGxvdGJhbmQvcGxvdC1iYW5kLmNvbXBvbmVudCc7XG5pbXBvcnQge0JhclNlcmllc0NvbXBvbmVudH0gZnJvbSAnLi9jaGFydC1jb250YWluZXIvc2VyaWVzL2Jhci9iYXItc2VyaWVzLmNvbXBvbmVudCc7XG5pbXBvcnQge1Rvb2x0aXBDb21wb25lbnR9IGZyb20gJy4vY2hhcnQtY29udGFpbmVyL3Rvb2x0aXAvdG9vbHRpcC5jb21wb25lbnQnO1xuaW1wb3J0IHtab29tYWJsZURpcmVjdGl2ZX0gZnJvbSAnLi9kaXJlY3RpdmVzL3pvb21hYmxlLmRpcmVjdGl2ZSc7XG5pbXBvcnQge0JydXNoYWJsZURpcmVjdGl2ZX0gZnJvbSAnLi9kaXJlY3RpdmVzL2JydXNoYWJsZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHtTY2F0dGVyU2VyaWVzQ29tcG9uZW50fSBmcm9tICcuL2NoYXJ0LWNvbnRhaW5lci9zZXJpZXMvc2NhdHRlci1zZXJpZXMvc2NhdHRlci1zZXJpZXMuY29tcG9uZW50JztcbmltcG9ydCB7QmxvY2tTZXJpZXNDb21wb25lbnR9IGZyb20gJy4vY2hhcnQtY29udGFpbmVyL3Nlcmllcy9ibG9jay1zZXJpZXMvYmxvY2stc2VyaWVzLmNvbXBvbmVudCc7XG5pbXBvcnQge0Jsb2NrQXJlYVNlcmllc0NvbXBvbmVudH0gZnJvbSAnLi9jaGFydC1jb250YWluZXIvc2VyaWVzL2Jsb2NrLWFyZWEtc2VyaWVzL2Jsb2NrLWFyZWEtc2VyaWVzLmNvbXBvbmVudCc7XG5pbXBvcnQge0FyZWFTZXJpZXNDb21wb25lbnR9IGZyb20gJy4vY2hhcnQtY29udGFpbmVyL3Nlcmllcy9hcmVhLXNlcmllcy9hcmVhLXNlcmllcy5jb21wb25lbnQnO1xuaW1wb3J0IHtBbm5vdGF0aW9uQ29tcG9uZW50fSBmcm9tICcuL2NoYXJ0LWNvbnRhaW5lci9hbm5vdGF0aW9uL2Fubm90YXRpb24uY29tcG9uZW50JztcbmltcG9ydCB7TGluZWFyU2VyaWVzQmFzZX0gZnJvbSAnLi9jaGFydC1jb250YWluZXIvc2VyaWVzL2xpbmVhci1zZXJpZXMtYmFzZSc7XG5pbXBvcnQge0Nyb3NzaGFpckNvbXBvbmVudH0gZnJvbSAnLi9jaGFydC1jb250YWluZXIvY3Jvc3NoYWlyL2Nyb3NzaGFpci5jb21wb25lbnQnO1xuaW1wb3J0IHtMZXRNb2R1bGV9IGZyb20gJ0B0ZXRhY29tL25nLWNvbXBvbmVudHMnO1xuaW1wb3J0IHtEcmFnZ2FibGVQb2ludERpcmVjdGl2ZX0gZnJvbSAnLi9kaXJlY3RpdmVzL2RyYWdnYWJsZS1wb2ludC5kaXJlY3RpdmUnO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBDaGFydENvbXBvbmVudCxcbiAgICBTZXJpZXNIb3N0Q29tcG9uZW50LFxuICAgIENoYXJ0Q29udGFpbmVyQ29tcG9uZW50LFxuICAgIExlZ2VuZENvbXBvbmVudCxcbiAgICBTZXJpZXNCYXNlQ29tcG9uZW50LFxuICAgIExpbmVhclNlcmllc0Jhc2UsXG4gICAgTGluZVNlcmllc0NvbXBvbmVudCxcbiAgICBHcmlkbGluZXNDb21wb25lbnQsXG4gICAgWEF4aXNDb21wb25lbnQsXG4gICAgWUF4aXNDb21wb25lbnQsXG4gICAgUGxvdGxpbmVDb21wb25lbnQsXG4gICAgUGxvdEJhbmRDb21wb25lbnQsXG4gICAgQmFyU2VyaWVzQ29tcG9uZW50LFxuICAgIFRvb2x0aXBDb21wb25lbnQsXG4gICAgWm9vbWFibGVEaXJlY3RpdmUsXG4gICAgQnJ1c2hhYmxlRGlyZWN0aXZlLFxuICAgIEFyZWFTZXJpZXNDb21wb25lbnQsXG4gICAgU2NhdHRlclNlcmllc0NvbXBvbmVudCxcbiAgICBCbG9ja1Nlcmllc0NvbXBvbmVudCxcbiAgICBCbG9ja0FyZWFTZXJpZXNDb21wb25lbnQsXG4gICAgQW5ub3RhdGlvbkNvbXBvbmVudCxcbiAgICBDcm9zc2hhaXJDb21wb25lbnQsXG4gICAgRHJhZ2dhYmxlUG9pbnREaXJlY3RpdmUsXG4gIF0sXG4gIGV4cG9ydHM6IFtcbiAgICBDaGFydENvbXBvbmVudCxcbiAgICBMZWdlbmRDb21wb25lbnQsXG4gICAgU2VyaWVzQmFzZUNvbXBvbmVudCxcbiAgICBMaW5lU2VyaWVzQ29tcG9uZW50LFxuICAgIEJhclNlcmllc0NvbXBvbmVudCxcbiAgICBTY2F0dGVyU2VyaWVzQ29tcG9uZW50LFxuICAgIEFyZWFTZXJpZXNDb21wb25lbnQsXG4gICAgQmxvY2tTZXJpZXNDb21wb25lbnQsXG4gICAgQmxvY2tBcmVhU2VyaWVzQ29tcG9uZW50LFxuICBdLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBMZXRNb2R1bGVdLFxufSlcbmV4cG9ydCBjbGFzcyBDaGFydE1vZHVsZSB7XG59XG4iXX0=
108
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhcnQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NoYXJ0L2NoYXJ0Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDdkQsT0FBTyxFQUFDLG1CQUFtQixFQUFDLE1BQU0scURBQXFELENBQUM7QUFDeEYsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sNkNBQTZDLENBQUM7QUFDcEYsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQzFELE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBQ2pFLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLHFEQUFxRCxDQUFDO0FBQ3hGLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLGlEQUFpRCxDQUFDO0FBQ25GLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSwyQ0FBMkMsQ0FBQztBQUN6RSxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sMkNBQTJDLENBQUM7QUFDekUsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sK0NBQStDLENBQUM7QUFDaEYsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sZ0RBQWdELENBQUM7QUFDakYsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sbURBQW1ELENBQUM7QUFDckYsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sNkNBQTZDLENBQUM7QUFDN0UsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0saUNBQWlDLENBQUM7QUFDbEUsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sa0NBQWtDLENBQUM7QUFDcEUsT0FBTyxFQUFDLHNCQUFzQixFQUFDLE1BQU0sa0VBQWtFLENBQUM7QUFDeEcsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sOERBQThELENBQUM7QUFDbEcsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0sd0VBQXdFLENBQUM7QUFDaEgsT0FBTyxFQUFDLG1CQUFtQixFQUFDLE1BQU0sNERBQTRELENBQUM7QUFDL0YsT0FBTyxFQUFDLG1CQUFtQixFQUFDLE1BQU0sbURBQW1ELENBQUM7QUFDdEYsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sNkNBQTZDLENBQUM7QUFDN0UsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0saURBQWlELENBQUM7QUFDbkYsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBQ2pELE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLHdDQUF3QyxDQUFDO0FBQy9FLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDJDQUEyQyxDQUFDOztBQTBDaEYsTUFBTSxPQUFPLFdBQVc7O3dHQUFYLFdBQVc7eUdBQVgsV0FBVyxpQkF0Q3BCLGNBQWM7UUFDZCxtQkFBbUI7UUFDbkIsdUJBQXVCO1FBQ3ZCLGVBQWU7UUFDZixtQkFBbUI7UUFDbkIsZ0JBQWdCO1FBQ2hCLG1CQUFtQjtRQUNuQixrQkFBa0I7UUFDbEIsY0FBYztRQUNkLGNBQWM7UUFDZCxpQkFBaUI7UUFDakIsaUJBQWlCO1FBQ2pCLGtCQUFrQjtRQUNsQixnQkFBZ0I7UUFDaEIsaUJBQWlCO1FBQ2pCLGtCQUFrQjtRQUNsQixtQkFBbUI7UUFDbkIsc0JBQXNCO1FBQ3RCLG9CQUFvQjtRQUNwQix3QkFBd0I7UUFDeEIsbUJBQW1CO1FBQ25CLGtCQUFrQjtRQUNsQix1QkFBdUI7UUFDdkIsbUJBQW1CLGFBYVgsWUFBWSxFQUFFLFNBQVMsYUFWL0IsY0FBYztRQUNkLGVBQWU7UUFDZixtQkFBbUI7UUFDbkIsbUJBQW1CO1FBQ25CLGtCQUFrQjtRQUNsQixzQkFBc0I7UUFDdEIsbUJBQW1CO1FBQ25CLG9CQUFvQjtRQUNwQix3QkFBd0I7eUdBSWYsV0FBVyxZQUZaLFlBQVksRUFBRSxTQUFTOzJGQUV0QixXQUFXO2tCQXhDdkIsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUU7d0JBQ1osY0FBYzt3QkFDZCxtQkFBbUI7d0JBQ25CLHVCQUF1Qjt3QkFDdkIsZUFBZTt3QkFDZixtQkFBbUI7d0JBQ25CLGdCQUFnQjt3QkFDaEIsbUJBQW1CO3dCQUNuQixrQkFBa0I7d0JBQ2xCLGNBQWM7d0JBQ2QsY0FBYzt3QkFDZCxpQkFBaUI7d0JBQ2pCLGlCQUFpQjt3QkFDakIsa0JBQWtCO3dCQUNsQixnQkFBZ0I7d0JBQ2hCLGlCQUFpQjt3QkFDakIsa0JBQWtCO3dCQUNsQixtQkFBbUI7d0JBQ25CLHNCQUFzQjt3QkFDdEIsb0JBQW9CO3dCQUNwQix3QkFBd0I7d0JBQ3hCLG1CQUFtQjt3QkFDbkIsa0JBQWtCO3dCQUNsQix1QkFBdUI7d0JBQ3ZCLG1CQUFtQjtxQkFDcEI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLGNBQWM7d0JBQ2QsZUFBZTt3QkFDZixtQkFBbUI7d0JBQ25CLG1CQUFtQjt3QkFDbkIsa0JBQWtCO3dCQUNsQixzQkFBc0I7d0JBQ3RCLG1CQUFtQjt3QkFDbkIsb0JBQW9CO3dCQUNwQix3QkFBd0I7cUJBQ3pCO29CQUNELE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxTQUFTLENBQUM7aUJBQ25DIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtOZ01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0NvbW1vbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7Q2hhcnRDb21wb25lbnR9IGZyb20gJy4vY2hhcnQvY2hhcnQuY29tcG9uZW50JztcbmltcG9ydCB7U2VyaWVzSG9zdENvbXBvbmVudH0gZnJvbSAnLi9jaGFydC1jb250YWluZXIvc2VyaWVzLWhvc3Qvc2VyaWVzLWhvc3QuY29tcG9uZW50JztcbmltcG9ydCB7Q2hhcnRDb250YWluZXJDb21wb25lbnR9IGZyb20gJy4vY2hhcnQtY29udGFpbmVyL2NoYXJ0LWNvbnRhaW5lci5jb21wb25lbnQnO1xuaW1wb3J0IHtMZWdlbmRDb21wb25lbnR9IGZyb20gJy4vbGVnZW5kL2xlZ2VuZC5jb21wb25lbnQnO1xuaW1wb3J0IHtTZXJpZXNCYXNlQ29tcG9uZW50fSBmcm9tICcuL2Jhc2Uvc2VyaWVzLWJhc2UuY29tcG9uZW50JztcbmltcG9ydCB7TGluZVNlcmllc0NvbXBvbmVudH0gZnJvbSAnLi9jaGFydC1jb250YWluZXIvc2VyaWVzL2xpbmUvbGluZS1zZXJpZXMuY29tcG9uZW50JztcbmltcG9ydCB7R3JpZGxpbmVzQ29tcG9uZW50fSBmcm9tICcuL2NoYXJ0LWNvbnRhaW5lci9ncmlkbGluZXMvZ3JpZGxpbmVzLmNvbXBvbmVudCc7XG5pbXBvcnQge1hBeGlzQ29tcG9uZW50fSBmcm9tICcuL2NoYXJ0LWNvbnRhaW5lci94LWF4aXMveC1heGlzLmNvbXBvbmVudCc7XG5pbXBvcnQge1lBeGlzQ29tcG9uZW50fSBmcm9tICcuL2NoYXJ0LWNvbnRhaW5lci95LWF4aXMveS1heGlzLmNvbXBvbmVudCc7XG5pbXBvcnQge1Bsb3RsaW5lQ29tcG9uZW50fSBmcm9tICcuL2NoYXJ0LWNvbnRhaW5lci9wbG90bGluZS9wbG90bGluZS5jb21wb25lbnQnO1xuaW1wb3J0IHtQbG90QmFuZENvbXBvbmVudH0gZnJvbSAnLi9jaGFydC1jb250YWluZXIvcGxvdGJhbmQvcGxvdC1iYW5kLmNvbXBvbmVudCc7XG5pbXBvcnQge0JhclNlcmllc0NvbXBvbmVudH0gZnJvbSAnLi9jaGFydC1jb250YWluZXIvc2VyaWVzL2Jhci9iYXItc2VyaWVzLmNvbXBvbmVudCc7XG5pbXBvcnQge1Rvb2x0aXBDb21wb25lbnR9IGZyb20gJy4vY2hhcnQtY29udGFpbmVyL3Rvb2x0aXAvdG9vbHRpcC5jb21wb25lbnQnO1xuaW1wb3J0IHtab29tYWJsZURpcmVjdGl2ZX0gZnJvbSAnLi9kaXJlY3RpdmVzL3pvb21hYmxlLmRpcmVjdGl2ZSc7XG5pbXBvcnQge0JydXNoYWJsZURpcmVjdGl2ZX0gZnJvbSAnLi9kaXJlY3RpdmVzL2JydXNoYWJsZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHtTY2F0dGVyU2VyaWVzQ29tcG9uZW50fSBmcm9tICcuL2NoYXJ0LWNvbnRhaW5lci9zZXJpZXMvc2NhdHRlci1zZXJpZXMvc2NhdHRlci1zZXJpZXMuY29tcG9uZW50JztcbmltcG9ydCB7QmxvY2tTZXJpZXNDb21wb25lbnR9IGZyb20gJy4vY2hhcnQtY29udGFpbmVyL3Nlcmllcy9ibG9jay1zZXJpZXMvYmxvY2stc2VyaWVzLmNvbXBvbmVudCc7XG5pbXBvcnQge0Jsb2NrQXJlYVNlcmllc0NvbXBvbmVudH0gZnJvbSAnLi9jaGFydC1jb250YWluZXIvc2VyaWVzL2Jsb2NrLWFyZWEtc2VyaWVzL2Jsb2NrLWFyZWEtc2VyaWVzLmNvbXBvbmVudCc7XG5pbXBvcnQge0FyZWFTZXJpZXNDb21wb25lbnR9IGZyb20gJy4vY2hhcnQtY29udGFpbmVyL3Nlcmllcy9hcmVhLXNlcmllcy9hcmVhLXNlcmllcy5jb21wb25lbnQnO1xuaW1wb3J0IHtBbm5vdGF0aW9uQ29tcG9uZW50fSBmcm9tICcuL2NoYXJ0LWNvbnRhaW5lci9hbm5vdGF0aW9uL2Fubm90YXRpb24uY29tcG9uZW50JztcbmltcG9ydCB7TGluZWFyU2VyaWVzQmFzZX0gZnJvbSAnLi9jaGFydC1jb250YWluZXIvc2VyaWVzL2xpbmVhci1zZXJpZXMtYmFzZSc7XG5pbXBvcnQge0Nyb3NzaGFpckNvbXBvbmVudH0gZnJvbSAnLi9jaGFydC1jb250YWluZXIvY3Jvc3NoYWlyL2Nyb3NzaGFpci5jb21wb25lbnQnO1xuaW1wb3J0IHtMZXRNb2R1bGV9IGZyb20gJ0B0ZXRhY29tL25nLWNvbXBvbmVudHMnO1xuaW1wb3J0IHtEcmFnZ2FibGVQb2ludERpcmVjdGl2ZX0gZnJvbSAnLi9kaXJlY3RpdmVzL2RyYWdnYWJsZS1wb2ludC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQmFuZHNlcmllc0NvbXBvbmVudCB9IGZyb20gJy4vc3Rvcmllcy9iYW5kc2VyaWVzL2JhbmRzZXJpZXMuY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgQ2hhcnRDb21wb25lbnQsXG4gICAgU2VyaWVzSG9zdENvbXBvbmVudCxcbiAgICBDaGFydENvbnRhaW5lckNvbXBvbmVudCxcbiAgICBMZWdlbmRDb21wb25lbnQsXG4gICAgU2VyaWVzQmFzZUNvbXBvbmVudCxcbiAgICBMaW5lYXJTZXJpZXNCYXNlLFxuICAgIExpbmVTZXJpZXNDb21wb25lbnQsXG4gICAgR3JpZGxpbmVzQ29tcG9uZW50LFxuICAgIFhBeGlzQ29tcG9uZW50LFxuICAgIFlBeGlzQ29tcG9uZW50LFxuICAgIFBsb3RsaW5lQ29tcG9uZW50LFxuICAgIFBsb3RCYW5kQ29tcG9uZW50LFxuICAgIEJhclNlcmllc0NvbXBvbmVudCxcbiAgICBUb29sdGlwQ29tcG9uZW50LFxuICAgIFpvb21hYmxlRGlyZWN0aXZlLFxuICAgIEJydXNoYWJsZURpcmVjdGl2ZSxcbiAgICBBcmVhU2VyaWVzQ29tcG9uZW50LFxuICAgIFNjYXR0ZXJTZXJpZXNDb21wb25lbnQsXG4gICAgQmxvY2tTZXJpZXNDb21wb25lbnQsXG4gICAgQmxvY2tBcmVhU2VyaWVzQ29tcG9uZW50LFxuICAgIEFubm90YXRpb25Db21wb25lbnQsXG4gICAgQ3Jvc3NoYWlyQ29tcG9uZW50LFxuICAgIERyYWdnYWJsZVBvaW50RGlyZWN0aXZlLFxuICAgIEJhbmRzZXJpZXNDb21wb25lbnQsXG4gIF0sXG4gIGV4cG9ydHM6IFtcbiAgICBDaGFydENvbXBvbmVudCxcbiAgICBMZWdlbmRDb21wb25lbnQsXG4gICAgU2VyaWVzQmFzZUNvbXBvbmVudCxcbiAgICBMaW5lU2VyaWVzQ29tcG9uZW50LFxuICAgIEJhclNlcmllc0NvbXBvbmVudCxcbiAgICBTY2F0dGVyU2VyaWVzQ29tcG9uZW50LFxuICAgIEFyZWFTZXJpZXNDb21wb25lbnQsXG4gICAgQmxvY2tTZXJpZXNDb21wb25lbnQsXG4gICAgQmxvY2tBcmVhU2VyaWVzQ29tcG9uZW50LFxuICBdLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBMZXRNb2R1bGVdLFxufSlcbmV4cG9ydCBjbGFzcyBDaGFydE1vZHVsZSB7XG59XG4iXX0=
@@ -1,7 +1,6 @@
1
1
  import { AxisOrientation } from '../../model/enum/axis-orientation';
2
2
  import * as d3 from 'd3';
3
3
  import { AxisSizeBuilder, ExtremesBuilder } from './builders/public-api';
4
- import { generateTicks } from '../utils/public-api';
5
4
  import { ScaleType } from '../../model/enum/scale-type';
6
5
  export class Axis {
7
6
  constructor(config) {
@@ -13,14 +12,16 @@ export class Axis {
13
12
  .set(ScaleType.log, d3.format('~s'))
14
13
  .set(ScaleType.symlog, d3.format('~s'))
15
14
  .set(ScaleType.pow, d3.format('~s'))
16
- .set(ScaleType.sqrt, d3.format('~s'));
15
+ .set(ScaleType.sqrt, d3.format('~s'))
16
+ .set(ScaleType.band, (_) => { return _; });
17
17
  this.defaultScales = new Map()
18
18
  .set(ScaleType.linear, d3.scaleLinear)
19
19
  .set(ScaleType.log, d3.scaleLog)
20
20
  .set(ScaleType.symlog, d3.scaleSymlog)
21
21
  .set(ScaleType.pow, d3.scalePow)
22
22
  .set(ScaleType.sqrt, d3.scaleSqrt)
23
- .set(ScaleType.time, d3.scaleTime);
23
+ .set(ScaleType.time, d3.scaleTime)
24
+ .set(ScaleType.band, d3.scaleBand);
24
25
  this.chartConfig = config;
25
26
  }
26
27
  /**
@@ -75,12 +76,17 @@ export class Axis {
75
76
  }
76
77
  setScale(scale) {
77
78
  this._scale = scale;
79
+ if (this.options.scaleType.type === ScaleType.band) {
80
+ this._scale.ticks = () => {
81
+ return this._scale.domain();
82
+ };
83
+ }
78
84
  }
79
85
  setSelfSize() {
80
86
  this._selfSize = new AxisSizeBuilder().build(this);
81
87
  }
82
88
  setTicksValues() {
83
- this._ticksValues = generateTicks(this._extremes);
89
+ //this._ticksValues = generateTicks(this._extremes);
84
90
  }
85
91
  setOptions() {
86
92
  const options = this.orientation === AxisOrientation.x
@@ -119,4 +125,4 @@ export class Axis {
119
125
  return this.defaultScales.get(this.options.scaleType.type);
120
126
  }
121
127
  }
122
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXhpcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9jaGFydC9jb3JlL2F4aXMvYXhpcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sbUNBQW1DLENBQUM7QUFHbEUsT0FBTyxLQUFLLEVBQUUsTUFBTSxJQUFJLENBQUM7QUFFekIsT0FBTyxFQUFDLGVBQWUsRUFBRSxlQUFlLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUN2RSxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDbEQsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLDZCQUE2QixDQUFDO0FBRXRELE1BQU0sT0FBTyxJQUFJO0lBNEJmLFlBQVksTUFBb0I7UUF4QnhCLGNBQVMsR0FBcUIsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFJckMsa0JBQWEsR0FBcUIsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFJekMsc0JBQWlCLEdBQUcsSUFBSSxHQUFHLEVBQWtCO2FBQ2xELEdBQUcsQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7YUFDekMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxVQUFVLENBQUMsQ0FBQzthQUM5QyxHQUFHLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO2FBQ25DLEdBQUcsQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7YUFDdEMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQzthQUNuQyxHQUFHLENBQUMsU0FBUyxDQUFDLElBQUksRUFB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S0FBSyxDQUFDO1lBQ3BDLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFekMsSUFBSSxDQUFDLFFBQVEsR0FBRyxPQUFPLENBQUM7SUFDMUIsQ0FBQztJQUVELElBQUksS0FBSztRQUNQLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUNyQixDQUFDO0lBRUQsSUFBSSxRQUFRO1FBQ1YsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQ3hCLENBQUM7SUFFRCxJQUFJLFdBQVc7UUFDYixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUM7SUFDM0IsQ0FBQztJQUVELElBQUksUUFBUTtRQUNWLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQztJQUN4QixDQUFDO0lBRUQsSUFBSSxVQUFVO1FBQ1osT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDO0lBQzNCLENBQUM7SUFFRCxJQUFJLEtBQUs7UUFDUCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDckIsQ0FBQztJQUVELElBQUksT0FBTztRQUNULE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN2QixDQUFDO0lBRUQsSUFBSSxZQUFZO1FBQ2QsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDO0lBQzVCLENBQUM7SUFFTSxnQkFBZ0I7UUFDckIsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2pFLENBQUM7SUFFTSxZQUFZO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDN0QsQ0FBQztDQUdGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtJQ2hhcnRDb25maWd9IGZyb20gJy4uLy4uL21vZGVsL2ktY2hhcnQtY29uZmlnJztcbmltcG9ydCB7QXhpc09yaWVudGF0aW9ufSBmcm9tICcuLi8uLi9tb2RlbC9lbnVtL2F4aXMtb3JpZW50YXRpb24nO1xuaW1wb3J0IHtTZXJpZXN9IGZyb20gJy4uLy4uL21vZGVsL3Nlcmllcyc7XG5pbXBvcnQge0Jhc2VQb2ludH0gZnJvbSAnLi4vLi4vbW9kZWwvYmFzZS1wb2ludCc7XG5pbXBvcnQgKiBhcyBkMyBmcm9tICdkMyc7XG5pbXBvcnQge0F4aXNPcHRpb25zfSBmcm9tICcuLi8uLi9tb2RlbC9heGlzLW9wdGlvbnMnO1xuaW1wb3J0IHtBeGlzU2l6ZUJ1aWxkZXIsIEV4dHJlbWVzQnVpbGRlcn0gZnJvbSAnLi9idWlsZGVycy9wdWJsaWMtYXBpJztcbmltcG9ydCB7Z2VuZXJhdGVUaWNrc30gZnJvbSAnLi4vdXRpbHMvcHVibGljLWFwaSc7XG5pbXBvcnQge1NjYWxlVHlwZX0gZnJvbSAnLi4vLi4vbW9kZWwvZW51bS9zY2FsZS10eXBlJztcblxuZXhwb3J0IGNsYXNzIEF4aXMge1xuICBwcml2YXRlIGNoYXJ0Q29uZmlnOiBJQ2hhcnRDb25maWc7XG4gIHByaXZhdGUgX29yaWVudGF0aW9uOiBBeGlzT3JpZW50YXRpb247XG4gIHByaXZhdGUgX2luZGV4OiBudW1iZXI7XG4gIHByaXZhdGUgX2V4dHJlbWVzOiBbbnVtYmVyLCBudW1iZXJdID0gWzAsIDBdO1xuICBwcml2YXRlIF9zZWxmU2l6ZTogbnVtYmVyO1xuICBwcml2YXRlIF90aWNrc1ZhbHVlczogbnVtYmVyW107XG4gIHByaXZhdGUgX29wdGlvbnM6IEF4aXNPcHRpb25zO1xuICBwcml2YXRlIF9vcmlnaW5Eb21haW46IFtudW1iZXIsIG51bWJlcl0gPSBbMCwgMF07XG5cbiAgcHJpdmF0ZSBfc2NhbGU6IGFueTtcblxuICBwcml2YXRlIGRlZmF1bHRGb3JtYXR0ZXJzID0gbmV3IE1hcDxTY2FsZVR5cGUsIGFueT4oKVxuICAgIC5zZXQoU2NhbGVUeXBlLmxpbmVhciwgZDMuZm9ybWF0KCcsLjV+cicpKVxuICAgIC5zZXQoU2NhbGVUeXBlLnRpbWUsIGQzLnRpbWVGb3JtYXQoJyVkLiVtLiVZJykpXG4gICAgLnNldChTY2FsZVR5cGUubG9nLCBkMy5mb3JtYXQoJ35zJykpXG4gICAgLnNldChTY2FsZVR5cGUuc3ltbG9nLCBkMy5mb3JtYXQoJ35zJykpXG4gICAgLnNldChTY2FsZVR5cGUucG93LCBkMy5mb3JtYXQoJ35zJykpXG4gICAgLnNldChTY2FsZVR5cGUuc3FydCwgZDMuZm9ybWF0KCd+cycpKTtcblxuICBwcml2YXRlIGRlZmF1bHRTY2FsZXMgPSBuZXcgTWFwPFNjYWxlVHlwZSwgYW55PigpXG4gICAgLnNldChTY2FsZVR5cGUubGluZWFyLCBkMy5zY2FsZUxpbmVhcilcbiAgICAuc2V0KFNjYWxlVHlwZS5sb2csIGQzLnNjYWxlTG9nKVxuICAgIC5zZXQoU2NhbGVUeXBlLnN5bWxvZywgZDMuc2NhbGVTeW1sb2cpXG4gICAgLnNldChTY2FsZVR5cGUucG93LCBkMy5zY2FsZVBvdylcbiAgICAuc2V0KFNjYWxlVHlwZS5zcXJ0LCBkMy5zY2FsZVNxcnQpXG4gICAgLnNldChTY2FsZVR5cGUudGltZSwgZDMuc2NhbGVUaW1lKTtcblxuICBjb25zdHJ1Y3Rvcihjb25maWc6IElDaGFydENvbmZpZykge1xuICAgIHRoaXMuY2hhcnRDb25maWcgPSBjb25maWc7XG4gIH1cblxuICAvKipcbiAgICogRmFjdG9yeSBmb3IgY3JlYXRpbmcgeCx5IGF4ZXNcbiAgICogQHBhcmFtIHtBeGlzT3JpZW50YXRpb259IG9yaWVudGF0aW9uXG4gICAqIEF4aXMgdHlwZVxuICAgKiBAcGFyYW0ge0lDaGFydENvbmZpZ30gY29uZmlnXG4gICAqIENoYXJ0IGNvbmZpZ1xuICAgKiBAcGFyYW0ge251bWJlcn0gaW5kZXhcbiAgICogTmV3IGdlbmVyYXRlZCBheGlzXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNyZWF0ZUF4aXMoXG4gICAgb3JpZW50YXRpb246IEF4aXNPcmllbnRhdGlvbixcbiAgICBjb25maWc6IElDaGFydENvbmZpZyxcbiAgICBpbmRleDogbnVtYmVyXG4gICk6IEF4aXMge1xuICAgIGNvbnN0IGF4aXMgPSBuZXcgQXhpcyhjb25maWcpO1xuICAgIGF4aXMuc2V0TG9jYXRlKG9yaWVudGF0aW9uKTtcbiAgICBheGlzLnNldEluZGV4KGluZGV4KTtcblxuICAgIGF4aXMuc2V0T3B0aW9ucygpO1xuICAgIGF4aXMuc2V0RXh0cmVtZXMoKTtcbiAgICBheGlzLnNldFRpY2tzVmFsdWVzKCk7XG4gICAgYXhpcy5zZXRTZWxmU2l6ZSgpO1xuXG4gICAgcmV0dXJuIGF4aXM7XG4gIH1cblxuICAvKipcbiAgICpcbiAgICogQHBhcmFtIHtvcmllbnRhdGlvbn0gb3JpZW50YXRpb25cbiAgICogU2V0IGxvY2F0ZSBheGlzIHggb3IgeVxuICAgKi9cbiAgcHJpdmF0ZSBzZXRMb2NhdGUob3JpZW50YXRpb246IEF4aXNPcmllbnRhdGlvbik6IHZvaWQge1xuICAgIHRoaXMuX29yaWVudGF0aW9uID0gb3JpZW50YXRpb247XG4gIH1cblxuICAvKipcbiAgICpcbiAgICogQHBhcmFtIHtudW1iZXJ9IGluZGV4XG4gICAqIEluZGV4IGF4aXNcbiAgICovXG4gIHByaXZhdGUgc2V0SW5kZXgoaW5kZXg6IG51bWJlcik6IHZvaWQge1xuICAgIHRoaXMuX2luZGV4ID0gaW5kZXg7XG4gIH1cblxuICAvKipcbiAgICogQHJldHVybiB7QXJyYXk8U2VyaWVzPEJhc2VQb2ludD4+fVxuICAgKiBMaW5rZWQgc2VyaWVzXG4gICAqL1xuICBwdWJsaWMgbGlua2VkU2VyaWVzKCk6IEFycmF5PFNlcmllczxCYXNlUG9pbnQ+PiB7XG4gICAgY29uc3QgbGlua2VkRmlsdGVyID0gKHNlcmllOiBTZXJpZXM8QmFzZVBvaW50PikgPT5cbiAgICAgIHNlcmllW1xuICAgICAgICB0aGlzLl9vcmllbnRhdGlvbiA9PT0gQXhpc09yaWVudGF0aW9uLnkgPyAneUF4aXNJbmRleCcgOiAneEF4aXNJbmRleCdcbiAgICAgICAgXSA9PT0gdGhpcy5faW5kZXg7XG5cbiAgICByZXR1cm4gdGhpcy5jaGFydENvbmZpZz8uc2VyaWVzLmZpbHRlcihsaW5rZWRGaWx0ZXIpO1xuICB9XG5cbiAgcHVibGljIHNldEV4dHJlbWVzKCk6IHZvaWQge1xuICAgIGNvbnN0IGJ1aWxkZXIgPSBuZXcgRXh0cmVtZXNCdWlsZGVyKCk7XG4gICAgdGhpcy5fZXh0cmVtZXMgPSBidWlsZGVyLmJ1aWxkKHRoaXMpO1xuICB9XG5cbiAgcHVibGljIHNldE9yaWdpbkRvbWFpbihkb21haW46IFtudW1iZXIsIG51bWJlcl0pIHtcbiAgICB0aGlzLl9vcmlnaW5Eb21haW4gPSBkb21haW47XG4gIH1cblxuICBwdWJsaWMgc2V0U2NhbGUoc2NhbGU6IGFueSkge1xuICAgIHRoaXMuX3NjYWxlID0gc2NhbGU7XG4gIH1cblxuICBwcml2YXRlIHNldFNlbGZTaXplKCk6IHZvaWQge1xuICAgIHRoaXMuX3NlbGZTaXplID0gbmV3IEF4aXNTaXplQnVpbGRlcigpLmJ1aWxkKHRoaXMpO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXRUaWNrc1ZhbHVlcygpOiB2b2lkIHtcbiAgICB0aGlzLl90aWNrc1ZhbHVlcyA9IGdlbmVyYXRlVGlja3ModGhpcy5fZXh0cmVtZXMpO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXRPcHRpb25zKCk6IHZvaWQge1xuICAgIGNvbnN0IG9wdGlvbnMgPVxuICAgICAgdGhpcy5vcmllbnRhdGlvbiA9PT0gQXhpc09yaWVudGF0aW9uLnhcbiAgICAgICAgPyB0aGlzLmNoYXJ0Q29uZmlnLnhBeGlzW3RoaXMuaW5kZXhdXG4gICAgICAgIDogdGhpcy5jaGFydENvbmZpZy55QXhpc1t0aGlzLmluZGV4XTtcblxuICAgIHRoaXMuX29wdGlvbnMgPSBvcHRpb25zO1xuICB9XG5cbiAgZ2V0IHNjYWxlKCk6IGFueSB7XG4gICAgcmV0dXJuIHRoaXMuX3NjYWxlO1xuICB9XG5cbiAgZ2V0IGV4dHJlbWVzKCk6IEFycmF5PG51bWJlcj4ge1xuICAgIHJldHVybiB0aGlzLl9leHRyZW1lcztcbiAgfVxuXG4gIGdldCBvcmllbnRhdGlvbigpOiBBeGlzT3JpZW50YXRpb24ge1xuICAgIHJldHVybiB0aGlzLl9vcmllbnRhdGlvbjtcbiAgfVxuXG4gIGdldCBzZWxmU2l6ZSgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLl9zZWxmU2l6ZTtcbiAgfVxuXG4gIGdldCB0aWNrVmFsdWVzKCk6IG51bWJlcltdIHtcbiAgICByZXR1cm4gdGhpcy5fdGlja3NWYWx1ZXM7XG4gIH1cblxuICBnZXQgaW5kZXgoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5faW5kZXg7XG4gIH1cblxuICBnZXQgb3B0aW9ucygpOiBBeGlzT3B0aW9ucyB7XG4gICAgcmV0dXJuIHRoaXMuX29wdGlvbnM7XG4gIH1cblxuICBnZXQgb3JpZ2luRG9tYWluKCk6IFtudW1iZXIsIG51bWJlcl0ge1xuICAgIHJldHVybiB0aGlzLl9vcmlnaW5Eb21haW47XG4gIH1cblxuICBwdWJsaWMgZGVmYXVsdEZvcm1hdHRlcigpIHtcbiAgICByZXR1cm4gdGhpcy5kZWZhdWx0Rm9ybWF0dGVycy5nZXQodGhpcy5vcHRpb25zLnNjYWxlVHlwZS50eXBlKTtcbiAgfVxuXG4gIHB1YmxpYyBkZWZhdWx0U2NhbGUoKSB7XG4gICAgcmV0dXJuIHRoaXMuZGVmYXVsdFNjYWxlcy5nZXQodGhpcy5vcHRpb25zLnNjYWxlVHlwZS50eXBlKTtcbiAgfVxuXG5cbn1cbiJdfQ==
128
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXhpcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9jaGFydC9jb3JlL2F4aXMvYXhpcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sbUNBQW1DLENBQUM7QUFHbEUsT0FBTyxLQUFLLEVBQUUsTUFBTSxJQUFJLENBQUM7QUFFekIsT0FBTyxFQUFDLGVBQWUsRUFBRSxlQUFlLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUN2RSxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sNkJBQTZCLENBQUM7QUFFdEQsTUFBTSxPQUFPLElBQUk7SUFnQ2YsWUFBWSxNQUFvQjtRQTVCeEIsY0FBUyxHQUF3QixDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUl4QyxrQkFBYSxHQUFxQixDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUl6QyxzQkFBaUIsR0FBRyxJQUFJLEdBQUcsRUFBa0I7YUFDbEQsR0FBRyxDQUFDLFNBQVMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQzthQUN6QyxHQUFHLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQyxDQUFDO2FBQzlDLEdBQUcsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7YUFDbkMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQzthQUN0QyxHQUFHLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO2FBQ25DLEdBQUcsQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7YUFDcEMs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LElBQUksQ0FBQyxDQUFDO0lBQ2pFLENBQUM7SUFFTSxZQUFZO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDN0QsQ0FBQztDQUdGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtJQ2hhcnRDb25maWd9IGZyb20gJy4uLy4uL21vZGVsL2ktY2hhcnQtY29uZmlnJztcbmltcG9ydCB7QXhpc09yaWVudGF0aW9ufSBmcm9tICcuLi8uLi9tb2RlbC9lbnVtL2F4aXMtb3JpZW50YXRpb24nO1xuaW1wb3J0IHtTZXJpZXN9IGZyb20gJy4uLy4uL21vZGVsL3Nlcmllcyc7XG5pbXBvcnQge0Jhc2VQb2ludH0gZnJvbSAnLi4vLi4vbW9kZWwvYmFzZS1wb2ludCc7XG5pbXBvcnQgKiBhcyBkMyBmcm9tICdkMyc7XG5pbXBvcnQge0F4aXNPcHRpb25zfSBmcm9tICcuLi8uLi9tb2RlbC9heGlzLW9wdGlvbnMnO1xuaW1wb3J0IHtBeGlzU2l6ZUJ1aWxkZXIsIEV4dHJlbWVzQnVpbGRlcn0gZnJvbSAnLi9idWlsZGVycy9wdWJsaWMtYXBpJztcbmltcG9ydCB7U2NhbGVUeXBlfSBmcm9tICcuLi8uLi9tb2RlbC9lbnVtL3NjYWxlLXR5cGUnO1xuXG5leHBvcnQgY2xhc3MgQXhpcyB7XG4gIHByaXZhdGUgY2hhcnRDb25maWc6IElDaGFydENvbmZpZztcbiAgcHJpdmF0ZSBfb3JpZW50YXRpb246IEF4aXNPcmllbnRhdGlvbjtcbiAgcHJpdmF0ZSBfaW5kZXg6IG51bWJlcjtcbiAgcHJpdmF0ZSBfZXh0cmVtZXM6IG51bWJlcltdIHwgc3RyaW5nW10gPSBbMCwgMF07XG4gIHByaXZhdGUgX3NlbGZTaXplOiBudW1iZXI7XG4gIHByaXZhdGUgX3RpY2tzVmFsdWVzOiBudW1iZXJbXTtcbiAgcHJpdmF0ZSBfb3B0aW9uczogQXhpc09wdGlvbnM7XG4gIHByaXZhdGUgX29yaWdpbkRvbWFpbjogW251bWJlciwgbnVtYmVyXSA9IFswLCAwXTtcblxuICBwcml2YXRlIF9zY2FsZTogYW55O1xuXG4gIHByaXZhdGUgZGVmYXVsdEZvcm1hdHRlcnMgPSBuZXcgTWFwPFNjYWxlVHlwZSwgYW55PigpXG4gICAgLnNldChTY2FsZVR5cGUubGluZWFyLCBkMy5mb3JtYXQoJywuNX5yJykpXG4gICAgLnNldChTY2FsZVR5cGUudGltZSwgZDMudGltZUZvcm1hdCgnJWQuJW0uJVknKSlcbiAgICAuc2V0KFNjYWxlVHlwZS5sb2csIGQzLmZvcm1hdCgnfnMnKSlcbiAgICAuc2V0KFNjYWxlVHlwZS5zeW1sb2csIGQzLmZvcm1hdCgnfnMnKSlcbiAgICAuc2V0KFNjYWxlVHlwZS5wb3csIGQzLmZvcm1hdCgnfnMnKSlcbiAgICAuc2V0KFNjYWxlVHlwZS5zcXJ0LCBkMy5mb3JtYXQoJ35zJykpXG4gICAgLnNldChTY2FsZVR5cGUuYmFuZCwgKF8pID0+IHtyZXR1cm4gX30pXG5cblxuXG4gIHByaXZhdGUgZGVmYXVsdFNjYWxlcyA9IG5ldyBNYXA8U2NhbGVUeXBlLCBhbnk+KClcbiAgICAuc2V0KFNjYWxlVHlwZS5saW5lYXIsIGQzLnNjYWxlTGluZWFyKVxuICAgIC5zZXQoU2NhbGVUeXBlLmxvZywgZDMuc2NhbGVMb2cpXG4gICAgLnNldChTY2FsZVR5cGUuc3ltbG9nLCBkMy5zY2FsZVN5bWxvZylcbiAgICAuc2V0KFNjYWxlVHlwZS5wb3csIGQzLnNjYWxlUG93KVxuICAgIC5zZXQoU2NhbGVUeXBlLnNxcnQsIGQzLnNjYWxlU3FydClcbiAgICAuc2V0KFNjYWxlVHlwZS50aW1lLCBkMy5zY2FsZVRpbWUpXG4gICAgLnNldChTY2FsZVR5cGUuYmFuZCwgZDMuc2NhbGVCYW5kKTtcblxuICBjb25zdHJ1Y3Rvcihjb25maWc6IElDaGFydENvbmZpZykge1xuICAgIHRoaXMuY2hhcnRDb25maWcgPSBjb25maWc7XG4gIH1cblxuICAvKipcbiAgICogRmFjdG9yeSBmb3IgY3JlYXRpbmcgeCx5IGF4ZXNcbiAgICogQHBhcmFtIHtBeGlzT3JpZW50YXRpb259IG9yaWVudGF0aW9uXG4gICAqIEF4aXMgdHlwZVxuICAgKiBAcGFyYW0ge0lDaGFydENvbmZpZ30gY29uZmlnXG4gICAqIENoYXJ0IGNvbmZpZ1xuICAgKiBAcGFyYW0ge251bWJlcn0gaW5kZXhcbiAgICogTmV3IGdlbmVyYXRlZCBheGlzXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNyZWF0ZUF4aXMoXG4gICAgb3JpZW50YXRpb246IEF4aXNPcmllbnRhdGlvbixcbiAgICBjb25maWc6IElDaGFydENvbmZpZyxcbiAgICBpbmRleDogbnVtYmVyXG4gICk6IEF4aXMge1xuICAgIGNvbnN0IGF4aXMgPSBuZXcgQXhpcyhjb25maWcpO1xuICAgIGF4aXMuc2V0TG9jYXRlKG9yaWVudGF0aW9uKTtcbiAgICBheGlzLnNldEluZGV4KGluZGV4KTtcblxuICAgIGF4aXMuc2V0T3B0aW9ucygpO1xuICAgIGF4aXMuc2V0RXh0cmVtZXMoKTtcbiAgICBheGlzLnNldFRpY2tzVmFsdWVzKCk7XG4gICAgYXhpcy5zZXRTZWxmU2l6ZSgpO1xuXG4gICAgcmV0dXJuIGF4aXM7XG4gIH1cblxuICAvKipcbiAgICpcbiAgICogQHBhcmFtIHtvcmllbnRhdGlvbn0gb3JpZW50YXRpb25cbiAgICogU2V0IGxvY2F0ZSBheGlzIHggb3IgeVxuICAgKi9cbiAgcHJpdmF0ZSBzZXRMb2NhdGUob3JpZW50YXRpb246IEF4aXNPcmllbnRhdGlvbik6IHZvaWQge1xuICAgIHRoaXMuX29yaWVudGF0aW9uID0gb3JpZW50YXRpb247XG4gIH1cblxuICAvKipcbiAgICpcbiAgICogQHBhcmFtIHtudW1iZXJ9IGluZGV4XG4gICAqIEluZGV4IGF4aXNcbiAgICovXG4gIHByaXZhdGUgc2V0SW5kZXgoaW5kZXg6IG51bWJlcik6IHZvaWQge1xuICAgIHRoaXMuX2luZGV4ID0gaW5kZXg7XG4gIH1cblxuICAvKipcbiAgICogQHJldHVybiB7QXJyYXk8U2VyaWVzPEJhc2VQb2ludD4+fVxuICAgKiBMaW5rZWQgc2VyaWVzXG4gICAqL1xuICBwdWJsaWMgbGlua2VkU2VyaWVzKCk6IEFycmF5PFNlcmllczxCYXNlUG9pbnQ+PiB7XG4gICAgY29uc3QgbGlua2VkRmlsdGVyID0gKHNlcmllOiBTZXJpZXM8QmFzZVBvaW50PikgPT5cbiAgICAgIHNlcmllW1xuICAgICAgICB0aGlzLl9vcmllbnRhdGlvbiA9PT0gQXhpc09yaWVudGF0aW9uLnkgPyAneUF4aXNJbmRleCcgOiAneEF4aXNJbmRleCdcbiAgICAgICAgXSA9PT0gdGhpcy5faW5kZXg7XG5cbiAgICByZXR1cm4gdGhpcy5jaGFydENvbmZpZz8uc2VyaWVzLmZpbHRlcihsaW5rZWRGaWx0ZXIpO1xuICB9XG5cbiAgcHVibGljIHNldEV4dHJlbWVzKCk6IHZvaWQge1xuICAgIGNvbnN0IGJ1aWxkZXIgPSBuZXcgRXh0cmVtZXNCdWlsZGVyKCk7XG4gICAgdGhpcy5fZXh0cmVtZXMgPSBidWlsZGVyLmJ1aWxkKHRoaXMpO1xuICB9XG5cbiAgcHVibGljIHNldE9yaWdpbkRvbWFpbihkb21haW46IFtudW1iZXIsIG51bWJlcl0pIHtcbiAgICB0aGlzLl9vcmlnaW5Eb21haW4gPSBkb21haW47XG4gIH1cblxuICBwdWJsaWMgc2V0U2NhbGUoc2NhbGU6IGFueSkge1xuICAgIHRoaXMuX3NjYWxlID0gc2NhbGU7XG5cbiAgICBpZih0aGlzLm9wdGlvbnMuc2NhbGVUeXBlLnR5cGUgPT09IFNjYWxlVHlwZS5iYW5kKSB7XG4gICAgICB0aGlzLl9zY2FsZS50aWNrcyA9ICgpID0+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3NjYWxlLmRvbWFpbigpXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBzZXRTZWxmU2l6ZSgpOiB2b2lkIHtcbiAgICB0aGlzLl9zZWxmU2l6ZSA9IG5ldyBBeGlzU2l6ZUJ1aWxkZXIoKS5idWlsZCh0aGlzKTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0VGlja3NWYWx1ZXMoKTogdm9pZCB7XG4gICAgLy90aGlzLl90aWNrc1ZhbHVlcyA9IGdlbmVyYXRlVGlja3ModGhpcy5fZXh0cmVtZXMpO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXRPcHRpb25zKCk6IHZvaWQge1xuICAgIGNvbnN0IG9wdGlvbnMgPVxuICAgICAgdGhpcy5vcmllbnRhdGlvbiA9PT0gQXhpc09yaWVudGF0aW9uLnhcbiAgICAgICAgPyB0aGlzLmNoYXJ0Q29uZmlnLnhBeGlzW3RoaXMuaW5kZXhdXG4gICAgICAgIDogdGhpcy5jaGFydENvbmZpZy55QXhpc1t0aGlzLmluZGV4XTtcblxuICAgIHRoaXMuX29wdGlvbnMgPSBvcHRpb25zO1xuICB9XG5cbiAgZ2V0IHNjYWxlKCk6IGFueSB7XG4gICAgcmV0dXJuIHRoaXMuX3NjYWxlO1xuICB9XG5cbiAgZ2V0IGV4dHJlbWVzKCk6IEFycmF5PG51bWJlciB8IHN0cmluZz4ge1xuICAgIHJldHVybiB0aGlzLl9leHRyZW1lcztcbiAgfVxuXG4gIGdldCBvcmllbnRhdGlvbigpOiBBeGlzT3JpZW50YXRpb24ge1xuICAgIHJldHVybiB0aGlzLl9vcmllbnRhdGlvbjtcbiAgfVxuXG4gIGdldCBzZWxmU2l6ZSgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLl9zZWxmU2l6ZTtcbiAgfVxuXG4gIGdldCB0aWNrVmFsdWVzKCk6IG51bWJlcltdIHtcbiAgICByZXR1cm4gdGhpcy5fdGlja3NWYWx1ZXM7XG4gIH1cblxuICBnZXQgaW5kZXgoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5faW5kZXg7XG4gIH1cblxuICBnZXQgb3B0aW9ucygpOiBBeGlzT3B0aW9ucyB7XG4gICAgcmV0dXJuIHRoaXMuX29wdGlvbnM7XG4gIH1cblxuICBnZXQgb3JpZ2luRG9tYWluKCk6IFtudW1iZXIsIG51bWJlcl0ge1xuICAgIHJldHVybiB0aGlzLl9vcmlnaW5Eb21haW47XG4gIH1cblxuICBwdWJsaWMgZGVmYXVsdEZvcm1hdHRlcigpIHtcbiAgICByZXR1cm4gdGhpcy5kZWZhdWx0Rm9ybWF0dGVycy5nZXQodGhpcy5vcHRpb25zLnNjYWxlVHlwZS50eXBlKTtcbiAgfVxuXG4gIHB1YmxpYyBkZWZhdWx0U2NhbGUoKSB7XG4gICAgcmV0dXJuIHRoaXMuZGVmYXVsdFNjYWxlcy5nZXQodGhpcy5vcHRpb25zLnNjYWxlVHlwZS50eXBlKTtcbiAgfVxuXG5cbn1cbiJdfQ==
@@ -1,6 +1,7 @@
1
1
  import { AxisOrientation } from '../../../model/enum/axis-orientation';
2
2
  import { maxIndex } from 'd3-array';
3
3
  import { getTextWidth } from '../../utils/public-api';
4
+ import { ScaleType } from "../../../model/enum/scale-type";
4
5
  export class AxisSizeBuilder {
5
6
  constructor() {
6
7
  this.titlePadding = 11;
@@ -12,8 +13,14 @@ export class AxisSizeBuilder {
12
13
  if (settings.orientation === AxisOrientation.y) {
13
14
  const formatter = settings.options.tickFormat || settings.defaultFormatter();
14
15
  finalPadding += settings.options.title ? this.titlePadding : 0;
15
- const scale = settings.defaultScale();
16
- const ticks = scale().domain(settings.extremes).ticks(20);
16
+ const scale = settings.defaultScale()();
17
+ scale.domain(settings.extremes);
18
+ if (settings.options.scaleType.type === ScaleType.band) {
19
+ scale.ticks = (ticks) => {
20
+ return scale.domain();
21
+ };
22
+ }
23
+ const ticks = scale.ticks(20);
17
24
  const maxElementLengthIndex = maxIndex(ticks, (_) => formatter(_).length);
18
25
  finalPadding += getTextWidth(formatter(ticks[maxElementLengthIndex]), this.backupRatio);
19
26
  }
@@ -23,4 +30,4 @@ export class AxisSizeBuilder {
23
30
  return finalPadding;
24
31
  }
25
32
  }
26
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXhpcy1zaXplLWJ1aWxkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvY2hhcnQvY29yZS9heGlzL2J1aWxkZXJzL2F4aXMtc2l6ZS1idWlsZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUN2RSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUd0RCxNQUFNLE9BQU8sZUFBZTtJQUE1QjtRQUNVLGlCQUFZLEdBQUcsRUFBRSxDQUFDO1FBQ2xCLGdCQUFXLEdBQUcsRUFBRSxDQUFDO1FBQ2pCLGdCQUFXLEdBQUcsSUFBSSxDQUFDO0lBK0I3QixDQUFDO0lBN0JDLEtBQUssQ0FBQyxRQUFjO1FBQ2xCLElBQUksWUFBWSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUM7UUFFcEMsSUFBSSxRQUFRLENBQUMsV0FBVyxLQUFLLGVBQWUsQ0FBQyxDQUFDLEVBQUU7WUFDOUMsTUFBTSxTQUFTLEdBQUcsUUFBUSxDQUFDLE9BQU8sQ0FBQyxVQUFVLElBQUksUUFBUSxDQUFDLGdCQUFnQixFQUFFLENBQUM7WUFFN0UsWUFBWSxJQUFJLFFBQVEsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFFL0QsTUFBTSxLQUFLLEdBQUcsUUFBUSxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQ3RDLE1BQU0sS0FBSyxHQUFHLEtBQUssRUFBRSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBRTFELE1BQU0scUJBQXFCLEdBQUcsUUFBUSxDQUNwQyxLQUFLLEVBQ0wsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQzNCLENBQUM7WUFHRixZQUFZLElBQUksWUFBWSxDQUMxQixTQUFTLENBQUMsS0FBSyxDQUFDLHFCQUFxQixDQUFDLENBQUMsRUFDdkMsSUFBSSxDQUFDLFdBQVcsQ0FDakIsQ0FBQztTQUNIO1FBRUQsSUFBSSxRQUFRLENBQUMsV0FBVyxLQUFLLGVBQWUsQ0FBQyxDQUFDLEVBQUU7WUFDOUMsWUFBWSxJQUFJLFlBQVksR0FBRyxFQUFFLENBQUM7U0FDbkM7UUFFRCxPQUFPLFlBQVksQ0FBQztJQUN0QixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBeGlzIH0gZnJvbSAnLi4vYXhpcyc7XG5pbXBvcnQgeyBBeGlzT3JpZW50YXRpb24gfSBmcm9tICcuLi8uLi8uLi9tb2RlbC9lbnVtL2F4aXMtb3JpZW50YXRpb24nO1xuaW1wb3J0IHsgbWF4SW5kZXggfSBmcm9tICdkMy1hcnJheSc7XG5pbXBvcnQgeyBnZXRUZXh0V2lkdGggfSBmcm9tICcuLi8uLi91dGlscy9wdWJsaWMtYXBpJztcbmltcG9ydCB7IElCdWlsZGVyIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWwvaS1idWlsZGVyJztcblxuZXhwb3J0IGNsYXNzIEF4aXNTaXplQnVpbGRlciBpbXBsZW1lbnRzIElCdWlsZGVyPEF4aXMsIG51bWJlcj4ge1xuICBwcml2YXRlIHRpdGxlUGFkZGluZyA9IDExO1xuICBwcml2YXRlIGJhc2VQYWRkaW5nID0gMTY7XG4gIHByaXZhdGUgYmFja3VwUmF0aW8gPSAwLjU4O1xuXG4gIGJ1aWxkKHNldHRpbmdzOiBBeGlzKTogbnVtYmVyIHtcbiAgICBsZXQgZmluYWxQYWRkaW5nID0gdGhpcy5iYXNlUGFkZGluZztcblxuICAgIGlmIChzZXR0aW5ncy5vcmllbnRhdGlvbiA9PT0gQXhpc09yaWVudGF0aW9uLnkpIHtcbiAgICAgIGNvbnN0IGZvcm1hdHRlciA9IHNldHRpbmdzLm9wdGlvbnMudGlja0Zvcm1hdCB8fCBzZXR0aW5ncy5kZWZhdWx0Rm9ybWF0dGVyKCk7XG5cbiAgICAgIGZpbmFsUGFkZGluZyArPSBzZXR0aW5ncy5vcHRpb25zLnRpdGxlID8gdGhpcy50aXRsZVBhZGRpbmcgOiAwO1xuXG4gICAgICBjb25zdCBzY2FsZSA9IHNldHRpbmdzLmRlZmF1bHRTY2FsZSgpO1xuICAgICAgY29uc3QgdGlja3MgPSBzY2FsZSgpLmRvbWFpbihzZXR0aW5ncy5leHRyZW1lcykudGlja3MoMjApO1xuXG4gICAgICBjb25zdCBtYXhFbGVtZW50TGVuZ3RoSW5kZXggPSBtYXhJbmRleChcbiAgICAgICAgdGlja3MsXG4gICAgICAgIChfKSA9PiBmb3JtYXR0ZXIoXykubGVuZ3RoXG4gICAgICApO1xuXG5cbiAgICAgIGZpbmFsUGFkZGluZyArPSBnZXRUZXh0V2lkdGgoXG4gICAgICAgIGZvcm1hdHRlcih0aWNrc1ttYXhFbGVtZW50TGVuZ3RoSW5kZXhdKSxcbiAgICAgICAgdGhpcy5iYWNrdXBSYXRpb1xuICAgICAgKTtcbiAgICB9XG5cbiAgICBpZiAoc2V0dGluZ3Mub3JpZW50YXRpb24gPT09IEF4aXNPcmllbnRhdGlvbi54KSB7XG4gICAgICBmaW5hbFBhZGRpbmcgKz0gZmluYWxQYWRkaW5nICsgMjA7XG4gICAgfVxuXG4gICAgcmV0dXJuIGZpbmFsUGFkZGluZztcbiAgfVxufVxuIl19
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXhpcy1zaXplLWJ1aWxkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvY2hhcnQvY29yZS9heGlzL2J1aWxkZXJzL2F4aXMtc2l6ZS1idWlsZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxzQ0FBc0MsQ0FBQztBQUNyRSxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sVUFBVSxDQUFDO0FBQ2xDLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUVwRCxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sZ0NBQWdDLENBQUM7QUFFekQsTUFBTSxPQUFPLGVBQWU7SUFBNUI7UUFDVSxpQkFBWSxHQUFHLEVBQUUsQ0FBQztRQUNsQixnQkFBVyxHQUFHLEVBQUUsQ0FBQztRQUNqQixnQkFBVyxHQUFHLElBQUksQ0FBQztJQXNDN0IsQ0FBQztJQXBDQyxLQUFLLENBQUMsUUFBYztRQUNsQixJQUFJLFlBQVksR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDO1FBRXBDLElBQUksUUFBUSxDQUFDLFdBQVcsS0FBSyxlQUFlLENBQUMsQ0FBQyxFQUFFO1lBQzlDLE1BQU0sU0FBUyxHQUFHLFFBQVEsQ0FBQyxPQUFPLENBQUMsVUFBVSxJQUFJLFFBQVEsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1lBRTdFLFlBQVksSUFBSSxRQUFRLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBRS9ELE1BQU0sS0FBSyxHQUFHLFFBQVEsQ0FBQyxZQUFZLEVBQUUsRUFBRSxDQUFDO1lBQ3hDLEtBQUssQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFBO1lBRy9CLElBQUcsUUFBUSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsSUFBSSxLQUFLLFNBQVMsQ0FBQyxJQUFJLEVBQUU7Z0JBQ3JELEtBQUssQ0FBQyxLQUFLLEdBQUcsQ0FBQyxLQUFjLEVBQUUsRUFBRTtvQkFDL0IsT0FBTyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUE7Z0JBQ3ZCLENBQUMsQ0FBQTthQUNGO1lBQ0QsTUFBTSxLQUFLLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUU5QixNQUFNLHFCQUFxQixHQUFHLFFBQVEsQ0FDcEMsS0FBSyxFQUNMLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUMzQixDQUFDO1lBRUYsWUFBWSxJQUFJLFlBQVksQ0FDMUIsU0FBUyxDQUFDLEtBQUssQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDLEVBQ3ZDLElBQUksQ0FBQyxXQUFXLENBQ2pCLENBQUM7U0FDSDtRQUVELElBQUksUUFBUSxDQUFDLFdBQVcsS0FBSyxlQUFlLENBQUMsQ0FBQyxFQUFFO1lBQzlDLFlBQVksSUFBSSxZQUFZLEdBQUcsRUFBRSxDQUFDO1NBQ25DO1FBRUQsT0FBTyxZQUFZLENBQUM7SUFDdEIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtBeGlzfSBmcm9tICcuLi9heGlzJztcbmltcG9ydCB7QXhpc09yaWVudGF0aW9ufSBmcm9tICcuLi8uLi8uLi9tb2RlbC9lbnVtL2F4aXMtb3JpZW50YXRpb24nO1xuaW1wb3J0IHttYXhJbmRleH0gZnJvbSAnZDMtYXJyYXknO1xuaW1wb3J0IHtnZXRUZXh0V2lkdGh9IGZyb20gJy4uLy4uL3V0aWxzL3B1YmxpYy1hcGknO1xuaW1wb3J0IHtJQnVpbGRlcn0gZnJvbSAnLi4vLi4vLi4vbW9kZWwvaS1idWlsZGVyJztcbmltcG9ydCB7U2NhbGVUeXBlfSBmcm9tIFwiLi4vLi4vLi4vbW9kZWwvZW51bS9zY2FsZS10eXBlXCI7XG5cbmV4cG9ydCBjbGFzcyBBeGlzU2l6ZUJ1aWxkZXIgaW1wbGVtZW50cyBJQnVpbGRlcjxBeGlzLCBudW1iZXI+IHtcbiAgcHJpdmF0ZSB0aXRsZVBhZGRpbmcgPSAxMTtcbiAgcHJpdmF0ZSBiYXNlUGFkZGluZyA9IDE2O1xuICBwcml2YXRlIGJhY2t1cFJhdGlvID0gMC41ODtcblxuICBidWlsZChzZXR0aW5nczogQXhpcyk6IG51bWJlciB7XG4gICAgbGV0IGZpbmFsUGFkZGluZyA9IHRoaXMuYmFzZVBhZGRpbmc7XG5cbiAgICBpZiAoc2V0dGluZ3Mub3JpZW50YXRpb24gPT09IEF4aXNPcmllbnRhdGlvbi55KSB7XG4gICAgICBjb25zdCBmb3JtYXR0ZXIgPSBzZXR0aW5ncy5vcHRpb25zLnRpY2tGb3JtYXQgfHwgc2V0dGluZ3MuZGVmYXVsdEZvcm1hdHRlcigpO1xuXG4gICAgICBmaW5hbFBhZGRpbmcgKz0gc2V0dGluZ3Mub3B0aW9ucy50aXRsZSA/IHRoaXMudGl0bGVQYWRkaW5nIDogMDtcblxuICAgICAgY29uc3Qgc2NhbGUgPSBzZXR0aW5ncy5kZWZhdWx0U2NhbGUoKSgpO1xuICAgICAgc2NhbGUuZG9tYWluKHNldHRpbmdzLmV4dHJlbWVzKVxuXG5cbiAgICAgIGlmKHNldHRpbmdzLm9wdGlvbnMuc2NhbGVUeXBlLnR5cGUgPT09IFNjYWxlVHlwZS5iYW5kKSB7XG4gICAgICAgIHNjYWxlLnRpY2tzID0gKHRpY2tzPzogbnVtYmVyKSA9PiB7XG4gICAgICAgICAgcmV0dXJuIHNjYWxlLmRvbWFpbigpXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGNvbnN0IHRpY2tzID0gc2NhbGUudGlja3MoMjApO1xuXG4gICAgICBjb25zdCBtYXhFbGVtZW50TGVuZ3RoSW5kZXggPSBtYXhJbmRleChcbiAgICAgICAgdGlja3MsXG4gICAgICAgIChfKSA9PiBmb3JtYXR0ZXIoXykubGVuZ3RoXG4gICAgICApO1xuXG4gICAgICBmaW5hbFBhZGRpbmcgKz0gZ2V0VGV4dFdpZHRoKFxuICAgICAgICBmb3JtYXR0ZXIodGlja3NbbWF4RWxlbWVudExlbmd0aEluZGV4XSksXG4gICAgICAgIHRoaXMuYmFja3VwUmF0aW9cbiAgICAgICk7XG4gICAgfVxuXG4gICAgaWYgKHNldHRpbmdzLm9yaWVudGF0aW9uID09PSBBeGlzT3JpZW50YXRpb24ueCkge1xuICAgICAgZmluYWxQYWRkaW5nICs9IGZpbmFsUGFkZGluZyArIDIwO1xuICAgIH1cblxuICAgIHJldHVybiBmaW5hbFBhZGRpbmc7XG4gIH1cbn1cbiJdfQ==
@@ -1,5 +1,6 @@
1
1
  import { AxisOrientation } from '../../../model/enum/axis-orientation';
2
2
  import * as d3 from 'd3';
3
+ import { ScaleType } from "../../../model/enum/scale-type";
3
4
  export class ExtremesBuilder {
4
5
  constructor() {
5
6
  this.extentAccessorMap = new Map()
@@ -18,6 +19,9 @@ export class ExtremesBuilder {
18
19
  }, []);
19
20
  const accessor = this.extentAccessorMap.get(settings.orientation);
20
21
  this.extremes = data.length > 1 ? d3.extent(data, accessor) : [0, 0];
22
+ if (settings.options.scaleType.type === ScaleType.band) {
23
+ this.extremes = data.map(accessor);
24
+ }
21
25
  }
22
26
  if (hasMin) {
23
27
  this.extremes[0] = options?.min;
@@ -28,4 +32,4 @@ export class ExtremesBuilder {
28
32
  return this.extremes;
29
33
  }
30
34
  }
31
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0cmVtZXMtYnVpbGRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9jaGFydC9jb3JlL2F4aXMvYnVpbGRlcnMvZXh0cmVtZXMtYnVpbGRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sc0NBQXNDLENBQUM7QUFFckUsT0FBTyxLQUFLLEVBQUUsTUFBTSxJQUFJLENBQUM7QUFFekIsTUFBTSxPQUFPLGVBQWU7SUFBNUI7UUFDVSxzQkFBaUIsR0FBRyxJQUFJLEdBQUcsRUFDRjthQUM5QixHQUFHLENBQUMsZUFBZSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUNsQyxHQUFHLENBQUMsZUFBZSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBRTlCLGFBQVEsR0FBcUIsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUEwQjlDLENBQUM7SUF4QkMsS0FBSyxDQUFDLFFBQWM7UUFDbEIsTUFBTSxPQUFPLEdBQUcsUUFBUSxDQUFDLE9BQU8sQ0FBQztRQUVqQyxNQUFNLE1BQU0sR0FBRyxPQUFPLEVBQUUsR0FBRyxJQUFJLElBQUksQ0FBQztRQUNwQyxNQUFNLE1BQU0sR0FBRyxPQUFPLEVBQUUsR0FBRyxJQUFJLElBQUksQ0FBQztRQUVwQyxJQUFJLENBQUMsTUFBTSxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ3RCLE1BQU0sWUFBWSxHQUFHLFFBQVEsQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUM3QyxNQUFNLElBQUksR0FBRyxZQUFZLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBZ0IsRUFBRSxPQUFPLEVBQUUsRUFBRTtnQkFDN0QsT0FBTyxHQUFHLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNsQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDUCxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsQ0FBQztZQUNsRSxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7U0FDdEU7UUFFRCxJQUFJLE1BQU0sRUFBRTtZQUNWLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEdBQUcsT0FBTyxFQUFFLEdBQUcsQ0FBQztTQUNqQztRQUVELElBQUksTUFBTSxFQUFFO1lBQ1YsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsR0FBRyxPQUFPLEVBQUUsR0FBRyxDQUFDO1NBQ2pDO1FBQ0QsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ3ZCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SUJ1aWxkZXJ9IGZyb20gJy4uLy4uLy4uL21vZGVsL2ktYnVpbGRlcic7XG5pbXBvcnQge0F4aXN9IGZyb20gJy4uL2F4aXMnO1xuaW1wb3J0IHtCYXNlUG9pbnR9IGZyb20gJy4uLy4uLy4uL21vZGVsL2Jhc2UtcG9pbnQnO1xuaW1wb3J0IHtBeGlzT3JpZW50YXRpb259IGZyb20gJy4uLy4uLy4uL21vZGVsL2VudW0vYXhpcy1vcmllbnRhdGlvbic7XG5cbmltcG9ydCAqIGFzIGQzIGZyb20gJ2QzJztcblxuZXhwb3J0IGNsYXNzIEV4dHJlbWVzQnVpbGRlciBpbXBsZW1lbnRzIElCdWlsZGVyPEF4aXMsIFtudW1iZXIsIG51bWJlcl0+IHtcbiAgcHJpdmF0ZSBleHRlbnRBY2Nlc3Nvck1hcCA9IG5ldyBNYXA8QXhpc09yaWVudGF0aW9uLFxuICAgIChwb2ludDogQmFzZVBvaW50KSA9PiBudW1iZXI+KClcbiAgICAuc2V0KEF4aXNPcmllbnRhdGlvbi54LCAoXykgPT4gXy54KVxuICAgIC5zZXQoQXhpc09yaWVudGF0aW9uLnksIChfKSA9PiBfLnkpO1xuXG4gIHByaXZhdGUgZXh0cmVtZXM6IFtudW1iZXIsIG51bWJlcl0gPSBbMCwgMF07XG5cbiAgYnVpbGQoc2V0dGluZ3M6IEF4aXMpOiBbbnVtYmVyLCBudW1iZXJdIHtcbiAgICBjb25zdCBvcHRpb25zID0gc2V0dGluZ3Mub3B0aW9ucztcblxuICAgIGNvbnN0IGhhc01pbiA9IG9wdGlvbnM/Lm1pbiAhPSBudWxsO1xuICAgIGNvbnN0IGhhc01heCA9IG9wdGlvbnM/Lm1heCAhPSBudWxsO1xuXG4gICAgaWYgKCFoYXNNaW4gfHwgIWhhc01heCkge1xuICAgICAgY29uc3QgbGlua2VkU2VyaWVzID0gc2V0dGluZ3MubGlua2VkU2VyaWVzKCk7XG4gICAgICBjb25zdCBkYXRhID0gbGlua2VkU2VyaWVzLnJlZHVjZSgoYWNjOiBCYXNlUG9pbnRbXSwgY3VycmVudCkgPT4ge1xuICAgICAgICByZXR1cm4gYWNjLmNvbmNhdChjdXJyZW50LmRhdGEpO1xuICAgICAgfSwgW10pO1xuICAgICAgY29uc3QgYWNjZXNzb3IgPSB0aGlzLmV4dGVudEFjY2Vzc29yTWFwLmdldChzZXR0aW5ncy5vcmllbnRhdGlvbik7XG4gICAgICB0aGlzLmV4dHJlbWVzID0gZGF0YS5sZW5ndGggPiAxID8gZDMuZXh0ZW50KGRhdGEsIGFjY2Vzc29yKSA6IFswLCAwXTtcbiAgICB9XG5cbiAgICBpZiAoaGFzTWluKSB7XG4gICAgICB0aGlzLmV4dHJlbWVzWzBdID0gb3B0aW9ucz8ubWluO1xuICAgIH1cblxuICAgIGlmIChoYXNNYXgpIHtcbiAgICAgIHRoaXMuZXh0cmVtZXNbMV0gPSBvcHRpb25zPy5tYXg7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLmV4dHJlbWVzO1xuICB9XG59XG4iXX0=
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0cmVtZXMtYnVpbGRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9jaGFydC9jb3JlL2F4aXMvYnVpbGRlcnMvZXh0cmVtZXMtYnVpbGRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sc0NBQXNDLENBQUM7QUFFckUsT0FBTyxLQUFLLEVBQUUsTUFBTSxJQUFJLENBQUM7QUFDekIsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGdDQUFnQyxDQUFDO0FBRXpELE1BQU0sT0FBTyxlQUFlO0lBQTVCO1FBQ1Usc0JBQWlCLEdBQUcsSUFBSSxHQUFHLEVBQ0Y7YUFDOUIsR0FBRyxDQUFDLGVBQWUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDbEMsR0FBRyxDQUFDLGVBQWUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUU5QixhQUFRLEdBQXdCLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBZ0NqRCxDQUFDO0lBOUJDLEtBQUssQ0FBQyxRQUFjO1FBQ2xCLE1BQU0sT0FBTyxHQUFHLFFBQVEsQ0FBQyxPQUFPLENBQUM7UUFFakMsTUFBTSxNQUFNLEdBQUcsT0FBTyxFQUFFLEdBQUcsSUFBSSxJQUFJLENBQUM7UUFDcEMsTUFBTSxNQUFNLEdBQUcsT0FBTyxFQUFFLEdBQUcsSUFBSSxJQUFJLENBQUM7UUFFcEMsSUFBSSxDQUFDLE1BQU0sSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUN0QixNQUFNLFlBQVksR0FBRyxRQUFRLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDN0MsTUFBTSxJQUFJLEdBQUcsWUFBWSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQWdCLEVBQUUsT0FBTyxFQUFFLEVBQUU7Z0JBQzdELE9BQU8sR0FBRyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDbEMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQ1AsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLENBQUM7WUFDbEUsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBRXJFLElBQUcsUUFBUSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsSUFBSSxLQUFLLFNBQVMsQ0FBQyxJQUFJLEVBQUU7Z0JBQ3JELElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQTthQUNuQztTQUVGO1FBRUQsSUFBSSxNQUFNLEVBQUU7WUFDVixJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxHQUFHLE9BQU8sRUFBRSxHQUFHLENBQUM7U0FDakM7UUFFRCxJQUFJLE1BQU0sRUFBRTtZQUNWLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEdBQUcsT0FBTyxFQUFFLEdBQUcsQ0FBQztTQUNqQztRQUVELE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN2QixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0lCdWlsZGVyfSBmcm9tICcuLi8uLi8uLi9tb2RlbC9pLWJ1aWxkZXInO1xuaW1wb3J0IHtBeGlzfSBmcm9tICcuLi9heGlzJztcbmltcG9ydCB7QmFzZVBvaW50fSBmcm9tICcuLi8uLi8uLi9tb2RlbC9iYXNlLXBvaW50JztcbmltcG9ydCB7QXhpc09yaWVudGF0aW9ufSBmcm9tICcuLi8uLi8uLi9tb2RlbC9lbnVtL2F4aXMtb3JpZW50YXRpb24nO1xuXG5pbXBvcnQgKiBhcyBkMyBmcm9tICdkMyc7XG5pbXBvcnQge1NjYWxlVHlwZX0gZnJvbSBcIi4uLy4uLy4uL21vZGVsL2VudW0vc2NhbGUtdHlwZVwiO1xuXG5leHBvcnQgY2xhc3MgRXh0cmVtZXNCdWlsZGVyIGltcGxlbWVudHMgSUJ1aWxkZXI8QXhpcywgbnVtYmVyW10gfCBzdHJpbmdbXT4ge1xuICBwcml2YXRlIGV4dGVudEFjY2Vzc29yTWFwID0gbmV3IE1hcDxBeGlzT3JpZW50YXRpb24sXG4gICAgKHBvaW50OiBCYXNlUG9pbnQpID0+IG51bWJlcj4oKVxuICAgIC5zZXQoQXhpc09yaWVudGF0aW9uLngsIChfKSA9PiBfLngpXG4gICAgLnNldChBeGlzT3JpZW50YXRpb24ueSwgKF8pID0+IF8ueSk7XG5cbiAgcHJpdmF0ZSBleHRyZW1lczogbnVtYmVyW10gfCBzdHJpbmdbXSA9IFswLCAwXTtcblxuICBidWlsZChzZXR0aW5nczogQXhpcyk6IG51bWJlcltdIHwgc3RyaW5nW10ge1xuICAgIGNvbnN0IG9wdGlvbnMgPSBzZXR0aW5ncy5vcHRpb25zO1xuXG4gICAgY29uc3QgaGFzTWluID0gb3B0aW9ucz8ubWluICE9IG51bGw7XG4gICAgY29uc3QgaGFzTWF4ID0gb3B0aW9ucz8ubWF4ICE9IG51bGw7XG5cbiAgICBpZiAoIWhhc01pbiB8fCAhaGFzTWF4KSB7XG4gICAgICBjb25zdCBsaW5rZWRTZXJpZXMgPSBzZXR0aW5ncy5saW5rZWRTZXJpZXMoKTtcbiAgICAgIGNvbnN0IGRhdGEgPSBsaW5rZWRTZXJpZXMucmVkdWNlKChhY2M6IEJhc2VQb2ludFtdLCBjdXJyZW50KSA9PiB7XG4gICAgICAgIHJldHVybiBhY2MuY29uY2F0KGN1cnJlbnQuZGF0YSk7XG4gICAgICB9LCBbXSk7XG4gICAgICBjb25zdCBhY2Nlc3NvciA9IHRoaXMuZXh0ZW50QWNjZXNzb3JNYXAuZ2V0KHNldHRpbmdzLm9yaWVudGF0aW9uKTtcbiAgICAgIHRoaXMuZXh0cmVtZXMgPSBkYXRhLmxlbmd0aCA+IDEgPyBkMy5leHRlbnQoZGF0YSwgYWNjZXNzb3IpIDogWzAsIDBdO1xuXG4gICAgICBpZihzZXR0aW5ncy5vcHRpb25zLnNjYWxlVHlwZS50eXBlID09PSBTY2FsZVR5cGUuYmFuZCkge1xuICAgICAgICB0aGlzLmV4dHJlbWVzID0gZGF0YS5tYXAoYWNjZXNzb3IpXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICBpZiAoaGFzTWluKSB7XG4gICAgICB0aGlzLmV4dHJlbWVzWzBdID0gb3B0aW9ucz8ubWluO1xuICAgIH1cblxuICAgIGlmIChoYXNNYXgpIHtcbiAgICAgIHRoaXMuZXh0cmVtZXNbMV0gPSBvcHRpb25zPy5tYXg7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuZXh0cmVtZXM7XG4gIH1cbn1cbiJdfQ==
@@ -34,6 +34,7 @@ export class BrushableDirective {
34
34
  const brushMessage = new BrushMessage({
35
35
  chartId: this.config.id,
36
36
  selection: [this.config?.brush?.from, this.config?.brush?.to],
37
+ mode: 'init'
37
38
  });
38
39
  this.brushService.setBrush(brushMessage);
39
40
  }
@@ -111,6 +112,7 @@ export class BrushableDirective {
111
112
  const brushMessage = new BrushMessage({
112
113
  chartId: this.config.id,
113
114
  selection: [brushScale.invert(from), brushScale.invert(to)],
115
+ mode: _.mode
114
116
  });
115
117
  this.brushService.setBrush(brushMessage);
116
118
  }
@@ -127,7 +129,7 @@ export class BrushableDirective {
127
129
  }
128
130
  this._container.call(this.brush.move, this.selection
129
131
  ? this.selection.map(brushScale)
130
- : domain.map(brushScale));
132
+ : domain.map(brushScale), {});
131
133
  }, 0);
132
134
  });
133
135
  }
@@ -148,4 +150,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImpor
148
150
  }], axis: [{
149
151
  type: Input
150
152
  }] } });
151
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJ1c2hhYmxlLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jaGFydC9kaXJlY3RpdmVzL2JydXNoYWJsZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLFNBQVMsRUFFVCxLQUFLLEdBR04sTUFBTSxlQUFlLENBQUM7QUFLdkIsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBQ25ELE9BQU8sS0FBSyxFQUFFLE1BQU0sSUFBSSxDQUFDO0FBQ3pCLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUMxRCxPQUFPLEVBQUMsTUFBTSxFQUFFLFNBQVMsRUFBQyxNQUFNLE1BQU0sQ0FBQzs7OztBQUt2QyxNQUFNLE9BQU8sa0JBQWtCO0lBWTdCLFlBQ1UsWUFBMEIsRUFDMUIsWUFBMEIsRUFDMUIsT0FBbUIsRUFDbkIsSUFBWTtRQUhaLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQzFCLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQzFCLFlBQU8sR0FBUCxPQUFPLENBQVk7UUFDbkIsU0FBSSxHQUFKLElBQUksQ0FBUTtRQVZkLGFBQVEsR0FBRyxJQUFJLEdBQUcsRUFBb0M7YUFDM0QsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLE1BQU0sRUFBRSxDQUFDO2FBQzdCLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDO1FBQ3pCLFdBQU0sR0FBRyxJQUFJLENBQUM7UUFTcEIsSUFBSSxDQUFDLFVBQVUsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDMUQsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsWUFBWSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQ2hDLFNBQVMsQ0FB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RUFBRSxFQUFFO3dCQUNyQixNQUFNLENBQUMsQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7cUJBQzdCO29CQUVELElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUNsQixJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksRUFDZixJQUFJLENBQUMsU0FBUzt3QkFDWixDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDO3dCQUNoQyxDQUFDLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FDM0IsQ0FBQztnQkFDSixDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDUixDQUFDLENBQUMsQ0FBQztTQUNKO0lBQ0gsQ0FBQztJQUVELHNCQUFzQjtRQUNwQixJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQztJQUN4QixDQUFDOzsrR0EzTFUsa0JBQWtCO21HQUFsQixrQkFBa0I7MkZBQWxCLGtCQUFrQjtrQkFIOUIsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsaUJBQWlCO2lCQUM1Qjs0S0FFVSxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgRGlyZWN0aXZlLFxuICBFbGVtZW50UmVmLFxuICBJbnB1dCwgTmdab25lLCBPbkNoYW5nZXMsIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBTaW1wbGVDaGFuZ2VzLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7SUNoYXJ0Q29uZmlnfSBmcm9tICcuLi9tb2RlbC9pLWNoYXJ0LWNvbmZpZyc7XG5pbXBvcnQge0JydXNoU2VydmljZX0gZnJvbSAnLi4vc2VydmljZS9icnVzaC5zZXJ2aWNlJztcbmltcG9ydCB7Q2hhcnRTZXJ2aWNlfSBmcm9tICcuLi9zZXJ2aWNlL2NoYXJ0LnNlcnZpY2UnO1xuaW1wb3J0IHtBeGlzfSBmcm9tICcuLi9jb3JlL2F4aXMvYXhpcyc7XG5pbXBvcnQge0JydXNoVHlwZX0gZnJvbSAnLi4vbW9kZWwvZW51bS9icnVzaC10eXBlJztcbmltcG9ydCAqIGFzIGQzIGZyb20gJ2QzJztcbmltcG9ydCB7QnJ1c2hNZXNzYWdlfSBmcm9tICcuLi9tb2RlbC9pLWJyb2FkY2FzdC1tZXNzYWdlJztcbmltcG9ydCB7ZmlsdGVyLCB0YWtlV2hpbGV9IGZyb20gJ3J4anMnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbdGV0YUJydXNoYWJsZV0nLFxufSlcbmV4cG9ydCBjbGFzcyBCcnVzaGFibGVEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkRlc3Ryb3ksIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCwgT25DaGFuZ2VzIHtcbiAgQElucHV0KCkgY29uZmlnOiBJQ2hhcnRDb25maWc7XG4gIEBJbnB1dCgpIGF4aXM6IEF4aXM7XG5cbiAgcHJpdmF0ZSBzZWxlY3Rpb246IG51bWJlcltdO1xuICBwcml2YXRlIGJydXNoOiBkMy5CcnVzaEJlaGF2aW9yPGFueT47XG4gIHByaXZhdGUgYnJ1c2hNYXAgPSBuZXcgTWFwPEJydXNoVHlwZSwgZDMuQnJ1c2hCZWhhdmlvcjxhbnk+PigpXG4gICAgLnNldChCcnVzaFR5cGUueCwgZDMuYnJ1c2hYKCkpXG4gICAgLnNldChCcnVzaFR5cGUueSwgZDMuYnJ1c2hZKCkpO1xuICBwcml2YXRlIF9hbGl2ZSA9IHRydWU7XG4gIHByaXZhdGUgX2NvbnRhaW5lcjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGJydXNoU2VydmljZTogQnJ1c2hTZXJ2aWNlLFxuICAgIHByaXZhdGUgY2hhcnRTZXJ2aWNlOiBDaGFydFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBlbGVtZW50OiBFbGVtZW50UmVmLFxuICAgIHByaXZhdGUgem9uZTogTmdab25lXG4gICkge1xuICAgIHRoaXMuX2NvbnRhaW5lciA9IGQzLnNlbGVjdCh0aGlzLmVsZW1lbnQubmF0aXZlRWxlbWVudCk7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLmJydXNoU2VydmljZS5icnVzaERvbWFpbi5waXBlKFxuICAgICAgdGFrZVdoaWxlKCgpID0+IHRoaXMuX2FsaXZlKSxcbiAgICAgIGZpbHRlcigoYnJ1c2gpID0+IGJydXNoLmNoYXJ0SWQgIT09IHRoaXMuY29uZmlnLmlkKVxuICAgICkuc3Vic2NyaWJlKChicnVzaCkgPT4ge1xuICAgICAgdGhpcy5fY29udGFpbmVyLmNhbGwoXG4gICAgICAgIHRoaXMuYnJ1c2gubW92ZSxcbiAgICAgICAgW1xuICAgICAgICAgIE1hdGguZmxvb3IoYnJ1c2guc2VsZWN0aW9uWzBdKSxcbiAgICAgICAgICBNYXRoLmZsb29yKGJydXNoLnNlbGVjdGlvblsxXSksXG4gICAgICAgIF0ubWFwKHRoaXMuYXhpcy5zY2FsZSlcbiAgICAgICk7XG4gICAgfSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLl9hbGl2ZSA9IGZhbHNlO1xuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIGlmKHRoaXMuY29uZmlnPy5icnVzaD8uZW5hYmxlKSB7XG4gICAgICBjb25zdCBicnVzaE1lc3NhZ2UgPSBuZXcgQnJ1c2hNZXNzYWdlKHtcbiAgICAgICAgY2hhcnRJZDogdGhpcy5jb25maWcuaWQsXG4gICAgICAgIHNlbGVjdGlvbjogW3RoaXMuY29uZmlnPy5icnVzaD8uZnJvbSwgdGhpcy5jb25maWc/LmJydXNoPy50b10sXG4gICAgICB9KTtcbiAgICAgIHRoaXMuYnJ1c2hTZXJ2aWNlLnNldEJydXNoKGJydXNoTWVzc2FnZSk7XG4gICAgfVxuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgIGlmIChjaGFuZ2VzLmhhc093blByb3BlcnR5KCdjb25maWcnKSkge1xuICAgICAgdGhpcy5jbGVhclByZXZpb3VzU2VsZWN0aW9uKCk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuY29uZmlnPy5icnVzaD8uZW5hYmxlKSB7XG4gICAgICB0aGlzLmFwcGx5QnJ1c2goXG4gICAgICAgIHRoaXMuY29uZmlnLFxuICAgICAgICB0aGlzLmF4aXMuc2NhbGVcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgYXBwbHlCcnVzaChjb25maWc6IElDaGFydENvbmZpZywgYnJ1c2hTY2FsZTogYW55KSB7XG4gICAgdGhpcy5icnVzaD8ub24oJ3N0YXJ0IGJydXNoIGVuZCcsIG51bGwpO1xuICAgIGlmIChjb25maWcuYnJ1c2g/LmVuYWJsZSkge1xuICAgICAgdGhpcy5icnVzaCA9IHRoaXMuYnJ1c2hNYXAuZ2V0KGNvbmZpZz8uYnJ1c2g/LnR5cGUgPz8gQnJ1c2hUeXBlLngpO1xuICAgICAgdGhpcy5icnVzaC5vbignc3RhcnQgYnJ1c2ggZW5kJywgKF86IGQzLkQzQnJ1c2hFdmVudDxhbnk+KSA9PiB7XG4gICAgICAgIGlmIChfLnNvdXJjZUV2ZW50KSB7XG4gICAgICAgICAgaWYgKCFfLnNlbGVjdGlvbikgcmV0dXJuO1xuICAgICAgICAgIGNvbnN0IFtmcm9tLCB0b10gPSBfLnNlbGVjdGlvbiBhcyBudW1iZXJbXTtcbiAgICAgICAgICBpZiAodG8gLSBmcm9tID09PSAwKSB7XG4gICAgICAgICAgICBjb25zdCBzZWxlY3Rpb246IG51bWJlcltdID1cbiAgICAgICAgICAgICAgdGhpcy5zZWxlY3Rpb24/Lm1hcChicnVzaFNjYWxlKSA/P1xuICAgICAgICAgICAgICBbY29uZmlnLmJydXNoPy5mcm9tLCBjb25maWcuYnJ1c2g/LnRvXS5tYXAoYnJ1c2hTY2FsZSk7XG4gICAgICAgICAgICBjb25zdCBoYWxmQnJ1c2hIZWlnaHQgPSAoc2VsZWN0aW9uWzFdIC0gc2VsZWN0aW9uWzBdKSAvIDI7XG4gICAgICAgICAgICBjb25zdCBpbnZlcnRlZFNlbGVjdGlvbjogbnVtYmVyW10gPSBbXG4gICAgICAgICAgICAgIGZyb20gLSBoYWxmQnJ1c2hIZWlnaHQsXG4gICAgICAgICAgICAgIHRvICsgaGFsZkJydXNoSGVpZ2h0LFxuICAgICAgICAgICAgXS5tYXAoYnJ1c2hTY2FsZS5pbnZlcnQpO1xuXG4gICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgIGludmVydGVkU2VsZWN0aW9uWzFdIC0gaW52ZXJ0ZWRTZWxlY3Rpb25bMF0gPlxuICAgICAgICAgICAgICBjb25maWcuYnJ1c2g/Lm1heFxuICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgIHRoaXMuX2NvbnRhaW5lci5jYWxsKFxuICAgICAgICAgICAgICAgIHRoaXMuYnJ1c2gubW92ZSxcbiAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICBNYXRoLmZsb29yKGludmVydGVkU2VsZWN0aW9uWzBdKSxcbiAgICAgICAgICAgICAgICAgIE1hdGguZmxvb3IoaW52ZXJ0ZWRTZWxlY3Rpb25bMF0gKyBjb25maWcuYnJ1c2g/Lm1heCksXG4gICAgICAgICAgICAgICAgXS5tYXAoYnJ1c2hTY2FsZSlcbiAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgIGludmVydGVkU2VsZWN0aW9uWzFdIC0gaW52ZXJ0ZWRTZWxlY3Rpb25bMF0gPFxuICAgICAgICAgICAgICBjb25maWcuYnJ1c2g/Lm1pblxuICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgIHRoaXMuX2NvbnRhaW5lci5jYWxsKFxuICAgICAgICAgICAgICAgIHRoaXMuYnJ1c2gubW92ZSxcbiAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICBNYXRoLmZsb29yKGludmVydGVkU2VsZWN0aW9uWzBdKSxcbiAgICAgICAgICAgICAgICAgIE1hdGguY2VpbChpbnZlcnRlZFNlbGVjdGlvblswXSArIGNvbmZpZy5icnVzaD8ubWluKSxcbiAgICAgICAgICAgICAgICBdLm1hcChicnVzaFNjYWxlKVxuICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRoaXMuX2NvbnRhaW5lci5jYWxsKHRoaXMuYnJ1c2gubW92ZSwgW1xuICAgICAgICAgICAgICBmcm9tIC0gaGFsZkJydXNoSGVpZ2h0LFxuICAgICAgICAgICAgICB0byArIGhhbGZCcnVzaEhlaWdodCxcbiAgICAgICAgICAgIF0pO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmIChcbiAgICAgICAgICAgIGJydXNoU2NhbGUuaW52ZXJ0KHRvKSAtIGJydXNoU2NhbGUuaW52ZXJ0KGZyb20pID5cbiAgICAgICAgICAgIGNvbmZpZy5icnVzaD8ubWF4XG4gICAgICAgICAgKSB7XG4gICAgICAgICAgICB0aGlzLl9jb250YWluZXIuY2FsbChcbiAgICAgICAgICAgICAgdGhpcy5icnVzaC5tb3ZlLFxuICAgICAgICAgICAgICB0aGlzLnNlbGVjdGlvblxuICAgICAgICAgICAgICAgID8gW1xuICAgICAgICAgICAgICAgICAgdGhpcy5zZWxlY3Rpb25bMF0sXG4gICAgICAgICAgICAgICAgICB0aGlzLnNlbGVjdGlvblswXSArIGNvbmZpZy5icnVzaD8ubWF4LFxuICAgICAgICAgICAgICAgIF0ubWFwKGJydXNoU2NhbGUpXG4gICAgICAgICAgICAgICAgOiBbY29uZmlnLmJydXNoPy5mcm9tLCBjb25maWcuYnJ1c2g/LnRvXS5tYXAoYnJ1c2hTY2FsZSlcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKFxuICAgICAgICAgICAgYnJ1c2hTY2FsZS5pbnZlcnQodG8pIC0gYnJ1c2hTY2FsZS5pbnZlcnQoZnJvbSkgPFxuICAgICAgICAgICAgY29uZmlnLmJydXNoPy5taW5cbiAgICAgICAgICApIHtcbiAgICAgICAgICAgIHRoaXMuX2NvbnRhaW5lci5jYWxsKFxuICAgICAgICAgICAgICB0aGlzLmJydXNoLm1vdmUsXG4gICAgICAgICAgICAgIHRoaXMuc2VsZWN0aW9uXG4gICAgICAgICAgICAgICAgPyBbXG4gICAgICAgICAgICAgICAgICB0aGlzLnNlbGVjdGlvblswXSxcbiAgICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0aW9uWzBdICsgY29uZmlnLmJydXNoPy5taW4sXG4gICAgICAgICAgICAgICAgXS5tYXAoYnJ1c2hTY2FsZSlcbiAgICAgICAgICAgICAgICA6IFtjb25maWcuYnJ1c2g/LmZyb20sIGNvbmZpZy5icnVzaD8udG9dLm1hcChicnVzaFNjYWxlKVxuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpZiAoXy5zb3VyY2VFdmVudCBpbnN0YW5jZW9mIE1vdXNlRXZlbnQpIHtcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0aW9uID0gXy5zZWxlY3Rpb24ubWFwKGJydXNoU2NhbGUuaW52ZXJ0KTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBjb25zdCBicnVzaE1lc3NhZ2UgPSBuZXcgQnJ1c2hNZXNzYWdlKHtcbiAgICAgICAgICAgIGNoYXJ0SWQ6IHRoaXMuY29uZmlnLmlkLFxuICAgICAgICAgICAgc2VsZWN0aW9uOiBbYnJ1c2hTY2FsZS5pbnZlcnQoZnJvbSksIGJydXNoU2NhbGUuaW52ZXJ0KHRvKV0sXG4gICAgICAgICAgfSk7XG4gICAgICAgICAgdGhpcy5icnVzaFNlcnZpY2Uuc2V0QnJ1c2goYnJ1c2hNZXNzYWdlKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG5cbiAgICAgIHRoaXMuem9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB7XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgIHRoaXMuX2NvbnRhaW5lci5jYWxsKHRoaXMuYnJ1c2gpO1xuXG4gICAgICAgICAgbGV0IGRvbWFpbiA9IGJydXNoU2NhbGUuZG9tYWluKCk7XG5cbiAgICAgICAgICBpZiAoY29uZmlnPy5icnVzaD8uZnJvbSkge1xuICAgICAgICAgICAgZG9tYWluWzBdID0gY29uZmlnLmJydXNoLmZyb207XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKGNvbmZpZz8uYnJ1c2g/LnRvKSB7XG4gICAgICAgICAgICBkb21haW5bMV0gPSBjb25maWcuYnJ1c2gudG87XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgdGhpcy5fY29udGFpbmVyLmNhbGwoXG4gICAgICAgICAgICB0aGlzLmJydXNoLm1vdmUsXG4gICAgICAgICAgICB0aGlzLnNlbGVjdGlvblxuICAgICAgICAgICAgICA/IHRoaXMuc2VsZWN0aW9uLm1hcChicnVzaFNjYWxlKVxuICAgICAgICAgICAgICA6IGRvbWFpbi5tYXAoYnJ1c2hTY2FsZSlcbiAgICAgICAgICApO1xuICAgICAgICB9LCAwKTtcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIGNsZWFyUHJldmlvdXNTZWxlY3Rpb24oKSB7XG4gICAgdGhpcy5zZWxlY3Rpb24gPSBudWxsO1xuICB9XG59XG4iXX0=
153
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJ1c2hhYmxlLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jaGFydC9kaXJlY3RpdmVzL2JydXNoYWJsZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLFNBQVMsRUFFVCxLQUFLLEdBR04sTUFBTSxlQUFlLENBQUM7QUFLdkIsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBQ25ELE9BQU8sS0FBSyxFQUFFLE1BQU0sSUFBSSxDQUFDO0FBQ3pCLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUMxRCxPQUFPLEVBQUMsTUFBTSxFQUFFLFNBQVMsRUFBQyxNQUFNLE1BQU0sQ0FBQzs7OztBQUt2QyxNQUFNLE9BQU8sa0JBQWtCO0lBWTdCLFlBQ1UsWUFBMEIsRUFDMUIsWUFBMEIsRUFDMUIsT0FBbUIsRUFDbkIsSUFBWTtRQUhaLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQzFCLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQzFCLFlBQU8sR0FBUCxPQUFPLENBQVk7UUFDbkIsU0FBSSxHQUFKLElBQUksQ0FBUTtRQVZkLGFBQVEsR0FBRyxJQUFJLEdBQUcsRUFBb0M7YUFDM0QsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLE1BQU0sRUFBRSxDQUFDO2FBQzdCLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDO1FBQ3pCLFdBQU0sR0FBRyxJQUFJLENBQUM7UUFTcEIsSUFBSSxDQUFDLFVBQVUsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDMUQsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsWUFBWSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQ2hDLFNBQVMsQ0FB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QUFDLElBQUksQ0FBQztxQkFDL0I7b0JBRUQsSUFBSSxNQUFNLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRTt3QkFDckIsTUFBTSxDQUFDLENBQUMsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO3FCQUM3QjtvQkFFRCxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FDbEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQ2YsSUFBSSxDQUFDLFNBQVM7d0JBQ1osQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQzt3QkFDaEMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLEVBQzFCLEVBQUUsQ0FDSCxDQUFDO2dCQUNKLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUNSLENBQUMsQ0FBQyxDQUFDO1NBQ0o7SUFDSCxDQUFDO0lBRUQsc0JBQXNCO1FBQ3BCLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDO0lBQ3hCLENBQUM7OytHQTlMVSxrQkFBa0I7bUdBQWxCLGtCQUFrQjsyRkFBbEIsa0JBQWtCO2tCQUg5QixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxpQkFBaUI7aUJBQzVCOzRLQUVVLE1BQU07c0JBQWQsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBEaXJlY3RpdmUsXG4gIEVsZW1lbnRSZWYsXG4gIElucHV0LCBOZ1pvbmUsIE9uQ2hhbmdlcywgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIFNpbXBsZUNoYW5nZXMsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtJQ2hhcnRDb25maWd9IGZyb20gJy4uL21vZGVsL2ktY2hhcnQtY29uZmlnJztcbmltcG9ydCB7QnJ1c2hTZXJ2aWNlfSBmcm9tICcuLi9zZXJ2aWNlL2JydXNoLnNlcnZpY2UnO1xuaW1wb3J0IHtDaGFydFNlcnZpY2V9IGZyb20gJy4uL3NlcnZpY2UvY2hhcnQuc2VydmljZSc7XG5pbXBvcnQge0F4aXN9IGZyb20gJy4uL2NvcmUvYXhpcy9heGlzJztcbmltcG9ydCB7QnJ1c2hUeXBlfSBmcm9tICcuLi9tb2RlbC9lbnVtL2JydXNoLXR5cGUnO1xuaW1wb3J0ICogYXMgZDMgZnJvbSAnZDMnO1xuaW1wb3J0IHtCcnVzaE1lc3NhZ2V9IGZyb20gJy4uL21vZGVsL2ktYnJvYWRjYXN0LW1lc3NhZ2UnO1xuaW1wb3J0IHtmaWx0ZXIsIHRha2VXaGlsZX0gZnJvbSAncnhqcyc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1t0ZXRhQnJ1c2hhYmxlXScsXG59KVxuZXhwb3J0IGNsYXNzIEJydXNoYWJsZURpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uRGVzdHJveSwgT25Jbml0LCBBZnRlclZpZXdJbml0LCBPbkNoYW5nZXMge1xuICBASW5wdXQoKSBjb25maWc6IElDaGFydENvbmZpZztcbiAgQElucHV0KCkgYXhpczogQXhpcztcblxuICBwcml2YXRlIHNlbGVjdGlvbjogbnVtYmVyW107XG4gIHByaXZhdGUgYnJ1c2g6IGQzLkJydXNoQmVoYXZpb3I8YW55PjtcbiAgcHJpdmF0ZSBicnVzaE1hcCA9IG5ldyBNYXA8QnJ1c2hUeXBlLCBkMy5CcnVzaEJlaGF2aW9yPGFueT4+KClcbiAgICAuc2V0KEJydXNoVHlwZS54LCBkMy5icnVzaFgoKSlcbiAgICAuc2V0KEJydXNoVHlwZS55LCBkMy5icnVzaFkoKSk7XG4gIHByaXZhdGUgX2FsaXZlID0gdHJ1ZTtcbiAgcHJpdmF0ZSBfY29udGFpbmVyO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgYnJ1c2hTZXJ2aWNlOiBCcnVzaFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBjaGFydFNlcnZpY2U6IENoYXJ0U2VydmljZSxcbiAgICBwcml2YXRlIGVsZW1lbnQ6IEVsZW1lbnRSZWYsXG4gICAgcHJpdmF0ZSB6b25lOiBOZ1pvbmVcbiAgKSB7XG4gICAgdGhpcy5fY29udGFpbmVyID0gZDMuc2VsZWN0KHRoaXMuZWxlbWVudC5uYXRpdmVFbGVtZW50KTtcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMuYnJ1c2hTZXJ2aWNlLmJydXNoRG9tYWluLnBpcGUoXG4gICAgICB0YWtlV2hpbGUoKCkgPT4gdGhpcy5fYWxpdmUpLFxuICAgICAgZmlsdGVyKChicnVzaCkgPT4gYnJ1c2guY2hhcnRJZCAhPT0gdGhpcy5jb25maWcuaWQpXG4gICAgKS5zdWJzY3JpYmUoKGJydXNoKSA9PiB7XG4gICAgICB0aGlzLl9jb250YWluZXIuY2FsbChcbiAgICAgICAgdGhpcy5icnVzaC5tb3ZlLFxuICAgICAgICBbXG4gICAgICAgICAgTWF0aC5mbG9vcihicnVzaC5zZWxlY3Rpb25bMF0pLFxuICAgICAgICAgIE1hdGguZmxvb3IoYnJ1c2guc2VsZWN0aW9uWzFdKSxcbiAgICAgICAgXS5tYXAodGhpcy5heGlzLnNjYWxlKVxuICAgICAgKTtcbiAgICB9KTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuX2FsaXZlID0gZmFsc2U7XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgaWYodGhpcy5jb25maWc/LmJydXNoPy5lbmFibGUpIHtcbiAgICAgIGNvbnN0IGJydXNoTWVzc2FnZSA9IG5ldyBCcnVzaE1lc3NhZ2Uoe1xuICAgICAgICBjaGFydElkOiB0aGlzLmNvbmZpZy5pZCxcbiAgICAgICAgc2VsZWN0aW9uOiBbdGhpcy5jb25maWc/LmJydXNoPy5mcm9tLCB0aGlzLmNvbmZpZz8uYnJ1c2g/LnRvXSxcbiAgICAgICAgbW9kZTogJ2luaXQnXG4gICAgICB9KTtcbiAgICAgIHRoaXMuYnJ1c2hTZXJ2aWNlLnNldEJydXNoKGJydXNoTWVzc2FnZSk7XG4gICAgfVxuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgIGlmIChjaGFuZ2VzLmhhc093blByb3BlcnR5KCdjb25maWcnKSkge1xuICAgICAgdGhpcy5jbGVhclByZXZpb3VzU2VsZWN0aW9uKCk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuY29uZmlnPy5icnVzaD8uZW5hYmxlKSB7XG4gICAgICB0aGlzLmFwcGx5QnJ1c2goXG4gICAgICAgIHRoaXMuY29uZmlnLFxuICAgICAgICB0aGlzLmF4aXMuc2NhbGVcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgYXBwbHlCcnVzaChjb25maWc6IElDaGFydENvbmZpZywgYnJ1c2hTY2FsZTogYW55KSB7XG4gICAgdGhpcy5icnVzaD8ub24oJ3N0YXJ0IGJydXNoIGVuZCcsIG51bGwpO1xuICAgIGlmIChjb25maWcuYnJ1c2g/LmVuYWJsZSkge1xuICAgICAgdGhpcy5icnVzaCA9IHRoaXMuYnJ1c2hNYXAuZ2V0KGNvbmZpZz8uYnJ1c2g/LnR5cGUgPz8gQnJ1c2hUeXBlLngpO1xuICAgICAgdGhpcy5icnVzaC5vbignc3RhcnQgYnJ1c2ggZW5kJywgKF86IGQzLkQzQnJ1c2hFdmVudDxhbnk+KSA9PiB7XG4gICAgICAgIGlmIChfLnNvdXJjZUV2ZW50KSB7XG4gICAgICAgICAgaWYgKCFfLnNlbGVjdGlvbikgcmV0dXJuO1xuICAgICAgICAgIGNvbnN0IFtmcm9tLCB0b10gPSBfLnNlbGVjdGlvbiBhcyBudW1iZXJbXTtcbiAgICAgICAgICBpZiAodG8gLSBmcm9tID09PSAwKSB7XG4gICAgICAgICAgICBjb25zdCBzZWxlY3Rpb246IG51bWJlcltdID1cbiAgICAgICAgICAgICAgdGhpcy5zZWxlY3Rpb24/Lm1hcChicnVzaFNjYWxlKSA/P1xuICAgICAgICAgICAgICBbY29uZmlnLmJydXNoPy5mcm9tLCBjb25maWcuYnJ1c2g/LnRvXS5tYXAoYnJ1c2hTY2FsZSk7XG4gICAgICAgICAgICBjb25zdCBoYWxmQnJ1c2hIZWlnaHQgPSAoc2VsZWN0aW9uWzFdIC0gc2VsZWN0aW9uWzBdKSAvIDI7XG4gICAgICAgICAgICBjb25zdCBpbnZlcnRlZFNlbGVjdGlvbjogbnVtYmVyW10gPSBbXG4gICAgICAgICAgICAgIGZyb20gLSBoYWxmQnJ1c2hIZWlnaHQsXG4gICAgICAgICAgICAgIHRvICsgaGFsZkJydXNoSGVpZ2h0LFxuICAgICAgICAgICAgXS5tYXAoYnJ1c2hTY2FsZS5pbnZlcnQpO1xuXG4gICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgIGludmVydGVkU2VsZWN0aW9uWzFdIC0gaW52ZXJ0ZWRTZWxlY3Rpb25bMF0gPlxuICAgICAgICAgICAgICBjb25maWcuYnJ1c2g/Lm1heFxuICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgIHRoaXMuX2NvbnRhaW5lci5jYWxsKFxuICAgICAgICAgICAgICAgIHRoaXMuYnJ1c2gubW92ZSxcbiAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICBNYXRoLmZsb29yKGludmVydGVkU2VsZWN0aW9uWzBdKSxcbiAgICAgICAgICAgICAgICAgIE1hdGguZmxvb3IoaW52ZXJ0ZWRTZWxlY3Rpb25bMF0gKyBjb25maWcuYnJ1c2g/Lm1heCksXG4gICAgICAgICAgICAgICAgXS5tYXAoYnJ1c2hTY2FsZSlcbiAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgIGludmVydGVkU2VsZWN0aW9uWzFdIC0gaW52ZXJ0ZWRTZWxlY3Rpb25bMF0gPFxuICAgICAgICAgICAgICBjb25maWcuYnJ1c2g/Lm1pblxuICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgIHRoaXMuX2NvbnRhaW5lci5jYWxsKFxuICAgICAgICAgICAgICAgIHRoaXMuYnJ1c2gubW92ZSxcbiAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICBNYXRoLmZsb29yKGludmVydGVkU2VsZWN0aW9uWzBdKSxcbiAgICAgICAgICAgICAgICAgIE1hdGguY2VpbChpbnZlcnRlZFNlbGVjdGlvblswXSArIGNvbmZpZy5icnVzaD8ubWluKSxcbiAgICAgICAgICAgICAgICBdLm1hcChicnVzaFNjYWxlKVxuICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRoaXMuX2NvbnRhaW5lci5jYWxsKHRoaXMuYnJ1c2gubW92ZSwgW1xuICAgICAgICAgICAgICBmcm9tIC0gaGFsZkJydXNoSGVpZ2h0LFxuICAgICAgICAgICAgICB0byArIGhhbGZCcnVzaEhlaWdodCxcbiAgICAgICAgICAgIF0pO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmIChcbiAgICAgICAgICAgIGJydXNoU2NhbGUuaW52ZXJ0KHRvKSAtIGJydXNoU2NhbGUuaW52ZXJ0KGZyb20pID5cbiAgICAgICAgICAgIGNvbmZpZy5icnVzaD8ubWF4XG4gICAgICAgICAgKSB7XG4gICAgICAgICAgICB0aGlzLl9jb250YWluZXIuY2FsbChcbiAgICAgICAgICAgICAgdGhpcy5icnVzaC5tb3ZlLFxuICAgICAgICAgICAgICB0aGlzLnNlbGVjdGlvblxuICAgICAgICAgICAgICAgID8gW1xuICAgICAgICAgICAgICAgICAgdGhpcy5zZWxlY3Rpb25bMF0sXG4gICAgICAgICAgICAgICAgICB0aGlzLnNlbGVjdGlvblswXSArIGNvbmZpZy5icnVzaD8ubWF4LFxuICAgICAgICAgICAgICAgIF0ubWFwKGJydXNoU2NhbGUpXG4gICAgICAgICAgICAgICAgOiBbY29uZmlnLmJydXNoPy5mcm9tLCBjb25maWcuYnJ1c2g/LnRvXS5tYXAoYnJ1c2hTY2FsZSlcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKFxuICAgICAgICAgICAgYnJ1c2hTY2FsZS5pbnZlcnQodG8pIC0gYnJ1c2hTY2FsZS5pbnZlcnQoZnJvbSkgPFxuICAgICAgICAgICAgY29uZmlnLmJydXNoPy5taW5cbiAgICAgICAgICApIHtcbiAgICAgICAgICAgIHRoaXMuX2NvbnRhaW5lci5jYWxsKFxuICAgICAgICAgICAgICB0aGlzLmJydXNoLm1vdmUsXG4gICAgICAgICAgICAgIHRoaXMuc2VsZWN0aW9uXG4gICAgICAgICAgICAgICAgPyBbXG4gICAgICAgICAgICAgICAgICB0aGlzLnNlbGVjdGlvblswXSxcbiAgICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0aW9uWzBdICsgY29uZmlnLmJydXNoPy5taW4sXG4gICAgICAgICAgICAgICAgXS5tYXAoYnJ1c2hTY2FsZSlcbiAgICAgICAgICAgICAgICA6IFtjb25maWcuYnJ1c2g/LmZyb20sIGNvbmZpZy5icnVzaD8udG9dLm1hcChicnVzaFNjYWxlKVxuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpZiAoXy5zb3VyY2VFdmVudCBpbnN0YW5jZW9mIE1vdXNlRXZlbnQpIHtcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0aW9uID0gXy5zZWxlY3Rpb24ubWFwKGJydXNoU2NhbGUuaW52ZXJ0KTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBjb25zdCBicnVzaE1lc3NhZ2UgPSBuZXcgQnJ1c2hNZXNzYWdlKHtcbiAgICAgICAgICAgIGNoYXJ0SWQ6IHRoaXMuY29uZmlnLmlkLFxuICAgICAgICAgICAgc2VsZWN0aW9uOiBbYnJ1c2hTY2FsZS5pbnZlcnQoZnJvbSksIGJydXNoU2NhbGUuaW52ZXJ0KHRvKV0sXG4gICAgICAgICAgICBtb2RlOiBfLm1vZGVcbiAgICAgICAgICB9KTtcbiAgICAgICAgICB0aGlzLmJydXNoU2VydmljZS5zZXRCcnVzaChicnVzaE1lc3NhZ2UpO1xuICAgICAgICB9XG4gICAgICB9KTtcblxuICAgICAgdGhpcy56b25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IHtcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgdGhpcy5fY29udGFpbmVyLmNhbGwodGhpcy5icnVzaCk7XG5cbiAgICAgICAgICBsZXQgZG9tYWluID0gYnJ1c2hTY2FsZS5kb21haW4oKTtcblxuICAgICAgICAgIGlmIChjb25maWc/LmJydXNoPy5mcm9tKSB7XG4gICAgICAgICAgICBkb21haW5bMF0gPSBjb25maWcuYnJ1c2guZnJvbTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpZiAoY29uZmlnPy5icnVzaD8udG8pIHtcbiAgICAgICAgICAgIGRvbWFpblsxXSA9IGNvbmZpZy5icnVzaC50bztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICB0aGlzLl9jb250YWluZXIuY2FsbChcbiAgICAgICAgICAgIHRoaXMuYnJ1c2gubW92ZSxcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0aW9uXG4gICAgICAgICAgICAgID8gdGhpcy5zZWxlY3Rpb24ubWFwKGJydXNoU2NhbGUpXG4gICAgICAgICAgICAgIDogZG9tYWluLm1hcChicnVzaFNjYWxlKSxcbiAgICAgICAgICAgIHt9XG4gICAgICAgICAgKTtcbiAgICAgICAgfSwgMCk7XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBjbGVhclByZXZpb3VzU2VsZWN0aW9uKCkge1xuICAgIHRoaXMuc2VsZWN0aW9uID0gbnVsbDtcbiAgfVxufVxuIl19