@tetacom/ng-components 1.0.141 → 1.0.143

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 (40) hide show
  1. package/component/autocomplete/autocomplete/autocomplete.component.d.ts +8 -0
  2. package/component/autocomplete/autocomplete.module.d.ts +8 -0
  3. package/component/autocomplete/public-api.d.ts +2 -0
  4. package/component/property-grid/property-grid/property-grid-group/property-grid-group.component.d.ts +5 -4
  5. package/component/property-grid/property-grid/property-grid-item/property-grid-item.component.d.ts +13 -10
  6. package/component/property-grid/property-grid/property-grid-item-description.directive.d.ts +9 -0
  7. package/component/property-grid/property-grid/property-grid.component.d.ts +12 -7
  8. package/component/property-grid/property-grid.module.d.ts +15 -18
  9. package/component/property-grid/public-api.d.ts +1 -0
  10. package/component/public-api.d.ts +1 -0
  11. package/directive/loader/loader.directive.d.ts +3 -2
  12. package/esm2020/common/util/position-util.mjs +4 -4
  13. package/esm2020/component/autocomplete/autocomplete/autocomplete.component.mjs +14 -0
  14. package/esm2020/component/autocomplete/autocomplete.module.mjs +24 -0
  15. package/esm2020/component/autocomplete/public-api.mjs +3 -0
  16. package/esm2020/component/input/input/input.component.mjs +3 -3
  17. package/esm2020/component/property-grid/property-grid/property-grid-group/property-grid-group.component.mjs +8 -7
  18. package/esm2020/component/property-grid/property-grid/property-grid-item/property-grid-item.component.mjs +55 -29
  19. package/esm2020/component/property-grid/property-grid/property-grid-item-description.directive.mjs +19 -0
  20. package/esm2020/component/property-grid/property-grid/property-grid.component.mjs +31 -10
  21. package/esm2020/component/property-grid/property-grid.module.mjs +7 -16
  22. package/esm2020/component/property-grid/public-api.mjs +2 -1
  23. package/esm2020/component/public-api.mjs +3 -1
  24. package/esm2020/component/table/table/table.component.mjs +5 -2
  25. package/esm2020/directive/loader/loader.directive.mjs +13 -4
  26. package/esm2020/util/forms-util.mjs +24 -9
  27. package/fesm2015/tetacom-ng-components.mjs +178 -106
  28. package/fesm2015/tetacom-ng-components.mjs.map +1 -1
  29. package/fesm2020/tetacom-ng-components.mjs +175 -106
  30. package/fesm2020/tetacom-ng-components.mjs.map +1 -1
  31. package/package.json +1 -1
  32. package/util/forms-util.d.ts +5 -1
  33. package/component/property-grid/default/date-item-default/date-item-default.component.d.ts +0 -8
  34. package/component/property-grid/default/list-item-default/list-item-default.component.d.ts +0 -8
  35. package/component/property-grid/default/numeric-item-default/numeric-item-default.component.d.ts +0 -8
  36. package/component/property-grid/default/string-item-default/string-item-default.component.d.ts +0 -8
  37. package/esm2020/component/property-grid/default/date-item-default/date-item-default.component.mjs +0 -13
  38. package/esm2020/component/property-grid/default/list-item-default/list-item-default.component.mjs +0 -13
  39. package/esm2020/component/property-grid/default/numeric-item-default/numeric-item-default.component.mjs +0 -13
  40. package/esm2020/component/property-grid/default/string-item-default/string-item-default.component.mjs +0 -13
@@ -1,39 +1,53 @@
1
- import { Component, EventEmitter, Input, Output, } from '@angular/core';
1
+ import { Component, EventEmitter, Input, Optional, Output, } from '@angular/core';
2
2
  import { FilterType } from '../../../filter/enum/filter-type.enum';
3
+ import { FormGroup, NgForm } from '@angular/forms';
3
4
  import { FormsUtil } from '../../../../util/forms-util';
4
- import { takeWhile } from 'rxjs/operators';
5
5
  import { Align } from '../../../../common/enum/align.enum';
6
+ import { takeWhile } from "rxjs/operators";
6
7
  import * as i0 from "@angular/core";
7
8
  import * as i1 from "@ngneat/transloco";
8
- import * as i2 from "@angular/common";
9
- import * as i3 from "@angular/forms";
9
+ import * as i2 from "@angular/forms";
10
+ import * as i3 from "@angular/common";
10
11
  import * as i4 from "../../../date-picker/date-picker/date-picker.component";
11
12
  import * as i5 from "../../../select/select/select.component";
12
13
  import * as i6 from "../../../input/input/input.component";
13
14
  import * as i7 from "../../../input/text-field/text-field.component";
14
15
  import * as i8 from "../../../toggle/toggle/toggle.component";
15
16
  export class PropertyGridItemComponent {
16
- constructor(_transloco) {
17
+ constructor(_transloco, _formGroup) {
17
18
  this._transloco = _transloco;
19
+ this._formGroup = _formGroup;
18
20
  this.controlValueChange = new EventEmitter();
19
21
  this.align = Align;
20
22
  this.filterTypeEnum = FilterType;
21
23
  this._alive = true;
22
24
  }
23
- set formGroup(form) {
24
- this._formGroup = form;
25
- this._formSub?.unsubscribe();
26
- this._formSub = this._formGroup?.controls[this.column.name]?.valueChanges
27
- .pipe(takeWhile(() => this._alive))
28
- .subscribe((_) => {
29
- this.controlValueChange.emit({
30
- id: _,
31
- name: this.column.name,
32
- });
33
- });
25
+ // @Input()
26
+ // set formGroup(form: UntypedFormGroup) {
27
+ // this._formGroup = form;
28
+ // this._formSub?.unsubscribe();
29
+ // this._formSub = this._formGroup?.controls[this.column.name]?.valueChanges
30
+ // .pipe(
31
+ // takeWhile(() => this._alive)
32
+ // )
33
+ // .subscribe((_) => {
34
+ // this.controlValueChange.emit({
35
+ // id: _,
36
+ // name: this.column.name,
37
+ // });
38
+ // });
39
+ // }
40
+ get template() {
41
+ return this.itemTemplates.find((item) => item.name === this.column.name);
34
42
  }
35
43
  get formGroup() {
36
- return this._formGroup;
44
+ if (this._formGroup instanceof FormGroup) {
45
+ return this._formGroup;
46
+ }
47
+ if (this._formGroup instanceof NgForm) {
48
+ return this._formGroup.form;
49
+ }
50
+ return null;
37
51
  }
38
52
  get caption() {
39
53
  if (this.column.filterType === FilterType.boolean) {
@@ -68,25 +82,35 @@ export class PropertyGridItemComponent {
68
82
  });
69
83
  }
70
84
  }
71
- valueChange() {
72
- this.controlValueChange.emit({
73
- id: this.formGroup?.controls[this.column.name]?.value,
74
- name: this.column.name,
75
- });
76
- }
77
85
  ngOnInit() {
78
86
  }
79
87
  ngOnDestroy() {
80
88
  this._alive = false;
81
89
  this._formSub?.unsubscribe();
82
90
  }
91
+ ngOnChanges(changes) {
92
+ if (this.column && this.item) {
93
+ this.formGroup.registerControl(this.column.name, FormsUtil.initControlFromColumn(this.column, this.item));
94
+ this._formSub?.unsubscribe();
95
+ this._formSub = this.formGroup?.controls[this.column.name]?.valueChanges
96
+ .pipe(takeWhile(() => this._alive))
97
+ .subscribe((_) => {
98
+ this.controlValueChange.emit({
99
+ id: _,
100
+ name: this.column.name,
101
+ });
102
+ });
103
+ }
104
+ }
83
105
  }
84
- PropertyGridItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: PropertyGridItemComponent, deps: [{ token: i1.TranslocoService }], target: i0.ɵɵFactoryTarget.Component });
85
- PropertyGridItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: PropertyGridItemComponent, selector: "teta-property-grid-item", inputs: { column: "column", hideNonEditable: "hideNonEditable", dict: "dict", decimalPart: "decimalPart", formGroup: "formGroup", horizontal: "horizontal" }, outputs: { controlValueChange: "controlValueChange" }, ngImport: i0, template: "<teta-input [label]=\"caption\"\n [hint]=\"column.hint\"\n [formGroup]=\"formGroup\"\n [horizontal]=\"horizontal\"\n [required]=\"column.required\"\n *ngIf=\"column.editable || !hideNonEditable\">\n <ng-container [ngSwitch]=\"column.filterType\"\n *ngIf=\"formGroup?.get(column.name)\">\n <teta-select class=\"row_auto\"\n *ngSwitchCase=\"filterTypeEnum.list\"\n [searchRef]=\"getDict()?.length > 10 ? 'name' : ''\"\n [allowNull]=\"!column.required\"\n [appendToBody]=\"true\"\n [invalid]=\"controlIsInvalid(column.name)\"\n [formControlName]=\"column.name\"\n [options]=\"getDict()\"\n [valueRef]=\"'id'\"\n [textRef]=\"'name'\"\n [multiple]=\"false\"></teta-select>\n <teta-date-picker *ngSwitchCase=\"filterTypeEnum.date\"\n class=\"row_auto\"\n [appendToBody]=\"true\"\n [invalid]=\"controlIsInvalid(column.name)\"\n [formControlName]=\"column.name\"></teta-date-picker>\n <teta-toggle *ngSwitchCase=\"filterTypeEnum.boolean\"\n [formControlName]=\"column.name\">\n {{column.caption}}\n </teta-toggle>\n <teta-text-field class=\"row_auto\"\n *ngSwitchDefault\n\n [decimalPart]=\"column.filterType === filterTypeEnum.number ? decimalPart : null\"\n [onlyNumber]=\"column.filterType === filterTypeEnum.number\"\n [placeholder]=\"column.caption\"\n [invalid]=\"controlIsInvalid(column.name)\"\n [formControlName]=\"column.name\"></teta-text-field>\n </ng-container>\n <div *ngIf=\"controlIsInvalid(column.name)\"\n ngProjectAs=\"message\"\n class=\"color-red-50\">\n {{getError(column)}}\n </div>\n</teta-input>\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i2.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i2.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "component", type: i4.DatePickerComponent, selector: "teta-date-picker", inputs: ["disabled", "invalid", "firstDayOfWeek", "disabledDates", "disabledPeriods", "disabledDays", "minDate", "maxDate", "minYearDate", "maxYearDate", "align", "verticalAlign", "appendToBody", "allowNull", "backdrop", "showTime", "format"] }, { kind: "component", type: i5.SelectComponent, selector: "teta-select", inputs: ["multiple", "options", "invalid", "align", "verticalAlign", "autoClose", "autoCloseIgnore", "disabled", "itemSize", "virtual", "icon", "placeholder", "appendToBody", "allowNull", "valueRef", "textRef", "searchRef"] }, { kind: "component", type: i6.InputComponent, selector: "teta-input", inputs: ["label", "hint", "horizontal", "required"] }, { kind: "component", type: i7.TextFieldComponent, selector: "teta-text-field", inputs: ["placeholder", "leftIconName", "disabled", "onlyNumber", "decimalPart", "invalid"] }, { kind: "component", type: i8.ToggleComponent, selector: "teta-toggle", inputs: ["palette", "noLabel", "disabled"] }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }] });
106
+ PropertyGridItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: PropertyGridItemComponent, deps: [{ token: i1.TranslocoService }, { token: i2.ControlContainer, optional: true }], target: i0.ɵɵFactoryTarget.Component });
107
+ PropertyGridItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: PropertyGridItemComponent, selector: "teta-property-grid-item", inputs: { column: "column", hideNonEditable: "hideNonEditable", dict: "dict", decimalPart: "decimalPart", item: "item", itemTemplates: "itemTemplates", horizontal: "horizontal" }, outputs: { controlValueChange: "controlValueChange" }, usesOnChanges: true, ngImport: i0, template: "<teta-input [label]=\"caption\"\n [hint]=\"column.hint\"\n [formGroup]=\"formGroup\"\n [horizontal]=\"horizontal\"\n [required]=\"column.required\"\n *ngIf=\"column.editable || !hideNonEditable\">\n <ng-container *ngIf=\"template; else default\">\n <ng-container *ngTemplateOutlet=\"template.template;context: {$implicit: formGroup?.get(column.name)}\"></ng-container>\n </ng-container>\n <ng-template #default>\n <ng-container [ngSwitch]=\"column.filterType\"\n *ngIf=\"formGroup?.get(column.name)\">\n <teta-select class=\"row_auto\"\n *ngSwitchCase=\"filterTypeEnum.list\"\n [searchRef]=\"getDict()?.length > 10 ? 'name' : ''\"\n [allowNull]=\"!column.required\"\n [appendToBody]=\"true\"\n [invalid]=\"controlIsInvalid(column.name)\"\n [formControlName]=\"column.name\"\n [options]=\"getDict()\"\n [valueRef]=\"'id'\"\n [textRef]=\"'name'\"\n [multiple]=\"false\"></teta-select>\n <teta-date-picker *ngSwitchCase=\"filterTypeEnum.date\"\n class=\"row_auto\"\n [appendToBody]=\"true\"\n [invalid]=\"controlIsInvalid(column.name)\"\n [formControlName]=\"column.name\"></teta-date-picker>\n <teta-toggle *ngSwitchCase=\"filterTypeEnum.boolean\"\n [formControlName]=\"column.name\">\n {{column.caption}}\n </teta-toggle>\n <teta-text-field class=\"row_auto\"\n *ngSwitchDefault\n\n [decimalPart]=\"column.filterType === filterTypeEnum.number ? decimalPart : null\"\n [onlyNumber]=\"column.filterType === filterTypeEnum.number\"\n [placeholder]=\"column.caption\"\n [invalid]=\"controlIsInvalid(column.name)\"\n [formControlName]=\"column.name\"></teta-text-field>\n </ng-container>\n </ng-template>\n <div *ngIf=\"controlIsInvalid(column.name)\"\n ngProjectAs=\"message\"\n class=\"color-red-50\">\n {{getError(column)}}\n </div>\n</teta-input>\n", styles: [""], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i3.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i3.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "component", type: i4.DatePickerComponent, selector: "teta-date-picker", inputs: ["disabled", "invalid", "firstDayOfWeek", "disabledDates", "disabledPeriods", "disabledDays", "minDate", "maxDate", "minYearDate", "maxYearDate", "align", "verticalAlign", "appendToBody", "allowNull", "backdrop", "showTime", "format"] }, { kind: "component", type: i5.SelectComponent, selector: "teta-select", inputs: ["multiple", "options", "invalid", "align", "verticalAlign", "autoClose", "autoCloseIgnore", "disabled", "itemSize", "virtual", "icon", "placeholder", "appendToBody", "allowNull", "valueRef", "textRef", "searchRef"] }, { kind: "component", type: i6.InputComponent, selector: "teta-input", inputs: ["label", "hint", "horizontal", "required"] }, { kind: "component", type: i7.TextFieldComponent, selector: "teta-text-field", inputs: ["placeholder", "leftIconName", "disabled", "onlyNumber", "decimalPart", "invalid"] }, { kind: "component", type: i8.ToggleComponent, selector: "teta-toggle", inputs: ["palette", "noLabel", "disabled"] }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }], viewProviders: [FormsUtil.formProvider] });
86
108
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: PropertyGridItemComponent, decorators: [{
87
109
  type: Component,
88
- args: [{ selector: 'teta-property-grid-item', template: "<teta-input [label]=\"caption\"\n [hint]=\"column.hint\"\n [formGroup]=\"formGroup\"\n [horizontal]=\"horizontal\"\n [required]=\"column.required\"\n *ngIf=\"column.editable || !hideNonEditable\">\n <ng-container [ngSwitch]=\"column.filterType\"\n *ngIf=\"formGroup?.get(column.name)\">\n <teta-select class=\"row_auto\"\n *ngSwitchCase=\"filterTypeEnum.list\"\n [searchRef]=\"getDict()?.length > 10 ? 'name' : ''\"\n [allowNull]=\"!column.required\"\n [appendToBody]=\"true\"\n [invalid]=\"controlIsInvalid(column.name)\"\n [formControlName]=\"column.name\"\n [options]=\"getDict()\"\n [valueRef]=\"'id'\"\n [textRef]=\"'name'\"\n [multiple]=\"false\"></teta-select>\n <teta-date-picker *ngSwitchCase=\"filterTypeEnum.date\"\n class=\"row_auto\"\n [appendToBody]=\"true\"\n [invalid]=\"controlIsInvalid(column.name)\"\n [formControlName]=\"column.name\"></teta-date-picker>\n <teta-toggle *ngSwitchCase=\"filterTypeEnum.boolean\"\n [formControlName]=\"column.name\">\n {{column.caption}}\n </teta-toggle>\n <teta-text-field class=\"row_auto\"\n *ngSwitchDefault\n\n [decimalPart]=\"column.filterType === filterTypeEnum.number ? decimalPart : null\"\n [onlyNumber]=\"column.filterType === filterTypeEnum.number\"\n [placeholder]=\"column.caption\"\n [invalid]=\"controlIsInvalid(column.name)\"\n [formControlName]=\"column.name\"></teta-text-field>\n </ng-container>\n <div *ngIf=\"controlIsInvalid(column.name)\"\n ngProjectAs=\"message\"\n class=\"color-red-50\">\n {{getError(column)}}\n </div>\n</teta-input>\n" }]
89
- }], ctorParameters: function () { return [{ type: i1.TranslocoService }]; }, propDecorators: { column: [{
110
+ args: [{ selector: 'teta-property-grid-item', viewProviders: [FormsUtil.formProvider], template: "<teta-input [label]=\"caption\"\n [hint]=\"column.hint\"\n [formGroup]=\"formGroup\"\n [horizontal]=\"horizontal\"\n [required]=\"column.required\"\n *ngIf=\"column.editable || !hideNonEditable\">\n <ng-container *ngIf=\"template; else default\">\n <ng-container *ngTemplateOutlet=\"template.template;context: {$implicit: formGroup?.get(column.name)}\"></ng-container>\n </ng-container>\n <ng-template #default>\n <ng-container [ngSwitch]=\"column.filterType\"\n *ngIf=\"formGroup?.get(column.name)\">\n <teta-select class=\"row_auto\"\n *ngSwitchCase=\"filterTypeEnum.list\"\n [searchRef]=\"getDict()?.length > 10 ? 'name' : ''\"\n [allowNull]=\"!column.required\"\n [appendToBody]=\"true\"\n [invalid]=\"controlIsInvalid(column.name)\"\n [formControlName]=\"column.name\"\n [options]=\"getDict()\"\n [valueRef]=\"'id'\"\n [textRef]=\"'name'\"\n [multiple]=\"false\"></teta-select>\n <teta-date-picker *ngSwitchCase=\"filterTypeEnum.date\"\n class=\"row_auto\"\n [appendToBody]=\"true\"\n [invalid]=\"controlIsInvalid(column.name)\"\n [formControlName]=\"column.name\"></teta-date-picker>\n <teta-toggle *ngSwitchCase=\"filterTypeEnum.boolean\"\n [formControlName]=\"column.name\">\n {{column.caption}}\n </teta-toggle>\n <teta-text-field class=\"row_auto\"\n *ngSwitchDefault\n\n [decimalPart]=\"column.filterType === filterTypeEnum.number ? decimalPart : null\"\n [onlyNumber]=\"column.filterType === filterTypeEnum.number\"\n [placeholder]=\"column.caption\"\n [invalid]=\"controlIsInvalid(column.name)\"\n [formControlName]=\"column.name\"></teta-text-field>\n </ng-container>\n </ng-template>\n <div *ngIf=\"controlIsInvalid(column.name)\"\n ngProjectAs=\"message\"\n class=\"color-red-50\">\n {{getError(column)}}\n </div>\n</teta-input>\n" }]
111
+ }], ctorParameters: function () { return [{ type: i1.TranslocoService }, { type: i2.ControlContainer, decorators: [{
112
+ type: Optional
113
+ }] }]; }, propDecorators: { column: [{
90
114
  type: Input
91
115
  }], hideNonEditable: [{
92
116
  type: Input
@@ -94,11 +118,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImpor
94
118
  type: Input
95
119
  }], decimalPart: [{
96
120
  type: Input
97
- }], formGroup: [{
121
+ }], item: [{
122
+ type: Input
123
+ }], itemTemplates: [{
98
124
  type: Input
99
125
  }], horizontal: [{
100
126
  type: Input
101
127
  }], controlValueChange: [{
102
128
  type: Output
103
129
  }] } });
104
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvcGVydHktZ3JpZC1pdGVtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnQvcHJvcGVydHktZ3JpZC9wcm9wZXJ0eS1ncmlkL3Byb3BlcnR5LWdyaWQtaXRlbS9wcm9wZXJ0eS1ncmlkLWl0ZW0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudC9wcm9wZXJ0eS1ncmlkL3Byb3BlcnR5LWdyaWQvcHJvcGVydHktZ3JpZC1pdGVtL3Byb3BlcnR5LWdyaWQtaXRlbS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBR0wsTUFBTSxHQUNQLE1BQU0sZUFBZSxDQUFDO0FBSXZCLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSx1Q0FBdUMsQ0FBQztBQUVqRSxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sNkJBQTZCLENBQUM7QUFFdEQsT0FBTyxFQUFTLFNBQVMsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBRWpELE9BQU8sRUFBQyxLQUFLLEVBQUMsTUFBTSxvQ0FBb0MsQ0FBQzs7Ozs7Ozs7OztBQU96RCxNQUFNLE9BQU8seUJBQXlCO0lBNENwQyxZQUFvQixVQUE0QjtRQUE1QixlQUFVLEdBQVYsVUFBVSxDQUFrQjtRQWxCdEMsdUJBQWtCLEdBQUcsSUFBSSxZQUFZLEVBQWdCLENBQUM7UUFDaEUsVUFBSyxHQUFHLEtBQUssQ0FBQztRQUNkLG1CQUFjLEdBQUcsVUFBVSxDQUFDO1FBY3BCLFdBQU0sR0FBRyxJQUFJLENBQUM7SUFHdEIsQ0FBQztJQXhDRCxJQUNJLFNBQVMsQ0FBQyxJQUFzQjtRQUNsQyxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQztRQUN2QixJQUFJLENBQUMsUUFBUSxFQUFFLFdBQVcsRUFBRSxDQUFDO1FBQzdCLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFVBQVUsRUFBRSxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxZQUFZO2FBQ3RFLElBQUksQ0FDSCxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUM3QjthQUNBLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO1lBQ2YsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQztnQkFDM0IsRUFBRSxFQUFFLENBQUM7Z0JBQ0wsSUFBSSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSTthQUN2QixDQUFDLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRCxJQUFJLFNBQVM7UUFDWCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUM7SUFDekIsQ0FBQztJQVVELElBQUksT0FBTztRQUNULElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLEtBQUssVUFBVSxDQUFDLE9BQU8sRUFBRTtZQUNqRCxPQUFPLEVBQUUsQ0FBQztTQUNYO1FBQ0QsT0FBTyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxHQUMzQixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsS0FBSyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUMvQyxFQUFFLENBQUM7SUFDTCxDQUFDO0lBT0QsT0FBTztRQUNMLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQzFELElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLEVBQUUsTUFBTSxHQUFHLENBQUMsRUFBRTtZQUN0QyxPQUFPLElBQUksRUFBRSxNQUFNLENBQ2pCLENBQUMsUUFBc0IsRUFBRSxFQUFFLENBQ3pCLFFBQVEsQ0FBQyxRQUFRO2dCQUNqQixJQUFJLENBQUMsU0FBUyxFQUFFLFdBQVcsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQ3hELENBQUM7U0FDSDtRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVELGdCQUFnQixDQUFDLFdBQW1CO1FBQ2xDLE9BQU8sU0FBUyxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsV0FBVyxDQUFDLENBQUM7SUFDakUsQ0FBQztJQUVELFFBQVEsQ0FBQyxNQUFtQjtRQUMxQixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsU0FBUyxFQUFFLEdBQUcsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDakQsSUFBSSxPQUFPLEVBQUUsUUFBUSxDQUFDLFVBQVUsQ0FBQyxFQUFFO1lBQ2pDLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsMEJBQTBCLENBQUMsQ0FBQztTQUM5RDtRQUNELElBQUksT0FBTyxFQUFFLFFBQVEsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUM1QixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDLGtCQUFrQixFQUFFO2dCQUNuRCxLQUFLLEVBQUUsTUFBTSxDQUFDLFFBQVE7YUFDdkIsQ0FBQyxDQUFDO1NBQ0o7UUFDRCxJQUFJLE9BQU8sRUFBRSxRQUFRLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDNUIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxrQkFBa0IsRUFBRTtnQkFDbkQsS0FBSyxFQUFFLE1BQU0sQ0FBQyxRQUFRO2FBQ3ZCLENBQUMsQ0FBQztTQUNKO0lBQ0gsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDO1lBQzNCLEVBQUUsRUFBRSxJQUFJLENBQUMsU0FBUyxFQUFFLFFBQVEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLEtBQUs7WUFDckQsSUFBSSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSTtTQUN2QixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsUUFBUTtJQUNSLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7UUFDcEIsSUFBSSxDQUFDLFFBQVEsRUFBRSxXQUFXLEVBQUUsQ0FBQztJQUMvQixDQUFDOztzSEE3RlUseUJBQXlCOzBHQUF6Qix5QkFBeUIsb1JDeEJ0QyxxOURBMkNBOzJGRG5CYSx5QkFBeUI7a0JBTHJDLFNBQVM7K0JBQ0UseUJBQXlCO3VHQUsxQixNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csZUFBZTtzQkFBdkIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFFRixTQUFTO3NCQURaLEtBQUs7Z0JBb0JHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0ksa0JBQWtCO3NCQUEzQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgT3V0cHV0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7VGFibGVDb2x1bW59IGZyb20gJy4uLy4uLy4uL3RhYmxlL2NvbnRyYWN0L3RhYmxlLWNvbHVtbic7XG5pbXBvcnQge0lEaWN0aW9uYXJ5fSBmcm9tICcuLi8uLi8uLi8uLi9jb21tb24vY29udHJhY3QvaS1kaWN0aW9uYXJ5JztcbmltcG9ydCB7SUlkTmFtZX0gZnJvbSAnLi4vLi4vLi4vLi4vY29tbW9uL2NvbnRyYWN0L2ktaWQtbmFtZSc7XG5pbXBvcnQge0ZpbHRlclR5cGV9IGZyb20gJy4uLy4uLy4uL2ZpbHRlci9lbnVtL2ZpbHRlci10eXBlLmVudW0nO1xuaW1wb3J0IHtVbnR5cGVkRm9ybUdyb3VwfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge0Zvcm1zVXRpbH0gZnJvbSAnLi4vLi4vLi4vLi4vdXRpbC9mb3Jtcy11dGlsJztcbmltcG9ydCB7VHJhbnNsb2NvU2VydmljZX0gZnJvbSAnQG5nbmVhdC90cmFuc2xvY28nO1xuaW1wb3J0IHtmaWx0ZXIsIHRha2VXaGlsZX0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtTdWJzY3JpcHRpb259IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtBbGlnbn0gZnJvbSAnLi4vLi4vLi4vLi4vY29tbW9uL2VudW0vYWxpZ24uZW51bSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3RldGEtcHJvcGVydHktZ3JpZC1pdGVtJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3Byb3BlcnR5LWdyaWQtaXRlbS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3Byb3BlcnR5LWdyaWQtaXRlbS5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBQcm9wZXJ0eUdyaWRJdGVtQ29tcG9uZW50PFQ+IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBASW5wdXQoKSBjb2x1bW46IFRhYmxlQ29sdW1uO1xuICBASW5wdXQoKSBoaWRlTm9uRWRpdGFibGU6IGJvb2xlYW47XG4gIEBJbnB1dCgpIGRpY3Q6IElEaWN0aW9uYXJ5PElJZE5hbWU8YW55PltdPjtcbiAgQElucHV0KCkgZGVjaW1hbFBhcnQ6IG51bWJlcjtcbiAgQElucHV0KClcbiAgc2V0IGZvcm1Hcm91cChmb3JtOiBVbnR5cGVkRm9ybUdyb3VwKSB7XG4gICAgdGhpcy5fZm9ybUdyb3VwID0gZm9ybTtcbiAgICB0aGlzLl9mb3JtU3ViPy51bnN1YnNjcmliZSgpO1xuICAgIHRoaXMuX2Zvcm1TdWIgPSB0aGlzLl9mb3JtR3JvdXA/LmNvbnRyb2xzW3RoaXMuY29sdW1uLm5hbWVdPy52YWx1ZUNoYW5nZXNcbiAgICAgIC5waXBlKFxuICAgICAgICB0YWtlV2hpbGUoKCkgPT4gdGhpcy5fYWxpdmUpXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKChfKSA9PiB7XG4gICAgICAgIHRoaXMuY29udHJvbFZhbHVlQ2hhbmdlLmVtaXQoe1xuICAgICAgICAgIGlkOiBfLFxuICAgICAgICAgIG5hbWU6IHRoaXMuY29sdW1uLm5hbWUsXG4gICAgICAgIH0pO1xuICAgICAgfSk7XG4gIH1cblxuICBnZXQgZm9ybUdyb3VwKCkge1xuICAgIHJldHVybiB0aGlzLl9mb3JtR3JvdXA7XG4gIH1cblxuICBASW5wdXQoKSBob3Jpem9udGFsOiBib29sZWFuO1xuICBAT3V0cHV0KCkgY29udHJvbFZhbHVlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxJSWROYW1lPGFueT4+KCk7XG4gIGFsaWduID0gQWxpZ247XG4gIGZpbHRlclR5cGVFbnVtID0gRmlsdGVyVHlwZTtcblxuICBwcml2YXRlIF9mb3JtR3JvdXA6IFVudHlwZWRGb3JtR3JvdXA7XG4gIHByaXZhdGUgX2Zvcm1TdWI6IFN1YnNjcmlwdGlvbjtcblxuICBnZXQgY2FwdGlvbigpOiBzdHJpbmcge1xuICAgIGlmICh0aGlzLmNvbHVtbi5maWx0ZXJUeXBlID09PSBGaWx0ZXJUeXBlLmJvb2xlYW4pIHtcbiAgICAgIHJldHVybiAnJztcbiAgICB9XG4gICAgcmV0dXJuIGAke3RoaXMuY29sdW1uLmNhcHRpb259JHtcbiAgICAgIHRoaXMuY29sdW1uLnVuaXQgPyBgLCAke3RoaXMuY29sdW1uLnVuaXR9YCA6ICcnXG4gICAgfWA7XG4gIH1cblxuICBwcml2YXRlIF9hbGl2ZSA9IHRydWU7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBfdHJhbnNsb2NvOiBUcmFuc2xvY29TZXJ2aWNlKSB7XG4gIH1cblxuICBnZXREaWN0KCkge1xuICAgIGNvbnN0IGRpY3QgPSB0aGlzLmRpY3QgPyB0aGlzLmRpY3RbdGhpcy5jb2x1bW4ubmFtZV0gOiBbXTtcbiAgICBpZiAodGhpcy5jb2x1bW4ucGFyZW50TmFtZT8ubGVuZ3RoID4gMCkge1xuICAgICAgcmV0dXJuIGRpY3Q/LmZpbHRlcihcbiAgICAgICAgKGRpY3RJdGVtOiBJSWROYW1lPGFueT4pID0+XG4gICAgICAgICAgZGljdEl0ZW0ucGFyZW50SWQgPT09XG4gICAgICAgICAgdGhpcy5mb3JtR3JvdXA/LmdldFJhd1ZhbHVlKClbdGhpcy5jb2x1bW4ucGFyZW50TmFtZV1cbiAgICAgICk7XG4gICAgfVxuICAgIHJldHVybiBkaWN0O1xuICB9XG5cbiAgY29udHJvbElzSW52YWxpZChjb250cm9sTmFtZTogc3RyaW5nKSB7XG4gICAgcmV0dXJuIEZvcm1zVXRpbC5jb250cm9sSXNJbnZhbGlkKHRoaXMuZm9ybUdyb3VwLCBjb250cm9sTmFtZSk7XG4gIH1cblxuICBnZXRFcnJvcihjb2x1bW46IFRhYmxlQ29sdW1uKTogc3RyaW5nIHtcbiAgICBjb25zdCBjb250cm9sID0gdGhpcy5mb3JtR3JvdXA/LmdldChjb2x1bW4ubmFtZSk7XG4gICAgaWYgKGNvbnRyb2w/Lmhhc0Vycm9yKCdyZXF1aXJlZCcpKSB7XG4gICAgICByZXR1cm4gdGhpcy5fdHJhbnNsb2NvLnRyYW5zbGF0ZSgnZXJyb3JzLmZpZWxkX2lzX3JlcXVpcmVkJyk7XG4gICAgfVxuICAgIGlmIChjb250cm9sPy5oYXNFcnJvcignbWluJykpIHtcbiAgICAgIHJldHVybiB0aGlzLl90cmFuc2xvY28udHJhbnNsYXRlKCdlcnJvcnMubWluX3ZhbHVlJywge1xuICAgICAgICB2YWx1ZTogY29sdW1uLm1pblZhbHVlLFxuICAgICAgfSk7XG4gICAgfVxuICAgIGlmIChjb250cm9sPy5oYXNFcnJvcignbWF4JykpIHtcbiAgICAgIHJldHVybiB0aGlzLl90cmFuc2xvY28udHJhbnNsYXRlKCdlcnJvcnMubWF4X3ZhbHVlJywge1xuICAgICAgICB2YWx1ZTogY29sdW1uLm1heFZhbHVlLFxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgdmFsdWVDaGFuZ2UoKSB7XG4gICAgdGhpcy5jb250cm9sVmFsdWVDaGFuZ2UuZW1pdCh7XG4gICAgICBpZDogdGhpcy5mb3JtR3JvdXA/LmNvbnRyb2xzW3RoaXMuY29sdW1uLm5hbWVdPy52YWx1ZSxcbiAgICAgIG5hbWU6IHRoaXMuY29sdW1uLm5hbWUsXG4gICAgfSk7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuX2FsaXZlID0gZmFsc2U7XG4gICAgdGhpcy5fZm9ybVN1Yj8udW5zdWJzY3JpYmUoKTtcbiAgfVxufVxuIiwiPHRldGEtaW5wdXQgW2xhYmVsXT1cImNhcHRpb25cIlxuICAgICAgICAgICAgW2hpbnRdPVwiY29sdW1uLmhpbnRcIlxuICAgICAgICAgICAgW2Zvcm1Hcm91cF09XCJmb3JtR3JvdXBcIlxuICAgICAgICAgICAgW2hvcml6b250YWxdPVwiaG9yaXpvbnRhbFwiXG4gICAgICAgICAgICBbcmVxdWlyZWRdPVwiY29sdW1uLnJlcXVpcmVkXCJcbiAgICAgICAgICAgICpuZ0lmPVwiY29sdW1uLmVkaXRhYmxlIHx8ICFoaWRlTm9uRWRpdGFibGVcIj5cbiAgPG5nLWNvbnRhaW5lciBbbmdTd2l0Y2hdPVwiY29sdW1uLmZpbHRlclR5cGVcIlxuICAgICAgICAgICAgICAgICpuZ0lmPVwiZm9ybUdyb3VwPy5nZXQoY29sdW1uLm5hbWUpXCI+XG4gICAgPHRldGEtc2VsZWN0IGNsYXNzPVwicm93X2F1dG9cIlxuICAgICAgICAgICAgICAgICAqbmdTd2l0Y2hDYXNlPVwiZmlsdGVyVHlwZUVudW0ubGlzdFwiXG4gICAgICAgICAgICAgICAgIFtzZWFyY2hSZWZdPVwiZ2V0RGljdCgpPy5sZW5ndGggPiAxMCA/ICduYW1lJyA6ICcnXCJcbiAgICAgICAgICAgICAgICAgW2FsbG93TnVsbF09XCIhY29sdW1uLnJlcXVpcmVkXCJcbiAgICAgICAgICAgICAgICAgW2FwcGVuZFRvQm9keV09XCJ0cnVlXCJcbiAgICAgICAgICAgICAgICAgW2ludmFsaWRdPVwiY29udHJvbElzSW52YWxpZChjb2x1bW4ubmFtZSlcIlxuICAgICAgICAgICAgICAgICBbZm9ybUNvbnRyb2xOYW1lXT1cImNvbHVtbi5uYW1lXCJcbiAgICAgICAgICAgICAgICAgW29wdGlvbnNdPVwiZ2V0RGljdCgpXCJcbiAgICAgICAgICAgICAgICAgW3ZhbHVlUmVmXT1cIidpZCdcIlxuICAgICAgICAgICAgICAgICBbdGV4dFJlZl09XCInbmFtZSdcIlxuICAgICAgICAgICAgICAgICBbbXVsdGlwbGVdPVwiZmFsc2VcIj48L3RldGEtc2VsZWN0PlxuICAgIDx0ZXRhLWRhdGUtcGlja2VyICpuZ1N3aXRjaENhc2U9XCJmaWx0ZXJUeXBlRW51bS5kYXRlXCJcbiAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInJvd19hdXRvXCJcbiAgICAgICAgICAgICAgICAgICAgICBbYXBwZW5kVG9Cb2R5XT1cInRydWVcIlxuICAgICAgICAgICAgICAgICAgICAgIFtpbnZhbGlkXT1cImNvbnRyb2xJc0ludmFsaWQoY29sdW1uLm5hbWUpXCJcbiAgICAgICAgICAgICAgICAgICAgICBbZm9ybUNvbnRyb2xOYW1lXT1cImNvbHVtbi5uYW1lXCI+PC90ZXRhLWRhdGUtcGlja2VyPlxuICAgIDx0ZXRhLXRvZ2dsZSAqbmdTd2l0Y2hDYXNlPVwiZmlsdGVyVHlwZUVudW0uYm9vbGVhblwiXG4gICAgICAgICAgICAgICAgIFtmb3JtQ29udHJvbE5hbWVdPVwiY29sdW1uLm5hbWVcIj5cbiAgICAgIHt7Y29sdW1uLmNhcHRpb259fVxuICAgIDwvdGV0YS10b2dnbGU+XG4gICAgPHRldGEtdGV4dC1maWVsZCBjbGFzcz1cInJvd19hdXRvXCJcbiAgICAgICAgICAgICAgICAgICAgICpuZ1N3aXRjaERlZmF1bHRcblxuICAgICAgICAgICAgICAgICAgICAgW2RlY2ltYWxQYXJ0XT1cImNvbHVtbi5maWx0ZXJUeXBlID09PSBmaWx0ZXJUeXBlRW51bS5udW1iZXIgPyBkZWNpbWFsUGFydCA6IG51bGxcIlxuICAgICAgICAgICAgICAgICAgICAgW29ubHlOdW1iZXJdPVwiY29sdW1uLmZpbHRlclR5cGUgPT09IGZpbHRlclR5cGVFbnVtLm51bWJlclwiXG4gICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiY29sdW1uLmNhcHRpb25cIlxuICAgICAgICAgICAgICAgICAgICAgW2ludmFsaWRdPVwiY29udHJvbElzSW52YWxpZChjb2x1bW4ubmFtZSlcIlxuICAgICAgICAgICAgICAgICAgICAgW2Zvcm1Db250cm9sTmFtZV09XCJjb2x1bW4ubmFtZVwiPjwvdGV0YS10ZXh0LWZpZWxkPlxuICA8L25nLWNvbnRhaW5lcj5cbiAgPGRpdiAqbmdJZj1cImNvbnRyb2xJc0ludmFsaWQoY29sdW1uLm5hbWUpXCJcbiAgICAgICBuZ1Byb2plY3RBcz1cIm1lc3NhZ2VcIlxuICAgICAgIGNsYXNzPVwiY29sb3ItcmVkLTUwXCI+XG4gICAge3tnZXRFcnJvcihjb2x1bW4pfX1cbiAgPC9kaXY+XG48L3RldGEtaW5wdXQ+XG4iXX0=
130
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvcGVydHktZ3JpZC1pdGVtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnQvcHJvcGVydHktZ3JpZC9wcm9wZXJ0eS1ncmlkL3Byb3BlcnR5LWdyaWQtaXRlbS9wcm9wZXJ0eS1ncmlkLWl0ZW0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudC9wcm9wZXJ0eS1ncmlkL3Byb3BlcnR5LWdyaWQvcHJvcGVydHktZ3JpZC1pdGVtL3Byb3BlcnR5LWdyaWQtaXRlbS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBRUcsUUFBUSxFQUNoQixNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFJdkIsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLHVDQUF1QyxDQUFDO0FBQ2pFLE9BQU8sRUFBbUIsU0FBUyxFQUFFLE1BQU0sRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ25FLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSw2QkFBNkIsQ0FBQztBQUd0RCxPQUFPLEVBQUMsS0FBSyxFQUFDLE1BQU0sb0NBQW9DLENBQUM7QUFFekQsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGdCQUFnQixDQUFDOzs7Ozs7Ozs7O0FBUXpDLE1BQU0sT0FBTyx5QkFBeUI7SUF3RHBDLFlBQW9CLFVBQTRCLEVBQ2hCLFVBQTRCO1FBRHhDLGVBQVUsR0FBVixVQUFVLENBQWtCO1FBQ2hCLGVBQVUsR0FBVixVQUFVLENBQWtCO1FBbkJsRCx1QkFBa0IsR0FBRyxJQUFJLFlBQVksRUFBZ0IsQ0FBQztRQUNoRSxVQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ2QsbUJBQWMsR0FBRyxVQUFVLENBQUM7UUFjcEIsV0FBTSxHQUFHLElBQUksQ0FBQztJQUl0QixDQUFDO0lBbkRELFdBQVc7SUFD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QkFDRyxlQUFlO3NCQUF2QixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQStCRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNJLGtCQUFrQjtzQkFBM0IsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCwgT25DaGFuZ2VzLFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCwgT3B0aW9uYWwsXG4gIE91dHB1dCwgUXVlcnlMaXN0LCBTaW1wbGVDaGFuZ2VzLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7VGFibGVDb2x1bW59IGZyb20gJy4uLy4uLy4uL3RhYmxlL2NvbnRyYWN0L3RhYmxlLWNvbHVtbic7XG5pbXBvcnQge0lEaWN0aW9uYXJ5fSBmcm9tICcuLi8uLi8uLi8uLi9jb21tb24vY29udHJhY3QvaS1kaWN0aW9uYXJ5JztcbmltcG9ydCB7SUlkTmFtZX0gZnJvbSAnLi4vLi4vLi4vLi4vY29tbW9uL2NvbnRyYWN0L2ktaWQtbmFtZSc7XG5pbXBvcnQge0ZpbHRlclR5cGV9IGZyb20gJy4uLy4uLy4uL2ZpbHRlci9lbnVtL2ZpbHRlci10eXBlLmVudW0nO1xuaW1wb3J0IHtDb250cm9sQ29udGFpbmVyLCBGb3JtR3JvdXAsIE5nRm9ybX0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtGb3Jtc1V0aWx9IGZyb20gJy4uLy4uLy4uLy4uL3V0aWwvZm9ybXMtdXRpbCc7XG5pbXBvcnQge1RyYW5zbG9jb1NlcnZpY2V9IGZyb20gJ0BuZ25lYXQvdHJhbnNsb2NvJztcbmltcG9ydCB7U3Vic2NyaXB0aW9ufSBmcm9tICdyeGpzJztcbmltcG9ydCB7QWxpZ259IGZyb20gJy4uLy4uLy4uLy4uL2NvbW1vbi9lbnVtL2FsaWduLmVudW0nO1xuaW1wb3J0IHtQcm9wZXJ0eUdyaWRJdGVtRGVzY3JpcHRpb25EaXJlY3RpdmV9IGZyb20gXCIuLi9wcm9wZXJ0eS1ncmlkLWl0ZW0tZGVzY3JpcHRpb24uZGlyZWN0aXZlXCI7XG5pbXBvcnQge3Rha2VXaGlsZX0gZnJvbSBcInJ4anMvb3BlcmF0b3JzXCI7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3RldGEtcHJvcGVydHktZ3JpZC1pdGVtJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3Byb3BlcnR5LWdyaWQtaXRlbS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3Byb3BlcnR5LWdyaWQtaXRlbS5jb21wb25lbnQuc2NzcyddLFxuICB2aWV3UHJvdmlkZXJzOiBbRm9ybXNVdGlsLmZvcm1Qcm92aWRlcl0sXG59KVxuZXhwb3J0IGNsYXNzIFByb3BlcnR5R3JpZEl0ZW1Db21wb25lbnQ8VD4gaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSwgT25DaGFuZ2VzIHtcbiAgQElucHV0KCkgY29sdW1uOiBUYWJsZUNvbHVtbjtcbiAgQElucHV0KCkgaGlkZU5vbkVkaXRhYmxlOiBib29sZWFuO1xuICBASW5wdXQoKSBkaWN0OiBJRGljdGlvbmFyeTxJSWROYW1lPGFueT5bXT47XG4gIEBJbnB1dCgpIGRlY2ltYWxQYXJ0OiBudW1iZXI7XG4gIEBJbnB1dCgpIGl0ZW06IFQ7XG4gIEBJbnB1dCgpIGl0ZW1UZW1wbGF0ZXM6IFF1ZXJ5TGlzdDxQcm9wZXJ0eUdyaWRJdGVtRGVzY3JpcHRpb25EaXJlY3RpdmU+O1xuICAvLyBASW5wdXQoKVxuICAvLyBzZXQgZm9ybUdyb3VwKGZvcm06IFVudHlwZWRGb3JtR3JvdXApIHtcbiAgLy8gICB0aGlzLl9mb3JtR3JvdXAgPSBmb3JtO1xuICAvLyAgIHRoaXMuX2Zvcm1TdWI/LnVuc3Vic2NyaWJlKCk7XG4gIC8vICAgdGhpcy5fZm9ybVN1YiA9IHRoaXMuX2Zvcm1Hcm91cD8uY29udHJvbHNbdGhpcy5jb2x1bW4ubmFtZV0/LnZhbHVlQ2hhbmdlc1xuICAvLyAgICAgLnBpcGUoXG4gIC8vICAgICAgIHRha2VXaGlsZSgoKSA9PiB0aGlzLl9hbGl2ZSlcbiAgLy8gICAgIClcbiAgLy8gICAgIC5zdWJzY3JpYmUoKF8pID0+IHtcbiAgLy8gICAgICAgdGhpcy5jb250cm9sVmFsdWVDaGFuZ2UuZW1pdCh7XG4gIC8vICAgICAgICAgaWQ6IF8sXG4gIC8vICAgICAgICAgbmFtZTogdGhpcy5jb2x1bW4ubmFtZSxcbiAgLy8gICAgICAgfSk7XG4gIC8vICAgICB9KTtcbiAgLy8gfVxuXG4gIGdldCB0ZW1wbGF0ZSgpIHtcbiAgICByZXR1cm4gdGhpcy5pdGVtVGVtcGxhdGVzLmZpbmQoKGl0ZW0pID0+IGl0ZW0ubmFtZSA9PT0gdGhpcy5jb2x1bW4ubmFtZSlcbiAgfVxuXG4gIGdldCBmb3JtR3JvdXAoKTogRm9ybUdyb3VwIHtcbiAgICBpZiAodGhpcy5fZm9ybUdyb3VwIGluc3RhbmNlb2YgRm9ybUdyb3VwKSB7XG4gICAgICByZXR1cm4gdGhpcy5fZm9ybUdyb3VwO1xuICAgIH1cbiAgICBpZiAodGhpcy5fZm9ybUdyb3VwIGluc3RhbmNlb2YgTmdGb3JtKSB7XG4gICAgICByZXR1cm4gdGhpcy5fZm9ybUdyb3VwLmZvcm07XG4gICAgfVxuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgQElucHV0KCkgaG9yaXpvbnRhbDogYm9vbGVhbjtcbiAgQE91dHB1dCgpIGNvbnRyb2xWYWx1ZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8SUlkTmFtZTxhbnk+PigpO1xuICBhbGlnbiA9IEFsaWduO1xuICBmaWx0ZXJUeXBlRW51bSA9IEZpbHRlclR5cGU7XG5cbiAgLy8gcHJpdmF0ZSBfZm9ybUdyb3VwOiBVbnR5cGVkRm9ybUdyb3VwO1xuICBwcml2YXRlIF9mb3JtU3ViOiBTdWJzY3JpcHRpb247XG5cbiAgZ2V0IGNhcHRpb24oKTogc3RyaW5nIHtcbiAgICBpZiAodGhpcy5jb2x1bW4uZmlsdGVyVHlwZSA9PT0gRmlsdGVyVHlwZS5ib29sZWFuKSB7XG4gICAgICByZXR1cm4gJyc7XG4gICAgfVxuICAgIHJldHVybiBgJHt0aGlzLmNvbHVtbi5jYXB0aW9ufSR7XG4gICAgICB0aGlzLmNvbHVtbi51bml0ID8gYCwgJHt0aGlzLmNvbHVtbi51bml0fWAgOiAnJ1xuICAgIH1gO1xuICB9XG5cbiAgcHJpdmF0ZSBfYWxpdmUgPSB0cnVlO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgX3RyYW5zbG9jbzogVHJhbnNsb2NvU2VydmljZSxcbiAgICAgICAgICAgICAgQE9wdGlvbmFsKCkgcHJpdmF0ZSBfZm9ybUdyb3VwOiBDb250cm9sQ29udGFpbmVyKSB7XG4gIH1cblxuICBnZXREaWN0KCkge1xuICAgIGNvbnN0IGRpY3QgPSB0aGlzLmRpY3QgPyB0aGlzLmRpY3RbdGhpcy5jb2x1bW4ubmFtZV0gOiBbXTtcbiAgICBpZiAodGhpcy5jb2x1bW4ucGFyZW50TmFtZT8ubGVuZ3RoID4gMCkge1xuICAgICAgcmV0dXJuIGRpY3Q/LmZpbHRlcihcbiAgICAgICAgKGRpY3RJdGVtOiBJSWROYW1lPGFueT4pID0+XG4gICAgICAgICAgZGljdEl0ZW0ucGFyZW50SWQgPT09XG4gICAgICAgICAgdGhpcy5mb3JtR3JvdXA/LmdldFJhd1ZhbHVlKClbdGhpcy5jb2x1bW4ucGFyZW50TmFtZV1cbiAgICAgICk7XG4gICAgfVxuICAgIHJldHVybiBkaWN0O1xuICB9XG5cbiAgY29udHJvbElzSW52YWxpZChjb250cm9sTmFtZTogc3RyaW5nKSB7XG4gICAgcmV0dXJuIEZvcm1zVXRpbC5jb250cm9sSXNJbnZhbGlkKHRoaXMuZm9ybUdyb3VwLCBjb250cm9sTmFtZSk7XG4gIH1cblxuICBnZXRFcnJvcihjb2x1bW46IFRhYmxlQ29sdW1uKTogc3RyaW5nIHtcbiAgICBjb25zdCBjb250cm9sID0gdGhpcy5mb3JtR3JvdXA/LmdldChjb2x1bW4ubmFtZSk7XG4gICAgaWYgKGNvbnRyb2w/Lmhhc0Vycm9yKCdyZXF1aXJlZCcpKSB7XG4gICAgICByZXR1cm4gdGhpcy5fdHJhbnNsb2NvLnRyYW5zbGF0ZSgnZXJyb3JzLmZpZWxkX2lzX3JlcXVpcmVkJyk7XG4gICAgfVxuICAgIGlmIChjb250cm9sPy5oYXNFcnJvcignbWluJykpIHtcbiAgICAgIHJldHVybiB0aGlzLl90cmFuc2xvY28udHJhbnNsYXRlKCdlcnJvcnMubWluX3ZhbHVlJywge1xuICAgICAgICB2YWx1ZTogY29sdW1uLm1pblZhbHVlLFxuICAgICAgfSk7XG4gICAgfVxuICAgIGlmIChjb250cm9sPy5oYXNFcnJvcignbWF4JykpIHtcbiAgICAgIHJldHVybiB0aGlzLl90cmFuc2xvY28udHJhbnNsYXRlKCdlcnJvcnMubWF4X3ZhbHVlJywge1xuICAgICAgICB2YWx1ZTogY29sdW1uLm1heFZhbHVlLFxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLl9hbGl2ZSA9IGZhbHNlO1xuICAgIHRoaXMuX2Zvcm1TdWI/LnVuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgaWYgKHRoaXMuY29sdW1uICYmIHRoaXMuaXRlbSkge1xuICAgICAgdGhpcy5mb3JtR3JvdXAucmVnaXN0ZXJDb250cm9sKHRoaXMuY29sdW1uLm5hbWUsIEZvcm1zVXRpbC5pbml0Q29udHJvbEZyb21Db2x1bW4odGhpcy5jb2x1bW4sIHRoaXMuaXRlbSkpO1xuICAgICAgdGhpcy5fZm9ybVN1Yj8udW5zdWJzY3JpYmUoKTtcbiAgICAgIHRoaXMuX2Zvcm1TdWIgPSB0aGlzLmZvcm1Hcm91cD8uY29udHJvbHNbdGhpcy5jb2x1bW4ubmFtZV0/LnZhbHVlQ2hhbmdlc1xuICAgICAgICAucGlwZShcbiAgICAgICAgICB0YWtlV2hpbGUoKCkgPT4gdGhpcy5fYWxpdmUpXG4gICAgICAgIClcbiAgICAgICAgLnN1YnNjcmliZSgoXykgPT4ge1xuICAgICAgICAgIHRoaXMuY29udHJvbFZhbHVlQ2hhbmdlLmVtaXQoe1xuICAgICAgICAgICAgaWQ6IF8sXG4gICAgICAgICAgICBuYW1lOiB0aGlzLmNvbHVtbi5uYW1lLFxuICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcbiAgICB9XG4gIH1cbn1cbiIsIjx0ZXRhLWlucHV0IFtsYWJlbF09XCJjYXB0aW9uXCJcbiAgICAgICAgICAgIFtoaW50XT1cImNvbHVtbi5oaW50XCJcbiAgICAgICAgICAgIFtmb3JtR3JvdXBdPVwiZm9ybUdyb3VwXCJcbiAgICAgICAgICAgIFtob3Jpem9udGFsXT1cImhvcml6b250YWxcIlxuICAgICAgICAgICAgW3JlcXVpcmVkXT1cImNvbHVtbi5yZXF1aXJlZFwiXG4gICAgICAgICAgICAqbmdJZj1cImNvbHVtbi5lZGl0YWJsZSB8fCAhaGlkZU5vbkVkaXRhYmxlXCI+XG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCJ0ZW1wbGF0ZTsgZWxzZSBkZWZhdWx0XCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInRlbXBsYXRlLnRlbXBsYXRlO2NvbnRleHQ6IHskaW1wbGljaXQ6IGZvcm1Hcm91cD8uZ2V0KGNvbHVtbi5uYW1lKX1cIj48L25nLWNvbnRhaW5lcj5cbiAgPC9uZy1jb250YWluZXI+XG4gIDxuZy10ZW1wbGF0ZSAjZGVmYXVsdD5cbiAgICA8bmctY29udGFpbmVyIFtuZ1N3aXRjaF09XCJjb2x1bW4uZmlsdGVyVHlwZVwiXG4gICAgICAgICAgICAgICAgICAqbmdJZj1cImZvcm1Hcm91cD8uZ2V0KGNvbHVtbi5uYW1lKVwiPlxuICAgICAgPHRldGEtc2VsZWN0IGNsYXNzPVwicm93X2F1dG9cIlxuICAgICAgICAgICAgICAgICAgICpuZ1N3aXRjaENhc2U9XCJmaWx0ZXJUeXBlRW51bS5saXN0XCJcbiAgICAgICAgICAgICAgICAgICBbc2VhcmNoUmVmXT1cImdldERpY3QoKT8ubGVuZ3RoID4gMTAgPyAnbmFtZScgOiAnJ1wiXG4gICAgICAgICAgICAgICAgICAgW2FsbG93TnVsbF09XCIhY29sdW1uLnJlcXVpcmVkXCJcbiAgICAgICAgICAgICAgICAgICBbYXBwZW5kVG9Cb2R5XT1cInRydWVcIlxuICAgICAgICAgICAgICAgICAgIFtpbnZhbGlkXT1cImNvbnRyb2xJc0ludmFsaWQoY29sdW1uLm5hbWUpXCJcbiAgICAgICAgICAgICAgICAgICBbZm9ybUNvbnRyb2xOYW1lXT1cImNvbHVtbi5uYW1lXCJcbiAgICAgICAgICAgICAgICAgICBbb3B0aW9uc109XCJnZXREaWN0KClcIlxuICAgICAgICAgICAgICAgICAgIFt2YWx1ZVJlZl09XCInaWQnXCJcbiAgICAgICAgICAgICAgICAgICBbdGV4dFJlZl09XCInbmFtZSdcIlxuICAgICAgICAgICAgICAgICAgIFttdWx0aXBsZV09XCJmYWxzZVwiPjwvdGV0YS1zZWxlY3Q+XG4gICAgICA8dGV0YS1kYXRlLXBpY2tlciAqbmdTd2l0Y2hDYXNlPVwiZmlsdGVyVHlwZUVudW0uZGF0ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInJvd19hdXRvXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFthcHBlbmRUb0JvZHldPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbaW52YWxpZF09XCJjb250cm9sSXNJbnZhbGlkKGNvbHVtbi5uYW1lKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbZm9ybUNvbnRyb2xOYW1lXT1cImNvbHVtbi5uYW1lXCI+PC90ZXRhLWRhdGUtcGlja2VyPlxuICAgICAgPHRldGEtdG9nZ2xlICpuZ1N3aXRjaENhc2U9XCJmaWx0ZXJUeXBlRW51bS5ib29sZWFuXCJcbiAgICAgICAgICAgICAgICAgICBbZm9ybUNvbnRyb2xOYW1lXT1cImNvbHVtbi5uYW1lXCI+XG4gICAgICAgIHt7Y29sdW1uLmNhcHRpb259fVxuICAgICAgPC90ZXRhLXRvZ2dsZT5cbiAgICAgIDx0ZXRhLXRleHQtZmllbGQgY2xhc3M9XCJyb3dfYXV0b1wiXG4gICAgICAgICAgICAgICAgICAgICAgICpuZ1N3aXRjaERlZmF1bHRcblxuICAgICAgICAgICAgICAgICAgICAgICBbZGVjaW1hbFBhcnRdPVwiY29sdW1uLmZpbHRlclR5cGUgPT09IGZpbHRlclR5cGVFbnVtLm51bWJlciA/IGRlY2ltYWxQYXJ0IDogbnVsbFwiXG4gICAgICAgICAgICAgICAgICAgICAgIFtvbmx5TnVtYmVyXT1cImNvbHVtbi5maWx0ZXJUeXBlID09PSBmaWx0ZXJUeXBlRW51bS5udW1iZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiY29sdW1uLmNhcHRpb25cIlxuICAgICAgICAgICAgICAgICAgICAgICBbaW52YWxpZF09XCJjb250cm9sSXNJbnZhbGlkKGNvbHVtbi5uYW1lKVwiXG4gICAgICAgICAgICAgICAgICAgICAgIFtmb3JtQ29udHJvbE5hbWVdPVwiY29sdW1uLm5hbWVcIj48L3RldGEtdGV4dC1maWVsZD5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC9uZy10ZW1wbGF0ZT5cbiAgPGRpdiAqbmdJZj1cImNvbnRyb2xJc0ludmFsaWQoY29sdW1uLm5hbWUpXCJcbiAgICAgICBuZ1Byb2plY3RBcz1cIm1lc3NhZ2VcIlxuICAgICAgIGNsYXNzPVwiY29sb3ItcmVkLTUwXCI+XG4gICAge3tnZXRFcnJvcihjb2x1bW4pfX1cbiAgPC9kaXY+XG48L3RldGEtaW5wdXQ+XG4iXX0=
@@ -0,0 +1,19 @@
1
+ import { Directive, Input } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class PropertyGridItemDescriptionDirective {
4
+ constructor(template) {
5
+ this.template = template;
6
+ }
7
+ }
8
+ PropertyGridItemDescriptionDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: PropertyGridItemDescriptionDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
9
+ PropertyGridItemDescriptionDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.2", type: PropertyGridItemDescriptionDirective, selector: "[tetaPropertyGridItemDescription]", inputs: { name: ["tetaPropertyGridItemDescription", "name"] }, ngImport: i0 });
10
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: PropertyGridItemDescriptionDirective, decorators: [{
11
+ type: Directive,
12
+ args: [{
13
+ selector: '[tetaPropertyGridItemDescription]'
14
+ }]
15
+ }], ctorParameters: function () { return [{ type: i0.TemplateRef }]; }, propDecorators: { name: [{
16
+ type: Input,
17
+ args: ['tetaPropertyGridItemDescription']
18
+ }] } });
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvcGVydHktZ3JpZC1pdGVtLWRlc2NyaXB0aW9uLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnQvcHJvcGVydHktZ3JpZC9wcm9wZXJ0eS1ncmlkL3Byb3BlcnR5LWdyaWQtaXRlbS1kZXNjcmlwdGlvbi5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxLQUFLLEVBQWMsTUFBTSxlQUFlLENBQUM7O0FBSzVELE1BQU0sT0FBTyxvQ0FBb0M7SUFHL0MsWUFBbUIsUUFBMEI7UUFBMUIsYUFBUSxHQUFSLFFBQVEsQ0FBa0I7SUFDN0MsQ0FBQzs7aUlBSlUsb0NBQW9DO3FIQUFwQyxvQ0FBb0M7MkZBQXBDLG9DQUFvQztrQkFIaEQsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsbUNBQW1DO2lCQUM5QztrR0FFMkMsSUFBSTtzQkFBN0MsS0FBSzt1QkFBQyxpQ0FBaUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0RpcmVjdGl2ZSwgSW5wdXQsIFRlbXBsYXRlUmVmfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW3RldGFQcm9wZXJ0eUdyaWRJdGVtRGVzY3JpcHRpb25dJ1xufSlcbmV4cG9ydCBjbGFzcyBQcm9wZXJ0eUdyaWRJdGVtRGVzY3JpcHRpb25EaXJlY3RpdmUge1xuICBASW5wdXQoJ3RldGFQcm9wZXJ0eUdyaWRJdGVtRGVzY3JpcHRpb24nKSBuYW1lOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IocHVibGljIHRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+KSB7XG4gIH1cbn1cbiJdfQ==
@@ -1,14 +1,28 @@
1
- import { Component, EventEmitter, HostBinding, Input, Output, } from '@angular/core';
1
+ import { Component, ContentChildren, EventEmitter, HostBinding, Input, Optional, Output, } from '@angular/core';
2
+ import { FormGroup, NgForm } from '@angular/forms';
3
+ import { PropertyGridItemDescriptionDirective } from "./property-grid-item-description.directive";
4
+ import { FormsUtil } from "../../../util/forms-util";
2
5
  import * as i0 from "@angular/core";
3
- import * as i1 from "@angular/common";
4
- import * as i2 from "@angular/forms";
6
+ import * as i1 from "@angular/forms";
7
+ import * as i2 from "@angular/common";
5
8
  import * as i3 from "./property-grid-group/property-grid-group.component";
6
9
  import * as i4 from "./property-grid-item/property-grid-item.component";
7
10
  export class PropertyGridComponent {
8
- constructor() {
11
+ constructor(_formGroup) {
12
+ this._formGroup = _formGroup;
9
13
  this.formClass = true;
10
14
  this.controlValueChange = new EventEmitter();
11
15
  this._alive = true;
16
+ // console.log(this.formGroup)
17
+ }
18
+ get formGroup() {
19
+ if (this._formGroup instanceof FormGroup) {
20
+ return this._formGroup;
21
+ }
22
+ if (this._formGroup instanceof NgForm) {
23
+ return this._formGroup.form;
24
+ }
25
+ return null;
12
26
  }
13
27
  onControlValueChange(event) {
14
28
  const affected = this.columns.filter((_) => _.parentName === event.name);
@@ -38,22 +52,29 @@ export class PropertyGridComponent {
38
52
  getDictValue(value, name) {
39
53
  return this.dict[name]?.find((_) => _.id === value);
40
54
  }
55
+ ngAfterViewInit() {
56
+ }
41
57
  }
42
- PropertyGridComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: PropertyGridComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
43
- PropertyGridComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: PropertyGridComponent, selector: "teta-property-grid", inputs: { hideNonEditable: "hideNonEditable", columns: "columns", dict: "dict", formGroup: "formGroup", horizontal: "horizontal", decimalPart: "decimalPart" }, outputs: { controlValueChange: "controlValueChange" }, host: { properties: { "class.form-container": "this.formClass" } }, ngImport: i0, template: "<ng-container *ngIf=\"columns?.length\">\n <ng-container *ngFor=\"let column of columns; trackBy: trackColumns\">\n <teta-property-grid-item *ngIf=\"column.columns?.length < 1 && (column.editable || !hideNonEditable)\"\n [dict]=\"dict\"\n [column]=\"column\"\n [id]=\"column.name\"\n [decimalPart]=\"decimalPart\"\n [formGroup]=\"formGroup\"\n [horizontal]=\"horizontal\"\n (controlValueChange)=\"onControlValueChange($event)\"\n [hideNonEditable]=\"hideNonEditable\"></teta-property-grid-item>\n <teta-property-grid-group *ngIf=\"column.columns?.length > 0 && (column.editable || !hideNonEditable)\"\n [id]=\"column.name\"\n [dict]=\"dict\"\n [column]=\"column\"\n [decimalPart]=\"decimalPart\"\n [formGroup]=\"formGroup\"\n [horizontal]=\"horizontal\"\n (controlValueChange)=\"onControlValueChange($event)\"\n [hideNonEditable]=\"hideNonEditable\"></teta-property-grid-group>\n </ng-container>\n</ng-container>\n", styles: [":host{padding:12px 8px}\n"], 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.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: i3.PropertyGridGroupComponent, selector: "teta-property-grid-group", inputs: ["column", "hideNonEditable", "dict", "formGroup", "horizontal", "decimalPart"], outputs: ["controlValueChange"] }, { kind: "component", type: i4.PropertyGridItemComponent, selector: "teta-property-grid-item", inputs: ["column", "hideNonEditable", "dict", "decimalPart", "formGroup", "horizontal"], outputs: ["controlValueChange"] }] });
58
+ PropertyGridComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: PropertyGridComponent, deps: [{ token: i1.ControlContainer, optional: true }], target: i0.ɵɵFactoryTarget.Component });
59
+ PropertyGridComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: PropertyGridComponent, selector: "teta-property-grid", inputs: { hideNonEditable: "hideNonEditable", columns: "columns", dict: "dict", item: "item", horizontal: "horizontal", decimalPart: "decimalPart" }, outputs: { controlValueChange: "controlValueChange" }, host: { properties: { "class.form-container": "this.formClass" } }, queries: [{ propertyName: "itemTemplates", predicate: PropertyGridItemDescriptionDirective }], ngImport: i0, template: "<ng-container *ngIf=\"columns?.length\">\n <ng-container *ngFor=\"let column of columns; trackBy: trackColumns\">\n <teta-property-grid-item *ngIf=\"column.columns?.length < 1 && (column.editable || !hideNonEditable)\"\n [dict]=\"dict\"\n [column]=\"column\"\n [item]=\"item\"\n [id]=\"column.name\"\n [itemTemplates]=\"itemTemplates\"\n [decimalPart]=\"decimalPart\"\n [formGroup]=\"formGroup\"\n [horizontal]=\"horizontal\"\n (controlValueChange)=\"onControlValueChange($event)\"\n [hideNonEditable]=\"hideNonEditable\"></teta-property-grid-item>\n <teta-property-grid-group *ngIf=\"column.columns?.length > 0 && (column.editable || !hideNonEditable)\"\n [id]=\"column.name\"\n [dict]=\"dict\"\n [column]=\"column\"\n [item]=\"item\"\n [itemTemplates]=\"itemTemplates\"\n [decimalPart]=\"decimalPart\"\n [formGroup]=\"formGroup\"\n [horizontal]=\"horizontal\"\n (controlValueChange)=\"onControlValueChange($event)\"\n [hideNonEditable]=\"hideNonEditable\"></teta-property-grid-group>\n </ng-container>\n</ng-container>\n", styles: [":host{padding:12px 8px}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: i3.PropertyGridGroupComponent, selector: "teta-property-grid-group", inputs: ["column", "hideNonEditable", "dict", "item", "horizontal", "decimalPart", "itemTemplates"], outputs: ["controlValueChange"] }, { kind: "component", type: i4.PropertyGridItemComponent, selector: "teta-property-grid-item", inputs: ["column", "hideNonEditable", "dict", "decimalPart", "item", "itemTemplates", "horizontal"], outputs: ["controlValueChange"] }], viewProviders: [FormsUtil.formProvider] });
44
60
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: PropertyGridComponent, decorators: [{
45
61
  type: Component,
46
- args: [{ selector: 'teta-property-grid', template: "<ng-container *ngIf=\"columns?.length\">\n <ng-container *ngFor=\"let column of columns; trackBy: trackColumns\">\n <teta-property-grid-item *ngIf=\"column.columns?.length < 1 && (column.editable || !hideNonEditable)\"\n [dict]=\"dict\"\n [column]=\"column\"\n [id]=\"column.name\"\n [decimalPart]=\"decimalPart\"\n [formGroup]=\"formGroup\"\n [horizontal]=\"horizontal\"\n (controlValueChange)=\"onControlValueChange($event)\"\n [hideNonEditable]=\"hideNonEditable\"></teta-property-grid-item>\n <teta-property-grid-group *ngIf=\"column.columns?.length > 0 && (column.editable || !hideNonEditable)\"\n [id]=\"column.name\"\n [dict]=\"dict\"\n [column]=\"column\"\n [decimalPart]=\"decimalPart\"\n [formGroup]=\"formGroup\"\n [horizontal]=\"horizontal\"\n (controlValueChange)=\"onControlValueChange($event)\"\n [hideNonEditable]=\"hideNonEditable\"></teta-property-grid-group>\n </ng-container>\n</ng-container>\n", styles: [":host{padding:12px 8px}\n"] }]
47
- }], ctorParameters: function () { return []; }, propDecorators: { formClass: [{
62
+ args: [{ selector: 'teta-property-grid', viewProviders: [FormsUtil.formProvider], template: "<ng-container *ngIf=\"columns?.length\">\n <ng-container *ngFor=\"let column of columns; trackBy: trackColumns\">\n <teta-property-grid-item *ngIf=\"column.columns?.length < 1 && (column.editable || !hideNonEditable)\"\n [dict]=\"dict\"\n [column]=\"column\"\n [item]=\"item\"\n [id]=\"column.name\"\n [itemTemplates]=\"itemTemplates\"\n [decimalPart]=\"decimalPart\"\n [formGroup]=\"formGroup\"\n [horizontal]=\"horizontal\"\n (controlValueChange)=\"onControlValueChange($event)\"\n [hideNonEditable]=\"hideNonEditable\"></teta-property-grid-item>\n <teta-property-grid-group *ngIf=\"column.columns?.length > 0 && (column.editable || !hideNonEditable)\"\n [id]=\"column.name\"\n [dict]=\"dict\"\n [column]=\"column\"\n [item]=\"item\"\n [itemTemplates]=\"itemTemplates\"\n [decimalPart]=\"decimalPart\"\n [formGroup]=\"formGroup\"\n [horizontal]=\"horizontal\"\n (controlValueChange)=\"onControlValueChange($event)\"\n [hideNonEditable]=\"hideNonEditable\"></teta-property-grid-group>\n </ng-container>\n</ng-container>\n", styles: [":host{padding:12px 8px}\n"] }]
63
+ }], ctorParameters: function () { return [{ type: i1.ControlContainer, decorators: [{
64
+ type: Optional
65
+ }] }]; }, propDecorators: { formClass: [{
48
66
  type: HostBinding,
49
67
  args: ['class.form-container']
68
+ }], itemTemplates: [{
69
+ type: ContentChildren,
70
+ args: [PropertyGridItemDescriptionDirective]
50
71
  }], hideNonEditable: [{
51
72
  type: Input
52
73
  }], columns: [{
53
74
  type: Input
54
75
  }], dict: [{
55
76
  type: Input
56
- }], formGroup: [{
77
+ }], item: [{
57
78
  type: Input
58
79
  }], horizontal: [{
59
80
  type: Input
@@ -62,4 +83,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImpor
62
83
  }], controlValueChange: [{
63
84
  type: Output
64
85
  }] } });
65
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvcGVydHktZ3JpZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50L3Byb3BlcnR5LWdyaWQvcHJvcGVydHktZ3JpZC9wcm9wZXJ0eS1ncmlkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnQvcHJvcGVydHktZ3JpZC9wcm9wZXJ0eS1ncmlkL3Byb3BlcnR5LWdyaWQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxZQUFZLEVBQ1osV0FBVyxFQUNYLEtBQUssRUFHTCxNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUM7Ozs7OztBQVd2QixNQUFNLE9BQU8scUJBQXFCO0lBY2hDO1FBYnFDLGNBQVMsR0FBRyxJQUFJLENBQUM7UUFTNUMsdUJBQWtCLEdBQUcsSUFBSSxZQUFZLEVBQWdCLENBQUM7UUFFeEQsV0FBTSxHQUFHLElBQUksQ0FBQztJQUd0QixDQUFDO0lBRUQsb0JBQW9CLENBQUMsS0FBbUI7UUFDdEMsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxVQUFVLEtBQUssS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3pFLElBQUksUUFBUSxFQUFFLE1BQU0sRUFBRTtZQUNwQixRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7Z0JBQ3hCLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsV0FBVyxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUN0RCxJQUFJLEtBQUssRUFBRTtvQkFDVCxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7b0JBQ3RELElBQUksU0FBUyxJQUFJLFNBQVMsQ0FBQyxRQUFRLEtBQUssS0FBSyxDQUFDLEVBQUUsRUFBRTt3QkFDaEQsTUFBTSxNQUFNLEdBQUcsRUFBRSxDQUFDO3dCQUNsQixNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQzt3QkFDekIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUM7cUJBQ25DO2lCQUNGO1lBQ0gsQ0FBQyxDQUFDLENBQUM7U0FDSjtRQUNELElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDdEMsQ0FBQztJQUVELFFBQVE7SUFDUixDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO0lBQ3RCLENBQUM7SUFFRCxZQUFZLENBQUMsS0FBYSxFQUFFLE1BQW1CO1FBQzdDLE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQztJQUNyQixDQUFDO0lBRU8sWUFBWSxDQUFDLEtBQVUsRUFBRSxJQUFZO1FBQzNDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssS0FBSyxDQUFDLENBQUM7SUFDdEQsQ0FBQzs7a0hBaERVLHFCQUFxQjtzR0FBckIscUJBQXFCLHFWQ25CbEMsbzJDQXNCQTsyRkRIYSxxQkFBcUI7a0JBTGpDLFNBQVM7K0JBQ0Usb0JBQW9COzBFQUtPLFNBQVM7c0JBQTdDLFdBQVc7dUJBQUMsc0JBQXNCO2dCQUUxQixlQUFlO3NCQUF2QixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBRUksa0JBQWtCO3NCQUEzQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIEhvc3RCaW5kaW5nLFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIE91dHB1dCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1RhYmxlQ29sdW1ufSBmcm9tICcuLi8uLi90YWJsZS9jb250cmFjdC90YWJsZS1jb2x1bW4nO1xuaW1wb3J0IHtJRGljdGlvbmFyeX0gZnJvbSAnLi4vLi4vLi4vY29tbW9uL2NvbnRyYWN0L2ktZGljdGlvbmFyeSc7XG5pbXBvcnQge0lJZE5hbWV9IGZyb20gJy4uLy4uLy4uL2NvbW1vbi9jb250cmFjdC9pLWlkLW5hbWUnO1xuaW1wb3J0IHtVbnR5cGVkRm9ybUdyb3VwfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3RldGEtcHJvcGVydHktZ3JpZCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9wcm9wZXJ0eS1ncmlkLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vcHJvcGVydHktZ3JpZC5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBQcm9wZXJ0eUdyaWRDb21wb25lbnQ8VD4gaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIEBIb3N0QmluZGluZygnY2xhc3MuZm9ybS1jb250YWluZXInKSBmb3JtQ2xhc3MgPSB0cnVlO1xuXG4gIEBJbnB1dCgpIGhpZGVOb25FZGl0YWJsZTogYm9vbGVhbjtcbiAgQElucHV0KCkgY29sdW1uczogVGFibGVDb2x1bW5bXTtcbiAgQElucHV0KCkgZGljdDogSURpY3Rpb25hcnk8SUlkTmFtZTxhbnk+W10+O1xuICBASW5wdXQoKSBmb3JtR3JvdXA6IFVudHlwZWRGb3JtR3JvdXA7XG4gIEBJbnB1dCgpIGhvcml6b250YWw6IGJvb2xlYW47XG4gIEBJbnB1dCgpIGRlY2ltYWxQYXJ0OiBudW1iZXI7XG5cbiAgQE91dHB1dCgpIGNvbnRyb2xWYWx1ZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8SUlkTmFtZTxhbnk+PigpO1xuXG4gIHByaXZhdGUgX2FsaXZlID0gdHJ1ZTtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgfVxuXG4gIG9uQ29udHJvbFZhbHVlQ2hhbmdlKGV2ZW50OiBJSWROYW1lPGFueT4pIHtcbiAgICBjb25zdCBhZmZlY3RlZCA9IHRoaXMuY29sdW1ucy5maWx0ZXIoKF8pID0+IF8ucGFyZW50TmFtZSA9PT0gZXZlbnQubmFtZSk7XG4gICAgaWYgKGFmZmVjdGVkPy5sZW5ndGgpIHtcbiAgICAgIGFmZmVjdGVkLmZvckVhY2goKGl0ZW0pID0+IHtcbiAgICAgICAgY29uc3QgdmFsdWUgPSB0aGlzLmZvcm1Hcm91cC5nZXRSYXdWYWx1ZSgpW2l0ZW0ubmFtZV07XG4gICAgICAgIGlmICh2YWx1ZSkge1xuICAgICAgICAgIGNvbnN0IGRpY3RWYWx1ZSA9IHRoaXMuZ2V0RGljdFZhbHVlKHZhbHVlLCBpdGVtLm5hbWUpO1xuICAgICAgICAgIGlmIChkaWN0VmFsdWUgJiYgZGljdFZhbHVlLnBhcmVudElkICE9PSBldmVudC5pZCkge1xuICAgICAgICAgICAgY29uc3QgbmV3T2JqID0ge307XG4gICAgICAgICAgICBuZXdPYmpbaXRlbS5uYW1lXSA9IG51bGw7XG4gICAgICAgICAgICB0aGlzLmZvcm1Hcm91cC5wYXRjaFZhbHVlKG5ld09iaik7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gICAgdGhpcy5jb250cm9sVmFsdWVDaGFuZ2UuZW1pdChldmVudCk7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuX2FsaXZlID0gZmFsc2U7XG4gIH1cblxuICB0cmFja0NvbHVtbnMoaW5kZXg6IG51bWJlciwgY29sdW1uOiBUYWJsZUNvbHVtbik6IGFueSB7XG4gICAgcmV0dXJuIGNvbHVtbi5uYW1lO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXREaWN0VmFsdWUodmFsdWU6IGFueSwgbmFtZTogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHRoaXMuZGljdFtuYW1lXT8uZmluZCgoXykgPT4gXy5pZCA9PT0gdmFsdWUpO1xuICB9XG59XG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwiY29sdW1ucz8ubGVuZ3RoXCI+XG4gIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGNvbHVtbiBvZiBjb2x1bW5zOyB0cmFja0J5OiB0cmFja0NvbHVtbnNcIj5cbiAgICA8dGV0YS1wcm9wZXJ0eS1ncmlkLWl0ZW0gKm5nSWY9XCJjb2x1bW4uY29sdW1ucz8ubGVuZ3RoIDwgMSAmJiAoY29sdW1uLmVkaXRhYmxlIHx8ICFoaWRlTm9uRWRpdGFibGUpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2RpY3RdPVwiZGljdFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjb2x1bW5dPVwiY29sdW1uXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2lkXT1cImNvbHVtbi5uYW1lXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2RlY2ltYWxQYXJ0XT1cImRlY2ltYWxQYXJ0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Zvcm1Hcm91cF09XCJmb3JtR3JvdXBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaG9yaXpvbnRhbF09XCJob3Jpem9udGFsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNvbnRyb2xWYWx1ZUNoYW5nZSk9XCJvbkNvbnRyb2xWYWx1ZUNoYW5nZSgkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2hpZGVOb25FZGl0YWJsZV09XCJoaWRlTm9uRWRpdGFibGVcIj48L3RldGEtcHJvcGVydHktZ3JpZC1pdGVtPlxuICAgIDx0ZXRhLXByb3BlcnR5LWdyaWQtZ3JvdXAgKm5nSWY9XCJjb2x1bW4uY29sdW1ucz8ubGVuZ3RoID4gMCAmJiAoY29sdW1uLmVkaXRhYmxlIHx8ICFoaWRlTm9uRWRpdGFibGUpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtpZF09XCJjb2x1bW4ubmFtZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGljdF09XCJkaWN0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjb2x1bW5dPVwiY29sdW1uXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkZWNpbWFsUGFydF09XCJkZWNpbWFsUGFydFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZm9ybUdyb3VwXT1cImZvcm1Hcm91cFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaG9yaXpvbnRhbF09XCJob3Jpem9udGFsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjb250cm9sVmFsdWVDaGFuZ2UpPVwib25Db250cm9sVmFsdWVDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaGlkZU5vbkVkaXRhYmxlXT1cImhpZGVOb25FZGl0YWJsZVwiPjwvdGV0YS1wcm9wZXJ0eS1ncmlkLWdyb3VwPlxuICA8L25nLWNvbnRhaW5lcj5cbjwvbmctY29udGFpbmVyPlxuIl19
86
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvcGVydHktZ3JpZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50L3Byb3BlcnR5LWdyaWQvcHJvcGVydHktZ3JpZC9wcm9wZXJ0eS1ncmlkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnQvcHJvcGVydHktZ3JpZC9wcm9wZXJ0eS1ncmlkL3Byb3BlcnR5LWdyaWQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLFNBQVMsRUFBRSxlQUFlLEVBQzFCLFlBQVksRUFDWixXQUFXLEVBQ1gsS0FBSyxFQUVHLFFBQVEsRUFDaEIsTUFBTSxHQUNQLE1BQU0sZUFBZSxDQUFDO0FBSXZCLE9BQU8sRUFBbUIsU0FBUyxFQUFFLE1BQU0sRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ25FLE9BQU8sRUFBQyxvQ0FBb0MsRUFBQyxNQUFNLDRDQUE0QyxDQUFDO0FBQ2hHLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQzs7Ozs7O0FBUW5ELE1BQU0sT0FBTyxxQkFBcUI7SUF3QmhDLFlBQWdDLFVBQTRCO1FBQTVCLGVBQVUsR0FBVixVQUFVLENBQWtCO1FBdkJ2QixjQUFTLEdBQUcsSUFBSSxDQUFDO1FBUzVDLHVCQUFrQixHQUFHLElBQUksWUFBWSxFQUFnQixDQUFDO1FBRXhELFdBQU0sR0FBRyxJQUFJLENBQUM7UUFhcEIsOEJBQThCO0lBQ2hDLENBQUM7SUFaRCxJQUFJLFNBQVM7UUFDWCxJQUFJLElBQUksQ0FBQyxVQUFVLFlBQVksU0FBUyxFQUFFO1lBQ3hDLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQztTQUN4QjtRQUNELElBQUksSUFBSSxDQUFDLFVBQVUsWUFBWSxNQUFNLEVBQUU7WUFDckMsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQztTQUM3QjtRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQU1ELG9CQUFvQixDQUFDLEtBQW1CO1FBQ3RDLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsVUFBVSxLQUFLLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN6RSxJQUFJLFFBQVEsRUFBRSxNQUFNLEVBQUU7WUFDcEIsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO2dCQUN4QixNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLFdBQVcsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDdEQsSUFBSSxLQUFLLEVBQUU7b0JBQ1QsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO29CQUN0RCxJQUFJLFNBQVMsSUFBSSxTQUFTLENBQUMsUUFBUSxLQUFLLEtBQUssQ0FBQyxFQUFFLEVBQUU7d0JBQ2hELE1BQU0sTUFBTSxHQUFHLEVBQUUsQ0FBQzt3QkFDbEIsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUM7d0JBQ3pCLElBQUksQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDO3FCQUNuQztpQkFDRjtZQUNILENBQUMsQ0FBQyxDQUFDO1NBQ0o7UUFDRCxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFRCxRQUFRO0lBQ1IsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztJQUN0QixDQUFDO0lBRUQsWUFBWSxDQUFDLEtBQWEsRUFBRSxNQUFtQjtRQUM3QyxPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUM7SUFDckIsQ0FBQztJQUVPLFlBQVksQ0FBQyxLQUFVLEVBQUUsSUFBWTtRQUMzQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxLQUFLLEtBQUssQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFFRCxlQUFlO0lBQ2YsQ0FBQzs7a0hBOURVLHFCQUFxQjtzR0FBckIscUJBQXFCLHlXQUVmLG9DQUFvQyw2QkN6QnZELGtrREEwQkEsb2lDRExpQixDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUM7MkZBRTVCLHFCQUFxQjtrQkFOakMsU0FBUzsrQkFDRSxvQkFBb0IsaUJBR2YsQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUFDOzswQkEwQjFCLFFBQVE7NENBdkJnQixTQUFTO3NCQUE3QyxXQUFXO3VCQUFDLHNCQUFzQjtnQkFDb0IsYUFBYTtzQkFBbkUsZUFBZTt1QkFBQyxvQ0FBb0M7Z0JBQzVDLGVBQWU7c0JBQXZCLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUVJLGtCQUFrQjtzQkFBM0IsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENvbXBvbmVudCwgQ29udGVudENoaWxkcmVuLFxuICBFdmVudEVtaXR0ZXIsXG4gIEhvc3RCaW5kaW5nLFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsIE9wdGlvbmFsLFxuICBPdXRwdXQsIFF1ZXJ5TGlzdCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1RhYmxlQ29sdW1ufSBmcm9tICcuLi8uLi90YWJsZS9jb250cmFjdC90YWJsZS1jb2x1bW4nO1xuaW1wb3J0IHtJRGljdGlvbmFyeX0gZnJvbSAnLi4vLi4vLi4vY29tbW9uL2NvbnRyYWN0L2ktZGljdGlvbmFyeSc7XG5pbXBvcnQge0lJZE5hbWV9IGZyb20gJy4uLy4uLy4uL2NvbW1vbi9jb250cmFjdC9pLWlkLW5hbWUnO1xuaW1wb3J0IHtDb250cm9sQ29udGFpbmVyLCBGb3JtR3JvdXAsIE5nRm9ybX0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtQcm9wZXJ0eUdyaWRJdGVtRGVzY3JpcHRpb25EaXJlY3RpdmV9IGZyb20gXCIuL3Byb3BlcnR5LWdyaWQtaXRlbS1kZXNjcmlwdGlvbi5kaXJlY3RpdmVcIjtcbmltcG9ydCB7Rm9ybXNVdGlsfSBmcm9tIFwiLi4vLi4vLi4vdXRpbC9mb3Jtcy11dGlsXCI7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3RldGEtcHJvcGVydHktZ3JpZCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9wcm9wZXJ0eS1ncmlkLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vcHJvcGVydHktZ3JpZC5jb21wb25lbnQuc2NzcyddLFxuICB2aWV3UHJvdmlkZXJzOiBbRm9ybXNVdGlsLmZvcm1Qcm92aWRlcl0sXG59KVxuZXhwb3J0IGNsYXNzIFByb3BlcnR5R3JpZENvbXBvbmVudDxUPiBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95LCBBZnRlclZpZXdJbml0IHtcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5mb3JtLWNvbnRhaW5lcicpIGZvcm1DbGFzcyA9IHRydWU7XG4gIEBDb250ZW50Q2hpbGRyZW4oUHJvcGVydHlHcmlkSXRlbURlc2NyaXB0aW9uRGlyZWN0aXZlKSBpdGVtVGVtcGxhdGVzOiBRdWVyeUxpc3Q8UHJvcGVydHlHcmlkSXRlbURlc2NyaXB0aW9uRGlyZWN0aXZlPjtcbiAgQElucHV0KCkgaGlkZU5vbkVkaXRhYmxlOiBib29sZWFuO1xuICBASW5wdXQoKSBjb2x1bW5zOiBUYWJsZUNvbHVtbltdO1xuICBASW5wdXQoKSBkaWN0OiBJRGljdGlvbmFyeTxJSWROYW1lPGFueT5bXT47XG4gIEBJbnB1dCgpIGl0ZW06IFQ7XG4gIEBJbnB1dCgpIGhvcml6b250YWw6IGJvb2xlYW47XG4gIEBJbnB1dCgpIGRlY2ltYWxQYXJ0OiBudW1iZXI7XG5cbiAgQE91dHB1dCgpIGNvbnRyb2xWYWx1ZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8SUlkTmFtZTxhbnk+PigpO1xuXG4gIHByaXZhdGUgX2FsaXZlID0gdHJ1ZTtcblxuICBnZXQgZm9ybUdyb3VwKCk6IEZvcm1Hcm91cCB7XG4gICAgaWYgKHRoaXMuX2Zvcm1Hcm91cCBpbnN0YW5jZW9mIEZvcm1Hcm91cCkge1xuICAgICAgcmV0dXJuIHRoaXMuX2Zvcm1Hcm91cDtcbiAgICB9XG4gICAgaWYgKHRoaXMuX2Zvcm1Hcm91cCBpbnN0YW5jZW9mIE5nRm9ybSkge1xuICAgICAgcmV0dXJuIHRoaXMuX2Zvcm1Hcm91cC5mb3JtO1xuICAgIH1cbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKEBPcHRpb25hbCgpIHByaXZhdGUgX2Zvcm1Hcm91cDogQ29udHJvbENvbnRhaW5lcikge1xuICAgIC8vIGNvbnNvbGUubG9nKHRoaXMuZm9ybUdyb3VwKVxuICB9XG5cbiAgb25Db250cm9sVmFsdWVDaGFuZ2UoZXZlbnQ6IElJZE5hbWU8YW55Pikge1xuICAgIGNvbnN0IGFmZmVjdGVkID0gdGhpcy5jb2x1bW5zLmZpbHRlcigoXykgPT4gXy5wYXJlbnROYW1lID09PSBldmVudC5uYW1lKTtcbiAgICBpZiAoYWZmZWN0ZWQ/Lmxlbmd0aCkge1xuICAgICAgYWZmZWN0ZWQuZm9yRWFjaCgoaXRlbSkgPT4ge1xuICAgICAgICBjb25zdCB2YWx1ZSA9IHRoaXMuZm9ybUdyb3VwLmdldFJhd1ZhbHVlKClbaXRlbS5uYW1lXTtcbiAgICAgICAgaWYgKHZhbHVlKSB7XG4gICAgICAgICAgY29uc3QgZGljdFZhbHVlID0gdGhpcy5nZXREaWN0VmFsdWUodmFsdWUsIGl0ZW0ubmFtZSk7XG4gICAgICAgICAgaWYgKGRpY3RWYWx1ZSAmJiBkaWN0VmFsdWUucGFyZW50SWQgIT09IGV2ZW50LmlkKSB7XG4gICAgICAgICAgICBjb25zdCBuZXdPYmogPSB7fTtcbiAgICAgICAgICAgIG5ld09ialtpdGVtLm5hbWVdID0gbnVsbDtcbiAgICAgICAgICAgIHRoaXMuZm9ybUdyb3VwLnBhdGNoVmFsdWUobmV3T2JqKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cbiAgICB0aGlzLmNvbnRyb2xWYWx1ZUNoYW5nZS5lbWl0KGV2ZW50KTtcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5fYWxpdmUgPSBmYWxzZTtcbiAgfVxuXG4gIHRyYWNrQ29sdW1ucyhpbmRleDogbnVtYmVyLCBjb2x1bW46IFRhYmxlQ29sdW1uKTogYW55IHtcbiAgICByZXR1cm4gY29sdW1uLm5hbWU7XG4gIH1cblxuICBwcml2YXRlIGdldERpY3RWYWx1ZSh2YWx1ZTogYW55LCBuYW1lOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gdGhpcy5kaWN0W25hbWVdPy5maW5kKChfKSA9PiBfLmlkID09PSB2YWx1ZSk7XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gIH1cbn1cbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCJjb2x1bW5zPy5sZW5ndGhcIj5cbiAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgY29sdW1uIG9mIGNvbHVtbnM7IHRyYWNrQnk6IHRyYWNrQ29sdW1uc1wiPlxuICAgIDx0ZXRhLXByb3BlcnR5LWdyaWQtaXRlbSAqbmdJZj1cImNvbHVtbi5jb2x1bW5zPy5sZW5ndGggPCAxICYmIChjb2x1bW4uZWRpdGFibGUgfHwgIWhpZGVOb25FZGl0YWJsZSlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGljdF09XCJkaWN0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NvbHVtbl09XCJjb2x1bW5cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaXRlbV09XCJpdGVtXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2lkXT1cImNvbHVtbi5uYW1lXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2l0ZW1UZW1wbGF0ZXNdPVwiaXRlbVRlbXBsYXRlc1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkZWNpbWFsUGFydF09XCJkZWNpbWFsUGFydFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtmb3JtR3JvdXBdPVwiZm9ybUdyb3VwXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2hvcml6b250YWxdPVwiaG9yaXpvbnRhbFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjb250cm9sVmFsdWVDaGFuZ2UpPVwib25Db250cm9sVmFsdWVDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtoaWRlTm9uRWRpdGFibGVdPVwiaGlkZU5vbkVkaXRhYmxlXCI+PC90ZXRhLXByb3BlcnR5LWdyaWQtaXRlbT5cbiAgICA8dGV0YS1wcm9wZXJ0eS1ncmlkLWdyb3VwICpuZ0lmPVwiY29sdW1uLmNvbHVtbnM/Lmxlbmd0aCA+IDAgJiYgKGNvbHVtbi5lZGl0YWJsZSB8fCAhaGlkZU5vbkVkaXRhYmxlKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaWRdPVwiY29sdW1uLm5hbWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2RpY3RdPVwiZGljdFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY29sdW1uXT1cImNvbHVtblwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaXRlbV09XCJpdGVtXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtpdGVtVGVtcGxhdGVzXT1cIml0ZW1UZW1wbGF0ZXNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2RlY2ltYWxQYXJ0XT1cImRlY2ltYWxQYXJ0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtmb3JtR3JvdXBdPVwiZm9ybUdyb3VwXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtob3Jpem9udGFsXT1cImhvcml6b250YWxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNvbnRyb2xWYWx1ZUNoYW5nZSk9XCJvbkNvbnRyb2xWYWx1ZUNoYW5nZSgkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtoaWRlTm9uRWRpdGFibGVdPVwiaGlkZU5vbkVkaXRhYmxlXCI+PC90ZXRhLXByb3BlcnR5LWdyaWQtZ3JvdXA+XG4gIDwvbmctY29udGFpbmVyPlxuPC9uZy1jb250YWluZXI+XG4iXX0=
@@ -1,10 +1,6 @@
1
1
  import { NgModule } from '@angular/core';
2
2
  import { CommonModule } from '@angular/common';
3
3
  import { PropertyGridComponent } from './property-grid/property-grid.component';
4
- import { NumericItemDefaultComponent } from './default/numeric-item-default/numeric-item-default.component';
5
- import { DateItemDefaultComponent } from './default/date-item-default/date-item-default.component';
6
- import { ListItemDefaultComponent } from './default/list-item-default/list-item-default.component';
7
- import { StringItemDefaultComponent } from './default/string-item-default/string-item-default.component';
8
4
  import { FormsModule, ReactiveFormsModule } from '@angular/forms';
9
5
  import { NumberPipeModule } from '../../pipe/number-pipe/number-pipe.module';
10
6
  import { DatePickerModule } from '../date-picker/date-picker.module';
@@ -17,17 +13,15 @@ import { ToggleModule } from '../toggle/toggle.module';
17
13
  import { TRANSLOCO_SCOPE, TranslocoModule } from '@ngneat/transloco';
18
14
  import { HintModule } from '../../directive/hint/hint.module';
19
15
  import { ExpandCardModule } from "../expand-card/expand-card.module";
16
+ import { PropertyGridItemDescriptionDirective } from './property-grid/property-grid-item-description.directive';
20
17
  import * as i0 from "@angular/core";
21
18
  export class PropertyGridModule {
22
19
  }
23
20
  PropertyGridModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: PropertyGridModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
24
21
  PropertyGridModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.0.2", ngImport: i0, type: PropertyGridModule, declarations: [PropertyGridComponent,
25
- NumericItemDefaultComponent,
26
- DateItemDefaultComponent,
27
- ListItemDefaultComponent,
28
- StringItemDefaultComponent,
29
22
  PropertyGridGroupComponent,
30
- PropertyGridItemComponent], imports: [CommonModule,
23
+ PropertyGridItemComponent,
24
+ PropertyGridItemDescriptionDirective], imports: [CommonModule,
31
25
  FormsModule,
32
26
  NumberPipeModule,
33
27
  DatePickerModule,
@@ -38,7 +32,7 @@ PropertyGridModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", vers
38
32
  ReactiveFormsModule,
39
33
  TranslocoModule,
40
34
  HintModule,
41
- ExpandCardModule], exports: [PropertyGridComponent] });
35
+ ExpandCardModule], exports: [PropertyGridComponent, PropertyGridItemDescriptionDirective] });
42
36
  PropertyGridModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: PropertyGridModule, providers: [
43
37
  {
44
38
  provide: TRANSLOCO_SCOPE,
@@ -62,14 +56,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImpor
62
56
  args: [{
63
57
  declarations: [
64
58
  PropertyGridComponent,
65
- NumericItemDefaultComponent,
66
- DateItemDefaultComponent,
67
- ListItemDefaultComponent,
68
- StringItemDefaultComponent,
69
59
  PropertyGridGroupComponent,
70
60
  PropertyGridItemComponent,
61
+ PropertyGridItemDescriptionDirective,
71
62
  ],
72
- exports: [PropertyGridComponent],
63
+ exports: [PropertyGridComponent, PropertyGridItemDescriptionDirective],
73
64
  imports: [
74
65
  CommonModule,
75
66
  FormsModule,
@@ -93,4 +84,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImpor
93
84
  ],
94
85
  }]
95
86
  }] });
96
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvcGVydHktZ3JpZC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50L3Byb3BlcnR5LWdyaWQvcHJvcGVydHktZ3JpZC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN2QyxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDN0MsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0seUNBQXlDLENBQUM7QUFDOUUsT0FBTyxFQUFDLDJCQUEyQixFQUFDLE1BQU0sK0RBQStELENBQUM7QUFDMUcsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0seURBQXlELENBQUM7QUFDakcsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0seURBQXlELENBQUM7QUFDakcsT0FBTyxFQUFDLDBCQUEwQixFQUFDLE1BQU0sNkRBQTZELENBQUM7QUFDdkcsT0FBTyxFQUFDLFdBQVcsRUFBRSxtQkFBbUIsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ2hFLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLDJDQUEyQyxDQUFDO0FBQzNFLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLG1DQUFtQyxDQUFDO0FBQ25FLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUNyRCxPQUFPLEVBQUMsMEJBQTBCLEVBQUMsTUFBTSxtRUFBbUUsQ0FBQztBQUM3RyxPQUFPLEVBQUMseUJBQXlCLEVBQUMsTUFBTSxpRUFBaUUsQ0FBQztBQUMxRyxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxnREFBZ0QsQ0FBQztBQUNoRixPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sdUJBQXVCLENBQUM7QUFDbEQsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQ3JELE9BQU8sRUFBQyxlQUFlLEVBQUUsZUFBZSxFQUFDLE1BQU0sbUJBQW1CLENBQUM7QUFDbkUsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBQzVELE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLG1DQUFtQyxDQUFDOztBQW1DbkUsTUFBTSxPQUFPLGtCQUFrQjs7K0dBQWxCLGtCQUFrQjtnSEFBbEIsa0JBQWtCLGlCQS9CM0IscUJBQXFCO1FBQ3JCLDJCQUEyQjtRQUMzQix3QkFBd0I7UUFDeEIsd0JBQXdCO1FBQ3hCLDBCQUEwQjtRQUMxQiwwQkFBMEI7UUFDMUIseUJBQXlCLGFBSXJCLFlBQVk7UUFDWixXQUFXO1FBQ1gsZ0JBQWdCO1FBQ2hCLGdCQUFnQjtRQUNoQixZQUFZO1FBQ1osZ0JBQWdCO1FBQ2hCLFdBQVc7UUFDWCxZQUFZO1FBQ1osbUJBQW1CO1FBQ25CLGVBQWU7UUFDZixVQUFVO1FBQ1YsZ0JBQWdCLGFBYloscUJBQXFCO2dIQXVCcEIsa0JBQWtCLGFBUmxCO1FBQ1Q7WUFDRSxPQUFPLEVBQUUsZUFBZTtZQUN4QixRQUFRLEVBQUUsRUFBQyxLQUFLLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUM7WUFDNUMsS0FBSyxFQUFFLElBQUk7U0FDWjtLQUNGLFlBbkJLLFlBQVk7UUFDWixXQUFXO1FBQ1gsZ0JBQWdCO1FBQ2hCLGdCQUFnQjtRQUNoQixZQUFZO1FBQ1osZ0JBQWdCO1FBQ2hCLFdBQVc7UUFDWCxZQUFZO1FBQ1osbUJBQW1CO1FBQ25CLGVBQWU7UUFDZixVQUFVO1FBQ1YsZ0JBQWdCOzJGQVVYLGtCQUFrQjtrQkFqQzlCLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFO3dCQUNaLHFCQUFxQjt3QkFDckIsMkJBQTJCO3dCQUMzQix3QkFBd0I7d0JBQ3hCLHdCQUF3Qjt3QkFDeEIsMEJBQTBCO3dCQUMxQiwwQkFBMEI7d0JBQzFCLHlCQUF5QjtxQkFDMUI7b0JBQ0QsT0FBTyxFQUFFLENBQUMscUJBQXFCLENBQUM7b0JBQzlCLE9BQU8sRUFBRTt3QkFDTCxZQUFZO3dCQUNaLFdBQVc7d0JBQ1gsZ0JBQWdCO3dCQUNoQixnQkFBZ0I7d0JBQ2hCLFlBQVk7d0JBQ1osZ0JBQWdCO3dCQUNoQixXQUFXO3dCQUNYLFlBQVk7d0JBQ1osbUJBQW1CO3dCQUNuQixlQUFlO3dCQUNmLFVBQVU7d0JBQ1YsZ0JBQWdCO3FCQUNuQjtvQkFDSCxTQUFTLEVBQUU7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLGVBQWU7NEJBQ3hCLFFBQVEsRUFBRSxFQUFDLEtBQUssRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBQzs0QkFDNUMsS0FBSyxFQUFFLElBQUk7eUJBQ1o7cUJBQ0Y7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge05nTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Q29tbW9uTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtQcm9wZXJ0eUdyaWRDb21wb25lbnR9IGZyb20gJy4vcHJvcGVydHktZ3JpZC9wcm9wZXJ0eS1ncmlkLmNvbXBvbmVudCc7XG5pbXBvcnQge051bWVyaWNJdGVtRGVmYXVsdENvbXBvbmVudH0gZnJvbSAnLi9kZWZhdWx0L251bWVyaWMtaXRlbS1kZWZhdWx0L251bWVyaWMtaXRlbS1kZWZhdWx0LmNvbXBvbmVudCc7XG5pbXBvcnQge0RhdGVJdGVtRGVmYXVsdENvbXBvbmVudH0gZnJvbSAnLi9kZWZhdWx0L2RhdGUtaXRlbS1kZWZhdWx0L2RhdGUtaXRlbS1kZWZhdWx0LmNvbXBvbmVudCc7XG5pbXBvcnQge0xpc3RJdGVtRGVmYXVsdENvbXBvbmVudH0gZnJvbSAnLi9kZWZhdWx0L2xpc3QtaXRlbS1kZWZhdWx0L2xpc3QtaXRlbS1kZWZhdWx0LmNvbXBvbmVudCc7XG5pbXBvcnQge1N0cmluZ0l0ZW1EZWZhdWx0Q29tcG9uZW50fSBmcm9tICcuL2RlZmF1bHQvc3RyaW5nLWl0ZW0tZGVmYXVsdC9zdHJpbmctaXRlbS1kZWZhdWx0LmNvbXBvbmVudCc7XG5pbXBvcnQge0Zvcm1zTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge051bWJlclBpcGVNb2R1bGV9IGZyb20gJy4uLy4uL3BpcGUvbnVtYmVyLXBpcGUvbnVtYmVyLXBpcGUubW9kdWxlJztcbmltcG9ydCB7RGF0ZVBpY2tlck1vZHVsZX0gZnJvbSAnLi4vZGF0ZS1waWNrZXIvZGF0ZS1waWNrZXIubW9kdWxlJztcbmltcG9ydCB7U2VsZWN0TW9kdWxlfSBmcm9tICcuLi9zZWxlY3Qvc2VsZWN0Lm1vZHVsZSc7XG5pbXBvcnQge1Byb3BlcnR5R3JpZEdyb3VwQ29tcG9uZW50fSBmcm9tICcuL3Byb3BlcnR5LWdyaWQvcHJvcGVydHktZ3JpZC1ncm91cC9wcm9wZXJ0eS1ncmlkLWdyb3VwLmNvbXBvbmVudCc7XG5pbXBvcnQge1Byb3BlcnR5R3JpZEl0ZW1Db21wb25lbnR9IGZyb20gJy4vcHJvcGVydHktZ3JpZC9wcm9wZXJ0eS1ncmlkLWl0ZW0vcHJvcGVydHktZ3JpZC1pdGVtLmNvbXBvbmVudCc7XG5pbXBvcnQge09ubHlOdW1iZXJNb2R1bGV9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9vbmx5LW51bWJlci9vbmx5LW51bWJlci5tb2R1bGUnO1xuaW1wb3J0IHtJbnB1dE1vZHVsZX0gZnJvbSAnLi4vaW5wdXQvaW5wdXQubW9kdWxlJztcbmltcG9ydCB7VG9nZ2xlTW9kdWxlfSBmcm9tICcuLi90b2dnbGUvdG9nZ2xlLm1vZHVsZSc7XG5pbXBvcnQge1RSQU5TTE9DT19TQ09QRSwgVHJhbnNsb2NvTW9kdWxlfSBmcm9tICdAbmduZWF0L3RyYW5zbG9jbyc7XG5pbXBvcnQge0hpbnRNb2R1bGV9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9oaW50L2hpbnQubW9kdWxlJztcbmltcG9ydCB7RXhwYW5kQ2FyZE1vZHVsZX0gZnJvbSBcIi4uL2V4cGFuZC1jYXJkL2V4cGFuZC1jYXJkLm1vZHVsZVwiO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBQcm9wZXJ0eUdyaWRDb21wb25lbnQsXG4gICAgTnVtZXJpY0l0ZW1EZWZhdWx0Q29tcG9uZW50LFxuICAgIERhdGVJdGVtRGVmYXVsdENvbXBvbmVudCxcbiAgICBMaXN0SXRlbURlZmF1bHRDb21wb25lbnQsXG4gICAgU3RyaW5nSXRlbURlZmF1bHRDb21wb25lbnQsXG4gICAgUHJvcGVydHlHcmlkR3JvdXBDb21wb25lbnQsXG4gICAgUHJvcGVydHlHcmlkSXRlbUNvbXBvbmVudCxcbiAgXSxcbiAgZXhwb3J0czogW1Byb3BlcnR5R3JpZENvbXBvbmVudF0sXG4gICAgaW1wb3J0czogW1xuICAgICAgICBDb21tb25Nb2R1bGUsXG4gICAgICAgIEZvcm1zTW9kdWxlLFxuICAgICAgICBOdW1iZXJQaXBlTW9kdWxlLFxuICAgICAgICBEYXRlUGlja2VyTW9kdWxlLFxuICAgICAgICBTZWxlY3RNb2R1bGUsXG4gICAgICAgIE9ubHlOdW1iZXJNb2R1bGUsXG4gICAgICAgIElucHV0TW9kdWxlLFxuICAgICAgICBUb2dnbGVNb2R1bGUsXG4gICAgICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgICAgIFRyYW5zbG9jb01vZHVsZSxcbiAgICAgICAgSGludE1vZHVsZSxcbiAgICAgICAgRXhwYW5kQ2FyZE1vZHVsZSxcbiAgICBdLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBUUkFOU0xPQ09fU0NPUEUsXG4gICAgICB1c2VWYWx1ZToge3Njb3BlOiAnZXJyb3JzJywgYWxpYXM6ICdlcnJvcnMnfSxcbiAgICAgIG11bHRpOiB0cnVlLFxuICAgIH0sXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIFByb3BlcnR5R3JpZE1vZHVsZSB7XG59XG4iXX0=
87
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvcGVydHktZ3JpZC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50L3Byb3BlcnR5LWdyaWQvcHJvcGVydHktZ3JpZC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN2QyxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDN0MsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0seUNBQXlDLENBQUM7QUFDOUUsT0FBTyxFQUFDLFdBQVcsRUFBRSxtQkFBbUIsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ2hFLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLDJDQUEyQyxDQUFDO0FBQzNFLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLG1DQUFtQyxDQUFDO0FBQ25FLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUNyRCxPQUFPLEVBQUMsMEJBQTBCLEVBQUMsTUFBTSxtRUFBbUUsQ0FBQztBQUM3RyxPQUFPLEVBQUMseUJBQXlCLEVBQUMsTUFBTSxpRUFBaUUsQ0FBQztBQUMxRyxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxnREFBZ0QsQ0FBQztBQUNoRixPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sdUJBQXVCLENBQUM7QUFDbEQsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQ3JELE9BQU8sRUFBQyxlQUFlLEVBQUUsZUFBZSxFQUFDLE1BQU0sbUJBQW1CLENBQUM7QUFDbkUsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBQzVELE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLG1DQUFtQyxDQUFDO0FBQ25FLE9BQU8sRUFBQyxvQ0FBb0MsRUFBQyxNQUFNLDBEQUEwRCxDQUFDOztBQWdDOUcsTUFBTSxPQUFPLGtCQUFrQjs7K0dBQWxCLGtCQUFrQjtnSEFBbEIsa0JBQWtCLGlCQTVCM0IscUJBQXFCO1FBQ3JCLDBCQUEwQjtRQUMxQix5QkFBeUI7UUFDekIsb0NBQW9DLGFBSXBDLFlBQVk7UUFDWixXQUFXO1FBQ1gsZ0JBQWdCO1FBQ2hCLGdCQUFnQjtRQUNoQixZQUFZO1FBQ1osZ0JBQWdCO1FBQ2hCLFdBQVc7UUFDWCxZQUFZO1FBQ1osbUJBQW1CO1FBQ25CLGVBQWU7UUFDZixVQUFVO1FBQ1YsZ0JBQWdCLGFBYlIscUJBQXFCLEVBQUUsb0NBQW9DO2dIQXVCMUQsa0JBQWtCLGFBUmxCO1FBQ1Q7WUFDRSxPQUFPLEVBQUUsZUFBZTtZQUN4QixRQUFRLEVBQUUsRUFBQyxLQUFLLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUM7WUFDNUMsS0FBSyxFQUFFLElBQUk7U0FDWjtLQUNGLFlBbkJDLFlBQVk7UUFDWixXQUFXO1FBQ1gsZ0JBQWdCO1FBQ2hCLGdCQUFnQjtRQUNoQixZQUFZO1FBQ1osZ0JBQWdCO1FBQ2hCLFdBQVc7UUFDWCxZQUFZO1FBQ1osbUJBQW1CO1FBQ25CLGVBQWU7UUFDZixVQUFVO1FBQ1YsZ0JBQWdCOzJGQVVQLGtCQUFrQjtrQkE5QjlCLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFO3dCQUNaLHFCQUFxQjt3QkFDckIsMEJBQTBCO3dCQUMxQix5QkFBeUI7d0JBQ3pCLG9DQUFvQztxQkFDckM7b0JBQ0QsT0FBTyxFQUFFLENBQUMscUJBQXFCLEVBQUUsb0NBQW9DLENBQUM7b0JBQ3RFLE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLFdBQVc7d0JBQ1gsZ0JBQWdCO3dCQUNoQixnQkFBZ0I7d0JBQ2hCLFlBQVk7d0JBQ1osZ0JBQWdCO3dCQUNoQixXQUFXO3dCQUNYLFlBQVk7d0JBQ1osbUJBQW1CO3dCQUNuQixlQUFlO3dCQUNmLFVBQVU7d0JBQ1YsZ0JBQWdCO3FCQUNqQjtvQkFDRCxTQUFTLEVBQUU7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLGVBQWU7NEJBQ3hCLFFBQVEsRUFBRSxFQUFDLEtBQUssRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBQzs0QkFDNUMsS0FBSyxFQUFFLElBQUk7eUJBQ1o7cUJBQ0Y7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge05nTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Q29tbW9uTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtQcm9wZXJ0eUdyaWRDb21wb25lbnR9IGZyb20gJy4vcHJvcGVydHktZ3JpZC9wcm9wZXJ0eS1ncmlkLmNvbXBvbmVudCc7XG5pbXBvcnQge0Zvcm1zTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge051bWJlclBpcGVNb2R1bGV9IGZyb20gJy4uLy4uL3BpcGUvbnVtYmVyLXBpcGUvbnVtYmVyLXBpcGUubW9kdWxlJztcbmltcG9ydCB7RGF0ZVBpY2tlck1vZHVsZX0gZnJvbSAnLi4vZGF0ZS1waWNrZXIvZGF0ZS1waWNrZXIubW9kdWxlJztcbmltcG9ydCB7U2VsZWN0TW9kdWxlfSBmcm9tICcuLi9zZWxlY3Qvc2VsZWN0Lm1vZHVsZSc7XG5pbXBvcnQge1Byb3BlcnR5R3JpZEdyb3VwQ29tcG9uZW50fSBmcm9tICcuL3Byb3BlcnR5LWdyaWQvcHJvcGVydHktZ3JpZC1ncm91cC9wcm9wZXJ0eS1ncmlkLWdyb3VwLmNvbXBvbmVudCc7XG5pbXBvcnQge1Byb3BlcnR5R3JpZEl0ZW1Db21wb25lbnR9IGZyb20gJy4vcHJvcGVydHktZ3JpZC9wcm9wZXJ0eS1ncmlkLWl0ZW0vcHJvcGVydHktZ3JpZC1pdGVtLmNvbXBvbmVudCc7XG5pbXBvcnQge09ubHlOdW1iZXJNb2R1bGV9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9vbmx5LW51bWJlci9vbmx5LW51bWJlci5tb2R1bGUnO1xuaW1wb3J0IHtJbnB1dE1vZHVsZX0gZnJvbSAnLi4vaW5wdXQvaW5wdXQubW9kdWxlJztcbmltcG9ydCB7VG9nZ2xlTW9kdWxlfSBmcm9tICcuLi90b2dnbGUvdG9nZ2xlLm1vZHVsZSc7XG5pbXBvcnQge1RSQU5TTE9DT19TQ09QRSwgVHJhbnNsb2NvTW9kdWxlfSBmcm9tICdAbmduZWF0L3RyYW5zbG9jbyc7XG5pbXBvcnQge0hpbnRNb2R1bGV9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9oaW50L2hpbnQubW9kdWxlJztcbmltcG9ydCB7RXhwYW5kQ2FyZE1vZHVsZX0gZnJvbSBcIi4uL2V4cGFuZC1jYXJkL2V4cGFuZC1jYXJkLm1vZHVsZVwiO1xuaW1wb3J0IHtQcm9wZXJ0eUdyaWRJdGVtRGVzY3JpcHRpb25EaXJlY3RpdmV9IGZyb20gJy4vcHJvcGVydHktZ3JpZC9wcm9wZXJ0eS1ncmlkLWl0ZW0tZGVzY3JpcHRpb24uZGlyZWN0aXZlJztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgUHJvcGVydHlHcmlkQ29tcG9uZW50LFxuICAgIFByb3BlcnR5R3JpZEdyb3VwQ29tcG9uZW50LFxuICAgIFByb3BlcnR5R3JpZEl0ZW1Db21wb25lbnQsXG4gICAgUHJvcGVydHlHcmlkSXRlbURlc2NyaXB0aW9uRGlyZWN0aXZlLFxuICBdLFxuICBleHBvcnRzOiBbUHJvcGVydHlHcmlkQ29tcG9uZW50LCBQcm9wZXJ0eUdyaWRJdGVtRGVzY3JpcHRpb25EaXJlY3RpdmVdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIE51bWJlclBpcGVNb2R1bGUsXG4gICAgRGF0ZVBpY2tlck1vZHVsZSxcbiAgICBTZWxlY3RNb2R1bGUsXG4gICAgT25seU51bWJlck1vZHVsZSxcbiAgICBJbnB1dE1vZHVsZSxcbiAgICBUb2dnbGVNb2R1bGUsXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICBUcmFuc2xvY29Nb2R1bGUsXG4gICAgSGludE1vZHVsZSxcbiAgICBFeHBhbmRDYXJkTW9kdWxlLFxuICBdLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBUUkFOU0xPQ09fU0NPUEUsXG4gICAgICB1c2VWYWx1ZToge3Njb3BlOiAnZXJyb3JzJywgYWxpYXM6ICdlcnJvcnMnfSxcbiAgICAgIG11bHRpOiB0cnVlLFxuICAgIH0sXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIFByb3BlcnR5R3JpZE1vZHVsZSB7XG59XG4iXX0=
@@ -1,3 +1,4 @@
1
1
  export * from './property-grid.module';
2
2
  export * from './property-grid/property-grid.component';
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnQvcHJvcGVydHktZ3JpZC9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYyx5Q0FBeUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vcHJvcGVydHktZ3JpZC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9wcm9wZXJ0eS1ncmlkL3Byb3BlcnR5LWdyaWQuY29tcG9uZW50JztcbiJdfQ==
3
+ export * from './property-grid/property-grid-item-description.directive';
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnQvcHJvcGVydHktZ3JpZC9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLDBEQUEwRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9wcm9wZXJ0eS1ncmlkLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL3Byb3BlcnR5LWdyaWQvcHJvcGVydHktZ3JpZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9wcm9wZXJ0eS1ncmlkL3Byb3BlcnR5LWdyaWQtaXRlbS1kZXNjcmlwdGlvbi5kaXJlY3RpdmUnO1xuIl19
@@ -1,5 +1,7 @@
1
1
  /* accordion */
2
2
  export * from './accordion/public-api';
3
+ /* autocomplete */
4
+ export * from './autocomplete/public-api';
3
5
  /* button */
4
6
  export * from './button/public-api';
5
7
  /* checkbox */
@@ -60,4 +62,4 @@ export * from './tree/public-api';
60
62
  export * from './chart-3d/public-api';
61
63
  /* Resize panel */
62
64
  export * from './resize-panel/public-api';
63
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnQvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxlQUFlO0FBQ2YsY0FBYyx3QkFBd0IsQ0FBQztBQUV2QyxZQUFZO0FBQ1osY0FBYyxxQkFBcUIsQ0FBQztBQUVwQyxjQUFjO0FBQ2QsY0FBYyx1QkFBdUIsQ0FBQztBQUV0QyxnQkFBZ0I7QUFDaEIsY0FBYywwQkFBMEIsQ0FBQztBQUV6QyxlQUFlO0FBQ2YsY0FBYyx3QkFBd0IsQ0FBQztBQUV2QyxjQUFjO0FBQ2QsY0FBYyx1QkFBdUIsQ0FBQztBQUV0Qyx1QkFBdUI7QUFDdkIsY0FBYyxnQ0FBZ0MsQ0FBQztBQUUvQyxpQkFBaUI7QUFDakIsY0FBYywwQkFBMEIsQ0FBQztBQUV6QyxrQkFBa0I7QUFDbEIsY0FBYywyQkFBMkIsQ0FBQztBQUUxQyxVQUFVO0FBQ1YsY0FBYywwQkFBMEIsQ0FBQztBQUV6QyxZQUFZO0FBQ1osY0FBYyxxQkFBcUIsQ0FBQztBQUVwQyxVQUFVO0FBQ1YsY0FBYyxtQkFBbUIsQ0FBQztBQUVsQyxXQUFXO0FBQ1gsY0FBYyxvQkFBb0IsQ0FBQztBQUVuQyxhQUFhO0FBQ2IsY0FBYyxzQkFBc0IsQ0FBQztBQUVyQyxXQUFXO0FBQ1gsY0FBYyxvQkFBb0IsQ0FBQztBQUVuQyxXQUFXO0FBQ1gsY0FBYyxvQkFBb0IsQ0FBQztBQUVuQyxXQUFXO0FBQ1gsY0FBYyxvQkFBb0IsQ0FBQztBQUVuQyxrQkFBa0I7QUFDbEIsY0FBYywyQkFBMkIsQ0FBQztBQUUxQyxtQkFBbUI7QUFDbkIsY0FBYyw0QkFBNEIsQ0FBQztBQUUzQyxXQUFXO0FBQ1gsY0FBYyxvQkFBb0IsQ0FBQztBQUVuQyxZQUFZO0FBQ1osY0FBYyxxQkFBcUIsQ0FBQztBQUVwQyxhQUFhO0FBQ2IsY0FBYyxzQkFBc0IsQ0FBQztBQUVyQyxZQUFZO0FBQ1osY0FBYyxxQkFBcUIsQ0FBQztBQUVwQyxXQUFXO0FBQ1gsY0FBYyxvQkFBb0IsQ0FBQztBQUVuQyxVQUFVO0FBQ1YsY0FBYyxtQkFBbUIsQ0FBQztBQUVsQyxrQkFBa0I7QUFDbEIsY0FBYywyQkFBMkIsQ0FBQztBQUUxQyxZQUFZO0FBQ1osY0FBYyxxQkFBcUIsQ0FBQztBQUVwQyxhQUFhO0FBQ2IsY0FBYyxzQkFBc0IsQ0FBQztBQUVyQyxVQUFVO0FBQ1YsY0FBYyxtQkFBbUIsQ0FBQztBQUVsQyxjQUFjO0FBQ2QsY0FBYyx1QkFBdUIsQ0FBQztBQUV0QyxrQkFBa0I7QUFDbEIsY0FBYywyQkFBMkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qIGFjY29yZGlvbiAqL1xuZXhwb3J0ICogZnJvbSAnLi9hY2NvcmRpb24vcHVibGljLWFwaSc7XG5cbi8qIGJ1dHRvbiAqL1xuZXhwb3J0ICogZnJvbSAnLi9idXR0b24vcHVibGljLWFwaSc7XG5cbi8qIGNoZWNrYm94ICovXG5leHBvcnQgKiBmcm9tICcuL2NoZWNrYm94L3B1YmxpYy1hcGknO1xuXG4vKiBkYXRlcGlja2VyICovXG5leHBvcnQgKiBmcm9tICcuL2RhdGUtcGlja2VyL3B1YmxpYy1hcGknO1xuXG4vKiBkZWxpbWl0ZXIgKi9cbmV4cG9ydCAqIGZyb20gJy4vZGVsaW1pdGVyL3B1YmxpYy1hcGknO1xuXG4vKiBkcm9wZG93biAqL1xuZXhwb3J0ICogZnJvbSAnLi9kcm9wZG93bi9wdWJsaWMtYXBpJztcblxuLyogZHluYW1pYy1jb21wb25lbnQgKi9cbmV4cG9ydCAqIGZyb20gJy4vZHluYW1pYy1jb21wb25lbnQvcHVibGljLWFwaSc7XG5cbi8qIGV4cGFuZC1jYXJkICovXG5leHBvcnQgKiBmcm9tICcuL2V4cGFuZC1jYXJkL3B1YmxpYy1hcGknO1xuXG4vKiBleHBhbmQtcGFuZWwgKi9cbmV4cG9ydCAqIGZyb20gJy4vZXhwYW5kLXBhbmVsL3B1YmxpYy1hcGknO1xuXG4vKiBmaWxlICovXG5leHBvcnQgKiBmcm9tICcuL2ZpbGUtdXBsb2FkL3B1YmxpYy1hcGknO1xuXG4vKiBmaWx0ZXIgKi9cbmV4cG9ydCAqIGZyb20gJy4vZmlsdGVyL3B1YmxpYy1hcGknO1xuXG4vKiBpY29uICovXG5leHBvcnQgKiBmcm9tICcuL2ljb24vcHVibGljLWFwaSc7XG5cbi8qIGlucHV0ICovXG5leHBvcnQgKiBmcm9tICcuL2lucHV0L3B1YmxpYy1hcGknO1xuXG4vKiBtZXNzYWdlICovXG5leHBvcnQgKiBmcm9tICcuL21lc3NhZ2UvcHVibGljLWFwaSc7XG5cbi8qIG1vZGFsICovXG5leHBvcnQgKiBmcm9tICcuL21vZGFsL3B1YmxpYy1hcGknO1xuXG4vKiBwYWdlciAqL1xuZXhwb3J0ICogZnJvbSAnLi9wYWdlci9wdWJsaWMtYXBpJztcblxuLyogcGFuZWwgKi9cbmV4cG9ydCAqIGZyb20gJy4vcGFuZWwvcHVibGljLWFwaSc7XG5cbi8qIHByb2dyZXNzLWJhciAqL1xuZXhwb3J0ICogZnJvbSAnLi9wcm9ncmVzcy1iYXIvcHVibGljLWFwaSc7XG5cbi8qIHByb3BlcnR5LWdyaWQgKi9cbmV4cG9ydCAqIGZyb20gJy4vcHJvcGVydHktZ3JpZC9wdWJsaWMtYXBpJztcblxuLyogcmFkaW8gKi9cbmV4cG9ydCAqIGZyb20gJy4vcmFkaW8vcHVibGljLWFwaSc7XG5cbi8qIHNlbGVjdCAqL1xuZXhwb3J0ICogZnJvbSAnLi9zZWxlY3QvcHVibGljLWFwaSc7XG5cbi8qIHNpZGViYXIgKi9cbmV4cG9ydCAqIGZyb20gJy4vc2lkZWJhci9wdWJsaWMtYXBpJztcblxuLyogc3dpdGNoICovXG5leHBvcnQgKiBmcm9tICcuL3N3aXRjaC9wdWJsaWMtYXBpJztcblxuLyogdGFibGUgKi9cbmV4cG9ydCAqIGZyb20gJy4vdGFibGUvcHVibGljLWFwaSc7XG5cbi8qIHRhYnMgKi9cbmV4cG9ydCAqIGZyb20gJy4vdGFicy9wdWJsaWMtYXBpJztcblxuLyogdGhlbWUtc3dpdGNoICovXG5leHBvcnQgKiBmcm9tICcuL3RoZW1lLXN3aXRjaC9wdWJsaWMtYXBpJztcblxuLyogdG9nZ2xlICovXG5leHBvcnQgKiBmcm9tICcuL3RvZ2dsZS9wdWJsaWMtYXBpJztcblxuLyogdG9vbGJhciAqL1xuZXhwb3J0ICogZnJvbSAnLi90b29sYmFyL3B1YmxpYy1hcGknO1xuXG4vKiB0cmVlICovXG5leHBvcnQgKiBmcm9tICcuL3RyZWUvcHVibGljLWFwaSc7XG5cbi8qIDNkLWNoYXJ0ICovXG5leHBvcnQgKiBmcm9tICcuL2NoYXJ0LTNkL3B1YmxpYy1hcGknO1xuXG4vKiBSZXNpemUgcGFuZWwgKi9cbmV4cG9ydCAqIGZyb20gJy4vcmVzaXplLXBhbmVsL3B1YmxpYy1hcGknO1xuIl19
65
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnQvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxlQUFlO0FBQ2YsY0FBYyx3QkFBd0IsQ0FBQztBQUV2QyxrQkFBa0I7QUFDbEIsY0FBYywyQkFBMkIsQ0FBQztBQUUxQyxZQUFZO0FBQ1osY0FBYyxxQkFBcUIsQ0FBQztBQUVwQyxjQUFjO0FBQ2QsY0FBYyx1QkFBdUIsQ0FBQztBQUV0QyxnQkFBZ0I7QUFDaEIsY0FBYywwQkFBMEIsQ0FBQztBQUV6QyxlQUFlO0FBQ2YsY0FBYyx3QkFBd0IsQ0FBQztBQUV2QyxjQUFjO0FBQ2QsY0FBYyx1QkFBdUIsQ0FBQztBQUV0Qyx1QkFBdUI7QUFDdkIsY0FBYyxnQ0FBZ0MsQ0FBQztBQUUvQyxpQkFBaUI7QUFDakIsY0FBYywwQkFBMEIsQ0FBQztBQUV6QyxrQkFBa0I7QUFDbEIsY0FBYywyQkFBMkIsQ0FBQztBQUUxQyxVQUFVO0FBQ1YsY0FBYywwQkFBMEIsQ0FBQztBQUV6QyxZQUFZO0FBQ1osY0FBYyxxQkFBcUIsQ0FBQztBQUVwQyxVQUFVO0FBQ1YsY0FBYyxtQkFBbUIsQ0FBQztBQUVsQyxXQUFXO0FBQ1gsY0FBYyxvQkFBb0IsQ0FBQztBQUVuQyxhQUFhO0FBQ2IsY0FBYyxzQkFBc0IsQ0FBQztBQUVyQyxXQUFXO0FBQ1gsY0FBYyxvQkFBb0IsQ0FBQztBQUVuQyxXQUFXO0FBQ1gsY0FBYyxvQkFBb0IsQ0FBQztBQUVuQyxXQUFXO0FBQ1gsY0FBYyxvQkFBb0IsQ0FBQztBQUVuQyxrQkFBa0I7QUFDbEIsY0FBYywyQkFBMkIsQ0FBQztBQUUxQyxtQkFBbUI7QUFDbkIsY0FBYyw0QkFBNEIsQ0FBQztBQUUzQyxXQUFXO0FBQ1gsY0FBYyxvQkFBb0IsQ0FBQztBQUVuQyxZQUFZO0FBQ1osY0FBYyxxQkFBcUIsQ0FBQztBQUVwQyxhQUFhO0FBQ2IsY0FBYyxzQkFBc0IsQ0FBQztBQUVyQyxZQUFZO0FBQ1osY0FBYyxxQkFBcUIsQ0FBQztBQUVwQyxXQUFXO0FBQ1gsY0FBYyxvQkFBb0IsQ0FBQztBQUVuQyxVQUFVO0FBQ1YsY0FBYyxtQkFBbUIsQ0FBQztBQUVsQyxrQkFBa0I7QUFDbEIsY0FBYywyQkFBMkIsQ0FBQztBQUUxQyxZQUFZO0FBQ1osY0FBYyxxQkFBcUIsQ0FBQztBQUVwQyxhQUFhO0FBQ2IsY0FBYyxzQkFBc0IsQ0FBQztBQUVyQyxVQUFVO0FBQ1YsY0FBYyxtQkFBbUIsQ0FBQztBQUVsQyxjQUFjO0FBQ2QsY0FBYyx1QkFBdUIsQ0FBQztBQUV0QyxrQkFBa0I7QUFDbEIsY0FBYywyQkFBMkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qIGFjY29yZGlvbiAqL1xuZXhwb3J0ICogZnJvbSAnLi9hY2NvcmRpb24vcHVibGljLWFwaSc7XG5cbi8qIGF1dG9jb21wbGV0ZSAqL1xuZXhwb3J0ICogZnJvbSAnLi9hdXRvY29tcGxldGUvcHVibGljLWFwaSc7XG5cbi8qIGJ1dHRvbiAqL1xuZXhwb3J0ICogZnJvbSAnLi9idXR0b24vcHVibGljLWFwaSc7XG5cbi8qIGNoZWNrYm94ICovXG5leHBvcnQgKiBmcm9tICcuL2NoZWNrYm94L3B1YmxpYy1hcGknO1xuXG4vKiBkYXRlcGlja2VyICovXG5leHBvcnQgKiBmcm9tICcuL2RhdGUtcGlja2VyL3B1YmxpYy1hcGknO1xuXG4vKiBkZWxpbWl0ZXIgKi9cbmV4cG9ydCAqIGZyb20gJy4vZGVsaW1pdGVyL3B1YmxpYy1hcGknO1xuXG4vKiBkcm9wZG93biAqL1xuZXhwb3J0ICogZnJvbSAnLi9kcm9wZG93bi9wdWJsaWMtYXBpJztcblxuLyogZHluYW1pYy1jb21wb25lbnQgKi9cbmV4cG9ydCAqIGZyb20gJy4vZHluYW1pYy1jb21wb25lbnQvcHVibGljLWFwaSc7XG5cbi8qIGV4cGFuZC1jYXJkICovXG5leHBvcnQgKiBmcm9tICcuL2V4cGFuZC1jYXJkL3B1YmxpYy1hcGknO1xuXG4vKiBleHBhbmQtcGFuZWwgKi9cbmV4cG9ydCAqIGZyb20gJy4vZXhwYW5kLXBhbmVsL3B1YmxpYy1hcGknO1xuXG4vKiBmaWxlICovXG5leHBvcnQgKiBmcm9tICcuL2ZpbGUtdXBsb2FkL3B1YmxpYy1hcGknO1xuXG4vKiBmaWx0ZXIgKi9cbmV4cG9ydCAqIGZyb20gJy4vZmlsdGVyL3B1YmxpYy1hcGknO1xuXG4vKiBpY29uICovXG5leHBvcnQgKiBmcm9tICcuL2ljb24vcHVibGljLWFwaSc7XG5cbi8qIGlucHV0ICovXG5leHBvcnQgKiBmcm9tICcuL2lucHV0L3B1YmxpYy1hcGknO1xuXG4vKiBtZXNzYWdlICovXG5leHBvcnQgKiBmcm9tICcuL21lc3NhZ2UvcHVibGljLWFwaSc7XG5cbi8qIG1vZGFsICovXG5leHBvcnQgKiBmcm9tICcuL21vZGFsL3B1YmxpYy1hcGknO1xuXG4vKiBwYWdlciAqL1xuZXhwb3J0ICogZnJvbSAnLi9wYWdlci9wdWJsaWMtYXBpJztcblxuLyogcGFuZWwgKi9cbmV4cG9ydCAqIGZyb20gJy4vcGFuZWwvcHVibGljLWFwaSc7XG5cbi8qIHByb2dyZXNzLWJhciAqL1xuZXhwb3J0ICogZnJvbSAnLi9wcm9ncmVzcy1iYXIvcHVibGljLWFwaSc7XG5cbi8qIHByb3BlcnR5LWdyaWQgKi9cbmV4cG9ydCAqIGZyb20gJy4vcHJvcGVydHktZ3JpZC9wdWJsaWMtYXBpJztcblxuLyogcmFkaW8gKi9cbmV4cG9ydCAqIGZyb20gJy4vcmFkaW8vcHVibGljLWFwaSc7XG5cbi8qIHNlbGVjdCAqL1xuZXhwb3J0ICogZnJvbSAnLi9zZWxlY3QvcHVibGljLWFwaSc7XG5cbi8qIHNpZGViYXIgKi9cbmV4cG9ydCAqIGZyb20gJy4vc2lkZWJhci9wdWJsaWMtYXBpJztcblxuLyogc3dpdGNoICovXG5leHBvcnQgKiBmcm9tICcuL3N3aXRjaC9wdWJsaWMtYXBpJztcblxuLyogdGFibGUgKi9cbmV4cG9ydCAqIGZyb20gJy4vdGFibGUvcHVibGljLWFwaSc7XG5cbi8qIHRhYnMgKi9cbmV4cG9ydCAqIGZyb20gJy4vdGFicy9wdWJsaWMtYXBpJztcblxuLyogdGhlbWUtc3dpdGNoICovXG5leHBvcnQgKiBmcm9tICcuL3RoZW1lLXN3aXRjaC9wdWJsaWMtYXBpJztcblxuLyogdG9nZ2xlICovXG5leHBvcnQgKiBmcm9tICcuL3RvZ2dsZS9wdWJsaWMtYXBpJztcblxuLyogdG9vbGJhciAqL1xuZXhwb3J0ICogZnJvbSAnLi90b29sYmFyL3B1YmxpYy1hcGknO1xuXG4vKiB0cmVlICovXG5leHBvcnQgKiBmcm9tICcuL3RyZWUvcHVibGljLWFwaSc7XG5cbi8qIDNkLWNoYXJ0ICovXG5leHBvcnQgKiBmcm9tICcuL2NoYXJ0LTNkL3B1YmxpYy1hcGknO1xuXG4vKiBSZXNpemUgcGFuZWwgKi9cbmV4cG9ydCAqIGZyb20gJy4vcmVzaXplLXBhbmVsL3B1YmxpYy1hcGknO1xuIl19