@openmrs/ngx-formentry 19.0.1-pre.489 → 19.0.1-pre.497
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/components/input/label.component.d.ts +1 -1
- package/components/ngx-pick-datetime/lib/date-time/date-time-inline.component.d.ts +1 -1
- package/components/ngx-pick-datetime/lib/date-time/date-time-picker-input.directive.d.ts +1 -1
- package/components/number-input/number-input.component.d.ts +1 -1
- package/components/select/select.component.d.ts +1 -1
- package/fesm2022/openmrs-ngx-formentry.mjs +412 -380
- package/fesm2022/openmrs-ngx-formentry.mjs.map +1 -1
- package/form-entry/form-entry.module.d.ts +2 -2
- package/form-entry/form-factory/form.factory.d.ts +2 -2
- package/form-entry/helpers/js-expression-helper.d.ts +2 -2
- package/form-entry/services/form-schema-compiler.service.d.ts +2 -0
- package/form-entry/value-adapters/obs.adapter.d.ts +0 -1
- package/form-entry/value-adapters/person-attribute.adapter.d.ts +3 -3
- package/lib/index.d.ts +1 -1
- package/package.json +10 -12
- package/esm2022/abstract-controls-extension/afe-control-type.mjs +0 -8
- package/esm2022/abstract-controls-extension/afe-form-array.mjs +0 -89
- package/esm2022/abstract-controls-extension/afe-form-control.mjs +0 -91
- package/esm2022/abstract-controls-extension/afe-form-group.mjs +0 -66
- package/esm2022/abstract-controls-extension/control-extensions.mjs +0 -5
- package/esm2022/abstract-controls-extension/index.mjs +0 -5
- package/esm2022/abstract-controls-extension/value-change.listener.mjs +0 -2
- package/esm2022/change-tracking/control-relation.mjs +0 -44
- package/esm2022/change-tracking/control-relations.mjs +0 -32
- package/esm2022/components/afe-ng-select.component.mjs +0 -101
- package/esm2022/components/appointments-overview/appointments-overview.component.mjs +0 -116
- package/esm2022/components/check-box/checkbox.component.mjs +0 -110
- package/esm2022/components/check-box/checkbox.module.mjs +0 -19
- package/esm2022/components/custom-component-wrapper/custom-component-wrapper..module.mjs +0 -22
- package/esm2022/components/custom-component-wrapper/custom-component-wrapper.component.mjs +0 -21
- package/esm2022/components/custom-control-wrapper/custom-control-wrapper..module.mjs +0 -23
- package/esm2022/components/custom-control-wrapper/custom-control-wrapper.component.mjs +0 -68
- package/esm2022/components/date-time-picker/date-picker/date-picker.component.mjs +0 -188
- package/esm2022/components/date-time-picker/date-time-picker.component.mjs +0 -115
- package/esm2022/components/date-time-picker/date-time-picker.module.mjs +0 -48
- package/esm2022/components/date-time-picker/index.mjs +0 -9
- package/esm2022/components/date-time-picker/picker-modal/modal.component.mjs +0 -25
- package/esm2022/components/date-time-picker/pipes/moment.pipe.mjs +0 -17
- package/esm2022/components/date-time-picker/time-picker/time-picker.component.mjs +0 -121
- package/esm2022/components/file-upload/file-upload.component.mjs +0 -109
- package/esm2022/components/file-upload/file-upload.module.mjs +0 -37
- package/esm2022/components/file-upload/secure.pipe.mjs +0 -101
- package/esm2022/components/input/input.directive.mjs +0 -78
- package/esm2022/components/input/input.module.mjs +0 -23
- package/esm2022/components/input/label.component.mjs +0 -263
- package/esm2022/components/input/text-area.directive.mjs +0 -58
- package/esm2022/components/ngx-datetime-picker/ngx-datetime-picker.component.mjs +0 -87
- package/esm2022/components/ngx-datetime-picker/ngx-datetime-picker.module.mjs +0 -40
- package/esm2022/components/ngx-pick-datetime/lib/date-time/adapter/date-time-adapter.class.mjs +0 -114
- package/esm2022/components/ngx-pick-datetime/lib/date-time/adapter/date-time-format.class.mjs +0 -7
- package/esm2022/components/ngx-pick-datetime/lib/date-time/adapter/native-date-time-adapter.class.mjs +0 -347
- package/esm2022/components/ngx-pick-datetime/lib/date-time/adapter/native-date-time-format.class.mjs +0 -16
- package/esm2022/components/ngx-pick-datetime/lib/date-time/adapter/native-date-time.module.mjs +0 -39
- package/esm2022/components/ngx-pick-datetime/lib/date-time/calendar-body.component.mjs +0 -142
- package/esm2022/components/ngx-pick-datetime/lib/date-time/calendar-month-view.component.mjs +0 -439
- package/esm2022/components/ngx-pick-datetime/lib/date-time/calendar-multi-year-view.component.mjs +0 -373
- package/esm2022/components/ngx-pick-datetime/lib/date-time/calendar-year-view.component.mjs +0 -367
- package/esm2022/components/ngx-pick-datetime/lib/date-time/calendar.component.mjs +0 -342
- package/esm2022/components/ngx-pick-datetime/lib/date-time/date-time-inline.component.mjs +0 -259
- package/esm2022/components/ngx-pick-datetime/lib/date-time/date-time-picker-container.component.mjs +0 -392
- package/esm2022/components/ngx-pick-datetime/lib/date-time/date-time-picker-input.directive.mjs +0 -614
- package/esm2022/components/ngx-pick-datetime/lib/date-time/date-time-picker-intl.service.mjs +0 -65
- package/esm2022/components/ngx-pick-datetime/lib/date-time/date-time-picker-trigger.directive.mjs +0 -70
- package/esm2022/components/ngx-pick-datetime/lib/date-time/date-time-picker.animations.mjs +0 -21
- package/esm2022/components/ngx-pick-datetime/lib/date-time/date-time-picker.component.mjs +0 -522
- package/esm2022/components/ngx-pick-datetime/lib/date-time/date-time.class.mjs +0 -166
- package/esm2022/components/ngx-pick-datetime/lib/date-time/date-time.module.mjs +0 -97
- package/esm2022/components/ngx-pick-datetime/lib/date-time/numberedFixLen.pipe.mjs +0 -28
- package/esm2022/components/ngx-pick-datetime/lib/date-time/timer-box.component.mjs +0 -90
- package/esm2022/components/ngx-pick-datetime/lib/date-time/timer.component.mjs +0 -292
- package/esm2022/components/ngx-pick-datetime/lib/dialog/dialog-config.class.mjs +0 -56
- package/esm2022/components/ngx-pick-datetime/lib/dialog/dialog-container.component.mjs +0 -243
- package/esm2022/components/ngx-pick-datetime/lib/dialog/dialog-ref.class.mjs +0 -119
- package/esm2022/components/ngx-pick-datetime/lib/dialog/dialog.module.mjs +0 -26
- package/esm2022/components/ngx-pick-datetime/lib/dialog/dialog.service.mjs +0 -233
- package/esm2022/components/ngx-pick-datetime/lib/utils/index.mjs +0 -5
- package/esm2022/components/ngx-pick-datetime/lib/utils/object.utils.mjs +0 -26
- package/esm2022/components/ngx-remote-select/ngx-remote-select.component.mjs +0 -151
- package/esm2022/components/ngx-remote-select/ngx-remote-select.module.mjs +0 -22
- package/esm2022/components/ngx-tabset/components/ngx-tab-set.component.mjs +0 -74
- package/esm2022/components/ngx-tabset/components/tab.component.mjs +0 -33
- package/esm2022/components/ngx-tabset/directives/hover-class.directive.mjs +0 -30
- package/esm2022/components/ngx-tabset/modules/ngx-tabset.module.mjs +0 -38
- package/esm2022/components/number-input/number-input.component.mjs +0 -254
- package/esm2022/components/number-input/number-input.module.mjs +0 -21
- package/esm2022/components/number-input/number.directive.mjs +0 -22
- package/esm2022/components/radio-button/radio.component.mjs +0 -98
- package/esm2022/components/radio-button/radio.module.mjs +0 -19
- package/esm2022/components/select/optgroup.directive.mjs +0 -19
- package/esm2022/components/select/option.directive.mjs +0 -19
- package/esm2022/components/select/select.component.mjs +0 -182
- package/esm2022/components/select/select.module.mjs +0 -23
- package/esm2022/components/workspace-launcher/workspace-launcher.component.mjs +0 -26
- package/esm2022/components/workspace-launcher/workspace-launcher.module.mjs +0 -19
- package/esm2022/form-entry/control-alerts/alert-helpers.mjs +0 -40
- package/esm2022/form-entry/control-alerts/can-generate-alert.mjs +0 -2
- package/esm2022/form-entry/control-calculators/can-calculate.mjs +0 -2
- package/esm2022/form-entry/control-hiders-disablers/can-disable.mjs +0 -2
- package/esm2022/form-entry/control-hiders-disablers/can-hide.mjs +0 -2
- package/esm2022/form-entry/control-hiders-disablers/disabler-helper.mjs +0 -32
- package/esm2022/form-entry/control-hiders-disablers/hider-helpers.mjs +0 -41
- package/esm2022/form-entry/data-sources/data-sources.mjs +0 -30
- package/esm2022/form-entry/data-sources/dummy-data-source.mjs +0 -104
- package/esm2022/form-entry/directives/collapse-animations.mjs +0 -11
- package/esm2022/form-entry/directives/collapse.directive.mjs +0 -172
- package/esm2022/form-entry/directives/historical-value.directive.mjs +0 -68
- package/esm2022/form-entry/error-renderer/error-renderer.component.mjs +0 -53
- package/esm2022/form-entry/expression-runner/expression-runner.mjs +0 -170
- package/esm2022/form-entry/form-entry.module.mjs +0 -194
- package/esm2022/form-entry/form-factory/control-relations.factory.mjs +0 -238
- package/esm2022/form-entry/form-factory/form-control.service.mjs +0 -118
- package/esm2022/form-entry/form-factory/form-node.mjs +0 -99
- package/esm2022/form-entry/form-factory/form.factory.mjs +0 -144
- package/esm2022/form-entry/form-factory/form.mjs +0 -190
- package/esm2022/form-entry/form-factory/hiders-disablers.factory.mjs +0 -68
- package/esm2022/form-entry/form-factory/index.mjs +0 -7
- package/esm2022/form-entry/form-factory/question.factory.mjs +0 -1123
- package/esm2022/form-entry/form-factory/show-messages.factory.mjs +0 -31
- package/esm2022/form-entry/form-factory/validation.factory.mjs +0 -182
- package/esm2022/form-entry/form-renderer/form-renderer.component.mjs +0 -277
- package/esm2022/form-entry/helpers/historical-expression-helper-service.mjs +0 -42
- package/esm2022/form-entry/helpers/historical-field-helper-service.mjs +0 -39
- package/esm2022/form-entry/helpers/js-expression-helper.mjs +0 -314
- package/esm2022/form-entry/helpers/risk-dataset-table.mjs +0 -247
- package/esm2022/form-entry/pipes/time-ago.pipe.mjs +0 -110
- package/esm2022/form-entry/question-models/checkbox.model.mjs +0 -11
- package/esm2022/form-entry/question-models/conditional-validation.model.mjs +0 -9
- package/esm2022/form-entry/question-models/custom-control-question.model.mjs +0 -10
- package/esm2022/form-entry/question-models/date-question.mjs +0 -12
- package/esm2022/form-entry/question-models/date-validation.model.mjs +0 -10
- package/esm2022/form-entry/question-models/decimal-validation.model.mjs +0 -19
- package/esm2022/form-entry/question-models/diagnosis-question.mjs +0 -12
- package/esm2022/form-entry/question-models/disallow-decimals-validation.model.mjs +0 -18
- package/esm2022/form-entry/question-models/file-upload-question.mjs +0 -13
- package/esm2022/form-entry/question-models/group-question.mjs +0 -12
- package/esm2022/form-entry/question-models/index.mjs +0 -24
- package/esm2022/form-entry/question-models/interfaces/base-options.mjs +0 -2
- package/esm2022/form-entry/question-models/interfaces/checkbox-options.mjs +0 -2
- package/esm2022/form-entry/question-models/interfaces/data-source.mjs +0 -2
- package/esm2022/form-entry/question-models/interfaces/date-question-options.mjs +0 -2
- package/esm2022/form-entry/question-models/interfaces/diagnosis-question-options.mjs +0 -2
- package/esm2022/form-entry/question-models/interfaces/file-upload-question-options.mjs +0 -2
- package/esm2022/form-entry/question-models/interfaces/group-question-options.mjs +0 -2
- package/esm2022/form-entry/question-models/interfaces/multi-select-options.mjs +0 -2
- package/esm2022/form-entry/question-models/interfaces/nested-questions.mjs +0 -7
- package/esm2022/form-entry/question-models/interfaces/radio-button-options.mjs +0 -2
- package/esm2022/form-entry/question-models/interfaces/remote-select-question-options.mjs +0 -2
- package/esm2022/form-entry/question-models/interfaces/repeating-question-options.mjs +0 -2
- package/esm2022/form-entry/question-models/interfaces/select-option.mjs +0 -2
- package/esm2022/form-entry/question-models/interfaces/select-question-options.mjs +0 -2
- package/esm2022/form-entry/question-models/interfaces/test-order-question-options.mjs +0 -2
- package/esm2022/form-entry/question-models/interfaces/text-area-question-options.mjs +0 -2
- package/esm2022/form-entry/question-models/interfaces/text-question-options.mjs +0 -2
- package/esm2022/form-entry/question-models/interfaces/ui-select-question-options.mjs +0 -2
- package/esm2022/form-entry/question-models/interfaces/workspace-launcher-options.mjs +0 -2
- package/esm2022/form-entry/question-models/js-expression-validation.model.mjs +0 -8
- package/esm2022/form-entry/question-models/max-length-validation.model.mjs +0 -9
- package/esm2022/form-entry/question-models/max-validation.model.mjs +0 -9
- package/esm2022/form-entry/question-models/min-length-validation.model.mjs +0 -9
- package/esm2022/form-entry/question-models/min-validation.model.mjs +0 -9
- package/esm2022/form-entry/question-models/models.mjs +0 -13
- package/esm2022/form-entry/question-models/multi-select-question.mjs +0 -11
- package/esm2022/form-entry/question-models/pair.model.mjs +0 -7
- package/esm2022/form-entry/question-models/question-base.mjs +0 -26
- package/esm2022/form-entry/question-models/radio-button.model.mjs +0 -12
- package/esm2022/form-entry/question-models/remote-select-question.mjs +0 -12
- package/esm2022/form-entry/question-models/rendering-type.mjs +0 -9
- package/esm2022/form-entry/question-models/repeating-question.mjs +0 -11
- package/esm2022/form-entry/question-models/select-option.mjs +0 -7
- package/esm2022/form-entry/question-models/select-question.mjs +0 -12
- package/esm2022/form-entry/question-models/test-order-question.mjs +0 -15
- package/esm2022/form-entry/question-models/text-area-input-question.mjs +0 -13
- package/esm2022/form-entry/question-models/text-input-question.mjs +0 -10
- package/esm2022/form-entry/question-models/ui-select-question.mjs +0 -11
- package/esm2022/form-entry/question-models/validation.model.mjs +0 -7
- package/esm2022/form-entry/question-models/workspace-launcher.model.mjs +0 -15
- package/esm2022/form-entry/services/debug-mode.service.mjs +0 -24
- package/esm2022/form-entry/services/form-errors.service.mjs +0 -21
- package/esm2022/form-entry/services/form-schema-compiler.service.mjs +0 -248
- package/esm2022/form-entry/services/historical-encounter-data.service.mjs +0 -172
- package/esm2022/form-entry/validators/conditional-answered.validator.mjs +0 -46
- package/esm2022/form-entry/validators/conditional-required.validator.mjs +0 -40
- package/esm2022/form-entry/validators/date.validator.mjs +0 -18
- package/esm2022/form-entry/validators/disallow-decimals.validator.mjs +0 -15
- package/esm2022/form-entry/validators/future-date-restriction.validator.mjs +0 -21
- package/esm2022/form-entry/validators/js-expression.validator.mjs +0 -26
- package/esm2022/form-entry/validators/max-date.validator.mjs +0 -23
- package/esm2022/form-entry/validators/max-length.validator.mjs +0 -17
- package/esm2022/form-entry/validators/max.validator.mjs +0 -21
- package/esm2022/form-entry/validators/min-date.validator.mjs +0 -23
- package/esm2022/form-entry/validators/min-length.validator.mjs +0 -17
- package/esm2022/form-entry/validators/min.validator.mjs +0 -21
- package/esm2022/form-entry/validators/required.validator.mjs +0 -11
- package/esm2022/form-entry/validators/validations.mjs +0 -5
- package/esm2022/form-entry/value-adapters/diagnosis.adapter.mjs +0 -241
- package/esm2022/form-entry/value-adapters/encounter.adapter.mjs +0 -190
- package/esm2022/form-entry/value-adapters/obs-adapter-helper.mjs +0 -559
- package/esm2022/form-entry/value-adapters/obs.adapter.mjs +0 -542
- package/esm2022/form-entry/value-adapters/order.adapter.mjs +0 -186
- package/esm2022/form-entry/value-adapters/patient-identifier.adapter.mjs +0 -77
- package/esm2022/form-entry/value-adapters/person-attribute.adapter.mjs +0 -88
- package/esm2022/form-entry/value-adapters/value.adapter.mjs +0 -2
- package/esm2022/lib/index.mjs +0 -59
- package/esm2022/openmrs-ngx-formentry.mjs +0 -5
- package/esm2022/public_api.mjs +0 -2
- package/esm2022/shared.module.mjs +0 -21
- /package/components/custom-component-wrapper/{custom-component-wrapper..module.d.ts → custom-component-wrapper.module.d.ts} +0 -0
- /package/components/custom-control-wrapper/{custom-control-wrapper..module.d.ts → custom-control-wrapper.module.d.ts} +0 -0
|
@@ -20,8 +20,8 @@ import * as i18 from "../components/radio-button/radio.module";
|
|
|
20
20
|
import * as i19 from "../components/workspace-launcher/workspace-launcher.module";
|
|
21
21
|
import * as i20 from "../components/ngx-datetime-picker/ngx-datetime-picker.module";
|
|
22
22
|
import * as i21 from "../shared.module";
|
|
23
|
-
import * as i22 from "../components/custom-control-wrapper/custom-control-wrapper
|
|
24
|
-
import * as i23 from "../components/custom-component-wrapper/custom-component-wrapper
|
|
23
|
+
import * as i22 from "../components/custom-control-wrapper/custom-control-wrapper.module";
|
|
24
|
+
import * as i23 from "../components/custom-component-wrapper/custom-component-wrapper.module";
|
|
25
25
|
import * as i24 from "../components/ngx-tabset/modules/ngx-tabset.module";
|
|
26
26
|
import * as i25 from "@ngx-translate/core";
|
|
27
27
|
export declare class FormEntryModule {
|
|
@@ -9,12 +9,12 @@ import { Form } from './form';
|
|
|
9
9
|
import * as i0 from "@angular/core";
|
|
10
10
|
export declare class FormFactory {
|
|
11
11
|
controlService: FormControlService;
|
|
12
|
-
|
|
12
|
+
questionFactory: QuestionFactory;
|
|
13
13
|
controlRelationsFactory: ControlRelationsFactory;
|
|
14
14
|
translate: TranslateService;
|
|
15
15
|
private nodeIndex;
|
|
16
16
|
hd: any;
|
|
17
|
-
constructor(controlService: FormControlService,
|
|
17
|
+
constructor(controlService: FormControlService, questionFactory: QuestionFactory, controlRelationsFactory: ControlRelationsFactory, translate: TranslateService);
|
|
18
18
|
createForm(schema: any, dataSource?: any): Form;
|
|
19
19
|
buildRelations(rootNode: GroupNode): void;
|
|
20
20
|
createNode(question: QuestionBase | NestedQuestion, parentNode?: GroupNode, parentControl?: AfeFormGroup, form?: Form): NodeBase;
|
|
@@ -9,7 +9,7 @@ export declare class JsExpressionHelper {
|
|
|
9
9
|
isEmpty(val: any): boolean;
|
|
10
10
|
arrayContains(array: any, members: any): boolean;
|
|
11
11
|
extractRepeatingGroupValues(key: any, array: any): any;
|
|
12
|
-
formatDate(value: any, format: any, offset: any):
|
|
12
|
+
formatDate(value: any, format: any, offset: any): string;
|
|
13
13
|
arrayContainsAny(array: any, members: any): boolean;
|
|
14
14
|
/**
|
|
15
15
|
* Takes a target control, an encounter and concept uuid. If the target control has a value it returns it
|
|
@@ -33,7 +33,7 @@ export declare class JsExpressionHelper {
|
|
|
33
33
|
arrayContains: (array: any, members: any) => boolean;
|
|
34
34
|
extractRepeatingGroupValues: (key: any, array: any) => any;
|
|
35
35
|
getObsFromControlOrEncounter: (targetControl: any, rawEncounter: any, uuid: any) => any;
|
|
36
|
-
doesNotMatchExpression: (regexString: string, val: string) => boolean;
|
|
36
|
+
doesNotMatchExpression: (regexString: string, val: string | null | undefined) => boolean;
|
|
37
37
|
calcGravida: (parityTerm: any, parityAbortion: any) => number;
|
|
38
38
|
};
|
|
39
39
|
static ɵfac: i0.ɵɵFactoryDeclaration<JsExpressionHelper, never>;
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import * as i0 from "@angular/core";
|
|
2
2
|
export declare class FormSchemaCompiler {
|
|
3
3
|
constructor();
|
|
4
|
+
private isTestEnv;
|
|
5
|
+
private logError;
|
|
4
6
|
compileFormSchema(formSchema: Object, referencedComponents: Array<any>): Object;
|
|
5
7
|
private findSchemaByName;
|
|
6
8
|
private getPageInSchemaByLabel;
|
|
@@ -2,7 +2,7 @@ import { NodeBase } from '../form-factory/form-node';
|
|
|
2
2
|
import { Form } from '../form-factory/form';
|
|
3
3
|
import { ValueAdapter } from './value.adapter';
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
5
|
-
export declare class
|
|
5
|
+
export declare class PersonAttributeAdapter implements ValueAdapter {
|
|
6
6
|
constructor();
|
|
7
7
|
generateFormPayload(form: Form): any[];
|
|
8
8
|
generateNodePayload(rootNode: NodeBase): any[];
|
|
@@ -10,6 +10,6 @@ export declare class PersonAttribuAdapter implements ValueAdapter {
|
|
|
10
10
|
populateNode(rootNode: NodeBase, payload: any): void;
|
|
11
11
|
getPersonAttributeNodes(rootNode: NodeBase): Array<NodeBase>;
|
|
12
12
|
private _getPersonAttributesNodes;
|
|
13
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<
|
|
14
|
-
static ɵprov: i0.ɵɵInjectableDeclaration<
|
|
13
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<PersonAttributeAdapter, never>;
|
|
14
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<PersonAttributeAdapter>;
|
|
15
15
|
}
|
package/lib/index.d.ts
CHANGED
|
@@ -13,7 +13,7 @@ export { FormSchemaCompiler } from '../form-entry/services/form-schema-compiler.
|
|
|
13
13
|
export { HistoricalEncounterDataService } from '../form-entry/services/historical-encounter-data.service';
|
|
14
14
|
export { FormErrorsService } from '../form-entry/services/form-errors.service';
|
|
15
15
|
export { EncounterAdapter } from '../form-entry/value-adapters/encounter.adapter';
|
|
16
|
-
export {
|
|
16
|
+
export { PersonAttributeAdapter } from '../form-entry/value-adapters/person-attribute.adapter';
|
|
17
17
|
export { OrderValueAdapter } from '../form-entry/value-adapters/order.adapter';
|
|
18
18
|
export { ObsValueAdapter } from '../form-entry/value-adapters/obs.adapter';
|
|
19
19
|
export { ObsAdapterHelper } from '../form-entry/value-adapters/obs-adapter-helper';
|
package/package.json
CHANGED
|
@@ -1,21 +1,21 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@openmrs/ngx-formentry",
|
|
3
|
-
"version": "19.0.1-pre.
|
|
3
|
+
"version": "19.0.1-pre.497",
|
|
4
4
|
"dependencies": {
|
|
5
5
|
"tslib": "^2.3.0"
|
|
6
6
|
},
|
|
7
7
|
"peerDependencies": {
|
|
8
|
-
"@angular/animations": "^
|
|
9
|
-
"@angular/cdk": "^
|
|
10
|
-
"@angular/common": "^
|
|
11
|
-
"@angular/compiler": "^
|
|
12
|
-
"@angular/compiler-cli": "^
|
|
13
|
-
"@angular/core": "^
|
|
14
|
-
"@angular/forms": "^
|
|
8
|
+
"@angular/animations": "^19.0.0",
|
|
9
|
+
"@angular/cdk": "^19.0.0",
|
|
10
|
+
"@angular/common": "^19.0.0",
|
|
11
|
+
"@angular/compiler": "^19.0.0",
|
|
12
|
+
"@angular/compiler-cli": "^19.0.0",
|
|
13
|
+
"@angular/core": "^19.0.0",
|
|
14
|
+
"@angular/forms": "^19.0.0",
|
|
15
15
|
"@carbon/styles": "1.x",
|
|
16
|
-
"@ng-select/ng-select": "^
|
|
16
|
+
"@ng-select/ng-select": "^14.0.0",
|
|
17
17
|
"@ngx-translate/core": "^16.0.4",
|
|
18
|
-
"@openmrs/ngx-file-uploader": "
|
|
18
|
+
"@openmrs/ngx-file-uploader": "^19.0.0",
|
|
19
19
|
"lodash": "^4.17.21",
|
|
20
20
|
"moment": "^2.29.4",
|
|
21
21
|
"ngx-webcam": "^0.4.1",
|
|
@@ -31,8 +31,6 @@
|
|
|
31
31
|
},
|
|
32
32
|
".": {
|
|
33
33
|
"types": "./index.d.ts",
|
|
34
|
-
"esm2022": "./esm2022/openmrs-ngx-formentry.mjs",
|
|
35
|
-
"esm": "./esm2022/openmrs-ngx-formentry.mjs",
|
|
36
34
|
"default": "./fesm2022/openmrs-ngx-formentry.mjs"
|
|
37
35
|
}
|
|
38
36
|
},
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
export var AfeControlType;
|
|
2
|
-
(function (AfeControlType) {
|
|
3
|
-
AfeControlType[AfeControlType["AfeFormControl"] = 0] = "AfeFormControl";
|
|
4
|
-
AfeControlType[AfeControlType["AfeFormArray"] = 1] = "AfeFormArray";
|
|
5
|
-
AfeControlType[AfeControlType["AfeFormGroup"] = 2] = "AfeFormGroup";
|
|
6
|
-
AfeControlType[AfeControlType["None"] = 3] = "None";
|
|
7
|
-
})(AfeControlType || (AfeControlType = {}));
|
|
8
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWZlLWNvbnRyb2wtdHlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1mb3JtZW50cnkvc3JjL2Fic3RyYWN0LWNvbnRyb2xzLWV4dGVuc2lvbi9hZmUtY29udHJvbC10eXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBTixJQUFZLGNBS1g7QUFMRCxXQUFZLGNBQWM7SUFDeEIsdUVBQWMsQ0FBQTtJQUNkLG1FQUFZLENBQUE7SUFDWixtRUFBWSxDQUFBO0lBQ1osbURBQUksQ0FBQTtBQUNOLENBQUMsRUFMVyxjQUFjLEtBQWQsY0FBYyxRQUt6QiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIEFmZUNvbnRyb2xUeXBlIHtcbiAgQWZlRm9ybUNvbnRyb2wsXG4gIEFmZUZvcm1BcnJheSxcbiAgQWZlRm9ybUdyb3VwLFxuICBOb25lXG59XG4iXX0=
|
|
@@ -1,89 +0,0 @@
|
|
|
1
|
-
import { UntypedFormArray } from '@angular/forms';
|
|
2
|
-
import { ControlRelations } from '../change-tracking/control-relations';
|
|
3
|
-
import { HiderHelper } from '../form-entry/control-hiders-disablers/hider-helpers';
|
|
4
|
-
import { AlertHelper } from '../form-entry/control-alerts/alert-helpers';
|
|
5
|
-
import { DisablerHelper } from '../form-entry/control-hiders-disablers/disabler-helper';
|
|
6
|
-
export class AfeFormArray extends UntypedFormArray {
|
|
7
|
-
constructor(controls, validator, asyncValidator) {
|
|
8
|
-
super(controls, validator, asyncValidator);
|
|
9
|
-
this.hiderHelper = new HiderHelper();
|
|
10
|
-
this.AlertHelper = new AlertHelper();
|
|
11
|
-
this.disablerHelper = new DisablerHelper();
|
|
12
|
-
this._controlRelations = new ControlRelations(this);
|
|
13
|
-
this.hiders = [];
|
|
14
|
-
this.alerts = [];
|
|
15
|
-
this.disablers = [];
|
|
16
|
-
this.valueChanges.subscribe((value) => {
|
|
17
|
-
if (this._previousValue !== value) {
|
|
18
|
-
this.fireValueChangeListener(value);
|
|
19
|
-
this._previousValue = value;
|
|
20
|
-
}
|
|
21
|
-
});
|
|
22
|
-
}
|
|
23
|
-
get uuid() {
|
|
24
|
-
return this._uuid;
|
|
25
|
-
}
|
|
26
|
-
set uuid(val) {
|
|
27
|
-
this._uuid = val;
|
|
28
|
-
}
|
|
29
|
-
get controlRelations() {
|
|
30
|
-
return this._controlRelations;
|
|
31
|
-
}
|
|
32
|
-
hide() {
|
|
33
|
-
this.hiderHelper.hideControl(this);
|
|
34
|
-
}
|
|
35
|
-
show() {
|
|
36
|
-
this.hiderHelper.showControl(this);
|
|
37
|
-
}
|
|
38
|
-
disable(param) {
|
|
39
|
-
super.disable(param);
|
|
40
|
-
if (this.disablers.some((disabler) => disabler.resetValueOnDisable === true)) {
|
|
41
|
-
super.setValue([]);
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
setHidingFn(newHider) {
|
|
45
|
-
this.hiderHelper.setHiderForControl(this, newHider);
|
|
46
|
-
}
|
|
47
|
-
clearHidingFns() {
|
|
48
|
-
this.hiderHelper.clearHidersForControl(this);
|
|
49
|
-
}
|
|
50
|
-
updateHiddenState() {
|
|
51
|
-
this.hiderHelper.evaluateControlHiders(this);
|
|
52
|
-
}
|
|
53
|
-
setDisablingFn(newDisabler) {
|
|
54
|
-
this.disablerHelper.setDisablerForControl(this, newDisabler);
|
|
55
|
-
}
|
|
56
|
-
clearDisablingFns() {
|
|
57
|
-
this.disablerHelper.clearDisablersForControl(this);
|
|
58
|
-
}
|
|
59
|
-
updateDisabledState() {
|
|
60
|
-
this.disablerHelper.evaluateControlDisablers(this);
|
|
61
|
-
}
|
|
62
|
-
setAlertFn(newHider) {
|
|
63
|
-
this.AlertHelper.setAlertsForControl(this, newHider);
|
|
64
|
-
}
|
|
65
|
-
clearMessageFns() {
|
|
66
|
-
this.AlertHelper.clearAlertsForControl(this);
|
|
67
|
-
}
|
|
68
|
-
updateAlert() {
|
|
69
|
-
this.AlertHelper.evaluateControlAlerts(this);
|
|
70
|
-
}
|
|
71
|
-
addValueChangeListener(func) {
|
|
72
|
-
this._valueChangeListener = func;
|
|
73
|
-
}
|
|
74
|
-
fireValueChangeListener(value) {
|
|
75
|
-
if (this.alerts.length > 0) {
|
|
76
|
-
this.updateAlert();
|
|
77
|
-
}
|
|
78
|
-
if (this._valueChangeListener &&
|
|
79
|
-
typeof this._valueChangeListener === 'function') {
|
|
80
|
-
this._valueChangeListener(value);
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
setValue(value) {
|
|
84
|
-
if (value !== null) {
|
|
85
|
-
super.setValue(value);
|
|
86
|
-
}
|
|
87
|
-
}
|
|
88
|
-
}
|
|
89
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWZlLWZvcm0tYXJyYXkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtZm9ybWVudHJ5L3NyYy9hYnN0cmFjdC1jb250cm9scy1leHRlbnNpb24vYWZlLWZvcm0tYXJyYXkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLGdCQUFnQixFQUlqQixNQUFNLGdCQUFnQixDQUFDO0FBRXhCLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBY3hFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxzREFBc0QsQ0FBQztBQUNuRixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDekUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHdEQUF3RCxDQUFDO0FBRXhGLE1BQU0sT0FBTyxZQUNYLFNBQVEsZ0JBQWdCO0lBb0J4QixZQUNFLFFBQTJCLEVBQzNCLFNBQXVCLEVBQ3ZCLGNBQWlDO1FBRWpDLEtBQUssQ0FBQyxRQUFRLEVBQUUsU0FBUyxFQUFFLGNBQWMsQ0FBQyxDQUFDO1FBVHJDLGdCQUFXLEdBQWdCLElBQUksV0FBVyxFQUFFLENBQUM7UUFDN0MsZ0JBQVcsR0FBZ0IsSUFBSSxXQUFXLEVBQUUsQ0FBQztRQUM3QyxtQkFBYyxHQUFtQixJQUFJLGNBQWMsRUFBRSxDQUFDO1FBUTVELElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLGdCQUFnQixDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3BELElBQUksQ0FBQyxNQUFNLEdBQUcsRUFBRSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxNQUFNLEdBQUcsRUFBRSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxTQUFTLEdBQUcsRUFBRSxDQUFDO1FBRXBCLElBQUksQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDcEMsSUFBSSxJQUFJLENBQUMsY0FBYyxLQUFLLEtBQUssRUFB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LENBQUM7WUFDbkIsS0FBSyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN4QixDQUFDO0lBQ0gsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgVW50eXBlZEZvcm1BcnJheSxcbiAgVmFsaWRhdG9yRm4sXG4gIEFzeW5jVmFsaWRhdG9yRm4sXG4gIEFic3RyYWN0Q29udHJvbFxufSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7IENvbnRyb2xSZWxhdGlvbnMgfSBmcm9tICcuLi9jaGFuZ2UtdHJhY2tpbmcvY29udHJvbC1yZWxhdGlvbnMnO1xuaW1wb3J0IHsgVmFsdWVDaGFuZ2VMaXN0ZW5lciB9IGZyb20gJy4vdmFsdWUtY2hhbmdlLmxpc3RlbmVyJztcbmltcG9ydCB7XG4gIENhbkhpZGUsXG4gIEhpZGVyXG59IGZyb20gJy4uL2Zvcm0tZW50cnkvY29udHJvbC1oaWRlcnMtZGlzYWJsZXJzL2Nhbi1oaWRlJztcbmltcG9ydCB7XG4gIENhbkdlbmVyYXRlQWxlcnQsXG4gIEFsZXJ0XG59IGZyb20gJy4uL2Zvcm0tZW50cnkvY29udHJvbC1hbGVydHMvY2FuLWdlbmVyYXRlLWFsZXJ0JztcbmltcG9ydCB7XG4gIENhbkRpc2FibGUsXG4gIERpc2FibGVyXG59IGZyb20gJy4uL2Zvcm0tZW50cnkvY29udHJvbC1oaWRlcnMtZGlzYWJsZXJzL2Nhbi1kaXNhYmxlJztcbmltcG9ydCB7IEhpZGVySGVscGVyIH0gZnJvbSAnLi4vZm9ybS1lbnRyeS9jb250cm9sLWhpZGVycy1kaXNhYmxlcnMvaGlkZXItaGVscGVycyc7XG5pbXBvcnQgeyBBbGVydEhlbHBlciB9IGZyb20gJy4uL2Zvcm0tZW50cnkvY29udHJvbC1hbGVydHMvYWxlcnQtaGVscGVycyc7XG5pbXBvcnQgeyBEaXNhYmxlckhlbHBlciB9IGZyb20gJy4uL2Zvcm0tZW50cnkvY29udHJvbC1oaWRlcnMtZGlzYWJsZXJzL2Rpc2FibGVyLWhlbHBlcic7XG5cbmV4cG9ydCBjbGFzcyBBZmVGb3JtQXJyYXlcbiAgZXh0ZW5kcyBVbnR5cGVkRm9ybUFycmF5XG4gIGltcGxlbWVudHMgQ2FuSGlkZSwgQ2FuRGlzYWJsZSwgQ2FuR2VuZXJhdGVBbGVydCwgVmFsdWVDaGFuZ2VMaXN0ZW5lciB7XG4gIHByaXZhdGUgX2NvbnRyb2xSZWxhdGlvbnM6IENvbnRyb2xSZWxhdGlvbnM7XG4gIHByaXZhdGUgX3ZhbHVlQ2hhbmdlTGlzdGVuZXI6IGFueTtcbiAgcHJpdmF0ZSBfcHJldmlvdXNWYWx1ZTtcbiAgcHJpdmF0ZSBfdXVpZDogc3RyaW5nO1xuICBwdWJsaWMgcGF0aEZyb21Sb290OiBzdHJpbmc7XG5cbiAgaGlkZGVuOiBmYWxzZTtcbiAgaGlkZXJzOiBIaWRlcltdO1xuXG4gIGFsZXJ0OiBzdHJpbmc7XG4gIGFsZXJ0czogQWxlcnRbXTtcblxuICBkaXNhYmxlcnM6IERpc2FibGVyW107XG5cbiAgcHJpdmF0ZSBoaWRlckhlbHBlcjogSGlkZXJIZWxwZXIgPSBuZXcgSGlkZXJIZWxwZXIoKTtcbiAgcHJpdmF0ZSBBbGVydEhlbHBlcjogQWxlcnRIZWxwZXIgPSBuZXcgQWxlcnRIZWxwZXIoKTtcbiAgcHJpdmF0ZSBkaXNhYmxlckhlbHBlcjogRGlzYWJsZXJIZWxwZXIgPSBuZXcgRGlzYWJsZXJIZWxwZXIoKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBjb250cm9sczogQWJzdHJhY3RDb250cm9sW10sXG4gICAgdmFsaWRhdG9yPzogVmFsaWRhdG9yRm4sXG4gICAgYXN5bmNWYWxpZGF0b3I/OiBBc3luY1ZhbGlkYXRvckZuXG4gICkge1xuICAgIHN1cGVyKGNvbnRyb2xzLCB2YWxpZGF0b3IsIGFzeW5jVmFsaWRhdG9yKTtcbiAgICB0aGlzLl9jb250cm9sUmVsYXRpb25zID0gbmV3IENvbnRyb2xSZWxhdGlvbnModGhpcyk7XG4gICAgdGhpcy5oaWRlcnMgPSBbXTtcbiAgICB0aGlzLmFsZXJ0cyA9IFtdO1xuICAgIHRoaXMuZGlzYWJsZXJzID0gW107XG5cbiAgICB0aGlzLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUoKHZhbHVlKSA9PiB7XG4gICAgICBpZiAodGhpcy5fcHJldmlvdXNWYWx1ZSAhPT0gdmFsdWUpIHtcbiAgICAgICAgdGhpcy5maXJlVmFsdWVDaGFuZ2VMaXN0ZW5lcih2YWx1ZSk7XG4gICAgICAgIHRoaXMuX3ByZXZpb3VzVmFsdWUgPSB2YWx1ZTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIGdldCB1dWlkKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX3V1aWQ7XG4gIH1cbiAgc2V0IHV1aWQodmFsOiBzdHJpbmcpIHtcbiAgICB0aGlzLl91dWlkID0gdmFsO1xuICB9XG5cbiAgZ2V0IGNvbnRyb2xSZWxhdGlvbnMoKTogQ29udHJvbFJlbGF0aW9ucyB7XG4gICAgcmV0dXJuIHRoaXMuX2NvbnRyb2xSZWxhdGlvbnM7XG4gIH1cblxuICBoaWRlKCkge1xuICAgIHRoaXMuaGlkZXJIZWxwZXIuaGlkZUNvbnRyb2wodGhpcyk7XG4gIH1cblxuICBzaG93KCkge1xuICAgIHRoaXMuaGlkZXJIZWxwZXIuc2hvd0NvbnRyb2wodGhpcyk7XG4gIH1cblxuICBkaXNhYmxlKHBhcmFtPzogeyBvbmx5U2VsZj86IGJvb2xlYW47IGVtaXRFdmVudD86IGJvb2xlYW4gfSkge1xuICAgIHN1cGVyLmRpc2FibGUocGFyYW0pO1xuICAgIGlmIChcbiAgICAgIHRoaXMuZGlzYWJsZXJzLnNvbWUoKGRpc2FibGVyKSA9PiBkaXNhYmxlci5yZXNldFZhbHVlT25EaXNhYmxlID09PSB0cnVlKVxuICAgICkge1xuICAgICAgc3VwZXIuc2V0VmFsdWUoW10pO1xuICAgIH1cbiAgfVxuXG4gIHNldEhpZGluZ0ZuKG5ld0hpZGVyOiBIaWRlcikge1xuICAgIHRoaXMuaGlkZXJIZWxwZXIuc2V0SGlkZXJGb3JDb250cm9sKHRoaXMsIG5ld0hpZGVyKTtcbiAgfVxuXG4gIGNsZWFySGlkaW5nRm5zKCkge1xuICAgIHRoaXMuaGlkZXJIZWxwZXIuY2xlYXJIaWRlcnNGb3JDb250cm9sKHRoaXMpO1xuICB9XG5cbiAgdXBkYXRlSGlkZGVuU3RhdGUoKSB7XG4gICAgdGhpcy5oaWRlckhlbHBlci5ldmFsdWF0ZUNvbnRyb2xIaWRlcnModGhpcyk7XG4gIH1cblxuICBzZXREaXNhYmxpbmdGbihuZXdEaXNhYmxlcjogRGlzYWJsZXIpIHtcbiAgICB0aGlzLmRpc2FibGVySGVscGVyLnNldERpc2FibGVyRm9yQ29udHJvbCh0aGlzLCBuZXdEaXNhYmxlcik7XG4gIH1cblxuICBjbGVhckRpc2FibGluZ0ZucygpIHtcbiAgICB0aGlzLmRpc2FibGVySGVscGVyLmNsZWFyRGlzYWJsZXJzRm9yQ29udHJvbCh0aGlzKTtcbiAgfVxuXG4gIHVwZGF0ZURpc2FibGVkU3RhdGUoKSB7XG4gICAgdGhpcy5kaXNhYmxlckhlbHBlci5ldmFsdWF0ZUNvbnRyb2xEaXNhYmxlcnModGhpcyk7XG4gIH1cblxuICBzZXRBbGVydEZuKG5ld0hpZGVyOiBBbGVydCkge1xuICAgIHRoaXMuQWxlcnRIZWxwZXIuc2V0QWxlcnRzRm9yQ29udHJvbCh0aGlzLCBuZXdIaWRlcik7XG4gIH1cblxuICBjbGVhck1lc3NhZ2VGbnMoKSB7XG4gICAgdGhpcy5BbGVydEhlbHBlci5jbGVhckFsZXJ0c0ZvckNvbnRyb2wodGhpcyk7XG4gIH1cblxuICB1cGRhdGVBbGVydCgpIHtcbiAgICB0aGlzLkFsZXJ0SGVscGVyLmV2YWx1YXRlQ29udHJvbEFsZXJ0cyh0aGlzKTtcbiAgfVxuXG4gIGFkZFZhbHVlQ2hhbmdlTGlzdGVuZXIoZnVuYzogYW55KSB7XG4gICAgdGhpcy5fdmFsdWVDaGFuZ2VMaXN0ZW5lciA9IGZ1bmM7XG4gIH1cblxuICBmaXJlVmFsdWVDaGFuZ2VMaXN0ZW5lcih2YWx1ZTogYW55KSB7XG4gICAgaWYgKHRoaXMuYWxlcnRzLmxlbmd0aCA+IDApIHtcbiAgICAgIHRoaXMudXBkYXRlQWxlcnQoKTtcbiAgICB9XG4gICAgaWYgKFxuICAgICAgdGhpcy5fdmFsdWVDaGFuZ2VMaXN0ZW5lciAmJlxuICAgICAgdHlwZW9mIHRoaXMuX3ZhbHVlQ2hhbmdlTGlzdGVuZXIgPT09ICdmdW5jdGlvbidcbiAgICApIHtcbiAgICAgIHRoaXMuX3ZhbHVlQ2hhbmdlTGlzdGVuZXIodmFsdWUpO1xuICAgIH1cbiAgfVxuXG4gIHNldFZhbHVlKHZhbHVlOiBhbnkpIHtcbiAgICBpZiAodmFsdWUgIT09IG51bGwpIHtcbiAgICAgIHN1cGVyLnNldFZhbHVlKHZhbHVlKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,91 +0,0 @@
|
|
|
1
|
-
import { UntypedFormControl } from '@angular/forms';
|
|
2
|
-
import { ControlRelations } from '../change-tracking/control-relations';
|
|
3
|
-
import { HiderHelper } from '../form-entry/control-hiders-disablers/hider-helpers';
|
|
4
|
-
import { AlertHelper } from '../form-entry/control-alerts/alert-helpers';
|
|
5
|
-
import { DisablerHelper } from '../form-entry/control-hiders-disablers/disabler-helper';
|
|
6
|
-
import { ExpressionRunner } from '../form-entry/expression-runner/expression-runner';
|
|
7
|
-
class AfeFormControl extends UntypedFormControl {
|
|
8
|
-
constructor(formState, validator, asyncValidator) {
|
|
9
|
-
super(formState, validator, asyncValidator);
|
|
10
|
-
this.hidden = false;
|
|
11
|
-
this.hiderHelper = new HiderHelper();
|
|
12
|
-
this.disablerHelper = new DisablerHelper();
|
|
13
|
-
this.AlertHelper = new AlertHelper();
|
|
14
|
-
this._controlRelations = new ControlRelations(this);
|
|
15
|
-
this.hiders = [];
|
|
16
|
-
this.disablers = [];
|
|
17
|
-
this.alerts = [];
|
|
18
|
-
this.valueChanges.subscribe((value) => {
|
|
19
|
-
if (this._previousValue !== value) {
|
|
20
|
-
this.fireValueChangeListener(value);
|
|
21
|
-
this._previousValue = value;
|
|
22
|
-
}
|
|
23
|
-
});
|
|
24
|
-
}
|
|
25
|
-
get controlRelations() {
|
|
26
|
-
return this._controlRelations;
|
|
27
|
-
}
|
|
28
|
-
disable(param) {
|
|
29
|
-
super.disable(param);
|
|
30
|
-
if (this.disablers.some((disabler) => disabler.resetValueOnDisable === true)) {
|
|
31
|
-
super.setValue('');
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
hide() {
|
|
35
|
-
this.hiderHelper.hideControl(this);
|
|
36
|
-
}
|
|
37
|
-
show() {
|
|
38
|
-
this.hiderHelper.showControl(this);
|
|
39
|
-
}
|
|
40
|
-
setHidingFn(newHider) {
|
|
41
|
-
this.hiderHelper.setHiderForControl(this, newHider);
|
|
42
|
-
}
|
|
43
|
-
setCalculatorFn(newCalculator) {
|
|
44
|
-
this.calculator = newCalculator;
|
|
45
|
-
}
|
|
46
|
-
updateCalculatedValue() {
|
|
47
|
-
if (this.calculator) {
|
|
48
|
-
const _val = this.calculator.call(ExpressionRunner, {});
|
|
49
|
-
this.setValue(_val);
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
clearHidingFns() {
|
|
53
|
-
this.hiderHelper.clearHidersForControl(this);
|
|
54
|
-
}
|
|
55
|
-
updateHiddenState() {
|
|
56
|
-
this.hiderHelper.evaluateControlHiders(this);
|
|
57
|
-
}
|
|
58
|
-
setDisablingFn(newDisabler) {
|
|
59
|
-
this.disablerHelper.setDisablerForControl(this, newDisabler);
|
|
60
|
-
}
|
|
61
|
-
clearDisablingFns() {
|
|
62
|
-
this.disablerHelper.clearDisablersForControl(this);
|
|
63
|
-
}
|
|
64
|
-
updateDisabledState() {
|
|
65
|
-
this.disablerHelper.evaluateControlDisablers(this);
|
|
66
|
-
}
|
|
67
|
-
setAlertFn(newHider) {
|
|
68
|
-
this.AlertHelper.setAlertsForControl(this, newHider);
|
|
69
|
-
}
|
|
70
|
-
clearMessageFns() {
|
|
71
|
-
this.AlertHelper.clearAlertsForControl(this);
|
|
72
|
-
}
|
|
73
|
-
updateAlert() {
|
|
74
|
-
this.AlertHelper.evaluateControlAlerts(this);
|
|
75
|
-
}
|
|
76
|
-
addValueChangeListener(func) {
|
|
77
|
-
this._valueChangeListener = func;
|
|
78
|
-
}
|
|
79
|
-
fireValueChangeListener(value) {
|
|
80
|
-
if (this._valueChangeListener &&
|
|
81
|
-
typeof this._valueChangeListener === 'function') {
|
|
82
|
-
this._valueChangeListener(value);
|
|
83
|
-
}
|
|
84
|
-
this.alerts.length > 0 && this.updateAlert();
|
|
85
|
-
}
|
|
86
|
-
setValue(value) {
|
|
87
|
-
super.setValue(value);
|
|
88
|
-
}
|
|
89
|
-
}
|
|
90
|
-
export { AfeFormControl };
|
|
91
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWZlLWZvcm0tY29udHJvbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1mb3JtZW50cnkvc3JjL2Fic3RyYWN0LWNvbnRyb2xzLWV4dGVuc2lvbi9hZmUtZm9ybS1jb250cm9sLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxrQkFBa0IsRUFJbkIsTUFBTSxnQkFBZ0IsQ0FBQztBQUV4QixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQWN4RSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sc0RBQXNELENBQUM7QUFDbkYsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx3REFBd0QsQ0FBQztBQUV4RixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxtREFBbUQsQ0FBQztBQUVyRixNQUFNLGNBQ0osU0FBUSxrQkFBa0I7SUF1QjFCLFlBQ0UsU0FBZSxFQUNmLFNBQXVFLEVBQ3ZFLGNBQTZEO1FBRTdELEtBQUssQ0FBQyxTQUFTLEVBQUUsU0FBUyxFQUFFLGNBQWMsQ0FBQyxDQUFDO1FBZjlDLFdBQU0sR0FBRyxLQUFLLENBQUM7UUFPUCxnQkFBVyxHQUFnQixJQUFJLFdBQVcsRUFBRSxDQUFDO1FBQzdDLG1CQUFjLEdBQW1CLElBQUksY0FBYyxFQUFFLENBQUM7UUFDdEQsZ0JBQVcsR0FBZ0IsSUFBSSxXQUFXLEVBQUUsQ0FBQztRQU9uRCxJQUFJLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNwRCxJQUFJLENBQUMsTUFBTSxHQUFHLEVBQUUsQ0FBQztRQUNqQixJQUFJLENBQUMsU0FBUyxHQUFHLEVBQUUsQ0FBQztRQUNwQixJQUFJLENBQUMsTUFBTSxHQUFHLEVBQUUsQ0FBQztRQUVqQixJQUFJLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQ3BDLElBQUksSUFBSSxDQUFDLGNBQWMsS0FBSyxLQUFLLEVBQUUsQ0FBQztnQkFDbEMsSUFBSSxDQUFDLHVCQUF1QixDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUNwQyxJQUFJLENBQUMsY0FBYyxHQUFHLEtBQUssQ0FBQztZQUM5QixDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsSUFBSSxnQkFBZ0I7UUFDbEIsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUM7SUFDaEMsQ0FBQztJQUVELE9BQU8sQ0FBQyxLQUFtRDtRQUN6RCxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3JCLElBQ0UsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxtQkFBbUIsS0FBSyxJQUFJLENBQUMsRUFDeEUsQ0FBQztZQUNELEtBQUssQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDckIsQ0FBQztJQUNILENBQUM7SUFFRCxJQUFJO1FBQ0YsSUFBSSxDQUFDLFdBQVcsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUVELElBQUk7UUFDRixJQUFJLENBQUMsV0FBVyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNyQyxDQUFDO0lBRUQsV0FBVyxDQUFDLFFBQWU7UUFDekIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUVELGVBQWUsQ0FBQyxhQUF1QjtRQUNyQyxJQUFJLENBQUMsVUFBVSxHQUFHLGFBQWEsQ0FBQztJQUNsQyxDQUFDO0lBRUQscUJBQXFCO1FBQ25CLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ3BCLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLGdCQUFnQixFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQ3hELElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDdEIsQ0FBQztJQUNILENBQUM7SUFFRCxjQUFjO1FBQ1osSUFBSSxDQUFDLFdBQVcsQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMvQyxDQUFDO0lBRUQsaUJBQWlCO1FBQ2YsSUFBSSxDQUFDLFdBQVcsQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMvQyxDQUFDO0lBRUQsY0FBYyxDQUFDLFdBQXFCO1FBQ2xDLElBQUksQ0FBQyxjQUFjLENBQUMscUJBQXFCLENBQUMsSUFBSSxFQUFFLFdBQVcsQ0FBQyxDQUFDO0lBQy9ELENBQUM7SUFFRCxpQkFBaUI7UUFDZixJQUFJLENBQUMsY0FBYyxDQUFDLHdCQUF3QixDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3JELENBQUM7SUFFRCxtQkFBbUI7UUFDakIsSUFBSSxDQUFDLGNBQWMsQ0FBQyx3QkFBd0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNyRCxDQUFDO0lBRUQsVUFBVSxDQUFDLFFBQWU7UUFDeEIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUVELGVBQWU7UUFDYixJQUFJLENBQUMsV0FBVyxDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLFdBQVcsQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMvQyxDQUFDO0lBRUQsc0JBQXNCLENBQUMsSUFBUztRQUM5QixJQUFJLENBQUMsb0JBQW9CLEdBQUcsSUFBSSxDQUFDO0lBQ25DLENBQUM7SUFFRCx1QkFBdUIsQ0FBQyxLQUFVO1FBQ2hDLElBQ0UsSUFBSSxDQUFDLG9CQUFvQjtZQUN6QixPQUFPLElBQUksQ0FBQyxvQkFBb0IsS0FBSyxVQUFVLEVBQy9DLENBQUM7WUFDRCxJQUFJLENBQUMsb0JBQW9CLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDbkMsQ0FBQztRQUNELElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxHQUFHLENBQUMsSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDL0MsQ0FBQztJQUVELFFBQVEsQ0FBQyxLQUFVO1FBQ2pCLEtBQUssQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDeEIsQ0FBQztDQUNGO0FBQ0QsT0FBTyxFQUFFLGNBQWMsRUFBRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgVW50eXBlZEZvcm1Db250cm9sLFxuICBWYWxpZGF0b3JGbixcbiAgQXN5bmNWYWxpZGF0b3JGbixcbiAgQWJzdHJhY3RDb250cm9sT3B0aW9uc1xufSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7IENvbnRyb2xSZWxhdGlvbnMgfSBmcm9tICcuLi9jaGFuZ2UtdHJhY2tpbmcvY29udHJvbC1yZWxhdGlvbnMnO1xuaW1wb3J0IHsgVmFsdWVDaGFuZ2VMaXN0ZW5lciB9IGZyb20gJy4vdmFsdWUtY2hhbmdlLmxpc3RlbmVyJztcbmltcG9ydCB7XG4gIENhbkhpZGUsXG4gIEhpZGVyXG59IGZyb20gJy4uL2Zvcm0tZW50cnkvY29udHJvbC1oaWRlcnMtZGlzYWJsZXJzL2Nhbi1oaWRlJztcbmltcG9ydCB7XG4gIENhbkRpc2FibGUsXG4gIERpc2FibGVyXG59IGZyb20gJy4uL2Zvcm0tZW50cnkvY29udHJvbC1oaWRlcnMtZGlzYWJsZXJzL2Nhbi1kaXNhYmxlJztcbmltcG9ydCB7XG4gIENhbkdlbmVyYXRlQWxlcnQsXG4gIEFsZXJ0XG59IGZyb20gJy4uL2Zvcm0tZW50cnkvY29udHJvbC1hbGVydHMvY2FuLWdlbmVyYXRlLWFsZXJ0JztcbmltcG9ydCB7IEhpZGVySGVscGVyIH0gZnJvbSAnLi4vZm9ybS1lbnRyeS9jb250cm9sLWhpZGVycy1kaXNhYmxlcnMvaGlkZXItaGVscGVycyc7XG5pbXBvcnQgeyBBbGVydEhlbHBlciB9IGZyb20gJy4uL2Zvcm0tZW50cnkvY29udHJvbC1hbGVydHMvYWxlcnQtaGVscGVycyc7XG5pbXBvcnQgeyBEaXNhYmxlckhlbHBlciB9IGZyb20gJy4uL2Zvcm0tZW50cnkvY29udHJvbC1oaWRlcnMtZGlzYWJsZXJzL2Rpc2FibGVyLWhlbHBlcic7XG5pbXBvcnQgeyBDYW5DYWxjdWxhdGUgfSBmcm9tICcuLi9mb3JtLWVudHJ5L2NvbnRyb2wtY2FsY3VsYXRvcnMvY2FuLWNhbGN1bGF0ZSc7XG5pbXBvcnQgeyBFeHByZXNzaW9uUnVubmVyIH0gZnJvbSAnLi4vZm9ybS1lbnRyeS9leHByZXNzaW9uLXJ1bm5lci9leHByZXNzaW9uLXJ1bm5lcic7XG5cbmNsYXNzIEFmZUZvcm1Db250cm9sXG4gIGV4dGVuZHMgVW50eXBlZEZvcm1Db250cm9sXG4gIGltcGxlbWVudHNcbiAgICBDYW5IaWRlLFxuICAgIENhbkRpc2FibGUsXG4gICAgQ2FuQ2FsY3VsYXRlLFxuICAgIENhbkdlbmVyYXRlQWxlcnQsXG4gICAgVmFsdWVDaGFuZ2VMaXN0ZW5lciB7XG4gIHByaXZhdGUgX2NvbnRyb2xSZWxhdGlvbnM6IENvbnRyb2xSZWxhdGlvbnM7XG4gIHByaXZhdGUgX3ZhbHVlQ2hhbmdlTGlzdGVuZXI6IGFueTtcbiAgcHJpdmF0ZSBfcHJldmlvdXNWYWx1ZTtcbiAgcHVibGljIHV1aWQ6IHN0cmluZztcbiAgcHVibGljIHBhdGhGcm9tUm9vdDogc3RyaW5nO1xuXG4gIGhpZGRlbiA9IGZhbHNlO1xuICBoaWRlcnM6IEhpZGVyW107XG4gIGFsZXJ0OiBzdHJpbmc7XG4gIGFsZXJ0czogQWxlcnRbXTtcbiAgY2FsY3VsYXRvcjogRnVuY3Rpb247XG4gIGRpc2FibGVyczogRGlzYWJsZXJbXTtcblxuICBwcml2YXRlIGhpZGVySGVscGVyOiBIaWRlckhlbHBlciA9IG5ldyBIaWRlckhlbHBlcigpO1xuICBwcml2YXRlIGRpc2FibGVySGVscGVyOiBEaXNhYmxlckhlbHBlciA9IG5ldyBEaXNhYmxlckhlbHBlcigpO1xuICBwcml2YXRlIEFsZXJ0SGVscGVyOiBBbGVydEhlbHBlciA9IG5ldyBBbGVydEhlbHBlcigpO1xuICBjb25zdHJ1Y3RvcihcbiAgICBmb3JtU3RhdGU/OiBhbnksXG4gICAgdmFsaWRhdG9yPzogVmFsaWRhdG9yRm4gfCBWYWxpZGF0b3JGbltdIHwgQWJzdHJhY3RDb250cm9sT3B0aW9ucyB8IG51bGwsXG4gICAgYXN5bmNWYWxpZGF0b3I/OiBBc3luY1ZhbGlkYXRvckZuIHwgQXN5bmNWYWxpZGF0b3JGbltdIHwgbnVsbFxuICApIHtcbiAgICBzdXBlcihmb3JtU3RhdGUsIHZhbGlkYXRvciwgYXN5bmNWYWxpZGF0b3IpO1xuICAgIHRoaXMuX2NvbnRyb2xSZWxhdGlvbnMgPSBuZXcgQ29udHJvbFJlbGF0aW9ucyh0aGlzKTtcbiAgICB0aGlzLmhpZGVycyA9IFtdO1xuICAgIHRoaXMuZGlzYWJsZXJzID0gW107XG4gICAgdGhpcy5hbGVydHMgPSBbXTtcblxuICAgIHRoaXMudmFsdWVDaGFuZ2VzLnN1YnNjcmliZSgodmFsdWUpID0+IHtcbiAgICAgIGlmICh0aGlzLl9wcmV2aW91c1ZhbHVlICE9PSB2YWx1ZSkge1xuICAgICAgICB0aGlzLmZpcmVWYWx1ZUNoYW5nZUxpc3RlbmVyKHZhbHVlKTtcbiAgICAgICAgdGhpcy5fcHJldmlvdXNWYWx1ZSA9IHZhbHVlO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgZ2V0IGNvbnRyb2xSZWxhdGlvbnMoKTogQ29udHJvbFJlbGF0aW9ucyB7XG4gICAgcmV0dXJuIHRoaXMuX2NvbnRyb2xSZWxhdGlvbnM7XG4gIH1cblxuICBkaXNhYmxlKHBhcmFtPzogeyBvbmx5U2VsZj86IGJvb2xlYW47IGVtaXRFdmVudD86IGJvb2xlYW4gfSkge1xuICAgIHN1cGVyLmRpc2FibGUocGFyYW0pO1xuICAgIGlmIChcbiAgICAgIHRoaXMuZGlzYWJsZXJzLnNvbWUoKGRpc2FibGVyKSA9PiBkaXNhYmxlci5yZXNldFZhbHVlT25EaXNhYmxlID09PSB0cnVlKVxuICAgICkge1xuICAgICAgc3VwZXIuc2V0VmFsdWUoJycpO1xuICAgIH1cbiAgfVxuXG4gIGhpZGUoKSB7XG4gICAgdGhpcy5oaWRlckhlbHBlci5oaWRlQ29udHJvbCh0aGlzKTtcbiAgfVxuXG4gIHNob3coKSB7XG4gICAgdGhpcy5oaWRlckhlbHBlci5zaG93Q29udHJvbCh0aGlzKTtcbiAgfVxuXG4gIHNldEhpZGluZ0ZuKG5ld0hpZGVyOiBIaWRlcikge1xuICAgIHRoaXMuaGlkZXJIZWxwZXIuc2V0SGlkZXJGb3JDb250cm9sKHRoaXMsIG5ld0hpZGVyKTtcbiAgfVxuXG4gIHNldENhbGN1bGF0b3JGbihuZXdDYWxjdWxhdG9yOiBGdW5jdGlvbikge1xuICAgIHRoaXMuY2FsY3VsYXRvciA9IG5ld0NhbGN1bGF0b3I7XG4gIH1cblxuICB1cGRhdGVDYWxjdWxhdGVkVmFsdWUoKSB7XG4gICAgaWYgKHRoaXMuY2FsY3VsYXRvcikge1xuICAgICAgY29uc3QgX3ZhbCA9IHRoaXMuY2FsY3VsYXRvci5jYWxsKEV4cHJlc3Npb25SdW5uZXIsIHt9KTtcbiAgICAgIHRoaXMuc2V0VmFsdWUoX3ZhbCk7XG4gICAgfVxuICB9XG5cbiAgY2xlYXJIaWRpbmdGbnMoKSB7XG4gICAgdGhpcy5oaWRlckhlbHBlci5jbGVhckhpZGVyc0ZvckNvbnRyb2wodGhpcyk7XG4gIH1cblxuICB1cGRhdGVIaWRkZW5TdGF0ZSgpIHtcbiAgICB0aGlzLmhpZGVySGVscGVyLmV2YWx1YXRlQ29udHJvbEhpZGVycyh0aGlzKTtcbiAgfVxuXG4gIHNldERpc2FibGluZ0ZuKG5ld0Rpc2FibGVyOiBEaXNhYmxlcikge1xuICAgIHRoaXMuZGlzYWJsZXJIZWxwZXIuc2V0RGlzYWJsZXJGb3JDb250cm9sKHRoaXMsIG5ld0Rpc2FibGVyKTtcbiAgfVxuXG4gIGNsZWFyRGlzYWJsaW5nRm5zKCkge1xuICAgIHRoaXMuZGlzYWJsZXJIZWxwZXIuY2xlYXJEaXNhYmxlcnNGb3JDb250cm9sKHRoaXMpO1xuICB9XG5cbiAgdXBkYXRlRGlzYWJsZWRTdGF0ZSgpIHtcbiAgICB0aGlzLmRpc2FibGVySGVscGVyLmV2YWx1YXRlQ29udHJvbERpc2FibGVycyh0aGlzKTtcbiAgfVxuXG4gIHNldEFsZXJ0Rm4obmV3SGlkZXI6IEFsZXJ0KSB7XG4gICAgdGhpcy5BbGVydEhlbHBlci5zZXRBbGVydHNGb3JDb250cm9sKHRoaXMsIG5ld0hpZGVyKTtcbiAgfVxuXG4gIGNsZWFyTWVzc2FnZUZucygpIHtcbiAgICB0aGlzLkFsZXJ0SGVscGVyLmNsZWFyQWxlcnRzRm9yQ29udHJvbCh0aGlzKTtcbiAgfVxuXG4gIHVwZGF0ZUFsZXJ0KCkge1xuICAgIHRoaXMuQWxlcnRIZWxwZXIuZXZhbHVhdGVDb250cm9sQWxlcnRzKHRoaXMpO1xuICB9XG5cbiAgYWRkVmFsdWVDaGFuZ2VMaXN0ZW5lcihmdW5jOiBhbnkpIHtcbiAgICB0aGlzLl92YWx1ZUNoYW5nZUxpc3RlbmVyID0gZnVuYztcbiAgfVxuXG4gIGZpcmVWYWx1ZUNoYW5nZUxpc3RlbmVyKHZhbHVlOiBhbnkpIHtcbiAgICBpZiAoXG4gICAgICB0aGlzLl92YWx1ZUNoYW5nZUxpc3RlbmVyICYmXG4gICAgICB0eXBlb2YgdGhpcy5fdmFsdWVDaGFuZ2VMaXN0ZW5lciA9PT0gJ2Z1bmN0aW9uJ1xuICAgICkge1xuICAgICAgdGhpcy5fdmFsdWVDaGFuZ2VMaXN0ZW5lcih2YWx1ZSk7XG4gICAgfVxuICAgIHRoaXMuYWxlcnRzLmxlbmd0aCA+IDAgJiYgdGhpcy51cGRhdGVBbGVydCgpO1xuICB9XG5cbiAgc2V0VmFsdWUodmFsdWU6IGFueSkge1xuICAgIHN1cGVyLnNldFZhbHVlKHZhbHVlKTtcbiAgfVxufVxuZXhwb3J0IHsgQWZlRm9ybUNvbnRyb2wgfTtcbiJdfQ==
|
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
import { UntypedFormGroup } from '@angular/forms';
|
|
2
|
-
import { ControlRelations } from '../change-tracking/control-relations';
|
|
3
|
-
import { HiderHelper } from '../form-entry/control-hiders-disablers/hider-helpers';
|
|
4
|
-
import { DisablerHelper } from '../form-entry/control-hiders-disablers/disabler-helper';
|
|
5
|
-
import { AlertHelper } from '../form-entry/control-alerts/alert-helpers';
|
|
6
|
-
export class AfeFormGroup extends UntypedFormGroup {
|
|
7
|
-
constructor(controls, validator, asyncValidator) {
|
|
8
|
-
super(controls, validator, asyncValidator);
|
|
9
|
-
this.hiderHelper = new HiderHelper();
|
|
10
|
-
this.disablerHelper = new DisablerHelper();
|
|
11
|
-
this.AlertHelper = new AlertHelper();
|
|
12
|
-
this._controlRelations = new ControlRelations(this);
|
|
13
|
-
this.hiders = [];
|
|
14
|
-
this.disablers = [];
|
|
15
|
-
this.alerts = [];
|
|
16
|
-
}
|
|
17
|
-
get controlRelations() {
|
|
18
|
-
return this._controlRelations;
|
|
19
|
-
}
|
|
20
|
-
hide() {
|
|
21
|
-
this.hiderHelper.hideControl(this);
|
|
22
|
-
}
|
|
23
|
-
show() {
|
|
24
|
-
this.hiderHelper.showControl(this);
|
|
25
|
-
}
|
|
26
|
-
disable(param) {
|
|
27
|
-
super.disable(param);
|
|
28
|
-
if (this.disablers.some((disabler) => disabler.resetValueOnDisable === true)) {
|
|
29
|
-
super.setValue({});
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
setHidingFn(newHider) {
|
|
33
|
-
this.hiderHelper.setHiderForControl(this, newHider);
|
|
34
|
-
}
|
|
35
|
-
clearHidingFns() {
|
|
36
|
-
this.hiderHelper.clearHidersForControl(this);
|
|
37
|
-
}
|
|
38
|
-
updateHiddenState() {
|
|
39
|
-
this.hiderHelper.evaluateControlHiders(this);
|
|
40
|
-
}
|
|
41
|
-
setDisablingFn(newDisabler) {
|
|
42
|
-
this.disablerHelper.setDisablerForControl(this, newDisabler);
|
|
43
|
-
}
|
|
44
|
-
clearDisablingFns() {
|
|
45
|
-
this.disablerHelper.clearDisablersForControl(this);
|
|
46
|
-
}
|
|
47
|
-
updateDisabledState() {
|
|
48
|
-
this.disablerHelper.evaluateControlDisablers(this);
|
|
49
|
-
}
|
|
50
|
-
setAlertFn(newHider) {
|
|
51
|
-
this.AlertHelper.setAlertsForControl(this, newHider);
|
|
52
|
-
}
|
|
53
|
-
clearMessageFns() {
|
|
54
|
-
this.AlertHelper.clearAlertsForControl(this);
|
|
55
|
-
}
|
|
56
|
-
updateAlert() {
|
|
57
|
-
this.AlertHelper.evaluateControlAlerts(this);
|
|
58
|
-
}
|
|
59
|
-
setValue(value) {
|
|
60
|
-
super.setValue(value);
|
|
61
|
-
if (this.alerts.length > 0) {
|
|
62
|
-
this.updateAlert();
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWZlLWZvcm0tZ3JvdXAuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtZm9ybWVudHJ5L3NyYy9hYnN0cmFjdC1jb250cm9scy1leHRlbnNpb24vYWZlLWZvcm0tZ3JvdXAudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLGdCQUFnQixFQUlqQixNQUFNLGdCQUFnQixDQUFDO0FBRXhCLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBY3hFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxzREFBc0QsQ0FBQztBQUNuRixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sd0RBQXdELENBQUM7QUFDeEYsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBRXpFLE1BQU0sT0FBTyxZQUNYLFNBQVEsZ0JBQWdCO0lBa0J4QixZQUNFLFFBQTRDLEVBQzVDLFNBQXVCLEVBQ3ZCLGNBQWlDO1FBRWpDLEtBQUssQ0FBQyxRQUFRLEVBQUUsU0FBUyxFQUFFLGNBQWMsQ0FBQyxDQUFDO1FBVHJDLGdCQUFXLEdBQWdCLElBQUksV0FBVyxFQUFFLENBQUM7UUFDN0MsbUJBQWMsR0FBbUIsSUFBSSxjQUFjLEVBQUUsQ0FBQztRQUN0RCxnQkFBVyxHQUFnQixJQUFJLFdBQVcsRUFBRSxDQUFDO1FBUW5ELElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLGdCQUFnQixDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3BELElBQUksQ0FBQyxNQUFNLEdBQUcsRUFBRSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxTQUFTLEdBQUcsRUFBRSxDQUFDO1FBQ3BCLElBQUksQ0FBQyxNQUFNLEdBQUcsRUFBRSxDQUFDO0lBQ25CLENBQUM7SUFFRCxJQUFJLGdCQUFnQjtRQUNsQixPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQztJQUNoQyxDQUFDO0lBRUQsSUFBSTtRQUNGLElBQUksQ0FBQyxXQUFXLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3JDLENBQUM7SUFFRCxJQUFJO1FBQ0YsSUFBSSxDQUFDLFdBQVcsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUVELE9BQU8sQ0FBQyxLQUFtRDtRQUN6RCxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3JCLElBQ0UsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxtQkFBbUIsS0FBSyxJQUFJLENBQUMsRUFDeEUsQ0FBQztZQUNELEtBQUssQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDckIsQ0FBQztJQUNILENBQUM7SUFFRCxXQUFXLENBQUMsUUFBZTtRQUN6QixJQUFJLENBQUMsV0FBVyxDQUFDLGtCQUFrQixDQUFDLElBQUksRUFBRSxRQUFRLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBRUQsY0FBYztRQUNaLElBQUksQ0FBQyxXQUFXLENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDL0MsQ0FBQztJQUVELGlCQUFpQjtRQUNmLElBQUksQ0FBQyxXQUFXLENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDL0MsQ0FBQztJQUVELGNBQWMsQ0FBQyxXQUFxQjtRQUNsQyxJQUFJLENBQUMsY0FBYyxDQUFDLHFCQUFxQixDQUFDLElBQUksRUFBRSxXQUFXLENBQUMsQ0FBQztJQUMvRCxDQUFDO0lBRUQsaUJBQWlCO1FBQ2YsSUFBSSxDQUFDLGNBQWMsQ0FBQyx3QkFBd0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNyRCxDQUFDO0lBRUQsbUJBQW1CO1FBQ2pCLElBQUksQ0FBQyxjQUFjLENBQUMsd0JBQXdCLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDckQsQ0FBQztJQUVELFVBQVUsQ0FBQyxRQUFlO1FBQ3hCLElBQUksQ0FBQyxXQUFXLENBQUMsbUJBQW1CLENBQUMsSUFBSSxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQ3ZELENBQUM7SUFFRCxlQUFlO1FBQ2IsSUFBSSxDQUFDLFdBQVcsQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMvQyxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxXQUFXLENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDL0MsQ0FBQztJQUNELFFBQVEsQ0FBQyxLQUFVO1FBQ2pCLEtBQUssQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDdEIsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUMzQixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDckIsQ0FBQztJQUNILENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIFVudHlwZWRGb3JtR3JvdXAsXG4gIFZhbGlkYXRvckZuLFxuICBBc3luY1ZhbGlkYXRvckZuLFxuICBBYnN0cmFjdENvbnRyb2xcbn0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5pbXBvcnQgeyBDb250cm9sUmVsYXRpb25zIH0gZnJvbSAnLi4vY2hhbmdlLXRyYWNraW5nL2NvbnRyb2wtcmVsYXRpb25zJztcblxuaW1wb3J0IHtcbiAgQ2FuSGlkZSxcbiAgSGlkZXJcbn0gZnJvbSAnLi4vZm9ybS1lbnRyeS9jb250cm9sLWhpZGVycy1kaXNhYmxlcnMvY2FuLWhpZGUnO1xuaW1wb3J0IHtcbiAgQ2FuRGlzYWJsZSxcbiAgRGlzYWJsZXJcbn0gZnJvbSAnLi4vZm9ybS1lbnRyeS9jb250cm9sLWhpZGVycy1kaXNhYmxlcnMvY2FuLWRpc2FibGUnO1xuaW1wb3J0IHtcbiAgQ2FuR2VuZXJhdGVBbGVydCxcbiAgQWxlcnRcbn0gZnJvbSAnLi4vZm9ybS1lbnRyeS9jb250cm9sLWFsZXJ0cy9jYW4tZ2VuZXJhdGUtYWxlcnQnO1xuaW1wb3J0IHsgSGlkZXJIZWxwZXIgfSBmcm9tICcuLi9mb3JtLWVudHJ5L2NvbnRyb2wtaGlkZXJzLWRpc2FibGVycy9oaWRlci1oZWxwZXJzJztcbmltcG9ydCB7IERpc2FibGVySGVscGVyIH0gZnJvbSAnLi4vZm9ybS1lbnRyeS9jb250cm9sLWhpZGVycy1kaXNhYmxlcnMvZGlzYWJsZXItaGVscGVyJztcbmltcG9ydCB7IEFsZXJ0SGVscGVyIH0gZnJvbSAnLi4vZm9ybS1lbnRyeS9jb250cm9sLWFsZXJ0cy9hbGVydC1oZWxwZXJzJztcblxuZXhwb3J0IGNsYXNzIEFmZUZvcm1Hcm91cFxuICBleHRlbmRzIFVudHlwZWRGb3JtR3JvdXBcbiAgaW1wbGVtZW50cyBDYW5IaWRlLCBDYW5EaXNhYmxlLCBDYW5HZW5lcmF0ZUFsZXJ0IHtcbiAgcHJpdmF0ZSBfY29udHJvbFJlbGF0aW9uczogQ29udHJvbFJlbGF0aW9ucztcblxuICBwdWJsaWMgdXVpZDogc3RyaW5nO1xuICBwdWJsaWMgcGF0aEZyb21Sb290OiBzdHJpbmc7XG5cbiAgaGlkZGVuOiBmYWxzZTtcbiAgaGlkZXJzOiBIaWRlcltdO1xuICBhbGVydDogc3RyaW5nO1xuICBhbGVydHM6IEFsZXJ0W107XG5cbiAgZGlzYWJsZXJzOiBEaXNhYmxlcltdO1xuXG4gIHByaXZhdGUgaGlkZXJIZWxwZXI6IEhpZGVySGVscGVyID0gbmV3IEhpZGVySGVscGVyKCk7XG4gIHByaXZhdGUgZGlzYWJsZXJIZWxwZXI6IERpc2FibGVySGVscGVyID0gbmV3IERpc2FibGVySGVscGVyKCk7XG4gIHByaXZhdGUgQWxlcnRIZWxwZXI6IEFsZXJ0SGVscGVyID0gbmV3IEFsZXJ0SGVscGVyKCk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgY29udHJvbHM6IHsgW2tleTogc3RyaW5nXTogQWJzdHJhY3RDb250cm9sIH0sXG4gICAgdmFsaWRhdG9yPzogVmFsaWRhdG9yRm4sXG4gICAgYXN5bmNWYWxpZGF0b3I/OiBBc3luY1ZhbGlkYXRvckZuXG4gICkge1xuICAgIHN1cGVyKGNvbnRyb2xzLCB2YWxpZGF0b3IsIGFzeW5jVmFsaWRhdG9yKTtcbiAgICB0aGlzLl9jb250cm9sUmVsYXRpb25zID0gbmV3IENvbnRyb2xSZWxhdGlvbnModGhpcyk7XG4gICAgdGhpcy5oaWRlcnMgPSBbXTtcbiAgICB0aGlzLmRpc2FibGVycyA9IFtdO1xuICAgIHRoaXMuYWxlcnRzID0gW107XG4gIH1cblxuICBnZXQgY29udHJvbFJlbGF0aW9ucygpOiBDb250cm9sUmVsYXRpb25zIHtcbiAgICByZXR1cm4gdGhpcy5fY29udHJvbFJlbGF0aW9ucztcbiAgfVxuXG4gIGhpZGUoKSB7XG4gICAgdGhpcy5oaWRlckhlbHBlci5oaWRlQ29udHJvbCh0aGlzKTtcbiAgfVxuXG4gIHNob3coKSB7XG4gICAgdGhpcy5oaWRlckhlbHBlci5zaG93Q29udHJvbCh0aGlzKTtcbiAgfVxuXG4gIGRpc2FibGUocGFyYW0/OiB7IG9ubHlTZWxmPzogYm9vbGVhbjsgZW1pdEV2ZW50PzogYm9vbGVhbiB9KSB7XG4gICAgc3VwZXIuZGlzYWJsZShwYXJhbSk7XG4gICAgaWYgKFxuICAgICAgdGhpcy5kaXNhYmxlcnMuc29tZSgoZGlzYWJsZXIpID0+IGRpc2FibGVyLnJlc2V0VmFsdWVPbkRpc2FibGUgPT09IHRydWUpXG4gICAgKSB7XG4gICAgICBzdXBlci5zZXRWYWx1ZSh7fSk7XG4gICAgfVxuICB9XG5cbiAgc2V0SGlkaW5nRm4obmV3SGlkZXI6IEhpZGVyKSB7XG4gICAgdGhpcy5oaWRlckhlbHBlci5zZXRIaWRlckZvckNvbnRyb2wodGhpcywgbmV3SGlkZXIpO1xuICB9XG5cbiAgY2xlYXJIaWRpbmdGbnMoKSB7XG4gICAgdGhpcy5oaWRlckhlbHBlci5jbGVhckhpZGVyc0ZvckNvbnRyb2wodGhpcyk7XG4gIH1cblxuICB1cGRhdGVIaWRkZW5TdGF0ZSgpIHtcbiAgICB0aGlzLmhpZGVySGVscGVyLmV2YWx1YXRlQ29udHJvbEhpZGVycyh0aGlzKTtcbiAgfVxuXG4gIHNldERpc2FibGluZ0ZuKG5ld0Rpc2FibGVyOiBEaXNhYmxlcikge1xuICAgIHRoaXMuZGlzYWJsZXJIZWxwZXIuc2V0RGlzYWJsZXJGb3JDb250cm9sKHRoaXMsIG5ld0Rpc2FibGVyKTtcbiAgfVxuXG4gIGNsZWFyRGlzYWJsaW5nRm5zKCkge1xuICAgIHRoaXMuZGlzYWJsZXJIZWxwZXIuY2xlYXJEaXNhYmxlcnNGb3JDb250cm9sKHRoaXMpO1xuICB9XG5cbiAgdXBkYXRlRGlzYWJsZWRTdGF0ZSgpIHtcbiAgICB0aGlzLmRpc2FibGVySGVscGVyLmV2YWx1YXRlQ29udHJvbERpc2FibGVycyh0aGlzKTtcbiAgfVxuXG4gIHNldEFsZXJ0Rm4obmV3SGlkZXI6IEFsZXJ0KSB7XG4gICAgdGhpcy5BbGVydEhlbHBlci5zZXRBbGVydHNGb3JDb250cm9sKHRoaXMsIG5ld0hpZGVyKTtcbiAgfVxuXG4gIGNsZWFyTWVzc2FnZUZucygpIHtcbiAgICB0aGlzLkFsZXJ0SGVscGVyLmNsZWFyQWxlcnRzRm9yQ29udHJvbCh0aGlzKTtcbiAgfVxuXG4gIHVwZGF0ZUFsZXJ0KCkge1xuICAgIHRoaXMuQWxlcnRIZWxwZXIuZXZhbHVhdGVDb250cm9sQWxlcnRzKHRoaXMpO1xuICB9XG4gIHNldFZhbHVlKHZhbHVlOiBhbnkpIHtcbiAgICBzdXBlci5zZXRWYWx1ZSh2YWx1ZSk7XG4gICAgaWYgKHRoaXMuYWxlcnRzLmxlbmd0aCA+IDApIHtcbiAgICAgIHRoaXMudXBkYXRlQWxlcnQoKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
export { AfeControlType } from './afe-control-type';
|
|
2
|
-
export { AfeFormArray } from './afe-form-array';
|
|
3
|
-
export { AfeFormGroup } from './afe-form-group';
|
|
4
|
-
export { AfeFormControl } from './afe-form-control';
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJvbC1leHRlbnNpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWZvcm1lbnRyeS9zcmMvYWJzdHJhY3QtY29udHJvbHMtZXh0ZW5zaW9uL2NvbnRyb2wtZXh0ZW5zaW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDcEQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2hELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNoRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0JBQW9CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgeyBBZmVDb250cm9sVHlwZSB9IGZyb20gJy4vYWZlLWNvbnRyb2wtdHlwZSc7XG5leHBvcnQgeyBBZmVGb3JtQXJyYXkgfSBmcm9tICcuL2FmZS1mb3JtLWFycmF5JztcbmV4cG9ydCB7IEFmZUZvcm1Hcm91cCB9IGZyb20gJy4vYWZlLWZvcm0tZ3JvdXAnO1xuZXhwb3J0IHsgQWZlRm9ybUNvbnRyb2wgfSBmcm9tICcuL2FmZS1mb3JtLWNvbnRyb2wnO1xuIl19
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
export { AfeFormControl } from './afe-form-control';
|
|
2
|
-
export { AfeFormGroup } from './afe-form-group';
|
|
3
|
-
export { AfeFormArray } from './afe-form-array';
|
|
4
|
-
export { AfeControlType } from './afe-control-type';
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtZm9ybWVudHJ5L3NyYy9hYnN0cmFjdC1jb250cm9scy1leHRlbnNpb24vaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNoRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDaEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9CQUFvQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHsgQWZlRm9ybUNvbnRyb2wgfSBmcm9tICcuL2FmZS1mb3JtLWNvbnRyb2wnO1xuZXhwb3J0IHsgQWZlRm9ybUdyb3VwIH0gZnJvbSAnLi9hZmUtZm9ybS1ncm91cCc7XG5leHBvcnQgeyBBZmVGb3JtQXJyYXkgfSBmcm9tICcuL2FmZS1mb3JtLWFycmF5JztcbmV4cG9ydCB7IEFmZUNvbnRyb2xUeXBlIH0gZnJvbSAnLi9hZmUtY29udHJvbC10eXBlJztcbiJdfQ==
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsdWUtY2hhbmdlLmxpc3RlbmVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWZvcm1lbnRyeS9zcmMvYWJzdHJhY3QtY29udHJvbHMtZXh0ZW5zaW9uL3ZhbHVlLWNoYW5nZS5saXN0ZW5lci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBWYWx1ZUNoYW5nZUxpc3RlbmVyIHtcbiAgYWRkVmFsdWVDaGFuZ2VMaXN0ZW5lcihmdW5jOiBhbnkpO1xuXG4gIGZpcmVWYWx1ZUNoYW5nZUxpc3RlbmVyKHZhbHVlOiBhbnkpO1xufVxuIl19
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
// import { CanHide } from '../form-entry/control-hiders-disablers/can-hide';
|
|
2
|
-
// import { CanDisable } from '../form-entry/control-hiders-disablers/can-disable';
|
|
3
|
-
export class ControlRelation {
|
|
4
|
-
constructor(control, relatedTo) {
|
|
5
|
-
this._control = control;
|
|
6
|
-
this._relatedTo = relatedTo;
|
|
7
|
-
this._registerForChangesFromRelatedControl();
|
|
8
|
-
}
|
|
9
|
-
get control() {
|
|
10
|
-
return this._control;
|
|
11
|
-
}
|
|
12
|
-
get relatedTo() {
|
|
13
|
-
return this._relatedTo;
|
|
14
|
-
}
|
|
15
|
-
get lastUpdateValue() {
|
|
16
|
-
return this._lastUpdateValue;
|
|
17
|
-
}
|
|
18
|
-
updateControlBasedOnRelation(newValue) {
|
|
19
|
-
if (newValue !== this._lastUpdateValue) {
|
|
20
|
-
this._lastUpdateValue = newValue;
|
|
21
|
-
if (this._control.updateCalculatedValue) {
|
|
22
|
-
this._control.updateCalculatedValue();
|
|
23
|
-
}
|
|
24
|
-
this._control.updateValueAndValidity();
|
|
25
|
-
if (this._control.updateHiddenState) {
|
|
26
|
-
this._control.updateHiddenState();
|
|
27
|
-
}
|
|
28
|
-
if (this._control.updateDisabledState) {
|
|
29
|
-
this._control.updateDisabledState();
|
|
30
|
-
}
|
|
31
|
-
if (this._control.updateAlert) {
|
|
32
|
-
this._control.updateAlert();
|
|
33
|
-
}
|
|
34
|
-
return true;
|
|
35
|
-
}
|
|
36
|
-
return false;
|
|
37
|
-
}
|
|
38
|
-
_registerForChangesFromRelatedControl() {
|
|
39
|
-
this._relatedTo.valueChanges.subscribe((value) => {
|
|
40
|
-
this.updateControlBasedOnRelation(value);
|
|
41
|
-
});
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJvbC1yZWxhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1mb3JtZW50cnkvc3JjL2NoYW5nZS10cmFja2luZy9jb250cm9sLXJlbGF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLDZFQUE2RTtBQUM3RSxtRkFBbUY7QUFFbkYsTUFBTSxPQUFPLGVBQWU7SUFLMUIsWUFBWSxPQUF3QixFQUFFLFNBQTBCO1FBQzlELElBQUksQ0FBQyxRQUFRLEdBQUcsT0FBTyxDQUFDO1FBQ3hCLElBQUksQ0FBQyxVQUFVLEdBQUcsU0FBUyxDQUFDO1FBQzVCLElBQUksQ0FBQyxxQ0FBcUMsRUFBRSxDQUFDO0lBQy9DLENBQUM7SUFFRCxJQUFJLE9BQU87UUFDVCxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDdkIsQ0FBQztJQUVELElBQUksU0FBUztRQUNYLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQztJQUN6QixDQUFDO0lBRUQsSUFBSSxlQUFlO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDO0lBQy9CLENBQUM7SUFFRCw0QkFBNEIsQ0FBQyxRQUFhO1FBQ3hDLElBQUksUUFBUSxLQUFLLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1lBQ3ZDLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxRQUFRLENBQUM7WUFFakMsSUFBSyxJQUFJLENBQUMsUUFBZ0IsQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO2dCQUNoRCxJQUFJLENBQUMsUUFBZ0IsQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1lBQ2pELENBQUM7WUFFRCxJQUFJLENBQUMsUUFBUSxDQUFDLHNCQUFzQixFQUFFLENBQUM7WUFDdkMsSUFBSyxJQUFJLENBQUMsUUFBZ0IsQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO2dCQUM1QyxJQUFJLENBQUMsUUFBZ0IsQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1lBQzdDLENBQUM7WUFFRCxJQUFLLElBQUksQ0FBQyxRQUFnQixDQUFDLG1CQUFtQixFQUFFLENBQUM7Z0JBQzlDLElBQUksQ0FBQyxRQUFnQixDQUFDLG1CQUFtQixFQUFFLENBQUM7WUFDL0MsQ0FBQztZQUVELElBQUssSUFBSSxDQUFDLFFBQWdCLENBQUMsV0FBVyxFQUFFLENBQUM7Z0JBQ3RDLElBQUksQ0FBQyxRQUFnQixDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ3ZDLENBQUM7WUFDRCxPQUFPLElBQUksQ0FBQztRQUNkLENBQUM7UUFDRCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFFTyxxQ0FBcUM7UUFDM0MsSUFBSSxDQUFDLFVBQVUsQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDL0MsSUFBSSxDQUFDLDRCQUE0QixDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzNDLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG4vLyBpbXBvcnQgeyBDYW5IaWRlIH0gZnJvbSAnLi4vZm9ybS1lbnRyeS9jb250cm9sLWhpZGVycy1kaXNhYmxlcnMvY2FuLWhpZGUnO1xuLy8gaW1wb3J0IHsgQ2FuRGlzYWJsZSB9IGZyb20gJy4uL2Zvcm0tZW50cnkvY29udHJvbC1oaWRlcnMtZGlzYWJsZXJzL2Nhbi1kaXNhYmxlJztcblxuZXhwb3J0IGNsYXNzIENvbnRyb2xSZWxhdGlvbiB7XG4gIHByaXZhdGUgX2NvbnRyb2w6IEFic3RyYWN0Q29udHJvbDtcbiAgcHJpdmF0ZSBfcmVsYXRlZFRvOiBBYnN0cmFjdENvbnRyb2w7XG4gIHByaXZhdGUgX2xhc3RVcGRhdGVWYWx1ZTogYW55O1xuXG4gIGNvbnN0cnVjdG9yKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCwgcmVsYXRlZFRvOiBBYnN0cmFjdENvbnRyb2wpIHtcbiAgICB0aGlzLl9jb250cm9sID0gY29udHJvbDtcbiAgICB0aGlzLl9yZWxhdGVkVG8gPSByZWxhdGVkVG87XG4gICAgdGhpcy5fcmVnaXN0ZXJGb3JDaGFuZ2VzRnJvbVJlbGF0ZWRDb250cm9sKCk7XG4gIH1cblxuICBnZXQgY29udHJvbCgpOiBBYnN0cmFjdENvbnRyb2wge1xuICAgIHJldHVybiB0aGlzLl9jb250cm9sO1xuICB9XG5cbiAgZ2V0IHJlbGF0ZWRUbygpOiBBYnN0cmFjdENvbnRyb2wge1xuICAgIHJldHVybiB0aGlzLl9yZWxhdGVkVG87XG4gIH1cblxuICBnZXQgbGFzdFVwZGF0ZVZhbHVlKCk6IGFueSB7XG4gICAgcmV0dXJuIHRoaXMuX2xhc3RVcGRhdGVWYWx1ZTtcbiAgfVxuXG4gIHVwZGF0ZUNvbnRyb2xCYXNlZE9uUmVsYXRpb24obmV3VmFsdWU6IGFueSk6IGJvb2xlYW4ge1xuICAgIGlmIChuZXdWYWx1ZSAhPT0gdGhpcy5fbGFzdFVwZGF0ZVZhbHVlKSB7XG4gICAgICB0aGlzLl9sYXN0VXBkYXRlVmFsdWUgPSBuZXdWYWx1ZTtcblxuICAgICAgaWYgKCh0aGlzLl9jb250cm9sIGFzIGFueSkudXBkYXRlQ2FsY3VsYXRlZFZhbHVlKSB7XG4gICAgICAgICh0aGlzLl9jb250cm9sIGFzIGFueSkudXBkYXRlQ2FsY3VsYXRlZFZhbHVlKCk7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuX2NvbnRyb2wudXBkYXRlVmFsdWVBbmRWYWxpZGl0eSgpO1xuICAgICAgaWYgKCh0aGlzLl9jb250cm9sIGFzIGFueSkudXBkYXRlSGlkZGVuU3RhdGUpIHtcbiAgICAgICAgKHRoaXMuX2NvbnRyb2wgYXMgYW55KS51cGRhdGVIaWRkZW5TdGF0ZSgpO1xuICAgICAgfVxuXG4gICAgICBpZiAoKHRoaXMuX2NvbnRyb2wgYXMgYW55KS51cGRhdGVEaXNhYmxlZFN0YXRlKSB7XG4gICAgICAgICh0aGlzLl9jb250cm9sIGFzIGFueSkudXBkYXRlRGlzYWJsZWRTdGF0ZSgpO1xuICAgICAgfVxuXG4gICAgICBpZiAoKHRoaXMuX2NvbnRyb2wgYXMgYW55KS51cGRhdGVBbGVydCkge1xuICAgICAgICAodGhpcy5fY29udHJvbCBhcyBhbnkpLnVwZGF0ZUFsZXJ0KCk7XG4gICAgICB9XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgcHJpdmF0ZSBfcmVnaXN0ZXJGb3JDaGFuZ2VzRnJvbVJlbGF0ZWRDb250cm9sKCkge1xuICAgIHRoaXMuX3JlbGF0ZWRUby52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKCh2YWx1ZSkgPT4ge1xuICAgICAgdGhpcy51cGRhdGVDb250cm9sQmFzZWRPblJlbGF0aW9uKHZhbHVlKTtcbiAgICB9KTtcbiAgfVxufVxuIl19
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import { AbstractControl } from '@angular/forms';
|
|
2
|
-
import { ControlRelation } from './control-relation';
|
|
3
|
-
export class ControlRelations {
|
|
4
|
-
constructor(relationFor, relatedTo) {
|
|
5
|
-
this._otherRelations = [];
|
|
6
|
-
this._relationFor = relationFor;
|
|
7
|
-
this._relations = [];
|
|
8
|
-
if (relatedTo) {
|
|
9
|
-
this.addRelatedControls(relatedTo);
|
|
10
|
-
}
|
|
11
|
-
}
|
|
12
|
-
get relationsFor() {
|
|
13
|
-
return this._relationFor;
|
|
14
|
-
}
|
|
15
|
-
get relations() {
|
|
16
|
-
return this._relations;
|
|
17
|
-
}
|
|
18
|
-
get otherRelations() {
|
|
19
|
-
return this._otherRelations;
|
|
20
|
-
}
|
|
21
|
-
addRelatedControls(relatedTo) {
|
|
22
|
-
if (relatedTo instanceof AbstractControl) {
|
|
23
|
-
this.relations.push(new ControlRelation(this._relationFor, relatedTo));
|
|
24
|
-
}
|
|
25
|
-
if (relatedTo instanceof Array) {
|
|
26
|
-
for (let i = 0; i < relatedTo.length; i++) {
|
|
27
|
-
this.relations.push(new ControlRelation(this._relationFor, relatedTo[i]));
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJvbC1yZWxhdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtZm9ybWVudHJ5L3NyYy9jaGFuZ2UtdHJhY2tpbmcvY29udHJvbC1yZWxhdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRWpELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUVyRCxNQUFNLE9BQU8sZ0JBQWdCO0lBSzNCLFlBQ0UsV0FBNEIsRUFDNUIsU0FBK0M7UUFKekMsb0JBQWUsR0FBUSxFQUFFLENBQUM7UUFNaEMsSUFBSSxDQUFDLFlBQVksR0FBRyxXQUFXLENBQUM7UUFDaEMsSUFBSSxDQUFDLFVBQVUsR0FBRyxFQUFFLENBQUM7UUFFckIsSUFBSSxTQUFTLEVBQUUsQ0FBQztZQUNkLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUNyQyxDQUFDO0lBQ0gsQ0FBQztJQUVELElBQUksWUFBWTtRQUNkLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQztJQUMzQixDQUFDO0lBRUQsSUFBSSxTQUFTO1FBQ1gsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDO0lBQ3pCLENBQUM7SUFFRCxJQUFJLGNBQWM7UUFDaEIsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDO0lBQzlCLENBQUM7SUFFRCxrQkFBa0IsQ0FBQyxTQUE4QztRQUMvRCxJQUFJLFNBQVMsWUFBWSxlQUFlLEVBQUUsQ0FBQztZQUN6QyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLGVBQWUsQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLFNBQVMsQ0FBQyxDQUFDLENBQUM7UUFDekUsQ0FBQztRQUVELElBQUksU0FBUyxZQUFZLEtBQUssRUFBRSxDQUFDO1lBQy9CLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxTQUFTLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUM7Z0JBQzFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUNqQixJQUFJLGVBQWUsQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUNyRCxDQUFDO1lBQ0osQ0FBQztRQUNILENBQUM7SUFDSCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7IENvbnRyb2xSZWxhdGlvbiB9IGZyb20gJy4vY29udHJvbC1yZWxhdGlvbic7XG5cbmV4cG9ydCBjbGFzcyBDb250cm9sUmVsYXRpb25zIHtcbiAgcHJpdmF0ZSBfcmVsYXRpb25Gb3I6IEFic3RyYWN0Q29udHJvbDtcbiAgcHJpdmF0ZSBfcmVsYXRpb25zOiBDb250cm9sUmVsYXRpb25bXTtcbiAgcHJpdmF0ZSBfb3RoZXJSZWxhdGlvbnM6IGFueSA9IFtdO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHJlbGF0aW9uRm9yOiBBYnN0cmFjdENvbnRyb2wsXG4gICAgcmVsYXRlZFRvPzogQWJzdHJhY3RDb250cm9sIHwgQWJzdHJhY3RDb250cm9sW11cbiAgKSB7XG4gICAgdGhpcy5fcmVsYXRpb25Gb3IgPSByZWxhdGlvbkZvcjtcbiAgICB0aGlzLl9yZWxhdGlvbnMgPSBbXTtcblxuICAgIGlmIChyZWxhdGVkVG8pIHtcbiAgICAgIHRoaXMuYWRkUmVsYXRlZENvbnRyb2xzKHJlbGF0ZWRUbyk7XG4gICAgfVxuICB9XG5cbiAgZ2V0IHJlbGF0aW9uc0ZvcigpOiBBYnN0cmFjdENvbnRyb2wge1xuICAgIHJldHVybiB0aGlzLl9yZWxhdGlvbkZvcjtcbiAgfVxuXG4gIGdldCByZWxhdGlvbnMoKTogQ29udHJvbFJlbGF0aW9uW10ge1xuICAgIHJldHVybiB0aGlzLl9yZWxhdGlvbnM7XG4gIH1cblxuICBnZXQgb3RoZXJSZWxhdGlvbnMoKSB7XG4gICAgcmV0dXJuIHRoaXMuX290aGVyUmVsYXRpb25zO1xuICB9XG5cbiAgYWRkUmVsYXRlZENvbnRyb2xzKHJlbGF0ZWRUbzogQWJzdHJhY3RDb250cm9sIHwgQWJzdHJhY3RDb250cm9sW10pIHtcbiAgICBpZiAocmVsYXRlZFRvIGluc3RhbmNlb2YgQWJzdHJhY3RDb250cm9sKSB7XG4gICAgICB0aGlzLnJlbGF0aW9ucy5wdXNoKG5ldyBDb250cm9sUmVsYXRpb24odGhpcy5fcmVsYXRpb25Gb3IsIHJlbGF0ZWRUbykpO1xuICAgIH1cblxuICAgIGlmIChyZWxhdGVkVG8gaW5zdGFuY2VvZiBBcnJheSkge1xuICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCByZWxhdGVkVG8ubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgdGhpcy5yZWxhdGlvbnMucHVzaChcbiAgICAgICAgICBuZXcgQ29udHJvbFJlbGF0aW9uKHRoaXMuX3JlbGF0aW9uRm9yLCByZWxhdGVkVG9baV0pXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iXX0=
|