@pega/custom-dx-components 0.23.14 → 0.23.15
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/package.json +1 -1
- package/src/tasks/create/templates/Constellation/Field/Boolean/index.jsx.mustache +15 -3
- package/src/tasks/create/templates/Constellation/Field/Date/config.json.mustache +10 -1
- package/src/tasks/create/templates/Constellation/Field/Date/index.jsx.mustache +19 -3
- package/src/tasks/create/templates/Constellation/Field/DateTime/index.jsx.mustache +18 -3
- package/src/tasks/create/templates/Constellation/Field/Decimal/index.jsx.mustache +18 -3
- package/src/tasks/create/templates/Constellation/Field/Decimal-Currency/index.jsx.mustache +18 -3
- package/src/tasks/create/templates/Constellation/Field/Decimal-Percentage/index.jsx.mustache +19 -3
- package/src/tasks/create/templates/Constellation/Field/Integer/index.jsx.mustache +20 -3
- package/src/tasks/create/templates/Constellation/Field/Picklist/index.jsx.mustache +25 -3
- package/src/tasks/create/templates/Constellation/Field/Text/index.jsx.mustache +4 -3
- package/src/tasks/create/templates/Constellation/Field/Text-Email/index.jsx.mustache +19 -3
- package/src/tasks/create/templates/Constellation/Field/Text-Input/index.jsx.mustache +15 -3
- package/src/tasks/create/templates/Constellation/Field/Text-Paragraph/index.jsx.mustache +15 -3
- package/src/tasks/create/templates/Constellation/Field/Text-Phone/index.jsx.mustache +18 -3
- package/src/tasks/create/templates/Constellation/Field/Text-URL/index.jsx.mustache +18 -3
- package/src/tasks/create/templates/Constellation/Field/TimeofDay/index.jsx.mustache +20 -4
- package/src/tasks/init/index.js +5 -5
- package/src/tasks/init/template/jest.config.cjs +21 -0
- package/src/tasks/init/template/package.json.mustache +1 -1
- package/tests/assets/components/create/Pega_DXIL_MyTestText/index.jsx +5 -4
- package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyBoolean/index.jsx +17 -5
- package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyCurrency/index.jsx +19 -4
- package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyDate/config.json +10 -1
- package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyDate/index.jsx +20 -4
- package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyDateTime/index.jsx +19 -4
- package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyDecimal/index.jsx +19 -4
- package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyEmail/index.jsx +20 -4
- package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyInteger/index.jsx +21 -4
- package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyParagraph/index.jsx +16 -4
- package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyPercentage/index.jsx +20 -4
- package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyPhone/index.jsx +19 -4
- package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyPicklist/index.jsx +26 -4
- package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyText/index.jsx +5 -4
- package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyTextInput/index.jsx +16 -4
- package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyTimeOfDay/index.jsx +21 -5
- package/tests/assets/components/createAll/Constellation/Pega_DXIL_MyURL/index.jsx +19 -4
- package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyBoolean/index.jsx +17 -5
- package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyCurrency/index.jsx +19 -4
- package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyDate/config.json +10 -1
- package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyDate/index.jsx +20 -4
- package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyDateTime/index.jsx +19 -4
- package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyDecimal/index.jsx +19 -4
- package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyEmail/index.jsx +20 -4
- package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyInteger/index.jsx +21 -4
- package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyParagraph/index.jsx +16 -4
- package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyPercentage/index.jsx +20 -4
- package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyPhone/index.jsx +19 -4
- package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyPicklist/index.jsx +26 -4
- package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyText/index.jsx +5 -4
- package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyTextInput/index.jsx +16 -4
- package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyTimeOfDay/index.jsx +21 -5
- package/tests/assets/components/createAll/Launchpad/Pega_DXIL_MyURL/index.jsx +19 -4
- package/tests/functional/localCreateBuildAllDeleteAll.test.js +2 -2
- package/tests/functional/localCreateBuildDelete.test.js +1 -1
- package/tests/functional/localCreatePublishAllDeleteAll.test.js +2 -2
- package/tests/functional/localCreatePublishDelete.test.js +2 -1
|
@@ -117,6 +117,11 @@
|
|
|
117
117
|
"name": "helperText",
|
|
118
118
|
"label": "Helper text",
|
|
119
119
|
"format": "TEXT"
|
|
120
|
+
},
|
|
121
|
+
{
|
|
122
|
+
"name": "enableAdditionalInformation",
|
|
123
|
+
"label": "Enable additional information on field",
|
|
124
|
+
"format": "BOOLEAN"
|
|
120
125
|
}
|
|
121
126
|
]
|
|
122
127
|
},
|
|
@@ -141,7 +146,11 @@
|
|
|
141
146
|
},
|
|
142
147
|
{
|
|
143
148
|
"key": "DateTime-Long",
|
|
144
|
-
"value": "Date
|
|
149
|
+
"value": "Date (Long)"
|
|
150
|
+
},
|
|
151
|
+
{
|
|
152
|
+
"key": "DateTime-Short",
|
|
153
|
+
"value": "Date (Short)"
|
|
145
154
|
},
|
|
146
155
|
{
|
|
147
156
|
"key": "DateTime-Since",
|
|
@@ -38,7 +38,9 @@ const PegaDxilMyDate = props => {
|
|
|
38
38
|
additionalProps,
|
|
39
39
|
displayMode,
|
|
40
40
|
variant,
|
|
41
|
-
hasSuggestions
|
|
41
|
+
hasSuggestions,
|
|
42
|
+
fieldMetadata,
|
|
43
|
+
enableAdditionalInformation
|
|
42
44
|
} = props;
|
|
43
45
|
|
|
44
46
|
let {formatter} = props;
|
|
@@ -182,6 +184,15 @@ const PegaDxilMyDate = props => {
|
|
|
182
184
|
</StyledPegaDxilMyDateWrapper>
|
|
183
185
|
);
|
|
184
186
|
} else {
|
|
187
|
+
const fieldDescription = fieldMetadata?.description;
|
|
188
|
+
const additionalInfo =
|
|
189
|
+
enableAdditionalInformation && fieldDescription
|
|
190
|
+
? {
|
|
191
|
+
heading: label,
|
|
192
|
+
content: fieldDescription
|
|
193
|
+
}
|
|
194
|
+
: undefined;
|
|
195
|
+
|
|
185
196
|
dateComponent = (
|
|
186
197
|
<StyledPegaDxilMyDateWrapper>
|
|
187
198
|
<DateInput
|
|
@@ -189,6 +200,7 @@ const PegaDxilMyDate = props => {
|
|
|
189
200
|
label={label}
|
|
190
201
|
labelHidden={hideLabel}
|
|
191
202
|
info={validatemessage || helperText}
|
|
203
|
+
additionalInfo={additionalInfo}
|
|
192
204
|
status={status}
|
|
193
205
|
value={value || undefined}
|
|
194
206
|
disabled={disabled}
|
|
@@ -222,13 +234,15 @@ PegaDxilMyDate.defaultProps = {
|
|
|
222
234
|
showWeekNumber: false,
|
|
223
235
|
nextYearRange: "",
|
|
224
236
|
previousYearRange: "",
|
|
225
|
-
testId:
|
|
237
|
+
testId: "",
|
|
226
238
|
showAsFormattedText: false,
|
|
227
239
|
additionalProps: {},
|
|
228
240
|
displayMode: null,
|
|
229
241
|
variant: "inline",
|
|
230
242
|
formatter: "defaultDate",
|
|
231
|
-
hasSuggestions: false
|
|
243
|
+
hasSuggestions: false,
|
|
244
|
+
fieldMetadata: {},
|
|
245
|
+
enableAdditionalInformation: false
|
|
232
246
|
};
|
|
233
247
|
|
|
234
248
|
PegaDxilMyDate.propTypes = {
|
|
@@ -250,7 +264,9 @@ PegaDxilMyDate.propTypes = {
|
|
|
250
264
|
displayMode: PropTypes.string,
|
|
251
265
|
variant: PropTypes.string,
|
|
252
266
|
formatter: PropTypes.string,
|
|
253
|
-
hasSuggestions: PropTypes.bool
|
|
267
|
+
hasSuggestions: PropTypes.bool,
|
|
268
|
+
fieldMetadata: PropTypes.objectOf(PropTypes.any),
|
|
269
|
+
enableAdditionalInformation: PropTypes.bool
|
|
254
270
|
};
|
|
255
271
|
|
|
256
272
|
export default PegaDxilMyDate;
|
|
@@ -40,12 +40,22 @@ const PegaDxilMyDateTime = props => {
|
|
|
40
40
|
additionalProps,
|
|
41
41
|
displayMode,
|
|
42
42
|
variant,
|
|
43
|
-
hasSuggestions
|
|
43
|
+
hasSuggestions,
|
|
44
|
+
fieldMetadata,
|
|
45
|
+
enableAdditionalInformation
|
|
44
46
|
} = props;
|
|
45
47
|
let { formatter } = props;
|
|
46
48
|
const pConn = getPConnect();
|
|
47
49
|
const actions = pConn.getActionsApi();
|
|
48
50
|
const propName = pConn.getStateProps().value;
|
|
51
|
+
const fieldDescription = fieldMetadata?.description;
|
|
52
|
+
const additionalInfo =
|
|
53
|
+
enableAdditionalInformation && fieldDescription
|
|
54
|
+
? {
|
|
55
|
+
heading: label,
|
|
56
|
+
content: fieldDescription
|
|
57
|
+
}
|
|
58
|
+
: undefined;
|
|
49
59
|
|
|
50
60
|
const environmentInfo = PCore.getEnvironmentInfo();
|
|
51
61
|
const timezone = environmentInfo && environmentInfo.getTimeZone();
|
|
@@ -181,6 +191,7 @@ const PegaDxilMyDateTime = props => {
|
|
|
181
191
|
label={label}
|
|
182
192
|
labelHidden={hideLabel}
|
|
183
193
|
info={validatemessage || helperText}
|
|
194
|
+
additionalInfo={additionalInfo}
|
|
184
195
|
status={status}
|
|
185
196
|
value={DateTimeFormatter.convertToTimezone(value, { timezone }) || undefined}
|
|
186
197
|
withSeconds={withSeconds}
|
|
@@ -218,12 +229,14 @@ PegaDxilMyDateTime.defaultProps = {
|
|
|
218
229
|
showWeekNumber: false,
|
|
219
230
|
nextYearRange: "",
|
|
220
231
|
previousYearRange: "",
|
|
221
|
-
testId:
|
|
232
|
+
testId: "",
|
|
222
233
|
additionalProps: {},
|
|
223
234
|
displayMode: null,
|
|
224
235
|
variant: "inline",
|
|
225
236
|
Format: "defaultDateTime",
|
|
226
|
-
hasSuggestions: false
|
|
237
|
+
hasSuggestions: false,
|
|
238
|
+
fieldMetadata: {},
|
|
239
|
+
enableAdditionalInformation: false
|
|
227
240
|
};
|
|
228
241
|
|
|
229
242
|
PegaDxilMyDateTime.propTypes = {
|
|
@@ -248,7 +261,9 @@ PegaDxilMyDateTime.propTypes = {
|
|
|
248
261
|
variant: PropTypes.string,
|
|
249
262
|
formatter: PropTypes.string,
|
|
250
263
|
Format: PropTypes.string,
|
|
251
|
-
hasSuggestions: PropTypes.bool
|
|
264
|
+
hasSuggestions: PropTypes.bool,
|
|
265
|
+
fieldMetadata: PropTypes.objectOf(PropTypes.any),
|
|
266
|
+
enableAdditionalInformation: PropTypes.bool
|
|
252
267
|
};
|
|
253
268
|
|
|
254
269
|
export default PegaDxilMyDateTime;
|
|
@@ -30,7 +30,9 @@ const PegaDxilMyDecimal = props => {
|
|
|
30
30
|
notation,
|
|
31
31
|
currencyISOCode,
|
|
32
32
|
isTableFormatter,
|
|
33
|
-
hasSuggestions
|
|
33
|
+
hasSuggestions,
|
|
34
|
+
fieldMetadata,
|
|
35
|
+
enableAdditionalInformation
|
|
34
36
|
} = props;
|
|
35
37
|
let { showGroupSeparators } = props;
|
|
36
38
|
let { currencyDisplay } = props;
|
|
@@ -38,6 +40,14 @@ const PegaDxilMyDecimal = props => {
|
|
|
38
40
|
const actions = pConn.getActionsApi();
|
|
39
41
|
const propName = pConn.getStateProps().value;
|
|
40
42
|
const [decimalValue, setDecimalValue] = useState(value?.toString());
|
|
43
|
+
const fieldDescription = fieldMetadata?.description;
|
|
44
|
+
const additionalInfo =
|
|
45
|
+
enableAdditionalInformation && fieldDescription
|
|
46
|
+
? {
|
|
47
|
+
heading: label,
|
|
48
|
+
content: fieldDescription
|
|
49
|
+
}
|
|
50
|
+
: undefined;
|
|
41
51
|
const hasValueChange = useRef(false);
|
|
42
52
|
|
|
43
53
|
let { readOnly, required, disabled } = props;
|
|
@@ -187,6 +197,7 @@ const PegaDxilMyDecimal = props => {
|
|
|
187
197
|
numberOfDecimals={numberOfDecimals}
|
|
188
198
|
showGroupSeparators={showGroupSeparators}
|
|
189
199
|
data-testid={testId}
|
|
200
|
+
additionalInfo={additionalInfo}
|
|
190
201
|
onChange={(enteredValue) => {
|
|
191
202
|
if (hasSuggestions) {
|
|
192
203
|
setStatus(undefined);
|
|
@@ -222,7 +233,7 @@ PegaDxilMyDecimal.defaultProps = {
|
|
|
222
233
|
disabled: false,
|
|
223
234
|
readOnly: false,
|
|
224
235
|
required: false,
|
|
225
|
-
testId:
|
|
236
|
+
testId: "",
|
|
226
237
|
decimalPrecision: '',
|
|
227
238
|
showGroupSeparators: false,
|
|
228
239
|
displayMode: null,
|
|
@@ -236,7 +247,9 @@ PegaDxilMyDecimal.defaultProps = {
|
|
|
236
247
|
currencyDisplay: 'symbol',
|
|
237
248
|
currencyDecimalPrecision: 'auto',
|
|
238
249
|
isTableFormatter: false,
|
|
239
|
-
hasSuggestions: false
|
|
250
|
+
hasSuggestions: false,
|
|
251
|
+
fieldMetadata: {},
|
|
252
|
+
enableAdditionalInformation: false
|
|
240
253
|
};
|
|
241
254
|
|
|
242
255
|
PegaDxilMyDecimal.propTypes = {
|
|
@@ -264,7 +277,9 @@ PegaDxilMyDecimal.propTypes = {
|
|
|
264
277
|
currencyDisplay: PropTypes.string,
|
|
265
278
|
currencyDecimalPrecision: PropTypes.string,
|
|
266
279
|
isTableFormatter: PropTypes.bool,
|
|
267
|
-
hasSuggestions: PropTypes.bool
|
|
280
|
+
hasSuggestions: PropTypes.bool,
|
|
281
|
+
fieldMetadata: PropTypes.objectOf(PropTypes.any),
|
|
282
|
+
enableAdditionalInformation: PropTypes.bool
|
|
268
283
|
};
|
|
269
284
|
|
|
270
285
|
export default PegaDxilMyDecimal;
|
|
@@ -70,12 +70,23 @@ const PegaDxilMyEmail = props => {
|
|
|
70
70
|
additionalProps,
|
|
71
71
|
variant,
|
|
72
72
|
isTableFormatter,
|
|
73
|
-
hasSuggestions
|
|
73
|
+
hasSuggestions,
|
|
74
|
+
fieldMetadata,
|
|
75
|
+
enableAdditionalInformation
|
|
74
76
|
} = props;
|
|
75
77
|
const { formatter } = props;
|
|
76
78
|
const pConn = getPConnect();
|
|
77
79
|
const actions = pConn.getActionsApi();
|
|
78
80
|
const propName = pConn.getStateProps().value;
|
|
81
|
+
const fieldDescription = fieldMetadata?.description;
|
|
82
|
+
const additionalInfo =
|
|
83
|
+
enableAdditionalInformation && fieldDescription
|
|
84
|
+
? {
|
|
85
|
+
heading: label,
|
|
86
|
+
content: fieldDescription
|
|
87
|
+
}
|
|
88
|
+
: undefined;
|
|
89
|
+
|
|
79
90
|
const hasValueChange = useRef(false);
|
|
80
91
|
|
|
81
92
|
|
|
@@ -157,6 +168,7 @@ const PegaDxilMyEmail = props => {
|
|
|
157
168
|
label={label}
|
|
158
169
|
labelHidden={hideLabel}
|
|
159
170
|
info={validatemessage || helperText}
|
|
171
|
+
additionalInfo={additionalInfo}
|
|
160
172
|
value={inputValue}
|
|
161
173
|
status={status}
|
|
162
174
|
placeholder={placeholder}
|
|
@@ -199,13 +211,15 @@ PegaDxilMyEmail.defaultProps = {
|
|
|
199
211
|
disabled: false,
|
|
200
212
|
readOnly: false,
|
|
201
213
|
required: false,
|
|
202
|
-
testId:
|
|
214
|
+
testId: '',
|
|
203
215
|
displayMode: null,
|
|
204
216
|
additionalProps: {},
|
|
205
217
|
variant: 'inline',
|
|
206
218
|
formatter: '',
|
|
207
219
|
isTableFormatter: false,
|
|
208
|
-
hasSuggestions: false
|
|
220
|
+
hasSuggestions: false,
|
|
221
|
+
fieldMetadata: {},
|
|
222
|
+
enableAdditionalInformation: false
|
|
209
223
|
};
|
|
210
224
|
|
|
211
225
|
PegaDxilMyEmail.propTypes = {
|
|
@@ -225,7 +239,9 @@ PegaDxilMyEmail.propTypes = {
|
|
|
225
239
|
variant: PropTypes.string,
|
|
226
240
|
formatter: PropTypes.string,
|
|
227
241
|
isTableFormatter: PropTypes.bool,
|
|
228
|
-
hasSuggestions: PropTypes.bool
|
|
242
|
+
hasSuggestions: PropTypes.bool,
|
|
243
|
+
fieldMetadata: PropTypes.objectOf(PropTypes.any),
|
|
244
|
+
enableAdditionalInformation: PropTypes.bool
|
|
229
245
|
};
|
|
230
246
|
|
|
231
247
|
export default PegaDxilMyEmail;
|
|
@@ -37,7 +37,9 @@ const PegaDxilMyInteger = props => {
|
|
|
37
37
|
negative,
|
|
38
38
|
notation,
|
|
39
39
|
isTableFormatter,
|
|
40
|
-
hasSuggestions
|
|
40
|
+
hasSuggestions,
|
|
41
|
+
fieldMetadata,
|
|
42
|
+
enableAdditionalInformation
|
|
41
43
|
} = props;
|
|
42
44
|
let { showGroupSeparators } = props;
|
|
43
45
|
let { currencyDisplay } = props;
|
|
@@ -46,6 +48,15 @@ const PegaDxilMyInteger = props => {
|
|
|
46
48
|
const propName = pConn.getStateProps().value;
|
|
47
49
|
const [integerValue, setIntegerValue] = useState(value?.toString());
|
|
48
50
|
const sliderDefaultValue = !defaultValue && defaultValue !== 0 ? max : defaultValue;
|
|
51
|
+
const fieldDescription = fieldMetadata?.description;
|
|
52
|
+
const additionalInfo =
|
|
53
|
+
enableAdditionalInformation && fieldDescription
|
|
54
|
+
? {
|
|
55
|
+
heading: label,
|
|
56
|
+
content: fieldDescription
|
|
57
|
+
}
|
|
58
|
+
: undefined;
|
|
59
|
+
|
|
49
60
|
const hasValueChange = useRef(false);
|
|
50
61
|
|
|
51
62
|
|
|
@@ -207,6 +218,7 @@ const PegaDxilMyInteger = props => {
|
|
|
207
218
|
label={label}
|
|
208
219
|
labelHidden={hideLabel}
|
|
209
220
|
info={validatemessage || helperText}
|
|
221
|
+
additionalInfo={additionalInfo}
|
|
210
222
|
value={!integerValue ? sliderDefaultValue : Number(integerValue)}
|
|
211
223
|
status={status}
|
|
212
224
|
placeholder={placeholder}
|
|
@@ -234,6 +246,7 @@ const PegaDxilMyInteger = props => {
|
|
|
234
246
|
label={label}
|
|
235
247
|
labelHidden={hideLabel}
|
|
236
248
|
info={validatemessage || helperText}
|
|
249
|
+
additionalInfo={additionalInfo}
|
|
237
250
|
value={integerValue}
|
|
238
251
|
status={status}
|
|
239
252
|
placeholder={displayAs === 'input' ? placeholder : ''}
|
|
@@ -272,7 +285,7 @@ PegaDxilMyInteger.defaultProps = {
|
|
|
272
285
|
disabled: false,
|
|
273
286
|
readOnly: false,
|
|
274
287
|
required: false,
|
|
275
|
-
testId:
|
|
288
|
+
testId: '',
|
|
276
289
|
showGroupSeparators: false,
|
|
277
290
|
displayMode: null,
|
|
278
291
|
displayAs: 'input',
|
|
@@ -292,7 +305,9 @@ PegaDxilMyInteger.defaultProps = {
|
|
|
292
305
|
currencyDisplay: 'symbol',
|
|
293
306
|
currencyDecimalPrecision: 'auto',
|
|
294
307
|
isTableFormatter: false,
|
|
295
|
-
hasSuggestions: false
|
|
308
|
+
hasSuggestions: false,
|
|
309
|
+
fieldMetadata: {},
|
|
310
|
+
enableAdditionalInformation: false
|
|
296
311
|
};
|
|
297
312
|
|
|
298
313
|
PegaDxilMyInteger.propTypes = {
|
|
@@ -327,7 +342,9 @@ PegaDxilMyInteger.propTypes = {
|
|
|
327
342
|
currencyDisplay: PropTypes.string,
|
|
328
343
|
currencyDecimalPrecision: PropTypes.string,
|
|
329
344
|
isTableFormatter: PropTypes.bool,
|
|
330
|
-
hasSuggestions: PropTypes.bool
|
|
345
|
+
hasSuggestions: PropTypes.bool,
|
|
346
|
+
fieldMetadata: PropTypes.objectOf(PropTypes.any),
|
|
347
|
+
enableAdditionalInformation: PropTypes.bool
|
|
331
348
|
};
|
|
332
349
|
|
|
333
350
|
export default PegaDxilMyInteger;
|
|
@@ -71,7 +71,8 @@ const PegaDxilMyParagraph = props => {
|
|
|
71
71
|
additionalProps,
|
|
72
72
|
variant,
|
|
73
73
|
isTableFormatter,
|
|
74
|
-
hasSuggestions
|
|
74
|
+
hasSuggestions,
|
|
75
|
+
enableAdditionalInformation
|
|
75
76
|
} = props;
|
|
76
77
|
const { formatter } = props;
|
|
77
78
|
const pConn = getPConnect();
|
|
@@ -79,6 +80,7 @@ const PegaDxilMyParagraph = props => {
|
|
|
79
80
|
const propName = pConn.getStateProps().value;
|
|
80
81
|
const maxLength = fieldMetadata?.maxLength;
|
|
81
82
|
const hasValueChange = useRef(false);
|
|
83
|
+
const fieldDescription = fieldMetadata?.description;
|
|
82
84
|
|
|
83
85
|
|
|
84
86
|
// BUG-547602: Temporary type coercion for 8.5 until DXAPIs are enhanced to pass original pxViewMetadata JSON, respecting boolean primitives
|
|
@@ -183,6 +185,14 @@ const PegaDxilMyParagraph = props => {
|
|
|
183
185
|
}
|
|
184
186
|
}}
|
|
185
187
|
onResolveSuggestion={onResolveSuggestionHandler}
|
|
188
|
+
{...(enableAdditionalInformation && fieldDescription
|
|
189
|
+
? {
|
|
190
|
+
additionalInfo: {
|
|
191
|
+
heading: label,
|
|
192
|
+
content: fieldDescription
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
: {})}
|
|
186
196
|
/>
|
|
187
197
|
</StyledPegaDxilMyParagraphWrapper>
|
|
188
198
|
);
|
|
@@ -197,14 +207,15 @@ PegaDxilMyParagraph.defaultProps = {
|
|
|
197
207
|
disabled: false,
|
|
198
208
|
readOnly: false,
|
|
199
209
|
required: false,
|
|
200
|
-
testId:
|
|
210
|
+
testId: '',
|
|
201
211
|
displayMode: null,
|
|
202
212
|
fieldMetadata: {},
|
|
203
213
|
additionalProps: {},
|
|
204
214
|
variant: 'inline',
|
|
205
215
|
formatter: '',
|
|
206
216
|
isTableFormatter: false,
|
|
207
|
-
hasSuggestions: false
|
|
217
|
+
hasSuggestions: false,
|
|
218
|
+
enableAdditionalInformation: false
|
|
208
219
|
};
|
|
209
220
|
|
|
210
221
|
PegaDxilMyParagraph.propTypes = {
|
|
@@ -225,7 +236,8 @@ PegaDxilMyParagraph.propTypes = {
|
|
|
225
236
|
variant: PropTypes.string,
|
|
226
237
|
formatter: PropTypes.string,
|
|
227
238
|
isTableFormatter: PropTypes.bool,
|
|
228
|
-
hasSuggestions: PropTypes.bool
|
|
239
|
+
hasSuggestions: PropTypes.bool,
|
|
240
|
+
enableAdditionalInformation: PropTypes.bool
|
|
229
241
|
};
|
|
230
242
|
|
|
231
243
|
export default PegaDxilMyParagraph;
|
|
@@ -35,13 +35,24 @@ const PegaDxilMyPercentage = props => {
|
|
|
35
35
|
variant,
|
|
36
36
|
formatter,
|
|
37
37
|
isTableFormatter,
|
|
38
|
-
hasSuggestions
|
|
38
|
+
hasSuggestions,
|
|
39
|
+
fieldMetadata,
|
|
40
|
+
enableAdditionalInformation
|
|
39
41
|
} = props;
|
|
40
42
|
let { showGroupSeparators } = props;
|
|
41
43
|
const pConn = getPConnect();
|
|
42
44
|
const actions = pConn.getActionsApi();
|
|
43
45
|
const propName = pConn.getStateProps().value;
|
|
44
46
|
const [percentageValue, setPercentageValue] = useState(value?.toString());
|
|
47
|
+
const fieldDescription = fieldMetadata?.description;
|
|
48
|
+
const additionalInfo =
|
|
49
|
+
enableAdditionalInformation && fieldDescription
|
|
50
|
+
? {
|
|
51
|
+
heading: label,
|
|
52
|
+
content: fieldDescription
|
|
53
|
+
}
|
|
54
|
+
: undefined;
|
|
55
|
+
|
|
45
56
|
const hasValueChange = useRef(false);
|
|
46
57
|
|
|
47
58
|
let { readOnly, required, disabled } = props;
|
|
@@ -192,6 +203,7 @@ const PegaDxilMyPercentage = props => {
|
|
|
192
203
|
label={label}
|
|
193
204
|
labelHidden={hideLabel}
|
|
194
205
|
info={validatemessage || helperText}
|
|
206
|
+
additionalInfo={additionalInfo}
|
|
195
207
|
value={percentageValue}
|
|
196
208
|
status={status}
|
|
197
209
|
placeholder={placeholder}
|
|
@@ -237,7 +249,7 @@ PegaDxilMyPercentage.defaultProps = {
|
|
|
237
249
|
disabled: false,
|
|
238
250
|
readOnly: false,
|
|
239
251
|
required: false,
|
|
240
|
-
testId:
|
|
252
|
+
testId: '',
|
|
241
253
|
decimalPrecision: '',
|
|
242
254
|
showGroupSeparators: false,
|
|
243
255
|
additionalProps: {},
|
|
@@ -246,7 +258,9 @@ PegaDxilMyPercentage.defaultProps = {
|
|
|
246
258
|
currencyISOCode: 'USD',
|
|
247
259
|
formatter: '',
|
|
248
260
|
isTableFormatter: false,
|
|
249
|
-
hasSuggestions: false
|
|
261
|
+
hasSuggestions: false,
|
|
262
|
+
fieldMetadata: {},
|
|
263
|
+
enableAdditionalInformation: false
|
|
250
264
|
};
|
|
251
265
|
|
|
252
266
|
PegaDxilMyPercentage.propTypes = {
|
|
@@ -269,7 +283,9 @@ PegaDxilMyPercentage.propTypes = {
|
|
|
269
283
|
formatter: PropTypes.string,
|
|
270
284
|
currencyISOCode: PropTypes.string,
|
|
271
285
|
isTableFormatter: PropTypes.bool,
|
|
272
|
-
hasSuggestions: PropTypes.bool
|
|
286
|
+
hasSuggestions: PropTypes.bool,
|
|
287
|
+
fieldMetadata: PropTypes.objectOf(PropTypes.any),
|
|
288
|
+
enableAdditionalInformation: PropTypes.bool
|
|
273
289
|
};
|
|
274
290
|
|
|
275
291
|
export default PegaDxilMyPercentage;
|
|
@@ -79,12 +79,15 @@ const PegaDxilMyPhone = props => {
|
|
|
79
79
|
additionalProps,
|
|
80
80
|
variant,
|
|
81
81
|
isTableFormatter,
|
|
82
|
-
hasSuggestions
|
|
82
|
+
hasSuggestions,
|
|
83
|
+
fieldMetadata,
|
|
84
|
+
enableAdditionalInformation
|
|
83
85
|
} = props;
|
|
84
86
|
const { formatter } = props;
|
|
85
87
|
const pConn = getPConnect();
|
|
86
88
|
const actions = pConn.getActionsApi();
|
|
87
89
|
const propName = pConn.getStateProps().value;
|
|
90
|
+
const fieldDescription = fieldMetadata?.description;
|
|
88
91
|
const hasValueChange = useRef(false);
|
|
89
92
|
|
|
90
93
|
let callingCodesList = [];
|
|
@@ -216,6 +219,14 @@ const PegaDxilMyPhone = props => {
|
|
|
216
219
|
}
|
|
217
220
|
}}
|
|
218
221
|
onResolveSuggestion={onResolveSuggestionHandler}
|
|
222
|
+
{...(enableAdditionalInformation && fieldDescription
|
|
223
|
+
? {
|
|
224
|
+
additionalInfo: {
|
|
225
|
+
heading: label,
|
|
226
|
+
content: fieldDescription
|
|
227
|
+
}
|
|
228
|
+
}
|
|
229
|
+
: {})}
|
|
219
230
|
/>
|
|
220
231
|
</StyledPegaDxilMyPhoneWrapper>
|
|
221
232
|
);
|
|
@@ -232,13 +243,15 @@ PegaDxilMyPhone.defaultProps = {
|
|
|
232
243
|
readOnly: false,
|
|
233
244
|
required: false,
|
|
234
245
|
showCountryCode: true,
|
|
235
|
-
testId:
|
|
246
|
+
testId: '',
|
|
236
247
|
displayMode: null,
|
|
237
248
|
additionalProps: {},
|
|
238
249
|
variant: 'inline',
|
|
239
250
|
formatter: '',
|
|
240
251
|
isTableFormatter: false,
|
|
241
|
-
hasSuggestions: false
|
|
252
|
+
hasSuggestions: false,
|
|
253
|
+
fieldMetadata: {},
|
|
254
|
+
enableAdditionalInformation: false
|
|
242
255
|
};
|
|
243
256
|
|
|
244
257
|
PegaDxilMyPhone.propTypes = {
|
|
@@ -260,7 +273,9 @@ PegaDxilMyPhone.propTypes = {
|
|
|
260
273
|
variant: PropTypes.string,
|
|
261
274
|
formatter: PropTypes.string,
|
|
262
275
|
isTableFormatter: PropTypes.bool,
|
|
263
|
-
hasSuggestions: PropTypes.bool
|
|
276
|
+
hasSuggestions: PropTypes.bool,
|
|
277
|
+
fieldMetadata: PropTypes.objectOf(PropTypes.any),
|
|
278
|
+
enableAdditionalInformation: PropTypes.bool
|
|
264
279
|
};
|
|
265
280
|
|
|
266
281
|
export default PegaDxilMyPhone;
|
|
@@ -96,7 +96,9 @@ const PegaDxilMyPicklist = props => {
|
|
|
96
96
|
variant,
|
|
97
97
|
fieldMetadata,
|
|
98
98
|
isTableFormatter,
|
|
99
|
-
hasSuggestions
|
|
99
|
+
hasSuggestions,
|
|
100
|
+
enableAdditionalInformation,
|
|
101
|
+
additionalInfo
|
|
100
102
|
} = props;
|
|
101
103
|
const { formatter } = props;
|
|
102
104
|
const pConnect = getPConnect();
|
|
@@ -105,6 +107,8 @@ const PegaDxilMyPicklist = props => {
|
|
|
105
107
|
const className = pConnect.getCaseInfo().getClassName();
|
|
106
108
|
const refName = propName?.slice(propName.lastIndexOf('.') + 1);
|
|
107
109
|
|
|
110
|
+
const fieldDescription = fieldMetadata?.description;
|
|
111
|
+
|
|
108
112
|
let { readOnly, required, disabled } = props;
|
|
109
113
|
[readOnly, required, disabled] = [readOnly, required, disabled].map(
|
|
110
114
|
(prop) => prop === true || (typeof prop === 'string' && prop === 'true')
|
|
@@ -262,6 +266,12 @@ const PegaDxilMyPicklist = props => {
|
|
|
262
266
|
suggestionsHandler(accepted, pConnect, setStatus);
|
|
263
267
|
};
|
|
264
268
|
|
|
269
|
+
// In case of User Reference additionalInfo prop is directly passed down
|
|
270
|
+
const additionalInfoProp = additionalInfo || {
|
|
271
|
+
heading: label,
|
|
272
|
+
content: fieldDescription
|
|
273
|
+
};
|
|
274
|
+
|
|
265
275
|
return (
|
|
266
276
|
<StyledPegaDxilMyPicklistWrapper>
|
|
267
277
|
<Select
|
|
@@ -290,6 +300,11 @@ const PegaDxilMyPicklist = props => {
|
|
|
290
300
|
pConnect.getValidationApi().validate(event.target.value);
|
|
291
301
|
}}
|
|
292
302
|
onResolveSuggestion={onResolveSuggestionHandler}
|
|
303
|
+
{...(additionalInfo || (enableAdditionalInformation && fieldDescription)
|
|
304
|
+
? {
|
|
305
|
+
additionalInfo: additionalInfoProp
|
|
306
|
+
}
|
|
307
|
+
: {})}
|
|
293
308
|
>
|
|
294
309
|
{items}
|
|
295
310
|
</Select>
|
|
@@ -305,7 +320,7 @@ PegaDxilMyPicklist.defaultProps = {
|
|
|
305
320
|
disabled: false,
|
|
306
321
|
readOnly: false,
|
|
307
322
|
required: false,
|
|
308
|
-
testId:
|
|
323
|
+
testId: '',
|
|
309
324
|
helperText: '',
|
|
310
325
|
datasource: [],
|
|
311
326
|
listType: '',
|
|
@@ -316,7 +331,9 @@ PegaDxilMyPicklist.defaultProps = {
|
|
|
316
331
|
variant: 'inline',
|
|
317
332
|
formatter: '',
|
|
318
333
|
isTableFormatter: false,
|
|
319
|
-
hasSuggestions: false
|
|
334
|
+
hasSuggestions: false,
|
|
335
|
+
enableAdditionalInformation: false,
|
|
336
|
+
additionalInfo: null
|
|
320
337
|
};
|
|
321
338
|
|
|
322
339
|
PegaDxilMyPicklist.propTypes = {
|
|
@@ -345,7 +362,12 @@ PegaDxilMyPicklist.propTypes = {
|
|
|
345
362
|
variant: PropTypes.string,
|
|
346
363
|
formatter: PropTypes.string,
|
|
347
364
|
isTableFormatter: PropTypes.bool,
|
|
348
|
-
hasSuggestions: PropTypes.bool
|
|
365
|
+
hasSuggestions: PropTypes.bool,
|
|
366
|
+
enableAdditionalInformation: PropTypes.bool,
|
|
367
|
+
additionalInfo: PropTypes.shape({
|
|
368
|
+
heading: PropTypes.string,
|
|
369
|
+
content: PropTypes.string
|
|
370
|
+
})
|
|
349
371
|
};
|
|
350
372
|
|
|
351
373
|
export default PegaDxilMyPicklist;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import PropTypes from 'prop-types';
|
|
2
|
-
import { Input
|
|
2
|
+
import { Input } from '@pega/cosmos-react-core';
|
|
3
3
|
|
|
4
4
|
import StyledPegaDxilMyTextWrapper from './styles';
|
|
5
5
|
|
|
@@ -9,7 +9,7 @@ import StyledPegaDxilMyTextWrapper from './styles';
|
|
|
9
9
|
// props passed in combination of props from property panel (config.json) and run time props from Constellation
|
|
10
10
|
// any default values in config.pros should be set in defaultProps at bottom of this file
|
|
11
11
|
const PegaDxilMyText = props => {
|
|
12
|
-
const { getPConnect, value, placeholder, disabled, readOnly, required, label, testId } = props;
|
|
12
|
+
const { getPConnect, value, placeholder, disabled, readOnly, required, label, hideLabel, testId } = props;
|
|
13
13
|
|
|
14
14
|
const pConn = getPConnect();
|
|
15
15
|
const actions = pConn.getActionsApi();
|
|
@@ -22,10 +22,11 @@ const PegaDxilMyText = props => {
|
|
|
22
22
|
|
|
23
23
|
return (
|
|
24
24
|
<StyledPegaDxilMyTextWrapper>
|
|
25
|
-
<Label>{label}</Label>
|
|
26
25
|
<Input
|
|
27
26
|
type='text'
|
|
28
27
|
value={value}
|
|
28
|
+
label={label}
|
|
29
|
+
labelHidden={hideLabel}
|
|
29
30
|
placeholder={placeholder}
|
|
30
31
|
disabled={disabled}
|
|
31
32
|
readOnly={readOnly}
|
|
@@ -43,7 +44,7 @@ PegaDxilMyText.defaultProps = {
|
|
|
43
44
|
disabled: false,
|
|
44
45
|
readOnly: false,
|
|
45
46
|
required: false,
|
|
46
|
-
testId:
|
|
47
|
+
testId: ''
|
|
47
48
|
};
|
|
48
49
|
|
|
49
50
|
PegaDxilMyText.propTypes = {
|