@pega/dx-component-builder-sdk 8.23.18 → 23.1.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (134) hide show
  1. package/package.json +1 -1
  2. package/src/tasks/bundle/builderAngular/webpack.config.js +1 -2
  3. package/src/tasks/create/templates/Constellation/field/Boolean/index.jsx.mustache +15 -3
  4. package/src/tasks/create/templates/Constellation/field/Date/index.jsx.mustache +20 -4
  5. package/src/tasks/create/templates/Constellation/field/DateTime/index.jsx.mustache +18 -3
  6. package/src/tasks/create/templates/Constellation/field/Decimal/index.jsx.mustache +19 -4
  7. package/src/tasks/create/templates/Constellation/field/Decimal-Currency/index.jsx.mustache +19 -4
  8. package/src/tasks/create/templates/Constellation/field/Decimal-Percentage/index.jsx.mustache +20 -4
  9. package/src/tasks/create/templates/Constellation/field/Integer/index.jsx.mustache +21 -4
  10. package/src/tasks/create/templates/Constellation/field/Picklist/index.jsx.mustache +25 -3
  11. package/src/tasks/create/templates/Constellation/field/Text/index.jsx.mustache +1 -3
  12. package/src/tasks/create/templates/Constellation/field/Text-Email/index.jsx.mustache +19 -3
  13. package/src/tasks/create/templates/Constellation/field/Text-Input/index.jsx.mustache +15 -3
  14. package/src/tasks/create/templates/Constellation/field/Text-Paragraph/index.jsx.mustache +15 -3
  15. package/src/tasks/create/templates/Constellation/field/Text-Phone/index.jsx.mustache +18 -3
  16. package/src/tasks/create/templates/Constellation/field/Text-URL/index.jsx.mustache +18 -3
  17. package/src/tasks/create/templates/Constellation/field/TimeOfDay/index.jsx.mustache +20 -4
  18. package/src/tasks/create/templates/SDK-React/field/Boolean/index.tsx.mustache +1 -0
  19. package/src/tasks/create/templates/SDK-React/field/Date/demo.stories.jsx.mustache +1 -1
  20. package/src/tasks/create/templates/SDK-React/field/Date/index.tsx.mustache +0 -1
  21. package/src/tasks/create/templates/SDK-React/field/DateTime/demo.stories.jsx.mustache +1 -1
  22. package/src/tasks/create/templates/SDK-React/field/Decimal/demo.stories.jsx.mustache +1 -0
  23. package/src/tasks/create/templates/SDK-React/field/Decimal/index.tsx.mustache +1 -0
  24. package/src/tasks/create/templates/SDK-React/field/Decimal-Currency/demo.stories.jsx.mustache +1 -1
  25. package/src/tasks/create/templates/SDK-React/field/Decimal-Currency/index.tsx.mustache +2 -2
  26. package/src/tasks/create/templates/SDK-React/field/Decimal-Percentage/index.tsx.mustache +1 -1
  27. package/src/tasks/create/templates/SDK-React/field/Integer/index.tsx.mustache +1 -3
  28. package/src/tasks/create/templates/SDK-React/field/Picklist/index.tsx.mustache +0 -1
  29. package/src/tasks/create/templates/SDK-React/field/Text/index.tsx.mustache +0 -1
  30. package/src/tasks/create/templates/SDK-React/field/Text-Email/index.tsx.mustache +1 -2
  31. package/src/tasks/create/templates/SDK-React/field/Text-Input/index.tsx.mustache +0 -1
  32. package/src/tasks/create/templates/SDK-React/field/Text-Paragraph/index.tsx.mustache +0 -1
  33. package/src/tasks/create/templates/SDK-React/field/Text-Phone/index.tsx.mustache +0 -2
  34. package/src/tasks/create/templates/SDK-React/field/Text-URL/index.tsx.mustache +0 -1
  35. package/src/tasks/create/templates/SDK-React/field/TimeOfDay/index.tsx.mustache +1 -1
  36. package/src/tasks/create/templates/SDK-React/template/DETAILS/index.tsx.mustache +0 -1
  37. package/src/tasks/create/templates/SDK-React/template/DETAILS-region/index.tsx.mustache +2 -3
  38. package/src/tasks/create/templates/SDK-React/template/FORM/demo.stories.jsx.mustache +1 -1
  39. package/src/tasks/create/templates/SDK-React/template/FORM/index.tsx.mustache +9 -9
  40. package/src/tasks/create/templates/SDK-React/template/FORM-region/demo.stories.jsx.mustache +1 -1
  41. package/src/tasks/create/templates/SDK-React/widget/PAGE-CASE/demo.stories.jsx.mustache +1 -1
  42. package/src/tasks/publish-all/helper.js +2 -1
  43. package/tests/assets/components/SDK-React/create/custom-constellation/field/Pega_DXIL_MyTestText/index.jsx +1 -3
  44. package/tests/assets/components/SDK-React/create/custom-sdk/field/Pega_DXIL_MyTestText/index.tsx +0 -1
  45. package/tests/assets/components/SDK-React/create/override-sdk/field/AutoComplete/AutoComplete.tsx +2 -2
  46. package/tests/assets/components/SDK-React/create/override-sdk/field/Checkbox/Checkbox.tsx +41 -32
  47. package/tests/assets/components/SDK-React/create/override-sdk/field/Currency/Currency.tsx +1 -1
  48. package/tests/assets/components/SDK-React/create/override-sdk/field/Date/Date.tsx +1 -1
  49. package/tests/assets/components/SDK-React/create/override-sdk/field/DateTime/DateTime.tsx +1 -1
  50. package/tests/assets/components/SDK-React/create/override-sdk/field/Decimal/Decimal.tsx +1 -1
  51. package/tests/assets/components/SDK-React/create/override-sdk/field/Dropdown/Dropdown.tsx +17 -15
  52. package/tests/assets/components/SDK-React/create/override-sdk/field/RadioButtons/RadioButtons.tsx +11 -9
  53. package/tests/assets/components/SDK-React/create/override-sdk/field/RichText/RichText.tsx +5 -3
  54. package/tests/assets/components/SDK-React/create/override-sdk/field/ScalarList/ScalarList.tsx +15 -6
  55. package/tests/assets/components/SDK-React/create/override-sdk/field/TextInput/TextInput.tsx +1 -1
  56. package/tests/assets/components/SDK-React/create/override-sdk/infra/Assignment/Assignment.tsx +19 -16
  57. package/tests/assets/components/SDK-React/create/override-sdk/infra/DashboardFilter/DashboardFilter.tsx +1 -1
  58. package/tests/assets/components/SDK-React/create/override-sdk/infra/DashboardFilter/filterUtils.tsx +2 -1
  59. package/tests/assets/components/SDK-React/create/override-sdk/infra/DeferLoad/DeferLoad.tsx +1 -1
  60. package/tests/assets/components/SDK-React/create/override-sdk/infra/ErrorBoundary/ErrorBoundary.tsx +1 -1
  61. package/tests/assets/components/SDK-React/create/override-sdk/template/AppShell/AppShell.tsx +1 -1
  62. package/tests/assets/components/SDK-React/create/override-sdk/template/DataReference/DataReference.tsx +16 -16
  63. package/tests/assets/components/SDK-React/create/override-sdk/template/InlineDashboardPage/InlineDashboardPage.tsx +1 -1
  64. package/tests/assets/components/SDK-React/create/override-sdk/template/MultiReferenceReadOnly/MultiReferenceReadOnly.tsx +1 -1
  65. package/tests/assets/components/SDK-React/create/override-sdk/template/SimpleTableManual/SimpleTableManual.tsx +1 -1
  66. package/tests/assets/components/SDK-React/create/override-sdk/template/SingleReferenceReadOnly/SingleReferenceReadOnly.tsx +1 -2
  67. package/tests/assets/components/SDK-React/createAll/custom-constellation/field/Pega_DXIL_MyBoolean/index.jsx +15 -3
  68. package/tests/assets/components/SDK-React/createAll/custom-constellation/field/Pega_DXIL_MyCurrency/index.jsx +19 -4
  69. package/tests/assets/components/SDK-React/createAll/custom-constellation/field/Pega_DXIL_MyDate/index.jsx +20 -4
  70. package/tests/assets/components/SDK-React/createAll/custom-constellation/field/Pega_DXIL_MyDateTime/index.jsx +18 -3
  71. package/tests/assets/components/SDK-React/createAll/custom-constellation/field/Pega_DXIL_MyDecimal/index.jsx +19 -4
  72. package/tests/assets/components/SDK-React/createAll/custom-constellation/field/Pega_DXIL_MyEmail/index.jsx +19 -3
  73. package/tests/assets/components/SDK-React/createAll/custom-constellation/field/Pega_DXIL_MyInteger/index.jsx +21 -4
  74. package/tests/assets/components/SDK-React/createAll/custom-constellation/field/Pega_DXIL_MyParagraph/index.jsx +15 -3
  75. package/tests/assets/components/SDK-React/createAll/custom-constellation/field/Pega_DXIL_MyPercentage/index.jsx +20 -4
  76. package/tests/assets/components/SDK-React/createAll/custom-constellation/field/Pega_DXIL_MyPhone/index.jsx +18 -3
  77. package/tests/assets/components/SDK-React/createAll/custom-constellation/field/Pega_DXIL_MyPicklist/index.jsx +25 -3
  78. package/tests/assets/components/SDK-React/createAll/custom-constellation/field/Pega_DXIL_MyText/index.jsx +1 -3
  79. package/tests/assets/components/SDK-React/createAll/custom-constellation/field/Pega_DXIL_MyTextInput/index.jsx +15 -3
  80. package/tests/assets/components/SDK-React/createAll/custom-constellation/field/Pega_DXIL_MyTimeOfDay/index.jsx +20 -4
  81. package/tests/assets/components/SDK-React/createAll/custom-constellation/field/Pega_DXIL_MyURL/index.jsx +18 -3
  82. package/tests/assets/components/SDK-React/createAll/custom-sdk/field/Pega_DXIL_MyBoolean/index.tsx +1 -0
  83. package/tests/assets/components/SDK-React/createAll/custom-sdk/field/Pega_DXIL_MyCurrency/demo.stories.jsx +1 -1
  84. package/tests/assets/components/SDK-React/createAll/custom-sdk/field/Pega_DXIL_MyCurrency/index.tsx +2 -2
  85. package/tests/assets/components/SDK-React/createAll/custom-sdk/field/Pega_DXIL_MyDate/demo.stories.jsx +1 -1
  86. package/tests/assets/components/SDK-React/createAll/custom-sdk/field/Pega_DXIL_MyDate/index.tsx +0 -1
  87. package/tests/assets/components/SDK-React/createAll/custom-sdk/field/Pega_DXIL_MyDateTime/demo.stories.jsx +1 -1
  88. package/tests/assets/components/SDK-React/createAll/custom-sdk/field/Pega_DXIL_MyDecimal/demo.stories.jsx +1 -0
  89. package/tests/assets/components/SDK-React/createAll/custom-sdk/field/Pega_DXIL_MyDecimal/index.tsx +1 -0
  90. package/tests/assets/components/SDK-React/createAll/custom-sdk/field/Pega_DXIL_MyEmail/index.tsx +1 -2
  91. package/tests/assets/components/SDK-React/createAll/custom-sdk/field/Pega_DXIL_MyInteger/index.tsx +1 -3
  92. package/tests/assets/components/SDK-React/createAll/custom-sdk/field/Pega_DXIL_MyParagraph/index.tsx +0 -1
  93. package/tests/assets/components/SDK-React/createAll/custom-sdk/field/Pega_DXIL_MyPercentage/index.tsx +1 -1
  94. package/tests/assets/components/SDK-React/createAll/custom-sdk/field/Pega_DXIL_MyPhone/index.tsx +0 -2
  95. package/tests/assets/components/SDK-React/createAll/custom-sdk/field/Pega_DXIL_MyPicklist/index.tsx +0 -1
  96. package/tests/assets/components/SDK-React/createAll/custom-sdk/field/Pega_DXIL_MyText/index.tsx +0 -1
  97. package/tests/assets/components/SDK-React/createAll/custom-sdk/field/Pega_DXIL_MyTextInput/index.tsx +0 -1
  98. package/tests/assets/components/SDK-React/createAll/custom-sdk/field/Pega_DXIL_MyTimeOfDay/index.tsx +1 -1
  99. package/tests/assets/components/SDK-React/createAll/custom-sdk/field/Pega_DXIL_MyURL/index.tsx +0 -1
  100. package/tests/assets/components/SDK-React/createAll/custom-sdk/template/Pega_DXIL_MyDetails/index.tsx +0 -1
  101. package/tests/assets/components/SDK-React/createAll/custom-sdk/template/Pega_DXIL_MyForm/demo.stories.jsx +1 -1
  102. package/tests/assets/components/SDK-React/createAll/custom-sdk/template/Pega_DXIL_MyForm/index.tsx +9 -9
  103. package/tests/assets/components/SDK-React/createAll/custom-sdk/template/Pega_DXIL_MyTwoColumnDetails/index.tsx +2 -3
  104. package/tests/assets/components/SDK-React/createAll/custom-sdk/template/Pega_DXIL_MyTwoColumnForm/demo.stories.jsx +1 -1
  105. package/tests/assets/components/SDK-React/createAll/custom-sdk/widget/Pega_DXIL_MyPageCaseWidget/demo.stories.jsx +1 -1
  106. package/tests/assets/components/SDK-React/createAll/override-sdk/field/AutoComplete/AutoComplete.tsx +2 -2
  107. package/tests/assets/components/SDK-React/createAll/override-sdk/field/Checkbox/Checkbox.tsx +41 -32
  108. package/tests/assets/components/SDK-React/createAll/override-sdk/field/Currency/Currency.tsx +1 -1
  109. package/tests/assets/components/SDK-React/createAll/override-sdk/field/Date/Date.tsx +1 -1
  110. package/tests/assets/components/SDK-React/createAll/override-sdk/field/DateTime/DateTime.tsx +1 -1
  111. package/tests/assets/components/SDK-React/createAll/override-sdk/field/Decimal/Decimal.tsx +1 -1
  112. package/tests/assets/components/SDK-React/createAll/override-sdk/field/Dropdown/Dropdown.tsx +17 -15
  113. package/tests/assets/components/SDK-React/createAll/override-sdk/field/RadioButtons/RadioButtons.tsx +11 -9
  114. package/tests/assets/components/SDK-React/createAll/override-sdk/field/RichText/RichText.tsx +5 -3
  115. package/tests/assets/components/SDK-React/createAll/override-sdk/field/ScalarList/ScalarList.tsx +15 -6
  116. package/tests/assets/components/SDK-React/createAll/override-sdk/field/TextInput/TextInput.tsx +1 -1
  117. package/tests/assets/components/SDK-React/createAll/override-sdk/infra/Assignment/Assignment.tsx +19 -16
  118. package/tests/assets/components/SDK-React/createAll/override-sdk/infra/DashboardFilter/DashboardFilter.tsx +1 -1
  119. package/tests/assets/components/SDK-React/createAll/override-sdk/infra/DashboardFilter/filterUtils.tsx +2 -1
  120. package/tests/assets/components/SDK-React/createAll/override-sdk/infra/DeferLoad/DeferLoad.tsx +1 -1
  121. package/tests/assets/components/SDK-React/createAll/override-sdk/infra/ErrorBoundary/ErrorBoundary.tsx +1 -1
  122. package/tests/assets/components/SDK-React/createAll/override-sdk/template/AppShell/AppShell.tsx +1 -1
  123. package/tests/assets/components/SDK-React/createAll/override-sdk/template/DataReference/DataReference.tsx +16 -16
  124. package/tests/assets/components/SDK-React/createAll/override-sdk/template/InlineDashboardPage/InlineDashboardPage.tsx +1 -1
  125. package/tests/assets/components/SDK-React/createAll/override-sdk/template/MultiReferenceReadOnly/MultiReferenceReadOnly.tsx +1 -1
  126. package/tests/assets/components/SDK-React/createAll/override-sdk/template/SimpleTableManual/SimpleTableManual.tsx +1 -1
  127. package/tests/assets/components/SDK-React/createAll/override-sdk/template/SingleReferenceReadOnly/SingleReferenceReadOnly.tsx +1 -2
  128. package/tests/functional/localCreateBuildAllDeleteAllCustom.test.js +1 -0
  129. package/tests/functional/localCreateBuildDeleteCustom.test.js +13 -0
  130. package/tests/functional/localCreateBuildDeleteOverride.test.js +1 -0
  131. package/tests/functional/localCreatePublishAllDeleteAllCustom.test.js +1 -2
  132. package/tests/functional/localCreatePublishAllDeleteAllOverride.test.js +1 -2
  133. package/tests/functional/localCreatePublishDeleteCustom.test.js +4 -3
  134. package/tests/functional/localCreatePublishDeleteOverride.test.js +2 -2
@@ -1,35 +1,42 @@
1
1
  import React, { useState, useEffect } from 'react';
2
- import { Checkbox, FormControl, FormControlLabel, FormGroup, FormHelperText } from '@material-ui/core';
2
+ import {
3
+ Checkbox,
4
+ FormControl,
5
+ FormControlLabel,
6
+ FormGroup,
7
+ FormHelperText
8
+ } from '@material-ui/core';
3
9
  import handleEvent from '@pega/react-sdk-components/lib/components/helpers/event-utils';
4
- import type { PConnProps } from '@pega/react-sdk-components/lib/types/PConnProps';
5
10
  import { getComponentFromMap } from '@pega/react-sdk-components/lib/bridge/helpers/sdk_component_map';
11
+ // import type { PConnProps } from '../../../types/PConnProps';
6
12
 
7
13
  // Checkbox passes in 'value' as a boolean. So can't use the default
8
14
  // PConnFieldProps since it expects value to be a string.
9
- interface CheckboxProps extends PConnProps {
10
- // If any, enter additional props that only exist on Checkbox here
11
- // Everything from PConnFieldProps except value and change type of value to boolean
15
+ // But can't use CheckBoxProps until getValidationApi() knows about validate method
16
+ // Currently just thinks that returns an "object"
17
+ // interface CheckboxProps extends PConnProps {
18
+ // // If any, enter additional props that only exist on Checkbox here
19
+ // // Everything from PConnFieldProps except value and change type of value to boolean
12
20
 
13
- value?: boolean;
14
- label: string;
15
- required: boolean;
16
- disabled: boolean;
17
- validatemessage: string;
18
- status?: string;
19
- // eslint-disable-next-line react/no-unused-prop-types
20
- onChange: any;
21
- // eslint-disable-next-line react/no-unused-prop-types
22
- onBlur?: any;
23
- readOnly: boolean;
24
- testId: string;
25
- helperText: string;
26
- displayMode?: string;
27
- hideLabel: boolean;
28
- // eslint-disable-next-line react/no-unused-prop-types
29
- placeholder?: string;
30
- }
31
-
32
- export default function CheckboxComponent(props: CheckboxProps) {
21
+ // value?: boolean,
22
+ // label: string,
23
+ // required: boolean,
24
+ // disabled: boolean,
25
+ // validatemessage: string,
26
+ // status?: string,
27
+ // // eslint-disable-next-line react/no-unused-prop-types
28
+ // onChange: any,
29
+ // // eslint-disable-next-line react/no-unused-prop-types
30
+ // onBlur?: any,
31
+ // readOnly: boolean,
32
+ // testId: string,
33
+ // helperText: string,
34
+ // displayMode?: string,
35
+ // hideLabel: boolean,
36
+ // // eslint-disable-next-line react/no-unused-prop-types
37
+ // placeholder?: string
38
+ // }
39
+ export default function CheckboxComponent(props /* : CheckboxProps */) {
33
40
  // Get emitted components from map (so we can get any override that may exist)
34
41
  const FieldValueList = getComponentFromMap('FieldValueList');
35
42
 
@@ -51,9 +58,9 @@ export default function CheckboxComponent(props: CheckboxProps) {
51
58
 
52
59
  const thePConn = getPConnect();
53
60
  const theConfigProps = thePConn.getConfigProps();
54
- const { caption } = theConfigProps;
61
+ const caption = theConfigProps['caption'];
55
62
  const actionsApi = thePConn.getActionsApi();
56
- const propName = thePConn.getStateProps().value;
63
+ const propName = thePConn.getStateProps()['value'];
57
64
 
58
65
  const [checked, setChecked] = useState(false);
59
66
  useEffect(() => {
@@ -66,18 +73,20 @@ export default function CheckboxComponent(props: CheckboxProps) {
66
73
  }
67
74
 
68
75
  if (displayMode === 'STACKED_LARGE_VAL') {
69
- return <FieldValueList name={hideLabel ? '' : label} value={value.toString()} variant="stacked" />;
76
+ return (
77
+ <FieldValueList name={hideLabel ? '' : label} value={value.toString()} variant='stacked' />
78
+ );
70
79
  }
71
80
 
72
- const handleChange = (event) => {
81
+ const handleChange = event => {
73
82
  handleEvent(actionsApi, 'changeNblur', propName, event.target.checked);
74
83
  };
75
84
 
76
- const handleBlur = (event) => {
85
+ const handleBlur = event => {
77
86
  thePConn.getValidationApi().validate(event.target.checked, ''); // 2nd arg empty string until typedef marked correctly as optional
78
87
  };
79
88
 
80
- let theCheckbox = <Checkbox color="primary" disabled={disabled} />;
89
+ let theCheckbox = <Checkbox color='primary' disabled={disabled} />;
81
90
 
82
91
  if (readOnly) {
83
92
  // Workaround for lack of InputProps readOnly from https://github.com/mui-org/material-ui/issues/17043
@@ -94,7 +103,7 @@ export default function CheckboxComponent(props: CheckboxProps) {
94
103
  onChange={!readOnly ? handleChange : undefined}
95
104
  onBlur={!readOnly ? handleBlur : undefined}
96
105
  label={caption}
97
- labelPlacement="end"
106
+ labelPlacement='end'
98
107
  data-test-id={testId}
99
108
  />
100
109
  </FormGroup>
@@ -36,7 +36,7 @@ export default function Currency(props: CurrrencyProps) {
36
36
 
37
37
  const pConn = getPConnect();
38
38
  const actions = pConn.getActionsApi();
39
- const propName = pConn.getStateProps().value;
39
+ const propName = pConn.getStateProps()["value"];
40
40
  const helperTextToDisplay = validatemessage || helperText;
41
41
 
42
42
  // console.log(`Currency: label: ${label} value: ${value}`);
@@ -39,7 +39,7 @@ export default function Date(props: DateProps) {
39
39
 
40
40
  const pConn = getPConnect();
41
41
  const actions = pConn.getActionsApi();
42
- const propName = pConn.getStateProps().value;
42
+ const propName = pConn.getStateProps()["value"];
43
43
  const helperTextToDisplay = validatemessage || helperText;
44
44
 
45
45
  // Start with default dateFormatInfo
@@ -33,7 +33,7 @@ export default function DateTime(props: DateTimeProps) {
33
33
 
34
34
  const pConn = getPConnect();
35
35
  const actions = pConn.getActionsApi();
36
- const propName = pConn.getStateProps().value;
36
+ const propName = pConn.getStateProps()["value"];
37
37
  const helperTextToDisplay = validatemessage || helperText;
38
38
 
39
39
  // Start with default dateFormatInfo
@@ -40,7 +40,7 @@ export default function Decimal(props: DecimalProps) {
40
40
 
41
41
  const pConn = getPConnect();
42
42
  const actions = pConn.getActionsApi();
43
- const propName = pConn.getStateProps().value;
43
+ const propName = pConn.getStateProps()["value"];
44
44
  const helperTextToDisplay = validatemessage || helperText;
45
45
 
46
46
  const [decValue, setDecimalvalue] = useState('');
@@ -4,25 +4,27 @@ import MenuItem from '@material-ui/core/MenuItem';
4
4
  import Utils from '@pega/react-sdk-components/lib/components/helpers/utils';
5
5
  import handleEvent from '@pega/react-sdk-components/lib/components/helpers/event-utils';
6
6
  import { getComponentFromMap } from '@pega/react-sdk-components/lib/bridge/helpers/sdk_component_map';
7
- import type { PConnFieldProps } from '@pega/react-sdk-components/lib/types/PConnProps';
7
+ // import type { PConnFieldProps } from '../../../types/PConnProps';
8
8
 
9
9
  interface IOption {
10
10
  key: string;
11
11
  value: string;
12
12
  }
13
13
 
14
- interface DropdownProps extends PConnFieldProps {
15
- // If any, enter additional props that only exist on Dropdown here
16
- datasource?: Array<any>;
17
- onRecordChange?: any;
18
- fieldMetadata?: any;
19
- // eslint-disable-next-line react/no-unused-prop-types
20
- listType: string;
21
- // eslint-disable-next-line react/no-unused-prop-types
22
- additionalProps?: object;
23
- }
14
+ // Can't use DropdownProps with 8.23 until getLocaleRuleNameFromKeys is NOT private
15
+ // interface DropdownProps extends PConnFieldProps {
16
+ // // If any, enter additional props that only exist on Dropdown here
17
+ // datasource?: Array<any>,
18
+ // onRecordChange?: any,
19
+ // fieldMetadata?: any,
20
+ // // eslint-disable-next-line react/no-unused-prop-types
21
+ // listType: string,
22
+ // // eslint-disable-next-line react/no-unused-prop-types
23
+ // additionalProps?: object
24
+ // }
25
+
24
26
 
25
- export default function Dropdown(props: DropdownProps) {
27
+ export default function Dropdown(props /* : DropdownProps */) {
26
28
  // Get emitted components from map (so we can get any override that may exist)
27
29
  const FieldValueList = getComponentFromMap('FieldValueList');
28
30
 
@@ -43,19 +45,19 @@ export default function Dropdown(props: DropdownProps) {
43
45
  onRecordChange,
44
46
  fieldMetadata
45
47
  } = props;
46
- let { placeholder } = props;
48
+ let { placeholder = "" } = props;
47
49
  placeholder = placeholder || 'Select...';
48
50
  const [options, setOptions] = useState<Array<IOption>>([]);
49
51
  const helperTextToDisplay = validatemessage || helperText;
50
52
 
51
53
  const thePConn = getPConnect();
52
54
  const actionsApi = thePConn.getActionsApi();
53
- const propName = thePConn.getStateProps().value;
55
+ const propName = thePConn.getStateProps()["value"];
54
56
  const className = thePConn.getCaseInfo().getClassName();
55
57
  const refName = propName?.slice(propName.lastIndexOf('.') + 1);
56
58
 
57
59
  useEffect(() => {
58
- const list = Utils.getOptionList(props, getPConnect().getDataObject(thePConn.getContextName()));
60
+ const list = Utils.getOptionList(props, getPConnect().getDataObject('')); // 1st arg empty string until typedef marked correctly
59
61
  const optionsList = [...list];
60
62
  optionsList.unshift({
61
63
  key: placeholder,
@@ -4,15 +4,17 @@ import { Radio, RadioGroup, FormControl, FormControlLabel, FormLabel, FormHelper
4
4
  import Utils from '@pega/react-sdk-components/lib/components/helpers/utils';
5
5
  import handleEvent from '@pega/react-sdk-components/lib/components/helpers/event-utils';
6
6
  import { getComponentFromMap } from '@pega/react-sdk-components/lib/bridge/helpers/sdk_component_map';
7
- import type { PConnFieldProps } from '@pega/react-sdk-components/lib/types/PConnProps';
7
+ // import type { PConnFieldProps } from '../../../types/PConnProps';
8
+
9
+ // Can't use RadioButtonProps until getLocaleRuleNameFromKeys is NOT private
10
+ // interface RadioButtonsProps extends PConnFieldProps {
11
+ // // If any, enter additional props that only exist on RadioButtons here
12
+ // inline: boolean,
13
+ // fieldMetadata?: any
14
+ // }
8
15
 
9
- interface RadioButtonsProps extends PConnFieldProps {
10
- // If any, enter additional props that only exist on RadioButtons here
11
- inline: boolean;
12
- fieldMetadata?: any;
13
- }
14
16
 
15
- export default function RadioButtons(props: RadioButtonsProps) {
17
+ export default function RadioButtons(props /* : RadioButtonsProps */ ) {
16
18
  // Get emitted components from map (so we can get any override that may exist)
17
19
  const FieldValueList = getComponentFromMap('FieldValueList');
18
20
 
@@ -35,7 +37,7 @@ export default function RadioButtons(props: RadioButtonsProps) {
35
37
  const thePConn = getPConnect();
36
38
  const theConfigProps = thePConn.getConfigProps();
37
39
  const actionsApi = thePConn.getActionsApi();
38
- const propName = thePConn.getStateProps().value;
40
+ const propName = thePConn.getStateProps()["value"];
39
41
  const helperTextToDisplay = validatemessage || helperText;
40
42
  const className = thePConn.getCaseInfo().getClassName();
41
43
 
@@ -53,7 +55,7 @@ export default function RadioButtons(props: RadioButtonsProps) {
53
55
 
54
56
  // theOptions will be an array of JSON objects that are literally key/value pairs.
55
57
  // Ex: [ {key: "Basic", value: "Basic"} ]
56
- const theOptions = Utils.getOptionList(theConfigProps, thePConn.getDataObject(thePConn.getContextName()));
58
+ const theOptions = Utils.getOptionList(theConfigProps, thePConn.getDataObject(''));
57
59
 
58
60
  useEffect(() => {
59
61
  // This update theSelectedButton which will update the UI to show the selected button correctly
@@ -55,9 +55,11 @@ export default function RichText(props: RichTextProps) {
55
55
  }
56
56
  const handleChange = () => {
57
57
  if (status === 'error') {
58
- const property = pConn.getStateProps().value;
58
+ const property = pConn.getStateProps()["value"];
59
59
  pConn.clearErrorMessages({
60
- property
60
+ property,
61
+ category: '',
62
+ context: ''
61
63
  });
62
64
  }
63
65
  };
@@ -65,7 +67,7 @@ export default function RichText(props: RichTextProps) {
65
67
  const handleBlur = () => {
66
68
  if (editorRef.current) {
67
69
  const editorValue = editorRef.current.getContent({ format: 'html' });
68
- const property = pConn.getStateProps().value;
70
+ const property = pConn.getStateProps()["value"];
69
71
  handleEvent(actionsApi, 'changeNblur', property, editorValue);
70
72
  }
71
73
  };
@@ -1,7 +1,7 @@
1
1
  /* eslint-disable react/no-array-index-key */
2
2
  import React from 'react';
3
3
  import { getComponentFromMap } from '@pega/react-sdk-components/lib/bridge/helpers/sdk_component_map';
4
- import type { PConnProps } from '@pega/react-sdk-components/lib/types/PConnProps';
4
+ import { PConnProps } from '@pega/react-sdk-components/lib/types/PConnProps';
5
5
 
6
6
  // ScalarListProps can't extend PConnFieldProps because its 'value' has a different type
7
7
  interface ScalarListProps extends PConnProps {
@@ -29,9 +29,18 @@ function CommaSeparatedList(props) {
29
29
  export default function ScalarList(props: ScalarListProps) {
30
30
  // Get emitted components from map (so we can get any override that may exist)
31
31
  const FieldValueList = getComponentFromMap('FieldValueList');
32
- const { label, getPConnect, componentType, value: scalarValues, displayMode, hideLabel, ...restProps } = props;
33
32
 
34
- const items = scalarValues?.map((scalarValue) => {
33
+ const {
34
+ label,
35
+ getPConnect,
36
+ componentType,
37
+ value: scalarValues,
38
+ displayMode,
39
+ hideLabel,
40
+ ...restProps
41
+ } = props;
42
+
43
+ const items = scalarValues?.map(scalarValue => {
35
44
  return getPConnect().createComponent(
36
45
  {
37
46
  type: componentType,
@@ -43,8 +52,8 @@ export default function ScalarList(props: ScalarListProps) {
43
52
  readOnly: 'true'
44
53
  }
45
54
  },
46
- null,
47
- null,
55
+ '',
56
+ '',
48
57
  {}
49
58
  ); // 2nd, 3rd, and 4th args empty string/object/null until typedef marked correctly as optional;
50
59
  });
@@ -60,5 +69,5 @@ export default function ScalarList(props: ScalarListProps) {
60
69
 
61
70
  const displayComp = <CommaSeparatedList items={items} />;
62
71
 
63
- return <FieldValueList name={hideLabel ? '' : label} value={displayComp} variant="stacked" />;
72
+ return <FieldValueList name={hideLabel ? '' : label} value={displayComp} variant='stacked' />;
64
73
  }
@@ -32,7 +32,7 @@ export default function TextInput(props: TextInputProps) {
32
32
 
33
33
  const pConn = getPConnect();
34
34
  const actions = pConn.getActionsApi();
35
- const propName = pConn.getStateProps().value;
35
+ const propName = pConn.getStateProps()["value"];
36
36
 
37
37
  const helperTextToDisplay = validatemessage || helperText;
38
38
 
@@ -4,20 +4,23 @@ import IconButton from '@material-ui/core/IconButton';
4
4
  import CloseIcon from '@material-ui/icons/Close';
5
5
  import { getComponentFromMap } from '@pega/react-sdk-components/lib/bridge/helpers/sdk_component_map';
6
6
 
7
- import type { PConnProps } from '@pega/react-sdk-components/lib/types/PConnProps';
8
-
9
- interface AssignmentProps extends PConnProps {
10
- // If any, enter additional props that only exist on this component
11
- children: Array<any>,
12
- itemKey: string,
13
- isInModal: boolean,
14
- banners: Array<any>
15
- // eslint-disable-next-line react/no-unused-prop-types
16
- actionButtons: Array<any>,
17
- }
18
-
19
-
20
- export default function Assignment(props: AssignmentProps) {
7
+ // import type { PConnProps } from '../../../types/PConnProps';
8
+
9
+ // Can't use AssignmentProps until the following are NOT private
10
+ // getCaseInfo().isAssignmentInCreateStage()
11
+ // getCaseInfo().isLocalAction()
12
+ // interface AssignmentProps extends PConnProps {
13
+ // // If any, enter additional props that only exist on this component
14
+ // children: Array<any>,
15
+ // itemKey: string,
16
+ // isInModal: boolean,
17
+ // banners: Array<any>
18
+ // // eslint-disable-next-line react/no-unused-prop-types
19
+ // actionButtons: Array<any>,
20
+ // }
21
+
22
+
23
+ export default function Assignment(props /* : AssignmentProps */) {
21
24
  // Get emitted components from map (so we can get any override that may exist)
22
25
  const AssignmentCard = getComponentFromMap("AssignmentCard");
23
26
  const MultiStep = getComponentFromMap("MultiStep");
@@ -81,10 +84,10 @@ export default function Assignment(props: AssignmentProps) {
81
84
 
82
85
  const oWorkItem = children[0].props.getPConnect();
83
86
  const oWorkData = oWorkItem.getDataObject();
84
- const oData = thePConn.getDataObject(thePConn.getContextName());
87
+ const oData = thePConn.getDataObject(''); // 1st arg empty string until typedefs allow it to be optional
85
88
 
86
89
  if (oWorkData?.caseInfo && oWorkData.caseInfo.assignments !== null) {
87
- const oCaseInfo = oData.caseInfo;
90
+ const oCaseInfo = oData["caseInfo"];
88
91
 
89
92
  if (oCaseInfo && oCaseInfo.actionButtons) {
90
93
  setActionButtons(oCaseInfo.actionButtons);
@@ -109,7 +109,7 @@ export default function DashboardFilter(props: DashboardFilterProps) {
109
109
  fireFilterChange(e.id);
110
110
  };
111
111
  return getPConnect().createComponent(metadata,
112
- null, null, {}); // 2nd, 3rd, and 4th args empty string/object/null until typedef marked correctly as optional;
112
+ '', '', {}); // 2nd, 3rd, and 4th args empty string/object/null until typedef marked correctly as optional);
113
113
  };
114
114
 
115
115
  const onChange = dates => {
@@ -91,7 +91,8 @@ export const createFilterComponent = (getPConnect, filterMeta, index) => {
91
91
  metadata={filterMeta}
92
92
  type={filterMeta.type}
93
93
  >
94
- {getPConnect().createComponent(filterMeta, '','', {})}
94
+ {getPConnect().createComponent(filterMeta,
95
+ '', '', {})}
95
96
  </DashboardFilter>
96
97
  );
97
98
  };
@@ -70,7 +70,7 @@ export default function DeferLoad(props /* : DeferLoadProps */) {
70
70
 
71
71
  const getViewOptions = () => ({
72
72
  viewContext: resourceType,
73
- pageClass: loadViewCaseID ? '' : pConnect.getDataObject(pConnect.getContextName()).pyPortal.classID,
73
+ pageClass: loadViewCaseID ? '' : pConnect.getDataObject('').pyPortal.classID, // 2nd arg empty string until typedef allows optional
74
74
  container: isContainerPreview ? 'preview' : null,
75
75
  containerName: isContainerPreview ? 'preview' : null,
76
76
  updateData: isContainerPreview
@@ -38,7 +38,7 @@ export default function ErrorBoundary(props: ErrorBoundaryProps) {
38
38
  Raw meta data for the component:`, localeCategory)} ${JSON.stringify(pConn.getRawMetadata())}`);
39
39
  }
40
40
 
41
- if (pConn.getConfigProps().type === "page") {
41
+ if (pConn.getConfigProps()["type"] === "page") {
42
42
  return (
43
43
  theErrorDiv
44
44
  );
@@ -95,7 +95,7 @@ export default function AppShell(props:AppShellProps) {
95
95
  useEffect(() => {
96
96
  setAppName(PCore.getEnvironmentInfo().getApplicationName());
97
97
 
98
- const tempMap: any = pConn.getChildren()?.map((child: any, index) => {
98
+ const tempMap: any = pConn.getChildren()?.["map"]((child: any, index) => {
99
99
  const theChildComp = child.getPConnect().getComponentName();
100
100
  const theKey = `.${index}`;
101
101
  return (
@@ -1,23 +1,23 @@
1
1
  import React, { useMemo, useState, useEffect } from 'react';
2
2
  import { getComponentFromMap } from '@pega/react-sdk-components/lib/bridge/helpers/sdk_component_map';
3
3
 
4
- // import type { PConnProps } from '../../../types/PConnProps';
4
+ import type { PConnProps } from '@pega/react-sdk-components/lib/types/PConnProps';
5
5
 
6
6
  // ReferenceProps can't be used until getComponentConfig() is NOT private
7
- // interface DataReferenceProps extends PConnProps {
8
- // // If any, enter additional props that only exist on this component
9
- // children: Array<any>,
10
- // label: string,
11
- // showLabel: any,
12
- // displayMode: string,
13
- // allowAndPersistChangesInReviewMode: boolean,
14
- // referenceType: string,
15
- // selectionMode: string,
16
- // displayAs: string,
17
- // ruleClass: string,
18
- // parameters: Array<string>, // need to fix
19
- // hideLabel: boolean
20
- // }
7
+ interface DataReferenceProps extends PConnProps {
8
+ // If any, enter additional props that only exist on this component
9
+ children: Array<any>,
10
+ label: string,
11
+ showLabel: any,
12
+ displayMode: string,
13
+ allowAndPersistChangesInReviewMode: boolean,
14
+ referenceType: string,
15
+ selectionMode: string,
16
+ displayAs: string,
17
+ ruleClass: string,
18
+ parameters: Array<string>, // need to fix
19
+ hideLabel: boolean
20
+ }
21
21
 
22
22
 
23
23
  const SELECTION_MODE = { SINGLE: 'single', MULTI: 'multi' };
@@ -26,7 +26,7 @@ const SELECTION_MODE = { SINGLE: 'single', MULTI: 'multi' };
26
26
  declare const PCore: any;
27
27
 
28
28
 
29
- export default function DataReference(props /*: DataReferenceProps */) {
29
+ export default function DataReference(props: DataReferenceProps) {
30
30
  // Get emitted components from map (so we can get any override that may exist)
31
31
  const SingleReferenceReadonly = getComponentFromMap('SingleReferenceReadOnly');
32
32
  const MultiReferenceReadonly = getComponentFromMap('MultiReferenceReadOnly');
@@ -27,7 +27,7 @@ export default function InlineDashboardPage(props: InlineDashboardPageProps) {
27
27
  return Children.toArray(children);
28
28
  }, [children]);
29
29
 
30
- const allFilters = getPConnect().getRawMetadata().children[1];
30
+ const allFilters = getPConnect().getRawMetadata()["children"][1];
31
31
 
32
32
  useEffect(() => {
33
33
  setFilterComponents(buildFilterComponents(getPConnect, allFilters));
@@ -29,7 +29,7 @@ export default function MultiReferenceReadOnly(props: MultiReferenceReadOnlyProp
29
29
  hideLabel
30
30
  }
31
31
  },
32
- null, null, {}); // 2nd, 3rd, and 4th args empty string/object/null until typedef marked correctly as optional;
32
+ '', '', {}); // 2nd, 3rd, and 4th args empty string/object/null until typedef marked correctly as optional
33
33
 
34
34
  return (
35
35
  <React.Fragment>{component}</React.Fragment>
@@ -150,7 +150,7 @@ export default function SimpleTableManual(props: SimpleTableManualProps) {
150
150
  // config.datasource (ex: "@ASSOCIATED .DeclarantChoice")
151
151
  // Neither of these appear in the resolved props
152
152
 
153
- const rawConfig = rawMetadata?.config;
153
+ const rawConfig = rawMetadata?.["config"];
154
154
  const rawFields =
155
155
  rawConfig?.children?.[0]?.children || rawConfig?.presets?.[0].children?.[0]?.children;
156
156
 
@@ -1,7 +1,6 @@
1
1
  import React from "react";
2
2
  import type { PConnProps } from '@pega/react-sdk-components/lib/types/PConnProps';
3
3
 
4
- // Need to fix an error noted in comment below before typedefs will work correctly
5
4
  interface SingleReferenceReadOnlyProps extends PConnProps {
6
5
  // If any, enter additional props that only exist on this component
7
6
  config: any,
@@ -56,7 +55,7 @@ export default function SingleReferenceReadOnly(props: SingleReferenceReadOnlyPr
56
55
  dataRelationshipContext
57
56
  }
58
57
  },
59
- null, null, {}); // 2nd, 3rd, and 4th args empty string/object/null until typedef marked correctly as optional;
58
+ '', '', {}); // 2nd, 3rd, and 4th args empty string/object/null until typedef marked correctly as optional
60
59
 
61
60
  return (
62
61
  <React.Fragment>{component}</React.Fragment>
@@ -29,12 +29,21 @@ const PegaDxilMyBoolean = props => {
29
29
  displayMode,
30
30
  variant,
31
31
  trueLabel,
32
- falseLabel
32
+ falseLabel,
33
+ fieldMetadata
33
34
  } = props;
34
35
  const pConn = getPConnect();
35
36
  const actions = pConn.getActionsApi();
36
37
  const propName = pConn.getStateProps().value;
37
38
 
39
+ const fieldAdditionalInfo = fieldMetadata?.additionalInformation;
40
+ const additionalInfo = fieldAdditionalInfo
41
+ ? {
42
+ heading: caption,
43
+ content: fieldAdditionalInfo
44
+ }
45
+ : undefined;
46
+
38
47
  let { readOnly, required, disabled } = props;
39
48
  [readOnly, required, disabled] = [readOnly, required, disabled].map(
40
49
  (prop) => prop === true || (typeof prop === 'string' && prop === 'true')
@@ -62,6 +71,7 @@ const PegaDxilMyBoolean = props => {
62
71
  pConn.getValidationApi().validate(event.target.checked);
63
72
  }}
64
73
  data-testid={testId}
74
+ additionalInfo={additionalInfo}
65
75
  />
66
76
  );
67
77
 
@@ -144,7 +154,8 @@ PegaDxilMyBoolean.defaultProps = {
144
154
  variant: 'inline',
145
155
  displayValue: 'Yes/No',
146
156
  trueLabel: '',
147
- falseLabel: ''
157
+ falseLabel: '',
158
+ fieldMetadata: {}
148
159
  };
149
160
 
150
161
  PegaDxilMyBoolean.propTypes = {
@@ -164,7 +175,8 @@ PegaDxilMyBoolean.propTypes = {
164
175
  variant: PropTypes.string,
165
176
  displayValue: PropTypes.string,
166
177
  trueLabel: PropTypes.string,
167
- falseLabel: PropTypes.string
178
+ falseLabel: PropTypes.string,
179
+ fieldMetadata: PropTypes.objectOf(PropTypes.any)
168
180
  };
169
181
 
170
182
  export default PegaDxilMyBoolean;