zek 14.2.91 → 15.2.1

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 (130) hide show
  1. package/README.md +1 -1
  2. package/esm2020/lib/components/base.component.mjs +3 -3
  3. package/esm2020/lib/components/core-ui.component.mjs +3 -3
  4. package/esm2020/lib/components/core.component.mjs +3 -3
  5. package/esm2020/lib/components/edit-base.component.mjs +9 -9
  6. package/esm2020/lib/components/list-base.component.mjs +3 -3
  7. package/esm2020/lib/modules/age/age.module.mjs +4 -4
  8. package/esm2020/lib/modules/age/age.pipe.mjs +3 -3
  9. package/esm2020/lib/modules/alert/alert/alert.mjs +3 -3
  10. package/esm2020/lib/modules/alert/alert.module.mjs +4 -4
  11. package/esm2020/lib/modules/alert/toast/toast.mjs +3 -3
  12. package/esm2020/lib/modules/alert/validation/validation.mjs +3 -3
  13. package/esm2020/lib/modules/autocomplete/autocomplete.directive.mjs +3 -3
  14. package/esm2020/lib/modules/autocomplete/autocomplete.module.mjs +4 -4
  15. package/esm2020/lib/modules/bb/bb-modal-base.component.mjs +3 -3
  16. package/esm2020/lib/modules/bb/bb-modal-toolbar.mjs +3 -3
  17. package/esm2020/lib/modules/bb/bb.component.mjs +3 -3
  18. package/esm2020/lib/modules/bb/bb.module.mjs +4 -4
  19. package/esm2020/lib/modules/callback/callback.module.mjs +4 -4
  20. package/esm2020/lib/modules/callback/callback.pipe.mjs +3 -3
  21. package/esm2020/lib/modules/card/card/card.component.mjs +3 -3
  22. package/esm2020/lib/modules/card/card.module.mjs +4 -4
  23. package/esm2020/lib/modules/date-ago/date-ago.pipe.mjs +3 -3
  24. package/esm2020/lib/modules/date-ago/date.module.mjs +4 -4
  25. package/esm2020/lib/modules/datepicker/date-value-accessor.mjs +3 -3
  26. package/esm2020/lib/modules/datepicker/datepicker.module.mjs +4 -4
  27. package/esm2020/lib/modules/edit-toolbar/edit-toolbar.component.mjs +3 -3
  28. package/esm2020/lib/modules/edit-toolbar/edit-toolbar.module.mjs +4 -4
  29. package/esm2020/lib/modules/file/file-size.pipe.mjs +3 -3
  30. package/esm2020/lib/modules/file/file.module.mjs +4 -4
  31. package/esm2020/lib/modules/file-viewer/file-viewer.mjs +3 -3
  32. package/esm2020/lib/modules/file-viewer/module.mjs +4 -4
  33. package/esm2020/lib/modules/grid-toolbar/grid-toolbar/grid-toolbar.component.mjs +3 -3
  34. package/esm2020/lib/modules/grid-toolbar/grid-toolbar-bar/grid-toolbar-bar.component.mjs +3 -3
  35. package/esm2020/lib/modules/grid-toolbar/grid-toolbar.module.mjs +4 -4
  36. package/esm2020/lib/modules/list-toolbar/list-toolbar.component.mjs +3 -3
  37. package/esm2020/lib/modules/list-toolbar/list-toolbar.module.mjs +4 -4
  38. package/esm2020/lib/modules/loading/loading-interceptor.mjs +3 -3
  39. package/esm2020/lib/modules/loading/loading.component.mjs +5 -5
  40. package/esm2020/lib/modules/loading/loading.module.mjs +4 -4
  41. package/esm2020/lib/modules/modal/filter-modal/filter-modal.component.mjs +3 -3
  42. package/esm2020/lib/modules/modal/modal/modal.component.mjs +18 -18
  43. package/esm2020/lib/modules/modal/modal.module.mjs +4 -4
  44. package/esm2020/lib/modules/modal/sum-modal/sum-modal.component.mjs +3 -3
  45. package/esm2020/lib/modules/page-title/page-title.component.mjs +3 -3
  46. package/esm2020/lib/modules/page-title/page-title.module.mjs +4 -4
  47. package/esm2020/lib/modules/pager/pager/pager.component.mjs +3 -3
  48. package/esm2020/lib/modules/pager/pager.module.mjs +4 -4
  49. package/esm2020/lib/modules/password/password.component.mjs +3 -3
  50. package/esm2020/lib/modules/password/password.module.mjs +4 -4
  51. package/esm2020/lib/modules/progress/module.mjs +4 -4
  52. package/esm2020/lib/modules/progress/progress.mjs +3 -3
  53. package/esm2020/lib/modules/radio/radio-button.component.mjs +16 -5
  54. package/esm2020/lib/modules/radio/radio.module.mjs +4 -4
  55. package/esm2020/lib/modules/readonly/readonly.directive.mjs +3 -3
  56. package/esm2020/lib/modules/readonly/readonly.module.mjs +4 -4
  57. package/esm2020/lib/modules/recaptcha/recaptcha.module.mjs +4 -4
  58. package/esm2020/lib/modules/recaptcha/recaptcha.service.mjs +3 -3
  59. package/esm2020/lib/modules/safe/safe.module.mjs +4 -4
  60. package/esm2020/lib/modules/safe/safe.pipe.mjs +3 -3
  61. package/esm2020/lib/modules/select/module.mjs +4 -4
  62. package/esm2020/lib/modules/select/select.mjs +3 -3
  63. package/esm2020/lib/modules/select2/select2.component.mjs +3 -3
  64. package/esm2020/lib/modules/select2/select2.module.mjs +4 -4
  65. package/esm2020/lib/modules/select2-multiple/select2-multiple.component.mjs +3 -3
  66. package/esm2020/lib/modules/select2-multiple/select2-multiple.module.mjs +4 -4
  67. package/esm2020/lib/modules/sort/sort-button-group/sort-button-group.component.mjs +20 -20
  68. package/esm2020/lib/modules/sort/sort.directive.mjs +3 -3
  69. package/esm2020/lib/modules/sort/sort.module.mjs +4 -4
  70. package/esm2020/lib/modules/time/time.module.mjs +4 -4
  71. package/esm2020/lib/modules/time/time.pipe.mjs +3 -3
  72. package/esm2020/lib/modules/time/timer-service.mjs +10 -10
  73. package/esm2020/lib/modules/validator/field-validator.mjs +3 -3
  74. package/esm2020/lib/modules/validator/validator.module.mjs +4 -4
  75. package/esm2020/lib/modules/validators/directive.mjs +6 -6
  76. package/esm2020/lib/modules/validators/module.mjs +4 -4
  77. package/esm2020/lib/modules/wizard/wizard/wizard.component.mjs +3 -3
  78. package/esm2020/lib/modules/wizard/wizard.module.mjs +4 -4
  79. package/esm2020/lib/modules/wizard/wizard2/wizard2.component.mjs +3 -3
  80. package/esm2020/lib/services/alert.service.mjs +3 -3
  81. package/esm2020/lib/services/auth-guard.service.mjs +3 -3
  82. package/esm2020/lib/services/auth.service.mjs +3 -3
  83. package/esm2020/lib/services/http-error-handler.service.mjs +3 -3
  84. package/esm2020/lib/services/web.api.mjs +3 -3
  85. package/esm2020/lib/zek.module.mjs +4 -4
  86. package/fesm2015/zek.mjs +344 -333
  87. package/fesm2015/zek.mjs.map +1 -1
  88. package/fesm2020/zek.mjs +344 -333
  89. package/fesm2020/zek.mjs.map +1 -1
  90. package/lib/components/base.component.d.ts +1 -1
  91. package/lib/components/core-ui.component.d.ts +1 -1
  92. package/lib/components/core.component.d.ts +1 -1
  93. package/lib/components/edit-base.component.d.ts +3 -3
  94. package/lib/components/list-base.component.d.ts +1 -1
  95. package/lib/components/types.d.ts +3 -3
  96. package/lib/modules/alert/alert/alert.d.ts +1 -1
  97. package/lib/modules/alert/toast/toast.d.ts +1 -1
  98. package/lib/modules/alert/validation/validation.d.ts +1 -1
  99. package/lib/modules/autocomplete/autocomplete.directive.d.ts +1 -1
  100. package/lib/modules/bb/bb-modal-base.component.d.ts +1 -1
  101. package/lib/modules/bb/bb-modal-toolbar.d.ts +1 -1
  102. package/lib/modules/bb/bb.component.d.ts +1 -1
  103. package/lib/modules/card/card/card.component.d.ts +1 -1
  104. package/lib/modules/datepicker/date-value-accessor.d.ts +1 -1
  105. package/lib/modules/edit-toolbar/edit-toolbar.component.d.ts +1 -1
  106. package/lib/modules/file-viewer/file-viewer.d.ts +1 -1
  107. package/lib/modules/grid-toolbar/grid-toolbar/grid-toolbar.component.d.ts +1 -1
  108. package/lib/modules/grid-toolbar/grid-toolbar-bar/grid-toolbar-bar.component.d.ts +1 -1
  109. package/lib/modules/list-toolbar/list-toolbar.component.d.ts +1 -1
  110. package/lib/modules/loading/loading.component.d.ts +1 -1
  111. package/lib/modules/modal/filter-modal/filter-modal.component.d.ts +1 -1
  112. package/lib/modules/modal/modal/modal.component.d.ts +6 -6
  113. package/lib/modules/modal/sum-modal/sum-modal.component.d.ts +1 -1
  114. package/lib/modules/page-title/page-title.component.d.ts +1 -1
  115. package/lib/modules/pager/pager/pager.component.d.ts +1 -1
  116. package/lib/modules/password/password.component.d.ts +1 -1
  117. package/lib/modules/progress/progress.d.ts +2 -2
  118. package/lib/modules/radio/radio-button.component.d.ts +5 -2
  119. package/lib/modules/readonly/readonly.directive.d.ts +1 -1
  120. package/lib/modules/select/select.d.ts +1 -1
  121. package/lib/modules/select2/select2.component.d.ts +1 -1
  122. package/lib/modules/select2-multiple/select2-multiple.component.d.ts +1 -1
  123. package/lib/modules/sort/sort-button-group/sort-button-group.component.d.ts +1 -1
  124. package/lib/modules/sort/sort.directive.d.ts +1 -1
  125. package/lib/modules/validator/field-validator.d.ts +1 -1
  126. package/lib/modules/validators/directive.d.ts +2 -2
  127. package/lib/modules/wizard/wizard/wizard.component.d.ts +1 -1
  128. package/lib/modules/wizard/wizard2/wizard2.component.d.ts +1 -1
  129. package/lib/services/http-error-handler.service.d.ts +2 -2
  130. package/package.json +5 -5
@@ -109,9 +109,9 @@ export class Select2MultipleComponent {
109
109
  this.valueChange.emit(v);
110
110
  }
111
111
  }
112
- Select2MultipleComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: Select2MultipleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
113
- Select2MultipleComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.0", type: Select2MultipleComponent, selector: "zek-select2-multiple,[zek-select2-multiple]", inputs: { data: "data", textField: "textField", valueField: "valueField", placeholder: "placeholder", value: "value" }, outputs: { selectedItemChange: "selectedItemChange", valueChange: "valueChange" }, ngImport: i0, template: "<div class=\"input-group position-relative\" id=\"dropdown-menu-container-{{elementId}}\">\r\n <input type=\"text\" class=\"form-control\" placeholder=\"{{placeholder}}\" data-bs-toggle=\"dropdown\" data-bs-auto-close=\"outside\" id=\"input-{{elementId}}\" [(ngModel)]=\"text\" (ngModelChange)=\"onTextChange($event)\" (focus)=\"onFocus($event)\" (blur)=\"inputUnfocused()\">\r\n <button class=\"btn btn-outline-secondary dropdown-toggle\" id=\"btn-{{elementId}}\" type=\"button\" data-bs-toggle=\"dropdown\" aria-expanded=\"false\" data-bs-reference=\"parent\"></button>\r\n <ul class=\"dropdown-menu dropdown-menu-start w-100 scrollable-menu\" id=\"dropdown-menu-{{elementId}}\">\r\n <ng-container *ngIf=\"textField\">\r\n <li *ngFor=\"let item of filteredData\">\r\n <a href=\"javascript:void(0)\" (click)=\"selectItem(item)\" class=\"dropdown-item\">\r\n <span *ngIf=\"item.selected\"><i class=\"far fa-check-square\"></i></span>\r\n <span *ngIf=\"!item.selected\"><i class=\"far fa-square\"></i></span>\r\n {{item[textField]}}\r\n </a>\r\n </li>\r\n </ng-container>\r\n <ng-container *ngIf=\"!textField\">\r\n <li *ngFor=\"let item of filteredData\">\r\n <a href=\"javascript:void(0)\" (click)=\"selectItem(item)\" class=\"dropdown-item\">\r\n <span *ngIf=\"item.selected\"><i class=\"far fa-check-square\"></i></span>\r\n <span *ngIf=\"!item.selected\"><i class=\"far fa-square\"></i></span>\r\n {{item}}\r\n </a>\r\n </li>\r\n </ng-container>\r\n </ul>\r\n</div>", dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] });
114
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: Select2MultipleComponent, decorators: [{
112
+ Select2MultipleComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: Select2MultipleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
113
+ Select2MultipleComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.2", type: Select2MultipleComponent, selector: "zek-select2-multiple,[zek-select2-multiple]", inputs: { data: "data", textField: "textField", valueField: "valueField", placeholder: "placeholder", value: "value" }, outputs: { selectedItemChange: "selectedItemChange", valueChange: "valueChange" }, ngImport: i0, template: "<div class=\"input-group position-relative\" id=\"dropdown-menu-container-{{elementId}}\">\r\n <input type=\"text\" class=\"form-control\" placeholder=\"{{placeholder}}\" data-bs-toggle=\"dropdown\" data-bs-auto-close=\"outside\" id=\"input-{{elementId}}\" [(ngModel)]=\"text\" (ngModelChange)=\"onTextChange($event)\" (focus)=\"onFocus($event)\" (blur)=\"inputUnfocused()\">\r\n <button class=\"btn btn-outline-secondary dropdown-toggle\" id=\"btn-{{elementId}}\" type=\"button\" data-bs-toggle=\"dropdown\" aria-expanded=\"false\" data-bs-reference=\"parent\"></button>\r\n <ul class=\"dropdown-menu dropdown-menu-start w-100 scrollable-menu\" id=\"dropdown-menu-{{elementId}}\">\r\n <ng-container *ngIf=\"textField\">\r\n <li *ngFor=\"let item of filteredData\">\r\n <a href=\"javascript:void(0)\" (click)=\"selectItem(item)\" class=\"dropdown-item\">\r\n <span *ngIf=\"item.selected\"><i class=\"far fa-check-square\"></i></span>\r\n <span *ngIf=\"!item.selected\"><i class=\"far fa-square\"></i></span>\r\n {{item[textField]}}\r\n </a>\r\n </li>\r\n </ng-container>\r\n <ng-container *ngIf=\"!textField\">\r\n <li *ngFor=\"let item of filteredData\">\r\n <a href=\"javascript:void(0)\" (click)=\"selectItem(item)\" class=\"dropdown-item\">\r\n <span *ngIf=\"item.selected\"><i class=\"far fa-check-square\"></i></span>\r\n <span *ngIf=\"!item.selected\"><i class=\"far fa-square\"></i></span>\r\n {{item}}\r\n </a>\r\n </li>\r\n </ng-container>\r\n </ul>\r\n</div>", dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] });
114
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: Select2MultipleComponent, decorators: [{
115
115
  type: Component,
116
116
  args: [{ selector: 'zek-select2-multiple,[zek-select2-multiple]', template: "<div class=\"input-group position-relative\" id=\"dropdown-menu-container-{{elementId}}\">\r\n <input type=\"text\" class=\"form-control\" placeholder=\"{{placeholder}}\" data-bs-toggle=\"dropdown\" data-bs-auto-close=\"outside\" id=\"input-{{elementId}}\" [(ngModel)]=\"text\" (ngModelChange)=\"onTextChange($event)\" (focus)=\"onFocus($event)\" (blur)=\"inputUnfocused()\">\r\n <button class=\"btn btn-outline-secondary dropdown-toggle\" id=\"btn-{{elementId}}\" type=\"button\" data-bs-toggle=\"dropdown\" aria-expanded=\"false\" data-bs-reference=\"parent\"></button>\r\n <ul class=\"dropdown-menu dropdown-menu-start w-100 scrollable-menu\" id=\"dropdown-menu-{{elementId}}\">\r\n <ng-container *ngIf=\"textField\">\r\n <li *ngFor=\"let item of filteredData\">\r\n <a href=\"javascript:void(0)\" (click)=\"selectItem(item)\" class=\"dropdown-item\">\r\n <span *ngIf=\"item.selected\"><i class=\"far fa-check-square\"></i></span>\r\n <span *ngIf=\"!item.selected\"><i class=\"far fa-square\"></i></span>\r\n {{item[textField]}}\r\n </a>\r\n </li>\r\n </ng-container>\r\n <ng-container *ngIf=\"!textField\">\r\n <li *ngFor=\"let item of filteredData\">\r\n <a href=\"javascript:void(0)\" (click)=\"selectItem(item)\" class=\"dropdown-item\">\r\n <span *ngIf=\"item.selected\"><i class=\"far fa-check-square\"></i></span>\r\n <span *ngIf=\"!item.selected\"><i class=\"far fa-square\"></i></span>\r\n {{item}}\r\n </a>\r\n </li>\r\n </ng-container>\r\n </ul>\r\n</div>" }]
117
117
  }], propDecorators: { data: [{
@@ -5,12 +5,12 @@ import { Select2MultipleComponent } from './select2-multiple.component';
5
5
  import * as i0 from "@angular/core";
6
6
  export class Select2MultipleModule {
7
7
  }
8
- Select2MultipleModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: Select2MultipleModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
9
- Select2MultipleModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.0", ngImport: i0, type: Select2MultipleModule, declarations: [Select2MultipleComponent], imports: [CommonModule,
8
+ Select2MultipleModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: Select2MultipleModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
9
+ Select2MultipleModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.2", ngImport: i0, type: Select2MultipleModule, declarations: [Select2MultipleComponent], imports: [CommonModule,
10
10
  FormsModule], exports: [Select2MultipleComponent] });
11
- Select2MultipleModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: Select2MultipleModule, imports: [CommonModule,
11
+ Select2MultipleModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: Select2MultipleModule, imports: [CommonModule,
12
12
  FormsModule] });
13
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: Select2MultipleModule, decorators: [{
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: Select2MultipleModule, decorators: [{
14
14
  type: NgModule,
15
15
  args: [{
16
16
  imports: [
@@ -4,6 +4,22 @@ import * as i0 from "@angular/core";
4
4
  import * as i1 from "@angular/common";
5
5
  import * as i2 from "@ngx-translate/core";
6
6
  export class SortButtonGroupComponent {
7
+ get sort() {
8
+ return this._sort;
9
+ }
10
+ set sort(value) {
11
+ if (this._sort !== value) {
12
+ this._sort = value;
13
+ }
14
+ }
15
+ get asc() {
16
+ return this._asc;
17
+ }
18
+ set asc(value) {
19
+ if (this._asc !== value) {
20
+ this._asc = value;
21
+ }
22
+ }
7
23
  /**
8
24
  * Default constructor
9
25
  */
@@ -26,22 +42,6 @@ export class SortButtonGroupComponent {
26
42
  this.sortFields = null;
27
43
  this.elementName = 'sort-button-group-' + RandomHelper.randomHex();
28
44
  }
29
- get sort() {
30
- return this._sort;
31
- }
32
- set sort(value) {
33
- if (this._sort !== value) {
34
- this._sort = value;
35
- }
36
- }
37
- get asc() {
38
- return this._asc;
39
- }
40
- set asc(value) {
41
- if (this._asc !== value) {
42
- this._asc = value;
43
- }
44
- }
45
45
  sortFieldClick(item) {
46
46
  if (!item || !item.key)
47
47
  return;
@@ -58,9 +58,9 @@ export class SortButtonGroupComponent {
58
58
  this.onChange.emit();
59
59
  }
60
60
  }
61
- SortButtonGroupComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SortButtonGroupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
62
- SortButtonGroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.0", type: SortButtonGroupComponent, selector: "zek-sort-button-group", inputs: { sort: "sort", asc: "asc", sortFields: "sortFields" }, outputs: { sortChange: "sortChange", ascChange: "ascChange", onChange: "onChange" }, ngImport: i0, template: "<div class=\"btn-group me-3\" role=\"group\" aria-label=\"Sort group\">\r\n <button type=\"button\" class=\"btn btn-light\" (click)=\"ascDescClick()\">\r\n <span *ngIf=\"asc === undefined || asc === null\"><i class=\"fas fa-sort-alt fa-fw\"></i></span>\r\n <span *ngIf=\"asc === true\"><i class=\"fas fa-sort-alpha-down fa-fw\"></i></span>\r\n <span *ngIf=\"asc === false\"><i class=\"fas fa-sort-alpha-up fa-fw\"></i></span>\r\n </button>\r\n <button *ngIf=\"sortFields && sortFields.length > 0\" class=\"btn btn-light dropdown-toggle\" type=\"button\" id=\"{{elementName}}\" data-bs-toggle=\"dropdown\" aria-expanded=\"false\">\r\n <ng-container *ngIf=\"sortField; else elseFieldBlock\">{{ sortField.value | translate }}</ng-container>\r\n <ng-template #elseFieldBlock>{{ 'Action.Sort' | translate }}</ng-template>\r\n </button>\r\n <ul *ngIf=\"sortFields && sortFields.length > 0\" class=\"dropdown-menu\" [attr.aria-labelledby]=\"elementName\">\r\n <li><a *ngFor=\"let item of sortFields\" class=\"dropdown-item\" href=\"javascript:void(0)\" (click)=\"sortFieldClick(item)\">{{ (item.value) | translate }}</a></li>\r\n </ul>\r\n</div>", dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }] });
63
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SortButtonGroupComponent, decorators: [{
61
+ SortButtonGroupComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: SortButtonGroupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
62
+ SortButtonGroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.2", type: SortButtonGroupComponent, selector: "zek-sort-button-group", inputs: { sort: "sort", asc: "asc", sortFields: "sortFields" }, outputs: { sortChange: "sortChange", ascChange: "ascChange", onChange: "onChange" }, ngImport: i0, template: "<div class=\"btn-group me-3\" role=\"group\" aria-label=\"Sort group\">\r\n <button type=\"button\" class=\"btn btn-light\" (click)=\"ascDescClick()\">\r\n <span *ngIf=\"asc === undefined || asc === null\"><i class=\"fas fa-sort-alt fa-fw\"></i></span>\r\n <span *ngIf=\"asc === true\"><i class=\"fas fa-sort-alpha-down fa-fw\"></i></span>\r\n <span *ngIf=\"asc === false\"><i class=\"fas fa-sort-alpha-up fa-fw\"></i></span>\r\n </button>\r\n <button *ngIf=\"sortFields && sortFields.length > 0\" class=\"btn btn-light dropdown-toggle\" type=\"button\" id=\"{{elementName}}\" data-bs-toggle=\"dropdown\" aria-expanded=\"false\">\r\n <ng-container *ngIf=\"sortField; else elseFieldBlock\">{{ sortField.value | translate }}</ng-container>\r\n <ng-template #elseFieldBlock>{{ 'Action.Sort' | translate }}</ng-template>\r\n </button>\r\n <ul *ngIf=\"sortFields && sortFields.length > 0\" class=\"dropdown-menu\" [attr.aria-labelledby]=\"elementName\">\r\n <li><a *ngFor=\"let item of sortFields\" class=\"dropdown-item\" href=\"javascript:void(0)\" (click)=\"sortFieldClick(item)\">{{ (item.value) | translate }}</a></li>\r\n </ul>\r\n</div>", dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }] });
63
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: SortButtonGroupComponent, decorators: [{
64
64
  type: Component,
65
65
  args: [{ selector: 'zek-sort-button-group', template: "<div class=\"btn-group me-3\" role=\"group\" aria-label=\"Sort group\">\r\n <button type=\"button\" class=\"btn btn-light\" (click)=\"ascDescClick()\">\r\n <span *ngIf=\"asc === undefined || asc === null\"><i class=\"fas fa-sort-alt fa-fw\"></i></span>\r\n <span *ngIf=\"asc === true\"><i class=\"fas fa-sort-alpha-down fa-fw\"></i></span>\r\n <span *ngIf=\"asc === false\"><i class=\"fas fa-sort-alpha-up fa-fw\"></i></span>\r\n </button>\r\n <button *ngIf=\"sortFields && sortFields.length > 0\" class=\"btn btn-light dropdown-toggle\" type=\"button\" id=\"{{elementName}}\" data-bs-toggle=\"dropdown\" aria-expanded=\"false\">\r\n <ng-container *ngIf=\"sortField; else elseFieldBlock\">{{ sortField.value | translate }}</ng-container>\r\n <ng-template #elseFieldBlock>{{ 'Action.Sort' | translate }}</ng-template>\r\n </button>\r\n <ul *ngIf=\"sortFields && sortFields.length > 0\" class=\"dropdown-menu\" [attr.aria-labelledby]=\"elementName\">\r\n <li><a *ngFor=\"let item of sortFields\" class=\"dropdown-item\" href=\"javascript:void(0)\" (click)=\"sortFieldClick(item)\">{{ (item.value) | translate }}</a></li>\r\n </ul>\r\n</div>" }]
66
66
  }], ctorParameters: function () { return []; }, propDecorators: { sortChange: [{
@@ -76,4 +76,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImpor
76
76
  }], sortFields: [{
77
77
  type: Input
78
78
  }] } });
79
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29ydC1idXR0b24tZ3JvdXAuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvemVrL3NyYy9saWIvbW9kdWxlcy9zb3J0L3NvcnQtYnV0dG9uLWdyb3VwL3NvcnQtYnV0dG9uLWdyb3VwLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3play9zcmMvbGliL21vZHVsZXMvc29ydC9zb3J0LWJ1dHRvbi1ncm91cC9zb3J0LWJ1dHRvbi1ncm91cC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXZFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7OztBQU05QyxNQUFNLE9BQU8sd0JBQXdCO0lBNENqQzs7T0FFRztJQUNIO1FBOUNBLGdCQUFXLEdBQVcsRUFBRSxDQUFDO1FBRXpCOztXQUVHO1FBQ08sZUFBVSxHQUFHLElBQUksWUFBWSxFQUFpQixDQUFDO1FBRXpEOztXQUVHO1FBQ08sY0FBUyxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFFbEQ7O1dBRUc7UUFDTyxhQUFRLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUdoQyxVQUFLLEdBQWtCLElBQUksQ0FBQztRQVk1QixTQUFJLEdBQVksS0FBSyxDQUFDO1FBV3JCLGVBQVUsR0FBcUIsSUFBSSxDQUFDO1FBTXpDLElBQUksQ0FBQyxXQUFXLEdBQUcsb0JBQW9CLEdBQUcsWUFBWSxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ3ZFLENBQUM7SUE3QkQsSUFBSSxJQUFJO1FBQ0osT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3RCLENBQUM7SUFDRCxJQUNJLElBQUksQ0FBQyxLQUFvQjtRQUN6QixJQUFJLElBQUksQ0FBQyxLQUFLLEtBQUssS0FBSyxFQUFFO1lBQ3RCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1NBQ3RCO0lBQ0wsQ0FBQztJQUlELElBQUksR0FBRztRQUNILE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQztJQUNyQixDQUFDO0lBQ0QsSUFDSSxHQUFHLENBQUMsS0FBYztRQUNsQixJQUFJLElBQUksQ0FBQyxJQUFJLEtBQUssS0FBSyxFQUFFO1lBQ3JCLElBQUksQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDO1NBQ3JCO0lBQ0wsQ0FBQztJQVdELGNBQWMsQ0FBQyxJQUFTO1FBQ3BCLElBQUksQ0FBQyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRztZQUFFLE9BQU87UUFFL0IsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7UUFDdEIsSUFBSSxJQUFJLENBQUMsSUFBSSxLQUFLLElBQUksQ0FBQyxHQUFHLEVBQUU7WUFDeEIsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDO1lBQ3JCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNoQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDO1NBQ3hCO0lBQ0wsQ0FBQztJQUVELFlBQVk7UUFDUixJQUFJLENBQUMsR0FBRyxHQUFHLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQztRQUNyQixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDOUIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN6QixDQUFDOztxSEFsRVEsd0JBQXdCO3lHQUF4Qix3QkFBd0Isa05DUnJDLGdyQ0FhTTsyRkRMTyx3QkFBd0I7a0JBSnBDLFNBQVM7K0JBQ0ksdUJBQXVCOzBFQVN2QixVQUFVO3NCQUFuQixNQUFNO2dCQUtHLFNBQVM7c0JBQWxCLE1BQU07Z0JBS0csUUFBUTtzQkFBakIsTUFBTTtnQkFRSCxJQUFJO3NCQURQLEtBQUs7Z0JBYUYsR0FBRztzQkFETixLQUFLO2dCQU9HLFVBQVU7c0JBQWxCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPdXRwdXQsIEV2ZW50RW1pdHRlciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBLZXlQYWlyIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL2tleS1wYWlyLm1vZGVsJztcclxuaW1wb3J0IHsgUmFuZG9tSGVscGVyIH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ3play1zb3J0LWJ1dHRvbi1ncm91cCcsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vc29ydC1idXR0b24tZ3JvdXAuY29tcG9uZW50Lmh0bWwnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTb3J0QnV0dG9uR3JvdXBDb21wb25lbnQge1xyXG4gICAgZWxlbWVudE5hbWU6IHN0cmluZyA9ICcnO1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogRXhlY3V0ZXMgYWZ0ZXIgJ3NvcnQnIGlucHV0IGNoYW5nZWRcclxuICAgICAqL1xyXG4gICAgQE91dHB1dCgpIHNvcnRDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZyB8IG51bGw+KCk7XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBFeGVjdXRlcyBhZnRlciAnYXNjJyBpbnB1dCBjaGFuZ2VkXHJcbiAgICAgKi9cclxuICAgIEBPdXRwdXQoKSBhc2NDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiAgRXhlY3V0ZXMgYWZ0ZXIgY2xpY2sgb24gY29sdW1uXHJcbiAgICAgKi9cclxuICAgIEBPdXRwdXQoKSBvbkNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcbiAgICBzb3J0RmllbGQ6IGFueTtcclxuICAgIHByaXZhdGUgX3NvcnQ6IHN0cmluZyB8IG51bGwgPSBudWxsO1xyXG4gICAgZ2V0IHNvcnQoKTogc3RyaW5nIHwgbnVsbCB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX3NvcnQ7XHJcbiAgICB9XHJcbiAgICBASW5wdXQoKVxyXG4gICAgc2V0IHNvcnQodmFsdWU6IHN0cmluZyB8IG51bGwpIHtcclxuICAgICAgICBpZiAodGhpcy5fc29ydCAhPT0gdmFsdWUpIHtcclxuICAgICAgICAgICAgdGhpcy5fc29ydCA9IHZhbHVlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcblxyXG4gICAgcHJpdmF0ZSBfYXNjOiBib29sZWFuID0gZmFsc2U7XHJcbiAgICBnZXQgYXNjKCkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9hc2M7XHJcbiAgICB9XHJcbiAgICBASW5wdXQoKVxyXG4gICAgc2V0IGFzYyh2YWx1ZTogYm9vbGVhbikge1xyXG4gICAgICAgIGlmICh0aGlzLl9hc2MgIT09IHZhbHVlKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX2FzYyA9IHZhbHVlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBASW5wdXQoKSBzb3J0RmllbGRzOiBLZXlQYWlyW10gfCBudWxsID0gbnVsbDtcclxuXHJcbiAgICAvKipcclxuICAgICAqIERlZmF1bHQgY29uc3RydWN0b3JcclxuICAgICAqL1xyXG4gICAgY29uc3RydWN0b3IoKSB7XHJcbiAgICAgICAgdGhpcy5lbGVtZW50TmFtZSA9ICdzb3J0LWJ1dHRvbi1ncm91cC0nICsgUmFuZG9tSGVscGVyLnJhbmRvbUhleCgpO1xyXG4gICAgfVxyXG5cclxuICAgIHNvcnRGaWVsZENsaWNrKGl0ZW06IGFueSkge1xyXG4gICAgICAgIGlmICghaXRlbSB8fCAhaXRlbS5rZXkpIHJldHVybjtcclxuXHJcbiAgICAgICAgdGhpcy5zb3J0RmllbGQgPSBpdGVtO1xyXG4gICAgICAgIGlmICh0aGlzLnNvcnQgIT09IGl0ZW0ua2V5KSB7XHJcbiAgICAgICAgICAgIHRoaXMuc29ydCA9IGl0ZW0ua2V5O1xyXG4gICAgICAgICAgICB0aGlzLnNvcnRDaGFuZ2UuZW1pdCh0aGlzLnNvcnQpO1xyXG4gICAgICAgICAgICB0aGlzLm9uQ2hhbmdlLmVtaXQoKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgYXNjRGVzY0NsaWNrKCkge1xyXG4gICAgICAgIHRoaXMuYXNjID0gIXRoaXMuYXNjO1xyXG4gICAgICAgIHRoaXMuYXNjQ2hhbmdlLmVtaXQodGhpcy5hc2MpO1xyXG4gICAgICAgIHRoaXMub25DaGFuZ2UuZW1pdCgpO1xyXG4gICAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJidG4tZ3JvdXAgbWUtM1wiIHJvbGU9XCJncm91cFwiIGFyaWEtbGFiZWw9XCJTb3J0IGdyb3VwXCI+XHJcbiAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cImJ0biBidG4tbGlnaHRcIiAoY2xpY2spPVwiYXNjRGVzY0NsaWNrKClcIj5cclxuICAgICAgICA8c3BhbiAqbmdJZj1cImFzYyA9PT0gdW5kZWZpbmVkIHx8IGFzYyA9PT0gbnVsbFwiPjxpIGNsYXNzPVwiZmFzIGZhLXNvcnQtYWx0IGZhLWZ3XCI+PC9pPjwvc3Bhbj5cclxuICAgICAgICA8c3BhbiAqbmdJZj1cImFzYyA9PT0gdHJ1ZVwiPjxpIGNsYXNzPVwiZmFzIGZhLXNvcnQtYWxwaGEtZG93biBmYS1md1wiPjwvaT48L3NwYW4+XHJcbiAgICAgICAgPHNwYW4gKm5nSWY9XCJhc2MgPT09IGZhbHNlXCI+PGkgY2xhc3M9XCJmYXMgZmEtc29ydC1hbHBoYS11cCBmYS1md1wiPjwvaT48L3NwYW4+XHJcbiAgICA8L2J1dHRvbj5cclxuICAgIDxidXR0b24gKm5nSWY9XCJzb3J0RmllbGRzICYmIHNvcnRGaWVsZHMubGVuZ3RoID4gMFwiIGNsYXNzPVwiYnRuIGJ0bi1saWdodCBkcm9wZG93bi10b2dnbGVcIiB0eXBlPVwiYnV0dG9uXCIgaWQ9XCJ7e2VsZW1lbnROYW1lfX1cIiBkYXRhLWJzLXRvZ2dsZT1cImRyb3Bkb3duXCIgYXJpYS1leHBhbmRlZD1cImZhbHNlXCI+XHJcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInNvcnRGaWVsZDsgZWxzZSBlbHNlRmllbGRCbG9ja1wiPnt7IHNvcnRGaWVsZC52YWx1ZSB8IHRyYW5zbGF0ZSB9fTwvbmctY29udGFpbmVyPlxyXG4gICAgICAgIDxuZy10ZW1wbGF0ZSAjZWxzZUZpZWxkQmxvY2s+e3sgJ0FjdGlvbi5Tb3J0JyB8IHRyYW5zbGF0ZSB9fTwvbmctdGVtcGxhdGU+XHJcbiAgICA8L2J1dHRvbj5cclxuICAgIDx1bCAqbmdJZj1cInNvcnRGaWVsZHMgJiYgc29ydEZpZWxkcy5sZW5ndGggPiAwXCIgY2xhc3M9XCJkcm9wZG93bi1tZW51XCIgW2F0dHIuYXJpYS1sYWJlbGxlZGJ5XT1cImVsZW1lbnROYW1lXCI+XHJcbiAgICAgICAgPGxpPjxhICpuZ0Zvcj1cImxldCBpdGVtIG9mIHNvcnRGaWVsZHNcIiBjbGFzcz1cImRyb3Bkb3duLWl0ZW1cIiBocmVmPVwiamF2YXNjcmlwdDp2b2lkKDApXCIgKGNsaWNrKT1cInNvcnRGaWVsZENsaWNrKGl0ZW0pXCI+e3sgKGl0ZW0udmFsdWUpIHwgdHJhbnNsYXRlIH19PC9hPjwvbGk+XHJcbiAgICA8L3VsPlxyXG48L2Rpdj4iXX0=
79
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29ydC1idXR0b24tZ3JvdXAuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvemVrL3NyYy9saWIvbW9kdWxlcy9zb3J0L3NvcnQtYnV0dG9uLWdyb3VwL3NvcnQtYnV0dG9uLWdyb3VwLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3play9zcmMvbGliL21vZHVsZXMvc29ydC9zb3J0LWJ1dHRvbi1ncm91cC9zb3J0LWJ1dHRvbi1ncm91cC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXZFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7OztBQU05QyxNQUFNLE9BQU8sd0JBQXdCO0lBb0JqQyxJQUFJLElBQUk7UUFDSixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDdEIsQ0FBQztJQUNELElBQ0ksSUFBSSxDQUFDLEtBQW9CO1FBQ3pCLElBQUksSUFBSSxDQUFDLEtBQUssS0FBSyxLQUFLLEVBQUU7WUFDdEIsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7U0FDdEI7SUFDTCxDQUFDO0lBSUQsSUFBSSxHQUFHO1FBQ0gsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDO0lBQ3JCLENBQUM7SUFDRCxJQUNJLEdBQUcsQ0FBQyxLQUFjO1FBQ2xCLElBQUksSUFBSSxDQUFDLElBQUksS0FBSyxLQUFLLEVBQUU7WUFDckIsSUFBSSxDQUFDLElBQUksR0FBRyxLQUFLLENBQUM7U0FDckI7SUFDTCxDQUFDO0lBSUQ7O09BRUc7SUFDSDtRQTlDQSxnQkFBVyxHQUFXLEVBQUUsQ0FBQztRQUV6Qjs7V0FFRztRQUNPLGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBaUIsQ0FBQztRQUV6RDs7V0FFRztRQUNPLGNBQVMsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBRWxEOztXQUVHO1FBQ08sYUFBUSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFHaEMsVUFBSyxHQUFrQixJQUFJLENBQUM7UUFZNUIsU0FBSSxHQUFZLEtBQUssQ0FBQztRQVdyQixlQUFVLEdBQXFCLElBQUksQ0FBQztRQU16QyxJQUFJLENBQUMsV0FBVyxHQUFHLG9CQUFvQixHQUFHLFlBQVksQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUN2RSxDQUFDO0lBRUQsY0FBYyxDQUFDLElBQVM7UUFDcEIsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHO1lBQUUsT0FBTztRQUUvQixJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQztRQUN0QixJQUFJLElBQUksQ0FBQyxJQUFJLEtBQUssSUFBSSxDQUFDLEdBQUcsRUFBRTtZQUN4QixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUM7WUFDckIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ2hDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUM7U0FDeEI7SUFDTCxDQUFDO0lBRUQsWUFBWTtRQUNSLElBQUksQ0FBQyxHQUFHLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDO1FBQ3JCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUM5QixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3pCLENBQUM7O3FIQWxFUSx3QkFBd0I7eUdBQXhCLHdCQUF3QixrTkNSckMsZ3JDQWFNOzJGRExPLHdCQUF3QjtrQkFKcEMsU0FBUzsrQkFDSSx1QkFBdUI7MEVBU3ZCLFVBQVU7c0JBQW5CLE1BQU07Z0JBS0csU0FBUztzQkFBbEIsTUFBTTtnQkFLRyxRQUFRO3NCQUFqQixNQUFNO2dCQVFILElBQUk7c0JBRFAsS0FBSztnQkFhRixHQUFHO3NCQUROLEtBQUs7Z0JBT0csVUFBVTtzQkFBbEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE91dHB1dCwgRXZlbnRFbWl0dGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEtleVBhaXIgfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMva2V5LXBhaXIubW9kZWwnO1xyXG5pbXBvcnQgeyBSYW5kb21IZWxwZXIgfSBmcm9tICcuLi8uLi8uLi91dGlscyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnemVrLXNvcnQtYnV0dG9uLWdyb3VwJyxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi9zb3J0LWJ1dHRvbi1ncm91cC5jb21wb25lbnQuaHRtbCdcclxufSlcclxuZXhwb3J0IGNsYXNzIFNvcnRCdXR0b25Hcm91cENvbXBvbmVudCB7XHJcbiAgICBlbGVtZW50TmFtZTogc3RyaW5nID0gJyc7XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBFeGVjdXRlcyBhZnRlciAnc29ydCcgaW5wdXQgY2hhbmdlZFxyXG4gICAgICovXHJcbiAgICBAT3V0cHV0KCkgc29ydENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nIHwgbnVsbD4oKTtcclxuXHJcbiAgICAvKipcclxuICAgICAqIEV4ZWN1dGVzIGFmdGVyICdhc2MnIGlucHV0IGNoYW5nZWRcclxuICAgICAqL1xyXG4gICAgQE91dHB1dCgpIGFzY0NoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcclxuXHJcbiAgICAvKipcclxuICAgICAqICBFeGVjdXRlcyBhZnRlciBjbGljayBvbiBjb2x1bW5cclxuICAgICAqL1xyXG4gICAgQE91dHB1dCgpIG9uQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICAgIHNvcnRGaWVsZDogYW55O1xyXG4gICAgcHJpdmF0ZSBfc29ydDogc3RyaW5nIHwgbnVsbCA9IG51bGw7XHJcbiAgICBnZXQgc29ydCgpOiBzdHJpbmcgfCBudWxsIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fc29ydDtcclxuICAgIH1cclxuICAgIEBJbnB1dCgpXHJcbiAgICBzZXQgc29ydCh2YWx1ZTogc3RyaW5nIHwgbnVsbCkge1xyXG4gICAgICAgIGlmICh0aGlzLl9zb3J0ICE9PSB2YWx1ZSkge1xyXG4gICAgICAgICAgICB0aGlzLl9zb3J0ID0gdmFsdWU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuXHJcbiAgICBwcml2YXRlIF9hc2M6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIGdldCBhc2MoKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2FzYztcclxuICAgIH1cclxuICAgIEBJbnB1dCgpXHJcbiAgICBzZXQgYXNjKHZhbHVlOiBib29sZWFuKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuX2FzYyAhPT0gdmFsdWUpIHtcclxuICAgICAgICAgICAgdGhpcy5fYXNjID0gdmFsdWU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBJbnB1dCgpIHNvcnRGaWVsZHM6IEtleVBhaXJbXSB8IG51bGwgPSBudWxsO1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogRGVmYXVsdCBjb25zdHJ1Y3RvclxyXG4gICAgICovXHJcbiAgICBjb25zdHJ1Y3RvcigpIHtcclxuICAgICAgICB0aGlzLmVsZW1lbnROYW1lID0gJ3NvcnQtYnV0dG9uLWdyb3VwLScgKyBSYW5kb21IZWxwZXIucmFuZG9tSGV4KCk7XHJcbiAgICB9XHJcblxyXG4gICAgc29ydEZpZWxkQ2xpY2soaXRlbTogYW55KSB7XHJcbiAgICAgICAgaWYgKCFpdGVtIHx8ICFpdGVtLmtleSkgcmV0dXJuO1xyXG5cclxuICAgICAgICB0aGlzLnNvcnRGaWVsZCA9IGl0ZW07XHJcbiAgICAgICAgaWYgKHRoaXMuc29ydCAhPT0gaXRlbS5rZXkpIHtcclxuICAgICAgICAgICAgdGhpcy5zb3J0ID0gaXRlbS5rZXk7XHJcbiAgICAgICAgICAgIHRoaXMuc29ydENoYW5nZS5lbWl0KHRoaXMuc29ydCk7XHJcbiAgICAgICAgICAgIHRoaXMub25DaGFuZ2UuZW1pdCgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBhc2NEZXNjQ2xpY2soKSB7XHJcbiAgICAgICAgdGhpcy5hc2MgPSAhdGhpcy5hc2M7XHJcbiAgICAgICAgdGhpcy5hc2NDaGFuZ2UuZW1pdCh0aGlzLmFzYyk7XHJcbiAgICAgICAgdGhpcy5vbkNoYW5nZS5lbWl0KCk7XHJcbiAgICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cImJ0bi1ncm91cCBtZS0zXCIgcm9sZT1cImdyb3VwXCIgYXJpYS1sYWJlbD1cIlNvcnQgZ3JvdXBcIj5cclxuICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiYnRuIGJ0bi1saWdodFwiIChjbGljayk9XCJhc2NEZXNjQ2xpY2soKVwiPlxyXG4gICAgICAgIDxzcGFuICpuZ0lmPVwiYXNjID09PSB1bmRlZmluZWQgfHwgYXNjID09PSBudWxsXCI+PGkgY2xhc3M9XCJmYXMgZmEtc29ydC1hbHQgZmEtZndcIj48L2k+PC9zcGFuPlxyXG4gICAgICAgIDxzcGFuICpuZ0lmPVwiYXNjID09PSB0cnVlXCI+PGkgY2xhc3M9XCJmYXMgZmEtc29ydC1hbHBoYS1kb3duIGZhLWZ3XCI+PC9pPjwvc3Bhbj5cclxuICAgICAgICA8c3BhbiAqbmdJZj1cImFzYyA9PT0gZmFsc2VcIj48aSBjbGFzcz1cImZhcyBmYS1zb3J0LWFscGhhLXVwIGZhLWZ3XCI+PC9pPjwvc3Bhbj5cclxuICAgIDwvYnV0dG9uPlxyXG4gICAgPGJ1dHRvbiAqbmdJZj1cInNvcnRGaWVsZHMgJiYgc29ydEZpZWxkcy5sZW5ndGggPiAwXCIgY2xhc3M9XCJidG4gYnRuLWxpZ2h0IGRyb3Bkb3duLXRvZ2dsZVwiIHR5cGU9XCJidXR0b25cIiBpZD1cInt7ZWxlbWVudE5hbWV9fVwiIGRhdGEtYnMtdG9nZ2xlPVwiZHJvcGRvd25cIiBhcmlhLWV4cGFuZGVkPVwiZmFsc2VcIj5cclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwic29ydEZpZWxkOyBlbHNlIGVsc2VGaWVsZEJsb2NrXCI+e3sgc29ydEZpZWxkLnZhbHVlIHwgdHJhbnNsYXRlIH19PC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgPG5nLXRlbXBsYXRlICNlbHNlRmllbGRCbG9jaz57eyAnQWN0aW9uLlNvcnQnIHwgdHJhbnNsYXRlIH19PC9uZy10ZW1wbGF0ZT5cclxuICAgIDwvYnV0dG9uPlxyXG4gICAgPHVsICpuZ0lmPVwic29ydEZpZWxkcyAmJiBzb3J0RmllbGRzLmxlbmd0aCA+IDBcIiBjbGFzcz1cImRyb3Bkb3duLW1lbnVcIiBbYXR0ci5hcmlhLWxhYmVsbGVkYnldPVwiZWxlbWVudE5hbWVcIj5cclxuICAgICAgICA8bGk+PGEgKm5nRm9yPVwibGV0IGl0ZW0gb2Ygc29ydEZpZWxkc1wiIGNsYXNzPVwiZHJvcGRvd24taXRlbVwiIGhyZWY9XCJqYXZhc2NyaXB0OnZvaWQoMClcIiAoY2xpY2spPVwic29ydEZpZWxkQ2xpY2soaXRlbSlcIj57eyAoaXRlbS52YWx1ZSkgfCB0cmFuc2xhdGUgfX08L2E+PC9saT5cclxuICAgIDwvdWw+XHJcbjwvZGl2PiJdfQ==
@@ -93,9 +93,9 @@ export class SortDirective {
93
93
  }
94
94
  }
95
95
  }
96
- SortDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SortDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
97
- SortDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.0", type: SortDirective, selector: "[zek-sort]", inputs: { header: "header", sort: "sort", asc: "asc" }, outputs: { sortChange: "sortChange", ascChange: "ascChange", onChange: "onChange" }, host: { listeners: { "click": "onClick()" } }, ngImport: i0 });
98
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SortDirective, decorators: [{
96
+ SortDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: SortDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
97
+ SortDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.2", type: SortDirective, selector: "[zek-sort]", inputs: { header: "header", sort: "sort", asc: "asc" }, outputs: { sortChange: "sortChange", ascChange: "ascChange", onChange: "onChange" }, host: { listeners: { "click": "onClick()" } }, ngImport: i0 });
98
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: SortDirective, decorators: [{
99
99
  type: Directive,
100
100
  args: [{ selector: '[zek-sort]' }]
101
101
  }], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { header: [{
@@ -6,14 +6,14 @@ import { TranslateModule } from '@ngx-translate/core';
6
6
  import * as i0 from "@angular/core";
7
7
  export class SortModule {
8
8
  }
9
- SortModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SortModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
10
- SortModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.0", ngImport: i0, type: SortModule, declarations: [SortDirective,
9
+ SortModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: SortModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
10
+ SortModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.2", ngImport: i0, type: SortModule, declarations: [SortDirective,
11
11
  SortButtonGroupComponent], imports: [CommonModule,
12
12
  TranslateModule], exports: [SortDirective,
13
13
  SortButtonGroupComponent] });
14
- SortModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SortModule, imports: [CommonModule,
14
+ SortModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: SortModule, imports: [CommonModule,
15
15
  TranslateModule] });
16
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: SortModule, decorators: [{
16
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: SortModule, decorators: [{
17
17
  type: NgModule,
18
18
  args: [{
19
19
  imports: [
@@ -4,12 +4,12 @@ import { TimePipe } from './time.pipe';
4
4
  import * as i0 from "@angular/core";
5
5
  export class TimeModule {
6
6
  }
7
- TimeModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: TimeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
8
- TimeModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.0", ngImport: i0, type: TimeModule, declarations: [TimePipe], imports: [CommonModule], exports: [TimePipe] });
9
- TimeModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: TimeModule, providers: [
7
+ TimeModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: TimeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
8
+ TimeModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.2", ngImport: i0, type: TimeModule, declarations: [TimePipe], imports: [CommonModule], exports: [TimePipe] });
9
+ TimeModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: TimeModule, providers: [
10
10
  DatePipe
11
11
  ], imports: [CommonModule] });
12
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: TimeModule, decorators: [{
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: TimeModule, decorators: [{
13
13
  type: NgModule,
14
14
  args: [{
15
15
  imports: [
@@ -29,9 +29,9 @@ export class TimePipe {
29
29
  return d instanceof Date && !isNaN(d.getTime());
30
30
  }
31
31
  }
32
- TimePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: TimePipe, deps: [{ token: i1.DatePipe }], target: i0.ɵɵFactoryTarget.Pipe });
33
- TimePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.2.0", ngImport: i0, type: TimePipe, name: "time" });
34
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: TimePipe, decorators: [{
32
+ TimePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: TimePipe, deps: [{ token: i1.DatePipe }], target: i0.ɵɵFactoryTarget.Pipe });
33
+ TimePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "15.2.2", ngImport: i0, type: TimePipe, name: "time" });
34
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: TimePipe, decorators: [{
35
35
  type: Pipe,
36
36
  args: [{
37
37
  name: 'time'
@@ -4,6 +4,12 @@ import { map, takeWhile } from "rxjs/operators";
4
4
  import { DateHelper } from "../../utils";
5
5
  import * as i0 from "@angular/core";
6
6
  export class TimerService {
7
+ get count() {
8
+ return this._count;
9
+ }
10
+ get left() {
11
+ return this._left;
12
+ }
7
13
  // tickerInterval: any;
8
14
  // expired: Observable<number> = new Observable<number>();
9
15
  // initialCountValue: number = 0;
@@ -18,12 +24,6 @@ export class TimerService {
18
24
  this.tick = new Subject();
19
25
  this.completed = new Subject();
20
26
  }
21
- get count() {
22
- return this._count;
23
- }
24
- get left() {
25
- return this._left;
26
- }
27
27
  startHour(hours, minutes, seconds) {
28
28
  this.start((hours ? hours * 60 * 60 : 0) + (minutes ? minutes * 60 : 0) + seconds);
29
29
  }
@@ -79,11 +79,11 @@ export class TimerService {
79
79
  */
80
80
  }
81
81
  }
82
- TimerService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: TimerService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
83
- TimerService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: TimerService });
84
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: TimerService, decorators: [{
82
+ TimerService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: TimerService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
83
+ TimerService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: TimerService });
84
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: TimerService, decorators: [{
85
85
  type: Injectable
86
86
  }], ctorParameters: function () { return []; }, propDecorators: { seconds: [{
87
87
  type: Input
88
88
  }] } });
89
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZXItc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3play9zcmMvbGliL21vZHVsZXMvdGltZS90aW1lci1zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xELE9BQU8sRUFBRSxPQUFPLEVBQWdCLEtBQUssRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNwRCxPQUFPLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBTyxNQUFNLGdCQUFnQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxhQUFhLENBQUM7O0FBR3pDLE1BQU0sT0FBTyxZQUFZO0lBcUJyQix1QkFBdUI7SUFDdkIsMERBQTBEO0lBQzFELGlDQUFpQztJQUVqQztRQXhCUyxZQUFPLEdBQVcsQ0FBQyxDQUFDO1FBRTdCLDRCQUE0QjtRQUVwQixXQUFNLEdBQVksQ0FBQyxDQUFDO1FBS3BCLFVBQUssR0FBWSxDQUFDLENBQUM7UUFLM0IsZUFBVSxHQUFnQixJQUFJLENBQUM7UUFDdkIsaUJBQVksR0FBd0IsSUFBSSxDQUFDO1FBQ2pELGlFQUFpRTtRQUVqRSxTQUFJLEdBQUcsSUFBSSxPQUFPLEVBQVUsQ0FBQztRQUM3QixjQUFTLEdBQUcsSUFBSSxPQUFPLEVBQU8sQ0FBQztJQUtmLENBQUM7SUFuQmpCLElBQVcsS0FBSztRQUNaLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUN2QixDQUFDO0lBR0QsSUFBVyxJQUFJO1FBQ1gsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3RCLENBQUM7SUFlRCxTQUFTLENBQUMsS0FBYSxFQUFFLE9BQWUsRUFBRSxPQUFlO1FBQ3JELElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssR0FBRyxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsT0FBTyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsT0FBTyxDQUFDLENBQUM7SUFDdkYsQ0FBQztJQUNELFdBQVcsQ0FBQyxPQUFlLEVBQUUsT0FBZTtRQUN4QyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxPQUFPLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxPQUFPLENBQUMsQ0FBQztJQUN2RCxDQUFDO0lBQ0QsS0FBSyxDQUFDLE9BQWU7UUFDakIsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBRWIsSUFBSSxDQUFDLEtBQUssR0FBRyxPQUFPLENBQUM7UUFDckIsSUFBSSxDQUFDLE1BQU0sR0FBRyxPQUFPLENBQUM7UUFDdEIsSUFBSSxDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUMsVUFBVSxDQUFDLElBQUksSUFBSSxFQUFFLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFFN0QsMEVBQTBFO1FBQzFFLE1BQU0sTUFBTSxHQUFHLEtBQUssQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUMsSUFBSTtRQUM5QiwyQkFBMkI7UUFDM0Isd0JBQXdCO1FBQ3hCLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxFQUN2QixTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUMsQ0FBQztRQUMvQixrQ0FBa0M7U0FDckMsQ0FBQztRQUVGLElBQUksQ0FBQyxZQUFZLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDdEMsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ3hCLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUNELEtBQUs7UUFDRCxJQUFJLENBQUMsWUFBWSxFQUFFLFdBQVcsRUFBRSxDQUFDO1FBQ2pDLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDO1FBQ3pCLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO0lBQzNCLENBQUM7SUFHRCxZQUFZO1FBQ1IsSUFBSSxJQUFJLENBQUMsSUFBSSxFQUFFO1lBQ1gsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQzlCO1FBRUQsSUFBSSxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFO1lBQ2xDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQzdCO1FBQ0Q7Ozs7Ozs7Ozs7Ozs7Ozs7OztVQWtCRTtJQUNOLENBQUM7O3lHQXhGUSxZQUFZOzZHQUFaLFlBQVk7MkZBQVosWUFBWTtrQkFEeEIsVUFBVTswRUFFRSxPQUFPO3NCQUFmLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBJbnB1dCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IFN1YmplY3QsIFN1YnNjcmlwdGlvbiwgdGltZXIgfSBmcm9tIFwicnhqc1wiO1xyXG5pbXBvcnQgeyBtYXAsIHRha2VXaGlsZSwgdGFwIH0gZnJvbSBcInJ4anMvb3BlcmF0b3JzXCI7XHJcbmltcG9ydCB7IERhdGVIZWxwZXIgfSBmcm9tIFwiLi4vLi4vdXRpbHNcIjtcclxuXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIFRpbWVyU2VydmljZSB7XHJcbiAgICBASW5wdXQoKSBzZWNvbmRzOiBudW1iZXIgPSAwO1xyXG5cclxuICAgIC8vIHJ1bm5pbmc6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIFxyXG4gICAgcHJpdmF0ZSBfY291bnQgOiBudW1iZXIgPSAwO1xyXG4gICAgcHVibGljIGdldCBjb3VudCgpIDogbnVtYmVyIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fY291bnQ7XHJcbiAgICB9XHJcbiAgICBcclxuICAgIHByaXZhdGUgX2xlZnQgOiBudW1iZXIgPSAwO1xyXG4gICAgcHVibGljIGdldCBsZWZ0KCkgOiBudW1iZXIge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9sZWZ0O1xyXG4gICAgfVxyXG5cclxuICAgIGV4cGlyZURhdGU6IERhdGUgfCBudWxsID0gbnVsbDtcclxuICAgIHByaXZhdGUgc3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb24gfCBudWxsID0gbnVsbDtcclxuICAgIC8vQE91dHB1dCgpIGNoZWNrVGltZTogRXZlbnRFbWl0dGVyPG51bWJlcj4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gICAgdGljayA9IG5ldyBTdWJqZWN0PG51bWJlcj4oKTtcclxuICAgIGNvbXBsZXRlZCA9IG5ldyBTdWJqZWN0PGFueT4oKTtcclxuICAgIC8vIHRpY2tlckludGVydmFsOiBhbnk7XHJcbiAgICAvLyBleHBpcmVkOiBPYnNlcnZhYmxlPG51bWJlcj4gPSBuZXcgT2JzZXJ2YWJsZTxudW1iZXI+KCk7XHJcbiAgICAvLyBpbml0aWFsQ291bnRWYWx1ZTogbnVtYmVyID0gMDtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcigpIHsgfVxyXG5cclxuXHJcbiAgICBzdGFydEhvdXIoaG91cnM6IG51bWJlciwgbWludXRlczogbnVtYmVyLCBzZWNvbmRzOiBudW1iZXIpIHtcclxuICAgICAgICB0aGlzLnN0YXJ0KChob3VycyA/IGhvdXJzICogNjAgKiA2MCA6IDApICsgKG1pbnV0ZXMgPyBtaW51dGVzICogNjAgOiAwKSArIHNlY29uZHMpO1xyXG4gICAgfVxyXG4gICAgc3RhcnRNaW51dGUobWludXRlczogbnVtYmVyLCBzZWNvbmRzOiBudW1iZXIpIHtcclxuICAgICAgICB0aGlzLnN0YXJ0KChtaW51dGVzID8gbWludXRlcyAqIDYwIDogMCkgKyBzZWNvbmRzKTtcclxuICAgIH1cclxuICAgIHN0YXJ0KHNlY29uZHM6IG51bWJlcikge1xyXG4gICAgICAgIHRoaXMuY2xlYXIoKTtcclxuXHJcbiAgICAgICAgdGhpcy5fbGVmdCA9IHNlY29uZHM7XHJcbiAgICAgICAgdGhpcy5fY291bnQgPSBzZWNvbmRzO1xyXG4gICAgICAgIHRoaXMuZXhwaXJlRGF0ZSA9IERhdGVIZWxwZXIuYWRkU2Vjb25kcyhuZXcgRGF0ZSgpLCBzZWNvbmRzKTtcclxuXHJcbiAgICAgICAgLy90aGlzLmludGVybmFsVGljaygpOy8vYmVjYXVzZSBydW4gZmlyc3QgdGljayB2YWx1ZSBleGFtcGxlIDYwIC0+ICBub3QgNTlcclxuICAgICAgICBjb25zdCBzb3VyY2UgPSB0aW1lcigwLCAxMDAwKS5waXBlKFxyXG4gICAgICAgICAgICAvL21hcChpID0+IHRoaXMuY291bnQgLSBpKSxcclxuICAgICAgICAgICAgLy90YWtlV2hpbGUoaSA9PiBpID4gMCksXHJcbiAgICAgICAgICAgIG1hcChfaSA9PiB0aGlzLl9sZWZ0LS0pLFxyXG4gICAgICAgICAgICB0YWtlV2hpbGUoX2kgPT4gdGhpcy5sZWZ0ID49IDApXHJcbiAgICAgICAgICAgIC8vdGFwKHMgPT4gdGhpcy5jaGVja1RpbWUuZW1pdChzKSlcclxuICAgICAgICApO1xyXG5cclxuICAgICAgICB0aGlzLnN1YnNjcmlwdGlvbiA9IHNvdXJjZS5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLmludGVybmFsVGljaygpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG4gICAgY2xlYXIoKSB7XHJcbiAgICAgICAgdGhpcy5zdWJzY3JpcHRpb24/LnVuc3Vic2NyaWJlKCk7XHJcbiAgICAgICAgdGhpcy5zdWJzY3JpcHRpb24gPSBudWxsO1xyXG4gICAgICAgIHRoaXMuZXhwaXJlRGF0ZSA9IG51bGw7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIGludGVybmFsVGljaygpIHtcclxuICAgICAgICBpZiAodGhpcy50aWNrKSB7XHJcbiAgICAgICAgICAgIHRoaXMudGljay5uZXh0KHRoaXMuX2xlZnQpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKHRoaXMubGVmdCA8PSAwICYmIHRoaXMuY29tcGxldGVkKSB7XHJcbiAgICAgICAgICAgIHRoaXMuY29tcGxldGVkLm5leHQobnVsbCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC8qXHJcbiAgICAgICAgLy8gZ2V0IHRvdGFsIHNlY29uZHMgYmV0d2VlbiB0aGUgdGltZXNcclxuICAgICAgICBsZXQgZGVsdGEgPSBNYXRoLmFicyhkYXRlX2Z1dHVyZSAtIGRhdGVfbm93KSAvIDEwMDA7XHJcblxyXG4gICAgICAgIC8vIGNhbGN1bGF0ZSAoYW5kIHN1YnRyYWN0KSB3aG9sZSBkYXlzXHJcbiAgICAgICAgbGV0IGRheXMgPSBNYXRoLmZsb29yKGRlbHRhIC8gODY0MDApO1xyXG4gICAgICAgIGRlbHRhIC09IGRheXMgKiA4NjQwMDtcclxuXHJcbiAgICAgICAgLy8gY2FsY3VsYXRlIChhbmQgc3VidHJhY3QpIHdob2xlIGhvdXJzXHJcbiAgICAgICAgbGV0IGhvdXJzID0gTWF0aC5mbG9vcihkZWx0YSAvIDM2MDApICUgMjQ7XHJcbiAgICAgICAgZGVsdGEgLT0gaG91cnMgKiAzNjAwO1xyXG5cclxuICAgICAgICAvLyBjYWxjdWxhdGUgKGFuZCBzdWJ0cmFjdCkgd2hvbGUgbWludXRlc1xyXG4gICAgICAgIGxldCBtaW51dGVzID0gTWF0aC5mbG9vcihkZWx0YSAvIDYwKSAlIDYwO1xyXG4gICAgICAgIGRlbHRhIC09IG1pbnV0ZXMgKiA2MDtcclxuXHJcbiAgICAgICAgLy8gd2hhdCdzIGxlZnQgaXMgc2Vjb25kc1xyXG4gICAgICAgIGxldCBzZWNvbmRzID0gZGVsdGEgJSA2MDsgIC8vIGluIHRoZW9yeSB0aGUgbW9kdWx1cyBpcyBub3QgcmVxdWlyZWRcclxuICAgICAgICAqL1xyXG4gICAgfVxyXG59Il19
89
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZXItc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3play9zcmMvbGliL21vZHVsZXMvdGltZS90aW1lci1zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xELE9BQU8sRUFBRSxPQUFPLEVBQWdCLEtBQUssRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNwRCxPQUFPLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBTyxNQUFNLGdCQUFnQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxhQUFhLENBQUM7O0FBR3pDLE1BQU0sT0FBTyxZQUFZO0lBTXJCLElBQVcsS0FBSztRQUNaLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUN2QixDQUFDO0lBR0QsSUFBVyxJQUFJO1FBQ1gsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3RCLENBQUM7SUFRRCx1QkFBdUI7SUFDdkIsMERBQTBEO0lBQzFELGlDQUFpQztJQUVqQztRQXhCUyxZQUFPLEdBQVcsQ0FBQyxDQUFDO1FBRTdCLDRCQUE0QjtRQUVwQixXQUFNLEdBQVksQ0FBQyxDQUFDO1FBS3BCLFVBQUssR0FBWSxDQUFDLENBQUM7UUFLM0IsZUFBVSxHQUFnQixJQUFJLENBQUM7UUFDdkIsaUJBQVksR0FBd0IsSUFBSSxDQUFDO1FBQ2pELGlFQUFpRTtRQUVqRSxTQUFJLEdBQUcsSUFBSSxPQUFPLEVBQVUsQ0FBQztRQUM3QixjQUFTLEdBQUcsSUFBSSxPQUFPLEVBQU8sQ0FBQztJQUtmLENBQUM7SUFHakIsU0FBUyxDQUFDLEtBQWEsRUFBRSxPQUFlLEVBQUUsT0FBZTtRQUNyRCxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLEdBQUcsRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLE9BQU8sR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxDQUFDO0lBQ3ZGLENBQUM7SUFDRCxXQUFXLENBQUMsT0FBZSxFQUFFLE9BQWU7UUFDeEMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsT0FBTyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsT0FBTyxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUNELEtBQUssQ0FBQyxPQUFlO1FBQ2pCLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUViLElBQUksQ0FBQyxLQUFLLEdBQUcsT0FBTyxDQUFDO1FBQ3JCLElBQUksQ0FBQyxNQUFNLEdBQUcsT0FBTyxDQUFDO1FBQ3RCLElBQUksQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFDLFVBQVUsQ0FBQyxJQUFJLElBQUksRUFBRSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBRTdELDBFQUEwRTtRQUMxRSxNQUFNLE1BQU0sR0FBRyxLQUFLLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDLElBQUk7UUFDOUIsMkJBQTJCO1FBQzNCLHdCQUF3QjtRQUN4QixHQUFHLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsRUFDdkIsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLENBQUM7UUFDL0Isa0NBQWtDO1NBQ3JDLENBQUM7UUFFRixJQUFJLENBQUMsWUFBWSxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ3RDLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUN4QixDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFDRCxLQUFLO1FBQ0QsSUFBSSxDQUFDLFlBQVksRUFBRSxXQUFXLEVBQUUsQ0FBQztRQUNqQyxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQztRQUN6QixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQztJQUMzQixDQUFDO0lBR0QsWUFBWTtRQUNSLElBQUksSUFBSSxDQUFDLElBQUksRUFBRTtZQUNYLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUM5QjtRQUVELElBQUksSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUNsQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUM3QjtRQUNEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7VUFrQkU7SUFDTixDQUFDOzt5R0F4RlEsWUFBWTs2R0FBWixZQUFZOzJGQUFaLFlBQVk7a0JBRHhCLFVBQVU7MEVBRUUsT0FBTztzQkFBZixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgSW5wdXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBTdWJqZWN0LCBTdWJzY3JpcHRpb24sIHRpbWVyIH0gZnJvbSBcInJ4anNcIjtcclxuaW1wb3J0IHsgbWFwLCB0YWtlV2hpbGUsIHRhcCB9IGZyb20gXCJyeGpzL29wZXJhdG9yc1wiO1xyXG5pbXBvcnQgeyBEYXRlSGVscGVyIH0gZnJvbSBcIi4uLy4uL3V0aWxzXCI7XHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBUaW1lclNlcnZpY2Uge1xyXG4gICAgQElucHV0KCkgc2Vjb25kczogbnVtYmVyID0gMDtcclxuXHJcbiAgICAvLyBydW5uaW5nOiBib29sZWFuID0gZmFsc2U7XHJcbiAgICBcclxuICAgIHByaXZhdGUgX2NvdW50IDogbnVtYmVyID0gMDtcclxuICAgIHB1YmxpYyBnZXQgY291bnQoKSA6IG51bWJlciB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2NvdW50O1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICBwcml2YXRlIF9sZWZ0IDogbnVtYmVyID0gMDtcclxuICAgIHB1YmxpYyBnZXQgbGVmdCgpIDogbnVtYmVyIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fbGVmdDtcclxuICAgIH1cclxuXHJcbiAgICBleHBpcmVEYXRlOiBEYXRlIHwgbnVsbCA9IG51bGw7XHJcbiAgICBwcml2YXRlIHN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uIHwgbnVsbCA9IG51bGw7XHJcbiAgICAvL0BPdXRwdXQoKSBjaGVja1RpbWU6IEV2ZW50RW1pdHRlcjxudW1iZXI+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICAgIHRpY2sgPSBuZXcgU3ViamVjdDxudW1iZXI+KCk7XHJcbiAgICBjb21wbGV0ZWQgPSBuZXcgU3ViamVjdDxhbnk+KCk7XHJcbiAgICAvLyB0aWNrZXJJbnRlcnZhbDogYW55O1xyXG4gICAgLy8gZXhwaXJlZDogT2JzZXJ2YWJsZTxudW1iZXI+ID0gbmV3IE9ic2VydmFibGU8bnVtYmVyPigpO1xyXG4gICAgLy8gaW5pdGlhbENvdW50VmFsdWU6IG51bWJlciA9IDA7XHJcblxyXG4gICAgY29uc3RydWN0b3IoKSB7IH1cclxuXHJcblxyXG4gICAgc3RhcnRIb3VyKGhvdXJzOiBudW1iZXIsIG1pbnV0ZXM6IG51bWJlciwgc2Vjb25kczogbnVtYmVyKSB7XHJcbiAgICAgICAgdGhpcy5zdGFydCgoaG91cnMgPyBob3VycyAqIDYwICogNjAgOiAwKSArIChtaW51dGVzID8gbWludXRlcyAqIDYwIDogMCkgKyBzZWNvbmRzKTtcclxuICAgIH1cclxuICAgIHN0YXJ0TWludXRlKG1pbnV0ZXM6IG51bWJlciwgc2Vjb25kczogbnVtYmVyKSB7XHJcbiAgICAgICAgdGhpcy5zdGFydCgobWludXRlcyA/IG1pbnV0ZXMgKiA2MCA6IDApICsgc2Vjb25kcyk7XHJcbiAgICB9XHJcbiAgICBzdGFydChzZWNvbmRzOiBudW1iZXIpIHtcclxuICAgICAgICB0aGlzLmNsZWFyKCk7XHJcblxyXG4gICAgICAgIHRoaXMuX2xlZnQgPSBzZWNvbmRzO1xyXG4gICAgICAgIHRoaXMuX2NvdW50ID0gc2Vjb25kcztcclxuICAgICAgICB0aGlzLmV4cGlyZURhdGUgPSBEYXRlSGVscGVyLmFkZFNlY29uZHMobmV3IERhdGUoKSwgc2Vjb25kcyk7XHJcblxyXG4gICAgICAgIC8vdGhpcy5pbnRlcm5hbFRpY2soKTsvL2JlY2F1c2UgcnVuIGZpcnN0IHRpY2sgdmFsdWUgZXhhbXBsZSA2MCAtPiAgbm90IDU5XHJcbiAgICAgICAgY29uc3Qgc291cmNlID0gdGltZXIoMCwgMTAwMCkucGlwZShcclxuICAgICAgICAgICAgLy9tYXAoaSA9PiB0aGlzLmNvdW50IC0gaSksXHJcbiAgICAgICAgICAgIC8vdGFrZVdoaWxlKGkgPT4gaSA+IDApLFxyXG4gICAgICAgICAgICBtYXAoX2kgPT4gdGhpcy5fbGVmdC0tKSxcclxuICAgICAgICAgICAgdGFrZVdoaWxlKF9pID0+IHRoaXMubGVmdCA+PSAwKVxyXG4gICAgICAgICAgICAvL3RhcChzID0+IHRoaXMuY2hlY2tUaW1lLmVtaXQocykpXHJcbiAgICAgICAgKTtcclxuXHJcbiAgICAgICAgdGhpcy5zdWJzY3JpcHRpb24gPSBzb3VyY2Uuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5pbnRlcm5hbFRpY2soKTtcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuICAgIGNsZWFyKCkge1xyXG4gICAgICAgIHRoaXMuc3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpO1xyXG4gICAgICAgIHRoaXMuc3Vic2NyaXB0aW9uID0gbnVsbDtcclxuICAgICAgICB0aGlzLmV4cGlyZURhdGUgPSBudWxsO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICBpbnRlcm5hbFRpY2soKSB7XHJcbiAgICAgICAgaWYgKHRoaXMudGljaykge1xyXG4gICAgICAgICAgICB0aGlzLnRpY2submV4dCh0aGlzLl9sZWZ0KTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGlmICh0aGlzLmxlZnQgPD0gMCAmJiB0aGlzLmNvbXBsZXRlZCkge1xyXG4gICAgICAgICAgICB0aGlzLmNvbXBsZXRlZC5uZXh0KG51bGwpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAvKlxyXG4gICAgICAgIC8vIGdldCB0b3RhbCBzZWNvbmRzIGJldHdlZW4gdGhlIHRpbWVzXHJcbiAgICAgICAgbGV0IGRlbHRhID0gTWF0aC5hYnMoZGF0ZV9mdXR1cmUgLSBkYXRlX25vdykgLyAxMDAwO1xyXG5cclxuICAgICAgICAvLyBjYWxjdWxhdGUgKGFuZCBzdWJ0cmFjdCkgd2hvbGUgZGF5c1xyXG4gICAgICAgIGxldCBkYXlzID0gTWF0aC5mbG9vcihkZWx0YSAvIDg2NDAwKTtcclxuICAgICAgICBkZWx0YSAtPSBkYXlzICogODY0MDA7XHJcblxyXG4gICAgICAgIC8vIGNhbGN1bGF0ZSAoYW5kIHN1YnRyYWN0KSB3aG9sZSBob3Vyc1xyXG4gICAgICAgIGxldCBob3VycyA9IE1hdGguZmxvb3IoZGVsdGEgLyAzNjAwKSAlIDI0O1xyXG4gICAgICAgIGRlbHRhIC09IGhvdXJzICogMzYwMDtcclxuXHJcbiAgICAgICAgLy8gY2FsY3VsYXRlIChhbmQgc3VidHJhY3QpIHdob2xlIG1pbnV0ZXNcclxuICAgICAgICBsZXQgbWludXRlcyA9IE1hdGguZmxvb3IoZGVsdGEgLyA2MCkgJSA2MDtcclxuICAgICAgICBkZWx0YSAtPSBtaW51dGVzICogNjA7XHJcblxyXG4gICAgICAgIC8vIHdoYXQncyBsZWZ0IGlzIHNlY29uZHNcclxuICAgICAgICBsZXQgc2Vjb25kcyA9IGRlbHRhICUgNjA7ICAvLyBpbiB0aGVvcnkgdGhlIG1vZHVsdXMgaXMgbm90IHJlcXVpcmVkXHJcbiAgICAgICAgKi9cclxuICAgIH1cclxufSJdfQ==
@@ -9,9 +9,9 @@ export class ZekFieldValidator {
9
9
  console.log(this.field.errors);
10
10
  }
11
11
  }
12
- ZekFieldValidator.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: ZekFieldValidator, deps: [], target: i0.ɵɵFactoryTarget.Component });
13
- ZekFieldValidator.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.0", type: ZekFieldValidator, selector: "zek-field-validator, [zek-field-validator]", inputs: { field: "field" }, host: { properties: { "class": "\"invalid-tooltip\"" } }, ngImport: i0, template: "<ng-container *ngIf=\"field\">\r\n <ng-container *ngIf=\"field.invalid && (field.dirty || field.touched || field.formDirective?.submitted)\">\r\n <ng-container *ngIf=\"field.errors\">\r\n <ng-container *ngIf=\"field.errors.required\">{{ 'Validation.Required' | translate }}</ng-container>\r\n <ng-container *ngIf=\"field.errors.minlength\">{{ 'Validation.MinLengthFormat' | translate:{ value: field.errors.minlength.requiredLength } }}</ng-container>\r\n <ng-container *ngIf=\"field.errors.maxlength\">{{ 'Validation.MaxLengthFormat' | translate:{ value: field.errors.maxlength.requiredLength } }}</ng-container>\r\n <ng-container *ngIf=\"field.errors.email\">{{ 'Validation.Pattern' | translate }}</ng-container>\r\n <ng-container *ngIf=\"field.errors.pattern\">{{ 'Validation.Pattern' | translate }}</ng-container><!-- {{ field.errors.pattern.requiredPattern }} -->\r\n <ng-container *ngIf=\"field.errors.server\">{{field.errors.server}}</ng-container>\r\n </ng-container>\r\n </ng-container>\r\n</ng-container>", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }] });
14
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: ZekFieldValidator, decorators: [{
12
+ ZekFieldValidator.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ZekFieldValidator, deps: [], target: i0.ɵɵFactoryTarget.Component });
13
+ ZekFieldValidator.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.2", type: ZekFieldValidator, selector: "zek-field-validator, [zek-field-validator]", inputs: { field: "field" }, host: { properties: { "class": "\"invalid-tooltip\"" } }, ngImport: i0, template: "<ng-container *ngIf=\"field\">\r\n <ng-container *ngIf=\"field.invalid && (field.dirty || field.touched || field.formDirective?.submitted)\">\r\n <ng-container *ngIf=\"field.errors\">\r\n <ng-container *ngIf=\"field.errors.required\">{{ 'Validation.Required' | translate }}</ng-container>\r\n <ng-container *ngIf=\"field.errors.minlength\">{{ 'Validation.MinLengthFormat' | translate:{ value: field.errors.minlength.requiredLength } }}</ng-container>\r\n <ng-container *ngIf=\"field.errors.maxlength\">{{ 'Validation.MaxLengthFormat' | translate:{ value: field.errors.maxlength.requiredLength } }}</ng-container>\r\n <ng-container *ngIf=\"field.errors.email\">{{ 'Validation.Pattern' | translate }}</ng-container>\r\n <ng-container *ngIf=\"field.errors.pattern\">{{ 'Validation.Pattern' | translate }}</ng-container><!-- {{ field.errors.pattern.requiredPattern }} -->\r\n <ng-container *ngIf=\"field.errors.server\">{{field.errors.server}}</ng-container>\r\n </ng-container>\r\n </ng-container>\r\n</ng-container>", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }] });
14
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ZekFieldValidator, decorators: [{
15
15
  type: Component,
16
16
  args: [{ selector: 'zek-field-validator, [zek-field-validator]', host: { '[class]': '"invalid-tooltip"' }, template: "<ng-container *ngIf=\"field\">\r\n <ng-container *ngIf=\"field.invalid && (field.dirty || field.touched || field.formDirective?.submitted)\">\r\n <ng-container *ngIf=\"field.errors\">\r\n <ng-container *ngIf=\"field.errors.required\">{{ 'Validation.Required' | translate }}</ng-container>\r\n <ng-container *ngIf=\"field.errors.minlength\">{{ 'Validation.MinLengthFormat' | translate:{ value: field.errors.minlength.requiredLength } }}</ng-container>\r\n <ng-container *ngIf=\"field.errors.maxlength\">{{ 'Validation.MaxLengthFormat' | translate:{ value: field.errors.maxlength.requiredLength } }}</ng-container>\r\n <ng-container *ngIf=\"field.errors.email\">{{ 'Validation.Pattern' | translate }}</ng-container>\r\n <ng-container *ngIf=\"field.errors.pattern\">{{ 'Validation.Pattern' | translate }}</ng-container><!-- {{ field.errors.pattern.requiredPattern }} -->\r\n <ng-container *ngIf=\"field.errors.server\">{{field.errors.server}}</ng-container>\r\n </ng-container>\r\n </ng-container>\r\n</ng-container>" }]
17
17
  }], ctorParameters: function () { return []; }, propDecorators: { field: [{
@@ -5,12 +5,12 @@ import { ZekFieldValidator } from './field-validator';
5
5
  import * as i0 from "@angular/core";
6
6
  export class ValidatorModule {
7
7
  }
8
- ValidatorModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: ValidatorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
9
- ValidatorModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.0", ngImport: i0, type: ValidatorModule, declarations: [ZekFieldValidator], imports: [CommonModule,
8
+ ValidatorModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ValidatorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
9
+ ValidatorModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.2", ngImport: i0, type: ValidatorModule, declarations: [ZekFieldValidator], imports: [CommonModule,
10
10
  TranslateModule], exports: [ZekFieldValidator] });
11
- ValidatorModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: ValidatorModule, imports: [CommonModule,
11
+ ValidatorModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ValidatorModule, imports: [CommonModule,
12
12
  TranslateModule] });
13
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: ValidatorModule, decorators: [{
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ValidatorModule, decorators: [{
14
14
  type: NgModule,
15
15
  args: [{
16
16
  imports: [
@@ -44,9 +44,9 @@ class AbstractValidatorDirective {
44
44
  return input != null /* both `null` and `undefined` */;
45
45
  }
46
46
  }
47
- AbstractValidatorDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: AbstractValidatorDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
48
- AbstractValidatorDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.0", type: AbstractValidatorDirective, usesOnChanges: true, ngImport: i0 });
49
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: AbstractValidatorDirective, decorators: [{
47
+ AbstractValidatorDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: AbstractValidatorDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
48
+ AbstractValidatorDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.2", type: AbstractValidatorDirective, usesOnChanges: true, ngImport: i0 });
49
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: AbstractValidatorDirective, decorators: [{
50
50
  type: Directive
51
51
  }] });
52
52
  export class RangeValidator extends AbstractValidatorDirective {
@@ -60,9 +60,9 @@ export class RangeValidator extends AbstractValidatorDirective {
60
60
  this.createValidator = (range) => rangeValidator(range);
61
61
  }
62
62
  }
63
- RangeValidator.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: RangeValidator, deps: null, target: i0.ɵɵFactoryTarget.Directive });
64
- RangeValidator.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.0", type: RangeValidator, selector: "input[type=number][range][formControlName],input[type=number][range][formControl],input[type=number][range][ngModel]", inputs: { range: "range" }, host: { properties: { "attr.range": "_enabled ? range : null" } }, providers: [RANGE_VALIDATOR], usesInheritance: true, ngImport: i0 });
65
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: RangeValidator, decorators: [{
63
+ RangeValidator.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: RangeValidator, deps: null, target: i0.ɵɵFactoryTarget.Directive });
64
+ RangeValidator.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.2", type: RangeValidator, selector: "input[type=number][range][formControlName],input[type=number][range][formControl],input[type=number][range][ngModel]", inputs: { range: "range" }, host: { properties: { "attr.range": "_enabled ? range : null" } }, providers: [RANGE_VALIDATOR], usesInheritance: true, ngImport: i0 });
65
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: RangeValidator, decorators: [{
66
66
  type: Directive,
67
67
  args: [{
68
68
  selector: 'input[type=number][range][formControlName],input[type=number][range][formControl],input[type=number][range][ngModel]',
@@ -4,10 +4,10 @@ import { RangeValidator } from './directive';
4
4
  import * as i0 from "@angular/core";
5
5
  export class ValidatorsModule {
6
6
  }
7
- ValidatorsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: ValidatorsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
8
- ValidatorsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.0", ngImport: i0, type: ValidatorsModule, declarations: [RangeValidator], imports: [CommonModule], exports: [RangeValidator] });
9
- ValidatorsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: ValidatorsModule, imports: [CommonModule] });
10
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: ValidatorsModule, decorators: [{
7
+ ValidatorsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ValidatorsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
8
+ ValidatorsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.2", ngImport: i0, type: ValidatorsModule, declarations: [RangeValidator], imports: [CommonModule], exports: [RangeValidator] });
9
+ ValidatorsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ValidatorsModule, imports: [CommonModule] });
10
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ValidatorsModule, decorators: [{
11
11
  type: NgModule,
12
12
  args: [{
13
13
  imports: [
@@ -52,9 +52,9 @@ export class WizardComponent {
52
52
  this.step++;
53
53
  }
54
54
  }
55
- WizardComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: WizardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
56
- WizardComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.0", type: WizardComponent, selector: "zek-wizard", inputs: { steps: "steps", step: "step" }, ngImport: i0, template: "<div class=\"position-relative m-4\">\r\n <div class=\"progress\" style=\"height: 1px;\">\r\n <div class=\"progress-bar\" role=\"progressbar\" [style.width.%]=\"progress\" [attr.aria-valuenow]=\"progress\" aria-valuemin=\"0\" aria-valuemax=\"100\"></div>\r\n </div>\r\n <!-- left: 33%!important -->\r\n <!-- [style.left.%]=\"item.progress\" -->\r\n <button *ngFor=\"let item of stepsArray\" [attr.style]=\"('width:2rem; height:2rem; left:' + item.progress + '%!important') | safe:'style'\" type=\"button\" class=\"position-absolute top-0 translate-middle btn btn-sm btn-primary rounded-pill\">{{ item.step }}</button>\r\n</div>", dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "pipe", type: i2.SafePipe, name: "safe" }] });
57
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: WizardComponent, decorators: [{
55
+ WizardComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: WizardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
56
+ WizardComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.2", type: WizardComponent, selector: "zek-wizard", inputs: { steps: "steps", step: "step" }, ngImport: i0, template: "<div class=\"position-relative m-4\">\r\n <div class=\"progress\" style=\"height: 1px;\">\r\n <div class=\"progress-bar\" role=\"progressbar\" [style.width.%]=\"progress\" [attr.aria-valuenow]=\"progress\" aria-valuemin=\"0\" aria-valuemax=\"100\"></div>\r\n </div>\r\n <!-- left: 33%!important -->\r\n <!-- [style.left.%]=\"item.progress\" -->\r\n <button *ngFor=\"let item of stepsArray\" [attr.style]=\"('width:2rem; height:2rem; left:' + item.progress + '%!important') | safe:'style'\" type=\"button\" class=\"position-absolute top-0 translate-middle btn btn-sm btn-primary rounded-pill\">{{ item.step }}</button>\r\n</div>", dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "pipe", type: i2.SafePipe, name: "safe" }] });
57
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: WizardComponent, decorators: [{
58
58
  type: Component,
59
59
  args: [{ selector: 'zek-wizard', template: "<div class=\"position-relative m-4\">\r\n <div class=\"progress\" style=\"height: 1px;\">\r\n <div class=\"progress-bar\" role=\"progressbar\" [style.width.%]=\"progress\" [attr.aria-valuenow]=\"progress\" aria-valuemin=\"0\" aria-valuemax=\"100\"></div>\r\n </div>\r\n <!-- left: 33%!important -->\r\n <!-- [style.left.%]=\"item.progress\" -->\r\n <button *ngFor=\"let item of stepsArray\" [attr.style]=\"('width:2rem; height:2rem; left:' + item.progress + '%!important') | safe:'style'\" type=\"button\" class=\"position-absolute top-0 translate-middle btn btn-sm btn-primary rounded-pill\">{{ item.step }}</button>\r\n</div>" }]
60
60
  }], propDecorators: { steps: [{
@@ -6,14 +6,14 @@ import { SafeModule } from '../safe';
6
6
  import * as i0 from "@angular/core";
7
7
  export class WizardModule {
8
8
  }
9
- WizardModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: WizardModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
10
- WizardModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.0", ngImport: i0, type: WizardModule, declarations: [WizardComponent,
9
+ WizardModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: WizardModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
10
+ WizardModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.2", ngImport: i0, type: WizardModule, declarations: [WizardComponent,
11
11
  WizardComponent2], imports: [CommonModule,
12
12
  SafeModule], exports: [WizardComponent,
13
13
  WizardComponent2] });
14
- WizardModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: WizardModule, imports: [CommonModule,
14
+ WizardModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: WizardModule, imports: [CommonModule,
15
15
  SafeModule] });
16
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: WizardModule, decorators: [{
16
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: WizardModule, decorators: [{
17
17
  type: NgModule,
18
18
  args: [{
19
19
  imports: [
@@ -4,9 +4,9 @@ import * as i0 from "@angular/core";
4
4
  import * as i1 from "@angular/common";
5
5
  export class WizardComponent2 extends WizardComponent {
6
6
  }
7
- WizardComponent2.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: WizardComponent2, deps: null, target: i0.ɵɵFactoryTarget.Component });
8
- WizardComponent2.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.0", type: WizardComponent2, selector: "zek-wizard2", usesInheritance: true, ngImport: i0, template: "<div class=\"m-2\">\r\n <button *ngFor=\"let item of stepsArray\"\r\n [class.btn-outline-secondary]=\"item.step >= steps\"\r\n [class.btn-primary]=\"item.step < steps\"\r\n type=\"button\"\r\n class=\"btn btn-sm mr me-2\"></button>\r\n</div>", dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
9
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: WizardComponent2, decorators: [{
7
+ WizardComponent2.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: WizardComponent2, deps: null, target: i0.ɵɵFactoryTarget.Component });
8
+ WizardComponent2.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.2", type: WizardComponent2, selector: "zek-wizard2", usesInheritance: true, ngImport: i0, template: "<div class=\"m-2\">\r\n <button *ngFor=\"let item of stepsArray\"\r\n [class.btn-outline-secondary]=\"item.step >= steps\"\r\n [class.btn-primary]=\"item.step < steps\"\r\n type=\"button\"\r\n class=\"btn btn-sm mr me-2\"></button>\r\n</div>", dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
9
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: WizardComponent2, decorators: [{
10
10
  type: Component,
11
11
  args: [{ selector: 'zek-wizard2', template: "<div class=\"m-2\">\r\n <button *ngFor=\"let item of stepsArray\"\r\n [class.btn-outline-secondary]=\"item.step >= steps\"\r\n [class.btn-primary]=\"item.step < steps\"\r\n type=\"button\"\r\n class=\"btn btn-sm mr me-2\"></button>\r\n</div>" }]
12
12
  }] });
@@ -68,9 +68,9 @@ export class AlertService {
68
68
  //$.notify(message, alertType ? AlertType[alertType].toLowerCase() : undefined, icon);
69
69
  }
70
70
  }
71
- AlertService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: AlertService, deps: [{ token: i1.Router }], target: i0.ɵɵFactoryTarget.Injectable });
72
- AlertService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: AlertService });
73
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: AlertService, decorators: [{
71
+ AlertService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: AlertService, deps: [{ token: i1.Router }], target: i0.ɵɵFactoryTarget.Injectable });
72
+ AlertService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: AlertService });
73
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: AlertService, decorators: [{
74
74
  type: Injectable
75
75
  }], ctorParameters: function () { return [{ type: i1.Router }]; } });
76
76
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxlcnQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3play9zcmMvbGliL3NlcnZpY2VzL2FsZXJ0LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQVUsZUFBZSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDMUQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3RDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQzs7O0FBRTVELE1BQU0sT0FBTyxTQUFTO0NBTXJCO0FBRUQsTUFBTSxPQUFPLEtBQU0sU0FBUSxTQUFTO0NBRW5DO0FBRUQsTUFBTSxPQUFPLEtBQU0sU0FBUSxTQUFTO0NBRW5DO0FBR0QsTUFBTSxPQUFPLFlBQVk7SUFJckIsa0JBQWtCO0lBRWxCLFlBQVksTUFBYztRQUxsQixpQkFBWSxHQUFHLElBQUksT0FBTyxFQUFPLENBQUM7UUFDbEMsaUJBQVksR0FBRyxJQUFJLE9BQU8sRUFBTyxDQUFDO1FBQ2xDLHlCQUFvQixHQUFHLEtBQUssQ0FBQztRQUlqQyxrRkFBa0Y7UUFDbEYsTUFBTSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDNUIsSUFBSSxLQUFLLFlBQVksZUFBZSxFQUFFO2dCQUNsQyxJQUFJLElBQUksQ0FBQyxvQkFBb0IsRUFBRTtvQkFDM0Isc0NBQXNDO29CQUN0QyxJQUFJLENBQUMsb0JBQW9CLEdBQUcsS0FBSyxDQUFDO2lCQUNyQztxQkFBTTtvQkFDSCx1QkFBdUI7b0JBQ3ZCLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztpQkFDaEI7YUFDSjtRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELEdBQUcsQ0FBQyxTQUFvQixFQUFFLE9BQWUsRUFBRSxvQkFBb0IsR0FBRyxLQUFLO1FBQ25FLElBQUksUUFBUSxHQUFHLEVBQUUsQ0FBQztRQUNsQixRQUFRLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUyxFQUFFLFFBQVEsRUFBRSxvQkFBb0IsQ0FBQyxDQUFDO0lBQzdELENBQUM7SUFDRCxRQUFRLENBQUMsU0FBb0IsRUFBRSxRQUFrQixFQUFFLG9CQUFvQixHQUFHLEtBQUs7UUFDM0UsSUFBSSxDQUFDLG9CQUFvQixHQUFHLG9CQUFvQixDQUFDO1FBQ2pELElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFRLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLENBQUMsQ0FBQztJQUMzRSxDQUFDO0lBQ0QsS0FBSztRQUNELElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFHRCxRQUFRO1FBQ0osT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQzVDLENBQUM7SUFDRCxRQUFRO1FBQ0osT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQzVDLENBQUM7SUFHRCxPQUFPLENBQUMsT0FBZSxFQUFFLEtBQXFCLEVBQUUsSUFBb0I7UUFDaEUsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsS0FBSyxFQUFFLFNBQVMsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUNELEtBQUssQ0FBQyxPQUFlLEVBQUUsS0FBcUIsRUFBRSxJQUFvQjtRQUM5RCxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxLQUFLLEVBQUUsU0FBUyxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBQ0QsT0FBTyxDQUFDLE9BQWUsRUFBRSxLQUFxQixFQUFFLElBQW9CO1FBQ2hFLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLEtBQUssRUFBRSxTQUFTLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ3ZELENBQUM7SUFDRCxJQUFJLENBQUMsT0FBZSxFQUFFLEtBQXFCLEVBQUUsSUFBb0I7UUFDN0QsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDcEQsQ0FBQztJQUNPLElBQUksQ0FBQyxPQUFlLEVBQUUsS0FBcUIsRUFBRSxTQUE0QixFQUFFLElBQW9CO1FBQ25HLElBQUksQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLE1BQU0sSUFBSSxDQUFDO1lBQ3pCLElBQUksR0FBRyxlQUFlLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxDQUFBO1FBRWxELElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFRLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQSxzQkFBc0I7UUFDL0Ysc0ZBQXNGO0lBQzFGLENBQUM7O3lHQTdEUSxZQUFZOzZHQUFaLFlBQVk7MkZBQVosWUFBWTtrQkFEeEIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgUm91dGVyLCBOYXZpZ2F0aW9uU3RhcnQgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IEFsZXJ0VHlwZSB9IGZyb20gJy4uL21vZGVscyc7XHJcbmltcG9ydCB7IEJvb3RzdHJhcEhlbHBlciB9IGZyb20gJy4uL3V0aWxzL2Jvb3RzdHJhcC5oZWxwZXInO1xyXG5cclxuZXhwb3J0IGNsYXNzIEJhc2VBbGVydCB7XHJcbiAgICB0eXBlPzogQWxlcnRUeXBlIHwgbnVsbDtcclxuICAgIGljb24/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgdGl0bGU/OiBzdHJpbmcgfCBudWxsO1xyXG4gICAgY3NzPzogc3RyaW5nIHwgbnVsbDtcclxuICAgIC8vIGlkPzogc3RyaW5nO1xyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgQWxlcnQgZXh0ZW5kcyBCYXNlQWxlcnQge1xyXG4gICAgbWVzc2FnZXM/OiBzdHJpbmdbXTtcclxufVxyXG5cclxuZXhwb3J0IGNsYXNzIFRvYXN0IGV4dGVuZHMgQmFzZUFsZXJ0IHtcclxuICAgIG1lc3NhZ2U/OiBzdHJpbmcgfCBudWxsO1xyXG59XHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBBbGVydFNlcnZpY2Uge1xyXG4gICAgcHJpdmF0ZSBhbGVydFN1YmplY3QgPSBuZXcgU3ViamVjdDxhbnk+KCk7XHJcbiAgICBwcml2YXRlIHRvYXN0U3ViamVjdCA9IG5ldyBTdWJqZWN0PGFueT4oKTtcclxuICAgIHByaXZhdGUga2VlcEFmdGVyUm91dGVDaGFuZ2UgPSBmYWxzZTtcclxuICAgIC8vIHByaXZhdGUgaWQgPSAwO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKHJvdXRlcjogUm91dGVyKSB7XHJcbiAgICAgICAgLy8gY2xlYXIgYWxlcnQgbWVzc2FnZXMgb24gcm91dGUgY2hhbmdlIHVubGVzcyAna2VlcEFmdGVyUm91dGVDaGFuZ2UnIGZsYWcgaXMgdHJ1ZVxyXG4gICAgICAgIHJvdXRlci5ldmVudHMuc3Vic2NyaWJlKGV2ZW50ID0+IHtcclxuICAgICAgICAgICAgaWYgKGV2ZW50IGluc3RhbmNlb2YgTmF2aWdhdGlvblN0YXJ0KSB7XHJcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5rZWVwQWZ0ZXJSb3V0ZUNoYW5nZSkge1xyXG4gICAgICAgICAgICAgICAgICAgIC8vIG9ubHkga2VlcCBmb3IgYSBzaW5nbGUgcm91dGUgY2hhbmdlXHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5rZWVwQWZ0ZXJSb3V0ZUNoYW5nZSA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICAvLyBjbGVhciBhbGVydCBtZXNzYWdlc1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY2xlYXIoKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIGFkZChhbGVydFR5cGU6IEFsZXJ0VHlwZSwgbWVzc2FnZTogU3RyaW5nLCBrZWVwQWZ0ZXJSb3V0ZUNoYW5nZSA9IGZhbHNlKSB7XHJcbiAgICAgICAgbGV0IG1lc3NhZ2VzID0gW107XHJcbiAgICAgICAgbWVzc2FnZXMucHVzaChtZXNzYWdlKTtcclxuICAgICAgICB0aGlzLmFkZFJhbmdlKGFsZXJ0VHlwZSwgbWVzc2FnZXMsIGtlZXBBZnRlclJvdXRlQ2hhbmdlKTtcclxuICAgIH1cclxuICAgIGFkZFJhbmdlKGFsZXJ0VHlwZTogQWxlcnRUeXBlLCBtZXNzYWdlczogU3RyaW5nW10sIGtlZXBBZnRlclJvdXRlQ2hhbmdlID0gZmFsc2UpIHtcclxuICAgICAgICB0aGlzLmtlZXBBZnRlclJvdXRlQ2hhbmdlID0ga2VlcEFmdGVyUm91dGVDaGFuZ2U7XHJcbiAgICAgICAgdGhpcy5hbGVydFN1YmplY3QubmV4dCg8QWxlcnQ+eyB0eXBlOiBhbGVydFR5cGUsIG1lc3NhZ2VzOiBtZXNzYWdlcyB9KTtcclxuICAgIH1cclxuICAgIGNsZWFyKCkge1xyXG4gICAgICAgIHRoaXMuYWxlcnRTdWJqZWN0Lm5leHQobnVsbCk7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIGdldEFsZXJ0KCkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmFsZXJ0U3ViamVjdC5hc09ic2VydmFibGUoKTtcclxuICAgIH1cclxuICAgIGdldFRvYXN0KCkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLnRvYXN0U3ViamVjdC5hc09ic2VydmFibGUoKTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgc3VjY2VzcyhtZXNzYWdlOiBzdHJpbmcsIHRpdGxlPzogc3RyaW5nIHwgbnVsbCwgaWNvbj86IHN0cmluZyB8IG51bGwpIHtcclxuICAgICAgICB0aGlzLnNob3cobWVzc2FnZSwgdGl0bGUsIEFsZXJ0VHlwZS5TdWNjZXNzLCBpY29uKTtcclxuICAgIH1cclxuICAgIGVycm9yKG1lc3NhZ2U6IHN0cmluZywgdGl0bGU/OiBzdHJpbmcgfCBudWxsLCBpY29uPzogc3RyaW5nIHwgbnVsbCkge1xyXG4gICAgICAgIHRoaXMuc2hvdyhtZXNzYWdlLCB0aXRsZSwgQWxlcnRUeXBlLkRhbmdlciwgaWNvbik7XHJcbiAgICB9XHJcbiAgICB3YXJuaW5nKG1lc3NhZ2U6IHN0cmluZywgdGl0bGU/OiBzdHJpbmcgfCBudWxsLCBpY29uPzogc3RyaW5nIHwgbnVsbCkge1xyXG4gICAgICAgIHRoaXMuc2hvdyhtZXNzYWdlLCB0aXRsZSwgQWxlcnRUeXBlLldhcm5pbmcsIGljb24pO1xyXG4gICAgfVxyXG4gICAgaW5mbyhtZXNzYWdlOiBzdHJpbmcsIHRpdGxlPzogc3RyaW5nIHwgbnVsbCwgaWNvbj86IHN0cmluZyB8IG51bGwpIHtcclxuICAgICAgICB0aGlzLnNob3cobWVzc2FnZSwgdGl0bGUsIEFsZXJ0VHlwZS5JbmZvLCBpY29uKTtcclxuICAgIH1cclxuICAgIHByaXZhdGUgc2hvdyhtZXNzYWdlOiBzdHJpbmcsIHRpdGxlPzogc3RyaW5nIHwgbnVsbCwgYWxlcnRUeXBlPzogQWxlcnRUeXBlIHwgbnVsbCwgaWNvbj86IHN0cmluZyB8IG51bGwpIHtcclxuICAgICAgICBpZiAoIWljb24gfHwgaWNvbi5sZW5ndGggPT0gMClcclxuICAgICAgICAgICAgaWNvbiA9IEJvb3RzdHJhcEhlbHBlci5jc3NBbGVydEljb24oYWxlcnRUeXBlKVxyXG5cclxuICAgICAgICB0aGlzLnRvYXN0U3ViamVjdC5uZXh0KDxUb2FzdD57IG1lc3NhZ2UsIHRpdGxlLCB0eXBlOiBhbGVydFR5cGUsIGljb24gfSk7Ly8sIGlkOiBgJHt0aGlzLmlkKyt9YFxyXG4gICAgICAgIC8vJC5ub3RpZnkobWVzc2FnZSwgYWxlcnRUeXBlID8gQWxlcnRUeXBlW2FsZXJ0VHlwZV0udG9Mb3dlckNhc2UoKSA6IHVuZGVmaW5lZCwgaWNvbik7XHJcbiAgICB9XHJcbn0iXX0=
@@ -20,9 +20,9 @@ export class AuthGuardService {
20
20
  // return isInRole && hasPermission;
21
21
  }
22
22
  }
23
- AuthGuardService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: AuthGuardService, deps: [{ token: i1.AuthService }, { token: i2.Router }], target: i0.ɵɵFactoryTarget.Injectable });
24
- AuthGuardService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: AuthGuardService });
25
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: AuthGuardService, decorators: [{
23
+ AuthGuardService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: AuthGuardService, deps: [{ token: i1.AuthService }, { token: i2.Router }], target: i0.ɵɵFactoryTarget.Injectable });
24
+ AuthGuardService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: AuthGuardService });
25
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: AuthGuardService, decorators: [{
26
26
  type: Injectable
27
27
  }], ctorParameters: function () { return [{ type: i1.AuthService }, { type: i2.Router }]; } });
28
28
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC1ndWFyZC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvemVrL3NyYy9saWIvc2VydmljZXMvYXV0aC1ndWFyZC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7QUFPM0MsTUFBTSxPQUFPLGdCQUFnQjtJQUN6QixZQUErQixXQUF3QixFQUFxQixNQUFjO1FBQTNELGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQXFCLFdBQU0sR0FBTixNQUFNLENBQVE7SUFBSSxDQUFDO0lBRS9GLFdBQVcsQ0FBQyxLQUE2QixFQUFFLEtBQTBCO1FBQ2pFLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLGVBQWUsRUFBRSxFQUFFO1lBQ3JDLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsUUFBUSxDQUFDLEVBQUUsRUFBRSxXQUFXLEVBQUUsRUFBRSxTQUFTLEVBQUUsS0FBSyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsQ0FBQztZQUM1RSxPQUFPLEtBQUssQ0FBQztTQUNoQjtRQUVELE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFdEQseUNBQXlDO1FBQ3pDLDBEQUEwRDtRQUUxRCw0Q0FBNEM7UUFDNUMsa0VBQWtFO1FBRWxFLG9DQUFvQztJQUN4QyxDQUFDOzs2R0FsQlEsZ0JBQWdCO2lIQUFoQixnQkFBZ0I7MkZBQWhCLGdCQUFnQjtrQkFENUIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ2FuQWN0aXZhdGUsIEFjdGl2YXRlZFJvdXRlU25hcHNob3QsIFJvdXRlclN0YXRlU25hcHNob3QsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuXHJcbmltcG9ydCB7IEF1dGhTZXJ2aWNlIH0gZnJvbSAnLi9hdXRoLnNlcnZpY2UnO1xyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgQXV0aEd1YXJkU2VydmljZSBpbXBsZW1lbnRzIENhbkFjdGl2YXRlIHtcclxuICAgIGNvbnN0cnVjdG9yKHByb3RlY3RlZCByZWFkb25seSBhdXRoU2VydmljZTogQXV0aFNlcnZpY2UsIHByb3RlY3RlZCByZWFkb25seSByb3V0ZXI6IFJvdXRlcikgeyB9XHJcblxyXG4gICAgY2FuQWN0aXZhdGUocm91dGU6IEFjdGl2YXRlZFJvdXRlU25hcHNob3QsIHN0YXRlOiBSb3V0ZXJTdGF0ZVNuYXBzaG90KTogYm9vbGVhbiB8IE9ic2VydmFibGU8Ym9vbGVhbj4gfCBQcm9taXNlPGJvb2xlYW4+IHtcclxuICAgICAgICBpZiAoIXRoaXMuYXV0aFNlcnZpY2UuaXNBdXRoZW50aWNhdGVkKCkpIHtcclxuICAgICAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoWycvbG9naW4nXSwgeyBxdWVyeVBhcmFtczogeyByZXR1cm5Vcmw6IHN0YXRlLnVybCB9IH0pO1xyXG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gdGhpcy5hdXRoU2VydmljZS5oYXNEYXRhUGVybWlzc2lvbihyb3V0ZS5kYXRhKTtcclxuXHJcbiAgICAgICAgLy8gY29uc3QgYWxsb3dlZFJvbGVzID0gcm91dGUuZGF0YS5yb2xlcztcclxuICAgICAgICAvLyBsZXQgaXNJblJvbGUgPSB0aGlzLmF1dGhTZXJ2aWNlLmlzSW5Sb2xlKGFsbG93ZWRSb2xlcyk7XHJcblxyXG4gICAgICAgIC8vIGNvbnN0IHBlcm1pc3Npb24gPSByb3V0ZS5kYXRhLnBlcm1pc3Npb247XHJcbiAgICAgICAgLy8gbGV0IGhhc1Blcm1pc3Npb24gPSB0aGlzLmF1dGhTZXJ2aWNlLmhhc1Blcm1pc3Npb24ocGVybWlzc2lvbik7XHJcblxyXG4gICAgICAgIC8vIHJldHVybiBpc0luUm9sZSAmJiBoYXNQZXJtaXNzaW9uO1xyXG4gICAgfVxyXG59Il19
@@ -195,9 +195,9 @@ export class AuthService {
195
195
  return hasPermission;
196
196
  }
197
197
  }
198
- AuthService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: AuthService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
199
- AuthService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: AuthService });
200
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.0", ngImport: i0, type: AuthService, decorators: [{
198
+ AuthService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: AuthService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
199
+ AuthService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: AuthService });
200
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: AuthService, decorators: [{
201
201
  type: Injectable
202
202
  }] });
203
203
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvemVrL3NyYy9saWIvc2VydmljZXMvYXV0aC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEdBQUcsTUFBTSxlQUFlLENBQUM7QUFDNUMsT0FBTyxFQUFFLGVBQWUsRUFBYyxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFNUQsT0FBTyxFQUFFLE9BQU8sRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLGFBQWEsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUM1RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0seUJBQXlCLENBQUM7O0FBR3hELE1BQU0sT0FBTyxXQUFXO0lBRHhCO1FBRVksbUJBQWMsR0FBWSxLQUFLLENBQUM7UUFDaEMsY0FBUyxHQUFZLEtBQUssQ0FBQztRQUMzQixVQUFLLEdBQXFCLElBQUksQ0FBQztLQStPMUM7SUE3T0csSUFBSSxJQUFJO1FBQ0osSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLEVBQUU7WUFDdEIsSUFBSSxJQUFJLEdBQUcsYUFBYSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUN0QyxJQUFJLElBQUksRUFBRTtnQkFDTixJQUFJLENBQUMsRUFBRSxHQUFHLFlBQVksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztnQkFDbkYsSUFBSSxDQUFDLE9BQU8sR0FBRyxZQUFZLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FB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QUFLLEdBQUcsZUFBZSxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUMvQixJQUFJLEtBQUs7b0JBQ0wsT0FBTyxJQUFJLENBQUM7YUFDbkI7U0FDSjtRQUVELE9BQU8sS0FBSyxDQUFDO0lBQ2pCLENBQUM7SUFHRCxpQkFBaUIsQ0FBQyxJQUFTO1FBQ3ZCLHVEQUF1RDtRQUN2RCxtQ0FBbUM7UUFDbkMsOENBQThDO1FBRTlDLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUM7UUFFbkMsSUFBSSxhQUFhLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUVuRCxvQ0FBb0M7UUFDcEMsT0FBTyxhQUFhLENBQUM7SUFDekIsQ0FBQzs7d0dBalBRLFdBQVc7NEdBQVgsV0FBVzsyRkFBWCxXQUFXO2tCQUR2QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IEtleVBhaXIsIExvZ2luVG9rZW4sIExvZ2luVXNlciB9IGZyb20gJy4uL21vZGVscyc7XHJcbmltcG9ydCB7IENvbnZlcnQsIERhdGVIZWxwZXIsIE9iamVjdEhlbHBlciwgU3RvcmFnZUhlbHBlciB9IGZyb20gJy4uL3V0aWxzJztcclxuaW1wb3J0IHsgQml0d2lzZUhlbHBlciB9IGZyb20gJy4uL3V0aWxzL2JpdHdpc2UtaGVscGVyJztcclxuXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIEF1dGhTZXJ2aWNlIHtcclxuICAgIHByaXZhdGUgX2lzSW5pdGlhbGl6ZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIHByaXZhdGUgX29sZFZhbHVlOiBib29sZWFuID0gZmFsc2U7XHJcbiAgICBwcml2YXRlIF91c2VyOiBMb2dpblVzZXIgfCBudWxsID0gbnVsbDtcclxuXHJcbiAgICBnZXQgdXNlcigpOiBMb2dpblVzZXIgfCBudWxsIHtcclxuICAgICAgICBpZiAoIXRoaXMuX2lzSW5pdGlhbGl6ZWQpIHtcclxuICAgICAgICAgICAgbGV0IHVzZXIgPSBTdG9yYWdlSGVscGVyLmdldCgnbG9naW4nKTtcclxuICAgICAgICAgICAgaWYgKHVzZXIpIHtcclxuICAgICAgICAgICAgICAgIHVzZXIuaWQgPSBPYmplY3RIZWxwZXIuaXNEZWZpbmVkKHVzZXIuaWQpID8gQ29udmVydC5wYXJzZU51bWJlcih1c2VyLmlkKSA6IHVzZXIuaWQ7XHJcbiAgICAgICAgICAgICAgICB1c2VyLmV4cGlyZWQgPSBPYmplY3RIZWxwZXIuaXNEZWZpbmVkKHVzZXIuZXhwaXJlZCkgPyBEYXRlSGVscGVyLnBhcnNlRGF0ZSh1c2VyLmV4cGlyZWQpIDogdXNlci5leHBpcmVkO1xyXG4gICAgICAgICAgICAgICAgdXNlci5yZWZyZXNoVG9rZW5UaW1lID0gT2JqZWN0SGVscGVyLmlzRGVmaW5lZCh1c2VyLnJlZnJlc2hUb2tlblRpbWUpID8gRGF0ZUhlbHBlci5wYXJzZURhdGUodXNlci5yZWZyZXNoVG9rZW5UaW1lKSA6IHVzZXIucmVmcmVzaFRva2VuVGltZTtcclxuXHJcbiAgICAgICAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheSh1c2VyLnJvbGVzKSkge1xyXG4gICAgICAgICAgICAgICAgICAgIHVzZXIucm9sZXMgPSB1c2VyLnJvbGVzLm1hcChmdW5jdGlvbiAoZTogYW55KSB7IHJldHVybiBlID8gZS50b1VwcGVyQ2FzZSgpIDogZTsgfSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgdGhpcy5fdXNlciA9IHVzZXI7XHJcbiAgICAgICAgICAgIHRoaXMuX2lzSW5pdGlhbGl6ZWQgPSB0cnVlO1xyXG4gICAgICAgICAgICB0aGlzLl9zdGFyUmVmcmVzaFRva2VuVGltZXIoKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX3VzZXI7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIHByaXZhdGUgX3RpbWVySWQ6IGFueTtcclxuICAgIHByaXZhdGUgX3N0YXJSZWZyZXNoVG9rZW5UaW1lcigpIHtcclxuICAgICAgICB0aGlzLl9zdG9wUmVmcmVzaFRva2VuVGltZXIoKTtcclxuXHJcbiAgICAgICAgbGV0IHVzZXIgPSB0aGlzLl91c2VyO1xyXG4gICAgICAgIGlmICh1c2VyICYmIHVzZXIucmVmcmVzaFRva2VuVGltZSkge1xyXG4gICAgICAgICAgICBsZXQgdGltZW91dCA9IHVzZXIucmVmcmVzaFRva2VuVGltZS5nZXRUaW1lKCkgLSBEYXRlLm5vdygpOy8vIC0gKDYwICogMTAwMCk7XHJcblxyXG4gICAgICAgICAgICBpZiAodGltZW91dCA8IDApIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuX2VtaXRSZWZyZXNoVG9rZW4oKTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgY29uc3QgbWluUmVmcmVzaFRpbWUgPSA2MF8wMDAvLzEgbWluO1xyXG4gICAgICAgICAgICBpZiAodGltZW91dCA8IG1pblJlZnJlc2hUaW1lKSB7XHJcbiAgICAgICAgICAgICAgICB0aW1lb3V0ID0gbWluUmVmcmVzaFRpbWU7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIHRoaXMuX3RpbWVySWQgPSBzZXRJbnRlcnZhbCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLl9lbWl0UmVmcmVzaFRva2VuKCk7XHJcbiAgICAgICAgICAgIH0sIHRpbWVvdXQpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIHByaXZhdGUgX3N0b3BSZWZyZXNoVG9rZW5UaW1lcigpIHtcclxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuX3RpbWVySWQgPT09ICdudW1iZXInKSB7XHJcbiAgICAgICAgICAgIGNsZWFySW50ZXJ2YWwodGhpcy5fdGltZXJJZCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgcHJpdmF0ZSBfZW1pdFJlZnJlc2hUb2tlbigpIHtcclxuICAgICAgICBpZiAodGhpcy5fb25SZWZyZXNoVG9rZW5TdWJqZWN0KSB7XHJcbiAgICAgICAgICAgIHRoaXMuX29uUmVmcmVzaFRva2VuU3ViamVjdC5uZXh0KCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuXHJcbiAgICBpc0F1dGhlbnRpY2F0ZWQoKTogYm9vbGVhbiB7XHJcbiAgICAgICAgbGV0IGV4cGlyZWQgPSB0aGlzLmdldEV4cGlyZWQoKSB8fCBuZXcgRGF0ZSgwKTsvLyBpZiBnZXRFeHBpcmVkIGlzIG51bGwgcmV0dXJuIG1pbiBKUyBkYXRlXHJcblxyXG4gICAgICAgIGNvbnN0IG5ld1ZhbHVlID0gbmV3IERhdGUoKSA8IGV4cGlyZWQ7XHJcbiAgICAgICAgaWYgKHRoaXMuX29sZFZhbHVlICE9PSBuZXdWYWx1ZSkge1xyXG4gICAgICAgICAgICB0aGlzLl9vbGRWYWx1ZSA9IG5ld1ZhbHVlO1xyXG5cclxuICAgICAgICAgICAgdGhpcy5lbWl0T25TaWduZWRJbigpO1xyXG4gICAgICAgICAgICAvLyBpZiAodGhpcy5fb25TaWduZWRJblN1YmplY3QpIHtcclxuICAgICAgICAgICAgLy8gICAgIHRoaXMuX29uU2lnbmVkSW5TdWJqZWN0Lm5leHQobmV3VmFsdWUpO1xyXG4gICAgICAgICAgICAvLyB9XHJcblxyXG4gICAgICAgICAgICAvL2lmIHVzZXIgaXMgc2lnbmVkIGluIGFuZCBleHBpcmVkIHdlIG5lZWQgdG8gbG9nb3V0IChyZW1vdmUgZnJvbSBsb2NhbFN0b3JhZ2UpXHJcbiAgICAgICAgICAgIGlmICghbmV3VmFsdWUpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMubG9nb3V0KCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgcmV0dXJuIG5ld1ZhbHVlO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gbmV3VmFsdWU7XHJcbiAgICB9XHJcbiAgICBlbWl0T25TaWduZWRJbigpIHtcclxuICAgICAgICBpZiAodGhpcy5fb25TaWduZWRJblN1YmplY3QpIHtcclxuICAgICAgICAgICAgdGhpcy5fb25TaWduZWRJblN1YmplY3QubmV4dCh0aGlzLl9vbGRWYWx1ZSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgX29uU2lnbmVkSW5TdWJqZWN0PzogQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+Oy8vQmVoYXZpb3JTdWJqZWN0IGlzIGZvciBpbml0aWFsIGZpcnQgdmFsdWUgPSBmYWxzZVxyXG4gICAgcHJpdmF0ZSBfb25TaWduZWRJbk9ic2VydmFibGU/OiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xyXG4gICAgZ2V0IG9uU2lnbmVkSW4oKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XHJcbiAgICAgICAgaWYgKCF0aGlzLl9vblNpZ25lZEluU3ViamVjdCkge1xyXG4gICAgICAgICAgICB0aGlzLl9vblNpZ25lZEluU3ViamVjdCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xyXG4gICAgICAgICAgICB0aGlzLl9vblNpZ25lZEluT2JzZXJ2YWJsZSA9IHRoaXMuX29uU2lnbmVkSW5TdWJqZWN0LmFzT2JzZXJ2YWJsZSgpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKCF0aGlzLl9vblNpZ25lZEluT2JzZXJ2YWJsZSlcclxuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiX29uRXhlY3V0ZU9ic2VydmFibGUgaXMgdW5kZWZpbmVkXCIpO1xyXG5cclxuICAgICAgICByZXR1cm4gdGhpcy5fb25TaWduZWRJbk9ic2VydmFibGU7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIHByaXZhdGUgX29uUmVmcmVzaFRva2VuU3ViamVjdD86IFN1YmplY3Q8dm9pZD47XHJcbiAgICBwcml2YXRlIF9vblJlZnJlc2hUb2tlbk9ic2VydmFibGU/OiBPYnNlcnZhYmxlPHZvaWQ+O1xyXG4gICAgZ2V0IG9uUmVmcmVzaFRva2VuKCk6IE9ic2VydmFibGU8dm9pZD4ge1xyXG4gICAgICAgIGlmICghdGhpcy5fb25SZWZyZXNoVG9rZW5TdWJqZWN0KSB7XHJcbiAgICAgICAgICAgIHRoaXMuX29uUmVmcmVzaFRva2VuU3ViamVjdCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XHJcbiAgICAgICAgICAgIHRoaXMuX29uUmVmcmVzaFRva2VuT2JzZXJ2YWJsZSA9IHRoaXMuX29uUmVmcmVzaFRva2VuU3ViamVjdC5hc09ic2VydmFibGUoKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGlmICghdGhpcy5fb25SZWZyZXNoVG9rZW5PYnNlcnZhYmxlKVxyXG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJvblJlZnJlc2hUb2tlbk9ic2VydmFibGUgaXMgdW5kZWZpbmVkXCIpO1xyXG5cclxuICAgICAgICByZXR1cm4gdGhpcy5fb25SZWZyZXNoVG9rZW5PYnNlcnZhYmxlO1xyXG4gICAgfVxyXG5cclxuXHJcblxyXG4gICAgbG9naW4odXNlcjogTG9naW5Ub2tlbiB8IExvZ2luVXNlciB8IG51bGwpIHtcclxuICAgICAgICAvLyBpZiAodXNlcikge1xyXG4gICAgICAgIC8vICAgICAvLyBJIHRoaW5rIHdlIGRvbid0IG5lZWQgdGhpc1xyXG4gICAgICAgIC8vICAgICB1c2VyLmlkID0gT2JqZWN0SGVscGVyLmlzRGVmaW5lZCh1c2VyLmlkKSA/IENvbnZlcnQucGFyc2VOdW1iZXIodXNlci5pZCkgOiB1c2VyLmlkO1xyXG4gICAgICAgIC8vICAgICB1c2VyLmV4cGlyZWQgPSBPYmplY3RIZWxwZXIuaXNEZWZpbmVkKHVzZXIuZXhwaXJlZCkgPyAgRGF0ZUhlbHBlci5wYXJzZURhdGUodXNlci5leHBpcmVkKSA6IHVzZXIuZXhwaXJlZDtcclxuICAgICAgICAvLyAgICAgdXNlci5yZWZyZXNoVG9rZW5UaW1lID0gT2JqZWN0SGVscGVyLmlzRGVmaW5lZCh1c2VyLnJlZnJlc2hUb2tlblRpbWUpID8gIERhdGVIZWxwZXIucGFyc2VEYXRlKHVzZXIucmVmcmVzaFRva2VuVGltZSkgOiB1c2VyLnJlZnJlc2hUb2tlblRpbWU7XHJcbiAgICAgICAgLy8gICAgIGlmIChBcnJheS5pc0FycmF5KHVzZXIucm9sZXMpKSB7XHJcbiAgICAgICAgLy8gICAgICAgICB1c2VyLnJvbGVzID0gdXNlci5yb2xlcy5tYXAoZnVuY3Rpb24gKGUpIHsgcmV0dXJuIGUudG9VcHBlckNhc2UoKTsgfSk7XHJcbiAgICAgICAgLy8gICAgIH1cclxuICAgICAgICAvLyB9XHJcblxyXG4gICAgICAgIFN0b3JhZ2VIZWxwZXIuc2V0KCdsb2dpbicsIHVzZXIpO1xyXG4gICAgICAgIHRoaXMuX3VzZXIgPSBudWxsO1xyXG4gICAgICAgIHRoaXMuX2lzSW5pdGlhbGl6ZWQgPSBmYWxzZTsvL3VzZXIgZ2V0IG1ldGhvZCB3aWxsIGluaXQgdXNlclxyXG4gICAgICAgIHRoaXMuaXNBdXRoZW50aWNhdGVkKCk7Ly90aGlzIG1ldGhvZCBuZWVkIHRvIGV4ZWN1dGUgc3ViamVjdC5uZXh0KCk7ICAgICAgICBcclxuICAgIH1cclxuICAgIGxvZ291dCgpIHtcclxuICAgICAgICB0aGlzLmxvZ2luKG51bGwpO1xyXG4gICAgfVxyXG5cclxuXHJcblxyXG4gICAgcHJvdGVjdGVkIGdldEV4cGlyZWQoKTogRGF0ZSB8IG51bGwgfCB1bmRlZmluZWQge1xyXG4gICAgICAgIGxldCB1c2VyID0gdGhpcy51c2VyO1xyXG4gICAgICAgIGlmICh1c2VyKSB7XHJcbiAgICAgICAgICAgIHJldHVybiB1c2VyLmV4cGlyZWQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gbnVsbDtcclxuICAgIH1cclxuXHJcbiAgICBwcm90ZWN0ZWQgZ2V0UmVmcmVzaFRva2VuRXhwaXJlZCgpOiBEYXRlIHwgbnVsbCB8IHVuZGVmaW5lZCB7XHJcbiAgICAgICAgbGV0IHVzZXIgPSB0aGlzLnVzZXI7XHJcbiAgICAgICAgaWYgKHVzZXIpIHtcclxuICAgICAgICAgICAgcmV0dXJuIHVzZXIucmVmcmVzaFRva2VuVGltZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICAvLyBpc0luUm9sZShhbGxvd2VkUm9sZXM6IHN0cmluZ1tdKTogYm9vbGVhbiB7XHJcbiAgICAvLyAgICAgaWYgKCFhbGxvd2VkUm9sZXMgfHwgYWxsb3dlZFJvbGVzLmxlbmd0aCA9PT0gMCkge1xyXG4gICAgLy8gICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIC8vICAgICB9XHJcblxyXG4gICAgLy8gICAgIGNvbnN0IHRtcCA9IHRoaXMuZ2V0VXNlcigpO1xyXG4gICAgLy8gICAgIGNvbnN0IHJvbGVzID0gdG1wID8gdG1wLnJvbGVzIDogbnVsbDtcclxuICAgIC8vICAgICBpZiAoIXJvbGVzIHx8IHJvbGVzLmxlbmd0aCA9PT0gMCkge1xyXG4gICAgLy8gICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAvLyAgICAgfVxyXG5cclxuICAgIC8vICAgICBsZXQgaXNJblJvbGUgPSBhbGxvd2VkUm9sZXMuc29tZShyb2xlID0+IHJvbGVzLmluZGV4T2Yocm9sZSkgIT09IC0xKTtcclxuICAgIC8vICAgICByZXR1cm4gaXNJblJvbGU7XHJcbiAgICAvLyB9XHJcblxyXG5cclxuICAgIGhhc1Blcm1pc3Npb24ocGVybWlzc2lvbj86IEtleVBhaXI8bnVtYmVyLCBudW1iZXI+IHwgbnVtYmVyIHwgbnVsbCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIGlmICghcGVybWlzc2lvbikge1xyXG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGxldCBrZXkgPSAwO1xyXG4gICAgICAgIGxldCB2YWx1ZTogbnVtYmVyIHwgbnVsbCB8IHVuZGVmaW5lZDtcclxuICAgICAgICBpZiAodHlwZW9mIHBlcm1pc3Npb24gPT09ICdudW1iZXInIHx8IHR5cGVvZiBwZXJtaXNzaW9uID09PSAnc3RyaW5nJykge1xyXG4gICAgICAgICAgICBrZXkgPSArcGVybWlzc2lvbjtcclxuICAgICAgICB9Ly8gZWxzZSBpZiAoQXJyYXkuaXNBcnJheShwZXJtaXNzaW9uKSkge1xyXG4gICAgICAgIC8vIH1cclxuICAgICAgICBlbHNlIGlmICh0eXBlb2YgcGVybWlzc2lvbiA9PT0gJ29iamVjdCcpIHtcclxuICAgICAgICAgICAgaWYgKCFwZXJtaXNzaW9uLmtleSlcclxuICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xyXG5cclxuICAgICAgICAgICAga2V5ID0gcGVybWlzc2lvbi5rZXk7XHJcbiAgICAgICAgICAgIHZhbHVlID0gcGVybWlzc2lvbi52YWx1ZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHJldHVybiB0aGlzLmhhc1Blcm1pc3Npb25zKFtrZXldLCB2YWx1ZSk7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIGhhc1Blcm1pc3Npb25zKHBlcm1pc3Npb25zPzogQXJyYXk8bnVtYmVyPiwgdmFsdWU/OiBudW1iZXIgfCBudWxsKTogYm9vbGVhbiB7XHJcbiAgICAgICAgaWYgKCFwZXJtaXNzaW9ucyB8fCBwZXJtaXNzaW9ucy5sZW5ndGggPT09IDApIHtcclxuICAgICAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBjb25zdCB1c2VyID0gdGhpcy51c2VyO1xyXG4gICAgICAgIGNvbnN0IHVzZXJQZXJtaXNzaW9ucyA9IHVzZXIgPyB1c2VyLnBlcm1pc3Npb25zIDogbnVsbDtcclxuICAgICAgICBpZiAoIXVzZXJQZXJtaXNzaW9ucykge1xyXG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpZiAodmFsdWUpIHtcclxuICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBwZXJtaXNzaW9ucy5sZW5ndGg7IGkrKykge1xyXG4gICAgICAgICAgICAgICAgY29uc3QgcCA9IHBlcm1pc3Npb25zW2ldO1xyXG4gICAgICAgICAgICAgICAgbGV0IGZvdW5kID0gdXNlclBlcm1pc3Npb25zW3BdO1xyXG4gICAgICAgICAgICAgICAgaWYgKGZvdW5kKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgbGV0IGhhc1Blcm1pc3Npb24gPSBCaXR3aXNlSGVscGVyLmhhc0ZsYWcoZm91bmQsIHZhbHVlKTtcclxuICAgICAgICAgICAgICAgICAgICBpZiAoaGFzUGVybWlzc2lvbilcclxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHBlcm1pc3Npb25zLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgICAgICAgICBjb25zdCBwID0gcGVybWlzc2lvbnNbaV07XHJcbiAgICAgICAgICAgICAgICBsZXQgZm91bmQgPSB1c2VyUGVybWlzc2lvbnNbcF07XHJcbiAgICAgICAgICAgICAgICBpZiAoZm91bmQpXHJcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgaGFzRGF0YVBlcm1pc3Npb24oZGF0YTogYW55KSB7XHJcbiAgICAgICAgLy9pZiAoZGF0YSA9PT0gdW5kZWZpbmVkIHx8IGRhdGEgPT09IG51bGwpIHJldHVybiB0cnVlO1xyXG4gICAgICAgIC8vIGNvbnN0IGFsbG93ZWRSb2xlcyA9IGRhdGEucm9sZXM7XHJcbiAgICAgICAgLy8gbGV0IGlzSW5Sb2xlID0gdGhpcy5pc0luUm9sZShhbGxvd2VkUm9sZXMpO1xyXG5cclxuICAgICAgICBjb25zdCBwZXJtaXNzaW9uID0gZGF0YS5wZXJtaXNzaW9uO1xyXG5cclxuICAgICAgICBsZXQgaGFzUGVybWlzc2lvbiA9IHRoaXMuaGFzUGVybWlzc2lvbihwZXJtaXNzaW9uKTtcclxuXHJcbiAgICAgICAgLy8gcmV0dXJuIGlzSW5Sb2xlICYmIGhhc1Blcm1pc3Npb247XHJcbiAgICAgICAgcmV0dXJuIGhhc1Blcm1pc3Npb247XHJcbiAgICB9XHJcbn0iXX0=