@scion/components 17.0.0 → 18.0.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.
Files changed (32) hide show
  1. package/_scrollbar.scss +7 -0
  2. package/esm2022/dimension/dimension.directive.mjs +4 -4
  3. package/esm2022/dimension/dimension.module.mjs +4 -4
  4. package/esm2022/sashbox/element-ref.directive.mjs +3 -3
  5. package/esm2022/sashbox/sash-initializer.directive.mjs +3 -3
  6. package/esm2022/sashbox/sash.directive.mjs +4 -4
  7. package/esm2022/sashbox/sashbox.component.mjs +6 -6
  8. package/esm2022/sashbox/sashbox.module.mjs +4 -4
  9. package/esm2022/splitter/splitter.component.mjs +5 -5
  10. package/esm2022/splitter/splitter.module.mjs +4 -4
  11. package/esm2022/throbber/ellipsis-throbber/ellipsis-throbber.component.mjs +4 -4
  12. package/esm2022/throbber/ripple-throbber/ripple-throbber.component.mjs +4 -4
  13. package/esm2022/throbber/roller-throbber/roller-throbber.component.mjs +4 -4
  14. package/esm2022/throbber/spinner-throbber/spinner-throbber.component.mjs +4 -4
  15. package/esm2022/throbber/throbber.component.mjs +5 -5
  16. package/esm2022/throbber/throbber.module.mjs +4 -4
  17. package/esm2022/viewport/native-scrollbar-track-size-provider.service.mjs +4 -4
  18. package/esm2022/viewport/scrollable.directive.mjs +4 -4
  19. package/esm2022/viewport/scrollbar/scrollbar.component.mjs +5 -5
  20. package/esm2022/viewport/viewport.component.mjs +5 -5
  21. package/esm2022/viewport/viewport.module.mjs +4 -4
  22. package/fesm2022/scion-components-dimension.mjs +7 -7
  23. package/fesm2022/scion-components-dimension.mjs.map +1 -1
  24. package/fesm2022/scion-components-sashbox.mjs +18 -18
  25. package/fesm2022/scion-components-sashbox.mjs.map +1 -1
  26. package/fesm2022/scion-components-splitter.mjs +8 -8
  27. package/fesm2022/scion-components-splitter.mjs.map +1 -1
  28. package/fesm2022/scion-components-throbber.mjs +24 -24
  29. package/fesm2022/scion-components-throbber.mjs.map +1 -1
  30. package/fesm2022/scion-components-viewport.mjs +18 -18
  31. package/fesm2022/scion-components-viewport.mjs.map +1 -1
  32. package/package.json +4 -5
@@ -0,0 +1,7 @@
1
+ /**
2
+ * The package.json standard allows specifying conditional exports, not only for JavaScript files, but also for SASS files.
3
+ * They are supported by the Angular compiler, but not yet by all IDEs. Therefore, we additionally provide this entry point.
4
+ * See https://nodejs.org/api/packages.html#conditional-exports for more information about conditional SASS exports.
5
+ *
6
+ */
7
+ @forward './viewport/scrollbar';
@@ -65,10 +65,10 @@ export class SciDimensionDirective {
65
65
  ngOnDestroy() {
66
66
  this._destroy$.next();
67
67
  }
68
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: SciDimensionDirective, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive }); }
69
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.0.2", type: SciDimensionDirective, isStandalone: true, selector: "[sciDimension]", inputs: { emitOutsideAngular: "emitOutsideAngular" }, outputs: { dimensionChange: "sciDimensionChange" }, exportAs: ["sciDimension"], ngImport: i0 }); }
68
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: SciDimensionDirective, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive }); }
69
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.1", type: SciDimensionDirective, isStandalone: true, selector: "[sciDimension]", inputs: { emitOutsideAngular: "emitOutsideAngular" }, outputs: { dimensionChange: "sciDimensionChange" }, exportAs: ["sciDimension"], ngImport: i0 }); }
70
70
  }
71
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: SciDimensionDirective, decorators: [{
71
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: SciDimensionDirective, decorators: [{
72
72
  type: Directive,
73
73
  args: [{
74
74
  selector: '[sciDimension]',
@@ -81,4 +81,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImpor
81
81
  }], emitOutsideAngular: [{
82
82
  type: Input
83
83
  }] } });
84
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGltZW5zaW9uLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NjaW9uL2NvbXBvbmVudHMvZGltZW5zaW9uL3NyYy9kaW1lbnNpb24uZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7OztHQVFHO0FBRUgsT0FBTyxFQUFDLFNBQVMsRUFBYyxZQUFZLEVBQUUsS0FBSyxFQUE2QixNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDNUcsT0FBTyxFQUFDLE9BQU8sRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUM3QixPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDekMsT0FBTyxFQUFDLHVCQUF1QixFQUFhLGNBQWMsRUFBQyxNQUFNLDJCQUEyQixDQUFDOztBQUU3Rjs7Ozs7Ozs7O0dBU0c7QUFNSCxNQUFNLE9BQU8scUJBQXFCO0lBb0JoQyxZQUFZLElBQTZCLEVBQVUsT0FBZTtRQUFmLFlBQU8sR0FBUCxPQUFPLENBQVE7UUFqQjFELGNBQVMsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO1FBRXhDOztXQUVHO1FBRUksb0JBQWUsR0FBRyxJQUFJLFlBQVksRUFBZ0IsQ0FBQztRQUUxRDs7Ozs7V0FLRztRQUVJLHVCQUFrQixHQUFHLEtBQUssQ0FBQztRQUdoQyxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUM7SUFDbEMsQ0FBQztJQUVNLFFBQVE7UUFDYixJQUFJLENBQUMsd0JBQXdCLEVBQUUsQ0FBQztJQUNsQyxDQUFDO0lBRU8sd0JBQXdCO1FBQzlCLElBQUksQ0FBQyxPQUFPLENBQUMsaUJBQWlCLENBQUMsR0FBRyxFQUFFO1lBQ2xDLGNBQWMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDO2lCQUN2QixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztpQkFDL0IsU0FBUyxDQUFDLENBQUMsU0FBdUIsRUFBRSxFQUFFO2dCQUNyQyxJQUFJLElBQUksQ0FBQyxrQkFBa0IsRUFBRTtvQkFDM0IsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7aUJBQ3RDO3FCQUNJO29CQUNILElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUM7aUJBQzlEO1lBQ0gsQ0FBQyxDQUFDLENBQUM7UUFDUCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRDs7T0FFRztJQUNILElBQVcsU0FBUztRQUNsQixPQUFPLHVCQUF1QixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBRU0sV0FBVztRQUNoQixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3hCLENBQUM7OEdBcERVLHFCQUFxQjtrR0FBckIscUJBQXFCOzsyRkFBckIscUJBQXFCO2tCQUxqQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxnQkFBZ0I7b0JBQzFCLFFBQVEsRUFBRSxjQUFjO29CQUN4QixVQUFVLEVBQUUsSUFBSTtpQkFDakI7b0dBVVEsZUFBZTtzQkFEckIsTUFBTTt1QkFBQyxvQkFBb0I7Z0JBVXJCLGtCQUFrQjtzQkFEeEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTgtMjAxOSBTd2lzcyBGZWRlcmFsIFJhaWx3YXlzXG4gKlxuICogVGhpcyBwcm9ncmFtIGFuZCB0aGUgYWNjb21wYW55aW5nIG1hdGVyaWFscyBhcmUgbWFkZVxuICogYXZhaWxhYmxlIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgRWNsaXBzZSBQdWJsaWMgTGljZW5zZSAyLjBcbiAqIHdoaWNoIGlzIGF2YWlsYWJsZSBhdCBodHRwczovL3d3dy5lY2xpcHNlLm9yZy9sZWdhbC9lcGwtMi4wL1xuICpcbiAqICBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogRVBMLTIuMFxuICovXG5cbmltcG9ydCB7RGlyZWN0aXZlLCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIElucHV0LCBOZ1pvbmUsIE9uRGVzdHJveSwgT25Jbml0LCBPdXRwdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtTdWJqZWN0fSBmcm9tICdyeGpzJztcbmltcG9ydCB7dGFrZVVudGlsfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge2NhcHR1cmVFbGVtZW50RGltZW5zaW9uLCBEaW1lbnNpb24sIGZyb21EaW1lbnNpb24kfSBmcm9tICdAc2Npb24vdG9vbGtpdC9vYnNlcnZhYmxlJztcblxuLyoqXG4gKiBBbGxvd3Mgb2JzZXJ2aW5nIGNoYW5nZXMgdG8gaG9zdCBlbGVtZW50J3Mgc2l6ZS5cbiAqXG4gKiBTZWUge0BsaW5rIGZyb21EaW1lbnNpb24kfSBPYnNlcnZhYmxlIGZvciBtb3JlIGluZm9ybWF0aW9uLlxuICpcbiAqIC0tLVxuICogVXNhZ2U6XG4gKlxuICogPGRpdiBzY2lEaW1lbnNpb24gKHNjaURpbWVuc2lvbkNoYW5nZSk9XCJvbkRpbWVuc2lvbkNoYW5nZSgkZXZlbnQpXCI+PC9kaXY+XG4gKi9cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tzY2lEaW1lbnNpb25dJyxcbiAgZXhwb3J0QXM6ICdzY2lEaW1lbnNpb24nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxufSlcbmV4cG9ydCBjbGFzcyBTY2lEaW1lbnNpb25EaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfaG9zdDogSFRNTEVsZW1lbnQ7XG4gIHByaXZhdGUgX2Rlc3Ryb3kkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICAvKipcbiAgICogVXBvbiBzdWJzY3JpcHRpb24sIGl0IGVtaXRzIHRoZSBob3N0IGVsZW1lbnQncyBkaW1lbnNpb24sIGFuZCB0aGVuIGNvbnRpbnVvdXNseSBlbWl0cyB3aGVuIHRoZSBkaW1lbnNpb24gb2YgdGhlIGhvc3QgZWxlbWVudCBjaGFuZ2VzLlxuICAgKi9cbiAgQE91dHB1dCgnc2NpRGltZW5zaW9uQ2hhbmdlJykgLy8gZXNsaW50LWRpc2FibGUtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8tb3V0cHV0LXJlbmFtZVxuICBwdWJsaWMgZGltZW5zaW9uQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxTY2lEaW1lbnNpb24+KCk7XG5cbiAgLyoqXG4gICAqIENvbnRyb2xzIGlmIHRvIGVtaXQgYSBkaW1lbnNpb24gY2hhbmdlIGluc2lkZSBvciBvdXRzaWRlIG9mIHRoZSBBbmd1bGFyIHpvbmUuXG4gICAqIElmIGVtaXR0ZWQgb3V0c2lkZSBvZiB0aGUgQW5ndWxhciB6b25lIG5vIGNoYW5nZSBkZXRlY3Rpb24gY3ljbGUgaXMgdHJpZ2dlcmVkLlxuICAgKlxuICAgKiBCeSBkZWZhdWx0LCBpZiBub3Qgc3BlY2lmaWVkLCBlbWl0cyBpbnNpZGUgdGhlIEFuZ3VsYXIgem9uZS5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBlbWl0T3V0c2lkZUFuZ3VsYXIgPSBmYWxzZTtcblxuICBjb25zdHJ1Y3Rvcihob3N0OiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PiwgcHJpdmF0ZSBfbmdab25lOiBOZ1pvbmUpIHtcbiAgICB0aGlzLl9ob3N0ID0gaG9zdC5uYXRpdmVFbGVtZW50O1xuICB9XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuaW5zdGFsbERpbWVuc2lvbkxpc3RlbmVyKCk7XG4gIH1cblxuICBwcml2YXRlIGluc3RhbGxEaW1lbnNpb25MaXN0ZW5lcigpOiB2b2lkIHtcbiAgICB0aGlzLl9uZ1pvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4ge1xuICAgICAgZnJvbURpbWVuc2lvbiQodGhpcy5faG9zdClcbiAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kkKSlcbiAgICAgICAgLnN1YnNjcmliZSgoZGltZW5zaW9uOiBTY2lEaW1lbnNpb24pID0+IHtcbiAgICAgICAgICBpZiAodGhpcy5lbWl0T3V0c2lkZUFuZ3VsYXIpIHtcbiAgICAgICAgICAgIHRoaXMuZGltZW5zaW9uQ2hhbmdlLmVtaXQoZGltZW5zaW9uKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICB0aGlzLl9uZ1pvbmUucnVuKCgpID0+IHRoaXMuZGltZW5zaW9uQ2hhbmdlLmVtaXQoZGltZW5zaW9uKSk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSBjdXJyZW50IGRpbWVuc2lvbiBvZiBpdHMgaG9zdCBlbGVtZW50LlxuICAgKi9cbiAgcHVibGljIGdldCBkaW1lbnNpb24oKTogU2NpRGltZW5zaW9uIHtcbiAgICByZXR1cm4gY2FwdHVyZUVsZW1lbnREaW1lbnNpb24odGhpcy5faG9zdCk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fZGVzdHJveSQubmV4dCgpO1xuICB9XG59XG5cbi8qKlxuICogUmVwcmVzZW50cyB0aGUgZGltZW5zaW9uIG9mIGFuIGVsZW1lbnQuXG4gKi9cbmV4cG9ydCB0eXBlIFNjaURpbWVuc2lvbiA9IERpbWVuc2lvbjtcbiJdfQ==
84
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGltZW5zaW9uLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NjaW9uL2NvbXBvbmVudHMvZGltZW5zaW9uL3NyYy9kaW1lbnNpb24uZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7OztHQVFHO0FBRUgsT0FBTyxFQUFDLFNBQVMsRUFBYyxZQUFZLEVBQUUsS0FBSyxFQUE2QixNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDNUcsT0FBTyxFQUFDLE9BQU8sRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUM3QixPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDekMsT0FBTyxFQUFDLHVCQUF1QixFQUFhLGNBQWMsRUFBQyxNQUFNLDJCQUEyQixDQUFDOztBQUU3Rjs7Ozs7Ozs7O0dBU0c7QUFNSCxNQUFNLE9BQU8scUJBQXFCO0lBb0JoQyxZQUFZLElBQTZCLEVBQVUsT0FBZTtRQUFmLFlBQU8sR0FBUCxPQUFPLENBQVE7UUFqQjFELGNBQVMsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO1FBRXhDOztXQUVHO1FBRUksb0JBQWUsR0FBRyxJQUFJLFlBQVksRUFBZ0IsQ0FBQztRQUUxRDs7Ozs7V0FLRztRQUVJLHVCQUFrQixHQUFHLEtBQUssQ0FBQztRQUdoQyxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUM7SUFDbEMsQ0FBQztJQUVNLFFBQVE7UUFDYixJQUFJLENBQUMsd0JBQXdCLEVBQUUsQ0FBQztJQUNsQyxDQUFDO0lBRU8sd0JBQXdCO1FBQzlCLElBQUksQ0FBQyxPQUFPLENBQUMsaUJBQWlCLENBQUMsR0FBRyxFQUFFO1lBQ2xDLGNBQWMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDO2lCQUN2QixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztpQkFDL0IsU0FBUyxDQUFDLENBQUMsU0FBdUIsRUFBRSxFQUFFO2dCQUNyQyxJQUFJLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO29CQUM1QixJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztnQkFDdkMsQ0FBQztxQkFDSSxDQUFDO29CQUNKLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUM7Z0JBQy9ELENBQUM7WUFDSCxDQUFDLENBQUMsQ0FBQztRQUNQLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFBVyxTQUFTO1FBQ2xCLE9BQU8sdUJBQXVCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFFTSxXQUFXO1FBQ2hCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDeEIsQ0FBQzs4R0FwRFUscUJBQXFCO2tHQUFyQixxQkFBcUI7OzJGQUFyQixxQkFBcUI7a0JBTGpDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGdCQUFnQjtvQkFDMUIsUUFBUSxFQUFFLGNBQWM7b0JBQ3hCLFVBQVUsRUFBRSxJQUFJO2lCQUNqQjtvR0FVUSxlQUFlO3NCQURyQixNQUFNO3VCQUFDLG9CQUFvQjtnQkFVckIsa0JBQWtCO3NCQUR4QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoYykgMjAxOC0yMDE5IFN3aXNzIEZlZGVyYWwgUmFpbHdheXNcbiAqXG4gKiBUaGlzIHByb2dyYW0gYW5kIHRoZSBhY2NvbXBhbnlpbmcgbWF0ZXJpYWxzIGFyZSBtYWRlXG4gKiBhdmFpbGFibGUgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBFY2xpcHNlIFB1YmxpYyBMaWNlbnNlIDIuMFxuICogd2hpY2ggaXMgYXZhaWxhYmxlIGF0IGh0dHBzOi8vd3d3LmVjbGlwc2Uub3JnL2xlZ2FsL2VwbC0yLjAvXG4gKlxuICogIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBFUEwtMi4wXG4gKi9cblxuaW1wb3J0IHtEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE5nWm9uZSwgT25EZXN0cm95LCBPbkluaXQsIE91dHB1dH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1N1YmplY3R9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHt0YWtlVW50aWx9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7Y2FwdHVyZUVsZW1lbnREaW1lbnNpb24sIERpbWVuc2lvbiwgZnJvbURpbWVuc2lvbiR9IGZyb20gJ0BzY2lvbi90b29sa2l0L29ic2VydmFibGUnO1xuXG4vKipcbiAqIEFsbG93cyBvYnNlcnZpbmcgY2hhbmdlcyB0byBob3N0IGVsZW1lbnQncyBzaXplLlxuICpcbiAqIFNlZSB7QGxpbmsgZnJvbURpbWVuc2lvbiR9IE9ic2VydmFibGUgZm9yIG1vcmUgaW5mb3JtYXRpb24uXG4gKlxuICogLS0tXG4gKiBVc2FnZTpcbiAqXG4gKiA8ZGl2IHNjaURpbWVuc2lvbiAoc2NpRGltZW5zaW9uQ2hhbmdlKT1cIm9uRGltZW5zaW9uQ2hhbmdlKCRldmVudClcIj48L2Rpdj5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW3NjaURpbWVuc2lvbl0nLFxuICBleHBvcnRBczogJ3NjaURpbWVuc2lvbicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG59KVxuZXhwb3J0IGNsYXNzIFNjaURpbWVuc2lvbkRpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9ob3N0OiBIVE1MRWxlbWVudDtcbiAgcHJpdmF0ZSBfZGVzdHJveSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIC8qKlxuICAgKiBVcG9uIHN1YnNjcmlwdGlvbiwgaXQgZW1pdHMgdGhlIGhvc3QgZWxlbWVudCdzIGRpbWVuc2lvbiwgYW5kIHRoZW4gY29udGludW91c2x5IGVtaXRzIHdoZW4gdGhlIGRpbWVuc2lvbiBvZiB0aGUgaG9zdCBlbGVtZW50IGNoYW5nZXMuXG4gICAqL1xuICBAT3V0cHV0KCdzY2lEaW1lbnNpb25DaGFuZ2UnKSAvLyBlc2xpbnQtZGlzYWJsZS1saW5lIEBhbmd1bGFyLWVzbGludC9uby1vdXRwdXQtcmVuYW1lXG4gIHB1YmxpYyBkaW1lbnNpb25DaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPFNjaURpbWVuc2lvbj4oKTtcblxuICAvKipcbiAgICogQ29udHJvbHMgaWYgdG8gZW1pdCBhIGRpbWVuc2lvbiBjaGFuZ2UgaW5zaWRlIG9yIG91dHNpZGUgb2YgdGhlIEFuZ3VsYXIgem9uZS5cbiAgICogSWYgZW1pdHRlZCBvdXRzaWRlIG9mIHRoZSBBbmd1bGFyIHpvbmUgbm8gY2hhbmdlIGRldGVjdGlvbiBjeWNsZSBpcyB0cmlnZ2VyZWQuXG4gICAqXG4gICAqIEJ5IGRlZmF1bHQsIGlmIG5vdCBzcGVjaWZpZWQsIGVtaXRzIGluc2lkZSB0aGUgQW5ndWxhciB6b25lLlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIGVtaXRPdXRzaWRlQW5ndWxhciA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKGhvc3Q6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LCBwcml2YXRlIF9uZ1pvbmU6IE5nWm9uZSkge1xuICAgIHRoaXMuX2hvc3QgPSBob3N0Lm5hdGl2ZUVsZW1lbnQ7XG4gIH1cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5pbnN0YWxsRGltZW5zaW9uTGlzdGVuZXIoKTtcbiAgfVxuXG4gIHByaXZhdGUgaW5zdGFsbERpbWVuc2lvbkxpc3RlbmVyKCk6IHZvaWQge1xuICAgIHRoaXMuX25nWm9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB7XG4gICAgICBmcm9tRGltZW5zaW9uJCh0aGlzLl9ob3N0KVxuICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5fZGVzdHJveSQpKVxuICAgICAgICAuc3Vic2NyaWJlKChkaW1lbnNpb246IFNjaURpbWVuc2lvbikgPT4ge1xuICAgICAgICAgIGlmICh0aGlzLmVtaXRPdXRzaWRlQW5ndWxhcikge1xuICAgICAgICAgICAgdGhpcy5kaW1lbnNpb25DaGFuZ2UuZW1pdChkaW1lbnNpb24pO1xuICAgICAgICAgIH1cbiAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuX25nWm9uZS5ydW4oKCkgPT4gdGhpcy5kaW1lbnNpb25DaGFuZ2UuZW1pdChkaW1lbnNpb24pKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIGN1cnJlbnQgZGltZW5zaW9uIG9mIGl0cyBob3N0IGVsZW1lbnQuXG4gICAqL1xuICBwdWJsaWMgZ2V0IGRpbWVuc2lvbigpOiBTY2lEaW1lbnNpb24ge1xuICAgIHJldHVybiBjYXB0dXJlRWxlbWVudERpbWVuc2lvbih0aGlzLl9ob3N0KTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLl9kZXN0cm95JC5uZXh0KCk7XG4gIH1cbn1cblxuLyoqXG4gKiBSZXByZXNlbnRzIHRoZSBkaW1lbnNpb24gb2YgYW4gZWxlbWVudC5cbiAqL1xuZXhwb3J0IHR5cGUgU2NpRGltZW5zaW9uID0gRGltZW5zaW9uO1xuIl19
@@ -16,11 +16,11 @@ import * as i0 from "@angular/core";
16
16
  * @see fromDimension$
17
17
  */
18
18
  export class SciDimensionModule {
19
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: SciDimensionModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
20
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.2", ngImport: i0, type: SciDimensionModule, imports: [SciDimensionDirective], exports: [SciDimensionDirective] }); }
21
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: SciDimensionModule }); }
19
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: SciDimensionModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
20
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.0.1", ngImport: i0, type: SciDimensionModule, imports: [SciDimensionDirective], exports: [SciDimensionDirective] }); }
21
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: SciDimensionModule }); }
22
22
  }
23
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: SciDimensionModule, decorators: [{
23
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: SciDimensionModule, decorators: [{
24
24
  type: NgModule,
25
25
  args: [{
26
26
  imports: [
@@ -17,10 +17,10 @@ export class SciElementRefDirective {
17
17
  this.host = host;
18
18
  this.nativeElement = host.nativeElement;
19
19
  }
20
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: SciElementRefDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
21
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.0.2", type: SciElementRefDirective, isStandalone: true, selector: "[sciElementRef]", exportAs: ["sciElementRef"], ngImport: i0 }); }
20
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: SciElementRefDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
21
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.1", type: SciElementRefDirective, isStandalone: true, selector: "[sciElementRef]", exportAs: ["sciElementRef"], ngImport: i0 }); }
22
22
  }
23
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: SciElementRefDirective, decorators: [{
23
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: SciElementRefDirective, decorators: [{
24
24
  type: Directive,
25
25
  args: [{
26
26
  selector: '[sciElementRef]',
@@ -19,10 +19,10 @@ export class SciSashInitializerDirective {
19
19
  ngOnChanges(changes) {
20
20
  this.sash.element = this._host.nativeElement;
21
21
  }
22
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: SciSashInitializerDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
23
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.0.2", type: SciSashInitializerDirective, isStandalone: true, selector: "div[sciSashInitializer].sash", inputs: { sash: ["sciSashInitializer", "sash"] }, usesOnChanges: true, ngImport: i0 }); }
22
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: SciSashInitializerDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
23
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.1", type: SciSashInitializerDirective, isStandalone: true, selector: "div[sciSashInitializer].sash", inputs: { sash: ["sciSashInitializer", "sash"] }, usesOnChanges: true, ngImport: i0 }); }
24
24
  }
25
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: SciSashInitializerDirective, decorators: [{
25
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: SciSashInitializerDirective, decorators: [{
26
26
  type: Directive,
27
27
  args: [{
28
28
  selector: 'div[sciSashInitializer].sash',
@@ -127,10 +127,10 @@ export class SciSashDirective {
127
127
  }
128
128
  return flexGrow / flexGrowSum;
129
129
  }
130
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: SciSashDirective, deps: [{ token: i0.TemplateRef }, { token: i1.SciSashBoxAccessor }], target: i0.ɵɵFactoryTarget.Directive }); }
131
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.0.2", type: SciSashDirective, isStandalone: true, selector: "ng-template[sciSash]", inputs: { size: "size", minSize: "minSize" }, exportAs: ["sciSash"], usesOnChanges: true, ngImport: i0 }); }
130
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: SciSashDirective, deps: [{ token: i0.TemplateRef }, { token: i1.SciSashBoxAccessor }], target: i0.ɵɵFactoryTarget.Directive }); }
131
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.1", type: SciSashDirective, isStandalone: true, selector: "ng-template[sciSash]", inputs: { size: "size", minSize: "minSize" }, exportAs: ["sciSash"], usesOnChanges: true, ngImport: i0 }); }
132
132
  }
133
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: SciSashDirective, decorators: [{
133
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: SciSashDirective, decorators: [{
134
134
  type: Directive,
135
135
  args: [{
136
136
  selector: 'ng-template[sciSash]',
@@ -142,4 +142,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImpor
142
142
  }], minSize: [{
143
143
  type: Input
144
144
  }] } });
145
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2FzaC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zY2lvbi9jb21wb25lbnRzL3Nhc2hib3gvc3JjL3Nhc2guZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7OztHQVFHO0FBRUgsT0FBTyxFQUFDLFNBQVMsRUFBRSxLQUFLLEVBQWdELE1BQU0sZUFBZSxDQUFDO0FBRTlGLE9BQU8sRUFBQyxlQUFlLEVBQUUsS0FBSyxFQUFhLE1BQU0sTUFBTSxDQUFDO0FBQ3hELE9BQU8sRUFBQyxHQUFHLEVBQUUsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7OztBQUU5Qzs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBa0JHO0FBTUgsTUFBTSxPQUFPLGdCQUFnQjtJQUszQjs7Ozs7O09BTUc7SUFDSCxJQUNXLElBQUksQ0FBQyxJQUF3QztRQUN0RCxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksSUFBSSxHQUFHLENBQUM7SUFDM0IsQ0FBQztJQUVELElBQVcsSUFBSTtRQUNiLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztJQUNwQixDQUFDO0lBZ0JEOztPQUVHO0lBQ0gsSUFBVyxRQUFRLENBQUMsUUFBZ0I7UUFDbEMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFBVyxRQUFRO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUM7SUFDL0IsQ0FBQztJQW1CRCxZQUE0QixZQUErQixFQUFVLGdCQUFvQztRQUE3RSxpQkFBWSxHQUFaLFlBQVksQ0FBbUI7UUFBVSxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQW9CO1FBaEVqRyxVQUFLLEdBQW9CLEdBQUcsQ0FBQztRQUM3QixlQUFVLEdBQUcsSUFBSSxlQUFlLENBQVMsQ0FBQyxDQUFDLENBQUM7UUFnRWxELElBQUksQ0FB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U3dpc3MgRmVkZXJhbCBSYWlsd2F5c1xuICpcbiAqIFRoaXMgcHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRlcmlhbHMgYXJlIG1hZGVcbiAqIGF2YWlsYWJsZSB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEVjbGlwc2UgUHVibGljIExpY2Vuc2UgMi4wXG4gKiB3aGljaCBpcyBhdmFpbGFibGUgYXQgaHR0cHM6Ly93d3cuZWNsaXBzZS5vcmcvbGVnYWwvZXBsLTIuMC9cbiAqXG4gKiAgU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEVQTC0yLjBcbiAqL1xuXG5pbXBvcnQge0RpcmVjdGl2ZSwgSW5wdXQsIE9uQ2hhbmdlcywgT25Jbml0LCBTaW1wbGVDaGFuZ2VzLCBUZW1wbGF0ZVJlZn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1NjaVNhc2hCb3hBY2Nlc3Nvcn0gZnJvbSAnLi9zYXNoYm94LWFjY2Vzc29yJztcbmltcG9ydCB7QmVoYXZpb3JTdWJqZWN0LCBtZXJnZSwgT2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XG5pbXBvcnQge21hcCwgc3dpdGNoTWFwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbi8qKlxuICogVXNlIHRoaXMgZGlyZWN0aXZlIHRvIG1vZGVsIGEgc2FzaCBmb3Ige0BsaW5rIFNjaVNhc2hib3hDb21wb25lbnR9LlxuICogVGhlIGhvc3QgZWxlbWVudCBvZiB0aGlzIG1vZGVsbGluZyBkaXJlY3RpdmUgbXVzdCBiZSBhIDxuZy10ZW1wbGF0ZT4gd2hpY2ggaXMgdXNlZCBhcyBzYXNoIHRlbXBsYXRlLlxuICpcbiAqXG4gKiAjIyMgVXNhZ2U6XG4gKlxuICogPHNjaS1zYXNoYm94IGRpcmVjdGlvbj1cInJvd1wiPlxuICogICA8IS0tIGZpeGVkIHNpemUgc2FzaCAtLT5cbiAqICAgPG5nLXRlbXBsYXRlIHNjaVNhc2ggc2l6ZT1cIjIwMHB4XCI+XG4gKiAgICAgLi4uXG4gKiAgIDwvbmctdGVtcGxhdGU+XG4gKlxuICogICA8IS0tIHNhc2ggd2hpY2ggdGFrZXMgdGhlIHJlbWFpbmluZyBzcGFjZSAtLT5cbiAqICAgPG5nLXRlbXBsYXRlIHNjaVNhc2g+XG4gKiAgICAgLi4uXG4gKiAgIDwvbmctdGVtcGxhdGU+XG4gKiA8L3NjaS1zYXNoYm94PlxuICovXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICduZy10ZW1wbGF0ZVtzY2lTYXNoXScsXG4gIGV4cG9ydEFzOiAnc2NpU2FzaCcsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG59KVxuZXhwb3J0IGNsYXNzIFNjaVNhc2hEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcyB7XG5cbiAgcHJpdmF0ZSBfc2l6ZTogc3RyaW5nIHwgbnVtYmVyID0gJzEnO1xuICBwcml2YXRlIF9mbGV4R3JvdyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PG51bWJlcj4oMCk7XG5cbiAgLyoqXG4gICAqIFNwZWNpZmllcyB0aGUgc2FzaCBzaXplLCBlaXRoZXIgYXMgZml4ZWQgc2l6ZSB3aXRoIGFuIGV4cGxpY2l0IHVuaXQsXG4gICAqIG9yIGFzIGEgdW5pdGxlc3MgcHJvcG9ydGlvbiB0byBkaXN0aWJ1dGUgcmVtYWluaW5nIHNwYWNlLiBBIHByb3BvcnRpb25hbFxuICAgKiBzYXNoIGhhcyB0aGUgYWJpbGl0eSB0byBncm93IG9yIHNocmluayBpZiBuZWNlc3NhcnksIGFuZCBtdXN0IGJlID49IDEuXG4gICAqXG4gICAqIElmIG5vdCBzZXQsIHJlbWFpbmluZyBzcGFjZSBpcyBkaXN0cmlidXRlZCBlcXVhbGx5LlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBzaXplKHNpemU6IHN0cmluZyB8IG51bWJlciB8IG51bGwgfCB1bmRlZmluZWQpIHtcbiAgICB0aGlzLl9zaXplID0gc2l6ZSA/PyAnMSc7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHNpemUoKTogc3RyaW5nIHwgbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5fc2l6ZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgdGhlIG1pbmltYWwgc2FzaCBzaXplIGluIHBpeGVsIG9yIHBlcmNlbnQuXG4gICAqIFRoZSBtaW4tc2l6ZSBwcmV2ZW50cyB0aGUgdXNlciBmcm9tIHNocmlua2luZyB0aGUgc2FzaCBiZWxvdyB0aGlzIG1pbmltYWwgc2l6ZS5cbiAgICpcbiAgICogSWYgdGhlIHVuaXQgaXMgb21pdHRlZCwgdGhlIHZhbHVlIGlzIGludGVycHJldGVkIGFzIGEgcGl4ZWwgdmFsdWUuXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgbWluU2l6ZT86IHN0cmluZyB8IG51bWJlciB8IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogQGludGVybmFsXG4gICAqL1xuICBwdWJsaWMgZWxlbWVudCE6IEhUTUxFbGVtZW50O1xuXG4gIC8qKlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIHB1YmxpYyBzZXQgZmxleEdyb3coZmxleEdyb3c6IG51bWJlcikge1xuICAgIHRoaXMuX2ZsZXhHcm93JC5uZXh0KGZsZXhHcm93KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIHB1YmxpYyBnZXQgZmxleEdyb3coKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5fZmxleEdyb3ckLnZhbHVlO1xuICB9XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgcHVibGljIGZsZXhTaHJpbmshOiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgcHVibGljIGZsZXhCYXNpcyE6IHN0cmluZztcblxuICAvKipcbiAgICogTm9ybWFsaXplZCBmbGV4LWdyb3cgcHJvcG9ydGlvbiBvZiB0aGlzIHNhc2gsIHdoaWNoIGlzIGEgdmFsdWUgPj0gMS5cbiAgICpcbiAgICogQGludGVybmFsXG4gICAqL1xuICBwdWJsaWMgZmxleEdyb3dOb3JtYWxpemVkJDogT2JzZXJ2YWJsZTxudW1iZXI+O1xuXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyByZWFkb25seSBzYXNoVGVtcGxhdGU6IFRlbXBsYXRlUmVmPHZvaWQ+LCBwcml2YXRlIF9zYXNoQm94QWNjZXNzb3I6IFNjaVNhc2hCb3hBY2Nlc3Nvcikge1xuICAgIHRoaXMuZmxleEdyb3dOb3JtYWxpemVkJCA9IHRoaXMuX3Nhc2hCb3hBY2Nlc3Nvci5zYXNoZXMkXG4gICAgICAucGlwZShcbiAgICAgICAgc3dpdGNoTWFwKHNhc2hlcyA9PiBtZXJnZSguLi5zYXNoZXMubWFwKHNhc2ggPT4gc2FzaC5fZmxleEdyb3ckKSkpLFxuICAgICAgICBtYXAoKCkgPT4gdGhpcy5ub3JtYWxpemVGbGV4R3Jvdyh0aGlzLmZsZXhHcm93KSksXG4gICAgICApO1xuICB9XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuc2V0RmxleEl0ZW1Qcm9wZXJ0aWVzKCk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIHRoaXMuc2V0RmxleEl0ZW1Qcm9wZXJ0aWVzKCk7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyBpZiB0aGlzIHNhc2ggaGFzIGEgZml4ZWQgc2l6ZSwgbWVhbmluZyB0aGF0IGl0IGhhcyBub3QgdGhlIGFiaWxpdHkgdG8gZ3JvdyBvciBzaHJpbmsgaWYgbmVjZXNzYXJ5LlxuICAgKlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIHB1YmxpYyBnZXQgaXNGaXhlZFNpemUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIE51bWJlci5pc05hTigrdGhpcy5zaXplKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSBlZmZlY3RpdmUgc2FzaCBzaXplIGFzIHJlbmRlcmVkIGluIHRoZSBET00uXG4gICAqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgcHVibGljIGdldCBjb21wdXRlZFNpemUoKTogbnVtYmVyIHtcbiAgICAvLyBOb3RlOiBVc2UgYGJvdW5kaW5nQ2xpZW50UmVjdGAgdG8gZ2V0IHRoZSBmcmFjdGlvbmFsIHNpemUuXG4gICAgLy8gc2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0FQSS9FbGVtZW50L2NsaWVudFdpZHRoXG4gICAgcmV0dXJuIHRoaXMuX3Nhc2hCb3hBY2Nlc3Nvci5kaXJlY3Rpb24gPT09ICdyb3cnID8gdGhpcy5lbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLndpZHRoIDogdGhpcy5lbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLmhlaWdodDtcbiAgfVxuXG4gIC8qKlxuICAgKiBDb21wdXRlcyBhbmQgc2V0cyB0aGUgZmxleCBpdGVtIHByb3BlcnRpZXMgYmFzZWQgb24gdGhlIG1vZGVsbGVkIHNpemUuXG4gICAqL1xuICBwcml2YXRlIHNldEZsZXhJdGVtUHJvcGVydGllcygpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5pc0ZpeGVkU2l6ZSkge1xuICAgICAgLy8gZml4ZWQtc2l6ZWQgc2FzaFxuICAgICAgdGhpcy5mbGV4R3JvdyA9IDA7XG4gICAgICB0aGlzLmZsZXhTaHJpbmsgPSAwO1xuICAgICAgdGhpcy5mbGV4QmFzaXMgPSBgJHt0aGlzLnNpemV9YDtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAvLyByZW1haW5pbmcgc3BhY2UgaXMgZGlzdHJpYnV0ZWQgYWNjb3JkaW5nIHRvIGdpdmVuIHByb3BvcnRpb25cbiAgICAgIGNvbnN0IHByb3BvcnRpb24gPSArdGhpcy5zaXplO1xuICAgICAgaWYgKHByb3BvcnRpb24gPCAxKSB7XG4gICAgICAgIHRocm93IEVycm9yKGBbSWxsZWdhbFNhc2hTaXplRXJyb3JdIFRoZSBwcm9wb3J0aW9uIGZvciBmbGV4aWJsZSBzaXplZCBzYXNoZXMgbXVzdCBiZSA+PTEgW3NpemU9JHt0aGlzLnNpemV9XWApO1xuICAgICAgfVxuXG4gICAgICB0aGlzLmZsZXhHcm93ID0gcHJvcG9ydGlvbjtcbiAgICAgIHRoaXMuZmxleFNocmluayA9IDE7XG4gICAgICB0aGlzLmZsZXhCYXNpcyA9ICcwJztcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQ29tcHV0ZXMgdGhlIG5vcm1hbGl6ZWQgZmxleC1ncm93IHByb3BvcnRpb24gb2YgdGhlIGdpdmVuIHNhc2gsIHdoaWNoIGlzIGEgdmFsdWUgPj0gMS5cbiAgICpcbiAgICogSWYgdGhlIHN1bSBvZiBhbGwgZmxleC1ncm93IHByb3BvcnRpb25zIHdvdWxkIGJlIGxlc3MgdGhhbiAxLCB0aGVuLCB0aGUgc2FzaGVzIHdvdWxkIG5vdCBmaWxsIHRoZSBlbnRpcmUgc2FzaC1ib3ggc3BhY2UuXG4gICAqIFdpdGhvdXQgbm9ybWFsaXphdGlvbiBpbiBwbGFjZSwgZS5nLiwgdGhpcyBjb3VsZCBoYXBwZW4gd2hlbiByZW1vdmluZyBhIHNhc2guXG4gICAqL1xuICBwcml2YXRlIG5vcm1hbGl6ZUZsZXhHcm93KGZsZXhHcm93OiBudW1iZXIpOiBudW1iZXIge1xuICAgIGlmIChmbGV4R3JvdyA9PT0gMCkge1xuICAgICAgcmV0dXJuIDA7XG4gICAgfVxuXG4gICAgY29uc3Qgc2FzaGVzID0gdGhpcy5fc2FzaEJveEFjY2Vzc29yLnNhc2hlcztcbiAgICBjb25zdCBmbGV4R3Jvd1N1bSA9IHNhc2hlcy5yZWR1Y2UoKHN1bSwgc2FzaCkgPT4gc3VtICsgc2FzaC5mbGV4R3JvdywgMCk7XG4gICAgaWYgKGZsZXhHcm93U3VtID09PSAwKSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG4gICAgcmV0dXJuIGZsZXhHcm93IC8gZmxleEdyb3dTdW07XG4gIH1cbn1cbiJdfQ==
145
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2FzaC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zY2lvbi9jb21wb25lbnRzL3Nhc2hib3gvc3JjL3Nhc2guZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7OztHQVFHO0FBRUgsT0FBTyxFQUFDLFNBQVMsRUFBRSxLQUFLLEVBQWdELE1BQU0sZUFBZSxDQUFDO0FBRTlGLE9BQU8sRUFBQyxlQUFlLEVBQUUsS0FBSyxFQUFhLE1BQU0sTUFBTSxDQUFDO0FBQ3hELE9BQU8sRUFBQyxHQUFHLEVBQUUsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7OztBQUU5Qzs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBa0JHO0FBTUgsTUFBTSxPQUFPLGdCQUFnQjtJQUszQjs7Ozs7O09BTUc7SUFDSCxJQUNXLElBQUksQ0FBQyxJQUF3QztRQUN0RCxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksSUFBSSxHQUFHLENBQUM7SUFDM0IsQ0FBQztJQUVELElBQVcsSUFBSTtRQUNiLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztJQUNwQixDQUFDO0lBZ0JEOztPQUVHO0lBQ0gsSUFBVyxRQUFRLENBQUMsUUFBZ0I7UUFDbEMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFBVyxRQUFRO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUM7SUFDL0IsQ0FBQztJQW1CRCxZQUE0QixZQUErQixFQUFVLGdCQUFvQztRQUE3RSxpQkFBWSxHQUFaLFlBQVksQ0FBbUI7UUFBVSxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQW9CO1FBaEVqRyxVQUFLLEdBQW9CLEdBQUcsQ0FBQztRQUM3QixlQUFVLEdBQUcsSUFBSSxlQUFlLENBQVMsQ0FBQyxDQUFDLENBQUM7UUFnRWxELElBQUksQ0FB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InNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTgtMjAxOSBTd2lzcyBGZWRlcmFsIFJhaWx3YXlzXG4gKlxuICogVGhpcyBwcm9ncmFtIGFuZCB0aGUgYWNjb21wYW55aW5nIG1hdGVyaWFscyBhcmUgbWFkZVxuICogYXZhaWxhYmxlIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgRWNsaXBzZSBQdWJsaWMgTGljZW5zZSAyLjBcbiAqIHdoaWNoIGlzIGF2YWlsYWJsZSBhdCBodHRwczovL3d3dy5lY2xpcHNlLm9yZy9sZWdhbC9lcGwtMi4wL1xuICpcbiAqICBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogRVBMLTIuMFxuICovXG5cbmltcG9ydCB7RGlyZWN0aXZlLCBJbnB1dCwgT25DaGFuZ2VzLCBPbkluaXQsIFNpbXBsZUNoYW5nZXMsIFRlbXBsYXRlUmVmfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7U2NpU2FzaEJveEFjY2Vzc29yfSBmcm9tICcuL3Nhc2hib3gtYWNjZXNzb3InO1xuaW1wb3J0IHtCZWhhdmlvclN1YmplY3QsIG1lcmdlLCBPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7bWFwLCBzd2l0Y2hNYXB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuLyoqXG4gKiBVc2UgdGhpcyBkaXJlY3RpdmUgdG8gbW9kZWwgYSBzYXNoIGZvciB7QGxpbmsgU2NpU2FzaGJveENvbXBvbmVudH0uXG4gKiBUaGUgaG9zdCBlbGVtZW50IG9mIHRoaXMgbW9kZWxsaW5nIGRpcmVjdGl2ZSBtdXN0IGJlIGEgPG5nLXRlbXBsYXRlPiB3aGljaCBpcyB1c2VkIGFzIHNhc2ggdGVtcGxhdGUuXG4gKlxuICpcbiAqICMjIyBVc2FnZTpcbiAqXG4gKiA8c2NpLXNhc2hib3ggZGlyZWN0aW9uPVwicm93XCI+XG4gKiAgIDwhLS0gZml4ZWQgc2l6ZSBzYXNoIC0tPlxuICogICA8bmctdGVtcGxhdGUgc2NpU2FzaCBzaXplPVwiMjAwcHhcIj5cbiAqICAgICAuLi5cbiAqICAgPC9uZy10ZW1wbGF0ZT5cbiAqXG4gKiAgIDwhLS0gc2FzaCB3aGljaCB0YWtlcyB0aGUgcmVtYWluaW5nIHNwYWNlIC0tPlxuICogICA8bmctdGVtcGxhdGUgc2NpU2FzaD5cbiAqICAgICAuLi5cbiAqICAgPC9uZy10ZW1wbGF0ZT5cbiAqIDwvc2NpLXNhc2hib3g+XG4gKi9cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ25nLXRlbXBsYXRlW3NjaVNhc2hdJyxcbiAgZXhwb3J0QXM6ICdzY2lTYXNoJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbn0pXG5leHBvcnQgY2xhc3MgU2NpU2FzaERpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcblxuICBwcml2YXRlIF9zaXplOiBzdHJpbmcgfCBudW1iZXIgPSAnMSc7XG4gIHByaXZhdGUgX2ZsZXhHcm93JCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8bnVtYmVyPigwKTtcblxuICAvKipcbiAgICogU3BlY2lmaWVzIHRoZSBzYXNoIHNpemUsIGVpdGhlciBhcyBmaXhlZCBzaXplIHdpdGggYW4gZXhwbGljaXQgdW5pdCxcbiAgICogb3IgYXMgYSB1bml0bGVzcyBwcm9wb3J0aW9uIHRvIGRpc3RpYnV0ZSByZW1haW5pbmcgc3BhY2UuIEEgcHJvcG9ydGlvbmFsXG4gICAqIHNhc2ggaGFzIHRoZSBhYmlsaXR5IHRvIGdyb3cgb3Igc2hyaW5rIGlmIG5lY2Vzc2FyeSwgYW5kIG11c3QgYmUgPj0gMS5cbiAgICpcbiAgICogSWYgbm90IHNldCwgcmVtYWluaW5nIHNwYWNlIGlzIGRpc3RyaWJ1dGVkIGVxdWFsbHkuXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IHNpemUoc2l6ZTogc3RyaW5nIHwgbnVtYmVyIHwgbnVsbCB8IHVuZGVmaW5lZCkge1xuICAgIHRoaXMuX3NpemUgPSBzaXplID8/ICcxJztcbiAgfVxuXG4gIHB1YmxpYyBnZXQgc2l6ZSgpOiBzdHJpbmcgfCBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLl9zaXplO1xuICB9XG5cbiAgLyoqXG4gICAqIFNwZWNpZmllcyB0aGUgbWluaW1hbCBzYXNoIHNpemUgaW4gcGl4ZWwgb3IgcGVyY2VudC5cbiAgICogVGhlIG1pbi1zaXplIHByZXZlbnRzIHRoZSB1c2VyIGZyb20gc2hyaW5raW5nIHRoZSBzYXNoIGJlbG93IHRoaXMgbWluaW1hbCBzaXplLlxuICAgKlxuICAgKiBJZiB0aGUgdW5pdCBpcyBvbWl0dGVkLCB0aGUgdmFsdWUgaXMgaW50ZXJwcmV0ZWQgYXMgYSBwaXhlbCB2YWx1ZS5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBtaW5TaXplPzogc3RyaW5nIHwgbnVtYmVyIHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIHB1YmxpYyBlbGVtZW50ITogSFRNTEVsZW1lbnQ7XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgcHVibGljIHNldCBmbGV4R3JvdyhmbGV4R3JvdzogbnVtYmVyKSB7XG4gICAgdGhpcy5fZmxleEdyb3ckLm5leHQoZmxleEdyb3cpO1xuICB9XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgcHVibGljIGdldCBmbGV4R3JvdygpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLl9mbGV4R3JvdyQudmFsdWU7XG4gIH1cblxuICAvKipcbiAgICogQGludGVybmFsXG4gICAqL1xuICBwdWJsaWMgZmxleFNocmluayE6IG51bWJlcjtcblxuICAvKipcbiAgICogQGludGVybmFsXG4gICAqL1xuICBwdWJsaWMgZmxleEJhc2lzITogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBOb3JtYWxpemVkIGZsZXgtZ3JvdyBwcm9wb3J0aW9uIG9mIHRoaXMgc2FzaCwgd2hpY2ggaXMgYSB2YWx1ZSA+PSAxLlxuICAgKlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIHB1YmxpYyBmbGV4R3Jvd05vcm1hbGl6ZWQkOiBPYnNlcnZhYmxlPG51bWJlcj47XG5cbiAgY29uc3RydWN0b3IocHVibGljIHJlYWRvbmx5IHNhc2hUZW1wbGF0ZTogVGVtcGxhdGVSZWY8dm9pZD4sIHByaXZhdGUgX3Nhc2hCb3hBY2Nlc3NvcjogU2NpU2FzaEJveEFjY2Vzc29yKSB7XG4gICAgdGhpcy5mbGV4R3Jvd05vcm1hbGl6ZWQkID0gdGhpcy5fc2FzaEJveEFjY2Vzc29yLnNhc2hlcyRcbiAgICAgIC5waXBlKFxuICAgICAgICBzd2l0Y2hNYXAoc2FzaGVzID0+IG1lcmdlKC4uLnNhc2hlcy5tYXAoc2FzaCA9PiBzYXNoLl9mbGV4R3JvdyQpKSksXG4gICAgICAgIG1hcCgoKSA9PiB0aGlzLm5vcm1hbGl6ZUZsZXhHcm93KHRoaXMuZmxleEdyb3cpKSxcbiAgICAgICk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5zZXRGbGV4SXRlbVByb3BlcnRpZXMoKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgdGhpcy5zZXRGbGV4SXRlbVByb3BlcnRpZXMoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIGlmIHRoaXMgc2FzaCBoYXMgYSBmaXhlZCBzaXplLCBtZWFuaW5nIHRoYXQgaXQgaGFzIG5vdCB0aGUgYWJpbGl0eSB0byBncm93IG9yIHNocmluayBpZiBuZWNlc3NhcnkuXG4gICAqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgcHVibGljIGdldCBpc0ZpeGVkU2l6ZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gTnVtYmVyLmlzTmFOKCt0aGlzLnNpemUpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIGVmZmVjdGl2ZSBzYXNoIHNpemUgYXMgcmVuZGVyZWQgaW4gdGhlIERPTS5cbiAgICpcbiAgICogQGludGVybmFsXG4gICAqL1xuICBwdWJsaWMgZ2V0IGNvbXB1dGVkU2l6ZSgpOiBudW1iZXIge1xuICAgIC8vIE5vdGU6IFVzZSBgYm91bmRpbmdDbGllbnRSZWN0YCB0byBnZXQgdGhlIGZyYWN0aW9uYWwgc2l6ZS5cbiAgICAvLyBzZWUgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvQVBJL0VsZW1lbnQvY2xpZW50V2lkdGhcbiAgICByZXR1cm4gdGhpcy5fc2FzaEJveEFjY2Vzc29yLmRpcmVjdGlvbiA9PT0gJ3JvdycgPyB0aGlzLmVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkud2lkdGggOiB0aGlzLmVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkuaGVpZ2h0O1xuICB9XG5cbiAgLyoqXG4gICAqIENvbXB1dGVzIGFuZCBzZXRzIHRoZSBmbGV4IGl0ZW0gcHJvcGVydGllcyBiYXNlZCBvbiB0aGUgbW9kZWxsZWQgc2l6ZS5cbiAgICovXG4gIHByaXZhdGUgc2V0RmxleEl0ZW1Qcm9wZXJ0aWVzKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmlzRml4ZWRTaXplKSB7XG4gICAgICAvLyBmaXhlZC1zaXplZCBzYXNoXG4gICAgICB0aGlzLmZsZXhHcm93ID0gMDtcbiAgICAgIHRoaXMuZmxleFNocmluayA9IDA7XG4gICAgICB0aGlzLmZsZXhCYXNpcyA9IGAke3RoaXMuc2l6ZX1gO1xuICAgIH1cbiAgICBlbHNlIHtcbiAgICAgIC8vIHJlbWFpbmluZyBzcGFjZSBpcyBkaXN0cmlidXRlZCBhY2NvcmRpbmcgdG8gZ2l2ZW4gcHJvcG9ydGlvblxuICAgICAgY29uc3QgcHJvcG9ydGlvbiA9ICt0aGlzLnNpemU7XG4gICAgICBpZiAocHJvcG9ydGlvbiA8IDEpIHtcbiAgICAgICAgdGhyb3cgRXJyb3IoYFtJbGxlZ2FsU2FzaFNpemVFcnJvcl0gVGhlIHByb3BvcnRpb24gZm9yIGZsZXhpYmxlIHNpemVkIHNhc2hlcyBtdXN0IGJlID49MSBbc2l6ZT0ke3RoaXMuc2l6ZX1dYCk7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuZmxleEdyb3cgPSBwcm9wb3J0aW9uO1xuICAgICAgdGhpcy5mbGV4U2hyaW5rID0gMTtcbiAgICAgIHRoaXMuZmxleEJhc2lzID0gJzAnO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBDb21wdXRlcyB0aGUgbm9ybWFsaXplZCBmbGV4LWdyb3cgcHJvcG9ydGlvbiBvZiB0aGUgZ2l2ZW4gc2FzaCwgd2hpY2ggaXMgYSB2YWx1ZSA+PSAxLlxuICAgKlxuICAgKiBJZiB0aGUgc3VtIG9mIGFsbCBmbGV4LWdyb3cgcHJvcG9ydGlvbnMgd291bGQgYmUgbGVzcyB0aGFuIDEsIHRoZW4sIHRoZSBzYXNoZXMgd291bGQgbm90IGZpbGwgdGhlIGVudGlyZSBzYXNoLWJveCBzcGFjZS5cbiAgICogV2l0aG91dCBub3JtYWxpemF0aW9uIGluIHBsYWNlLCBlLmcuLCB0aGlzIGNvdWxkIGhhcHBlbiB3aGVuIHJlbW92aW5nIGEgc2FzaC5cbiAgICovXG4gIHByaXZhdGUgbm9ybWFsaXplRmxleEdyb3coZmxleEdyb3c6IG51bWJlcik6IG51bWJlciB7XG4gICAgaWYgKGZsZXhHcm93ID09PSAwKSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG5cbiAgICBjb25zdCBzYXNoZXMgPSB0aGlzLl9zYXNoQm94QWNjZXNzb3Iuc2FzaGVzO1xuICAgIGNvbnN0IGZsZXhHcm93U3VtID0gc2FzaGVzLnJlZHVjZSgoc3VtLCBzYXNoKSA9PiBzdW0gKyBzYXNoLmZsZXhHcm93LCAwKTtcbiAgICBpZiAoZmxleEdyb3dTdW0gPT09IDApIHtcbiAgICAgIHJldHVybiAwO1xuICAgIH1cbiAgICByZXR1cm4gZmxleEdyb3cgLyBmbGV4R3Jvd1N1bTtcbiAgfVxufVxuIl19
@@ -218,13 +218,13 @@ export class SciSashboxComponent {
218
218
  }
219
219
  return parseInt(value, 10);
220
220
  }
221
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: SciSashboxComponent, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
222
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.2", type: SciSashboxComponent, isStandalone: true, selector: "sci-sashbox", inputs: { direction: "direction" }, outputs: { sashStart: "sashStart", sashEnd: "sashEnd" }, host: { properties: { "class.sashing": "this.sashing", "class.column": "this.isColumnDirection", "class.row": "this.isRowDirection" } }, providers: [{
221
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: SciSashboxComponent, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
222
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.1", type: SciSashboxComponent, isStandalone: true, selector: "sci-sashbox", inputs: { direction: "direction" }, outputs: { sashStart: "sashStart", sashEnd: "sashEnd" }, host: { properties: { "class.sashing": "this.sashing", "class.column": "this.isColumnDirection", "class.row": "this.isRowDirection" } }, providers: [{
223
223
  provide: SciSashBoxAccessor,
224
224
  useFactory: provideSashBoxAccessor,
225
- }], queries: [{ propertyName: "setSashes", predicate: SciSashDirective }], ngImport: i0, template: "<ng-container *ngFor=\"let sash of sashes$ | async; index as i; first as first; last as last;\">\n <div class=\"sash\"\n [class.first]=\"first\"\n [class.last]=\"last\"\n [sciSashInitializer]=\"sash\"\n [style.flex-grow]=\"sash.flexGrowNormalized$ | async\"\n [style.flex-shrink]=\"sash.flexShrink\"\n [style.flex-basis]=\"sash.flexBasis\">\n <ng-container *ngTemplateOutlet=\"sash.sashTemplate\"></ng-container>\n </div>\n\n <sci-splitter *ngIf=\"!last\"\n sciElementRef #sciElementRef=\"sciElementRef\"\n [orientation]=\"isRowDirection ? 'vertical' : 'horizontal'\"\n (start)=\"onSashStart()\"\n (move)=\"onSash(sciElementRef.nativeElement, i, $event)\"\n (end)=\"onSashEnd()\"\n (reset)=\"onSashReset(i)\">\n </sci-splitter>\n</ng-container>\n", styles: ["@charset \"UTF-8\";:host{--\\275sci-sashbox-gap: var(--sci-sashbox-gap, 10px);--\\275sci-sashbox-splitter-background-color: var(--sci-sashbox-splitter-background-color, var(--sci-sashbox-splitter-bgcolor, #d2d2d2));--\\275sci-sashbox-splitter-background-color-hover: var(--sci-sashbox-splitter-background-color-hover, var(--sci-sashbox-splitter-bgcolor_hover, var(--\\275sci-sashbox-splitter-background-color)));--\\275sci-sashbox-splitter-size: var(--sci-sashbox-splitter-size, 1px);--\\275sci-sashbox-splitter-size-hover: var(--sci-sashbox-splitter-size-hover, var(--sci-sashbox-splitter-size_hover, 8px));--\\275sci-sashbox-splitter-touch-target-size: var(--sci-sashbox-splitter-touch-target-size, 15px);--\\275sci-sashbox-splitter-cross-axis-size: var(--sci-sashbox-splitter-cross-axis-size, 100%);--\\275sci-sashbox-splitter-border-radius: var(--sci-sashbox-splitter-border-radius, 0);--\\275sci-sashbox-splitter-opacity-active: var(--sci-sashbox-splitter-opacity-active, var(--sci-sashbox-splitter-opacity_active, 1));--\\275sci-sashbox-splitter-opacity-hover: var(--sci-sashbox-splitter-opacity-hover, var(--sci-sashbox-splitter-opacity_hover, .3));display:flex;align-items:stretch;box-sizing:border-box;overflow:hidden;z-index:0}:host *{box-sizing:border-box}:host.column{flex-direction:column}:host.row{flex-direction:row}:host>div.sash{overflow:hidden;display:grid;grid-auto-rows:100%;grid-auto-columns:100%}:host.row>div.sash{margin:0 var(--\\275sci-sashbox-gap)}:host.row>div.sash.first{margin-left:0}:host.row>div.sash.last{margin-right:0}:host.column>div.sash{margin:var(--\\275sci-sashbox-gap) 0}:host.column>div.sash.first{margin-top:0}:host.column>div.sash.last{margin-bottom:0}:host.sashing>div.sash{pointer-events:none}:host>sci-splitter{--sci-splitter-background-color: var(--\\275sci-sashbox-splitter-background-color);--sci-splitter-background-color-hover: var(--\\275sci-sashbox-splitter-background-color-hover);--sci-splitter-size: var(--\\275sci-sashbox-splitter-size);--sci-splitter-size-hover: var(--\\275sci-sashbox-splitter-size-hover);--sci-splitter-touch-target-size: var(--\\275sci-sashbox-splitter-touch-target-size);--sci-splitter-cross-axis-size: var(--\\275sci-sashbox-splitter-cross-axis-size);--sci-splitter-border-radius: var(--\\275sci-sashbox-splitter-border-radius);--sci-splitter-opacity-active: var(--\\275sci-sashbox-splitter-opacity-active);--sci-splitter-opacity-hover: var(--\\275sci-sashbox-splitter-opacity-hover);flex:none;z-index:1}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: SciSashInitializerDirective, selector: "div[sciSashInitializer].sash", inputs: ["sciSashInitializer"] }, { kind: "component", type: SciSplitterComponent, selector: "sci-splitter", inputs: ["orientation"], outputs: ["start", "move", "end", "reset"] }, { kind: "directive", type: SciElementRefDirective, selector: "[sciElementRef]", exportAs: ["sciElementRef"] }] }); }
225
+ }], queries: [{ propertyName: "setSashes", predicate: SciSashDirective }], ngImport: i0, template: "<ng-container *ngFor=\"let sash of sashes$ | async; index as i; first as first; last as last;\">\n <div class=\"sash\"\n [class.first]=\"first\"\n [class.last]=\"last\"\n [sciSashInitializer]=\"sash\"\n [style.flex-grow]=\"sash.flexGrowNormalized$ | async\"\n [style.flex-shrink]=\"sash.flexShrink\"\n [style.flex-basis]=\"sash.flexBasis\">\n <ng-container *ngTemplateOutlet=\"sash.sashTemplate\"></ng-container>\n </div>\n\n <sci-splitter *ngIf=\"!last\"\n sciElementRef #sciElementRef=\"sciElementRef\"\n [orientation]=\"isRowDirection ? 'vertical' : 'horizontal'\"\n (start)=\"onSashStart()\"\n (move)=\"onSash(sciElementRef.nativeElement, i, $event)\"\n (end)=\"onSashEnd()\"\n (reset)=\"onSashReset(i)\">\n </sci-splitter>\n</ng-container>\n", styles: [":host{display:flex;align-items:stretch;box-sizing:border-box;overflow:hidden;z-index:0}:host *{box-sizing:border-box}:host.column{flex-direction:column}:host.row{flex-direction:row}:host>div.sash{overflow:hidden;display:grid;grid-auto-rows:100%;grid-auto-columns:100%}:host.row>div.sash{margin:0 var(--sci-sashbox-gap)}:host.row>div.sash.first{margin-left:0}:host.row>div.sash.last{margin-right:0}:host.column>div.sash{margin:var(--sci-sashbox-gap) 0}:host.column>div.sash.first{margin-top:0}:host.column>div.sash.last{margin-bottom:0}:host.sashing>div.sash{pointer-events:none}:host>sci-splitter{--sci-splitter-background-color: var(--sci-sashbox-splitter-background-color);--sci-splitter-background-color-hover: var(--sci-sashbox-splitter-background-color-hover);--sci-splitter-size: var(--sci-sashbox-splitter-size);--sci-splitter-size-hover: var(--sci-sashbox-splitter-size-hover);--sci-splitter-touch-target-size: var(--sci-sashbox-splitter-touch-target-size);--sci-splitter-cross-axis-size: var(--sci-sashbox-splitter-cross-axis-size);--sci-splitter-border-radius: var(--sci-sashbox-splitter-border-radius);--sci-splitter-opacity-active: var(--sci-sashbox-splitter-opacity-active);--sci-splitter-opacity-hover: var(--sci-sashbox-splitter-opacity-hover);flex:none;z-index:1}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: SciSashInitializerDirective, selector: "div[sciSashInitializer].sash", inputs: ["sciSashInitializer"] }, { kind: "component", type: SciSplitterComponent, selector: "sci-splitter", inputs: ["orientation"], outputs: ["start", "move", "end", "reset"] }, { kind: "directive", type: SciElementRefDirective, selector: "[sciElementRef]", exportAs: ["sciElementRef"] }] }); }
226
226
  }
227
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: SciSashboxComponent, decorators: [{
227
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: SciSashboxComponent, decorators: [{
228
228
  type: Component,
229
229
  args: [{ selector: 'sci-sashbox', standalone: true, imports: [
230
230
  NgIf,
@@ -237,7 +237,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImpor
237
237
  ], providers: [{
238
238
  provide: SciSashBoxAccessor,
239
239
  useFactory: provideSashBoxAccessor,
240
- }], template: "<ng-container *ngFor=\"let sash of sashes$ | async; index as i; first as first; last as last;\">\n <div class=\"sash\"\n [class.first]=\"first\"\n [class.last]=\"last\"\n [sciSashInitializer]=\"sash\"\n [style.flex-grow]=\"sash.flexGrowNormalized$ | async\"\n [style.flex-shrink]=\"sash.flexShrink\"\n [style.flex-basis]=\"sash.flexBasis\">\n <ng-container *ngTemplateOutlet=\"sash.sashTemplate\"></ng-container>\n </div>\n\n <sci-splitter *ngIf=\"!last\"\n sciElementRef #sciElementRef=\"sciElementRef\"\n [orientation]=\"isRowDirection ? 'vertical' : 'horizontal'\"\n (start)=\"onSashStart()\"\n (move)=\"onSash(sciElementRef.nativeElement, i, $event)\"\n (end)=\"onSashEnd()\"\n (reset)=\"onSashReset(i)\">\n </sci-splitter>\n</ng-container>\n", styles: ["@charset \"UTF-8\";:host{--\\275sci-sashbox-gap: var(--sci-sashbox-gap, 10px);--\\275sci-sashbox-splitter-background-color: var(--sci-sashbox-splitter-background-color, var(--sci-sashbox-splitter-bgcolor, #d2d2d2));--\\275sci-sashbox-splitter-background-color-hover: var(--sci-sashbox-splitter-background-color-hover, var(--sci-sashbox-splitter-bgcolor_hover, var(--\\275sci-sashbox-splitter-background-color)));--\\275sci-sashbox-splitter-size: var(--sci-sashbox-splitter-size, 1px);--\\275sci-sashbox-splitter-size-hover: var(--sci-sashbox-splitter-size-hover, var(--sci-sashbox-splitter-size_hover, 8px));--\\275sci-sashbox-splitter-touch-target-size: var(--sci-sashbox-splitter-touch-target-size, 15px);--\\275sci-sashbox-splitter-cross-axis-size: var(--sci-sashbox-splitter-cross-axis-size, 100%);--\\275sci-sashbox-splitter-border-radius: var(--sci-sashbox-splitter-border-radius, 0);--\\275sci-sashbox-splitter-opacity-active: var(--sci-sashbox-splitter-opacity-active, var(--sci-sashbox-splitter-opacity_active, 1));--\\275sci-sashbox-splitter-opacity-hover: var(--sci-sashbox-splitter-opacity-hover, var(--sci-sashbox-splitter-opacity_hover, .3));display:flex;align-items:stretch;box-sizing:border-box;overflow:hidden;z-index:0}:host *{box-sizing:border-box}:host.column{flex-direction:column}:host.row{flex-direction:row}:host>div.sash{overflow:hidden;display:grid;grid-auto-rows:100%;grid-auto-columns:100%}:host.row>div.sash{margin:0 var(--\\275sci-sashbox-gap)}:host.row>div.sash.first{margin-left:0}:host.row>div.sash.last{margin-right:0}:host.column>div.sash{margin:var(--\\275sci-sashbox-gap) 0}:host.column>div.sash.first{margin-top:0}:host.column>div.sash.last{margin-bottom:0}:host.sashing>div.sash{pointer-events:none}:host>sci-splitter{--sci-splitter-background-color: var(--\\275sci-sashbox-splitter-background-color);--sci-splitter-background-color-hover: var(--\\275sci-sashbox-splitter-background-color-hover);--sci-splitter-size: var(--\\275sci-sashbox-splitter-size);--sci-splitter-size-hover: var(--\\275sci-sashbox-splitter-size-hover);--sci-splitter-touch-target-size: var(--\\275sci-sashbox-splitter-touch-target-size);--sci-splitter-cross-axis-size: var(--\\275sci-sashbox-splitter-cross-axis-size);--sci-splitter-border-radius: var(--\\275sci-sashbox-splitter-border-radius);--sci-splitter-opacity-active: var(--\\275sci-sashbox-splitter-opacity-active);--sci-splitter-opacity-hover: var(--\\275sci-sashbox-splitter-opacity-hover);flex:none;z-index:1}\n"] }]
240
+ }], template: "<ng-container *ngFor=\"let sash of sashes$ | async; index as i; first as first; last as last;\">\n <div class=\"sash\"\n [class.first]=\"first\"\n [class.last]=\"last\"\n [sciSashInitializer]=\"sash\"\n [style.flex-grow]=\"sash.flexGrowNormalized$ | async\"\n [style.flex-shrink]=\"sash.flexShrink\"\n [style.flex-basis]=\"sash.flexBasis\">\n <ng-container *ngTemplateOutlet=\"sash.sashTemplate\"></ng-container>\n </div>\n\n <sci-splitter *ngIf=\"!last\"\n sciElementRef #sciElementRef=\"sciElementRef\"\n [orientation]=\"isRowDirection ? 'vertical' : 'horizontal'\"\n (start)=\"onSashStart()\"\n (move)=\"onSash(sciElementRef.nativeElement, i, $event)\"\n (end)=\"onSashEnd()\"\n (reset)=\"onSashReset(i)\">\n </sci-splitter>\n</ng-container>\n", styles: [":host{display:flex;align-items:stretch;box-sizing:border-box;overflow:hidden;z-index:0}:host *{box-sizing:border-box}:host.column{flex-direction:column}:host.row{flex-direction:row}:host>div.sash{overflow:hidden;display:grid;grid-auto-rows:100%;grid-auto-columns:100%}:host.row>div.sash{margin:0 var(--sci-sashbox-gap)}:host.row>div.sash.first{margin-left:0}:host.row>div.sash.last{margin-right:0}:host.column>div.sash{margin:var(--sci-sashbox-gap) 0}:host.column>div.sash.first{margin-top:0}:host.column>div.sash.last{margin-bottom:0}:host.sashing>div.sash{pointer-events:none}:host>sci-splitter{--sci-splitter-background-color: var(--sci-sashbox-splitter-background-color);--sci-splitter-background-color-hover: var(--sci-sashbox-splitter-background-color-hover);--sci-splitter-size: var(--sci-sashbox-splitter-size);--sci-splitter-size-hover: var(--sci-sashbox-splitter-size-hover);--sci-splitter-touch-target-size: var(--sci-sashbox-splitter-touch-target-size);--sci-splitter-cross-axis-size: var(--sci-sashbox-splitter-cross-axis-size);--sci-splitter-border-radius: var(--sci-sashbox-splitter-border-radius);--sci-splitter-opacity-active: var(--sci-sashbox-splitter-opacity-active);--sci-splitter-opacity-hover: var(--sci-sashbox-splitter-opacity-hover);flex:none;z-index:1}\n"] }]
241
241
  }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.NgZone }], propDecorators: { sashing: [{
242
242
  type: HostBinding,
243
243
  args: ['class.sashing']
@@ -283,4 +283,4 @@ function provideSashBoxAccessor() {
283
283
  }
284
284
  };
285
285
  }
286
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2FzaGJveC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zY2lvbi9jb21wb25lbnRzL3Nhc2hib3gvc3JjL3Nhc2hib3guY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2Npb24vY29tcG9uZW50cy9zYXNoYm94L3NyYy9zYXNoYm94LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7OztHQVFHO0FBRUgsT0FBTyxFQUFDLFNBQVMsRUFBRSxlQUFlLEVBQWMsWUFBWSxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBYSxNQUFNLEVBQVksTUFBTSxlQUFlLENBQUM7QUFDckosT0FBTyxFQUFDLFNBQVMsRUFBRSxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUNwRCxPQUFPLEVBQUMsZUFBZSxFQUFjLE9BQU8sRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUMxRCxPQUFPLEVBQUMsb0JBQW9CLEVBQW9CLE1BQU0sNEJBQTRCLENBQUM7QUFDbkYsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sa0JBQWtCLENBQUM7QUFDbEQsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sb0JBQW9CLENBQUM7QUFDdEQsT0FBTyxFQUFDLFNBQVMsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLGdCQUFnQixFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDekUsT0FBTyxFQUFDLDJCQUEyQixFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDekUsT0FBTyxFQUFDLHNCQUFzQixFQUFDLE1BQU0seUJBQXlCLENBQUM7O0FBRS9EOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBb0RHO0FBb0JILE1BQU0sT0FBTyxtQkFBbUI7SUEyQjlCLGdCQUFnQjtJQUNoQixJQUNXLFNBQVMsQ0FB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QUFDO1FBRUQsSUFBVyxNQUFNO1lBQ2YsT0FBTyxTQUFTLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQztRQUNqQyxDQUFDO0tBQ0YsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChjKSAyMDE4LTIwMTkgU3dpc3MgRmVkZXJhbCBSYWlsd2F5c1xuICpcbiAqIFRoaXMgcHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRlcmlhbHMgYXJlIG1hZGVcbiAqIGF2YWlsYWJsZSB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEVjbGlwc2UgUHVibGljIExpY2Vuc2UgMi4wXG4gKiB3aGljaCBpcyBhdmFpbGFibGUgYXQgaHR0cHM6Ly93d3cuZWNsaXBzZS5vcmcvbGVnYWwvZXBsLTIuMC9cbiAqXG4gKiAgU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEVQTC0yLjBcbiAqL1xuXG5pbXBvcnQge0NvbXBvbmVudCwgQ29udGVudENoaWxkcmVuLCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIEhvc3RCaW5kaW5nLCBpbmplY3QsIElucHV0LCBOZ1pvbmUsIE9uRGVzdHJveSwgT3V0cHV0LCBRdWVyeUxpc3R9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtzdGFydFdpdGgsIHRha2VVbnRpbH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUsIFN1YmplY3R9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtTY2lTcGxpdHRlckNvbXBvbmVudCwgU3BsaXR0ZXJNb3ZlRXZlbnR9IGZyb20gJ0BzY2lvbi9jb21wb25lbnRzL3NwbGl0dGVyJztcbmltcG9ydCB7U2NpU2FzaERpcmVjdGl2ZX0gZnJvbSAnLi9zYXNoLmRpcmVjdGl2ZSc7XG5pbXBvcnQge1NjaVNhc2hCb3hBY2Nlc3Nvcn0gZnJvbSAnLi9zYXNoYm94LWFjY2Vzc29yJztcbmltcG9ydCB7QXN5bmNQaXBlLCBOZ0ZvciwgTmdJZiwgTmdUZW1wbGF0ZU91dGxldH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7U2NpU2FzaEluaXRpYWxpemVyRGlyZWN0aXZlfSBmcm9tICcuL3Nhc2gtaW5pdGlhbGl6ZXIuZGlyZWN0aXZlJztcbmltcG9ydCB7U2NpRWxlbWVudFJlZkRpcmVjdGl2ZX0gZnJvbSAnLi9lbGVtZW50LXJlZi5kaXJlY3RpdmUnO1xuXG4vKipcbiAqIFRoZSA8c2NpLXNhc2hib3g+IGlzIGxpa2UgYSBDU1MgZmxleGJveCBjb250YWluZXIgdGhhdCBsYXlzIG91dCBpdHMgY29udGVudCBjaGlsZHJlbiAoc2FzaGVzKSBpbiBhIHJvdyAod2hpY2ggaXMgYnkgZGVmYXVsdClcbiAqIG9yIGNvbHVtbiBhcnJhbmdlbWVudCAoYXMgc3BlY2lmaWVkIGJ5IHRoZSBkaXJlY3Rpb24gcHJvcGVydHkpLiBBIHNwbGl0dGVyIGlzIGFkZGVkIGJldHdlZW4gZWFjaCBjaGlsZCB0byBhbGxvdyB0aGUgdXNlciB0b1xuICogc2hyaW5rIG9yIHN0cmV0Y2ggdGhlIGluZGl2aWR1YWwgc2FzaGVzLlxuICpcbiAqIFNhc2hlcyBhcmUgbW9kZWxsZWQgYXMgY29udGVudCBjaGlsZHJlbiBpbnNpZGUgYSA8bmctdGVtcGxhdGU+IGRlY29yYXRlZCB3aXRoIHRoZSAnc2NpU2FzaCcgZGlyZWN0aXZlLlxuICogQSBzYXNoIGNhbiBoYXZlIGEgZml4ZWQgc2l6ZSB3aXRoIGFuIGV4cGxpY2l0IHVuaXQsIG9yIGEgdW5pdGxlc3MgcHJvcG9ydGlvbiB0byBkaXN0aWJ1dGUgcmVtYWluaW5nIHNwYWNlLlxuICogQSBwcm9wb3J0aW9uYWwgc2FzaCBoYXMgdGhlIGFiaWxpdHkgdG8gZ3JvdyBvciBzaHJpbmsgaWYgbmVjZXNzYXJ5LlxuICpcbiAqXG4gKiAjIyMgVXNhZ2VcbiAqXG4gKiBgYGBodG1sXG4gKiA8c2NpLXNhc2hib3ggZGlyZWN0aW9uPVwicm93XCI+XG4gKiAgIDxuZy10ZW1wbGF0ZSBzY2lTYXNoIHNpemU9XCIxXCI+XG4gKiAgICAgLi4uXG4gKiAgIDwvbmctdGVtcGxhdGU+XG4gKlxuICogICA8bmctdGVtcGxhdGUgc2NpU2FzaCBzaXplPVwiMlwiPlxuICogICAgIC4uLlxuICogICA8L25nLXRlbXBsYXRlPlxuICpcbiAqICAgPG5nLXRlbXBsYXRlIHNjaVNhc2ggc2l6ZT1cIjFcIj5cbiAqICAgICAuLi5cbiAqICAgPC9uZy10ZW1wbGF0ZT5cbiAqIDwvc2NpLXNhc2hib3g+XG4gKiBgYGBcbiAqXG4gKiAjIyMgU3R5bGluZ1xuICpcbiAqIFRvIGN1c3RvbWl6ZSB0aGUgZGVmYXVsdCBsb29rIG9mIFNDSU9OIGNvbXBvbmVudHMgb3Igc3VwcG9ydCBkaWZmZXJlbnQgdGhlbWVzLCBjb25maWd1cmUgdGhlIGBAc2Npb24vY29tcG9uZW50c2AgU0NTUyBtb2R1bGUgaW4gYHN0eWxlcy5zY3NzYC5cbiAqIFRvIHN0eWxlIGEgc3BlY2lmaWMgYHNjaS1zYXNoYm94YCBjb21wb25lbnQsIHRoZSBmb2xsb3dpbmcgQ1NTIHZhcmlhYmxlcyBjYW4gYmUgc2V0IGRpcmVjdGx5IG9uIHRoZSBjb21wb25lbnQuXG4gKlxuICogLSAtLXNjaS1zYXNoYm94LWdhcDogU2V0cyB0aGUgZ2FwcyAoZ3V0dGVycykgYmV0d2VlbiBzYXNoZXMuXG4gKiAtIC0tc2NpLXNhc2hib3gtc3BsaXR0ZXItYmFja2dyb3VuZC1jb2xvcjogU2V0cyB0aGUgYmFja2dyb3VuZCBjb2xvciBvZiB0aGUgc3BsaXR0ZXIuXG4gKiAtIC0tc2NpLXNhc2hib3gtc3BsaXR0ZXItYmFja2dyb3VuZC1jb2xvci1ob3ZlcjogU2V0cyB0aGUgYmFja2dyb3VuZCBjb2xvciBvZiB0aGUgc3BsaXR0ZXIgd2hlbiBob3ZlcmluZyBpdC5cbiAqIC0gLS1zY2ktc2FzaGJveC1zcGxpdHRlci1zaXplOiBTZXRzIHRoZSBzaXplIG9mIHRoZSBzcGxpdHRlciBhbG9uZyB0aGUgbWFpbiBheGlzLlxuICogLSAtLXNjaS1zYXNoYm94LXNwbGl0dGVyLXNpemUtaG92ZXI6IFNldHMgdGhlIHNpemUgb2YgdGhlIHNwbGl0dGVyIGFsb25nIHRoZSBtYWluIGF4aXMgd2hlbiBob3ZlcmluZyBpdC5cbiAqIC0gLS1zY2ktc2FzaGJveC1zcGxpdHRlci10b3VjaC10YXJnZXQtc2l6ZTogU2V0cyB0aGUgdG91Y2ggdGFyZ2V0IHNpemUgdG8gbW92ZSB0aGUgc3BsaXR0ZXIgKGFjY2Vzc2liaWxpdHkpLlxuICogLSAtLXNjaS1zYXNoYm94LXNwbGl0dGVyLWNyb3NzLWF4aXMtc2l6ZTogU2V0cyB0aGUgc3BsaXR0ZXIgc2l6ZSBhbG9uZyB0aGUgY3Jvc3MgYXhpcy5cbiAqIC0gLS1zY2ktc2FzaGJveC1zcGxpdHRlci1ib3JkZXItcmFkaXVzOiBTZXRzIHRoZSBib3JkZXIgcmFkaXVzIG9mIHRoZSBzcGxpdHRlci5cbiAqIC0gLS1zY2ktc2FzaGJveC1zcGxpdHRlci1vcGFjaXR5LWFjdGl2ZTogU2V0cyB0aGUgb3BhY2l0eSBvZiB0aGUgc3BsaXR0ZXIgd2hpbGUgdGhlIHVzZXIgbW92ZXMgdGhlIHNwbGl0dGVyLlxuICogLSAtLXNjaS1zYXNoYm94LXNwbGl0dGVyLW9wYWNpdHktaG92ZXI6IFNldHMgdGhlIG9wYWNpdHkgb2YgdGhlIHNwbGl0dGVyIHdoZW4gaG92ZXJpbmcgaXQuXG4gKlxuICogRXhhbXBsZTpcbiAqXG4gKiBgYGBzY3NzXG4gKiBzY2ktc2FzaGJveCB7XG4gKiAgIC0tc2NpLXNhc2hib3gtc3BsaXR0ZXItYmFja2dyb3VuZC1jb2xvcjogYmxhY2s7XG4gKiAgIC0tc2NpLXNhc2hib3gtc3BsaXR0ZXItYmFja2dyb3VuZC1jb2xvci1ob3ZlcjogYmxhY2s7XG4gKiB9XG4gKiBgYGBcbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2NpLXNhc2hib3gnLFxuICB0ZW1wbGF0ZVVybDogJy4vc2FzaGJveC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3Nhc2hib3guY29tcG9uZW50LnNjc3MnXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIE5nSWYsXG4gICAgTmdGb3IsXG4gICAgQXN5bmNQaXBlLFxuICAgIE5nVGVtcGxhdGVPdXRsZXQsXG4gICAgU2NpU2FzaEluaXRpYWxpemVyRGlyZWN0aXZlLFxuICAgIFNjaVNwbGl0dGVyQ29tcG9uZW50LFxuICAgIFNjaUVsZW1lbnRSZWZEaXJlY3RpdmUsXG4gIF0sXG4gIHByb3ZpZGVyczogW3tcbiAgICBwcm92aWRlOiBTY2lTYXNoQm94QWNjZXNzb3IsXG4gICAgdXNlRmFjdG9yeTogcHJvdmlkZVNhc2hCb3hBY2Nlc3NvcixcbiAgfV0sXG59KVxuZXhwb3J0IGNsYXNzIFNjaVNhc2hib3hDb21wb25lbnQgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuXG4gIHByaXZhdGUgX2Rlc3Ryb3kkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICBwdWJsaWMgc2FzaGVzJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8U2NpU2FzaERpcmVjdGl2ZVtdPihbXSk7XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5zYXNoaW5nJylcbiAgcHVibGljIHNhc2hpbmcgPSBmYWxzZTtcblxuICAvKipcbiAgICogU3BlY2lmaWVzIGlmIHRvIGxheSBvdXQgc2FzaGVzIGluIGEgcm93ICh3aGljaCBpcyBieSBkZWZhdWx0KSBvciBjb2x1bW4gYXJyYW5nZW1lbnQuXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgZGlyZWN0aW9uOiAnY29sdW1uJyB8ICdyb3cnID0gJ3Jvdyc7XG5cbiAgLyoqXG4gICAqIEVtaXRzIHdoZW4gc3RhcnQgc2FzaGluZy5cbiAgICovXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgc2FzaFN0YXJ0ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gIC8qKlxuICAgKiBFbWl0cyB0aGUgYWJzb2x1dGUgc2FzaCBzaXplcyAocHgpIHdoZW4gZmluaXNoZWQgc2FzaGluZy5cbiAgICovXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgc2FzaEVuZCA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyW10+KCk7XG5cbiAgLyoqIEBpbnRlcm5hbCAqL1xuICBAQ29udGVudENoaWxkcmVuKFNjaVNhc2hEaXJlY3RpdmUpXG4gIHB1YmxpYyBzZXQgc2V0U2FzaGVzKHF1ZXJ5TGlzdDogUXVlcnlMaXN0PFNjaVNhc2hEaXJlY3RpdmU+KSB7XG4gICAgcXVlcnlMaXN0LmNoYW5nZXNcbiAgICAgIC5waXBlKFxuICAgICAgICBzdGFydFdpdGgocXVlcnlMaXN0KSxcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kkKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKHNhc2hlczogUXVlcnlMaXN0PFNjaVNhc2hEaXJlY3RpdmU+KSA9PiB7XG4gICAgICAgIHRoaXMuc2FzaGVzJC5uZXh0KHNhc2hlcy50b0FycmF5KCkpO1xuICAgICAgfSk7XG4gIH1cblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9ob3N0OiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PiwgcHJpdmF0ZSBfem9uZTogTmdab25lKSB7XG4gIH1cblxuICBwdWJsaWMgb25TYXNoU3RhcnQoKTogdm9pZCB7XG4gICAgdGhpcy5zYXNoaW5nID0gdHJ1ZTtcbiAgICB0aGlzLnNhc2hTdGFydC5lbWl0KCk7XG5cbiAgICAvLyBzZXQgdGhlIGVmZmVjdGl2ZSBzYXNoIHNpemUgYXMgdGhlIGZsZXgtYmFzaXMgZm9yIG5vbi1maXhlZCBzYXNoZXMgKGFzIHNhc2hpbmcgb3BlcmF0ZXMgb24gcGl4ZWwgZGVsdGFzKVxuICAgIHRoaXMuc2FzaGVzLmZvckVhY2goc2FzaCA9PiB7XG4gICAgICBpZiAoIXNhc2guaXNGaXhlZFNpemUpIHtcbiAgICAgICAgc2FzaC5mbGV4R3JvdyA9IDA7XG4gICAgICAgIHNhc2guZmxleFNocmluayA9IDA7XG4gICAgICAgIHNhc2guZmxleEJhc2lzID0gYCR7c2FzaC5jb21wdXRlZFNpemV9cHhgO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIG9uU2FzaEVuZCgpOiB2b2lkIHtcbiAgICB0aGlzLnNhc2hpbmcgPSBmYWxzZTtcblxuICAgIC8vIHVuc2V0IHRoZSBmbGV4LWJhc2lzIGZvciBub24tZml4ZWQgc2FzaGVzIGFuZCBzZXQgdGhlIGZsZXgtZ3JvdyBhY2NvcmRpbmdseVxuICAgIGNvbnN0IHBpeGVsVG9GbGV4R3Jvd0ZhY3RvciA9IGNvbXB1dGVQaXhlbFRvRmxleEdyb3dGYWN0b3IodGhpcy5zYXNoZXMpO1xuICAgIGNvbnN0IGFic29sdXRlU2FzaFNpemVzID0gdGhpcy5zYXNoZXMubWFwKHNhc2ggPT4gc2FzaC5jb21wdXRlZFNpemUpO1xuXG4gICAgdGhpcy5zYXNoZXMuZm9yRWFjaCgoc2FzaCwgaSkgPT4ge1xuICAgICAgaWYgKCFzYXNoLmlzRml4ZWRTaXplKSB7XG4gICAgICAgIHNhc2guZmxleEdyb3cgPSBwaXhlbFRvRmxleEdyb3dGYWN0b3IgKiBhYnNvbHV0ZVNhc2hTaXplc1tpXTtcbiAgICAgICAgc2FzaC5mbGV4U2hyaW5rID0gMTtcbiAgICAgICAgc2FzaC5mbGV4QmFzaXMgPSAnMCc7XG4gICAgICB9XG4gICAgfSk7XG4gICAgdGhpcy5zYXNoRW5kLmVtaXQoYWJzb2x1dGVTYXNoU2l6ZXMpO1xuICB9XG5cbiAgcHVibGljIG9uU2FzaChzcGxpdHRlcjogSFRNTEVsZW1lbnQsIHNhc2hJbmRleDogbnVtYmVyLCBtb3ZlRXZlbnQ6IFNwbGl0dGVyTW92ZUV2ZW50KTogdm9pZCB7XG4gICAgY29uc3QgZGlzdGFuY2UgPSBtb3ZlRXZlbnQuZGlzdGFuY2U7XG4gICAgaWYgKGRpc3RhbmNlID09PSAwKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgTmdab25lLmFzc2VydE5vdEluQW5ndWxhclpvbmUoKTtcblxuICAgIC8vIGNvbXB1dGUgdGhlIHNwbGl0dGVyIHBvc2l0aW9uXG4gICAgY29uc3Qgc3BsaXR0ZXJSZWN0ID0gc3BsaXR0ZXIuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgY29uc3Qgc3BsaXR0ZXJTdGFydCA9ICh0aGlzLmlzUm93RGlyZWN0aW9uID8gc3BsaXR0ZXJSZWN0LmxlZnQgOiBzcGxpdHRlclJlY3QudG9wKTtcbiAgICBjb25zdCBzcGxpdHRlckVuZCA9ICh0aGlzLmlzUm93RGlyZWN0aW9uID8gc3BsaXR0ZXJSZWN0LmxlZnQgKyBzcGxpdHRlclJlY3Qud2lkdGggOiBzcGxpdHRlclJlY3QudG9wICsgc3BsaXR0ZXJSZWN0LmhlaWdodCk7XG5cbiAgICAvLyBpZ25vcmUgdGhlIGV2ZW50IGlmIG91dHNpZGUgb2YgdGhlIHNwbGl0dGVyJ3MgYWN0aW9uIHNjb3BlXG4gICAgY29uc3QgZXZlbnRQb3MgPSBtb3ZlRXZlbnQucG9zaXRpb24uY2xpZW50UG9zO1xuICAgIC8vIGkuZS4gdGhlIHNhc2ggc2hvdWxkIG5vdCBncm93IGlmIG1vdmVkIHRoZSBtb3VzZSBwb2ludGVyIGJleW9uZCB0aGUgbGVmdCBib3VuZHMgb2YgdGhlIHNhc2gsIGFuZCBpZiBub3cgbW92aW5nIHRoZSBtb3VzZSBwb2ludGVyIGJhY2sgdG93YXJkIHRoZSBjdXJyZW50IHNhc2guXG4gICAgaWYgKGRpc3RhbmNlID4gMCAmJiBldmVudFBvcyA8IHNwbGl0dGVyU3RhcnQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICAvLyBpLmUuIHRoZSBzYXNoIHNob3VsZCBub3Qgc2hyaW5rIGlmIG1vdmVkIHRoZSBtb3VzZSBwb2ludGVyIGJleW9uZCB0aGUgcmlnaHQgYm91bmRzIG9mIHRoZSBzYXNoLCBhbmQgaWYgbm93IG1vdmluZyB0aGUgbW91c2UgcG9pbnRlciBiYWNrIHRvd2FyZCB0aGUgY3VycmVudCBzYXNoLlxuICAgIGlmIChkaXN0YW5jZSA8IDAgJiYgZXZlbnRQb3MgPiBzcGxpdHRlckVuZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIC8vIGNvbXB1dGUgdGhlIG5ldyBzYXNoIHNpemVzXG4gICAgY29uc3Qgc2FzaDEgPSB0aGlzLnNhc2hlc1tzYXNoSW5kZXhdO1xuICAgIGNvbnN0IHNhc2gyID0gdGhpcy5zYXNoZXNbc2FzaEluZGV4ICsgMV07XG5cbiAgICBjb25zdCBzYXNoU2l6ZTEgPSBzYXNoMS5jb21wdXRlZFNpemU7XG4gICAgY29uc3Qgc2FzaFNpemUyID0gc2FzaDIuY29tcHV0ZWRTaXplO1xuICAgIGNvbnN0IG1heFNhc2hTaXplID0gc2FzaFNpemUxICsgc2FzaFNpemUyO1xuICAgIGNvbnN0IGNvbXB1dGVkTmV3U2FzaFNpemUxID0gTWF0aC5yb3VuZChzYXNoU2l6ZTEgKyBkaXN0YW5jZSk7XG4gICAgY29uc3QgY29tcHV0ZWROZXdTYXNoU2l6ZTIgPSBNYXRoLnJvdW5kKHNhc2hTaXplMiAtIGRpc3RhbmNlKTtcblxuICAgIGlmIChzYXNoMS5taW5TaXplICE9PSB1bmRlZmluZWQgJiYgZGlzdGFuY2UgPCAwICYmIGNvbXB1dGVkTmV3U2FzaFNpemUxIDwgdGhpcy50b1BpeGVsKHNhc2gxLm1pblNpemUpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGlmIChzYXNoMi5taW5TaXplICE9PSB1bmRlZmluZWQgJiYgZGlzdGFuY2UgPiAwICYmIGNvbXB1dGVkTmV3U2FzaFNpemUyIDwgdGhpcy50b1BpeGVsKHNhc2gyLm1pblNpemUpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgdmFsaWROZXdTYXNoU2l6ZTEgPSBiZXR3ZWVuKGNvbXB1dGVkTmV3U2FzaFNpemUxLCB7bWluOiAwLCBtYXg6IG1heFNhc2hTaXplfSk7XG4gICAgY29uc3QgdmFsaWROZXdTYXNoU2l6ZTIgPSBiZXR3ZWVuKGNvbXB1dGVkTmV3U2FzaFNpemUyLCB7bWluOiAwLCBtYXg6IG1heFNhc2hTaXplfSk7XG5cbiAgICAvLyBjb250aW51ZSBvbmx5IGlmIGJvdGggc2FzaGVzIGFkamFjZW50IHRvIHRoZSBzcGxpdHRlciBjaGFuZ2UgdGhlaXIgc2l6ZSAoYXMgdGhlIGV2ZW50IHdvdWxkIGNoYW5nZSBvdGhlciBzYXNoZXMgb3RoZXJ3aXNlKVxuICAgIGlmICh2YWxpZE5ld1Nhc2hTaXplMSAhPT0gY29tcHV0ZWROZXdTYXNoU2l6ZTEpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgaWYgKHZhbGlkTmV3U2FzaFNpemUyICE9PSBjb21wdXRlZE5ld1Nhc2hTaXplMikge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIC8vIHNldCB0aGUgbmV3IGNvbXB1dGVkIHNhc2ggc2l6ZXNcbiAgICB0aGlzLl96b25lLnJ1bigoKSA9PiB7XG4gICAgICBzYXNoMS5mbGV4QmFzaXMgPSBgJHtjb21wdXRlZE5ld1Nhc2hTaXplMX1weGA7XG4gICAgICBzYXNoMi5mbGV4QmFzaXMgPSBgJHtjb21wdXRlZE5ld1Nhc2hTaXplMn1weGA7XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgb25TYXNoUmVzZXQoc2FzaEluZGV4OiBudW1iZXIpOiB2b2lkIHtcbiAgICBjb25zdCBzYXNoMSA9IHRoaXMuc2FzaGVzW3Nhc2hJbmRleF07XG4gICAgY29uc3Qgc2FzaDIgPSB0aGlzLnNhc2hlc1tzYXNoSW5kZXggKyAxXTtcbiAgICBjb25zdCBlcXVhbFNhc2hTaXplID0gKHNhc2gxLmNvbXB1dGVkU2l6ZSArIHNhc2gyLmNvbXB1dGVkU2l6ZSkgLyAyO1xuICAgIGNvbnN0IHBpeGVsVG9GbGV4R3Jvd0ZhY3RvciA9IGNvbXB1dGVQaXhlbFRvRmxleEdyb3dGYWN0b3IodGhpcy5zYXNoZXMpO1xuICAgIGNvbnN0IGFic29sdXRlU2FzaFNpemVzQWZ0ZXJSZXNldCA9IHRoaXMuc2FzaGVzLm1hcCgoc2FzaCwgaW5kZXgpID0+IHtcbiAgICAgIGlmIChpbmRleCA9PT0gc2FzaEluZGV4IHx8IGluZGV4ID09PSBzYXNoSW5kZXggKyAxKSB7XG4gICAgICAgIHJldHVybiBlcXVhbFNhc2hTaXplO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHNhc2guY29tcHV0ZWRTaXplO1xuICAgIH0pO1xuXG4gICAgW3Nhc2gxLCBzYXNoMl0uZm9yRWFjaChzYXNoID0+IHtcbiAgICAgIGlmIChzYXNoLmlzRml4ZWRTaXplKSB7XG4gICAgICAgIHNhc2guZmxleEJhc2lzID0gYCR7ZXF1YWxTYXNoU2l6ZX1weGA7XG4gICAgICB9XG4gICAgICBlbHNlIHtcbiAgICAgICAgc2FzaC5mbGV4R3JvdyA9IHBpeGVsVG9GbGV4R3Jvd0ZhY3RvciAqIGVxdWFsU2FzaFNpemU7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICB0aGlzLnNhc2hTdGFydC5lbWl0KCk7XG4gICAgdGhpcy5zYXNoRW5kLmVtaXQoYWJzb2x1dGVTYXNoU2l6ZXNBZnRlclJlc2V0KTtcbiAgfVxuXG4gIEBIb3N0QmluZGluZygnY2xhc3MuY29sdW1uJylcbiAgcHVibGljIGdldCBpc0NvbHVtbkRpcmVjdGlvbigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5kaXJlY3Rpb24gPT09ICdjb2x1bW4nO1xuICB9XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5yb3cnKVxuICBwdWJsaWMgZ2V0IGlzUm93RGlyZWN0aW9uKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmRpcmVjdGlvbiA9PT0gJ3Jvdyc7XG4gIH1cblxuICBwcml2YXRlIGdldCBzYXNoZXMoKTogU2NpU2FzaERpcmVjdGl2ZVtdIHtcbiAgICByZXR1cm4gdGhpcy5zYXNoZXMkLnZhbHVlO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuX2Rlc3Ryb3kkLm5leHQoKTtcbiAgfVxuXG4gIHByaXZhdGUgdG9QaXhlbCh2YWx1ZTogc3RyaW5nIHwgbnVtYmVyKTogbnVtYmVyIHtcbiAgICBpZiAodHlwZW9mIHZhbHVlID09PSAnbnVtYmVyJykge1xuICAgICAgcmV0dXJuIHZhbHVlO1xuICAgIH1cbiAgICBpZiAodmFsdWUuZW5kc1dpdGgoJyUnKSkge1xuICAgICAgY29uc3QgaG9zdEJvdW5kcyA9IHRoaXMuX2hvc3QubmF0aXZlRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICAgIGNvbnN0IGhvc3RTaXplID0gKHRoaXMuaXNSb3dEaXJlY3Rpb24gPyBob3N0Qm91bmRzLndpZHRoIDogaG9zdEJvdW5kcy5oZWlnaHQpO1xuICAgICAgcmV0dXJuIHBhcnNlSW50KHZhbHVlLCAxMCkgKiBob3N0U2l6ZSAvIDEwMDtcbiAgICB9XG4gICAgcmV0dXJuIHBhcnNlSW50KHZhbHVlLCAxMCk7XG4gIH1cbn1cblxuZnVuY3Rpb24gYmV0d2Vlbih2YWx1ZTogbnVtYmVyLCBtaW5tYXg6IHttaW46IG51bWJlcjsgbWF4OiBudW1iZXJ9KTogbnVtYmVyIHtcbiAgcmV0dXJuIE1hdGgubWluKG1pbm1heC5tYXgsIE1hdGgubWF4KG1pbm1heC5taW4sIHZhbHVlKSk7XG59XG5cbi8qKlxuICogUmV0dXJucyB0aGUgZmFjdG9yIHRvIGNvbXB1dGUgdGhlIGZsZXgtZ3JvdyBwcm9wb3J0aW9uIGZyb20gdGhlIHBpeGVsIHNpemUgb2YgYSBzYXNoLlxuICovXG5mdW5jdGlvbiBjb21wdXRlUGl4ZWxUb0ZsZXhHcm93RmFjdG9yKHNhc2hlczogU2NpU2FzaERpcmVjdGl2ZVtdKTogbnVtYmVyIHtcbiAgY29uc3QgZmxleGlibGVTYXNoZXMgPSBzYXNoZXMuZmlsdGVyKHNhc2ggPT4gIXNhc2guaXNGaXhlZFNpemUpO1xuXG4gIGNvbnN0IHByb3BvcnRpb25TdW0gPSBmbGV4aWJsZVNhc2hlcy5yZWR1Y2UoKHN1bSwgc2FzaCkgPT4gc3VtICsgTnVtYmVyKHNhc2guc2l6ZSksIDApO1xuICBjb25zdCBwaXhlbFN1bSA9IGZsZXhpYmxlU2FzaGVzLnJlZHVjZSgoc3VtLCBzYXNoKSA9PiBzdW0gKyBzYXNoLmNvbXB1dGVkU2l6ZSwgMCk7XG5cbiAgcmV0dXJuIHByb3BvcnRpb25TdW0gLyBwaXhlbFN1bTtcbn1cblxuZnVuY3Rpb24gcHJvdmlkZVNhc2hCb3hBY2Nlc3NvcigpOiBTY2lTYXNoQm94QWNjZXNzb3Ige1xuICBjb25zdCBjb21wb25lbnQgPSBpbmplY3QoU2NpU2FzaGJveENvbXBvbmVudCk7XG5cbiAgcmV0dXJuIG5ldyBjbGFzcyBpbXBsZW1lbnRzIFNjaVNhc2hCb3hBY2Nlc3NvciB7XG5cbiAgICBwdWJsaWMgZ2V0IGRpcmVjdGlvbigpOiAnY29sdW1uJyB8ICdyb3cnIHtcbiAgICAgIHJldHVybiBjb21wb25lbnQuZGlyZWN0aW9uO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgc2FzaGVzJCgpOiBPYnNlcnZhYmxlPFNjaVNhc2hEaXJlY3RpdmVbXT4ge1xuICAgICAgcmV0dXJuIGNvbXBvbmVudC5zYXNoZXMkO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgc2FzaGVzKCk6IFNjaVNhc2hEaXJlY3RpdmVbXSB7XG4gICAgICByZXR1cm4gY29tcG9uZW50LnNhc2hlcyQudmFsdWU7XG4gICAgfVxuICB9O1xufVxuIiwiPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgc2FzaCBvZiBzYXNoZXMkIHwgYXN5bmM7IGluZGV4IGFzIGk7IGZpcnN0IGFzIGZpcnN0OyBsYXN0IGFzIGxhc3Q7XCI+XG4gIDxkaXYgY2xhc3M9XCJzYXNoXCJcbiAgICAgICBbY2xhc3MuZmlyc3RdPVwiZmlyc3RcIlxuICAgICAgIFtjbGFzcy5sYXN0XT1cImxhc3RcIlxuICAgICAgIFtzY2lTYXNoSW5pdGlhbGl6ZXJdPVwic2FzaFwiXG4gICAgICAgW3N0eWxlLmZsZXgtZ3Jvd109XCJzYXNoLmZsZXhHcm93Tm9ybWFsaXplZCQgfCBhc3luY1wiXG4gICAgICAgW3N0eWxlLmZsZXgtc2hyaW5rXT1cInNhc2guZmxleFNocmlua1wiXG4gICAgICAgW3N0eWxlLmZsZXgtYmFzaXNdPVwic2FzaC5mbGV4QmFzaXNcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwic2FzaC5zYXNoVGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cbiAgPC9kaXY+XG5cbiAgPHNjaS1zcGxpdHRlciAqbmdJZj1cIiFsYXN0XCJcbiAgICAgICAgICAgICAgICBzY2lFbGVtZW50UmVmICNzY2lFbGVtZW50UmVmPVwic2NpRWxlbWVudFJlZlwiXG4gICAgICAgICAgICAgICAgW29yaWVudGF0aW9uXT1cImlzUm93RGlyZWN0aW9uID8gJ3ZlcnRpY2FsJyA6ICdob3Jpem9udGFsJ1wiXG4gICAgICAgICAgICAgICAgKHN0YXJ0KT1cIm9uU2FzaFN0YXJ0KClcIlxuICAgICAgICAgICAgICAgIChtb3ZlKT1cIm9uU2FzaChzY2lFbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsIGksICRldmVudClcIlxuICAgICAgICAgICAgICAgIChlbmQpPVwib25TYXNoRW5kKClcIlxuICAgICAgICAgICAgICAgIChyZXNldCk9XCJvblNhc2hSZXNldChpKVwiPlxuICA8L3NjaS1zcGxpdHRlcj5cbjwvbmctY29udGFpbmVyPlxuIl19
286
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2FzaGJveC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zY2lvbi9jb21wb25lbnRzL3Nhc2hib3gvc3JjL3Nhc2hib3guY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2Npb24vY29tcG9uZW50cy9zYXNoYm94L3NyYy9zYXNoYm94LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7OztHQVFHO0FBRUgsT0FBTyxFQUFDLFNBQVMsRUFBRSxlQUFlLEVBQWMsWUFBWSxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBYSxNQUFNLEVBQVksTUFBTSxlQUFlLENBQUM7QUFDckosT0FBTyxFQUFDLFNBQVMsRUFBRSxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUNwRCxPQUFPLEVBQUMsZUFBZSxFQUFjLE9BQU8sRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUMxRCxPQUFPLEVBQUMsb0JBQW9CLEVBQW9CLE1BQU0sNEJBQTRCLENBQUM7QUFDbkYsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sa0JBQWtCLENBQUM7QUFDbEQsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sb0JBQW9CLENBQUM7QUFDdEQsT0FBTyxFQUFDLFNBQVMsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLGdCQUFnQixFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDekUsT0FBTyxFQUFDLDJCQUEyQixFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDekUsT0FBTyxFQUFDLHNCQUFzQixFQUFDLE1BQU0seUJBQXlCLENBQUM7O0FBRS9EOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBb0RHO0FBb0JILE1BQU0sT0FBTyxtQkFBbUI7SUEyQjlCLGdCQUFnQjtJQUNoQixJQUNXLFNBQVMsQ0FB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QW1CLENBQUMsQ0FBQztJQUU5QyxPQUFPLElBQUk7UUFFVCxJQUFXLFNBQVM7WUFDbEIsT0FBTyxTQUFTLENBQUMsU0FBUyxDQUFDO1FBQzdCLENBQUM7UUFFRCxJQUFXLE9BQU87WUFDaEIsT0FBTyxTQUFTLENBQUMsT0FBTyxDQUFDO1FBQzNCLENBQUM7UUFFRCxJQUFXLE1BQU07WUFDZixPQUFPLFNBQVMsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDO1FBQ2pDLENBQUM7S0FDRixDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTgtMjAxOSBTd2lzcyBGZWRlcmFsIFJhaWx3YXlzXG4gKlxuICogVGhpcyBwcm9ncmFtIGFuZCB0aGUgYWNjb21wYW55aW5nIG1hdGVyaWFscyBhcmUgbWFkZVxuICogYXZhaWxhYmxlIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgRWNsaXBzZSBQdWJsaWMgTGljZW5zZSAyLjBcbiAqIHdoaWNoIGlzIGF2YWlsYWJsZSBhdCBodHRwczovL3d3dy5lY2xpcHNlLm9yZy9sZWdhbC9lcGwtMi4wL1xuICpcbiAqICBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogRVBMLTIuMFxuICovXG5cbmltcG9ydCB7Q29tcG9uZW50LCBDb250ZW50Q2hpbGRyZW4sIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSG9zdEJpbmRpbmcsIGluamVjdCwgSW5wdXQsIE5nWm9uZSwgT25EZXN0cm95LCBPdXRwdXQsIFF1ZXJ5TGlzdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge3N0YXJ0V2l0aCwgdGFrZVVudGlsfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge0JlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSwgU3ViamVjdH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge1NjaVNwbGl0dGVyQ29tcG9uZW50LCBTcGxpdHRlck1vdmVFdmVudH0gZnJvbSAnQHNjaW9uL2NvbXBvbmVudHMvc3BsaXR0ZXInO1xuaW1wb3J0IHtTY2lTYXNoRGlyZWN0aXZlfSBmcm9tICcuL3Nhc2guZGlyZWN0aXZlJztcbmltcG9ydCB7U2NpU2FzaEJveEFjY2Vzc29yfSBmcm9tICcuL3Nhc2hib3gtYWNjZXNzb3InO1xuaW1wb3J0IHtBc3luY1BpcGUsIE5nRm9yLCBOZ0lmLCBOZ1RlbXBsYXRlT3V0bGV0fSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtTY2lTYXNoSW5pdGlhbGl6ZXJEaXJlY3RpdmV9IGZyb20gJy4vc2FzaC1pbml0aWFsaXplci5kaXJlY3RpdmUnO1xuaW1wb3J0IHtTY2lFbGVtZW50UmVmRGlyZWN0aXZlfSBmcm9tICcuL2VsZW1lbnQtcmVmLmRpcmVjdGl2ZSc7XG5cbi8qKlxuICogVGhlIDxzY2ktc2FzaGJveD4gaXMgbGlrZSBhIENTUyBmbGV4Ym94IGNvbnRhaW5lciB0aGF0IGxheXMgb3V0IGl0cyBjb250ZW50IGNoaWxkcmVuIChzYXNoZXMpIGluIGEgcm93ICh3aGljaCBpcyBieSBkZWZhdWx0KVxuICogb3IgY29sdW1uIGFycmFuZ2VtZW50IChhcyBzcGVjaWZpZWQgYnkgdGhlIGRpcmVjdGlvbiBwcm9wZXJ0eSkuIEEgc3BsaXR0ZXIgaXMgYWRkZWQgYmV0d2VlbiBlYWNoIGNoaWxkIHRvIGFsbG93IHRoZSB1c2VyIHRvXG4gKiBzaHJpbmsgb3Igc3RyZXRjaCB0aGUgaW5kaXZpZHVhbCBzYXNoZXMuXG4gKlxuICogU2FzaGVzIGFyZSBtb2RlbGxlZCBhcyBjb250ZW50IGNoaWxkcmVuIGluc2lkZSBhIDxuZy10ZW1wbGF0ZT4gZGVjb3JhdGVkIHdpdGggdGhlICdzY2lTYXNoJyBkaXJlY3RpdmUuXG4gKiBBIHNhc2ggY2FuIGhhdmUgYSBmaXhlZCBzaXplIHdpdGggYW4gZXhwbGljaXQgdW5pdCwgb3IgYSB1bml0bGVzcyBwcm9wb3J0aW9uIHRvIGRpc3RpYnV0ZSByZW1haW5pbmcgc3BhY2UuXG4gKiBBIHByb3BvcnRpb25hbCBzYXNoIGhhcyB0aGUgYWJpbGl0eSB0byBncm93IG9yIHNocmluayBpZiBuZWNlc3NhcnkuXG4gKlxuICpcbiAqICMjIyBVc2FnZVxuICpcbiAqIGBgYGh0bWxcbiAqIDxzY2ktc2FzaGJveCBkaXJlY3Rpb249XCJyb3dcIj5cbiAqICAgPG5nLXRlbXBsYXRlIHNjaVNhc2ggc2l6ZT1cIjFcIj5cbiAqICAgICAuLi5cbiAqICAgPC9uZy10ZW1wbGF0ZT5cbiAqXG4gKiAgIDxuZy10ZW1wbGF0ZSBzY2lTYXNoIHNpemU9XCIyXCI+XG4gKiAgICAgLi4uXG4gKiAgIDwvbmctdGVtcGxhdGU+XG4gKlxuICogICA8bmctdGVtcGxhdGUgc2NpU2FzaCBzaXplPVwiMVwiPlxuICogICAgIC4uLlxuICogICA8L25nLXRlbXBsYXRlPlxuICogPC9zY2ktc2FzaGJveD5cbiAqIGBgYFxuICpcbiAqICMjIyBTdHlsaW5nXG4gKlxuICogVG8gY3VzdG9taXplIHRoZSBkZWZhdWx0IGxvb2sgb2YgU0NJT04gY29tcG9uZW50cyBvciBzdXBwb3J0IGRpZmZlcmVudCB0aGVtZXMsIGNvbmZpZ3VyZSB0aGUgYEBzY2lvbi9jb21wb25lbnRzYCBTQ1NTIG1vZHVsZSBpbiBgc3R5bGVzLnNjc3NgLlxuICogVG8gc3R5bGUgYSBzcGVjaWZpYyBgc2NpLXNhc2hib3hgIGNvbXBvbmVudCwgdGhlIGZvbGxvd2luZyBDU1MgdmFyaWFibGVzIGNhbiBiZSBzZXQgZGlyZWN0bHkgb24gdGhlIGNvbXBvbmVudC5cbiAqXG4gKiAtIC0tc2NpLXNhc2hib3gtZ2FwOiBTZXRzIHRoZSBnYXBzIChndXR0ZXJzKSBiZXR3ZWVuIHNhc2hlcy5cbiAqIC0gLS1zY2ktc2FzaGJveC1zcGxpdHRlci1iYWNrZ3JvdW5kLWNvbG9yOiBTZXRzIHRoZSBiYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBzcGxpdHRlci5cbiAqIC0gLS1zY2ktc2FzaGJveC1zcGxpdHRlci1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiBTZXRzIHRoZSBiYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBzcGxpdHRlciB3aGVuIGhvdmVyaW5nIGl0LlxuICogLSAtLXNjaS1zYXNoYm94LXNwbGl0dGVyLXNpemU6IFNldHMgdGhlIHNpemUgb2YgdGhlIHNwbGl0dGVyIGFsb25nIHRoZSBtYWluIGF4aXMuXG4gKiAtIC0tc2NpLXNhc2hib3gtc3BsaXR0ZXItc2l6ZS1ob3ZlcjogU2V0cyB0aGUgc2l6ZSBvZiB0aGUgc3BsaXR0ZXIgYWxvbmcgdGhlIG1haW4gYXhpcyB3aGVuIGhvdmVyaW5nIGl0LlxuICogLSAtLXNjaS1zYXNoYm94LXNwbGl0dGVyLXRvdWNoLXRhcmdldC1zaXplOiBTZXRzIHRoZSB0b3VjaCB0YXJnZXQgc2l6ZSB0byBtb3ZlIHRoZSBzcGxpdHRlciAoYWNjZXNzaWJpbGl0eSkuXG4gKiAtIC0tc2NpLXNhc2hib3gtc3BsaXR0ZXItY3Jvc3MtYXhpcy1zaXplOiBTZXRzIHRoZSBzcGxpdHRlciBzaXplIGFsb25nIHRoZSBjcm9zcyBheGlzLlxuICogLSAtLXNjaS1zYXNoYm94LXNwbGl0dGVyLWJvcmRlci1yYWRpdXM6IFNldHMgdGhlIGJvcmRlciByYWRpdXMgb2YgdGhlIHNwbGl0dGVyLlxuICogLSAtLXNjaS1zYXNoYm94LXNwbGl0dGVyLW9wYWNpdHktYWN0aXZlOiBTZXRzIHRoZSBvcGFjaXR5IG9mIHRoZSBzcGxpdHRlciB3aGlsZSB0aGUgdXNlciBtb3ZlcyB0aGUgc3BsaXR0ZXIuXG4gKiAtIC0tc2NpLXNhc2hib3gtc3BsaXR0ZXItb3BhY2l0eS1ob3ZlcjogU2V0cyB0aGUgb3BhY2l0eSBvZiB0aGUgc3BsaXR0ZXIgd2hlbiBob3ZlcmluZyBpdC5cbiAqXG4gKiBFeGFtcGxlOlxuICpcbiAqIGBgYHNjc3NcbiAqIHNjaS1zYXNoYm94IHtcbiAqICAgLS1zY2ktc2FzaGJveC1zcGxpdHRlci1iYWNrZ3JvdW5kLWNvbG9yOiBibGFjaztcbiAqICAgLS1zY2ktc2FzaGJveC1zcGxpdHRlci1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiBibGFjaztcbiAqIH1cbiAqIGBgYFxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzY2ktc2FzaGJveCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9zYXNoYm94LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vc2FzaGJveC5jb21wb25lbnQuc2NzcyddLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgTmdJZixcbiAgICBOZ0ZvcixcbiAgICBBc3luY1BpcGUsXG4gICAgTmdUZW1wbGF0ZU91dGxldCxcbiAgICBTY2lTYXNoSW5pdGlhbGl6ZXJEaXJlY3RpdmUsXG4gICAgU2NpU3BsaXR0ZXJDb21wb25lbnQsXG4gICAgU2NpRWxlbWVudFJlZkRpcmVjdGl2ZSxcbiAgXSxcbiAgcHJvdmlkZXJzOiBbe1xuICAgIHByb3ZpZGU6IFNjaVNhc2hCb3hBY2Nlc3NvcixcbiAgICB1c2VGYWN0b3J5OiBwcm92aWRlU2FzaEJveEFjY2Vzc29yLFxuICB9XSxcbn0pXG5leHBvcnQgY2xhc3MgU2NpU2FzaGJveENvbXBvbmVudCBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG5cbiAgcHJpdmF0ZSBfZGVzdHJveSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIHB1YmxpYyBzYXNoZXMkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxTY2lTYXNoRGlyZWN0aXZlW10+KFtdKTtcblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLnNhc2hpbmcnKVxuICBwdWJsaWMgc2FzaGluZyA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgaWYgdG8gbGF5IG91dCBzYXNoZXMgaW4gYSByb3cgKHdoaWNoIGlzIGJ5IGRlZmF1bHQpIG9yIGNvbHVtbiBhcnJhbmdlbWVudC5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBkaXJlY3Rpb246ICdjb2x1bW4nIHwgJ3JvdycgPSAncm93JztcblxuICAvKipcbiAgICogRW1pdHMgd2hlbiBzdGFydCBzYXNoaW5nLlxuICAgKi9cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBzYXNoU3RhcnQgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgLyoqXG4gICAqIEVtaXRzIHRoZSBhYnNvbHV0ZSBzYXNoIHNpemVzIChweCkgd2hlbiBmaW5pc2hlZCBzYXNoaW5nLlxuICAgKi9cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBzYXNoRW5kID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXJbXT4oKTtcblxuICAvKiogQGludGVybmFsICovXG4gIEBDb250ZW50Q2hpbGRyZW4oU2NpU2FzaERpcmVjdGl2ZSlcbiAgcHVibGljIHNldCBzZXRTYXNoZXMocXVlcnlMaXN0OiBRdWVyeUxpc3Q8U2NpU2FzaERpcmVjdGl2ZT4pIHtcbiAgICBxdWVyeUxpc3QuY2hhbmdlc1xuICAgICAgLnBpcGUoXG4gICAgICAgIHN0YXJ0V2l0aChxdWVyeUxpc3QpLFxuICAgICAgICB0YWtlVW50aWwodGhpcy5fZGVzdHJveSQpLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgoc2FzaGVzOiBRdWVyeUxpc3Q8U2NpU2FzaERpcmVjdGl2ZT4pID0+IHtcbiAgICAgICAgdGhpcy5zYXNoZXMkLm5leHQoc2FzaGVzLnRvQXJyYXkoKSk7XG4gICAgICB9KTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgX2hvc3Q6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LCBwcml2YXRlIF96b25lOiBOZ1pvbmUpIHtcbiAgfVxuXG4gIHB1YmxpYyBvblNhc2hTdGFydCgpOiB2b2lkIHtcbiAgICB0aGlzLnNhc2hpbmcgPSB0cnVlO1xuICAgIHRoaXMuc2FzaFN0YXJ0LmVtaXQoKTtcblxuICAgIC8vIHNldCB0aGUgZWZmZWN0aXZlIHNhc2ggc2l6ZSBhcyB0aGUgZmxleC1iYXNpcyBmb3Igbm9uLWZpeGVkIHNhc2hlcyAoYXMgc2FzaGluZyBvcGVyYXRlcyBvbiBwaXhlbCBkZWx0YXMpXG4gICAgdGhpcy5zYXNoZXMuZm9yRWFjaChzYXNoID0+IHtcbiAgICAgIGlmICghc2FzaC5pc0ZpeGVkU2l6ZSkge1xuICAgICAgICBzYXNoLmZsZXhHcm93ID0gMDtcbiAgICAgICAgc2FzaC5mbGV4U2hyaW5rID0gMDtcbiAgICAgICAgc2FzaC5mbGV4QmFzaXMgPSBgJHtzYXNoLmNvbXB1dGVkU2l6ZX1weGA7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgb25TYXNoRW5kKCk6IHZvaWQge1xuICAgIHRoaXMuc2FzaGluZyA9IGZhbHNlO1xuXG4gICAgLy8gdW5zZXQgdGhlIGZsZXgtYmFzaXMgZm9yIG5vbi1maXhlZCBzYXNoZXMgYW5kIHNldCB0aGUgZmxleC1ncm93IGFjY29yZGluZ2x5XG4gICAgY29uc3QgcGl4ZWxUb0ZsZXhHcm93RmFjdG9yID0gY29tcHV0ZVBpeGVsVG9GbGV4R3Jvd0ZhY3Rvcih0aGlzLnNhc2hlcyk7XG4gICAgY29uc3QgYWJzb2x1dGVTYXNoU2l6ZXMgPSB0aGlzLnNhc2hlcy5tYXAoc2FzaCA9PiBzYXNoLmNvbXB1dGVkU2l6ZSk7XG5cbiAgICB0aGlzLnNhc2hlcy5mb3JFYWNoKChzYXNoLCBpKSA9PiB7XG4gICAgICBpZiAoIXNhc2guaXNGaXhlZFNpemUpIHtcbiAgICAgICAgc2FzaC5mbGV4R3JvdyA9IHBpeGVsVG9GbGV4R3Jvd0ZhY3RvciAqIGFic29sdXRlU2FzaFNpemVzW2ldO1xuICAgICAgICBzYXNoLmZsZXhTaHJpbmsgPSAxO1xuICAgICAgICBzYXNoLmZsZXhCYXNpcyA9ICcwJztcbiAgICAgIH1cbiAgICB9KTtcbiAgICB0aGlzLnNhc2hFbmQuZW1pdChhYnNvbHV0ZVNhc2hTaXplcyk7XG4gIH1cblxuICBwdWJsaWMgb25TYXNoKHNwbGl0dGVyOiBIVE1MRWxlbWVudCwgc2FzaEluZGV4OiBudW1iZXIsIG1vdmVFdmVudDogU3BsaXR0ZXJNb3ZlRXZlbnQpOiB2b2lkIHtcbiAgICBjb25zdCBkaXN0YW5jZSA9IG1vdmVFdmVudC5kaXN0YW5jZTtcbiAgICBpZiAoZGlzdGFuY2UgPT09IDApIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBOZ1pvbmUuYXNzZXJ0Tm90SW5Bbmd1bGFyWm9uZSgpO1xuXG4gICAgLy8gY29tcHV0ZSB0aGUgc3BsaXR0ZXIgcG9zaXRpb25cbiAgICBjb25zdCBzcGxpdHRlclJlY3QgPSBzcGxpdHRlci5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICBjb25zdCBzcGxpdHRlclN0YXJ0ID0gKHRoaXMuaXNSb3dEaXJlY3Rpb24gPyBzcGxpdHRlclJlY3QubGVmdCA6IHNwbGl0dGVyUmVjdC50b3ApO1xuICAgIGNvbnN0IHNwbGl0dGVyRW5kID0gKHRoaXMuaXNSb3dEaXJlY3Rpb24gPyBzcGxpdHRlclJlY3QubGVmdCArIHNwbGl0dGVyUmVjdC53aWR0aCA6IHNwbGl0dGVyUmVjdC50b3AgKyBzcGxpdHRlclJlY3QuaGVpZ2h0KTtcblxuICAgIC8vIGlnbm9yZSB0aGUgZXZlbnQgaWYgb3V0c2lkZSBvZiB0aGUgc3BsaXR0ZXIncyBhY3Rpb24gc2NvcGVcbiAgICBjb25zdCBldmVudFBvcyA9IG1vdmVFdmVudC5wb3NpdGlvbi5jbGllbnRQb3M7XG4gICAgLy8gaS5lLiB0aGUgc2FzaCBzaG91bGQgbm90IGdyb3cgaWYgbW92ZWQgdGhlIG1vdXNlIHBvaW50ZXIgYmV5b25kIHRoZSBsZWZ0IGJvdW5kcyBvZiB0aGUgc2FzaCwgYW5kIGlmIG5vdyBtb3ZpbmcgdGhlIG1vdXNlIHBvaW50ZXIgYmFjayB0b3dhcmQgdGhlIGN1cnJlbnQgc2FzaC5cbiAgICBpZiAoZGlzdGFuY2UgPiAwICYmIGV2ZW50UG9zIDwgc3BsaXR0ZXJTdGFydCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIC8vIGkuZS4gdGhlIHNhc2ggc2hvdWxkIG5vdCBzaHJpbmsgaWYgbW92ZWQgdGhlIG1vdXNlIHBvaW50ZXIgYmV5b25kIHRoZSByaWdodCBib3VuZHMgb2YgdGhlIHNhc2gsIGFuZCBpZiBub3cgbW92aW5nIHRoZSBtb3VzZSBwb2ludGVyIGJhY2sgdG93YXJkIHRoZSBjdXJyZW50IHNhc2guXG4gICAgaWYgKGRpc3RhbmNlIDwgMCAmJiBldmVudFBvcyA+IHNwbGl0dGVyRW5kKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgLy8gY29tcHV0ZSB0aGUgbmV3IHNhc2ggc2l6ZXNcbiAgICBjb25zdCBzYXNoMSA9IHRoaXMuc2FzaGVzW3Nhc2hJbmRleF07XG4gICAgY29uc3Qgc2FzaDIgPSB0aGlzLnNhc2hlc1tzYXNoSW5kZXggKyAxXTtcblxuICAgIGNvbnN0IHNhc2hTaXplMSA9IHNhc2gxLmNvbXB1dGVkU2l6ZTtcbiAgICBjb25zdCBzYXNoU2l6ZTIgPSBzYXNoMi5jb21wdXRlZFNpemU7XG4gICAgY29uc3QgbWF4U2FzaFNpemUgPSBzYXNoU2l6ZTEgKyBzYXNoU2l6ZTI7XG4gICAgY29uc3QgY29tcHV0ZWROZXdTYXNoU2l6ZTEgPSBNYXRoLnJvdW5kKHNhc2hTaXplMSArIGRpc3RhbmNlKTtcbiAgICBjb25zdCBjb21wdXRlZE5ld1Nhc2hTaXplMiA9IE1hdGgucm91bmQoc2FzaFNpemUyIC0gZGlzdGFuY2UpO1xuXG4gICAgaWYgKHNhc2gxLm1pblNpemUgIT09IHVuZGVmaW5lZCAmJiBkaXN0YW5jZSA8IDAgJiYgY29tcHV0ZWROZXdTYXNoU2l6ZTEgPCB0aGlzLnRvUGl4ZWwoc2FzaDEubWluU2l6ZSkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgaWYgKHNhc2gyLm1pblNpemUgIT09IHVuZGVmaW5lZCAmJiBkaXN0YW5jZSA+IDAgJiYgY29tcHV0ZWROZXdTYXNoU2l6ZTIgPCB0aGlzLnRvUGl4ZWwoc2FzaDIubWluU2l6ZSkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCB2YWxpZE5ld1Nhc2hTaXplMSA9IGJldHdlZW4oY29tcHV0ZWROZXdTYXNoU2l6ZTEsIHttaW46IDAsIG1heDogbWF4U2FzaFNpemV9KTtcbiAgICBjb25zdCB2YWxpZE5ld1Nhc2hTaXplMiA9IGJldHdlZW4oY29tcHV0ZWROZXdTYXNoU2l6ZTIsIHttaW46IDAsIG1heDogbWF4U2FzaFNpemV9KTtcblxuICAgIC8vIGNvbnRpbnVlIG9ubHkgaWYgYm90aCBzYXNoZXMgYWRqYWNlbnQgdG8gdGhlIHNwbGl0dGVyIGNoYW5nZSB0aGVpciBzaXplIChhcyB0aGUgZXZlbnQgd291bGQgY2hhbmdlIG90aGVyIHNhc2hlcyBvdGhlcndpc2UpXG4gICAgaWYgKHZhbGlkTmV3U2FzaFNpemUxICE9PSBjb21wdXRlZE5ld1Nhc2hTaXplMSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBpZiAodmFsaWROZXdTYXNoU2l6ZTIgIT09IGNvbXB1dGVkTmV3U2FzaFNpemUyKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgLy8gc2V0IHRoZSBuZXcgY29tcHV0ZWQgc2FzaCBzaXplc1xuICAgIHRoaXMuX3pvbmUucnVuKCgpID0+IHtcbiAgICAgIHNhc2gxLmZsZXhCYXNpcyA9IGAke2NvbXB1dGVkTmV3U2FzaFNpemUxfXB4YDtcbiAgICAgIHNhc2gyLmZsZXhCYXNpcyA9IGAke2NvbXB1dGVkTmV3U2FzaFNpemUyfXB4YDtcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBvblNhc2hSZXNldChzYXNoSW5kZXg6IG51bWJlcik6IHZvaWQge1xuICAgIGNvbnN0IHNhc2gxID0gdGhpcy5zYXNoZXNbc2FzaEluZGV4XTtcbiAgICBjb25zdCBzYXNoMiA9IHRoaXMuc2FzaGVzW3Nhc2hJbmRleCArIDFdO1xuICAgIGNvbnN0IGVxdWFsU2FzaFNpemUgPSAoc2FzaDEuY29tcHV0ZWRTaXplICsgc2FzaDIuY29tcHV0ZWRTaXplKSAvIDI7XG4gICAgY29uc3QgcGl4ZWxUb0ZsZXhHcm93RmFjdG9yID0gY29tcHV0ZVBpeGVsVG9GbGV4R3Jvd0ZhY3Rvcih0aGlzLnNhc2hlcyk7XG4gICAgY29uc3QgYWJzb2x1dGVTYXNoU2l6ZXNBZnRlclJlc2V0ID0gdGhpcy5zYXNoZXMubWFwKChzYXNoLCBpbmRleCkgPT4ge1xuICAgICAgaWYgKGluZGV4ID09PSBzYXNoSW5kZXggfHwgaW5kZXggPT09IHNhc2hJbmRleCArIDEpIHtcbiAgICAgICAgcmV0dXJuIGVxdWFsU2FzaFNpemU7XG4gICAgICB9XG4gICAgICByZXR1cm4gc2FzaC5jb21wdXRlZFNpemU7XG4gICAgfSk7XG5cbiAgICBbc2FzaDEsIHNhc2gyXS5mb3JFYWNoKHNhc2ggPT4ge1xuICAgICAgaWYgKHNhc2guaXNGaXhlZFNpemUpIHtcbiAgICAgICAgc2FzaC5mbGV4QmFzaXMgPSBgJHtlcXVhbFNhc2hTaXplfXB4YDtcbiAgICAgIH1cbiAgICAgIGVsc2Uge1xuICAgICAgICBzYXNoLmZsZXhHcm93ID0gcGl4ZWxUb0ZsZXhHcm93RmFjdG9yICogZXF1YWxTYXNoU2l6ZTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIHRoaXMuc2FzaFN0YXJ0LmVtaXQoKTtcbiAgICB0aGlzLnNhc2hFbmQuZW1pdChhYnNvbHV0ZVNhc2hTaXplc0FmdGVyUmVzZXQpO1xuICB9XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5jb2x1bW4nKVxuICBwdWJsaWMgZ2V0IGlzQ29sdW1uRGlyZWN0aW9uKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmRpcmVjdGlvbiA9PT0gJ2NvbHVtbic7XG4gIH1cblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLnJvdycpXG4gIHB1YmxpYyBnZXQgaXNSb3dEaXJlY3Rpb24oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuZGlyZWN0aW9uID09PSAncm93JztcbiAgfVxuXG4gIHByaXZhdGUgZ2V0IHNhc2hlcygpOiBTY2lTYXNoRGlyZWN0aXZlW10ge1xuICAgIHJldHVybiB0aGlzLnNhc2hlcyQudmFsdWU7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fZGVzdHJveSQubmV4dCgpO1xuICB9XG5cbiAgcHJpdmF0ZSB0b1BpeGVsKHZhbHVlOiBzdHJpbmcgfCBudW1iZXIpOiBudW1iZXIge1xuICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICdudW1iZXInKSB7XG4gICAgICByZXR1cm4gdmFsdWU7XG4gICAgfVxuICAgIGlmICh2YWx1ZS5lbmRzV2l0aCgnJScpKSB7XG4gICAgICBjb25zdCBob3N0Qm91bmRzID0gdGhpcy5faG9zdC5uYXRpdmVFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgICAgY29uc3QgaG9zdFNpemUgPSAodGhpcy5pc1Jvd0RpcmVjdGlvbiA/IGhvc3RCb3VuZHMud2lkdGggOiBob3N0Qm91bmRzLmhlaWdodCk7XG4gICAgICByZXR1cm4gcGFyc2VJbnQodmFsdWUsIDEwKSAqIGhvc3RTaXplIC8gMTAwO1xuICAgIH1cbiAgICByZXR1cm4gcGFyc2VJbnQodmFsdWUsIDEwKTtcbiAgfVxufVxuXG5mdW5jdGlvbiBiZXR3ZWVuKHZhbHVlOiBudW1iZXIsIG1pbm1heDoge21pbjogbnVtYmVyOyBtYXg6IG51bWJlcn0pOiBudW1iZXIge1xuICByZXR1cm4gTWF0aC5taW4obWlubWF4Lm1heCwgTWF0aC5tYXgobWlubWF4Lm1pbiwgdmFsdWUpKTtcbn1cblxuLyoqXG4gKiBSZXR1cm5zIHRoZSBmYWN0b3IgdG8gY29tcHV0ZSB0aGUgZmxleC1ncm93IHByb3BvcnRpb24gZnJvbSB0aGUgcGl4ZWwgc2l6ZSBvZiBhIHNhc2guXG4gKi9cbmZ1bmN0aW9uIGNvbXB1dGVQaXhlbFRvRmxleEdyb3dGYWN0b3Ioc2FzaGVzOiBTY2lTYXNoRGlyZWN0aXZlW10pOiBudW1iZXIge1xuICBjb25zdCBmbGV4aWJsZVNhc2hlcyA9IHNhc2hlcy5maWx0ZXIoc2FzaCA9PiAhc2FzaC5pc0ZpeGVkU2l6ZSk7XG5cbiAgY29uc3QgcHJvcG9ydGlvblN1bSA9IGZsZXhpYmxlU2FzaGVzLnJlZHVjZSgoc3VtLCBzYXNoKSA9PiBzdW0gKyBOdW1iZXIoc2FzaC5zaXplKSwgMCk7XG4gIGNvbnN0IHBpeGVsU3VtID0gZmxleGlibGVTYXNoZXMucmVkdWNlKChzdW0sIHNhc2gpID0+IHN1bSArIHNhc2guY29tcHV0ZWRTaXplLCAwKTtcblxuICByZXR1cm4gcHJvcG9ydGlvblN1bSAvIHBpeGVsU3VtO1xufVxuXG5mdW5jdGlvbiBwcm92aWRlU2FzaEJveEFjY2Vzc29yKCk6IFNjaVNhc2hCb3hBY2Nlc3NvciB7XG4gIGNvbnN0IGNvbXBvbmVudCA9IGluamVjdChTY2lTYXNoYm94Q29tcG9uZW50KTtcblxuICByZXR1cm4gbmV3IGNsYXNzIGltcGxlbWVudHMgU2NpU2FzaEJveEFjY2Vzc29yIHtcblxuICAgIHB1YmxpYyBnZXQgZGlyZWN0aW9uKCk6ICdjb2x1bW4nIHwgJ3Jvdycge1xuICAgICAgcmV0dXJuIGNvbXBvbmVudC5kaXJlY3Rpb247XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBzYXNoZXMkKCk6IE9ic2VydmFibGU8U2NpU2FzaERpcmVjdGl2ZVtdPiB7XG4gICAgICByZXR1cm4gY29tcG9uZW50LnNhc2hlcyQ7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBzYXNoZXMoKTogU2NpU2FzaERpcmVjdGl2ZVtdIHtcbiAgICAgIHJldHVybiBjb21wb25lbnQuc2FzaGVzJC52YWx1ZTtcbiAgICB9XG4gIH07XG59XG4iLCI8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBzYXNoIG9mIHNhc2hlcyQgfCBhc3luYzsgaW5kZXggYXMgaTsgZmlyc3QgYXMgZmlyc3Q7IGxhc3QgYXMgbGFzdDtcIj5cbiAgPGRpdiBjbGFzcz1cInNhc2hcIlxuICAgICAgIFtjbGFzcy5maXJzdF09XCJmaXJzdFwiXG4gICAgICAgW2NsYXNzLmxhc3RdPVwibGFzdFwiXG4gICAgICAgW3NjaVNhc2hJbml0aWFsaXplcl09XCJzYXNoXCJcbiAgICAgICBbc3R5bGUuZmxleC1ncm93XT1cInNhc2guZmxleEdyb3dOb3JtYWxpemVkJCB8IGFzeW5jXCJcbiAgICAgICBbc3R5bGUuZmxleC1zaHJpbmtdPVwic2FzaC5mbGV4U2hyaW5rXCJcbiAgICAgICBbc3R5bGUuZmxleC1iYXNpc109XCJzYXNoLmZsZXhCYXNpc1wiPlxuICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJzYXNoLnNhc2hUZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxuICA8L2Rpdj5cblxuICA8c2NpLXNwbGl0dGVyICpuZ0lmPVwiIWxhc3RcIlxuICAgICAgICAgICAgICAgIHNjaUVsZW1lbnRSZWYgI3NjaUVsZW1lbnRSZWY9XCJzY2lFbGVtZW50UmVmXCJcbiAgICAgICAgICAgICAgICBbb3JpZW50YXRpb25dPVwiaXNSb3dEaXJlY3Rpb24gPyAndmVydGljYWwnIDogJ2hvcml6b250YWwnXCJcbiAgICAgICAgICAgICAgICAoc3RhcnQpPVwib25TYXNoU3RhcnQoKVwiXG4gICAgICAgICAgICAgICAgKG1vdmUpPVwib25TYXNoKHNjaUVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgaSwgJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgKGVuZCk9XCJvblNhc2hFbmQoKVwiXG4gICAgICAgICAgICAgICAgKHJlc2V0KT1cIm9uU2FzaFJlc2V0KGkpXCI+XG4gIDwvc2NpLXNwbGl0dGVyPlxuPC9uZy1jb250YWluZXI+XG4iXX0=
@@ -33,13 +33,13 @@ import * as i0 from "@angular/core";
33
33
  * ```
34
34
  */
35
35
  export class SciSashboxModule {
36
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: SciSashboxModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
37
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.2", ngImport: i0, type: SciSashboxModule, imports: [SciSashboxComponent,
36
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: SciSashboxModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
37
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.0.1", ngImport: i0, type: SciSashboxModule, imports: [SciSashboxComponent,
38
38
  SciSashDirective], exports: [SciSashboxComponent,
39
39
  SciSashDirective] }); }
40
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: SciSashboxModule, imports: [SciSashboxComponent] }); }
40
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: SciSashboxModule, imports: [SciSashboxComponent] }); }
41
41
  }
42
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: SciSashboxModule, decorators: [{
42
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: SciSashboxModule, decorators: [{
43
43
  type: NgModule,
44
44
  args: [{
45
45
  imports: [
@@ -188,12 +188,12 @@ export class SciSplitterComponent {
188
188
  ngOnDestroy() {
189
189
  this._destroy$.next();
190
190
  }
191
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: SciSplitterComponent, deps: [{ token: i0.NgZone }, { token: i0.ChangeDetectorRef }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Component }); }
192
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.2", type: SciSplitterComponent, isStandalone: true, selector: "sci-splitter", inputs: { orientation: "orientation" }, outputs: { start: "start", move: "move", end: "end", reset: "reset" }, host: { properties: { "class.moving": "this.moving", "class.vertical": "this.isVertical", "class.horizontal": "this.isHorizontal", "style.cursor": "this.splitterCursor" } }, viewQueries: [{ propertyName: "touchTargetElementRef", first: true, predicate: ["touch_target"], descendants: true, static: true }], ngImport: i0, template: "<div #touch_target class=\"touch-target\">\n <div class=\"handle\"></div>\n</div>\n", styles: ["@charset \"UTF-8\";:host{--\\275sci-splitter-background-color: var(--sci-splitter-background-color, var(--sci-splitter-bgcolor, #d2d2d2));--\\275sci-splitter-background-color-hover: var(--sci-splitter-background-color-hover, var(--sci-splitter-bgcolor_hover, var(--\\275sci-splitter-background-color)));--\\275sci-splitter-size: var(--sci-splitter-size, 1px);--\\275sci-splitter-size-hover: var(--sci-splitter-size-hover, var(--sci-splitter-size_hover, 8px));--\\275sci-splitter-touch-target-size: var(--sci-splitter-touch-target-size, 15px);--\\275sci-splitter-cross-axis-size: var(--sci-splitter-cross-axis-size, 100%);--\\275sci-splitter-border-radius: var(--sci-splitter-border-radius, 0);--\\275sci-splitter-opacity-active: var(--sci-splitter-opacity-active, var(--sci-splitter-opacity_active, 1));--\\275sci-splitter-opacity-hover: var(--sci-splitter-opacity-hover, var(--sci-splitter-opacity_hover, .3));display:grid;position:relative;background-color:var(--\\275sci-splitter-background-color);border-radius:var(--\\275sci-splitter-border-radius);place-items:center;align-self:center}:host>div.touch-target{position:absolute;display:grid;place-items:center;pointer-events:auto}:host>div.touch-target>div.handle{position:absolute;background-color:var(--\\275sci-splitter-background-color);border-radius:var(--\\275sci-splitter-border-radius);opacity:var(--\\275sci-splitter-opacity-hover);transition-property:width,height;transition-timing-function:ease-in;transition-duration:75ms}:host.vertical{width:var(--\\275sci-splitter-size);height:var(--\\275sci-splitter-cross-axis-size)}:host.vertical>div.touch-target{width:var(--\\275sci-splitter-touch-target-size);height:100%}:host.vertical>div.touch-target>div.handle{width:var(--\\275sci-splitter-size);height:100%}:host.horizontal{height:var(--\\275sci-splitter-size);width:var(--\\275sci-splitter-cross-axis-size)}:host.horizontal>div.touch-target{width:100%;height:var(--\\275sci-splitter-touch-target-size)}:host.horizontal>div.touch-target>div.handle{width:100%;height:var(--\\275sci-splitter-size)}:host>div.touch-target:active>div.handle{opacity:var(--\\275sci-splitter-opacity-active)}:host.vertical.moving>div.touch-target>div.handle,:host.vertical>div.touch-target:hover>div.handle{background-color:var(--\\275sci-splitter-background-color-hover);width:var(--\\275sci-splitter-size-hover)}:host.horizontal.moving>div.touch-target>div.handle,:host.horizontal>div.touch-target:hover>div.handle{background-color:var(--\\275sci-splitter-background-color-hover);height:var(--\\275sci-splitter-size-hover)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
191
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: SciSplitterComponent, deps: [{ token: i0.NgZone }, { token: i0.ChangeDetectorRef }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Component }); }
192
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.1", type: SciSplitterComponent, isStandalone: true, selector: "sci-splitter", inputs: { orientation: "orientation" }, outputs: { start: "start", move: "move", end: "end", reset: "reset" }, host: { properties: { "class.moving": "this.moving", "class.vertical": "this.isVertical", "class.horizontal": "this.isHorizontal", "style.cursor": "this.splitterCursor" } }, viewQueries: [{ propertyName: "touchTargetElementRef", first: true, predicate: ["touch_target"], descendants: true, static: true }], ngImport: i0, template: "<div #touch_target class=\"touch-target\">\n <div class=\"handle\"></div>\n</div>\n", styles: [":host{display:grid;position:relative;background-color:var(--sci-splitter-background-color);border-radius:var(--sci-splitter-border-radius);place-items:center;align-self:center}:host>div.touch-target{position:absolute;display:grid;place-items:center;pointer-events:auto}:host>div.touch-target>div.handle{position:absolute;background-color:var(--sci-splitter-background-color);border-radius:var(--sci-splitter-border-radius);opacity:var(--sci-splitter-opacity-hover);transition-property:width,height;transition-timing-function:ease-in;transition-duration:75ms}:host.vertical{width:var(--sci-splitter-size);height:var(--sci-splitter-cross-axis-size)}:host.vertical>div.touch-target{width:var(--sci-splitter-touch-target-size);height:100%}:host.vertical>div.touch-target>div.handle{width:var(--sci-splitter-size);height:100%}:host.horizontal{height:var(--sci-splitter-size);width:var(--sci-splitter-cross-axis-size)}:host.horizontal>div.touch-target{width:100%;height:var(--sci-splitter-touch-target-size)}:host.horizontal>div.touch-target>div.handle{width:100%;height:var(--sci-splitter-size)}:host>div.touch-target:active>div.handle{opacity:var(--sci-splitter-opacity-active)}:host.vertical.moving>div.touch-target>div.handle,:host.vertical>div.touch-target:hover>div.handle{background-color:var(--sci-splitter-background-color-hover);width:var(--sci-splitter-size-hover)}:host.horizontal.moving>div.touch-target>div.handle,:host.horizontal>div.touch-target:hover>div.handle{background-color:var(--sci-splitter-background-color-hover);height:var(--sci-splitter-size-hover)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
193
193
  }
194
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: SciSplitterComponent, decorators: [{
194
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: SciSplitterComponent, decorators: [{
195
195
  type: Component,
196
- args: [{ selector: 'sci-splitter', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, template: "<div #touch_target class=\"touch-target\">\n <div class=\"handle\"></div>\n</div>\n", styles: ["@charset \"UTF-8\";:host{--\\275sci-splitter-background-color: var(--sci-splitter-background-color, var(--sci-splitter-bgcolor, #d2d2d2));--\\275sci-splitter-background-color-hover: var(--sci-splitter-background-color-hover, var(--sci-splitter-bgcolor_hover, var(--\\275sci-splitter-background-color)));--\\275sci-splitter-size: var(--sci-splitter-size, 1px);--\\275sci-splitter-size-hover: var(--sci-splitter-size-hover, var(--sci-splitter-size_hover, 8px));--\\275sci-splitter-touch-target-size: var(--sci-splitter-touch-target-size, 15px);--\\275sci-splitter-cross-axis-size: var(--sci-splitter-cross-axis-size, 100%);--\\275sci-splitter-border-radius: var(--sci-splitter-border-radius, 0);--\\275sci-splitter-opacity-active: var(--sci-splitter-opacity-active, var(--sci-splitter-opacity_active, 1));--\\275sci-splitter-opacity-hover: var(--sci-splitter-opacity-hover, var(--sci-splitter-opacity_hover, .3));display:grid;position:relative;background-color:var(--\\275sci-splitter-background-color);border-radius:var(--\\275sci-splitter-border-radius);place-items:center;align-self:center}:host>div.touch-target{position:absolute;display:grid;place-items:center;pointer-events:auto}:host>div.touch-target>div.handle{position:absolute;background-color:var(--\\275sci-splitter-background-color);border-radius:var(--\\275sci-splitter-border-radius);opacity:var(--\\275sci-splitter-opacity-hover);transition-property:width,height;transition-timing-function:ease-in;transition-duration:75ms}:host.vertical{width:var(--\\275sci-splitter-size);height:var(--\\275sci-splitter-cross-axis-size)}:host.vertical>div.touch-target{width:var(--\\275sci-splitter-touch-target-size);height:100%}:host.vertical>div.touch-target>div.handle{width:var(--\\275sci-splitter-size);height:100%}:host.horizontal{height:var(--\\275sci-splitter-size);width:var(--\\275sci-splitter-cross-axis-size)}:host.horizontal>div.touch-target{width:100%;height:var(--\\275sci-splitter-touch-target-size)}:host.horizontal>div.touch-target>div.handle{width:100%;height:var(--\\275sci-splitter-size)}:host>div.touch-target:active>div.handle{opacity:var(--\\275sci-splitter-opacity-active)}:host.vertical.moving>div.touch-target>div.handle,:host.vertical>div.touch-target:hover>div.handle{background-color:var(--\\275sci-splitter-background-color-hover);width:var(--\\275sci-splitter-size-hover)}:host.horizontal.moving>div.touch-target>div.handle,:host.horizontal>div.touch-target:hover>div.handle{background-color:var(--\\275sci-splitter-background-color-hover);height:var(--\\275sci-splitter-size-hover)}\n"] }]
196
+ args: [{ selector: 'sci-splitter', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, template: "<div #touch_target class=\"touch-target\">\n <div class=\"handle\"></div>\n</div>\n", styles: [":host{display:grid;position:relative;background-color:var(--sci-splitter-background-color);border-radius:var(--sci-splitter-border-radius);place-items:center;align-self:center}:host>div.touch-target{position:absolute;display:grid;place-items:center;pointer-events:auto}:host>div.touch-target>div.handle{position:absolute;background-color:var(--sci-splitter-background-color);border-radius:var(--sci-splitter-border-radius);opacity:var(--sci-splitter-opacity-hover);transition-property:width,height;transition-timing-function:ease-in;transition-duration:75ms}:host.vertical{width:var(--sci-splitter-size);height:var(--sci-splitter-cross-axis-size)}:host.vertical>div.touch-target{width:var(--sci-splitter-touch-target-size);height:100%}:host.vertical>div.touch-target>div.handle{width:var(--sci-splitter-size);height:100%}:host.horizontal{height:var(--sci-splitter-size);width:var(--sci-splitter-cross-axis-size)}:host.horizontal>div.touch-target{width:100%;height:var(--sci-splitter-touch-target-size)}:host.horizontal>div.touch-target>div.handle{width:100%;height:var(--sci-splitter-size)}:host>div.touch-target:active>div.handle{opacity:var(--sci-splitter-opacity-active)}:host.vertical.moving>div.touch-target>div.handle,:host.vertical>div.touch-target:hover>div.handle{background-color:var(--sci-splitter-background-color-hover);width:var(--sci-splitter-size-hover)}:host.horizontal.moving>div.touch-target>div.handle,:host.horizontal>div.touch-target:hover>div.handle{background-color:var(--sci-splitter-background-color-hover);height:var(--sci-splitter-size-hover)}\n"] }]
197
197
  }], ctorParameters: () => [{ type: i0.NgZone }, { type: i0.ChangeDetectorRef }, { type: Document, decorators: [{
198
198
  type: Inject,
199
199
  args: [DOCUMENT]
@@ -223,4 +223,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImpor
223
223
  type: ViewChild,
224
224
  args: ['touch_target', { static: true }]
225
225
  }] } });
226
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3BsaXR0ZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2Npb24vY29tcG9uZW50cy9zcGxpdHRlci9zcmMvc3BsaXR0ZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2Npb24vY29tcG9uZW50cy9zcGxpdHRlci9zcmMvc3BsaXR0ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7O0dBUUc7QUFFSCxPQUFPLEVBQUMsdUJBQXVCLEVBQXFCLFNBQVMsRUFBYyxZQUFZLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFxQixNQUFNLEVBQUUsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3hMLE9BQU8sRUFBQyxTQUFTLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUMvQyxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDekMsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBQ2xELE9BQU8sRUFBQyxLQUFLLEVBQUUsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7O0FBRWhEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBd0NHO0FBUUgsTUFBTSxPQUFPLG9CQUFvQjtJQVEvQixJQUNXLFVBQVU7UUFDbkIsT0FBTyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUM7SUFDNUIsQ0FBQztJQUVELElBQ1csWUFBWTtRQUNyQixPQUFPLElBQUksQ0FBQyxXQUFXLEtBQUssWUFBWSxDQUFDO0lBQzNDLENBQUM7SUFrQ0QsbUJBQW1CO0lBQ25CLElBQ1csY0FBYztRQUN2QixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDO0lB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Vzt1QkFBQyxjQUFjO2dCQU9wQixxQkFBcUI7c0JBRDNCLFNBQVM7dUJBQUMsY0FBYyxFQUFFLEVBQUMsTUFBTSxFQUFFLElBQUksRUFBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTgtMjAxOSBTd2lzcyBGZWRlcmFsIFJhaWx3YXlzXG4gKlxuICogVGhpcyBwcm9ncmFtIGFuZCB0aGUgYWNjb21wYW55aW5nIG1hdGVyaWFscyBhcmUgbWFkZVxuICogYXZhaWxhYmxlIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgRWNsaXBzZSBQdWJsaWMgTGljZW5zZSAyLjBcbiAqIHdoaWNoIGlzIGF2YWlsYWJsZSBhdCBodHRwczovL3d3dy5lY2xpcHNlLm9yZy9sZWdhbC9lcGwtMi4wL1xuICpcbiAqICBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogRVBMLTIuMFxuICovXG5cbmltcG9ydCB7Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSG9zdEJpbmRpbmcsIEluamVjdCwgSW5wdXQsIE5nWm9uZSwgT25EZXN0cm95LCBPbkluaXQsIE91dHB1dCwgVmlld0NoaWxkfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7ZnJvbUV2ZW50LCBtZXJnZSwgU3ViamVjdH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge0RPQ1VNRU5UfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHt0YXBGaXJzdH0gZnJvbSAnQHNjaW9uL3Rvb2xraXQvb3BlcmF0b3JzJztcbmltcG9ydCB7Zmlyc3QsIHRha2VVbnRpbH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG4vKipcbiAqIFJlcHJlc2VudHMgYSBzcGxpdHRlciwgYSB2aXN1YWwgZWxlbWVudCB0aGF0IGFsbG93cyB0aGUgdXNlciB0byBjb250cm9sIHRoZSBzaXplIG9mIGVsZW1lbnRzIG5leHQgdG8gaXQuXG4gKlxuICogVGhlIHNwbGl0dGVyIGhhcyBhIGhhbmRsZSB0aGF0IHRoZSB1c2VyIGNhbiBtb3ZlIGRlcGVuZGluZyBvbiB0aGUgb3JpZW50YXRpb24gb2YgdGhlIHNwbGl0dGVyLlxuICpcbiAqIE5vdGUgdGhhdCB0aGlzIGNvbnRyb2wgbmVpdGhlciBkb2VzIGNoYW5nZSB0aGUgc2l6ZSBvZiBhZGphY2VudCBlbGVtZW50cyBub3IgZG9lcyBpdCAocmUtKXBvc2l0aW9uIGl0c2VsZiwgYnV0IGVtaXRzIHRoZSBkaXN0YW5jZSBieVxuICogd2hpY2ggdGhlIHVzZXIgaGFzIHRoZW9yZXRpY2FsbHkgbW92ZWQgdGhlIHNwbGl0dGVyLiBZb3UgbXVzdCBzdWJzY3JpYmUgdG8gdGhlc2UgZXZlbnRzIGFuZCBjaGFuZ2UgeW91ciBsYXlvdXQgYWNjb3JkaW5nbHkuXG4gKlxuICogSW4gdGhlIHRvb2xraXQsIHtAbGluayBTY2lTYXNoYm94Q29tcG9uZW50fSB1c2VzIHRoaXMgc3BsaXR0ZXIgdG8gZGl2aWRlIGEgbGF5b3V0IGludG8gc2V2ZXJhbCByZXNpemFibGUgc2VjdGlvbnMuXG4gKiBBbm90aGVyIHVzZSBjYXNlIHdvdWxkIGJlIGEgcmVzaXphYmxlIHNpZGViYXIgcGFuZWwuXG4gKlxuICogIyMjIFVzYWdlXG4gKlxuICogYGBgaHRtbFxuICogPHNjaS1zcGxpdHRlciAobW92ZSk9XCJvblNwbGl0dGVyTW92ZSgkZXZlbnQuZGlzdGFuY2UpXCI+PC9zY2ktc3BsaXR0ZXI+XG4gKiBgYGBcbiAqXG4gKiAjIyMgU3R5bGluZ1xuICpcbiAqIFRvIGN1c3RvbWl6ZSB0aGUgZGVmYXVsdCBsb29rIG9mIFNDSU9OIGNvbXBvbmVudHMgb3Igc3VwcG9ydCBkaWZmZXJlbnQgdGhlbWVzLCBjb25maWd1cmUgdGhlIGBAc2Npb24vY29tcG9uZW50c2AgU0NTUyBtb2R1bGUgaW4gYHN0eWxlcy5zY3NzYC5cbiAqIFRvIHN0eWxlIGEgc3BlY2lmaWMgYHNjaS1zcGxpdHRlcmAgY29tcG9uZW50LCB0aGUgZm9sbG93aW5nIENTUyB2YXJpYWJsZXMgY2FuIGJlIHNldCBkaXJlY3RseSBvbiB0aGUgY29tcG9uZW50LlxuICpcbiAqIC0gLS1zY2ktc3BsaXR0ZXItYmFja2dyb3VuZC1jb2xvcjogU2V0cyB0aGUgYmFja2dyb3VuZCBjb2xvciBvZiB0aGUgc3BsaXR0ZXIuXG4gKiAtIC0tc2NpLXNwbGl0dGVyLWJhY2tncm91bmQtY29sb3ItaG92ZXI6IFNldHMgdGhlIGJhY2tncm91bmQgY29sb3Igb2YgdGhlIHNwbGl0dGVyIHdoZW4gaG92ZXJpbmcgaXQuXG4gKiAtIC0tc2NpLXNwbGl0dGVyLXNpemU6IFNldHMgdGhlIHNpemUgb2YgdGhlIHNwbGl0dGVyIGFsb25nIHRoZSBtYWluIGF4aXMuXG4gKiAtIC0tc2NpLXNwbGl0dGVyLXNpemUtaG92ZXI6IFNldHMgdGhlIHNpemUgb2YgdGhlIHNwbGl0dGVyIGFsb25nIHRoZSBtYWluIGF4aXMgd2hlbiBob3ZlcmluZyBpdC5cbiAqIC0gLS1zY2ktc3BsaXR0ZXItdG91Y2gtdGFyZ2V0LXNpemU6IFNldHMgdGhlIHRvdWNoIHRhcmdldCBzaXplIHRvIG1vdmUgdGhlIHNwbGl0dGVyIChhY2Nlc3NpYmlsaXR5KS5cbiAqIC0gLS1zY2ktc3BsaXR0ZXItY3Jvc3MtYXhpcy1zaXplOiBTZXRzIHRoZSBzcGxpdHRlciBzaXplIGFsb25nIHRoZSBjcm9zcyBheGlzLlxuICogLSAtLXNjaS1zcGxpdHRlci1ib3JkZXItcmFkaXVzOiBTZXRzIHRoZSBib3JkZXIgcmFkaXVzIG9mIHRoZSBzcGxpdHRlci5cbiAqIC0gLS1zY2ktc3BsaXR0ZXItb3BhY2l0eS1hY3RpdmU6IFNldHMgdGhlIG9wYWNpdHkgb2YgdGhlIHNwbGl0dGVyIHdoaWxlIHRoZSB1c2VyIG1vdmVzIHRoZSBzcGxpdHRlci5cbiAqIC0gLS1zY2ktc3BsaXR0ZXItb3BhY2l0eS1ob3ZlcjogU2V0cyB0aGUgb3BhY2l0eSBvZiB0aGUgc3BsaXR0ZXIgd2hlbiBob3ZlcmluZyBpdC5cbiAqXG4gKiBFeGFtcGxlOlxuICpcbiAqIGBgYHNjc3NcbiAqIHNjaS1zcGxpdHRlciB7XG4gKiAgIC0tc2NpLXNwbGl0dGVyLWJhY2tncm91bmQtY29sb3I6IGJsYWNrO1xuICogICAtLXNjaS1zcGxpdHRlci1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiBibGFjaztcbiAqIH1cbiAqIGBgYFxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzY2ktc3BsaXR0ZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vc3BsaXR0ZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9zcGxpdHRlci5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbn0pXG5leHBvcnQgY2xhc3MgU2NpU3BsaXR0ZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG5cbiAgcHJpdmF0ZSBfZGVzdHJveSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIC8qIEBkb2NzLXByaXZhdGUgKi9cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5tb3ZpbmcnKVxuICBwdWJsaWMgbW92aW5nID0gZmFsc2U7XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy52ZXJ0aWNhbCcpXG4gIHB1YmxpYyBnZXQgaXNWZXJ0aWNhbCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gIXRoaXMuaXNIb3Jpem9udGFsO1xuICB9XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5ob3Jpem9udGFsJylcbiAgcHVibGljIGdldCBpc0hvcml6b250YWwoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMub3JpZW50YXRpb24gPT09ICdob3Jpem9udGFsJztcbiAgfVxuXG4gIC8qKlxuICAgKiBDb250cm9scyB3aGV0aGVyIHRvIHJlbmRlciBhIHZlcnRpY2FsIG9yIGhvcml6b250YWwgc3BsaXR0ZXIuXG4gICAqIEJ5IGRlZmF1bHQsIGlmIG5vdCBzcGVjaWZpZWQsIHJlbmRlcnMgYSB2ZXJ0aWNhbCBzcGxpdHRlci5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBvcmllbnRhdGlvbjogJ3ZlcnRpY2FsJyB8ICdob3Jpem9udGFsJyA9ICd2ZXJ0aWNhbCc7XG5cbiAgLyoqXG4gICAqIEVtaXRzIHdoZW4gc3RhcnRpbmcgdG8gbW92ZSB0aGUgc3BsaXR0ZXIuXG4gICAqL1xuICBAT3V0cHV0KClcbiAgcHVibGljIHN0YXJ0ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpOyAvLyBlc2xpbnQtZGlzYWJsZS1saW5lIEBhbmd1bGFyLWVzbGludC9uby1vdXRwdXQtbmF0aXZlXG5cbiAgLyoqXG4gICAqIEVtaXRzIHRoZSBkaXN0YW5jZSBpbiBwaXhlbHMgd2hlbiB0aGUgc3BsaXR0ZXIgaXMgbW92ZWQuXG4gICAqIFRoZSBldmVudCBpcyBlbWl0dGVkIG91dHNpZGUgb2YgdGhlIEFuZ3VsYXIgem9uZS5cbiAgICovXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgbW92ZSA9IG5ldyBFdmVudEVtaXR0ZXI8U3BsaXR0ZXJNb3ZlRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIEVtaXRzIHdoZW4gZW5kaW5nIHRvIG1vdmUgdGhlIHNwbGl0dGVyLlxuICAgKi9cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBlbmQgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7IC8vIGVzbGludC1kaXNhYmxlLWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLW91dHB1dC1uYXRpdmVcblxuICAvKipcbiAgICogRW1pdHMgd2hlbiB0byByZXNldCB0aGUgc3BsaXR0ZXIgcG9zaXRpb24uXG4gICAqL1xuICBAT3V0cHV0KClcbiAgcHVibGljIHJlc2V0ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpOyAvLyBlc2xpbnQtZGlzYWJsZS1saW5lIEBhbmd1bGFyLWVzbGludC9uby1vdXRwdXQtbmF0aXZlXG5cbiAgLyogQGRvY3MtcHJpdmF0ZSAqL1xuICBASG9zdEJpbmRpbmcoJ3N0eWxlLmN1cnNvcicpXG4gIHB1YmxpYyBnZXQgc3BsaXR0ZXJDdXJzb3IoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5pc1ZlcnRpY2FsID8gJ2V3LXJlc2l6ZScgOiAnbnMtcmVzaXplJztcbiAgfVxuXG4gIC8qIEBkb2NzLXByaXZhdGUgKi9cbiAgQFZpZXdDaGlsZCgndG91Y2hfdGFyZ2V0Jywge3N0YXRpYzogdHJ1ZX0pXG4gIHB1YmxpYyB0b3VjaFRhcmdldEVsZW1lbnRSZWYhOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PjtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIF96b25lOiBOZ1pvbmUsXG4gICAgICAgICAgICAgIHByaXZhdGUgX2NkOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICAgICAgICAgICAgQEluamVjdChET0NVTUVOVCkgcHJpdmF0ZSBfZG9jdW1lbnQ6IERvY3VtZW50KSB7XG4gIH1cblxuICAvKiBAZG9jcy1wcml2YXRlICovXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBmcm9tRXZlbnQodGhpcy50b3VjaFRhcmdldEVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ2RibGNsaWNrJylcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLl9kZXN0cm95JCkpXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHRoaXMub25SZXNldCgpKTtcblxuICAgIGZyb21FdmVudDxUb3VjaEV2ZW50Pih0aGlzLnRvdWNoVGFyZ2V0RWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAndG91Y2hzdGFydCcpXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5fZGVzdHJveSQpKVxuICAgICAgLnN1YnNjcmliZSgoZXZlbnQ6IFRvdWNoRXZlbnQpID0+IHRoaXMub25Ub3VjaFN0YXJ0KGV2ZW50KSk7XG5cbiAgICBmcm9tRXZlbnQ8TW91c2VFdmVudD4odGhpcy50b3VjaFRhcmdldEVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ21vdXNlZG93bicpXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5fZGVzdHJveSQpKVxuICAgICAgLnN1YnNjcmliZSgoZXZlbnQ6IE1vdXNlRXZlbnQpID0+IHRoaXMub25Nb3VzZURvd24oZXZlbnQpKTtcbiAgfVxuXG4gIHByaXZhdGUgb25SZXNldCgpOiB2b2lkIHtcbiAgICB0aGlzLnJlc2V0LmVtaXQoKTtcbiAgfVxuXG4gIHByaXZhdGUgb25Ub3VjaFN0YXJ0KHN0YXJ0RXZlbnQ6IFRvdWNoRXZlbnQpOiB2b2lkIHtcbiAgICB0aGlzLmluc3RhbGxNb3ZlTGlzdGVuZXIoe1xuICAgICAgICBzdGFydEV2ZW50OiBzdGFydEV2ZW50LFxuICAgICAgICBtb3ZlRXZlbnROYW1lczogWyd0b3VjaG1vdmUnXSxcbiAgICAgICAgZW5kRXZlbnROYW1lczogWyd0b3VjaGVuZCcsICd0b3VjaGNhbmNlbCddLFxuICAgICAgICBldmVudFBvc2l0aW9uRm46ICh0b3VjaEV2ZW50OiBUb3VjaEV2ZW50KTogRXZlbnRQb3NpdGlvbiA9PiB7XG4gICAgICAgICAgY29uc3QgdG91Y2g6IFRvdWNoID0gdG91Y2hFdmVudC50b3VjaGVzWzBdO1xuICAgICAgICAgIGlmICh0aGlzLmlzVmVydGljYWwpIHtcbiAgICAgICAgICAgIHJldHVybiB7c2NyZWVuUG9zOiB0b3VjaC5zY3JlZW5YLCBjbGllbnRQb3M6IHRvdWNoLmNsaWVudFgsIHBhZ2VQb3M6IHRvdWNoLnBhZ2VYfTtcbiAgICAgICAgICB9XG4gICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICByZXR1cm4ge3NjcmVlblBvczogdG91Y2guc2NyZWVuWSwgY2xpZW50UG9zOiB0b3VjaC5jbGllbnRZLCBwYWdlUG9zOiB0b3VjaC5wYWdlWX07XG4gICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBvbk1vdXNlRG93bihzdGFydEV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgaWYgKHN0YXJ0RXZlbnQuYnV0dG9uICE9PSAwKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5pbnN0YWxsTW92ZUxpc3RlbmVyKHtcbiAgICAgICAgc3RhcnRFdmVudDogc3RhcnRFdmVudCxcbiAgICAgICAgbW92ZUV2ZW50TmFtZXM6IFsnbW91c2Vtb3ZlJywgJ3NjaS1tb3VzZW1vdmUnXSxcbiAgICAgICAgZW5kRXZlbnROYW1lczogWydtb3VzZXVwJywgJ3NjaS1tb3VzZXVwJ10sXG4gICAgICAgIGV2ZW50UG9zaXRpb25GbjogKG1vdXNlRXZlbnQ6IE1vdXNlRXZlbnQpOiBFdmVudFBvc2l0aW9uID0+IHtcbiAgICAgICAgICBpZiAodGhpcy5pc1ZlcnRpY2FsKSB7XG4gICAgICAgICAgICByZXR1cm4ge3NjcmVlblBvczogbW91c2VFdmVudC5zY3JlZW5YLCBjbGllbnRQb3M6IG1vdXNlRXZlbnQuY2xpZW50WCwgcGFnZVBvczogbW91c2VFdmVudC5wYWdlWH07XG4gICAgICAgICAgfVxuICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIHtzY3JlZW5Qb3M6IG1vdXNlRXZlbnQuc2NyZWVuWSwgY2xpZW50UG9zOiBtb3VzZUV2ZW50LmNsaWVudFksIHBhZ2VQb3M6IG1vdXNlRXZlbnQucGFnZVl9O1xuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgaW5zdGFsbE1vdmVMaXN0ZW5lcjxFVkVOVCBleHRlbmRzIEV2ZW50Pihjb25maWc6IHtzdGFydEV2ZW50OiBFVkVOVDsgbW92ZUV2ZW50TmFtZXM6IHN0cmluZ1tdOyBlbmRFdmVudE5hbWVzOiBzdHJpbmdbXTsgZXZlbnRQb3NpdGlvbkZuOiAoZXZlbnQ6IEVWRU5UKSA9PiBFdmVudFBvc2l0aW9ufSk6IHZvaWQge1xuICAgIGNvbnN0IHN0YXJ0RXZlbnQgPSBjb25maWcuc3RhcnRFdmVudDtcblxuICAgIHN0YXJ0RXZlbnQucHJldmVudERlZmF1bHQoKTtcblxuICAgIHRoaXMuX3pvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4ge1xuICAgICAgLy8gaW5zdGFsbCBsaXN0ZW5lcnMgb24gZG9jdW1lbnQgbGV2ZWwgdG8gYWxsb3cgZmFzdCBkcmFnZ2luZyB0aGUgc3BsaXR0ZXIuXG4gICAgICBjb25zdCBtb3ZlRXZlbnQkID0gbWVyZ2UoLi4uY29uZmlnLm1vdmVFdmVudE5hbWVzLm1hcChldmVudE5hbWUgPT4gZnJvbUV2ZW50PEVWRU5UPih0aGlzLl9kb2N1bWVudCwgZXZlbnROYW1lKSkpO1xuICAgICAgY29uc3QgZW5kRXZlbnQkID0gbWVyZ2UoLi4uY29uZmlnLmVuZEV2ZW50TmFtZXMubWFwKGV2ZW50TmFtZSA9PiBmcm9tRXZlbnQ8RVZFTlQ+KHRoaXMuX2RvY3VtZW50LCBldmVudE5hbWUpKSk7XG4gICAgICBsZXQgbGFzdENsaWVudFBvcyA9IGNvbmZpZy5ldmVudFBvc2l0aW9uRm4oc3RhcnRFdmVudCkuY2xpZW50UG9zO1xuXG4gICAgICAvLyBBcHBseSBjdXJzb3Igb24gZG9jdW1lbnQgbGV2ZWwgdG8gcHJldmVudCBmbGlja2VyaW5nIHdoaWxlIG1vdmluZyB0aGUgc3BsaXR0ZXJcbiAgICAgIGNvbnN0IG9sZERvY3VtZW50Q3Vyc29yID0gdGhpcy5fZG9jdW1lbnQuYm9keS5zdHlsZS5jdXJzb3I7XG4gICAgICB0aGlzLl9kb2N1bWVudC5ib2R5LnN0eWxlLmN1cnNvciA9IHRoaXMuc3BsaXR0ZXJDdXJzb3I7XG5cbiAgICAgIC8vIExpc3RlbiBmb3IgJ21vdmUnIGV2ZW50cyB1bnRpbCBzdG9wIG1vdmluZyB0aGUgc3BsaXR0ZXJcbiAgICAgIG1vdmVFdmVudCRcbiAgICAgICAgLnBpcGUoXG4gICAgICAgICAgdGFwRmlyc3QoKCkgPT4gdGhpcy5fem9uZS5ydW4oKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5tb3ZpbmcgPSB0cnVlO1xuICAgICAgICAgICAgdGhpcy5zdGFydC5uZXh0KCk7XG4gICAgICAgICAgICB0aGlzLl9jZC5tYXJrRm9yQ2hlY2soKTtcbiAgICAgICAgICB9KSksXG4gICAgICAgICAgdGFrZVVudGlsKG1lcmdlKGVuZEV2ZW50JCwgdGhpcy5fZGVzdHJveSQpKSxcbiAgICAgICAgKVxuICAgICAgICAuc3Vic2NyaWJlKChtb3ZlRXZlbnQ6IEVWRU5UKSA9PiB7XG4gICAgICAgICAgY29uc3QgZXZlbnRQb3MgPSBjb25maWcuZXZlbnRQb3NpdGlvbkZuKG1vdmVFdmVudCk7XG4gICAgICAgICAgY29uc3QgbmV3Q2xpZW50UG9zID0gZXZlbnRQb3MuY2xpZW50UG9zO1xuICAgICAgICAgIGNvbnN0IGRpc3RhbmNlID0gbmV3Q2xpZW50UG9zIC0gbGFzdENsaWVudFBvcztcbiAgICAgICAgICBsYXN0Q2xpZW50UG9zID0gbmV3Q2xpZW50UG9zO1xuXG4gICAgICAgICAgTmdab25lLmFzc2VydE5vdEluQW5ndWxhclpvbmUoKTtcbiAgICAgICAgICB0aGlzLm1vdmUuZW1pdCh7ZGlzdGFuY2UsIHBvc2l0aW9uOiBldmVudFBvc30pO1xuICAgICAgICB9KTtcblxuICAgICAgLy8gTGlzdGVuIGZvciAnZW5kJyBldmVudHM7IGNhbGwgJ3N0b3AgcHJvcGFnYXRpb24nIHRvIG5vdCBjbG9zZSBvdmVybGF5c1xuICAgICAgZW5kRXZlbnQkXG4gICAgICAgIC5waXBlKGZpcnN0KCksIHRha2VVbnRpbCh0aGlzLl9kZXN0cm95JCkpXG4gICAgICAgIC5zdWJzY3JpYmUoKGVuZEV2ZW50OiBFVkVOVCkgPT4ge1xuICAgICAgICAgIGVuZEV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICAgIHRoaXMuX2RvY3VtZW50LmJvZHkuc3R5bGUuY3Vyc29yID0gb2xkRG9jdW1lbnRDdXJzb3I7XG4gICAgICAgICAgdGhpcy5tb3ZpbmcgJiYgdGhpcy5fem9uZS5ydW4oKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5lbmQubmV4dCgpO1xuICAgICAgICAgICAgdGhpcy5tb3ZpbmcgPSBmYWxzZTtcbiAgICAgICAgICAgIHRoaXMuX2NkLm1hcmtGb3JDaGVjaygpO1xuICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcbiAgICB9KTtcbiAgfVxuXG4gIC8qIEBkb2NzLXByaXZhdGUgKi9cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuX2Rlc3Ryb3kkLm5leHQoKTtcbiAgfVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEV2ZW50UG9zaXRpb24ge1xuICBjbGllbnRQb3M6IG51bWJlcjtcbiAgcGFnZVBvczogbnVtYmVyO1xuICBzY3JlZW5Qb3M6IG51bWJlcjtcbn1cblxuLyoqXG4gKiBFdmVudCB0aGF0IGlzIGVtaXR0ZWQgd2hlbiBtb3ZpbmcgdGhlIHNwbGl0dGVyLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNwbGl0dGVyTW92ZUV2ZW50IHtcbiAgLyoqXG4gICAqIFRoZSBkaXN0YW5jZSBpbiBwaXhlbHMgYnkgd2hpY2ggdGhlIHVzZXIgaGFzIG1vdmVkIHRoZSBzcGxpdHRlciBzaW5jZSB0aGUgbGFzdCBlbWlzc2lvbi5cbiAgICovXG4gIGRpc3RhbmNlOiBudW1iZXI7XG4gIC8qKlxuICAgKiBUaGUgcG9zaXRpb24gd2hlcmUgdGhlIG1vdXNlIG9yIHRvdWNoIGV2ZW50IGhhcyBvY2N1cnJlZC5cbiAgICovXG4gIHBvc2l0aW9uOiBFdmVudFBvc2l0aW9uO1xufVxuIiwiPGRpdiAjdG91Y2hfdGFyZ2V0IGNsYXNzPVwidG91Y2gtdGFyZ2V0XCI+XG4gIDxkaXYgY2xhc3M9XCJoYW5kbGVcIj48L2Rpdj5cbjwvZGl2PlxuIl19
226
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3BsaXR0ZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2Npb24vY29tcG9uZW50cy9zcGxpdHRlci9zcmMvc3BsaXR0ZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2Npb24vY29tcG9uZW50cy9zcGxpdHRlci9zcmMvc3BsaXR0ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7O0dBUUc7QUFFSCxPQUFPLEVBQUMsdUJBQXVCLEVBQXFCLFNBQVMsRUFBYyxZQUFZLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFxQixNQUFNLEVBQUUsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3hMLE9BQU8sRUFBQyxTQUFTLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUMvQyxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDekMsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBQ2xELE9BQU8sRUFBQyxLQUFLLEVBQUUsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7O0FBRWhEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBd0NHO0FBUUgsTUFBTSxPQUFPLG9CQUFvQjtJQVEvQixJQUNXLFVBQVU7UUFDbkIsT0FBTyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUM7SUFDNUIsQ0FBQztJQUVELElBQ1csWUFBWTtRQUNyQixPQUFPLElBQUksQ0FBQyxXQUFXLEtBQUssWUFBWSxDQUFDO0lBQzNDLENBQUM7SUFrQ0QsbUJBQW1CO0lBQ25CLElBQ1csY0FBYztRQUN2QixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDO0lB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VCxNQUFNO2dCQU9BLEtBQUs7c0JBRFgsTUFBTTtnQkFLSSxjQUFjO3NCQUR4QixXQUFXO3VCQUFDLGNBQWM7Z0JBT3BCLHFCQUFxQjtzQkFEM0IsU0FBUzt1QkFBQyxjQUFjLEVBQUUsRUFBQyxNQUFNLEVBQUUsSUFBSSxFQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoYykgMjAxOC0yMDE5IFN3aXNzIEZlZGVyYWwgUmFpbHdheXNcbiAqXG4gKiBUaGlzIHByb2dyYW0gYW5kIHRoZSBhY2NvbXBhbnlpbmcgbWF0ZXJpYWxzIGFyZSBtYWRlXG4gKiBhdmFpbGFibGUgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBFY2xpcHNlIFB1YmxpYyBMaWNlbnNlIDIuMFxuICogd2hpY2ggaXMgYXZhaWxhYmxlIGF0IGh0dHBzOi8vd3d3LmVjbGlwc2Uub3JnL2xlZ2FsL2VwbC0yLjAvXG4gKlxuICogIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBFUEwtMi4wXG4gKi9cblxuaW1wb3J0IHtDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZywgSW5qZWN0LCBJbnB1dCwgTmdab25lLCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3V0cHV0LCBWaWV3Q2hpbGR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtmcm9tRXZlbnQsIG1lcmdlLCBTdWJqZWN0fSBmcm9tICdyeGpzJztcbmltcG9ydCB7RE9DVU1FTlR9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge3RhcEZpcnN0fSBmcm9tICdAc2Npb24vdG9vbGtpdC9vcGVyYXRvcnMnO1xuaW1wb3J0IHtmaXJzdCwgdGFrZVVudGlsfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbi8qKlxuICogUmVwcmVzZW50cyBhIHNwbGl0dGVyLCBhIHZpc3VhbCBlbGVtZW50IHRoYXQgYWxsb3dzIHRoZSB1c2VyIHRvIGNvbnRyb2wgdGhlIHNpemUgb2YgZWxlbWVudHMgbmV4dCB0byBpdC5cbiAqXG4gKiBUaGUgc3BsaXR0ZXIgaGFzIGEgaGFuZGxlIHRoYXQgdGhlIHVzZXIgY2FuIG1vdmUgZGVwZW5kaW5nIG9uIHRoZSBvcmllbnRhdGlvbiBvZiB0aGUgc3BsaXR0ZXIuXG4gKlxuICogTm90ZSB0aGF0IHRoaXMgY29udHJvbCBuZWl0aGVyIGRvZXMgY2hhbmdlIHRoZSBzaXplIG9mIGFkamFjZW50IGVsZW1lbnRzIG5vciBkb2VzIGl0IChyZS0pcG9zaXRpb24gaXRzZWxmLCBidXQgZW1pdHMgdGhlIGRpc3RhbmNlIGJ5XG4gKiB3aGljaCB0aGUgdXNlciBoYXMgdGhlb3JldGljYWxseSBtb3ZlZCB0aGUgc3BsaXR0ZXIuIFlvdSBtdXN0IHN1YnNjcmliZSB0byB0aGVzZSBldmVudHMgYW5kIGNoYW5nZSB5b3VyIGxheW91dCBhY2NvcmRpbmdseS5cbiAqXG4gKiBJbiB0aGUgdG9vbGtpdCwge0BsaW5rIFNjaVNhc2hib3hDb21wb25lbnR9IHVzZXMgdGhpcyBzcGxpdHRlciB0byBkaXZpZGUgYSBsYXlvdXQgaW50byBzZXZlcmFsIHJlc2l6YWJsZSBzZWN0aW9ucy5cbiAqIEFub3RoZXIgdXNlIGNhc2Ugd291bGQgYmUgYSByZXNpemFibGUgc2lkZWJhciBwYW5lbC5cbiAqXG4gKiAjIyMgVXNhZ2VcbiAqXG4gKiBgYGBodG1sXG4gKiA8c2NpLXNwbGl0dGVyIChtb3ZlKT1cIm9uU3BsaXR0ZXJNb3ZlKCRldmVudC5kaXN0YW5jZSlcIj48L3NjaS1zcGxpdHRlcj5cbiAqIGBgYFxuICpcbiAqICMjIyBTdHlsaW5nXG4gKlxuICogVG8gY3VzdG9taXplIHRoZSBkZWZhdWx0IGxvb2sgb2YgU0NJT04gY29tcG9uZW50cyBvciBzdXBwb3J0IGRpZmZlcmVudCB0aGVtZXMsIGNvbmZpZ3VyZSB0aGUgYEBzY2lvbi9jb21wb25lbnRzYCBTQ1NTIG1vZHVsZSBpbiBgc3R5bGVzLnNjc3NgLlxuICogVG8gc3R5bGUgYSBzcGVjaWZpYyBgc2NpLXNwbGl0dGVyYCBjb21wb25lbnQsIHRoZSBmb2xsb3dpbmcgQ1NTIHZhcmlhYmxlcyBjYW4gYmUgc2V0IGRpcmVjdGx5IG9uIHRoZSBjb21wb25lbnQuXG4gKlxuICogLSAtLXNjaS1zcGxpdHRlci1iYWNrZ3JvdW5kLWNvbG9yOiBTZXRzIHRoZSBiYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBzcGxpdHRlci5cbiAqIC0gLS1zY2ktc3BsaXR0ZXItYmFja2dyb3VuZC1jb2xvci1ob3ZlcjogU2V0cyB0aGUgYmFja2dyb3VuZCBjb2xvciBvZiB0aGUgc3BsaXR0ZXIgd2hlbiBob3ZlcmluZyBpdC5cbiAqIC0gLS1zY2ktc3BsaXR0ZXItc2l6ZTogU2V0cyB0aGUgc2l6ZSBvZiB0aGUgc3BsaXR0ZXIgYWxvbmcgdGhlIG1haW4gYXhpcy5cbiAqIC0gLS1zY2ktc3BsaXR0ZXItc2l6ZS1ob3ZlcjogU2V0cyB0aGUgc2l6ZSBvZiB0aGUgc3BsaXR0ZXIgYWxvbmcgdGhlIG1haW4gYXhpcyB3aGVuIGhvdmVyaW5nIGl0LlxuICogLSAtLXNjaS1zcGxpdHRlci10b3VjaC10YXJnZXQtc2l6ZTogU2V0cyB0aGUgdG91Y2ggdGFyZ2V0IHNpemUgdG8gbW92ZSB0aGUgc3BsaXR0ZXIgKGFjY2Vzc2liaWxpdHkpLlxuICogLSAtLXNjaS1zcGxpdHRlci1jcm9zcy1heGlzLXNpemU6IFNldHMgdGhlIHNwbGl0dGVyIHNpemUgYWxvbmcgdGhlIGNyb3NzIGF4aXMuXG4gKiAtIC0tc2NpLXNwbGl0dGVyLWJvcmRlci1yYWRpdXM6IFNldHMgdGhlIGJvcmRlciByYWRpdXMgb2YgdGhlIHNwbGl0dGVyLlxuICogLSAtLXNjaS1zcGxpdHRlci1vcGFjaXR5LWFjdGl2ZTogU2V0cyB0aGUgb3BhY2l0eSBvZiB0aGUgc3BsaXR0ZXIgd2hpbGUgdGhlIHVzZXIgbW92ZXMgdGhlIHNwbGl0dGVyLlxuICogLSAtLXNjaS1zcGxpdHRlci1vcGFjaXR5LWhvdmVyOiBTZXRzIHRoZSBvcGFjaXR5IG9mIHRoZSBzcGxpdHRlciB3aGVuIGhvdmVyaW5nIGl0LlxuICpcbiAqIEV4YW1wbGU6XG4gKlxuICogYGBgc2Nzc1xuICogc2NpLXNwbGl0dGVyIHtcbiAqICAgLS1zY2ktc3BsaXR0ZXItYmFja2dyb3VuZC1jb2xvcjogYmxhY2s7XG4gKiAgIC0tc2NpLXNwbGl0dGVyLWJhY2tncm91bmQtY29sb3ItaG92ZXI6IGJsYWNrO1xuICogfVxuICogYGBgXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NjaS1zcGxpdHRlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9zcGxpdHRlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3NwbGl0dGVyLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxufSlcbmV4cG9ydCBjbGFzcyBTY2lTcGxpdHRlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcblxuICBwcml2YXRlIF9kZXN0cm95JCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgLyogQGRvY3MtcHJpdmF0ZSAqL1xuICBASG9zdEJpbmRpbmcoJ2NsYXNzLm1vdmluZycpXG4gIHB1YmxpYyBtb3ZpbmcgPSBmYWxzZTtcblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLnZlcnRpY2FsJylcbiAgcHVibGljIGdldCBpc1ZlcnRpY2FsKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhdGhpcy5pc0hvcml6b250YWw7XG4gIH1cblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmhvcml6b250YWwnKVxuICBwdWJsaWMgZ2V0IGlzSG9yaXpvbnRhbCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5vcmllbnRhdGlvbiA9PT0gJ2hvcml6b250YWwnO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbnRyb2xzIHdoZXRoZXIgdG8gcmVuZGVyIGEgdmVydGljYWwgb3IgaG9yaXpvbnRhbCBzcGxpdHRlci5cbiAgICogQnkgZGVmYXVsdCwgaWYgbm90IHNwZWNpZmllZCwgcmVuZGVycyBhIHZlcnRpY2FsIHNwbGl0dGVyLlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIG9yaWVudGF0aW9uOiAndmVydGljYWwnIHwgJ2hvcml6b250YWwnID0gJ3ZlcnRpY2FsJztcblxuICAvKipcbiAgICogRW1pdHMgd2hlbiBzdGFydGluZyB0byBtb3ZlIHRoZSBzcGxpdHRlci5cbiAgICovXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgc3RhcnQgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7IC8vIGVzbGludC1kaXNhYmxlLWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLW91dHB1dC1uYXRpdmVcblxuICAvKipcbiAgICogRW1pdHMgdGhlIGRpc3RhbmNlIGluIHBpeGVscyB3aGVuIHRoZSBzcGxpdHRlciBpcyBtb3ZlZC5cbiAgICogVGhlIGV2ZW50IGlzIGVtaXR0ZWQgb3V0c2lkZSBvZiB0aGUgQW5ndWxhciB6b25lLlxuICAgKi9cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBtb3ZlID0gbmV3IEV2ZW50RW1pdHRlcjxTcGxpdHRlck1vdmVFdmVudD4oKTtcblxuICAvKipcbiAgICogRW1pdHMgd2hlbiBlbmRpbmcgdG8gbW92ZSB0aGUgc3BsaXR0ZXIuXG4gICAqL1xuICBAT3V0cHV0KClcbiAgcHVibGljIGVuZCA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTsgLy8gZXNsaW50LWRpc2FibGUtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8tb3V0cHV0LW5hdGl2ZVxuXG4gIC8qKlxuICAgKiBFbWl0cyB3aGVuIHRvIHJlc2V0IHRoZSBzcGxpdHRlciBwb3NpdGlvbi5cbiAgICovXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgcmVzZXQgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7IC8vIGVzbGludC1kaXNhYmxlLWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLW91dHB1dC1uYXRpdmVcblxuICAvKiBAZG9jcy1wcml2YXRlICovXG4gIEBIb3N0QmluZGluZygnc3R5bGUuY3Vyc29yJylcbiAgcHVibGljIGdldCBzcGxpdHRlckN1cnNvcigpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmlzVmVydGljYWwgPyAnZXctcmVzaXplJyA6ICducy1yZXNpemUnO1xuICB9XG5cbiAgLyogQGRvY3MtcHJpdmF0ZSAqL1xuICBAVmlld0NoaWxkKCd0b3VjaF90YXJnZXQnLCB7c3RhdGljOiB0cnVlfSlcbiAgcHVibGljIHRvdWNoVGFyZ2V0RWxlbWVudFJlZiE6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+O1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgX3pvbmU6IE5nWm9uZSxcbiAgICAgICAgICAgICAgcHJpdmF0ZSBfY2Q6IENoYW5nZURldGVjdG9yUmVmLFxuICAgICAgICAgICAgICBASW5qZWN0KERPQ1VNRU5UKSBwcml2YXRlIF9kb2N1bWVudDogRG9jdW1lbnQpIHtcbiAgfVxuXG4gIC8qIEBkb2NzLXByaXZhdGUgKi9cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIGZyb21FdmVudCh0aGlzLnRvdWNoVGFyZ2V0RWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAnZGJsY2xpY2snKVxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kkKSlcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5vblJlc2V0KCkpO1xuXG4gICAgZnJvbUV2ZW50PFRvdWNoRXZlbnQ+KHRoaXMudG91Y2hUYXJnZXRFbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICd0b3VjaHN0YXJ0JylcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLl9kZXN0cm95JCkpXG4gICAgICAuc3Vic2NyaWJlKChldmVudDogVG91Y2hFdmVudCkgPT4gdGhpcy5vblRvdWNoU3RhcnQoZXZlbnQpKTtcblxuICAgIGZyb21FdmVudDxNb3VzZUV2ZW50Pih0aGlzLnRvdWNoVGFyZ2V0RWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAnbW91c2Vkb3duJylcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLl9kZXN0cm95JCkpXG4gICAgICAuc3Vic2NyaWJlKChldmVudDogTW91c2VFdmVudCkgPT4gdGhpcy5vbk1vdXNlRG93bihldmVudCkpO1xuICB9XG5cbiAgcHJpdmF0ZSBvblJlc2V0KCk6IHZvaWQge1xuICAgIHRoaXMucmVzZXQuZW1pdCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBvblRvdWNoU3RhcnQoc3RhcnRFdmVudDogVG91Y2hFdmVudCk6IHZvaWQge1xuICAgIHRoaXMuaW5zdGFsbE1vdmVMaXN0ZW5lcih7XG4gICAgICAgIHN0YXJ0RXZlbnQ6IHN0YXJ0RXZlbnQsXG4gICAgICAgIG1vdmVFdmVudE5hbWVzOiBbJ3RvdWNobW92ZSddLFxuICAgICAgICBlbmRFdmVudE5hbWVzOiBbJ3RvdWNoZW5kJywgJ3RvdWNoY2FuY2VsJ10sXG4gICAgICAgIGV2ZW50UG9zaXRpb25GbjogKHRvdWNoRXZlbnQ6IFRvdWNoRXZlbnQpOiBFdmVudFBvc2l0aW9uID0+IHtcbiAgICAgICAgICBjb25zdCB0b3VjaDogVG91Y2ggPSB0b3VjaEV2ZW50LnRvdWNoZXNbMF07XG4gICAgICAgICAgaWYgKHRoaXMuaXNWZXJ0aWNhbCkge1xuICAgICAgICAgICAgcmV0dXJuIHtzY3JlZW5Qb3M6IHRvdWNoLnNjcmVlblgsIGNsaWVudFBvczogdG91Y2guY2xpZW50WCwgcGFnZVBvczogdG91Y2gucGFnZVh9O1xuICAgICAgICAgIH1cbiAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiB7c2NyZWVuUG9zOiB0b3VjaC5zY3JlZW5ZLCBjbGllbnRQb3M6IHRvdWNoLmNsaWVudFksIHBhZ2VQb3M6IHRvdWNoLnBhZ2VZfTtcbiAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIG9uTW91c2VEb3duKHN0YXJ0RXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcbiAgICBpZiAoc3RhcnRFdmVudC5idXR0b24gIT09IDApIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLmluc3RhbGxNb3ZlTGlzdGVuZXIoe1xuICAgICAgICBzdGFydEV2ZW50OiBzdGFydEV2ZW50LFxuICAgICAgICBtb3ZlRXZlbnROYW1lczogWydtb3VzZW1vdmUnLCAnc2NpLW1vdXNlbW92ZSddLFxuICAgICAgICBlbmRFdmVudE5hbWVzOiBbJ21vdXNldXAnLCAnc2NpLW1vdXNldXAnXSxcbiAgICAgICAgZXZlbnRQb3NpdGlvbkZuOiAobW91c2VFdmVudDogTW91c2VFdmVudCk6IEV2ZW50UG9zaXRpb24gPT4ge1xuICAgICAgICAgIGlmICh0aGlzLmlzVmVydGljYWwpIHtcbiAgICAgICAgICAgIHJldHVybiB7c2NyZWVuUG9zOiBtb3VzZUV2ZW50LnNjcmVlblgsIGNsaWVudFBvczogbW91c2VFdmVudC5jbGllbnRYLCBwYWdlUG9zOiBtb3VzZUV2ZW50LnBhZ2VYfTtcbiAgICAgICAgICB9XG4gICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICByZXR1cm4ge3NjcmVlblBvczogbW91c2VFdmVudC5zY3JlZW5ZLCBjbGllbnRQb3M6IG1vdXNlRXZlbnQuY2xpZW50WSwgcGFnZVBvczogbW91c2VFdmVudC5wYWdlWX07XG4gICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBpbnN0YWxsTW92ZUxpc3RlbmVyPEVWRU5UIGV4dGVuZHMgRXZlbnQ+KGNvbmZpZzoge3N0YXJ0RXZlbnQ6IEVWRU5UOyBtb3ZlRXZlbnROYW1lczogc3RyaW5nW107IGVuZEV2ZW50TmFtZXM6IHN0cmluZ1tdOyBldmVudFBvc2l0aW9uRm46IChldmVudDogRVZFTlQpID0+IEV2ZW50UG9zaXRpb259KTogdm9pZCB7XG4gICAgY29uc3Qgc3RhcnRFdmVudCA9IGNvbmZpZy5zdGFydEV2ZW50O1xuXG4gICAgc3RhcnRFdmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuXG4gICAgdGhpcy5fem9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB7XG4gICAgICAvLyBpbnN0YWxsIGxpc3RlbmVycyBvbiBkb2N1bWVudCBsZXZlbCB0byBhbGxvdyBmYXN0IGRyYWdnaW5nIHRoZSBzcGxpdHRlci5cbiAgICAgIGNvbnN0IG1vdmVFdmVudCQgPSBtZXJnZSguLi5jb25maWcubW92ZUV2ZW50TmFtZXMubWFwKGV2ZW50TmFtZSA9PiBmcm9tRXZlbnQ8RVZFTlQ+KHRoaXMuX2RvY3VtZW50LCBldmVudE5hbWUpKSk7XG4gICAgICBjb25zdCBlbmRFdmVudCQgPSBtZXJnZSguLi5jb25maWcuZW5kRXZlbnROYW1lcy5tYXAoZXZlbnROYW1lID0+IGZyb21FdmVudDxFVkVOVD4odGhpcy5fZG9jdW1lbnQsIGV2ZW50TmFtZSkpKTtcbiAgICAgIGxldCBsYXN0Q2xpZW50UG9zID0gY29uZmlnLmV2ZW50UG9zaXRpb25GbihzdGFydEV2ZW50KS5jbGllbnRQb3M7XG5cbiAgICAgIC8vIEFwcGx5IGN1cnNvciBvbiBkb2N1bWVudCBsZXZlbCB0byBwcmV2ZW50IGZsaWNrZXJpbmcgd2hpbGUgbW92aW5nIHRoZSBzcGxpdHRlclxuICAgICAgY29uc3Qgb2xkRG9jdW1lbnRDdXJzb3IgPSB0aGlzLl9kb2N1bWVudC5ib2R5LnN0eWxlLmN1cnNvcjtcbiAgICAgIHRoaXMuX2RvY3VtZW50LmJvZHkuc3R5bGUuY3Vyc29yID0gdGhpcy5zcGxpdHRlckN1cnNvcjtcblxuICAgICAgLy8gTGlzdGVuIGZvciAnbW92ZScgZXZlbnRzIHVudGlsIHN0b3AgbW92aW5nIHRoZSBzcGxpdHRlclxuICAgICAgbW92ZUV2ZW50JFxuICAgICAgICAucGlwZShcbiAgICAgICAgICB0YXBGaXJzdCgoKSA9PiB0aGlzLl96b25lLnJ1bigoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLm1vdmluZyA9IHRydWU7XG4gICAgICAgICAgICB0aGlzLnN0YXJ0Lm5leHQoKTtcbiAgICAgICAgICAgIHRoaXMuX2NkLm1hcmtGb3JDaGVjaygpO1xuICAgICAgICAgIH0pKSxcbiAgICAgICAgICB0YWtlVW50aWwobWVyZ2UoZW5kRXZlbnQkLCB0aGlzLl9kZXN0cm95JCkpLFxuICAgICAgICApXG4gICAgICAgIC5zdWJzY3JpYmUoKG1vdmVFdmVudDogRVZFTlQpID0+IHtcbiAgICAgICAgICBjb25zdCBldmVudFBvcyA9IGNvbmZpZy5ldmVudFBvc2l0aW9uRm4obW92ZUV2ZW50KTtcbiAgICAgICAgICBjb25zdCBuZXdDbGllbnRQb3MgPSBldmVudFBvcy5jbGllbnRQb3M7XG4gICAgICAgICAgY29uc3QgZGlzdGFuY2UgPSBuZXdDbGllbnRQb3MgLSBsYXN0Q2xpZW50UG9zO1xuICAgICAgICAgIGxhc3RDbGllbnRQb3MgPSBuZXdDbGllbnRQb3M7XG5cbiAgICAgICAgICBOZ1pvbmUuYXNzZXJ0Tm90SW5Bbmd1bGFyWm9uZSgpO1xuICAgICAgICAgIHRoaXMubW92ZS5lbWl0KHtkaXN0YW5jZSwgcG9zaXRpb246IGV2ZW50UG9zfSk7XG4gICAgICAgIH0pO1xuXG4gICAgICAvLyBMaXN0ZW4gZm9yICdlbmQnIGV2ZW50czsgY2FsbCAnc3RvcCBwcm9wYWdhdGlvbicgdG8gbm90IGNsb3NlIG92ZXJsYXlzXG4gICAgICBlbmRFdmVudCRcbiAgICAgICAgLnBpcGUoZmlyc3QoKSwgdGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kkKSlcbiAgICAgICAgLnN1YnNjcmliZSgoZW5kRXZlbnQ6IEVWRU5UKSA9PiB7XG4gICAgICAgICAgZW5kRXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgICAgdGhpcy5fZG9jdW1lbnQuYm9keS5zdHlsZS5jdXJzb3IgPSBvbGREb2N1bWVudEN1cnNvcjtcbiAgICAgICAgICB0aGlzLm1vdmluZyAmJiB0aGlzLl96b25lLnJ1bigoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmVuZC5uZXh0KCk7XG4gICAgICAgICAgICB0aGlzLm1vdmluZyA9IGZhbHNlO1xuICAgICAgICAgICAgdGhpcy5fY2QubWFya0ZvckNoZWNrKCk7XG4gICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgLyogQGRvY3MtcHJpdmF0ZSAqL1xuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fZGVzdHJveSQubmV4dCgpO1xuICB9XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRXZlbnRQb3NpdGlvbiB7XG4gIGNsaWVudFBvczogbnVtYmVyO1xuICBwYWdlUG9zOiBudW1iZXI7XG4gIHNjcmVlblBvczogbnVtYmVyO1xufVxuXG4vKipcbiAqIEV2ZW50IHRoYXQgaXMgZW1pdHRlZCB3aGVuIG1vdmluZyB0aGUgc3BsaXR0ZXIuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU3BsaXR0ZXJNb3ZlRXZlbnQge1xuICAvKipcbiAgICogVGhlIGRpc3RhbmNlIGluIHBpeGVscyBieSB3aGljaCB0aGUgdXNlciBoYXMgbW92ZWQgdGhlIHNwbGl0dGVyIHNpbmNlIHRoZSBsYXN0IGVtaXNzaW9uLlxuICAgKi9cbiAgZGlzdGFuY2U6IG51bWJlcjtcbiAgLyoqXG4gICAqIFRoZSBwb3NpdGlvbiB3aGVyZSB0aGUgbW91c2Ugb3IgdG91Y2ggZXZlbnQgaGFzIG9jY3VycmVkLlxuICAgKi9cbiAgcG9zaXRpb246IEV2ZW50UG9zaXRpb247XG59XG4iLCI8ZGl2ICN0b3VjaF90YXJnZXQgY2xhc3M9XCJ0b3VjaC10YXJnZXRcIj5cbiAgPGRpdiBjbGFzcz1cImhhbmRsZVwiPjwvZGl2PlxuPC9kaXY+XG4iXX0=
@@ -20,11 +20,11 @@ import * as i0 from "@angular/core";
20
20
  * ```
21
21
  */
22
22
  export class SciSplitterModule {
23
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: SciSplitterModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
24
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.2", ngImport: i0, type: SciSplitterModule, imports: [SciSplitterComponent], exports: [SciSplitterComponent] }); }
25
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: SciSplitterModule }); }
23
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: SciSplitterModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
24
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.0.1", ngImport: i0, type: SciSplitterModule, imports: [SciSplitterComponent], exports: [SciSplitterComponent] }); }
25
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: SciSplitterModule }); }
26
26
  }
27
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: SciSplitterModule, decorators: [{
27
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: SciSplitterModule, decorators: [{
28
28
  type: NgModule,
29
29
  args: [{
30
30
  imports: [
@@ -15,11 +15,11 @@ import * as i0 from "@angular/core";
15
15
  * Throbber type: `ellipsis`
16
16
  */
17
17
  export class SciEllipsisThrobberComponent {
18
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: SciEllipsisThrobberComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
19
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.2", type: SciEllipsisThrobberComponent, isStandalone: true, selector: "sci-ellipsis-throbber", ngImport: i0, template: "<div class=\"point\"></div>\n<div class=\"point\"></div>\n<div class=\"point\"></div>\n", styles: ["@charset \"UTF-8\";:host{display:inline-flex;justify-content:space-between;font-size:var(--\\275sci-throbber-size);width:1em;box-sizing:border-box}:host>div.point{flex:none;border-radius:50%;width:.3em;height:.3em;animation:sci-ellipsis-throbber var(--\\275sci-throbber-duration) ease-in-out infinite;background-color:var(--\\275sci-throbber-color)}:host>div.point:nth-child(1){animation-delay:calc(var(--\\275sci-throbber-duration) / -6)}:host>div.point:nth-child(2){animation-delay:calc(var(--\\275sci-throbber-duration) / -12)}@keyframes sci-ellipsis-throbber{0%{transform:scale(0)}40%{transform:scale(1)}80%,to{transform:scale(0)}}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
18
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: SciEllipsisThrobberComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
19
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.1", type: SciEllipsisThrobberComponent, isStandalone: true, selector: "sci-ellipsis-throbber", ngImport: i0, template: "<div class=\"point\"></div>\n<div class=\"point\"></div>\n<div class=\"point\"></div>\n", styles: [":host{display:inline-flex;justify-content:space-between;font-size:var(--sci-throbber-size);width:1em;box-sizing:border-box}:host>div.point{flex:none;border-radius:50%;width:.3em;height:.3em;animation:sci-ellipsis-throbber var(--sci-throbber-duration) ease-in-out infinite;background-color:var(--sci-throbber-color)}:host>div.point:nth-child(1){animation-delay:calc(var(--sci-throbber-duration) / -6)}:host>div.point:nth-child(2){animation-delay:calc(var(--sci-throbber-duration) / -12)}@keyframes sci-ellipsis-throbber{0%{transform:scale(0)}40%{transform:scale(1)}80%,to{transform:scale(0)}}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
20
20
  }
21
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: SciEllipsisThrobberComponent, decorators: [{
21
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: SciEllipsisThrobberComponent, decorators: [{
22
22
  type: Component,
23
- args: [{ selector: 'sci-ellipsis-throbber', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, template: "<div class=\"point\"></div>\n<div class=\"point\"></div>\n<div class=\"point\"></div>\n", styles: ["@charset \"UTF-8\";:host{display:inline-flex;justify-content:space-between;font-size:var(--\\275sci-throbber-size);width:1em;box-sizing:border-box}:host>div.point{flex:none;border-radius:50%;width:.3em;height:.3em;animation:sci-ellipsis-throbber var(--\\275sci-throbber-duration) ease-in-out infinite;background-color:var(--\\275sci-throbber-color)}:host>div.point:nth-child(1){animation-delay:calc(var(--\\275sci-throbber-duration) / -6)}:host>div.point:nth-child(2){animation-delay:calc(var(--\\275sci-throbber-duration) / -12)}@keyframes sci-ellipsis-throbber{0%{transform:scale(0)}40%{transform:scale(1)}80%,to{transform:scale(0)}}\n"] }]
23
+ args: [{ selector: 'sci-ellipsis-throbber', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, template: "<div class=\"point\"></div>\n<div class=\"point\"></div>\n<div class=\"point\"></div>\n", styles: [":host{display:inline-flex;justify-content:space-between;font-size:var(--sci-throbber-size);width:1em;box-sizing:border-box}:host>div.point{flex:none;border-radius:50%;width:.3em;height:.3em;animation:sci-ellipsis-throbber var(--sci-throbber-duration) ease-in-out infinite;background-color:var(--sci-throbber-color)}:host>div.point:nth-child(1){animation-delay:calc(var(--sci-throbber-duration) / -6)}:host>div.point:nth-child(2){animation-delay:calc(var(--sci-throbber-duration) / -12)}@keyframes sci-ellipsis-throbber{0%{transform:scale(0)}40%{transform:scale(1)}80%,to{transform:scale(0)}}\n"] }]
24
24
  }] });
25
25
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxsaXBzaXMtdGhyb2JiZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2Npb24vY29tcG9uZW50cy90aHJvYmJlci9zcmMvZWxsaXBzaXMtdGhyb2JiZXIvZWxsaXBzaXMtdGhyb2JiZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2Npb24vY29tcG9uZW50cy90aHJvYmJlci9zcmMvZWxsaXBzaXMtdGhyb2JiZXIvZWxsaXBzaXMtdGhyb2JiZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7O0dBUUc7QUFFSCxPQUFPLEVBQUMsdUJBQXVCLEVBQUUsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDOztBQUVqRTs7OztHQUlHO0FBUUgsTUFBTSxPQUFPLDRCQUE0Qjs4R0FBNUIsNEJBQTRCO2tHQUE1Qiw0QkFBNEIsaUZDeEJ6Qyx5RkFHQTs7MkZEcUJhLDRCQUE0QjtrQkFQeEMsU0FBUzsrQkFDRSx1QkFBdUIsbUJBR2hCLHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsSUFBSSIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTgtMjAxOSBTd2lzcyBGZWRlcmFsIFJhaWx3YXlzXG4gKlxuICogVGhpcyBwcm9ncmFtIGFuZCB0aGUgYWNjb21wYW55aW5nIG1hdGVyaWFscyBhcmUgbWFkZVxuICogYXZhaWxhYmxlIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgRWNsaXBzZSBQdWJsaWMgTGljZW5zZSAyLjBcbiAqIHdoaWNoIGlzIGF2YWlsYWJsZSBhdCBodHRwczovL3d3dy5lY2xpcHNlLm9yZy9sZWdhbC9lcGwtMi4wL1xuICpcbiAqICBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogRVBMLTIuMFxuICovXG5cbmltcG9ydCB7Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbi8qKlxuICogUmVwcmVzZW50cyBhIHRocm9iYmVyIGFzIGFuIGVsbGlwc2lzIGNvbnNpc3Rpbmcgb2YgdGhyZWUgaG9yaXpvbnRhbGx5IGFycmFuZ2VkIHBvaW50cyB0aGF0IGFwcGVhciBvbmUgYWZ0ZXIgdGhlIG90aGVyLlxuICpcbiAqIFRocm9iYmVyIHR5cGU6IGBlbGxpcHNpc2BcbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2NpLWVsbGlwc2lzLXRocm9iYmVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2VsbGlwc2lzLXRocm9iYmVyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZWxsaXBzaXMtdGhyb2JiZXIuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG59KVxuZXhwb3J0IGNsYXNzIFNjaUVsbGlwc2lzVGhyb2JiZXJDb21wb25lbnQge1xufVxuIiwiPGRpdiBjbGFzcz1cInBvaW50XCI+PC9kaXY+XG48ZGl2IGNsYXNzPVwicG9pbnRcIj48L2Rpdj5cbjxkaXYgY2xhc3M9XCJwb2ludFwiPjwvZGl2PlxuIl19