@pega/angular-sdk-components 0.242.1 → 0.242.3
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/_components/designSystemExtension/material-details-fields/material-details-fields.component.mjs +7 -4
- package/esm2022/lib/_components/field/auto-complete/auto-complete.component.mjs +9 -7
- package/esm2022/lib/_components/field/check-box/check-box.component.mjs +7 -5
- package/esm2022/lib/_components/field/currency/currency.component.mjs +15 -4
- package/esm2022/lib/_components/field/date/date.component.mjs +17 -37
- package/esm2022/lib/_components/field/date-time/date-time.component.mjs +13 -11
- package/esm2022/lib/_components/field/decimal/decimal.component.mjs +3 -3
- package/esm2022/lib/_components/field/dropdown/dropdown.component.mjs +8 -10
- package/esm2022/lib/_components/field/email/email.component.mjs +11 -4
- package/esm2022/lib/_components/field/group/group.component.mjs +3 -3
- package/esm2022/lib/_components/field/integer/integer.component.mjs +12 -7
- package/esm2022/lib/_components/field/multiselect/multiselect.component.mjs +7 -2
- package/esm2022/lib/_components/field/percentage/percentage.component.mjs +19 -16
- package/esm2022/lib/_components/field/phone/phone.component.mjs +9 -16
- package/esm2022/lib/_components/field/radio-buttons/radio-buttons.component.mjs +6 -8
- package/esm2022/lib/_components/field/rich-text/rich-text.component.mjs +5 -6
- package/esm2022/lib/_components/field/scalar-list/scalar-list.component.mjs +3 -3
- package/esm2022/lib/_components/field/text/text.component.mjs +4 -2
- package/esm2022/lib/_components/field/text-area/text-area.component.mjs +12 -8
- package/esm2022/lib/_components/field/text-input/text-input.component.mjs +12 -7
- package/esm2022/lib/_components/field/time/time.component.mjs +18 -9
- package/esm2022/lib/_components/field/url/url.component.mjs +12 -7
- package/esm2022/lib/_components/field/user-reference/user-reference.component.mjs +8 -5
- package/esm2022/lib/_components/infra/Containers/flow-container/flow-container.component.mjs +8 -5
- package/esm2022/lib/_components/infra/Containers/view-container/view-container.component.mjs +14 -11
- package/esm2022/lib/_components/infra/defer-load/defer-load.component.mjs +2 -2
- package/esm2022/lib/_components/infra/root-container/root-container.component.mjs +3 -1
- package/esm2022/lib/_components/infra/stages/stages.component.mjs +3 -3
- package/esm2022/lib/_components/infra/view/view.component.mjs +3 -3
- package/esm2022/lib/_components/template/data-reference/data-reference.component.mjs +2 -2
- package/esm2022/lib/_components/template/default-form/default-form.component.mjs +5 -3
- package/esm2022/lib/_components/template/details/details.component.mjs +2 -2
- package/esm2022/lib/_components/template/details-one-column/details-one-column.component.mjs +2 -2
- package/esm2022/lib/_components/template/details-three-column/details-three-column.component.mjs +2 -2
- package/esm2022/lib/_components/template/details-two-column/details-two-column.component.mjs +3 -3
- package/esm2022/lib/_components/template/details-wide-narrow/details-wide-narrow.component.mjs +2 -2
- package/esm2022/lib/_components/template/dynamic-tabs/dynamic-tabs.component.mjs +2 -2
- package/esm2022/lib/_components/template/field-group-template/field-group-template.component.mjs +3 -3
- package/esm2022/lib/_components/template/field-value-list/field-value-list.component.mjs +3 -3
- package/esm2022/lib/_components/template/form-template-base/form-template-base.component.mjs +13 -0
- package/esm2022/lib/_components/template/list-view/list-view.component.mjs +2 -2
- package/esm2022/lib/_components/template/one-column/one-column.component.mjs +5 -4
- package/esm2022/lib/_components/template/page/page.component.mjs +3 -1
- package/esm2022/lib/_components/template/simple-table-manual/helpers.mjs +2 -2
- package/esm2022/lib/_components/template/three-column/three-column.component.mjs +5 -4
- package/esm2022/lib/_components/template/two-column/two-column.component.mjs +5 -4
- package/esm2022/lib/_components/template/wide-narrow-form/wide-narrow-form.component.mjs +5 -4
- package/esm2022/lib/_helpers/field-group-utils.mjs +3 -3
- package/esm2022/lib/_helpers/formatters/common.mjs +3 -5
- package/esm2022/lib/_helpers/formatters/date.mjs +4 -4
- package/esm2022/lib/_helpers/formatters/index.mjs +17 -3
- package/esm2022/public-api.mjs +3 -1
- package/fesm2022/pega-angular-sdk-components.mjs +528 -473
- package/fesm2022/pega-angular-sdk-components.mjs.map +1 -1
- package/lib/_components/designSystemExtension/material-details-fields/material-details-fields.component.d.ts +1 -1
- package/lib/_components/field/auto-complete/auto-complete.component.d.ts +3 -2
- package/lib/_components/field/check-box/check-box.component.d.ts +2 -2
- package/lib/_components/field/currency/currency.component.d.ts +3 -0
- package/lib/_components/field/date/date.component.d.ts +3 -2
- package/lib/_components/field/date-time/date-time.component.d.ts +3 -1
- package/lib/_components/field/dropdown/dropdown.component.d.ts +2 -1
- package/lib/_components/field/email/email.component.d.ts +2 -0
- package/lib/_components/field/integer/integer.component.d.ts +3 -1
- package/lib/_components/field/multiselect/multiselect.component.d.ts +3 -2
- package/lib/_components/field/percentage/percentage.component.d.ts +5 -1
- package/lib/_components/field/phone/phone.component.d.ts +3 -1
- package/lib/_components/field/radio-buttons/radio-buttons.component.d.ts +2 -1
- package/lib/_components/field/rich-text/rich-text.component.d.ts +2 -0
- package/lib/_components/field/text/text.component.d.ts +3 -1
- package/lib/_components/field/text-area/text-area.component.d.ts +3 -1
- package/lib/_components/field/text-input/text-input.component.d.ts +3 -1
- package/lib/_components/field/time/time.component.d.ts +4 -1
- package/lib/_components/field/url/url.component.d.ts +3 -1
- package/lib/_components/field/user-reference/user-reference.component.d.ts +2 -0
- package/lib/_components/template/default-form/default-form.component.d.ts +2 -1
- package/lib/_components/template/form-template-base/form-template-base.component.d.ts +8 -0
- package/lib/_components/template/one-column/one-column.component.d.ts +2 -1
- package/lib/_components/template/three-column/three-column.component.d.ts +2 -1
- package/lib/_components/template/two-column/two-column.component.d.ts +2 -1
- package/lib/_components/template/wide-narrow-form/wide-narrow-form.component.d.ts +2 -1
- package/lib/_helpers/formatters/common.d.ts +1 -1
- package/package.json +1 -1
- package/public-api.d.ts +2 -0
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { EventEmitter, Component, Input, Output, forwardRef, Injectable, Inject, ViewChild, ViewContainerRef,
|
|
2
|
+
import { EventEmitter, Component, Input, Output, forwardRef, Injectable, Inject, Directive, ViewChild, ViewContainerRef, HostListener } from '@angular/core';
|
|
3
3
|
import * as i3 from '@angular/common';
|
|
4
4
|
import { CommonModule } from '@angular/common';
|
|
5
5
|
import * as i3$1 from '@angular/material/button';
|
|
@@ -44,9 +44,9 @@ import { HttpHeaders, HttpParams } from '@angular/common/http';
|
|
|
44
44
|
import * as i5$3 from '@angular/material/checkbox';
|
|
45
45
|
import { MatCheckboxModule } from '@angular/material/checkbox';
|
|
46
46
|
import { NgxCurrencyInputMode, NgxCurrencyDirective } from 'ngx-currency';
|
|
47
|
-
import { MomentDateModule } from '@angular/material-moment-adapter';
|
|
48
47
|
import utc from 'dayjs/plugin/utc';
|
|
49
48
|
import tzone from 'dayjs/plugin/timezone';
|
|
49
|
+
import { MomentDateModule } from '@angular/material-moment-adapter';
|
|
50
50
|
import * as i8$1 from '@danielmoncada/angular-datetime-picker';
|
|
51
51
|
import { OwlDateTimeModule, OwlNativeDateTimeModule } from '@danielmoncada/angular-datetime-picker';
|
|
52
52
|
import * as i6$2 from '@angular/material/select';
|
|
@@ -1790,7 +1790,7 @@ class DeferLoadComponent {
|
|
|
1790
1790
|
}
|
|
1791
1791
|
};
|
|
1792
1792
|
const configObject = PCore.createPConnect(config);
|
|
1793
|
-
configObject.getPConnect().setInheritedProp('displayMode', '
|
|
1793
|
+
configObject.getPConnect().setInheritedProp('displayMode', 'DISPLAY_ONLY');
|
|
1794
1794
|
this.loadedPConn$ = ReferenceComponent.normalizePConn(configObject.getPConnect());
|
|
1795
1795
|
this.componentName$ = this.loadedPConn$.getComponentName();
|
|
1796
1796
|
if (this.deferLoadId) {
|
|
@@ -2056,6 +2056,7 @@ class FlowContainerComponent extends FlowContainerBaseComponent {
|
|
|
2056
2056
|
// with init, force children to be loaded of global pConn
|
|
2057
2057
|
this.initComponent(true);
|
|
2058
2058
|
this.initContainer();
|
|
2059
|
+
this.checkAndUpdate();
|
|
2059
2060
|
PCore.getPubSubUtils().subscribe(PCore.getConstants().PUB_SUB_EVENTS.EVENT_CANCEL, () => {
|
|
2060
2061
|
this.handleCancel();
|
|
2061
2062
|
}, 'cancelAssignment');
|
|
@@ -2339,7 +2340,9 @@ class FlowContainerComponent extends FlowContainerBaseComponent {
|
|
|
2339
2340
|
}
|
|
2340
2341
|
showCaseMessages() {
|
|
2341
2342
|
this.caseMessages$ = this.localizedVal(this.pConn$.getValue('caseMessages'), this.localeCategory);
|
|
2342
|
-
|
|
2343
|
+
// caseMessages's behavior has changed in 24.2, and hence it doesn't let Optional Action work.
|
|
2344
|
+
// Changing the below condition for now. Was: (theCaseMessages || !hasAssignments())
|
|
2345
|
+
if (!this.hasAssignments()) {
|
|
2343
2346
|
this.bHasCaseMessages$ = true;
|
|
2344
2347
|
this.bShowConfirm = true;
|
|
2345
2348
|
this.checkSvg$ = this.utils.getImageSrc('check', this.utils.getSDKStaticContentUrl());
|
|
@@ -2360,6 +2363,7 @@ class FlowContainerComponent extends FlowContainerBaseComponent {
|
|
|
2360
2363
|
updateFlowContainerChildren() {
|
|
2361
2364
|
// routingInfo was added as component prop in populateAdditionalProps
|
|
2362
2365
|
const routingInfo = this.angularPConnect.getComponentProp(this, 'routingInfo');
|
|
2366
|
+
this.confirm_pconn = null;
|
|
2363
2367
|
let loadingInfo;
|
|
2364
2368
|
try {
|
|
2365
2369
|
// @ts-ignore - Property 'getLoadingStatus' is private and only accessible within class 'C11nEnv'
|
|
@@ -2454,7 +2458,6 @@ class FlowContainerComponent extends FlowContainerBaseComponent {
|
|
|
2454
2458
|
control.markAsTouched();
|
|
2455
2459
|
});
|
|
2456
2460
|
}
|
|
2457
|
-
// eslint-disable-next-line sonarjs/no-identical-functions
|
|
2458
2461
|
topViewRefresh() {
|
|
2459
2462
|
Object.values(this.formGroup$.controls).forEach(control => {
|
|
2460
2463
|
control.markAsTouched();
|
|
@@ -2486,11 +2489,11 @@ class FlowContainerComponent extends FlowContainerBaseComponent {
|
|
|
2486
2489
|
});
|
|
2487
2490
|
}
|
|
2488
2491
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: FlowContainerComponent, deps: [{ token: i0.Injector }, { token: i0.ChangeDetectorRef }, { token: ProgressSpinnerService }, { token: i4.FormBuilder }, { token: i0.NgZone }, { token: Utils }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
2489
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: FlowContainerComponent, isStandalone: true, selector: "app-flow-container", inputs: { pConn$: "pConn$" }, providers: [Utils], usesInheritance: true, ngImport: i0, template: "<div style=\"text-align: left\" class=\"psdk-flow-container-top\">\n <div *ngIf=\"!bShowConfirm\">\n <div *ngIf=\"!todo_showTodo$\">\n <h2>{{ containerName$ }}</h2>\n <div *ngIf=\"banners?.length\">\n <component-mapper name=\"AlertBanner\" [props]=\"{ banners }\"></component-mapper>\n </div>\n </div>\n <div *ngIf=\"todo_showTodo$\">\n <component-mapper\n *ngIf=\"pConnectOfActiveContainerItem\"\n name=\"Todo\"\n [props]=\"{\n pConn$: pConnectOfActiveContainerItem,\n caseInfoID$: todo_caseInfoID$,\n datasource$: todo_datasource$,\n showTodoList$: todo_showTodoList$,\n headerText$: todo_headerText$,\n type$: 'TODO',\n context$: todo_context$,\n isConfirm: true\n }\"\n ></component-mapper>\n </div>\n <div *ngIf=\"!todo_showTodo$\">\n <component-mapper\n *ngIf=\"pConnectOfActiveContainerItem\"\n name=\"Assignment\"\n [props]=\"{ pConn$: pConnectOfActiveContainerItem, formGroup$, arChildren$, itemKey$ }\"\n ></component-mapper>\n </div>\n </div>\n <div *ngIf=\"bHasCaseMessages$\">\n <mat-card class=\"psdk-message-card\">\n <div style=\"display: flex; flex-direction: row\">\n <div><img class=\"psdk-icon\" src=\"{{ checkSvg$ }}\" /></div>\n <div>{{ caseMessages$ }}</div>\n </div>\n </mat-card>\n </div>\n <div *ngIf=\"bShowBanner && bShowConfirm\">\n <component-mapper name=\"View\" [props]=\"{ formGroup$, pConn$: confirm_pconn }\"></component-mapper>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: i0.forwardRef(() => CommonModule) }, { kind: "directive", type: i0.forwardRef(() => i3.NgIf), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: i0.forwardRef(() => MatCardModule) }, { kind: "component", type: i0.forwardRef(() => i5$1.MatCard), selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "component", type: i0.forwardRef(() => ComponentMapperComponent), selector: "component-mapper", inputs: ["name", "props", "errorMsg", "outputEvents", "parent"] }] }); }
|
|
2492
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: FlowContainerComponent, isStandalone: true, selector: "app-flow-container", inputs: { pConn$: "pConn$" }, providers: [Utils], usesInheritance: true, ngImport: i0, template: "<div style=\"text-align: left\" class=\"psdk-flow-container-top\">\n <div *ngIf=\"!bShowConfirm\">\n <div *ngIf=\"!todo_showTodo$\">\n <h2>{{ containerName$ }}</h2>\n <div *ngIf=\"banners?.length\">\n <component-mapper name=\"AlertBanner\" [props]=\"{ banners }\"></component-mapper>\n </div>\n </div>\n <div *ngIf=\"todo_showTodo$\">\n <component-mapper\n *ngIf=\"pConnectOfActiveContainerItem\"\n name=\"Todo\"\n [props]=\"{\n pConn$: pConnectOfActiveContainerItem,\n caseInfoID$: todo_caseInfoID$,\n datasource$: todo_datasource$,\n showTodoList$: todo_showTodoList$,\n headerText$: todo_headerText$,\n type$: 'TODO',\n context$: todo_context$,\n isConfirm: true\n }\"\n ></component-mapper>\n </div>\n <div *ngIf=\"!todo_showTodo$\">\n <component-mapper\n *ngIf=\"pConnectOfActiveContainerItem\"\n name=\"Assignment\"\n [props]=\"{ pConn$: pConnectOfActiveContainerItem, formGroup$, arChildren$, itemKey$ }\"\n ></component-mapper>\n </div>\n </div>\n <div *ngIf=\"bHasCaseMessages$\">\n <mat-card class=\"psdk-message-card\">\n <div style=\"display: flex; flex-direction: row\">\n <div><img class=\"psdk-icon\" src=\"{{ checkSvg$ }}\" /></div>\n <div>{{ caseMessages$ }}</div>\n </div>\n </mat-card>\n </div>\n <div *ngIf=\"bShowBanner && bShowConfirm && confirm_pconn\">\n <component-mapper name=\"View\" [props]=\"{ formGroup$, pConn$: confirm_pconn }\"></component-mapper>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: i0.forwardRef(() => CommonModule) }, { kind: "directive", type: i0.forwardRef(() => i3.NgIf), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: i0.forwardRef(() => MatCardModule) }, { kind: "component", type: i0.forwardRef(() => i5$1.MatCard), selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "component", type: i0.forwardRef(() => ComponentMapperComponent), selector: "component-mapper", inputs: ["name", "props", "errorMsg", "outputEvents", "parent"] }] }); }
|
|
2490
2493
|
}
|
|
2491
2494
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: FlowContainerComponent, decorators: [{
|
|
2492
2495
|
type: Component,
|
|
2493
|
-
args: [{ selector: 'app-flow-container', providers: [Utils], standalone: true, imports: [CommonModule, MatCardModule, forwardRef(() => ComponentMapperComponent)], template: "<div style=\"text-align: left\" class=\"psdk-flow-container-top\">\n <div *ngIf=\"!bShowConfirm\">\n <div *ngIf=\"!todo_showTodo$\">\n <h2>{{ containerName$ }}</h2>\n <div *ngIf=\"banners?.length\">\n <component-mapper name=\"AlertBanner\" [props]=\"{ banners }\"></component-mapper>\n </div>\n </div>\n <div *ngIf=\"todo_showTodo$\">\n <component-mapper\n *ngIf=\"pConnectOfActiveContainerItem\"\n name=\"Todo\"\n [props]=\"{\n pConn$: pConnectOfActiveContainerItem,\n caseInfoID$: todo_caseInfoID$,\n datasource$: todo_datasource$,\n showTodoList$: todo_showTodoList$,\n headerText$: todo_headerText$,\n type$: 'TODO',\n context$: todo_context$,\n isConfirm: true\n }\"\n ></component-mapper>\n </div>\n <div *ngIf=\"!todo_showTodo$\">\n <component-mapper\n *ngIf=\"pConnectOfActiveContainerItem\"\n name=\"Assignment\"\n [props]=\"{ pConn$: pConnectOfActiveContainerItem, formGroup$, arChildren$, itemKey$ }\"\n ></component-mapper>\n </div>\n </div>\n <div *ngIf=\"bHasCaseMessages$\">\n <mat-card class=\"psdk-message-card\">\n <div style=\"display: flex; flex-direction: row\">\n <div><img class=\"psdk-icon\" src=\"{{ checkSvg$ }}\" /></div>\n <div>{{ caseMessages$ }}</div>\n </div>\n </mat-card>\n </div>\n <div *ngIf=\"bShowBanner && bShowConfirm\">\n <component-mapper name=\"View\" [props]=\"{ formGroup$, pConn$: confirm_pconn }\"></component-mapper>\n </div>\n</div>\n" }]
|
|
2496
|
+
args: [{ selector: 'app-flow-container', providers: [Utils], standalone: true, imports: [CommonModule, MatCardModule, forwardRef(() => ComponentMapperComponent)], template: "<div style=\"text-align: left\" class=\"psdk-flow-container-top\">\n <div *ngIf=\"!bShowConfirm\">\n <div *ngIf=\"!todo_showTodo$\">\n <h2>{{ containerName$ }}</h2>\n <div *ngIf=\"banners?.length\">\n <component-mapper name=\"AlertBanner\" [props]=\"{ banners }\"></component-mapper>\n </div>\n </div>\n <div *ngIf=\"todo_showTodo$\">\n <component-mapper\n *ngIf=\"pConnectOfActiveContainerItem\"\n name=\"Todo\"\n [props]=\"{\n pConn$: pConnectOfActiveContainerItem,\n caseInfoID$: todo_caseInfoID$,\n datasource$: todo_datasource$,\n showTodoList$: todo_showTodoList$,\n headerText$: todo_headerText$,\n type$: 'TODO',\n context$: todo_context$,\n isConfirm: true\n }\"\n ></component-mapper>\n </div>\n <div *ngIf=\"!todo_showTodo$\">\n <component-mapper\n *ngIf=\"pConnectOfActiveContainerItem\"\n name=\"Assignment\"\n [props]=\"{ pConn$: pConnectOfActiveContainerItem, formGroup$, arChildren$, itemKey$ }\"\n ></component-mapper>\n </div>\n </div>\n <div *ngIf=\"bHasCaseMessages$\">\n <mat-card class=\"psdk-message-card\">\n <div style=\"display: flex; flex-direction: row\">\n <div><img class=\"psdk-icon\" src=\"{{ checkSvg$ }}\" /></div>\n <div>{{ caseMessages$ }}</div>\n </div>\n </mat-card>\n </div>\n <div *ngIf=\"bShowBanner && bShowConfirm && confirm_pconn\">\n <component-mapper name=\"View\" [props]=\"{ formGroup$, pConn$: confirm_pconn }\"></component-mapper>\n </div>\n</div>\n" }]
|
|
2494
2497
|
}], ctorParameters: () => [{ type: i0.Injector }, { type: i0.ChangeDetectorRef }, { type: ProgressSpinnerService }, { type: i4.FormBuilder }, { type: i0.NgZone }, { type: Utils }], propDecorators: { pConn$: [{
|
|
2495
2498
|
type: Input
|
|
2496
2499
|
}] } });
|
|
@@ -3222,6 +3225,8 @@ class RootContainerComponent {
|
|
|
3222
3225
|
context: myContext
|
|
3223
3226
|
}
|
|
3224
3227
|
});
|
|
3228
|
+
// clear out hasViewContainer
|
|
3229
|
+
sessionStorage.setItem('hasViewContainer', 'false');
|
|
3225
3230
|
this.mConn$ = configObjModal.getPConnect();
|
|
3226
3231
|
// First thing in initialization is registering and subscribing to the AngularPConnect service
|
|
3227
3232
|
this.angularPConnectData = this.angularPConnect.registerAndSubscribeComponent(this, this.onStateChange);
|
|
@@ -3428,11 +3433,11 @@ class StagesComponent {
|
|
|
3428
3433
|
});
|
|
3429
3434
|
}
|
|
3430
3435
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: StagesComponent, deps: [{ token: AngularPConnectService }, { token: Utils }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
3431
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: StagesComponent, isStandalone: true, selector: "app-stages", inputs: { pConn$: "pConn$" }, ngImport: i0, template: "<div class=\"psdk-stages-bar\">\n <div class=\"psdk-stages-chevron\" *ngFor=\"let stage of arStageResults$\">\n <div *ngIf=\"stage.visited_status == 'completed'\" class=\"psdk-stages-inner-past\">\n <img class=\"psdk-stages-icon\" src=\"{{ checkSvgIcon$ }}\" />{{ PCore$.getLocaleUtils().getLocaleValue(stage.name, '', key) }}\n </div>\n <div *ngIf=\"stage.visited_status == 'active'\" class=\"psdk-stages-inner-present\">\n {{ PCore$.getLocaleUtils().getLocaleValue(stage.name, '', key) }}\n </div>\n <div *ngIf=\"stage.visited_status == 'future'\" class=\"psdk-stages-inner-future\">\n {{ PCore$.getLocaleUtils().getLocaleValue(stage.name, '', key) }}\n </div>\n </div>\n</div>\n\n<div class=\"psdk-stages-divider\"></div>\n", styles: [".psdk-stages{padding:.625rem 0rem}.psdk-stages-span span{padding:.3125rem;font-weight:700;font-size:1.5rem}.psdk-stages-div{display:inline-flex;padding:.3125rem;font-weight:700;font-size:1.3rem;color:var(--app-neutral-color)}.psdk-stages-past{color:var(--app-primary-color);padding-right:.3125rem}.psdk-stages-present{color:var(--app-secondary-color);padding-right:.3125rem}.psdk-stages-future{color:var(--app-neutral-color);padding-right:.3125rem}.psdk-stages-full{display:block}.psdk-stages-divider{border-bottom:.0625rem solid var(--app-neutral-light-color)}.psdk-stages-icon{width:1.4rem;display:inline-block;vertical-align:top}.psdk-stages-bar{margin:1rem 0rem;background-color:var(--app-form-color);border-radius:.5rem;border:.0625rem solid var(--app-neutral-light-color);overflow:hidden;
|
|
3436
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: StagesComponent, isStandalone: true, selector: "app-stages", inputs: { pConn$: "pConn$" }, ngImport: i0, template: "<div class=\"psdk-stages-bar\">\n <div class=\"psdk-stages-chevron\" *ngFor=\"let stage of arStageResults$\">\n <div *ngIf=\"stage.visited_status == 'completed'\" class=\"psdk-stages-inner-past\">\n <img class=\"psdk-stages-icon\" src=\"{{ checkSvgIcon$ }}\" />{{ PCore$.getLocaleUtils().getLocaleValue(stage.name, '', key) }}\n </div>\n <div *ngIf=\"stage.visited_status == 'active'\" class=\"psdk-stages-inner-present\">\n {{ PCore$.getLocaleUtils().getLocaleValue(stage.name, '', key) }}\n </div>\n <div *ngIf=\"stage.visited_status == 'future'\" class=\"psdk-stages-inner-future\">\n {{ PCore$.getLocaleUtils().getLocaleValue(stage.name, '', key) }}\n </div>\n </div>\n</div>\n\n<div class=\"psdk-stages-divider\"></div>\n", styles: [".psdk-stages{padding:.625rem 0rem}.psdk-stages-span span{padding:.3125rem;font-weight:700;font-size:1.5rem}.psdk-stages-div{display:inline-flex;padding:.3125rem;font-weight:700;font-size:1.3rem;color:var(--app-neutral-color)}.psdk-stages-past{color:var(--app-primary-color);padding-right:.3125rem}.psdk-stages-present{color:var(--app-secondary-color);padding-right:.3125rem}.psdk-stages-future{color:var(--app-neutral-color);padding-right:.3125rem}.psdk-stages-full{display:block}.psdk-stages-divider{border-bottom:.0625rem solid var(--app-neutral-light-color)}.psdk-stages-icon{width:1.4rem;display:inline-block;vertical-align:top}.psdk-stages-bar{margin:1rem 0rem;background-color:var(--app-form-color);border-radius:.5rem;border:.0625rem solid var(--app-neutral-light-color);overflow:hidden;display:flex;flex-wrap:wrap}.psdk-stages-chevron{position:relative;padding:.5rem;display:flex;justify-content:center;align-items:center;max-width:100%;min-width:0px;flex-grow:1;flex-shrink:1}.psdk-stages-chevron:not(:last-child):after{content:\"\";position:absolute;display:block;z-index:2;width:1.75rem;right:-.4375rem;background:inherit;border-style:solid;border-color:#cfcfcf;border-width:.0625rem .0625rem 0px 0px;border-radius:0px .3125rem 0px 0px;transform:rotate(45deg) skew(15deg,15deg);height:2rem}.psdk-stages-inner-past{color:var(--app-inverse-form-color);font-size:1rem}.psdk-stages-inner-present{color:var(--app-primary-color);font-weight:700;font-size:1rem}.psdk-stages-inner-future{color:var(--app-neutral-color);font-size:1rem}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
|
|
3432
3437
|
}
|
|
3433
3438
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: StagesComponent, decorators: [{
|
|
3434
3439
|
type: Component,
|
|
3435
|
-
args: [{ selector: 'app-stages', standalone: true, imports: [CommonModule], template: "<div class=\"psdk-stages-bar\">\n <div class=\"psdk-stages-chevron\" *ngFor=\"let stage of arStageResults$\">\n <div *ngIf=\"stage.visited_status == 'completed'\" class=\"psdk-stages-inner-past\">\n <img class=\"psdk-stages-icon\" src=\"{{ checkSvgIcon$ }}\" />{{ PCore$.getLocaleUtils().getLocaleValue(stage.name, '', key) }}\n </div>\n <div *ngIf=\"stage.visited_status == 'active'\" class=\"psdk-stages-inner-present\">\n {{ PCore$.getLocaleUtils().getLocaleValue(stage.name, '', key) }}\n </div>\n <div *ngIf=\"stage.visited_status == 'future'\" class=\"psdk-stages-inner-future\">\n {{ PCore$.getLocaleUtils().getLocaleValue(stage.name, '', key) }}\n </div>\n </div>\n</div>\n\n<div class=\"psdk-stages-divider\"></div>\n", styles: [".psdk-stages{padding:.625rem 0rem}.psdk-stages-span span{padding:.3125rem;font-weight:700;font-size:1.5rem}.psdk-stages-div{display:inline-flex;padding:.3125rem;font-weight:700;font-size:1.3rem;color:var(--app-neutral-color)}.psdk-stages-past{color:var(--app-primary-color);padding-right:.3125rem}.psdk-stages-present{color:var(--app-secondary-color);padding-right:.3125rem}.psdk-stages-future{color:var(--app-neutral-color);padding-right:.3125rem}.psdk-stages-full{display:block}.psdk-stages-divider{border-bottom:.0625rem solid var(--app-neutral-light-color)}.psdk-stages-icon{width:1.4rem;display:inline-block;vertical-align:top}.psdk-stages-bar{margin:1rem 0rem;background-color:var(--app-form-color);border-radius:.5rem;border:.0625rem solid var(--app-neutral-light-color);overflow:hidden;
|
|
3440
|
+
args: [{ selector: 'app-stages', standalone: true, imports: [CommonModule], template: "<div class=\"psdk-stages-bar\">\n <div class=\"psdk-stages-chevron\" *ngFor=\"let stage of arStageResults$\">\n <div *ngIf=\"stage.visited_status == 'completed'\" class=\"psdk-stages-inner-past\">\n <img class=\"psdk-stages-icon\" src=\"{{ checkSvgIcon$ }}\" />{{ PCore$.getLocaleUtils().getLocaleValue(stage.name, '', key) }}\n </div>\n <div *ngIf=\"stage.visited_status == 'active'\" class=\"psdk-stages-inner-present\">\n {{ PCore$.getLocaleUtils().getLocaleValue(stage.name, '', key) }}\n </div>\n <div *ngIf=\"stage.visited_status == 'future'\" class=\"psdk-stages-inner-future\">\n {{ PCore$.getLocaleUtils().getLocaleValue(stage.name, '', key) }}\n </div>\n </div>\n</div>\n\n<div class=\"psdk-stages-divider\"></div>\n", styles: [".psdk-stages{padding:.625rem 0rem}.psdk-stages-span span{padding:.3125rem;font-weight:700;font-size:1.5rem}.psdk-stages-div{display:inline-flex;padding:.3125rem;font-weight:700;font-size:1.3rem;color:var(--app-neutral-color)}.psdk-stages-past{color:var(--app-primary-color);padding-right:.3125rem}.psdk-stages-present{color:var(--app-secondary-color);padding-right:.3125rem}.psdk-stages-future{color:var(--app-neutral-color);padding-right:.3125rem}.psdk-stages-full{display:block}.psdk-stages-divider{border-bottom:.0625rem solid var(--app-neutral-light-color)}.psdk-stages-icon{width:1.4rem;display:inline-block;vertical-align:top}.psdk-stages-bar{margin:1rem 0rem;background-color:var(--app-form-color);border-radius:.5rem;border:.0625rem solid var(--app-neutral-light-color);overflow:hidden;display:flex;flex-wrap:wrap}.psdk-stages-chevron{position:relative;padding:.5rem;display:flex;justify-content:center;align-items:center;max-width:100%;min-width:0px;flex-grow:1;flex-shrink:1}.psdk-stages-chevron:not(:last-child):after{content:\"\";position:absolute;display:block;z-index:2;width:1.75rem;right:-.4375rem;background:inherit;border-style:solid;border-color:#cfcfcf;border-width:.0625rem .0625rem 0px 0px;border-radius:0px .3125rem 0px 0px;transform:rotate(45deg) skew(15deg,15deg);height:2rem}.psdk-stages-inner-past{color:var(--app-inverse-form-color);font-size:1rem}.psdk-stages-inner-present{color:var(--app-primary-color);font-weight:700;font-size:1rem}.psdk-stages-inner-future{color:var(--app-neutral-color);font-size:1rem}\n"] }]
|
|
3436
3441
|
}], ctorParameters: () => [{ type: AngularPConnectService }, { type: Utils }], propDecorators: { pConn$: [{
|
|
3437
3442
|
type: Input
|
|
3438
3443
|
}] } });
|
|
@@ -3727,11 +3732,11 @@ class ViewComponent {
|
|
|
3727
3732
|
}
|
|
3728
3733
|
}
|
|
3729
3734
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: ViewComponent, deps: [{ token: AngularPConnectService }, { token: Utils }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
3730
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: ViewComponent, isStandalone: true, selector: "app-view", inputs: { pConn$: "pConn$", formGroup$: "formGroup$", displayOnlyFA$: "displayOnlyFA$" }, usesOnChanges: true, ngImport: i0, template: "<div *ngIf=\"visibility$ !== false\" class=\"ng-view-top\">\n <div *ngIf=\"showLabel$ && label$ && templateName$ !== 'SimpleTable' && templateName$ !== 'DefaultForm'\" class=\"template-title-container\">\n <span>{{ label$ }}</span>\n </div>\n\n <ng-container *ngIf=\"templateName$; else noTemplate\">\n <div>\n <component-mapper\n [name]=\"templateName$\"\n [props]=\"{ formGroup$, pConn$, displayOnlyFA$ }\"\n errorMsg=\"View template not recognized: [{{ templateName$ }}]\"\n ></component-mapper>\n </div>\n </ng-container>\n\n <ng-template #noTemplate>\n <div *
|
|
3735
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: ViewComponent, isStandalone: true, selector: "app-view", inputs: { pConn$: "pConn$", formGroup$: "formGroup$", displayOnlyFA$: "displayOnlyFA$" }, usesOnChanges: true, ngImport: i0, template: "<div *ngIf=\"visibility$ !== false\" class=\"ng-view-top\">\n <div *ngIf=\"showLabel$ && label$ && templateName$ !== 'SimpleTable' && templateName$ !== 'DefaultForm'\" class=\"template-title-container\">\n <span>{{ label$ }}</span>\n </div>\n\n <ng-container *ngIf=\"templateName$; else noTemplate\">\n <div>\n <component-mapper\n [name]=\"templateName$\"\n [props]=\"{ formGroup$, pConn$, displayOnlyFA$ }\"\n errorMsg=\"View template not recognized: [{{ templateName$ }}]\"\n ></component-mapper>\n </div>\n </ng-container>\n\n <ng-template #noTemplate>\n <div *ngFor=\"let kid of arChildren$\">\n <component-mapper\n [name]=\"kid.getPConnect().getComponentName()\"\n [props]=\"{ pConn$: kid.getPConnect() }\"\n errorMsg=\"View Missing (displayAll): {{ kid.getPConnect().getComponentName() }}\"\n ></component-mapper>\n </div>\n </ng-template>\n</div>\n", styles: ["h3{margin-left:.8rem}.ng-view-top{padding:0}.template-title-container{display:flex;justify-content:space-between;align-items:center;font-size:.9375rem;font-weight:600;padding:1rem 0}\n"], dependencies: [{ kind: "ngmodule", type: i0.forwardRef(() => CommonModule) }, { kind: "directive", type: i0.forwardRef(() => i3.NgForOf), selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i0.forwardRef(() => i3.NgIf), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i0.forwardRef(() => ComponentMapperComponent), selector: "component-mapper", inputs: ["name", "props", "errorMsg", "outputEvents", "parent"] }] }); }
|
|
3731
3736
|
}
|
|
3732
3737
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: ViewComponent, decorators: [{
|
|
3733
3738
|
type: Component,
|
|
3734
|
-
args: [{ selector: 'app-view', standalone: true, imports: [CommonModule, forwardRef(() => ComponentMapperComponent)], template: "<div *ngIf=\"visibility$ !== false\" class=\"ng-view-top\">\n <div *ngIf=\"showLabel$ && label$ && templateName$ !== 'SimpleTable' && templateName$ !== 'DefaultForm'\" class=\"template-title-container\">\n <span>{{ label$ }}</span>\n </div>\n\n <ng-container *ngIf=\"templateName$; else noTemplate\">\n <div>\n <component-mapper\n [name]=\"templateName$\"\n [props]=\"{ formGroup$, pConn$, displayOnlyFA$ }\"\n errorMsg=\"View template not recognized: [{{ templateName$ }}]\"\n ></component-mapper>\n </div>\n </ng-container>\n\n <ng-template #noTemplate>\n <div *
|
|
3739
|
+
args: [{ selector: 'app-view', standalone: true, imports: [CommonModule, forwardRef(() => ComponentMapperComponent)], template: "<div *ngIf=\"visibility$ !== false\" class=\"ng-view-top\">\n <div *ngIf=\"showLabel$ && label$ && templateName$ !== 'SimpleTable' && templateName$ !== 'DefaultForm'\" class=\"template-title-container\">\n <span>{{ label$ }}</span>\n </div>\n\n <ng-container *ngIf=\"templateName$; else noTemplate\">\n <div>\n <component-mapper\n [name]=\"templateName$\"\n [props]=\"{ formGroup$, pConn$, displayOnlyFA$ }\"\n errorMsg=\"View template not recognized: [{{ templateName$ }}]\"\n ></component-mapper>\n </div>\n </ng-container>\n\n <ng-template #noTemplate>\n <div *ngFor=\"let kid of arChildren$\">\n <component-mapper\n [name]=\"kid.getPConnect().getComponentName()\"\n [props]=\"{ pConn$: kid.getPConnect() }\"\n errorMsg=\"View Missing (displayAll): {{ kid.getPConnect().getComponentName() }}\"\n ></component-mapper>\n </div>\n </ng-template>\n</div>\n", styles: ["h3{margin-left:.8rem}.ng-view-top{padding:0}.template-title-container{display:flex;justify-content:space-between;align-items:center;font-size:.9375rem;font-weight:600;padding:1rem 0}\n"] }]
|
|
3735
3740
|
}], ctorParameters: () => [{ type: AngularPConnectService }, { type: Utils }], propDecorators: { pConn$: [{
|
|
3736
3741
|
type: Input
|
|
3737
3742
|
}], formGroup$: [{
|
|
@@ -3799,17 +3804,20 @@ class ViewContainerComponent {
|
|
|
3799
3804
|
dispatchObject: this.dispatchObject,
|
|
3800
3805
|
visible: !PCore.checkIfSemanticURL()
|
|
3801
3806
|
};
|
|
3802
|
-
|
|
3803
|
-
|
|
3804
|
-
|
|
3805
|
-
|
|
3806
|
-
|
|
3807
|
-
|
|
3808
|
-
|
|
3809
|
-
|
|
3810
|
-
|
|
3811
|
-
|
|
3812
|
-
|
|
3807
|
+
if (sessionStorage.getItem('hasViewContainer') == 'false') {
|
|
3808
|
+
containerMgr.initializeContainers({
|
|
3809
|
+
type: mode === CONTAINER_TYPE.MULTIPLE ? CONTAINER_TYPE.MULTIPLE : CONTAINER_TYPE.SINGLE
|
|
3810
|
+
});
|
|
3811
|
+
if (mode === CONTAINER_TYPE.MULTIPLE && limit) {
|
|
3812
|
+
/* NOTE: setContainerLimit use is temporary. It is a non-public, unsupported API. */
|
|
3813
|
+
PCore.getContainerUtils().setContainerLimit(`${APP.APP}/${name}`, limit);
|
|
3814
|
+
}
|
|
3815
|
+
if (!PCore.checkIfSemanticURL())
|
|
3816
|
+
containerMgr.addContainerItem(this.pConn$);
|
|
3817
|
+
if (!this.displayOnlyFA$)
|
|
3818
|
+
configureBrowserBookmark(this.pConn$);
|
|
3819
|
+
sessionStorage.setItem('hasViewContainer', 'true');
|
|
3820
|
+
}
|
|
3813
3821
|
// cannot call checkAndUpdate becasue first time through, will call updateSelf and that is incorrect (causes issues).
|
|
3814
3822
|
// however, need angularPConnect to be initialized with currentProps for future updates, so calling shouldComponentUpdate directly
|
|
3815
3823
|
// without checking to update here in init, will initialize and this is correct
|
|
@@ -4161,6 +4169,8 @@ class AutoCompleteComponent {
|
|
|
4161
4169
|
this.value$ = index > -1 ? this.options$[index].value : this.configProps$.value;
|
|
4162
4170
|
}
|
|
4163
4171
|
this.setPropertyValuesFromProps();
|
|
4172
|
+
this.actionsApi = this.pConn$.getActionsApi();
|
|
4173
|
+
this.propName = this.pConn$.getStateProps().value;
|
|
4164
4174
|
const context = this.pConn$.getContextName();
|
|
4165
4175
|
const { columns, datasource } = this.generateColumnsAndDataSource();
|
|
4166
4176
|
if (columns) {
|
|
@@ -4293,11 +4303,13 @@ class AutoCompleteComponent {
|
|
|
4293
4303
|
// this works - this.pConn$.setValue( this.componentReference, this.fieldControl.value);
|
|
4294
4304
|
// PConnect wants to use changeHandler for onChange
|
|
4295
4305
|
// this.angularPConnect.changeHandler( this, event);
|
|
4296
|
-
|
|
4297
|
-
this.
|
|
4306
|
+
const value = event.target.value;
|
|
4307
|
+
this.filterValue = value;
|
|
4308
|
+
handleEvent(this.actionsApi, 'change', this.propName, value);
|
|
4298
4309
|
}
|
|
4299
4310
|
optionChanged(event) {
|
|
4300
|
-
|
|
4311
|
+
const value = event?.option?.value;
|
|
4312
|
+
handleEvent(this.actionsApi, 'change', this.propName, value);
|
|
4301
4313
|
}
|
|
4302
4314
|
fieldOnBlur(event) {
|
|
4303
4315
|
let key = '';
|
|
@@ -4307,9 +4319,7 @@ class AutoCompleteComponent {
|
|
|
4307
4319
|
key = index > -1 ? (key = this.options$[index].key) : el.value;
|
|
4308
4320
|
}
|
|
4309
4321
|
const value = key;
|
|
4310
|
-
|
|
4311
|
-
const propName = this.pConn$?.getStateProps().value;
|
|
4312
|
-
handleEvent(actionsApi, 'changeNblur', propName, value);
|
|
4322
|
+
handleEvent(this.actionsApi, 'changeNblur', this.propName, value);
|
|
4313
4323
|
if (this.configProps$?.onRecordChange) {
|
|
4314
4324
|
el.value = value;
|
|
4315
4325
|
this.configProps$.onRecordChange(event);
|
|
@@ -4575,8 +4585,8 @@ class CheckBoxComponent {
|
|
|
4575
4585
|
}
|
|
4576
4586
|
this.caption$ = this.configProps$.caption;
|
|
4577
4587
|
this.helperText = this.configProps$.helperText;
|
|
4578
|
-
this.trueLabel$ = this.configProps$.trueLabel;
|
|
4579
|
-
this.falseLabel$ = this.configProps$.falseLabel;
|
|
4588
|
+
this.trueLabel$ = this.configProps$.trueLabel || 'Yes';
|
|
4589
|
+
this.falseLabel$ = this.configProps$.falseLabel || 'No';
|
|
4580
4590
|
// timeout and detectChanges to avoid ExpressionChangedAfterItHasBeenCheckedError
|
|
4581
4591
|
setTimeout(() => {
|
|
4582
4592
|
if (this.configProps$.required != null) {
|
|
@@ -4621,14 +4631,16 @@ class CheckBoxComponent {
|
|
|
4621
4631
|
fieldOnChange(event) {
|
|
4622
4632
|
event.value = event.checked;
|
|
4623
4633
|
handleEvent(this.actionsApi, 'changeNblur', this.propName, event.checked);
|
|
4634
|
+
this.pConn$.clearErrorMessages({
|
|
4635
|
+
property: this.propName
|
|
4636
|
+
});
|
|
4624
4637
|
}
|
|
4625
4638
|
fieldOnBlur(event) {
|
|
4626
4639
|
if (this.selectionMode === 'multi') {
|
|
4627
4640
|
this.pConn$.getValidationApi().validate(this.selectedvalues, this.selectionList);
|
|
4628
4641
|
}
|
|
4629
4642
|
else {
|
|
4630
|
-
|
|
4631
|
-
this.angularPConnectData.actions?.onBlur(this, event);
|
|
4643
|
+
this.pConn$.getValidationApi().validate(event.target.checked);
|
|
4632
4644
|
}
|
|
4633
4645
|
}
|
|
4634
4646
|
handleChangeMultiMode(event, element) {
|
|
@@ -5720,233 +5732,6 @@ const getCurrencyCharacters = (inISOCode) => {
|
|
|
5720
5732
|
return theCurrencyChars;
|
|
5721
5733
|
};
|
|
5722
5734
|
|
|
5723
|
-
class CurrencyComponent {
|
|
5724
|
-
constructor(angularPConnect, cdRef, utils) {
|
|
5725
|
-
this.angularPConnect = angularPConnect;
|
|
5726
|
-
this.cdRef = cdRef;
|
|
5727
|
-
this.utils = utils;
|
|
5728
|
-
// Used with AngularPConnect
|
|
5729
|
-
this.angularPConnectData = {};
|
|
5730
|
-
this.label$ = '';
|
|
5731
|
-
this.bRequired$ = false;
|
|
5732
|
-
this.bReadonly$ = false;
|
|
5733
|
-
this.bDisabled$ = false;
|
|
5734
|
-
this.bVisible$ = true;
|
|
5735
|
-
this.displayMode$ = '';
|
|
5736
|
-
this.bHasForm$ = true;
|
|
5737
|
-
this.componentReference = '';
|
|
5738
|
-
this.currencyISOCode = 'USD';
|
|
5739
|
-
this.currencyOptions = {};
|
|
5740
|
-
this.fieldControl = new FormControl(null, { updateOn: 'blur' });
|
|
5741
|
-
}
|
|
5742
|
-
ngOnInit() {
|
|
5743
|
-
// First thing in initialization is registering and subscribing to the AngularPConnect service
|
|
5744
|
-
this.angularPConnectData = this.angularPConnect.registerAndSubscribeComponent(this, this.onStateChange);
|
|
5745
|
-
this.controlName$ = this.angularPConnect.getComponentID(this);
|
|
5746
|
-
// Then, continue on with other initialization
|
|
5747
|
-
// call updateSelf when initializing
|
|
5748
|
-
// this.updateSelf();
|
|
5749
|
-
this.checkAndUpdate();
|
|
5750
|
-
if (this.formGroup$) {
|
|
5751
|
-
// add control to formGroup
|
|
5752
|
-
this.formGroup$.addControl(this.controlName$, this.fieldControl);
|
|
5753
|
-
this.fieldControl.setValue(this.value$);
|
|
5754
|
-
this.bHasForm$ = true;
|
|
5755
|
-
}
|
|
5756
|
-
else {
|
|
5757
|
-
this.bReadonly$ = true;
|
|
5758
|
-
this.bHasForm$ = false;
|
|
5759
|
-
}
|
|
5760
|
-
}
|
|
5761
|
-
ngOnDestroy() {
|
|
5762
|
-
if (this.formGroup$) {
|
|
5763
|
-
this.formGroup$.removeControl(this.controlName$);
|
|
5764
|
-
}
|
|
5765
|
-
if (this.angularPConnectData.unsubscribeFn) {
|
|
5766
|
-
this.angularPConnectData.unsubscribeFn();
|
|
5767
|
-
}
|
|
5768
|
-
}
|
|
5769
|
-
// Callback passed when subscribing to store change
|
|
5770
|
-
onStateChange() {
|
|
5771
|
-
this.checkAndUpdate();
|
|
5772
|
-
}
|
|
5773
|
-
checkAndUpdate() {
|
|
5774
|
-
// Should always check the bridge to see if the component should
|
|
5775
|
-
// update itself (re-render)
|
|
5776
|
-
const bUpdateSelf = this.angularPConnect.shouldComponentUpdate(this);
|
|
5777
|
-
// ONLY call updateSelf when the component should update
|
|
5778
|
-
if (bUpdateSelf) {
|
|
5779
|
-
this.updateSelf();
|
|
5780
|
-
}
|
|
5781
|
-
}
|
|
5782
|
-
// updateSelf
|
|
5783
|
-
updateSelf() {
|
|
5784
|
-
// starting very simple...
|
|
5785
|
-
// moved this from ngOnInit() and call this from there instead...
|
|
5786
|
-
this.configProps$ = this.pConn$.resolveConfigProps(this.pConn$.getConfigProps());
|
|
5787
|
-
this.testId = this.configProps$.testId;
|
|
5788
|
-
this.label$ = this.configProps$.label;
|
|
5789
|
-
this.displayMode$ = this.configProps$.displayMode;
|
|
5790
|
-
this.inputMode = NgxCurrencyInputMode.Natural;
|
|
5791
|
-
let nValue = this.configProps$.value;
|
|
5792
|
-
if (nValue) {
|
|
5793
|
-
if (typeof nValue === 'string') {
|
|
5794
|
-
nValue = parseFloat(nValue);
|
|
5795
|
-
}
|
|
5796
|
-
this.value$ = nValue;
|
|
5797
|
-
}
|
|
5798
|
-
this.helperText = this.configProps$.helperText;
|
|
5799
|
-
this.placeholder = this.configProps$.placeholder || '';
|
|
5800
|
-
const currencyISOCode = this.configProps$?.currencyISOCode ?? '';
|
|
5801
|
-
const theSymbols = getCurrencyCharacters(currencyISOCode);
|
|
5802
|
-
this.currSym = theSymbols.theCurrencySymbol;
|
|
5803
|
-
this.currSep = theSymbols.theDigitGroupSeparator;
|
|
5804
|
-
this.currDec = theSymbols.theDecimalIndicator;
|
|
5805
|
-
// timeout and detectChanges to avoid ExpressionChangedAfterItHasBeenCheckedError
|
|
5806
|
-
setTimeout(() => {
|
|
5807
|
-
if (this.configProps$.required != null) {
|
|
5808
|
-
this.bRequired$ = this.utils.getBooleanValue(this.configProps$.required);
|
|
5809
|
-
}
|
|
5810
|
-
this.cdRef.detectChanges();
|
|
5811
|
-
});
|
|
5812
|
-
if (this.configProps$.visibility != null) {
|
|
5813
|
-
this.bVisible$ = this.utils.getBooleanValue(this.configProps$.visibility);
|
|
5814
|
-
}
|
|
5815
|
-
// disabled
|
|
5816
|
-
if (this.configProps$.disabled != undefined) {
|
|
5817
|
-
this.bDisabled$ = this.utils.getBooleanValue(this.configProps$.disabled);
|
|
5818
|
-
}
|
|
5819
|
-
if (this.bDisabled$) {
|
|
5820
|
-
this.fieldControl.disable();
|
|
5821
|
-
}
|
|
5822
|
-
else {
|
|
5823
|
-
this.fieldControl.enable();
|
|
5824
|
-
}
|
|
5825
|
-
if (this.configProps$.readOnly != null) {
|
|
5826
|
-
this.bReadonly$ = this.utils.getBooleanValue(this.configProps$.readOnly);
|
|
5827
|
-
}
|
|
5828
|
-
if (this.configProps$.currencyISOCode != null) {
|
|
5829
|
-
this.currencyISOCode = this.configProps$.currencyISOCode;
|
|
5830
|
-
}
|
|
5831
|
-
this.decimalPrecision = this.configProps$?.allowDecimals ? 2 : 0;
|
|
5832
|
-
this.componentReference = this.pConn$.getStateProps().value;
|
|
5833
|
-
// trigger display of error message with field control
|
|
5834
|
-
if (this.angularPConnectData.validateMessage != null && this.angularPConnectData.validateMessage != '') {
|
|
5835
|
-
const timer = interval(100).subscribe(() => {
|
|
5836
|
-
this.fieldControl.setErrors({ message: true });
|
|
5837
|
-
this.fieldControl.markAsTouched();
|
|
5838
|
-
timer.unsubscribe();
|
|
5839
|
-
});
|
|
5840
|
-
}
|
|
5841
|
-
}
|
|
5842
|
-
fieldOnBlur(event) {
|
|
5843
|
-
const actionsApi = this.pConn$?.getActionsApi();
|
|
5844
|
-
const propName = this.pConn$?.getStateProps().value;
|
|
5845
|
-
let value = event?.target?.value;
|
|
5846
|
-
value = value?.substring(1);
|
|
5847
|
-
if (this.currSep === ',') {
|
|
5848
|
-
value = value.replace(/,/g, '');
|
|
5849
|
-
}
|
|
5850
|
-
else {
|
|
5851
|
-
value = value?.replace(/\./g, '');
|
|
5852
|
-
value = value?.replace(/,/g, '.');
|
|
5853
|
-
}
|
|
5854
|
-
handleEvent(actionsApi, 'changeNblur', propName, value);
|
|
5855
|
-
}
|
|
5856
|
-
getErrorMessage() {
|
|
5857
|
-
let errMessage = '';
|
|
5858
|
-
// look for validation messages for json, pre-defined or just an error pushed from workitem (400)
|
|
5859
|
-
if (this.fieldControl.hasError('message')) {
|
|
5860
|
-
errMessage = this.angularPConnectData.validateMessage ?? '';
|
|
5861
|
-
return errMessage;
|
|
5862
|
-
}
|
|
5863
|
-
if (this.fieldControl.hasError('required')) {
|
|
5864
|
-
errMessage = 'You must enter a value';
|
|
5865
|
-
}
|
|
5866
|
-
else if (this.fieldControl.errors) {
|
|
5867
|
-
errMessage = this.fieldControl.errors.toString();
|
|
5868
|
-
}
|
|
5869
|
-
return errMessage;
|
|
5870
|
-
}
|
|
5871
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: CurrencyComponent, deps: [{ token: AngularPConnectService }, { token: i0.ChangeDetectorRef }, { token: Utils }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
5872
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: CurrencyComponent, isStandalone: true, selector: "app-currency", inputs: { pConn$: "pConn$", formGroup$: "formGroup$" }, ngImport: i0, template: "<div *ngIf=\"displayMode$; else noDisplayMode\">\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"FieldValueList\" [props]=\"{ label$, value$, displayMode$ }\"></component-mapper>\n</div>\n<ng-template #noDisplayMode>\n <div *ngIf=\"bHasForm$; else noEdit\">\n <div [formGroup]=\"formGroup$\" *ngIf=\"bVisible$\" class=\"psdk-currency-field\">\n <mat-form-field class=\"psdk-full-width\" subscriptSizing=\"dynamic\" [hintLabel]=\"helperText\">\n <mat-label>{{ label$ }}</mat-label>\n <div class=\"psdk-currency-input\">\n <input\n style=\"margin-left: 5px; margin-top: -1rem\"\n type=\"text\"\n matInput\n currencyMask\n [options]=\"{\n prefix: currSym,\n thousands: currSep,\n decimal: currDec,\n align: 'left',\n nullable: true,\n precision: decimalPrecision,\n inputMode: inputMode\n }\"\n [placeholder]=\"placeholder\"\n [formControlName]=\"controlName$\"\n [required]=\"bRequired$\"\n [formControl]=\"fieldControl\"\n [attr.data-test-id]=\"testId\"\n (blur)=\"fieldOnBlur($event)\"\n [readonly]=\"bReadonly$\"\n />\n </div>\n <mat-error *ngIf=\"fieldControl.invalid\">{{ getErrorMessage() }}</mat-error>\n </mat-form-field>\n </div>\n </div>\n</ng-template>\n<ng-template #noEdit>\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"Text\" [props]=\"{ pConn$, formatAs$: 'text' }\"></component-mapper>\n</ng-template>\n", styles: [".psdk-full-width{width:100%}.psdk-label-readonly{font-size:1rem;display:block;transform:translateY(-1.28125em) scale(.75) perspective(100px) translateZ(.001px);-ms-transform:translateY(-1.28125em) scale(.75);width:133.33333%}.psdk-data-readonly{padding-top:.625rem;width:100%}.psdk-currency-input{display:flex}.psdk-currency-field ::ng-deep .mdc-floating-label{position:initial!important}::ng-deep .mat-mdc-form-field-infix{width:auto}\n"], dependencies: [{ kind: "ngmodule", type: i0.forwardRef(() => CommonModule) }, { kind: "directive", type: i0.forwardRef(() => i3.NgIf), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: i0.forwardRef(() => ReactiveFormsModule) }, { kind: "directive", type: i0.forwardRef(() => i4.DefaultValueAccessor), selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i0.forwardRef(() => i4.NgControlStatus), selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i0.forwardRef(() => i4.NgControlStatusGroup), selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i0.forwardRef(() => i4.RequiredValidator), selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i0.forwardRef(() => i4.FormControlDirective), selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i0.forwardRef(() => i4.FormGroupDirective), selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i0.forwardRef(() => i4.FormControlName), selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: i0.forwardRef(() => MatFormFieldModule) }, { kind: "component", type: i0.forwardRef(() => i5.MatFormField), selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i0.forwardRef(() => i5.MatLabel), selector: "mat-label" }, { kind: "directive", type: i0.forwardRef(() => i5.MatError), selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "ngmodule", type: i0.forwardRef(() => MatInputModule) }, { kind: "directive", type: i0.forwardRef(() => i6$1.MatInput), selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: i0.forwardRef(() => NgxCurrencyDirective), selector: "input[currencyMask]", inputs: ["currencyMask", "options"] }, { kind: "component", type: i0.forwardRef(() => ComponentMapperComponent), selector: "component-mapper", inputs: ["name", "props", "errorMsg", "outputEvents", "parent"] }] }); }
|
|
5873
|
-
}
|
|
5874
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: CurrencyComponent, decorators: [{
|
|
5875
|
-
type: Component,
|
|
5876
|
-
args: [{ selector: 'app-currency', standalone: true, imports: [CommonModule, ReactiveFormsModule, MatFormFieldModule, MatInputModule, NgxCurrencyDirective, forwardRef(() => ComponentMapperComponent)], template: "<div *ngIf=\"displayMode$; else noDisplayMode\">\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"FieldValueList\" [props]=\"{ label$, value$, displayMode$ }\"></component-mapper>\n</div>\n<ng-template #noDisplayMode>\n <div *ngIf=\"bHasForm$; else noEdit\">\n <div [formGroup]=\"formGroup$\" *ngIf=\"bVisible$\" class=\"psdk-currency-field\">\n <mat-form-field class=\"psdk-full-width\" subscriptSizing=\"dynamic\" [hintLabel]=\"helperText\">\n <mat-label>{{ label$ }}</mat-label>\n <div class=\"psdk-currency-input\">\n <input\n style=\"margin-left: 5px; margin-top: -1rem\"\n type=\"text\"\n matInput\n currencyMask\n [options]=\"{\n prefix: currSym,\n thousands: currSep,\n decimal: currDec,\n align: 'left',\n nullable: true,\n precision: decimalPrecision,\n inputMode: inputMode\n }\"\n [placeholder]=\"placeholder\"\n [formControlName]=\"controlName$\"\n [required]=\"bRequired$\"\n [formControl]=\"fieldControl\"\n [attr.data-test-id]=\"testId\"\n (blur)=\"fieldOnBlur($event)\"\n [readonly]=\"bReadonly$\"\n />\n </div>\n <mat-error *ngIf=\"fieldControl.invalid\">{{ getErrorMessage() }}</mat-error>\n </mat-form-field>\n </div>\n </div>\n</ng-template>\n<ng-template #noEdit>\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"Text\" [props]=\"{ pConn$, formatAs$: 'text' }\"></component-mapper>\n</ng-template>\n", styles: [".psdk-full-width{width:100%}.psdk-label-readonly{font-size:1rem;display:block;transform:translateY(-1.28125em) scale(.75) perspective(100px) translateZ(.001px);-ms-transform:translateY(-1.28125em) scale(.75);width:133.33333%}.psdk-data-readonly{padding-top:.625rem;width:100%}.psdk-currency-input{display:flex}.psdk-currency-field ::ng-deep .mdc-floating-label{position:initial!important}::ng-deep .mat-mdc-form-field-infix{width:auto}\n"] }]
|
|
5877
|
-
}], ctorParameters: () => [{ type: AngularPConnectService }, { type: i0.ChangeDetectorRef }, { type: Utils }], propDecorators: { pConn$: [{
|
|
5878
|
-
type: Input
|
|
5879
|
-
}], formGroup$: [{
|
|
5880
|
-
type: Input
|
|
5881
|
-
}] } });
|
|
5882
|
-
|
|
5883
|
-
const dateFormatInfoDefault = {
|
|
5884
|
-
dateFormatString: 'MM/DD/YYYY',
|
|
5885
|
-
dateFormatStringLong: 'MMM DD, YYYY',
|
|
5886
|
-
dateFormatStringLC: 'mm/dd/yyyy',
|
|
5887
|
-
dateFormatMask: '__/__/____'
|
|
5888
|
-
};
|
|
5889
|
-
const getDateFormatInfo = () => {
|
|
5890
|
-
const localizedVal = PCore?.getLocaleUtils().getLocaleValue;
|
|
5891
|
-
const localeCategory = 'CosmosFields';
|
|
5892
|
-
const theDateFormatInfo = dateFormatInfoDefault;
|
|
5893
|
-
const theLocale = getLocale$1();
|
|
5894
|
-
// NOTE: this date was chosen since it has a day larger than 12. If you change it,
|
|
5895
|
-
// you'll need to change the indexOf values below!
|
|
5896
|
-
const theTestDate = new Date(Date.parse('30 November 2023 12:00:00 GMT'));
|
|
5897
|
-
const theTestDateLocaleString = new Intl.DateTimeFormat(theLocale).format(theTestDate);
|
|
5898
|
-
// console.log(`theLocale: ${theLocale} theTestDateLocaleString: ${theTestDateLocaleString}`);
|
|
5899
|
-
// Build the format string based on where '11' (mm), '30' (dd), and '2023' (yyyy) are
|
|
5900
|
-
// Example: US locations are 0, 3, 6 but for NL locations are 3, 0, 6
|
|
5901
|
-
const locMM = theTestDateLocaleString.indexOf('11');
|
|
5902
|
-
const locDD = theTestDateLocaleString.indexOf('30');
|
|
5903
|
-
const locYYYY = theTestDateLocaleString.indexOf('2023');
|
|
5904
|
-
// If localized placeholder exists for one of day/month/year then show it otherwise fall back to ddmmyyyy
|
|
5905
|
-
const localizedPlaceholderExists = localizedVal('month_placeholder', localeCategory) !== 'month_placeholder' ||
|
|
5906
|
-
localizedVal('day_placeholder', localeCategory) !== 'day_placeholder' ||
|
|
5907
|
-
localizedVal('year_placeholder', localeCategory) !== 'year_placeholder';
|
|
5908
|
-
const arrPieces = [
|
|
5909
|
-
{
|
|
5910
|
-
loc: locMM,
|
|
5911
|
-
format: 'MM',
|
|
5912
|
-
longFormat: 'MMM',
|
|
5913
|
-
placeholder: localizedPlaceholderExists ? localizedVal('month_placeholder', localeCategory) : 'mm',
|
|
5914
|
-
mask: '__',
|
|
5915
|
-
separator: theTestDateLocaleString[locMM + 2]
|
|
5916
|
-
},
|
|
5917
|
-
{
|
|
5918
|
-
loc: locDD,
|
|
5919
|
-
format: 'DD',
|
|
5920
|
-
longFormat: 'DD',
|
|
5921
|
-
placeholder: localizedPlaceholderExists ? localizedVal('day_placeholder', localeCategory) : 'dd',
|
|
5922
|
-
mask: '__',
|
|
5923
|
-
separator: theTestDateLocaleString[locDD + 2]
|
|
5924
|
-
},
|
|
5925
|
-
{
|
|
5926
|
-
loc: locYYYY,
|
|
5927
|
-
format: 'YYYY',
|
|
5928
|
-
longFormat: 'YYYY',
|
|
5929
|
-
placeholder: localizedPlaceholderExists ? localizedVal('year_placeholder', localeCategory) : 'yyyy',
|
|
5930
|
-
mask: '____',
|
|
5931
|
-
separator: theTestDateLocaleString[locYYYY + 4]
|
|
5932
|
-
}
|
|
5933
|
-
];
|
|
5934
|
-
// Sort the associative array by order of appearance (loc) of each piece
|
|
5935
|
-
arrPieces.sort((a, b) => {
|
|
5936
|
-
if (a.loc < b.loc)
|
|
5937
|
-
return -1;
|
|
5938
|
-
if (a.loc > b.loc)
|
|
5939
|
-
return 1;
|
|
5940
|
-
return 0;
|
|
5941
|
-
});
|
|
5942
|
-
// Construct the structure to return...
|
|
5943
|
-
theDateFormatInfo.dateFormatString = `${arrPieces[0].format}${arrPieces[0].separator}${arrPieces[1].format}${arrPieces[1].separator}${arrPieces[2].format}`;
|
|
5944
|
-
theDateFormatInfo.dateFormatStringLong = `${arrPieces[0].longFormat} ${arrPieces[1].longFormat}, ${arrPieces[2].longFormat}`;
|
|
5945
|
-
theDateFormatInfo.dateFormatStringLC = `${arrPieces[0].placeholder}${arrPieces[0].separator}${arrPieces[1].placeholder}${arrPieces[1].separator}${arrPieces[2].placeholder}`;
|
|
5946
|
-
theDateFormatInfo.dateFormatMask = `${arrPieces[0].mask}${arrPieces[0].separator}${arrPieces[1].mask}${arrPieces[1].separator}${arrPieces[2].mask}`;
|
|
5947
|
-
return theDateFormatInfo;
|
|
5948
|
-
};
|
|
5949
|
-
|
|
5950
5735
|
function Boolean(value, { allowEmpty = true, tick = '', cross = '' } = {}) {
|
|
5951
5736
|
if ((!allowEmpty && !value) || value === false || value?.toString()?.toLowerCase() === 'false' || value === 0 || value === '0') {
|
|
5952
5737
|
return cross || '';
|
|
@@ -5977,10 +5762,8 @@ function getLocale(locale = '') {
|
|
|
5977
5762
|
// fallback
|
|
5978
5763
|
return Intl.DateTimeFormat().resolvedOptions().locale;
|
|
5979
5764
|
}
|
|
5980
|
-
function getCurrentTimezone(
|
|
5981
|
-
|
|
5982
|
-
return timezone;
|
|
5983
|
-
return PCore?.getLocaleUtils?.().getTimeZoneInUse?.();
|
|
5765
|
+
function getCurrentTimezone() {
|
|
5766
|
+
return PCore?.getEnvironmentInfo?.().getTimeZone?.();
|
|
5984
5767
|
}
|
|
5985
5768
|
|
|
5986
5769
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
@@ -6083,7 +5866,7 @@ function TimeFormatter(value, options) {
|
|
|
6083
5866
|
tempDate.setHours(hours);
|
|
6084
5867
|
tempDate.setMinutes(minutes);
|
|
6085
5868
|
tempDate.setSeconds(seconds);
|
|
6086
|
-
return tempDate.toLocaleTimeString(locale);
|
|
5869
|
+
return tempDate.toLocaleTimeString(locale, { hour: '2-digit', minute: '2-digit' });
|
|
6087
5870
|
}
|
|
6088
5871
|
return DateFormatter(value, options);
|
|
6089
5872
|
}
|
|
@@ -6096,9 +5879,9 @@ var DateFormatter$1 = {
|
|
|
6096
5879
|
}),
|
|
6097
5880
|
'DateTime-Since': value => DateFormatter(value, { type: 'fromNow' }),
|
|
6098
5881
|
'Time-Only': (value, options) => TimeFormatter(value, {
|
|
6099
|
-
...options,
|
|
6100
5882
|
type: 'customFormat',
|
|
6101
|
-
format: 'hh:mm:ss A'
|
|
5883
|
+
format: 'hh:mm:ss A',
|
|
5884
|
+
...options
|
|
6102
5885
|
}),
|
|
6103
5886
|
convertToTimezone: (value, options) => {
|
|
6104
5887
|
return value && options && options.timezone
|
|
@@ -6119,8 +5902,6 @@ var index = {
|
|
|
6119
5902
|
...DateFormatter$1
|
|
6120
5903
|
};
|
|
6121
5904
|
function getDateObject(text) {
|
|
6122
|
-
if (text instanceof Date)
|
|
6123
|
-
return text;
|
|
6124
5905
|
// TODO - cleanup formatters util functions as DX APIs are returning values per ISO std now.
|
|
6125
5906
|
const timeStamp = text.replace(/-/g, '');
|
|
6126
5907
|
const isDateTime = timeStamp.indexOf('GMT') !== -1;
|
|
@@ -6174,6 +5955,12 @@ function format(value, type, options = {}) {
|
|
|
6174
5955
|
formattedValue = Currency.Currency(value, params);
|
|
6175
5956
|
break;
|
|
6176
5957
|
}
|
|
5958
|
+
case 'percentage': {
|
|
5959
|
+
const defaultOptions = { locale: getLocale(), decPlaces: 2 };
|
|
5960
|
+
const params = { ...defaultOptions, ...options };
|
|
5961
|
+
formattedValue = Currency.Percentage(value, params);
|
|
5962
|
+
break;
|
|
5963
|
+
}
|
|
6177
5964
|
case 'decimal': {
|
|
6178
5965
|
const defaultOptions = { locale: getLocale(), decPlaces: 2 };
|
|
6179
5966
|
const params = { ...defaultOptions, ...options };
|
|
@@ -6186,40 +5973,286 @@ function format(value, type, options = {}) {
|
|
|
6186
5973
|
formattedValue = Currency.Integer(value, params);
|
|
6187
5974
|
break;
|
|
6188
5975
|
}
|
|
6189
|
-
case 'date': {
|
|
6190
|
-
const defaultOptions = {
|
|
6191
|
-
format: 'MMM DD, YYYY',
|
|
6192
|
-
timezone: getCurrentTimezone()
|
|
6193
|
-
};
|
|
6194
|
-
const params = { ...defaultOptions, ...options };
|
|
6195
|
-
formattedValue = DateFormatter$1.Date(parseDateInISO(value), params);
|
|
6196
|
-
break;
|
|
5976
|
+
case 'date': {
|
|
5977
|
+
const defaultOptions = {
|
|
5978
|
+
format: 'MMM DD, YYYY',
|
|
5979
|
+
timezone: getCurrentTimezone()
|
|
5980
|
+
};
|
|
5981
|
+
const params = { ...defaultOptions, ...options };
|
|
5982
|
+
formattedValue = DateFormatter$1.Date(parseDateInISO(value), params);
|
|
5983
|
+
break;
|
|
5984
|
+
}
|
|
5985
|
+
case 'datetime': {
|
|
5986
|
+
const defaultOptions = {
|
|
5987
|
+
format: 'MMM DD, YYYY h:mm A',
|
|
5988
|
+
timezone: getCurrentTimezone()
|
|
5989
|
+
};
|
|
5990
|
+
const params = { ...defaultOptions, ...options };
|
|
5991
|
+
formattedValue = DateFormatter$1.Date(parseDateInISO(value), params);
|
|
5992
|
+
break;
|
|
5993
|
+
}
|
|
5994
|
+
case 'boolean':
|
|
5995
|
+
case 'checkbox': {
|
|
5996
|
+
formattedValue = Boolean$1.TrueFalse(value, { allowEmpty: false, ...options });
|
|
5997
|
+
break;
|
|
5998
|
+
}
|
|
5999
|
+
case 'userreference': {
|
|
6000
|
+
formattedValue = value.userName;
|
|
6001
|
+
break;
|
|
6002
|
+
}
|
|
6003
|
+
case 'timeonly': {
|
|
6004
|
+
const defaultOptions = {
|
|
6005
|
+
locale: getLocale(),
|
|
6006
|
+
format: 'hh:mm A',
|
|
6007
|
+
timezone: getCurrentTimezone()
|
|
6008
|
+
};
|
|
6009
|
+
const params = { ...defaultOptions, ...options };
|
|
6010
|
+
formattedValue = DateFormatter$1['Time-Only'](value, params);
|
|
6011
|
+
break;
|
|
6012
|
+
}
|
|
6013
|
+
default:
|
|
6014
|
+
formattedValue = value;
|
|
6015
|
+
}
|
|
6016
|
+
return formattedValue;
|
|
6017
|
+
}
|
|
6018
|
+
|
|
6019
|
+
class CurrencyComponent {
|
|
6020
|
+
constructor(angularPConnect, cdRef, utils) {
|
|
6021
|
+
this.angularPConnect = angularPConnect;
|
|
6022
|
+
this.cdRef = cdRef;
|
|
6023
|
+
this.utils = utils;
|
|
6024
|
+
// Used with AngularPConnect
|
|
6025
|
+
this.angularPConnectData = {};
|
|
6026
|
+
this.label$ = '';
|
|
6027
|
+
this.bRequired$ = false;
|
|
6028
|
+
this.bReadonly$ = false;
|
|
6029
|
+
this.bDisabled$ = false;
|
|
6030
|
+
this.bVisible$ = true;
|
|
6031
|
+
this.displayMode$ = '';
|
|
6032
|
+
this.bHasForm$ = true;
|
|
6033
|
+
this.componentReference = '';
|
|
6034
|
+
this.currencyISOCode = 'USD';
|
|
6035
|
+
this.currencyOptions = {};
|
|
6036
|
+
this.fieldControl = new FormControl(null, { updateOn: 'blur' });
|
|
6037
|
+
}
|
|
6038
|
+
ngOnInit() {
|
|
6039
|
+
// First thing in initialization is registering and subscribing to the AngularPConnect service
|
|
6040
|
+
this.angularPConnectData = this.angularPConnect.registerAndSubscribeComponent(this, this.onStateChange);
|
|
6041
|
+
this.controlName$ = this.angularPConnect.getComponentID(this);
|
|
6042
|
+
// Then, continue on with other initialization
|
|
6043
|
+
// call updateSelf when initializing
|
|
6044
|
+
// this.updateSelf();
|
|
6045
|
+
this.checkAndUpdate();
|
|
6046
|
+
if (this.formGroup$) {
|
|
6047
|
+
// add control to formGroup
|
|
6048
|
+
this.formGroup$.addControl(this.controlName$, this.fieldControl);
|
|
6049
|
+
this.fieldControl.setValue(this.value$);
|
|
6050
|
+
this.bHasForm$ = true;
|
|
6051
|
+
}
|
|
6052
|
+
else {
|
|
6053
|
+
this.bReadonly$ = true;
|
|
6054
|
+
this.bHasForm$ = false;
|
|
6055
|
+
}
|
|
6056
|
+
}
|
|
6057
|
+
ngOnDestroy() {
|
|
6058
|
+
if (this.formGroup$) {
|
|
6059
|
+
this.formGroup$.removeControl(this.controlName$);
|
|
6060
|
+
}
|
|
6061
|
+
if (this.angularPConnectData.unsubscribeFn) {
|
|
6062
|
+
this.angularPConnectData.unsubscribeFn();
|
|
6063
|
+
}
|
|
6064
|
+
}
|
|
6065
|
+
// Callback passed when subscribing to store change
|
|
6066
|
+
onStateChange() {
|
|
6067
|
+
this.checkAndUpdate();
|
|
6068
|
+
}
|
|
6069
|
+
checkAndUpdate() {
|
|
6070
|
+
// Should always check the bridge to see if the component should
|
|
6071
|
+
// update itself (re-render)
|
|
6072
|
+
const bUpdateSelf = this.angularPConnect.shouldComponentUpdate(this);
|
|
6073
|
+
// ONLY call updateSelf when the component should update
|
|
6074
|
+
if (bUpdateSelf) {
|
|
6075
|
+
this.updateSelf();
|
|
6076
|
+
}
|
|
6077
|
+
}
|
|
6078
|
+
// updateSelf
|
|
6079
|
+
updateSelf() {
|
|
6080
|
+
// starting very simple...
|
|
6081
|
+
// moved this from ngOnInit() and call this from there instead...
|
|
6082
|
+
this.configProps$ = this.pConn$.resolveConfigProps(this.pConn$.getConfigProps());
|
|
6083
|
+
this.testId = this.configProps$.testId;
|
|
6084
|
+
this.label$ = this.configProps$.label;
|
|
6085
|
+
this.displayMode$ = this.configProps$.displayMode;
|
|
6086
|
+
this.inputMode = NgxCurrencyInputMode.Natural;
|
|
6087
|
+
let nValue = this.configProps$.value;
|
|
6088
|
+
if (nValue) {
|
|
6089
|
+
if (typeof nValue === 'string') {
|
|
6090
|
+
nValue = parseFloat(nValue);
|
|
6091
|
+
}
|
|
6092
|
+
this.value$ = nValue;
|
|
6093
|
+
}
|
|
6094
|
+
this.helperText = this.configProps$.helperText;
|
|
6095
|
+
this.placeholder = this.configProps$.placeholder || '';
|
|
6096
|
+
const currencyISOCode = this.configProps$?.currencyISOCode ?? '';
|
|
6097
|
+
const theSymbols = getCurrencyCharacters(currencyISOCode);
|
|
6098
|
+
this.currSym = theSymbols.theCurrencySymbol;
|
|
6099
|
+
this.currSep = theSymbols.theDigitGroupSeparator;
|
|
6100
|
+
this.currDec = theSymbols.theDecimalIndicator;
|
|
6101
|
+
this.formatter = this.configProps$.formatter;
|
|
6102
|
+
if (this.displayMode$ === 'DISPLAY_ONLY' || this.displayMode$ === 'STACKED_LARGE_VAL') {
|
|
6103
|
+
const theCurrencyOptions = getCurrencyOptions(currencyISOCode);
|
|
6104
|
+
if (this.formatter) {
|
|
6105
|
+
this.formattedValue = format(this.value$, this.formatter.toLowerCase(), theCurrencyOptions);
|
|
6106
|
+
}
|
|
6107
|
+
else {
|
|
6108
|
+
this.formattedValue = format(this.value$, 'currency', theCurrencyOptions);
|
|
6109
|
+
}
|
|
6110
|
+
}
|
|
6111
|
+
// timeout and detectChanges to avoid ExpressionChangedAfterItHasBeenCheckedError
|
|
6112
|
+
setTimeout(() => {
|
|
6113
|
+
if (this.configProps$.required != null) {
|
|
6114
|
+
this.bRequired$ = this.utils.getBooleanValue(this.configProps$.required);
|
|
6115
|
+
}
|
|
6116
|
+
this.cdRef.detectChanges();
|
|
6117
|
+
});
|
|
6118
|
+
if (this.configProps$.visibility != null) {
|
|
6119
|
+
this.bVisible$ = this.utils.getBooleanValue(this.configProps$.visibility);
|
|
6120
|
+
}
|
|
6121
|
+
// disabled
|
|
6122
|
+
if (this.configProps$.disabled != undefined) {
|
|
6123
|
+
this.bDisabled$ = this.utils.getBooleanValue(this.configProps$.disabled);
|
|
6124
|
+
}
|
|
6125
|
+
if (this.bDisabled$) {
|
|
6126
|
+
this.fieldControl.disable();
|
|
6127
|
+
}
|
|
6128
|
+
else {
|
|
6129
|
+
this.fieldControl.enable();
|
|
6130
|
+
}
|
|
6131
|
+
if (this.configProps$.readOnly != null) {
|
|
6132
|
+
this.bReadonly$ = this.utils.getBooleanValue(this.configProps$.readOnly);
|
|
6133
|
+
}
|
|
6134
|
+
if (this.configProps$.currencyISOCode != null) {
|
|
6135
|
+
this.currencyISOCode = this.configProps$.currencyISOCode;
|
|
6136
|
+
}
|
|
6137
|
+
this.decimalPrecision = this.configProps$?.allowDecimals ? 2 : 0;
|
|
6138
|
+
this.componentReference = this.pConn$.getStateProps().value;
|
|
6139
|
+
// trigger display of error message with field control
|
|
6140
|
+
if (this.angularPConnectData.validateMessage != null && this.angularPConnectData.validateMessage != '') {
|
|
6141
|
+
const timer = interval(100).subscribe(() => {
|
|
6142
|
+
this.fieldControl.setErrors({ message: true });
|
|
6143
|
+
this.fieldControl.markAsTouched();
|
|
6144
|
+
timer.unsubscribe();
|
|
6145
|
+
});
|
|
6146
|
+
}
|
|
6147
|
+
}
|
|
6148
|
+
fieldOnBlur(event) {
|
|
6149
|
+
const actionsApi = this.pConn$?.getActionsApi();
|
|
6150
|
+
const propName = this.pConn$?.getStateProps().value;
|
|
6151
|
+
let value = event?.target?.value;
|
|
6152
|
+
value = value?.substring(1);
|
|
6153
|
+
if (this.currSep === ',') {
|
|
6154
|
+
value = value.replace(/,/g, '');
|
|
6197
6155
|
}
|
|
6198
|
-
|
|
6199
|
-
|
|
6200
|
-
|
|
6201
|
-
timezone: getCurrentTimezone()
|
|
6202
|
-
};
|
|
6203
|
-
const params = { ...defaultOptions, ...options };
|
|
6204
|
-
formattedValue = DateFormatter$1.Date(parseDateInISO(value), params);
|
|
6205
|
-
break;
|
|
6156
|
+
else {
|
|
6157
|
+
value = value?.replace(/\./g, '');
|
|
6158
|
+
value = value?.replace(/,/g, '.');
|
|
6206
6159
|
}
|
|
6207
|
-
|
|
6208
|
-
|
|
6209
|
-
|
|
6210
|
-
|
|
6160
|
+
handleEvent(actionsApi, 'changeNblur', propName, value);
|
|
6161
|
+
}
|
|
6162
|
+
getErrorMessage() {
|
|
6163
|
+
let errMessage = '';
|
|
6164
|
+
// look for validation messages for json, pre-defined or just an error pushed from workitem (400)
|
|
6165
|
+
if (this.fieldControl.hasError('message')) {
|
|
6166
|
+
errMessage = this.angularPConnectData.validateMessage ?? '';
|
|
6167
|
+
return errMessage;
|
|
6211
6168
|
}
|
|
6212
|
-
|
|
6213
|
-
|
|
6214
|
-
break;
|
|
6169
|
+
if (this.fieldControl.hasError('required')) {
|
|
6170
|
+
errMessage = 'You must enter a value';
|
|
6215
6171
|
}
|
|
6216
|
-
|
|
6217
|
-
|
|
6172
|
+
else if (this.fieldControl.errors) {
|
|
6173
|
+
errMessage = this.fieldControl.errors.toString();
|
|
6174
|
+
}
|
|
6175
|
+
return errMessage;
|
|
6218
6176
|
}
|
|
6219
|
-
|
|
6177
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: CurrencyComponent, deps: [{ token: AngularPConnectService }, { token: i0.ChangeDetectorRef }, { token: Utils }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
6178
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: CurrencyComponent, isStandalone: true, selector: "app-currency", inputs: { pConn$: "pConn$", formGroup$: "formGroup$" }, ngImport: i0, template: "<div *ngIf=\"displayMode$; else noDisplayMode\">\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"FieldValueList\" [props]=\"{ label$, value$: formattedValue, displayMode$ }\"></component-mapper>\n</div>\n<ng-template #noDisplayMode>\n <div *ngIf=\"bHasForm$; else noEdit\">\n <div [formGroup]=\"formGroup$\" *ngIf=\"bVisible$\" class=\"psdk-currency-field\">\n <mat-form-field class=\"psdk-full-width\" subscriptSizing=\"dynamic\" [hintLabel]=\"helperText\">\n <mat-label>{{ label$ }}</mat-label>\n <div class=\"psdk-currency-input\">\n <input\n style=\"margin-left: 5px; margin-top: -1rem\"\n type=\"text\"\n matInput\n currencyMask\n [options]=\"{\n prefix: currSym,\n thousands: currSep,\n decimal: currDec,\n align: 'left',\n nullable: true,\n precision: decimalPrecision,\n inputMode: inputMode\n }\"\n [placeholder]=\"placeholder\"\n [formControlName]=\"controlName$\"\n [required]=\"bRequired$\"\n [formControl]=\"fieldControl\"\n [attr.data-test-id]=\"testId\"\n (blur)=\"fieldOnBlur($event)\"\n [readonly]=\"bReadonly$\"\n />\n </div>\n <mat-error *ngIf=\"fieldControl.invalid\">{{ getErrorMessage() }}</mat-error>\n </mat-form-field>\n </div>\n </div>\n</ng-template>\n<ng-template #noEdit>\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"Text\" [props]=\"{ pConn$, formatAs$: 'text' }\"></component-mapper>\n</ng-template>\n", styles: [".psdk-full-width{width:100%}.psdk-label-readonly{font-size:1rem;display:block;transform:translateY(-1.28125em) scale(.75) perspective(100px) translateZ(.001px);-ms-transform:translateY(-1.28125em) scale(.75);width:133.33333%}.psdk-data-readonly{padding-top:.625rem;width:100%}.psdk-currency-input{display:flex}.psdk-currency-field ::ng-deep .mdc-floating-label{position:initial!important}::ng-deep .mat-mdc-form-field-infix{width:auto}\n"], dependencies: [{ kind: "ngmodule", type: i0.forwardRef(() => CommonModule) }, { kind: "directive", type: i0.forwardRef(() => i3.NgIf), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: i0.forwardRef(() => ReactiveFormsModule) }, { kind: "directive", type: i0.forwardRef(() => i4.DefaultValueAccessor), selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i0.forwardRef(() => i4.NgControlStatus), selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i0.forwardRef(() => i4.NgControlStatusGroup), selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i0.forwardRef(() => i4.RequiredValidator), selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i0.forwardRef(() => i4.FormControlDirective), selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i0.forwardRef(() => i4.FormGroupDirective), selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i0.forwardRef(() => i4.FormControlName), selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: i0.forwardRef(() => MatFormFieldModule) }, { kind: "component", type: i0.forwardRef(() => i5.MatFormField), selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i0.forwardRef(() => i5.MatLabel), selector: "mat-label" }, { kind: "directive", type: i0.forwardRef(() => i5.MatError), selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "ngmodule", type: i0.forwardRef(() => MatInputModule) }, { kind: "directive", type: i0.forwardRef(() => i6$1.MatInput), selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: i0.forwardRef(() => NgxCurrencyDirective), selector: "input[currencyMask]", inputs: ["currencyMask", "options"] }, { kind: "component", type: i0.forwardRef(() => ComponentMapperComponent), selector: "component-mapper", inputs: ["name", "props", "errorMsg", "outputEvents", "parent"] }] }); }
|
|
6220
6179
|
}
|
|
6180
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: CurrencyComponent, decorators: [{
|
|
6181
|
+
type: Component,
|
|
6182
|
+
args: [{ selector: 'app-currency', standalone: true, imports: [CommonModule, ReactiveFormsModule, MatFormFieldModule, MatInputModule, NgxCurrencyDirective, forwardRef(() => ComponentMapperComponent)], template: "<div *ngIf=\"displayMode$; else noDisplayMode\">\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"FieldValueList\" [props]=\"{ label$, value$: formattedValue, displayMode$ }\"></component-mapper>\n</div>\n<ng-template #noDisplayMode>\n <div *ngIf=\"bHasForm$; else noEdit\">\n <div [formGroup]=\"formGroup$\" *ngIf=\"bVisible$\" class=\"psdk-currency-field\">\n <mat-form-field class=\"psdk-full-width\" subscriptSizing=\"dynamic\" [hintLabel]=\"helperText\">\n <mat-label>{{ label$ }}</mat-label>\n <div class=\"psdk-currency-input\">\n <input\n style=\"margin-left: 5px; margin-top: -1rem\"\n type=\"text\"\n matInput\n currencyMask\n [options]=\"{\n prefix: currSym,\n thousands: currSep,\n decimal: currDec,\n align: 'left',\n nullable: true,\n precision: decimalPrecision,\n inputMode: inputMode\n }\"\n [placeholder]=\"placeholder\"\n [formControlName]=\"controlName$\"\n [required]=\"bRequired$\"\n [formControl]=\"fieldControl\"\n [attr.data-test-id]=\"testId\"\n (blur)=\"fieldOnBlur($event)\"\n [readonly]=\"bReadonly$\"\n />\n </div>\n <mat-error *ngIf=\"fieldControl.invalid\">{{ getErrorMessage() }}</mat-error>\n </mat-form-field>\n </div>\n </div>\n</ng-template>\n<ng-template #noEdit>\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"Text\" [props]=\"{ pConn$, formatAs$: 'text' }\"></component-mapper>\n</ng-template>\n", styles: [".psdk-full-width{width:100%}.psdk-label-readonly{font-size:1rem;display:block;transform:translateY(-1.28125em) scale(.75) perspective(100px) translateZ(.001px);-ms-transform:translateY(-1.28125em) scale(.75);width:133.33333%}.psdk-data-readonly{padding-top:.625rem;width:100%}.psdk-currency-input{display:flex}.psdk-currency-field ::ng-deep .mdc-floating-label{position:initial!important}::ng-deep .mat-mdc-form-field-infix{width:auto}\n"] }]
|
|
6183
|
+
}], ctorParameters: () => [{ type: AngularPConnectService }, { type: i0.ChangeDetectorRef }, { type: Utils }], propDecorators: { pConn$: [{
|
|
6184
|
+
type: Input
|
|
6185
|
+
}], formGroup$: [{
|
|
6186
|
+
type: Input
|
|
6187
|
+
}] } });
|
|
6188
|
+
|
|
6189
|
+
const dateFormatInfoDefault = {
|
|
6190
|
+
dateFormatString: 'MM/DD/YYYY',
|
|
6191
|
+
dateFormatStringLong: 'MMM DD, YYYY',
|
|
6192
|
+
dateFormatStringLC: 'mm/dd/yyyy',
|
|
6193
|
+
dateFormatMask: '__/__/____'
|
|
6194
|
+
};
|
|
6195
|
+
const getDateFormatInfo = () => {
|
|
6196
|
+
const localizedVal = PCore?.getLocaleUtils().getLocaleValue;
|
|
6197
|
+
const localeCategory = 'CosmosFields';
|
|
6198
|
+
const theDateFormatInfo = dateFormatInfoDefault;
|
|
6199
|
+
const theLocale = getLocale$1();
|
|
6200
|
+
// NOTE: this date was chosen since it has a day larger than 12. If you change it,
|
|
6201
|
+
// you'll need to change the indexOf values below!
|
|
6202
|
+
const theTestDate = new Date(Date.parse('30 November 2023 12:00:00 GMT'));
|
|
6203
|
+
const theTestDateLocaleString = new Intl.DateTimeFormat(theLocale).format(theTestDate);
|
|
6204
|
+
// console.log(`theLocale: ${theLocale} theTestDateLocaleString: ${theTestDateLocaleString}`);
|
|
6205
|
+
// Build the format string based on where '11' (mm), '30' (dd), and '2023' (yyyy) are
|
|
6206
|
+
// Example: US locations are 0, 3, 6 but for NL locations are 3, 0, 6
|
|
6207
|
+
const locMM = theTestDateLocaleString.indexOf('11');
|
|
6208
|
+
const locDD = theTestDateLocaleString.indexOf('30');
|
|
6209
|
+
const locYYYY = theTestDateLocaleString.indexOf('2023');
|
|
6210
|
+
// If localized placeholder exists for one of day/month/year then show it otherwise fall back to ddmmyyyy
|
|
6211
|
+
const localizedPlaceholderExists = localizedVal('month_placeholder', localeCategory) !== 'month_placeholder' ||
|
|
6212
|
+
localizedVal('day_placeholder', localeCategory) !== 'day_placeholder' ||
|
|
6213
|
+
localizedVal('year_placeholder', localeCategory) !== 'year_placeholder';
|
|
6214
|
+
const arrPieces = [
|
|
6215
|
+
{
|
|
6216
|
+
loc: locMM,
|
|
6217
|
+
format: 'MM',
|
|
6218
|
+
longFormat: 'MMM',
|
|
6219
|
+
placeholder: localizedPlaceholderExists ? localizedVal('month_placeholder', localeCategory) : 'mm',
|
|
6220
|
+
mask: '__',
|
|
6221
|
+
separator: theTestDateLocaleString[locMM + 2]
|
|
6222
|
+
},
|
|
6223
|
+
{
|
|
6224
|
+
loc: locDD,
|
|
6225
|
+
format: 'DD',
|
|
6226
|
+
longFormat: 'DD',
|
|
6227
|
+
placeholder: localizedPlaceholderExists ? localizedVal('day_placeholder', localeCategory) : 'dd',
|
|
6228
|
+
mask: '__',
|
|
6229
|
+
separator: theTestDateLocaleString[locDD + 2]
|
|
6230
|
+
},
|
|
6231
|
+
{
|
|
6232
|
+
loc: locYYYY,
|
|
6233
|
+
format: 'YYYY',
|
|
6234
|
+
longFormat: 'YYYY',
|
|
6235
|
+
placeholder: localizedPlaceholderExists ? localizedVal('year_placeholder', localeCategory) : 'yyyy',
|
|
6236
|
+
mask: '____',
|
|
6237
|
+
separator: theTestDateLocaleString[locYYYY + 4]
|
|
6238
|
+
}
|
|
6239
|
+
];
|
|
6240
|
+
// Sort the associative array by order of appearance (loc) of each piece
|
|
6241
|
+
arrPieces.sort((a, b) => {
|
|
6242
|
+
if (a.loc < b.loc)
|
|
6243
|
+
return -1;
|
|
6244
|
+
if (a.loc > b.loc)
|
|
6245
|
+
return 1;
|
|
6246
|
+
return 0;
|
|
6247
|
+
});
|
|
6248
|
+
// Construct the structure to return...
|
|
6249
|
+
theDateFormatInfo.dateFormatString = `${arrPieces[0].format}${arrPieces[0].separator}${arrPieces[1].format}${arrPieces[1].separator}${arrPieces[2].format}`;
|
|
6250
|
+
theDateFormatInfo.dateFormatStringLong = `${arrPieces[0].longFormat} ${arrPieces[1].longFormat}, ${arrPieces[2].longFormat}`;
|
|
6251
|
+
theDateFormatInfo.dateFormatStringLC = `${arrPieces[0].placeholder}${arrPieces[0].separator}${arrPieces[1].placeholder}${arrPieces[1].separator}${arrPieces[2].placeholder}`;
|
|
6252
|
+
theDateFormatInfo.dateFormatMask = `${arrPieces[0].mask}${arrPieces[0].separator}${arrPieces[1].mask}${arrPieces[1].separator}${arrPieces[2].mask}`;
|
|
6253
|
+
return theDateFormatInfo;
|
|
6254
|
+
};
|
|
6221
6255
|
|
|
6222
|
-
/* eslint-disable max-classes-per-file */
|
|
6223
6256
|
class MyFormat {
|
|
6224
6257
|
constructor() {
|
|
6225
6258
|
this.theDateFormat = getDateFormatInfo();
|
|
@@ -6307,26 +6340,14 @@ class DateComponent {
|
|
|
6307
6340
|
// starting very simple...
|
|
6308
6341
|
// moved this from ngOnInit() and call this from there instead...
|
|
6309
6342
|
this.configProps$ = this.pConn$.resolveConfigProps(this.pConn$.getConfigProps());
|
|
6310
|
-
|
|
6311
|
-
let sDateValue = '';
|
|
6312
|
-
sDateValue = this.configProps$.value;
|
|
6313
|
-
if (sDateValue != '') {
|
|
6314
|
-
if (typeof sDateValue === 'object') {
|
|
6315
|
-
sDateValue = sDateValue.toISOString();
|
|
6316
|
-
}
|
|
6317
|
-
else if (sDateValue.indexOf('/') < 0) {
|
|
6318
|
-
// if we have the "pega" format, then for display, convert to standard format (US)
|
|
6319
|
-
// sDateValue = this.formatDate(sDateValue);
|
|
6320
|
-
sDateValue = this.utils.generateDate(sDateValue, 'Date-Long-Custom-YYYY');
|
|
6321
|
-
}
|
|
6322
|
-
this.value$ = new Date(sDateValue);
|
|
6323
|
-
}
|
|
6324
|
-
}
|
|
6343
|
+
this.value$ = this.configProps$.value;
|
|
6325
6344
|
this.testId = this.configProps$.testId;
|
|
6326
6345
|
this.label$ = this.configProps$.label;
|
|
6327
6346
|
this.displayMode$ = this.configProps$.displayMode;
|
|
6328
6347
|
this.helperText = this.configProps$.helperText;
|
|
6329
6348
|
this.placeholder = this.configProps$.placeholder || '';
|
|
6349
|
+
this.actionsApi = this.pConn$.getActionsApi();
|
|
6350
|
+
this.propName = this.pConn$.getStateProps().value;
|
|
6330
6351
|
// timeout and detectChanges to avoid ExpressionChangedAfterItHasBeenCheckedError
|
|
6331
6352
|
setTimeout(() => {
|
|
6332
6353
|
if (this.configProps$.required != null) {
|
|
@@ -6334,6 +6355,11 @@ class DateComponent {
|
|
|
6334
6355
|
}
|
|
6335
6356
|
this.cdRef.detectChanges();
|
|
6336
6357
|
});
|
|
6358
|
+
if (this.displayMode$ === 'DISPLAY_ONLY' || this.displayMode$ === 'STACKED_LARGE_VAL') {
|
|
6359
|
+
this.formattedValue$ = format(this.value$, 'date', {
|
|
6360
|
+
format: this.theDateFormat.dateFormatString
|
|
6361
|
+
});
|
|
6362
|
+
}
|
|
6337
6363
|
if (this.configProps$.visibility != null) {
|
|
6338
6364
|
this.bVisible$ = this.utils.getBooleanValue(this.configProps$.visibility);
|
|
6339
6365
|
}
|
|
@@ -6362,19 +6388,11 @@ class DateComponent {
|
|
|
6362
6388
|
}
|
|
6363
6389
|
fieldOnDateChange(event) {
|
|
6364
6390
|
// this comes from the date pop up
|
|
6365
|
-
|
|
6366
|
-
|
|
6367
|
-
|
|
6368
|
-
|
|
6369
|
-
|
|
6370
|
-
}
|
|
6371
|
-
fieldOnBlur(event) {
|
|
6372
|
-
// PConnect wants to use eventHandler for onBlur
|
|
6373
|
-
if (typeof event.value === 'object') {
|
|
6374
|
-
// convert date to pega "date" format
|
|
6375
|
-
event.value = event.value?.toISOString();
|
|
6376
|
-
}
|
|
6377
|
-
this.angularPConnectData.actions?.onBlur(this, { value: event.value });
|
|
6391
|
+
const value = event?.target?.value.format('YYYY-MM-DD');
|
|
6392
|
+
handleEvent(this.actionsApi, 'changeNblur', this.propName, value);
|
|
6393
|
+
this.pConn$.clearErrorMessages({
|
|
6394
|
+
property: this.propName
|
|
6395
|
+
});
|
|
6378
6396
|
}
|
|
6379
6397
|
hasErrors() {
|
|
6380
6398
|
return this.fieldControl.status === 'INVALID';
|
|
@@ -6394,13 +6412,8 @@ class DateComponent {
|
|
|
6394
6412
|
}
|
|
6395
6413
|
return errMessage;
|
|
6396
6414
|
}
|
|
6397
|
-
getFormattedValue() {
|
|
6398
|
-
return format(this.value$, 'date', {
|
|
6399
|
-
format: this.theDateFormat.dateFormatString
|
|
6400
|
-
});
|
|
6401
|
-
}
|
|
6402
6415
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: DateComponent, deps: [{ token: AngularPConnectService }, { token: i0.ChangeDetectorRef }, { token: Utils }, { token: MAT_DATE_FORMATS }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
6403
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: DateComponent, isStandalone: true, selector: "app-date", inputs: { pConn$: "pConn$", formGroup$: "formGroup$" }, providers: [{ provide: MAT_DATE_FORMATS, useClass: MyFormat }], ngImport: i0, template: "<div *ngIf=\"displayMode$; else noDisplayMode\">\n <component-mapper
|
|
6416
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: DateComponent, isStandalone: true, selector: "app-date", inputs: { pConn$: "pConn$", formGroup$: "formGroup$" }, providers: [{ provide: MAT_DATE_FORMATS, useClass: MyFormat }], ngImport: i0, template: "<div *ngIf=\"displayMode$; else noDisplayMode\">\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"FieldValueList\" [props]=\"{ label$, value$: formattedValue$, displayMode$ }\"></component-mapper>\n</div>\n<ng-template #noDisplayMode>\n <div *ngIf=\"!bReadonly$ && bHasForm$; else noEdit\">\n <div [formGroup]=\"formGroup$\" *ngIf=\"bVisible$\">\n <mat-form-field class=\"psdk-full-width\" subscriptSizing=\"dynamic\" [hintLabel]=\"helperText\">\n <mat-label>{{ label$ }}</mat-label>\n <input\n matInput\n #dateInput\n [attr.data-test-id]=\"testId\"\n [matDatepicker]=\"pegadate\"\n [placeholder]=\"dateFormatInfo.dateFormatStringLC\"\n type=\"text\"\n [value]=\"value$\"\n [required]=\"bRequired$\"\n [formControl]=\"fieldControl\"\n (dateChange)=\"fieldOnDateChange($event)\"\n />\n <mat-datepicker-toggle matSuffix [for]=\"pegadate\"></mat-datepicker-toggle>\n <mat-datepicker #pegadate [startAt]=\"value$\"></mat-datepicker>\n <mat-error *ngIf=\"fieldControl.invalid\">{{ getErrorMessage() }}</mat-error>\n </mat-form-field>\n </div>\n </div>\n</ng-template>\n<ng-template #noEdit>\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"Text\" [props]=\"{ pConn$, formatAs$: 'date' }\"></component-mapper>\n</ng-template>\n", styles: [".psdk-full-width{width:100%}.psdk-label-readonly{font-size:1rem;display:block;transform:translateY(-1.28125em) scale(.75) perspective(100px) translateZ(.001px);-ms-transform:translateY(-1.28125em) scale(.75);width:133.33333%}.psdk-data-readonly{padding-top:.625rem;width:100%}::ng-deep .mat-mdc-form-field-infix{width:auto}::ng-deep .mat-mdc-form-field-hint-wrapper{padding:0}\n"], dependencies: [{ kind: "ngmodule", type: i0.forwardRef(() => CommonModule) }, { kind: "directive", type: i0.forwardRef(() => i3.NgIf), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: i0.forwardRef(() => ReactiveFormsModule) }, { kind: "directive", type: i0.forwardRef(() => i4.DefaultValueAccessor), selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i0.forwardRef(() => i4.NgControlStatus), selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i0.forwardRef(() => i4.NgControlStatusGroup), selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i0.forwardRef(() => i4.RequiredValidator), selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i0.forwardRef(() => i4.FormControlDirective), selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i0.forwardRef(() => i4.FormGroupDirective), selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: i0.forwardRef(() => MatFormFieldModule) }, { kind: "component", type: i0.forwardRef(() => i5.MatFormField), selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i0.forwardRef(() => i5.MatLabel), selector: "mat-label" }, { kind: "directive", type: i0.forwardRef(() => i5.MatError), selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i0.forwardRef(() => i5.MatSuffix), selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "ngmodule", type: i0.forwardRef(() => MatInputModule) }, { kind: "directive", type: i0.forwardRef(() => i6$1.MatInput), selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "ngmodule", type: i0.forwardRef(() => MatDatepickerModule) }, { kind: "component", type: i0.forwardRef(() => i4$2.MatDatepicker), selector: "mat-datepicker", exportAs: ["matDatepicker"] }, { kind: "directive", type: i0.forwardRef(() => i4$2.MatDatepickerInput), selector: "input[matDatepicker]", inputs: ["matDatepicker", "min", "max", "matDatepickerFilter"], exportAs: ["matDatepickerInput"] }, { kind: "component", type: i0.forwardRef(() => i4$2.MatDatepickerToggle), selector: "mat-datepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disabled", "disableRipple"], exportAs: ["matDatepickerToggle"] }, { kind: "ngmodule", type: i0.forwardRef(() => MatNativeDateModule) }, { kind: "ngmodule", type: i0.forwardRef(() => MomentDateModule) }, { kind: "component", type: i0.forwardRef(() => ComponentMapperComponent), selector: "component-mapper", inputs: ["name", "props", "errorMsg", "outputEvents", "parent"] }] }); }
|
|
6404
6417
|
}
|
|
6405
6418
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: DateComponent, decorators: [{
|
|
6406
6419
|
type: Component,
|
|
@@ -6413,7 +6426,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImpo
|
|
|
6413
6426
|
MatNativeDateModule,
|
|
6414
6427
|
MomentDateModule,
|
|
6415
6428
|
forwardRef(() => ComponentMapperComponent)
|
|
6416
|
-
], providers: [{ provide: MAT_DATE_FORMATS, useClass: MyFormat }], template: "<div *ngIf=\"displayMode$; else noDisplayMode\">\n <component-mapper
|
|
6429
|
+
], providers: [{ provide: MAT_DATE_FORMATS, useClass: MyFormat }], template: "<div *ngIf=\"displayMode$; else noDisplayMode\">\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"FieldValueList\" [props]=\"{ label$, value$: formattedValue$, displayMode$ }\"></component-mapper>\n</div>\n<ng-template #noDisplayMode>\n <div *ngIf=\"!bReadonly$ && bHasForm$; else noEdit\">\n <div [formGroup]=\"formGroup$\" *ngIf=\"bVisible$\">\n <mat-form-field class=\"psdk-full-width\" subscriptSizing=\"dynamic\" [hintLabel]=\"helperText\">\n <mat-label>{{ label$ }}</mat-label>\n <input\n matInput\n #dateInput\n [attr.data-test-id]=\"testId\"\n [matDatepicker]=\"pegadate\"\n [placeholder]=\"dateFormatInfo.dateFormatStringLC\"\n type=\"text\"\n [value]=\"value$\"\n [required]=\"bRequired$\"\n [formControl]=\"fieldControl\"\n (dateChange)=\"fieldOnDateChange($event)\"\n />\n <mat-datepicker-toggle matSuffix [for]=\"pegadate\"></mat-datepicker-toggle>\n <mat-datepicker #pegadate [startAt]=\"value$\"></mat-datepicker>\n <mat-error *ngIf=\"fieldControl.invalid\">{{ getErrorMessage() }}</mat-error>\n </mat-form-field>\n </div>\n </div>\n</ng-template>\n<ng-template #noEdit>\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"Text\" [props]=\"{ pConn$, formatAs$: 'date' }\"></component-mapper>\n</ng-template>\n", styles: [".psdk-full-width{width:100%}.psdk-label-readonly{font-size:1rem;display:block;transform:translateY(-1.28125em) scale(.75) perspective(100px) translateZ(.001px);-ms-transform:translateY(-1.28125em) scale(.75);width:133.33333%}.psdk-data-readonly{padding-top:.625rem;width:100%}::ng-deep .mat-mdc-form-field-infix{width:auto}::ng-deep .mat-mdc-form-field-hint-wrapper{padding:0}\n"] }]
|
|
6417
6430
|
}], ctorParameters: () => [{ type: AngularPConnectService }, { type: i0.ChangeDetectorRef }, { type: Utils }, { type: MyFormat, decorators: [{
|
|
6418
6431
|
type: Inject,
|
|
6419
6432
|
args: [MAT_DATE_FORMATS]
|
|
@@ -6508,6 +6521,11 @@ class DateTimeComponent {
|
|
|
6508
6521
|
}
|
|
6509
6522
|
this.cdRef.detectChanges();
|
|
6510
6523
|
});
|
|
6524
|
+
if (this.displayMode$ === 'DISPLAY_ONLY' || this.displayMode$ === 'STACKED_LARGE_VAL') {
|
|
6525
|
+
this.formattedValue$ = format(this.value$, 'datetime', {
|
|
6526
|
+
format: `${this.theDateFormat.dateFormatString} hh:mm a`
|
|
6527
|
+
});
|
|
6528
|
+
}
|
|
6511
6529
|
if (this.configProps$.visibility != null) {
|
|
6512
6530
|
this.bVisible$ = this.utils.getBooleanValue(this.configProps$.visibility);
|
|
6513
6531
|
}
|
|
@@ -6525,6 +6543,8 @@ class DateTimeComponent {
|
|
|
6525
6543
|
this.bReadonly$ = this.utils.getBooleanValue(this.configProps$.readOnly);
|
|
6526
6544
|
}
|
|
6527
6545
|
this.componentReference = this.pConn$.getStateProps().value;
|
|
6546
|
+
this.actionsApi = this.pConn$.getActionsApi();
|
|
6547
|
+
this.propName = this.pConn$.getStateProps().value;
|
|
6528
6548
|
// trigger display of error message with field control
|
|
6529
6549
|
if (this.angularPConnectData.validateMessage != null && this.angularPConnectData.validateMessage != '') {
|
|
6530
6550
|
const timer = interval(100).subscribe(() => {
|
|
@@ -6540,14 +6560,7 @@ class DateTimeComponent {
|
|
|
6540
6560
|
// convert date to pega "date" format
|
|
6541
6561
|
event.value = event.value?.toISOString();
|
|
6542
6562
|
}
|
|
6543
|
-
this.
|
|
6544
|
-
}
|
|
6545
|
-
fieldOnBlur(event) {
|
|
6546
|
-
if (typeof event.value === 'object') {
|
|
6547
|
-
// convert date to pega "date" format
|
|
6548
|
-
event.value = event.value?.toISOString();
|
|
6549
|
-
}
|
|
6550
|
-
this.angularPConnectData.actions?.onBlur(this, event);
|
|
6563
|
+
handleEvent(this.actionsApi, 'changeNblur', this.propName, event.value);
|
|
6551
6564
|
}
|
|
6552
6565
|
getErrorMessage() {
|
|
6553
6566
|
let errMessage = '';
|
|
@@ -6565,7 +6578,7 @@ class DateTimeComponent {
|
|
|
6565
6578
|
return errMessage;
|
|
6566
6579
|
}
|
|
6567
6580
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: DateTimeComponent, deps: [{ token: AngularPConnectService }, { token: i0.ChangeDetectorRef }, { token: Utils }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
6568
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: DateTimeComponent, isStandalone: true, selector: "app-date-time", inputs: { pConn$: "pConn$", formGroup$: "formGroup$" }, ngImport: i0, template: "<div *ngIf=\"displayMode$; else noDisplayMode\">\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"FieldValueList\" [props]=\"{ label$, value$, displayMode$ }\"></component-mapper>\n</div>\n<ng-template #noDisplayMode>\n <div *ngIf=\"!bReadonly$ && bHasForm$; else noEdit\">\n <div [formGroup]=\"formGroup$\" *ngIf=\"bVisible$\">\n <mat-form-field class=\"psdk-full-width\" subscriptSizing=\"dynamic\" [hintLabel]=\"helperText\">\n <mat-label>{{ label$ }}</mat-label>\n <input\n matInput\n [owlDateTime]=\"dtPicker\"\n [attr.data-test-id]=\"testId\"\n [placeholder]=\"placeholder\"\n [formControl]=\"fieldControl\"\n (
|
|
6581
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: DateTimeComponent, isStandalone: true, selector: "app-date-time", inputs: { pConn$: "pConn$", formGroup$: "formGroup$" }, ngImport: i0, template: "<div *ngIf=\"displayMode$; else noDisplayMode\">\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"FieldValueList\" [props]=\"{ label$, value$: formattedValue$, displayMode$ }\"></component-mapper>\n</div>\n<ng-template #noDisplayMode>\n <div *ngIf=\"!bReadonly$ && bHasForm$; else noEdit\">\n <div [formGroup]=\"formGroup$\" *ngIf=\"bVisible$\">\n <mat-form-field class=\"psdk-full-width\" subscriptSizing=\"dynamic\" [hintLabel]=\"helperText\">\n <mat-label>{{ label$ }}</mat-label>\n <input\n matInput\n [owlDateTime]=\"dtPicker\"\n [attr.data-test-id]=\"testId\"\n [placeholder]=\"placeholder\"\n [formControl]=\"fieldControl\"\n (dateTimeChange)=\"fieldOnDateChange($event)\"\n [value]=\"value$\"\n [required]=\"bRequired$\"\n />\n <mat-datepicker-toggle matSuffix [owlDateTimeTrigger]=\"dtPicker\"></mat-datepicker-toggle>\n <owl-date-time #dtPicker></owl-date-time>\n <mat-error *ngIf=\"fieldControl?.invalid\">{{ getErrorMessage() }}</mat-error>\n </mat-form-field>\n </div>\n </div>\n</ng-template>\n<ng-template #noEdit>\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"Text\" [props]=\"{ pConn$, formatAs$: 'date-time' }\"></component-mapper>\n</ng-template>\n", styles: [".psdk-full-width{width:100%}.psdk-label-readonly{font-size:1rem;display:block;transform:translateY(-1.28125em) scale(.75) perspective(100px) translateZ(.001px);-ms-transform:translateY(-1.28125em) scale(.75);width:133.33333%}.psdk-data-readonly{padding-top:.625rem;width:100%}::ng-deep .mat-mdc-form-field-infix{width:auto}::ng-deep .mat-datepicker-content,::ng-deep .time-container{box-shadow:0 2px 4px -1px #0003,0 4px 5px #00000024,0 1px 10px #0000001f;display:block;border-radius:4px;background-color:var(--mat-datepicker-calendar-container-background-color);color:var(--mat-datepicker-calendar-container-text-color)}::ng-deep .mat-calendar-body-cell-content{color:var(--mat-datepicker-calendar-date-text-color);border-color:var(--mat-datepicker-calendar-date-outline-color)}::ng-deep .mat-calendar-body-selected{background-color:var(--mat-datepicker-calendar-date-selected-state-background-color);color:var(--mat-datepicker-calendar-date-selected-state-text-color)}::ng-deep .mat-calendar-body-cell-content{border:none!important}::ng-deep .mat-calendar-body-cell:not(.mat-calendar-body-disabled):hover>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){background-color:var(--mat-datepicker-calendar-date-hover-state-background-color)}::ng-deep .mat-calendar-arrow{fill:var(--mat-datepicker-calendar-period-button-icon-color)}::ng-deep .mat-calendar-table-header th{text-align:center;padding:0 0 8px;color:var(--mat-datepicker-calendar-header-text-color);font-size:var(--mat-datepicker-calendar-header-text-size);font-weight:var(--mat-datepicker-calendar-header-text-weight)}::ng-deep .mat-datepicker-content .mat-calendar-previous-button,::ng-deep .mat-datepicker-content .mat-calendar-next-button{color:var(--mat-datepicker-calendar-navigation-button-icon-color)}::ng-deep .mat-calendar-table-header-divider:after{content:\"\";position:absolute;top:0;left:-8px;right:-8px;height:1px;background:var(--mat-datepicker-calendar-header-divider-color)}\n"], dependencies: [{ kind: "ngmodule", type: i0.forwardRef(() => CommonModule) }, { kind: "directive", type: i0.forwardRef(() => i3.NgIf), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: i0.forwardRef(() => ReactiveFormsModule) }, { kind: "directive", type: i0.forwardRef(() => i4.DefaultValueAccessor), selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i0.forwardRef(() => i4.NgControlStatus), selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i0.forwardRef(() => i4.NgControlStatusGroup), selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i0.forwardRef(() => i4.RequiredValidator), selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i0.forwardRef(() => i4.FormControlDirective), selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i0.forwardRef(() => i4.FormGroupDirective), selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: i0.forwardRef(() => MatFormFieldModule) }, { kind: "component", type: i0.forwardRef(() => i5.MatFormField), selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i0.forwardRef(() => i5.MatLabel), selector: "mat-label" }, { kind: "directive", type: i0.forwardRef(() => i5.MatError), selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i0.forwardRef(() => i5.MatSuffix), selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "ngmodule", type: i0.forwardRef(() => MatInputModule) }, { kind: "directive", type: i0.forwardRef(() => i6$1.MatInput), selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "ngmodule", type: i0.forwardRef(() => MatDatepickerModule) }, { kind: "component", type: i0.forwardRef(() => i4$2.MatDatepickerToggle), selector: "mat-datepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disabled", "disableRipple"], exportAs: ["matDatepickerToggle"] }, { kind: "ngmodule", type: i0.forwardRef(() => OwlDateTimeModule) }, { kind: "directive", type: i0.forwardRef(() => i8$1.OwlDateTimeTriggerDirective), selector: "[owlDateTimeTrigger]", inputs: ["owlDateTimeTrigger", "disabled"] }, { kind: "directive", type: i0.forwardRef(() => i8$1.OwlDateTimeInputDirective), selector: "input[owlDateTime]", inputs: ["required", "owlDateTime", "owlDateTimeFilter", "_disabled", "min", "max", "selectMode", "rangeSeparator", "value", "values"], outputs: ["dateTimeChange", "dateTimeInput"], exportAs: ["owlDateTimeInput"] }, { kind: "component", type: i0.forwardRef(() => i8$1.OwlDateTimeComponent), selector: "owl-date-time", inputs: ["backdropClass", "panelClass", "startAt", "endAt", "pickerType", "pickerMode", "disabled", "opened", "scrollStrategy"], outputs: ["afterPickerClosed", "beforePickerOpen", "afterPickerOpen", "yearSelected", "monthSelected", "dateSelected"], exportAs: ["owlDateTime"] }, { kind: "ngmodule", type: i0.forwardRef(() => OwlNativeDateTimeModule) }, { kind: "component", type: i0.forwardRef(() => ComponentMapperComponent), selector: "component-mapper", inputs: ["name", "props", "errorMsg", "outputEvents", "parent"] }] }); }
|
|
6569
6582
|
}
|
|
6570
6583
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: DateTimeComponent, decorators: [{
|
|
6571
6584
|
type: Component,
|
|
@@ -6578,7 +6591,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImpo
|
|
|
6578
6591
|
OwlDateTimeModule,
|
|
6579
6592
|
OwlNativeDateTimeModule,
|
|
6580
6593
|
forwardRef(() => ComponentMapperComponent)
|
|
6581
|
-
], template: "<div *ngIf=\"displayMode$; else noDisplayMode\">\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"FieldValueList\" [props]=\"{ label$, value$, displayMode$ }\"></component-mapper>\n</div>\n<ng-template #noDisplayMode>\n <div *ngIf=\"!bReadonly$ && bHasForm$; else noEdit\">\n <div [formGroup]=\"formGroup$\" *ngIf=\"bVisible$\">\n <mat-form-field class=\"psdk-full-width\" subscriptSizing=\"dynamic\" [hintLabel]=\"helperText\">\n <mat-label>{{ label$ }}</mat-label>\n <input\n matInput\n [owlDateTime]=\"dtPicker\"\n [attr.data-test-id]=\"testId\"\n [placeholder]=\"placeholder\"\n [formControl]=\"fieldControl\"\n (
|
|
6594
|
+
], template: "<div *ngIf=\"displayMode$; else noDisplayMode\">\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"FieldValueList\" [props]=\"{ label$, value$: formattedValue$, displayMode$ }\"></component-mapper>\n</div>\n<ng-template #noDisplayMode>\n <div *ngIf=\"!bReadonly$ && bHasForm$; else noEdit\">\n <div [formGroup]=\"formGroup$\" *ngIf=\"bVisible$\">\n <mat-form-field class=\"psdk-full-width\" subscriptSizing=\"dynamic\" [hintLabel]=\"helperText\">\n <mat-label>{{ label$ }}</mat-label>\n <input\n matInput\n [owlDateTime]=\"dtPicker\"\n [attr.data-test-id]=\"testId\"\n [placeholder]=\"placeholder\"\n [formControl]=\"fieldControl\"\n (dateTimeChange)=\"fieldOnDateChange($event)\"\n [value]=\"value$\"\n [required]=\"bRequired$\"\n />\n <mat-datepicker-toggle matSuffix [owlDateTimeTrigger]=\"dtPicker\"></mat-datepicker-toggle>\n <owl-date-time #dtPicker></owl-date-time>\n <mat-error *ngIf=\"fieldControl?.invalid\">{{ getErrorMessage() }}</mat-error>\n </mat-form-field>\n </div>\n </div>\n</ng-template>\n<ng-template #noEdit>\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"Text\" [props]=\"{ pConn$, formatAs$: 'date-time' }\"></component-mapper>\n</ng-template>\n", styles: [".psdk-full-width{width:100%}.psdk-label-readonly{font-size:1rem;display:block;transform:translateY(-1.28125em) scale(.75) perspective(100px) translateZ(.001px);-ms-transform:translateY(-1.28125em) scale(.75);width:133.33333%}.psdk-data-readonly{padding-top:.625rem;width:100%}::ng-deep .mat-mdc-form-field-infix{width:auto}::ng-deep .mat-datepicker-content,::ng-deep .time-container{box-shadow:0 2px 4px -1px #0003,0 4px 5px #00000024,0 1px 10px #0000001f;display:block;border-radius:4px;background-color:var(--mat-datepicker-calendar-container-background-color);color:var(--mat-datepicker-calendar-container-text-color)}::ng-deep .mat-calendar-body-cell-content{color:var(--mat-datepicker-calendar-date-text-color);border-color:var(--mat-datepicker-calendar-date-outline-color)}::ng-deep .mat-calendar-body-selected{background-color:var(--mat-datepicker-calendar-date-selected-state-background-color);color:var(--mat-datepicker-calendar-date-selected-state-text-color)}::ng-deep .mat-calendar-body-cell-content{border:none!important}::ng-deep .mat-calendar-body-cell:not(.mat-calendar-body-disabled):hover>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){background-color:var(--mat-datepicker-calendar-date-hover-state-background-color)}::ng-deep .mat-calendar-arrow{fill:var(--mat-datepicker-calendar-period-button-icon-color)}::ng-deep .mat-calendar-table-header th{text-align:center;padding:0 0 8px;color:var(--mat-datepicker-calendar-header-text-color);font-size:var(--mat-datepicker-calendar-header-text-size);font-weight:var(--mat-datepicker-calendar-header-text-weight)}::ng-deep .mat-datepicker-content .mat-calendar-previous-button,::ng-deep .mat-datepicker-content .mat-calendar-next-button{color:var(--mat-datepicker-calendar-navigation-button-icon-color)}::ng-deep .mat-calendar-table-header-divider:after{content:\"\";position:absolute;top:0;left:-8px;right:-8px;height:1px;background:var(--mat-datepicker-calendar-header-divider-color)}\n"] }]
|
|
6582
6595
|
}], ctorParameters: () => [{ type: AngularPConnectService }, { type: i0.ChangeDetectorRef }, { type: Utils }], propDecorators: { pConn$: [{
|
|
6583
6596
|
type: Input
|
|
6584
6597
|
}], formGroup$: [{
|
|
@@ -6667,11 +6680,11 @@ class DecimalComponent {
|
|
|
6667
6680
|
this.currSep = showGroupSeparators ? theSymbols.theDigitGroupSeparator : '';
|
|
6668
6681
|
const theCurrencyOptions = getCurrencyOptions(currencyISOCode);
|
|
6669
6682
|
this.formatter = this.configProps$.formatter;
|
|
6670
|
-
if (this.formatter
|
|
6683
|
+
if (this.formatter) {
|
|
6671
6684
|
this.formattedValue = format(this.value$, this.formatter.toLowerCase(), theCurrencyOptions);
|
|
6672
6685
|
}
|
|
6673
6686
|
else {
|
|
6674
|
-
this.formattedValue = format(this.value$,
|
|
6687
|
+
this.formattedValue = format(this.value$, 'decimal', theCurrencyOptions);
|
|
6675
6688
|
}
|
|
6676
6689
|
// timeout and detectChanges to avoid ExpressionChangedAfterItHasBeenCheckedError
|
|
6677
6690
|
setTimeout(() => {
|
|
@@ -6859,9 +6872,10 @@ class DropdownComponent {
|
|
|
6859
6872
|
if (this.value$ === '' && !this.bReadonly$) {
|
|
6860
6873
|
this.value$ = 'Select';
|
|
6861
6874
|
}
|
|
6862
|
-
|
|
6875
|
+
this.actionsApi = this.pConn$.getActionsApi();
|
|
6876
|
+
this.propName = this.pConn$.getStateProps().value;
|
|
6863
6877
|
const className = this.pConn$.getCaseInfo().getClassName();
|
|
6864
|
-
const refName = propName?.slice(propName.lastIndexOf('.') + 1);
|
|
6878
|
+
const refName = this.propName?.slice(this.propName.lastIndexOf('.') + 1);
|
|
6865
6879
|
this.fieldMetadata = this.configProps$.fieldMetadata;
|
|
6866
6880
|
const metaData = Array.isArray(this.fieldMetadata) ? this.fieldMetadata.filter(field => field?.classID === className)[0] : this.fieldMetadata;
|
|
6867
6881
|
let displayName = metaData?.datasource?.propertyForDisplayText;
|
|
@@ -6887,16 +6901,13 @@ class DropdownComponent {
|
|
|
6887
6901
|
if (event?.value === 'Select') {
|
|
6888
6902
|
event.value = '';
|
|
6889
6903
|
}
|
|
6890
|
-
|
|
6891
|
-
const propName = this.pConn$?.getStateProps().value;
|
|
6892
|
-
handleEvent(actionsApi, 'changeNblur', propName, event.value);
|
|
6904
|
+
handleEvent(this.actionsApi, 'changeNblur', this.propName, event.value);
|
|
6893
6905
|
if (this.configProps$?.onRecordChange) {
|
|
6894
6906
|
this.configProps$.onRecordChange(event);
|
|
6895
6907
|
}
|
|
6896
|
-
|
|
6897
|
-
|
|
6898
|
-
|
|
6899
|
-
this.angularPConnectData.actions?.onBlur(this, event);
|
|
6908
|
+
this.pConn$.clearErrorMessages({
|
|
6909
|
+
property: this.propName
|
|
6910
|
+
});
|
|
6900
6911
|
}
|
|
6901
6912
|
getLocalizedOptionValue(opt) {
|
|
6902
6913
|
return this.pConn$.getLocalizedValue(opt.value, this.localePath, this.pConn$.getLocaleRuleNameFromKeys(this.localeClass, this.localeContext, this.localeName));
|
|
@@ -7020,6 +7031,8 @@ class EmailComponent {
|
|
|
7020
7031
|
if (this.configProps$.readOnly != null) {
|
|
7021
7032
|
this.bReadonly$ = this.utils.getBooleanValue(this.configProps$.readOnly);
|
|
7022
7033
|
}
|
|
7034
|
+
this.actionsApi = this.pConn$.getActionsApi();
|
|
7035
|
+
this.propName = this.pConn$.getStateProps().value;
|
|
7023
7036
|
this.componentReference = this.pConn$.getStateProps().value;
|
|
7024
7037
|
// trigger display of error message with field control
|
|
7025
7038
|
if (this.angularPConnectData.validateMessage != null && this.angularPConnectData.validateMessage != '') {
|
|
@@ -7031,11 +7044,15 @@ class EmailComponent {
|
|
|
7031
7044
|
}
|
|
7032
7045
|
}
|
|
7033
7046
|
fieldOnChange(event) {
|
|
7034
|
-
|
|
7047
|
+
const value = event?.target?.value;
|
|
7048
|
+
handleEvent(this.actionsApi, 'changeNblur', this.propName, value);
|
|
7049
|
+
this.pConn$.clearErrorMessages({
|
|
7050
|
+
property: this.propName
|
|
7051
|
+
});
|
|
7035
7052
|
}
|
|
7036
7053
|
fieldOnBlur(event) {
|
|
7037
|
-
|
|
7038
|
-
this.
|
|
7054
|
+
const value = event?.target?.value;
|
|
7055
|
+
handleEvent(this.actionsApi, 'changeNblur', this.propName, value);
|
|
7039
7056
|
}
|
|
7040
7057
|
getErrorMessage() {
|
|
7041
7058
|
let errMessage = '';
|
|
@@ -7098,12 +7115,12 @@ class GroupComponent {
|
|
|
7098
7115
|
if (this.configProps$.visibility === undefined) {
|
|
7099
7116
|
this.visibility$ = this.pConn$.getComputedVisibility();
|
|
7100
7117
|
}
|
|
7101
|
-
if (this.configProps$.displayMode === '
|
|
7118
|
+
if (this.configProps$.displayMode === 'DISPLAY_ONLY') {
|
|
7102
7119
|
if (this.configProps$.visibility === undefined)
|
|
7103
7120
|
this.visibility$ = true;
|
|
7104
7121
|
this.arChildren$.forEach(child => {
|
|
7105
7122
|
const pConn = child.getPConnect();
|
|
7106
|
-
pConn.setInheritedProp('displayMode', '
|
|
7123
|
+
pConn.setInheritedProp('displayMode', 'DISPLAY_ONLY');
|
|
7107
7124
|
pConn.setInheritedProp('readOnly', true);
|
|
7108
7125
|
return child;
|
|
7109
7126
|
});
|
|
@@ -7194,6 +7211,8 @@ class IntegerComponent {
|
|
|
7194
7211
|
}
|
|
7195
7212
|
this.helperText = this.configProps$.helperText;
|
|
7196
7213
|
this.placeholder = this.configProps$.placeholder || '';
|
|
7214
|
+
this.actionsApi = this.pConn$.getActionsApi();
|
|
7215
|
+
this.propName = this.pConn$.getStateProps().value;
|
|
7197
7216
|
// timeout and detectChanges to avoid ExpressionChangedAfterItHasBeenCheckedError
|
|
7198
7217
|
setTimeout(() => {
|
|
7199
7218
|
if (this.configProps$.required != null) {
|
|
@@ -7227,12 +7246,14 @@ class IntegerComponent {
|
|
|
7227
7246
|
});
|
|
7228
7247
|
}
|
|
7229
7248
|
}
|
|
7230
|
-
fieldOnChange(
|
|
7231
|
-
this.
|
|
7249
|
+
fieldOnChange() {
|
|
7250
|
+
this.pConn$.clearErrorMessages({
|
|
7251
|
+
property: this.propName
|
|
7252
|
+
});
|
|
7232
7253
|
}
|
|
7233
7254
|
fieldOnBlur(event) {
|
|
7234
|
-
|
|
7235
|
-
this.
|
|
7255
|
+
const value = event?.target?.value;
|
|
7256
|
+
handleEvent(this.actionsApi, 'changeNblur', this.propName, value);
|
|
7236
7257
|
}
|
|
7237
7258
|
getErrorMessage() {
|
|
7238
7259
|
// field control gets error message from here
|
|
@@ -7251,11 +7272,11 @@ class IntegerComponent {
|
|
|
7251
7272
|
return errMessage;
|
|
7252
7273
|
}
|
|
7253
7274
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: IntegerComponent, deps: [{ token: AngularPConnectService }, { token: i0.ChangeDetectorRef }, { token: Utils }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
7254
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: IntegerComponent, isStandalone: true, selector: "app-integer", inputs: { pConn$: "pConn$", formGroup$: "formGroup$" }, ngImport: i0, template: "<div *ngIf=\"displayMode$; else noDisplayMode\">\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"FieldValueList\" [props]=\"{ label$, value$, displayMode$ }\"></component-mapper>\n</div>\n<ng-template #noDisplayMode>\n <div *ngIf=\"!bReadonly$ && bHasForm$; else noEdit\">\n <div [formGroup]=\"formGroup$\" *ngIf=\"bVisible$\">\n <mat-form-field class=\"psdk-full-width\" subscriptSizing=\"dynamic\" [hintLabel]=\"helperText\">\n <mat-label>{{ label$ }}</mat-label>\n <input\n matInput\n [placeholder]=\"placeholder\"\n type=\"number\"\n step=\"1\"\n [value]=\"value$\"\n [required]=\"bRequired$\"\n [formControl]=\"fieldControl\"\n [attr.data-test-id]=\"testId\"\n (change)=\"fieldOnChange(
|
|
7275
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: IntegerComponent, isStandalone: true, selector: "app-integer", inputs: { pConn$: "pConn$", formGroup$: "formGroup$" }, ngImport: i0, template: "<div *ngIf=\"displayMode$; else noDisplayMode\">\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"FieldValueList\" [props]=\"{ label$, value$, displayMode$ }\"></component-mapper>\n</div>\n<ng-template #noDisplayMode>\n <div *ngIf=\"!bReadonly$ && bHasForm$; else noEdit\">\n <div [formGroup]=\"formGroup$\" *ngIf=\"bVisible$\">\n <mat-form-field class=\"psdk-full-width\" subscriptSizing=\"dynamic\" [hintLabel]=\"helperText\">\n <mat-label>{{ label$ }}</mat-label>\n <input\n matInput\n [placeholder]=\"placeholder\"\n type=\"number\"\n step=\"1\"\n [value]=\"value$\"\n [required]=\"bRequired$\"\n [formControl]=\"fieldControl\"\n [attr.data-test-id]=\"testId\"\n (change)=\"fieldOnChange()\"\n (blur)=\"fieldOnBlur($event)\"\n />\n <mat-error *ngIf=\"fieldControl.invalid\">{{ getErrorMessage() }}</mat-error>\n </mat-form-field>\n </div>\n </div>\n</ng-template>\n<ng-template #noEdit>\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"Text\" [props]=\"{ pConn$, formatAs$: 'text' }\"></component-mapper>\n</ng-template>\n", styles: [".psdk-full-width{width:100%}.psdk-label-readonly{font-size:1rem;display:block;transform:translateY(-1.28125em) scale(.75) perspective(100px) translateZ(.001px);-ms-transform:translateY(-1.28125em) scale(.75);width:133.33333%}.psdk-data-readonly{padding-top:.625rem;width:100%}::ng-deep .mat-mdc-form-field-infix{width:auto}\n"], dependencies: [{ kind: "ngmodule", type: i0.forwardRef(() => CommonModule) }, { kind: "directive", type: i0.forwardRef(() => i3.NgIf), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: i0.forwardRef(() => ReactiveFormsModule) }, { kind: "directive", type: i0.forwardRef(() => i4.DefaultValueAccessor), selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i0.forwardRef(() => i4.NumberValueAccessor), selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i0.forwardRef(() => i4.NgControlStatus), selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i0.forwardRef(() => i4.NgControlStatusGroup), selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i0.forwardRef(() => i4.RequiredValidator), selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i0.forwardRef(() => i4.FormControlDirective), selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i0.forwardRef(() => i4.FormGroupDirective), selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: i0.forwardRef(() => MatFormFieldModule) }, { kind: "component", type: i0.forwardRef(() => i5.MatFormField), selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i0.forwardRef(() => i5.MatLabel), selector: "mat-label" }, { kind: "directive", type: i0.forwardRef(() => i5.MatError), selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "ngmodule", type: i0.forwardRef(() => MatInputModule) }, { kind: "directive", type: i0.forwardRef(() => i6$1.MatInput), selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i0.forwardRef(() => ComponentMapperComponent), selector: "component-mapper", inputs: ["name", "props", "errorMsg", "outputEvents", "parent"] }] }); }
|
|
7255
7276
|
}
|
|
7256
7277
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: IntegerComponent, decorators: [{
|
|
7257
7278
|
type: Component,
|
|
7258
|
-
args: [{ selector: 'app-integer', standalone: true, imports: [CommonModule, ReactiveFormsModule, MatFormFieldModule, MatInputModule, forwardRef(() => ComponentMapperComponent)], template: "<div *ngIf=\"displayMode$; else noDisplayMode\">\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"FieldValueList\" [props]=\"{ label$, value$, displayMode$ }\"></component-mapper>\n</div>\n<ng-template #noDisplayMode>\n <div *ngIf=\"!bReadonly$ && bHasForm$; else noEdit\">\n <div [formGroup]=\"formGroup$\" *ngIf=\"bVisible$\">\n <mat-form-field class=\"psdk-full-width\" subscriptSizing=\"dynamic\" [hintLabel]=\"helperText\">\n <mat-label>{{ label$ }}</mat-label>\n <input\n matInput\n [placeholder]=\"placeholder\"\n type=\"number\"\n step=\"1\"\n [value]=\"value$\"\n [required]=\"bRequired$\"\n [formControl]=\"fieldControl\"\n [attr.data-test-id]=\"testId\"\n (change)=\"fieldOnChange(
|
|
7279
|
+
args: [{ selector: 'app-integer', standalone: true, imports: [CommonModule, ReactiveFormsModule, MatFormFieldModule, MatInputModule, forwardRef(() => ComponentMapperComponent)], template: "<div *ngIf=\"displayMode$; else noDisplayMode\">\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"FieldValueList\" [props]=\"{ label$, value$, displayMode$ }\"></component-mapper>\n</div>\n<ng-template #noDisplayMode>\n <div *ngIf=\"!bReadonly$ && bHasForm$; else noEdit\">\n <div [formGroup]=\"formGroup$\" *ngIf=\"bVisible$\">\n <mat-form-field class=\"psdk-full-width\" subscriptSizing=\"dynamic\" [hintLabel]=\"helperText\">\n <mat-label>{{ label$ }}</mat-label>\n <input\n matInput\n [placeholder]=\"placeholder\"\n type=\"number\"\n step=\"1\"\n [value]=\"value$\"\n [required]=\"bRequired$\"\n [formControl]=\"fieldControl\"\n [attr.data-test-id]=\"testId\"\n (change)=\"fieldOnChange()\"\n (blur)=\"fieldOnBlur($event)\"\n />\n <mat-error *ngIf=\"fieldControl.invalid\">{{ getErrorMessage() }}</mat-error>\n </mat-form-field>\n </div>\n </div>\n</ng-template>\n<ng-template #noEdit>\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"Text\" [props]=\"{ pConn$, formatAs$: 'text' }\"></component-mapper>\n</ng-template>\n", styles: [".psdk-full-width{width:100%}.psdk-label-readonly{font-size:1rem;display:block;transform:translateY(-1.28125em) scale(.75) perspective(100px) translateZ(.001px);-ms-transform:translateY(-1.28125em) scale(.75);width:133.33333%}.psdk-data-readonly{padding-top:.625rem;width:100%}::ng-deep .mat-mdc-form-field-infix{width:auto}\n"] }]
|
|
7259
7280
|
}], ctorParameters: () => [{ type: AngularPConnectService }, { type: i0.ChangeDetectorRef }, { type: Utils }], propDecorators: { pConn$: [{
|
|
7260
7281
|
type: Input
|
|
7261
7282
|
}], formGroup$: [{
|
|
@@ -7364,11 +7385,8 @@ class PercentageComponent {
|
|
|
7364
7385
|
this.label$ = this.configProps$.label;
|
|
7365
7386
|
this.displayMode$ = this.configProps$.displayMode;
|
|
7366
7387
|
this.inputMode = NgxCurrencyInputMode.Natural;
|
|
7367
|
-
|
|
7388
|
+
const nValue = this.configProps$.value;
|
|
7368
7389
|
if (nValue) {
|
|
7369
|
-
if (typeof nValue === 'string') {
|
|
7370
|
-
nValue = parseInt(nValue, 10);
|
|
7371
|
-
}
|
|
7372
7390
|
this.value$ = nValue;
|
|
7373
7391
|
}
|
|
7374
7392
|
this.helperText = this.configProps$.helperText;
|
|
@@ -7377,6 +7395,11 @@ class PercentageComponent {
|
|
|
7377
7395
|
const theSymbols = getCurrencyCharacters('');
|
|
7378
7396
|
this.currDec = theSymbols.theDecimalIndicator || '2';
|
|
7379
7397
|
this.currSep = showGroupSeparators ? theSymbols.theDigitGroupSeparator : '';
|
|
7398
|
+
this.actionsApi = this.pConn$.getActionsApi();
|
|
7399
|
+
this.propName = this.pConn$.getStateProps().value;
|
|
7400
|
+
if (this.displayMode$ === 'DISPLAY_ONLY' || this.displayMode$ === 'STACKED_LARGE_VAL') {
|
|
7401
|
+
this.formattedValue = format(nValue, 'percentage');
|
|
7402
|
+
}
|
|
7380
7403
|
// timeout and detectChanges to avoid ExpressionChangedAfterItHasBeenCheckedError
|
|
7381
7404
|
setTimeout(() => {
|
|
7382
7405
|
if (this.configProps$.required != null) {
|
|
@@ -7411,22 +7434,22 @@ class PercentageComponent {
|
|
|
7411
7434
|
});
|
|
7412
7435
|
}
|
|
7413
7436
|
}
|
|
7414
|
-
fieldOnChange(
|
|
7415
|
-
this.
|
|
7437
|
+
fieldOnChange() {
|
|
7438
|
+
this.pConn$.clearErrorMessages({
|
|
7439
|
+
property: this.propName
|
|
7440
|
+
});
|
|
7416
7441
|
}
|
|
7417
7442
|
fieldOnBlur(event) {
|
|
7418
|
-
const actionsApi = this.pConn$?.getActionsApi();
|
|
7419
|
-
const propName = this.pConn$?.getStateProps()?.value;
|
|
7420
7443
|
let value = event?.target?.value;
|
|
7421
7444
|
value = value ? value.replace(/%/g, '') : '';
|
|
7422
|
-
if (this.currSep === '
|
|
7423
|
-
value = value.replace(/,/g, '');
|
|
7424
|
-
}
|
|
7425
|
-
else {
|
|
7445
|
+
if (this.currSep === '.') {
|
|
7426
7446
|
value = value?.replace(/\./g, '');
|
|
7427
7447
|
value = value?.replace(/,/g, '.');
|
|
7428
7448
|
}
|
|
7429
|
-
|
|
7449
|
+
else {
|
|
7450
|
+
value = value.replace(/,/g, '');
|
|
7451
|
+
}
|
|
7452
|
+
handleEvent(this.actionsApi, 'changeNblur', this.propName, value);
|
|
7430
7453
|
}
|
|
7431
7454
|
getErrorMessage() {
|
|
7432
7455
|
// field control gets error message from here
|
|
@@ -7445,11 +7468,11 @@ class PercentageComponent {
|
|
|
7445
7468
|
return errMessage;
|
|
7446
7469
|
}
|
|
7447
7470
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: PercentageComponent, deps: [{ token: AngularPConnectService }, { token: i0.ChangeDetectorRef }, { token: Utils }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
7448
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: PercentageComponent, isStandalone: true, selector: "app-percentage", inputs: { pConn$: "pConn$", formGroup$: "formGroup$" }, ngImport: i0, template: "<div *ngIf=\"displayMode$; else noDisplayMode\">\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"FieldValueList\" [props]=\"{ label$, value
|
|
7471
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: PercentageComponent, isStandalone: true, selector: "app-percentage", inputs: { pConn$: "pConn$", formGroup$: "formGroup$" }, ngImport: i0, template: "<div *ngIf=\"displayMode$; else noDisplayMode\">\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"FieldValueList\" [props]=\"{ label$, value$: formattedValue, displayMode$ }\"></component-mapper>\n</div>\n<ng-template #noDisplayMode>\n <div *ngIf=\"bHasForm$; else noEdit\">\n <div [formGroup]=\"formGroup$\" *ngIf=\"bVisible$\">\n <mat-form-field class=\"psdk-full-width\" subscriptSizing=\"dynamic\" [hintLabel]=\"helperText\">\n <mat-label>{{ label$ }}</mat-label>\n <input\n type=\"text\"\n matInput\n currencyMask\n [options]=\"{\n prefix: '',\n suffix: '%',\n thousands: currSep,\n decimal: currDec,\n align: 'left',\n nullable: true,\n precision: decimalPrecision,\n inputMode: inputMode\n }\"\n [placeholder]=\"placeholder\"\n step=\".01\"\n [formControlName]=\"controlName$\"\n [required]=\"bRequired$\"\n [formControl]=\"fieldControl\"\n [attr.data-test-id]=\"testId\"\n (change)=\"fieldOnChange()\"\n (blur)=\"fieldOnBlur($event)\"\n [readonly]=\"bReadonly$\"\n [value]=\"value$\"\n />\n <mat-error *ngIf=\"fieldControl.invalid\">{{ getErrorMessage() }}</mat-error>\n </mat-form-field>\n </div>\n </div>\n</ng-template>\n<ng-template #noEdit>\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"Text\" [props]=\"{ pConn$, formatAs$: 'text' }\"></component-mapper>\n</ng-template>\n", styles: [".psdk-full-width{width:100%}.psdk-label-readonly{font-size:1rem;display:block;transform:translateY(-1.28125em) scale(.75) perspective(100px) translateZ(.001px);-ms-transform:translateY(-1.28125em) scale(.75);width:133.33333%}.psdk-data-readonly{padding-top:.625rem;width:100%}::ng-deep .mat-mdc-form-field-infix{width:auto}\n"], dependencies: [{ kind: "ngmodule", type: i0.forwardRef(() => CommonModule) }, { kind: "directive", type: i0.forwardRef(() => i3.NgIf), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: i0.forwardRef(() => ReactiveFormsModule) }, { kind: "directive", type: i0.forwardRef(() => i4.DefaultValueAccessor), selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i0.forwardRef(() => i4.NgControlStatus), selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i0.forwardRef(() => i4.NgControlStatusGroup), selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i0.forwardRef(() => i4.RequiredValidator), selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i0.forwardRef(() => i4.FormControlDirective), selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i0.forwardRef(() => i4.FormGroupDirective), selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i0.forwardRef(() => i4.FormControlName), selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: i0.forwardRef(() => MatFormFieldModule) }, { kind: "component", type: i0.forwardRef(() => i5.MatFormField), selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i0.forwardRef(() => i5.MatLabel), selector: "mat-label" }, { kind: "directive", type: i0.forwardRef(() => i5.MatError), selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "ngmodule", type: i0.forwardRef(() => MatInputModule) }, { kind: "directive", type: i0.forwardRef(() => i6$1.MatInput), selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: i0.forwardRef(() => NgxCurrencyDirective), selector: "input[currencyMask]", inputs: ["currencyMask", "options"] }, { kind: "component", type: i0.forwardRef(() => ComponentMapperComponent), selector: "component-mapper", inputs: ["name", "props", "errorMsg", "outputEvents", "parent"] }] }); }
|
|
7449
7472
|
}
|
|
7450
7473
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: PercentageComponent, decorators: [{
|
|
7451
7474
|
type: Component,
|
|
7452
|
-
args: [{ selector: 'app-percentage', standalone: true, imports: [CommonModule, ReactiveFormsModule, MatFormFieldModule, MatInputModule, NgxCurrencyDirective, forwardRef(() => ComponentMapperComponent)], template: "<div *ngIf=\"displayMode$; else noDisplayMode\">\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"FieldValueList\" [props]=\"{ label$, value
|
|
7475
|
+
args: [{ selector: 'app-percentage', standalone: true, imports: [CommonModule, ReactiveFormsModule, MatFormFieldModule, MatInputModule, NgxCurrencyDirective, forwardRef(() => ComponentMapperComponent)], template: "<div *ngIf=\"displayMode$; else noDisplayMode\">\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"FieldValueList\" [props]=\"{ label$, value$: formattedValue, displayMode$ }\"></component-mapper>\n</div>\n<ng-template #noDisplayMode>\n <div *ngIf=\"bHasForm$; else noEdit\">\n <div [formGroup]=\"formGroup$\" *ngIf=\"bVisible$\">\n <mat-form-field class=\"psdk-full-width\" subscriptSizing=\"dynamic\" [hintLabel]=\"helperText\">\n <mat-label>{{ label$ }}</mat-label>\n <input\n type=\"text\"\n matInput\n currencyMask\n [options]=\"{\n prefix: '',\n suffix: '%',\n thousands: currSep,\n decimal: currDec,\n align: 'left',\n nullable: true,\n precision: decimalPrecision,\n inputMode: inputMode\n }\"\n [placeholder]=\"placeholder\"\n step=\".01\"\n [formControlName]=\"controlName$\"\n [required]=\"bRequired$\"\n [formControl]=\"fieldControl\"\n [attr.data-test-id]=\"testId\"\n (change)=\"fieldOnChange()\"\n (blur)=\"fieldOnBlur($event)\"\n [readonly]=\"bReadonly$\"\n [value]=\"value$\"\n />\n <mat-error *ngIf=\"fieldControl.invalid\">{{ getErrorMessage() }}</mat-error>\n </mat-form-field>\n </div>\n </div>\n</ng-template>\n<ng-template #noEdit>\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"Text\" [props]=\"{ pConn$, formatAs$: 'text' }\"></component-mapper>\n</ng-template>\n", styles: [".psdk-full-width{width:100%}.psdk-label-readonly{font-size:1rem;display:block;transform:translateY(-1.28125em) scale(.75) perspective(100px) translateZ(.001px);-ms-transform:translateY(-1.28125em) scale(.75);width:133.33333%}.psdk-data-readonly{padding-top:.625rem;width:100%}::ng-deep .mat-mdc-form-field-infix{width:auto}\n"] }]
|
|
7453
7476
|
}], ctorParameters: () => [{ type: AngularPConnectService }, { type: i0.ChangeDetectorRef }, { type: Utils }], propDecorators: { pConn$: [{
|
|
7454
7477
|
type: Input
|
|
7455
7478
|
}], formGroup$: [{
|
|
@@ -7528,6 +7551,8 @@ class PhoneComponent {
|
|
|
7528
7551
|
this.value$ = this.configProps$.value;
|
|
7529
7552
|
}
|
|
7530
7553
|
this.helperText = this.configProps$.helperText;
|
|
7554
|
+
this.actionsApi = this.pConn$.getActionsApi();
|
|
7555
|
+
this.propName = this.pConn$.getStateProps().value;
|
|
7531
7556
|
// timeout and detectChanges to avoid ExpressionChangedAfterItHasBeenCheckedError
|
|
7532
7557
|
setTimeout(() => {
|
|
7533
7558
|
if (this.configProps$.required != null) {
|
|
@@ -7563,25 +7588,16 @@ class PhoneComponent {
|
|
|
7563
7588
|
});
|
|
7564
7589
|
}
|
|
7565
7590
|
}
|
|
7591
|
+
fieldOnBlur() {
|
|
7592
|
+
// 'blur' isn't getting fired
|
|
7593
|
+
}
|
|
7566
7594
|
fieldOnChange() {
|
|
7567
7595
|
if (this.formGroup$.controls[this.controlName$].value) {
|
|
7568
|
-
const actionsApi = this.pConn$?.getActionsApi();
|
|
7569
|
-
const propName = this.pConn$?.getStateProps().value;
|
|
7570
7596
|
const value = this.formGroup$.controls[this.controlName$].value;
|
|
7571
|
-
const eventObj = {
|
|
7572
|
-
target: {
|
|
7573
|
-
value
|
|
7574
|
-
}
|
|
7575
|
-
};
|
|
7576
7597
|
this.afterBlur = true;
|
|
7577
|
-
this.
|
|
7578
|
-
handleEvent(actionsApi, 'blur', propName, value);
|
|
7598
|
+
handleEvent(this.actionsApi, 'changeNblur', this.propName, value);
|
|
7579
7599
|
}
|
|
7580
7600
|
}
|
|
7581
|
-
fieldOnBlur(event) {
|
|
7582
|
-
// PConnect wants to use eventHandler for onBlur
|
|
7583
|
-
this.angularPConnectData.actions?.onBlur(this, event);
|
|
7584
|
-
}
|
|
7585
7601
|
getErrorMessage() {
|
|
7586
7602
|
let errMessage = '';
|
|
7587
7603
|
// look for validation messages for json, pre-defined or just an error pushed from workitem (400)
|
|
@@ -7598,11 +7614,11 @@ class PhoneComponent {
|
|
|
7598
7614
|
return errMessage;
|
|
7599
7615
|
}
|
|
7600
7616
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: PhoneComponent, deps: [{ token: AngularPConnectService }, { token: i0.ChangeDetectorRef }, { token: Utils }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
7601
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: PhoneComponent, isStandalone: true, selector: "app-phone", inputs: { pConn$: "pConn$", formGroup$: "formGroup$" }, ngImport: i0, template: "<div *ngIf=\"displayMode$; else noDisplayMode\">\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"FieldValueList\" [props]=\"{ label$, value$, displayMode$ }\"></component-mapper>\n</div>\n<ng-template #noDisplayMode>\n <div *ngIf=\"!bReadonly$ && bHasForm$; else noEdit\">\n <div #f=\"ngForm\" [formGroup]=\"formGroup$\" *ngIf=\"bVisible$\">\n <mat-form-field class=\"psdk-full-width\" subscriptSizing=\"dynamic\" [hintLabel]=\"helperText\">\n <ngx-mat-intl-tel-input\n [attr.data-test-id]=\"testId\"\n [formControl]=\"fieldControl\"\n [preferredCountries]=\"['us']\"\n [enablePlaceholder]=\"true\"\n [enableSearch]=\"true\"\n (change)=\"fieldOnChange()\"\n (blur)=\"fieldOnBlur(
|
|
7617
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: PhoneComponent, isStandalone: true, selector: "app-phone", inputs: { pConn$: "pConn$", formGroup$: "formGroup$" }, ngImport: i0, template: "<div *ngIf=\"displayMode$; else noDisplayMode\">\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"FieldValueList\" [props]=\"{ label$, value$, displayMode$ }\"></component-mapper>\n</div>\n<ng-template #noDisplayMode>\n <div *ngIf=\"!bReadonly$ && bHasForm$; else noEdit\">\n <div #f=\"ngForm\" [formGroup]=\"formGroup$\" *ngIf=\"bVisible$\">\n <mat-form-field class=\"psdk-full-width\" subscriptSizing=\"dynamic\" [hintLabel]=\"helperText\">\n <ngx-mat-intl-tel-input\n [attr.data-test-id]=\"testId\"\n [formControl]=\"fieldControl\"\n [preferredCountries]=\"['us']\"\n [enablePlaceholder]=\"true\"\n [enableSearch]=\"true\"\n (change)=\"fieldOnChange()\"\n (blur)=\"fieldOnBlur()\"\n >\n </ngx-mat-intl-tel-input>\n <mat-label>{{ label$ }}</mat-label>\n <mat-error *ngIf=\"fieldControl.invalid\">{{ getErrorMessage() }}</mat-error>\n </mat-form-field>\n </div>\n </div>\n</ng-template>\n<ng-template #noEdit>\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"Text\" [props]=\"{ pConn$, formatAs$: 'text' }\"></component-mapper>\n</ng-template>\n", styles: [".psdk-full-width{width:100%}.psdk-label-readonly{font-size:1rem;display:block;transform:translateY(-1.28125em) scale(.75) perspective(100px) translateZ(.001px);-ms-transform:translateY(-1.28125em) scale(.75);width:133.33333%}.psdk-data-readonly{padding-top:.625rem;width:100%}::ng-deep .mat-mdc-form-field-infix{width:auto}.phone-label-readonly{opacity:54%;font-size:.7rem}\n"], dependencies: [{ kind: "ngmodule", type: i0.forwardRef(() => CommonModule) }, { kind: "directive", type: i0.forwardRef(() => i3.NgIf), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: i0.forwardRef(() => ReactiveFormsModule) }, { kind: "directive", type: i0.forwardRef(() => i4.NgControlStatus), selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i0.forwardRef(() => i4.NgControlStatusGroup), selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i0.forwardRef(() => i4.FormControlDirective), selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i0.forwardRef(() => i4.FormGroupDirective), selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: i0.forwardRef(() => MatFormFieldModule) }, { kind: "component", type: i0.forwardRef(() => i5.MatFormField), selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i0.forwardRef(() => i5.MatLabel), selector: "mat-label" }, { kind: "directive", type: i0.forwardRef(() => i5.MatError), selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: i0.forwardRef(() => NgxMatIntlTelInputComponent), selector: "ngx-mat-intl-tel-input", inputs: ["preferredCountries", "enablePlaceholder", "inputPlaceholder", "cssClass", "name", "onlyCountries", "errorStateMatcher", "enableSearch", "searchPlaceholder", "describedBy", "format", "placeholder", "required", "disabled"], outputs: ["countryChanged"] }, { kind: "component", type: i0.forwardRef(() => ComponentMapperComponent), selector: "component-mapper", inputs: ["name", "props", "errorMsg", "outputEvents", "parent"] }] }); }
|
|
7602
7618
|
}
|
|
7603
7619
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: PhoneComponent, decorators: [{
|
|
7604
7620
|
type: Component,
|
|
7605
|
-
args: [{ selector: 'app-phone', standalone: true, imports: [CommonModule, ReactiveFormsModule, MatFormFieldModule, NgxMatIntlTelInputComponent, forwardRef(() => ComponentMapperComponent)], template: "<div *ngIf=\"displayMode$; else noDisplayMode\">\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"FieldValueList\" [props]=\"{ label$, value$, displayMode$ }\"></component-mapper>\n</div>\n<ng-template #noDisplayMode>\n <div *ngIf=\"!bReadonly$ && bHasForm$; else noEdit\">\n <div #f=\"ngForm\" [formGroup]=\"formGroup$\" *ngIf=\"bVisible$\">\n <mat-form-field class=\"psdk-full-width\" subscriptSizing=\"dynamic\" [hintLabel]=\"helperText\">\n <ngx-mat-intl-tel-input\n [attr.data-test-id]=\"testId\"\n [formControl]=\"fieldControl\"\n [preferredCountries]=\"['us']\"\n [enablePlaceholder]=\"true\"\n [enableSearch]=\"true\"\n (change)=\"fieldOnChange()\"\n (blur)=\"fieldOnBlur(
|
|
7621
|
+
args: [{ selector: 'app-phone', standalone: true, imports: [CommonModule, ReactiveFormsModule, MatFormFieldModule, NgxMatIntlTelInputComponent, forwardRef(() => ComponentMapperComponent)], template: "<div *ngIf=\"displayMode$; else noDisplayMode\">\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"FieldValueList\" [props]=\"{ label$, value$, displayMode$ }\"></component-mapper>\n</div>\n<ng-template #noDisplayMode>\n <div *ngIf=\"!bReadonly$ && bHasForm$; else noEdit\">\n <div #f=\"ngForm\" [formGroup]=\"formGroup$\" *ngIf=\"bVisible$\">\n <mat-form-field class=\"psdk-full-width\" subscriptSizing=\"dynamic\" [hintLabel]=\"helperText\">\n <ngx-mat-intl-tel-input\n [attr.data-test-id]=\"testId\"\n [formControl]=\"fieldControl\"\n [preferredCountries]=\"['us']\"\n [enablePlaceholder]=\"true\"\n [enableSearch]=\"true\"\n (change)=\"fieldOnChange()\"\n (blur)=\"fieldOnBlur()\"\n >\n </ngx-mat-intl-tel-input>\n <mat-label>{{ label$ }}</mat-label>\n <mat-error *ngIf=\"fieldControl.invalid\">{{ getErrorMessage() }}</mat-error>\n </mat-form-field>\n </div>\n </div>\n</ng-template>\n<ng-template #noEdit>\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"Text\" [props]=\"{ pConn$, formatAs$: 'text' }\"></component-mapper>\n</ng-template>\n", styles: [".psdk-full-width{width:100%}.psdk-label-readonly{font-size:1rem;display:block;transform:translateY(-1.28125em) scale(.75) perspective(100px) translateZ(.001px);-ms-transform:translateY(-1.28125em) scale(.75);width:133.33333%}.psdk-data-readonly{padding-top:.625rem;width:100%}::ng-deep .mat-mdc-form-field-infix{width:auto}.phone-label-readonly{opacity:54%;font-size:.7rem}\n"] }]
|
|
7606
7622
|
}], ctorParameters: () => [{ type: AngularPConnectService }, { type: i0.ChangeDetectorRef }, { type: Utils }], propDecorators: { pConn$: [{
|
|
7607
7623
|
type: Input
|
|
7608
7624
|
}], formGroup$: [{
|
|
@@ -7715,9 +7731,10 @@ class RadioButtonsComponent {
|
|
|
7715
7731
|
}
|
|
7716
7732
|
this.componentReference = this.pConn$.getStateProps().value;
|
|
7717
7733
|
this.options$ = this.utils.getOptionList(this.configProps$, this.pConn$.getDataObject());
|
|
7718
|
-
|
|
7734
|
+
this.actionsApi = this.pConn$.getActionsApi();
|
|
7735
|
+
this.propName = this.pConn$.getStateProps().value;
|
|
7719
7736
|
const className = this.pConn$.getCaseInfo().getClassName();
|
|
7720
|
-
const refName = propName?.slice(propName.lastIndexOf('.') + 1);
|
|
7737
|
+
const refName = this.propName?.slice(this.propName.lastIndexOf('.') + 1);
|
|
7721
7738
|
this.fieldMetadata = this.configProps$.fieldMetadata;
|
|
7722
7739
|
const metaData = Array.isArray(this.fieldMetadata) ? this.fieldMetadata.filter(field => field?.classID === className)[0] : this.fieldMetadata;
|
|
7723
7740
|
let displayName = metaData?.datasource?.propertyForDisplayText;
|
|
@@ -7740,11 +7757,7 @@ class RadioButtonsComponent {
|
|
|
7740
7757
|
return this.value$ === buttonValue;
|
|
7741
7758
|
}
|
|
7742
7759
|
fieldOnChange(event) {
|
|
7743
|
-
this.
|
|
7744
|
-
}
|
|
7745
|
-
fieldOnBlur(event) {
|
|
7746
|
-
// PConnect wants to use eventHandler for onBlur
|
|
7747
|
-
this.angularPConnectData.actions?.onBlur(this, event);
|
|
7760
|
+
handleEvent(this.actionsApi, 'changeNblur', this.propName, event.value);
|
|
7748
7761
|
}
|
|
7749
7762
|
getLocalizedOptionValue(opt) {
|
|
7750
7763
|
return this.pConn$.getLocalizedValue(opt.value, this.localePath, this.pConn$.getLocaleRuleNameFromKeys(this.localeClass, this.localeContext, this.localeName));
|
|
@@ -7896,6 +7909,8 @@ class TextAreaComponent {
|
|
|
7896
7909
|
this.displayMode$ = this.configProps$.displayMode;
|
|
7897
7910
|
this.label$ = this.configProps$.label;
|
|
7898
7911
|
this.helperText = this.configProps$.helperText;
|
|
7912
|
+
this.actionsApi = this.pConn$.getActionsApi();
|
|
7913
|
+
this.propName = this.pConn$.getStateProps().value;
|
|
7899
7914
|
// timeout and detectChanges to avoid ExpressionChangedAfterItHasBeenCheckedError
|
|
7900
7915
|
setTimeout(() => {
|
|
7901
7916
|
if (this.configProps$.required != null) {
|
|
@@ -7929,13 +7944,14 @@ class TextAreaComponent {
|
|
|
7929
7944
|
});
|
|
7930
7945
|
}
|
|
7931
7946
|
}
|
|
7932
|
-
fieldOnChange(
|
|
7933
|
-
|
|
7934
|
-
|
|
7947
|
+
fieldOnChange() {
|
|
7948
|
+
this.pConn$.clearErrorMessages({
|
|
7949
|
+
property: this.propName
|
|
7950
|
+
});
|
|
7935
7951
|
}
|
|
7936
7952
|
fieldOnBlur(event) {
|
|
7937
|
-
|
|
7938
|
-
this.
|
|
7953
|
+
const value = event?.target?.value;
|
|
7954
|
+
handleEvent(this.actionsApi, 'changeNblur', this.propName, value);
|
|
7939
7955
|
}
|
|
7940
7956
|
getErrorMessage() {
|
|
7941
7957
|
// field control gets error message from here
|
|
@@ -7954,11 +7970,11 @@ class TextAreaComponent {
|
|
|
7954
7970
|
return errMessage;
|
|
7955
7971
|
}
|
|
7956
7972
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: TextAreaComponent, deps: [{ token: AngularPConnectService }, { token: i0.ChangeDetectorRef }, { token: Utils }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
7957
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: TextAreaComponent, isStandalone: true, selector: "app-text-area", inputs: { pConn$: "pConn$", formGroup$: "formGroup$" }, ngImport: i0, template: "<div *ngIf=\"displayMode$; else noDisplayMode\">\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"FieldValueList\" [props]=\"{ label$, value$, displayMode$ }\"></component-mapper>\n</div>\n<ng-template #noDisplayMode>\n <div *ngIf=\"!bReadonly$ && bHasForm$; else noEdit\">\n <div [formGroup]=\"formGroup$\">\n <div *ngIf=\"bVisible$\">\n <mat-form-field class=\"psdk-full-width\" subscriptSizing=\"dynamic\" [hintLabel]=\"helperText\">\n <textarea\n matInput\n rows=\"5\"\n [placeholder]=\"label$\"\n type=\"text\"\n [attr.data-test-id]=\"testId\"\n [value]=\"value$\"\n [required]=\"bRequired$\"\n [disabled]=\"bDisabled$\"\n [formControl]=\"fieldControl\"\n (change)=\"fieldOnChange($event)\"\n ></textarea>\n <mat-error *ngIf=\"fieldControl.invalid\">{{ getErrorMessage() }}</mat-error>\n </mat-form-field>\n </div>\n </div>\n </div>\n</ng-template>\n<ng-template #noEdit>\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"Text\" [props]=\"{ pConn$, formatAs$: 'text' }\"></component-mapper>\n</ng-template>\n", styles: [".psdk-full-width{width:100%}.psdk-label-readonly{font-size:1rem;display:block;transform:translateY(-1.28125em) scale(.75) perspective(100px) translateZ(.001px);-ms-transform:translateY(-1.28125em) scale(.75);width:133.33333%}.psdk-data-readonly{padding-top:.625rem;width:100%}::ng-deep .mat-mdc-form-field-infix{width:auto}\n"], dependencies: [{ kind: "ngmodule", type: i0.forwardRef(() => CommonModule) }, { kind: "directive", type: i0.forwardRef(() => i3.NgIf), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: i0.forwardRef(() => ReactiveFormsModule) }, { kind: "directive", type: i0.forwardRef(() => i4.DefaultValueAccessor), selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i0.forwardRef(() => i4.NgControlStatus), selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i0.forwardRef(() => i4.NgControlStatusGroup), selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i0.forwardRef(() => i4.RequiredValidator), selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i0.forwardRef(() => i4.FormControlDirective), selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i0.forwardRef(() => i4.FormGroupDirective), selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: i0.forwardRef(() => MatFormFieldModule) }, { kind: "component", type: i0.forwardRef(() => i5.MatFormField), selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i0.forwardRef(() => i5.MatError), selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "ngmodule", type: i0.forwardRef(() => MatInputModule) }, { kind: "directive", type: i0.forwardRef(() => i6$1.MatInput), selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i0.forwardRef(() => ComponentMapperComponent), selector: "component-mapper", inputs: ["name", "props", "errorMsg", "outputEvents", "parent"] }] }); }
|
|
7973
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: TextAreaComponent, isStandalone: true, selector: "app-text-area", inputs: { pConn$: "pConn$", formGroup$: "formGroup$" }, ngImport: i0, template: "<div *ngIf=\"displayMode$; else noDisplayMode\">\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"FieldValueList\" [props]=\"{ label$, value$, displayMode$ }\"></component-mapper>\n</div>\n<ng-template #noDisplayMode>\n <div *ngIf=\"!bReadonly$ && bHasForm$; else noEdit\">\n <div [formGroup]=\"formGroup$\">\n <div *ngIf=\"bVisible$\">\n <mat-form-field class=\"psdk-full-width\" subscriptSizing=\"dynamic\" [hintLabel]=\"helperText\">\n <textarea\n matInput\n rows=\"5\"\n [placeholder]=\"label$\"\n type=\"text\"\n [attr.data-test-id]=\"testId\"\n [value]=\"value$\"\n [required]=\"bRequired$\"\n [disabled]=\"bDisabled$\"\n [formControl]=\"fieldControl\"\n (change)=\"fieldOnChange()\"\n (blur)=\"fieldOnBlur($event)\"\n ></textarea>\n <mat-error *ngIf=\"fieldControl.invalid\">{{ getErrorMessage() }}</mat-error>\n </mat-form-field>\n </div>\n </div>\n </div>\n</ng-template>\n<ng-template #noEdit>\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"Text\" [props]=\"{ pConn$, formatAs$: 'text' }\"></component-mapper>\n</ng-template>\n", styles: [".psdk-full-width{width:100%}.psdk-label-readonly{font-size:1rem;display:block;transform:translateY(-1.28125em) scale(.75) perspective(100px) translateZ(.001px);-ms-transform:translateY(-1.28125em) scale(.75);width:133.33333%}.psdk-data-readonly{padding-top:.625rem;width:100%}::ng-deep .mat-mdc-form-field-infix{width:auto}\n"], dependencies: [{ kind: "ngmodule", type: i0.forwardRef(() => CommonModule) }, { kind: "directive", type: i0.forwardRef(() => i3.NgIf), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: i0.forwardRef(() => ReactiveFormsModule) }, { kind: "directive", type: i0.forwardRef(() => i4.DefaultValueAccessor), selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i0.forwardRef(() => i4.NgControlStatus), selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i0.forwardRef(() => i4.NgControlStatusGroup), selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i0.forwardRef(() => i4.RequiredValidator), selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i0.forwardRef(() => i4.FormControlDirective), selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i0.forwardRef(() => i4.FormGroupDirective), selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: i0.forwardRef(() => MatFormFieldModule) }, { kind: "component", type: i0.forwardRef(() => i5.MatFormField), selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i0.forwardRef(() => i5.MatError), selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "ngmodule", type: i0.forwardRef(() => MatInputModule) }, { kind: "directive", type: i0.forwardRef(() => i6$1.MatInput), selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i0.forwardRef(() => ComponentMapperComponent), selector: "component-mapper", inputs: ["name", "props", "errorMsg", "outputEvents", "parent"] }] }); }
|
|
7958
7974
|
}
|
|
7959
7975
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: TextAreaComponent, decorators: [{
|
|
7960
7976
|
type: Component,
|
|
7961
|
-
args: [{ selector: 'app-text-area', standalone: true, imports: [CommonModule, ReactiveFormsModule, MatFormFieldModule, MatInputModule, forwardRef(() => ComponentMapperComponent)], template: "<div *ngIf=\"displayMode$; else noDisplayMode\">\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"FieldValueList\" [props]=\"{ label$, value$, displayMode$ }\"></component-mapper>\n</div>\n<ng-template #noDisplayMode>\n <div *ngIf=\"!bReadonly$ && bHasForm$; else noEdit\">\n <div [formGroup]=\"formGroup$\">\n <div *ngIf=\"bVisible$\">\n <mat-form-field class=\"psdk-full-width\" subscriptSizing=\"dynamic\" [hintLabel]=\"helperText\">\n <textarea\n matInput\n rows=\"5\"\n [placeholder]=\"label$\"\n type=\"text\"\n [attr.data-test-id]=\"testId\"\n [value]=\"value$\"\n [required]=\"bRequired$\"\n [disabled]=\"bDisabled$\"\n [formControl]=\"fieldControl\"\n (change)=\"fieldOnChange($event)\"\n ></textarea>\n <mat-error *ngIf=\"fieldControl.invalid\">{{ getErrorMessage() }}</mat-error>\n </mat-form-field>\n </div>\n </div>\n </div>\n</ng-template>\n<ng-template #noEdit>\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"Text\" [props]=\"{ pConn$, formatAs$: 'text' }\"></component-mapper>\n</ng-template>\n", styles: [".psdk-full-width{width:100%}.psdk-label-readonly{font-size:1rem;display:block;transform:translateY(-1.28125em) scale(.75) perspective(100px) translateZ(.001px);-ms-transform:translateY(-1.28125em) scale(.75);width:133.33333%}.psdk-data-readonly{padding-top:.625rem;width:100%}::ng-deep .mat-mdc-form-field-infix{width:auto}\n"] }]
|
|
7977
|
+
args: [{ selector: 'app-text-area', standalone: true, imports: [CommonModule, ReactiveFormsModule, MatFormFieldModule, MatInputModule, forwardRef(() => ComponentMapperComponent)], template: "<div *ngIf=\"displayMode$; else noDisplayMode\">\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"FieldValueList\" [props]=\"{ label$, value$, displayMode$ }\"></component-mapper>\n</div>\n<ng-template #noDisplayMode>\n <div *ngIf=\"!bReadonly$ && bHasForm$; else noEdit\">\n <div [formGroup]=\"formGroup$\">\n <div *ngIf=\"bVisible$\">\n <mat-form-field class=\"psdk-full-width\" subscriptSizing=\"dynamic\" [hintLabel]=\"helperText\">\n <textarea\n matInput\n rows=\"5\"\n [placeholder]=\"label$\"\n type=\"text\"\n [attr.data-test-id]=\"testId\"\n [value]=\"value$\"\n [required]=\"bRequired$\"\n [disabled]=\"bDisabled$\"\n [formControl]=\"fieldControl\"\n (change)=\"fieldOnChange()\"\n (blur)=\"fieldOnBlur($event)\"\n ></textarea>\n <mat-error *ngIf=\"fieldControl.invalid\">{{ getErrorMessage() }}</mat-error>\n </mat-form-field>\n </div>\n </div>\n </div>\n</ng-template>\n<ng-template #noEdit>\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"Text\" [props]=\"{ pConn$, formatAs$: 'text' }\"></component-mapper>\n</ng-template>\n", styles: [".psdk-full-width{width:100%}.psdk-label-readonly{font-size:1rem;display:block;transform:translateY(-1.28125em) scale(.75) perspective(100px) translateZ(.001px);-ms-transform:translateY(-1.28125em) scale(.75);width:133.33333%}.psdk-data-readonly{padding-top:.625rem;width:100%}::ng-deep .mat-mdc-form-field-infix{width:auto}\n"] }]
|
|
7962
7978
|
}], ctorParameters: () => [{ type: AngularPConnectService }, { type: i0.ChangeDetectorRef }, { type: Utils }], propDecorators: { pConn$: [{
|
|
7963
7979
|
type: Input
|
|
7964
7980
|
}], formGroup$: [{
|
|
@@ -8085,13 +8101,15 @@ class TextComponent {
|
|
|
8085
8101
|
return this.utils.generateDateTime(value, 'DateTime-Long-YYYY-Custom');
|
|
8086
8102
|
}
|
|
8087
8103
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: TextComponent, deps: [{ token: AngularPConnectService }, { token: Utils }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
8088
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: TextComponent, isStandalone: true, selector: "app-text", inputs: { pConn$: "pConn$", formatAs$: "formatAs$" }, ngImport: i0, template: "<div *ngIf=\"displayMode$; else noDisplayMode\">\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"FieldValueList\" [props]=\"{ label$, value$, displayMode$ }\"></component-mapper>\n</div>\n<ng-template #noDisplayMode>\n <div *ngIf=\"bVisible$ !== false\" class=\"psdk-label-infix-readonly\">\n <span class=\"psdk-label-wrapper-readonly\">\n <label class=\"psdk-label-readonly\">{{ label$ }}</label>\n </span>\n <div class=\"psdk-data-readonly\">\n <label *ngIf=\"formatAs$ != 'url'\">{{ formattedValue$ }}</label>\n <a *ngIf=\"formatAs$ == 'url'\" href=\"{{ formattedUrl$ }}\">{{ formattedValue$ }}</a>\n </div>\n </div>\n</ng-template>\n", styles: [".psdk-full-width{width:100%}.psdk-label-readonly{opacity:54%;font-size:.7rem}.psdk-data-readonly{padding-top:.625rem;width:100%}::ng-deep .mat-mdc-form-field-infix{width:auto}.psdk-grid-filter{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:1rem;row-gap:1rem;align-items:start}.psdk-details-fields-label{color:var(--app-label-color);margin:8px 0}\n"], dependencies: [{ kind: "ngmodule", type: i0.forwardRef(() => CommonModule) }, { kind: "directive", type: i0.forwardRef(() => i3.NgIf), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i0.forwardRef(() => ComponentMapperComponent), selector: "component-mapper", inputs: ["name", "props", "errorMsg", "outputEvents", "parent"] }] }); }
|
|
8104
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: TextComponent, isStandalone: true, selector: "app-text", inputs: { pConn$: "pConn$", formGroup$: "formGroup$", formatAs$: "formatAs$" }, ngImport: i0, template: "<div *ngIf=\"displayMode$; else noDisplayMode\">\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"FieldValueList\" [props]=\"{ label$, value$, displayMode$ }\"></component-mapper>\n</div>\n<ng-template #noDisplayMode>\n <div *ngIf=\"bVisible$ !== false\" class=\"psdk-label-infix-readonly\">\n <span class=\"psdk-label-wrapper-readonly\">\n <label class=\"psdk-label-readonly\">{{ label$ }}</label>\n </span>\n <div class=\"psdk-data-readonly\">\n <label *ngIf=\"formatAs$ != 'url'\">{{ formattedValue$ }}</label>\n <a *ngIf=\"formatAs$ == 'url'\" href=\"{{ formattedUrl$ }}\">{{ formattedValue$ }}</a>\n </div>\n </div>\n</ng-template>\n", styles: [".psdk-full-width{width:100%}.psdk-label-readonly{opacity:54%;font-size:.7rem}.psdk-data-readonly{padding-top:.625rem;width:100%}::ng-deep .mat-mdc-form-field-infix{width:auto}.psdk-grid-filter{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:1rem;row-gap:1rem;align-items:start}.psdk-details-fields-label{color:var(--app-label-color);margin:8px 0}\n"], dependencies: [{ kind: "ngmodule", type: i0.forwardRef(() => CommonModule) }, { kind: "directive", type: i0.forwardRef(() => i3.NgIf), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i0.forwardRef(() => ComponentMapperComponent), selector: "component-mapper", inputs: ["name", "props", "errorMsg", "outputEvents", "parent"] }] }); }
|
|
8089
8105
|
}
|
|
8090
8106
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: TextComponent, decorators: [{
|
|
8091
8107
|
type: Component,
|
|
8092
8108
|
args: [{ selector: 'app-text', standalone: true, imports: [CommonModule, forwardRef(() => ComponentMapperComponent)], template: "<div *ngIf=\"displayMode$; else noDisplayMode\">\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"FieldValueList\" [props]=\"{ label$, value$, displayMode$ }\"></component-mapper>\n</div>\n<ng-template #noDisplayMode>\n <div *ngIf=\"bVisible$ !== false\" class=\"psdk-label-infix-readonly\">\n <span class=\"psdk-label-wrapper-readonly\">\n <label class=\"psdk-label-readonly\">{{ label$ }}</label>\n </span>\n <div class=\"psdk-data-readonly\">\n <label *ngIf=\"formatAs$ != 'url'\">{{ formattedValue$ }}</label>\n <a *ngIf=\"formatAs$ == 'url'\" href=\"{{ formattedUrl$ }}\">{{ formattedValue$ }}</a>\n </div>\n </div>\n</ng-template>\n", styles: [".psdk-full-width{width:100%}.psdk-label-readonly{opacity:54%;font-size:.7rem}.psdk-data-readonly{padding-top:.625rem;width:100%}::ng-deep .mat-mdc-form-field-infix{width:auto}.psdk-grid-filter{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:1rem;row-gap:1rem;align-items:start}.psdk-details-fields-label{color:var(--app-label-color);margin:8px 0}\n"] }]
|
|
8093
8109
|
}], ctorParameters: () => [{ type: AngularPConnectService }, { type: Utils }], propDecorators: { pConn$: [{
|
|
8094
8110
|
type: Input
|
|
8111
|
+
}], formGroup$: [{
|
|
8112
|
+
type: Input
|
|
8095
8113
|
}], formatAs$: [{
|
|
8096
8114
|
type: Input
|
|
8097
8115
|
}] } });
|
|
@@ -8229,6 +8247,8 @@ class TextInputComponent {
|
|
|
8229
8247
|
this.label$ = this.configProps$.label;
|
|
8230
8248
|
this.displayMode$ = this.configProps$.displayMode;
|
|
8231
8249
|
this.componentReference = this.pConn$.getStateProps().value;
|
|
8250
|
+
this.actionsApi = this.pConn$.getActionsApi();
|
|
8251
|
+
this.propName = this.pConn$.getStateProps().value;
|
|
8232
8252
|
if (this.configProps$.visibility != null) {
|
|
8233
8253
|
this.bVisible$ = this.utils.getBooleanValue(this.configProps$.visibility);
|
|
8234
8254
|
}
|
|
@@ -8263,12 +8283,14 @@ class TextInputComponent {
|
|
|
8263
8283
|
});
|
|
8264
8284
|
}
|
|
8265
8285
|
}
|
|
8266
|
-
fieldOnChange(
|
|
8267
|
-
this.
|
|
8286
|
+
fieldOnChange() {
|
|
8287
|
+
this.pConn$.clearErrorMessages({
|
|
8288
|
+
property: this.propName
|
|
8289
|
+
});
|
|
8268
8290
|
}
|
|
8269
8291
|
fieldOnBlur(event) {
|
|
8270
|
-
|
|
8271
|
-
this.
|
|
8292
|
+
const value = event?.target?.value;
|
|
8293
|
+
handleEvent(this.actionsApi, 'changeNblur', this.propName, value);
|
|
8272
8294
|
}
|
|
8273
8295
|
getErrorMessage() {
|
|
8274
8296
|
let errMessage = '';
|
|
@@ -8286,11 +8308,11 @@ class TextInputComponent {
|
|
|
8286
8308
|
return errMessage;
|
|
8287
8309
|
}
|
|
8288
8310
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: TextInputComponent, deps: [{ token: AngularPConnectService }, { token: i0.ChangeDetectorRef }, { token: Utils }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
8289
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: TextInputComponent, isStandalone: true, selector: "app-text-input", inputs: { pConn$: "pConn$", formGroup$: "formGroup$" }, ngImport: i0, template: "<div *ngIf=\"displayMode$; else noDisplayMode\">\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"FieldValueList\" [props]=\"{ label$, value$, displayMode$ }\"></component-mapper>\n</div>\n<ng-template #noDisplayMode>\n <div *ngIf=\"!bReadonly$ && bHasForm$; else noEdit\">\n <div [formGroup]=\"formGroup$\" *ngIf=\"bVisible$\">\n <mat-form-field class=\"psdk-full-width\" subscriptSizing=\"dynamic\" [hintLabel]=\"helperText\">\n <mat-label>{{ label$ }}</mat-label>\n <input\n matInput\n [placeholder]=\"placeholder\"\n type=\"text\"\n [value]=\"value$\"\n [required]=\"bRequired$\"\n [attr.data-test-id]=\"testId\"\n [formControl]=\"fieldControl\"\n (change)=\"fieldOnChange(
|
|
8311
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: TextInputComponent, isStandalone: true, selector: "app-text-input", inputs: { pConn$: "pConn$", formGroup$: "formGroup$" }, ngImport: i0, template: "<div *ngIf=\"displayMode$; else noDisplayMode\">\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"FieldValueList\" [props]=\"{ label$, value$, displayMode$ }\"></component-mapper>\n</div>\n<ng-template #noDisplayMode>\n <div *ngIf=\"!bReadonly$ && bHasForm$; else noEdit\">\n <div [formGroup]=\"formGroup$\" *ngIf=\"bVisible$\">\n <mat-form-field class=\"psdk-full-width\" subscriptSizing=\"dynamic\" [hintLabel]=\"helperText\">\n <mat-label>{{ label$ }}</mat-label>\n <input\n matInput\n [placeholder]=\"placeholder\"\n type=\"text\"\n [value]=\"value$\"\n [required]=\"bRequired$\"\n [attr.data-test-id]=\"testId\"\n [formControl]=\"fieldControl\"\n (change)=\"fieldOnChange()\"\n (blur)=\"fieldOnBlur($event)\"\n />\n <mat-error *ngIf=\"fieldControl.invalid\">{{ getErrorMessage() }}</mat-error>\n </mat-form-field>\n </div>\n </div>\n</ng-template>\n<ng-template #noEdit>\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"Text\" [props]=\"{ pConn$, formatAs$: 'text' }\"></component-mapper>\n</ng-template>\n", styles: [".psdk-full-width{width:100%}.psdk-label-readonly{font-size:1rem;display:block;transform:translateY(-1.28125em) scale(.75) perspective(100px) translateZ(.001px);-ms-transform:translateY(-1.28125em) scale(.75);width:133.33333%}.psdk-data-readonly{padding-top:.625rem;width:100%}::ng-deep .mat-mdc-form-field-infix{width:auto}\n"], dependencies: [{ kind: "ngmodule", type: i0.forwardRef(() => CommonModule) }, { kind: "directive", type: i0.forwardRef(() => i3.NgIf), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: i0.forwardRef(() => ReactiveFormsModule) }, { kind: "directive", type: i0.forwardRef(() => i4.DefaultValueAccessor), selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i0.forwardRef(() => i4.NgControlStatus), selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i0.forwardRef(() => i4.NgControlStatusGroup), selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i0.forwardRef(() => i4.RequiredValidator), selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i0.forwardRef(() => i4.FormControlDirective), selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i0.forwardRef(() => i4.FormGroupDirective), selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: i0.forwardRef(() => MatFormFieldModule) }, { kind: "component", type: i0.forwardRef(() => i5.MatFormField), selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i0.forwardRef(() => i5.MatLabel), selector: "mat-label" }, { kind: "directive", type: i0.forwardRef(() => i5.MatError), selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "ngmodule", type: i0.forwardRef(() => MatInputModule) }, { kind: "directive", type: i0.forwardRef(() => i6$1.MatInput), selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i0.forwardRef(() => ComponentMapperComponent), selector: "component-mapper", inputs: ["name", "props", "errorMsg", "outputEvents", "parent"] }] }); }
|
|
8290
8312
|
}
|
|
8291
8313
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: TextInputComponent, decorators: [{
|
|
8292
8314
|
type: Component,
|
|
8293
|
-
args: [{ selector: 'app-text-input', standalone: true, imports: [CommonModule, ReactiveFormsModule, MatFormFieldModule, MatInputModule, forwardRef(() => ComponentMapperComponent)], template: "<div *ngIf=\"displayMode$; else noDisplayMode\">\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"FieldValueList\" [props]=\"{ label$, value$, displayMode$ }\"></component-mapper>\n</div>\n<ng-template #noDisplayMode>\n <div *ngIf=\"!bReadonly$ && bHasForm$; else noEdit\">\n <div [formGroup]=\"formGroup$\" *ngIf=\"bVisible$\">\n <mat-form-field class=\"psdk-full-width\" subscriptSizing=\"dynamic\" [hintLabel]=\"helperText\">\n <mat-label>{{ label$ }}</mat-label>\n <input\n matInput\n [placeholder]=\"placeholder\"\n type=\"text\"\n [value]=\"value$\"\n [required]=\"bRequired$\"\n [attr.data-test-id]=\"testId\"\n [formControl]=\"fieldControl\"\n (change)=\"fieldOnChange(
|
|
8315
|
+
args: [{ selector: 'app-text-input', standalone: true, imports: [CommonModule, ReactiveFormsModule, MatFormFieldModule, MatInputModule, forwardRef(() => ComponentMapperComponent)], template: "<div *ngIf=\"displayMode$; else noDisplayMode\">\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"FieldValueList\" [props]=\"{ label$, value$, displayMode$ }\"></component-mapper>\n</div>\n<ng-template #noDisplayMode>\n <div *ngIf=\"!bReadonly$ && bHasForm$; else noEdit\">\n <div [formGroup]=\"formGroup$\" *ngIf=\"bVisible$\">\n <mat-form-field class=\"psdk-full-width\" subscriptSizing=\"dynamic\" [hintLabel]=\"helperText\">\n <mat-label>{{ label$ }}</mat-label>\n <input\n matInput\n [placeholder]=\"placeholder\"\n type=\"text\"\n [value]=\"value$\"\n [required]=\"bRequired$\"\n [attr.data-test-id]=\"testId\"\n [formControl]=\"fieldControl\"\n (change)=\"fieldOnChange()\"\n (blur)=\"fieldOnBlur($event)\"\n />\n <mat-error *ngIf=\"fieldControl.invalid\">{{ getErrorMessage() }}</mat-error>\n </mat-form-field>\n </div>\n </div>\n</ng-template>\n<ng-template #noEdit>\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"Text\" [props]=\"{ pConn$, formatAs$: 'text' }\"></component-mapper>\n</ng-template>\n", styles: [".psdk-full-width{width:100%}.psdk-label-readonly{font-size:1rem;display:block;transform:translateY(-1.28125em) scale(.75) perspective(100px) translateZ(.001px);-ms-transform:translateY(-1.28125em) scale(.75);width:133.33333%}.psdk-data-readonly{padding-top:.625rem;width:100%}::ng-deep .mat-mdc-form-field-infix{width:auto}\n"] }]
|
|
8294
8316
|
}], ctorParameters: () => [{ type: AngularPConnectService }, { type: i0.ChangeDetectorRef }, { type: Utils }], propDecorators: { pConn$: [{
|
|
8295
8317
|
type: Input
|
|
8296
8318
|
}], formGroup$: [{
|
|
@@ -8367,6 +8389,8 @@ class TimeComponent {
|
|
|
8367
8389
|
}
|
|
8368
8390
|
this.helperText = this.configProps$.helperText;
|
|
8369
8391
|
this.placeholder = this.configProps$.placeholder || '';
|
|
8392
|
+
this.actionsApi = this.pConn$.getActionsApi();
|
|
8393
|
+
this.propName = this.pConn$.getStateProps().value;
|
|
8370
8394
|
// timeout and detectChanges to avoid ExpressionChangedAfterItHasBeenCheckedError
|
|
8371
8395
|
setTimeout(() => {
|
|
8372
8396
|
if (this.configProps$.required != null) {
|
|
@@ -8374,6 +8398,11 @@ class TimeComponent {
|
|
|
8374
8398
|
}
|
|
8375
8399
|
this.cdRef.detectChanges();
|
|
8376
8400
|
});
|
|
8401
|
+
if (this.displayMode$ === 'DISPLAY_ONLY' || this.displayMode$ === 'STACKED_LARGE_VAL') {
|
|
8402
|
+
this.formattedValue$ = format(this.value$, 'timeonly', {
|
|
8403
|
+
format: 'hh:mm a'
|
|
8404
|
+
});
|
|
8405
|
+
}
|
|
8377
8406
|
if (this.configProps$.visibility != null) {
|
|
8378
8407
|
this.bVisible$ = this.utils.getBooleanValue(this.configProps$.visibility);
|
|
8379
8408
|
}
|
|
@@ -8400,14 +8429,14 @@ class TimeComponent {
|
|
|
8400
8429
|
});
|
|
8401
8430
|
}
|
|
8402
8431
|
}
|
|
8403
|
-
fieldOnChange(
|
|
8404
|
-
|
|
8405
|
-
|
|
8432
|
+
fieldOnChange() {
|
|
8433
|
+
this.pConn$.clearErrorMessages({
|
|
8434
|
+
property: this.propName
|
|
8435
|
+
});
|
|
8406
8436
|
}
|
|
8407
8437
|
fieldOnBlur(event) {
|
|
8408
|
-
|
|
8409
|
-
|
|
8410
|
-
this.angularPConnectData.actions?.onBlur(this, event);
|
|
8438
|
+
const value = event?.target?.value;
|
|
8439
|
+
handleEvent(this.actionsApi, 'changeNblur', this.propName, value);
|
|
8411
8440
|
}
|
|
8412
8441
|
getErrorMessage() {
|
|
8413
8442
|
let errMessage = '';
|
|
@@ -8425,11 +8454,11 @@ class TimeComponent {
|
|
|
8425
8454
|
return errMessage;
|
|
8426
8455
|
}
|
|
8427
8456
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: TimeComponent, deps: [{ token: AngularPConnectService }, { token: i0.ChangeDetectorRef }, { token: Utils }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
8428
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: TimeComponent, isStandalone: true, selector: "app-time", inputs: { pConn$: "pConn$", formGroup$: "formGroup$" }, ngImport: i0, template: "<div *ngIf=\"displayMode$; else noDisplayMode\">\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"FieldValueList\" [props]=\"{ label$, value$, displayMode$ }\"></component-mapper>\n</div>\n<ng-template #noDisplayMode>\n <div *ngIf=\"!bReadonly$ && bHasForm$; else noEdit\">\n <div [formGroup]=\"formGroup$\" *ngIf=\"bVisible$\">\n <mat-form-field class=\"psdk-full-width\" subscriptSizing=\"dynamic\" [hintLabel]=\"helperText\">\n <mat-label>{{ label$ }}</mat-label>\n <input\n matInput\n [placeholder]=\"placeholder\"\n type=\"time\"\n [value]=\"value$\"\n [required]=\"bRequired$\"\n [attr.data-test-id]=\"testId\"\n [formControl]=\"fieldControl\"\n (change)=\"fieldOnChange(
|
|
8457
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: TimeComponent, isStandalone: true, selector: "app-time", inputs: { pConn$: "pConn$", formGroup$: "formGroup$" }, ngImport: i0, template: "<div *ngIf=\"displayMode$; else noDisplayMode\">\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"FieldValueList\" [props]=\"{ label$, value$: formattedValue$, displayMode$ }\"></component-mapper>\n</div>\n<ng-template #noDisplayMode>\n <div *ngIf=\"!bReadonly$ && bHasForm$; else noEdit\">\n <div [formGroup]=\"formGroup$\" *ngIf=\"bVisible$\">\n <mat-form-field class=\"psdk-full-width\" subscriptSizing=\"dynamic\" [hintLabel]=\"helperText\">\n <mat-label>{{ label$ }}</mat-label>\n <input\n matInput\n [placeholder]=\"placeholder\"\n type=\"time\"\n [value]=\"value$\"\n [required]=\"bRequired$\"\n [attr.data-test-id]=\"testId\"\n [formControl]=\"fieldControl\"\n (change)=\"fieldOnChange()\"\n (blur)=\"fieldOnBlur($event)\"\n />\n <mat-error *ngIf=\"fieldControl.invalid\">{{ getErrorMessage() }}</mat-error>\n </mat-form-field>\n </div>\n </div>\n</ng-template>\n<ng-template #noEdit>\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"Text\" [props]=\"{ pConn$, formatAs$: 'text' }\"></component-mapper>\n</ng-template>\n", styles: [".psdk-full-width{width:100%}.psdk-label-readonly{font-size:1rem;display:block;transform:translateY(-1.28125em) scale(.75) perspective(100px) translateZ(.001px);-ms-transform:translateY(-1.28125em) scale(.75);width:133.33333%}.psdk-data-readonly{padding-top:.625rem;width:100%}::ng-deep .mat-mdc-form-field-infix{width:auto}\n"], dependencies: [{ kind: "ngmodule", type: i0.forwardRef(() => CommonModule) }, { kind: "directive", type: i0.forwardRef(() => i3.NgIf), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: i0.forwardRef(() => ReactiveFormsModule) }, { kind: "directive", type: i0.forwardRef(() => i4.DefaultValueAccessor), selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i0.forwardRef(() => i4.NgControlStatus), selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i0.forwardRef(() => i4.NgControlStatusGroup), selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i0.forwardRef(() => i4.RequiredValidator), selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i0.forwardRef(() => i4.FormControlDirective), selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i0.forwardRef(() => i4.FormGroupDirective), selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: i0.forwardRef(() => MatFormFieldModule) }, { kind: "component", type: i0.forwardRef(() => i5.MatFormField), selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i0.forwardRef(() => i5.MatLabel), selector: "mat-label" }, { kind: "directive", type: i0.forwardRef(() => i5.MatError), selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "ngmodule", type: i0.forwardRef(() => MatInputModule) }, { kind: "directive", type: i0.forwardRef(() => i6$1.MatInput), selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i0.forwardRef(() => ComponentMapperComponent), selector: "component-mapper", inputs: ["name", "props", "errorMsg", "outputEvents", "parent"] }] }); }
|
|
8429
8458
|
}
|
|
8430
8459
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: TimeComponent, decorators: [{
|
|
8431
8460
|
type: Component,
|
|
8432
|
-
args: [{ selector: 'app-time', standalone: true, imports: [CommonModule, ReactiveFormsModule, MatFormFieldModule, MatInputModule, forwardRef(() => ComponentMapperComponent)], template: "<div *ngIf=\"displayMode$; else noDisplayMode\">\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"FieldValueList\" [props]=\"{ label$, value$, displayMode$ }\"></component-mapper>\n</div>\n<ng-template #noDisplayMode>\n <div *ngIf=\"!bReadonly$ && bHasForm$; else noEdit\">\n <div [formGroup]=\"formGroup$\" *ngIf=\"bVisible$\">\n <mat-form-field class=\"psdk-full-width\" subscriptSizing=\"dynamic\" [hintLabel]=\"helperText\">\n <mat-label>{{ label$ }}</mat-label>\n <input\n matInput\n [placeholder]=\"placeholder\"\n type=\"time\"\n [value]=\"value$\"\n [required]=\"bRequired$\"\n [attr.data-test-id]=\"testId\"\n [formControl]=\"fieldControl\"\n (change)=\"fieldOnChange(
|
|
8461
|
+
args: [{ selector: 'app-time', standalone: true, imports: [CommonModule, ReactiveFormsModule, MatFormFieldModule, MatInputModule, forwardRef(() => ComponentMapperComponent)], template: "<div *ngIf=\"displayMode$; else noDisplayMode\">\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"FieldValueList\" [props]=\"{ label$, value$: formattedValue$, displayMode$ }\"></component-mapper>\n</div>\n<ng-template #noDisplayMode>\n <div *ngIf=\"!bReadonly$ && bHasForm$; else noEdit\">\n <div [formGroup]=\"formGroup$\" *ngIf=\"bVisible$\">\n <mat-form-field class=\"psdk-full-width\" subscriptSizing=\"dynamic\" [hintLabel]=\"helperText\">\n <mat-label>{{ label$ }}</mat-label>\n <input\n matInput\n [placeholder]=\"placeholder\"\n type=\"time\"\n [value]=\"value$\"\n [required]=\"bRequired$\"\n [attr.data-test-id]=\"testId\"\n [formControl]=\"fieldControl\"\n (change)=\"fieldOnChange()\"\n (blur)=\"fieldOnBlur($event)\"\n />\n <mat-error *ngIf=\"fieldControl.invalid\">{{ getErrorMessage() }}</mat-error>\n </mat-form-field>\n </div>\n </div>\n</ng-template>\n<ng-template #noEdit>\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"Text\" [props]=\"{ pConn$, formatAs$: 'text' }\"></component-mapper>\n</ng-template>\n", styles: [".psdk-full-width{width:100%}.psdk-label-readonly{font-size:1rem;display:block;transform:translateY(-1.28125em) scale(.75) perspective(100px) translateZ(.001px);-ms-transform:translateY(-1.28125em) scale(.75);width:133.33333%}.psdk-data-readonly{padding-top:.625rem;width:100%}::ng-deep .mat-mdc-form-field-infix{width:auto}\n"] }]
|
|
8433
8462
|
}], ctorParameters: () => [{ type: AngularPConnectService }, { type: i0.ChangeDetectorRef }, { type: Utils }], propDecorators: { pConn$: [{
|
|
8434
8463
|
type: Input
|
|
8435
8464
|
}], formGroup$: [{
|
|
@@ -8507,6 +8536,8 @@ class UrlComponent {
|
|
|
8507
8536
|
this.displayMode$ = this.configProps$.displayMode;
|
|
8508
8537
|
this.helperText = this.configProps$.helperText;
|
|
8509
8538
|
this.placeholder = this.configProps$.placeholder || '';
|
|
8539
|
+
this.actionsApi = this.pConn$.getActionsApi();
|
|
8540
|
+
this.propName = this.pConn$.getStateProps().value;
|
|
8510
8541
|
// timeout and detectChanges to avoid ExpressionChangedAfterItHasBeenCheckedError
|
|
8511
8542
|
setTimeout(() => {
|
|
8512
8543
|
if (this.configProps$.required != null) {
|
|
@@ -8540,12 +8571,14 @@ class UrlComponent {
|
|
|
8540
8571
|
});
|
|
8541
8572
|
}
|
|
8542
8573
|
}
|
|
8543
|
-
fieldOnChange(
|
|
8544
|
-
this.
|
|
8574
|
+
fieldOnChange() {
|
|
8575
|
+
this.pConn$.clearErrorMessages({
|
|
8576
|
+
property: this.propName
|
|
8577
|
+
});
|
|
8545
8578
|
}
|
|
8546
8579
|
fieldOnBlur(event) {
|
|
8547
|
-
|
|
8548
|
-
this.
|
|
8580
|
+
const value = event?.target?.value;
|
|
8581
|
+
handleEvent(this.actionsApi, 'changeNblur', this.propName, value);
|
|
8549
8582
|
}
|
|
8550
8583
|
getErrorMessage() {
|
|
8551
8584
|
let errMessage = '';
|
|
@@ -8563,11 +8596,11 @@ class UrlComponent {
|
|
|
8563
8596
|
return errMessage;
|
|
8564
8597
|
}
|
|
8565
8598
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: UrlComponent, deps: [{ token: AngularPConnectService }, { token: i0.ChangeDetectorRef }, { token: Utils }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
8566
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: UrlComponent, isStandalone: true, selector: "app-url", inputs: { pConn$: "pConn$", formGroup$: "formGroup$" }, ngImport: i0, template: "<div *ngIf=\"displayMode$; else noDisplayMode\">\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"FieldValueList\" [props]=\"{ label$, value$, displayMode$ }\"></component-mapper>\n</div>\n<ng-template #noDisplayMode>\n <div *ngIf=\"!bReadonly$ && bHasForm$; else noEdit\">\n <div [formGroup]=\"formGroup$\" *ngIf=\"bVisible$\">\n <mat-form-field class=\"psdk-full-width\" subscriptSizing=\"dynamic\" [hintLabel]=\"helperText\">\n <mat-label>{{ label$ }}</mat-label>\n <input\n matInput\n [placeholder]=\"placeholder\"\n type=\"url\"\n [value]=\"value$\"\n [required]=\"bRequired$\"\n [attr.data-test-id]=\"testId\"\n [formControl]=\"fieldControl\"\n (change)=\"fieldOnChange(
|
|
8599
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: UrlComponent, isStandalone: true, selector: "app-url", inputs: { pConn$: "pConn$", formGroup$: "formGroup$" }, ngImport: i0, template: "<div *ngIf=\"displayMode$; else noDisplayMode\">\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"FieldValueList\" [props]=\"{ label$, value$, displayMode$ }\"></component-mapper>\n</div>\n<ng-template #noDisplayMode>\n <div *ngIf=\"!bReadonly$ && bHasForm$; else noEdit\">\n <div [formGroup]=\"formGroup$\" *ngIf=\"bVisible$\">\n <mat-form-field class=\"psdk-full-width\" subscriptSizing=\"dynamic\" [hintLabel]=\"helperText\">\n <mat-label>{{ label$ }}</mat-label>\n <input\n matInput\n [placeholder]=\"placeholder\"\n type=\"url\"\n [value]=\"value$\"\n [required]=\"bRequired$\"\n [attr.data-test-id]=\"testId\"\n [formControl]=\"fieldControl\"\n (change)=\"fieldOnChange()\"\n (blur)=\"fieldOnBlur($event)\"\n />\n <mat-error *ngIf=\"fieldControl.invalid\">{{ getErrorMessage() }}</mat-error>\n </mat-form-field>\n </div>\n </div>\n</ng-template>\n<ng-template #noEdit>\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"Text\" [props]=\"{ pConn$, formatAs$: 'url' }\"></component-mapper>\n</ng-template>\n", styles: [".psdk-full-width{width:100%}.psdk-label-readonly{font-size:1rem;display:block;transform:translateY(-1.28125em) scale(.75) perspective(100px) translateZ(.001px);-ms-transform:translateY(-1.28125em) scale(.75);width:133.33333%}.psdk-data-readonly{padding-top:.625rem;width:100%}::ng-deep .mat-mdc-form-field-infix{width:auto}\n"], dependencies: [{ kind: "ngmodule", type: i0.forwardRef(() => CommonModule) }, { kind: "directive", type: i0.forwardRef(() => i3.NgIf), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: i0.forwardRef(() => ReactiveFormsModule) }, { kind: "directive", type: i0.forwardRef(() => i4.DefaultValueAccessor), selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i0.forwardRef(() => i4.NgControlStatus), selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i0.forwardRef(() => i4.NgControlStatusGroup), selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i0.forwardRef(() => i4.RequiredValidator), selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i0.forwardRef(() => i4.FormControlDirective), selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i0.forwardRef(() => i4.FormGroupDirective), selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: i0.forwardRef(() => MatFormFieldModule) }, { kind: "component", type: i0.forwardRef(() => i5.MatFormField), selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i0.forwardRef(() => i5.MatLabel), selector: "mat-label" }, { kind: "directive", type: i0.forwardRef(() => i5.MatError), selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "ngmodule", type: i0.forwardRef(() => MatInputModule) }, { kind: "directive", type: i0.forwardRef(() => i6$1.MatInput), selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i0.forwardRef(() => ComponentMapperComponent), selector: "component-mapper", inputs: ["name", "props", "errorMsg", "outputEvents", "parent"] }] }); }
|
|
8567
8600
|
}
|
|
8568
8601
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: UrlComponent, decorators: [{
|
|
8569
8602
|
type: Component,
|
|
8570
|
-
args: [{ selector: 'app-url', standalone: true, imports: [CommonModule, ReactiveFormsModule, MatFormFieldModule, MatInputModule, forwardRef(() => ComponentMapperComponent)], template: "<div *ngIf=\"displayMode$; else noDisplayMode\">\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"FieldValueList\" [props]=\"{ label$, value$, displayMode$ }\"></component-mapper>\n</div>\n<ng-template #noDisplayMode>\n <div *ngIf=\"!bReadonly$ && bHasForm$; else noEdit\">\n <div [formGroup]=\"formGroup$\" *ngIf=\"bVisible$\">\n <mat-form-field class=\"psdk-full-width\" subscriptSizing=\"dynamic\" [hintLabel]=\"helperText\">\n <mat-label>{{ label$ }}</mat-label>\n <input\n matInput\n [placeholder]=\"placeholder\"\n type=\"url\"\n [value]=\"value$\"\n [required]=\"bRequired$\"\n [attr.data-test-id]=\"testId\"\n [formControl]=\"fieldControl\"\n (change)=\"fieldOnChange(
|
|
8603
|
+
args: [{ selector: 'app-url', standalone: true, imports: [CommonModule, ReactiveFormsModule, MatFormFieldModule, MatInputModule, forwardRef(() => ComponentMapperComponent)], template: "<div *ngIf=\"displayMode$; else noDisplayMode\">\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"FieldValueList\" [props]=\"{ label$, value$, displayMode$ }\"></component-mapper>\n</div>\n<ng-template #noDisplayMode>\n <div *ngIf=\"!bReadonly$ && bHasForm$; else noEdit\">\n <div [formGroup]=\"formGroup$\" *ngIf=\"bVisible$\">\n <mat-form-field class=\"psdk-full-width\" subscriptSizing=\"dynamic\" [hintLabel]=\"helperText\">\n <mat-label>{{ label$ }}</mat-label>\n <input\n matInput\n [placeholder]=\"placeholder\"\n type=\"url\"\n [value]=\"value$\"\n [required]=\"bRequired$\"\n [attr.data-test-id]=\"testId\"\n [formControl]=\"fieldControl\"\n (change)=\"fieldOnChange()\"\n (blur)=\"fieldOnBlur($event)\"\n />\n <mat-error *ngIf=\"fieldControl.invalid\">{{ getErrorMessage() }}</mat-error>\n </mat-form-field>\n </div>\n </div>\n</ng-template>\n<ng-template #noEdit>\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"Text\" [props]=\"{ pConn$, formatAs$: 'url' }\"></component-mapper>\n</ng-template>\n", styles: [".psdk-full-width{width:100%}.psdk-label-readonly{font-size:1rem;display:block;transform:translateY(-1.28125em) scale(.75) perspective(100px) translateZ(.001px);-ms-transform:translateY(-1.28125em) scale(.75);width:133.33333%}.psdk-data-readonly{padding-top:.625rem;width:100%}::ng-deep .mat-mdc-form-field-infix{width:auto}\n"] }]
|
|
8571
8604
|
}], ctorParameters: () => [{ type: AngularPConnectService }, { type: i0.ChangeDetectorRef }, { type: Utils }], propDecorators: { pConn$: [{
|
|
8572
8605
|
type: Input
|
|
8573
8606
|
}], formGroup$: [{
|
|
@@ -8646,6 +8679,8 @@ class UserReferenceComponent {
|
|
|
8646
8679
|
this.displayMode$ = displayMode;
|
|
8647
8680
|
const { readOnly, required } = props;
|
|
8648
8681
|
[this.bReadonly$, this.bRequired$] = [readOnly, required].map(prop => prop === true || (typeof prop === 'string' && prop === 'true'));
|
|
8682
|
+
this.actionsApi = this.pConn$.getActionsApi();
|
|
8683
|
+
this.propName = this.pConn$.getStateProps().value;
|
|
8649
8684
|
const isUserNameAvailable = user => {
|
|
8650
8685
|
return typeof user === 'object' && user !== null && user.userName;
|
|
8651
8686
|
};
|
|
@@ -8691,7 +8726,8 @@ class UserReferenceComponent {
|
|
|
8691
8726
|
if (event?.target) {
|
|
8692
8727
|
this.filterValue = event.target.value;
|
|
8693
8728
|
}
|
|
8694
|
-
|
|
8729
|
+
const value = event?.target?.value;
|
|
8730
|
+
handleEvent(this.actionsApi, 'change', this.propName, value);
|
|
8695
8731
|
}
|
|
8696
8732
|
fieldOnBlur(event) {
|
|
8697
8733
|
let key = '';
|
|
@@ -8699,11 +8735,10 @@ class UserReferenceComponent {
|
|
|
8699
8735
|
const index = this.options$?.findIndex(element => element.value === event.target.value);
|
|
8700
8736
|
key = index > -1 ? (key = this.options$[index].key) : event.target.value;
|
|
8701
8737
|
}
|
|
8702
|
-
const
|
|
8738
|
+
const value = {
|
|
8703
8739
|
value: key
|
|
8704
8740
|
};
|
|
8705
|
-
|
|
8706
|
-
this.angularPConnectData.actions?.onChange(this, eve);
|
|
8741
|
+
handleEvent(this.actionsApi, 'changeNblur', this.propName, value);
|
|
8707
8742
|
}
|
|
8708
8743
|
getErrorMessage() {
|
|
8709
8744
|
let errMessage = '';
|
|
@@ -8807,14 +8842,14 @@ class ScalarListComponent {
|
|
|
8807
8842
|
type: componentType,
|
|
8808
8843
|
config: {
|
|
8809
8844
|
value: scalarValue,
|
|
8810
|
-
displayMode: '
|
|
8845
|
+
displayMode: 'DISPLAY_ONLY',
|
|
8811
8846
|
label: this.label$,
|
|
8812
8847
|
...restProps,
|
|
8813
8848
|
readOnly: true
|
|
8814
8849
|
}
|
|
8815
8850
|
}, '', 0, {}); // 2nd, 3rd, and 4th args empty string/object/null until typedef marked correctly as optional;
|
|
8816
8851
|
});
|
|
8817
|
-
this.isDisplayModeEnabled = ['
|
|
8852
|
+
this.isDisplayModeEnabled = ['STACKED_LARGE_VAL', 'DISPLAY_ONLY'].includes(this.displayMode$);
|
|
8818
8853
|
this.value$ = this.items;
|
|
8819
8854
|
}
|
|
8820
8855
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: ScalarListComponent, deps: [{ token: AngularPConnectService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
@@ -8882,6 +8917,8 @@ class RichTextComponent {
|
|
|
8882
8917
|
this.placeholder = this.configProps$.placeholder;
|
|
8883
8918
|
this.info = stateProps?.validatemessage || this.configProps$.helperText;
|
|
8884
8919
|
this.error = stateProps?.status === 'error';
|
|
8920
|
+
this.actionsApi = this.pConn$.getActionsApi();
|
|
8921
|
+
this.propName = this.pConn$.getStateProps().value;
|
|
8885
8922
|
if (this.configProps$.required != null) {
|
|
8886
8923
|
this.bRequired$ = this.utils.getBooleanValue(this.configProps$.required);
|
|
8887
8924
|
}
|
|
@@ -8897,7 +8934,7 @@ class RichTextComponent {
|
|
|
8897
8934
|
}
|
|
8898
8935
|
fieldOnChange() {
|
|
8899
8936
|
if (this.status === 'error') {
|
|
8900
|
-
const property = this.
|
|
8937
|
+
const property = this.propName;
|
|
8901
8938
|
this.pConn$.clearErrorMessages({
|
|
8902
8939
|
property,
|
|
8903
8940
|
category: '',
|
|
@@ -8906,10 +8943,7 @@ class RichTextComponent {
|
|
|
8906
8943
|
}
|
|
8907
8944
|
}
|
|
8908
8945
|
fieldOnBlur(editorValue) {
|
|
8909
|
-
|
|
8910
|
-
const actionsApi = this.pConn$?.getActionsApi();
|
|
8911
|
-
const propName = this.pConn$?.getStateProps()?.value;
|
|
8912
|
-
handleEvent(actionsApi, 'changeNblur', propName, editorValue);
|
|
8946
|
+
handleEvent(this.actionsApi, 'changeNblur', this.propName, editorValue);
|
|
8913
8947
|
}
|
|
8914
8948
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: RichTextComponent, deps: [{ token: AngularPConnectService }, { token: Utils }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
8915
8949
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: RichTextComponent, isStandalone: true, selector: "app-rich-text", inputs: { pConn$: "pConn$", formGroup$: "formGroup$" }, ngImport: i0, template: "<div *ngIf=\"displayMode$; else noDisplayMode\">\n <component-mapper *ngIf=\"bVisible$ !== false\" name=\"FieldValueList\" [props]=\"{ label$, value$, displayMode$, isHtml$: true }\"></component-mapper>\n</div>\n<ng-template #noDisplayMode>\n <div *ngIf=\"!bReadonly$; else noEdit\">\n <div *ngIf=\"bVisible$\">\n <component-mapper\n name=\"RichTextEditor\"\n [props]=\"{ placeholder, required: bRequired$, disabled: bDisabled$, label: label$, readonly: false, error, info, testId, value: value$ }\"\n [parent]=\"this\"\n [outputEvents]=\"{ onBlur: fieldOnBlur, onChange: fieldOnChange }\"\n ></component-mapper>\n </div>\n </div>\n</ng-template>\n<ng-template #noEdit>\n <div *ngIf=\"bVisible$ !== false\">\n <component-mapper name=\"RichTextEditor\" [props]=\"{ label: label$, value: value$, readonly: true, testId }\" [parent]=\"this\"></component-mapper>\n </div>\n</ng-template>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: i0.forwardRef(() => CommonModule) }, { kind: "directive", type: i0.forwardRef(() => i3.NgIf), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: i0.forwardRef(() => ReactiveFormsModule) }, { kind: "component", type: i0.forwardRef(() => ComponentMapperComponent), selector: "component-mapper", inputs: ["name", "props", "errorMsg", "outputEvents", "parent"] }] }); }
|
|
@@ -9521,7 +9555,7 @@ class DataReferenceComponent {
|
|
|
9521
9555
|
this.refList = this.rawViewMetadata.config.referenceList;
|
|
9522
9556
|
this.canBeChangedInReviewMode = theConfigProps.allowAndPersistChangesInReviewMode && (displayAs === 'autocomplete' || displayAs === 'dropdown');
|
|
9523
9557
|
// this.childrenToRender = this.children;
|
|
9524
|
-
this.isDisplayModeEnabled = ['
|
|
9558
|
+
this.isDisplayModeEnabled = ['DISPLAY_ONLY', 'STACKED_LARGE_VAL'].includes(displayMode);
|
|
9525
9559
|
if (this.firstChildMeta?.type !== 'Region') {
|
|
9526
9560
|
this.firstChildPConnect = this.pConn$.getChildren()[0].getPConnect;
|
|
9527
9561
|
/* remove refresh When condition from those old view so that it will not be used for runtime */
|
|
@@ -9674,6 +9708,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImpo
|
|
|
9674
9708
|
type: Input
|
|
9675
9709
|
}] } });
|
|
9676
9710
|
|
|
9711
|
+
class FormTemplateBaseComponent {
|
|
9712
|
+
ngOnDestroy() {
|
|
9713
|
+
PCore.getContextTreeManager().removeContextTreeNode(this.pConn$.getContextName());
|
|
9714
|
+
}
|
|
9715
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: FormTemplateBaseComponent, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
9716
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.12", type: FormTemplateBaseComponent, ngImport: i0 }); }
|
|
9717
|
+
}
|
|
9718
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: FormTemplateBaseComponent, decorators: [{
|
|
9719
|
+
type: Directive
|
|
9720
|
+
}] });
|
|
9721
|
+
|
|
9677
9722
|
class TemplateUtils {
|
|
9678
9723
|
/**
|
|
9679
9724
|
* Determine if the current view is the view of the case step/assignment.
|
|
@@ -9728,8 +9773,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImpo
|
|
|
9728
9773
|
}]
|
|
9729
9774
|
}] });
|
|
9730
9775
|
|
|
9731
|
-
class DefaultFormComponent {
|
|
9776
|
+
class DefaultFormComponent extends FormTemplateBaseComponent {
|
|
9732
9777
|
constructor(templateUtils) {
|
|
9778
|
+
super();
|
|
9733
9779
|
this.templateUtils = templateUtils;
|
|
9734
9780
|
this.NO_HEADER_TEMPLATES = [
|
|
9735
9781
|
'SubTabs',
|
|
@@ -9771,7 +9817,7 @@ class DefaultFormComponent {
|
|
|
9771
9817
|
this.arChildren$ = ReferenceComponent.normalizePConnArray(kids[0].getPConnect().getChildren());
|
|
9772
9818
|
}
|
|
9773
9819
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: DefaultFormComponent, deps: [{ token: TemplateUtils }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
9774
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.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(() => CommonModule) }, { kind: "directive", type: i0.forwardRef(() => i3.NgClass), selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i0.forwardRef(() => i3.NgForOf), selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i0.forwardRef(() => i3.NgIf), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i0.forwardRef(() => ComponentMapperComponent), selector: "component-mapper", inputs: ["name", "props", "errorMsg", "outputEvents", "parent"] }] }); }
|
|
9820
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: DefaultFormComponent, isStandalone: true, selector: "app-default-form", inputs: { pConn$: "pConn$", formGroup$: "formGroup$" }, usesInheritance: true, 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(() => CommonModule) }, { kind: "directive", type: i0.forwardRef(() => i3.NgClass), selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i0.forwardRef(() => i3.NgForOf), selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i0.forwardRef(() => i3.NgIf), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i0.forwardRef(() => ComponentMapperComponent), selector: "component-mapper", inputs: ["name", "props", "errorMsg", "outputEvents", "parent"] }] }); }
|
|
9775
9821
|
}
|
|
9776
9822
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: DefaultFormComponent, decorators: [{
|
|
9777
9823
|
type: Component,
|
|
@@ -9838,7 +9884,7 @@ class DetailsComponent {
|
|
|
9838
9884
|
if (theCompType === 'reference' || theCompType === 'group') {
|
|
9839
9885
|
const configProps = thePConn.getConfigProps();
|
|
9840
9886
|
configProps.readOnly = true;
|
|
9841
|
-
configProps.displayMode = '
|
|
9887
|
+
configProps.displayMode = 'DISPLAY_ONLY';
|
|
9842
9888
|
const propToUse = { ...thePConn.getInheritedProps() };
|
|
9843
9889
|
configProps.label = propToUse?.label;
|
|
9844
9890
|
const options = {
|
|
@@ -9993,7 +10039,7 @@ class DetailsOneColumnComponent {
|
|
|
9993
10039
|
return field;
|
|
9994
10040
|
});
|
|
9995
10041
|
}
|
|
9996
|
-
this.pConn$.setInheritedProp('displayMode', '
|
|
10042
|
+
this.pConn$.setInheritedProp('displayMode', 'DISPLAY_ONLY');
|
|
9997
10043
|
this.pConn$.setInheritedProp('readOnly', true);
|
|
9998
10044
|
const kids = this.pConn$.getChildren();
|
|
9999
10045
|
for (const kid of kids) {
|
|
@@ -10120,7 +10166,7 @@ class DetailsThreeColumnComponent {
|
|
|
10120
10166
|
return field;
|
|
10121
10167
|
});
|
|
10122
10168
|
}
|
|
10123
|
-
this.pConn$.setInheritedProp('displayMode', '
|
|
10169
|
+
this.pConn$.setInheritedProp('displayMode', 'DISPLAY_ONLY');
|
|
10124
10170
|
this.pConn$.setInheritedProp('readOnly', true);
|
|
10125
10171
|
const kids = this.pConn$.getChildren();
|
|
10126
10172
|
for (const kid of kids) {
|
|
@@ -10187,7 +10233,7 @@ class DetailsTwoColumnComponent {
|
|
|
10187
10233
|
this.showHighlightedData = rawMetaData?.showHighlightedData;
|
|
10188
10234
|
if (this.showHighlightedData) {
|
|
10189
10235
|
const highlightedData = rawMetaData?.highlightedData;
|
|
10190
|
-
this.highlightedDataArr = highlightedData
|
|
10236
|
+
this.highlightedDataArr = highlightedData?.map(field => {
|
|
10191
10237
|
field.config.displayMode = 'STACKED_LARGE_VAL';
|
|
10192
10238
|
if (field.config.value === '@P .pyStatusWork') {
|
|
10193
10239
|
field.type = 'TextInput';
|
|
@@ -10196,7 +10242,7 @@ class DetailsTwoColumnComponent {
|
|
|
10196
10242
|
return field;
|
|
10197
10243
|
});
|
|
10198
10244
|
}
|
|
10199
|
-
this.pConn$.setInheritedProp('displayMode', '
|
|
10245
|
+
this.pConn$.setInheritedProp('displayMode', 'DISPLAY_ONLY');
|
|
10200
10246
|
this.pConn$.setInheritedProp('readOnly', true);
|
|
10201
10247
|
const kids = this.pConn$.getChildren();
|
|
10202
10248
|
for (const kid of kids) {
|
|
@@ -10269,7 +10315,7 @@ class DetailsWideNarrowComponent {
|
|
|
10269
10315
|
return field;
|
|
10270
10316
|
});
|
|
10271
10317
|
}
|
|
10272
|
-
this.pConn$.setInheritedProp('displayMode', '
|
|
10318
|
+
this.pConn$.setInheritedProp('displayMode', 'DISPLAY_ONLY');
|
|
10273
10319
|
this.pConn$.setInheritedProp('readOnly', true);
|
|
10274
10320
|
const kids = this.pConn$.getChildren();
|
|
10275
10321
|
for (const kid of kids) {
|
|
@@ -10336,8 +10382,8 @@ const buildView = (pConn, index, viewConfigPath) => {
|
|
|
10336
10382
|
}
|
|
10337
10383
|
};
|
|
10338
10384
|
const view = PCore.createPConnect(config);
|
|
10339
|
-
if (pConn.getConfigProps()?.displayMode === '
|
|
10340
|
-
view.getPConnect()?.setInheritedProp('displayMode', '
|
|
10385
|
+
if (pConn.getConfigProps()?.displayMode === 'DISPLAY_ONLY') {
|
|
10386
|
+
view.getPConnect()?.setInheritedProp('displayMode', 'DISPLAY_ONLY');
|
|
10341
10387
|
}
|
|
10342
10388
|
return view;
|
|
10343
10389
|
};
|
|
@@ -10372,7 +10418,7 @@ class DynamicTabsComponent {
|
|
|
10372
10418
|
const { referenceList } = this.pConn$.resolveConfigProps(this.pConn$.getConfigProps());
|
|
10373
10419
|
const { tablabel } = this.pConn$.getComponentConfig();
|
|
10374
10420
|
const tablabelProp = PCore.getAnnotationUtils().getPropertyName(tablabel);
|
|
10375
|
-
this.pConn$.setInheritedProp('displayMode', '
|
|
10421
|
+
this.pConn$.setInheritedProp('displayMode', 'DISPLAY_ONLY');
|
|
10376
10422
|
this.pConn$.setInheritedProp('readOnly', true);
|
|
10377
10423
|
const referenceListData = this.pConn$.getValue(`${referenceList}.pxResults`, ''); // 2nd arg empty string until typedefs properly allow optional
|
|
10378
10424
|
this.tabsItems =
|
|
@@ -10476,7 +10522,7 @@ class FieldGroupTemplateComponent {
|
|
|
10476
10522
|
this.allowAddEdit = this.configProps$.allowTableEdit;
|
|
10477
10523
|
const renderMode = this.configProps$.renderMode;
|
|
10478
10524
|
const displayMode = this.configProps$.displayMode;
|
|
10479
|
-
this.readonlyMode = renderMode === 'ReadOnly' || displayMode === '
|
|
10525
|
+
this.readonlyMode = renderMode === 'ReadOnly' || displayMode === 'DISPLAY_ONLY';
|
|
10480
10526
|
this.contextClass = this.configProps$.contextClass;
|
|
10481
10527
|
const lookForChildInConfig = this.configProps$.lookForChildInConfig;
|
|
10482
10528
|
this.heading = this.configProps$.heading ?? 'Row';
|
|
@@ -10485,7 +10531,7 @@ class FieldGroupTemplateComponent {
|
|
|
10485
10531
|
this.pageReference = `${this.pConn$.getPageReference()}${resolvedList}`;
|
|
10486
10532
|
this.pConn$.setReferenceList(resolvedList);
|
|
10487
10533
|
if (this.readonlyMode) {
|
|
10488
|
-
this.pConn$.setInheritedProp('displayMode', '
|
|
10534
|
+
this.pConn$.setInheritedProp('displayMode', 'DISPLAY_ONLY');
|
|
10489
10535
|
}
|
|
10490
10536
|
this.referenceList = this.configProps$.referenceList;
|
|
10491
10537
|
if (this.prevRefLength != this.referenceList.length) {
|
|
@@ -10532,11 +10578,11 @@ class FieldValueListComponent {
|
|
|
10532
10578
|
this.isHtml$ = false;
|
|
10533
10579
|
}
|
|
10534
10580
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: FieldValueListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
10535
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: FieldValueListComponent, isStandalone: true, selector: "app-field-value-list", inputs: { label$: "label$", value$: "value$", displayMode$: "displayMode$", isHtml$: "isHtml$" }, ngImport: i0, template: "<div *ngIf=\"displayMode$ === '
|
|
10581
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: FieldValueListComponent, isStandalone: true, selector: "app-field-value-list", inputs: { label$: "label$", value$: "value$", displayMode$: "displayMode$", isHtml$: "isHtml$" }, ngImport: i0, template: "<div *ngIf=\"displayMode$ === 'DISPLAY_ONLY'; else STACKED_LARGE_VAL\" class=\"psdk-container-labels-left\">\n <div class=\"psdk-grid-label\">{{ label$ }}</div>\n <div class=\"psdk-val-labels-left\">\n <ng-container *ngTemplateOutlet=\"valueTemplate\"></ng-container>\n </div>\n</div>\n\n<ng-template #STACKED_LARGE_VAL>\n <div *ngIf=\"displayMode$ === 'STACKED_LARGE_VAL'\" class=\"psdk-container-stacked-large-val\">\n <div class=\"psdk-grid-label\">{{ label$ }}</div>\n <div class=\"psdk-val-stacked\">\n <ng-container *ngTemplateOutlet=\"valueTemplate\"></ng-container>\n </div>\n </div>\n</ng-template>\n\n<ng-template #valueTemplate>\n <div *ngIf=\"isHtml$; else valueOnly\" id=\"instruction-text\" [innerHTML]=\"value$ || '---'\"></div>\n <ng-template #valueOnly>{{ value$ || '---' }}</ng-template>\n</ng-template>\n", styles: [".psdk-container-labels-left{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:1rem;row-gap:1rem;align-items:start;padding-block:8px}.psdk-value{margin:8px 0}.psdk-value-hf{margin:8px 0;font-weight:500;font-size:1.25rem}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] }); }
|
|
10536
10582
|
}
|
|
10537
10583
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: FieldValueListComponent, decorators: [{
|
|
10538
10584
|
type: Component,
|
|
10539
|
-
args: [{ selector: 'app-field-value-list', standalone: true, imports: [CommonModule], template: "<div *ngIf=\"displayMode$ === '
|
|
10585
|
+
args: [{ selector: 'app-field-value-list', standalone: true, imports: [CommonModule], template: "<div *ngIf=\"displayMode$ === 'DISPLAY_ONLY'; else STACKED_LARGE_VAL\" class=\"psdk-container-labels-left\">\n <div class=\"psdk-grid-label\">{{ label$ }}</div>\n <div class=\"psdk-val-labels-left\">\n <ng-container *ngTemplateOutlet=\"valueTemplate\"></ng-container>\n </div>\n</div>\n\n<ng-template #STACKED_LARGE_VAL>\n <div *ngIf=\"displayMode$ === 'STACKED_LARGE_VAL'\" class=\"psdk-container-stacked-large-val\">\n <div class=\"psdk-grid-label\">{{ label$ }}</div>\n <div class=\"psdk-val-stacked\">\n <ng-container *ngTemplateOutlet=\"valueTemplate\"></ng-container>\n </div>\n </div>\n</ng-template>\n\n<ng-template #valueTemplate>\n <div *ngIf=\"isHtml$; else valueOnly\" id=\"instruction-text\" [innerHTML]=\"value$ || '---'\"></div>\n <ng-template #valueOnly>{{ value$ || '---' }}</ng-template>\n</ng-template>\n", styles: [".psdk-container-labels-left{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:1rem;row-gap:1rem;align-items:start;padding-block:8px}.psdk-value{margin:8px 0}.psdk-value-hf{margin:8px 0;font-weight:500;font-size:1.25rem}\n"] }]
|
|
10540
10586
|
}], propDecorators: { label$: [{
|
|
10541
10587
|
type: Input
|
|
10542
10588
|
}], value$: [{
|
|
@@ -12266,7 +12312,7 @@ class ListViewComponent {
|
|
|
12266
12312
|
}
|
|
12267
12313
|
filterDataWithDate(item, filterObj, filterValue) {
|
|
12268
12314
|
let bKeep;
|
|
12269
|
-
let value = item[filterObj.ref] != null
|
|
12315
|
+
let value = item[filterObj.ref] != null || item[filterObj.ref] != '' ? getSeconds(item[filterObj.ref]) : null;
|
|
12270
12316
|
filterValue = filterObj.containsFilterValue != null && filterObj.containsFilterValue != '' ? getSeconds(filterObj.containsFilterValue) : null;
|
|
12271
12317
|
switch (filterObj.containsFilter) {
|
|
12272
12318
|
case 'notequal':
|
|
@@ -13095,6 +13141,8 @@ class MultiselectComponent {
|
|
|
13095
13141
|
else {
|
|
13096
13142
|
this.fieldControl.enable();
|
|
13097
13143
|
}
|
|
13144
|
+
this.actionsApi = this.pConn$.getActionsApi();
|
|
13145
|
+
this.propName = this.pConn$.getStateProps().value;
|
|
13098
13146
|
if (this.listType !== 'associated') {
|
|
13099
13147
|
PCore.getDataApi()
|
|
13100
13148
|
?.init(dataConfig, contextName)
|
|
@@ -13153,7 +13201,9 @@ class MultiselectComponent {
|
|
|
13153
13201
|
this.getCaseListBasedOnParams(this.value$, '', [...this.selectedItems], [...this.itemsTree], true);
|
|
13154
13202
|
}
|
|
13155
13203
|
optionChanged(event) {
|
|
13156
|
-
|
|
13204
|
+
let value = event?.target?.value;
|
|
13205
|
+
value = value?.substring(1);
|
|
13206
|
+
handleEvent(this.actionsApi, 'changeNblur', this.propName, value);
|
|
13157
13207
|
}
|
|
13158
13208
|
setSelectedItemsForReferenceList(data) {
|
|
13159
13209
|
// Clear error messages if any
|
|
@@ -13234,7 +13284,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImpo
|
|
|
13234
13284
|
type: Input
|
|
13235
13285
|
}] } });
|
|
13236
13286
|
|
|
13237
|
-
class OneColumnComponent {
|
|
13287
|
+
class OneColumnComponent extends FormTemplateBaseComponent {
|
|
13238
13288
|
ngOnInit() {
|
|
13239
13289
|
this.updateSelf();
|
|
13240
13290
|
}
|
|
@@ -13247,8 +13297,8 @@ class OneColumnComponent {
|
|
|
13247
13297
|
updateSelf() {
|
|
13248
13298
|
this.arChildren$ = this.pConn$.getChildren();
|
|
13249
13299
|
}
|
|
13250
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: OneColumnComponent, deps:
|
|
13251
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: OneColumnComponent, isStandalone: true, selector: "app-one-column", inputs: { pConn$: "pConn$", formGroup$: "formGroup$" }, usesOnChanges: true, ngImport: i0, template: "<div *ngFor=\"let kid of arChildren$\">\n <div *ngIf=\"kid.getPConnect().getRawMetadata()['type'] === 'Region' && kid.getPConnect().getRawMetadata()['name'] === 'A'\">\n <component-mapper name=\"Region\" [props]=\"{ pConn$: kid.getPConnect(), formGroup$ }\"></component-mapper>\n </div>\n <div *ngIf=\"kid.getPConnect().getRawMetadata()['type'] === 'View'\">\n <component-mapper name=\"View\" [props]=\"{ pConn$: kid.getPConnect(), formGroup$ }\"></component-mapper>\n </div>\n <div *ngIf=\"kid.getPConnect().getRawMetadata()['type'] === 'CaseCreateStage'\">\n <component-mapper name=\"CaseCreateStage\" [props]=\"{ pConn$: kid.getPConnect(), formGroup$ }\"></component-mapper>\n </div>\n</div>\n", styles: ["*{box-sizing:border-box}\n"], dependencies: [{ kind: "ngmodule", type: i0.forwardRef(() => CommonModule) }, { kind: "directive", type: i0.forwardRef(() => i3.NgForOf), selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i0.forwardRef(() => i3.NgIf), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i0.forwardRef(() => ComponentMapperComponent), selector: "component-mapper", inputs: ["name", "props", "errorMsg", "outputEvents", "parent"] }] }); }
|
|
13300
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: OneColumnComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
13301
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: OneColumnComponent, isStandalone: true, selector: "app-one-column", inputs: { pConn$: "pConn$", formGroup$: "formGroup$" }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div *ngFor=\"let kid of arChildren$\">\n <div *ngIf=\"kid.getPConnect().getRawMetadata()['type'] === 'Region' && kid.getPConnect().getRawMetadata()['name'] === 'A'\">\n <component-mapper name=\"Region\" [props]=\"{ pConn$: kid.getPConnect(), formGroup$ }\"></component-mapper>\n </div>\n <div *ngIf=\"kid.getPConnect().getRawMetadata()['type'] === 'View'\">\n <component-mapper name=\"View\" [props]=\"{ pConn$: kid.getPConnect(), formGroup$ }\"></component-mapper>\n </div>\n <div *ngIf=\"kid.getPConnect().getRawMetadata()['type'] === 'CaseCreateStage'\">\n <component-mapper name=\"CaseCreateStage\" [props]=\"{ pConn$: kid.getPConnect(), formGroup$ }\"></component-mapper>\n </div>\n</div>\n", styles: ["*{box-sizing:border-box}\n"], dependencies: [{ kind: "ngmodule", type: i0.forwardRef(() => CommonModule) }, { kind: "directive", type: i0.forwardRef(() => i3.NgForOf), selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i0.forwardRef(() => i3.NgIf), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i0.forwardRef(() => ComponentMapperComponent), selector: "component-mapper", inputs: ["name", "props", "errorMsg", "outputEvents", "parent"] }] }); }
|
|
13252
13302
|
}
|
|
13253
13303
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: OneColumnComponent, decorators: [{
|
|
13254
13304
|
type: Component,
|
|
@@ -13312,6 +13362,8 @@ class PageComponent {
|
|
|
13312
13362
|
if (operator && operator != '') {
|
|
13313
13363
|
this.title$ += `, ${operator}`;
|
|
13314
13364
|
}
|
|
13365
|
+
// when showing a page, similar to updating root, need to cause viewContainer to call "initContainer"
|
|
13366
|
+
sessionStorage.setItem('hasViewContainer', 'false');
|
|
13315
13367
|
}
|
|
13316
13368
|
ngOnDestroy() {
|
|
13317
13369
|
if (this.angularPConnectData.unsubscribeFn) {
|
|
@@ -13660,7 +13712,7 @@ const createMetaForTable = (fields, renderMode) => {
|
|
|
13660
13712
|
};
|
|
13661
13713
|
const filterDataByDate = (item, filterObj) => {
|
|
13662
13714
|
let bKeep;
|
|
13663
|
-
let value = item[filterObj.ref] != null
|
|
13715
|
+
let value = item[filterObj.ref] != null || item[filterObj.ref] != '' ? getSeconds(item[filterObj.ref]) : null;
|
|
13664
13716
|
let filterValue = filterObj.containsFilterValue != null && filterObj.containsFilterValue != '' ? getSeconds(filterObj.containsFilterValue) : null;
|
|
13665
13717
|
switch (filterObj.containsFilter) {
|
|
13666
13718
|
case 'notequal':
|
|
@@ -14732,7 +14784,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImpo
|
|
|
14732
14784
|
type: Input
|
|
14733
14785
|
}] } });
|
|
14734
14786
|
|
|
14735
|
-
class ThreeColumnComponent {
|
|
14787
|
+
class ThreeColumnComponent extends FormTemplateBaseComponent {
|
|
14736
14788
|
ngOnInit() {
|
|
14737
14789
|
this.updateSelf();
|
|
14738
14790
|
}
|
|
@@ -14745,8 +14797,8 @@ class ThreeColumnComponent {
|
|
|
14745
14797
|
updateSelf() {
|
|
14746
14798
|
this.arChildren$ = this.pConn$.getChildren();
|
|
14747
14799
|
}
|
|
14748
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: ThreeColumnComponent, deps:
|
|
14749
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: ThreeColumnComponent, isStandalone: true, selector: "app-three-column", inputs: { pConn$: "pConn$", formGroup$: "formGroup$" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"psdk-three-column\">\n <div *ngFor=\"let kid of arChildren$\">\n <div class=\"psdk-three-column-column\" *ngIf=\"kid.getPConnect().getRawMetadata()['name'].toLowerCase() === 'a'\">\n <component-mapper name=\"Region\" [props]=\"{ pConn$: kid.getPConnect(), formGroup$ }\"></component-mapper>\n </div>\n <div class=\"psdk-three-column-column\" *ngIf=\"kid.getPConnect().getRawMetadata()['name'].toLowerCase() === 'b'\">\n <component-mapper name=\"Region\" [props]=\"{ pConn$: kid.getPConnect(), formGroup$ }\"></component-mapper>\n </div>\n <div class=\"psdk-three-column-column\" *ngIf=\"kid.getPConnect().getRawMetadata()['name'].toLowerCase() === 'c'\">\n <component-mapper name=\"Region\" [props]=\"{ pConn$: kid.getPConnect(), formGroup$ }\"></component-mapper>\n </div>\n </div>\n</div>\n", styles: ["*{box-sizing:border-box}.psdk-three-column{display:flow-root;height:100%}.psdk-three-column-column{width:33%;float:left;padding:0rem .3125rem;height:100%}\n"], dependencies: [{ kind: "ngmodule", type: i0.forwardRef(() => CommonModule) }, { kind: "directive", type: i0.forwardRef(() => i3.NgForOf), selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i0.forwardRef(() => i3.NgIf), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i0.forwardRef(() => ComponentMapperComponent), selector: "component-mapper", inputs: ["name", "props", "errorMsg", "outputEvents", "parent"] }] }); }
|
|
14800
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: ThreeColumnComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
14801
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: ThreeColumnComponent, isStandalone: true, selector: "app-three-column", inputs: { pConn$: "pConn$", formGroup$: "formGroup$" }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div class=\"psdk-three-column\">\n <div *ngFor=\"let kid of arChildren$\">\n <div class=\"psdk-three-column-column\" *ngIf=\"kid.getPConnect().getRawMetadata()['name'].toLowerCase() === 'a'\">\n <component-mapper name=\"Region\" [props]=\"{ pConn$: kid.getPConnect(), formGroup$ }\"></component-mapper>\n </div>\n <div class=\"psdk-three-column-column\" *ngIf=\"kid.getPConnect().getRawMetadata()['name'].toLowerCase() === 'b'\">\n <component-mapper name=\"Region\" [props]=\"{ pConn$: kid.getPConnect(), formGroup$ }\"></component-mapper>\n </div>\n <div class=\"psdk-three-column-column\" *ngIf=\"kid.getPConnect().getRawMetadata()['name'].toLowerCase() === 'c'\">\n <component-mapper name=\"Region\" [props]=\"{ pConn$: kid.getPConnect(), formGroup$ }\"></component-mapper>\n </div>\n </div>\n</div>\n", styles: ["*{box-sizing:border-box}.psdk-three-column{display:flow-root;height:100%}.psdk-three-column-column{width:33%;float:left;padding:0rem .3125rem;height:100%}\n"], dependencies: [{ kind: "ngmodule", type: i0.forwardRef(() => CommonModule) }, { kind: "directive", type: i0.forwardRef(() => i3.NgForOf), selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i0.forwardRef(() => i3.NgIf), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i0.forwardRef(() => ComponentMapperComponent), selector: "component-mapper", inputs: ["name", "props", "errorMsg", "outputEvents", "parent"] }] }); }
|
|
14750
14802
|
}
|
|
14751
14803
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: ThreeColumnComponent, decorators: [{
|
|
14752
14804
|
type: Component,
|
|
@@ -14770,7 +14822,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImpo
|
|
|
14770
14822
|
type: Input
|
|
14771
14823
|
}] } });
|
|
14772
14824
|
|
|
14773
|
-
class TwoColumnComponent {
|
|
14825
|
+
class TwoColumnComponent extends FormTemplateBaseComponent {
|
|
14774
14826
|
ngOnInit() {
|
|
14775
14827
|
this.updateSelf();
|
|
14776
14828
|
}
|
|
@@ -14783,8 +14835,8 @@ class TwoColumnComponent {
|
|
|
14783
14835
|
updateSelf() {
|
|
14784
14836
|
this.arChildren$ = this.pConn$.getChildren();
|
|
14785
14837
|
}
|
|
14786
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: TwoColumnComponent, deps:
|
|
14787
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: TwoColumnComponent, isStandalone: true, selector: "app-two-column", inputs: { pConn$: "pConn$", formGroup$: "formGroup$" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"psdk-two-column\">\n <div *ngFor=\"let kid of arChildren$\">\n <div class=\"psdk-two-column-left\" *ngIf=\"kid.getPConnect().getRawMetadata()['name'].toLowerCase() === 'left'\">\n <component-mapper name=\"Region\" [props]=\"{ pConn$: kid.getPConnect(), formGroup$ }\"></component-mapper>\n </div>\n <div class=\"psdk-two-column-right\" *ngIf=\"kid.getPConnect().getRawMetadata()['name'].toLowerCase() === 'right'\">\n <component-mapper name=\"Region\" [props]=\"{ pConn$: kid.getPConnect(), formGroup$ }\"></component-mapper>\n </div>\n <div class=\"psdk-two-column-column\" *ngIf=\"kid.getPConnect().getRawMetadata()['name'].toLowerCase() === 'a'\">\n <component-mapper name=\"Region\" [props]=\"{ pConn$: kid.getPConnect(), formGroup$ }\"></component-mapper>\n </div>\n <div class=\"psdk-two-column-column\" *ngIf=\"kid.getPConnect().getRawMetadata()['name'].toLowerCase() === 'b'\">\n <component-mapper name=\"Region\" [props]=\"{ pConn$: kid.getPConnect(), formGroup$ }\"></component-mapper>\n </div>\n </div>\n</div>\n", styles: ["*{box-sizing:border-box}.psdk-two-column{display:flow-root;height:100%}.psdk-two-column-column{width:50%;float:left;padding:0rem .3125rem;height:100%}.psdk-two-column-left{float:left;min-width:50%;padding:0rem .3125rem}.psdk-two-column-right{float:left;width:50%;padding:0rem .3125rem}\n"], dependencies: [{ kind: "ngmodule", type: i0.forwardRef(() => CommonModule) }, { kind: "directive", type: i0.forwardRef(() => i3.NgForOf), selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i0.forwardRef(() => i3.NgIf), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i0.forwardRef(() => ComponentMapperComponent), selector: "component-mapper", inputs: ["name", "props", "errorMsg", "outputEvents", "parent"] }] }); }
|
|
14838
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: TwoColumnComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
14839
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: TwoColumnComponent, isStandalone: true, selector: "app-two-column", inputs: { pConn$: "pConn$", formGroup$: "formGroup$" }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div class=\"psdk-two-column\">\n <div *ngFor=\"let kid of arChildren$\">\n <div class=\"psdk-two-column-left\" *ngIf=\"kid.getPConnect().getRawMetadata()['name'].toLowerCase() === 'left'\">\n <component-mapper name=\"Region\" [props]=\"{ pConn$: kid.getPConnect(), formGroup$ }\"></component-mapper>\n </div>\n <div class=\"psdk-two-column-right\" *ngIf=\"kid.getPConnect().getRawMetadata()['name'].toLowerCase() === 'right'\">\n <component-mapper name=\"Region\" [props]=\"{ pConn$: kid.getPConnect(), formGroup$ }\"></component-mapper>\n </div>\n <div class=\"psdk-two-column-column\" *ngIf=\"kid.getPConnect().getRawMetadata()['name'].toLowerCase() === 'a'\">\n <component-mapper name=\"Region\" [props]=\"{ pConn$: kid.getPConnect(), formGroup$ }\"></component-mapper>\n </div>\n <div class=\"psdk-two-column-column\" *ngIf=\"kid.getPConnect().getRawMetadata()['name'].toLowerCase() === 'b'\">\n <component-mapper name=\"Region\" [props]=\"{ pConn$: kid.getPConnect(), formGroup$ }\"></component-mapper>\n </div>\n </div>\n</div>\n", styles: ["*{box-sizing:border-box}.psdk-two-column{display:flow-root;height:100%}.psdk-two-column-column{width:50%;float:left;padding:0rem .3125rem;height:100%}.psdk-two-column-left{float:left;min-width:50%;padding:0rem .3125rem}.psdk-two-column-right{float:left;width:50%;padding:0rem .3125rem}\n"], dependencies: [{ kind: "ngmodule", type: i0.forwardRef(() => CommonModule) }, { kind: "directive", type: i0.forwardRef(() => i3.NgForOf), selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i0.forwardRef(() => i3.NgIf), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i0.forwardRef(() => ComponentMapperComponent), selector: "component-mapper", inputs: ["name", "props", "errorMsg", "outputEvents", "parent"] }] }); }
|
|
14788
14840
|
}
|
|
14789
14841
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: TwoColumnComponent, decorators: [{
|
|
14790
14842
|
type: Component,
|
|
@@ -14856,7 +14908,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImpo
|
|
|
14856
14908
|
type: Input
|
|
14857
14909
|
}] } });
|
|
14858
14910
|
|
|
14859
|
-
class WideNarrowFormComponent {
|
|
14911
|
+
class WideNarrowFormComponent extends FormTemplateBaseComponent {
|
|
14860
14912
|
ngOnInit() {
|
|
14861
14913
|
this.updateSelf();
|
|
14862
14914
|
}
|
|
@@ -14869,8 +14921,8 @@ class WideNarrowFormComponent {
|
|
|
14869
14921
|
updateSelf() {
|
|
14870
14922
|
this.arChildren$ = this.pConn$.getChildren();
|
|
14871
14923
|
}
|
|
14872
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: WideNarrowFormComponent, deps:
|
|
14873
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: WideNarrowFormComponent, isStandalone: true, selector: "app-wide-narrow-form", inputs: { pConn$: "pConn$", formGroup$: "formGroup$" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"psdk-narrow-wide-column\">\n <div *ngFor=\"let kid of arChildren$\">\n <div class=\"psdk-wide-column\" *ngIf=\"kid.getPConnect().getRawMetadata()['name'].toLowerCase() === 'left'\">\n <component-mapper name=\"Region\" [props]=\"{ pConn$: kid.getPConnect(), formGroup$ }\"></component-mapper>\n </div>\n <div class=\"psdk-narrow-column\" *ngIf=\"kid.getPConnect().getRawMetadata()['name'].toLowerCase() === 'right'\">\n <component-mapper name=\"Region\" [props]=\"{ pConn$: kid.getPConnect(), formGroup$ }\"></component-mapper>\n </div>\n <div class=\"psdk-wide-column\" *ngIf=\"kid.getPConnect().getRawMetadata()['name'].toLowerCase() === 'a'\">\n <component-mapper name=\"Region\" [props]=\"{ pConn$: kid.getPConnect(), formGroup$ }\"></component-mapper>\n </div>\n <div class=\"psdk-narrow-column\" *ngIf=\"kid.getPConnect().getRawMetadata()['name'].toLowerCase() === 'b'\">\n <component-mapper name=\"Region\" [props]=\"{ pConn$: kid.getPConnect(), formGroup$ }\"></component-mapper>\n </div>\n </div>\n</div>\n", styles: ["*{box-sizing:border-box}.psdk-narrow-wide-column{display:flow-root;height:100%}.psdk-narrow-column{float:left;min-width:30%;padding:0rem .3125rem}.psdk-wide-column{float:left;width:70%;padding:0rem .3125rem}\n"], dependencies: [{ kind: "ngmodule", type: i0.forwardRef(() => CommonModule) }, { kind: "directive", type: i0.forwardRef(() => i3.NgForOf), selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i0.forwardRef(() => i3.NgIf), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i0.forwardRef(() => ComponentMapperComponent), selector: "component-mapper", inputs: ["name", "props", "errorMsg", "outputEvents", "parent"] }] }); }
|
|
14924
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: WideNarrowFormComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
14925
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: WideNarrowFormComponent, isStandalone: true, selector: "app-wide-narrow-form", inputs: { pConn$: "pConn$", formGroup$: "formGroup$" }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div class=\"psdk-narrow-wide-column\">\n <div *ngFor=\"let kid of arChildren$\">\n <div class=\"psdk-wide-column\" *ngIf=\"kid.getPConnect().getRawMetadata()['name'].toLowerCase() === 'left'\">\n <component-mapper name=\"Region\" [props]=\"{ pConn$: kid.getPConnect(), formGroup$ }\"></component-mapper>\n </div>\n <div class=\"psdk-narrow-column\" *ngIf=\"kid.getPConnect().getRawMetadata()['name'].toLowerCase() === 'right'\">\n <component-mapper name=\"Region\" [props]=\"{ pConn$: kid.getPConnect(), formGroup$ }\"></component-mapper>\n </div>\n <div class=\"psdk-wide-column\" *ngIf=\"kid.getPConnect().getRawMetadata()['name'].toLowerCase() === 'a'\">\n <component-mapper name=\"Region\" [props]=\"{ pConn$: kid.getPConnect(), formGroup$ }\"></component-mapper>\n </div>\n <div class=\"psdk-narrow-column\" *ngIf=\"kid.getPConnect().getRawMetadata()['name'].toLowerCase() === 'b'\">\n <component-mapper name=\"Region\" [props]=\"{ pConn$: kid.getPConnect(), formGroup$ }\"></component-mapper>\n </div>\n </div>\n</div>\n", styles: ["*{box-sizing:border-box}.psdk-narrow-wide-column{display:flow-root;height:100%}.psdk-narrow-column{float:left;min-width:30%;padding:0rem .3125rem}.psdk-wide-column{float:left;width:70%;padding:0rem .3125rem}\n"], dependencies: [{ kind: "ngmodule", type: i0.forwardRef(() => CommonModule) }, { kind: "directive", type: i0.forwardRef(() => i3.NgForOf), selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i0.forwardRef(() => i3.NgIf), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i0.forwardRef(() => ComponentMapperComponent), selector: "component-mapper", inputs: ["name", "props", "errorMsg", "outputEvents", "parent"] }] }); }
|
|
14874
14926
|
}
|
|
14875
14927
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: WideNarrowFormComponent, decorators: [{
|
|
14876
14928
|
type: Component,
|
|
@@ -17268,7 +17320,10 @@ class MaterialDetailsFieldsComponent {
|
|
|
17268
17320
|
constructor(utils) {
|
|
17269
17321
|
this.utils = utils;
|
|
17270
17322
|
}
|
|
17271
|
-
_getValue(configValue) {
|
|
17323
|
+
_getValue(configValue, field = {}) {
|
|
17324
|
+
if (field?.type === 'userreference') {
|
|
17325
|
+
return configValue.userName;
|
|
17326
|
+
}
|
|
17272
17327
|
if (configValue && configValue != '') {
|
|
17273
17328
|
return configValue;
|
|
17274
17329
|
}
|
|
@@ -17278,11 +17333,11 @@ class MaterialDetailsFieldsComponent {
|
|
|
17278
17333
|
return this.utils.generateDate(dateValue, dateFormat);
|
|
17279
17334
|
}
|
|
17280
17335
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: MaterialDetailsFieldsComponent, deps: [{ token: Utils }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
17281
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: MaterialDetailsFieldsComponent, isStandalone: true, selector: "app-material-details-fields", inputs: { arFields$: "arFields$", arHighlightedFields: "arHighlightedFields" }, ngImport: i0, template: "<div id=\"details-fields-list\">\n <div *ngFor=\"let field of arFields$\">\n <div *ngIf=\"field.type === 'group'; else noGroup\">\n <component-mapper name=\"Group\" [props]=\"{ pConn$: field.pConn }\"></component-mapper>\n </div>\n <ng-template #noGroup>\n <div *ngIf=\"field.type === 'reference'; else showDetails\">\n <component-mapper name=\"View\" [props]=\"{ pConn$: field.pConn }\"></component-mapper>\n </div>\n </ng-template>\n\n <ng-template #showDetails>\n <div class=\"psdk-grid-filter\" *ngIf=\"field.config.label\">\n <div class=\"psdk-details-fields-label\">\n {{ field.config.label }}\n </div>\n <div [ngSwitch]=\"field.type.toLowerCase()\" class=\"psdk-csf-primary-field-value\">\n <span *ngSwitchCase=\"'textinput'\" class=\"psdk-details-text-style\">{{ _getValue(field.config.value) }}</span>\n <span *ngSwitchCase=\"'status'\" class=\"psdk-details-status-style\">{{ _getValue(field.config.value) }}</span>\n <a *ngSwitchCase=\"'phone'\" as=\"a\" href=\"tel: {{ field.config.value }}\">{{ _getValue(field.config.value) }}</a>\n <a *ngSwitchCase=\"'email'\" href=\"mailto: {{ field.config.value }}\">{{ _getValue(field.config.value) }}</a>\n <span *ngSwitchCase=\"'date'\" class=\"psdk-details-text-style\">{{ _formatDate(field.config.value, field.type) }}</span>\n <span *ngSwitchCase=\"'caseoperator'\"></span>\n <span *ngSwitchDefault>{{ _getValue(field.config.value) }}</span>\n </div>\n </div>\n </ng-template>\n </div>\n</div>\n", styles: [".psdk-details-fields-label{color:var(--app-label-color);margin:8px 0}span.psdk-details-text-style-hf{font-weight:700}span.psdk-details-status-style-hf{background-color:var(--app-details-status-background);border-radius:.125rem;color:var(--app-details-status-color);display:inline-block;font-size:.75rem;font-weight:700;line-height:1.25rem;height:1.25rem;padding:0 .5rem;text-transform:uppercase}.psdk-grid-filter{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:1rem;row-gap:1rem;align-items:start}.psdk-csf-primary-field-value{margin:8px 0}\n"], dependencies: [{ kind: "ngmodule", type: i0.forwardRef(() => CommonModule) }, { kind: "directive", type: i0.forwardRef(() => i3.NgForOf), selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i0.forwardRef(() => i3.NgIf), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i0.forwardRef(() => i3.NgSwitch), selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i0.forwardRef(() => i3.NgSwitchCase), selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i0.forwardRef(() => i3.NgSwitchDefault), selector: "[ngSwitchDefault]" }, { kind: "component", type: i0.forwardRef(() => ComponentMapperComponent), selector: "component-mapper", inputs: ["name", "props", "errorMsg", "outputEvents", "parent"] }] }); }
|
|
17336
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: MaterialDetailsFieldsComponent, isStandalone: true, selector: "app-material-details-fields", inputs: { arFields$: "arFields$", arHighlightedFields: "arHighlightedFields" }, ngImport: i0, template: "<div id=\"details-fields-list\">\n <div *ngFor=\"let field of arFields$\">\n <div *ngIf=\"field.type === 'group'; else noGroup\">\n <component-mapper name=\"Group\" [props]=\"{ pConn$: field.pConn }\"></component-mapper>\n </div>\n <ng-template #noGroup>\n <div *ngIf=\"field.type === 'reference'; else showDetails\">\n <component-mapper name=\"View\" [props]=\"{ pConn$: field.pConn }\"></component-mapper>\n </div>\n </ng-template>\n\n <ng-template #showDetails>\n <div class=\"psdk-grid-filter\" *ngIf=\"field.config.label\">\n <div class=\"psdk-details-fields-label\">\n {{ field.config.label }}\n </div>\n <div [ngSwitch]=\"field.type.toLowerCase()\" class=\"psdk-csf-primary-field-value\">\n <span *ngSwitchCase=\"'textinput'\" class=\"psdk-details-text-style\">{{ _getValue(field.config.value) }}</span>\n <span *ngSwitchCase=\"'status'\" class=\"psdk-details-status-style\">{{ _getValue(field.config.value) }}</span>\n <a *ngSwitchCase=\"'phone'\" as=\"a\" href=\"tel: {{ field.config.value }}\">{{ _getValue(field.config.value) }}</a>\n <a *ngSwitchCase=\"'email'\" href=\"mailto: {{ field.config.value }}\">{{ _getValue(field.config.value) }}</a>\n <span *ngSwitchCase=\"'date'\" class=\"psdk-details-text-style\">{{ _formatDate(field.config.value, field.type) }}</span>\n <span *ngSwitchCase=\"'caseoperator'\"></span>\n <span *ngSwitchDefault>{{ _getValue(field.config.value, field) }}</span>\n </div>\n </div>\n </ng-template>\n </div>\n</div>\n", styles: [".psdk-details-fields-label{color:var(--app-label-color);margin:8px 0}span.psdk-details-text-style-hf{font-weight:700}span.psdk-details-status-style-hf{background-color:var(--app-details-status-background);border-radius:.125rem;color:var(--app-details-status-color);display:inline-block;font-size:.75rem;font-weight:700;line-height:1.25rem;height:1.25rem;padding:0 .5rem;text-transform:uppercase}.psdk-grid-filter{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:1rem;row-gap:1rem;align-items:start}.psdk-csf-primary-field-value{margin:8px 0}\n"], dependencies: [{ kind: "ngmodule", type: i0.forwardRef(() => CommonModule) }, { kind: "directive", type: i0.forwardRef(() => i3.NgForOf), selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i0.forwardRef(() => i3.NgIf), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i0.forwardRef(() => i3.NgSwitch), selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i0.forwardRef(() => i3.NgSwitchCase), selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i0.forwardRef(() => i3.NgSwitchDefault), selector: "[ngSwitchDefault]" }, { kind: "component", type: i0.forwardRef(() => ComponentMapperComponent), selector: "component-mapper", inputs: ["name", "props", "errorMsg", "outputEvents", "parent"] }] }); }
|
|
17282
17337
|
}
|
|
17283
17338
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: MaterialDetailsFieldsComponent, decorators: [{
|
|
17284
17339
|
type: Component,
|
|
17285
|
-
args: [{ selector: 'app-material-details-fields', standalone: true, imports: [CommonModule, forwardRef(() => ComponentMapperComponent)], template: "<div id=\"details-fields-list\">\n <div *ngFor=\"let field of arFields$\">\n <div *ngIf=\"field.type === 'group'; else noGroup\">\n <component-mapper name=\"Group\" [props]=\"{ pConn$: field.pConn }\"></component-mapper>\n </div>\n <ng-template #noGroup>\n <div *ngIf=\"field.type === 'reference'; else showDetails\">\n <component-mapper name=\"View\" [props]=\"{ pConn$: field.pConn }\"></component-mapper>\n </div>\n </ng-template>\n\n <ng-template #showDetails>\n <div class=\"psdk-grid-filter\" *ngIf=\"field.config.label\">\n <div class=\"psdk-details-fields-label\">\n {{ field.config.label }}\n </div>\n <div [ngSwitch]=\"field.type.toLowerCase()\" class=\"psdk-csf-primary-field-value\">\n <span *ngSwitchCase=\"'textinput'\" class=\"psdk-details-text-style\">{{ _getValue(field.config.value) }}</span>\n <span *ngSwitchCase=\"'status'\" class=\"psdk-details-status-style\">{{ _getValue(field.config.value) }}</span>\n <a *ngSwitchCase=\"'phone'\" as=\"a\" href=\"tel: {{ field.config.value }}\">{{ _getValue(field.config.value) }}</a>\n <a *ngSwitchCase=\"'email'\" href=\"mailto: {{ field.config.value }}\">{{ _getValue(field.config.value) }}</a>\n <span *ngSwitchCase=\"'date'\" class=\"psdk-details-text-style\">{{ _formatDate(field.config.value, field.type) }}</span>\n <span *ngSwitchCase=\"'caseoperator'\"></span>\n <span *ngSwitchDefault>{{ _getValue(field.config.value) }}</span>\n </div>\n </div>\n </ng-template>\n </div>\n</div>\n", styles: [".psdk-details-fields-label{color:var(--app-label-color);margin:8px 0}span.psdk-details-text-style-hf{font-weight:700}span.psdk-details-status-style-hf{background-color:var(--app-details-status-background);border-radius:.125rem;color:var(--app-details-status-color);display:inline-block;font-size:.75rem;font-weight:700;line-height:1.25rem;height:1.25rem;padding:0 .5rem;text-transform:uppercase}.psdk-grid-filter{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:1rem;row-gap:1rem;align-items:start}.psdk-csf-primary-field-value{margin:8px 0}\n"] }]
|
|
17340
|
+
args: [{ selector: 'app-material-details-fields', standalone: true, imports: [CommonModule, forwardRef(() => ComponentMapperComponent)], template: "<div id=\"details-fields-list\">\n <div *ngFor=\"let field of arFields$\">\n <div *ngIf=\"field.type === 'group'; else noGroup\">\n <component-mapper name=\"Group\" [props]=\"{ pConn$: field.pConn }\"></component-mapper>\n </div>\n <ng-template #noGroup>\n <div *ngIf=\"field.type === 'reference'; else showDetails\">\n <component-mapper name=\"View\" [props]=\"{ pConn$: field.pConn }\"></component-mapper>\n </div>\n </ng-template>\n\n <ng-template #showDetails>\n <div class=\"psdk-grid-filter\" *ngIf=\"field.config.label\">\n <div class=\"psdk-details-fields-label\">\n {{ field.config.label }}\n </div>\n <div [ngSwitch]=\"field.type.toLowerCase()\" class=\"psdk-csf-primary-field-value\">\n <span *ngSwitchCase=\"'textinput'\" class=\"psdk-details-text-style\">{{ _getValue(field.config.value) }}</span>\n <span *ngSwitchCase=\"'status'\" class=\"psdk-details-status-style\">{{ _getValue(field.config.value) }}</span>\n <a *ngSwitchCase=\"'phone'\" as=\"a\" href=\"tel: {{ field.config.value }}\">{{ _getValue(field.config.value) }}</a>\n <a *ngSwitchCase=\"'email'\" href=\"mailto: {{ field.config.value }}\">{{ _getValue(field.config.value) }}</a>\n <span *ngSwitchCase=\"'date'\" class=\"psdk-details-text-style\">{{ _formatDate(field.config.value, field.type) }}</span>\n <span *ngSwitchCase=\"'caseoperator'\"></span>\n <span *ngSwitchDefault>{{ _getValue(field.config.value, field) }}</span>\n </div>\n </div>\n </ng-template>\n </div>\n</div>\n", styles: [".psdk-details-fields-label{color:var(--app-label-color);margin:8px 0}span.psdk-details-text-style-hf{font-weight:700}span.psdk-details-status-style-hf{background-color:var(--app-details-status-background);border-radius:.125rem;color:var(--app-details-status-color);display:inline-block;font-size:.75rem;font-weight:700;line-height:1.25rem;height:1.25rem;padding:0 .5rem;text-transform:uppercase}.psdk-grid-filter{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:1rem;row-gap:1rem;align-items:start}.psdk-csf-primary-field-value{margin:8px 0}\n"] }]
|
|
17286
17341
|
}], ctorParameters: () => [{ type: Utils }], propDecorators: { arFields$: [{
|
|
17287
17342
|
type: Input
|
|
17288
17343
|
}], arHighlightedFields: [{
|
|
@@ -18292,5 +18347,5 @@ const localSdkComponentMap = {
|
|
|
18292
18347
|
* Generated bundle index. Do not edit.
|
|
18293
18348
|
*/
|
|
18294
18349
|
|
|
18295
|
-
export { ActionButtonsComponent, AlertBannerComponent, AlertComponent, AngularPConnectService, AppAnnouncementComponent, AppShellComponent, AssignmentCardComponent, AssignmentComponent, AttachmentComponent, AutoCompleteComponent, CancelAlertComponent, CaseCreateStageComponent, CaseHistoryComponent, CaseService, CaseSummaryComponent, CaseViewComponent, CheckBoxComponent, ComponentMapperComponent, ConfirmationComponent, CurrencyComponent, DELETE_ICON, DashboardFilterComponent, DataReferenceComponent, DatapageService, DateComponent, DateTimeComponent, DecimalComponent, DefaultFormComponent, DeferLoadComponent, DetailsComponent, DetailsNarrowWideComponent, DetailsOneColumnComponent, DetailsSubTabsComponent, DetailsThreeColumnComponent, DetailsTwoColumnComponent, DetailsWideNarrowComponent, DropdownComponent, EmailComponent, ErrorBoundaryComponent, ErrorMessagesService, FeedContainerComponent, FieldGroupListComponent, FieldGroupTemplateComponent, FieldValueListComponent, FileUtilityComponent, FlowContainerBaseComponent, FlowContainerComponent, Group$1 as Group, HybridViewContainerComponent, InlineDashboardComponent, InlineDashboardPageComponent, IntegerComponent, ListPageComponent, ListUtilityComponent, ListViewComponent, MaterialCaseSummaryComponent, MaterialDetailsComponent, MaterialDetailsFieldsComponent, MaterialSummaryItemComponent, MaterialSummaryListComponent, MaterialUtilityComponent, MaterialVerticalTabsComponent, ModalViewContainerComponent, MultiReferenceReadonlyComponent, MultiStepComponent, NarrowWideFormComponent, NavbarComponent, OneColumnComponent, OneColumnPageComponent, OneColumnTabComponent, OperatorComponent, PageComponent, PercentageComponent, PhoneComponent, PreviewViewContainerComponent, ProgressSpinnerService, PromotedFiltersComponent, PulseComponent, RadioButtonsComponent, ReferenceComponent, RegionComponent, RepeatingStructuresComponent, RichTextComponent, RichTextEditorComponent, RootContainerComponent, SdkComponentMap, SemanticLinkComponent, ServerConfigService, SimpleTableComponent, SimpleTableManualComponent, SimpleTableSelectComponent, SingleReferenceReadonlyComponent, StagesComponent, SubTabsComponent, TABLE_CELL, TemplateUtils, TextAreaComponent, TextComponent, TextContentComponent, TextInputComponent, ThousandSeparatorDirective, ThreeColumnComponent, ThreeColumnPageComponent, TimeComponent, TodoComponent, TwoColumnComponent, TwoColumnPageComponent, TwoColumnTabComponent, UpdateWorklistService, UrlComponent, UserReferenceComponent, UtilityComponent, Utils, ViewComponent, ViewContainerComponent, WideNarrowFormComponent, WideNarrowPageComponent, buildFieldsForTable, buildFilterComponents, buildMetaForListView, buildView, combineFilters, compareSdkPCoreVersions, createFilter, createFilterComponent, createMetaForTable, createPConnect, currencyMap, dateFormatInfoDefault, deleteInstruction, endpoints, filterDataByCommonFields, filterDataByDate, filterForFieldValueList, format, formatters, getAddRowCallback, getAllFields, getApiContext, getBanners, getComponentFromMap, getContext, getCurrencyCharacters, getCurrencyOptions, getCurrentTimezone$1 as getCurrentTimezone, getDateFormatInfo, getDeferFriendlyTabs, getFilterExpression, getFormattedDate, getLocale$1 as getLocale, getMessagesGrouped, getReferenceList, getSdkComponentMap, getSeconds, getToDoAssignments, getTransientTabs, getVisibleTabs, handleEvent, insertInstruction, loginBoxType, populateRowKey, sdkVersion, showBanner, tabClick, updateNewInstructions };
|
|
18350
|
+
export { ActionButtonsComponent, AlertBannerComponent, AlertComponent, AngularPConnectService, AppAnnouncementComponent, AppShellComponent, AssignmentCardComponent, AssignmentComponent, AttachmentComponent, AutoCompleteComponent, CancelAlertComponent, CaseCreateStageComponent, CaseHistoryComponent, CaseService, CaseSummaryComponent, CaseViewComponent, CheckBoxComponent, ComponentMapperComponent, ConfirmationComponent, CurrencyComponent, DELETE_ICON, DashboardFilterComponent, DataReferenceComponent, DatapageService, DateComponent, DateTimeComponent, DecimalComponent, DefaultFormComponent, DeferLoadComponent, DetailsComponent, DetailsNarrowWideComponent, DetailsOneColumnComponent, DetailsSubTabsComponent, DetailsThreeColumnComponent, DetailsTwoColumnComponent, DetailsWideNarrowComponent, DropdownComponent, EmailComponent, ErrorBoundaryComponent, ErrorMessagesService, FeedContainerComponent, FieldGroupListComponent, FieldGroupTemplateComponent, FieldValueListComponent, FileUtilityComponent, FlowContainerBaseComponent, FlowContainerComponent, FormTemplateBaseComponent, Group$1 as Group, HybridViewContainerComponent, InlineDashboardComponent, InlineDashboardPageComponent, IntegerComponent, ListPageComponent, ListUtilityComponent, ListViewComponent, MaterialCaseSummaryComponent, MaterialDetailsComponent, MaterialDetailsFieldsComponent, MaterialSummaryItemComponent, MaterialSummaryListComponent, MaterialUtilityComponent, MaterialVerticalTabsComponent, ModalViewContainerComponent, MultiReferenceReadonlyComponent, MultiStepComponent, NarrowWideFormComponent, NavbarComponent, OneColumnComponent, OneColumnPageComponent, OneColumnTabComponent, OperatorComponent, PageComponent, PercentageComponent, PhoneComponent, PreviewViewContainerComponent, ProgressSpinnerService, PromotedFiltersComponent, PulseComponent, RadioButtonsComponent, ReferenceComponent, RegionComponent, RepeatingStructuresComponent, RichTextComponent, RichTextEditorComponent, RootContainerComponent, SdkComponentMap, SemanticLinkComponent, ServerConfigService, SimpleTableComponent, SimpleTableManualComponent, SimpleTableSelectComponent, SingleReferenceReadonlyComponent, StagesComponent, SubTabsComponent, TABLE_CELL, TemplateUtils, TextAreaComponent, TextComponent, TextContentComponent, TextInputComponent, ThousandSeparatorDirective, ThreeColumnComponent, ThreeColumnPageComponent, TimeComponent, TodoComponent, TwoColumnComponent, TwoColumnPageComponent, TwoColumnTabComponent, UpdateWorklistService, UrlComponent, UserReferenceComponent, UtilityComponent, Utils, ViewComponent, ViewContainerComponent, WideNarrowFormComponent, WideNarrowPageComponent, buildFieldsForTable, buildFilterComponents, buildMetaForListView, buildView, combineFilters, compareSdkPCoreVersions, createFilter, createFilterComponent, createMetaForTable, createPConnect, currencyMap, dateFormatInfoDefault, deleteInstruction, endpoints, filterDataByCommonFields, filterDataByDate, filterForFieldValueList, format, formatters, getAddRowCallback, getAllFields, getApiContext, getBanners, getComponentFromMap, getContext, getCurrencyCharacters, getCurrencyOptions, getCurrentTimezone$1 as getCurrentTimezone, getDateFormatInfo, getDeferFriendlyTabs, getFilterExpression, getFormattedDate, getLocale$1 as getLocale, getMessagesGrouped, getReferenceList, getSdkComponentMap, getSeconds, getToDoAssignments, getTransientTabs, getVisibleTabs, handleEvent, insertInstruction, loginBoxType, populateRowKey, sdkVersion, showBanner, tabClick, updateNewInstructions, updateWorkList };
|
|
18296
18351
|
//# sourceMappingURL=pega-angular-sdk-components.mjs.map
|