@pega/react-sdk-overrides 0.23.25 → 0.23.27

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 (240) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +17 -0
  3. package/SECURITY.md +10 -0
  4. package/lib/designSystemExtension/AlertBanner/AlertBanner.tsx +39 -0
  5. package/lib/designSystemExtension/AlertBanner/index.tsx +1 -0
  6. package/lib/designSystemExtension/Banner/Banner.css +4 -0
  7. package/lib/designSystemExtension/Banner/Banner.tsx +33 -16
  8. package/lib/designSystemExtension/CaseSummaryFields/CaseSummaryFields.css +0 -1
  9. package/lib/designSystemExtension/CaseSummaryFields/CaseSummaryFields.tsx +36 -26
  10. package/lib/designSystemExtension/DetailsFields/DetailsFields.tsx +21 -28
  11. package/lib/designSystemExtension/DetailsFields/index.tsx +1 -1
  12. package/lib/designSystemExtension/FieldGroup/FieldGroup.tsx +50 -18
  13. package/lib/designSystemExtension/FieldGroupList/FieldGroupList.tsx +13 -12
  14. package/lib/designSystemExtension/FieldValueList/FieldValueList.tsx +18 -27
  15. package/lib/designSystemExtension/Operator/Operator.tsx +106 -87
  16. package/lib/designSystemExtension/Pulse/Pulse.tsx +21 -19
  17. package/lib/designSystemExtension/RichTextEditor/RichTextEditor.tsx +122 -0
  18. package/lib/designSystemExtension/RichTextEditor/index.tsx +1 -0
  19. package/lib/designSystemExtension/WssQuickCreate/WssQuickCreate.css +6 -2
  20. package/lib/designSystemExtension/WssQuickCreate/WssQuickCreate.tsx +21 -12
  21. package/lib/field/AutoComplete/AutoComplete.tsx +33 -16
  22. package/lib/field/AutoComplete/config-ext.json +2 -3
  23. package/lib/field/CancelAlert/CancelAlert.tsx +21 -15
  24. package/lib/field/CancelAlert/index.tsx +1 -1
  25. package/lib/field/Checkbox/Checkbox.tsx +29 -19
  26. package/lib/field/Checkbox/config-ext.json +2 -3
  27. package/lib/field/Currency/Currency.tsx +27 -38
  28. package/lib/field/Currency/config-ext.json +2 -3
  29. package/lib/field/Currency/currency-utils.ts +10 -18
  30. package/lib/field/Date/Date.tsx +33 -15
  31. package/lib/field/Date/config-ext.json +2 -3
  32. package/lib/field/DateTime/DateTime.tsx +22 -11
  33. package/lib/field/DateTime/config-ext.json +1 -2
  34. package/lib/field/Decimal/Decimal.tsx +64 -17
  35. package/lib/field/Decimal/config-ext.json +1 -2
  36. package/lib/field/Decimal/index.tsx +1 -1
  37. package/lib/field/Dropdown/Dropdown.tsx +154 -18
  38. package/lib/field/Dropdown/config-ext.json +1 -2
  39. package/lib/field/Email/Email.tsx +16 -7
  40. package/lib/field/Email/config-ext.json +1 -2
  41. package/lib/field/Email/index.tsx +1 -1
  42. package/lib/field/Group/Group.tsx +37 -0
  43. package/lib/field/Group/config-ext.json +7 -0
  44. package/lib/field/Group/index.tsx +1 -0
  45. package/lib/field/Integer/Integer.tsx +15 -6
  46. package/lib/field/Integer/config-ext.json +1 -2
  47. package/lib/field/Percentage/Percentage.tsx +14 -6
  48. package/lib/field/Percentage/config-ext.json +1 -2
  49. package/lib/field/Phone/Phone.tsx +17 -7
  50. package/lib/field/Phone/index.tsx +1 -1
  51. package/lib/field/RadioButtons/RadioButtons.tsx +55 -24
  52. package/lib/field/RadioButtons/config-ext.json +1 -2
  53. package/lib/field/RichText/RichText.tsx +96 -0
  54. package/lib/field/RichText/index.tsx +1 -0
  55. package/lib/field/ScalarList/ScalarList.tsx +63 -0
  56. package/lib/field/ScalarList/config-ext.json +7 -0
  57. package/lib/field/ScalarList/index.tsx +1 -0
  58. package/lib/field/SemanticLink/SemanticLink.tsx +26 -25
  59. package/lib/field/SemanticLink/config-ext.json +1 -2
  60. package/lib/field/SemanticLink/utils.ts +8 -10
  61. package/lib/field/TextArea/TextArea.tsx +15 -5
  62. package/lib/field/TextArea/config-ext.json +1 -2
  63. package/lib/field/TextContent/TextContent.tsx +9 -2
  64. package/lib/field/TextContent/config-ext.json +1 -2
  65. package/lib/field/TextInput/TextInput.tsx +41 -10
  66. package/lib/field/TextInput/config-ext.json +1 -2
  67. package/lib/field/TextInput/index.tsx +1 -1
  68. package/lib/field/Time/Time.tsx +21 -18
  69. package/lib/field/Time/config-ext.json +1 -2
  70. package/lib/field/URL/URL.tsx +23 -6
  71. package/lib/field/URL/config-ext.json +1 -2
  72. package/lib/field/URL/index.tsx +1 -1
  73. package/lib/field/UserReference/UserReference.tsx +52 -58
  74. package/lib/field/UserReference/UserReferenceUtils.ts +2 -2
  75. package/lib/field/UserReference/config-ext.json +1 -2
  76. package/lib/helpers/{attachmentHelpers.js → attachmentHelpers.ts} +16 -11
  77. package/lib/helpers/case-utils.tsx +99 -0
  78. package/lib/helpers/common-utils.ts +8 -0
  79. package/lib/helpers/data_page.ts +3 -6
  80. package/lib/helpers/date-format-utils.ts +29 -19
  81. package/lib/helpers/{event-utils.js → event-utils.ts} +4 -4
  82. package/lib/helpers/{field-group-utils.js → field-group-utils.ts} +9 -10
  83. package/lib/helpers/formatters/Boolean.ts +21 -0
  84. package/lib/helpers/formatters/{Currency.js → Currency.ts} +22 -27
  85. package/lib/helpers/formatters/CurrencyMap.ts +915 -0
  86. package/lib/helpers/formatters/{Date.js → Date.ts} +20 -26
  87. package/lib/helpers/formatters/{common.js → common.ts} +3 -4
  88. package/lib/helpers/formatters/{index.js → index.ts} +22 -22
  89. package/lib/helpers/{reactContextHelpers.js → reactContextHelpers.ts} +2 -2
  90. package/lib/helpers/simpleTableHelpers.ts +65 -85
  91. package/lib/helpers/state-utils.tsx +43 -0
  92. package/lib/helpers/template-utils.ts +4 -8
  93. package/lib/helpers/utils.ts +16 -8
  94. package/lib/helpers/versionHelpers.ts +1 -5
  95. package/lib/infra/ActionButtons/ActionButtons.tsx +46 -42
  96. package/lib/infra/ActionButtons/index.tsx +1 -1
  97. package/lib/infra/Assignment/Assignment.tsx +99 -84
  98. package/lib/infra/Assignment/index.tsx +1 -1
  99. package/lib/infra/AssignmentCard/AssignmentCard.tsx +19 -26
  100. package/lib/infra/AssignmentCard/index.tsx +1 -1
  101. package/lib/infra/Containers/FlowContainer/FlowContainer.tsx +98 -232
  102. package/lib/infra/Containers/FlowContainer/helpers.ts +138 -0
  103. package/lib/infra/Containers/FlowContainer/index.tsx +1 -1
  104. package/lib/infra/Containers/ModalViewContainer/ListViewActionButtons/ListViewActionButtons.tsx +66 -0
  105. package/lib/infra/Containers/ModalViewContainer/ListViewActionButtons/index.tsx +1 -0
  106. package/lib/infra/Containers/ModalViewContainer/ModalViewContainer.tsx +105 -70
  107. package/lib/infra/Containers/ModalViewContainer/index.tsx +1 -1
  108. package/lib/infra/Containers/SimpleView/SimpleView.tsx +48 -0
  109. package/lib/infra/Containers/SimpleView/helper.ts +125 -0
  110. package/lib/infra/Containers/SimpleView/index.tsx +1 -0
  111. package/lib/infra/Containers/ViewContainer/ViewContainer.tsx +49 -64
  112. package/lib/infra/Containers/helpers.ts +6 -0
  113. package/lib/infra/DashboardFilter/DashboardFilter.tsx +26 -51
  114. package/lib/infra/DashboardFilter/filterUtils.tsx +12 -40
  115. package/lib/infra/DeferLoad/DeferLoad.tsx +22 -31
  116. package/lib/infra/DeferLoad/index.tsx +1 -1
  117. package/lib/infra/ErrorBoundary/ErrorBoundary.tsx +25 -38
  118. package/lib/infra/MultiStep/MultiStep.css +11 -15
  119. package/lib/infra/MultiStep/MultiStep.tsx +180 -216
  120. package/lib/infra/MultiStep/index.tsx +1 -1
  121. package/lib/infra/NavBar/NavBar.css +103 -105
  122. package/lib/infra/NavBar/NavBar.tsx +28 -43
  123. package/lib/infra/Reference/Reference.tsx +16 -22
  124. package/lib/infra/Region/Region.tsx +9 -9
  125. package/lib/infra/RootContainer/RootContainer.tsx +82 -125
  126. package/lib/infra/RootContainer/index.tsx +1 -1
  127. package/lib/infra/Stages/Stages.tsx +38 -39
  128. package/lib/infra/VerticalTabs/LeftAlignVerticalTabs/LeftAlignVerticalTabs.tsx +17 -10
  129. package/lib/infra/VerticalTabs/VerticalTabs/VerticalTabs.tsx +29 -36
  130. package/lib/infra/View/View.tsx +34 -65
  131. package/lib/template/AppShell/AppShell.css +22 -23
  132. package/lib/template/AppShell/AppShell.tsx +51 -69
  133. package/lib/template/BannerPage/BannerPage.tsx +26 -33
  134. package/lib/template/CaseSummary/CaseSummary.tsx +23 -18
  135. package/lib/template/CaseSummary/config-ext.json +1 -2
  136. package/lib/template/CaseView/CaseView.tsx +122 -114
  137. package/lib/template/CaseView/config-ext.json +1 -2
  138. package/lib/template/CaseViewActionsMenu/CaseViewActionsMenu.tsx +46 -35
  139. package/lib/template/Confirmation/Confirmation.tsx +25 -53
  140. package/lib/template/Confirmation/config-ext.json +1 -2
  141. package/lib/template/DataReference/DataReference.tsx +112 -140
  142. package/lib/template/DataReference/config-ext.json +1 -2
  143. package/lib/template/DefaultForm/DefaultForm.css +7 -3
  144. package/lib/template/DefaultForm/DefaultForm.tsx +26 -20
  145. package/lib/template/DefaultForm/config-ext.json +1 -2
  146. package/lib/template/DefaultForm/utils/index.ts +33 -0
  147. package/lib/template/Details/Details/Details.tsx +24 -28
  148. package/lib/template/Details/DetailsSubTabs/DetailsSubTabs.tsx +15 -22
  149. package/lib/template/Details/DetailsSubTabs/config-ext.json +1 -2
  150. package/lib/template/Details/DetailsThreeColumn/DetailsThreeColumn.tsx +25 -29
  151. package/lib/template/Details/DetailsThreeColumn/config-ext.json +1 -2
  152. package/lib/template/Details/DetailsTwoColumn/DetailsTwoColumn.tsx +25 -29
  153. package/lib/template/Details/DetailsTwoColumn/config-ext.json +1 -2
  154. package/lib/template/Details/DetailsTwoColumn/index.tsx +1 -1
  155. package/lib/template/Details/DynamicTabs/DynamicTabs.tsx +79 -0
  156. package/lib/template/Details/DynamicTabs/config.json +36 -0
  157. package/lib/template/Details/DynamicTabs/index.tsx +1 -0
  158. package/lib/template/FieldGroupTemplate/FieldGroupTemplate.tsx +24 -34
  159. package/lib/template/InlineDashboard/InlineDashboard.tsx +16 -14
  160. package/lib/template/InlineDashboardPage/InlineDashboardPage.tsx +19 -21
  161. package/lib/template/ListPage/ListPage.tsx +12 -16
  162. package/lib/template/ListPage/config-ext.json +1 -2
  163. package/lib/template/ListView/{DefaultViewMeta.js → DefaultViewMeta.ts} +1 -3
  164. package/lib/template/ListView/ListView.tsx +245 -306
  165. package/lib/template/ListView/config-ext.json +1 -2
  166. package/lib/template/ListView/{hooks.js → hooks.ts} +24 -24
  167. package/lib/template/ListView/{utils.js → utils.ts} +202 -91
  168. package/lib/template/MultiReferenceReadOnly/MultiReferenceReadOnly.tsx +25 -30
  169. package/lib/template/NarrowWide/NarrowWide/NarrowWide.css +0 -2
  170. package/lib/template/NarrowWide/NarrowWide/NarrowWide.tsx +31 -29
  171. package/lib/template/NarrowWide/NarrowWideDetails/NarrowWideDetails.tsx +27 -31
  172. package/lib/template/NarrowWide/NarrowWideDetails/config-ext.json +1 -2
  173. package/lib/template/NarrowWide/NarrowWideForm/NarrowWideForm.css +0 -2
  174. package/lib/template/NarrowWide/NarrowWideForm/NarrowWideForm.tsx +17 -19
  175. package/lib/template/NarrowWide/NarrowWideForm/config-ext.json +1 -2
  176. package/lib/template/NarrowWide/NarrowWidePage/NarrowWidePage.tsx +16 -26
  177. package/lib/template/NarrowWide/NarrowWidePage/config-ext.json +1 -2
  178. package/lib/template/OneColumn/OneColumn/OneColumn.tsx +17 -17
  179. package/lib/template/OneColumn/OneColumn/config-ext.json +1 -2
  180. package/lib/template/OneColumn/OneColumnPage/OneColumnPage.tsx +9 -16
  181. package/lib/template/OneColumn/OneColumnPage/config-ext.json +1 -2
  182. package/lib/template/OneColumn/OneColumnTab/OneColumnTab.tsx +8 -14
  183. package/lib/template/OneColumn/OneColumnTab/config-ext.json +1 -2
  184. package/lib/template/PromotedFilters/PromotedFilters.css +1 -1
  185. package/lib/template/PromotedFilters/PromotedFilters.tsx +44 -34
  186. package/lib/template/SimpleTable/SimpleTable/SimpleTable.tsx +115 -14
  187. package/lib/template/SimpleTable/SimpleTable/config-ext.json +1 -2
  188. package/lib/template/SimpleTable/SimpleTableManual/SimpleTableManual.tsx +171 -100
  189. package/lib/template/SimpleTable/SimpleTableSelect/SimpleTableSelect.tsx +34 -40
  190. package/lib/template/SingleReferenceReadOnly/SingleReferenceReadOnly.tsx +45 -48
  191. package/lib/template/SubTabs/SubTabs.tsx +26 -45
  192. package/lib/template/SubTabs/config-ext.json +1 -2
  193. package/lib/template/SubTabs/tabUtils.ts +2 -7
  194. package/lib/template/TwoColumn/TwoColumn/TwoColumn.css +0 -1
  195. package/lib/template/TwoColumn/TwoColumn/TwoColumn.tsx +33 -36
  196. package/lib/template/TwoColumn/TwoColumn/config-ext.json +1 -2
  197. package/lib/template/TwoColumn/TwoColumnPage/TwoColumnPage.tsx +9 -16
  198. package/lib/template/TwoColumn/TwoColumnPage/config-ext.json +1 -2
  199. package/lib/template/TwoColumn/TwoColumnTab/TwoColumnTab.tsx +33 -33
  200. package/lib/template/TwoColumn/TwoColumnTab/config-ext.json +1 -2
  201. package/lib/template/WideNarrow/WideNarrow/WideNarrow.css +0 -2
  202. package/lib/template/WideNarrow/WideNarrow/WideNarrow.tsx +29 -27
  203. package/lib/template/WideNarrow/WideNarrowDetails/WideNarrowDetails.tsx +39 -33
  204. package/lib/template/WideNarrow/WideNarrowDetails/config-ext.json +1 -2
  205. package/lib/template/WideNarrow/WideNarrowForm/WideNarrowForm.css +0 -2
  206. package/lib/template/WideNarrow/WideNarrowForm/WideNarrowForm.tsx +16 -18
  207. package/lib/template/WideNarrow/WideNarrowForm/config-ext.json +1 -2
  208. package/lib/template/WideNarrow/WideNarrowPage/WideNarrowPage.tsx +15 -25
  209. package/lib/template/WideNarrow/WideNarrowPage/config-ext.json +1 -2
  210. package/lib/template/WideNarrow/WideNarrowPage/index.tsx +1 -1
  211. package/lib/template/WssNavBar/WssNavBar.tsx +33 -17
  212. package/lib/widget/AppAnnouncement/AppAnnouncement.tsx +34 -41
  213. package/lib/widget/AppAnnouncement/config-ext.json +1 -2
  214. package/lib/widget/Attachment/Attachment.css +75 -4
  215. package/lib/widget/Attachment/Attachment.tsx +370 -388
  216. package/lib/widget/Attachment/index.tsx +1 -1
  217. package/lib/widget/CaseHistory/CaseHistory.tsx +67 -67
  218. package/lib/widget/CaseHistory/config-ext.json +1 -2
  219. package/lib/widget/CaseHistory/index.tsx +1 -1
  220. package/lib/widget/FileUtility/ActionButtonsForFileUtil/ActionButtonsForFileUtil.tsx +19 -9
  221. package/lib/widget/FileUtility/FileUtility/FileUtility.css +2 -2
  222. package/lib/widget/FileUtility/FileUtility/FileUtility.tsx +324 -246
  223. package/lib/widget/FileUtility/FileUtility/config-ext.json +1 -2
  224. package/lib/widget/Followers/Followers.tsx +27 -25
  225. package/lib/widget/Followers/config-ext.json +1 -2
  226. package/lib/widget/QuickCreate/QuickCreate.tsx +24 -16
  227. package/lib/widget/SummaryItem/SummaryItem.css +9 -9
  228. package/lib/widget/SummaryItem/SummaryItem.tsx +62 -54
  229. package/lib/widget/SummaryItem/index.tsx +1 -1
  230. package/lib/widget/SummaryList/SummaryList.tsx +15 -4
  231. package/lib/widget/ToDo/ToDo.css +4 -4
  232. package/lib/widget/ToDo/ToDo.tsx +80 -116
  233. package/lib/widget/ToDo/config-ext.json +1 -2
  234. package/package.json +5 -2
  235. package/lib/helpers/auth.js +0 -483
  236. package/lib/helpers/authManager.js +0 -631
  237. package/lib/helpers/config_access.js +0 -268
  238. package/lib/helpers/formatters/Boolean.js +0 -38
  239. package/lib/helpers/formatters/CurrencyMap.js +0 -908
  240. package/lib/infra/Containers/FlowContainer/helpers.js +0 -147
@@ -1 +1 @@
1
- export { default } from './Attachment';
1
+ export { default } from './Attachment';
@@ -1,5 +1,4 @@
1
- import React, { useState, useRef, useEffect } from "react";
2
- import PropTypes from "prop-types";
1
+ import { useEffect, useRef, useState } from 'react';
3
2
  import { withStyles, Theme, createStyles } from '@material-ui/core/styles';
4
3
  import Table from '@material-ui/core/Table';
5
4
  import TableBody from '@material-ui/core/TableBody';
@@ -8,68 +7,81 @@ import TableContainer from '@material-ui/core/TableContainer';
8
7
  import TableHead from '@material-ui/core/TableHead';
9
8
  import TableRow from '@material-ui/core/TableRow';
10
9
  import isDeepEqual from 'fast-deep-equal/react';
11
- import { Utils } from '@pega/react-sdk-components/lib/components/helpers/utils';
12
10
 
13
- declare const PCore;
11
+ import { Utils } from '@pega/react-sdk-components/lib/components/helpers/utils';
12
+ import { PConnProps } from '@pega/react-sdk-components/lib/types/PConnProps';
14
13
 
14
+ interface CaseHistoryProps extends PConnProps {
15
+ // If any, enter additional props that only exist on this component
16
+ }
15
17
 
16
18
  const StyledTableCell = withStyles((theme: Theme) =>
17
19
  createStyles({
18
20
  head: {
19
- borderWidth: "1px",
20
- borderStyle: "solid",
21
- borderColor: "silver",
21
+ borderWidth: '1px',
22
+ borderStyle: 'solid',
23
+ borderColor: 'silver',
22
24
  backgroundColor: theme.palette.text.disabled,
23
- color: theme.palette.getContrastText(theme.palette.text.disabled),
25
+ color: theme.palette.getContrastText(theme.palette.text.disabled)
24
26
  },
25
27
  body: {
26
- borderWidth: "1px",
27
- borderStyle: "solid",
28
- borderColor: "silver",
28
+ borderWidth: '1px',
29
+ borderStyle: 'solid',
30
+ borderColor: 'silver'
29
31
  // fontSize: 14,
30
- },
31
- }),
32
+ }
33
+ })
32
34
  )(TableCell);
33
35
 
34
-
35
- export default function CaseHistory(props) {
36
+ export default function CaseHistory(props: CaseHistoryProps) {
36
37
  const { getPConnect } = props;
37
38
  const thePConn = getPConnect();
38
39
  // let waitingForData = true;
39
40
 
40
41
  const displayedColumns = [
41
- { label: "Date", type: "DateTime", fieldName: "pxTimeCreated" },
42
- { label: "Description", type: "TextInput", fieldName: "pyMessageKey" },
43
- { label: "User", type: "TextInput", fieldName: "pyPerformer" }
44
- ];
42
+ {
43
+ label: thePConn.getLocalizedValue('Date', '', ''),
44
+ type: 'DateTime',
45
+ fieldName: 'pxTimeCreated'
46
+ }, // 2nd and 3rd args empty string until typedef marked correctly
47
+ {
48
+ label: thePConn.getLocalizedValue('Description', '', ''),
49
+ type: 'TextInput',
50
+ fieldName: 'pyMessageKey'
51
+ }, // 2nd and 3rd args empty string until typedef marked correctly
52
+ {
53
+ label: thePConn.getLocalizedValue('Performed by', '', ''),
54
+ type: 'TextInput',
55
+ fieldName: 'pyPerformer'
56
+ } // 2nd and 3rd args empty string until typedef marked correctly
57
+ ];
45
58
 
46
59
  const rowData: any = useRef([]);
47
- // eslint-disable-next-line no-unused-vars, @typescript-eslint/no-unused-vars
60
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
48
61
  const [waitingForData, setWaitingForData] = useState<boolean>(true);
49
62
 
50
-
51
- const caseID = thePConn.getValue(PCore.getConstants().CASE_INFO.CASE_INFO_ID);
52
- const dataViewName = "D_pyWorkHistory";
63
+ const caseID = thePConn.getValue(PCore.getConstants().CASE_INFO.CASE_INFO_ID, ''); // 2nd arg empty string until typedef marked correctly
64
+ const dataViewName = 'D_pyWorkHistory';
53
65
  const context = thePConn.getContextName();
54
66
 
55
-
56
- function computeRowData(rows: Array<Object>): void {
57
- const theRowData: Array<Object> = [];
67
+ function computeRowData(rows: Object[]): void {
68
+ const theRowData: Object[] = [];
58
69
 
59
70
  rows.forEach((row: any, rowIndex: number) => {
60
71
  // Now, for each property in the index of row properties (displayedColumns), add an object
61
72
  // to a new array of values
62
73
  const rowDisplayValues: any = [];
63
74
 
64
- displayedColumns.forEach((column: Object, rowValIndex) => {
65
- const theType = column["type"];
66
- const theFieldName = column["fieldName"];
67
- const theValue = ((theType === "Date" || theType === "DateTime")) ? Utils.generateDateTime(row[theFieldName], "DateTime-Short") : row[theFieldName];
75
+ displayedColumns.forEach((column: any, rowValIndex) => {
76
+ const theType = column.type;
77
+ const theFieldName = column.fieldName;
78
+ const theValue =
79
+ theType === 'Date' || theType === 'DateTime' ? Utils.generateDateTime(row[theFieldName], 'DateTime-Short') : row[theFieldName];
68
80
  rowDisplayValues[rowValIndex] = theValue;
69
81
  });
70
82
 
71
83
  theRowData[rowIndex] = rowDisplayValues;
72
- })
84
+ });
73
85
 
74
86
  if (!isDeepEqual(theRowData, rowData.current)) {
75
87
  // Only update rowData.current when it actually changes (to prevent infinite loop)
@@ -78,18 +90,17 @@ export default function CaseHistory(props) {
78
90
  }
79
91
 
80
92
  // Get the case history data when component mounted/initialized
81
- useEffect( () => {
82
-
93
+ useEffect(() => {
83
94
  let bCallSetWaitingForData = true;
84
95
 
85
96
  const historyData = PCore.getDataApiUtils().getData(
86
- dataViewName, `{"dataViewParameters":[{"CaseInstanceKey":"${caseID}"}]}`,
97
+ dataViewName,
98
+ { dataViewParameters: [{ CaseInstanceKey: caseID }] } as any,
87
99
  context
88
- );
89
-
90
- historyData.then( (historyJSON: Object) => {
100
+ ) as Promise<any>;
91
101
 
92
- const tableDataResults = historyJSON["data"].data;
102
+ historyData.then((historyJSON: any) => {
103
+ const tableDataResults = historyJSON.data.data;
93
104
 
94
105
  // compute the rowData using the tableDataResults
95
106
  computeRowData(tableDataResults);
@@ -99,7 +110,6 @@ export default function CaseHistory(props) {
99
110
  if (bCallSetWaitingForData) {
100
111
  setWaitingForData(false);
101
112
  }
102
-
103
113
  });
104
114
 
105
115
  return () => {
@@ -110,38 +120,36 @@ export default function CaseHistory(props) {
110
120
  // So, if this cleanup code gets run before the promise .then is called,
111
121
  // we can avoid calling the useState setter which would otherwise show a warning
112
122
  bCallSetWaitingForData = false;
113
- }
114
-
123
+ };
115
124
  }, []);
116
125
 
117
-
118
126
  function getTableHeader() {
119
- const theRowKey = "CaseHistory.TableHeader";
127
+ const theRowKey = 'CaseHistory.TableHeader';
120
128
 
121
- const theHeaderCells: Array<any> = displayedColumns.map((headerCol, index) => {
129
+ const theHeaderCells: any[] = displayedColumns.map((headerCol, index) => {
122
130
  const theCellKey = `${theRowKey}.${index}`;
123
- return <StyledTableCell key={theCellKey}>{headerCol.label}</StyledTableCell>
124
- })
131
+ return <StyledTableCell key={theCellKey}>{headerCol.label}</StyledTableCell>;
132
+ });
125
133
 
126
134
  return <TableRow key={theRowKey}>{theHeaderCells}</TableRow>;
127
135
  }
128
136
 
129
-
130
137
  function getTableData() {
131
- const theDataRows: Array<any> = [];
138
+ const theDataRows: any[] = [];
132
139
 
133
140
  // Note: using rowData.current since we're using useRef as a mutatable
134
141
  // value that's only updated when it changes.
135
142
  if (rowData.current.length > 0) {
136
- rowData.current.forEach((dataRow: Array<Object>, index) => {
143
+ rowData.current.forEach((dataRow: Object[], index) => {
137
144
  // using dataRow[0]-dataRow[1] as the array key since it's a unique value
138
145
  const theKey = `CaseHistory-${index}`;
139
- theDataRows.push( <TableRow key={theKey}>
140
- <StyledTableCell>{dataRow[0] ? dataRow[0] : "---"}</StyledTableCell>
141
- <StyledTableCell>{dataRow[1] ? dataRow[1] : "---"}</StyledTableCell>
142
- <StyledTableCell>{dataRow[2] ? dataRow[2] : "---"}</StyledTableCell>
143
- </TableRow>
144
- )
146
+ theDataRows.push(
147
+ <TableRow key={theKey}>
148
+ <StyledTableCell>{dataRow[0] ? dataRow[0] : '---'}</StyledTableCell>
149
+ <StyledTableCell>{dataRow[1] ? dataRow[1] : '---'}</StyledTableCell>
150
+ <StyledTableCell>{dataRow[2] ? dataRow[2] : '---'}</StyledTableCell>
151
+ </TableRow>
152
+ );
145
153
  });
146
154
  }
147
155
 
@@ -149,21 +157,13 @@ export default function CaseHistory(props) {
149
157
  }
150
158
 
151
159
  return (
152
- <div id="CaseHistory">
160
+ <div id='CaseHistory'>
153
161
  <TableContainer>
154
162
  <Table>
155
- <TableHead>
156
- {getTableHeader()}
157
- </TableHead>
158
- <TableBody>
159
- {getTableData()}
160
- </TableBody>
163
+ <TableHead>{getTableHeader()}</TableHead>
164
+ <TableBody>{getTableData()}</TableBody>
161
165
  </Table>
162
166
  </TableContainer>
163
167
  </div>
164
- )
168
+ );
165
169
  }
166
-
167
- CaseHistory.propTypes = {
168
- getPConnect: PropTypes.func.isRequired
169
- };
@@ -4,6 +4,5 @@
4
4
  "description": "Case history widget",
5
5
  "type": "Widget",
6
6
  "subtype": "CASE",
7
- "properties": [
8
- ]
7
+ "properties": []
9
8
  }
@@ -1 +1 @@
1
- export { default } from './CaseHistory';
1
+ export { default } from './CaseHistory';
@@ -1,22 +1,32 @@
1
- import React from "react";
2
1
  import { Button } from '@material-ui/core';
2
+ import { PConnProps } from '@pega/react-sdk-components/lib/types/PConnProps';
3
3
  import './ActionButtonsForFileUtil.css';
4
4
 
5
- export default function ActionButtonsForFileUtil(props) {
5
+ interface ActionButtonsForFileUtilProps extends PConnProps {
6
+ // If any, enter additional props that only exist on this component
7
+ arMainButtons: any[];
8
+ arSecondaryButtons: any[];
9
+ primaryAction: any;
10
+ secondaryAction: any;
11
+ }
6
12
 
13
+ export default function ActionButtonsForFileUtil(props: ActionButtonsForFileUtilProps) {
7
14
  return (
8
- <div className="psdk-actions">
9
- <div className="psdk-action-buttons">
15
+ <div className='psdk-actions'>
16
+ <div className='psdk-action-buttons'>
10
17
  {props.arSecondaryButtons.map(file => (
11
- <Button className="secondary-button" key={file.actionID} onClick={props.secondaryAction}>{file.name}</Button>
18
+ <Button className='secondary-button' key={file.actionID} onClick={props.secondaryAction}>
19
+ {file.name}
20
+ </Button>
12
21
  ))}
13
22
  </div>
14
- <div className="psdk-action-buttons">
23
+ <div className='psdk-action-buttons'>
15
24
  {props.arMainButtons.map(file => (
16
- <Button className="primary-button" key={file.actionID} onClick={props.primaryAction}>{file.name}</Button>
25
+ <Button className='primary-button' key={file.actionID} onClick={props.primaryAction}>
26
+ {file.name}
27
+ </Button>
17
28
  ))}
18
29
  </div>
19
30
  </div>
20
- )
21
-
31
+ );
22
32
  }
@@ -40,7 +40,7 @@
40
40
  align-items: center;
41
41
  height: 100%;
42
42
  width: 100%;
43
- background-color: rgba(100,100,100, 0.4);
43
+ background-color: rgba(100, 100, 100, 0.4);
44
44
  position: fixed;
45
45
  z-index: 999;
46
46
  top: 0px;
@@ -62,7 +62,7 @@
62
62
  border: 1px dashed;
63
63
  width: 100%;
64
64
  padding: 0.3rem;
65
- text-align: center;;
65
+ text-align: center;
66
66
  }
67
67
 
68
68
  .psdk-modal-links-row {