@pega/react-sdk-overrides 0.242.4 → 0.242.5
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/lib/designSystemExtension/DetailsFields/DetailsFields.tsx +1 -1
- package/lib/field/AutoComplete/AutoComplete.tsx +1 -1
- package/lib/field/Checkbox/Checkbox.tsx +1 -1
- package/lib/field/Currency/Currency.tsx +1 -1
- package/lib/field/Date/Date.tsx +1 -1
- package/lib/field/DateTime/DateTime.tsx +1 -1
- package/lib/field/Decimal/Decimal.tsx +1 -1
- package/lib/field/Dropdown/Dropdown.tsx +1 -1
- package/lib/field/Email/Email.tsx +1 -1
- package/lib/field/Group/Group.tsx +1 -1
- package/lib/field/Integer/Integer.tsx +1 -1
- package/lib/field/Percentage/Percentage.tsx +1 -1
- package/lib/field/Phone/Phone.tsx +1 -1
- package/lib/field/RadioButtons/RadioButtons.tsx +1 -1
- package/lib/field/RichText/RichText.tsx +1 -1
- package/lib/field/ScalarList/ScalarList.tsx +2 -2
- package/lib/field/SemanticLink/SemanticLink.tsx +1 -1
- package/lib/field/TextArea/TextArea.tsx +1 -1
- package/lib/field/TextInput/TextInput.tsx +1 -1
- package/lib/field/Time/Time.tsx +1 -1
- package/lib/field/URL/URL.tsx +1 -1
- package/lib/field/UserReference/UserReference.tsx +1 -1
- package/lib/helpers/field-group-utils.ts +2 -2
- package/lib/infra/DeferLoad/DeferLoad.tsx +1 -1
- package/lib/infra/View/View.tsx +35 -2
- package/lib/template/DataReference/DataReference.tsx +1 -1
- package/lib/template/Details/Details/Details.tsx +1 -1
- package/lib/template/Details/DetailsThreeColumn/DetailsThreeColumn.tsx +1 -1
- package/lib/template/Details/DetailsTwoColumn/DetailsTwoColumn.tsx +1 -1
- package/lib/template/Details/DynamicTabs/DynamicTabs.tsx +1 -1
- package/lib/template/FieldGroupTemplate/FieldGroupTemplate.tsx +2 -2
- package/lib/template/ListView/utils.ts +1 -1
- package/lib/template/NarrowWide/NarrowWideDetails/NarrowWideDetails.tsx +1 -1
- package/lib/template/WideNarrow/WideNarrowDetails/WideNarrowDetails.tsx +1 -1
- package/package.json +1 -1
|
@@ -48,7 +48,7 @@ export default function DetailsFields(props: DetailsFieldsProps) {
|
|
|
48
48
|
const { label } = thePConn.getConfigProps();
|
|
49
49
|
const configObj = thePConn?.getReferencedView();
|
|
50
50
|
configObj.config.readOnly = true;
|
|
51
|
-
configObj.config.displayMode = '
|
|
51
|
+
configObj.config.displayMode = 'DISPLAY_ONLY';
|
|
52
52
|
const propToUse = { ...thePConn.getInheritedProps() };
|
|
53
53
|
configObj.config.label = theCompType === 'reference' ? propToUse?.label : label;
|
|
54
54
|
fieldComponents.push({
|
|
@@ -150,7 +150,7 @@ export default function AutoComplete(props: AutoCompleteProps) {
|
|
|
150
150
|
}
|
|
151
151
|
}, []);
|
|
152
152
|
|
|
153
|
-
if (displayMode === '
|
|
153
|
+
if (displayMode === 'DISPLAY_ONLY') {
|
|
154
154
|
return <FieldValueList name={hideLabel ? '' : label} value={value} />;
|
|
155
155
|
}
|
|
156
156
|
|
|
@@ -77,7 +77,7 @@ export default function CheckboxComponent(props: CheckboxProps) {
|
|
|
77
77
|
}
|
|
78
78
|
}, [thePConn]);
|
|
79
79
|
|
|
80
|
-
if (displayMode === '
|
|
80
|
+
if (displayMode === 'DISPLAY_ONLY') {
|
|
81
81
|
return <FieldValueList name={hideLabel ? '' : caption} value={value ? trueLabel : falseLabel} />;
|
|
82
82
|
}
|
|
83
83
|
|
|
@@ -67,7 +67,7 @@ export default function Currency(props: CurrrencyProps) {
|
|
|
67
67
|
let currencyProp = {};
|
|
68
68
|
currencyProp = { prefix: theCurrSym, decimalSeparator: theCurrDec, thousandSeparator: theCurrSep };
|
|
69
69
|
|
|
70
|
-
if (displayMode === '
|
|
70
|
+
if (displayMode === 'DISPLAY_ONLY') {
|
|
71
71
|
return <FieldValueList name={hideLabel ? '' : label} value={formattedValue} />;
|
|
72
72
|
}
|
|
73
73
|
|
package/lib/field/Date/Date.tsx
CHANGED
|
@@ -39,7 +39,7 @@ export default function Date(props: DateProps) {
|
|
|
39
39
|
dateFormatInfo.dateFormatStringLC = theDateFormat.dateFormatStringLC;
|
|
40
40
|
dateFormatInfo.dateFormatMask = theDateFormat.dateFormatMask;
|
|
41
41
|
|
|
42
|
-
if (displayMode === '
|
|
42
|
+
if (displayMode === 'DISPLAY_ONLY') {
|
|
43
43
|
const formattedDate = format(props.value, 'date', {
|
|
44
44
|
format: dateFormatInfo.dateFormatString
|
|
45
45
|
});
|
|
@@ -34,7 +34,7 @@ export default function DateTime(props: DateTimeProps) {
|
|
|
34
34
|
dateFormatInfo.dateFormatStringLC = theDateFormat.dateFormatStringLC;
|
|
35
35
|
dateFormatInfo.dateFormatMask = theDateFormat.dateFormatMask;
|
|
36
36
|
|
|
37
|
-
if (displayMode === '
|
|
37
|
+
if (displayMode === 'DISPLAY_ONLY') {
|
|
38
38
|
const formattedDateTime = format(props.value, 'datetime', {
|
|
39
39
|
format: `${dateFormatInfo.dateFormatString} hh:mm a`
|
|
40
40
|
});
|
|
@@ -71,7 +71,7 @@ export default function Decimal(props: DecimalProps) {
|
|
|
71
71
|
formattedValue = format(value, pConn.getComponentName().toLowerCase(), theCurrencyOptions);
|
|
72
72
|
}
|
|
73
73
|
|
|
74
|
-
if (displayMode === '
|
|
74
|
+
if (displayMode === 'DISPLAY_ONLY') {
|
|
75
75
|
return <FieldValueList name={hideLabel ? '' : label} value={formattedValue} />;
|
|
76
76
|
}
|
|
77
77
|
|
|
@@ -15,7 +15,7 @@ interface GroupProps extends PConnFieldProps {
|
|
|
15
15
|
export default function Group(props: GroupProps) {
|
|
16
16
|
const { children, heading, showHeading, instructions, collapsible, displayMode, type } = props;
|
|
17
17
|
|
|
18
|
-
const isReadOnly = displayMode === '
|
|
18
|
+
const isReadOnly = displayMode === 'DISPLAY_ONLY';
|
|
19
19
|
|
|
20
20
|
const content = useMemo(() => {
|
|
21
21
|
return (
|
|
@@ -42,7 +42,7 @@ export default function Integer(props: IntegerProps) {
|
|
|
42
42
|
setInputValue(value);
|
|
43
43
|
}, [value]);
|
|
44
44
|
|
|
45
|
-
if (displayMode === '
|
|
45
|
+
if (displayMode === 'DISPLAY_ONLY') {
|
|
46
46
|
return <FieldValueList name={hideLabel ? '' : label} value={value} />;
|
|
47
47
|
}
|
|
48
48
|
|
|
@@ -58,7 +58,7 @@ export default function Percentage(props: PercentageProps) {
|
|
|
58
58
|
readOnlyProp = { readOnly: true };
|
|
59
59
|
}
|
|
60
60
|
|
|
61
|
-
if (displayMode === '
|
|
61
|
+
if (displayMode === 'DISPLAY_ONLY') {
|
|
62
62
|
return <FieldValueList name={hideLabel ? '' : label} value={formattedValue} />;
|
|
63
63
|
}
|
|
64
64
|
|
|
@@ -23,7 +23,7 @@ export default function RichText(props: RichTextProps) {
|
|
|
23
23
|
|
|
24
24
|
const helperTextToDisplay = validatemessage || helperText;
|
|
25
25
|
|
|
26
|
-
if (displayMode === '
|
|
26
|
+
if (displayMode === 'DISPLAY_ONLY') {
|
|
27
27
|
return <FieldValueList name={hideLabel ? '' : label} value={value} isHtml />;
|
|
28
28
|
}
|
|
29
29
|
|
|
@@ -38,7 +38,7 @@ export default function ScalarList(props: ScalarListProps) {
|
|
|
38
38
|
config: {
|
|
39
39
|
// @ts-ignore - Type '{ readOnly: true; displayInModal: boolean; value: any; displayMode: string; label: string; }' is not assignable to type 'ComponentMetadataConfig'.
|
|
40
40
|
value: scalarValue,
|
|
41
|
-
displayMode: '
|
|
41
|
+
displayMode: 'DISPLAY_ONLY',
|
|
42
42
|
label,
|
|
43
43
|
...restProps,
|
|
44
44
|
// @ts-ignore - Type 'string' is not assignable to type 'boolean | undefined'.
|
|
@@ -51,7 +51,7 @@ export default function ScalarList(props: ScalarListProps) {
|
|
|
51
51
|
); // 2nd, 3rd, and 4th args empty string/object/null until typedef marked correctly as optional;
|
|
52
52
|
});
|
|
53
53
|
|
|
54
|
-
if (['
|
|
54
|
+
if (['STACKED_LARGE_VAL', 'DISPLAY_ONLY'].includes(displayMode)) {
|
|
55
55
|
return (
|
|
56
56
|
<div>
|
|
57
57
|
<CommaSeparatedList items={items} />
|
|
@@ -52,7 +52,7 @@ export default function SemanticLink(props: SemanticLinkProps) {
|
|
|
52
52
|
const { text, displayMode, label, hideLabel } = props;
|
|
53
53
|
const classes = useStyles();
|
|
54
54
|
|
|
55
|
-
if (displayMode === '
|
|
55
|
+
if (displayMode === 'DISPLAY_ONLY' || (!displayMode && label !== undefined)) {
|
|
56
56
|
const value = text || '---';
|
|
57
57
|
return (
|
|
58
58
|
<Grid container spacing={1} style={{ padding: '4px 0px' }} id='semantic-link-grid'>
|
|
@@ -44,7 +44,7 @@ export default function TextArea(props: TextAreaProps) {
|
|
|
44
44
|
setInputValue(value);
|
|
45
45
|
}, [value]);
|
|
46
46
|
|
|
47
|
-
if (displayMode === '
|
|
47
|
+
if (displayMode === 'DISPLAY_ONLY') {
|
|
48
48
|
return <FieldValueList name={hideLabel ? '' : label} value={value} />;
|
|
49
49
|
}
|
|
50
50
|
|
|
@@ -47,7 +47,7 @@ export default function TextInput(props: TextInputProps) {
|
|
|
47
47
|
setInputValue(value);
|
|
48
48
|
}, [value]);
|
|
49
49
|
|
|
50
|
-
if (displayMode === '
|
|
50
|
+
if (displayMode === 'DISPLAY_ONLY') {
|
|
51
51
|
return <FieldValueList name={hideLabel ? '' : label} value={value} />;
|
|
52
52
|
}
|
|
53
53
|
|
package/lib/field/Time/Time.tsx
CHANGED
|
@@ -20,7 +20,7 @@ export default function Time(props: TimeProps) {
|
|
|
20
20
|
const pConn = getPConnect();
|
|
21
21
|
const actions = pConn.getActionsApi();
|
|
22
22
|
const propName = (pConn.getStateProps() as any).value;
|
|
23
|
-
if (displayMode === '
|
|
23
|
+
if (displayMode === 'DISPLAY_ONLY') {
|
|
24
24
|
return <FieldValueList name={hideLabel ? '' : label} value={value} />;
|
|
25
25
|
}
|
|
26
26
|
|
package/lib/field/URL/URL.tsx
CHANGED
|
@@ -44,7 +44,7 @@ export default function URLComponent(props: URLComponentProps) {
|
|
|
44
44
|
setInputValue(value);
|
|
45
45
|
}, [value]);
|
|
46
46
|
|
|
47
|
-
if (displayMode === '
|
|
47
|
+
if (displayMode === 'DISPLAY_ONLY') {
|
|
48
48
|
return <FieldValueList name={hideLabel ? '' : label} value={value} />;
|
|
49
49
|
}
|
|
50
50
|
|
|
@@ -99,7 +99,7 @@ const UserReference = (props: UserReferenceProps) => {
|
|
|
99
99
|
|
|
100
100
|
let userReferenceComponent: any = null;
|
|
101
101
|
|
|
102
|
-
if (displayMode === '
|
|
102
|
+
if (displayMode === 'DISPLAY_ONLY') {
|
|
103
103
|
return <FieldValueList name={hideLabel ? '' : label} value={userName || ''} />;
|
|
104
104
|
}
|
|
105
105
|
|
|
@@ -49,8 +49,8 @@ export function buildView(pConn, index, viewConfigPath): ReactElement {
|
|
|
49
49
|
};
|
|
50
50
|
|
|
51
51
|
const view = PCore.createPConnect(config);
|
|
52
|
-
if (pConn.getConfigProps()?.displayMode === '
|
|
53
|
-
view.getPConnect()?.setInheritedProp('displayMode', '
|
|
52
|
+
if (pConn.getConfigProps()?.displayMode === 'DISPLAY_ONLY') {
|
|
53
|
+
view.getPConnect()?.setInheritedProp('displayMode', 'DISPLAY_ONLY');
|
|
54
54
|
}
|
|
55
55
|
return createElement(createPConnectComponent(), view);
|
|
56
56
|
}
|
|
@@ -95,7 +95,7 @@ export default function DeferLoad(props: DeferLoadProps) {
|
|
|
95
95
|
}
|
|
96
96
|
};
|
|
97
97
|
const configObject = PCore.createPConnect(config);
|
|
98
|
-
configObject.getPConnect().setInheritedProp('displayMode', '
|
|
98
|
+
configObject.getPConnect().setInheritedProp('displayMode', 'DISPLAY_ONLY');
|
|
99
99
|
setContent(createElement(createPConnectComponent(), configObject));
|
|
100
100
|
if (deferLoadId) {
|
|
101
101
|
PCore.getDeferLoadManager().stop(deferLoadId, getPConnect().getContextName());
|
package/lib/infra/View/View.tsx
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { PropsWithChildren } from 'react';
|
|
1
|
+
import { PropsWithChildren, useEffect } from 'react';
|
|
2
2
|
|
|
3
3
|
import { getComponentFromMap } from '@pega/react-sdk-components/lib/bridge/helpers/sdk_component_map';
|
|
4
4
|
import { getAllFields } from '@pega/react-sdk-components/lib/components/helpers/template-utils';
|
|
@@ -18,6 +18,7 @@ interface ViewProps extends PConnProps {
|
|
|
18
18
|
visibility?: boolean;
|
|
19
19
|
name?: string;
|
|
20
20
|
bInForm?: boolean;
|
|
21
|
+
type?: any;
|
|
21
22
|
}
|
|
22
23
|
|
|
23
24
|
//
|
|
@@ -41,8 +42,9 @@ const NO_HEADER_TEMPLATES = [
|
|
|
41
42
|
];
|
|
42
43
|
|
|
43
44
|
export default function View(props: PropsWithChildren<ViewProps>) {
|
|
44
|
-
const { children, template, getPConnect, mode, visibility, name: pageName } = props;
|
|
45
|
+
const { children, template, getPConnect, mode, visibility, name: pageName, type, title } = props;
|
|
45
46
|
let { label = '', showLabel = false } = props;
|
|
47
|
+
const { PAGE_TYPES: { PAGE, LANDINGPAGE, LISTPAGE } = {}, MODAL } = PCore.getConstants();
|
|
46
48
|
|
|
47
49
|
// Get the inherited props from the parent to determine label settings. For 8.6, this is only for embedded data form views
|
|
48
50
|
// Putting this logic here instead of copy/paste in every Form template index.js
|
|
@@ -50,12 +52,43 @@ export default function View(props: PropsWithChildren<ViewProps>) {
|
|
|
50
52
|
const inheritedProps: any = getPConnect().getInheritedProps(); // try to remove any when getInheritedProps typedefs are fixed
|
|
51
53
|
label = inheritedProps.label || label;
|
|
52
54
|
showLabel = inheritedProps.showLabel || showLabel;
|
|
55
|
+
const localeUtils = PCore.getLocaleUtils();
|
|
53
56
|
|
|
54
57
|
const isEmbeddedDataView = mode === 'editable'; // would be better to check the reference child for `context` attribute if possible
|
|
55
58
|
if (isEmbeddedDataView && showLabel === undefined) {
|
|
56
59
|
showLabel = true;
|
|
57
60
|
}
|
|
58
61
|
|
|
62
|
+
useEffect(() => {
|
|
63
|
+
// Get the localized application label
|
|
64
|
+
let applicationLabel = PCore.getEnvironmentInfo().getApplicationLabel();
|
|
65
|
+
applicationLabel = localeUtils.getLocaleValue(`${applicationLabel}`, '', '');
|
|
66
|
+
const caseInfo = getPConnect().getCaseInfo();
|
|
67
|
+
const isAssignmentInCreateStage = caseInfo && caseInfo.isAssignmentInCreateStage();
|
|
68
|
+
const isRenderingInModal = getPConnect().getContainerName().includes(MODAL);
|
|
69
|
+
const isRenderingInPreviewPanel = getPConnect().getContainerName().includes('preview');
|
|
70
|
+
|
|
71
|
+
/* If assignment is in create stage and rendering in modal don't update the title.
|
|
72
|
+
Title will be updated on completion of create stage and when the assignment is rendered inline to the page.
|
|
73
|
+
*/
|
|
74
|
+
const canUpdateTitle =
|
|
75
|
+
!isRenderingInPreviewPanel &&
|
|
76
|
+
(type === PAGE || type === LANDINGPAGE || type === LISTPAGE) &&
|
|
77
|
+
!(isRenderingInModal && isAssignmentInCreateStage) &&
|
|
78
|
+
PCore.getEnvironmentInfo().getRenderingMode() === 'FULL_PORTAL';
|
|
79
|
+
// Incase of home route title is same as applicationLabel so setting to empty to just show applicationLabel
|
|
80
|
+
let titleVar = title === applicationLabel ? '' : title;
|
|
81
|
+
|
|
82
|
+
if (canUpdateTitle) {
|
|
83
|
+
if (caseInfo) {
|
|
84
|
+
const name = caseInfo.getName();
|
|
85
|
+
const id = caseInfo.getBusinessID();
|
|
86
|
+
titleVar = name && id ? `${name} (${id})` : titleVar;
|
|
87
|
+
}
|
|
88
|
+
document.title = titleVar ? `${titleVar} - ${applicationLabel}` : applicationLabel;
|
|
89
|
+
}
|
|
90
|
+
}, [type, title, getPConnect, PAGE, LANDINGPAGE, LISTPAGE]);
|
|
91
|
+
|
|
59
92
|
const key = `${getPConnect().getContextName()}_${getPConnect().getPageReference()}_${pageName}`;
|
|
60
93
|
// As long as the template is defined in the dependencies of the view
|
|
61
94
|
// it will be loaded, otherwise fall back to single column
|
|
@@ -52,7 +52,7 @@ export default function DataReference(props: PropsWithChildren<DataReferenceProp
|
|
|
52
52
|
const refList = rawViewMetadata.config.referenceList;
|
|
53
53
|
const canBeChangedInReviewMode = allowAndPersistChangesInReviewMode && (displayAs === 'autocomplete' || displayAs === 'dropdown');
|
|
54
54
|
let propName;
|
|
55
|
-
const isDisplayModeEnabled = ['
|
|
55
|
+
const isDisplayModeEnabled = ['STACKED_LARGE_VAL', 'DISPLAY_ONLY'].includes(displayMode);
|
|
56
56
|
let firstChildPConnect;
|
|
57
57
|
|
|
58
58
|
/* Only for dropdown when it has param use data api to get the data back and add it to datasource */
|
|
@@ -23,7 +23,7 @@ export default function Details(props: DetailsProps) {
|
|
|
23
23
|
|
|
24
24
|
// Set display mode prop and re-create the children so this part of the dom tree renders
|
|
25
25
|
// in a readonly (display) mode instead of a editable
|
|
26
|
-
getPConnect().setInheritedProp('displayMode', '
|
|
26
|
+
getPConnect().setInheritedProp('displayMode', 'DISPLAY_ONLY');
|
|
27
27
|
getPConnect().setInheritedProp('readOnly', true);
|
|
28
28
|
const children = (getPConnect().getChildren() as any[]).map((configObject, index) =>
|
|
29
29
|
createElement(createPConnectComponent(), {
|
|
@@ -23,7 +23,7 @@ export default function DetailsThreeColumn(props: DetailsThreeColumnProps) {
|
|
|
23
23
|
|
|
24
24
|
// Set display mode prop and re-create the children so this part of the dom tree renders
|
|
25
25
|
// in a readonly (display) mode instead of a editable
|
|
26
|
-
getPConnect().setInheritedProp('displayMode', '
|
|
26
|
+
getPConnect().setInheritedProp('displayMode', 'DISPLAY_ONLY');
|
|
27
27
|
getPConnect().setInheritedProp('readOnly', true);
|
|
28
28
|
const children = (getPConnect().getChildren() as any[]).map((configObject, index) =>
|
|
29
29
|
createElement(createPConnectComponent(), {
|
|
@@ -23,7 +23,7 @@ export default function DetailsTwoColumn(props: DetailsTwoColumnProps) {
|
|
|
23
23
|
|
|
24
24
|
// Set display mode prop and re-create the children so this part of the dom tree renders
|
|
25
25
|
// in a readonly (display) mode instead of a editable
|
|
26
|
-
getPConnect().setInheritedProp('displayMode', '
|
|
26
|
+
getPConnect().setInheritedProp('displayMode', 'DISPLAY_ONLY');
|
|
27
27
|
getPConnect().setInheritedProp('readOnly', true);
|
|
28
28
|
const children = (getPConnect().getChildren() as any[]).map((configObject, index) =>
|
|
29
29
|
createElement(createPConnectComponent(), {
|
|
@@ -31,7 +31,7 @@ function DynamicTabs(props: DynamicTabsProps) {
|
|
|
31
31
|
const tablabelProp = PCore.getAnnotationUtils().getPropertyName(tablabel);
|
|
32
32
|
const referenceListData: any = pConnect.getValue(`${referenceList}.pxResults`, ''); // 2nd arg empty string until typedefs properly allow optional
|
|
33
33
|
const memoisedTabViews = useMemo(() => {
|
|
34
|
-
pConnect.setInheritedProp('displayMode', '
|
|
34
|
+
pConnect.setInheritedProp('displayMode', 'DISPLAY_ONLY');
|
|
35
35
|
pConnect.setInheritedProp('readOnly', true);
|
|
36
36
|
|
|
37
37
|
return (
|
|
@@ -37,7 +37,7 @@ export default function FieldGroupTemplate(props: FieldGroupTemplateProps) {
|
|
|
37
37
|
const resolvedList = getReferenceList(pConn);
|
|
38
38
|
pConn.setReferenceList(resolvedList);
|
|
39
39
|
const pageReference = `${pConn.getPageReference()}${resolvedList}`;
|
|
40
|
-
const isReadonlyMode = renderMode === 'ReadOnly' || displayMode === '
|
|
40
|
+
const isReadonlyMode = renderMode === 'ReadOnly' || displayMode === 'DISPLAY_ONLY';
|
|
41
41
|
const HEADING = heading ?? 'Row';
|
|
42
42
|
|
|
43
43
|
useLayoutEffect(() => {
|
|
@@ -96,7 +96,7 @@ export default function FieldGroupTemplate(props: FieldGroupTemplateProps) {
|
|
|
96
96
|
);
|
|
97
97
|
}
|
|
98
98
|
|
|
99
|
-
pConn.setInheritedProp('displayMode', '
|
|
99
|
+
pConn.setInheritedProp('displayMode', 'DISPLAY_ONLY');
|
|
100
100
|
const memoisedReadOnlyList = useMemo(() => {
|
|
101
101
|
return referenceList.map((item, index) => {
|
|
102
102
|
const key = item[heading] || `field-group-row-${index}`;
|
|
@@ -678,7 +678,7 @@ export const readContextResponse = async (context, params) => {
|
|
|
678
678
|
const dataPageKeys = PCore.getDataTypeUtils().getDataPageKeys(dataViewName);
|
|
679
679
|
dataPageKeys?.forEach(item => (item.isAlternateKeyStorage ? compositeKeys.push(item.linkedField) : compositeKeys.push(item.keyName)));
|
|
680
680
|
if (compositeKeys.length) {
|
|
681
|
-
otherContext
|
|
681
|
+
otherContext?.setCompositeKeys(compositeKeys);
|
|
682
682
|
}
|
|
683
683
|
if (otherContext) {
|
|
684
684
|
otherContext.fetchRowActionDetails = null;
|
|
@@ -26,7 +26,7 @@ export default function NarrowWideDetails(props: NarrowWideDetailsProps) {
|
|
|
26
26
|
|
|
27
27
|
// Set display mode prop and re-create the children so this part of the dom tree renders
|
|
28
28
|
// in a readonly (display) mode instead of a editable
|
|
29
|
-
getPConnect().setInheritedProp('displayMode', '
|
|
29
|
+
getPConnect().setInheritedProp('displayMode', 'DISPLAY_ONLY');
|
|
30
30
|
getPConnect().setInheritedProp('readOnly', true);
|
|
31
31
|
const children = (getPConnect().getChildren() as any[]).map((configObject, index) =>
|
|
32
32
|
createElement(createPConnectComponent(), {
|
|
@@ -26,7 +26,7 @@ export default function WideNarrowDetails(props: WideNarrowDetailsProps) {
|
|
|
26
26
|
|
|
27
27
|
// Set display mode prop and re-create the children so this part of the dom tree renders
|
|
28
28
|
// in a readonly (display) mode instead of a editable
|
|
29
|
-
getPConnect().setInheritedProp('displayMode', '
|
|
29
|
+
getPConnect().setInheritedProp('displayMode', 'DISPLAY_ONLY');
|
|
30
30
|
getPConnect().setInheritedProp('readOnly', true);
|
|
31
31
|
const children = (getPConnect().getChildren() as any[])?.map((configObject, index) => {
|
|
32
32
|
let theConfigObject: object = configObject;
|
package/package.json
CHANGED