@metadev/lux 0.24.0 → 0.26.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 (51) hide show
  1. package/esm2020/lib/autocomplete/autocomplete.component.mjs +33 -34
  2. package/esm2020/lib/autocomplete-list/autocomplete-list.component.mjs +6 -6
  3. package/esm2020/lib/breadcrumb/breadcrumb.component.mjs +3 -3
  4. package/esm2020/lib/checkbox/checkbox.component.mjs +25 -25
  5. package/esm2020/lib/datetime/datetime.component.mjs +36 -36
  6. package/esm2020/lib/filter/filter.component.mjs +23 -23
  7. package/esm2020/lib/geolocation/geolocation.component.mjs +53 -53
  8. package/esm2020/lib/geolocation/geolocation.service.mjs +3 -3
  9. package/esm2020/lib/geolocation/openlayer-loader.service.mjs +3 -3
  10. package/esm2020/lib/input/input.component.mjs +40 -40
  11. package/esm2020/lib/input/regexp.service.mjs +3 -3
  12. package/esm2020/lib/lux.module.mjs +6 -10
  13. package/esm2020/lib/map/map.component.mjs +20 -21
  14. package/esm2020/lib/modal/modal-backdrop.mjs +3 -3
  15. package/esm2020/lib/modal/modal-config.mjs +3 -3
  16. package/esm2020/lib/modal/modal-ref.mjs +11 -11
  17. package/esm2020/lib/modal/modal-stack.mjs +3 -3
  18. package/esm2020/lib/modal/modal-window.mjs +14 -14
  19. package/esm2020/lib/modal/modal.service.mjs +3 -3
  20. package/esm2020/lib/pagination/pagination.component.mjs +27 -27
  21. package/esm2020/lib/radiogroup/radiogroup.component.mjs +20 -20
  22. package/esm2020/lib/select/select.component.mjs +3 -3
  23. package/esm2020/lib/tooltip/tooltip.component.mjs +3 -3
  24. package/esm2020/lib/tooltip/tooltip.directive.mjs +3 -3
  25. package/esm2020/lib/tooltip/tooltip.service.mjs +3 -3
  26. package/esm2020/lib/voice-recognition/voice-recognition.directive.mjs +3 -3
  27. package/fesm2015/metadev-lux.mjs +339 -344
  28. package/fesm2015/metadev-lux.mjs.map +1 -1
  29. package/fesm2020/metadev-lux.mjs +339 -344
  30. package/fesm2020/metadev-lux.mjs.map +1 -1
  31. package/lib/autocomplete/autocomplete.component.d.ts +2 -2
  32. package/lib/autocomplete-list/autocomplete-list.component.d.ts +1 -1
  33. package/lib/breadcrumb/breadcrumb.component.d.ts +1 -1
  34. package/lib/checkbox/checkbox.component.d.ts +1 -1
  35. package/lib/datasource.d.ts +2 -2
  36. package/lib/datetime/datetime.component.d.ts +1 -1
  37. package/lib/filter/filter.component.d.ts +1 -1
  38. package/lib/geolocation/geolocation.component.d.ts +1 -1
  39. package/lib/input/input.component.d.ts +1 -1
  40. package/lib/lux.module.d.ts +5 -6
  41. package/lib/map/map.component.d.ts +1 -1
  42. package/lib/modal/modal-backdrop.d.ts +1 -1
  43. package/lib/modal/modal-window.d.ts +1 -1
  44. package/lib/pagination/pagination.component.d.ts +1 -1
  45. package/lib/radiogroup/radiogroup.component.d.ts +1 -1
  46. package/lib/select/select.component.d.ts +1 -1
  47. package/lib/tooltip/placement.d.ts +1 -1
  48. package/lib/tooltip/tooltip.component.d.ts +1 -1
  49. package/lib/tooltip/tooltip.directive.d.ts +1 -1
  50. package/lib/voice-recognition/voice-recognition.directive.d.ts +1 -1
  51. package/package.json +4 -4
@@ -3,24 +3,7 @@ import { BehaviorSubject } from 'rxjs';
3
3
  import { OpenLayerLoaderService } from '../geolocation/openlayer-loader.service';
4
4
  import * as i0 from "@angular/core";
5
5
  import * as i1 from "../geolocation/openlayer-loader.service";
6
- import * as i2 from "angular-resize-event";
7
6
  export class MapComponent {
8
- constructor(olLoader) {
9
- this.loaded$ = new BehaviorSubject(false);
10
- this.valueChange = new EventEmitter();
11
- olLoader.load().subscribe((_) => {
12
- // Initialize
13
- this._markerSource = new ol.source.Vector();
14
- this._markerStyle = new ol.style.Style({
15
- image: new ol.style.Icon({
16
- anchor: [0.5, 1],
17
- scale: 0.25,
18
- src: '/assets/img/marker.png'
19
- })
20
- });
21
- this.loaded$.next(true);
22
- });
23
- }
24
7
  set zoom(zoom) {
25
8
  if (!isNaN(zoom)) {
26
9
  this._zoom = zoom;
@@ -110,6 +93,22 @@ export class MapComponent {
110
93
  coordinates: this.markerCoordinates
111
94
  };
112
95
  }
96
+ constructor(olLoader) {
97
+ this.loaded$ = new BehaviorSubject(false);
98
+ this.valueChange = new EventEmitter();
99
+ olLoader.load().subscribe((_) => {
100
+ // Initialize
101
+ this._markerSource = new ol.source.Vector();
102
+ this._markerStyle = new ol.style.Style({
103
+ image: new ol.style.Icon({
104
+ anchor: [0.5, 1],
105
+ scale: 0.25,
106
+ src: '/assets/img/marker.png'
107
+ })
108
+ });
109
+ this.loaded$.next(true);
110
+ });
111
+ }
113
112
  ngOnInit() {
114
113
  this.mapId = this.mapId ? this.mapId : 'map' + MapComponent.idCounter++;
115
114
  }
@@ -242,9 +241,9 @@ export class MapComponent {
242
241
  }
243
242
  }
244
243
  MapComponent.idCounter = 0;
245
- MapComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: MapComponent, deps: [{ token: i1.OpenLayerLoaderService }], target: i0.ɵɵFactoryTarget.Component });
246
- MapComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: MapComponent, selector: "lux-map", inputs: { mapId: "mapId", zoom: "zoom", center: "center", readonly: "readonly", markerCoordinates: "markerCoordinates", markerPoint: "markerPoint" }, outputs: { valueChange: "valueChange" }, ngImport: i0, template: "<div [id]=\"mapId\" class=\"map\" (resized)=\"onResize()\"></div>\n", styles: [".map{min-height:100px;height:100%;min-width:160px;width:100%}\n"], dependencies: [{ kind: "directive", type: i2.ResizedDirective, selector: "[resized]", outputs: ["resized"] }] });
247
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: MapComponent, decorators: [{
244
+ MapComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: MapComponent, deps: [{ token: i1.OpenLayerLoaderService }], target: i0.ɵɵFactoryTarget.Component });
245
+ MapComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.2", type: MapComponent, selector: "lux-map", inputs: { mapId: "mapId", zoom: "zoom", center: "center", readonly: "readonly", markerCoordinates: "markerCoordinates", markerPoint: "markerPoint" }, outputs: { valueChange: "valueChange" }, ngImport: i0, template: "<div [id]=\"mapId\" class=\"map\" (resized)=\"onResize()\"></div>\n", styles: [".map{min-height:100px;height:100%;min-width:160px;width:100%}\n"] });
246
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: MapComponent, decorators: [{
248
247
  type: Component,
249
248
  args: [{ selector: 'lux-map', template: "<div [id]=\"mapId\" class=\"map\" (resized)=\"onResize()\"></div>\n", styles: [".map{min-height:100px;height:100%;min-width:160px;width:100%}\n"] }]
250
249
  }], ctorParameters: function () { return [{ type: i1.OpenLayerLoaderService }]; }, propDecorators: { mapId: [{
@@ -262,4 +261,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImpor
262
261
  }], valueChange: [{
263
262
  type: Output
264
263
  }] } });
265
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2x1eC9zcmMvbGliL21hcC9tYXAuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbHV4L3NyYy9saWIvbWFwL21hcC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULEtBQUssRUFDTCxNQUFNLEVBQ04sWUFBWSxFQUdiLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdkMsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0seUNBQXlDLENBQUM7Ozs7QUFZakYsTUFBTSxPQUFPLFlBQVk7SUFvSHZCLFlBQVksUUFBZ0M7UUFqSHBDLFlBQU8sR0FBNkIsSUFBSSxlQUFlLENBQUMsS0FBSyxDQUFDLENBQUM7UUE0RzdELGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQVksQ0FBQztRQU1uRCxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDOUIsYUFBYTtZQUNiLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxFQUFFLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQzVDLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxFQUFFLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQztnQkFDckMsS0FBSyxFQUFFLElBQUksRUFBRSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUM7b0JBQ3ZCLE1BQU0sRUFBRSxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUM7b0JBQ2hCLEtBQUssRUFBRSxJQUFJO29CQUNYLEdBQUcsRUFBRSx3QkFBd0I7aUJBQzlCLENBQUM7YUFDSCxDQUFDLENBQUM7WUFDSCxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENB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QUFDO1NBQ3JCO1FBQ0QsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLEVBQUUsQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUNoRSxpRkFBaUY7UUFDakYsT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLEVBQUUsV0FBVyxFQUFFLFdBQVcsQ0FBQyxDQUFDO0lBQ2xFLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxJQUFJLENBQUMsSUFBSSxFQUFFO1lBQ2IsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztTQUN4QjtJQUNILENBQUM7O0FBdFJNLHNCQUFTLEdBQUcsQ0FBQyxDQUFDO3lHQURWLFlBQVk7NkZBQVosWUFBWSw4T0NyQnpCLHFFQUNBOzJGRG9CYSxZQUFZO2tCQUx4QixTQUFTOytCQUNFLFNBQVM7NkdBV1YsS0FBSztzQkFBYixLQUFLO2dCQUlGLElBQUk7c0JBRFAsS0FBSztnQkFlRixNQUFNO3NCQURULEtBQUs7Z0JBZUYsUUFBUTtzQkFEWCxLQUFLO2dCQW9DTSxpQkFBaUI7c0JBRDVCLEtBQUs7Z0JBa0JGLFdBQVc7c0JBRGQsS0FBSztnQkFxQkksV0FBVztzQkFBcEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgSW5wdXQsXG4gIE91dHB1dCxcbiAgRXZlbnRFbWl0dGVyLFxuICBPbkluaXQsXG4gIEFmdGVyVmlld0luaXRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IE9wZW5MYXllckxvYWRlclNlcnZpY2UgfSBmcm9tICcuLi9nZW9sb2NhdGlvbi9vcGVubGF5ZXItbG9hZGVyLnNlcnZpY2UnO1xuXG5pbXBvcnQgeyBHZW9Qb2ludCB9IGZyb20gJy4vZ2VvcG9pbnQnO1xuXG4vLyBAZHluYW1pY1xuZGVjbGFyZSBjb25zdCBvbDogYW55O1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdsdXgtbWFwJyxcbiAgdGVtcGxhdGVVcmw6ICcuL21hcC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL21hcC5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIE1hcENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCB7XG4gIHN0YXRpYyBpZENvdW50ZXIgPSAwO1xuXG4gIHByaXZhdGUgbG9hZGVkJDogQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+ID0gbmV3IEJlaGF2aW9yU3ViamVjdChmYWxzZSk7XG5cbiAgcHJpdmF0ZSBfbWFwOiBhbnk7XG5cbiAgQElucHV0KCkgbWFwSWQ7XG5cbiAgX3pvb206IG51bWJlcjtcbiAgQElucHV0KClcbiAgc2V0IHpvb20oem9vbTogbnVtYmVyKSB7XG4gICAgaWYgKCFpc05hTih6b29tKSkge1xuICAgICAgdGhpcy5fem9vbSA9IHpvb207XG4gICAgICBpZiAodGhpcy5fbWFwKSB7XG4gICAgICAgIHRoaXMuX21hcC5nZXRWaWV3KCkuc2V0Wm9vbSh6b29tKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgZ2V0IHpvb20oKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5fem9vbTtcbiAgfVxuXG4gIF9jZW50ZXI6IEdlb1BvaW50O1xuICBASW5wdXQoKVxuICBzZXQgY2VudGVyKGNlbnRlcjogR2VvUG9pbnQpIHtcbiAgICBpZiAoY2VudGVyICYmIGNlbnRlci5jb29yZGluYXRlcyAmJiBjZW50ZXIuY29vcmRpbmF0ZXMubGVuZ3RoID09PSAyKSB7XG4gICAgICB0aGlzLl9jZW50ZXIgPSBjZW50ZXI7XG4gICAgICBpZiAodGhpcy5fbWFwKSB7XG4gICAgICAgIHRoaXMuX21hcC5nZXRWaWV3KCkuc2V0Q2VudGVyKG9sLnByb2ouZnJvbUxvbkxhdChjZW50ZXIuY29vcmRpbmF0ZXMpKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgZ2V0IGNlbnRlcigpOiBHZW9Qb2ludCB7XG4gICAgcmV0dXJuIHRoaXMuX2NlbnRlcjtcbiAgfVxuXG4gIF9yZWFkb25seTogYm9vbGVhbjtcbiAgQElucHV0KClcbiAgc2V0IHJlYWRvbmx5KHJlYWRvbmx5OiBib29sZWFuKSB7XG4gICAgaWYgKCFyZWFkb25seSkge1xuICAgICAgaWYgKHRoaXMuX21hcCkge1xuICAgICAgICB0aGlzLl9tYXAub24oJ2NsaWNrJywgKGFyZ3M6IGFueSkgPT4ge1xuICAgICAgICAgIC8vIGFyZ3MuY29vcmRpbmF0ZSBpcyBpbiBFUFNHOjM4NTcgKG1ldGVycyksIHdlIHRyYW5zZm9ybSBpdCBpbnRvIEVQU0c6NDMyNiAoZGVncmVlcylcbiAgICAgICAgICBjb25zdCBjb29yZGluYXRlcyA9IG9sLnByb2oudG9Mb25MYXQoYXJncy5jb29yZGluYXRlKTtcbiAgICAgICAgICAvLyBhbHRlcm5hdGl2ZWx5OiBjb25zdCBsb25MYXQgPSBvbC5wcm9qLnRyYW5zZm9ybShhcmdzLmNvb3JkaW5hdGUsJ0VQU0c6Mzg1NycsJ0VQU0c6NDMyNicpO1xuICAgICAgICAgIHRoaXMuYWRkTWFya2VyQXRDb29yZGluYXRlcyhjb29yZGluYXRlcyk7XG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLl9tYXAub24oJ3BvaW50ZXJtb3ZlJywgKGV2ZW50OiBhbnkpID0+IHtcbiAgICAgICAgICBjb25zdCBwaXhlbCA9IHRoaXMuX21hcC5nZXRFdmVudFBpeGVsKGV2ZW50Lm9yaWdpbmFsRXZlbnQpO1xuICAgICAgICAgIGNvbnN0IGhpdCA9IHRoaXMuX21hcC5oYXNGZWF0dXJlQXRQaXhlbChwaXhlbCk7XG4gICAgICAgICAgdGhpcy5fbWFwLmdldFZpZXdwb3J0KCkuc3R5bGUuY3Vyc29yID0gaGl0ID8gJ21vdmUnIDogJ2dyYWInO1xuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKHRoaXMuX21hcCkge1xuICAgICAgICB0aGlzLl9tYXAub24oJ2NsaWNrJywgKGFyZ3M6IGFueSkgPT4ge30pO1xuICAgICAgICB0aGlzLl9tYXAub24oJ3BvaW50ZXJtb3ZlJywgKGV2ZW50OiBhbnkpID0+IHt9KTtcbiAgICAgICAgdGhpcy5fbWFwLmdldFZpZXdwb3J0KCkuc3R5bGUuY3Vyc29yID0gJ2dyYWInO1xuICAgICAgfVxuICAgIH1cbiAgICB0aGlzLl9yZWFkb25seSA9IHJlYWRvbmx5O1xuICAgIC8vIHJlc2V0IG1hcmtlciBjb29yZGluYXRlcyBzbyBtYXJrZXIgaW50ZXJhY3Rpb25zIGNhbiBiZSBjcmVhdGVkIG9yIHJlY3JlYXRlZCBhY2NvcmRpbmdseVxuICAgIC8vIHRvIHRoZSBjaGFuZ2VzIHRvIHJlYWRvbmx5XG4gICAgdGhpcy5tYXJrZXJDb29yZGluYXRlcyA9IHRoaXMubWFya2VyQ29vcmRpbmF0ZXM7XG4gIH1cbiAgZ2V0IHJlYWRvbmx5KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9yZWFkb25seTtcbiAgfVxuXG4gIHByaXZhdGUgX21hcmtlcjogYW55O1xuICBwcml2YXRlIF9tYXJrZXJJbnRlcmFjdGlvbjogYW55O1xuICBwcml2YXRlIF9tYXJrZXJDb29yZGluYXRlczogbnVtYmVyW107XG4gIEBJbnB1dCgpXG4gIHByaXZhdGUgc2V0IG1hcmtlckNvb3JkaW5hdGVzKG1hcmtlckNvb3JkaW5hdGVzOiBudW1iZXJbXSkge1xuICAgIGlmIChtYXJrZXJDb29yZGluYXRlcyAmJiBtYXJrZXJDb29yZGluYXRlcy5sZW5ndGggPT09IDIpIHtcbiAgICAgIHRoaXMuX21hcmtlckNvb3JkaW5hdGVzID0gbWFya2VyQ29vcmRpbmF0ZXM7XG4gICAgICBpZiAodGhpcy5fbWFwKSB7XG4gICAgICAgIHRoaXMuYWRkTWFya2VyQXRDb29yZGluYXRlcyhtYXJrZXJDb29yZGluYXRlcyk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuX21hcmtlckNvb3JkaW5hdGVzID0gdW5kZWZpbmVkO1xuICAgICAgaWYgKHRoaXMuX21hcCkge1xuICAgICAgICB0aGlzLnJlbW92ZU1hcmtlcigpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBwcml2YXRlIGdldCBtYXJrZXJDb29yZGluYXRlcygpOiBudW1iZXJbXSB7XG4gICAgcmV0dXJuIHRoaXMuX21hcmtlckNvb3JkaW5hdGVzO1xuICB9XG4gIEBJbnB1dCgpXG4gIHNldCBtYXJrZXJQb2ludChtYXJrZXJQb2ludDogR2VvUG9pbnQpIHtcbiAgICBpZiAoXG4gICAgICAhbWFya2VyUG9pbnQgfHxcbiAgICAgICEobWFya2VyUG9pbnQuY29vcmRpbmF0ZXMgJiYgbWFya2VyUG9pbnQuY29vcmRpbmF0ZXMubGVuZ3RoID09PSAyKVxuICAgICkge1xuICAgICAgdGhpcy5tYXJrZXJDb29yZGluYXRlcyA9IHVuZGVmaW5lZDtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5tYXJrZXJDb29yZGluYXRlcyA9IFtcbiAgICAgICAgK21hcmtlclBvaW50LmNvb3JkaW5hdGVzWzBdLFxuICAgICAgICArbWFya2VyUG9pbnQuY29vcmRpbmF0ZXNbMV1cbiAgICAgIF07XG4gICAgfVxuICAgIHRoaXMudmFsdWVDaGFuZ2UuZW1pdChtYXJrZXJQb2ludCk7XG4gIH1cbiAgZ2V0IG1hcmtlclBvaW50KCk6IEdlb1BvaW50IHtcbiAgICByZXR1cm4ge1xuICAgICAgdHlwZTogJ1BvaW50JyxcbiAgICAgIGNvb3JkaW5hdGVzOiB0aGlzLm1hcmtlckNvb3JkaW5hdGVzXG4gICAgfTtcbiAgfVxuICBAT3V0cHV0KCkgdmFsdWVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPEdlb1BvaW50PigpO1xuXG4gIHByaXZhdGUgX21hcmtlclNvdXJjZTogYW55O1xuICBwcml2YXRlIF9tYXJrZXJTdHlsZTogYW55O1xuXG4gIGNvbnN0cnVjdG9yKG9sTG9hZGVyOiBPcGVuTGF5ZXJMb2FkZXJTZXJ2aWNlKSB7XG4gICAgb2xMb2FkZXIubG9hZCgpLnN1YnNjcmliZSgoXykgPT4ge1xuICAgICAgLy8gSW5pdGlhbGl6ZVxuICAgICAgdGhpcy5fbWFya2VyU291cmNlID0gbmV3IG9sLnNvdXJjZS5WZWN0b3IoKTtcbiAgICAgIHRoaXMuX21hcmtlclN0eWxlID0gbmV3IG9sLnN0eWxlLlN0eWxlKHtcbiAgICAgICAgaW1hZ2U6IG5ldyBvbC5zdHlsZS5JY29uKHtcbiAgICAgICAgICBhbmNob3I6IFswLjUsIDFdLFxuICAgICAgICAgIHNjYWxlOiAwLjI1LFxuICAgICAgICAgIHNyYzogJy9hc3NldHMvaW1nL21hcmtlci5wbmcnXG4gICAgICAgIH0pXG4gICAgICB9KTtcbiAgICAgIHRoaXMubG9hZGVkJC5uZXh0KHRydWUpO1xuICAgIH0pO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5tYXBJZCA9IHRoaXMubWFwSWQgPyB0aGlzLm1hcElkIDogJ21hcCcgKyBNYXBDb21wb25lbnQuaWRDb3VudGVyKys7XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgdGhpcy5sb2FkZWQkLnN1YnNjcmliZSgobG9hZGVkKSA9PiB7XG4gICAgICBpZiAobG9hZGVkKSB7XG4gICAgICAgIHRoaXMuaW5pdE1hcCgpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG4gIHByaXZhdGUgaW5pdE1hcCgpOiB2b2lkIHtcbiAgICB0aGlzLl9tYXAgPSBuZXcgb2wuTWFwKHtcbiAgICAgIHRhcmdldDogdGhpcy5tYXBJZCxcbiAgICAgIGNvbnRyb2xzOiBvbC5jb250cm9sLmRlZmF1bHRzKHsgYXR0cmlidXRpb246IGZhbHNlIH0pLFxuICAgICAgbGF5ZXJzOiBbXG4gICAgICAgIG5ldyBvbC5sYXllci5UaWxlKHtcbiAgICAgICAgICBzb3VyY2U6IG5ldyBvbC5zb3VyY2UuT1NNKClcbiAgICAgICAgfSksXG4gICAgICAgIG5ldyBvbC5sYXllci5WZWN0b3Ioe1xuICAgICAgICAgIHNvdXJjZTogdGhpcy5fbWFya2VyU291cmNlLFxuICAgICAgICAgIHN0eWxlOiB0aGlzLl9tYXJrZXJTdHlsZVxuICAgICAgICB9KVxuICAgICAgXSxcbiAgICAgIHZpZXc6IG5ldyBvbC5WaWV3KHtcbiAgICAgICAgY2VudGVyOiBvbC5wcm9qLmZyb21Mb25MYXQoXG4gICAgICAgICAgdGhpcy5jZW50ZXIgIT09IHVuZGVmaW5lZCA/IHRoaXMuY2VudGVyLmNvb3JkaW5hdGVzIDogWzAsIDBdXG4gICAgICAgICksXG4gICAgICAgIHpvb206IHRoaXMuem9vbVxuICAgICAgfSlcbiAgICB9KTtcblxuICAgIGlmICh0aGlzLmNlbnRlciA9PT0gdW5kZWZpbmVkIHx8IHRoaXMuY2VudGVyID09PSBudWxsKSB7XG4gICAgICAvLyBpZiB0aGUgY2VudGVyIGlzIG5vdCBzZXQsIHdlIHNldCBpdHMgZGVmYXVsdCB2YWx1ZVxuICAgICAgaWYgKCdnZW9sb2NhdGlvbicgaW4gbmF2aWdhdG9yKSB7XG4gICAgICAgIG5hdmlnYXRvci5nZW9sb2NhdGlvbi5nZXRDdXJyZW50UG9zaXRpb24oXG4gICAgICAgICAgKHBvc2l0aW9uKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmNlbnRlciA9IHtcbiAgICAgICAgICAgICAgdHlwZTogJ1BvaW50JyxcbiAgICAgICAgICAgICAgY29vcmRpbmF0ZXM6IFtwb3NpdGlvbi5jb29yZHMubG9uZ2l0dWRlLCBwb3NpdGlvbi5jb29yZHMubGF0aXR1ZGVdXG4gICAgICAgICAgICB9O1xuICAgICAgICAgIH0sXG4gICAgICAgICAgKGVycm9yKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmNlbnRlciA9IHtcbiAgICAgICAgICAgICAgdHlwZTogJ1BvaW50JyxcbiAgICAgICAgICAgICAgY29vcmRpbmF0ZXM6IFswLCAwXVxuICAgICAgICAgICAgfTtcbiAgICAgICAgICB9XG4gICAgICAgICk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmNlbnRlciA9IHtcbiAgICAgICAgICB0eXBlOiAnUG9pbnQnLFxuICAgICAgICAgIGNvb3JkaW5hdGVzOiBbMCwgMF1cbiAgICAgICAgfTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgLy8gdGhlIGNlbnRlciBuZWVkcyB0aGUgbWFwIHRvIGJlIHByb3Blcmx5IHNldCwgc28gaWYgaXQgd2FzIHNldCBiZWZvcmUgdGhlIG1hcCB3YXMgaW5pdGlhbGl6ZWQsXG4gICAgICAvLyB3ZSBzZXQgdGhlIGNlbnRlciBhZ2FpbiB0byBwZXJmb3JtIG5lY2Vzc2FyeSBhZGp1c3RlbWVudHNcbiAgICAgIHRoaXMuY2VudGVyID0gdGhpcy5jZW50ZXI7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuem9vbSA9PT0gdW5kZWZpbmVkIHx8IHRoaXMuem9vbSA9PT0gbnVsbCkge1xuICAgICAgLy8gaWYgdGhlIHpvb20gaXMgbm90IHNldCwgd2Ugc2V0IGl0cyBkZWZhdWx0IHZhbHVlXG4gICAgICB0aGlzLnpvb20gPSAxODtcbiAgICB9IGVsc2Uge1xuICAgICAgLy8gdGhlIHpvb20gbmVlZHMgdGhlIG1hcCB0byBiZSBwcm9wZXJseSBzZXQsIHNvIGlmIGl0IHdhcyBzZXQgYmVmb3JlIHRoZSBtYXAgd2FzIGluaXRpYWxpemVkLFxuICAgICAgLy8gd2Ugc2V0IHRoZSB6b29tIGFnYWluIHRvIHBlcmZvcm0gbmVjZXNzYXJ5IGFkanVzdGVtZW50c1xuICAgICAgdGhpcy56b29tID0gdGhpcy56b29tO1xuICAgIH1cblxuICAgIGlmICh0aGlzLnJlYWRvbmx5ID09PSB1bmRlZmluZWQgfHwgdGhpcy5yZWFkb25seSA9PT0gbnVsbCkge1xuICAgICAgLy8gaWYgcmVhZG9ubHkgaXMgbm90IHNldCwgd2Ugc2V0IGl0cyBkZWZhdWx0IHZhbHVlXG4gICAgICB0aGlzLnJlYWRvbmx5ID0gZmFsc2U7XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIHJlYWRvbmx5IG5lZWRzIHRoZSBtYXAgdG8gYmUgcHJvcGVybHkgc2V0LCBzbyBpZiBpdCB3YXMgc2V0IGJlZm9yZSB0aGUgbWFwIHdhcyBpbml0aWFsaXplZCxcbiAgICAgIC8vIHdlIHNldCByZWFkb25seSBhZ2FpbiB0byBwZXJmb3JtIG5lY2Vzc2FyeSBhZGp1c3RlbWVudHNcbiAgICAgIHRoaXMucmVhZG9ubHkgPSB0aGlzLnJlYWRvbmx5O1xuICAgIH1cblxuICAgIGlmIChcbiAgICAgIHRoaXMubWFya2VyQ29vcmRpbmF0ZXMgIT09IHVuZGVmaW5lZCAmJlxuICAgICAgdGhpcy5tYXJrZXJDb29yZGluYXRlcyAhPT0gbnVsbFxuICAgICkge1xuICAgICAgLy8gdGhlIG1hcmtlciBjb29yZGluYXRlcyBuZWVkIHRoZSBtYXAgdG8gYmUgcHJvcGVybHkgc2V0LCBzbyBpZiB0aGV5IHdlcmUgc2V0IGJlZm9yZSB0aGUgbWFwIHdhcyBpbml0aWFsaXplZCxcbiAgICAgIC8vIHdlIHNldCB0aGUgbWFya2VyIGNvb3JkaW5hdGVzIGFnYWluIHRvIHBlcmZvcm0gbmVjZXNzYXJ5IGFkanVzdGVtZW50c1xuICAgICAgdGhpcy5tYXJrZXJDb29yZGluYXRlcyA9IHRoaXMubWFya2VyQ29vcmRpbmF0ZXM7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBhZGRNYXJrZXJBdENvb3JkaW5hdGVzKGNvb3JkaW5hdGVzOiBudW1iZXJbXSk6IHZvaWQge1xuICAgIGlmIChjb29yZGluYXRlcyAmJiBjb29yZGluYXRlcy5sZW5ndGggPT09IDIpIHtcbiAgICAgIGlmICh0aGlzLl9tYXJrZXIgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICB0aGlzLnJlbW92ZU1hcmtlcigpO1xuICAgICAgfVxuICAgICAgdGhpcy5fbWFya2VyID0gbmV3IG9sLkZlYXR1cmUoe1xuICAgICAgICBnZW9tZXRyeTogbmV3IG9sLmdlb20uUG9pbnQoXG4gICAgICAgICAgLy8gW2xvbiwgbGF0XSBpcyBpbiBFUFNHOjQzMjYgKGRlZ3JlZXMpLCB3ZSB0cmFuc2Zvcm0gaXQgaW50byBFUFNHOjM4NTcgKG1ldGVycylcbiAgICAgICAgICBvbC5wcm9qLnRyYW5zZm9ybShjb29yZGluYXRlcywgJ0VQU0c6NDMyNicsICdFUFNHOjM4NTcnKVxuICAgICAgICApXG4gICAgICB9KTtcbiAgICAgIHRoaXMuX21hcmtlclNvdXJjZS5hZGRGZWF0dXJlKHRoaXMuX21hcmtlcik7XG4gICAgICB0aGlzLl9tYXJrZXJDb29yZGluYXRlcyA9IHRoaXMuZ2V0TWFya2VyQ29vcmRpbmF0ZXMoKTtcblxuICAgICAgaWYgKCF0aGlzLnJlYWRvbmx5KSB7XG4gICAgICAgIGNvbnN0IGRyYWdJbnRlcmFjdGlvbiA9IG5ldyBvbC5pbnRlcmFjdGlvbi5Nb2RpZnkoe1xuICAgICAgICAgIGZlYXR1cmVzOiBuZXcgb2wuQ29sbGVjdGlvbihbdGhpcy5fbWFya2VyXSksXG4gICAgICAgICAgc3R5bGU6IHRoaXMuX21hcmtlclN0eWxlLFxuICAgICAgICAgIHBpeGVsVG9sZXJhbmNlOiA1MCxcbiAgICAgICAgICBoaXREZXRlY3Rpb246IHRydWVcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuX21hcmtlckludGVyYWN0aW9uID0gZHJhZ0ludGVyYWN0aW9uO1xuICAgICAgICB0aGlzLl9tYXAuYWRkSW50ZXJhY3Rpb24oZHJhZ0ludGVyYWN0aW9uKTtcbiAgICAgIH1cblxuICAgICAgdGhpcy5fbWFya2VyLm9uKFxuICAgICAgICAnY2hhbmdlJyxcbiAgICAgICAgKCkgPT4ge1xuICAgICAgICAgIHRoaXMuX21hcmtlckNvb3JkaW5hdGVzID0gdGhpcy5nZXRNYXJrZXJDb29yZGluYXRlcygpO1xuICAgICAgICB9LFxuICAgICAgICB0aGlzLl9tYXJrZXJcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSByZW1vdmVNYXJrZXIoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX21hcmtlciAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aGlzLl9tYXJrZXJTb3VyY2UucmVtb3ZlRmVhdHVyZSh0aGlzLl9tYXJrZXIpO1xuICAgICAgdGhpcy5fbWFya2VyID0gdW5kZWZpbmVkO1xuICAgIH1cbiAgICBpZiAodGhpcy5fbWFya2VySW50ZXJhY3Rpb24gIT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy5fbWFwLmdldEludGVyYWN0aW9ucygpLnBvcCgpO1xuICAgICAgdGhpcy5fbWFya2VySW50ZXJhY3Rpb24gPSB1bmRlZmluZWQ7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBnZXRNYXJrZXJDb29yZGluYXRlcygpOiBudW1iZXJbXSB8IG51bGwge1xuICAgIGlmICh0aGlzLl9tYXJrZXIgPT09IHVuZGVmaW5lZCB8fCB0aGlzLl9tYXJrZXIgPT0gbnVsbCkge1xuICAgICAgcmV0dXJuIHRoaXMuX21hcmtlcjtcbiAgICB9XG4gICAgY29uc3QgY29vcmRpbmF0ZXMgPSB0aGlzLl9tYXJrZXIuZ2V0R2VvbWV0cnkoKS5nZXRDb29yZGluYXRlcygpO1xuICAgIC8vIGNvb3JkaW5hdGVzIGlzIGluIEVQU0c6Mzg1NyAobWV0ZXJzKSwgd2UgdHJhbnNmb3JtIGl0IGludG8gRVBTRzo0MzI2IChkZWdyZWVzKVxuICAgIHJldHVybiBvbC5wcm9qLnRyYW5zZm9ybShjb29yZGluYXRlcywgJ0VQU0c6Mzg1NycsICdFUFNHOjQzMjYnKTtcbiAgfVxuXG4gIG9uUmVzaXplKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLl9tYXApIHtcbiAgICAgIHRoaXMuX21hcC51cGRhdGVTaXplKCk7XG4gICAgfVxuICB9XG59XG4iLCI8ZGl2IFtpZF09XCJtYXBJZFwiIGNsYXNzPVwibWFwXCIgKHJlc2l6ZWQpPVwib25SZXNpemUoKVwiPjwvZGl2PlxuIl19
264
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2x1eC9zcmMvbGliL21hcC9tYXAuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbHV4L3NyYy9saWIvbWFwL21hcC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULEtBQUssRUFDTCxNQUFNLEVBQ04sWUFBWSxFQUdiLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdkMsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0seUNBQXlDLENBQUM7OztBQVlqRixNQUFNLE9BQU8sWUFBWTtJQVV2QixJQUNJLElBQUksQ0FBQyxJQUFZO1FBQ25CLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDaEIsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7WUFDbEIsSUFBSSxJQUFJLENBQUMsSUFBSSxFQUFFO2dCQUNiLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO2FBQ25DO1NBQ0Y7SUFDSCxDQUFDO0lBQ0QsSUFBSSxJQUFJO1FBQ04sT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3BCLENBQUM7SUFHRCxJQUNJLE1BQU0sQ0FBQyxNQUFnQjtRQUN6QixJQUFJLE1BQU0sSUFBSSxNQUFNLENBQUMsV0FBVyxJQUFJLE1BQU0sQ0FBQyxXQUFXLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtZQUNuRSxJQUFJLENBQUMsT0FBTyxHQUFHLE1BQU0sQ0FBQztZQUN0QixJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUU7Z0JBQ2IsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFD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U0FDckI7UUFDRCxNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsRUFBRSxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ2hFLGlGQUFpRjtRQUNqRixPQUFPLEVBQUUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFdBQVcsRUFBRSxXQUFXLEVBQUUsV0FBVyxDQUFDLENBQUM7SUFDbEUsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUU7WUFDYixJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1NBQ3hCO0lBQ0gsQ0FBQzs7QUF0Uk0sc0JBQVMsR0FBRyxDQUFDLENBQUM7eUdBRFYsWUFBWTs2RkFBWixZQUFZLDhPQ3JCekIscUVBQ0E7MkZEb0JhLFlBQVk7a0JBTHhCLFNBQVM7K0JBQ0UsU0FBUzs2R0FXVixLQUFLO3NCQUFiLEtBQUs7Z0JBSUYsSUFBSTtzQkFEUCxLQUFLO2dCQWVGLE1BQU07c0JBRFQsS0FBSztnQkFlRixRQUFRO3NCQURYLEtBQUs7Z0JBb0NNLGlCQUFpQjtzQkFENUIsS0FBSztnQkFrQkYsV0FBVztzQkFEZCxLQUFLO2dCQXFCSSxXQUFXO3NCQUFwQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBJbnB1dCxcbiAgT3V0cHV0LFxuICBFdmVudEVtaXR0ZXIsXG4gIE9uSW5pdCxcbiAgQWZ0ZXJWaWV3SW5pdFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgT3BlbkxheWVyTG9hZGVyU2VydmljZSB9IGZyb20gJy4uL2dlb2xvY2F0aW9uL29wZW5sYXllci1sb2FkZXIuc2VydmljZSc7XG5cbmltcG9ydCB7IEdlb1BvaW50IH0gZnJvbSAnLi9nZW9wb2ludCc7XG5cbi8vIEBkeW5hbWljXG5kZWNsYXJlIGNvbnN0IG9sOiBhbnk7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2x1eC1tYXAnLFxuICB0ZW1wbGF0ZVVybDogJy4vbWFwLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbWFwLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgTWFwQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0IHtcbiAgc3RhdGljIGlkQ291bnRlciA9IDA7XG5cbiAgcHJpdmF0ZSBsb2FkZWQkOiBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0KGZhbHNlKTtcblxuICBwcml2YXRlIF9tYXA6IGFueTtcblxuICBASW5wdXQoKSBtYXBJZDtcblxuICBfem9vbTogbnVtYmVyO1xuICBASW5wdXQoKVxuICBzZXQgem9vbSh6b29tOiBudW1iZXIpIHtcbiAgICBpZiAoIWlzTmFOKHpvb20pKSB7XG4gICAgICB0aGlzLl96b29tID0gem9vbTtcbiAgICAgIGlmICh0aGlzLl9tYXApIHtcbiAgICAgICAgdGhpcy5fbWFwLmdldFZpZXcoKS5zZXRab29tKHpvb20pO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBnZXQgem9vbSgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLl96b29tO1xuICB9XG5cbiAgX2NlbnRlcjogR2VvUG9pbnQ7XG4gIEBJbnB1dCgpXG4gIHNldCBjZW50ZXIoY2VudGVyOiBHZW9Qb2ludCkge1xuICAgIGlmIChjZW50ZXIgJiYgY2VudGVyLmNvb3JkaW5hdGVzICYmIGNlbnRlci5jb29yZGluYXRlcy5sZW5ndGggPT09IDIpIHtcbiAgICAgIHRoaXMuX2NlbnRlciA9IGNlbnRlcjtcbiAgICAgIGlmICh0aGlzLl9tYXApIHtcbiAgICAgICAgdGhpcy5fbWFwLmdldFZpZXcoKS5zZXRDZW50ZXIob2wucHJvai5mcm9tTG9uTGF0KGNlbnRlci5jb29yZGluYXRlcykpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBnZXQgY2VudGVyKCk6IEdlb1BvaW50IHtcbiAgICByZXR1cm4gdGhpcy5fY2VudGVyO1xuICB9XG5cbiAgX3JlYWRvbmx5OiBib29sZWFuO1xuICBASW5wdXQoKVxuICBzZXQgcmVhZG9ubHkocmVhZG9ubHk6IGJvb2xlYW4pIHtcbiAgICBpZiAoIXJlYWRvbmx5KSB7XG4gICAgICBpZiAodGhpcy5fbWFwKSB7XG4gICAgICAgIHRoaXMuX21hcC5vbignY2xpY2snLCAoYXJnczogYW55KSA9PiB7XG4gICAgICAgICAgLy8gYXJncy5jb29yZGluYXRlIGlzIGluIEVQU0c6Mzg1NyAobWV0ZXJzKSwgd2UgdHJhbnNmb3JtIGl0IGludG8gRVBTRzo0MzI2IChkZWdyZWVzKVxuICAgICAgICAgIGNvbnN0IGNvb3JkaW5hdGVzID0gb2wucHJvai50b0xvbkxhdChhcmdzLmNvb3JkaW5hdGUpO1xuICAgICAgICAgIC8vIGFsdGVybmF0aXZlbHk6IGNvbnN0IGxvbkxhdCA9IG9sLnByb2oudHJhbnNmb3JtKGFyZ3MuY29vcmRpbmF0ZSwnRVBTRzozODU3JywnRVBTRzo0MzI2Jyk7XG4gICAgICAgICAgdGhpcy5hZGRNYXJrZXJBdENvb3JkaW5hdGVzKGNvb3JkaW5hdGVzKTtcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuX21hcC5vbigncG9pbnRlcm1vdmUnLCAoZXZlbnQ6IGFueSkgPT4ge1xuICAgICAgICAgIGNvbnN0IHBpeGVsID0gdGhpcy5fbWFwLmdldEV2ZW50UGl4ZWwoZXZlbnQub3JpZ2luYWxFdmVudCk7XG4gICAgICAgICAgY29uc3QgaGl0ID0gdGhpcy5fbWFwLmhhc0ZlYXR1cmVBdFBpeGVsKHBpeGVsKTtcbiAgICAgICAgICB0aGlzLl9tYXAuZ2V0Vmlld3BvcnQoKS5zdHlsZS5jdXJzb3IgPSBoaXQgPyAnbW92ZScgOiAnZ3JhYic7XG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICBpZiAodGhpcy5fbWFwKSB7XG4gICAgICAgIHRoaXMuX21hcC5vbignY2xpY2snLCAoYXJnczogYW55KSA9PiB7fSk7XG4gICAgICAgIHRoaXMuX21hcC5vbigncG9pbnRlcm1vdmUnLCAoZXZlbnQ6IGFueSkgPT4ge30pO1xuICAgICAgICB0aGlzLl9tYXAuZ2V0Vmlld3BvcnQoKS5zdHlsZS5jdXJzb3IgPSAnZ3JhYic7XG4gICAgICB9XG4gICAgfVxuICAgIHRoaXMuX3JlYWRvbmx5ID0gcmVhZG9ubHk7XG4gICAgLy8gcmVzZXQgbWFya2VyIGNvb3JkaW5hdGVzIHNvIG1hcmtlciBpbnRlcmFjdGlvbnMgY2FuIGJlIGNyZWF0ZWQgb3IgcmVjcmVhdGVkIGFjY29yZGluZ2x5XG4gICAgLy8gdG8gdGhlIGNoYW5nZXMgdG8gcmVhZG9ubHlcbiAgICB0aGlzLm1hcmtlckNvb3JkaW5hdGVzID0gdGhpcy5tYXJrZXJDb29yZGluYXRlcztcbiAgfVxuICBnZXQgcmVhZG9ubHkoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX3JlYWRvbmx5O1xuICB9XG5cbiAgcHJpdmF0ZSBfbWFya2VyOiBhbnk7XG4gIHByaXZhdGUgX21hcmtlckludGVyYWN0aW9uOiBhbnk7XG4gIHByaXZhdGUgX21hcmtlckNvb3JkaW5hdGVzOiBudW1iZXJbXTtcbiAgQElucHV0KClcbiAgcHJpdmF0ZSBzZXQgbWFya2VyQ29vcmRpbmF0ZXMobWFya2VyQ29vcmRpbmF0ZXM6IG51bWJlcltdKSB7XG4gICAgaWYgKG1hcmtlckNvb3JkaW5hdGVzICYmIG1hcmtlckNvb3JkaW5hdGVzLmxlbmd0aCA9PT0gMikge1xuICAgICAgdGhpcy5fbWFya2VyQ29vcmRpbmF0ZXMgPSBtYXJrZXJDb29yZGluYXRlcztcbiAgICAgIGlmICh0aGlzLl9tYXApIHtcbiAgICAgICAgdGhpcy5hZGRNYXJrZXJBdENvb3JkaW5hdGVzKG1hcmtlckNvb3JkaW5hdGVzKTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5fbWFya2VyQ29vcmRpbmF0ZXMgPSB1bmRlZmluZWQ7XG4gICAgICBpZiAodGhpcy5fbWFwKSB7XG4gICAgICAgIHRoaXMucmVtb3ZlTWFya2VyKCk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIHByaXZhdGUgZ2V0IG1hcmtlckNvb3JkaW5hdGVzKCk6IG51bWJlcltdIHtcbiAgICByZXR1cm4gdGhpcy5fbWFya2VyQ29vcmRpbmF0ZXM7XG4gIH1cbiAgQElucHV0KClcbiAgc2V0IG1hcmtlclBvaW50KG1hcmtlclBvaW50OiBHZW9Qb2ludCkge1xuICAgIGlmIChcbiAgICAgICFtYXJrZXJQb2ludCB8fFxuICAgICAgIShtYXJrZXJQb2ludC5jb29yZGluYXRlcyAmJiBtYXJrZXJQb2ludC5jb29yZGluYXRlcy5sZW5ndGggPT09IDIpXG4gICAgKSB7XG4gICAgICB0aGlzLm1hcmtlckNvb3JkaW5hdGVzID0gdW5kZWZpbmVkO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLm1hcmtlckNvb3JkaW5hdGVzID0gW1xuICAgICAgICArbWFya2VyUG9pbnQuY29vcmRpbmF0ZXNbMF0sXG4gICAgICAgICttYXJrZXJQb2ludC5jb29yZGluYXRlc1sxXVxuICAgICAgXTtcbiAgICB9XG4gICAgdGhpcy52YWx1ZUNoYW5nZS5lbWl0KG1hcmtlclBvaW50KTtcbiAgfVxuICBnZXQgbWFya2VyUG9pbnQoKTogR2VvUG9pbnQge1xuICAgIHJldHVybiB7XG4gICAgICB0eXBlOiAnUG9pbnQnLFxuICAgICAgY29vcmRpbmF0ZXM6IHRoaXMubWFya2VyQ29vcmRpbmF0ZXNcbiAgICB9O1xuICB9XG4gIEBPdXRwdXQoKSB2YWx1ZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8R2VvUG9pbnQ+KCk7XG5cbiAgcHJpdmF0ZSBfbWFya2VyU291cmNlOiBhbnk7XG4gIHByaXZhdGUgX21hcmtlclN0eWxlOiBhbnk7XG5cbiAgY29uc3RydWN0b3Iob2xMb2FkZXI6IE9wZW5MYXllckxvYWRlclNlcnZpY2UpIHtcbiAgICBvbExvYWRlci5sb2FkKCkuc3Vic2NyaWJlKChfKSA9PiB7XG4gICAgICAvLyBJbml0aWFsaXplXG4gICAgICB0aGlzLl9tYXJrZXJTb3VyY2UgPSBuZXcgb2wuc291cmNlLlZlY3RvcigpO1xuICAgICAgdGhpcy5fbWFya2VyU3R5bGUgPSBuZXcgb2wuc3R5bGUuU3R5bGUoe1xuICAgICAgICBpbWFnZTogbmV3IG9sLnN0eWxlLkljb24oe1xuICAgICAgICAgIGFuY2hvcjogWzAuNSwgMV0sXG4gICAgICAgICAgc2NhbGU6IDAuMjUsXG4gICAgICAgICAgc3JjOiAnL2Fzc2V0cy9pbWcvbWFya2VyLnBuZydcbiAgICAgICAgfSlcbiAgICAgIH0pO1xuICAgICAgdGhpcy5sb2FkZWQkLm5leHQodHJ1ZSk7XG4gICAgfSk7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLm1hcElkID0gdGhpcy5tYXBJZCA/IHRoaXMubWFwSWQgOiAnbWFwJyArIE1hcENvbXBvbmVudC5pZENvdW50ZXIrKztcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmxvYWRlZCQuc3Vic2NyaWJlKChsb2FkZWQpID0+IHtcbiAgICAgIGlmIChsb2FkZWQpIHtcbiAgICAgICAgdGhpcy5pbml0TWFwKCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cbiAgcHJpdmF0ZSBpbml0TWFwKCk6IHZvaWQge1xuICAgIHRoaXMuX21hcCA9IG5ldyBvbC5NYXAoe1xuICAgICAgdGFyZ2V0OiB0aGlzLm1hcElkLFxuICAgICAgY29udHJvbHM6IG9sLmNvbnRyb2wuZGVmYXVsdHMoeyBhdHRyaWJ1dGlvbjogZmFsc2UgfSksXG4gICAgICBsYXllcnM6IFtcbiAgICAgICAgbmV3IG9sLmxheWVyLlRpbGUoe1xuICAgICAgICAgIHNvdXJjZTogbmV3IG9sLnNvdXJjZS5PU00oKVxuICAgICAgICB9KSxcbiAgICAgICAgbmV3IG9sLmxheWVyLlZlY3Rvcih7XG4gICAgICAgICAgc291cmNlOiB0aGlzLl9tYXJrZXJTb3VyY2UsXG4gICAgICAgICAgc3R5bGU6IHRoaXMuX21hcmtlclN0eWxlXG4gICAgICAgIH0pXG4gICAgICBdLFxuICAgICAgdmlldzogbmV3IG9sLlZpZXcoe1xuICAgICAgICBjZW50ZXI6IG9sLnByb2ouZnJvbUxvbkxhdChcbiAgICAgICAgICB0aGlzLmNlbnRlciAhPT0gdW5kZWZpbmVkID8gdGhpcy5jZW50ZXIuY29vcmRpbmF0ZXMgOiBbMCwgMF1cbiAgICAgICAgKSxcbiAgICAgICAgem9vbTogdGhpcy56b29tXG4gICAgICB9KVxuICAgIH0pO1xuXG4gICAgaWYgKHRoaXMuY2VudGVyID09PSB1bmRlZmluZWQgfHwgdGhpcy5jZW50ZXIgPT09IG51bGwpIHtcbiAgICAgIC8vIGlmIHRoZSBjZW50ZXIgaXMgbm90IHNldCwgd2Ugc2V0IGl0cyBkZWZhdWx0IHZhbHVlXG4gICAgICBpZiAoJ2dlb2xvY2F0aW9uJyBpbiBuYXZpZ2F0b3IpIHtcbiAgICAgICAgbmF2aWdhdG9yLmdlb2xvY2F0aW9uLmdldEN1cnJlbnRQb3NpdGlvbihcbiAgICAgICAgICAocG9zaXRpb24pID0+IHtcbiAgICAgICAgICAgIHRoaXMuY2VudGVyID0ge1xuICAgICAgICAgICAgICB0eXBlOiAnUG9pbnQnLFxuICAgICAgICAgICAgICBjb29yZGluYXRlczogW3Bvc2l0aW9uLmNvb3Jkcy5sb25naXR1ZGUsIHBvc2l0aW9uLmNvb3Jkcy5sYXRpdHVkZV1cbiAgICAgICAgICAgIH07XG4gICAgICAgICAgfSxcbiAgICAgICAgICAoZXJyb3IpID0+IHtcbiAgICAgICAgICAgIHRoaXMuY2VudGVyID0ge1xuICAgICAgICAgICAgICB0eXBlOiAnUG9pbnQnLFxuICAgICAgICAgICAgICBjb29yZGluYXRlczogWzAsIDBdXG4gICAgICAgICAgICB9O1xuICAgICAgICAgIH1cbiAgICAgICAgKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuY2VudGVyID0ge1xuICAgICAgICAgIHR5cGU6ICdQb2ludCcsXG4gICAgICAgICAgY29vcmRpbmF0ZXM6IFswLCAwXVxuICAgICAgICB9O1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICAvLyB0aGUgY2VudGVyIG5lZWRzIHRoZSBtYXAgdG8gYmUgcHJvcGVybHkgc2V0LCBzbyBpZiBpdCB3YXMgc2V0IGJlZm9yZSB0aGUgbWFwIHdhcyBpbml0aWFsaXplZCxcbiAgICAgIC8vIHdlIHNldCB0aGUgY2VudGVyIGFnYWluIHRvIHBlcmZvcm0gbmVjZXNzYXJ5IGFkanVzdGVtZW50c1xuICAgICAgdGhpcy5jZW50ZXIgPSB0aGlzLmNlbnRlcjtcbiAgICB9XG5cbiAgICBpZiAodGhpcy56b29tID09PSB1bmRlZmluZWQgfHwgdGhpcy56b29tID09PSBudWxsKSB7XG4gICAgICAvLyBpZiB0aGUgem9vbSBpcyBub3Qgc2V0LCB3ZSBzZXQgaXRzIGRlZmF1bHQgdmFsdWVcbiAgICAgIHRoaXMuem9vbSA9IDE4O1xuICAgIH0gZWxzZSB7XG4gICAgICAvLyB0aGUgem9vbSBuZWVkcyB0aGUgbWFwIHRvIGJlIHByb3Blcmx5IHNldCwgc28gaWYgaXQgd2FzIHNldCBiZWZvcmUgdGhlIG1hcCB3YXMgaW5pdGlhbGl6ZWQsXG4gICAgICAvLyB3ZSBzZXQgdGhlIHpvb20gYWdhaW4gdG8gcGVyZm9ybSBuZWNlc3NhcnkgYWRqdXN0ZW1lbnRzXG4gICAgICB0aGlzLnpvb20gPSB0aGlzLnpvb207XG4gICAgfVxuXG4gICAgaWYgKHRoaXMucmVhZG9ubHkgPT09IHVuZGVmaW5lZCB8fCB0aGlzLnJlYWRvbmx5ID09PSBudWxsKSB7XG4gICAgICAvLyBpZiByZWFkb25seSBpcyBub3Qgc2V0LCB3ZSBzZXQgaXRzIGRlZmF1bHQgdmFsdWVcbiAgICAgIHRoaXMucmVhZG9ubHkgPSBmYWxzZTtcbiAgICB9IGVsc2Uge1xuICAgICAgLy8gcmVhZG9ubHkgbmVlZHMgdGhlIG1hcCB0byBiZSBwcm9wZXJseSBzZXQsIHNvIGlmIGl0IHdhcyBzZXQgYmVmb3JlIHRoZSBtYXAgd2FzIGluaXRpYWxpemVkLFxuICAgICAgLy8gd2Ugc2V0IHJlYWRvbmx5IGFnYWluIHRvIHBlcmZvcm0gbmVjZXNzYXJ5IGFkanVzdGVtZW50c1xuICAgICAgdGhpcy5yZWFkb25seSA9IHRoaXMucmVhZG9ubHk7XG4gICAgfVxuXG4gICAgaWYgKFxuICAgICAgdGhpcy5tYXJrZXJDb29yZGluYXRlcyAhPT0gdW5kZWZpbmVkICYmXG4gICAgICB0aGlzLm1hcmtlckNvb3JkaW5hdGVzICE9PSBudWxsXG4gICAgKSB7XG4gICAgICAvLyB0aGUgbWFya2VyIGNvb3JkaW5hdGVzIG5lZWQgdGhlIG1hcCB0byBiZSBwcm9wZXJseSBzZXQsIHNvIGlmIHRoZXkgd2VyZSBzZXQgYmVmb3JlIHRoZSBtYXAgd2FzIGluaXRpYWxpemVkLFxuICAgICAgLy8gd2Ugc2V0IHRoZSBtYXJrZXIgY29vcmRpbmF0ZXMgYWdhaW4gdG8gcGVyZm9ybSBuZWNlc3NhcnkgYWRqdXN0ZW1lbnRzXG4gICAgICB0aGlzLm1hcmtlckNvb3JkaW5hdGVzID0gdGhpcy5tYXJrZXJDb29yZGluYXRlcztcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGFkZE1hcmtlckF0Q29vcmRpbmF0ZXMoY29vcmRpbmF0ZXM6IG51bWJlcltdKTogdm9pZCB7XG4gICAgaWYgKGNvb3JkaW5hdGVzICYmIGNvb3JkaW5hdGVzLmxlbmd0aCA9PT0gMikge1xuICAgICAgaWYgKHRoaXMuX21hcmtlciAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIHRoaXMucmVtb3ZlTWFya2VyKCk7XG4gICAgICB9XG4gICAgICB0aGlzLl9tYXJrZXIgPSBuZXcgb2wuRmVhdHVyZSh7XG4gICAgICAgIGdlb21ldHJ5OiBuZXcgb2wuZ2VvbS5Qb2ludChcbiAgICAgICAgICAvLyBbbG9uLCBsYXRdIGlzIGluIEVQU0c6NDMyNiAoZGVncmVlcyksIHdlIHRyYW5zZm9ybSBpdCBpbnRvIEVQU0c6Mzg1NyAobWV0ZXJzKVxuICAgICAgICAgIG9sLnByb2oudHJhbnNmb3JtKGNvb3JkaW5hdGVzLCAnRVBTRzo0MzI2JywgJ0VQU0c6Mzg1NycpXG4gICAgICAgIClcbiAgICAgIH0pO1xuICAgICAgdGhpcy5fbWFya2VyU291cmNlLmFkZEZlYXR1cmUodGhpcy5fbWFya2VyKTtcbiAgICAgIHRoaXMuX21hcmtlckNvb3JkaW5hdGVzID0gdGhpcy5nZXRNYXJrZXJDb29yZGluYXRlcygpO1xuXG4gICAgICBpZiAoIXRoaXMucmVhZG9ubHkpIHtcbiAgICAgICAgY29uc3QgZHJhZ0ludGVyYWN0aW9uID0gbmV3IG9sLmludGVyYWN0aW9uLk1vZGlmeSh7XG4gICAgICAgICAgZmVhdHVyZXM6IG5ldyBvbC5Db2xsZWN0aW9uKFt0aGlzLl9tYXJrZXJdKSxcbiAgICAgICAgICBzdHlsZTogdGhpcy5fbWFya2VyU3R5bGUsXG4gICAgICAgICAgcGl4ZWxUb2xlcmFuY2U6IDUwLFxuICAgICAgICAgIGhpdERldGVjdGlvbjogdHJ1ZVxuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5fbWFya2VySW50ZXJhY3Rpb24gPSBkcmFnSW50ZXJhY3Rpb247XG4gICAgICAgIHRoaXMuX21hcC5hZGRJbnRlcmFjdGlvbihkcmFnSW50ZXJhY3Rpb24pO1xuICAgICAgfVxuXG4gICAgICB0aGlzLl9tYXJrZXIub24oXG4gICAgICAgICdjaGFuZ2UnLFxuICAgICAgICAoKSA9PiB7XG4gICAgICAgICAgdGhpcy5fbWFya2VyQ29vcmRpbmF0ZXMgPSB0aGlzLmdldE1hcmtlckNvb3JkaW5hdGVzKCk7XG4gICAgICAgIH0sXG4gICAgICAgIHRoaXMuX21hcmtlclxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHJlbW92ZU1hcmtlcigpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5fbWFya2VyICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHRoaXMuX21hcmtlclNvdXJjZS5yZW1vdmVGZWF0dXJlKHRoaXMuX21hcmtlcik7XG4gICAgICB0aGlzLl9tYXJrZXIgPSB1bmRlZmluZWQ7XG4gICAgfVxuICAgIGlmICh0aGlzLl9tYXJrZXJJbnRlcmFjdGlvbiAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aGlzLl9tYXAuZ2V0SW50ZXJhY3Rpb25zKCkucG9wKCk7XG4gICAgICB0aGlzLl9tYXJrZXJJbnRlcmFjdGlvbiA9IHVuZGVmaW5lZDtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGdldE1hcmtlckNvb3JkaW5hdGVzKCk6IG51bWJlcltdIHwgbnVsbCB7XG4gICAgaWYgKHRoaXMuX21hcmtlciA9PT0gdW5kZWZpbmVkIHx8IHRoaXMuX21hcmtlciA9PSBudWxsKSB7XG4gICAgICByZXR1cm4gdGhpcy5fbWFya2VyO1xuICAgIH1cbiAgICBjb25zdCBjb29yZGluYXRlcyA9IHRoaXMuX21hcmtlci5nZXRHZW9tZXRyeSgpLmdldENvb3JkaW5hdGVzKCk7XG4gICAgLy8gY29vcmRpbmF0ZXMgaXMgaW4gRVBTRzozODU3IChtZXRlcnMpLCB3ZSB0cmFuc2Zvcm0gaXQgaW50byBFUFNHOjQzMjYgKGRlZ3JlZXMpXG4gICAgcmV0dXJuIG9sLnByb2oudHJhbnNmb3JtKGNvb3JkaW5hdGVzLCAnRVBTRzozODU3JywgJ0VQU0c6NDMyNicpO1xuICB9XG5cbiAgb25SZXNpemUoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX21hcCkge1xuICAgICAgdGhpcy5fbWFwLnVwZGF0ZVNpemUoKTtcbiAgICB9XG4gIH1cbn1cbiIsIjxkaXYgW2lkXT1cIm1hcElkXCIgY2xhc3M9XCJtYXBcIiAocmVzaXplZCk9XCJvblJlc2l6ZSgpXCI+PC9kaXY+XG4iXX0=
@@ -6,9 +6,9 @@ export class LuxModalBackdropComponent {
6
6
  this.style = 'z-index: 1050';
7
7
  }
8
8
  }
9
- LuxModalBackdropComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: LuxModalBackdropComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
10
- LuxModalBackdropComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: LuxModalBackdropComponent, selector: "lux-modal-backdrop", inputs: { backdropClass: "backdropClass" }, host: { properties: { "class": "this.class", "style": "this.style" } }, ngImport: i0, template: '', isInline: true });
11
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: LuxModalBackdropComponent, decorators: [{
9
+ LuxModalBackdropComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: LuxModalBackdropComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
10
+ LuxModalBackdropComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.2", type: LuxModalBackdropComponent, selector: "lux-modal-backdrop", inputs: { backdropClass: "backdropClass" }, host: { properties: { "class": "this.class", "style": "this.style" } }, ngImport: i0, template: '', isInline: true });
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: LuxModalBackdropComponent, decorators: [{
12
12
  type: Component,
13
13
  args: [{
14
14
  selector: 'lux-modal-backdrop',
@@ -5,9 +5,9 @@ export class LuxModalConfig {
5
5
  this.backdrop = true;
6
6
  }
7
7
  }
8
- LuxModalConfig.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: LuxModalConfig, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
9
- LuxModalConfig.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: LuxModalConfig, providedIn: 'root' });
10
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: LuxModalConfig, decorators: [{
8
+ LuxModalConfig.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: LuxModalConfig, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
9
+ LuxModalConfig.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: LuxModalConfig, providedIn: 'root' });
10
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: LuxModalConfig, decorators: [{
11
11
  type: Injectable,
12
12
  args: [{ providedIn: 'root' }]
13
13
  }] });
@@ -3,6 +3,16 @@ export class ActiveModal {
3
3
  dismiss(reason) { }
4
4
  }
5
5
  export class ModalRef {
6
+ /**
7
+ * The instance of a component used for the modal content.
8
+ *
9
+ * When a `TemplateRef` is used as the content, will return `undefined`.
10
+ */
11
+ get componentInstance() {
12
+ if (this._contentRef.componentRef) {
13
+ return this._contentRef.componentRef.instance;
14
+ }
15
+ }
6
16
  constructor(_windowCmptRef, _contentRef, _backdropCmptRef, _beforeDismiss) {
7
17
  this._windowCmptRef = _windowCmptRef;
8
18
  this._contentRef = _contentRef;
@@ -17,16 +27,6 @@ export class ModalRef {
17
27
  });
18
28
  this.result.then(null, () => { });
19
29
  }
20
- /**
21
- * The instance of a component used for the modal content.
22
- *
23
- * When a `TemplateRef` is used as the content, will return `undefined`.
24
- */
25
- get componentInstance() {
26
- if (this._contentRef.componentRef) {
27
- return this._contentRef.componentRef.instance;
28
- }
29
- }
30
30
  /**
31
31
  * Closes the modal with an optional `result` value.
32
32
  *
@@ -88,4 +88,4 @@ export class ModalRef {
88
88
  this._contentRef = null;
89
89
  }
90
90
  }
91
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtcmVmLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbHV4L3NyYy9saWIvbW9kYWwvbW9kYWwtcmVmLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUtBLE1BQU0sT0FBTyxXQUFXO0lBQ3RCLEtBQUssQ0FBQyxNQUFZLElBQVMsQ0FBQztJQUM1QixPQUFPLENBQUMsTUFBWSxJQUFTLENBQUM7Q0FDL0I7QUFFRCxNQUFNLE9BQU8sUUFBUTtJQW9CbkIsWUFDVSxjQUFxRCxFQUNyRCxXQUF1QixFQUN2QixnQkFBMEQsRUFDMUQsY0FBMEI7UUFIMUIsbUJBQWMsR0FBZCxjQUFjLENBQXVDO1FBQ3JELGdCQUFXLEdBQVgsV0FBVyxDQUFZO1FBQ3ZCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBMEM7UUFDMUQsbUJBQWMsR0FBZCxjQUFjLENBQVk7UUFFbEMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLENBQUMsTUFBVyxFQUFFLEVBQUU7WUFDN0QsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUN2QixDQUFDLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxPQUFPLENBQUMsQ0FBQyxPQUFPLEVBQUUsTUFBTSxFQUFFLEVBQUU7WUFDNUMsSUFBSSxDQUFDLFFBQVEsR0FBRyxPQUFPLENBQUM7WUFDeEIsSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUM7UUFDeEIsQ0FBQyxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsR0FBRyxFQUFFLEdBQUUsQ0FBQyxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQS9CRDs7OztPQUlHO0lBQ0gsSUFBSSxpQkFBaUI7UUFDbkIsSUFBSSxJQUFJLENBQUMsV0FBVyxDQUFDLFlBQVksRUFBRTtZQUNqQyxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQztTQUMvQztJQUNILENBQUM7SUF3QkQ7Ozs7T0FJRztJQUNILEtBQUssQ0FBQyxNQUFZO1FBQ2hCLElBQUksSUFBSSxDQUFDLGNBQWMsRUFBRTtZQUN2QixJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUU7Z0JBQ2pCLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUM7YUFDdkI7WUFDRCxJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztTQUM3QjtJQUNILENBQUM7SUFFTyxRQUFRLENBQUMsTUFBWTtRQUMzQixJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDaEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQztTQUN0QjtRQUNELElBQUksQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO0lBQzlCLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsT0FBTyxDQUFDLE1BQVk7UUFDbEIsSUFBSSxJQUFJLENBQUMsY0FBYyxFQUFFO1lBQ3ZCLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFO2dCQUN4QixJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDO2FBQ3ZCO2lCQUFNO2dCQUNMLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztnQkFDdEMsSUFBSSxPQUFPLElBQUksT0FBTyxDQUFDLElBQUksRUFBRTtvQkFDM0IsT0FBTyxDQUFDLElBQUksQ0FDVixDQUFDLE1BQU0sRUFBRSxFQUFFO3dCQUNULElBQUksTUFBTSxLQUFLLEtBQUssRUFBRTs0QkFDcEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQzt5QkFDdkI7b0JBQ0gsQ0FBQyxFQUNELEdBQUcsRUFBRSxHQUFFLENBQUMsQ0FDVCxDQUFDO2lCQUNIO3FCQUFNLElBQUksT0FBTyxLQUFLLEtBQUssRUFBRTtvQkFDNUIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQztpQkFDdkI7YUFDRjtTQUNGO0lBQ0gsQ0FBQztJQUVPLG9CQUFvQjtRQUMxQixNQUFNLGNBQWMsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUM7UUFDbEUsY0FBYyxDQUFDLFVBQVUsQ0FBQyxXQUFXLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDdEQsSUFBSSxDQUFDLGNBQWMsQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUU5QixJQUFJLElBQUksQ0FBQyxnQkFBZ0IsRUFBRTtZQUN6QixNQUFNLGdCQUFnQixHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDO1lBQ3RFLGdCQUFnQixDQUFDLFVBQVUsQ0FBQyxXQUFXLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztZQUMxRCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxFQUFFLENBQUM7U0FDakM7UUFFRCxJQUFJLElBQUksQ0FBQyxXQUFXLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLEVBQUU7WUFDaEQsSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUM7U0FDcEM7UUFFRCxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQztRQUMzQixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDO1FBQzdCLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDO0lBQzFCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudFJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTHV4TW9kYWxXaW5kb3dDb21wb25lbnQgfSBmcm9tICcuL21vZGFsLXdpbmRvdyc7XG5pbXBvcnQgeyBDb250ZW50UmVmIH0gZnJvbSAnLi91dGlsJztcbmltcG9ydCB7IEx1eE1vZGFsQmFja2Ryb3BDb21wb25lbnQgfSBmcm9tICcuL21vZGFsLWJhY2tkcm9wJztcblxuZXhwb3J0IGNsYXNzIEFjdGl2ZU1vZGFsIHtcbiAgY2xvc2UocmVzdWx0PzogYW55KTogdm9pZCB7fVxuICBkaXNtaXNzKHJlYXNvbj86IGFueSk6IHZvaWQge31cbn1cblxuZXhwb3J0IGNsYXNzIE1vZGFsUmVmIHtcbiAgcHJpdmF0ZSBfcmVzb2x2ZTogKHJlc3VsdD86IGFueSkgPT4gdm9pZDtcbiAgcHJpdmF0ZSBfcmVqZWN0OiAocmVhc29uPzogYW55KSA9PiB2b2lkO1xuXG4gIC8qKlxuICAgKiBUaGUgaW5zdGFuY2Ugb2YgYSBjb21wb25lbnQgdXNlZCBmb3IgdGhlIG1vZGFsIGNvbnRlbnQuXG4gICAqXG4gICAqIFdoZW4gYSBgVGVtcGxhdGVSZWZgIGlzIHVzZWQgYXMgdGhlIGNvbnRlbnQsIHdpbGwgcmV0dXJuIGB1bmRlZmluZWRgLlxuICAgKi9cbiAgZ2V0IGNvbXBvbmVudEluc3RhbmNlKCk6IGFueSB7XG4gICAgaWYgKHRoaXMuX2NvbnRlbnRSZWYuY29tcG9uZW50UmVmKSB7XG4gICAgICByZXR1cm4gdGhpcy5fY29udGVudFJlZi5jb21wb25lbnRSZWYuaW5zdGFuY2U7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBwcm9taXNlIHRoYXQgaXMgcmVzb2x2ZWQgd2hlbiB0aGUgbW9kYWwgaXMgY2xvc2VkIGFuZCByZWplY3RlZCB3aGVuIHRoZSBtb2RhbCBpcyBkaXNtaXNzZWQuXG4gICAqL1xuICByZXN1bHQ6IFByb21pc2U8YW55PjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIF93aW5kb3dDbXB0UmVmOiBDb21wb25lbnRSZWY8THV4TW9kYWxXaW5kb3dDb21wb25lbnQ+LFxuICAgIHByaXZhdGUgX2NvbnRlbnRSZWY6IENvbnRlbnRSZWYsXG4gICAgcHJpdmF0ZSBfYmFja2Ryb3BDbXB0UmVmPzogQ29tcG9uZW50UmVmPEx1eE1vZGFsQmFja2Ryb3BDb21wb25lbnQ+LFxuICAgIHByaXZhdGUgX2JlZm9yZURpc21pc3M/OiAoKSA9PiBhbnlcbiAgKSB7XG4gICAgX3dpbmRvd0NtcHRSZWYuaW5zdGFuY2UuZGlzbWlzc0V2ZW50LnN1YnNjcmliZSgocmVhc29uOiBhbnkpID0+IHtcbiAgICAgIHRoaXMuZGlzbWlzcyhyZWFzb24pO1xuICAgIH0pO1xuXG4gICAgdGhpcy5yZXN1bHQgPSBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgICB0aGlzLl9yZXNvbHZlID0gcmVzb2x2ZTtcbiAgICAgIHRoaXMuX3JlamVjdCA9IHJlamVjdDtcbiAgICB9KTtcbiAgICB0aGlzLnJlc3VsdC50aGVuKG51bGwsICgpID0+IHt9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDbG9zZXMgdGhlIG1vZGFsIHdpdGggYW4gb3B0aW9uYWwgYHJlc3VsdGAgdmFsdWUuXG4gICAqXG4gICAqIFRoZSBgTmdiTW9iYWxSZWYucmVzdWx0YCBwcm9taXNlIHdpbGwgYmUgcmVzb2x2ZWQgd2l0aCB0aGUgcHJvdmlkZWQgdmFsdWUuXG4gICAqL1xuICBjbG9zZShyZXN1bHQ/OiBhbnkpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5fd2luZG93Q21wdFJlZikge1xuICAgICAgaWYgKHRoaXMuX3Jlc29sdmUpIHtcbiAgICAgICAgdGhpcy5fcmVzb2x2ZShyZXN1bHQpO1xuICAgICAgfVxuICAgICAgdGhpcy5fcmVtb3ZlTW9kYWxFbGVtZW50cygpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2Rpc21pc3MocmVhc29uPzogYW55KTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX3JlamVjdCkge1xuICAgICAgdGhpcy5fcmVqZWN0KHJlYXNvbik7XG4gICAgfVxuICAgIHRoaXMuX3JlbW92ZU1vZGFsRWxlbWVudHMoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBEaXNtaXNzZXMgdGhlIG1vZGFsIHdpdGggYW4gb3B0aW9uYWwgYHJlYXNvbmAgdmFsdWUuXG4gICAqXG4gICAqIFRoZSBgTmdiTW9kYWxSZWYucmVzdWx0YCBwcm9taXNlIHdpbGwgYmUgcmVqZWN0ZWQgd2l0aCB0aGUgcHJvdmlkZWQgdmFsdWUuXG4gICAqL1xuICBkaXNtaXNzKHJlYXNvbj86IGFueSk6IHZvaWQge1xuICAgIGlmICh0aGlzLl93aW5kb3dDbXB0UmVmKSB7XG4gICAgICBpZiAoIXRoaXMuX2JlZm9yZURpc21pc3MpIHtcbiAgICAgICAgdGhpcy5fZGlzbWlzcyhyZWFzb24pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc3QgZGlzbWlzcyA9IHRoaXMuX2JlZm9yZURpc21pc3MoKTtcbiAgICAgICAgaWYgKGRpc21pc3MgJiYgZGlzbWlzcy50aGVuKSB7XG4gICAgICAgICAgZGlzbWlzcy50aGVuKFxuICAgICAgICAgICAgKHJlc3VsdCkgPT4ge1xuICAgICAgICAgICAgICBpZiAocmVzdWx0ICE9PSBmYWxzZSkge1xuICAgICAgICAgICAgICAgIHRoaXMuX2Rpc21pc3MocmVhc29uKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICgpID0+IHt9XG4gICAgICAgICAgKTtcbiAgICAgICAgfSBlbHNlIGlmIChkaXNtaXNzICE9PSBmYWxzZSkge1xuICAgICAgICAgIHRoaXMuX2Rpc21pc3MocmVhc29uKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX3JlbW92ZU1vZGFsRWxlbWVudHMoKTogdm9pZCB7XG4gICAgY29uc3Qgd2luZG93TmF0aXZlRWwgPSB0aGlzLl93aW5kb3dDbXB0UmVmLmxvY2F0aW9uLm5hdGl2ZUVsZW1lbnQ7XG4gICAgd2luZG93TmF0aXZlRWwucGFyZW50Tm9kZS5yZW1vdmVDaGlsZCh3aW5kb3dOYXRpdmVFbCk7XG4gICAgdGhpcy5fd2luZG93Q21wdFJlZi5kZXN0cm95KCk7XG5cbiAgICBpZiAodGhpcy5fYmFja2Ryb3BDbXB0UmVmKSB7XG4gICAgICBjb25zdCBiYWNrZHJvcE5hdGl2ZUVsID0gdGhpcy5fYmFja2Ryb3BDbXB0UmVmLmxvY2F0aW9uLm5hdGl2ZUVsZW1lbnQ7XG4gICAgICBiYWNrZHJvcE5hdGl2ZUVsLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQoYmFja2Ryb3BOYXRpdmVFbCk7XG4gICAgICB0aGlzLl9iYWNrZHJvcENtcHRSZWYuZGVzdHJveSgpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLl9jb250ZW50UmVmICYmIHRoaXMuX2NvbnRlbnRSZWYudmlld1JlZikge1xuICAgICAgdGhpcy5fY29udGVudFJlZi52aWV3UmVmLmRlc3Ryb3koKTtcbiAgICB9XG5cbiAgICB0aGlzLl93aW5kb3dDbXB0UmVmID0gbnVsbDtcbiAgICB0aGlzLl9iYWNrZHJvcENtcHRSZWYgPSBudWxsO1xuICAgIHRoaXMuX2NvbnRlbnRSZWYgPSBudWxsO1xuICB9XG59XG4iXX0=
91
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtcmVmLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbHV4L3NyYy9saWIvbW9kYWwvbW9kYWwtcmVmLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUtBLE1BQU0sT0FBTyxXQUFXO0lBQ3RCLEtBQUssQ0FBQyxNQUFZLElBQVMsQ0FBQztJQUM1QixPQUFPLENBQUMsTUFBWSxJQUFTLENBQUM7Q0FDL0I7QUFFRCxNQUFNLE9BQU8sUUFBUTtJQUluQjs7OztPQUlHO0lBQ0gsSUFBSSxpQkFBaUI7UUFDbkIsSUFBSSxJQUFJLENBQUMsV0FBVyxDQUFDLFlBQVksRUFBRTtZQUNqQyxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQztTQUMvQztJQUNILENBQUM7SUFPRCxZQUNVLGNBQXFELEVBQ3JELFdBQXVCLEVBQ3ZCLGdCQUEwRCxFQUMxRCxjQUEwQjtRQUgxQixtQkFBYyxHQUFkLGNBQWMsQ0FBdUM7UUFDckQsZ0JBQVcsR0FBWCxXQUFXLENBQVk7UUFDdkIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUEwQztRQUMxRCxtQkFBYyxHQUFkLGNBQWMsQ0FBWTtRQUVsQyxjQUFjLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsQ0FBQyxNQUFXLEVBQUUsRUFBRTtZQUM3RCxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3ZCLENBQUMsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLE9BQU8sQ0FBQyxDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsRUFBRTtZQUM1QyxJQUFJLENBQUMsUUFBUSxHQUFHLE9BQU8sQ0FBQztZQUN4QixJQUFJLENBQUMsT0FBTyxHQUFHLE1BQU0sQ0FBQztRQUN4QixDQUFDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxHQUFHLEVBQUUsR0FBRSxDQUFDLENBQUMsQ0FBQztJQUNuQyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILEtBQUssQ0FBQyxNQUFZO1FBQ2hCLElBQUksSUFBSSxDQUFDLGNBQWMsRUFBRTtZQUN2QixJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUU7Z0JBQ2pCLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUM7YUFDdkI7WUFDRCxJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztTQUM3QjtJQUNILENBQUM7SUFFTyxRQUFRLENBQUMsTUFBWTtRQUMzQixJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDaEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQztTQUN0QjtRQUNELElBQUksQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO0lBQzlCLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsT0FBTyxDQUFDLE1BQVk7UUFDbEIsSUFBSSxJQUFJLENBQUMsY0FBYyxFQUFFO1lBQ3ZCLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFO2dCQUN4QixJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDO2FBQ3ZCO2lCQUFNO2dCQUNMLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztnQkFDdEMsSUFBSSxPQUFPLElBQUksT0FBTyxDQUFDLElBQUksRUFBRTtvQkFDM0IsT0FBTyxDQUFDLElBQUksQ0FDVixDQUFDLE1BQU0sRUFBRSxFQUFFO3dCQUNULElBQUksTUFBTSxLQUFLLEtBQUssRUFBRTs0QkFDcEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQzt5QkFDdkI7b0JBQ0gsQ0FBQyxFQUNELEdBQUcsRUFBRSxHQUFFLENBQUMsQ0FDVCxDQUFDO2lCQUNIO3FCQUFNLElBQUksT0FBTyxLQUFLLEtBQUssRUFBRTtvQkFDNUIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQztpQkFDdkI7YUFDRjtTQUNGO0lBQ0gsQ0FBQztJQUVPLG9CQUFvQjtRQUMxQixNQUFNLGNBQWMsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUM7UUFDbEUsY0FBYyxDQUFDLFVBQVUsQ0FBQyxXQUFXLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDdEQsSUFBSSxDQUFDLGNBQWMsQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUU5QixJQUFJLElBQUksQ0FBQyxnQkFBZ0IsRUFBRTtZQUN6QixNQUFNLGdCQUFnQixHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDO1lBQ3RFLGdCQUFnQixDQUFDLFVBQVUsQ0FBQyxXQUFXLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztZQUMxRCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxFQUFFLENBQUM7U0FDakM7UUFFRCxJQUFJLElBQUksQ0FBQyxXQUFXLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLEVBQUU7WUFDaEQsSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUM7U0FDcEM7UUFFRCxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQztRQUMzQixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDO1FBQzdCLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDO0lBQzFCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudFJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTHV4TW9kYWxXaW5kb3dDb21wb25lbnQgfSBmcm9tICcuL21vZGFsLXdpbmRvdyc7XG5pbXBvcnQgeyBDb250ZW50UmVmIH0gZnJvbSAnLi91dGlsJztcbmltcG9ydCB7IEx1eE1vZGFsQmFja2Ryb3BDb21wb25lbnQgfSBmcm9tICcuL21vZGFsLWJhY2tkcm9wJztcblxuZXhwb3J0IGNsYXNzIEFjdGl2ZU1vZGFsIHtcbiAgY2xvc2UocmVzdWx0PzogYW55KTogdm9pZCB7fVxuICBkaXNtaXNzKHJlYXNvbj86IGFueSk6IHZvaWQge31cbn1cblxuZXhwb3J0IGNsYXNzIE1vZGFsUmVmIHtcbiAgcHJpdmF0ZSBfcmVzb2x2ZTogKHJlc3VsdD86IGFueSkgPT4gdm9pZDtcbiAgcHJpdmF0ZSBfcmVqZWN0OiAocmVhc29uPzogYW55KSA9PiB2b2lkO1xuXG4gIC8qKlxuICAgKiBUaGUgaW5zdGFuY2Ugb2YgYSBjb21wb25lbnQgdXNlZCBmb3IgdGhlIG1vZGFsIGNvbnRlbnQuXG4gICAqXG4gICAqIFdoZW4gYSBgVGVtcGxhdGVSZWZgIGlzIHVzZWQgYXMgdGhlIGNvbnRlbnQsIHdpbGwgcmV0dXJuIGB1bmRlZmluZWRgLlxuICAgKi9cbiAgZ2V0IGNvbXBvbmVudEluc3RhbmNlKCk6IGFueSB7XG4gICAgaWYgKHRoaXMuX2NvbnRlbnRSZWYuY29tcG9uZW50UmVmKSB7XG4gICAgICByZXR1cm4gdGhpcy5fY29udGVudFJlZi5jb21wb25lbnRSZWYuaW5zdGFuY2U7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBwcm9taXNlIHRoYXQgaXMgcmVzb2x2ZWQgd2hlbiB0aGUgbW9kYWwgaXMgY2xvc2VkIGFuZCByZWplY3RlZCB3aGVuIHRoZSBtb2RhbCBpcyBkaXNtaXNzZWQuXG4gICAqL1xuICByZXN1bHQ6IFByb21pc2U8YW55PjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIF93aW5kb3dDbXB0UmVmOiBDb21wb25lbnRSZWY8THV4TW9kYWxXaW5kb3dDb21wb25lbnQ+LFxuICAgIHByaXZhdGUgX2NvbnRlbnRSZWY6IENvbnRlbnRSZWYsXG4gICAgcHJpdmF0ZSBfYmFja2Ryb3BDbXB0UmVmPzogQ29tcG9uZW50UmVmPEx1eE1vZGFsQmFja2Ryb3BDb21wb25lbnQ+LFxuICAgIHByaXZhdGUgX2JlZm9yZURpc21pc3M/OiAoKSA9PiBhbnlcbiAgKSB7XG4gICAgX3dpbmRvd0NtcHRSZWYuaW5zdGFuY2UuZGlzbWlzc0V2ZW50LnN1YnNjcmliZSgocmVhc29uOiBhbnkpID0+IHtcbiAgICAgIHRoaXMuZGlzbWlzcyhyZWFzb24pO1xuICAgIH0pO1xuXG4gICAgdGhpcy5yZXN1bHQgPSBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgICB0aGlzLl9yZXNvbHZlID0gcmVzb2x2ZTtcbiAgICAgIHRoaXMuX3JlamVjdCA9IHJlamVjdDtcbiAgICB9KTtcbiAgICB0aGlzLnJlc3VsdC50aGVuKG51bGwsICgpID0+IHt9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDbG9zZXMgdGhlIG1vZGFsIHdpdGggYW4gb3B0aW9uYWwgYHJlc3VsdGAgdmFsdWUuXG4gICAqXG4gICAqIFRoZSBgTmdiTW9iYWxSZWYucmVzdWx0YCBwcm9taXNlIHdpbGwgYmUgcmVzb2x2ZWQgd2l0aCB0aGUgcHJvdmlkZWQgdmFsdWUuXG4gICAqL1xuICBjbG9zZShyZXN1bHQ/OiBhbnkpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5fd2luZG93Q21wdFJlZikge1xuICAgICAgaWYgKHRoaXMuX3Jlc29sdmUpIHtcbiAgICAgICAgdGhpcy5fcmVzb2x2ZShyZXN1bHQpO1xuICAgICAgfVxuICAgICAgdGhpcy5fcmVtb3ZlTW9kYWxFbGVtZW50cygpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2Rpc21pc3MocmVhc29uPzogYW55KTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX3JlamVjdCkge1xuICAgICAgdGhpcy5fcmVqZWN0KHJlYXNvbik7XG4gICAgfVxuICAgIHRoaXMuX3JlbW92ZU1vZGFsRWxlbWVudHMoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBEaXNtaXNzZXMgdGhlIG1vZGFsIHdpdGggYW4gb3B0aW9uYWwgYHJlYXNvbmAgdmFsdWUuXG4gICAqXG4gICAqIFRoZSBgTmdiTW9kYWxSZWYucmVzdWx0YCBwcm9taXNlIHdpbGwgYmUgcmVqZWN0ZWQgd2l0aCB0aGUgcHJvdmlkZWQgdmFsdWUuXG4gICAqL1xuICBkaXNtaXNzKHJlYXNvbj86IGFueSk6IHZvaWQge1xuICAgIGlmICh0aGlzLl93aW5kb3dDbXB0UmVmKSB7XG4gICAgICBpZiAoIXRoaXMuX2JlZm9yZURpc21pc3MpIHtcbiAgICAgICAgdGhpcy5fZGlzbWlzcyhyZWFzb24pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc3QgZGlzbWlzcyA9IHRoaXMuX2JlZm9yZURpc21pc3MoKTtcbiAgICAgICAgaWYgKGRpc21pc3MgJiYgZGlzbWlzcy50aGVuKSB7XG4gICAgICAgICAgZGlzbWlzcy50aGVuKFxuICAgICAgICAgICAgKHJlc3VsdCkgPT4ge1xuICAgICAgICAgICAgICBpZiAocmVzdWx0ICE9PSBmYWxzZSkge1xuICAgICAgICAgICAgICAgIHRoaXMuX2Rpc21pc3MocmVhc29uKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICgpID0+IHt9XG4gICAgICAgICAgKTtcbiAgICAgICAgfSBlbHNlIGlmIChkaXNtaXNzICE9PSBmYWxzZSkge1xuICAgICAgICAgIHRoaXMuX2Rpc21pc3MocmVhc29uKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX3JlbW92ZU1vZGFsRWxlbWVudHMoKTogdm9pZCB7XG4gICAgY29uc3Qgd2luZG93TmF0aXZlRWwgPSB0aGlzLl93aW5kb3dDbXB0UmVmLmxvY2F0aW9uLm5hdGl2ZUVsZW1lbnQ7XG4gICAgd2luZG93TmF0aXZlRWwucGFyZW50Tm9kZS5yZW1vdmVDaGlsZCh3aW5kb3dOYXRpdmVFbCk7XG4gICAgdGhpcy5fd2luZG93Q21wdFJlZi5kZXN0cm95KCk7XG5cbiAgICBpZiAodGhpcy5fYmFja2Ryb3BDbXB0UmVmKSB7XG4gICAgICBjb25zdCBiYWNrZHJvcE5hdGl2ZUVsID0gdGhpcy5fYmFja2Ryb3BDbXB0UmVmLmxvY2F0aW9uLm5hdGl2ZUVsZW1lbnQ7XG4gICAgICBiYWNrZHJvcE5hdGl2ZUVsLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQoYmFja2Ryb3BOYXRpdmVFbCk7XG4gICAgICB0aGlzLl9iYWNrZHJvcENtcHRSZWYuZGVzdHJveSgpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLl9jb250ZW50UmVmICYmIHRoaXMuX2NvbnRlbnRSZWYudmlld1JlZikge1xuICAgICAgdGhpcy5fY29udGVudFJlZi52aWV3UmVmLmRlc3Ryb3koKTtcbiAgICB9XG5cbiAgICB0aGlzLl93aW5kb3dDbXB0UmVmID0gbnVsbDtcbiAgICB0aGlzLl9iYWNrZHJvcENtcHRSZWYgPSBudWxsO1xuICAgIHRoaXMuX2NvbnRlbnRSZWYgPSBudWxsO1xuICB9XG59XG4iXX0=
@@ -167,9 +167,9 @@ export class ModalStack {
167
167
  }
168
168
  }
169
169
  }
170
- ModalStack.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: ModalStack, deps: [{ token: i0.ApplicationRef }, { token: DOCUMENT }, { token: i0.Injector }, { token: i0.RendererFactory2 }, { token: i1.LuxModalConfig }], target: i0.ɵɵFactoryTarget.Injectable });
171
- ModalStack.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: ModalStack, providedIn: 'root' });
172
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: ModalStack, decorators: [{
170
+ ModalStack.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ModalStack, deps: [{ token: i0.ApplicationRef }, { token: DOCUMENT }, { token: i0.Injector }, { token: i0.RendererFactory2 }, { token: i1.LuxModalConfig }], target: i0.ɵɵFactoryTarget.Injectable });
171
+ ModalStack.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ModalStack, providedIn: 'root' });
172
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ModalStack, decorators: [{
173
173
  type: Injectable,
174
174
  args: [{ providedIn: 'root' }]
175
175
  }], ctorParameters: function () { return [{ type: i0.ApplicationRef }, { type: undefined, decorators: [{
@@ -4,16 +4,6 @@ import { getFocusableBoundaryElements, FOCUS } from './util';
4
4
  import { ModalDismissReasons } from './modal-dismiss-reasons';
5
5
  import * as i0 from "@angular/core";
6
6
  export class LuxModalWindowComponent {
7
- constructor(_document, _elRef) {
8
- this._document = _document;
9
- this._elRef = _elRef;
10
- this.backdrop = false;
11
- this.keyboard = true;
12
- this.dismissEvent = new EventEmitter();
13
- this.role = 'dialog';
14
- this.tabindex = '-1';
15
- this.ariamodal = true;
16
- }
17
7
  get class() {
18
8
  return `modal ${this.windowClass || ''}`;
19
9
  }
@@ -33,6 +23,16 @@ export class LuxModalWindowComponent {
33
23
  this.dismiss(ModalDismissReasons.Esc);
34
24
  }
35
25
  }
26
+ constructor(_document, _elRef) {
27
+ this._document = _document;
28
+ this._elRef = _elRef;
29
+ this.backdrop = false;
30
+ this.keyboard = true;
31
+ this.dismissEvent = new EventEmitter();
32
+ this.role = 'dialog';
33
+ this.tabindex = '-1';
34
+ this.ariamodal = true;
35
+ }
36
36
  dismiss(reason) {
37
37
  this.dismissEvent.emit(reason);
38
38
  }
@@ -60,13 +60,13 @@ export class LuxModalWindowComponent {
60
60
  this._elWithFocus = null;
61
61
  }
62
62
  }
63
- LuxModalWindowComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: LuxModalWindowComponent, deps: [{ token: DOCUMENT }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
64
- LuxModalWindowComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: LuxModalWindowComponent, selector: "lux-modal-window", inputs: { ariaDescribedBy: "ariaDescribedBy", ariaLabelledBy: "ariaLabelledBy", backdrop: "backdrop", keyboard: "keyboard", windowClass: "windowClass" }, outputs: { dismissEvent: "dismissEvent" }, host: { listeners: { "click": "backdropClick($event.target)", "keyup.esc": "escKey($event)" }, properties: { "class": "this.class", "attr.role": "this.role", "tabindex": "this.tabindex", "attr.aria-modal": "this.ariamodal", "attr.aria-labelledby": "this.hostAriaLabelledBy", "attr.aria-describedby": "this.hostAriaDescribedBy" } }, ngImport: i0, template: `
63
+ LuxModalWindowComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: LuxModalWindowComponent, deps: [{ token: DOCUMENT }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
64
+ LuxModalWindowComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.2", type: LuxModalWindowComponent, selector: "lux-modal-window", inputs: { ariaDescribedBy: "ariaDescribedBy", ariaLabelledBy: "ariaLabelledBy", backdrop: "backdrop", keyboard: "keyboard", windowClass: "windowClass" }, outputs: { dismissEvent: "dismissEvent" }, host: { listeners: { "click": "backdropClick($event.target)", "keyup.esc": "escKey($event)" }, properties: { "class": "this.class", "attr.role": "this.role", "tabindex": "this.tabindex", "attr.aria-modal": "this.ariamodal", "attr.aria-labelledby": "this.hostAriaLabelledBy", "attr.aria-describedby": "this.hostAriaDescribedBy" } }, ngImport: i0, template: `
65
65
  <div class="modal-dialog" role="document">
66
66
  <div class="modal-content"><ng-content></ng-content></div>
67
67
  </div>
68
68
  `, isInline: true });
69
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: LuxModalWindowComponent, decorators: [{
69
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: LuxModalWindowComponent, decorators: [{
70
70
  type: Component,
71
71
  args: [{
72
72
  selector: 'lux-modal-window',
@@ -116,4 +116,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImpor
116
116
  type: HostListener,
117
117
  args: ['keyup.esc', ['$event']]
118
118
  }] } });
119
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtd2luZG93LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbHV4L3NyYy9saWIvbW9kYWwvbW9kYWwtd2luZG93LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMzQyxPQUFPLEVBRUwsU0FBUyxFQUNULFVBQVUsRUFDVixZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFHTCxNQUFNLEVBQ04sV0FBVyxFQUNYLFlBQVksRUFDYixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsNEJBQTRCLEVBQUUsS0FBSyxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBQzdELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDOztBQVU5RCxNQUFNLE9BQU8sdUJBQXVCO0lBc0NsQyxZQUM0QixTQUFjLEVBQ2hDLE1BQStCO1FBRGIsY0FBUyxHQUFULFNBQVMsQ0FBSztRQUNoQyxXQUFNLEdBQU4sTUFBTSxDQUF5QjtRQWpDaEMsYUFBUSxHQUFxQixLQUFLLENBQUM7UUFDbkMsYUFBUSxHQUFHLElBQUksQ0FBQztRQUdmLGlCQUFZLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUtsQixTQUFJLEdBQUcsUUFBUSxDQUFDO1FBQ2pCLGFBQVEsR0FBRyxJQUFJLENBQUM7UUFDVCxjQUFTLEdBQUcsSUFBSSxDQUFDO0lBdUI5QyxDQUFDO0lBNUJKLElBQTBCLEtBQUs7UUFDN0IsT0FBTyxTQUFTLElBQUksQ0FBQyxXQUFXLElBQUksRUFBRSxFQUFFLENBQUM7SUFDM0MsQ0FBQztJQUlELElBQXlDLGtCQUFrQjtRQUN6RCxPQUFPLElBQUksQ0FBQyxjQUFjLENBQUM7SUFDN0IsQ0FBQztJQUNELElBQTBDLG1CQUFtQjtRQUMzRCxPQUFPLElBQUksQ0FBQyxlQUFlLENBQUM7SUFDOUIsQ0FBQztJQUN5QyxhQUFhLENBQ3JELEdBQWdCO1FBRWhCLElBQUksSUFBSSxDQUFDLFFBQVEsS0FBSyxJQUFJLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxhQUFhLEtBQUssR0FBRyxFQUFFO1lBQy9ELElBQUksQ0FBQyxPQUFPLENBQUMsbUJBQW1CLENBQUMsYUFBYSxDQUFDLENBQUM7U0FDakQ7SUFDSCxDQUFDO0lBQ3NDLE1BQU0sQ0FBQyxLQUFLO1FBQ2pELElBQUksSUFBSSxDQUFDLFFBQVEsSUFBSSxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsRUFBRTtZQUM1QyxJQUFJLENBQUMsT0FBTyxDQUFDLG1CQUFtQixDQUFDLEdBQUcsQ0FBQyxDQUFDO1NBQ3ZDO0lBQ0gsQ0FBQztJQU9ELE9BQU8sQ0FBQyxNQUFNO1FBQ1osSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDO0lBQ25ELENBQUM7SUFFRCxlQUFlO1FBQ2IsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLEVBQUU7WUFDL0QsTUFBTSxjQUFjLEdBQUcsNEJBQTRCLENBQ2pELElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUMxQixDQUFDLENBQUMsQ0FBQyxDQUFDO1lBRUwsTUFBTSxjQUFjLEdBQUcsY0FBYyxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDO1lBQ25FLGNBQWMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztTQUN4QjtJQUNILENBQUM7SUFFRCxXQUFXO1FBQ1QsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUM7UUFDakMsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQztRQUV0QyxJQUFJLGNBQWMsQ0FBQztRQUNuQixJQUFJLFdBQVcsSUFBSSxXQUFXLENBQUMsS0FBSyxDQUFDLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsRUFBRTtZQUNuRSxjQUFjLEdBQUcsV0FBVyxDQUFDO1NBQzlCO2FBQU07WUFDTCxjQUFjLEdBQUcsSUFBSSxDQUFDO1NBQ3ZCO1FBQ0QsY0FBYyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDO0lBQzNCLENBQUM7O29IQTFFVSx1QkFBdUIsa0JBdUN4QixRQUFRO3dHQXZDUCx1QkFBdUIseWtCQU54Qjs7OztHQUlUOzJGQUVVLHVCQUF1QjtrQkFSbkMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsa0JBQWtCO29CQUM1QixRQUFRLEVBQUU7Ozs7R0FJVDtpQkFDRjs7MEJBd0NJLE1BQU07MkJBQUMsUUFBUTtxRUFsQ1QsZUFBZTtzQkFBdkIsS0FBSztnQkFDRyxjQUFjO3NCQUF0QixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUVJLFlBQVk7c0JBQXJCLE1BQU07Z0JBRW1CLEtBQUs7c0JBQTlCLFdBQVc7dUJBQUMsT0FBTztnQkFHTSxJQUFJO3NCQUE3QixXQUFXO3VCQUFDLFdBQVc7Z0JBQ0MsUUFBUTtzQkFBaEMsV0FBVzt1QkFBQyxVQUFVO2dCQUNTLFNBQVM7c0JBQXhDLFdBQVc7dUJBQUMsaUJBQWlCO2dCQUNXLGtCQUFrQjtzQkFBMUQsV0FBVzt1QkFBQyxzQkFBc0I7Z0JBR08sbUJBQW1CO3NCQUE1RCxXQUFXO3VCQUFDLHVCQUF1QjtnQkFHTSxhQUFhO3NCQUF0RCxZQUFZO3VCQUFDLE9BQU8sRUFBRSxDQUFDLGVBQWUsQ0FBQztnQkFPRCxNQUFNO3NCQUE1QyxZQUFZO3VCQUFDLFdBQVcsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERPQ1VNRU5UIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBJbmplY3QsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgT3V0cHV0LFxuICBIb3N0QmluZGluZyxcbiAgSG9zdExpc3RlbmVyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBnZXRGb2N1c2FibGVCb3VuZGFyeUVsZW1lbnRzLCBGT0NVUyB9IGZyb20gJy4vdXRpbCc7XG5pbXBvcnQgeyBNb2RhbERpc21pc3NSZWFzb25zIH0gZnJvbSAnLi9tb2RhbC1kaXNtaXNzLXJlYXNvbnMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdsdXgtbW9kYWwtd2luZG93JyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8ZGl2IGNsYXNzPVwibW9kYWwtZGlhbG9nXCIgcm9sZT1cImRvY3VtZW50XCI+XG4gICAgICA8ZGl2IGNsYXNzPVwibW9kYWwtY29udGVudFwiPjxuZy1jb250ZW50PjwvbmctY29udGVudD48L2Rpdj5cbiAgICA8L2Rpdj5cbiAgYFxufSlcbmV4cG9ydCBjbGFzcyBMdXhNb2RhbFdpbmRvd0NvbXBvbmVudFxuICBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95XG57XG4gIHByaXZhdGUgX2VsV2l0aEZvY3VzOiBFbGVtZW50OyAvLyBlbGVtZW50IHRoYXQgaXMgZm9jdXNlZCBwcmlvciB0byBtb2RhbCBvcGVuaW5nXG5cbiAgQElucHV0KCkgYXJpYURlc2NyaWJlZEJ5OiBzdHJpbmc7XG4gIEBJbnB1dCgpIGFyaWFMYWJlbGxlZEJ5OiBzdHJpbmc7XG4gIEBJbnB1dCgpIGJhY2tkcm9wOiBib29sZWFuIHwgc3RyaW5nID0gZmFsc2U7XG4gIEBJbnB1dCgpIGtleWJvYXJkID0gdHJ1ZTtcbiAgQElucHV0KCkgd2luZG93Q2xhc3M6IHN0cmluZztcblxuICBAT3V0cHV0KCkgZGlzbWlzc0V2ZW50ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIEBIb3N0QmluZGluZygnY2xhc3MnKSBnZXQgY2xhc3MoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gYG1vZGFsICR7dGhpcy53aW5kb3dDbGFzcyB8fCAnJ31gO1xuICB9XG4gIEBIb3N0QmluZGluZygnYXR0ci5yb2xlJykgcm9sZSA9ICdkaWFsb2cnO1xuICBASG9zdEJpbmRpbmcoJ3RhYmluZGV4JykgdGFiaW5kZXggPSAnLTEnO1xuICBASG9zdEJpbmRpbmcoJ2F0dHIuYXJpYS1tb2RhbCcpIGFyaWFtb2RhbCA9IHRydWU7XG4gIEBIb3N0QmluZGluZygnYXR0ci5hcmlhLWxhYmVsbGVkYnknKSBnZXQgaG9zdEFyaWFMYWJlbGxlZEJ5KCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuYXJpYUxhYmVsbGVkQnk7XG4gIH1cbiAgQEhvc3RCaW5kaW5nKCdhdHRyLmFyaWEtZGVzY3JpYmVkYnknKSBnZXQgaG9zdEFyaWFEZXNjcmliZWRCeSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmFyaWFEZXNjcmliZWRCeTtcbiAgfVxuICBASG9zdExpc3RlbmVyKCdjbGljaycsIFsnJGV2ZW50LnRhcmdldCddKSBiYWNrZHJvcENsaWNrKFxuICAgIGJ0bjogSFRNTEVsZW1lbnRcbiAgKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuYmFja2Ryb3AgPT09IHRydWUgJiYgdGhpcy5fZWxSZWYubmF0aXZlRWxlbWVudCA9PT0gYnRuKSB7XG4gICAgICB0aGlzLmRpc21pc3MoTW9kYWxEaXNtaXNzUmVhc29ucy5CYWNrZHJvcENsaWNrKTtcbiAgICB9XG4gIH1cbiAgQEhvc3RMaXN0ZW5lcigna2V5dXAuZXNjJywgWyckZXZlbnQnXSkgZXNjS2V5KGV2ZW50KTogdm9pZCB7XG4gICAgaWYgKHRoaXMua2V5Ym9hcmQgJiYgIWV2ZW50LmRlZmF1bHRQcmV2ZW50ZWQpIHtcbiAgICAgIHRoaXMuZGlzbWlzcyhNb2RhbERpc21pc3NSZWFzb25zLkVzYyk7XG4gICAgfVxuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgQEluamVjdChET0NVTUVOVCkgcHJpdmF0ZSBfZG9jdW1lbnQ6IGFueSxcbiAgICBwcml2YXRlIF9lbFJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD5cbiAgKSB7fVxuXG4gIGRpc21pc3MocmVhc29uKTogdm9pZCB7XG4gICAgdGhpcy5kaXNtaXNzRXZlbnQuZW1pdChyZWFzb24pO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5fZWxXaXRoRm9jdXMgPSB0aGlzLl9kb2N1bWVudC5hY3RpdmVFbGVtZW50O1xuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5fZWxSZWYubmF0aXZlRWxlbWVudC5jb250YWlucyhkb2N1bWVudC5hY3RpdmVFbGVtZW50KSkge1xuICAgICAgY29uc3QgZmlyc3RGb2N1c2FibGUgPSBnZXRGb2N1c2FibGVCb3VuZGFyeUVsZW1lbnRzKFxuICAgICAgICB0aGlzLl9lbFJlZi5uYXRpdmVFbGVtZW50XG4gICAgICApWzBdO1xuXG4gICAgICBjb25zdCBlbGVtZW50VG9Gb2N1cyA9IGZpcnN0Rm9jdXNhYmxlIHx8IHRoaXMuX2VsUmVmLm5hdGl2ZUVsZW1lbnQ7XG4gICAgICBlbGVtZW50VG9Gb2N1cy5mb2N1cygpO1xuICAgIH1cbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIGNvbnN0IGJvZHkgPSB0aGlzLl9kb2N1bWVudC5ib2R5O1xuICAgIGNvbnN0IGVsV2l0aEZvY3VzID0gdGhpcy5fZWxXaXRoRm9jdXM7XG5cbiAgICBsZXQgZWxlbWVudFRvRm9jdXM7XG4gICAgaWYgKGVsV2l0aEZvY3VzICYmIGVsV2l0aEZvY3VzW0ZPQ1VTXSAmJiBib2R5LmNvbnRhaW5zKGVsV2l0aEZvY3VzKSkge1xuICAgICAgZWxlbWVudFRvRm9jdXMgPSBlbFdpdGhGb2N1cztcbiAgICB9IGVsc2Uge1xuICAgICAgZWxlbWVudFRvRm9jdXMgPSBib2R5O1xuICAgIH1cbiAgICBlbGVtZW50VG9Gb2N1cy5mb2N1cygpO1xuICAgIHRoaXMuX2VsV2l0aEZvY3VzID0gbnVsbDtcbiAgfVxufVxuIl19
119
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwtd2luZG93LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbHV4L3NyYy9saWIvbW9kYWwvbW9kYWwtd2luZG93LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMzQyxPQUFPLEVBRUwsU0FBUyxFQUNULFVBQVUsRUFDVixZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFHTCxNQUFNLEVBQ04sV0FBVyxFQUNYLFlBQVksRUFDYixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsNEJBQTRCLEVBQUUsS0FBSyxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBQzdELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDOztBQVU5RCxNQUFNLE9BQU8sdUJBQXVCO0lBYWxDLElBQTBCLEtBQUs7UUFDN0IsT0FBTyxTQUFTLElBQUksQ0FBQyxXQUFXLElBQUksRUFBRSxFQUFFLENBQUM7SUFDM0MsQ0FBQztJQUlELElBQXlDLGtCQUFrQjtRQUN6RCxPQUFPLElBQUksQ0FBQyxjQUFjLENBQUM7SUFDN0IsQ0FBQztJQUNELElBQTBDLG1CQUFtQjtRQUMzRCxPQUFPLElBQUksQ0FBQyxlQUFlLENBQUM7SUFDOUIsQ0FBQztJQUN5QyxhQUFhLENBQ3JELEdBQWdCO1FBRWhCLElBQUksSUFBSSxDQUFDLFFBQVEsS0FBSyxJQUFJLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxhQUFhLEtBQUssR0FBRyxFQUFFO1lBQy9ELElBQUksQ0FBQyxPQUFPLENBQUMsbUJBQW1CLENBQUMsYUFBYSxDQUFDLENBQUM7U0FDakQ7SUFDSCxDQUFDO0lBQ3NDLE1BQU0sQ0FBQyxLQUFLO1FBQ2pELElBQUksSUFBSSxDQUFDLFFBQVEsSUFBSSxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsRUFBRTtZQUM1QyxJQUFJLENBQUMsT0FBTyxDQUFDLG1CQUFtQixDQUFDLEdBQUcsQ0FBQyxDQUFDO1NBQ3ZDO0lBQ0gsQ0FBQztJQUVELFlBQzRCLFNBQWMsRUFDaEMsTUFBK0I7UUFEYixjQUFTLEdBQVQsU0FBUyxDQUFLO1FBQ2hDLFdBQU0sR0FBTixNQUFNLENBQXlCO1FBakNoQyxhQUFRLEdBQXFCLEtBQUssQ0FBQztRQUNuQyxhQUFRLEdBQUcsSUFBSSxDQUFDO1FBR2YsaUJBQVksR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBS2xCLFNBQUksR0FBRyxRQUFRLENBQUM7UUFDakIsYUFBUSxHQUFHLElBQUksQ0FBQztRQUNULGNBQVMsR0FBRyxJQUFJLENBQUM7SUF1QjlDLENBQUM7SUFFSixPQUFPLENBQUMsTUFBTTtRQUNaLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQztJQUNuRCxDQUFDO0lBRUQsZUFBZTtRQUNiLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxFQUFFO1lBQy9ELE1BQU0sY0FBYyxHQUFHLDRCQUE0QixDQUNqRCxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FDMUIsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUVMLE1BQU0sY0FBYyxHQUFHLGNBQWMsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQztZQUNuRSxjQUFjLENBQUMsS0FBSyxFQUFFLENBQUM7U0FDeEI7SUFDSCxDQUFDO0lBRUQsV0FBVztRQUNULE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDO1FBQ2pDLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUM7UUFFdEMsSUFBSSxjQUFjLENBQUM7UUFDbkIsSUFBSSxXQUFXLElBQUksV0FBVyxDQUFDLEtBQUssQ0FBQyxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLEVBQUU7WUFDbkUsY0FBYyxHQUFHLFdBQVcsQ0FBQztTQUM5QjthQUFNO1lBQ0wsY0FBYyxHQUFHLElBQUksQ0FBQztTQUN2QjtRQUNELGNBQWMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUN2QixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQztJQUMzQixDQUFDOztvSEExRVUsdUJBQXVCLGtCQXVDeEIsUUFBUTt3R0F2Q1AsdUJBQXVCLHlrQkFOeEI7Ozs7R0FJVDsyRkFFVSx1QkFBdUI7a0JBUm5DLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGtCQUFrQjtvQkFDNUIsUUFBUSxFQUFFOzs7O0dBSVQ7aUJBQ0Y7OzBCQXdDSSxNQUFNOzJCQUFDLFFBQVE7cUVBbENULGVBQWU7c0JBQXZCLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFFSSxZQUFZO3NCQUFyQixNQUFNO2dCQUVtQixLQUFLO3NCQUE5QixXQUFXO3VCQUFDLE9BQU87Z0JBR00sSUFBSTtzQkFBN0IsV0FBVzt1QkFBQyxXQUFXO2dCQUNDLFFBQVE7c0JBQWhDLFdBQVc7dUJBQUMsVUFBVTtnQkFDUyxTQUFTO3NCQUF4QyxXQUFXO3VCQUFDLGlCQUFpQjtnQkFDVyxrQkFBa0I7c0JBQTFELFdBQVc7dUJBQUMsc0JBQXNCO2dCQUdPLG1CQUFtQjtzQkFBNUQsV0FBVzt1QkFBQyx1QkFBdUI7Z0JBR00sYUFBYTtzQkFBdEQsWUFBWTt1QkFBQyxPQUFPLEVBQUUsQ0FBQyxlQUFlLENBQUM7Z0JBT0QsTUFBTTtzQkFBNUMsWUFBWTt1QkFBQyxXQUFXLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBET0NVTUVOVCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5qZWN0LFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIE91dHB1dCxcbiAgSG9zdEJpbmRpbmcsXG4gIEhvc3RMaXN0ZW5lclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgZ2V0Rm9jdXNhYmxlQm91bmRhcnlFbGVtZW50cywgRk9DVVMgfSBmcm9tICcuL3V0aWwnO1xuaW1wb3J0IHsgTW9kYWxEaXNtaXNzUmVhc29ucyB9IGZyb20gJy4vbW9kYWwtZGlzbWlzcy1yZWFzb25zJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbHV4LW1vZGFsLXdpbmRvdycsXG4gIHRlbXBsYXRlOiBgXG4gICAgPGRpdiBjbGFzcz1cIm1vZGFsLWRpYWxvZ1wiIHJvbGU9XCJkb2N1bWVudFwiPlxuICAgICAgPGRpdiBjbGFzcz1cIm1vZGFsLWNvbnRlbnRcIj48bmctY29udGVudD48L25nLWNvbnRlbnQ+PC9kaXY+XG4gICAgPC9kaXY+XG4gIGBcbn0pXG5leHBvcnQgY2xhc3MgTHV4TW9kYWxXaW5kb3dDb21wb25lbnRcbiAgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveVxue1xuICBwcml2YXRlIF9lbFdpdGhGb2N1czogRWxlbWVudDsgLy8gZWxlbWVudCB0aGF0IGlzIGZvY3VzZWQgcHJpb3IgdG8gbW9kYWwgb3BlbmluZ1xuXG4gIEBJbnB1dCgpIGFyaWFEZXNjcmliZWRCeTogc3RyaW5nO1xuICBASW5wdXQoKSBhcmlhTGFiZWxsZWRCeTogc3RyaW5nO1xuICBASW5wdXQoKSBiYWNrZHJvcDogYm9vbGVhbiB8IHN0cmluZyA9IGZhbHNlO1xuICBASW5wdXQoKSBrZXlib2FyZCA9IHRydWU7XG4gIEBJbnB1dCgpIHdpbmRvd0NsYXNzOiBzdHJpbmc7XG5cbiAgQE91dHB1dCgpIGRpc21pc3NFdmVudCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzJykgZ2V0IGNsYXNzKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGBtb2RhbCAke3RoaXMud2luZG93Q2xhc3MgfHwgJyd9YDtcbiAgfVxuICBASG9zdEJpbmRpbmcoJ2F0dHIucm9sZScpIHJvbGUgPSAnZGlhbG9nJztcbiAgQEhvc3RCaW5kaW5nKCd0YWJpbmRleCcpIHRhYmluZGV4ID0gJy0xJztcbiAgQEhvc3RCaW5kaW5nKCdhdHRyLmFyaWEtbW9kYWwnKSBhcmlhbW9kYWwgPSB0cnVlO1xuICBASG9zdEJpbmRpbmcoJ2F0dHIuYXJpYS1sYWJlbGxlZGJ5JykgZ2V0IGhvc3RBcmlhTGFiZWxsZWRCeSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmFyaWFMYWJlbGxlZEJ5O1xuICB9XG4gIEBIb3N0QmluZGluZygnYXR0ci5hcmlhLWRlc2NyaWJlZGJ5JykgZ2V0IGhvc3RBcmlhRGVzY3JpYmVkQnkoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5hcmlhRGVzY3JpYmVkQnk7XG4gIH1cbiAgQEhvc3RMaXN0ZW5lcignY2xpY2snLCBbJyRldmVudC50YXJnZXQnXSkgYmFja2Ryb3BDbGljayhcbiAgICBidG46IEhUTUxFbGVtZW50XG4gICk6IHZvaWQge1xuICAgIGlmICh0aGlzLmJhY2tkcm9wID09PSB0cnVlICYmIHRoaXMuX2VsUmVmLm5hdGl2ZUVsZW1lbnQgPT09IGJ0bikge1xuICAgICAgdGhpcy5kaXNtaXNzKE1vZGFsRGlzbWlzc1JlYXNvbnMuQmFja2Ryb3BDbGljayk7XG4gICAgfVxuICB9XG4gIEBIb3N0TGlzdGVuZXIoJ2tleXVwLmVzYycsIFsnJGV2ZW50J10pIGVzY0tleShldmVudCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmtleWJvYXJkICYmICFldmVudC5kZWZhdWx0UHJldmVudGVkKSB7XG4gICAgICB0aGlzLmRpc21pc3MoTW9kYWxEaXNtaXNzUmVhc29ucy5Fc2MpO1xuICAgIH1cbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBJbmplY3QoRE9DVU1FTlQpIHByaXZhdGUgX2RvY3VtZW50OiBhbnksXG4gICAgcHJpdmF0ZSBfZWxSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+XG4gICkge31cblxuICBkaXNtaXNzKHJlYXNvbik6IHZvaWQge1xuICAgIHRoaXMuZGlzbWlzc0V2ZW50LmVtaXQocmVhc29uKTtcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuX2VsV2l0aEZvY3VzID0gdGhpcy5fZG9jdW1lbnQuYWN0aXZlRWxlbWVudDtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuX2VsUmVmLm5hdGl2ZUVsZW1lbnQuY29udGFpbnMoZG9jdW1lbnQuYWN0aXZlRWxlbWVudCkpIHtcbiAgICAgIGNvbnN0IGZpcnN0Rm9jdXNhYmxlID0gZ2V0Rm9jdXNhYmxlQm91bmRhcnlFbGVtZW50cyhcbiAgICAgICAgdGhpcy5fZWxSZWYubmF0aXZlRWxlbWVudFxuICAgICAgKVswXTtcblxuICAgICAgY29uc3QgZWxlbWVudFRvRm9jdXMgPSBmaXJzdEZvY3VzYWJsZSB8fCB0aGlzLl9lbFJlZi5uYXRpdmVFbGVtZW50O1xuICAgICAgZWxlbWVudFRvRm9jdXMuZm9jdXMoKTtcbiAgICB9XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICBjb25zdCBib2R5ID0gdGhpcy5fZG9jdW1lbnQuYm9keTtcbiAgICBjb25zdCBlbFdpdGhGb2N1cyA9IHRoaXMuX2VsV2l0aEZvY3VzO1xuXG4gICAgbGV0IGVsZW1lbnRUb0ZvY3VzO1xuICAgIGlmIChlbFdpdGhGb2N1cyAmJiBlbFdpdGhGb2N1c1tGT0NVU10gJiYgYm9keS5jb250YWlucyhlbFdpdGhGb2N1cykpIHtcbiAgICAgIGVsZW1lbnRUb0ZvY3VzID0gZWxXaXRoRm9jdXM7XG4gICAgfSBlbHNlIHtcbiAgICAgIGVsZW1lbnRUb0ZvY3VzID0gYm9keTtcbiAgICB9XG4gICAgZWxlbWVudFRvRm9jdXMuZm9jdXMoKTtcbiAgICB0aGlzLl9lbFdpdGhGb2N1cyA9IG51bGw7XG4gIH1cbn1cbiJdfQ==
@@ -17,9 +17,9 @@ export class ModalService {
17
17
  return this.modalStack.open(this.moduleCFR, content, options);
18
18
  }
19
19
  }
20
- ModalService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: ModalService, deps: [{ token: i1.ModalStack }, { token: i0.ComponentFactoryResolver }], target: i0.ɵɵFactoryTarget.Injectable });
21
- ModalService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: ModalService, providedIn: 'root' });
22
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: ModalService, decorators: [{
20
+ ModalService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ModalService, deps: [{ token: i1.ModalStack }, { token: i0.ComponentFactoryResolver }], target: i0.ɵɵFactoryTarget.Injectable });
21
+ ModalService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ModalService, providedIn: 'root' });
22
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ModalService, decorators: [{
23
23
  type: Injectable,
24
24
  args: [{ providedIn: 'root' }]
25
25
  }], ctorParameters: function () { return [{ type: i1.ModalStack }, { type: i0.ComponentFactoryResolver }]; } });
@@ -4,6 +4,28 @@ import * as i0 from "@angular/core";
4
4
  import * as i1 from "@angular/common";
5
5
  import * as i2 from "../tooltip/tooltip.directive";
6
6
  export class PaginationComponent {
7
+ set lang(l) {
8
+ if (l === this._lang) {
9
+ return;
10
+ }
11
+ if (Object.keys(this.literals).includes(l)) {
12
+ this._lang = l;
13
+ }
14
+ else {
15
+ this._lang = 'en';
16
+ }
17
+ this.loadLanguage();
18
+ }
19
+ get lang() {
20
+ return this._lang;
21
+ }
22
+ set paginationInfo(value) {
23
+ this.paginationInfoValue = value;
24
+ this.syncState();
25
+ }
26
+ get paginationInfo() {
27
+ return this.paginationInfoValue;
28
+ }
7
29
  constructor() {
8
30
  this.literals = {
9
31
  en: {
@@ -30,28 +52,6 @@ export class PaginationComponent {
30
52
  this.pageSizeChange = new EventEmitter();
31
53
  this.lang = languageDetector();
32
54
  }
33
- set lang(l) {
34
- if (l === this._lang) {
35
- return;
36
- }
37
- if (Object.keys(this.literals).includes(l)) {
38
- this._lang = l;
39
- }
40
- else {
41
- this._lang = 'en';
42
- }
43
- this.loadLanguage();
44
- }
45
- get lang() {
46
- return this._lang;
47
- }
48
- set paginationInfo(value) {
49
- this.paginationInfoValue = value;
50
- this.syncState();
51
- }
52
- get paginationInfo() {
53
- return this.paginationInfoValue;
54
- }
55
55
  ngOnInit() {
56
56
  this.calculatePages();
57
57
  }
@@ -120,11 +120,11 @@ export class PaginationComponent {
120
120
  this.last = l.last;
121
121
  }
122
122
  }
123
- PaginationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: PaginationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
124
- PaginationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: PaginationComponent, selector: "lux-pagination", inputs: { lang: "lang", paginationInfo: "paginationInfo" }, outputs: { goToPage: "goToPage", pageSizeChange: "pageSizeChange" }, ngImport: i0, template: "<div class=\"lux-pagination\" *ngIf=\"showPagination\">\n <ng-container *ngIf=\"!hidePrevious\">\n <a\n luxTooltip\n [content]=\"first\"\n placement=\"top\"\n delay=\"500\"\n (click)=\"onFirst()\"\n [ngClass]=\"{\n enabledFirstLast: !hidePrevious\n }\"\n class=\"button-pagination icon arrow-left-end\"\n ></a>\n <a\n luxTooltip\n [content]=\"previous\"\n placement=\"top\"\n delay=\"500\"\n (click)=\"onPrevious()\"\n [ngClass]=\"{\n enabledFirstLast: !hidePrevious\n }\"\n class=\"button-pagination icon arrow-left\"\n ></a>\n </ng-container>\n\n <span class=\"ellipsis\" *ngIf=\"displayPreviousEllipsis\">...</span>\n\n <ng-container *ngFor=\"let pageNum of pages\">\n <a\n placement=\"top\"\n delay=\"500\"\n [ngClass]=\"{\n disabled: pageNum === paginationInfo.page,\n enabled: pageNum !== paginationInfo.page\n }\"\n class=\"button-pagination\"\n (click)=\"onPage(pageNum)\"\n >{{ pageNum + 1 }}</a\n >\n </ng-container>\n\n <span class=\"ellipsis\" *ngIf=\"displayNextEllipsis\">...</span>\n\n <ng-container *ngIf=\"!lastPage\">\n <a\n luxTooltip\n [content]=\"next\"\n placement=\"top\"\n delay=\"500\"\n (click)=\"onNext()\"\n [ngClass]=\"{\n enabledFirstLast: !lastPage\n }\"\n class=\"button-pagination icon arrow-right\"\n ></a>\n <a\n luxTooltip\n [content]=\"last\"\n placement=\"top\"\n delay=\"500\"\n (click)=\"onLast()\"\n [ngClass]=\"{\n enabledFirstLast: !lastPage\n }\"\n class=\"button-pagination icon arrow-right-end\"\n ></a>\n </ng-container>\n</div>\n", styles: [":focus{z-index:1}input,select,textarea{border:1px solid #495057;border:var(--lux-input-border, 1px solid) var(--lux-input-border-color, #495057);margin:0rem;margin:var(--lux-input-margin, 0rem);padding:0rem .5rem;padding:var(--lux-input-padding, 0rem .5rem)}.alert{padding:.2rem 2rem;background:#fe2e2e;background:var(--lux-alert-background, #fe2e2e);color:#fff;color:var(--lux-alert-color, white);font-family:Consolas,monospace;width:45%;margin-right:1rem;display:inline-block}.symbol{display:inline-block;align-items:baseline;padding:0rem .5rem;margin-bottom:0;font-weight:400;color:default;color:var(--lux-symbol-color, default);text-align:center;white-space:nowrap;background:default;background:var(--lux-symbol-background, default);font-size:1rem;font-size:var(--lux-symbol-font-size, 1rem)}.bordered,.symbol{border:1px solid #495057;border:var(--lux-input-border, 1px solid) var(--lux-input-border-color, #495057)}.rounded,.rounded-right,.rounded-middle,.rounded-left{border-radius:.25rem;border-radius:var(--lux-border-radius, .25rem)}.rounded-left{border-top-right-radius:0;border-bottom-right-radius:0}.rounded-middle{border-radius:0}.rounded-right{border-top-left-radius:0;border-bottom-left-radius:0}.prefix{border-right:none}.infix{border-left:none;border-right:none}.postfix{border-left:none;display:flex;align-items:center}.monospace{font-family:monospace}.default-font{color:#000;color:var(--lux-font-color, black)}.lux-pagination{display:flex;flex-direction:row;margin:2% 0;width:100%;background:white;align-items:center}.disabled{cursor:not-allowed;border:1px solid #325c81;border:var(--lux-pagination-disabled-border, 1px solid #325c81);border-radius:10%;border-radius:var(--lux-pagination-disabled-border-radius, 10%);padding:1%;margin:0 .7%;color:#fff;color:var(--lux-pagination-disabled-color, white);background-color:#325c81;background-color:var(--lux-pagination-disabled-background-color, #325c81);text-decoration:none;pointer-events:none}.enabled{border:1px solid rgb(207,207,207);border:var(--lux-pagination-enabled-border, 1px solid rgb(207, 207, 207));border-radius:10%;border-radius:var(--lux-pagination-enabled-border-radius, 10%);padding:1%;margin:0 .7%;color:#325c81;color:var(--lux-pagination-enabled-color, #325c81);width:-webkit-min-content;width:-moz-min-content;width:min-content;cursor:pointer}.enabledFirstLast{border:1px solid rgb(207,207,207);border-radius:10%;padding:1%;color:#325c81;margin:0 .7%;width:-webkit-min-content;width:-moz-min-content;width:min-content;cursor:pointer}.ellipsis{margin:0rem .5rem;padding:0rem;color:#325c81;width:-webkit-min-content;width:-moz-min-content;width:min-content}.button-pagination{width:1em;width:var(--lux-pagination-button-width, 1em);height:1.2em;height:var(--lux-pagination-button-height, 1.2em);font-size:80%;font-size:var(--lux-pagination-font-size, 80%);text-align:center}.icon{background-size:1.3em 1.4em;background-position:center;background-repeat:no-repeat}.arrow-right{background-image:url(\"data:image/svg+xml,%3Csvg width%3D%2268%22 height%3D%2248%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E %3Cg%3E %3Ctitle%3Ebackground%3C%2Ftitle%3E %3Crect fill%3D%22none%22 id%3D%22canvas_background%22 height%3D%22402%22 width%3D%221082%22 y%3D%22-1%22 x%3D%22-1%22%2F%3E %3C%2Fg%3E %3Cg%3E %3Ctitle%3ELayer 1%3C%2Ftitle%3E %3Cpolygon fill%3D%22%23325C81%22 id%3D%22svg_2%22 points%3D%2221.8%2C45.7 10.4%2C44.3 30.8%2C24 10.4%2C3.7 21.8%2C2.3 43.5%2C24 %22%2F%3E %3C%2Fg%3E%3C%2Fsvg%3E\");background-position:.4em}.arrow-left{background-image:url(\"data:image/svg+xml,%3Csvg width%3D%2268%22 height%3D%2248%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E %3Cg%3E %3Ctitle%3Ebackground%3C%2Ftitle%3E %3Crect fill%3D%22none%22 id%3D%22canvas_background%22 height%3D%22402%22 width%3D%221082%22 y%3D%22-1%22 x%3D%22-1%22%2F%3E %3C%2Fg%3E %3Cg%3E %3Ctitle%3ELayer 1%3C%2Ftitle%3E %3Cpolygon fill%3D%22%23325C81%22 id%3D%22svg_2%22 points%3D%2221.8%2C45.7 10.4%2C44.3 30.8%2C24 10.4%2C3.7 21.8%2C2.3 43.5%2C24 %22%2F%3E %3C%2Fg%3E%3C%2Fsvg%3E\");transform:rotate(180deg);background-position:.4em}.arrow-right-end{background-image:url(\"data:image/svg+xml,%3Csvg width%3D%2268%22 height%3D%2248%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E %3Cg%3E %3Ctitle%3Ebackground%3C%2Ftitle%3E %3Crect fill%3D%22none%22 id%3D%22canvas_background%22 height%3D%22402%22 width%3D%221082%22 y%3D%22-1%22 x%3D%22-1%22%2F%3E %3C%2Fg%3E %3Cg%3E %3Ctitle%3ELayer 1%3C%2Ftitle%3E %3Cpolygon fill%3D%22%23325C81%22 id%3D%22svg_2%22 points%3D%2221.8%2C45.7 10.4%2C44.3 30.8%2C24 10.4%2C3.7 21.8%2C2.3 43.5%2C24 %22%2F%3E %3Cpolygon fill%3D%22%23325C81%22 id%3D%22svg_3%22 points%3D%2241.8%2C45.7 30.4%2C44.3 50.8%2C24 30.4%2C3.7 41.8%2C2.3 63.5%2C24 %22%2F%3E %3C%2Fg%3E%3C%2Fsvg%3E\");background-position:.1em}.arrow-left-end{background-image:url(\"data:image/svg+xml,%3Csvg width%3D%2268%22 height%3D%2248%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E %3Cg%3E %3Ctitle%3Ebackground%3C%2Ftitle%3E %3Crect fill%3D%22none%22 id%3D%22canvas_background%22 height%3D%22402%22 width%3D%221082%22 y%3D%22-1%22 x%3D%22-1%22%2F%3E %3C%2Fg%3E %3Cg%3E %3Ctitle%3ELayer 1%3C%2Ftitle%3E %3Cpolygon fill%3D%22%23325C81%22 id%3D%22svg_2%22 points%3D%2221.8%2C45.7 10.4%2C44.3 30.8%2C24 10.4%2C3.7 21.8%2C2.3 43.5%2C24 %22%2F%3E %3Cpolygon fill%3D%22%23325C81%22 id%3D%22svg_3%22 points%3D%2241.8%2C45.7 30.4%2C44.3 50.8%2C24 30.4%2C3.7 41.8%2C2.3 63.5%2C24 %22%2F%3E %3C%2Fg%3E%3C%2Fsvg%3E\");background-position:.1em;transform:rotate(180deg)}@media only screen and (min-width: 300px) and (max-width: 500px){.arrow-right,.arrow-left{background-position:.2em}.arrow-right-end,.arrow-left-end{background-position:0em}}@media only screen and (min-width: 500px) and (max-width: 850px){.arrow-right,.arrow-left{background-position:.3em}.arrow-right-end,.arrow-left-end{background-position:0em}}@media only screen and (min-width: 900px){.arrow-right,.arrow-left{background-position:.2em}.arrow-right-end,.arrow-left-end{background-position:0em}}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.LuxTooltipDirective, selector: "[luxTooltip]", inputs: ["luxTooltip", "content", "placement"] }] });
125
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: PaginationComponent, decorators: [{
123
+ PaginationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: PaginationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
124
+ PaginationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.2", type: PaginationComponent, selector: "lux-pagination", inputs: { lang: "lang", paginationInfo: "paginationInfo" }, outputs: { goToPage: "goToPage", pageSizeChange: "pageSizeChange" }, ngImport: i0, template: "<div class=\"lux-pagination\" *ngIf=\"showPagination\">\n <ng-container *ngIf=\"!hidePrevious\">\n <a\n luxTooltip\n [content]=\"first\"\n placement=\"top\"\n delay=\"500\"\n (click)=\"onFirst()\"\n [ngClass]=\"{\n enabledFirstLast: !hidePrevious\n }\"\n class=\"button-pagination icon arrow-left-end\"\n ></a>\n <a\n luxTooltip\n [content]=\"previous\"\n placement=\"top\"\n delay=\"500\"\n (click)=\"onPrevious()\"\n [ngClass]=\"{\n enabledFirstLast: !hidePrevious\n }\"\n class=\"button-pagination icon arrow-left\"\n ></a>\n </ng-container>\n\n <span class=\"ellipsis\" *ngIf=\"displayPreviousEllipsis\">...</span>\n\n <ng-container *ngFor=\"let pageNum of pages\">\n <a\n placement=\"top\"\n delay=\"500\"\n [ngClass]=\"{\n disabled: pageNum === paginationInfo.page,\n enabled: pageNum !== paginationInfo.page\n }\"\n class=\"button-pagination\"\n (click)=\"onPage(pageNum)\"\n >{{ pageNum + 1 }}</a\n >\n </ng-container>\n\n <span class=\"ellipsis\" *ngIf=\"displayNextEllipsis\">...</span>\n\n <ng-container *ngIf=\"!lastPage\">\n <a\n luxTooltip\n [content]=\"next\"\n placement=\"top\"\n delay=\"500\"\n (click)=\"onNext()\"\n [ngClass]=\"{\n enabledFirstLast: !lastPage\n }\"\n class=\"button-pagination icon arrow-right\"\n ></a>\n <a\n luxTooltip\n [content]=\"last\"\n placement=\"top\"\n delay=\"500\"\n (click)=\"onLast()\"\n [ngClass]=\"{\n enabledFirstLast: !lastPage\n }\"\n class=\"button-pagination icon arrow-right-end\"\n ></a>\n </ng-container>\n</div>\n", styles: [":focus{z-index:1}input,select,textarea{border:var(--lux-input-border, 1px solid) var(--lux-input-border-color, #495057);margin:var(--lux-input-margin, 0rem);padding:var(--lux-input-padding, 0rem .5rem)}.alert{padding:.2rem 2rem;background:var(--lux-alert-background, #fe2e2e);color:var(--lux-alert-color, white);font-family:Consolas,monospace;width:45%;margin-right:1rem;display:inline-block}.symbol{display:inline-block;align-items:baseline;padding:0rem .5rem;margin-bottom:0;font-weight:400;color:var(--lux-symbol-color, default);text-align:center;white-space:nowrap;background:var(--lux-symbol-background, default);font-size:var(--lux-symbol-font-size, 1rem)}.bordered,.symbol{border:var(--lux-input-border, 1px solid) var(--lux-input-border-color, #495057)}.rounded,.rounded-right,.rounded-middle,.rounded-left{border-radius:var(--lux-border-radius, .25rem)}.rounded-left{border-top-right-radius:0;border-bottom-right-radius:0}.rounded-middle{border-radius:0}.rounded-right{border-top-left-radius:0;border-bottom-left-radius:0}.prefix{border-right:none}.infix{border-left:none;border-right:none}.postfix{border-left:none;display:flex;align-items:center}.monospace{font-family:monospace}.default-font{color:var(--lux-font-color, black)}.lux-pagination{display:flex;flex-direction:row;margin:2% 0;width:100%;background:white;align-items:center}.disabled{cursor:not-allowed;border:var(--lux-pagination-disabled-border, 1px solid #325c81);border-radius:var(--lux-pagination-disabled-border-radius, 10%);padding:1%;margin:0 .7%;color:var(--lux-pagination-disabled-color, white);background-color:var(--lux-pagination-disabled-background-color, #325c81);text-decoration:none;pointer-events:none}.enabled{border:var(--lux-pagination-enabled-border, 1px solid rgb(207, 207, 207));border-radius:var(--lux-pagination-enabled-border-radius, 10%);padding:1%;margin:0 .7%;color:var(--lux-pagination-enabled-color, #325c81);width:min-content;cursor:pointer}.enabledFirstLast{border:1px solid rgb(207,207,207);border-radius:10%;padding:1%;color:#325c81;margin:0 .7%;width:min-content;cursor:pointer}.ellipsis{margin:0rem .5rem;padding:0rem;color:#325c81;width:min-content}.button-pagination{width:var(--lux-pagination-button-width, 1em);height:var(--lux-pagination-button-height, 1.2em);font-size:var(--lux-pagination-font-size, 80%);text-align:center}.icon{background-size:1.3em 1.4em;background-position:center;background-repeat:no-repeat}.arrow-right{background-image:url(\"data:image/svg+xml,%3Csvg width%3D%2268%22 height%3D%2248%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E %3Cg%3E %3Ctitle%3Ebackground%3C%2Ftitle%3E %3Crect fill%3D%22none%22 id%3D%22canvas_background%22 height%3D%22402%22 width%3D%221082%22 y%3D%22-1%22 x%3D%22-1%22%2F%3E %3C%2Fg%3E %3Cg%3E %3Ctitle%3ELayer 1%3C%2Ftitle%3E %3Cpolygon fill%3D%22%23325C81%22 id%3D%22svg_2%22 points%3D%2221.8%2C45.7 10.4%2C44.3 30.8%2C24 10.4%2C3.7 21.8%2C2.3 43.5%2C24 %22%2F%3E %3C%2Fg%3E%3C%2Fsvg%3E\");background-position:.4em}.arrow-left{background-image:url(\"data:image/svg+xml,%3Csvg width%3D%2268%22 height%3D%2248%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E %3Cg%3E %3Ctitle%3Ebackground%3C%2Ftitle%3E %3Crect fill%3D%22none%22 id%3D%22canvas_background%22 height%3D%22402%22 width%3D%221082%22 y%3D%22-1%22 x%3D%22-1%22%2F%3E %3C%2Fg%3E %3Cg%3E %3Ctitle%3ELayer 1%3C%2Ftitle%3E %3Cpolygon fill%3D%22%23325C81%22 id%3D%22svg_2%22 points%3D%2221.8%2C45.7 10.4%2C44.3 30.8%2C24 10.4%2C3.7 21.8%2C2.3 43.5%2C24 %22%2F%3E %3C%2Fg%3E%3C%2Fsvg%3E\");transform:rotate(180deg);background-position:.4em}.arrow-right-end{background-image:url(\"data:image/svg+xml,%3Csvg width%3D%2268%22 height%3D%2248%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E %3Cg%3E %3Ctitle%3Ebackground%3C%2Ftitle%3E %3Crect fill%3D%22none%22 id%3D%22canvas_background%22 height%3D%22402%22 width%3D%221082%22 y%3D%22-1%22 x%3D%22-1%22%2F%3E %3C%2Fg%3E %3Cg%3E %3Ctitle%3ELayer 1%3C%2Ftitle%3E %3Cpolygon fill%3D%22%23325C81%22 id%3D%22svg_2%22 points%3D%2221.8%2C45.7 10.4%2C44.3 30.8%2C24 10.4%2C3.7 21.8%2C2.3 43.5%2C24 %22%2F%3E %3Cpolygon fill%3D%22%23325C81%22 id%3D%22svg_3%22 points%3D%2241.8%2C45.7 30.4%2C44.3 50.8%2C24 30.4%2C3.7 41.8%2C2.3 63.5%2C24 %22%2F%3E %3C%2Fg%3E%3C%2Fsvg%3E\");background-position:.1em}.arrow-left-end{background-image:url(\"data:image/svg+xml,%3Csvg width%3D%2268%22 height%3D%2248%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E %3Cg%3E %3Ctitle%3Ebackground%3C%2Ftitle%3E %3Crect fill%3D%22none%22 id%3D%22canvas_background%22 height%3D%22402%22 width%3D%221082%22 y%3D%22-1%22 x%3D%22-1%22%2F%3E %3C%2Fg%3E %3Cg%3E %3Ctitle%3ELayer 1%3C%2Ftitle%3E %3Cpolygon fill%3D%22%23325C81%22 id%3D%22svg_2%22 points%3D%2221.8%2C45.7 10.4%2C44.3 30.8%2C24 10.4%2C3.7 21.8%2C2.3 43.5%2C24 %22%2F%3E %3Cpolygon fill%3D%22%23325C81%22 id%3D%22svg_3%22 points%3D%2241.8%2C45.7 30.4%2C44.3 50.8%2C24 30.4%2C3.7 41.8%2C2.3 63.5%2C24 %22%2F%3E %3C%2Fg%3E%3C%2Fsvg%3E\");background-position:.1em;transform:rotate(180deg)}@media only screen and (min-width: 300px) and (max-width: 500px){.arrow-right,.arrow-left{background-position:.2em}.arrow-right-end,.arrow-left-end{background-position:0em}}@media only screen and (min-width: 500px) and (max-width: 850px){.arrow-right,.arrow-left{background-position:.3em}.arrow-right-end,.arrow-left-end{background-position:0em}}@media only screen and (min-width: 900px){.arrow-right,.arrow-left{background-position:.2em}.arrow-right-end,.arrow-left-end{background-position:0em}}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.LuxTooltipDirective, selector: "[luxTooltip]", inputs: ["luxTooltip", "content", "placement"] }] });
125
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: PaginationComponent, decorators: [{
126
126
  type: Component,
127
- args: [{ selector: 'lux-pagination', template: "<div class=\"lux-pagination\" *ngIf=\"showPagination\">\n <ng-container *ngIf=\"!hidePrevious\">\n <a\n luxTooltip\n [content]=\"first\"\n placement=\"top\"\n delay=\"500\"\n (click)=\"onFirst()\"\n [ngClass]=\"{\n enabledFirstLast: !hidePrevious\n }\"\n class=\"button-pagination icon arrow-left-end\"\n ></a>\n <a\n luxTooltip\n [content]=\"previous\"\n placement=\"top\"\n delay=\"500\"\n (click)=\"onPrevious()\"\n [ngClass]=\"{\n enabledFirstLast: !hidePrevious\n }\"\n class=\"button-pagination icon arrow-left\"\n ></a>\n </ng-container>\n\n <span class=\"ellipsis\" *ngIf=\"displayPreviousEllipsis\">...</span>\n\n <ng-container *ngFor=\"let pageNum of pages\">\n <a\n placement=\"top\"\n delay=\"500\"\n [ngClass]=\"{\n disabled: pageNum === paginationInfo.page,\n enabled: pageNum !== paginationInfo.page\n }\"\n class=\"button-pagination\"\n (click)=\"onPage(pageNum)\"\n >{{ pageNum + 1 }}</a\n >\n </ng-container>\n\n <span class=\"ellipsis\" *ngIf=\"displayNextEllipsis\">...</span>\n\n <ng-container *ngIf=\"!lastPage\">\n <a\n luxTooltip\n [content]=\"next\"\n placement=\"top\"\n delay=\"500\"\n (click)=\"onNext()\"\n [ngClass]=\"{\n enabledFirstLast: !lastPage\n }\"\n class=\"button-pagination icon arrow-right\"\n ></a>\n <a\n luxTooltip\n [content]=\"last\"\n placement=\"top\"\n delay=\"500\"\n (click)=\"onLast()\"\n [ngClass]=\"{\n enabledFirstLast: !lastPage\n }\"\n class=\"button-pagination icon arrow-right-end\"\n ></a>\n </ng-container>\n</div>\n", styles: [":focus{z-index:1}input,select,textarea{border:1px solid #495057;border:var(--lux-input-border, 1px solid) var(--lux-input-border-color, #495057);margin:0rem;margin:var(--lux-input-margin, 0rem);padding:0rem .5rem;padding:var(--lux-input-padding, 0rem .5rem)}.alert{padding:.2rem 2rem;background:#fe2e2e;background:var(--lux-alert-background, #fe2e2e);color:#fff;color:var(--lux-alert-color, white);font-family:Consolas,monospace;width:45%;margin-right:1rem;display:inline-block}.symbol{display:inline-block;align-items:baseline;padding:0rem .5rem;margin-bottom:0;font-weight:400;color:default;color:var(--lux-symbol-color, default);text-align:center;white-space:nowrap;background:default;background:var(--lux-symbol-background, default);font-size:1rem;font-size:var(--lux-symbol-font-size, 1rem)}.bordered,.symbol{border:1px solid #495057;border:var(--lux-input-border, 1px solid) var(--lux-input-border-color, #495057)}.rounded,.rounded-right,.rounded-middle,.rounded-left{border-radius:.25rem;border-radius:var(--lux-border-radius, .25rem)}.rounded-left{border-top-right-radius:0;border-bottom-right-radius:0}.rounded-middle{border-radius:0}.rounded-right{border-top-left-radius:0;border-bottom-left-radius:0}.prefix{border-right:none}.infix{border-left:none;border-right:none}.postfix{border-left:none;display:flex;align-items:center}.monospace{font-family:monospace}.default-font{color:#000;color:var(--lux-font-color, black)}.lux-pagination{display:flex;flex-direction:row;margin:2% 0;width:100%;background:white;align-items:center}.disabled{cursor:not-allowed;border:1px solid #325c81;border:var(--lux-pagination-disabled-border, 1px solid #325c81);border-radius:10%;border-radius:var(--lux-pagination-disabled-border-radius, 10%);padding:1%;margin:0 .7%;color:#fff;color:var(--lux-pagination-disabled-color, white);background-color:#325c81;background-color:var(--lux-pagination-disabled-background-color, #325c81);text-decoration:none;pointer-events:none}.enabled{border:1px solid rgb(207,207,207);border:var(--lux-pagination-enabled-border, 1px solid rgb(207, 207, 207));border-radius:10%;border-radius:var(--lux-pagination-enabled-border-radius, 10%);padding:1%;margin:0 .7%;color:#325c81;color:var(--lux-pagination-enabled-color, #325c81);width:-webkit-min-content;width:-moz-min-content;width:min-content;cursor:pointer}.enabledFirstLast{border:1px solid rgb(207,207,207);border-radius:10%;padding:1%;color:#325c81;margin:0 .7%;width:-webkit-min-content;width:-moz-min-content;width:min-content;cursor:pointer}.ellipsis{margin:0rem .5rem;padding:0rem;color:#325c81;width:-webkit-min-content;width:-moz-min-content;width:min-content}.button-pagination{width:1em;width:var(--lux-pagination-button-width, 1em);height:1.2em;height:var(--lux-pagination-button-height, 1.2em);font-size:80%;font-size:var(--lux-pagination-font-size, 80%);text-align:center}.icon{background-size:1.3em 1.4em;background-position:center;background-repeat:no-repeat}.arrow-right{background-image:url(\"data:image/svg+xml,%3Csvg width%3D%2268%22 height%3D%2248%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E %3Cg%3E %3Ctitle%3Ebackground%3C%2Ftitle%3E %3Crect fill%3D%22none%22 id%3D%22canvas_background%22 height%3D%22402%22 width%3D%221082%22 y%3D%22-1%22 x%3D%22-1%22%2F%3E %3C%2Fg%3E %3Cg%3E %3Ctitle%3ELayer 1%3C%2Ftitle%3E %3Cpolygon fill%3D%22%23325C81%22 id%3D%22svg_2%22 points%3D%2221.8%2C45.7 10.4%2C44.3 30.8%2C24 10.4%2C3.7 21.8%2C2.3 43.5%2C24 %22%2F%3E %3C%2Fg%3E%3C%2Fsvg%3E\");background-position:.4em}.arrow-left{background-image:url(\"data:image/svg+xml,%3Csvg width%3D%2268%22 height%3D%2248%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E %3Cg%3E %3Ctitle%3Ebackground%3C%2Ftitle%3E %3Crect fill%3D%22none%22 id%3D%22canvas_background%22 height%3D%22402%22 width%3D%221082%22 y%3D%22-1%22 x%3D%22-1%22%2F%3E %3C%2Fg%3E %3Cg%3E %3Ctitle%3ELayer 1%3C%2Ftitle%3E %3Cpolygon fill%3D%22%23325C81%22 id%3D%22svg_2%22 points%3D%2221.8%2C45.7 10.4%2C44.3 30.8%2C24 10.4%2C3.7 21.8%2C2.3 43.5%2C24 %22%2F%3E %3C%2Fg%3E%3C%2Fsvg%3E\");transform:rotate(180deg);background-position:.4em}.arrow-right-end{background-image:url(\"data:image/svg+xml,%3Csvg width%3D%2268%22 height%3D%2248%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E %3Cg%3E %3Ctitle%3Ebackground%3C%2Ftitle%3E %3Crect fill%3D%22none%22 id%3D%22canvas_background%22 height%3D%22402%22 width%3D%221082%22 y%3D%22-1%22 x%3D%22-1%22%2F%3E %3C%2Fg%3E %3Cg%3E %3Ctitle%3ELayer 1%3C%2Ftitle%3E %3Cpolygon fill%3D%22%23325C81%22 id%3D%22svg_2%22 points%3D%2221.8%2C45.7 10.4%2C44.3 30.8%2C24 10.4%2C3.7 21.8%2C2.3 43.5%2C24 %22%2F%3E %3Cpolygon fill%3D%22%23325C81%22 id%3D%22svg_3%22 points%3D%2241.8%2C45.7 30.4%2C44.3 50.8%2C24 30.4%2C3.7 41.8%2C2.3 63.5%2C24 %22%2F%3E %3C%2Fg%3E%3C%2Fsvg%3E\");background-position:.1em}.arrow-left-end{background-image:url(\"data:image/svg+xml,%3Csvg width%3D%2268%22 height%3D%2248%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E %3Cg%3E %3Ctitle%3Ebackground%3C%2Ftitle%3E %3Crect fill%3D%22none%22 id%3D%22canvas_background%22 height%3D%22402%22 width%3D%221082%22 y%3D%22-1%22 x%3D%22-1%22%2F%3E %3C%2Fg%3E %3Cg%3E %3Ctitle%3ELayer 1%3C%2Ftitle%3E %3Cpolygon fill%3D%22%23325C81%22 id%3D%22svg_2%22 points%3D%2221.8%2C45.7 10.4%2C44.3 30.8%2C24 10.4%2C3.7 21.8%2C2.3 43.5%2C24 %22%2F%3E %3Cpolygon fill%3D%22%23325C81%22 id%3D%22svg_3%22 points%3D%2241.8%2C45.7 30.4%2C44.3 50.8%2C24 30.4%2C3.7 41.8%2C2.3 63.5%2C24 %22%2F%3E %3C%2Fg%3E%3C%2Fsvg%3E\");background-position:.1em;transform:rotate(180deg)}@media only screen and (min-width: 300px) and (max-width: 500px){.arrow-right,.arrow-left{background-position:.2em}.arrow-right-end,.arrow-left-end{background-position:0em}}@media only screen and (min-width: 500px) and (max-width: 850px){.arrow-right,.arrow-left{background-position:.3em}.arrow-right-end,.arrow-left-end{background-position:0em}}@media only screen and (min-width: 900px){.arrow-right,.arrow-left{background-position:.2em}.arrow-right-end,.arrow-left-end{background-position:0em}}\n"] }]
127
+ args: [{ selector: 'lux-pagination', template: "<div class=\"lux-pagination\" *ngIf=\"showPagination\">\n <ng-container *ngIf=\"!hidePrevious\">\n <a\n luxTooltip\n [content]=\"first\"\n placement=\"top\"\n delay=\"500\"\n (click)=\"onFirst()\"\n [ngClass]=\"{\n enabledFirstLast: !hidePrevious\n }\"\n class=\"button-pagination icon arrow-left-end\"\n ></a>\n <a\n luxTooltip\n [content]=\"previous\"\n placement=\"top\"\n delay=\"500\"\n (click)=\"onPrevious()\"\n [ngClass]=\"{\n enabledFirstLast: !hidePrevious\n }\"\n class=\"button-pagination icon arrow-left\"\n ></a>\n </ng-container>\n\n <span class=\"ellipsis\" *ngIf=\"displayPreviousEllipsis\">...</span>\n\n <ng-container *ngFor=\"let pageNum of pages\">\n <a\n placement=\"top\"\n delay=\"500\"\n [ngClass]=\"{\n disabled: pageNum === paginationInfo.page,\n enabled: pageNum !== paginationInfo.page\n }\"\n class=\"button-pagination\"\n (click)=\"onPage(pageNum)\"\n >{{ pageNum + 1 }}</a\n >\n </ng-container>\n\n <span class=\"ellipsis\" *ngIf=\"displayNextEllipsis\">...</span>\n\n <ng-container *ngIf=\"!lastPage\">\n <a\n luxTooltip\n [content]=\"next\"\n placement=\"top\"\n delay=\"500\"\n (click)=\"onNext()\"\n [ngClass]=\"{\n enabledFirstLast: !lastPage\n }\"\n class=\"button-pagination icon arrow-right\"\n ></a>\n <a\n luxTooltip\n [content]=\"last\"\n placement=\"top\"\n delay=\"500\"\n (click)=\"onLast()\"\n [ngClass]=\"{\n enabledFirstLast: !lastPage\n }\"\n class=\"button-pagination icon arrow-right-end\"\n ></a>\n </ng-container>\n</div>\n", styles: [":focus{z-index:1}input,select,textarea{border:var(--lux-input-border, 1px solid) var(--lux-input-border-color, #495057);margin:var(--lux-input-margin, 0rem);padding:var(--lux-input-padding, 0rem .5rem)}.alert{padding:.2rem 2rem;background:var(--lux-alert-background, #fe2e2e);color:var(--lux-alert-color, white);font-family:Consolas,monospace;width:45%;margin-right:1rem;display:inline-block}.symbol{display:inline-block;align-items:baseline;padding:0rem .5rem;margin-bottom:0;font-weight:400;color:var(--lux-symbol-color, default);text-align:center;white-space:nowrap;background:var(--lux-symbol-background, default);font-size:var(--lux-symbol-font-size, 1rem)}.bordered,.symbol{border:var(--lux-input-border, 1px solid) var(--lux-input-border-color, #495057)}.rounded,.rounded-right,.rounded-middle,.rounded-left{border-radius:var(--lux-border-radius, .25rem)}.rounded-left{border-top-right-radius:0;border-bottom-right-radius:0}.rounded-middle{border-radius:0}.rounded-right{border-top-left-radius:0;border-bottom-left-radius:0}.prefix{border-right:none}.infix{border-left:none;border-right:none}.postfix{border-left:none;display:flex;align-items:center}.monospace{font-family:monospace}.default-font{color:var(--lux-font-color, black)}.lux-pagination{display:flex;flex-direction:row;margin:2% 0;width:100%;background:white;align-items:center}.disabled{cursor:not-allowed;border:var(--lux-pagination-disabled-border, 1px solid #325c81);border-radius:var(--lux-pagination-disabled-border-radius, 10%);padding:1%;margin:0 .7%;color:var(--lux-pagination-disabled-color, white);background-color:var(--lux-pagination-disabled-background-color, #325c81);text-decoration:none;pointer-events:none}.enabled{border:var(--lux-pagination-enabled-border, 1px solid rgb(207, 207, 207));border-radius:var(--lux-pagination-enabled-border-radius, 10%);padding:1%;margin:0 .7%;color:var(--lux-pagination-enabled-color, #325c81);width:min-content;cursor:pointer}.enabledFirstLast{border:1px solid rgb(207,207,207);border-radius:10%;padding:1%;color:#325c81;margin:0 .7%;width:min-content;cursor:pointer}.ellipsis{margin:0rem .5rem;padding:0rem;color:#325c81;width:min-content}.button-pagination{width:var(--lux-pagination-button-width, 1em);height:var(--lux-pagination-button-height, 1.2em);font-size:var(--lux-pagination-font-size, 80%);text-align:center}.icon{background-size:1.3em 1.4em;background-position:center;background-repeat:no-repeat}.arrow-right{background-image:url(\"data:image/svg+xml,%3Csvg width%3D%2268%22 height%3D%2248%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E %3Cg%3E %3Ctitle%3Ebackground%3C%2Ftitle%3E %3Crect fill%3D%22none%22 id%3D%22canvas_background%22 height%3D%22402%22 width%3D%221082%22 y%3D%22-1%22 x%3D%22-1%22%2F%3E %3C%2Fg%3E %3Cg%3E %3Ctitle%3ELayer 1%3C%2Ftitle%3E %3Cpolygon fill%3D%22%23325C81%22 id%3D%22svg_2%22 points%3D%2221.8%2C45.7 10.4%2C44.3 30.8%2C24 10.4%2C3.7 21.8%2C2.3 43.5%2C24 %22%2F%3E %3C%2Fg%3E%3C%2Fsvg%3E\");background-position:.4em}.arrow-left{background-image:url(\"data:image/svg+xml,%3Csvg width%3D%2268%22 height%3D%2248%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E %3Cg%3E %3Ctitle%3Ebackground%3C%2Ftitle%3E %3Crect fill%3D%22none%22 id%3D%22canvas_background%22 height%3D%22402%22 width%3D%221082%22 y%3D%22-1%22 x%3D%22-1%22%2F%3E %3C%2Fg%3E %3Cg%3E %3Ctitle%3ELayer 1%3C%2Ftitle%3E %3Cpolygon fill%3D%22%23325C81%22 id%3D%22svg_2%22 points%3D%2221.8%2C45.7 10.4%2C44.3 30.8%2C24 10.4%2C3.7 21.8%2C2.3 43.5%2C24 %22%2F%3E %3C%2Fg%3E%3C%2Fsvg%3E\");transform:rotate(180deg);background-position:.4em}.arrow-right-end{background-image:url(\"data:image/svg+xml,%3Csvg width%3D%2268%22 height%3D%2248%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E %3Cg%3E %3Ctitle%3Ebackground%3C%2Ftitle%3E %3Crect fill%3D%22none%22 id%3D%22canvas_background%22 height%3D%22402%22 width%3D%221082%22 y%3D%22-1%22 x%3D%22-1%22%2F%3E %3C%2Fg%3E %3Cg%3E %3Ctitle%3ELayer 1%3C%2Ftitle%3E %3Cpolygon fill%3D%22%23325C81%22 id%3D%22svg_2%22 points%3D%2221.8%2C45.7 10.4%2C44.3 30.8%2C24 10.4%2C3.7 21.8%2C2.3 43.5%2C24 %22%2F%3E %3Cpolygon fill%3D%22%23325C81%22 id%3D%22svg_3%22 points%3D%2241.8%2C45.7 30.4%2C44.3 50.8%2C24 30.4%2C3.7 41.8%2C2.3 63.5%2C24 %22%2F%3E %3C%2Fg%3E%3C%2Fsvg%3E\");background-position:.1em}.arrow-left-end{background-image:url(\"data:image/svg+xml,%3Csvg width%3D%2268%22 height%3D%2248%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E %3Cg%3E %3Ctitle%3Ebackground%3C%2Ftitle%3E %3Crect fill%3D%22none%22 id%3D%22canvas_background%22 height%3D%22402%22 width%3D%221082%22 y%3D%22-1%22 x%3D%22-1%22%2F%3E %3C%2Fg%3E %3Cg%3E %3Ctitle%3ELayer 1%3C%2Ftitle%3E %3Cpolygon fill%3D%22%23325C81%22 id%3D%22svg_2%22 points%3D%2221.8%2C45.7 10.4%2C44.3 30.8%2C24 10.4%2C3.7 21.8%2C2.3 43.5%2C24 %22%2F%3E %3Cpolygon fill%3D%22%23325C81%22 id%3D%22svg_3%22 points%3D%2241.8%2C45.7 30.4%2C44.3 50.8%2C24 30.4%2C3.7 41.8%2C2.3 63.5%2C24 %22%2F%3E %3C%2Fg%3E%3C%2Fsvg%3E\");background-position:.1em;transform:rotate(180deg)}@media only screen and (min-width: 300px) and (max-width: 500px){.arrow-right,.arrow-left{background-position:.2em}.arrow-right-end,.arrow-left-end{background-position:0em}}@media only screen and (min-width: 500px) and (max-width: 850px){.arrow-right,.arrow-left{background-position:.3em}.arrow-right-end,.arrow-left-end{background-position:0em}}@media only screen and (min-width: 900px){.arrow-right,.arrow-left{background-position:.2em}.arrow-right-end,.arrow-left-end{background-position:0em}}\n"] }]
128
128
  }], ctorParameters: function () { return []; }, propDecorators: { goToPage: [{
129
129
  type: Output
130
130
  }], pageSizeChange: [{
@@ -134,4 +134,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImpor
134
134
  }], paginationInfo: [{
135
135
  type: Input
136
136
  }] } });
137
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9sdXgvc3JjL2xpYi9wYWdpbmF0aW9uL3BhZ2luYXRpb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbHV4L3NyYy9saWIvcGFnaW5hdGlvbi9wYWdpbmF0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDL0UsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sU0FBUyxDQUFDOzs7O0FBUTNDLE1BQU0sT0FBTyxtQkFBbUI7SUE4RDlCO1FBN0RBLGFBQVEsR0FBRztZQUNULEVBQUUsRUFBRTtnQkFDRixLQUFLLEVBQUUsT0FBTztnQkFDZCxRQUFRLEVBQUUsVUFBVTtnQkFDcEIsSUFBSSxFQUFFLE1BQU07Z0JBQ1osSUFBSSxFQUFFLE1BQU07YUFDYjtZQUNELEVBQUUsRUFBRTtnQkFDRixLQUFLLEVBQUUsU0FBUztnQkFDaEIsUUFBUSxFQUFFLFVBQVU7Z0JBQ3BCLElBQUksRUFBRSxXQUFXO2dCQUNqQixJQUFJLEVBQUUsUUFBUTthQUNmO1NBQ0YsQ0FBQztRQU9LLG1CQUFjLEdBQUcsS0FBSyxDQUFDO1FBQ3ZCLGlCQUFZLEdBQUcsS0FBSyxDQUFDO1FBQ3JCLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFDakIsZUFBVSxHQUFHLENBQUMsQ0FBQztRQUNmLHdCQUFtQixHQUFHLEtBQUssQ0FBQztRQUM1Qiw0QkFBdUIsR0FBRyxLQUFLLENBQUM7UUFFaEMsVUFBSyxHQUFhLEVBQUUsQ0FBQztRQUVsQixhQUFRLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUN0QyxtQkFBYyxHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7UUFnQ3BELElBQUks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QUU7b0JBQ25DLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO2lCQUNwQzthQUNGO1NBQ0Y7UUFDRCxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQzVCLE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUVPLFlBQVk7UUFDbEIsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDbkMsSUFBSSxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDO1FBQ3JCLElBQUksQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDLFFBQVEsQ0FBQztRQUMzQixJQUFJLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUM7UUFDbkIsSUFBSSxDQUFDLElBQUksR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDO0lBQ3JCLENBQUM7O2dIQTdJVSxtQkFBbUI7b0dBQW5CLG1CQUFtQix1TENUaEMsMHREQXFFQTsyRkQ1RGEsbUJBQW1CO2tCQUwvQixTQUFTOytCQUNFLGdCQUFnQjswRUFrQ2hCLFFBQVE7c0JBQWpCLE1BQU07Z0JBQ0csY0FBYztzQkFBdkIsTUFBTTtnQkFPSCxJQUFJO3NCQURQLEtBQUs7Z0JBaUJGLGNBQWM7c0JBRGpCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPdXRwdXQsIEV2ZW50RW1pdHRlciwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IGxhbmd1YWdlRGV0ZWN0b3IgfSBmcm9tICcuLi9sYW5nJztcclxuaW1wb3J0IHsgUGFnaW5hdGlvbkluZm8gfSBmcm9tICcuL3BhZ2luYXRpb24nO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdsdXgtcGFnaW5hdGlvbicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3BhZ2luYXRpb24uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3BhZ2luYXRpb24uY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgUGFnaW5hdGlvbkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgbGl0ZXJhbHMgPSB7XHJcbiAgICBlbjoge1xyXG4gICAgICBmaXJzdDogJ0ZpcnN0JyxcclxuICAgICAgcHJldmlvdXM6ICdQcmV2aW91cycsXHJcbiAgICAgIG5leHQ6ICdOZXh0JyxcclxuICAgICAgbGFzdDogJ0xhc3QnXHJcbiAgICB9LFxyXG4gICAgZXM6IHtcclxuICAgICAgZmlyc3Q6ICdQcmltZXJvJyxcclxuICAgICAgcHJldmlvdXM6ICdBbnRlcmlvcicsXHJcbiAgICAgIG5leHQ6ICdTaWd1aWVudGUnLFxyXG4gICAgICBsYXN0OiAnw5psdGltbydcclxuICAgIH1cclxuICB9O1xyXG5cclxuICBwdWJsaWMgZmlyc3Q6IHN0cmluZztcclxuICBwdWJsaWMgcHJldmlvdXM6IHN0cmluZztcclxuICBwdWJsaWMgbmV4dDogc3RyaW5nO1xyXG4gIHB1YmxpYyBsYXN0OiBzdHJpbmc7XHJcblxyXG4gIHB1YmxpYyBzaG93UGFnaW5hdGlvbiA9IGZhbHNlO1xyXG4gIHB1YmxpYyBoaWRlUHJldmlvdXMgPSBmYWxzZTtcclxuICBwdWJsaWMgbGFzdFBhZ2UgPSBmYWxzZTtcclxuICBwdWJsaWMgdG90YWxQYWdlcyA9IDA7XHJcbiAgcHVibGljIGRpc3BsYXlOZXh0RWxsaXBzaXMgPSBmYWxzZTtcclxuICBwdWJsaWMgZGlzcGxheVByZXZpb3VzRWxsaXBzaXMgPSBmYWxzZTtcclxuXHJcbiAgcHVibGljIHBhZ2VzOiBudW1iZXJbXSA9IFtdO1xyXG5cclxuICBAT3V0cHV0KCkgZ29Ub1BhZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPG51bWJlcj4oKTtcclxuICBAT3V0cHV0KCkgcGFnZVNpemVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPG51bWJlcj4oKTtcclxuXHJcbiAgLyoqIEN1cnJlbnQgcGFnZSwgdG90YWwgaXRlbXMgYW5kIGl0ZW1zIHRvIHNob3cgcGVyIHBhZ2UgKi9cclxuICBwcml2YXRlIHBhZ2luYXRpb25JbmZvVmFsdWU6IFBhZ2luYXRpb25JbmZvO1xyXG5cclxuICBwcml2YXRlIF9sYW5nOiBzdHJpbmc7XHJcbiAgQElucHV0KClcclxuICBzZXQgbGFuZyhsOiBzdHJpbmcpIHtcclxuICAgIGlmIChsID09PSB0aGlzLl9sYW5nKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIGlmIChPYmplY3Qua2V5cyh0aGlzLmxpdGVyYWxzKS5pbmNsdWRlcyhsKSkge1xyXG4gICAgICB0aGlzLl9sYW5nID0gbDtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuX2xhbmcgPSAnZW4nO1xyXG4gICAgfVxyXG4gICAgdGhpcy5sb2FkTGFuZ3VhZ2UoKTtcclxuICB9XHJcbiAgZ2V0IGxhbmcoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLl9sYW5nO1xyXG4gIH1cclxuXHJcbiAgQElucHV0KClcclxuICBzZXQgcGFnaW5hdGlvbkluZm8odmFsdWU6IFBhZ2luYXRpb25JbmZvKSB7XHJcbiAgICB0aGlzLnBhZ2luYXRpb25JbmZvVmFsdWUgPSB2YWx1ZTtcclxuICAgIHRoaXMuc3luY1N0YXRlKCk7XHJcbiAgfVxyXG4gIGdldCBwYWdpbmF0aW9uSW5mbygpOiBQYWdpbmF0aW9uSW5mbyB7XHJcbiAgICByZXR1cm4gdGhpcy5wYWdpbmF0aW9uSW5mb1ZhbHVlO1xyXG4gIH1cclxuXHJcbiAgY29uc3RydWN0b3IoKSB7XHJcbiAgICB0aGlzLmxhbmcgPSBsYW5ndWFnZURldGVjdG9yKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuY2FsY3VsYXRlUGFnZXMoKTtcclxuICB9XHJcblxyXG4gIHBhZ2VTaXplQ2hhbmdlZChwYWdlU2l6ZTogbnVtYmVyKTogdm9pZCB7XHJcbiAgICB0aGlzLnBhZ2luYXRpb25JbmZvLnBhZ2VTaXplID0gcGFnZVNpemU7XHJcbiAgICB0aGlzLnN5bmNTdGF0ZSgpO1xyXG4gICAgdGhpcy5wYWdlU2l6ZUNoYW5nZS5lbWl0KHBhZ2VTaXplKTtcclxuICB9XHJcblxyXG4gIG9uUGFnZShuOiBudW1iZXIpOiB2b2lkIHtcclxuICAgIHRoaXMuZ29Ub1BhZ2UuZW1pdChuKTtcclxuICB9XHJcblxyXG4gIG9uRmlyc3QoKTogdm9pZCB7XHJcbiAgICB0aGlzLmdvVG9QYWdlLmVtaXQoMCk7XHJcbiAgfVxyXG5cclxuICBvbkxhc3QoKTogdm9pZCB7XHJcbiAgICB0aGlzLmdvVG9QYWdlLmVtaXQodGhpcy50b3RhbFBhZ2VzIC0gMSk7XHJcbiAgfVxyXG4gIG9uTmV4dCgpOiB2b2lkIHtcclxuICAgIGNvbnN0IHBhZ2UgPSAodGhpcy5wYWdpbmF0aW9uSW5mby5wYWdlIHx8IDApICsgMTtcclxuICAgIHRoaXMuZ29Ub1BhZ2UuZW1pdChwYWdlKTtcclxuICB9XHJcbiAgb25QcmV2aW91cygpOiB2b2lkIHtcclxuICAgIGNvbnN0IHBhZ2UgPSAodGhpcy5wYWdpbmF0aW9uSW5mby5wYWdlIHx8IDApIC0gMTtcclxuICAgIHRoaXMuZ29Ub1BhZ2UuZW1pdChwYWdlKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgc3luY1N0YXRlKCk6IHZvaWQge1xyXG4gICAgdGhpcy5wYWdlcyA9IHRoaXMuY2FsY3VsYXRlUGFnZXMoKTtcclxuXHJcbiAgICB0aGlzLnNob3dQYWdpbmF0aW9uID1cclxuICAgICAgdGhpcy5wYWdpbmF0aW9uSW5mby50b3RhbCA+IHRoaXMucGFnaW5hdGlvbkluZm8ucGFnZVNpemU7XHJcbiAgICB0aGlzLmhpZGVQcmV2aW91cyA9IHRoaXMucGFnaW5hdGlvbkluZm8ucGFnZSA9PT0gMDtcclxuICAgIHRoaXMubGFzdFBhZ2UgPVxyXG4gICAgICB0aGlzLnBhZ2luYXRpb25JbmZvLnBhZ2VTaXplICogKHRoaXMucGFnaW5hdGlvbkluZm8ucGFnZSArIDEpID49XHJcbiAgICAgIHRoaXMucGFnaW5hdGlvbkluZm8udG90YWw7XHJcbiAgICB0aGlzLnRvdGFsUGFnZXMgPVxyXG4gICAgICBNYXRoLmNlaWwodGhpcy5wYWdpbmF0aW9uSW5mby50b3RhbCAvIHRoaXMucGFnaW5hdGlvbkluZm8ucGFnZVNpemUpIHx8IDA7XHJcbiAgICB0aGlzLmRpc3BsYXlOZXh0RWxsaXBzaXMgPSAhdGhpcy5wYWdlcy5pbmNsdWRlcyh0aGlzLnRvdGFsUGFnZXMgLSAxKTtcclxuICAgIHRoaXMuZGlzcGxheVByZXZpb3VzRWxsaXBzaXMgPSAhdGhpcy5wYWdlcy5pbmNsdWRlcygwKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgY2FsY3VsYXRlUGFnZXMoKTogbnVtYmVyW10ge1xyXG4gICAgY29uc3QgdG90YWxQYWdlcyA9XHJcbiAgICAgIE1hdGguY2VpbCh0aGlzLnBhZ2luYXRpb25JbmZvLnRvdGFsIC8gdGhpcy5wYWdpbmF0aW9uSW5mby5wYWdlU2l6ZSkgLSAxOyAvLyAwLWluZGV4XHJcbiAgICBjb25zdCBwID0gdGhpcy5wYWdpbmF0aW9uSW5mby5wYWdlIHx8IDA7XHJcbiAgICBjb25zdCBwYWdlc1RvU2hvdyA9IHRoaXMucGFnaW5hdGlvbkluZm8ucGFnZXNUb1Nob3c7XHJcbiAgICBjb25zdCBwYWdlczogbnVtYmVyW10gPSBbXTtcclxuICAgIHBhZ2VzLnB1c2gocCk7XHJcbiAgICBjb25zdCB0aW1lcyA9IHBhZ2VzVG9TaG93IC0gMTtcclxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGltZXM7IGkrKykge1xyXG4gICAgICBpZiAocGFnZXMubGVuZ3RoIDwgcGFnZXNUb1Nob3cpIHtcclxuICAgICAgICBpZiAoTWF0aC5taW4oLi4ucGFnZXMpID4gMCkge1xyXG4gICAgICAgICAgcGFnZXMudW5zaGlmdChNYXRoLm1pbiguLi5wYWdlcykgLSAxKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHBhZ2VzLmxlbmd0aCA8IHBhZ2VzVG9TaG93KSB7XHJcbiAgICAgICAgaWYgKE1hdGgubWF4KC4uLnBhZ2VzKSA8IHRvdGFsUGFnZXMpIHtcclxuICAgICAgICAgIHBhZ2VzLnB1c2goTWF0aC5tYXgoLi4ucGFnZXMpICsgMSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBwYWdlcy5zb3J0KChhLCBiKSA9PiBhIC0gYik7XHJcbiAgICByZXR1cm4gcGFnZXM7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGxvYWRMYW5ndWFnZSgpOiB2b2lkIHtcclxuICAgIGNvbnN0IGwgPSB0aGlzLmxpdGVyYWxzW3RoaXMubGFuZ107XHJcbiAgICB0aGlzLmZpcnN0ID0gbC5maXJzdDtcclxuICAgIHRoaXMucHJldmlvdXMgPSBsLnByZXZpb3VzO1xyXG4gICAgdGhpcy5uZXh0ID0gbC5uZXh0O1xyXG4gICAgdGhpcy5sYXN0ID0gbC5sYXN0O1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwibHV4LXBhZ2luYXRpb25cIiAqbmdJZj1cInNob3dQYWdpbmF0aW9uXCI+XG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCIhaGlkZVByZXZpb3VzXCI+XG4gICAgPGFcbiAgICAgIGx1eFRvb2x0aXBcbiAgICAgIFtjb250ZW50XT1cImZpcnN0XCJcbiAgICAgIHBsYWNlbWVudD1cInRvcFwiXG4gICAgICBkZWxheT1cIjUwMFwiXG4gICAgICAoY2xpY2spPVwib25GaXJzdCgpXCJcbiAgICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICAgZW5hYmxlZEZpcnN0TGFzdDogIWhpZGVQcmV2aW91c1xuICAgICAgfVwiXG4gICAgICBjbGFzcz1cImJ1dHRvbi1wYWdpbmF0aW9uIGljb24gYXJyb3ctbGVmdC1lbmRcIlxuICAgID48L2E+XG4gICAgPGFcbiAgICAgIGx1eFRvb2x0aXBcbiAgICAgIFtjb250ZW50XT1cInByZXZpb3VzXCJcbiAgICAgIHBsYWNlbWVudD1cInRvcFwiXG4gICAgICBkZWxheT1cIjUwMFwiXG4gICAgICAoY2xpY2spPVwib25QcmV2aW91cygpXCJcbiAgICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICAgZW5hYmxlZEZpcnN0TGFzdDogIWhpZGVQcmV2aW91c1xuICAgICAgfVwiXG4gICAgICBjbGFzcz1cImJ1dHRvbi1wYWdpbmF0aW9uIGljb24gYXJyb3ctbGVmdFwiXG4gICAgPjwvYT5cbiAgPC9uZy1jb250YWluZXI+XG5cbiAgPHNwYW4gY2xhc3M9XCJlbGxpcHNpc1wiICpuZ0lmPVwiZGlzcGxheVByZXZpb3VzRWxsaXBzaXNcIj4uLi48L3NwYW4+XG5cbiAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgcGFnZU51bSBvZiBwYWdlc1wiPlxuICAgIDxhXG4gICAgICBwbGFjZW1lbnQ9XCJ0b3BcIlxuICAgICAgZGVsYXk9XCI1MDBcIlxuICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICBkaXNhYmxlZDogcGFnZU51bSA9PT0gcGFnaW5hdGlvbkluZm8ucGFnZSxcbiAgICAgICAgZW5hYmxlZDogcGFnZU51bSAhPT0gcGFnaW5hdGlvbkluZm8ucGFnZVxuICAgICAgfVwiXG4gICAgICBjbGFzcz1cImJ1dHRvbi1wYWdpbmF0aW9uXCJcbiAgICAgIChjbGljayk9XCJvblBhZ2UocGFnZU51bSlcIlxuICAgICAgPnt7IHBhZ2VOdW0gKyAxIH19PC9hXG4gICAgPlxuICA8L25nLWNvbnRhaW5lcj5cblxuICA8c3BhbiBjbGFzcz1cImVsbGlwc2lzXCIgKm5nSWY9XCJkaXNwbGF5TmV4dEVsbGlwc2lzXCI+Li4uPC9zcGFuPlxuXG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCIhbGFzdFBhZ2VcIj5cbiAgICA8YVxuICAgICAgbHV4VG9vbHRpcFxuICAgICAgW2NvbnRlbnRdPVwibmV4dFwiXG4gICAgICBwbGFjZW1lbnQ9XCJ0b3BcIlxuICAgICAgZGVsYXk9XCI1MDBcIlxuICAgICAgKGNsaWNrKT1cIm9uTmV4dCgpXCJcbiAgICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICAgZW5hYmxlZEZpcnN0TGFzdDogIWxhc3RQYWdlXG4gICAgICB9XCJcbiAgICAgIGNsYXNzPVwiYnV0dG9uLXBhZ2luYXRpb24gaWNvbiBhcnJvdy1yaWdodFwiXG4gICAgPjwvYT5cbiAgICA8YVxuICAgICAgbHV4VG9vbHRpcFxuICAgICAgW2NvbnRlbnRdPVwibGFzdFwiXG4gICAgICBwbGFjZW1lbnQ9XCJ0b3BcIlxuICAgICAgZGVsYXk9XCI1MDBcIlxuICAgICAgKGNsaWNrKT1cIm9uTGFzdCgpXCJcbiAgICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICAgZW5hYmxlZEZpcnN0TGFzdDogIWxhc3RQYWdlXG4gICAgICB9XCJcbiAgICAgIGNsYXNzPVwiYnV0dG9uLXBhZ2luYXRpb24gaWNvbiBhcnJvdy1yaWdodC1lbmRcIlxuICAgID48L2E+XG4gIDwvbmctY29udGFpbmVyPlxuPC9kaXY+XG4iXX0=
137
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9sdXgvc3JjL2xpYi9wYWdpbmF0aW9uL3BhZ2luYXRpb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbHV4L3NyYy9saWIvcGFnaW5hdGlvbi9wYWdpbmF0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDL0UsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sU0FBUyxDQUFDOzs7O0FBUTNDLE1BQU0sT0FBTyxtQkFBbUI7SUFxQzlCLElBQ0ksSUFBSSxDQUFDLENBQVM7UUFDaEIsSUFBSSxDQUFDLEtBQUssSUFBSSxDQUFDLEtBQUssRUFBRTtZQUNwQixPQUFPO1NBQ1I7UUFDRCxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsRUFBRTtZQUMxQyxJQUFJLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQztTQUNoQjthQUFNO1lBQ0wsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7U0FDbkI7UUFDRCxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDdEIsQ0FBQztJQUNELElBQUksSUFBSTtRQUNOLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztJQUNwQixDQUFDO0lBRUQsSUFDSSxjQUFjLENBQUMsS0FBcUI7UUFDdEMsSUFBSSxDQUFDLG1CQUFtQixHQUFHLEtBQUssQ0FBQztRQUNqQyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDbkIsQ0FBQztJQUNELElBQUksY0FBYztRQUNoQixPQUFPLElBQUksQ0FBQyxtQkFBbUIsQ0FBQztJQUNsQyxDQUFDO0lB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RTtvQkFDbkMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7aUJBQ3BDO2FBQ0Y7U0FDRjtRQUNELEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDNUIsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBRU8sWUFBWTtRQUNsQixNQUFNLENBQUMsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNuQyxJQUFJLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQyxLQUFLLENBQUM7UUFDckIsSUFBSSxDQUFDLFFBQVEsR0FBRyxDQUFDLENBQUMsUUFBUSxDQUFDO1FBQzNCLElBQUksQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQztRQUNuQixJQUFJLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDckIsQ0FBQzs7Z0hBN0lVLG1CQUFtQjtvR0FBbkIsbUJBQW1CLHVMQ1RoQywwdERBcUVBOzJGRDVEYSxtQkFBbUI7a0JBTC9CLFNBQVM7K0JBQ0UsZ0JBQWdCOzBFQWtDaEIsUUFBUTtzQkFBakIsTUFBTTtnQkFDRyxjQUFjO3NCQUF2QixNQUFNO2dCQU9ILElBQUk7c0JBRFAsS0FBSztnQkFpQkYsY0FBYztzQkFEakIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE91dHB1dCwgRXZlbnRFbWl0dGVyLCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgbGFuZ3VhZ2VEZXRlY3RvciB9IGZyb20gJy4uL2xhbmcnO1xyXG5pbXBvcnQgeyBQYWdpbmF0aW9uSW5mbyB9IGZyb20gJy4vcGFnaW5hdGlvbic7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2x1eC1wYWdpbmF0aW9uJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vcGFnaW5hdGlvbi5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vcGFnaW5hdGlvbi5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBQYWdpbmF0aW9uQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICBsaXRlcmFscyA9IHtcclxuICAgIGVuOiB7XHJcbiAgICAgIGZpcnN0OiAnRmlyc3QnLFxyXG4gICAgICBwcmV2aW91czogJ1ByZXZpb3VzJyxcclxuICAgICAgbmV4dDogJ05leHQnLFxyXG4gICAgICBsYXN0OiAnTGFzdCdcclxuICAgIH0sXHJcbiAgICBlczoge1xyXG4gICAgICBmaXJzdDogJ1ByaW1lcm8nLFxyXG4gICAgICBwcmV2aW91czogJ0FudGVyaW9yJyxcclxuICAgICAgbmV4dDogJ1NpZ3VpZW50ZScsXHJcbiAgICAgIGxhc3Q6ICfDmmx0aW1vJ1xyXG4gICAgfVxyXG4gIH07XHJcblxyXG4gIHB1YmxpYyBmaXJzdDogc3RyaW5nO1xyXG4gIHB1YmxpYyBwcmV2aW91czogc3RyaW5nO1xyXG4gIHB1YmxpYyBuZXh0OiBzdHJpbmc7XHJcbiAgcHVibGljIGxhc3Q6IHN0cmluZztcclxuXHJcbiAgcHVibGljIHNob3dQYWdpbmF0aW9uID0gZmFsc2U7XHJcbiAgcHVibGljIGhpZGVQcmV2aW91cyA9IGZhbHNlO1xyXG4gIHB1YmxpYyBsYXN0UGFnZSA9IGZhbHNlO1xyXG4gIHB1YmxpYyB0b3RhbFBhZ2VzID0gMDtcclxuICBwdWJsaWMgZGlzcGxheU5leHRFbGxpcHNpcyA9IGZhbHNlO1xyXG4gIHB1YmxpYyBkaXNwbGF5UHJldmlvdXNFbGxpcHNpcyA9IGZhbHNlO1xyXG5cclxuICBwdWJsaWMgcGFnZXM6IG51bWJlcltdID0gW107XHJcblxyXG4gIEBPdXRwdXQoKSBnb1RvUGFnZSA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpO1xyXG4gIEBPdXRwdXQoKSBwYWdlU2l6ZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpO1xyXG5cclxuICAvKiogQ3VycmVudCBwYWdlLCB0b3RhbCBpdGVtcyBhbmQgaXRlbXMgdG8gc2hvdyBwZXIgcGFnZSAqL1xyXG4gIHByaXZhdGUgcGFnaW5hdGlvbkluZm9WYWx1ZTogUGFnaW5hdGlvbkluZm87XHJcblxyXG4gIHByaXZhdGUgX2xhbmc6IHN0cmluZztcclxuICBASW5wdXQoKVxyXG4gIHNldCBsYW5nKGw6IHN0cmluZykge1xyXG4gICAgaWYgKGwgPT09IHRoaXMuX2xhbmcpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgaWYgKE9iamVjdC5rZXlzKHRoaXMubGl0ZXJhbHMpLmluY2x1ZGVzKGwpKSB7XHJcbiAgICAgIHRoaXMuX2xhbmcgPSBsO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5fbGFuZyA9ICdlbic7XHJcbiAgICB9XHJcbiAgICB0aGlzLmxvYWRMYW5ndWFnZSgpO1xyXG4gIH1cclxuICBnZXQgbGFuZygpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMuX2xhbmc7XHJcbiAgfVxyXG5cclxuICBASW5wdXQoKVxyXG4gIHNldCBwYWdpbmF0aW9uSW5mbyh2YWx1ZTogUGFnaW5hdGlvbkluZm8pIHtcclxuICAgIHRoaXMucGFnaW5hdGlvbkluZm9WYWx1ZSA9IHZhbHVlO1xyXG4gICAgdGhpcy5zeW5jU3RhdGUoKTtcclxuICB9XHJcbiAgZ2V0IHBhZ2luYXRpb25JbmZvKCk6IFBhZ2luYXRpb25JbmZvIHtcclxuICAgIHJldHVybiB0aGlzLnBhZ2luYXRpb25JbmZvVmFsdWU7XHJcbiAgfVxyXG5cclxuICBjb25zdHJ1Y3RvcigpIHtcclxuICAgIHRoaXMubGFuZyA9IGxhbmd1YWdlRGV0ZWN0b3IoKTtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5jYWxjdWxhdGVQYWdlcygpO1xyXG4gIH1cclxuXHJcbiAgcGFnZVNpemVDaGFuZ2VkKHBhZ2VTaXplOiBudW1iZXIpOiB2b2lkIHtcclxuICAgIHRoaXMucGFnaW5hdGlvbkluZm8ucGFnZVNpemUgPSBwYWdlU2l6ZTtcclxuICAgIHRoaXMuc3luY1N0YXRlKCk7XHJcbiAgICB0aGlzLnBhZ2VTaXplQ2hhbmdlLmVtaXQocGFnZVNpemUpO1xyXG4gIH1cclxuXHJcbiAgb25QYWdlKG46IG51bWJlcik6IHZvaWQge1xyXG4gICAgdGhpcy5nb1RvUGFnZS5lbWl0KG4pO1xyXG4gIH1cclxuXHJcbiAgb25GaXJzdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuZ29Ub1BhZ2UuZW1pdCgwKTtcclxuICB9XHJcblxyXG4gIG9uTGFzdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuZ29Ub1BhZ2UuZW1pdCh0aGlzLnRvdGFsUGFnZXMgLSAxKTtcclxuICB9XHJcbiAgb25OZXh0KCk6IHZvaWQge1xyXG4gICAgY29uc3QgcGFnZSA9ICh0aGlzLnBhZ2luYXRpb25JbmZvLnBhZ2UgfHwgMCkgKyAxO1xyXG4gICAgdGhpcy5nb1RvUGFnZS5lbWl0KHBhZ2UpO1xyXG4gIH1cclxuICBvblByZXZpb3VzKCk6IHZvaWQge1xyXG4gICAgY29uc3QgcGFnZSA9ICh0aGlzLnBhZ2luYXRpb25JbmZvLnBhZ2UgfHwgMCkgLSAxO1xyXG4gICAgdGhpcy5nb1RvUGFnZS5lbWl0KHBhZ2UpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzeW5jU3RhdGUoKTogdm9pZCB7XHJcbiAgICB0aGlzLnBhZ2VzID0gdGhpcy5jYWxjdWxhdGVQYWdlcygpO1xyXG5cclxuICAgIHRoaXMuc2hvd1BhZ2luYXRpb24gPVxyXG4gICAgICB0aGlzLnBhZ2luYXRpb25JbmZvLnRvdGFsID4gdGhpcy5wYWdpbmF0aW9uSW5mby5wYWdlU2l6ZTtcclxuICAgIHRoaXMuaGlkZVByZXZpb3VzID0gdGhpcy5wYWdpbmF0aW9uSW5mby5wYWdlID09PSAwO1xyXG4gICAgdGhpcy5sYXN0UGFnZSA9XHJcbiAgICAgIHRoaXMucGFnaW5hdGlvbkluZm8ucGFnZVNpemUgKiAodGhpcy5wYWdpbmF0aW9uSW5mby5wYWdlICsgMSkgPj1cclxuICAgICAgdGhpcy5wYWdpbmF0aW9uSW5mby50b3RhbDtcclxuICAgIHRoaXMudG90YWxQYWdlcyA9XHJcbiAgICAgIE1hdGguY2VpbCh0aGlzLnBhZ2luYXRpb25JbmZvLnRvdGFsIC8gdGhpcy5wYWdpbmF0aW9uSW5mby5wYWdlU2l6ZSkgfHwgMDtcclxuICAgIHRoaXMuZGlzcGxheU5leHRFbGxpcHNpcyA9ICF0aGlzLnBhZ2VzLmluY2x1ZGVzKHRoaXMudG90YWxQYWdlcyAtIDEpO1xyXG4gICAgdGhpcy5kaXNwbGF5UHJldmlvdXNFbGxpcHNpcyA9ICF0aGlzLnBhZ2VzLmluY2x1ZGVzKDApO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBjYWxjdWxhdGVQYWdlcygpOiBudW1iZXJbXSB7XHJcbiAgICBjb25zdCB0b3RhbFBhZ2VzID1cclxuICAgICAgTWF0aC5jZWlsKHRoaXMucGFnaW5hdGlvbkluZm8udG90YWwgLyB0aGlzLnBhZ2luYXRpb25JbmZvLnBhZ2VTaXplKSAtIDE7IC8vIDAtaW5kZXhcclxuICAgIGNvbnN0IHAgPSB0aGlzLnBhZ2luYXRpb25JbmZvLnBhZ2UgfHwgMDtcclxuICAgIGNvbnN0IHBhZ2VzVG9TaG93ID0gdGhpcy5wYWdpbmF0aW9uSW5mby5wYWdlc1RvU2hvdztcclxuICAgIGNvbnN0IHBhZ2VzOiBudW1iZXJbXSA9IFtdO1xyXG4gICAgcGFnZXMucHVzaChwKTtcclxuICAgIGNvbnN0IHRpbWVzID0gcGFnZXNUb1Nob3cgLSAxO1xyXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aW1lczsgaSsrKSB7XHJcbiAgICAgIGlmIChwYWdlcy5sZW5ndGggPCBwYWdlc1RvU2hvdykge1xyXG4gICAgICAgIGlmIChNYXRoLm1pbiguLi5wYWdlcykgPiAwKSB7XHJcbiAgICAgICAgICBwYWdlcy51bnNoaWZ0KE1hdGgubWluKC4uLnBhZ2VzKSAtIDEpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBpZiAocGFnZXMubGVuZ3RoIDwgcGFnZXNUb1Nob3cpIHtcclxuICAgICAgICBpZiAoTWF0aC5tYXgoLi4ucGFnZXMpIDwgdG90YWxQYWdlcykge1xyXG4gICAgICAgICAgcGFnZXMucHVzaChNYXRoLm1heCguLi5wYWdlcykgKyAxKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHBhZ2VzLnNvcnQoKGEsIGIpID0+IGEgLSBiKTtcclxuICAgIHJldHVybiBwYWdlcztcclxuICB9XHJcblxyXG4gIHByaXZhdGUgbG9hZExhbmd1YWdlKCk6IHZvaWQge1xyXG4gICAgY29uc3QgbCA9IHRoaXMubGl0ZXJhbHNbdGhpcy5sYW5nXTtcclxuICAgIHRoaXMuZmlyc3QgPSBsLmZpcnN0O1xyXG4gICAgdGhpcy5wcmV2aW91cyA9IGwucHJldmlvdXM7XHJcbiAgICB0aGlzLm5leHQgPSBsLm5leHQ7XHJcbiAgICB0aGlzLmxhc3QgPSBsLmxhc3Q7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJsdXgtcGFnaW5hdGlvblwiICpuZ0lmPVwic2hvd1BhZ2luYXRpb25cIj5cbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFoaWRlUHJldmlvdXNcIj5cbiAgICA8YVxuICAgICAgbHV4VG9vbHRpcFxuICAgICAgW2NvbnRlbnRdPVwiZmlyc3RcIlxuICAgICAgcGxhY2VtZW50PVwidG9wXCJcbiAgICAgIGRlbGF5PVwiNTAwXCJcbiAgICAgIChjbGljayk9XCJvbkZpcnN0KClcIlxuICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICBlbmFibGVkRmlyc3RMYXN0OiAhaGlkZVByZXZpb3VzXG4gICAgICB9XCJcbiAgICAgIGNsYXNzPVwiYnV0dG9uLXBhZ2luYXRpb24gaWNvbiBhcnJvdy1sZWZ0LWVuZFwiXG4gICAgPjwvYT5cbiAgICA8YVxuICAgICAgbHV4VG9vbHRpcFxuICAgICAgW2NvbnRlbnRdPVwicHJldmlvdXNcIlxuICAgICAgcGxhY2VtZW50PVwidG9wXCJcbiAgICAgIGRlbGF5PVwiNTAwXCJcbiAgICAgIChjbGljayk9XCJvblByZXZpb3VzKClcIlxuICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICBlbmFibGVkRmlyc3RMYXN0OiAhaGlkZVByZXZpb3VzXG4gICAgICB9XCJcbiAgICAgIGNsYXNzPVwiYnV0dG9uLXBhZ2luYXRpb24gaWNvbiBhcnJvdy1sZWZ0XCJcbiAgICA+PC9hPlxuICA8L25nLWNvbnRhaW5lcj5cblxuICA8c3BhbiBjbGFzcz1cImVsbGlwc2lzXCIgKm5nSWY9XCJkaXNwbGF5UHJldmlvdXNFbGxpcHNpc1wiPi4uLjwvc3Bhbj5cblxuICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBwYWdlTnVtIG9mIHBhZ2VzXCI+XG4gICAgPGFcbiAgICAgIHBsYWNlbWVudD1cInRvcFwiXG4gICAgICBkZWxheT1cIjUwMFwiXG4gICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgIGRpc2FibGVkOiBwYWdlTnVtID09PSBwYWdpbmF0aW9uSW5mby5wYWdlLFxuICAgICAgICBlbmFibGVkOiBwYWdlTnVtICE9PSBwYWdpbmF0aW9uSW5mby5wYWdlXG4gICAgICB9XCJcbiAgICAgIGNsYXNzPVwiYnV0dG9uLXBhZ2luYXRpb25cIlxuICAgICAgKGNsaWNrKT1cIm9uUGFnZShwYWdlTnVtKVwiXG4gICAgICA+e3sgcGFnZU51bSArIDEgfX08L2FcbiAgICA+XG4gIDwvbmctY29udGFpbmVyPlxuXG4gIDxzcGFuIGNsYXNzPVwiZWxsaXBzaXNcIiAqbmdJZj1cImRpc3BsYXlOZXh0RWxsaXBzaXNcIj4uLi48L3NwYW4+XG5cbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFsYXN0UGFnZVwiPlxuICAgIDxhXG4gICAgICBsdXhUb29sdGlwXG4gICAgICBbY29udGVudF09XCJuZXh0XCJcbiAgICAgIHBsYWNlbWVudD1cInRvcFwiXG4gICAgICBkZWxheT1cIjUwMFwiXG4gICAgICAoY2xpY2spPVwib25OZXh0KClcIlxuICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICBlbmFibGVkRmlyc3RMYXN0OiAhbGFzdFBhZ2VcbiAgICAgIH1cIlxuICAgICAgY2xhc3M9XCJidXR0b24tcGFnaW5hdGlvbiBpY29uIGFycm93LXJpZ2h0XCJcbiAgICA+PC9hPlxuICAgIDxhXG4gICAgICBsdXhUb29sdGlwXG4gICAgICBbY29udGVudF09XCJsYXN0XCJcbiAgICAgIHBsYWNlbWVudD1cInRvcFwiXG4gICAgICBkZWxheT1cIjUwMFwiXG4gICAgICAoY2xpY2spPVwib25MYXN0KClcIlxuICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICBlbmFibGVkRmlyc3RMYXN0OiAhbGFzdFBhZ2VcbiAgICAgIH1cIlxuICAgICAgY2xhc3M9XCJidXR0b24tcGFnaW5hdGlvbiBpY29uIGFycm93LXJpZ2h0LWVuZFwiXG4gICAgPjwvYT5cbiAgPC9uZy1jb250YWluZXI+XG48L2Rpdj5cbiJdfQ==