ngx-iso-form 2.0.0 → 2.1.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.
@@ -2,29 +2,41 @@ import { Injectable } from '@angular/core';
2
2
  import { FormGroup, FormControl } from '@angular/forms';
3
3
  import * as i0 from "@angular/core";
4
4
  import * as i1 from "@angular/forms";
5
+ import * as i2 from "./shared/services/custom-date-adapter";
5
6
  export class NgxIsoService {
6
- constructor(fb) {
7
+ constructor(fb, dateService) {
7
8
  this.fb = fb;
9
+ this.dateService = dateService;
8
10
  this._formModel = [];
9
11
  this.sanitize = (obj) => {
10
- if (obj === null || obj === "") {
12
+ if (obj === null || obj === '') {
11
13
  return null;
12
14
  }
13
15
  if (Array.isArray(obj)) {
14
16
  const cleanedObj = [];
15
17
  for (const index in obj) {
16
18
  const cleanedValue = this.sanitize(obj[index]);
17
- if (cleanedValue !== null && cleanedValue !== "" && Object.keys(cleanedValue).length > 0 && (!Array.isArray(cleanedValue) || cleanedValue.length > 0)) {
19
+ if (cleanedValue !== null &&
20
+ cleanedValue !== '' &&
21
+ Object.keys(cleanedValue).length > 0 &&
22
+ (!Array.isArray(cleanedValue) || cleanedValue.length > 0)) {
18
23
  cleanedObj.push(cleanedValue);
19
24
  }
20
25
  }
21
26
  return cleanedObj;
22
27
  }
28
+ else if (typeof obj === 'object' && obj instanceof Date) {
29
+ const cleanedObj = this.dateService.format(obj, 'YYYY-MM-DD');
30
+ return cleanedObj;
31
+ }
23
32
  else if (typeof obj === 'object') {
24
33
  const cleanedObj = {};
25
34
  for (const key in obj) {
26
35
  const cleanedValue = this.sanitize(obj[key]);
27
- if (cleanedValue !== null && cleanedValue !== "" && Object.keys(cleanedValue).length > 0 && (!Array.isArray(cleanedValue) || cleanedValue.length > 0)) {
36
+ if (cleanedValue !== null &&
37
+ cleanedValue !== '' &&
38
+ Object.keys(cleanedValue).length > 0 &&
39
+ (!Array.isArray(cleanedValue) || cleanedValue.length > 0)) {
28
40
  cleanedObj[key] = cleanedValue;
29
41
  }
30
42
  }
@@ -64,14 +76,16 @@ export class NgxIsoService {
64
76
  const formArray = form.get(key);
65
77
  if (formArray && formArray.length !== item.length) {
66
78
  const newEle = structuredClone(parentNode.elements[parentNode.elements.length - 1]);
67
- if (!(newEle.maxOccurs && parseInt(newEle.maxOccurs, 10) <= parentNode.elements.length)) {
79
+ if (!(newEle.maxOccurs &&
80
+ parseInt(newEle.maxOccurs, 10) <= parentNode.elements.length)) {
68
81
  const newKeys = [];
69
82
  const groupControls = this.getFormGroupControls(newEle.elements, newKeys, parentNode.elements.length - 1);
70
83
  parentNode.elements.push(newEle);
71
84
  formArray.push(groupControls);
72
85
  parentNode.elements.forEach((element) => {
73
- if (!element.minOccurs || parseInt(element.minOccurs, 10) === 0) {
74
- element.minOccurs = "1";
86
+ if (!element.minOccurs ||
87
+ parseInt(element.minOccurs, 10) === 0) {
88
+ element.minOccurs = '1';
75
89
  }
76
90
  });
77
91
  }
@@ -89,14 +103,14 @@ export class NgxIsoService {
89
103
  else if (typeof model[key] === 'object') {
90
104
  const node = this.getFormModel(this._formModel[0], key);
91
105
  if (node && (!node.minOccurs || parseInt(node.minOccurs, 10) === 0)) {
92
- node.minOccurs = "1";
106
+ node.minOccurs = '1';
93
107
  }
94
108
  const _form = form.get(key);
95
109
  if (_form) {
96
110
  if (node.dataType === 'choice') {
97
- const choickKey = Object.keys(model[key])[0];
98
- const choiceEle = node.elements.find((item) => item.id === choickKey);
99
- node.choiceFormControl.setValue(choickKey);
111
+ const choiceKey = Object.keys(model[key])[0];
112
+ const choiceEle = node.elements.find((item) => item.id === choiceKey);
113
+ node.choiceKey = choiceKey;
100
114
  choiceEle.hidden = false;
101
115
  const newNode = structuredClone(choiceEle);
102
116
  if (newNode.elements.length) {
@@ -136,11 +150,16 @@ export class NgxIsoService {
136
150
  if (item.elements.length > 0) {
137
151
  let choice = item.dataType === 'choice';
138
152
  if (choice) {
139
- element.choiceFormControl = this.getFormControl('');
153
+ element.choiceKey = '';
140
154
  }
141
155
  if (this.maxOccurs(item.maxOccurs)) {
142
156
  element.uniqueId = `${element.id}_${index}`;
143
- keys.push({ id: element.id, multi: true, xpath: element.xpath, elements: [element] });
157
+ keys.push({
158
+ id: element.id,
159
+ multi: true,
160
+ xpath: element.xpath,
161
+ elements: [element],
162
+ });
144
163
  const data = this.getFormGroupControls(item.elements, element.elements, index, choice);
145
164
  controls = this.fb.array([]);
146
165
  if (!choice) {
@@ -149,7 +168,12 @@ export class NgxIsoService {
149
168
  control[id] = controls;
150
169
  }
151
170
  else if (item.multi && !item.isFormControls) {
152
- keys.push({ id: element.id, multi: true, xpath: element.xpath, elements: element.elements });
171
+ keys.push({
172
+ id: element.id,
173
+ multi: true,
174
+ xpath: element.xpath,
175
+ elements: element.elements,
176
+ });
153
177
  const data = this.getFormGroupControls(item.elements[item.elements.length - 1].elements, element.elements, index, choice);
154
178
  controls = this.fb.array([]);
155
179
  if (!choice) {
@@ -162,7 +186,7 @@ export class NgxIsoService {
162
186
  item.elements.splice(1, item.elements.length - 1);
163
187
  }
164
188
  keys.push(item);
165
- control[id] = this.fb.array([this.getFormControl(item.value || "")]);
189
+ control[id] = this.fb.array([this.getFormControl(item.value || '')]);
166
190
  }
167
191
  else {
168
192
  keys.push(element);
@@ -176,7 +200,13 @@ export class NgxIsoService {
176
200
  }
177
201
  }
178
202
  else if (this.maxOccurs(item.maxOccurs)) {
179
- keys.push({ id: element.id, multi: true, xpath: element.xpath, elements: [element], isFormControls: true });
203
+ keys.push({
204
+ id: element.id,
205
+ multi: true,
206
+ xpath: element.xpath,
207
+ elements: [element],
208
+ isFormControls: true,
209
+ });
180
210
  control[id] = this.fb.array([this.getFormControl(item.value)]);
181
211
  }
182
212
  else if (item.isCurrency) {
@@ -187,14 +217,14 @@ export class NgxIsoService {
187
217
  }
188
218
  else {
189
219
  keys.push(element);
190
- control[id] = this.getFormControl(item.value || "");
220
+ control[id] = this.getFormControl(item.value || '');
191
221
  }
192
222
  });
193
223
  return new FormGroup(control);
194
224
  }
195
225
  getFormControl(values) {
196
- return new FormControl(values || "", {
197
- updateOn: 'blur'
226
+ return new FormControl(values || '', {
227
+ updateOn: 'blur',
198
228
  });
199
229
  }
200
230
  getAmountCurrency(item) {
@@ -202,10 +232,10 @@ export class NgxIsoService {
202
232
  const ccy = structuredClone(item);
203
233
  const amt = structuredClone(item);
204
234
  ccy.id = `${ccy.id}_ccy`;
205
- ccy.name = "Ccy";
235
+ ccy.name = 'Ccy';
206
236
  ccy.fractionDigits = '';
207
237
  ccy.totalDigits = '';
208
- ccy.maxLength = "3";
238
+ ccy.maxLength = '3';
209
239
  ccy.xpath = `${ccy.xpath}@ccy`;
210
240
  ccy.isCurrency = false;
211
241
  elements.push(ccy);
@@ -216,13 +246,13 @@ export class NgxIsoService {
216
246
  elements.push(amt);
217
247
  return elements;
218
248
  }
219
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: NgxIsoService, deps: [{ token: i1.FormBuilder }], target: i0.ɵɵFactoryTarget.Injectable }); }
249
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: NgxIsoService, deps: [{ token: i1.FormBuilder }, { token: i2.CustomDateAdapter }], target: i0.ɵɵFactoryTarget.Injectable }); }
220
250
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: NgxIsoService, providedIn: 'root' }); }
221
251
  }
222
252
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: NgxIsoService, decorators: [{
223
253
  type: Injectable,
224
254
  args: [{
225
- providedIn: 'root'
255
+ providedIn: 'root',
226
256
  }]
227
- }], ctorParameters: function () { return [{ type: i1.FormBuilder }]; } });
228
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LWlzby1mb3JtLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtaXNvLWZvcm0vc3JjL2xpYi9uZ3gtaXNvLWZvcm0uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUEwQixNQUFNLGdCQUFnQixDQUFDOzs7QUFNaEYsTUFBTSxPQUFPLGFBQWE7SUFFeEIsWUFBb0IsRUFBZTtRQUFmLE9BQUUsR0FBRixFQUFFLENBQWE7UUFENUIsZUFBVSxHQUFVLEVBQUUsQ0FBQztRQXVKdkIsYUFBUSxHQUFHLENBQUMsR0FBUSxFQUFPLEVBQUU7WUFDbEMsSUFBSSxHQUFHLEtBQUssSUFBSSxJQUFJLEdBQUcsS0FBSyxFQUFFLEVBQUU7Z0JBQzlCLE9BQU8sSUFBSSxDQUFDO2FBQ2I7WUFFRCxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUU7Z0JBQ3RCLE1BQU0sVUFBVSxHQUFRLEVBQUUsQ0FBQztnQkFDM0IsS0FBSyxNQUFNLEtBQUssSUFBSSxHQUFHLEVBQUU7b0JBQ3ZCLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7b0JBQy9DLElBQUksWUFBWSxLQUFLLElBQUksSUFBSSxZQUFZLEtBQUssRUFBRSxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsTUFBTSxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsSUFBSSxZQUFZLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxFQUFFO3dCQUNySixVQUFVLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO3FCQUMvQjtpQkFDRjtnQkFDRCxP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QUN6QixHQUFHLENBQUMsS0FBSyxHQUFHLEdBQUcsR0FBRyxDQUFDLEtBQUssTUFBTSxDQUFDO1FBQy9CLEdBQUcsQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDO1FBQ3ZCLEdBQUcsQ0FBQyxPQUFPLEdBQUcsRUFBRSxDQUFDO1FBQ2pCLFFBQVEsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDbkIsT0FBTyxRQUFRLENBQUM7SUFDbEIsQ0FBQzs4R0E1TlUsYUFBYTtrSEFBYixhQUFhLGNBRlosTUFBTTs7MkZBRVAsYUFBYTtrQkFIekIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtR3JvdXAsIEZvcm1Db250cm9sLCBGb3JtQXJyYXksIEZvcm1CdWlsZGVyIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgU2NoZW1hTW9kZWwgfSBmcm9tICcuL01vZGVscy9TY2hlbWEnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBOZ3hJc29TZXJ2aWNlIHtcbiAgcHVibGljIF9mb3JtTW9kZWw6IGFueVtdID0gW107XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZmI6IEZvcm1CdWlsZGVyKSB7IH1cblxuICBwdWJsaWMgbWF4T2NjdXJzKG1heE9jY3Vyczogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIG1heE9jY3VycyA9PT0gJ3VuYm91bmRlZCcgfHwgcGFyc2VJbnQobWF4T2NjdXJzLCAxMCkgPiAxO1xuICB9XG5cbiAgcHVibGljIGluaXRGb3JtTW9kZWwobW9kZWw6IGFueSwgZm9ybTogRm9ybUdyb3VwIHwgRm9ybUFycmF5KTogdm9pZCB7XG4gICAgaWYgKHR5cGVvZiBtb2RlbCA9PT0gJ29iamVjdCcpIHtcbiAgICAgIGZvciAoY29uc3Qga2V5IGluIG1vZGVsKSB7XG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KG1vZGVsW2tleV0pKSB7XG4gICAgICAgICAgY29uc3QgcGFyZW50Tm9kZSA9IHRoaXMuZ2V0Rm9ybU1vZGVsKHRoaXMuX2Zvcm1Nb2RlbFswXSwga2V5KTtcbiAgICAgICAgICBjb25zdCBpdGVtID0gbW9kZWxba2V5XTtcbiAgICAgICAgICBjb25zdCBmb3JtQXJyYXkgPSBmb3JtLmdldChrZXkpIGFzIEZvcm1BcnJheTtcbiAgICAgICAgICBpZiAoZm9ybUFycmF5ICYmIGZvcm1BcnJheS5sZW5ndGggIT09IGl0ZW0ubGVuZ3RoKSB7XG4gICAgICAgICAgICBjb25zdCBuZXdFbGUgPSBzdHJ1Y3R1cmVkQ2xvbmUocGFyZW50Tm9kZS5lbGVtZW50c1twYXJlbnROb2RlLmVsZW1lbnRzLmxlbmd0aCAtIDFdKTtcbiAgICAgICAgICAgIGlmICghKG5ld0VsZS5tYXhPY2N1cnMgJiYgcGFyc2VJbnQobmV3RWxlLm1heE9jY3VycywgMTApIDw9IHBhcmVudE5vZGUuZWxlbWVudHMubGVuZ3RoKSkge1xuICAgICAgICAgICAgICBjb25zdCBuZXdLZXlzOiBhbnkgPSBbXTtcbiAgICAgICAgICAgICAgY29uc3QgZ3JvdXBDb250cm9scyA9IHRoaXMuZ2V0Rm9ybUdyb3VwQ29udHJvbHMobmV3RWxlLmVsZW1lbnRzLCBuZXdLZXlzLCBwYXJlbnROb2RlLmVsZW1lbnRzLmxlbmd0aCAtIDEpO1xuICAgICAgICAgICAgICBwYXJlbnROb2RlLmVsZW1lbnRzLnB1c2gobmV3RWxlKTtcbiAgICAgICAgICAgICAgZm9ybUFycmF5LnB1c2goZ3JvdXBDb250cm9scyk7XG4gICAgICAgICAgICAgIHBhcmVudE5vZGUuZWxlbWVudHMuZm9yRWFjaCgoZWxlbWVudDogU2NoZW1hTW9kZWwpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoIWVsZW1lbnQubWluT2NjdXJzIHx8IHBhcnNlSW50KGVsZW1lbnQubWluT2NjdXJzLCAxMCkgPT09IDApIHtcbiAgICAgICAgICAgICAgICAgIGVsZW1lbnQubWluT2NjdXJzID0gXCIxXCI7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGl0ZW0ubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIGNvbnN0IGZvcm1BcnJheSA9IGZvcm0uZ2V0KGtleSk7XG4gICAgICAgICAgICBpZiAoZm9ybUFycmF5KSB7XG4gICAgICAgICAgICAgIGNvbnN0IGZybUdyb3VwID0gKGZvcm1BcnJheSBhcyBGb3JtQXJyYXkpLmF0KGkpO1xuICAgICAgICAgICAgICBpZiAoZnJtR3JvdXApIHtcbiAgICAgICAgICAgICAgICB0aGlzLmluaXRGb3JtTW9kZWwoaXRlbVtpXSwgZnJtR3JvdXAgYXMgRm9ybUdyb3VwKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIGlmICh0eXBlb2YgbW9kZWxba2V5XSA9PT0gJ29iamVjdCcpIHtcbiAgICAgICAgICBjb25zdCBub2RlID0gdGhpcy5nZXRGb3JtTW9kZWwodGhpcy5fZm9ybU1vZGVsWzBdLCBrZXkpO1xuICAgICAgICAgIGlmIChub2RlICYmICghbm9kZS5taW5PY2N1cnMgfHwgcGFyc2VJbnQobm9kZS5taW5PY2N1cnMsIDEwKSA9PT0gMCkpIHtcbiAgICAgICAgICAgIG5vZGUubWluT2NjdXJzID0gXCIxXCI7XG4gICAgICAgICAgfVxuICAgICAgICAgIGNvbnN0IF9mb3JtID0gZm9ybS5nZXQoa2V5KSBhcyBGb3JtR3JvdXBcbiAgICAgICAgICBpZiAoX2Zvcm0pIHtcbiAgICAgICAgICAgIGlmIChub2RlLmRhdGFUeXBlID09PSAnY2hvaWNlJykgeyAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgY29uc3QgY2hvaWNrS2V5ID0gT2JqZWN0LmtleXMobW9kZWxba2V5XSlbMF07XG4gICAgICAgICAgICAgIGNvbnN0IGNob2ljZUVsZSA9IG5vZGUuZWxlbWVudHMuZmluZCgoaXRlbTogU2NoZW1hTW9kZWwpID0+IGl0ZW0uaWQgPT09IGNob2lja0tleSk7XG4gICAgICAgICAgICAgIG5vZGUuY2hvaWNlRm9ybUNvbnRyb2wuc2V0VmFsdWUoY2hvaWNrS2V5KTtcbiAgICAgICAgICAgICAgY2hvaWNlRWxlLmhpZGRlbiA9IGZhbHNlO1xuICAgICAgICAgICAgICBjb25zdCBuZXdOb2RlID0gc3RydWN0dXJlZENsb25lKGNob2ljZUVsZSk7XG4gICAgICAgICAgICAgIGlmIChuZXdOb2RlLmVsZW1lbnRzLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgIGNvbnN0IGdyb3VwID0gdGhpcy5nZXRGb3JtR3JvdXBDb250cm9scyhuZXdOb2RlLmVsZW1lbnRzLCBbXSwgMCwgdHJ1ZSk7XG4gICAgICAgICAgICAgICAgX2Zvcm0uYWRkQ29udHJvbChuZXdOb2RlLmlkLCBncm91cCk7XG4gICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgY29uc3QgY29udHJvbCA9IHRoaXMuZ2V0Rm9ybUNvbnRyb2woJycpO1xuICAgICAgICAgICAgICAgIF9mb3JtLmFkZENvbnRyb2wobmV3Tm9kZS5pZCwgY29udHJvbCk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMuaW5pdEZvcm1Nb2RlbChtb2RlbFtrZXldLCBfZm9ybSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgIGNvbnN0IF9mb3JtID0gZm9ybS5nZXQoa2V5KSBhcyBGb3JtQ29udHJvbDtcbiAgICAgICAgICBfZm9ybS5zZXRWYWx1ZShtb2RlbFtrZXldKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gZWxzZSBpZiAoQXJyYXkuaXNBcnJheShtb2RlbCkpIHtcbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbW9kZWwubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgY29uc3QgZnJtR3JvdXAgPSAoZm9ybSBhcyBGb3JtQXJyYXkpLmF0KGkpO1xuICAgICAgICB0aGlzLmluaXRGb3JtTW9kZWwobW9kZWxbaV0sIGZybUdyb3VwIGFzIEZvcm1Hcm91cCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGdldEZvcm1Hcm91cENvbnRyb2xzKGpzb246IFNjaGVtYU1vZGVsW10sIGtleXM6IGFueSwgaW5kZXg6IG51bWJlciA9IDAsIGNob2ljZUVsZTogYm9vbGVhbiA9IGZhbHNlKTogRm9ybUdyb3VwIHtcbiAgICBsZXQgY29udHJvbDogYW55ID0ge307XG4gICAgbGV0IGNvbnRyb2xzOiBhbnk7XG4gICAgbGV0IHZhbHVlID0ge307XG5cbiAgICBqc29uLmZvckVhY2goKGl0ZW06IFNjaGVtYU1vZGVsKSA9PiB7XG4gICAgICBpdGVtLmhpZGRlbiA9IGNob2ljZUVsZTtcbiAgICAgIHZhbHVlID0gaXRlbS5lbGVtZW50cztcbiAgICAgIGNvbnN0IGlkID0gaXRlbS5pZFxuICAgICAgY29uc3QgZWxlbWVudCA9IHsgLi4uaXRlbSwgZWxlbWVudHM6IFtdLCBpZCB9O1xuICAgICAgaWYgKGl0ZW0uZWxlbWVudHMubGVuZ3RoID4gMCkge1xuICAgICAgICBsZXQgY2hvaWNlID0gaXRlbS5kYXRhVHlwZSA9PT0gJ2Nob2ljZSc7XG4gICAgICAgIGlmIChjaG9pY2UpIHtcbiAgICAgICAgICBlbGVtZW50LmNob2ljZUZvcm1Db250cm9sID0gdGhpcy5nZXRGb3JtQ29udHJvbCgnJyk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMubWF4T2NjdXJzKGl0ZW0ubWF4T2NjdXJzKSkge1xuICAgICAgICAgIGVsZW1lbnQudW5pcXVlSWQgPSBgJHtlbGVtZW50LmlkfV8ke2luZGV4fWA7XG4gICAgICAgICAga2V5cy5wdXNoKHsgaWQ6IGVsZW1lbnQuaWQsIG11bHRpOiB0cnVlLCB4cGF0aDogZWxlbWVudC54cGF0aCwgZWxlbWVudHM6IFtlbGVtZW50XSB9KTtcbiAgICAgICAgICBjb25zdCBkYXRhID0gdGhpcy5nZXRGb3JtR3JvdXBDb250cm9scyhpdGVtLmVsZW1lbnRzLCBlbGVtZW50LmVsZW1lbnRzLCBpbmRleCwgY2hvaWNlKTtcbiAgICAgICAgICBjb250cm9scyA9IHRoaXMuZmIuYXJyYXkoW10pO1xuICAgICAgICAgIGlmICghY2hvaWNlKSB7XG4gICAgICAgICAgICBjb250cm9scy5wdXNoKGRhdGEpO1xuICAgICAgICAgIH1cbiAgICAgICAgICBjb250cm9sW2lkXSA9IGNvbnRyb2xzO1xuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKGl0ZW0ubXVsdGkgJiYgIWl0ZW0uaXNGb3JtQ29udHJvbHMpIHtcbiAgICAgICAgICBrZXlzLnB1c2goeyBpZDogZWxlbWVudC5pZCwgbXVsdGk6IHRydWUsIHhwYXRoOiBlbGVtZW50LnhwYXRoLCBlbGVtZW50czogZWxlbWVudC5lbGVtZW50cyB9KTtcbiAgICAgICAgICBjb25zdCBkYXRhID0gdGhpcy5nZXRGb3JtR3JvdXBDb250cm9scyhpdGVtLmVsZW1lbnRzW2l0ZW0uZWxlbWVudHMubGVuZ3RoIC0gMV0uZWxlbWVudHMsIGVsZW1lbnQuZWxlbWVudHMsIGluZGV4LCBjaG9pY2UpO1xuICAgICAgICAgIGNvbnRyb2xzID0gdGhpcy5mYi5hcnJheShbXSk7XG4gICAgICAgICAgaWYgKCFjaG9pY2UpIHtcbiAgICAgICAgICAgIGNvbnRyb2xzLnB1c2goZGF0YSk7XG4gICAgICAgICAgfVxuICAgICAgICAgIGNvbnRyb2xbaWRdID0gY29udHJvbHM7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAoaXRlbS5tdWx0aSAmJiBpdGVtLmlzRm9ybUNvbnRyb2xzKSB7XG4gICAgICAgICAgaWYgKGl0ZW0uZWxlbWVudHMubGVuZ3RoID4gMSkge1xuICAgICAgICAgICAgaXRlbS5lbGVtZW50cy5zcGxpY2UoMSwgaXRlbS5lbGVtZW50cy5sZW5ndGggLSAxKTtcbiAgICAgICAgICB9XG4gICAgICAgICAga2V5cy5wdXNoKGl0ZW0pO1xuICAgICAgICAgIGNvbnRyb2xbaWRdID0gdGhpcy5mYi5hcnJheShbdGhpcy5nZXRGb3JtQ29udHJvbChpdGVtLnZhbHVlIHx8IFwiXCIpXSk7XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSB7XG4gICAgICAgICAga2V5cy5wdXNoKGVsZW1lbnQpO1xuICAgICAgICAgIGNvbnN0IGRhdGEgPSB0aGlzLmdldEZvcm1Hcm91cENvbnRyb2xzKGl0ZW0uZWxlbWVudHMsIGVsZW1lbnQuZWxlbWVudHMsIGluZGV4LCBjaG9pY2UpO1xuICAgICAgICAgIGlmICghY2hvaWNlKSB7XG4gICAgICAgICAgICBjb250cm9sW2lkXSA9IGRhdGE7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGNvbnRyb2xbaWRdID0gdGhpcy5mYi5ncm91cCh7fSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgIH1cbiAgICAgIGVsc2UgaWYgKHRoaXMubWF4T2NjdXJzKGl0ZW0ubWF4T2NjdXJzKSkge1xuICAgICAgICBrZXlzLnB1c2goeyBpZDogZWxlbWVudC5pZCwgbXVsdGk6IHRydWUsIHhwYXRoOiBlbGVtZW50LnhwYXRoLCBlbGVtZW50czogW2VsZW1lbnRdLCBpc0Zvcm1Db250cm9sczogdHJ1ZSB9KTtcbiAgICAgICAgY29udHJvbFtpZF0gPSB0aGlzLmZiLmFycmF5KFt0aGlzLmdldEZvcm1Db250cm9sKGl0ZW0udmFsdWUpXSk7XG4gICAgICB9IGVsc2UgaWYgKGl0ZW0uaXNDdXJyZW5jeSkge1xuICAgICAgICBjb25zdCBfYW1vdW50Q3VycmVuY3kgPSB0aGlzLmdldEFtb3VudEN1cnJlbmN5KGl0ZW0pO1xuICAgICAgICBrZXlzLnB1c2goZWxlbWVudCk7XG4gICAgICAgIGNvbnN0IGRhdGEgPSB0aGlzLmdldEZvcm1Hcm91cENvbnRyb2xzKF9hbW91bnRDdXJyZW5jeSwgZWxlbWVudC5lbGVtZW50cywgMCwgZmFsc2UpO1xuICAgICAgICBjb250cm9sW2l0ZW0uaWRdID0gZGF0YTtcbiAgICAgIH1cbiAgICAgIGVsc2Uge1xuICAgICAgICBrZXlzLnB1c2goZWxlbWVudCk7XG4gICAgICAgIGNvbnRyb2xbaWRdID0gdGhpcy5nZXRGb3JtQ29udHJvbChpdGVtLnZhbHVlIHx8IFwiXCIpO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgcmV0dXJuIG5ldyBGb3JtR3JvdXAoY29udHJvbCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0Rm9ybUNvbnRyb2wodmFsdWVzOiBhbnkpOiBGb3JtQ29udHJvbCB7XG4gICAgcmV0dXJuIG5ldyBGb3JtQ29udHJvbCh2YWx1ZXMgfHwgXCJcIiwge1xuICAgICAgdXBkYXRlT246ICdibHVyJ1xuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIHNhbml0aXplID0gKG9iajogYW55KTogYW55ID0+IHtcbiAgICBpZiAob2JqID09PSBudWxsIHx8IG9iaiA9PT0gXCJcIikge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgaWYgKEFycmF5LmlzQXJyYXkob2JqKSkge1xuICAgICAgY29uc3QgY2xlYW5lZE9iajogYW55ID0gW107XG4gICAgICBmb3IgKGNvbnN0IGluZGV4IGluIG9iaikge1xuICAgICAgICBjb25zdCBjbGVhbmVkVmFsdWUgPSB0aGlzLnNhbml0aXplKG9ialtpbmRleF0pO1xuICAgICAgICBpZiAoY2xlYW5lZFZhbHVlICE9PSBudWxsICYmIGNsZWFuZWRWYWx1ZSAhPT0gXCJcIiAmJiBPYmplY3Qua2V5cyhjbGVhbmVkVmFsdWUpLmxlbmd0aCA+IDAgJiYgKCFBcnJheS5pc0FycmF5KGNsZWFuZWRWYWx1ZSkgfHwgY2xlYW5lZFZhbHVlLmxlbmd0aCA+IDApKSB7XG4gICAgICAgICAgY2xlYW5lZE9iai5wdXNoKGNsZWFuZWRWYWx1ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHJldHVybiBjbGVhbmVkT2JqO1xuICAgIH0gZWxzZSBpZiAodHlwZW9mIG9iaiA9PT0gJ29iamVjdCcpIHtcbiAgICAgIGNvbnN0IGNsZWFuZWRPYmo6IGFueSA9IHt9O1xuXG4gICAgICBmb3IgKGNvbnN0IGtleSBpbiBvYmopIHtcbiAgICAgICAgY29uc3QgY2xlYW5lZFZhbHVlID0gdGhpcy5zYW5pdGl6ZShvYmpba2V5XSk7XG4gICAgICAgIGlmIChjbGVhbmVkVmFsdWUgIT09IG51bGwgJiYgY2xlYW5lZFZhbHVlICE9PSBcIlwiICYmIE9iamVjdC5rZXlzKGNsZWFuZWRWYWx1ZSkubGVuZ3RoID4gMCAmJiAoIUFycmF5LmlzQXJyYXkoY2xlYW5lZFZhbHVlKSB8fCBjbGVhbmVkVmFsdWUubGVuZ3RoID4gMCkpIHtcbiAgICAgICAgICBjbGVhbmVkT2JqW2tleV0gPSBjbGVhbmVkVmFsdWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHJldHVybiBjbGVhbmVkT2JqO1xuICAgIH1cblxuICAgIHJldHVybiBvYmo7XG4gIH1cblxuICBwcml2YXRlIGdldEZvcm1Nb2RlbCA9IChvYmplY3Q6IGFueSwga2V5OiBzdHJpbmcpOiBhbnkgPT4ge1xuICAgIGlmIChvYmplY3QpIHtcbiAgICAgIGlmIChvYmplY3QuZWxlbWVudHMubGVuZ3RoKSB7XG4gICAgICAgIGlmIChvYmplY3QuaWQgPT09IGtleSkge1xuICAgICAgICAgIHJldHVybiBvYmplY3Q7XG4gICAgICAgIH1cbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBvYmplY3QuZWxlbWVudHMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICBjb25zdCBvYmogPSB0aGlzLmdldEZvcm1Nb2RlbChvYmplY3QuZWxlbWVudHNbaV0sIGtleSk7XG4gICAgICAgICAgaWYgKG9iailcbiAgICAgICAgICAgIHJldHVybiBvYmo7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGlmIChvYmplY3QuaWQgPT09IGtleSkge1xuICAgICAgICAgIHJldHVybiBvYmplY3Q7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGdldEFtb3VudEN1cnJlbmN5KGl0ZW06IFNjaGVtYU1vZGVsKTogU2NoZW1hTW9kZWxbXSB7XG4gICAgY29uc3QgZWxlbWVudHM6IFNjaGVtYU1vZGVsW10gPSBbXTtcbiAgICBjb25zdCBjY3kgPSBzdHJ1Y3R1cmVkQ2xvbmUoaXRlbSk7XG4gICAgY29uc3QgYW10ID0gc3RydWN0dXJlZENsb25lKGl0ZW0pO1xuXG4gICAgY2N5LmlkID0gYCR7Y2N5LmlkfV9jY3lgO1xuICAgIGNjeS5uYW1lID0gXCJDY3lcIjtcbiAgICBjY3kuZnJhY3Rpb25EaWdpdHMgPSAnJztcbiAgICBjY3kudG90YWxEaWdpdHMgPSAnJztcbiAgICBjY3kubWF4TGVuZ3RoID0gXCIzXCJcbiAgICBjY3kueHBhdGggPSBgJHtjY3kueHBhdGh9QGNjeWA7XG4gICAgY2N5LmlzQ3VycmVuY3kgPSBmYWxzZTtcbiAgICBlbGVtZW50cy5wdXNoKGNjeSk7XG5cbiAgICBhbXQuaWQgPSBgJHthbXQuaWR9X2FtdGA7XG4gICAgYW10LnhwYXRoID0gYCR7YW10LnhwYXRofS9hbXRgO1xuICAgIGFtdC5pc0N1cnJlbmN5ID0gZmFsc2U7XG4gICAgYW10LnBhdHRlcm4gPSAnJztcbiAgICBlbGVtZW50cy5wdXNoKGFtdCk7XG4gICAgcmV0dXJuIGVsZW1lbnRzO1xuICB9XG59XG4iXX0=
257
+ }], ctorParameters: function () { return [{ type: i1.FormBuilder }, { type: i2.CustomDateAdapter }]; } });
258
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LWlzby1mb3JtLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtaXNvLWZvcm0vc3JjL2xpYi9uZ3gtaXNvLWZvcm0uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUEwQixNQUFNLGdCQUFnQixDQUFDOzs7O0FBT2hGLE1BQU0sT0FBTyxhQUFhO0lBRXhCLFlBQ1UsRUFBZSxFQUNmLFdBQThCO1FBRDlCLE9BQUUsR0FBRixFQUFFLENBQWE7UUFDZixnQkFBVyxHQUFYLFdBQVcsQ0FBbUI7UUFIakMsZUFBVSxHQUFVLEVBQUUsQ0FBQztRQWlOdkIsYUFBUSxHQUFHLENBQUMsR0FBUSxFQUFPLEVBQUU7WUFDbEMsSUFBSSxHQUFHLEtBQUssSUFBSSxJQUFJLEdBQUcsS0FBSyxFQUFFLEVBQUU7Z0JBQzlCLE9BQU8sSUFBSSxDQUFDO2FBQ2I7WUFFRCxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUU7Z0JBQ3RCLE1BQU0sVUFBVSxHQUFRLEVBQUUsQ0FBQztnQkFDM0IsS0FBSyxNQUFNLEtBQUssSUFBSSxHQUFHLEVBQUU7b0JBQ3ZCLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7b0JBQy9DLElBQ0UsWUFBWSxLQUFLLElBQUk7d0JBQ3JCLFlBQVksS0FBSyxFQUFFO3dCQUNuQixNQUFNLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLE1BQU0sR0FBRyxDQUFDO3dCQUNwQyxDQUFDLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsSUFBSSxZQUFZLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxFQUN6RDt3QkFDQSxVQUFVLENBQUMs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QUcsR0FBRyxDQUFDO1FBQ3BCLEdBQUcsQ0FBQyxLQUFLLEdBQUcsR0FBRyxHQUFHLENBQUMsS0FBSyxNQUFNLENBQUM7UUFDL0IsR0FBRyxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUM7UUFDdkIsUUFBUSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUVuQixHQUFHLENBQUMsRUFBRSxHQUFHLEdBQUcsR0FBRyxDQUFDLEVBQUUsTUFBTSxDQUFDO1FBQ3pCLEdBQUcsQ0FBQyxLQUFLLEdBQUcsR0FBRyxHQUFHLENBQUMsS0FBSyxNQUFNLENBQUM7UUFDL0IsR0FBRyxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUM7UUFDdkIsR0FBRyxDQUFDLE9BQU8sR0FBRyxFQUFFLENBQUM7UUFDakIsUUFBUSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNuQixPQUFPLFFBQVEsQ0FBQztJQUNsQixDQUFDOzhHQWxTVSxhQUFhO2tIQUFiLGFBQWEsY0FGWixNQUFNOzsyRkFFUCxhQUFhO2tCQUh6QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1Hcm91cCwgRm9ybUNvbnRyb2wsIEZvcm1BcnJheSwgRm9ybUJ1aWxkZXIgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBTY2hlbWFNb2RlbCB9IGZyb20gJy4vTW9kZWxzL1NjaGVtYSc7XG5pbXBvcnQgeyBDdXN0b21EYXRlQWRhcHRlciB9IGZyb20gJy4vc2hhcmVkL3NlcnZpY2VzL2N1c3RvbS1kYXRlLWFkYXB0ZXInO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgTmd4SXNvU2VydmljZSB7XG4gIHB1YmxpYyBfZm9ybU1vZGVsOiBhbnlbXSA9IFtdO1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGZiOiBGb3JtQnVpbGRlcixcbiAgICBwcml2YXRlIGRhdGVTZXJ2aWNlOiBDdXN0b21EYXRlQWRhcHRlclxuICApIHt9XG5cbiAgcHVibGljIG1heE9jY3VycyhtYXhPY2N1cnM6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBtYXhPY2N1cnMgPT09ICd1bmJvdW5kZWQnIHx8IHBhcnNlSW50KG1heE9jY3VycywgMTApID4gMTtcbiAgfVxuXG4gIHB1YmxpYyBpbml0Rm9ybU1vZGVsKG1vZGVsOiBhbnksIGZvcm06IEZvcm1Hcm91cCB8IEZvcm1BcnJheSk6IHZvaWQge1xuICAgIGlmICh0eXBlb2YgbW9kZWwgPT09ICdvYmplY3QnKSB7XG4gICAgICBmb3IgKGNvbnN0IGtleSBpbiBtb2RlbCkge1xuICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShtb2RlbFtrZXldKSkge1xuICAgICAgICAgIGNvbnN0IHBhcmVudE5vZGUgPSB0aGlzLmdldEZvcm1Nb2RlbCh0aGlzLl9mb3JtTW9kZWxbMF0sIGtleSk7XG4gICAgICAgICAgY29uc3QgaXRlbSA9IG1vZGVsW2tleV07XG4gICAgICAgICAgY29uc3QgZm9ybUFycmF5ID0gZm9ybS5nZXQoa2V5KSBhcyBGb3JtQXJyYXk7XG4gICAgICAgICAgaWYgKGZvcm1BcnJheSAmJiBmb3JtQXJyYXkubGVuZ3RoICE9PSBpdGVtLmxlbmd0aCkge1xuICAgICAgICAgICAgY29uc3QgbmV3RWxlID0gc3RydWN0dXJlZENsb25lKFxuICAgICAgICAgICAgICBwYXJlbnROb2RlLmVsZW1lbnRzW3BhcmVudE5vZGUuZWxlbWVudHMubGVuZ3RoIC0gMV1cbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICEoXG4gICAgICAgICAgICAgICAgbmV3RWxlLm1heE9jY3VycyAmJlxuICAgICAgICAgICAgICAgIHBhcnNlSW50KG5ld0VsZS5tYXhPY2N1cnMsIDEwKSA8PSBwYXJlbnROb2RlLmVsZW1lbnRzLmxlbmd0aFxuICAgICAgICAgICAgICApXG4gICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgY29uc3QgbmV3S2V5czogYW55ID0gW107XG4gICAgICAgICAgICAgIGNvbnN0IGdyb3VwQ29udHJvbHMgPSB0aGlzLmdldEZvcm1Hcm91cENvbnRyb2xzKFxuICAgICAgICAgICAgICAgIG5ld0VsZS5lbGVtZW50cyxcbiAgICAgICAgICAgICAgICBuZXdLZXlzLFxuICAgICAgICAgICAgICAgIHBhcmVudE5vZGUuZWxlbWVudHMubGVuZ3RoIC0gMVxuICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICBwYXJlbnROb2RlLmVsZW1lbnRzLnB1c2gobmV3RWxlKTtcbiAgICAgICAgICAgICAgZm9ybUFycmF5LnB1c2goZ3JvdXBDb250cm9scyk7XG4gICAgICAgICAgICAgIHBhcmVudE5vZGUuZWxlbWVudHMuZm9yRWFjaCgoZWxlbWVudDogU2NoZW1hTW9kZWwpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgICAhZWxlbWVudC5taW5PY2N1cnMgfHxcbiAgICAgICAgICAgICAgICAgIHBhcnNlSW50KGVsZW1lbnQubWluT2NjdXJzLCAxMCkgPT09IDBcbiAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgIGVsZW1lbnQubWluT2NjdXJzID0gJzEnO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBpdGVtLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBjb25zdCBmb3JtQXJyYXkgPSBmb3JtLmdldChrZXkpO1xuICAgICAgICAgICAgaWYgKGZvcm1BcnJheSkge1xuICAgICAgICAgICAgICBjb25zdCBmcm1Hcm91cCA9IChmb3JtQXJyYXkgYXMgRm9ybUFycmF5KS5hdChpKTtcbiAgICAgICAgICAgICAgaWYgKGZybUdyb3VwKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5pbml0Rm9ybU1vZGVsKGl0ZW1baV0sIGZybUdyb3VwIGFzIEZvcm1Hcm91cCk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSBpZiAodHlwZW9mIG1vZGVsW2tleV0gPT09ICdvYmplY3QnKSB7XG4gICAgICAgICAgY29uc3Qgbm9kZSA9IHRoaXMuZ2V0Rm9ybU1vZGVsKHRoaXMuX2Zvcm1Nb2RlbFswXSwga2V5KTtcbiAgICAgICAgICBpZiAobm9kZSAmJiAoIW5vZGUubWluT2NjdXJzIHx8IHBhcnNlSW50KG5vZGUubWluT2NjdXJzLCAxMCkgPT09IDApKSB7XG4gICAgICAgICAgICBub2RlLm1pbk9jY3VycyA9ICcxJztcbiAgICAgICAgICB9XG4gICAgICAgICAgY29uc3QgX2Zvcm0gPSBmb3JtLmdldChrZXkpIGFzIEZvcm1Hcm91cDtcbiAgICAgICAgICBpZiAoX2Zvcm0pIHtcbiAgICAgICAgICAgIGlmIChub2RlLmRhdGFUeXBlID09PSAnY2hvaWNlJykge1xuICAgICAgICAgICAgICBjb25zdCBjaG9pY2VLZXkgPSBPYmplY3Qua2V5cyhtb2RlbFtrZXldKVswXTtcbiAgICAgICAgICAgICAgY29uc3QgY2hvaWNlRWxlID0gbm9kZS5lbGVtZW50cy5maW5kKFxuICAgICAgICAgICAgICAgIChpdGVtOiBTY2hlbWFNb2RlbCkgPT4gaXRlbS5pZCA9PT0gY2hvaWNlS2V5XG4gICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgIG5vZGUuY2hvaWNlS2V5ID0gY2hvaWNlS2V5O1xuICAgICAgICAgICAgICBjaG9pY2VFbGUuaGlkZGVuID0gZmFsc2U7XG4gICAgICAgICAgICAgIGNvbnN0IG5ld05vZGUgPSBzdHJ1Y3R1cmVkQ2xvbmUoY2hvaWNlRWxlKTtcbiAgICAgICAgICAgICAgaWYgKG5ld05vZGUuZWxlbWVudHMubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgZ3JvdXAgPSB0aGlzLmdldEZvcm1Hcm91cENvbnRyb2xzKFxuICAgICAgICAgICAgICAgICAgbmV3Tm9kZS5lbGVtZW50cyxcbiAgICAgICAgICAgICAgICAgIFtdLFxuICAgICAgICAgICAgICAgICAgMCxcbiAgICAgICAgICAgICAgICAgIHRydWVcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIF9mb3JtLmFkZENvbnRyb2wobmV3Tm9kZS5pZCwgZ3JvdXApO1xuICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIGNvbnN0IGNvbnRyb2wgPSB0aGlzLmdldEZvcm1Db250cm9sKCcnKTtcbiAgICAgICAgICAgICAgICBfZm9ybS5hZGRDb250cm9sKG5ld05vZGUuaWQsIGNvbnRyb2wpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aGlzLmluaXRGb3JtTW9kZWwobW9kZWxba2V5XSwgX2Zvcm0pO1xuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBjb25zdCBfZm9ybSA9IGZvcm0uZ2V0KGtleSkgYXMgRm9ybUNvbnRyb2w7XG4gICAgICAgICAgX2Zvcm0uc2V0VmFsdWUobW9kZWxba2V5XSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKEFycmF5LmlzQXJyYXkobW9kZWwpKSB7XG4gICAgICBmb3IgKGxldCBpID0gMDsgaSA8IG1vZGVsLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIGNvbnN0IGZybUdyb3VwID0gKGZvcm0gYXMgRm9ybUFycmF5KS5hdChpKTtcbiAgICAgICAgdGhpcy5pbml0Rm9ybU1vZGVsKG1vZGVsW2ldLCBmcm1Hcm91cCBhcyBGb3JtR3JvdXApO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBnZXRGb3JtR3JvdXBDb250cm9scyhcbiAgICBqc29uOiBTY2hlbWFNb2RlbFtdLFxuICAgIGtleXM6IGFueSxcbiAgICBpbmRleDogbnVtYmVyID0gMCxcbiAgICBjaG9pY2VFbGU6IGJvb2xlYW4gPSBmYWxzZVxuICApOiBGb3JtR3JvdXAge1xuICAgIGxldCBjb250cm9sOiBhbnkgPSB7fTtcbiAgICBsZXQgY29udHJvbHM6IGFueTtcbiAgICBsZXQgdmFsdWUgPSB7fTtcblxuICAgIGpzb24uZm9yRWFjaCgoaXRlbTogU2NoZW1hTW9kZWwpID0+IHtcbiAgICAgIGl0ZW0uaGlkZGVuID0gY2hvaWNlRWxlO1xuICAgICAgdmFsdWUgPSBpdGVtLmVsZW1lbnRzO1xuICAgICAgY29uc3QgaWQgPSBpdGVtLmlkO1xuICAgICAgY29uc3QgZWxlbWVudCA9IHsgLi4uaXRlbSwgZWxlbWVudHM6IFtdLCBpZCB9O1xuICAgICAgaWYgKGl0ZW0uZWxlbWVudHMubGVuZ3RoID4gMCkge1xuICAgICAgICBsZXQgY2hvaWNlID0gaXRlbS5kYXRhVHlwZSA9PT0gJ2Nob2ljZSc7XG4gICAgICAgIGlmIChjaG9pY2UpIHtcbiAgICAgICAgICBlbGVtZW50LmNob2ljZUtleSA9ICcnO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLm1heE9jY3VycyhpdGVtLm1heE9jY3VycykpIHtcbiAgICAgICAgICBlbGVtZW50LnVuaXF1ZUlkID0gYCR7ZWxlbWVudC5pZH1fJHtpbmRleH1gO1xuICAgICAgICAgIGtleXMucHVzaCh7XG4gICAgICAgICAgICBpZDogZWxlbWVudC5pZCxcbiAgICAgICAgICAgIG11bHRpOiB0cnVlLFxuICAgICAgICAgICAgeHBhdGg6IGVsZW1lbnQueHBhdGgsXG4gICAgICAgICAgICBlbGVtZW50czogW2VsZW1lbnRdLFxuICAgICAgICAgIH0pO1xuICAgICAgICAgIGNvbnN0IGRhdGEgPSB0aGlzLmdldEZvcm1Hcm91cENvbnRyb2xzKFxuICAgICAgICAgICAgaXRlbS5lbGVtZW50cyxcbiAgICAgICAgICAgIGVsZW1lbnQuZWxlbWVudHMsXG4gICAgICAgICAgICBpbmRleCxcbiAgICAgICAgICAgIGNob2ljZVxuICAgICAgICAgICk7XG4gICAgICAgICAgY29udHJvbHMgPSB0aGlzLmZiLmFycmF5KFtdKTtcbiAgICAgICAgICBpZiAoIWNob2ljZSkge1xuICAgICAgICAgICAgY29udHJvbHMucHVzaChkYXRhKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgY29udHJvbFtpZF0gPSBjb250cm9scztcbiAgICAgICAgfSBlbHNlIGlmIChpdGVtLm11bHRpICYmICFpdGVtLmlzRm9ybUNvbnRyb2xzKSB7XG4gICAgICAgICAga2V5cy5wdXNoKHtcbiAgICAgICAgICAgIGlkOiBlbGVtZW50LmlkLFxuICAgICAgICAgICAgbXVsdGk6IHRydWUsXG4gICAgICAgICAgICB4cGF0aDogZWxlbWVudC54cGF0aCxcbiAgICAgICAgICAgIGVsZW1lbnRzOiBlbGVtZW50LmVsZW1lbnRzLFxuICAgICAgICAgIH0pO1xuICAgICAgICAgIGNvbnN0IGRhdGEgPSB0aGlzLmdldEZvcm1Hcm91cENvbnRyb2xzKFxuICAgICAgICAgICAgaXRlbS5lbGVtZW50c1tpdGVtLmVsZW1lbnRzLmxlbmd0aCAtIDFdLmVsZW1lbnRzLFxuICAgICAgICAgICAgZWxlbWVudC5lbGVtZW50cyxcbiAgICAgICAgICAgIGluZGV4LFxuICAgICAgICAgICAgY2hvaWNlXG4gICAgICAgICAgKTtcbiAgICAgICAgICBjb250cm9scyA9IHRoaXMuZmIuYXJyYXkoW10pO1xuICAgICAgICAgIGlmICghY2hvaWNlKSB7XG4gICAgICAgICAgICBjb250cm9scy5wdXNoKGRhdGEpO1xuICAgICAgICAgIH1cbiAgICAgICAgICBjb250cm9sW2lkXSA9IGNvbnRyb2xzO1xuICAgICAgICB9IGVsc2UgaWYgKGl0ZW0ubXVsdGkgJiYgaXRlbS5pc0Zvcm1Db250cm9scykge1xuICAgICAgICAgIGlmIChpdGVtLmVsZW1lbnRzLmxlbmd0aCA+IDEpIHtcbiAgICAgICAgICAgIGl0ZW0uZWxlbWVudHMuc3BsaWNlKDEsIGl0ZW0uZWxlbWVudHMubGVuZ3RoIC0gMSk7XG4gICAgICAgICAgfVxuICAgICAgICAgIGtleXMucHVzaChpdGVtKTtcbiAgICAgICAgICBjb250cm9sW2lkXSA9IHRoaXMuZmIuYXJyYXkoW3RoaXMuZ2V0Rm9ybUNvbnRyb2woaXRlbS52YWx1ZSB8fCAnJyldKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBrZXlzLnB1c2goZWxlbWVudCk7XG4gICAgICAgICAgY29uc3QgZGF0YSA9IHRoaXMuZ2V0Rm9ybUdyb3VwQ29udHJvbHMoXG4gICAgICAgICAgICBpdGVtLmVsZW1lbnRzLFxuICAgICAgICAgICAgZWxlbWVudC5lbGVtZW50cyxcbiAgICAgICAgICAgIGluZGV4LFxuICAgICAgICAgICAgY2hvaWNlXG4gICAgICAgICAgKTtcbiAgICAgICAgICBpZiAoIWNob2ljZSkge1xuICAgICAgICAgICAgY29udHJvbFtpZF0gPSBkYXRhO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjb250cm9sW2lkXSA9IHRoaXMuZmIuZ3JvdXAoe30pO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSBlbHNlIGlmICh0aGlzLm1heE9jY3VycyhpdGVtLm1heE9jY3VycykpIHtcbiAgICAgICAga2V5cy5wdXNoKHtcbiAgICAgICAgICBpZDogZWxlbWVudC5pZCxcbiAgICAgICAgICBtdWx0aTogdHJ1ZSxcbiAgICAgICAgICB4cGF0aDogZWxlbWVudC54cGF0aCxcbiAgICAgICAgICBlbGVtZW50czogW2VsZW1lbnRdLFxuICAgICAgICAgIGlzRm9ybUNvbnRyb2xzOiB0cnVlLFxuICAgICAgICB9KTtcbiAgICAgICAgY29udHJvbFtpZF0gPSB0aGlzLmZiLmFycmF5KFt0aGlzLmdldEZvcm1Db250cm9sKGl0ZW0udmFsdWUpXSk7XG4gICAgICB9IGVsc2UgaWYgKGl0ZW0uaXNDdXJyZW5jeSkge1xuICAgICAgICBjb25zdCBfYW1vdW50Q3VycmVuY3kgPSB0aGlzLmdldEFtb3VudEN1cnJlbmN5KGl0ZW0pO1xuICAgICAgICBrZXlzLnB1c2goZWxlbWVudCk7XG4gICAgICAgIGNvbnN0IGRhdGEgPSB0aGlzLmdldEZvcm1Hcm91cENvbnRyb2xzKFxuICAgICAgICAgIF9hbW91bnRDdXJyZW5jeSxcbiAgICAgICAgICBlbGVtZW50LmVsZW1lbnRzLFxuICAgICAgICAgIDAsXG4gICAgICAgICAgZmFsc2VcbiAgICAgICAgKTtcbiAgICAgICAgY29udHJvbFtpdGVtLmlkXSA9IGRhdGE7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBrZXlzLnB1c2goZWxlbWVudCk7XG4gICAgICAgIGNvbnRyb2xbaWRdID0gdGhpcy5nZXRGb3JtQ29udHJvbChpdGVtLnZhbHVlIHx8ICcnKTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIHJldHVybiBuZXcgRm9ybUdyb3VwKGNvbnRyb2wpO1xuICB9XG5cbiAgcHVibGljIGdldEZvcm1Db250cm9sKHZhbHVlczogYW55KTogRm9ybUNvbnRyb2wge1xuICAgIHJldHVybiBuZXcgRm9ybUNvbnRyb2wodmFsdWVzIHx8ICcnLCB7XG4gICAgICB1cGRhdGVPbjogJ2JsdXInLFxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIHNhbml0aXplID0gKG9iajogYW55KTogYW55ID0+IHtcbiAgICBpZiAob2JqID09PSBudWxsIHx8IG9iaiA9PT0gJycpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIGlmIChBcnJheS5pc0FycmF5KG9iaikpIHtcbiAgICAgIGNvbnN0IGNsZWFuZWRPYmo6IGFueSA9IFtdO1xuICAgICAgZm9yIChjb25zdCBpbmRleCBpbiBvYmopIHtcbiAgICAgICAgY29uc3QgY2xlYW5lZFZhbHVlID0gdGhpcy5zYW5pdGl6ZShvYmpbaW5kZXhdKTtcbiAgICAgICAgaWYgKFxuICAgICAgICAgIGNsZWFuZWRWYWx1ZSAhPT0gbnVsbCAmJlxuICAgICAgICAgIGNsZWFuZWRWYWx1ZSAhPT0gJycgJiZcbiAgICAgICAgICBPYmplY3Qua2V5cyhjbGVhbmVkVmFsdWUpLmxlbmd0aCA+IDAgJiZcbiAgICAgICAgICAoIUFycmF5LmlzQXJyYXkoY2xlYW5lZFZhbHVlKSB8fCBjbGVhbmVkVmFsdWUubGVuZ3RoID4gMClcbiAgICAgICAgKSB7XG4gICAgICAgICAgY2xlYW5lZE9iai5wdXNoKGNsZWFuZWRWYWx1ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHJldHVybiBjbGVhbmVkT2JqO1xuICAgIH0gZWxzZSBpZiAodHlwZW9mIG9iaiA9PT0gJ29iamVjdCcgJiYgb2JqIGluc3RhbmNlb2YgRGF0ZSkge1xuICAgICAgY29uc3QgY2xlYW5lZE9iaiA9IHRoaXMuZGF0ZVNlcnZpY2UuZm9ybWF0KG9iaiwgJ1lZWVktTU0tREQnKTtcbiAgICAgIHJldHVybiBjbGVhbmVkT2JqO1xuICAgIH0gZWxzZSBpZiAodHlwZW9mIG9iaiA9PT0gJ29iamVjdCcpIHtcbiAgICAgIGNvbnN0IGNsZWFuZWRPYmo6IGFueSA9IHt9O1xuXG4gICAgICBmb3IgKGNvbnN0IGtleSBpbiBvYmopIHtcbiAgICAgICAgY29uc3QgY2xlYW5lZFZhbHVlID0gdGhpcy5zYW5pdGl6ZShvYmpba2V5XSk7XG4gICAgICAgIGlmIChcbiAgICAgICAgICBjbGVhbmVkVmFsdWUgIT09IG51bGwgJiZcbiAgICAgICAgICBjbGVhbmVkVmFsdWUgIT09ICcnICYmXG4gICAgICAgICAgT2JqZWN0LmtleXMoY2xlYW5lZFZhbHVlKS5sZW5ndGggPiAwICYmXG4gICAgICAgICAgKCFBcnJheS5pc0FycmF5KGNsZWFuZWRWYWx1ZSkgfHwgY2xlYW5lZFZhbHVlLmxlbmd0aCA+IDApXG4gICAgICAgICkge1xuICAgICAgICAgIGNsZWFuZWRPYmpba2V5XSA9IGNsZWFuZWRWYWx1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgcmV0dXJuIGNsZWFuZWRPYmo7XG4gICAgfVxuXG4gICAgcmV0dXJuIG9iajtcbiAgfTtcblxuICBwcml2YXRlIGdldEZvcm1Nb2RlbCA9IChvYmplY3Q6IGFueSwga2V5OiBzdHJpbmcpOiBhbnkgPT4ge1xuICAgIGlmIChvYmplY3QpIHtcbiAgICAgIGlmIChvYmplY3QuZWxlbWVudHMubGVuZ3RoKSB7XG4gICAgICAgIGlmIChvYmplY3QuaWQgPT09IGtleSkge1xuICAgICAgICAgIHJldHVybiBvYmplY3Q7XG4gICAgICAgIH1cbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBvYmplY3QuZWxlbWVudHMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICBjb25zdCBvYmogPSB0aGlzLmdldEZvcm1Nb2RlbChvYmplY3QuZWxlbWVudHNbaV0sIGtleSk7XG4gICAgICAgICAgaWYgKG9iaikgcmV0dXJuIG9iajtcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaWYgKG9iamVjdC5pZCA9PT0ga2V5KSB7XG4gICAgICAgICAgcmV0dXJuIG9iamVjdDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfTtcblxuICBwcml2YXRlIGdldEFtb3VudEN1cnJlbmN5KGl0ZW06IFNjaGVtYU1vZGVsKTogU2NoZW1hTW9kZWxbXSB7XG4gICAgY29uc3QgZWxlbWVudHM6IFNjaGVtYU1vZGVsW10gPSBbXTtcbiAgICBjb25zdCBjY3kgPSBzdHJ1Y3R1cmVkQ2xvbmUoaXRlbSk7XG4gICAgY29uc3QgYW10ID0gc3RydWN0dXJlZENsb25lKGl0ZW0pO1xuXG4gICAgY2N5LmlkID0gYCR7Y2N5LmlkfV9jY3lgO1xuICAgIGNjeS5uYW1lID0gJ0NjeSc7XG4gICAgY2N5LmZyYWN0aW9uRGlnaXRzID0gJyc7XG4gICAgY2N5LnRvdGFsRGlnaXRzID0gJyc7XG4gICAgY2N5Lm1heExlbmd0aCA9ICczJztcbiAgICBjY3kueHBhdGggPSBgJHtjY3kueHBhdGh9QGNjeWA7XG4gICAgY2N5LmlzQ3VycmVuY3kgPSBmYWxzZTtcbiAgICBlbGVtZW50cy5wdXNoKGNjeSk7XG5cbiAgICBhbXQuaWQgPSBgJHthbXQuaWR9X2FtdGA7XG4gICAgYW10LnhwYXRoID0gYCR7YW10LnhwYXRofS9hbXRgO1xuICAgIGFtdC5pc0N1cnJlbmN5ID0gZmFsc2U7XG4gICAgYW10LnBhdHRlcm4gPSAnJztcbiAgICBlbGVtZW50cy5wdXNoKGFtdCk7XG4gICAgcmV0dXJuIGVsZW1lbnRzO1xuICB9XG59XG4iXX0=
@@ -1,6 +1,6 @@
1
- import { __decorate } from "tslib";
2
- import { Inject } from "@angular/core";
3
- export let ComponentService = class ComponentService {
1
+ import { Injectable } from "@angular/core";
2
+ import * as i0 from "@angular/core";
3
+ export class ComponentService {
4
4
  getComponent(viewContainerRef, dynamicModel) {
5
5
  const componentRef = viewContainerRef.createComponent(dynamicModel.component);
6
6
  if (dynamicModel.prop) {
@@ -8,8 +8,13 @@ export let ComponentService = class ComponentService {
8
8
  }
9
9
  return componentRef;
10
10
  }
11
- };
12
- ComponentService = __decorate([
13
- Inject('root')
14
- ], ComponentService);
15
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtaXNvLWZvcm0vc3JjL2xpYi9zaGFyZWQvc2VydmljZXMvY29tcG9uZW50LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBZ0IsTUFBTSxFQUEwQixNQUFNLGVBQWUsQ0FBQztBQUl0RSxXQUFNLGdCQUFnQixHQUF0QixNQUFNLGdCQUFnQjtJQUNsQixZQUFZLENBQUksZ0JBQWtDLEVBQUMsWUFBNEI7UUFDbEYsTUFBTSxZQUFZLEdBQUcsZ0JBQWdCLENBQUMsZUFBZSxDQUFJLFlBQVksQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUNqRixJQUFHLFlBQVksQ0FBQyxJQUFJLEVBQUM7WUFDaEIsWUFBWSxDQUFDLFFBQWdCLENBQUMsSUFBSSxHQUFHLFlBQVksQ0FBQyxJQUFJLENBQUM7U0FDM0Q7UUFDRCxPQUFPLFlBQVksQ0FBQztJQUN4QixDQUFDO0NBQ0osQ0FBQTtBQVJZLGdCQUFnQjtJQUQ1QixNQUFNLENBQUMsTUFBTSxDQUFDO0dBQ0YsZ0JBQWdCLENBUTVCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50UmVmLCBJbmplY3QsIFR5cGUsIFZpZXdDb250YWluZXJSZWYgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBDb21wb25lbnRNb2RlbCB9IGZyb20gXCIuLi9tb2RlbHMvY29tcG9uZW50Lm1vZGVsXCI7XHJcblxyXG5ASW5qZWN0KCdyb290JylcclxuZXhwb3J0IGNsYXNzIENvbXBvbmVudFNlcnZpY2V7XHJcbiAgICBwdWJsaWMgZ2V0Q29tcG9uZW50PFQ+KHZpZXdDb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWYsZHluYW1pY01vZGVsOiBDb21wb25lbnRNb2RlbCk6IENvbXBvbmVudFJlZjxUPiB7XHJcbiAgICAgICAgY29uc3QgY29tcG9uZW50UmVmID0gdmlld0NvbnRhaW5lclJlZi5jcmVhdGVDb21wb25lbnQ8VD4oZHluYW1pY01vZGVsLmNvbXBvbmVudCk7XHJcbiAgICAgICAgaWYoZHluYW1pY01vZGVsLnByb3Ape1xyXG4gICAgICAgICAgICAoY29tcG9uZW50UmVmLmluc3RhbmNlIGFzIGFueSkucHJvcCA9IGR5bmFtaWNNb2RlbC5wcm9wO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gY29tcG9uZW50UmVmO1xyXG4gICAgfVxyXG59XHJcblxyXG4iXX0=
11
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: ComponentService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
12
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: ComponentService, providedIn: 'root' }); }
13
+ }
14
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: ComponentService, decorators: [{
15
+ type: Injectable,
16
+ args: [{
17
+ providedIn: 'root'
18
+ }]
19
+ }] });
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtaXNvLWZvcm0vc3JjL2xpYi9zaGFyZWQvc2VydmljZXMvY29tcG9uZW50LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFnQixVQUFVLEVBQW9CLE1BQU0sZUFBZSxDQUFDOztBQU0zRSxNQUFNLE9BQU8sZ0JBQWdCO0lBQ2xCLFlBQVksQ0FBSSxnQkFBa0MsRUFBQyxZQUE0QjtRQUNsRixNQUFNLFlBQVksR0FBRyxnQkFBZ0IsQ0FBQyxlQUFlLENBQUksWUFBWSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ2pGLElBQUcsWUFBWSxDQUFDLElBQUksRUFBQztZQUNoQixZQUFZLENBQUMsUUFBZ0IsQ0FBQyxJQUFJLEdBQUcsWUFBWSxDQUFDLElBQUksQ0FBQztTQUMzRDtRQUNELE9BQU8sWUFBWSxDQUFDO0lBQ3hCLENBQUM7OEdBUFEsZ0JBQWdCO2tIQUFoQixnQkFBZ0IsY0FGYixNQUFNOzsyRkFFVCxnQkFBZ0I7a0JBSDVCLFVBQVU7bUJBQUM7b0JBQ1IsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50UmVmLCBJbmplY3RhYmxlLCBWaWV3Q29udGFpbmVyUmVmIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgQ29tcG9uZW50TW9kZWwgfSBmcm9tIFwiLi4vbW9kZWxzL2NvbXBvbmVudC5tb2RlbFwiO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbiAgfSlcclxuZXhwb3J0IGNsYXNzIENvbXBvbmVudFNlcnZpY2V7XHJcbiAgICBwdWJsaWMgZ2V0Q29tcG9uZW50PFQ+KHZpZXdDb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWYsZHluYW1pY01vZGVsOiBDb21wb25lbnRNb2RlbCk6IENvbXBvbmVudFJlZjxUPiB7XHJcbiAgICAgICAgY29uc3QgY29tcG9uZW50UmVmID0gdmlld0NvbnRhaW5lclJlZi5jcmVhdGVDb21wb25lbnQ8VD4oZHluYW1pY01vZGVsLmNvbXBvbmVudCk7XHJcbiAgICAgICAgaWYoZHluYW1pY01vZGVsLnByb3Ape1xyXG4gICAgICAgICAgICAoY29tcG9uZW50UmVmLmluc3RhbmNlIGFzIGFueSkucHJvcCA9IGR5bmFtaWNNb2RlbC5wcm9wO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gY29tcG9uZW50UmVmO1xyXG4gICAgfVxyXG59XHJcblxyXG4iXX0=
@@ -1,5 +1,7 @@
1
1
  import { ComponentModel } from "../models/component.model";
2
2
  import { IsoMatCurrency, IsoMatDate, IsoMatDateTime, IsoMatInput, IsoMatSelect, IsoMatTextarea } from "../../components";
3
+ import { Injectable } from "@angular/core";
4
+ import * as i0 from "@angular/core";
3
5
  export class ControlService {
4
6
  getComponentByType(controlModel, formControl) {
5
7
  if (!controlModel.dataType) {
@@ -31,5 +33,13 @@ export class ControlService {
31
33
  return new ComponentModel(IsoMatInput, { "control": controlModel, "formControl": formControl });
32
34
  }
33
35
  }
36
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: ControlService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
37
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: ControlService, providedIn: 'root' }); }
34
38
  }
35
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJvbC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWlzby1mb3JtL3NyYy9saWIvc2hhcmVkL3NlcnZpY2VzL2NvbnRyb2wuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFFM0QsT0FBTyxFQUFFLGNBQWMsRUFBRSxVQUFVLEVBQUUsY0FBYyxFQUFFLFdBQVcsRUFBRSxZQUFZLEVBQUUsY0FBYyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFekgsTUFBTSxPQUFPLGNBQWM7SUFFaEIsa0JBQWtCLENBQUMsWUFBMkIsRUFBRSxXQUF3QjtRQUMzRSxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRTtZQUN4QixPQUFPLENBQUMsR0FBRyxDQUFDLHVCQUF1QixFQUFFLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUN4RCxNQUFNLGtDQUFrQyxDQUFDO1NBQzVDO1FBQ0QsUUFBUSxZQUFZLENBQUMsUUFBUSxDQUFDLGlCQUFpQixFQUFFLEVBQUU7WUFDL0MsS0FBSyxRQUFRLENBQUM7WUFDZCxLQUFLLFNBQVM7Z0JBQ1YsSUFBRyxZQUFZLENBQUMsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUM1RDtvQkFDSSxPQUFPLElBQUksY0FBYyxDQUFDLGNBQWMsRUFBRSxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsYUFBYSxFQUFFLFdBQVcsRUFBRSxDQUFDLENBQUM7aUJBQ3RHO2dCQUNELElBQUksWUFBWSxDQUFDLE1BQU0sRUFBRSxNQUFNLEdBQUcsQ0FBQyxFQUFFO29CQUNqQyxPQUFPLElBQUksY0FBYyxDQUFDLFlBQVksRUFBRSxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsYUFBYSxFQUFFLFdBQVcsRUFBRSxDQUFDLENBQUM7aUJBQ3BHO2dCQUNELElBQUksWUFBWSxDQUFDLFNBQVMsSUFBSSxRQUFRLENBQUMsWUFBWSxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsR0FBRyxFQUFFLEVBQUU7b0JBQ3JFLE9BQU8sSUFBSSxjQUFjLENBQUMsY0FBYyxFQUFFLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxhQUFhLEVBQUUsV0FBVyxFQUFFLENBQUMsQ0FBQztpQkFDdEc7Z0JBQ0QsT0FBTyxJQUFJLGNBQWMsQ0FBQyxXQUFXLEVBQUUsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLGFBQWEsRUFBRSxXQUFXLEVBQUUsQ0FBQyxDQUFDO1lBQ3BHLEtBQUssTUFBTTtnQkFDUCxPQUFPLElBQUksY0FBYyxDQUFDLFVBQVUsRUFBRSxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsYUFBYSxFQUFFLFdBQVcsRUFBRSxDQUFDLENBQUM7WUFDbkcsS0FBSyxVQUFVO2dCQUNYLE9BQU8sSUFBSSxjQUFjLENBQUMsY0FBYyxFQUFFLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxhQUFhLEVBQUUsV0FBVyxFQUFFLENBQUMsQ0FBQztZQUN2RyxLQUFLLFNBQVM7Z0JBQ1YsT0FBTyxJQUFJLGNBQWMsQ0FBQyxVQUFVLEVBQUUsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLGFBQWEsRUFBRSxXQUFXLEVBQUUsQ0FBQyxDQUFDO1lBQ25HLEtBQUssS0FBSztnQkFDTixPQUFPLElBQUksY0FBYyxDQUFDLGNBQWMsRUFBRSxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsYUFBYSxFQUFFLFdBQVcsRUFBRSxDQUFDLENBQUM7WUFDdkc7Z0JBQ0ksT0FBTyxJQUFJLGNBQWMsQ0FBQyxXQUFXLEVBQUUsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLGFBQWEsRUFBRSxXQUFXLEVBQUUsQ0FBQyxDQUFDO1NBQ3ZHO0lBQ0wsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRm9ybUNvbnRyb2wgfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcclxuaW1wb3J0IHsgQ29tcG9uZW50TW9kZWwgfSBmcm9tIFwiLi4vbW9kZWxzL2NvbXBvbmVudC5tb2RlbFwiO1xyXG5pbXBvcnQgeyBTY2hlbWFFbGVtZW50IH0gZnJvbSBcIi4uLy4uL01vZGVscy9TY2hlbWFcIjtcclxuaW1wb3J0IHsgSXNvTWF0Q3VycmVuY3ksIElzb01hdERhdGUsIElzb01hdERhdGVUaW1lLCBJc29NYXRJbnB1dCwgSXNvTWF0U2VsZWN0LCBJc29NYXRUZXh0YXJlYSB9IGZyb20gXCIuLi8uLi9jb21wb25lbnRzXCI7XHJcblxyXG5leHBvcnQgY2xhc3MgQ29udHJvbFNlcnZpY2Uge1xyXG5cclxuICAgIHB1YmxpYyBnZXRDb21wb25lbnRCeVR5cGUoY29udHJvbE1vZGVsOiBTY2hlbWFFbGVtZW50LCBmb3JtQ29udHJvbDogRm9ybUNvbnRyb2wpOiBDb21wb25lbnRNb2RlbCB7XHJcbiAgICAgICAgaWYgKCFjb250cm9sTW9kZWwuZGF0YVR5cGUpIHtcclxuICAgICAgICAgICAgY29uc29sZS5sb2coXCJjb250cm9sTW9kZWwgbmFtZSB7MH1cIiwgY29udHJvbE1vZGVsLm5hbWUpO1xyXG4gICAgICAgICAgICB0aHJvdyBgQXJndW1lbnQgbnVsbCBleGNlcHRpb24gZGF0YVR5cGVgO1xyXG4gICAgICAgIH1cclxuICAgICAgICBzd2l0Y2ggKGNvbnRyb2xNb2RlbC5kYXRhVHlwZS50b0xvY2FsZUxvd2VyQ2FzZSgpKSB7XHJcbiAgICAgICAgICAgIGNhc2UgXCJzdHJpbmdcIjpcclxuICAgICAgICAgICAgY2FzZSBcImRlY2ltYWxcIjpcclxuICAgICAgICAgICAgICAgIGlmKGNvbnRyb2xNb2RlbC5uYW1lLnRvTG9jYWxlTG93ZXJDYXNlKCkuaW5kZXhPZignY2N5JykgPiAtMSlcclxuICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gbmV3IENvbXBvbmVudE1vZGVsKElzb01hdEN1cnJlbmN5LCB7IFwiY29udHJvbFwiOiBjb250cm9sTW9kZWwsIFwiZm9ybUNvbnRyb2xcIjogZm9ybUNvbnRyb2wgfSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBpZiAoY29udHJvbE1vZGVsLnZhbHVlcz8ubGVuZ3RoID4gMCkge1xyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBuZXcgQ29tcG9uZW50TW9kZWwoSXNvTWF0U2VsZWN0LCB7IFwiY29udHJvbFwiOiBjb250cm9sTW9kZWwsIFwiZm9ybUNvbnRyb2xcIjogZm9ybUNvbnRyb2wgfSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBpZiAoY29udHJvbE1vZGVsLm1heExlbmd0aCAmJiBwYXJzZUludChjb250cm9sTW9kZWwubWF4TGVuZ3RoLCAxMCkgPiA1MCkge1xyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBuZXcgQ29tcG9uZW50TW9kZWwoSXNvTWF0VGV4dGFyZWEsIHsgXCJjb250cm9sXCI6IGNvbnRyb2xNb2RlbCwgXCJmb3JtQ29udHJvbFwiOiBmb3JtQ29udHJvbCB9KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIHJldHVybiBuZXcgQ29tcG9uZW50TW9kZWwoSXNvTWF0SW5wdXQsIHsgXCJjb250cm9sXCI6IGNvbnRyb2xNb2RlbCwgXCJmb3JtQ29udHJvbFwiOiBmb3JtQ29udHJvbCB9KTtcclxuICAgICAgICAgICAgY2FzZSBcImRhdGVcIjpcclxuICAgICAgICAgICAgICAgIHJldHVybiBuZXcgQ29tcG9uZW50TW9kZWwoSXNvTWF0RGF0ZSwgeyBcImNvbnRyb2xcIjogY29udHJvbE1vZGVsLCBcImZvcm1Db250cm9sXCI6IGZvcm1Db250cm9sIH0pO1xyXG4gICAgICAgICAgICBjYXNlIFwiZGF0ZXRpbWVcIjpcclxuICAgICAgICAgICAgICAgIHJldHVybiBuZXcgQ29tcG9uZW50TW9kZWwoSXNvTWF0RGF0ZVRpbWUsIHsgXCJjb250cm9sXCI6IGNvbnRyb2xNb2RlbCwgXCJmb3JtQ29udHJvbFwiOiBmb3JtQ29udHJvbCB9KTtcclxuICAgICAgICAgICAgY2FzZSBcImJvb2xlYW5cIjpcclxuICAgICAgICAgICAgICAgIHJldHVybiBuZXcgQ29tcG9uZW50TW9kZWwoSXNvTWF0RGF0ZSwgeyBcImNvbnRyb2xcIjogY29udHJvbE1vZGVsLCBcImZvcm1Db250cm9sXCI6IGZvcm1Db250cm9sIH0pO1xyXG4gICAgICAgICAgICBjYXNlIFwiYW55XCI6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gbmV3IENvbXBvbmVudE1vZGVsKElzb01hdFRleHRhcmVhLCB7IFwiY29udHJvbFwiOiBjb250cm9sTW9kZWwsIFwiZm9ybUNvbnRyb2xcIjogZm9ybUNvbnRyb2wgfSk7XHJcbiAgICAgICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gbmV3IENvbXBvbmVudE1vZGVsKElzb01hdElucHV0LCB7IFwiY29udHJvbFwiOiBjb250cm9sTW9kZWwsIFwiZm9ybUNvbnRyb2xcIjogZm9ybUNvbnRyb2wgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59Il19
39
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: ControlService, decorators: [{
40
+ type: Injectable,
41
+ args: [{
42
+ providedIn: 'root'
43
+ }]
44
+ }] });
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJvbC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWlzby1mb3JtL3NyYy9saWIvc2hhcmVkL3NlcnZpY2VzL2NvbnRyb2wuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFFM0QsT0FBTyxFQUFFLGNBQWMsRUFBRSxVQUFVLEVBQUUsY0FBYyxFQUFFLFdBQVcsRUFBRSxZQUFZLEVBQUUsY0FBYyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDekgsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFLM0MsTUFBTSxPQUFPLGNBQWM7SUFFaEIsa0JBQWtCLENBQUMsWUFBMkIsRUFBRSxXQUF3QjtRQUMzRSxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRTtZQUN4QixPQUFPLENBQUMsR0FBRyxDQUFDLHVCQUF1QixFQUFFLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUN4RCxNQUFNLGtDQUFrQyxDQUFDO1NBQzVDO1FBQ0QsUUFBUSxZQUFZLENBQUMsUUFBUSxDQUFDLGlCQUFpQixFQUFFLEVBQUU7WUFDL0MsS0FBSyxRQUFRLENBQUM7WUFDZCxLQUFLLFNBQVM7Z0JBQ1YsSUFBRyxZQUFZLENBQUMsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUM1RDtvQkFDSSxPQUFPLElBQUksY0FBYyxDQUFDLGNBQWMsRUFBRSxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsYUFBYSxFQUFFLFdBQVcsRUFBRSxDQUFDLENBQUM7aUJBQ3RHO2dCQUNELElBQUksWUFBWSxDQUFDLE1BQU0sRUFBRSxNQUFNLEdBQUcsQ0FBQyxFQUFFO29CQUNqQyxPQUFPLElBQUksY0FBYyxDQUFDLFlBQVksRUFBRSxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsYUFBYSxFQUFFLFdBQVcsRUFBRSxDQUFDLENBQUM7aUJBQ3BHO2dCQUNELElBQUksWUFBWSxDQUFDLFNBQVMsSUFBSSxRQUFRLENBQUMsWUFBWSxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsR0FBRyxFQUFFLEVBQUU7b0JBQ3JFLE9BQU8sSUFBSSxjQUFjLENBQUMsY0FBYyxFQUFFLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxhQUFhLEVBQUUsV0FBVyxFQUFFLENBQUMsQ0FBQztpQkFDdEc7Z0JBQ0QsT0FBTyxJQUFJLGNBQWMsQ0FBQyxXQUFXLEVBQUUsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLGFBQWEsRUFBRSxXQUFXLEVBQUUsQ0FBQyxDQUFDO1lBQ3BHLEtBQUssTUFBTTtnQkFDUCxPQUFPLElBQUksY0FBYyxDQUFDLFVBQVUsRUFBRSxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsYUFBYSxFQUFFLFdBQVcsRUFBRSxDQUFDLENBQUM7WUFDbkcsS0FBSyxVQUFVO2dCQUNYLE9BQU8sSUFBSSxjQUFjLENBQUMsY0FBYyxFQUFFLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxhQUFhLEVBQUUsV0FBVyxFQUFFLENBQUMsQ0FBQztZQUN2RyxLQUFLLFNBQVM7Z0JBQ1YsT0FBTyxJQUFJLGNBQWMsQ0FBQyxVQUFVLEVBQUUsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLGFBQWEsRUFBRSxXQUFXLEVBQUUsQ0FBQyxDQUFDO1lBQ25HLEtBQUssS0FBSztnQkFDTixPQUFPLElBQUksY0FBYyxDQUFDLGNBQWMsRUFBRSxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsYUFBYSxFQUFFLFdBQVcsRUFBRSxDQUFDLENBQUM7WUFDdkc7Z0JBQ0ksT0FBTyxJQUFJLGNBQWMsQ0FBQyxXQUFXLEVBQUUsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLGFBQWEsRUFBRSxXQUFXLEVBQUUsQ0FBQyxDQUFDO1NBQ3ZHO0lBQ0wsQ0FBQzs4R0FoQ1EsY0FBYztrSEFBZCxjQUFjLGNBRlgsTUFBTTs7MkZBRVQsY0FBYztrQkFIMUIsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGb3JtQ29udHJvbCB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xyXG5pbXBvcnQgeyBDb21wb25lbnRNb2RlbCB9IGZyb20gXCIuLi9tb2RlbHMvY29tcG9uZW50Lm1vZGVsXCI7XHJcbmltcG9ydCB7IFNjaGVtYUVsZW1lbnQgfSBmcm9tIFwiLi4vLi4vTW9kZWxzL1NjaGVtYVwiO1xyXG5pbXBvcnQgeyBJc29NYXRDdXJyZW5jeSwgSXNvTWF0RGF0ZSwgSXNvTWF0RGF0ZVRpbWUsIElzb01hdElucHV0LCBJc29NYXRTZWxlY3QsIElzb01hdFRleHRhcmVhIH0gZnJvbSBcIi4uLy4uL2NvbXBvbmVudHNcIjtcclxuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgICBwcm92aWRlZEluOiAncm9vdCdcclxuICB9KVxyXG5leHBvcnQgY2xhc3MgQ29udHJvbFNlcnZpY2Uge1xyXG5cclxuICAgIHB1YmxpYyBnZXRDb21wb25lbnRCeVR5cGUoY29udHJvbE1vZGVsOiBTY2hlbWFFbGVtZW50LCBmb3JtQ29udHJvbDogRm9ybUNvbnRyb2wpOiBDb21wb25lbnRNb2RlbCB7XHJcbiAgICAgICAgaWYgKCFjb250cm9sTW9kZWwuZGF0YVR5cGUpIHtcclxuICAgICAgICAgICAgY29uc29sZS5sb2coXCJjb250cm9sTW9kZWwgbmFtZSB7MH1cIiwgY29udHJvbE1vZGVsLm5hbWUpO1xyXG4gICAgICAgICAgICB0aHJvdyBgQXJndW1lbnQgbnVsbCBleGNlcHRpb24gZGF0YVR5cGVgO1xyXG4gICAgICAgIH1cclxuICAgICAgICBzd2l0Y2ggKGNvbnRyb2xNb2RlbC5kYXRhVHlwZS50b0xvY2FsZUxvd2VyQ2FzZSgpKSB7XHJcbiAgICAgICAgICAgIGNhc2UgXCJzdHJpbmdcIjpcclxuICAgICAgICAgICAgY2FzZSBcImRlY2ltYWxcIjpcclxuICAgICAgICAgICAgICAgIGlmKGNvbnRyb2xNb2RlbC5uYW1lLnRvTG9jYWxlTG93ZXJDYXNlKCkuaW5kZXhPZignY2N5JykgPiAtMSlcclxuICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gbmV3IENvbXBvbmVudE1vZGVsKElzb01hdEN1cnJlbmN5LCB7IFwiY29udHJvbFwiOiBjb250cm9sTW9kZWwsIFwiZm9ybUNvbnRyb2xcIjogZm9ybUNvbnRyb2wgfSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBpZiAoY29udHJvbE1vZGVsLnZhbHVlcz8ubGVuZ3RoID4gMCkge1xyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBuZXcgQ29tcG9uZW50TW9kZWwoSXNvTWF0U2VsZWN0LCB7IFwiY29udHJvbFwiOiBjb250cm9sTW9kZWwsIFwiZm9ybUNvbnRyb2xcIjogZm9ybUNvbnRyb2wgfSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBpZiAoY29udHJvbE1vZGVsLm1heExlbmd0aCAmJiBwYXJzZUludChjb250cm9sTW9kZWwubWF4TGVuZ3RoLCAxMCkgPiA1MCkge1xyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBuZXcgQ29tcG9uZW50TW9kZWwoSXNvTWF0VGV4dGFyZWEsIHsgXCJjb250cm9sXCI6IGNvbnRyb2xNb2RlbCwgXCJmb3JtQ29udHJvbFwiOiBmb3JtQ29udHJvbCB9KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIHJldHVybiBuZXcgQ29tcG9uZW50TW9kZWwoSXNvTWF0SW5wdXQsIHsgXCJjb250cm9sXCI6IGNvbnRyb2xNb2RlbCwgXCJmb3JtQ29udHJvbFwiOiBmb3JtQ29udHJvbCB9KTtcclxuICAgICAgICAgICAgY2FzZSBcImRhdGVcIjpcclxuICAgICAgICAgICAgICAgIHJldHVybiBuZXcgQ29tcG9uZW50TW9kZWwoSXNvTWF0RGF0ZSwgeyBcImNvbnRyb2xcIjogY29udHJvbE1vZGVsLCBcImZvcm1Db250cm9sXCI6IGZvcm1Db250cm9sIH0pO1xyXG4gICAgICAgICAgICBjYXNlIFwiZGF0ZXRpbWVcIjpcclxuICAgICAgICAgICAgICAgIHJldHVybiBuZXcgQ29tcG9uZW50TW9kZWwoSXNvTWF0RGF0ZVRpbWUsIHsgXCJjb250cm9sXCI6IGNvbnRyb2xNb2RlbCwgXCJmb3JtQ29udHJvbFwiOiBmb3JtQ29udHJvbCB9KTtcclxuICAgICAgICAgICAgY2FzZSBcImJvb2xlYW5cIjpcclxuICAgICAgICAgICAgICAgIHJldHVybiBuZXcgQ29tcG9uZW50TW9kZWwoSXNvTWF0RGF0ZSwgeyBcImNvbnRyb2xcIjogY29udHJvbE1vZGVsLCBcImZvcm1Db250cm9sXCI6IGZvcm1Db250cm9sIH0pO1xyXG4gICAgICAgICAgICBjYXNlIFwiYW55XCI6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gbmV3IENvbXBvbmVudE1vZGVsKElzb01hdFRleHRhcmVhLCB7IFwiY29udHJvbFwiOiBjb250cm9sTW9kZWwsIFwiZm9ybUNvbnRyb2xcIjogZm9ybUNvbnRyb2wgfSk7XHJcbiAgICAgICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gbmV3IENvbXBvbmVudE1vZGVsKElzb01hdElucHV0LCB7IFwiY29udHJvbFwiOiBjb250cm9sTW9kZWwsIFwiZm9ybUNvbnRyb2xcIjogZm9ybUNvbnRyb2wgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59Il19
@@ -0,0 +1,34 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { NativeDateAdapter } from '@angular/material/core';
3
+ import * as i0 from "@angular/core";
4
+ export class CustomDateAdapter extends NativeDateAdapter {
5
+ format(date, displayFormat) {
6
+ const day = this._to2digit(date.getDate());
7
+ const month = this._to2digit(date.getMonth() + 1); // Months are zero-based
8
+ const year = date.getFullYear();
9
+ return `${year}-${month}-${day}`;
10
+ }
11
+ _to2digit(n) {
12
+ return ('00' + n).slice(-2);
13
+ }
14
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: CustomDateAdapter, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
15
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: CustomDateAdapter, providedIn: 'root' }); }
16
+ }
17
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.2", ngImport: i0, type: CustomDateAdapter, decorators: [{
18
+ type: Injectable,
19
+ args: [{
20
+ providedIn: 'root'
21
+ }]
22
+ }] });
23
+ export const CUSTOM_DATE_FORMATS = {
24
+ parse: {
25
+ dateInput: 'YYYY-MM-DD',
26
+ },
27
+ display: {
28
+ dateInput: 'YYYY-MM-DD',
29
+ monthYearLabel: 'MMM YYYY',
30
+ dateA11yLabel: 'LL',
31
+ monthYearA11yLabel: 'MMMM YYYY',
32
+ },
33
+ };
34
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tLWRhdGUtYWRhcHRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1pc28tZm9ybS9zcmMvbGliL3NoYXJlZC9zZXJ2aWNlcy9jdXN0b20tZGF0ZS1hZGFwdGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGlCQUFpQixFQUFrQixNQUFNLHdCQUF3QixDQUFDOztBQUszRSxNQUFNLE9BQU8saUJBQWtCLFNBQVEsaUJBQWlCO0lBQ3RDLE1BQU0sQ0FBQyxJQUFVLEVBQUUsYUFBcUI7UUFDdEQsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztRQUMzQyxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLHdCQUF3QjtRQUMzRSxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDaEMsT0FBTyxHQUFHLElBQUksSUFBSSxLQUFLLElBQUksR0FBRyxFQUFFLENBQUM7SUFDbkMsQ0FBQztJQUVPLFNBQVMsQ0FBQyxDQUFTO1FBQ3pCLE9BQU8sQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDOUIsQ0FBQzs4R0FWVSxpQkFBaUI7a0hBQWpCLGlCQUFpQixjQUZkLE1BQU07OzJGQUVULGlCQUFpQjtrQkFIN0IsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDbkI7O0FBY0gsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQW1CO0lBQ2pELEtBQUssRUFBRTtRQUNMLFNBQVMsRUFBRSxZQUFZO0tBQ3hCO0lBQ0QsT0FBTyxFQUFFO1FBQ1AsU0FBUyxFQUFFLFlBQVk7UUFDdkIsY0FBYyxFQUFFLFVBQVU7UUFDMUIsYUFBYSxFQUFFLElBQUk7UUFDbkIsa0JBQWtCLEVBQUUsV0FBVztLQUNoQztDQUNGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE5hdGl2ZURhdGVBZGFwdGVyLCBNYXREYXRlRm9ybWF0cyB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NvcmUnO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbiAgfSlcclxuZXhwb3J0IGNsYXNzIEN1c3RvbURhdGVBZGFwdGVyIGV4dGVuZHMgTmF0aXZlRGF0ZUFkYXB0ZXIge1xyXG4gIHB1YmxpYyBvdmVycmlkZSBmb3JtYXQoZGF0ZTogRGF0ZSwgZGlzcGxheUZvcm1hdDogT2JqZWN0KTogc3RyaW5nIHtcclxuICAgIGNvbnN0IGRheSA9IHRoaXMuX3RvMmRpZ2l0KGRhdGUuZ2V0RGF0ZSgpKTtcclxuICAgIGNvbnN0IG1vbnRoID0gdGhpcy5fdG8yZGlnaXQoZGF0ZS5nZXRNb250aCgpICsgMSk7IC8vIE1vbnRocyBhcmUgemVyby1iYXNlZFxyXG4gICAgY29uc3QgeWVhciA9IGRhdGUuZ2V0RnVsbFllYXIoKTtcclxuICAgIHJldHVybiBgJHt5ZWFyfS0ke21vbnRofS0ke2RheX1gO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfdG8yZGlnaXQobjogbnVtYmVyKSB7XHJcbiAgICByZXR1cm4gKCcwMCcgKyBuKS5zbGljZSgtMik7XHJcbiAgfVxyXG59XHJcblxyXG5leHBvcnQgY29uc3QgQ1VTVE9NX0RBVEVfRk9STUFUUzogTWF0RGF0ZUZvcm1hdHMgPSB7XHJcbiAgcGFyc2U6IHtcclxuICAgIGRhdGVJbnB1dDogJ1lZWVktTU0tREQnLFxyXG4gIH0sXHJcbiAgZGlzcGxheToge1xyXG4gICAgZGF0ZUlucHV0OiAnWVlZWS1NTS1ERCcsXHJcbiAgICBtb250aFllYXJMYWJlbDogJ01NTSBZWVlZJyxcclxuICAgIGRhdGVBMTF5TGFiZWw6ICdMTCcsXHJcbiAgICBtb250aFllYXJBMTF5TGFiZWw6ICdNTU1NIFlZWVknLFxyXG4gIH0sXHJcbn07XHJcbiJdfQ==
@@ -6,4 +6,4 @@ export * from './lib/ngx-iso-form.component';
6
6
  export * from './lib/shared/services';
7
7
  export * from './lib/Models/Control';
8
8
  export * from './lib/Models/IsoForm';
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL25neC1pc28tZm9ybS9zcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYyw4QkFBOEIsQ0FBQztBQUM3QyxjQUFjLHVCQUF1QixDQUFDO0FBR3RDLGNBQWMsc0JBQXNCLENBQUE7QUFDcEMsY0FBYyxzQkFBc0IsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2Ygbmd4LWlzby1mb3JtXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9saWIvbmd4LWlzby1mb3JtLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9uZ3gtaXNvLWZvcm0uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NoYXJlZC9zZXJ2aWNlcyc7XG5cbmV4cG9ydCB7IFNjaGVtYUVsZW1lbnQgfSBmcm9tICcuL2xpYi9Nb2RlbHMvU2NoZW1hJ1xuZXhwb3J0ICogZnJvbSAnLi9saWIvTW9kZWxzL0NvbnRyb2wnXG5leHBvcnQgKiBmcm9tICcuL2xpYi9Nb2RlbHMvSXNvRm9ybSciXX0=
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL25neC1pc28tZm9ybS9zcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYyw4QkFBOEIsQ0FBQztBQUM3QyxjQUFjLHVCQUF1QixDQUFDO0FBR3RDLGNBQWMsc0JBQXNCLENBQUE7QUFDcEMsY0FBYyxzQkFBc0IsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBuZ3gtaXNvLWZvcm1cclxuICovXHJcblxyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9uZ3gtaXNvLWZvcm0ubW9kdWxlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbmd4LWlzby1mb3JtLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NoYXJlZC9zZXJ2aWNlcyc7XHJcblxyXG5leHBvcnQgeyBTY2hlbWFFbGVtZW50IH0gZnJvbSAnLi9saWIvTW9kZWxzL1NjaGVtYSdcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvTW9kZWxzL0NvbnRyb2wnXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL01vZGVscy9Jc29Gb3JtJyJdfQ==