mmhglobal-dynamicform 1.3.13 → 2.0.0-beta.2

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 (115) hide show
  1. package/esm2020/lib/animations/component-animations.mjs +12 -0
  2. package/esm2020/lib/components/buttonfieldbase.component.mjs +62 -0
  3. package/esm2020/lib/components/containerfieldbase.component.mjs +42 -0
  4. package/esm2020/lib/components/datalistingfieldbase.component.mjs +138 -0
  5. package/esm2020/lib/components/fieldbase.component.mjs +90 -0
  6. package/esm2020/lib/components/inputfieldbase.component.mjs +78 -0
  7. package/esm2020/lib/directives/scrollbar.theme.directive.mjs +13 -11
  8. package/esm2020/lib/embed-components/input-field-addons/input-field-addons.component.mjs +69 -0
  9. package/esm2020/lib/input-error-message/input-error-message.component.mjs +33 -0
  10. package/esm2020/lib/kcard/kcard.component.mjs +84 -0
  11. package/esm2020/lib/mmhglobal-dynamicform.module.mjs +53 -12
  12. package/esm2020/lib/pipe/htmlSanitize.pipe.mjs +18 -0
  13. package/esm2020/lib/services/component-error-handler.service.mjs +84 -0
  14. package/esm2020/lib/services/main.service.mjs +173 -73
  15. package/esm2020/lib/services/zcomponent.debug.service.mjs +17 -8
  16. package/esm2020/lib/services/zcomponent.service.mjs +133 -9
  17. package/esm2020/lib/uiappmenucontent/uiappmenucontent.component.mjs +15 -23
  18. package/esm2020/lib/uicontainer/uicontainer.component.mjs +2 -2
  19. package/esm2020/lib/uicontent/uicontent.component.mjs +21 -9
  20. package/esm2020/lib/uiheader/uiheader.component.mjs +61 -28
  21. package/esm2020/lib/uimenucontent/uimenucontent.component.mjs +3 -3
  22. package/esm2020/lib/uipage/uipage.component.mjs +41 -26
  23. package/esm2020/lib/uivalidationmessage/uivalidationmessage.component.mjs +2 -2
  24. package/esm2020/lib/zbullet/zbullet.component.mjs +3 -2
  25. package/esm2020/lib/zbuttons/zbuttons.component.mjs +45 -91
  26. package/esm2020/lib/zcard/zcard.component.mjs +13 -60
  27. package/esm2020/lib/zcheckbox/zcheckbox.component.mjs +14 -159
  28. package/esm2020/lib/zchip/zchip.component.mjs +34 -64
  29. package/esm2020/lib/zcodeeditor/zcodeeditor.component.mjs +4 -3
  30. package/esm2020/lib/zdaterange/zdaterange.component.mjs +3 -3
  31. package/esm2020/lib/zdatetime/zdatetime.component.mjs +22 -74
  32. package/esm2020/lib/zdiv/zdiv.component.mjs +63 -40
  33. package/esm2020/lib/zdiv/zdiv.pipe.mjs +2 -2
  34. package/esm2020/lib/zform/zform.component.mjs +9 -7
  35. package/esm2020/lib/zformcontrol/zformcontrol.component.mjs +5 -3
  36. package/esm2020/lib/zgauge/zgauge.component.mjs +34 -70
  37. package/esm2020/lib/zgrid/zgrid.binding.directive.mjs +32 -30
  38. package/esm2020/lib/zgrid/zgrid.component.mjs +246 -135
  39. package/esm2020/lib/zimg/zimg.component.mjs +44 -108
  40. package/esm2020/lib/zinput-container/zinput-container.component.mjs +63 -0
  41. package/esm2020/lib/zinput-container/zinput-container.pipe.mjs +120 -0
  42. package/esm2020/lib/zkcard/zkcard.component.mjs +2 -2
  43. package/esm2020/lib/zlabel/zlabel.component.mjs +18 -94
  44. package/esm2020/lib/zmfb/zmfb.component.mjs +70 -91
  45. package/esm2020/lib/zmodal/zmodal-mobile.component.mjs +15 -11
  46. package/esm2020/lib/zmodal/zmodal.component.mjs +14 -10
  47. package/esm2020/lib/znumeric/znumeric.component.mjs +18 -94
  48. package/esm2020/lib/zpostselectinput/zpostselectinput.component.mjs +35 -87
  49. package/esm2020/lib/zprogressbar/zprogressbar.component.mjs +59 -0
  50. package/esm2020/lib/zreport/zreport.component.mjs +25 -27
  51. package/esm2020/lib/zselectmultiple/zselectmultiple.component.mjs +39 -194
  52. package/esm2020/lib/ztab/ztab.component.mjs +17 -45
  53. package/esm2020/lib/ztab/ztab.pipe.mjs +6 -4
  54. package/esm2020/lib/ztext/ztext.component.mjs +20 -180
  55. package/esm2020/lib/ztextarea/ztextarea.component.mjs +23 -101
  56. package/esm2020/lib/ztexteditor/ztexteditor.component.mjs +3 -2
  57. package/esm2020/lib/ztree/ztree.component.mjs +25 -41
  58. package/esm2020/lib/ztreelist/ztreelist.component.mjs +104 -143
  59. package/esm2020/lib/zudf/zudf.component.mjs +12 -8
  60. package/esm2020/lib/zupload/zupload.component.mjs +18 -39
  61. package/esm2020/lib/zworkflowbuttons/zworkflowbuttons.component.mjs +45 -77
  62. package/esm2020/public-api.mjs +15 -2
  63. package/fesm2015/mmhglobal-dynamicform.mjs +4529 -4392
  64. package/fesm2015/mmhglobal-dynamicform.mjs.map +1 -1
  65. package/fesm2020/mmhglobal-dynamicform.mjs +4496 -4367
  66. package/fesm2020/mmhglobal-dynamicform.mjs.map +1 -1
  67. package/lib/animations/component-animations.d.ts +1 -0
  68. package/lib/components/buttonfieldbase.component.d.ts +18 -0
  69. package/lib/components/containerfieldbase.component.d.ts +19 -0
  70. package/lib/components/datalistingfieldbase.component.d.ts +30 -0
  71. package/lib/components/fieldbase.component.d.ts +30 -0
  72. package/lib/components/inputfieldbase.component.d.ts +19 -0
  73. package/lib/embed-components/input-field-addons/input-field-addons.component.d.ts +16 -0
  74. package/lib/input-error-message/input-error-message.component.d.ts +15 -0
  75. package/lib/kcard/kcard.component.d.ts +21 -0
  76. package/lib/mmhglobal-dynamicform.module.d.ts +40 -32
  77. package/lib/pipe/htmlSanitize.pipe.d.ts +10 -0
  78. package/lib/services/component-error-handler.service.d.ts +14 -0
  79. package/lib/services/main.service.d.ts +23 -5
  80. package/lib/services/zcomponent.debug.service.d.ts +4 -1
  81. package/lib/services/zcomponent.service.d.ts +20 -4
  82. package/lib/uiappmenucontent/uiappmenucontent.component.d.ts +4 -3
  83. package/lib/uicontent/uicontent.component.d.ts +6 -2
  84. package/lib/uiheader/uiheader.component.d.ts +13 -9
  85. package/lib/zbuttons/zbuttons.component.d.ts +11 -20
  86. package/lib/zcard/zcard.component.d.ts +6 -20
  87. package/lib/zcheckbox/zcheckbox.component.d.ts +6 -36
  88. package/lib/zchip/zchip.component.d.ts +7 -16
  89. package/lib/zdatetime/zdatetime.component.d.ts +6 -14
  90. package/lib/zdiv/zdiv.component.d.ts +11 -18
  91. package/lib/zformcontrol/zformcontrol.component.d.ts +2 -1
  92. package/lib/zgauge/zgauge.component.d.ts +11 -14
  93. package/lib/zgrid/zgrid.binding.directive.d.ts +4 -2
  94. package/lib/zgrid/zgrid.component.d.ts +26 -27
  95. package/lib/zimg/zimg.component.d.ts +12 -31
  96. package/lib/zinput-container/zinput-container.component.d.ts +26 -0
  97. package/lib/zinput-container/zinput-container.pipe.d.ts +20 -0
  98. package/lib/zlabel/zlabel.component.d.ts +6 -25
  99. package/lib/zmfb/zmfb.component.d.ts +12 -20
  100. package/lib/zmodal/zmodal-mobile.component.d.ts +4 -1
  101. package/lib/zmodal/zmodal.component.d.ts +4 -1
  102. package/lib/znumeric/znumeric.component.d.ts +7 -29
  103. package/lib/zpostselectinput/zpostselectinput.component.d.ts +9 -19
  104. package/lib/zprogressbar/zprogressbar.component.d.ts +28 -0
  105. package/lib/zreport/zreport.component.d.ts +8 -11
  106. package/lib/zselectmultiple/zselectmultiple.component.d.ts +10 -35
  107. package/lib/ztab/ztab.component.d.ts +6 -19
  108. package/lib/ztext/ztext.component.d.ts +7 -35
  109. package/lib/ztextarea/ztextarea.component.d.ts +9 -27
  110. package/lib/ztree/ztree.component.d.ts +6 -12
  111. package/lib/ztreelist/ztreelist.component.d.ts +17 -27
  112. package/lib/zupload/zupload.component.d.ts +6 -13
  113. package/lib/zworkflowbuttons/zworkflowbuttons.component.d.ts +6 -20
  114. package/package.json +1 -1
  115. package/public-api.d.ts +14 -1
@@ -1,121 +1,57 @@
1
1
  /********** Angular **********/
2
- import { Component, Input } from "@angular/core";
3
- import { Validators } from '@angular/forms';
2
+ import { Component } from "@angular/core";
3
+ /********** Ionic **********/
4
+ /********** Plugin **********/
5
+ import { from, switchMap, of } from "rxjs";
4
6
  /********** Component & Service **********/
5
- import { ZComponentHelper, ZComponentProperties } from "mmhglobal-zcore";
7
+ import { ZComponentHelper } from "mmhglobal-zcore";
8
+ import { InputFieldBase } from "../components/inputfieldbase.component";
6
9
  import * as i0 from "@angular/core";
7
- import * as i1 from "mmhglobal-zcore";
8
- import * as i2 from "@ionic/angular";
9
- import * as i3 from "@angular/common";
10
- export class ZimgComponent {
11
- constructor(attachmentService) {
10
+ import * as i1 from "../services/zcomponent.service";
11
+ import * as i2 from "mmhglobal-zcore";
12
+ import * as i3 from "@angular/forms";
13
+ import * as i4 from "@angular/common";
14
+ export class ZimgComponent extends InputFieldBase {
15
+ constructor(compService, attachmentService) {
16
+ super(compService);
12
17
  this.attachmentService = attachmentService;
13
- this.imgWidth = null;
14
- this.imgHeight = null;
15
- this.imgSrc = null;
16
- this.randomNumber = Math.random();
17
- this.componentProperties = new ZComponentProperties();
18
- this.setEnable = (status) => {
19
- this.componentProperties.isReadOnly = !status;
20
- };
21
- this.setVisible = (status) => {
22
- this.componentProperties.isVisible = status;
23
- this.data.Visible = status;
24
- };
25
- this.setRequire = (status) => {
26
- this.componentProperties.isRequired = status;
27
- ZComponentHelper.changeValidator(status, this.group, this.data.Value, this.componentProperties, Validators.required);
28
- };
29
18
  }
30
- async ngOnInit() {
31
- ZComponentHelper.setComponentProperties(this);
32
- ZComponentHelper.registerComponent(this);
33
- if (this.data.Size && this.data.Size.toLowerCase().indexOf("x") !== -1) {
34
- const imgSize = this.data.Size.toLowerCase().split("x");
35
- this.imgWidth = imgSize[0];
36
- this.imgHeight = imgSize[1];
37
- }
38
- this.Guid = this.getGroupValue(this.data['Guid'], this.group); //this.data['Guid'];//this.getGroupValue(this.data['Guid'], this.group);
39
- this.FileName = this.getGroupValue(this.data['FileName'], this.group); //this.getGroupValue(this.data['FileName'], this.group);
40
- if (this.Guid != undefined && this.FileName != undefined) {
41
- let blobfile = await this.attachmentService.getImageBlob(this.FileName, this.Guid);
42
- this.Image = await this.attachmentService.convertBlobToBase64(blobfile);
43
- }
44
- // this.subscription = this.group.zModel$
45
- // .asObservable()
46
- // .subscribe((zmodel: any) => {
47
- // this.onDataSourceChange(zmodel);
48
- // });
19
+ ngOnInit() {
20
+ super.setupInnerField();
21
+ this.setImageSource();
49
22
  }
50
- ngOnDestroy() {
51
- if (this.subscription) {
52
- this.subscription.unsubscribe();
53
- }
23
+ setImageSource() {
24
+ this.getImageSource().subscribe(imgSource => {
25
+ this.imgSource = imgSource;
26
+ });
54
27
  }
55
- onDataSourceChange() {
56
- const value = this.getGroupValue(this.data.Value, this.group);
57
- const sourceUrl = this.getGroupValue(this.data.SourceUrl, this.group);
58
- if (value && sourceUrl) {
59
- // this.imgSrc =
60
- // this.imgSourceAvailable = true;
61
- return (sourceUrl +
62
- "?id=" +
63
- value +
64
- "&size=" +
65
- this.data.Size
66
- // + "&r=" + this.randomNumber
67
- );
68
- // console.log("image source: ", this.imgSrc);
69
- }
70
- else {
71
- // this.imgSourceAvailable = false;
72
- }
28
+ getImageSource() {
29
+ this.setImageSize();
30
+ if (this.data.SourceUrl) {
31
+ return of(ZComponentHelper.getGroupValue(this.data.SourceUrl, this.group));
32
+ }
33
+ const guid = ZComponentHelper.getGroupValue(this.data['Guid'], this.group);
34
+ const fileName = ZComponentHelper.getGroupValue(this.data['FileName'], this.group);
35
+ if (guid && fileName) {
36
+ return from(this.attachmentService.getImageBlob(fileName, guid)).pipe(switchMap(blobfile => {
37
+ return from(this.attachmentService.convertBlobToBase64(blobfile));
38
+ }));
39
+ }
40
+ return of({});
73
41
  }
74
- getGroupValue(value, group) {
75
- return ZComponentHelper.getGroupValue(value, group);
76
- }
77
- // getValue(data: string) {
78
- // let gArray: Array<string>;
79
- // if (data) {
80
- // gArray = data.split(".");
81
- // if (gArray.length === 3 && data.startsWith("group.zModel")) {
82
- // return this.group.zModel[gArray[2]];
83
- // } else if (gArray.length === 2 && data.startsWith("group.")) {
84
- // return this.group[gArray[1]];
85
- // }
86
- // }
87
- // return null;
88
- // }
89
- getImgStyle() { }
90
- onIconClick() {
91
- const iconClick = ZComponentHelper.getGroupEvalValue.call(this, this.data.OnItemClick, this.group);
92
- if (typeof iconClick === 'function') {
93
- return iconClick();
94
- }
95
- if (!iconClick) {
96
- console.warn('ZImg OnItemClick property is invalid: ', iconClick);
97
- return;
98
- }
99
- if (typeof iconClick !== 'function') {
100
- console.warn('ZImg OnItemClick property is not a function: ', iconClick);
101
- return;
42
+ setImageSize() {
43
+ if (this.data.Size && this.data.Size.toLowerCase().indexOf("x") !== -1) {
44
+ const imgSize = this.data.Size.toLowerCase().split("x");
45
+ const styleExpression = `width:${imgSize[0]}px;height:${imgSize[1]}px;`;
46
+ this.componentProperties.style.style += styleExpression;
47
+ this.componentProperties.style.style1 += styleExpression;
102
48
  }
103
49
  }
104
- getIconName() {
105
- const iconName = ZComponentHelper.getGroupEvalValue.call(this, this.data.Icon, this.group);
106
- return iconName;
107
- }
108
50
  }
109
- ZimgComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ZimgComponent, deps: [{ token: i1.AttachmentService }], target: i0.ɵɵFactoryTarget.Component });
110
- ZimgComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: ZimgComponent, selector: "app-zimg", inputs: { data: "data", group: "group", form: "form" }, ngImport: i0, template: "<ion-item>\r\n <ion-label *ngIf=\"data.ShowLabel === undefined || data.ShowLabel\" position=\"stacked\">{{data.Label}} <ion-text\r\n *ngIf=\"(!!componentProperties.isRequiredField ? group[componentProperties.isRequiredField] : componentProperties.isRequired)\" color=\"danger\">*</ion-text>\r\n </ion-label>\r\n <img *ngIf=\"!!getGroupValue(data.Value, group)\" [src]=\"onDataSourceChange()\" [width]=\"imgWidth\" [height]=\"imgHeight\" style=\"border-radius: 50%; margin: 5px auto\" />\r\n <img *ngIf=\"this.Guid !==undefined && this.Guid !==FileName\" [src]=\"this.Image\" [width]=\"imgWidth\" [height]=\"imgHeight\" style=\"border-radius: 50%; margin: 5px auto\" />\r\n \r\n <div *ngIf=\"!getGroupValue(data.Value, group)\" (click)=\"onIconClick()\">\r\n <ion-icon name=\"getIconName()\" style=\"zoom:4.0;\">\r\n </ion-icon>\r\n </div>\r\n</ion-item>", styles: [""], components: [{ type: i2.IonItem, selector: "ion-item", inputs: ["button", "color", "counter", "counterFormatter", "detail", "detailIcon", "disabled", "download", "fill", "href", "lines", "mode", "rel", "routerAnimation", "routerDirection", "shape", "target", "type"] }, { type: i2.IonLabel, selector: "ion-label", inputs: ["color", "mode", "position"] }, { type: i2.IonText, selector: "ion-text", inputs: ["color", "mode"] }, { type: i2.IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
51
+ ZimgComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ZimgComponent, deps: [{ token: i1.ZComponentService }, { token: i2.AttachmentService }], target: i0.ɵɵFactoryTarget.Component });
52
+ ZimgComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: ZimgComponent, selector: "app-zimg", usesInheritance: true, ngImport: i0, template: "<div [formGroup]=\"form\" class=\"zimg-container e1tag-style\" [style]=\"componentProperties.style.style\">\r\n <img *ngIf=\"imgSource\" class=\"e1tag-style1\" [src]=\"imgSource\" [style]=\"componentProperties.style.style1\"\r\n (click)=\"onItemClick($event)\" />\r\n</div>\r\n", styles: [""], directives: [{ type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
111
53
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ZimgComponent, decorators: [{
112
54
  type: Component,
113
- args: [{ selector: "app-zimg", template: "<ion-item>\r\n <ion-label *ngIf=\"data.ShowLabel === undefined || data.ShowLabel\" position=\"stacked\">{{data.Label}} <ion-text\r\n *ngIf=\"(!!componentProperties.isRequiredField ? group[componentProperties.isRequiredField] : componentProperties.isRequired)\" color=\"danger\">*</ion-text>\r\n </ion-label>\r\n <img *ngIf=\"!!getGroupValue(data.Value, group)\" [src]=\"onDataSourceChange()\" [width]=\"imgWidth\" [height]=\"imgHeight\" style=\"border-radius: 50%; margin: 5px auto\" />\r\n <img *ngIf=\"this.Guid !==undefined && this.Guid !==FileName\" [src]=\"this.Image\" [width]=\"imgWidth\" [height]=\"imgHeight\" style=\"border-radius: 50%; margin: 5px auto\" />\r\n \r\n <div *ngIf=\"!getGroupValue(data.Value, group)\" (click)=\"onIconClick()\">\r\n <ion-icon name=\"getIconName()\" style=\"zoom:4.0;\">\r\n </ion-icon>\r\n </div>\r\n</ion-item>", styles: [""] }]
114
- }], ctorParameters: function () { return [{ type: i1.AttachmentService }]; }, propDecorators: { data: [{
115
- type: Input
116
- }], group: [{
117
- type: Input
118
- }], form: [{
119
- type: Input
120
- }] } });
121
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiemltZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tbWhnbG9iYWwtZHluYW1pY2Zvcm0vc3JjL2xpYi96aW1nL3ppbWcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbW1oZ2xvYmFsLWR5bmFtaWNmb3JtL3NyYy9saWIvemltZy96aW1nLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLCtCQUErQjtBQUMvQixPQUFPLEVBQUUsU0FBUyxFQUFVLEtBQUssRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUNwRSxPQUFPLEVBQWEsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFPdkQsMkNBQTJDO0FBQzNDLE9BQU8sRUFDTyxnQkFBZ0IsRUFBa0Isb0JBQW9CLEVBRW5FLE1BQU0saUJBQWlCLENBQUM7Ozs7O0FBUXpCLE1BQU0sT0FBTyxhQUFhO0lBZXhCLFlBQW9CLGlCQUFvQztRQUFwQyxzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBWHhELGFBQVEsR0FBVyxJQUFJLENBQUM7UUFDeEIsY0FBUyxHQUFXLElBQUksQ0FBQztRQUN6QixXQUFNLEdBQVcsSUFBSSxDQUFDO1FBQ3RCLGlCQUFZLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQzdCLHdCQUFtQixHQUFHLElBQUksb0JBQW9CLEVBQUUsQ0FBQztRQTZHMUMsY0FBUyxHQUFHLENBQUMsTUFBZSxFQUFFLEVBQUU7WUFDckMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLFVBQVUsR0FBRyxDQUFDLE1BQU0sQ0FBQztRQUNoRCxDQUFDLENBQUE7UUFFTSxlQUFVLEdBQUcsQ0FBQyxNQUFlLEVBQUUsRUFBRTtZQUN0QyxJQUFJLENBQUMsbUJBQW1CLENBQUMsU0FBUyxHQUFHLE1BQU0sQ0FBQztZQUM1QyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUM7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QVosS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiLyoqKioqKioqKiogQW5ndWxhciAqKioqKioqKioqL1xyXG5pbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgSW5wdXQsIE9uRGVzdHJveSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IEZvcm1Hcm91cCwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuXHJcbi8qKioqKioqKioqIElvbmljICoqKioqKioqKiovXHJcblxyXG4vKioqKioqKioqKiBQbHVnaW4gKioqKioqKioqKi9cclxuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSBcInJ4anNcIjtcclxuXHJcbi8qKioqKioqKioqIENvbXBvbmVudCAmIFNlcnZpY2UgKioqKioqKioqKi9cclxuaW1wb3J0IHtcclxuICBaQ29tcG9uZW50LCBaQ29tcG9uZW50SGVscGVyLCBaRmllbGQsIFpHcm91cCwgWkNvbXBvbmVudFByb3BlcnRpZXMsXHJcbiAgV2ViQXBpU2VydmljZSwgQXR0YWNobWVudFNlcnZpY2VcclxufSBmcm9tIFwibW1oZ2xvYmFsLXpjb3JlXCI7XHJcblxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6IFwiYXBwLXppbWdcIixcclxuICB0ZW1wbGF0ZVVybDogXCIuL3ppbWcuY29tcG9uZW50Lmh0bWxcIixcclxuICBzdHlsZVVybHM6IFtcIi4vemltZy5jb21wb25lbnQuc2Nzc1wiXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgWmltZ0NvbXBvbmVudCBpbXBsZW1lbnRzIFpDb21wb25lbnQsIE9uSW5pdCwgT25EZXN0cm95IHtcclxuICBASW5wdXQoKSBkYXRhOiBaRmllbGQ7XHJcbiAgQElucHV0KCkgZ3JvdXA6IFpHcm91cDtcclxuICBASW5wdXQoKSBmb3JtOiBGb3JtR3JvdXA7XHJcbiAgaW1nV2lkdGg6IHN0cmluZyA9IG51bGw7XHJcbiAgaW1nSGVpZ2h0OiBzdHJpbmcgPSBudWxsO1xyXG4gIGltZ1NyYzogc3RyaW5nID0gbnVsbDtcclxuICByYW5kb21OdW1iZXIgPSBNYXRoLnJhbmRvbSgpO1xyXG4gIGNvbXBvbmVudFByb3BlcnRpZXMgPSBuZXcgWkNvbXBvbmVudFByb3BlcnRpZXMoKTtcclxuICAvLyBpbWdTb3VyY2VBdmFpbGFibGUgPSBmYWxzZTtcclxuICBzdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcclxuXHJcbiAgR3VpZDtcclxuICBGaWxlTmFtZTtcclxuICBJbWFnZTpzdHJpbmc7XHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBhdHRhY2htZW50U2VydmljZTogQXR0YWNobWVudFNlcnZpY2UpIHsgfVxyXG5cclxuICBhc3luYyBuZ09uSW5pdCgpIHtcclxuICAgIFpDb21wb25lbnRIZWxwZXIuc2V0Q29tcG9uZW50UHJvcGVydGllcyh0aGlzKTtcclxuICAgIFpDb21wb25lbnRIZWxwZXIucmVnaXN0ZXJDb21wb25lbnQodGhpcyk7XHJcbiAgICBpZiAodGhpcy5kYXRhLlNpemUgJiYgdGhpcy5kYXRhLlNpemUudG9Mb3dlckNhc2UoKS5pbmRleE9mKFwieFwiKSAhPT0gLTEpIHtcclxuICAgICAgY29uc3QgaW1nU2l6ZSA9IHRoaXMuZGF0YS5TaXplLnRvTG93ZXJDYXNlKCkuc3BsaXQoXCJ4XCIpO1xyXG4gICAgICB0aGlzLmltZ1dpZHRoID0gaW1nU2l6ZVswXTtcclxuICAgICAgdGhpcy5pbWdIZWlnaHQgPSBpbWdTaXplWzFdO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuR3VpZCA9IHRoaXMuZ2V0R3JvdXBWYWx1ZSh0aGlzLmRhdGFbJ0d1aWQnXSwgdGhpcy5ncm91cCk7Ly90aGlzLmRhdGFbJ0d1aWQnXTsvL3RoaXMuZ2V0R3JvdXBWYWx1ZSh0aGlzLmRhdGFbJ0d1aWQnXSwgdGhpcy5ncm91cCk7XHJcbiAgICB0aGlzLkZpbGVOYW1lID0gICB0aGlzLmdldEdyb3VwVmFsdWUodGhpcy5kYXRhWydGaWxlTmFtZSddLCB0aGlzLmdyb3VwKTsvL3RoaXMuZ2V0R3JvdXBWYWx1ZSh0aGlzLmRhdGFbJ0ZpbGVOYW1lJ10sIHRoaXMuZ3JvdXApO1xyXG5cclxuICAgIGlmKHRoaXMuR3VpZCAhPSB1bmRlZmluZWQgJiYgIHRoaXMuRmlsZU5hbWUgIT0gdW5kZWZpbmVkKXtcclxuICAgICAgbGV0IGJsb2JmaWxlID0gYXdhaXQgdGhpcy5hdHRhY2htZW50U2VydmljZS5nZXRJbWFnZUJsb2IodGhpcy5GaWxlTmFtZSwgdGhpcy5HdWlkKTtcclxuICAgICAgdGhpcy5JbWFnZT0gYXdhaXQgdGhpcy5hdHRhY2htZW50U2VydmljZS5jb252ZXJ0QmxvYlRvQmFzZTY0KGJsb2JmaWxlKTtcclxuICAgIH1cclxuXHJcblxyXG5cclxuXHJcblxyXG4gICAgLy8gdGhpcy5zdWJzY3JpcHRpb24gPSB0aGlzLmdyb3VwLnpNb2RlbCRcclxuICAgIC8vICAgLmFzT2JzZXJ2YWJsZSgpXHJcbiAgICAvLyAgIC5zdWJzY3JpYmUoKHptb2RlbDogYW55KSA9PiB7XHJcbiAgICAvLyAgICAgdGhpcy5vbkRhdGFTb3VyY2VDaGFuZ2Uoem1vZGVsKTtcclxuICAgIC8vICAgfSk7XHJcbiAgfVxyXG5cclxuXHJcblxyXG5cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLnN1YnNjcmlwdGlvbikge1xyXG4gICAgICB0aGlzLnN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgb25EYXRhU291cmNlQ2hhbmdlKCkge1xyXG4gICAgY29uc3QgdmFsdWUgPSB0aGlzLmdldEdyb3VwVmFsdWUodGhpcy5kYXRhLlZhbHVlLCB0aGlzLmdyb3VwKTtcclxuICAgIGNvbnN0IHNvdXJjZVVybCA9IHRoaXMuZ2V0R3JvdXBWYWx1ZSh0aGlzLmRhdGEuU291cmNlVXJsLCB0aGlzLmdyb3VwKTtcclxuXHJcbiAgICBpZiAodmFsdWUgJiYgc291cmNlVXJsKSB7XHJcbiAgICAgIC8vIHRoaXMuaW1nU3JjID1cclxuICAgICAgLy8gdGhpcy5pbWdTb3VyY2VBdmFpbGFibGUgPSB0cnVlO1xyXG4gICAgICByZXR1cm4gKFxyXG4gICAgICAgIHNvdXJjZVVybCArXHJcbiAgICAgICAgXCI/aWQ9XCIgK1xyXG4gICAgICAgIHZhbHVlICtcclxuICAgICAgICBcIiZzaXplPVwiICtcclxuICAgICAgICB0aGlzLmRhdGEuU2l6ZVxyXG4gICAgICAgIC8vICsgXCImcj1cIiArIHRoaXMucmFuZG9tTnVtYmVyXHJcbiAgICAgICk7XHJcbiAgICAgIC8vIGNvbnNvbGUubG9nKFwiaW1hZ2Ugc291cmNlOiBcIiwgdGhpcy5pbWdTcmMpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgLy8gdGhpcy5pbWdTb3VyY2VBdmFpbGFibGUgPSBmYWxzZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGdldEdyb3VwVmFsdWUodmFsdWU6IHN0cmluZywgZ3JvdXA6IGFueSkge1xyXG4gICAgcmV0dXJuIFpDb21wb25lbnRIZWxwZXIuZ2V0R3JvdXBWYWx1ZSh2YWx1ZSwgZ3JvdXApO1xyXG4gIH1cclxuXHJcbiAgLy8gZ2V0VmFsdWUoZGF0YTogc3RyaW5nKSB7XHJcbiAgLy8gICBsZXQgZ0FycmF5OiBBcnJheTxzdHJpbmc+O1xyXG4gIC8vICAgaWYgKGRhdGEpIHtcclxuICAvLyAgICAgZ0FycmF5ID0gZGF0YS5zcGxpdChcIi5cIik7XHJcblxyXG4gIC8vICAgICBpZiAoZ0FycmF5Lmxlbmd0aCA9PT0gMyAmJiBkYXRhLnN0YXJ0c1dpdGgoXCJncm91cC56TW9kZWxcIikpIHtcclxuICAvLyAgICAgICByZXR1cm4gdGhpcy5ncm91cC56TW9kZWxbZ0FycmF5WzJdXTtcclxuICAvLyAgICAgfSBlbHNlIGlmIChnQXJyYXkubGVuZ3RoID09PSAyICYmIGRhdGEuc3RhcnRzV2l0aChcImdyb3VwLlwiKSkge1xyXG4gIC8vICAgICAgIHJldHVybiB0aGlzLmdyb3VwW2dBcnJheVsxXV07XHJcbiAgLy8gICAgIH1cclxuICAvLyAgIH1cclxuICAvLyAgIHJldHVybiBudWxsO1xyXG4gIC8vIH1cclxuXHJcbiAgZ2V0SW1nU3R5bGUoKTogYW55IHsgfVxyXG5cclxuICBvbkljb25DbGljaygpIHtcclxuICAgIGNvbnN0IGljb25DbGljayA9IFpDb21wb25lbnRIZWxwZXIuZ2V0R3JvdXBFdmFsVmFsdWUuY2FsbCh0aGlzLCB0aGlzLmRhdGEuT25JdGVtQ2xpY2ssIHRoaXMuZ3JvdXApO1xyXG4gICAgaWYgKHR5cGVvZiBpY29uQ2xpY2sgPT09ICdmdW5jdGlvbicpIHtcclxuICAgICAgcmV0dXJuIGljb25DbGljaygpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICghaWNvbkNsaWNrKSB7XHJcbiAgICAgIGNvbnNvbGUud2FybignWkltZyBPbkl0ZW1DbGljayBwcm9wZXJ0eSBpcyBpbnZhbGlkOiAnLCBpY29uQ2xpY2spO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHR5cGVvZiBpY29uQ2xpY2sgIT09ICdmdW5jdGlvbicpIHtcclxuICAgICAgY29uc29sZS53YXJuKCdaSW1nIE9uSXRlbUNsaWNrIHByb3BlcnR5IGlzIG5vdCBhIGZ1bmN0aW9uOiAnLCBpY29uQ2xpY2spO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBnZXRJY29uTmFtZSgpIHtcclxuICAgIGNvbnN0IGljb25OYW1lID0gWkNvbXBvbmVudEhlbHBlci5nZXRHcm91cEV2YWxWYWx1ZS5jYWxsKHRoaXMsIHRoaXMuZGF0YS5JY29uLCB0aGlzLmdyb3VwKTtcclxuICAgIHJldHVybiBpY29uTmFtZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzZXRFbmFibGUgPSAoc3RhdHVzOiBib29sZWFuKSA9PiB7XHJcbiAgICB0aGlzLmNvbXBvbmVudFByb3BlcnRpZXMuaXNSZWFkT25seSA9ICFzdGF0dXM7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc2V0VmlzaWJsZSA9IChzdGF0dXM6IGJvb2xlYW4pID0+IHtcclxuICAgIHRoaXMuY29tcG9uZW50UHJvcGVydGllcy5pc1Zpc2libGUgPSBzdGF0dXM7XHJcbiAgICB0aGlzLmRhdGEuVmlzaWJsZSA9IHN0YXR1cztcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzZXRSZXF1aXJlID0gKHN0YXR1czogYm9vbGVhbikgPT4ge1xyXG4gICAgdGhpcy5jb21wb25lbnRQcm9wZXJ0aWVzLmlzUmVxdWlyZWQgPSBzdGF0dXM7XHJcbiAgICBaQ29tcG9uZW50SGVscGVyLmNoYW5nZVZhbGlkYXRvcihzdGF0dXMsIHRoaXMuZ3JvdXAsIHRoaXMuZGF0YS5WYWx1ZSwgdGhpcy5jb21wb25lbnRQcm9wZXJ0aWVzLCBWYWxpZGF0b3JzLnJlcXVpcmVkKTtcclxuICB9XHJcbn1cclxuIiwiPGlvbi1pdGVtPlxyXG4gIDxpb24tbGFiZWwgKm5nSWY9XCJkYXRhLlNob3dMYWJlbCA9PT0gdW5kZWZpbmVkIHx8IGRhdGEuU2hvd0xhYmVsXCIgcG9zaXRpb249XCJzdGFja2VkXCI+e3tkYXRhLkxhYmVsfX0gPGlvbi10ZXh0XHJcbiAgICAgICpuZ0lmPVwiKCEhY29tcG9uZW50UHJvcGVydGllcy5pc1JlcXVpcmVkRmllbGQgPyBncm91cFtjb21wb25lbnRQcm9wZXJ0aWVzLmlzUmVxdWlyZWRGaWVsZF0gOiBjb21wb25lbnRQcm9wZXJ0aWVzLmlzUmVxdWlyZWQpXCIgY29sb3I9XCJkYW5nZXJcIj4qPC9pb24tdGV4dD5cclxuICA8L2lvbi1sYWJlbD5cclxuICA8aW1nICpuZ0lmPVwiISFnZXRHcm91cFZhbHVlKGRhdGEuVmFsdWUsIGdyb3VwKVwiIFtzcmNdPVwib25EYXRhU291cmNlQ2hhbmdlKClcIiBbd2lkdGhdPVwiaW1nV2lkdGhcIiBbaGVpZ2h0XT1cImltZ0hlaWdodFwiIHN0eWxlPVwiYm9yZGVyLXJhZGl1czogNTAlOyBtYXJnaW46IDVweCBhdXRvXCIgLz5cclxuICA8aW1nICpuZ0lmPVwidGhpcy5HdWlkICE9PXVuZGVmaW5lZCAmJiB0aGlzLkd1aWQgIT09RmlsZU5hbWVcIiBbc3JjXT1cInRoaXMuSW1hZ2VcIiBbd2lkdGhdPVwiaW1nV2lkdGhcIiBbaGVpZ2h0XT1cImltZ0hlaWdodFwiIHN0eWxlPVwiYm9yZGVyLXJhZGl1czogNTAlOyBtYXJnaW46IDVweCBhdXRvXCIgLz5cclxuIFxyXG4gIDxkaXYgKm5nSWY9XCIhZ2V0R3JvdXBWYWx1ZShkYXRhLlZhbHVlLCBncm91cClcIiAoY2xpY2spPVwib25JY29uQ2xpY2soKVwiPlxyXG4gICAgPGlvbi1pY29uICBuYW1lPVwiZ2V0SWNvbk5hbWUoKVwiIHN0eWxlPVwiem9vbTo0LjA7XCI+XHJcbiAgICA8L2lvbi1pY29uPlxyXG4gIDwvZGl2PlxyXG48L2lvbi1pdGVtPiJdfQ==
55
+ args: [{ selector: "app-zimg", template: "<div [formGroup]=\"form\" class=\"zimg-container e1tag-style\" [style]=\"componentProperties.style.style\">\r\n <img *ngIf=\"imgSource\" class=\"e1tag-style1\" [src]=\"imgSource\" [style]=\"componentProperties.style.style1\"\r\n (click)=\"onItemClick($event)\" />\r\n</div>\r\n", styles: [""] }]
56
+ }], ctorParameters: function () { return [{ type: i1.ZComponentService }, { type: i2.AttachmentService }]; } });
57
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiemltZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tbWhnbG9iYWwtZHluYW1pY2Zvcm0vc3JjL2xpYi96aW1nL3ppbWcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbW1oZ2xvYmFsLWR5bmFtaWNmb3JtL3NyYy9saWIvemltZy96aW1nLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLCtCQUErQjtBQUMvQixPQUFPLEVBQUUsU0FBUyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBRWxELDZCQUE2QjtBQUU3Qiw4QkFBOEI7QUFDOUIsT0FBTyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsRUFBRSxFQUFjLE1BQU0sTUFBTSxDQUFDO0FBRXZELDJDQUEyQztBQUMzQyxPQUFPLEVBQWMsZ0JBQWdCLEVBQXFCLE1BQU0saUJBQWlCLENBQUM7QUFFbEYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHdDQUF3QyxDQUFDOzs7Ozs7QUFPeEUsTUFBTSxPQUFPLGFBQWMsU0FBUSxjQUFjO0lBRy9DLFlBQVksV0FBOEIsRUFDaEMsaUJBQW9DO1FBQUksS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFBO1FBQTFELHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7SUFBdUIsQ0FBQztJQUV0RSxRQUFRO1FBQ04sS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBRU0sY0FBYztRQUNuQixJQUFJLENBQUMsY0FBYyxFQUFFLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxFQUFFO1lBQzFDLElBQUksQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFBO1FBQzVCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLGNBQWM7UUFDcEIsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBRXBCLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUU7WUFDdkIsT0FBTyxFQUFFLENBQUMsZ0JBQWdCLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1NBQzVFO1FBRUQsTUFBTSxJQUFJLEdBQUcsZ0JBQWdCLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzNFLE1BQU0sUUFBUSxHQUFHLGdCQUFnQixDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUVuRixJQUFJLElBQUksSUFBSSxRQUFRLEVBQUU7WUFDcEIsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFlBQVksQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQ25FLFNBQVMsQ0FBQyxRQUFRLENBQUMsRUFBRTtnQkFDbkIsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLG1CQUFtQixDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7WUFDcEUsQ0FBQyxDQUFDLENBQ0gsQ0FBQTtTQUNGO1FBRUQsT0FBTyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDaEIsQ0FBQztJQUVPLFlBQVk7UUFDbEIsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUU7WUFDdEUsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ3hELE1BQU0sZUFBZSxHQUFHLFNBQVMsT0FBTyxDQUFDLENBQUMsQ0FBQyxhQUFhLE9BQU8sQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO1lBQ3hFLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxLQUFLLENBQUMsS0FBSyxJQUFJLGVBQWUsQ0FBQztZQUN4RCxJQUFJLENBQUMsbUJBQW1CLENBQUMsS0FBSyxDQUFDLE1BQU0sSUFBSSxlQUFlLENBQUM7U0FDMUQ7SUFDSCxDQUFDOzsyR0E3Q1UsYUFBYTsrRkFBYixhQUFhLHVFQ2xCMUIsMlJBSUE7NEZEY2EsYUFBYTtrQkFMekIsU0FBUzsrQkFDRSxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiLyoqKioqKioqKiogQW5ndWxhciAqKioqKioqKioqL1xyXG5pbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcblxyXG4vKioqKioqKioqKiBJb25pYyAqKioqKioqKioqL1xyXG5cclxuLyoqKioqKioqKiogUGx1Z2luICoqKioqKioqKiovXHJcbmltcG9ydCB7IGZyb20sIHN3aXRjaE1hcCwgb2YsIE9ic2VydmFibGUgfSBmcm9tIFwicnhqc1wiO1xyXG5cclxuLyoqKioqKioqKiogQ29tcG9uZW50ICYgU2VydmljZSAqKioqKioqKioqL1xyXG5pbXBvcnQgeyBaQ29tcG9uZW50LCBaQ29tcG9uZW50SGVscGVyLCBBdHRhY2htZW50U2VydmljZSB9IGZyb20gXCJtbWhnbG9iYWwtemNvcmVcIjtcclxuaW1wb3J0IHsgWkNvbXBvbmVudFNlcnZpY2UgfSBmcm9tIFwiLi4vc2VydmljZXMvemNvbXBvbmVudC5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IElucHV0RmllbGRCYXNlIH0gZnJvbSBcIi4uL2NvbXBvbmVudHMvaW5wdXRmaWVsZGJhc2UuY29tcG9uZW50XCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogXCJhcHAtemltZ1wiLFxyXG4gIHRlbXBsYXRlVXJsOiBcIi4vemltZy5jb21wb25lbnQuaHRtbFwiLFxyXG4gIHN0eWxlVXJsczogW1wiLi96aW1nLmNvbXBvbmVudC5zY3NzXCJdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBaaW1nQ29tcG9uZW50IGV4dGVuZHMgSW5wdXRGaWVsZEJhc2UgaW1wbGVtZW50cyBaQ29tcG9uZW50LCBPbkluaXQge1xyXG5cclxuICBwdWJsaWMgaW1nU291cmNlO1xyXG4gIGNvbnN0cnVjdG9yKGNvbXBTZXJ2aWNlOiBaQ29tcG9uZW50U2VydmljZSxcclxuICAgIHByaXZhdGUgYXR0YWNobWVudFNlcnZpY2U6IEF0dGFjaG1lbnRTZXJ2aWNlKSB7IHN1cGVyKGNvbXBTZXJ2aWNlKSB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgc3VwZXIuc2V0dXBJbm5lckZpZWxkKCk7XHJcbiAgICB0aGlzLnNldEltYWdlU291cmNlKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc2V0SW1hZ2VTb3VyY2UoKSB7XHJcbiAgICB0aGlzLmdldEltYWdlU291cmNlKCkuc3Vic2NyaWJlKGltZ1NvdXJjZSA9PiB7XHJcbiAgICAgIHRoaXMuaW1nU291cmNlID0gaW1nU291cmNlXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZ2V0SW1hZ2VTb3VyY2UoKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIHRoaXMuc2V0SW1hZ2VTaXplKCk7XHJcblxyXG4gICAgaWYgKHRoaXMuZGF0YS5Tb3VyY2VVcmwpIHtcclxuICAgICAgcmV0dXJuIG9mKFpDb21wb25lbnRIZWxwZXIuZ2V0R3JvdXBWYWx1ZSh0aGlzLmRhdGEuU291cmNlVXJsLCB0aGlzLmdyb3VwKSk7XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgZ3VpZCA9IFpDb21wb25lbnRIZWxwZXIuZ2V0R3JvdXBWYWx1ZSh0aGlzLmRhdGFbJ0d1aWQnXSwgdGhpcy5ncm91cCk7XHJcbiAgICBjb25zdCBmaWxlTmFtZSA9IFpDb21wb25lbnRIZWxwZXIuZ2V0R3JvdXBWYWx1ZSh0aGlzLmRhdGFbJ0ZpbGVOYW1lJ10sIHRoaXMuZ3JvdXApO1xyXG5cclxuICAgIGlmIChndWlkICYmIGZpbGVOYW1lKSB7XHJcbiAgICAgIHJldHVybiBmcm9tKHRoaXMuYXR0YWNobWVudFNlcnZpY2UuZ2V0SW1hZ2VCbG9iKGZpbGVOYW1lLCBndWlkKSkucGlwZShcclxuICAgICAgICBzd2l0Y2hNYXAoYmxvYmZpbGUgPT4ge1xyXG4gICAgICAgICAgcmV0dXJuIGZyb20odGhpcy5hdHRhY2htZW50U2VydmljZS5jb252ZXJ0QmxvYlRvQmFzZTY0KGJsb2JmaWxlKSk7XHJcbiAgICAgICAgfSlcclxuICAgICAgKVxyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBvZih7fSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHNldEltYWdlU2l6ZSgpIHtcclxuICAgIGlmICh0aGlzLmRhdGEuU2l6ZSAmJiB0aGlzLmRhdGEuU2l6ZS50b0xvd2VyQ2FzZSgpLmluZGV4T2YoXCJ4XCIpICE9PSAtMSkge1xyXG4gICAgICBjb25zdCBpbWdTaXplID0gdGhpcy5kYXRhLlNpemUudG9Mb3dlckNhc2UoKS5zcGxpdChcInhcIik7XHJcbiAgICAgIGNvbnN0IHN0eWxlRXhwcmVzc2lvbiA9IGB3aWR0aDoke2ltZ1NpemVbMF19cHg7aGVpZ2h0OiR7aW1nU2l6ZVsxXX1weDtgO1xyXG4gICAgICB0aGlzLmNvbXBvbmVudFByb3BlcnRpZXMuc3R5bGUuc3R5bGUgKz0gc3R5bGVFeHByZXNzaW9uO1xyXG4gICAgICB0aGlzLmNvbXBvbmVudFByb3BlcnRpZXMuc3R5bGUuc3R5bGUxICs9IHN0eWxlRXhwcmVzc2lvbjtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiPGRpdiBbZm9ybUdyb3VwXT1cImZvcm1cIiBjbGFzcz1cInppbWctY29udGFpbmVyIGUxdGFnLXN0eWxlXCIgW3N0eWxlXT1cImNvbXBvbmVudFByb3BlcnRpZXMuc3R5bGUuc3R5bGVcIj5cclxuICA8aW1nICpuZ0lmPVwiaW1nU291cmNlXCIgY2xhc3M9XCJlMXRhZy1zdHlsZTFcIiBbc3JjXT1cImltZ1NvdXJjZVwiIFtzdHlsZV09XCJjb21wb25lbnRQcm9wZXJ0aWVzLnN0eWxlLnN0eWxlMVwiXHJcbiAgICAoY2xpY2spPVwib25JdGVtQ2xpY2soJGV2ZW50KVwiIC8+XHJcbjwvZGl2PlxyXG4iXX0=
@@ -0,0 +1,63 @@
1
+ /********** Angular **********/
2
+ import { Component, Input } from "@angular/core";
3
+ /********** Component & Service **********/
4
+ import { tap } from "rxjs";
5
+ import { InputFieldBase } from "../components/inputfieldbase.component";
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "../services/zcomponent.service";
8
+ import * as i2 from "@ionic/angular";
9
+ import * as i3 from "../ztext/ztext.component";
10
+ import * as i4 from "../zselectmultiple/zselectmultiple.component";
11
+ import * as i5 from "../zdatetime/zdatetime.component";
12
+ import * as i6 from "../zpostselectinput/zpostselectinput.component";
13
+ import * as i7 from "../zcheckbox/zcheckbox.component";
14
+ import * as i8 from "../znumeric/znumeric.component";
15
+ import * as i9 from "../ztextarea/ztextarea.component";
16
+ import * as i10 from "../zupload/zupload.component";
17
+ import * as i11 from "../zimg/zimg.component";
18
+ import * as i12 from "../input-error-message/input-error-message.component";
19
+ import * as i13 from "@progress/kendo-angular-label";
20
+ import * as i14 from "../embed-components/input-field-addons/input-field-addons.component";
21
+ import * as i15 from "@angular/common";
22
+ import * as i16 from "@angular/forms";
23
+ import * as i17 from "@angular/flex-layout/extended";
24
+ import * as i18 from "@angular/flex-layout/flex";
25
+ import * as i19 from "./zinput-container.pipe";
26
+ export class ZInputContainerComponent extends InputFieldBase {
27
+ constructor(compService) {
28
+ super(compService);
29
+ this.ztext_type = ['number', 'numeric', 'date', 'email', 'password', 'search', 'tel', 'text', 'url', 'currency'];
30
+ this.zselect_type = ['zuiselectmultiple', 'zuiselectmultiple_button', 'select'];
31
+ this.zdate_type = ['zdate', 'zdatetime', 'zshortdate', 'zuidatetime', 'zuitime'];
32
+ this.zpostselectinput_type = ['post_select_input', 'pre_select_input', 'zphone_countrycode'];
33
+ this.zcheckbox_type = ['checkbox'];
34
+ this.znumeric_type = ['znumeric'];
35
+ this.textarea_type = ['textarea'];
36
+ this.zupload_type = ['zupload'];
37
+ this.zimg_type = ['zimg'];
38
+ }
39
+ ngOnInit() {
40
+ super.initComponent().pipe(tap(() => {
41
+ this.compService.setEditMode(this);
42
+ this.data.zlayout = this.data.zlayout || (this.containerField ? this.containerField.zlayout : "row");
43
+ this.isLoading = false;
44
+ }))
45
+ .subscribe();
46
+ }
47
+ getClass(form, data) {
48
+ return `style${data.FieldLayoutType} ${super.getClass(form, data)}`;
49
+ }
50
+ }
51
+ ZInputContainerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ZInputContainerComponent, deps: [{ token: i1.ZComponentService }], target: i0.ɵɵFactoryTarget.Component });
52
+ ZInputContainerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: ZInputContainerComponent, selector: "app-zinput-container", inputs: { data: "data", group: "group", form: "form" }, usesInheritance: true, ngImport: i0, template: "<div class=\"mobile-input-container e1tag-container-style\" *ngIf=\"isMobileScreen() && !isLoading\"\r\n [style]=\"componentProperties.containerStyle.style\">\r\n <ion-item [formGroup]=\"form\" class=\"e1tag-container-style1\"\r\n *ngIf=\"(!!componentProperties.isVisibleField ? group[componentProperties.isVisibleField] : componentProperties.isVisible)\"\r\n [ngClass]=\"getIon_InvalidClass(form, data)\" [style]=\"componentProperties.containerStyle.style1\">\r\n <ion-label [attr.for]=\"data.Value\" class=\"input-label e1tag-container-style2\"\r\n *ngIf=\"data.ShowLabel === undefined || data.ShowLabel\"\r\n [position]=\"data.LabelPosition ? data.LabelPosition : 'stacked'\"\r\n [style]=\"componentProperties.containerStyle.style2\">\r\n {{data.Label}}\r\n <ion-text\r\n *ngIf=\"(!!componentProperties.isRequiredField ? group[componentProperties.isRequiredField] : componentProperties.isRequired)\"\r\n color=\"danger\">*</ion-text>\r\n </ion-label>\r\n <div class=\"input-value-field\">\r\n <div class=\"input-fields-options\">\r\n <app-ztext *ngIf=\"ztext_type.includes(data.Type)\" [data]=\"data\" [group]=\"group\" [form]=\"form\"\r\n [containerField]=\"containerField\" [componentProperties]=\"componentProperties\" class=\"e1tag-container-style5\"\r\n [style]=\"componentProperties.containerStyle.style5\"></app-ztext>\r\n <app-zselectmultiple *ngIf=\"zselect_type.includes(data.Type)\" [data]=\"data\" [group]=\"group\" [form]=\"form\"\r\n [containerField]=\"containerField\" [componentProperties]=\"componentProperties\" class=\"e1tag-container-style5\"\r\n [style]=\"componentProperties.containerStyle.style5\"></app-zselectmultiple>\r\n <app-zdatetime *ngIf=\"zdate_type.includes(data.Type)\" [data]=\"data\" [group]=\"group\" [form]=\"form\"\r\n [containerField]=\"containerField\" [componentProperties]=\"componentProperties\" class=\"e1tag-container-style5\"\r\n [style]=\"componentProperties.containerStyle.style5\"></app-zdatetime>\r\n <app-zpostselectinput *ngIf=\"zpostselectinput_type.includes(data.Type)\" [data]=\"data\" [group]=\"group\"\r\n [form]=\"form\" [containerField]=\"containerField\" [componentProperties]=\"componentProperties\"\r\n class=\"e1tag-container-style5\" [style]=\"componentProperties.containerStyle.style5\">\r\n </app-zpostselectinput>\r\n <app-zcheckbox *ngIf=\"zcheckbox_type.includes(data.Type)\" [data]=\"data\" [group]=\"group\" [form]=\"form\"\r\n [containerField]=\"containerField\" [componentProperties]=\"componentProperties\" class=\"e1tag-container-style5\"\r\n [style]=\"componentProperties.containerStyle.style5\"></app-zcheckbox>\r\n <app-znumeric *ngIf=\"znumeric_type.includes(data.Type)\" [data]=\"data\" [group]=\"group\" [form]=\"form\"\r\n [containerField]=\"containerField\" [componentProperties]=\"componentProperties\" class=\"e1tag-container-style5\"\r\n [style]=\"componentProperties.containerStyle.style5\"></app-znumeric>\r\n <app-ztextarea *ngIf=\"textarea_type.includes(data.Type)\" [data]=\"data\" [group]=\"group\" [form]=\"form\"\r\n [containerField]=\"containerField\" [componentProperties]=\"componentProperties\" class=\"e1tag-container-style5\"\r\n [style]=\"componentProperties.containerStyle.style5\"></app-ztextarea>\r\n <app-zupload *ngIf=\"zupload_type.includes(data.Type)\" [data]=\"data\" [group]=\"group\" [form]=\"form\"\r\n [containerField]=\"containerField\" [componentProperties]=\"componentProperties\" class=\"e1tag-container-style5\"\r\n [style]=\"componentProperties.containerStyle.style5\"></app-zupload>\r\n <app-zimg *ngIf=\"zimg_type.includes(data.Type)\" [data]=\"data\" [group]=\"group\" [form]=\"form\"\r\n [containerField]=\"containerField\" [componentProperties]=\"componentProperties\" class=\"e1tag-container-style5\"\r\n [style]=\"componentProperties.containerStyle.style5\"></app-zimg>\r\n </div>\r\n <app-error [data]=\"data\" [group]=\"group\" [form]=\"form\"></app-error>\r\n <!-- <app-field-suffix-element [data]=\"data\" [group]=\"group\" [form]=\"form\" [containerField]=\"containerField\"\r\n [componentProperties]=\"componentProperties\"></app-field-suffix-element> -->\r\n </div>\r\n </ion-item>\r\n</div>\r\n\r\n<div class=\"desktop-input-container e1tag-container-style\" [formGroup]=\"form\"\r\n [style]=\"componentProperties.containerStyle.style\"\r\n *ngIf=\"!isMobileScreen() && !isLoading && (!!componentProperties.isVisibleField ? group[componentProperties.isVisibleField] : componentProperties.isVisible)\"\r\n [ngClass]=\"getClass(form, data)\" [fxLayout]=\"data.FieldLayoutType !== 1 ? 'column' : 'row'\"\r\n fxLayoutAlign=\"space-between stretch\">\r\n <kendo-label class=\"input-label e1tag-container-style1\" [for]=\"data.Name\" [text]=\"data.Label\" *ngIf=\"data.ShowLabel\"\r\n [style]=\"componentProperties.containerStyle.style1\" [fxFlex]=\"componentProperties.labelFlexLayoutSize.all\"\r\n [fxFlex.xs]=\"componentProperties.labelFlexLayoutSize.xs\" [fxFlex.sm]=\"componentProperties.labelFlexLayoutSize.sm\"\r\n [fxFlex.md]=\"componentProperties.labelFlexLayoutSize.md\" [fxFlex.lg]=\"componentProperties.labelFlexLayoutSize.lg\"\r\n [fxFlex.xl]=\"componentProperties.labelFlexLayoutSize.xl\">\r\n <kendo-label\r\n *ngIf=\"data.EditMode.value && (!!componentProperties.isRequiredField ? group[componentProperties.isRequiredField] : componentProperties.isRequired)\"\r\n text=\" *\" class=\"required-icon\">\r\n </kendo-label>\r\n <app-input-field-addons class=\"addon-top e1tag-container-style7\" [position]=\"'top'\" [data]=\"data\" [group]=\"group\"\r\n [form]=\"form\" [containerField]=\"containerField\" [componentProperties]=\"componentProperties\"\r\n [style]=\"componentProperties.containerStyle.style7\">\r\n </app-input-field-addons>\r\n </kendo-label>\r\n <div class=\"input-value-container e1tag-container-style2\" [style]=\"componentProperties.containerStyle.style2\"\r\n [fxFlex]=\"componentProperties.fieldFlexLayoutSize.all\" [fxFlex.xs]=\"componentProperties.fieldFlexLayoutSize.xs\"\r\n [fxFlex.sm]=\"componentProperties.fieldFlexLayoutSize.sm\" [fxFlex.md]=\"componentProperties.fieldFlexLayoutSize.md\"\r\n [fxFlex.lg]=\"componentProperties.fieldFlexLayoutSize.lg\" [fxFlex.xl]=\"componentProperties.fieldFlexLayoutSize.xl\">\r\n <div *ngIf=\"data.EditMode.value\" class=\"input-value-field e1tag-container-style3\"\r\n [style]=\"componentProperties.containerStyle.style3\">\r\n <!-- TODO: Add 1 more layer for this switch case-->\r\n <app-input-field-addons class=\"addon-left e1tag-container-style7\" [position]=\"'left'\" [data]=\"data\"\r\n [group]=\"group\" [form]=\"form\" [containerField]=\"containerField\" [componentProperties]=\"componentProperties\"\r\n [style]=\"componentProperties.containerStyle.style7\">\r\n </app-input-field-addons>\r\n <div class=\"input-fields-options e1tag-container-style4\" [style]=\"componentProperties.containerStyle.style4\">\r\n <app-ztext *ngIf=\"ztext_type.includes(data.Type)\" [data]=\"data\" [group]=\"group\" [form]=\"form\"\r\n [containerField]=\"containerField\" [componentProperties]=\"componentProperties\" class=\"e1tag-container-style5\"\r\n [style]=\"componentProperties.containerStyle.style5\"></app-ztext>\r\n <app-zselectmultiple *ngIf=\"zselect_type.includes(data.Type)\" [data]=\"data\" [group]=\"group\" [form]=\"form\"\r\n [containerField]=\"containerField\" [componentProperties]=\"componentProperties\" class=\"e1tag-container-style5\"\r\n [style]=\"componentProperties.containerStyle.style5\"></app-zselectmultiple>\r\n <app-zdatetime *ngIf=\"zdate_type.includes(data.Type)\" [data]=\"data\" [group]=\"group\" [form]=\"form\"\r\n [containerField]=\"containerField\" [componentProperties]=\"componentProperties\" class=\"e1tag-container-style5\"\r\n [style]=\"componentProperties.containerStyle.style5\"></app-zdatetime>\r\n <app-zpostselectinput *ngIf=\"zpostselectinput_type.includes(data.Type)\" [data]=\"data\" [group]=\"group\"\r\n [form]=\"form\" [containerField]=\"containerField\" [componentProperties]=\"componentProperties\"\r\n class=\"e1tag-container-style5\" [style]=\"componentProperties.containerStyle.style5\">\r\n </app-zpostselectinput>\r\n <app-zcheckbox *ngIf=\"zcheckbox_type.includes(data.Type)\" [data]=\"data\" [group]=\"group\" [form]=\"form\"\r\n [containerField]=\"containerField\" [componentProperties]=\"componentProperties\" class=\"e1tag-container-style5\"\r\n [style]=\"componentProperties.containerStyle.style5\"></app-zcheckbox>\r\n <app-znumeric *ngIf=\"znumeric_type.includes(data.Type)\" [data]=\"data\" [group]=\"group\" [form]=\"form\"\r\n [containerField]=\"containerField\" [componentProperties]=\"componentProperties\" class=\"e1tag-container-style5\"\r\n [style]=\"componentProperties.containerStyle.style5\"></app-znumeric>\r\n <app-ztextarea *ngIf=\"textarea_type.includes(data.Type)\" [data]=\"data\" [group]=\"group\" [form]=\"form\"\r\n [containerField]=\"containerField\" [componentProperties]=\"componentProperties\" class=\"e1tag-container-style5\"\r\n [style]=\"componentProperties.containerStyle.style5\"></app-ztextarea>\r\n <app-zupload *ngIf=\"zupload_type.includes(data.Type)\" [data]=\"data\" [group]=\"group\" [form]=\"form\"\r\n [containerField]=\"containerField\" [componentProperties]=\"componentProperties\" class=\"e1tag-container-style5\"\r\n [style]=\"componentProperties.containerStyle.style5\"></app-zupload>\r\n <app-zimg *ngIf=\"zimg_type.includes(data.Type)\" [data]=\"data\" [group]=\"group\" [form]=\"form\"\r\n [containerField]=\"containerField\" [componentProperties]=\"componentProperties\" class=\"e1tag-container-style5\"\r\n [style]=\"componentProperties.containerStyle.style5\"></app-zimg>\r\n </div>\r\n <app-input-field-addons class=\"addon-right e1tag-container-style7\" [position]=\"'right'\" [data]=\"data\"\r\n [group]=\"group\" [form]=\"form\" [containerField]=\"containerField\" [componentProperties]=\"componentProperties\"\r\n [style]=\"componentProperties.containerStyle.style7\">\r\n </app-input-field-addons>\r\n </div>\r\n <app-input-field-addons class=\"addon-bottom e1tag-container-style7\" [position]=\"'bottom'\" [data]=\"data\"\r\n [group]=\"group\" [form]=\"form\" [containerField]=\"containerField\" [componentProperties]=\"componentProperties\"\r\n [style]=\"componentProperties.containerStyle.style7\">\r\n </app-input-field-addons>\r\n <app-error [data]=\"data\" [group]=\"group\" [form]=\"form\"></app-error>\r\n <kendo-label class=\"input-value e1tag-container-style6\" *ngIf=\"!(data.EditMode.value)\"\r\n [style]=\"componentProperties.containerStyle.style6\"\r\n [text]=\"group.zModel[data.Value] | inputText : data: group | async\"></kendo-label>\r\n </div>\r\n\r\n</div>\r\n", styles: [".required-icon{color:var(--ion-color-danger)}.desktop-input-container{padding:5px 20px;min-height:calc(var(--input-field-height) + 5px)!important;margin:1px 0;display:inline-flex}.desktop-input-container .input-label{font-size:var(--content-font-size);margin-top:calc(var(--content-font-size) / 2);display:flex}.desktop-input-container>.input-value-container{margin:auto}.desktop-input-container>.input-value-container .input-value-field{display:flex}.desktop-input-container>.input-value-container .input-value-field .input-fields-options{flex-grow:10}.desktop-input-container>.input-value-container .input-value-field app-field-suffix-icon{margin:auto}.desktop-input-container>.input-value-container .input-value{font-size:calc(var(--content-font-size) + 2px);font-weight:600}.desktop-input-container.style1 .input-value-container{margin-left:0}.desktop-input-container.style2 .input-value-container{width:100%;margin-top:3px}.desktop-input-container .addon-right{margin:auto 0;padding-bottom:4px}.mobile-input-container .input-value-field{width:100%}.tooltipsinfo-icon{padding-left:10px;color:var(--ion-color-primary-tint)}\n"], components: [{ type: i2.IonItem, selector: "ion-item", inputs: ["button", "color", "counter", "counterFormatter", "detail", "detailIcon", "disabled", "download", "fill", "href", "lines", "mode", "rel", "routerAnimation", "routerDirection", "shape", "target", "type"] }, { type: i2.IonLabel, selector: "ion-label", inputs: ["color", "mode", "position"] }, { type: i2.IonText, selector: "ion-text", inputs: ["color", "mode"] }, { type: i3.ZtextComponent, selector: "app-ztext" }, { type: i4.ZselectmultipleComponent, selector: "app-zselectmultiple" }, { type: i5.ZdatetimeComponent, selector: "app-zdatetime" }, { type: i6.ZpostselectinputComponent, selector: "app-zpostselectinput" }, { type: i7.ZcheckboxComponent, selector: "app-zcheckbox" }, { type: i8.ZnumericComponent, selector: "app-znumeric" }, { type: i9.ZtextareaComponent, selector: "app-ztextarea" }, { type: i10.ZuploadComponent, selector: "app-zupload" }, { type: i11.ZimgComponent, selector: "app-zimg" }, { type: i12.InputErrorMessageComponent, selector: "app-error" }, { type: i13.LabelComponent, selector: "kendo-label", inputs: ["text", "for", "optional"], exportAs: ["kendoLabel"] }, { type: i14.InputFieldAddOnsComponent, selector: "app-input-field-addons", inputs: ["position"] }], directives: [{ type: i15.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i16.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i16.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i15.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i17.DefaultClassDirective, selector: " [ngClass], [ngClass.xs], [ngClass.sm], [ngClass.md], [ngClass.lg], [ngClass.xl], [ngClass.lt-sm], [ngClass.lt-md], [ngClass.lt-lg], [ngClass.lt-xl], [ngClass.gt-xs], [ngClass.gt-sm], [ngClass.gt-md], [ngClass.gt-lg]", inputs: ["ngClass", "ngClass.xs", "ngClass.sm", "ngClass.md", "ngClass.lg", "ngClass.xl", "ngClass.lt-sm", "ngClass.lt-md", "ngClass.lt-lg", "ngClass.lt-xl", "ngClass.gt-xs", "ngClass.gt-sm", "ngClass.gt-md", "ngClass.gt-lg"] }, { type: i18.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { type: i18.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { type: i18.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }], pipes: { "async": i15.AsyncPipe, "inputText": i19.ZInputParser } });
53
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ZInputContainerComponent, decorators: [{
54
+ type: Component,
55
+ args: [{ selector: "app-zinput-container", template: "<div class=\"mobile-input-container e1tag-container-style\" *ngIf=\"isMobileScreen() && !isLoading\"\r\n [style]=\"componentProperties.containerStyle.style\">\r\n <ion-item [formGroup]=\"form\" class=\"e1tag-container-style1\"\r\n *ngIf=\"(!!componentProperties.isVisibleField ? group[componentProperties.isVisibleField] : componentProperties.isVisible)\"\r\n [ngClass]=\"getIon_InvalidClass(form, data)\" [style]=\"componentProperties.containerStyle.style1\">\r\n <ion-label [attr.for]=\"data.Value\" class=\"input-label e1tag-container-style2\"\r\n *ngIf=\"data.ShowLabel === undefined || data.ShowLabel\"\r\n [position]=\"data.LabelPosition ? data.LabelPosition : 'stacked'\"\r\n [style]=\"componentProperties.containerStyle.style2\">\r\n {{data.Label}}\r\n <ion-text\r\n *ngIf=\"(!!componentProperties.isRequiredField ? group[componentProperties.isRequiredField] : componentProperties.isRequired)\"\r\n color=\"danger\">*</ion-text>\r\n </ion-label>\r\n <div class=\"input-value-field\">\r\n <div class=\"input-fields-options\">\r\n <app-ztext *ngIf=\"ztext_type.includes(data.Type)\" [data]=\"data\" [group]=\"group\" [form]=\"form\"\r\n [containerField]=\"containerField\" [componentProperties]=\"componentProperties\" class=\"e1tag-container-style5\"\r\n [style]=\"componentProperties.containerStyle.style5\"></app-ztext>\r\n <app-zselectmultiple *ngIf=\"zselect_type.includes(data.Type)\" [data]=\"data\" [group]=\"group\" [form]=\"form\"\r\n [containerField]=\"containerField\" [componentProperties]=\"componentProperties\" class=\"e1tag-container-style5\"\r\n [style]=\"componentProperties.containerStyle.style5\"></app-zselectmultiple>\r\n <app-zdatetime *ngIf=\"zdate_type.includes(data.Type)\" [data]=\"data\" [group]=\"group\" [form]=\"form\"\r\n [containerField]=\"containerField\" [componentProperties]=\"componentProperties\" class=\"e1tag-container-style5\"\r\n [style]=\"componentProperties.containerStyle.style5\"></app-zdatetime>\r\n <app-zpostselectinput *ngIf=\"zpostselectinput_type.includes(data.Type)\" [data]=\"data\" [group]=\"group\"\r\n [form]=\"form\" [containerField]=\"containerField\" [componentProperties]=\"componentProperties\"\r\n class=\"e1tag-container-style5\" [style]=\"componentProperties.containerStyle.style5\">\r\n </app-zpostselectinput>\r\n <app-zcheckbox *ngIf=\"zcheckbox_type.includes(data.Type)\" [data]=\"data\" [group]=\"group\" [form]=\"form\"\r\n [containerField]=\"containerField\" [componentProperties]=\"componentProperties\" class=\"e1tag-container-style5\"\r\n [style]=\"componentProperties.containerStyle.style5\"></app-zcheckbox>\r\n <app-znumeric *ngIf=\"znumeric_type.includes(data.Type)\" [data]=\"data\" [group]=\"group\" [form]=\"form\"\r\n [containerField]=\"containerField\" [componentProperties]=\"componentProperties\" class=\"e1tag-container-style5\"\r\n [style]=\"componentProperties.containerStyle.style5\"></app-znumeric>\r\n <app-ztextarea *ngIf=\"textarea_type.includes(data.Type)\" [data]=\"data\" [group]=\"group\" [form]=\"form\"\r\n [containerField]=\"containerField\" [componentProperties]=\"componentProperties\" class=\"e1tag-container-style5\"\r\n [style]=\"componentProperties.containerStyle.style5\"></app-ztextarea>\r\n <app-zupload *ngIf=\"zupload_type.includes(data.Type)\" [data]=\"data\" [group]=\"group\" [form]=\"form\"\r\n [containerField]=\"containerField\" [componentProperties]=\"componentProperties\" class=\"e1tag-container-style5\"\r\n [style]=\"componentProperties.containerStyle.style5\"></app-zupload>\r\n <app-zimg *ngIf=\"zimg_type.includes(data.Type)\" [data]=\"data\" [group]=\"group\" [form]=\"form\"\r\n [containerField]=\"containerField\" [componentProperties]=\"componentProperties\" class=\"e1tag-container-style5\"\r\n [style]=\"componentProperties.containerStyle.style5\"></app-zimg>\r\n </div>\r\n <app-error [data]=\"data\" [group]=\"group\" [form]=\"form\"></app-error>\r\n <!-- <app-field-suffix-element [data]=\"data\" [group]=\"group\" [form]=\"form\" [containerField]=\"containerField\"\r\n [componentProperties]=\"componentProperties\"></app-field-suffix-element> -->\r\n </div>\r\n </ion-item>\r\n</div>\r\n\r\n<div class=\"desktop-input-container e1tag-container-style\" [formGroup]=\"form\"\r\n [style]=\"componentProperties.containerStyle.style\"\r\n *ngIf=\"!isMobileScreen() && !isLoading && (!!componentProperties.isVisibleField ? group[componentProperties.isVisibleField] : componentProperties.isVisible)\"\r\n [ngClass]=\"getClass(form, data)\" [fxLayout]=\"data.FieldLayoutType !== 1 ? 'column' : 'row'\"\r\n fxLayoutAlign=\"space-between stretch\">\r\n <kendo-label class=\"input-label e1tag-container-style1\" [for]=\"data.Name\" [text]=\"data.Label\" *ngIf=\"data.ShowLabel\"\r\n [style]=\"componentProperties.containerStyle.style1\" [fxFlex]=\"componentProperties.labelFlexLayoutSize.all\"\r\n [fxFlex.xs]=\"componentProperties.labelFlexLayoutSize.xs\" [fxFlex.sm]=\"componentProperties.labelFlexLayoutSize.sm\"\r\n [fxFlex.md]=\"componentProperties.labelFlexLayoutSize.md\" [fxFlex.lg]=\"componentProperties.labelFlexLayoutSize.lg\"\r\n [fxFlex.xl]=\"componentProperties.labelFlexLayoutSize.xl\">\r\n <kendo-label\r\n *ngIf=\"data.EditMode.value && (!!componentProperties.isRequiredField ? group[componentProperties.isRequiredField] : componentProperties.isRequired)\"\r\n text=\" *\" class=\"required-icon\">\r\n </kendo-label>\r\n <app-input-field-addons class=\"addon-top e1tag-container-style7\" [position]=\"'top'\" [data]=\"data\" [group]=\"group\"\r\n [form]=\"form\" [containerField]=\"containerField\" [componentProperties]=\"componentProperties\"\r\n [style]=\"componentProperties.containerStyle.style7\">\r\n </app-input-field-addons>\r\n </kendo-label>\r\n <div class=\"input-value-container e1tag-container-style2\" [style]=\"componentProperties.containerStyle.style2\"\r\n [fxFlex]=\"componentProperties.fieldFlexLayoutSize.all\" [fxFlex.xs]=\"componentProperties.fieldFlexLayoutSize.xs\"\r\n [fxFlex.sm]=\"componentProperties.fieldFlexLayoutSize.sm\" [fxFlex.md]=\"componentProperties.fieldFlexLayoutSize.md\"\r\n [fxFlex.lg]=\"componentProperties.fieldFlexLayoutSize.lg\" [fxFlex.xl]=\"componentProperties.fieldFlexLayoutSize.xl\">\r\n <div *ngIf=\"data.EditMode.value\" class=\"input-value-field e1tag-container-style3\"\r\n [style]=\"componentProperties.containerStyle.style3\">\r\n <!-- TODO: Add 1 more layer for this switch case-->\r\n <app-input-field-addons class=\"addon-left e1tag-container-style7\" [position]=\"'left'\" [data]=\"data\"\r\n [group]=\"group\" [form]=\"form\" [containerField]=\"containerField\" [componentProperties]=\"componentProperties\"\r\n [style]=\"componentProperties.containerStyle.style7\">\r\n </app-input-field-addons>\r\n <div class=\"input-fields-options e1tag-container-style4\" [style]=\"componentProperties.containerStyle.style4\">\r\n <app-ztext *ngIf=\"ztext_type.includes(data.Type)\" [data]=\"data\" [group]=\"group\" [form]=\"form\"\r\n [containerField]=\"containerField\" [componentProperties]=\"componentProperties\" class=\"e1tag-container-style5\"\r\n [style]=\"componentProperties.containerStyle.style5\"></app-ztext>\r\n <app-zselectmultiple *ngIf=\"zselect_type.includes(data.Type)\" [data]=\"data\" [group]=\"group\" [form]=\"form\"\r\n [containerField]=\"containerField\" [componentProperties]=\"componentProperties\" class=\"e1tag-container-style5\"\r\n [style]=\"componentProperties.containerStyle.style5\"></app-zselectmultiple>\r\n <app-zdatetime *ngIf=\"zdate_type.includes(data.Type)\" [data]=\"data\" [group]=\"group\" [form]=\"form\"\r\n [containerField]=\"containerField\" [componentProperties]=\"componentProperties\" class=\"e1tag-container-style5\"\r\n [style]=\"componentProperties.containerStyle.style5\"></app-zdatetime>\r\n <app-zpostselectinput *ngIf=\"zpostselectinput_type.includes(data.Type)\" [data]=\"data\" [group]=\"group\"\r\n [form]=\"form\" [containerField]=\"containerField\" [componentProperties]=\"componentProperties\"\r\n class=\"e1tag-container-style5\" [style]=\"componentProperties.containerStyle.style5\">\r\n </app-zpostselectinput>\r\n <app-zcheckbox *ngIf=\"zcheckbox_type.includes(data.Type)\" [data]=\"data\" [group]=\"group\" [form]=\"form\"\r\n [containerField]=\"containerField\" [componentProperties]=\"componentProperties\" class=\"e1tag-container-style5\"\r\n [style]=\"componentProperties.containerStyle.style5\"></app-zcheckbox>\r\n <app-znumeric *ngIf=\"znumeric_type.includes(data.Type)\" [data]=\"data\" [group]=\"group\" [form]=\"form\"\r\n [containerField]=\"containerField\" [componentProperties]=\"componentProperties\" class=\"e1tag-container-style5\"\r\n [style]=\"componentProperties.containerStyle.style5\"></app-znumeric>\r\n <app-ztextarea *ngIf=\"textarea_type.includes(data.Type)\" [data]=\"data\" [group]=\"group\" [form]=\"form\"\r\n [containerField]=\"containerField\" [componentProperties]=\"componentProperties\" class=\"e1tag-container-style5\"\r\n [style]=\"componentProperties.containerStyle.style5\"></app-ztextarea>\r\n <app-zupload *ngIf=\"zupload_type.includes(data.Type)\" [data]=\"data\" [group]=\"group\" [form]=\"form\"\r\n [containerField]=\"containerField\" [componentProperties]=\"componentProperties\" class=\"e1tag-container-style5\"\r\n [style]=\"componentProperties.containerStyle.style5\"></app-zupload>\r\n <app-zimg *ngIf=\"zimg_type.includes(data.Type)\" [data]=\"data\" [group]=\"group\" [form]=\"form\"\r\n [containerField]=\"containerField\" [componentProperties]=\"componentProperties\" class=\"e1tag-container-style5\"\r\n [style]=\"componentProperties.containerStyle.style5\"></app-zimg>\r\n </div>\r\n <app-input-field-addons class=\"addon-right e1tag-container-style7\" [position]=\"'right'\" [data]=\"data\"\r\n [group]=\"group\" [form]=\"form\" [containerField]=\"containerField\" [componentProperties]=\"componentProperties\"\r\n [style]=\"componentProperties.containerStyle.style7\">\r\n </app-input-field-addons>\r\n </div>\r\n <app-input-field-addons class=\"addon-bottom e1tag-container-style7\" [position]=\"'bottom'\" [data]=\"data\"\r\n [group]=\"group\" [form]=\"form\" [containerField]=\"containerField\" [componentProperties]=\"componentProperties\"\r\n [style]=\"componentProperties.containerStyle.style7\">\r\n </app-input-field-addons>\r\n <app-error [data]=\"data\" [group]=\"group\" [form]=\"form\"></app-error>\r\n <kendo-label class=\"input-value e1tag-container-style6\" *ngIf=\"!(data.EditMode.value)\"\r\n [style]=\"componentProperties.containerStyle.style6\"\r\n [text]=\"group.zModel[data.Value] | inputText : data: group | async\"></kendo-label>\r\n </div>\r\n\r\n</div>\r\n", styles: [".required-icon{color:var(--ion-color-danger)}.desktop-input-container{padding:5px 20px;min-height:calc(var(--input-field-height) + 5px)!important;margin:1px 0;display:inline-flex}.desktop-input-container .input-label{font-size:var(--content-font-size);margin-top:calc(var(--content-font-size) / 2);display:flex}.desktop-input-container>.input-value-container{margin:auto}.desktop-input-container>.input-value-container .input-value-field{display:flex}.desktop-input-container>.input-value-container .input-value-field .input-fields-options{flex-grow:10}.desktop-input-container>.input-value-container .input-value-field app-field-suffix-icon{margin:auto}.desktop-input-container>.input-value-container .input-value{font-size:calc(var(--content-font-size) + 2px);font-weight:600}.desktop-input-container.style1 .input-value-container{margin-left:0}.desktop-input-container.style2 .input-value-container{width:100%;margin-top:3px}.desktop-input-container .addon-right{margin:auto 0;padding-bottom:4px}.mobile-input-container .input-value-field{width:100%}.tooltipsinfo-icon{padding-left:10px;color:var(--ion-color-primary-tint)}\n"] }]
56
+ }], ctorParameters: function () { return [{ type: i1.ZComponentService }]; }, propDecorators: { data: [{
57
+ type: Input
58
+ }], group: [{
59
+ type: Input
60
+ }], form: [{
61
+ type: Input
62
+ }] } });
63
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiemlucHV0LWNvbnRhaW5lci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tbWhnbG9iYWwtZHluYW1pY2Zvcm0vc3JjL2xpYi96aW5wdXQtY29udGFpbmVyL3ppbnB1dC1jb250YWluZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbW1oZ2xvYmFsLWR5bmFtaWNmb3JtL3NyYy9saWIvemlucHV0LWNvbnRhaW5lci96aW5wdXQtY29udGFpbmVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLCtCQUErQjtBQUMvQixPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUV6RCwyQ0FBMkM7QUFDM0MsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUczQixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sd0NBQXdDLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQVF4RSxNQUFNLE9BQU8sd0JBQXlCLFNBQVEsY0FBYztJQWUxRCxZQUFZLFdBQThCO1FBQUksS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFBO1FBVmhELGVBQVUsR0FBRyxDQUFDLFFBQVEsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLFVBQVUsQ0FBQyxDQUFDO1FBQzVHLGlCQUFZLEdBQUcsQ0FBQyxtQkFBbUIsRUFBRSwwQkFBMEIsRUFBRSxRQUFRLENBQUMsQ0FBQztRQUMzRSxlQUFVLEdBQUcsQ0FBQyxPQUFPLEVBQUUsV0FBVyxFQUFFLFlBQVksRUFBRSxhQUFhLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFDNUUsMEJBQXFCLEdBQUcsQ0FBQyxtQkFBbUIsRUFBRSxrQkFBa0IsRUFBRSxvQkFBb0IsQ0FBQyxDQUFDO1FBQ3hGLG1CQUFjLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUM5QixrQkFBYSxHQUFHLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDN0Isa0JBQWEsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQzdCLGlCQUFZLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUMzQixjQUFTLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUU0QixDQUFDO0lBRWxFLFFBQVE7UUFDTixLQUFLLENBQUMsYUFBYSxFQUFFLENBQUMsSUFBSSxDQUN4QixHQUFHLENBQUMsR0FBRyxFQUFFO1lBQ1AsSUFBSSxDQUFDLFdBQVcsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDbkMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDckcsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7UUFDekIsQ0FBQyxDQUFDLENBQUM7YUFDRixTQUFTLEVBQUUsQ0FBQztJQUNqQixDQUFDO0lBRU0sUUFBUSxDQUFDLElBQWUsRUFBRSxJQUFZO1FBQzNDLE9BQU8sUUFBUSxJQUFJLENBQUMsZUFBZSxJQUFJLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxFQUFFLENBQUM7SUFDdEUsQ0FBQzs7c0hBN0JVLHdCQUF3QjswR0FBeEIsd0JBQXdCLDJJQ2ZyQyxra1dBZ0lBOzRGRGpIYSx3QkFBd0I7a0JBTHBDLFNBQVM7K0JBQ0Usc0JBQXNCO3dHQUt2QixJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSyIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqIEFuZ3VsYXIgKioqKioqKioqKi9cclxuaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuXHJcbi8qKioqKioqKioqIENvbXBvbmVudCAmIFNlcnZpY2UgKioqKioqKioqKi9cclxuaW1wb3J0IHsgdGFwIH0gZnJvbSBcInJ4anNcIjtcclxuaW1wb3J0IHsgRm9ybUdyb3VwIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XHJcbmltcG9ydCB7IFpDb21wb25lbnQsIFpGaWVsZCwgWkdyb3VwIH0gZnJvbSAnbW1oZ2xvYmFsLXpjb3JlJztcclxuaW1wb3J0IHsgSW5wdXRGaWVsZEJhc2UgfSBmcm9tIFwiLi4vY29tcG9uZW50cy9pbnB1dGZpZWxkYmFzZS5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgWkNvbXBvbmVudFNlcnZpY2UgfSBmcm9tIFwiLi4vc2VydmljZXMvemNvbXBvbmVudC5zZXJ2aWNlXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogXCJhcHAtemlucHV0LWNvbnRhaW5lclwiLFxyXG4gIHRlbXBsYXRlVXJsOiBcIi4vemlucHV0LWNvbnRhaW5lci5jb21wb25lbnQuaHRtbFwiLFxyXG4gIHN0eWxlVXJsczogW1wiLi96aW5wdXQtY29udGFpbmVyLmNvbXBvbmVudC5zY3NzXCJdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBaSW5wdXRDb250YWluZXJDb21wb25lbnQgZXh0ZW5kcyBJbnB1dEZpZWxkQmFzZSBpbXBsZW1lbnRzIFpDb21wb25lbnQsIE9uSW5pdCB7XHJcbiAgQElucHV0KCkgZGF0YTogWkZpZWxkO1xyXG4gIEBJbnB1dCgpIGdyb3VwOiBaR3JvdXA7XHJcbiAgQElucHV0KCkgZm9ybTogRm9ybUdyb3VwO1xyXG5cclxuICBwdWJsaWMgcmVhZG9ubHkgenRleHRfdHlwZSA9IFsnbnVtYmVyJywgJ251bWVyaWMnLCAnZGF0ZScsICdlbWFpbCcsICdwYXNzd29yZCcsICdzZWFyY2gnLCAndGVsJywgJ3RleHQnLCAndXJsJywgJ2N1cnJlbmN5J107XHJcbiAgcHVibGljIHJlYWRvbmx5IHpzZWxlY3RfdHlwZSA9IFsnenVpc2VsZWN0bXVsdGlwbGUnLCAnenVpc2VsZWN0bXVsdGlwbGVfYnV0dG9uJywgJ3NlbGVjdCddO1xyXG4gIHB1YmxpYyByZWFkb25seSB6ZGF0ZV90eXBlID0gWyd6ZGF0ZScsICd6ZGF0ZXRpbWUnLCAnenNob3J0ZGF0ZScsICd6dWlkYXRldGltZScsICd6dWl0aW1lJ107XHJcbiAgcHVibGljIHJlYWRvbmx5IHpwb3N0c2VsZWN0aW5wdXRfdHlwZSA9IFsncG9zdF9zZWxlY3RfaW5wdXQnLCAncHJlX3NlbGVjdF9pbnB1dCcsICd6cGhvbmVfY291bnRyeWNvZGUnXTtcclxuICBwdWJsaWMgcmVhZG9ubHkgemNoZWNrYm94X3R5cGUgPSBbJ2NoZWNrYm94J107XHJcbiAgcHVibGljIHJlYWRvbmx5IHpudW1lcmljX3R5cGUgPSBbJ3pudW1lcmljJ107XHJcbiAgcHVibGljIHJlYWRvbmx5IHRleHRhcmVhX3R5cGUgPSBbJ3RleHRhcmVhJ107XHJcbiAgcHVibGljIHJlYWRvbmx5IHp1cGxvYWRfdHlwZSA9IFsnenVwbG9hZCddO1xyXG4gIHB1YmxpYyByZWFkb25seSB6aW1nX3R5cGUgPSBbJ3ppbWcnXTtcclxuXHJcbiAgY29uc3RydWN0b3IoY29tcFNlcnZpY2U6IFpDb21wb25lbnRTZXJ2aWNlKSB7IHN1cGVyKGNvbXBTZXJ2aWNlKSB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgc3VwZXIuaW5pdENvbXBvbmVudCgpLnBpcGUoXHJcbiAgICAgIHRhcCgoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5jb21wU2VydmljZS5zZXRFZGl0TW9kZSh0aGlzKTtcclxuICAgICAgICB0aGlzLmRhdGEuemxheW91dCA9IHRoaXMuZGF0YS56bGF5b3V0IHx8ICh0aGlzLmNvbnRhaW5lckZpZWxkID8gdGhpcy5jb250YWluZXJGaWVsZC56bGF5b3V0IDogXCJyb3dcIik7XHJcbiAgICAgICAgdGhpcy5pc0xvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgfSkpXHJcbiAgICAgIC5zdWJzY3JpYmUoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRDbGFzcyhmb3JtOiBGb3JtR3JvdXAsIGRhdGE6IFpGaWVsZCkge1xyXG4gICAgcmV0dXJuIGBzdHlsZSR7ZGF0YS5GaWVsZExheW91dFR5cGV9ICR7c3VwZXIuZ2V0Q2xhc3MoZm9ybSwgZGF0YSl9YDtcclxuICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cIm1vYmlsZS1pbnB1dC1jb250YWluZXIgZTF0YWctY29udGFpbmVyLXN0eWxlXCIgKm5nSWY9XCJpc01vYmlsZVNjcmVlbigpICYmICFpc0xvYWRpbmdcIlxyXG4gIFtzdHlsZV09XCJjb21wb25lbnRQcm9wZXJ0aWVzLmNvbnRhaW5lclN0eWxlLnN0eWxlXCI+XHJcbiAgPGlvbi1pdGVtIFtmb3JtR3JvdXBdPVwiZm9ybVwiIGNsYXNzPVwiZTF0YWctY29udGFpbmVyLXN0eWxlMVwiXHJcbiAgICAqbmdJZj1cIighIWNvbXBvbmVudFByb3BlcnRpZXMuaXNWaXNpYmxlRmllbGQgPyBncm91cFtjb21wb25lbnRQcm9wZXJ0aWVzLmlzVmlzaWJsZUZpZWxkXSA6IGNvbXBvbmVudFByb3BlcnRpZXMuaXNWaXNpYmxlKVwiXHJcbiAgICBbbmdDbGFzc109XCJnZXRJb25fSW52YWxpZENsYXNzKGZvcm0sIGRhdGEpXCIgW3N0eWxlXT1cImNvbXBvbmVudFByb3BlcnRpZXMuY29udGFpbmVyU3R5bGUuc3R5bGUxXCI+XHJcbiAgICA8aW9uLWxhYmVsIFthdHRyLmZvcl09XCJkYXRhLlZhbHVlXCIgY2xhc3M9XCJpbnB1dC1sYWJlbCBlMXRhZy1jb250YWluZXItc3R5bGUyXCJcclxuICAgICAgKm5nSWY9XCJkYXRhLlNob3dMYWJlbCA9PT0gdW5kZWZpbmVkIHx8IGRhdGEuU2hvd0xhYmVsXCJcclxuICAgICAgW3Bvc2l0aW9uXT1cImRhdGEuTGFiZWxQb3NpdGlvbiA/IGRhdGEuTGFiZWxQb3NpdGlvbiA6ICdzdGFja2VkJ1wiXHJcbiAgICAgIFtzdHlsZV09XCJjb21wb25lbnRQcm9wZXJ0aWVzLmNvbnRhaW5lclN0eWxlLnN0eWxlMlwiPlxyXG4gICAgICB7e2RhdGEuTGFiZWx9fVxyXG4gICAgICA8aW9uLXRleHRcclxuICAgICAgICAqbmdJZj1cIighIWNvbXBvbmVudFByb3BlcnRpZXMuaXNSZXF1aXJlZEZpZWxkID8gZ3JvdXBbY29tcG9uZW50UHJvcGVydGllcy5pc1JlcXVpcmVkRmllbGRdIDogY29tcG9uZW50UHJvcGVydGllcy5pc1JlcXVpcmVkKVwiXHJcbiAgICAgICAgY29sb3I9XCJkYW5nZXJcIj4qPC9pb24tdGV4dD5cclxuICAgIDwvaW9uLWxhYmVsPlxyXG4gICAgPGRpdiBjbGFzcz1cImlucHV0LXZhbHVlLWZpZWxkXCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJpbnB1dC1maWVsZHMtb3B0aW9uc1wiPlxyXG4gICAgICAgIDxhcHAtenRleHQgKm5nSWY9XCJ6dGV4dF90eXBlLmluY2x1ZGVzKGRhdGEuVHlwZSlcIiBbZGF0YV09XCJkYXRhXCIgW2dyb3VwXT1cImdyb3VwXCIgW2Zvcm1dPVwiZm9ybVwiXHJcbiAgICAgICAgICBbY29udGFpbmVyRmllbGRdPVwiY29udGFpbmVyRmllbGRcIiBbY29tcG9uZW50UHJvcGVydGllc109XCJjb21wb25lbnRQcm9wZXJ0aWVzXCIgY2xhc3M9XCJlMXRhZy1jb250YWluZXItc3R5bGU1XCJcclxuICAgICAgICAgIFtzdHlsZV09XCJjb21wb25lbnRQcm9wZXJ0aWVzLmNvbnRhaW5lclN0eWxlLnN0eWxlNVwiPjwvYXBwLXp0ZXh0PlxyXG4gICAgICAgIDxhcHAtenNlbGVjdG11bHRpcGxlICpuZ0lmPVwienNlbGVjdF90eXBlLmluY2x1ZGVzKGRhdGEuVHlwZSlcIiBbZGF0YV09XCJkYXRhXCIgW2dyb3VwXT1cImdyb3VwXCIgW2Zvcm1dPVwiZm9ybVwiXHJcbiAgICAgICAgICBbY29udGFpbmVyRmllbGRdPVwiY29udGFpbmVyRmllbGRcIiBbY29tcG9uZW50UHJvcGVydGllc109XCJjb21wb25lbnRQcm9wZXJ0aWVzXCIgY2xhc3M9XCJlMXRhZy1jb250YWluZXItc3R5bGU1XCJcclxuICAgICAgICAgIFtzdHlsZV09XCJjb21wb25lbnRQcm9wZXJ0aWVzLmNvbnRhaW5lclN0eWxlLnN0eWxlNVwiPjwvYXBwLXpzZWxlY3RtdWx0aXBsZT5cclxuICAgICAgICA8YXBwLXpkYXRldGltZSAqbmdJZj1cInpkYXRlX3R5cGUuaW5jbHVkZXMoZGF0YS5UeXBlKVwiIFtkYXRhXT1cImRhdGFcIiBbZ3JvdXBdPVwiZ3JvdXBcIiBbZm9ybV09XCJmb3JtXCJcclxuICAgICAgICAgIFtjb250YWluZXJGaWVsZF09XCJjb250YWluZXJGaWVsZFwiIFtjb21wb25lbnRQcm9wZXJ0aWVzXT1cImNvbXBvbmVudFByb3BlcnRpZXNcIiBjbGFzcz1cImUxdGFnLWNvbnRhaW5lci1zdHlsZTVcIlxyXG4gICAgICAgICAgW3N0eWxlXT1cImNvbXBvbmVudFByb3BlcnRpZXMuY29udGFpbmVyU3R5bGUuc3R5bGU1XCI+PC9hcHAtemRhdGV0aW1lPlxyXG4gICAgICAgIDxhcHAtenBvc3RzZWxlY3RpbnB1dCAqbmdJZj1cInpwb3N0c2VsZWN0aW5wdXRfdHlwZS5pbmNsdWRlcyhkYXRhLlR5cGUpXCIgW2RhdGFdPVwiZGF0YVwiIFtncm91cF09XCJncm91cFwiXHJcbiAgICAgICAgICBbZm9ybV09XCJmb3JtXCIgW2NvbnRhaW5lckZpZWxkXT1cImNvbnRhaW5lckZpZWxkXCIgW2NvbXBvbmVudFByb3BlcnRpZXNdPVwiY29tcG9uZW50UHJvcGVydGllc1wiXHJcbiAgICAgICAgICBjbGFzcz1cImUxdGFnLWNvbnRhaW5lci1zdHlsZTVcIiBbc3R5bGVdPVwiY29tcG9uZW50UHJvcGVydGllcy5jb250YWluZXJTdHlsZS5zdHlsZTVcIj5cclxuICAgICAgICA8L2FwcC16cG9zdHNlbGVjdGlucHV0PlxyXG4gICAgICAgIDxhcHAtemNoZWNrYm94ICpuZ0lmPVwiemNoZWNrYm94X3R5cGUuaW5jbHVkZXMoZGF0YS5UeXBlKVwiIFtkYXRhXT1cImRhdGFcIiBbZ3JvdXBdPVwiZ3JvdXBcIiBbZm9ybV09XCJmb3JtXCJcclxuICAgICAgICAgIFtjb250YWluZXJGaWVsZF09XCJjb250YWluZXJGaWVsZFwiIFtjb21wb25lbnRQcm9wZXJ0aWVzXT1cImNvbXBvbmVudFByb3BlcnRpZXNcIiBjbGFzcz1cImUxdGFnLWNvbnRhaW5lci1zdHlsZTVcIlxyXG4gICAgICAgICAgW3N0eWxlXT1cImNvbXBvbmVudFByb3BlcnRpZXMuY29udGFpbmVyU3R5bGUuc3R5bGU1XCI+PC9hcHAtemNoZWNrYm94PlxyXG4gICAgICAgIDxhcHAtem51bWVyaWMgKm5nSWY9XCJ6bnVtZXJpY190eXBlLmluY2x1ZGVzKGRhdGEuVHlwZSlcIiBbZGF0YV09XCJkYXRhXCIgW2dyb3VwXT1cImdyb3VwXCIgW2Zvcm1dPVwiZm9ybVwiXHJcbiAgICAgICAgICBbY29udGFpbmVyRmllbGRdPVwiY29udGFpbmVyRmllbGRcIiBbY29tcG9uZW50UHJvcGVydGllc109XCJjb21wb25lbnRQcm9wZXJ0aWVzXCIgY2xhc3M9XCJlMXRhZy1jb250YWluZXItc3R5bGU1XCJcclxuICAgICAgICAgIFtzdHlsZV09XCJjb21wb25lbnRQcm9wZXJ0aWVzLmNvbnRhaW5lclN0eWxlLnN0eWxlNVwiPjwvYXBwLXpudW1lcmljPlxyXG4gICAgICAgIDxhcHAtenRleHRhcmVhICpuZ0lmPVwidGV4dGFyZWFfdHlwZS5pbmNsdWRlcyhkYXRhLlR5cGUpXCIgW2RhdGFdPVwiZGF0YVwiIFtncm91cF09XCJncm91cFwiIFtmb3JtXT1cImZvcm1cIlxyXG4gICAgICAgICAgW2NvbnRhaW5lckZpZWxkXT1cImNvbnRhaW5lckZpZWxkXCIgW2NvbXBvbmVudFByb3BlcnRpZXNdPVwiY29tcG9uZW50UHJvcGVydGllc1wiIGNsYXNzPVwiZTF0YWctY29udGFpbmVyLXN0eWxlNVwiXHJcbiAgICAgICAgICBbc3R5bGVdPVwiY29tcG9uZW50UHJvcGVydGllcy5jb250YWluZXJTdHlsZS5zdHlsZTVcIj48L2FwcC16dGV4dGFyZWE+XHJcbiAgICAgICAgPGFwcC16dXBsb2FkICpuZ0lmPVwienVwbG9hZF90eXBlLmluY2x1ZGVzKGRhdGEuVHlwZSlcIiBbZGF0YV09XCJkYXRhXCIgW2dyb3VwXT1cImdyb3VwXCIgW2Zvcm1dPVwiZm9ybVwiXHJcbiAgICAgICAgICBbY29udGFpbmVyRmllbGRdPVwiY29udGFpbmVyRmllbGRcIiBbY29tcG9uZW50UHJvcGVydGllc109XCJjb21wb25lbnRQcm9wZXJ0aWVzXCIgY2xhc3M9XCJlMXRhZy1jb250YWluZXItc3R5bGU1XCJcclxuICAgICAgICAgIFtzdHlsZV09XCJjb21wb25lbnRQcm9wZXJ0aWVzLmNvbnRhaW5lclN0eWxlLnN0eWxlNVwiPjwvYXBwLXp1cGxvYWQ+XHJcbiAgICAgICAgPGFwcC16aW1nICpuZ0lmPVwiemltZ190eXBlLmluY2x1ZGVzKGRhdGEuVHlwZSlcIiBbZGF0YV09XCJkYXRhXCIgW2dyb3VwXT1cImdyb3VwXCIgW2Zvcm1dPVwiZm9ybVwiXHJcbiAgICAgICAgICBbY29udGFpbmVyRmllbGRdPVwiY29udGFpbmVyRmllbGRcIiBbY29tcG9uZW50UHJvcGVydGllc109XCJjb21wb25lbnRQcm9wZXJ0aWVzXCIgY2xhc3M9XCJlMXRhZy1jb250YWluZXItc3R5bGU1XCJcclxuICAgICAgICAgIFtzdHlsZV09XCJjb21wb25lbnRQcm9wZXJ0aWVzLmNvbnRhaW5lclN0eWxlLnN0eWxlNVwiPjwvYXBwLXppbWc+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8YXBwLWVycm9yIFtkYXRhXT1cImRhdGFcIiBbZ3JvdXBdPVwiZ3JvdXBcIiBbZm9ybV09XCJmb3JtXCI+PC9hcHAtZXJyb3I+XHJcbiAgICAgIDwhLS0gPGFwcC1maWVsZC1zdWZmaXgtZWxlbWVudCBbZGF0YV09XCJkYXRhXCIgW2dyb3VwXT1cImdyb3VwXCIgW2Zvcm1dPVwiZm9ybVwiIFtjb250YWluZXJGaWVsZF09XCJjb250YWluZXJGaWVsZFwiXHJcbiAgICAgICAgW2NvbXBvbmVudFByb3BlcnRpZXNdPVwiY29tcG9uZW50UHJvcGVydGllc1wiPjwvYXBwLWZpZWxkLXN1ZmZpeC1lbGVtZW50PiAtLT5cclxuICAgIDwvZGl2PlxyXG4gIDwvaW9uLWl0ZW0+XHJcbjwvZGl2PlxyXG5cclxuPGRpdiBjbGFzcz1cImRlc2t0b3AtaW5wdXQtY29udGFpbmVyIGUxdGFnLWNvbnRhaW5lci1zdHlsZVwiIFtmb3JtR3JvdXBdPVwiZm9ybVwiXHJcbiAgW3N0eWxlXT1cImNvbXBvbmVudFByb3BlcnRpZXMuY29udGFpbmVyU3R5bGUuc3R5bGVcIlxyXG4gICpuZ0lmPVwiIWlzTW9iaWxlU2NyZWVuKCkgJiYgIWlzTG9hZGluZyAmJiAoISFjb21wb25lbnRQcm9wZXJ0aWVzLmlzVmlzaWJsZUZpZWxkID8gZ3JvdXBbY29tcG9uZW50UHJvcGVydGllcy5pc1Zpc2libGVGaWVsZF0gOiBjb21wb25lbnRQcm9wZXJ0aWVzLmlzVmlzaWJsZSlcIlxyXG4gIFtuZ0NsYXNzXT1cImdldENsYXNzKGZvcm0sIGRhdGEpXCIgW2Z4TGF5b3V0XT1cImRhdGEuRmllbGRMYXlvdXRUeXBlICE9PSAxID8gJ2NvbHVtbicgOiAncm93J1wiXHJcbiAgZnhMYXlvdXRBbGlnbj1cInNwYWNlLWJldHdlZW4gc3RyZXRjaFwiPlxyXG4gIDxrZW5kby1sYWJlbCBjbGFzcz1cImlucHV0LWxhYmVsIGUxdGFnLWNvbnRhaW5lci1zdHlsZTFcIiBbZm9yXT1cImRhdGEuTmFtZVwiIFt0ZXh0XT1cImRhdGEuTGFiZWxcIiAqbmdJZj1cImRhdGEuU2hvd0xhYmVsXCJcclxuICAgIFtzdHlsZV09XCJjb21wb25lbnRQcm9wZXJ0aWVzLmNvbnRhaW5lclN0eWxlLnN0eWxlMVwiIFtmeEZsZXhdPVwiY29tcG9uZW50UHJvcGVydGllcy5sYWJlbEZsZXhMYXlvdXRTaXplLmFsbFwiXHJcbiAgICBbZnhGbGV4LnhzXT1cImNvbXBvbmVudFByb3BlcnRpZXMubGFiZWxGbGV4TGF5b3V0U2l6ZS54c1wiIFtmeEZsZXguc21dPVwiY29tcG9uZW50UHJvcGVydGllcy5sYWJlbEZsZXhMYXlvdXRTaXplLnNtXCJcclxuICAgIFtmeEZsZXgubWRdPVwiY29tcG9uZW50UHJvcGVydGllcy5sYWJlbEZsZXhMYXlvdXRTaXplLm1kXCIgW2Z4RmxleC5sZ109XCJjb21wb25lbnRQcm9wZXJ0aWVzLmxhYmVsRmxleExheW91dFNpemUubGdcIlxyXG4gICAgW2Z4RmxleC54bF09XCJjb21wb25lbnRQcm9wZXJ0aWVzLmxhYmVsRmxleExheW91dFNpemUueGxcIj5cclxuICAgIDxrZW5kby1sYWJlbFxyXG4gICAgICAqbmdJZj1cImRhdGEuRWRpdE1vZGUudmFsdWUgJiYgKCEhY29tcG9uZW50UHJvcGVydGllcy5pc1JlcXVpcmVkRmllbGQgPyBncm91cFtjb21wb25lbnRQcm9wZXJ0aWVzLmlzUmVxdWlyZWRGaWVsZF0gOiBjb21wb25lbnRQcm9wZXJ0aWVzLmlzUmVxdWlyZWQpXCJcclxuICAgICAgdGV4dD1cIiAqXCIgY2xhc3M9XCJyZXF1aXJlZC1pY29uXCI+XHJcbiAgICA8L2tlbmRvLWxhYmVsPlxyXG4gICAgPGFwcC1pbnB1dC1maWVsZC1hZGRvbnMgY2xhc3M9XCJhZGRvbi10b3AgZTF0YWctY29udGFpbmVyLXN0eWxlN1wiIFtwb3NpdGlvbl09XCIndG9wJ1wiIFtkYXRhXT1cImRhdGFcIiBbZ3JvdXBdPVwiZ3JvdXBcIlxyXG4gICAgICBbZm9ybV09XCJmb3JtXCIgW2NvbnRhaW5lckZpZWxkXT1cImNvbnRhaW5lckZpZWxkXCIgW2NvbXBvbmVudFByb3BlcnRpZXNdPVwiY29tcG9uZW50UHJvcGVydGllc1wiXHJcbiAgICAgIFtzdHlsZV09XCJjb21wb25lbnRQcm9wZXJ0aWVzLmNvbnRhaW5lclN0eWxlLnN0eWxlN1wiPlxyXG4gICAgPC9hcHAtaW5wdXQtZmllbGQtYWRkb25zPlxyXG4gIDwva2VuZG8tbGFiZWw+XHJcbiAgPGRpdiBjbGFzcz1cImlucHV0LXZhbHVlLWNvbnRhaW5lciBlMXRhZy1jb250YWluZXItc3R5bGUyXCIgW3N0eWxlXT1cImNvbXBvbmVudFByb3BlcnRpZXMuY29udGFpbmVyU3R5bGUuc3R5bGUyXCJcclxuICAgIFtmeEZsZXhdPVwiY29tcG9uZW50UHJvcGVydGllcy5maWVsZEZsZXhMYXlvdXRTaXplLmFsbFwiIFtmeEZsZXgueHNdPVwiY29tcG9uZW50UHJvcGVydGllcy5maWVsZEZsZXhMYXlvdXRTaXplLnhzXCJcclxuICAgIFtmeEZsZXguc21dPVwiY29tcG9uZW50UHJvcGVydGllcy5maWVsZEZsZXhMYXlvdXRTaXplLnNtXCIgW2Z4RmxleC5tZF09XCJjb21wb25lbnRQcm9wZXJ0aWVzLmZpZWxkRmxleExheW91dFNpemUubWRcIlxyXG4gICAgW2Z4RmxleC5sZ109XCJjb21wb25lbnRQcm9wZXJ0aWVzLmZpZWxkRmxleExheW91dFNpemUubGdcIiBbZnhGbGV4LnhsXT1cImNvbXBvbmVudFByb3BlcnRpZXMuZmllbGRGbGV4TGF5b3V0U2l6ZS54bFwiPlxyXG4gICAgPGRpdiAqbmdJZj1cImRhdGEuRWRpdE1vZGUudmFsdWVcIiBjbGFzcz1cImlucHV0LXZhbHVlLWZpZWxkIGUxdGFnLWNvbnRhaW5lci1zdHlsZTNcIlxyXG4gICAgICBbc3R5bGVdPVwiY29tcG9uZW50UHJvcGVydGllcy5jb250YWluZXJTdHlsZS5zdHlsZTNcIj5cclxuICAgICAgPCEtLSBUT0RPOiBBZGQgMSBtb3JlIGxheWVyIGZvciB0aGlzIHN3aXRjaCBjYXNlLS0+XHJcbiAgICAgIDxhcHAtaW5wdXQtZmllbGQtYWRkb25zIGNsYXNzPVwiYWRkb24tbGVmdCBlMXRhZy1jb250YWluZXItc3R5bGU3XCIgW3Bvc2l0aW9uXT1cIidsZWZ0J1wiIFtkYXRhXT1cImRhdGFcIlxyXG4gICAgICAgIFtncm91cF09XCJncm91cFwiIFtmb3JtXT1cImZvcm1cIiBbY29udGFpbmVyRmllbGRdPVwiY29udGFpbmVyRmllbGRcIiBbY29tcG9uZW50UHJvcGVydGllc109XCJjb21wb25lbnRQcm9wZXJ0aWVzXCJcclxuICAgICAgICBbc3R5bGVdPVwiY29tcG9uZW50UHJvcGVydGllcy5jb250YWluZXJTdHlsZS5zdHlsZTdcIj5cclxuICAgICAgPC9hcHAtaW5wdXQtZmllbGQtYWRkb25zPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiaW5wdXQtZmllbGRzLW9wdGlvbnMgZTF0YWctY29udGFpbmVyLXN0eWxlNFwiIFtzdHlsZV09XCJjb21wb25lbnRQcm9wZXJ0aWVzLmNvbnRhaW5lclN0eWxlLnN0eWxlNFwiPlxyXG4gICAgICAgIDxhcHAtenRleHQgKm5nSWY9XCJ6dGV4dF90eXBlLmluY2x1ZGVzKGRhdGEuVHlwZSlcIiBbZGF0YV09XCJkYXRhXCIgW2dyb3VwXT1cImdyb3VwXCIgW2Zvcm1dPVwiZm9ybVwiXHJcbiAgICAgICAgICBbY29udGFpbmVyRmllbGRdPVwiY29udGFpbmVyRmllbGRcIiBbY29tcG9uZW50UHJvcGVydGllc109XCJjb21wb25lbnRQcm9wZXJ0aWVzXCIgY2xhc3M9XCJlMXRhZy1jb250YWluZXItc3R5bGU1XCJcclxuICAgICAgICAgIFtzdHlsZV09XCJjb21wb25lbnRQcm9wZXJ0aWVzLmNvbnRhaW5lclN0eWxlLnN0eWxlNVwiPjwvYXBwLXp0ZXh0PlxyXG4gICAgICAgIDxhcHAtenNlbGVjdG11bHRpcGxlICpuZ0lmPVwienNlbGVjdF90eXBlLmluY2x1ZGVzKGRhdGEuVHlwZSlcIiBbZGF0YV09XCJkYXRhXCIgW2dyb3VwXT1cImdyb3VwXCIgW2Zvcm1dPVwiZm9ybVwiXHJcbiAgICAgICAgICBbY29udGFpbmVyRmllbGRdPVwiY29udGFpbmVyRmllbGRcIiBbY29tcG9uZW50UHJvcGVydGllc109XCJjb21wb25lbnRQcm9wZXJ0aWVzXCIgY2xhc3M9XCJlMXRhZy1jb250YWluZXItc3R5bGU1XCJcclxuICAgICAgICAgIFtzdHlsZV09XCJjb21wb25lbnRQcm9wZXJ0aWVzLmNvbnRhaW5lclN0eWxlLnN0eWxlNVwiPjwvYXBwLXpzZWxlY3RtdWx0aXBsZT5cclxuICAgICAgICA8YXBwLXpkYXRldGltZSAqbmdJZj1cInpkYXRlX3R5cGUuaW5jbHVkZXMoZGF0YS5UeXBlKVwiIFtkYXRhXT1cImRhdGFcIiBbZ3JvdXBdPVwiZ3JvdXBcIiBbZm9ybV09XCJmb3JtXCJcclxuICAgICAgICAgIFtjb250YWluZXJGaWVsZF09XCJjb250YWluZXJGaWVsZFwiIFtjb21wb25lbnRQcm9wZXJ0aWVzXT1cImNvbXBvbmVudFByb3BlcnRpZXNcIiBjbGFzcz1cImUxdGFnLWNvbnRhaW5lci1zdHlsZTVcIlxyXG4gICAgICAgICAgW3N0eWxlXT1cImNvbXBvbmVudFByb3BlcnRpZXMuY29udGFpbmVyU3R5bGUuc3R5bGU1XCI+PC9hcHAtemRhdGV0aW1lPlxyXG4gICAgICAgIDxhcHAtenBvc3RzZWxlY3RpbnB1dCAqbmdJZj1cInpwb3N0c2VsZWN0aW5wdXRfdHlwZS5pbmNsdWRlcyhkYXRhLlR5cGUpXCIgW2RhdGFdPVwiZGF0YVwiIFtncm91cF09XCJncm91cFwiXHJcbiAgICAgICAgICBbZm9ybV09XCJmb3JtXCIgW2NvbnRhaW5lckZpZWxkXT1cImNvbnRhaW5lckZpZWxkXCIgW2NvbXBvbmVudFByb3BlcnRpZXNdPVwiY29tcG9uZW50UHJvcGVydGllc1wiXHJcbiAgICAgICAgICBjbGFzcz1cImUxdGFnLWNvbnRhaW5lci1zdHlsZTVcIiBbc3R5bGVdPVwiY29tcG9uZW50UHJvcGVydGllcy5jb250YWluZXJTdHlsZS5zdHlsZTVcIj5cclxuICAgICAgICA8L2FwcC16cG9zdHNlbGVjdGlucHV0PlxyXG4gICAgICAgIDxhcHAtemNoZWNrYm94ICpuZ0lmPVwiemNoZWNrYm94X3R5cGUuaW5jbHVkZXMoZGF0YS5UeXBlKVwiIFtkYXRhXT1cImRhdGFcIiBbZ3JvdXBdPVwiZ3JvdXBcIiBbZm9ybV09XCJmb3JtXCJcclxuICAgICAgICAgIFtjb250YWluZXJGaWVsZF09XCJjb250YWluZXJGaWVsZFwiIFtjb21wb25lbnRQcm9wZXJ0aWVzXT1cImNvbXBvbmVudFByb3BlcnRpZXNcIiBjbGFzcz1cImUxdGFnLWNvbnRhaW5lci1zdHlsZTVcIlxyXG4gICAgICAgICAgW3N0eWxlXT1cImNvbXBvbmVudFByb3BlcnRpZXMuY29udGFpbmVyU3R5bGUuc3R5bGU1XCI+PC9hcHAtemNoZWNrYm94PlxyXG4gICAgICAgIDxhcHAtem51bWVyaWMgKm5nSWY9XCJ6bnVtZXJpY190eXBlLmluY2x1ZGVzKGRhdGEuVHlwZSlcIiBbZGF0YV09XCJkYXRhXCIgW2dyb3VwXT1cImdyb3VwXCIgW2Zvcm1dPVwiZm9ybVwiXHJcbiAgICAgICAgICBbY29udGFpbmVyRmllbGRdPVwiY29udGFpbmVyRmllbGRcIiBbY29tcG9uZW50UHJvcGVydGllc109XCJjb21wb25lbnRQcm9wZXJ0aWVzXCIgY2xhc3M9XCJlMXRhZy1jb250YWluZXItc3R5bGU1XCJcclxuICAgICAgICAgIFtzdHlsZV09XCJjb21wb25lbnRQcm9wZXJ0aWVzLmNvbnRhaW5lclN0eWxlLnN0eWxlNVwiPjwvYXBwLXpudW1lcmljPlxyXG4gICAgICAgIDxhcHAtenRleHRhcmVhICpuZ0lmPVwidGV4dGFyZWFfdHlwZS5pbmNsdWRlcyhkYXRhLlR5cGUpXCIgW2RhdGFdPVwiZGF0YVwiIFtncm91cF09XCJncm91cFwiIFtmb3JtXT1cImZvcm1cIlxyXG4gICAgICAgICAgW2NvbnRhaW5lckZpZWxkXT1cImNvbnRhaW5lckZpZWxkXCIgW2NvbXBvbmVudFByb3BlcnRpZXNdPVwiY29tcG9uZW50UHJvcGVydGllc1wiIGNsYXNzPVwiZTF0YWctY29udGFpbmVyLXN0eWxlNVwiXHJcbiAgICAgICAgICBbc3R5bGVdPVwiY29tcG9uZW50UHJvcGVydGllcy5jb250YWluZXJTdHlsZS5zdHlsZTVcIj48L2FwcC16dGV4dGFyZWE+XHJcbiAgICAgICAgPGFwcC16dXBsb2FkICpuZ0lmPVwienVwbG9hZF90eXBlLmluY2x1ZGVzKGRhdGEuVHlwZSlcIiBbZGF0YV09XCJkYXRhXCIgW2dyb3VwXT1cImdyb3VwXCIgW2Zvcm1dPVwiZm9ybVwiXHJcbiAgICAgICAgICBbY29udGFpbmVyRmllbGRdPVwiY29udGFpbmVyRmllbGRcIiBbY29tcG9uZW50UHJvcGVydGllc109XCJjb21wb25lbnRQcm9wZXJ0aWVzXCIgY2xhc3M9XCJlMXRhZy1jb250YWluZXItc3R5bGU1XCJcclxuICAgICAgICAgIFtzdHlsZV09XCJjb21wb25lbnRQcm9wZXJ0aWVzLmNvbnRhaW5lclN0eWxlLnN0eWxlNVwiPjwvYXBwLXp1cGxvYWQ+XHJcbiAgICAgICAgPGFwcC16aW1nICpuZ0lmPVwiemltZ190eXBlLmluY2x1ZGVzKGRhdGEuVHlwZSlcIiBbZGF0YV09XCJkYXRhXCIgW2dyb3VwXT1cImdyb3VwXCIgW2Zvcm1dPVwiZm9ybVwiXHJcbiAgICAgICAgICBbY29udGFpbmVyRmllbGRdPVwiY29udGFpbmVyRmllbGRcIiBbY29tcG9uZW50UHJvcGVydGllc109XCJjb21wb25lbnRQcm9wZXJ0aWVzXCIgY2xhc3M9XCJlMXRhZy1jb250YWluZXItc3R5bGU1XCJcclxuICAgICAgICAgIFtzdHlsZV09XCJjb21wb25lbnRQcm9wZXJ0aWVzLmNvbnRhaW5lclN0eWxlLnN0eWxlNVwiPjwvYXBwLXppbWc+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8YXBwLWlucHV0LWZpZWxkLWFkZG9ucyBjbGFzcz1cImFkZG9uLXJpZ2h0IGUxdGFnLWNvbnRhaW5lci1zdHlsZTdcIiBbcG9zaXRpb25dPVwiJ3JpZ2h0J1wiIFtkYXRhXT1cImRhdGFcIlxyXG4gICAgICAgIFtncm91cF09XCJncm91cFwiIFtmb3JtXT1cImZvcm1cIiBbY29udGFpbmVyRmllbGRdPVwiY29udGFpbmVyRmllbGRcIiBbY29tcG9uZW50UHJvcGVydGllc109XCJjb21wb25lbnRQcm9wZXJ0aWVzXCJcclxuICAgICAgICBbc3R5bGVdPVwiY29tcG9uZW50UHJvcGVydGllcy5jb250YWluZXJTdHlsZS5zdHlsZTdcIj5cclxuICAgICAgPC9hcHAtaW5wdXQtZmllbGQtYWRkb25zPlxyXG4gICAgPC9kaXY+XHJcbiAgICA8YXBwLWlucHV0LWZpZWxkLWFkZG9ucyBjbGFzcz1cImFkZG9uLWJvdHRvbSBlMXRhZy1jb250YWluZXItc3R5bGU3XCIgW3Bvc2l0aW9uXT1cIidib3R0b20nXCIgW2RhdGFdPVwiZGF0YVwiXHJcbiAgICAgIFtncm91cF09XCJncm91cFwiIFtmb3JtXT1cImZvcm1cIiBbY29udGFpbmVyRmllbGRdPVwiY29udGFpbmVyRmllbGRcIiBbY29tcG9uZW50UHJvcGVydGllc109XCJjb21wb25lbnRQcm9wZXJ0aWVzXCJcclxuICAgICAgW3N0eWxlXT1cImNvbXBvbmVudFByb3BlcnRpZXMuY29udGFpbmVyU3R5bGUuc3R5bGU3XCI+XHJcbiAgICA8L2FwcC1pbnB1dC1maWVsZC1hZGRvbnM+XHJcbiAgICA8YXBwLWVycm9yIFtkYXRhXT1cImRhdGFcIiBbZ3JvdXBdPVwiZ3JvdXBcIiBbZm9ybV09XCJmb3JtXCI+PC9hcHAtZXJyb3I+XHJcbiAgICA8a2VuZG8tbGFiZWwgY2xhc3M9XCJpbnB1dC12YWx1ZSBlMXRhZy1jb250YWluZXItc3R5bGU2XCIgKm5nSWY9XCIhKGRhdGEuRWRpdE1vZGUudmFsdWUpXCJcclxuICAgICAgW3N0eWxlXT1cImNvbXBvbmVudFByb3BlcnRpZXMuY29udGFpbmVyU3R5bGUuc3R5bGU2XCJcclxuICAgICAgW3RleHRdPVwiZ3JvdXAuek1vZGVsW2RhdGEuVmFsdWVdIHwgaW5wdXRUZXh0IDogZGF0YTogZ3JvdXAgfCBhc3luY1wiPjwva2VuZG8tbGFiZWw+XHJcbiAgPC9kaXY+XHJcblxyXG48L2Rpdj5cclxuIl19
@@ -0,0 +1,120 @@
1
+ import { formatDate } from "@angular/common";
2
+ import { Pipe } from "@angular/core";
3
+ import { ZComponentHelper, ZGroup, ZSelectPostApiParams } from "mmhglobal-zcore";
4
+ import { of } from "rxjs";
5
+ import { map } from "rxjs/operators";
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "mmhglobal-zcore";
8
+ export class ZInputParser {
9
+ constructor(resourceApiService, cacheService, webApiService) {
10
+ this.resourceApiService = resourceApiService;
11
+ this.cacheService = cacheService;
12
+ this.webApiService = webApiService;
13
+ this.zdate_type = ['zdate', 'zdatetime', 'zshortdate', 'zuidatetime', 'zuitime'];
14
+ this.zcheckbox_type = ['checkbox'];
15
+ this.zselect_type = ['zuiselectmultiple', 'zuiselectmultiple_button', 'select'];
16
+ }
17
+ transform(value, data, group) {
18
+ if (!value) {
19
+ return value;
20
+ }
21
+ if (this.zdate_type.includes(data.Type)) {
22
+ return of(formatDate(value, this.getDateTimeFormat(data.Type), 'en_US'));
23
+ }
24
+ else if (this.zcheckbox_type.includes(data.Type)) {
25
+ return of(value ? "Yes" : "No");
26
+ }
27
+ else if (this.zselect_type.includes(data.Type)) {
28
+ const selectField = { data: {}, itemDataField: '', itemTextField: '', itemValueField: '' };
29
+ ZComponentHelper.setSelectMultipleTextValue(data.SelectOptions, selectField);
30
+ group._debug = group._debug || new ZGroup();
31
+ return this.loadZData(data, group, selectField).pipe(map(res => {
32
+ const optionData = res.dataSet || res || [];
33
+ const optionValue = optionData ? optionData.find(o => o[selectField.itemValueField] == value) : null;
34
+ if (optionValue) {
35
+ return this.getItemTemplate(optionValue, data, group, selectField.itemValueField, selectField.itemTextField);
36
+ }
37
+ else {
38
+ return "";
39
+ }
40
+ }));
41
+ }
42
+ return of(value);
43
+ }
44
+ // To refactor
45
+ getDateTimeFormat(dateType) {
46
+ if (dateType === "ztime") {
47
+ return "hh:mm";
48
+ }
49
+ else if (dateType === "zuidatetime") {
50
+ return "dd-MMM-yyyy h:mm a";
51
+ }
52
+ else if (dateType === "zuitime") {
53
+ return "hh:mm:ss";
54
+ }
55
+ else if (dateType === "zshortdate") {
56
+ return "MMM-yyyy";
57
+ }
58
+ return "dd-MMM-yyyy";
59
+ }
60
+ loadZData(data, group, selectField) {
61
+ if (data.OptionResourceURL) {
62
+ const resourceUrl = this.resourceApiService.getURL(data.OptionResourceURL);
63
+ const filterParam = new ZSelectPostApiParams();
64
+ filterParam.sorts = data.OptionSort;
65
+ filterParam.columns = data.OptionColumns;
66
+ filterParam.filters = data.OptionFilter;
67
+ return ZComponentHelper.getDataOptions(data.OptionName, filterParam, group, resourceUrl, this.cacheService, this.webApiService, false);
68
+ }
69
+ else {
70
+ return of(this.getItemsData(data, group, selectField.itemDataField));
71
+ }
72
+ }
73
+ getItemsData(data, group, itemDataField) {
74
+ const optionName = data.OptionName || itemDataField || 'group.zData.' + data.Name;
75
+ if (Array.isArray(data.SelectOptions) && !group.zData[optionName.slice(12)]) {
76
+ group.zData[optionName.slice(12)] = data.SelectOptions;
77
+ itemDataField = optionName;
78
+ }
79
+ if (optionName.startsWith('zData.')) {
80
+ return group.zData[optionName.slice(6)] || [];
81
+ }
82
+ if (optionName.startsWith('group.zData.')) {
83
+ return group.zData[optionName.slice(12)] || [];
84
+ }
85
+ if (optionName.startsWith('group.')) {
86
+ return group[optionName.slice(6)] || [];
87
+ }
88
+ if (optionName) {
89
+ return group[optionName] || [];
90
+ }
91
+ }
92
+ getItemTemplate(item, data, group, itemValueField, itemTextField) {
93
+ if (data.ItemTemplate) {
94
+ const getTemplateFunc = ZComponentHelper.getGroupEvalValue.call({ group: group }, data.ItemTemplate);
95
+ return getTemplateFunc({
96
+ item,
97
+ data,
98
+ group,
99
+ itemValueField,
100
+ itemTextField
101
+ });
102
+ }
103
+ else if (itemTextField) {
104
+ return item[itemTextField];
105
+ }
106
+ else {
107
+ return Object.values(item).join(", ");
108
+ }
109
+ }
110
+ }
111
+ ZInputParser.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ZInputParser, deps: [{ token: i1.ResourceApiService }, { token: i1.CacheService }, { token: i1.WebApiService }], target: i0.ɵɵFactoryTarget.Pipe });
112
+ ZInputParser.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ZInputParser, name: "inputText" });
113
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ZInputParser, decorators: [{
114
+ type: Pipe,
115
+ args: [{
116
+ name: "inputText",
117
+ pure: true,
118
+ }]
119
+ }], ctorParameters: function () { return [{ type: i1.ResourceApiService }, { type: i1.CacheService }, { type: i1.WebApiService }]; } });
120
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiemlucHV0LWNvbnRhaW5lci5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbW1oZ2xvYmFsLWR5bmFtaWNmb3JtL3NyYy9saWIvemlucHV0LWNvbnRhaW5lci96aW5wdXQtY29udGFpbmVyLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBQ3BELE9BQU8sRUFBbUQsZ0JBQWdCLEVBQVUsTUFBTSxFQUFpQyxvQkFBb0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3pLLE9BQU8sRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdEMsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7QUFNckMsTUFBTSxPQUFPLFlBQVk7SUFLdkIsWUFBb0Isa0JBQXNDLEVBQVUsWUFBMEIsRUFBVSxhQUE0QjtRQUFoSCx1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW9CO1FBQVUsaUJBQVksR0FBWixZQUFZLENBQWM7UUFBVSxrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUpuSCxlQUFVLEdBQUcsQ0FBQyxPQUFPLEVBQUUsV0FBVyxFQUFFLFlBQVksRUFBRSxhQUFhLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFDNUUsbUJBQWMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQzlCLGlCQUFZLEdBQUcsQ0FBQyxtQkFBbUIsRUFBRSwwQkFBMEIsRUFBRSxRQUFRLENBQUMsQ0FBQztJQUU0QyxDQUFDO0lBRXpJLFNBQVMsQ0FBQyxLQUFVLEVBQUUsSUFBWSxFQUFFLEtBQWE7UUFDL0MsSUFBSSxDQUFDLEtBQUssRUFBRTtZQUNWLE9BQU8sS0FBSyxDQUFDO1NBQ2Q7UUFFRCxJQUFJLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLElB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QyxFQUFFO1lBQ25DLE9BQU8sS0FBSyxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7U0FDekM7UUFDRCxJQUFJLFVBQVUsRUFBRTtZQUNkLE9BQU8sS0FBSyxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsQ0FBQztTQUNoQztJQUNILENBQUM7SUFFTyxlQUFlLENBQ3JCLElBQVMsRUFDVCxJQUFTLEVBQ1QsS0FBVSxFQUNWLGNBQXNCLEVBQ3RCLGFBQXFCO1FBRXJCLElBQUksSUFBSSxDQUFDLFlBQVksRUFBRTtZQUNyQixNQUFNLGVBQWUsR0FBRyxnQkFBZ0IsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEVBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO1lBRXJHLE9BQU8sZUFBZSxDQUFDO2dCQUNyQixJQUFJO2dCQUNKLElBQUk7Z0JBQ0osS0FBSztnQkFDTCxjQUFjO2dCQUNkLGFBQWE7YUFDbUIsQ0FBQyxDQUFDO1NBQ3JDO2FBQU0sSUFBSSxhQUFhLEVBQUU7WUFDeEIsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7U0FDNUI7YUFBTTtZQUNMLE9BQU8sTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDdkM7SUFDSCxDQUFDOzswR0E1SFUsWUFBWTt3R0FBWixZQUFZOzRGQUFaLFlBQVk7a0JBSnhCLElBQUk7bUJBQUM7b0JBQ0osSUFBSSxFQUFFLFdBQVc7b0JBQ2pCLElBQUksRUFBRSxJQUFJO2lCQUNYIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZm9ybWF0RGF0ZSB9IGZyb20gXCJAYW5ndWxhci9jb21tb25cIjtcclxuaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IENhY2hlU2VydmljZSwgUmVzb3VyY2VBcGlTZXJ2aWNlLCBXZWJBcGlTZXJ2aWNlLCBaQ29tcG9uZW50SGVscGVyLCBaRmllbGQsIFpHcm91cCwgWlNlbGVjdE11bHRpcGxlVGVtcGxhdGVQYXJhbXMsIFpTZWxlY3RQb3N0QXBpUGFyYW1zIH0gZnJvbSBcIm1taGdsb2JhbC16Y29yZVwiO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBvZiB9IGZyb20gXCJyeGpzXCI7XHJcbmltcG9ydCB7IG1hcCB9IGZyb20gXCJyeGpzL29wZXJhdG9yc1wiO1xyXG5cclxuQFBpcGUoe1xyXG4gIG5hbWU6IFwiaW5wdXRUZXh0XCIsXHJcbiAgcHVyZTogdHJ1ZSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFpJbnB1dFBhcnNlciBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xyXG4gIHByaXZhdGUgcmVhZG9ubHkgemRhdGVfdHlwZSA9IFsnemRhdGUnLCAnemRhdGV0aW1lJywgJ3pzaG9ydGRhdGUnLCAnenVpZGF0ZXRpbWUnLCAnenVpdGltZSddO1xyXG4gIHByaXZhdGUgcmVhZG9ubHkgemNoZWNrYm94X3R5cGUgPSBbJ2NoZWNrYm94J107XHJcbiAgcHJpdmF0ZSByZWFkb25seSB6c2VsZWN0X3R5cGUgPSBbJ3p1aXNlbGVjdG11bHRpcGxlJywgJ3p1aXNlbGVjdG11bHRpcGxlX2J1dHRvbicsICdzZWxlY3QnXTtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZXNvdXJjZUFwaVNlcnZpY2U6IFJlc291cmNlQXBpU2VydmljZSwgcHJpdmF0ZSBjYWNoZVNlcnZpY2U6IENhY2hlU2VydmljZSwgcHJpdmF0ZSB3ZWJBcGlTZXJ2aWNlOiBXZWJBcGlTZXJ2aWNlKSB7IH1cclxuXHJcbiAgdHJhbnNmb3JtKHZhbHVlOiBhbnksIGRhdGE6IFpGaWVsZCwgZ3JvdXA6IFpHcm91cCk6IE9ic2VydmFibGU8c3RyaW5nPiB7XHJcbiAgICBpZiAoIXZhbHVlKSB7XHJcbiAgICAgIHJldHVybiB2YWx1ZTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodGhpcy56ZGF0ZV90eXBlLmluY2x1ZGVzKGRhdGEuVHlwZSkpIHtcclxuICAgICAgcmV0dXJuIG9mKGZvcm1hdERhdGUodmFsdWUsIHRoaXMuZ2V0RGF0ZVRpbWVGb3JtYXQoZGF0YS5UeXBlKSwgJ2VuX1VTJykpO1xyXG4gICAgfVxyXG4gICAgZWxzZSBpZiAodGhpcy56Y2hlY2tib3hfdHlwZS5pbmNsdWRlcyhkYXRhLlR5cGUpKSB7XHJcbiAgICAgIHJldHVybiBvZih2YWx1ZSA/IFwiWWVzXCIgOiBcIk5vXCIpO1xyXG4gICAgfVxyXG4gICAgZWxzZSBpZiAodGhpcy56c2VsZWN0X3R5cGUuaW5jbHVkZXMoZGF0YS5UeXBlKSkge1xyXG4gICAgICBjb25zdCBzZWxlY3RGaWVsZCA9IHsgZGF0YToge30sIGl0ZW1EYXRhRmllbGQ6ICcnLCBpdGVtVGV4dEZpZWxkOiAnJywgaXRlbVZhbHVlRmllbGQ6ICcnIH07XHJcbiAgICAgIFpDb21wb25lbnRIZWxwZXIuc2V0U2VsZWN0TXVsdGlwbGVUZXh0VmFsdWUoZGF0YS5TZWxlY3RPcHRpb25zLCBzZWxlY3RGaWVsZCk7XHJcbiAgICAgIGdyb3VwLl9kZWJ1ZyA9IGdyb3VwLl9kZWJ1ZyB8fCBuZXcgWkdyb3VwKCk7XHJcbiAgICAgIHJldHVybiB0aGlzLmxvYWRaRGF0YShkYXRhLCBncm91cCwgc2VsZWN0RmllbGQpLnBpcGUoXHJcbiAgICAgICAgbWFwKHJlcyA9PiB7XHJcbiAgICAgICAgICBjb25zdCBvcHRpb25EYXRhID0gcmVzLmRhdGFTZXQgfHwgcmVzIHx8IFtdO1xyXG4gICAgICAgICAgY29uc3Qgb3B0aW9uVmFsdWUgPSBvcHRpb25EYXRhID8gb3B0aW9uRGF0YS5maW5kKG8gPT4gb1tzZWxlY3RGaWVsZC5pdGVtVmFsdWVGaWVsZF0gPT0gdmFsdWUpIDogbnVsbDtcclxuICAgICAgICAgIGlmIChvcHRpb25WYWx1ZSkge1xyXG4gICAgICAgICAgICByZXR1cm4gdGhpcy5nZXRJdGVtVGVtcGxhdGUob3B0aW9uVmFsdWUsIGRhdGEsIGdyb3VwLCBzZWxlY3RGaWVsZC5pdGVtVmFsdWVGaWVsZCwgc2VsZWN0RmllbGQuaXRlbVRleHRGaWVsZCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBlbHNlIHtcclxuICAgICAgICAgICAgcmV0dXJuIFwiXCI7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSkpO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBvZih2YWx1ZSk7XHJcbiAgfVxyXG5cclxuICAvLyBUbyByZWZhY3RvclxyXG4gIHByaXZhdGUgZ2V0RGF0ZVRpbWVGb3JtYXQoZGF0ZVR5cGU6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICBpZiAoZGF0ZVR5cGUgPT09IFwienRpbWVcIikge1xyXG4gICAgICByZXR1cm4gXCJoaDptbVwiO1xyXG4gICAgfVxyXG4gICAgZWxzZSBpZiAoZGF0ZVR5cGUgPT09IFwienVpZGF0ZXRpbWVcIikge1xyXG4gICAgICByZXR1cm4gXCJkZC1NTU0teXl5eSBoOm1tIGFcIjtcclxuICAgIH1cclxuICAgIGVsc2UgaWYgKGRhdGVUeXBlID09PSBcInp1aXRpbWVcIikge1xyXG4gICAgICByZXR1cm4gXCJoaDptbTpzc1wiO1xyXG4gICAgfVxyXG4gICAgZWxzZSBpZiAoZGF0ZVR5cGUgPT09IFwienNob3J0ZGF0ZVwiKSB7XHJcbiAgICAgIHJldHVybiBcIk1NTS15eXl5XCI7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gXCJkZC1NTU0teXl5eVwiO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBsb2FkWkRhdGEoZGF0YTogWkZpZWxkLCBncm91cDogWkdyb3VwLCBzZWxlY3RGaWVsZDogYW55KTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGlmIChkYXRhLk9wdGlvblJlc291cmNlVVJMKSB7XHJcbiAgICAgIGNvbnN0IHJlc291cmNlVXJsID0gdGhpcy5yZXNvdXJjZUFwaVNlcnZpY2UuZ2V0VVJMKFxyXG4gICAgICAgIGRhdGEuT3B0aW9uUmVzb3VyY2VVUkxcclxuICAgICAgKTtcclxuXHJcbiAgICAgIGNvbnN0IGZpbHRlclBhcmFtID0gbmV3IFpTZWxlY3RQb3N0QXBpUGFyYW1zKCk7XHJcbiAgICAgIGZpbHRlclBhcmFtLnNvcnRzID0gZGF0YS5PcHRpb25Tb3J0O1xyXG4gICAgICBmaWx0ZXJQYXJhbS5jb2x1bW5zID0gZGF0YS5PcHRpb25Db2x1bW5zO1xyXG4gICAgICBmaWx0ZXJQYXJhbS5maWx0ZXJzID0gZGF0YS5PcHRpb25GaWx0ZXI7XHJcblxyXG4gICAgICByZXR1cm4gWkNvbXBvbmVudEhlbHBlci5nZXREYXRhT3B0aW9ucyhcclxuICAgICAgICBkYXRhLk9wdGlvbk5hbWUsXHJcbiAgICAgICAgZmlsdGVyUGFyYW0sXHJcbiAgICAgICAgZ3JvdXAsXHJcbiAgICAgICAgcmVzb3VyY2VVcmwsXHJcbiAgICAgICAgdGhpcy5jYWNoZVNlcnZpY2UsXHJcbiAgICAgICAgdGhpcy53ZWJBcGlTZXJ2aWNlLFxyXG4gICAgICAgIGZhbHNlXHJcbiAgICAgICk7XHJcbiAgICB9XHJcbiAgICBlbHNlIHtcclxuICAgICAgcmV0dXJuIG9mKHRoaXMuZ2V0SXRlbXNEYXRhKGRhdGEsIGdyb3VwLCBzZWxlY3RGaWVsZC5pdGVtRGF0YUZpZWxkKSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldEl0ZW1zRGF0YShkYXRhLCBncm91cCwgaXRlbURhdGFGaWVsZCkge1xyXG4gICAgY29uc3Qgb3B0aW9uTmFtZSA9IGRhdGEuT3B0aW9uTmFtZSB8fCBpdGVtRGF0YUZpZWxkIHx8ICdncm91cC56RGF0YS4nICsgZGF0YS5OYW1lO1xyXG4gICAgaWYgKEFycmF5LmlzQXJyYXkoZGF0YS5TZWxlY3RPcHRpb25zKSAmJiAhZ3JvdXAuekRhdGFbb3B0aW9uTmFtZS5zbGljZSgxMildKSB7XHJcbiAgICAgIGdyb3VwLnpEYXRhW29wdGlvbk5hbWUuc2xpY2UoMTIpXSA9IGRhdGEuU2VsZWN0T3B0aW9ucztcclxuICAgICAgaXRlbURhdGFGaWVsZCA9IG9wdGlvbk5hbWU7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKG9wdGlvbk5hbWUuc3RhcnRzV2l0aCgnekRhdGEuJykpIHtcclxuICAgICAgcmV0dXJuIGdyb3VwLnpEYXRhW29wdGlvbk5hbWUuc2xpY2UoNildIHx8IFtdO1xyXG4gICAgfVxyXG4gICAgaWYgKG9wdGlvbk5hbWUuc3RhcnRzV2l0aCgnZ3JvdXAuekRhdGEuJykpIHtcclxuICAgICAgcmV0dXJuIGdyb3VwLnpEYXRhW29wdGlvbk5hbWUuc2xpY2UoMTIpXSB8fCBbXTtcclxuICAgIH1cclxuICAgIGlmIChvcHRpb25OYW1lLnN0YXJ0c1dpdGgoJ2dyb3VwLicpKSB7XHJcbiAgICAgIHJldHVybiBncm91cFtvcHRpb25OYW1lLnNsaWNlKDYpXSB8fCBbXTtcclxuICAgIH1cclxuICAgIGlmIChvcHRpb25OYW1lKSB7XHJcbiAgICAgIHJldHVybiBncm91cFtvcHRpb25OYW1lXSB8fCBbXTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgZ2V0SXRlbVRlbXBsYXRlKFxyXG4gICAgaXRlbTogYW55LFxyXG4gICAgZGF0YTogYW55LFxyXG4gICAgZ3JvdXA6IGFueSxcclxuICAgIGl0ZW1WYWx1ZUZpZWxkOiBzdHJpbmcsXHJcbiAgICBpdGVtVGV4dEZpZWxkOiBzdHJpbmdcclxuICApIHtcclxuICAgIGlmIChkYXRhLkl0ZW1UZW1wbGF0ZSkge1xyXG4gICAgICBjb25zdCBnZXRUZW1wbGF0ZUZ1bmMgPSBaQ29tcG9uZW50SGVscGVyLmdldEdyb3VwRXZhbFZhbHVlLmNhbGwoeyBncm91cDogZ3JvdXAgfSwgZGF0YS5JdGVtVGVtcGxhdGUpO1xyXG5cclxuICAgICAgcmV0dXJuIGdldFRlbXBsYXRlRnVuYyh7XHJcbiAgICAgICAgaXRlbSxcclxuICAgICAgICBkYXRhLFxyXG4gICAgICAgIGdyb3VwLFxyXG4gICAgICAgIGl0ZW1WYWx1ZUZpZWxkLFxyXG4gICAgICAgIGl0ZW1UZXh0RmllbGRcclxuICAgICAgfSBhcyBaU2VsZWN0TXVsdGlwbGVUZW1wbGF0ZVBhcmFtcyk7XHJcbiAgICB9IGVsc2UgaWYgKGl0ZW1UZXh0RmllbGQpIHtcclxuICAgICAgcmV0dXJuIGl0ZW1baXRlbVRleHRGaWVsZF07XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gT2JqZWN0LnZhbHVlcyhpdGVtKS5qb2luKFwiLCBcIik7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==