ngx-render-material-forms 2.5.19 → 2.5.21

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 (157) hide show
  1. package/esm2020/lib/FormioControl.mjs +36 -0
  2. package/esm2020/lib/components/Base.mjs +32 -0
  3. package/esm2020/lib/components/MaterialComponent.mjs +145 -0
  4. package/esm2020/lib/components/MaterialNestedComponent.mjs +38 -0
  5. package/esm2020/lib/components/Webform.mjs +18 -0
  6. package/esm2020/lib/components/add-on-products/add-on-products.component.mjs +842 -0
  7. package/esm2020/lib/components/button/button.component.mjs +102 -0
  8. package/esm2020/lib/components/calendar/calendar.component.mjs +129 -0
  9. package/esm2020/lib/components/checkbox/checkbox.component.mjs +54 -0
  10. package/esm2020/lib/components/columns/columns.component.mjs +69 -0
  11. package/esm2020/lib/components/common.service.mjs +256 -0
  12. package/esm2020/lib/components/confirmation-dialog/confirmation-dialog.component.mjs +25 -0
  13. package/esm2020/lib/components/container/container.component.mjs +25 -0
  14. package/{esm2022 → esm2020}/lib/components/content/content.component.mjs +18 -18
  15. package/esm2020/lib/components/currency/currency.component.mjs +43 -0
  16. package/esm2020/lib/components/datagrid/datagrid.component.mjs +707 -0
  17. package/esm2020/lib/components/date/date.component.mjs +363 -0
  18. package/{esm2022 → esm2020}/lib/components/day/day.component.mjs +75 -75
  19. package/esm2020/lib/components/editgrid/editgrid.component.mjs +243 -0
  20. package/esm2020/lib/components/email/email.component.mjs +30 -0
  21. package/esm2020/lib/components/fieldset/fieldset.component.mjs +50 -0
  22. package/esm2020/lib/components/formio-form-field/formio-form-field.component.mjs +57 -0
  23. package/esm2020/lib/components/formio.wizard.mjs +88 -0
  24. package/{esm2022 → esm2020}/lib/components/hidden/hidden.component.mjs +20 -20
  25. package/esm2020/lib/components/html/html.component.mjs +29 -0
  26. package/esm2020/lib/components/index.mjs +125 -0
  27. package/{esm2022 → esm2020}/lib/components/label/label.component.mjs +17 -17
  28. package/esm2020/lib/components/number/number.component.mjs +67 -0
  29. package/esm2020/lib/components/panel/panel.component.mjs +57 -0
  30. package/esm2020/lib/components/password/password.component.mjs +30 -0
  31. package/esm2020/lib/components/phonenumber/phonenumber.component.mjs +30 -0
  32. package/esm2020/lib/components/radio/radio.component.mjs +96 -0
  33. package/esm2020/lib/components/select/select.component.mjs +593 -0
  34. package/esm2020/lib/components/selectboxes/selectboxes.component.mjs +102 -0
  35. package/esm2020/lib/components/signature/signature.component.mjs +103 -0
  36. package/esm2020/lib/components/survey/survey.component.mjs +167 -0
  37. package/esm2020/lib/components/table/table.component.mjs +97 -0
  38. package/esm2020/lib/components/tabs/tabs.component.mjs +43 -0
  39. package/esm2020/lib/components/tags/tags.component.mjs +117 -0
  40. package/esm2020/lib/components/textarea/textarea.component.mjs +98 -0
  41. package/esm2020/lib/components/textfield/textfield.component.mjs +124 -0
  42. package/esm2020/lib/components/time/time.component.mjs +206 -0
  43. package/esm2020/lib/components/url/url.component.mjs +30 -0
  44. package/esm2020/lib/components/well/well.component.mjs +43 -0
  45. package/{esm2022 → esm2020}/lib/const/ButtonsThemes.mjs +16 -16
  46. package/{esm2022 → esm2020}/lib/const/LabelPositions.mjs +9 -9
  47. package/esm2020/lib/directives/mask.directive.mjs +65 -0
  48. package/esm2020/lib/formio.component.mjs +80 -0
  49. package/{esm2022 → esm2020}/lib/ngx-render-material-forms.component.mjs +15 -15
  50. package/esm2020/lib/ngx-render-material-forms.module.mjs +378 -0
  51. package/{esm2022 → esm2020}/lib/ngx-render-material-forms.service.mjs +14 -14
  52. package/{esm2022 → esm2020}/lib/renderer.mjs +12 -12
  53. package/{esm2022 → esm2020}/ngx-render-material-forms.js +4 -4
  54. package/{esm2022 → esm2020}/public-api.mjs +6 -6
  55. package/fesm2015/ngx-render-material-forms.js +5888 -0
  56. package/fesm2015/ngx-render-material-forms.mjs.map +1 -0
  57. package/{fesm2022 → fesm2020}/ngx-render-material-forms.js +4360 -4320
  58. package/fesm2020/ngx-render-material-forms.mjs.map +1 -0
  59. package/index.d.ts +5 -5
  60. package/lib/FormioControl.d.ts +7 -7
  61. package/lib/components/Base.d.ts +2 -2
  62. package/lib/components/MaterialComponent.d.ts +30 -30
  63. package/lib/components/MaterialNestedComponent.d.ts +13 -13
  64. package/lib/components/Webform.d.ts +1 -1
  65. package/lib/components/add-on-products/add-on-products.component.d.ts +142 -142
  66. package/lib/components/button/button.component.d.ts +30 -30
  67. package/lib/components/calendar/calendar.component.d.ts +34 -34
  68. package/lib/components/checkbox/checkbox.component.d.ts +9 -9
  69. package/lib/components/columns/columns.component.d.ts +12 -12
  70. package/lib/components/common.service.d.ts +86 -86
  71. package/lib/components/confirmation-dialog/confirmation-dialog.component.d.ts +11 -11
  72. package/lib/components/container/container.component.d.ts +8 -8
  73. package/lib/components/content/content.component.d.ts +8 -8
  74. package/lib/components/currency/currency.component.d.ts +10 -10
  75. package/lib/components/datagrid/datagrid.component.d.ts +81 -81
  76. package/lib/components/date/date.component.d.ts +45 -43
  77. package/lib/components/day/day.component.d.ts +16 -16
  78. package/lib/components/editgrid/editgrid.component.d.ts +50 -50
  79. package/lib/components/email/email.component.d.ts +9 -9
  80. package/lib/components/fieldset/fieldset.component.d.ts +8 -8
  81. package/lib/components/formio-form-field/formio-form-field.component.d.ts +18 -18
  82. package/lib/components/formio.wizard.d.ts +19 -19
  83. package/lib/components/hidden/hidden.component.d.ts +8 -8
  84. package/lib/components/html/html.component.d.ts +11 -11
  85. package/lib/components/index.d.ts +2 -2
  86. package/lib/components/label/label.component.d.ts +6 -6
  87. package/lib/components/number/number.component.d.ts +18 -25
  88. package/lib/components/panel/panel.component.d.ts +8 -8
  89. package/lib/components/password/password.component.d.ts +9 -9
  90. package/lib/components/phonenumber/phonenumber.component.d.ts +9 -9
  91. package/lib/components/radio/radio.component.d.ts +12 -12
  92. package/lib/components/select/select.component.d.ts +77 -77
  93. package/lib/components/selectboxes/selectboxes.component.d.ts +15 -15
  94. package/lib/components/signature/signature.component.d.ts +12 -12
  95. package/lib/components/survey/survey.component.d.ts +14 -14
  96. package/lib/components/table/table.component.d.ts +12 -12
  97. package/lib/components/tabs/tabs.component.d.ts +9 -9
  98. package/lib/components/tags/tags.component.d.ts +15 -15
  99. package/lib/components/textarea/textarea.component.d.ts +13 -13
  100. package/lib/components/textfield/textfield.component.d.ts +18 -18
  101. package/lib/components/time/time.component.d.ts +27 -27
  102. package/lib/components/url/url.component.d.ts +9 -9
  103. package/lib/components/well/well.component.d.ts +8 -8
  104. package/lib/const/ButtonsThemes.d.ts +14 -14
  105. package/lib/const/LabelPositions.d.ts +8 -8
  106. package/lib/directives/mask.directive.d.ts +17 -17
  107. package/lib/formio.component.d.ts +15 -15
  108. package/lib/ngx-render-material-forms.component.d.ts +8 -8
  109. package/lib/ngx-render-material-forms.module.d.ts +112 -110
  110. package/lib/ngx-render-material-forms.service.d.ts +6 -6
  111. package/lib/renderer.d.ts +8 -8
  112. package/package.json +11 -5
  113. package/public-api.d.ts +3 -3
  114. package/esm2022/lib/FormioControl.mjs +0 -36
  115. package/esm2022/lib/components/Base.mjs +0 -32
  116. package/esm2022/lib/components/MaterialComponent.mjs +0 -148
  117. package/esm2022/lib/components/MaterialNestedComponent.mjs +0 -38
  118. package/esm2022/lib/components/Webform.mjs +0 -18
  119. package/esm2022/lib/components/add-on-products/add-on-products.component.mjs +0 -841
  120. package/esm2022/lib/components/button/button.component.mjs +0 -101
  121. package/esm2022/lib/components/calendar/calendar.component.mjs +0 -127
  122. package/esm2022/lib/components/checkbox/checkbox.component.mjs +0 -53
  123. package/esm2022/lib/components/columns/columns.component.mjs +0 -58
  124. package/esm2022/lib/components/common.service.mjs +0 -255
  125. package/esm2022/lib/components/confirmation-dialog/confirmation-dialog.component.mjs +0 -24
  126. package/esm2022/lib/components/container/container.component.mjs +0 -24
  127. package/esm2022/lib/components/currency/currency.component.mjs +0 -41
  128. package/esm2022/lib/components/datagrid/datagrid.component.mjs +0 -693
  129. package/esm2022/lib/components/date/date.component.mjs +0 -354
  130. package/esm2022/lib/components/editgrid/editgrid.component.mjs +0 -243
  131. package/esm2022/lib/components/email/email.component.mjs +0 -28
  132. package/esm2022/lib/components/fieldset/fieldset.component.mjs +0 -49
  133. package/esm2022/lib/components/formio-form-field/formio-form-field.component.mjs +0 -56
  134. package/esm2022/lib/components/formio.wizard.mjs +0 -88
  135. package/esm2022/lib/components/html/html.component.mjs +0 -29
  136. package/esm2022/lib/components/index.mjs +0 -125
  137. package/esm2022/lib/components/number/number.component.mjs +0 -114
  138. package/esm2022/lib/components/panel/panel.component.mjs +0 -56
  139. package/esm2022/lib/components/password/password.component.mjs +0 -28
  140. package/esm2022/lib/components/phonenumber/phonenumber.component.mjs +0 -28
  141. package/esm2022/lib/components/radio/radio.component.mjs +0 -93
  142. package/esm2022/lib/components/select/select.component.mjs +0 -592
  143. package/esm2022/lib/components/selectboxes/selectboxes.component.mjs +0 -99
  144. package/esm2022/lib/components/signature/signature.component.mjs +0 -99
  145. package/esm2022/lib/components/survey/survey.component.mjs +0 -166
  146. package/esm2022/lib/components/table/table.component.mjs +0 -96
  147. package/esm2022/lib/components/tabs/tabs.component.mjs +0 -42
  148. package/esm2022/lib/components/tags/tags.component.mjs +0 -114
  149. package/esm2022/lib/components/textarea/textarea.component.mjs +0 -94
  150. package/esm2022/lib/components/textfield/textfield.component.mjs +0 -122
  151. package/esm2022/lib/components/time/time.component.mjs +0 -205
  152. package/esm2022/lib/components/url/url.component.mjs +0 -28
  153. package/esm2022/lib/components/well/well.component.mjs +0 -41
  154. package/esm2022/lib/directives/mask.directive.mjs +0 -65
  155. package/esm2022/lib/formio.component.mjs +0 -77
  156. package/esm2022/lib/ngx-render-material-forms.module.mjs +0 -332
  157. package/fesm2022/ngx-render-material-forms.mjs.map +0 -1
@@ -1,243 +0,0 @@
1
- import { Component, ViewChild, ViewChildren } from '@angular/core';
2
- import { MaterialNestedComponent } from '../MaterialNestedComponent';
3
- import EditGridComponent from 'formiojs/components/editgrid/EditGrid.js';
4
- import Components from 'formiojs/components/Components';
5
- import isString from 'lodash/isString';
6
- import * as i0 from "@angular/core";
7
- var EditRowState;
8
- (function (EditRowState) {
9
- EditRowState["NEW"] = "new";
10
- EditRowState["EDITING"] = "editing";
11
- EditRowState["SAVED"] = "saved";
12
- EditRowState["REMOVED"] = "removed";
13
- EditRowState["DRAFT"] = "draft";
14
- })(EditRowState || (EditRowState = {}));
15
- ;
16
- /* tslint:disable no-bitwise only-arrow-functions */
17
- const hashCode = function (str) {
18
- let hash = 0;
19
- let i = 0;
20
- let chr;
21
- str = str.replace(/\s/g, '');
22
- if (str.length === 0) {
23
- return hash;
24
- }
25
- for (i = 0; i < str.length; i++) {
26
- chr = str.charCodeAt(i);
27
- hash = ((hash << 5) - hash) + chr;
28
- hash |= 0; // Convert to 32bit integer
29
- }
30
- return hash;
31
- };
32
- /* tslint:enable no-bitwise only-arrow-functions */
33
- // Do nothing to createRowComponents, let mat-formio handle it.
34
- /* tslint:disable only-arrow-functions */
35
- EditGridComponent.prototype.createRowComponents = function () {
36
- return [];
37
- };
38
- const checkRow = EditGridComponent.prototype.checkRow;
39
- EditGridComponent.prototype.checkRow = function (data, editRow, flags = {}) {
40
- if (flags.checkRow) {
41
- return checkRow.call(this, data, editRow, flags);
42
- }
43
- else {
44
- return true;
45
- }
46
- };
47
- /* tslint:enable only-arrow-functions */
48
- const DEFAULT_HEADER_TEMPLATES = [
49
- hashCode(EditGridComponent.defaultHeaderTemplate),
50
- hashCode(`
51
- <div class="row">
52
- {% (components || []).forEach(function(component) { %}
53
- <div class="col-sm-2">{{ component.label }}</div>
54
- {% }) %}
55
- </div>`)
56
- ];
57
- const DEFAULT_ROW_TEMPLATES = [
58
- hashCode(EditGridComponent.defaultRowTemplate),
59
- hashCode(`<div class="row">
60
- {% util.eachComponent(components, function(component) { %}
61
- <div class="col-sm-2">
62
- {{ getView(component, row[component.key]) }}
63
- </div>
64
- {% }) %}
65
- {% if (!instance.options.readOnly) { %}
66
- <div class="col-sm-2">
67
- <div class="btn-group pull-right">
68
- <button class="btn btn-default btn-sm editRow">Edit</button>
69
- <button class="btn btn-danger btn-sm removeRow">Delete</button>
70
- </div>
71
- </div>
72
- {% } %}
73
- </div>`)
74
- ];
75
- export class MaterialEditGridComponent extends MaterialNestedComponent {
76
- constructor() {
77
- super(...arguments);
78
- this.columns = {};
79
- this.colWidth = 0;
80
- this.valid = true;
81
- this.RowStates = EditRowState;
82
- }
83
- getRowTemplate(content) {
84
- return `<mat-list style="display: flex;">
85
- {% (components || []).forEach(function(component) { %}
86
- {% if (!component.hasOwnProperty('tableView') || component.tableView) { %}
87
- <mat-list-item style="width: {{ colWidth }}%; margin: 0 0.8rem">${content}</mat-list-item>
88
- {% } %}
89
- {% }) %}
90
- </mat-list>`;
91
- }
92
- validate(index) {
93
- if (!this.forms) {
94
- return;
95
- }
96
- const forms = this.forms.toArray();
97
- if (!forms[index]) {
98
- return;
99
- }
100
- const formioComponent = forms[index];
101
- const { data } = formioComponent.formio.submission;
102
- const isInvalid = Object.keys(data).some(value => isString(data[value]) && data[value].length === 0);
103
- if (isInvalid) {
104
- this.valid = false;
105
- }
106
- else {
107
- this.valid = true;
108
- }
109
- }
110
- setInstance(instance) {
111
- if (instance.component.templates.header &&
112
- (DEFAULT_HEADER_TEMPLATES.indexOf(hashCode(instance.component.templates.header)) !== -1)) {
113
- instance.component.templates.header = this.getRowTemplate('{{ component.label }}');
114
- }
115
- if (instance.component.templates.row &&
116
- (DEFAULT_ROW_TEMPLATES.indexOf(hashCode(instance.component.templates.row)) !== -1)) {
117
- instance.component.templates.row = this.getRowTemplate('{{ getView(component, row[component.key]) }}');
118
- }
119
- this.displayedColumns = instance.component.components.map((comp) => {
120
- if (comp.hasOwnProperty('tableView') && !comp.tableView) {
121
- return false;
122
- }
123
- this.columns[comp.key] = comp;
124
- return comp.key;
125
- }).filter(name => !!name);
126
- const dataValue = instance.dataValue || [];
127
- this.colWidth = instance.component.components.length ? Math.floor(100 / instance.component.components.length) : 100;
128
- if (instance.component.templates && instance.component.templates.header) {
129
- this.header = instance.renderString(instance.component.templates.header, {
130
- components: instance.component.components,
131
- value: dataValue,
132
- colWidth: this.colWidth
133
- });
134
- }
135
- if (instance.component.templates && instance.component.templates.footer) {
136
- this.footer = instance.renderString(instance.component.templates.footer, {
137
- components: instance.component.components,
138
- value: dataValue,
139
- colWidth: this.colWidth
140
- });
141
- }
142
- setTimeout(() => {
143
- this.renderTemplate(this.headerElement, this.header);
144
- this.renderTemplate(this.footerElement, this.footer);
145
- }, 0);
146
- super.setInstance(instance);
147
- }
148
- addAnother() {
149
- const row = this.instance.addRow();
150
- }
151
- editRow(row, index) {
152
- const { state } = row;
153
- const { NEW, REMOVED } = this.RowStates;
154
- if (state === NEW || state === REMOVED) {
155
- return;
156
- }
157
- this.instance.editRow(index);
158
- const forms = this.forms.toArray();
159
- if (forms[index]) {
160
- forms[index].formio.submission = { data: JSON.parse(JSON.stringify(row.data)) };
161
- }
162
- }
163
- /**
164
- * Updates the row template.
165
- *
166
- * @param row
167
- * @param index
168
- */
169
- updateRowTemplate(rowElement, index, comps) {
170
- const self = this;
171
- const editRow = { ...this.instance.editRows[index] };
172
- if (editRow.state !== this.RowStates.NEW) {
173
- this.renderTemplate(rowElement, this.instance.renderString(this.instance.component.templates.row, {
174
- row: this.instance.dataValue[index] || {},
175
- data: this.instance.data,
176
- rowIndex: index,
177
- colWidth: this.colWidth,
178
- components: this.instance.component.components,
179
- getView: function getView(component, data) {
180
- if (!comps[component.type]) {
181
- comps[component.type] = Components.create(component, {}, {}, true);
182
- }
183
- return comps[component.type] ? comps[component.type].getView(data) : '';
184
- }
185
- }));
186
- }
187
- }
188
- /**
189
- * Saves a row.
190
- *
191
- * @param row - The edit grid row.
192
- * @param index - The index for this row.
193
- */
194
- saveRow(row, index) {
195
- const forms = this.forms.toArray();
196
- if (forms[index]) {
197
- const formioComponent = forms[index];
198
- row.data = JSON.parse(JSON.stringify(formioComponent.formio.submission.data));
199
- this.instance.saveRow(index);
200
- const rows = this.rowElements.toArray();
201
- if (rows && rows[index]) {
202
- this.updateRowTemplate(rows[index], index, {});
203
- }
204
- }
205
- }
206
- cancelRow(index) {
207
- this.instance.cancelRow(index);
208
- this.valid = true;
209
- }
210
- renderTemplate(element, template) {
211
- if (!element || !element.nativeElement) {
212
- return;
213
- }
214
- element.nativeElement.innerHTML = template;
215
- }
216
- ngAfterViewInit() {
217
- this.rowElements.changes.subscribe((rows) => {
218
- const rowCache = {};
219
- rows.forEach((row, index) => this.updateRowTemplate(row, index, rowCache));
220
- });
221
- }
222
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: MaterialEditGridComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
223
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: MaterialEditGridComponent, selector: "mat-formio-editgrid", viewQueries: [{ propertyName: "headerElement", first: true, predicate: ["header"], descendants: true }, { propertyName: "footerElement", first: true, predicate: ["footer"], descendants: true }, { propertyName: "rowElements", predicate: ["rows"], descendants: true }, { propertyName: "forms", predicate: ["forms"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<!-- <mat-formio-form-field [instance]=\"instance\" [componentTemplate]=\"componentTemplate\" [labelTemplate]=\"labelTemplate\">\r\n</mat-formio-form-field>\r\n<ng-template #componentTemplate let-hasLabel>\r\n\r\n <span fxLayout=\"column\" fxLayoutGap=\"1em\" fxFill>\r\n <ng-container *ngIf=\"hasLabel\">\r\n <ng-container *ngTemplateOutlet=\"labelTemplate\"></ng-container>\r\n </ng-container>\r\n <mat-accordion>\r\n <mat-expansion-panel *ngIf=\"header\" disabled=\"true\">\r\n <mat-expansion-panel-header>\r\n <span #header fxFill></span>\r\n </mat-expansion-panel-header>\r\n </mat-expansion-panel>\r\n\r\n <mat-expansion-panel *ngFor=\"let row of instance.editRows; index as i;\" [expanded]=\"instance.isOpen(row)\">\r\n <mat-expansion-panel-header (click)=\"editRow(row, i)\">\r\n <span *ngIf=\"row.state !== RowStates.NEW\" #rows fxFill></span>\r\n </mat-expansion-panel-header>\r\n\r\n <mat-formio [form]=\"instance.component\" #forms (change)=\"validate(i)\"></mat-formio>\r\n\r\n <span fxLayout=\"row\" fxLayoutGap=\"1em\">\r\n <button mat-raised-button color=\"primary\" [disabled]=\"!valid\" (click)=\"saveRow(row, i)\">Save</button>\r\n <button mat-raised-button color=\"secondary\" (click)=\"cancelRow(i)\">Cancel</button>\r\n <button mat-raised-button color=\"warn\" (click)=\"instance.removeRow(i)\" class=\"delete-button\">\r\n <mat-icon>delete</mat-icon>\r\n </button>\r\n </span>\r\n </mat-expansion-panel>\r\n\r\n <mat-expansion-panel *ngIf=\"footer\" disabled=\"true\">\r\n <mat-expansion-panel-header>\r\n <span #footer></span>\r\n </mat-expansion-panel-header>\r\n </mat-expansion-panel>\r\n </mat-accordion>\r\n\r\n <span fxFill=\"none\" *ngIf=\"instance.hasAddButton()\">\r\n <button mat-raised-button color=\"primary\" (click)=\"addAnother()\">\r\n <mat-icon>add</mat-icon> Add Another\r\n </button>\r\n </span>\r\n </span>\r\n</ng-template>\r\n\r\n<ng-template #labelTemplate>\r\n <mat-card-title>\r\n <span [instance]=\"instance\" matFormioLabel></span>\r\n </mat-card-title>\r\n</ng-template> -->\r\n", styles: [":host .delete-button{margin-left:auto;order:2}\n"] }); }
224
- }
225
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: MaterialEditGridComponent, decorators: [{
226
- type: Component,
227
- args: [{ selector: 'mat-formio-editgrid', template: "<!-- <mat-formio-form-field [instance]=\"instance\" [componentTemplate]=\"componentTemplate\" [labelTemplate]=\"labelTemplate\">\r\n</mat-formio-form-field>\r\n<ng-template #componentTemplate let-hasLabel>\r\n\r\n <span fxLayout=\"column\" fxLayoutGap=\"1em\" fxFill>\r\n <ng-container *ngIf=\"hasLabel\">\r\n <ng-container *ngTemplateOutlet=\"labelTemplate\"></ng-container>\r\n </ng-container>\r\n <mat-accordion>\r\n <mat-expansion-panel *ngIf=\"header\" disabled=\"true\">\r\n <mat-expansion-panel-header>\r\n <span #header fxFill></span>\r\n </mat-expansion-panel-header>\r\n </mat-expansion-panel>\r\n\r\n <mat-expansion-panel *ngFor=\"let row of instance.editRows; index as i;\" [expanded]=\"instance.isOpen(row)\">\r\n <mat-expansion-panel-header (click)=\"editRow(row, i)\">\r\n <span *ngIf=\"row.state !== RowStates.NEW\" #rows fxFill></span>\r\n </mat-expansion-panel-header>\r\n\r\n <mat-formio [form]=\"instance.component\" #forms (change)=\"validate(i)\"></mat-formio>\r\n\r\n <span fxLayout=\"row\" fxLayoutGap=\"1em\">\r\n <button mat-raised-button color=\"primary\" [disabled]=\"!valid\" (click)=\"saveRow(row, i)\">Save</button>\r\n <button mat-raised-button color=\"secondary\" (click)=\"cancelRow(i)\">Cancel</button>\r\n <button mat-raised-button color=\"warn\" (click)=\"instance.removeRow(i)\" class=\"delete-button\">\r\n <mat-icon>delete</mat-icon>\r\n </button>\r\n </span>\r\n </mat-expansion-panel>\r\n\r\n <mat-expansion-panel *ngIf=\"footer\" disabled=\"true\">\r\n <mat-expansion-panel-header>\r\n <span #footer></span>\r\n </mat-expansion-panel-header>\r\n </mat-expansion-panel>\r\n </mat-accordion>\r\n\r\n <span fxFill=\"none\" *ngIf=\"instance.hasAddButton()\">\r\n <button mat-raised-button color=\"primary\" (click)=\"addAnother()\">\r\n <mat-icon>add</mat-icon> Add Another\r\n </button>\r\n </span>\r\n </span>\r\n</ng-template>\r\n\r\n<ng-template #labelTemplate>\r\n <mat-card-title>\r\n <span [instance]=\"instance\" matFormioLabel></span>\r\n </mat-card-title>\r\n</ng-template> -->\r\n", styles: [":host .delete-button{margin-left:auto;order:2}\n"] }]
228
- }], propDecorators: { headerElement: [{
229
- type: ViewChild,
230
- args: ['header']
231
- }], footerElement: [{
232
- type: ViewChild,
233
- args: ['footer']
234
- }], rowElements: [{
235
- type: ViewChildren,
236
- args: ['rows']
237
- }], forms: [{
238
- type: ViewChildren,
239
- args: ['forms']
240
- }] } });
241
- EditGridComponent.MaterialComponent = MaterialEditGridComponent;
242
- export { EditGridComponent };
243
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdGdyaWQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXJlbmRlci1tYXRlcmlhbC1mb3Jtcy9zcmMvbGliL2NvbXBvbmVudHMvZWRpdGdyaWQvZWRpdGdyaWQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXJlbmRlci1tYXRlcmlhbC1mb3Jtcy9zcmMvbGliL2NvbXBvbmVudHMvZWRpdGdyaWQvZWRpdGdyaWQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxTQUFTLEVBQ1QsWUFBWSxFQUliLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3JFLE9BQU8saUJBQWlCLE1BQU0sMENBQTBDLENBQUM7QUFFekUsT0FBTyxVQUFVLE1BQU0sZ0NBQWdDLENBQUM7QUFDeEQsT0FBTyxRQUFRLE1BQU0saUJBQWlCLENBQUM7O0FBRXZDLElBQUssWUFNSjtBQU5ELFdBQUssWUFBWTtJQUNmLDJCQUFXLENBQUE7SUFDWCxtQ0FBa0IsQ0FBQTtJQUNsQiwrQkFBZSxDQUFBO0lBQ2YsbUNBQW1CLENBQUE7SUFDbkIsK0JBQWUsQ0FBQTtBQUNqQixDQUFDLEVBTkksWUFBWSxLQUFaLFlBQVksUUFNaEI7QUFBQSxDQUFDO0FBRUYsb0RBQW9EO0FBQ3BELE1BQU0sUUFBUSxHQUFHLFVBQVMsR0FBRztJQUMzQixJQUFJLElBQUksR0FBRyxDQUFDLENBQUM7SUFDYixJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDVixJQUFJLEdBQUcsQ0FBQztJQUNSLEdBQUcsR0FBRyxHQUFHLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztJQUM3QixJQUFJLEdBQUcsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFF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Q3BCLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxHQUFlLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsR0FBRyxFQUFFLEtBQUssRUFBRSxRQUFRLENBQUMsQ0FBQyxDQUFDO1FBQ3pGLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzsrR0F6S1UseUJBQXlCO21HQUF6Qix5QkFBeUIsa2FDMUZ0Qyxzc0VBbURBOzs0RkR1Q2EseUJBQXlCO2tCQUxyQyxTQUFTOytCQUNFLHFCQUFxQjs4QkFLVixhQUFhO3NCQUFqQyxTQUFTO3VCQUFDLFFBQVE7Z0JBQ0UsYUFBYTtzQkFBakMsU0FBUzt1QkFBQyxRQUFRO2dCQUNHLFdBQVc7c0JBQWhDLFlBQVk7dUJBQUMsTUFBTTtnQkFDRyxLQUFLO3NCQUEzQixZQUFZO3VCQUFDLE9BQU87O0FBdUt2QixpQkFBaUIsQ0FBQyxpQkFBaUIsR0FBRyx5QkFBeUIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ29tcG9uZW50LFxyXG4gIFZpZXdDaGlsZCxcclxuICBWaWV3Q2hpbGRyZW4sXHJcbiAgUXVlcnlMaXN0LFxyXG4gIEVsZW1lbnRSZWYsXHJcbiAgQWZ0ZXJWaWV3SW5pdFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBNYXRlcmlhbE5lc3RlZENvbXBvbmVudCB9IGZyb20gJy4uL01hdGVyaWFsTmVzdGVkQ29tcG9uZW50JztcclxuaW1wb3J0IEVkaXRHcmlkQ29tcG9uZW50IGZyb20gJ2Zvcm1pb2pzL2NvbXBvbmVudHMvZWRpdGdyaWQvRWRpdEdyaWQuanMnO1xyXG5pbXBvcnQgeyBGb3JtaW9Db21wb25lbnQgfSBmcm9tICcuLi8uLi9mb3JtaW8uY29tcG9uZW50JztcclxuaW1wb3J0IENvbXBvbmVudHMgZnJvbSAnZm9ybWlvanMvY29tcG9uZW50cy9Db21wb25lbnRzJztcclxuaW1wb3J0IGlzU3RyaW5nIGZyb20gJ2xvZGFzaC9pc1N0cmluZyc7XHJcblxyXG5lbnVtIEVkaXRSb3dTdGF0ZSB7XHJcbiAgTkVXID0gJ25ldycsXHJcbiAgRURJVElORyA9J2VkaXRpbmcnLFxyXG4gIFNBVkVEID0gJ3NhdmVkJyxcclxuICBSRU1PVkVEID0gJ3JlbW92ZWQnLFxyXG4gIERSQUZUID0gJ2RyYWZ0J1xyXG59O1xyXG5cclxuLyogdHNsaW50OmRpc2FibGUgbm8tYml0d2lzZSBvbmx5LWFycm93LWZ1bmN0aW9ucyAqL1xyXG5jb25zdCBoYXNoQ29kZSA9IGZ1bmN0aW9uKHN0cikge1xyXG4gIGxldCBoYXNoID0gMDtcclxuICBsZXQgaSA9IDA7XHJcbiAgbGV0IGNocjtcclxuICBzdHIgPSBzdHIucmVwbGFjZSgvXFxzL2csICcnKTtcclxuICBpZiAoc3RyLmxlbmd0aCA9PT0gMCkge1xyXG4gICAgcmV0dXJuIGhhc2g7XHJcbiAgfVxyXG4gIGZvciAoaSA9IDA7IGkgPCBzdHIubGVuZ3RoOyBpKyspIHtcclxuICAgIGNociAgID0gc3RyLmNoYXJDb2RlQXQoaSk7XHJcbiAgICBoYXNoICA9ICgoaGFzaCA8PCA1KSAtIGhhc2gpICsgY2hyO1xyXG4gICAgaGFzaCB8PSAwOyAvLyBDb252ZXJ0IHRvIDMyYml0IGludGVnZXJcclxuICB9XHJcbiAgcmV0dXJuIGhhc2g7XHJcbn07XHJcbi8qIHRzbGludDplbmFibGUgbm8tYml0d2lzZSBvbmx5LWFycm93LWZ1bmN0aW9ucyAqL1xyXG5cclxuLy8gRG8gbm90aGluZyB0byBjcmVhdGVSb3dDb21wb25lbnRzLCBsZXQgbWF0LWZvcm1pbyBoYW5kbGUgaXQuXHJcbi8qIHRzbGludDpkaXNhYmxlIG9ubHktYXJyb3ctZnVuY3Rpb25zICovXHJcbkVkaXRHcmlkQ29tcG9uZW50LnByb3RvdHlwZS5jcmVhdGVSb3dDb21wb25lbnRzID0gZnVuY3Rpb24oKSB7XHJcbiAgcmV0dXJuIFtdO1xyXG59O1xyXG5cclxuY29uc3QgY2hlY2tSb3cgPSBFZGl0R3JpZENvbXBvbmVudC5wcm90b3R5cGUuY2hlY2tSb3c7XHJcbkVkaXRHcmlkQ29tcG9uZW50LnByb3RvdHlwZS5jaGVja1JvdyA9IGZ1bmN0aW9uKGRhdGEsIGVkaXRSb3csIGZsYWdzOiBhbnkgPSB7fSkge1xyXG4gIGlmIChmbGFncy5jaGVja1Jvdykge1xyXG4gICAgcmV0dXJuIGNoZWNrUm93LmNhbGwodGhpcywgZGF0YSwgZWRpdFJvdywgZmxhZ3MpO1xyXG4gIH0gZWxzZSB7XHJcbiAgICByZXR1cm4gdHJ1ZTtcclxuICB9XHJcbn07XHJcbi8qIHRzbGludDplbmFibGUgb25seS1hcnJvdy1mdW5jdGlvbnMgKi9cclxuXHJcbmNvbnN0IERFRkFVTFRfSEVBREVSX1RFTVBMQVRFUyA9IFtcclxuICBoYXNoQ29kZSgoRWRpdEdyaWRDb21wb25lbnQgYXMgYW55KS5kZWZhdWx0SGVhZGVyVGVtcGxhdGUpLFxyXG4gIGhhc2hDb2RlKGBcclxuICA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAgICB7JSAoY29tcG9uZW50cyB8fCBbXSkuZm9yRWFjaChmdW5jdGlvbihjb21wb25lbnQpIHsgJX1cclxuICAgICAgPGRpdiBjbGFzcz1cImNvbC1zbS0yXCI+e3sgY29tcG9uZW50LmxhYmVsIH19PC9kaXY+XHJcbiAgICB7JSB9KSAlfVxyXG4gIDwvZGl2PmApXHJcbl07XHJcblxyXG5jb25zdCBERUZBVUxUX1JPV19URU1QTEFURVMgPSBbXHJcbiAgaGFzaENvZGUoKEVkaXRHcmlkQ29tcG9uZW50IGFzIGFueSkuZGVmYXVsdFJvd1RlbXBsYXRlKSxcclxuICBoYXNoQ29kZShgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gIHslIHV0aWwuZWFjaENvbXBvbmVudChjb21wb25lbnRzLCBmdW5jdGlvbihjb21wb25lbnQpIHsgJX1cclxuICAgIDxkaXYgY2xhc3M9XCJjb2wtc20tMlwiPlxyXG4gICAgICB7eyBnZXRWaWV3KGNvbXBvbmVudCwgcm93W2NvbXBvbmVudC5rZXldKSB9fVxyXG4gICAgPC9kaXY+XHJcbiAgeyUgfSkgJX1cclxuICB7JSBpZiAoIWluc3RhbmNlLm9wdGlvbnMucmVhZE9ubHkpIHsgJX1cclxuICAgIDxkaXYgY2xhc3M9XCJjb2wtc20tMlwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiYnRuLWdyb3VwIHB1bGwtcmlnaHRcIj5cclxuICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYnRuIGJ0bi1kZWZhdWx0IGJ0bi1zbSBlZGl0Um93XCI+RWRpdDwvYnV0dG9uPlxyXG4gICAgICAgIDxidXR0b24gY2xhc3M9XCJidG4gYnRuLWRhbmdlciBidG4tc20gcmVtb3ZlUm93XCI+RGVsZXRlPC9idXR0b24+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgeyUgfSAlfVxyXG48L2Rpdj5gKVxyXG5dO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdtYXQtZm9ybWlvLWVkaXRncmlkJyxcclxuICBzdHlsZVVybHM6IFsnLi9lZGl0Z3JpZC5jb21wb25lbnQuY3NzJ10sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2VkaXRncmlkLmNvbXBvbmVudC5odG1sJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgTWF0ZXJpYWxFZGl0R3JpZENvbXBvbmVudCBleHRlbmRzIE1hdGVyaWFsTmVzdGVkQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XHJcbiAgQFZpZXdDaGlsZCgnaGVhZGVyJykgaGVhZGVyRWxlbWVudDogRWxlbWVudFJlZjtcclxuICBAVmlld0NoaWxkKCdmb290ZXInKSBmb290ZXJFbGVtZW50OiBFbGVtZW50UmVmO1xyXG4gIEBWaWV3Q2hpbGRyZW4oJ3Jvd3MnKSByb3dFbGVtZW50czogUXVlcnlMaXN0PEVsZW1lbnRSZWY+O1xyXG4gIEBWaWV3Q2hpbGRyZW4oJ2Zvcm1zJykgZm9ybXM6IFF1ZXJ5TGlzdDxGb3JtaW9Db21wb25lbnQ+O1xyXG4gIHB1YmxpYyBoZWFkZXI6IHN0cmluZztcclxuICBwdWJsaWMgZm9vdGVyOiBzdHJpbmc7XHJcbiAgcHVibGljIGRpc3BsYXllZENvbHVtbnM6IHN0cmluZ1tdO1xyXG4gIHB1YmxpYyBjb2x1bW5zOiBhbnkgPSB7fTtcclxuICBwdWJsaWMgY29sV2lkdGggPSAwO1xyXG4gIHB1YmxpYyB2YWxpZCA9IHRydWU7XHJcbiAgcHVibGljIFJvd1N0YXRlcyA9IEVkaXRSb3dTdGF0ZTtcclxuXHJcbiAgZ2V0Um93VGVtcGxhdGUoY29udGVudCkge1xyXG4gICAgcmV0dXJuIGA8bWF0LWxpc3Qgc3R5bGU9XCJkaXNwbGF5OiBmbGV4O1wiPlxyXG4gICAgICB7JSAoY29tcG9uZW50cyB8fCBbXSkuZm9yRWFjaChmdW5jdGlvbihjb21wb25lbnQpIHsgJX1cclxuICAgICAgICB7JSBpZiAoIWNvbXBvbmVudC5oYXNPd25Qcm9wZXJ0eSgndGFibGVWaWV3JykgfHwgY29tcG9uZW50LnRhYmxlVmlldykgeyAlfVxyXG4gICAgICAgICAgPG1hdC1saXN0LWl0ZW0gc3R5bGU9XCJ3aWR0aDoge3sgY29sV2lkdGggfX0lOyBtYXJnaW46IDAgMC44cmVtXCI+JHtjb250ZW50fTwvbWF0LWxpc3QtaXRlbT5cclxuICAgICAgICB7JSB9ICV9XHJcbiAgICAgIHslIH0pICV9XHJcbiAgICA8L21hdC1saXN0PmA7XHJcbn1cclxuXHJcbiAgdmFsaWRhdGUoaW5kZXgpIHtcclxuICAgIGlmICghdGhpcy5mb3Jtcykge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICBjb25zdCBmb3JtcyA9IHRoaXMuZm9ybXMudG9BcnJheSgpO1xyXG4gICAgaWYgKCFmb3Jtc1tpbmRleF0pIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgY29uc3QgZm9ybWlvQ29tcG9uZW50ID0gZm9ybXNbaW5kZXhdO1xyXG4gICAgY29uc3Qge2RhdGF9ID0gZm9ybWlvQ29tcG9uZW50LmZvcm1pby5zdWJtaXNzaW9uO1xyXG4gICAgY29uc3QgaXNJbnZhbGlkID0gT2JqZWN0LmtleXMoZGF0YSkuc29tZShcclxuICAgICAgdmFsdWUgPT4gaXNTdHJpbmcoZGF0YVt2YWx1ZV0pICYmIGRhdGFbdmFsdWVdLmxlbmd0aCA9PT0gMFxyXG4gICAgKTtcclxuXHJcbiAgICBpZiAoaXNJbnZhbGlkKSB7XHJcbiAgICAgIHRoaXMudmFsaWQgPSBmYWxzZTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMudmFsaWQgPSB0cnVlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc2V0SW5zdGFuY2UoaW5zdGFuY2UpIHtcclxuICAgIGlmIChcclxuICAgICAgaW5zdGFuY2UuY29tcG9uZW50LnRlbXBsYXRlcy5oZWFkZXIgJiZcclxuICAgICAgKERFRkFVTFRfSEVBREVSX1RFTVBMQVRFUy5pbmRleE9mKGhhc2hDb2RlKGluc3RhbmNlLmNvbXBvbmVudC50ZW1wbGF0ZXMuaGVhZGVyKSkgIT09IC0xKVxyXG4gICAgKSB7XHJcbiAgICAgIGluc3RhbmNlLmNvbXBvbmVudC50ZW1wbGF0ZXMuaGVhZGVyID0gdGhpcy5nZXRSb3dUZW1wbGF0ZSgne3sgY29tcG9uZW50LmxhYmVsIH19Jyk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKGluc3RhbmNlLmNvbXBvbmVudC50ZW1wbGF0ZXMucm93ICYmXHJcbiAgICAgIChERUZBVUxUX1JPV19URU1QTEFURVMuaW5kZXhPZihoYXNoQ29kZShpbnN0YW5jZS5jb21wb25lbnQudGVtcGxhdGVzLnJvdykpICE9PSAtMSlcclxuICAgICkge1xyXG4gICAgICBpbnN0YW5jZS5jb21wb25lbnQudGVtcGxhdGVzLnJvdyA9IHRoaXMuZ2V0Um93VGVtcGxhdGUoJ3t7IGdldFZpZXcoY29tcG9uZW50LCByb3dbY29tcG9uZW50LmtleV0pIH19Jyk7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5kaXNwbGF5ZWRDb2x1bW5zID0gaW5zdGFuY2UuY29tcG9uZW50LmNvbXBvbmVudHMubWFwKChjb21wKSA9PiB7XHJcbiAgICAgIGlmIChjb21wLmhhc093blByb3BlcnR5KCd0YWJsZVZpZXcnKSAmJiAhY29tcC50YWJsZVZpZXcpIHtcclxuICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRoaXMuY29sdW1uc1tjb21wLmtleV0gPSBjb21wO1xyXG4gICAgICByZXR1cm4gY29tcC5rZXk7XHJcbiAgICB9KS5maWx0ZXIobmFtZSA9PiAhIW5hbWUpO1xyXG4gICAgY29uc3QgZGF0YVZhbHVlID0gaW5zdGFuY2UuZGF0YVZhbHVlIHx8IFtdO1xyXG4gICAgdGhpcy5jb2xXaWR0aCA9IGluc3RhbmNlLmNvbXBvbmVudC5jb21wb25lbnRzLmxlbmd0aCA/IE1hdGguZmxvb3IoMTAwIC8gaW5zdGFuY2UuY29tcG9uZW50LmNvbXBvbmVudHMubGVuZ3RoKSA6IDEwMDtcclxuICAgIGlmIChpbnN0YW5jZS5jb21wb25lbnQudGVtcGxhdGVzICYmIGluc3RhbmNlLmNvbXBvbmVudC50ZW1wbGF0ZXMuaGVhZGVyKSB7XHJcbiAgICAgIHRoaXMuaGVhZGVyID0gaW5zdGFuY2UucmVuZGVyU3RyaW5nKGluc3RhbmNlLmNvbXBvbmVudC50ZW1wbGF0ZXMuaGVhZGVyLCB7XHJcbiAgICAgICAgY29tcG9uZW50czogaW5zdGFuY2UuY29tcG9uZW50LmNvbXBvbmVudHMsXHJcbiAgICAgICAgdmFsdWU6IGRhdGFWYWx1ZSxcclxuICAgICAgICBjb2xXaWR0aDogdGhpcy5jb2xXaWR0aFxyXG4gICAgICB9KTtcclxuICAgIH1cclxuICAgIGlmIChpbnN0YW5jZS5jb21wb25lbnQudGVtcGxhdGVzICYmIGluc3RhbmNlLmNvbXBvbmVudC50ZW1wbGF0ZXMuZm9vdGVyKSB7XHJcbiAgICAgIHRoaXMuZm9vdGVyID0gaW5zdGFuY2UucmVuZGVyU3RyaW5nKGluc3RhbmNlLmNvbXBvbmVudC50ZW1wbGF0ZXMuZm9vdGVyLCB7XHJcbiAgICAgICAgY29tcG9uZW50czogaW5zdGFuY2UuY29tcG9uZW50LmNvbXBvbmVudHMsXHJcbiAgICAgICAgdmFsdWU6IGRhdGFWYWx1ZSxcclxuICAgICAgICBjb2xXaWR0aDogdGhpcy5jb2xXaWR0aFxyXG4gICAgICB9KTtcclxuICAgIH1cclxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICB0aGlzLnJlbmRlclRlbXBsYXRlKHRoaXMuaGVhZGVyRWxlbWVudCwgdGhpcy5oZWFkZXIpO1xyXG4gICAgICB0aGlzLnJlbmRlclRlbXBsYXRlKHRoaXMuZm9vdGVyRWxlbWVudCwgdGhpcy5mb290ZXIpO1xyXG4gICAgfSwgMCk7XHJcbiAgICBzdXBlci5zZXRJbnN0YW5jZShpbnN0YW5jZSk7XHJcbiAgfVxyXG5cclxuICBhZGRBbm90aGVyKCkge1xyXG4gICAgY29uc3Qgcm93ID0gdGhpcy5pbnN0YW5jZS5hZGRSb3coKTtcclxuICB9XHJcblxyXG4gIGVkaXRSb3cocm93LCBpbmRleCkge1xyXG4gICAgY29uc3QgeyBzdGF0ZSB9ID0gcm93O1xyXG4gICAgY29uc3QgeyBORVcsIFJFTU9WRUQgfSA9IHRoaXMuUm93U3RhdGVzO1xyXG5cclxuICAgIGlmIChzdGF0ZSA9PT0gTkVXIHx8IHN0YXRlID09PSBSRU1PVkVEKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIHRoaXMuaW5zdGFuY2UuZWRpdFJvdyhpbmRleCk7XHJcbiAgICBjb25zdCBmb3JtcyA9IHRoaXMuZm9ybXMudG9BcnJheSgpO1xyXG4gICAgaWYgKGZvcm1zW2luZGV4XSkge1xyXG4gICAgICBmb3Jtc1tpbmRleF0uZm9ybWlvLnN1Ym1pc3Npb24gPSB7ZGF0YTogSlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeShyb3cuZGF0YSkpfTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFVwZGF0ZXMgdGhlIHJvdyB0ZW1wbGF0ZS5cclxuICAgKlxyXG4gICAqIEBwYXJhbSByb3dcclxuICAgKiBAcGFyYW0gaW5kZXhcclxuICAgKi9cclxuICB1cGRhdGVSb3dUZW1wbGF0ZShyb3dFbGVtZW50OiBFbGVtZW50UmVmLCBpbmRleCwgY29tcHMpIHtcclxuICAgIGNvbnN0IHNlbGYgPSB0aGlzO1xyXG4gICAgY29uc3QgZWRpdFJvdzogYW55ID0gey4uLnRoaXMuaW5zdGFuY2UuZWRpdFJvd3NbaW5kZXhdfTtcclxuICAgIGlmIChlZGl0Um93LnN0YXRlICE9PSB0aGlzLlJvd1N0YXRlcy5ORVcpIHtcclxuICAgICAgdGhpcy5yZW5kZXJUZW1wbGF0ZShyb3dFbGVtZW50LCB0aGlzLmluc3RhbmNlLnJlbmRlclN0cmluZyh0aGlzLmluc3RhbmNlLmNvbXBvbmVudC50ZW1wbGF0ZXMucm93LCB7XHJcbiAgICAgICAgcm93OiB0aGlzLmluc3RhbmNlLmRhdGFWYWx1ZVtpbmRleF0gfHwge30sXHJcbiAgICAgICAgZGF0YTogdGhpcy5pbnN0YW5jZS5kYXRhLFxyXG4gICAgICAgIHJvd0luZGV4OiBpbmRleCxcclxuICAgICAgICBjb2xXaWR0aDogdGhpcy5jb2xXaWR0aCxcclxuICAgICAgICBjb21wb25lbnRzOiB0aGlzLmluc3RhbmNlLmNvbXBvbmVudC5jb21wb25lbnRzLFxyXG4gICAgICAgIGdldFZpZXc6IGZ1bmN0aW9uIGdldFZpZXcoY29tcG9uZW50LCBkYXRhKSB7XHJcbiAgICAgICAgICBpZiAoIWNvbXBzW2NvbXBvbmVudC50eXBlXSkge1xyXG4gICAgICAgICAgICBjb21wc1tjb21wb25lbnQudHlwZV0gPSBDb21wb25lbnRzLmNyZWF0ZShjb21wb25lbnQsIHt9LCB7fSwgdHJ1ZSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICByZXR1cm4gY29tcHNbY29tcG9uZW50LnR5cGVdID8gY29tcHNbY29tcG9uZW50LnR5cGVdLmdldFZpZXcoZGF0YSkgOiAnJztcclxuICAgICAgICB9XHJcbiAgICAgIH0pKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFNhdmVzIGEgcm93LlxyXG4gICAqXHJcbiAgICogQHBhcmFtIHJvdyAtIFRoZSBlZGl0IGdyaWQgcm93LlxyXG4gICAqIEBwYXJhbSBpbmRleCAtIFRoZSBpbmRleCBmb3IgdGhpcyByb3cuXHJcbiAgICovXHJcbiAgc2F2ZVJvdyhyb3csIGluZGV4KSB7XHJcbiAgICBjb25zdCBmb3JtcyA9IHRoaXMuZm9ybXMudG9BcnJheSgpO1xyXG4gICAgaWYgKGZvcm1zW2luZGV4XSkge1xyXG4gICAgICBjb25zdCBmb3JtaW9Db21wb25lbnQgPSBmb3Jtc1tpbmRleF07XHJcbiAgICAgIHJvdy5kYXRhID0gSlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeShmb3JtaW9Db21wb25lbnQuZm9ybWlvLnN1Ym1pc3Npb24uZGF0YSkpO1xyXG4gICAgICB0aGlzLmluc3RhbmNlLnNhdmVSb3coaW5kZXgpO1xyXG4gICAgICBjb25zdCByb3dzID0gdGhpcy5yb3dFbGVtZW50cy50b0FycmF5KCk7XHJcbiAgICAgIGlmIChyb3dzICYmIHJvd3NbaW5kZXhdKSB7XHJcbiAgICAgICAgdGhpcy51cGRhdGVSb3dUZW1wbGF0ZShyb3dzW2luZGV4XSwgaW5kZXgsIHt9KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgY2FuY2VsUm93KGluZGV4KSB7XHJcbiAgICB0aGlzLmluc3RhbmNlLmNhbmNlbFJvdyhpbmRleCk7XHJcbiAgICB0aGlzLnZhbGlkID0gdHJ1ZTtcclxuICB9XHJcblxyXG4gIHJlbmRlclRlbXBsYXRlKGVsZW1lbnQ6IEVsZW1lbnRSZWYsIHRlbXBsYXRlKSB7XHJcbiAgICBpZiAoIWVsZW1lbnQgfHwgIWVsZW1lbnQubmF0aXZlRWxlbWVudCkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICBlbGVtZW50Lm5hdGl2ZUVsZW1lbnQuaW5uZXJIVE1MID0gdGVtcGxhdGU7XHJcbiAgfVxyXG5cclxuICBuZ0FmdGVyVmlld0luaXQoKSB7XHJcbiAgICB0aGlzLnJvd0VsZW1lbnRzLmNoYW5nZXMuc3Vic2NyaWJlKChyb3dzOiBRdWVyeUxpc3Q8RWxlbWVudFJlZj4pID0+IHtcclxuICAgICAgY29uc3Qgcm93Q2FjaGUgPSB7fTtcclxuICAgICAgcm93cy5mb3JFYWNoKChyb3c6IEVsZW1lbnRSZWYsIGluZGV4KSA9PiB0aGlzLnVwZGF0ZVJvd1RlbXBsYXRlKHJvdywgaW5kZXgsIHJvd0NhY2hlKSk7XHJcbiAgICB9KTtcclxuICB9XHJcbn1cclxuRWRpdEdyaWRDb21wb25lbnQuTWF0ZXJpYWxDb21wb25lbnQgPSBNYXRlcmlhbEVkaXRHcmlkQ29tcG9uZW50O1xyXG5leHBvcnQgeyBFZGl0R3JpZENvbXBvbmVudCB9O1xyXG4iLCI8IS0tIDxtYXQtZm9ybWlvLWZvcm0tZmllbGQgW2luc3RhbmNlXT1cImluc3RhbmNlXCIgW2NvbXBvbmVudFRlbXBsYXRlXT1cImNvbXBvbmVudFRlbXBsYXRlXCIgW2xhYmVsVGVtcGxhdGVdPVwibGFiZWxUZW1wbGF0ZVwiPlxyXG48L21hdC1mb3JtaW8tZm9ybS1maWVsZD5cclxuPG5nLXRlbXBsYXRlICNjb21wb25lbnRUZW1wbGF0ZSBsZXQtaGFzTGFiZWw+XHJcblxyXG4gIDxzcGFuIGZ4TGF5b3V0PVwiY29sdW1uXCIgZnhMYXlvdXRHYXA9XCIxZW1cIiBmeEZpbGw+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaGFzTGFiZWxcIj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImxhYmVsVGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgPG1hdC1hY2NvcmRpb24+XHJcbiAgICAgIDxtYXQtZXhwYW5zaW9uLXBhbmVsICpuZ0lmPVwiaGVhZGVyXCIgZGlzYWJsZWQ9XCJ0cnVlXCI+XHJcbiAgICAgICAgPG1hdC1leHBhbnNpb24tcGFuZWwtaGVhZGVyPlxyXG4gICAgICAgICAgPHNwYW4gI2hlYWRlciBmeEZpbGw+PC9zcGFuPlxyXG4gICAgICAgIDwvbWF0LWV4cGFuc2lvbi1wYW5lbC1oZWFkZXI+XHJcbiAgICAgIDwvbWF0LWV4cGFuc2lvbi1wYW5lbD5cclxuXHJcbiAgICAgIDxtYXQtZXhwYW5zaW9uLXBhbmVsICpuZ0Zvcj1cImxldCByb3cgb2YgaW5zdGFuY2UuZWRpdFJvd3M7IGluZGV4IGFzIGk7XCIgW2V4cGFuZGVkXT1cImluc3RhbmNlLmlzT3Blbihyb3cpXCI+XHJcbiAgICAgICAgPG1hdC1leHBhbnNpb24tcGFuZWwtaGVhZGVyIChjbGljayk9XCJlZGl0Um93KHJvdywgaSlcIj5cclxuICAgICAgICAgIDxzcGFuICpuZ0lmPVwicm93LnN0YXRlICE9PSBSb3dTdGF0ZXMuTkVXXCIgI3Jvd3MgZnhGaWxsPjwvc3Bhbj5cclxuICAgICAgICA8L21hdC1leHBhbnNpb24tcGFuZWwtaGVhZGVyPlxyXG5cclxuICAgICAgICA8bWF0LWZvcm1pbyBbZm9ybV09XCJpbnN0YW5jZS5jb21wb25lbnRcIiAjZm9ybXMgKGNoYW5nZSk9XCJ2YWxpZGF0ZShpKVwiPjwvbWF0LWZvcm1pbz5cclxuXHJcbiAgICAgICAgPHNwYW4gZnhMYXlvdXQ9XCJyb3dcIiBmeExheW91dEdhcD1cIjFlbVwiPlxyXG4gICAgICAgICAgPGJ1dHRvbiBtYXQtcmFpc2VkLWJ1dHRvbiBjb2xvcj1cInByaW1hcnlcIiBbZGlzYWJsZWRdPVwiIXZhbGlkXCIgKGNsaWNrKT1cInNhdmVSb3cocm93LCBpKVwiPlNhdmU8L2J1dHRvbj5cclxuICAgICAgICAgIDxidXR0b24gbWF0LXJhaXNlZC1idXR0b24gY29sb3I9XCJzZWNvbmRhcnlcIiAoY2xpY2spPVwiY2FuY2VsUm93KGkpXCI+Q2FuY2VsPC9idXR0b24+XHJcbiAgICAgICAgICA8YnV0dG9uIG1hdC1yYWlzZWQtYnV0dG9uIGNvbG9yPVwid2FyblwiIChjbGljayk9XCJpbnN0YW5jZS5yZW1vdmVSb3coaSlcIiBjbGFzcz1cImRlbGV0ZS1idXR0b25cIj5cclxuICAgICAgICAgICAgPG1hdC1pY29uPmRlbGV0ZTwvbWF0LWljb24+XHJcbiAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICA8L3NwYW4+XHJcbiAgICAgIDwvbWF0LWV4cGFuc2lvbi1wYW5lbD5cclxuXHJcbiAgICAgIDxtYXQtZXhwYW5zaW9uLXBhbmVsICpuZ0lmPVwiZm9vdGVyXCIgZGlzYWJsZWQ9XCJ0cnVlXCI+XHJcbiAgICAgICAgPG1hdC1leHBhbnNpb24tcGFuZWwtaGVhZGVyPlxyXG4gICAgICAgICAgPHNwYW4gI2Zvb3Rlcj48L3NwYW4+XHJcbiAgICAgICAgPC9tYXQtZXhwYW5zaW9uLXBhbmVsLWhlYWRlcj5cclxuICAgICAgPC9tYXQtZXhwYW5zaW9uLXBhbmVsPlxyXG4gICAgPC9tYXQtYWNjb3JkaW9uPlxyXG5cclxuICAgIDxzcGFuIGZ4RmlsbD1cIm5vbmVcIiAqbmdJZj1cImluc3RhbmNlLmhhc0FkZEJ1dHRvbigpXCI+XHJcbiAgICAgIDxidXR0b24gbWF0LXJhaXNlZC1idXR0b24gY29sb3I9XCJwcmltYXJ5XCIgKGNsaWNrKT1cImFkZEFub3RoZXIoKVwiPlxyXG4gICAgICAgIDxtYXQtaWNvbj5hZGQ8L21hdC1pY29uPiBBZGQgQW5vdGhlclxyXG4gICAgICA8L2J1dHRvbj5cclxuICAgIDwvc3Bhbj5cclxuICA8L3NwYW4+XHJcbjwvbmctdGVtcGxhdGU+XHJcblxyXG48bmctdGVtcGxhdGUgI2xhYmVsVGVtcGxhdGU+XHJcbiAgPG1hdC1jYXJkLXRpdGxlPlxyXG4gICAgPHNwYW4gW2luc3RhbmNlXT1cImluc3RhbmNlXCIgbWF0Rm9ybWlvTGFiZWw+PC9zcGFuPlxyXG4gIDwvbWF0LWNhcmQtdGl0bGU+XHJcbjwvbmctdGVtcGxhdGU+IC0tPlxyXG4iXX0=
@@ -1,28 +0,0 @@
1
- import { Component } from '@angular/core';
2
- import { MaterialTextfieldComponent, TEXTFIELD_TEMPLATE } from '../textfield/textfield.component';
3
- import EmailComponent from 'formiojs/components/email/Email.js';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "@angular/common";
6
- import * as i2 from "@angular/forms";
7
- import * as i3 from "@angular/material/input";
8
- import * as i4 from "@angular/material/form-field";
9
- import * as i5 from "../formio-form-field/formio-form-field.component";
10
- import * as i6 from "../label/label.component";
11
- export class MaterialEmailComponent extends MaterialTextfieldComponent {
12
- constructor() {
13
- super(...arguments);
14
- this.inputType = 'email';
15
- }
16
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: MaterialEmailComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
17
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: MaterialEmailComponent, selector: "mat-formio-email", usesInheritance: true, ngImport: i0, template: "\n <mat-formio-form-field [instance]=\"instance\" [componentTemplate]=\"componentTemplate\"></mat-formio-form-field>\n <ng-template #componentTemplate let-hasLabel>\n <mat-form-field [appearance]=\"getFormFieldAppearance()\" fxFill>\n\n <mat-label *ngIf=\"hasLabel\">\n <span [instance]=\"instance\" matFormioLabel></span>\n </mat-label>\n\n <span *ngIf=\"instance.component.prefix && instance.type !== 'currency'\"\n matPrefix\n >\n {{ instance.component.prefix }}&nbsp;\n </span>\n <input matInput\n type=\"{{ inputType }}\"\n [formControl]=\"control\"\n [placeholder]=\"instance.component.placeholder\"\n (input)=\"onChange()\" #input\n [ngClass]=\"{ 'show-invalid': inputType=='email' }\"\n >\n <span *ngIf=\"instance.component.suffix\" matSuffix>{{ instance.component.suffix }}</span>\n\n <mat-hint *ngIf=\"instance.component.showWordCount || instance.component.showCharCount\">\n {{ getHint() }}\n </mat-hint>\n\n <br/>\n <mat-error *ngIf=\"isError()\" >{{ getErrorMessage() }}</mat-error>\n </mat-form-field>\n </ng-template>\n", isInline: true, dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i4.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4.MatLabel, selector: "mat-label" }, { kind: "directive", type: i4.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i4.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i4.MatPrefix, selector: "[matPrefix], [matIconPrefix], [matTextPrefix]", inputs: ["matTextPrefix"] }, { kind: "directive", type: i4.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "component", type: i5.FormioFormFieldComponent, selector: "mat-formio-form-field", inputs: ["labelTemplate", "renderTopLabel", "showDescription", "renderElementOnly", "instance", "componentTemplate"] }, { kind: "component", type: i6.LabelComponent, selector: "span[matFormioLabel]", inputs: ["instance"] }] }); }
18
- }
19
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: MaterialEmailComponent, decorators: [{
20
- type: Component,
21
- args: [{
22
- selector: 'mat-formio-email',
23
- template: TEXTFIELD_TEMPLATE
24
- }]
25
- }] });
26
- EmailComponent.MaterialComponent = MaterialEmailComponent;
27
- export { EmailComponent };
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1haWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXJlbmRlci1tYXRlcmlhbC1mb3Jtcy9zcmMvbGliL2NvbXBvbmVudHMvZW1haWwvZW1haWwuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFFLDBCQUEwQixFQUFFLGtCQUFrQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDbEcsT0FBTyxjQUFjLE1BQU0sb0NBQW9DLENBQUM7Ozs7Ozs7O0FBS2hFLE1BQU0sT0FBTyxzQkFBdUIsU0FBUSwwQkFBMEI7SUFKdEU7O1FBS1MsY0FBUyxHQUFHLE9BQU8sQ0FBQztLQUM1QjsrR0FGWSxzQkFBc0I7bUdBQXRCLHNCQUFzQjs7NEZBQXRCLHNCQUFzQjtrQkFKbEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsa0JBQWtCO29CQUM1QixRQUFRLEVBQUUsa0JBQWtCO2lCQUM3Qjs7QUFJRCxjQUFjLENBQUMsaUJBQWlCLEdBQUcsc0JBQXNCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGNBQWMsRUFBRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE1hdGVyaWFsVGV4dGZpZWxkQ29tcG9uZW50LCBURVhURklFTERfVEVNUExBVEUgfSBmcm9tICcuLi90ZXh0ZmllbGQvdGV4dGZpZWxkLmNvbXBvbmVudCc7XHJcbmltcG9ydCBFbWFpbENvbXBvbmVudCBmcm9tICdmb3JtaW9qcy9jb21wb25lbnRzL2VtYWlsL0VtYWlsLmpzJztcclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdtYXQtZm9ybWlvLWVtYWlsJyxcclxuICB0ZW1wbGF0ZTogVEVYVEZJRUxEX1RFTVBMQVRFXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBNYXRlcmlhbEVtYWlsQ29tcG9uZW50IGV4dGVuZHMgTWF0ZXJpYWxUZXh0ZmllbGRDb21wb25lbnQge1xyXG4gIHB1YmxpYyBpbnB1dFR5cGUgPSAnZW1haWwnO1xyXG59XHJcbkVtYWlsQ29tcG9uZW50Lk1hdGVyaWFsQ29tcG9uZW50ID0gTWF0ZXJpYWxFbWFpbENvbXBvbmVudDtcclxuZXhwb3J0IHsgRW1haWxDb21wb25lbnQgfTtcclxuIl19
@@ -1,49 +0,0 @@
1
- import { Component } from '@angular/core';
2
- import FieldsetComponent from 'formiojs/components/fieldset/Fieldset.js';
3
- import { MaterialNestedComponent } from '../MaterialNestedComponent';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "@angular/common";
6
- import * as i2 from "@angular/material/form-field";
7
- import * as i3 from "@angular/material/tooltip";
8
- import * as i4 from "@angular/material/icon";
9
- export class MaterialFieldsetComponent extends MaterialNestedComponent {
10
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: MaterialFieldsetComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
11
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: MaterialFieldsetComponent, selector: "mat-formio-fieldset", usesInheritance: true, ngImport: i0, template: `
12
- <fieldset>
13
- <legend [attr.ref]="'header'">
14
- {{ instance.component.legend }}
15
- <mat-icon *ngIf="instance.component.tooltip"
16
- matSuffix
17
- matTooltip="{{ instance.component.tooltip }}"
18
- >
19
- info
20
- </mat-icon>
21
- </legend>
22
- <div class="fieldset-body" [attr.ref]="instance.component.key" style="display:flex; flex-direction:column; gap:1em;">
23
- <ng-template #components></ng-template>
24
- </div>
25
- </fieldset>
26
- `, isInline: true, dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "directive", type: i3.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }] }); }
27
- }
28
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: MaterialFieldsetComponent, decorators: [{
29
- type: Component,
30
- args: [{ selector: 'mat-formio-fieldset', template: `
31
- <fieldset>
32
- <legend [attr.ref]="'header'">
33
- {{ instance.component.legend }}
34
- <mat-icon *ngIf="instance.component.tooltip"
35
- matSuffix
36
- matTooltip="{{ instance.component.tooltip }}"
37
- >
38
- info
39
- </mat-icon>
40
- </legend>
41
- <div class="fieldset-body" [attr.ref]="instance.component.key" style="display:flex; flex-direction:column; gap:1em;">
42
- <ng-template #components></ng-template>
43
- </div>
44
- </fieldset>
45
- ` }]
46
- }] });
47
- FieldsetComponent.MaterialComponent = MaterialFieldsetComponent;
48
- export { FieldsetComponent };
49
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGRzZXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXJlbmRlci1tYXRlcmlhbC1mb3Jtcy9zcmMvbGliL2NvbXBvbmVudHMvZmllbGRzZXQvZmllbGRzZXQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxpQkFBaUIsTUFBTSwwQ0FBMEMsQ0FBQztBQUN6RSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7Ozs7O0FBcUJyRSxNQUFNLE9BQU8seUJBQTBCLFNBQVEsdUJBQXVCOytHQUF6RCx5QkFBeUI7bUdBQXpCLHlCQUF5QixrRkFsQjFCOzs7Ozs7Ozs7Ozs7Ozs7R0FlVDs7NEZBR1UseUJBQXlCO2tCQXBCckMsU0FBUzsrQkFDRSxxQkFBcUIsWUFDckI7Ozs7Ozs7Ozs7Ozs7OztHQWVUOztBQUlILGlCQUFpQixDQUFDLGlCQUFpQixHQUFHLHlCQUF5QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCBGaWVsZHNldENvbXBvbmVudCBmcm9tICdmb3JtaW9qcy9jb21wb25lbnRzL2ZpZWxkc2V0L0ZpZWxkc2V0LmpzJztcclxuaW1wb3J0IHsgTWF0ZXJpYWxOZXN0ZWRDb21wb25lbnQgfSBmcm9tICcuLi9NYXRlcmlhbE5lc3RlZENvbXBvbmVudCc7XHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbWF0LWZvcm1pby1maWVsZHNldCcsXHJcbiAgdGVtcGxhdGU6IGBcclxuICAgIDxmaWVsZHNldD5cclxuICAgICAgPGxlZ2VuZCBbYXR0ci5yZWZdPVwiJ2hlYWRlcidcIj5cclxuICAgICAgICB7eyBpbnN0YW5jZS5jb21wb25lbnQubGVnZW5kIH19XHJcbiAgICAgICAgPG1hdC1pY29uICpuZ0lmPVwiaW5zdGFuY2UuY29tcG9uZW50LnRvb2x0aXBcIlxyXG4gICAgICAgICAgICAgICAgICBtYXRTdWZmaXhcclxuICAgICAgICAgICAgICAgICAgbWF0VG9vbHRpcD1cInt7IGluc3RhbmNlLmNvbXBvbmVudC50b29sdGlwIH19XCJcclxuICAgICAgICA+XHJcbiAgICAgICAgICBpbmZvXHJcbiAgICAgICAgPC9tYXQtaWNvbj5cclxuICAgICAgPC9sZWdlbmQ+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZHNldC1ib2R5XCIgW2F0dHIucmVmXT1cImluc3RhbmNlLmNvbXBvbmVudC5rZXlcIiBzdHlsZT1cImRpc3BsYXk6ZmxleDsgZmxleC1kaXJlY3Rpb246Y29sdW1uOyBnYXA6MWVtO1wiPlxyXG4gICAgICAgIDxuZy10ZW1wbGF0ZSAjY29tcG9uZW50cz48L25nLXRlbXBsYXRlPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZmllbGRzZXQ+XHJcbiAgYCxcclxuICBzdHlsZXM6IFtdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBNYXRlcmlhbEZpZWxkc2V0Q29tcG9uZW50IGV4dGVuZHMgTWF0ZXJpYWxOZXN0ZWRDb21wb25lbnQge31cclxuRmllbGRzZXRDb21wb25lbnQuTWF0ZXJpYWxDb21wb25lbnQgPSBNYXRlcmlhbEZpZWxkc2V0Q29tcG9uZW50O1xyXG5leHBvcnQgeyBGaWVsZHNldENvbXBvbmVudCB9O1xyXG4iXX0=
@@ -1,56 +0,0 @@
1
- import { Component, Input } from '@angular/core';
2
- import { LabelPositions } from '../../const/LabelPositions';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "@angular/common";
5
- import * as i2 from "@angular/material/form-field";
6
- import * as i3 from "../label/label.component";
7
- export class FormioFormFieldComponent {
8
- constructor() {
9
- this.labelPositions = LabelPositions;
10
- this.renderTopLabel = false;
11
- this.showDescription = true;
12
- this.renderElementOnly = false;
13
- }
14
- set instance(instance) {
15
- this._instance = instance;
16
- if (instance) {
17
- this.componentTemplateContext = { $implicit: this.hasLabel(['top']) };
18
- }
19
- }
20
- get instance() {
21
- return this._instance;
22
- }
23
- hasLabel(labelPositions) {
24
- const { component } = this.instance;
25
- const hasNoLabel = !component.label || component.hideLabel;
26
- const labelPositionIsNotSpecified = !labelPositions ||
27
- !labelPositions.length ||
28
- !component.labelPosition;
29
- if (hasNoLabel || labelPositionIsNotSpecified || this.renderElementOnly) {
30
- return false;
31
- }
32
- if (labelPositions.includes(component.labelPosition)) {
33
- return true;
34
- }
35
- }
36
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: FormioFormFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
37
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: FormioFormFieldComponent, selector: "mat-formio-form-field", inputs: { labelTemplate: "labelTemplate", renderTopLabel: "renderTopLabel", showDescription: "showDescription", renderElementOnly: "renderElementOnly", instance: "instance", componentTemplate: "componentTemplate" }, ngImport: i0, template: "<div class=\"mat-formio-component-wrapper\" *ngIf=\"instance && !renderElementOnly\"\r\n [ngClass]=\"{\r\n 'mat-formio-label-right': hasLabel([labelPositions.RIGHT_RIGHT, labelPositions.RIGHT_LEFT]),\r\n 'mat-formio-label-left': hasLabel([labelPositions.LEFT_LEFT, labelPositions.LEFT_RIGHT])\r\n }\"\r\n>\r\n <span *ngIf=\"renderTopLabel && hasLabel([labelPositions.TOP])\"\r\n class=\"mat-formio-label\"\r\n [ngClass]=\"{\r\n 'mat-formio-label-align-right': hasLabel([labelPositions.LEFT_RIGHT, labelPositions.RIGHT_RIGHT]),\r\n 'mat-formio-label-align-left': hasLabel([labelPositions.LEFT_LEFT, labelPositions.RIGHT_LEFT])\r\n }\"\r\n >\r\n <ng-container *ngTemplateOutlet=\"labelTemplate || defaultLabel\"></ng-container>\r\n </span>\r\n\r\n <div class=\"mat-formio-component\" *ngTemplateOutlet=\"componentTemplate; context: componentTemplateContext\"></div>\r\n\r\n <span *ngIf=\"hasLabel([\r\n labelPositions.BOTTOM,\r\n labelPositions.RIGHT_RIGHT,\r\n labelPositions.RIGHT_LEFT,\r\n labelPositions.LEFT_LEFT,\r\n labelPositions.LEFT_RIGHT\r\n ])\"\r\n class=\"mat-formio-label\"\r\n [ngClass]=\"{\r\n 'mat-formio-label-align-right': hasLabel([labelPositions.LEFT_RIGHT, labelPositions.RIGHT_RIGHT]),\r\n 'mat-formio-label-align-left': hasLabel([labelPositions.LEFT_LEFT, labelPositions.RIGHT_LEFT])\r\n }\"\r\n >\r\n <ng-container *ngTemplateOutlet=\"labelTemplate || defaultLabel\"></ng-container>\r\n </span>\r\n\r\n <mat-hint *ngIf=\"showDescription && instance.component.description\" class=\"mat-formio-component-description\">\r\n {{ instance.component.description }}\r\n </mat-hint>\r\n</div>\r\n\r\n<div class=\"mat-formio-component-wrapper\" *ngIf=\"renderElementOnly\">\r\n <div class=\"mat-formio-component\" *ngTemplateOutlet=\"componentTemplate; context: componentTemplateContext\"></div>\r\n</div>\r\n\r\n<ng-template #defaultLabel>\r\n <mat-label>\r\n <span style=\"display: block;\"\r\n [instance]=\"instance\" matFormioLabel>\r\n </span>\r\n </mat-label>\r\n</ng-template>\r\n", styles: [".mat-formio-component-description{display:block;grid-area:description}.mat-formio-component{grid-area:component}.mat-formio-label{grid-area:label}.mat-formio-label.mat-formio-label-align-right{margin-left:auto}.mat-formio-label.mat-formio-label-align-left{margin-right:auto}.mat-formio-component-wrapper.mat-formio-label-left,.mat-formio-component-wrapper.mat-formio-label-right{display:grid;grid-template-columns:auto auto;grid-column-gap:1em}.mat-formio-component-wrapper.mat-formio-label-right{grid-template-areas:\"component label\" \"description label\"}.mat-formio-component-wrapper.mat-formio-label-left{grid-template-areas:\"label component\" \"label description\"}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.MatLabel, selector: "mat-label" }, { kind: "directive", type: i2.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "component", type: i3.LabelComponent, selector: "span[matFormioLabel]", inputs: ["instance"] }] }); }
38
- }
39
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: FormioFormFieldComponent, decorators: [{
40
- type: Component,
41
- args: [{ selector: 'mat-formio-form-field', template: "<div class=\"mat-formio-component-wrapper\" *ngIf=\"instance && !renderElementOnly\"\r\n [ngClass]=\"{\r\n 'mat-formio-label-right': hasLabel([labelPositions.RIGHT_RIGHT, labelPositions.RIGHT_LEFT]),\r\n 'mat-formio-label-left': hasLabel([labelPositions.LEFT_LEFT, labelPositions.LEFT_RIGHT])\r\n }\"\r\n>\r\n <span *ngIf=\"renderTopLabel && hasLabel([labelPositions.TOP])\"\r\n class=\"mat-formio-label\"\r\n [ngClass]=\"{\r\n 'mat-formio-label-align-right': hasLabel([labelPositions.LEFT_RIGHT, labelPositions.RIGHT_RIGHT]),\r\n 'mat-formio-label-align-left': hasLabel([labelPositions.LEFT_LEFT, labelPositions.RIGHT_LEFT])\r\n }\"\r\n >\r\n <ng-container *ngTemplateOutlet=\"labelTemplate || defaultLabel\"></ng-container>\r\n </span>\r\n\r\n <div class=\"mat-formio-component\" *ngTemplateOutlet=\"componentTemplate; context: componentTemplateContext\"></div>\r\n\r\n <span *ngIf=\"hasLabel([\r\n labelPositions.BOTTOM,\r\n labelPositions.RIGHT_RIGHT,\r\n labelPositions.RIGHT_LEFT,\r\n labelPositions.LEFT_LEFT,\r\n labelPositions.LEFT_RIGHT\r\n ])\"\r\n class=\"mat-formio-label\"\r\n [ngClass]=\"{\r\n 'mat-formio-label-align-right': hasLabel([labelPositions.LEFT_RIGHT, labelPositions.RIGHT_RIGHT]),\r\n 'mat-formio-label-align-left': hasLabel([labelPositions.LEFT_LEFT, labelPositions.RIGHT_LEFT])\r\n }\"\r\n >\r\n <ng-container *ngTemplateOutlet=\"labelTemplate || defaultLabel\"></ng-container>\r\n </span>\r\n\r\n <mat-hint *ngIf=\"showDescription && instance.component.description\" class=\"mat-formio-component-description\">\r\n {{ instance.component.description }}\r\n </mat-hint>\r\n</div>\r\n\r\n<div class=\"mat-formio-component-wrapper\" *ngIf=\"renderElementOnly\">\r\n <div class=\"mat-formio-component\" *ngTemplateOutlet=\"componentTemplate; context: componentTemplateContext\"></div>\r\n</div>\r\n\r\n<ng-template #defaultLabel>\r\n <mat-label>\r\n <span style=\"display: block;\"\r\n [instance]=\"instance\" matFormioLabel>\r\n </span>\r\n </mat-label>\r\n</ng-template>\r\n", styles: [".mat-formio-component-description{display:block;grid-area:description}.mat-formio-component{grid-area:component}.mat-formio-label{grid-area:label}.mat-formio-label.mat-formio-label-align-right{margin-left:auto}.mat-formio-label.mat-formio-label-align-left{margin-right:auto}.mat-formio-component-wrapper.mat-formio-label-left,.mat-formio-component-wrapper.mat-formio-label-right{display:grid;grid-template-columns:auto auto;grid-column-gap:1em}.mat-formio-component-wrapper.mat-formio-label-right{grid-template-areas:\"component label\" \"description label\"}.mat-formio-component-wrapper.mat-formio-label-left{grid-template-areas:\"label component\" \"label description\"}\n"] }]
42
- }], propDecorators: { labelTemplate: [{
43
- type: Input
44
- }], renderTopLabel: [{
45
- type: Input
46
- }], showDescription: [{
47
- type: Input
48
- }], renderElementOnly: [{
49
- type: Input
50
- }], instance: [{
51
- type: Input,
52
- args: ['instance']
53
- }], componentTemplate: [{
54
- type: Input
55
- }] } });
56
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWlvLWZvcm0tZmllbGQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXJlbmRlci1tYXRlcmlhbC1mb3Jtcy9zcmMvbGliL2NvbXBvbmVudHMvZm9ybWlvLWZvcm0tZmllbGQvZm9ybWlvLWZvcm0tZmllbGQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXJlbmRlci1tYXRlcmlhbC1mb3Jtcy9zcmMvbGliL2NvbXBvbmVudHMvZm9ybWlvLWZvcm0tZmllbGQvZm9ybWlvLWZvcm0tZmllbGQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQWUsTUFBTSxlQUFlLENBQUM7QUFDOUQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDRCQUE0QixDQUFDOzs7OztBQU81RCxNQUFNLE9BQU8sd0JBQXdCO0lBTHJDO1FBT1MsbUJBQWMsR0FBRyxjQUFjLENBQUM7UUFFOUIsbUJBQWMsR0FBRyxLQUFLLENBQUM7UUFDdkIsb0JBQWUsR0FBRyxJQUFJLENBQUM7UUFDdkIsc0JBQWlCLEdBQUcsS0FBSyxDQUFDO0tBZ0NwQztJQTlCQyxJQUNJLFFBQVEsQ0FBQyxRQUFRO1FBQ25CLElBQUksQ0FBQyxTQUFTLEdBQUcsUUFBUSxDQUFDO1FBQzFCLElBQUksUUFBUSxFQUFFLENBQUM7WUFDYixJQUFJLENBQUMsd0JBQXdCLEdBQUcsRUFBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUMsQ0FBQztRQUN0RSxDQUFDO0lBQ0gsQ0FBQztJQUVELElBQUksUUFBUTtRQUNWLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQztJQUN4QixDQUFDO0lBS0QsUUFBUSxDQUFDLGNBQXlCO1FBQ2hDLE1BQU0sRUFBRSxTQUFTLEVBQUUsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDO1FBQ3BDLE1BQU0sVUFBVSxHQUFHLENBQUMsU0FBUyxDQUFDLEtBQUssSUFBSSxTQUFTLENBQUMsU0FBUyxDQUFDO1FBQzNELE1BQU0sMkJBQTJCLEdBQUcsQ0FBQyxjQUFjO1lBQ2YsQ0FBQyxjQUFjLENBQUMsTUFBTTtZQUN0QixDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUM7UUFFN0QsSUFBSSxVQUFVLElBQUksMkJBQTJCLElBQUksSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7WUFDeEUsT0FBTyxLQUFLLENBQUM7UUFDZixDQUFDO1FBRUQsSUFBSSxjQUFjLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsRUFBRSxDQUFDO1lBQ3JELE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQztJQUNILENBQUM7K0dBckNVLHdCQUF3QjttR0FBeEIsd0JBQXdCLHFSQ1JyQywrdUVBa0RBOzs0RkQxQ2Esd0JBQXdCO2tCQUxwQyxTQUFTOytCQUNFLHVCQUF1Qjs4QkFPeEIsYUFBYTtzQkFBckIsS0FBSztnQkFDRyxjQUFjO3NCQUF0QixLQUFLO2dCQUNHLGVBQWU7c0JBQXZCLEtBQUs7Z0JBQ0csaUJBQWlCO3NCQUF6QixLQUFLO2dCQUdGLFFBQVE7c0JBRFgsS0FBSzt1QkFBQyxVQUFVO2dCQVlSLGlCQUFpQjtzQkFBekIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIFRlbXBsYXRlUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IExhYmVsUG9zaXRpb25zIH0gZnJvbSAnLi4vLi4vY29uc3QvTGFiZWxQb3NpdGlvbnMnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdtYXQtZm9ybWlvLWZvcm0tZmllbGQnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9mb3JtaW8tZm9ybS1maWVsZC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vZm9ybWlvLWZvcm0tZmllbGQuY29tcG9uZW50LmNzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBGb3JtaW9Gb3JtRmllbGRDb21wb25lbnQge1xyXG4gIHByaXZhdGUgX2luc3RhbmNlO1xyXG4gIHB1YmxpYyBsYWJlbFBvc2l0aW9ucyA9IExhYmVsUG9zaXRpb25zO1xyXG4gIEBJbnB1dCgpIGxhYmVsVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XHJcbiAgQElucHV0KCkgcmVuZGVyVG9wTGFiZWwgPSBmYWxzZTtcclxuICBASW5wdXQoKSBzaG93RGVzY3JpcHRpb24gPSB0cnVlO1xyXG4gIEBJbnB1dCgpIHJlbmRlckVsZW1lbnRPbmx5ID0gZmFsc2U7XHJcblxyXG4gIEBJbnB1dCgnaW5zdGFuY2UnKVxyXG4gIHNldCBpbnN0YW5jZShpbnN0YW5jZSkge1xyXG4gICAgdGhpcy5faW5zdGFuY2UgPSBpbnN0YW5jZTtcclxuICAgIGlmIChpbnN0YW5jZSkge1xyXG4gICAgICB0aGlzLmNvbXBvbmVudFRlbXBsYXRlQ29udGV4dCA9IHskaW1wbGljaXQ6IHRoaXMuaGFzTGFiZWwoWyd0b3AnXSl9O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZ2V0IGluc3RhbmNlKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuX2luc3RhbmNlO1xyXG4gIH1cclxuXHJcbiAgQElucHV0KCkgY29tcG9uZW50VGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XHJcbiAgY29tcG9uZW50VGVtcGxhdGVDb250ZXh0O1xyXG5cclxuICBoYXNMYWJlbChsYWJlbFBvc2l0aW9ucz86IHN0cmluZ1tdKSB7XHJcbiAgICBjb25zdCB7IGNvbXBvbmVudCB9ID0gdGhpcy5pbnN0YW5jZTtcclxuICAgIGNvbnN0IGhhc05vTGFiZWwgPSAhY29tcG9uZW50LmxhYmVsIHx8IGNvbXBvbmVudC5oaWRlTGFiZWw7XHJcbiAgICBjb25zdCBsYWJlbFBvc2l0aW9uSXNOb3RTcGVjaWZpZWQgPSAhbGFiZWxQb3NpdGlvbnMgfHxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICFsYWJlbFBvc2l0aW9ucy5sZW5ndGggfHxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICFjb21wb25lbnQubGFiZWxQb3NpdGlvbjtcclxuXHJcbiAgICBpZiAoaGFzTm9MYWJlbCB8fCBsYWJlbFBvc2l0aW9uSXNOb3RTcGVjaWZpZWQgfHwgdGhpcy5yZW5kZXJFbGVtZW50T25seSkge1xyXG4gICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKGxhYmVsUG9zaXRpb25zLmluY2x1ZGVzKGNvbXBvbmVudC5sYWJlbFBvc2l0aW9uKSkge1xyXG4gICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cIm1hdC1mb3JtaW8tY29tcG9uZW50LXdyYXBwZXJcIiAqbmdJZj1cImluc3RhbmNlICYmICFyZW5kZXJFbGVtZW50T25seVwiXHJcbiAgICAgW25nQ2xhc3NdPVwie1xyXG4gICAgICAgICdtYXQtZm9ybWlvLWxhYmVsLXJpZ2h0JzogaGFzTGFiZWwoW2xhYmVsUG9zaXRpb25zLlJJR0hUX1JJR0hULCBsYWJlbFBvc2l0aW9ucy5SSUdIVF9MRUZUXSksXHJcbiAgICAgICAgJ21hdC1mb3JtaW8tbGFiZWwtbGVmdCc6IGhhc0xhYmVsKFtsYWJlbFBvc2l0aW9ucy5MRUZUX0xFRlQsIGxhYmVsUG9zaXRpb25zLkxFRlRfUklHSFRdKVxyXG4gICAgIH1cIlxyXG4+XHJcbiAgPHNwYW4gKm5nSWY9XCJyZW5kZXJUb3BMYWJlbCAmJiBoYXNMYWJlbChbbGFiZWxQb3NpdGlvbnMuVE9QXSlcIlxyXG4gICAgICAgIGNsYXNzPVwibWF0LWZvcm1pby1sYWJlbFwiXHJcbiAgICAgICAgW25nQ2xhc3NdPVwie1xyXG4gICAgICAgICAgJ21hdC1mb3JtaW8tbGFiZWwtYWxpZ24tcmlnaHQnOiBoYXNMYWJlbChbbGFiZWxQb3NpdGlvbnMuTEVGVF9SSUdIVCwgbGFiZWxQb3NpdGlvbnMuUklHSFRfUklHSFRdKSxcclxuICAgICAgICAgICdtYXQtZm9ybWlvLWxhYmVsLWFsaWduLWxlZnQnOiBoYXNMYWJlbChbbGFiZWxQb3NpdGlvbnMuTEVGVF9MRUZULCBsYWJlbFBvc2l0aW9ucy5SSUdIVF9MRUZUXSlcclxuICAgICAgICB9XCJcclxuICA+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwibGFiZWxUZW1wbGF0ZSB8fCBkZWZhdWx0TGFiZWxcIj48L25nLWNvbnRhaW5lcj5cclxuICA8L3NwYW4+XHJcblxyXG4gIDxkaXYgY2xhc3M9XCJtYXQtZm9ybWlvLWNvbXBvbmVudFwiICpuZ1RlbXBsYXRlT3V0bGV0PVwiY29tcG9uZW50VGVtcGxhdGU7IGNvbnRleHQ6IGNvbXBvbmVudFRlbXBsYXRlQ29udGV4dFwiPjwvZGl2PlxyXG5cclxuICA8c3BhbiAqbmdJZj1cImhhc0xhYmVsKFtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbFBvc2l0aW9ucy5CT1RUT00sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWxQb3NpdGlvbnMuUklHSFRfUklHSFQsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWxQb3NpdGlvbnMuUklHSFRfTEVGVCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbFBvc2l0aW9ucy5MRUZUX0xFRlQsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWxQb3NpdGlvbnMuTEVGVF9SSUdIVFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBdKVwiXHJcbiAgICAgICAgY2xhc3M9XCJtYXQtZm9ybWlvLWxhYmVsXCJcclxuICAgICAgICBbbmdDbGFzc109XCJ7XHJcbiAgICAgICAgICAnbWF0LWZvcm1pby1sYWJlbC1hbGlnbi1yaWdodCc6IGhhc0xhYmVsKFtsYWJlbFBvc2l0aW9ucy5MRUZUX1JJR0hULCBsYWJlbFBvc2l0aW9ucy5SSUdIVF9SSUdIVF0pLFxyXG4gICAgICAgICAgJ21hdC1mb3JtaW8tbGFiZWwtYWxpZ24tbGVmdCc6IGhhc0xhYmVsKFtsYWJlbFBvc2l0aW9ucy5MRUZUX0xFRlQsIGxhYmVsUG9zaXRpb25zLlJJR0hUX0xFRlRdKVxyXG4gICAgICAgIH1cIlxyXG4gID5cclxuICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJsYWJlbFRlbXBsYXRlIHx8IGRlZmF1bHRMYWJlbFwiPjwvbmctY29udGFpbmVyPlxyXG4gIDwvc3Bhbj5cclxuXHJcbiAgPG1hdC1oaW50ICpuZ0lmPVwic2hvd0Rlc2NyaXB0aW9uICYmIGluc3RhbmNlLmNvbXBvbmVudC5kZXNjcmlwdGlvblwiIGNsYXNzPVwibWF0LWZvcm1pby1jb21wb25lbnQtZGVzY3JpcHRpb25cIj5cclxuICAgIHt7IGluc3RhbmNlLmNvbXBvbmVudC5kZXNjcmlwdGlvbiB9fVxyXG4gIDwvbWF0LWhpbnQ+XHJcbjwvZGl2PlxyXG5cclxuPGRpdiBjbGFzcz1cIm1hdC1mb3JtaW8tY29tcG9uZW50LXdyYXBwZXJcIiAqbmdJZj1cInJlbmRlckVsZW1lbnRPbmx5XCI+XHJcbiAgPGRpdiBjbGFzcz1cIm1hdC1mb3JtaW8tY29tcG9uZW50XCIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjb21wb25lbnRUZW1wbGF0ZTsgY29udGV4dDogY29tcG9uZW50VGVtcGxhdGVDb250ZXh0XCI+PC9kaXY+XHJcbjwvZGl2PlxyXG5cclxuPG5nLXRlbXBsYXRlICNkZWZhdWx0TGFiZWw+XHJcbiAgPG1hdC1sYWJlbD5cclxuICAgIDxzcGFuIHN0eWxlPVwiZGlzcGxheTogYmxvY2s7XCJcclxuICAgICAgICAgIFtpbnN0YW5jZV09XCJpbnN0YW5jZVwiIG1hdEZvcm1pb0xhYmVsPlxyXG4gICAgPC9zcGFuPlxyXG4gIDwvbWF0LWxhYmVsPlxyXG48L25nLXRlbXBsYXRlPlxyXG4iXX0=
@@ -1,88 +0,0 @@
1
- import { Component, ViewChild } from '@angular/core';
2
- import Wizard from 'formiojs/Wizard';
3
- import Displays from 'formiojs/displays/Displays';
4
- import { MaterialNestedComponent } from './MaterialNestedComponent';
5
- import * as i0 from "@angular/core";
6
- import * as i1 from "@angular/common";
7
- import * as i2 from "@angular/material/button";
8
- import * as i3 from "@angular/material/stepper";
9
- export class MaterialWizardComponent extends MaterialNestedComponent {
10
- constructor() {
11
- super(...arguments);
12
- this.isLinear = true;
13
- this.prevNumOfPages = 0;
14
- }
15
- setInstance(instance) {
16
- this.isLinear = (instance.options &&
17
- instance.options.breadcrumbSettings &&
18
- instance.options.breadcrumbSettings.clickable) ? false : true;
19
- this.updatePages(instance);
20
- instance.on('pagesChanged', () => this.updatePages());
21
- super.setInstance(instance);
22
- }
23
- updatePages(instance = this.instance) {
24
- if (this.prevNumOfPages !== instance.pages.length) {
25
- instance.pages.forEach((page, pageIndex) => {
26
- page.viewContainer = () => {
27
- return this.viewContainers ? this.viewContainers[pageIndex] : null;
28
- };
29
- });
30
- this.prevNumOfPages = instance.pages.length;
31
- }
32
- }
33
- resetWizard() {
34
- this.instance.cancel();
35
- this.stepper.reset();
36
- }
37
- nextPage() {
38
- this.instance.nextPage().then(() => this.stepper.next());
39
- }
40
- prevPage() {
41
- this.instance.prevPage().then(() => this.stepper.previous());
42
- }
43
- submit() {
44
- this.instance.submit();
45
- }
46
- renderComponents() {
47
- if (this.instance.renderComponents && this.instance.pages) {
48
- this.instance.renderComponents(this.instance.pages.reduce((comps, page) => {
49
- return comps.concat(page.components);
50
- }, []));
51
- }
52
- }
53
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: MaterialWizardComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
54
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: MaterialWizardComponent, selector: "mat-formio-wizard", viewQueries: [{ propertyName: "stepper", first: true, predicate: ["stepper"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: `
55
- <mat-horizontal-stepper [linear]="isLinear" #stepper>
56
- <mat-step *ngFor="let page of instance.pages" [label]="page.component.title">
57
- <ng-template #components></ng-template>
58
- <div class="navigation-button-row">
59
- <button *ngIf="instance.hasButton('cancel')" mat-raised-button (click)="resetWizard()">Cancel</button>
60
- <button *ngIf="instance.hasButton('previous')" mat-raised-button color="primary" (click)="prevPage()">Previous</button>
61
- <button *ngIf="instance.hasButton('next')" mat-raised-button color="primary" (click)="nextPage()">Next</button>
62
- <button *ngIf="instance.hasButton('submit')" mat-raised-button color="primary" (click)="submit()">Submit</button>
63
- </div>
64
- </mat-step>
65
- </mat-horizontal-stepper>`, isInline: true, styles: [":host .navigation-button-row{margin-top:8px}\n", ":host .navigation-button-row button{margin-right:8px}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i3.MatStep, selector: "mat-step", inputs: ["color"], exportAs: ["matStep"] }, { kind: "component", type: i3.MatStepper, selector: "mat-stepper, mat-vertical-stepper, mat-horizontal-stepper, [matStepper]", inputs: ["disableRipple", "color", "labelPosition", "headerPosition", "animationDuration"], outputs: ["animationDone"], exportAs: ["matStepper", "matVerticalStepper", "matHorizontalStepper"] }] }); }
66
- }
67
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: MaterialWizardComponent, decorators: [{
68
- type: Component,
69
- args: [{ selector: 'mat-formio-wizard', template: `
70
- <mat-horizontal-stepper [linear]="isLinear" #stepper>
71
- <mat-step *ngFor="let page of instance.pages" [label]="page.component.title">
72
- <ng-template #components></ng-template>
73
- <div class="navigation-button-row">
74
- <button *ngIf="instance.hasButton('cancel')" mat-raised-button (click)="resetWizard()">Cancel</button>
75
- <button *ngIf="instance.hasButton('previous')" mat-raised-button color="primary" (click)="prevPage()">Previous</button>
76
- <button *ngIf="instance.hasButton('next')" mat-raised-button color="primary" (click)="nextPage()">Next</button>
77
- <button *ngIf="instance.hasButton('submit')" mat-raised-button color="primary" (click)="submit()">Submit</button>
78
- </div>
79
- </mat-step>
80
- </mat-horizontal-stepper>`, styles: [":host .navigation-button-row{margin-top:8px}\n", ":host .navigation-button-row button{margin-right:8px}\n"] }]
81
- }], propDecorators: { stepper: [{
82
- type: ViewChild,
83
- args: ['stepper', { static: true }]
84
- }] } });
85
- Wizard.MaterialComponent = MaterialWizardComponent;
86
- Displays.addDisplay('wizard', Wizard);
87
- export { Wizard };
88
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWlvLndpemFyZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1yZW5kZXItbWF0ZXJpYWwtZm9ybXMvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm1pby53aXphcmQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFckQsT0FBTyxNQUFNLE1BQU0saUJBQWlCLENBQUM7QUFDckMsT0FBTyxRQUFRLE1BQU0sNEJBQTRCLENBQUM7QUFDbEQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sMkJBQTJCLENBQUM7Ozs7O0FBcUJwRSxNQUFNLE9BQU8sdUJBQXdCLFNBQVEsdUJBQXVCO0lBbkJwRTs7UUFxQlMsYUFBUSxHQUFHLElBQUksQ0FBQztRQUNmLG1CQUFjLEdBQUcsQ0FBQyxDQUFDO0tBa0Q1QjtJQWhEQyxXQUFXLENBQUMsUUFBYTtRQUN2QixJQUFJLENBQUMsUUFBUSxHQUFHLENBQ2QsUUFBUSxDQUFDLE9BQU87WUFDaEIsUUFBUSxDQUFDLE9BQU8sQ0FBQyxrQkFBa0I7WUFDbkMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxTQUFTLENBQzlDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO1FBRWpCLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDM0IsUUFBUSxDQUFDLEVBQUUsQ0FBQyxjQUFjLEVBQUUsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7UUFFdEQsS0FBSyxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUM5QixDQUFDO0lBRUQsV0FBVyxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsUUFBUTtRQUNsQyxJQUFJLElBQUksQ0FBQyxjQUFjLEtBQUssUUFBUSxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNsRCxRQUFRLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksRUFBRSxTQUFTLEVBQUUsRUFBRTtnQkFDekMsSUFBSSxDQUFDLGFBQWEsR0FBRyxHQUFHLEVBQUU7b0JBQ3hCLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO2dCQUNyRSxDQUFDLENBQUM7WUFDSixDQUFDLENBQUMsQ0FBQztZQUNILElBQUksQ0FBQyxjQUFjLEdBQUcsUUFBUSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUM7UUFDOUMsQ0FBQztJQUNILENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUN2QixJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQzNELENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO0lBQy9ELENBQUM7SUFFRCxNQUFNO1FBQ0osSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUN6QixDQUFDO0lBRUQsZ0JBQWdCO1FBQ2QsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLGdCQUFnQixJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDMUQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxLQUFLLEVBQUUsSUFBSSxFQUFFLEVBQUU7Z0JBQ3hFLE9BQU8sS0FBSyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7WUFDdkMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDVixDQUFDO0lBQ0gsQ0FBQzsrR0FwRFUsdUJBQXVCO21HQUF2Qix1QkFBdUIsa01BYnhCOzs7Ozs7Ozs7Ozs4QkFXa0I7OzRGQUVqQix1QkFBdUI7a0JBbkJuQyxTQUFTOytCQUNFLG1CQUFtQixZQUtuQjs7Ozs7Ozs7Ozs7OEJBV2tCOzhCQUdVLE9BQU87c0JBQTVDLFNBQVM7dUJBQUMsU0FBUyxFQUFFLEVBQUMsTUFBTSxFQUFFLElBQUksRUFBQzs7QUFxRHRDLE1BQU0sQ0FBQyxpQkFBaUIsR0FBRyx1QkFBdUIsQ0FBQztBQUNuRCxRQUFRLENBQUMsVUFBVSxDQUFDLFFBQVEsRUFBRSxNQUFNLENBQUMsQ0FBQztBQUN0QyxPQUFPLEVBQUUsTUFBTSxFQUFFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBNYXRTdGVwcGVyIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc3RlcHBlcic7XHJcbmltcG9ydCBXaXphcmQgZnJvbSAnZm9ybWlvanMvV2l6YXJkJztcclxuaW1wb3J0IERpc3BsYXlzIGZyb20gJ2Zvcm1pb2pzL2Rpc3BsYXlzL0Rpc3BsYXlzJztcclxuaW1wb3J0IHsgTWF0ZXJpYWxOZXN0ZWRDb21wb25lbnQgfSBmcm9tICcuL01hdGVyaWFsTmVzdGVkQ29tcG9uZW50JztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbWF0LWZvcm1pby13aXphcmQnLFxyXG4gIHN0eWxlczogW1xyXG4gICAgJzpob3N0IC5uYXZpZ2F0aW9uLWJ1dHRvbi1yb3cgeyBtYXJnaW4tdG9wOiA4cHg7IH0nLFxyXG4gICAgJzpob3N0IC5uYXZpZ2F0aW9uLWJ1dHRvbi1yb3cgYnV0dG9uIHsgbWFyZ2luLXJpZ2h0OiA4cHg7IH0nXHJcbiAgXSxcclxuICB0ZW1wbGF0ZTogYFxyXG4gICAgPG1hdC1ob3Jpem9udGFsLXN0ZXBwZXIgW2xpbmVhcl09XCJpc0xpbmVhclwiICNzdGVwcGVyPlxyXG4gICAgICA8bWF0LXN0ZXAgKm5nRm9yPVwibGV0IHBhZ2Ugb2YgaW5zdGFuY2UucGFnZXNcIiBbbGFiZWxdPVwicGFnZS5jb21wb25lbnQudGl0bGVcIj5cclxuICAgICAgICA8bmctdGVtcGxhdGUgI2NvbXBvbmVudHM+PC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwibmF2aWdhdGlvbi1idXR0b24tcm93XCI+XHJcbiAgICAgICAgICA8YnV0dG9uICpuZ0lmPVwiaW5zdGFuY2UuaGFzQnV0dG9uKCdjYW5jZWwnKVwiIG1hdC1yYWlzZWQtYnV0dG9uIChjbGljayk9XCJyZXNldFdpemFyZCgpXCI+Q2FuY2VsPC9idXR0b24+XHJcbiAgICAgICAgICA8YnV0dG9uICpuZ0lmPVwiaW5zdGFuY2UuaGFzQnV0dG9uKCdwcmV2aW91cycpXCIgbWF0LXJhaXNlZC1idXR0b24gY29sb3I9XCJwcmltYXJ5XCIgKGNsaWNrKT1cInByZXZQYWdlKClcIj5QcmV2aW91czwvYnV0dG9uPlxyXG4gICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cImluc3RhbmNlLmhhc0J1dHRvbignbmV4dCcpXCIgbWF0LXJhaXNlZC1idXR0b24gY29sb3I9XCJwcmltYXJ5XCIgKGNsaWNrKT1cIm5leHRQYWdlKClcIj5OZXh0PC9idXR0b24+XHJcbiAgICAgICAgICA8YnV0dG9uICpuZ0lmPVwiaW5zdGFuY2UuaGFzQnV0dG9uKCdzdWJtaXQnKVwiIG1hdC1yYWlzZWQtYnV0dG9uIGNvbG9yPVwicHJpbWFyeVwiIChjbGljayk9XCJzdWJtaXQoKVwiPlN1Ym1pdDwvYnV0dG9uPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L21hdC1zdGVwPlxyXG4gICAgPC9tYXQtaG9yaXpvbnRhbC1zdGVwcGVyPmBcclxufSlcclxuZXhwb3J0IGNsYXNzIE1hdGVyaWFsV2l6YXJkQ29tcG9uZW50IGV4dGVuZHMgTWF0ZXJpYWxOZXN0ZWRDb21wb25lbnQge1xyXG4gIEBWaWV3Q2hpbGQoJ3N0ZXBwZXInLCB7c3RhdGljOiB0cnVlfSkgc3RlcHBlcjogTWF0U3RlcHBlcjtcclxuICBwdWJsaWMgaXNMaW5lYXIgPSB0cnVlO1xyXG4gIHByaXZhdGUgcHJldk51bU9mUGFnZXMgPSAwO1xyXG5cclxuICBzZXRJbnN0YW5jZShpbnN0YW5jZTogYW55KSB7XHJcbiAgICB0aGlzLmlzTGluZWFyID0gKFxyXG4gICAgICBpbnN0YW5jZS5vcHRpb25zICYmXHJcbiAgICAgIGluc3RhbmNlLm9wdGlvbnMuYnJlYWRjcnVtYlNldHRpbmdzICYmXHJcbiAgICAgIGluc3RhbmNlLm9wdGlvbnMuYnJlYWRjcnVtYlNldHRpbmdzLmNsaWNrYWJsZVxyXG4gICAgKSA/IGZhbHNlIDogdHJ1ZTtcclxuXHJcbiAgICB0aGlzLnVwZGF0ZVBhZ2VzKGluc3RhbmNlKTtcclxuICAgIGluc3RhbmNlLm9uKCdwYWdlc0NoYW5nZWQnLCAoKSA9PiB0aGlzLnVwZGF0ZVBhZ2VzKCkpO1xyXG5cclxuICAgIHN1cGVyLnNldEluc3RhbmNlKGluc3RhbmNlKTtcclxuICB9XHJcblxyXG4gIHVwZGF0ZVBhZ2VzKGluc3RhbmNlID0gdGhpcy5pbnN0YW5jZSkge1xyXG4gICAgaWYgKHRoaXMucHJldk51bU9mUGFnZXMgIT09IGluc3RhbmNlLnBhZ2VzLmxlbmd0aCkge1xyXG4gICAgICBpbnN0YW5jZS5wYWdlcy5mb3JFYWNoKChwYWdlLCBwYWdlSW5kZXgpID0+IHtcclxuICAgICAgICBwYWdlLnZpZXdDb250YWluZXIgPSAoKSA9PiB7XHJcbiAgICAgICAgICByZXR1cm4gdGhpcy52aWV3Q29udGFpbmVycyA/IHRoaXMudmlld0NvbnRhaW5lcnNbcGFnZUluZGV4XSA6IG51bGw7XHJcbiAgICAgICAgfTtcclxuICAgICAgfSk7XHJcbiAgICAgIHRoaXMucHJldk51bU9mUGFnZXMgPSBpbnN0YW5jZS5wYWdlcy5sZW5ndGg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICByZXNldFdpemFyZCgpIHtcclxuICAgIHRoaXMuaW5zdGFuY2UuY2FuY2VsKCk7XHJcbiAgICB0aGlzLnN0ZXBwZXIucmVzZXQoKTtcclxuICB9XHJcblxyXG4gIG5leHRQYWdlKCkge1xyXG4gICAgdGhpcy5pbnN0YW5jZS5uZXh0UGFnZSgpLnRoZW4oKCkgPT4gdGhpcy5zdGVwcGVyLm5leHQoKSk7XHJcbiAgfVxyXG5cclxuICBwcmV2UGFnZSgpIHtcclxuICAgIHRoaXMuaW5zdGFuY2UucHJldlBhZ2UoKS50aGVuKCgpID0+IHRoaXMuc3RlcHBlci5wcmV2aW91cygpKTtcclxuICB9XHJcblxyXG4gIHN1Ym1pdCgpIHtcclxuICAgIHRoaXMuaW5zdGFuY2Uuc3VibWl0KCk7XHJcbiAgfVxyXG5cclxuICByZW5kZXJDb21wb25lbnRzKCkge1xyXG4gICAgaWYgKHRoaXMuaW5zdGFuY2UucmVuZGVyQ29tcG9uZW50cyAmJiB0aGlzLmluc3RhbmNlLnBhZ2VzKSB7XHJcbiAgICAgIHRoaXMuaW5zdGFuY2UucmVuZGVyQ29tcG9uZW50cyh0aGlzLmluc3RhbmNlLnBhZ2VzLnJlZHVjZSgoY29tcHMsIHBhZ2UpID0+IHtcclxuICAgICAgICByZXR1cm4gY29tcHMuY29uY2F0KHBhZ2UuY29tcG9uZW50cyk7XHJcbiAgICAgIH0sIFtdKSk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbldpemFyZC5NYXRlcmlhbENvbXBvbmVudCA9IE1hdGVyaWFsV2l6YXJkQ29tcG9uZW50O1xyXG5EaXNwbGF5cy5hZGREaXNwbGF5KCd3aXphcmQnLCBXaXphcmQpO1xyXG5leHBvcnQgeyBXaXphcmQgfTtcclxuIl19
@@ -1,29 +0,0 @@
1
- import { Component, ViewChild } from '@angular/core';
2
- import { MaterialComponent } from '../MaterialComponent';
3
- import HtmlComponent from 'formiojs/components/html/HTML.js';
4
- import * as i0 from "@angular/core";
5
- export class MaterialHtmlComponent extends MaterialComponent {
6
- ngAfterViewInit() {
7
- super.ngAfterViewInit();
8
- if (this.instance.component.refreshOnChange) {
9
- this.instance.checkRefreshOn = () => {
10
- this.htmlBody.nativeElement.innerHTML = this.instance.renderContent();
11
- };
12
- }
13
- }
14
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: MaterialHtmlComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
15
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: MaterialHtmlComponent, selector: "mat-formio-html", viewQueries: [{ propertyName: "htmlBody", first: true, predicate: ["htmlBody"], descendants: true }], usesInheritance: true, ngImport: i0, template: `<div #htmlBody></div>`, isInline: true }); }
16
- }
17
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: MaterialHtmlComponent, decorators: [{
18
- type: Component,
19
- args: [{
20
- selector: 'mat-formio-html',
21
- template: `<div #htmlBody></div>`
22
- }]
23
- }], propDecorators: { htmlBody: [{
24
- type: ViewChild,
25
- args: ['htmlBody']
26
- }] } });
27
- HtmlComponent.MaterialComponent = MaterialHtmlComponent;
28
- export { HtmlComponent };
29
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHRtbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtcmVuZGVyLW1hdGVyaWFsLWZvcm1zL3NyYy9saWIvY29tcG9uZW50cy9odG1sL2h0bWwuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWlCLFNBQVMsRUFBYyxNQUFNLGVBQWUsQ0FBQztBQUNoRixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN6RCxPQUFPLGFBQWEsTUFBTSxrQ0FBa0MsQ0FBQzs7QUFNN0QsTUFBTSxPQUFPLHFCQUFzQixTQUFRLGlCQUFpQjtJQUcxRCxlQUFlO1FBQ2IsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ3hCLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsZUFBZSxFQUFFLENBQUM7WUFDNUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxjQUFjLEdBQUcsR0FBRyxFQUFFO2dCQUNsQyxJQUFJLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUN4RSxDQUFDLENBQUM7UUFDSixDQUFDO0lBQ0gsQ0FBQzsrR0FWVSxxQkFBcUI7bUdBQXJCLHFCQUFxQixvTEFGdEIsdUJBQXVCOzs0RkFFdEIscUJBQXFCO2tCQUpqQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxpQkFBaUI7b0JBQzNCLFFBQVEsRUFBRSx1QkFBdUI7aUJBQ2xDOzhCQUV3QixRQUFRO3NCQUE5QixTQUFTO3VCQUFDLFVBQVU7O0FBV3ZCLGFBQWEsQ0FBQyxpQkFBaUIsR0FBRyxxQkFBcUIsQ0FBQztBQUN4RCxPQUFPLEVBQUUsYUFBYSxFQUFFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEFmdGVyVmlld0luaXQsIFZpZXdDaGlsZCwgRWxlbWVudFJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBNYXRlcmlhbENvbXBvbmVudCB9IGZyb20gJy4uL01hdGVyaWFsQ29tcG9uZW50JztcclxuaW1wb3J0IEh0bWxDb21wb25lbnQgZnJvbSAnZm9ybWlvanMvY29tcG9uZW50cy9odG1sL0hUTUwuanMnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdtYXQtZm9ybWlvLWh0bWwnLFxyXG4gIHRlbXBsYXRlOiBgPGRpdiAjaHRtbEJvZHk+PC9kaXY+YFxyXG59KVxyXG5leHBvcnQgY2xhc3MgTWF0ZXJpYWxIdG1sQ29tcG9uZW50IGV4dGVuZHMgTWF0ZXJpYWxDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcclxuICBAVmlld0NoaWxkKCdodG1sQm9keScpIGh0bWxCb2R5OiBFbGVtZW50UmVmO1xyXG5cclxuICBuZ0FmdGVyVmlld0luaXQoKSB7XHJcbiAgICBzdXBlci5uZ0FmdGVyVmlld0luaXQoKTtcclxuICAgIGlmICh0aGlzLmluc3RhbmNlLmNvbXBvbmVudC5yZWZyZXNoT25DaGFuZ2UpIHtcclxuICAgICAgdGhpcy5pbnN0YW5jZS5jaGVja1JlZnJlc2hPbiA9ICgpID0+IHtcclxuICAgICAgICB0aGlzLmh0bWxCb2R5Lm5hdGl2ZUVsZW1lbnQuaW5uZXJIVE1MID0gdGhpcy5pbnN0YW5jZS5yZW5kZXJDb250ZW50KCk7XHJcbiAgICAgIH07XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbkh0bWxDb21wb25lbnQuTWF0ZXJpYWxDb21wb25lbnQgPSBNYXRlcmlhbEh0bWxDb21wb25lbnQ7XHJcbmV4cG9ydCB7IEh0bWxDb21wb25lbnQgfTtcclxuIl19