@3kles/kles-material-dynamicforms 14.9.4 → 14.9.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2020/lib/controls/array.control.mjs +23 -3
- package/esm2020/lib/controls/group.control.mjs +13 -2
- package/fesm2015/3kles-kles-material-dynamicforms.mjs +33 -3
- package/fesm2015/3kles-kles-material-dynamicforms.mjs.map +1 -1
- package/fesm2020/3kles-kles-material-dynamicforms.mjs +30 -3
- package/fesm2020/3kles-kles-material-dynamicforms.mjs.map +1 -1
- package/package.json +1 -1
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { FormArray, FormControl, FormGroup } from "@angular/forms";
|
|
2
2
|
import { KlesFormControl } from "./default.control";
|
|
3
3
|
import { v4 as uuidv4 } from 'uuid';
|
|
4
|
+
import { componentMapper } from "../decorators/component.decorator";
|
|
5
|
+
import { klesFieldControlFactory } from "../factories/field.factory";
|
|
4
6
|
export class KlesFormArray extends KlesFormControl {
|
|
5
7
|
create() {
|
|
6
8
|
const array = new FormArray([], {
|
|
@@ -15,7 +17,16 @@ export class KlesFormArray extends KlesFormControl {
|
|
|
15
17
|
group.addControl('_id', new FormControl(uuidv4()));
|
|
16
18
|
this.field.collections.forEach(subfield => {
|
|
17
19
|
const data = val[subfield.name] || null;
|
|
18
|
-
const control = new KlesFormControl({ ...subfield, ...(data && { value: data }) }).create();
|
|
20
|
+
// const control = new KlesFormControl({ ...subfield, ...(data && { value: data }) }).create();
|
|
21
|
+
let control;
|
|
22
|
+
if (subfield.type) {
|
|
23
|
+
control = componentMapper.find(c => c.type === subfield.type)?.factory({ ...subfield, ...(data && { value: data }) })
|
|
24
|
+
|| klesFieldControlFactory({ ...subfield, ...(data && { value: data }) });
|
|
25
|
+
}
|
|
26
|
+
else {
|
|
27
|
+
control = componentMapper.find(c => c.component === subfield.component)?.factory({ ...subfield, ...(data && { value: data }) })
|
|
28
|
+
|| klesFieldControlFactory({ ...subfield, ...(data && { value: data }) });
|
|
29
|
+
}
|
|
19
30
|
group.addControl(subfield.name, control);
|
|
20
31
|
});
|
|
21
32
|
array.push(group);
|
|
@@ -25,7 +36,16 @@ export class KlesFormArray extends KlesFormControl {
|
|
|
25
36
|
else {
|
|
26
37
|
const group = new FormGroup({});
|
|
27
38
|
this.field.collections.forEach(subfield => {
|
|
28
|
-
const control = new KlesFormControl({ ...subfield }).create();
|
|
39
|
+
// const control = new KlesFormControl({ ...subfield }).create();
|
|
40
|
+
let control;
|
|
41
|
+
if (subfield.type) {
|
|
42
|
+
control = componentMapper.find(c => c.type === subfield.type)?.factory({ ...subfield })
|
|
43
|
+
|| klesFieldControlFactory({ ...subfield });
|
|
44
|
+
}
|
|
45
|
+
else {
|
|
46
|
+
control = componentMapper.find(c => c.component === subfield.component)?.factory({ ...subfield })
|
|
47
|
+
|| klesFieldControlFactory({ ...subfield });
|
|
48
|
+
}
|
|
29
49
|
group.addControl(subfield.name, control);
|
|
30
50
|
});
|
|
31
51
|
array.push(group);
|
|
@@ -36,4 +56,4 @@ export class KlesFormArray extends KlesFormControl {
|
|
|
36
56
|
return array;
|
|
37
57
|
}
|
|
38
58
|
}
|
|
39
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
59
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJyYXkuY29udHJvbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tsZXMtbWF0ZXJpYWwtZHluYW1pY2Zvcm1zL3NyYy9saWIvY29udHJvbHMvYXJyYXkuY29udHJvbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQW1CLFNBQVMsRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDcEYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxFQUFFLElBQUksTUFBTSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUNwRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUVyRSxNQUFNLE9BQU8sYUFBYyxTQUFRLGVBQWU7SUFFdkMsTUFBTTtRQUNULE1BQU0sS0FBSyxHQUFHLElBQUksU0FBUyxDQUFDLEVBQUUsRUFBRTtZQUM1QixVQUFVLEVBQUUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsSUFBSSxFQUFFLENBQUM7WUFDOUQsZUFBZSxFQUFFLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLGdCQUFnQixJQUFJLEVBQUUsQ0FBQztZQUM3RSxRQUFRLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLElBQUksUUFBUTtTQUM1QyxDQUFDLENBQUM7UUFFSCxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUNyRCxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEtB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Q0FBQyxDQUFDO1lBQzdDLENBQUMsQ0FBQyxDQUFDO1lBQ0gsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUNyQjtRQUdELElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUU7WUFDckIsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1NBQ25CO1FBR0QsT0FBTyxLQUFLLENBQUM7SUFDakIsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBGb3JtQXJyYXksIEZvcm1Db250cm9sLCBGb3JtR3JvdXAgfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcbmltcG9ydCB7IEtsZXNGb3JtQ29udHJvbCB9IGZyb20gXCIuL2RlZmF1bHQuY29udHJvbFwiO1xuaW1wb3J0IHsgdjQgYXMgdXVpZHY0IH0gZnJvbSAndXVpZCc7XG5pbXBvcnQgeyBjb21wb25lbnRNYXBwZXIgfSBmcm9tIFwiLi4vZGVjb3JhdG9ycy9jb21wb25lbnQuZGVjb3JhdG9yXCI7XG5pbXBvcnQgeyBrbGVzRmllbGRDb250cm9sRmFjdG9yeSB9IGZyb20gXCIuLi9mYWN0b3JpZXMvZmllbGQuZmFjdG9yeVwiO1xuXG5leHBvcnQgY2xhc3MgS2xlc0Zvcm1BcnJheSBleHRlbmRzIEtsZXNGb3JtQ29udHJvbCB7XG5cbiAgICBwdWJsaWMgY3JlYXRlKCk6IEFic3RyYWN0Q29udHJvbDxhbnksIGFueT4ge1xuICAgICAgICBjb25zdCBhcnJheSA9IG5ldyBGb3JtQXJyYXkoW10sIHtcbiAgICAgICAgICAgIHZhbGlkYXRvcnM6IHRoaXMuYmluZFZhbGlkYXRpb25zKHRoaXMuZmllbGQudmFsaWRhdGlvbnMgfHwgW10pLFxuICAgICAgICAgICAgYXN5bmNWYWxpZGF0b3JzOiB0aGlzLmJpbmRBc3luY1ZhbGlkYXRpb25zKHRoaXMuZmllbGQuYXN5bmNWYWxpZGF0aW9ucyB8fCBbXSksXG4gICAgICAgICAgICB1cGRhdGVPbjogdGhpcy5maWVsZC51cGRhdGVPbiB8fCAnY2hhbmdlJ1xuICAgICAgICB9KTtcblxuICAgICAgICBpZiAodGhpcy5maWVsZC52YWx1ZSAmJiBBcnJheS5pc0FycmF5KHRoaXMuZmllbGQudmFsdWUpKSB7XG4gICAgICAgICAgICBpZiAodGhpcy5maWVsZC5jb2xsZWN0aW9ucyAmJiBBcnJheS5pc0FycmF5KHRoaXMuZmllbGQuY29sbGVjdGlvbnMpKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5maWVsZC52YWx1ZS5mb3JFYWNoKHZhbCA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGdyb3VwID0gbmV3IEZvcm1Hcm91cCh7fSk7XG4gICAgICAgICAgICAgICAgICAgIGdyb3VwLmFkZENvbnRyb2woJ19pZCcsIG5ldyBGb3JtQ29udHJvbCh1dWlkdjQoKSkpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmZpZWxkLmNvbGxlY3Rpb25zLmZvckVhY2goc3ViZmllbGQgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgZGF0YSA9IHZhbFtzdWJmaWVsZC5uYW1lXSB8fCBudWxsO1xuICAgICAgICAgICAgICAgICAgICAgICAgLy8gY29uc3QgY29udHJvbCA9IG5ldyBLbGVzRm9ybUNvbnRyb2woeyAuLi5zdWJmaWVsZCwgLi4uKGRhdGEgJiYgeyB2YWx1ZTogZGF0YSB9KSB9KS5jcmVhdGUoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxldCBjb250cm9sO1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHN1YmZpZWxkLnR5cGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250cm9sID0gY29tcG9uZW50TWFwcGVyLmZpbmQoYyA9PiBjLnR5cGUgPT09IHN1YmZpZWxkLnR5cGUpPy5mYWN0b3J5KHsgLi4uc3ViZmllbGQsIC4uLihkYXRhICYmIHsgdmFsdWU6IGRhdGEgfSkgfSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfHwga2xlc0ZpZWxkQ29udHJvbEZhY3RvcnkoeyAuLi5zdWJmaWVsZCwgLi4uKGRhdGEgJiYgeyB2YWx1ZTogZGF0YSB9KSB9KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udHJvbCA9IGNvbXBvbmVudE1hcHBlci5maW5kKGMgPT4gYy5jb21wb25lbnQgPT09IHN1YmZpZWxkLmNvbXBvbmVudCk/LmZhY3RvcnkoeyAuLi5zdWJmaWVsZCwgLi4uKGRhdGEgJiYgeyB2YWx1ZTogZGF0YSB9KSB9KVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8fCBrbGVzRmllbGRDb250cm9sRmFjdG9yeSh7IC4uLnN1YmZpZWxkLCAuLi4oZGF0YSAmJiB7IHZhbHVlOiBkYXRhIH0pIH0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgZ3JvdXAuYWRkQ29udHJvbChzdWJmaWVsZC5uYW1lLCBjb250cm9sKTtcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgIGFycmF5LnB1c2goZ3JvdXApO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY29uc3QgZ3JvdXAgPSBuZXcgRm9ybUdyb3VwKHt9KTtcbiAgICAgICAgICAgIHRoaXMuZmllbGQuY29sbGVjdGlvbnMuZm9yRWFjaChzdWJmaWVsZCA9PiB7XG4gICAgICAgICAgICAgICAgLy8gY29uc3QgY29udHJvbCA9IG5ldyBLbGVzRm9ybUNvbnRyb2woeyAuLi5zdWJmaWVsZCB9KS5jcmVhdGUoKTtcbiAgICAgICAgICAgICAgICBsZXQgY29udHJvbDtcbiAgICAgICAgICAgICAgICBpZiAoc3ViZmllbGQudHlwZSkge1xuICAgICAgICAgICAgICAgICAgICBjb250cm9sID0gY29tcG9uZW50TWFwcGVyLmZpbmQoYyA9PiBjLnR5cGUgPT09IHN1YmZpZWxkLnR5cGUpPy5mYWN0b3J5KHsgLi4uc3ViZmllbGQgfSlcbiAgICAgICAgICAgICAgICAgICAgICAgIHx8IGtsZXNGaWVsZENvbnRyb2xGYWN0b3J5KHsgLi4uc3ViZmllbGQgfSk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgY29udHJvbCA9IGNvbXBvbmVudE1hcHBlci5maW5kKGMgPT4gYy5jb21wb25lbnQgPT09IHN1YmZpZWxkLmNvbXBvbmVudCk/LmZhY3RvcnkoeyAuLi5zdWJmaWVsZCB9KVxuICAgICAgICAgICAgICAgICAgICAgICAgfHwga2xlc0ZpZWxkQ29udHJvbEZhY3RvcnkoeyAuLi5zdWJmaWVsZCB9KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZ3JvdXAuYWRkQ29udHJvbChzdWJmaWVsZC5uYW1lLCBjb250cm9sKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgYXJyYXkucHVzaChncm91cCk7XG4gICAgICAgIH1cblxuXG4gICAgICAgIGlmICh0aGlzLmZpZWxkLmRpc2FibGVkKSB7XG4gICAgICAgICAgICBhcnJheS5kaXNhYmxlKCk7XG4gICAgICAgIH1cblxuXG4gICAgICAgIHJldHVybiBhcnJheTtcbiAgICB9XG59XG4iXX0=
|
|
@@ -1,18 +1,29 @@
|
|
|
1
1
|
import { UntypedFormGroup } from "@angular/forms";
|
|
2
2
|
import { KlesFormControl } from "./default.control";
|
|
3
|
+
import { componentMapper } from "../decorators/component.decorator";
|
|
4
|
+
import { klesFieldControlFactory } from "../factories/field.factory";
|
|
3
5
|
export class KlesFormGroup extends KlesFormControl {
|
|
4
6
|
create() {
|
|
5
7
|
const subGroup = new UntypedFormGroup({});
|
|
6
8
|
if (this.field.collections && Array.isArray(this.field.collections)) {
|
|
7
9
|
this.field.collections.forEach(subfield => {
|
|
8
|
-
|
|
10
|
+
let control;
|
|
11
|
+
if (subfield.type) {
|
|
12
|
+
control = componentMapper.find(c => c.type === subfield.type)?.factory({ ...subfield, value: subfield.value || this.field.value?.[subfield.name] })
|
|
13
|
+
|| klesFieldControlFactory({ ...subfield, value: subfield.value || this.field.value?.[subfield.name] });
|
|
14
|
+
}
|
|
15
|
+
else {
|
|
16
|
+
control = componentMapper.find(c => c.component === subfield.component)?.factory({ ...subfield, value: subfield.value || this.field.value?.[subfield.name] })
|
|
17
|
+
|| klesFieldControlFactory({ ...subfield, value: subfield.value || this.field.value?.[subfield.name] });
|
|
18
|
+
}
|
|
9
19
|
subGroup.addControl(subfield.name, control);
|
|
10
20
|
});
|
|
11
21
|
}
|
|
12
22
|
if (this.field.disabled) {
|
|
13
23
|
subGroup.disable();
|
|
14
24
|
}
|
|
25
|
+
console.log('subGroup', subGroup);
|
|
15
26
|
return subGroup;
|
|
16
27
|
}
|
|
17
28
|
}
|
|
18
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
29
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JvdXAuY29udHJvbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tsZXMtbWF0ZXJpYWwtZHluYW1pY2Zvcm1zL3NyYy9saWIvY29udHJvbHMvZ3JvdXAuY29udHJvbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQThCLGdCQUFnQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDOUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUNwRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUVyRSxNQUFNLE9BQU8sYUFBYyxTQUFRLGVBQWU7SUFFdkMsTUFBTTtRQUNULE1BQU0sUUFBUSxHQUFHLElBQUksZ0JBQWdCLENBQUMsRUFBRSxDQUFDLENBQUM7UUFFMUMsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLEVBQUU7WUFDakUsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxFQUFFO2dCQUN0QyxJQUFJLE9BQU8sQ0FBQztnQkFDWixJQUFJLFFBQVEsQ0FBQyxJQUFJLEVBQUU7b0JBQ2YsT0FBTyxHQUFHLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxPQUFPLENBQUMsRUFBRSxHQUFHLFFBQVEsRUFBRSxLQUFLLEVBQUUsUUFBUSxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDOzJCQUM1SSx1QkFBdUIsQ0FBQyxFQUFFLEdBQUcsUUFBUSxFQUFFLEtBQUssRUFBRSxRQUFRLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxFQUFFLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztpQkFDL0c7cUJBQU07b0JBQ0gsT0FBTyxHQUFHLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUyxLQUFLLFFBQVEsQ0FBQyxTQUFTLENBQUMsRUFBRSxPQUFPLENBQUMsRUFBRSxHQUFHLFFBQVEsRUFBRSxLQUFLLEVBQUUsUUFBUSxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDOzJCQUN0Six1QkFBdUIsQ0FBQyxFQUFFLEdBQUcsUUFBUSxFQUFFLEtBQUssRUFBRSxRQUFRLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxFQUFFLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztpQkFDL0c7Z0JBRUQsUUFBUSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1lBQ2hELENBQUMsQ0FBQyxDQUFDO1NBQ047UUFFRCxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFO1lBQ3JCLFFBQVEsQ0FBQyxPQUFPLEVBQUUsQ0FBQztTQUN0QjtRQUVELE9BQU8sQ0FBQyxHQUFHLENBQUMsVUFBVSxFQUFFLFFBQVEsQ0FBQyxDQUFBO1FBRWpDLE9BQU8sUUFBUSxDQUFDO0lBQ3BCLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgRm9ybUdyb3VwLCBVbnR5cGVkRm9ybUdyb3VwIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XG5pbXBvcnQgeyBLbGVzRm9ybUNvbnRyb2wgfSBmcm9tIFwiLi9kZWZhdWx0LmNvbnRyb2xcIjtcbmltcG9ydCB7IGNvbXBvbmVudE1hcHBlciB9IGZyb20gXCIuLi9kZWNvcmF0b3JzL2NvbXBvbmVudC5kZWNvcmF0b3JcIjtcbmltcG9ydCB7IGtsZXNGaWVsZENvbnRyb2xGYWN0b3J5IH0gZnJvbSBcIi4uL2ZhY3Rvcmllcy9maWVsZC5mYWN0b3J5XCI7XG5cbmV4cG9ydCBjbGFzcyBLbGVzRm9ybUdyb3VwIGV4dGVuZHMgS2xlc0Zvcm1Db250cm9sIHtcblxuICAgIHB1YmxpYyBjcmVhdGUoKTogQWJzdHJhY3RDb250cm9sPGFueSwgYW55PiB7XG4gICAgICAgIGNvbnN0IHN1Ykdyb3VwID0gbmV3IFVudHlwZWRGb3JtR3JvdXAoe30pO1xuXG4gICAgICAgIGlmICh0aGlzLmZpZWxkLmNvbGxlY3Rpb25zICYmIEFycmF5LmlzQXJyYXkodGhpcy5maWVsZC5jb2xsZWN0aW9ucykpIHtcbiAgICAgICAgICAgIHRoaXMuZmllbGQuY29sbGVjdGlvbnMuZm9yRWFjaChzdWJmaWVsZCA9PiB7XG4gICAgICAgICAgICAgICAgbGV0IGNvbnRyb2w7XG4gICAgICAgICAgICAgICAgaWYgKHN1YmZpZWxkLnR5cGUpIHtcbiAgICAgICAgICAgICAgICAgICAgY29udHJvbCA9IGNvbXBvbmVudE1hcHBlci5maW5kKGMgPT4gYy50eXBlID09PSBzdWJmaWVsZC50eXBlKT8uZmFjdG9yeSh7IC4uLnN1YmZpZWxkLCB2YWx1ZTogc3ViZmllbGQudmFsdWUgfHwgdGhpcy5maWVsZC52YWx1ZT8uW3N1YmZpZWxkLm5hbWVdIH0pXG4gICAgICAgICAgICAgICAgICAgICAgICB8fCBrbGVzRmllbGRDb250cm9sRmFjdG9yeSh7IC4uLnN1YmZpZWxkLCB2YWx1ZTogc3ViZmllbGQudmFsdWUgfHwgdGhpcy5maWVsZC52YWx1ZT8uW3N1YmZpZWxkLm5hbWVdIH0pO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRyb2wgPSBjb21wb25lbnRNYXBwZXIuZmluZChjID0+IGMuY29tcG9uZW50ID09PSBzdWJmaWVsZC5jb21wb25lbnQpPy5mYWN0b3J5KHsgLi4uc3ViZmllbGQsIHZhbHVlOiBzdWJmaWVsZC52YWx1ZSB8fCB0aGlzLmZpZWxkLnZhbHVlPy5bc3ViZmllbGQubmFtZV0gfSlcbiAgICAgICAgICAgICAgICAgICAgICAgIHx8IGtsZXNGaWVsZENvbnRyb2xGYWN0b3J5KHsgLi4uc3ViZmllbGQsIHZhbHVlOiBzdWJmaWVsZC52YWx1ZSB8fCB0aGlzLmZpZWxkLnZhbHVlPy5bc3ViZmllbGQubmFtZV0gfSk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgc3ViR3JvdXAuYWRkQ29udHJvbChzdWJmaWVsZC5uYW1lLCBjb250cm9sKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMuZmllbGQuZGlzYWJsZWQpIHtcbiAgICAgICAgICAgIHN1Ykdyb3VwLmRpc2FibGUoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnNvbGUubG9nKCdzdWJHcm91cCcsIHN1Ykdyb3VwKVxuXG4gICAgICAgIHJldHVybiBzdWJHcm91cDtcbiAgICB9XG59XG4iXX0=
|
|
@@ -2188,13 +2188,23 @@ class KlesFormGroup extends KlesFormControl {
|
|
|
2188
2188
|
const subGroup = new UntypedFormGroup({});
|
|
2189
2189
|
if (this.field.collections && Array.isArray(this.field.collections)) {
|
|
2190
2190
|
this.field.collections.forEach(subfield => {
|
|
2191
|
-
|
|
2191
|
+
var _a, _b, _c, _d, _e, _f;
|
|
2192
|
+
let control;
|
|
2193
|
+
if (subfield.type) {
|
|
2194
|
+
control = ((_a = componentMapper.find(c => c.type === subfield.type)) === null || _a === void 0 ? void 0 : _a.factory(Object.assign(Object.assign({}, subfield), { value: subfield.value || ((_b = this.field.value) === null || _b === void 0 ? void 0 : _b[subfield.name]) })))
|
|
2195
|
+
|| klesFieldControlFactory(Object.assign(Object.assign({}, subfield), { value: subfield.value || ((_c = this.field.value) === null || _c === void 0 ? void 0 : _c[subfield.name]) }));
|
|
2196
|
+
}
|
|
2197
|
+
else {
|
|
2198
|
+
control = ((_d = componentMapper.find(c => c.component === subfield.component)) === null || _d === void 0 ? void 0 : _d.factory(Object.assign(Object.assign({}, subfield), { value: subfield.value || ((_e = this.field.value) === null || _e === void 0 ? void 0 : _e[subfield.name]) })))
|
|
2199
|
+
|| klesFieldControlFactory(Object.assign(Object.assign({}, subfield), { value: subfield.value || ((_f = this.field.value) === null || _f === void 0 ? void 0 : _f[subfield.name]) }));
|
|
2200
|
+
}
|
|
2192
2201
|
subGroup.addControl(subfield.name, control);
|
|
2193
2202
|
});
|
|
2194
2203
|
}
|
|
2195
2204
|
if (this.field.disabled) {
|
|
2196
2205
|
subGroup.disable();
|
|
2197
2206
|
}
|
|
2207
|
+
console.log('subGroup', subGroup);
|
|
2198
2208
|
return subGroup;
|
|
2199
2209
|
}
|
|
2200
2210
|
}
|
|
@@ -2964,8 +2974,18 @@ class KlesFormArray extends KlesFormControl {
|
|
|
2964
2974
|
const group = new FormGroup({});
|
|
2965
2975
|
group.addControl('_id', new FormControl(v4()));
|
|
2966
2976
|
this.field.collections.forEach(subfield => {
|
|
2977
|
+
var _a, _b;
|
|
2967
2978
|
const data = val[subfield.name] || null;
|
|
2968
|
-
const control = new KlesFormControl(
|
|
2979
|
+
// const control = new KlesFormControl({ ...subfield, ...(data && { value: data }) }).create();
|
|
2980
|
+
let control;
|
|
2981
|
+
if (subfield.type) {
|
|
2982
|
+
control = ((_a = componentMapper.find(c => c.type === subfield.type)) === null || _a === void 0 ? void 0 : _a.factory(Object.assign(Object.assign({}, subfield), (data && { value: data }))))
|
|
2983
|
+
|| klesFieldControlFactory(Object.assign(Object.assign({}, subfield), (data && { value: data })));
|
|
2984
|
+
}
|
|
2985
|
+
else {
|
|
2986
|
+
control = ((_b = componentMapper.find(c => c.component === subfield.component)) === null || _b === void 0 ? void 0 : _b.factory(Object.assign(Object.assign({}, subfield), (data && { value: data }))))
|
|
2987
|
+
|| klesFieldControlFactory(Object.assign(Object.assign({}, subfield), (data && { value: data })));
|
|
2988
|
+
}
|
|
2969
2989
|
group.addControl(subfield.name, control);
|
|
2970
2990
|
});
|
|
2971
2991
|
array.push(group);
|
|
@@ -2975,7 +2995,17 @@ class KlesFormArray extends KlesFormControl {
|
|
|
2975
2995
|
else {
|
|
2976
2996
|
const group = new FormGroup({});
|
|
2977
2997
|
this.field.collections.forEach(subfield => {
|
|
2978
|
-
|
|
2998
|
+
var _a, _b;
|
|
2999
|
+
// const control = new KlesFormControl({ ...subfield }).create();
|
|
3000
|
+
let control;
|
|
3001
|
+
if (subfield.type) {
|
|
3002
|
+
control = ((_a = componentMapper.find(c => c.type === subfield.type)) === null || _a === void 0 ? void 0 : _a.factory(Object.assign({}, subfield)))
|
|
3003
|
+
|| klesFieldControlFactory(Object.assign({}, subfield));
|
|
3004
|
+
}
|
|
3005
|
+
else {
|
|
3006
|
+
control = ((_b = componentMapper.find(c => c.component === subfield.component)) === null || _b === void 0 ? void 0 : _b.factory(Object.assign({}, subfield)))
|
|
3007
|
+
|| klesFieldControlFactory(Object.assign({}, subfield));
|
|
3008
|
+
}
|
|
2979
3009
|
group.addControl(subfield.name, control);
|
|
2980
3010
|
});
|
|
2981
3011
|
array.push(group);
|