mmhglobal-dynamicform 1.2.3 → 1.3.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.
- package/README.md +14 -2
- package/esm2020/lib/directives/fieldelement.directive.mjs +16 -0
- package/esm2020/lib/directives/scrollbar.theme.directive.mjs +43 -0
- package/esm2020/lib/mmhglobal-dynamicform.module.mjs +464 -0
- package/esm2020/lib/services/main.service.mjs +752 -0
- package/esm2020/lib/services/zcomponent.debug.service.mjs +621 -0
- package/esm2020/lib/services/zcomponent.service.mjs +81 -0
- package/esm2020/lib/uiactionbutton/uiactionbutton.component.mjs +265 -0
- package/esm2020/lib/uiappmenucontent/uiappmenucontent.component.mjs +67 -0
- package/esm2020/lib/uicontent/uicontent.component.mjs +41 -0
- package/esm2020/lib/uiheader/uiheader.component.mjs +66 -0
- package/esm2020/lib/uimenubutton/uimenubutton.component.mjs +35 -0
- package/esm2020/lib/uimenucontent/uimenucontent.component.mjs +37 -0
- package/{esm2015/lib/uipage/uipage.component.js → esm2020/lib/uipage/uipage.component.mjs} +12 -13
- package/esm2020/lib/uivalidationmessage/uivalidationmessage.component.mjs +41 -0
- package/esm2020/lib/zbullet/zbullet.component.mjs +74 -0
- package/esm2020/lib/zbuttons/zbuttons.component.mjs +171 -0
- package/esm2020/lib/zcard/zcard.component.mjs +72 -0
- package/esm2020/lib/zchart/zchart.component.mjs +201 -0
- package/esm2020/lib/zcheckbox/zcheckbox.component.mjs +166 -0
- package/esm2020/lib/zchip/zchip.component.mjs +121 -0
- package/esm2020/lib/zcodeeditor/zcodeeditor.component.mjs +169 -0
- package/esm2020/lib/zcodeeditor/zcodeeditor.pipe.mjs +60 -0
- package/esm2020/lib/zdaterange/zdaterange.component.mjs +70 -0
- package/esm2020/lib/zdatetime/dateParser.pipe.mjs +30 -0
- package/esm2020/lib/zdatetime/zdatetime.component.mjs +285 -0
- package/esm2020/lib/zdiv/zdiv.component.mjs +50 -0
- package/esm2020/lib/zdiv/zdiv.pipe.mjs +31 -0
- package/esm2020/lib/zform/zform.component.mjs +147 -0
- package/esm2020/lib/zformcontrol/zformcontrol.component.mjs +49 -0
- package/esm2020/lib/zgauge/zgauge.component.mjs +148 -0
- package/esm2020/lib/zgrid/date-range-cell-filter.component.mjs +135 -0
- package/esm2020/lib/zgrid/zgrid.binding.directive.mjs +490 -0
- package/esm2020/lib/zgrid/zgrid.component.mjs +847 -0
- package/esm2020/lib/zgrid/zgrid.popup.anchor-target.directive.mjs +17 -0
- package/esm2020/lib/zimg/zimg.component.mjs +121 -0
- package/esm2020/lib/zkcard/zkcard.component.mjs +367 -0
- package/esm2020/lib/zlabel/zlabel.component.mjs +62 -0
- package/esm2020/lib/zmfb/zmfb.component.mjs +215 -0
- package/esm2020/lib/zmodal/zmodal-mobile.component.mjs +120 -0
- package/esm2020/lib/zmodal/zmodal.component.mjs +125 -0
- package/esm2020/lib/znumeric/znumeric.component.mjs +119 -0
- package/esm2020/lib/zpostselectinput/zpostselectinput.component.mjs +352 -0
- package/esm2020/lib/zquerybuilder/zquerybuilder.component.mjs +204 -0
- package/esm2020/lib/zreport/zreport.component.mjs +105 -0
- package/esm2020/lib/zreport/zreport.config.mjs +117 -0
- package/esm2020/lib/zscheduler/zscheduler.component.mjs +267 -0
- package/{esm2015/lib/zscheduler/zscheduler.toolbar.component.js → esm2020/lib/zscheduler/zscheduler.toolbar.component.mjs} +55 -19
- package/esm2020/lib/zselectmultiple/zselectmultiple.component.mjs +577 -0
- package/esm2020/lib/zselectmultiple/zselectmultiple.directive.mjs +35 -0
- package/esm2020/lib/ztab/ztab.component.mjs +187 -0
- package/esm2020/lib/ztab/ztab.pipe.mjs +26 -0
- package/esm2020/lib/ztext/ztext.component.mjs +297 -0
- package/esm2020/lib/ztextarea/ztextarea.component.mjs +109 -0
- package/esm2020/lib/ztexteditor/ztexteditor.component.mjs +57 -0
- package/esm2020/lib/ztree/ztree.component.mjs +380 -0
- package/esm2020/lib/ztreelist/ztreelist.component.mjs +544 -0
- package/esm2020/lib/ztrendcard/ztrendcard.component.mjs +92 -0
- package/esm2020/lib/zudf/zudf.component.mjs +205 -0
- package/esm2020/lib/zunknown/zunknown.component.mjs +20 -0
- package/esm2020/lib/zupload/zupload.component.mjs +359 -0
- package/esm2020/lib/zworkflowbuttons/zworkflowbuttons.component.mjs +216 -0
- package/esm2020/mmhglobal-dynamicform.mjs +5 -0
- package/{esm2015/public-api.js → esm2020/public-api.mjs} +0 -0
- package/fesm2015/mmhglobal-dynamicform.mjs +10790 -0
- package/fesm2015/mmhglobal-dynamicform.mjs.map +1 -0
- package/fesm2020/mmhglobal-dynamicform.mjs +10779 -0
- package/fesm2020/mmhglobal-dynamicform.mjs.map +1 -0
- package/lib/directives/fieldelement.directive.d.ts +3 -0
- package/lib/directives/scrollbar.theme.directive.d.ts +3 -0
- package/lib/mmhglobal-dynamicform.module.d.ts +92 -0
- package/lib/services/main.service.d.ts +3 -0
- package/lib/services/zcomponent.debug.service.d.ts +8 -5
- package/lib/services/zcomponent.service.d.ts +7 -2
- package/lib/uiactionbutton/uiactionbutton.component.d.ts +3 -0
- package/lib/uiappmenucontent/uiappmenucontent.component.d.ts +3 -0
- package/lib/uicontent/uicontent.component.d.ts +3 -0
- package/lib/uiheader/uiheader.component.d.ts +3 -0
- package/lib/uimenubutton/uimenubutton.component.d.ts +3 -0
- package/lib/uimenucontent/uimenucontent.component.d.ts +3 -0
- package/lib/uipage/uipage.component.d.ts +3 -0
- package/lib/uivalidationmessage/uivalidationmessage.component.d.ts +3 -0
- package/lib/zbullet/zbullet.component.d.ts +3 -0
- package/lib/zbuttons/zbuttons.component.d.ts +3 -0
- package/lib/zcard/zcard.component.d.ts +3 -0
- package/lib/zchart/zchart.component.d.ts +3 -0
- package/lib/zcheckbox/zcheckbox.component.d.ts +3 -0
- package/lib/zchip/zchip.component.d.ts +3 -0
- package/lib/zcodeeditor/zcodeeditor.component.d.ts +3 -0
- package/lib/zcodeeditor/zcodeeditor.pipe.d.ts +3 -0
- package/lib/zdaterange/zdaterange.component.d.ts +3 -0
- package/lib/zdatetime/dateParser.pipe.d.ts +3 -0
- package/lib/zdatetime/zdatetime.component.d.ts +3 -0
- package/lib/zdiv/zdiv.component.d.ts +3 -0
- package/lib/zdiv/zdiv.pipe.d.ts +3 -0
- package/lib/zform/zform.component.d.ts +3 -0
- package/lib/zformcontrol/zformcontrol.component.d.ts +3 -0
- package/lib/zgauge/zgauge.component.d.ts +3 -0
- package/lib/zgrid/date-range-cell-filter.component.d.ts +3 -0
- package/lib/zgrid/zgrid.binding.directive.d.ts +3 -0
- package/lib/zgrid/zgrid.component.d.ts +4 -1
- package/lib/zgrid/zgrid.popup.anchor-target.directive.d.ts +3 -0
- package/lib/zimg/zimg.component.d.ts +3 -0
- package/lib/zkcard/zkcard.component.d.ts +3 -0
- package/lib/zlabel/zlabel.component.d.ts +3 -0
- package/lib/zmfb/zmfb.component.d.ts +3 -0
- package/lib/zmodal/zmodal-mobile.component.d.ts +3 -0
- package/lib/zmodal/zmodal.component.d.ts +3 -0
- package/lib/znumeric/znumeric.component.d.ts +3 -0
- package/lib/zpostselectinput/zpostselectinput.component.d.ts +3 -0
- package/lib/zquerybuilder/zquerybuilder.component.d.ts +3 -0
- package/lib/zreport/zreport.component.d.ts +3 -0
- package/lib/zreport/zreport.config.d.ts +3 -0
- package/lib/zscheduler/zscheduler.component.d.ts +3 -0
- package/lib/zscheduler/zscheduler.toolbar.component.d.ts +3 -0
- package/lib/zselectmultiple/zselectmultiple.component.d.ts +3 -0
- package/lib/zselectmultiple/zselectmultiple.directive.d.ts +3 -0
- package/lib/ztab/ztab.component.d.ts +3 -0
- package/lib/ztab/ztab.pipe.d.ts +3 -0
- package/lib/ztext/ztext.component.d.ts +3 -0
- package/lib/ztextarea/ztextarea.component.d.ts +3 -0
- package/lib/ztexteditor/ztexteditor.component.d.ts +3 -0
- package/lib/ztree/ztree.component.d.ts +3 -0
- package/lib/ztreelist/ztreelist.component.d.ts +3 -0
- package/lib/ztrendcard/ztrendcard.component.d.ts +3 -0
- package/lib/zudf/zudf.component.d.ts +3 -0
- package/lib/zunknown/zunknown.component.d.ts +3 -0
- package/lib/zupload/zupload.component.d.ts +3 -0
- package/lib/zworkflowbuttons/zworkflowbuttons.component.d.ts +3 -0
- package/mmhglobal-dynamicform.d.ts +1 -2
- package/package.json +20 -11
- package/bundles/mmhglobal-dynamicform.umd.js +0 -11360
- package/bundles/mmhglobal-dynamicform.umd.js.map +0 -1
- package/bundles/mmhglobal-dynamicform.umd.min.js +0 -16
- package/bundles/mmhglobal-dynamicform.umd.min.js.map +0 -1
- package/esm2015/lib/directives/fieldelement.directive.js +0 -15
- package/esm2015/lib/directives/scrollbar.theme.directive.js +0 -42
- package/esm2015/lib/mmhglobal-dynamicform.module.js +0 -314
- package/esm2015/lib/services/main.service.js +0 -766
- package/esm2015/lib/services/zcomponent.debug.service.js +0 -626
- package/esm2015/lib/services/zcomponent.service.js +0 -167
- package/esm2015/lib/uiactionbutton/uiactionbutton.component.js +0 -271
- package/esm2015/lib/uiappmenucontent/uiappmenucontent.component.js +0 -69
- package/esm2015/lib/uicontent/uicontent.component.js +0 -41
- package/esm2015/lib/uiheader/uiheader.component.js +0 -65
- package/esm2015/lib/uimenubutton/uimenubutton.component.js +0 -40
- package/esm2015/lib/uimenucontent/uimenucontent.component.js +0 -34
- package/esm2015/lib/uivalidationmessage/uivalidationmessage.component.js +0 -39
- package/esm2015/lib/zbullet/zbullet.component.js +0 -71
- package/esm2015/lib/zbuttons/zbuttons.component.js +0 -168
- package/esm2015/lib/zcard/zcard.component.js +0 -68
- package/esm2015/lib/zchart/zchart.component.js +0 -199
- package/esm2015/lib/zcheckbox/zcheckbox.component.js +0 -158
- package/esm2015/lib/zchip/zchip.component.js +0 -117
- package/esm2015/lib/zcodeeditor/zcodeeditor.component.js +0 -163
- package/esm2015/lib/zcodeeditor/zcodeeditor.pipe.js +0 -56
- package/esm2015/lib/zdaterange/zdaterange.component.js +0 -63
- package/esm2015/lib/zdatetime/dateParser.pipe.js +0 -26
- package/esm2015/lib/zdatetime/zdatetime.component.js +0 -279
- package/esm2015/lib/zdiv/zdiv.component.js +0 -48
- package/esm2015/lib/zdiv/zdiv.pipe.js +0 -27
- package/esm2015/lib/zform/zform.component.js +0 -148
- package/esm2015/lib/zformcontrol/zformcontrol.component.js +0 -49
- package/esm2015/lib/zgauge/zgauge.component.js +0 -146
- package/esm2015/lib/zgrid/date-range-cell-filter.component.js +0 -102
- package/esm2015/lib/zgrid/zgrid.binding.directive.js +0 -493
- package/esm2015/lib/zgrid/zgrid.component.js +0 -834
- package/esm2015/lib/zgrid/zgrid.popup.anchor-target.directive.js +0 -16
- package/esm2015/lib/zimg/zimg.component.js +0 -123
- package/esm2015/lib/zkcard/zkcard.component.js +0 -372
- package/esm2015/lib/zlabel/zlabel.component.js +0 -59
- package/esm2015/lib/zmfb/zmfb.component.js +0 -215
- package/esm2015/lib/zmodal/zmodal-mobile.component.js +0 -119
- package/esm2015/lib/zmodal/zmodal.component.js +0 -130
- package/esm2015/lib/znumeric/znumeric.component.js +0 -114
- package/esm2015/lib/zpostselectinput/zpostselectinput.component.js +0 -345
- package/esm2015/lib/zquerybuilder/zquerybuilder.component.js +0 -196
- package/esm2015/lib/zreport/zreport.component.js +0 -104
- package/esm2015/lib/zreport/zreport.config.js +0 -115
- package/esm2015/lib/zscheduler/zscheduler.component.js +0 -268
- package/esm2015/lib/zselectmultiple/zselectmultiple.component.js +0 -565
- package/esm2015/lib/zselectmultiple/zselectmultiple.directive.js +0 -28
- package/esm2015/lib/ztab/ztab.component.js +0 -180
- package/esm2015/lib/ztab/ztab.pipe.js +0 -22
- package/esm2015/lib/ztext/ztext.component.js +0 -286
- package/esm2015/lib/ztextarea/ztextarea.component.js +0 -104
- package/esm2015/lib/ztexteditor/ztexteditor.component.js +0 -52
- package/esm2015/lib/ztree/ztree.component.js +0 -374
- package/esm2015/lib/ztreelist/ztreelist.component.js +0 -539
- package/esm2015/lib/ztrendcard/ztrendcard.component.js +0 -89
- package/esm2015/lib/zudf/zudf.component.js +0 -206
- package/esm2015/lib/zunknown/zunknown.component.js +0 -20
- package/esm2015/lib/zupload/zupload.component.js +0 -358
- package/esm2015/lib/zworkflowbuttons/zworkflowbuttons.component.js +0 -215
- package/esm2015/mmhglobal-dynamicform.js +0 -7
- package/fesm2015/mmhglobal-dynamicform.js +0 -10729
- package/fesm2015/mmhglobal-dynamicform.js.map +0 -1
- package/mmhglobal-dynamicform.metadata.json +0 -1
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { Directive } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class ZGridPopupAnchorDirective {
|
|
4
|
+
constructor(element) {
|
|
5
|
+
this.element = element;
|
|
6
|
+
}
|
|
7
|
+
}
|
|
8
|
+
ZGridPopupAnchorDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.4", ngImport: i0, type: ZGridPopupAnchorDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
9
|
+
ZGridPopupAnchorDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.4", type: ZGridPopupAnchorDirective, selector: "[popupAnchor]", exportAs: ["popupAnchor"], ngImport: i0 });
|
|
10
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.4", ngImport: i0, type: ZGridPopupAnchorDirective, decorators: [{
|
|
11
|
+
type: Directive,
|
|
12
|
+
args: [{
|
|
13
|
+
selector: '[popupAnchor]',
|
|
14
|
+
exportAs: 'popupAnchor'
|
|
15
|
+
}]
|
|
16
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }]; } });
|
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiemdyaWQucG9wdXAuYW5jaG9yLXRhcmdldC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tbWhnbG9iYWwtZHluYW1pY2Zvcm0vc3JjL2xpYi96Z3JpZC96Z3JpZC5wb3B1cC5hbmNob3ItdGFyZ2V0LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFnQyxNQUFNLGVBQWUsQ0FBQzs7QUFNeEUsTUFBTSxPQUFPLHlCQUF5QjtJQUNwQyxZQUFtQixPQUFtQjtRQUFuQixZQUFPLEdBQVAsT0FBTyxDQUFZO0lBRXRDLENBQUM7O3NIQUhVLHlCQUF5QjswR0FBekIseUJBQXlCOzJGQUF6Qix5QkFBeUI7a0JBSnJDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGVBQWU7b0JBQ3pCLFFBQVEsRUFBRSxhQUFhO2lCQUN4QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgVmlld0NvbnRhaW5lclJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgc2VsZWN0b3I6ICdbcG9wdXBBbmNob3JdJyxcclxuICBleHBvcnRBczogJ3BvcHVwQW5jaG9yJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgWkdyaWRQb3B1cEFuY2hvckRpcmVjdGl2ZSB7XHJcbiAgY29uc3RydWN0b3IocHVibGljIGVsZW1lbnQ6IEVsZW1lbnRSZWZcclxuICApIHtcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
/********** Angular **********/
|
|
2
|
+
import { Component, Input } from "@angular/core";
|
|
3
|
+
import { Validators } from '@angular/forms';
|
|
4
|
+
/********** Component & Service **********/
|
|
5
|
+
import { ZComponentHelper, ZComponentProperties } from "mmhglobal-zcore";
|
|
6
|
+
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) {
|
|
12
|
+
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
|
+
}
|
|
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
|
+
// });
|
|
49
|
+
}
|
|
50
|
+
ngOnDestroy() {
|
|
51
|
+
if (this.subscription) {
|
|
52
|
+
this.subscription.unsubscribe();
|
|
53
|
+
}
|
|
54
|
+
}
|
|
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
|
+
}
|
|
73
|
+
}
|
|
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;
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
getIconName() {
|
|
105
|
+
const iconName = ZComponentHelper.getGroupEvalValue.call(this, this.data.Icon, this.group);
|
|
106
|
+
return iconName;
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
ZimgComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.4", ngImport: i0, type: ZimgComponent, deps: [{ token: i1.AttachmentService }], target: i0.ɵɵFactoryTarget.Component });
|
|
110
|
+
ZimgComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.4", 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"] }] });
|
|
111
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.4", ngImport: i0, type: ZimgComponent, decorators: [{
|
|
112
|
+
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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiemltZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tbWhnbG9iYWwtZHluYW1pY2Zvcm0vc3JjL2xpYi96aW1nL3ppbWcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbW1oZ2xvYmFsLWR5bmFtaWNmb3JtL3NyYy9saWIvemltZy96aW1nLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLCtCQUErQjtBQUMvQixPQUFPLEVBQUUsU0FBUyxFQUFVLEtBQUssRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUNwRSxPQUFPLEVBQWEsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFPdkQsMkNBQTJDO0FBQzNDLE9BQU8sRUFDTyxnQkFBZ0IsRUFBa0Isb0JBQW9CLEVBRW5FLE1BQU0saUJBQWlCLENBQUM7Ozs7O0FBUXpCLE1BQU0sT0FBTyxhQUFhO0lBZXhCLFlBQW9CLGlCQUFvQztRQUFwQyxzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBWHhELGFBQVEsR0FBVyxJQUFJLENBQUM7UUFDeEIsY0FBUyxHQUFXLElBQUksQ0FBQztRQUN6QixXQUFNLEdBQVcsSUFBSSxDQUFDO1FBQ3RCLGlCQUFZLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQzdCLHdCQUFtQixHQUFHLElBQUksb0JBQW9CLEVBQUUsQ0FBQztRQTZHMUMsY0FBUyxHQUFHLENBQUMsTUFBZSxFQUFFLEVBQUU7WUFDckMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLFVBQVUsR0FBRyxDQUFDLE1BQU0sQ0FBQztRQUNoRCxDQUFDLENBQUE7UUFFTSxlQUFVLEdBQUcsQ0FBQyxNQUFlLEVBQUUsRUFBRTtZQUN0QyxJQUFJLENBQUMsbUJBQW1CLENBQUMsU0FBUyxHQUFHLE1BQU0sQ0FBQztZQUM1QyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUM7UUFDN0IsQ0FBQyxDQUFBO1FBRU0sZUFBVSxHQUFHLENBQUMsTUFBZSxFQUFFLEVBQUU7WUFDdEMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLFVBQVUsR0FBRyxNQUFNLENBQUM7WUFDN0MsZ0JBQWdCLENBQUMsZUFBZSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDdkgsQ0FBQyxDQUFBO0lBbEgyRCxDQUFDO0lBRTdELEtBQUssQ0FBQyxRQUFRO1FBQ1osZ0JBQWdCLENBQUMsc0JBQXNCLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDOUMsZ0JBQWdCLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDekMsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUU7WUFDdEUsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ3hELElBQUksQ0FBQyxRQUFRLEdBQUcsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQzNCLElBQUksQ0FBQyxTQUFTLEdBQUcsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQzdCO1FBRUQsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUEsd0VBQXdFO1FBQ3RJLElBQUksQ0FBQyxRQUFRLEdBQUssSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFBLHdEQUF3RDtRQUVoSSxJQUFHLElBQUksQ0FBQyxJQUFJLElBQUksU0FBUyxJQUFLLElBQUksQ0FBQyxRQUFRLElBQUksU0FBUyxFQUFDO1lBQ3ZELElBQUksUUFBUSxHQUFHLE1BQU0sSUFBSSxDQUFDLGlCQUFpQixDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNuRixJQUFJLENBQUMsS0FBSyxHQUFFLE1BQU0sSUFBSSxDQUFDLGlCQUFpQixDQUFDLG1CQUFtQixDQUFDLFFBQVEsQ0FBQyxDQUFDO1NBQ3hFO1FBTUQseUNBQXlDO1FBQ3pDLG9CQUFvQjtRQUNwQixrQ0FBa0M7UUFDbEMsdUNBQXVDO1FBQ3ZDLFFBQVE7SUFDVixDQUFDO0lBS0QsV0FBVztRQUNULElBQUksSUFBSSxDQUFDLFlBQVksRUFBRTtZQUNyQixJQUFJLENBQUMsWUFBWSxDQUFDLFdBQVcsRUFBRSxDQUFDO1NBQ2pDO0lBQ0gsQ0FBQztJQUVELGtCQUFrQjtRQUNoQixNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM5RCxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUV0RSxJQUFJLEtBQUssSUFBSSxTQUFTLEVBQUU7WUFDdEIsZ0JBQWdCO1lBQ2hCLGtDQUFrQztZQUNsQyxPQUFPLENBQ0wsU0FBUztnQkFDVCxNQUFNO2dCQUNOLEtBQUs7Z0JBQ0wsUUFBUTtnQkFDUixJQUFJLENBQUMsSUFBSSxDQUFDLElBQUk7WUFDZCw4QkFBOEI7YUFDL0IsQ0FBQztZQUNGLDhDQUE4QztTQUMvQzthQUFNO1lBQ0wsbUNBQW1DO1NBQ3BDO0lBQ0gsQ0FBQztJQUVELGFBQWEsQ0FBQyxLQUFhLEVBQUUsS0FBVTtRQUNyQyxPQUFPLGdCQUFnQixDQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUVELDJCQUEyQjtJQUMzQiwrQkFBK0I7SUFDL0IsZ0JBQWdCO0lBQ2hCLGdDQUFnQztJQUVoQyxvRUFBb0U7SUFDcEUsNkNBQTZDO0lBQzdDLHFFQUFxRTtJQUNyRSxzQ0FBc0M7SUFDdEMsUUFBUTtJQUNSLE1BQU07SUFDTixpQkFBaUI7SUFDakIsSUFBSTtJQUVKLFdBQVcsS0FBVSxDQUFDO0lBRXRCLFdBQVc7UUFDVCxNQUFNLFNBQVMsR0FBRyxnQkFBZ0IsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNuRyxJQUFJLE9BQU8sU0FBUyxLQUFLLFVBQVUsRUFBRTtZQUNuQyxPQUFPLFNBQVMsRUFBRSxDQUFDO1NBQ3BCO1FBRUQsSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUNkLE9BQU8sQ0FBQyxJQUFJLENBQUMsd0NBQXdDLEVBQUUsU0FBUyxDQUFDLENBQUM7WUFDbEUsT0FBTztTQUNSO1FBRUQsSUFBSSxPQUFPLFNBQVMsS0FBSyxVQUFVLEVBQUU7WUFDbkMsT0FBTyxDQUFDLElBQUksQ0FBQywrQ0FBK0MsRUFBRSxTQUFTLENBQUMsQ0FBQztZQUN6RSxPQUFPO1NBQ1I7SUFDSCxDQUFDO0lBRUQsV0FBVztRQUNULE1BQU0sUUFBUSxHQUFHLGdCQUFnQixDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzNGLE9BQU8sUUFBUSxDQUFDO0lBQ2xCLENBQUM7OzBHQW5IVSxhQUFhOzhGQUFiLGFBQWEsd0dDckIxQix5MkJBV1c7MkZEVUUsYUFBYTtrQkFMekIsU0FBUzsrQkFDRSxVQUFVO3dHQUtYLElBQUk7c0JBQVosS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiLyoqKioqKioqKiogQW5ndWxhciAqKioqKioqKioqL1xyXG5pbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgSW5wdXQsIE9uRGVzdHJveSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IEZvcm1Hcm91cCwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuXHJcbi8qKioqKioqKioqIElvbmljICoqKioqKioqKiovXHJcblxyXG4vKioqKioqKioqKiBQbHVnaW4gKioqKioqKioqKi9cclxuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSBcInJ4anNcIjtcclxuXHJcbi8qKioqKioqKioqIENvbXBvbmVudCAmIFNlcnZpY2UgKioqKioqKioqKi9cclxuaW1wb3J0IHtcclxuICBaQ29tcG9uZW50LCBaQ29tcG9uZW50SGVscGVyLCBaRmllbGQsIFpHcm91cCwgWkNvbXBvbmVudFByb3BlcnRpZXMsXHJcbiAgV2ViQXBpU2VydmljZSwgQXR0YWNobWVudFNlcnZpY2VcclxufSBmcm9tIFwibW1oZ2xvYmFsLXpjb3JlXCI7XHJcblxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6IFwiYXBwLXppbWdcIixcclxuICB0ZW1wbGF0ZVVybDogXCIuL3ppbWcuY29tcG9uZW50Lmh0bWxcIixcclxuICBzdHlsZVVybHM6IFtcIi4vemltZy5jb21wb25lbnQuc2Nzc1wiXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgWmltZ0NvbXBvbmVudCBpbXBsZW1lbnRzIFpDb21wb25lbnQsIE9uSW5pdCwgT25EZXN0cm95IHtcclxuICBASW5wdXQoKSBkYXRhOiBaRmllbGQ7XHJcbiAgQElucHV0KCkgZ3JvdXA6IFpHcm91cDtcclxuICBASW5wdXQoKSBmb3JtOiBGb3JtR3JvdXA7XHJcbiAgaW1nV2lkdGg6IHN0cmluZyA9IG51bGw7XHJcbiAgaW1nSGVpZ2h0OiBzdHJpbmcgPSBudWxsO1xyXG4gIGltZ1NyYzogc3RyaW5nID0gbnVsbDtcclxuICByYW5kb21OdW1iZXIgPSBNYXRoLnJhbmRvbSgpO1xyXG4gIGNvbXBvbmVudFByb3BlcnRpZXMgPSBuZXcgWkNvbXBvbmVudFByb3BlcnRpZXMoKTtcclxuICAvLyBpbWdTb3VyY2VBdmFpbGFibGUgPSBmYWxzZTtcclxuICBzdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcclxuXHJcbiAgR3VpZDtcclxuICBGaWxlTmFtZTtcclxuICBJbWFnZTpzdHJpbmc7XHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBhdHRhY2htZW50U2VydmljZTogQXR0YWNobWVudFNlcnZpY2UpIHsgfVxyXG5cclxuICBhc3luYyBuZ09uSW5pdCgpIHtcclxuICAgIFpDb21wb25lbnRIZWxwZXIuc2V0Q29tcG9uZW50UHJvcGVydGllcyh0aGlzKTtcclxuICAgIFpDb21wb25lbnRIZWxwZXIucmVnaXN0ZXJDb21wb25lbnQodGhpcyk7XHJcbiAgICBpZiAodGhpcy5kYXRhLlNpemUgJiYgdGhpcy5kYXRhLlNpemUudG9Mb3dlckNhc2UoKS5pbmRleE9mKFwieFwiKSAhPT0gLTEpIHtcclxuICAgICAgY29uc3QgaW1nU2l6ZSA9IHRoaXMuZGF0YS5TaXplLnRvTG93ZXJDYXNlKCkuc3BsaXQoXCJ4XCIpO1xyXG4gICAgICB0aGlzLmltZ1dpZHRoID0gaW1nU2l6ZVswXTtcclxuICAgICAgdGhpcy5pbWdIZWlnaHQgPSBpbWdTaXplWzFdO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuR3VpZCA9IHRoaXMuZ2V0R3JvdXBWYWx1ZSh0aGlzLmRhdGFbJ0d1aWQnXSwgdGhpcy5ncm91cCk7Ly90aGlzLmRhdGFbJ0d1aWQnXTsvL3RoaXMuZ2V0R3JvdXBWYWx1ZSh0aGlzLmRhdGFbJ0d1aWQnXSwgdGhpcy5ncm91cCk7XHJcbiAgICB0aGlzLkZpbGVOYW1lID0gICB0aGlzLmdldEdyb3VwVmFsdWUodGhpcy5kYXRhWydGaWxlTmFtZSddLCB0aGlzLmdyb3VwKTsvL3RoaXMuZ2V0R3JvdXBWYWx1ZSh0aGlzLmRhdGFbJ0ZpbGVOYW1lJ10sIHRoaXMuZ3JvdXApO1xyXG5cclxuICAgIGlmKHRoaXMuR3VpZCAhPSB1bmRlZmluZWQgJiYgIHRoaXMuRmlsZU5hbWUgIT0gdW5kZWZpbmVkKXtcclxuICAgICAgbGV0IGJsb2JmaWxlID0gYXdhaXQgdGhpcy5hdHRhY2htZW50U2VydmljZS5nZXRJbWFnZUJsb2IodGhpcy5GaWxlTmFtZSwgdGhpcy5HdWlkKTtcclxuICAgICAgdGhpcy5JbWFnZT0gYXdhaXQgdGhpcy5hdHRhY2htZW50U2VydmljZS5jb252ZXJ0QmxvYlRvQmFzZTY0KGJsb2JmaWxlKTtcclxuICAgIH1cclxuXHJcblxyXG5cclxuXHJcblxyXG4gICAgLy8gdGhpcy5zdWJzY3JpcHRpb24gPSB0aGlzLmdyb3VwLnpNb2RlbCRcclxuICAgIC8vICAgLmFzT2JzZXJ2YWJsZSgpXHJcbiAgICAvLyAgIC5zdWJzY3JpYmUoKHptb2RlbDogYW55KSA9PiB7XHJcbiAgICAvLyAgICAgdGhpcy5vbkRhdGFTb3VyY2VDaGFuZ2Uoem1vZGVsKTtcclxuICAgIC8vICAgfSk7XHJcbiAgfVxyXG5cclxuXHJcblxyXG5cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLnN1YnNjcmlwdGlvbikge1xyXG4gICAgICB0aGlzLnN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgb25EYXRhU291cmNlQ2hhbmdlKCkge1xyXG4gICAgY29uc3QgdmFsdWUgPSB0aGlzLmdldEdyb3VwVmFsdWUodGhpcy5kYXRhLlZhbHVlLCB0aGlzLmdyb3VwKTtcclxuICAgIGNvbnN0IHNvdXJjZVVybCA9IHRoaXMuZ2V0R3JvdXBWYWx1ZSh0aGlzLmRhdGEuU291cmNlVXJsLCB0aGlzLmdyb3VwKTtcclxuXHJcbiAgICBpZiAodmFsdWUgJiYgc291cmNlVXJsKSB7XHJcbiAgICAgIC8vIHRoaXMuaW1nU3JjID1cclxuICAgICAgLy8gdGhpcy5pbWdTb3VyY2VBdmFpbGFibGUgPSB0cnVlO1xyXG4gICAgICByZXR1cm4gKFxyXG4gICAgICAgIHNvdXJjZVVybCArXHJcbiAgICAgICAgXCI/aWQ9XCIgK1xyXG4gICAgICAgIHZhbHVlICtcclxuICAgICAgICBcIiZzaXplPVwiICtcclxuICAgICAgICB0aGlzLmRhdGEuU2l6ZVxyXG4gICAgICAgIC8vICsgXCImcj1cIiArIHRoaXMucmFuZG9tTnVtYmVyXHJcbiAgICAgICk7XHJcbiAgICAgIC8vIGNvbnNvbGUubG9nKFwiaW1hZ2Ugc291cmNlOiBcIiwgdGhpcy5pbWdTcmMpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgLy8gdGhpcy5pbWdTb3VyY2VBdmFpbGFibGUgPSBmYWxzZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGdldEdyb3VwVmFsdWUodmFsdWU6IHN0cmluZywgZ3JvdXA6IGFueSkge1xyXG4gICAgcmV0dXJuIFpDb21wb25lbnRIZWxwZXIuZ2V0R3JvdXBWYWx1ZSh2YWx1ZSwgZ3JvdXApO1xyXG4gIH1cclxuXHJcbiAgLy8gZ2V0VmFsdWUoZGF0YTogc3RyaW5nKSB7XHJcbiAgLy8gICBsZXQgZ0FycmF5OiBBcnJheTxzdHJpbmc+O1xyXG4gIC8vICAgaWYgKGRhdGEpIHtcclxuICAvLyAgICAgZ0FycmF5ID0gZGF0YS5zcGxpdChcIi5cIik7XHJcblxyXG4gIC8vICAgICBpZiAoZ0FycmF5Lmxlbmd0aCA9PT0gMyAmJiBkYXRhLnN0YXJ0c1dpdGgoXCJncm91cC56TW9kZWxcIikpIHtcclxuICAvLyAgICAgICByZXR1cm4gdGhpcy5ncm91cC56TW9kZWxbZ0FycmF5WzJdXTtcclxuICAvLyAgICAgfSBlbHNlIGlmIChnQXJyYXkubGVuZ3RoID09PSAyICYmIGRhdGEuc3RhcnRzV2l0aChcImdyb3VwLlwiKSkge1xyXG4gIC8vICAgICAgIHJldHVybiB0aGlzLmdyb3VwW2dBcnJheVsxXV07XHJcbiAgLy8gICAgIH1cclxuICAvLyAgIH1cclxuICAvLyAgIHJldHVybiBudWxsO1xyXG4gIC8vIH1cclxuXHJcbiAgZ2V0SW1nU3R5bGUoKTogYW55IHsgfVxyXG5cclxuICBvbkljb25DbGljaygpIHtcclxuICAgIGNvbnN0IGljb25DbGljayA9IFpDb21wb25lbnRIZWxwZXIuZ2V0R3JvdXBFdmFsVmFsdWUuY2FsbCh0aGlzLCB0aGlzLmRhdGEuT25JdGVtQ2xpY2ssIHRoaXMuZ3JvdXApO1xyXG4gICAgaWYgKHR5cGVvZiBpY29uQ2xpY2sgPT09ICdmdW5jdGlvbicpIHtcclxuICAgICAgcmV0dXJuIGljb25DbGljaygpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICghaWNvbkNsaWNrKSB7XHJcbiAgICAgIGNvbnNvbGUud2FybignWkltZyBPbkl0ZW1DbGljayBwcm9wZXJ0eSBpcyBpbnZhbGlkOiAnLCBpY29uQ2xpY2spO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHR5cGVvZiBpY29uQ2xpY2sgIT09ICdmdW5jdGlvbicpIHtcclxuICAgICAgY29uc29sZS53YXJuKCdaSW1nIE9uSXRlbUNsaWNrIHByb3BlcnR5IGlzIG5vdCBhIGZ1bmN0aW9uOiAnLCBpY29uQ2xpY2spO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBnZXRJY29uTmFtZSgpIHtcclxuICAgIGNvbnN0IGljb25OYW1lID0gWkNvbXBvbmVudEhlbHBlci5nZXRHcm91cEV2YWxWYWx1ZS5jYWxsKHRoaXMsIHRoaXMuZGF0YS5JY29uLCB0aGlzLmdyb3VwKTtcclxuICAgIHJldHVybiBpY29uTmFtZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzZXRFbmFibGUgPSAoc3RhdHVzOiBib29sZWFuKSA9PiB7XHJcbiAgICB0aGlzLmNvbXBvbmVudFByb3BlcnRpZXMuaXNSZWFkT25seSA9ICFzdGF0dXM7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc2V0VmlzaWJsZSA9IChzdGF0dXM6IGJvb2xlYW4pID0+IHtcclxuICAgIHRoaXMuY29tcG9uZW50UHJvcGVydGllcy5pc1Zpc2libGUgPSBzdGF0dXM7XHJcbiAgICB0aGlzLmRhdGEuVmlzaWJsZSA9IHN0YXR1cztcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzZXRSZXF1aXJlID0gKHN0YXR1czogYm9vbGVhbikgPT4ge1xyXG4gICAgdGhpcy5jb21wb25lbnRQcm9wZXJ0aWVzLmlzUmVxdWlyZWQgPSBzdGF0dXM7XHJcbiAgICBaQ29tcG9uZW50SGVscGVyLmNoYW5nZVZhbGlkYXRvcihzdGF0dXMsIHRoaXMuZ3JvdXAsIHRoaXMuZGF0YS5WYWx1ZSwgdGhpcy5jb21wb25lbnRQcm9wZXJ0aWVzLCBWYWxpZGF0b3JzLnJlcXVpcmVkKTtcclxuICB9XHJcbn1cclxuIiwiPGlvbi1pdGVtPlxyXG4gIDxpb24tbGFiZWwgKm5nSWY9XCJkYXRhLlNob3dMYWJlbCA9PT0gdW5kZWZpbmVkIHx8IGRhdGEuU2hvd0xhYmVsXCIgcG9zaXRpb249XCJzdGFja2VkXCI+e3tkYXRhLkxhYmVsfX0gPGlvbi10ZXh0XHJcbiAgICAgICpuZ0lmPVwiKCEhY29tcG9uZW50UHJvcGVydGllcy5pc1JlcXVpcmVkRmllbGQgPyBncm91cFtjb21wb25lbnRQcm9wZXJ0aWVzLmlzUmVxdWlyZWRGaWVsZF0gOiBjb21wb25lbnRQcm9wZXJ0aWVzLmlzUmVxdWlyZWQpXCIgY29sb3I9XCJkYW5nZXJcIj4qPC9pb24tdGV4dD5cclxuICA8L2lvbi1sYWJlbD5cclxuICA8aW1nICpuZ0lmPVwiISFnZXRHcm91cFZhbHVlKGRhdGEuVmFsdWUsIGdyb3VwKVwiIFtzcmNdPVwib25EYXRhU291cmNlQ2hhbmdlKClcIiBbd2lkdGhdPVwiaW1nV2lkdGhcIiBbaGVpZ2h0XT1cImltZ0hlaWdodFwiIHN0eWxlPVwiYm9yZGVyLXJhZGl1czogNTAlOyBtYXJnaW46IDVweCBhdXRvXCIgLz5cclxuICA8aW1nICpuZ0lmPVwidGhpcy5HdWlkICE9PXVuZGVmaW5lZCAmJiB0aGlzLkd1aWQgIT09RmlsZU5hbWVcIiBbc3JjXT1cInRoaXMuSW1hZ2VcIiBbd2lkdGhdPVwiaW1nV2lkdGhcIiBbaGVpZ2h0XT1cImltZ0hlaWdodFwiIHN0eWxlPVwiYm9yZGVyLXJhZGl1czogNTAlOyBtYXJnaW46IDVweCBhdXRvXCIgLz5cclxuIFxyXG4gIDxkaXYgKm5nSWY9XCIhZ2V0R3JvdXBWYWx1ZShkYXRhLlZhbHVlLCBncm91cClcIiAoY2xpY2spPVwib25JY29uQ2xpY2soKVwiPlxyXG4gICAgPGlvbi1pY29uICBuYW1lPVwiZ2V0SWNvbk5hbWUoKVwiIHN0eWxlPVwiem9vbTo0LjA7XCI+XHJcbiAgICA8L2lvbi1pY29uPlxyXG4gIDwvZGl2PlxyXG48L2lvbi1pdGVtPiJdfQ==
|