@unovis/angular 1.6.2-pre.3 → 1.6.2-pre.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/lib/bundles/unovis-angular.umd.js +9 -3
- package/dist/lib/bundles/unovis-angular.umd.js.map +1 -1
- package/dist/lib/components/crosshair/crosshair.component.d.ts +24 -8
- package/dist/lib/esm2015/components/crosshair/crosshair.component.js +10 -4
- package/dist/lib/fesm2015/unovis-angular.js +9 -3
- package/dist/lib/fesm2015/unovis-angular.js.map +1 -1
- package/dist/lib/package.json +2 -2
- package/package.json +2 -2
|
@@ -80,9 +80,11 @@ export declare class VisCrosshairComponent<Datum> implements CrosshairConfigInte
|
|
|
80
80
|
baseline?: NumericAccessor<Datum>;
|
|
81
81
|
/** An instance of the Tooltip component to be used with Crosshair. Default: `undefined` */
|
|
82
82
|
tooltip?: Tooltip | undefined;
|
|
83
|
-
/** Tooltip template accessor. The function is supposed to return either a valid HTML string or an HTMLElement.
|
|
84
|
-
|
|
85
|
-
|
|
83
|
+
/** Tooltip template accessor. The function is supposed to return either a valid HTML string or an HTMLElement.
|
|
84
|
+
* When `snapToData` is `false`, `datum` will be `undefined` but `data` and `leftNearestDatumIndex` will be provided.
|
|
85
|
+
* Default: `d => ''` */
|
|
86
|
+
template?: (datum: Datum, x: number | Date, data: Datum[], leftNearestDatumIndex: number) => string | HTMLElement;
|
|
87
|
+
/** Hide Crosshair when the corresponding datum element is far from mouse pointer. Default: `true` */
|
|
86
88
|
hideWhenFarFromPointer?: boolean;
|
|
87
89
|
/** Distance in pixels to check in the hideWhenFarFromPointer condition. Default: `100` */
|
|
88
90
|
hideWhenFarFromPointerDistance?: number;
|
|
@@ -92,11 +94,25 @@ export declare class VisCrosshairComponent<Datum> implements CrosshairConfigInte
|
|
|
92
94
|
* Default: `true` */
|
|
93
95
|
snapToData?: boolean;
|
|
94
96
|
/** Custom function for setting up the crosshair circles, usually needed when `snapToData` is set to `false`.
|
|
95
|
-
* The function receives the horizontal position of the crosshair (in the data space, not in pixels), the data array
|
|
96
|
-
*
|
|
97
|
-
* It has to return an array of the CrosshairCircle objects: `{ y: number; color: string; opacity?: number }[]`.
|
|
97
|
+
* The function receives the horizontal position of the crosshair (in the data space, not in pixels), the data array,
|
|
98
|
+
* the `yScale` instance to help you calculate the correct vertical position of the circles, and the nearest datum index.
|
|
99
|
+
* It has to return an array of the `CrosshairCircle` objects: `{ y: number; color: string; opacity?: number }[]`.
|
|
98
100
|
* Default: `undefined` */
|
|
99
|
-
getCircles?: (x: number | Date
|
|
101
|
+
getCircles?: (x: number | Date, data: Datum[], yScale: ContinuousScale, leftNearestDatumIndex: number) => CrosshairCircle[];
|
|
102
|
+
/** Callback function that is called when the crosshair is moved:
|
|
103
|
+
* - `x` is the horizontal position of the crosshair in the data space;
|
|
104
|
+
* - `datum` is the nearest datum to the crosshair;
|
|
105
|
+
* - `datumIndex` is the index of the nearest datum.
|
|
106
|
+
* - `event` is the event that triggered the crosshair move (mouse or wheel).
|
|
107
|
+
*
|
|
108
|
+
* When the mouse goes out of the container and on wheel events, all the arguments are `undefined` except for `event`.
|
|
109
|
+
* Default: `undefined` */
|
|
110
|
+
onCrosshairMove?: (x?: number | Date, datum?: Datum, datumIndex?: number, event?: MouseEvent | WheelEvent) => void;
|
|
111
|
+
/** Force the crosshair to show at a specific position. Default: `undefined` */
|
|
112
|
+
forceShowAt?: number | Date;
|
|
113
|
+
/** Skip range checks for crosshair visibility. When true, crosshair will show regardless of position within chart bounds. Default: `false`
|
|
114
|
+
* This is useful for testing, especially when you only triggers mousemove event but does not have real mouse event. */
|
|
115
|
+
skipRangeCheck?: boolean;
|
|
100
116
|
data: Datum[];
|
|
101
117
|
component: Crosshair<Datum> | undefined;
|
|
102
118
|
componentContainer: ContainerCore | undefined;
|
|
@@ -104,5 +120,5 @@ export declare class VisCrosshairComponent<Datum> implements CrosshairConfigInte
|
|
|
104
120
|
ngOnChanges(changes: SimpleChanges): void;
|
|
105
121
|
private getConfig;
|
|
106
122
|
static ɵfac: i0.ɵɵFactoryDeclaration<VisCrosshairComponent<any>, never>;
|
|
107
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<VisCrosshairComponent<any>, "vis-crosshair", never, { "duration": "duration"; "events": "events"; "attributes": "attributes"; "x": "x"; "y": "y"; "id": "id"; "color": "color"; "xScale": "xScale"; "yScale": "yScale"; "excludeFromDomainCalculation": "excludeFromDomainCalculation"; "strokeColor": "strokeColor"; "strokeWidth": "strokeWidth"; "yStacked": "yStacked"; "baseline": "baseline"; "tooltip": "tooltip"; "template": "template"; "hideWhenFarFromPointer": "hideWhenFarFromPointer"; "hideWhenFarFromPointerDistance": "hideWhenFarFromPointerDistance"; "snapToData": "snapToData"; "getCircles": "getCircles"; "data": "data"; }, {}, never, never>;
|
|
123
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<VisCrosshairComponent<any>, "vis-crosshair", never, { "duration": "duration"; "events": "events"; "attributes": "attributes"; "x": "x"; "y": "y"; "id": "id"; "color": "color"; "xScale": "xScale"; "yScale": "yScale"; "excludeFromDomainCalculation": "excludeFromDomainCalculation"; "strokeColor": "strokeColor"; "strokeWidth": "strokeWidth"; "yStacked": "yStacked"; "baseline": "baseline"; "tooltip": "tooltip"; "template": "template"; "hideWhenFarFromPointer": "hideWhenFarFromPointer"; "hideWhenFarFromPointerDistance": "hideWhenFarFromPointerDistance"; "snapToData": "snapToData"; "getCircles": "getCircles"; "onCrosshairMove": "onCrosshairMove"; "forceShowAt": "forceShowAt"; "skipRangeCheck": "skipRangeCheck"; "data": "data"; }, {}, never, never>;
|
|
108
124
|
}
|
|
@@ -21,8 +21,8 @@ export class VisCrosshairComponent {
|
|
|
21
21
|
(_c = this.componentContainer) === null || _c === void 0 ? void 0 : _c.render();
|
|
22
22
|
}
|
|
23
23
|
getConfig() {
|
|
24
|
-
const { duration, events, attributes, x, y, id, color, xScale, yScale, excludeFromDomainCalculation, strokeColor, strokeWidth, yStacked, baseline, tooltip, template, hideWhenFarFromPointer, hideWhenFarFromPointerDistance, snapToData, getCircles } = this;
|
|
25
|
-
const config = { duration, events, attributes, x, y, id, color, xScale, yScale, excludeFromDomainCalculation, strokeColor, strokeWidth, yStacked, baseline, tooltip, template, hideWhenFarFromPointer, hideWhenFarFromPointerDistance, snapToData, getCircles };
|
|
24
|
+
const { duration, events, attributes, x, y, id, color, xScale, yScale, excludeFromDomainCalculation, strokeColor, strokeWidth, yStacked, baseline, tooltip, template, hideWhenFarFromPointer, hideWhenFarFromPointerDistance, snapToData, getCircles, onCrosshairMove, forceShowAt, skipRangeCheck } = this;
|
|
25
|
+
const config = { duration, events, attributes, x, y, id, color, xScale, yScale, excludeFromDomainCalculation, strokeColor, strokeWidth, yStacked, baseline, tooltip, template, hideWhenFarFromPointer, hideWhenFarFromPointerDistance, snapToData, getCircles, onCrosshairMove, forceShowAt, skipRangeCheck };
|
|
26
26
|
const keys = Object.keys(config);
|
|
27
27
|
keys.forEach(key => { if (config[key] === undefined)
|
|
28
28
|
delete config[key]; });
|
|
@@ -30,7 +30,7 @@ export class VisCrosshairComponent {
|
|
|
30
30
|
}
|
|
31
31
|
}
|
|
32
32
|
VisCrosshairComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: VisCrosshairComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
33
|
-
VisCrosshairComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: VisCrosshairComponent, selector: "vis-crosshair", inputs: { duration: "duration", events: "events", attributes: "attributes", x: "x", y: "y", id: "id", color: "color", xScale: "xScale", yScale: "yScale", excludeFromDomainCalculation: "excludeFromDomainCalculation", strokeColor: "strokeColor", strokeWidth: "strokeWidth", yStacked: "yStacked", baseline: "baseline", tooltip: "tooltip", template: "template", hideWhenFarFromPointer: "hideWhenFarFromPointer", hideWhenFarFromPointerDistance: "hideWhenFarFromPointerDistance", snapToData: "snapToData", getCircles: "getCircles", data: "data" }, providers: [{ provide: VisXYComponent, useExisting: VisCrosshairComponent }], usesOnChanges: true, ngImport: i0, template: '', isInline: true });
|
|
33
|
+
VisCrosshairComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: VisCrosshairComponent, selector: "vis-crosshair", inputs: { duration: "duration", events: "events", attributes: "attributes", x: "x", y: "y", id: "id", color: "color", xScale: "xScale", yScale: "yScale", excludeFromDomainCalculation: "excludeFromDomainCalculation", strokeColor: "strokeColor", strokeWidth: "strokeWidth", yStacked: "yStacked", baseline: "baseline", tooltip: "tooltip", template: "template", hideWhenFarFromPointer: "hideWhenFarFromPointer", hideWhenFarFromPointerDistance: "hideWhenFarFromPointerDistance", snapToData: "snapToData", getCircles: "getCircles", onCrosshairMove: "onCrosshairMove", forceShowAt: "forceShowAt", skipRangeCheck: "skipRangeCheck", data: "data" }, providers: [{ provide: VisXYComponent, useExisting: VisCrosshairComponent }], usesOnChanges: true, ngImport: i0, template: '', isInline: true });
|
|
34
34
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: VisCrosshairComponent, decorators: [{
|
|
35
35
|
type: Component,
|
|
36
36
|
args: [{
|
|
@@ -79,7 +79,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
79
79
|
type: Input
|
|
80
80
|
}], getCircles: [{
|
|
81
81
|
type: Input
|
|
82
|
+
}], onCrosshairMove: [{
|
|
83
|
+
type: Input
|
|
84
|
+
}], forceShowAt: [{
|
|
85
|
+
type: Input
|
|
86
|
+
}], skipRangeCheck: [{
|
|
87
|
+
type: Input
|
|
82
88
|
}], data: [{
|
|
83
89
|
type: Input
|
|
84
90
|
}] } });
|
|
85
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3Jvc3NoYWlyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2Nyb3NzaGFpci9jcm9zc2hhaXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLDBFQUEwRTtBQUMxRSxPQUFPLEVBQUUsU0FBUyxFQUFpQixLQUFLLEVBQWlCLE1BQU0sZUFBZSxDQUFBO0FBQzlFLE9BQU8sRUFDTCxTQUFTLEdBVVYsTUFBTSxZQUFZLENBQUE7QUFDbkIsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLFlBQVksQ0FBQTs7QUFRM0MsTUFBTSxPQUFPLHFCQUFxQjtJQXdIaEMsZUFBZTs7UUFDYixJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksU0FBUyxDQUFRLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFBO1FBRXZELElBQUksSUFBSSxDQUFDLElBQUksRUFBRTtZQUNiLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQTtZQUNqQyxNQUFBLElBQUksQ0FBQyxrQkFBa0IsMENBQUUsTUFBTSxFQUFFLENBQUE7U0FDbEM7SUFDSCxDQUFDO0lBRUQsV0FBVyxDQUFFLE9BQXNCOztRQUNqQyxJQUFJLE9BQU8sQ0FBQyxJQUFJLEVBQUU7WUFBRSxNQUFBLElBQUksQ0FBQyxTQUFTLDBDQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUE7U0FBRTtRQUN4RCxNQUFBLElBQUksQ0FBQyxTQUFTLDBDQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQTtRQUMzQyxNQUFBLElBQUksQ0FBQyxrQkFBa0IsMENBQUUsTUFBTSxFQUFFLENBQUE7SUFDbkMsQ0FBQztJQUVPLFNBQVM7UUFDZixNQUFNLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsNEJBQTRCLEVBQUUsV0FBVyxFQUFFLFdBQVcsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsc0JBQXNCLEVBQUUsOEJBQThCLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxHQUFHLElBQUksQ0FBQTtRQUM3UCxNQUFNLE1BQU0sR0FBRyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLDRCQUE0QixFQUFFLFdBQVcsRUFBRSxXQUFXLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLHNCQUFzQixFQUFFLDhCQUE4QixFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsQ0FBQTtRQUMvUCxNQUFNLElBQUksR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBOEMsQ0FBQTtRQUM3RSxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFFLEdBQUcsSUFBSSxNQUFNLENBQUMsR0FBRyxDQUFDLEtBQUssU0FBUztZQUFFLE9BQU8sTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFBLENBQUMsQ0FBQyxDQUFDLENBQUE7UUFFMUUsT0FBTyxNQUFNLENBQUE7SUFDZixDQUFDOzttSEE5SVUscUJBQXFCO3VHQUFyQixxQkFBcUIsc2tCQUZyQixDQUFDLEVBQUUsT0FBTyxFQUFFLGNBQWMsRUFBRSxXQUFXLEVBQUUscUJBQXFCLEVBQUUsQ0FBQywrQ0FGbEUsRUFBRTs0RkFJRCxxQkFBcUI7a0JBTmpDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGVBQWU7b0JBQ3pCLFFBQVEsRUFBRSxFQUFFO29CQUNaLGdEQUFnRDtvQkFDaEQsU0FBUyxFQUFFLENBQUMsRUFBRSxPQUFPLEVBQUUsY0FBYyxFQUFFLFdBQVcsdUJBQXVCLEVBQUUsQ0FBQztpQkFDN0U7OEJBR1UsUUFBUTtzQkFBaEIsS0FBSztnQkFtQkcsTUFBTTtzQkFBZCxLQUFLO2dCQXdCRyxVQUFVO3NCQUFsQixLQUFLO2dCQU9HLENBQUM7c0JBQVQsS0FBSztnQkFHRyxDQUFDO3NCQUFULEtBQUs7Z0JBR0csRUFBRTtzQkFBVixLQUFLO2dCQUdHLEtBQUs7c0JBQWIsS0FBSztnQkFLRyxNQUFNO3NCQUFkLEtBQUs7Z0JBS0csTUFBTTtzQkFBZCxLQUFLO2dCQU1HLDRCQUE0QjtzQkFBcEMsS0FBSztnQkFHRyxXQUFXO3NCQUFuQixLQUFLO2dCQUdHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBR0csUUFBUTtzQkFBaEIsS0FBSztnQkFHRyxRQUFRO3NCQUFoQixLQUFLO2dCQUdHLE9BQU87c0JBQWYsS0FBSztnQkFHRyxRQUFRO3NCQUFoQixLQUFLO2dCQUdHLHNCQUFzQjtzQkFBOUIsS0FBSztnQkFHRyw4QkFBOEI7c0JBQXRDLEtBQUs7Z0JBTUcsVUFBVTtzQkFBbEIsS0FBSztnQkFPRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSyIsInNvdXJjZXNDb250ZW50IjpbIi8vICEhISBUaGlzIGNvZGUgd2FzIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkLiBZb3Ugc2hvdWxkIG5vdCBjaGFuZ2UgaXQgISEhXG5pbXBvcnQgeyBDb21wb25lbnQsIEFmdGVyVmlld0luaXQsIElucHV0LCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7XG4gIENyb3NzaGFpcixcbiAgQ3Jvc3NoYWlyQ29uZmlnSW50ZXJmYWNlLFxuICBDb250YWluZXJDb3JlLFxuICBWaXNFdmVudFR5cGUsXG4gIFZpc0V2ZW50Q2FsbGJhY2ssXG4gIE51bWVyaWNBY2Nlc3NvcixcbiAgQ29sb3JBY2Nlc3NvcixcbiAgQ29udGludW91c1NjYWxlLFxuICBUb29sdGlwLFxuICBDcm9zc2hhaXJDaXJjbGUsXG59IGZyb20gJ0B1bm92aXMvdHMnXG5pbXBvcnQgeyBWaXNYWUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2NvcmUnXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3Zpcy1jcm9zc2hhaXInLFxuICB0ZW1wbGF0ZTogJycsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby11c2UtYmVmb3JlLWRlZmluZVxuICBwcm92aWRlcnM6IFt7IHByb3ZpZGU6IFZpc1hZQ29tcG9uZW50LCB1c2VFeGlzdGluZzogVmlzQ3Jvc3NoYWlyQ29tcG9uZW50IH1dLFxufSlcbmV4cG9ydCBjbGFzcyBWaXNDcm9zc2hhaXJDb21wb25lbnQ8RGF0dW0+IGltcGxlbWVudHMgQ3Jvc3NoYWlyQ29uZmlnSW50ZXJmYWNlPERhdHVtPiwgQWZ0ZXJWaWV3SW5pdCB7XG4gIC8qKiBBbmltYXRpb24gZHVyYXRpb24gb2YgdGhlIGRhdGEgdXBkYXRlIHRyYW5zaXRpb25zIGluIG1pbGxpc2Vjb25kcy4gRGVmYXVsdDogYDYwMGAgKi9cbiAgQElucHV0KCkgZHVyYXRpb24/OiBudW1iZXJcblxuICAvKiogRXZlbnRzIGNvbmZpZ3VyYXRpb24uIEFuIG9iamVjdCBjb250YWluaW5nIHByb3BlcnRpZXMgaW4gdGhlIGZvbGxvd2luZyBmb3JtYXQ6XG4gICAqXG4gICAqIGBgYFxuICAgKiB7XG4gICAqIFxcW3NlbGVjdG9yU3RyaW5nXToge1xuICAgKiAgICAgXFxbZXZlbnRUeXBlXTogY2FsbGJhY2tGdW5jdGlvblxuICAgKiAgfVxuICAgKiB9XG4gICAqIGBgYFxuICAgKiBlLmcuOlxuICAgKiBgYGBcbiAgICoge1xuICAgKiBcXFtBcmVhLnNlbGVjdG9ycy5hcmVhXToge1xuICAgKiAgICBjbGljazogKGQpID0+IGNvbnNvbGUubG9nKFwiQ2xpY2tlZCBBcmVhXCIsIGQpXG4gICAqICB9XG4gICAqIH1cbiAgICogYGBgICovXG4gIEBJbnB1dCgpIGV2ZW50cz86IHtcbiAgICBbc2VsZWN0b3I6IHN0cmluZ106IHtcbiAgICAgIFtldmVudFR5cGUgaW4gVmlzRXZlbnRUeXBlXT86IFZpc0V2ZW50Q2FsbGJhY2tcbiAgICB9O1xuICB9XG5cbiAgLyoqIFlvdSBjYW4gc2V0IGV2ZXJ5IFNWRyBhbmQgSFRNTCB2aXN1YWxpemF0aW9uIG9iamVjdCB0byBoYXZlIGEgY3VzdG9tIERPTSBhdHRyaWJ1dGVzLCB3aGljaCBpcyB1c2VmdWxcbiAgICogd2hlbiB5b3Ugd2FudCB0byBkbyB1bml0IG9yIGVuZC10by1lbmQgdGVzdGluZy4gQXR0cmlidXRlcyBjb25maWd1cmF0aW9uIG9iamVjdCBoYXMgdGhlIGZvbGxvd2luZyBzdHJ1Y3R1cmU6XG4gICAqXG4gICAqIGBgYFxuICAgKiB7XG4gICAqIFxcW3NlbGVjdG9yU3RyaW5nXToge1xuICAgKiAgICAgXFxbYXR0cmlidXRlTmFtZV06IGF0dHJpYnV0ZSBjb25zdGFudCB2YWx1ZSBvciBhY2Nlc3NvciBmdW5jdGlvblxuICAgKiAgfVxuICAgKiB9XG4gICAqIGBgYFxuICAgKiBlLmcuOlxuICAgKiBgYGBcbiAgICoge1xuICAgKiBcXFtBcmVhLnNlbGVjdG9ycy5hcmVhXToge1xuICAgKiAgICBcInRlc3QtdmFsdWVcIjogZCA9PiBkLnZhbHVlXG4gICAqICB9XG4gICAqIH1cbiAgICogYGBgICovXG4gIEBJbnB1dCgpIGF0dHJpYnV0ZXM/OiB7XG4gICAgW3NlbGVjdG9yOiBzdHJpbmddOiB7XG4gICAgICBbYXR0cjogc3RyaW5nXTogc3RyaW5nIHwgbnVtYmVyIHwgYm9vbGVhbiB8ICgoZGF0dW06IGFueSkgPT4gc3RyaW5nIHwgbnVtYmVyIHwgYm9vbGVhbik7XG4gICAgfTtcbiAgfVxuXG4gIC8qKiBPcHRpb25hbCBhY2Nlc3NvciBmdW5jdGlvbiBmb3IgZ2V0dGluZyB0aGUgdmFsdWVzIGFsb25nIHRoZSBYIGF4aXMuIERlZmF1bHQ6IGB1bmRlZmluZWRgICovXG4gIEBJbnB1dCgpIHg/OiBOdW1lcmljQWNjZXNzb3I8RGF0dW0+XG5cbiAgLyoqIE9wdGlvbmFsIHNpbmdsZSBvZiBtdWx0aXBsZSBhY2Nlc3NvciBmdW5jdGlvbnMgZm9yIGdldHRpbmcgdGhlIHZhbHVlcyBhbG9uZyB0aGUgWSBheGlzLiBEZWZhdWx0OiBgdW5kZWZpbmVkYCAqL1xuICBASW5wdXQoKSB5PzogTnVtZXJpY0FjY2Vzc29yPERhdHVtPiB8IE51bWVyaWNBY2Nlc3NvcjxEYXR1bT5bXVxuXG4gIC8qKiBBY2Nlc3NvciBmdW5jdGlvbiBmb3IgZ2V0dGluZyB0aGUgdW5pcXVlIGRhdGEgcmVjb3JkIGlkLiBVc2VkIGZvciBtb3JlIHBlcnNpc3RlbnQgZGF0YSB1cGRhdGVzLiBEZWZhdWx0OiBgKGQsIGkpID0+IGQuaWQgPz8gaWAgKi9cbiAgQElucHV0KCkgaWQ/OiAoKGQ6IERhdHVtLCBpOiBudW1iZXIsIC4uLnJlc3QpID0+IHN0cmluZylcblxuICAvKiogT3B0aW9uYWwgY29sb3IgYXJyYXkgb3IgY29sb3IgYWNjZXNzb3IgZnVuY3Rpb24gZm9yIGNyb3NzaGFpciBjaXJjbGVzLiBEZWZhdWx0OiBgZCA9PiBkLmNvbG9yYCAqL1xuICBASW5wdXQoKSBjb2xvcj86IENvbG9yQWNjZXNzb3I8RGF0dW0+XG5cbiAgLyoqIFNjYWxlIGZvciBYIGRpbWVuc2lvbiwgZS5nLiBTY2FsZS5zY2FsZUxpbmVhcigpLiBJZiB5b3Ugc2V0IHhTY2FsZSB5b3UnbGwgYmUgcmVzcG9uc2libGUgZm9yIHNldHRpbmcgaXQncyBgZG9tYWluYCBhbmQgYHJhbmdlYCBhcyB3ZWxsLlxuICAgKiBPbmx5IGNvbnRpbnVvdXMgc2NhbGVzIGFyZSBzdXBwb3J0ZWQuXG4gICAqIERlZmF1bHQ6IGB1bmRlZmluZWRgICovXG4gIEBJbnB1dCgpIHhTY2FsZT86IENvbnRpbnVvdXNTY2FsZVxuXG4gIC8qKiBTY2FsZSBmb3IgWSBkaW1lbnNpb24sIGUuZy4gU2NhbGUuc2NhbGVMaW5lYXIoKS4gSWYgeW91IHNldCB5U2NhbGUgeW91J2xsIGJlIHJlc3BvbnNpYmxlIGZvciBzZXR0aW5nIGl0J3MgYGRvbWFpbmAgYW5kIGByYW5nZWAgYXMgd2VsbC5cbiAgICogT25seSBjb250aW51b3VzIHNjYWxlcyBhcmUgc3VwcG9ydGVkLlxuICAgKiBEZWZhdWx0OiBgdW5kZWZpbmVkYCAqL1xuICBASW5wdXQoKSB5U2NhbGU/OiBDb250aW51b3VzU2NhbGVcblxuICAvKiogSWRlbnRpZmllcyB3aGV0aGVyIHRoZSBjb21wb25lbnQgc2hvdWxkIGJlIGV4Y2x1ZGVkIGZyb20gb3ZlcmFsbCBYIGFuZCBZIGRvbWFpbiBjYWxjdWxhdGlvbnMgb3Igbm90LlxuICAgKiBUaGlzIHByb3BlcnR5IGNhbiBiZSB1c2VmdWwgd2hlbiB5b3Ugd2FudCBwYXNzIGluZGl2aWR1YWwgZGF0YSB0byBhIGNvbXBvbmVudCBhbmQgeW91IGRvbid0IHdhbnQgaXQgdG8gYWZmZWN0XG4gICAqIHRoZSBzY2FsZXMgb2YgdGhlIGNoYXJ0LlxuICAgKiBEZWZhdWx0OiBgZmFsc2VgICovXG4gIEBJbnB1dCgpIGV4Y2x1ZGVGcm9tRG9tYWluQ2FsY3VsYXRpb24/OiBib29sZWFuXG5cbiAgLyoqIE9wdGlvbmFsIHN0cm9rZSBjb2xvciBhY2Nlc3NvciBmdW5jdGlvbiBmb3IgY3Jvc3NoYWlyIGNpcmNsZXMuIERlZmF1bHQ6IGB1bmRlZmluZWRgICovXG4gIEBJbnB1dCgpIHN0cm9rZUNvbG9yPzogQ29sb3JBY2Nlc3NvcjxEYXR1bT5cblxuICAvKiogT3B0aW9uYWwgc3Ryb2tlIHdpZHRoIGZvciBjcm9zc2hhaXIgY2lyY2xlcy4gRGVmYXVsdDogYHVuZGVmaW5lZGAgKi9cbiAgQElucHV0KCkgc3Ryb2tlV2lkdGg/OiBOdW1lcmljQWNjZXNzb3I8RGF0dW0+XG5cbiAgLyoqIFNlcGFyYXRlIGFycmF5IG9mIGFjY2Vzc29ycyBmb3Igc3RhY2tlZCBjb21wb25lbnRzIChlZyBTdGFja2VkQmFyLCBBcmVhKS4gRGVmYXVsdDogYHVuZGVmaW5lZGAgKi9cbiAgQElucHV0KCkgeVN0YWNrZWQ/OiBOdW1lcmljQWNjZXNzb3I8RGF0dW0+W11cblxuICAvKiogQmFzZWxpbmUgYWNjZXNzb3IgZnVuY3Rpb24gZm9yIHN0YWNrZWQgdmFsdWVzLCB1c2VmdWwgd2l0aCBzdGFja2VkIGFyZWFzLiBEZWZhdWx0OiBgbnVsbGAgKi9cbiAgQElucHV0KCkgYmFzZWxpbmU/OiBOdW1lcmljQWNjZXNzb3I8RGF0dW0+XG5cbiAgLyoqIEFuIGluc3RhbmNlIG9mIHRoZSBUb29sdGlwIGNvbXBvbmVudCB0byBiZSB1c2VkIHdpdGggQ3Jvc3NoYWlyLiBEZWZhdWx0OiBgdW5kZWZpbmVkYCAqL1xuICBASW5wdXQoKSB0b29sdGlwPzogVG9vbHRpcCB8IHVuZGVmaW5lZFxuXG4gIC8qKiBUb29sdGlwIHRlbXBsYXRlIGFjY2Vzc29yLiBUaGUgZnVuY3Rpb24gaXMgc3VwcG9zZWQgdG8gcmV0dXJuIGVpdGhlciBhIHZhbGlkIEhUTUwgc3RyaW5nIG9yIGFuIEhUTUxFbGVtZW50LiBEZWZhdWx0OiBgZCA9PiAnJ2AgKi9cbiAgQElucHV0KCkgdGVtcGxhdGU/OiAoZGF0YTogRGF0dW0sIHg6IG51bWJlciB8IERhdGUpID0+IHN0cmluZyB8IEhUTUxFbGVtZW50XG5cbiAgLyoqIEhpZGUgQ3Jvc3NoYWlyIHdoZW4gdGhlIGNvcnJlc3BvbmRpbmcgZWxlbWVudCBpcyBmYXIgZnJvbSBtb3VzZSBwb2ludGVyLiBEZWZhdWx0OiBgdHJ1ZWAgKi9cbiAgQElucHV0KCkgaGlkZVdoZW5GYXJGcm9tUG9pbnRlcj86IGJvb2xlYW5cblxuICAvKiogRGlzdGFuY2UgaW4gcGl4ZWxzIHRvIGNoZWNrIGluIHRoZSBoaWRlV2hlbkZhckZyb21Qb2ludGVyIGNvbmRpdGlvbi4gRGVmYXVsdDogYDEwMGAgKi9cbiAgQElucHV0KCkgaGlkZVdoZW5GYXJGcm9tUG9pbnRlckRpc3RhbmNlPzogbnVtYmVyXG5cbiAgLyoqIFNuYXAgdG8gdGhlIG5lYXJlc3QgZGF0YSBwb2ludC5cbiAgICogSWYgZGlzYWJsZWQsIHRoZSB0b29sdGlwIHRlbXBsYXRlIHdpbGwgcmVjZWl2ZSBvbmx5IHRoZSBob3Jpem9udGFsIHBvc2l0aW9uIG9mIHRoZSBjcm9zc2hhaXIgYW5kIHlvdSdsbCBiZSByZXNwb25zaWJsZVxuICAgKiBmb3IgZ2V0dGluZyB0aGUgdW5kZXJseWluZyBkYXRhIHJlY29yZHMgYW5kIGNyb3NzaGFpciBjaXJjbGVzIChzZWUgdGhlIGBnZXRDaXJjbGVzYCBjb25maWd1cmF0aW9uIG9wdGlvbikuXG4gICAqIERlZmF1bHQ6IGB0cnVlYCAqL1xuICBASW5wdXQoKSBzbmFwVG9EYXRhPzogYm9vbGVhblxuXG4gIC8qKiBDdXN0b20gZnVuY3Rpb24gZm9yIHNldHRpbmcgdXAgdGhlIGNyb3NzaGFpciBjaXJjbGVzLCB1c3VhbGx5IG5lZWRlZCB3aGVuIGBzbmFwVG9EYXRhYCBpcyBzZXQgdG8gYGZhbHNlYC5cbiAgICogVGhlIGZ1bmN0aW9uIHJlY2VpdmVzIHRoZSBob3Jpem9udGFsIHBvc2l0aW9uIG9mIHRoZSBjcm9zc2hhaXIgKGluIHRoZSBkYXRhIHNwYWNlLCBub3QgaW4gcGl4ZWxzKSwgdGhlIGRhdGEgYXJyYXlcbiAgICogYW5kIHRoZSBgeVNjYWxlYCBpbnN0YW5jZSB0byBoZWxwIHlvdSBjYWxjdWxhdGUgdGhlIGNvcnJlY3QgdmVydGljYWwgcG9zaXRpb24gb2YgdGhlIGNpcmNsZXMuXG4gICAqIEl0IGhhcyB0byByZXR1cm4gYW4gYXJyYXkgb2YgdGhlIENyb3NzaGFpckNpcmNsZSBvYmplY3RzOiBgeyB5OiBudW1iZXI7IGNvbG9yOiBzdHJpbmc7IG9wYWNpdHk/OiBudW1iZXIgfVtdYC5cbiAgICogRGVmYXVsdDogYHVuZGVmaW5lZGAgKi9cbiAgQElucHV0KCkgZ2V0Q2lyY2xlcz86ICh4OiBudW1iZXIgfCBEYXRlIHwgRGF0ZSwgZGF0YTogRGF0dW1bXSwgeVNjYWxlOiBDb250aW51b3VzU2NhbGUpID0+IENyb3NzaGFpckNpcmNsZVtdXG4gIEBJbnB1dCgpIGRhdGE6IERhdHVtW11cblxuICBjb21wb25lbnQ6IENyb3NzaGFpcjxEYXR1bT4gfCB1bmRlZmluZWRcbiAgcHVibGljIGNvbXBvbmVudENvbnRhaW5lcjogQ29udGFpbmVyQ29yZSB8IHVuZGVmaW5lZFxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCAoKTogdm9pZCB7XG4gICAgdGhpcy5jb21wb25lbnQgPSBuZXcgQ3Jvc3NoYWlyPERhdHVtPih0aGlzLmdldENvbmZpZygpKVxuXG4gICAgaWYgKHRoaXMuZGF0YSkge1xuICAgICAgdGhpcy5jb21wb25lbnQuc2V0RGF0YSh0aGlzLmRhdGEpXG4gICAgICB0aGlzLmNvbXBvbmVudENvbnRhaW5lcj8ucmVuZGVyKClcbiAgICB9XG4gIH1cblxuICBuZ09uQ2hhbmdlcyAoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIGlmIChjaGFuZ2VzLmRhdGEpIHsgdGhpcy5jb21wb25lbnQ/LnNldERhdGEodGhpcy5kYXRhKSB9XG4gICAgdGhpcy5jb21wb25lbnQ/LnNldENvbmZpZyh0aGlzLmdldENvbmZpZygpKVxuICAgIHRoaXMuY29tcG9uZW50Q29udGFpbmVyPy5yZW5kZXIoKVxuICB9XG5cbiAgcHJpdmF0ZSBnZXRDb25maWcgKCk6IENyb3NzaGFpckNvbmZpZ0ludGVyZmFjZTxEYXR1bT4ge1xuICAgIGNvbnN0IHsgZHVyYXRpb24sIGV2ZW50cywgYXR0cmlidXRlcywgeCwgeSwgaWQsIGNvbG9yLCB4U2NhbGUsIHlTY2FsZSwgZXhjbHVkZUZyb21Eb21haW5DYWxjdWxhdGlvbiwgc3Ryb2tlQ29sb3IsIHN0cm9rZVdpZHRoLCB5U3RhY2tlZCwgYmFzZWxpbmUsIHRvb2x0aXAsIHRlbXBsYXRlLCBoaWRlV2hlbkZhckZyb21Qb2ludGVyLCBoaWRlV2hlbkZhckZyb21Qb2ludGVyRGlzdGFuY2UsIHNuYXBUb0RhdGEsIGdldENpcmNsZXMgfSA9IHRoaXNcbiAgICBjb25zdCBjb25maWcgPSB7IGR1cmF0aW9uLCBldmVudHMsIGF0dHJpYnV0ZXMsIHgsIHksIGlkLCBjb2xvciwgeFNjYWxlLCB5U2NhbGUsIGV4Y2x1ZGVGcm9tRG9tYWluQ2FsY3VsYXRpb24sIHN0cm9rZUNvbG9yLCBzdHJva2VXaWR0aCwgeVN0YWNrZWQsIGJhc2VsaW5lLCB0b29sdGlwLCB0ZW1wbGF0ZSwgaGlkZVdoZW5GYXJGcm9tUG9pbnRlciwgaGlkZVdoZW5GYXJGcm9tUG9pbnRlckRpc3RhbmNlLCBzbmFwVG9EYXRhLCBnZXRDaXJjbGVzIH1cbiAgICBjb25zdCBrZXlzID0gT2JqZWN0LmtleXMoY29uZmlnKSBhcyAoa2V5b2YgQ3Jvc3NoYWlyQ29uZmlnSW50ZXJmYWNlPERhdHVtPilbXVxuICAgIGtleXMuZm9yRWFjaChrZXkgPT4geyBpZiAoY29uZmlnW2tleV0gPT09IHVuZGVmaW5lZCkgZGVsZXRlIGNvbmZpZ1trZXldIH0pXG5cbiAgICByZXR1cm4gY29uZmlnXG4gIH1cbn1cbiJdfQ==
|
|
91
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3Jvc3NoYWlyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2Nyb3NzaGFpci9jcm9zc2hhaXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLDBFQUEwRTtBQUMxRSxPQUFPLEVBQUUsU0FBUyxFQUFpQixLQUFLLEVBQWlCLE1BQU0sZUFBZSxDQUFBO0FBQzlFLE9BQU8sRUFDTCxTQUFTLEdBVVYsTUFBTSxZQUFZLENBQUE7QUFDbkIsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLFlBQVksQ0FBQTs7QUFRM0MsTUFBTSxPQUFPLHFCQUFxQjtJQTJJaEMsZUFBZTs7UUFDYixJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksU0FBUyxDQUFRLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFBO1FBRXZELElBQUksSUFBSSxDQUFDLElBQUksRUFBRTtZQUNiLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQTtZQUNqQyxNQUFBLElBQUksQ0FBQyxrQkFBa0IsMENBQUUsTUFBTSxFQUFFLENBQUE7U0FDbEM7SUFDSCxDQUFDO0lBRUQsV0FBVyxDQUFFLE9BQXNCOztRQUNqQyxJQUFJLE9BQU8sQ0FBQyxJQUFJLEVBQUU7WUFBRSxNQUFBLElBQUksQ0FBQyxTQUFTLDBDQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUE7U0FBRTtRQUN4RCxNQUFBLElBQUksQ0FBQyxTQUFTLDBDQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQTtRQUMzQyxNQUFBLElBQUksQ0FBQyxrQkFBa0IsMENBQUUsTUFBTSxFQUFFLENBQUE7SUFDbkMsQ0FBQztJQUVPLFNBQVM7UUFDZixNQUFNLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsNEJBQTRCLEVBQUUsV0FBVyxFQUFFLFdBQVcsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsc0JBQXNCLEVBQUUsOEJBQThCLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxlQUFlLEVBQUUsV0FBVyxFQUFFLGNBQWMsRUFBRSxHQUFHLElBQUksQ0FBQTtRQUMzUyxNQUFNLE1BQU0sR0FBRyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLDRCQUE0QixFQUFFLFdBQVcsRUFBRSxXQUFXLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLHNCQUFzQixFQUFFLDhCQUE4QixFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsZUFBZSxFQUFFLFdBQVcsRUFBRSxjQUFjLEVBQUUsQ0FBQTtRQUM3UyxNQUFNLElBQUksR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBOEMsQ0FBQTtRQUM3RSxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFFLEdBQUcsSUFBSSxNQUFNLENBQUMsR0FBRyxDQUFDLEtBQUssU0FBUztZQUFFLE9BQU8sTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFBLENBQUMsQ0FBQyxDQUFDLENBQUE7UUFFMUUsT0FBTyxNQUFNLENBQUE7SUFDZixDQUFDOzttSEFqS1UscUJBQXFCO3VHQUFyQixxQkFBcUIsd3FCQUZyQixDQUFDLEVBQUUsT0FBTyxFQUFFLGNBQWMsRUFBRSxXQUFXLEVBQUUscUJBQXFCLEVBQUUsQ0FBQywrQ0FGbEUsRUFBRTs0RkFJRCxxQkFBcUI7a0JBTmpDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGVBQWU7b0JBQ3pCLFFBQVEsRUFBRSxFQUFFO29CQUNaLGdEQUFnRDtvQkFDaEQsU0FBUyxFQUFFLENBQUMsRUFBRSxPQUFPLEVBQUUsY0FBYyxFQUFFLFdBQVcsdUJBQXVCLEVBQUUsQ0FBQztpQkFDN0U7OEJBR1UsUUFBUTtzQkFBaEIsS0FBSztnQkFtQkcsTUFBTTtzQkFBZCxLQUFLO2dCQXdCRyxVQUFVO3NCQUFsQixLQUFLO2dCQU9HLENBQUM7c0JBQVQsS0FBSztnQkFHRyxDQUFDO3NCQUFULEtBQUs7Z0JBR0csRUFBRTtzQkFBVixLQUFLO2dCQUdHLEtBQUs7c0JBQWIsS0FBSztnQkFLRyxNQUFNO3NCQUFkLEtBQUs7Z0JBS0csTUFBTTtzQkFBZCxLQUFLO2dCQU1HLDRCQUE0QjtzQkFBcEMsS0FBSztnQkFHRyxXQUFXO3NCQUFuQixLQUFLO2dCQUdHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBR0csUUFBUTtzQkFBaEIsS0FBSztnQkFHRyxRQUFRO3NCQUFoQixLQUFLO2dCQUdHLE9BQU87c0JBQWYsS0FBSztnQkFLRyxRQUFRO3NCQUFoQixLQUFLO2dCQUdHLHNCQUFzQjtzQkFBOUIsS0FBSztnQkFHRyw4QkFBOEI7c0JBQXRDLEtBQUs7Z0JBTUcsVUFBVTtzQkFBbEIsS0FBSztnQkFPRyxVQUFVO3NCQUFsQixLQUFLO2dCQVVHLGVBQWU7c0JBQXZCLEtBQUs7Z0JBR0csV0FBVztzQkFBbkIsS0FBSztnQkFJRyxjQUFjO3NCQUF0QixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSyIsInNvdXJjZXNDb250ZW50IjpbIi8vICEhISBUaGlzIGNvZGUgd2FzIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkLiBZb3Ugc2hvdWxkIG5vdCBjaGFuZ2UgaXQgISEhXG5pbXBvcnQgeyBDb21wb25lbnQsIEFmdGVyVmlld0luaXQsIElucHV0LCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7XG4gIENyb3NzaGFpcixcbiAgQ3Jvc3NoYWlyQ29uZmlnSW50ZXJmYWNlLFxuICBDb250YWluZXJDb3JlLFxuICBWaXNFdmVudFR5cGUsXG4gIFZpc0V2ZW50Q2FsbGJhY2ssXG4gIE51bWVyaWNBY2Nlc3NvcixcbiAgQ29sb3JBY2Nlc3NvcixcbiAgQ29udGludW91c1NjYWxlLFxuICBUb29sdGlwLFxuICBDcm9zc2hhaXJDaXJjbGUsXG59IGZyb20gJ0B1bm92aXMvdHMnXG5pbXBvcnQgeyBWaXNYWUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2NvcmUnXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3Zpcy1jcm9zc2hhaXInLFxuICB0ZW1wbGF0ZTogJycsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby11c2UtYmVmb3JlLWRlZmluZVxuICBwcm92aWRlcnM6IFt7IHByb3ZpZGU6IFZpc1hZQ29tcG9uZW50LCB1c2VFeGlzdGluZzogVmlzQ3Jvc3NoYWlyQ29tcG9uZW50IH1dLFxufSlcbmV4cG9ydCBjbGFzcyBWaXNDcm9zc2hhaXJDb21wb25lbnQ8RGF0dW0+IGltcGxlbWVudHMgQ3Jvc3NoYWlyQ29uZmlnSW50ZXJmYWNlPERhdHVtPiwgQWZ0ZXJWaWV3SW5pdCB7XG4gIC8qKiBBbmltYXRpb24gZHVyYXRpb24gb2YgdGhlIGRhdGEgdXBkYXRlIHRyYW5zaXRpb25zIGluIG1pbGxpc2Vjb25kcy4gRGVmYXVsdDogYDYwMGAgKi9cbiAgQElucHV0KCkgZHVyYXRpb24/OiBudW1iZXJcblxuICAvKiogRXZlbnRzIGNvbmZpZ3VyYXRpb24uIEFuIG9iamVjdCBjb250YWluaW5nIHByb3BlcnRpZXMgaW4gdGhlIGZvbGxvd2luZyBmb3JtYXQ6XG4gICAqXG4gICAqIGBgYFxuICAgKiB7XG4gICAqIFxcW3NlbGVjdG9yU3RyaW5nXToge1xuICAgKiAgICAgXFxbZXZlbnRUeXBlXTogY2FsbGJhY2tGdW5jdGlvblxuICAgKiAgfVxuICAgKiB9XG4gICAqIGBgYFxuICAgKiBlLmcuOlxuICAgKiBgYGBcbiAgICoge1xuICAgKiBcXFtBcmVhLnNlbGVjdG9ycy5hcmVhXToge1xuICAgKiAgICBjbGljazogKGQpID0+IGNvbnNvbGUubG9nKFwiQ2xpY2tlZCBBcmVhXCIsIGQpXG4gICAqICB9XG4gICAqIH1cbiAgICogYGBgICovXG4gIEBJbnB1dCgpIGV2ZW50cz86IHtcbiAgICBbc2VsZWN0b3I6IHN0cmluZ106IHtcbiAgICAgIFtldmVudFR5cGUgaW4gVmlzRXZlbnRUeXBlXT86IFZpc0V2ZW50Q2FsbGJhY2tcbiAgICB9O1xuICB9XG5cbiAgLyoqIFlvdSBjYW4gc2V0IGV2ZXJ5IFNWRyBhbmQgSFRNTCB2aXN1YWxpemF0aW9uIG9iamVjdCB0byBoYXZlIGEgY3VzdG9tIERPTSBhdHRyaWJ1dGVzLCB3aGljaCBpcyB1c2VmdWxcbiAgICogd2hlbiB5b3Ugd2FudCB0byBkbyB1bml0IG9yIGVuZC10by1lbmQgdGVzdGluZy4gQXR0cmlidXRlcyBjb25maWd1cmF0aW9uIG9iamVjdCBoYXMgdGhlIGZvbGxvd2luZyBzdHJ1Y3R1cmU6XG4gICAqXG4gICAqIGBgYFxuICAgKiB7XG4gICAqIFxcW3NlbGVjdG9yU3RyaW5nXToge1xuICAgKiAgICAgXFxbYXR0cmlidXRlTmFtZV06IGF0dHJpYnV0ZSBjb25zdGFudCB2YWx1ZSBvciBhY2Nlc3NvciBmdW5jdGlvblxuICAgKiAgfVxuICAgKiB9XG4gICAqIGBgYFxuICAgKiBlLmcuOlxuICAgKiBgYGBcbiAgICoge1xuICAgKiBcXFtBcmVhLnNlbGVjdG9ycy5hcmVhXToge1xuICAgKiAgICBcInRlc3QtdmFsdWVcIjogZCA9PiBkLnZhbHVlXG4gICAqICB9XG4gICAqIH1cbiAgICogYGBgICovXG4gIEBJbnB1dCgpIGF0dHJpYnV0ZXM/OiB7XG4gICAgW3NlbGVjdG9yOiBzdHJpbmddOiB7XG4gICAgICBbYXR0cjogc3RyaW5nXTogc3RyaW5nIHwgbnVtYmVyIHwgYm9vbGVhbiB8ICgoZGF0dW06IGFueSkgPT4gc3RyaW5nIHwgbnVtYmVyIHwgYm9vbGVhbik7XG4gICAgfTtcbiAgfVxuXG4gIC8qKiBPcHRpb25hbCBhY2Nlc3NvciBmdW5jdGlvbiBmb3IgZ2V0dGluZyB0aGUgdmFsdWVzIGFsb25nIHRoZSBYIGF4aXMuIERlZmF1bHQ6IGB1bmRlZmluZWRgICovXG4gIEBJbnB1dCgpIHg/OiBOdW1lcmljQWNjZXNzb3I8RGF0dW0+XG5cbiAgLyoqIE9wdGlvbmFsIHNpbmdsZSBvZiBtdWx0aXBsZSBhY2Nlc3NvciBmdW5jdGlvbnMgZm9yIGdldHRpbmcgdGhlIHZhbHVlcyBhbG9uZyB0aGUgWSBheGlzLiBEZWZhdWx0OiBgdW5kZWZpbmVkYCAqL1xuICBASW5wdXQoKSB5PzogTnVtZXJpY0FjY2Vzc29yPERhdHVtPiB8IE51bWVyaWNBY2Nlc3NvcjxEYXR1bT5bXVxuXG4gIC8qKiBBY2Nlc3NvciBmdW5jdGlvbiBmb3IgZ2V0dGluZyB0aGUgdW5pcXVlIGRhdGEgcmVjb3JkIGlkLiBVc2VkIGZvciBtb3JlIHBlcnNpc3RlbnQgZGF0YSB1cGRhdGVzLiBEZWZhdWx0OiBgKGQsIGkpID0+IGQuaWQgPz8gaWAgKi9cbiAgQElucHV0KCkgaWQ/OiAoKGQ6IERhdHVtLCBpOiBudW1iZXIsIC4uLnJlc3QpID0+IHN0cmluZylcblxuICAvKiogT3B0aW9uYWwgY29sb3IgYXJyYXkgb3IgY29sb3IgYWNjZXNzb3IgZnVuY3Rpb24gZm9yIGNyb3NzaGFpciBjaXJjbGVzLiBEZWZhdWx0OiBgZCA9PiBkLmNvbG9yYCAqL1xuICBASW5wdXQoKSBjb2xvcj86IENvbG9yQWNjZXNzb3I8RGF0dW0+XG5cbiAgLyoqIFNjYWxlIGZvciBYIGRpbWVuc2lvbiwgZS5nLiBTY2FsZS5zY2FsZUxpbmVhcigpLiBJZiB5b3Ugc2V0IHhTY2FsZSB5b3UnbGwgYmUgcmVzcG9uc2libGUgZm9yIHNldHRpbmcgaXQncyBgZG9tYWluYCBhbmQgYHJhbmdlYCBhcyB3ZWxsLlxuICAgKiBPbmx5IGNvbnRpbnVvdXMgc2NhbGVzIGFyZSBzdXBwb3J0ZWQuXG4gICAqIERlZmF1bHQ6IGB1bmRlZmluZWRgICovXG4gIEBJbnB1dCgpIHhTY2FsZT86IENvbnRpbnVvdXNTY2FsZVxuXG4gIC8qKiBTY2FsZSBmb3IgWSBkaW1lbnNpb24sIGUuZy4gU2NhbGUuc2NhbGVMaW5lYXIoKS4gSWYgeW91IHNldCB5U2NhbGUgeW91J2xsIGJlIHJlc3BvbnNpYmxlIGZvciBzZXR0aW5nIGl0J3MgYGRvbWFpbmAgYW5kIGByYW5nZWAgYXMgd2VsbC5cbiAgICogT25seSBjb250aW51b3VzIHNjYWxlcyBhcmUgc3VwcG9ydGVkLlxuICAgKiBEZWZhdWx0OiBgdW5kZWZpbmVkYCAqL1xuICBASW5wdXQoKSB5U2NhbGU/OiBDb250aW51b3VzU2NhbGVcblxuICAvKiogSWRlbnRpZmllcyB3aGV0aGVyIHRoZSBjb21wb25lbnQgc2hvdWxkIGJlIGV4Y2x1ZGVkIGZyb20gb3ZlcmFsbCBYIGFuZCBZIGRvbWFpbiBjYWxjdWxhdGlvbnMgb3Igbm90LlxuICAgKiBUaGlzIHByb3BlcnR5IGNhbiBiZSB1c2VmdWwgd2hlbiB5b3Ugd2FudCBwYXNzIGluZGl2aWR1YWwgZGF0YSB0byBhIGNvbXBvbmVudCBhbmQgeW91IGRvbid0IHdhbnQgaXQgdG8gYWZmZWN0XG4gICAqIHRoZSBzY2FsZXMgb2YgdGhlIGNoYXJ0LlxuICAgKiBEZWZhdWx0OiBgZmFsc2VgICovXG4gIEBJbnB1dCgpIGV4Y2x1ZGVGcm9tRG9tYWluQ2FsY3VsYXRpb24/OiBib29sZWFuXG5cbiAgLyoqIE9wdGlvbmFsIHN0cm9rZSBjb2xvciBhY2Nlc3NvciBmdW5jdGlvbiBmb3IgY3Jvc3NoYWlyIGNpcmNsZXMuIERlZmF1bHQ6IGB1bmRlZmluZWRgICovXG4gIEBJbnB1dCgpIHN0cm9rZUNvbG9yPzogQ29sb3JBY2Nlc3NvcjxEYXR1bT5cblxuICAvKiogT3B0aW9uYWwgc3Ryb2tlIHdpZHRoIGZvciBjcm9zc2hhaXIgY2lyY2xlcy4gRGVmYXVsdDogYHVuZGVmaW5lZGAgKi9cbiAgQElucHV0KCkgc3Ryb2tlV2lkdGg/OiBOdW1lcmljQWNjZXNzb3I8RGF0dW0+XG5cbiAgLyoqIFNlcGFyYXRlIGFycmF5IG9mIGFjY2Vzc29ycyBmb3Igc3RhY2tlZCBjb21wb25lbnRzIChlZyBTdGFja2VkQmFyLCBBcmVhKS4gRGVmYXVsdDogYHVuZGVmaW5lZGAgKi9cbiAgQElucHV0KCkgeVN0YWNrZWQ/OiBOdW1lcmljQWNjZXNzb3I8RGF0dW0+W11cblxuICAvKiogQmFzZWxpbmUgYWNjZXNzb3IgZnVuY3Rpb24gZm9yIHN0YWNrZWQgdmFsdWVzLCB1c2VmdWwgd2l0aCBzdGFja2VkIGFyZWFzLiBEZWZhdWx0OiBgbnVsbGAgKi9cbiAgQElucHV0KCkgYmFzZWxpbmU/OiBOdW1lcmljQWNjZXNzb3I8RGF0dW0+XG5cbiAgLyoqIEFuIGluc3RhbmNlIG9mIHRoZSBUb29sdGlwIGNvbXBvbmVudCB0byBiZSB1c2VkIHdpdGggQ3Jvc3NoYWlyLiBEZWZhdWx0OiBgdW5kZWZpbmVkYCAqL1xuICBASW5wdXQoKSB0b29sdGlwPzogVG9vbHRpcCB8IHVuZGVmaW5lZFxuXG4gIC8qKiBUb29sdGlwIHRlbXBsYXRlIGFjY2Vzc29yLiBUaGUgZnVuY3Rpb24gaXMgc3VwcG9zZWQgdG8gcmV0dXJuIGVpdGhlciBhIHZhbGlkIEhUTUwgc3RyaW5nIG9yIGFuIEhUTUxFbGVtZW50LlxuICAgKiBXaGVuIGBzbmFwVG9EYXRhYCBpcyBgZmFsc2VgLCBgZGF0dW1gIHdpbGwgYmUgYHVuZGVmaW5lZGAgYnV0IGBkYXRhYCBhbmQgYGxlZnROZWFyZXN0RGF0dW1JbmRleGAgd2lsbCBiZSBwcm92aWRlZC5cbiAgICogRGVmYXVsdDogYGQgPT4gJydgICovXG4gIEBJbnB1dCgpIHRlbXBsYXRlPzogKGRhdHVtOiBEYXR1bSwgeDogbnVtYmVyIHwgRGF0ZSwgZGF0YTogRGF0dW1bXSwgbGVmdE5lYXJlc3REYXR1bUluZGV4OiBudW1iZXIpID0+IHN0cmluZyB8IEhUTUxFbGVtZW50XG5cbiAgLyoqIEhpZGUgQ3Jvc3NoYWlyIHdoZW4gdGhlIGNvcnJlc3BvbmRpbmcgZGF0dW0gZWxlbWVudCBpcyBmYXIgZnJvbSBtb3VzZSBwb2ludGVyLiBEZWZhdWx0OiBgdHJ1ZWAgKi9cbiAgQElucHV0KCkgaGlkZVdoZW5GYXJGcm9tUG9pbnRlcj86IGJvb2xlYW5cblxuICAvKiogRGlzdGFuY2UgaW4gcGl4ZWxzIHRvIGNoZWNrIGluIHRoZSBoaWRlV2hlbkZhckZyb21Qb2ludGVyIGNvbmRpdGlvbi4gRGVmYXVsdDogYDEwMGAgKi9cbiAgQElucHV0KCkgaGlkZVdoZW5GYXJGcm9tUG9pbnRlckRpc3RhbmNlPzogbnVtYmVyXG5cbiAgLyoqIFNuYXAgdG8gdGhlIG5lYXJlc3QgZGF0YSBwb2ludC5cbiAgICogSWYgZGlzYWJsZWQsIHRoZSB0b29sdGlwIHRlbXBsYXRlIHdpbGwgcmVjZWl2ZSBvbmx5IHRoZSBob3Jpem9udGFsIHBvc2l0aW9uIG9mIHRoZSBjcm9zc2hhaXIgYW5kIHlvdSdsbCBiZSByZXNwb25zaWJsZVxuICAgKiBmb3IgZ2V0dGluZyB0aGUgdW5kZXJseWluZyBkYXRhIHJlY29yZHMgYW5kIGNyb3NzaGFpciBjaXJjbGVzIChzZWUgdGhlIGBnZXRDaXJjbGVzYCBjb25maWd1cmF0aW9uIG9wdGlvbikuXG4gICAqIERlZmF1bHQ6IGB0cnVlYCAqL1xuICBASW5wdXQoKSBzbmFwVG9EYXRhPzogYm9vbGVhblxuXG4gIC8qKiBDdXN0b20gZnVuY3Rpb24gZm9yIHNldHRpbmcgdXAgdGhlIGNyb3NzaGFpciBjaXJjbGVzLCB1c3VhbGx5IG5lZWRlZCB3aGVuIGBzbmFwVG9EYXRhYCBpcyBzZXQgdG8gYGZhbHNlYC5cbiAgICogVGhlIGZ1bmN0aW9uIHJlY2VpdmVzIHRoZSBob3Jpem9udGFsIHBvc2l0aW9uIG9mIHRoZSBjcm9zc2hhaXIgKGluIHRoZSBkYXRhIHNwYWNlLCBub3QgaW4gcGl4ZWxzKSwgdGhlIGRhdGEgYXJyYXksXG4gICAqIHRoZSBgeVNjYWxlYCBpbnN0YW5jZSB0byBoZWxwIHlvdSBjYWxjdWxhdGUgdGhlIGNvcnJlY3QgdmVydGljYWwgcG9zaXRpb24gb2YgdGhlIGNpcmNsZXMsIGFuZCB0aGUgbmVhcmVzdCBkYXR1bSBpbmRleC5cbiAgICogSXQgaGFzIHRvIHJldHVybiBhbiBhcnJheSBvZiB0aGUgYENyb3NzaGFpckNpcmNsZWAgb2JqZWN0czogYHsgeTogbnVtYmVyOyBjb2xvcjogc3RyaW5nOyBvcGFjaXR5PzogbnVtYmVyIH1bXWAuXG4gICAqIERlZmF1bHQ6IGB1bmRlZmluZWRgICovXG4gIEBJbnB1dCgpIGdldENpcmNsZXM/OiAoeDogbnVtYmVyIHwgRGF0ZSwgZGF0YTogRGF0dW1bXSwgeVNjYWxlOiBDb250aW51b3VzU2NhbGUsIGxlZnROZWFyZXN0RGF0dW1JbmRleDogbnVtYmVyKSA9PiBDcm9zc2hhaXJDaXJjbGVbXVxuXG4gIC8qKiBDYWxsYmFjayBmdW5jdGlvbiB0aGF0IGlzIGNhbGxlZCB3aGVuIHRoZSBjcm9zc2hhaXIgaXMgbW92ZWQ6XG4gICAqIC0gYHhgIGlzIHRoZSBob3Jpem9udGFsIHBvc2l0aW9uIG9mIHRoZSBjcm9zc2hhaXIgaW4gdGhlIGRhdGEgc3BhY2U7XG4gICAqIC0gYGRhdHVtYCBpcyB0aGUgbmVhcmVzdCBkYXR1bSB0byB0aGUgY3Jvc3NoYWlyO1xuICAgKiAtIGBkYXR1bUluZGV4YCBpcyB0aGUgaW5kZXggb2YgdGhlIG5lYXJlc3QgZGF0dW0uXG4gICAqIC0gYGV2ZW50YCBpcyB0aGUgZXZlbnQgdGhhdCB0cmlnZ2VyZWQgdGhlIGNyb3NzaGFpciBtb3ZlIChtb3VzZSBvciB3aGVlbCkuXG4gICAqXG4gICAqIFdoZW4gdGhlIG1vdXNlIGdvZXMgb3V0IG9mIHRoZSBjb250YWluZXIgYW5kIG9uIHdoZWVsIGV2ZW50cywgYWxsIHRoZSBhcmd1bWVudHMgYXJlIGB1bmRlZmluZWRgIGV4Y2VwdCBmb3IgYGV2ZW50YC5cbiAgICogRGVmYXVsdDogYHVuZGVmaW5lZGAgKi9cbiAgQElucHV0KCkgb25Dcm9zc2hhaXJNb3ZlPzogKHg/OiBudW1iZXIgfCBEYXRlLCBkYXR1bT86IERhdHVtLCBkYXR1bUluZGV4PzogbnVtYmVyLCBldmVudD86IE1vdXNlRXZlbnQgfCBXaGVlbEV2ZW50KSA9PiB2b2lkXG5cbiAgLyoqIEZvcmNlIHRoZSBjcm9zc2hhaXIgdG8gc2hvdyBhdCBhIHNwZWNpZmljIHBvc2l0aW9uLiBEZWZhdWx0OiBgdW5kZWZpbmVkYCAqL1xuICBASW5wdXQoKSBmb3JjZVNob3dBdD86IG51bWJlciB8IERhdGVcblxuICAvKiogU2tpcCByYW5nZSBjaGVja3MgZm9yIGNyb3NzaGFpciB2aXNpYmlsaXR5LiBXaGVuIHRydWUsIGNyb3NzaGFpciB3aWxsIHNob3cgcmVnYXJkbGVzcyBvZiBwb3NpdGlvbiB3aXRoaW4gY2hhcnQgYm91bmRzLiBEZWZhdWx0OiBgZmFsc2VgXG4gICAqIFRoaXMgaXMgdXNlZnVsIGZvciB0ZXN0aW5nLCBlc3BlY2lhbGx5IHdoZW4geW91IG9ubHkgdHJpZ2dlcnMgbW91c2Vtb3ZlIGV2ZW50IGJ1dCBkb2VzIG5vdCBoYXZlIHJlYWwgbW91c2UgZXZlbnQuICovXG4gIEBJbnB1dCgpIHNraXBSYW5nZUNoZWNrPzogYm9vbGVhblxuICBASW5wdXQoKSBkYXRhOiBEYXR1bVtdXG5cbiAgY29tcG9uZW50OiBDcm9zc2hhaXI8RGF0dW0+IHwgdW5kZWZpbmVkXG4gIHB1YmxpYyBjb21wb25lbnRDb250YWluZXI6IENvbnRhaW5lckNvcmUgfCB1bmRlZmluZWRcblxuICBuZ0FmdGVyVmlld0luaXQgKCk6IHZvaWQge1xuICAgIHRoaXMuY29tcG9uZW50ID0gbmV3IENyb3NzaGFpcjxEYXR1bT4odGhpcy5nZXRDb25maWcoKSlcblxuICAgIGlmICh0aGlzLmRhdGEpIHtcbiAgICAgIHRoaXMuY29tcG9uZW50LnNldERhdGEodGhpcy5kYXRhKVxuICAgICAgdGhpcy5jb21wb25lbnRDb250YWluZXI/LnJlbmRlcigpXG4gICAgfVxuICB9XG5cbiAgbmdPbkNoYW5nZXMgKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICBpZiAoY2hhbmdlcy5kYXRhKSB7IHRoaXMuY29tcG9uZW50Py5zZXREYXRhKHRoaXMuZGF0YSkgfVxuICAgIHRoaXMuY29tcG9uZW50Py5zZXRDb25maWcodGhpcy5nZXRDb25maWcoKSlcbiAgICB0aGlzLmNvbXBvbmVudENvbnRhaW5lcj8ucmVuZGVyKClcbiAgfVxuXG4gIHByaXZhdGUgZ2V0Q29uZmlnICgpOiBDcm9zc2hhaXJDb25maWdJbnRlcmZhY2U8RGF0dW0+IHtcbiAgICBjb25zdCB7IGR1cmF0aW9uLCBldmVudHMsIGF0dHJpYnV0ZXMsIHgsIHksIGlkLCBjb2xvciwgeFNjYWxlLCB5U2NhbGUsIGV4Y2x1ZGVGcm9tRG9tYWluQ2FsY3VsYXRpb24sIHN0cm9rZUNvbG9yLCBzdHJva2VXaWR0aCwgeVN0YWNrZWQsIGJhc2VsaW5lLCB0b29sdGlwLCB0ZW1wbGF0ZSwgaGlkZVdoZW5GYXJGcm9tUG9pbnRlciwgaGlkZVdoZW5GYXJGcm9tUG9pbnRlckRpc3RhbmNlLCBzbmFwVG9EYXRhLCBnZXRDaXJjbGVzLCBvbkNyb3NzaGFpck1vdmUsIGZvcmNlU2hvd0F0LCBza2lwUmFuZ2VDaGVjayB9ID0gdGhpc1xuICAgIGNvbnN0IGNvbmZpZyA9IHsgZHVyYXRpb24sIGV2ZW50cywgYXR0cmlidXRlcywgeCwgeSwgaWQsIGNvbG9yLCB4U2NhbGUsIHlTY2FsZSwgZXhjbHVkZUZyb21Eb21haW5DYWxjdWxhdGlvbiwgc3Ryb2tlQ29sb3IsIHN0cm9rZVdpZHRoLCB5U3RhY2tlZCwgYmFzZWxpbmUsIHRvb2x0aXAsIHRlbXBsYXRlLCBoaWRlV2hlbkZhckZyb21Qb2ludGVyLCBoaWRlV2hlbkZhckZyb21Qb2ludGVyRGlzdGFuY2UsIHNuYXBUb0RhdGEsIGdldENpcmNsZXMsIG9uQ3Jvc3NoYWlyTW92ZSwgZm9yY2VTaG93QXQsIHNraXBSYW5nZUNoZWNrIH1cbiAgICBjb25zdCBrZXlzID0gT2JqZWN0LmtleXMoY29uZmlnKSBhcyAoa2V5b2YgQ3Jvc3NoYWlyQ29uZmlnSW50ZXJmYWNlPERhdHVtPilbXVxuICAgIGtleXMuZm9yRWFjaChrZXkgPT4geyBpZiAoY29uZmlnW2tleV0gPT09IHVuZGVmaW5lZCkgZGVsZXRlIGNvbmZpZ1trZXldIH0pXG5cbiAgICByZXR1cm4gY29uZmlnXG4gIH1cbn1cbiJdfQ==
|
|
@@ -792,8 +792,8 @@ class VisCrosshairComponent {
|
|
|
792
792
|
(_c = this.componentContainer) === null || _c === void 0 ? void 0 : _c.render();
|
|
793
793
|
}
|
|
794
794
|
getConfig() {
|
|
795
|
-
const { duration, events, attributes, x, y, id, color, xScale, yScale, excludeFromDomainCalculation, strokeColor, strokeWidth, yStacked, baseline, tooltip, template, hideWhenFarFromPointer, hideWhenFarFromPointerDistance, snapToData, getCircles } = this;
|
|
796
|
-
const config = { duration, events, attributes, x, y, id, color, xScale, yScale, excludeFromDomainCalculation, strokeColor, strokeWidth, yStacked, baseline, tooltip, template, hideWhenFarFromPointer, hideWhenFarFromPointerDistance, snapToData, getCircles };
|
|
795
|
+
const { duration, events, attributes, x, y, id, color, xScale, yScale, excludeFromDomainCalculation, strokeColor, strokeWidth, yStacked, baseline, tooltip, template, hideWhenFarFromPointer, hideWhenFarFromPointerDistance, snapToData, getCircles, onCrosshairMove, forceShowAt, skipRangeCheck } = this;
|
|
796
|
+
const config = { duration, events, attributes, x, y, id, color, xScale, yScale, excludeFromDomainCalculation, strokeColor, strokeWidth, yStacked, baseline, tooltip, template, hideWhenFarFromPointer, hideWhenFarFromPointerDistance, snapToData, getCircles, onCrosshairMove, forceShowAt, skipRangeCheck };
|
|
797
797
|
const keys = Object.keys(config);
|
|
798
798
|
keys.forEach(key => { if (config[key] === undefined)
|
|
799
799
|
delete config[key]; });
|
|
@@ -801,7 +801,7 @@ class VisCrosshairComponent {
|
|
|
801
801
|
}
|
|
802
802
|
}
|
|
803
803
|
VisCrosshairComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: VisCrosshairComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
804
|
-
VisCrosshairComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: VisCrosshairComponent, selector: "vis-crosshair", inputs: { duration: "duration", events: "events", attributes: "attributes", x: "x", y: "y", id: "id", color: "color", xScale: "xScale", yScale: "yScale", excludeFromDomainCalculation: "excludeFromDomainCalculation", strokeColor: "strokeColor", strokeWidth: "strokeWidth", yStacked: "yStacked", baseline: "baseline", tooltip: "tooltip", template: "template", hideWhenFarFromPointer: "hideWhenFarFromPointer", hideWhenFarFromPointerDistance: "hideWhenFarFromPointerDistance", snapToData: "snapToData", getCircles: "getCircles", data: "data" }, providers: [{ provide: VisXYComponent, useExisting: VisCrosshairComponent }], usesOnChanges: true, ngImport: i0, template: '', isInline: true });
|
|
804
|
+
VisCrosshairComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: VisCrosshairComponent, selector: "vis-crosshair", inputs: { duration: "duration", events: "events", attributes: "attributes", x: "x", y: "y", id: "id", color: "color", xScale: "xScale", yScale: "yScale", excludeFromDomainCalculation: "excludeFromDomainCalculation", strokeColor: "strokeColor", strokeWidth: "strokeWidth", yStacked: "yStacked", baseline: "baseline", tooltip: "tooltip", template: "template", hideWhenFarFromPointer: "hideWhenFarFromPointer", hideWhenFarFromPointerDistance: "hideWhenFarFromPointerDistance", snapToData: "snapToData", getCircles: "getCircles", onCrosshairMove: "onCrosshairMove", forceShowAt: "forceShowAt", skipRangeCheck: "skipRangeCheck", data: "data" }, providers: [{ provide: VisXYComponent, useExisting: VisCrosshairComponent }], usesOnChanges: true, ngImport: i0, template: '', isInline: true });
|
|
805
805
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: VisCrosshairComponent, decorators: [{
|
|
806
806
|
type: Component,
|
|
807
807
|
args: [{
|
|
@@ -850,6 +850,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
850
850
|
type: Input
|
|
851
851
|
}], getCircles: [{
|
|
852
852
|
type: Input
|
|
853
|
+
}], onCrosshairMove: [{
|
|
854
|
+
type: Input
|
|
855
|
+
}], forceShowAt: [{
|
|
856
|
+
type: Input
|
|
857
|
+
}], skipRangeCheck: [{
|
|
858
|
+
type: Input
|
|
853
859
|
}], data: [{
|
|
854
860
|
type: Input
|
|
855
861
|
}] } });
|