@mtna/web-form-angular 1.0.2-SNAPSHOT.2 → 1.0.2
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/_index.scss +1 -2
- package/bundles/mtna-web-form-angular.umd.js +1219 -539
- package/bundles/mtna-web-form-angular.umd.js.map +1 -1
- package/esm2015/lib/components/acknowledge-dialog/acknowledge-dialog.component.js +2 -2
- package/esm2015/lib/components/base-form/base-form.component.js +243 -0
- package/esm2015/lib/components/base-form/index.js +2 -0
- package/esm2015/lib/components/base-items/base-group-item.component.js +5 -5
- package/esm2015/lib/components/base-items/base-parent-value-item.component.js +3 -2
- package/esm2015/lib/components/base-items/base-section-item.component.js +6 -5
- package/esm2015/lib/components/form/form.component.js +13 -239
- package/esm2015/lib/components/form-item/form-item.component.js +2 -2
- package/esm2015/lib/components/form-item-component-provider/form-item-injected-components.js +7 -1
- package/esm2015/lib/components/form-item-dialog/form-item-dialog.component.js +6 -5
- package/esm2015/lib/components/form-item-dialog/form-item-dialog.module.js +5 -4
- package/esm2015/lib/components/form-item-impl/boolean/boolean.component.js +2 -2
- package/esm2015/lib/components/form-item-impl/checkbox/checkbox.component.js +7 -5
- package/esm2015/lib/components/form-item-impl/checkbox/checkbox.module.js +5 -1
- package/esm2015/lib/components/form-item-impl/date/date.component.js +3 -2
- package/esm2015/lib/components/form-item-impl/date-range/date-range.component.js +6 -2
- package/esm2015/lib/components/form-item-impl/dropdown/dropdown.component.js +2 -2
- package/esm2015/lib/components/form-item-impl/file-upload/file-upload.component.js +3 -2
- package/esm2015/lib/components/form-item-impl/form-group/form-group.component.js +2 -2
- package/esm2015/lib/components/form-item-impl/i18n-input/i18n-input.component.js +3 -2
- package/esm2015/lib/components/form-item-impl/input/input.component.js +3 -2
- package/esm2015/lib/components/form-item-impl/multiple-choice/multiple-choice.component.js +2 -2
- package/esm2015/lib/components/form-item-impl/repeatable-item-container/repeatable-item-container.component.js +3 -2
- package/esm2015/lib/components/form-item-impl/search/resource-search.component.js +2 -2
- package/esm2015/lib/components/form-item-impl/year-quarter/year-quarter.component.js +2 -3
- package/esm2015/lib/components/form-stepper/form-step/form-step.component.js +10 -3
- package/esm2015/lib/components/form-stepper/form-step-group/form-step-group.component.js +4 -2
- package/esm2015/lib/components/form-stepper/form-stepper/form-stepper.component.js +52 -10
- package/esm2015/lib/components/form-stepper/form-stepper.module.js +17 -5
- package/esm2015/lib/components/index.js +2 -1
- package/esm2015/lib/components/progressive-form/index.js +3 -0
- package/esm2015/lib/components/progressive-form/progressive-form/index.js +3 -0
- package/esm2015/lib/components/progressive-form/progressive-form/progressive-form.component.js +287 -0
- package/esm2015/lib/components/progressive-form/progressive-form/progressive-form.module.js +68 -0
- package/esm2015/lib/components/progressive-form/progressive-form-section/index.js +3 -0
- package/esm2015/lib/components/progressive-form/progressive-form-section/progressive-form-section.component.js +27 -0
- package/esm2015/lib/components/progressive-form/progressive-form-section/progressive-form-section.module.js +54 -0
- package/esm2015/lib/components/step-card/step-card.component.js +10 -2
- package/esm2015/lib/components/step-card/step-card.module.js +27 -4
- package/esm2015/lib/models/form-stepper/form-step-group.model.js +8 -2
- package/esm2015/lib/models/form-stepper/form-step.model.js +7 -1
- package/esm2015/lib/models/index.js +2 -1
- package/esm2015/lib/models/progressive-form/index.js +4 -0
- package/esm2015/lib/models/progressive-form/outline-step.model.js +2 -0
- package/esm2015/lib/models/progressive-form/progressive-form-section.model.js +6 -0
- package/esm2015/lib/models/progressive-form/progressive-form.model.js +6 -0
- package/esm2015/lib/pipes/child-step-active.pipe.js +28 -0
- package/esm2015/lib/pipes/coerce-form-step-group.pipe.js +29 -0
- package/esm2015/lib/pipes/coerce-form-step.pipe.js +29 -0
- package/esm2015/lib/pipes/date-quarter.pipe.js +13 -13
- package/esm2015/lib/pipes/get-active-form-step-item.pipe.js +33 -0
- package/esm2015/lib/pipes/get-progressive-form-item.pipe.js +40 -0
- package/esm2015/lib/pipes/get-selected-option.pipe.js +4 -3
- package/esm2015/lib/pipes/get-step-aria-label.pipe.js +55 -0
- package/esm2015/lib/pipes/index.js +7 -1
- package/esm2015/lib/pipes/items-with-value.pipe.js +5 -10
- package/esm2015/lib/services/dialog.service.js +4 -3
- package/esm2015/lib/services/form-manager.service.js +19 -7
- package/esm2015/lib/services/ng-form.service.js +7 -1
- package/esm2015/lib/services/ui.service.js +15 -15
- package/esm2015/lib/utilities/generate-form-steps.js +20 -5
- package/esm2015/lib/utilities/serializer-util.js +12 -5
- package/esm2015/lib/utilities/update-step-status.js +1 -1
- package/esm2015/public-api.js +1 -2
- package/fesm2015/mtna-web-form-angular.js +962 -364
- package/fesm2015/mtna-web-form-angular.js.map +1 -1
- package/lib/components/base-form/base-form.component.d.ts +89 -0
- package/lib/components/base-form/index.d.ts +1 -0
- package/lib/components/base-items/base-group-item.component.d.ts +2 -0
- package/lib/components/base-items/base-section-item.component.d.ts +2 -1
- package/lib/components/form/form.component.d.ts +4 -86
- package/lib/components/form-item-dialog/form-item-dialog.module.d.ts +2 -1
- package/lib/components/form-item-impl/checkbox/_checkbox-theme.scss +11 -2
- package/lib/components/form-item-impl/checkbox/checkbox.component.d.ts +1 -0
- package/lib/components/form-item-impl/checkbox/checkbox.module.d.ts +11 -10
- package/lib/components/form-item-impl/date/date.component.d.ts +1 -0
- package/lib/components/form-item-impl/date-range/date-range.component.d.ts +1 -0
- package/lib/components/form-item-impl/dropdown/_dropdown-theme.scss +35 -0
- package/lib/components/form-item-impl/file-upload/file-upload.component.d.ts +1 -0
- package/lib/components/form-item-impl/i18n-input/i18n-input.component.d.ts +1 -0
- package/lib/components/form-item-impl/input/input.component.d.ts +1 -0
- package/lib/components/form-item-impl/repeatable-item-container/repeatable-item-container.component.d.ts +1 -0
- package/lib/components/form-stepper/form-step/form-step.component.d.ts +7 -0
- package/lib/components/form-stepper/form-step-group/form-step-group.component.d.ts +2 -0
- package/lib/components/form-stepper/form-stepper/_form-stepper-theme.scss +30 -15
- package/lib/components/form-stepper/form-stepper/form-stepper.component.d.ts +15 -1
- package/lib/components/form-stepper/form-stepper.module.d.ts +5 -1
- package/lib/components/index.d.ts +1 -0
- package/lib/components/progressive-form/index.d.ts +2 -0
- package/lib/components/progressive-form/progressive-form/index.d.ts +2 -0
- package/lib/components/progressive-form/progressive-form/progressive-form.component.d.ts +101 -0
- package/lib/components/progressive-form/progressive-form/progressive-form.module.d.ts +19 -0
- package/lib/components/progressive-form/progressive-form-section/index.d.ts +2 -0
- package/lib/components/progressive-form/progressive-form-section/progressive-form-section.component.d.ts +9 -0
- package/lib/components/progressive-form/progressive-form-section/progressive-form-section.module.d.ts +16 -0
- package/lib/components/step-card/step-card.component.d.ts +3 -1
- package/lib/components/step-card/step-card.module.d.ts +2 -1
- package/lib/core/_all-color.scss +2 -2
- package/lib/core/_all-theme.scss +2 -2
- package/lib/core/_all-typography.scss +2 -2
- package/lib/models/form-stepper/form-step-group.model.d.ts +5 -1
- package/lib/models/form-stepper/form-step.model.d.ts +3 -0
- package/lib/models/index.d.ts +1 -0
- package/lib/models/progressive-form/index.d.ts +3 -0
- package/lib/models/progressive-form/outline-step.model.d.ts +7 -0
- package/lib/models/progressive-form/progressive-form-section.model.d.ts +4 -0
- package/lib/models/progressive-form/progressive-form.model.d.ts +7 -0
- package/lib/pipes/child-step-active.pipe.d.ts +13 -0
- package/lib/pipes/coerce-form-step-group.pipe.d.ts +13 -0
- package/lib/pipes/coerce-form-step.pipe.d.ts +13 -0
- package/lib/pipes/get-active-form-step-item.pipe.d.ts +13 -0
- package/lib/pipes/get-progressive-form-item.pipe.d.ts +14 -0
- package/lib/pipes/get-step-aria-label.pipe.d.ts +17 -0
- package/lib/pipes/index.d.ts +6 -0
- package/lib/pipes/items-with-value.pipe.d.ts +0 -1
- package/lib/services/dialog.service.d.ts +1 -0
- package/lib/services/form-manager.service.d.ts +13 -4
- package/lib/services/ng-form.service.d.ts +6 -0
- package/lib/utilities/generate-form-steps.d.ts +5 -1
- package/lib/utilities/update-step-status.d.ts +2 -2
- package/package.json +1 -1
- package/public-api.d.ts +0 -1
- package/esm2015/lib/directives/base-form-item-control.directive.js +0 -58
- package/esm2015/lib/directives/base-parent-item-control.directive.js +0 -42
- package/esm2015/lib/directives/base-single-selection-parent.directive.js +0 -53
- package/esm2015/lib/directives/form-item.directive.js +0 -22
- package/esm2015/lib/directives/index.js +0 -5
- package/lib/directives/base-form-item-control.directive.d.ts +0 -26
- package/lib/directives/base-parent-item-control.directive.d.ts +0 -19
- package/lib/directives/base-single-selection-parent.directive.d.ts +0 -26
- package/lib/directives/form-item.directive.d.ts +0 -13
- package/lib/directives/index.d.ts +0 -4
|
@@ -16,7 +16,7 @@ export class MtnaWfAcknowledgeDialogComponent {
|
|
|
16
16
|
}
|
|
17
17
|
}
|
|
18
18
|
MtnaWfAcknowledgeDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MtnaWfAcknowledgeDialogComponent, deps: [{ token: MAT_DIALOG_DATA }, { token: i1.MatDialogRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
19
|
-
MtnaWfAcknowledgeDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: MtnaWfAcknowledgeDialogComponent, selector: "mtna-wf-acknowledge-dialog", ngImport: i0, template: "<h2 *ngIf=\"data.title as title\" mat-dialog-title>{{ title }}</h2>\n<mat-dialog-content>\n <mtna-wf-item *ngFor=\"let item of data.formItems\" [item]=\"item\" [readonly]=\"true\"></mtna-wf-item>\n</mat-dialog-content>\n<mat-dialog-actions align=\"end\">\n <button [mat-dialog-close]=\"false\" mat-button>CANCEL</button>\n <button [mat-dialog-close]=\"true\" color=\"accent\" mat-raised-button>ACKNOWLEDGE</button>\n</mat-dialog-actions>\n", components: [{ type: i2.MtnaWfFormItemComponent, selector: "mtna-wf-item", inputs: ["color", "control", "header", "inList", "item", "parentIds", "readonly", "step"], outputs: ["focusedSection"] }, { type: i3.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { type: i1.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i1.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]" }, { type: i1.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["type", "mat-dialog-close", "aria-label", "matDialogClose"], exportAs: ["matDialogClose"] }] });
|
|
19
|
+
MtnaWfAcknowledgeDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: MtnaWfAcknowledgeDialogComponent, selector: "mtna-wf-acknowledge-dialog", ngImport: i0, template: "<h2 *ngIf=\"data.title as title\" mat-dialog-title>{{ title }}</h2>\n<mat-dialog-content>\n <mtna-wf-item *ngFor=\"let item of data.formItems\" [item]=\"item\" [readonly]=\"true\"></mtna-wf-item>\n</mat-dialog-content>\n<mat-dialog-actions align=\"end\">\n <button [mat-dialog-close]=\"false\" mat-button i18n>CANCEL</button>\n <button [mat-dialog-close]=\"true\" color=\"accent\" mat-raised-button i18n>ACKNOWLEDGE</button>\n</mat-dialog-actions>\n", components: [{ type: i2.MtnaWfFormItemComponent, selector: "mtna-wf-item", inputs: ["color", "control", "header", "inList", "item", "parentIds", "readonly", "step"], outputs: ["focusedSection"] }, { type: i3.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { type: i1.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i1.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]" }, { type: i1.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["type", "mat-dialog-close", "aria-label", "matDialogClose"], exportAs: ["matDialogClose"] }] });
|
|
20
20
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MtnaWfAcknowledgeDialogComponent, decorators: [{
|
|
21
21
|
type: Component,
|
|
22
22
|
args: [{
|
|
@@ -27,4 +27,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
27
27
|
type: Inject,
|
|
28
28
|
args: [MAT_DIALOG_DATA]
|
|
29
29
|
}] }, { type: i1.MatDialogRef }]; } });
|
|
30
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
30
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNrbm93bGVkZ2UtZGlhbG9nLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3dlYi1mb3JtLWFuZ3VsYXIvc3JjL2xpYi9jb21wb25lbnRzL2Fja25vd2xlZGdlLWRpYWxvZy9hY2tub3dsZWRnZS1kaWFsb2cuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvd2ViLWZvcm0tYW5ndWxhci9zcmMvbGliL2NvbXBvbmVudHMvYWNrbm93bGVkZ2UtZGlhbG9nL2Fja25vd2xlZGdlLWRpYWxvZy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsRCxPQUFPLEVBQUUsZUFBZSxFQUFnQixNQUFNLDBCQUEwQixDQUFDOzs7Ozs7O0FBSXpFOztHQUVHO0FBS0gsTUFBTSxPQUFPLGdDQUFnQztJQUMzQyxZQUNrQyxJQUE4QixFQUN2RCxTQUFrRTtRQUR6QyxTQUFJLEdBQUosSUFBSSxDQUEwQjtRQUN2RCxjQUFTLEdBQVQsU0FBUyxDQUF5RDtJQUN4RSxDQUFDOzs4SEFKTyxnQ0FBZ0Msa0JBRWpDLGVBQWU7a0hBRmQsZ0NBQWdDLGtFQ1o3QyxzY0FRQTs0RkRJYSxnQ0FBZ0M7a0JBSjVDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLDRCQUE0QjtvQkFDdEMsV0FBVyxFQUFFLHFDQUFxQztpQkFDbkQ7OzBCQUdJLE1BQU07MkJBQUMsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNQVRfRElBTE9HX0RBVEEsIE1hdERpYWxvZ1JlZiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5cbmltcG9ydCB7IE10bmFXZkZvcm1JdGVtRGlhbG9nRGF0YSB9IGZyb20gJy4uLy4uL21vZGVscy9mb3JtLWl0ZW0tZGlhbG9nLWRhdGEubW9kZWwnO1xuXG4vKipcbiAqIEEgZGlhbG9nIHRoYXQgcmVuZGVycyBhIGZvcm0gaXRlbSB0aGF0IHJlcHJlc2VudHMgc29tZXRoaW5nIHRoZSB1c2VyIG5lZWRzIHRvIGFja25vd2xlZGdlLlxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdtdG5hLXdmLWFja25vd2xlZGdlLWRpYWxvZycsXG4gIHRlbXBsYXRlVXJsOiAnLi9hY2tub3dsZWRnZS1kaWFsb2cuY29tcG9uZW50Lmh0bWwnLFxufSlcbmV4cG9ydCBjbGFzcyBNdG5hV2ZBY2tub3dsZWRnZURpYWxvZ0NvbXBvbmVudCB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIEBJbmplY3QoTUFUX0RJQUxPR19EQVRBKSBwdWJsaWMgZGF0YTogTXRuYVdmRm9ybUl0ZW1EaWFsb2dEYXRhLFxuICAgIHB1YmxpYyBkaWFsb2dSZWY6IE1hdERpYWxvZ1JlZjxNdG5hV2ZBY2tub3dsZWRnZURpYWxvZ0NvbXBvbmVudCwgYm9vbGVhbj5cbiAgKSB7fVxufVxuIiwiPGgyICpuZ0lmPVwiZGF0YS50aXRsZSBhcyB0aXRsZVwiIG1hdC1kaWFsb2ctdGl0bGU+e3sgdGl0bGUgfX08L2gyPlxuPG1hdC1kaWFsb2ctY29udGVudD5cbiAgPG10bmEtd2YtaXRlbSAqbmdGb3I9XCJsZXQgaXRlbSBvZiBkYXRhLmZvcm1JdGVtc1wiIFtpdGVtXT1cIml0ZW1cIiBbcmVhZG9ubHldPVwidHJ1ZVwiPjwvbXRuYS13Zi1pdGVtPlxuPC9tYXQtZGlhbG9nLWNvbnRlbnQ+XG48bWF0LWRpYWxvZy1hY3Rpb25zIGFsaWduPVwiZW5kXCI+XG4gIDxidXR0b24gW21hdC1kaWFsb2ctY2xvc2VdPVwiZmFsc2VcIiBtYXQtYnV0dG9uIGkxOG4+Q0FOQ0VMPC9idXR0b24+XG4gIDxidXR0b24gW21hdC1kaWFsb2ctY2xvc2VdPVwidHJ1ZVwiIGNvbG9yPVwiYWNjZW50XCIgbWF0LXJhaXNlZC1idXR0b24gaTE4bj5BQ0tOT1dMRURHRTwvYnV0dG9uPlxuPC9tYXQtZGlhbG9nLWFjdGlvbnM+XG4iXX0=
|
|
@@ -0,0 +1,243 @@
|
|
|
1
|
+
import { coerceBooleanProperty } from '@angular/cdk/coercion';
|
|
2
|
+
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
3
|
+
import { mixinDestroyNotifier } from '@mtna/core-angular';
|
|
4
|
+
import { BehaviorSubject, Subscription } from 'rxjs';
|
|
5
|
+
import { distinctUntilChanged, skipWhile, takeUntil } from 'rxjs/operators';
|
|
6
|
+
import { findFormControl } from '../../utilities';
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
import * as i1 from "../../services";
|
|
9
|
+
const _BaseFormComponent = mixinDestroyNotifier(class {
|
|
10
|
+
});
|
|
11
|
+
export class MtnaWfBaseFormComponent extends _BaseFormComponent {
|
|
12
|
+
constructor(mtnaFormManager, ngFormService, uiService) {
|
|
13
|
+
super();
|
|
14
|
+
this.mtnaFormManager = mtnaFormManager;
|
|
15
|
+
this.ngFormService = ngFormService;
|
|
16
|
+
this.uiService = uiService;
|
|
17
|
+
this._emitStatusOnMtnaFormChange = false;
|
|
18
|
+
this.readonly$ = new BehaviorSubject(true);
|
|
19
|
+
/**
|
|
20
|
+
* Emitted every time a form control's validation status changes.
|
|
21
|
+
* The `id` is the form control's name and the `status` is the new validation status for the control.
|
|
22
|
+
*/
|
|
23
|
+
this.status = new EventEmitter();
|
|
24
|
+
this.focusedSection = new EventEmitter();
|
|
25
|
+
this.mtnaFormChange = new EventEmitter();
|
|
26
|
+
this.componentIds = [];
|
|
27
|
+
this._hasPreviousForm = false;
|
|
28
|
+
this._initialStatusEmitted = false;
|
|
29
|
+
this._constructionDate = new Date();
|
|
30
|
+
// Initialize the subscription to observe input changes
|
|
31
|
+
this._subscribeAndEmitMtnaFormChanges();
|
|
32
|
+
}
|
|
33
|
+
set annotations(map) {
|
|
34
|
+
this.uiService.registerAnnotations(map);
|
|
35
|
+
}
|
|
36
|
+
/** Whether to emit the status of each step each time the {@link mtnaForm} is set to a new value. Defaults to false.*/
|
|
37
|
+
get emitStatusOnMtnaFormChange() {
|
|
38
|
+
return this._emitStatusOnMtnaFormChange;
|
|
39
|
+
}
|
|
40
|
+
set emitStatusOnMtnaFormChange(emitStatusOnMtnaFormChange) {
|
|
41
|
+
this._emitStatusOnMtnaFormChange = coerceBooleanProperty(emitStatusOnMtnaFormChange);
|
|
42
|
+
}
|
|
43
|
+
get mtnaForm() {
|
|
44
|
+
return this._mtnaForm;
|
|
45
|
+
}
|
|
46
|
+
set mtnaForm(form) {
|
|
47
|
+
if (!!form && !this.ngForm) {
|
|
48
|
+
// serialize the form when input is set the first time
|
|
49
|
+
this._handleFormSerialization(form);
|
|
50
|
+
this._checkAndSubscribeToFormStatus();
|
|
51
|
+
}
|
|
52
|
+
this._mtnaForm = form;
|
|
53
|
+
if (form) {
|
|
54
|
+
this.mtnaFormManager.setMtnaForm(form);
|
|
55
|
+
// If indicated, re-emit the status of each step when there is a new form
|
|
56
|
+
if (this.emitStatusOnMtnaFormChange && this.ngForm) {
|
|
57
|
+
for (const key in this._steps) {
|
|
58
|
+
if (Object.prototype.hasOwnProperty.call(this._steps, key)) {
|
|
59
|
+
this._emitFormControlStatus(key);
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* The form can contain sections not included in the steps.
|
|
67
|
+
* To avoid misalignment of steps-to-sections, we map each step to
|
|
68
|
+
* its instanceId
|
|
69
|
+
*/
|
|
70
|
+
set steps(newSteps) {
|
|
71
|
+
if (!!newSteps && !!newSteps.length) {
|
|
72
|
+
if (!this._steps) {
|
|
73
|
+
this._steps = {};
|
|
74
|
+
}
|
|
75
|
+
for (const step of newSteps) {
|
|
76
|
+
this._steps[step.instanceId] = step;
|
|
77
|
+
}
|
|
78
|
+
this._checkAndSubscribeToFormStatus();
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
get readonly() {
|
|
82
|
+
return this.readonly$.value;
|
|
83
|
+
}
|
|
84
|
+
set readonly(r) {
|
|
85
|
+
const newValue = coerceBooleanProperty(r);
|
|
86
|
+
if (newValue !== this.readonly$.value) {
|
|
87
|
+
this.readonly$.next(r);
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
ngAfterViewInit() {
|
|
91
|
+
const afterViewInitDate = new Date();
|
|
92
|
+
const secondsToRender = (afterViewInitDate.getTime() - this._constructionDate.getTime()) / 1000;
|
|
93
|
+
console.warn('[MtnaFormComponent] afterViewInit - took ', secondsToRender, ' to render');
|
|
94
|
+
}
|
|
95
|
+
ngOnDestroy() {
|
|
96
|
+
super.ngOnDestroy();
|
|
97
|
+
this.uiService.resetComponentMap();
|
|
98
|
+
}
|
|
99
|
+
_trackByInstanceId(index, formItem) {
|
|
100
|
+
return formItem.instanceId;
|
|
101
|
+
}
|
|
102
|
+
/** Subscribe and emit form status changes for the steps. */
|
|
103
|
+
_checkAndSubscribeToFormStatus() {
|
|
104
|
+
// Only subscribe once both the steps and the angular have been initialized
|
|
105
|
+
if (this.ngForm && this._steps) {
|
|
106
|
+
// Update form status subscriptions anytime the readonly input changes
|
|
107
|
+
this.readonly$.pipe(takeUntil(this.destroyed$), distinctUntilChanged()).subscribe((readonly) => {
|
|
108
|
+
if (readonly) {
|
|
109
|
+
// Don't emit statuses while form is in readonly
|
|
110
|
+
this._unsubscribeFromNgFormChanges();
|
|
111
|
+
}
|
|
112
|
+
else if (!this._ngFormStatusChangeSub || this._ngFormStatusChangeSub.closed) {
|
|
113
|
+
// For performance, subscribe should only trigger again if the subscription didn't previously exist
|
|
114
|
+
this._emitInitialStepsStatusAndSubscribeToChanges(!this._initialStatusEmitted);
|
|
115
|
+
this._initialStatusEmitted = true;
|
|
116
|
+
}
|
|
117
|
+
});
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
/**
|
|
121
|
+
* Find a form control with the given name, then emit it's status.
|
|
122
|
+
*
|
|
123
|
+
* @param name — The unique name of the form control to find and emit the status for.
|
|
124
|
+
*/
|
|
125
|
+
_emitFormControlStatus(name) {
|
|
126
|
+
if (this.ngForm) {
|
|
127
|
+
const control = findFormControl(name, this.ngForm);
|
|
128
|
+
if (control) {
|
|
129
|
+
this.status.emit({
|
|
130
|
+
id: name,
|
|
131
|
+
status: control.status,
|
|
132
|
+
});
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
/**
|
|
137
|
+
* @param emitInitialValues Whether to emit initial step values or just listen for future changes
|
|
138
|
+
*/
|
|
139
|
+
_emitInitialStepsStatusAndSubscribeToChanges(emitInitialValues) {
|
|
140
|
+
if (this._steps && this.ngForm) {
|
|
141
|
+
this._unsubscribeFromNgFormChanges();
|
|
142
|
+
this._ngFormStatusChangeSub = new Subscription();
|
|
143
|
+
// Find the form control for each step and only subscribe to those.
|
|
144
|
+
for (const key in this._steps) {
|
|
145
|
+
if (Object.prototype.hasOwnProperty.call(this._steps, key)) {
|
|
146
|
+
const control = findFormControl(key, this.ngForm);
|
|
147
|
+
if (control) {
|
|
148
|
+
if (emitInitialValues) {
|
|
149
|
+
this.status.emit({
|
|
150
|
+
id: key,
|
|
151
|
+
// Angular introduced this status in v13, once we update, this type cast can be removed.
|
|
152
|
+
status: control.status,
|
|
153
|
+
});
|
|
154
|
+
}
|
|
155
|
+
// Subscribe to status changes of each step & emit on change
|
|
156
|
+
this._ngFormStatusChangeSub.add(control.statusChanges.pipe(takeUntil(this.destroyed$), distinctUntilChanged()).subscribe((status) => {
|
|
157
|
+
this.status.emit({ id: key, status });
|
|
158
|
+
}));
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
/**
|
|
165
|
+
* Observes input changes for readOnly, in order to handle internal change subscriptions.
|
|
166
|
+
* When the form is not readonly, we subscribe to form status & form item changes, so we can emit them.
|
|
167
|
+
* When the form is readonly, we do not want to emit any changes, so we unsubscribe.
|
|
168
|
+
*/
|
|
169
|
+
_subscribeAndEmitMtnaFormChanges() {
|
|
170
|
+
this.readonly$
|
|
171
|
+
.pipe(takeUntil(this.destroyed$),
|
|
172
|
+
// we don't want to create subscriptions until we have a form to subscribe to
|
|
173
|
+
skipWhile(() => !this.mtnaForm), distinctUntilChanged())
|
|
174
|
+
.subscribe((readonly) => {
|
|
175
|
+
if (readonly) {
|
|
176
|
+
this._unsubscribeFromMtnaFormChanges();
|
|
177
|
+
}
|
|
178
|
+
else if (!this._mtnaFormItemChangeSub || this._mtnaFormItemChangeSub.closed) {
|
|
179
|
+
// For performance, subscribe should only trigger again if one of the subscriptions didn't previously exist
|
|
180
|
+
this._subscribeToMtnaFormItemChanges();
|
|
181
|
+
}
|
|
182
|
+
});
|
|
183
|
+
}
|
|
184
|
+
_handleFormSerialization(form) {
|
|
185
|
+
// Get the registered form from the service if it exists
|
|
186
|
+
this._hasPreviousForm = this.ngFormService.hasForm();
|
|
187
|
+
if (this._hasPreviousForm) {
|
|
188
|
+
this.ngForm = this.ngFormService.getForm();
|
|
189
|
+
// FIXME this is necessary because the initial visiblity is based on the mtnaForm item's disable property
|
|
190
|
+
// If the user changes a value, goes to another tab (destroying form) and comes back, the initial values are incorrect
|
|
191
|
+
this.mtnaForm = this.mtnaFormManager.insertNewValues(form, this.ngFormService.getFormValue());
|
|
192
|
+
}
|
|
193
|
+
else {
|
|
194
|
+
this.ngForm = this.mtnaFormManager.serializeMtnaFormItem(form);
|
|
195
|
+
this.ngFormService.setForm(this.ngForm);
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
/**
|
|
199
|
+
* Adds or removes a FormItem whenever a new MtnaWfFormItemChange occurs,
|
|
200
|
+
* and emits a new MtnaForm.
|
|
201
|
+
*/
|
|
202
|
+
_subscribeToMtnaFormItemChanges() {
|
|
203
|
+
this._unsubscribeFromMtnaFormChanges();
|
|
204
|
+
this._mtnaFormItemChangeSub = this.mtnaFormManager.formChanges
|
|
205
|
+
.pipe(takeUntil(this.destroyed$), skipWhile((change) => !change))
|
|
206
|
+
.subscribe((newForm) => this.mtnaFormChange.emit(newForm));
|
|
207
|
+
}
|
|
208
|
+
_unsubscribeFromNgFormChanges() {
|
|
209
|
+
if (!!this._ngFormStatusChangeSub && !this._ngFormStatusChangeSub.closed) {
|
|
210
|
+
this._ngFormStatusChangeSub.unsubscribe();
|
|
211
|
+
}
|
|
212
|
+
}
|
|
213
|
+
_unsubscribeFromMtnaFormChanges() {
|
|
214
|
+
if (!!this._mtnaFormItemChangeSub && !this._mtnaFormItemChangeSub.closed) {
|
|
215
|
+
this._mtnaFormItemChangeSub.unsubscribe();
|
|
216
|
+
}
|
|
217
|
+
}
|
|
218
|
+
}
|
|
219
|
+
MtnaWfBaseFormComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MtnaWfBaseFormComponent, deps: [{ token: i1.MtnaWfManagerService }, { token: i1.MtnaWfNgFormService }, { token: i1.MtnaWfUIService }], target: i0.ɵɵFactoryTarget.Component });
|
|
220
|
+
MtnaWfBaseFormComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: MtnaWfBaseFormComponent, selector: "ng-component", inputs: { annotations: "annotations", emitStatusOnMtnaFormChange: "emitStatusOnMtnaFormChange", mtnaForm: "mtnaForm", steps: "steps", readonly: "readonly" }, outputs: { status: "status", focusedSection: "focusedSection", mtnaFormChange: "mtnaFormChange" }, usesInheritance: true, ngImport: i0, template: ``, isInline: true });
|
|
221
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MtnaWfBaseFormComponent, decorators: [{
|
|
222
|
+
type: Component,
|
|
223
|
+
args: [{
|
|
224
|
+
template: ``,
|
|
225
|
+
}]
|
|
226
|
+
}], ctorParameters: function () { return [{ type: i1.MtnaWfManagerService }, { type: i1.MtnaWfNgFormService }, { type: i1.MtnaWfUIService }]; }, propDecorators: { annotations: [{
|
|
227
|
+
type: Input
|
|
228
|
+
}], emitStatusOnMtnaFormChange: [{
|
|
229
|
+
type: Input
|
|
230
|
+
}], mtnaForm: [{
|
|
231
|
+
type: Input
|
|
232
|
+
}], steps: [{
|
|
233
|
+
type: Input
|
|
234
|
+
}], readonly: [{
|
|
235
|
+
type: Input
|
|
236
|
+
}], status: [{
|
|
237
|
+
type: Output
|
|
238
|
+
}], focusedSection: [{
|
|
239
|
+
type: Output
|
|
240
|
+
}], mtnaFormChange: [{
|
|
241
|
+
type: Output
|
|
242
|
+
}] } });
|
|
243
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1mb3JtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3dlYi1mb3JtLWFuZ3VsYXIvc3JjL2xpYi9jb21wb25lbnRzL2Jhc2UtZm9ybS9iYXNlLWZvcm0uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBZ0IscUJBQXFCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM1RSxPQUFPLEVBQWlCLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFhLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVqRyxPQUFPLEVBQW9CLG9CQUFvQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFHNUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxZQUFZLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDckQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUk1RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0saUJBQWlCLENBQUM7OztBQUVsRCxNQUFNLGtCQUFrQixHQUFHLG9CQUFvQixDQUFDO0NBQVEsQ0FBQyxDQUFDO0FBSzFELE1BQU0sT0FBTyx1QkFDWCxTQUFRLGtCQUFrQjtJQStGMUIsWUFDWSxlQUFxQyxFQUNyQyxhQUFrQyxFQUNsQyxTQUEwQjtRQUVwQyxLQUFLLEVBQUUsQ0FBQztRQUpFLG9CQUFlLEdBQWYsZUFBZSxDQUFzQjtRQUNyQyxrQkFBYSxHQUFiLGFBQWEsQ0FBcUI7UUFDbEMsY0FBUyxHQUFULFNBQVMsQ0FBaUI7UUEvRTlCLGdDQUEyQixHQUFHLEtBQUssQ0FBQztRQXdEcEMsY0FBUyxHQUFHLElBQUksZUFBZSxDQUFVLElBQUksQ0FBQyxDQUFDO1FBRXZEOzs7V0FHRztRQUNPLFdBQU0sR0FBRyxJQUFJLFlBQVksRUFBNkMsQ0FBQztRQUN2RSxtQkFBYyxHQUFHLElBQUksWUFB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O2lCQUNiOzJLQVNLLFdBQVc7c0JBRGQsS0FBSztnQkFPRiwwQkFBMEI7c0JBRDdCLEtBQUs7Z0JBVUYsUUFBUTtzQkFEWCxLQUFLO2dCQWdDRixLQUFLO3NCQURSLEtBQUs7Z0JBY0YsUUFBUTtzQkFEWCxLQUFLO2dCQWdCSSxNQUFNO3NCQUFmLE1BQU07Z0JBQ0csY0FBYztzQkFBdkIsTUFBTTtnQkFDRyxjQUFjO3NCQUF2QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQm9vbGVhbklucHV0LCBjb2VyY2VCb29sZWFuUHJvcGVydHkgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nO1xuaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkRlc3Ryb3ksIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQ2FuRGVzdHJveU5vdGlmeSwgbWl4aW5EZXN0cm95Tm90aWZpZXIgfSBmcm9tICdAbXRuYS9jb3JlLWFuZ3VsYXInO1xuaW1wb3J0IHsgQW5ub3RhdGFibGVOdW1iZXJNYXAgfSBmcm9tICdAbXRuYS9wb2pvLXNvY2lhbC1hbmd1bGFyJztcbmltcG9ydCB7IEZvcm0sIEZvcm1Db250cm9sU3RhdHVzLCBGb3JtSXRlbSB9IGZyb20gJ0BtdG5hL3dlYi1mb3JtLXRzJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgc2tpcFdoaWxlLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IEZvcm1TdGVwIH0gZnJvbSAnLi4vLi4vbW9kZWxzJztcbmltcG9ydCB7IE10bmFXZk1hbmFnZXJTZXJ2aWNlLCBNdG5hV2ZOZ0Zvcm1TZXJ2aWNlLCBNdG5hV2ZVSVNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcyc7XG5pbXBvcnQgeyBmaW5kRm9ybUNvbnRyb2wgfSBmcm9tICcuLi8uLi91dGlsaXRpZXMnO1xuXG5jb25zdCBfQmFzZUZvcm1Db21wb25lbnQgPSBtaXhpbkRlc3Ryb3lOb3RpZmllcihjbGFzcyB7fSk7XG5cbkBDb21wb25lbnQoe1xuICB0ZW1wbGF0ZTogYGAsXG59KVxuZXhwb3J0IGNsYXNzIE10bmFXZkJhc2VGb3JtQ29tcG9uZW50PEYgZXh0ZW5kcyBGb3JtID0gRm9ybT5cbiAgZXh0ZW5kcyBfQmFzZUZvcm1Db21wb25lbnRcbiAgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBDYW5EZXN0cm95Tm90aWZ5LCBPbkRlc3Ryb3lcbntcbiAgc3RhdGljIG5nQWNjZXB0SW5wdXRUeXBlX2VtaXRTdGF0dXNPbk10bmFGb3JtQ2hhbmdlOiBCb29sZWFuSW5wdXQ7XG4gIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZXNfcmVhZG9ubHk6IEJvb2xlYW5JbnB1dDtcblxuICBASW5wdXQoKVxuICBzZXQgYW5ub3RhdGlvbnMobWFwOiBBbm5vdGF0YWJsZU51bWJlck1hcCkge1xuICAgIHRoaXMudWlTZXJ2aWNlLnJlZ2lzdGVyQW5ub3RhdGlvbnMobWFwKTtcbiAgfVxuXG4gIC8qKiBXaGV0aGVyIHRvIGVtaXQgdGhlIHN0YXR1cyBvZiBlYWNoIHN0ZXAgZWFjaCB0aW1lIHRoZSB7QGxpbmsgbXRuYUZvcm19IGlzIHNldCB0byBhIG5ldyB2YWx1ZS4gRGVmYXVsdHMgdG8gZmFsc2UuKi9cbiAgQElucHV0KClcbiAgZ2V0IGVtaXRTdGF0dXNPbk10bmFGb3JtQ2hhbmdlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9lbWl0U3RhdHVzT25NdG5hRm9ybUNoYW5nZTtcbiAgfVxuICBzZXQgZW1pdFN0YXR1c09uTXRuYUZvcm1DaGFuZ2UoZW1pdFN0YXR1c09uTXRuYUZvcm1DaGFuZ2U6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9lbWl0U3RhdHVzT25NdG5hRm9ybUNoYW5nZSA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eShlbWl0U3RhdHVzT25NdG5hRm9ybUNoYW5nZSk7XG4gIH1cbiAgcHJpdmF0ZSBfZW1pdFN0YXR1c09uTXRuYUZvcm1DaGFuZ2UgPSBmYWxzZTtcblxuICBASW5wdXQoKVxuICBnZXQgbXRuYUZvcm0oKTogRiB8IG51bGwgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLl9tdG5hRm9ybTtcbiAgfVxuICBzZXQgbXRuYUZvcm0oZm9ybTogRiB8IG51bGwgfCB1bmRlZmluZWQpIHtcbiAgICBpZiAoISFmb3JtICYmICF0aGlzLm5nRm9ybSkge1xuICAgICAgLy8gc2VyaWFsaXplIHRoZSBmb3JtIHdoZW4gaW5wdXQgaXMgc2V0IHRoZSBmaXJzdCB0aW1lXG4gICAgICB0aGlzLl9oYW5kbGVGb3JtU2VyaWFsaXphdGlvbihmb3JtKTtcbiAgICAgIHRoaXMuX2NoZWNrQW5kU3Vic2NyaWJlVG9Gb3JtU3RhdHVzKCk7XG4gICAgfVxuICAgIHRoaXMuX210bmFGb3JtID0gZm9ybTtcbiAgICBpZiAoZm9ybSkge1xuICAgICAgdGhpcy5tdG5hRm9ybU1hbmFnZXIuc2V0TXRuYUZvcm0oZm9ybSk7XG5cbiAgICAgIC8vIElmIGluZGljYXRlZCwgcmUtZW1pdCB0aGUgc3RhdHVzIG9mIGVhY2ggc3RlcCB3aGVuIHRoZXJlIGlzIGEgbmV3IGZvcm1cbiAgICAgIGlmICh0aGlzLmVtaXRTdGF0dXNPbk10bmFGb3JtQ2hhbmdlICYmIHRoaXMubmdGb3JtKSB7XG4gICAgICAgIGZvciAoY29uc3Qga2V5IGluIHRoaXMuX3N0ZXBzKSB7XG4gICAgICAgICAgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbCh0aGlzLl9zdGVwcywga2V5KSkge1xuICAgICAgICAgICAgdGhpcy5fZW1pdEZvcm1Db250cm9sU3RhdHVzKGtleSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIHByaXZhdGUgX210bmFGb3JtOiBGIHwgbnVsbCB8IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogVGhlIGZvcm0gY2FuIGNvbnRhaW4gc2VjdGlvbnMgbm90IGluY2x1ZGVkIGluIHRoZSBzdGVwcy5cbiAgICogVG8gYXZvaWQgbWlzYWxpZ25tZW50IG9mIHN0ZXBzLXRvLXNlY3Rpb25zLCB3ZSBtYXAgZWFjaCBzdGVwIHRvXG4gICAqIGl0cyBpbnN0YW5jZUlkXG4gICAqL1xuICBASW5wdXQoKVxuICBzZXQgc3RlcHMobmV3U3RlcHM6IEFycmF5PEZvcm1TdGVwPiB8IG51bGwgfCB1bmRlZmluZWQpIHtcbiAgICBpZiAoISFuZXdTdGVwcyAmJiAhIW5ld1N0ZXBzLmxlbmd0aCkge1xuICAgICAgaWYgKCF0aGlzLl9zdGVwcykge1xuICAgICAgICB0aGlzLl9zdGVwcyA9IHt9O1xuICAgICAgfVxuICAgICAgZm9yIChjb25zdCBzdGVwIG9mIG5ld1N0ZXBzKSB7XG4gICAgICAgIHRoaXMuX3N0ZXBzW3N0ZXAuaW5zdGFuY2VJZF0gPSBzdGVwO1xuICAgICAgfVxuICAgICAgdGhpcy5fY2hlY2tBbmRTdWJzY3JpYmVUb0Zvcm1TdGF0dXMoKTtcbiAgICB9XG4gIH1cblxuICBASW5wdXQoKVxuICBnZXQgcmVhZG9ubHkoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMucmVhZG9ubHkkLnZhbHVlO1xuICB9XG4gIHNldCByZWFkb25seShyOiBib29sZWFuKSB7XG4gICAgY29uc3QgbmV3VmFsdWUgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkocik7XG4gICAgaWYgKG5ld1ZhbHVlICE9PSB0aGlzLnJlYWRvbmx5JC52YWx1ZSkge1xuICAgICAgdGhpcy5yZWFkb25seSQubmV4dChyKTtcbiAgICB9XG4gIH1cbiAgcHJpdmF0ZSByZWFkb25seSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KHRydWUpO1xuXG4gIC8qKlxuICAgKiBFbWl0dGVkIGV2ZXJ5IHRpbWUgYSBmb3JtIGNvbnRyb2wncyB2YWxpZGF0aW9uIHN0YXR1cyBjaGFuZ2VzLlxuICAgKiBUaGUgYGlkYCBpcyB0aGUgZm9ybSBjb250cm9sJ3MgbmFtZSBhbmQgdGhlIGBzdGF0dXNgIGlzIHRoZSBuZXcgdmFsaWRhdGlvbiBzdGF0dXMgZm9yIHRoZSBjb250cm9sLlxuICAgKi9cbiAgQE91dHB1dCgpIHN0YXR1cyA9IG5ldyBFdmVudEVtaXR0ZXI8eyBpZDogc3RyaW5nOyBzdGF0dXM6IEZvcm1Db250cm9sU3RhdHVzIH0+KCk7XG4gIEBPdXRwdXQoKSBmb2N1c2VkU2VjdGlvbiA9IG5ldyBFdmVudEVtaXR0ZXI8Rm9ybVN0ZXA+KCk7XG4gIEBPdXRwdXQoKSBtdG5hRm9ybUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8Rj4oKTtcblxuICBuZ0Zvcm06IEZvcm1Hcm91cCB8IHVuZGVmaW5lZDtcbiAgY29tcG9uZW50SWRzID0gW107XG4gIF9zdGVwczogeyBbaWQ6IHN0cmluZ106IEZvcm1TdGVwIH0gfCB1bmRlZmluZWQ7XG5cbiAgcHJpdmF0ZSBfY29uc3RydWN0aW9uRGF0ZTogRGF0ZTtcbiAgcHJpdmF0ZSBfaGFzUHJldmlvdXNGb3JtID0gZmFsc2U7XG4gIHByaXZhdGUgX25nRm9ybVN0YXR1c0NoYW5nZVN1Yj86IFN1YnNjcmlwdGlvbjtcbiAgcHJpdmF0ZSBfbXRuYUZvcm1JdGVtQ2hhbmdlU3ViPzogU3Vic2NyaXB0aW9uO1xuICBwcml2YXRlIF9pbml0aWFsU3RhdHVzRW1pdHRlZCA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByb3RlY3RlZCBtdG5hRm9ybU1hbmFnZXI6IE10bmFXZk1hbmFnZXJTZXJ2aWNlLFxuICAgIHByb3RlY3RlZCBuZ0Zvcm1TZXJ2aWNlOiBNdG5hV2ZOZ0Zvcm1TZXJ2aWNlLFxuICAgIHByb3RlY3RlZCB1aVNlcnZpY2U6IE10bmFXZlVJU2VydmljZVxuICApIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMuX2NvbnN0cnVjdGlvbkRhdGUgPSBuZXcgRGF0ZSgpO1xuICAgIC8vIEluaXRpYWxpemUgdGhlIHN1YnNjcmlwdGlvbiB0byBvYnNlcnZlIGlucHV0IGNoYW5nZXNcbiAgICB0aGlzLl9zdWJzY3JpYmVBbmRFbWl0TXRuYUZvcm1DaGFuZ2VzKCk7XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgY29uc3QgYWZ0ZXJWaWV3SW5pdERhdGUgPSBuZXcgRGF0ZSgpO1xuICAgIGNvbnN0IHNlY29uZHNUb1JlbmRlciA9IChhZnRlclZpZXdJbml0RGF0ZS5nZXRUaW1lKCkgLSB0aGlzLl9jb25zdHJ1Y3Rpb25EYXRlLmdldFRpbWUoKSkgLyAxMDAwO1xuICAgIGNvbnNvbGUud2FybignW010bmFGb3JtQ29tcG9uZW50XSBhZnRlclZpZXdJbml0IC0gdG9vayAnLCBzZWNvbmRzVG9SZW5kZXIsICcgdG8gcmVuZGVyJyk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICBzdXBlci5uZ09uRGVzdHJveSgpO1xuICAgIHRoaXMudWlTZXJ2aWNlLnJlc2V0Q29tcG9uZW50TWFwKCk7XG4gIH1cblxuICBfdHJhY2tCeUluc3RhbmNlSWQoaW5kZXg6IG51bWJlciwgZm9ybUl0ZW06IEZvcm1JdGVtKSB7XG4gICAgcmV0dXJuIGZvcm1JdGVtLmluc3RhbmNlSWQ7XG4gIH1cblxuICAvKiogU3Vic2NyaWJlIGFuZCBlbWl0IGZvcm0gc3RhdHVzIGNoYW5nZXMgZm9yIHRoZSBzdGVwcy4gKi9cbiAgcHJpdmF0ZSBfY2hlY2tBbmRTdWJzY3JpYmVUb0Zvcm1TdGF0dXMoKSB7XG4gICAgLy8gT25seSBzdWJzY3JpYmUgb25jZSBib3RoIHRoZSBzdGVwcyBhbmQgdGhlIGFuZ3VsYXIgaGF2ZSBiZWVuIGluaXRpYWxpemVkXG4gICAgaWYgKHRoaXMubmdGb3JtICYmIHRoaXMuX3N0ZXBzKSB7XG4gICAgICAvLyBVcGRhdGUgZm9ybSBzdGF0dXMgc3Vic2NyaXB0aW9ucyBhbnl0aW1lIHRoZSByZWFkb25seSBpbnB1dCBjaGFuZ2VzXG4gICAgICB0aGlzLnJlYWRvbmx5JC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3llZCQpLCBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpKS5zdWJzY3JpYmUoKHJlYWRvbmx5KSA9PiB7XG4gICAgICAgIGlmIChyZWFkb25seSkge1xuICAgICAgICAgIC8vIERvbid0IGVtaXQgc3RhdHVzZXMgd2hpbGUgZm9ybSBpcyBpbiByZWFkb25seVxuICAgICAgICAgIHRoaXMuX3Vuc3Vic2NyaWJlRnJvbU5nRm9ybUNoYW5nZXMoKTtcbiAgICAgICAgfSBlbHNlIGlmICghdGhpcy5fbmdGb3JtU3RhdHVzQ2hhbmdlU3ViIHx8IHRoaXMuX25nRm9ybVN0YXR1c0NoYW5nZVN1Yi5jbG9zZWQpIHtcbiAgICAgICAgICAvLyBGb3IgcGVyZm9ybWFuY2UsIHN1YnNjcmliZSBzaG91bGQgb25seSB0cmlnZ2VyIGFnYWluIGlmIHRoZSBzdWJzY3JpcHRpb24gZGlkbid0IHByZXZpb3VzbHkgZXhpc3RcbiAgICAgICAgICB0aGlzLl9lbWl0SW5pdGlhbFN0ZXBzU3RhdHVzQW5kU3Vic2NyaWJlVG9DaGFuZ2VzKCF0aGlzLl9pbml0aWFsU3RhdHVzRW1pdHRlZCk7XG4gICAgICAgICAgdGhpcy5faW5pdGlhbFN0YXR1c0VtaXR0ZWQgPSB0cnVlO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogRmluZCBhIGZvcm0gY29udHJvbCB3aXRoIHRoZSBnaXZlbiBuYW1lLCB0aGVuIGVtaXQgaXQncyBzdGF0dXMuXG4gICAqXG4gICAqIEBwYXJhbSBuYW1lIOKAlCBUaGUgdW5pcXVlIG5hbWUgb2YgdGhlIGZvcm0gY29udHJvbCB0byBmaW5kIGFuZCBlbWl0IHRoZSBzdGF0dXMgZm9yLlxuICAgKi9cbiAgcHJpdmF0ZSBfZW1pdEZvcm1Db250cm9sU3RhdHVzKG5hbWU6IHN0cmluZykge1xuICAgIGlmICh0aGlzLm5nRm9ybSkge1xuICAgICAgY29uc3QgY29udHJvbCA9IGZpbmRGb3JtQ29udHJvbChuYW1lLCB0aGlzLm5nRm9ybSk7XG4gICAgICBpZiAoY29udHJvbCkge1xuICAgICAgICB0aGlzLnN0YXR1cy5lbWl0KHtcbiAgICAgICAgICBpZDogbmFtZSxcbiAgICAgICAgICBzdGF0dXM6IGNvbnRyb2wuc3RhdHVzIGFzIEZvcm1Db250cm9sU3RhdHVzLFxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQHBhcmFtIGVtaXRJbml0aWFsVmFsdWVzIFdoZXRoZXIgdG8gZW1pdCBpbml0aWFsIHN0ZXAgdmFsdWVzIG9yIGp1c3QgbGlzdGVuIGZvciBmdXR1cmUgY2hhbmdlc1xuICAgKi9cbiAgcHJpdmF0ZSBfZW1pdEluaXRpYWxTdGVwc1N0YXR1c0FuZFN1YnNjcmliZVRvQ2hhbmdlcyhlbWl0SW5pdGlhbFZhbHVlczogYm9vbGVhbikge1xuICAgIGlmICh0aGlzLl9zdGVwcyAmJiB0aGlzLm5nRm9ybSkge1xuICAgICAgdGhpcy5fdW5zdWJzY3JpYmVGcm9tTmdGb3JtQ2hhbmdlcygpO1xuICAgICAgdGhpcy5fbmdGb3JtU3RhdHVzQ2hhbmdlU3ViID0gbmV3IFN1YnNjcmlwdGlvbigpO1xuXG4gICAgICAvLyBGaW5kIHRoZSBmb3JtIGNvbnRyb2wgZm9yIGVhY2ggc3RlcCBhbmQgb25seSBzdWJzY3JpYmUgdG8gdGhvc2UuXG4gICAgICBmb3IgKGNvbnN0IGtleSBpbiB0aGlzLl9zdGVwcykge1xuICAgICAgICBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHRoaXMuX3N0ZXBzLCBrZXkpKSB7XG4gICAgICAgICAgY29uc3QgY29udHJvbCA9IGZpbmRGb3JtQ29udHJvbChrZXksIHRoaXMubmdGb3JtKTtcbiAgICAgICAgICBpZiAoY29udHJvbCkge1xuICAgICAgICAgICAgaWYgKGVtaXRJbml0aWFsVmFsdWVzKSB7XG4gICAgICAgICAgICAgIHRoaXMuc3RhdHVzLmVtaXQoe1xuICAgICAgICAgICAgICAgIGlkOiBrZXksXG4gICAgICAgICAgICAgICAgLy8gQW5ndWxhciBpbnRyb2R1Y2VkIHRoaXMgc3RhdHVzIGluIHYxMywgb25jZSB3ZSB1cGRhdGUsIHRoaXMgdHlwZSBjYXN0IGNhbiBiZSByZW1vdmVkLlxuICAgICAgICAgICAgICAgIHN0YXR1czogY29udHJvbC5zdGF0dXMgYXMgRm9ybUNvbnRyb2xTdGF0dXMsXG4gICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLy8gU3Vic2NyaWJlIHRvIHN0YXR1cyBjaGFuZ2VzIG9mIGVhY2ggc3RlcCAmIGVtaXQgb24gY2hhbmdlXG4gICAgICAgICAgICB0aGlzLl9uZ0Zvcm1TdGF0dXNDaGFuZ2VTdWIuYWRkKFxuICAgICAgICAgICAgICBjb250cm9sLnN0YXR1c0NoYW5nZXMucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95ZWQkKSwgZGlzdGluY3RVbnRpbENoYW5nZWQoKSkuc3Vic2NyaWJlKChzdGF0dXMpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnN0YXR1cy5lbWl0KHsgaWQ6IGtleSwgc3RhdHVzIH0pO1xuICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogT2JzZXJ2ZXMgaW5wdXQgY2hhbmdlcyBmb3IgcmVhZE9ubHksIGluIG9yZGVyIHRvIGhhbmRsZSBpbnRlcm5hbCBjaGFuZ2Ugc3Vic2NyaXB0aW9ucy5cbiAgICogV2hlbiB0aGUgZm9ybSBpcyBub3QgcmVhZG9ubHksIHdlIHN1YnNjcmliZSB0byBmb3JtIHN0YXR1cyAmIGZvcm0gaXRlbSBjaGFuZ2VzLCBzbyB3ZSBjYW4gZW1pdCB0aGVtLlxuICAgKiBXaGVuIHRoZSBmb3JtIGlzIHJlYWRvbmx5LCB3ZSBkbyBub3Qgd2FudCB0byBlbWl0IGFueSBjaGFuZ2VzLCBzbyB3ZSB1bnN1YnNjcmliZS5cbiAgICovXG4gIHByaXZhdGUgX3N1YnNjcmliZUFuZEVtaXRNdG5hRm9ybUNoYW5nZXMoKSB7XG4gICAgdGhpcy5yZWFkb25seSRcbiAgICAgIC5waXBlKFxuICAgICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95ZWQkKSxcbiAgICAgICAgLy8gd2UgZG9uJ3Qgd2FudCB0byBjcmVhdGUgc3Vic2NyaXB0aW9ucyB1bnRpbCB3ZSBoYXZlIGEgZm9ybSB0byBzdWJzY3JpYmUgdG9cbiAgICAgICAgc2tpcFdoaWxlKCgpID0+ICF0aGlzLm10bmFGb3JtKSxcbiAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgocmVhZG9ubHkpID0+IHtcbiAgICAgICAgaWYgKHJlYWRvbmx5KSB7XG4gICAgICAgICAgdGhpcy5fdW5zdWJzY3JpYmVGcm9tTXRuYUZvcm1DaGFuZ2VzKCk7XG4gICAgICAgIH0gZWxzZSBpZiAoIXRoaXMuX210bmFGb3JtSXRlbUNoYW5nZVN1YiB8fCB0aGlzLl9tdG5hRm9ybUl0ZW1DaGFuZ2VTdWIuY2xvc2VkKSB7XG4gICAgICAgICAgLy8gRm9yIHBlcmZvcm1hbmNlLCBzdWJzY3JpYmUgc2hvdWxkIG9ubHkgdHJpZ2dlciBhZ2FpbiBpZiBvbmUgb2YgdGhlIHN1YnNjcmlwdGlvbnMgZGlkbid0IHByZXZpb3VzbHkgZXhpc3RcbiAgICAgICAgICB0aGlzLl9zdWJzY3JpYmVUb010bmFGb3JtSXRlbUNoYW5nZXMoKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF9oYW5kbGVGb3JtU2VyaWFsaXphdGlvbihmb3JtOiBGb3JtKSB7XG4gICAgLy8gR2V0IHRoZSByZWdpc3RlcmVkIGZvcm0gZnJvbSB0aGUgc2VydmljZSBpZiBpdCBleGlzdHNcbiAgICB0aGlzLl9oYXNQcmV2aW91c0Zvcm0gPSB0aGlzLm5nRm9ybVNlcnZpY2UuaGFzRm9ybSgpO1xuICAgIGlmICh0aGlzLl9oYXNQcmV2aW91c0Zvcm0pIHtcbiAgICAgIHRoaXMubmdGb3JtID0gdGhpcy5uZ0Zvcm1TZXJ2aWNlLmdldEZvcm0oKTtcbiAgICAgIC8vIEZJWE1FIHRoaXMgaXMgbmVjZXNzYXJ5IGJlY2F1c2UgdGhlIGluaXRpYWwgdmlzaWJsaXR5IGlzIGJhc2VkIG9uIHRoZSBtdG5hRm9ybSBpdGVtJ3MgZGlzYWJsZSBwcm9wZXJ0eVxuICAgICAgLy8gSWYgdGhlIHVzZXIgY2hhbmdlcyBhIHZhbHVlLCBnb2VzIHRvIGFub3RoZXIgdGFiIChkZXN0cm95aW5nIGZvcm0pIGFuZCBjb21lcyBiYWNrLCB0aGUgaW5pdGlhbCB2YWx1ZXMgYXJlIGluY29ycmVjdFxuICAgICAgdGhpcy5tdG5hRm9ybSA9IHRoaXMubXRuYUZvcm1NYW5hZ2VyLmluc2VydE5ld1ZhbHVlcyhmb3JtLCB0aGlzLm5nRm9ybVNlcnZpY2UuZ2V0Rm9ybVZhbHVlKCkpIGFzIEY7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMubmdGb3JtID0gdGhpcy5tdG5hRm9ybU1hbmFnZXIuc2VyaWFsaXplTXRuYUZvcm1JdGVtKGZvcm0pIGFzIEZvcm1Hcm91cDtcbiAgICAgIHRoaXMubmdGb3JtU2VydmljZS5zZXRGb3JtKHRoaXMubmdGb3JtKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQWRkcyBvciByZW1vdmVzIGEgRm9ybUl0ZW0gd2hlbmV2ZXIgYSBuZXcgTXRuYVdmRm9ybUl0ZW1DaGFuZ2Ugb2NjdXJzLFxuICAgKiBhbmQgZW1pdHMgYSBuZXcgTXRuYUZvcm0uXG4gICAqL1xuICBwcml2YXRlIF9zdWJzY3JpYmVUb010bmFGb3JtSXRlbUNoYW5nZXMoKSB7XG4gICAgdGhpcy5fdW5zdWJzY3JpYmVGcm9tTXRuYUZvcm1DaGFuZ2VzKCk7XG4gICAgdGhpcy5fbXRuYUZvcm1JdGVtQ2hhbmdlU3ViID0gdGhpcy5tdG5hRm9ybU1hbmFnZXIuZm9ybUNoYW5nZXNcbiAgICAgIC5waXBlKFxuICAgICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95ZWQkKSxcbiAgICAgICAgc2tpcFdoaWxlKChjaGFuZ2UpID0+ICFjaGFuZ2UpXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKChuZXdGb3JtOiBGb3JtKSA9PiB0aGlzLm10bmFGb3JtQ2hhbmdlLmVtaXQobmV3Rm9ybSBhcyBGKSk7XG4gIH1cblxuICBwcml2YXRlIF91bnN1YnNjcmliZUZyb21OZ0Zvcm1DaGFuZ2VzKCkge1xuICAgIGlmICghIXRoaXMuX25nRm9ybVN0YXR1c0NoYW5nZVN1YiAmJiAhdGhpcy5fbmdGb3JtU3RhdHVzQ2hhbmdlU3ViLmNsb3NlZCkge1xuICAgICAgdGhpcy5fbmdGb3JtU3RhdHVzQ2hhbmdlU3ViLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfdW5zdWJzY3JpYmVGcm9tTXRuYUZvcm1DaGFuZ2VzKCkge1xuICAgIGlmICghIXRoaXMuX210bmFGb3JtSXRlbUNoYW5nZVN1YiAmJiAhdGhpcy5fbXRuYUZvcm1JdGVtQ2hhbmdlU3ViLmNsb3NlZCkge1xuICAgICAgdGhpcy5fbXRuYUZvcm1JdGVtQ2hhbmdlU3ViLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export * from './base-form.component';
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy93ZWItZm9ybS1hbmd1bGFyL3NyYy9saWIvY29tcG9uZW50cy9iYXNlLWZvcm0vaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx1QkFBdUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vYmFzZS1mb3JtLmNvbXBvbmVudCc7XG4iXX0=
|
|
@@ -3,8 +3,8 @@ import { MtnaWfBaseFormItemControl } from './base-form-item-control.component';
|
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
4
|
/* eslint-disable-next-line @angular-eslint/component-class-suffix */
|
|
5
5
|
export class MtnaWfBaseGroupItem extends MtnaWfBaseFormItemControl {
|
|
6
|
-
constructor() {
|
|
7
|
-
super(
|
|
6
|
+
constructor(cdr) {
|
|
7
|
+
super(cdr);
|
|
8
8
|
this._parentIds = new Array();
|
|
9
9
|
}
|
|
10
10
|
get parentIds() {
|
|
@@ -17,14 +17,14 @@ export class MtnaWfBaseGroupItem extends MtnaWfBaseFormItemControl {
|
|
|
17
17
|
return item.instanceId;
|
|
18
18
|
}
|
|
19
19
|
}
|
|
20
|
-
MtnaWfBaseGroupItem.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MtnaWfBaseGroupItem, deps:
|
|
20
|
+
MtnaWfBaseGroupItem.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MtnaWfBaseGroupItem, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
21
21
|
MtnaWfBaseGroupItem.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: MtnaWfBaseGroupItem, selector: "ng-component", inputs: { parentIds: "parentIds" }, usesInheritance: true, ngImport: i0, template: ``, isInline: true });
|
|
22
22
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MtnaWfBaseGroupItem, decorators: [{
|
|
23
23
|
type: Component,
|
|
24
24
|
args: [{
|
|
25
25
|
template: ``,
|
|
26
26
|
}]
|
|
27
|
-
}], propDecorators: { parentIds: [{
|
|
27
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { parentIds: [{
|
|
28
28
|
type: Input
|
|
29
29
|
}] } });
|
|
30
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
30
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1ncm91cC1pdGVtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3dlYi1mb3JtLWFuZ3VsYXIvc3JjL2xpYi9jb21wb25lbnRzL2Jhc2UtaXRlbXMvYmFzZS1ncm91cC1pdGVtLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXFCLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFJcEUsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sb0NBQW9DLENBQUM7O0FBSy9FLHFFQUFxRTtBQUNyRSxNQUFNLE9BQWdCLG1CQUE2QyxTQUFRLHlCQUF1QztJQWNoSCxZQUFZLEdBQXNCO1FBQ2hDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQVBMLGVBQVUsR0FBRyxJQUFJLEtBQUssRUFBVSxDQUFDO0lBUXpDLENBQUM7SUFmRCxJQUNJLFNBQVM7UUFDWCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUM7SUFDekIsQ0FBQztJQUNELElBQUksU0FBUyxDQUFDLEtBQW9CO1FBQ2hDLElBQUksQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDO0lBQzFCLENBQUM7SUFHRCxrQkFBa0IsQ0FBQyxLQUFhLEVBQUUsSUFBYztRQUM5QyxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUM7SUFDekIsQ0FBQzs7aUhBWm1CLG1CQUFtQjtxR0FBbkIsbUJBQW1CLCtHQUg3QixFQUFFOzRGQUdRLG1CQUFtQjtrQkFKeEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsRUFBRTtpQkFDYjt3R0FJSyxTQUFTO3NCQURaLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgRm9ybUl0ZW0sIEZvcm1JdGVtR3JvdXAgfSBmcm9tICdAbXRuYS93ZWItZm9ybS10cyc7XG5cbmltcG9ydCB7IE10bmFXZkJhc2VGb3JtSXRlbUNvbnRyb2wgfSBmcm9tICcuL2Jhc2UtZm9ybS1pdGVtLWNvbnRyb2wuY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gIHRlbXBsYXRlOiBgYCxcbn0pXG4vKiBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L2NvbXBvbmVudC1jbGFzcy1zdWZmaXggKi9cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBNdG5hV2ZCYXNlR3JvdXBJdGVtPEkgZXh0ZW5kcyBGb3JtSXRlbUdyb3VwPiBleHRlbmRzIE10bmFXZkJhc2VGb3JtSXRlbUNvbnRyb2w8SSwgRm9ybUdyb3VwPiB7XG4gIEBJbnB1dCgpXG4gIGdldCBwYXJlbnRJZHMoKTogQXJyYXk8c3RyaW5nPiB7XG4gICAgcmV0dXJuIHRoaXMuX3BhcmVudElkcztcbiAgfVxuICBzZXQgcGFyZW50SWRzKHZhbHVlOiBBcnJheTxzdHJpbmc+KSB7XG4gICAgdGhpcy5fcGFyZW50SWRzID0gdmFsdWU7XG4gIH1cbiAgcHJpdmF0ZSBfcGFyZW50SWRzID0gbmV3IEFycmF5PHN0cmluZz4oKTtcblxuICBfdHJhY2tCeUluc3RhbmNlSWQoaW5kZXg6IG51bWJlciwgaXRlbTogRm9ybUl0ZW0pIHtcbiAgICByZXR1cm4gaXRlbS5pbnN0YW5jZUlkO1xuICB9XG5cbiAgY29uc3RydWN0b3IoY2RyOiBDaGFuZ2VEZXRlY3RvclJlZikge1xuICAgIHN1cGVyKGNkcik7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -19,7 +19,8 @@ export class MtnaWfBaseParentValueItem extends MtnaWfBaseValueItem {
|
|
|
19
19
|
return super.control;
|
|
20
20
|
}
|
|
21
21
|
set control(control) {
|
|
22
|
-
|
|
22
|
+
// Checks for a wrapping form group around this item.
|
|
23
|
+
if (control instanceof FormGroup && control.get(this.item.instanceId)) {
|
|
23
24
|
super.control = control.get(this.item.instanceId);
|
|
24
25
|
this.controlWrapper = control;
|
|
25
26
|
}
|
|
@@ -40,4 +41,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
40
41
|
}], toggleFormItems: [{
|
|
41
42
|
type: Output
|
|
42
43
|
}] } });
|
|
43
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
44
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1wYXJlbnQtdmFsdWUtaXRlbS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy93ZWItZm9ybS1hbmd1bGFyL3NyYy9saWIvY29tcG9uZW50cy9iYXNlLWl0ZW1zL2Jhc2UtcGFyZW50LXZhbHVlLWl0ZW0uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkUsT0FBTyxFQUFtQixTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUk1RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7QUFLbEUscUVBQXFFO0FBQ3JFLE1BQU0sT0FBZ0IseUJBQW1GLFNBQVEsbUJBQXlCO0lBSjFJOztRQVlVLGVBQVUsR0FBRyxJQUFJLEtBQUssRUFBVSxDQUFDO1FBZS9CLG9CQUFlLEdBQUcsSUFBSSxZQUFZLEVBQXVCLENBQUM7S0FHckU7SUF6QkMsSUFDSSxTQUFTO1FBQ1gsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDO0lBQ3pCLENBQUM7SUFDRCxJQUFJLFNBQVMsQ0FBQyxLQUFvQjtRQUNoQyxJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQztJQUMxQixDQUFDO0lBR0QsSUFBYSxPQUFPO1FBQ2xCLE9BQU8sS0FBSyxDQUFDLE9BQU8sQ0FBQztJQUN2QixDQUFDO0lBQ0QsSUFBYSxPQUFPLENBQUMsT0FBNkI7UUFDaEQscURBQXFEO1FBQ3JELElBQUksT0FBTyxZQUFZLFNBQVMsSUFBSSxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEVBQUU7WUFDckUsS0FBSyxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFNLENBQUM7WUFDdkQsSUFBSSxDQUFDLGNBQWMsR0FBRyxPQUFPLENBQUM7U0FDL0I7YUFBTTtZQUNMLEtBQUssQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO1NBQ3pCO0lBQ0gsQ0FBQzs7dUhBckJtQix5QkFBeUI7MkdBQXpCLHlCQUF5QixnS0FIbkMsRUFBRTs0RkFHUSx5QkFBeUI7a0JBSjlDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLEVBQUU7aUJBQ2I7OEJBSUssU0FBUztzQkFEWixLQUFLO2dCQXNCSSxlQUFlO3NCQUF4QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgVmFsdWVJdGVtIH0gZnJvbSAnQG10bmEvd2ViLWZvcm0tdHMnO1xuXG5pbXBvcnQgeyBUb2dnbGVGb3JtSXRlbXNEYXRhIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3RvZ2dsZS1mb3JtLWl0ZW0tZGF0YS5tb2RlbCc7XG5pbXBvcnQgeyBNdG5hV2ZCYXNlVmFsdWVJdGVtIH0gZnJvbSAnLi9iYXNlLXZhbHVlLWl0ZW0uY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gIHRlbXBsYXRlOiBgYCxcbn0pXG4vKiBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L2NvbXBvbmVudC1jbGFzcy1zdWZmaXggKi9cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBNdG5hV2ZCYXNlUGFyZW50VmFsdWVJdGVtPEkgZXh0ZW5kcyBWYWx1ZUl0ZW08dW5rbm93bj4sIEMgZXh0ZW5kcyBBYnN0cmFjdENvbnRyb2w+IGV4dGVuZHMgTXRuYVdmQmFzZVZhbHVlSXRlbTxJLCBDPiB7XG4gIEBJbnB1dCgpXG4gIGdldCBwYXJlbnRJZHMoKTogQXJyYXk8c3RyaW5nPiB7XG4gICAgcmV0dXJuIHRoaXMuX3BhcmVudElkcztcbiAgfVxuICBzZXQgcGFyZW50SWRzKHZhbHVlOiBBcnJheTxzdHJpbmc+KSB7XG4gICAgdGhpcy5fcGFyZW50SWRzID0gdmFsdWU7XG4gIH1cbiAgcHJpdmF0ZSBfcGFyZW50SWRzID0gbmV3IEFycmF5PHN0cmluZz4oKTtcblxuICBvdmVycmlkZSBnZXQgY29udHJvbCgpOiBDIHwgbnVsbCB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHN1cGVyLmNvbnRyb2w7XG4gIH1cbiAgb3ZlcnJpZGUgc2V0IGNvbnRyb2woY29udHJvbDogQyB8IG51bGwgfCB1bmRlZmluZWQpIHtcbiAgICAvLyBDaGVja3MgZm9yIGEgd3JhcHBpbmcgZm9ybSBncm91cCBhcm91bmQgdGhpcyBpdGVtLlxuICAgIGlmIChjb250cm9sIGluc3RhbmNlb2YgRm9ybUdyb3VwICYmIGNvbnRyb2wuZ2V0KHRoaXMuaXRlbS5pbnN0YW5jZUlkKSkge1xuICAgICAgc3VwZXIuY29udHJvbCA9IGNvbnRyb2wuZ2V0KHRoaXMuaXRlbS5pbnN0YW5jZUlkKSBhcyBDO1xuICAgICAgdGhpcy5jb250cm9sV3JhcHBlciA9IGNvbnRyb2w7XG4gICAgfSBlbHNlIHtcbiAgICAgIHN1cGVyLmNvbnRyb2wgPSBjb250cm9sO1xuICAgIH1cbiAgfVxuXG4gIEBPdXRwdXQoKSB0b2dnbGVGb3JtSXRlbXMgPSBuZXcgRXZlbnRFbWl0dGVyPFRvZ2dsZUZvcm1JdGVtc0RhdGE+KCk7XG5cbiAgY29udHJvbFdyYXBwZXI6IEZvcm1Hcm91cCB8IHVuZGVmaW5lZDtcbn1cbiJdfQ==
|
|
@@ -3,8 +3,8 @@ import { MtnaWfBaseGroupItem } from './base-group-item.component';
|
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
4
|
/* eslint-disable-next-line @angular-eslint/component-class-suffix */
|
|
5
5
|
export class MtnaWfBaseSectionItem extends MtnaWfBaseGroupItem {
|
|
6
|
-
constructor() {
|
|
7
|
-
super(
|
|
6
|
+
constructor(cdr) {
|
|
7
|
+
super(cdr);
|
|
8
8
|
this.focused = new EventEmitter();
|
|
9
9
|
}
|
|
10
10
|
get step() {
|
|
@@ -12,18 +12,19 @@ export class MtnaWfBaseSectionItem extends MtnaWfBaseGroupItem {
|
|
|
12
12
|
}
|
|
13
13
|
set step(value) {
|
|
14
14
|
this._step = value;
|
|
15
|
+
console.warn({ value });
|
|
15
16
|
}
|
|
16
17
|
}
|
|
17
|
-
MtnaWfBaseSectionItem.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MtnaWfBaseSectionItem, deps:
|
|
18
|
+
MtnaWfBaseSectionItem.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MtnaWfBaseSectionItem, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
18
19
|
MtnaWfBaseSectionItem.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: MtnaWfBaseSectionItem, selector: "ng-component", inputs: { step: "step" }, outputs: { focused: "focused" }, usesInheritance: true, ngImport: i0, template: ``, isInline: true });
|
|
19
20
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MtnaWfBaseSectionItem, decorators: [{
|
|
20
21
|
type: Component,
|
|
21
22
|
args: [{
|
|
22
23
|
template: ``,
|
|
23
24
|
}]
|
|
24
|
-
}], propDecorators: { step: [{
|
|
25
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { step: [{
|
|
25
26
|
type: Input
|
|
26
27
|
}], focused: [{
|
|
27
28
|
type: Output
|
|
28
29
|
}] } });
|
|
29
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
30
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1zZWN0aW9uLWl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvd2ViLWZvcm0tYW5ndWxhci9zcmMvbGliL2NvbXBvbmVudHMvYmFzZS1pdGVtcy9iYXNlLXNlY3Rpb24taXRlbS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFxQixTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFJMUYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7O0FBS2xFLHFFQUFxRTtBQUNyRSxNQUFNLE9BQWdCLHFCQUF5QyxTQUFRLG1CQUFzQjtJQWEzRixZQUFZLEdBQXNCO1FBQ2hDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUhILFlBQU8sR0FBRyxJQUFJLFlBQVksRUFBWSxDQUFDO0lBSWpELENBQUM7SUFkRCxJQUNJLElBQUk7UUFDTixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDcEIsQ0FBQztJQUNELElBQUksSUFBSSxDQUFDLEtBQWtDO1FBQ3pDLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQzFCLENBQUM7O21IQVJtQixxQkFBcUI7dUdBQXJCLHFCQUFxQixzSUFIL0IsRUFBRTs0RkFHUSxxQkFBcUI7a0JBSjFDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLEVBQUU7aUJBQ2I7d0dBSUssSUFBSTtzQkFEUCxLQUFLO2dCQVVJLE9BQU87c0JBQWhCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNlY3Rpb24gfSBmcm9tICdAbXRuYS93ZWItZm9ybS10cyc7XG5cbmltcG9ydCB7IEZvcm1TdGVwIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2Zvcm0tc3RlcHBlci9mb3JtLXN0ZXAubW9kZWwnO1xuaW1wb3J0IHsgTXRuYVdmQmFzZUdyb3VwSXRlbSB9IGZyb20gJy4vYmFzZS1ncm91cC1pdGVtLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICB0ZW1wbGF0ZTogYGAsXG59KVxuLyogZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9jb21wb25lbnQtY2xhc3Mtc3VmZml4ICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgTXRuYVdmQmFzZVNlY3Rpb25JdGVtPFMgZXh0ZW5kcyBTZWN0aW9uPiBleHRlbmRzIE10bmFXZkJhc2VHcm91cEl0ZW08Uz4ge1xuICBASW5wdXQoKVxuICBnZXQgc3RlcCgpOiBGb3JtU3RlcCB8IG51bGwgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLl9zdGVwO1xuICB9XG4gIHNldCBzdGVwKHZhbHVlOiBGb3JtU3RlcCB8IG51bGwgfCB1bmRlZmluZWQpIHtcbiAgICB0aGlzLl9zdGVwID0gdmFsdWU7XG4gICAgY29uc29sZS53YXJuKHsgdmFsdWUgfSk7XG4gIH1cbiAgcHJpdmF0ZSBfc3RlcDogRm9ybVN0ZXAgfCBudWxsIHwgdW5kZWZpbmVkO1xuXG4gIEBPdXRwdXQoKSBmb2N1c2VkID0gbmV3IEV2ZW50RW1pdHRlcjxGb3JtU3RlcD4oKTtcblxuICBjb25zdHJ1Y3RvcihjZHI6IENoYW5nZURldGVjdG9yUmVmKSB7XG4gICAgc3VwZXIoY2RyKTtcbiAgfVxufVxuIl19
|