@danske/sapphire-angular 2.3.0 → 2.5.0
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/esm2020/lib/checkbox/src/checkbox.component.mjs +20 -4
- package/esm2020/lib/checkbox/src/checkbox.module.mjs +4 -3
- package/esm2020/lib/field/src/field-control.mjs +1 -1
- package/esm2020/lib/field/src/field.component.mjs +24 -9
- package/esm2020/lib/listbox/src/listbox.component.mjs +2 -2
- package/esm2020/lib/menu/src/menu-trigger.directive.mjs +10 -4
- package/esm2020/lib/menu/src/menu.component.mjs +2 -2
- package/esm2020/lib/modal/src/dialog/dialog-trigger.directive.mjs +3 -8
- package/esm2020/lib/modal/src/modal-trigger.directive.mjs +13 -11
- package/esm2020/lib/modal/src/modal.service.mjs +5 -4
- package/esm2020/lib/modal/src/panel/panel-trigger.directive.mjs +3 -8
- package/esm2020/lib/popover/src/popover-trigger.directive.mjs +11 -11
- package/esm2020/lib/popover/src/popover.component.mjs +3 -3
- package/esm2020/lib/segmented-tabs/src/segmented-tab.component.mjs +2 -2
- package/esm2020/lib/select/src/basic-select/basic-select.component.mjs +2 -2
- package/esm2020/lib/select/src/select/select.component.mjs +4 -3
- package/esm2020/lib/text-field/src/text-field.component.mjs +4 -3
- package/esm2020/lib/theme/public_api.mjs +2 -2
- package/esm2020/lib/theme/src/sapphire-overlay.service.mjs +62 -0
- package/esm2020/lib/theme/src/theme-base.directive.mjs +6 -46
- package/esm2020/lib/theme/src/theme.module.mjs +3 -29
- package/esm2020/lib/theme/src/themes.mjs +4 -4
- package/esm2020/lib/tooltip/src/tooltip.directive.mjs +4 -4
- package/fesm2015/danske-sapphire-angular.mjs +299 -312
- package/fesm2015/danske-sapphire-angular.mjs.map +1 -1
- package/fesm2020/danske-sapphire-angular.mjs +296 -308
- package/fesm2020/danske-sapphire-angular.mjs.map +1 -1
- package/lib/checkbox/src/checkbox.component.d.ts +6 -1
- package/lib/checkbox/src/checkbox.module.d.ts +4 -3
- package/lib/field/src/field-control.d.ts +1 -0
- package/lib/field/src/field.component.d.ts +11 -3
- package/lib/modal/src/dialog/dialog-trigger.directive.d.ts +0 -3
- package/lib/modal/src/modal-trigger.directive.d.ts +3 -2
- package/lib/modal/src/modal.service.d.ts +10 -2
- package/lib/modal/src/panel/panel-trigger.directive.d.ts +0 -3
- package/lib/popover/src/popover-trigger.directive.d.ts +4 -3
- package/lib/select/src/select/select.component.d.ts +1 -0
- package/lib/table/src/table-cell.directive.d.ts +1 -1
- package/lib/text-field/src/text-field.component.d.ts +1 -0
- package/lib/theme/public_api.d.ts +1 -1
- package/lib/theme/src/sapphire-overlay.service.d.ts +34 -0
- package/lib/tooltip/src/tooltip.directive.d.ts +2 -2
- package/package.json +3 -3
- package/esm2020/lib/theme/src/sapphire-overlay-container.service.mjs +0 -37
- package/lib/theme/src/sapphire-overlay-container.service.d.ts +0 -14
|
@@ -5,7 +5,7 @@ import { TooltipComponent } from './tooltip.component';
|
|
|
5
5
|
import { coerceNumberProperty } from '@angular/cdk/coercion';
|
|
6
6
|
import { AutoId } from '../../common/auto-id.decorator';
|
|
7
7
|
import * as i0 from "@angular/core";
|
|
8
|
-
import * as i1 from "
|
|
8
|
+
import * as i1 from "../../theme/public_api";
|
|
9
9
|
const tooltips = {};
|
|
10
10
|
let globalWarmedUp = false;
|
|
11
11
|
let globalWarmUpTimeout = null;
|
|
@@ -182,7 +182,7 @@ export class TooltipDirective {
|
|
|
182
182
|
};
|
|
183
183
|
}
|
|
184
184
|
}
|
|
185
|
-
TooltipDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: TooltipDirective, deps: [{ token: i1.
|
|
185
|
+
TooltipDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.0", ngImport: i0, type: TooltipDirective, deps: [{ token: i1.SapphireOverlay }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
186
186
|
TooltipDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.0", type: TooltipDirective, isStandalone: true, selector: "[spTooltip]", inputs: { tooltipText: ["spTooltip", "tooltipText"], delay: ["spTooltipDelay", "delay"], placement: ["spTooltipPlacement", "placement"] }, host: { listeners: { "mouseenter": "warmup()", "mouseleave": "hide()", "click": "hide(true)", "document:keydown.escape": "handleGlobalEscapeKeyEvent()", "focus": "onFocus($event)", "blur": "onBlur($event)" } }, exportAs: ["spTooltip"], ngImport: i0 });
|
|
187
187
|
__decorate([
|
|
188
188
|
AutoId()
|
|
@@ -201,7 +201,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImpor
|
|
|
201
201
|
},
|
|
202
202
|
exportAs: 'spTooltip',
|
|
203
203
|
}]
|
|
204
|
-
}], ctorParameters: function () { return [{ type: i1.
|
|
204
|
+
}], ctorParameters: function () { return [{ type: i1.SapphireOverlay }, { type: i0.ElementRef }]; }, propDecorators: { id: [], tooltipText: [{
|
|
205
205
|
type: Input,
|
|
206
206
|
args: ['spTooltip']
|
|
207
207
|
}], delay: [{
|
|
@@ -220,4 +220,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.0", ngImpor
|
|
|
220
220
|
type: Input,
|
|
221
221
|
args: ['spTooltipPlacement']
|
|
222
222
|
}] } });
|
|
223
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL3Rvb2x0aXAvc3JjL3Rvb2x0aXAuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFDQSxPQUFPLEVBQ0wsU0FBUyxFQUVULFlBQVksRUFDWixRQUFRLEVBQ1IsS0FBSyxHQUNOLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN2RCxPQUFPLEVBQWUsb0JBQW9CLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUMxRSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7OztBQUV4RCxNQUFNLFFBQVEsR0FBcUMsRUFBRSxDQUFDO0FBQ3RELElBQUksY0FBYyxHQUFHLEtBQUssQ0FBQztBQUMzQixJQUFJLG1CQUFtQixHQUF5QyxJQUFJLENBQUM7QUFDckUsSUFBSSxxQkFBcUIsR0FBeUMsSUFBSSxDQUFDO0FBRXZFLE1BQU0sZ0JBQWdCLEdBQUcsR0FBRyxDQUFDO0FBYzdCLE1BQU0sT0FBTyxnQkFBZ0I7SUFjM0I7Ozs7O09BS0c7SUFDSCxJQUNJLEtBQUs7UUFDUCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDckIsQ0FBQztJQUNELElBQUksS0FBSyxDQUFDLEtBQWtCO1FBQzFCLElBQUksQ0FBQyxNQUFNLEdBQUcsb0JBQW9CLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDNUMsQ0FBQztJQUlPLDBCQUEwQjtRQUNoQyxJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUUsV0FBVyxFQUFFLEVBQUU7WUFDbkMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUNqQjtJQUNILENBQUM7SUFHTyxPQUFPLENBQUMsS0FBaUI7UUFDL0IsSUFDRSxLQUFL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O3VCQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsQ0FBQztnQkFXekIsTUFBTTtzQkFEYixZQUFZO3VCQUFDLE1BQU0sRUFBRSxDQUFDLFFBQVEsQ0FBQztnQkFRaEMsU0FBUztzQkFEUixLQUFLO3VCQUFDLG9CQUFvQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE92ZXJsYXksIE92ZXJsYXlSZWYgfSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XG5pbXBvcnQge1xuICBEaXJlY3RpdmUsXG4gIEVsZW1lbnRSZWYsXG4gIEhvc3RMaXN0ZW5lcixcbiAgSW5qZWN0b3IsXG4gIElucHV0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbXBvbmVudFBvcnRhbCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuaW1wb3J0IHsgVG9vbHRpcENvbXBvbmVudCB9IGZyb20gJy4vdG9vbHRpcC5jb21wb25lbnQnO1xuaW1wb3J0IHsgTnVtYmVySW5wdXQsIGNvZXJjZU51bWJlclByb3BlcnR5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJztcbmltcG9ydCB7IEF1dG9JZCB9IGZyb20gJy4uLy4uL2NvbW1vbi9hdXRvLWlkLmRlY29yYXRvcic7XG5cbmNvbnN0IHRvb2x0aXBzOiBSZWNvcmQ8c3RyaW5nLCBUb29sdGlwRGlyZWN0aXZlPiA9IHt9O1xubGV0IGdsb2JhbFdhcm1lZFVwID0gZmFsc2U7XG5sZXQgZ2xvYmFsV2FybVVwVGltZW91dDogUmV0dXJuVHlwZTx0eXBlb2Ygc2V0VGltZW91dD4gfCBudWxsID0gbnVsbDtcbmxldCBnbG9iYWxDb29sZG93blRpbWVvdXQ6IFJldHVyblR5cGU8dHlwZW9mIHNldFRpbWVvdXQ+IHwgbnVsbCA9IG51bGw7XG5cbmNvbnN0IFRPT0xUSVBfQ09PTERPV04gPSA1MDA7XG5cbkBEaXJlY3RpdmUoe1xuICAvLyBUaGlzIGFsbG93cyBmb3IgdGhpcyBkaXJlY3RpdmUgdG8gYmUgdXNlZCBpbiBob3N0RGlyZWN0aXZlcyBvZiBvdGhlciBjb21wb25lbnRzL2RpcmVjdGl2ZXNcbiAgLy8gRS5nLiB1c2VmdWwgZm9yIGhhdmluZyBhIHRvb2x0aXAgb24gYSB0cnVuY2F0ZWQgdGFibGUgY2VsbCBlbGVtZW50XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnW3NwVG9vbHRpcF0nLFxuICBob3N0OiB7XG4gICAgJyhtb3VzZWVudGVyKSc6ICd3YXJtdXAoKScsXG4gICAgJyhtb3VzZWxlYXZlKSc6ICdoaWRlKCknLFxuICAgICcoY2xpY2spJzogJ2hpZGUodHJ1ZSknLFxuICB9LFxuICBleHBvcnRBczogJ3NwVG9vbHRpcCcsXG59KVxuZXhwb3J0IGNsYXNzIFRvb2x0aXBEaXJlY3RpdmUge1xuICBwcml2YXRlIF9vdmVybGF5UmVmOiBPdmVybGF5UmVmIHwgbnVsbCA9IG51bGw7XG4gIHByaXZhdGUgX3BvcnRhbDogQ29tcG9uZW50UG9ydGFsPFRvb2x0aXBDb21wb25lbnQ+IHwgbnVsbCA9IG51bGw7XG4gIHByaXZhdGUgX2Nsb3NlVGltZW91dDogUmV0dXJuVHlwZTx0eXBlb2Ygc2V0VGltZW91dD4gfCB1bmRlZmluZWQ7XG5cbiAgQEF1dG9JZCgpXG4gIGlkID0gJyc7XG5cbiAgLyoqXG4gICAqIFRoZSBzdHJpbmcgdG8gc2hvdyBpbnNpZGUgdGhlIHRvb2x0aXAgb3IgbnVsbCB0byBkaXNhYmxlIGl0LlxuICAgKi9cbiAgQElucHV0KCdzcFRvb2x0aXAnKVxuICB0b29sdGlwVGV4dDogc3RyaW5nIHwgbnVsbCA9ICcnO1xuXG4gIC8qKlxuICAgKiBUaGUgYW1vdW50IG9mIHRpbWUgdGhhdCBoYXMgdG8gcGFzcyBiZWZvcmUgdG9vbHRpcCB3aWxsIHNob3dcbiAgICogdXBvbiB1c2VyIGludGVyYWN0aW9uIGFjdGl2YXRpbmcgaXQg4oCTIGFrYSBcIndhcm0gdXBcIiBwZXJpb2QuXG4gICAqXG4gICAqIEBkZWZhdWx0IDUwMFxuICAgKi9cbiAgQElucHV0KCdzcFRvb2x0aXBEZWxheScpXG4gIGdldCBkZWxheSgpOiBudW1iZXIgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLl9kZWxheTtcbiAgfVxuICBzZXQgZGVsYXkodmFsdWU6IE51bWJlcklucHV0KSB7XG4gICAgdGhpcy5fZGVsYXkgPSBjb2VyY2VOdW1iZXJQcm9wZXJ0eSh2YWx1ZSk7XG4gIH1cbiAgX2RlbGF5ID0gNTAwO1xuXG4gIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50OmtleWRvd24uZXNjYXBlJylcbiAgcHJpdmF0ZSBoYW5kbGVHbG9iYWxFc2NhcGVLZXlFdmVudCgpIHtcbiAgICBpZiAodGhpcy5fb3ZlcmxheVJlZj8uaGFzQXR0YWNoZWQoKSkge1xuICAgICAgdGhpcy5oaWRlKHRydWUpO1xuICAgIH1cbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2ZvY3VzJywgWyckZXZlbnQnXSlcbiAgcHJpdmF0ZSBvbkZvY3VzKGV2ZW50OiBGb2N1c0V2ZW50KSB7XG4gICAgaWYgKFxuICAgICAgZXZlbnQudGFyZ2V0ID09PSB0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQgJiZcbiAgICAgICF0aGlzLl9vdmVybGF5UmVmPy5oYXNBdHRhY2hlZCgpXG4gICAgKSB7XG4gICAgICB0aGlzLnNob3coKTtcbiAgICB9XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdibHVyJywgWyckZXZlbnQnXSlcbiAgcHJpdmF0ZSBvbkJsdXIoZXZlbnQ6IEZvY3VzRXZlbnQpIHtcbiAgICBpZiAoZXZlbnQudGFyZ2V0ID09PSB0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQpIHtcbiAgICAgIHRoaXMuaGlkZSh0cnVlKTtcbiAgICB9XG4gIH1cblxuICBASW5wdXQoJ3NwVG9vbHRpcFBsYWNlbWVudCcpXG4gIHBsYWNlbWVudDogJ3N0YXJ0JyB8ICdjZW50ZXInIHwgJ2VuZCcgPSAnY2VudGVyJztcblxuICBpc09wZW4gPSAoKSA9PiB7XG4gICAgcmV0dXJuIHRoaXMuX292ZXJsYXlSZWY/Lmhhc0F0dGFjaGVkKCk7XG4gIH07XG5cbiAgcHJpdmF0ZSBlbnN1cmVUb29sdGlwRW50cnkgPSAoKSA9PiB7XG4gICAgdG9vbHRpcHNbdGhpcy5pZF0gPSB0aGlzO1xuICB9O1xuXG4gIHByaXZhdGUgY2xvc2VPcGVuVG9vbHRpcHMgPSAoKSA9PiB7XG4gICAgZm9yIChjb25zdCBpZCBpbiB0b29sdGlwcykge1xuICAgICAgaWYgKGlkICE9PSB0aGlzLmlkKSB7XG4gICAgICAgIHRvb2x0aXBzW2lkXT8uaGlkZSh0cnVlKTtcbiAgICAgICAgZGVsZXRlIHRvb2x0aXBzW2lkXTtcbiAgICAgIH1cbiAgICB9XG4gIH07XG5cbiAgc2hvdyA9ICgpID0+IHtcbiAgICBpZiAodHlwZW9mIHRoaXMudG9vbHRpcFRleHQgIT09ICdzdHJpbmcnIHx8IHRoaXMudG9vbHRpcFRleHQubGVuZ3RoIDwgMSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNsZWFyVGltZW91dCh0aGlzLl9jbG9zZVRpbWVvdXQpO1xuICAgIHRoaXMuX2Nsb3NlVGltZW91dCA9IHVuZGVmaW5lZDtcbiAgICB0aGlzLmNsb3NlT3BlblRvb2x0aXBzKCk7XG4gICAgdGhpcy5lbnN1cmVUb29sdGlwRW50cnkoKTtcbiAgICBnbG9iYWxXYXJtZWRVcCA9IHRydWU7XG4gICAgdGhpcy5hdHRhY2hUb29sdGlwUG9ydGFsKCk7XG4gICAgaWYgKGdsb2JhbFdhcm1VcFRpbWVvdXQpIHtcbiAgICAgIGNsZWFyVGltZW91dChnbG9iYWxXYXJtVXBUaW1lb3V0KTtcbiAgICAgIGdsb2JhbFdhcm1VcFRpbWVvdXQgPSBudWxsO1xuICAgIH1cbiAgICBpZiAoZ2xvYmFsQ29vbGRvd25UaW1lb3V0KSB7XG4gICAgICBjbGVhclRpbWVvdXQoZ2xvYmFsQ29vbGRvd25UaW1lb3V0KTtcbiAgICAgIGdsb2JhbENvb2xkb3duVGltZW91dCA9IG51bGw7XG4gICAgfVxuICB9O1xuXG4gIGhpZGUgPSAoaW1tZWRpYXRlPzogYm9vbGVhbikgPT4ge1xuICAgIGNvbnN0IGRldGFjaCA9ICgpID0+IHtcbiAgICAgIHRoaXMuX2Nsb3NlVGltZW91dCA9IHVuZGVmaW5lZDtcbiAgICAgIHRoaXMuX292ZXJsYXlSZWY/LmRldGFjaCgpO1xuICAgICAgdGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnJlbW92ZUF0dHJpYnV0ZSgnYXJpYS1kZXNjcmliZWRieScpO1xuICAgIH07XG5cbiAgICBpZiAoaW1tZWRpYXRlKSB7XG4gICAgICBjbGVhclRpbWVvdXQodGhpcy5fY2xvc2VUaW1lb3V0KTtcbiAgICAgIHRoaXMuX2Nsb3NlVGltZW91dCA9IHVuZGVmaW5lZDtcbiAgICAgIGRldGFjaCgpO1xuICAgIH0gZWxzZSBpZiAoIXRoaXMuX2Nsb3NlVGltZW91dCkge1xuICAgICAgdGhpcy5fY2xvc2VUaW1lb3V0ID0gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIGRldGFjaCgpO1xuICAgICAgfSwgVE9PTFRJUF9DT09MRE9XTik7XG4gICAgfVxuXG4gICAgaWYgKGdsb2JhbFdhcm1VcFRpbWVvdXQpIHtcbiAgICAgIGNsZWFyVGltZW91dChnbG9iYWxXYXJtVXBUaW1lb3V0KTtcbiAgICAgIGdsb2JhbFdhcm1VcFRpbWVvdXQgPSBudWxsO1xuICAgIH1cbiAgICBpZiAoZ2xvYmFsV2FybWVkVXApIHtcbiAgICAgIGlmIChnbG9iYWxDb29sZG93blRpbWVvdXQpIHtcbiAgICAgICAgY2xlYXJUaW1lb3V0KGdsb2JhbENvb2xkb3duVGltZW91dCk7XG4gICAgICAgIGdsb2JhbENvb2xkb3duVGltZW91dCA9IG51bGw7XG4gICAgICB9XG4gICAgICBnbG9iYWxDb29sZG93blRpbWVvdXQgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgZGVsZXRlIHRvb2x0aXBzW3RoaXMuaWRdO1xuICAgICAgICBnbG9iYWxDb29sZG93blRpbWVvdXQgPSBudWxsO1xuICAgICAgICBnbG9iYWxXYXJtZWRVcCA9IGZhbHNlO1xuICAgICAgfSwgVE9PTFRJUF9DT09MRE9XTik7XG4gICAgfVxuICB9O1xuXG4gIHdhcm11cCA9ICgpID0+IHtcbiAgICB0aGlzLmNsb3NlT3BlblRvb2x0aXBzKCk7XG4gICAgdGhpcy5lbnN1cmVUb29sdGlwRW50cnkoKTtcbiAgICBpZiAoXG4gICAgICAhdGhpcy5fb3ZlcmxheVJlZj8uaGFzQXR0YWNoZWQoKSAmJlxuICAgICAgIWdsb2JhbFdhcm1VcFRpbWVvdXQgJiZcbiAgICAgICFnbG9iYWxXYXJtZWRVcFxuICAgICkge1xuICAgICAgZ2xvYmFsV2FybVVwVGltZW91dCA9IHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICBnbG9iYWxXYXJtVXBUaW1lb3V0ID0gbnVsbDtcbiAgICAgICAgZ2xvYmFsV2FybWVkVXAgPSB0cnVlO1xuICAgICAgICB0aGlzLnNob3coKTtcbiAgICAgIH0sIHRoaXMuZGVsYXkpO1xuICAgIH0gZWxzZSBpZiAoIXRoaXMuX292ZXJsYXlSZWY/Lmhhc0F0dGFjaGVkKCkpIHtcbiAgICAgIHRoaXMuc2hvdygpO1xuICAgIH0gZWxzZSBpZiAodGhpcy5fb3ZlcmxheVJlZj8uaGFzQXR0YWNoZWQoKSkge1xuICAgICAgY2xlYXJUaW1lb3V0KHRoaXMuX2Nsb3NlVGltZW91dCk7XG4gICAgICB0aGlzLl9jbG9zZVRpbWVvdXQgPSB1bmRlZmluZWQ7XG4gICAgICBpZiAoZ2xvYmFsQ29vbGRvd25UaW1lb3V0KSB7XG4gICAgICAgIGNsZWFyVGltZW91dChnbG9iYWxDb29sZG93blRpbWVvdXQpO1xuICAgICAgICBnbG9iYWxDb29sZG93blRpbWVvdXQgPSBudWxsO1xuICAgICAgfVxuICAgIH1cbiAgfTtcblxuICBwcml2YXRlIGF0dGFjaFRvb2x0aXBQb3J0YWwgPSAoKSA9PiB7XG4gICAgaWYgKHRoaXMuX292ZXJsYXlSZWY/Lmhhc0F0dGFjaGVkKCkpIHJldHVybjtcbiAgICB0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuc2V0QXR0cmlidXRlKCdhcmlhLWRlc2NyaWJlZGJ5JywgdGhpcy5pZCk7XG4gICAgY29uc3QgcG9zaXRpb25TdHJhdGVneSA9IHRoaXMuX292ZXJsYXlcbiAgICAgIC5wb3NpdGlvbigpXG4gICAgICAuZmxleGlibGVDb25uZWN0ZWRUbyh0aGlzLl9lbGVtZW50UmVmKVxuICAgICAgLndpdGhQb3NpdGlvbnMoW1xuICAgICAgICB7XG4gICAgICAgICAgb3JpZ2luWDogdGhpcy5wbGFjZW1lbnQsXG4gICAgICAgICAgb3JpZ2luWTogJ2JvdHRvbScsXG4gICAgICAgICAgb3ZlcmxheVg6IHRoaXMucGxhY2VtZW50LFxuICAgICAgICAgIG92ZXJsYXlZOiAndG9wJyxcbiAgICAgICAgICBvZmZzZXRZOiA2LFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgb3JpZ2luWDogdGhpcy5wbGFjZW1lbnQsXG4gICAgICAgICAgb3JpZ2luWTogJ3RvcCcsXG4gICAgICAgICAgb3ZlcmxheVg6IHRoaXMucGxhY2VtZW50LFxuICAgICAgICAgIG92ZXJsYXlZOiAnYm90dG9tJyxcbiAgICAgICAgICBvZmZzZXRZOiAtNixcbiAgICAgICAgfSxcbiAgICAgIF0pXG4gICAgICAud2l0aEZsZXhpYmxlRGltZW5zaW9ucyhmYWxzZSlcbiAgICAgIC53aXRoVmlld3BvcnRNYXJnaW4oNik7XG4gICAgdGhpcy5fb3ZlcmxheVJlZiA9IHRoaXMuX292ZXJsYXkuY3JlYXRlKHtcbiAgICAgIHBvc2l0aW9uU3RyYXRlZ3ksXG4gICAgICBzY3JvbGxTdHJhdGVneTogdGhpcy5fb3ZlcmxheS5zY3JvbGxTdHJhdGVnaWVzLnJlcG9zaXRpb24oKSxcbiAgICB9KTtcbiAgICB0aGlzLl9wb3J0YWwgPSBuZXcgQ29tcG9uZW50UG9ydGFsKFxuICAgICAgVG9vbHRpcENvbXBvbmVudCxcbiAgICAgIG51bGwsXG4gICAgICBJbmplY3Rvci5jcmVhdGUoe1xuICAgICAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBUb29sdGlwRGlyZWN0aXZlLFxuICAgICAgICAgICAgdXNlVmFsdWU6IHRoaXMsXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgIH0pXG4gICAgKTtcbiAgICB0aGlzLl9vdmVybGF5UmVmLmF0dGFjaCh0aGlzLl9wb3J0YWwpLmluc3RhbmNlO1xuICB9O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgX292ZXJsYXk6IE92ZXJsYXksXG4gICAgcHJpdmF0ZSBfZWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD5cbiAgKSB7fVxufVxuIl19
|
|
223
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL3Rvb2x0aXAvc3JjL3Rvb2x0aXAuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFDQSxPQUFPLEVBQ0wsU0FBUyxFQUVULFlBQVksRUFDWixRQUFRLEVBQ1IsS0FBSyxHQUNOLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN2RCxPQUFPLEVBQWUsb0JBQW9CLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUMxRSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7OztBQUd4RCxNQUFNLFFBQVEsR0FBcUMsRUFBRSxDQUFDO0FBQ3RELElBQUksY0FBYyxHQUFHLEtBQUssQ0FBQztBQUMzQixJQUFJLG1CQUFtQixHQUF5QyxJQUFJLENBQUM7QUFDckUsSUFBSSxxQkFBcUIsR0FBeUMsSUFBSSxDQUFDO0FBRXZFLE1BQU0sZ0JBQWdCLEdBQUcsR0FBRyxDQUFDO0FBYzdCLE1BQU0sT0FBTyxnQkFBZ0I7SUFjM0I7Ozs7O09BS0c7SUFDSCxJQUNJLEtBQUs7UUFDUCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDckIsQ0FBQztJQUNELElBQUksS0FBSyxDQUFDLEtBQWtCO1FBQzFCLElBQUksQ0FBQyxNQUFNLEdBQUcsb0JBQW9CLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDNUMsQ0FBQztJQUlPLDBCQUEwQjtRQUNoQyxJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUUsV0FBVyxFQUFFLEVBQUU7WUFDbkMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUNqQjtJQUNILENBQUM7SUFHTyxPQUFPLENBQUMsS0FBaUI7UUFDL0IsSUFDRSxLQUFL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WTt1QkFBQyxPQUFPLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBV3pCLE1BQU07c0JBRGIsWUFBWTt1QkFBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBUWhDLFNBQVM7c0JBRFIsS0FBSzt1QkFBQyxvQkFBb0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPdmVybGF5UmVmIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xuaW1wb3J0IHtcbiAgRGlyZWN0aXZlLFxuICBFbGVtZW50UmVmLFxuICBIb3N0TGlzdGVuZXIsXG4gIEluamVjdG9yLFxuICBJbnB1dCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21wb25lbnRQb3J0YWwgfSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJztcbmltcG9ydCB7IFRvb2x0aXBDb21wb25lbnQgfSBmcm9tICcuL3Rvb2x0aXAuY29tcG9uZW50JztcbmltcG9ydCB7IE51bWJlcklucHV0LCBjb2VyY2VOdW1iZXJQcm9wZXJ0eSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2VyY2lvbic7XG5pbXBvcnQgeyBBdXRvSWQgfSBmcm9tICcuLi8uLi9jb21tb24vYXV0by1pZC5kZWNvcmF0b3InO1xuaW1wb3J0IHsgU2FwcGhpcmVPdmVybGF5IH0gZnJvbSAnLi4vLi4vdGhlbWUvcHVibGljX2FwaSc7XG5cbmNvbnN0IHRvb2x0aXBzOiBSZWNvcmQ8c3RyaW5nLCBUb29sdGlwRGlyZWN0aXZlPiA9IHt9O1xubGV0IGdsb2JhbFdhcm1lZFVwID0gZmFsc2U7XG5sZXQgZ2xvYmFsV2FybVVwVGltZW91dDogUmV0dXJuVHlwZTx0eXBlb2Ygc2V0VGltZW91dD4gfCBudWxsID0gbnVsbDtcbmxldCBnbG9iYWxDb29sZG93blRpbWVvdXQ6IFJldHVyblR5cGU8dHlwZW9mIHNldFRpbWVvdXQ+IHwgbnVsbCA9IG51bGw7XG5cbmNvbnN0IFRPT0xUSVBfQ09PTERPV04gPSA1MDA7XG5cbkBEaXJlY3RpdmUoe1xuICAvLyBUaGlzIGFsbG93cyBmb3IgdGhpcyBkaXJlY3RpdmUgdG8gYmUgdXNlZCBpbiBob3N0RGlyZWN0aXZlcyBvZiBvdGhlciBjb21wb25lbnRzL2RpcmVjdGl2ZXNcbiAgLy8gRS5nLiB1c2VmdWwgZm9yIGhhdmluZyBhIHRvb2x0aXAgb24gYSB0cnVuY2F0ZWQgdGFibGUgY2VsbCBlbGVtZW50XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnW3NwVG9vbHRpcF0nLFxuICBob3N0OiB7XG4gICAgJyhtb3VzZWVudGVyKSc6ICd3YXJtdXAoKScsXG4gICAgJyhtb3VzZWxlYXZlKSc6ICdoaWRlKCknLFxuICAgICcoY2xpY2spJzogJ2hpZGUodHJ1ZSknLFxuICB9LFxuICBleHBvcnRBczogJ3NwVG9vbHRpcCcsXG59KVxuZXhwb3J0IGNsYXNzIFRvb2x0aXBEaXJlY3RpdmUge1xuICBwcml2YXRlIF9vdmVybGF5UmVmOiBPdmVybGF5UmVmIHwgbnVsbCA9IG51bGw7XG4gIHByaXZhdGUgX3BvcnRhbDogQ29tcG9uZW50UG9ydGFsPFRvb2x0aXBDb21wb25lbnQ+IHwgbnVsbCA9IG51bGw7XG4gIHByaXZhdGUgX2Nsb3NlVGltZW91dDogUmV0dXJuVHlwZTx0eXBlb2Ygc2V0VGltZW91dD4gfCB1bmRlZmluZWQ7XG5cbiAgQEF1dG9JZCgpXG4gIGlkID0gJyc7XG5cbiAgLyoqXG4gICAqIFRoZSBzdHJpbmcgdG8gc2hvdyBpbnNpZGUgdGhlIHRvb2x0aXAgb3IgbnVsbCB0byBkaXNhYmxlIGl0LlxuICAgKi9cbiAgQElucHV0KCdzcFRvb2x0aXAnKVxuICB0b29sdGlwVGV4dDogc3RyaW5nIHwgbnVsbCA9ICcnO1xuXG4gIC8qKlxuICAgKiBUaGUgYW1vdW50IG9mIHRpbWUgdGhhdCBoYXMgdG8gcGFzcyBiZWZvcmUgdG9vbHRpcCB3aWxsIHNob3dcbiAgICogdXBvbiB1c2VyIGludGVyYWN0aW9uIGFjdGl2YXRpbmcgaXQg4oCTIGFrYSBcIndhcm0gdXBcIiBwZXJpb2QuXG4gICAqXG4gICAqIEBkZWZhdWx0IDUwMFxuICAgKi9cbiAgQElucHV0KCdzcFRvb2x0aXBEZWxheScpXG4gIGdldCBkZWxheSgpOiBudW1iZXIgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLl9kZWxheTtcbiAgfVxuICBzZXQgZGVsYXkodmFsdWU6IE51bWJlcklucHV0KSB7XG4gICAgdGhpcy5fZGVsYXkgPSBjb2VyY2VOdW1iZXJQcm9wZXJ0eSh2YWx1ZSk7XG4gIH1cbiAgX2RlbGF5ID0gNTAwO1xuXG4gIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50OmtleWRvd24uZXNjYXBlJylcbiAgcHJpdmF0ZSBoYW5kbGVHbG9iYWxFc2NhcGVLZXlFdmVudCgpIHtcbiAgICBpZiAodGhpcy5fb3ZlcmxheVJlZj8uaGFzQXR0YWNoZWQoKSkge1xuICAgICAgdGhpcy5oaWRlKHRydWUpO1xuICAgIH1cbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2ZvY3VzJywgWyckZXZlbnQnXSlcbiAgcHJpdmF0ZSBvbkZvY3VzKGV2ZW50OiBGb2N1c0V2ZW50KSB7XG4gICAgaWYgKFxuICAgICAgZXZlbnQudGFyZ2V0ID09PSB0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQgJiZcbiAgICAgICF0aGlzLl9vdmVybGF5UmVmPy5oYXNBdHRhY2hlZCgpXG4gICAgKSB7XG4gICAgICB0aGlzLnNob3coKTtcbiAgICB9XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdibHVyJywgWyckZXZlbnQnXSlcbiAgcHJpdmF0ZSBvbkJsdXIoZXZlbnQ6IEZvY3VzRXZlbnQpIHtcbiAgICBpZiAoZXZlbnQudGFyZ2V0ID09PSB0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQpIHtcbiAgICAgIHRoaXMuaGlkZSh0cnVlKTtcbiAgICB9XG4gIH1cblxuICBASW5wdXQoJ3NwVG9vbHRpcFBsYWNlbWVudCcpXG4gIHBsYWNlbWVudDogJ3N0YXJ0JyB8ICdjZW50ZXInIHwgJ2VuZCcgPSAnY2VudGVyJztcblxuICBpc09wZW4gPSAoKSA9PiB7XG4gICAgcmV0dXJuIHRoaXMuX292ZXJsYXlSZWY/Lmhhc0F0dGFjaGVkKCk7XG4gIH07XG5cbiAgcHJpdmF0ZSBlbnN1cmVUb29sdGlwRW50cnkgPSAoKSA9PiB7XG4gICAgdG9vbHRpcHNbdGhpcy5pZF0gPSB0aGlzO1xuICB9O1xuXG4gIHByaXZhdGUgY2xvc2VPcGVuVG9vbHRpcHMgPSAoKSA9PiB7XG4gICAgZm9yIChjb25zdCBpZCBpbiB0b29sdGlwcykge1xuICAgICAgaWYgKGlkICE9PSB0aGlzLmlkKSB7XG4gICAgICAgIHRvb2x0aXBzW2lkXT8uaGlkZSh0cnVlKTtcbiAgICAgICAgZGVsZXRlIHRvb2x0aXBzW2lkXTtcbiAgICAgIH1cbiAgICB9XG4gIH07XG5cbiAgc2hvdyA9ICgpID0+IHtcbiAgICBpZiAodHlwZW9mIHRoaXMudG9vbHRpcFRleHQgIT09ICdzdHJpbmcnIHx8IHRoaXMudG9vbHRpcFRleHQubGVuZ3RoIDwgMSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNsZWFyVGltZW91dCh0aGlzLl9jbG9zZVRpbWVvdXQpO1xuICAgIHRoaXMuX2Nsb3NlVGltZW91dCA9IHVuZGVmaW5lZDtcbiAgICB0aGlzLmNsb3NlT3BlblRvb2x0aXBzKCk7XG4gICAgdGhpcy5lbnN1cmVUb29sdGlwRW50cnkoKTtcbiAgICBnbG9iYWxXYXJtZWRVcCA9IHRydWU7XG4gICAgdGhpcy5hdHRhY2hUb29sdGlwUG9ydGFsKCk7XG4gICAgaWYgKGdsb2JhbFdhcm1VcFRpbWVvdXQpIHtcbiAgICAgIGNsZWFyVGltZW91dChnbG9iYWxXYXJtVXBUaW1lb3V0KTtcbiAgICAgIGdsb2JhbFdhcm1VcFRpbWVvdXQgPSBudWxsO1xuICAgIH1cbiAgICBpZiAoZ2xvYmFsQ29vbGRvd25UaW1lb3V0KSB7XG4gICAgICBjbGVhclRpbWVvdXQoZ2xvYmFsQ29vbGRvd25UaW1lb3V0KTtcbiAgICAgIGdsb2JhbENvb2xkb3duVGltZW91dCA9IG51bGw7XG4gICAgfVxuICB9O1xuXG4gIGhpZGUgPSAoaW1tZWRpYXRlPzogYm9vbGVhbikgPT4ge1xuICAgIGNvbnN0IGRldGFjaCA9ICgpID0+IHtcbiAgICAgIHRoaXMuX2Nsb3NlVGltZW91dCA9IHVuZGVmaW5lZDtcbiAgICAgIHRoaXMuX292ZXJsYXlSZWY/LmRldGFjaCgpO1xuICAgICAgdGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnJlbW92ZUF0dHJpYnV0ZSgnYXJpYS1kZXNjcmliZWRieScpO1xuICAgIH07XG5cbiAgICBpZiAoaW1tZWRpYXRlKSB7XG4gICAgICBjbGVhclRpbWVvdXQodGhpcy5fY2xvc2VUaW1lb3V0KTtcbiAgICAgIHRoaXMuX2Nsb3NlVGltZW91dCA9IHVuZGVmaW5lZDtcbiAgICAgIGRldGFjaCgpO1xuICAgIH0gZWxzZSBpZiAoIXRoaXMuX2Nsb3NlVGltZW91dCkge1xuICAgICAgdGhpcy5fY2xvc2VUaW1lb3V0ID0gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIGRldGFjaCgpO1xuICAgICAgfSwgVE9PTFRJUF9DT09MRE9XTik7XG4gICAgfVxuXG4gICAgaWYgKGdsb2JhbFdhcm1VcFRpbWVvdXQpIHtcbiAgICAgIGNsZWFyVGltZW91dChnbG9iYWxXYXJtVXBUaW1lb3V0KTtcbiAgICAgIGdsb2JhbFdhcm1VcFRpbWVvdXQgPSBudWxsO1xuICAgIH1cbiAgICBpZiAoZ2xvYmFsV2FybWVkVXApIHtcbiAgICAgIGlmIChnbG9iYWxDb29sZG93blRpbWVvdXQpIHtcbiAgICAgICAgY2xlYXJUaW1lb3V0KGdsb2JhbENvb2xkb3duVGltZW91dCk7XG4gICAgICAgIGdsb2JhbENvb2xkb3duVGltZW91dCA9IG51bGw7XG4gICAgICB9XG4gICAgICBnbG9iYWxDb29sZG93blRpbWVvdXQgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgZGVsZXRlIHRvb2x0aXBzW3RoaXMuaWRdO1xuICAgICAgICBnbG9iYWxDb29sZG93blRpbWVvdXQgPSBudWxsO1xuICAgICAgICBnbG9iYWxXYXJtZWRVcCA9IGZhbHNlO1xuICAgICAgfSwgVE9PTFRJUF9DT09MRE9XTik7XG4gICAgfVxuICB9O1xuXG4gIHdhcm11cCA9ICgpID0+IHtcbiAgICB0aGlzLmNsb3NlT3BlblRvb2x0aXBzKCk7XG4gICAgdGhpcy5lbnN1cmVUb29sdGlwRW50cnkoKTtcbiAgICBpZiAoXG4gICAgICAhdGhpcy5fb3ZlcmxheVJlZj8uaGFzQXR0YWNoZWQoKSAmJlxuICAgICAgIWdsb2JhbFdhcm1VcFRpbWVvdXQgJiZcbiAgICAgICFnbG9iYWxXYXJtZWRVcFxuICAgICkge1xuICAgICAgZ2xvYmFsV2FybVVwVGltZW91dCA9IHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICBnbG9iYWxXYXJtVXBUaW1lb3V0ID0gbnVsbDtcbiAgICAgICAgZ2xvYmFsV2FybWVkVXAgPSB0cnVlO1xuICAgICAgICB0aGlzLnNob3coKTtcbiAgICAgIH0sIHRoaXMuZGVsYXkpO1xuICAgIH0gZWxzZSBpZiAoIXRoaXMuX292ZXJsYXlSZWY/Lmhhc0F0dGFjaGVkKCkpIHtcbiAgICAgIHRoaXMuc2hvdygpO1xuICAgIH0gZWxzZSBpZiAodGhpcy5fb3ZlcmxheVJlZj8uaGFzQXR0YWNoZWQoKSkge1xuICAgICAgY2xlYXJUaW1lb3V0KHRoaXMuX2Nsb3NlVGltZW91dCk7XG4gICAgICB0aGlzLl9jbG9zZVRpbWVvdXQgPSB1bmRlZmluZWQ7XG4gICAgICBpZiAoZ2xvYmFsQ29vbGRvd25UaW1lb3V0KSB7XG4gICAgICAgIGNsZWFyVGltZW91dChnbG9iYWxDb29sZG93blRpbWVvdXQpO1xuICAgICAgICBnbG9iYWxDb29sZG93blRpbWVvdXQgPSBudWxsO1xuICAgICAgfVxuICAgIH1cbiAgfTtcblxuICBwcml2YXRlIGF0dGFjaFRvb2x0aXBQb3J0YWwgPSAoKSA9PiB7XG4gICAgaWYgKHRoaXMuX292ZXJsYXlSZWY/Lmhhc0F0dGFjaGVkKCkpIHJldHVybjtcbiAgICB0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuc2V0QXR0cmlidXRlKCdhcmlhLWRlc2NyaWJlZGJ5JywgdGhpcy5pZCk7XG4gICAgY29uc3QgcG9zaXRpb25TdHJhdGVneSA9IHRoaXMuX292ZXJsYXlcbiAgICAgIC5wb3NpdGlvbigpXG4gICAgICAuZmxleGlibGVDb25uZWN0ZWRUbyh0aGlzLl9lbGVtZW50UmVmKVxuICAgICAgLndpdGhQb3NpdGlvbnMoW1xuICAgICAgICB7XG4gICAgICAgICAgb3JpZ2luWDogdGhpcy5wbGFjZW1lbnQsXG4gICAgICAgICAgb3JpZ2luWTogJ2JvdHRvbScsXG4gICAgICAgICAgb3ZlcmxheVg6IHRoaXMucGxhY2VtZW50LFxuICAgICAgICAgIG92ZXJsYXlZOiAndG9wJyxcbiAgICAgICAgICBvZmZzZXRZOiA2LFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgb3JpZ2luWDogdGhpcy5wbGFjZW1lbnQsXG4gICAgICAgICAgb3JpZ2luWTogJ3RvcCcsXG4gICAgICAgICAgb3ZlcmxheVg6IHRoaXMucGxhY2VtZW50LFxuICAgICAgICAgIG92ZXJsYXlZOiAnYm90dG9tJyxcbiAgICAgICAgICBvZmZzZXRZOiAtNixcbiAgICAgICAgfSxcbiAgICAgIF0pXG4gICAgICAud2l0aEZsZXhpYmxlRGltZW5zaW9ucyhmYWxzZSlcbiAgICAgIC53aXRoVmlld3BvcnRNYXJnaW4oNik7XG4gICAgdGhpcy5fb3ZlcmxheVJlZiA9IHRoaXMuX292ZXJsYXkuY3JlYXRlKHtcbiAgICAgIHBvc2l0aW9uU3RyYXRlZ3ksXG4gICAgICBzY3JvbGxTdHJhdGVneTogdGhpcy5fb3ZlcmxheS5zY3JvbGxTdHJhdGVnaWVzLnJlcG9zaXRpb24oKSxcbiAgICB9KTtcbiAgICB0aGlzLl9wb3J0YWwgPSBuZXcgQ29tcG9uZW50UG9ydGFsKFxuICAgICAgVG9vbHRpcENvbXBvbmVudCxcbiAgICAgIG51bGwsXG4gICAgICBJbmplY3Rvci5jcmVhdGUoe1xuICAgICAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBUb29sdGlwRGlyZWN0aXZlLFxuICAgICAgICAgICAgdXNlVmFsdWU6IHRoaXMsXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgIH0pXG4gICAgKTtcbiAgICB0aGlzLl9vdmVybGF5UmVmLmF0dGFjaCh0aGlzLl9wb3J0YWwpLmluc3RhbmNlO1xuICB9O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgX292ZXJsYXk6IFNhcHBoaXJlT3ZlcmxheSxcbiAgICBwcml2YXRlIF9lbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PlxuICApIHt9XG59XG4iXX0=
|