@pega/angular-sdk-components 0.23.9 → 0.23.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/_bridge/angular-pconnect.mjs +14 -2
- package/esm2022/lib/_components/field/auto-complete/auto-complete.component.mjs +4 -2
- package/esm2022/lib/_components/field/check-box/check-box.component.mjs +5 -4
- package/esm2022/lib/_components/field/currency/currency.component.mjs +5 -2
- package/esm2022/lib/_components/field/date/date.component.mjs +5 -2
- package/esm2022/lib/_components/field/date-time/date-time.component.mjs +4 -5
- package/esm2022/lib/_components/field/dropdown/dropdown.component.mjs +1 -5
- package/esm2022/lib/_components/field/email/email.component.mjs +5 -3
- package/esm2022/lib/_components/field/integer/integer.component.mjs +5 -3
- package/esm2022/lib/_components/field/percentage/percentage.component.mjs +5 -3
- package/esm2022/lib/_components/field/phone/phone.component.mjs +4 -3
- package/esm2022/lib/_components/field/radio-buttons/radio-buttons.component.mjs +5 -6
- package/esm2022/lib/_components/field/text-area/text-area.component.mjs +5 -7
- package/esm2022/lib/_components/field/text-input/text-input.component.mjs +5 -3
- package/esm2022/lib/_components/field/time/time.component.mjs +5 -4
- package/esm2022/lib/_components/field/url/url.component.mjs +5 -3
- package/esm2022/lib/_components/field/user-reference/user-reference.component.mjs +5 -6
- package/esm2022/lib/_components/infra/Containers/modal-view-container/modal-view-container.component.mjs +2 -8
- package/esm2022/lib/_components/infra/assignment-card/assignment-card.component.mjs +3 -3
- package/esm2022/lib/_components/infra/reference/reference.component.mjs +14 -11
- package/esm2022/lib/_components/infra/root-container/root-container.component.mjs +3 -13
- package/esm2022/lib/_components/template/default-form/default-form.component.mjs +39 -8
- package/esm2022/lib/_components/template/field-group-template/field-group-template.component.mjs +2 -2
- package/esm2022/lib/_components/template/simple-table-manual/helpers.mjs +7 -6
- package/fesm2022/pega-angular-sdk-components.mjs +117 -86
- package/fesm2022/pega-angular-sdk-components.mjs.map +1 -1
- package/lib/_bridge/angular-pconnect.d.ts +2 -0
- package/lib/_components/field/dropdown/dropdown.component.d.ts +0 -1
- package/lib/_components/field/radio-buttons/radio-buttons.component.d.ts +0 -1
- package/lib/_components/field/text-area/text-area.component.d.ts +0 -1
- package/lib/_components/infra/Containers/modal-view-container/modal-view-container.component.d.ts +1 -2
- package/lib/_components/infra/root-container/root-container.component.d.ts +0 -1
- package/lib/_components/template/default-form/default-form.component.d.ts +9 -3
- package/lib/_components/template/simple-table-manual/helpers.d.ts +1 -0
- package/package.json +1 -1
|
@@ -121,18 +121,16 @@ class ReferenceComponent {
|
|
|
121
121
|
static createFullReferencedViewFromRef(inPConn) {
|
|
122
122
|
// BAIL and ERROR if inPConn is NOT a reference!
|
|
123
123
|
if (inPConn.getComponentName() !== 'reference') {
|
|
124
|
-
// debugger;
|
|
125
124
|
console.error(`Reference component: createFullReferencedViewFromRef inPConn is NOT a reference! ${inPConn.getComponentName()}`);
|
|
126
125
|
}
|
|
127
|
-
const theResolvedConfigProps = inPConn.resolveConfigProps(inPConn.getConfigProps());
|
|
128
126
|
const referenceConfig = { ...inPConn.getComponentConfig() } || {};
|
|
129
127
|
// Since SDK-A implements Reference as static methods and we don't rely on
|
|
130
128
|
// the Reference component's handling of the visibility prop, we leave it in
|
|
131
129
|
// (and also leaving the others in for now) so the referenced View can act on
|
|
132
130
|
// the visibility prop. (The following 3 lines were carried over from React SDK)
|
|
133
131
|
delete referenceConfig?.name;
|
|
134
|
-
|
|
135
|
-
|
|
132
|
+
delete referenceConfig?.type;
|
|
133
|
+
delete referenceConfig?.visibility;
|
|
136
134
|
const viewMetadata = inPConn.getReferencedView();
|
|
137
135
|
if (!viewMetadata) {
|
|
138
136
|
console.log('View not found ', inPConn.getComponentConfig());
|
|
@@ -147,23 +145,28 @@ class ReferenceComponent {
|
|
|
147
145
|
...referenceConfig
|
|
148
146
|
}
|
|
149
147
|
};
|
|
148
|
+
const theResolvedConfigProps = inPConn.resolveConfigProps(inPConn.getConfigProps());
|
|
149
|
+
const { visibility = true, context, readOnly = false, displayMode = '' } = theResolvedConfigProps;
|
|
150
150
|
if (ReferenceComponent.bLogging) {
|
|
151
|
-
console.log(`Reference: about to call createComponent with pageReference: context: ${
|
|
151
|
+
console.log(`Reference: about to call createComponent with pageReference: context: ${inPConn.getContextName()}`);
|
|
152
152
|
}
|
|
153
153
|
const viewComponent = inPConn.createComponent(viewObject, null, null, {
|
|
154
|
-
pageReference:
|
|
154
|
+
pageReference: context && context.startsWith('@CLASS') ? '' : context
|
|
155
155
|
});
|
|
156
156
|
// updating the referencedComponent should trigger a render
|
|
157
157
|
const newCompPConnect = viewComponent.getPConnect();
|
|
158
158
|
newCompPConnect.setInheritedConfig({
|
|
159
159
|
...referenceConfig,
|
|
160
|
-
readOnly
|
|
161
|
-
displayMode
|
|
160
|
+
readOnly,
|
|
161
|
+
displayMode
|
|
162
162
|
});
|
|
163
163
|
if (ReferenceComponent.bLogging) {
|
|
164
164
|
console.log(`Angular Reference component: createFullReferencedViewFromRef -> newCompPConnect configProps: ${JSON.stringify(newCompPConnect.getConfigProps())}`);
|
|
165
165
|
}
|
|
166
|
-
|
|
166
|
+
if (visibility !== false) {
|
|
167
|
+
return newCompPConnect;
|
|
168
|
+
}
|
|
169
|
+
return null;
|
|
167
170
|
}
|
|
168
171
|
// STATIC method that other components can call to normalize
|
|
169
172
|
// a pConn object that might be a 'reference'. If the incoming
|
|
@@ -197,7 +200,7 @@ class ReferenceComponent {
|
|
|
197
200
|
// debugger;
|
|
198
201
|
let theRefViewPConn = this.createFullReferencedViewFromRef(inPConn.getPConnect());
|
|
199
202
|
// now return its PConnect
|
|
200
|
-
theRefViewPConn = theRefViewPConn
|
|
203
|
+
theRefViewPConn = theRefViewPConn?.getComponent();
|
|
201
204
|
// const theFullReference = theRefViewPConn.getPConnect().getFullReference();
|
|
202
205
|
// console.log(`theFullReference: ${theFullReference}`);
|
|
203
206
|
return theRefViewPConn;
|
|
@@ -249,11 +252,11 @@ class AssignmentCardComponent {
|
|
|
249
252
|
this.actionButtonClick.emit(oData);
|
|
250
253
|
}
|
|
251
254
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AssignmentCardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
252
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: AssignmentCardComponent, isStandalone: true, selector: "app-assignment-card", inputs: { pConn$: "pConn$", formGroup$: "formGroup$", arMainButtons$: "arMainButtons$", arSecondaryButtons$: "arSecondaryButtons$", arChildren$: "arChildren$", updateToken$: "updateToken$" }, outputs: { actionButtonClick: "actionButtonClick" }, usesOnChanges: true, ngImport: i0, template: "<form [formGroup]=\"formGroup$\" name=\"flowContainer\" class=\"psdk-flow-container\">\n <div *ngFor=\"let kid of arChildren$\">\n <div [ngSwitch]=\"kid.getPConnect().getComponentName()\">\n <component-mapper *ngSwitchCase=\"'View'\" name=\"View\" [props]=\"{ formGroup$, pConn$: kid.getPConnect() }\"></component-mapper>\n <component-mapper\n *ngSwitchCase=\"'CaseCreateStage'\"\n name=\"CaseCreateStage\"\n [props]=\"{ formGroup$, pConn$: kid.getPConnect() }\"\n ></component-mapper>\n <component-mapper *ngSwitchCase=\"'Region'\" name=\"Region\" [props]=\"{ formGroup$, pConn$: kid.getPConnect() }\"></component-mapper>\n <div *ngSwitchDefault>Assignment Card wants component not yet available: {{ kid.getPConnect().getComponentName() }}</div>\n </div>\n </div>\n</form>\n\n<div>\n <br />\n <div class=\"psdk-case-view-divider\"></div>\n\n <component-mapper\n name=\"ActionButtons\"\n [props]=\"{ arMainButtons$, arSecondaryButtons$ }\"\n [parent]=\"this\"\n [outputEvents]=\"{ actionButtonClick: onActionButtonClick }\"\n ></component-mapper>\n</div>\n", styles: [".psdk-case-view-divider{border-bottom:.0625rem solid var(--app-neutral-light-color)}.psdk-flow-container{padding:0rem 1rem}\n"], dependencies: [{ kind: "ngmodule", type: i0.forwardRef(function () { return CommonModule; }) }, { kind: "directive", type: i0.forwardRef(function () { return i3.NgForOf; }), selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i0.forwardRef(function () { return i3.NgSwitch; }), selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i0.forwardRef(function () { return i3.NgSwitchCase; }), selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i0.forwardRef(function () { return i3.NgSwitchDefault; }), selector: "[ngSwitchDefault]" }, { kind: "ngmodule", type: i0.forwardRef(function () { return ReactiveFormsModule; }) }, { kind: "directive", type: i0.forwardRef(function () { return i4.ɵNgNoValidate; }), selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i0.forwardRef(function () { return i4.NgControlStatusGroup; }), selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i0.forwardRef(function () { return i4.FormGroupDirective; }), selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: i0.forwardRef(function () { return ComponentMapperComponent; }), selector: "component-mapper", inputs: ["name", "props", "errorMsg", "outputEvents", "parent"] }] }); }
|
|
255
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: AssignmentCardComponent, isStandalone: true, selector: "app-assignment-card", inputs: { pConn$: "pConn$", formGroup$: "formGroup$", arMainButtons$: "arMainButtons$", arSecondaryButtons$: "arSecondaryButtons$", arChildren$: "arChildren$", updateToken$: "updateToken$" }, outputs: { actionButtonClick: "actionButtonClick" }, usesOnChanges: true, ngImport: i0, template: "<form [formGroup]=\"formGroup$\" name=\"flowContainer\" class=\"psdk-flow-container\">\n <div *ngFor=\"let kid of arChildren$\">\n <div [ngSwitch]=\"kid.getPConnect().getComponentName()\">\n <component-mapper *ngSwitchCase=\"'View'\" name=\"View\" [props]=\"{ formGroup$, pConn$: kid.getPConnect() }\"></component-mapper>\n <component-mapper\n *ngSwitchCase=\"'CaseCreateStage'\"\n name=\"CaseCreateStage\"\n [props]=\"{ formGroup$, pConn$: kid.getPConnect() }\"\n ></component-mapper>\n <component-mapper *ngSwitchCase=\"'Region'\" name=\"Region\" [props]=\"{ formGroup$, pConn$: kid.getPConnect() }\"></component-mapper>\n <div *ngSwitchDefault>Assignment Card wants component not yet available: {{ kid.getPConnect().getComponentName() }}</div>\n </div>\n </div>\n</form>\n\n<div>\n <br />\n <div class=\"psdk-case-view-divider\"></div>\n\n <component-mapper\n *ngIf=\"arMainButtons$ && arSecondaryButtons$\"\n name=\"ActionButtons\"\n [props]=\"{ arMainButtons$, arSecondaryButtons$ }\"\n [parent]=\"this\"\n [outputEvents]=\"{ actionButtonClick: onActionButtonClick }\"\n ></component-mapper>\n</div>\n", styles: [".psdk-case-view-divider{border-bottom:.0625rem solid var(--app-neutral-light-color)}.psdk-flow-container{padding:0rem 1rem}\n"], dependencies: [{ kind: "ngmodule", type: i0.forwardRef(function () { return CommonModule; }) }, { kind: "directive", type: i0.forwardRef(function () { return i3.NgForOf; }), selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i0.forwardRef(function () { return i3.NgIf; }), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i0.forwardRef(function () { return i3.NgSwitch; }), selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i0.forwardRef(function () { return i3.NgSwitchCase; }), selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i0.forwardRef(function () { return i3.NgSwitchDefault; }), selector: "[ngSwitchDefault]" }, { kind: "ngmodule", type: i0.forwardRef(function () { return ReactiveFormsModule; }) }, { kind: "directive", type: i0.forwardRef(function () { return i4.ɵNgNoValidate; }), selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i0.forwardRef(function () { return i4.NgControlStatusGroup; }), selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i0.forwardRef(function () { return i4.FormGroupDirective; }), selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: i0.forwardRef(function () { return ComponentMapperComponent; }), selector: "component-mapper", inputs: ["name", "props", "errorMsg", "outputEvents", "parent"] }] }); }
|
|
253
256
|
}
|
|
254
257
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AssignmentCardComponent, decorators: [{
|
|
255
258
|
type: Component,
|
|
256
|
-
args: [{ selector: 'app-assignment-card', standalone: true, imports: [CommonModule, ReactiveFormsModule, forwardRef(() => ComponentMapperComponent)], template: "<form [formGroup]=\"formGroup$\" name=\"flowContainer\" class=\"psdk-flow-container\">\n <div *ngFor=\"let kid of arChildren$\">\n <div [ngSwitch]=\"kid.getPConnect().getComponentName()\">\n <component-mapper *ngSwitchCase=\"'View'\" name=\"View\" [props]=\"{ formGroup$, pConn$: kid.getPConnect() }\"></component-mapper>\n <component-mapper\n *ngSwitchCase=\"'CaseCreateStage'\"\n name=\"CaseCreateStage\"\n [props]=\"{ formGroup$, pConn$: kid.getPConnect() }\"\n ></component-mapper>\n <component-mapper *ngSwitchCase=\"'Region'\" name=\"Region\" [props]=\"{ formGroup$, pConn$: kid.getPConnect() }\"></component-mapper>\n <div *ngSwitchDefault>Assignment Card wants component not yet available: {{ kid.getPConnect().getComponentName() }}</div>\n </div>\n </div>\n</form>\n\n<div>\n <br />\n <div class=\"psdk-case-view-divider\"></div>\n\n <component-mapper\n name=\"ActionButtons\"\n [props]=\"{ arMainButtons$, arSecondaryButtons$ }\"\n [parent]=\"this\"\n [outputEvents]=\"{ actionButtonClick: onActionButtonClick }\"\n ></component-mapper>\n</div>\n", styles: [".psdk-case-view-divider{border-bottom:.0625rem solid var(--app-neutral-light-color)}.psdk-flow-container{padding:0rem 1rem}\n"] }]
|
|
259
|
+
args: [{ selector: 'app-assignment-card', standalone: true, imports: [CommonModule, ReactiveFormsModule, forwardRef(() => ComponentMapperComponent)], template: "<form [formGroup]=\"formGroup$\" name=\"flowContainer\" class=\"psdk-flow-container\">\n <div *ngFor=\"let kid of arChildren$\">\n <div [ngSwitch]=\"kid.getPConnect().getComponentName()\">\n <component-mapper *ngSwitchCase=\"'View'\" name=\"View\" [props]=\"{ formGroup$, pConn$: kid.getPConnect() }\"></component-mapper>\n <component-mapper\n *ngSwitchCase=\"'CaseCreateStage'\"\n name=\"CaseCreateStage\"\n [props]=\"{ formGroup$, pConn$: kid.getPConnect() }\"\n ></component-mapper>\n <component-mapper *ngSwitchCase=\"'Region'\" name=\"Region\" [props]=\"{ formGroup$, pConn$: kid.getPConnect() }\"></component-mapper>\n <div *ngSwitchDefault>Assignment Card wants component not yet available: {{ kid.getPConnect().getComponentName() }}</div>\n </div>\n </div>\n</form>\n\n<div>\n <br />\n <div class=\"psdk-case-view-divider\"></div>\n\n <component-mapper\n *ngIf=\"arMainButtons$ && arSecondaryButtons$\"\n name=\"ActionButtons\"\n [props]=\"{ arMainButtons$, arSecondaryButtons$ }\"\n [parent]=\"this\"\n [outputEvents]=\"{ actionButtonClick: onActionButtonClick }\"\n ></component-mapper>\n</div>\n", styles: [".psdk-case-view-divider{border-bottom:.0625rem solid var(--app-neutral-light-color)}.psdk-flow-container{padding:0rem 1rem}\n"] }]
|
|
257
260
|
}], propDecorators: { pConn$: [{
|
|
258
261
|
type: Input
|
|
259
262
|
}], formGroup$: [{
|
|
@@ -961,13 +964,25 @@ class AngularPConnectService {
|
|
|
961
964
|
}
|
|
962
965
|
else {
|
|
963
966
|
returnObject.compID = theCompID;
|
|
964
|
-
returnObject.unsubscribeFn =
|
|
967
|
+
returnObject.unsubscribeFn = () => {
|
|
968
|
+
this.removeFormField(inComp);
|
|
969
|
+
theUnsub();
|
|
970
|
+
};
|
|
965
971
|
}
|
|
966
972
|
// initialize this components entry in the componentPropsArr
|
|
967
973
|
this.componentPropsArr[theCompID] = {};
|
|
974
|
+
this.addFormField(inComp);
|
|
968
975
|
// return object with compID and unsubscribe...
|
|
969
976
|
return returnObject;
|
|
970
977
|
}
|
|
978
|
+
addFormField(inComp) {
|
|
979
|
+
inComp.pConn$?.addFormField();
|
|
980
|
+
}
|
|
981
|
+
removeFormField(inComp) {
|
|
982
|
+
if (inComp.pConn$?.removeFormField) {
|
|
983
|
+
inComp.pConn$?.removeFormField();
|
|
984
|
+
}
|
|
985
|
+
}
|
|
971
986
|
// Returns true if the component's entry in ___componentPropsArr___ is
|
|
972
987
|
// the same as the inCompProps passed in.
|
|
973
988
|
// As a side effect, update the component's entry in componentPropsArr
|
|
@@ -2594,10 +2609,6 @@ class ModalViewContainerComponent {
|
|
|
2594
2609
|
this.formGroup$ = fb.group({ hideRequired: false });
|
|
2595
2610
|
}
|
|
2596
2611
|
ngOnInit() {
|
|
2597
|
-
if (this.displayOnlyFA$) {
|
|
2598
|
-
// for when non modal
|
|
2599
|
-
this.bShowAsModal$ = false;
|
|
2600
|
-
}
|
|
2601
2612
|
// First thing in initialization is registering and subscribing to the AngularPConnect service
|
|
2602
2613
|
this.angularPConnectData = this.angularPConnect.registerAndSubscribeComponent(this, this.onStateChange);
|
|
2603
2614
|
const baseContext = this.pConn$.getContextName();
|
|
@@ -2873,15 +2884,13 @@ class ModalViewContainerComponent {
|
|
|
2873
2884
|
return `${this.localizedVal('Create', this.localeCategory)} ${this.localizedVal(caseTypeName, undefined, caseLocaleRef)} (${ID})`;
|
|
2874
2885
|
}
|
|
2875
2886
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ModalViewContainerComponent, deps: [{ token: AngularPConnectService }, { token: i0.NgZone }, { token: ProgressSpinnerService }, { token: i4.FormBuilder }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
2876
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ModalViewContainerComponent, isStandalone: true, selector: "app-modal-view-container", inputs: { pConn$: "pConn$"
|
|
2887
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ModalViewContainerComponent, isStandalone: true, selector: "app-modal-view-container", inputs: { pConn$: "pConn$" }, outputs: { modalVisibleChange: "modalVisibleChange" }, ngImport: i0, template: "<div id=\"dialog\" *ngIf=\"bShowModal$ && bShowAsModal$\" class=\"psdk-dialog-background\">\n <div class=\"psdk-modal-view-container-top\" id=\"{{ buildName$ }}\">\n <h3 *ngIf=\"title$ != ''\">{{ title$ }}</h3>\n <component-mapper\n name=\"Assignment\"\n [props]=\"{ pConn$: createdViewPConn$, formGroup$, arChildren$, itemKey$, isCreateStage$: true, updateToken$, isInModal$: true, banners }\"\n ></component-mapper>\n <div *ngIf=\"isMultiRecord\">\n <component-mapper\n name=\"ListViewActionButtons\"\n [props]=\"{ pConn$: createdViewPConn$, context$ }\"\n [outputEvents]=\"{ closeActionsDialog: closeActionsDialog }\"\n ></component-mapper>\n </div>\n </div>\n</div>\n\n<div *ngIf=\"bShowModal$ && !bShowAsModal$\">\n <div id=\"{{ buildName$ }}\">\n <h3 *ngIf=\"title$ != ''\">{{ title$ }}</h3>\n <component-mapper\n name=\"Assignment\"\n [props]=\"{ pConn$: createdViewPConn$, formGroup$, arChildren$, itemKey$, isCreateStage$: true, updateToken$ }\"\n ></component-mapper>\n </div>\n</div>\n\n<div *ngIf=\"bShowCancelAlert$\">\n <component-mapper\n name=\"CancelAlert\"\n [props]=\"{ bShowAlert$: bShowCancelAlert$, pConn$: cancelPConn$ }\"\n [parent]=\"this\"\n [outputEvents]=\"{ onAlertState$: onAlertState }\"\n ></component-mapper>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: i0.forwardRef(function () { return CommonModule; }) }, { kind: "directive", type: i0.forwardRef(function () { return i3.NgIf; }), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i0.forwardRef(function () { return ComponentMapperComponent; }), selector: "component-mapper", inputs: ["name", "props", "errorMsg", "outputEvents", "parent"] }] }); }
|
|
2877
2888
|
}
|
|
2878
2889
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ModalViewContainerComponent, decorators: [{
|
|
2879
2890
|
type: Component,
|
|
2880
2891
|
args: [{ selector: 'app-modal-view-container', standalone: true, imports: [CommonModule, forwardRef(() => ComponentMapperComponent)], template: "<div id=\"dialog\" *ngIf=\"bShowModal$ && bShowAsModal$\" class=\"psdk-dialog-background\">\n <div class=\"psdk-modal-view-container-top\" id=\"{{ buildName$ }}\">\n <h3 *ngIf=\"title$ != ''\">{{ title$ }}</h3>\n <component-mapper\n name=\"Assignment\"\n [props]=\"{ pConn$: createdViewPConn$, formGroup$, arChildren$, itemKey$, isCreateStage$: true, updateToken$, isInModal$: true, banners }\"\n ></component-mapper>\n <div *ngIf=\"isMultiRecord\">\n <component-mapper\n name=\"ListViewActionButtons\"\n [props]=\"{ pConn$: createdViewPConn$, context$ }\"\n [outputEvents]=\"{ closeActionsDialog: closeActionsDialog }\"\n ></component-mapper>\n </div>\n </div>\n</div>\n\n<div *ngIf=\"bShowModal$ && !bShowAsModal$\">\n <div id=\"{{ buildName$ }}\">\n <h3 *ngIf=\"title$ != ''\">{{ title$ }}</h3>\n <component-mapper\n name=\"Assignment\"\n [props]=\"{ pConn$: createdViewPConn$, formGroup$, arChildren$, itemKey$, isCreateStage$: true, updateToken$ }\"\n ></component-mapper>\n </div>\n</div>\n\n<div *ngIf=\"bShowCancelAlert$\">\n <component-mapper\n name=\"CancelAlert\"\n [props]=\"{ bShowAlert$: bShowCancelAlert$, pConn$: cancelPConn$ }\"\n [parent]=\"this\"\n [outputEvents]=\"{ onAlertState$: onAlertState }\"\n ></component-mapper>\n</div>\n" }]
|
|
2881
2892
|
}], ctorParameters: function () { return [{ type: AngularPConnectService }, { type: i0.NgZone }, { type: ProgressSpinnerService }, { type: i4.FormBuilder }]; }, propDecorators: { pConn$: [{
|
|
2882
2893
|
type: Input
|
|
2883
|
-
}], displayOnlyFA$: [{
|
|
2884
|
-
type: Input
|
|
2885
2894
|
}], modalVisibleChange: [{
|
|
2886
2895
|
type: Output
|
|
2887
2896
|
}] } });
|
|
@@ -3232,16 +3241,6 @@ class RootContainerComponent {
|
|
|
3232
3241
|
this.updateSelf();
|
|
3233
3242
|
}
|
|
3234
3243
|
}
|
|
3235
|
-
modalVisibleChanged(isVisible) {
|
|
3236
|
-
if (this.displayOnlyFA$) {
|
|
3237
|
-
if (isVisible) {
|
|
3238
|
-
this.bShowRoot$ = false;
|
|
3239
|
-
}
|
|
3240
|
-
else {
|
|
3241
|
-
this.bShowRoot$ = true;
|
|
3242
|
-
}
|
|
3243
|
-
}
|
|
3244
|
-
}
|
|
3245
3244
|
updateSelf() {
|
|
3246
3245
|
// need to call this.getCurrentCompleteProps (not this.thePConn.getConfigProps)
|
|
3247
3246
|
// to get full set of props that affect this component in Redux
|
|
@@ -3350,7 +3349,7 @@ class RootContainerComponent {
|
|
|
3350
3349
|
}
|
|
3351
3350
|
}
|
|
3352
3351
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RootContainerComponent, deps: [{ token: AngularPConnectService }, { token: ProgressSpinnerService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
3353
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: RootContainerComponent, isStandalone: true, selector: "app-root-container", inputs: { pConn$: "pConn$", displayOnlyFA$: "displayOnlyFA$", isMashup$: "isMashup$" }, ngImport: i0, template: "<div class=\"progress-box\" *ngIf=\"bIsProgress$\">\n <mat-spinner class=\"progress-spinner\"></mat-spinner>\n</div>\n\n<div *ngIf=\"bShowRoot$\">\n <div [ngSwitch]=\"componentName$\">\n <component-mapper *ngSwitchCase=\"'View'\" name=\"View\" [props]=\"{ pConn$, displayOnlyFA$ }\"></component-mapper>\n
|
|
3352
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: RootContainerComponent, isStandalone: true, selector: "app-root-container", inputs: { pConn$: "pConn$", displayOnlyFA$: "displayOnlyFA$", isMashup$: "isMashup$" }, ngImport: i0, template: "<div class=\"progress-box\" *ngIf=\"bIsProgress$\">\n <mat-spinner class=\"progress-spinner\"></mat-spinner>\n</div>\n\n<div *ngIf=\"bShowRoot$\">\n <div [ngSwitch]=\"componentName$\">\n <component-mapper *ngSwitchCase=\"'View'\" name=\"View\" [props]=\"{ pConn$, displayOnlyFA$ }\"></component-mapper>\n <component-mapper\n *ngSwitchCase=\"'ViewContainer'\"\n name=\"ViewContainer\"\n [props]=\"{ pConn$: viewContainerPConn$, displayOnlyFA$ }\"\n ></component-mapper>\n <div *ngSwitchDefault>{{ localizedVal('RootContainer Missing: ' + componentName$, localeCategory) }}.</div>\n </div>\n</div>\n\n<div *ngIf=\"pvConn$ != null\">\n <app-preview-view-container [pConn$]=\"pvConn$\"></app-preview-view-container>\n</div>\n\n<div *ngIf=\"mConn$ != null\">\n <app-modal-view-container [pConn$]=\"mConn$\"></app-modal-view-container>\n</div>\n", styles: [".progress-box{display:flex;flex-direction:column;justify-content:center;align-items:center;height:100%;width:100%;background-color:var(--app-background-color);position:fixed;z-index:99999;top:0rem;left:0rem;opacity:.5}.progress-spinner{text-align:center}\n"], dependencies: [{ kind: "ngmodule", type: i0.forwardRef(function () { return CommonModule; }) }, { kind: "directive", type: i0.forwardRef(function () { return i3.NgIf; }), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i0.forwardRef(function () { return i3.NgSwitch; }), selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i0.forwardRef(function () { return i3.NgSwitchCase; }), selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i0.forwardRef(function () { return i3.NgSwitchDefault; }), selector: "[ngSwitchDefault]" }, { kind: "ngmodule", type: i0.forwardRef(function () { return MatProgressSpinnerModule; }) }, { kind: "component", type: i0.forwardRef(function () { return i4$3.MatProgressSpinner; }), selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "component", type: i0.forwardRef(function () { return ModalViewContainerComponent; }), selector: "app-modal-view-container", inputs: ["pConn$"], outputs: ["modalVisibleChange"] }, { kind: "component", type: i0.forwardRef(function () { return PreviewViewContainerComponent; }), selector: "app-preview-view-container", inputs: ["pConn$"] }, { kind: "component", type: i0.forwardRef(function () { return ComponentMapperComponent; }), selector: "component-mapper", inputs: ["name", "props", "errorMsg", "outputEvents", "parent"] }] }); }
|
|
3354
3353
|
}
|
|
3355
3354
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RootContainerComponent, decorators: [{
|
|
3356
3355
|
type: Component,
|
|
@@ -3361,7 +3360,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
3361
3360
|
ModalViewContainerComponent,
|
|
3362
3361
|
PreviewViewContainerComponent,
|
|
3363
3362
|
forwardRef(() => ComponentMapperComponent)
|
|
3364
|
-
], template: "<div class=\"progress-box\" *ngIf=\"bIsProgress$\">\n <mat-spinner class=\"progress-spinner\"></mat-spinner>\n</div>\n\n<div *ngIf=\"bShowRoot$\">\n <div [ngSwitch]=\"componentName$\">\n <component-mapper *ngSwitchCase=\"'View'\" name=\"View\" [props]=\"{ pConn$, displayOnlyFA$ }\"></component-mapper>\n
|
|
3363
|
+
], template: "<div class=\"progress-box\" *ngIf=\"bIsProgress$\">\n <mat-spinner class=\"progress-spinner\"></mat-spinner>\n</div>\n\n<div *ngIf=\"bShowRoot$\">\n <div [ngSwitch]=\"componentName$\">\n <component-mapper *ngSwitchCase=\"'View'\" name=\"View\" [props]=\"{ pConn$, displayOnlyFA$ }\"></component-mapper>\n <component-mapper\n *ngSwitchCase=\"'ViewContainer'\"\n name=\"ViewContainer\"\n [props]=\"{ pConn$: viewContainerPConn$, displayOnlyFA$ }\"\n ></component-mapper>\n <div *ngSwitchDefault>{{ localizedVal('RootContainer Missing: ' + componentName$, localeCategory) }}.</div>\n </div>\n</div>\n\n<div *ngIf=\"pvConn$ != null\">\n <app-preview-view-container [pConn$]=\"pvConn$\"></app-preview-view-container>\n</div>\n\n<div *ngIf=\"mConn$ != null\">\n <app-modal-view-container [pConn$]=\"mConn$\"></app-modal-view-container>\n</div>\n", styles: [".progress-box{display:flex;flex-direction:column;justify-content:center;align-items:center;height:100%;width:100%;background-color:var(--app-background-color);position:fixed;z-index:99999;top:0rem;left:0rem;opacity:.5}.progress-spinner{text-align:center}\n"] }]
|
|
3365
3364
|
}], ctorParameters: function () { return [{ type: AngularPConnectService }, { type: ProgressSpinnerService }, { type: i0.NgZone }]; }, propDecorators: { pConn$: [{
|
|
3366
3365
|
type: Input
|
|
3367
3366
|
}], displayOnlyFA$: [{
|
|
@@ -4272,7 +4271,9 @@ class AutoCompleteComponent {
|
|
|
4272
4271
|
// PConnect wants to use changeHandler for onChange
|
|
4273
4272
|
// this.angularPConnect.changeHandler( this, event);
|
|
4274
4273
|
this.filterValue = event.target.value;
|
|
4275
|
-
this.
|
|
4274
|
+
const actionsApi = this.pConn$?.getActionsApi();
|
|
4275
|
+
const propName = (this.pConn$?.getStateProps()).value;
|
|
4276
|
+
handleEvent(actionsApi, 'change', propName, this.filterValue);
|
|
4276
4277
|
}
|
|
4277
4278
|
optionChanged(event) {
|
|
4278
4279
|
this.angularPConnectData.actions?.onChange(this, event);
|
|
@@ -4608,8 +4609,9 @@ class CheckBoxComponent {
|
|
|
4608
4609
|
this.pConn$.getValidationApi().validate(this.selectedvalues, this.selectionList);
|
|
4609
4610
|
}
|
|
4610
4611
|
else {
|
|
4611
|
-
|
|
4612
|
-
this.
|
|
4612
|
+
const actionsApi = this.pConn$?.getActionsApi();
|
|
4613
|
+
const propName = (this.pConn$?.getStateProps()).value;
|
|
4614
|
+
handleEvent(actionsApi, 'changeNblur', propName, event.checked);
|
|
4613
4615
|
}
|
|
4614
4616
|
}
|
|
4615
4617
|
handleChangeMultiMode(event, element) {
|
|
@@ -5817,7 +5819,9 @@ class CurrencyComponent {
|
|
|
5817
5819
|
}
|
|
5818
5820
|
fieldOnBlur(event) {
|
|
5819
5821
|
// PConnect wants to use eventHandler for onBlur
|
|
5820
|
-
this.
|
|
5822
|
+
const actionsApi = this.pConn$?.getActionsApi();
|
|
5823
|
+
const propName = (this.pConn$?.getStateProps()).value;
|
|
5824
|
+
handleEvent(actionsApi, 'changeNblur', propName, event?.target?.value);
|
|
5821
5825
|
}
|
|
5822
5826
|
getErrorMessage() {
|
|
5823
5827
|
let errMessage = '';
|
|
@@ -6340,7 +6344,9 @@ class DateComponent {
|
|
|
6340
6344
|
// convert date to pega "date" format
|
|
6341
6345
|
event.value = event.value?.toISOString();
|
|
6342
6346
|
}
|
|
6343
|
-
|
|
6347
|
+
const actionsApi = this.pConn$?.getActionsApi();
|
|
6348
|
+
const propName = (this.pConn$?.getStateProps()).value;
|
|
6349
|
+
handleEvent(actionsApi, 'changeNblur', propName, event?.value);
|
|
6344
6350
|
}
|
|
6345
6351
|
hasErrors() {
|
|
6346
6352
|
return this.fieldControl.status === 'INVALID';
|
|
@@ -6526,10 +6532,9 @@ class DateTimeComponent {
|
|
|
6526
6532
|
handleEvent(actionsApi, 'changeNblur', propName, value?.toISOString());
|
|
6527
6533
|
}
|
|
6528
6534
|
fieldOnBlur(event) {
|
|
6529
|
-
|
|
6530
|
-
|
|
6531
|
-
|
|
6532
|
-
this.angularPConnectData.actions?.onBlur(this, event);
|
|
6535
|
+
const actionsApi = this.pConn$?.getActionsApi();
|
|
6536
|
+
const propName = (this.pConn$?.getStateProps()).value;
|
|
6537
|
+
handleEvent(actionsApi, 'changeNblur', propName, event?.target?.value);
|
|
6533
6538
|
}
|
|
6534
6539
|
getErrorMessage() {
|
|
6535
6540
|
let errMessage = '';
|
|
@@ -6881,10 +6886,6 @@ class DropdownComponent {
|
|
|
6881
6886
|
this.configProps$.onRecordChange(event);
|
|
6882
6887
|
}
|
|
6883
6888
|
}
|
|
6884
|
-
fieldOnBlur(event) {
|
|
6885
|
-
// PConnect wants to use eventHandler for onBlur
|
|
6886
|
-
this.angularPConnectData.actions?.onBlur(this, event);
|
|
6887
|
-
}
|
|
6888
6889
|
getLocalizedOptionValue(opt) {
|
|
6889
6890
|
return this.pConn$.getLocalizedValue(opt.value, this.localePath,
|
|
6890
6891
|
// @ts-ignore - Property 'getLocaleRuleNameFromKeys' is private and only accessible within class 'C11nEnv'.
|
|
@@ -7023,8 +7024,9 @@ class EmailComponent {
|
|
|
7023
7024
|
this.angularPConnectData.actions?.onChange(this, event);
|
|
7024
7025
|
}
|
|
7025
7026
|
fieldOnBlur(event) {
|
|
7026
|
-
|
|
7027
|
-
this.
|
|
7027
|
+
const actionsApi = this.pConn$?.getActionsApi();
|
|
7028
|
+
const propName = (this.pConn$?.getStateProps()).value;
|
|
7029
|
+
handleEvent(actionsApi, 'changeNblur', propName, event?.target?.value);
|
|
7028
7030
|
}
|
|
7029
7031
|
getErrorMessage() {
|
|
7030
7032
|
let errMessage = '';
|
|
@@ -7220,8 +7222,9 @@ class IntegerComponent {
|
|
|
7220
7222
|
this.angularPConnectData.actions?.onChange(this, event);
|
|
7221
7223
|
}
|
|
7222
7224
|
fieldOnBlur(event) {
|
|
7223
|
-
|
|
7224
|
-
this.
|
|
7225
|
+
const actionsApi = this.pConn$?.getActionsApi();
|
|
7226
|
+
const propName = (this.pConn$?.getStateProps()).value;
|
|
7227
|
+
handleEvent(actionsApi, 'changeNblur', propName, event?.target?.value);
|
|
7225
7228
|
}
|
|
7226
7229
|
getErrorMessage() {
|
|
7227
7230
|
// field control gets error message from here
|
|
@@ -7398,8 +7401,9 @@ class PercentageComponent {
|
|
|
7398
7401
|
this.angularPConnectData.actions?.onChange(this, event);
|
|
7399
7402
|
}
|
|
7400
7403
|
fieldOnBlur(event) {
|
|
7401
|
-
|
|
7402
|
-
this.
|
|
7404
|
+
const actionsApi = this.pConn$?.getActionsApi();
|
|
7405
|
+
const propName = (this.pConn$?.getStateProps()).value;
|
|
7406
|
+
handleEvent(actionsApi, 'changeNblur', propName, event?.target?.value);
|
|
7403
7407
|
}
|
|
7404
7408
|
getErrorMessage() {
|
|
7405
7409
|
// field control gets error message from here
|
|
@@ -7552,8 +7556,9 @@ class PhoneComponent {
|
|
|
7552
7556
|
}
|
|
7553
7557
|
}
|
|
7554
7558
|
fieldOnBlur(event) {
|
|
7555
|
-
|
|
7556
|
-
this.
|
|
7559
|
+
const actionsApi = this.pConn$?.getActionsApi();
|
|
7560
|
+
const propName = (this.pConn$?.getStateProps()).value;
|
|
7561
|
+
handleEvent(actionsApi, 'changeNblur', propName, event?.target?.value);
|
|
7557
7562
|
}
|
|
7558
7563
|
getErrorMessage() {
|
|
7559
7564
|
let errMessage = '';
|
|
@@ -7716,11 +7721,9 @@ class RadioButtonsComponent {
|
|
|
7716
7721
|
return this.value$ === buttonValue;
|
|
7717
7722
|
}
|
|
7718
7723
|
fieldOnChange(event) {
|
|
7719
|
-
this.
|
|
7720
|
-
|
|
7721
|
-
|
|
7722
|
-
// PConnect wants to use eventHandler for onBlur
|
|
7723
|
-
this.angularPConnectData.actions?.onBlur(this, event);
|
|
7724
|
+
const actionsApi = this.pConn$?.getActionsApi();
|
|
7725
|
+
const propName = (this.pConn$?.getStateProps()).value;
|
|
7726
|
+
handleEvent(actionsApi, 'changeNblur', propName, event?.value);
|
|
7724
7727
|
}
|
|
7725
7728
|
getLocalizedOptionValue(opt) {
|
|
7726
7729
|
return this.pConn$.getLocalizedValue(opt.value, this.localePath,
|
|
@@ -7910,12 +7913,9 @@ class TextAreaComponent {
|
|
|
7910
7913
|
}
|
|
7911
7914
|
}
|
|
7912
7915
|
fieldOnChange(event) {
|
|
7913
|
-
|
|
7914
|
-
this.
|
|
7915
|
-
|
|
7916
|
-
fieldOnBlur(event) {
|
|
7917
|
-
// PConnect wants to use eventHandler for onBlur
|
|
7918
|
-
this.angularPConnectData.actions?.onBlur(this, event);
|
|
7916
|
+
const actionsApi = this.pConn$?.getActionsApi();
|
|
7917
|
+
const propName = (this.pConn$?.getStateProps()).value;
|
|
7918
|
+
handleEvent(actionsApi, 'changeNblur', propName, event?.target?.value);
|
|
7919
7919
|
}
|
|
7920
7920
|
getErrorMessage() {
|
|
7921
7921
|
// field control gets error message from here
|
|
@@ -8247,8 +8247,9 @@ class TextInputComponent {
|
|
|
8247
8247
|
this.angularPConnectData.actions?.onChange(this, event);
|
|
8248
8248
|
}
|
|
8249
8249
|
fieldOnBlur(event) {
|
|
8250
|
-
|
|
8251
|
-
this.
|
|
8250
|
+
const actionsApi = this.pConn$?.getActionsApi();
|
|
8251
|
+
const propName = (this.pConn$?.getStateProps()).value;
|
|
8252
|
+
handleEvent(actionsApi, 'changeNblur', propName, event?.target?.value);
|
|
8252
8253
|
}
|
|
8253
8254
|
getErrorMessage() {
|
|
8254
8255
|
let errMessage = '';
|
|
@@ -8385,9 +8386,9 @@ class TimeComponent {
|
|
|
8385
8386
|
this.angularPConnectData.actions?.onChange(this, event);
|
|
8386
8387
|
}
|
|
8387
8388
|
fieldOnBlur(event) {
|
|
8388
|
-
|
|
8389
|
-
|
|
8390
|
-
|
|
8389
|
+
const actionsApi = this.pConn$?.getActionsApi();
|
|
8390
|
+
const propName = (this.pConn$?.getStateProps()).value;
|
|
8391
|
+
handleEvent(actionsApi, 'changeNblur', propName, event?.target?.value);
|
|
8391
8392
|
}
|
|
8392
8393
|
getErrorMessage() {
|
|
8393
8394
|
let errMessage = '';
|
|
@@ -8524,8 +8525,9 @@ class UrlComponent {
|
|
|
8524
8525
|
this.angularPConnectData.actions?.onChange(this, event);
|
|
8525
8526
|
}
|
|
8526
8527
|
fieldOnBlur(event) {
|
|
8527
|
-
|
|
8528
|
-
this.
|
|
8528
|
+
const actionsApi = this.pConn$?.getActionsApi();
|
|
8529
|
+
const propName = (this.pConn$?.getStateProps()).value;
|
|
8530
|
+
handleEvent(actionsApi, 'changeNblur', propName, event?.target?.value);
|
|
8529
8531
|
}
|
|
8530
8532
|
getErrorMessage() {
|
|
8531
8533
|
let errMessage = '';
|
|
@@ -8669,11 +8671,9 @@ class UserReferenceComponent {
|
|
|
8669
8671
|
const index = this.options$?.findIndex(element => element.value === event.target.value);
|
|
8670
8672
|
key = index > -1 ? (key = this.options$[index].key) : event.target.value;
|
|
8671
8673
|
}
|
|
8672
|
-
const
|
|
8673
|
-
|
|
8674
|
-
|
|
8675
|
-
// PConnect wants to use eventHandler for onBlur
|
|
8676
|
-
this.angularPConnectData.actions?.onChange(this, eve);
|
|
8674
|
+
const actionsApi = this.pConn$?.getActionsApi();
|
|
8675
|
+
const propName = (this.pConn$?.getStateProps()).value;
|
|
8676
|
+
handleEvent(actionsApi, 'changeNblur', propName, key);
|
|
8677
8677
|
}
|
|
8678
8678
|
getErrorMessage() {
|
|
8679
8679
|
let errMessage = '';
|
|
@@ -9656,9 +9656,22 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
9656
9656
|
}]
|
|
9657
9657
|
}] });
|
|
9658
9658
|
|
|
9659
|
+
function areViewsChanged(oldViews, newViews) {
|
|
9660
|
+
if (oldViews.length !== newViews.length) {
|
|
9661
|
+
return true;
|
|
9662
|
+
}
|
|
9663
|
+
return !oldViews.every((oldView, index) => {
|
|
9664
|
+
const newView = newViews[index];
|
|
9665
|
+
return oldView.getPConnect().viewName === newView.getPConnect().viewName;
|
|
9666
|
+
});
|
|
9667
|
+
}
|
|
9659
9668
|
class DefaultFormComponent {
|
|
9660
|
-
constructor(templateUtils) {
|
|
9669
|
+
constructor(angularPConnect, templateUtils) {
|
|
9670
|
+
this.angularPConnect = angularPConnect;
|
|
9661
9671
|
this.templateUtils = templateUtils;
|
|
9672
|
+
// Used with AngularPConnect
|
|
9673
|
+
this.angularPConnectData = {};
|
|
9674
|
+
this.arChildren$ = [];
|
|
9662
9675
|
this.NO_HEADER_TEMPLATES = [
|
|
9663
9676
|
'SubTabs',
|
|
9664
9677
|
'SimpleTable',
|
|
@@ -9671,6 +9684,19 @@ class DefaultFormComponent {
|
|
|
9671
9684
|
];
|
|
9672
9685
|
}
|
|
9673
9686
|
ngOnInit() {
|
|
9687
|
+
// First thing in initialization is registering and subscribing to the AngularPConnect service
|
|
9688
|
+
this.angularPConnectData = this.angularPConnect.registerAndSubscribeComponent(this, this.onStateChange);
|
|
9689
|
+
this.updateSelf();
|
|
9690
|
+
}
|
|
9691
|
+
ngOnDestroy() {
|
|
9692
|
+
if (this.angularPConnectData.unsubscribeFn) {
|
|
9693
|
+
this.angularPConnectData.unsubscribeFn();
|
|
9694
|
+
}
|
|
9695
|
+
}
|
|
9696
|
+
onStateChange() {
|
|
9697
|
+
this.updateSelf();
|
|
9698
|
+
}
|
|
9699
|
+
updateSelf() {
|
|
9674
9700
|
const configProps = this.pConn$.getConfigProps();
|
|
9675
9701
|
this.template = configProps?.template;
|
|
9676
9702
|
const propToUse = { ...this.pConn$.getInheritedProps() };
|
|
@@ -9696,15 +9722,19 @@ class DefaultFormComponent {
|
|
|
9696
9722
|
// repoint children before getting templateArray
|
|
9697
9723
|
// Children may contain 'reference' component, so we need to
|
|
9698
9724
|
// normalize them
|
|
9699
|
-
|
|
9725
|
+
const children = ReferenceComponent.normalizePConnArray(kids[0].getPConnect().getChildren());
|
|
9726
|
+
const visibleChildren = children?.filter(child => child !== undefined) || [];
|
|
9727
|
+
if (areViewsChanged(this.arChildren$, visibleChildren)) {
|
|
9728
|
+
this.arChildren$ = visibleChildren;
|
|
9729
|
+
}
|
|
9700
9730
|
}
|
|
9701
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DefaultFormComponent, deps: [{ token: TemplateUtils }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
9731
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DefaultFormComponent, deps: [{ token: AngularPConnectService }, { token: TemplateUtils }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
9702
9732
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DefaultFormComponent, isStandalone: true, selector: "app-default-form", inputs: { pConn$: "pConn$", formGroup$: "formGroup$" }, ngImport: i0, template: "<!-- When adding a component here, add the same component in 'region' template as well -->\n<div *ngIf=\"!NO_HEADER_TEMPLATES.includes(template) && showLabel\">\n <div class=\"template-title-container\">{{ label }}</div>\n</div>\n<div *ngIf=\"instructions\" class=\"psdk-default-form-instruction-text\">\n <div key=\"instructions\" id=\"instruction-text\" [innerHTML]=\"instructions\"></div>\n</div>\n<div [className]=\"divClass$\">\n <div *ngFor=\"let kid of arChildren$\" [ngClass]=\"{ 'grid-column': kid.getPConnect().getComponentName() === 'View' }\">\n <component-mapper\n [name]=\"kid.getPConnect().getComponentName()\"\n [props]=\"{\n pConn$: kid.getPConnect(),\n formGroup$: formGroup$\n }\"\n errorMsg=\"DefaultForm wants component not yet available: {{ kid.getPConnect().getComponentName() }}\"\n ></component-mapper>\n </div>\n</div>\n", styles: [".psdk-default-form-one-column{display:grid;grid-template-columns:repeat(1,minmax(0,1fr));column-gap:1rem}.psdk-default-form-two-column{display:grid;grid-template-columns:repeat(2,1fr);column-gap:1rem}.psdk-default-form-three-column{display:grid;grid-template-columns:repeat(3,1fr);column-gap:1rem}.psdk-default-form-three-column .grid-column{grid-column:1/span 3}.psdk-default-form-two-column .grid-column{grid-column:1/span 2}.psdk-default-form-one-column .grid-column{grid-column:1}.template-title-container{font-size:.9375rem;font-weight:600;margin:10px 0}.psdk-default-form-instruction-text{padding-top:.625rem;padding-bottom:.625rem}\n"], dependencies: [{ kind: "ngmodule", type: i0.forwardRef(function () { return CommonModule; }) }, { kind: "directive", type: i0.forwardRef(function () { return i3.NgClass; }), selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i0.forwardRef(function () { return i3.NgForOf; }), selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i0.forwardRef(function () { return i3.NgIf; }), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i0.forwardRef(function () { return ComponentMapperComponent; }), selector: "component-mapper", inputs: ["name", "props", "errorMsg", "outputEvents", "parent"] }] }); }
|
|
9703
9733
|
}
|
|
9704
9734
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DefaultFormComponent, decorators: [{
|
|
9705
9735
|
type: Component,
|
|
9706
9736
|
args: [{ selector: 'app-default-form', standalone: true, imports: [CommonModule, forwardRef(() => ComponentMapperComponent)], template: "<!-- When adding a component here, add the same component in 'region' template as well -->\n<div *ngIf=\"!NO_HEADER_TEMPLATES.includes(template) && showLabel\">\n <div class=\"template-title-container\">{{ label }}</div>\n</div>\n<div *ngIf=\"instructions\" class=\"psdk-default-form-instruction-text\">\n <div key=\"instructions\" id=\"instruction-text\" [innerHTML]=\"instructions\"></div>\n</div>\n<div [className]=\"divClass$\">\n <div *ngFor=\"let kid of arChildren$\" [ngClass]=\"{ 'grid-column': kid.getPConnect().getComponentName() === 'View' }\">\n <component-mapper\n [name]=\"kid.getPConnect().getComponentName()\"\n [props]=\"{\n pConn$: kid.getPConnect(),\n formGroup$: formGroup$\n }\"\n errorMsg=\"DefaultForm wants component not yet available: {{ kid.getPConnect().getComponentName() }}\"\n ></component-mapper>\n </div>\n</div>\n", styles: [".psdk-default-form-one-column{display:grid;grid-template-columns:repeat(1,minmax(0,1fr));column-gap:1rem}.psdk-default-form-two-column{display:grid;grid-template-columns:repeat(2,1fr);column-gap:1rem}.psdk-default-form-three-column{display:grid;grid-template-columns:repeat(3,1fr);column-gap:1rem}.psdk-default-form-three-column .grid-column{grid-column:1/span 3}.psdk-default-form-two-column .grid-column{grid-column:1/span 2}.psdk-default-form-one-column .grid-column{grid-column:1}.template-title-container{font-size:.9375rem;font-weight:600;margin:10px 0}.psdk-default-form-instruction-text{padding-top:.625rem;padding-bottom:.625rem}\n"] }]
|
|
9707
|
-
}], ctorParameters: function () { return [{ type: TemplateUtils }]; }, propDecorators: { pConn$: [{
|
|
9737
|
+
}], ctorParameters: function () { return [{ type: AngularPConnectService }, { type: TemplateUtils }]; }, propDecorators: { pConn$: [{
|
|
9708
9738
|
type: Input
|
|
9709
9739
|
}], formGroup$: [{
|
|
9710
9740
|
type: Input
|
|
@@ -10417,7 +10447,7 @@ class FieldGroupTemplateComponent {
|
|
|
10417
10447
|
this.pConn$.setInheritedProp('displayMode', 'LABELS_LEFT');
|
|
10418
10448
|
}
|
|
10419
10449
|
this.referenceList = this.configProps$.referenceList;
|
|
10420
|
-
if (this.prevRefLength != this.referenceList
|
|
10450
|
+
if (this.prevRefLength != this.referenceList?.length) {
|
|
10421
10451
|
// eslint-disable-next-line sonarjs/no-collapsible-if
|
|
10422
10452
|
if (!this.readonlyMode) {
|
|
10423
10453
|
if (this.referenceList?.length === 0 && this.allowAddEdit !== false) {
|
|
@@ -13464,16 +13494,17 @@ function getFieldWidth(field, label) {
|
|
|
13464
13494
|
const getContext = thePConn => {
|
|
13465
13495
|
const contextName = thePConn.getContextName();
|
|
13466
13496
|
const pageReference = thePConn.getPageReference();
|
|
13467
|
-
|
|
13468
|
-
// not always in config of state props
|
|
13469
|
-
let { referenceList } = thePConn.getStateProps()?.config || thePConn.getStateProps();
|
|
13497
|
+
const { readonlyContextList, referenceList = readonlyContextList } = thePConn.getStateProps()?.config || thePConn.getStateProps();
|
|
13470
13498
|
const pageReferenceForRows = referenceList.startsWith('.') ? `${pageReference}.${referenceList.substring(1)}` : referenceList;
|
|
13499
|
+
const viewName = thePConn.viewName;
|
|
13471
13500
|
// removing "caseInfo.content" prefix to avoid setting it as a target while preparing pageInstructions
|
|
13472
|
-
|
|
13501
|
+
// skipping the removal as StateMachine itself is removing this case info prefix while preparing pageInstructions
|
|
13502
|
+
// referenceList = pageReferenceForRows.replace(PCore.getConstants().CASE_INFO.CASE_INFO_CONTENT, '');
|
|
13473
13503
|
return {
|
|
13474
13504
|
contextName,
|
|
13475
13505
|
referenceListStr: referenceList,
|
|
13476
|
-
pageReferenceForRows
|
|
13506
|
+
pageReferenceForRows,
|
|
13507
|
+
viewName
|
|
13477
13508
|
};
|
|
13478
13509
|
};
|
|
13479
13510
|
const populateRowKey = rawData => {
|