mmhglobal-dynamicform 1.2.3 → 1.3.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (198) hide show
  1. package/README.md +14 -2
  2. package/esm2020/lib/directives/fieldelement.directive.mjs +16 -0
  3. package/esm2020/lib/directives/scrollbar.theme.directive.mjs +43 -0
  4. package/esm2020/lib/mmhglobal-dynamicform.module.mjs +464 -0
  5. package/esm2020/lib/services/main.service.mjs +752 -0
  6. package/esm2020/lib/services/zcomponent.debug.service.mjs +621 -0
  7. package/esm2020/lib/services/zcomponent.service.mjs +81 -0
  8. package/esm2020/lib/uiactionbutton/uiactionbutton.component.mjs +265 -0
  9. package/esm2020/lib/uiappmenucontent/uiappmenucontent.component.mjs +67 -0
  10. package/esm2020/lib/uicontent/uicontent.component.mjs +41 -0
  11. package/esm2020/lib/uiheader/uiheader.component.mjs +66 -0
  12. package/esm2020/lib/uimenubutton/uimenubutton.component.mjs +35 -0
  13. package/esm2020/lib/uimenucontent/uimenucontent.component.mjs +37 -0
  14. package/{esm2015/lib/uipage/uipage.component.js → esm2020/lib/uipage/uipage.component.mjs} +12 -13
  15. package/esm2020/lib/uivalidationmessage/uivalidationmessage.component.mjs +41 -0
  16. package/esm2020/lib/zbullet/zbullet.component.mjs +74 -0
  17. package/esm2020/lib/zbuttons/zbuttons.component.mjs +171 -0
  18. package/esm2020/lib/zcard/zcard.component.mjs +72 -0
  19. package/esm2020/lib/zchart/zchart.component.mjs +201 -0
  20. package/esm2020/lib/zcheckbox/zcheckbox.component.mjs +166 -0
  21. package/esm2020/lib/zchip/zchip.component.mjs +121 -0
  22. package/esm2020/lib/zcodeeditor/zcodeeditor.component.mjs +169 -0
  23. package/esm2020/lib/zcodeeditor/zcodeeditor.pipe.mjs +60 -0
  24. package/esm2020/lib/zdaterange/zdaterange.component.mjs +70 -0
  25. package/esm2020/lib/zdatetime/dateParser.pipe.mjs +30 -0
  26. package/esm2020/lib/zdatetime/zdatetime.component.mjs +285 -0
  27. package/esm2020/lib/zdiv/zdiv.component.mjs +50 -0
  28. package/esm2020/lib/zdiv/zdiv.pipe.mjs +31 -0
  29. package/esm2020/lib/zform/zform.component.mjs +147 -0
  30. package/esm2020/lib/zformcontrol/zformcontrol.component.mjs +49 -0
  31. package/esm2020/lib/zgauge/zgauge.component.mjs +148 -0
  32. package/esm2020/lib/zgrid/date-range-cell-filter.component.mjs +135 -0
  33. package/esm2020/lib/zgrid/zgrid.binding.directive.mjs +490 -0
  34. package/esm2020/lib/zgrid/zgrid.component.mjs +847 -0
  35. package/esm2020/lib/zgrid/zgrid.popup.anchor-target.directive.mjs +17 -0
  36. package/esm2020/lib/zimg/zimg.component.mjs +121 -0
  37. package/esm2020/lib/zkcard/zkcard.component.mjs +367 -0
  38. package/esm2020/lib/zlabel/zlabel.component.mjs +62 -0
  39. package/esm2020/lib/zmfb/zmfb.component.mjs +215 -0
  40. package/esm2020/lib/zmodal/zmodal-mobile.component.mjs +120 -0
  41. package/esm2020/lib/zmodal/zmodal.component.mjs +125 -0
  42. package/esm2020/lib/znumeric/znumeric.component.mjs +119 -0
  43. package/esm2020/lib/zpostselectinput/zpostselectinput.component.mjs +352 -0
  44. package/esm2020/lib/zquerybuilder/zquerybuilder.component.mjs +204 -0
  45. package/esm2020/lib/zreport/zreport.component.mjs +105 -0
  46. package/esm2020/lib/zreport/zreport.config.mjs +117 -0
  47. package/esm2020/lib/zscheduler/zscheduler.component.mjs +267 -0
  48. package/{esm2015/lib/zscheduler/zscheduler.toolbar.component.js → esm2020/lib/zscheduler/zscheduler.toolbar.component.mjs} +55 -19
  49. package/esm2020/lib/zselectmultiple/zselectmultiple.component.mjs +577 -0
  50. package/esm2020/lib/zselectmultiple/zselectmultiple.directive.mjs +35 -0
  51. package/esm2020/lib/ztab/ztab.component.mjs +187 -0
  52. package/esm2020/lib/ztab/ztab.pipe.mjs +26 -0
  53. package/esm2020/lib/ztext/ztext.component.mjs +297 -0
  54. package/esm2020/lib/ztextarea/ztextarea.component.mjs +109 -0
  55. package/esm2020/lib/ztexteditor/ztexteditor.component.mjs +57 -0
  56. package/esm2020/lib/ztree/ztree.component.mjs +380 -0
  57. package/esm2020/lib/ztreelist/ztreelist.component.mjs +544 -0
  58. package/esm2020/lib/ztrendcard/ztrendcard.component.mjs +92 -0
  59. package/esm2020/lib/zudf/zudf.component.mjs +205 -0
  60. package/esm2020/lib/zunknown/zunknown.component.mjs +20 -0
  61. package/esm2020/lib/zupload/zupload.component.mjs +359 -0
  62. package/esm2020/lib/zworkflowbuttons/zworkflowbuttons.component.mjs +216 -0
  63. package/esm2020/mmhglobal-dynamicform.mjs +5 -0
  64. package/{esm2015/public-api.js → esm2020/public-api.mjs} +0 -0
  65. package/fesm2015/mmhglobal-dynamicform.mjs +10790 -0
  66. package/fesm2015/mmhglobal-dynamicform.mjs.map +1 -0
  67. package/fesm2020/mmhglobal-dynamicform.mjs +10779 -0
  68. package/fesm2020/mmhglobal-dynamicform.mjs.map +1 -0
  69. package/lib/directives/fieldelement.directive.d.ts +3 -0
  70. package/lib/directives/scrollbar.theme.directive.d.ts +3 -0
  71. package/lib/mmhglobal-dynamicform.module.d.ts +92 -0
  72. package/lib/services/main.service.d.ts +3 -0
  73. package/lib/services/zcomponent.debug.service.d.ts +8 -5
  74. package/lib/services/zcomponent.service.d.ts +7 -2
  75. package/lib/uiactionbutton/uiactionbutton.component.d.ts +3 -0
  76. package/lib/uiappmenucontent/uiappmenucontent.component.d.ts +3 -0
  77. package/lib/uicontent/uicontent.component.d.ts +3 -0
  78. package/lib/uiheader/uiheader.component.d.ts +3 -0
  79. package/lib/uimenubutton/uimenubutton.component.d.ts +3 -0
  80. package/lib/uimenucontent/uimenucontent.component.d.ts +3 -0
  81. package/lib/uipage/uipage.component.d.ts +3 -0
  82. package/lib/uivalidationmessage/uivalidationmessage.component.d.ts +3 -0
  83. package/lib/zbullet/zbullet.component.d.ts +3 -0
  84. package/lib/zbuttons/zbuttons.component.d.ts +3 -0
  85. package/lib/zcard/zcard.component.d.ts +3 -0
  86. package/lib/zchart/zchart.component.d.ts +3 -0
  87. package/lib/zcheckbox/zcheckbox.component.d.ts +3 -0
  88. package/lib/zchip/zchip.component.d.ts +3 -0
  89. package/lib/zcodeeditor/zcodeeditor.component.d.ts +3 -0
  90. package/lib/zcodeeditor/zcodeeditor.pipe.d.ts +3 -0
  91. package/lib/zdaterange/zdaterange.component.d.ts +3 -0
  92. package/lib/zdatetime/dateParser.pipe.d.ts +3 -0
  93. package/lib/zdatetime/zdatetime.component.d.ts +3 -0
  94. package/lib/zdiv/zdiv.component.d.ts +3 -0
  95. package/lib/zdiv/zdiv.pipe.d.ts +3 -0
  96. package/lib/zform/zform.component.d.ts +3 -0
  97. package/lib/zformcontrol/zformcontrol.component.d.ts +3 -0
  98. package/lib/zgauge/zgauge.component.d.ts +3 -0
  99. package/lib/zgrid/date-range-cell-filter.component.d.ts +3 -0
  100. package/lib/zgrid/zgrid.binding.directive.d.ts +3 -0
  101. package/lib/zgrid/zgrid.component.d.ts +4 -1
  102. package/lib/zgrid/zgrid.popup.anchor-target.directive.d.ts +3 -0
  103. package/lib/zimg/zimg.component.d.ts +3 -0
  104. package/lib/zkcard/zkcard.component.d.ts +3 -0
  105. package/lib/zlabel/zlabel.component.d.ts +3 -0
  106. package/lib/zmfb/zmfb.component.d.ts +3 -0
  107. package/lib/zmodal/zmodal-mobile.component.d.ts +3 -0
  108. package/lib/zmodal/zmodal.component.d.ts +3 -0
  109. package/lib/znumeric/znumeric.component.d.ts +3 -0
  110. package/lib/zpostselectinput/zpostselectinput.component.d.ts +3 -0
  111. package/lib/zquerybuilder/zquerybuilder.component.d.ts +3 -0
  112. package/lib/zreport/zreport.component.d.ts +3 -0
  113. package/lib/zreport/zreport.config.d.ts +3 -0
  114. package/lib/zscheduler/zscheduler.component.d.ts +3 -0
  115. package/lib/zscheduler/zscheduler.toolbar.component.d.ts +3 -0
  116. package/lib/zselectmultiple/zselectmultiple.component.d.ts +3 -0
  117. package/lib/zselectmultiple/zselectmultiple.directive.d.ts +3 -0
  118. package/lib/ztab/ztab.component.d.ts +3 -0
  119. package/lib/ztab/ztab.pipe.d.ts +3 -0
  120. package/lib/ztext/ztext.component.d.ts +3 -0
  121. package/lib/ztextarea/ztextarea.component.d.ts +3 -0
  122. package/lib/ztexteditor/ztexteditor.component.d.ts +3 -0
  123. package/lib/ztree/ztree.component.d.ts +3 -0
  124. package/lib/ztreelist/ztreelist.component.d.ts +3 -0
  125. package/lib/ztrendcard/ztrendcard.component.d.ts +3 -0
  126. package/lib/zudf/zudf.component.d.ts +3 -0
  127. package/lib/zunknown/zunknown.component.d.ts +3 -0
  128. package/lib/zupload/zupload.component.d.ts +3 -0
  129. package/lib/zworkflowbuttons/zworkflowbuttons.component.d.ts +3 -0
  130. package/mmhglobal-dynamicform.d.ts +1 -2
  131. package/package.json +20 -11
  132. package/bundles/mmhglobal-dynamicform.umd.js +0 -11360
  133. package/bundles/mmhglobal-dynamicform.umd.js.map +0 -1
  134. package/bundles/mmhglobal-dynamicform.umd.min.js +0 -16
  135. package/bundles/mmhglobal-dynamicform.umd.min.js.map +0 -1
  136. package/esm2015/lib/directives/fieldelement.directive.js +0 -15
  137. package/esm2015/lib/directives/scrollbar.theme.directive.js +0 -42
  138. package/esm2015/lib/mmhglobal-dynamicform.module.js +0 -314
  139. package/esm2015/lib/services/main.service.js +0 -766
  140. package/esm2015/lib/services/zcomponent.debug.service.js +0 -626
  141. package/esm2015/lib/services/zcomponent.service.js +0 -167
  142. package/esm2015/lib/uiactionbutton/uiactionbutton.component.js +0 -271
  143. package/esm2015/lib/uiappmenucontent/uiappmenucontent.component.js +0 -69
  144. package/esm2015/lib/uicontent/uicontent.component.js +0 -41
  145. package/esm2015/lib/uiheader/uiheader.component.js +0 -65
  146. package/esm2015/lib/uimenubutton/uimenubutton.component.js +0 -40
  147. package/esm2015/lib/uimenucontent/uimenucontent.component.js +0 -34
  148. package/esm2015/lib/uivalidationmessage/uivalidationmessage.component.js +0 -39
  149. package/esm2015/lib/zbullet/zbullet.component.js +0 -71
  150. package/esm2015/lib/zbuttons/zbuttons.component.js +0 -168
  151. package/esm2015/lib/zcard/zcard.component.js +0 -68
  152. package/esm2015/lib/zchart/zchart.component.js +0 -199
  153. package/esm2015/lib/zcheckbox/zcheckbox.component.js +0 -158
  154. package/esm2015/lib/zchip/zchip.component.js +0 -117
  155. package/esm2015/lib/zcodeeditor/zcodeeditor.component.js +0 -163
  156. package/esm2015/lib/zcodeeditor/zcodeeditor.pipe.js +0 -56
  157. package/esm2015/lib/zdaterange/zdaterange.component.js +0 -63
  158. package/esm2015/lib/zdatetime/dateParser.pipe.js +0 -26
  159. package/esm2015/lib/zdatetime/zdatetime.component.js +0 -279
  160. package/esm2015/lib/zdiv/zdiv.component.js +0 -48
  161. package/esm2015/lib/zdiv/zdiv.pipe.js +0 -27
  162. package/esm2015/lib/zform/zform.component.js +0 -148
  163. package/esm2015/lib/zformcontrol/zformcontrol.component.js +0 -49
  164. package/esm2015/lib/zgauge/zgauge.component.js +0 -146
  165. package/esm2015/lib/zgrid/date-range-cell-filter.component.js +0 -102
  166. package/esm2015/lib/zgrid/zgrid.binding.directive.js +0 -493
  167. package/esm2015/lib/zgrid/zgrid.component.js +0 -834
  168. package/esm2015/lib/zgrid/zgrid.popup.anchor-target.directive.js +0 -16
  169. package/esm2015/lib/zimg/zimg.component.js +0 -123
  170. package/esm2015/lib/zkcard/zkcard.component.js +0 -372
  171. package/esm2015/lib/zlabel/zlabel.component.js +0 -59
  172. package/esm2015/lib/zmfb/zmfb.component.js +0 -215
  173. package/esm2015/lib/zmodal/zmodal-mobile.component.js +0 -119
  174. package/esm2015/lib/zmodal/zmodal.component.js +0 -130
  175. package/esm2015/lib/znumeric/znumeric.component.js +0 -114
  176. package/esm2015/lib/zpostselectinput/zpostselectinput.component.js +0 -345
  177. package/esm2015/lib/zquerybuilder/zquerybuilder.component.js +0 -196
  178. package/esm2015/lib/zreport/zreport.component.js +0 -104
  179. package/esm2015/lib/zreport/zreport.config.js +0 -115
  180. package/esm2015/lib/zscheduler/zscheduler.component.js +0 -268
  181. package/esm2015/lib/zselectmultiple/zselectmultiple.component.js +0 -565
  182. package/esm2015/lib/zselectmultiple/zselectmultiple.directive.js +0 -28
  183. package/esm2015/lib/ztab/ztab.component.js +0 -180
  184. package/esm2015/lib/ztab/ztab.pipe.js +0 -22
  185. package/esm2015/lib/ztext/ztext.component.js +0 -286
  186. package/esm2015/lib/ztextarea/ztextarea.component.js +0 -104
  187. package/esm2015/lib/ztexteditor/ztexteditor.component.js +0 -52
  188. package/esm2015/lib/ztree/ztree.component.js +0 -374
  189. package/esm2015/lib/ztreelist/ztreelist.component.js +0 -539
  190. package/esm2015/lib/ztrendcard/ztrendcard.component.js +0 -89
  191. package/esm2015/lib/zudf/zudf.component.js +0 -206
  192. package/esm2015/lib/zunknown/zunknown.component.js +0 -20
  193. package/esm2015/lib/zupload/zupload.component.js +0 -358
  194. package/esm2015/lib/zworkflowbuttons/zworkflowbuttons.component.js +0 -215
  195. package/esm2015/mmhglobal-dynamicform.js +0 -7
  196. package/fesm2015/mmhglobal-dynamicform.js +0 -10729
  197. package/fesm2015/mmhglobal-dynamicform.js.map +0 -1
  198. package/mmhglobal-dynamicform.metadata.json +0 -1
@@ -1,163 +0,0 @@
1
- /********** Angular **********/
2
- import { Component, Input, ViewChild } from "@angular/core";
3
- import { Validators } from "@angular/forms";
4
- /********** Ionic **********/
5
- /********** Plugin **********/
6
- import { of } from "rxjs";
7
- import { delay } from "rxjs/operators";
8
- import "brace";
9
- import "brace/theme/eclipse";
10
- import "brace/mode/json";
11
- import "brace/mode/javascript";
12
- import "brace/mode/html";
13
- /********** Component & Service **********/
14
- import { ZComponentHelper, ZComponentProperties } from "mmhglobal-zcore";
15
- // import { EditorComponent } from 'ngx-monaco-editor';
16
- // import { EditorOptions } from "ngx-monaco-editor";
17
- export class ZcodeeditorComponent {
18
- constructor() {
19
- this.code = "";
20
- this.theme = "eclipse";
21
- this.mode = "javascript";
22
- this.componentProperties = new ZComponentProperties();
23
- this.setEnable = (status) => {
24
- this.componentProperties.isReadOnly = !status;
25
- };
26
- this.setVisible = (status) => {
27
- this.componentProperties.isVisible = status;
28
- this.data.Visible = status;
29
- };
30
- this.setRequire = (status) => {
31
- this.componentProperties.isRequired = status;
32
- ZComponentHelper.changeValidator(status, this.group, this.data.Value, this.componentProperties, Validators.required);
33
- };
34
- }
35
- ngOnInit() {
36
- ZComponentHelper.setComponentProperties(this);
37
- ZComponentHelper.registerComponent(this);
38
- this.widthReduce = this.data.WidthReduce || 60;
39
- this.heightReduce = this.data.HeightReduce || 560;
40
- // const codeValue = this.getValue();
41
- // if (codeValue) {
42
- // this.code = codeValue;
43
- // }
44
- if (this.data.Type === "textareajson") {
45
- this.mode = "json";
46
- }
47
- else if (this.data.Type === "textareahtml") {
48
- this.mode = "html";
49
- }
50
- console.log("zcodeeditor OnInit");
51
- }
52
- ngOnDestroy() {
53
- if (this.subscription) {
54
- this.subscription.unsubscribe();
55
- }
56
- }
57
- // https://github.com/fxmontigny/ng2-ace-editor/blob/master/sample/src/app/app.component.ts
58
- // ngAfterViewInit() {
59
- // const Range = ace.require('ace/range')['Range'];
60
- // this.editor
61
- // .getEditor()
62
- // .session.addMarker(new Range(0, 0, 2, 1), 'myMarker', 'fullLine');
63
- // this.editor.getEditor().session.setOption('useWorker', true);
64
- // }
65
- getValue() {
66
- let v;
67
- if (this.data.Value.indexOf('.') !== -1) {
68
- v = this.data.Value;
69
- }
70
- else {
71
- v = "group.zModel." + this.data.Value;
72
- }
73
- const evalValue = ZComponentHelper.getEvalValue.call(this, v);
74
- if (typeof evalValue === 'function') {
75
- const nextValue = evalValue();
76
- if (nextValue) {
77
- try {
78
- const evalNextValue = ZComponentHelper.getEvalValue.call(this, nextValue, true);
79
- if (typeof evalNextValue === 'boolean') {
80
- return evalNextValue.toString();
81
- }
82
- if (evalNextValue === undefined) {
83
- return 'undefined';
84
- }
85
- if (evalNextValue === null) {
86
- return 'null';
87
- }
88
- return evalNextValue;
89
- }
90
- catch (_a) {
91
- return;
92
- }
93
- }
94
- else {
95
- return;
96
- }
97
- }
98
- else {
99
- return evalValue;
100
- }
101
- // if (this.data.Type === "textareajson") {
102
- // if (typeof evalValue === "string") {
103
- // const jsonValue = JSON.parse(evalValue);
104
- // return JSON.stringify(jsonValue, null, 2);
105
- // }
106
- // if (typeof evalValue === "object" || Array.isArray(evalValue)) {
107
- // return JSON.stringify(evalValue, null, 2);
108
- // }
109
- // }
110
- // if (typeof evalValue === 'string') {
111
- // return evalValue;
112
- // }
113
- // // debugger;
114
- // console.warn(
115
- // "zcodeeditor - Invalid field.Value (" + this.data.Value + ") setting ",
116
- // evalValue
117
- // );
118
- // return "";
119
- }
120
- getEditorStyle() {
121
- // debugger;
122
- // return { "height.px": 500, "width.px": window.innerWidth - 60 }; // "width.px": this.innerWidth - 25
123
- return {
124
- "height.px": this.getEditorHeight(),
125
- "width.px": window.innerWidth - this.widthReduce
126
- };
127
- }
128
- getEditorHeight() {
129
- const h = window.innerHeight - this.heightReduce;
130
- return (h < 180) ? 180 : h;
131
- }
132
- onTextChange(newValue) {
133
- if (this.subscription) {
134
- this.subscription.unsubscribe();
135
- }
136
- // console.log('onTextChange: ', newValue);
137
- this.subscription = of([])
138
- .pipe(delay(500))
139
- .subscribe(() => {
140
- ZComponentHelper.setModelValue(this.data.Value, newValue, this.group, true);
141
- this.group.subject.next({
142
- type: "zcodeeditor-TextChanged",
143
- target: this.data.OnChange,
144
- data: newValue
145
- });
146
- });
147
- }
148
- }
149
- ZcodeeditorComponent.decorators = [
150
- { type: Component, args: [{
151
- selector: "app-zcodeeditor",
152
- template: "<div *ngIf=\"(!!componentProperties.isVisibleField ? group[componentProperties.isVisibleField] : componentProperties.isVisible)\">\r\n <ion-label *ngIf=\"data.ShowLabel\" position=\"stacked\" style=\"margin-bottom: 10px;\">\r\n {{data.Label}} <ion-text *ngIf=\"(!!componentProperties.isRequiredField ? group[componentProperties.isRequiredField] : componentProperties.isRequired)\" color=\"danger\">*</ion-text>\r\n </ion-label>\r\n <div>\r\n <!-- <div ace-editor\r\n [(text)]=\"text\"\r\n ></div> -->\r\n <ace-editor [readOnly]=\"(!!componentProperties.isReadOnlyField ? group[componentProperties.isReadOnlyField] : componentProperties.isReadOnly)\" #editor [ngStyle]=\"getEditorStyle()\" (textChanged)=\"onTextChange($event)\" [text]=\"getValue() | editorfilter\" [theme]=\"theme\" [mode]=\"mode\"></ace-editor>\r\n\r\n <!-- <ngx-monaco-editor #editor [options]=\"editorOptions\" [(ngModel)]=\"code\" (onInit)=\"onInit($event)\"></ngx-monaco-editor> -->\r\n </div>\r\n\r\n</div>",
153
- styles: [""]
154
- },] }
155
- ];
156
- ZcodeeditorComponent.ctorParameters = () => [];
157
- ZcodeeditorComponent.propDecorators = {
158
- data: [{ type: Input }],
159
- group: [{ type: Input }],
160
- form: [{ type: Input }],
161
- editor: [{ type: ViewChild, args: ["editor",] }]
162
- };
163
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiemNvZGVlZGl0b3IuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbW1oZ2xvYmFsLWR5bmFtaWNmb3JtL3NyYy9saWIvemNvZGVlZGl0b3IvemNvZGVlZGl0b3IuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLCtCQUErQjtBQUMvQixPQUFPLEVBQUUsU0FBUyxFQUFVLEtBQUssRUFBRSxTQUFTLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFDL0UsT0FBTyxFQUFhLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXZELDZCQUE2QjtBQUU3Qiw4QkFBOEI7QUFDOUIsT0FBTyxFQUFFLEVBQUUsRUFBZ0IsTUFBTSxNQUFNLENBQUM7QUFDeEMsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXZDLE9BQU8sT0FBTyxDQUFDO0FBQ2YsT0FBTyxxQkFBcUIsQ0FBQztBQUM3QixPQUFPLGlCQUFpQixDQUFDO0FBQ3pCLE9BQU8sdUJBQXVCLENBQUM7QUFDL0IsT0FBTyxpQkFBaUIsQ0FBQztBQUV6QiwyQ0FBMkM7QUFDM0MsT0FBTyxFQUNPLGdCQUFnQixFQUNaLG9CQUFvQixFQUNyQyxNQUFNLGlCQUFpQixDQUFDO0FBS3pCLHVEQUF1RDtBQUN2RCxxREFBcUQ7QUFPckQsTUFBTSxPQUFPLG9CQUFvQjtJQWUvQjtRQVhBLFNBQUksR0FBc0IsRUFBRSxDQUFDO1FBQzdCLFVBQUssR0FBRyxTQUFTLENBQUM7UUFDbEIsU0FBSSxHQUFHLFlBQVksQ0FBQztRQUVwQix3QkFBbUIsR0FBRyxJQUFJLG9CQUFvQixFQUFFLENBQUM7UUErSDFDLGNBQVMsR0FBRyxDQUFDLE1BQWUsRUFBRSxFQUFFO1lBQ3JDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxVQUFVLEdBQUcsQ0FBQyxNQUFNLENBQUM7UUFDaEQsQ0FBQyxDQUFBO1FBRU0sZUFBVSxHQUFHLENBQUMs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LENBQUMsS0FBSyxFQUFFLFFBQVEsRUFBRSxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxDQUFDO1lBQzVFLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQztnQkFDdEIsSUFBSSxFQUFFLHlCQUF5QjtnQkFDL0IsTUFBTSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUTtnQkFDMUIsSUFBSSxFQUFFLFFBQVE7YUFDVSxDQUFDLENBQUM7UUFDOUIsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDOzs7WUExSUYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxpQkFBaUI7Z0JBQzNCLHUvQkFBMkM7O2FBRTVDOzs7O21CQUVFLEtBQUs7b0JBQ0wsS0FBSzttQkFDTCxLQUFLO3FCQVVMLFNBQVMsU0FBQyxRQUFRIiwic291cmNlc0NvbnRlbnQiOlsiLyoqKioqKioqKiogQW5ndWxhciAqKioqKioqKioqL1xyXG5pbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgSW5wdXQsIFZpZXdDaGlsZCwgT25EZXN0cm95IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgRm9ybUdyb3VwLCBWYWxpZGF0b3JzIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XHJcblxyXG4vKioqKioqKioqKiBJb25pYyAqKioqKioqKioqL1xyXG5cclxuLyoqKioqKioqKiogUGx1Z2luICoqKioqKioqKiovXHJcbmltcG9ydCB7IG9mLCBTdWJzY3JpcHRpb24gfSBmcm9tIFwicnhqc1wiO1xyXG5pbXBvcnQgeyBkZWxheSB9IGZyb20gXCJyeGpzL29wZXJhdG9yc1wiO1xyXG5pbXBvcnQgeyBBY2VFZGl0b3JDb21wb25lbnQgfSBmcm9tIFwibmcyLWFjZS1lZGl0b3JcIjtcclxuaW1wb3J0IFwiYnJhY2VcIjtcclxuaW1wb3J0IFwiYnJhY2UvdGhlbWUvZWNsaXBzZVwiO1xyXG5pbXBvcnQgXCJicmFjZS9tb2RlL2pzb25cIjtcclxuaW1wb3J0IFwiYnJhY2UvbW9kZS9qYXZhc2NyaXB0XCI7XHJcbmltcG9ydCBcImJyYWNlL21vZGUvaHRtbFwiO1xyXG5cclxuLyoqKioqKioqKiogQ29tcG9uZW50ICYgU2VydmljZSAqKioqKioqKioqL1xyXG5pbXBvcnQge1xyXG4gIFpDb21wb25lbnQsIFpDb21wb25lbnRIZWxwZXIsIFpDb21wb25lbnRPdXRwdXRFdmVudCxcclxuICBaRmllbGQsIFpHcm91cCwgWkNvbXBvbmVudFByb3BlcnRpZXNcclxufSBmcm9tIFwibW1oZ2xvYmFsLXpjb3JlXCI7XHJcblxyXG5cclxuZGVjbGFyZSBsZXQgYWNlOiBhbnk7XHJcblxyXG4vLyBpbXBvcnQgeyBFZGl0b3JDb21wb25lbnQgfSBmcm9tICduZ3gtbW9uYWNvLWVkaXRvcic7XHJcbi8vIGltcG9ydCB7IEVkaXRvck9wdGlvbnMgfSBmcm9tIFwibmd4LW1vbmFjby1lZGl0b3JcIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiBcImFwcC16Y29kZWVkaXRvclwiLFxyXG4gIHRlbXBsYXRlVXJsOiBcIi4vemNvZGVlZGl0b3IuY29tcG9uZW50Lmh0bWxcIixcclxuICBzdHlsZVVybHM6IFtcIi4vemNvZGVlZGl0b3IuY29tcG9uZW50LnNjc3NcIl1cclxufSlcclxuZXhwb3J0IGNsYXNzIFpjb2RlZWRpdG9yQ29tcG9uZW50IGltcGxlbWVudHMgWkNvbXBvbmVudCwgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG4gIEBJbnB1dCgpIGRhdGE6IFpGaWVsZDtcclxuICBASW5wdXQoKSBncm91cDogWkdyb3VwO1xyXG4gIEBJbnB1dCgpIGZvcm06IEZvcm1Hcm91cDtcclxuICBjb2RlOiBzdHJpbmcgfCBzdHJpbmdbXSA9IFwiXCI7XHJcbiAgdGhlbWUgPSBcImVjbGlwc2VcIjtcclxuICBtb2RlID0gXCJqYXZhc2NyaXB0XCI7XHJcbiAgc3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XHJcbiAgY29tcG9uZW50UHJvcGVydGllcyA9IG5ldyBaQ29tcG9uZW50UHJvcGVydGllcygpO1xyXG4gIFxyXG4gIHByaXZhdGUgd2lkdGhSZWR1Y2U6IG51bWJlcjtcclxuICBwcml2YXRlIGhlaWdodFJlZHVjZTogbnVtYmVyO1xyXG5cclxuICBAVmlld0NoaWxkKFwiZWRpdG9yXCIpIGVkaXRvcjogQWNlRWRpdG9yQ29tcG9uZW50O1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHt9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgWkNvbXBvbmVudEhlbHBlci5zZXRDb21wb25lbnRQcm9wZXJ0aWVzKHRoaXMpO1xyXG4gICAgWkNvbXBvbmVudEhlbHBlci5yZWdpc3RlckNvbXBvbmVudCh0aGlzKTtcclxuXHJcbiAgICB0aGlzLndpZHRoUmVkdWNlID0gdGhpcy5kYXRhLldpZHRoUmVkdWNlIHx8IDYwO1xyXG4gICAgdGhpcy5oZWlnaHRSZWR1Y2UgPSB0aGlzLmRhdGEuSGVpZ2h0UmVkdWNlIHx8IDU2MDtcclxuXHJcbiAgICAvLyBjb25zdCBjb2RlVmFsdWUgPSB0aGlzLmdldFZhbHVlKCk7XHJcbiAgICAvLyBpZiAoY29kZVZhbHVlKSB7XHJcbiAgICAvLyAgIHRoaXMuY29kZSA9IGNvZGVWYWx1ZTtcclxuICAgIC8vIH1cclxuICAgIGlmICh0aGlzLmRhdGEuVHlwZSA9PT0gXCJ0ZXh0YXJlYWpzb25cIikge1xyXG4gICAgICB0aGlzLm1vZGUgPSBcImpzb25cIjtcclxuICAgIH0gZWxzZSBpZiAodGhpcy5kYXRhLlR5cGUgPT09IFwidGV4dGFyZWFodG1sXCIpIHtcclxuICAgICAgdGhpcy5tb2RlID0gXCJodG1sXCI7XHJcbiAgICB9XHJcbiAgICBjb25zb2xlLmxvZyhcInpjb2RlZWRpdG9yIE9uSW5pdFwiKTtcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCkge1xyXG4gICAgaWYgKHRoaXMuc3Vic2NyaXB0aW9uKSB7XHJcbiAgICAgIHRoaXMuc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vZnhtb250aWdueS9uZzItYWNlLWVkaXRvci9ibG9iL21hc3Rlci9zYW1wbGUvc3JjL2FwcC9hcHAuY29tcG9uZW50LnRzXHJcbiAgLy8gbmdBZnRlclZpZXdJbml0KCkge1xyXG4gIC8vICAgY29uc3QgUmFuZ2UgPSBhY2UucmVxdWlyZSgnYWNlL3JhbmdlJylbJ1JhbmdlJ107XHJcbiAgLy8gICB0aGlzLmVkaXRvclxyXG4gIC8vICAgICAuZ2V0RWRpdG9yKClcclxuICAvLyAgICAgLnNlc3Npb24uYWRkTWFya2VyKG5ldyBSYW5nZSgwLCAwLCAyLCAxKSwgJ215TWFya2VyJywgJ2Z1bGxMaW5lJyk7XHJcblxyXG4gIC8vICAgdGhpcy5lZGl0b3IuZ2V0RWRpdG9yKCkuc2Vzc2lvbi5zZXRPcHRpb24oJ3VzZVdvcmtlcicsIHRydWUpO1xyXG4gIC8vIH1cclxuXHJcbiAgZ2V0VmFsdWUoKSB7XHJcbiAgICBsZXQgdjtcclxuICAgIGlmICh0aGlzLmRhdGEuVmFsdWUuaW5kZXhPZignLicpICE9PSAtMSkge1xyXG4gICAgICB2ID0gdGhpcy5kYXRhLlZhbHVlO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdiA9IFwiZ3JvdXAuek1vZGVsLlwiICsgdGhpcy5kYXRhLlZhbHVlO1xyXG4gICAgfVxyXG4gICAgY29uc3QgZXZhbFZhbHVlID0gWkNvbXBvbmVudEhlbHBlci5nZXRFdmFsVmFsdWUuY2FsbCh0aGlzLCB2KTtcclxuICAgIGlmICh0eXBlb2YgZXZhbFZhbHVlID09PSAnZnVuY3Rpb24nKSB7XHJcbiAgICAgIGNvbnN0IG5leHRWYWx1ZSA9IGV2YWxWYWx1ZSgpO1xyXG4gICAgICBpZiAobmV4dFZhbHVlKSB7XHJcbiAgICAgICAgdHJ5IHtcclxuICAgICAgICAgIGNvbnN0IGV2YWxOZXh0VmFsdWUgPSBaQ29tcG9uZW50SGVscGVyLmdldEV2YWxWYWx1ZS5jYWxsKHRoaXMsIG5leHRWYWx1ZSwgdHJ1ZSk7XHJcbiAgICAgICAgICBpZiAodHlwZW9mIGV2YWxOZXh0VmFsdWUgPT09ICdib29sZWFuJykge1xyXG4gICAgICAgICAgICByZXR1cm4gZXZhbE5leHRWYWx1ZS50b1N0cmluZygpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgaWYgKGV2YWxOZXh0VmFsdWUgPT09IHVuZGVmaW5lZCkge1xyXG4gICAgICAgICAgICByZXR1cm4gJ3VuZGVmaW5lZCc7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBpZiAoZXZhbE5leHRWYWx1ZSA9PT0gbnVsbCkge1xyXG4gICAgICAgICAgICByZXR1cm4gJ251bGwnO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgcmV0dXJuIGV2YWxOZXh0VmFsdWU7XHJcbiAgICAgICAgfSBjYXRjaCB7XHJcbiAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHJldHVybjtcclxuICAgICAgfVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIGV2YWxWYWx1ZTtcclxuICAgIH1cclxuICAgIC8vIGlmICh0aGlzLmRhdGEuVHlwZSA9PT0gXCJ0ZXh0YXJlYWpzb25cIikge1xyXG4gICAgLy8gICBpZiAodHlwZW9mIGV2YWxWYWx1ZSA9PT0gXCJzdHJpbmdcIikge1xyXG4gICAgLy8gICAgIGNvbnN0IGpzb25WYWx1ZSA9IEpTT04ucGFyc2UoZXZhbFZhbHVlKTtcclxuICAgIC8vICAgICByZXR1cm4gSlNPTi5zdHJpbmdpZnkoanNvblZhbHVlLCBudWxsLCAyKTtcclxuICAgIC8vICAgfVxyXG4gICAgLy8gICBpZiAodHlwZW9mIGV2YWxWYWx1ZSA9PT0gXCJvYmplY3RcIiB8fCBBcnJheS5pc0FycmF5KGV2YWxWYWx1ZSkpIHtcclxuICAgIC8vICAgICByZXR1cm4gSlNPTi5zdHJpbmdpZnkoZXZhbFZhbHVlLCBudWxsLCAyKTtcclxuICAgIC8vICAgfVxyXG4gICAgLy8gfVxyXG4gICAgLy8gaWYgKHR5cGVvZiBldmFsVmFsdWUgPT09ICdzdHJpbmcnKSB7XHJcbiAgICAvLyAgIHJldHVybiBldmFsVmFsdWU7XHJcbiAgICAvLyB9XHJcbiAgICAvLyAvLyBkZWJ1Z2dlcjtcclxuICAgIC8vIGNvbnNvbGUud2FybihcclxuICAgIC8vICAgXCJ6Y29kZWVkaXRvciAtIEludmFsaWQgZmllbGQuVmFsdWUgKFwiICsgdGhpcy5kYXRhLlZhbHVlICsgXCIpIHNldHRpbmcgXCIsXHJcbiAgICAvLyAgIGV2YWxWYWx1ZVxyXG4gICAgLy8gKTtcclxuICAgIC8vIHJldHVybiBcIlwiO1xyXG4gIH1cclxuXHJcbiAgZ2V0RWRpdG9yU3R5bGUoKSB7XHJcbiAgICAvLyBkZWJ1Z2dlcjtcclxuICAgIC8vIHJldHVybiB7IFwiaGVpZ2h0LnB4XCI6IDUwMCwgXCJ3aWR0aC5weFwiOiB3aW5kb3cuaW5uZXJXaWR0aCAtIDYwIH07IC8vIFwid2lkdGgucHhcIjogdGhpcy5pbm5lcldpZHRoIC0gMjVcclxuICAgIHJldHVybiB7XHJcbiAgICAgIFwiaGVpZ2h0LnB4XCI6IHRoaXMuZ2V0RWRpdG9ySGVpZ2h0KCksXHJcbiAgICAgXCJ3aWR0aC5weFwiOiB3aW5kb3cuaW5uZXJXaWR0aCAtIHRoaXMud2lkdGhSZWR1Y2VcclxuICAgIH07XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldEVkaXRvckhlaWdodCgpIHtcclxuICAgIGNvbnN0IGggPSB3aW5kb3cuaW5uZXJIZWlnaHQgLSB0aGlzLmhlaWdodFJlZHVjZTtcclxuICAgIHJldHVybiAoaCA8IDE4MCkgPyAxODAgOiBoO1xyXG4gIH1cclxuXHJcbiAgb25UZXh0Q2hhbmdlKG5ld1ZhbHVlOiBhbnkpIHtcclxuICAgIGlmICh0aGlzLnN1YnNjcmlwdGlvbikge1xyXG4gICAgICB0aGlzLnN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xyXG4gICAgfVxyXG4gICAgLy8gY29uc29sZS5sb2coJ29uVGV4dENoYW5nZTogJywgbmV3VmFsdWUpO1xyXG4gICAgdGhpcy5zdWJzY3JpcHRpb24gPSBvZihbXSlcclxuICAgICAgLnBpcGUoZGVsYXkoNTAwKSlcclxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgWkNvbXBvbmVudEhlbHBlci5zZXRNb2RlbFZhbHVlKHRoaXMuZGF0YS5WYWx1ZSwgbmV3VmFsdWUsIHRoaXMuZ3JvdXAsIHRydWUpO1xyXG4gICAgICAgIHRoaXMuZ3JvdXAuc3ViamVjdC5uZXh0KHtcclxuICAgICAgICAgIHR5cGU6IFwiemNvZGVlZGl0b3ItVGV4dENoYW5nZWRcIixcclxuICAgICAgICAgIHRhcmdldDogdGhpcy5kYXRhLk9uQ2hhbmdlLFxyXG4gICAgICAgICAgZGF0YTogbmV3VmFsdWVcclxuICAgICAgICB9IGFzIFpDb21wb25lbnRPdXRwdXRFdmVudCk7XHJcbiAgICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHNldEVuYWJsZSA9IChzdGF0dXM6IGJvb2xlYW4pID0+IHtcclxuICAgIHRoaXMuY29tcG9uZW50UHJvcGVydGllcy5pc1JlYWRPbmx5ID0gIXN0YXR1cztcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzZXRWaXNpYmxlID0gKHN0YXR1czogYm9vbGVhbikgPT4ge1xyXG4gICAgdGhpcy5jb21wb25lbnRQcm9wZXJ0aWVzLmlzVmlzaWJsZSA9IHN0YXR1cztcclxuICAgIHRoaXMuZGF0YS5WaXNpYmxlID0gc3RhdHVzO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHNldFJlcXVpcmUgPSAoc3RhdHVzOiBib29sZWFuKSA9PiB7XHJcbiAgICB0aGlzLmNvbXBvbmVudFByb3BlcnRpZXMuaXNSZXF1aXJlZCA9IHN0YXR1cztcclxuICAgIFpDb21wb25lbnRIZWxwZXIuY2hhbmdlVmFsaWRhdG9yKHN0YXR1cywgdGhpcy5ncm91cCwgdGhpcy5kYXRhLlZhbHVlLCB0aGlzLmNvbXBvbmVudFByb3BlcnRpZXMsIFZhbGlkYXRvcnMucmVxdWlyZWQpO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -1,56 +0,0 @@
1
- /********** Angular **********/
2
- import { Pipe } from '@angular/core';
3
- /********** Ionic **********/
4
- /********** Plugin **********/
5
- /********** Component & Service **********/
6
- export class EditorFilter {
7
- transform(source) {
8
- if (!source) {
9
- return;
10
- }
11
- if (typeof source === "string") {
12
- try {
13
- const jsonValue = JSON.parse(source);
14
- return JSON.stringify(jsonValue, null, 2);
15
- // return this.safeStringify(jsonValue);
16
- }
17
- catch (_a) {
18
- return source;
19
- }
20
- }
21
- if (typeof source === "object" || Array.isArray(source)) {
22
- try {
23
- return JSON.stringify(source, null, 2);
24
- // return this.safeStringify(source);
25
- }
26
- catch (_b) {
27
- return "problem - [Circular structure to JSON]";
28
- }
29
- }
30
- }
31
- safeStringify(jsonValue) {
32
- // Note: cache should not be re-used by repeated calls to JSON.stringify.
33
- const cache = [];
34
- return JSON.stringify(jsonValue, (key, value) => {
35
- if (typeof value === 'object' && value !== null) {
36
- // Duplicate reference found, discard key
37
- if (cache.includes(value)) {
38
- // debugger;
39
- // return "problem - [Circular structure to JSON]";
40
- return;
41
- }
42
- // Store value in our collection
43
- cache.push(value);
44
- }
45
- return value;
46
- }, 2);
47
- // cache = null; // Enable garbage collection
48
- }
49
- }
50
- EditorFilter.decorators = [
51
- { type: Pipe, args: [{
52
- name: 'editorfilter',
53
- pure: false
54
- },] }
55
- ];
56
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiemNvZGVlZGl0b3IucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21taGdsb2JhbC1keW5hbWljZm9ybS9zcmMvbGliL3pjb2RlZWRpdG9yL3pjb2RlZWRpdG9yLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsK0JBQStCO0FBQy9CLE9BQU8sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBRXBELDZCQUE2QjtBQUU3Qiw4QkFBOEI7QUFFOUIsMkNBQTJDO0FBTzNDLE1BQU0sT0FBTyxZQUFZO0lBQ3JCLFNBQVMsQ0FBQyxNQUFXO1FBQ2pCLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDVCxPQUFPO1NBQ1Y7UUFDRCxJQUFJLE9BQU8sTUFBTSxLQUFLLFFBQVEsRUFBRTtZQUM1QixJQUFJO2dCQUNBLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7Z0JBQ3JDLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDO2dCQUMxQyx3Q0FBd0M7YUFDM0M7WUFBQyxXQUFNO2dCQUNKLE9BQU8sTUFBTSxDQUFDO2FBQ2pCO1NBQ0o7UUFDRCxJQUFJLE9BQU8sTUFBTSxLQUFLLFFBQVEsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUFFO1lBQ3JELElBQUk7Z0JBQ0EsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUM7Z0JBQ3ZDLHFDQUFxQzthQUN4QztZQUFDLFdBQU07Z0JBQ0osT0FBTyx3Q0FBd0MsQ0FBQzthQUNuRDtTQUNKO0lBRUwsQ0FBQztJQUVPLGFBQWEsQ0FBQyxTQUFjO1FBQ2hDLHlFQUF5RTtRQUN6RSxNQUFNLEtBQUssR0FBZSxFQUFFLENBQUM7UUFDN0IsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLFNBQVMsRUFBRSxDQUFDLEdBQUcsRUFBRSxLQUFLLEVBQUUsRUFBRTtZQUM1QyxJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsSUFBSSxLQUFLLEtBQUssSUFBSSxFQUFFO2dCQUM3Qyx5Q0FBeUM7Z0JBQ3pDLElBQUksS0FBSyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsRUFBRTtvQkFDdkIsWUFBWTtvQkFDWixtREFBbUQ7b0JBQ25ELE9BQU87aUJBQ1Y7Z0JBQ0QsZ0NBQWdDO2dCQUNoQyxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO2FBQ3JCO1lBQ0QsT0FBTyxLQUFLLENBQUM7UUFDakIsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ04sNkNBQTZDO0lBQ2pELENBQUM7OztZQTlDSixJQUFJLFNBQUM7Z0JBQ0YsSUFBSSxFQUFFLGNBQWM7Z0JBQ3BCLElBQUksRUFBRSxLQUFLO2FBQ2QiLCJzb3VyY2VzQ29udGVudCI6WyIvKioqKioqKioqKiBBbmd1bGFyICoqKioqKioqKiovXHJcbmltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbi8qKioqKioqKioqIElvbmljICoqKioqKioqKiovXHJcblxyXG4vKioqKioqKioqKiBQbHVnaW4gKioqKioqKioqKi9cclxuXHJcbi8qKioqKioqKioqIENvbXBvbmVudCAmIFNlcnZpY2UgKioqKioqKioqKi9cclxuXHJcblxyXG5AUGlwZSh7XHJcbiAgICBuYW1lOiAnZWRpdG9yZmlsdGVyJyxcclxuICAgIHB1cmU6IGZhbHNlXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBFZGl0b3JGaWx0ZXIgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcclxuICAgIHRyYW5zZm9ybShzb3VyY2U6IGFueSk6IGFueSB7XHJcbiAgICAgICAgaWYgKCFzb3VyY2UpIHtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAodHlwZW9mIHNvdXJjZSA9PT0gXCJzdHJpbmdcIikge1xyXG4gICAgICAgICAgICB0cnkge1xyXG4gICAgICAgICAgICAgICAgY29uc3QganNvblZhbHVlID0gSlNPTi5wYXJzZShzb3VyY2UpO1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KGpzb25WYWx1ZSwgbnVsbCwgMik7XHJcbiAgICAgICAgICAgICAgICAvLyByZXR1cm4gdGhpcy5zYWZlU3RyaW5naWZ5KGpzb25WYWx1ZSk7XHJcbiAgICAgICAgICAgIH0gY2F0Y2gge1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHNvdXJjZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAodHlwZW9mIHNvdXJjZSA9PT0gXCJvYmplY3RcIiB8fCBBcnJheS5pc0FycmF5KHNvdXJjZSkpIHtcclxuICAgICAgICAgICAgdHJ5IHtcclxuICAgICAgICAgICAgICAgIHJldHVybiBKU09OLnN0cmluZ2lmeShzb3VyY2UsIG51bGwsIDIpO1xyXG4gICAgICAgICAgICAgICAgLy8gcmV0dXJuIHRoaXMuc2FmZVN0cmluZ2lmeShzb3VyY2UpO1xyXG4gICAgICAgICAgICB9IGNhdGNoIHtcclxuICAgICAgICAgICAgICAgIHJldHVybiBcInByb2JsZW0gLSBbQ2lyY3VsYXIgc3RydWN0dXJlIHRvIEpTT05dXCI7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgc2FmZVN0cmluZ2lmeShqc29uVmFsdWU6IGFueSkge1xyXG4gICAgICAgIC8vIE5vdGU6IGNhY2hlIHNob3VsZCBub3QgYmUgcmUtdXNlZCBieSByZXBlYXRlZCBjYWxscyB0byBKU09OLnN0cmluZ2lmeS5cclxuICAgICAgICBjb25zdCBjYWNoZTogQXJyYXk8YW55PiA9IFtdO1xyXG4gICAgICAgIHJldHVybiBKU09OLnN0cmluZ2lmeShqc29uVmFsdWUsIChrZXksIHZhbHVlKSA9PiB7XHJcbiAgICAgICAgICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICdvYmplY3QnICYmIHZhbHVlICE9PSBudWxsKSB7XHJcbiAgICAgICAgICAgICAgICAvLyBEdXBsaWNhdGUgcmVmZXJlbmNlIGZvdW5kLCBkaXNjYXJkIGtleVxyXG4gICAgICAgICAgICAgICAgaWYgKGNhY2hlLmluY2x1ZGVzKHZhbHVlKSkge1xyXG4gICAgICAgICAgICAgICAgICAgIC8vIGRlYnVnZ2VyO1xyXG4gICAgICAgICAgICAgICAgICAgIC8vIHJldHVybiBcInByb2JsZW0gLSBbQ2lyY3VsYXIgc3RydWN0dXJlIHRvIEpTT05dXCI7XHJcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLy8gU3RvcmUgdmFsdWUgaW4gb3VyIGNvbGxlY3Rpb25cclxuICAgICAgICAgICAgICAgIGNhY2hlLnB1c2godmFsdWUpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHJldHVybiB2YWx1ZTtcclxuICAgICAgICB9LCAyKTtcclxuICAgICAgICAvLyBjYWNoZSA9IG51bGw7IC8vIEVuYWJsZSBnYXJiYWdlIGNvbGxlY3Rpb25cclxuICAgIH1cclxufSJdfQ==
@@ -1,63 +0,0 @@
1
- /********** Angular **********/
2
- import { Component, Input, ViewChild } from '@angular/core';
3
- import { Validators } from '@angular/forms';
4
- /********** Component & Service **********/
5
- import { ZComponentProperties, ZComponentHelper } from 'mmhglobal-zcore';
6
- export class ZdaterangeComponent {
7
- constructor() {
8
- // @ViewChild('endDateInput', { static: true }) public endInput: ElementRef;
9
- this.range = { start: null, end: null };
10
- this.componentProperties = new ZComponentProperties();
11
- this.setEnable = (status) => {
12
- this.componentProperties.isReadOnly = !status;
13
- };
14
- this.setVisible = (status) => {
15
- this.componentProperties.isVisible = status;
16
- this.data.Visible = status;
17
- };
18
- this.setRequire = (status) => {
19
- this.componentProperties.isRequired = status;
20
- ZComponentHelper.changeValidator(status, this.group, this.data.Value, this.componentProperties, Validators.required);
21
- };
22
- }
23
- ngOnInit() {
24
- ZComponentHelper.setComponentProperties(this);
25
- ZComponentHelper.registerComponent(this);
26
- const rangeDateArray = this.data.Value.split(',');
27
- const fromDateString = rangeDateArray[0].trim();
28
- const toDateString = rangeDateArray[1].trim();
29
- const fromDate = ZComponentHelper.getGroupEvalValue.call(this, fromDateString);
30
- const toDate = ZComponentHelper.getGroupEvalValue.call(this, toDateString);
31
- // this.range = {
32
- // start: fromDate,
33
- // end: toDate
34
- // }
35
- const options = ZComponentHelper.getGroupEvalValue.call(this, this.data.Options);
36
- if (options) {
37
- if (options.min && options.max) {
38
- this.setNewRange(new Date(options.min), new Date(options.max));
39
- }
40
- }
41
- }
42
- setNewRange(min, max) {
43
- this.zdaterange.setRange({
44
- start: min,
45
- end: max
46
- });
47
- }
48
- }
49
- ZdaterangeComponent.decorators = [
50
- { type: Component, args: [{
51
- selector: 'app-zdaterange',
52
- template: "<ion-item [formGroup]=\"form\" *ngIf=\"(!!componentProperties.isVisibleField ? group[componentProperties.isVisibleField] : componentProperties.isVisible)\">\r\n <ion-label [attr.for]=\"data.Value\" *ngIf=\"data.ShowLabel === undefined || data.ShowLabel\" position=\"stacked\">\r\n {{data.Label}} <ion-text *ngIf=\"(!!componentProperties.isRequiredField ? group[componentProperties.isRequiredField] : componentProperties.isRequired)\" color=\"danger\">*</ion-text>\r\n </ion-label>\r\n <div class=\"ion-row\" style=\"justify-content: space-between; width: 100%\">\r\n <span style=\"flex: 1;\">\r\n <kendo-daterange #zdaterange class=\"ion-row\">\r\n <!-- <label style=\"flex: 1;\"> -->\r\n <!-- <span class=\"label\">Start</span> -->\r\n <kendo-dateinput style=\"flex: 1;\" kendoDateRangeStartInput [(value)]=\"range.start\" \r\n [attr.disabled]=\"(!!componentProperties.isReadOnlyField ? group[componentProperties.isReadOnlyField] : componentProperties.isReadOnly)\"></kendo-dateinput>\r\n <!-- </label> -->\r\n <!-- <label style=\"flex: 1;\"> -->\r\n <!-- <span class=\"label\">End</span> -->\r\n <!-- <kendo-dateinput style=\"flex: 1;\" kendoDateRangeEndInput [(value)]=\"range.end\"></kendo-dateinput> -->\r\n <!-- </label> -->\r\n\r\n <kendo-daterange-popup [animate]=\"false\"></kendo-daterange-popup>\r\n </kendo-daterange>\r\n </span>\r\n <app-uivalidationmessage [group]=\"group\" [data]=\"data\" [form]=\"form\"></app-uivalidationmessage>\r\n </div>\r\n</ion-item>",
53
- styles: [".item.sc-ion-label-md-h,.item .sc-ion-label-md-h{font-weight:var(--z-label-weight);color:var(--z-label-color);text-shadow:var(--z-label-shadow)}.k-dateinput{color:var(--z-text-color)}"]
54
- },] }
55
- ];
56
- ZdaterangeComponent.ctorParameters = () => [];
57
- ZdaterangeComponent.propDecorators = {
58
- data: [{ type: Input }],
59
- group: [{ type: Input }],
60
- form: [{ type: Input }],
61
- zdaterange: [{ type: ViewChild, args: ['zdaterange',] }]
62
- };
63
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiemRhdGVyYW5nZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tbWhnbG9iYWwtZHluYW1pY2Zvcm0vc3JjL2xpYi96ZGF0ZXJhbmdlL3pkYXRlcmFuZ2UuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLCtCQUErQjtBQUMvQixPQUFPLEVBQUUsU0FBUyxFQUFVLEtBQUssRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDcEUsT0FBTyxFQUFhLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBT3ZELDJDQUEyQztBQUMzQyxPQUFPLEVBQ1csb0JBQW9CLEVBQ3hCLGdCQUFnQixFQUM3QixNQUFNLGlCQUFpQixDQUFDO0FBUXpCLE1BQU0sT0FBTyxtQkFBbUI7SUFTOUI7UUFKQSw0RUFBNEU7UUFDNUUsVUFBSyxHQUE4QixFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBQyxDQUFDO1FBQzdELHdCQUFtQixHQUFHLElBQUksb0JBQW9CLEVBQUUsQ0FBQztRQW9DMUMsY0FBUyxHQUFHLENBQUMsTUFBZSxFQUFFLEVBQUU7WUFDckMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLFVBQVUsR0FBRyxDQUFDLE1BQU0sQ0FBQztRQUNoRCxDQUFDLENBQUE7UUFFTSxlQUFVLEdBQUcsQ0FBQyxNQUFlLEVBQUUsRUFBRTtZQUN0QyxJQUFJLENBQUMsbUJBQW1CLENBQUMsU0FBUyxHQUFHLE1BQU0sQ0FBQztZQUM1QyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUM7UUFDN0IsQ0FBQyxDQUFBO1FBRU0sZUFBVSxHQUFHLENBQUMsTUFBZSxFQUFFLEVBQUU7WUFDdEMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLFVBQVUsR0FBRyxNQUFNLENBQUM7WUFDN0MsZ0JBQWdCLENBQUMsZUFBZSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDdkgsQ0FBQyxDQUFBO0lBOUNlLENBQUM7SUFFakIsUUFBUTtRQUNOLGdCQUFnQixDQUFDLHNCQUFzQixDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzlDLGdCQUFnQixDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxDQUFDO1FBRXpDLE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNsRCxNQUFNLGNBQWMsR0FBRyxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDaEQsTUFBTSxZQUFZLEdBQUcsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO1FBRTlDLE1BQU0sUUFBUSxHQUFHLGdCQUFnQixDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsY0FBYyxDQUFDLENBQUM7UUFDL0UsTUFBTSxNQUFNLEdBQUcsZ0JBQWdCLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxZQUFZLENBQUMsQ0FBQztRQUMzRSxpQkFBaUI7UUFDakIscUJBQXFCO1FBQ3JCLGdCQUFnQjtRQUNoQixJQUFJO1FBR0osTUFBTSxPQUFPLEdBQUcsZ0JBQWdCLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2pGLElBQUksT0FBTyxFQUFFO1lBQ1gsSUFBSSxPQUFPLENBQUMsR0FBRyxJQUFJLE9BQU8sQ0FBQyxHQUFHLEVBQUU7Z0JBQzlCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFFLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO2FBQ2hFO1NBQ0Y7SUFFSCxDQUFDO0lBRUQsV0FBVyxDQUFDLEdBQVMsRUFBRSxHQUFTO1FBQzlCLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDO1lBQ3ZCLEtBQUssRUFBRSxHQUFHO1lBQ1YsR0FBRyxFQUFFLEdBQUc7U0FDVCxDQUFDLENBQUM7SUFDTCxDQUFDOzs7WUE5Q0YsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxnQkFBZ0I7Z0JBQzFCLDZpREFBMEM7O2FBRTNDOzs7O21CQUVFLEtBQUs7b0JBQ0wsS0FBSzttQkFDTCxLQUFLO3lCQUNMLFNBQVMsU0FBQyxZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiLyoqKioqKioqKiogQW5ndWxhciAqKioqKioqKioqL1xyXG5pbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgSW5wdXQsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGb3JtR3JvdXAsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcblxyXG4vKioqKioqKioqKiBJb25pYyAqKioqKioqKioqL1xyXG5cclxuLyoqKioqKioqKiogUGx1Z2luICoqKioqKioqKiovXHJcbmltcG9ydCB7IERhdGVSYW5nZVNlcnZpY2UgfSBmcm9tICdAcHJvZ3Jlc3Mva2VuZG8tYW5ndWxhci1kYXRlaW5wdXRzJztcclxuXHJcbi8qKioqKioqKioqIENvbXBvbmVudCAmIFNlcnZpY2UgKioqKioqKioqKi9cclxuaW1wb3J0IHsgXHJcbiAgWkZpZWxkLCBaR3JvdXAsIFpDb21wb25lbnRQcm9wZXJ0aWVzLFxyXG4gIFpDb21wb25lbnQsIFpDb21wb25lbnRIZWxwZXIgXHJcbn0gZnJvbSAnbW1oZ2xvYmFsLXpjb3JlJztcclxuXHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC16ZGF0ZXJhbmdlJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vemRhdGVyYW5nZS5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vemRhdGVyYW5nZS5jb21wb25lbnQuc2NzcyddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgWmRhdGVyYW5nZUNvbXBvbmVudCBpbXBsZW1lbnRzIFpDb21wb25lbnQsIE9uSW5pdCB7XHJcbiAgQElucHV0KCkgZGF0YTogWkZpZWxkO1xyXG4gIEBJbnB1dCgpIGdyb3VwOiBaR3JvdXA7XHJcbiAgQElucHV0KCkgZm9ybTogRm9ybUdyb3VwO1xyXG4gIEBWaWV3Q2hpbGQoJ3pkYXRlcmFuZ2UnKSBwdWJsaWMgemRhdGVyYW5nZTogRGF0ZVJhbmdlU2VydmljZTtcclxuICAvLyBAVmlld0NoaWxkKCdlbmREYXRlSW5wdXQnLCB7IHN0YXRpYzogdHJ1ZSB9KSBwdWJsaWMgZW5kSW5wdXQ6IEVsZW1lbnRSZWY7XHJcbiAgcmFuZ2U6IHsgc3RhcnQ6IERhdGUsIGVuZDogRGF0ZX0gPSB7IHN0YXJ0OiBudWxsLCBlbmQ6IG51bGx9O1xyXG4gIGNvbXBvbmVudFByb3BlcnRpZXMgPSBuZXcgWkNvbXBvbmVudFByb3BlcnRpZXMoKTtcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7IH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICBaQ29tcG9uZW50SGVscGVyLnNldENvbXBvbmVudFByb3BlcnRpZXModGhpcyk7XHJcbiAgICBaQ29tcG9uZW50SGVscGVyLnJlZ2lzdGVyQ29tcG9uZW50KHRoaXMpO1xyXG5cclxuICAgIGNvbnN0IHJhbmdlRGF0ZUFycmF5ID0gdGhpcy5kYXRhLlZhbHVlLnNwbGl0KCcsJyk7XHJcbiAgICBjb25zdCBmcm9tRGF0ZVN0cmluZyA9IHJhbmdlRGF0ZUFycmF5WzBdLnRyaW0oKTtcclxuICAgIGNvbnN0IHRvRGF0ZVN0cmluZyA9IHJhbmdlRGF0ZUFycmF5WzFdLnRyaW0oKTtcclxuICBcclxuICAgIGNvbnN0IGZyb21EYXRlID0gWkNvbXBvbmVudEhlbHBlci5nZXRHcm91cEV2YWxWYWx1ZS5jYWxsKHRoaXMsIGZyb21EYXRlU3RyaW5nKTtcclxuICAgIGNvbnN0IHRvRGF0ZSA9IFpDb21wb25lbnRIZWxwZXIuZ2V0R3JvdXBFdmFsVmFsdWUuY2FsbCh0aGlzLCB0b0RhdGVTdHJpbmcpO1xyXG4gICAgLy8gdGhpcy5yYW5nZSA9IHtcclxuICAgIC8vICAgc3RhcnQ6IGZyb21EYXRlLFxyXG4gICAgLy8gICBlbmQ6IHRvRGF0ZVxyXG4gICAgLy8gfVxyXG5cclxuXHJcbiAgICBjb25zdCBvcHRpb25zID0gWkNvbXBvbmVudEhlbHBlci5nZXRHcm91cEV2YWxWYWx1ZS5jYWxsKHRoaXMsIHRoaXMuZGF0YS5PcHRpb25zKTtcclxuICAgIGlmIChvcHRpb25zKSB7XHJcbiAgICAgIGlmIChvcHRpb25zLm1pbiAmJiBvcHRpb25zLm1heCkge1xyXG4gICAgICAgIHRoaXMuc2V0TmV3UmFuZ2UobmV3IERhdGUob3B0aW9ucy5taW4pLCBuZXcgRGF0ZShvcHRpb25zLm1heCkpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gIH1cclxuXHJcbiAgc2V0TmV3UmFuZ2UobWluOiBEYXRlLCBtYXg6IERhdGUpIHtcclxuICAgIHRoaXMuemRhdGVyYW5nZS5zZXRSYW5nZSh7XHJcbiAgICAgIHN0YXJ0OiBtaW4sXHJcbiAgICAgIGVuZDogbWF4XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzZXRFbmFibGUgPSAoc3RhdHVzOiBib29sZWFuKSA9PiB7XHJcbiAgICB0aGlzLmNvbXBvbmVudFByb3BlcnRpZXMuaXNSZWFkT25seSA9ICFzdGF0dXM7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc2V0VmlzaWJsZSA9IChzdGF0dXM6IGJvb2xlYW4pID0+IHtcclxuICAgIHRoaXMuY29tcG9uZW50UHJvcGVydGllcy5pc1Zpc2libGUgPSBzdGF0dXM7XHJcbiAgICB0aGlzLmRhdGEuVmlzaWJsZSA9IHN0YXR1cztcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzZXRSZXF1aXJlID0gKHN0YXR1czogYm9vbGVhbikgPT4ge1xyXG4gICAgdGhpcy5jb21wb25lbnRQcm9wZXJ0aWVzLmlzUmVxdWlyZWQgPSBzdGF0dXM7XHJcbiAgICBaQ29tcG9uZW50SGVscGVyLmNoYW5nZVZhbGlkYXRvcihzdGF0dXMsIHRoaXMuZ3JvdXAsIHRoaXMuZGF0YS5WYWx1ZSwgdGhpcy5jb21wb25lbnRQcm9wZXJ0aWVzLCBWYWxpZGF0b3JzLnJlcXVpcmVkKTtcclxuICB9XHJcblxyXG59XHJcbiJdfQ==
@@ -1,26 +0,0 @@
1
- import { Pipe } from "@angular/core";
2
- export class DateParserFilter {
3
- transform(items) {
4
- // debugger;
5
- if (!items) {
6
- return items;
7
- }
8
- // filter items array, items which match and return true will be
9
- // kept, false will be filtered out
10
- try {
11
- const d = new Date(items);
12
- return d;
13
- }
14
- catch (error) {
15
- console.log("DateParserFilter error: ", error);
16
- return null;
17
- }
18
- }
19
- }
20
- DateParserFilter.decorators = [
21
- { type: Pipe, args: [{
22
- name: "dateParser",
23
- pure: true,
24
- },] }
25
- ];
26
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZVBhcnNlci5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbW1oZ2xvYmFsLWR5bmFtaWNmb3JtL3NyYy9saWIvemRhdGV0aW1lL2RhdGVQYXJzZXIucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQU1wRCxNQUFNLE9BQU8sZ0JBQWdCO0lBQzNCLFNBQVMsQ0FBQyxLQUFVO1FBQ2xCLFlBQVk7UUFDWixJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ1YsT0FBTyxLQUFLLENBQUM7U0FDZDtRQUNELGdFQUFnRTtRQUNoRSxtQ0FBbUM7UUFDbkMsSUFBSTtZQUNGLE1BQU0sQ0FBQyxHQUFHLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQzFCLE9BQU8sQ0FBQyxDQUFDO1NBQ1Y7UUFBQyxPQUFPLEtBQUssRUFBRTtZQUNkLE9BQU8sQ0FBQyxHQUFHLENBQUMsMEJBQTBCLEVBQUUsS0FBSyxDQUFDLENBQUM7WUFDL0MsT0FBTyxJQUFJLENBQUM7U0FDYjtJQUNILENBQUM7OztZQW5CRixJQUFJLFNBQUM7Z0JBQ0osSUFBSSxFQUFFLFlBQVk7Z0JBQ2xCLElBQUksRUFBRSxJQUFJO2FBQ1giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuXHJcbkBQaXBlKHtcclxuICBuYW1lOiBcImRhdGVQYXJzZXJcIixcclxuICBwdXJlOiB0cnVlLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgRGF0ZVBhcnNlckZpbHRlciBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xyXG4gIHRyYW5zZm9ybShpdGVtczogYW55KTogYW55IHtcclxuICAgIC8vIGRlYnVnZ2VyO1xyXG4gICAgaWYgKCFpdGVtcykge1xyXG4gICAgICByZXR1cm4gaXRlbXM7XHJcbiAgICB9XHJcbiAgICAvLyBmaWx0ZXIgaXRlbXMgYXJyYXksIGl0ZW1zIHdoaWNoIG1hdGNoIGFuZCByZXR1cm4gdHJ1ZSB3aWxsIGJlXHJcbiAgICAvLyBrZXB0LCBmYWxzZSB3aWxsIGJlIGZpbHRlcmVkIG91dFxyXG4gICAgdHJ5IHtcclxuICAgICAgY29uc3QgZCA9IG5ldyBEYXRlKGl0ZW1zKTtcclxuICAgICAgcmV0dXJuIGQ7XHJcbiAgICB9IGNhdGNoIChlcnJvcikge1xyXG4gICAgICBjb25zb2xlLmxvZyhcIkRhdGVQYXJzZXJGaWx0ZXIgZXJyb3I6IFwiLCBlcnJvcik7XHJcbiAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iXX0=