zek 14.2.89 → 14.2.91

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 (48) hide show
  1. package/esm2020/lib/components/base.component.mjs +2 -2
  2. package/esm2020/lib/components/core-ui.component.mjs +4 -4
  3. package/esm2020/lib/components/core.component.mjs +1 -1
  4. package/esm2020/lib/components/edit-base.component.mjs +1 -1
  5. package/esm2020/lib/components/list-base.component.mjs +1 -1
  6. package/esm2020/lib/models/pager.model.mjs +1 -8
  7. package/esm2020/lib/modules/alert/alert/alert.mjs +2 -2
  8. package/esm2020/lib/modules/bb/bb-modal-base.component.mjs +2 -2
  9. package/esm2020/lib/modules/bb/bb-modal-toolbar.mjs +2 -2
  10. package/esm2020/lib/modules/bb/bb.component.mjs +5 -5
  11. package/esm2020/lib/modules/edit-toolbar/edit-toolbar.component.mjs +4 -4
  12. package/esm2020/lib/modules/file-viewer/file-viewer.mjs +2 -2
  13. package/esm2020/lib/modules/file-viewer/module.mjs +5 -5
  14. package/esm2020/lib/modules/grid-toolbar/grid-toolbar/grid-toolbar.component.mjs +11 -11
  15. package/esm2020/lib/modules/list-toolbar/list-toolbar.component.mjs +7 -7
  16. package/esm2020/lib/modules/loading/loading.component.mjs +5 -5
  17. package/esm2020/lib/modules/loading/loading.module.mjs +9 -9
  18. package/esm2020/lib/modules/modal/filter-modal/filter-modal.component.mjs +6 -6
  19. package/esm2020/lib/modules/modal/modal/modal.component.mjs +35 -35
  20. package/esm2020/lib/modules/modal/modal.module.mjs +40 -40
  21. package/esm2020/lib/modules/modal/sum-modal/sum-modal.component.mjs +5 -5
  22. package/esm2020/lib/modules/page-title/page-title.component.mjs +2 -2
  23. package/esm2020/lib/modules/pager/pager/pager.component.mjs +6 -6
  24. package/esm2020/lib/modules/pager/pager.module.mjs +10 -10
  25. package/esm2020/lib/modules/password/password.component.mjs +2 -2
  26. package/esm2020/lib/modules/progress/progress.mjs +5 -5
  27. package/esm2020/lib/modules/radio/radio-button.component.mjs +2 -2
  28. package/esm2020/lib/modules/readonly/readonly.directive.mjs +2 -2
  29. package/esm2020/lib/modules/select/select.mjs +2 -2
  30. package/esm2020/lib/utils/convert.mjs +4 -1
  31. package/fesm2015/zek.mjs +149 -153
  32. package/fesm2015/zek.mjs.map +1 -1
  33. package/fesm2020/zek.mjs +149 -153
  34. package/fesm2020/zek.mjs.map +1 -1
  35. package/lib/components/edit-base.component.d.ts +3 -3
  36. package/lib/components/list-base.component.d.ts +4 -4
  37. package/lib/modules/file-viewer/file-viewer.d.ts +2 -2
  38. package/lib/modules/file-viewer/module.d.ts +1 -1
  39. package/lib/modules/loading/loading.component.d.ts +3 -3
  40. package/lib/modules/loading/loading.module.d.ts +4 -4
  41. package/lib/modules/modal/filter-modal/filter-modal.component.d.ts +4 -4
  42. package/lib/modules/modal/modal/modal.component.d.ts +18 -18
  43. package/lib/modules/modal/modal.module.d.ts +4 -4
  44. package/lib/modules/modal/sum-modal/sum-modal.component.d.ts +3 -3
  45. package/lib/modules/pager/pager/pager.component.d.ts +3 -3
  46. package/lib/modules/pager/pager.module.d.ts +4 -4
  47. package/lib/utils/convert.d.ts +1 -0
  48. package/package.json +1 -1
@@ -1,9 +1,9 @@
1
1
  import { Component, Output, EventEmitter } from '@angular/core';
2
- import { ModalComponent } from '../modal/modal.component';
2
+ import { ZekModal } from '../modal/modal.component';
3
3
  import * as i0 from "@angular/core";
4
4
  import * as i1 from "@angular/common";
5
5
  import * as i2 from "@ngx-translate/core";
6
- export class FilterModalComponent extends ModalComponent {
6
+ export class ZekFilterModal extends ZekModal {
7
7
  constructor() {
8
8
  super(...arguments);
9
9
  this.onReset = new EventEmitter();
@@ -15,12 +15,12 @@ export class FilterModalComponent extends ModalComponent {
15
15
  return document.getElementById('filter-modal');
16
16
  }
17
17
  }
18
- FilterModalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: FilterModalComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
19
- FilterModalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.0", type: FilterModalComponent, selector: "zek-filter-modal", outputs: { onReset: "onReset" }, usesInheritance: true, ngImport: i0, template: "<div (keydown.enter)=\"keyDown($event)\" class=\"modal fade\" data-bs-backdrop=\"static\" id=\"filter-modal\" tabindex=\"-1\" attr.aria-labelledby=\"modal-lable-{{elementId}}\" aria-hidden=\"true\">\r\n <div class=\"modal-dialog\" [class.modal-lg]=\"!xl\" [class.modal-xl]=\"xl\" >\r\n <div class=\"modal-content\">\r\n <div class=\"modal-header\">\r\n <h5 class=\"modal-title\" id=\"modal-lable-{{elementId}}\">{{ 'Action.Filter' | translate }}</h5>\r\n <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button>\r\n </div>\r\n <div class=\"modal-body\">\r\n <ng-content></ng-content>\r\n </div>\r\n <div class=\"modal-footer\">\r\n <button type=\"button\" class=\"btn btn-primary\" (click)=\"ok()\"><i class=\"fa-solid fa-filter\"></i> {{ 'Action.Filter' | translate }}</button>\r\n <button *ngIf=\"showCancel\" type=\"button\" class=\"btn btn-secondary\" id=\"modal-cancel-button-{{elementId}}\" data-bs-dismiss=\"modal\"><i class=\"fa-solid fa-ban\"></i> {{ 'Action.Cancel' | translate }}</button>\r\n <button type=\"button\" class=\"btn btn-secondary\" (click)=\"reset()\"><i class=\"fa-solid fa-xmark\"></i> {{ 'Action.Reset' | translate }}</button>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }] });
20
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: FilterModalComponent, decorators: [{
18
+ ZekFilterModal.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: ZekFilterModal, deps: null, target: i0.ɵɵFactoryTarget.Component });
19
+ ZekFilterModal.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.0", type: ZekFilterModal, selector: "zek-filter-modal", outputs: { onReset: "onReset" }, usesInheritance: true, ngImport: i0, template: "<div (keydown.enter)=\"keyDown($event)\" class=\"modal fade\" data-bs-backdrop=\"static\" id=\"filter-modal\" tabindex=\"-1\" attr.aria-labelledby=\"modal-lable-{{elementId}}\" aria-hidden=\"true\">\r\n <div class=\"modal-dialog\" [class.modal-lg]=\"!xl\" [class.modal-xl]=\"xl\" >\r\n <div class=\"modal-content\">\r\n <div class=\"modal-header\">\r\n <h5 class=\"modal-title\" id=\"modal-lable-{{elementId}}\">{{ 'Action.Filter' | translate }}</h5>\r\n <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button>\r\n </div>\r\n <div class=\"modal-body\">\r\n <ng-content></ng-content>\r\n </div>\r\n <div class=\"modal-footer\">\r\n <button type=\"button\" class=\"btn btn-primary\" (click)=\"ok()\"><i class=\"fa-solid fa-filter\"></i> {{ 'Action.Filter' | translate }}</button>\r\n <button *ngIf=\"showCancel\" type=\"button\" class=\"btn btn-secondary\" id=\"modal-cancel-button-{{elementId}}\" data-bs-dismiss=\"modal\"><i class=\"fa-solid fa-ban\"></i> {{ 'Action.Cancel' | translate }}</button>\r\n <button type=\"button\" class=\"btn btn-secondary\" (click)=\"reset()\"><i class=\"fa-solid fa-xmark\"></i> {{ 'Action.Reset' | translate }}</button>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }] });
20
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: ZekFilterModal, decorators: [{
21
21
  type: Component,
22
22
  args: [{ selector: 'zek-filter-modal', template: "<div (keydown.enter)=\"keyDown($event)\" class=\"modal fade\" data-bs-backdrop=\"static\" id=\"filter-modal\" tabindex=\"-1\" attr.aria-labelledby=\"modal-lable-{{elementId}}\" aria-hidden=\"true\">\r\n <div class=\"modal-dialog\" [class.modal-lg]=\"!xl\" [class.modal-xl]=\"xl\" >\r\n <div class=\"modal-content\">\r\n <div class=\"modal-header\">\r\n <h5 class=\"modal-title\" id=\"modal-lable-{{elementId}}\">{{ 'Action.Filter' | translate }}</h5>\r\n <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button>\r\n </div>\r\n <div class=\"modal-body\">\r\n <ng-content></ng-content>\r\n </div>\r\n <div class=\"modal-footer\">\r\n <button type=\"button\" class=\"btn btn-primary\" (click)=\"ok()\"><i class=\"fa-solid fa-filter\"></i> {{ 'Action.Filter' | translate }}</button>\r\n <button *ngIf=\"showCancel\" type=\"button\" class=\"btn btn-secondary\" id=\"modal-cancel-button-{{elementId}}\" data-bs-dismiss=\"modal\"><i class=\"fa-solid fa-ban\"></i> {{ 'Action.Cancel' | translate }}</button>\r\n <button type=\"button\" class=\"btn btn-secondary\" (click)=\"reset()\"><i class=\"fa-solid fa-xmark\"></i> {{ 'Action.Reset' | translate }}</button>\r\n </div>\r\n </div>\r\n </div>\r\n</div>" }]
23
23
  }], propDecorators: { onReset: [{
24
24
  type: Output
25
25
  }] } });
26
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLW1vZGFsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3play9zcmMvbGliL21vZHVsZXMvbW9kYWwvZmlsdGVyLW1vZGFsL2ZpbHRlci1tb2RhbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy96ZWsvc3JjL2xpYi9tb2R1bGVzL21vZGFsL2ZpbHRlci1tb2RhbC9maWx0ZXItbW9kYWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2hFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7OztBQU0xRCxNQUFNLE9BQU8sb0JBQXFCLFNBQVEsY0FBYztJQUp4RDs7UUFLYyxZQUFPLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztLQVMxQztJQVBHLEtBQUs7UUFDRCxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3hCLENBQUM7SUFFa0IsZUFBZTtRQUM5QixPQUFPLFFBQVEsQ0FBQyxjQUFjLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDbkQsQ0FBQzs7aUhBVFEsb0JBQW9CO3FHQUFwQixvQkFBb0IsZ0hDUGpDLDA0Q0FpQk07MkZEVk8sb0JBQW9CO2tCQUpoQyxTQUFTOytCQUNJLGtCQUFrQjs4QkFJbEIsT0FBTztzQkFBaEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT3V0cHV0LCBFdmVudEVtaXR0ZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTW9kYWxDb21wb25lbnQgfSBmcm9tICcuLi9tb2RhbC9tb2RhbC5jb21wb25lbnQnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ3play1maWx0ZXItbW9kYWwnLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL2ZpbHRlci1tb2RhbC5jb21wb25lbnQuaHRtbCdcclxufSlcclxuZXhwb3J0IGNsYXNzIEZpbHRlck1vZGFsQ29tcG9uZW50IGV4dGVuZHMgTW9kYWxDb21wb25lbnQge1xyXG4gICAgQE91dHB1dCgpIG9uUmVzZXQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gICAgcmVzZXQoKSB7XHJcbiAgICAgICAgdGhpcy5vblJlc2V0LmVtaXQoKTtcclxuICAgIH1cclxuXHJcbiAgICBwcm90ZWN0ZWQgb3ZlcnJpZGUgZ2V0TW9kYWxFbGVtZW50KCl7XHJcbiAgICAgICAgcmV0dXJuIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdmaWx0ZXItbW9kYWwnKTtcclxuICAgIH1cclxufSIsIjxkaXYgKGtleWRvd24uZW50ZXIpPVwia2V5RG93bigkZXZlbnQpXCIgY2xhc3M9XCJtb2RhbCBmYWRlXCIgZGF0YS1icy1iYWNrZHJvcD1cInN0YXRpY1wiIGlkPVwiZmlsdGVyLW1vZGFsXCIgdGFiaW5kZXg9XCItMVwiIGF0dHIuYXJpYS1sYWJlbGxlZGJ5PVwibW9kYWwtbGFibGUte3tlbGVtZW50SWR9fVwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPlxyXG4gICAgPGRpdiBjbGFzcz1cIm1vZGFsLWRpYWxvZ1wiIFtjbGFzcy5tb2RhbC1sZ109XCIheGxcIiBbY2xhc3MubW9kYWwteGxdPVwieGxcIiA+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cIm1vZGFsLWNvbnRlbnRcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1vZGFsLWhlYWRlclwiPlxyXG4gICAgICAgICAgICAgICAgPGg1IGNsYXNzPVwibW9kYWwtdGl0bGVcIiBpZD1cIm1vZGFsLWxhYmxlLXt7ZWxlbWVudElkfX1cIj57eyAnQWN0aW9uLkZpbHRlcicgfCB0cmFuc2xhdGUgfX08L2g1PlxyXG4gICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJidG4tY2xvc2VcIiBkYXRhLWJzLWRpc21pc3M9XCJtb2RhbFwiIGFyaWEtbGFiZWw9XCJDbG9zZVwiPjwvYnV0dG9uPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1vZGFsLWJvZHlcIj5cclxuICAgICAgICAgICAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtb2RhbC1mb290ZXJcIj5cclxuICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5XCIgKGNsaWNrKT1cIm9rKClcIj48aSBjbGFzcz1cImZhLXNvbGlkIGZhLWZpbHRlclwiPjwvaT4ge3sgJ0FjdGlvbi5GaWx0ZXInIHwgdHJhbnNsYXRlIH19PC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICA8YnV0dG9uICpuZ0lmPVwic2hvd0NhbmNlbFwiIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cImJ0biBidG4tc2Vjb25kYXJ5XCIgaWQ9XCJtb2RhbC1jYW5jZWwtYnV0dG9uLXt7ZWxlbWVudElkfX1cIiBkYXRhLWJzLWRpc21pc3M9XCJtb2RhbFwiPjxpIGNsYXNzPVwiZmEtc29saWQgZmEtYmFuXCI+PC9pPiB7eyAnQWN0aW9uLkNhbmNlbCcgfCB0cmFuc2xhdGUgfX08L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiYnRuIGJ0bi1zZWNvbmRhcnlcIiAoY2xpY2spPVwicmVzZXQoKVwiPjxpIGNsYXNzPVwiZmEtc29saWQgZmEteG1hcmtcIj48L2k+IHt7ICdBY3Rpb24uUmVzZXQnIHwgdHJhbnNsYXRlIH19PC9idXR0b24+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbjwvZGl2PiJdfQ==
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLW1vZGFsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3play9zcmMvbGliL21vZHVsZXMvbW9kYWwvZmlsdGVyLW1vZGFsL2ZpbHRlci1tb2RhbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy96ZWsvc3JjL2xpYi9tb2R1bGVzL21vZGFsL2ZpbHRlci1tb2RhbC9maWx0ZXItbW9kYWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2hFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7OztBQU1wRCxNQUFNLE9BQU8sY0FBZSxTQUFRLFFBQVE7SUFKNUM7O1FBS2MsWUFBTyxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7S0FTMUM7SUFQRyxLQUFLO1FBQ0QsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBRWtCLGVBQWU7UUFDOUIsT0FBTyxRQUFRLENBQUMsY0FBYyxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQ25ELENBQUM7OzJHQVRRLGNBQWM7K0ZBQWQsY0FBYyxnSENQM0IsMDRDQWlCTTsyRkRWTyxjQUFjO2tCQUoxQixTQUFTOytCQUNJLGtCQUFrQjs4QkFJbEIsT0FBTztzQkFBaEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT3V0cHV0LCBFdmVudEVtaXR0ZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgWmVrTW9kYWwgfSBmcm9tICcuLi9tb2RhbC9tb2RhbC5jb21wb25lbnQnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ3play1maWx0ZXItbW9kYWwnLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL2ZpbHRlci1tb2RhbC5jb21wb25lbnQuaHRtbCdcclxufSlcclxuZXhwb3J0IGNsYXNzIFpla0ZpbHRlck1vZGFsIGV4dGVuZHMgWmVrTW9kYWwge1xyXG4gICAgQE91dHB1dCgpIG9uUmVzZXQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gICAgcmVzZXQoKSB7XHJcbiAgICAgICAgdGhpcy5vblJlc2V0LmVtaXQoKTtcclxuICAgIH1cclxuXHJcbiAgICBwcm90ZWN0ZWQgb3ZlcnJpZGUgZ2V0TW9kYWxFbGVtZW50KCl7XHJcbiAgICAgICAgcmV0dXJuIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdmaWx0ZXItbW9kYWwnKTtcclxuICAgIH1cclxufSIsIjxkaXYgKGtleWRvd24uZW50ZXIpPVwia2V5RG93bigkZXZlbnQpXCIgY2xhc3M9XCJtb2RhbCBmYWRlXCIgZGF0YS1icy1iYWNrZHJvcD1cInN0YXRpY1wiIGlkPVwiZmlsdGVyLW1vZGFsXCIgdGFiaW5kZXg9XCItMVwiIGF0dHIuYXJpYS1sYWJlbGxlZGJ5PVwibW9kYWwtbGFibGUte3tlbGVtZW50SWR9fVwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPlxyXG4gICAgPGRpdiBjbGFzcz1cIm1vZGFsLWRpYWxvZ1wiIFtjbGFzcy5tb2RhbC1sZ109XCIheGxcIiBbY2xhc3MubW9kYWwteGxdPVwieGxcIiA+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cIm1vZGFsLWNvbnRlbnRcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1vZGFsLWhlYWRlclwiPlxyXG4gICAgICAgICAgICAgICAgPGg1IGNsYXNzPVwibW9kYWwtdGl0bGVcIiBpZD1cIm1vZGFsLWxhYmxlLXt7ZWxlbWVudElkfX1cIj57eyAnQWN0aW9uLkZpbHRlcicgfCB0cmFuc2xhdGUgfX08L2g1PlxyXG4gICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJidG4tY2xvc2VcIiBkYXRhLWJzLWRpc21pc3M9XCJtb2RhbFwiIGFyaWEtbGFiZWw9XCJDbG9zZVwiPjwvYnV0dG9uPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1vZGFsLWJvZHlcIj5cclxuICAgICAgICAgICAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtb2RhbC1mb290ZXJcIj5cclxuICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5XCIgKGNsaWNrKT1cIm9rKClcIj48aSBjbGFzcz1cImZhLXNvbGlkIGZhLWZpbHRlclwiPjwvaT4ge3sgJ0FjdGlvbi5GaWx0ZXInIHwgdHJhbnNsYXRlIH19PC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICA8YnV0dG9uICpuZ0lmPVwic2hvd0NhbmNlbFwiIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cImJ0biBidG4tc2Vjb25kYXJ5XCIgaWQ9XCJtb2RhbC1jYW5jZWwtYnV0dG9uLXt7ZWxlbWVudElkfX1cIiBkYXRhLWJzLWRpc21pc3M9XCJtb2RhbFwiPjxpIGNsYXNzPVwiZmEtc29saWQgZmEtYmFuXCI+PC9pPiB7eyAnQWN0aW9uLkNhbmNlbCcgfCB0cmFuc2xhdGUgfX08L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiYnRuIGJ0bi1zZWNvbmRhcnlcIiAoY2xpY2spPVwicmVzZXQoKVwiPjxpIGNsYXNzPVwiZmEtc29saWQgZmEteG1hcmtcIj48L2k+IHt7ICdBY3Rpb24uUmVzZXQnIHwgdHJhbnNsYXRlIH19PC9idXR0b24+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbjwvZGl2PiJdfQ==
@@ -6,7 +6,7 @@ import * as i0 from "@angular/core";
6
6
  import * as i1 from "@ngx-translate/core";
7
7
  import * as i2 from "@angular/common";
8
8
  let nextUniqueId = 0;
9
- export class ModalComponent extends CoreComponent {
9
+ export class ZekModal extends CoreComponent {
10
10
  constructor(translate) {
11
11
  super();
12
12
  this.translate = translate;
@@ -61,61 +61,61 @@ export class ModalComponent extends CoreComponent {
61
61
  return this._showOk;
62
62
  }
63
63
  set showOk(v) {
64
- this._showOk = Convert.toBoolean(v);
64
+ this._showOk = Convert.toBooleanProperty(v);
65
65
  }
66
66
  get disabledOk() {
67
67
  return this._disabledOk;
68
68
  }
69
69
  set disabledOk(v) {
70
- this._disabledOk = Convert.toBoolean(v);
70
+ this._disabledOk = Convert.toBooleanProperty(v);
71
71
  }
72
72
  get showCancel() {
73
73
  return this._showCancel;
74
74
  }
75
75
  set showCancel(v) {
76
- this._showCancel = Convert.toBoolean(v);
76
+ this._showCancel = Convert.toBooleanProperty(v);
77
77
  }
78
78
  get autoHide() {
79
79
  return this._autoHide;
80
80
  }
81
81
  set autoHide(v) {
82
- this._autoHide = Convert.toBoolean(v);
82
+ this._autoHide = Convert.toBooleanProperty(v);
83
83
  }
84
84
  get large() {
85
85
  return this._large;
86
86
  }
87
87
  set large(v) {
88
- this._large = Convert.toBoolean(v);
88
+ this._large = Convert.toBooleanProperty(v);
89
89
  }
90
90
  get xl() {
91
91
  return this._xl;
92
92
  }
93
93
  set xl(v) {
94
- this._xl = Convert.toBoolean(v);
94
+ this._xl = Convert.toBooleanProperty(v);
95
95
  }
96
96
  get scrollable() {
97
97
  return this._scrollable;
98
98
  }
99
99
  set scrollable(v) {
100
- this._scrollable = Convert.toBoolean(v);
100
+ this._scrollable = Convert.toBooleanProperty(v);
101
101
  }
102
102
  get fullscreen() {
103
103
  return this._fullscreen;
104
104
  }
105
105
  set fullscreen(v) {
106
- this._fullscreen = Convert.toBoolean(v);
106
+ this._fullscreen = Convert.toBooleanProperty(v);
107
107
  }
108
108
  get showHeader() {
109
109
  return this._showHeader;
110
110
  }
111
111
  set showHeader(v) {
112
- this._showHeader = Convert.toBoolean(v);
112
+ this._showHeader = Convert.toBooleanProperty(v);
113
113
  }
114
114
  get showFooter() {
115
115
  return this._showFooter;
116
116
  }
117
117
  set showFooter(v) {
118
- this._showFooter = Convert.toBoolean(v);
118
+ this._showFooter = Convert.toBooleanProperty(v);
119
119
  }
120
120
  // public get modal(): any {
121
121
  // if (!this._modal) {
@@ -183,9 +183,9 @@ export class ModalComponent extends CoreComponent {
183
183
  this.ok();
184
184
  }
185
185
  }
186
- ModalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: ModalComponent, deps: [{ token: i1.TranslateService }], target: i0.ɵɵFactoryTarget.Component });
187
- ModalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.0", type: ModalComponent, selector: "zek-modal", inputs: { model: "model", showOk: "showOk", disabledOk: "disabledOk", showCancel: "showCancel", autoHide: "autoHide", title: "title", text: "text", icon: "icon", okButtonText: "okButtonText", componentType: "componentType", large: "large", xl: "xl", scrollable: "scrollable", fullscreen: "fullscreen", showHeader: "showHeader", showFooter: "showFooter" }, outputs: { onShown: "onShown", onHidden: "onHidden", onOk: "onOk", onValidating: "onValidating" }, usesInheritance: true, ngImport: i0, template: "<div (keydown.enter)=\"keyDown($event)\" class=\"modal fade\" data-bs-backdrop=\"static\" id=\"modal-{{elementId}}\" tabindex=\"-1\" attr.aria-labelledby=\"modal-lable-{{elementId}}\" aria-hidden=\"true\">\r\n <div class=\"modal-dialog\" [class.modal-lg]=\"large\" [class.modal-xl]=\"xl\" [class.modal-dialog-scrollable]=\"scrollable\" [class.modal-fullscreen]=\"fullscreen\">\r\n <div class=\"modal-content\">\r\n <div class=\"modal-header\" *ngIf=\"showHeader\">\r\n <ng-content select=\"header\"></ng-content>\r\n <h5 class=\"modal-title\" id=\"modal-lable-{{elementId}}\">{{title}}</h5>\r\n <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button>\r\n </div>\r\n <div class=\"modal-body\">\r\n {{text}}\r\n <ng-content></ng-content>\r\n </div>\r\n <div class=\"modal-footer\" *ngIf=\"showFooter\">\r\n <ng-content select=\"footer\"></ng-content>\r\n <button [class.visually-hidden]=\"!showOk\" [disabled]=\"disabledOk\" type=\"button\" class=\"btn {{cssButton()}}\" id=\"modal-ok-button-{{elementId}}\" (click)=\"ok()\"><i *ngIf=\"icon\" class=\"{{ icon }}\"></i> {{ okButtonText }}</button>\r\n <button [class.visually-hidden]=\"!showCancel\" type=\"button\" class=\"btn btn-secondary\" id=\"modal-cancel-button-{{elementId}}\" data-bs-dismiss=\"modal\"><i class=\"fa-solid fa-ban\"></i> {{ 'Action.Cancel' | translate }}</button>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }] });
188
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: ModalComponent, decorators: [{
186
+ ZekModal.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: ZekModal, deps: [{ token: i1.TranslateService }], target: i0.ɵɵFactoryTarget.Component });
187
+ ZekModal.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.0", type: ZekModal, selector: "zek-modal", inputs: { model: "model", showOk: "showOk", disabledOk: "disabledOk", showCancel: "showCancel", autoHide: "autoHide", title: "title", text: "text", icon: "icon", okButtonText: "okButtonText", componentType: "componentType", large: "large", xl: "xl", scrollable: "scrollable", fullscreen: "fullscreen", showHeader: "showHeader", showFooter: "showFooter" }, outputs: { onShown: "onShown", onHidden: "onHidden", onOk: "onOk", onValidating: "onValidating" }, usesInheritance: true, ngImport: i0, template: "<div (keydown.enter)=\"keyDown($event)\" class=\"modal fade\" data-bs-backdrop=\"static\" id=\"modal-{{elementId}}\" tabindex=\"-1\" attr.aria-labelledby=\"modal-lable-{{elementId}}\" aria-hidden=\"true\">\r\n <div class=\"modal-dialog\" [class.modal-lg]=\"large\" [class.modal-xl]=\"xl\" [class.modal-dialog-scrollable]=\"scrollable\" [class.modal-fullscreen]=\"fullscreen\">\r\n <div class=\"modal-content\">\r\n <div class=\"modal-header\" *ngIf=\"showHeader\">\r\n <ng-content select=\"header\"></ng-content>\r\n <h5 class=\"modal-title\" id=\"modal-lable-{{elementId}}\">{{title}}</h5>\r\n <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button>\r\n </div>\r\n <div class=\"modal-body\">\r\n {{text}}\r\n <ng-content></ng-content>\r\n </div>\r\n <div class=\"modal-footer\" *ngIf=\"showFooter\">\r\n <ng-content select=\"footer\"></ng-content>\r\n <button [class.visually-hidden]=\"!showOk\" [disabled]=\"disabledOk\" type=\"button\" class=\"btn {{cssButton()}}\" id=\"modal-ok-button-{{elementId}}\" (click)=\"ok()\"><i *ngIf=\"icon\" class=\"{{ icon }}\"></i> {{ okButtonText }}</button>\r\n <button [class.visually-hidden]=\"!showCancel\" type=\"button\" class=\"btn btn-secondary\" id=\"modal-cancel-button-{{elementId}}\" data-bs-dismiss=\"modal\"><i class=\"fa-solid fa-ban\"></i> {{ 'Action.Cancel' | translate }}</button>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }] });
188
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: ZekModal, decorators: [{
189
189
  type: Component,
190
190
  args: [{ selector: 'zek-modal', template: "<div (keydown.enter)=\"keyDown($event)\" class=\"modal fade\" data-bs-backdrop=\"static\" id=\"modal-{{elementId}}\" tabindex=\"-1\" attr.aria-labelledby=\"modal-lable-{{elementId}}\" aria-hidden=\"true\">\r\n <div class=\"modal-dialog\" [class.modal-lg]=\"large\" [class.modal-xl]=\"xl\" [class.modal-dialog-scrollable]=\"scrollable\" [class.modal-fullscreen]=\"fullscreen\">\r\n <div class=\"modal-content\">\r\n <div class=\"modal-header\" *ngIf=\"showHeader\">\r\n <ng-content select=\"header\"></ng-content>\r\n <h5 class=\"modal-title\" id=\"modal-lable-{{elementId}}\">{{title}}</h5>\r\n <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button>\r\n </div>\r\n <div class=\"modal-body\">\r\n {{text}}\r\n <ng-content></ng-content>\r\n </div>\r\n <div class=\"modal-footer\" *ngIf=\"showFooter\">\r\n <ng-content select=\"footer\"></ng-content>\r\n <button [class.visually-hidden]=\"!showOk\" [disabled]=\"disabledOk\" type=\"button\" class=\"btn {{cssButton()}}\" id=\"modal-ok-button-{{elementId}}\" (click)=\"ok()\"><i *ngIf=\"icon\" class=\"{{ icon }}\"></i> {{ okButtonText }}</button>\r\n <button [class.visually-hidden]=\"!showCancel\" type=\"button\" class=\"btn btn-secondary\" id=\"modal-cancel-button-{{elementId}}\" data-bs-dismiss=\"modal\"><i class=\"fa-solid fa-ban\"></i> {{ 'Action.Cancel' | translate }}</button>\r\n </div>\r\n </div>\r\n </div>\r\n</div>" }]
191
191
  }], ctorParameters: function () { return [{ type: i1.TranslateService }]; }, propDecorators: { model: [{
@@ -229,7 +229,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImpor
229
229
  }], onValidating: [{
230
230
  type: Output
231
231
  }] } });
232
- export class DeleteModalComponent extends ModalComponent {
232
+ export class ZekDeleteModal extends ZekModal {
233
233
  constructor(translate) {
234
234
  super(translate);
235
235
  this.icon = 'fas fa-fas fa-trash';
@@ -238,13 +238,13 @@ export class DeleteModalComponent extends ModalComponent {
238
238
  this.componentType = ComponentType.Delete;
239
239
  }
240
240
  }
241
- DeleteModalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: DeleteModalComponent, deps: [{ token: i1.TranslateService }], target: i0.ɵɵFactoryTarget.Component });
242
- DeleteModalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.0", type: DeleteModalComponent, selector: "zek-delete-modal", usesInheritance: true, ngImport: i0, template: "<div (keydown.enter)=\"keyDown($event)\" class=\"modal fade\" data-bs-backdrop=\"static\" id=\"modal-{{elementId}}\" tabindex=\"-1\" attr.aria-labelledby=\"modal-lable-{{elementId}}\" aria-hidden=\"true\">\r\n <div class=\"modal-dialog\" [class.modal-lg]=\"large\" [class.modal-xl]=\"xl\" [class.modal-dialog-scrollable]=\"scrollable\" [class.modal-fullscreen]=\"fullscreen\">\r\n <div class=\"modal-content\">\r\n <div class=\"modal-header\" *ngIf=\"showHeader\">\r\n <ng-content select=\"header\"></ng-content>\r\n <h5 class=\"modal-title\" id=\"modal-lable-{{elementId}}\">{{title}}</h5>\r\n <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button>\r\n </div>\r\n <div class=\"modal-body\">\r\n {{text}}\r\n <ng-content></ng-content>\r\n </div>\r\n <div class=\"modal-footer\" *ngIf=\"showFooter\">\r\n <ng-content select=\"footer\"></ng-content>\r\n <button [class.visually-hidden]=\"!showOk\" [disabled]=\"disabledOk\" type=\"button\" class=\"btn {{cssButton()}}\" id=\"modal-ok-button-{{elementId}}\" (click)=\"ok()\"><i *ngIf=\"icon\" class=\"{{ icon }}\"></i> {{ okButtonText }}</button>\r\n <button [class.visually-hidden]=\"!showCancel\" type=\"button\" class=\"btn btn-secondary\" id=\"modal-cancel-button-{{elementId}}\" data-bs-dismiss=\"modal\"><i class=\"fa-solid fa-ban\"></i> {{ 'Action.Cancel' | translate }}</button>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }] });
243
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: DeleteModalComponent, decorators: [{
241
+ ZekDeleteModal.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: ZekDeleteModal, deps: [{ token: i1.TranslateService }], target: i0.ɵɵFactoryTarget.Component });
242
+ ZekDeleteModal.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.0", type: ZekDeleteModal, selector: "zek-delete-modal", usesInheritance: true, ngImport: i0, template: "<div (keydown.enter)=\"keyDown($event)\" class=\"modal fade\" data-bs-backdrop=\"static\" id=\"modal-{{elementId}}\" tabindex=\"-1\" attr.aria-labelledby=\"modal-lable-{{elementId}}\" aria-hidden=\"true\">\r\n <div class=\"modal-dialog\" [class.modal-lg]=\"large\" [class.modal-xl]=\"xl\" [class.modal-dialog-scrollable]=\"scrollable\" [class.modal-fullscreen]=\"fullscreen\">\r\n <div class=\"modal-content\">\r\n <div class=\"modal-header\" *ngIf=\"showHeader\">\r\n <ng-content select=\"header\"></ng-content>\r\n <h5 class=\"modal-title\" id=\"modal-lable-{{elementId}}\">{{title}}</h5>\r\n <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button>\r\n </div>\r\n <div class=\"modal-body\">\r\n {{text}}\r\n <ng-content></ng-content>\r\n </div>\r\n <div class=\"modal-footer\" *ngIf=\"showFooter\">\r\n <ng-content select=\"footer\"></ng-content>\r\n <button [class.visually-hidden]=\"!showOk\" [disabled]=\"disabledOk\" type=\"button\" class=\"btn {{cssButton()}}\" id=\"modal-ok-button-{{elementId}}\" (click)=\"ok()\"><i *ngIf=\"icon\" class=\"{{ icon }}\"></i> {{ okButtonText }}</button>\r\n <button [class.visually-hidden]=\"!showCancel\" type=\"button\" class=\"btn btn-secondary\" id=\"modal-cancel-button-{{elementId}}\" data-bs-dismiss=\"modal\"><i class=\"fa-solid fa-ban\"></i> {{ 'Action.Cancel' | translate }}</button>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }] });
243
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: ZekDeleteModal, decorators: [{
244
244
  type: Component,
245
245
  args: [{ selector: 'zek-delete-modal', template: "<div (keydown.enter)=\"keyDown($event)\" class=\"modal fade\" data-bs-backdrop=\"static\" id=\"modal-{{elementId}}\" tabindex=\"-1\" attr.aria-labelledby=\"modal-lable-{{elementId}}\" aria-hidden=\"true\">\r\n <div class=\"modal-dialog\" [class.modal-lg]=\"large\" [class.modal-xl]=\"xl\" [class.modal-dialog-scrollable]=\"scrollable\" [class.modal-fullscreen]=\"fullscreen\">\r\n <div class=\"modal-content\">\r\n <div class=\"modal-header\" *ngIf=\"showHeader\">\r\n <ng-content select=\"header\"></ng-content>\r\n <h5 class=\"modal-title\" id=\"modal-lable-{{elementId}}\">{{title}}</h5>\r\n <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button>\r\n </div>\r\n <div class=\"modal-body\">\r\n {{text}}\r\n <ng-content></ng-content>\r\n </div>\r\n <div class=\"modal-footer\" *ngIf=\"showFooter\">\r\n <ng-content select=\"footer\"></ng-content>\r\n <button [class.visually-hidden]=\"!showOk\" [disabled]=\"disabledOk\" type=\"button\" class=\"btn {{cssButton()}}\" id=\"modal-ok-button-{{elementId}}\" (click)=\"ok()\"><i *ngIf=\"icon\" class=\"{{ icon }}\"></i> {{ okButtonText }}</button>\r\n <button [class.visually-hidden]=\"!showCancel\" type=\"button\" class=\"btn btn-secondary\" id=\"modal-cancel-button-{{elementId}}\" data-bs-dismiss=\"modal\"><i class=\"fa-solid fa-ban\"></i> {{ 'Action.Cancel' | translate }}</button>\r\n </div>\r\n </div>\r\n </div>\r\n</div>" }]
246
246
  }], ctorParameters: function () { return [{ type: i1.TranslateService }]; } });
247
- export class ApproveModalComponent extends ModalComponent {
247
+ export class ZekApproveModal extends ZekModal {
248
248
  constructor(translate) {
249
249
  super(translate);
250
250
  this.icon = 'fas fa-thumbs-up';
@@ -253,13 +253,13 @@ export class ApproveModalComponent extends ModalComponent {
253
253
  this.componentType = ComponentType.Success;
254
254
  }
255
255
  }
256
- ApproveModalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: ApproveModalComponent, deps: [{ token: i1.TranslateService }], target: i0.ɵɵFactoryTarget.Component });
257
- ApproveModalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.0", type: ApproveModalComponent, selector: "zek-approve-modal", usesInheritance: true, ngImport: i0, template: "<div (keydown.enter)=\"keyDown($event)\" class=\"modal fade\" data-bs-backdrop=\"static\" id=\"modal-{{elementId}}\" tabindex=\"-1\" attr.aria-labelledby=\"modal-lable-{{elementId}}\" aria-hidden=\"true\">\r\n <div class=\"modal-dialog\" [class.modal-lg]=\"large\" [class.modal-xl]=\"xl\" [class.modal-dialog-scrollable]=\"scrollable\" [class.modal-fullscreen]=\"fullscreen\">\r\n <div class=\"modal-content\">\r\n <div class=\"modal-header\" *ngIf=\"showHeader\">\r\n <ng-content select=\"header\"></ng-content>\r\n <h5 class=\"modal-title\" id=\"modal-lable-{{elementId}}\">{{title}}</h5>\r\n <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button>\r\n </div>\r\n <div class=\"modal-body\">\r\n {{text}}\r\n <ng-content></ng-content>\r\n </div>\r\n <div class=\"modal-footer\" *ngIf=\"showFooter\">\r\n <ng-content select=\"footer\"></ng-content>\r\n <button [class.visually-hidden]=\"!showOk\" [disabled]=\"disabledOk\" type=\"button\" class=\"btn {{cssButton()}}\" id=\"modal-ok-button-{{elementId}}\" (click)=\"ok()\"><i *ngIf=\"icon\" class=\"{{ icon }}\"></i> {{ okButtonText }}</button>\r\n <button [class.visually-hidden]=\"!showCancel\" type=\"button\" class=\"btn btn-secondary\" id=\"modal-cancel-button-{{elementId}}\" data-bs-dismiss=\"modal\"><i class=\"fa-solid fa-ban\"></i> {{ 'Action.Cancel' | translate }}</button>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }] });
258
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: ApproveModalComponent, decorators: [{
256
+ ZekApproveModal.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: ZekApproveModal, deps: [{ token: i1.TranslateService }], target: i0.ɵɵFactoryTarget.Component });
257
+ ZekApproveModal.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.0", type: ZekApproveModal, selector: "zek-approve-modal", usesInheritance: true, ngImport: i0, template: "<div (keydown.enter)=\"keyDown($event)\" class=\"modal fade\" data-bs-backdrop=\"static\" id=\"modal-{{elementId}}\" tabindex=\"-1\" attr.aria-labelledby=\"modal-lable-{{elementId}}\" aria-hidden=\"true\">\r\n <div class=\"modal-dialog\" [class.modal-lg]=\"large\" [class.modal-xl]=\"xl\" [class.modal-dialog-scrollable]=\"scrollable\" [class.modal-fullscreen]=\"fullscreen\">\r\n <div class=\"modal-content\">\r\n <div class=\"modal-header\" *ngIf=\"showHeader\">\r\n <ng-content select=\"header\"></ng-content>\r\n <h5 class=\"modal-title\" id=\"modal-lable-{{elementId}}\">{{title}}</h5>\r\n <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button>\r\n </div>\r\n <div class=\"modal-body\">\r\n {{text}}\r\n <ng-content></ng-content>\r\n </div>\r\n <div class=\"modal-footer\" *ngIf=\"showFooter\">\r\n <ng-content select=\"footer\"></ng-content>\r\n <button [class.visually-hidden]=\"!showOk\" [disabled]=\"disabledOk\" type=\"button\" class=\"btn {{cssButton()}}\" id=\"modal-ok-button-{{elementId}}\" (click)=\"ok()\"><i *ngIf=\"icon\" class=\"{{ icon }}\"></i> {{ okButtonText }}</button>\r\n <button [class.visually-hidden]=\"!showCancel\" type=\"button\" class=\"btn btn-secondary\" id=\"modal-cancel-button-{{elementId}}\" data-bs-dismiss=\"modal\"><i class=\"fa-solid fa-ban\"></i> {{ 'Action.Cancel' | translate }}</button>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }] });
258
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: ZekApproveModal, decorators: [{
259
259
  type: Component,
260
260
  args: [{ selector: 'zek-approve-modal', template: "<div (keydown.enter)=\"keyDown($event)\" class=\"modal fade\" data-bs-backdrop=\"static\" id=\"modal-{{elementId}}\" tabindex=\"-1\" attr.aria-labelledby=\"modal-lable-{{elementId}}\" aria-hidden=\"true\">\r\n <div class=\"modal-dialog\" [class.modal-lg]=\"large\" [class.modal-xl]=\"xl\" [class.modal-dialog-scrollable]=\"scrollable\" [class.modal-fullscreen]=\"fullscreen\">\r\n <div class=\"modal-content\">\r\n <div class=\"modal-header\" *ngIf=\"showHeader\">\r\n <ng-content select=\"header\"></ng-content>\r\n <h5 class=\"modal-title\" id=\"modal-lable-{{elementId}}\">{{title}}</h5>\r\n <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button>\r\n </div>\r\n <div class=\"modal-body\">\r\n {{text}}\r\n <ng-content></ng-content>\r\n </div>\r\n <div class=\"modal-footer\" *ngIf=\"showFooter\">\r\n <ng-content select=\"footer\"></ng-content>\r\n <button [class.visually-hidden]=\"!showOk\" [disabled]=\"disabledOk\" type=\"button\" class=\"btn {{cssButton()}}\" id=\"modal-ok-button-{{elementId}}\" (click)=\"ok()\"><i *ngIf=\"icon\" class=\"{{ icon }}\"></i> {{ okButtonText }}</button>\r\n <button [class.visually-hidden]=\"!showCancel\" type=\"button\" class=\"btn btn-secondary\" id=\"modal-cancel-button-{{elementId}}\" data-bs-dismiss=\"modal\"><i class=\"fa-solid fa-ban\"></i> {{ 'Action.Cancel' | translate }}</button>\r\n </div>\r\n </div>\r\n </div>\r\n</div>" }]
261
261
  }], ctorParameters: function () { return [{ type: i1.TranslateService }]; } });
262
- export class SubmitModalComponent extends ModalComponent {
262
+ export class ZekSubmitModal extends ZekModal {
263
263
  constructor(translate) {
264
264
  super(translate);
265
265
  this.icon = 'fas fa-thumbs-up';
@@ -268,13 +268,13 @@ export class SubmitModalComponent extends ModalComponent {
268
268
  this.componentType = ComponentType.Success;
269
269
  }
270
270
  }
271
- SubmitModalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SubmitModalComponent, deps: [{ token: i1.TranslateService }], target: i0.ɵɵFactoryTarget.Component });
272
- SubmitModalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.0", type: SubmitModalComponent, selector: "zek-submit-modal", usesInheritance: true, ngImport: i0, template: "<div (keydown.enter)=\"keyDown($event)\" class=\"modal fade\" data-bs-backdrop=\"static\" id=\"modal-{{elementId}}\" tabindex=\"-1\" attr.aria-labelledby=\"modal-lable-{{elementId}}\" aria-hidden=\"true\">\r\n <div class=\"modal-dialog\" [class.modal-lg]=\"large\" [class.modal-xl]=\"xl\" [class.modal-dialog-scrollable]=\"scrollable\" [class.modal-fullscreen]=\"fullscreen\">\r\n <div class=\"modal-content\">\r\n <div class=\"modal-header\" *ngIf=\"showHeader\">\r\n <ng-content select=\"header\"></ng-content>\r\n <h5 class=\"modal-title\" id=\"modal-lable-{{elementId}}\">{{title}}</h5>\r\n <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button>\r\n </div>\r\n <div class=\"modal-body\">\r\n {{text}}\r\n <ng-content></ng-content>\r\n </div>\r\n <div class=\"modal-footer\" *ngIf=\"showFooter\">\r\n <ng-content select=\"footer\"></ng-content>\r\n <button [class.visually-hidden]=\"!showOk\" [disabled]=\"disabledOk\" type=\"button\" class=\"btn {{cssButton()}}\" id=\"modal-ok-button-{{elementId}}\" (click)=\"ok()\"><i *ngIf=\"icon\" class=\"{{ icon }}\"></i> {{ okButtonText }}</button>\r\n <button [class.visually-hidden]=\"!showCancel\" type=\"button\" class=\"btn btn-secondary\" id=\"modal-cancel-button-{{elementId}}\" data-bs-dismiss=\"modal\"><i class=\"fa-solid fa-ban\"></i> {{ 'Action.Cancel' | translate }}</button>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }] });
273
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SubmitModalComponent, decorators: [{
271
+ ZekSubmitModal.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: ZekSubmitModal, deps: [{ token: i1.TranslateService }], target: i0.ɵɵFactoryTarget.Component });
272
+ ZekSubmitModal.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.0", type: ZekSubmitModal, selector: "zek-submit-modal", usesInheritance: true, ngImport: i0, template: "<div (keydown.enter)=\"keyDown($event)\" class=\"modal fade\" data-bs-backdrop=\"static\" id=\"modal-{{elementId}}\" tabindex=\"-1\" attr.aria-labelledby=\"modal-lable-{{elementId}}\" aria-hidden=\"true\">\r\n <div class=\"modal-dialog\" [class.modal-lg]=\"large\" [class.modal-xl]=\"xl\" [class.modal-dialog-scrollable]=\"scrollable\" [class.modal-fullscreen]=\"fullscreen\">\r\n <div class=\"modal-content\">\r\n <div class=\"modal-header\" *ngIf=\"showHeader\">\r\n <ng-content select=\"header\"></ng-content>\r\n <h5 class=\"modal-title\" id=\"modal-lable-{{elementId}}\">{{title}}</h5>\r\n <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button>\r\n </div>\r\n <div class=\"modal-body\">\r\n {{text}}\r\n <ng-content></ng-content>\r\n </div>\r\n <div class=\"modal-footer\" *ngIf=\"showFooter\">\r\n <ng-content select=\"footer\"></ng-content>\r\n <button [class.visually-hidden]=\"!showOk\" [disabled]=\"disabledOk\" type=\"button\" class=\"btn {{cssButton()}}\" id=\"modal-ok-button-{{elementId}}\" (click)=\"ok()\"><i *ngIf=\"icon\" class=\"{{ icon }}\"></i> {{ okButtonText }}</button>\r\n <button [class.visually-hidden]=\"!showCancel\" type=\"button\" class=\"btn btn-secondary\" id=\"modal-cancel-button-{{elementId}}\" data-bs-dismiss=\"modal\"><i class=\"fa-solid fa-ban\"></i> {{ 'Action.Cancel' | translate }}</button>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }] });
273
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: ZekSubmitModal, decorators: [{
274
274
  type: Component,
275
275
  args: [{ selector: 'zek-submit-modal', template: "<div (keydown.enter)=\"keyDown($event)\" class=\"modal fade\" data-bs-backdrop=\"static\" id=\"modal-{{elementId}}\" tabindex=\"-1\" attr.aria-labelledby=\"modal-lable-{{elementId}}\" aria-hidden=\"true\">\r\n <div class=\"modal-dialog\" [class.modal-lg]=\"large\" [class.modal-xl]=\"xl\" [class.modal-dialog-scrollable]=\"scrollable\" [class.modal-fullscreen]=\"fullscreen\">\r\n <div class=\"modal-content\">\r\n <div class=\"modal-header\" *ngIf=\"showHeader\">\r\n <ng-content select=\"header\"></ng-content>\r\n <h5 class=\"modal-title\" id=\"modal-lable-{{elementId}}\">{{title}}</h5>\r\n <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button>\r\n </div>\r\n <div class=\"modal-body\">\r\n {{text}}\r\n <ng-content></ng-content>\r\n </div>\r\n <div class=\"modal-footer\" *ngIf=\"showFooter\">\r\n <ng-content select=\"footer\"></ng-content>\r\n <button [class.visually-hidden]=\"!showOk\" [disabled]=\"disabledOk\" type=\"button\" class=\"btn {{cssButton()}}\" id=\"modal-ok-button-{{elementId}}\" (click)=\"ok()\"><i *ngIf=\"icon\" class=\"{{ icon }}\"></i> {{ okButtonText }}</button>\r\n <button [class.visually-hidden]=\"!showCancel\" type=\"button\" class=\"btn btn-secondary\" id=\"modal-cancel-button-{{elementId}}\" data-bs-dismiss=\"modal\"><i class=\"fa-solid fa-ban\"></i> {{ 'Action.Cancel' | translate }}</button>\r\n </div>\r\n </div>\r\n </div>\r\n</div>" }]
276
276
  }], ctorParameters: function () { return [{ type: i1.TranslateService }]; } });
277
- export class DisapproveModalComponent extends ModalComponent {
277
+ export class ZekDisapproveModal extends ZekModal {
278
278
  constructor(translate) {
279
279
  super(translate);
280
280
  this.icon = 'fas fa-thumbs-down';
@@ -283,13 +283,13 @@ export class DisapproveModalComponent extends ModalComponent {
283
283
  this.componentType = ComponentType.Delete;
284
284
  }
285
285
  }
286
- DisapproveModalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: DisapproveModalComponent, deps: [{ token: i1.TranslateService }], target: i0.ɵɵFactoryTarget.Component });
287
- DisapproveModalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.0", type: DisapproveModalComponent, selector: "zek-disapprove-modal", usesInheritance: true, ngImport: i0, template: "<div (keydown.enter)=\"keyDown($event)\" class=\"modal fade\" data-bs-backdrop=\"static\" id=\"modal-{{elementId}}\" tabindex=\"-1\" attr.aria-labelledby=\"modal-lable-{{elementId}}\" aria-hidden=\"true\">\r\n <div class=\"modal-dialog\" [class.modal-lg]=\"large\" [class.modal-xl]=\"xl\" [class.modal-dialog-scrollable]=\"scrollable\" [class.modal-fullscreen]=\"fullscreen\">\r\n <div class=\"modal-content\">\r\n <div class=\"modal-header\" *ngIf=\"showHeader\">\r\n <ng-content select=\"header\"></ng-content>\r\n <h5 class=\"modal-title\" id=\"modal-lable-{{elementId}}\">{{title}}</h5>\r\n <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button>\r\n </div>\r\n <div class=\"modal-body\">\r\n {{text}}\r\n <ng-content></ng-content>\r\n </div>\r\n <div class=\"modal-footer\" *ngIf=\"showFooter\">\r\n <ng-content select=\"footer\"></ng-content>\r\n <button [class.visually-hidden]=\"!showOk\" [disabled]=\"disabledOk\" type=\"button\" class=\"btn {{cssButton()}}\" id=\"modal-ok-button-{{elementId}}\" (click)=\"ok()\"><i *ngIf=\"icon\" class=\"{{ icon }}\"></i> {{ okButtonText }}</button>\r\n <button [class.visually-hidden]=\"!showCancel\" type=\"button\" class=\"btn btn-secondary\" id=\"modal-cancel-button-{{elementId}}\" data-bs-dismiss=\"modal\"><i class=\"fa-solid fa-ban\"></i> {{ 'Action.Cancel' | translate }}</button>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }] });
288
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: DisapproveModalComponent, decorators: [{
286
+ ZekDisapproveModal.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: ZekDisapproveModal, deps: [{ token: i1.TranslateService }], target: i0.ɵɵFactoryTarget.Component });
287
+ ZekDisapproveModal.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.0", type: ZekDisapproveModal, selector: "zek-disapprove-modal", usesInheritance: true, ngImport: i0, template: "<div (keydown.enter)=\"keyDown($event)\" class=\"modal fade\" data-bs-backdrop=\"static\" id=\"modal-{{elementId}}\" tabindex=\"-1\" attr.aria-labelledby=\"modal-lable-{{elementId}}\" aria-hidden=\"true\">\r\n <div class=\"modal-dialog\" [class.modal-lg]=\"large\" [class.modal-xl]=\"xl\" [class.modal-dialog-scrollable]=\"scrollable\" [class.modal-fullscreen]=\"fullscreen\">\r\n <div class=\"modal-content\">\r\n <div class=\"modal-header\" *ngIf=\"showHeader\">\r\n <ng-content select=\"header\"></ng-content>\r\n <h5 class=\"modal-title\" id=\"modal-lable-{{elementId}}\">{{title}}</h5>\r\n <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button>\r\n </div>\r\n <div class=\"modal-body\">\r\n {{text}}\r\n <ng-content></ng-content>\r\n </div>\r\n <div class=\"modal-footer\" *ngIf=\"showFooter\">\r\n <ng-content select=\"footer\"></ng-content>\r\n <button [class.visually-hidden]=\"!showOk\" [disabled]=\"disabledOk\" type=\"button\" class=\"btn {{cssButton()}}\" id=\"modal-ok-button-{{elementId}}\" (click)=\"ok()\"><i *ngIf=\"icon\" class=\"{{ icon }}\"></i> {{ okButtonText }}</button>\r\n <button [class.visually-hidden]=\"!showCancel\" type=\"button\" class=\"btn btn-secondary\" id=\"modal-cancel-button-{{elementId}}\" data-bs-dismiss=\"modal\"><i class=\"fa-solid fa-ban\"></i> {{ 'Action.Cancel' | translate }}</button>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }] });
288
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: ZekDisapproveModal, decorators: [{
289
289
  type: Component,
290
290
  args: [{ selector: 'zek-disapprove-modal', template: "<div (keydown.enter)=\"keyDown($event)\" class=\"modal fade\" data-bs-backdrop=\"static\" id=\"modal-{{elementId}}\" tabindex=\"-1\" attr.aria-labelledby=\"modal-lable-{{elementId}}\" aria-hidden=\"true\">\r\n <div class=\"modal-dialog\" [class.modal-lg]=\"large\" [class.modal-xl]=\"xl\" [class.modal-dialog-scrollable]=\"scrollable\" [class.modal-fullscreen]=\"fullscreen\">\r\n <div class=\"modal-content\">\r\n <div class=\"modal-header\" *ngIf=\"showHeader\">\r\n <ng-content select=\"header\"></ng-content>\r\n <h5 class=\"modal-title\" id=\"modal-lable-{{elementId}}\">{{title}}</h5>\r\n <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button>\r\n </div>\r\n <div class=\"modal-body\">\r\n {{text}}\r\n <ng-content></ng-content>\r\n </div>\r\n <div class=\"modal-footer\" *ngIf=\"showFooter\">\r\n <ng-content select=\"footer\"></ng-content>\r\n <button [class.visually-hidden]=\"!showOk\" [disabled]=\"disabledOk\" type=\"button\" class=\"btn {{cssButton()}}\" id=\"modal-ok-button-{{elementId}}\" (click)=\"ok()\"><i *ngIf=\"icon\" class=\"{{ icon }}\"></i> {{ okButtonText }}</button>\r\n <button [class.visually-hidden]=\"!showCancel\" type=\"button\" class=\"btn btn-secondary\" id=\"modal-cancel-button-{{elementId}}\" data-bs-dismiss=\"modal\"><i class=\"fa-solid fa-ban\"></i> {{ 'Action.Cancel' | translate }}</button>\r\n </div>\r\n </div>\r\n </div>\r\n</div>" }]
291
291
  }], ctorParameters: function () { return [{ type: i1.TranslateService }]; } });
292
- export class RestoreModalComponent extends ModalComponent {
292
+ export class ZekRestoreModal extends ZekModal {
293
293
  constructor(translate) {
294
294
  super(translate);
295
295
  this.icon = 'fas fa-redo';
@@ -298,10 +298,10 @@ export class RestoreModalComponent extends ModalComponent {
298
298
  this.componentType = ComponentType.Success;
299
299
  }
300
300
  }
301
- RestoreModalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: RestoreModalComponent, deps: [{ token: i1.TranslateService }], target: i0.ɵɵFactoryTarget.Component });
302
- RestoreModalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.0", type: RestoreModalComponent, selector: "zek-restore-modal", usesInheritance: true, ngImport: i0, template: "<div (keydown.enter)=\"keyDown($event)\" class=\"modal fade\" data-bs-backdrop=\"static\" id=\"modal-{{elementId}}\" tabindex=\"-1\" attr.aria-labelledby=\"modal-lable-{{elementId}}\" aria-hidden=\"true\">\r\n <div class=\"modal-dialog\" [class.modal-lg]=\"large\" [class.modal-xl]=\"xl\" [class.modal-dialog-scrollable]=\"scrollable\" [class.modal-fullscreen]=\"fullscreen\">\r\n <div class=\"modal-content\">\r\n <div class=\"modal-header\" *ngIf=\"showHeader\">\r\n <ng-content select=\"header\"></ng-content>\r\n <h5 class=\"modal-title\" id=\"modal-lable-{{elementId}}\">{{title}}</h5>\r\n <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button>\r\n </div>\r\n <div class=\"modal-body\">\r\n {{text}}\r\n <ng-content></ng-content>\r\n </div>\r\n <div class=\"modal-footer\" *ngIf=\"showFooter\">\r\n <ng-content select=\"footer\"></ng-content>\r\n <button [class.visually-hidden]=\"!showOk\" [disabled]=\"disabledOk\" type=\"button\" class=\"btn {{cssButton()}}\" id=\"modal-ok-button-{{elementId}}\" (click)=\"ok()\"><i *ngIf=\"icon\" class=\"{{ icon }}\"></i> {{ okButtonText }}</button>\r\n <button [class.visually-hidden]=\"!showCancel\" type=\"button\" class=\"btn btn-secondary\" id=\"modal-cancel-button-{{elementId}}\" data-bs-dismiss=\"modal\"><i class=\"fa-solid fa-ban\"></i> {{ 'Action.Cancel' | translate }}</button>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }] });
303
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: RestoreModalComponent, decorators: [{
301
+ ZekRestoreModal.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: ZekRestoreModal, deps: [{ token: i1.TranslateService }], target: i0.ɵɵFactoryTarget.Component });
302
+ ZekRestoreModal.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.0", type: ZekRestoreModal, selector: "zek-restore-modal", usesInheritance: true, ngImport: i0, template: "<div (keydown.enter)=\"keyDown($event)\" class=\"modal fade\" data-bs-backdrop=\"static\" id=\"modal-{{elementId}}\" tabindex=\"-1\" attr.aria-labelledby=\"modal-lable-{{elementId}}\" aria-hidden=\"true\">\r\n <div class=\"modal-dialog\" [class.modal-lg]=\"large\" [class.modal-xl]=\"xl\" [class.modal-dialog-scrollable]=\"scrollable\" [class.modal-fullscreen]=\"fullscreen\">\r\n <div class=\"modal-content\">\r\n <div class=\"modal-header\" *ngIf=\"showHeader\">\r\n <ng-content select=\"header\"></ng-content>\r\n <h5 class=\"modal-title\" id=\"modal-lable-{{elementId}}\">{{title}}</h5>\r\n <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button>\r\n </div>\r\n <div class=\"modal-body\">\r\n {{text}}\r\n <ng-content></ng-content>\r\n </div>\r\n <div class=\"modal-footer\" *ngIf=\"showFooter\">\r\n <ng-content select=\"footer\"></ng-content>\r\n <button [class.visually-hidden]=\"!showOk\" [disabled]=\"disabledOk\" type=\"button\" class=\"btn {{cssButton()}}\" id=\"modal-ok-button-{{elementId}}\" (click)=\"ok()\"><i *ngIf=\"icon\" class=\"{{ icon }}\"></i> {{ okButtonText }}</button>\r\n <button [class.visually-hidden]=\"!showCancel\" type=\"button\" class=\"btn btn-secondary\" id=\"modal-cancel-button-{{elementId}}\" data-bs-dismiss=\"modal\"><i class=\"fa-solid fa-ban\"></i> {{ 'Action.Cancel' | translate }}</button>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }] });
303
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: ZekRestoreModal, decorators: [{
304
304
  type: Component,
305
305
  args: [{ selector: 'zek-restore-modal', template: "<div (keydown.enter)=\"keyDown($event)\" class=\"modal fade\" data-bs-backdrop=\"static\" id=\"modal-{{elementId}}\" tabindex=\"-1\" attr.aria-labelledby=\"modal-lable-{{elementId}}\" aria-hidden=\"true\">\r\n <div class=\"modal-dialog\" [class.modal-lg]=\"large\" [class.modal-xl]=\"xl\" [class.modal-dialog-scrollable]=\"scrollable\" [class.modal-fullscreen]=\"fullscreen\">\r\n <div class=\"modal-content\">\r\n <div class=\"modal-header\" *ngIf=\"showHeader\">\r\n <ng-content select=\"header\"></ng-content>\r\n <h5 class=\"modal-title\" id=\"modal-lable-{{elementId}}\">{{title}}</h5>\r\n <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button>\r\n </div>\r\n <div class=\"modal-body\">\r\n {{text}}\r\n <ng-content></ng-content>\r\n </div>\r\n <div class=\"modal-footer\" *ngIf=\"showFooter\">\r\n <ng-content select=\"footer\"></ng-content>\r\n <button [class.visually-hidden]=\"!showOk\" [disabled]=\"disabledOk\" type=\"button\" class=\"btn {{cssButton()}}\" id=\"modal-ok-button-{{elementId}}\" (click)=\"ok()\"><i *ngIf=\"icon\" class=\"{{ icon }}\"></i> {{ okButtonText }}</button>\r\n <button [class.visually-hidden]=\"!showCancel\" type=\"button\" class=\"btn btn-secondary\" id=\"modal-cancel-button-{{elementId}}\" data-bs-dismiss=\"modal\"><i class=\"fa-solid fa-ban\"></i> {{ 'Action.Cancel' | translate }}</button>\r\n </div>\r\n </div>\r\n </div>\r\n</div>" }]
306
306
  }], ctorParameters: function () { return [{ type: i1.TranslateService }]; } });
307
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvemVrL3NyYy9saWIvbW9kdWxlcy9tb2RhbC9tb2RhbC9tb2RhbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy96ZWsvc3JjL2xpYi9tb2R1bGVzL21vZGFsL21vZGFsL21vZGFsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFdkUsT0FBTyxFQUFnQixhQUFhLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2hHLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQzs7OztBQUd4RSxJQUFJLFlBQVksR0FBRyxDQUFDLENBQUM7QUFRckIsTUFBTSxPQUFPLGNBQWUsU0FBUSxhQUFhO0lBQzdDLFlBQTZCLFNBQTJCO1FBQ3BELEtBQUssRUFBRSxDQUFDO1FBRGlCLGNBQVMsR0FBVCxTQUFTLENBQWtCO1FBK0NoRCxZQUFPLEdBQVksSUFBSSxDQUFDO1FBU3hCLGdCQUFXLEdBQVksS0FBSyxDQUFDO1FBUzdCLGdCQUFXLEdBQVksSUFBSSxDQUFDO1FBVTVCLGNBQVMsR0FBWSxJQUFJLENBQUM7UUFrQnhCLFlBQU8sR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO1FBRWxDLGFBQVEsR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO1FBRW5DLFNBQUksR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO1FBRWhDLGtCQUFhLEdBQUcsYUFBYSxDQUFDLE9BQU8sQ0FBQztRQUt2QyxXQUFNLEdBQVks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QUMsQ0FBQztJQUMxQyxDQUFDO0lBdUJELElBQ0ksS0FBSztRQUNMLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUN2QixDQUFDO0lBQ0QsSUFBSSxLQUFLLENBQUMsQ0FBZTtRQUNyQixJQUFJLENBQUMsTUFBTSxHQUFHLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUdELElBQ0ksRUFBRTtRQUNGLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQztJQUNwQixDQUFDO0lBQ0QsSUFBSSxFQUFFLENBQUMsQ0FBZTtRQUNsQixJQUFJLENBQUMsR0FBRyxHQUFHLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUlELElBQ0ksVUFBVTtRQUNWLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQztJQUM1QixDQUFDO0lBQ0QsSUFBSSxVQUFVLENBQUMsQ0FBZTtRQUMxQixJQUFJLENBQUMsV0FBVyxHQUFHLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDNUMsQ0FBQztJQUdELElBQ0ksVUFBVTtRQUNWLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQztJQUM1QixDQUFDO0lBQ0QsSUFBSSxVQUFVLENBQUMsQ0FBZTtRQUMxQixJQUFJLENBQUMsV0FBVyxHQUFHLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDNUMsQ0FBQztJQUdELElBQ0ksVUFBVTtRQUNWLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQztJQUM1QixDQUFDO0lBQ0QsSUFBSSxVQUFVLENBQUMsQ0FBZTtRQUMxQixJQUFJLENBQUMsV0FBVyxHQUFHLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDNUMsQ0FBQztJQUdELElBQ0ksVUFBVTtRQUNWLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQztJQUM1QixDQUFDO0lBQ0QsSUFBSSxVQUFVLENBQUMsQ0FBZTtRQUMxQixJQUFJLENBQUMsV0FBVyxHQUFHLE9BQU8sQ0FB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Q0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEdBQVcsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssR0FBRyxHQUFHLENBQUMsQ0FBQztRQUNoRixTQUFTLENBQUMsR0FBRyxDQUFDLDBCQUEwQixDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsR0FBVyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxHQUFHLEdBQUcsQ0FBQyxDQUFDO1FBQ3RGLElBQUksQ0FBQyxhQUFhLEdBQUcsYUFBYSxDQUFDLE1BQU0sQ0FBQztJQUM5QyxDQUFDOztxSEFQUSx3QkFBd0I7eUdBQXhCLHdCQUF3QixtRkNwVHJDLDhsREFtQk07MkZEaVNPLHdCQUF3QjtrQkFKcEMsU0FBUzsrQkFDSSxzQkFBc0I7O0FBaUJwQyxNQUFNLE9BQU8scUJBQXNCLFNBQVEsY0FBYztJQUNyRCxZQUFZLFNBQTJCO1FBQ25DLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUNqQixJQUFJLENBQUMsSUFBSSxHQUFHLGFBQWEsQ0FBQztRQUMxQixTQUFTLENBQUMsR0FBRyxDQUFDLGdCQUFnQixDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsR0FBVyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxHQUFHLEdBQUcsQ0FBQyxDQUFDO1FBQzdFLFNBQVMsQ0FBQyxHQUFHLENBQUMsd0JBQXdCLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxHQUFXLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLEdBQUcsR0FBRyxDQUFDLENBQUM7UUFDcEYsSUFBSSxDQUFDLGFBQWEsR0FBRyxhQUFhLENBQUMsT0FBTyxDQUFDO0lBQy9DLENBQUM7O2tIQVBRLHFCQUFxQjtzR0FBckIscUJBQXFCLGdGQ2xVbEMsOGxEQW1CTTsyRkQrU08scUJBQXFCO2tCQUpqQyxTQUFTOytCQUNJLG1CQUFtQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT3V0cHV0LCBFdmVudEVtaXR0ZXIsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcclxuaW1wb3J0IHsgQm9vbGVhbklucHV0LCBDb3JlQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vY29tcG9uZW50cyc7XHJcbmltcG9ydCB7IEJvb3RzdHJhcEhlbHBlciwgQ29tcG9uZW50VHlwZSwgQ29udmVydCwgaGFuZGxlciwgUmFuZG9tSGVscGVyIH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMnO1xyXG5pbXBvcnQgeyBWYWxpZEV2ZW50QXJncyB9IGZyb20gJy4uLy4uLy4uL21vZGVscy92YWxpZC1ldmVudC1hcmdzLm1vZGVsJztcclxuXHJcbmRlY2xhcmUgbGV0IGJvb3RzdHJhcDogYW55O1xyXG5sZXQgbmV4dFVuaXF1ZUlkID0gMDtcclxuXHJcblxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ3play1tb2RhbCcsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vbW9kYWwuY29tcG9uZW50Lmh0bWwnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBNb2RhbENvbXBvbmVudCBleHRlbmRzIENvcmVDb21wb25lbnQge1xyXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSB0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UpIHtcclxuICAgICAgICBzdXBlcigpO1xyXG4gICAgICAgIHRoaXMuZWxlbWVudElkID0gUmFuZG9tSGVscGVyLnJhbmRvbUhleCgpO1xyXG4gICAgfVxyXG4gICAgb3ZlcnJpZGUgYXN5bmMgZGVzdHJveSgpIHtcclxuICAgICAgICBhd2FpdCBzdXBlci5kZXN0cm95KCk7XHJcbiAgICAgICAgdGhpcy5fbW9kYWw/LmRpc3Bvc2UoKTtcclxuICAgICAgICB0aGlzLl9tb2RhbCA9IG51bGw7XHJcblxyXG4gICAgICAgIGlmICh0aGlzLmhpZGRlbkhhbmRsZXIpIHtcclxuICAgICAgICAgICAgaGFuZGxlci5yZW1vdmVMaXN0ZW5lcih0aGlzLmhpZGRlbkhhbmRsZXIpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAodGhpcy5zaG93bkhhbmRsZXIpIHtcclxuICAgICAgICAgICAgaGFuZGxlci5yZW1vdmVMaXN0ZW5lcih0aGlzLnNob3duSGFuZGxlcik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgb3ZlcnJpZGUgaW5pdCgpIHtcclxuICAgICAgICBzdXBlci5pbml0KClcclxuICAgICAgICBpZiAoIXRoaXMub2tCdXR0b25UZXh0KSB7XHJcbiAgICAgICAgICAgIHRoaXMudHJhbnNsYXRlLmdldCgnQWN0aW9uLk9rJykuc3Vic2NyaWJlKHRleHQgPT4ge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5va0J1dHRvblRleHQgPSB0ZXh0O1xyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgICBsZXQgbW9kYWxFbCA9IHRoaXMuZ2V0TW9kYWxFbGVtZW50KCk7XHJcbiAgICAgICAgICAgIGlmIChtb2RhbEVsKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnNob3duSGFuZGxlciA9IGhhbmRsZXIuYWRkTGlzdGVuZXIobW9kYWxFbCwgJ3Nob3duLmJzLm1vZGFsJywgKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMub25TaG93bi5lbWl0KCk7XHJcbiAgICAgICAgICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgICAgICAgICB0aGlzLmhpZGRlbkhhbmRsZXIgPSBoYW5kbGVyLmFkZExpc3RlbmVyKG1vZGFsRWwsICdoaWRkZW4uYnMubW9kYWwnLCAoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5vbkhpZGRlbi5lbWl0KCk7XHJcbiAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0sIDEpO1xyXG4gICAgfVxyXG5cclxuXHJcblxyXG4gICAgc2hvd25IYW5kbGVyPzogbnVtYmVyIHwgbnVsbDtcclxuICAgIGhpZGRlbkhhbmRsZXI/OiBudW1iZXIgfCBudWxsO1xyXG5cclxuICAgIEBJbnB1dCgpIG1vZGVsOiBhbnk7XHJcbiAgICByZWFkb25seSBlbGVtZW50SWQ6IHN0cmluZztcclxuXHJcblxyXG4gICAgcHJpdmF0ZSBfc2hvd09rOiBib29sZWFuID0gdHJ1ZTtcclxuICAgIEBJbnB1dCgpXHJcbiAgICBnZXQgc2hvd09rKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9zaG93T2s7XHJcbiAgICB9XHJcbiAgICBzZXQgc2hvd09rKHY6IEJvb2xlYW5JbnB1dCkge1xyXG4gICAgICAgIHRoaXMuX3Nob3dPayA9IENvbnZlcnQudG9Cb29sZWFuKHYpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgX2Rpc2FibGVkT2s6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIEBJbnB1dCgpXHJcbiAgICBnZXQgZGlzYWJsZWRPaygpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fZGlzYWJsZWRPaztcclxuICAgIH1cclxuICAgIHNldCBkaXNhYmxlZE9rKHY6IEJvb2xlYW5JbnB1dCkge1xyXG4gICAgICAgIHRoaXMuX2Rpc2FibGVkT2sgPSBDb252ZXJ0LnRvQm9vbGVhbih2KTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIF9zaG93Q2FuY2VsOiBib29sZWFuID0gdHJ1ZTtcclxuICAgIEBJbnB1dCgpXHJcbiAgICBnZXQgc2hvd0NhbmNlbCgpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fc2hvd0NhbmNlbDtcclxuICAgIH1cclxuICAgIHNldCBzaG93Q2FuY2VsKHY6IEJvb2xlYW5JbnB1dCkge1xyXG4gICAgICAgIHRoaXMuX3Nob3dDYW5jZWwgPSBDb252ZXJ0LnRvQm9vbGVhbih2KTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgcHJpdmF0ZSBfYXV0b0hpZGU6IGJvb2xlYW4gPSB0cnVlO1xyXG4gICAgQElucHV0KClcclxuICAgIGdldCBhdXRvSGlkZSgpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fYXV0b0hpZGU7XHJcbiAgICB9XHJcbiAgICBzZXQgYXV0b0hpZGUodjogQm9vbGVhbklucHV0KSB7XHJcbiAgICAgICAgdGhpcy5fYXV0b0hpZGUgPSBDb252ZXJ0LnRvQm9vbGVhbih2KTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgQElucHV0KCkgdGl0bGU/OiBzdHJpbmcgfCBudWxsO1xyXG5cclxuICAgIEBJbnB1dCgpIHRleHQ/OiBzdHJpbmcgfCBudWxsO1xyXG5cclxuICAgIEBJbnB1dCgpIGljb24/OiBzdHJpbmcgfCBudWxsO1xyXG5cclxuICAgIEBJbnB1dCgpIG9rQnV0dG9uVGV4dD86IHN0cmluZyB8IG51bGw7XHJcblxyXG4gICAgQE91dHB1dCgpIG9uU2hvd24gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuXHJcbiAgICBAT3V0cHV0KCkgb25IaWRkZW4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuXHJcbiAgICBAT3V0cHV0KCkgb25PayA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG5cclxuICAgIEBJbnB1dCgpIGNvbXBvbmVudFR5cGUgPSBDb21wb25lbnRUeXBlLlByaW1hcnk7XHJcblxyXG5cclxuXHJcblxyXG4gICAgcHJpdmF0ZSBfbGFyZ2U6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIEBJbnB1dCgpXHJcbiAgICBnZXQgbGFyZ2UoKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2xhcmdlO1xyXG4gICAgfVxyXG4gICAgc2V0IGxhcmdlKHY6IEJvb2xlYW5JbnB1dCkge1xyXG4gICAgICAgIHRoaXMuX2xhcmdlID0gQ29udmVydC50b0Jvb2xlYW4odik7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBfeGw6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIEBJbnB1dCgpXHJcbiAgICBnZXQgeGwoKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX3hsO1xyXG4gICAgfVxyXG4gICAgc2V0IHhsKHY6IEJvb2xlYW5JbnB1dCkge1xyXG4gICAgICAgIHRoaXMuX3hsID0gQ29udmVydC50b0Jvb2xlYW4odik7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIHByaXZhdGUgX3Njcm9sbGFibGU6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIEBJbnB1dCgpXHJcbiAgICBnZXQgc2Nyb2xsYWJsZSgpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fc2Nyb2xsYWJsZTtcclxuICAgIH1cclxuICAgIHNldCBzY3JvbGxhYmxlKHY6IEJvb2xlYW5JbnB1dCkge1xyXG4gICAgICAgIHRoaXMuX3Njcm9sbGFibGUgPSBDb252ZXJ0LnRvQm9vbGVhbih2KTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIF9mdWxsc2NyZWVuOiBib29sZWFuID0gZmFsc2U7XHJcbiAgICBASW5wdXQoKVxyXG4gICAgZ2V0IGZ1bGxzY3JlZW4oKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2Z1bGxzY3JlZW47XHJcbiAgICB9XHJcbiAgICBzZXQgZnVsbHNjcmVlbih2OiBCb29sZWFuSW5wdXQpIHtcclxuICAgICAgICB0aGlzLl9mdWxsc2NyZWVuID0gQ29udmVydC50b0Jvb2xlYW4odik7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBfc2hvd0hlYWRlcjogYm9vbGVhbiA9IHRydWU7XHJcbiAgICBASW5wdXQoKVxyXG4gICAgZ2V0IHNob3dIZWFkZXIoKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX3Nob3dIZWFkZXI7XHJcbiAgICB9XHJcbiAgICBzZXQgc2hvd0hlYWRlcih2OiBCb29sZWFuSW5wdXQpIHtcclxuICAgICAgICB0aGlzLl9zaG93SGVhZGVyID0gQ29udmVydC50b0Jvb2xlYW4odik7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBfc2hvd0Zvb3RlcjogYm9vbGVhbiA9IHRydWU7XHJcbiAgICBASW5wdXQoKVxyXG4gICAgZ2V0IHNob3dGb290ZXIoKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX3Nob3dGb290ZXI7XHJcbiAgICB9XHJcbiAgICBzZXQgc2hvd0Zvb3Rlcih2OiBCb29sZWFuSW5wdXQpIHtcclxuICAgICAgICB0aGlzLl9zaG93Rm9vdGVyID0gQ29udmVydC50b0Jvb2xlYW4odik7XHJcbiAgICB9XHJcblxyXG5cclxuXHJcblxyXG4gICAgQE91dHB1dCgpIG9uVmFsaWRhdGluZyA9IG5ldyBFdmVudEVtaXR0ZXI8VmFsaWRFdmVudEFyZ3M+KGZhbHNlKTtcclxuICAgIC8vIEBJbnB1dCgpIHh4bDogYm9vbGVhbjtcclxuXHJcbiAgICBwcml2YXRlIF9tb2RhbDogYW55O1xyXG4gICAgLy8gcHVibGljIGdldCBtb2RhbCgpOiBhbnkge1xyXG4gICAgLy8gICAgIGlmICghdGhpcy5fbW9kYWwpIHtcclxuICAgIC8vICAgICAgICAgdGhpcy5nZXRNb2RhbCgpO1xyXG4gICAgLy8gICAgIH1cclxuICAgIC8vICAgICByZXR1cm4gdGhpcy5fbW9kYWw7XHJcbiAgICAvLyB9XHJcbiAgICAvLyBwdWJsaWMgc2V0IG1vZGFsKHY6IGFueSkge1xyXG4gICAgLy8gICAgIHRoaXMuX21vZGFsID0gdjtcclxuICAgIC8vIH1cclxuXHJcbiAgICBwcm90ZWN0ZWQgZ2V0TW9kYWxFbGVtZW50KCkge1xyXG4gICAgICAgIHJldHVybiBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnbW9kYWwtJyArIHRoaXMuZWxlbWVudElkKTtcclxuICAgIH1cclxuICAgIHByb3RlY3RlZCBnZXRNb2RhbCgpIHtcclxuICAgICAgICBsZXQgbW9kYWxFbCA9IHRoaXMuZ2V0TW9kYWxFbGVtZW50KCk7XHJcbiAgICAgICAgcmV0dXJuIG5ldyBib290c3RyYXAuTW9kYWwobW9kYWxFbCwgeyBiYWNrZHJvcDogJ3N0YXRpYycgfSk7XHJcbiAgICB9XHJcblxyXG5cclxuXHJcblxyXG4gICAgY3NzQnV0dG9uKCk6IHN0cmluZyB7XHJcbiAgICAgICAgcmV0dXJuIEJvb3RzdHJhcEhlbHBlci5jc3NCdXR0b24odGhpcy5jb21wb25lbnRUeXBlKTtcclxuICAgIH1cclxuXHJcbiAgICAvLyBwcml2YXRlIGlzU2hvd24gPSBmYWxzZTtcclxuICAgIHNob3cobW9kZWw/OiBhbnkpIHtcclxuICAgICAgICBpZiAoIW1vZGVsKSBtb2RlbCA9IHt9O1xyXG4gICAgICAgIHRoaXMubW9kZWwgPSBtb2RlbDtcclxuXHJcbiAgICAgICAgLy8gdGhpcy5tb2RhbD8uc2hvdygpO1xyXG5cclxuXHJcbiAgICAgICAgaWYgKCF0aGlzLl9tb2RhbCkge1xyXG4gICAgICAgICAgICB0aGlzLl9tb2RhbCA9IHRoaXMuZ2V0TW9kYWwoKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKHRoaXMuX21vZGFsKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX21vZGFsLnNob3coKTtcclxuICAgICAgICAgICAgLy8gdGhpcy5pc1Nob3duID0gdHJ1ZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgaGlkZSgpIHtcclxuICAgICAgICAvLyB0aGlzLm1vZGFsPy5oaWRlKCk7XHJcblxyXG4gICAgICAgIC8vIGlmICh0aGlzLmlzU2hvd24pIHtcclxuICAgICAgICAvLyAgICAgaWYgKHRoaXMuX21vZGFsKSB7XHJcbiAgICAgICAgLy8gICAgICAgICB0aGlzLl9tb2RhbC5oaWRlKCk7XHJcbiAgICAgICAgLy8gICAgICAgICB0aGlzLmlzU2hvd24gPSBmYWxzZTtcclxuICAgICAgICAvLyAgICAgfVxyXG4gICAgICAgIC8vIH0gZWxzZSB7XHJcblxyXG4gICAgICAgIC8vIH1cclxuXHJcbiAgICAgICAgaWYgKHRoaXMuX21vZGFsKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX21vZGFsLmhpZGUoKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICAgIGxldCBidG4gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnbW9kYWwtY2FuY2VsLWJ1dHRvbi0nICsgdGhpcy5lbGVtZW50SWQpO1xyXG4gICAgICAgICAgICBpZiAoYnRuKSB7XHJcbiAgICAgICAgICAgICAgICBidG4uY2xpY2soKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBvaygpIHtcclxuICAgICAgICBsZXQgZXZlbnQgPSBuZXcgVmFsaWRFdmVudEFyZ3MoKTtcclxuICAgICAgICB0aGlzLm9uVmFsaWRhdGluZy5lbWl0KGV2ZW50KTtcclxuICAgICAgICBpZiAoIWV2ZW50LnZhbGlkKSByZXR1cm47XHJcblxyXG4gICAgICAgIGlmICh0aGlzLmF1dG9IaWRlKVxyXG4gICAgICAgICAgICB0aGlzLmhpZGUoKTtcclxuXHJcbiAgICAgICAgdGhpcy5vbk9rLmVtaXQodGhpcy5tb2RlbCk7XHJcbiAgICB9XHJcblxyXG4gICAga2V5RG93bihlOiBFdmVudCkge1xyXG4gICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcclxuICAgICAgICB0aGlzLm9rKCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICd6ZWstZGVsZXRlLW1vZGFsJyxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi9tb2RhbC5jb21wb25lbnQuaHRtbCdcclxufSlcclxuZXhwb3J0IGNsYXNzIERlbGV0ZU1vZGFsQ29tcG9uZW50IGV4dGVuZHMgTW9kYWxDb21wb25lbnQge1xyXG4gICAgY29uc3RydWN0b3IodHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlKSB7XHJcbiAgICAgICAgc3VwZXIodHJhbnNsYXRlKTtcclxuICAgICAgICB0aGlzLmljb24gPSAnZmFzIGZhLWZhcyBmYS10cmFzaCc7XHJcbiAgICAgICAgdHJhbnNsYXRlLmdldCgnQWN0aW9uLkRlbGV0ZScpLnN1YnNjcmliZSgocmVzOiBzdHJpbmcpID0+IHRoaXMudGl0bGUgPSByZXMpO1xyXG4gICAgICAgIHRyYW5zbGF0ZS5nZXQoJ0FsZXJ0LkRlbGV0ZVF1ZXN0aW9uJykuc3Vic2NyaWJlKChyZXM6IHN0cmluZykgPT4gdGhpcy50ZXh0ID0gcmVzKTtcclxuICAgICAgICB0aGlzLmNvbXBvbmVudFR5cGUgPSBDb21wb25lbnRUeXBlLkRlbGV0ZTtcclxuICAgIH1cclxufVxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ3play1hcHByb3ZlLW1vZGFsJyxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi9tb2RhbC5jb21wb25lbnQuaHRtbCdcclxufSlcclxuZXhwb3J0IGNsYXNzIEFwcHJvdmVNb2RhbENvbXBvbmVudCBleHRlbmRzIE1vZGFsQ29tcG9uZW50IHtcclxuICAgIGNvbnN0cnVjdG9yKHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSkge1xyXG4gICAgICAgIHN1cGVyKHRyYW5zbGF0ZSk7XHJcbiAgICAgICAgdGhpcy5pY29uID0gJ2ZhcyBmYS10aHVtYnMtdXAnO1xyXG4gICAgICAgIHRyYW5zbGF0ZS5nZXQoJ0FjdGlvbi5BcHByb3ZlJykuc3Vic2NyaWJlKChyZXM6IHN0cmluZykgPT4gdGhpcy50aXRsZSA9IHJlcyk7XHJcbiAgICAgICAgdHJhbnNsYXRlLmdldCgnQWxlcnQuQXBwcm92ZVF1ZXN0aW9uJykuc3Vic2NyaWJlKChyZXM6IHN0cmluZykgPT4gdGhpcy50ZXh0ID0gcmVzKTtcclxuICAgICAgICB0aGlzLmNvbXBvbmVudFR5cGUgPSBDb21wb25lbnRUeXBlLlN1Y2Nlc3M7XHJcbiAgICB9XHJcbn1cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ3play1zdWJtaXQtbW9kYWwnLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL21vZGFsLmNvbXBvbmVudC5odG1sJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgU3VibWl0TW9kYWxDb21wb25lbnQgZXh0ZW5kcyBNb2RhbENvbXBvbmVudCB7XHJcbiAgICBjb25zdHJ1Y3Rvcih0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UpIHtcclxuICAgICAgICBzdXBlcih0cmFuc2xhdGUpO1xyXG4gICAgICAgIHRoaXMuaWNvbiA9ICdmYXMgZmEtdGh1bWJzLXVwJztcclxuICAgICAgICB0cmFuc2xhdGUuZ2V0KCdBY3Rpb24uU3VibWl0Jykuc3Vic2NyaWJlKChyZXM6IHN0cmluZykgPT4gdGhpcy50aXRsZSA9IHJlcyk7XHJcbiAgICAgICAgdHJhbnNsYXRlLmdldCgnQWxlcnQuU3VibWl0UXVlc3Rpb24nKS5zdWJzY3JpYmUoKHJlczogc3RyaW5nKSA9PiB0aGlzLnRleHQgPSByZXMpO1xyXG4gICAgICAgIHRoaXMuY29tcG9uZW50VHlwZSA9IENvbXBvbmVudFR5cGUuU3VjY2VzcztcclxuICAgIH1cclxufVxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnemVrLWRpc2FwcHJvdmUtbW9kYWwnLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL21vZGFsLmNvbXBvbmVudC5odG1sJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgRGlzYXBwcm92ZU1vZGFsQ29tcG9uZW50IGV4dGVuZHMgTW9kYWxDb21wb25lbnQge1xyXG4gICAgY29uc3RydWN0b3IodHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlKSB7XHJcbiAgICAgICAgc3VwZXIodHJhbnNsYXRlKTtcclxuICAgICAgICB0aGlzLmljb24gPSAnZmFzIGZhLXRodW1icy1kb3duJztcclxuICAgICAgICB0cmFuc2xhdGUuZ2V0KCdBY3Rpb24uRGlzYXBwcm92ZScpLnN1YnNjcmliZSgocmVzOiBzdHJpbmcpID0+IHRoaXMudGl0bGUgPSByZXMpO1xyXG4gICAgICAgIHRyYW5zbGF0ZS5nZXQoJ0FsZXJ0LkRpc2FwcHJvdmVRdWVzdGlvbicpLnN1YnNjcmliZSgocmVzOiBzdHJpbmcpID0+IHRoaXMudGV4dCA9IHJlcyk7XHJcbiAgICAgICAgdGhpcy5jb21wb25lbnRUeXBlID0gQ29tcG9uZW50VHlwZS5EZWxldGU7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICd6ZWstcmVzdG9yZS1tb2RhbCcsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vbW9kYWwuY29tcG9uZW50Lmh0bWwnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBSZXN0b3JlTW9kYWxDb21wb25lbnQgZXh0ZW5kcyBNb2RhbENvbXBvbmVudCB7XHJcbiAgICBjb25zdHJ1Y3Rvcih0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UpIHtcclxuICAgICAgICBzdXBlcih0cmFuc2xhdGUpO1xyXG4gICAgICAgIHRoaXMuaWNvbiA9ICdmYXMgZmEtcmVkbyc7XHJcbiAgICAgICAgdHJhbnNsYXRlLmdldCgnQWN0aW9uLlJlc3RvcmUnKS5zdWJzY3JpYmUoKHJlczogc3RyaW5nKSA9PiB0aGlzLnRpdGxlID0gcmVzKTtcclxuICAgICAgICB0cmFuc2xhdGUuZ2V0KCdBY3Rpb24uUmVzdG9yZVF1ZXN0aW9uJykuc3Vic2NyaWJlKChyZXM6IHN0cmluZykgPT4gdGhpcy50ZXh0ID0gcmVzKTtcclxuICAgICAgICB0aGlzLmNvbXBvbmVudFR5cGUgPSBDb21wb25lbnRUeXBlLlN1Y2Nlc3M7XHJcbiAgICB9XHJcbn0iLCI8ZGl2IChrZXlkb3duLmVudGVyKT1cImtleURvd24oJGV2ZW50KVwiIGNsYXNzPVwibW9kYWwgZmFkZVwiIGRhdGEtYnMtYmFja2Ryb3A9XCJzdGF0aWNcIiBpZD1cIm1vZGFsLXt7ZWxlbWVudElkfX1cIiB0YWJpbmRleD1cIi0xXCIgYXR0ci5hcmlhLWxhYmVsbGVkYnk9XCJtb2RhbC1sYWJsZS17e2VsZW1lbnRJZH19XCIgYXJpYS1oaWRkZW49XCJ0cnVlXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwibW9kYWwtZGlhbG9nXCIgW2NsYXNzLm1vZGFsLWxnXT1cImxhcmdlXCIgW2NsYXNzLm1vZGFsLXhsXT1cInhsXCIgW2NsYXNzLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlXT1cInNjcm9sbGFibGVcIiBbY2xhc3MubW9kYWwtZnVsbHNjcmVlbl09XCJmdWxsc2NyZWVuXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cIm1vZGFsLWNvbnRlbnRcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1vZGFsLWhlYWRlclwiICpuZ0lmPVwic2hvd0hlYWRlclwiPlxyXG4gICAgICAgICAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiaGVhZGVyXCI+PC9uZy1jb250ZW50PlxyXG4gICAgICAgICAgICAgICAgPGg1IGNsYXNzPVwibW9kYWwtdGl0bGVcIiBpZD1cIm1vZGFsLWxhYmxlLXt7ZWxlbWVudElkfX1cIj57e3RpdGxlfX08L2g1PlxyXG4gICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJidG4tY2xvc2VcIiBkYXRhLWJzLWRpc21pc3M9XCJtb2RhbFwiIGFyaWEtbGFiZWw9XCJDbG9zZVwiPjwvYnV0dG9uPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1vZGFsLWJvZHlcIj5cclxuICAgICAgICAgICAgICAgIHt7dGV4dH19XHJcbiAgICAgICAgICAgICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibW9kYWwtZm9vdGVyXCIgKm5nSWY9XCJzaG93Rm9vdGVyXCI+XHJcbiAgICAgICAgICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJmb290ZXJcIj48L25nLWNvbnRlbnQ+XHJcbiAgICAgICAgICAgICAgICA8YnV0dG9uIFtjbGFzcy52aXN1YWxseS1oaWRkZW5dPVwiIXNob3dPa1wiIFtkaXNhYmxlZF09XCJkaXNhYmxlZE9rXCIgdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiYnRuIHt7Y3NzQnV0dG9uKCl9fVwiIGlkPVwibW9kYWwtb2stYnV0dG9uLXt7ZWxlbWVudElkfX1cIiAoY2xpY2spPVwib2soKVwiPjxpICpuZ0lmPVwiaWNvblwiIGNsYXNzPVwie3sgaWNvbiB9fVwiPjwvaT4ge3sgb2tCdXR0b25UZXh0IH19PC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICA8YnV0dG9uIFtjbGFzcy52aXN1YWxseS1oaWRkZW5dPVwiIXNob3dDYW5jZWxcIiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJidG4gYnRuLXNlY29uZGFyeVwiIGlkPVwibW9kYWwtY2FuY2VsLWJ1dHRvbi17e2VsZW1lbnRJZH19XCIgZGF0YS1icy1kaXNtaXNzPVwibW9kYWxcIj48aSBjbGFzcz1cImZhLXNvbGlkIGZhLWJhblwiPjwvaT4ge3sgJ0FjdGlvbi5DYW5jZWwnIHwgdHJhbnNsYXRlIH19PC9idXR0b24+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbjwvZGl2PiJdfQ==
307
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvemVrL3NyYy9saWIvbW9kdWxlcy9tb2RhbC9tb2RhbC9tb2RhbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy96ZWsvc3JjL2xpYi9tb2R1bGVzL21vZGFsL21vZGFsL21vZGFsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFdkUsT0FBTyxFQUFnQixhQUFhLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2hHLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQzs7OztBQUd4RSxJQUFJLFlBQVksR0FBRyxDQUFDLENBQUM7QUFRckIsTUFBTSxPQUFPLFFBQVMsU0FBUSxhQUFhO0lBQ3ZDLFlBQTZCLFNBQTJCO1FBQ3BELEtBQUssRUFBRSxDQUFDO1FBRGlCLGNBQVMsR0FBVCxTQUFTLENBQWtCO1FBK0NoRCxZQUFPLEdBQVksSUFBSSxDQUFDO1FBU3hCLGdCQUFXLEdBQVksS0FBSyxDQUFDO1FBUzdCLGdCQUFXLEdBQVksSUFBSSxDQUFDO1FBVTVCLGNBQVMsR0FBWSxJQUFJLENBQUM7UUFrQnhCLFlBQU8sR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO1FBRWxDLGFBQVEsR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO1FBRW5DLFNBQUksR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO1FBRWhDLGtCQUFhLEdBQUcsYUFBYSxDQUFDLE9BQU8sQ0FBQztRQUt2QyxXQUFNLEdBQVks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QUFDLFNBQVMsQ0FBQyxDQUFDLEdBQVcsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssR0FBRyxHQUFHLENBQUMsQ0FBQztRQUNoRixTQUFTLENBQUMsR0FBRyxDQUFDLDBCQUEwQixDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsR0FBVyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxHQUFHLEdBQUcsQ0FBQyxDQUFDO1FBQ3RGLElBQUksQ0FBQyxhQUFhLEdBQUcsYUFBYSxDQUFDLE1BQU0sQ0FBQztJQUM5QyxDQUFDOzsrR0FQUSxrQkFBa0I7bUdBQWxCLGtCQUFrQixtRkNwVC9CLDhsREFtQk07MkZEaVNPLGtCQUFrQjtrQkFKOUIsU0FBUzsrQkFDSSxzQkFBc0I7O0FBaUJwQyxNQUFNLE9BQU8sZUFBZ0IsU0FBUSxRQUFRO0lBQ3pDLFlBQVksU0FBMkI7UUFDbkMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ2pCLElBQUksQ0FBQyxJQUFJLEdBQUcsYUFBYSxDQUFDO1FBQzFCLFNBQVMsQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxHQUFXLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLEdBQUcsR0FBRyxDQUFDLENBQUM7UUFDN0UsU0FBUyxDQUFDLEdBQUcsQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEdBQVcsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksR0FBRyxHQUFHLENBQUMsQ0FBQztRQUNwRixJQUFJLENBQUMsYUFBYSxHQUFHLGFBQWEsQ0FBQyxPQUFPLENBQUM7SUFDL0MsQ0FBQzs7NEdBUFEsZUFBZTtnR0FBZixlQUFlLGdGQ2xVNUIsOGxEQW1CTTsyRkQrU08sZUFBZTtrQkFKM0IsU0FBUzsrQkFDSSxtQkFBbUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE91dHB1dCwgRXZlbnRFbWl0dGVyLCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XHJcbmltcG9ydCB7IEJvb2xlYW5JbnB1dCwgQ29yZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL2NvbXBvbmVudHMnO1xyXG5pbXBvcnQgeyBCb290c3RyYXBIZWxwZXIsIENvbXBvbmVudFR5cGUsIENvbnZlcnQsIGhhbmRsZXIsIFJhbmRvbUhlbHBlciB9IGZyb20gJy4uLy4uLy4uL3V0aWxzJztcclxuaW1wb3J0IHsgVmFsaWRFdmVudEFyZ3MgfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvdmFsaWQtZXZlbnQtYXJncy5tb2RlbCc7XHJcblxyXG5kZWNsYXJlIGxldCBib290c3RyYXA6IGFueTtcclxubGV0IG5leHRVbmlxdWVJZCA9IDA7XHJcblxyXG5cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICd6ZWstbW9kYWwnLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL21vZGFsLmNvbXBvbmVudC5odG1sJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgWmVrTW9kYWwgZXh0ZW5kcyBDb3JlQ29tcG9uZW50IHtcclxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlKSB7XHJcbiAgICAgICAgc3VwZXIoKTtcclxuICAgICAgICB0aGlzLmVsZW1lbnRJZCA9IFJhbmRvbUhlbHBlci5yYW5kb21IZXgoKTtcclxuICAgIH1cclxuICAgIG92ZXJyaWRlIGFzeW5jIGRlc3Ryb3koKSB7XHJcbiAgICAgICAgYXdhaXQgc3VwZXIuZGVzdHJveSgpO1xyXG4gICAgICAgIHRoaXMuX21vZGFsPy5kaXNwb3NlKCk7XHJcbiAgICAgICAgdGhpcy5fbW9kYWwgPSBudWxsO1xyXG5cclxuICAgICAgICBpZiAodGhpcy5oaWRkZW5IYW5kbGVyKSB7XHJcbiAgICAgICAgICAgIGhhbmRsZXIucmVtb3ZlTGlzdGVuZXIodGhpcy5oaWRkZW5IYW5kbGVyKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKHRoaXMuc2hvd25IYW5kbGVyKSB7XHJcbiAgICAgICAgICAgIGhhbmRsZXIucmVtb3ZlTGlzdGVuZXIodGhpcy5zaG93bkhhbmRsZXIpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIG92ZXJyaWRlIGluaXQoKSB7XHJcbiAgICAgICAgc3VwZXIuaW5pdCgpXHJcbiAgICAgICAgaWYgKCF0aGlzLm9rQnV0dG9uVGV4dCkge1xyXG4gICAgICAgICAgICB0aGlzLnRyYW5zbGF0ZS5nZXQoJ0FjdGlvbi5PaycpLnN1YnNjcmliZSh0ZXh0ID0+IHtcclxuICAgICAgICAgICAgICAgIHRoaXMub2tCdXR0b25UZXh0ID0gdGV4dDtcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgbGV0IG1vZGFsRWwgPSB0aGlzLmdldE1vZGFsRWxlbWVudCgpO1xyXG4gICAgICAgICAgICBpZiAobW9kYWxFbCkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5zaG93bkhhbmRsZXIgPSBoYW5kbGVyLmFkZExpc3RlbmVyKG1vZGFsRWwsICdzaG93bi5icy5tb2RhbCcsICgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLm9uU2hvd24uZW1pdCgpO1xyXG4gICAgICAgICAgICAgICAgfSk7XHJcblxyXG4gICAgICAgICAgICAgICAgdGhpcy5oaWRkZW5IYW5kbGVyID0gaGFuZGxlci5hZGRMaXN0ZW5lcihtb2RhbEVsLCAnaGlkZGVuLmJzLm1vZGFsJywgKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMub25IaWRkZW4uZW1pdCgpO1xyXG4gICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9LCAxKTtcclxuICAgIH1cclxuXHJcblxyXG5cclxuICAgIHNob3duSGFuZGxlcj86IG51bWJlciB8IG51bGw7XHJcbiAgICBoaWRkZW5IYW5kbGVyPzogbnVtYmVyIHwgbnVsbDtcclxuXHJcbiAgICBASW5wdXQoKSBtb2RlbDogYW55O1xyXG4gICAgcmVhZG9ubHkgZWxlbWVudElkOiBzdHJpbmc7XHJcblxyXG5cclxuICAgIHByaXZhdGUgX3Nob3dPazogYm9vbGVhbiA9IHRydWU7XHJcbiAgICBASW5wdXQoKVxyXG4gICAgZ2V0IHNob3dPaygpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fc2hvd09rO1xyXG4gICAgfVxyXG4gICAgc2V0IHNob3dPayh2OiBCb29sZWFuSW5wdXQpIHtcclxuICAgICAgICB0aGlzLl9zaG93T2sgPSBDb252ZXJ0LnRvQm9vbGVhblByb3BlcnR5KHYpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgX2Rpc2FibGVkT2s6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIEBJbnB1dCgpXHJcbiAgICBnZXQgZGlzYWJsZWRPaygpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fZGlzYWJsZWRPaztcclxuICAgIH1cclxuICAgIHNldCBkaXNhYmxlZE9rKHY6IEJvb2xlYW5JbnB1dCkge1xyXG4gICAgICAgIHRoaXMuX2Rpc2FibGVkT2sgPSBDb252ZXJ0LnRvQm9vbGVhblByb3BlcnR5KHYpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgX3Nob3dDYW5jZWw6IGJvb2xlYW4gPSB0cnVlO1xyXG4gICAgQElucHV0KClcclxuICAgIGdldCBzaG93Q2FuY2VsKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9zaG93Q2FuY2VsO1xyXG4gICAgfVxyXG4gICAgc2V0IHNob3dDYW5jZWwodjogQm9vbGVhbklucHV0KSB7XHJcbiAgICAgICAgdGhpcy5fc2hvd0NhbmNlbCA9IENvbnZlcnQudG9Cb29sZWFuUHJvcGVydHkodik7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIHByaXZhdGUgX2F1dG9IaWRlOiBib29sZWFuID0gdHJ1ZTtcclxuICAgIEBJbnB1dCgpXHJcbiAgICBnZXQgYXV0b0hpZGUoKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2F1dG9IaWRlO1xyXG4gICAgfVxyXG4gICAgc2V0IGF1dG9IaWRlKHY6IEJvb2xlYW5JbnB1dCkge1xyXG4gICAgICAgIHRoaXMuX2F1dG9IaWRlID0gQ29udmVydC50b0Jvb2xlYW5Qcm9wZXJ0eSh2KTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgQElucHV0KCkgdGl0bGU/OiBzdHJpbmcgfCBudWxsO1xyXG5cclxuICAgIEBJbnB1dCgpIHRleHQ/OiBzdHJpbmcgfCBudWxsO1xyXG5cclxuICAgIEBJbnB1dCgpIGljb24/OiBzdHJpbmcgfCBudWxsO1xyXG5cclxuICAgIEBJbnB1dCgpIG9rQnV0dG9uVGV4dD86IHN0cmluZyB8IG51bGw7XHJcblxyXG4gICAgQE91dHB1dCgpIG9uU2hvd24gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuXHJcbiAgICBAT3V0cHV0KCkgb25IaWRkZW4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuXHJcbiAgICBAT3V0cHV0KCkgb25PayA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG5cclxuICAgIEBJbnB1dCgpIGNvbXBvbmVudFR5cGUgPSBDb21wb25lbnRUeXBlLlByaW1hcnk7XHJcblxyXG5cclxuXHJcblxyXG4gICAgcHJpdmF0ZSBfbGFyZ2U6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIEBJbnB1dCgpXHJcbiAgICBnZXQgbGFyZ2UoKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2xhcmdlO1xyXG4gICAgfVxyXG4gICAgc2V0IGxhcmdlKHY6IEJvb2xlYW5JbnB1dCkge1xyXG4gICAgICAgIHRoaXMuX2xhcmdlID0gQ29udmVydC50b0Jvb2xlYW5Qcm9wZXJ0eSh2KTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIF94bDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gICAgQElucHV0KClcclxuICAgIGdldCB4bCgpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5feGw7XHJcbiAgICB9XHJcbiAgICBzZXQgeGwodjogQm9vbGVhbklucHV0KSB7XHJcbiAgICAgICAgdGhpcy5feGwgPSBDb252ZXJ0LnRvQm9vbGVhblByb3BlcnR5KHYpO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICBwcml2YXRlIF9zY3JvbGxhYmxlOiBib29sZWFuID0gZmFsc2U7XHJcbiAgICBASW5wdXQoKVxyXG4gICAgZ2V0IHNjcm9sbGFibGUoKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX3Njcm9sbGFibGU7XHJcbiAgICB9XHJcbiAgICBzZXQgc2Nyb2xsYWJsZSh2OiBCb29sZWFuSW5wdXQpIHtcclxuICAgICAgICB0aGlzLl9zY3JvbGxhYmxlID0gQ29udmVydC50b0Jvb2xlYW5Qcm9wZXJ0eSh2KTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIF9mdWxsc2NyZWVuOiBib29sZWFuID0gZmFsc2U7XHJcbiAgICBASW5wdXQoKVxyXG4gICAgZ2V0IGZ1bGxzY3JlZW4oKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2Z1bGxzY3JlZW47XHJcbiAgICB9XHJcbiAgICBzZXQgZnVsbHNjcmVlbih2OiBCb29sZWFuSW5wdXQpIHtcclxuICAgICAgICB0aGlzLl9mdWxsc2NyZWVuID0gQ29udmVydC50b0Jvb2xlYW5Qcm9wZXJ0eSh2KTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIF9zaG93SGVhZGVyOiBib29sZWFuID0gdHJ1ZTtcclxuICAgIEBJbnB1dCgpXHJcbiAgICBnZXQgc2hvd0hlYWRlcigpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fc2hvd0hlYWRlcjtcclxuICAgIH1cclxuICAgIHNldCBzaG93SGVhZGVyKHY6IEJvb2xlYW5JbnB1dCkge1xyXG4gICAgICAgIHRoaXMuX3Nob3dIZWFkZXIgPSBDb252ZXJ0LnRvQm9vbGVhblByb3BlcnR5KHYpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgX3Nob3dGb290ZXI6IGJvb2xlYW4gPSB0cnVlO1xyXG4gICAgQElucHV0KClcclxuICAgIGdldCBzaG93Rm9vdGVyKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9zaG93Rm9vdGVyO1xyXG4gICAgfVxyXG4gICAgc2V0IHNob3dGb290ZXIodjogQm9vbGVhbklucHV0KSB7XHJcbiAgICAgICAgdGhpcy5fc2hvd0Zvb3RlciA9IENvbnZlcnQudG9Cb29sZWFuUHJvcGVydHkodik7XHJcbiAgICB9XHJcblxyXG5cclxuXHJcblxyXG4gICAgQE91dHB1dCgpIG9uVmFsaWRhdGluZyA9IG5ldyBFdmVudEVtaXR0ZXI8VmFsaWRFdmVudEFyZ3M+KGZhbHNlKTtcclxuICAgIC8vIEBJbnB1dCgpIHh4bDogYm9vbGVhbjtcclxuXHJcbiAgICBwcml2YXRlIF9tb2RhbDogYW55O1xyXG4gICAgLy8gcHVibGljIGdldCBtb2RhbCgpOiBhbnkge1xyXG4gICAgLy8gICAgIGlmICghdGhpcy5fbW9kYWwpIHtcclxuICAgIC8vICAgICAgICAgdGhpcy5nZXRNb2RhbCgpO1xyXG4gICAgLy8gICAgIH1cclxuICAgIC8vICAgICByZXR1cm4gdGhpcy5fbW9kYWw7XHJcbiAgICAvLyB9XHJcbiAgICAvLyBwdWJsaWMgc2V0IG1vZGFsKHY6IGFueSkge1xyXG4gICAgLy8gICAgIHRoaXMuX21vZGFsID0gdjtcclxuICAgIC8vIH1cclxuXHJcbiAgICBwcm90ZWN0ZWQgZ2V0TW9kYWxFbGVtZW50KCkge1xyXG4gICAgICAgIHJldHVybiBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnbW9kYWwtJyArIHRoaXMuZWxlbWVudElkKTtcclxuICAgIH1cclxuICAgIHByb3RlY3RlZCBnZXRNb2RhbCgpIHtcclxuICAgICAgICBsZXQgbW9kYWxFbCA9IHRoaXMuZ2V0TW9kYWxFbGVtZW50KCk7XHJcbiAgICAgICAgcmV0dXJuIG5ldyBib290c3RyYXAuTW9kYWwobW9kYWxFbCwgeyBiYWNrZHJvcDogJ3N0YXRpYycgfSk7XHJcbiAgICB9XHJcblxyXG5cclxuXHJcblxyXG4gICAgY3NzQnV0dG9uKCk6IHN0cmluZyB7XHJcbiAgICAgICAgcmV0dXJuIEJvb3RzdHJhcEhlbHBlci5jc3NCdXR0b24odGhpcy5jb21wb25lbnRUeXBlKTtcclxuICAgIH1cclxuXHJcbiAgICAvLyBwcml2YXRlIGlzU2hvd24gPSBmYWxzZTtcclxuICAgIHNob3cobW9kZWw/OiBhbnkpIHtcclxuICAgICAgICBpZiAoIW1vZGVsKSBtb2RlbCA9IHt9O1xyXG4gICAgICAgIHRoaXMubW9kZWwgPSBtb2RlbDtcclxuXHJcbiAgICAgICAgLy8gdGhpcy5tb2RhbD8uc2hvdygpO1xyXG5cclxuXHJcbiAgICAgICAgaWYgKCF0aGlzLl9tb2RhbCkge1xyXG4gICAgICAgICAgICB0aGlzLl9tb2RhbCA9IHRoaXMuZ2V0TW9kYWwoKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKHRoaXMuX21vZGFsKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX21vZGFsLnNob3coKTtcclxuICAgICAgICAgICAgLy8gdGhpcy5pc1Nob3duID0gdHJ1ZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgaGlkZSgpIHtcclxuICAgICAgICAvLyB0aGlzLm1vZGFsPy5oaWRlKCk7XHJcblxyXG4gICAgICAgIC8vIGlmICh0aGlzLmlzU2hvd24pIHtcclxuICAgICAgICAvLyAgICAgaWYgKHRoaXMuX21vZGFsKSB7XHJcbiAgICAgICAgLy8gICAgICAgICB0aGlzLl9tb2RhbC5oaWRlKCk7XHJcbiAgICAgICAgLy8gICAgICAgICB0aGlzLmlzU2hvd24gPSBmYWxzZTtcclxuICAgICAgICAvLyAgICAgfVxyXG4gICAgICAgIC8vIH0gZWxzZSB7XHJcblxyXG4gICAgICAgIC8vIH1cclxuXHJcbiAgICAgICAgaWYgKHRoaXMuX21vZGFsKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX21vZGFsLmhpZGUoKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICAgIGxldCBidG4gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnbW9kYWwtY2FuY2VsLWJ1dHRvbi0nICsgdGhpcy5lbGVtZW50SWQpO1xyXG4gICAgICAgICAgICBpZiAoYnRuKSB7XHJcbiAgICAgICAgICAgICAgICBidG4uY2xpY2soKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBvaygpIHtcclxuICAgICAgICBsZXQgZXZlbnQgPSBuZXcgVmFsaWRFdmVudEFyZ3MoKTtcclxuICAgICAgICB0aGlzLm9uVmFsaWRhdGluZy5lbWl0KGV2ZW50KTtcclxuICAgICAgICBpZiAoIWV2ZW50LnZhbGlkKSByZXR1cm47XHJcblxyXG4gICAgICAgIGlmICh0aGlzLmF1dG9IaWRlKVxyXG4gICAgICAgICAgICB0aGlzLmhpZGUoKTtcclxuXHJcbiAgICAgICAgdGhpcy5vbk9rLmVtaXQodGhpcy5tb2RlbCk7XHJcbiAgICB9XHJcblxyXG4gICAga2V5RG93bihlOiBFdmVudCkge1xyXG4gICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcclxuICAgICAgICB0aGlzLm9rKCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICd6ZWstZGVsZXRlLW1vZGFsJyxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi9tb2RhbC5jb21wb25lbnQuaHRtbCdcclxufSlcclxuZXhwb3J0IGNsYXNzIFpla0RlbGV0ZU1vZGFsIGV4dGVuZHMgWmVrTW9kYWwge1xyXG4gICAgY29uc3RydWN0b3IodHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlKSB7XHJcbiAgICAgICAgc3VwZXIodHJhbnNsYXRlKTtcclxuICAgICAgICB0aGlzLmljb24gPSAnZmFzIGZhLWZhcyBmYS10cmFzaCc7XHJcbiAgICAgICAgdHJhbnNsYXRlLmdldCgnQWN0aW9uLkRlbGV0ZScpLnN1YnNjcmliZSgocmVzOiBzdHJpbmcpID0+IHRoaXMudGl0bGUgPSByZXMpO1xyXG4gICAgICAgIHRyYW5zbGF0ZS5nZXQoJ0FsZXJ0LkRlbGV0ZVF1ZXN0aW9uJykuc3Vic2NyaWJlKChyZXM6IHN0cmluZykgPT4gdGhpcy50ZXh0ID0gcmVzKTtcclxuICAgICAgICB0aGlzLmNvbXBvbmVudFR5cGUgPSBDb21wb25lbnRUeXBlLkRlbGV0ZTtcclxuICAgIH1cclxufVxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ3play1hcHByb3ZlLW1vZGFsJyxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi9tb2RhbC5jb21wb25lbnQuaHRtbCdcclxufSlcclxuZXhwb3J0IGNsYXNzIFpla0FwcHJvdmVNb2RhbCBleHRlbmRzIFpla01vZGFsIHtcclxuICAgIGNvbnN0cnVjdG9yKHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSkge1xyXG4gICAgICAgIHN1cGVyKHRyYW5zbGF0ZSk7XHJcbiAgICAgICAgdGhpcy5pY29uID0gJ2ZhcyBmYS10aHVtYnMtdXAnO1xyXG4gICAgICAgIHRyYW5zbGF0ZS5nZXQoJ0FjdGlvbi5BcHByb3ZlJykuc3Vic2NyaWJlKChyZXM6IHN0cmluZykgPT4gdGhpcy50aXRsZSA9IHJlcyk7XHJcbiAgICAgICAgdHJhbnNsYXRlLmdldCgnQWxlcnQuQXBwcm92ZVF1ZXN0aW9uJykuc3Vic2NyaWJlKChyZXM6IHN0cmluZykgPT4gdGhpcy50ZXh0ID0gcmVzKTtcclxuICAgICAgICB0aGlzLmNvbXBvbmVudFR5cGUgPSBDb21wb25lbnRUeXBlLlN1Y2Nlc3M7XHJcbiAgICB9XHJcbn1cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ3play1zdWJtaXQtbW9kYWwnLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL21vZGFsLmNvbXBvbmVudC5odG1sJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgWmVrU3VibWl0TW9kYWwgZXh0ZW5kcyBaZWtNb2RhbCB7XHJcbiAgICBjb25zdHJ1Y3Rvcih0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UpIHtcclxuICAgICAgICBzdXBlcih0cmFuc2xhdGUpO1xyXG4gICAgICAgIHRoaXMuaWNvbiA9ICdmYXMgZmEtdGh1bWJzLXVwJztcclxuICAgICAgICB0cmFuc2xhdGUuZ2V0KCdBY3Rpb24uU3VibWl0Jykuc3Vic2NyaWJlKChyZXM6IHN0cmluZykgPT4gdGhpcy50aXRsZSA9IHJlcyk7XHJcbiAgICAgICAgdHJhbnNsYXRlLmdldCgnQWxlcnQuU3VibWl0UXVlc3Rpb24nKS5zdWJzY3JpYmUoKHJlczogc3RyaW5nKSA9PiB0aGlzLnRleHQgPSByZXMpO1xyXG4gICAgICAgIHRoaXMuY29tcG9uZW50VHlwZSA9IENvbXBvbmVudFR5cGUuU3VjY2VzcztcclxuICAgIH1cclxufVxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnemVrLWRpc2FwcHJvdmUtbW9kYWwnLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL21vZGFsLmNvbXBvbmVudC5odG1sJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgWmVrRGlzYXBwcm92ZU1vZGFsIGV4dGVuZHMgWmVrTW9kYWwge1xyXG4gICAgY29uc3RydWN0b3IodHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlKSB7XHJcbiAgICAgICAgc3VwZXIodHJhbnNsYXRlKTtcclxuICAgICAgICB0aGlzLmljb24gPSAnZmFzIGZhLXRodW1icy1kb3duJztcclxuICAgICAgICB0cmFuc2xhdGUuZ2V0KCdBY3Rpb24uRGlzYXBwcm92ZScpLnN1YnNjcmliZSgocmVzOiBzdHJpbmcpID0+IHRoaXMudGl0bGUgPSByZXMpO1xyXG4gICAgICAgIHRyYW5zbGF0ZS5nZXQoJ0FsZXJ0LkRpc2FwcHJvdmVRdWVzdGlvbicpLnN1YnNjcmliZSgocmVzOiBzdHJpbmcpID0+IHRoaXMudGV4dCA9IHJlcyk7XHJcbiAgICAgICAgdGhpcy5jb21wb25lbnRUeXBlID0gQ29tcG9uZW50VHlwZS5EZWxldGU7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICd6ZWstcmVzdG9yZS1tb2RhbCcsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vbW9kYWwuY29tcG9uZW50Lmh0bWwnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBaZWtSZXN0b3JlTW9kYWwgZXh0ZW5kcyBaZWtNb2RhbCB7XHJcbiAgICBjb25zdHJ1Y3Rvcih0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UpIHtcclxuICAgICAgICBzdXBlcih0cmFuc2xhdGUpO1xyXG4gICAgICAgIHRoaXMuaWNvbiA9ICdmYXMgZmEtcmVkbyc7XHJcbiAgICAgICAgdHJhbnNsYXRlLmdldCgnQWN0aW9uLlJlc3RvcmUnKS5zdWJzY3JpYmUoKHJlczogc3RyaW5nKSA9PiB0aGlzLnRpdGxlID0gcmVzKTtcclxuICAgICAgICB0cmFuc2xhdGUuZ2V0KCdBY3Rpb24uUmVzdG9yZVF1ZXN0aW9uJykuc3Vic2NyaWJlKChyZXM6IHN0cmluZykgPT4gdGhpcy50ZXh0ID0gcmVzKTtcclxuICAgICAgICB0aGlzLmNvbXBvbmVudFR5cGUgPSBDb21wb25lbnRUeXBlLlN1Y2Nlc3M7XHJcbiAgICB9XHJcbn0iLCI8ZGl2IChrZXlkb3duLmVudGVyKT1cImtleURvd24oJGV2ZW50KVwiIGNsYXNzPVwibW9kYWwgZmFkZVwiIGRhdGEtYnMtYmFja2Ryb3A9XCJzdGF0aWNcIiBpZD1cIm1vZGFsLXt7ZWxlbWVudElkfX1cIiB0YWJpbmRleD1cIi0xXCIgYXR0ci5hcmlhLWxhYmVsbGVkYnk9XCJtb2RhbC1sYWJsZS17e2VsZW1lbnRJZH19XCIgYXJpYS1oaWRkZW49XCJ0cnVlXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwibW9kYWwtZGlhbG9nXCIgW2NsYXNzLm1vZGFsLWxnXT1cImxhcmdlXCIgW2NsYXNzLm1vZGFsLXhsXT1cInhsXCIgW2NsYXNzLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlXT1cInNjcm9sbGFibGVcIiBbY2xhc3MubW9kYWwtZnVsbHNjcmVlbl09XCJmdWxsc2NyZWVuXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cIm1vZGFsLWNvbnRlbnRcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1vZGFsLWhlYWRlclwiICpuZ0lmPVwic2hvd0hlYWRlclwiPlxyXG4gICAgICAgICAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiaGVhZGVyXCI+PC9uZy1jb250ZW50PlxyXG4gICAgICAgICAgICAgICAgPGg1IGNsYXNzPVwibW9kYWwtdGl0bGVcIiBpZD1cIm1vZGFsLWxhYmxlLXt7ZWxlbWVudElkfX1cIj57e3RpdGxlfX08L2g1PlxyXG4gICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJidG4tY2xvc2VcIiBkYXRhLWJzLWRpc21pc3M9XCJtb2RhbFwiIGFyaWEtbGFiZWw9XCJDbG9zZVwiPjwvYnV0dG9uPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1vZGFsLWJvZHlcIj5cclxuICAgICAgICAgICAgICAgIHt7dGV4dH19XHJcbiAgICAgICAgICAgICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibW9kYWwtZm9vdGVyXCIgKm5nSWY9XCJzaG93Rm9vdGVyXCI+XHJcbiAgICAgICAgICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJmb290ZXJcIj48L25nLWNvbnRlbnQ+XHJcbiAgICAgICAgICAgICAgICA8YnV0dG9uIFtjbGFzcy52aXN1YWxseS1oaWRkZW5dPVwiIXNob3dPa1wiIFtkaXNhYmxlZF09XCJkaXNhYmxlZE9rXCIgdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiYnRuIHt7Y3NzQnV0dG9uKCl9fVwiIGlkPVwibW9kYWwtb2stYnV0dG9uLXt7ZWxlbWVudElkfX1cIiAoY2xpY2spPVwib2soKVwiPjxpICpuZ0lmPVwiaWNvblwiIGNsYXNzPVwie3sgaWNvbiB9fVwiPjwvaT4ge3sgb2tCdXR0b25UZXh0IH19PC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICA8YnV0dG9uIFtjbGFzcy52aXN1YWxseS1oaWRkZW5dPVwiIXNob3dDYW5jZWxcIiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJidG4gYnRuLXNlY29uZGFyeVwiIGlkPVwibW9kYWwtY2FuY2VsLWJ1dHRvbi17e2VsZW1lbnRJZH19XCIgZGF0YS1icy1kaXNtaXNzPVwibW9kYWxcIj48aSBjbGFzcz1cImZhLXNvbGlkIGZhLWJhblwiPjwvaT4ge3sgJ0FjdGlvbi5DYW5jZWwnIHwgdHJhbnNsYXRlIH19PC9idXR0b24+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbjwvZGl2PiJdfQ==
@@ -1,35 +1,35 @@
1
1
  import { NgModule } from '@angular/core';
2
2
  import { CommonModule } from '@angular/common';
3
3
  import { TranslateModule } from '@ngx-translate/core';
4
- import { ModalComponent, DeleteModalComponent, ApproveModalComponent, DisapproveModalComponent, RestoreModalComponent, SubmitModalComponent } from './modal/modal.component';
5
- import { FilterModalComponent } from './filter-modal/filter-modal.component';
6
- import { SumComponent } from './sum-modal/sum-modal.component';
4
+ import { ZekModal, ZekDeleteModal, ZekApproveModal, ZekDisapproveModal, ZekRestoreModal, ZekSubmitModal } from './modal/modal.component';
5
+ import { ZekFilterModal } from './filter-modal/filter-modal.component';
6
+ import { ZekSumModal } from './sum-modal/sum-modal.component';
7
7
  import { RouterModule } from '@angular/router';
8
8
  import * as i0 from "@angular/core";
9
- export class ModalModule {
9
+ export class ZekModalModule {
10
10
  }
11
- ModalModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: ModalModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
12
- ModalModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.0", ngImport: i0, type: ModalModule, declarations: [ModalComponent,
13
- DeleteModalComponent,
14
- ApproveModalComponent,
15
- SubmitModalComponent,
16
- DisapproveModalComponent,
17
- RestoreModalComponent,
18
- FilterModalComponent,
19
- SumComponent], imports: [CommonModule,
11
+ ZekModalModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: ZekModalModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
12
+ ZekModalModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.0", ngImport: i0, type: ZekModalModule, declarations: [ZekModal,
13
+ ZekDeleteModal,
14
+ ZekApproveModal,
15
+ ZekSubmitModal,
16
+ ZekDisapproveModal,
17
+ ZekRestoreModal,
18
+ ZekFilterModal,
19
+ ZekSumModal], imports: [CommonModule,
20
20
  RouterModule,
21
- TranslateModule], exports: [ModalComponent,
22
- DeleteModalComponent,
23
- ApproveModalComponent,
24
- SubmitModalComponent,
25
- DisapproveModalComponent,
26
- RestoreModalComponent,
27
- FilterModalComponent,
28
- SumComponent] });
29
- ModalModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: ModalModule, imports: [CommonModule,
21
+ TranslateModule], exports: [ZekModal,
22
+ ZekDeleteModal,
23
+ ZekApproveModal,
24
+ ZekSubmitModal,
25
+ ZekDisapproveModal,
26
+ ZekRestoreModal,
27
+ ZekFilterModal,
28
+ ZekSumModal] });
29
+ ZekModalModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: ZekModalModule, imports: [CommonModule,
30
30
  RouterModule,
31
31
  TranslateModule] });
32
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: ModalModule, decorators: [{
32
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: ZekModalModule, decorators: [{
33
33
  type: NgModule,
34
34
  args: [{
35
35
  imports: [
@@ -38,25 +38,25 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImpor
38
38
  TranslateModule
39
39
  ],
40
40
  declarations: [
41
- ModalComponent,
42
- DeleteModalComponent,
43
- ApproveModalComponent,
44
- SubmitModalComponent,
45
- DisapproveModalComponent,
46
- RestoreModalComponent,
47
- FilterModalComponent,
48
- SumComponent
41
+ ZekModal,
42
+ ZekDeleteModal,
43
+ ZekApproveModal,
44
+ ZekSubmitModal,
45
+ ZekDisapproveModal,
46
+ ZekRestoreModal,
47
+ ZekFilterModal,
48
+ ZekSumModal
49
49
  ],
50
50
  exports: [
51
- ModalComponent,
52
- DeleteModalComponent,
53
- ApproveModalComponent,
54
- SubmitModalComponent,
55
- DisapproveModalComponent,
56
- RestoreModalComponent,
57
- FilterModalComponent,
58
- SumComponent
51
+ ZekModal,
52
+ ZekDeleteModal,
53
+ ZekApproveModal,
54
+ ZekSubmitModal,
55
+ ZekDisapproveModal,
56
+ ZekRestoreModal,
57
+ ZekFilterModal,
58
+ ZekSumModal
59
59
  ]
60
60
  }]
61
61
  }] });
62
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvemVrL3NyYy9saWIvbW9kdWxlcy9tb2RhbC9tb2RhbC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRXRELE9BQU8sRUFDSCxjQUFjLEVBQ2Qsb0JBQW9CLEVBQ3BCLHFCQUFxQixFQUNyQix3QkFBd0IsRUFDeEIscUJBQXFCLEVBQ3JCLG9CQUFvQixFQUN2QixNQUFNLHlCQUF5QixDQUFDO0FBQ2pDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQzdFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUMvRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7O0FBOEIvQyxNQUFNLE9BQU8sV0FBVzs7d0dBQVgsV0FBVzt5R0FBWCxXQUFXLGlCQXJCaEIsY0FBYztRQUNkLG9CQUFvQjtRQUNwQixxQkFBcUI7UUFDckIsb0JBQW9CO1FBQ3BCLHdCQUF3QjtRQUN4QixxQkFBcUI7UUFFckIsb0JBQW9CO1FBQ3BCLFlBQVksYUFiWixZQUFZO1FBQ1osWUFBWTtRQUNaLGVBQWUsYUFjZixjQUFjO1FBQ2Qsb0JBQW9CO1FBQ3BCLHFCQUFxQjtRQUNyQixvQkFBb0I7UUFDcEIsd0JBQXdCO1FBQ3hCLHFCQUFxQjtRQUNyQixvQkFBb0I7UUFDcEIsWUFBWTt5R0FHUCxXQUFXLFlBMUJoQixZQUFZO1FBQ1osWUFBWTtRQUNaLGVBQWU7MkZBd0JWLFdBQVc7a0JBNUJ2QixRQUFRO21CQUFDO29CQUNOLE9BQU8sRUFBRTt3QkFDTCxZQUFZO3dCQUNaLFlBQVk7d0JBQ1osZUFBZTtxQkFDbEI7b0JBQ0QsWUFBWSxFQUFFO3dCQUNWLGNBQWM7d0JBQ2Qsb0JBQW9CO3dCQUNwQixxQkFBcUI7d0JBQ3JCLG9CQUFvQjt3QkFDcEIsd0JBQXdCO3dCQUN4QixxQkFBcUI7d0JBRXJCLG9CQUFvQjt3QkFDcEIsWUFBWTtxQkFDZjtvQkFDRCxPQUFPLEVBQUU7d0JBQ0wsY0FBYzt3QkFDZCxvQkFBb0I7d0JBQ3BCLHFCQUFxQjt3QkFDckIsb0JBQW9CO3dCQUNwQix3QkFBd0I7d0JBQ3hCLHFCQUFxQjt3QkFDckIsb0JBQW9CO3dCQUNwQixZQUFZO3FCQUNmO2lCQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XHJcblxyXG5pbXBvcnQgeyBcclxuICAgIE1vZGFsQ29tcG9uZW50LFxyXG4gICAgRGVsZXRlTW9kYWxDb21wb25lbnQsXHJcbiAgICBBcHByb3ZlTW9kYWxDb21wb25lbnQsXHJcbiAgICBEaXNhcHByb3ZlTW9kYWxDb21wb25lbnQsXHJcbiAgICBSZXN0b3JlTW9kYWxDb21wb25lbnQsXHJcbiAgICBTdWJtaXRNb2RhbENvbXBvbmVudFxyXG59IGZyb20gJy4vbW9kYWwvbW9kYWwuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRmlsdGVyTW9kYWxDb21wb25lbnQgfSBmcm9tICcuL2ZpbHRlci1tb2RhbC9maWx0ZXItbW9kYWwuY29tcG9uZW50JztcclxuaW1wb3J0IHsgU3VtQ29tcG9uZW50IH0gZnJvbSAnLi9zdW0tbW9kYWwvc3VtLW1vZGFsLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFJvdXRlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gICAgaW1wb3J0czogW1xyXG4gICAgICAgIENvbW1vbk1vZHVsZSxcclxuICAgICAgICBSb3V0ZXJNb2R1bGUsXHJcbiAgICAgICAgVHJhbnNsYXRlTW9kdWxlXHJcbiAgICBdLFxyXG4gICAgZGVjbGFyYXRpb25zOiBbXHJcbiAgICAgICAgTW9kYWxDb21wb25lbnQsXHJcbiAgICAgICAgRGVsZXRlTW9kYWxDb21wb25lbnQsXHJcbiAgICAgICAgQXBwcm92ZU1vZGFsQ29tcG9uZW50LFxyXG4gICAgICAgIFN1Ym1pdE1vZGFsQ29tcG9uZW50LFxyXG4gICAgICAgIERpc2FwcHJvdmVNb2RhbENvbXBvbmVudCxcclxuICAgICAgICBSZXN0b3JlTW9kYWxDb21wb25lbnQsXHJcblxyXG4gICAgICAgIEZpbHRlck1vZGFsQ29tcG9uZW50LFxyXG4gICAgICAgIFN1bUNvbXBvbmVudFxyXG4gICAgXSxcclxuICAgIGV4cG9ydHM6IFtcclxuICAgICAgICBNb2RhbENvbXBvbmVudCxcclxuICAgICAgICBEZWxldGVNb2RhbENvbXBvbmVudCxcclxuICAgICAgICBBcHByb3ZlTW9kYWxDb21wb25lbnQsXHJcbiAgICAgICAgU3VibWl0TW9kYWxDb21wb25lbnQsXHJcbiAgICAgICAgRGlzYXBwcm92ZU1vZGFsQ29tcG9uZW50LFxyXG4gICAgICAgIFJlc3RvcmVNb2RhbENvbXBvbmVudCxcclxuICAgICAgICBGaWx0ZXJNb2RhbENvbXBvbmVudCxcclxuICAgICAgICBTdW1Db21wb25lbnRcclxuICAgIF1cclxufSlcclxuZXhwb3J0IGNsYXNzIE1vZGFsTW9kdWxlIHsgfSJdfQ==
62
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvemVrL3NyYy9saWIvbW9kdWxlcy9tb2RhbC9tb2RhbC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRXRELE9BQU8sRUFDSCxRQUFRLEVBQ1IsY0FBYyxFQUNkLGVBQWUsRUFDZixrQkFBa0IsRUFDbEIsZUFBZSxFQUNmLGNBQWMsRUFDakIsTUFBTSx5QkFBeUIsQ0FBQztBQUNqQyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDdkUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQzlELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7QUE2Qi9DLE1BQU0sT0FBTyxjQUFjOzsyR0FBZCxjQUFjOzRHQUFkLGNBQWMsaUJBcEJuQixRQUFRO1FBQ1IsY0FBYztRQUNkLGVBQWU7UUFDZixjQUFjO1FBQ2Qsa0JBQWtCO1FBQ2xCLGVBQWU7UUFDZixjQUFjO1FBQ2QsV0FBVyxhQVpYLFlBQVk7UUFDWixZQUFZO1FBQ1osZUFBZSxhQWFmLFFBQVE7UUFDUixjQUFjO1FBQ2QsZUFBZTtRQUNmLGNBQWM7UUFDZCxrQkFBa0I7UUFDbEIsZUFBZTtRQUNmLGNBQWM7UUFDZCxXQUFXOzRHQUdOLGNBQWMsWUF6Qm5CLFlBQVk7UUFDWixZQUFZO1FBQ1osZUFBZTsyRkF1QlYsY0FBYztrQkEzQjFCLFFBQVE7bUJBQUM7b0JBQ04sT0FBTyxFQUFFO3dCQUNMLFlBQVk7d0JBQ1osWUFBWTt3QkFDWixlQUFlO3FCQUNsQjtvQkFDRCxZQUFZLEVBQUU7d0JBQ1YsUUFBUTt3QkFDUixjQUFjO3dCQUNkLGVBQWU7d0JBQ2YsY0FBYzt3QkFDZCxrQkFBa0I7d0JBQ2xCLGVBQWU7d0JBQ2YsY0FBYzt3QkFDZCxXQUFXO3FCQUNkO29CQUNELE9BQU8sRUFBRTt3QkFDTCxRQUFRO3dCQUNSLGNBQWM7d0JBQ2QsZUFBZTt3QkFDZixjQUFjO3dCQUNkLGtCQUFrQjt3QkFDbEIsZUFBZTt3QkFDZixjQUFjO3dCQUNkLFdBQVc7cUJBQ2Q7aUJBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcclxuXHJcbmltcG9ydCB7IFxyXG4gICAgWmVrTW9kYWwsXHJcbiAgICBaZWtEZWxldGVNb2RhbCxcclxuICAgIFpla0FwcHJvdmVNb2RhbCxcclxuICAgIFpla0Rpc2FwcHJvdmVNb2RhbCxcclxuICAgIFpla1Jlc3RvcmVNb2RhbCxcclxuICAgIFpla1N1Ym1pdE1vZGFsXHJcbn0gZnJvbSAnLi9tb2RhbC9tb2RhbC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBaZWtGaWx0ZXJNb2RhbCB9IGZyb20gJy4vZmlsdGVyLW1vZGFsL2ZpbHRlci1tb2RhbC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBaZWtTdW1Nb2RhbCB9IGZyb20gJy4vc3VtLW1vZGFsL3N1bS1tb2RhbC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBSb3V0ZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5cclxuQE5nTW9kdWxlKHtcclxuICAgIGltcG9ydHM6IFtcclxuICAgICAgICBDb21tb25Nb2R1bGUsXHJcbiAgICAgICAgUm91dGVyTW9kdWxlLFxyXG4gICAgICAgIFRyYW5zbGF0ZU1vZHVsZVxyXG4gICAgXSxcclxuICAgIGRlY2xhcmF0aW9uczogW1xyXG4gICAgICAgIFpla01vZGFsLFxyXG4gICAgICAgIFpla0RlbGV0ZU1vZGFsLFxyXG4gICAgICAgIFpla0FwcHJvdmVNb2RhbCxcclxuICAgICAgICBaZWtTdWJtaXRNb2RhbCxcclxuICAgICAgICBaZWtEaXNhcHByb3ZlTW9kYWwsXHJcbiAgICAgICAgWmVrUmVzdG9yZU1vZGFsLFxyXG4gICAgICAgIFpla0ZpbHRlck1vZGFsLFxyXG4gICAgICAgIFpla1N1bU1vZGFsXHJcbiAgICBdLFxyXG4gICAgZXhwb3J0czogW1xyXG4gICAgICAgIFpla01vZGFsLFxyXG4gICAgICAgIFpla0RlbGV0ZU1vZGFsLFxyXG4gICAgICAgIFpla0FwcHJvdmVNb2RhbCxcclxuICAgICAgICBaZWtTdWJtaXRNb2RhbCxcclxuICAgICAgICBaZWtEaXNhcHByb3ZlTW9kYWwsXHJcbiAgICAgICAgWmVrUmVzdG9yZU1vZGFsLFxyXG4gICAgICAgIFpla0ZpbHRlck1vZGFsLFxyXG4gICAgICAgIFpla1N1bU1vZGFsXHJcbiAgICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBaZWtNb2RhbE1vZHVsZSB7IH0iXX0=