@qbs-origin/origin-form 0.5.0

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 (182) hide show
  1. package/README.md +24 -0
  2. package/esm2022/lib/action-step-handler.mjs +163 -0
  3. package/esm2022/lib/auth-client.service.mjs +69 -0
  4. package/esm2022/lib/enums/label.keys.mjs +721 -0
  5. package/esm2022/lib/form-css.helper.mjs +367 -0
  6. package/esm2022/lib/formly/baseFormlyControlComponent.mjs +52 -0
  7. package/esm2022/lib/formly/baseFormlyStepComponent.mjs +59 -0
  8. package/esm2022/lib/formly/custom-section-separator.component.mjs +32 -0
  9. package/esm2022/lib/formly/form-section-separator.component.mjs +36 -0
  10. package/esm2022/lib/formly/formly-action.mjs +56 -0
  11. package/esm2022/lib/formly/formly-checkbox/formly-checkbox.component.mjs +52 -0
  12. package/esm2022/lib/formly/formly-dictionary-dropdown-tree/formly-dictionary-dropdown-tree.component.mjs +261 -0
  13. package/esm2022/lib/formly/formly-download-documents/formly-download-documents.component.mjs +126 -0
  14. package/esm2022/lib/formly/formly-enrol-card/formly-enrol-card.component.mjs +120 -0
  15. package/esm2022/lib/formly/formly-field-stepper/formly-field-stepper.component.mjs +762 -0
  16. package/esm2022/lib/formly/formly-generate-documents/formly-generate-documents.component.mjs +57 -0
  17. package/esm2022/lib/formly/formly-identification.component.mjs +84 -0
  18. package/esm2022/lib/formly/formly-open-banking/formly-open-banking.component.mjs +590 -0
  19. package/esm2022/lib/formly/formly-paragraph/formly-paragraph.component.mjs +35 -0
  20. package/esm2022/lib/formly/formly-radio/formly-radio-component.mjs +49 -0
  21. package/esm2022/lib/formly/formly-row-fille.mjs +12 -0
  22. package/esm2022/lib/formly/formly-scan-id/formly-scan-id.component.mjs +284 -0
  23. package/esm2022/lib/formly/formly-sign/formly-sign.component.mjs +173 -0
  24. package/esm2022/lib/formly/formly-upload-documents/formly-upload-documents.component.mjs +198 -0
  25. package/esm2022/lib/formly/formly-validate-contact-info/formly-validate-contact-info.component.mjs +124 -0
  26. package/esm2022/lib/formly/formly-view-documents/formly-view-documents.component.mjs +245 -0
  27. package/esm2022/lib/formly/formly-view-offers/formly-view-offers.component.mjs +160 -0
  28. package/esm2022/lib/model-population.helper.mjs +265 -0
  29. package/esm2022/lib/models/application-type.model.mjs +12 -0
  30. package/esm2022/lib/models/application.model.mjs +30 -0
  31. package/esm2022/lib/models/auth/users.model.mjs +2 -0
  32. package/esm2022/lib/models/dictionary.model.mjs +20 -0
  33. package/esm2022/lib/models/flux.model.mjs +105 -0
  34. package/esm2022/lib/models/forms.model.mjs +572 -0
  35. package/esm2022/lib/models/label-info.model.mjs +2 -0
  36. package/esm2022/lib/models/label.model.mjs +2 -0
  37. package/esm2022/lib/models/language.model.mjs +3 -0
  38. package/esm2022/lib/models/list.model.mjs +2 -0
  39. package/esm2022/lib/models/partner.model.mjs +3 -0
  40. package/esm2022/lib/models/treeview.model.mjs +15 -0
  41. package/esm2022/lib/origin-form-auth.service.mjs +40 -0
  42. package/esm2022/lib/origin-form-config.model.mjs +2 -0
  43. package/esm2022/lib/origin-form-token.interceptor.mjs +35 -0
  44. package/esm2022/lib/origin-form.component.mjs +2391 -0
  45. package/esm2022/lib/origin-form.module.mjs +479 -0
  46. package/esm2022/lib/origin-form.service.mjs +14 -0
  47. package/esm2022/lib/others/check-list.database.mjs +55 -0
  48. package/esm2022/lib/others/config-service.mjs +42 -0
  49. package/esm2022/lib/others/dictionary-label-info.mjs +3 -0
  50. package/esm2022/lib/others/environment-type.mjs +21 -0
  51. package/esm2022/lib/others/external-link.directive.mjs +49 -0
  52. package/esm2022/lib/others/flux-helper.mjs +1397 -0
  53. package/esm2022/lib/others/picker.component.mjs +119 -0
  54. package/esm2022/lib/others/translation.pipe.mjs +21 -0
  55. package/esm2022/lib/others/translations-helper.mjs +258 -0
  56. package/esm2022/lib/others/utils.mjs +272 -0
  57. package/esm2022/lib/services/applicationData.service.mjs +145 -0
  58. package/esm2022/lib/services/auth-http.service.mjs +80 -0
  59. package/esm2022/lib/services/dialog.service.mjs +56 -0
  60. package/esm2022/lib/services/dictionary.service.mjs +198 -0
  61. package/esm2022/lib/services/forms.service.mjs +47 -0
  62. package/esm2022/lib/services/labels.service.mjs +29 -0
  63. package/esm2022/lib/services/language.service.mjs +24 -0
  64. package/esm2022/lib/services/open-banking.service.mjs +194 -0
  65. package/esm2022/lib/services/origin-form-signalr-handler.service.mjs +107 -0
  66. package/esm2022/lib/services/origin-form-signalr.service.mjs +105 -0
  67. package/esm2022/lib/services/otp.service.mjs +28 -0
  68. package/esm2022/lib/services/proxy.service.mjs +79 -0
  69. package/esm2022/lib/services/scroll-to-error.service.mjs +369 -0
  70. package/esm2022/lib/services/translation.service.mjs +27 -0
  71. package/esm2022/lib/shared-components/confirmation.component.mjs +34 -0
  72. package/esm2022/lib/shared-components/dictionaries-tree.component.mjs +301 -0
  73. package/esm2022/lib/shared-components/grid.component.mjs +241 -0
  74. package/esm2022/lib/shared-components/treeview/treeview.component.mjs +224 -0
  75. package/esm2022/lib/theme-css.mjs +2254 -0
  76. package/esm2022/lib/theme-injector.service.mjs +26 -0
  77. package/esm2022/public-api.mjs +4 -0
  78. package/esm2022/qbs-origin-origin-form.mjs +5 -0
  79. package/fesm2022/qbs-origin-origin-form.mjs +15215 -0
  80. package/fesm2022/qbs-origin-origin-form.mjs.map +1 -0
  81. package/index.d.ts +5 -0
  82. package/lib/action-step-handler.d.ts +49 -0
  83. package/lib/auth-client.service.d.ts +17 -0
  84. package/lib/enums/label.keys.d.ts +720 -0
  85. package/lib/form-css.helper.d.ts +28 -0
  86. package/lib/formly/baseFormlyControlComponent.d.ts +25 -0
  87. package/lib/formly/baseFormlyStepComponent.d.ts +29 -0
  88. package/lib/formly/custom-section-separator.component.d.ts +6 -0
  89. package/lib/formly/form-section-separator.component.d.ts +10 -0
  90. package/lib/formly/formly-action.d.ts +13 -0
  91. package/lib/formly/formly-checkbox/formly-checkbox.component.d.ts +15 -0
  92. package/lib/formly/formly-dictionary-dropdown-tree/formly-dictionary-dropdown-tree.component.d.ts +45 -0
  93. package/lib/formly/formly-download-documents/formly-download-documents.component.d.ts +22 -0
  94. package/lib/formly/formly-enrol-card/formly-enrol-card.component.d.ts +114 -0
  95. package/lib/formly/formly-field-stepper/formly-field-stepper.component.d.ts +79 -0
  96. package/lib/formly/formly-generate-documents/formly-generate-documents.component.d.ts +17 -0
  97. package/lib/formly/formly-identification.component.d.ts +19 -0
  98. package/lib/formly/formly-open-banking/formly-open-banking.component.d.ts +119 -0
  99. package/lib/formly/formly-paragraph/formly-paragraph.component.d.ts +10 -0
  100. package/lib/formly/formly-radio/formly-radio-component.d.ts +15 -0
  101. package/lib/formly/formly-row-fille.d.ts +6 -0
  102. package/lib/formly/formly-scan-id/formly-scan-id.component.d.ts +41 -0
  103. package/lib/formly/formly-sign/formly-sign.component.d.ts +36 -0
  104. package/lib/formly/formly-upload-documents/formly-upload-documents.component.d.ts +25 -0
  105. package/lib/formly/formly-validate-contact-info/formly-validate-contact-info.component.d.ts +79 -0
  106. package/lib/formly/formly-view-documents/formly-view-documents.component.d.ts +33 -0
  107. package/lib/formly/formly-view-offers/formly-view-offers.component.d.ts +23 -0
  108. package/lib/model-population.helper.d.ts +8 -0
  109. package/lib/models/application-type.model.d.ts +27 -0
  110. package/lib/models/application.model.d.ts +107 -0
  111. package/lib/models/auth/users.model.d.ts +20 -0
  112. package/lib/models/dictionary.model.d.ts +77 -0
  113. package/lib/models/flux.model.d.ts +101 -0
  114. package/lib/models/forms.model.d.ts +504 -0
  115. package/lib/models/label-info.model.d.ts +10 -0
  116. package/lib/models/label.model.d.ts +4 -0
  117. package/lib/models/language.model.d.ts +5 -0
  118. package/lib/models/list.model.d.ts +8 -0
  119. package/lib/models/partner.model.d.ts +12 -0
  120. package/lib/models/treeview.model.d.ts +17 -0
  121. package/lib/origin-form-auth.service.d.ts +15 -0
  122. package/lib/origin-form-config.model.d.ts +12 -0
  123. package/lib/origin-form-token.interceptor.d.ts +12 -0
  124. package/lib/origin-form.component.d.ts +231 -0
  125. package/lib/origin-form.module.d.ts +84 -0
  126. package/lib/origin-form.service.d.ts +6 -0
  127. package/lib/others/check-list.database.d.ts +16 -0
  128. package/lib/others/config-service.d.ts +22 -0
  129. package/lib/others/dictionary-label-info.d.ts +6 -0
  130. package/lib/others/environment-type.d.ts +8 -0
  131. package/lib/others/external-link.directive.d.ts +12 -0
  132. package/lib/others/flux-helper.d.ts +115 -0
  133. package/lib/others/picker.component.d.ts +36 -0
  134. package/lib/others/translation.pipe.d.ts +10 -0
  135. package/lib/others/translations-helper.d.ts +31 -0
  136. package/lib/others/utils.d.ts +37 -0
  137. package/lib/services/applicationData.service.d.ts +35 -0
  138. package/lib/services/auth-http.service.d.ts +21 -0
  139. package/lib/services/dialog.service.d.ts +20 -0
  140. package/lib/services/dictionary.service.d.ts +89 -0
  141. package/lib/services/forms.service.d.ts +17 -0
  142. package/lib/services/labels.service.d.ts +13 -0
  143. package/lib/services/language.service.d.ts +14 -0
  144. package/lib/services/open-banking.service.d.ts +137 -0
  145. package/lib/services/origin-form-signalr-handler.service.d.ts +29 -0
  146. package/lib/services/origin-form-signalr.service.d.ts +24 -0
  147. package/lib/services/otp.service.d.ts +22 -0
  148. package/lib/services/proxy.service.d.ts +29 -0
  149. package/lib/services/scroll-to-error.service.d.ts +54 -0
  150. package/lib/services/translation.service.d.ts +10 -0
  151. package/lib/shared-components/confirmation.component.d.ts +77 -0
  152. package/lib/shared-components/dictionaries-tree.component.d.ts +51 -0
  153. package/lib/shared-components/grid.component.d.ts +138 -0
  154. package/lib/shared-components/treeview/treeview.component.d.ts +121 -0
  155. package/lib/theme-css.d.ts +2 -0
  156. package/lib/theme-injector.service.d.ts +8 -0
  157. package/package.json +42 -0
  158. package/public-api.d.ts +3 -0
  159. package/schematics-compiled/collection.json +10 -0
  160. package/schematics-compiled/ng-add/index.d.ts +2 -0
  161. package/schematics-compiled/ng-add/index.js +67 -0
  162. package/schematics-compiled/ng-add/index.js.map +1 -0
  163. package/schematics-compiled/ng-add/schema.json +8 -0
  164. package/src/lib/assets/fonts/Figtree-Bold.ttf +0 -0
  165. package/src/lib/assets/fonts/Figtree-Light.ttf +0 -0
  166. package/src/lib/assets/fonts/Figtree-Regular.ttf +0 -0
  167. package/src/lib/assets/fonts/Sora-ExtraBold.ttf +0 -0
  168. package/src/lib/assets/fonts/Sora-Light.ttf +0 -0
  169. package/src/lib/assets/fonts/Sora-Regular.ttf +0 -0
  170. package/src/lib/assets/fonts/ttrounds-bold-webfont.woff +0 -0
  171. package/src/lib/assets/fonts/ttrounds-bold-webfont.woff2 +0 -0
  172. package/src/lib/assets/fonts/ttrounds-regular-webfont.woff +0 -0
  173. package/src/lib/assets/fonts/ttrounds-regular-webfont.woff2 +0 -0
  174. package/src/lib/assets/fonts/ttrounds-thin-webfont.woff +0 -0
  175. package/src/lib/assets/fonts/ttrounds-thin-webfont.woff2 +0 -0
  176. package/src/lib/assets/images/flag/icon-flag-de.svg +10 -0
  177. package/src/lib/assets/images/flag/icon-flag-en.svg +1 -0
  178. package/src/lib/assets/images/flag/icon-flag-es.svg +11 -0
  179. package/src/lib/assets/images/flag/icon-flag-fr.svg +1 -0
  180. package/src/lib/assets/images/flag/icon-flag-ro.svg +11 -0
  181. package/src/lib/assets/images/flag/origin-form/new-id-card.png +0 -0
  182. package/src/lib/assets/images/flag/origin-form/old-id-card.png +0 -0
@@ -0,0 +1,367 @@
1
+ export class FormCssHelper {
2
+ static convertToStyleString(cssRules, isDisplayMode) {
3
+ let styleString = FormCssHelper.convertToCssText(cssRules);
4
+ if (isDisplayMode) {
5
+ const newRule = this.convertRuleToCssText('.mat-horizontal-stepper-header-container', { display: 'none' }, cssRules);
6
+ styleString += newRule;
7
+ }
8
+ return styleString;
9
+ }
10
+ static convertToCssText(cssRules) {
11
+ const styleString = Object.entries(cssRules)
12
+ .map(([k, v]) => this.convertRuleToCssText(k, v, cssRules))
13
+ .join(' ');
14
+ return styleString;
15
+ }
16
+ static convertRuleToCssText(key, values, cssRules) {
17
+ const valuesAsText = Object.entries(values)
18
+ .map(([k, v]) => `${k}:${v};`)
19
+ .join(' ');
20
+ let cssText = ` ${key} {${valuesAsText}} `;
21
+ switch (key) {
22
+ case '.component-text-field':
23
+ cssText = this.getSpecificCssForInput(key, values, cssRules);
24
+ break;
25
+ case '.component-checkbox':
26
+ cssText = this.getSpecificCssForCheckBox(key, values, cssRules);
27
+ break;
28
+ case '.font-heading-1':
29
+ cssText = this.getSpecificCssForStepLabel(key, values, cssRules);
30
+ break;
31
+ case '.formly-radio':
32
+ case '.component-radio':
33
+ cssText = this.getSpecificCssForRadio(values, cssRules);
34
+ break;
35
+ case '.component-date':
36
+ case '.component-data':
37
+ cssText = this.getSpecificCssForData(key, values, cssRules);
38
+ break;
39
+ case '.table-details':
40
+ cssText = this.getSpecificCssForTableDetail(values);
41
+ break;
42
+ case '.table-header':
43
+ cssText = this.getSpecificCssForTableHeader(values);
44
+ break;
45
+ }
46
+ return cssText;
47
+ }
48
+ static getSpecificCssForInput(key, values, cssRules) {
49
+ let inputSpecificCss = '';
50
+ let signInputSpecificCss = '';
51
+ const fontStyleForInputText = cssRules['.font-input'];
52
+ if (fontStyleForInputText) {
53
+ //transfer property from component to input
54
+ if (values['text-align']) {
55
+ fontStyleForInputText['text-align'] = values['text-align'];
56
+ }
57
+ fontStyleForInputText['color'] += ' !important';
58
+ inputSpecificCss = this.styleObjectToString(fontStyleForInputText);
59
+ signInputSpecificCss = this.styleObjectToString(fontStyleForInputText, true);
60
+ }
61
+ let labelSpecificCss = '';
62
+ let signLabelSpecificCss = '';
63
+ const fontStyleForLabelText = cssRules['.component-text-field-label'];
64
+ if (fontStyleForLabelText) {
65
+ labelSpecificCss = this.styleObjectToString(fontStyleForLabelText);
66
+ signLabelSpecificCss = this.styleObjectToString(fontStyleForLabelText, true);
67
+ }
68
+ var css = `
69
+ .mat-mdc-text-field-wrapper.mdc-text-field {
70
+ ${this.styleObjectToString(values)};
71
+ border-style: solid;
72
+ input {
73
+ ${inputSpecificCss}
74
+ }
75
+ mat-label {
76
+ ${labelSpecificCss}
77
+ }
78
+ .mdc-line-ripple--active::after {
79
+ border-bottom-color: ${fontStyleForLabelText['color']}
80
+ }
81
+ }
82
+
83
+ input.component-text-field {
84
+ border-style: solid !important;
85
+ ${this.styleObjectToString(values, true)};
86
+ ${signInputSpecificCss}
87
+ }
88
+
89
+ .component-text-field-label label {
90
+ ${signLabelSpecificCss}
91
+ }
92
+ `;
93
+ return `${key} { ${css}}`;
94
+ }
95
+ static getSpecificCssForTableHeader(values) {
96
+ const backgroundColor = values['background-color'] || '#ffffff';
97
+ const textColor = values['color'] || '#000000';
98
+ const border = values['border-width'];
99
+ const borderColor = values['border-color'] || '#000000';
100
+ const borderCollapse = values['border-collapse'] || 'collapse';
101
+ const borderSpacing = values['border-spacing'] || '0';
102
+ const textAlign = values['text-align'] || 'left';
103
+ const verticalAlign = values['vertical-align'] || 'middle';
104
+ const fontFamily = values['font-family'] || 'Arial, sans-serif';
105
+ const fontSize = values['font-size'] || '14px';
106
+ const letterSpacing = values['letter-spacing'] || 'normal';
107
+ const padding = values['padding'] || '8px';
108
+ const width = values['width'] || 'auto';
109
+ const height = values['height'] || 'auto';
110
+ const css = `
111
+ table
112
+ {
113
+ border-collapse: ${borderCollapse} !important;
114
+ border-spacing: ${borderSpacing};
115
+ font-family: ${fontFamily};
116
+ font-size: ${fontSize};
117
+ }
118
+ table th {
119
+ height: ${height};
120
+ }
121
+ table td{height: ${height};
122
+ }
123
+ .table-head tr th{
124
+ background-color: ${backgroundColor} !important;
125
+ width: ${width} !important;
126
+ border-collapse: ${borderCollapse};
127
+ border-spacing: ${borderSpacing};
128
+ border: ${border} solid ${borderColor};
129
+ vertical-align: ${verticalAlign};
130
+ font-family: ${fontFamily};
131
+ font-size: ${fontSize};
132
+ }
133
+ .table-head {
134
+ color: ${textColor};
135
+ border: ${border} solid ${borderColor};
136
+ text-align: ${textAlign};
137
+ letter-spacing: ${letterSpacing};
138
+ padding: ${padding};
139
+ height: ${height};
140
+ }
141
+
142
+ `;
143
+ return css;
144
+ }
145
+ static getSpecificCssForTableDetail(values) {
146
+ const backgroundColor = values['background-color'] || '#ffffff';
147
+ const textColor = values['color'] || '#000000';
148
+ const textAlign = values['text-align'] || 'left';
149
+ const verticalAlign = values['verticalAlign'] || 'middle';
150
+ const letterSpacing = values['letter-spacing'] || 'normal';
151
+ const padding = values['padding'] || '8px';
152
+ const rowBorder = values['rowborder'] || '1px';
153
+ const rowBorderColor = values['rowborder-color'] || '#000000';
154
+ const hoverBackgroundColor = values['hover-background-color'] || '#f0f0f0';
155
+ const css = `
156
+
157
+ .table-detail{
158
+ background-color: ${backgroundColor}
159
+ }
160
+ .table-detail .ng-star-inserted {
161
+ border-top: ${rowBorder} solid ${rowBorderColor} !important;
162
+ border-bottom: ${rowBorder} solid ${rowBorderColor} !important;
163
+ color: ${textColor} !important;
164
+ text-align: ${textAlign};
165
+ vertical-align: ${verticalAlign};
166
+ letter-spacing: ${letterSpacing};
167
+ }
168
+
169
+
170
+ .table-detail .ng-star-inserted:hover {
171
+ background-color: ${hoverBackgroundColor} !important;
172
+
173
+ }
174
+
175
+ .table-detail td {
176
+ padding: ${padding} !important;
177
+ }
178
+
179
+ `;
180
+ return css;
181
+ }
182
+ static getSpecificCssForCheckBox(key, values, cssRules) {
183
+ let labelSpecificCss = '';
184
+ const fontStyleForLabelText = cssRules['.component-checkbox-label'];
185
+ if (fontStyleForLabelText) {
186
+ labelSpecificCss = this.styleObjectToString(fontStyleForLabelText);
187
+ }
188
+ var css = `
189
+ .mat-mdc-text-field-wrapper.mdc-checkbox-field {
190
+ margin-top: ${values['margin-top']};
191
+ margin-right: ${values['margin-right']};
192
+ margin-bottom: ${values['margin-bottom']};
193
+ margin-left: ${values['margin-left']};
194
+ .mdc-form-field > label {
195
+ ${labelSpecificCss};
196
+ padding-left: 0;
197
+ padding-top: 2px;
198
+ };
199
+ .mdc-checkbox {
200
+ width: calc(18px + (2 * ${values['border-width']}));
201
+ height: calc(18px + (2 * ${values['border-width']}));
202
+ flex: 0 0 calc(18px + (2 * ${values['border-width']}));
203
+ }
204
+ .mdc-checkbox .mdc-checkbox__native-control {
205
+ width: 100%;
206
+ height: 100%;
207
+ }
208
+ .mdc-checkbox__background {
209
+ background-color: ${values['background-color']} !important;
210
+ border: ${values['border-width']} solid ${values['border-color']} !important;
211
+ border-radius: ${values['border-radius']};
212
+ width: calc(19px + (2 * ${values['border-width']}));
213
+ height: calc(19px + (2 * ${values['border-width']}));
214
+ };
215
+ }
216
+ .mdc-checkbox__native-control:enabled:checked~.mdc-checkbox__background {
217
+ border: ${values['border-width']} solid ${values['border-color']} !important;
218
+ }
219
+ .mdc-checkbox__checkmark-path {
220
+ color: ${values['color']} !important;
221
+ }`;
222
+ return `${key} { ${css} }`;
223
+ }
224
+ static getSpecificCssForStepLabel(key, values, cssRules) {
225
+ const labelSpecificCss = this.styleObjectToString(values);
226
+ // Map Heading 1 to step labels in stepper
227
+ const heading1Style = cssRules['.font-heading-1'];
228
+ const stepLabelCss = heading1Style
229
+ ? this.styleObjectToString(heading1Style)
230
+ : '';
231
+ // Map Heading 2 to section titles
232
+ const heading2Style = cssRules['.font-heading-2'];
233
+ const sectionTitleCss = heading2Style
234
+ ? this.styleObjectToString(heading2Style)
235
+ : '';
236
+ // Map Heading 3 to step descriptions
237
+ const heading3Style = cssRules['.font-heading-3'];
238
+ const stepDescriptionCss = heading3Style
239
+ ? this.styleObjectToString(heading3Style)
240
+ : '';
241
+ return `
242
+ .mat-horizontal-stepper-wrapper {
243
+ .mat-step-text-label {
244
+ ${stepLabelCss}
245
+ }
246
+ }
247
+
248
+ .mat-step-label {
249
+ ${stepLabelCss}
250
+ }
251
+
252
+ .mat-step-label-selected {
253
+ ${stepLabelCss}
254
+ }
255
+
256
+ .form-section-title h2,
257
+ .separator h2 {
258
+ ${sectionTitleCss}
259
+ }
260
+
261
+ .step-description,
262
+ .mat-step-sub-label {
263
+ ${stepDescriptionCss}
264
+ }
265
+
266
+ .mat-stepper-horizontal .mat-step-label,
267
+ .mat-stepper-vertical .mat-step-label {
268
+ ${stepLabelCss}
269
+ }
270
+
271
+ .component-text-field mat-label,
272
+ .component-checkbox mat-label,
273
+ .component-radio mat-label,
274
+ .component-date mat-label {
275
+ ${cssRules['.font-label']
276
+ ? this.styleObjectToString(cssRules['.font-label'])
277
+ : ''}
278
+ }
279
+ `;
280
+ }
281
+ static getSpecificCssForRadio(values, cssRules) {
282
+ let labelSpecificCss = '';
283
+ const fontStyleForLabelText = cssRules['.component-radio-label'];
284
+ if (fontStyleForLabelText) {
285
+ labelSpecificCss = this.styleObjectToString(fontStyleForLabelText);
286
+ }
287
+ var css = `
288
+ .mat-mdc-text-field-wrapper.mdc-radiobox-field {
289
+ margin-top: ${values['margin-top']};
290
+ margin-right: ${values['margin-right']};
291
+ margin-bottom: ${values['margin-bottom']};
292
+ margin-left: ${values['margin-left']};
293
+ label {
294
+ ${labelSpecificCss};
295
+ padding-left: 0;
296
+ p {
297
+ margin: 0 0 10px;
298
+ }
299
+ }
300
+ .mat-mdc-radio-button {
301
+ .mdc-radio__native-control {
302
+ width: 100%;
303
+ height: 100%;
304
+ }
305
+ .mdc-radio {
306
+ width: calc(20px + (2 * ${values['border-width']}));
307
+ height: calc(20px + (2 * ${values['border-width']}));
308
+ .mdc-radio__background {
309
+ background-color: ${values['background-color']} !important;
310
+ border: ${values['border-width']} solid ${values['border-color']} !important;
311
+ border-radius: 50%;
312
+ width: calc(20px + (2 * ${values['border-width']}));
313
+ height: calc(20px + (2 * ${values['border-width']}));
314
+ .mdc-radio__outer-circle {
315
+ border-color: ${values['background-color']} !important;
316
+ }
317
+ .mdc-radio__inner-circle {
318
+ border-color: ${values['color']} !important;
319
+ }
320
+ }
321
+ }
322
+ }
323
+ }
324
+ `;
325
+ return css;
326
+ }
327
+ static getSpecificCssForData(key, values, cssRules) {
328
+ let inputSpecificCss = '';
329
+ const fontStyleForInputText = cssRules['.font-list'];
330
+ if (fontStyleForInputText) {
331
+ //transfer property from component to input
332
+ if (values['text-align']) {
333
+ fontStyleForInputText['text-align'] = values['text-align'];
334
+ }
335
+ inputSpecificCss = this.styleObjectToString(fontStyleForInputText);
336
+ }
337
+ let labelSpecificCss = '';
338
+ const fontStyleForLabelText = cssRules['.component-data-label'];
339
+ if (fontStyleForLabelText) {
340
+ labelSpecificCss = this.styleObjectToString(fontStyleForLabelText);
341
+ }
342
+ return ` ${key} { .mat-mdc-text-field-wrapper.mdc-text-field {
343
+ ${this.styleObjectToString(values)};
344
+ border-style:solid;
345
+ input{
346
+ ${inputSpecificCss}
347
+ }
348
+ .mat-mdc-form-field-infix {
349
+ .mat-mdc-form-field-input-control::placeholder{
350
+ ${labelSpecificCss}
351
+ }
352
+ }
353
+ }
354
+ } `;
355
+ }
356
+ static styleObjectToString(values, important = false) {
357
+ values['width'] =
358
+ 'calc(100%' +
359
+ ('margin-left' in values ? ` - ${values['margin-left']}` : '') +
360
+ ('margin-right' in values ? ` - ${values['margin-right']}` : '') +
361
+ ')';
362
+ return Object.entries(values)
363
+ .map(([key, value]) => `${key}: ${value}${important ? ' !important' : ''}`)
364
+ .join('; ');
365
+ }
366
+ }
367
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1jc3MuaGVscGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvb3JpZ2luLWZvcm0vc3JjL2xpYi9mb3JtLWNzcy5oZWxwZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxPQUFPLGFBQWE7SUFFakIsTUFBTSxDQUFDLG9CQUFvQixDQUFDLFFBQWtCLEVBQUUsYUFBc0I7UUFDM0UsSUFBSSxXQUFXLEdBQUcsYUFBYSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzNELElBQUksYUFBYSxFQUFFLENBQUM7WUFDbEIsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixDQUN2QywwQ0FBMEMsRUFDMUMsRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLEVBQ25CLFFBQVEsQ0FDVCxDQUFDO1lBQ0YsV0FBVyxJQUFJLE9BQU8sQ0FBQztRQUN6QixDQUFDO1FBQ0QsT0FBTyxXQUFXLENBQUM7SUFDckIsQ0FBQztJQUVPLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFrQjtRQUNoRCxNQUFNLFdBQVcsR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQzthQUN6QyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLG9CQUFvQixDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsUUFBUSxDQUFDLENBQUM7YUFDMUQsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ2IsT0FBTyxXQUFXLENBQUM7SUFDckIsQ0FBQztJQUVPLE1BQU0sQ0FBQyxvQkFBb0IsQ0FDakMsR0FBVyxFQUNYLE1BQXNDLEVBQ3RDLFFBQWtCO1FBRWxCLE1BQU0sWUFBWSxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDO2FBQ3hDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUs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LENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FDdEU7YUFDQSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDaEIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ3NzUnVsZXMgfSBmcm9tIFwiLi9vdGhlcnMvdXRpbHNcIjtcblxuZXhwb3J0IGNsYXNzIEZvcm1Dc3NIZWxwZXIge1xuXG4gIHB1YmxpYyBzdGF0aWMgY29udmVydFRvU3R5bGVTdHJpbmcoY3NzUnVsZXM6IENzc1J1bGVzLCBpc0Rpc3BsYXlNb2RlOiBib29sZWFuKTogc3RyaW5nIHtcbiAgICBsZXQgc3R5bGVTdHJpbmcgPSBGb3JtQ3NzSGVscGVyLmNvbnZlcnRUb0Nzc1RleHQoY3NzUnVsZXMpO1xuICAgIGlmIChpc0Rpc3BsYXlNb2RlKSB7XG4gICAgICBjb25zdCBuZXdSdWxlID0gdGhpcy5jb252ZXJ0UnVsZVRvQ3NzVGV4dChcbiAgICAgICAgJy5tYXQtaG9yaXpvbnRhbC1zdGVwcGVyLWhlYWRlci1jb250YWluZXInLFxuICAgICAgICB7IGRpc3BsYXk6ICdub25lJyB9LFxuICAgICAgICBjc3NSdWxlc1xuICAgICAgKTtcbiAgICAgIHN0eWxlU3RyaW5nICs9IG5ld1J1bGU7XG4gICAgfVxuICAgIHJldHVybiBzdHlsZVN0cmluZztcbiAgfVxuXG4gIHByaXZhdGUgc3RhdGljIGNvbnZlcnRUb0Nzc1RleHQoY3NzUnVsZXM6IENzc1J1bGVzKTogc3RyaW5nIHtcbiAgICBjb25zdCBzdHlsZVN0cmluZyA9IE9iamVjdC5lbnRyaWVzKGNzc1J1bGVzKVxuICAgICAgLm1hcCgoW2ssIHZdKSA9PiB0aGlzLmNvbnZlcnRSdWxlVG9Dc3NUZXh0KGssIHYsIGNzc1J1bGVzKSlcbiAgICAgIC5qb2luKCcgJyk7XG4gICAgcmV0dXJuIHN0eWxlU3RyaW5nO1xuICB9XG5cbiAgcHJpdmF0ZSBzdGF0aWMgY29udmVydFJ1bGVUb0Nzc1RleHQoXG4gICAga2V5OiBzdHJpbmcsXG4gICAgdmFsdWVzOiB7IFtwcm9wZXJ0eTogc3RyaW5nXTogc3RyaW5nIH0sXG4gICAgY3NzUnVsZXM6IENzc1J1bGVzXG4gICkge1xuICAgIGNvbnN0IHZhbHVlc0FzVGV4dCA9IE9iamVjdC5lbnRyaWVzKHZhbHVlcylcbiAgICAgIC5tYXAoKFtrLCB2XSkgPT4gYCR7a306JHt2fTtgKVxuICAgICAgLmpvaW4oJyAnKTtcbiAgICBsZXQgY3NzVGV4dCA9IGAgJHtrZXl9IHske3ZhbHVlc0FzVGV4dH19IGA7XG5cbiAgICBzd2l0Y2ggKGtleSkge1xuICAgICAgY2FzZSAnLmNvbXBvbmVudC10ZXh0LWZpZWxkJzpcbiAgICAgICAgY3NzVGV4dCA9IHRoaXMuZ2V0U3BlY2lmaWNDc3NGb3JJbnB1dChrZXksIHZhbHVlcywgY3NzUnVsZXMpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJy5jb21wb25lbnQtY2hlY2tib3gnOlxuICAgICAgICBjc3NUZXh0ID0gdGhpcy5nZXRTcGVjaWZpY0Nzc0ZvckNoZWNrQm94KGtleSwgdmFsdWVzLCBjc3NSdWxlcyk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnLmZvbnQtaGVhZGluZy0xJzpcbiAgICAgICAgY3NzVGV4dCA9IHRoaXMuZ2V0U3BlY2lmaWNDc3NGb3JTdGVwTGFiZWwoa2V5LCB2YWx1ZXMsIGNzc1J1bGVzKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICcuZm9ybWx5LXJhZGlvJzpcbiAgICAgIGNhc2UgJy5jb21wb25lbnQtcmFkaW8nOlxuICAgICAgICBjc3NUZXh0ID0gdGhpcy5nZXRTcGVjaWZpY0Nzc0ZvclJhZGlvKHZhbHVlcywgY3NzUnVsZXMpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJy5jb21wb25lbnQtZGF0ZSc6XG4gICAgICBjYXNlICcuY29tcG9uZW50LWRhdGEnOlxuICAgICAgICBjc3NUZXh0ID0gdGhpcy5nZXRTcGVjaWZpY0Nzc0ZvckRhdGEoa2V5LCB2YWx1ZXMsIGNzc1J1bGVzKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICcudGFibGUtZGV0YWlscyc6XG4gICAgICAgIGNzc1RleHQgPSB0aGlzLmdldFNwZWNpZmljQ3NzRm9yVGFibGVEZXRhaWwodmFsdWVzKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICcudGFibGUtaGVhZGVyJzpcbiAgICAgICAgY3NzVGV4dCA9IHRoaXMuZ2V0U3BlY2lmaWNDc3NGb3JUYWJsZUhlYWRlcih2YWx1ZXMpO1xuICAgICAgICBicmVhaztcbiAgICB9XG4gICAgcmV0dXJuIGNzc1RleHQ7XG4gIH1cblxuICBwdWJsaWMgc3RhdGljIGdldFNwZWNpZmljQ3NzRm9ySW5wdXQoXG4gICAga2V5OiBzdHJpbmcsXG4gICAgdmFsdWVzOiB7IFtwcm9wZXJ0eTogc3RyaW5nXTogc3RyaW5nIH0sXG4gICAgY3NzUnVsZXM6IENzc1J1bGVzXG4gICkge1xuICAgIGxldCBpbnB1dFNwZWNpZmljQ3NzID0gJyc7XG4gICAgbGV0IHNpZ25JbnB1dFNwZWNpZmljQ3NzID0gJyc7XG4gICAgY29uc3QgZm9udFN0eWxlRm9ySW5wdXRUZXh0ID0gY3NzUnVsZXNbJy5mb250LWlucHV0J107XG4gICAgaWYgKGZvbnRTdHlsZUZvcklucHV0VGV4dCkge1xuICAgICAgLy90cmFuc2ZlciBwcm9wZXJ0eSBmcm9tIGNvbXBvbmVudCB0byBpbnB1dFxuICAgICAgaWYgKHZhbHVlc1sndGV4dC1hbGlnbiddKSB7XG4gICAgICAgIGZvbnRTdHlsZUZvcklucHV0VGV4dFsndGV4dC1hbGlnbiddID0gdmFsdWVzWyd0ZXh0LWFsaWduJ107XG4gICAgICB9XG4gICAgICBmb250U3R5bGVGb3JJbnB1dFRleHRbJ2NvbG9yJ10gKz0gJyAhaW1wb3J0YW50JztcbiAgICAgIGlucHV0U3BlY2lmaWNDc3MgPSB0aGlzLnN0eWxlT2JqZWN0VG9TdHJpbmcoZm9udFN0eWxlRm9ySW5wdXRUZXh0KTtcbiAgICAgIHNpZ25JbnB1dFNwZWNpZmljQ3NzID0gdGhpcy5zdHlsZU9iamVjdFRvU3RyaW5nKFxuICAgICAgICBmb250U3R5bGVGb3JJbnB1dFRleHQsXG4gICAgICAgIHRydWVcbiAgICAgICk7XG4gICAgfVxuXG4gICAgbGV0IGxhYmVsU3BlY2lmaWNDc3MgPSAnJztcbiAgICBsZXQgc2lnbkxhYmVsU3BlY2lmaWNDc3MgPSAnJztcbiAgICBjb25zdCBmb250U3R5bGVGb3JMYWJlbFRleHQgPSBjc3NSdWxlc1snLmNvbXBvbmVudC10ZXh0LWZpZWxkLWxhYmVsJ107XG4gICAgaWYgKGZvbnRTdHlsZUZvckxhYmVsVGV4dCkge1xuICAgICAgbGFiZWxTcGVjaWZpY0NzcyA9IHRoaXMuc3R5bGVPYmplY3RUb1N0cmluZyhmb250U3R5bGVGb3JMYWJlbFRleHQpO1xuICAgICAgc2lnbkxhYmVsU3BlY2lmaWNDc3MgPSB0aGlzLnN0eWxlT2JqZWN0VG9TdHJpbmcoXG4gICAgICAgIGZvbnRTdHlsZUZvckxhYmVsVGV4dCxcbiAgICAgICAgdHJ1ZVxuICAgICAgKTtcbiAgICB9XG5cbiAgICB2YXIgY3NzID0gYFxuICAgIC5tYXQtbWRjLXRleHQtZmllbGQtd3JhcHBlci5tZGMtdGV4dC1maWVsZCB7XG4gICAgICAke3RoaXMuc3R5bGVPYmplY3RUb1N0cmluZyh2YWx1ZXMpfTtcbiAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgICBpbnB1dCB7XG4gICAgICAgICR7aW5wdXRTcGVjaWZpY0Nzc31cbiAgICAgIH1cbiAgICAgIG1hdC1sYWJlbCB7XG4gICAgICAgICR7bGFiZWxTcGVjaWZpY0Nzc31cbiAgICAgIH1cbiAgICAgIC5tZGMtbGluZS1yaXBwbGUtLWFjdGl2ZTo6YWZ0ZXIge1xuICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAke2ZvbnRTdHlsZUZvckxhYmVsVGV4dFsnY29sb3InXX1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBpbnB1dC5jb21wb25lbnQtdGV4dC1maWVsZCB7XG4gICAgICBib3JkZXItc3R5bGU6IHNvbGlkICFpbXBvcnRhbnQ7XG4gICAgICAke3RoaXMuc3R5bGVPYmplY3RUb1N0cmluZyh2YWx1ZXMsIHRydWUpfTtcbiAgICAgICR7c2lnbklucHV0U3BlY2lmaWNDc3N9XG4gICAgfVxuXG4gICAgLmNvbXBvbmVudC10ZXh0LWZpZWxkLWxhYmVsIGxhYmVsIHtcbiAgICAgICR7c2lnbkxhYmVsU3BlY2lmaWNDc3N9XG4gICAgfVxuICAgIGA7XG5cbiAgICByZXR1cm4gYCR7a2V5fSB7ICR7Y3NzfX1gO1xuICB9XG5cbiAgcHVibGljIHN0YXRpYyBnZXRTcGVjaWZpY0Nzc0ZvclRhYmxlSGVhZGVyKFxuICAgIHZhbHVlczogeyBbcHJvcGVydHk6IHN0cmluZ106IHN0cmluZyB9XG4gICk6IHN0cmluZyB7XG4gICAgY29uc3QgYmFja2dyb3VuZENvbG9yID0gdmFsdWVzWydiYWNrZ3JvdW5kLWNvbG9yJ10gfHwgJyNmZmZmZmYnO1xuICAgIGNvbnN0IHRleHRDb2xvciA9IHZhbHVlc1snY29sb3InXSB8fCAnIzAwMDAwMCc7XG4gICAgY29uc3QgYm9yZGVyID0gdmFsdWVzWydib3JkZXItd2lkdGgnXTtcbiAgICBjb25zdCBib3JkZXJDb2xvciA9IHZhbHVlc1snYm9yZGVyLWNvbG9yJ10gfHwgJyMwMDAwMDAnO1xuICAgIGNvbnN0IGJvcmRlckNvbGxhcHNlID0gdmFsdWVzWydib3JkZXItY29sbGFwc2UnXSB8fCAnY29sbGFwc2UnO1xuICAgIGNvbnN0IGJvcmRlclNwYWNpbmcgPSB2YWx1ZXNbJ2JvcmRlci1zcGFjaW5nJ10gfHwgJzAnO1xuICAgIGNvbnN0IHRleHRBbGlnbiA9IHZhbHVlc1sndGV4dC1hbGlnbiddIHx8ICdsZWZ0JztcbiAgICBjb25zdCB2ZXJ0aWNhbEFsaWduID0gdmFsdWVzWyd2ZXJ0aWNhbC1hbGlnbiddIHx8ICdtaWRkbGUnO1xuICAgIGNvbnN0IGZvbnRGYW1pbHkgPSB2YWx1ZXNbJ2ZvbnQtZmFtaWx5J10gfHwgJ0FyaWFsLCBzYW5zLXNlcmlmJztcbiAgICBjb25zdCBmb250U2l6ZSA9IHZhbHVlc1snZm9udC1zaXplJ10gfHwgJzE0cHgnO1xuICAgIGNvbnN0IGxldHRlclNwYWNpbmcgPSB2YWx1ZXNbJ2xldHRlci1zcGFjaW5nJ10gfHwgJ25vcm1hbCc7XG4gICAgY29uc3QgcGFkZGluZyA9IHZhbHVlc1sncGFkZGluZyddIHx8ICc4cHgnO1xuICAgIGNvbnN0IHdpZHRoID0gdmFsdWVzWyd3aWR0aCddIHx8ICdhdXRvJztcbiAgICBjb25zdCBoZWlnaHQgPSB2YWx1ZXNbJ2hlaWdodCddIHx8ICdhdXRvJztcblxuICAgIGNvbnN0IGNzcyA9IGBcbiAgICB0YWJsZSBcbiAgICAge1xuICAgICAgYm9yZGVyLWNvbGxhcHNlOiAke2JvcmRlckNvbGxhcHNlfSAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyLXNwYWNpbmc6ICR7Ym9yZGVyU3BhY2luZ307ICAgXG4gICAgICBmb250LWZhbWlseTogJHtmb250RmFtaWx5fTtcbiAgICAgIGZvbnQtc2l6ZTogJHtmb250U2l6ZX07XG4gICAgfVxuICAgICAgdGFibGUgdGgge1xuICAgICAgaGVpZ2h0OiAke2hlaWdodH07XG4gICAgICB9XG4gICAgICB0YWJsZSB0ZHtoZWlnaHQ6ICR7aGVpZ2h0fTtcbiAgICAgIH1cbiAgICAudGFibGUtaGVhZCB0ciB0aHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR7YmFja2dyb3VuZENvbG9yfSAhaW1wb3J0YW50O1xuICAgICAgd2lkdGg6ICR7d2lkdGh9ICFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXItY29sbGFwc2U6ICR7Ym9yZGVyQ29sbGFwc2V9O1xuICAgICAgICBib3JkZXItc3BhY2luZzogJHtib3JkZXJTcGFjaW5nfTtcbiAgICAgICAgYm9yZGVyOiAke2JvcmRlcn0gc29saWQgJHtib3JkZXJDb2xvcn07IFxuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogJHt2ZXJ0aWNhbEFsaWdufTtcbiAgICAgICAgZm9udC1mYW1pbHk6ICR7Zm9udEZhbWlseX07XG4gICAgICAgIGZvbnQtc2l6ZTogJHtmb250U2l6ZX07XG4gICAgICB9XG4gICAgLnRhYmxlLWhlYWQge1xuICAgICAgY29sb3I6ICR7dGV4dENvbG9yfTtcbiAgICAgIGJvcmRlcjogJHtib3JkZXJ9IHNvbGlkICR7Ym9yZGVyQ29sb3J9OyAgXG4gICAgICB0ZXh0LWFsaWduOiAke3RleHRBbGlnbn07ICAgICAgICAgICAgXG4gICAgICBsZXR0ZXItc3BhY2luZzogJHtsZXR0ZXJTcGFjaW5nfTtcbiAgICAgIHBhZGRpbmc6ICR7cGFkZGluZ307ICAgICAgXG4gICAgICBoZWlnaHQ6ICR7aGVpZ2h0fTtcbiAgICAgfVxuXG4gICAgYDtcbiAgICByZXR1cm4gY3NzO1xuICB9XG5cbiAgcHVibGljIHN0YXRpYyBnZXRTcGVjaWZpY0Nzc0ZvclRhYmxlRGV0YWlsKFxuICAgIHZhbHVlczogeyBbcHJvcGVydHk6IHN0cmluZ106IHN0cmluZyB9XG4gICk6IHN0cmluZyB7XG4gICAgY29uc3QgYmFja2dyb3VuZENvbG9yID0gdmFsdWVzWydiYWNrZ3JvdW5kLWNvbG9yJ10gfHwgJyNmZmZmZmYnO1xuICAgIGNvbnN0IHRleHRDb2xvciA9IHZhbHVlc1snY29sb3InXSB8fCAnIzAwMDAwMCc7XG4gICAgY29uc3QgdGV4dEFsaWduID0gdmFsdWVzWyd0ZXh0LWFsaWduJ10gfHwgJ2xlZnQnO1xuICAgIGNvbnN0IHZlcnRpY2FsQWxpZ24gPSB2YWx1ZXNbJ3ZlcnRpY2FsQWxpZ24nXSB8fCAnbWlkZGxlJztcbiAgICBjb25zdCBsZXR0ZXJTcGFjaW5nID0gdmFsdWVzWydsZXR0ZXItc3BhY2luZyddIHx8ICdub3JtYWwnO1xuICAgIGNvbnN0IHBhZGRpbmcgPSB2YWx1ZXNbJ3BhZGRpbmcnXSB8fCAnOHB4JztcbiAgICBjb25zdCByb3dCb3JkZXIgPSB2YWx1ZXNbJ3Jvd2JvcmRlciddIHx8ICcxcHgnO1xuICAgIGNvbnN0IHJvd0JvcmRlckNvbG9yID0gdmFsdWVzWydyb3dib3JkZXItY29sb3InXSB8fCAnIzAwMDAwMCc7XG4gICAgY29uc3QgaG92ZXJCYWNrZ3JvdW5kQ29sb3IgPSB2YWx1ZXNbJ2hvdmVyLWJhY2tncm91bmQtY29sb3InXSB8fCAnI2YwZjBmMCc7XG5cbiAgICBjb25zdCBjc3MgPSBgICAgIFxuXG4gICAgICAudGFibGUtZGV0YWlse1xuICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR7YmFja2dyb3VuZENvbG9yfVxuICAgICAgfVxuICAgICAgICAudGFibGUtZGV0YWlsIC5uZy1zdGFyLWluc2VydGVkIHtcbiAgICBib3JkZXItdG9wOiAke3Jvd0JvcmRlcn0gc29saWQgJHtyb3dCb3JkZXJDb2xvcn0gIWltcG9ydGFudDtcbiAgICBib3JkZXItYm90dG9tOiAke3Jvd0JvcmRlcn0gc29saWQgJHtyb3dCb3JkZXJDb2xvcn0gIWltcG9ydGFudDsgICAgXG4gICAgY29sb3I6ICR7dGV4dENvbG9yfSAhaW1wb3J0YW50O1xuICAgIHRleHQtYWxpZ246ICR7dGV4dEFsaWdufTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogJHt2ZXJ0aWNhbEFsaWdufTtcbiAgICBsZXR0ZXItc3BhY2luZzogJHtsZXR0ZXJTcGFjaW5nfTsgICAgXG4gIH1cbiAgXG5cbiAgLnRhYmxlLWRldGFpbCAubmctc3Rhci1pbnNlcnRlZDpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtob3ZlckJhY2tncm91bmRDb2xvcn0gIWltcG9ydGFudDtcbiAgICBcbiAgfVxuXG4gIC50YWJsZS1kZXRhaWwgdGQge1xuICAgIHBhZGRpbmc6ICR7cGFkZGluZ30gIWltcG9ydGFudDtcbiAgfVxuICAgICBcbiAgICBgO1xuXG4gICAgcmV0dXJuIGNzcztcbiAgfVxuXG4gIHB1YmxpYyBzdGF0aWMgZ2V0U3BlY2lmaWNDc3NGb3JDaGVja0JveChcbiAgICBrZXk6IHN0cmluZyxcbiAgICB2YWx1ZXM6IHsgW3Byb3BlcnR5OiBzdHJpbmddOiBzdHJpbmcgfSxcbiAgICBjc3NSdWxlczogQ3NzUnVsZXNcbiAgKTogc3RyaW5nIHtcbiAgICBsZXQgbGFiZWxTcGVjaWZpY0NzcyA9ICcnO1xuICAgIGNvbnN0IGZvbnRTdHlsZUZvckxhYmVsVGV4dCA9IGNzc1J1bGVzWycuY29tcG9uZW50LWNoZWNrYm94LWxhYmVsJ107XG4gICAgaWYgKGZvbnRTdHlsZUZvckxhYmVsVGV4dCkge1xuICAgICAgbGFiZWxTcGVjaWZpY0NzcyA9IHRoaXMuc3R5bGVPYmplY3RUb1N0cmluZyhmb250U3R5bGVGb3JMYWJlbFRleHQpO1xuICAgIH1cblxuICAgIHZhciBjc3MgPSBgXG4gICAgLm1hdC1tZGMtdGV4dC1maWVsZC13cmFwcGVyLm1kYy1jaGVja2JveC1maWVsZCB7XG4gICAgICBtYXJnaW4tdG9wOiAke3ZhbHVlc1snbWFyZ2luLXRvcCddfTtcbiAgICAgIG1hcmdpbi1yaWdodDogJHt2YWx1ZXNbJ21hcmdpbi1yaWdodCddfTtcbiAgICAgIG1hcmdpbi1ib3R0b206ICR7dmFsdWVzWydtYXJnaW4tYm90dG9tJ119O1xuICAgICAgbWFyZ2luLWxlZnQ6ICR7dmFsdWVzWydtYXJnaW4tbGVmdCddfTtcbiAgICAgIC5tZGMtZm9ybS1maWVsZCA+IGxhYmVsIHtcbiAgICAgICAgJHtsYWJlbFNwZWNpZmljQ3NzfTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICBwYWRkaW5nLXRvcDogMnB4O1xuICAgICAgfTtcbiAgICAgIC5tZGMtY2hlY2tib3gge1xuICAgICAgICB3aWR0aDogY2FsYygxOHB4ICsgKDIgKiAke3ZhbHVlc1snYm9yZGVyLXdpZHRoJ119KSk7XG4gICAgICAgIGhlaWdodDogY2FsYygxOHB4ICsgKDIgKiAke3ZhbHVlc1snYm9yZGVyLXdpZHRoJ119KSk7XG4gICAgICAgIGZsZXg6IDAgMCBjYWxjKDE4cHggKyAoMiAqICR7dmFsdWVzWydib3JkZXItd2lkdGgnXX0pKTtcbiAgICAgIH1cbiAgICAgIC5tZGMtY2hlY2tib3ggLm1kYy1jaGVja2JveF9fbmF0aXZlLWNvbnRyb2wge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgfVxuICAgICAgLm1kYy1jaGVja2JveF9fYmFja2dyb3VuZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR7dmFsdWVzWydiYWNrZ3JvdW5kLWNvbG9yJ119ICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlcjogJHt2YWx1ZXNbJ2JvcmRlci13aWR0aCddfSBzb2xpZCAke3ZhbHVlc1snYm9yZGVyLWNvbG9yJ119ICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6ICR7dmFsdWVzWydib3JkZXItcmFkaXVzJ119O1xuICAgICAgICB3aWR0aDogY2FsYygxOXB4ICsgKDIgKiAke3ZhbHVlc1snYm9yZGVyLXdpZHRoJ119KSk7XG4gICAgICAgIGhlaWdodDogY2FsYygxOXB4ICsgKDIgKiAke3ZhbHVlc1snYm9yZGVyLXdpZHRoJ119KSk7XG4gICAgICB9O1xuICAgIH1cbiAgICAubWRjLWNoZWNrYm94X19uYXRpdmUtY29udHJvbDplbmFibGVkOmNoZWNrZWR+Lm1kYy1jaGVja2JveF9fYmFja2dyb3VuZCB7XG4gICAgICBib3JkZXI6ICR7dmFsdWVzWydib3JkZXItd2lkdGgnXX0gc29saWQgJHt2YWx1ZXNbJ2JvcmRlci1jb2xvciddfSAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAubWRjLWNoZWNrYm94X19jaGVja21hcmstcGF0aCB7XG4gICAgICBjb2xvcjogJHt2YWx1ZXNbJ2NvbG9yJ119ICFpbXBvcnRhbnQ7XG4gICAgfWA7XG4gICAgcmV0dXJuIGAke2tleX0geyAke2Nzc30gfWA7XG4gIH1cblxuICBwcml2YXRlIHN0YXRpYyBnZXRTcGVjaWZpY0Nzc0ZvclN0ZXBMYWJlbChcbiAgICBrZXk6IHN0cmluZyxcbiAgICB2YWx1ZXM6IHsgW3Byb3BlcnR5OiBzdHJpbmddOiBzdHJpbmcgfSxcbiAgICBjc3NSdWxlczogQ3NzUnVsZXNcbiAgKSB7XG4gICAgY29uc3QgbGFiZWxTcGVjaWZpY0NzcyA9IHRoaXMuc3R5bGVPYmplY3RUb1N0cmluZyh2YWx1ZXMpO1xuXG4gICAgLy8gTWFwIEhlYWRpbmcgMSB0byBzdGVwIGxhYmVscyBpbiBzdGVwcGVyXG4gICAgY29uc3QgaGVhZGluZzFTdHlsZSA9IGNzc1J1bGVzWycuZm9udC1oZWFkaW5nLTEnXTtcbiAgICBjb25zdCBzdGVwTGFiZWxDc3MgPSBoZWFkaW5nMVN0eWxlXG4gICAgICA/IHRoaXMuc3R5bGVPYmplY3RUb1N0cmluZyhoZWFkaW5nMVN0eWxlKVxuICAgICAgOiAnJztcblxuICAgIC8vIE1hcCBIZWFkaW5nIDIgdG8gc2VjdGlvbiB0aXRsZXNcbiAgICBjb25zdCBoZWFkaW5nMlN0eWxlID0gY3NzUnVsZXNbJy5mb250LWhlYWRpbmctMiddO1xuICAgIGNvbnN0IHNlY3Rpb25UaXRsZUNzcyA9IGhlYWRpbmcyU3R5bGVcbiAgICAgID8gdGhpcy5zdHlsZU9iamVjdFRvU3RyaW5nKGhlYWRpbmcyU3R5bGUpXG4gICAgICA6ICcnO1xuXG4gICAgLy8gTWFwIEhlYWRpbmcgMyB0byBzdGVwIGRlc2NyaXB0aW9uc1xuICAgIGNvbnN0IGhlYWRpbmczU3R5bGUgPSBjc3NSdWxlc1snLmZvbnQtaGVhZGluZy0zJ107XG4gICAgY29uc3Qgc3RlcERlc2NyaXB0aW9uQ3NzID0gaGVhZGluZzNTdHlsZVxuICAgICAgPyB0aGlzLnN0eWxlT2JqZWN0VG9TdHJpbmcoaGVhZGluZzNTdHlsZSlcbiAgICAgIDogJyc7XG5cbiAgICByZXR1cm4gYCBcbiAgICAgIC5tYXQtaG9yaXpvbnRhbC1zdGVwcGVyLXdyYXBwZXIge1xuICAgICAgICAubWF0LXN0ZXAtdGV4dC1sYWJlbCB7XG4gICAgICAgICAgJHtzdGVwTGFiZWxDc3N9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIFxuICAgICAgLm1hdC1zdGVwLWxhYmVsIHtcbiAgICAgICAgJHtzdGVwTGFiZWxDc3N9XG4gICAgICB9XG4gICAgICBcbiAgICAgIC5tYXQtc3RlcC1sYWJlbC1zZWxlY3RlZCB7XG4gICAgICAgICR7c3RlcExhYmVsQ3NzfVxuICAgICAgfVxuICAgICAgXG4gICAgICAuZm9ybS1zZWN0aW9uLXRpdGxlIGgyLFxuICAgICAgLnNlcGFyYXRvciBoMiB7XG4gICAgICAgICR7c2VjdGlvblRpdGxlQ3NzfVxuICAgICAgfVxuICAgICAgXG4gICAgICAuc3RlcC1kZXNjcmlwdGlvbixcbiAgICAgIC5tYXQtc3RlcC1zdWItbGFiZWwge1xuICAgICAgICAke3N0ZXBEZXNjcmlwdGlvbkNzc31cbiAgICAgIH1cbiAgICAgIFxuICAgICAgLm1hdC1zdGVwcGVyLWhvcml6b250YWwgLm1hdC1zdGVwLWxhYmVsLFxuICAgICAgLm1hdC1zdGVwcGVyLXZlcnRpY2FsIC5tYXQtc3RlcC1sYWJlbCB7XG4gICAgICAgICR7c3RlcExhYmVsQ3NzfVxuICAgICAgfVxuICAgICAgXG4gICAgICAuY29tcG9uZW50LXRleHQtZmllbGQgbWF0LWxhYmVsLFxuICAgICAgLmNvbXBvbmVudC1jaGVja2JveCBtYXQtbGFiZWwsXG4gICAgICAuY29tcG9uZW50LXJhZGlvIG1hdC1sYWJlbCxcbiAgICAgIC5jb21wb25lbnQtZGF0ZSBtYXQtbGFiZWwge1xuICAgICAgICAke2Nzc1J1bGVzWycuZm9udC1sYWJlbCddXG4gICAgICAgID8gdGhpcy5zdHlsZU9iamVjdFRvU3RyaW5nKGNzc1J1bGVzWycuZm9udC1sYWJlbCddKVxuICAgICAgICA6ICcnXG4gICAgICB9XG4gICAgICB9XG4gICAgYDtcbiAgfVxuXG4gIHB1YmxpYyBzdGF0aWMgZ2V0U3BlY2lmaWNDc3NGb3JSYWRpbyhcbiAgICB2YWx1ZXM6IHsgW3Byb3BlcnR5OiBzdHJpbmddOiBzdHJpbmcgfSxcbiAgICBjc3NSdWxlczogQ3NzUnVsZXNcbiAgKSB7XG4gICAgbGV0IGxhYmVsU3BlY2lmaWNDc3MgPSAnJztcbiAgICBjb25zdCBmb250U3R5bGVGb3JMYWJlbFRleHQgPSBjc3NSdWxlc1snLmNvbXBvbmVudC1yYWRpby1sYWJlbCddO1xuICAgIGlmIChmb250U3R5bGVGb3JMYWJlbFRleHQpIHtcbiAgICAgIGxhYmVsU3BlY2lmaWNDc3MgPSB0aGlzLnN0eWxlT2JqZWN0VG9TdHJpbmcoZm9udFN0eWxlRm9yTGFiZWxUZXh0KTtcbiAgICB9XG5cbiAgICB2YXIgY3NzID0gYFxuICAgIC5tYXQtbWRjLXRleHQtZmllbGQtd3JhcHBlci5tZGMtcmFkaW9ib3gtZmllbGQge1xuICAgICAgbWFyZ2luLXRvcDogJHt2YWx1ZXNbJ21hcmdpbi10b3AnXX07XG4gICAgICBtYXJnaW4tcmlnaHQ6ICR7dmFsdWVzWydtYXJnaW4tcmlnaHQnXX07XG4gICAgICBtYXJnaW4tYm90dG9tOiAke3ZhbHVlc1snbWFyZ2luLWJvdHRvbSddfTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAke3ZhbHVlc1snbWFyZ2luLWxlZnQnXX07XG4gICAgICBsYWJlbCB7XG4gICAgICAgICR7bGFiZWxTcGVjaWZpY0Nzc307XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgcCB7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgMTBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLm1hdC1tZGMtcmFkaW8tYnV0dG9uIHtcbiAgICAgICAgLm1kYy1yYWRpb19fbmF0aXZlLWNvbnRyb2wge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgICAubWRjLXJhZGlvIHtcbiAgICAgICAgICB3aWR0aDogY2FsYygyMHB4ICsgKDIgKiAke3ZhbHVlc1snYm9yZGVyLXdpZHRoJ119KSk7XG4gICAgICAgICAgaGVpZ2h0OiBjYWxjKDIwcHggKyAoMiAqICR7dmFsdWVzWydib3JkZXItd2lkdGgnXX0pKTtcbiAgICAgICAgICAubWRjLXJhZGlvX19iYWNrZ3JvdW5kIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR7dmFsdWVzWydiYWNrZ3JvdW5kLWNvbG9yJ119ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBib3JkZXI6ICR7dmFsdWVzWydib3JkZXItd2lkdGgnXX0gc29saWQgJHt2YWx1ZXNbJ2JvcmRlci1jb2xvciddfSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoMjBweCArICgyICogJHt2YWx1ZXNbJ2JvcmRlci13aWR0aCddfSkpO1xuICAgICAgICAgICAgaGVpZ2h0OiBjYWxjKDIwcHggKyAoMiAqICR7dmFsdWVzWydib3JkZXItd2lkdGgnXX0pKTtcbiAgICAgICAgICAgIC5tZGMtcmFkaW9fX291dGVyLWNpcmNsZSB7XG4gICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJHt2YWx1ZXNbJ2JhY2tncm91bmQtY29sb3InXX0gIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5tZGMtcmFkaW9fX2lubmVyLWNpcmNsZSB7XG4gICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJHt2YWx1ZXNbJ2NvbG9yJ119ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIGA7XG5cbiAgICByZXR1cm4gY3NzO1xuICB9XG5cbiAgcHVibGljIHN0YXRpYyBnZXRTcGVjaWZpY0Nzc0ZvckRhdGEoXG4gICAga2V5OiBzdHJpbmcsXG4gICAgdmFsdWVzOiB7IFtwcm9wZXJ0eTogc3RyaW5nXTogc3RyaW5nIH0sXG4gICAgY3NzUnVsZXM6IENzc1J1bGVzXG4gICkge1xuICAgIGxldCBpbnB1dFNwZWNpZmljQ3NzID0gJyc7XG4gICAgY29uc3QgZm9udFN0eWxlRm9ySW5wdXRUZXh0ID0gY3NzUnVsZXNbJy5mb250LWxpc3QnXTtcbiAgICBpZiAoZm9udFN0eWxlRm9ySW5wdXRUZXh0KSB7XG4gICAgICAvL3RyYW5zZmVyIHByb3BlcnR5IGZyb20gY29tcG9uZW50IHRvIGlucHV0XG4gICAgICBpZiAodmFsdWVzWyd0ZXh0LWFsaWduJ10pIHtcbiAgICAgICAgZm9udFN0eWxlRm9ySW5wdXRUZXh0Wyd0ZXh0LWFsaWduJ10gPSB2YWx1ZXNbJ3RleHQtYWxpZ24nXTtcbiAgICAgIH1cbiAgICAgIGlucHV0U3BlY2lmaWNDc3MgPSB0aGlzLnN0eWxlT2JqZWN0VG9TdHJpbmcoZm9udFN0eWxlRm9ySW5wdXRUZXh0KTtcbiAgICB9XG5cbiAgICBsZXQgbGFiZWxTcGVjaWZpY0NzcyA9ICcnO1xuICAgIGNvbnN0IGZvbnRTdHlsZUZvckxhYmVsVGV4dCA9IGNzc1J1bGVzWycuY29tcG9uZW50LWRhdGEtbGFiZWwnXTtcbiAgICBpZiAoZm9udFN0eWxlRm9yTGFiZWxUZXh0KSB7XG4gICAgICBsYWJlbFNwZWNpZmljQ3NzID0gdGhpcy5zdHlsZU9iamVjdFRvU3RyaW5nKGZvbnRTdHlsZUZvckxhYmVsVGV4dCk7XG4gICAgfVxuICAgIHJldHVybiBgICR7a2V5fSB7IC5tYXQtbWRjLXRleHQtZmllbGQtd3JhcHBlci5tZGMtdGV4dC1maWVsZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICR7dGhpcy5zdHlsZU9iamVjdFRvU3RyaW5nKHZhbHVlcyl9O1xuICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItc3R5bGU6c29saWQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGlucHV0e1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICR7aW5wdXRTcGVjaWZpY0Nzc31cbiAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgIC5tYXQtbWRjLWZvcm0tZmllbGQtaW5maXgge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgLm1hdC1tZGMtZm9ybS1maWVsZC1pbnB1dC1jb250cm9sOjpwbGFjZWhvbGRlcntcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHtsYWJlbFNwZWNpZmljQ3NzfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9IGA7XG4gIH1cblxuICBwdWJsaWMgc3RhdGljIHN0eWxlT2JqZWN0VG9TdHJpbmcoXG4gICAgdmFsdWVzOiB7IFtwcm9wZXJ0eTogc3RyaW5nXTogc3RyaW5nIH0sXG4gICAgaW1wb3J0YW50OiBib29sZWFuID0gZmFsc2VcbiAgKTogc3RyaW5nIHtcbiAgICB2YWx1ZXNbJ3dpZHRoJ10gPVxuICAgICAgJ2NhbGMoMTAwJScgK1xuICAgICAgKCdtYXJnaW4tbGVmdCcgaW4gdmFsdWVzID8gYCAtICR7dmFsdWVzWydtYXJnaW4tbGVmdCddfWAgOiAnJykgK1xuICAgICAgKCdtYXJnaW4tcmlnaHQnIGluIHZhbHVlcyA/IGAgLSAke3ZhbHVlc1snbWFyZ2luLXJpZ2h0J119YCA6ICcnKSArXG4gICAgICAnKSc7XG5cbiAgICByZXR1cm4gT2JqZWN0LmVudHJpZXModmFsdWVzKVxuICAgICAgLm1hcChcbiAgICAgICAgKFtrZXksIHZhbHVlXSkgPT4gYCR7a2V5fTogJHt2YWx1ZX0ke2ltcG9ydGFudCA/ICcgIWltcG9ydGFudCcgOiAnJ31gXG4gICAgICApXG4gICAgICAuam9pbignOyAnKTtcbiAgfVxufVxuIl19
@@ -0,0 +1,52 @@
1
+ import { Component } from "@angular/core";
2
+ import { FieldType } from "@ngx-formly/core";
3
+ import { Utils } from "../others/utils";
4
+ import * as i0 from "@angular/core";
5
+ export class BaseFormlyControlComponent extends FieldType {
6
+ onInit() { }
7
+ onPageSelected() { }
8
+ async onPageSelectedAsync() { }
9
+ canAdvance() {
10
+ return true;
11
+ }
12
+ constructor(cdr) {
13
+ super();
14
+ this.cdr = cdr;
15
+ }
16
+ async ngOnInit() {
17
+ this.props['cdr'] = this.cdr;
18
+ this.props['component'] = this;
19
+ this.env = this.props['env'];
20
+ this.langIso = this.props['langIso'];
21
+ this.controlData = this.props['controlData'];
22
+ this.isDisplayMode = this.props['isDisplayMode'];
23
+ this.appDataId = this.props['appDataId'];
24
+ this.appId = this.props['appId'];
25
+ this.title = this.props['label'];
26
+ this.dataUrlId = this.props['dataUrlId'];
27
+ this.onInit();
28
+ }
29
+ getErrorTranslationMessage(errorCode, ...params) {
30
+ const translation = Utils.findErrorTranslationLabel(this.controlData.errorsTranslations, this.langIso, errorCode);
31
+ let errorMessage = 'An error has occured';
32
+ if (translation && translation.value) {
33
+ errorMessage = translation.value;
34
+ if (params) {
35
+ for (let i = 0; i < params.length; i++) {
36
+ errorMessage = errorMessage.replace('{' + i + '}', params[i]);
37
+ }
38
+ }
39
+ }
40
+ return errorMessage;
41
+ }
42
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BaseFormlyControlComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
43
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: BaseFormlyControlComponent, selector: "base-formly-component", usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
44
+ }
45
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BaseFormlyControlComponent, decorators: [{
46
+ type: Component,
47
+ args: [{
48
+ selector: 'base-formly-component',
49
+ template: '',
50
+ }]
51
+ }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }] });
52
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZUZvcm1seUNvbnRyb2xDb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vcmlnaW4tZm9ybS9zcmMvbGliL2Zvcm1seS9iYXNlRm9ybWx5Q29udHJvbENvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUE2QixNQUFNLGVBQWUsQ0FBQztBQUNyRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDN0MsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGlCQUFpQixDQUFDOztBQU94QyxNQUFNLE9BQWdCLDBCQUEyQixTQUFRLFNBQVM7SUFXaEUsTUFBTSxLQUFJLENBQUM7SUFDWCxjQUFjLEtBQUksQ0FBQztJQUNuQixLQUFLLENBQUMsbUJBQW1CLEtBQUksQ0FBQztJQUM5QixVQUFVO1FBQ1IsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsWUFBbUIsR0FBc0I7UUFDdkMsS0FBSyxFQUFFLENBQUM7UUFEUyxRQUFHLEdBQUgsR0FBRyxDQUFtQjtJQUV6QyxDQUFDO0lBRUQsS0FBSyxDQUFDLFFBQVE7UUFDWixJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUM7UUFDN0IsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsR0FBRyxJQUFJLENBQUM7UUFDL0IsSUFBSSxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzdCLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQVcsQ0FBQztRQUMvQyxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDN0MsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBQ2pELElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUN6QyxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDakMsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2pDLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUN6QyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDaEIsQ0FBQztJQUVELDBCQUEwQixDQUFDLFNBQWlCLEVBQUUsR0FBRyxNQUFnQjtRQUMvRCxNQUFNLFdBQVcsR0FBRyxLQUFLLENBQUMseUJBQXlCLENBQ2pELElBQUksQ0FBQyxXQUFXLENBQUMsa0JBQWtCLEVBQ25DLElBQUksQ0FBQyxPQUFPLEVBQ1osU0FBUyxDQUNWLENBQUM7UUFDRixJQUFJLFlBQVksR0FBRyxzQkFBc0IsQ0FBQztRQUMxQyxJQUFJLFdBQVcsSUFBSSxXQUFXLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDckMsWUFBWSxHQUFHLFdBQVcsQ0FBQyxLQUFLLENBQUM7WUFDakMsSUFBSSxNQUFNLEVBQUUsQ0FBQztnQkFDWCxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsTUFBTSxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDO29CQUN2QyxZQUFZLEdBQUcsWUFBWSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEdBQUcsQ0FBQyxHQUFHLEdBQUcsRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDaEUsQ0FBQztZQUNILENBQUM7UUFDSCxDQUFDO1FBQ0QsT0FBTyxZQUFZLENBQUM7SUFDdEIsQ0FBQzsrR0FwRG1CLDBCQUEwQjttR0FBMUIsMEJBQTBCLG9GQUZwQyxFQUFFOzs0RkFFUSwwQkFBMEI7a0JBSi9DLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHVCQUF1QjtvQkFDakMsUUFBUSxFQUFFLEVBQUU7aUJBQ2IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgQ2hhbmdlRGV0ZWN0b3JSZWYgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgRmllbGRUeXBlIH0gZnJvbSBcIkBuZ3gtZm9ybWx5L2NvcmVcIjtcbmltcG9ydCB7IFV0aWxzIH0gZnJvbSBcIi4uL290aGVycy91dGlsc1wiO1xuaW1wb3J0IHsgQ29udHJvbERhdGEgfSBmcm9tIFwiLi4vbW9kZWxzL2ZsdXgubW9kZWxcIjtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFzZS1mb3JtbHktY29tcG9uZW50JyxcbiAgdGVtcGxhdGU6ICcnLFxufSlcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBCYXNlRm9ybWx5Q29udHJvbENvbXBvbmVudCBleHRlbmRzIEZpZWxkVHlwZSBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIGxhbmdJc286IHN0cmluZztcbiAgY29udHJvbERhdGE6IENvbnRyb2xEYXRhO1xuICBpc0xvYWRpbmc6IGJvb2xlYW47XG4gIGlzRGlzcGxheU1vZGU6IGJvb2xlYW47XG4gIGVudjogc3RyaW5nO1xuICBhcHBEYXRhSWQ6IHN0cmluZztcbiAgZGF0YVVybElkOiBzdHJpbmc7XG4gIGFwcElkOiBzdHJpbmc7XG4gIHRpdGxlOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cbiAgb25Jbml0KCkge31cbiAgb25QYWdlU2VsZWN0ZWQoKSB7fVxuICBhc3luYyBvblBhZ2VTZWxlY3RlZEFzeW5jKCkge31cbiAgY2FuQWR2YW5jZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBjZHI6IENoYW5nZURldGVjdG9yUmVmKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIGFzeW5jIG5nT25Jbml0KCkge1xuICAgIHRoaXMucHJvcHNbJ2NkciddID0gdGhpcy5jZHI7XG4gICAgdGhpcy5wcm9wc1snY29tcG9uZW50J10gPSB0aGlzO1xuICAgIHRoaXMuZW52ID0gdGhpcy5wcm9wc1snZW52J107XG4gICAgdGhpcy5sYW5nSXNvID0gdGhpcy5wcm9wc1snbGFuZ0lzbyddIGFzIHN0cmluZztcbiAgICB0aGlzLmNvbnRyb2xEYXRhID0gdGhpcy5wcm9wc1snY29udHJvbERhdGEnXTtcbiAgICB0aGlzLmlzRGlzcGxheU1vZGUgPSB0aGlzLnByb3BzWydpc0Rpc3BsYXlNb2RlJ107XG4gICAgdGhpcy5hcHBEYXRhSWQgPSB0aGlzLnByb3BzWydhcHBEYXRhSWQnXTtcbiAgICB0aGlzLmFwcElkID0gdGhpcy5wcm9wc1snYXBwSWQnXTtcbiAgICB0aGlzLnRpdGxlID0gdGhpcy5wcm9wc1snbGFiZWwnXTtcbiAgICB0aGlzLmRhdGFVcmxJZCA9IHRoaXMucHJvcHNbJ2RhdGFVcmxJZCddO1xuICAgIHRoaXMub25Jbml0KCk7XG4gIH1cblxuICBnZXRFcnJvclRyYW5zbGF0aW9uTWVzc2FnZShlcnJvckNvZGU6IHN0cmluZywgLi4ucGFyYW1zOiBzdHJpbmdbXSkge1xuICAgIGNvbnN0IHRyYW5zbGF0aW9uID0gVXRpbHMuZmluZEVycm9yVHJhbnNsYXRpb25MYWJlbChcbiAgICAgIHRoaXMuY29udHJvbERhdGEuZXJyb3JzVHJhbnNsYXRpb25zLFxuICAgICAgdGhpcy5sYW5nSXNvLFxuICAgICAgZXJyb3JDb2RlXG4gICAgKTtcbiAgICBsZXQgZXJyb3JNZXNzYWdlID0gJ0FuIGVycm9yIGhhcyBvY2N1cmVkJztcbiAgICBpZiAodHJhbnNsYXRpb24gJiYgdHJhbnNsYXRpb24udmFsdWUpIHtcbiAgICAgIGVycm9yTWVzc2FnZSA9IHRyYW5zbGF0aW9uLnZhbHVlO1xuICAgICAgaWYgKHBhcmFtcykge1xuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHBhcmFtcy5sZW5ndGg7IGkrKykge1xuICAgICAgICAgIGVycm9yTWVzc2FnZSA9IGVycm9yTWVzc2FnZS5yZXBsYWNlKCd7JyArIGkgKyAnfScsIHBhcmFtc1tpXSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGVycm9yTWVzc2FnZTtcbiAgfVxufVxuIl19
@@ -0,0 +1,59 @@
1
+ import { Component } from '@angular/core';
2
+ import { FieldType } from '@ngx-formly/core';
3
+ import { Utils } from '../others/utils';
4
+ import * as i0 from "@angular/core";
5
+ export class BaseFormlyStepComponent extends FieldType {
6
+ onInit() { }
7
+ onPageSelected() { }
8
+ async onPageSelectedAsync() { }
9
+ canAdvance() {
10
+ return true;
11
+ }
12
+ constructor(cdr) {
13
+ super();
14
+ this.cdr = cdr;
15
+ }
16
+ async ngOnInit() {
17
+ this.props['cdr'] = this.cdr;
18
+ this.props['component'] = this;
19
+ this.env = this.props['env'];
20
+ this.langIso = this.props['langIso'];
21
+ this.stepData = this.props['stepData'];
22
+ this.controlData = this.props['controlData'];
23
+ this.isDisplayMode = this.props['isDisplayMode'];
24
+ this.appDataId = this.props['appDataId'];
25
+ this.appId = this.props['appId'];
26
+ this.stepsSettings = this.props['stepsSettings'];
27
+ this.title = this.props['label'];
28
+ this.dataUrlId = this.props['dataUrlId'];
29
+ this.onInit();
30
+ }
31
+ onEvent(data) {
32
+ if (this.props['event']) {
33
+ this.props['event'](data);
34
+ }
35
+ }
36
+ getErrorTranslationMessage(errorCode, ...params) {
37
+ const translation = Utils.findErrorTranslationLabel(this.stepData.errorsTranslations, this.langIso, errorCode);
38
+ let errorMessage = 'An error has occured';
39
+ if (translation && translation.value) {
40
+ errorMessage = translation.value;
41
+ if (params) {
42
+ for (let i = 0; i < params.length; i++) {
43
+ errorMessage = errorMessage.replace('{' + i + '}', params[i]);
44
+ }
45
+ }
46
+ }
47
+ return errorMessage;
48
+ }
49
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BaseFormlyStepComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
50
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: BaseFormlyStepComponent, selector: "base-formly-component", usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
51
+ }
52
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BaseFormlyStepComponent, decorators: [{
53
+ type: Component,
54
+ args: [{
55
+ selector: 'base-formly-component',
56
+ template: '',
57
+ }]
58
+ }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }] });
59
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZUZvcm1seVN0ZXBDb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vcmlnaW4tZm9ybS9zcmMvbGliL2Zvcm1seS9iYXNlRm9ybWx5U3RlcENvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXFCLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUNyRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFN0MsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGlCQUFpQixDQUFDOztBQU94QyxNQUFNLE9BQWdCLHVCQUF3QixTQUFRLFNBQVM7SUFhN0QsTUFBTSxLQUFLLENBQUM7SUFDWixjQUFjLEtBQUssQ0FBQztJQUNwQixLQUFLLENBQUMsbUJBQW1CLEtBQUssQ0FBQztJQUMvQixVQUFVO1FBQ1IsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsWUFBbUIsR0FBc0I7UUFDdkMsS0FBSyxFQUFFLENBQUM7UUFEUyxRQUFHLEdBQUgsR0FBRyxDQUFtQjtJQUV6QyxDQUFDO0lBRUQsS0FBSyxDQUFDLFFBQVE7UUFDWixJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUM7UUFDN0IsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsR0FBRyxJQUFJLENBQUM7UUFDL0IsSUFBSSxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzdCLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQVcsQ0FBQztRQUMvQyxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDdkMsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQzdDLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUNqRCxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDekMsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2pDLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUNqRCxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDakMsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ3pDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUVoQixDQUFDO0lBRUQsT0FBTyxDQUFDLElBQVM7UUFDZixJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztZQUN4QixJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzVCLENBQUM7SUFDSCxDQUFDO0lBRUQsMEJBQTBCLENBQUMsU0FBaUIsRUFBRSxHQUFHLE1BQWdCO1FBQy9ELE1BQU0sV0FBVyxHQUFHLEtBQUssQ0FBQyx5QkFBeUIsQ0FDakQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxrQkFBa0IsRUFDaEMsSUFBSSxDQUFDLE9BQU8sRUFDWixTQUFTLENBQ1YsQ0FBQztRQUNGLElBQUksWUFBWSxHQUFHLHNCQUFzQixDQUFDO1FBQzFDLElBQUksV0FBVyxJQUFJLFdBQVcsQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNyQyxZQUFZLEdBQUcsV0FBVyxDQUFDLEtBQUssQ0FBQztZQUNqQyxJQUFJLE1BQU0sRUFBRSxDQUFDO2dCQUNYLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxNQUFNLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUM7b0JBQ3ZDLFlBQVksR0FBRyxZQUFZLENBQUMsT0FBTyxDQUFDLEdBQUcsR0FBRyxDQUFDLEdBQUcsR0FBRyxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUNoRSxDQUFDO1lBQ0gsQ0FBQztRQUNILENBQUM7UUFDRCxPQUFPLFlBQVksQ0FBQztJQUN0QixDQUFDOytHQS9EbUIsdUJBQXVCO21HQUF2Qix1QkFBdUIsb0ZBRmpDLEVBQUU7OzRGQUVRLHVCQUF1QjtrQkFKNUMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsdUJBQXVCO29CQUNqQyxRQUFRLEVBQUUsRUFBRTtpQkFDYiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRmllbGRUeXBlIH0gZnJvbSAnQG5neC1mb3JtbHkvY29yZSc7XG5pbXBvcnQgeyBTdGVwc1NldHRpbmdzIH0gZnJvbSAnLi4vbW9kZWxzL2Zvcm1zLm1vZGVsJztcbmltcG9ydCB7IFV0aWxzIH0gZnJvbSAnLi4vb3RoZXJzL3V0aWxzJztcbmltcG9ydCB7IENvbnRyb2xEYXRhLCBTdGVwRGF0YSB9IGZyb20gJy4uL21vZGVscy9mbHV4Lm1vZGVsJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFzZS1mb3JtbHktY29tcG9uZW50JyxcbiAgdGVtcGxhdGU6ICcnLFxufSlcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBCYXNlRm9ybWx5U3RlcENvbXBvbmVudCBleHRlbmRzIEZpZWxkVHlwZSBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIGxhbmdJc286IHN0cmluZztcbiAgc3RlcERhdGE6IFN0ZXBEYXRhO1xuICBjb250cm9sRGF0YTogQ29udHJvbERhdGE7XG4gIGlzTG9hZGluZzogYm9vbGVhbjtcbiAgaXNEaXNwbGF5TW9kZTogYm9vbGVhbjtcbiAgZW52OiBzdHJpbmc7XG4gIGFwcERhdGFJZDogc3RyaW5nO1xuICBkYXRhVXJsSWQ6IHN0cmluZztcbiAgYXBwSWQ6IHN0cmluZztcbiAgc3RlcHNTZXR0aW5nczogU3RlcHNTZXR0aW5ncztcbiAgdGl0bGU6IHN0cmluZyB8IHVuZGVmaW5lZDtcblxuICBvbkluaXQoKSB7IH1cbiAgb25QYWdlU2VsZWN0ZWQoKSB7IH1cbiAgYXN5bmMgb25QYWdlU2VsZWN0ZWRBc3luYygpIHsgfVxuICBjYW5BZHZhbmNlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgY29uc3RydWN0b3IocHVibGljIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgYXN5bmMgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5wcm9wc1snY2RyJ10gPSB0aGlzLmNkcjtcbiAgICB0aGlzLnByb3BzWydjb21wb25lbnQnXSA9IHRoaXM7XG4gICAgdGhpcy5lbnYgPSB0aGlzLnByb3BzWydlbnYnXTtcbiAgICB0aGlzLmxhbmdJc28gPSB0aGlzLnByb3BzWydsYW5nSXNvJ10gYXMgc3RyaW5nO1xuICAgIHRoaXMuc3RlcERhdGEgPSB0aGlzLnByb3BzWydzdGVwRGF0YSddO1xuICAgIHRoaXMuY29udHJvbERhdGEgPSB0aGlzLnByb3BzWydjb250cm9sRGF0YSddO1xuICAgIHRoaXMuaXNEaXNwbGF5TW9kZSA9IHRoaXMucHJvcHNbJ2lzRGlzcGxheU1vZGUnXTtcbiAgICB0aGlzLmFwcERhdGFJZCA9IHRoaXMucHJvcHNbJ2FwcERhdGFJZCddO1xuICAgIHRoaXMuYXBwSWQgPSB0aGlzLnByb3BzWydhcHBJZCddO1xuICAgIHRoaXMuc3RlcHNTZXR0aW5ncyA9IHRoaXMucHJvcHNbJ3N0ZXBzU2V0dGluZ3MnXTtcbiAgICB0aGlzLnRpdGxlID0gdGhpcy5wcm9wc1snbGFiZWwnXTtcbiAgICB0aGlzLmRhdGFVcmxJZCA9IHRoaXMucHJvcHNbJ2RhdGFVcmxJZCddO1xuICAgIHRoaXMub25Jbml0KCk7XG5cbiAgfVxuXG4gIG9uRXZlbnQoZGF0YTogYW55KSB7XG4gICAgaWYgKHRoaXMucHJvcHNbJ2V2ZW50J10pIHtcbiAgICAgIHRoaXMucHJvcHNbJ2V2ZW50J10oZGF0YSk7XG4gICAgfVxuICB9XG5cbiAgZ2V0RXJyb3JUcmFuc2xhdGlvbk1lc3NhZ2UoZXJyb3JDb2RlOiBzdHJpbmcsIC4uLnBhcmFtczogc3RyaW5nW10pIHtcbiAgICBjb25zdCB0cmFuc2xhdGlvbiA9IFV0aWxzLmZpbmRFcnJvclRyYW5zbGF0aW9uTGFiZWwoXG4gICAgICB0aGlzLnN0ZXBEYXRhLmVycm9yc1RyYW5zbGF0aW9ucyxcbiAgICAgIHRoaXMubGFuZ0lzbyxcbiAgICAgIGVycm9yQ29kZVxuICAgICk7XG4gICAgbGV0IGVycm9yTWVzc2FnZSA9ICdBbiBlcnJvciBoYXMgb2NjdXJlZCc7XG4gICAgaWYgKHRyYW5zbGF0aW9uICYmIHRyYW5zbGF0aW9uLnZhbHVlKSB7XG4gICAgICBlcnJvck1lc3NhZ2UgPSB0cmFuc2xhdGlvbi52YWx1ZTtcbiAgICAgIGlmIChwYXJhbXMpIHtcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBwYXJhbXMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICBlcnJvck1lc3NhZ2UgPSBlcnJvck1lc3NhZ2UucmVwbGFjZSgneycgKyBpICsgJ30nLCBwYXJhbXNbaV0pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBlcnJvck1lc3NhZ2U7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,32 @@
1
+ import { Component } from '@angular/core';
2
+ import { FieldType } from '@ngx-formly/core';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/common";
5
+ import * as i2 from "@ngx-formly/core";
6
+ export class CustomSectionComponent extends FieldType {
7
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CustomSectionComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
8
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: CustomSectionComponent, selector: "formly-custom-section", usesInheritance: true, ngImport: i0, template: `
9
+ <div class="custom-section">
10
+ <ng-container *ngFor="let field of field.fieldGroup">
11
+ <formly-field
12
+ [field]="field"
13
+ [ngClass]="field.className"
14
+ ></formly-field>
15
+ </ng-container>
16
+ </div>
17
+ `, isInline: true, styles: [".custom-section{display:grid;gap:5px;margin-bottom:5px;grid-template-columns:repeat(12,1fr)}.full-width{grid-column:span 12}.half-width{grid-column:span 6}.quarter-width{grid-column:span 3}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: i2.FormlyField, selector: "formly-field", inputs: ["field"] }] }); }
18
+ }
19
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CustomSectionComponent, decorators: [{
20
+ type: Component,
21
+ args: [{ selector: 'formly-custom-section', template: `
22
+ <div class="custom-section">
23
+ <ng-container *ngFor="let field of field.fieldGroup">
24
+ <formly-field
25
+ [field]="field"
26
+ [ngClass]="field.className"
27
+ ></formly-field>
28
+ </ng-container>
29
+ </div>
30
+ `, styles: [".custom-section{display:grid;gap:5px;margin-bottom:5px;grid-template-columns:repeat(12,1fr)}.full-width{grid-column:span 12}.half-width{grid-column:span 6}.quarter-width{grid-column:span 3}\n"] }]
31
+ }] });
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tLXNlY3Rpb24tc2VwYXJhdG9yLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL29yaWdpbi1mb3JtL3NyYy9saWIvZm9ybWx5L2N1c3RvbS1zZWN0aW9uLXNlcGFyYXRvci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxQyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7Ozs7QUFrQzdDLE1BQU0sT0FBTyxzQkFBdUIsU0FBUSxTQUFTOytHQUF4QyxzQkFBc0I7bUdBQXRCLHNCQUFzQixvRkE5QnZCOzs7Ozs7Ozs7R0FTVDs7NEZBcUJVLHNCQUFzQjtrQkFoQ2xDLFNBQVM7K0JBQ0UsdUJBQXVCLFlBQ3ZCOzs7Ozs7Ozs7R0FTVCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRmllbGRUeXBlIH0gZnJvbSAnQG5neC1mb3JtbHkvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2Zvcm1seS1jdXN0b20tc2VjdGlvbicsXG4gIHRlbXBsYXRlOiBgXG4gICAgPGRpdiBjbGFzcz1cImN1c3RvbS1zZWN0aW9uXCI+XG4gICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBmaWVsZCBvZiBmaWVsZC5maWVsZEdyb3VwXCI+XG4gICAgICAgIDxmb3JtbHktZmllbGRcbiAgICAgICAgICBbZmllbGRdPVwiZmllbGRcIlxuICAgICAgICAgIFtuZ0NsYXNzXT1cImZpZWxkLmNsYXNzTmFtZVwiXG4gICAgICAgID48L2Zvcm1seS1maWVsZD5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvZGl2PlxuICBgLFxuICBzdHlsZXM6IFtcbiAgICBgXG4gICAgICAuY3VzdG9tLXNlY3Rpb24ge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBnYXA6IDVweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgxMiwgMWZyKTtcbiAgICAgIH1cbiAgICAgIC5mdWxsLXdpZHRoIHtcbiAgICAgICAgZ3JpZC1jb2x1bW46IHNwYW4gMTI7XG4gICAgICB9XG4gICAgICAuaGFsZi13aWR0aCB7XG4gICAgICAgIGdyaWQtY29sdW1uOiBzcGFuIDY7XG4gICAgICB9XG4gICAgICAucXVhcnRlci13aWR0aCB7XG4gICAgICAgIGdyaWQtY29sdW1uOiBzcGFuIDM7XG4gICAgICB9XG4gICAgYCxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQ3VzdG9tU2VjdGlvbkNvbXBvbmVudCBleHRlbmRzIEZpZWxkVHlwZSB7fSJdfQ==
@@ -0,0 +1,36 @@
1
+ import { Component } from '@angular/core';
2
+ import { FieldType } from '@ngx-formly/core';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/common";
5
+ export class FormSectionSeparatorComponent extends FieldType {
6
+ ngOnInit() {
7
+ if (this.props['design']) {
8
+ this.heading2Style = this.props['design']['.font-heading-2'];
9
+ const separatorStyle = this.props['design']['.separator-section'];
10
+ if (separatorStyle && separatorStyle['height'] !== '0px') {
11
+ this.separatorStyle = separatorStyle;
12
+ }
13
+ }
14
+ }
15
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FormSectionSeparatorComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
16
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: FormSectionSeparatorComponent, selector: "form-section-separator", usesInheritance: true, ngImport: i0, template: `
17
+ <div class="separator" style="margin: 2% ;">
18
+ <h2 *ngIf="to && to['title']" [ngStyle]="heading2Style">
19
+ {{ to['title'] }}
20
+ </h2>
21
+ <hr *ngIf="to && to['showSeparator']" [ngStyle]="separatorStyle" />
22
+ </div>
23
+ `, isInline: true, styles: [".separator{margin:2% 0}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] }); }
24
+ }
25
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FormSectionSeparatorComponent, decorators: [{
26
+ type: Component,
27
+ args: [{ selector: 'form-section-separator', template: `
28
+ <div class="separator" style="margin: 2% ;">
29
+ <h2 *ngIf="to && to['title']" [ngStyle]="heading2Style">
30
+ {{ to['title'] }}
31
+ </h2>
32
+ <hr *ngIf="to && to['showSeparator']" [ngStyle]="separatorStyle" />
33
+ </div>
34
+ `, styles: [".separator{margin:2% 0}\n"] }]
35
+ }] });
36
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1zZWN0aW9uLXNlcGFyYXRvci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vcmlnaW4tZm9ybS9zcmMvbGliL2Zvcm1seS9mb3JtLXNlY3Rpb24tc2VwYXJhdG9yLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQ2xELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7O0FBb0I3QyxNQUFNLE9BQU8sNkJBQThCLFNBQVEsU0FBUztJQUkxRCxRQUFRO1FBQ04sSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUM7WUFDekIsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDLGlCQUFpQixDQUFDLENBQUM7WUFDN0QsTUFBTSxjQUFjLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO1lBQ2xFLElBQUksY0FBYyxJQUFJLGNBQWMsQ0FBQyxRQUFRLENBQUMsS0FBSyxLQUFLLEVBQUUsQ0FBQztnQkFDekQsSUFBSSxDQUFDLGNBQWMsR0FBRyxjQUFjLENBQUM7WUFDdkMsQ0FBQztRQUNILENBQUM7SUFDSCxDQUFDOytHQVpVLDZCQUE2QjttR0FBN0IsNkJBQTZCLHFGQWhCOUI7Ozs7Ozs7R0FPVDs7NEZBU1UsNkJBQTZCO2tCQWxCekMsU0FBUzsrQkFDRSx3QkFBd0IsWUFDeEI7Ozs7Ozs7R0FPVCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGaWVsZFR5cGUgfSBmcm9tICdAbmd4LWZvcm1seS9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZm9ybS1zZWN0aW9uLXNlcGFyYXRvcicsXG4gIHRlbXBsYXRlOiBgXG4gICAgPGRpdiBjbGFzcz1cInNlcGFyYXRvclwiIHN0eWxlPVwibWFyZ2luOiAyJSA7XCI+XG4gICAgICA8aDIgKm5nSWY9XCJ0byAmJiB0b1sndGl0bGUnXVwiIFtuZ1N0eWxlXT1cImhlYWRpbmcyU3R5bGVcIj5cbiAgICAgICAge3sgdG9bJ3RpdGxlJ10gfX1cbiAgICAgIDwvaDI+XG4gICAgICA8aHIgKm5nSWY9XCJ0byAmJiB0b1snc2hvd1NlcGFyYXRvciddXCIgW25nU3R5bGVdPVwic2VwYXJhdG9yU3R5bGVcIiAvPlxuICAgIDwvZGl2PlxuICBgLFxuICBzdHlsZXM6IFtcbiAgICBgXG4gICAgICAuc2VwYXJhdG9yIHtcbiAgICAgICAgbWFyZ2luOiAyJSAwO1xuICAgICAgfVxuICAgIGAsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEZvcm1TZWN0aW9uU2VwYXJhdG9yQ29tcG9uZW50IGV4dGVuZHMgRmllbGRUeXBlIGltcGxlbWVudHMgT25Jbml0IHtcbiAgaGVhZGluZzJTdHlsZTogW3Byb3A6IHN0cmluZ107XG4gIHNlcGFyYXRvclN0eWxlOiBbcHJvcDogc3RyaW5nXTtcblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5wcm9wc1snZGVzaWduJ10pIHtcbiAgICAgIHRoaXMuaGVhZGluZzJTdHlsZSA9IHRoaXMucHJvcHNbJ2Rlc2lnbiddWycuZm9udC1oZWFkaW5nLTInXTtcbiAgICAgIGNvbnN0IHNlcGFyYXRvclN0eWxlID0gdGhpcy5wcm9wc1snZGVzaWduJ11bJy5zZXBhcmF0b3Itc2VjdGlvbiddO1xuICAgICAgaWYgKHNlcGFyYXRvclN0eWxlICYmIHNlcGFyYXRvclN0eWxlWydoZWlnaHQnXSAhPT0gJzBweCcpIHtcbiAgICAgICAgdGhpcy5zZXBhcmF0b3JTdHlsZSA9IHNlcGFyYXRvclN0eWxlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIl19