@3kles/kles-material-dynamicforms 1.1.0 → 1.1.4

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 (142) hide show
  1. package/3kles-kles-material-dynamicforms.d.ts +5 -5
  2. package/3kles-kles-material-dynamicforms.metadata.json +1 -1
  3. package/bundles/3kles-kles-material-dynamicforms.umd.js +1478 -1457
  4. package/bundles/3kles-kles-material-dynamicforms.umd.js.map +1 -1
  5. package/bundles/3kles-kles-material-dynamicforms.umd.min.js +2 -2
  6. package/bundles/3kles-kles-material-dynamicforms.umd.min.js.map +1 -1
  7. package/esm2015/3kles-kles-material-dynamicforms.js +5 -5
  8. package/esm2015/lib/directive/dynamic-component.directive.js +50 -46
  9. package/esm2015/lib/directive/dynamic-field.directive.js +94 -94
  10. package/esm2015/lib/dynamic-form.component.js +238 -234
  11. package/esm2015/lib/fields/badge.component.js +20 -20
  12. package/esm2015/lib/fields/button-form.component.js +28 -28
  13. package/esm2015/lib/fields/button-submit.component.js +20 -20
  14. package/esm2015/lib/fields/button-toogle-group.component.js +37 -37
  15. package/esm2015/lib/fields/buttonchecker-form.component.js +28 -28
  16. package/esm2015/lib/fields/buttonfile-form.component.js +27 -27
  17. package/esm2015/lib/fields/checkbox.component.js +24 -24
  18. package/esm2015/lib/fields/chip.component.js +23 -23
  19. package/esm2015/lib/fields/color.component.js +58 -58
  20. package/esm2015/lib/fields/date.component.js +28 -28
  21. package/esm2015/lib/fields/field.abstract.js +40 -40
  22. package/esm2015/lib/fields/group.component.js +27 -27
  23. package/esm2015/lib/fields/icon.component.js +18 -18
  24. package/esm2015/lib/fields/input.clearable.component.js +56 -56
  25. package/esm2015/lib/fields/input.component.js +101 -101
  26. package/esm2015/lib/fields/label.component.js +23 -23
  27. package/esm2015/lib/fields/line-break.component.js +19 -19
  28. package/esm2015/lib/fields/link.component.js +20 -20
  29. package/esm2015/lib/fields/list-field.component.js +83 -83
  30. package/esm2015/lib/fields/radio.component.js +27 -27
  31. package/esm2015/lib/fields/select.component.js +120 -114
  32. package/esm2015/lib/fields/select.search.component.js +205 -199
  33. package/esm2015/lib/fields/selection-list.component.js +40 -41
  34. package/esm2015/lib/fields/slide-toggle.component.js +24 -24
  35. package/esm2015/lib/fields/text.component.js +20 -20
  36. package/esm2015/lib/fields/textarea.component.js +32 -32
  37. package/esm2015/lib/forms/button-control.component.js +102 -102
  38. package/esm2015/lib/forms/buttonchecker-control.component.js +53 -53
  39. package/esm2015/lib/forms/buttonfile-control.component.js +107 -107
  40. package/esm2015/lib/interfaces/component.interface.js +1 -1
  41. package/esm2015/lib/interfaces/field.config.interface.js +1 -1
  42. package/esm2015/lib/interfaces/field.interface.js +1 -1
  43. package/esm2015/lib/interfaces/validator.interface.js +1 -1
  44. package/esm2015/lib/kles-material-dynamicforms.module.js +114 -114
  45. package/esm2015/lib/matcher/form-error.matcher.js +9 -9
  46. package/esm2015/lib/modules/material.module.js +129 -129
  47. package/esm2015/lib/pipe/array.pipe.js +20 -20
  48. package/esm2015/lib/pipe/transform.pipe.js +25 -25
  49. package/esm2015/lib/validators/autocomplete.validator.js +23 -23
  50. package/esm2015/public-api.js +48 -48
  51. package/esm5/3kles-kles-material-dynamicforms.js +5 -5
  52. package/esm5/lib/directive/dynamic-component.directive.js +51 -47
  53. package/esm5/lib/directive/dynamic-field.directive.js +95 -95
  54. package/esm5/lib/dynamic-form.component.js +240 -236
  55. package/esm5/lib/fields/badge.component.js +21 -21
  56. package/esm5/lib/fields/button-form.component.js +21 -21
  57. package/esm5/lib/fields/button-submit.component.js +21 -21
  58. package/esm5/lib/fields/button-toogle-group.component.js +33 -33
  59. package/esm5/lib/fields/buttonchecker-form.component.js +21 -21
  60. package/esm5/lib/fields/buttonfile-form.component.js +21 -21
  61. package/esm5/lib/fields/checkbox.component.js +19 -19
  62. package/esm5/lib/fields/chip.component.js +19 -19
  63. package/esm5/lib/fields/color.component.js +46 -46
  64. package/esm5/lib/fields/date.component.js +19 -19
  65. package/esm5/lib/fields/field.abstract.js +45 -45
  66. package/esm5/lib/fields/group.component.js +25 -25
  67. package/esm5/lib/fields/icon.component.js +19 -19
  68. package/esm5/lib/fields/input.clearable.component.js +19 -19
  69. package/esm5/lib/fields/input.component.js +70 -70
  70. package/esm5/lib/fields/label.component.js +22 -22
  71. package/esm5/lib/fields/line-break.component.js +20 -20
  72. package/esm5/lib/fields/link.component.js +21 -21
  73. package/esm5/lib/fields/list-field.component.js +63 -63
  74. package/esm5/lib/fields/radio.component.js +19 -19
  75. package/esm5/lib/fields/select.component.js +52 -45
  76. package/esm5/lib/fields/select.search.component.js +119 -113
  77. package/esm5/lib/fields/selection-list.component.js +29 -29
  78. package/esm5/lib/fields/slide-toggle.component.js +19 -19
  79. package/esm5/lib/fields/text.component.js +21 -21
  80. package/esm5/lib/fields/textarea.component.js +22 -22
  81. package/esm5/lib/forms/button-control.component.js +95 -95
  82. package/esm5/lib/forms/buttonchecker-control.component.js +37 -37
  83. package/esm5/lib/forms/buttonfile-control.component.js +123 -123
  84. package/esm5/lib/interfaces/component.interface.js +1 -1
  85. package/esm5/lib/interfaces/field.config.interface.js +1 -1
  86. package/esm5/lib/interfaces/field.interface.js +1 -1
  87. package/esm5/lib/interfaces/validator.interface.js +1 -1
  88. package/esm5/lib/kles-material-dynamicforms.module.js +117 -117
  89. package/esm5/lib/matcher/form-error.matcher.js +11 -11
  90. package/esm5/lib/modules/material.module.js +132 -132
  91. package/esm5/lib/pipe/array.pipe.js +23 -23
  92. package/esm5/lib/pipe/transform.pipe.js +28 -28
  93. package/esm5/lib/validators/autocomplete.validator.js +23 -23
  94. package/esm5/public-api.js +48 -48
  95. package/fesm2015/3kles-kles-material-dynamicforms.js +1795 -1776
  96. package/fesm2015/3kles-kles-material-dynamicforms.js.map +1 -1
  97. package/fesm5/3kles-kles-material-dynamicforms.js +1482 -1461
  98. package/fesm5/3kles-kles-material-dynamicforms.js.map +1 -1
  99. package/lib/directive/dynamic-component.directive.d.ts +14 -12
  100. package/lib/directive/dynamic-field.directive.d.ts +16 -16
  101. package/lib/dynamic-form.component.d.ts +28 -28
  102. package/lib/fields/badge.component.d.ts +5 -5
  103. package/lib/fields/button-form.component.d.ts +5 -5
  104. package/lib/fields/button-submit.component.d.ts +5 -5
  105. package/lib/fields/button-toogle-group.component.d.ts +7 -7
  106. package/lib/fields/buttonchecker-form.component.d.ts +5 -5
  107. package/lib/fields/buttonfile-form.component.d.ts +5 -5
  108. package/lib/fields/checkbox.component.d.ts +5 -5
  109. package/lib/fields/chip.component.d.ts +5 -5
  110. package/lib/fields/color.component.d.ts +6 -6
  111. package/lib/fields/date.component.d.ts +5 -5
  112. package/lib/fields/field.abstract.d.ts +12 -12
  113. package/lib/fields/group.component.d.ts +7 -7
  114. package/lib/fields/icon.component.d.ts +5 -5
  115. package/lib/fields/input.clearable.component.d.ts +4 -4
  116. package/lib/fields/input.component.d.ts +11 -11
  117. package/lib/fields/label.component.d.ts +5 -5
  118. package/lib/fields/line-break.component.d.ts +5 -5
  119. package/lib/fields/link.component.d.ts +5 -5
  120. package/lib/fields/list-field.component.d.ts +14 -14
  121. package/lib/fields/radio.component.d.ts +5 -5
  122. package/lib/fields/select.component.d.ts +14 -13
  123. package/lib/fields/select.search.component.d.ts +20 -19
  124. package/lib/fields/selection-list.component.d.ts +7 -7
  125. package/lib/fields/slide-toggle.component.d.ts +5 -5
  126. package/lib/fields/text.component.d.ts +5 -5
  127. package/lib/fields/textarea.component.d.ts +5 -5
  128. package/lib/forms/button-control.component.d.ts +33 -33
  129. package/lib/forms/buttonchecker-control.component.d.ts +11 -11
  130. package/lib/forms/buttonfile-control.component.d.ts +17 -17
  131. package/lib/interfaces/component.interface.d.ts +5 -5
  132. package/lib/interfaces/field.config.interface.d.ts +52 -51
  133. package/lib/interfaces/field.interface.d.ts +7 -7
  134. package/lib/interfaces/validator.interface.d.ts +5 -5
  135. package/lib/kles-material-dynamicforms.module.d.ts +2 -2
  136. package/lib/matcher/form-error.matcher.d.ts +6 -6
  137. package/lib/modules/material.module.d.ts +2 -2
  138. package/lib/pipe/array.pipe.d.ts +4 -4
  139. package/lib/pipe/transform.pipe.d.ts +7 -7
  140. package/lib/validators/autocomplete.validator.d.ts +3 -3
  141. package/package.json +1 -1
  142. package/public-api.d.ts +48 -48
@@ -1,6 +1,6 @@
1
- /**
2
- * Generated bundle index. Do not edit.
3
- */
4
- export * from './public-api';
5
- export { MaterialModule as ɵa } from './lib/modules/material.module';
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './public-api';
5
+ export { MaterialModule as ɵa } from './lib/modules/material.module';
6
6
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiM2tsZXMta2xlcy1tYXRlcmlhbC1keW5hbWljZm9ybXMuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AM2tsZXMva2xlcy1tYXRlcmlhbC1keW5hbWljZm9ybXMvIiwic291cmNlcyI6WyIza2xlcy1rbGVzLW1hdGVyaWFsLWR5bmFtaWNmb3Jtcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDO0FBRTdCLE9BQU8sRUFBQyxjQUFjLElBQUksRUFBRSxFQUFDLE1BQU0sK0JBQStCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljLWFwaSc7XG5cbmV4cG9ydCB7TWF0ZXJpYWxNb2R1bGUgYXMgybVhfSBmcm9tICcuL2xpYi9tb2R1bGVzL21hdGVyaWFsLm1vZHVsZSc7Il19
@@ -1,46 +1,50 @@
1
- import { __decorate } from "tslib";
2
- import { Directive, Input, OnInit, ComponentFactoryResolver, ViewContainerRef, ComponentRef, Type, OnChanges, SimpleChanges } from '@angular/core';
3
- let KlesComponentDirective = class KlesComponentDirective {
4
- constructor(resolver, container) {
5
- this.resolver = resolver;
6
- this.container = container;
7
- }
8
- ngOnInit() {
9
- this.buildComponent();
10
- }
11
- ngOnChanges(changes) {
12
- if (changes.component && !changes.component.isFirstChange()) {
13
- this.component = changes.component.currentValue;
14
- this.buildComponent();
15
- }
16
- if (changes.value && !changes.value.isFirstChange()) {
17
- this.value = changes.value.currentValue;
18
- this.componentRef.instance.value = this.value;
19
- }
20
- }
21
- buildComponent() {
22
- const factory = this.resolver.resolveComponentFactory(this.component);
23
- if (this.componentRef)
24
- this.componentRef.destroy();
25
- this.componentRef = this.container.createComponent(factory);
26
- this.componentRef.instance.component = this.component;
27
- this.componentRef.instance.value = this.value;
28
- }
29
- };
30
- KlesComponentDirective.ctorParameters = () => [
31
- { type: ComponentFactoryResolver },
32
- { type: ViewContainerRef }
33
- ];
34
- __decorate([
35
- Input()
36
- ], KlesComponentDirective.prototype, "component", void 0);
37
- __decorate([
38
- Input()
39
- ], KlesComponentDirective.prototype, "value", void 0);
40
- KlesComponentDirective = __decorate([
41
- Directive({
42
- selector: '[klesComponent]'
43
- })
44
- ], KlesComponentDirective);
45
- export { KlesComponentDirective };
46
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1jb21wb25lbnQuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQDNrbGVzL2tsZXMtbWF0ZXJpYWwtZHluYW1pY2Zvcm1zLyIsInNvdXJjZXMiOlsibGliL2RpcmVjdGl2ZS9keW5hbWljLWNvbXBvbmVudC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSx3QkFBd0IsRUFBRSxnQkFBZ0IsRUFBRSxZQUFZLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxhQUFhLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFLbkosSUFBYSxzQkFBc0IsR0FBbkMsTUFBYSxzQkFBc0I7SUFNL0IsWUFBb0IsUUFBa0MsRUFDMUMsU0FBMkI7UUFEbkIsYUFBUSxHQUFSLFFBQVEsQ0FBMEI7UUFDMUMsY0FBUyxHQUFULFNBQVMsQ0FBa0I7SUFBSSxDQUFDO0lBRTVDLFFBQVE7UUFDSixJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVELFdBQVcsQ0FBQyxPQUFzQjtRQUM5QixJQUFJLE9BQU8sQ0FBQyxTQUFTLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLGFBQWEsRUFBRSxFQUFFO1lBQ3pELElBQUksQ0FBQyxTQUFTLEdBQUcsT0FBTyxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUM7WUFDaEQsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1NBQ3pCO1FBQ0QsSUFBSSxPQUFPLENBQUMsS0FBSyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxhQUFhLEVBQUUsRUFBRTtZQUNqRCxJQUFJLENBQUMsS0FBSyxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDO1lBQ3hDLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDO1NBQ2pEO0lBQ0wsQ0FBQztJQUVELGNBQWM7UUFDVixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLHVCQUF1QixDQUNqRCxJQUFJLENBQUMsU0FBUyxDQUNqQixDQUFDO1FBQ0YsSUFBSSxJQUFJLENBQUMsWUFBWTtZQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDbkQsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUM1RCxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQztRQUN0RCxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQztJQUNsRCxDQUFDO0NBQ0osQ0FBQTs7WUEzQmlDLHdCQUF3QjtZQUMvQixnQkFBZ0I7O0FBTjlCO0lBQVIsS0FBSyxFQUFFO3lEQUFzQjtBQUNyQjtJQUFSLEtBQUssRUFBRTtxREFBWTtBQUZYLHNCQUFzQjtJQUhsQyxTQUFTLENBQUM7UUFDUCxRQUFRLEVBQUUsaUJBQWlCO0tBQzlCLENBQUM7R0FDVyxzQkFBc0IsQ0FpQ2xDO1NBakNZLHNCQUFzQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgSW5wdXQsIE9uSW5pdCwgQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLCBWaWV3Q29udGFpbmVyUmVmLCBDb21wb25lbnRSZWYsIFR5cGUsIE9uQ2hhbmdlcywgU2ltcGxlQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgICBzZWxlY3RvcjogJ1trbGVzQ29tcG9uZW50XSdcclxufSlcclxuZXhwb3J0IGNsYXNzIEtsZXNDb21wb25lbnREaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcyB7XHJcbiAgICBASW5wdXQoKSBjb21wb25lbnQ6IFR5cGU8YW55PjtcclxuICAgIEBJbnB1dCgpIHZhbHVlOiBhbnk7XHJcblxyXG4gICAgY29tcG9uZW50UmVmOiBDb21wb25lbnRSZWY8YW55PjtcclxuXHJcbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlc29sdmVyOiBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsXHJcbiAgICAgICAgcHJpdmF0ZSBjb250YWluZXI6IFZpZXdDb250YWluZXJSZWYpIHsgfVxyXG5cclxuICAgIG5nT25Jbml0KCkge1xyXG4gICAgICAgIHRoaXMuYnVpbGRDb21wb25lbnQoKTtcclxuICAgIH1cclxuXHJcbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKGNoYW5nZXMuY29tcG9uZW50ICYmICFjaGFuZ2VzLmNvbXBvbmVudC5pc0ZpcnN0Q2hhbmdlKCkpIHtcclxuICAgICAgICAgICAgdGhpcy5jb21wb25lbnQgPSBjaGFuZ2VzLmNvbXBvbmVudC5jdXJyZW50VmFsdWU7XHJcbiAgICAgICAgICAgIHRoaXMuYnVpbGRDb21wb25lbnQoKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKGNoYW5nZXMudmFsdWUgJiYgIWNoYW5nZXMudmFsdWUuaXNGaXJzdENoYW5nZSgpKSB7XHJcbiAgICAgICAgICAgIHRoaXMudmFsdWUgPSBjaGFuZ2VzLnZhbHVlLmN1cnJlbnRWYWx1ZTtcclxuICAgICAgICAgICAgdGhpcy5jb21wb25lbnRSZWYuaW5zdGFuY2UudmFsdWUgPSB0aGlzLnZhbHVlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBidWlsZENvbXBvbmVudCgpIHtcclxuICAgICAgICBjb25zdCBmYWN0b3J5ID0gdGhpcy5yZXNvbHZlci5yZXNvbHZlQ29tcG9uZW50RmFjdG9yeShcclxuICAgICAgICAgICAgdGhpcy5jb21wb25lbnRcclxuICAgICAgICApO1xyXG4gICAgICAgIGlmICh0aGlzLmNvbXBvbmVudFJlZikgdGhpcy5jb21wb25lbnRSZWYuZGVzdHJveSgpO1xyXG4gICAgICAgIHRoaXMuY29tcG9uZW50UmVmID0gdGhpcy5jb250YWluZXIuY3JlYXRlQ29tcG9uZW50KGZhY3RvcnkpO1xyXG4gICAgICAgIHRoaXMuY29tcG9uZW50UmVmLmluc3RhbmNlLmNvbXBvbmVudCA9IHRoaXMuY29tcG9uZW50O1xyXG4gICAgICAgIHRoaXMuY29tcG9uZW50UmVmLmluc3RhbmNlLnZhbHVlID0gdGhpcy52YWx1ZTtcclxuICAgIH1cclxufVxyXG4iXX0=
1
+ import { __decorate } from "tslib";
2
+ import { Directive, Input, OnInit, ComponentFactoryResolver, ViewContainerRef, ComponentRef, Type, OnChanges, SimpleChanges } from '@angular/core';
3
+ let KlesComponentDirective = class KlesComponentDirective {
4
+ constructor(resolver, container) {
5
+ this.resolver = resolver;
6
+ this.container = container;
7
+ }
8
+ ngOnInit() {
9
+ this.buildComponent();
10
+ }
11
+ ngOnChanges(changes) {
12
+ if (changes.component && !changes.component.isFirstChange()) {
13
+ this.component = changes.component.currentValue;
14
+ this.buildComponent();
15
+ }
16
+ if (changes.value && !changes.value.isFirstChange()) {
17
+ this.value = changes.value.currentValue;
18
+ this.componentRef.instance.value = this.value;
19
+ }
20
+ }
21
+ buildComponent() {
22
+ const factory = this.resolver.resolveComponentFactory(this.component);
23
+ if (this.componentRef)
24
+ this.componentRef.destroy();
25
+ this.componentRef = this.container.createComponent(factory);
26
+ this.componentRef.instance.component = this.component;
27
+ this.componentRef.instance.value = this.value;
28
+ this.componentRef.instance.field = this.field;
29
+ }
30
+ };
31
+ KlesComponentDirective.ctorParameters = () => [
32
+ { type: ComponentFactoryResolver },
33
+ { type: ViewContainerRef }
34
+ ];
35
+ __decorate([
36
+ Input()
37
+ ], KlesComponentDirective.prototype, "component", void 0);
38
+ __decorate([
39
+ Input()
40
+ ], KlesComponentDirective.prototype, "value", void 0);
41
+ __decorate([
42
+ Input()
43
+ ], KlesComponentDirective.prototype, "field", void 0);
44
+ KlesComponentDirective = __decorate([
45
+ Directive({
46
+ selector: '[klesComponent]'
47
+ })
48
+ ], KlesComponentDirective);
49
+ export { KlesComponentDirective };
50
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1jb21wb25lbnQuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQDNrbGVzL2tsZXMtbWF0ZXJpYWwtZHluYW1pY2Zvcm1zLyIsInNvdXJjZXMiOlsibGliL2RpcmVjdGl2ZS9keW5hbWljLWNvbXBvbmVudC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSx3QkFBd0IsRUFBRSxnQkFBZ0IsRUFBRSxZQUFZLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxhQUFhLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFPbkosSUFBYSxzQkFBc0IsR0FBbkMsTUFBYSxzQkFBc0I7SUFPL0IsWUFBb0IsUUFBa0MsRUFDMUMsU0FBMkI7UUFEbkIsYUFBUSxHQUFSLFFBQVEsQ0FBMEI7UUFDMUMsY0FBUyxHQUFULFNBQVMsQ0FBa0I7SUFBSSxDQUFDO0lBRTVDLFFBQVE7UUFDSixJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVELFdBQVcsQ0FBQyxPQUFzQjtRQUM5QixJQUFJLE9BQU8sQ0FBQyxTQUFTLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLGFBQWEsRUFBRSxFQUFFO1lBQ3pELElBQUksQ0FBQyxTQUFTLEdBQUcsT0FBTyxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUM7WUFDaEQsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1NBQ3pCO1FBQ0QsSUFBSSxPQUFPLENBQUMsS0FBSyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxhQUFhLEVBQUUsRUFBRTtZQUNqRCxJQUFJLENBQUMsS0FBSyxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDO1lBQ3hDLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDO1NBQ2pEO0lBQ0wsQ0FBQztJQUVELGNBQWM7UUFDVixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLHVCQUF1QixDQUNqRCxJQUFJLENBQUMsU0FBUyxDQUNqQixDQUFDO1FBQ0YsSUFBSSxJQUFJLENBQUMsWUFBWTtZQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDbkQsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUM1RCxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQztRQUN0RCxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQztRQUM5QyxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQztJQUNsRCxDQUFDO0NBQ0osQ0FBQTs7WUE1QmlDLHdCQUF3QjtZQUMvQixnQkFBZ0I7O0FBUDlCO0lBQVIsS0FBSyxFQUFFO3lEQUFzQjtBQUNyQjtJQUFSLEtBQUssRUFBRTtxREFBWTtBQUNYO0lBQVIsS0FBSyxFQUFFO3FEQUEwQjtBQUh6QixzQkFBc0I7SUFIbEMsU0FBUyxDQUFDO1FBQ1AsUUFBUSxFQUFFLGlCQUFpQjtLQUM5QixDQUFDO0dBQ1csc0JBQXNCLENBbUNsQztTQW5DWSxzQkFBc0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIElucHV0LCBPbkluaXQsIENvbXBvbmVudEZhY3RvcnlSZXNvbHZlciwgVmlld0NvbnRhaW5lclJlZiwgQ29tcG9uZW50UmVmLCBUeXBlLCBPbkNoYW5nZXMsIFNpbXBsZUNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IElLbGVzRmllbGRDb25maWcgfSBmcm9tICcuLi9pbnRlcmZhY2VzL2ZpZWxkLmNvbmZpZy5pbnRlcmZhY2UnO1xuXG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW2tsZXNDb21wb25lbnRdJ1xufSlcbmV4cG9ydCBjbGFzcyBLbGVzQ29tcG9uZW50RGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xuICAgIEBJbnB1dCgpIGNvbXBvbmVudDogVHlwZTxhbnk+O1xuICAgIEBJbnB1dCgpIHZhbHVlOiBhbnk7XG4gICAgQElucHV0KCkgZmllbGQ/OiBJS2xlc0ZpZWxkQ29uZmlnO1xuXG4gICAgY29tcG9uZW50UmVmOiBDb21wb25lbnRSZWY8YW55PjtcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVzb2x2ZXI6IENvbXBvbmVudEZhY3RvcnlSZXNvbHZlcixcbiAgICAgICAgcHJpdmF0ZSBjb250YWluZXI6IFZpZXdDb250YWluZXJSZWYpIHsgfVxuXG4gICAgbmdPbkluaXQoKSB7XG4gICAgICAgIHRoaXMuYnVpbGRDb21wb25lbnQoKTtcbiAgICB9XG5cbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgICAgIGlmIChjaGFuZ2VzLmNvbXBvbmVudCAmJiAhY2hhbmdlcy5jb21wb25lbnQuaXNGaXJzdENoYW5nZSgpKSB7XG4gICAgICAgICAgICB0aGlzLmNvbXBvbmVudCA9IGNoYW5nZXMuY29tcG9uZW50LmN1cnJlbnRWYWx1ZTtcbiAgICAgICAgICAgIHRoaXMuYnVpbGRDb21wb25lbnQoKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoY2hhbmdlcy52YWx1ZSAmJiAhY2hhbmdlcy52YWx1ZS5pc0ZpcnN0Q2hhbmdlKCkpIHtcbiAgICAgICAgICAgIHRoaXMudmFsdWUgPSBjaGFuZ2VzLnZhbHVlLmN1cnJlbnRWYWx1ZTtcbiAgICAgICAgICAgIHRoaXMuY29tcG9uZW50UmVmLmluc3RhbmNlLnZhbHVlID0gdGhpcy52YWx1ZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGJ1aWxkQ29tcG9uZW50KCkge1xuICAgICAgICBjb25zdCBmYWN0b3J5ID0gdGhpcy5yZXNvbHZlci5yZXNvbHZlQ29tcG9uZW50RmFjdG9yeShcbiAgICAgICAgICAgIHRoaXMuY29tcG9uZW50XG4gICAgICAgICk7XG4gICAgICAgIGlmICh0aGlzLmNvbXBvbmVudFJlZikgdGhpcy5jb21wb25lbnRSZWYuZGVzdHJveSgpO1xuICAgICAgICB0aGlzLmNvbXBvbmVudFJlZiA9IHRoaXMuY29udGFpbmVyLmNyZWF0ZUNvbXBvbmVudChmYWN0b3J5KTtcbiAgICAgICAgdGhpcy5jb21wb25lbnRSZWYuaW5zdGFuY2UuY29tcG9uZW50ID0gdGhpcy5jb21wb25lbnQ7XG4gICAgICAgIHRoaXMuY29tcG9uZW50UmVmLmluc3RhbmNlLnZhbHVlID0gdGhpcy52YWx1ZTtcbiAgICAgICAgdGhpcy5jb21wb25lbnRSZWYuaW5zdGFuY2UuZmllbGQgPSB0aGlzLmZpZWxkO1xuICAgIH1cbn1cbiJdfQ==
@@ -1,94 +1,94 @@
1
- import { __decorate } from "tslib";
2
- import { Directive, Input, OnInit, ComponentFactoryResolver, ViewContainerRef, ComponentRef, Type, OnChanges, SimpleChanges, OnDestroy } from '@angular/core';
3
- import { KlesFormLabelComponent } from '../fields/label.component';
4
- import { KlesFormInputComponent } from '../fields/input.component';
5
- import { KlesFormSubmitButtonComponent } from '../fields/button-submit.component';
6
- import { KlesFormSelectComponent } from '../fields/select.component';
7
- import { KlesFormDateComponent } from '../fields/date.component';
8
- import { KlesFormRadioComponent } from '../fields/radio.component';
9
- import { KlesFormCheckboxComponent } from '../fields/checkbox.component';
10
- import { KlesFormListFieldComponent } from '../fields/list-field.component';
11
- import { KlesFormColorComponent } from '../fields/color.component';
12
- import { KlesFormChipComponent } from '../fields/chip.component';
13
- import { KlesFormGroupComponent } from '../fields/group.component';
14
- import { KlesFormIconComponent } from '../fields/icon.component';
15
- import { KlesFormSelectSearchComponent } from '../fields/select.search.component';
16
- import { KlesFormLineBreakComponent } from '../fields/line-break.component';
17
- import { KlesFormLinkComponent } from '../fields/link.component';
18
- import { KlesFormSelectionListComponent } from '../fields/selection-list.component';
19
- import { KlesFormButtonToogleGroupComponent } from '../fields/button-toogle-group.component';
20
- const componentMapper = {
21
- label: KlesFormLabelComponent,
22
- input: KlesFormInputComponent,
23
- button: KlesFormSubmitButtonComponent,
24
- select: KlesFormSelectComponent,
25
- date: KlesFormDateComponent,
26
- radio: KlesFormRadioComponent,
27
- checkbox: KlesFormCheckboxComponent,
28
- listField: KlesFormListFieldComponent,
29
- color: KlesFormColorComponent,
30
- chip: KlesFormChipComponent,
31
- group: KlesFormGroupComponent,
32
- icon: KlesFormIconComponent,
33
- selectSearch: KlesFormSelectSearchComponent,
34
- lineBreak: KlesFormLineBreakComponent,
35
- link: KlesFormLinkComponent,
36
- selectionList: KlesFormSelectionListComponent,
37
- buttonToogleGroup: KlesFormButtonToogleGroupComponent
38
- };
39
- let KlesDynamicFieldDirective = class KlesDynamicFieldDirective {
40
- constructor(resolver, container) {
41
- this.resolver = resolver;
42
- this.container = container;
43
- }
44
- ngOnDestroy() {
45
- if (this.componentRef)
46
- this.componentRef.destroy();
47
- }
48
- ngOnInit() {
49
- this.buildComponent();
50
- }
51
- ngOnChanges(changes) {
52
- if (changes.group) {
53
- this.group = changes.group.currentValue;
54
- }
55
- if (changes.field) {
56
- if (changes.field.previousValue && changes.field.currentValue.component !== changes.field.previousValue.component) {
57
- this.field = changes.field.currentValue;
58
- this.buildComponent();
59
- }
60
- else {
61
- this.field = changes.field.currentValue;
62
- }
63
- }
64
- }
65
- buildComponent() {
66
- const factory = this.resolver.resolveComponentFactory(this.field.component || componentMapper[this.field.type]);
67
- if (this.componentRef)
68
- this.componentRef.destroy();
69
- this.componentRef = this.container.createComponent(factory);
70
- this.componentRef.instance.field = this.field;
71
- this.componentRef.instance.group = this.group;
72
- this.componentRef.instance.siblingFields = this.siblingFields;
73
- }
74
- };
75
- KlesDynamicFieldDirective.ctorParameters = () => [
76
- { type: ComponentFactoryResolver },
77
- { type: ViewContainerRef }
78
- ];
79
- __decorate([
80
- Input()
81
- ], KlesDynamicFieldDirective.prototype, "field", void 0);
82
- __decorate([
83
- Input()
84
- ], KlesDynamicFieldDirective.prototype, "group", void 0);
85
- __decorate([
86
- Input()
87
- ], KlesDynamicFieldDirective.prototype, "siblingFields", void 0);
88
- KlesDynamicFieldDirective = __decorate([
89
- Directive({
90
- selector: '[klesDynamicField]'
91
- })
92
- ], KlesDynamicFieldDirective);
93
- export { KlesDynamicFieldDirective };
94
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1maWVsZC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AM2tsZXMva2xlcy1tYXRlcmlhbC1keW5hbWljZm9ybXMvIiwic291cmNlcyI6WyJsaWIvZGlyZWN0aXZlL2R5bmFtaWMtZmllbGQuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsd0JBQXdCLEVBQUUsZ0JBQWdCLEVBQUUsWUFBWSxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsYUFBYSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUk5SixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUNsRixPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNyRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNuRSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUN6RSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUM1RSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNuRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNuRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FB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QUFDO0NBQ0osQ0FBQTs7WUFuQ21DLHdCQUF3QjtZQUMvQixnQkFBZ0I7O0FBUGhDO0lBQVIsS0FBSyxFQUFFO3dEQUF5QjtBQUN4QjtJQUFSLEtBQUssRUFBRTt3REFBa0I7QUFDakI7SUFBUixLQUFLLEVBQUU7Z0VBQW1DO0FBSGxDLHlCQUF5QjtJQUhyQyxTQUFTLENBQUM7UUFDUCxRQUFRLEVBQUUsb0JBQW9CO0tBQ2pDLENBQUM7R0FDVyx5QkFBeUIsQ0EwQ3JDO1NBMUNZLHlCQUF5QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgSW5wdXQsIE9uSW5pdCwgQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLCBWaWV3Q29udGFpbmVyUmVmLCBDb21wb25lbnRSZWYsIFR5cGUsIE9uQ2hhbmdlcywgU2ltcGxlQ2hhbmdlcywgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5pbXBvcnQgeyBGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IElLbGVzRmllbGRDb25maWcgfSBmcm9tICcuLi9pbnRlcmZhY2VzL2ZpZWxkLmNvbmZpZy5pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBLbGVzRm9ybUxhYmVsQ29tcG9uZW50IH0gZnJvbSAnLi4vZmllbGRzL2xhYmVsLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEtsZXNGb3JtSW5wdXRDb21wb25lbnQgfSBmcm9tICcuLi9maWVsZHMvaW5wdXQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgS2xlc0Zvcm1TdWJtaXRCdXR0b25Db21wb25lbnQgfSBmcm9tICcuLi9maWVsZHMvYnV0dG9uLXN1Ym1pdC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBLbGVzRm9ybVNlbGVjdENvbXBvbmVudCB9IGZyb20gJy4uL2ZpZWxkcy9zZWxlY3QuY29tcG9uZW50JztcclxuaW1wb3J0IHsgS2xlc0Zvcm1EYXRlQ29tcG9uZW50IH0gZnJvbSAnLi4vZmllbGRzL2RhdGUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgS2xlc0Zvcm1SYWRpb0NvbXBvbmVudCB9IGZyb20gJy4uL2ZpZWxkcy9yYWRpby5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBLbGVzRm9ybUNoZWNrYm94Q29tcG9uZW50IH0gZnJvbSAnLi4vZmllbGRzL2NoZWNrYm94LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEtsZXNGb3JtTGlzdEZpZWxkQ29tcG9uZW50IH0gZnJvbSAnLi4vZmllbGRzL2xpc3QtZmllbGQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgS2xlc0Zvcm1Db2xvckNvbXBvbmVudCB9IGZyb20gJy4uL2ZpZWxkcy9jb2xvci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBLbGVzRm9ybUNoaXBDb21wb25lbnQgfSBmcm9tICcuLi9maWVsZHMvY2hpcC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBLbGVzRm9ybUdyb3VwQ29tcG9uZW50IH0gZnJvbSAnLi4vZmllbGRzL2dyb3VwLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEtsZXNGb3JtSWNvbkNvbXBvbmVudCB9IGZyb20gJy4uL2ZpZWxkcy9pY29uLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEtsZXNGb3JtU2VsZWN0U2VhcmNoQ29tcG9uZW50IH0gZnJvbSAnLi4vZmllbGRzL3NlbGVjdC5zZWFyY2guY29tcG9uZW50JztcclxuaW1wb3J0IHsgS2xlc0Zvcm1MaW5lQnJlYWtDb21wb25lbnQgfSBmcm9tICcuLi9maWVsZHMvbGluZS1icmVhay5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBLbGVzRm9ybUxpbmtDb21wb25lbnQgfSBmcm9tICcuLi9maWVsZHMvbGluay5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBLbGVzRm9ybVNlbGVjdGlvbkxpc3RDb21wb25lbnQgfSBmcm9tICcuLi9maWVsZHMvc2VsZWN0aW9uLWxpc3QuY29tcG9uZW50JztcclxuaW1wb3J0IHsgS2xlc0Zvcm1CdXR0b25Ub29nbGVHcm91cENvbXBvbmVudCB9IGZyb20gJy4uL2ZpZWxkcy9idXR0b24tdG9vZ2xlLWdyb3VwLmNvbXBvbmVudCc7XHJcblxyXG5jb25zdCBjb21wb25lbnRNYXBwZXIgPSB7XHJcbiAgICBsYWJlbDogS2xlc0Zvcm1MYWJlbENvbXBvbmVudCxcclxuICAgIGlucHV0OiBLbGVzRm9ybUlucHV0Q29tcG9uZW50LFxyXG4gICAgYnV0dG9uOiBLbGVzRm9ybVN1Ym1pdEJ1dHRvbkNvbXBvbmVudCxcclxuICAgIHNlbGVjdDogS2xlc0Zvcm1TZWxlY3RDb21wb25lbnQsXHJcbiAgICBkYXRlOiBLbGVzRm9ybURhdGVDb21wb25lbnQsXHJcbiAgICByYWRpbzogS2xlc0Zvcm1SYWRpb0NvbXBvbmVudCxcclxuICAgIGNoZWNrYm94OiBLbGVzRm9ybUNoZWNrYm94Q29tcG9uZW50LFxyXG4gICAgbGlzdEZpZWxkOiBLbGVzRm9ybUxpc3RGaWVsZENvbXBvbmVudCxcclxuICAgIGNvbG9yOiBLbGVzRm9ybUNvbG9yQ29tcG9uZW50LFxyXG4gICAgY2hpcDogS2xlc0Zvcm1DaGlwQ29tcG9uZW50LFxyXG4gICAgZ3JvdXA6IEtsZXNGb3JtR3JvdXBDb21wb25lbnQsXHJcbiAgICBpY29uOiBLbGVzRm9ybUljb25Db21wb25lbnQsXHJcbiAgICBzZWxlY3RTZWFyY2g6IEtsZXNGb3JtU2VsZWN0U2VhcmNoQ29tcG9uZW50LFxyXG4gICAgbGluZUJyZWFrOiBLbGVzRm9ybUxpbmVCcmVha0NvbXBvbmVudCxcclxuICAgIGxpbms6IEtsZXNGb3JtTGlua0NvbXBvbmVudCxcclxuICAgIHNlbGVjdGlvbkxpc3Q6IEtsZXNGb3JtU2VsZWN0aW9uTGlzdENvbXBvbmVudCxcclxuICAgIGJ1dHRvblRvb2dsZUdyb3VwOiBLbGVzRm9ybUJ1dHRvblRvb2dsZUdyb3VwQ29tcG9uZW50XHJcbn07XHJcblxyXG5ARGlyZWN0aXZlKHtcclxuICAgIHNlbGVjdG9yOiAnW2tsZXNEeW5hbWljRmllbGRdJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgS2xlc0R5bmFtaWNGaWVsZERpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3kge1xyXG4gICAgQElucHV0KCkgZmllbGQ6IElLbGVzRmllbGRDb25maWc7XHJcbiAgICBASW5wdXQoKSBncm91cDogRm9ybUdyb3VwO1xyXG4gICAgQElucHV0KCkgc2libGluZ0ZpZWxkczogSUtsZXNGaWVsZENvbmZpZ1tdO1xyXG5cclxuICAgIGNvbXBvbmVudFJlZjogQ29tcG9uZW50UmVmPGFueT47XHJcblxyXG4gICAgY29uc3RydWN0b3IocHJvdGVjdGVkIHJlc29sdmVyOiBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsXHJcbiAgICAgICAgcHJvdGVjdGVkIGNvbnRhaW5lcjogVmlld0NvbnRhaW5lclJlZikgeyB9XHJcblxyXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKHRoaXMuY29tcG9uZW50UmVmKSB0aGlzLmNvbXBvbmVudFJlZi5kZXN0cm95KCk7XHJcbiAgICB9XHJcblxyXG4gICAgbmdPbkluaXQoKSB7XHJcbiAgICAgICAgdGhpcy5idWlsZENvbXBvbmVudCgpO1xyXG4gICAgfVxyXG5cclxuICAgIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcclxuICAgICAgICBpZiAoY2hhbmdlcy5ncm91cCkge1xyXG4gICAgICAgICAgICB0aGlzLmdyb3VwID0gY2hhbmdlcy5ncm91cC5jdXJyZW50VmFsdWU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChjaGFuZ2VzLmZpZWxkKSB7XHJcbiAgICAgICAgICAgIGlmIChjaGFuZ2VzLmZpZWxkLnByZXZpb3VzVmFsdWUgJiYgY2hhbmdlcy5maWVsZC5jdXJyZW50VmFsdWUuY29tcG9uZW50ICE9PSBjaGFuZ2VzLmZpZWxkLnByZXZpb3VzVmFsdWUuY29tcG9uZW50KSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmZpZWxkID0gY2hhbmdlcy5maWVsZC5jdXJyZW50VmFsdWU7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmJ1aWxkQ29tcG9uZW50KCk7XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmZpZWxkID0gY2hhbmdlcy5maWVsZC5jdXJyZW50VmFsdWU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgYnVpbGRDb21wb25lbnQoKSB7XHJcbiAgICAgICAgY29uc3QgZmFjdG9yeSA9IHRoaXMucmVzb2x2ZXIucmVzb2x2ZUNvbXBvbmVudEZhY3RvcnkoXHJcbiAgICAgICAgICAgIHRoaXMuZmllbGQuY29tcG9uZW50IHx8IGNvbXBvbmVudE1hcHBlclt0aGlzLmZpZWxkLnR5cGVdXHJcbiAgICAgICAgKTtcclxuICAgICAgICBpZiAodGhpcy5jb21wb25lbnRSZWYpIHRoaXMuY29tcG9uZW50UmVmLmRlc3Ryb3koKTtcclxuICAgICAgICB0aGlzLmNvbXBvbmVudFJlZiA9IHRoaXMuY29udGFpbmVyLmNyZWF0ZUNvbXBvbmVudChmYWN0b3J5KTtcclxuICAgICAgICB0aGlzLmNvbXBvbmVudFJlZi5pbnN0YW5jZS5maWVsZCA9IHRoaXMuZmllbGQ7XHJcbiAgICAgICAgdGhpcy5jb21wb25lbnRSZWYuaW5zdGFuY2UuZ3JvdXAgPSB0aGlzLmdyb3VwO1xyXG4gICAgICAgIHRoaXMuY29tcG9uZW50UmVmLmluc3RhbmNlLnNpYmxpbmdGaWVsZHMgPSB0aGlzLnNpYmxpbmdGaWVsZHM7XHJcbiAgICB9XHJcbn1cclxuIl19
1
+ import { __decorate } from "tslib";
2
+ import { Directive, Input, OnInit, ComponentFactoryResolver, ViewContainerRef, ComponentRef, Type, OnChanges, SimpleChanges, OnDestroy } from '@angular/core';
3
+ import { KlesFormLabelComponent } from '../fields/label.component';
4
+ import { KlesFormInputComponent } from '../fields/input.component';
5
+ import { KlesFormSubmitButtonComponent } from '../fields/button-submit.component';
6
+ import { KlesFormSelectComponent } from '../fields/select.component';
7
+ import { KlesFormDateComponent } from '../fields/date.component';
8
+ import { KlesFormRadioComponent } from '../fields/radio.component';
9
+ import { KlesFormCheckboxComponent } from '../fields/checkbox.component';
10
+ import { KlesFormListFieldComponent } from '../fields/list-field.component';
11
+ import { KlesFormColorComponent } from '../fields/color.component';
12
+ import { KlesFormChipComponent } from '../fields/chip.component';
13
+ import { KlesFormGroupComponent } from '../fields/group.component';
14
+ import { KlesFormIconComponent } from '../fields/icon.component';
15
+ import { KlesFormSelectSearchComponent } from '../fields/select.search.component';
16
+ import { KlesFormLineBreakComponent } from '../fields/line-break.component';
17
+ import { KlesFormLinkComponent } from '../fields/link.component';
18
+ import { KlesFormSelectionListComponent } from '../fields/selection-list.component';
19
+ import { KlesFormButtonToogleGroupComponent } from '../fields/button-toogle-group.component';
20
+ const componentMapper = {
21
+ label: KlesFormLabelComponent,
22
+ input: KlesFormInputComponent,
23
+ button: KlesFormSubmitButtonComponent,
24
+ select: KlesFormSelectComponent,
25
+ date: KlesFormDateComponent,
26
+ radio: KlesFormRadioComponent,
27
+ checkbox: KlesFormCheckboxComponent,
28
+ listField: KlesFormListFieldComponent,
29
+ color: KlesFormColorComponent,
30
+ chip: KlesFormChipComponent,
31
+ group: KlesFormGroupComponent,
32
+ icon: KlesFormIconComponent,
33
+ selectSearch: KlesFormSelectSearchComponent,
34
+ lineBreak: KlesFormLineBreakComponent,
35
+ link: KlesFormLinkComponent,
36
+ selectionList: KlesFormSelectionListComponent,
37
+ buttonToogleGroup: KlesFormButtonToogleGroupComponent
38
+ };
39
+ let KlesDynamicFieldDirective = class KlesDynamicFieldDirective {
40
+ constructor(resolver, container) {
41
+ this.resolver = resolver;
42
+ this.container = container;
43
+ }
44
+ ngOnDestroy() {
45
+ if (this.componentRef)
46
+ this.componentRef.destroy();
47
+ }
48
+ ngOnInit() {
49
+ this.buildComponent();
50
+ }
51
+ ngOnChanges(changes) {
52
+ if (changes.group) {
53
+ this.group = changes.group.currentValue;
54
+ }
55
+ if (changes.field) {
56
+ if (changes.field.previousValue && changes.field.currentValue.component !== changes.field.previousValue.component) {
57
+ this.field = changes.field.currentValue;
58
+ this.buildComponent();
59
+ }
60
+ else {
61
+ this.field = changes.field.currentValue;
62
+ }
63
+ }
64
+ }
65
+ buildComponent() {
66
+ const factory = this.resolver.resolveComponentFactory(this.field.component || componentMapper[this.field.type]);
67
+ if (this.componentRef)
68
+ this.componentRef.destroy();
69
+ this.componentRef = this.container.createComponent(factory);
70
+ this.componentRef.instance.field = this.field;
71
+ this.componentRef.instance.group = this.group;
72
+ this.componentRef.instance.siblingFields = this.siblingFields;
73
+ }
74
+ };
75
+ KlesDynamicFieldDirective.ctorParameters = () => [
76
+ { type: ComponentFactoryResolver },
77
+ { type: ViewContainerRef }
78
+ ];
79
+ __decorate([
80
+ Input()
81
+ ], KlesDynamicFieldDirective.prototype, "field", void 0);
82
+ __decorate([
83
+ Input()
84
+ ], KlesDynamicFieldDirective.prototype, "group", void 0);
85
+ __decorate([
86
+ Input()
87
+ ], KlesDynamicFieldDirective.prototype, "siblingFields", void 0);
88
+ KlesDynamicFieldDirective = __decorate([
89
+ Directive({
90
+ selector: '[klesDynamicField]'
91
+ })
92
+ ], KlesDynamicFieldDirective);
93
+ export { KlesDynamicFieldDirective };
94
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1maWVsZC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AM2tsZXMva2xlcy1tYXRlcmlhbC1keW5hbWljZm9ybXMvIiwic291cmNlcyI6WyJsaWIvZGlyZWN0aXZlL2R5bmFtaWMtZmllbGQuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsd0JBQXdCLEVBQUUsZ0JBQWdCLEVBQUUsWUFBWSxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsYUFBYSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUk5SixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUNsRixPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNyRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNuRSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUN6RSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUM1RSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNuRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNuRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FB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QUFDO0NBQ0osQ0FBQTs7WUFuQ21DLHdCQUF3QjtZQUMvQixnQkFBZ0I7O0FBUGhDO0lBQVIsS0FBSyxFQUFFO3dEQUF5QjtBQUN4QjtJQUFSLEtBQUssRUFBRTt3REFBa0I7QUFDakI7SUFBUixLQUFLLEVBQUU7Z0VBQW1DO0FBSGxDLHlCQUF5QjtJQUhyQyxTQUFTLENBQUM7UUFDUCxRQUFRLEVBQUUsb0JBQW9CO0tBQ2pDLENBQUM7R0FDVyx5QkFBeUIsQ0EwQ3JDO1NBMUNZLHlCQUF5QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgSW5wdXQsIE9uSW5pdCwgQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLCBWaWV3Q29udGFpbmVyUmVmLCBDb21wb25lbnRSZWYsIFR5cGUsIE9uQ2hhbmdlcywgU2ltcGxlQ2hhbmdlcywgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IElLbGVzRmllbGRDb25maWcgfSBmcm9tICcuLi9pbnRlcmZhY2VzL2ZpZWxkLmNvbmZpZy5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgS2xlc0Zvcm1MYWJlbENvbXBvbmVudCB9IGZyb20gJy4uL2ZpZWxkcy9sYWJlbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgS2xlc0Zvcm1JbnB1dENvbXBvbmVudCB9IGZyb20gJy4uL2ZpZWxkcy9pbnB1dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgS2xlc0Zvcm1TdWJtaXRCdXR0b25Db21wb25lbnQgfSBmcm9tICcuLi9maWVsZHMvYnV0dG9uLXN1Ym1pdC5jb21wb25lbnQnO1xuaW1wb3J0IHsgS2xlc0Zvcm1TZWxlY3RDb21wb25lbnQgfSBmcm9tICcuLi9maWVsZHMvc2VsZWN0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBLbGVzRm9ybURhdGVDb21wb25lbnQgfSBmcm9tICcuLi9maWVsZHMvZGF0ZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgS2xlc0Zvcm1SYWRpb0NvbXBvbmVudCB9IGZyb20gJy4uL2ZpZWxkcy9yYWRpby5jb21wb25lbnQnO1xuaW1wb3J0IHsgS2xlc0Zvcm1DaGVja2JveENvbXBvbmVudCB9IGZyb20gJy4uL2ZpZWxkcy9jaGVja2JveC5jb21wb25lbnQnO1xuaW1wb3J0IHsgS2xlc0Zvcm1MaXN0RmllbGRDb21wb25lbnQgfSBmcm9tICcuLi9maWVsZHMvbGlzdC1maWVsZC5jb21wb25lbnQnO1xuaW1wb3J0IHsgS2xlc0Zvcm1Db2xvckNvbXBvbmVudCB9IGZyb20gJy4uL2ZpZWxkcy9jb2xvci5jb21wb25lbnQnO1xuaW1wb3J0IHsgS2xlc0Zvcm1DaGlwQ29tcG9uZW50IH0gZnJvbSAnLi4vZmllbGRzL2NoaXAuY29tcG9uZW50JztcbmltcG9ydCB7IEtsZXNGb3JtR3JvdXBDb21wb25lbnQgfSBmcm9tICcuLi9maWVsZHMvZ3JvdXAuY29tcG9uZW50JztcbmltcG9ydCB7IEtsZXNGb3JtSWNvbkNvbXBvbmVudCB9IGZyb20gJy4uL2ZpZWxkcy9pY29uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBLbGVzRm9ybVNlbGVjdFNlYXJjaENvbXBvbmVudCB9IGZyb20gJy4uL2ZpZWxkcy9zZWxlY3Quc2VhcmNoLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBLbGVzRm9ybUxpbmVCcmVha0NvbXBvbmVudCB9IGZyb20gJy4uL2ZpZWxkcy9saW5lLWJyZWFrLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBLbGVzRm9ybUxpbmtDb21wb25lbnQgfSBmcm9tICcuLi9maWVsZHMvbGluay5jb21wb25lbnQnO1xuaW1wb3J0IHsgS2xlc0Zvcm1TZWxlY3Rpb25MaXN0Q29tcG9uZW50IH0gZnJvbSAnLi4vZmllbGRzL3NlbGVjdGlvbi1saXN0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBLbGVzRm9ybUJ1dHRvblRvb2dsZUdyb3VwQ29tcG9uZW50IH0gZnJvbSAnLi4vZmllbGRzL2J1dHRvbi10b29nbGUtZ3JvdXAuY29tcG9uZW50JztcblxuY29uc3QgY29tcG9uZW50TWFwcGVyID0ge1xuICAgIGxhYmVsOiBLbGVzRm9ybUxhYmVsQ29tcG9uZW50LFxuICAgIGlucHV0OiBLbGVzRm9ybUlucHV0Q29tcG9uZW50LFxuICAgIGJ1dHRvbjogS2xlc0Zvcm1TdWJtaXRCdXR0b25Db21wb25lbnQsXG4gICAgc2VsZWN0OiBLbGVzRm9ybVNlbGVjdENvbXBvbmVudCxcbiAgICBkYXRlOiBLbGVzRm9ybURhdGVDb21wb25lbnQsXG4gICAgcmFkaW86IEtsZXNGb3JtUmFkaW9Db21wb25lbnQsXG4gICAgY2hlY2tib3g6IEtsZXNGb3JtQ2hlY2tib3hDb21wb25lbnQsXG4gICAgbGlzdEZpZWxkOiBLbGVzRm9ybUxpc3RGaWVsZENvbXBvbmVudCxcbiAgICBjb2xvcjogS2xlc0Zvcm1Db2xvckNvbXBvbmVudCxcbiAgICBjaGlwOiBLbGVzRm9ybUNoaXBDb21wb25lbnQsXG4gICAgZ3JvdXA6IEtsZXNGb3JtR3JvdXBDb21wb25lbnQsXG4gICAgaWNvbjogS2xlc0Zvcm1JY29uQ29tcG9uZW50LFxuICAgIHNlbGVjdFNlYXJjaDogS2xlc0Zvcm1TZWxlY3RTZWFyY2hDb21wb25lbnQsXG4gICAgbGluZUJyZWFrOiBLbGVzRm9ybUxpbmVCcmVha0NvbXBvbmVudCxcbiAgICBsaW5rOiBLbGVzRm9ybUxpbmtDb21wb25lbnQsXG4gICAgc2VsZWN0aW9uTGlzdDogS2xlc0Zvcm1TZWxlY3Rpb25MaXN0Q29tcG9uZW50LFxuICAgIGJ1dHRvblRvb2dsZUdyb3VwOiBLbGVzRm9ybUJ1dHRvblRvb2dsZUdyb3VwQ29tcG9uZW50XG59O1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1trbGVzRHluYW1pY0ZpZWxkXSdcbn0pXG5leHBvcnQgY2xhc3MgS2xlc0R5bmFtaWNGaWVsZERpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3kge1xuICAgIEBJbnB1dCgpIGZpZWxkOiBJS2xlc0ZpZWxkQ29uZmlnO1xuICAgIEBJbnB1dCgpIGdyb3VwOiBGb3JtR3JvdXA7XG4gICAgQElucHV0KCkgc2libGluZ0ZpZWxkczogSUtsZXNGaWVsZENvbmZpZ1tdO1xuXG4gICAgY29tcG9uZW50UmVmOiBDb21wb25lbnRSZWY8YW55PjtcblxuICAgIGNvbnN0cnVjdG9yKHByb3RlY3RlZCByZXNvbHZlcjogQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLFxuICAgICAgICBwcm90ZWN0ZWQgY29udGFpbmVyOiBWaWV3Q29udGFpbmVyUmVmKSB7IH1cblxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5jb21wb25lbnRSZWYpIHRoaXMuY29tcG9uZW50UmVmLmRlc3Ryb3koKTtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpIHtcbiAgICAgICAgdGhpcy5idWlsZENvbXBvbmVudCgpO1xuICAgIH1cblxuICAgIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICAgICAgaWYgKGNoYW5nZXMuZ3JvdXApIHtcbiAgICAgICAgICAgIHRoaXMuZ3JvdXAgPSBjaGFuZ2VzLmdyb3VwLmN1cnJlbnRWYWx1ZTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoY2hhbmdlcy5maWVsZCkge1xuICAgICAgICAgICAgaWYgKGNoYW5nZXMuZmllbGQucHJldmlvdXNWYWx1ZSAmJiBjaGFuZ2VzLmZpZWxkLmN1cnJlbnRWYWx1ZS5jb21wb25lbnQgIT09IGNoYW5nZXMuZmllbGQucHJldmlvdXNWYWx1ZS5jb21wb25lbnQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmZpZWxkID0gY2hhbmdlcy5maWVsZC5jdXJyZW50VmFsdWU7XG4gICAgICAgICAgICAgICAgdGhpcy5idWlsZENvbXBvbmVudCgpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLmZpZWxkID0gY2hhbmdlcy5maWVsZC5jdXJyZW50VmFsdWU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBidWlsZENvbXBvbmVudCgpIHtcbiAgICAgICAgY29uc3QgZmFjdG9yeSA9IHRoaXMucmVzb2x2ZXIucmVzb2x2ZUNvbXBvbmVudEZhY3RvcnkoXG4gICAgICAgICAgICB0aGlzLmZpZWxkLmNvbXBvbmVudCB8fCBjb21wb25lbnRNYXBwZXJbdGhpcy5maWVsZC50eXBlXVxuICAgICAgICApO1xuICAgICAgICBpZiAodGhpcy5jb21wb25lbnRSZWYpIHRoaXMuY29tcG9uZW50UmVmLmRlc3Ryb3koKTtcbiAgICAgICAgdGhpcy5jb21wb25lbnRSZWYgPSB0aGlzLmNvbnRhaW5lci5jcmVhdGVDb21wb25lbnQoZmFjdG9yeSk7XG4gICAgICAgIHRoaXMuY29tcG9uZW50UmVmLmluc3RhbmNlLmZpZWxkID0gdGhpcy5maWVsZDtcbiAgICAgICAgdGhpcy5jb21wb25lbnRSZWYuaW5zdGFuY2UuZ3JvdXAgPSB0aGlzLmdyb3VwO1xuICAgICAgICB0aGlzLmNvbXBvbmVudFJlZi5pbnN0YW5jZS5zaWJsaW5nRmllbGRzID0gdGhpcy5zaWJsaW5nRmllbGRzO1xuICAgIH1cbn1cbiJdfQ==