tuain-ng-forms-lib 15.2.12 → 17.0.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/esm2022/lib/classes/forms/action.mjs +78 -0
- package/esm2022/lib/classes/forms/element.mjs +18 -0
- package/esm2022/lib/classes/forms/field.mjs +458 -0
- package/esm2022/lib/classes/forms/form.mjs +581 -0
- package/esm2022/lib/classes/forms/piece-propagate.mjs +39 -0
- package/esm2022/lib/classes/forms/piece.mjs +126 -0
- package/esm2022/lib/classes/forms/section.mjs +139 -0
- package/esm2022/lib/classes/forms/subsection.mjs +81 -0
- package/esm2022/lib/classes/forms/table/action.mjs +38 -0
- package/esm2022/lib/classes/forms/table/column.mjs +74 -0
- package/esm2022/lib/classes/forms/table/row-data.mjs +116 -0
- package/esm2022/lib/classes/forms/table/table.mjs +481 -0
- package/esm2022/lib/components/elements/action.component.mjs +52 -0
- package/esm2022/lib/components/elements/field.component.mjs +112 -0
- package/esm2022/lib/components/elements/layout/element.component.mjs +21 -0
- package/esm2022/lib/components/elements/layout/form-error.component.mjs +23 -0
- package/esm2022/lib/components/elements/layout/form-header.component.mjs +23 -0
- package/esm2022/lib/components/elements/layout/piece.component.mjs +40 -0
- package/esm2022/lib/components/elements/layout/section.component.mjs +40 -0
- package/esm2022/lib/components/elements/layout/sub-section.component.mjs +40 -0
- package/esm2022/lib/components/elements/tables/table-record-action.component.mjs +67 -0
- package/esm2022/lib/components/elements/tables/table-record-field.component.mjs +31 -0
- package/esm2022/lib/components/elements/tables/table.component.mjs +95 -0
- package/esm2022/lib/components/forms/basic-form.mjs +1314 -0
- package/esm2022/lib/services/event-manager.service.mjs +43 -0
- package/esm2022/lib/services/form-manager.service.mjs +81 -0
- package/{esm2020 → esm2022}/lib/tuain-ng-forms-lib.module.mjs +29 -29
- package/{fesm2020 → fesm2022}/tuain-ng-forms-lib.mjs +331 -260
- package/{fesm2020 → fesm2022}/tuain-ng-forms-lib.mjs.map +1 -1
- package/lib/components/elements/action.component.d.ts +1 -1
- package/lib/components/elements/field.component.d.ts +1 -1
- package/lib/components/elements/layout/element.component.d.ts +1 -1
- package/lib/components/elements/layout/form-error.component.d.ts +1 -1
- package/lib/components/elements/layout/form-header.component.d.ts +1 -1
- package/lib/components/elements/layout/piece.component.d.ts +1 -1
- package/lib/components/elements/layout/section.component.d.ts +1 -1
- package/lib/components/elements/layout/sub-section.component.d.ts +1 -1
- package/lib/components/elements/tables/table-record-action.component.d.ts +1 -1
- package/lib/components/elements/tables/table-record-field.component.d.ts +1 -1
- package/lib/components/elements/tables/table.component.d.ts +1 -1
- package/lib/components/forms/basic-form.d.ts +1 -1
- package/package.json +7 -13
- package/esm2020/lib/classes/forms/action.mjs +0 -72
- package/esm2020/lib/classes/forms/element.mjs +0 -18
- package/esm2020/lib/classes/forms/field.mjs +0 -454
- package/esm2020/lib/classes/forms/form.mjs +0 -574
- package/esm2020/lib/classes/forms/piece-propagate.mjs +0 -38
- package/esm2020/lib/classes/forms/piece.mjs +0 -123
- package/esm2020/lib/classes/forms/section.mjs +0 -138
- package/esm2020/lib/classes/forms/subsection.mjs +0 -81
- package/esm2020/lib/classes/forms/table/action.mjs +0 -30
- package/esm2020/lib/classes/forms/table/column.mjs +0 -74
- package/esm2020/lib/classes/forms/table/row-data.mjs +0 -116
- package/esm2020/lib/classes/forms/table/table.mjs +0 -464
- package/esm2020/lib/components/elements/action.component.mjs +0 -55
- package/esm2020/lib/components/elements/field.component.mjs +0 -99
- package/esm2020/lib/components/elements/layout/element.component.mjs +0 -20
- package/esm2020/lib/components/elements/layout/form-error.component.mjs +0 -20
- package/esm2020/lib/components/elements/layout/form-header.component.mjs +0 -24
- package/esm2020/lib/components/elements/layout/piece.component.mjs +0 -40
- package/esm2020/lib/components/elements/layout/section.component.mjs +0 -39
- package/esm2020/lib/components/elements/layout/sub-section.component.mjs +0 -39
- package/esm2020/lib/components/elements/tables/table-record-action.component.mjs +0 -67
- package/esm2020/lib/components/elements/tables/table-record-field.component.mjs +0 -30
- package/esm2020/lib/components/elements/tables/table.component.mjs +0 -92
- package/esm2020/lib/components/forms/basic-form.mjs +0 -1310
- package/esm2020/lib/services/event-manager.service.mjs +0 -43
- package/esm2020/lib/services/form-manager.service.mjs +0 -80
- package/fesm2015/tuain-ng-forms-lib.mjs +0 -4305
- package/fesm2015/tuain-ng-forms-lib.mjs.map +0 -1
- /package/{esm2020 → esm2022}/lib/classes/forms/form.constants.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/services/file-manager.service.mjs +0 -0
- /package/{esm2020 → esm2022}/public-api.mjs +0 -0
- /package/{esm2020 → esm2022}/tuain-ng-forms-lib.mjs +0 -0
- /package/{tuain-ng-forms-lib.d.ts → index.d.ts} +0 -0
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { BehaviorSubject } from 'rxjs';
|
|
2
|
+
import { FormPiece } from './piece';
|
|
3
|
+
const VISIBLE = 'visible';
|
|
4
|
+
const DISABLED = 'disabled';
|
|
5
|
+
export class FormPiecePropagate extends FormPiece {
|
|
6
|
+
propagationCustomAttributes = [];
|
|
7
|
+
_attributeChange;
|
|
8
|
+
constructor(pieceDefinition, formConfig) {
|
|
9
|
+
super(pieceDefinition, formConfig);
|
|
10
|
+
this._attributeChange = new BehaviorSubject(null);
|
|
11
|
+
}
|
|
12
|
+
get attributeChange() { return this._attributeChange; }
|
|
13
|
+
propagateAttribute(name, value) {
|
|
14
|
+
this._attributeChange?.next({ name, value });
|
|
15
|
+
}
|
|
16
|
+
setCustomAttribute(name, value) {
|
|
17
|
+
super.setCustomAttribute(name, value);
|
|
18
|
+
if (this.propagationCustomAttributes?.includes(name)) {
|
|
19
|
+
const fullName = `customAttributes.${name}`;
|
|
20
|
+
this.propagateAttribute(fullName, value);
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
setVisibility(visible, forced = null) {
|
|
24
|
+
super.setVisibility(visible, forced);
|
|
25
|
+
this.propagateAttribute(VISIBLE, this._visible);
|
|
26
|
+
}
|
|
27
|
+
set enabled(enabled) {
|
|
28
|
+
super.enabled = enabled;
|
|
29
|
+
this.propagateAttribute(DISABLED, this._disabled);
|
|
30
|
+
}
|
|
31
|
+
formStateChange(state) {
|
|
32
|
+
super.formStateChange(state);
|
|
33
|
+
if (state) {
|
|
34
|
+
this.propagateAttribute(VISIBLE, this._visible);
|
|
35
|
+
this.propagateAttribute(DISABLED, this._disabled);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGllY2UtcHJvcGFnYXRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHVhaW4tbmctZm9ybXMtbGliL3NyYy9saWIvY2xhc3Nlcy9mb3Jtcy9waWVjZS1wcm9wYWdhdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN2QyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBRXBDLE1BQU0sT0FBTyxHQUFHLFNBQVMsQ0FBQztBQUMxQixNQUFNLFFBQVEsR0FBRyxVQUFVLENBQUM7QUFFNUIsTUFBTSxPQUFPLGtCQUFtQixTQUFRLFNBQVM7SUFDckMsMkJBQTJCLEdBQWEsRUFBRSxDQUFDO0lBQzNDLGdCQUFnQixDQUF1QjtJQUVqRCxZQUFZLGVBQW9CLEVBQUUsVUFBZTtRQUMvQyxLQUFLLENBQUMsZUFBZSxFQUFFLFVBQVUsQ0FBQyxDQUFDO1FBQ25DLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLGVBQWUsQ0FBTSxJQUFJLENBQUMsQ0FBQztJQUN6RCxDQUFDO0lBRUQsSUFBSSxlQUFlLEtBQUssT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDO0lBRXZELGtCQUFrQixDQUFDLElBQUksRUFBRSxLQUFLO1FBQzVCLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxJQUFJLENBQUMsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUMvQyxDQUFDO0lBRVEsa0JBQWtCLENBQUMsSUFBWSxFQUFFLEtBQVU7UUFDbEQsS0FBSyxDQUFDLGtCQUFrQixDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQztRQUN0QyxJQUFJLElBQUksQ0FBQywyQkFBMkIsRUFBRSxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztZQUNyRCxNQUFNLFFBQVEsR0FBRyxvQkFBb0IsSUFBSSxFQUFFLENBQUM7WUFDNUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFFBQVEsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUMzQyxDQUFDO0lBQ0gsQ0FBQztJQUVRLGFBQWEsQ0FBQyxPQUFnQixFQUFFLFNBQXlCLElBQUk7UUFDcEUsS0FBSyxDQUFDLGFBQWEsQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDckMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDbEQsQ0FBQztJQUVELElBQWEsT0FBTyxDQUFDLE9BQU87UUFDMUIsS0FBSyxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7UUFDeEIsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDcEQsQ0FBQztJQUVRLGVBQWUsQ0FBQyxLQUFLO1FBQzVCLEtBQUssQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDN0IsSUFBSSxLQUFLLEVBQUUsQ0FBQztZQUNWLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ2hELElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ3BELENBQUM7SUFDSCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCZWhhdmlvclN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEZvcm1QaWVjZSB9IGZyb20gJy4vcGllY2UnO1xuXG5jb25zdCBWSVNJQkxFID0gJ3Zpc2libGUnO1xuY29uc3QgRElTQUJMRUQgPSAnZGlzYWJsZWQnO1xuXG5leHBvcnQgY2xhc3MgRm9ybVBpZWNlUHJvcGFnYXRlIGV4dGVuZHMgRm9ybVBpZWNlIHtcbiAgcHJvdGVjdGVkIHByb3BhZ2F0aW9uQ3VzdG9tQXR0cmlidXRlczogc3RyaW5nW10gPSBbXTtcbiAgcHJvdGVjdGVkIF9hdHRyaWJ1dGVDaGFuZ2U6IEJlaGF2aW9yU3ViamVjdDxhbnk+O1xuXG4gIGNvbnN0cnVjdG9yKHBpZWNlRGVmaW5pdGlvbjogYW55LCBmb3JtQ29uZmlnOiBhbnkpIHtcbiAgICBzdXBlcihwaWVjZURlZmluaXRpb24sIGZvcm1Db25maWcpO1xuICAgIHRoaXMuX2F0dHJpYnV0ZUNoYW5nZSA9IG5ldyBCZWhhdmlvclN1YmplY3Q8YW55PihudWxsKTtcbiAgfVxuXG4gIGdldCBhdHRyaWJ1dGVDaGFuZ2UoKSB7IHJldHVybiB0aGlzLl9hdHRyaWJ1dGVDaGFuZ2U7IH1cblxuICBwcm9wYWdhdGVBdHRyaWJ1dGUobmFtZSwgdmFsdWUpIHtcbiAgICB0aGlzLl9hdHRyaWJ1dGVDaGFuZ2U/Lm5leHQoeyBuYW1lLCB2YWx1ZSB9KTtcbiAgfVxuXG4gIG92ZXJyaWRlIHNldEN1c3RvbUF0dHJpYnV0ZShuYW1lOiBzdHJpbmcsIHZhbHVlOiBhbnkpOiB2b2lkIHtcbiAgICBzdXBlci5zZXRDdXN0b21BdHRyaWJ1dGUobmFtZSwgdmFsdWUpO1xuICAgIGlmICh0aGlzLnByb3BhZ2F0aW9uQ3VzdG9tQXR0cmlidXRlcz8uaW5jbHVkZXMobmFtZSkpIHtcbiAgICAgIGNvbnN0IGZ1bGxOYW1lID0gYGN1c3RvbUF0dHJpYnV0ZXMuJHtuYW1lfWA7XG4gICAgICB0aGlzLnByb3BhZ2F0ZUF0dHJpYnV0ZShmdWxsTmFtZSwgdmFsdWUpO1xuICAgIH1cbiAgfVxuXG4gIG92ZXJyaWRlIHNldFZpc2liaWxpdHkodmlzaWJsZTogYm9vbGVhbiwgZm9yY2VkOiBib29sZWFuIHwgbnVsbCA9IG51bGwpOiB2b2lkIHtcbiAgICBzdXBlci5zZXRWaXNpYmlsaXR5KHZpc2libGUsIGZvcmNlZCk7XG4gICAgdGhpcy5wcm9wYWdhdGVBdHRyaWJ1dGUoVklTSUJMRSwgdGhpcy5fdmlzaWJsZSk7XG4gIH1cblxuICBvdmVycmlkZSBzZXQgZW5hYmxlZChlbmFibGVkKSB7XG4gICAgc3VwZXIuZW5hYmxlZCA9IGVuYWJsZWQ7XG4gICAgdGhpcy5wcm9wYWdhdGVBdHRyaWJ1dGUoRElTQUJMRUQsIHRoaXMuX2Rpc2FibGVkKTtcbiAgfVxuXG4gIG92ZXJyaWRlIGZvcm1TdGF0ZUNoYW5nZShzdGF0ZSkge1xuICAgIHN1cGVyLmZvcm1TdGF0ZUNoYW5nZShzdGF0ZSk7XG4gICAgaWYgKHN0YXRlKSB7XG4gICAgICB0aGlzLnByb3BhZ2F0ZUF0dHJpYnV0ZShWSVNJQkxFLCB0aGlzLl92aXNpYmxlKTtcbiAgICAgIHRoaXMucHJvcGFnYXRlQXR0cmlidXRlKERJU0FCTEVELCB0aGlzLl9kaXNhYmxlZCk7XG4gICAgfVxuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
export class FormPiece {
|
|
2
|
+
_formState = '';
|
|
3
|
+
_visibleForced;
|
|
4
|
+
_isForced;
|
|
5
|
+
_absoluteVisible = true;
|
|
6
|
+
_absoluteDisabled = false;
|
|
7
|
+
_widget = null;
|
|
8
|
+
visibleStates = [];
|
|
9
|
+
enabledStates = [];
|
|
10
|
+
_form = null;
|
|
11
|
+
_formConfig;
|
|
12
|
+
_visible = true;
|
|
13
|
+
_disabled = false;
|
|
14
|
+
customAttributes = {};
|
|
15
|
+
constructor(pieceDefinition, formConfig) {
|
|
16
|
+
this._formConfig = formConfig;
|
|
17
|
+
this._isForced = false;
|
|
18
|
+
this._visibleForced = false;
|
|
19
|
+
this.setVisibleStates(pieceDefinition.visibleStates);
|
|
20
|
+
this.setEnabledStates(pieceDefinition.enabledStates);
|
|
21
|
+
this.enabled = !pieceDefinition?.disabled ?? false;
|
|
22
|
+
this.setVisibility(pieceDefinition?.visible ?? true);
|
|
23
|
+
this.customAttributes = pieceDefinition?.customAttributes ?? {};
|
|
24
|
+
if (pieceDefinition?.customAttributes) {
|
|
25
|
+
Object.keys(pieceDefinition?.customAttributes)
|
|
26
|
+
?.forEach(attr => this.customAttributes[attr] = pieceDefinition?.customAttributes[attr]);
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
getCustomAttribute(name) { return this.customAttributes?.[name] ?? null; }
|
|
30
|
+
setCustomAttribute(name, value) { if (name) {
|
|
31
|
+
this.customAttributes[name] = value;
|
|
32
|
+
} }
|
|
33
|
+
setCustomAttributes(attributes) {
|
|
34
|
+
Object.entries(attributes).forEach(([name, value]) => {
|
|
35
|
+
this.setCustomAttribute(name, value);
|
|
36
|
+
});
|
|
37
|
+
return this;
|
|
38
|
+
}
|
|
39
|
+
matchAttribute(name, value) { return this.customAttributes?.[name] === value; }
|
|
40
|
+
setVisibleStates(newStates) {
|
|
41
|
+
const visibleStates = (!Array.isArray(newStates) && typeof newStates === 'string')
|
|
42
|
+
? newStates.split(',').map(state => state.trim()).filter(state => state.length > 0)
|
|
43
|
+
: newStates;
|
|
44
|
+
this.visibleStates = (Array.isArray(visibleStates)) ? [...(new Set(visibleStates))] : [];
|
|
45
|
+
}
|
|
46
|
+
addVisibleState(state) {
|
|
47
|
+
if (!this.visibleStates.includes(state)) {
|
|
48
|
+
this.visibleStates.push(state);
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
removeVisibleState(state) {
|
|
52
|
+
const existStateIdx = this.visibleStates.findIndex(st => st === state);
|
|
53
|
+
if (existStateIdx >= 0) {
|
|
54
|
+
this.visibleStates.splice(existStateIdx, 1);
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
setEnabledStates(newStates) {
|
|
58
|
+
const enabledStates = (!Array.isArray(newStates) && typeof newStates === 'string')
|
|
59
|
+
? newStates.split(',').map(state => state.trim()).filter(state => state.length > 0)
|
|
60
|
+
: newStates;
|
|
61
|
+
this.enabledStates = (Array.isArray(enabledStates)) ? [...(new Set(enabledStates))] : [];
|
|
62
|
+
}
|
|
63
|
+
addEnabledState(state) {
|
|
64
|
+
if (!this.enabledStates.includes(state)) {
|
|
65
|
+
this.enabledStates.push(state);
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
removeEnabledState(state) {
|
|
69
|
+
const existStateIdx = this.enabledStates.findIndex(st => st === state);
|
|
70
|
+
if (existStateIdx >= 0) {
|
|
71
|
+
this.enabledStates.splice(existStateIdx, 1);
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
viewOnState(state) { return (this.visibleStates && state) ? this.visibleStates.includes(state) : false; }
|
|
75
|
+
enabledOnState(state) { return (this.enabledStates && state) ? this.enabledStates.includes(state) : false; }
|
|
76
|
+
get absoluteVisible() { return this._absoluteVisible; }
|
|
77
|
+
get absoluteDisabled() { return this._absoluteDisabled; }
|
|
78
|
+
get visible() { return this._visible; }
|
|
79
|
+
set visible(visible) { this.setVisibility(visible); }
|
|
80
|
+
visibleOn(state) {
|
|
81
|
+
return this._absoluteVisible && this.viewOnState(state);
|
|
82
|
+
}
|
|
83
|
+
enabledOn(state) {
|
|
84
|
+
return !this._absoluteDisabled && this.enabledOnState(state);
|
|
85
|
+
}
|
|
86
|
+
setVisibility(visible, forced = null) {
|
|
87
|
+
this._absoluteVisible = !!visible;
|
|
88
|
+
if (forced !== null) {
|
|
89
|
+
this._isForced = forced;
|
|
90
|
+
this._visibleForced = visible;
|
|
91
|
+
}
|
|
92
|
+
this._visible = this._absoluteVisible && this.viewOnState(this._formState);
|
|
93
|
+
}
|
|
94
|
+
show(forced = null) {
|
|
95
|
+
this.setVisibility(true, forced);
|
|
96
|
+
}
|
|
97
|
+
hide(forced = null) {
|
|
98
|
+
this.setVisibility(false, forced);
|
|
99
|
+
}
|
|
100
|
+
get enabled() { return !this._disabled; }
|
|
101
|
+
set enabled(enabled) {
|
|
102
|
+
this._absoluteDisabled = !enabled;
|
|
103
|
+
this._disabled = this._absoluteDisabled || !this.enabledOnState(this._formState);
|
|
104
|
+
}
|
|
105
|
+
get editable() { return !this._disabled; }
|
|
106
|
+
get disabled() { return this._disabled; }
|
|
107
|
+
set disabled(disabled) { this.enabled = !disabled; }
|
|
108
|
+
enable() { this.enabled = true; }
|
|
109
|
+
disable() { this.enabled = false; }
|
|
110
|
+
formStateChangeCustomSubscribe(form, formChangeSubject) { }
|
|
111
|
+
formStateChange(state) {
|
|
112
|
+
if (state) {
|
|
113
|
+
this._formState = state;
|
|
114
|
+
this._visible = this._absoluteVisible && this.viewOnState(state);
|
|
115
|
+
this._disabled = this._absoluteDisabled || !this.enabledOnState(state);
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
connectWithParentForm(form, formChangeSubject) {
|
|
119
|
+
this._form = form;
|
|
120
|
+
this.formStateChangeCustomSubscribe(form, formChangeSubject);
|
|
121
|
+
formChangeSubject.subscribe(event => this.formStateChange(event?.state));
|
|
122
|
+
}
|
|
123
|
+
set widget(widget) { this._widget = widget; }
|
|
124
|
+
get widget() { return this._widget; }
|
|
125
|
+
}
|
|
126
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGllY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dWFpbi1uZy1mb3Jtcy1saWIvc3JjL2xpYi9jbGFzc2VzL2Zvcm1zL3BpZWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sT0FBTyxTQUFTO0lBQ1YsVUFBVSxHQUFXLEVBQUUsQ0FBQztJQUN4QixjQUFjLENBQVU7SUFDeEIsU0FBUyxDQUFVO0lBQ25CLGdCQUFnQixHQUFZLElBQUksQ0FBQztJQUNqQyxpQkFBaUIsR0FBWSxLQUFLLENBQUM7SUFDbkMsT0FBTyxHQUFRLElBQUksQ0FBQztJQUVwQixhQUFhLEdBQWEsRUFBRSxDQUFDO0lBQzdCLGFBQWEsR0FBYSxFQUFFLENBQUM7SUFFaEMsS0FBSyxHQUFRLElBQUksQ0FBQztJQUNsQixXQUFXLENBQU07SUFDakIsUUFBUSxHQUFZLElBQUksQ0FBQztJQUN6QixTQUFTLEdBQVksS0FBSyxDQUFDO0lBQzNCLGdCQUFnQixHQUFRLEVBQUUsQ0FBQztJQUVsQyxZQUFZLGVBQW9CLEVBQUUsVUFBZTtRQUMvQyxJQUFJLENBQUMsV0FBVyxHQUFHLFVBQVUsQ0FBQztRQUM5QixJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztRQUN2QixJQUFJLENBQUMsY0FBYyxHQUFHLEtBQUssQ0FBQztRQUM1QixJQUFJLENBQUMsZ0JBQWdCLENBQUMsZUFBZSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ3JELElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxlQUFlLENBQUMsYUFBYSxDQUFDLENBQUM7UUFFckQsSUFBSSxDQUFDLE9BQU8sR0FBRyxDQUFDLGVBQWUsRUFBRSxRQUFRLElBQUksS0FBSyxDQUFDO1FBQ25ELElBQUksQ0FBQyxhQUFhLENBQUMsZUFBZSxFQUFFLE9BQU8sSUFBSSxJQUFJLENBQUMsQ0FBQztRQUNyRCxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsZUFBZSxFQUFFLGdCQUFn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LENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ2pFLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN6RSxDQUFDO0lBQ0gsQ0FBQztJQUVELHFCQUFxQixDQUFDLElBQUksRUFBRSxpQkFBaUI7UUFDM0MsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7UUFDbEIsSUFBSSxDQUFDLDhCQUE4QixDQUFDLElBQUksRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO1FBQzdELGlCQUFpQixDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDM0UsQ0FBQztJQUVELElBQUksTUFBTSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsT0FBTyxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUM7SUFDN0MsSUFBSSxNQUFNLEtBQUssT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztDQUN0QyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjbGFzcyBGb3JtUGllY2Uge1xuICBwcm90ZWN0ZWQgX2Zvcm1TdGF0ZTogc3RyaW5nID0gJyc7XG4gIHByb3RlY3RlZCBfdmlzaWJsZUZvcmNlZDogYm9vbGVhbjtcbiAgcHJvdGVjdGVkIF9pc0ZvcmNlZDogYm9vbGVhbjtcbiAgcHJvdGVjdGVkIF9hYnNvbHV0ZVZpc2libGU6IGJvb2xlYW4gPSB0cnVlO1xuICBwcm90ZWN0ZWQgX2Fic29sdXRlRGlzYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgcHJvdGVjdGVkIF93aWRnZXQ6IGFueSA9IG51bGw7XG5cbiAgcHJvdGVjdGVkIHZpc2libGVTdGF0ZXM6IHN0cmluZ1tdID0gW107XG4gIHByb3RlY3RlZCBlbmFibGVkU3RhdGVzOiBzdHJpbmdbXSA9IFtdO1xuXG4gIHB1YmxpYyBfZm9ybTogYW55ID0gbnVsbDtcbiAgcHVibGljIF9mb3JtQ29uZmlnOiBhbnk7XG4gIHB1YmxpYyBfdmlzaWJsZTogYm9vbGVhbiA9IHRydWU7XG4gIHB1YmxpYyBfZGlzYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgcHVibGljIGN1c3RvbUF0dHJpYnV0ZXM6IGFueSA9IHt9O1xuXG4gIGNvbnN0cnVjdG9yKHBpZWNlRGVmaW5pdGlvbjogYW55LCBmb3JtQ29uZmlnOiBhbnkpIHtcbiAgICB0aGlzLl9mb3JtQ29uZmlnID0gZm9ybUNvbmZpZztcbiAgICB0aGlzLl9pc0ZvcmNlZCA9IGZhbHNlO1xuICAgIHRoaXMuX3Zpc2libGVGb3JjZWQgPSBmYWxzZTtcbiAgICB0aGlzLnNldFZpc2libGVTdGF0ZXMocGllY2VEZWZpbml0aW9uLnZpc2libGVTdGF0ZXMpO1xuICAgIHRoaXMuc2V0RW5hYmxlZFN0YXRlcyhwaWVjZURlZmluaXRpb24uZW5hYmxlZFN0YXRlcyk7XG5cbiAgICB0aGlzLmVuYWJsZWQgPSAhcGllY2VEZWZpbml0aW9uPy5kaXNhYmxlZCA/PyBmYWxzZTtcbiAgICB0aGlzLnNldFZpc2liaWxpdHkocGllY2VEZWZpbml0aW9uPy52aXNpYmxlID8/IHRydWUpO1xuICAgIHRoaXMuY3VzdG9tQXR0cmlidXRlcyA9IHBpZWNlRGVmaW5pdGlvbj8uY3VzdG9tQXR0cmlidXRlcyA/PyB7fTtcbiAgICBpZiAocGllY2VEZWZpbml0aW9uPy5jdXN0b21BdHRyaWJ1dGVzKSB7XG4gICAgICBPYmplY3Qua2V5cyhwaWVjZURlZmluaXRpb24/LmN1c3RvbUF0dHJpYnV0ZXMpXG4gICAgICAgID8uZm9yRWFjaChhdHRyID0+IHRoaXMuY3VzdG9tQXR0cmlidXRlc1thdHRyXSA9IHBpZWNlRGVmaW5pdGlvbj8uY3VzdG9tQXR0cmlidXRlc1thdHRyXSlcbiAgICB9XG4gIH1cblxuICBnZXRDdXN0b21BdHRyaWJ1dGUobmFtZTogc3RyaW5nKTogYW55IHsgcmV0dXJuIHRoaXMuY3VzdG9tQXR0cmlidXRlcz8uW25hbWVdID8/IG51bGw7IH1cbiAgc2V0Q3VzdG9tQXR0cmlidXRlKG5hbWU6IHN0cmluZywgdmFsdWU6IGFueSk6IHZvaWQgeyBpZiAobmFtZSkgeyB0aGlzLmN1c3RvbUF0dHJpYnV0ZXNbbmFtZV0gPSB2YWx1ZTsgfSB9XG5cbiAgc2V0Q3VzdG9tQXR0cmlidXRlcyhhdHRyaWJ1dGVzOiBhbnkpOiBGb3JtUGllY2Uge1xuICAgIE9iamVjdC5lbnRyaWVzKGF0dHJpYnV0ZXMpLmZvckVhY2goKFtuYW1lLCB2YWx1ZV0pID0+IHtcbiAgICAgIHRoaXMuc2V0Q3VzdG9tQXR0cmlidXRlKG5hbWUsIHZhbHVlKTtcbiAgICB9KTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIG1hdGNoQXR0cmlidXRlKG5hbWU6IHN0cmluZywgdmFsdWU6IHN0cmluZyk6IGJvb2xlYW4geyByZXR1cm4gdGhpcy5jdXN0b21BdHRyaWJ1dGVzPy5bbmFtZV0gPT09IHZhbHVlOyB9XG5cbiAgc2V0VmlzaWJsZVN0YXRlcyhuZXdTdGF0ZXM6IGFueSk6IHZvaWQge1xuICAgIGNvbnN0IHZpc2libGVTdGF0ZXMgPSAoIUFycmF5LmlzQXJyYXkobmV3U3RhdGVzKSAmJiB0eXBlb2YgbmV3U3RhdGVzID09PSAnc3RyaW5nJylcbiAgICAgID8gbmV3U3RhdGVzLnNwbGl0KCcsJykubWFwKHN0YXRlID0+IHN0YXRlLnRyaW0oKSkuZmlsdGVyKHN0YXRlID0+IHN0YXRlLmxlbmd0aCA+IDApXG4gICAgICA6IG5ld1N0YXRlcztcbiAgICB0aGlzLnZpc2libGVTdGF0ZXMgPSAoQXJyYXkuaXNBcnJheSh2aXNpYmxlU3RhdGVzKSkgPyBbLi4uKG5ldyBTZXQodmlzaWJsZVN0YXRlcykpXSA6IFtdO1xuICB9XG5cbiAgYWRkVmlzaWJsZVN0YXRlKHN0YXRlOiBzdHJpbmcpIHtcbiAgICBpZiAoIXRoaXMudmlzaWJsZVN0YXRlcy5pbmNsdWRlcyhzdGF0ZSkpIHtcbiAgICAgIHRoaXMudmlzaWJsZVN0YXRlcy5wdXNoKHN0YXRlKTtcbiAgICB9XG4gIH1cblxuICByZW1vdmVWaXNpYmxlU3RhdGUoc3RhdGU6IHN0cmluZykge1xuICAgIGNvbnN0IGV4aXN0U3RhdGVJZHggPSB0aGlzLnZpc2libGVTdGF0ZXMuZmluZEluZGV4KHN0ID0+IHN0ID09PSBzdGF0ZSk7XG4gICAgaWYgKGV4aXN0U3RhdGVJZHggPj0gMCkge1xuICAgICAgdGhpcy52aXNpYmxlU3RhdGVzLnNwbGljZShleGlzdFN0YXRlSWR4LCAxKTtcbiAgICB9XG4gIH1cblxuICBzZXRFbmFibGVkU3RhdGVzKG5ld1N0YXRlczogYW55KTogdm9pZCB7XG4gICAgY29uc3QgZW5hYmxlZFN0YXRlcyA9ICghQXJyYXkuaXNBcnJheShuZXdTdGF0ZXMpICYmIHR5cGVvZiBuZXdTdGF0ZXMgPT09ICdzdHJpbmcnKVxuICAgICAgPyBuZXdTdGF0ZXMuc3BsaXQoJywnKS5tYXAoc3RhdGUgPT4gc3RhdGUudHJpbSgpKS5maWx0ZXIoc3RhdGUgPT4gc3RhdGUubGVuZ3RoID4gMClcbiAgICAgIDogbmV3U3RhdGVzO1xuICAgIHRoaXMuZW5hYmxlZFN0YXRlcyA9IChBcnJheS5pc0FycmF5KGVuYWJsZWRTdGF0ZXMpKSA/IFsuLi4obmV3IFNldChlbmFibGVkU3RhdGVzKSldIDogW107XG4gIH1cblxuICBhZGRFbmFibGVkU3RhdGUoc3RhdGU6IHN0cmluZykge1xuICAgIGlmICghdGhpcy5lbmFibGVkU3RhdGVzLmluY2x1ZGVzKHN0YXRlKSkge1xuICAgICAgdGhpcy5lbmFibGVkU3RhdGVzLnB1c2goc3RhdGUpO1xuICAgIH1cbiAgfVxuXG4gIHJlbW92ZUVuYWJsZWRTdGF0ZShzdGF0ZTogc3RyaW5nKSB7XG4gICAgY29uc3QgZXhpc3RTdGF0ZUlkeCA9IHRoaXMuZW5hYmxlZFN0YXRlcy5maW5kSW5kZXgoc3QgPT4gc3QgPT09IHN0YXRlKTtcbiAgICBpZiAoZXhpc3RTdGF0ZUlkeCA+PSAwKSB7XG4gICAgICB0aGlzLmVuYWJsZWRTdGF0ZXMuc3BsaWNlKGV4aXN0U3RhdGVJZHgsIDEpO1xuICAgIH1cbiAgfVxuXG4gIHZpZXdPblN0YXRlKHN0YXRlOiBzdHJpbmcpOiBib29sZWFuIHsgcmV0dXJuICh0aGlzLnZpc2libGVTdGF0ZXMgJiYgc3RhdGUpID8gdGhpcy52aXNpYmxlU3RhdGVzLmluY2x1ZGVzKHN0YXRlKSA6IGZhbHNlOyB9XG4gIGVuYWJsZWRPblN0YXRlKHN0YXRlOiBzdHJpbmcpOiBib29sZWFuIHsgcmV0dXJuICh0aGlzLmVuYWJsZWRTdGF0ZXMgJiYgc3RhdGUpID8gdGhpcy5lbmFibGVkU3RhdGVzLmluY2x1ZGVzKHN0YXRlKSA6IGZhbHNlOyB9XG5cbiAgZ2V0IGFic29sdXRlVmlzaWJsZSgpOiBib29sZWFuIHsgcmV0dXJuIHRoaXMuX2Fic29sdXRlVmlzaWJsZTsgfVxuICBnZXQgYWJzb2x1dGVEaXNhYmxlZCgpOiBib29sZWFuIHsgcmV0dXJuIHRoaXMuX2Fic29sdXRlRGlzYWJsZWQ7IH1cblxuICBnZXQgdmlzaWJsZSgpOiBib29sZWFuIHsgcmV0dXJuIHRoaXMuX3Zpc2libGU7IH1cbiAgc2V0IHZpc2libGUodmlzaWJsZTogYm9vbGVhbikgeyB0aGlzLnNldFZpc2liaWxpdHkodmlzaWJsZSk7IH1cblxuICB2aXNpYmxlT24oc3RhdGU6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9hYnNvbHV0ZVZpc2libGUgJiYgdGhpcy52aWV3T25TdGF0ZShzdGF0ZSk7XG4gIH1cblxuICBlbmFibGVkT24oc3RhdGU6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhdGhpcy5fYWJzb2x1dGVEaXNhYmxlZCAmJiB0aGlzLmVuYWJsZWRPblN0YXRlKHN0YXRlKTtcbiAgfVxuXG4gIHNldFZpc2liaWxpdHkodmlzaWJsZTogYm9vbGVhbiwgZm9yY2VkOiBib29sZWFuIHwgbnVsbCA9IG51bGwpOiB2b2lkIHtcbiAgICB0aGlzLl9hYnNvbHV0ZVZpc2libGUgPSAhIXZpc2libGU7XG4gICAgaWYgKGZvcmNlZCAhPT0gbnVsbCkge1xuICAgICAgdGhpcy5faXNGb3JjZWQgPSBmb3JjZWQ7XG4gICAgICB0aGlzLl92aXNpYmxlRm9yY2VkID0gdmlzaWJsZTtcbiAgICB9XG4gICAgdGhpcy5fdmlzaWJsZSA9IHRoaXMuX2Fic29sdXRlVmlzaWJsZSAmJiB0aGlzLnZpZXdPblN0YXRlKHRoaXMuX2Zvcm1TdGF0ZSk7XG4gIH1cblxuICBzaG93KGZvcmNlZDogYm9vbGVhbiB8IG51bGwgPSBudWxsKTogdm9pZCB7XG4gICAgdGhpcy5zZXRWaXNpYmlsaXR5KHRydWUsIGZvcmNlZCk7XG4gIH1cblxuICBoaWRlKGZvcmNlZDogYm9vbGVhbiB8IG51bGwgPSBudWxsKTogdm9pZCB7XG4gICAgdGhpcy5zZXRWaXNpYmlsaXR5KGZhbHNlLCBmb3JjZWQpO1xuICB9XG5cbiAgZ2V0IGVuYWJsZWQoKTogYm9vbGVhbiB7IHJldHVybiAhdGhpcy5fZGlzYWJsZWQ7IH1cbiAgc2V0IGVuYWJsZWQoZW5hYmxlZCkge1xuICAgIHRoaXMuX2Fic29sdXRlRGlzYWJsZWQgPSAhZW5hYmxlZDtcbiAgICB0aGlzLl9kaXNhYmxlZCA9IHRoaXMuX2Fic29sdXRlRGlzYWJsZWQgfHwgIXRoaXMuZW5hYmxlZE9uU3RhdGUodGhpcy5fZm9ybVN0YXRlKTtcbiAgfVxuXG4gIGdldCBlZGl0YWJsZSgpOiBib29sZWFuIHsgcmV0dXJuICF0aGlzLl9kaXNhYmxlZDsgfVxuXG4gIGdldCBkaXNhYmxlZCgpOiBib29sZWFuIHsgcmV0dXJuIHRoaXMuX2Rpc2FibGVkOyB9XG5cbiAgc2V0IGRpc2FibGVkKGRpc2FibGVkKSB7IHRoaXMuZW5hYmxlZCA9ICFkaXNhYmxlZDsgfVxuXG4gIGVuYWJsZSgpOiB2b2lkIHsgdGhpcy5lbmFibGVkID0gdHJ1ZTsgfVxuICBkaXNhYmxlKCk6IHZvaWQgeyB0aGlzLmVuYWJsZWQgPSBmYWxzZTsgfVxuXG4gIGZvcm1TdGF0ZUNoYW5nZUN1c3RvbVN1YnNjcmliZShmb3JtLCBmb3JtQ2hhbmdlU3ViamVjdCkgeyB9XG5cbiAgZm9ybVN0YXRlQ2hhbmdlKHN0YXRlKSB7XG4gICAgaWYgKHN0YXRlKSB7XG4gICAgICB0aGlzLl9mb3JtU3RhdGUgPSBzdGF0ZTtcbiAgICAgIHRoaXMuX3Zpc2libGUgPSB0aGlzLl9hYnNvbHV0ZVZpc2libGUgJiYgdGhpcy52aWV3T25TdGF0ZShzdGF0ZSk7XG4gICAgICB0aGlzLl9kaXNhYmxlZCA9IHRoaXMuX2Fic29sdXRlRGlzYWJsZWQgfHwgIXRoaXMuZW5hYmxlZE9uU3RhdGUoc3RhdGUpO1xuICAgIH1cbiAgfVxuXG4gIGNvbm5lY3RXaXRoUGFyZW50Rm9ybShmb3JtLCBmb3JtQ2hhbmdlU3ViamVjdCkge1xuICAgIHRoaXMuX2Zvcm0gPSBmb3JtO1xuICAgIHRoaXMuZm9ybVN0YXRlQ2hhbmdlQ3VzdG9tU3Vic2NyaWJlKGZvcm0sIGZvcm1DaGFuZ2VTdWJqZWN0KTtcbiAgICBmb3JtQ2hhbmdlU3ViamVjdC5zdWJzY3JpYmUoZXZlbnQgPT4gdGhpcy5mb3JtU3RhdGVDaGFuZ2UoZXZlbnQ/LnN0YXRlKSk7XG4gIH1cblxuICBzZXQgd2lkZ2V0KHdpZGdldCkgeyB0aGlzLl93aWRnZXQgPSB3aWRnZXQ7IH1cbiAgZ2V0IHdpZGdldCgpIHsgcmV0dXJuIHRoaXMuX3dpZGdldDsgfVxufVxuIl19
|
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
import { Subject } from 'rxjs';
|
|
2
|
+
import { FormPiecePropagate } from './piece-propagate';
|
|
3
|
+
import { RecordFormSubSection } from './subsection';
|
|
4
|
+
const ACTIVE = 'active';
|
|
5
|
+
export class RecordFormSection extends FormPiecePropagate {
|
|
6
|
+
_activation = new Subject();
|
|
7
|
+
_inactivation = new Subject();
|
|
8
|
+
active = false;
|
|
9
|
+
sectionId = null;
|
|
10
|
+
sectionCode = null;
|
|
11
|
+
sectionTitle = null;
|
|
12
|
+
subSections = [];
|
|
13
|
+
subSectionsObj;
|
|
14
|
+
_exclusiveSubSectionsByAttr = {};
|
|
15
|
+
constructor(sectionReceived, formObject, formConfig) {
|
|
16
|
+
super(sectionReceived, formConfig);
|
|
17
|
+
this.propagationCustomAttributes = this._formConfig?.propagationCustomAttributes?.sections ?? [];
|
|
18
|
+
if (!sectionReceived) {
|
|
19
|
+
return;
|
|
20
|
+
}
|
|
21
|
+
this.sectionId = (sectionReceived.sectionId) ? sectionReceived.sectionId.toString() : '';
|
|
22
|
+
this.sectionCode = (sectionReceived.sectionCode) ? sectionReceived.sectionCode : '';
|
|
23
|
+
this.sectionTitle = (sectionReceived.sectionTitle) ? sectionReceived.sectionTitle : '';
|
|
24
|
+
this.subSections = [];
|
|
25
|
+
this.subSectionsObj = {};
|
|
26
|
+
if (sectionReceived.subsections) {
|
|
27
|
+
const subsections = sectionReceived.subsections.map(subSecDef => {
|
|
28
|
+
const visibleStates = subSecDef.visibleStates ?? [];
|
|
29
|
+
if (subSecDef.elements && Array.isArray(subSecDef.elements)) {
|
|
30
|
+
subSecDef.elements = subSecDef.elements.map(elm => ({ code: elm.elementCode, type: elm.elementTypeName }));
|
|
31
|
+
}
|
|
32
|
+
return { ...subSecDef, visibleStates };
|
|
33
|
+
});
|
|
34
|
+
for (const subsectionReceived of subsections) {
|
|
35
|
+
const subSectionToAdd = new RecordFormSubSection(subsectionReceived, formObject, formConfig);
|
|
36
|
+
const subsectionCode = subSectionToAdd.subsectionCode;
|
|
37
|
+
if (subsectionCode) {
|
|
38
|
+
this.subSections.push(subSectionToAdd);
|
|
39
|
+
this.subSectionsObj[subsectionCode] = subSectionToAdd;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
get code() { return this.sectionCode; }
|
|
45
|
+
get activation() { return this._activation; }
|
|
46
|
+
get inactivation() { return this._inactivation; }
|
|
47
|
+
activate() {
|
|
48
|
+
if (!this.active) {
|
|
49
|
+
this.active = true;
|
|
50
|
+
this.sectionCode && this._activation.next(this.sectionCode);
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
inactivate() {
|
|
54
|
+
if (this.active) {
|
|
55
|
+
this.active = false;
|
|
56
|
+
this.sectionCode && this._inactivation.next(this.sectionCode);
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
get title() { return this.sectionTitle; }
|
|
60
|
+
set title(title) { this.sectionTitle = title; }
|
|
61
|
+
getVisibleSubsections(state) {
|
|
62
|
+
return this.subSections.filter(subSection => subSection.visible);
|
|
63
|
+
}
|
|
64
|
+
getSubsection(subSectionCode) {
|
|
65
|
+
return (this.subSectionsObj && this.subSectionsObj[subSectionCode])
|
|
66
|
+
? this.subSectionsObj[subSectionCode] : null;
|
|
67
|
+
}
|
|
68
|
+
activateSubSection(subSectionCode) {
|
|
69
|
+
if (subSectionCode === this._exclusiveSubSectionsByAttr[ACTIVE]) {
|
|
70
|
+
return;
|
|
71
|
+
}
|
|
72
|
+
const subSection = (this.subSectionsObj && this.subSectionsObj[subSectionCode])
|
|
73
|
+
? this.subSectionsObj[subSectionCode] : null;
|
|
74
|
+
if (subSection) {
|
|
75
|
+
subSection?.activate();
|
|
76
|
+
this._exclusiveSubSectionsByAttr[ACTIVE] = subSectionCode;
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
getFields() {
|
|
80
|
+
let fieldsArray = [];
|
|
81
|
+
if (this.subSections && this.subSections.length > 0) {
|
|
82
|
+
for (const subSection of this.subSections) {
|
|
83
|
+
const subsectionFields = subSection.getFields() ?? [];
|
|
84
|
+
if (subsectionFields?.length > 0) {
|
|
85
|
+
fieldsArray = fieldsArray.concat(subsectionFields);
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
return fieldsArray;
|
|
90
|
+
}
|
|
91
|
+
getActions() {
|
|
92
|
+
let actionArray = [];
|
|
93
|
+
if (this.subSections && this.subSections.length > 0) {
|
|
94
|
+
for (const subSection of this.subSections) {
|
|
95
|
+
const subSectionActions = subSection.getActions() ?? [];
|
|
96
|
+
if (subSectionActions?.length > 0) {
|
|
97
|
+
actionArray = actionArray.concat(subSectionActions);
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
return actionArray;
|
|
102
|
+
}
|
|
103
|
+
getActionNames() {
|
|
104
|
+
let actionArray = [];
|
|
105
|
+
if (this.subSections && this.subSections.length > 0) {
|
|
106
|
+
for (const subSection of this.subSections) {
|
|
107
|
+
actionArray = actionArray.concat(subSection.getActionNames());
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
return actionArray;
|
|
111
|
+
}
|
|
112
|
+
getFieldNames() {
|
|
113
|
+
let fieldsArray = [];
|
|
114
|
+
if (this.subSections && this.subSections.length > 0) {
|
|
115
|
+
for (const subSection of this.subSections) {
|
|
116
|
+
fieldsArray = fieldsArray.concat(subSection.getFieldNames());
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
return fieldsArray;
|
|
120
|
+
}
|
|
121
|
+
getField(name) {
|
|
122
|
+
let field = null;
|
|
123
|
+
if (this.subSections && this.subSections.length > 0) {
|
|
124
|
+
for (const subSection of this.subSections) {
|
|
125
|
+
field = subSection.getField(name);
|
|
126
|
+
if (field) {
|
|
127
|
+
return field;
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
return null;
|
|
132
|
+
}
|
|
133
|
+
formStateChangeCustomSubscribe(form, formChangeSubject) {
|
|
134
|
+
this.subSections?.forEach(subsection => {
|
|
135
|
+
subsection?.connectWithParentForm(form, formChangeSubject);
|
|
136
|
+
});
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R1YWluLW5nLWZvcm1zLWxpYi9zcmMvbGliL2NsYXNzZXMvZm9ybXMvc2VjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRXZELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUVwRCxNQUFNLE1BQU0sR0FBRyxRQUFRLENBQUM7QUFFeEIsTUFBTSxPQUFPLGlCQUFrQixTQUFRLGtCQUFrQjtJQUN0QyxXQUFXLEdBQUcsSUFBSSxPQUFPLEVBQVUsQ0FBQztJQUNwQyxhQUFhLEdBQUcsSUFBSSxPQUFPLEVBQVUsQ0FBQztJQUV2RCxNQUFNLEdBQUcsS0FBSyxDQUFDO0lBQ2YsU0FBUyxHQUFrQixJQUFJLENBQUM7SUFDaEMsV0FBVyxHQUFrQixJQUFJLENBQUM7SUFDbEMsWUFBWSxHQUFrQixJQUFJLENBQUM7SUFDbkMsV0FBVyxHQUEyQixFQUFFLENBQUM7SUFDekMsY0FBYyxDQUFNO0lBQ1osMkJBQTJCLEdBQUcsRUFBRSxDQUFDO0lBRXpDLFlBQVksZUFBZSxFQUFFLFVBQVUsRUFBRSxVQUFVO1FBQ2pELEtBQUssQ0FBQyxlQUFlLEVBQUUsVUFBVSxDQUFDLENBQUM7UUFDbkMsSUFBSSxDQUFDLDJCQUEyQixHQUFHLElBQUksQ0FBQyxXQUFXLEVBQUUsMkJBQTJCLEVBQUUsUUFBUSxJQUFJLEVBQUUsQ0FBQztRQUNqRyxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7WUFBQyxPQUFPO1FBQUMsQ0FBQztRQUNqQyxJQUFJLENBQUMsU0FBUyxHQUFHLENBQUMsZUFBZSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxlQUFlLENBQUMsU0FBUyxDQUFD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LENBQUMsV0FBVyxJQUFJLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQ3BELEtBQUssTUFBTSxVQUFVLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO2dCQUMxQyxXQUFXLEdBQUcsV0FBVyxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsYUFBYSxFQUFFLENBQUMsQ0FBQztZQUMvRCxDQUFDO1FBQ0gsQ0FBQztRQUNELE9BQU8sV0FBVyxDQUFDO0lBQ3JCLENBQUM7SUFFRCxRQUFRLENBQUMsSUFBSTtRQUNYLElBQUksS0FBSyxHQUFHLElBQUksQ0FBQztRQUNqQixJQUFJLElBQUksQ0FBQyxXQUFXLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDcEQsS0FBSyxNQUFNLFVBQVUsSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7Z0JBQzFDLEtBQUssR0FBRyxVQUFVLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUNsQyxJQUFJLEtBQUssRUFBRSxDQUFDO29CQUNWLE9BQU8sS0FBSyxDQUFDO2dCQUNmLENBQUM7WUFDSCxDQUFDO1FBQ0gsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVRLDhCQUE4QixDQUFDLElBQUksRUFBRSxpQkFBaUI7UUFDN0QsSUFBSSxDQUFDLFdBQVcsRUFBRSxPQUFPLENBQUMsVUFBVSxDQUFDLEVBQUU7WUFDckMsVUFBVSxFQUFFLHFCQUFxQixDQUFDLElBQUksRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO1FBQzdELENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRm9ybVBpZWNlUHJvcGFnYXRlIH0gZnJvbSAnLi9waWVjZS1wcm9wYWdhdGUnO1xuaW1wb3J0IHsgRm9ybUFjdGlvbiB9IGZyb20gJy4vYWN0aW9uJztcbmltcG9ydCB7IFJlY29yZEZvcm1TdWJTZWN0aW9uIH0gZnJvbSAnLi9zdWJzZWN0aW9uJztcblxuY29uc3QgQUNUSVZFID0gJ2FjdGl2ZSc7XG5cbmV4cG9ydCBjbGFzcyBSZWNvcmRGb3JtU2VjdGlvbiBleHRlbmRzIEZvcm1QaWVjZVByb3BhZ2F0ZSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2FjdGl2YXRpb24gPSBuZXcgU3ViamVjdDxzdHJpbmc+KCk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2luYWN0aXZhdGlvbiA9IG5ldyBTdWJqZWN0PHN0cmluZz4oKTtcblxuICBhY3RpdmUgPSBmYWxzZTtcbiAgc2VjdGlvbklkOiBzdHJpbmcgfCBudWxsID0gbnVsbDtcbiAgc2VjdGlvbkNvZGU6IHN0cmluZyB8IG51bGwgPSBudWxsO1xuICBzZWN0aW9uVGl0bGU6IHN0cmluZyB8IG51bGwgPSBudWxsO1xuICBzdWJTZWN0aW9uczogUmVjb3JkRm9ybVN1YlNlY3Rpb25bXSA9IFtdO1xuICBzdWJTZWN0aW9uc09iajogYW55O1xuICBwcml2YXRlIF9leGNsdXNpdmVTdWJTZWN0aW9uc0J5QXR0ciA9IHt9O1xuXG4gIGNvbnN0cnVjdG9yKHNlY3Rpb25SZWNlaXZlZCwgZm9ybU9iamVjdCwgZm9ybUNvbmZpZykge1xuICAgIHN1cGVyKHNlY3Rpb25SZWNlaXZlZCwgZm9ybUNvbmZpZyk7XG4gICAgdGhpcy5wcm9wYWdhdGlvbkN1c3RvbUF0dHJpYnV0ZXMgPSB0aGlzLl9mb3JtQ29uZmlnPy5wcm9wYWdhdGlvbkN1c3RvbUF0dHJpYnV0ZXM/LnNlY3Rpb25zID8/IFtdO1xuICAgIGlmICghc2VjdGlvblJlY2VpdmVkKSB7IHJldHVybjsgfVxuICAgIHRoaXMuc2VjdGlvbklkID0gKHNlY3Rpb25SZWNlaXZlZC5zZWN0aW9uSWQpID8gc2VjdGlvblJlY2VpdmVkLnNlY3Rpb25JZC50b1N0cmluZygpIDogJyc7XG4gICAgdGhpcy5zZWN0aW9uQ29kZSA9IChzZWN0aW9uUmVjZWl2ZWQuc2VjdGlvbkNvZGUpID8gc2VjdGlvblJlY2VpdmVkLnNlY3Rpb25Db2RlIDogJyc7XG4gICAgdGhpcy5zZWN0aW9uVGl0bGUgPSAoc2VjdGlvblJlY2VpdmVkLnNlY3Rpb25UaXRsZSkgPyBzZWN0aW9uUmVjZWl2ZWQuc2VjdGlvblRpdGxlIDogJyc7XG4gICAgdGhpcy5zdWJTZWN0aW9ucyA9IFtdO1xuICAgIHRoaXMuc3ViU2VjdGlvbnNPYmogPSB7fTtcbiAgICBpZiAoc2VjdGlvblJlY2VpdmVkLnN1YnNlY3Rpb25zKSB7XG4gICAgICBjb25zdCBzdWJzZWN0aW9ucyA9IHNlY3Rpb25SZWNlaXZlZC5zdWJzZWN0aW9ucy5tYXAoc3ViU2VjRGVmID0+IHtcbiAgICAgICAgY29uc3QgdmlzaWJsZVN0YXRlcyA9IHN1YlNlY0RlZi52aXNpYmxlU3RhdGVzID8/IFtdO1xuICAgICAgICBpZiAoc3ViU2VjRGVmLmVsZW1lbnRzICYmIEFycmF5LmlzQXJyYXkoc3ViU2VjRGVmLmVsZW1lbnRzKSkge1xuICAgICAgICAgIHN1YlNlY0RlZi5lbGVtZW50cyA9IHN1YlNlY0RlZi5lbGVtZW50cy5tYXAoZWxtID0+ICh7IGNvZGU6IGVsbS5lbGVtZW50Q29kZSwgdHlwZTogZWxtLmVsZW1lbnRUeXBlTmFtZSB9KSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHsgLi4uc3ViU2VjRGVmLCB2aXNpYmxlU3RhdGVzIH07XG4gICAgICB9KTtcbiAgICAgIGZvciAoY29uc3Qgc3Vic2VjdGlvblJlY2VpdmVkIG9mIHN1YnNlY3Rpb25zKSB7XG4gICAgICAgIGNvbnN0IHN1YlNlY3Rpb25Ub0FkZCA9IG5ldyBSZWNvcmRGb3JtU3ViU2VjdGlvbihzdWJzZWN0aW9uUmVjZWl2ZWQsIGZvcm1PYmplY3QsIGZvcm1Db25maWcpO1xuICAgICAgICBjb25zdCBzdWJzZWN0aW9uQ29kZSA9IHN1YlNlY3Rpb25Ub0FkZC5zdWJzZWN0aW9uQ29kZTtcbiAgICAgICAgaWYgKHN1YnNlY3Rpb25Db2RlKSB7XG4gICAgICAgICAgdGhpcy5zdWJTZWN0aW9ucy5wdXNoKHN1YlNlY3Rpb25Ub0FkZCk7XG4gICAgICAgICAgdGhpcy5zdWJTZWN0aW9uc09ialtzdWJzZWN0aW9uQ29kZV0gPSBzdWJTZWN0aW9uVG9BZGQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBnZXQgY29kZSgpIHsgcmV0dXJuIHRoaXMuc2VjdGlvbkNvZGU7IH1cbiAgZ2V0IGFjdGl2YXRpb24oKSB7IHJldHVybiB0aGlzLl9hY3RpdmF0aW9uOyB9XG4gIGdldCBpbmFjdGl2YXRpb24oKSB7IHJldHVybiB0aGlzLl9pbmFjdGl2YXRpb247IH1cblxuICBhY3RpdmF0ZSgpIHtcbiAgICBpZiAoIXRoaXMuYWN0aXZlKSB7XG4gICAgICB0aGlzLmFjdGl2ZSA9IHRydWU7XG4gICAgICB0aGlzLnNlY3Rpb25Db2RlICYmIHRoaXMuX2FjdGl2YXRpb24ubmV4dCh0aGlzLnNlY3Rpb25Db2RlKTtcbiAgICB9XG4gIH1cblxuICBpbmFjdGl2YXRlKCkge1xuICAgIGlmICh0aGlzLmFjdGl2ZSkge1xuICAgICAgdGhpcy5hY3RpdmUgPSBmYWxzZTtcbiAgICAgIHRoaXMuc2VjdGlvbkNvZGUgJiYgdGhpcy5faW5hY3RpdmF0aW9uLm5leHQodGhpcy5zZWN0aW9uQ29kZSk7XG4gICAgfVxuICB9XG5cbiAgZ2V0IHRpdGxlKCkgeyByZXR1cm4gdGhpcy5zZWN0aW9uVGl0bGU7IH1cbiAgc2V0IHRpdGxlKHRpdGxlKSB7IHRoaXMuc2VjdGlvblRpdGxlID0gdGl0bGU7IH1cblxuICBnZXRWaXNpYmxlU3Vic2VjdGlvbnMoc3RhdGUpIHtcbiAgICByZXR1cm4gdGhpcy5zdWJTZWN0aW9ucy5maWx0ZXIoc3ViU2VjdGlvbiA9PiBzdWJTZWN0aW9uLnZpc2libGUpO1xuICB9XG5cbiAgZ2V0U3Vic2VjdGlvbihzdWJTZWN0aW9uQ29kZSkge1xuICAgIHJldHVybiAodGhpcy5zdWJTZWN0aW9uc09iaiAmJiB0aGlzLnN1YlNlY3Rpb25zT2JqW3N1YlNlY3Rpb25Db2RlXSlcbiAgICAgID8gdGhpcy5zdWJTZWN0aW9uc09ialtzdWJTZWN0aW9uQ29kZV0gOiBudWxsO1xuICB9XG5cbiAgYWN0aXZhdGVTdWJTZWN0aW9uKHN1YlNlY3Rpb25Db2RlKSB7XG4gICAgaWYgKHN1YlNlY3Rpb25Db2RlID09PSB0aGlzLl9leGNsdXNpdmVTdWJTZWN0aW9uc0J5QXR0cltBQ1RJVkVdKSB7IHJldHVybjsgfVxuICAgIGNvbnN0IHN1YlNlY3Rpb24gPSAodGhpcy5zdWJTZWN0aW9uc09iaiAmJiB0aGlzLnN1YlNlY3Rpb25zT2JqW3N1YlNlY3Rpb25Db2RlXSlcbiAgICAgID8gdGhpcy5zdWJTZWN0aW9uc09ialtzdWJTZWN0aW9uQ29kZV0gOiBudWxsO1xuICAgIGlmIChzdWJTZWN0aW9uKSB7XG4gICAgICBzdWJTZWN0aW9uPy5hY3RpdmF0ZSgpO1xuICAgICAgdGhpcy5fZXhjbHVzaXZlU3ViU2VjdGlvbnNCeUF0dHJbQUNUSVZFXSA9IHN1YlNlY3Rpb25Db2RlO1xuICAgIH1cbiAgfVxuXG4gIGdldEZpZWxkcygpIHtcbiAgICBsZXQgZmllbGRzQXJyYXk6IGFueVtdID0gW107XG4gICAgaWYgKHRoaXMuc3ViU2VjdGlvbnMgJiYgdGhpcy5zdWJTZWN0aW9ucy5sZW5ndGggPiAwKSB7XG4gICAgICBmb3IgKGNvbnN0IHN1YlNlY3Rpb24gb2YgdGhpcy5zdWJTZWN0aW9ucykge1xuICAgICAgICBjb25zdCBzdWJzZWN0aW9uRmllbGRzOiBhbnlbXSA9IHN1YlNlY3Rpb24uZ2V0RmllbGRzKCkgPz8gW107XG4gICAgICAgIGlmIChzdWJzZWN0aW9uRmllbGRzPy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgZmllbGRzQXJyYXkgPSBmaWVsZHNBcnJheS5jb25jYXQoc3Vic2VjdGlvbkZpZWxkcyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGZpZWxkc0FycmF5O1xuICB9XG5cbiAgZ2V0QWN0aW9ucygpOiBGb3JtQWN0aW9uW10ge1xuICAgIGxldCBhY3Rpb25BcnJheTogYW55W10gPSBbXTtcbiAgICBpZiAodGhpcy5zdWJTZWN0aW9ucyAmJiB0aGlzLnN1YlNlY3Rpb25zLmxlbmd0aCA+IDApIHtcbiAgICAgIGZvciAoY29uc3Qgc3ViU2VjdGlvbiBvZiB0aGlzLnN1YlNlY3Rpb25zKSB7XG4gICAgICAgIGNvbnN0IHN1YlNlY3Rpb25BY3Rpb25zID0gc3ViU2VjdGlvbi5nZXRBY3Rpb25zKCkgPz8gW107XG4gICAgICAgIGlmIChzdWJTZWN0aW9uQWN0aW9ucz8ubGVuZ3RoID4gMCkge1xuICAgICAgICAgIGFjdGlvbkFycmF5ID0gYWN0aW9uQXJyYXkuY29uY2F0KHN1YlNlY3Rpb25BY3Rpb25zKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gYWN0aW9uQXJyYXk7XG4gIH1cblxuICBnZXRBY3Rpb25OYW1lcygpOiBzdHJpbmdbXSB7XG4gICAgbGV0IGFjdGlvbkFycmF5OiBzdHJpbmdbXSA9IFtdO1xuICAgIGlmICh0aGlzLnN1YlNlY3Rpb25zICYmIHRoaXMuc3ViU2VjdGlvbnMubGVuZ3RoID4gMCkge1xuICAgICAgZm9yIChjb25zdCBzdWJTZWN0aW9uIG9mIHRoaXMuc3ViU2VjdGlvbnMpIHtcbiAgICAgICAgYWN0aW9uQXJyYXkgPSBhY3Rpb25BcnJheS5jb25jYXQoc3ViU2VjdGlvbi5nZXRBY3Rpb25OYW1lcygpKTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGFjdGlvbkFycmF5O1xuICB9XG5cbiAgZ2V0RmllbGROYW1lcygpIHtcbiAgICBsZXQgZmllbGRzQXJyYXk6IHN0cmluZ1tdID0gW107XG4gICAgaWYgKHRoaXMuc3ViU2VjdGlvbnMgJiYgdGhpcy5zdWJTZWN0aW9ucy5sZW5ndGggPiAwKSB7XG4gICAgICBmb3IgKGNvbnN0IHN1YlNlY3Rpb24gb2YgdGhpcy5zdWJTZWN0aW9ucykge1xuICAgICAgICBmaWVsZHNBcnJheSA9IGZpZWxkc0FycmF5LmNvbmNhdChzdWJTZWN0aW9uLmdldEZpZWxkTmFtZXMoKSk7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBmaWVsZHNBcnJheTtcbiAgfVxuXG4gIGdldEZpZWxkKG5hbWUpIHtcbiAgICBsZXQgZmllbGQgPSBudWxsO1xuICAgIGlmICh0aGlzLnN1YlNlY3Rpb25zICYmIHRoaXMuc3ViU2VjdGlvbnMubGVuZ3RoID4gMCkge1xuICAgICAgZm9yIChjb25zdCBzdWJTZWN0aW9uIG9mIHRoaXMuc3ViU2VjdGlvbnMpIHtcbiAgICAgICAgZmllbGQgPSBzdWJTZWN0aW9uLmdldEZpZWxkKG5hbWUpO1xuICAgICAgICBpZiAoZmllbGQpIHtcbiAgICAgICAgICByZXR1cm4gZmllbGQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICBvdmVycmlkZSBmb3JtU3RhdGVDaGFuZ2VDdXN0b21TdWJzY3JpYmUoZm9ybSwgZm9ybUNoYW5nZVN1YmplY3QpIHtcbiAgICB0aGlzLnN1YlNlY3Rpb25zPy5mb3JFYWNoKHN1YnNlY3Rpb24gPT4ge1xuICAgICAgc3Vic2VjdGlvbj8uY29ubmVjdFdpdGhQYXJlbnRGb3JtKGZvcm0sIGZvcm1DaGFuZ2VTdWJqZWN0KTtcbiAgICB9KTtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import { FormPiecePropagate } from './piece-propagate';
|
|
2
|
+
import { elementTypes } from './form.constants';
|
|
3
|
+
export class RecordFormSubSection extends FormPiecePropagate {
|
|
4
|
+
_customRender = null;
|
|
5
|
+
subsectionId = null;
|
|
6
|
+
subsectionCode = null;
|
|
7
|
+
subsectionTitle = null;
|
|
8
|
+
subSectionElements = [];
|
|
9
|
+
subSectionFields = [];
|
|
10
|
+
subSectionTables = [];
|
|
11
|
+
subSectionActions = [];
|
|
12
|
+
elementsArray = {};
|
|
13
|
+
active = false;
|
|
14
|
+
constructor(subsectionReceived, formObject, formConfig) {
|
|
15
|
+
super(subsectionReceived, formConfig);
|
|
16
|
+
this.propagationCustomAttributes = this._formConfig?.propagationCustomAttributes?.subsections ?? [];
|
|
17
|
+
if (!subsectionReceived) {
|
|
18
|
+
return;
|
|
19
|
+
}
|
|
20
|
+
this.subsectionId = (subsectionReceived.subsectionId) ? subsectionReceived.subsectionId.toString() : '';
|
|
21
|
+
this.subsectionCode = (subsectionReceived.subsectionCode) ? subsectionReceived.subsectionCode : '';
|
|
22
|
+
this.subsectionTitle = (subsectionReceived.subsectionTitle) ? subsectionReceived.subsectionTitle : '';
|
|
23
|
+
if (subsectionReceived.elements) {
|
|
24
|
+
for (const receivedElement of subsectionReceived.elements) {
|
|
25
|
+
let elementObject = null;
|
|
26
|
+
let arrayToAdd = [];
|
|
27
|
+
const { type, code } = receivedElement;
|
|
28
|
+
switch (type) {
|
|
29
|
+
case elementTypes.field:
|
|
30
|
+
elementObject = formObject.getField(code);
|
|
31
|
+
arrayToAdd = this.subSectionFields;
|
|
32
|
+
break;
|
|
33
|
+
case elementTypes.table:
|
|
34
|
+
elementObject = formObject.getTable(code);
|
|
35
|
+
arrayToAdd = this.subSectionTables;
|
|
36
|
+
break;
|
|
37
|
+
case elementTypes.action:
|
|
38
|
+
elementObject = formObject.getAction(code);
|
|
39
|
+
arrayToAdd = this.subSectionActions;
|
|
40
|
+
break;
|
|
41
|
+
}
|
|
42
|
+
if (elementObject) {
|
|
43
|
+
elementObject.elementType = type;
|
|
44
|
+
arrayToAdd.push(elementObject);
|
|
45
|
+
this.subSectionElements.push(elementObject);
|
|
46
|
+
this.elementsArray[code] = elementObject;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
get customRender() { return this._customRender; }
|
|
52
|
+
set customRender(customRenderName) { this._customRender = customRenderName; }
|
|
53
|
+
getField(name) {
|
|
54
|
+
return this.subSectionFields.find(fld => fld.name === name);
|
|
55
|
+
}
|
|
56
|
+
getFields() {
|
|
57
|
+
return this.subSectionFields;
|
|
58
|
+
}
|
|
59
|
+
getFieldNames() {
|
|
60
|
+
return this.subSectionFields.map(field => field.code);
|
|
61
|
+
}
|
|
62
|
+
getActions() {
|
|
63
|
+
return this.subSectionActions;
|
|
64
|
+
}
|
|
65
|
+
getActionNames() {
|
|
66
|
+
return this.subSectionActions.map(action => action.actionCode);
|
|
67
|
+
}
|
|
68
|
+
activate() {
|
|
69
|
+
if (!this.active) {
|
|
70
|
+
this.active = true;
|
|
71
|
+
// this.subsectionCode && this._activation.next(this.subsectionCode);
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
inactivate() {
|
|
75
|
+
if (this.active) {
|
|
76
|
+
this.active = false;
|
|
77
|
+
// this.subsectionCode && this._inactivation.next(this.subsectionCode);
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Vic2VjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R1YWluLW5nLWZvcm1zLWxpYi9zcmMvbGliL2NsYXNzZXMvZm9ybXMvc3Vic2VjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUV2RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFaEQsTUFBTSxPQUFPLG9CQUFxQixTQUFRLGtCQUFrQjtJQUMxRCxhQUFhLEdBQWtCLElBQUksQ0FBQztJQUNwQyxZQUFZLEdBQWtCLElBQUksQ0FBQztJQUNuQyxjQUFjLEdBQWtCLElBQUksQ0FBQztJQUNyQyxlQUFlLEdBQWtCLElBQUksQ0FBQztJQUV0QyxrQkFBa0IsR0FBVSxFQUFFLENBQUM7SUFDL0IsZ0JBQWdCLEdBQVUsRUFBRSxDQUFDO0lBQzdCLGdCQUFnQixHQUFVLEVBQUUsQ0FBQztJQUM3QixpQkFBaUIsR0FBVSxFQUFFLENBQUM7SUFDOUIsYUFBYSxHQUFRLEVBQUUsQ0FBQztJQUN4QixNQUFNLEdBQUcsS0FBSyxDQUFDO0lBRWYsWUFBWSxrQkFBa0IsRUFBRSxVQUFVLEVBQUUsVUFBVTtRQUNwRCxLQUFLLENBQUMsa0JBQWtCLEVBQUUsVUFBVSxDQUFDLENBQUM7UUFDdEMsSUFBSSxDQUFDLDJCQUEyQixHQUFHLElBQUksQ0FBQyxXQUFXLEVBQUUsMkJBQTJCLEVBQUUsV0FBVyxJQUFJLEVBQUUsQ0FBQztRQUNwRyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztZQUFDLE9BQU87UUFBQyxDQUFDO1FBQ3BDLElBQUksQ0FBQyxZQUFZLEdBQUcsQ0FBQyxrQkFBa0IsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUMsa0JBQWtCLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENB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QUNILENBQUM7SUFFRCxVQUFVO1FBQ1IsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDaEIsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7WUFDcEIsdUVBQXVFO1FBQ3pFLENBQUM7SUFDSCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGb3JtUGllY2VQcm9wYWdhdGUgfSBmcm9tICcuL3BpZWNlLXByb3BhZ2F0ZSc7XG5pbXBvcnQgeyBGb3JtQWN0aW9uIH0gZnJvbSAnLi9hY3Rpb24nO1xuaW1wb3J0IHsgZWxlbWVudFR5cGVzIH0gZnJvbSAnLi9mb3JtLmNvbnN0YW50cyc7XG5cbmV4cG9ydCBjbGFzcyBSZWNvcmRGb3JtU3ViU2VjdGlvbiBleHRlbmRzIEZvcm1QaWVjZVByb3BhZ2F0ZSB7XG4gIF9jdXN0b21SZW5kZXI6IHN0cmluZyB8IG51bGwgPSBudWxsO1xuICBzdWJzZWN0aW9uSWQ6IHN0cmluZyB8IG51bGwgPSBudWxsO1xuICBzdWJzZWN0aW9uQ29kZTogc3RyaW5nIHwgbnVsbCA9IG51bGw7XG4gIHN1YnNlY3Rpb25UaXRsZTogc3RyaW5nIHwgbnVsbCA9IG51bGw7XG5cbiAgc3ViU2VjdGlvbkVsZW1lbnRzOiBhbnlbXSA9IFtdO1xuICBzdWJTZWN0aW9uRmllbGRzOiBhbnlbXSA9IFtdO1xuICBzdWJTZWN0aW9uVGFibGVzOiBhbnlbXSA9IFtdO1xuICBzdWJTZWN0aW9uQWN0aW9uczogYW55W10gPSBbXTtcbiAgZWxlbWVudHNBcnJheTogYW55ID0ge307XG4gIGFjdGl2ZSA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKHN1YnNlY3Rpb25SZWNlaXZlZCwgZm9ybU9iamVjdCwgZm9ybUNvbmZpZykge1xuICAgIHN1cGVyKHN1YnNlY3Rpb25SZWNlaXZlZCwgZm9ybUNvbmZpZyk7XG4gICAgdGhpcy5wcm9wYWdhdGlvbkN1c3RvbUF0dHJpYnV0ZXMgPSB0aGlzLl9mb3JtQ29uZmlnPy5wcm9wYWdhdGlvbkN1c3RvbUF0dHJpYnV0ZXM/LnN1YnNlY3Rpb25zID8/IFtdO1xuICAgIGlmICghc3Vic2VjdGlvblJlY2VpdmVkKSB7IHJldHVybjsgfVxuICAgIHRoaXMuc3Vic2VjdGlvbklkID0gKHN1YnNlY3Rpb25SZWNlaXZlZC5zdWJzZWN0aW9uSWQpID8gc3Vic2VjdGlvblJlY2VpdmVkLnN1YnNlY3Rpb25JZC50b1N0cmluZygpIDogJyc7XG4gICAgdGhpcy5zdWJzZWN0aW9uQ29kZSA9IChzdWJzZWN0aW9uUmVjZWl2ZWQuc3Vic2VjdGlvbkNvZGUpID8gc3Vic2VjdGlvblJlY2VpdmVkLnN1YnNlY3Rpb25Db2RlIDogJyc7XG4gICAgdGhpcy5zdWJzZWN0aW9uVGl0bGUgPSAoc3Vic2VjdGlvblJlY2VpdmVkLnN1YnNlY3Rpb25UaXRsZSkgPyBzdWJzZWN0aW9uUmVjZWl2ZWQuc3Vic2VjdGlvblRpdGxlIDogJyc7XG4gICAgaWYgKHN1YnNlY3Rpb25SZWNlaXZlZC5lbGVtZW50cykge1xuICAgICAgZm9yIChjb25zdCByZWNlaXZlZEVsZW1lbnQgb2Ygc3Vic2VjdGlvblJlY2VpdmVkLmVsZW1lbnRzKSB7XG4gICAgICAgIGxldCBlbGVtZW50T2JqZWN0OiBhbnkgPSBudWxsO1xuICAgICAgICBsZXQgYXJyYXlUb0FkZDogYW55W10gPSBbXTtcbiAgICAgICAgY29uc3QgeyB0eXBlLCBjb2RlIH0gPSByZWNlaXZlZEVsZW1lbnQ7XG4gICAgICAgIHN3aXRjaCAodHlwZSkge1xuICAgICAgICAgIGNhc2UgZWxlbWVudFR5cGVzLmZpZWxkOlxuICAgICAgICAgICAgZWxlbWVudE9iamVjdCA9IGZvcm1PYmplY3QuZ2V0RmllbGQoY29kZSk7XG4gICAgICAgICAgICBhcnJheVRvQWRkID0gdGhpcy5zdWJTZWN0aW9uRmllbGRzO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgY2FzZSBlbGVtZW50VHlwZXMudGFibGU6XG4gICAgICAgICAgICBlbGVtZW50T2JqZWN0ID0gZm9ybU9iamVjdC5nZXRUYWJsZShjb2RlKTtcbiAgICAgICAgICAgIGFycmF5VG9BZGQgPSB0aGlzLnN1YlNlY3Rpb25UYWJsZXM7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICBjYXNlIGVsZW1lbnRUeXBlcy5hY3Rpb246XG4gICAgICAgICAgICBlbGVtZW50T2JqZWN0ID0gZm9ybU9iamVjdC5nZXRBY3Rpb24oY29kZSk7XG4gICAgICAgICAgICBhcnJheVRvQWRkID0gdGhpcy5zdWJTZWN0aW9uQWN0aW9ucztcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICAgIGlmIChlbGVtZW50T2JqZWN0KSB7XG4gICAgICAgICAgZWxlbWVudE9iamVjdC5lbGVtZW50VHlwZSA9IHR5cGU7XG4gICAgICAgICAgYXJyYXlUb0FkZC5wdXNoKGVsZW1lbnRPYmplY3QpO1xuICAgICAgICAgIHRoaXMuc3ViU2VjdGlvbkVsZW1lbnRzLnB1c2goZWxlbWVudE9iamVjdCk7XG4gICAgICAgICAgdGhpcy5lbGVtZW50c0FycmF5W2NvZGVdID0gZWxlbWVudE9iamVjdDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGdldCBjdXN0b21SZW5kZXIoKSB7IHJldHVybiB0aGlzLl9jdXN0b21SZW5kZXI7IH1cbiAgc2V0IGN1c3RvbVJlbmRlcihjdXN0b21SZW5kZXJOYW1lKSB7IHRoaXMuX2N1c3RvbVJlbmRlciA9IGN1c3RvbVJlbmRlck5hbWU7IH1cblxuICBnZXRGaWVsZChuYW1lKSB7XG4gICAgcmV0dXJuIHRoaXMuc3ViU2VjdGlvbkZpZWxkcy5maW5kKGZsZCA9PiBmbGQubmFtZSA9PT0gbmFtZSk7XG4gIH1cblxuICBnZXRGaWVsZHMoKSB7XG4gICAgcmV0dXJuIHRoaXMuc3ViU2VjdGlvbkZpZWxkcztcbiAgfVxuXG4gIGdldEZpZWxkTmFtZXMoKSB7XG4gICAgcmV0dXJuIHRoaXMuc3ViU2VjdGlvbkZpZWxkcy5tYXAoZmllbGQgPT4gZmllbGQuY29kZSk7XG4gIH1cblxuICBnZXRBY3Rpb25zKCk6IEZvcm1BY3Rpb25bXSB7XG4gICAgcmV0dXJuIHRoaXMuc3ViU2VjdGlvbkFjdGlvbnM7XG4gIH1cblxuICBnZXRBY3Rpb25OYW1lcygpOiBzdHJpbmdbXSB7XG4gICAgcmV0dXJuIHRoaXMuc3ViU2VjdGlvbkFjdGlvbnMubWFwKGFjdGlvbiA9PiBhY3Rpb24uYWN0aW9uQ29kZSk7XG4gIH1cblxuICBhY3RpdmF0ZSgpIHtcbiAgICBpZiAoIXRoaXMuYWN0aXZlKSB7XG4gICAgICB0aGlzLmFjdGl2ZSA9IHRydWU7XG4gICAgICAvLyB0aGlzLnN1YnNlY3Rpb25Db2RlICYmIHRoaXMuX2FjdGl2YXRpb24ubmV4dCh0aGlzLnN1YnNlY3Rpb25Db2RlKTtcbiAgICB9XG4gIH1cblxuICBpbmFjdGl2YXRlKCkge1xuICAgIGlmICh0aGlzLmFjdGl2ZSkge1xuICAgICAgdGhpcy5hY3RpdmUgPSBmYWxzZTtcbiAgICAgIC8vIHRoaXMuc3Vic2VjdGlvbkNvZGUgJiYgdGhpcy5faW5hY3RpdmF0aW9uLm5leHQodGhpcy5zdWJzZWN0aW9uQ29kZSk7XG4gICAgfVxuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { FormPiece } from '../piece';
|
|
2
|
+
export class TableAction extends FormPiece {
|
|
3
|
+
actionCode;
|
|
4
|
+
actionTitle;
|
|
5
|
+
iconName;
|
|
6
|
+
actionType;
|
|
7
|
+
actionClass;
|
|
8
|
+
stateField;
|
|
9
|
+
newState;
|
|
10
|
+
backend;
|
|
11
|
+
restrictedOnField = null;
|
|
12
|
+
restrictedOnValue = null;
|
|
13
|
+
restrictedOnOperator = null;
|
|
14
|
+
constructor(actionDefinition, formConfig) {
|
|
15
|
+
super(actionDefinition, formConfig);
|
|
16
|
+
this.actionCode = actionDefinition.actionCode;
|
|
17
|
+
this.actionTitle = actionDefinition.actionTitle;
|
|
18
|
+
this.iconName = actionDefinition.iconName || this.actionCode;
|
|
19
|
+
this.actionType = actionDefinition.actionType || 'STANDARD';
|
|
20
|
+
this.actionClass = actionDefinition.actionClass || 'INLINE';
|
|
21
|
+
this.newState = actionDefinition.newState;
|
|
22
|
+
this.stateField = actionDefinition.stateField || '';
|
|
23
|
+
this.backend = actionDefinition?.serverAction ?? false;
|
|
24
|
+
this.restrictedOnField = actionDefinition.fieldRestrictedCode ?? null;
|
|
25
|
+
if (this.restrictedOnField) {
|
|
26
|
+
this.restrictedOnValue = actionDefinition.valueRestricted ?? null;
|
|
27
|
+
this.restrictedOnOperator = actionDefinition.operatorRestricted || null;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
formStateChange(state) {
|
|
31
|
+
if (state) {
|
|
32
|
+
this._formState = state;
|
|
33
|
+
this._visible = this._absoluteVisible && this.viewOnState(state);
|
|
34
|
+
this._disabled = this._absoluteDisabled || !this.enabledOnState(state);
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHVhaW4tbmctZm9ybXMtbGliL3NyYy9saWIvY2xhc3Nlcy9mb3Jtcy90YWJsZS9hY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUNyQyxNQUFNLE9BQU8sV0FBWSxTQUFRLFNBQVM7SUFDeEMsVUFBVSxDQUFTO0lBQ25CLFdBQVcsQ0FBUztJQUNwQixRQUFRLENBQVM7SUFDakIsVUFBVSxDQUFTO0lBQ25CLFdBQVcsQ0FBUztJQUNwQixVQUFVLENBQVM7SUFDbkIsUUFBUSxDQUFTO0lBQ2pCLE9BQU8sQ0FBVTtJQUVqQixpQkFBaUIsR0FBa0IsSUFBSSxDQUFDO0lBQ3hDLGlCQUFpQixHQUFrQixJQUFJLENBQUM7SUFDeEMsb0JBQW9CLEdBQWtCLElBQUksQ0FBQztJQUUzQyxZQUFZLGdCQUFnQixFQUFFLFVBQVU7UUFDdEMsS0FBSyxDQUFDLGdCQUFnQixFQUFFLFVBQVUsQ0FBQyxDQUFDO1FBRXBDLElBQUksQ0FBQyxVQUFVLEdBQUcsZ0JBQWdCLENBQUMsVUFBVSxDQUFDO1FBQzlDLElBQUksQ0FBQyxXQUFXLEdBQUcsZ0JBQWdCLENBQUMsV0FBVyxDQUFDO1FBQ2hELElBQUksQ0FBQyxRQUFRLEdBQUcsZ0JBQWdCLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxVQUFVLENBQUM7UUFDN0QsSUFBSSxDQUFDLFVBQVUsR0FBRyxnQkFBZ0IsQ0FBQyxVQUFVLElBQUksVUFBVSxDQUFDO1FBQzVELElBQUksQ0FBQyxXQUFXLEdBQUcsZ0JBQWdCLENBQUMsV0FBVyxJQUFJLFFBQVEsQ0FBQztRQUM1RCxJQUFJLENBQUMsUUFBUSxHQUFHLGdCQUFnQixDQUFDLFFBQVEsQ0FBQztRQUMxQyxJQUFJLENBQUMsVUFBVSxHQUFHLGdCQUFnQixDQUFDLFVBQVUsSUFBSSxFQUFFLENBQUM7UUFDcEQsSUFBSSxDQUFDLE9BQU8sR0FBRyxnQkFBZ0IsRUFBRSxZQUFZLElBQUksS0FBSyxDQUFDO1FBQ3ZELElBQUksQ0FBQyxpQkFBaUIsR0FBRyxnQkFBZ0IsQ0FBQyxtQkFBbUIsSUFBSSxJQUFJLENBQUM7UUFDdEUsSUFBSSxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztZQUMzQixJQUFJLENBQUMsaUJBQWlCLEdBQUcsZ0JBQWdCLENBQUMsZUFBZSxJQUFJLElBQUksQ0FBQztZQUNsRSxJQUFJLENBQUMsb0JBQW9CLEdBQUcsZ0JBQWdCLENBQUMsa0JBQWtCLElBQUksSUFBSSxDQUFDO1FBQzFFLENBQUM7SUFDSCxDQUFDO0lBRVEsZUFBZSxDQUFDLEtBQUs7UUFDNUIsSUFBSSxLQUFLLEVBQUUsQ0FBQztZQUNWLElBQUksQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDO1lBQ3hCLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixJQUFJLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDakUsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsaUJBQWlCLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3pFLENBQUM7SUFDSCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGb3JtUGllY2UgfSBmcm9tICcuLi9waWVjZSc7XG5leHBvcnQgY2xhc3MgVGFibGVBY3Rpb24gZXh0ZW5kcyBGb3JtUGllY2Uge1xuICBhY3Rpb25Db2RlOiBzdHJpbmc7XG4gIGFjdGlvblRpdGxlOiBzdHJpbmc7XG4gIGljb25OYW1lOiBzdHJpbmc7XG4gIGFjdGlvblR5cGU6IHN0cmluZztcbiAgYWN0aW9uQ2xhc3M6IHN0cmluZztcbiAgc3RhdGVGaWVsZDogc3RyaW5nO1xuICBuZXdTdGF0ZTogc3RyaW5nO1xuICBiYWNrZW5kOiBib29sZWFuO1xuXG4gIHJlc3RyaWN0ZWRPbkZpZWxkOiBzdHJpbmcgfCBudWxsID0gbnVsbDtcbiAgcmVzdHJpY3RlZE9uVmFsdWU6IHN0cmluZyB8IG51bGwgPSBudWxsO1xuICByZXN0cmljdGVkT25PcGVyYXRvcjogc3RyaW5nIHwgbnVsbCA9IG51bGw7XG5cbiAgY29uc3RydWN0b3IoYWN0aW9uRGVmaW5pdGlvbiwgZm9ybUNvbmZpZykge1xuICAgIHN1cGVyKGFjdGlvbkRlZmluaXRpb24sIGZvcm1Db25maWcpO1xuXG4gICAgdGhpcy5hY3Rpb25Db2RlID0gYWN0aW9uRGVmaW5pdGlvbi5hY3Rpb25Db2RlO1xuICAgIHRoaXMuYWN0aW9uVGl0bGUgPSBhY3Rpb25EZWZpbml0aW9uLmFjdGlvblRpdGxlO1xuICAgIHRoaXMuaWNvbk5hbWUgPSBhY3Rpb25EZWZpbml0aW9uLmljb25OYW1lIHx8IHRoaXMuYWN0aW9uQ29kZTtcbiAgICB0aGlzLmFjdGlvblR5cGUgPSBhY3Rpb25EZWZpbml0aW9uLmFjdGlvblR5cGUgfHwgJ1NUQU5EQVJEJztcbiAgICB0aGlzLmFjdGlvbkNsYXNzID0gYWN0aW9uRGVmaW5pdGlvbi5hY3Rpb25DbGFzcyB8fCAnSU5MSU5FJztcbiAgICB0aGlzLm5ld1N0YXRlID0gYWN0aW9uRGVmaW5pdGlvbi5uZXdTdGF0ZTtcbiAgICB0aGlzLnN0YXRlRmllbGQgPSBhY3Rpb25EZWZpbml0aW9uLnN0YXRlRmllbGQgfHwgJyc7XG4gICAgdGhpcy5iYWNrZW5kID0gYWN0aW9uRGVmaW5pdGlvbj8uc2VydmVyQWN0aW9uID8/IGZhbHNlO1xuICAgIHRoaXMucmVzdHJpY3RlZE9uRmllbGQgPSBhY3Rpb25EZWZpbml0aW9uLmZpZWxkUmVzdHJpY3RlZENvZGUgPz8gbnVsbDtcbiAgICBpZiAodGhpcy5yZXN0cmljdGVkT25GaWVsZCkge1xuICAgICAgdGhpcy5yZXN0cmljdGVkT25WYWx1ZSA9IGFjdGlvbkRlZmluaXRpb24udmFsdWVSZXN0cmljdGVkID8/IG51bGw7XG4gICAgICB0aGlzLnJlc3RyaWN0ZWRPbk9wZXJhdG9yID0gYWN0aW9uRGVmaW5pdGlvbi5vcGVyYXRvclJlc3RyaWN0ZWQgfHwgbnVsbDtcbiAgICB9XG4gIH1cblxuICBvdmVycmlkZSBmb3JtU3RhdGVDaGFuZ2Uoc3RhdGUpIHtcbiAgICBpZiAoc3RhdGUpIHtcbiAgICAgIHRoaXMuX2Zvcm1TdGF0ZSA9IHN0YXRlO1xuICAgICAgdGhpcy5fdmlzaWJsZSA9IHRoaXMuX2Fic29sdXRlVmlzaWJsZSAmJiB0aGlzLnZpZXdPblN0YXRlKHN0YXRlKTtcbiAgICAgIHRoaXMuX2Rpc2FibGVkID0gdGhpcy5fYWJzb2x1dGVEaXNhYmxlZCB8fCAhdGhpcy5lbmFibGVkT25TdGF0ZShzdGF0ZSk7XG4gICAgfVxuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import { FormPiece } from '../piece';
|
|
2
|
+
export class RecordTableColumn extends FormPiece {
|
|
3
|
+
fieldCode = '';
|
|
4
|
+
fieldTitle = '';
|
|
5
|
+
fieldType = '';
|
|
6
|
+
fieldAlignment = '';
|
|
7
|
+
fieldFormat = '';
|
|
8
|
+
sortable = true;
|
|
9
|
+
searchable = true;
|
|
10
|
+
sortDirections = [];
|
|
11
|
+
// Filtros
|
|
12
|
+
filterVisible = false;
|
|
13
|
+
filterDef = null;
|
|
14
|
+
filterSetup = null;
|
|
15
|
+
constructor(recTableColReceived, formConfig) {
|
|
16
|
+
super(recTableColReceived, formConfig);
|
|
17
|
+
this.filterDef = null;
|
|
18
|
+
if (recTableColReceived) {
|
|
19
|
+
this.fieldCode = recTableColReceived.fieldCode;
|
|
20
|
+
this.fieldTitle = recTableColReceived.fieldTitle;
|
|
21
|
+
this.fieldType = recTableColReceived.fieldTypeCode || this._formConfig.fieldTypes.text;
|
|
22
|
+
const defaultTypeAlignment = (this._formConfig.tableFieldStyles[this.fieldType] != null) ? this._formConfig.tableFieldStyles[this.fieldType]['text-align'] : 'left';
|
|
23
|
+
this.fieldAlignment = (recTableColReceived.alignment != null) ? recTableColReceived.alignment.toLowerCase() : defaultTypeAlignment;
|
|
24
|
+
this._absoluteVisible = recTableColReceived?.visible ?? true;
|
|
25
|
+
this.sortable = recTableColReceived?.sortable ?? false;
|
|
26
|
+
this.searchable = recTableColReceived?.searchable ?? true;
|
|
27
|
+
this.sortDirections = (this.sortable) ? ['ascend', 'descend'] : [];
|
|
28
|
+
this.fieldFormat = recTableColReceived.format || '';
|
|
29
|
+
this.customAttributes = recTableColReceived?.customAttributes ?? {};
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
setSearchable(searchable = true) { this.searchable = searchable; }
|
|
33
|
+
hideFilter() {
|
|
34
|
+
this.filterVisible = false;
|
|
35
|
+
}
|
|
36
|
+
addFilterDefinition(filterDefinition) {
|
|
37
|
+
this.filterDef = {
|
|
38
|
+
operators: filterDefinition.operators,
|
|
39
|
+
options: filterDefinition.options ?? null,
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
get filterDefinition() {
|
|
43
|
+
return this.filterDef;
|
|
44
|
+
}
|
|
45
|
+
addFilter(columnValues, operator) {
|
|
46
|
+
this.filterSetup = {
|
|
47
|
+
fieldCode: this.fieldCode,
|
|
48
|
+
operator: operator ?? this.filterDef?.operators[0] ?? 'IN',
|
|
49
|
+
values: columnValues,
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
get filter() {
|
|
53
|
+
return this.filterSetup;
|
|
54
|
+
}
|
|
55
|
+
removeFilter() {
|
|
56
|
+
this.filterSetup = null;
|
|
57
|
+
}
|
|
58
|
+
get options() {
|
|
59
|
+
if (this.filterDef?.operators?.length === 1 && this.filterDef?.operators[0] === 'IN') {
|
|
60
|
+
return this.filterDef?.options;
|
|
61
|
+
}
|
|
62
|
+
return null;
|
|
63
|
+
}
|
|
64
|
+
serSortDirections(ascend, descend) {
|
|
65
|
+
this.sortDirections = [];
|
|
66
|
+
if (ascend) {
|
|
67
|
+
this.sortDirections.unshift('ascend');
|
|
68
|
+
}
|
|
69
|
+
if (descend) {
|
|
70
|
+
this.sortDirections.unshift('descend');
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sdW1uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHVhaW4tbmctZm9ybXMtbGliL3NyYy9saWIvY2xhc3Nlcy9mb3Jtcy90YWJsZS9jb2x1bW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQVlyQyxNQUFNLE9BQU8saUJBQWtCLFNBQVEsU0FBUztJQUM5QyxTQUFTLEdBQVcsRUFBRSxDQUFDO0lBQ3ZCLFVBQVUsR0FBVyxFQUFFLENBQUM7SUFDeEIsU0FBUyxHQUFXLEVBQUUsQ0FBQztJQUN2QixjQUFjLEdBQVcsRUFBRSxDQUFDO0lBQzVCLFdBQVcsR0FBVyxFQUFFLENBQUM7SUFDekIsUUFBUSxHQUFZLElBQUksQ0FBQztJQUN6QixVQUFVLEdBQVksSUFBSSxDQUFDO0lBQzNCLGNBQWMsR0FBYSxFQUFFLENBQUM7SUFDOUIsVUFBVTtJQUNWLGFBQWEsR0FBWSxLQUFLLENBQUM7SUFDL0IsU0FBUyxHQUFxQixJQUFJLENBQUM7SUFDbkMsV0FBVyxHQUF1QixJQUFJLENBQUM7SUFFdkMsWUFBWSxtQkFBbUIsRUFBRSxVQUFVO1FBQ3pDLEtBQUssQ0FBQyxtQkFBbUIsRUFBRSxVQUFVLENBQUMsQ0FBQztRQUN2QyxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQztRQUN0QixJQUFJLG1CQUFtQixFQUFFLENBQUM7WUFDeEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxtQkFBbUIsQ0FBQyxTQUFTLENBQUM7WUFDL0MsSUFBSSxDQUFDLFVBQVUsR0FBRyxtQkFBbUIsQ0FBQyxVQUFVLENBQUM7WUFDakQsSUFBSSxDQUFDLFNBQVMsR0FBRyxtQkFBbUIsQ0FBQyxhQUFhLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDO1lBQ3ZGLE1BQU0sb0JBQW9CLEdBQUcsQ0FBQyxJQUFJLENBQUMs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LGNBQWMsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDekMsQ0FBQztJQUNILENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZvcm1QaWVjZSB9IGZyb20gJy4uL3BpZWNlJztcblxuZXhwb3J0IGludGVyZmFjZSBGaWx0ZXJEZWYge1xuICBvcGVyYXRvcnM6IHN0cmluZ1tdO1xuICBvcHRpb25zOiBhbnlbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBGaWx0ZXJTZXR1cCB7XG4gIGZpZWxkQ29kZTogc3RyaW5nO1xuICBvcGVyYXRvcjogc3RyaW5nO1xuICB2YWx1ZXM6IGFueVtdO1xufVxuZXhwb3J0IGNsYXNzIFJlY29yZFRhYmxlQ29sdW1uIGV4dGVuZHMgRm9ybVBpZWNlIHtcbiAgZmllbGRDb2RlOiBzdHJpbmcgPSAnJztcbiAgZmllbGRUaXRsZTogc3RyaW5nID0gJyc7XG4gIGZpZWxkVHlwZTogc3RyaW5nID0gJyc7XG4gIGZpZWxkQWxpZ25tZW50OiBzdHJpbmcgPSAnJztcbiAgZmllbGRGb3JtYXQ6IHN0cmluZyA9ICcnO1xuICBzb3J0YWJsZTogYm9vbGVhbiA9IHRydWU7XG4gIHNlYXJjaGFibGU6IGJvb2xlYW4gPSB0cnVlO1xuICBzb3J0RGlyZWN0aW9uczogc3RyaW5nW10gPSBbXTtcbiAgLy8gRmlsdHJvc1xuICBmaWx0ZXJWaXNpYmxlOiBib29sZWFuID0gZmFsc2U7XG4gIGZpbHRlckRlZjogRmlsdGVyRGVmIHwgbnVsbCA9IG51bGw7XG4gIGZpbHRlclNldHVwOiBGaWx0ZXJTZXR1cCB8IG51bGwgPSBudWxsO1xuXG4gIGNvbnN0cnVjdG9yKHJlY1RhYmxlQ29sUmVjZWl2ZWQsIGZvcm1Db25maWcpIHtcbiAgICBzdXBlcihyZWNUYWJsZUNvbFJlY2VpdmVkLCBmb3JtQ29uZmlnKTtcbiAgICB0aGlzLmZpbHRlckRlZiA9IG51bGw7XG4gICAgaWYgKHJlY1RhYmxlQ29sUmVjZWl2ZWQpIHtcbiAgICAgIHRoaXMuZmllbGRDb2RlID0gcmVjVGFibGVDb2xSZWNlaXZlZC5maWVsZENvZGU7XG4gICAgICB0aGlzLmZpZWxkVGl0bGUgPSByZWNUYWJsZUNvbFJlY2VpdmVkLmZpZWxkVGl0bGU7XG4gICAgICB0aGlzLmZpZWxkVHlwZSA9IHJlY1RhYmxlQ29sUmVjZWl2ZWQuZmllbGRUeXBlQ29kZSB8fCB0aGlzLl9mb3JtQ29uZmlnLmZpZWxkVHlwZXMudGV4dDtcbiAgICAgIGNvbnN0IGRlZmF1bHRUeXBlQWxpZ25tZW50ID0gKHRoaXMuX2Zvcm1Db25maWcudGFibGVGaWVsZFN0eWxlc1t0aGlzLmZpZWxkVHlwZV0gIT0gbnVsbCkgPyB0aGlzLl9mb3JtQ29uZmlnLnRhYmxlRmllbGRTdHlsZXNbdGhpcy5maWVsZFR5cGVdWyd0ZXh0LWFsaWduJ10gOiAnbGVmdCc7XG4gICAgICB0aGlzLmZpZWxkQWxpZ25tZW50ID0gKHJlY1RhYmxlQ29sUmVjZWl2ZWQuYWxpZ25tZW50ICE9IG51bGwpID8gcmVjVGFibGVDb2xSZWNlaXZlZC5hbGlnbm1lbnQudG9Mb3dlckNhc2UoKSA6IGRlZmF1bHRUeXBlQWxpZ25tZW50O1xuICAgICAgdGhpcy5fYWJzb2x1dGVWaXNpYmxlID0gcmVjVGFibGVDb2xSZWNlaXZlZD8udmlzaWJsZSA/PyB0cnVlO1xuICAgICAgdGhpcy5zb3J0YWJsZSA9IHJlY1RhYmxlQ29sUmVjZWl2ZWQ/LnNvcnRhYmxlID8/IGZhbHNlO1xuICAgICAgdGhpcy5zZWFyY2hhYmxlID0gcmVjVGFibGVDb2xSZWNlaXZlZD8uc2VhcmNoYWJsZSA/PyB0cnVlO1xuICAgICAgdGhpcy5zb3J0RGlyZWN0aW9ucyA9ICh0aGlzLnNvcnRhYmxlKSA/IFsnYXNjZW5kJywgJ2Rlc2NlbmQnXSA6IFtdO1xuICAgICAgdGhpcy5maWVsZEZvcm1hdCA9IHJlY1RhYmxlQ29sUmVjZWl2ZWQuZm9ybWF0IHx8ICcnO1xuICAgICAgdGhpcy5jdXN0b21BdHRyaWJ1dGVzID0gcmVjVGFibGVDb2xSZWNlaXZlZD8uY3VzdG9tQXR0cmlidXRlcyA/PyB7fTtcbiAgICB9XG4gIH1cblxuICBzZXRTZWFyY2hhYmxlKHNlYXJjaGFibGUgPSB0cnVlKSB7IHRoaXMuc2VhcmNoYWJsZSA9IHNlYXJjaGFibGU7IH1cblxuICBoaWRlRmlsdGVyKCkge1xuICAgIHRoaXMuZmlsdGVyVmlzaWJsZSA9IGZhbHNlO1xuICB9XG5cbiAgYWRkRmlsdGVyRGVmaW5pdGlvbihmaWx0ZXJEZWZpbml0aW9uKSB7XG4gICAgdGhpcy5maWx0ZXJEZWYgPSB7XG4gICAgICBvcGVyYXRvcnM6IGZpbHRlckRlZmluaXRpb24ub3BlcmF0b3JzLFxuICAgICAgb3B0aW9uczogZmlsdGVyRGVmaW5pdGlvbi5vcHRpb25zID8/IG51bGwsXG4gICAgfTtcbiAgfVxuXG4gIGdldCBmaWx0ZXJEZWZpbml0aW9uKCkge1xuICAgIHJldHVybiB0aGlzLmZpbHRlckRlZjtcbiAgfVxuXG4gIGFkZEZpbHRlcihjb2x1bW5WYWx1ZXMsIG9wZXJhdG9yKSB7XG4gICAgdGhpcy5maWx0ZXJTZXR1cCA9IHtcbiAgICAgIGZpZWxkQ29kZTogdGhpcy5maWVsZENvZGUsXG4gICAgICBvcGVyYXRvcjogb3BlcmF0b3IgPz8gdGhpcy5maWx0ZXJEZWY/Lm9wZXJhdG9yc1swXSA/PyAnSU4nLFxuICAgICAgdmFsdWVzOiBjb2x1bW5WYWx1ZXMsXG4gICAgfVxuICB9XG5cbiAgZ2V0IGZpbHRlcigpIHtcbiAgICByZXR1cm4gdGhpcy5maWx0ZXJTZXR1cDtcbiAgfVxuXG4gIHJlbW92ZUZpbHRlcigpIHtcbiAgICB0aGlzLmZpbHRlclNldHVwID0gbnVsbDtcbiAgfVxuXG4gIGdldCBvcHRpb25zKCkge1xuICAgIGlmICh0aGlzLmZpbHRlckRlZj8ub3BlcmF0b3JzPy5sZW5ndGggPT09IDEgJiYgdGhpcy5maWx0ZXJEZWY/Lm9wZXJhdG9yc1swXSA9PT0gJ0lOJykge1xuICAgICAgcmV0dXJuIHRoaXMuZmlsdGVyRGVmPy5vcHRpb25zO1xuICAgIH1cbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIHNlclNvcnREaXJlY3Rpb25zKGFzY2VuZDogYm9vbGVhbiwgZGVzY2VuZDogYm9vbGVhbikge1xuICAgIHRoaXMuc29ydERpcmVjdGlvbnMgPSBbXTtcbiAgICBpZiAoYXNjZW5kKSB7XG4gICAgICB0aGlzLnNvcnREaXJlY3Rpb25zLnVuc2hpZnQoJ2FzY2VuZCcpO1xuICAgIH1cbiAgICBpZiAoZGVzY2VuZCkge1xuICAgICAgdGhpcy5zb3J0RGlyZWN0aW9ucy51bnNoaWZ0KCdkZXNjZW5kJyk7XG4gICAgfVxuICB9XG59XG4iXX0=
|