@stemy/ngx-dynamic-form 19.1.13 → 19.2.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.
- package/fesm2022/stemy-ngx-dynamic-form-ui-nebular.mjs +4 -4
- package/fesm2022/stemy-ngx-dynamic-form-ui-nebular.mjs.map +1 -1
- package/fesm2022/stemy-ngx-dynamic-form.mjs +859 -1662
- package/fesm2022/stemy-ngx-dynamic-form.mjs.map +1 -1
- package/ngx-dynamic-form/common-types.d.ts +109 -26
- package/ngx-dynamic-form/components/dynamic-form/dynamic-form.component.d.ts +21 -0
- package/ngx-dynamic-form/components/dynamic-form-array/dynamic-form-array.component.d.ts +9 -0
- package/ngx-dynamic-form/components/dynamic-form-chips/dynamic-form-chips.component.d.ts +7 -0
- package/ngx-dynamic-form/components/dynamic-form-field/dynamic-form-field.component.d.ts +6 -0
- package/ngx-dynamic-form/components/dynamic-form-fieldset/dynamic-form-fieldset.component.d.ts +7 -0
- package/ngx-dynamic-form/components/dynamic-form-group/dynamic-form-group.component.d.ts +6 -0
- package/ngx-dynamic-form/components/dynamic-form-upload/dynamic-form-upload.component.d.ts +7 -0
- package/ngx-dynamic-form/directives/async-submit.directive.d.ts +17 -23
- package/ngx-dynamic-form/ngx-dynamic-form.imports.d.ts +5 -9
- package/ngx-dynamic-form/ngx-dynamic-form.module.d.ts +13 -11
- package/ngx-dynamic-form/services/dynamic-form-builder.service.d.ts +27 -0
- package/ngx-dynamic-form/services/dynamic-form.service.d.ts +28 -46
- package/ngx-dynamic-form/utils/customizer.d.ts +5 -12
- package/ngx-dynamic-form/utils/decorators.d.ts +10 -0
- package/ngx-dynamic-form/utils/misc.d.ts +2 -4
- package/ngx-dynamic-form/utils/validation.d.ts +13 -0
- package/package.json +21 -16
- package/public_api.d.ts +13 -18
- package/ui-nebular/index.d.ts +1 -5
- package/common-types.d.ts +0 -37
- package/components/base/dynamic-base-form-array.component.d.ts +0 -38
- package/components/base/dynamic-base-form-control-container.component.d.ts +0 -39
- package/components/base/dynamic-base-form-control.component.d.ts +0 -26
- package/components/base/dynamic-base-form-group.component.d.ts +0 -25
- package/components/base/dynamic-base-form.component.d.ts +0 -46
- package/components/base/dynamic-base-select.component.d.ts +0 -15
- package/directives/async-submit.directive.d.ts +0 -31
- package/esm2020/ngx-dynamic-form/common-types.mjs +0 -2
- package/esm2020/ngx-dynamic-form/components/base/dynamic-base-form-array.component.mjs +0 -104
- package/esm2020/ngx-dynamic-form/components/base/dynamic-base-form-control-container.component.mjs +0 -127
- package/esm2020/ngx-dynamic-form/components/base/dynamic-base-form-control.component.mjs +0 -57
- package/esm2020/ngx-dynamic-form/components/base/dynamic-base-form-group.component.mjs +0 -75
- package/esm2020/ngx-dynamic-form/components/base/dynamic-base-form.component.mjs +0 -182
- package/esm2020/ngx-dynamic-form/components/base/dynamic-base-select.component.mjs +0 -66
- package/esm2020/ngx-dynamic-form/directives/async-submit.directive.mjs +0 -116
- package/esm2020/ngx-dynamic-form/ngx-dynamic-form.imports.mjs +0 -26
- package/esm2020/ngx-dynamic-form/ngx-dynamic-form.module.mjs +0 -116
- package/esm2020/ngx-dynamic-form/services/dynamic-form.service.mjs +0 -615
- package/esm2020/ngx-dynamic-form/utils/creators.mjs +0 -67
- package/esm2020/ngx-dynamic-form/utils/customizer.mjs +0 -28
- package/esm2020/ngx-dynamic-form/utils/dynamic-editor.model.mjs +0 -14
- package/esm2020/ngx-dynamic-form/utils/dynamic-form-array.model.mjs +0 -128
- package/esm2020/ngx-dynamic-form/utils/dynamic-form-group.model.mjs +0 -26
- package/esm2020/ngx-dynamic-form/utils/dynamic-select.model.mjs +0 -59
- package/esm2020/ngx-dynamic-form/utils/form-select-subject.mjs +0 -26
- package/esm2020/ngx-dynamic-form/utils/form-subject.mjs +0 -29
- package/esm2020/ngx-dynamic-form/utils/misc.mjs +0 -47
- package/esm2020/ngx-dynamic-form/utils/validation-errors.mjs +0 -22
- package/esm2020/ngx-dynamic-form/utils/validators.mjs +0 -56
- package/esm2020/public_api.mjs +0 -21
- package/esm2020/stemy-ngx-dynamic-form.mjs +0 -5
- package/fesm2015/stemy-ngx-dynamic-form.mjs +0 -1927
- package/fesm2015/stemy-ngx-dynamic-form.mjs.map +0 -1
- package/fesm2020/stemy-ngx-dynamic-form.mjs +0 -1893
- package/fesm2020/stemy-ngx-dynamic-form.mjs.map +0 -1
- package/fesm2022/stemy-ngx-dynamic-form-src-ngx-dynamic-form-nebular.mjs +0 -50
- package/fesm2022/stemy-ngx-dynamic-form-src-ngx-dynamic-form-nebular.mjs.map +0 -1
- package/imports.d.ts +0 -12
- package/ngx-dynamic-form/components/base/dynamic-base-form-array.component.d.ts +0 -38
- package/ngx-dynamic-form/components/base/dynamic-base-form-control-container.component.d.ts +0 -39
- package/ngx-dynamic-form/components/base/dynamic-base-form-control.component.d.ts +0 -26
- package/ngx-dynamic-form/components/base/dynamic-base-form-group.component.d.ts +0 -25
- package/ngx-dynamic-form/components/base/dynamic-base-form.component.d.ts +0 -46
- package/ngx-dynamic-form/components/base/dynamic-base-select.component.d.ts +0 -15
- package/ngx-dynamic-form/services/dynamic-form-layout.service.d.ts +0 -7
- package/ngx-dynamic-form/utils/creators.d.ts +0 -18
- package/ngx-dynamic-form/utils/dynamic-editor.model.d.ts +0 -11
- package/ngx-dynamic-form/utils/dynamic-form-array.model.d.ts +0 -69
- package/ngx-dynamic-form/utils/dynamic-form-group.model.d.ts +0 -14
- package/ngx-dynamic-form/utils/dynamic-select.model.d.ts +0 -39
- package/ngx-dynamic-form/utils/form-select-subject.d.ts +0 -6
- package/ngx-dynamic-form/utils/form-subject.d.ts +0 -10
- package/ngx-dynamic-form/utils/validators.d.ts +0 -8
- package/ngx-dynamic-form.imports.d.ts +0 -12
- package/ngx-dynamic-form.module.d.ts +0 -21
- package/services/dynamic-form.service.d.ts +0 -61
- package/src/ngx-dynamic-form/nebular/imports.d.ts +0 -4
- package/src/ngx-dynamic-form/nebular/index.d.ts +0 -5
- package/src/ngx-dynamic-form/nebular/ngx-dynamic-form.nebular.module.d.ts +0 -9
- package/src/ngx-dynamic-form/nebular/public_api.d.ts +0 -1
- package/stemy-ngx-dynamic-form.d.ts +0 -5
- package/ui-nebular/public_api.d.ts +0 -1
- package/utils/creators.d.ts +0 -18
- package/utils/customizer.d.ts +0 -14
- package/utils/dynamic-editor.model.d.ts +0 -11
- package/utils/dynamic-form-array.model.d.ts +0 -69
- package/utils/dynamic-form-group.model.d.ts +0 -14
- package/utils/dynamic-select.model.d.ts +0 -39
- package/utils/form-select-subject.d.ts +0 -6
- package/utils/form-subject.d.ts +0 -10
- package/utils/misc.d.ts +0 -11
- package/utils/validation-errors.d.ts +0 -11
- package/utils/validators.d.ts +0 -8
|
@@ -1,67 +0,0 @@
|
|
|
1
|
-
import { DynamicCheckboxModel, DynamicDatePickerModel, DynamicFileUploadModel, DynamicInputModel, DynamicTextAreaModel } from "@ng-dynamic-forms/core";
|
|
2
|
-
import { ObjectUtils } from "@stemy/ngx-utils";
|
|
3
|
-
import { DynamicEditorModel } from "./dynamic-editor.model";
|
|
4
|
-
import { DynamicFormArrayModel } from "./dynamic-form-array.model";
|
|
5
|
-
import { DynamicFormGroupModel } from "./dynamic-form-group.model";
|
|
6
|
-
import { DynamicSelectModel } from "./dynamic-select.model";
|
|
7
|
-
export function createFormConfig(id, config) {
|
|
8
|
-
const res = (config || { id });
|
|
9
|
-
res.id = id;
|
|
10
|
-
res.label = ObjectUtils.isNullOrUndefined(config.label) ? id : config.label;
|
|
11
|
-
res.disabled = config.disabled || false;
|
|
12
|
-
res.hidden = config.hidden || false;
|
|
13
|
-
return res;
|
|
14
|
-
}
|
|
15
|
-
export function createFormCheckbox(id, config, layout) {
|
|
16
|
-
const res = createFormConfig(id, config);
|
|
17
|
-
res.indeterminate = config.indeterminate || false;
|
|
18
|
-
return new DynamicCheckboxModel(res, layout);
|
|
19
|
-
}
|
|
20
|
-
export function createFormDate(id, config, layout) {
|
|
21
|
-
const res = createFormConfig(id, config);
|
|
22
|
-
res.autoFocus = config.autoFocus || false;
|
|
23
|
-
res.focusedDate = config.focusedDate || new Date();
|
|
24
|
-
res.inline = config.inline || false;
|
|
25
|
-
return new DynamicDatePickerModel(res, layout);
|
|
26
|
-
}
|
|
27
|
-
export function createFormEditor(id, config, layout) {
|
|
28
|
-
const res = createFormConfig(id, config);
|
|
29
|
-
return new DynamicEditorModel(res, layout);
|
|
30
|
-
}
|
|
31
|
-
export function createFormArray(id, config, layout) {
|
|
32
|
-
const res = createFormConfig(id, config);
|
|
33
|
-
return new DynamicFormArrayModel(res, layout);
|
|
34
|
-
}
|
|
35
|
-
export function createFormGroup(id, config, layout) {
|
|
36
|
-
const res = createFormConfig(id, config);
|
|
37
|
-
res.name = config.name || "";
|
|
38
|
-
return new DynamicFormGroupModel(res, layout);
|
|
39
|
-
}
|
|
40
|
-
export function createFormInput(id, config, type = "text", layout) {
|
|
41
|
-
const res = createFormConfig(id, config);
|
|
42
|
-
res.inputType = config.inputType || type;
|
|
43
|
-
res.placeholder = config.placeholder || (config.inputType == "mask" ? "_" : "");
|
|
44
|
-
res.step = config.step || 1;
|
|
45
|
-
res.mask = config.mask || null;
|
|
46
|
-
return new DynamicInputModel(res, layout);
|
|
47
|
-
}
|
|
48
|
-
export function createFormSelect(id, config, layout) {
|
|
49
|
-
const res = createFormConfig(id, config);
|
|
50
|
-
res.options = config.options || [];
|
|
51
|
-
return new DynamicSelectModel(res, layout);
|
|
52
|
-
}
|
|
53
|
-
export function createFormTextarea(id, config, layout) {
|
|
54
|
-
const res = createFormConfig(id, config);
|
|
55
|
-
res.cols = config.cols || 10;
|
|
56
|
-
res.rows = config.rows || 3;
|
|
57
|
-
res.wrap = config.wrap || "soft";
|
|
58
|
-
return new DynamicTextAreaModel(res, layout);
|
|
59
|
-
}
|
|
60
|
-
export function createFormFile(id, config, layout) {
|
|
61
|
-
const res = createFormConfig(id, config);
|
|
62
|
-
res.accept = config.accept || ["jpg", "jpeg", "png"];
|
|
63
|
-
res.multiple = config.multiple || false;
|
|
64
|
-
res.url = ObjectUtils.isString(config.url) ? config.url : "assets";
|
|
65
|
-
return new DynamicFileUploadModel(res, layout);
|
|
66
|
-
}
|
|
67
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRvcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbmd4LWR5bmFtaWMtZm9ybS91dGlscy9jcmVhdG9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsb0JBQW9CLEVBRXBCLHNCQUFzQixFQUN0QixzQkFBc0IsRUFJdEIsaUJBQWlCLEVBRWpCLG9CQUFvQixFQUV2QixNQUFNLHdCQUF3QixDQUFDO0FBQ2hDLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxrQkFBa0IsQ0FBQztBQUM3QyxPQUFPLEVBQUMsa0JBQWtCLEVBQTJCLE1BQU0sd0JBQXdCLENBQUM7QUFDcEYsT0FBTyxFQUFDLHFCQUFxQixFQUE4QixNQUFNLDRCQUE0QixDQUFDO0FBQzlGLE9BQU8sRUFBQyxxQkFBcUIsRUFBOEIsTUFBTSw0QkFBNEIsQ0FBQztBQUM5RixPQUFPLEVBQTJCLGtCQUFrQixFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFNcEYsTUFBTSxVQUFVLGdCQUFnQixDQUErRCxFQUFVLEVBQUUsTUFBVTtJQUNqSCxNQUFNLEdBQUcsR0FBRyxDQUFDLE1BQU0sSUFBSSxFQUFDLEVBQUUsRUFBQyxDQUFhLENBQUM7SUFDekMsR0FBRyxDQUFDLEVBQUUsR0FBRyxFQUFFLENBQUM7SUFDWixHQUFHLENBQUMsS0FBSyxHQUFHLFdBQVcsQ0FBQyxpQkFBaUIsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQztJQUM1RSxHQUFHLENBQUMsUUFBUSxHQUFHLE1BQU0sQ0FBQyxRQUFRLElBQUksS0FBSyxDQUFDO0lBQ3hDLEdBQUcsQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDLE1BQU0sSUFBSSxLQUFLLENBQUM7SUFDcEMsT0FBTyxHQUFHLENBQUM7QUFDZixDQUFDO0FBRUQsTUFBTSxVQUFVLGtCQUFrQixDQUFDLEVBQVUs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QkFBa0IsQ0FBQyxHQUFHLEVBQUUsTUFBTSxDQUFDLENBQUM7QUFDL0MsQ0FBQztBQUVELE1BQU0sVUFBVSxrQkFBa0IsQ0FBQyxFQUFVLEVBQUUsTUFBMEMsRUFBRSxNQUFpQztJQUN4SCxNQUFNLEdBQUcsR0FBRyxnQkFBZ0IsQ0FBQyxFQUFFLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDekMsR0FBRyxDQUFDLElBQUksR0FBRyxNQUFNLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQztJQUM3QixHQUFHLENBQUMsSUFBSSxHQUFHLE1BQU0sQ0FBQyxJQUFJLElBQUksQ0FBQyxDQUFDO0lBQzVCLEdBQUcsQ0FBQyxJQUFJLEdBQUcsTUFBTSxDQUFDLElBQUksSUFBSSxNQUFNLENBQUM7SUFDakMsT0FBTyxJQUFJLG9CQUFvQixDQUFDLEdBQUcsRUFBRSxNQUFNLENBQUMsQ0FBQztBQUNqRCxDQUFDO0FBRUQsTUFBTSxVQUFVLGNBQWMsQ0FBQyxFQUFVLEVBQUUsTUFBNEMsRUFBRSxNQUFpQztJQUN0SCxNQUFNLEdBQUcsR0FBRyxnQkFBZ0IsQ0FBQyxFQUFFLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDekMsR0FBRyxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxJQUFJLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxLQUFLLENBQUMsQ0FBQztJQUNyRCxHQUFHLENBQUMsUUFBUSxHQUFHLE1BQU0sQ0FBQyxRQUFRLElBQUksS0FBSyxDQUFDO0lBQ3hDLEdBQUcsQ0FBQyxHQUFHLEdBQUcsV0FBVyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQztJQUNuRSxPQUFPLElBQUksc0JBQXNCLENBQUMsR0FBRyxFQUFFLE1BQU0sQ0FBQyxDQUFDO0FBQ25ELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gICAgRHluYW1pY0NoZWNrYm94TW9kZWwsXHJcbiAgICBEeW5hbWljQ2hlY2tib3hNb2RlbENvbmZpZyxcclxuICAgIER5bmFtaWNEYXRlUGlja2VyTW9kZWwsXHJcbiAgICBEeW5hbWljRmlsZVVwbG9hZE1vZGVsLFxyXG4gICAgRHluYW1pY0ZpbGVVcGxvYWRNb2RlbENvbmZpZyxcclxuICAgIER5bmFtaWNGb3JtQ29udHJvbExheW91dCxcclxuICAgIER5bmFtaWNGb3JtQ29udHJvbE1vZGVsQ29uZmlnLFxyXG4gICAgRHluYW1pY0lucHV0TW9kZWwsXHJcbiAgICBEeW5hbWljSW5wdXRNb2RlbENvbmZpZyxcclxuICAgIER5bmFtaWNUZXh0QXJlYU1vZGVsLFxyXG4gICAgRHluYW1pY1RleHRBcmVhTW9kZWxDb25maWdcclxufSBmcm9tIFwiQG5nLWR5bmFtaWMtZm9ybXMvY29yZVwiO1xyXG5pbXBvcnQge09iamVjdFV0aWxzfSBmcm9tIFwiQHN0ZW15L25neC11dGlsc1wiO1xyXG5pbXBvcnQge0R5bmFtaWNFZGl0b3JNb2RlbCwgRHluYW1pY0VkaXRvck1vZGVsQ29uZmlnfSBmcm9tIFwiLi9keW5hbWljLWVkaXRvci5tb2RlbFwiO1xyXG5pbXBvcnQge0R5bmFtaWNGb3JtQXJyYXlNb2RlbCwgRHluYW1pY0Zvcm1BcnJheU1vZGVsQ29uZmlnfSBmcm9tIFwiLi9keW5hbWljLWZvcm0tYXJyYXkubW9kZWxcIjtcclxuaW1wb3J0IHtEeW5hbWljRm9ybUdyb3VwTW9kZWwsIER5bmFtaWNGb3JtR3JvdXBNb2RlbENvbmZpZ30gZnJvbSBcIi4vZHluYW1pYy1mb3JtLWdyb3VwLm1vZGVsXCI7XHJcbmltcG9ydCB7RHluYW1pY1NlbGVjdE1vZGVsQ29uZmlnLCBEeW5hbWljU2VsZWN0TW9kZWx9IGZyb20gXCIuL2R5bmFtaWMtc2VsZWN0Lm1vZGVsXCI7XHJcblxyXG5leHBvcnQgdHlwZSBPbWl0SWQ8VCBleHRlbmRzIER5bmFtaWNGb3JtQ29udHJvbE1vZGVsQ29uZmlnPiA9IE9taXQ8VCwgXCJpZFwiPjtcclxuXHJcbmV4cG9ydCB0eXBlIEFkZElkPFQgZXh0ZW5kcyBPbWl0SWQ8RHluYW1pY0Zvcm1Db250cm9sTW9kZWxDb25maWc+PiA9IFQgZXh0ZW5kcyBPbWl0SWQ8KGluZmVyIFUpPiA/IFUgOiBuZXZlcjtcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVGb3JtQ29uZmlnPFQgZXh0ZW5kcyBEeW5hbWljRm9ybUNvbnRyb2xNb2RlbENvbmZpZywgVSBleHRlbmRzIE9taXRJZDxUPj4oaWQ6IHN0cmluZywgY29uZmlnPzogVSk6IEFkZElkPFU+IHtcclxuICAgIGNvbnN0IHJlcyA9IChjb25maWcgfHwge2lkfSkgYXMgQWRkSWQ8VT47XHJcbiAgICByZXMuaWQgPSBpZDtcclxuICAgIHJlcy5sYWJlbCA9IE9iamVjdFV0aWxzLmlzTnVsbE9yVW5kZWZpbmVkKGNvbmZpZy5sYWJlbCkgPyBpZCA6IGNvbmZpZy5sYWJlbDtcclxuICAgIHJlcy5kaXNhYmxlZCA9IGNvbmZpZy5kaXNhYmxlZCB8fCBmYWxzZTtcclxuICAgIHJlcy5oaWRkZW4gPSBjb25maWcuaGlkZGVuIHx8IGZhbHNlO1xyXG4gICAgcmV0dXJuIHJlcztcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZUZvcm1DaGVja2JveChpZDogc3RyaW5nLCBjb25maWc6IE9taXRJZDxEeW5hbWljQ2hlY2tib3hNb2RlbENvbmZpZz4sIGxheW91dD86IER5bmFtaWNGb3JtQ29udHJvbExheW91dCk6IER5bmFtaWNDaGVja2JveE1vZGVsIHtcclxuICAgIGNvbnN0IHJlcyA9IGNyZWF0ZUZvcm1Db25maWcoaWQsIGNvbmZpZyk7XHJcbiAgICByZXMuaW5kZXRlcm1pbmF0ZSA9IGNvbmZpZy5pbmRldGVybWluYXRlIHx8IGZhbHNlO1xyXG4gICAgcmV0dXJuIG5ldyBEeW5hbWljQ2hlY2tib3hNb2RlbChyZXMsIGxheW91dCk7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVGb3JtRGF0ZShpZDogc3RyaW5nLCBjb25maWc6IE9taXRJZDxEeW5hbWljRGF0ZVBpY2tlck1vZGVsPiwgbGF5b3V0PzogRHluYW1pY0Zvcm1Db250cm9sTGF5b3V0KTogRHluYW1pY0RhdGVQaWNrZXJNb2RlbCB7XHJcbiAgICBjb25zdCByZXMgPSBjcmVhdGVGb3JtQ29uZmlnKGlkLCBjb25maWcpO1xyXG4gICAgcmVzLmF1dG9Gb2N1cyA9IGNvbmZpZy5hdXRvRm9jdXMgfHwgZmFsc2U7XHJcbiAgICByZXMuZm9jdXNlZERhdGUgPSBjb25maWcuZm9jdXNlZERhdGUgfHwgbmV3IERhdGUoKTtcclxuICAgIHJlcy5pbmxpbmUgPSBjb25maWcuaW5saW5lIHx8IGZhbHNlO1xyXG4gICAgcmV0dXJuIG5ldyBEeW5hbWljRGF0ZVBpY2tlck1vZGVsKHJlcywgbGF5b3V0KTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZUZvcm1FZGl0b3IoaWQ6IHN0cmluZywgY29uZmlnOiBPbWl0SWQ8RHluYW1pY0VkaXRvck1vZGVsQ29uZmlnPiwgbGF5b3V0PzogRHluYW1pY0Zvcm1Db250cm9sTGF5b3V0KTogRHluYW1pY0VkaXRvck1vZGVsIHtcclxuICAgIGNvbnN0IHJlcyA9IGNyZWF0ZUZvcm1Db25maWcoaWQsIGNvbmZpZyk7XHJcbiAgICByZXR1cm4gbmV3IER5bmFtaWNFZGl0b3JNb2RlbChyZXMsIGxheW91dCk7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVGb3JtQXJyYXkoaWQ6IHN0cmluZywgY29uZmlnOiBPbWl0SWQ8RHluYW1pY0Zvcm1BcnJheU1vZGVsQ29uZmlnPiwgbGF5b3V0PzogRHluYW1pY0Zvcm1Db250cm9sTGF5b3V0KTogRHluYW1pY0Zvcm1BcnJheU1vZGVsIHtcclxuICAgIGNvbnN0IHJlcyA9IGNyZWF0ZUZvcm1Db25maWcoaWQsIGNvbmZpZyk7XHJcbiAgICByZXR1cm4gbmV3IER5bmFtaWNGb3JtQXJyYXlNb2RlbChyZXMsIGxheW91dCk7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVGb3JtR3JvdXAoaWQ6IHN0cmluZywgY29uZmlnOiBPbWl0SWQ8RHluYW1pY0Zvcm1Hcm91cE1vZGVsQ29uZmlnPiwgbGF5b3V0PzogRHluYW1pY0Zvcm1Db250cm9sTGF5b3V0KTogRHluYW1pY0Zvcm1Hcm91cE1vZGVsIHtcclxuICAgIGNvbnN0IHJlcyA9IGNyZWF0ZUZvcm1Db25maWcoaWQsIGNvbmZpZyk7XHJcbiAgICByZXMubmFtZSA9IGNvbmZpZy5uYW1lIHx8IFwiXCI7XHJcbiAgICByZXR1cm4gbmV3IER5bmFtaWNGb3JtR3JvdXBNb2RlbChyZXMsIGxheW91dCk7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVGb3JtSW5wdXQoaWQ6IHN0cmluZywgY29uZmlnOiBPbWl0SWQ8RHluYW1pY0lucHV0TW9kZWxDb25maWc+LCB0eXBlOiBzdHJpbmcgPSBcInRleHRcIiwgbGF5b3V0PzogRHluYW1pY0Zvcm1Db250cm9sTGF5b3V0KTogRHluYW1pY0lucHV0TW9kZWwge1xyXG4gICAgY29uc3QgcmVzID0gY3JlYXRlRm9ybUNvbmZpZyhpZCwgY29uZmlnKTtcclxuICAgIHJlcy5pbnB1dFR5cGUgPSBjb25maWcuaW5wdXRUeXBlIHx8IHR5cGU7XHJcbiAgICByZXMucGxhY2Vob2xkZXIgPSBjb25maWcucGxhY2Vob2xkZXIgfHwgKGNvbmZpZy5pbnB1dFR5cGUgPT0gXCJtYXNrXCIgPyBcIl9cIiA6IFwiXCIpO1xyXG4gICAgcmVzLnN0ZXAgPSBjb25maWcuc3RlcCB8fCAxO1xyXG4gICAgcmVzLm1hc2sgPSBjb25maWcubWFzayB8fCBudWxsO1xyXG4gICAgcmV0dXJuIG5ldyBEeW5hbWljSW5wdXRNb2RlbChyZXMsIGxheW91dCk7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVGb3JtU2VsZWN0PFQgPSBhbnk+KGlkOiBzdHJpbmcsIGNvbmZpZzogT21pdElkPER5bmFtaWNTZWxlY3RNb2RlbENvbmZpZzxUPj4sIGxheW91dD86IER5bmFtaWNGb3JtQ29udHJvbExheW91dCk6IER5bmFtaWNTZWxlY3RNb2RlbDxUPiB7XHJcbiAgICBjb25zdCByZXMgPSBjcmVhdGVGb3JtQ29uZmlnKGlkLCBjb25maWcpO1xyXG4gICAgcmVzLm9wdGlvbnMgPSBjb25maWcub3B0aW9ucyB8fCBbXTtcclxuICAgIHJldHVybiBuZXcgRHluYW1pY1NlbGVjdE1vZGVsKHJlcywgbGF5b3V0KTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZUZvcm1UZXh0YXJlYShpZDogc3RyaW5nLCBjb25maWc6IE9taXRJZDxEeW5hbWljVGV4dEFyZWFNb2RlbENvbmZpZz4sIGxheW91dD86IER5bmFtaWNGb3JtQ29udHJvbExheW91dCk6IER5bmFtaWNUZXh0QXJlYU1vZGVsIHtcclxuICAgIGNvbnN0IHJlcyA9IGNyZWF0ZUZvcm1Db25maWcoaWQsIGNvbmZpZyk7XHJcbiAgICByZXMuY29scyA9IGNvbmZpZy5jb2xzIHx8IDEwO1xyXG4gICAgcmVzLnJvd3MgPSBjb25maWcucm93cyB8fCAzO1xyXG4gICAgcmVzLndyYXAgPSBjb25maWcud3JhcCB8fCBcInNvZnRcIjtcclxuICAgIHJldHVybiBuZXcgRHluYW1pY1RleHRBcmVhTW9kZWwocmVzLCBsYXlvdXQpO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlRm9ybUZpbGUoaWQ6IHN0cmluZywgY29uZmlnOiBPbWl0SWQ8RHluYW1pY0ZpbGVVcGxvYWRNb2RlbENvbmZpZz4sIGxheW91dD86IER5bmFtaWNGb3JtQ29udHJvbExheW91dCk6IER5bmFtaWNGaWxlVXBsb2FkTW9kZWwge1xyXG4gICAgY29uc3QgcmVzID0gY3JlYXRlRm9ybUNvbmZpZyhpZCwgY29uZmlnKTtcclxuICAgIHJlcy5hY2NlcHQgPSBjb25maWcuYWNjZXB0IHx8IFtcImpwZ1wiLCBcImpwZWdcIiwgXCJwbmdcIl07XHJcbiAgICByZXMubXVsdGlwbGUgPSBjb25maWcubXVsdGlwbGUgfHwgZmFsc2U7XHJcbiAgICByZXMudXJsID0gT2JqZWN0VXRpbHMuaXNTdHJpbmcoY29uZmlnLnVybCkgPyBjb25maWcudXJsIDogXCJhc3NldHNcIjtcclxuICAgIHJldHVybiBuZXcgRHluYW1pY0ZpbGVVcGxvYWRNb2RlbChyZXMsIGxheW91dCk7XHJcbn1cclxuIl19
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import { cachedFactory } from "@stemy/ngx-utils";
|
|
2
|
-
export function getFormComponent(...providers) {
|
|
3
|
-
const factory = cachedFactory(providers);
|
|
4
|
-
return (model, injector) => {
|
|
5
|
-
const customizers = factory(injector);
|
|
6
|
-
for (const customizer of customizers) {
|
|
7
|
-
const component = customizer.acceptModel(model) ? customizer.getFormComponent(model) : null;
|
|
8
|
-
if (component) {
|
|
9
|
-
return component;
|
|
10
|
-
}
|
|
11
|
-
}
|
|
12
|
-
return null;
|
|
13
|
-
};
|
|
14
|
-
}
|
|
15
|
-
export function customizeFormModel(...providers) {
|
|
16
|
-
const factory = cachedFactory(providers);
|
|
17
|
-
return async (property, schema, model, config, injector) => {
|
|
18
|
-
const customizers = factory(injector);
|
|
19
|
-
for (const customizer of customizers) {
|
|
20
|
-
const accept = customizer.acceptModel(model);
|
|
21
|
-
if (accept) {
|
|
22
|
-
return customizer.customizeModel(model, config, property, schema);
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
return model;
|
|
26
|
-
};
|
|
27
|
-
}
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9taXplci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9uZ3gtZHluYW1pYy1mb3JtL3V0aWxzL2N1c3RvbWl6ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBTUEsT0FBTyxFQUFpQixhQUFhLEVBQXlDLE1BQU0sa0JBQWtCLENBQUM7QUFTdkcsTUFBTSxVQUFVLGdCQUFnQixDQUFDLEdBQUcsU0FBcUQ7SUFDckYsTUFBTSxPQUFPLEdBQUcsYUFBYSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ3pDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsUUFBUSxFQUFFLEVBQUU7UUFDdkIsTUFBTSxXQUFXLEdBQUcsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3RDLEtBQUssTUFBTSxVQUFVLElBQUksV0FBVyxFQUFFO1lBQ2xDLE1BQU0sU0FBUyxHQUFHLFVBQVUsQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO1lBQzVGLElBQUksU0FBUyxFQUFFO2dCQUNYLE9BQU8sU0FBUyxDQUFDO2FBQ3BCO1NBQ0o7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDLENBQUE7QUFDTCxDQUFDO0FBWUQsTUFBTSxVQUFVLGtCQUFrQixDQUFDLEdBQUcsU0FBaUQ7SUFDbkYsTUFBTSxPQUFPLEdBQUcsYUFBYSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ3pDLE9BQU8sS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsRUFBRTtRQUN2RCxNQUFNLFdBQVcsR0FBRyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDdEMsS0FBSyxNQUFNLFVBQVUsSUFBSSxXQUFXLEVBQUU7WUFDbEMsTUFBTSxNQUFNLEdBQUcsVUFBVSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUM3QyxJQUFJLE1BQU0sRUFBRTtnQkFDUixPQUFPLFVBQVUsQ0FBQyxjQUFjLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsTUFBTSxDQUFDLENBQUM7YUFDckU7U0FDSjtRQUNELE9BQU8sS0FBSyxDQUFDO0lBQ2pCLENBQUMsQ0FBQTtBQUNMLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1R5cGV9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7XHJcbiAgICBEeW5hbWljRm9ybUNvbnRyb2xDb21wb25lbnQsXHJcbiAgICBEeW5hbWljRm9ybUNvbnRyb2xNb2RlbCxcclxuICAgIER5bmFtaWNGb3JtQ29udHJvbE1vZGVsQ29uZmlnXHJcbn0gZnJvbSBcIkBuZy1keW5hbWljLWZvcm1zL2NvcmVcIjtcclxuaW1wb3J0IHtDYWNoZWRQcm92aWRlciwgY2FjaGVkRmFjdG9yeSwgSU9wZW5BcGlTY2hlbWEsIElPcGVuQXBpU2NoZW1hUHJvcGVydHl9IGZyb20gXCJAc3RlbXkvbmd4LXV0aWxzXCI7XHJcblxyXG5pbXBvcnQge0Zvcm1Nb2RlbEN1c3RvbWl6ZXIsIEdldEZvcm1Db250cm9sQ29tcG9uZW50VHlwZSwgUHJvbWlzZU9yTm90fSBmcm9tIFwiLi4vY29tbW9uLXR5cGVzXCI7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIElGb3JtQ29tcG9uZW50Q3VzdG9taXplciB7XHJcbiAgICBhY2NlcHRNb2RlbChtb2RlbDogRHluYW1pY0Zvcm1Db250cm9sTW9kZWwpOiBib29sZWFuO1xyXG4gICAgZ2V0Rm9ybUNvbXBvbmVudChtb2RlbDogRHluYW1pY0Zvcm1Db250cm9sTW9kZWwpOiBUeXBlPER5bmFtaWNGb3JtQ29udHJvbENvbXBvbmVudD47XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBnZXRGb3JtQ29tcG9uZW50KC4uLnByb3ZpZGVyczogQ2FjaGVkUHJvdmlkZXI8SUZvcm1Db21wb25lbnRDdXN0b21pemVyPltdKTogR2V0Rm9ybUNvbnRyb2xDb21wb25lbnRUeXBlIHtcclxuICAgIGNvbnN0IGZhY3RvcnkgPSBjYWNoZWRGYWN0b3J5KHByb3ZpZGVycyk7XHJcbiAgICByZXR1cm4gKG1vZGVsLCBpbmplY3RvcikgPT4ge1xyXG4gICAgICAgIGNvbnN0IGN1c3RvbWl6ZXJzID0gZmFjdG9yeShpbmplY3Rvcik7XHJcbiAgICAgICAgZm9yIChjb25zdCBjdXN0b21pemVyIG9mIGN1c3RvbWl6ZXJzKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IGNvbXBvbmVudCA9IGN1c3RvbWl6ZXIuYWNjZXB0TW9kZWwobW9kZWwpID8gY3VzdG9taXplci5nZXRGb3JtQ29tcG9uZW50KG1vZGVsKSA6IG51bGw7XHJcbiAgICAgICAgICAgIGlmIChjb21wb25lbnQpIHtcclxuICAgICAgICAgICAgICAgIHJldHVybiBjb21wb25lbnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSUZvcm1Nb2RlbEN1c3RvbWl6ZXIge1xyXG4gICAgYWNjZXB0TW9kZWwobW9kZWw6IER5bmFtaWNGb3JtQ29udHJvbE1vZGVsKTogYm9vbGVhbjtcclxuICAgIGN1c3RvbWl6ZU1vZGVsKFxyXG4gICAgICAgIG1vZGVsOiBEeW5hbWljRm9ybUNvbnRyb2xNb2RlbCxcclxuICAgICAgICBjb25maWc6IER5bmFtaWNGb3JtQ29udHJvbE1vZGVsQ29uZmlnLFxyXG4gICAgICAgIHByb3BlcnR5OiBJT3BlbkFwaVNjaGVtYVByb3BlcnR5LFxyXG4gICAgICAgIHNjaGVtYTogSU9wZW5BcGlTY2hlbWFcclxuICAgICk6IFByb21pc2VPck5vdDxEeW5hbWljRm9ybUNvbnRyb2xNb2RlbCB8IER5bmFtaWNGb3JtQ29udHJvbE1vZGVsW10+O1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gY3VzdG9taXplRm9ybU1vZGVsKC4uLnByb3ZpZGVyczogQ2FjaGVkUHJvdmlkZXI8SUZvcm1Nb2RlbEN1c3RvbWl6ZXI+W10pOiBGb3JtTW9kZWxDdXN0b21pemVyIHtcclxuICAgIGNvbnN0IGZhY3RvcnkgPSBjYWNoZWRGYWN0b3J5KHByb3ZpZGVycyk7XHJcbiAgICByZXR1cm4gYXN5bmMgKHByb3BlcnR5LCBzY2hlbWEsIG1vZGVsLCBjb25maWcsIGluamVjdG9yKSA9PiB7XHJcbiAgICAgICAgY29uc3QgY3VzdG9taXplcnMgPSBmYWN0b3J5KGluamVjdG9yKTtcclxuICAgICAgICBmb3IgKGNvbnN0IGN1c3RvbWl6ZXIgb2YgY3VzdG9taXplcnMpIHtcclxuICAgICAgICAgICAgY29uc3QgYWNjZXB0ID0gY3VzdG9taXplci5hY2NlcHRNb2RlbChtb2RlbCk7XHJcbiAgICAgICAgICAgIGlmIChhY2NlcHQpIHtcclxuICAgICAgICAgICAgICAgIHJldHVybiBjdXN0b21pemVyLmN1c3RvbWl6ZU1vZGVsKG1vZGVsLCBjb25maWcsIHByb3BlcnR5LCBzY2hlbWEpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBtb2RlbDtcclxuICAgIH1cclxufVxyXG4iXX0=
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { __decorate } from "tslib";
|
|
2
|
-
import { DYNAMIC_FORM_CONTROL_TYPE_EDITOR, DynamicInputControlModel, serializable } from "@ng-dynamic-forms/core";
|
|
3
|
-
export class DynamicEditorModel extends DynamicInputControlModel {
|
|
4
|
-
constructor(config, layout) {
|
|
5
|
-
super(config, layout);
|
|
6
|
-
this.type = DYNAMIC_FORM_CONTROL_TYPE_EDITOR;
|
|
7
|
-
this.inputType = config.inputType || "javascript";
|
|
8
|
-
this.convertObject = config.convertObject !== false;
|
|
9
|
-
}
|
|
10
|
-
}
|
|
11
|
-
__decorate([
|
|
12
|
-
serializable()
|
|
13
|
-
], DynamicEditorModel.prototype, "type", void 0);
|
|
14
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1lZGl0b3IubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbmd4LWR5bmFtaWMtZm9ybS91dGlscy9keW5hbWljLWVkaXRvci5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUNILGdDQUFnQyxFQUVoQyx3QkFBd0IsRUFFeEIsWUFBWSxFQUNmLE1BQU0sd0JBQXdCLENBQUM7QUFPaEMsTUFBTSxPQUFPLGtCQUFtQixTQUFRLHdCQUF5QztJQU83RSxZQUFZLE1BQWdDLEVBQUUsTUFBaUM7UUFDM0UsS0FBSyxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsQ0FBQztRQU5ELFNBQUksR0FBVyxnQ0FBZ0MsQ0FBQztRQU9yRSxJQUFJLENBQUMsU0FBUyxHQUFHLE1BQU0sQ0FBQyxTQUFTLElBQUksWUFBWSxDQUFDO1FBQ2xELElBQUksQ0FBQyxhQUFhLEdBQUcsTUFBTSxDQUFDLGFBQWEsS0FBSyxLQUFLLENBQUM7SUFDeEQsQ0FBQztDQUNKO0FBVm1CO0lBQWYsWUFBWSxFQUFFO2dEQUEwRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgICBEWU5BTUlDX0ZPUk1fQ09OVFJPTF9UWVBFX0VESVRPUixcclxuICAgIER5bmFtaWNGb3JtQ29udHJvbExheW91dCxcclxuICAgIER5bmFtaWNJbnB1dENvbnRyb2xNb2RlbCxcclxuICAgIER5bmFtaWNJbnB1dENvbnRyb2xNb2RlbENvbmZpZyxcclxuICAgIHNlcmlhbGl6YWJsZVxyXG59IGZyb20gXCJAbmctZHluYW1pYy1mb3Jtcy9jb3JlXCI7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIER5bmFtaWNFZGl0b3JNb2RlbENvbmZpZyBleHRlbmRzIER5bmFtaWNJbnB1dENvbnRyb2xNb2RlbENvbmZpZzxzdHJpbmcgfCBPYmplY3Q+IHtcclxuICAgIGlucHV0VHlwZTogc3RyaW5nO1xyXG4gICAgY29udmVydE9iamVjdD86IGJvb2xlYW47XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBEeW5hbWljRWRpdG9yTW9kZWwgZXh0ZW5kcyBEeW5hbWljSW5wdXRDb250cm9sTW9kZWw8c3RyaW5nIHwgT2JqZWN0PiB7XHJcblxyXG4gICAgQHNlcmlhbGl6YWJsZSgpIHJlYWRvbmx5IHR5cGU6IHN0cmluZyA9IERZTkFNSUNfRk9STV9DT05UUk9MX1RZUEVfRURJVE9SO1xyXG5cclxuICAgIHJlYWRvbmx5IGlucHV0VHlwZTogc3RyaW5nO1xyXG4gICAgcmVhZG9ubHkgY29udmVydE9iamVjdDogYm9vbGVhbjtcclxuXHJcbiAgICBjb25zdHJ1Y3Rvcihjb25maWc6IER5bmFtaWNFZGl0b3JNb2RlbENvbmZpZywgbGF5b3V0PzogRHluYW1pY0Zvcm1Db250cm9sTGF5b3V0KSB7XHJcbiAgICAgICAgc3VwZXIoY29uZmlnLCBsYXlvdXQpO1xyXG4gICAgICAgIHRoaXMuaW5wdXRUeXBlID0gY29uZmlnLmlucHV0VHlwZSB8fCBcImphdmFzY3JpcHRcIjtcclxuICAgICAgICB0aGlzLmNvbnZlcnRPYmplY3QgPSBjb25maWcuY29udmVydE9iamVjdCAhPT0gZmFsc2U7XHJcbiAgICB9XHJcbn1cclxuIl19
|
|
@@ -1,128 +0,0 @@
|
|
|
1
|
-
import { BehaviorSubject } from "rxjs";
|
|
2
|
-
import { DynamicFormArrayGroupModel as GroupBase, DynamicFormArrayModel as Base } from "@ng-dynamic-forms/core";
|
|
3
|
-
import { ObjectUtils, TimerUtils } from "@stemy/ngx-utils";
|
|
4
|
-
export class DynamicFormArrayGroupModel extends GroupBase {
|
|
5
|
-
constructor(context, group, index = -1) {
|
|
6
|
-
super(context, group, index);
|
|
7
|
-
this.context = context;
|
|
8
|
-
this.isHidden = false;
|
|
9
|
-
}
|
|
10
|
-
get hidden() {
|
|
11
|
-
return this.isHidden;
|
|
12
|
-
}
|
|
13
|
-
set hidden(value) {
|
|
14
|
-
if (this.isHidden == value)
|
|
15
|
-
return;
|
|
16
|
-
this.isHidden = value || false;
|
|
17
|
-
this.context?.filterGroups();
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
export class DynamicFormArrayModel extends Base {
|
|
21
|
-
constructor(config, layout) {
|
|
22
|
-
super(config, layout);
|
|
23
|
-
this.config = config;
|
|
24
|
-
this.filteredGroups = new BehaviorSubject([]);
|
|
25
|
-
this.sortable = config.sortable || false;
|
|
26
|
-
this.useTabs = config.useTabs || false;
|
|
27
|
-
this.saveTab = ObjectUtils.isFunction(config.saveTab) ? config.saveTab : ((index, model, arrayModel) => {
|
|
28
|
-
arrayModel.tabIndex = index;
|
|
29
|
-
});
|
|
30
|
-
this.restoreTab = ObjectUtils.isFunction(config.restoreTab) ? config.restoreTab : ((model) => {
|
|
31
|
-
return model.tabIndex;
|
|
32
|
-
});
|
|
33
|
-
this.getTabLabel = ObjectUtils.isFunction(config.getTabLabel) ? config.getTabLabel : ((index) => {
|
|
34
|
-
return `${index + 1}`;
|
|
35
|
-
});
|
|
36
|
-
this.additional = config.additional || {};
|
|
37
|
-
this.tabIndex = 0;
|
|
38
|
-
this._sortBy = null;
|
|
39
|
-
this._sortDescending = false;
|
|
40
|
-
this._formArray = null;
|
|
41
|
-
}
|
|
42
|
-
get addItem() {
|
|
43
|
-
return this.config.addItem !== false;
|
|
44
|
-
}
|
|
45
|
-
get insertItem() {
|
|
46
|
-
return !this._sortBy && this.config.insertItem !== false;
|
|
47
|
-
}
|
|
48
|
-
get cloneItem() {
|
|
49
|
-
return this.config.cloneItem !== false;
|
|
50
|
-
}
|
|
51
|
-
get moveItem() {
|
|
52
|
-
return !this._sortBy && this.config.moveItem !== false;
|
|
53
|
-
}
|
|
54
|
-
get removeItem() {
|
|
55
|
-
return this.config.removeItem !== false;
|
|
56
|
-
}
|
|
57
|
-
get clearItems() {
|
|
58
|
-
return this.config.clearItems !== false;
|
|
59
|
-
}
|
|
60
|
-
get sortBy() {
|
|
61
|
-
return this._sortBy;
|
|
62
|
-
}
|
|
63
|
-
set sortBy(value) {
|
|
64
|
-
if (!this.sortable)
|
|
65
|
-
return;
|
|
66
|
-
value = value || null;
|
|
67
|
-
if (this._sortBy !== value) {
|
|
68
|
-
this._sortBy = value;
|
|
69
|
-
this._sortDescending = false;
|
|
70
|
-
}
|
|
71
|
-
else if (this._sortDescending) {
|
|
72
|
-
this._sortBy = null;
|
|
73
|
-
this._sortDescending = false;
|
|
74
|
-
}
|
|
75
|
-
else {
|
|
76
|
-
this._sortDescending = true;
|
|
77
|
-
}
|
|
78
|
-
this.filterGroups();
|
|
79
|
-
}
|
|
80
|
-
get sortDescending() {
|
|
81
|
-
return this._sortDescending;
|
|
82
|
-
}
|
|
83
|
-
get sortOrder() {
|
|
84
|
-
return this.sortDescending ? "desc" : "asc";
|
|
85
|
-
}
|
|
86
|
-
initialize(array) {
|
|
87
|
-
this._formArray = array || this._formArray;
|
|
88
|
-
this.filterGroups();
|
|
89
|
-
}
|
|
90
|
-
filterGroups() {
|
|
91
|
-
this._filterTimer = this._filterTimer || TimerUtils.createTimeout();
|
|
92
|
-
this._filterTimer.set(() => {
|
|
93
|
-
const filtered = this.groups.filter(g => !g.hidden);
|
|
94
|
-
if (this._sortBy && this._formArray) {
|
|
95
|
-
const compare = this._sortDescending
|
|
96
|
-
? (a, b) => this.compareModels(b, a)
|
|
97
|
-
: (a, b) => this.compareModels(a, b);
|
|
98
|
-
filtered.sort(compare);
|
|
99
|
-
}
|
|
100
|
-
this._filteredGroups = filtered;
|
|
101
|
-
this.filteredGroups.next(filtered);
|
|
102
|
-
}, 100);
|
|
103
|
-
}
|
|
104
|
-
getFiltered(index) {
|
|
105
|
-
return !this._filteredGroups ? null : this._filteredGroups[index];
|
|
106
|
-
}
|
|
107
|
-
insertGroup(index) {
|
|
108
|
-
const group = new DynamicFormArrayGroupModel(this, this.groupFactory());
|
|
109
|
-
this.groups.splice(index, 0, group);
|
|
110
|
-
this.groups.forEach((g, index) => g.index = index);
|
|
111
|
-
this.filterGroups();
|
|
112
|
-
return group;
|
|
113
|
-
}
|
|
114
|
-
moveGroup(index, step) {
|
|
115
|
-
super.moveGroup(index, step);
|
|
116
|
-
this.filterGroups();
|
|
117
|
-
}
|
|
118
|
-
removeGroup(index) {
|
|
119
|
-
super.removeGroup(index);
|
|
120
|
-
this.filterGroups();
|
|
121
|
-
}
|
|
122
|
-
compareModels(a, b) {
|
|
123
|
-
const aGroup = this._formArray.at(a.index).get(this._sortBy)?.value || null;
|
|
124
|
-
const bGroup = this._formArray.at(b.index).get(this._sortBy)?.value || null;
|
|
125
|
-
return ObjectUtils.compare(aGroup, bGroup);
|
|
126
|
-
}
|
|
127
|
-
}
|
|
128
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1mb3JtLWFycmF5Lm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL25neC1keW5hbWljLWZvcm0vdXRpbHMvZHluYW1pYy1mb3JtLWFycmF5Lm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDckMsT0FBTyxFQUNILDBCQUEwQixJQUFJLFNBQVMsRUFDdkMscUJBQXFCLElBQUksSUFBSSxFQUloQyxNQUFNLHdCQUF3QixDQUFDO0FBQ2hDLE9BQU8sRUFBUyxXQUFXLEVBQUUsVUFBVSxFQUFDLE1BQU0sa0JBQWtCLENBQUM7QUFNakUsTUFBTSxPQUFPLDBCQUEyQixTQUFRLFNBQVM7SUFjckQsWUFBcUIsT0FBOEIsRUFBRSxLQUF1QixFQUFFLFFBQWdCLENBQUMsQ0FBQztRQUM1RixLQUFLLENBQUMsT0FBTyxFQUFFLEtBQUssRUFBRSxLQUFLLENBQUMsQ0FBQztRQURaLFlBQU8sR0FBUCxPQUFPLENBQXVCO1FBRS9DLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO0lBQzFCLENBQUM7SUFmRCxJQUFJLE1BQU07UUFDTixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDekIsQ0FBQztJQUVELElBQUksTUFBTSxDQUFDLEtBQWM7UUFDckIsSUFBSSxJQUFJLENBQUMsUUFBUSxJQUFJLEtBQUs7WUFBRSxPQUFPO1FBQ25DLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxJQUFJLEtBQUssQ0FBQztRQUMvQixJQUFJLENBQUMsT0FBTyxFQUFFLFlBQVksRUFBRSxDQUFDO0lBQ2pDLENBQUM7Q0FRSjtBQW9CRCxNQUFNLE9BQU8scUJBQXNCLFNBQVEsSUFBSTtJQXNFM0MsWUFBc0IsTUFBbUMsRUFBRSxNQUFpQztRQUN4RixLQUFLLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBREosV0FBTSxHQUFOLE1BQU0sQ0FBNkI7UUFFckQsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLGVBQWUsQ0FBNEMsRUFBRSxDQUFDLENBQUM7UUFDekYsSUFBSSxDQUFDLFFBQVEsR0FBRyxNQUFNLENBQUMsUUFBUSxJQUFJLEtBQUssQ0FBQztRQUN6QyxJQUFJLENBQUMsT0FBTyxHQUFHLE1BQU0sQ0FBQyxPQUFPLElBQUksS0FBSyxDQUFDO1FBQ3ZDLElBQUksQ0FBQyxPQUFPLEdBQUcsV0FBVyxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxFQUFFO1lBQ25HLFVBQVUsQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ2hDLENBQUMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLFVBQVUsR0FBRyxXQUFXLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQ3pGLE9BQU8sS0FBSyxDQUFDLFFBQVEsQ0FBQztRQUMxQixDQUFDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtZQUM1RixPQUFPLEdBQUcsS0FBSyxHQUFHLENBQUMsRUFBRSxDQUFDO1FBQzFCLENBQUMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLFVBQVUsR0FBRyxNQUFNLENBQUMsVUFBVSxJQUFJLEVBQUUsQ0FBQztRQUMxQyxJQUFJLENBQUMsUUFBUSxHQUFHLENBQUMsQ0FBQztRQUNsQixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztRQUNwQixJQUFJLENBQUMsZUFBZSxHQUFHLEtBQUssQ0FBQztRQUM3QixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQztJQUMzQixDQUFDO0lBdEVELElBQUksT0FBTztRQUNQLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLEtBQUssS0FBSyxDQUFDO0lBQ3pDLENBQUM7SUFFRCxJQUFJLFVBQVU7UUFDVixPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLFVBQVUsS0FBSyxLQUFLLENBQUM7SUFDN0QsQ0FBQztJQUVELElBQUksU0FBUztRQUNULE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLEtBQUssS0FBSyxDQUFDO0lBQzNDLENBQUM7SUFFRCxJQUFJLFFBQVE7UUFDUixPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsS0FBSyxLQUFLLENBQUM7SUFDM0QsQ0FBQztJQUVELElBQUksVUFBVTtRQUNWLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLEtBQUssS0FBSyxDQUFDO0lBQzVDLENBQUM7SUFFRCxJQUFJLFVBQVU7UUFDVixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxLQUFLLEtBQUssQ0FBQztJQUM1QyxDQUFDO0lBRUQsSUFBSSxNQUFNO1FBQ04sT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQ3hCLENBQUM7SUFFRCxJQUFJLE1BQU0sQ0FBQyxLQUFhO1FBQ3BCLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUTtZQUFFLE9BQU87UUFDM0IsS0FBSyxHQUFHLEtBQUssSUFBSSxJQUFJLENBQUM7UUFDdEIsSUFBSSxJQUFJLENBQUMsT0FBTyxLQUFLLEtBQUssRUFBRTtZQUN4QixJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztZQUNyQixJQUFJLENBQUMsZUFBZSxHQUFHLEtBQUssQ0FBQztTQUNoQzthQUFNLElBQUksSUFBSSxDQUFDLGVBQWUsRUFBRTtZQUM3QixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztZQUNwQixJQUFJLENBQUMsZUFBZSxHQUFHLEtBQUssQ0FBQztTQUNoQzthQUFNO1lBQ0gsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUM7U0FDL0I7UUFDRCxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDeEIsQ0FBQztJQUVELElBQUksY0FBYztRQUNkLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQztJQUNoQyxDQUFDO0lBRUQsSUFBSSxTQUFTO1FBQ1QsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztJQUNoRCxDQUFDO0lBdUJELFVBQVUsQ0FBQyxLQUFpQjtRQUN4QixJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDO1FBQzNDLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBRUQsWUFBWTtRQUNSLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLFlBQVksSUFBSSxVQUFVLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDcEUsSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFO1lBQ3ZCLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDcEQsSUFBSSxJQUFJLENBQUMsT0FBTyxJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUU7Z0JBQ2pDLE1BQU0sT0FBTyxHQUErQixJQUFJLENBQUMsZUFBZTtvQkFDNUQsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO29CQUNwQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztnQkFDekMsUUFBUSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQzthQUMxQjtZQUNELElBQUksQ0FBQyxlQUFlLEdBQUcsUUFBUSxDQUFDO1lBQ2hDLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3ZDLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQztJQUNaLENBQUM7SUFFRCxXQUFXLENBQUMsS0FBYTtRQUNyQixPQUFPLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3RFLENBQUM7SUFFRCxXQUFXLENBQUMsS0FBYTtRQUNyQixNQUFNLEtBQUssR0FBRyxJQUFJLDBCQUEwQixDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUMsQ0FBQztRQUN4RSxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ3BDLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQztRQUNuRCxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDcEIsT0FBTyxLQUFLLENBQUM7SUFDakIsQ0FBQztJQUVELFNBQVMsQ0FBQyxLQUFhLEVBQUUsSUFBWTtRQUNqQyxLQUFLLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQztRQUM3QixJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDeEIsQ0FBQztJQUVELFdBQVcsQ0FBQyxLQUFhO1FBQ3JCLEtBQUssQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDekIsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3hCLENBQUM7SUFFUyxhQUFhLENBQUMsQ0FBNkIsRUFBRSxDQUE2QjtRQUNoRixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsRUFBRSxLQUFLLElBQUksSUFBSSxDQUFDO1FBQzVFLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxFQUFFLEtBQUssSUFBSSxJQUFJLENBQUM7UUFDNUUsT0FBTyxXQUFXLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsQ0FBQztJQUMvQyxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NoYW5nZURldGVjdG9yUmVmLCBJbmplY3Rvcn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHtGb3JtQXJyYXl9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xyXG5pbXBvcnQge0JlaGF2aW9yU3ViamVjdH0gZnJvbSBcInJ4anNcIjtcclxuaW1wb3J0IHtcclxuICAgIER5bmFtaWNGb3JtQXJyYXlHcm91cE1vZGVsIGFzIEdyb3VwQmFzZSxcclxuICAgIER5bmFtaWNGb3JtQXJyYXlNb2RlbCBhcyBCYXNlLFxyXG4gICAgRHluYW1pY0Zvcm1BcnJheU1vZGVsQ29uZmlnIGFzIENvbmZpZ0Jhc2UsXHJcbiAgICBEeW5hbWljRm9ybUNvbnRyb2xMYXlvdXQsXHJcbiAgICBEeW5hbWljRm9ybU1vZGVsXHJcbn0gZnJvbSBcIkBuZy1keW5hbWljLWZvcm1zL2NvcmVcIjtcclxuaW1wb3J0IHtJVGltZXIsIE9iamVjdFV0aWxzLCBUaW1lclV0aWxzfSBmcm9tIFwiQHN0ZW15L25neC11dGlsc1wiO1xyXG5cclxuZXhwb3J0IHR5cGUgU2F2ZVRhYkZ1bmMgPSAoaW5kZXg6IG51bWJlciwgbW9kZWw6IER5bmFtaWNGb3JtQXJyYXlHcm91cE1vZGVsLCBhcnJheU1vZGVsOiBEeW5hbWljRm9ybUFycmF5TW9kZWwsIGluamVjdG9yOiBJbmplY3RvcikgPT4gdm9pZDtcclxuZXhwb3J0IHR5cGUgUmVzdG9yZVRhYkZ1bmMgPSAoYXJyYXlNb2RlbDogRHluYW1pY0Zvcm1BcnJheU1vZGVsLCBpbmplY3RvcjogSW5qZWN0b3IpID0+IG51bWJlcjtcclxuZXhwb3J0IHR5cGUgVGFiTGFiZWxGdW5jID0gKGluZGV4OiBudW1iZXIsIG1vZGVsOiBEeW5hbWljRm9ybUFycmF5R3JvdXBNb2RlbCwgYXJyYXlNb2RlbDogRHluYW1pY0Zvcm1BcnJheU1vZGVsLCBhcnJheTogRm9ybUFycmF5LCBpbmplY3RvcjogSW5qZWN0b3IpID0+IHN0cmluZztcclxuXHJcbmV4cG9ydCBjbGFzcyBEeW5hbWljRm9ybUFycmF5R3JvdXBNb2RlbCBleHRlbmRzIEdyb3VwQmFzZSB7XHJcblxyXG4gICAgZ2V0IGhpZGRlbigpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5pc0hpZGRlbjtcclxuICAgIH1cclxuXHJcbiAgICBzZXQgaGlkZGVuKHZhbHVlOiBib29sZWFuKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuaXNIaWRkZW4gPT0gdmFsdWUpIHJldHVybjtcclxuICAgICAgICB0aGlzLmlzSGlkZGVuID0gdmFsdWUgfHwgZmFsc2U7XHJcbiAgICAgICAgdGhpcy5jb250ZXh0Py5maWx0ZXJHcm91cHMoKTtcclxuICAgIH1cclxuXHJcbiAgICBwcm90ZWN0ZWQgaXNIaWRkZW46IGJvb2xlYW47XHJcblxyXG4gICAgY29uc3RydWN0b3IocmVhZG9ubHkgY29udGV4dDogRHluYW1pY0Zvcm1BcnJheU1vZGVsLCBncm91cDogRHluYW1pY0Zvcm1Nb2RlbCwgaW5kZXg6IG51bWJlciA9IC0xKSB7XHJcbiAgICAgICAgc3VwZXIoY29udGV4dCwgZ3JvdXAsIGluZGV4KTtcclxuICAgICAgICB0aGlzLmlzSGlkZGVuID0gZmFsc2U7XHJcbiAgICB9XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgRHluYW1pY0Zvcm1BcnJheU1vZGVsQ29uZmlnIGV4dGVuZHMgQ29uZmlnQmFzZSB7XHJcblxyXG4gICAgZ3JvdXBzPzogRHluYW1pY0Zvcm1BcnJheUdyb3VwTW9kZWxbXSB8IG51bGw7XHJcbiAgICBzb3J0YWJsZT86IGJvb2xlYW47XHJcbiAgICB1c2VUYWJzPzogYm9vbGVhbjtcclxuICAgIHNhdmVUYWI/OiBTYXZlVGFiRnVuYztcclxuICAgIHJlc3RvcmVUYWI/OiBSZXN0b3JlVGFiRnVuYztcclxuICAgIGdldFRhYkxhYmVsPzogVGFiTGFiZWxGdW5jO1xyXG4gICAgYWRkaXRpb25hbD86IHsgW2tleTogc3RyaW5nXTogYW55IH07XHJcblxyXG4gICAgYWRkSXRlbT86IGJvb2xlYW47XHJcbiAgICBpbnNlcnRJdGVtPzogYm9vbGVhbjtcclxuICAgIGNsb25lSXRlbT86IGJvb2xlYW47XHJcbiAgICBtb3ZlSXRlbT86IGJvb2xlYW47XHJcbiAgICByZW1vdmVJdGVtPzogYm9vbGVhbjtcclxuICAgIGNsZWFySXRlbXM/OiBib29sZWFuO1xyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgRHluYW1pY0Zvcm1BcnJheU1vZGVsIGV4dGVuZHMgQmFzZSB7XHJcblxyXG4gICAgcmVhZG9ubHkgZmlsdGVyZWRHcm91cHM6IEJlaGF2aW9yU3ViamVjdDxSZWFkb25seUFycmF5PER5bmFtaWNGb3JtQXJyYXlHcm91cE1vZGVsPj47XHJcbiAgICByZWFkb25seSBzb3J0YWJsZTogYm9vbGVhbjtcclxuICAgIHJlYWRvbmx5IHVzZVRhYnM6IGJvb2xlYW47XHJcbiAgICByZWFkb25seSBzYXZlVGFiOiBTYXZlVGFiRnVuYztcclxuICAgIHJlYWRvbmx5IHJlc3RvcmVUYWI6IFJlc3RvcmVUYWJGdW5jO1xyXG4gICAgcmVhZG9ubHkgZ2V0VGFiTGFiZWw6IFRhYkxhYmVsRnVuYztcclxuICAgIHJlYWRvbmx5IGFkZGl0aW9uYWw6IHsgW2tleTogc3RyaW5nXTogYW55IH07XHJcblxyXG4gICAgZ3JvdXBzOiBEeW5hbWljRm9ybUFycmF5R3JvdXBNb2RlbFtdO1xyXG4gICAgdGFiSW5kZXg6IG51bWJlclxyXG5cclxuICAgIHByb3RlY3RlZCBfc29ydEJ5OiBzdHJpbmc7XHJcbiAgICBwcm90ZWN0ZWQgX3NvcnREZXNjZW5kaW5nOiBib29sZWFuO1xyXG4gICAgcHJvdGVjdGVkIF9mb3JtQXJyYXk6IEZvcm1BcnJheTtcclxuICAgIHByb3RlY3RlZCBfZmlsdGVyZWRHcm91cHM6IFJlYWRvbmx5QXJyYXk8RHluYW1pY0Zvcm1BcnJheUdyb3VwTW9kZWw+O1xyXG4gICAgcHJvdGVjdGVkIF9maWx0ZXJUaW1lcjogSVRpbWVyO1xyXG5cclxuICAgIGdldCBhZGRJdGVtKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmNvbmZpZy5hZGRJdGVtICE9PSBmYWxzZTtcclxuICAgIH1cclxuXHJcbiAgICBnZXQgaW5zZXJ0SXRlbSgpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gIXRoaXMuX3NvcnRCeSAmJiB0aGlzLmNvbmZpZy5pbnNlcnRJdGVtICE9PSBmYWxzZTtcclxuICAgIH1cclxuXHJcbiAgICBnZXQgY2xvbmVJdGVtKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmNvbmZpZy5jbG9uZUl0ZW0gIT09IGZhbHNlO1xyXG4gICAgfVxyXG5cclxuICAgIGdldCBtb3ZlSXRlbSgpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gIXRoaXMuX3NvcnRCeSAmJiB0aGlzLmNvbmZpZy5tb3ZlSXRlbSAhPT0gZmFsc2U7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0IHJlbW92ZUl0ZW0oKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuY29uZmlnLnJlbW92ZUl0ZW0gIT09IGZhbHNlO1xyXG4gICAgfVxyXG5cclxuICAgIGdldCBjbGVhckl0ZW1zKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmNvbmZpZy5jbGVhckl0ZW1zICE9PSBmYWxzZTtcclxuICAgIH1cclxuXHJcbiAgICBnZXQgc29ydEJ5KCk6IHN0cmluZyB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX3NvcnRCeTtcclxuICAgIH1cclxuXHJcbiAgICBzZXQgc29ydEJ5KHZhbHVlOiBzdHJpbmcpIHtcclxuICAgICAgICBpZiAoIXRoaXMuc29ydGFibGUpIHJldHVybjtcclxuICAgICAgICB2YWx1ZSA9IHZhbHVlIHx8IG51bGw7XHJcbiAgICAgICAgaWYgKHRoaXMuX3NvcnRCeSAhPT0gdmFsdWUpIHtcclxuICAgICAgICAgICAgdGhpcy5fc29ydEJ5ID0gdmFsdWU7XHJcbiAgICAgICAgICAgIHRoaXMuX3NvcnREZXNjZW5kaW5nID0gZmFsc2U7XHJcbiAgICAgICAgfSBlbHNlIGlmICh0aGlzLl9zb3J0RGVzY2VuZGluZykge1xyXG4gICAgICAgICAgICB0aGlzLl9zb3J0QnkgPSBudWxsO1xyXG4gICAgICAgICAgICB0aGlzLl9zb3J0RGVzY2VuZGluZyA9IGZhbHNlO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHRoaXMuX3NvcnREZXNjZW5kaW5nID0gdHJ1ZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5maWx0ZXJHcm91cHMoKTtcclxuICAgIH1cclxuXHJcbiAgICBnZXQgc29ydERlc2NlbmRpbmcoKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX3NvcnREZXNjZW5kaW5nO1xyXG4gICAgfVxyXG5cclxuICAgIGdldCBzb3J0T3JkZXIoKTogc3RyaW5nIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5zb3J0RGVzY2VuZGluZyA/IFwiZGVzY1wiIDogXCJhc2NcIjtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgY29uZmlnOiBEeW5hbWljRm9ybUFycmF5TW9kZWxDb25maWcsIGxheW91dD86IER5bmFtaWNGb3JtQ29udHJvbExheW91dCkge1xyXG4gICAgICAgIHN1cGVyKGNvbmZpZywgbGF5b3V0KTtcclxuICAgICAgICB0aGlzLmZpbHRlcmVkR3JvdXBzID0gbmV3IEJlaGF2aW9yU3ViamVjdDxSZWFkb25seUFycmF5PER5bmFtaWNGb3JtQXJyYXlHcm91cE1vZGVsPj4oW10pO1xyXG4gICAgICAgIHRoaXMuc29ydGFibGUgPSBjb25maWcuc29ydGFibGUgfHwgZmFsc2U7XHJcbiAgICAgICAgdGhpcy51c2VUYWJzID0gY29uZmlnLnVzZVRhYnMgfHwgZmFsc2U7XHJcbiAgICAgICAgdGhpcy5zYXZlVGFiID0gT2JqZWN0VXRpbHMuaXNGdW5jdGlvbihjb25maWcuc2F2ZVRhYikgPyBjb25maWcuc2F2ZVRhYiA6ICgoaW5kZXgsIG1vZGVsLCBhcnJheU1vZGVsKSA9PiB7XHJcbiAgICAgICAgICAgIGFycmF5TW9kZWwudGFiSW5kZXggPSBpbmRleDtcclxuICAgICAgICB9KTtcclxuICAgICAgICB0aGlzLnJlc3RvcmVUYWIgPSBPYmplY3RVdGlscy5pc0Z1bmN0aW9uKGNvbmZpZy5yZXN0b3JlVGFiKSA/IGNvbmZpZy5yZXN0b3JlVGFiIDogKChtb2RlbCkgPT4ge1xyXG4gICAgICAgICAgICByZXR1cm4gbW9kZWwudGFiSW5kZXg7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgdGhpcy5nZXRUYWJMYWJlbCA9IE9iamVjdFV0aWxzLmlzRnVuY3Rpb24oY29uZmlnLmdldFRhYkxhYmVsKSA/IGNvbmZpZy5nZXRUYWJMYWJlbCA6ICgoaW5kZXgpID0+IHtcclxuICAgICAgICAgICAgcmV0dXJuIGAke2luZGV4ICsgMX1gO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHRoaXMuYWRkaXRpb25hbCA9IGNvbmZpZy5hZGRpdGlvbmFsIHx8IHt9O1xyXG4gICAgICAgIHRoaXMudGFiSW5kZXggPSAwO1xyXG4gICAgICAgIHRoaXMuX3NvcnRCeSA9IG51bGw7XHJcbiAgICAgICAgdGhpcy5fc29ydERlc2NlbmRpbmcgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLl9mb3JtQXJyYXkgPSBudWxsO1xyXG4gICAgfVxyXG5cclxuICAgIGluaXRpYWxpemUoYXJyYXk/OiBGb3JtQXJyYXkpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLl9mb3JtQXJyYXkgPSBhcnJheSB8fCB0aGlzLl9mb3JtQXJyYXk7XHJcbiAgICAgICAgdGhpcy5maWx0ZXJHcm91cHMoKTtcclxuICAgIH1cclxuXHJcbiAgICBmaWx0ZXJHcm91cHMoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5fZmlsdGVyVGltZXIgPSB0aGlzLl9maWx0ZXJUaW1lciB8fCBUaW1lclV0aWxzLmNyZWF0ZVRpbWVvdXQoKTtcclxuICAgICAgICB0aGlzLl9maWx0ZXJUaW1lci5zZXQoKCkgPT4ge1xyXG4gICAgICAgICAgICBjb25zdCBmaWx0ZXJlZCA9IHRoaXMuZ3JvdXBzLmZpbHRlcihnID0+ICFnLmhpZGRlbik7XHJcbiAgICAgICAgICAgIGlmICh0aGlzLl9zb3J0QnkgJiYgdGhpcy5fZm9ybUFycmF5KSB7XHJcbiAgICAgICAgICAgICAgICBjb25zdCBjb21wYXJlOiAoYTogYW55LCBiOiBhbnkpID0+IG51bWJlciA9IHRoaXMuX3NvcnREZXNjZW5kaW5nXHJcbiAgICAgICAgICAgICAgICAgICAgPyAoYSwgYikgPT4gdGhpcy5jb21wYXJlTW9kZWxzKGIsIGEpXHJcbiAgICAgICAgICAgICAgICAgICAgOiAoYSwgYikgPT4gdGhpcy5jb21wYXJlTW9kZWxzKGEsIGIpO1xyXG4gICAgICAgICAgICAgICAgZmlsdGVyZWQuc29ydChjb21wYXJlKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB0aGlzLl9maWx0ZXJlZEdyb3VwcyA9IGZpbHRlcmVkO1xyXG4gICAgICAgICAgICB0aGlzLmZpbHRlcmVkR3JvdXBzLm5leHQoZmlsdGVyZWQpO1xyXG4gICAgICAgIH0sIDEwMCk7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0RmlsdGVyZWQoaW5kZXg6IG51bWJlcik6IER5bmFtaWNGb3JtQXJyYXlHcm91cE1vZGVsIHtcclxuICAgICAgICByZXR1cm4gIXRoaXMuX2ZpbHRlcmVkR3JvdXBzID8gbnVsbCA6IHRoaXMuX2ZpbHRlcmVkR3JvdXBzW2luZGV4XTtcclxuICAgIH1cclxuXHJcbiAgICBpbnNlcnRHcm91cChpbmRleDogbnVtYmVyKTogRHluYW1pY0Zvcm1BcnJheUdyb3VwTW9kZWwge1xyXG4gICAgICAgIGNvbnN0IGdyb3VwID0gbmV3IER5bmFtaWNGb3JtQXJyYXlHcm91cE1vZGVsKHRoaXMsIHRoaXMuZ3JvdXBGYWN0b3J5KCkpO1xyXG4gICAgICAgIHRoaXMuZ3JvdXBzLnNwbGljZShpbmRleCwgMCwgZ3JvdXApO1xyXG4gICAgICAgIHRoaXMuZ3JvdXBzLmZvckVhY2goKGcsIGluZGV4KSA9PiBnLmluZGV4ID0gaW5kZXgpO1xyXG4gICAgICAgIHRoaXMuZmlsdGVyR3JvdXBzKCk7XHJcbiAgICAgICAgcmV0dXJuIGdyb3VwO1xyXG4gICAgfVxyXG5cclxuICAgIG1vdmVHcm91cChpbmRleDogbnVtYmVyLCBzdGVwOiBudW1iZXIpOiB2b2lkIHtcclxuICAgICAgICBzdXBlci5tb3ZlR3JvdXAoaW5kZXgsIHN0ZXApO1xyXG4gICAgICAgIHRoaXMuZmlsdGVyR3JvdXBzKCk7XHJcbiAgICB9XHJcblxyXG4gICAgcmVtb3ZlR3JvdXAoaW5kZXg6IG51bWJlcik6IHZvaWQge1xyXG4gICAgICAgIHN1cGVyLnJlbW92ZUdyb3VwKGluZGV4KTtcclxuICAgICAgICB0aGlzLmZpbHRlckdyb3VwcygpO1xyXG4gICAgfVxyXG5cclxuICAgIHByb3RlY3RlZCBjb21wYXJlTW9kZWxzKGE6IER5bmFtaWNGb3JtQXJyYXlHcm91cE1vZGVsLCBiOiBEeW5hbWljRm9ybUFycmF5R3JvdXBNb2RlbCk6IG51bWJlciB7XHJcbiAgICAgICAgY29uc3QgYUdyb3VwID0gdGhpcy5fZm9ybUFycmF5LmF0KGEuaW5kZXgpLmdldCh0aGlzLl9zb3J0QnkpPy52YWx1ZSB8fCBudWxsO1xyXG4gICAgICAgIGNvbnN0IGJHcm91cCA9IHRoaXMuX2Zvcm1BcnJheS5hdChiLmluZGV4KS5nZXQodGhpcy5fc29ydEJ5KT8udmFsdWUgfHwgbnVsbDtcclxuICAgICAgICByZXR1cm4gT2JqZWN0VXRpbHMuY29tcGFyZShhR3JvdXAsIGJHcm91cCk7XHJcbiAgICB9XHJcbn1cclxuIl19
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
import { DynamicFormGroupModel as Base, } from "@ng-dynamic-forms/core";
|
|
2
|
-
export class DynamicFormGroupModel extends Base {
|
|
3
|
-
constructor(config, layout) {
|
|
4
|
-
super(config, layout);
|
|
5
|
-
const controls = [...config.group];
|
|
6
|
-
const groups = [];
|
|
7
|
-
const sets = config.fieldSets || [];
|
|
8
|
-
for (const fs of sets) {
|
|
9
|
-
const fields = [];
|
|
10
|
-
for (const f of fs.fields) {
|
|
11
|
-
const ix = controls.findIndex(c => c.id === f);
|
|
12
|
-
if (ix < 0)
|
|
13
|
-
continue;
|
|
14
|
-
fields.push(controls.splice(ix, 1)[0]);
|
|
15
|
-
}
|
|
16
|
-
if (fields.length === 0)
|
|
17
|
-
continue;
|
|
18
|
-
groups.push({ id: fs.id, legend: fs.legend, fields });
|
|
19
|
-
}
|
|
20
|
-
if (controls.length > 0) {
|
|
21
|
-
groups.unshift({ id: "root-controls", legend: config.legend, fields: controls });
|
|
22
|
-
}
|
|
23
|
-
this.groups = groups;
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1mb3JtLWdyb3VwLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL25neC1keW5hbWljLWZvcm0vdXRpbHMvZHluYW1pYy1mb3JtLWdyb3VwLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFHSCxxQkFBcUIsSUFBSSxJQUFJLEdBRWhDLE1BQU0sd0JBQXdCLENBQUM7QUFjaEMsTUFBTSxPQUFPLHFCQUFzQixTQUFRLElBQUk7SUFJM0MsWUFBWSxNQUFtQyxFQUFFLE1BQWlDO1FBQzlFLEtBQUssQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDdEIsTUFBTSxRQUFRLEdBQUcsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNuQyxNQUFNLE1BQU0sR0FBbUQsRUFBRSxDQUFDO1FBQ2xFLE1BQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxTQUFTLElBQUksRUFBRSxDQUFDO1FBQ3BDLEtBQUssTUFBTSxFQUFFLElBQUksSUFBSSxFQUFFO1lBQ25CLE1BQU0sTUFBTSxHQUE4QixFQUFFLENBQUM7WUFDN0MsS0FBSyxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUMsTUFBTSxFQUFFO2dCQUN2QixNQUFNLEVBQUUsR0FBRyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQztnQkFDL0MsSUFBSSxFQUFFLEdBQUcsQ0FBQztvQkFBRSxTQUFTO2dCQUNyQixNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDMUM7WUFDRCxJQUFJLE1BQU0sQ0FBQyxNQUFNLEtBQUssQ0FBQztnQkFBRSxTQUFTO1lBQ2xDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsRUFBRSxNQUFNLEVBQUUsRUFBRSxDQUFDLE1BQU0sRUFBRSxNQUFNLEVBQUMsQ0FBQyxDQUFDO1NBQ3ZEO1FBQ0QsSUFBSSxRQUFRLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtZQUNyQixNQUFNLENBQUMsT0FBTyxDQUFDLEVBQUMsRUFBRSxFQUFFLGVBQWUsRUFBRSxNQUFNLEVBQUUsTUFBTSxDQUFDLE1BQU0sRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFDLENBQUMsQ0FBQztTQUNsRjtRQUNELElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO0lBQ3pCLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgICBEeW5hbWljRm9ybUNvbnRyb2xMYXlvdXQsXHJcbiAgICBEeW5hbWljRm9ybUNvbnRyb2xNb2RlbCxcclxuICAgIER5bmFtaWNGb3JtR3JvdXBNb2RlbCBhcyBCYXNlLFxyXG4gICAgRHluYW1pY0Zvcm1Hcm91cE1vZGVsQ29uZmlnIGFzIEJhc2VDb25maWcsXHJcbn0gZnJvbSBcIkBuZy1keW5hbWljLWZvcm1zL2NvcmVcIjtcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgRHluYW1pY0Zvcm1GaWVsZFNldDxUPiB7XHJcbiAgICBpZDogc3RyaW5nO1xyXG4gICAgbGVnZW5kOiBzdHJpbmc7XHJcbiAgICBmaWVsZHM6IFRbXTtcclxufVxyXG5cclxuZXhwb3J0IHR5cGUgRHluYW1pY0Zvcm1GaWVsZFNldHM8VD4gPSBSZWFkb25seUFycmF5PER5bmFtaWNGb3JtRmllbGRTZXQ8VD4+O1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBEeW5hbWljRm9ybUdyb3VwTW9kZWxDb25maWcgZXh0ZW5kcyBCYXNlQ29uZmlnIHtcclxuICAgIGZpZWxkU2V0cz86IER5bmFtaWNGb3JtRmllbGRTZXRzPHN0cmluZz47XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBEeW5hbWljRm9ybUdyb3VwTW9kZWwgZXh0ZW5kcyBCYXNlIHtcclxuXHJcbiAgICByZWFkb25seSBncm91cHM6IER5bmFtaWNGb3JtRmllbGRTZXRzPER5bmFtaWNGb3JtQ29udHJvbE1vZGVsPjtcclxuXHJcbiAgICBjb25zdHJ1Y3Rvcihjb25maWc6IER5bmFtaWNGb3JtR3JvdXBNb2RlbENvbmZpZywgbGF5b3V0PzogRHluYW1pY0Zvcm1Db250cm9sTGF5b3V0KSB7XHJcbiAgICAgICAgc3VwZXIoY29uZmlnLCBsYXlvdXQpO1xyXG4gICAgICAgIGNvbnN0IGNvbnRyb2xzID0gWy4uLmNvbmZpZy5ncm91cF07XHJcbiAgICAgICAgY29uc3QgZ3JvdXBzOiBEeW5hbWljRm9ybUZpZWxkU2V0PER5bmFtaWNGb3JtQ29udHJvbE1vZGVsPltdID0gW107XHJcbiAgICAgICAgY29uc3Qgc2V0cyA9IGNvbmZpZy5maWVsZFNldHMgfHwgW107XHJcbiAgICAgICAgZm9yIChjb25zdCBmcyBvZiBzZXRzKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IGZpZWxkczogRHluYW1pY0Zvcm1Db250cm9sTW9kZWxbXSA9IFtdO1xyXG4gICAgICAgICAgICBmb3IgKGNvbnN0IGYgb2YgZnMuZmllbGRzKSB7XHJcbiAgICAgICAgICAgICAgICBjb25zdCBpeCA9IGNvbnRyb2xzLmZpbmRJbmRleChjID0+IGMuaWQgPT09IGYpO1xyXG4gICAgICAgICAgICAgICAgaWYgKGl4IDwgMCkgY29udGludWU7XHJcbiAgICAgICAgICAgICAgICBmaWVsZHMucHVzaChjb250cm9scy5zcGxpY2UoaXgsIDEpWzBdKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBpZiAoZmllbGRzLmxlbmd0aCA9PT0gMCkgY29udGludWU7XHJcbiAgICAgICAgICAgIGdyb3Vwcy5wdXNoKHtpZDogZnMuaWQsIGxlZ2VuZDogZnMubGVnZW5kLCBmaWVsZHN9KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKGNvbnRyb2xzLmxlbmd0aCA+IDApIHtcclxuICAgICAgICAgICAgZ3JvdXBzLnVuc2hpZnQoe2lkOiBcInJvb3QtY29udHJvbHNcIiwgbGVnZW5kOiBjb25maWcubGVnZW5kLCBmaWVsZHM6IGNvbnRyb2xzfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuZ3JvdXBzID0gZ3JvdXBzO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
import { isObservable, of } from "rxjs";
|
|
2
|
-
import { map } from "rxjs/operators";
|
|
3
|
-
import { ObjectUtils } from "@stemy/ngx-utils";
|
|
4
|
-
import { DynamicFormOption as BaseOption, DynamicSelectModel as Base, } from "@ng-dynamic-forms/core";
|
|
5
|
-
const ignoredKeys = ["disabled", "label", "value", "classes"];
|
|
6
|
-
export class DynamicFormOption extends BaseOption {
|
|
7
|
-
constructor(config) {
|
|
8
|
-
super(config);
|
|
9
|
-
this.classes = config.classes || "";
|
|
10
|
-
this.props = Object.keys(config).reduce((res, k) => {
|
|
11
|
-
if (ignoredKeys.indexOf(k) >= 0)
|
|
12
|
-
return res;
|
|
13
|
-
res[k] = config[k];
|
|
14
|
-
return res;
|
|
15
|
-
}, {});
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
export class DynamicSelectModel extends Base {
|
|
19
|
-
constructor(config, layout) {
|
|
20
|
-
super(config, layout);
|
|
21
|
-
this.groupBy = config.groupBy || null;
|
|
22
|
-
this.inline = config.inline || false;
|
|
23
|
-
this.getClasses = ObjectUtils.isFunction(config.getClasses) ? config.getClasses : (() => "");
|
|
24
|
-
this.allowEmpty = config.allowEmpty || false;
|
|
25
|
-
this.mOptions = this.mOptions || [];
|
|
26
|
-
}
|
|
27
|
-
updateOptions() {
|
|
28
|
-
this.options$ = of(this.mOptions);
|
|
29
|
-
}
|
|
30
|
-
set options(options) {
|
|
31
|
-
if (Array.isArray(options)) {
|
|
32
|
-
this.mOptions = options.map(optionConfig => new DynamicFormOption(optionConfig));
|
|
33
|
-
this.updateOptions();
|
|
34
|
-
}
|
|
35
|
-
else if (isObservable(options)) {
|
|
36
|
-
this.options$ = options.pipe(map(optionsConfig => {
|
|
37
|
-
this.mOptions = optionsConfig.map(optionConfig => new DynamicFormOption(optionConfig));
|
|
38
|
-
return this.mOptions;
|
|
39
|
-
}));
|
|
40
|
-
}
|
|
41
|
-
else {
|
|
42
|
-
this.updateOptions();
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
get options() {
|
|
46
|
-
return this.mOptions;
|
|
47
|
-
}
|
|
48
|
-
insert(index, optionConfig) {
|
|
49
|
-
const option = new DynamicFormOption(optionConfig);
|
|
50
|
-
this.mOptions.splice(index, 0, option);
|
|
51
|
-
this.updateOptions();
|
|
52
|
-
return option;
|
|
53
|
-
}
|
|
54
|
-
remove(...indices) {
|
|
55
|
-
indices.forEach(index => this.mOptions.splice(index, 1));
|
|
56
|
-
this.updateOptions();
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1zZWxlY3QubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbmd4LWR5bmFtaWMtZm9ybS91dGlscy9keW5hbWljLXNlbGVjdC5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUMsWUFBWSxFQUFjLEVBQUUsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUNsRCxPQUFPLEVBQUMsR0FBRyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDbkMsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLGtCQUFrQixDQUFDO0FBQzdDLE9BQU8sRUFFSCxpQkFBaUIsSUFBSSxVQUFVLEVBRS9CLGtCQUFrQixJQUFJLElBQUksR0FFN0IsTUFBTSx3QkFBd0IsQ0FBQztBQUVoQyxNQUFNLFdBQVcsR0FBRyxDQUFDLFVBQVUsRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0FBUTlELE1BQU0sT0FBTyxpQkFBcUIsU0FBUSxVQUFhO0lBS25ELFlBQVksTUFBa0M7UUFDMUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ2QsSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUMsT0FBTyxJQUFJLEVBQUUsQ0FBQztRQUNwQyxJQUFJLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQy9DLElBQUksV0FBVyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO2dCQUFFLE9BQU8sR0FBRyxDQUFDO1lBQzVDLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDbkIsT0FBTyxHQUFHLENBQUM7UUFDZixDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDWCxDQUFDO0NBQ0o7QUFpQkQsTUFBTSxPQUFPLGtCQUFzQixTQUFRLElBQU87SUFXOUMsWUFBWSxNQUFtQyxFQUFFLE1BQWlDO1FBQzlFLEtBQUssQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDdEIsSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUMsT0FBTyxJQUFJLElBQUksQ0FBQztRQUN0QyxJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLElBQUksS0FBSyxDQUFDO1FBQ3JDLElBQUksQ0FBQyxVQUFVLEdBQUcsV0FBVyxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDN0YsSUFBSSxDQUFDLFVBQVUsR0FBRyxNQUFNLENBQUMsVUFBVSxJQUFJLEtBQUssQ0FBQztRQUM3QyxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxRQUFRLElBQUksRUFBRSxDQUFDO0lBQ3hDLENBQUM7SUFFUyxhQUFhO1FBQ25CLElBQUksQ0FBQyxRQUFRLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBRUQsSUFBSSxPQUFPLENBQUMsT0FBWTtRQUNwQixJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEVBQUU7WUFDeEIsSUFBSSxDQUFDLFFBQVEsR0FBSSxPQUF3QyxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsRUFBRSxDQUFDLElBQUksaUJBQWlCLENBQUksWUFBWSxDQUFDLENBQUMsQ0FBQztZQUN0SCxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7U0FDeEI7YUFBTSxJQUFJLFlBQVksQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUM5QixJQUFJLENBQUMsUUFBUSxHQUFJLE9BQW9ELENBQUMsSUFBSSxDQUN0RSxHQUFHLENBQUMsYUFBYSxDQUFDLEVBQUU7Z0JBQ2hCLElBQUksQ0FBQyxRQUFRLEdBQUcsYUFBYSxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsRUFBRSxDQUFDLElBQUksaUJBQWlCLENBQUksWUFBWSxDQUFDLENBQUMsQ0FBQztnQkFDMUYsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDO1lBQ3pCLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDWDthQUFNO1lBQ0gsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1NBQ3hCO0lBQ0wsQ0FBQztJQUVELElBQUksT0FBTztRQUNQLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN6QixDQUFDO0lBRUQsTUFBTSxDQUFDLEtBQWEsRUFBRSxZQUF3QztRQUMxRCxNQUFNLE1BQU0sR0FBRyxJQUFJLGlCQUFpQixDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQ25ELElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDdkMsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ3JCLE9BQU8sTUFBTSxDQUFDO0lBQ2xCLENBQUM7SUFFRCxNQUFNLENBQUMsR0FBRyxPQUFpQjtRQUN2QixPQUFPLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDekQsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ3pCLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW5qZWN0b3J9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7Rm9ybUNvbnRyb2x9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xyXG5pbXBvcnQge2lzT2JzZXJ2YWJsZSwgT2JzZXJ2YWJsZSwgb2Z9IGZyb20gXCJyeGpzXCI7XHJcbmltcG9ydCB7bWFwfSBmcm9tIFwicnhqcy9vcGVyYXRvcnNcIjtcclxuaW1wb3J0IHtPYmplY3RVdGlsc30gZnJvbSBcIkBzdGVteS9uZ3gtdXRpbHNcIjtcclxuaW1wb3J0IHtcclxuICAgIER5bmFtaWNGb3JtQ29udHJvbExheW91dCxcclxuICAgIER5bmFtaWNGb3JtT3B0aW9uIGFzIEJhc2VPcHRpb24sXHJcbiAgICBEeW5hbWljRm9ybU9wdGlvbkNvbmZpZyBhcyBCYXNlT3B0aW9uQ29uZmlnLFxyXG4gICAgRHluYW1pY1NlbGVjdE1vZGVsIGFzIEJhc2UsXHJcbiAgICBEeW5hbWljU2VsZWN0TW9kZWxDb25maWcgYXMgQmFzZUNvbmZpZyxcclxufSBmcm9tIFwiQG5nLWR5bmFtaWMtZm9ybXMvY29yZVwiO1xyXG5cclxuY29uc3QgaWdub3JlZEtleXMgPSBbXCJkaXNhYmxlZFwiLCBcImxhYmVsXCIsIFwidmFsdWVcIiwgXCJjbGFzc2VzXCJdO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBEeW5hbWljRm9ybU9wdGlvbkNvbmZpZzxUPiBleHRlbmRzIEJhc2VPcHRpb25Db25maWc8VD4ge1xyXG4gICAgY2xhc3Nlcz86IHN0cmluZztcclxuXHJcbiAgICBba2V5OiBzdHJpbmddOiBhbnk7XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBEeW5hbWljRm9ybU9wdGlvbjxUPiBleHRlbmRzIEJhc2VPcHRpb248VD4ge1xyXG5cclxuICAgIHJlYWRvbmx5IGNsYXNzZXM6IHN0cmluZztcclxuICAgIHJlYWRvbmx5IHByb3BzOiBhbnk7XHJcblxyXG4gICAgY29uc3RydWN0b3IoY29uZmlnOiBEeW5hbWljRm9ybU9wdGlvbkNvbmZpZzxUPikge1xyXG4gICAgICAgIHN1cGVyKGNvbmZpZyk7XHJcbiAgICAgICAgdGhpcy5jbGFzc2VzID0gY29uZmlnLmNsYXNzZXMgfHwgXCJcIjtcclxuICAgICAgICB0aGlzLnByb3BzID0gT2JqZWN0LmtleXMoY29uZmlnKS5yZWR1Y2UoKHJlcywgaykgPT4ge1xyXG4gICAgICAgICAgICBpZiAoaWdub3JlZEtleXMuaW5kZXhPZihrKSA+PSAwKSByZXR1cm4gcmVzO1xyXG4gICAgICAgICAgICByZXNba10gPSBjb25maWdba107XHJcbiAgICAgICAgICAgIHJldHVybiByZXM7XHJcbiAgICAgICAgfSwge30pO1xyXG4gICAgfVxyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIER5bmFtaWNGb3JtT3B0aW9uR3JvdXA8VD4ge1xyXG4gICAgZ3JvdXA6IHN0cmluZztcclxuICAgIG9wdGlvbnM6IFJlYWRvbmx5QXJyYXk8RHluYW1pY0Zvcm1PcHRpb248VD4+O1xyXG59XHJcblxyXG5leHBvcnQgdHlwZSBPcHRpb25DbGFzc2VzRnVuYzxUPiA9IChvcHRpb246IER5bmFtaWNGb3JtT3B0aW9uQ29uZmlnPFQ+LCBtb2RlbDogRHluYW1pY1NlbGVjdE1vZGVsPFQ+LCBjb250cm9sOiBGb3JtQ29udHJvbCwgaW5qZWN0b3I6IEluamVjdG9yKSA9PiBzdHJpbmc7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIER5bmFtaWNTZWxlY3RNb2RlbENvbmZpZzxUPiBleHRlbmRzIEJhc2VDb25maWc8VD4ge1xyXG4gICAgZ3JvdXBCeT86IHN0cmluZztcclxuICAgIGlubGluZT86IGJvb2xlYW47XHJcbiAgICBvcHRpb25zPzogRHluYW1pY0Zvcm1PcHRpb25Db25maWc8VD5bXSB8IE9ic2VydmFibGU8RHluYW1pY0Zvcm1PcHRpb25Db25maWc8VD5bXT47XHJcbiAgICBnZXRDbGFzc2VzPzogT3B0aW9uQ2xhc3Nlc0Z1bmM8VD47XHJcbiAgICBhbGxvd0VtcHR5PzogYm9vbGVhbjtcclxufVxyXG5cclxuZXhwb3J0IGNsYXNzIER5bmFtaWNTZWxlY3RNb2RlbDxUPiBleHRlbmRzIEJhc2U8VD4ge1xyXG5cclxuICAgIHJlYWRvbmx5IGdyb3VwQnk6IHN0cmluZztcclxuICAgIHJlYWRvbmx5IGlubGluZTogYm9vbGVhbjtcclxuICAgIHJlYWRvbmx5IGdldENsYXNzZXM6IE9wdGlvbkNsYXNzZXNGdW5jPFQ+O1xyXG4gICAgcmVhZG9ubHkgYWxsb3dFbXB0eTogYm9vbGVhbjtcclxuXHJcbiAgICBvcHRpb25zJDogT2JzZXJ2YWJsZTxEeW5hbWljRm9ybU9wdGlvbjxUPltdPjtcclxuXHJcbiAgICBwcm90ZWN0ZWQgbU9wdGlvbnM6IER5bmFtaWNGb3JtT3B0aW9uPFQ+W107XHJcblxyXG4gICAgY29uc3RydWN0b3IoY29uZmlnOiBEeW5hbWljU2VsZWN0TW9kZWxDb25maWc8VD4sIGxheW91dD86IER5bmFtaWNGb3JtQ29udHJvbExheW91dCkge1xyXG4gICAgICAgIHN1cGVyKGNvbmZpZywgbGF5b3V0KTtcclxuICAgICAgICB0aGlzLmdyb3VwQnkgPSBjb25maWcuZ3JvdXBCeSB8fCBudWxsO1xyXG4gICAgICAgIHRoaXMuaW5saW5lID0gY29uZmlnLmlubGluZSB8fCBmYWxzZTtcclxuICAgICAgICB0aGlzLmdldENsYXNzZXMgPSBPYmplY3RVdGlscy5pc0Z1bmN0aW9uKGNvbmZpZy5nZXRDbGFzc2VzKSA/IGNvbmZpZy5nZXRDbGFzc2VzIDogKCgpID0+IFwiXCIpO1xyXG4gICAgICAgIHRoaXMuYWxsb3dFbXB0eSA9IGNvbmZpZy5hbGxvd0VtcHR5IHx8IGZhbHNlO1xyXG4gICAgICAgIHRoaXMubU9wdGlvbnMgPSB0aGlzLm1PcHRpb25zIHx8IFtdO1xyXG4gICAgfVxyXG5cclxuICAgIHByb3RlY3RlZCB1cGRhdGVPcHRpb25zKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMub3B0aW9ucyQgPSBvZih0aGlzLm1PcHRpb25zKTtcclxuICAgIH1cclxuXHJcbiAgICBzZXQgb3B0aW9ucyhvcHRpb25zOiBhbnkpIHtcclxuICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShvcHRpb25zKSkge1xyXG4gICAgICAgICAgICB0aGlzLm1PcHRpb25zID0gKG9wdGlvbnMgYXMgRHluYW1pY0Zvcm1PcHRpb25Db25maWc8VD5bXSkubWFwKG9wdGlvbkNvbmZpZyA9PiBuZXcgRHluYW1pY0Zvcm1PcHRpb248VD4ob3B0aW9uQ29uZmlnKSk7XHJcbiAgICAgICAgICAgIHRoaXMudXBkYXRlT3B0aW9ucygpO1xyXG4gICAgICAgIH0gZWxzZSBpZiAoaXNPYnNlcnZhYmxlKG9wdGlvbnMpKSB7XHJcbiAgICAgICAgICAgIHRoaXMub3B0aW9ucyQgPSAob3B0aW9ucyBhcyBPYnNlcnZhYmxlPER5bmFtaWNGb3JtT3B0aW9uQ29uZmlnPFQ+W10+KS5waXBlKFxyXG4gICAgICAgICAgICAgICAgbWFwKG9wdGlvbnNDb25maWcgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMubU9wdGlvbnMgPSBvcHRpb25zQ29uZmlnLm1hcChvcHRpb25Db25maWcgPT4gbmV3IER5bmFtaWNGb3JtT3B0aW9uPFQ+KG9wdGlvbkNvbmZpZykpO1xyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLm1PcHRpb25zO1xyXG4gICAgICAgICAgICAgICAgfSkpO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHRoaXMudXBkYXRlT3B0aW9ucygpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBnZXQgb3B0aW9ucygpOiBSZWFkb25seUFycmF5PER5bmFtaWNGb3JtT3B0aW9uPFQ+PiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMubU9wdGlvbnM7XHJcbiAgICB9XHJcblxyXG4gICAgaW5zZXJ0KGluZGV4OiBudW1iZXIsIG9wdGlvbkNvbmZpZzogRHluYW1pY0Zvcm1PcHRpb25Db25maWc8VD4pOiBEeW5hbWljRm9ybU9wdGlvbjxUPiB7XHJcbiAgICAgICAgY29uc3Qgb3B0aW9uID0gbmV3IER5bmFtaWNGb3JtT3B0aW9uKG9wdGlvbkNvbmZpZyk7XHJcbiAgICAgICAgdGhpcy5tT3B0aW9ucy5zcGxpY2UoaW5kZXgsIDAsIG9wdGlvbik7XHJcbiAgICAgICAgdGhpcy51cGRhdGVPcHRpb25zKCk7XHJcbiAgICAgICAgcmV0dXJuIG9wdGlvbjtcclxuICAgIH1cclxuXHJcbiAgICByZW1vdmUoLi4uaW5kaWNlczogbnVtYmVyW10pOiB2b2lkIHtcclxuICAgICAgICBpbmRpY2VzLmZvckVhY2goaW5kZXggPT4gdGhpcy5tT3B0aW9ucy5zcGxpY2UoaW5kZXgsIDEpKTtcclxuICAgICAgICB0aGlzLnVwZGF0ZU9wdGlvbnMoKTtcclxuICAgIH1cclxufVxyXG4iXX0=
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
import { FormSubject } from "./form-subject";
|
|
2
|
-
export class FormSelectSubject extends FormSubject {
|
|
3
|
-
handleNotifiedValue(controlModel, control, val) {
|
|
4
|
-
val.then(options => {
|
|
5
|
-
if (options.length == 0) {
|
|
6
|
-
this.next(options);
|
|
7
|
-
return;
|
|
8
|
-
}
|
|
9
|
-
const currentVal = control.value;
|
|
10
|
-
if (controlModel.multiple) {
|
|
11
|
-
const correctVal = (currentVal || []).filter(t => options.findIndex(o => o.value == t) >= 0);
|
|
12
|
-
if (correctVal.length !== currentVal?.length) {
|
|
13
|
-
control.setValue(correctVal, { onlySelf: true, emitEvent: false });
|
|
14
|
-
}
|
|
15
|
-
}
|
|
16
|
-
else {
|
|
17
|
-
const option = options.find(t => t.value == currentVal);
|
|
18
|
-
if (!option) {
|
|
19
|
-
control.setValue(controlModel.allowEmpty ? null : options[0]?.value ?? null, { onlySelf: true, emitEvent: false });
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
this.next(options);
|
|
23
|
-
});
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1zZWxlY3Qtc3ViamVjdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9uZ3gtZHluYW1pYy1mb3JtL3V0aWxzL2Zvcm0tc2VsZWN0LXN1YmplY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBRTNDLE1BQU0sT0FBTyxpQkFBNEQsU0FBUSxXQUF1QztJQUUxRyxtQkFBbUIsQ0FBQyxZQUFxQyxFQUFFLE9BQXdCLEVBQUUsR0FBZTtRQUMxRyxHQUFHLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ2YsSUFBSSxPQUFPLENBQUMsTUFBTSxJQUFJLENBQUMsRUFBRTtnQkFDckIsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztnQkFDbkIsT0FBTzthQUNWO1lBQ0QsTUFBTSxVQUFVLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQztZQUNqQyxJQUFJLFlBQVksQ0FBQyxRQUFRLEVBQUU7Z0JBQ3ZCLE1BQU0sVUFBVSxHQUFHLENBQUMsVUFBVSxJQUFJLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO2dCQUM3RixJQUFJLFVBQVUsQ0FBQyxNQUFNLEtBQUssVUFBVSxFQUFFLE1BQU0sRUFBRTtvQkFDMUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxVQUFVLEVBQUUsRUFBQyxRQUFRLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUMsQ0FBQyxDQUFDO2lCQUNwRTthQUNKO2lCQUFNO2dCQUNILE1BQU0sTUFBTSxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxJQUFJLFVBQVUsQ0FBQyxDQUFDO2dCQUN4RCxJQUFJLENBQUMsTUFBTSxFQUFFO29CQUNULE9BQU8sQ0FBQyxRQUFRLENBQ1osWUFBWSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxJQUFJLElBQUksRUFDMUQsRUFBQyxRQUFRLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUMsQ0FDckMsQ0FBQztpQkFDTDthQUNKO1lBQ0QsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUN2QixDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7QWJzdHJhY3RDb250cm9sfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcclxuaW1wb3J0IHtEeW5hbWljRm9ybU9wdGlvbkNvbmZpZywgRHluYW1pY1NlbGVjdE1vZGVsfSBmcm9tIFwiLi9keW5hbWljLXNlbGVjdC5tb2RlbFwiO1xyXG5pbXBvcnQge0Zvcm1TdWJqZWN0fSBmcm9tIFwiLi9mb3JtLXN1YmplY3RcIjtcclxuXHJcbmV4cG9ydCBjbGFzcyBGb3JtU2VsZWN0U3ViamVjdDxUIGV4dGVuZHMgRHluYW1pY0Zvcm1PcHRpb25Db25maWc8YW55PltdPiBleHRlbmRzIEZvcm1TdWJqZWN0PER5bmFtaWNTZWxlY3RNb2RlbDxhbnk+LCBUPiB7XHJcblxyXG4gICAgcHJvdGVjdGVkIGhhbmRsZU5vdGlmaWVkVmFsdWUoY29udHJvbE1vZGVsOiBEeW5hbWljU2VsZWN0TW9kZWw8YW55PiwgY29udHJvbDogQWJzdHJhY3RDb250cm9sLCB2YWw6IFByb21pc2U8VD4pIHtcclxuICAgICAgICB2YWwudGhlbihvcHRpb25zID0+IHtcclxuICAgICAgICAgICAgaWYgKG9wdGlvbnMubGVuZ3RoID09IDApIHtcclxuICAgICAgICAgICAgICAgIHRoaXMubmV4dChvcHRpb25zKTtcclxuICAgICAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBjb25zdCBjdXJyZW50VmFsID0gY29udHJvbC52YWx1ZTtcclxuICAgICAgICAgICAgaWYgKGNvbnRyb2xNb2RlbC5tdWx0aXBsZSkge1xyXG4gICAgICAgICAgICAgICAgY29uc3QgY29ycmVjdFZhbCA9IChjdXJyZW50VmFsIHx8IFtdKS5maWx0ZXIodCA9PiBvcHRpb25zLmZpbmRJbmRleChvID0+IG8udmFsdWUgPT0gdCkgPj0gMCk7XHJcbiAgICAgICAgICAgICAgICBpZiAoY29ycmVjdFZhbC5sZW5ndGggIT09IGN1cnJlbnRWYWw/Lmxlbmd0aCkge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnRyb2wuc2V0VmFsdWUoY29ycmVjdFZhbCwge29ubHlTZWxmOiB0cnVlLCBlbWl0RXZlbnQ6IGZhbHNlfSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICBjb25zdCBvcHRpb24gPSBvcHRpb25zLmZpbmQodCA9PiB0LnZhbHVlID09IGN1cnJlbnRWYWwpO1xyXG4gICAgICAgICAgICAgICAgaWYgKCFvcHRpb24pIHtcclxuICAgICAgICAgICAgICAgICAgICBjb250cm9sLnNldFZhbHVlKFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb250cm9sTW9kZWwuYWxsb3dFbXB0eSA/IG51bGwgOiBvcHRpb25zWzBdPy52YWx1ZSA/PyBudWxsLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB7b25seVNlbGY6IHRydWUsIGVtaXRFdmVudDogZmFsc2V9XHJcbiAgICAgICAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB0aGlzLm5leHQob3B0aW9ucyk7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcbn1cclxuIl19
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import { Subject } from "rxjs";
|
|
2
|
-
const indexLabels = ["$ix", "$pix"];
|
|
3
|
-
export class FormSubject extends Subject {
|
|
4
|
-
constructor(notifyCallback) {
|
|
5
|
-
super();
|
|
6
|
-
this.notifyCallback = notifyCallback;
|
|
7
|
-
}
|
|
8
|
-
handleNotifiedValue(controlModel, control, val) {
|
|
9
|
-
val.then(v => this.next(v));
|
|
10
|
-
}
|
|
11
|
-
notify(controlModel, control, root) {
|
|
12
|
-
const indexes = {};
|
|
13
|
-
let path = controlModel;
|
|
14
|
-
let ix = 0;
|
|
15
|
-
while (path) {
|
|
16
|
-
if (!isNaN(path.index)) {
|
|
17
|
-
const key = indexLabels[ix++] || `$pix${ix}`;
|
|
18
|
-
indexes[key] = path.index;
|
|
19
|
-
}
|
|
20
|
-
path = path.parent;
|
|
21
|
-
}
|
|
22
|
-
let value = this.notifyCallback(controlModel, control, root, indexes);
|
|
23
|
-
if (!(value instanceof Promise)) {
|
|
24
|
-
value = Promise.resolve(value);
|
|
25
|
-
}
|
|
26
|
-
this.handleNotifiedValue(controlModel, control, value);
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1zdWJqZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL25neC1keW5hbWljLWZvcm0vdXRpbHMvZm9ybS1zdWJqZWN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxPQUFPLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFJN0IsTUFBTSxXQUFXLEdBQUcsQ0FBQyxLQUFLLEVBQUUsTUFBTSxDQUFDLENBQUM7QUFJcEMsTUFBTSxPQUFPLFdBQWtELFNBQVEsT0FBVTtJQUk3RSxZQUFZLGNBQWlDO1FBQ3pDLEtBQUssRUFBRSxDQUFDO1FBQ1IsSUFBSSxDQUFDLGNBQWMsR0FBRyxjQUFjLENBQUM7SUFDekMsQ0FBQztJQUVTLG1CQUFtQixDQUFDLFlBQWUsRUFBRSxPQUFvQixFQUFFLEdBQWU7UUFDaEYsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBRUQsTUFBTSxDQUFDLFlBQWUsRUFBRSxPQUFvQixFQUFFLElBQXNCO1FBQ2hFLE1BQU0sT0FBTyxHQUFHLEVBQUUsQ0FBQztRQUNuQixJQUFJLElBQUksR0FBRyxZQUErQixDQUFDO1FBQzNDLElBQUksRUFBRSxHQUFHLENBQUMsQ0FBQztRQUNYLE9BQU8sSUFBSSxFQUFFO1lBQ1QsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUU7Z0JBQ3BCLE1BQU0sR0FBRyxHQUFHLFdBQVcsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxJQUFJLE9BQU8sRUFBRSxFQUFFLENBQUM7Z0JBQzdDLE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDO2FBQzdCO1lBQ0QsSUFBSSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUM7U0FDdEI7UUFDRCxJQUFJLEtBQUssR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLFlBQVksRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQ3RFLElBQUksQ0FBQyxDQUFDLEtBQUssWUFBWSxPQUFPLENBQUMsRUFBRTtZQUM3QixLQUFLLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUNsQztRQUNELElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxZQUFZLEVBQUUsT0FBTyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQzNELENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7U3ViamVjdH0gZnJvbSBcInJ4anNcIjtcclxuaW1wb3J0IHtGb3JtQ29udHJvbH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XHJcbmltcG9ydCB7RHluYW1pY0Zvcm1Db250cm9sTW9kZWwsIER5bmFtaWNGb3JtTW9kZWwsIER5bmFtaWNQYXRoYWJsZX0gZnJvbSBcIkBuZy1keW5hbWljLWZvcm1zL2NvcmVcIjtcclxuXHJcbmNvbnN0IGluZGV4TGFiZWxzID0gW1wiJGl4XCIsIFwiJHBpeFwiXTtcclxuXHJcbmV4cG9ydCB0eXBlIE5vdGlmeUNhbGxiYWNrPE0gZXh0ZW5kcyBEeW5hbWljRm9ybUNvbnRyb2xNb2RlbD4gPSAoY29udHJvbE1vZGVsOiBNLCBjb250cm9sOiBGb3JtQ29udHJvbCwgcm9vdDogRHluYW1pY0Zvcm1Nb2RlbCwgaW5kZXhlczogYW55KSA9PiBhbnkgfCBQcm9taXNlPGFueT47XHJcblxyXG5leHBvcnQgY2xhc3MgRm9ybVN1YmplY3Q8TSBleHRlbmRzIER5bmFtaWNGb3JtQ29udHJvbE1vZGVsLCBUPiBleHRlbmRzIFN1YmplY3Q8VD4ge1xyXG5cclxuICAgIHByaXZhdGUgcmVhZG9ubHkgbm90aWZ5Q2FsbGJhY2s6IE5vdGlmeUNhbGxiYWNrPE0+O1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKG5vdGlmeUNhbGxiYWNrOiBOb3RpZnlDYWxsYmFjazxNPikge1xyXG4gICAgICAgIHN1cGVyKCk7XHJcbiAgICAgICAgdGhpcy5ub3RpZnlDYWxsYmFjayA9IG5vdGlmeUNhbGxiYWNrO1xyXG4gICAgfVxyXG5cclxuICAgIHByb3RlY3RlZCBoYW5kbGVOb3RpZmllZFZhbHVlKGNvbnRyb2xNb2RlbDogTSwgY29udHJvbDogRm9ybUNvbnRyb2wsIHZhbDogUHJvbWlzZTxUPikge1xyXG4gICAgICAgIHZhbC50aGVuKHYgPT4gdGhpcy5uZXh0KHYpKTtcclxuICAgIH1cclxuXHJcbiAgICBub3RpZnkoY29udHJvbE1vZGVsOiBNLCBjb250cm9sOiBGb3JtQ29udHJvbCwgcm9vdDogRHluYW1pY0Zvcm1Nb2RlbCk6IHZvaWQge1xyXG4gICAgICAgIGNvbnN0IGluZGV4ZXMgPSB7fTtcclxuICAgICAgICBsZXQgcGF0aCA9IGNvbnRyb2xNb2RlbCBhcyBEeW5hbWljUGF0aGFibGU7XHJcbiAgICAgICAgbGV0IGl4ID0gMDtcclxuICAgICAgICB3aGlsZSAocGF0aCkge1xyXG4gICAgICAgICAgICBpZiAoIWlzTmFOKHBhdGguaW5kZXgpKSB7XHJcbiAgICAgICAgICAgICAgICBjb25zdCBrZXkgPSBpbmRleExhYmVsc1tpeCsrXSB8fCBgJHBpeCR7aXh9YDtcclxuICAgICAgICAgICAgICAgIGluZGV4ZXNba2V5XSA9IHBhdGguaW5kZXg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgcGF0aCA9IHBhdGgucGFyZW50O1xyXG4gICAgICAgIH1cclxuICAgICAgICBsZXQgdmFsdWUgPSB0aGlzLm5vdGlmeUNhbGxiYWNrKGNvbnRyb2xNb2RlbCwgY29udHJvbCwgcm9vdCwgaW5kZXhlcyk7XHJcbiAgICAgICAgaWYgKCEodmFsdWUgaW5zdGFuY2VvZiBQcm9taXNlKSkge1xyXG4gICAgICAgICAgICB2YWx1ZSA9IFByb21pc2UucmVzb2x2ZSh2YWx1ZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuaGFuZGxlTm90aWZpZWRWYWx1ZShjb250cm9sTW9kZWwsIGNvbnRyb2wsIHZhbHVlKTtcclxuICAgIH1cclxufVxyXG4iXX0=
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
export function isStringWithVal(val) {
|
|
2
|
-
return typeof val == "string" && val.length > 0;
|
|
3
|
-
}
|
|
4
|
-
export function findRefs(property) {
|
|
5
|
-
const refs = Array.isArray(property.allOf)
|
|
6
|
-
? property.allOf.map(o => o.$ref).filter(isStringWithVal)
|
|
7
|
-
: [property.items?.$ref, property.$ref].filter(isStringWithVal);
|
|
8
|
-
return refs.map(t => t.split("/").pop());
|
|
9
|
-
}
|
|
10
|
-
export function replaceSpecialChars(str, to = "-") {
|
|
11
|
-
return `${str}`.replace(/[&\/\\#, +()$~%.@'":*?<>{}]/g, to);
|
|
12
|
-
}
|
|
13
|
-
export function mergeFormModels(formModels) {
|
|
14
|
-
const res = [];
|
|
15
|
-
for (const formModel of formModels) {
|
|
16
|
-
for (const subModel of formModel) {
|
|
17
|
-
const index = res.findIndex(t => t.id == subModel.id);
|
|
18
|
-
if (index >= 0) {
|
|
19
|
-
res[index] = subModel;
|
|
20
|
-
continue;
|
|
21
|
-
}
|
|
22
|
-
res.push(subModel);
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
return res;
|
|
26
|
-
}
|
|
27
|
-
export function collectPathAble(start, getter) {
|
|
28
|
-
if (!start || !getter(start))
|
|
29
|
-
return [];
|
|
30
|
-
const parts = [];
|
|
31
|
-
let currentPath = start;
|
|
32
|
-
while (currentPath) {
|
|
33
|
-
const val = getter(currentPath);
|
|
34
|
-
if (val) {
|
|
35
|
-
parts.unshift(val);
|
|
36
|
-
}
|
|
37
|
-
currentPath = currentPath.parent;
|
|
38
|
-
}
|
|
39
|
-
return parts;
|
|
40
|
-
}
|
|
41
|
-
export function getDynamicPath(start) {
|
|
42
|
-
return collectPathAble(start, t => t.id).join(".");
|
|
43
|
-
}
|
|
44
|
-
export const MIN_INPUT_NUM = -999999999;
|
|
45
|
-
export const MAX_INPUT_NUM = 999999999;
|
|
46
|
-
export const EDITOR_FORMATS = ["php", "json", "html", "css", "scss"];
|
|
47
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlzYy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9uZ3gtZHluYW1pYy1mb3JtL3V0aWxzL21pc2MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsTUFBTSxVQUFVLGVBQWUsQ0FBQyxHQUFRO0lBQ3BDLE9BQU8sT0FBTyxHQUFHLElBQUksUUFBUSxJQUFJLEdBQUcsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO0FBQ3BELENBQUM7QUFFRCxNQUFNLFVBQVUsUUFBUSxDQUFDLFFBQWdDO0lBQ3JELE1BQU0sSUFBSSxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQztRQUN0QyxDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBTSxDQUFDLGVBQWUsQ0FBQztRQUN6RCxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxFQUFFLElBQUksRUFBRSxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBTSxDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBQ3BFLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQztBQUM3QyxDQUFDO0FBRUQsTUFBTSxVQUFVLG1CQUFtQixDQUFDLEdBQVcsRUFBRSxLQUFhLEdBQUc7SUFDN0QsT0FBTyxHQUFHLEdBQUcsRUFBRSxDQUFDLE9BQU8sQ0FBQyw4QkFBOEIsRUFBRSxFQUFFLENBQUMsQ0FBQztBQUNoRSxDQUFDO0FBRUQsTUFBTSxVQUFVLGVBQWUsQ0FBQyxVQUE4QjtJQUMxRCxNQUFNLEdBQUcsR0FBcUIsRUFBRSxDQUFDO0lBQ2pDLEtBQUssTUFBTSxTQUFTLElBQUksVUFBVSxFQUFFO1FBQ2hDLEtBQUssTUFBTSxRQUFRLElBQUksU0FBUyxFQUFFO1lBQzlCLE1BQU0sS0FBSyxHQUFHLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxJQUFJLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUN0RCxJQUFJLEtBQUssSUFBSSxDQUFDLEVBQUU7Z0JBQ1osR0FBRyxDQUFDLEtBQUssQ0FBQyxHQUFHLFFBQVEsQ0FBQztnQkFDdEIsU0FBUzthQUNaO1lBQ0QsR0FBRyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztTQUN0QjtLQUNKO0lBQ0QsT0FBTyxHQUFHLENBQUM7QUFDZixDQUFDO0FBRUQsTUFBTSxVQUFVLGVBQWUsQ0FBNEIsS0FBUSxFQUFFLE1BQTRDO0lBQzdHLElBQUksQ0FBQyxLQUFLLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDO1FBQUUsT0FBTyxFQUFFLENBQUM7SUFDeEMsTUFBTSxLQUFLLEdBQUcsRUFBRSxDQUFDO0lBQ2pCLElBQUksV0FBVyxHQUFHLEtBQUssQ0FBQztJQUN4QixPQUFPLFdBQVcsRUFBRTtRQUNoQixNQUFNLEdBQUcsR0FBRyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDaEMsSUFBSSxHQUFHLEVBQUU7WUFDTCxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1NBQ3RCO1FBQ0QsV0FBVyxHQUFHLFdBQVcsQ0FBQyxNQUFXLENBQUM7S0FDekM7SUFDRCxPQUFPLEtBQUssQ0FBQztBQUNqQixDQUFDO0FBRUQsTUFBTSxVQUFVLGNBQWMsQ0FBQyxLQUFzQjtJQUNqRCxPQUFPLGVBQWUsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0FBQ3ZELENBQUM7QUFFRCxNQUFNLENBQUMsTUFBTSxhQUFhLEdBQUcsQ0FBQyxTQUFTLENBQUM7QUFFeEMsTUFBTSxDQUFDLE1BQU0sYUFBYSxHQUFHLFNBQVMsQ0FBQztBQUV2QyxNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUcsQ0FBQyxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0R5bmFtaWNGb3JtTW9kZWwsIER5bmFtaWNQYXRoYWJsZX0gZnJvbSBcIkBuZy1keW5hbWljLWZvcm1zL2NvcmVcIjtcclxuaW1wb3J0IHtJT3BlbkFwaVNjaGVtYVByb3BlcnR5fSBmcm9tIFwiQHN0ZW15L25neC11dGlsc1wiO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGlzU3RyaW5nV2l0aFZhbCh2YWw6IGFueSk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHR5cGVvZiB2YWwgPT0gXCJzdHJpbmdcIiAmJiB2YWwubGVuZ3RoID4gMDtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGZpbmRSZWZzKHByb3BlcnR5OiBJT3BlbkFwaVNjaGVtYVByb3BlcnR5KTogc3RyaW5nW10ge1xyXG4gICAgY29uc3QgcmVmcyA9IEFycmF5LmlzQXJyYXkocHJvcGVydHkuYWxsT2YpXHJcbiAgICAgICAgPyBwcm9wZXJ0eS5hbGxPZi5tYXAobyA9PiBvLiRyZWYpLmZpbHRlcihpc1N0cmluZ1dpdGhWYWwpXHJcbiAgICAgICAgOiBbcHJvcGVydHkuaXRlbXM/LiRyZWYsIHByb3BlcnR5LiRyZWZdLmZpbHRlcihpc1N0cmluZ1dpdGhWYWwpO1xyXG4gICAgcmV0dXJuIHJlZnMubWFwKHQgPT4gdC5zcGxpdChcIi9cIikucG9wKCkpO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gcmVwbGFjZVNwZWNpYWxDaGFycyhzdHI6IHN0cmluZywgdG86IHN0cmluZyA9IFwiLVwiKTogc3RyaW5nIHtcclxuICAgIHJldHVybiBgJHtzdHJ9YC5yZXBsYWNlKC9bJlxcL1xcXFwjLCArKCkkfiUuQCdcIjoqPzw+e31dL2csIHRvKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIG1lcmdlRm9ybU1vZGVscyhmb3JtTW9kZWxzOiBEeW5hbWljRm9ybU1vZGVsW10pOiBEeW5hbWljRm9ybU1vZGVsIHtcclxuICAgIGNvbnN0IHJlczogRHluYW1pY0Zvcm1Nb2RlbCA9IFtdO1xyXG4gICAgZm9yIChjb25zdCBmb3JtTW9kZWwgb2YgZm9ybU1vZGVscykge1xyXG4gICAgICAgIGZvciAoY29uc3Qgc3ViTW9kZWwgb2YgZm9ybU1vZGVsKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IGluZGV4ID0gcmVzLmZpbmRJbmRleCh0ID0+IHQuaWQgPT0gc3ViTW9kZWwuaWQpO1xyXG4gICAgICAgICAgICBpZiAoaW5kZXggPj0gMCkge1xyXG4gICAgICAgICAgICAgICAgcmVzW2luZGV4XSA9IHN1Yk1vZGVsO1xyXG4gICAgICAgICAgICAgICAgY29udGludWU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgcmVzLnB1c2goc3ViTW9kZWwpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIHJldHVybiByZXM7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBjb2xsZWN0UGF0aEFibGU8VCBleHRlbmRzIER5bmFtaWNQYXRoYWJsZT4oc3RhcnQ6IFQsIGdldHRlcjogKGN1cjogVCAmIER5bmFtaWNQYXRoYWJsZSkgPT4gc3RyaW5nKTogc3RyaW5nW10ge1xyXG4gICAgaWYgKCFzdGFydCB8fCAhZ2V0dGVyKHN0YXJ0KSkgcmV0dXJuIFtdO1xyXG4gICAgY29uc3QgcGFydHMgPSBbXTtcclxuICAgIGxldCBjdXJyZW50UGF0aCA9IHN0YXJ0O1xyXG4gICAgd2hpbGUgKGN1cnJlbnRQYXRoKSB7XHJcbiAgICAgICAgY29uc3QgdmFsID0gZ2V0dGVyKGN1cnJlbnRQYXRoKTtcclxuICAgICAgICBpZiAodmFsKSB7XHJcbiAgICAgICAgICAgIHBhcnRzLnVuc2hpZnQodmFsKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgY3VycmVudFBhdGggPSBjdXJyZW50UGF0aC5wYXJlbnQgYXMgVDtcclxuICAgIH1cclxuICAgIHJldHVybiBwYXJ0cztcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGdldER5bmFtaWNQYXRoKHN0YXJ0OiBEeW5hbWljUGF0aGFibGUpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIGNvbGxlY3RQYXRoQWJsZShzdGFydCwgdCA9PiB0LmlkKS5qb2luKFwiLlwiKTtcclxufVxyXG5cclxuZXhwb3J0IGNvbnN0IE1JTl9JTlBVVF9OVU0gPSAtOTk5OTk5OTk5O1xyXG5cclxuZXhwb3J0IGNvbnN0IE1BWF9JTlBVVF9OVU0gPSA5OTk5OTk5OTk7XHJcblxyXG5leHBvcnQgY29uc3QgRURJVE9SX0ZPUk1BVFMgPSBbXCJwaHBcIiwgXCJqc29uXCIsIFwiaHRtbFwiLCBcImNzc1wiLCBcInNjc3NcIl07XHJcbiJdfQ==
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import { FormArray, FormGroup } from "@angular/forms";
|
|
2
|
-
export function getFormValidationErrors(controls, parentPath = "") {
|
|
3
|
-
const errors = [];
|
|
4
|
-
Object.entries(controls).forEach(([name, control], ix) => {
|
|
5
|
-
const path = !parentPath ? name : `${parentPath}.${name}`;
|
|
6
|
-
if (control instanceof FormGroup) {
|
|
7
|
-
getFormValidationErrors(control.controls, path).forEach(error => errors.push(error));
|
|
8
|
-
return;
|
|
9
|
-
}
|
|
10
|
-
if (control instanceof FormArray) {
|
|
11
|
-
control.controls.forEach((control, ix) => {
|
|
12
|
-
getFormValidationErrors(control.controls, `${path}.${ix}`).forEach(error => errors.push(error));
|
|
13
|
-
});
|
|
14
|
-
return;
|
|
15
|
-
}
|
|
16
|
-
Object.entries(control.errors || {}).forEach(([errorKey, errorValue]) => {
|
|
17
|
-
errors.push({ control, path, errorKey, errorValue });
|
|
18
|
-
});
|
|
19
|
-
});
|
|
20
|
-
return errors;
|
|
21
|
-
}
|
|
22
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdGlvbi1lcnJvcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbmd4LWR5bmFtaWMtZm9ybS91dGlscy92YWxpZGF0aW9uLWVycm9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWtCLFNBQVMsRUFBRSxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQWFyRSxNQUFNLFVBQVUsdUJBQXVCLENBQUMsUUFBMkIsRUFBRSxhQUFxQixFQUFFO0lBQ3hGLE1BQU0sTUFBTSxHQUEwQixFQUFFLENBQUM7SUFDekMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxPQUFPLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRTtRQUNyRCxNQUFNLElBQUksR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxHQUFHLFVBQVUsSUFBSSxJQUFJLEVBQUUsQ0FBQztRQUMxRCxJQUFJLE9BQU8sWUFBWSxTQUFTLEVBQUU7WUFDOUIsdUJBQXVCLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7WUFDckYsT0FBTztTQUNWO1FBQ0QsSUFBSSxPQUFPLFlBQVksU0FBUyxFQUFFO1lBQzlCLE9BQU8sQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsT0FBa0IsRUFBRSxFQUFFLEVBQUUsRUFBRTtnQkFDaEQsdUJBQXVCLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxHQUFHLElBQUksSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztZQUNwRyxDQUFDLENBQUMsQ0FBQztZQUNILE9BQU87U0FDVjtRQUNELE1BQU0sQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLE1BQU0sSUFBSSxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxVQUFVLENBQUMsRUFBRSxFQUFFO1lBQ3BFLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBQyxPQUFPLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQUMsQ0FBQyxDQUFDO1FBQ3ZELENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQyxDQUFDLENBQUM7SUFDSCxPQUFPLE1BQU0sQ0FBQztBQUNsQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtBYnN0cmFjdENvbnRyb2wsIEZvcm1BcnJheSwgRm9ybUdyb3VwfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgQWxsVmFsaWRhdGlvbkVycm9ycyB7XHJcbiAgICBjb250cm9sOiBBYnN0cmFjdENvbnRyb2w7XHJcbiAgICBwYXRoOiBzdHJpbmc7XHJcbiAgICBlcnJvcktleTogc3RyaW5nO1xyXG4gICAgZXJyb3JWYWx1ZTogYW55O1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEZvcm1Hcm91cENvbnRyb2xzIHtcclxuICAgIFtrZXk6IHN0cmluZ106IEFic3RyYWN0Q29udHJvbDtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGdldEZvcm1WYWxpZGF0aW9uRXJyb3JzKGNvbnRyb2xzOiBGb3JtR3JvdXBDb250cm9scywgcGFyZW50UGF0aDogc3RyaW5nID0gXCJcIik6IEFsbFZhbGlkYXRpb25FcnJvcnNbXSB7XHJcbiAgICBjb25zdCBlcnJvcnM6IEFsbFZhbGlkYXRpb25FcnJvcnNbXSA9IFtdO1xyXG4gICAgT2JqZWN0LmVudHJpZXMoY29udHJvbHMpLmZvckVhY2goKFtuYW1lLCBjb250cm9sXSwgaXgpID0+IHtcclxuICAgICAgICBjb25zdCBwYXRoID0gIXBhcmVudFBhdGggPyBuYW1lIDogYCR7cGFyZW50UGF0aH0uJHtuYW1lfWA7XHJcbiAgICAgICAgaWYgKGNvbnRyb2wgaW5zdGFuY2VvZiBGb3JtR3JvdXApIHtcclxuICAgICAgICAgICAgZ2V0Rm9ybVZhbGlkYXRpb25FcnJvcnMoY29udHJvbC5jb250cm9scywgcGF0aCkuZm9yRWFjaChlcnJvciA9PiBlcnJvcnMucHVzaChlcnJvcikpO1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChjb250cm9sIGluc3RhbmNlb2YgRm9ybUFycmF5KSB7XHJcbiAgICAgICAgICAgIGNvbnRyb2wuY29udHJvbHMuZm9yRWFjaCgoY29udHJvbDogRm9ybUdyb3VwLCBpeCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgZ2V0Rm9ybVZhbGlkYXRpb25FcnJvcnMoY29udHJvbC5jb250cm9scywgYCR7cGF0aH0uJHtpeH1gKS5mb3JFYWNoKGVycm9yID0+IGVycm9ycy5wdXNoKGVycm9yKSk7XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG4gICAgICAgIE9iamVjdC5lbnRyaWVzKGNvbnRyb2wuZXJyb3JzIHx8IHt9KS5mb3JFYWNoKChbZXJyb3JLZXksIGVycm9yVmFsdWVdKSA9PiB7XHJcbiAgICAgICAgICAgIGVycm9ycy5wdXNoKHtjb250cm9sLCBwYXRoLCBlcnJvcktleSwgZXJyb3JWYWx1ZX0pO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfSk7XHJcbiAgICByZXR1cm4gZXJyb3JzO1xyXG59XHJcbiJdfQ==
|