@pega/react-sdk-components 8.23.10 → 8.23.11-debug

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 (262) hide show
  1. package/lib/bridge/Context/StoreContext.d.ts +3 -2
  2. package/lib/bridge/Context/StoreContext.d.ts.map +1 -1
  3. package/lib/bridge/Context/StoreContext.js +2 -3
  4. package/lib/bridge/Context/StoreContext.js.map +1 -1
  5. package/lib/bridge/helpers/sdk_component_map.d.ts +1 -0
  6. package/lib/bridge/helpers/sdk_component_map.d.ts.map +1 -1
  7. package/lib/bridge/helpers/sdk_component_map.js +22 -0
  8. package/lib/bridge/helpers/sdk_component_map.js.map +1 -1
  9. package/lib/bridge/react_pconnect.d.ts.map +1 -1
  10. package/lib/bridge/react_pconnect.js +2 -14
  11. package/lib/bridge/react_pconnect.js.map +1 -1
  12. package/lib/components/designSystemExtension/AlertBanner/AlertBanner.d.ts +13 -0
  13. package/lib/components/designSystemExtension/AlertBanner/AlertBanner.d.ts.map +1 -0
  14. package/lib/components/designSystemExtension/AlertBanner/AlertBanner.js +26 -0
  15. package/lib/components/designSystemExtension/AlertBanner/AlertBanner.js.map +1 -0
  16. package/lib/components/designSystemExtension/AlertBanner/index.d.ts +2 -0
  17. package/lib/components/designSystemExtension/AlertBanner/index.d.ts.map +1 -0
  18. package/lib/components/designSystemExtension/AlertBanner/index.js +2 -0
  19. package/lib/components/designSystemExtension/AlertBanner/index.js.map +1 -0
  20. package/lib/components/designSystemExtension/FieldGroupList/FieldGroupList.d.ts.map +1 -1
  21. package/lib/components/designSystemExtension/FieldGroupList/FieldGroupList.js +1 -1
  22. package/lib/components/designSystemExtension/FieldGroupList/FieldGroupList.js.map +1 -1
  23. package/lib/components/designSystemExtension/Operator/Operator.d.ts.map +1 -1
  24. package/lib/components/designSystemExtension/Operator/Operator.js +12 -10
  25. package/lib/components/designSystemExtension/Operator/Operator.js.map +1 -1
  26. package/lib/components/designSystemExtension/WssQuickCreate/WssQuickCreate.js +2 -2
  27. package/lib/components/designSystemExtension/WssQuickCreate/WssQuickCreate.js.map +1 -1
  28. package/lib/components/field/CancelAlert/CancelAlert.d.ts.map +1 -1
  29. package/lib/components/field/CancelAlert/CancelAlert.js +9 -7
  30. package/lib/components/field/CancelAlert/CancelAlert.js.map +1 -1
  31. package/lib/components/field/Checkbox/Checkbox.d.ts.map +1 -1
  32. package/lib/components/field/Checkbox/Checkbox.js +3 -3
  33. package/lib/components/field/Checkbox/Checkbox.js.map +1 -1
  34. package/lib/components/field/Currency/currency-utils.d.ts +1 -1
  35. package/lib/components/field/Currency/currency-utils.d.ts.map +1 -1
  36. package/lib/components/field/Currency/currency-utils.js.map +1 -1
  37. package/lib/components/field/Date/Date.d.ts.map +1 -1
  38. package/lib/components/field/Date/Date.js +11 -5
  39. package/lib/components/field/Date/Date.js.map +1 -1
  40. package/lib/components/field/DateTime/DateTime.js +1 -1
  41. package/lib/components/field/DateTime/DateTime.js.map +1 -1
  42. package/lib/components/field/Decimal/Decimal.d.ts.map +1 -1
  43. package/lib/components/field/Decimal/Decimal.js +41 -8
  44. package/lib/components/field/Decimal/Decimal.js.map +1 -1
  45. package/lib/components/field/Dropdown/Dropdown.d.ts.map +1 -1
  46. package/lib/components/field/Dropdown/Dropdown.js +21 -7
  47. package/lib/components/field/Dropdown/Dropdown.js.map +1 -1
  48. package/lib/components/field/Phone/Phone.d.ts.map +1 -1
  49. package/lib/components/field/Phone/Phone.js +2 -1
  50. package/lib/components/field/Phone/Phone.js.map +1 -1
  51. package/lib/components/field/RadioButtons/RadioButtons.d.ts.map +1 -1
  52. package/lib/components/field/RadioButtons/RadioButtons.js +17 -4
  53. package/lib/components/field/RadioButtons/RadioButtons.js.map +1 -1
  54. package/lib/components/field/SemanticLink/utils.d.ts.map +1 -1
  55. package/lib/components/field/SemanticLink/utils.js.map +1 -1
  56. package/lib/components/field/TextInput/TextInput.d.ts.map +1 -1
  57. package/lib/components/field/TextInput/TextInput.js +20 -3
  58. package/lib/components/field/TextInput/TextInput.js.map +1 -1
  59. package/lib/components/field/Time/Time.d.ts.map +1 -1
  60. package/lib/components/field/Time/Time.js +6 -2
  61. package/lib/components/field/Time/Time.js.map +1 -1
  62. package/lib/components/field/URL/URL.d.ts.map +1 -1
  63. package/lib/components/field/URL/URL.js +6 -2
  64. package/lib/components/field/URL/URL.js.map +1 -1
  65. package/lib/components/field/UserReference/UserReference.d.ts.map +1 -1
  66. package/lib/components/field/UserReference/UserReference.js.map +1 -1
  67. package/lib/components/helpers/attachmentHelpers.d.ts +5 -5
  68. package/lib/components/helpers/attachmentHelpers.d.ts.map +1 -1
  69. package/lib/components/helpers/attachmentHelpers.js +2 -2
  70. package/lib/components/helpers/attachmentHelpers.js.map +1 -1
  71. package/lib/components/helpers/auth.d.ts.map +1 -1
  72. package/lib/components/helpers/auth.js +11 -3
  73. package/lib/components/helpers/auth.js.map +1 -1
  74. package/lib/components/helpers/authManager.d.ts.map +1 -1
  75. package/lib/components/helpers/authManager.js +15 -12
  76. package/lib/components/helpers/authManager.js.map +1 -1
  77. package/lib/components/helpers/case-utils.d.ts +20 -0
  78. package/lib/components/helpers/case-utils.d.ts.map +1 -0
  79. package/lib/components/helpers/case-utils.js +81 -0
  80. package/lib/components/helpers/case-utils.js.map +1 -0
  81. package/lib/components/helpers/common-utils.d.ts +2 -0
  82. package/lib/components/helpers/common-utils.d.ts.map +1 -0
  83. package/lib/components/helpers/common-utils.js +5 -0
  84. package/lib/components/helpers/common-utils.js.map +1 -0
  85. package/lib/components/helpers/config_access.d.ts.map +1 -1
  86. package/lib/components/helpers/config_access.js +75 -82
  87. package/lib/components/helpers/config_access.js.map +1 -1
  88. package/lib/components/helpers/data_page.d.ts.map +1 -1
  89. package/lib/components/helpers/data_page.js.map +1 -1
  90. package/lib/components/helpers/date-format-utils.d.ts.map +1 -1
  91. package/lib/components/helpers/date-format-utils.js +23 -14
  92. package/lib/components/helpers/date-format-utils.js.map +1 -1
  93. package/lib/components/helpers/event-utils.d.ts +1 -1
  94. package/lib/components/helpers/event-utils.d.ts.map +1 -1
  95. package/lib/components/helpers/event-utils.js.map +1 -1
  96. package/lib/components/helpers/field-group-utils.d.ts +15 -2
  97. package/lib/components/helpers/field-group-utils.d.ts.map +1 -1
  98. package/lib/components/helpers/field-group-utils.js +3 -3
  99. package/lib/components/helpers/field-group-utils.js.map +1 -1
  100. package/lib/components/helpers/formatters/Boolean.d.ts +3 -3
  101. package/lib/components/helpers/formatters/Boolean.d.ts.map +1 -1
  102. package/lib/components/helpers/formatters/Boolean.js.map +1 -1
  103. package/lib/components/helpers/formatters/Currency.d.ts.map +1 -1
  104. package/lib/components/helpers/formatters/Currency.js +4 -3
  105. package/lib/components/helpers/formatters/Currency.js.map +1 -1
  106. package/lib/components/helpers/formatters/CurrencyMap.d.ts +1132 -1399
  107. package/lib/components/helpers/formatters/CurrencyMap.d.ts.map +1 -1
  108. package/lib/components/helpers/formatters/CurrencyMap.js.map +1 -1
  109. package/lib/components/helpers/formatters/Date.d.ts.map +1 -1
  110. package/lib/components/helpers/formatters/Date.js +1 -1
  111. package/lib/components/helpers/formatters/Date.js.map +1 -1
  112. package/lib/components/helpers/formatters/common.d.ts +2 -2
  113. package/lib/components/helpers/formatters/common.d.ts.map +1 -1
  114. package/lib/components/helpers/formatters/common.js +4 -5
  115. package/lib/components/helpers/formatters/common.js.map +1 -1
  116. package/lib/components/helpers/formatters/index.d.ts +1 -1
  117. package/lib/components/helpers/formatters/index.d.ts.map +1 -1
  118. package/lib/components/helpers/formatters/index.js.map +1 -1
  119. package/lib/components/helpers/reactContextHelpers.d.ts +3 -2
  120. package/lib/components/helpers/reactContextHelpers.d.ts.map +1 -1
  121. package/lib/components/helpers/reactContextHelpers.js.map +1 -1
  122. package/lib/components/helpers/simpleTableHelpers.d.ts +2 -2
  123. package/lib/components/helpers/simpleTableHelpers.d.ts.map +1 -1
  124. package/lib/components/helpers/simpleTableHelpers.js +5 -2
  125. package/lib/components/helpers/simpleTableHelpers.js.map +1 -1
  126. package/lib/components/helpers/state-utils.d.ts +4 -0
  127. package/lib/components/helpers/state-utils.d.ts.map +1 -0
  128. package/lib/components/helpers/state-utils.js +36 -0
  129. package/lib/components/helpers/state-utils.js.map +1 -0
  130. package/lib/components/helpers/template-utils.d.ts.map +1 -1
  131. package/lib/components/helpers/template-utils.js +0 -1
  132. package/lib/components/helpers/template-utils.js.map +1 -1
  133. package/lib/components/helpers/utils.d.ts +1 -1
  134. package/lib/components/helpers/utils.d.ts.map +1 -1
  135. package/lib/components/helpers/utils.js +9 -3
  136. package/lib/components/helpers/utils.js.map +1 -1
  137. package/lib/components/helpers/versionHelpers.d.ts +0 -6
  138. package/lib/components/helpers/versionHelpers.d.ts.map +1 -1
  139. package/lib/components/helpers/versionHelpers.js +0 -6
  140. package/lib/components/helpers/versionHelpers.js.map +1 -1
  141. package/lib/components/infra/ActionButtons/ActionButtons.d.ts.map +1 -1
  142. package/lib/components/infra/ActionButtons/ActionButtons.js +4 -2
  143. package/lib/components/infra/ActionButtons/ActionButtons.js.map +1 -1
  144. package/lib/components/infra/Assignment/Assignment.d.ts +1 -0
  145. package/lib/components/infra/Assignment/Assignment.d.ts.map +1 -1
  146. package/lib/components/infra/Assignment/Assignment.js +27 -15
  147. package/lib/components/infra/Assignment/Assignment.js.map +1 -1
  148. package/lib/components/infra/Containers/FlowContainer/FlowContainer.d.ts.map +1 -1
  149. package/lib/components/infra/Containers/FlowContainer/FlowContainer.js +17 -9
  150. package/lib/components/infra/Containers/FlowContainer/FlowContainer.js.map +1 -1
  151. package/lib/components/infra/Containers/FlowContainer/helpers.d.ts +12 -12
  152. package/lib/components/infra/Containers/FlowContainer/helpers.d.ts.map +1 -1
  153. package/lib/components/infra/Containers/FlowContainer/helpers.js +17 -16
  154. package/lib/components/infra/Containers/FlowContainer/helpers.js.map +1 -1
  155. package/lib/components/infra/Containers/ModalViewContainer/ModalViewContainer.d.ts.map +1 -1
  156. package/lib/components/infra/Containers/ModalViewContainer/ModalViewContainer.js +17 -8
  157. package/lib/components/infra/Containers/ModalViewContainer/ModalViewContainer.js.map +1 -1
  158. package/lib/components/infra/Containers/ViewContainer/ViewContainer.d.ts.map +1 -1
  159. package/lib/components/infra/Containers/ViewContainer/ViewContainer.js +4 -2
  160. package/lib/components/infra/Containers/ViewContainer/ViewContainer.js.map +1 -1
  161. package/lib/components/infra/DashboardFilter/DashboardFilter.d.ts.map +1 -1
  162. package/lib/components/infra/DashboardFilter/DashboardFilter.js.map +1 -1
  163. package/lib/components/infra/DashboardFilter/filterUtils.d.ts.map +1 -1
  164. package/lib/components/infra/DashboardFilter/filterUtils.js.map +1 -1
  165. package/lib/components/infra/DeferLoad/DeferLoad.d.ts.map +1 -1
  166. package/lib/components/infra/DeferLoad/DeferLoad.js.map +1 -1
  167. package/lib/components/infra/ErrorBoundary/ErrorBoundary.d.ts.map +1 -1
  168. package/lib/components/infra/ErrorBoundary/ErrorBoundary.js +7 -4
  169. package/lib/components/infra/ErrorBoundary/ErrorBoundary.js.map +1 -1
  170. package/lib/components/infra/MultiStep/MultiStep.js +2 -2
  171. package/lib/components/infra/MultiStep/MultiStep.js.map +1 -1
  172. package/lib/components/infra/NavBar/NavBar.d.ts.map +1 -1
  173. package/lib/components/infra/NavBar/NavBar.js +6 -4
  174. package/lib/components/infra/NavBar/NavBar.js.map +1 -1
  175. package/lib/components/infra/RootContainer/RootContainer.d.ts.map +1 -1
  176. package/lib/components/infra/RootContainer/RootContainer.js +12 -15
  177. package/lib/components/infra/RootContainer/RootContainer.js.map +1 -1
  178. package/lib/components/infra/Stages/Stages.d.ts.map +1 -1
  179. package/lib/components/infra/Stages/Stages.js +2 -1
  180. package/lib/components/infra/Stages/Stages.js.map +1 -1
  181. package/lib/components/infra/View/View.d.ts +1 -1
  182. package/lib/components/infra/View/View.d.ts.map +1 -1
  183. package/lib/components/infra/View/View.js +6 -34
  184. package/lib/components/infra/View/View.js.map +1 -1
  185. package/lib/components/template/AppShell/AppShell.d.ts.map +1 -1
  186. package/lib/components/template/AppShell/AppShell.js +8 -8
  187. package/lib/components/template/AppShell/AppShell.js.map +1 -1
  188. package/lib/components/template/CaseView/CaseView.d.ts +1 -1
  189. package/lib/components/template/CaseView/CaseView.d.ts.map +1 -1
  190. package/lib/components/template/CaseView/CaseView.js +37 -28
  191. package/lib/components/template/CaseView/CaseView.js.map +1 -1
  192. package/lib/components/template/CaseViewActionsMenu/CaseViewActionsMenu.d.ts +3 -1
  193. package/lib/components/template/CaseViewActionsMenu/CaseViewActionsMenu.d.ts.map +1 -1
  194. package/lib/components/template/CaseViewActionsMenu/CaseViewActionsMenu.js +13 -8
  195. package/lib/components/template/CaseViewActionsMenu/CaseViewActionsMenu.js.map +1 -1
  196. package/lib/components/template/Confirmation/Confirmation.d.ts.map +1 -1
  197. package/lib/components/template/Confirmation/Confirmation.js.map +1 -1
  198. package/lib/components/template/DataReference/DataReference.d.ts.map +1 -1
  199. package/lib/components/template/DataReference/DataReference.js.map +1 -1
  200. package/lib/components/template/DefaultForm/DefaultForm.d.ts.map +1 -1
  201. package/lib/components/template/DefaultForm/DefaultForm.js +9 -5
  202. package/lib/components/template/DefaultForm/DefaultForm.js.map +1 -1
  203. package/lib/components/template/DefaultForm/utils/index.d.ts +3 -0
  204. package/lib/components/template/DefaultForm/utils/index.d.ts.map +1 -0
  205. package/lib/components/template/DefaultForm/utils/index.js +27 -0
  206. package/lib/components/template/DefaultForm/utils/index.js.map +1 -0
  207. package/lib/components/template/FieldGroupTemplate/FieldGroupTemplate.d.ts.map +1 -1
  208. package/lib/components/template/FieldGroupTemplate/FieldGroupTemplate.js +1 -1
  209. package/lib/components/template/FieldGroupTemplate/FieldGroupTemplate.js.map +1 -1
  210. package/lib/components/template/ListView/DefaultViewMeta.d.ts +1 -90
  211. package/lib/components/template/ListView/DefaultViewMeta.d.ts.map +1 -1
  212. package/lib/components/template/ListView/DefaultViewMeta.js.map +1 -1
  213. package/lib/components/template/ListView/ListView.d.ts.map +1 -1
  214. package/lib/components/template/ListView/ListView.js +1 -1
  215. package/lib/components/template/ListView/ListView.js.map +1 -1
  216. package/lib/components/template/ListView/hooks.d.ts.map +1 -1
  217. package/lib/components/template/ListView/hooks.js +0 -1
  218. package/lib/components/template/ListView/hooks.js.map +1 -1
  219. package/lib/components/template/ListView/utils.d.ts +28 -16
  220. package/lib/components/template/ListView/utils.d.ts.map +1 -1
  221. package/lib/components/template/ListView/utils.js +1 -2
  222. package/lib/components/template/ListView/utils.js.map +1 -1
  223. package/lib/components/template/MultiReferenceReadOnly/MultiReferenceReadOnly.d.ts.map +1 -1
  224. package/lib/components/template/MultiReferenceReadOnly/MultiReferenceReadOnly.js.map +1 -1
  225. package/lib/components/template/PromotedFilters/PromotedFilters.d.ts.map +1 -1
  226. package/lib/components/template/PromotedFilters/PromotedFilters.js +2 -2
  227. package/lib/components/template/PromotedFilters/PromotedFilters.js.map +1 -1
  228. package/lib/components/template/SimpleTable/SimpleTable/SimpleTable.d.ts.map +1 -1
  229. package/lib/components/template/SimpleTable/SimpleTable/SimpleTable.js.map +1 -1
  230. package/lib/components/template/SimpleTable/SimpleTableManual/SimpleTableManual.d.ts.map +1 -1
  231. package/lib/components/template/SimpleTable/SimpleTableManual/SimpleTableManual.js +3 -3
  232. package/lib/components/template/SimpleTable/SimpleTableManual/SimpleTableManual.js.map +1 -1
  233. package/lib/components/template/SimpleTable/SimpleTableSelect/SimpleTableSelect.d.ts.map +1 -1
  234. package/lib/components/template/SimpleTable/SimpleTableSelect/SimpleTableSelect.js.map +1 -1
  235. package/lib/components/template/SubTabs/tabUtils.d.ts.map +1 -1
  236. package/lib/components/template/SubTabs/tabUtils.js.map +1 -1
  237. package/lib/components/template/WssNavBar/WssNavBar.js +2 -2
  238. package/lib/components/template/WssNavBar/WssNavBar.js.map +1 -1
  239. package/lib/components/widget/Attachment/Attachment.css +15 -3
  240. package/lib/components/widget/Attachment/Attachment.d.ts.map +1 -1
  241. package/lib/components/widget/Attachment/Attachment.js +29 -25
  242. package/lib/components/widget/Attachment/Attachment.js.map +1 -1
  243. package/lib/components/widget/CaseHistory/CaseHistory.js +3 -3
  244. package/lib/components/widget/CaseHistory/CaseHistory.js.map +1 -1
  245. package/lib/components/widget/FileUtility/FileUtility/FileUtility.d.ts.map +1 -1
  246. package/lib/components/widget/FileUtility/FileUtility/FileUtility.js +17 -17
  247. package/lib/components/widget/FileUtility/FileUtility/FileUtility.js.map +1 -1
  248. package/lib/components/widget/QuickCreate/QuickCreate.d.ts.map +1 -1
  249. package/lib/components/widget/QuickCreate/QuickCreate.js +2 -2
  250. package/lib/components/widget/QuickCreate/QuickCreate.js.map +1 -1
  251. package/lib/components/widget/SummaryItem/SummaryItem.d.ts.map +1 -1
  252. package/lib/components/widget/SummaryItem/SummaryItem.js +2 -2
  253. package/lib/components/widget/SummaryItem/SummaryItem.js.map +1 -1
  254. package/lib/components/widget/ToDo/ToDo.d.ts.map +1 -1
  255. package/lib/components/widget/ToDo/ToDo.js +10 -6
  256. package/lib/components/widget/ToDo/ToDo.js.map +1 -1
  257. package/lib/components_map.d.ts +3 -3
  258. package/lib/components_map.d.ts.map +1 -1
  259. package/lib/components_map.js +819 -818
  260. package/lib/components_map.js.map +1 -1
  261. package/lib/doc/KeyReleaseUpdates.md +44 -9
  262. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"FlowContainer.js","sourceRoot":"","sources":["../../../../../src/components/infra/Containers/FlowContainer/FlowContainer.tsx"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable no-nested-ternary */\n/* eslint-disable camelcase */\nimport React, { useState, useEffect, useContext, createElement } from 'react';\nimport PropTypes from 'prop-types';\nimport { makeStyles } from '@material-ui/core/styles';\nimport { Card, CardHeader, Avatar, Typography } from '@material-ui/core';\nimport { Utils } from '../../../helpers/utils';\nimport { Alert } from '@material-ui/lab';\n\nimport Assignment from '../../Assignment';\nimport ToDo from '../../../widget/ToDo';\n\nimport createPConnectComponent from '../../../../bridge/react_pconnect';\nimport StoreContext from '../../../../bridge/Context/StoreContext';\nimport DayjsUtils from '@date-io/dayjs';\nimport { MuiPickersUtilsProvider } from '@material-ui/pickers';\n\nimport { addContainerItem, getToDoAssignments, showBanner } from './helpers';\n\ndeclare const PCore;\n\n//\n// WARNING: It is not expected that this file should be modified. It is part of infrastructure code that works with\n// Redux and creation/update of Redux containers and PConnect. Modifying this code could have undesireable results and\n// is totally at your own risk.\n//\n\nconst useStyles = makeStyles(theme => ({\n root: {\n paddingRight: theme.spacing(2),\n paddingLeft: theme.spacing(2),\n paddingTop: theme.spacing(1.5),\n paddingBottom: theme.spacing(1.5),\n marginRight: theme.spacing(1),\n marginLeft: theme.spacing(1),\n marginTop: theme.spacing(1),\n marginBottom: theme.spacing(1)\n },\n alert: {\n marginRight: theme.spacing(1),\n marginLeft: theme.spacing(1)\n },\n avatar: {\n backgroundColor: theme.palette.primary.light,\n color: theme.palette.getContrastText(theme.palette.primary.light)\n }\n}));\n\nexport default function FlowContainer(props) {\n const pCoreConstants = PCore.getConstants();\n const { TODO } = pCoreConstants;\n const todo_headerText = 'To do';\n\n const { getPConnect, routingInfo } = props;\n\n const { displayOnlyFA } = useContext(StoreContext);\n\n const thePConn = getPConnect();\n\n // const [init, setInit] = useState(true);\n // const [fcState, setFCState] = useState({ hasError: false });\n const [arNewChildren, setArNewChildren] = useState<Array<any>>(thePConn.getChildren());\n const [arNewChildrenAsReact, setArNewChildrenAsReact] = useState<Array<any>>([]);\n\n const [todo_showTodo, setShowTodo] = useState(false);\n const [todo_caseInfoID, setCaseInfoID] = useState('');\n const [todo_showTodoList, setShowTodoList] = useState(false);\n const [todo_datasource, setTodoDatasource] = useState({});\n // eslint-disable-next-line @typescript-eslint/no-unused-vars, no-unused-vars\n const [todo_context, setTodoContext] = useState('');\n\n const [caseMessages, setCaseMessages] = useState('');\n const [bHasCaseMessages, setHasCaseMessages] = useState(false);\n // eslint-disable-next-line @typescript-eslint/no-unused-vars, no-unused-vars\n const [checkSvg, setCheckSvg] = useState('');\n\n const [itemKey, setItemKey] = useState('');\n const [containerName, setContainerName] = useState('');\n const [buildName, setBuildName] = useState('');\n const [bShowConfirm, setShowConfirm] = useState(false);\n\n const classes = useStyles();\n\n function initContainer() {\n const ourPConn = getPConnect();\n const containerMgr = ourPConn.getContainerManager();\n const baseContext = ourPConn.getContextName();\n const theContainerName = ourPConn.getContainerName();\n const containerType = 'single';\n\n const flowContainerTarget = `${baseContext}/${theContainerName}`;\n const isContainerItemAvailable =\n PCore.getContainerUtils().getActiveContainerItemName(flowContainerTarget);\n\n window.sessionStorage.setItem('okToInitFlowContainer', 'false');\n\n if (!isContainerItemAvailable) {\n containerMgr.initializeContainers({\n type: containerType\n });\n\n // updated for 8.7 - 30-Mar-2022\n addContainerItem(ourPConn);\n }\n }\n\n function getBuildName(): string {\n const ourPConn = getPConnect();\n\n // let { getPConnect, name } = this.pConn$.pConn;\n const context = ourPConn.getContextName();\n let viewContainerName = ourPConn.getContainerName();\n\n if (!viewContainerName) viewContainerName = '';\n return `${context.toUpperCase()}/${viewContainerName.toUpperCase()}`;\n }\n\n function getTodoVisibility() {\n const caseViewMode = getPConnect().getValue('context_data.caseViewMode');\n if (caseViewMode && caseViewMode === 'review') {\n return true;\n }\n // eslint-disable-next-line sonarjs/prefer-single-boolean-return\n if (caseViewMode && caseViewMode === 'perform') {\n return false;\n }\n\n return true;\n }\n\n function initComponent(bLoadChildren: boolean) {\n const ourPConn = getPConnect();\n\n // when true, update arChildren from pConn, otherwise, arChilren will be updated in updateSelf()\n if (bLoadChildren) {\n setArNewChildren(ourPConn.getChildren());\n }\n\n // debugging/investigation help\n // console.log(`${ourPConn.getComponentName()}: children update for main draw`);\n\n // const oData = ourPConn.getDataObject();\n\n // const activeActionLabel = \"\";\n // const child0_getPConnect = arNewChildren[0].getPConnect();\n\n // this.templateName$ = this.configProps$[\"template\"];\n\n // debugger;\n setShowTodo(getTodoVisibility());\n\n // create pointers to functions\n // const containerMgr = ourPConn.getContainerManager();\n // const actionsAPI = thePConn.getActionsApi();\n const baseContext = ourPConn.getContextName();\n const acName = ourPConn.getContainerName();\n\n // for now, in general this should be overridden by updateSelf(), and not be blank\n if (itemKey === '') {\n // debugger;\n setItemKey(baseContext.concat('/').concat(acName));\n }\n\n ourPConn.isBoundToState();\n\n // inside\n // get fist kid, get the name and displa\n // pass first kid to a view container, which will disperse it to a view which will use one column, two column, etc.\n const oWorkItem = arNewChildren[0].getPConnect(); // child0_getPConnect;\n const oWorkData = oWorkItem.getDataObject();\n\n if (bLoadChildren && oWorkData) {\n // debugger;\n setContainerName(oWorkData.caseInfo.assignments?.[0].name);\n }\n\n // debugger;\n setBuildName(getBuildName());\n }\n\n useEffect(() => {\n // from WC SDK connectedCallback (mount)\n initComponent(true);\n initContainer();\n }, []);\n\n function isCaseWideLocalAction() {\n const ourPConn = getPConnect();\n\n const actionID = ourPConn.getValue(pCoreConstants.CASE_INFO.ACTIVE_ACTION_ID);\n const caseActions = ourPConn.getValue(pCoreConstants.CASE_INFO.AVAILABLEACTIONS);\n let bCaseWideAction = false;\n if (caseActions && actionID) {\n const actionObj = caseActions.find(caseAction => caseAction.ID === actionID);\n if (actionObj) {\n bCaseWideAction = actionObj.type === 'Case';\n }\n }\n return bCaseWideAction;\n }\n\n function hasChildCaseAssignments() {\n const ourPConn = getPConnect();\n\n const childCases = ourPConn.getValue(pCoreConstants.CASE_INFO.CHILD_ASSIGNMENTS);\n // const allAssignments = [];\n // eslint-disable-next-line sonarjs/prefer-single-boolean-return\n if (childCases && childCases.length > 0) {\n return true;\n }\n return false;\n }\n\n function hasAssignments() {\n const ourPConn = getPConnect();\n\n let bHasAssignments = false;\n const assignmentsList: Array<any> = ourPConn.getValue(\n pCoreConstants.CASE_INFO.D_CASE_ASSIGNMENTS_RESULTS\n );\n const thisOperator = PCore.getEnvironmentInfo().getOperatorIdentifier();\n // 8.7 includes assignments in Assignments List that may be assigned to\n // a different operator. So, see if there are any assignments for\n // the current operator\n let bAssignmentsForThisOperator = false;\n\n // Bail out if there isn't an assignmentsList\n if (!assignmentsList) {\n return bHasAssignments;\n }\n\n for (const assignment of assignmentsList) {\n if (assignment['assigneeInfo']['ID'] === thisOperator) {\n bAssignmentsForThisOperator = true;\n }\n }\n\n const bHasChildCaseAssignments = hasChildCaseAssignments();\n\n if (bAssignmentsForThisOperator || bHasChildCaseAssignments || isCaseWideLocalAction()) {\n bHasAssignments = true;\n }\n\n return bHasAssignments;\n }\n\n function getActiveViewLabel() {\n const ourPConn = getPConnect();\n\n let activeActionLabel = '';\n\n const { CASE_INFO: CASE_CONSTS } = pCoreConstants;\n\n const caseActions = ourPConn.getValue(CASE_CONSTS.CASE_INFO_ACTIONS);\n const activeActionID = ourPConn.getValue(CASE_CONSTS.ACTIVE_ACTION_ID);\n const activeAction = caseActions?.find(action => action.ID === activeActionID);\n if (activeAction) {\n activeActionLabel = activeAction.name;\n }\n return activeActionLabel;\n }\n\n // From SDK-WC updateSelf - so do this in useEffect that's run only when the props change...\n useEffect(() => {\n const localPConn = arNewChildren[0].getPConnect();\n\n setBuildName(getBuildName());\n\n // routingInfo was added as component prop in populateAdditionalProps\n // let routingInfo = this.getComponentProp(\"routingInfo\");\n\n let loadingInfo: any;\n try {\n loadingInfo = thePConn.getLoadingStatus();\n } catch (ex) {\n // eslint-disable-next-line no-console\n console.error(`${thePConn.getComponentName()}: loadingInfo catch block`);\n }\n\n // let configProps = this.thePConn.resolveConfigProps(this.thePConn.getConfigProps());\n\n if (!loadingInfo) {\n // turn off spinner\n // this.psService.sendMessage(false);\n }\n\n const caseViewMode = thePConn.getValue('context_data.caseViewMode');\n const { CASE_INFO: CASE_CONSTS } = pCoreConstants;\n if (caseViewMode && caseViewMode === 'review') {\n setTimeout(() => {\n // updated for 8.7 - 30-Mar-2022\n const todoAssignments = getToDoAssignments(thePConn);\n if (todoAssignments && todoAssignments.length > 0) {\n setCaseInfoID(thePConn.getValue(CASE_CONSTS.CASE_INFO_ID));\n setTodoDatasource({ source: todoAssignments });\n }\n setShowTodo(true);\n setShowTodoList(false);\n }, 100);\n\n // in React, when cancel is called, somehow the constructor for flowContainer is called which\n // does init/add of containers. This mimics that\n initContainer();\n } else if (caseViewMode && caseViewMode === 'perform') {\n // perform\n // debugger;\n setShowTodo(false);\n\n // this is different than Angular SDK, as we need to initContainer if root container reloaded\n if (window.sessionStorage.getItem('okToInitFlowContainer') === 'true') {\n initContainer();\n }\n }\n\n // if have caseMessage show message and end\n const theCaseMessages = thePConn.getValue('caseMessages');\n\n if (theCaseMessages || !hasAssignments()) {\n // Temp fix for 8.7 change: confirmationNote no longer coming through in caseMessages$.\n // So, if we get here and caseMessages$ is empty, use default value in DX API response\n setCaseMessages(\n theCaseMessages || 'Thank you! The next step in this case has been routed appropriately.'\n );\n setHasCaseMessages(true);\n setShowConfirm(true);\n\n // publish this \"assignmentFinished\" for mashup, need to get approved as a standard\n PCore.getPubSubUtils().publish('assignmentFinished');\n\n // debugger;\n setCheckSvg(Utils.getImageSrc('check', PCore.getAssetLoader().getStaticServerUrl()));\n } else {\n // debugger;\n setHasCaseMessages(false);\n setShowConfirm(false);\n }\n\n // this check in routingInfo, mimic React to check and get the internals of the\n // flowContainer and force updates to pConnect/redux\n if (routingInfo && loadingInfo !== undefined) {\n // debugging/investigation help\n // console.log(`${thePConn.getComponentName()}: >>routingInfo: ${JSON.stringify(routingInfo)}`);\n\n const currentOrder = routingInfo.accessedOrder;\n const currentItems = routingInfo.items;\n const type = routingInfo.type;\n if (currentOrder && currentItems) {\n // JA - making more similar to React version\n const key = currentOrder[currentOrder.length - 1];\n\n // save off itemKey to be used for finishAssignment, etc.\n // debugger;\n setItemKey(key);\n\n if (\n currentOrder.length > 0 &&\n currentItems[key] &&\n currentItems[key].view &&\n type === 'single' &&\n !Utils.isEmptyObject(currentItems[key].view)\n ) {\n const currentItem = currentItems[key];\n const rootView = currentItem.view;\n const { context } = rootView.config;\n const config = { meta: rootView };\n\n config['options'] = {\n context: currentItem.context,\n pageReference: context || localPConn.getPageReference(),\n hasForm: true,\n isFlowContainer: true,\n containerName: localPConn.getContainerName(),\n containerItemName: key,\n parentPageReference: localPConn.getPageReference()\n };\n\n const configObject = PCore.createPConnect(config);\n\n // Since we're setting an array, need to add in an appropriate key\n // to remove React warning.\n configObject['key'] = config['options'].parentPageReference;\n\n // keep track of these changes\n const theNewChildren: Array<Object> = [];\n theNewChildren.push(configObject);\n setArNewChildren(theNewChildren);\n\n // JEA - adapted from Constellation DX Components FlowContainer since we want to render children that are React components\n const root = createElement(createPConnectComponent(), configObject);\n setArNewChildrenAsReact([root]);\n\n const oWorkItem = configObject.getPConnect(); // was theNewChildren[0].getPConnect()\n const oWorkData = oWorkItem.getDataObject();\n\n // check if have oWorkData, there are times due to timing of state change, when this\n // may not be available\n if (oWorkData) {\n setContainerName(getActiveViewLabel() || oWorkData.caseInfo.assignments?.[0].name);\n }\n }\n }\n }\n }, [props]);\n\n const caseId = thePConn.getCaseSummary().content.pyID;\n const urgency = getPConnect().getCaseSummary().assignments\n ? getPConnect().getCaseSummary().assignments?.[0].urgency\n : '';\n const operatorInitials = Utils.getInitials(PCore.getEnvironmentInfo().getOperatorName());\n let instructionText = thePConn.getCaseSummary()?.assignments?.[0]?.instructions;\n if (instructionText === undefined) {\n instructionText = '';\n }\n\n const bShowBanner = showBanner(getPConnect);\n\n return (\n <div style={{ textAlign: 'left' }} id={buildName} className='psdk-flow-container-top'>\n {!bShowConfirm &&\n (!todo_showTodo ? (\n !displayOnlyFA ? (\n <Card className={classes.root}>\n <CardHeader\n title={<Typography variant='h6'>{containerName}</Typography>}\n subheader={`Task in ${caseId} \\u2022 Priority ${urgency}`}\n avatar={<Avatar className={classes.avatar}>{operatorInitials}</Avatar>}\n ></CardHeader>\n {instructionText !== '' ? (\n <Typography variant='caption'>{instructionText}</Typography>\n ) : null}\n <MuiPickersUtilsProvider utils={DayjsUtils}>\n <Assignment getPConnect={getPConnect} itemKey={itemKey}>\n {arNewChildrenAsReact}\n </Assignment>\n </MuiPickersUtilsProvider>\n </Card>\n ) : (\n <Card className={classes.root}>\n <Typography variant='h6'>{containerName}</Typography>\n {instructionText !== '' ? (\n <Typography variant='caption'>{instructionText}</Typography>\n ) : null}\n <MuiPickersUtilsProvider utils={DayjsUtils}>\n <Assignment getPConnect={getPConnect} itemKey={itemKey}>\n {arNewChildrenAsReact}\n </Assignment>\n </MuiPickersUtilsProvider>\n </Card>\n )\n ) : (\n <div>\n <ToDo\n getPConnect={getPConnect}\n caseInfoID={todo_caseInfoID}\n datasource={todo_datasource}\n showTodoList={todo_showTodoList}\n headerText={todo_headerText}\n type={TODO}\n context={todo_context}\n itemKey={itemKey}\n ></ToDo>\n </div>\n ))}\n {bHasCaseMessages && (\n <div className={classes.alert}>\n <Alert severity='success'>{caseMessages}</Alert>\n </div>\n )}\n {bShowConfirm && bShowBanner && <div>{arNewChildrenAsReact}</div>}\n </div>\n );\n}\n\nFlowContainer.defaultProps = {\n children: null,\n getPConnect: null,\n name: '',\n routingInfo: null,\n pageMessages: null\n};\n\nFlowContainer.propTypes = {\n // eslint-disable-next-line react/no-unused-prop-types\n children: PropTypes.node,\n getPConnect: PropTypes.func,\n // eslint-disable-next-line react/no-unused-prop-types\n name: PropTypes.string,\n routingInfo: PropTypes.objectOf(PropTypes.any),\n // eslint-disable-next-line react/no-unused-prop-types\n pageMessages: PropTypes.arrayOf(PropTypes.any)\n};\n"]}
1
+ {"version":3,"file":"FlowContainer.js","sourceRoot":"","sources":["../../../../../src/components/infra/Containers/FlowContainer/FlowContainer.tsx"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable no-nested-ternary */\n/* eslint-disable camelcase */\nimport React, { useState, useEffect, useContext, createElement } from 'react';\nimport PropTypes from 'prop-types';\nimport { makeStyles } from '@material-ui/core/styles';\nimport { Card, CardHeader, Avatar, Typography } from '@material-ui/core';\nimport { Utils } from '../../../helpers/utils';\nimport { Alert } from '@material-ui/lab';\n\nimport createPConnectComponent from '../../../../bridge/react_pconnect';\nimport StoreContext from '../../../../bridge/Context/StoreContext';\nimport DayjsUtils from '@date-io/dayjs';\nimport { MuiPickersUtilsProvider } from '@material-ui/pickers';\n\nimport { addContainerItem, getToDoAssignments, showBanner } from './helpers';\nimport { isEmptyObject } from '../../../helpers/common-utils';\n// Need to get correct implementation from component map for Assignment and ToDo\nimport { getComponentFromMap } from '../../../../bridge/helpers/sdk_component_map';\n\n\n// Remove this and use \"real\" PCore type once .d.ts is fixed (currently shows 3 errors)\ndeclare const PCore: any;\n\n\n//\n// WARNING: It is not expected that this file should be modified. It is part of infrastructure code that works with\n// Redux and creation/update of Redux containers and PConnect. Modifying this code could have undesireable results and\n// is totally at your own risk.\n//\n\nconst useStyles = makeStyles(theme => ({\n root: {\n paddingRight: theme.spacing(2),\n paddingLeft: theme.spacing(2),\n paddingTop: theme.spacing(1.5),\n paddingBottom: theme.spacing(1.5),\n marginRight: theme.spacing(1),\n marginLeft: theme.spacing(1),\n marginTop: theme.spacing(1),\n marginBottom: theme.spacing(1)\n },\n alert: {\n marginRight: theme.spacing(1),\n marginLeft: theme.spacing(1)\n },\n avatar: {\n backgroundColor: theme.palette.primary.light,\n color: theme.palette.getContrastText(theme.palette.primary.light)\n }\n}));\n\nexport default function FlowContainer(props) {\n // Get the proper implementation (local or Pega-provided) for these components that are emitted below\n const Assignment = getComponentFromMap(\"Assignment\");\n const ToDo = getComponentFromMap(\"Todo\"); // NOTE: ConstellationJS Engine uses \"Todo\" and not \"ToDo\"!!!\n\n const pCoreConstants = PCore.getConstants();\n const { TODO } = pCoreConstants;\n const todo_headerText = 'To do';\n\n const { getPConnect, routingInfo } = props;\n\n const { displayOnlyFA } = useContext<any>(StoreContext);\n\n const thePConn = getPConnect();\n\n // const [init, setInit] = useState(true);\n // const [fcState, setFCState] = useState({ hasError: false });\n const [arNewChildren, setArNewChildren] = useState<Array<any>>(thePConn.getChildren());\n const [arNewChildrenAsReact, setArNewChildrenAsReact] = useState<Array<any>>([]);\n\n const [todo_showTodo, setShowTodo] = useState(false);\n const [todo_caseInfoID, setCaseInfoID] = useState('');\n const [todo_showTodoList, setShowTodoList] = useState(false);\n const [todo_datasource, setTodoDatasource] = useState({});\n // eslint-disable-next-line @typescript-eslint/no-unused-vars, no-unused-vars\n const [todo_context, setTodoContext] = useState('');\n\n const [caseMessages, setCaseMessages] = useState('');\n const [bHasCaseMessages, setHasCaseMessages] = useState(false);\n // eslint-disable-next-line @typescript-eslint/no-unused-vars, no-unused-vars\n const [checkSvg, setCheckSvg] = useState('');\n\n const [itemKey, setItemKey] = useState('');\n const [containerName, setContainerName] = useState('');\n const [buildName, setBuildName] = useState('');\n const [bShowConfirm, setShowConfirm] = useState(false);\n const localizedVal = PCore.getLocaleUtils().getLocaleValue;\n const localeCategory = 'Messages';\n const caseInfo = getPConnect().getCaseInfo();\n const localeReference = `${caseInfo?.getClassName()}!CASE!${caseInfo.getName()}`.toUpperCase();\n\n const classes = useStyles();\n\n\n function initContainer() {\n const ourPConn = getPConnect();\n const containerMgr = ourPConn.getContainerManager();\n const baseContext = ourPConn.getContextName();\n const theContainerName = ourPConn.getContainerName();\n const containerType = 'single';\n\n const flowContainerTarget = `${baseContext}/${theContainerName}`;\n const isContainerItemAvailable =\n PCore.getContainerUtils().getActiveContainerItemName(flowContainerTarget);\n\n window.sessionStorage.setItem('okToInitFlowContainer', 'false');\n\n if (!isContainerItemAvailable) {\n containerMgr.initializeContainers({\n type: containerType\n });\n\n // updated for 8.7 - 30-Mar-2022\n addContainerItem(ourPConn);\n }\n }\n\n function getBuildName(): string {\n const ourPConn = getPConnect();\n\n // let { getPConnect, name } = this.pConn$.pConn;\n const context = ourPConn.getContextName();\n let viewContainerName = ourPConn.getContainerName();\n\n if (!viewContainerName) viewContainerName = '';\n return `${context.toUpperCase()}/${viewContainerName.toUpperCase()}`;\n }\n\n function getTodoVisibility() {\n const caseViewMode = getPConnect().getValue('context_data.caseViewMode');\n if (caseViewMode && caseViewMode === 'review') {\n return true;\n }\n // eslint-disable-next-line sonarjs/prefer-single-boolean-return\n if (caseViewMode && caseViewMode === 'perform') {\n return false;\n }\n\n return true;\n }\n\n function initComponent(bLoadChildren: boolean) {\n const ourPConn = getPConnect();\n\n // when true, update arChildren from pConn, otherwise, arChilren will be updated in updateSelf()\n if (bLoadChildren) {\n setArNewChildren(ourPConn.getChildren());\n }\n\n // debugging/investigation help\n // console.log(`${ourPConn.getComponentName()}: children update for main draw`);\n\n // const oData = ourPConn.getDataObject();\n\n // const activeActionLabel = \"\";\n // const child0_getPConnect = arNewChildren[0].getPConnect();\n\n // this.templateName$ = this.configProps$[\"template\"];\n\n // debugger;\n setShowTodo(getTodoVisibility());\n\n // create pointers to functions\n // const containerMgr = ourPConn.getContainerManager();\n // const actionsAPI = thePConn.getActionsApi();\n const baseContext = ourPConn.getContextName();\n const acName = ourPConn.getContainerName();\n\n // for now, in general this should be overridden by updateSelf(), and not be blank\n if (itemKey === '') {\n // debugger;\n setItemKey(baseContext.concat('/').concat(acName));\n }\n\n ourPConn.isBoundToState();\n\n // inside\n // get fist kid, get the name and displa\n // pass first kid to a view container, which will disperse it to a view which will use one column, two column, etc.\n const oWorkItem = arNewChildren[0].getPConnect(); // child0_getPConnect;\n const oWorkData = oWorkItem.getDataObject();\n\n if (bLoadChildren && oWorkData) {\n // debugger;\n setContainerName(localizedVal(oWorkData.caseInfo.assignments?.[0].name, undefined, localeReference));\n }\n\n // debugger;\n setBuildName(getBuildName());\n }\n\n useEffect(() => {\n // from WC SDK connectedCallback (mount)\n initComponent(true);\n initContainer();\n }, []);\n\n function isCaseWideLocalAction() {\n const ourPConn = getPConnect();\n\n const actionID = ourPConn.getValue(pCoreConstants.CASE_INFO.ACTIVE_ACTION_ID);\n const caseActions = ourPConn.getValue(pCoreConstants.CASE_INFO.AVAILABLEACTIONS);\n let bCaseWideAction = false;\n if (caseActions && actionID) {\n const actionObj = caseActions.find(caseAction => caseAction.ID === actionID);\n if (actionObj) {\n bCaseWideAction = actionObj.type === 'Case';\n }\n }\n return bCaseWideAction;\n }\n\n function hasChildCaseAssignments() {\n const ourPConn = getPConnect();\n\n const childCases = ourPConn.getValue(pCoreConstants.CASE_INFO.CHILD_ASSIGNMENTS);\n // const allAssignments = [];\n // eslint-disable-next-line sonarjs/prefer-single-boolean-return\n if (childCases && childCases.length > 0) {\n return true;\n }\n return false;\n }\n\n function hasAssignments() {\n const ourPConn = getPConnect();\n\n let bHasAssignments = false;\n const assignmentsList: Array<any> = ourPConn.getValue(\n pCoreConstants.CASE_INFO.D_CASE_ASSIGNMENTS_RESULTS\n );\n const thisOperator = PCore.getEnvironmentInfo().getOperatorIdentifier();\n // 8.7 includes assignments in Assignments List that may be assigned to\n // a different operator. So, see if there are any assignments for\n // the current operator\n let bAssignmentsForThisOperator = false;\n\n // Bail out if there isn't an assignmentsList\n if (!assignmentsList) {\n return bHasAssignments;\n }\n\n for (const assignment of assignmentsList) {\n if (assignment['assigneeInfo']['ID'] === thisOperator) {\n bAssignmentsForThisOperator = true;\n }\n }\n\n const bHasChildCaseAssignments = hasChildCaseAssignments();\n\n if (bAssignmentsForThisOperator || bHasChildCaseAssignments || isCaseWideLocalAction()) {\n bHasAssignments = true;\n }\n\n return bHasAssignments;\n }\n\n function getActiveViewLabel() {\n const ourPConn = getPConnect();\n\n let activeActionLabel = '';\n\n const { CASE_INFO: CASE_CONSTS } = pCoreConstants;\n\n const caseActions = ourPConn.getValue(CASE_CONSTS.CASE_INFO_ACTIONS);\n const activeActionID = ourPConn.getValue(CASE_CONSTS.ACTIVE_ACTION_ID);\n const activeAction = caseActions?.find(action => action.ID === activeActionID);\n if (activeAction) {\n activeActionLabel = activeAction.name;\n }\n return activeActionLabel;\n }\n\n // From SDK-WC updateSelf - so do this in useEffect that's run only when the props change...\n useEffect(() => {\n const localPConn = arNewChildren[0].getPConnect();\n\n setBuildName(getBuildName());\n\n // routingInfo was added as component prop in populateAdditionalProps\n // let routingInfo = this.getComponentProp(\"routingInfo\");\n\n let loadingInfo: any;\n try {\n loadingInfo = thePConn.getLoadingStatus();\n } catch (ex) {\n // eslint-disable-next-line no-console\n console.error(`${thePConn.getComponentName()}: loadingInfo catch block`);\n }\n\n // let configProps = this.thePConn.resolveConfigProps(this.thePConn.getConfigProps());\n\n if (!loadingInfo) {\n // turn off spinner\n // this.psService.sendMessage(false);\n }\n\n const caseViewMode = thePConn.getValue('context_data.caseViewMode');\n const { CASE_INFO: CASE_CONSTS } = pCoreConstants;\n if (caseViewMode && caseViewMode === 'review') {\n setTimeout(() => {\n // updated for 8.7 - 30-Mar-2022\n const todoAssignments = getToDoAssignments(thePConn);\n if (todoAssignments && todoAssignments.length > 0) {\n setCaseInfoID(thePConn.getValue(CASE_CONSTS.CASE_INFO_ID));\n setTodoDatasource({ source: todoAssignments });\n }\n setShowTodo(true);\n setShowTodoList(false);\n }, 100);\n\n // in React, when cancel is called, somehow the constructor for flowContainer is called which\n // does init/add of containers. This mimics that\n initContainer();\n } else if (caseViewMode && caseViewMode === 'perform') {\n // perform\n // debugger;\n setShowTodo(false);\n\n // this is different than Angular SDK, as we need to initContainer if root container reloaded\n if (window.sessionStorage.getItem('okToInitFlowContainer') === 'true') {\n initContainer();\n }\n }\n\n // if have caseMessage show message and end\n const theCaseMessages = localizedVal(thePConn.getValue('caseMessages'), localeCategory);\n\n if (theCaseMessages || !hasAssignments()) {\n // Temp fix for 8.7 change: confirmationNote no longer coming through in caseMessages$.\n // So, if we get here and caseMessages$ is empty, use default value in DX API response\n setCaseMessages(\n theCaseMessages || localizedVal('Thank you! The next step in this case has been routed appropriately.', localeCategory)\n );\n setHasCaseMessages(true);\n setShowConfirm(true);\n\n // publish this \"assignmentFinished\" for mashup, need to get approved as a standard\n PCore.getPubSubUtils().publish('assignmentFinished');\n\n // debugger;\n setCheckSvg(Utils.getImageSrc('check', Utils.getSDKStaticConentUrl()));\n } else {\n // debugger;\n setHasCaseMessages(false);\n setShowConfirm(false);\n }\n\n // this check in routingInfo, mimic React to check and get the internals of the\n // flowContainer and force updates to pConnect/redux\n if (routingInfo && loadingInfo !== undefined) {\n // debugging/investigation help\n // console.log(`${thePConn.getComponentName()}: >>routingInfo: ${JSON.stringify(routingInfo)}`);\n\n const currentOrder = routingInfo.accessedOrder;\n const currentItems = routingInfo.items;\n const type = routingInfo.type;\n if (currentOrder && currentItems) {\n // JA - making more similar to React version\n const key = currentOrder[currentOrder.length - 1];\n\n // save off itemKey to be used for finishAssignment, etc.\n // debugger;\n setItemKey(key);\n\n if (\n currentOrder.length > 0 &&\n currentItems[key] &&\n currentItems[key].view &&\n type === 'single' &&\n !isEmptyObject(currentItems[key].view)\n ) {\n const currentItem = currentItems[key];\n const rootView = currentItem.view;\n const { context } = rootView.config;\n const config = { meta: rootView };\n\n config['options'] = {\n context: currentItem.context,\n pageReference: context || localPConn.getPageReference(),\n hasForm: true,\n isFlowContainer: true,\n containerName: localPConn.getContainerName(),\n containerItemName: key,\n parentPageReference: localPConn.getPageReference()\n };\n\n const configObject = PCore.createPConnect(config);\n\n // Since we're setting an array, need to add in an appropriate key\n // to remove React warning.\n configObject['key'] = config['options'].parentPageReference;\n\n // keep track of these changes\n const theNewChildren: Array<Object> = [];\n theNewChildren.push(configObject);\n setArNewChildren(theNewChildren);\n\n // JEA - adapted from Constellation DX Components FlowContainer since we want to render children that are React components\n const root = createElement(createPConnectComponent(), configObject);\n setArNewChildrenAsReact([root]);\n\n const oWorkItem = configObject.getPConnect(); // was theNewChildren[0].getPConnect()\n const oWorkData = oWorkItem.getDataObject();\n\n // check if have oWorkData, there are times due to timing of state change, when this\n // may not be available\n if (oWorkData) {\n setContainerName(localizedVal(getActiveViewLabel() || oWorkData.caseInfo.assignments?.[0].name, undefined, localeReference));\n }\n }\n }\n }\n }, [props]);\n\n const caseId = thePConn.getCaseSummary().content.pyID;\n const urgency = getPConnect().getCaseSummary().assignments\n ? getPConnect().getCaseSummary().assignments?.[0].urgency\n : '';\n const operatorInitials = Utils.getInitials(PCore.getEnvironmentInfo().getOperatorName());\n let instructionText = thePConn.getCaseSummary()?.assignments?.[0]?.instructions;\n if (instructionText === undefined) {\n instructionText = '';\n }\n\n const bShowBanner = showBanner(getPConnect);\n\n return (\n <div style={{ textAlign: 'left' }} id={buildName} className='psdk-flow-container-top'>\n {!bShowConfirm &&\n (!todo_showTodo ? (\n !displayOnlyFA ? (\n <Card className={classes.root}>\n <CardHeader\n title={<Typography variant='h6'>{containerName}</Typography>}\n subheader={`Task in ${caseId} \\u2022 Priority ${urgency}`}\n avatar={<Avatar className={classes.avatar}>{operatorInitials}</Avatar>}\n ></CardHeader>\n {instructionText !== '' ? (\n <Typography variant='caption'>{instructionText}</Typography>\n ) : null}\n <MuiPickersUtilsProvider utils={DayjsUtils}>\n <Assignment getPConnect={getPConnect} itemKey={itemKey}>\n {arNewChildrenAsReact}\n </Assignment>\n </MuiPickersUtilsProvider>\n </Card>\n ) : (\n <Card className={classes.root}>\n <Typography variant='h6'>{containerName}</Typography>\n {instructionText !== '' ? (\n <Typography variant='caption'>{instructionText}</Typography>\n ) : null}\n <MuiPickersUtilsProvider utils={DayjsUtils}>\n <Assignment getPConnect={getPConnect} itemKey={itemKey}>\n {arNewChildrenAsReact}\n </Assignment>\n </MuiPickersUtilsProvider>\n </Card>\n )\n ) : (\n <div>\n <ToDo\n key={Math.random()}\n getPConnect={getPConnect}\n caseInfoID={todo_caseInfoID}\n datasource={todo_datasource}\n showTodoList={todo_showTodoList}\n headerText={todo_headerText}\n type={TODO}\n context={todo_context}\n itemKey={itemKey}\n ></ToDo>\n </div>\n ))}\n {bHasCaseMessages && (\n <div className={classes.alert}>\n <Alert severity='success'>{caseMessages}</Alert>\n </div>\n )}\n {bShowConfirm && bShowBanner && <div>{arNewChildrenAsReact}</div>}\n </div>\n );\n}\n\nFlowContainer.defaultProps = {\n children: null,\n getPConnect: null,\n name: '',\n routingInfo: null,\n pageMessages: null\n};\n\nFlowContainer.propTypes = {\n // eslint-disable-next-line react/no-unused-prop-types\n children: PropTypes.node,\n getPConnect: PropTypes.func,\n // eslint-disable-next-line react/no-unused-prop-types\n name: PropTypes.string,\n routingInfo: PropTypes.objectOf(PropTypes.any),\n // eslint-disable-next-line react/no-unused-prop-types\n pageMessages: PropTypes.arrayOf(PropTypes.any)\n};\n"]}
@@ -1,13 +1,13 @@
1
- export function addContainerItem(pConnect: any): void;
2
- export function hasContainerItems(pConnect: any): any;
3
- export function getActiveCaseActionName(pConnect: any): any;
4
- export function getFirstCaseActionName(pConnect: any): any;
5
- export function hasNotificationMessages(pConnect: any): boolean;
6
- export function isCaseWideLocalAction(pConnect: any): boolean;
7
- export function getChildCaseAssignments(pConnect: any): any[];
8
- export function hasAssignments(pConnect: any): boolean;
9
- export function showBanner(getPConnect: any): boolean;
10
- export function showTodo(pConnect: any): boolean;
11
- export function isRenderWithToDoWrapper(getPConnect: any, options: any): any;
12
- export function getToDoAssignments(pConnect: any): any;
1
+ export declare const addContainerItem: (pConnect: any) => void;
2
+ export declare const hasContainerItems: (pConnect: any) => boolean;
3
+ export declare const getActiveCaseActionName: (pConnect: any) => any;
4
+ export declare const getFirstCaseActionName: (pConnect: any) => any;
5
+ export declare const hasNotificationMessages: (pConnect: any) => boolean;
6
+ export declare const isCaseWideLocalAction: (pConnect: any) => boolean;
7
+ export declare const getChildCaseAssignments: (pConnect: any) => never[];
8
+ export declare const hasAssignments: (pConnect: any) => boolean;
9
+ export declare const showBanner: (getPConnect: any) => boolean;
10
+ export declare const showTodo: (pConnect: any) => boolean;
11
+ export declare const isRenderWithToDoWrapper: (getPConnect: any, options: any) => any;
12
+ export declare const getToDoAssignments: (pConnect: any) => any;
13
13
  //# sourceMappingURL=helpers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../../../src/components/infra/Containers/FlowContainer/helpers.js"],"names":[],"mappings":"AAMO,sDA0BN;AAEM,sDAIN;AAEM,4DAQN;AAEM,2DAIN;AAEM,gEAEN;AAEM,8DAWN;AAEM,8DAcN;AAEM,uDAUN;AAEM,sDAGN;AAEM,iDAGN;AAEM,6EAMN;AAEM,uDA2BN"}
1
+ {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../../../src/components/infra/Containers/FlowContainer/helpers.ts"],"names":[],"mappings":"AASA,eAAO,MAAM,gBAAgB,yBA0B5B,CAAC;AAEF,eAAO,MAAM,iBAAiB,4BAI7B,CAAA;AAED,eAAO,MAAM,uBAAuB,wBAQnC,CAAC;AAEF,eAAO,MAAM,sBAAsB,wBAIlC,CAAC;AAEF,eAAO,MAAM,uBAAuB,4BAEnC,CAAC;AAEF,eAAO,MAAM,qBAAqB,4BAWjC,CAAC;AAEF,eAAO,MAAM,uBAAuB,4BAgBnC,CAAC;AAEF,eAAO,MAAM,cAAc,4BAU1B,CAAC;AAEF,eAAO,MAAM,UAAU,+BAGtB,CAAC;AAEF,eAAO,MAAM,QAAQ,4BAGpB,CAAC;AAEF,eAAO,MAAM,uBAAuB,yCAMnC,CAAC;AAEF,eAAO,MAAM,kBAAkB,wBA2B9B,CAAC"}
@@ -1,4 +1,3 @@
1
- // From CosmosReact DX Components
2
1
  // Moved PCore.getConstants() into each function in which it's used until we can
3
2
  // make sure that this code isn't run until PCore is defined (after onPCoreReady)
4
3
  // const { CASE_INFO } = window.PCore.getConstants();
@@ -10,8 +9,8 @@ export const addContainerItem = (pConnect) => {
10
9
  let flowName;
11
10
  if (caseViewMode !== "review") {
12
11
  const target = contextName.substring(0, contextName.lastIndexOf("_"));
13
- const activeContainerItemID = window.PCore.getContainerUtils().getActiveContainerItemName(target);
14
- const containerItemData = window.PCore.getContainerUtils().getContainerItemData(target, activeContainerItemID);
12
+ const activeContainerItemID = PCore.getContainerUtils().getActiveContainerItemName(target);
13
+ const containerItemData = PCore.getContainerUtils().getContainerItemData(target, activeContainerItemID);
15
14
  if (containerItemData) {
16
15
  ({ key, flowName } = containerItemData);
17
16
  }
@@ -28,17 +27,17 @@ export const addContainerItem = (pConnect) => {
28
27
  export const hasContainerItems = (pConnect) => {
29
28
  const contextName = pConnect.getContextName();
30
29
  const containerName = pConnect.getContainerName();
31
- return window.PCore.getContainerUtils().hasContainerItems(`${contextName}/${containerName}`);
30
+ return PCore.getContainerUtils().hasContainerItems(`${contextName}/${containerName}`);
32
31
  };
33
32
  export const getActiveCaseActionName = (pConnect) => {
34
- const { CASE_INFO } = window.PCore.getConstants();
33
+ const { CASE_INFO } = PCore.getConstants();
35
34
  const caseActions = pConnect.getValue(CASE_INFO.CASE_INFO_ACTIONS);
36
35
  const activeActionID = pConnect.getValue(CASE_INFO.ACTIVE_ACTION_ID);
37
36
  const activeAction = caseActions.find((action) => action.ID === activeActionID);
38
37
  return activeAction?.name || "";
39
38
  };
40
39
  export const getFirstCaseActionName = (pConnect) => {
41
- const { CASE_INFO } = window.PCore.getConstants();
40
+ const { CASE_INFO } = PCore.getConstants();
42
41
  const caseActions = pConnect.getValue(CASE_INFO.CASE_INFO_ACTIONS);
43
42
  return caseActions[0]?.name || "";
44
43
  };
@@ -46,7 +45,7 @@ export const hasNotificationMessages = (pConnect) => {
46
45
  return !!pConnect.getValue("caseMessages");
47
46
  };
48
47
  export const isCaseWideLocalAction = (pConnect) => {
49
- const { CASE_INFO } = window.PCore.getConstants();
48
+ const { CASE_INFO } = PCore.getConstants();
50
49
  const actionID = pConnect.getValue(CASE_INFO.ACTIVE_ACTION_ID);
51
50
  const caseActions = pConnect.getValue(CASE_INFO.CASE_INFO_ACTIONS);
52
51
  if (caseActions && actionID) {
@@ -56,22 +55,24 @@ export const isCaseWideLocalAction = (pConnect) => {
56
55
  return false;
57
56
  };
58
57
  export const getChildCaseAssignments = (pConnect) => {
59
- const { CASE_INFO } = window.PCore.getConstants();
58
+ const { CASE_INFO } = PCore.getConstants();
60
59
  const childCases = pConnect.getValue(CASE_INFO.CHILD_ASSIGNMENTS);
61
60
  let allAssignments = [];
62
61
  if (childCases && childCases.length > 0) {
63
- childCases.forEach(({ assignments = [], Name }) => {
64
- const childCaseAssignments = assignments.map((assignment) => ({
65
- ...assignment,
66
- caseName: Name
67
- }));
68
- allAssignments = allAssignments.concat(childCaseAssignments);
62
+ childCases.forEach(({ assignments, Name }) => {
63
+ if (assignments) {
64
+ const childCaseAssignments = assignments.map((assignment) => ({
65
+ ...assignment,
66
+ caseName: Name
67
+ }));
68
+ allAssignments = allAssignments.concat(childCaseAssignments);
69
+ }
69
70
  });
70
71
  }
71
72
  return allAssignments;
72
73
  };
73
74
  export const hasAssignments = (pConnect) => {
74
- const { CASE_INFO } = window.PCore.getConstants();
75
+ const { CASE_INFO } = PCore.getConstants();
75
76
  const assignments = pConnect.getValue(CASE_INFO.D_CASE_ASSIGNMENTS_RESULTS);
76
77
  const childCasesAssignments = getChildCaseAssignments(pConnect);
77
78
  // eslint-disable-next-line sonarjs/prefer-single-boolean-return
@@ -94,7 +95,7 @@ export const isRenderWithToDoWrapper = (getPConnect, options) => {
94
95
  return (showWithToDo && (!isCaseWideLocalAction(pConnect) || showTodo(pConnect)));
95
96
  };
96
97
  export const getToDoAssignments = (pConnect) => {
97
- const { CASE_INFO } = window.PCore.getConstants();
98
+ const { CASE_INFO } = PCore.getConstants();
98
99
  const caseActions = pConnect.getValue(CASE_INFO.CASE_INFO_ACTIONS);
99
100
  const assignmentLabel = pConnect.getValue(CASE_INFO.ASSIGNMENT_LABEL);
100
101
  const assignments = pConnect.getValue(CASE_INFO.D_CASE_ASSIGNMENTS_RESULTS) || [];
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../../../src/components/infra/Containers/FlowContainer/helpers.js"],"names":[],"mappings":"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","sourcesContent":["// From CosmosReact DX Components\n\n// Moved PCore.getConstants() into each function in which it's used until we can\n// make sure that this code isn't run until PCore is defined (after onPCoreReady)\n// const { CASE_INFO } = window.PCore.getConstants();\n\nexport const addContainerItem = (pConnect) => {\n const containerManager = pConnect.getContainerManager();\n const contextName = pConnect.getContextName(); // here we will get parent context name, as flow container is child of view container\n const caseViewMode = pConnect.getValue(\"context_data.caseViewMode\");\n\n let key;\n let flowName;\n\n if(caseViewMode !== \"review\") {\n const target = contextName.substring(0, contextName.lastIndexOf(\"_\"));\n const activeContainerItemID = window.PCore.getContainerUtils().getActiveContainerItemName(target);\n const containerItemData = window.PCore.getContainerUtils().getContainerItemData(target, activeContainerItemID);\n\n if(containerItemData) {\n ({ key, flowName } = containerItemData);\n }\n }\n\n containerManager.addContainerItem({\n semanticURL: \"\",\n key,\n flowName,\n caseViewMode: \"perform\",\n resourceType: \"ASSIGNMENT\",\n data: pConnect.getDataObject(contextName)\n });\n};\n\nexport const hasContainerItems = (pConnect) => {\n const contextName = pConnect.getContextName();\n const containerName = pConnect.getContainerName();\n return window.PCore.getContainerUtils().hasContainerItems(`${contextName}/${containerName}`);\n}\n\nexport const getActiveCaseActionName = (pConnect) => {\n const { CASE_INFO } = window.PCore.getConstants();\n const caseActions = pConnect.getValue(CASE_INFO.CASE_INFO_ACTIONS);\n const activeActionID = pConnect.getValue(CASE_INFO.ACTIVE_ACTION_ID);\n const activeAction = caseActions.find(\n (action) => action.ID === activeActionID\n );\n return activeAction?.name || \"\";\n};\n\nexport const getFirstCaseActionName = (pConnect) => {\n const { CASE_INFO } = window.PCore.getConstants();\n const caseActions = pConnect.getValue(CASE_INFO.CASE_INFO_ACTIONS);\n return caseActions[0]?.name || \"\";\n};\n\nexport const hasNotificationMessages = (pConnect) => {\n return !!pConnect.getValue(\"caseMessages\");\n};\n\nexport const isCaseWideLocalAction = (pConnect) => {\n const { CASE_INFO } = window.PCore.getConstants();\n const actionID = pConnect.getValue(CASE_INFO.ACTIVE_ACTION_ID);\n const caseActions = pConnect.getValue(CASE_INFO.CASE_INFO_ACTIONS);\n if (caseActions && actionID) {\n const activeAction = caseActions.find(\n (caseAction) => caseAction.ID === actionID\n );\n return activeAction?.type === \"Case\";\n }\n return false;\n};\n\nexport const getChildCaseAssignments = (pConnect) => {\n const { CASE_INFO } = window.PCore.getConstants();\n const childCases = pConnect.getValue(CASE_INFO.CHILD_ASSIGNMENTS);\n let allAssignments = [];\n if (childCases && childCases.length > 0) {\n childCases.forEach(({ assignments = [], Name }) => {\n const childCaseAssignments = assignments.map((assignment) => ({\n ...assignment,\n caseName: Name\n }));\n allAssignments = allAssignments.concat(childCaseAssignments);\n });\n }\n return allAssignments;\n};\n\nexport const hasAssignments = (pConnect) => {\n const { CASE_INFO } = window.PCore.getConstants();\n const assignments = pConnect.getValue(CASE_INFO.D_CASE_ASSIGNMENTS_RESULTS);\n const childCasesAssignments = getChildCaseAssignments(pConnect);\n\n // eslint-disable-next-line sonarjs/prefer-single-boolean-return\n if (assignments || childCasesAssignments || isCaseWideLocalAction(pConnect)) {\n return true;\n }\n return false;\n};\n\nexport const showBanner = (getPConnect) => {\n const pConnect = getPConnect();\n return hasNotificationMessages(pConnect) || !hasAssignments(pConnect);\n};\n\nexport const showTodo = (pConnect) => {\n const caseViewMode = pConnect.getValue(\"context_data.caseViewMode\");\n return caseViewMode !== \"perform\";\n};\n\nexport const isRenderWithToDoWrapper = (getPConnect, options) => {\n const pConnect = getPConnect();\n const { showWithToDo } = options;\n return (\n showWithToDo && (!isCaseWideLocalAction(pConnect) || showTodo(pConnect))\n );\n};\n\nexport const getToDoAssignments = (pConnect) => {\n const { CASE_INFO } = window.PCore.getConstants();\n const caseActions = pConnect.getValue(CASE_INFO.CASE_INFO_ACTIONS);\n const assignmentLabel = pConnect.getValue(CASE_INFO.ASSIGNMENT_LABEL);\n const assignments =\n pConnect.getValue(CASE_INFO.D_CASE_ASSIGNMENTS_RESULTS) || [];\n const childCasesAssignments = getChildCaseAssignments(pConnect) || [];\n let childCasesAssignmentsCopy = JSON.parse(\n JSON.stringify(childCasesAssignments)\n );\n\n childCasesAssignmentsCopy = childCasesAssignmentsCopy.map((assignment) => {\n assignment.isChild = true;\n return assignment;\n });\n\n const todoAssignments = [...assignments, ...childCasesAssignmentsCopy];\n let todoAssignmentsCopy = JSON.parse(JSON.stringify(todoAssignments));\n\n if (caseActions && !showTodo(pConnect)) {\n todoAssignmentsCopy = todoAssignmentsCopy.map((assignment) => {\n assignment.name = getActiveCaseActionName(pConnect) || assignmentLabel;\n return assignment;\n });\n }\n\n return todoAssignmentsCopy;\n};\n"]}
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../../../src/components/infra/Containers/FlowContainer/helpers.ts"],"names":[],"mappings":"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","sourcesContent":["import PCoreType from '@pega/pcore-pconnect-typedefs/types/pcore';\n\ndeclare const PCore: typeof PCoreType;\n\n\n// Moved PCore.getConstants() into each function in which it's used until we can\n// make sure that this code isn't run until PCore is defined (after onPCoreReady)\n// const { CASE_INFO } = window.PCore.getConstants();\n\nexport const addContainerItem = (pConnect) => {\n const containerManager = pConnect.getContainerManager();\n const contextName = pConnect.getContextName(); // here we will get parent context name, as flow container is child of view container\n const caseViewMode = pConnect.getValue(\"context_data.caseViewMode\");\n\n let key;\n let flowName;\n\n if(caseViewMode !== \"review\") {\n const target = contextName.substring(0, contextName.lastIndexOf(\"_\"));\n const activeContainerItemID = PCore.getContainerUtils().getActiveContainerItemName(target);\n const containerItemData = PCore.getContainerUtils().getContainerItemData(target, activeContainerItemID);\n\n if(containerItemData) {\n ({ key, flowName } = containerItemData);\n }\n }\n\n containerManager.addContainerItem({\n semanticURL: \"\",\n key,\n flowName,\n caseViewMode: \"perform\",\n resourceType: \"ASSIGNMENT\",\n data: pConnect.getDataObject(contextName)\n });\n};\n\nexport const hasContainerItems = (pConnect) => {\n const contextName = pConnect.getContextName();\n const containerName = pConnect.getContainerName();\n return PCore.getContainerUtils().hasContainerItems(`${contextName}/${containerName}`);\n}\n\nexport const getActiveCaseActionName = (pConnect) => {\n const { CASE_INFO } = PCore.getConstants();\n const caseActions = pConnect.getValue(CASE_INFO.CASE_INFO_ACTIONS);\n const activeActionID = pConnect.getValue(CASE_INFO.ACTIVE_ACTION_ID);\n const activeAction = caseActions.find(\n (action) => action.ID === activeActionID\n );\n return activeAction?.name || \"\";\n};\n\nexport const getFirstCaseActionName = (pConnect) => {\n const { CASE_INFO } = PCore.getConstants();\n const caseActions = pConnect.getValue(CASE_INFO.CASE_INFO_ACTIONS);\n return caseActions[0]?.name || \"\";\n};\n\nexport const hasNotificationMessages = (pConnect) => {\n return !!pConnect.getValue(\"caseMessages\");\n};\n\nexport const isCaseWideLocalAction = (pConnect) => {\n const { CASE_INFO } = PCore.getConstants();\n const actionID = pConnect.getValue(CASE_INFO.ACTIVE_ACTION_ID);\n const caseActions = pConnect.getValue(CASE_INFO.CASE_INFO_ACTIONS);\n if (caseActions && actionID) {\n const activeAction = caseActions.find(\n (caseAction) => caseAction.ID === actionID\n );\n return activeAction?.type === \"Case\";\n }\n return false;\n};\n\nexport const getChildCaseAssignments = (pConnect) => {\n const { CASE_INFO } = PCore.getConstants();\n const childCases = pConnect.getValue(CASE_INFO.CHILD_ASSIGNMENTS);\n let allAssignments = [];\n if (childCases && childCases.length > 0) {\n childCases.forEach(({ assignments, Name }) => {\n if (assignments) {\n const childCaseAssignments = assignments.map((assignment) => ({\n ...assignment,\n caseName: Name\n }));\n allAssignments = allAssignments.concat(childCaseAssignments);\n }\n });\n }\n return allAssignments;\n};\n\nexport const hasAssignments = (pConnect) => {\n const { CASE_INFO } = PCore.getConstants();\n const assignments = pConnect.getValue(CASE_INFO.D_CASE_ASSIGNMENTS_RESULTS);\n const childCasesAssignments = getChildCaseAssignments(pConnect);\n\n // eslint-disable-next-line sonarjs/prefer-single-boolean-return\n if (assignments || childCasesAssignments || isCaseWideLocalAction(pConnect)) {\n return true;\n }\n return false;\n};\n\nexport const showBanner = (getPConnect) => {\n const pConnect = getPConnect();\n return hasNotificationMessages(pConnect) || !hasAssignments(pConnect);\n};\n\nexport const showTodo = (pConnect) => {\n const caseViewMode = pConnect.getValue(\"context_data.caseViewMode\");\n return caseViewMode !== \"perform\";\n};\n\nexport const isRenderWithToDoWrapper = (getPConnect, options) => {\n const pConnect = getPConnect();\n const { showWithToDo } = options;\n return (\n showWithToDo && (!isCaseWideLocalAction(pConnect) || showTodo(pConnect))\n );\n};\n\nexport const getToDoAssignments = (pConnect) => {\n const { CASE_INFO } = PCore.getConstants();\n const caseActions = pConnect.getValue(CASE_INFO.CASE_INFO_ACTIONS);\n const assignmentLabel = pConnect.getValue(CASE_INFO.ASSIGNMENT_LABEL);\n const assignments =\n pConnect.getValue(CASE_INFO.D_CASE_ASSIGNMENTS_RESULTS) || [];\n const childCasesAssignments = getChildCaseAssignments(pConnect) || [];\n let childCasesAssignmentsCopy = JSON.parse(\n JSON.stringify(childCasesAssignments)\n );\n\n childCasesAssignmentsCopy = childCasesAssignmentsCopy.map((assignment) => {\n assignment.isChild = true;\n return assignment;\n });\n\n const todoAssignments = [...assignments, ...childCasesAssignmentsCopy];\n let todoAssignmentsCopy = JSON.parse(JSON.stringify(todoAssignments));\n\n if (caseActions && !showTodo(pConnect)) {\n todoAssignmentsCopy = todoAssignmentsCopy.map((assignment) => {\n assignment.name = getActiveCaseActionName(pConnect) || assignmentLabel;\n return assignment;\n });\n }\n\n return todoAssignmentsCopy;\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"ModalViewContainer.d.ts","sourceRoot":"","sources":["../../../../../src/components/infra/Containers/ModalViewContainer/ModalViewContainer.tsx"],"names":[],"mappings":";AACA,OAAO,SAAS,MAAM,YAAY,CAAC;AAoEnC,QAAA,MAAM,kBAAkB;;;;;;;;;;;;;;CA4OvB,CAAC;AAEF,eAAe,kBAAkB,CAAC"}
1
+ {"version":3,"file":"ModalViewContainer.d.ts","sourceRoot":"","sources":["../../../../../src/components/infra/Containers/ModalViewContainer/ModalViewContainer.tsx"],"names":[],"mappings":";AACA,OAAO,SAAS,MAAM,YAAY,CAAC;AAuEnC,QAAA,MAAM,kBAAkB;;;;;;;;;;;;;;CA4PvB,CAAC;AAEF,eAAe,kBAAkB,CAAC"}
@@ -6,9 +6,10 @@ import DialogContent from '@material-ui/core/DialogContent';
6
6
  import DialogTitle from '@material-ui/core/DialogTitle';
7
7
  import { makeStyles } from '@material-ui/core/styles';
8
8
  import createPConnectComponent from '../../../../bridge/react_pconnect';
9
- import Assignment from '../../Assignment';
10
- import CancelAlert from '../../../field/CancelAlert';
11
- import Utils from '../../../helpers/utils';
9
+ // Need to get correct implementation from component map for Assignment and CancelAlert
10
+ import { getComponentFromMap } from '../../../../bridge/helpers/sdk_component_map';
11
+ import { getBanners } from '../../../helpers/case-utils';
12
+ import { isEmptyObject } from '../../../helpers/common-utils';
12
13
  function buildName(pConnect, name = '') {
13
14
  const context = pConnect.getContextName();
14
15
  return `${context}/${name}`;
@@ -61,9 +62,12 @@ const useStyles = makeStyles(theme => ({
61
62
  }
62
63
  }));
63
64
  const ModalViewContainer = props => {
65
+ // Get the proper implementation (local or Pega-provided) for these components that are emitted below
66
+ const Assignment = getComponentFromMap("Assignment");
67
+ const CancelAlert = getComponentFromMap("CancelAlert");
64
68
  const classes = useStyles();
65
69
  const routingInfoRef = useRef({});
66
- const { getPConnect, routingInfo, loadingInfo } = props;
70
+ const { getPConnect, routingInfo, loadingInfo, pageMessages } = props;
67
71
  const pConn = getPConnect();
68
72
  const { CONTAINER_TYPE: { MULTIPLE }, PUB_SUB_EVENTS: { EVENT_SHOW_CANCEL_ALERT } } = PCore.getConstants();
69
73
  const { subscribe } = PCore.getPubSubUtils();
@@ -76,6 +80,8 @@ const ModalViewContainer = props => {
76
80
  const [arNewChildrenAsReact, setArNewChildrenAsReact] = useState([]);
77
81
  const [itemKey, setItemKey] = useState('');
78
82
  const [cancelPConn, setCancelPConn] = useState(null);
83
+ const localizedVal = PCore.getLocaleUtils().getLocaleValue;
84
+ const localeCategory = 'Data Object';
79
85
  function showAlert(payload) {
80
86
  const { latestItem } = getKeyAndLatestItem(routingInfoRef.current, pConn);
81
87
  const { isModalAction } = payload;
@@ -134,7 +140,7 @@ const ModalViewContainer = props => {
134
140
  if (currentOrder.length > 0) {
135
141
  if (currentItems[key] &&
136
142
  currentItems[key].view &&
137
- !Utils.isEmptyObject(currentItems[key].view)) {
143
+ !isEmptyObject(currentItems[key].view)) {
138
144
  const currentItem = currentItems[key];
139
145
  const rootView = currentItem.view;
140
146
  const { context } = rootView.config;
@@ -177,7 +183,7 @@ const ModalViewContainer = props => {
177
183
  const theNewCaseInfo = newComp.getCaseInfo();
178
184
  const caseName = theNewCaseInfo.getName();
179
185
  const ID = theNewCaseInfo.getID();
180
- setTitle(actionName || `New ${caseName} (${ID})`);
186
+ setTitle(actionName || `${localizedVal('New', localeCategory)} ${caseName} (${ID})`);
181
187
  let arChildrenAsReact = [];
182
188
  if (newComp.getComponentName() === 'reference') {
183
189
  // Reference component doesn't have children. It can build the View we want.
@@ -209,7 +215,7 @@ const ModalViewContainer = props => {
209
215
  if (bShowModal) {
210
216
  setShowModal(false);
211
217
  }
212
- if (!Utils.isEmptyObject(oCaseInfo)) {
218
+ if (!isEmptyObject(oCaseInfo)) {
213
219
  setOCaseInfo({});
214
220
  }
215
221
  }
@@ -231,7 +237,10 @@ const ModalViewContainer = props => {
231
237
  return (React.createElement(React.Fragment, null,
232
238
  React.createElement(Dialog, { open: bShowModal, "aria-labelledby": 'form-dialog-title' },
233
239
  React.createElement(DialogTitle, { id: 'form-dialog-title', className: classes.dlgTitle }, title),
234
- React.createElement(DialogContent, { className: classes.dlgContent }, bShowModal ? (React.createElement(Assignment, { getPConnect: createdView.getPConnect, itemKey: itemKey, isInModal: true }, arNewChildrenAsReact)) : (React.createElement(React.Fragment, null)))),
240
+ React.createElement(DialogContent, { className: classes.dlgContent }, bShowModal ? (React.createElement(Assignment, { getPConnect: createdView.getPConnect, itemKey: itemKey, isInModal: true, banners: getBanners({
241
+ target: itemKey,
242
+ pageMessages
243
+ }) }, arNewChildrenAsReact)) : (React.createElement(React.Fragment, null)))),
235
244
  bShowCancelAlert && (React.createElement(CancelAlert, { pConn: cancelPConn, showAlert: bShowCancelAlert, updateAlertState: updateAlertState }))));
236
245
  };
237
246
  export default ModalViewContainer;
@@ -1 +1 @@
1
- {"version":3,"file":"ModalViewContainer.js","sourceRoot":"","sources":["../../../../../src/components/infra/Containers/ModalViewContainer/ModalViewContainer.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { useEffect, useRef, useState, createElement } from 'react';\nimport PropTypes from 'prop-types';\nimport isEqual from 'fast-deep-equal';\nimport Dialog from '@material-ui/core/Dialog';\nimport DialogContent from '@material-ui/core/DialogContent';\nimport DialogTitle from '@material-ui/core/DialogTitle';\nimport { makeStyles } from '@material-ui/core/styles';\nimport createPConnectComponent from '../../../../bridge/react_pconnect';\nimport Assignment from '../../Assignment';\nimport CancelAlert from '../../../field/CancelAlert';\nimport Utils from '../../../helpers/utils';\n\ndeclare const PCore;\n\nfunction buildName(pConnect, name = '') {\n const context = pConnect.getContextName();\n return `${context}/${name}`;\n}\n\nfunction getKeyAndLatestItem(routinginfo, pConn) {\n const containerName = pConn.getContainerName();\n if (PCore.getContainerUtils().hasContainerItems(buildName(pConn, containerName))) {\n const { accessedOrder, items } = routinginfo;\n const key = accessedOrder[accessedOrder.length - 1];\n const latestItem = items[key];\n return { key, latestItem };\n }\n return {};\n}\n\nfunction getConfigObject(item, pConnect) {\n if (item) {\n const { context, view } = item;\n const config = {\n meta: view,\n options: {\n context,\n pageReference: view.config.context || pConnect.getPageReference(),\n hasForm: true\n }\n };\n return PCore.createPConnect(config);\n }\n return null;\n}\n\nconst useStyles = makeStyles(theme => ({\n dlgTitle: {\n marginLeft: theme.spacing(2),\n marginRight: theme.spacing(2),\n marginTop: theme.spacing(2),\n marginBottom: theme.spacing(0)\n // paddingLeft: theme.spacing(0),\n // paddingRight: theme.spacing(0),\n // paddingTop: theme.spacing(0),\n // paddingBottom: theme.spacing(0),\n },\n dlgContent: {\n marginLeft: theme.spacing(2),\n marginRight: theme.spacing(2),\n marginTop: theme.spacing(0),\n marginBottom: theme.spacing(2)\n // paddingLeft: theme.spacing(0),\n // paddingRight: theme.spacing(0),\n // paddingTop: theme.spacing(0),\n // paddingBottom: theme.spacing(0),\n }\n}));\n\nconst ModalViewContainer = props => {\n const classes = useStyles();\n\n const routingInfoRef = useRef({});\n const { getPConnect, routingInfo, loadingInfo } = props;\n const pConn = getPConnect();\n const {\n CONTAINER_TYPE: { MULTIPLE },\n PUB_SUB_EVENTS: { EVENT_SHOW_CANCEL_ALERT }\n } = PCore.getConstants();\n const { subscribe } = PCore.getPubSubUtils();\n const [bShowModal, setShowModal] = useState(false);\n const [bSubscribed, setSubscribed] = useState(false);\n const [bShowCancelAlert, setShowCancelAlert] = useState(false);\n const [oCaseInfo, setOCaseInfo] = useState({});\n const [createdView, setCreatedView] = useState<any>(null);\n const [title, setTitle] = useState('');\n const [arNewChildrenAsReact, setArNewChildrenAsReact] = useState<Array<any>>([]);\n const [itemKey, setItemKey] = useState('');\n const [cancelPConn, setCancelPConn] = useState(null);\n\n function showAlert(payload) {\n const { latestItem } = getKeyAndLatestItem(routingInfoRef.current, pConn);\n const { isModalAction } = payload;\n\n /*\n If we are in create stage full page mode, created a new case and trying to click on cancel button\n it will show two alert dialogs which is not expected. Hence isModalAction flag to avoid that.\n */\n if (latestItem && isModalAction) {\n const configObject = getConfigObject(latestItem, pConn);\n setCancelPConn(configObject.getPConnect());\n setShowCancelAlert(true);\n }\n }\n\n function compareCaseInfoIsDifferent(oCurrentCaseInfo: Object): boolean {\n let bRet = false;\n\n // fast-deep-equal version\n if (isEqual !== undefined) {\n bRet = !isEqual(oCaseInfo, oCurrentCaseInfo);\n } else {\n const sCurrentCaseInfo = JSON.stringify(oCurrentCaseInfo);\n const sOldCaseInfo = JSON.stringify(oCaseInfo);\n // stringify compare version\n if (sCurrentCaseInfo !== sOldCaseInfo) {\n bRet = true;\n }\n }\n\n // if different, save off new case info\n if (bRet) {\n setOCaseInfo(JSON.parse(JSON.stringify(oCurrentCaseInfo)));\n }\n\n return bRet;\n }\n\n const updateAlertState = modalFlag => {\n setShowCancelAlert(false);\n setShowModal(modalFlag);\n };\n\n useEffect(() => {\n // Establish the necessary containers\n const containerMgr = pConn.getContainerManager();\n containerMgr.initializeContainers({ type: MULTIPLE });\n }, [MULTIPLE, pConn]);\n\n useEffect(() => {\n // Update routingInfoRef.current whenever routingInfo changes\n routingInfoRef.current = routingInfo;\n }, [routingInfo]);\n\n useEffect(() => {\n if (routingInfoRef.current && !loadingInfo) {\n const currentOrder = routingInfo.accessedOrder;\n\n if (undefined === currentOrder) {\n return;\n }\n\n const currentItems = routingInfo.items;\n\n const { key, latestItem } = getKeyAndLatestItem(routingInfoRef.current, pConn);\n\n // console.log(`ModalViewContainer: key: ${key} latestItem: ${JSON.stringify(latestItem)}`);\n\n if (currentOrder.length > 0) {\n if (\n currentItems[key] &&\n currentItems[key].view &&\n !Utils.isEmptyObject(currentItems[key].view)\n ) {\n const currentItem = currentItems[key];\n const rootView = currentItem.view;\n const { context } = rootView.config;\n const config = { meta: rootView };\n config['options'] = {\n context: currentItem.context,\n hasForm: true,\n pageReference: context || pConn.getPageReference()\n };\n\n if (!bSubscribed) {\n setSubscribed(true);\n subscribe(\n EVENT_SHOW_CANCEL_ALERT,\n showAlert,\n EVENT_SHOW_CANCEL_ALERT /* Unique string for subscription */\n );\n }\n\n const configObject = PCore.createPConnect(config);\n\n // THIS is where the ViewContainer creates a View\n // The config has meta.config.type = \"view\"\n const newComp = configObject.getPConnect();\n // const newCompName = newComp.getComponentName();\n const caseInfo =\n newComp && newComp.getDataObject() && newComp.getDataObject().caseInfo\n ? newComp.getDataObject().caseInfo\n : null;\n\n // console.log(`ModalViewContainer just created newComp: ${newCompName}`);\n\n // The metadata for pyDetails changed such that the \"template\": \"CaseView\"\n // is no longer a child of the created View but is in the created View's\n // config. So, we DON'T want to replace this.pConn$ since the created\n // component is a View (and not a ViewContainer). We now look for the\n // \"template\" type directly in the created component (newComp) and NOT\n // as a child of the newly created component.\n // console.log(`---> ModalViewContainer created new ${newCompName}`);\n\n // Use the newly created component (View) info but DO NOT replace\n // this ModalViewContainer's pConn$, etc.\n // Note that we're now using the newly created View's PConnect in the\n // ViewContainer HTML template to guide what's rendered similar to what\n // the React return of React.Fragment does\n\n // right now need to check caseInfo for changes, to trigger redraw, not getting\n // changes from angularPconnect except for first draw\n if (newComp && caseInfo && compareCaseInfoIsDifferent(caseInfo)) {\n setCreatedView(configObject);\n\n const { actionName } = latestItem;\n const theNewCaseInfo = newComp.getCaseInfo();\n const caseName = theNewCaseInfo.getName();\n const ID = theNewCaseInfo.getID();\n\n setTitle(actionName || `New ${caseName} (${ID})`);\n\n let arChildrenAsReact: Array<any> = [];\n\n if (newComp.getComponentName() === 'reference') {\n // Reference component doesn't have children. It can build the View we want.\n // The Reference component getPConnect is in configObject\n\n arChildrenAsReact.push(\n createElement(createPConnectComponent(), {\n ...configObject,\n key: `${caseName}-${ID}`\n })\n );\n } else {\n // This is the 8.6 implementation. Leaving it in for reference for now.\n // And create a similar array of the children as React components\n // passed to Assignment component when rendered\n arChildrenAsReact = newComp.getChildren().map(child => {\n // Use Case Summary ID as the React element's key\n const caseSummaryID = child.getPConnect().getCaseSummary().ID;\n return createElement(createPConnectComponent(), { ...child, key: caseSummaryID });\n });\n }\n\n if (arChildrenAsReact.length > 0) setArNewChildrenAsReact(arChildrenAsReact);\n\n setShowModal(true);\n\n // save off itemKey to be used for finishAssignment, etc.\n setItemKey(key);\n }\n }\n } else {\n if (bShowModal) {\n setShowModal(false);\n }\n if (!Utils.isEmptyObject(oCaseInfo)) {\n setOCaseInfo({});\n }\n }\n }\n });\n\n // function placeholderModalClose() {\n // // Intentionally a no-op. Similar behavior in other SDKs.\n // // Does NOT close the window. This forces the user to use\n // // the cancel or submit button to close the modal (which, in turn, gets the right\n // // Constellation code to run to clean up the containers, data, etc.)\n\n // // console.log(`ModalViewContainer: placeholderModalClose setting bShowModal to false`) setShowModal(false);\n // }\n\n // if (bShowModal) {\n // console.log(`ModalViewContainer about to show modal with`);\n // console.log(`--> createdView: ${createdView} createdView.getPConnect: ${typeof createdView.getPConnect}`);\n // console.log(`--> itemKey: ${itemKey}`);\n // console.log(`--> arNewChildrenAsReact: ${JSON.stringify(arNewChildrenAsReact)}`);\n // }\n\n return (\n <>\n <Dialog open={bShowModal} aria-labelledby='form-dialog-title'>\n <DialogTitle id='form-dialog-title' className={classes.dlgTitle}>\n {title}\n </DialogTitle>\n <DialogContent className={classes.dlgContent}>\n {bShowModal ? (\n <Assignment getPConnect={createdView.getPConnect} itemKey={itemKey} isInModal>\n {arNewChildrenAsReact}\n </Assignment>\n ) : (\n <></>\n )}\n </DialogContent>\n </Dialog>\n {bShowCancelAlert && (\n <CancelAlert\n pConn={cancelPConn}\n showAlert={bShowCancelAlert}\n updateAlertState={updateAlertState}\n />\n )}\n </>\n );\n};\n\nexport default ModalViewContainer;\n\nModalViewContainer.defaultProps = {\n getPConnect: null,\n loadingInfo: false,\n routingInfo: null\n};\n\nModalViewContainer.propTypes = {\n getPConnect: PropTypes.func,\n loadingInfo: PropTypes.bool,\n routingInfo: PropTypes.objectOf(PropTypes.any)\n};\n"]}
1
+ {"version":3,"file":"ModalViewContainer.js","sourceRoot":"","sources":["../../../../../src/components/infra/Containers/ModalViewContainer/ModalViewContainer.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { useEffect, useRef, useState, createElement } from 'react';\nimport PropTypes from 'prop-types';\nimport isEqual from 'fast-deep-equal';\nimport Dialog from '@material-ui/core/Dialog';\nimport DialogContent from '@material-ui/core/DialogContent';\nimport DialogTitle from '@material-ui/core/DialogTitle';\nimport { makeStyles } from '@material-ui/core/styles';\nimport createPConnectComponent from '../../../../bridge/react_pconnect';\n// Need to get correct implementation from component map for Assignment and CancelAlert\nimport { getComponentFromMap } from '../../../../bridge/helpers/sdk_component_map';\nimport { getBanners } from '../../../helpers/case-utils';\nimport { isEmptyObject } from '../../../helpers/common-utils';\n\n// Remove this and use \"real\" PCore type once .d.ts is fixed (currently shows 8 errors)\ndeclare const PCore: any;\n\n\nfunction buildName(pConnect, name = '') {\n const context = pConnect.getContextName();\n return `${context}/${name}`;\n}\n\nfunction getKeyAndLatestItem(routinginfo, pConn) {\n const containerName = pConn.getContainerName();\n if (PCore.getContainerUtils().hasContainerItems(buildName(pConn, containerName))) {\n const { accessedOrder, items } = routinginfo;\n const key = accessedOrder[accessedOrder.length - 1];\n const latestItem = items[key];\n return { key, latestItem };\n }\n return {};\n}\n\nfunction getConfigObject(item, pConnect) {\n if (item) {\n const { context, view } = item;\n const config = {\n meta: view,\n options: {\n context,\n pageReference: view.config.context || pConnect.getPageReference(),\n hasForm: true\n }\n };\n return PCore.createPConnect(config);\n }\n return null;\n}\n\nconst useStyles = makeStyles(theme => ({\n dlgTitle: {\n marginLeft: theme.spacing(2),\n marginRight: theme.spacing(2),\n marginTop: theme.spacing(2),\n marginBottom: theme.spacing(0)\n // paddingLeft: theme.spacing(0),\n // paddingRight: theme.spacing(0),\n // paddingTop: theme.spacing(0),\n // paddingBottom: theme.spacing(0),\n },\n dlgContent: {\n marginLeft: theme.spacing(2),\n marginRight: theme.spacing(2),\n marginTop: theme.spacing(0),\n marginBottom: theme.spacing(2)\n // paddingLeft: theme.spacing(0),\n // paddingRight: theme.spacing(0),\n // paddingTop: theme.spacing(0),\n // paddingBottom: theme.spacing(0),\n }\n}));\n\nconst ModalViewContainer = props => {\n // Get the proper implementation (local or Pega-provided) for these components that are emitted below\n const Assignment = getComponentFromMap(\"Assignment\");\n const CancelAlert = getComponentFromMap(\"CancelAlert\");\n\n const classes = useStyles();\n\n const routingInfoRef = useRef({});\n const { getPConnect, routingInfo, loadingInfo, pageMessages } = props;\n const pConn = getPConnect();\n const {\n CONTAINER_TYPE: { MULTIPLE },\n PUB_SUB_EVENTS: { EVENT_SHOW_CANCEL_ALERT }\n } = PCore.getConstants();\n const { subscribe } = PCore.getPubSubUtils();\n const [bShowModal, setShowModal] = useState(false);\n const [bSubscribed, setSubscribed] = useState(false);\n const [bShowCancelAlert, setShowCancelAlert] = useState(false);\n const [oCaseInfo, setOCaseInfo] = useState({});\n const [createdView, setCreatedView] = useState<any>(null);\n const [title, setTitle] = useState('');\n const [arNewChildrenAsReact, setArNewChildrenAsReact] = useState<Array<any>>([]);\n const [itemKey, setItemKey] = useState('');\n const [cancelPConn, setCancelPConn] = useState(null);\n\n const localizedVal = PCore.getLocaleUtils().getLocaleValue;\n const localeCategory = 'Data Object';\n\n\n function showAlert(payload) {\n const { latestItem } = getKeyAndLatestItem(routingInfoRef.current, pConn);\n const { isModalAction } = payload;\n\n /*\n If we are in create stage full page mode, created a new case and trying to click on cancel button\n it will show two alert dialogs which is not expected. Hence isModalAction flag to avoid that.\n */\n if (latestItem && isModalAction) {\n const configObject = getConfigObject(latestItem, pConn);\n setCancelPConn(configObject.getPConnect());\n setShowCancelAlert(true);\n }\n }\n\n function compareCaseInfoIsDifferent(oCurrentCaseInfo: Object): boolean {\n let bRet = false;\n\n // fast-deep-equal version\n if (isEqual !== undefined) {\n bRet = !isEqual(oCaseInfo, oCurrentCaseInfo);\n } else {\n const sCurrentCaseInfo = JSON.stringify(oCurrentCaseInfo);\n const sOldCaseInfo = JSON.stringify(oCaseInfo);\n // stringify compare version\n if (sCurrentCaseInfo !== sOldCaseInfo) {\n bRet = true;\n }\n }\n\n // if different, save off new case info\n if (bRet) {\n setOCaseInfo(JSON.parse(JSON.stringify(oCurrentCaseInfo)));\n }\n\n return bRet;\n }\n\n const updateAlertState = modalFlag => {\n setShowCancelAlert(false);\n setShowModal(modalFlag);\n };\n\n useEffect(() => {\n // Establish the necessary containers\n const containerMgr = pConn.getContainerManager();\n containerMgr.initializeContainers({ type: MULTIPLE });\n }, [MULTIPLE, pConn]);\n\n useEffect(() => {\n // Update routingInfoRef.current whenever routingInfo changes\n routingInfoRef.current = routingInfo;\n }, [routingInfo]);\n\n useEffect(() => {\n if (routingInfoRef.current && !loadingInfo) {\n const currentOrder = routingInfo.accessedOrder;\n\n if (undefined === currentOrder) {\n return;\n }\n\n const currentItems = routingInfo.items;\n\n const { key, latestItem } = getKeyAndLatestItem(routingInfoRef.current, pConn);\n\n // console.log(`ModalViewContainer: key: ${key} latestItem: ${JSON.stringify(latestItem)}`);\n\n if (currentOrder.length > 0) {\n if (\n currentItems[key] &&\n currentItems[key].view &&\n !isEmptyObject(currentItems[key].view)\n ) {\n const currentItem = currentItems[key];\n const rootView = currentItem.view;\n const { context } = rootView.config;\n const config = { meta: rootView };\n config['options'] = {\n context: currentItem.context,\n hasForm: true,\n pageReference: context || pConn.getPageReference()\n };\n\n if (!bSubscribed) {\n setSubscribed(true);\n subscribe(\n EVENT_SHOW_CANCEL_ALERT,\n showAlert,\n EVENT_SHOW_CANCEL_ALERT /* Unique string for subscription */\n );\n }\n\n const configObject = PCore.createPConnect(config);\n\n // THIS is where the ViewContainer creates a View\n // The config has meta.config.type = \"view\"\n const newComp = configObject.getPConnect();\n // const newCompName = newComp.getComponentName();\n const caseInfo =\n newComp && newComp.getDataObject() && newComp.getDataObject().caseInfo\n ? newComp.getDataObject().caseInfo\n : null;\n\n // console.log(`ModalViewContainer just created newComp: ${newCompName}`);\n\n // The metadata for pyDetails changed such that the \"template\": \"CaseView\"\n // is no longer a child of the created View but is in the created View's\n // config. So, we DON'T want to replace this.pConn$ since the created\n // component is a View (and not a ViewContainer). We now look for the\n // \"template\" type directly in the created component (newComp) and NOT\n // as a child of the newly created component.\n // console.log(`---> ModalViewContainer created new ${newCompName}`);\n\n // Use the newly created component (View) info but DO NOT replace\n // this ModalViewContainer's pConn$, etc.\n // Note that we're now using the newly created View's PConnect in the\n // ViewContainer HTML template to guide what's rendered similar to what\n // the React return of React.Fragment does\n\n // right now need to check caseInfo for changes, to trigger redraw, not getting\n // changes from angularPconnect except for first draw\n if (newComp && caseInfo && compareCaseInfoIsDifferent(caseInfo)) {\n setCreatedView(configObject);\n\n const { actionName } = latestItem;\n const theNewCaseInfo = newComp.getCaseInfo();\n const caseName = theNewCaseInfo.getName();\n const ID = theNewCaseInfo.getID();\n\n setTitle(actionName || `${localizedVal('New', localeCategory)} ${caseName} (${ID})`);\n\n let arChildrenAsReact: Array<any> = [];\n\n if (newComp.getComponentName() === 'reference') {\n // Reference component doesn't have children. It can build the View we want.\n // The Reference component getPConnect is in configObject\n\n arChildrenAsReact.push(\n createElement(createPConnectComponent(), {\n ...configObject,\n key: `${caseName}-${ID}`\n })\n );\n } else {\n // This is the 8.6 implementation. Leaving it in for reference for now.\n // And create a similar array of the children as React components\n // passed to Assignment component when rendered\n arChildrenAsReact = newComp.getChildren().map(child => {\n // Use Case Summary ID as the React element's key\n const caseSummaryID = child.getPConnect().getCaseSummary().ID;\n return createElement(createPConnectComponent(), { ...child, key: caseSummaryID });\n });\n }\n\n if (arChildrenAsReact.length > 0) setArNewChildrenAsReact(arChildrenAsReact);\n\n setShowModal(true);\n\n // save off itemKey to be used for finishAssignment, etc.\n setItemKey(key);\n }\n }\n } else {\n if (bShowModal) {\n setShowModal(false);\n }\n if (!isEmptyObject(oCaseInfo)) {\n setOCaseInfo({});\n }\n }\n }\n });\n\n // function placeholderModalClose() {\n // // Intentionally a no-op. Similar behavior in other SDKs.\n // // Does NOT close the window. This forces the user to use\n // // the cancel or submit button to close the modal (which, in turn, gets the right\n // // Constellation code to run to clean up the containers, data, etc.)\n\n // // console.log(`ModalViewContainer: placeholderModalClose setting bShowModal to false`) setShowModal(false);\n // }\n\n // if (bShowModal) {\n // console.log(`ModalViewContainer about to show modal with`);\n // console.log(`--> createdView: ${createdView} createdView.getPConnect: ${typeof createdView.getPConnect}`);\n // console.log(`--> itemKey: ${itemKey}`);\n // console.log(`--> arNewChildrenAsReact: ${JSON.stringify(arNewChildrenAsReact)}`);\n // }\n\n return (\n <>\n <Dialog open={bShowModal} aria-labelledby='form-dialog-title'>\n <DialogTitle id='form-dialog-title' className={classes.dlgTitle}>\n {title}\n </DialogTitle>\n <DialogContent className={classes.dlgContent}>\n {bShowModal ? (\n <Assignment\n getPConnect={createdView.getPConnect}\n itemKey={itemKey}\n isInModal\n banners={getBanners({\n target: itemKey,\n pageMessages\n })}\n >\n {arNewChildrenAsReact}\n </Assignment>\n ) : (\n <></>\n )}\n </DialogContent>\n </Dialog>\n {bShowCancelAlert && (\n <CancelAlert\n pConn={cancelPConn}\n showAlert={bShowCancelAlert}\n updateAlertState={updateAlertState}\n />\n )}\n </>\n );\n};\n\nexport default ModalViewContainer;\n\nModalViewContainer.defaultProps = {\n getPConnect: null,\n loadingInfo: false,\n routingInfo: null\n};\n\nModalViewContainer.propTypes = {\n getPConnect: PropTypes.func,\n loadingInfo: PropTypes.bool,\n routingInfo: PropTypes.objectOf(PropTypes.any)\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"ViewContainer.d.ts","sourceRoot":"","sources":["../../../../../src/components/infra/Containers/ViewContainer/ViewContainer.tsx"],"names":[],"mappings":";AACA,OAAO,SAAS,MAAM,YAAY,CAAC;AAkBnC,iBAAwB,aAAa,CAAC,KAAK,KAAA,eAkL1C;kBAlLuB,aAAa;;;;;;;;;;;;;;;;;;;;eAAb,aAAa"}
1
+ {"version":3,"file":"ViewContainer.d.ts","sourceRoot":"","sources":["../../../../../src/components/infra/Containers/ViewContainer/ViewContainer.tsx"],"names":[],"mappings":";AACA,OAAO,SAAS,MAAM,YAAY,CAAC;AAoBnC,iBAAwB,aAAa,CAAC,KAAK,KAAA,eAkL1C;kBAlLuB,aAAa;;;;;;;;;;;;;;;;;;;;eAAb,aAAa"}
@@ -3,7 +3,9 @@ import PropTypes from "prop-types";
3
3
  import { Box, CircularProgress } from "@material-ui/core";
4
4
  import createPConnectComponent from "../../../../bridge/react_pconnect";
5
5
  import StoreContext from "../../../../bridge/Context/StoreContext";
6
- import Utils from '../../../helpers/utils';
6
+ import { isEmptyObject } from '../../../helpers/common-utils';
7
+ // ViewContainer can emit View
8
+ // import View from '../View';
7
9
  //
8
10
  // WARNING: It is not expected that this file should be modified. It is part of infrastructure code that works with
9
11
  // Redux and creation/update of Redux containers and PConnect. Modifying this code could have undesireable results and
@@ -119,7 +121,7 @@ export default function ViewContainer(props) {
119
121
  componentVisible = visible || componentVisible;
120
122
  if (items[key] &&
121
123
  items[key].view &&
122
- !Utils.isEmptyObject(items[key].view)) {
124
+ !isEmptyObject(items[key].view)) {
123
125
  const latestItem = items[key];
124
126
  const rootView = latestItem.view;
125
127
  const { context, name: viewName } = rootView.config;