mmhglobal-dynamicform 2.40.0 → 3.0.0-beta
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 +0 -11
- package/fesm2022/mmhglobal-dynamicform.mjs +15336 -0
- package/fesm2022/mmhglobal-dynamicform.mjs.map +1 -0
- package/{mmhglobal-dynamicform.d.ts → index.d.ts} +5 -5
- package/lib/animations/component-animations.d.ts +3 -3
- package/lib/components/{buttonfieldbase.component.d.ts → base/buttonfieldbase.component.d.ts} +18 -26
- package/lib/components/{containerfieldbase.component.d.ts → base/containerfieldbase.component.d.ts} +20 -25
- package/lib/components/{datalistingfieldbase.component.d.ts → base/datalistingfieldbase.component.d.ts} +45 -51
- package/lib/components/{fieldbase.component.d.ts → base/fieldbase.component.d.ts} +49 -49
- package/lib/components/{inputfieldbase.component.d.ts → base/inputfieldbase.component.d.ts} +23 -27
- package/lib/{dropdown_buttons → components/button/dropdown_buttons}/dropdown_buttons.component.d.ts +15 -21
- package/lib/components/button/zbuttons/zbuttons.component.d.ts +19 -0
- package/lib/{zchip → components/button/zchip}/zchip.component.d.ts +22 -26
- package/lib/{zmfb → components/button/zmfb}/zmfb.component.d.ts +38 -43
- package/lib/components/button/zworkflowbuttons/zworkflowbuttons.component.d.ts +29 -0
- package/lib/{zchart → components/chart/zchart}/zchart.component.d.ts +73 -71
- package/lib/{zganttchart → components/chart/zganttchart}/zganttchart.component.d.ts +40 -40
- package/lib/{zgauge → components/chart/zgauge}/zgauge.component.d.ts +67 -63
- package/lib/{zprogressbar → components/chart/zprogressbar}/zprogressbar.component.d.ts +29 -30
- package/lib/{zreport → components/chart/zreport}/zreport.component.d.ts +47 -53
- package/lib/{zscheduler → components/chart/zscheduler}/zscheduler.component.d.ts +53 -52
- package/lib/{zscheduler → components/chart/zscheduler}/zscheduler.toolbar.component.d.ts +20 -20
- package/lib/{ztrendcard → components/chart/ztrendcard}/ztrendcard.component.d.ts +40 -36
- package/lib/components/container/kcard/kcard.component.d.ts +21 -0
- package/lib/{kscrollview → components/container/kscrollview}/kscrollview.component.d.ts +19 -20
- package/lib/{ksplitter → components/container/ksplitter}/ksplitter.component.d.ts +18 -19
- package/lib/{zcard → components/container/zcard}/zcard.component.d.ts +12 -17
- package/lib/components/container/zdiv/zdiv.component.d.ts +12 -0
- package/lib/{zdiv → components/container/zdiv}/zdiv.pipe.d.ts +7 -7
- package/lib/{zloop → components/container/zloop}/zloop.component.d.ts +21 -24
- package/lib/{ztab → components/container/ztab}/ztab.component.d.ts +34 -38
- package/lib/{ztab → components/container/ztab}/ztab.pipe.d.ts +7 -7
- package/lib/{zudf → components/container/zudf}/zudf.component.d.ts +208 -212
- package/lib/{virtual-scroll → components/data-listing/virtual-scroll}/virtual-scroll.component.d.ts +40 -45
- package/lib/{zgrid → components/data-listing/zgrid}/container/zgrid-container.component.d.ts +27 -31
- package/lib/{zgrid → components/data-listing/zgrid}/date-range-cell-filter.component.d.ts +20 -19
- package/lib/{zgrid → components/data-listing/zgrid}/zgrid.binding.directive.d.ts +174 -168
- package/lib/{zgrid → components/data-listing/zgrid}/zgrid.component.d.ts +187 -186
- package/lib/{zgrid → components/data-listing/zgrid}/zgrid.popup.anchor-target.directive.d.ts +8 -8
- package/lib/{zgrid → components/data-listing/zgrid}/zgrid.service.d.ts +27 -27
- package/lib/{ztree → components/data-listing/ztree}/ztree.component.d.ts +77 -78
- package/lib/{ztreelist → components/data-listing/ztreelist}/ztreelist.component.d.ts +100 -107
- package/lib/{sfdatetimepicker → components/input/sfdatetimepicker}/sfdatetimepicker.component.d.ts +26 -31
- package/lib/{sfquerybuilder → components/input/sfquerybuilder}/sfquerybuilder.component.d.ts +71 -73
- package/lib/{zcheckbox → components/input/zcheckbox}/zcheckbox.component.d.ts +18 -20
- package/lib/components/input/zcodeeditor/zcodeeditor.component.d.ts +43 -0
- package/lib/components/input/zcodeeditor/zcodeeditor.service.d.ts +32 -0
- package/lib/{zcolorpicker → components/input/zcolorpicker}/zcolorpicker.component.d.ts +19 -25
- package/lib/{zdatetime → components/input/zdatetime}/dateIonicFormatParser.pipe.d.ts +10 -10
- package/lib/{zdatetime → components/input/zdatetime}/dateIonicMinMaxDate.pipe.d.ts +7 -7
- package/lib/{zdatetime → components/input/zdatetime}/dateKendoFormatParser.pipe.d.ts +10 -10
- package/lib/{zdatetime → components/input/zdatetime}/dateParser.pipe.d.ts +11 -11
- package/lib/{zdatetime → components/input/zdatetime}/zdatetime.component.d.ts +32 -32
- package/lib/{zimg → components/input/zimg}/zimg.component.d.ts +16 -20
- package/lib/{zinput-container → components/input/zinput-container}/zinput-container.component.d.ts +31 -38
- package/lib/{zinput-container → components/input/zinput-container}/zinput-container.pipe.d.ts +25 -25
- package/lib/{zlabel → components/input/zlabel}/zlabel.component.d.ts +20 -26
- package/lib/{znumeric → components/input/znumeric}/znumeric.component.d.ts +29 -31
- package/lib/{znumeric → components/input/znumeric}/znumeric.component.pipe.d.ts +10 -10
- package/lib/{zpostselectinput → components/input/zpostselectinput}/zpostselectinput.component.d.ts +48 -65
- package/lib/{zselectmultiple → components/input/zselectmultiple}/zselectmultiple.component.d.ts +105 -123
- package/lib/{zselectmultiple → components/input/zselectmultiple}/zselectmultiple.directive.d.ts +12 -12
- package/lib/{zselectmultiple → components/input/zselectmultiple}/zselectmultiple.pipe.d.ts +11 -11
- package/lib/{ztext → components/input/ztext}/ztext.component.d.ts +33 -33
- package/lib/{ztextarea → components/input/ztextarea}/ztextarea.component.d.ts +21 -25
- package/lib/{ztexteditor → components/input/ztexteditor}/ztexteditor.component.d.ts +44 -42
- package/lib/{zupload → components/input/zupload}/zupload.component.d.ts +45 -50
- package/lib/{embed-components → components/menu}/context-menu/context-menu.component.d.ts +24 -28
- package/lib/{kmenu → components/menu/kmenu}/kmenu.component.d.ts +13 -14
- package/lib/components/others/zform/zform.component.d.ts +30 -0
- package/lib/components/others/zformcontrol/zformcontrol.component.d.ts +21 -0
- package/lib/components/others/zformcontrol/zformcontrol.service.d.ts +12 -0
- package/lib/components/others/zmodal/zmodal-component-helper.service.d.ts +15 -0
- package/lib/components/others/zmodal/zmodal.component.d.ts +24 -0
- package/lib/components/others/zmodal/zmodal.service.d.ts +25 -0
- package/lib/components/others/zunknown/zunknown.component.d.ts +10 -0
- package/lib/components/utility/e1-root/e1-root.component.d.ts +20 -0
- package/lib/components/utility/input-error-message/input-error-message.component.d.ts +14 -0
- package/lib/{embed-components → components/utility}/input-field-addons/input-field-addons.component.d.ts +18 -23
- package/lib/{embed-components → components/utility}/page-loader/page-loader.component.d.ts +8 -8
- package/lib/{embed-components → components/utility}/processing-record-loader/processing-record-loader.component.d.ts +8 -8
- package/lib/{embed-components → components/utility}/spinner/spinner.component.d.ts +12 -14
- package/lib/components/utility/uiappmenucontent/uiappmenucontent.component.d.ts +17 -0
- package/lib/{uibulletin → components/utility/uibulletin}/uibulletin.component.d.ts +31 -36
- package/lib/{uicontainer → components/utility/uicontainer}/uicontainer.component.d.ts +16 -19
- package/lib/components/utility/uicontent/uicontent.component.d.ts +21 -0
- package/lib/components/utility/uiheader/uiheader.component.d.ts +40 -0
- package/lib/{uipage → components/utility/uipage}/uipage.component.d.ts +18 -23
- package/lib/constants/constant.d.ts +3 -3
- package/lib/directives/elementcontainer.directive.d.ts +8 -8
- package/lib/interfaces/modal.interface.d.ts +4 -0
- package/lib/pipe/htmlSanitize.pipe.d.ts +10 -10
- package/lib/pipe/panel-area.pipe.d.ts +7 -7
- package/lib/services/main.service.d.ts +136 -142
- package/lib/services/zcomponent.debug.service.d.ts +289 -68
- package/lib/services/zcomponent.service.d.ts +31 -44
- package/package.json +6 -13
- package/public-api.d.ts +93 -100
- package/styles/all.scss +643 -0
- package/styles/component.scss +0 -0
- package/styles/notificationkit.scss +53 -0
- package/esm2020/lib/animations/component-animations.mjs +0 -39
- package/esm2020/lib/components/buttonfieldbase.component.mjs +0 -80
- package/esm2020/lib/components/containerfieldbase.component.mjs +0 -50
- package/esm2020/lib/components/datalistingfieldbase.component.mjs +0 -277
- package/esm2020/lib/components/fieldbase.component.mjs +0 -178
- package/esm2020/lib/components/inputfieldbase.component.mjs +0 -202
- package/esm2020/lib/constants/constant.mjs +0 -4
- package/esm2020/lib/directives/elementcontainer.directive.mjs +0 -16
- package/esm2020/lib/directives/fieldelement.directive.mjs +0 -16
- package/esm2020/lib/directives/scrollbar.theme.directive.mjs +0 -45
- package/esm2020/lib/dropdown_buttons/dropdown_buttons.component.mjs +0 -109
- package/esm2020/lib/embed-components/context-menu/context-menu.component.mjs +0 -113
- package/esm2020/lib/embed-components/input-field-addons/input-field-addons.component.mjs +0 -93
- package/esm2020/lib/embed-components/page-loader/page-loader.component.mjs +0 -14
- package/esm2020/lib/embed-components/processing-record-loader/processing-record-loader.component.mjs +0 -14
- package/esm2020/lib/embed-components/spinner/spinner.component.mjs +0 -27
- package/esm2020/lib/ficon/ficon.component.mjs +0 -53
- package/esm2020/lib/input-error-message/input-error-message.component.mjs +0 -53
- package/esm2020/lib/kcard/kcard.component.mjs +0 -90
- package/esm2020/lib/kmenu/kmenu.component.mjs +0 -46
- package/esm2020/lib/kscrollview/kscrollview.component.mjs +0 -77
- package/esm2020/lib/ksplitter/ksplitter.component.mjs +0 -67
- package/esm2020/lib/mmhglobal-dynamicform.module.mjs +0 -657
- package/esm2020/lib/pipe/htmlSanitize.pipe.mjs +0 -18
- package/esm2020/lib/pipe/panel-area.pipe.mjs +0 -28
- package/esm2020/lib/services/main.service.mjs +0 -1307
- package/esm2020/lib/services/zcomponent.debug.service.mjs +0 -742
- package/esm2020/lib/services/zcomponent.service.mjs +0 -300
- package/esm2020/lib/sfdatetimepicker/sfdatetimepicker.component.mjs +0 -108
- package/esm2020/lib/sfquerybuilder/sfquerybuilder.component.mjs +0 -501
- package/esm2020/lib/uiactionbutton/uiactionbutton.component.mjs +0 -229
- package/esm2020/lib/uiappmenucontent/uiappmenucontent.component.mjs +0 -55
- package/esm2020/lib/uibulletin/uibulletin.component.mjs +0 -96
- package/esm2020/lib/uicontainer/uicontainer.component.mjs +0 -41
- package/esm2020/lib/uicontent/uicontent.component.mjs +0 -63
- package/esm2020/lib/uiheader/uiheader.component.mjs +0 -116
- package/esm2020/lib/uiheader/uiheader.service.mjs +0 -27
- package/esm2020/lib/uimenubutton/uimenubutton.component.mjs +0 -36
- package/esm2020/lib/uimenucontent/uimenucontent.component.mjs +0 -38
- package/esm2020/lib/uipage/uipage.component.mjs +0 -160
- package/esm2020/lib/uivalidationmessage/uivalidationmessage.component.mjs +0 -40
- package/esm2020/lib/virtual-scroll/virtual-scroll.component.mjs +0 -249
- package/esm2020/lib/zbullet/zbullet.component.mjs +0 -77
- package/esm2020/lib/zbuttons/zbuttons.component.mjs +0 -151
- package/esm2020/lib/zcard/zcard.component.mjs +0 -36
- package/esm2020/lib/zchart/zchart.component.mjs +0 -222
- package/esm2020/lib/zcheckbox/zcheckbox.component.mjs +0 -42
- package/esm2020/lib/zchip/zchip.component.mjs +0 -119
- package/esm2020/lib/zcodeeditor/zcodeeditor.component.mjs +0 -169
- package/esm2020/lib/zcodeeditor/zcodeeditor.pipe.mjs +0 -60
- package/esm2020/lib/zcolorpicker/zcolorpicker.component.mjs +0 -47
- package/esm2020/lib/zdaterange/zdaterange.component.mjs +0 -72
- package/esm2020/lib/zdatetime/dateIonicFormatParser.pipe.mjs +0 -40
- package/esm2020/lib/zdatetime/dateIonicMinMaxDate.pipe.mjs +0 -22
- package/esm2020/lib/zdatetime/dateKendoFormatParser.pipe.mjs +0 -41
- package/esm2020/lib/zdatetime/dateParser.pipe.mjs +0 -36
- package/esm2020/lib/zdatetime/zdatetime.component.mjs +0 -134
- package/esm2020/lib/zdiv/zdiv.component.mjs +0 -79
- package/esm2020/lib/zdiv/zdiv.pipe.mjs +0 -31
- package/esm2020/lib/zform/zform.component.mjs +0 -188
- package/esm2020/lib/zformcontrol/zformcontrol.component.mjs +0 -51
- package/esm2020/lib/zganttchart/zganttchart.component.mjs +0 -160
- package/esm2020/lib/zgauge/zgauge.component.mjs +0 -122
- package/esm2020/lib/zgrid/container/zgrid-container.component.mjs +0 -107
- package/esm2020/lib/zgrid/date-range-cell-filter.component.mjs +0 -146
- package/esm2020/lib/zgrid/zgrid.binding.directive.mjs +0 -881
- package/esm2020/lib/zgrid/zgrid.component.mjs +0 -1131
- package/esm2020/lib/zgrid/zgrid.popup.anchor-target.directive.mjs +0 -17
- package/esm2020/lib/zgrid/zgrid.service.mjs +0 -113
- package/esm2020/lib/zimg/zimg.component.mjs +0 -61
- package/esm2020/lib/zinput-container/zinput-container.component.mjs +0 -91
- package/esm2020/lib/zinput-container/zinput-container.pipe.mjs +0 -132
- package/esm2020/lib/zlabel/zlabel.component.mjs +0 -52
- package/esm2020/lib/zloop/zloop.component.mjs +0 -123
- package/esm2020/lib/zmfb/zmfb.component.mjs +0 -217
- package/esm2020/lib/zmodal/zmodal-mobile.component.mjs +0 -124
- package/esm2020/lib/zmodal/zmodal.component.mjs +0 -129
- package/esm2020/lib/znumeric/znumeric.component.mjs +0 -110
- package/esm2020/lib/znumeric/znumeric.component.pipe.mjs +0 -19
- package/esm2020/lib/zpostselectinput/zpostselectinput.component.mjs +0 -315
- package/esm2020/lib/zprogressbar/zprogressbar.component.mjs +0 -61
- package/esm2020/lib/zradiobutton/zradiobutton.component.mjs +0 -106
- package/esm2020/lib/zreport/zreport.component.mjs +0 -184
- package/esm2020/lib/zscheduler/zscheduler.component.mjs +0 -271
- package/esm2020/lib/zscheduler/zscheduler.toolbar.component.mjs +0 -150
- package/esm2020/lib/zselectmultiple/zselectmultiple.component.mjs +0 -689
- package/esm2020/lib/zselectmultiple/zselectmultiple.directive.mjs +0 -35
- package/esm2020/lib/zselectmultiple/zselectmultiple.pipe.mjs +0 -29
- package/esm2020/lib/ztab/ztab.component.mjs +0 -211
- package/esm2020/lib/ztab/ztab.pipe.mjs +0 -28
- package/esm2020/lib/ztext/ztext.component.mjs +0 -167
- package/esm2020/lib/ztextarea/ztextarea.component.mjs +0 -66
- package/esm2020/lib/ztexteditor/ztexteditor.component.mjs +0 -135
- package/esm2020/lib/ztree/ztree.component.mjs +0 -539
- package/esm2020/lib/ztreelist/ztreelist.component.mjs +0 -546
- package/esm2020/lib/ztrendcard/ztrendcard.component.mjs +0 -106
- package/esm2020/lib/zudf/zudf.component.mjs +0 -1016
- package/esm2020/lib/zunknown/zunknown.component.mjs +0 -20
- package/esm2020/lib/zupload/zupload.component.mjs +0 -403
- package/esm2020/lib/zworkflowbuttons/zworkflowbuttons.component.mjs +0 -244
- package/esm2020/mmhglobal-dynamicform.mjs +0 -5
- package/esm2020/public-api.mjs +0 -107
- package/fesm2015/mmhglobal-dynamicform.mjs +0 -16119
- package/fesm2015/mmhglobal-dynamicform.mjs.map +0 -1
- package/fesm2020/mmhglobal-dynamicform.mjs +0 -16079
- package/fesm2020/mmhglobal-dynamicform.mjs.map +0 -1
- package/lib/directives/fieldelement.directive.d.ts +0 -8
- package/lib/directives/scrollbar.theme.directive.d.ts +0 -10
- package/lib/ficon/ficon.component.d.ts +0 -34
- package/lib/input-error-message/input-error-message.component.d.ts +0 -19
- package/lib/kcard/kcard.component.d.ts +0 -25
- package/lib/mmhglobal-dynamicform.module.d.ts +0 -133
- package/lib/uiactionbutton/uiactionbutton.component.d.ts +0 -39
- package/lib/uiappmenucontent/uiappmenucontent.component.d.ts +0 -27
- package/lib/uicontent/uicontent.component.d.ts +0 -29
- package/lib/uiheader/uiheader.component.d.ts +0 -39
- package/lib/uiheader/uiheader.service.d.ts +0 -11
- package/lib/uimenubutton/uimenubutton.component.d.ts +0 -20
- package/lib/uimenucontent/uimenucontent.component.d.ts +0 -24
- package/lib/uivalidationmessage/uivalidationmessage.component.d.ts +0 -21
- package/lib/zbullet/zbullet.component.d.ts +0 -27
- package/lib/zbuttons/zbuttons.component.d.ts +0 -25
- package/lib/zcodeeditor/zcodeeditor.component.d.ts +0 -43
- package/lib/zcodeeditor/zcodeeditor.pipe.d.ts +0 -12
- package/lib/zdaterange/zdaterange.component.d.ts +0 -29
- package/lib/zdiv/zdiv.component.d.ts +0 -22
- package/lib/zform/zform.component.d.ts +0 -38
- package/lib/zformcontrol/zformcontrol.component.d.ts +0 -25
- package/lib/zmodal/zmodal-mobile.component.d.ts +0 -38
- package/lib/zmodal/zmodal.component.d.ts +0 -44
- package/lib/zradiobutton/zradiobutton.component.d.ts +0 -34
- package/lib/zunknown/zunknown.component.d.ts +0 -17
- package/lib/zworkflowbuttons/zworkflowbuttons.component.d.ts +0 -32
|
@@ -1,17 +0,0 @@
|
|
|
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.3", ngImport: i0, type: ZGridPopupAnchorDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
9
|
-
ZGridPopupAnchorDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.3", type: ZGridPopupAnchorDirective, selector: "[popupAnchor]", exportAs: ["popupAnchor"], ngImport: i0 });
|
|
10
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.3", 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
|
|
@@ -1,113 +0,0 @@
|
|
|
1
|
-
/********** Angular **********/
|
|
2
|
-
import { Injectable } from "@angular/core";
|
|
3
|
-
/********** Component & Service **********/
|
|
4
|
-
import { StateType } from 'mmhglobal-zcore';
|
|
5
|
-
import { defer, of, switchMap } from "rxjs";
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
import * as i1 from "mmhglobal-zcore";
|
|
8
|
-
export class ZGridService {
|
|
9
|
-
constructor(stateSettingService) {
|
|
10
|
-
this.stateSettingService = stateSettingService;
|
|
11
|
-
this.gridDefaultState = { skip: 0, take: 20 };
|
|
12
|
-
}
|
|
13
|
-
/**
|
|
14
|
-
* Configure grid settings based on the provided ZField object.
|
|
15
|
-
* @param field The ZField object containing configuration information.
|
|
16
|
-
* @returns The configured grid state.
|
|
17
|
-
*/
|
|
18
|
-
setupGridSetting(field) {
|
|
19
|
-
// Set the default number of items to display (take) based on the provided field's PageSize or a default of 20.
|
|
20
|
-
this.gridDefaultState.take = field.PageSize || 20;
|
|
21
|
-
// Create a copy of the default state and assign it to this.gridState.
|
|
22
|
-
this.gridState = Object.assign({}, this.gridDefaultState);
|
|
23
|
-
if (field.CacheInfo) {
|
|
24
|
-
let stateType = this.getGridStateLogic(field);
|
|
25
|
-
// Determine whether to use SavedSetting cache type based on configuration.
|
|
26
|
-
if (stateType === StateType.cachedDataSetting || stateType === StateType.savedAndCachedDataSetting) {
|
|
27
|
-
let cacheName = this.stateSettingService.getStorageCacheKey(stateType, field);
|
|
28
|
-
const cacheData = sessionStorage.getItem(cacheName);
|
|
29
|
-
if (cacheData) {
|
|
30
|
-
this.gridState = JSON.parse(cacheData).gridState;
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
return this.gridState;
|
|
35
|
-
}
|
|
36
|
-
getStateCacheByName(cacheName) {
|
|
37
|
-
try {
|
|
38
|
-
if (!cacheName) {
|
|
39
|
-
console.warn('Invalid cache name provided');
|
|
40
|
-
return null;
|
|
41
|
-
}
|
|
42
|
-
return JSON.parse(localStorage.getItem(cacheName));
|
|
43
|
-
}
|
|
44
|
-
catch (error) {
|
|
45
|
-
console.warn('Error accessing localStorage:', error);
|
|
46
|
-
return null; // Fallback in case of an error
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
getStateCache(stateType, field) {
|
|
50
|
-
const cacheName = this.stateSettingService.getStorageCacheKey(stateType, field);
|
|
51
|
-
const cachedState = this.getStateCacheByName(cacheName);
|
|
52
|
-
if (cachedState !== null) {
|
|
53
|
-
// Return the cached state immediately if it's not null
|
|
54
|
-
return of(cachedState);
|
|
55
|
-
}
|
|
56
|
-
const stateSettingInfo = this.stateSettingService.initGetStateSettingInfo(field);
|
|
57
|
-
stateSettingInfo.stateType = stateType;
|
|
58
|
-
return defer(() => this.stateSettingService.getStateSetting(stateSettingInfo).pipe(switchMap((retrievedState) => {
|
|
59
|
-
if (retrievedState) {
|
|
60
|
-
// Parse and set state if available
|
|
61
|
-
const stateSettingInfo = retrievedState;
|
|
62
|
-
if (stateSettingInfo.stateData) {
|
|
63
|
-
const gridStateData = JSON.parse(stateSettingInfo.stateData);
|
|
64
|
-
if (gridStateData) {
|
|
65
|
-
gridStateData.id = stateSettingInfo.id.toString();
|
|
66
|
-
this.setStateToCache(cacheName, gridStateData);
|
|
67
|
-
return of(gridStateData); // Emit the retrieved state
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
}
|
|
71
|
-
return of(null); // Complete without emitting anything
|
|
72
|
-
})));
|
|
73
|
-
}
|
|
74
|
-
setStateToCache(cacheName, gridSetting) {
|
|
75
|
-
const cacheData = JSON.stringify(gridSetting);
|
|
76
|
-
localStorage.setItem(cacheName, cacheData);
|
|
77
|
-
}
|
|
78
|
-
deleteStateCacheByName(cacheName) {
|
|
79
|
-
localStorage.removeItem(cacheName);
|
|
80
|
-
}
|
|
81
|
-
deleteStateCache(stateType, field) {
|
|
82
|
-
const cacheName = this.stateSettingService.getStorageCacheKey(stateType, field);
|
|
83
|
-
localStorage.removeItem(cacheName);
|
|
84
|
-
}
|
|
85
|
-
getGridStateLogic(field) {
|
|
86
|
-
if (field.CacheInfo) {
|
|
87
|
-
const enableSaveState = field.CacheInfo.EnableSaveState;
|
|
88
|
-
const disableCacheData = field.CacheInfo.DisableCacheData;
|
|
89
|
-
if (enableSaveState && !disableCacheData) {
|
|
90
|
-
return StateType.savedAndCachedDataSetting;
|
|
91
|
-
}
|
|
92
|
-
else if (enableSaveState && disableCacheData) {
|
|
93
|
-
return StateType.savedSetting;
|
|
94
|
-
}
|
|
95
|
-
else if (!enableSaveState && !disableCacheData) {
|
|
96
|
-
return StateType.cachedDataSetting;
|
|
97
|
-
}
|
|
98
|
-
}
|
|
99
|
-
else {
|
|
100
|
-
console.log('CacheInfo is undefined.');
|
|
101
|
-
}
|
|
102
|
-
return null;
|
|
103
|
-
}
|
|
104
|
-
}
|
|
105
|
-
ZGridService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: ZGridService, deps: [{ token: i1.StateSettingService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
106
|
-
ZGridService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: ZGridService, providedIn: 'root' });
|
|
107
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: ZGridService, decorators: [{
|
|
108
|
-
type: Injectable,
|
|
109
|
-
args: [{
|
|
110
|
-
providedIn: 'root'
|
|
111
|
-
}]
|
|
112
|
-
}], ctorParameters: function () { return [{ type: i1.StateSettingService }]; } });
|
|
113
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiemdyaWQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21taGdsb2JhbC1keW5hbWljZm9ybS9zcmMvbGliL3pncmlkL3pncmlkLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsK0JBQStCO0FBQy9CLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFPM0MsMkNBQTJDO0FBQzNDLE9BQU8sRUFDa0IsU0FBUyxFQUNqQyxNQUFNLGlCQUFpQixDQUFDO0FBQ3pCLE9BQU8sRUFBRSxLQUFLLEVBQWMsRUFBRSxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7O0FBTXhELE1BQU0sT0FBTyxZQUFZO0lBSXZCLFlBQ1UsbUJBQXdDO1FBQXhDLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFIMUMscUJBQWdCLEdBQVUsRUFBRSxJQUFJLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUUsQ0FBQztJQUt4RCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLGdCQUFnQixDQUFDLEtBQWE7UUFDbkMsK0dBQStHO1FBQy9HLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDLFFBQVEsSUFBSSxFQUFFLENBQUM7UUFFbEQsc0VBQXNFO1FBQ3RFLElBQUksQ0FBQyxTQUFTLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLEVBQUUsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFFMUQsSUFBSSxLQUFLLENBQUMsU0FBUyxFQUFFO1lBQ25CLElBQUksU0FBUyxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUU5QywyRUFBMkU7WUFDM0UsSUFBSSxTQUFTLEtBQUssU0FBUyxDQUFDLGlCQUFpQixJQUFJLFNBQVMsS0FBSyxTQUFTLENBQUMseUJBQXlCLEVBQUU7Z0JBQ2xHLElBQUksU0FBUyxHQUFHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxrQkFBa0IsQ0FBQyxTQUFTLEVBQUUsS0FBSyxDQUFDLENBQUM7Z0JBQzlFLE1BQU0sU0FBUyxHQUFHLGNBQWMsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUM7Z0JBRXBELElBQUksU0FBUyxFQUFFO29CQUNiLElBQUksQ0FBQyxTQUFTLEdBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQW1CLENBQUMsU0FBUyxDQUFDO2lCQUNyRTthQUNGO1NBQ0Y7UUFFRCxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDeEIsQ0FBQztJQUVNLG1CQUFtQixDQUFDLFNBQWlCO1FBQzFDLElBQUk7WUFDRixJQUFJLENBQUMsU0FBUyxFQUFFO2dCQUNkLE9BQU8sQ0FBQyxJQUFJLENBQUMsNkJBQTZCLENBQUMsQ0FBQztnQkFDNUMsT0FBTyxJQUFJLENBQUM7YUFDYjtZQUVELE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUM7U0FDcEQ7UUFBQyxPQUFPLEtBQUssRUFBRTtZQUNkLE9BQU8sQ0FBQyxJQUFJLENBQUMsK0JBQStCLEVBQUUsS0FBSyxDQUFDLENBQUM7WUFDckQsT0FBTyxJQUFJLENBQUMsQ0FBQywrQkFBK0I7U0FDN0M7SUFDSCxDQUFDO0lBRU0sYUFBYSxDQUFDLFNBQW9CLEVBQUUsS0FBYTtRQUN0RCxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsbUJBQW1CLENBQUMsa0JBQWtCLENBQUMsU0FBUyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ2hGLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUV4RCxJQUFJLFdBQVcsS0FBSyxJQUFJLEVBQUU7WUFDeEIsdURBQXVEO1lBQ3ZELE9BQU8sRUFBRSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1NBQ3hCO1FBRUQsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsbUJBQW1CLENBQUMsdUJBQXVCLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDakYsZ0JBQWdCLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQztRQUV2QyxPQUFPLEtBQUssQ0FBQyxHQUFHLEVBQUUsQ0FDaEIsSUFBSSxDQUFDLG1CQUFtQixDQUFDLGVBQWUsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLElBQUksQ0FDN0QsU0FBUyxDQUFDLENBQUMsY0FBYyxFQUFFLEVBQUU7WUFDM0IsSUFBSSxjQUFjLEVBQUU7Z0JBQ2xCLG1DQUFtQztnQkFDbkMsTUFBTSxnQkFBZ0IsR0FBRyxjQUFrQyxDQUFDO2dCQUM1RCxJQUFHLGdCQUFnQixDQUFDLFNBQVMsRUFBRTtvQkFDN0IsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLENBQWtCLENBQUM7b0JBRTlFLElBQUksYUFBYSxFQUFFO3dCQUNqQixhQUFhLENBQUMsRUFBRSxHQUFHLGdCQUFnQixDQUFDLEVBQUUsQ0FBQyxRQUFRLEVBQUUsQ0FBQzt3QkFDbEQsSUFBSSxDQUFDLGVBQWUsQ0FBQyxTQUFTLEVBQUUsYUFBYSxDQUFDLENBQUM7d0JBQy9DLE9BQU8sRUFBRSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsMkJBQTJCO3FCQUN0RDtpQkFDRjthQUNGO1lBQ0QsT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxxQ0FBcUM7UUFDeEQsQ0FBQyxDQUFDLENBQ0gsQ0FDRixDQUFDO0lBQ0osQ0FBQztJQUVNLGVBQWUsQ0FBQyxTQUFpQixFQUFFLFdBQTBCO1FBQ2xFLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDOUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUUsU0FBUyxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVNLHNCQUFzQixDQUFDLFNBQWlCO1FBQzdDLFlBQVksQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUVNLGdCQUFnQixDQUFDLFNBQW9CLEVBQUUsS0FBYTtRQUN6RCxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsbUJBQW1CLENBQUMsa0JBQWtCLENBQUMsU0FBUyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ2hGLFlBQVksQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUVNLGlCQUFpQixDQUFDLEtBQWE7UUFDcEMsSUFBSSxLQUFLLENBQUMsU0FBUyxFQUFFO1lBQ25CLE1BQU0sZUFBZSxHQUFHLEtBQUssQ0FBQyxTQUFTLENBQUMsZUFBZSxDQUFDO1lBQ3hELE1BQU0sZ0JBQWdCLEdBQUcsS0FBSyxDQUFDLFNBQVMsQ0FBQyxnQkFBZ0IsQ0FBQztZQUUxRCxJQUFJLGVBQWUsSUFBSSxDQUFDLGdCQUFnQixFQUFFO2dCQUN4QyxPQUFPLFNBQVMsQ0FBQyx5QkFBeUIsQ0FBQzthQUM1QztpQkFDSSxJQUFJLGVBQWUsSUFBSSxnQkFBZ0IsRUFBRTtnQkFDNUMsT0FBTyxTQUFTLENBQUMsWUFBWSxDQUFDO2FBQy9CO2lCQUNJLElBQUksQ0FBQyxlQUFlLElBQUksQ0FBQyxnQkFBZ0IsRUFBRTtnQkFDOUMsT0FBTyxTQUFTLENBQUMsaUJBQWlCLENBQUM7YUFDcEM7U0FDRjthQUNJO1lBQ0gsT0FBTyxDQUFDLEdBQUcsQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO1NBQ3hDO1FBRUQsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDOzt5R0F4SFUsWUFBWTs2R0FBWixZQUFZLGNBRlgsTUFBTTsyRkFFUCxZQUFZO2tCQUh4QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqIEFuZ3VsYXIgKioqKioqKioqKi9cclxuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcblxyXG4vKioqKioqKioqKiBJb25pYyAqKioqKioqKioqL1xyXG5cclxuLyoqKioqKioqKiogUGx1Z2luICoqKioqKioqKiovXHJcbmltcG9ydCB7IFN0YXRlIH0gZnJvbSBcIkBwcm9ncmVzcy9rZW5kby1kYXRhLXF1ZXJ5XCI7XHJcblxyXG4vKioqKioqKioqKiBDb21wb25lbnQgJiBTZXJ2aWNlICoqKioqKioqKiovXHJcbmltcG9ydCB7XHJcbiAgWkZpZWxkLCBaR3JpZFNldHRpbmdzLCBTdGF0ZVR5cGUsIFN0YXRlU2V0dGluZ1NlcnZpY2UsIFN0YXRlU2V0dGluZ0luZm9cclxufSBmcm9tICdtbWhnbG9iYWwtemNvcmUnO1xyXG5pbXBvcnQgeyBkZWZlciwgT2JzZXJ2YWJsZSwgb2YsIHN3aXRjaE1hcCB9IGZyb20gXCJyeGpzXCI7XHJcblxyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgWkdyaWRTZXJ2aWNlIHtcclxuICBwcml2YXRlIGdyaWRTdGF0ZTogU3RhdGU7XHJcbiAgcHJpdmF0ZSBncmlkRGVmYXVsdFN0YXRlOiBTdGF0ZSA9IHsgc2tpcDogMCwgdGFrZTogMjAgfTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIHN0YXRlU2V0dGluZ1NlcnZpY2U6IFN0YXRlU2V0dGluZ1NlcnZpY2VcclxuICApIHtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIENvbmZpZ3VyZSBncmlkIHNldHRpbmdzIGJhc2VkIG9uIHRoZSBwcm92aWRlZCBaRmllbGQgb2JqZWN0LlxyXG4gICAqIEBwYXJhbSBmaWVsZCBUaGUgWkZpZWxkIG9iamVjdCBjb250YWluaW5nIGNvbmZpZ3VyYXRpb24gaW5mb3JtYXRpb24uXHJcbiAgICogQHJldHVybnMgVGhlIGNvbmZpZ3VyZWQgZ3JpZCBzdGF0ZS5cclxuICAgKi9cclxuICBwdWJsaWMgc2V0dXBHcmlkU2V0dGluZyhmaWVsZDogWkZpZWxkKTogU3RhdGUge1xyXG4gICAgLy8gU2V0IHRoZSBkZWZhdWx0IG51bWJlciBvZiBpdGVtcyB0byBkaXNwbGF5ICh0YWtlKSBiYXNlZCBvbiB0aGUgcHJvdmlkZWQgZmllbGQncyBQYWdlU2l6ZSBvciBhIGRlZmF1bHQgb2YgMjAuXHJcbiAgICB0aGlzLmdyaWREZWZhdWx0U3RhdGUudGFrZSA9IGZpZWxkLlBhZ2VTaXplIHx8IDIwO1xyXG5cclxuICAgIC8vIENyZWF0ZSBhIGNvcHkgb2YgdGhlIGRlZmF1bHQgc3RhdGUgYW5kIGFzc2lnbiBpdCB0byB0aGlzLmdyaWRTdGF0ZS5cclxuICAgIHRoaXMuZ3JpZFN0YXRlID0gT2JqZWN0LmFzc2lnbih7fSwgdGhpcy5ncmlkRGVmYXVsdFN0YXRlKTtcclxuXHJcbiAgICBpZiAoZmllbGQuQ2FjaGVJbmZvKSB7XHJcbiAgICAgIGxldCBzdGF0ZVR5cGUgPSB0aGlzLmdldEdyaWRTdGF0ZUxvZ2ljKGZpZWxkKTtcclxuXHJcbiAgICAgIC8vIERldGVybWluZSB3aGV0aGVyIHRvIHVzZSBTYXZlZFNldHRpbmcgY2FjaGUgdHlwZSBiYXNlZCBvbiBjb25maWd1cmF0aW9uLlxyXG4gICAgICBpZiAoc3RhdGVUeXBlID09PSBTdGF0ZVR5cGUuY2FjaGVkRGF0YVNldHRpbmcgfHwgc3RhdGVUeXBlID09PSBTdGF0ZVR5cGUuc2F2ZWRBbmRDYWNoZWREYXRhU2V0dGluZykge1xyXG4gICAgICAgIGxldCBjYWNoZU5hbWUgPSB0aGlzLnN0YXRlU2V0dGluZ1NlcnZpY2UuZ2V0U3RvcmFnZUNhY2hlS2V5KHN0YXRlVHlwZSwgZmllbGQpO1xyXG4gICAgICAgIGNvbnN0IGNhY2hlRGF0YSA9IHNlc3Npb25TdG9yYWdlLmdldEl0ZW0oY2FjaGVOYW1lKTtcclxuXHJcbiAgICAgICAgaWYgKGNhY2hlRGF0YSkge1xyXG4gICAgICAgICAgdGhpcy5ncmlkU3RhdGUgPSAoSlNPTi5wYXJzZShjYWNoZURhdGEpIGFzIFpHcmlkU2V0dGluZ3MpLmdyaWRTdGF0ZTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gdGhpcy5ncmlkU3RhdGU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0U3RhdGVDYWNoZUJ5TmFtZShjYWNoZU5hbWU6IHN0cmluZykge1xyXG4gICAgdHJ5IHtcclxuICAgICAgaWYgKCFjYWNoZU5hbWUpIHtcclxuICAgICAgICBjb25zb2xlLndhcm4oJ0ludmFsaWQgY2FjaGUgbmFtZSBwcm92aWRlZCcpO1xyXG4gICAgICAgIHJldHVybiBudWxsO1xyXG4gICAgICB9XHJcblxyXG4gICAgICByZXR1cm4gSlNPTi5wYXJzZShsb2NhbFN0b3JhZ2UuZ2V0SXRlbShjYWNoZU5hbWUpKTtcclxuICAgIH0gY2F0Y2ggKGVycm9yKSB7XHJcbiAgICAgIGNvbnNvbGUud2FybignRXJyb3IgYWNjZXNzaW5nIGxvY2FsU3RvcmFnZTonLCBlcnJvcik7XHJcbiAgICAgIHJldHVybiBudWxsOyAvLyBGYWxsYmFjayBpbiBjYXNlIG9mIGFuIGVycm9yXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0U3RhdGVDYWNoZShzdGF0ZVR5cGU6IFN0YXRlVHlwZSwgZmllbGQ6IFpGaWVsZCk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBjb25zdCBjYWNoZU5hbWUgPSB0aGlzLnN0YXRlU2V0dGluZ1NlcnZpY2UuZ2V0U3RvcmFnZUNhY2hlS2V5KHN0YXRlVHlwZSwgZmllbGQpO1xyXG4gICAgY29uc3QgY2FjaGVkU3RhdGUgPSB0aGlzLmdldFN0YXRlQ2FjaGVCeU5hbWUoY2FjaGVOYW1lKTtcclxuICBcclxuICAgIGlmIChjYWNoZWRTdGF0ZSAhPT0gbnVsbCkge1xyXG4gICAgICAvLyBSZXR1cm4gdGhlIGNhY2hlZCBzdGF0ZSBpbW1lZGlhdGVseSBpZiBpdCdzIG5vdCBudWxsXHJcbiAgICAgIHJldHVybiBvZihjYWNoZWRTdGF0ZSk7XHJcbiAgICB9XHJcbiAgXHJcbiAgICBjb25zdCBzdGF0ZVNldHRpbmdJbmZvID0gdGhpcy5zdGF0ZVNldHRpbmdTZXJ2aWNlLmluaXRHZXRTdGF0ZVNldHRpbmdJbmZvKGZpZWxkKTtcclxuICAgIHN0YXRlU2V0dGluZ0luZm8uc3RhdGVUeXBlID0gc3RhdGVUeXBlO1xyXG4gICBcclxuICAgIHJldHVybiBkZWZlcigoKSA9PiBcclxuICAgICAgdGhpcy5zdGF0ZVNldHRpbmdTZXJ2aWNlLmdldFN0YXRlU2V0dGluZyhzdGF0ZVNldHRpbmdJbmZvKS5waXBlKFxyXG4gICAgICAgIHN3aXRjaE1hcCgocmV0cmlldmVkU3RhdGUpID0+IHtcclxuICAgICAgICAgIGlmIChyZXRyaWV2ZWRTdGF0ZSkge1xyXG4gICAgICAgICAgICAvLyBQYXJzZSBhbmQgc2V0IHN0YXRlIGlmIGF2YWlsYWJsZVxyXG4gICAgICAgICAgICBjb25zdCBzdGF0ZVNldHRpbmdJbmZvID0gcmV0cmlldmVkU3RhdGUgYXMgU3RhdGVTZXR0aW5nSW5mbztcclxuICAgICAgICAgICAgaWYoc3RhdGVTZXR0aW5nSW5mby5zdGF0ZURhdGEpIHtcclxuICAgICAgICAgICAgICBjb25zdCBncmlkU3RhdGVEYXRhID0gSlNPTi5wYXJzZShzdGF0ZVNldHRpbmdJbmZvLnN0YXRlRGF0YSkgYXMgWkdyaWRTZXR0aW5ncztcclxuICAgIFxyXG4gICAgICAgICAgICAgIGlmIChncmlkU3RhdGVEYXRhKSB7XHJcbiAgICAgICAgICAgICAgICBncmlkU3RhdGVEYXRhLmlkID0gc3RhdGVTZXR0aW5nSW5mby5pZC50b1N0cmluZygpO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5zZXRTdGF0ZVRvQ2FjaGUoY2FjaGVOYW1lLCBncmlkU3RhdGVEYXRhKTtcclxuICAgICAgICAgICAgICAgIHJldHVybiBvZihncmlkU3RhdGVEYXRhKTsgLy8gRW1pdCB0aGUgcmV0cmlldmVkIHN0YXRlXHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICByZXR1cm4gb2YobnVsbCk7IC8vIENvbXBsZXRlIHdpdGhvdXQgZW1pdHRpbmcgYW55dGhpbmdcclxuICAgICAgICB9KSBcclxuICAgICAgKVxyXG4gICAgKTtcclxuICB9XHJcbiAgICBcclxuICBwdWJsaWMgc2V0U3RhdGVUb0NhY2hlKGNhY2hlTmFtZTogc3RyaW5nLCBncmlkU2V0dGluZzogWkdyaWRTZXR0aW5ncykge1xyXG4gICAgY29uc3QgY2FjaGVEYXRhID0gSlNPTi5zdHJpbmdpZnkoZ3JpZFNldHRpbmcpO1xyXG4gICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oY2FjaGVOYW1lLCBjYWNoZURhdGEpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGRlbGV0ZVN0YXRlQ2FjaGVCeU5hbWUoY2FjaGVOYW1lOiBzdHJpbmcpIHtcclxuICAgIGxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKGNhY2hlTmFtZSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZGVsZXRlU3RhdGVDYWNoZShzdGF0ZVR5cGU6IFN0YXRlVHlwZSwgZmllbGQ6IFpGaWVsZCkge1xyXG4gICAgY29uc3QgY2FjaGVOYW1lID0gdGhpcy5zdGF0ZVNldHRpbmdTZXJ2aWNlLmdldFN0b3JhZ2VDYWNoZUtleShzdGF0ZVR5cGUsIGZpZWxkKTtcclxuICAgIGxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKGNhY2hlTmFtZSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0R3JpZFN0YXRlTG9naWMoZmllbGQ6IFpGaWVsZCkge1xyXG4gICAgaWYgKGZpZWxkLkNhY2hlSW5mbykge1xyXG4gICAgICBjb25zdCBlbmFibGVTYXZlU3RhdGUgPSBmaWVsZC5DYWNoZUluZm8uRW5hYmxlU2F2ZVN0YXRlO1xyXG4gICAgICBjb25zdCBkaXNhYmxlQ2FjaGVEYXRhID0gZmllbGQuQ2FjaGVJbmZvLkRpc2FibGVDYWNoZURhdGE7XHJcblxyXG4gICAgICBpZiAoZW5hYmxlU2F2ZVN0YXRlICYmICFkaXNhYmxlQ2FjaGVEYXRhKSB7XHJcbiAgICAgICAgcmV0dXJuIFN0YXRlVHlwZS5zYXZlZEFuZENhY2hlZERhdGFTZXR0aW5nO1xyXG4gICAgICB9XHJcbiAgICAgIGVsc2UgaWYgKGVuYWJsZVNhdmVTdGF0ZSAmJiBkaXNhYmxlQ2FjaGVEYXRhKSB7XHJcbiAgICAgICAgcmV0dXJuIFN0YXRlVHlwZS5zYXZlZFNldHRpbmc7XHJcbiAgICAgIH1cclxuICAgICAgZWxzZSBpZiAoIWVuYWJsZVNhdmVTdGF0ZSAmJiAhZGlzYWJsZUNhY2hlRGF0YSkge1xyXG4gICAgICAgIHJldHVybiBTdGF0ZVR5cGUuY2FjaGVkRGF0YVNldHRpbmc7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIGVsc2Uge1xyXG4gICAgICBjb25zb2xlLmxvZygnQ2FjaGVJbmZvIGlzIHVuZGVmaW5lZC4nKTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gbnVsbDtcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
/********** Angular **********/
|
|
2
|
-
import { Component } from "@angular/core";
|
|
3
|
-
/********** Ionic **********/
|
|
4
|
-
/********** Plugin **********/
|
|
5
|
-
import { from, switchMap, of } from "rxjs";
|
|
6
|
-
/********** Component & Service **********/
|
|
7
|
-
import { InputFieldBase } from "../components/inputfieldbase.component";
|
|
8
|
-
import { ZComponentHelper } from "mmhglobal-zcore";
|
|
9
|
-
import * as i0 from "@angular/core";
|
|
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(componentService, attachmentService) {
|
|
16
|
-
super(componentService);
|
|
17
|
-
this.componentService = componentService;
|
|
18
|
-
this.attachmentService = attachmentService;
|
|
19
|
-
}
|
|
20
|
-
ngOnInit() {
|
|
21
|
-
super.setupInnerField();
|
|
22
|
-
this.setImageSource();
|
|
23
|
-
}
|
|
24
|
-
ngAfterViewInit() {
|
|
25
|
-
this.componentService.decrementComponentCounterForField(this.data);
|
|
26
|
-
}
|
|
27
|
-
setImageSource() {
|
|
28
|
-
this.getImageSource().subscribe(imgSource => {
|
|
29
|
-
this.imgSource = imgSource;
|
|
30
|
-
});
|
|
31
|
-
}
|
|
32
|
-
getImageSource() {
|
|
33
|
-
this.setImageSize();
|
|
34
|
-
if (this.data.SourceUrl) {
|
|
35
|
-
return of(ZComponentHelper.getGroupValue(this.data.SourceUrl, this.group));
|
|
36
|
-
}
|
|
37
|
-
const guid = ZComponentHelper.getGroupValue(this.data['Guid'], this.group);
|
|
38
|
-
const fileName = ZComponentHelper.getGroupValue(this.data['FileName'], this.group);
|
|
39
|
-
if (guid && fileName) {
|
|
40
|
-
return from(this.attachmentService.getImageBlob(fileName, guid)).pipe(switchMap(blobfile => {
|
|
41
|
-
return from(this.attachmentService.convertBlobToBase64(blobfile));
|
|
42
|
-
}));
|
|
43
|
-
}
|
|
44
|
-
return of({});
|
|
45
|
-
}
|
|
46
|
-
setImageSize() {
|
|
47
|
-
if (this.data.Size && this.data.Size.toLowerCase().indexOf("x") !== -1) {
|
|
48
|
-
const imgSize = this.data.Size.toLowerCase().split("x");
|
|
49
|
-
const styleExpression = `width:${imgSize[0]}px;height:${imgSize[1]}px;`;
|
|
50
|
-
this.componentProperties.style.style += styleExpression;
|
|
51
|
-
this.componentProperties.style.style1 += styleExpression;
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
}
|
|
55
|
-
ZimgComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: ZimgComponent, deps: [{ token: i1.ZComponentService }, { token: i2.AttachmentService }], target: i0.ɵɵFactoryTarget.Component });
|
|
56
|
-
ZimgComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.3", 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"] }] });
|
|
57
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: ZimgComponent, decorators: [{
|
|
58
|
-
type: Component,
|
|
59
|
-
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: [""] }]
|
|
60
|
-
}], ctorParameters: function () { return [{ type: i1.ZComponentService }, { type: i2.AttachmentService }]; } });
|
|
61
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiemltZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tbWhnbG9iYWwtZHluYW1pY2Zvcm0vc3JjL2xpYi96aW1nL3ppbWcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbW1oZ2xvYmFsLWR5bmFtaWNmb3JtL3NyYy9saWIvemltZy96aW1nLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLCtCQUErQjtBQUMvQixPQUFPLEVBQUUsU0FBUyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBRWxELDZCQUE2QjtBQUU3Qiw4QkFBOEI7QUFDOUIsT0FBTyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsRUFBRSxFQUFjLE1BQU0sTUFBTSxDQUFDO0FBRXZELDJDQUEyQztBQUMzQyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFFeEUsT0FBTyxFQUFjLGdCQUFnQixFQUFxQixNQUFNLGlCQUFpQixDQUFDOzs7Ozs7QUFTbEYsTUFBTSxPQUFPLGFBQWMsU0FBUSxjQUFjO0lBRy9DLFlBQ1MsZ0JBQW1DLEVBQ2xDLGlCQUFvQztRQUU1QyxLQUFLLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUhqQixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQW1CO1FBQ2xDLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7SUFHOUMsQ0FBQztJQUVELFFBQVE7UUFDTixLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDeEIsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQ3hCLENBQUM7SUFFRCxlQUFlO1FBQ2IsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGlDQUFpQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNyRSxDQUFDO0lBRU0sY0FBYztRQUNuQixJQUFJLENBQUMsY0FBYyxFQUFFLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxFQUFFO1lBQzFDLElBQUksQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFBO1FBQzVCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLGNBQWM7UUFDcEIsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBRXBCLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUU7WUFDdkIsT0FBTyxFQUFFLENBQUMsZ0JBQWdCLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1NBQzVFO1FBRUQsTUFBTSxJQUFJLEdBQUcsZ0JBQWdCLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzNFLE1BQU0sUUFBUSxHQUFHLGdCQUFnQixDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUVuRixJQUFJLElBQUksSUFBSSxRQUFRLEVBQUU7WUFDcEIsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFlBQVksQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQ25FLFNBQVMsQ0FBQyxRQUFRLENBQUMsRUFBRTtnQkFDbkIsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLG1CQUFtQixDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7WUFDcEUsQ0FBQyxDQUFDLENBQ0gsQ0FBQTtTQUNGO1FBRUQsT0FBTyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDaEIsQ0FBQztJQUVPLFlBQVk7UUFDbEIsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUU7WUFDdEUsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ3hELE1BQU0sZUFBZSxHQUFHLFNBQVMsT0FBTyxDQUFDLENBQUMsQ0FBQyxhQUFhLE9BQU8sQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO1lBQ3hFLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxLQUFLLENBQUMsS0FBSyxJQUFJLGVBQWUsQ0FBQztZQUN4RCxJQUFJLENBQUMsbUJBQW1CLENBQUMsS0FBSyxDQUFDLE1BQU0sSUFBSSxlQUFlLENBQUM7U0FDMUQ7SUFDSCxDQUFDOzswR0FyRFUsYUFBYTs4RkFBYixhQUFhLHVFQ3BCMUIsOFJBSUE7MkZEZ0JhLGFBQWE7a0JBTnpCLFNBQVM7K0JBQ0UsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqIEFuZ3VsYXIgKioqKioqKioqKi9cclxuaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5cclxuLyoqKioqKioqKiogSW9uaWMgKioqKioqKioqKi9cclxuXHJcbi8qKioqKioqKioqIFBsdWdpbiAqKioqKioqKioqL1xyXG5pbXBvcnQgeyBmcm9tLCBzd2l0Y2hNYXAsIG9mLCBPYnNlcnZhYmxlIH0gZnJvbSBcInJ4anNcIjtcclxuXHJcbi8qKioqKioqKioqIENvbXBvbmVudCAmIFNlcnZpY2UgKioqKioqKioqKi9cclxuaW1wb3J0IHsgSW5wdXRGaWVsZEJhc2UgfSBmcm9tIFwiLi4vY29tcG9uZW50cy9pbnB1dGZpZWxkYmFzZS5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgWkNvbXBvbmVudFNlcnZpY2UgfSBmcm9tIFwiLi4vc2VydmljZXMvemNvbXBvbmVudC5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IFpDb21wb25lbnQsIFpDb21wb25lbnRIZWxwZXIsIEF0dGFjaG1lbnRTZXJ2aWNlIH0gZnJvbSBcIm1taGdsb2JhbC16Y29yZVwiO1xyXG5cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiBcImFwcC16aW1nXCIsXHJcbiAgdGVtcGxhdGVVcmw6IFwiLi96aW1nLmNvbXBvbmVudC5odG1sXCIsXHJcbiAgc3R5bGVVcmxzOiBbXCIuL3ppbWcuY29tcG9uZW50LnNjc3NcIl1cclxufSlcclxuXHJcbmV4cG9ydCBjbGFzcyBaaW1nQ29tcG9uZW50IGV4dGVuZHMgSW5wdXRGaWVsZEJhc2UgaW1wbGVtZW50cyBaQ29tcG9uZW50LCBPbkluaXQge1xyXG4gIHB1YmxpYyBpbWdTb3VyY2U7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHVibGljIGNvbXBvbmVudFNlcnZpY2U6IFpDb21wb25lbnRTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBhdHRhY2htZW50U2VydmljZTogQXR0YWNobWVudFNlcnZpY2VcclxuICApIHtcclxuICAgIHN1cGVyKGNvbXBvbmVudFNlcnZpY2UpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICBzdXBlci5zZXR1cElubmVyRmllbGQoKTtcclxuICAgIHRoaXMuc2V0SW1hZ2VTb3VyY2UoKTtcclxuICB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcclxuICAgIHRoaXMuY29tcG9uZW50U2VydmljZS5kZWNyZW1lbnRDb21wb25lbnRDb3VudGVyRm9yRmllbGQodGhpcy5kYXRhKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzZXRJbWFnZVNvdXJjZSgpIHtcclxuICAgIHRoaXMuZ2V0SW1hZ2VTb3VyY2UoKS5zdWJzY3JpYmUoaW1nU291cmNlID0+IHtcclxuICAgICAgdGhpcy5pbWdTb3VyY2UgPSBpbWdTb3VyY2VcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBnZXRJbWFnZVNvdXJjZSgpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgdGhpcy5zZXRJbWFnZVNpemUoKTtcclxuXHJcbiAgICBpZiAodGhpcy5kYXRhLlNvdXJjZVVybCkge1xyXG4gICAgICByZXR1cm4gb2YoWkNvbXBvbmVudEhlbHBlci5nZXRHcm91cFZhbHVlKHRoaXMuZGF0YS5Tb3VyY2VVcmwsIHRoaXMuZ3JvdXApKTtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdCBndWlkID0gWkNvbXBvbmVudEhlbHBlci5nZXRHcm91cFZhbHVlKHRoaXMuZGF0YVsnR3VpZCddLCB0aGlzLmdyb3VwKTtcclxuICAgIGNvbnN0IGZpbGVOYW1lID0gWkNvbXBvbmVudEhlbHBlci5nZXRHcm91cFZhbHVlKHRoaXMuZGF0YVsnRmlsZU5hbWUnXSwgdGhpcy5ncm91cCk7XHJcblxyXG4gICAgaWYgKGd1aWQgJiYgZmlsZU5hbWUpIHtcclxuICAgICAgcmV0dXJuIGZyb20odGhpcy5hdHRhY2htZW50U2VydmljZS5nZXRJbWFnZUJsb2IoZmlsZU5hbWUsIGd1aWQpKS5waXBlKFxyXG4gICAgICAgIHN3aXRjaE1hcChibG9iZmlsZSA9PiB7XHJcbiAgICAgICAgICByZXR1cm4gZnJvbSh0aGlzLmF0dGFjaG1lbnRTZXJ2aWNlLmNvbnZlcnRCbG9iVG9CYXNlNjQoYmxvYmZpbGUpKTtcclxuICAgICAgICB9KVxyXG4gICAgICApXHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIG9mKHt9KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgc2V0SW1hZ2VTaXplKCkge1xyXG4gICAgaWYgKHRoaXMuZGF0YS5TaXplICYmIHRoaXMuZGF0YS5TaXplLnRvTG93ZXJDYXNlKCkuaW5kZXhPZihcInhcIikgIT09IC0xKSB7XHJcbiAgICAgIGNvbnN0IGltZ1NpemUgPSB0aGlzLmRhdGEuU2l6ZS50b0xvd2VyQ2FzZSgpLnNwbGl0KFwieFwiKTtcclxuICAgICAgY29uc3Qgc3R5bGVFeHByZXNzaW9uID0gYHdpZHRoOiR7aW1nU2l6ZVswXX1weDtoZWlnaHQ6JHtpbWdTaXplWzFdfXB4O2A7XHJcbiAgICAgIHRoaXMuY29tcG9uZW50UHJvcGVydGllcy5zdHlsZS5zdHlsZSArPSBzdHlsZUV4cHJlc3Npb247XHJcbiAgICAgIHRoaXMuY29tcG9uZW50UHJvcGVydGllcy5zdHlsZS5zdHlsZTEgKz0gc3R5bGVFeHByZXNzaW9uO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCI8ZGl2IFtmb3JtR3JvdXBdPVwiZm9ybVwiIGNsYXNzPVwiemltZy1jb250YWluZXIgZTF0YWctc3R5bGVcIiBbc3R5bGVdPVwiY29tcG9uZW50UHJvcGVydGllcy5zdHlsZS5zdHlsZVwiPlxyXG4gIDxpbWcgKm5nSWY9XCJpbWdTb3VyY2VcIiBjbGFzcz1cImUxdGFnLXN0eWxlMVwiIFtzcmNdPVwiaW1nU291cmNlXCIgW3N0eWxlXT1cImNvbXBvbmVudFByb3BlcnRpZXMuc3R5bGUuc3R5bGUxXCJcclxuICAgICAgIChjbGljayk9XCJvbkl0ZW1DbGljaygkZXZlbnQpXCIgLz5cclxuPC9kaXY+XHJcbiJdfQ==
|
|
@@ -1,91 +0,0 @@
|
|
|
1
|
-
/********** Angular **********/
|
|
2
|
-
import { Component } from "@angular/core";
|
|
3
|
-
/********** Ionic **********/
|
|
4
|
-
/********** Plugin **********/
|
|
5
|
-
import { tap } from "rxjs";
|
|
6
|
-
/********** Component & Service **********/
|
|
7
|
-
import { FieldBase } from "../components/fieldbase.component";
|
|
8
|
-
import { ZComponentHelper } from 'mmhglobal-zcore';
|
|
9
|
-
import * as i0 from "@angular/core";
|
|
10
|
-
import * as i1 from "../services/zcomponent.service";
|
|
11
|
-
import * as i2 from "@ionic/angular";
|
|
12
|
-
import * as i3 from "../ztext/ztext.component";
|
|
13
|
-
import * as i4 from "../zselectmultiple/zselectmultiple.component";
|
|
14
|
-
import * as i5 from "../zdatetime/zdatetime.component";
|
|
15
|
-
import * as i6 from "../sfdatetimepicker/sfdatetimepicker.component";
|
|
16
|
-
import * as i7 from "../zpostselectinput/zpostselectinput.component";
|
|
17
|
-
import * as i8 from "../zcheckbox/zcheckbox.component";
|
|
18
|
-
import * as i9 from "../znumeric/znumeric.component";
|
|
19
|
-
import * as i10 from "../ztextarea/ztextarea.component";
|
|
20
|
-
import * as i11 from "../zupload/zupload.component";
|
|
21
|
-
import * as i12 from "../zimg/zimg.component";
|
|
22
|
-
import * as i13 from "../ztexteditor/ztexteditor.component";
|
|
23
|
-
import * as i14 from "../zcolorpicker/zcolorpicker.component";
|
|
24
|
-
import * as i15 from "../zradiobutton/zradiobutton.component";
|
|
25
|
-
import * as i16 from "../input-error-message/input-error-message.component";
|
|
26
|
-
import * as i17 from "@progress/kendo-angular-label";
|
|
27
|
-
import * as i18 from "../embed-components/input-field-addons/input-field-addons.component";
|
|
28
|
-
import * as i19 from "../embed-components/context-menu/context-menu.component";
|
|
29
|
-
import * as i20 from "@angular/common";
|
|
30
|
-
import * as i21 from "@angular/forms";
|
|
31
|
-
import * as i22 from "@angular/flex-layout/extended";
|
|
32
|
-
import * as i23 from "@angular/flex-layout/flex";
|
|
33
|
-
import * as i24 from "./zinput-container.pipe";
|
|
34
|
-
export class ZInputContainerComponent extends FieldBase {
|
|
35
|
-
constructor(componentService) {
|
|
36
|
-
super(componentService);
|
|
37
|
-
this.componentService = componentService;
|
|
38
|
-
this.inputFieldAddOn = { top: {}, left: {}, right: {}, bottom: {} };
|
|
39
|
-
this.ztext_type = ['number', 'numeric', 'date', 'email', 'zpassword', 'search', 'tel', 'text', 'url', 'currency'];
|
|
40
|
-
this.zselect_type = ['zuiselectmultiple', 'zuiselectmultiple_button', 'select'];
|
|
41
|
-
this.zdate_type = ['zdate', 'ztime', 'zdatetime', 'zshortdate', 'zuidatetime', 'zuitime'];
|
|
42
|
-
this.sfdatetimepicker_type = ['sfdatetimepicker'];
|
|
43
|
-
this.zpostselectinput_type = ['post_select_input', 'pre_select_input', 'zphone_countrycode'];
|
|
44
|
-
this.zcheckbox_type = ['checkbox'];
|
|
45
|
-
this.znumeric_type = ['znumeric'];
|
|
46
|
-
this.textarea_type = ['textarea'];
|
|
47
|
-
this.zupload_type = ['zupload'];
|
|
48
|
-
this.zimg_type = ['zimg'];
|
|
49
|
-
this.ztexteditor_type = ['ztexteditor'];
|
|
50
|
-
this.zcolorpicker_type = ['zcolorpicker'];
|
|
51
|
-
this.zradiobutton_type = ['zradiobutton'];
|
|
52
|
-
}
|
|
53
|
-
ngOnInit() {
|
|
54
|
-
super.initComponent().pipe(tap(() => {
|
|
55
|
-
this.setAddOnValue();
|
|
56
|
-
this.componentService.setEditMode(this);
|
|
57
|
-
this.data.zlayout = this.data.zlayout || (this.containerField ? this.containerField.zlayout : "row");
|
|
58
|
-
this.isLoading = false;
|
|
59
|
-
}))
|
|
60
|
-
.subscribe();
|
|
61
|
-
}
|
|
62
|
-
ngAfterViewInit() {
|
|
63
|
-
this.componentService.decrementComponentCounterForField(this.data);
|
|
64
|
-
}
|
|
65
|
-
getClass(form, data) {
|
|
66
|
-
return `style${data.FieldLayoutType} ${super.getClass(form, data)}`;
|
|
67
|
-
}
|
|
68
|
-
triggerContainerEvent(event) {
|
|
69
|
-
if (event) {
|
|
70
|
-
if (event.type === "setAddOnValue") {
|
|
71
|
-
this.setAddOnValue(event.data);
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
setAddOnValue(addOns) {
|
|
76
|
-
const inputFieldAddOnGroupValue = ZComponentHelper.getGroupValue(addOns || this.data.InputFieldAddOns, this.group);
|
|
77
|
-
const addOnValue = inputFieldAddOnGroupValue || addOns || this.data.InputFieldAddOns;
|
|
78
|
-
if (addOnValue && Array.isArray(addOnValue)) {
|
|
79
|
-
for (const key of Object.keys(this.inputFieldAddOn)) {
|
|
80
|
-
this.inputFieldAddOn[key] = addOnValue.find(i => i.Position === key);
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
}
|
|
85
|
-
ZInputContainerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: ZInputContainerComponent, deps: [{ token: i1.ZComponentService }], target: i0.ɵɵFactoryTarget.Component });
|
|
86
|
-
ZInputContainerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.3", type: ZInputContainerComponent, selector: "app-zinput-container", 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 {{componentProperties.label}}\r\n <ion-text *ngIf=\"(!!componentProperties.isRequiredField ? group[componentProperties.isRequiredField] : componentProperties.isRequired)\"\r\n color=\"danger\" class=\"required-icon\">*</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\" (triggerContainerEvent)=\"triggerContainerEvent($event)\">\r\n </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\" (triggerContainerEvent)=\"triggerContainerEvent($event)\">\r\n </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\" (triggerContainerEvent)=\"triggerContainerEvent($event)\">\r\n </app-zdatetime>\r\n <app-sfdatetimepicker *ngIf=\"sfdatetimepicker_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\" (triggerContainerEvent)=\"triggerContainerEvent($event)\">\r\n </app-sfdatetimepicker>\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 (triggerContainerEvent)=\"triggerContainerEvent($event)\">\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\" (triggerContainerEvent)=\"triggerContainerEvent($event)\">\r\n </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\" (triggerContainerEvent)=\"triggerContainerEvent($event)\">\r\n </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\" (triggerContainerEvent)=\"triggerContainerEvent($event)\">\r\n </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\" (triggerContainerEvent)=\"triggerContainerEvent($event)\">\r\n </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\" (triggerContainerEvent)=\"triggerContainerEvent($event)\">\r\n </app-zimg>\r\n <app-ztexteditor *ngIf=\"ztexteditor_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\" (triggerContainerEvent)=\"triggerContainerEvent($event)\">\r\n </app-ztexteditor>\r\n <app-zcolorpicker *ngIf=\"zcolorpicker_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\" (triggerContainerEvent)=\"triggerContainerEvent($event)\">\r\n </app-zcolorpicker>\r\n <app-zradiobutton *ngIf=\"zradiobutton_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\" (triggerContainerEvent)=\"triggerContainerEvent($event)\">\r\n </app-zradiobutton>\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\" [class.editMode]=\"(data['_EditMode'].value)\"\r\n #zinputcontainer>\r\n <kendo-label class=\"input-label e1tag-container-style1\" [for]=\"data.Name\" [text]=\"componentProperties.label\"\r\n *ngIf=\"data.ShowLabel\" [style]=\"componentProperties.containerStyle.style1\"\r\n [fxFlex]=\"componentProperties.labelFlexLayoutSize.all\" [fxFlex.xs]=\"componentProperties.labelFlexLayoutSize.xs\"\r\n [fxFlex.sm]=\"componentProperties.labelFlexLayoutSize.sm\" [fxFlex.md]=\"componentProperties.labelFlexLayoutSize.md\"\r\n [fxFlex.lg]=\"componentProperties.labelFlexLayoutSize.lg\" [fxFlex.xl]=\"componentProperties.labelFlexLayoutSize.xl\">\r\n <kendo-label *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'\" [addOn]=\"inputFieldAddOn.top\"\r\n [data]=\"data\" [group]=\"group\" [form]=\"form\" [containerField]=\"containerField\"\r\n [componentProperties]=\"componentProperties\" [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'\"\r\n [addOn]=\"inputFieldAddOn.left\" [data]=\"data\" [group]=\"group\" [form]=\"form\" [containerField]=\"containerField\"\r\n [componentProperties]=\"componentProperties\" [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\" (triggerContainerEvent)=\"triggerContainerEvent($event)\">\r\n </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\" (triggerContainerEvent)=\"triggerContainerEvent($event)\">\r\n </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\" (triggerContainerEvent)=\"triggerContainerEvent($event)\">\r\n </app-zdatetime> \r\n <app-sfdatetimepicker *ngIf=\"sfdatetimepicker_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\" (triggerContainerEvent)=\"triggerContainerEvent($event)\">\r\n </app-sfdatetimepicker>\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 (triggerContainerEvent)=\"triggerContainerEvent($event)\">\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\" (triggerContainerEvent)=\"triggerContainerEvent($event)\">\r\n </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\" (triggerContainerEvent)=\"triggerContainerEvent($event)\">\r\n </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\" (triggerContainerEvent)=\"triggerContainerEvent($event)\">\r\n </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\" (triggerContainerEvent)=\"triggerContainerEvent($event)\">\r\n </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\" (triggerContainerEvent)=\"triggerContainerEvent($event)\">\r\n </app-zimg>\r\n <app-ztexteditor *ngIf=\"ztexteditor_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\" (triggerContainerEvent)=\"triggerContainerEvent($event)\">\r\n </app-ztexteditor>\r\n <app-zcolorpicker *ngIf=\"zcolorpicker_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\" (triggerContainerEvent)=\"triggerContainerEvent($event)\">\r\n </app-zcolorpicker>\r\n <app-zradiobutton *ngIf=\"zradiobutton_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\" (triggerContainerEvent)=\"triggerContainerEvent($event)\">\r\n </app-zradiobutton>\r\n </div>\r\n <app-input-field-addons class=\"addon-right e1tag-container-style7\" [position]=\"'right'\"\r\n [addOn]=\"inputFieldAddOn.right\" [data]=\"data\" [group]=\"group\" [form]=\"form\" [containerField]=\"containerField\"\r\n [componentProperties]=\"componentProperties\" [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'\"\r\n [addOn]=\"inputFieldAddOn.bottom\" [data]=\"data\" [group]=\"group\" [form]=\"form\" [containerField]=\"containerField\"\r\n [componentProperties]=\"componentProperties\" [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 <app-context-menu [data]=\"data\" [group]=\"group\" [form]=\"form\" [target]=\"zinputcontainer\"></app-context-menu>\r\n</div>\r\n", styles: [".required-icon{color:var(--ion-color-danger);padding-left:3px;height:15px;position:relative;top:-1px}.desktop-input-container{padding:8px 0;min-height:calc(var(--input-field-height) + 5px)!important;margin:1px 0;display:inline-flex}.desktop-input-container .input-label{font-size:calc(var(--content-font-size) - 1px);display:flex;padding-left:20px}.desktop-input-container.editMode>.input-label{font-size:var(--content-font-size)}.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:500;margin-top:3px}.desktop-input-container.style1 .input-value-container{margin-left:0;padding-right:25px}.desktop-input-container.style1 .input-label{margin:3px 0}.desktop-input-container.style2 .input-value-container{width:100%;margin-top:3px;padding:0 25px 0 20px}.desktop-input-container.style2 .input-label{margin-top:0}.desktop-input-container .addon-right{margin:auto 0;padding-bottom:4px}.desktop-input-container.editMode.style1 .input-label{margin:6px 0 0}.medium-padding.desktop-input-container .input-label{padding-left:10px}.medium-padding.desktop-input-container.style2 .input-value-container{padding:0 10px}.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.SfdatetimepickerComponent, selector: "app-sfdatetimepicker" }, { type: i7.ZpostselectinputComponent, selector: "app-zpostselectinput" }, { type: i8.ZcheckboxComponent, selector: "app-zcheckbox" }, { type: i9.ZnumericComponent, selector: "app-znumeric" }, { type: i10.ZtextareaComponent, selector: "app-ztextarea" }, { type: i11.ZuploadComponent, selector: "app-zupload" }, { type: i12.ZimgComponent, selector: "app-zimg" }, { type: i13.ZtexteditorComponent, selector: "app-ztexteditor" }, { type: i14.ZcolorpickerComponent, selector: "app-zcolorpicker" }, { type: i15.ZradiobuttonComponent, selector: "app-zradiobutton", inputs: ["data", "group", "form"] }, { type: i16.InputErrorMessageComponent, selector: "app-error" }, { type: i17.LabelComponent, selector: "kendo-label", inputs: ["text", "for", "optional"], exportAs: ["kendoLabel"] }, { type: i18.InputFieldAddOnsComponent, selector: "app-input-field-addons", inputs: ["position", "addOn"] }, { type: i19.ContextMenuComponent, selector: "app-context-menu", inputs: ["target", "selectedData"] }], directives: [{ type: i20.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i21.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i21.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i20.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i22.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: i23.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: i23.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: i23.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": i20.AsyncPipe, "inputText": i24.ZInputParser } });
|
|
87
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: ZInputContainerComponent, decorators: [{
|
|
88
|
-
type: Component,
|
|
89
|
-
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 {{componentProperties.label}}\r\n <ion-text *ngIf=\"(!!componentProperties.isRequiredField ? group[componentProperties.isRequiredField] : componentProperties.isRequired)\"\r\n color=\"danger\" class=\"required-icon\">*</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\" (triggerContainerEvent)=\"triggerContainerEvent($event)\">\r\n </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\" (triggerContainerEvent)=\"triggerContainerEvent($event)\">\r\n </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\" (triggerContainerEvent)=\"triggerContainerEvent($event)\">\r\n </app-zdatetime>\r\n <app-sfdatetimepicker *ngIf=\"sfdatetimepicker_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\" (triggerContainerEvent)=\"triggerContainerEvent($event)\">\r\n </app-sfdatetimepicker>\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 (triggerContainerEvent)=\"triggerContainerEvent($event)\">\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\" (triggerContainerEvent)=\"triggerContainerEvent($event)\">\r\n </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\" (triggerContainerEvent)=\"triggerContainerEvent($event)\">\r\n </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\" (triggerContainerEvent)=\"triggerContainerEvent($event)\">\r\n </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\" (triggerContainerEvent)=\"triggerContainerEvent($event)\">\r\n </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\" (triggerContainerEvent)=\"triggerContainerEvent($event)\">\r\n </app-zimg>\r\n <app-ztexteditor *ngIf=\"ztexteditor_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\" (triggerContainerEvent)=\"triggerContainerEvent($event)\">\r\n </app-ztexteditor>\r\n <app-zcolorpicker *ngIf=\"zcolorpicker_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\" (triggerContainerEvent)=\"triggerContainerEvent($event)\">\r\n </app-zcolorpicker>\r\n <app-zradiobutton *ngIf=\"zradiobutton_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\" (triggerContainerEvent)=\"triggerContainerEvent($event)\">\r\n </app-zradiobutton>\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\" [class.editMode]=\"(data['_EditMode'].value)\"\r\n #zinputcontainer>\r\n <kendo-label class=\"input-label e1tag-container-style1\" [for]=\"data.Name\" [text]=\"componentProperties.label\"\r\n *ngIf=\"data.ShowLabel\" [style]=\"componentProperties.containerStyle.style1\"\r\n [fxFlex]=\"componentProperties.labelFlexLayoutSize.all\" [fxFlex.xs]=\"componentProperties.labelFlexLayoutSize.xs\"\r\n [fxFlex.sm]=\"componentProperties.labelFlexLayoutSize.sm\" [fxFlex.md]=\"componentProperties.labelFlexLayoutSize.md\"\r\n [fxFlex.lg]=\"componentProperties.labelFlexLayoutSize.lg\" [fxFlex.xl]=\"componentProperties.labelFlexLayoutSize.xl\">\r\n <kendo-label *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'\" [addOn]=\"inputFieldAddOn.top\"\r\n [data]=\"data\" [group]=\"group\" [form]=\"form\" [containerField]=\"containerField\"\r\n [componentProperties]=\"componentProperties\" [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'\"\r\n [addOn]=\"inputFieldAddOn.left\" [data]=\"data\" [group]=\"group\" [form]=\"form\" [containerField]=\"containerField\"\r\n [componentProperties]=\"componentProperties\" [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\" (triggerContainerEvent)=\"triggerContainerEvent($event)\">\r\n </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\" (triggerContainerEvent)=\"triggerContainerEvent($event)\">\r\n </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\" (triggerContainerEvent)=\"triggerContainerEvent($event)\">\r\n </app-zdatetime> \r\n <app-sfdatetimepicker *ngIf=\"sfdatetimepicker_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\" (triggerContainerEvent)=\"triggerContainerEvent($event)\">\r\n </app-sfdatetimepicker>\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 (triggerContainerEvent)=\"triggerContainerEvent($event)\">\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\" (triggerContainerEvent)=\"triggerContainerEvent($event)\">\r\n </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\" (triggerContainerEvent)=\"triggerContainerEvent($event)\">\r\n </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\" (triggerContainerEvent)=\"triggerContainerEvent($event)\">\r\n </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\" (triggerContainerEvent)=\"triggerContainerEvent($event)\">\r\n </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\" (triggerContainerEvent)=\"triggerContainerEvent($event)\">\r\n </app-zimg>\r\n <app-ztexteditor *ngIf=\"ztexteditor_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\" (triggerContainerEvent)=\"triggerContainerEvent($event)\">\r\n </app-ztexteditor>\r\n <app-zcolorpicker *ngIf=\"zcolorpicker_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\" (triggerContainerEvent)=\"triggerContainerEvent($event)\">\r\n </app-zcolorpicker>\r\n <app-zradiobutton *ngIf=\"zradiobutton_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\" (triggerContainerEvent)=\"triggerContainerEvent($event)\">\r\n </app-zradiobutton>\r\n </div>\r\n <app-input-field-addons class=\"addon-right e1tag-container-style7\" [position]=\"'right'\"\r\n [addOn]=\"inputFieldAddOn.right\" [data]=\"data\" [group]=\"group\" [form]=\"form\" [containerField]=\"containerField\"\r\n [componentProperties]=\"componentProperties\" [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'\"\r\n [addOn]=\"inputFieldAddOn.bottom\" [data]=\"data\" [group]=\"group\" [form]=\"form\" [containerField]=\"containerField\"\r\n [componentProperties]=\"componentProperties\" [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 <app-context-menu [data]=\"data\" [group]=\"group\" [form]=\"form\" [target]=\"zinputcontainer\"></app-context-menu>\r\n</div>\r\n", styles: [".required-icon{color:var(--ion-color-danger);padding-left:3px;height:15px;position:relative;top:-1px}.desktop-input-container{padding:8px 0;min-height:calc(var(--input-field-height) + 5px)!important;margin:1px 0;display:inline-flex}.desktop-input-container .input-label{font-size:calc(var(--content-font-size) - 1px);display:flex;padding-left:20px}.desktop-input-container.editMode>.input-label{font-size:var(--content-font-size)}.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:500;margin-top:3px}.desktop-input-container.style1 .input-value-container{margin-left:0;padding-right:25px}.desktop-input-container.style1 .input-label{margin:3px 0}.desktop-input-container.style2 .input-value-container{width:100%;margin-top:3px;padding:0 25px 0 20px}.desktop-input-container.style2 .input-label{margin-top:0}.desktop-input-container .addon-right{margin:auto 0;padding-bottom:4px}.desktop-input-container.editMode.style1 .input-label{margin:6px 0 0}.medium-padding.desktop-input-container .input-label{padding-left:10px}.medium-padding.desktop-input-container.style2 .input-value-container{padding:0 10px}.mobile-input-container .input-value-field{width:100%}.tooltipsinfo-icon{padding-left:10px;color:var(--ion-color-primary-tint)}\n"] }]
|
|
90
|
-
}], ctorParameters: function () { return [{ type: i1.ZComponentService }]; } });
|
|
91
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiemlucHV0LWNvbnRhaW5lci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tbWhnbG9iYWwtZHluYW1pY2Zvcm0vc3JjL2xpYi96aW5wdXQtY29udGFpbmVyL3ppbnB1dC1jb250YWluZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbW1oZ2xvYmFsLWR5bmFtaWNmb3JtL3NyYy9saWIvemlucHV0LWNvbnRhaW5lci96aW5wdXQtY29udGFpbmVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLCtCQUErQjtBQUMvQixPQUFPLEVBQUUsU0FBUyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBR2xELDZCQUE2QjtBQUU3Qiw4QkFBOEI7QUFDOUIsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUUzQiwyQ0FBMkM7QUFDM0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBRTlELE9BQU8sRUFBYyxnQkFBZ0IsRUFBaUMsTUFBTSxpQkFBaUIsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFTOUYsTUFBTSxPQUFPLHdCQUF5QixTQUFRLFNBQVM7SUFpQnJELFlBQ1MsZ0JBQW1DO1FBRTFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBRmpCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBbUI7UUFqQnJDLG9CQUFlLEdBQUcsRUFBRSxHQUFHLEVBQUUsRUFBRSxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxNQUFNLEVBQUUsRUFBRSxFQUFFLENBQUM7UUFFdEQsZUFBVSxHQUFHLENBQUMsUUFBUSxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLFdBQVcsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsVUFBVSxDQUFDLENBQUM7UUFDN0csaUJBQVksR0FBRyxDQUFDLG1CQUFtQixFQUFFLDBCQUEwQixFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQzNFLGVBQVUsR0FBRyxDQUFDLE9BQU8sRUFBRSxPQUFPLEVBQUUsV0FBVyxFQUFFLFlBQVksRUFBRSxhQUFhLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFDckYsMEJBQXFCLEdBQUcsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBQzdDLDBCQUFxQixHQUFHLENBQUMsbUJBQW1CLEVBQUUsa0JBQWtCLEVBQUUsb0JBQW9CLENBQUMsQ0FBQztRQUN4RixtQkFBYyxHQUFHLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDOUIsa0JBQWEsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQzdCLGtCQUFhLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUM3QixpQkFBWSxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDM0IsY0FBUyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDckIscUJBQWdCLEdBQUcsQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUNuQyxzQkFBaUIsR0FBRyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ3JDLHNCQUFpQixHQUFHLENBQUMsY0FBYyxDQUFDLENBQUM7SUFNckQsQ0FBQztJQUVELFFBQVE7UUFDTixLQUFLLENBQUMsYUFBYSxFQUFFLENBQUMsSUFBSSxDQUN4QixHQUFHLENBQUMsR0FBRyxFQUFFO1lBQ1AsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1lBQ3JCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDeEMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDckcsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7UUFDekIsQ0FBQyxDQUFDLENBQUM7YUFDRixTQUFTLEVBQUUsQ0FBQztJQUNqQixDQUFDO0lBRUQsZUFBZTtRQUNiLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxpQ0FBaUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDckUsQ0FBQztJQUVNLFFBQVEsQ0FBQyxJQUFlLEVBQUUsSUFBWTtRQUMzQyxPQUFPLFFBQVEsSUFBSSxDQUFDLGVBQWUsSUFBSSxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsRUFBRSxDQUFDO0lBQ3RFLENBQUM7SUFFTSxxQkFBcUIsQ0FBQyxLQUE0QjtRQUN2RCxJQUFJLEtBQUssRUFBRTtZQUNULElBQUksS0FBSyxDQUFDLElBQUksS0FBSyxlQUFlLEVBQUU7Z0JBQ2xDLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO2FBQ2hDO1NBQ0Y7SUFDSCxDQUFDO0lBRU8sYUFBYSxDQUFDLE1BQVk7UUFDaEMsTUFBTSx5QkFBeUIsR0FBRyxnQkFBZ0IsQ0FBQyxhQUFhLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsZ0JBQXVCLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzFILE1BQU0sVUFBVSxHQUFHLHlCQUF5QixJQUFJLE1BQU0sSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDO1FBQ3JGLElBQUksVUFBVSxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLEVBQUU7WUFDM0MsS0FBSyxNQUFNLEdBQUcsSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsRUFBRTtnQkFDbkQsSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsR0FBRyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFFBQVEsS0FBSyxHQUFHLENBQUMsQ0FBQzthQUN0RTtTQUNGO0lBQ0gsQ0FBQzs7cUhBMURVLHdCQUF3Qjt5R0FBeEIsd0JBQXdCLG1GQ3JCckMsMDJoQkFpTEE7MkZENUphLHdCQUF3QjtrQkFOcEMsU0FBUzsrQkFDRSxzQkFBc0IiLCJzb3VyY2VzQ29udGVudCI6WyIvKioqKioqKioqKiBBbmd1bGFyICoqKioqKioqKiovXHJcbmltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgRm9ybUdyb3VwIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XHJcblxyXG4vKioqKioqKioqKiBJb25pYyAqKioqKioqKioqL1xyXG5cclxuLyoqKioqKioqKiogUGx1Z2luICoqKioqKioqKiovXHJcbmltcG9ydCB7IHRhcCB9IGZyb20gXCJyeGpzXCI7XHJcblxyXG4vKioqKioqKioqKiBDb21wb25lbnQgJiBTZXJ2aWNlICoqKioqKioqKiovXHJcbmltcG9ydCB7IEZpZWxkQmFzZSB9IGZyb20gXCIuLi9jb21wb25lbnRzL2ZpZWxkYmFzZS5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgWkNvbXBvbmVudFNlcnZpY2UgfSBmcm9tIFwiLi4vc2VydmljZXMvemNvbXBvbmVudC5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IFpDb21wb25lbnQsIFpDb21wb25lbnRIZWxwZXIsIFpDb21wb25lbnRPdXRwdXRFdmVudCwgWkZpZWxkIH0gZnJvbSAnbW1oZ2xvYmFsLXpjb3JlJztcclxuXHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogXCJhcHAtemlucHV0LWNvbnRhaW5lclwiLFxyXG4gIHRlbXBsYXRlVXJsOiBcIi4vemlucHV0LWNvbnRhaW5lci5jb21wb25lbnQuaHRtbFwiLFxyXG4gIHN0eWxlVXJsczogW1wiLi96aW5wdXQtY29udGFpbmVyLmNvbXBvbmVudC5zY3NzXCJdXHJcbn0pXHJcblxyXG5leHBvcnQgY2xhc3MgWklucHV0Q29udGFpbmVyQ29tcG9uZW50IGV4dGVuZHMgRmllbGRCYXNlIGltcGxlbWVudHMgWkNvbXBvbmVudCwgT25Jbml0IHtcclxuICBwdWJsaWMgaW5wdXRGaWVsZEFkZE9uID0geyB0b3A6IHt9LCBsZWZ0OiB7fSwgcmlnaHQ6IHt9LCBib3R0b206IHt9IH07XHJcblxyXG4gIHB1YmxpYyByZWFkb25seSB6dGV4dF90eXBlID0gWydudW1iZXInLCAnbnVtZXJpYycsICdkYXRlJywgJ2VtYWlsJywgJ3pwYXNzd29yZCcsICdzZWFyY2gnLCAndGVsJywgJ3RleHQnLCAndXJsJywgJ2N1cnJlbmN5J107XHJcbiAgcHVibGljIHJlYWRvbmx5IHpzZWxlY3RfdHlwZSA9IFsnenVpc2VsZWN0bXVsdGlwbGUnLCAnenVpc2VsZWN0bXVsdGlwbGVfYnV0dG9uJywgJ3NlbGVjdCddO1xyXG4gIHB1YmxpYyByZWFkb25seSB6ZGF0ZV90eXBlID0gWyd6ZGF0ZScsICd6dGltZScsICd6ZGF0ZXRpbWUnLCAnenNob3J0ZGF0ZScsICd6dWlkYXRldGltZScsICd6dWl0aW1lJ107XHJcbiAgcHVibGljIHJlYWRvbmx5IHNmZGF0ZXRpbWVwaWNrZXJfdHlwZSA9IFsnc2ZkYXRldGltZXBpY2tlciddO1xyXG4gIHB1YmxpYyByZWFkb25seSB6cG9zdHNlbGVjdGlucHV0X3R5cGUgPSBbJ3Bvc3Rfc2VsZWN0X2lucHV0JywgJ3ByZV9zZWxlY3RfaW5wdXQnLCAnenBob25lX2NvdW50cnljb2RlJ107XHJcbiAgcHVibGljIHJlYWRvbmx5IHpjaGVja2JveF90eXBlID0gWydjaGVja2JveCddO1xyXG4gIHB1YmxpYyByZWFkb25seSB6bnVtZXJpY190eXBlID0gWyd6bnVtZXJpYyddO1xyXG4gIHB1YmxpYyByZWFkb25seSB0ZXh0YXJlYV90eXBlID0gWyd0ZXh0YXJlYSddO1xyXG4gIHB1YmxpYyByZWFkb25seSB6dXBsb2FkX3R5cGUgPSBbJ3p1cGxvYWQnXTtcclxuICBwdWJsaWMgcmVhZG9ubHkgemltZ190eXBlID0gWyd6aW1nJ107XHJcbiAgcHVibGljIHJlYWRvbmx5IHp0ZXh0ZWRpdG9yX3R5cGUgPSBbJ3p0ZXh0ZWRpdG9yJ107XHJcbiAgcHVibGljIHJlYWRvbmx5IHpjb2xvcnBpY2tlcl90eXBlID0gWyd6Y29sb3JwaWNrZXInXTtcclxuICBwdWJsaWMgcmVhZG9ubHkgenJhZGlvYnV0dG9uX3R5cGUgPSBbJ3pyYWRpb2J1dHRvbiddO1xyXG4gIFxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHVibGljIGNvbXBvbmVudFNlcnZpY2U6IFpDb21wb25lbnRTZXJ2aWNlXHJcbiAgKSB7XHJcbiAgICBzdXBlcihjb21wb25lbnRTZXJ2aWNlKTtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgc3VwZXIuaW5pdENvbXBvbmVudCgpLnBpcGUoXHJcbiAgICAgIHRhcCgoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5zZXRBZGRPblZhbHVlKCk7XHJcbiAgICAgICAgdGhpcy5jb21wb25lbnRTZXJ2aWNlLnNldEVkaXRNb2RlKHRoaXMpO1xyXG4gICAgICAgIHRoaXMuZGF0YS56bGF5b3V0ID0gdGhpcy5kYXRhLnpsYXlvdXQgfHwgKHRoaXMuY29udGFpbmVyRmllbGQgPyB0aGlzLmNvbnRhaW5lckZpZWxkLnpsYXlvdXQgOiBcInJvd1wiKTtcclxuICAgICAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICB9KSlcclxuICAgICAgLnN1YnNjcmliZSgpO1xyXG4gIH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCkge1xyXG4gICAgdGhpcy5jb21wb25lbnRTZXJ2aWNlLmRlY3JlbWVudENvbXBvbmVudENvdW50ZXJGb3JGaWVsZCh0aGlzLmRhdGEpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldENsYXNzKGZvcm06IEZvcm1Hcm91cCwgZGF0YTogWkZpZWxkKSB7XHJcbiAgICByZXR1cm4gYHN0eWxlJHtkYXRhLkZpZWxkTGF5b3V0VHlwZX0gJHtzdXBlci5nZXRDbGFzcyhmb3JtLCBkYXRhKX1gO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHRyaWdnZXJDb250YWluZXJFdmVudChldmVudDogWkNvbXBvbmVudE91dHB1dEV2ZW50KSB7XHJcbiAgICBpZiAoZXZlbnQpIHtcclxuICAgICAgaWYgKGV2ZW50LnR5cGUgPT09IFwic2V0QWRkT25WYWx1ZVwiKSB7XHJcbiAgICAgICAgdGhpcy5zZXRBZGRPblZhbHVlKGV2ZW50LmRhdGEpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHNldEFkZE9uVmFsdWUoYWRkT25zPzogYW55KSB7XHJcbiAgICBjb25zdCBpbnB1dEZpZWxkQWRkT25Hcm91cFZhbHVlID0gWkNvbXBvbmVudEhlbHBlci5nZXRHcm91cFZhbHVlKGFkZE9ucyB8fCB0aGlzLmRhdGEuSW5wdXRGaWVsZEFkZE9ucyBhcyBhbnksIHRoaXMuZ3JvdXApO1xyXG4gICAgY29uc3QgYWRkT25WYWx1ZSA9IGlucHV0RmllbGRBZGRPbkdyb3VwVmFsdWUgfHwgYWRkT25zIHx8IHRoaXMuZGF0YS5JbnB1dEZpZWxkQWRkT25zO1xyXG4gICAgaWYgKGFkZE9uVmFsdWUgJiYgQXJyYXkuaXNBcnJheShhZGRPblZhbHVlKSkge1xyXG4gICAgICBmb3IgKGNvbnN0IGtleSBvZiBPYmplY3Qua2V5cyh0aGlzLmlucHV0RmllbGRBZGRPbikpIHtcclxuICAgICAgICB0aGlzLmlucHV0RmllbGRBZGRPbltrZXldID0gYWRkT25WYWx1ZS5maW5kKGkgPT4gaS5Qb3NpdGlvbiA9PT0ga2V5KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwibW9iaWxlLWlucHV0LWNvbnRhaW5lciBlMXRhZy1jb250YWluZXItc3R5bGVcIiAqbmdJZj1cImlzTW9iaWxlU2NyZWVuKCkgJiYgIWlzTG9hZGluZ1wiXHJcbiAgICAgW3N0eWxlXT1cImNvbXBvbmVudFByb3BlcnRpZXMuY29udGFpbmVyU3R5bGUuc3R5bGVcIj5cclxuICA8aW9uLWl0ZW0gW2Zvcm1Hcm91cF09XCJmb3JtXCIgY2xhc3M9XCJlMXRhZy1jb250YWluZXItc3R5bGUxXCJcclxuICAgICAgICAgICAgKm5nSWY9XCIoISFjb21wb25lbnRQcm9wZXJ0aWVzLmlzVmlzaWJsZUZpZWxkID8gZ3JvdXBbY29tcG9uZW50UHJvcGVydGllcy5pc1Zpc2libGVGaWVsZF0gOiBjb21wb25lbnRQcm9wZXJ0aWVzLmlzVmlzaWJsZSlcIlxyXG4gICAgICAgICAgICBbbmdDbGFzc109XCJnZXRJb25fSW52YWxpZENsYXNzKGZvcm0sIGRhdGEpXCIgW3N0eWxlXT1cImNvbXBvbmVudFByb3BlcnRpZXMuY29udGFpbmVyU3R5bGUuc3R5bGUxXCI+XHJcbiAgICA8aW9uLWxhYmVsIFthdHRyLmZvcl09XCJkYXRhLlZhbHVlXCIgY2xhc3M9XCJpbnB1dC1sYWJlbCBlMXRhZy1jb250YWluZXItc3R5bGUyXCJcclxuICAgICAgICAgICAgICAgKm5nSWY9XCJkYXRhLlNob3dMYWJlbCA9PT0gdW5kZWZpbmVkIHx8IGRhdGEuU2hvd0xhYmVsXCJcclxuICAgICAgICAgICAgICAgW3Bvc2l0aW9uXT1cImRhdGEuTGFiZWxQb3NpdGlvbiA/IGRhdGEuTGFiZWxQb3NpdGlvbiA6ICdzdGFja2VkJ1wiXHJcbiAgICAgICAgICAgICAgIFtzdHlsZV09XCJjb21wb25lbnRQcm9wZXJ0aWVzLmNvbnRhaW5lclN0eWxlLnN0eWxlMlwiPlxyXG4gICAgICB7e2NvbXBvbmVudFByb3BlcnRpZXMubGFiZWx9fVxyXG4gICAgICA8aW9uLXRleHQgKm5nSWY9XCIoISFjb21wb25lbnRQcm9wZXJ0aWVzLmlzUmVxdWlyZWRGaWVsZCA/IGdyb3VwW2NvbXBvbmVudFByb3BlcnRpZXMuaXNSZXF1aXJlZEZpZWxkXSA6IGNvbXBvbmVudFByb3BlcnRpZXMuaXNSZXF1aXJlZClcIlxyXG4gICAgICAgICAgICAgICAgY29sb3I9XCJkYW5nZXJcIiBjbGFzcz1cInJlcXVpcmVkLWljb25cIj4qPC9pb24tdGV4dD5cclxuICAgIDwvaW9uLWxhYmVsPlxyXG4gICAgPGRpdiBjbGFzcz1cImlucHV0LXZhbHVlLWZpZWxkXCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJpbnB1dC1maWVsZHMtb3B0aW9uc1wiPlxyXG4gICAgICAgIDxhcHAtenRleHQgKm5nSWY9XCJ6dGV4dF90eXBlLmluY2x1ZGVzKGRhdGEuVHlwZSlcIiBbZGF0YV09XCJkYXRhXCIgW2dyb3VwXT1cImdyb3VwXCIgW2Zvcm1dPVwiZm9ybVwiXHJcbiAgICAgICAgICAgICAgICAgICBbY29udGFpbmVyRmllbGRdPVwiY29udGFpbmVyRmllbGRcIiBbY29tcG9uZW50UHJvcGVydGllc109XCJjb21wb25lbnRQcm9wZXJ0aWVzXCIgY2xhc3M9XCJlMXRhZy1jb250YWluZXItc3R5bGU1XCJcclxuICAgICAgICAgICAgICAgICAgIFtzdHlsZV09XCJjb21wb25lbnRQcm9wZXJ0aWVzLmNvbnRhaW5lclN0eWxlLnN0eWxlNVwiICh0cmlnZ2VyQ29udGFpbmVyRXZlbnQpPVwidHJpZ2dlckNvbnRhaW5lckV2ZW50KCRldmVudClcIj5cclxuICAgICAgICA8L2FwcC16dGV4dD5cclxuICAgICAgICA8YXBwLXpzZWxlY3RtdWx0aXBsZSAqbmdJZj1cInpzZWxlY3RfdHlwZS5pbmNsdWRlcyhkYXRhLlR5cGUpXCIgW2RhdGFdPVwiZGF0YVwiIFtncm91cF09XCJncm91cFwiIFtmb3JtXT1cImZvcm1cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjb250YWluZXJGaWVsZF09XCJjb250YWluZXJGaWVsZFwiIFtjb21wb25lbnRQcm9wZXJ0aWVzXT1cImNvbXBvbmVudFByb3BlcnRpZXNcIiBjbGFzcz1cImUxdGFnLWNvbnRhaW5lci1zdHlsZTVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzdHlsZV09XCJjb21wb25lbnRQcm9wZXJ0aWVzLmNvbnRhaW5lclN0eWxlLnN0eWxlNVwiICh0cmlnZ2VyQ29udGFpbmVyRXZlbnQpPVwidHJpZ2dlckNvbnRhaW5lckV2ZW50KCRldmVudClcIj5cclxuICAgICAgICA8L2FwcC16c2VsZWN0bXVsdGlwbGU+XHJcbiAgICAgICAgPGFwcC16ZGF0ZXRpbWUgKm5nSWY9XCJ6ZGF0ZV90eXBlLmluY2x1ZGVzKGRhdGEuVHlwZSlcIiBbZGF0YV09XCJkYXRhXCIgW2dyb3VwXT1cImdyb3VwXCIgW2Zvcm1dPVwiZm9ybVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgW2NvbnRhaW5lckZpZWxkXT1cImNvbnRhaW5lckZpZWxkXCIgW2NvbXBvbmVudFByb3BlcnRpZXNdPVwiY29tcG9uZW50UHJvcGVydGllc1wiIGNsYXNzPVwiZTF0YWctY29udGFpbmVyLXN0eWxlNVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgW3N0eWxlXT1cImNvbXBvbmVudFByb3BlcnRpZXMuY29udGFpbmVyU3R5bGUuc3R5bGU1XCIgKHRyaWdnZXJDb250YWluZXJFdmVudCk9XCJ0cmlnZ2VyQ29udGFpbmVyRXZlbnQoJGV2ZW50KVwiPlxyXG4gICAgICAgIDwvYXBwLXpkYXRldGltZT5cclxuICAgICAgICA8YXBwLXNmZGF0ZXRpbWVwaWNrZXIgKm5nSWY9XCJzZmRhdGV0aW1lcGlja2VyX3R5cGUuaW5jbHVkZXMoZGF0YS5UeXBlKVwiIFtkYXRhXT1cImRhdGFcIiBbZ3JvdXBdPVwiZ3JvdXBcIiBbZm9ybV09XCJmb3JtXCJcclxuICAgICAgICAgICAgICAgICAgICAgICBbY29udGFpbmVyRmllbGRdPVwiY29udGFpbmVyRmllbGRcIiBbY29tcG9uZW50UHJvcGVydGllc109XCJjb21wb25lbnRQcm9wZXJ0aWVzXCIgY2xhc3M9XCJlMXRhZy1jb250YWluZXItc3R5bGU1XCJcclxuICAgICAgICAgICAgICAgICAgICAgICBbc3R5bGVdPVwiY29tcG9uZW50UHJvcGVydGllcy5jb250YWluZXJTdHlsZS5zdHlsZTVcIiAodHJpZ2dlckNvbnRhaW5lckV2ZW50KT1cInRyaWdnZXJDb250YWluZXJFdmVudCgkZXZlbnQpXCI+XHJcbiAgICAgICAgPC9hcHAtc2ZkYXRldGltZXBpY2tlcj5cclxuICAgICAgICA8YXBwLXpwb3N0c2VsZWN0aW5wdXQgKm5nSWY9XCJ6cG9zdHNlbGVjdGlucHV0X3R5cGUuaW5jbHVkZXMoZGF0YS5UeXBlKVwiIFtkYXRhXT1cImRhdGFcIiBbZ3JvdXBdPVwiZ3JvdXBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZm9ybV09XCJmb3JtXCIgW2NvbnRhaW5lckZpZWxkXT1cImNvbnRhaW5lckZpZWxkXCIgW2NvbXBvbmVudFByb3BlcnRpZXNdPVwiY29tcG9uZW50UHJvcGVydGllc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZTF0YWctY29udGFpbmVyLXN0eWxlNVwiIFtzdHlsZV09XCJjb21wb25lbnRQcm9wZXJ0aWVzLmNvbnRhaW5lclN0eWxlLnN0eWxlNVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICh0cmlnZ2VyQ29udGFpbmVyRXZlbnQpPVwidHJpZ2dlckNvbnRhaW5lckV2ZW50KCRldmVudClcIj5cclxuICAgICAgICA8L2FwcC16cG9zdHNlbGVjdGlucHV0PlxyXG4gICAgICAgIDxhcHAtemNoZWNrYm94ICpuZ0lmPVwiemNoZWNrYm94X3R5cGUuaW5jbHVkZXMoZGF0YS5UeXBlKVwiIFtkYXRhXT1cImRhdGFcIiBbZ3JvdXBdPVwiZ3JvdXBcIiBbZm9ybV09XCJmb3JtXCJcclxuICAgICAgICAgICAgICAgICAgICAgICBbY29udGFpbmVyRmllbGRdPVwiY29udGFpbmVyRmllbGRcIiBbY29tcG9uZW50UHJvcGVydGllc109XCJjb21wb25lbnRQcm9wZXJ0aWVzXCIgY2xhc3M9XCJlMXRhZy1jb250YWluZXItc3R5bGU1XCJcclxuICAgICAgICAgICAgICAgICAgICAgICBbc3R5bGVdPVwiY29tcG9uZW50UHJvcGVydGllcy5jb250YWluZXJTdHlsZS5zdHlsZTVcIiAodHJpZ2dlckNvbnRhaW5lckV2ZW50KT1cInRyaWdnZXJDb250YWluZXJFdmVudCgkZXZlbnQpXCI+XHJcbiAgICAgICAgPC9hcHAtemNoZWNrYm94PlxyXG4gICAgICAgIDxhcHAtem51bWVyaWMgKm5nSWY9XCJ6bnVtZXJpY190eXBlLmluY2x1ZGVzKGRhdGEuVHlwZSlcIiBbZGF0YV09XCJkYXRhXCIgW2dyb3VwXT1cImdyb3VwXCIgW2Zvcm1dPVwiZm9ybVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICBbY29udGFpbmVyRmllbGRdPVwiY29udGFpbmVyRmllbGRcIiBbY29tcG9uZW50UHJvcGVydGllc109XCJjb21wb25lbnRQcm9wZXJ0aWVzXCIgY2xhc3M9XCJlMXRhZy1jb250YWluZXItc3R5bGU1XCJcclxuICAgICAgICAgICAgICAgICAgICAgIFtzdHlsZV09XCJjb21wb25lbnRQcm9wZXJ0aWVzLmNvbnRhaW5lclN0eWxlLnN0eWxlNVwiICh0cmlnZ2VyQ29udGFpbmVyRXZlbnQpPVwidHJpZ2dlckNvbnRhaW5lckV2ZW50KCRldmVudClcIj5cclxuICAgICAgICA8L2FwcC16bnVtZXJpYz5cclxuICAgICAgICA8YXBwLXp0ZXh0YXJlYSAqbmdJZj1cInRleHRhcmVhX3R5cGUuaW5jbHVkZXMoZGF0YS5UeXBlKVwiIFtkYXRhXT1cImRhdGFcIiBbZ3JvdXBdPVwiZ3JvdXBcIiBbZm9ybV09XCJmb3JtXCJcclxuICAgICAgICAgICAgICAgICAgICAgICBbY29udGFpbmVyRmllbGRdPVwiY29udGFpbmVyRmllbGRcIiBbY29tcG9uZW50UHJvcGVydGllc109XCJjb21wb25lbnRQcm9wZXJ0aWVzXCIgY2xhc3M9XCJlMXRhZy1jb250YWluZXItc3R5bGU1XCJcclxuICAgICAgICAgICAgICAgICAgICAgICBbc3R5bGVdPVwiY29tcG9uZW50UHJvcGVydGllcy5jb250YWluZXJTdHlsZS5zdHlsZTVcIiAodHJpZ2dlckNvbnRhaW5lckV2ZW50KT1cInRyaWdnZXJDb250YWluZXJFdmVudCgkZXZlbnQpXCI+XHJcbiAgICAgICAgPC9hcHAtenRleHRhcmVhPlxyXG4gICAgICAgIDxhcHAtenVwbG9hZCAqbmdJZj1cInp1cGxvYWRfdHlwZS5pbmNsdWRlcyhkYXRhLlR5cGUpXCIgW2RhdGFdPVwiZGF0YVwiIFtncm91cF09XCJncm91cFwiIFtmb3JtXT1cImZvcm1cIlxyXG4gICAgICAgICAgICAgICAgICAgICBbY29udGFpbmVyRmllbGRdPVwiY29udGFpbmVyRmllbGRcIiBbY29tcG9uZW50UHJvcGVydGllc109XCJjb21wb25lbnRQcm9wZXJ0aWVzXCIgY2xhc3M9XCJlMXRhZy1jb250YWluZXItc3R5bGU1XCJcclxuICAgICAgICAgICAgICAgICAgICAgW3N0eWxlXT1cImNvbXBvbmVudFByb3BlcnRpZXMuY29udGFpbmVyU3R5bGUuc3R5bGU1XCIgKHRyaWdnZXJDb250YWluZXJFdmVudCk9XCJ0cmlnZ2VyQ29udGFpbmVyRXZlbnQoJGV2ZW50KVwiPlxyXG4gICAgICAgIDwvYXBwLXp1cGxvYWQ+XHJcbiAgICAgICAgPGFwcC16aW1nICpuZ0lmPVwiemltZ190eXBlLmluY2x1ZGVzKGRhdGEuVHlwZSlcIiBbZGF0YV09XCJkYXRhXCIgW2dyb3VwXT1cImdyb3VwXCIgW2Zvcm1dPVwiZm9ybVwiXHJcbiAgICAgICAgICAgICAgICAgIFtjb250YWluZXJGaWVsZF09XCJjb250YWluZXJGaWVsZFwiIFtjb21wb25lbnRQcm9wZXJ0aWVzXT1cImNvbXBvbmVudFByb3BlcnRpZXNcIiBjbGFzcz1cImUxdGFnLWNvbnRhaW5lci1zdHlsZTVcIlxyXG4gICAgICAgICAgICAgICAgICBbc3R5bGVdPVwiY29tcG9uZW50UHJvcGVydGllcy5jb250YWluZXJTdHlsZS5zdHlsZTVcIiAodHJpZ2dlckNvbnRhaW5lckV2ZW50KT1cInRyaWdnZXJDb250YWluZXJFdmVudCgkZXZlbnQpXCI+XHJcbiAgICAgICAgPC9hcHAtemltZz5cclxuICAgICAgICA8YXBwLXp0ZXh0ZWRpdG9yICpuZ0lmPVwienRleHRlZGl0b3JfdHlwZS5pbmNsdWRlcyhkYXRhLlR5cGUpXCIgW2RhdGFdPVwiZGF0YVwiIFtncm91cF09XCJncm91cFwiIFtmb3JtXT1cImZvcm1cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW2NvbnRhaW5lckZpZWxkXT1cImNvbnRhaW5lckZpZWxkXCIgW2NvbXBvbmVudFByb3BlcnRpZXNdPVwiY29tcG9uZW50UHJvcGVydGllc1wiIGNsYXNzPVwiZTF0YWctY29udGFpbmVyLXN0eWxlNVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbc3R5bGVdPVwiY29tcG9uZW50UHJvcGVydGllcy5jb250YWluZXJTdHlsZS5zdHlsZTVcIiAodHJpZ2dlckNvbnRhaW5lckV2ZW50KT1cInRyaWdnZXJDb250YWluZXJFdmVudCgkZXZlbnQpXCI+XHJcbiAgICAgICAgPC9hcHAtenRleHRlZGl0b3I+XHJcbiAgICAgICAgPGFwcC16Y29sb3JwaWNrZXIgKm5nSWY9XCJ6Y29sb3JwaWNrZXJfdHlwZS5pbmNsdWRlcyhkYXRhLlR5cGUpXCIgW2RhdGFdPVwiZGF0YVwiIFtncm91cF09XCJncm91cFwiIFtmb3JtXT1cImZvcm1cIlxyXG4gICAgICAgICAgICAgICAgICAgW2NvbnRhaW5lckZpZWxkXT1cImNvbnRhaW5lckZpZWxkXCIgW2NvbXBvbmVudFByb3BlcnRpZXNdPVwiY29tcG9uZW50UHJvcGVydGllc1wiIGNsYXNzPVwiZTF0YWctY29udGFpbmVyLXN0eWxlNVwiXHJcbiAgICAgICAgICAgICAgICAgICBbc3R5bGVdPVwiY29tcG9uZW50UHJvcGVydGllcy5jb250YWluZXJTdHlsZS5zdHlsZTVcIiAodHJpZ2dlckNvbnRhaW5lckV2ZW50KT1cInRyaWdnZXJDb250YWluZXJFdmVudCgkZXZlbnQpXCI+XHJcbiAgICAgICAgPC9hcHAtemNvbG9ycGlja2VyPlxyXG4gICAgICAgIDxhcHAtenJhZGlvYnV0dG9uICpuZ0lmPVwienJhZGlvYnV0dG9uX3R5cGUuaW5jbHVkZXMoZGF0YS5UeXBlKVwiIFtkYXRhXT1cImRhdGFcIiBbZ3JvdXBdPVwiZ3JvdXBcIiBbZm9ybV09XCJmb3JtXCJcclxuICAgICAgICBbY29udGFpbmVyRmllbGRdPVwiY29udGFpbmVyRmllbGRcIiBbY29tcG9uZW50UHJvcGVydGllc109XCJjb21wb25lbnRQcm9wZXJ0aWVzXCIgY2xhc3M9XCJlMXRhZy1jb250YWluZXItc3R5bGU1XCJcclxuICAgICAgICBbc3R5bGVdPVwiY29tcG9uZW50UHJvcGVydGllcy5jb250YWluZXJTdHlsZS5zdHlsZTVcIiAodHJpZ2dlckNvbnRhaW5lckV2ZW50KT1cInRyaWdnZXJDb250YWluZXJFdmVudCgkZXZlbnQpXCI+XHJcbiAgICAgICAgPC9hcHAtenJhZGlvYnV0dG9uPlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGFwcC1lcnJvciBbZGF0YV09XCJkYXRhXCIgW2dyb3VwXT1cImdyb3VwXCIgW2Zvcm1dPVwiZm9ybVwiPjwvYXBwLWVycm9yPlxyXG4gICAgICA8IS0tIDxhcHAtZmllbGQtc3VmZml4LWVsZW1lbnQgW2RhdGFdPVwiZGF0YVwiIFtncm91cF09XCJncm91cFwiIFtmb3JtXT1cImZvcm1cIiBbY29udGFpbmVyRmllbGRdPVwiY29udGFpbmVyRmllbGRcIlxyXG4gICAgICAgIFtjb21wb25lbnRQcm9wZXJ0aWVzXT1cImNvbXBvbmVudFByb3BlcnRpZXNcIj48L2FwcC1maWVsZC1zdWZmaXgtZWxlbWVudD4gLS0+XHJcbiAgICA8L2Rpdj5cclxuICA8L2lvbi1pdGVtPlxyXG48L2Rpdj5cclxuXHJcbjxkaXYgY2xhc3M9XCJkZXNrdG9wLWlucHV0LWNvbnRhaW5lciBlMXRhZy1jb250YWluZXItc3R5bGVcIiBbZm9ybUdyb3VwXT1cImZvcm1cIlxyXG4gICAgIFtzdHlsZV09XCJjb21wb25lbnRQcm9wZXJ0aWVzLmNvbnRhaW5lclN0eWxlLnN0eWxlXCJcclxuICAgICAqbmdJZj1cIiFpc01vYmlsZVNjcmVlbigpICYmICFpc0xvYWRpbmcgJiYgKCEhY29tcG9uZW50UHJvcGVydGllcy5pc1Zpc2libGVGaWVsZCA/IGdyb3VwW2NvbXBvbmVudFByb3BlcnRpZXMuaXNWaXNpYmxlRmllbGRdIDogY29tcG9uZW50UHJvcGVydGllcy5pc1Zpc2libGUpXCJcclxuICAgICBbbmdDbGFzc109XCJnZXRDbGFzcyhmb3JtLCBkYXRhKVwiIFtmeExheW91dF09XCJkYXRhLkZpZWxkTGF5b3V0VHlwZSAhPT0gMSA/ICdjb2x1bW4nIDogJ3JvdydcIlxyXG4gICAgIGZ4TGF5b3V0QWxpZ249XCJzcGFjZS1iZXR3ZWVuIHN0cmV0Y2hcIiBbY2xhc3MuZWRpdE1vZGVdPVwiKGRhdGFbJ19FZGl0TW9kZSddLnZhbHVlKVwiXHJcbiAgICAgI3ppbnB1dGNvbnRhaW5lcj5cclxuICA8a2VuZG8tbGFiZWwgY2xhc3M9XCJpbnB1dC1sYWJlbCBlMXRhZy1jb250YWluZXItc3R5bGUxXCIgW2Zvcl09XCJkYXRhLk5hbWVcIiBbdGV4dF09XCJjb21wb25lbnRQcm9wZXJ0aWVzLmxhYmVsXCJcclxuICAgICAgICAgICAgICAgKm5nSWY9XCJkYXRhLlNob3dMYWJlbFwiIFtzdHlsZV09XCJjb21wb25lbnRQcm9wZXJ0aWVzLmNvbnRhaW5lclN0eWxlLnN0eWxlMVwiXHJcbiAgICAgICAgICAgICAgIFtmeEZsZXhdPVwiY29tcG9uZW50UHJvcGVydGllcy5sYWJlbEZsZXhMYXlvdXRTaXplLmFsbFwiIFtmeEZsZXgueHNdPVwiY29tcG9uZW50UHJvcGVydGllcy5sYWJlbEZsZXhMYXlvdXRTaXplLnhzXCJcclxuICAgICAgICAgICAgICAgW2Z4RmxleC5zbV09XCJjb21wb25lbnRQcm9wZXJ0aWVzLmxhYmVsRmxleExheW91dFNpemUuc21cIiBbZnhGbGV4Lm1kXT1cImNvbXBvbmVudFByb3BlcnRpZXMubGFiZWxGbGV4TGF5b3V0U2l6ZS5tZFwiXHJcbiAgICAgICAgICAgICAgIFtmeEZsZXgubGddPVwiY29tcG9uZW50UHJvcGVydGllcy5sYWJlbEZsZXhMYXlvdXRTaXplLmxnXCIgW2Z4RmxleC54bF09XCJjb21wb25lbnRQcm9wZXJ0aWVzLmxhYmVsRmxleExheW91dFNpemUueGxcIj5cclxuICAgIDxrZW5kby1sYWJlbCAqbmdJZj1cImRhdGFbJ19FZGl0TW9kZSddLnZhbHVlICYmICghIWNvbXBvbmVudFByb3BlcnRpZXMuaXNSZXF1aXJlZEZpZWxkID8gZ3JvdXBbY29tcG9uZW50UHJvcGVydGllcy5pc1JlcXVpcmVkRmllbGRdIDogY29tcG9uZW50UHJvcGVydGllcy5pc1JlcXVpcmVkKVwiXHJcbiAgICAgICAgICAgICAgICAgdGV4dD1cIipcIiBjbGFzcz1cInJlcXVpcmVkLWljb25cIj5cclxuICAgIDwva2VuZG8tbGFiZWw+XHJcbiAgICA8YXBwLWlucHV0LWZpZWxkLWFkZG9ucyBjbGFzcz1cImFkZG9uLXRvcCBlMXRhZy1jb250YWluZXItc3R5bGU3XCIgW3Bvc2l0aW9uXT1cIid0b3AnXCIgW2FkZE9uXT1cImlucHV0RmllbGRBZGRPbi50b3BcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2RhdGFdPVwiZGF0YVwiIFtncm91cF09XCJncm91cFwiIFtmb3JtXT1cImZvcm1cIiBbY29udGFpbmVyRmllbGRdPVwiY29udGFpbmVyRmllbGRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NvbXBvbmVudFByb3BlcnRpZXNdPVwiY29tcG9uZW50UHJvcGVydGllc1wiIFtzdHlsZV09XCJjb21wb25lbnRQcm9wZXJ0aWVzLmNvbnRhaW5lclN0eWxlLnN0eWxlN1wiPlxyXG4gICAgPC9hcHAtaW5wdXQtZmllbGQtYWRkb25zPlxyXG4gIDwva2VuZG8tbGFiZWw+XHJcbiAgPGRpdiBjbGFzcz1cImlucHV0LXZhbHVlLWNvbnRhaW5lciBlMXRhZy1jb250YWluZXItc3R5bGUyXCIgW3N0eWxlXT1cImNvbXBvbmVudFByb3BlcnRpZXMuY29udGFpbmVyU3R5bGUuc3R5bGUyXCJcclxuICAgICAgIFtmeEZsZXhdPVwiY29tcG9uZW50UHJvcGVydGllcy5maWVsZEZsZXhMYXlvdXRTaXplLmFsbFwiIFtmeEZsZXgueHNdPVwiY29tcG9uZW50UHJvcGVydGllcy5maWVsZEZsZXhMYXlvdXRTaXplLnhzXCJcclxuICAgICAgIFtmeEZsZXguc21dPVwiY29tcG9uZW50UHJvcGVydGllcy5maWVsZEZsZXhMYXlvdXRTaXplLnNtXCIgW2Z4RmxleC5tZF09XCJjb21wb25lbnRQcm9wZXJ0aWVzLmZpZWxkRmxleExheW91dFNpemUubWRcIlxyXG4gICAgICAgW2Z4RmxleC5sZ109XCJjb21wb25lbnRQcm9wZXJ0aWVzLmZpZWxkRmxleExheW91dFNpemUubGdcIiBbZnhGbGV4LnhsXT1cImNvbXBvbmVudFByb3BlcnRpZXMuZmllbGRGbGV4TGF5b3V0U2l6ZS54bFwiPlxyXG4gICAgPGRpdiAqbmdJZj1cImRhdGFbJ19FZGl0TW9kZSddLnZhbHVlXCIgY2xhc3M9XCJpbnB1dC12YWx1ZS1maWVsZCBlMXRhZy1jb250YWluZXItc3R5bGUzXCJcclxuICAgICAgICAgW3N0eWxlXT1cImNvbXBvbmVudFByb3BlcnRpZXMuY29udGFpbmVyU3R5bGUuc3R5bGUzXCI+XHJcbiAgICAgIDwhLS0gVE9ETzogQWRkIDEgbW9yZSBsYXllciBmb3IgdGhpcyBzd2l0Y2ggY2FzZS0tPlxyXG4gICAgICA8YXBwLWlucHV0LWZpZWxkLWFkZG9ucyBjbGFzcz1cImFkZG9uLWxlZnQgZTF0YWctY29udGFpbmVyLXN0eWxlN1wiIFtwb3NpdGlvbl09XCInbGVmdCdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYWRkT25dPVwiaW5wdXRGaWVsZEFkZE9uLmxlZnRcIiBbZGF0YV09XCJkYXRhXCIgW2dyb3VwXT1cImdyb3VwXCIgW2Zvcm1dPVwiZm9ybVwiIFtjb250YWluZXJGaWVsZF09XCJjb250YWluZXJGaWVsZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjb21wb25lbnRQcm9wZXJ0aWVzXT1cImNvbXBvbmVudFByb3BlcnRpZXNcIiBbc3R5bGVdPVwiY29tcG9uZW50UHJvcGVydGllcy5jb250YWluZXJTdHlsZS5zdHlsZTdcIj5cclxuICAgICAgPC9hcHAtaW5wdXQtZmllbGQtYWRkb25zPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiaW5wdXQtZmllbGRzLW9wdGlvbnMgZTF0YWctY29udGFpbmVyLXN0eWxlNFwiIFtzdHlsZV09XCJjb21wb25lbnRQcm9wZXJ0aWVzLmNvbnRhaW5lclN0eWxlLnN0eWxlNFwiPlxyXG4gICAgICAgIDxhcHAtenRleHQgKm5nSWY9XCJ6dGV4dF90eXBlLmluY2x1ZGVzKGRhdGEuVHlwZSlcIiBbZGF0YV09XCJkYXRhXCIgW2dyb3VwXT1cImdyb3VwXCIgW2Zvcm1dPVwiZm9ybVwiXHJcbiAgICAgICAgICAgICAgICAgICBbY29udGFpbmVyRmllbGRdPVwiY29udGFpbmVyRmllbGRcIiBbY29tcG9uZW50UHJvcGVydGllc109XCJjb21wb25lbnRQcm9wZXJ0aWVzXCIgY2xhc3M9XCJlMXRhZy1jb250YWluZXItc3R5bGU1XCJcclxuICAgICAgICAgICAgICAgICAgIFtzdHlsZV09XCJjb21wb25lbnRQcm9wZXJ0aWVzLmNvbnRhaW5lclN0eWxlLnN0eWxlNVwiICh0cmlnZ2VyQ29udGFpbmVyRXZlbnQpPVwidHJpZ2dlckNvbnRhaW5lckV2ZW50KCRldmVudClcIj5cclxuICAgICAgICA8L2FwcC16dGV4dD5cclxuICAgICAgICA8YXBwLXpzZWxlY3RtdWx0aXBsZSAqbmdJZj1cInpzZWxlY3RfdHlwZS5pbmNsdWRlcyhkYXRhLlR5cGUpXCIgW2RhdGFdPVwiZGF0YVwiIFtncm91cF09XCJncm91cFwiIFtmb3JtXT1cImZvcm1cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjb250YWluZXJGaWVsZF09XCJjb250YWluZXJGaWVsZFwiIFtjb21wb25lbnRQcm9wZXJ0aWVzXT1cImNvbXBvbmVudFByb3BlcnRpZXNcIiBjbGFzcz1cImUxdGFnLWNvbnRhaW5lci1zdHlsZTVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzdHlsZV09XCJjb21wb25lbnRQcm9wZXJ0aWVzLmNvbnRhaW5lclN0eWxlLnN0eWxlNVwiICh0cmlnZ2VyQ29udGFpbmVyRXZlbnQpPVwidHJpZ2dlckNvbnRhaW5lckV2ZW50KCRldmVudClcIj5cclxuICAgICAgICA8L2FwcC16c2VsZWN0bXVsdGlwbGU+XHJcbiAgICAgICAgPGFwcC16ZGF0ZXRpbWUgKm5nSWY9XCJ6ZGF0ZV90eXBlLmluY2x1ZGVzKGRhdGEuVHlwZSlcIiBbZGF0YV09XCJkYXRhXCIgW2dyb3VwXT1cImdyb3VwXCIgW2Zvcm1dPVwiZm9ybVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgW2NvbnRhaW5lckZpZWxkXT1cImNvbnRhaW5lckZpZWxkXCIgW2NvbXBvbmVudFByb3BlcnRpZXNdPVwiY29tcG9uZW50UHJvcGVydGllc1wiIGNsYXNzPVwiZTF0YWctY29udGFpbmVyLXN0eWxlNVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgW3N0eWxlXT1cImNvbXBvbmVudFByb3BlcnRpZXMuY29udGFpbmVyU3R5bGUuc3R5bGU1XCIgKHRyaWdnZXJDb250YWluZXJFdmVudCk9XCJ0cmlnZ2VyQ29udGFpbmVyRXZlbnQoJGV2ZW50KVwiPlxyXG4gICAgICAgIDwvYXBwLXpkYXRldGltZT4gXHJcbiAgICAgICAgPGFwcC1zZmRhdGV0aW1lcGlja2VyICpuZ0lmPVwic2ZkYXRldGltZXBpY2tlcl90eXBlLmluY2x1ZGVzKGRhdGEuVHlwZSlcIiBbZGF0YV09XCJkYXRhXCIgW2dyb3VwXT1cImdyb3VwXCIgW2Zvcm1dPVwiZm9ybVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgW2NvbnRhaW5lckZpZWxkXT1cImNvbnRhaW5lckZpZWxkXCIgW2NvbXBvbmVudFByb3BlcnRpZXNdPVwiY29tcG9uZW50UHJvcGVydGllc1wiIGNsYXNzPVwiZTF0YWctY29udGFpbmVyLXN0eWxlNVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgW3N0eWxlXT1cImNvbXBvbmVudFByb3BlcnRpZXMuY29udGFpbmVyU3R5bGUuc3R5bGU1XCIgKHRyaWdnZXJDb250YWluZXJFdmVudCk9XCJ0cmlnZ2VyQ29udGFpbmVyRXZlbnQoJGV2ZW50KVwiPlxyXG4gICAgICAgIDwvYXBwLXNmZGF0ZXRpbWVwaWNrZXI+XHJcbiAgICAgICAgPGFwcC16cG9zdHNlbGVjdGlucHV0ICpuZ0lmPVwienBvc3RzZWxlY3RpbnB1dF90eXBlLmluY2x1ZGVzKGRhdGEuVHlwZSlcIiBbZGF0YV09XCJkYXRhXCIgW2dyb3VwXT1cImdyb3VwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Zvcm1dPVwiZm9ybVwiIFtjb250YWluZXJGaWVsZF09XCJjb250YWluZXJGaWVsZFwiIFtjb21wb25lbnRQcm9wZXJ0aWVzXT1cImNvbXBvbmVudFByb3BlcnRpZXNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImUxdGFnLWNvbnRhaW5lci1zdHlsZTVcIiBbc3R5bGVdPVwiY29tcG9uZW50UHJvcGVydGllcy5jb250YWluZXJTdHlsZS5zdHlsZTVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAodHJpZ2dlckNvbnRhaW5lckV2ZW50KT1cInRyaWdnZXJDb250YWluZXJFdmVudCgkZXZlbnQpXCI+XHJcbiAgICAgICAgPC9hcHAtenBvc3RzZWxlY3RpbnB1dD5cclxuICAgICAgICA8YXBwLXpjaGVja2JveCAqbmdJZj1cInpjaGVja2JveF90eXBlLmluY2x1ZGVzKGRhdGEuVHlwZSlcIiBbZGF0YV09XCJkYXRhXCIgW2dyb3VwXT1cImdyb3VwXCIgW2Zvcm1dPVwiZm9ybVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgW2NvbnRhaW5lckZpZWxkXT1cImNvbnRhaW5lckZpZWxkXCIgW2NvbXBvbmVudFByb3BlcnRpZXNdPVwiY29tcG9uZW50UHJvcGVydGllc1wiIGNsYXNzPVwiZTF0YWctY29udGFpbmVyLXN0eWxlNVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgW3N0eWxlXT1cImNvbXBvbmVudFByb3BlcnRpZXMuY29udGFpbmVyU3R5bGUuc3R5bGU1XCIgKHRyaWdnZXJDb250YWluZXJFdmVudCk9XCJ0cmlnZ2VyQ29udGFpbmVyRXZlbnQoJGV2ZW50KVwiPlxyXG4gICAgICAgIDwvYXBwLXpjaGVja2JveD5cclxuICAgICAgICA8YXBwLXpudW1lcmljICpuZ0lmPVwiem51bWVyaWNfdHlwZS5pbmNsdWRlcyhkYXRhLlR5cGUpXCIgW2RhdGFdPVwiZGF0YVwiIFtncm91cF09XCJncm91cFwiIFtmb3JtXT1cImZvcm1cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgW2NvbnRhaW5lckZpZWxkXT1cImNvbnRhaW5lckZpZWxkXCIgW2NvbXBvbmVudFByb3BlcnRpZXNdPVwiY29tcG9uZW50UHJvcGVydGllc1wiIGNsYXNzPVwiZTF0YWctY29udGFpbmVyLXN0eWxlNVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICBbc3R5bGVdPVwiY29tcG9uZW50UHJvcGVydGllcy5jb250YWluZXJTdHlsZS5zdHlsZTVcIiAodHJpZ2dlckNvbnRhaW5lckV2ZW50KT1cInRyaWdnZXJDb250YWluZXJFdmVudCgkZXZlbnQpXCI+XHJcbiAgICAgICAgPC9hcHAtem51bWVyaWM+XHJcbiAgICAgICAgPGFwcC16dGV4dGFyZWEgKm5nSWY9XCJ0ZXh0YXJlYV90eXBlLmluY2x1ZGVzKGRhdGEuVHlwZSlcIiBbZGF0YV09XCJkYXRhXCIgW2dyb3VwXT1cImdyb3VwXCIgW2Zvcm1dPVwiZm9ybVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgW2NvbnRhaW5lckZpZWxkXT1cImNvbnRhaW5lckZpZWxkXCIgW2NvbXBvbmVudFByb3BlcnRpZXNdPVwiY29tcG9uZW50UHJvcGVydGllc1wiIGNsYXNzPVwiZTF0YWctY29udGFpbmVyLXN0eWxlNVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgW3N0eWxlXT1cImNvbXBvbmVudFByb3BlcnRpZXMuY29udGFpbmVyU3R5bGUuc3R5bGU1XCIgKHRyaWdnZXJDb250YWluZXJFdmVudCk9XCJ0cmlnZ2VyQ29udGFpbmVyRXZlbnQoJGV2ZW50KVwiPlxyXG4gICAgICAgIDwvYXBwLXp0ZXh0YXJlYT5cclxuICAgICAgICA8YXBwLXp1cGxvYWQgKm5nSWY9XCJ6dXBsb2FkX3R5cGUuaW5jbHVkZXMoZGF0YS5UeXBlKVwiIFtkYXRhXT1cImRhdGFcIiBbZ3JvdXBdPVwiZ3JvdXBcIiBbZm9ybV09XCJmb3JtXCJcclxuICAgICAgICAgICAgICAgICAgICAgW2NvbnRhaW5lckZpZWxkXT1cImNvbnRhaW5lckZpZWxkXCIgW2NvbXBvbmVudFByb3BlcnRpZXNdPVwiY29tcG9uZW50UHJvcGVydGllc1wiIGNsYXNzPVwiZTF0YWctY29udGFpbmVyLXN0eWxlNVwiXHJcbiAgICAgICAgICAgICAgICAgICAgIFtzdHlsZV09XCJjb21wb25lbnRQcm9wZXJ0aWVzLmNvbnRhaW5lclN0eWxlLnN0eWxlNVwiICh0cmlnZ2VyQ29udGFpbmVyRXZlbnQpPVwidHJpZ2dlckNvbnRhaW5lckV2ZW50KCRldmVudClcIj5cclxuICAgICAgICA8L2FwcC16dXBsb2FkPlxyXG4gICAgICAgIDxhcHAtemltZyAqbmdJZj1cInppbWdfdHlwZS5pbmNsdWRlcyhkYXRhLlR5cGUpXCIgW2RhdGFdPVwiZGF0YVwiIFtncm91cF09XCJncm91cFwiIFtmb3JtXT1cImZvcm1cIlxyXG4gICAgICAgICAgICAgICAgICBbY29udGFpbmVyRmllbGRdPVwiY29udGFpbmVyRmllbGRcIiBbY29tcG9uZW50UHJvcGVydGllc109XCJjb21wb25lbnRQcm9wZXJ0aWVzXCIgY2xhc3M9XCJlMXRhZy1jb250YWluZXItc3R5bGU1XCJcclxuICAgICAgICAgICAgICAgICAgW3N0eWxlXT1cImNvbXBvbmVudFByb3BlcnRpZXMuY29udGFpbmVyU3R5bGUuc3R5bGU1XCIgKHRyaWdnZXJDb250YWluZXJFdmVudCk9XCJ0cmlnZ2VyQ29udGFpbmVyRXZlbnQoJGV2ZW50KVwiPlxyXG4gICAgICAgIDwvYXBwLXppbWc+XHJcbiAgICAgICAgPGFwcC16dGV4dGVkaXRvciAqbmdJZj1cInp0ZXh0ZWRpdG9yX3R5cGUuaW5jbHVkZXMoZGF0YS5UeXBlKVwiIFtkYXRhXT1cImRhdGFcIiBbZ3JvdXBdPVwiZ3JvdXBcIiBbZm9ybV09XCJmb3JtXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFtjb250YWluZXJGaWVsZF09XCJjb250YWluZXJGaWVsZFwiIFtjb21wb25lbnRQcm9wZXJ0aWVzXT1cImNvbXBvbmVudFByb3BlcnRpZXNcIiBjbGFzcz1cImUxdGFnLWNvbnRhaW5lci1zdHlsZTVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3N0eWxlXT1cImNvbXBvbmVudFByb3BlcnRpZXMuY29udGFpbmVyU3R5bGUuc3R5bGU1XCIgKHRyaWdnZXJDb250YWluZXJFdmVudCk9XCJ0cmlnZ2VyQ29udGFpbmVyRXZlbnQoJGV2ZW50KVwiPlxyXG4gICAgICAgIDwvYXBwLXp0ZXh0ZWRpdG9yPlxyXG4gICAgICAgIDxhcHAtemNvbG9ycGlja2VyICpuZ0lmPVwiemNvbG9ycGlja2VyX3R5cGUuaW5jbHVkZXMoZGF0YS5UeXBlKVwiIFtkYXRhXT1cImRhdGFcIiBbZ3JvdXBdPVwiZ3JvdXBcIiBbZm9ybV09XCJmb3JtXCJcclxuICAgICAgICAgICAgICAgICAgIFtjb250YWluZXJGaWVsZF09XCJjb250YWluZXJGaWVsZFwiIFtjb21wb25lbnRQcm9wZXJ0aWVzXT1cImNvbXBvbmVudFByb3BlcnRpZXNcIiBjbGFzcz1cImUxdGFnLWNvbnRhaW5lci1zdHlsZTVcIlxyXG4gICAgICAgICAgICAgICAgICAgW3N0eWxlXT1cImNvbXBvbmVudFByb3BlcnRpZXMuY29udGFpbmVyU3R5bGUuc3R5bGU1XCIgKHRyaWdnZXJDb250YWluZXJFdmVudCk9XCJ0cmlnZ2VyQ29udGFpbmVyRXZlbnQoJGV2ZW50KVwiPlxyXG4gICAgICAgIDwvYXBwLXpjb2xvcnBpY2tlcj5cclxuICAgICAgICA8YXBwLXpyYWRpb2J1dHRvbiAqbmdJZj1cInpyYWRpb2J1dHRvbl90eXBlLmluY2x1ZGVzKGRhdGEuVHlwZSlcIiBbZGF0YV09XCJkYXRhXCIgW2dyb3VwXT1cImdyb3VwXCIgW2Zvcm1dPVwiZm9ybVwiIFxyXG4gICAgICAgIFtjb250YWluZXJGaWVsZF09XCJjb250YWluZXJGaWVsZFwiIFtjb21wb25lbnRQcm9wZXJ0aWVzXT1cImNvbXBvbmVudFByb3BlcnRpZXNcIiBjbGFzcz1cImUxdGFnLWNvbnRhaW5lci1zdHlsZTVcIlxyXG4gICAgICAgIFtzdHlsZV09XCJjb21wb25lbnRQcm9wZXJ0aWVzLmNvbnRhaW5lclN0eWxlLnN0eWxlNVwiICh0cmlnZ2VyQ29udGFpbmVyRXZlbnQpPVwidHJpZ2dlckNvbnRhaW5lckV2ZW50KCRldmVudClcIj5cclxuICAgICAgPC9hcHAtenJhZGlvYnV0dG9uPlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGFwcC1pbnB1dC1maWVsZC1hZGRvbnMgY2xhc3M9XCJhZGRvbi1yaWdodCBlMXRhZy1jb250YWluZXItc3R5bGU3XCIgW3Bvc2l0aW9uXT1cIidyaWdodCdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYWRkT25dPVwiaW5wdXRGaWVsZEFkZE9uLnJpZ2h0XCIgW2RhdGFdPVwiZGF0YVwiIFtncm91cF09XCJncm91cFwiIFtmb3JtXT1cImZvcm1cIiBbY29udGFpbmVyRmllbGRdPVwiY29udGFpbmVyRmllbGRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY29tcG9uZW50UHJvcGVydGllc109XCJjb21wb25lbnRQcm9wZXJ0aWVzXCIgW3N0eWxlXT1cImNvbXBvbmVudFByb3BlcnRpZXMuY29udGFpbmVyU3R5bGUuc3R5bGU3XCI+XHJcbiAgICAgIDwvYXBwLWlucHV0LWZpZWxkLWFkZG9ucz5cclxuICAgIDwvZGl2PlxyXG4gICAgPGFwcC1pbnB1dC1maWVsZC1hZGRvbnMgY2xhc3M9XCJhZGRvbi1ib3R0b20gZTF0YWctY29udGFpbmVyLXN0eWxlN1wiIFtwb3NpdGlvbl09XCInYm90dG9tJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYWRkT25dPVwiaW5wdXRGaWVsZEFkZE9uLmJvdHRvbVwiIFtkYXRhXT1cImRhdGFcIiBbZ3JvdXBdPVwiZ3JvdXBcIiBbZm9ybV09XCJmb3JtXCIgW2NvbnRhaW5lckZpZWxkXT1cImNvbnRhaW5lckZpZWxkXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjb21wb25lbnRQcm9wZXJ0aWVzXT1cImNvbXBvbmVudFByb3BlcnRpZXNcIiBbc3R5bGVdPVwiY29tcG9uZW50UHJvcGVydGllcy5jb250YWluZXJTdHlsZS5zdHlsZTdcIj5cclxuICAgIDwvYXBwLWlucHV0LWZpZWxkLWFkZG9ucz5cclxuICAgIDxhcHAtZXJyb3IgW2RhdGFdPVwiZGF0YVwiIFtncm91cF09XCJncm91cFwiIFtmb3JtXT1cImZvcm1cIj48L2FwcC1lcnJvcj5cclxuICAgIDxrZW5kby1sYWJlbCBjbGFzcz1cImlucHV0LXZhbHVlIGUxdGFnLWNvbnRhaW5lci1zdHlsZTZcIiAqbmdJZj1cIiEoZGF0YVsnX0VkaXRNb2RlJ10udmFsdWUpXCJcclxuICAgICAgICAgICAgICAgICBbc3R5bGVdPVwiY29tcG9uZW50UHJvcGVydGllcy5jb250YWluZXJTdHlsZS5zdHlsZTZcIlxyXG4gICAgICAgICAgICAgICAgIFt0ZXh0XT1cImdyb3VwLnpNb2RlbFtkYXRhLlZhbHVlXSB8IGlucHV0VGV4dCA6IGRhdGE6IGdyb3VwIHwgYXN5bmNcIj48L2tlbmRvLWxhYmVsPlxyXG4gIDwvZGl2PlxyXG4gIDxhcHAtY29udGV4dC1tZW51IFtkYXRhXT1cImRhdGFcIiBbZ3JvdXBdPVwiZ3JvdXBcIiBbZm9ybV09XCJmb3JtXCIgW3RhcmdldF09XCJ6aW5wdXRjb250YWluZXJcIj48L2FwcC1jb250ZXh0LW1lbnU+XHJcbjwvZGl2PlxyXG4iXX0=
|