@pega/react-sdk-components 24.1.10 → 24.2.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (279) hide show
  1. package/lib/bridge/react_pconnect.d.ts.map +1 -1
  2. package/lib/bridge/react_pconnect.js +2 -1
  3. package/lib/bridge/react_pconnect.js.map +1 -1
  4. package/lib/components/designSystemExtension/AlertBanner/AlertBanner.js +1 -1
  5. package/lib/components/designSystemExtension/AlertBanner/AlertBanner.js.map +1 -1
  6. package/lib/components/designSystemExtension/Banner/Banner.js +1 -1
  7. package/lib/components/designSystemExtension/Banner/Banner.js.map +1 -1
  8. package/lib/components/designSystemExtension/CaseSummaryFields/CaseSummaryFields.css +0 -1
  9. package/lib/components/designSystemExtension/CaseSummaryFields/CaseSummaryFields.d.ts.map +1 -1
  10. package/lib/components/designSystemExtension/CaseSummaryFields/CaseSummaryFields.js +11 -11
  11. package/lib/components/designSystemExtension/CaseSummaryFields/CaseSummaryFields.js.map +1 -1
  12. package/lib/components/designSystemExtension/DetailsFields/DetailsFields.js +4 -4
  13. package/lib/components/designSystemExtension/DetailsFields/DetailsFields.js.map +1 -1
  14. package/lib/components/designSystemExtension/FieldGroup/FieldGroup.js +4 -4
  15. package/lib/components/designSystemExtension/FieldGroup/FieldGroup.js.map +1 -1
  16. package/lib/components/designSystemExtension/FieldGroupList/FieldGroupList.js +4 -4
  17. package/lib/components/designSystemExtension/FieldGroupList/FieldGroupList.js.map +1 -1
  18. package/lib/components/designSystemExtension/FieldValueList/FieldValueList.js +6 -6
  19. package/lib/components/designSystemExtension/FieldValueList/FieldValueList.js.map +1 -1
  20. package/lib/components/designSystemExtension/Operator/Operator.d.ts.map +1 -1
  21. package/lib/components/designSystemExtension/Operator/Operator.js +6 -6
  22. package/lib/components/designSystemExtension/Operator/Operator.js.map +1 -1
  23. package/lib/components/designSystemExtension/Pulse/Pulse.js +2 -2
  24. package/lib/components/designSystemExtension/Pulse/Pulse.js.map +1 -1
  25. package/lib/components/designSystemExtension/RichTextEditor/RichTextEditor.d.ts.map +1 -1
  26. package/lib/components/designSystemExtension/RichTextEditor/RichTextEditor.js +3 -2
  27. package/lib/components/designSystemExtension/RichTextEditor/RichTextEditor.js.map +1 -1
  28. package/lib/components/designSystemExtension/WssQuickCreate/WssQuickCreate.js +1 -1
  29. package/lib/components/designSystemExtension/WssQuickCreate/WssQuickCreate.js.map +1 -1
  30. package/lib/components/field/AutoComplete/AutoComplete.js +4 -4
  31. package/lib/components/field/AutoComplete/AutoComplete.js.map +1 -1
  32. package/lib/components/field/CancelAlert/CancelAlert.d.ts.map +1 -1
  33. package/lib/components/field/CancelAlert/CancelAlert.js +3 -6
  34. package/lib/components/field/CancelAlert/CancelAlert.js.map +1 -1
  35. package/lib/components/field/Checkbox/Checkbox.d.ts.map +1 -1
  36. package/lib/components/field/Checkbox/Checkbox.js +4 -4
  37. package/lib/components/field/Checkbox/Checkbox.js.map +1 -1
  38. package/lib/components/field/Currency/Currency.d.ts.map +1 -1
  39. package/lib/components/field/Currency/Currency.js +9 -8
  40. package/lib/components/field/Currency/Currency.js.map +1 -1
  41. package/lib/components/field/Date/Date.d.ts.map +1 -1
  42. package/lib/components/field/Date/Date.js +21 -9
  43. package/lib/components/field/Date/Date.js.map +1 -1
  44. package/lib/components/field/DateTime/DateTime.d.ts.map +1 -1
  45. package/lib/components/field/DateTime/DateTime.js +38 -9
  46. package/lib/components/field/DateTime/DateTime.js.map +1 -1
  47. package/lib/components/field/Decimal/Decimal.d.ts.map +1 -1
  48. package/lib/components/field/Decimal/Decimal.js +8 -5
  49. package/lib/components/field/Decimal/Decimal.js.map +1 -1
  50. package/lib/components/field/Dropdown/Dropdown.d.ts.map +1 -1
  51. package/lib/components/field/Dropdown/Dropdown.js +18 -12
  52. package/lib/components/field/Dropdown/Dropdown.js.map +1 -1
  53. package/lib/components/field/Email/Email.d.ts.map +1 -1
  54. package/lib/components/field/Email/Email.js +21 -5
  55. package/lib/components/field/Email/Email.js.map +1 -1
  56. package/lib/components/field/Group/Group.js +2 -2
  57. package/lib/components/field/Group/Group.js.map +1 -1
  58. package/lib/components/field/Integer/Integer.d.ts.map +1 -1
  59. package/lib/components/field/Integer/Integer.js +17 -6
  60. package/lib/components/field/Integer/Integer.js.map +1 -1
  61. package/lib/components/field/Multiselect/Multiselect.d.ts.map +1 -1
  62. package/lib/components/field/Multiselect/Multiselect.js +12 -8
  63. package/lib/components/field/Multiselect/Multiselect.js.map +1 -1
  64. package/lib/components/field/Percentage/Percentage.d.ts.map +1 -1
  65. package/lib/components/field/Percentage/Percentage.js +7 -4
  66. package/lib/components/field/Percentage/Percentage.js.map +1 -1
  67. package/lib/components/field/Phone/Phone.d.ts.map +1 -1
  68. package/lib/components/field/Phone/Phone.js +4 -4
  69. package/lib/components/field/Phone/Phone.js.map +1 -1
  70. package/lib/components/field/RadioButtons/RadioButtons.d.ts.map +1 -1
  71. package/lib/components/field/RadioButtons/RadioButtons.js +6 -12
  72. package/lib/components/field/RadioButtons/RadioButtons.js.map +1 -1
  73. package/lib/components/field/RichText/RichText.js +1 -1
  74. package/lib/components/field/RichText/RichText.js.map +1 -1
  75. package/lib/components/field/ScalarList/ScalarList.d.ts.map +1 -1
  76. package/lib/components/field/ScalarList/ScalarList.js +5 -5
  77. package/lib/components/field/ScalarList/ScalarList.js.map +1 -1
  78. package/lib/components/field/SemanticLink/SemanticLink.js +4 -4
  79. package/lib/components/field/SemanticLink/SemanticLink.js.map +1 -1
  80. package/lib/components/field/TextArea/TextArea.d.ts.map +1 -1
  81. package/lib/components/field/TextArea/TextArea.js +20 -4
  82. package/lib/components/field/TextArea/TextArea.js.map +1 -1
  83. package/lib/components/field/TextContent/TextContent.js +1 -1
  84. package/lib/components/field/TextContent/TextContent.js.map +1 -1
  85. package/lib/components/field/TextInput/TextInput.js +2 -2
  86. package/lib/components/field/TextInput/TextInput.js.map +1 -1
  87. package/lib/components/field/Time/Time.d.ts.map +1 -1
  88. package/lib/components/field/Time/Time.js +31 -8
  89. package/lib/components/field/Time/Time.js.map +1 -1
  90. package/lib/components/field/URL/URL.d.ts.map +1 -1
  91. package/lib/components/field/URL/URL.js +19 -4
  92. package/lib/components/field/URL/URL.js.map +1 -1
  93. package/lib/components/field/UserReference/UserReference.d.ts.map +1 -1
  94. package/lib/components/field/UserReference/UserReference.js +3 -5
  95. package/lib/components/field/UserReference/UserReference.js.map +1 -1
  96. package/lib/components/helpers/common-utils.d.ts +7 -0
  97. package/lib/components/helpers/common-utils.d.ts.map +1 -1
  98. package/lib/components/helpers/common-utils.js +21 -1
  99. package/lib/components/helpers/common-utils.js.map +1 -1
  100. package/lib/components/helpers/field-group-utils.js +2 -2
  101. package/lib/components/helpers/field-group-utils.js.map +1 -1
  102. package/lib/components/helpers/formatters/Currency.d.ts.map +1 -1
  103. package/lib/components/helpers/formatters/Currency.js +12 -15
  104. package/lib/components/helpers/formatters/Currency.js.map +1 -1
  105. package/lib/components/helpers/formatters/common.d.ts +2 -2
  106. package/lib/components/helpers/formatters/common.d.ts.map +1 -1
  107. package/lib/components/helpers/formatters/common.js +2 -1
  108. package/lib/components/helpers/formatters/common.js.map +1 -1
  109. package/lib/components/helpers/formatters/index.d.ts.map +1 -1
  110. package/lib/components/helpers/formatters/index.js +2 -3
  111. package/lib/components/helpers/formatters/index.js.map +1 -1
  112. package/lib/components/helpers/simpleTableHelpers.d.ts +1 -1
  113. package/lib/components/helpers/simpleTableHelpers.js +1 -1
  114. package/lib/components/helpers/simpleTableHelpers.js.map +1 -1
  115. package/lib/components/infra/ActionButtons/ActionButtons.js +3 -3
  116. package/lib/components/infra/ActionButtons/ActionButtons.js.map +1 -1
  117. package/lib/components/infra/Assignment/Assignment.d.ts.map +1 -1
  118. package/lib/components/infra/Assignment/Assignment.js +11 -13
  119. package/lib/components/infra/Assignment/Assignment.js.map +1 -1
  120. package/lib/components/infra/Containers/FlowContainer/FlowContainer.d.ts.map +1 -1
  121. package/lib/components/infra/Containers/FlowContainer/FlowContainer.js +12 -22
  122. package/lib/components/infra/Containers/FlowContainer/FlowContainer.js.map +1 -1
  123. package/lib/components/infra/Containers/FlowContainer/helpers.d.ts.map +1 -1
  124. package/lib/components/infra/Containers/FlowContainer/helpers.js +1 -5
  125. package/lib/components/infra/Containers/FlowContainer/helpers.js.map +1 -1
  126. package/lib/components/infra/Containers/ModalViewContainer/ListViewActionButtons/ListViewActionButtons.d.ts.map +1 -1
  127. package/lib/components/infra/Containers/ModalViewContainer/ListViewActionButtons/ListViewActionButtons.js +9 -4
  128. package/lib/components/infra/Containers/ModalViewContainer/ListViewActionButtons/ListViewActionButtons.js.map +1 -1
  129. package/lib/components/infra/Containers/ModalViewContainer/ModalViewContainer.js +7 -7
  130. package/lib/components/infra/Containers/ModalViewContainer/ModalViewContainer.js.map +1 -1
  131. package/lib/components/infra/Containers/SimpleView/helper.js +1 -1
  132. package/lib/components/infra/Containers/SimpleView/helper.js.map +1 -1
  133. package/lib/components/infra/Containers/ViewContainer/ViewContainer.js +1 -1
  134. package/lib/components/infra/Containers/ViewContainer/ViewContainer.js.map +1 -1
  135. package/lib/components/infra/Containers/container-helpers.d.ts +2 -0
  136. package/lib/components/infra/Containers/container-helpers.d.ts.map +1 -0
  137. package/lib/components/infra/Containers/{helpers.js → container-helpers.js} +1 -1
  138. package/lib/components/infra/Containers/container-helpers.js.map +1 -0
  139. package/lib/components/infra/DashboardFilter/DashboardFilter.d.ts.map +1 -1
  140. package/lib/components/infra/DashboardFilter/DashboardFilter.js +3 -4
  141. package/lib/components/infra/DashboardFilter/DashboardFilter.js.map +1 -1
  142. package/lib/components/infra/DashboardFilter/filterUtils.d.ts.map +1 -1
  143. package/lib/components/infra/DashboardFilter/filterUtils.js +3 -5
  144. package/lib/components/infra/DashboardFilter/filterUtils.js.map +1 -1
  145. package/lib/components/infra/DeferLoad/DeferLoad.d.ts +1 -0
  146. package/lib/components/infra/DeferLoad/DeferLoad.d.ts.map +1 -1
  147. package/lib/components/infra/DeferLoad/DeferLoad.js +7 -8
  148. package/lib/components/infra/DeferLoad/DeferLoad.js.map +1 -1
  149. package/lib/components/infra/MultiStep/MultiStep.d.ts +1 -1
  150. package/lib/components/infra/MultiStep/MultiStep.d.ts.map +1 -1
  151. package/lib/components/infra/MultiStep/MultiStep.js +12 -11
  152. package/lib/components/infra/MultiStep/MultiStep.js.map +1 -1
  153. package/lib/components/infra/NavBar/NavBar.css +1 -0
  154. package/lib/components/infra/NavBar/NavBar.d.ts.map +1 -1
  155. package/lib/components/infra/NavBar/NavBar.js +24 -16
  156. package/lib/components/infra/NavBar/NavBar.js.map +1 -1
  157. package/lib/components/infra/RootContainer/RootContainer.d.ts.map +1 -1
  158. package/lib/components/infra/RootContainer/RootContainer.js +5 -6
  159. package/lib/components/infra/RootContainer/RootContainer.js.map +1 -1
  160. package/lib/components/infra/Stages/Stages.js +4 -4
  161. package/lib/components/infra/Stages/Stages.js.map +1 -1
  162. package/lib/components/infra/VerticalTabs/LeftAlignVerticalTabs/LeftAlignVerticalTabs.d.ts.map +1 -1
  163. package/lib/components/infra/VerticalTabs/LeftAlignVerticalTabs/LeftAlignVerticalTabs.js +4 -3
  164. package/lib/components/infra/VerticalTabs/LeftAlignVerticalTabs/LeftAlignVerticalTabs.js.map +1 -1
  165. package/lib/components/infra/VerticalTabs/VerticalTabs/VerticalTabs.js +2 -2
  166. package/lib/components/infra/VerticalTabs/VerticalTabs/VerticalTabs.js.map +1 -1
  167. package/lib/components/infra/View/View.d.ts +1 -0
  168. package/lib/components/infra/View/View.d.ts.map +1 -1
  169. package/lib/components/infra/View/View.js +32 -2
  170. package/lib/components/infra/View/View.js.map +1 -1
  171. package/lib/components/template/AppShell/AppShell.d.ts +2 -0
  172. package/lib/components/template/AppShell/AppShell.d.ts.map +1 -1
  173. package/lib/components/template/AppShell/AppShell.js +33 -10
  174. package/lib/components/template/AppShell/AppShell.js.map +1 -1
  175. package/lib/components/template/CaseView/CaseView.d.ts +1 -0
  176. package/lib/components/template/CaseView/CaseView.d.ts.map +1 -1
  177. package/lib/components/template/CaseView/CaseView.js +7 -7
  178. package/lib/components/template/CaseView/CaseView.js.map +1 -1
  179. package/lib/components/template/CaseViewActionsMenu/CaseViewActionsMenu.js +6 -6
  180. package/lib/components/template/CaseViewActionsMenu/CaseViewActionsMenu.js.map +1 -1
  181. package/lib/components/template/Confirmation/Confirmation.d.ts.map +1 -1
  182. package/lib/components/template/Confirmation/Confirmation.js +3 -2
  183. package/lib/components/template/Confirmation/Confirmation.js.map +1 -1
  184. package/lib/components/template/DataReference/DataReference.js +2 -2
  185. package/lib/components/template/DataReference/DataReference.js.map +1 -1
  186. package/lib/components/template/Details/Details/Details.js +2 -2
  187. package/lib/components/template/Details/Details/Details.js.map +1 -1
  188. package/lib/components/template/Details/DetailsSubTabs/DetailsSubTabs.js +3 -3
  189. package/lib/components/template/Details/DetailsSubTabs/DetailsSubTabs.js.map +1 -1
  190. package/lib/components/template/Details/DetailsThreeColumn/DetailsThreeColumn.js +2 -2
  191. package/lib/components/template/Details/DetailsThreeColumn/DetailsThreeColumn.js.map +1 -1
  192. package/lib/components/template/Details/DetailsTwoColumn/DetailsTwoColumn.js +2 -2
  193. package/lib/components/template/Details/DetailsTwoColumn/DetailsTwoColumn.js.map +1 -1
  194. package/lib/components/template/Details/DynamicTabs/DynamicTabs.d.ts.map +1 -1
  195. package/lib/components/template/Details/DynamicTabs/DynamicTabs.js +4 -4
  196. package/lib/components/template/Details/DynamicTabs/DynamicTabs.js.map +1 -1
  197. package/lib/components/template/FieldGroupTemplate/FieldGroupTemplate.d.ts.map +1 -1
  198. package/lib/components/template/FieldGroupTemplate/FieldGroupTemplate.js +9 -5
  199. package/lib/components/template/FieldGroupTemplate/FieldGroupTemplate.js.map +1 -1
  200. package/lib/components/template/InlineDashboard/InlineDashboard.js +2 -2
  201. package/lib/components/template/InlineDashboard/InlineDashboard.js.map +1 -1
  202. package/lib/components/template/ListView/ListView.d.ts.map +1 -1
  203. package/lib/components/template/ListView/ListView.js +45 -45
  204. package/lib/components/template/ListView/ListView.js.map +1 -1
  205. package/lib/components/template/ListView/utils.d.ts.map +1 -1
  206. package/lib/components/template/ListView/utils.js +1 -2
  207. package/lib/components/template/ListView/utils.js.map +1 -1
  208. package/lib/components/template/NarrowWide/NarrowWideDetails/NarrowWideDetails.js +2 -2
  209. package/lib/components/template/NarrowWide/NarrowWideDetails/NarrowWideDetails.js.map +1 -1
  210. package/lib/components/template/OneColumn/OneColumn/OneColumn.js +2 -2
  211. package/lib/components/template/OneColumn/OneColumn/OneColumn.js.map +1 -1
  212. package/lib/components/template/PromotedFilters/PromotedFilters.d.ts.map +1 -1
  213. package/lib/components/template/PromotedFilters/PromotedFilters.js +1 -2
  214. package/lib/components/template/PromotedFilters/PromotedFilters.js.map +1 -1
  215. package/lib/components/template/SimpleTable/SimpleTable/SimpleTable.d.ts.map +1 -1
  216. package/lib/components/template/SimpleTable/SimpleTable/SimpleTable.js +0 -2
  217. package/lib/components/template/SimpleTable/SimpleTable/SimpleTable.js.map +1 -1
  218. package/lib/components/template/SimpleTable/SimpleTableManual/SimpleTableManual.d.ts +2 -0
  219. package/lib/components/template/SimpleTable/SimpleTableManual/SimpleTableManual.d.ts.map +1 -1
  220. package/lib/components/template/SimpleTable/SimpleTableManual/SimpleTableManual.js +67 -44
  221. package/lib/components/template/SimpleTable/SimpleTableManual/SimpleTableManual.js.map +1 -1
  222. package/lib/components/template/SimpleTable/SimpleTableSelect/SimpleTableSelect.d.ts.map +1 -1
  223. package/lib/components/template/SimpleTable/SimpleTableSelect/SimpleTableSelect.js +2 -4
  224. package/lib/components/template/SimpleTable/SimpleTableSelect/SimpleTableSelect.js.map +1 -1
  225. package/lib/components/template/SubTabs/SubTabs.js +2 -2
  226. package/lib/components/template/SubTabs/SubTabs.js.map +1 -1
  227. package/lib/components/template/TwoColumn/TwoColumn/TwoColumn.js +2 -2
  228. package/lib/components/template/TwoColumn/TwoColumn/TwoColumn.js.map +1 -1
  229. package/lib/components/template/TwoColumn/TwoColumnTab/TwoColumnTab.js +2 -2
  230. package/lib/components/template/TwoColumn/TwoColumnTab/TwoColumnTab.js.map +1 -1
  231. package/lib/components/template/WideNarrow/WideNarrowDetails/WideNarrowDetails.js +2 -2
  232. package/lib/components/template/WideNarrow/WideNarrowDetails/WideNarrowDetails.js.map +1 -1
  233. package/lib/components/template/WssNavBar/WssNavBar.js +9 -9
  234. package/lib/components/template/WssNavBar/WssNavBar.js.map +1 -1
  235. package/lib/components/widget/AppAnnouncement/AppAnnouncement.js +2 -2
  236. package/lib/components/widget/AppAnnouncement/AppAnnouncement.js.map +1 -1
  237. package/lib/components/widget/Attachment/Attachment.css +1 -0
  238. package/lib/components/widget/Attachment/Attachment.d.ts.map +1 -1
  239. package/lib/components/widget/Attachment/Attachment.js +7 -10
  240. package/lib/components/widget/Attachment/Attachment.js.map +1 -1
  241. package/lib/components/widget/CaseHistory/CaseHistory.d.ts.map +1 -1
  242. package/lib/components/widget/CaseHistory/CaseHistory.js +8 -7
  243. package/lib/components/widget/CaseHistory/CaseHistory.js.map +1 -1
  244. package/lib/components/widget/FileUtility/ActionButtonsForFileUtil/ActionButtonsForFileUtil.js +1 -1
  245. package/lib/components/widget/FileUtility/ActionButtonsForFileUtil/ActionButtonsForFileUtil.js.map +1 -1
  246. package/lib/components/widget/FileUtility/FileUtility/FileUtility.d.ts.map +1 -1
  247. package/lib/components/widget/FileUtility/FileUtility/FileUtility.js +4 -4
  248. package/lib/components/widget/FileUtility/FileUtility/FileUtility.js.map +1 -1
  249. package/lib/components/widget/Followers/Followers.js +2 -2
  250. package/lib/components/widget/Followers/Followers.js.map +1 -1
  251. package/lib/components/widget/QuickCreate/QuickCreate.d.ts.map +1 -1
  252. package/lib/components/widget/QuickCreate/QuickCreate.js +0 -1
  253. package/lib/components/widget/QuickCreate/QuickCreate.js.map +1 -1
  254. package/lib/components/widget/SummaryItem/SummaryItem.d.ts.map +1 -1
  255. package/lib/components/widget/SummaryItem/SummaryItem.js +3 -3
  256. package/lib/components/widget/SummaryItem/SummaryItem.js.map +1 -1
  257. package/lib/components/widget/ToDo/ToDo.d.ts.map +1 -1
  258. package/lib/components/widget/ToDo/ToDo.js +60 -17
  259. package/lib/components/widget/ToDo/ToDo.js.map +1 -1
  260. package/lib/hooks/index.d.ts +2 -0
  261. package/lib/hooks/index.d.ts.map +1 -1
  262. package/lib/hooks/index.js +2 -0
  263. package/lib/hooks/index.js.map +1 -1
  264. package/lib/hooks/useFocusFirstField.d.ts +7 -0
  265. package/lib/hooks/useFocusFirstField.d.ts.map +1 -0
  266. package/lib/hooks/useFocusFirstField.js +20 -0
  267. package/lib/hooks/useFocusFirstField.js.map +1 -0
  268. package/lib/hooks/useScrolltoTop.d.ts +7 -0
  269. package/lib/hooks/useScrolltoTop.d.ts.map +1 -0
  270. package/lib/hooks/useScrolltoTop.js +13 -0
  271. package/lib/hooks/useScrolltoTop.js.map +1 -0
  272. package/lib/theme.d.ts +11 -0
  273. package/lib/theme.d.ts.map +1 -0
  274. package/lib/theme.js +31 -0
  275. package/lib/theme.js.map +1 -0
  276. package/package.json +1 -1
  277. package/lib/components/infra/Containers/helpers.d.ts +0 -2
  278. package/lib/components/infra/Containers/helpers.d.ts.map +0 -1
  279. package/lib/components/infra/Containers/helpers.js.map +0 -1
@@ -8,7 +8,8 @@ export function getLocale(locale = '') {
8
8
  // fallback
9
9
  return Intl.DateTimeFormat().resolvedOptions().locale;
10
10
  }
11
- export function getCurrentTimezone(timezone = 'America/New_York') {
11
+ export function getCurrentTimezone(timezone) {
12
+ // use timezone if specified
12
13
  if (timezone)
13
14
  return timezone;
14
15
  return PCore?.getLocaleUtils?.().getTimeZoneInUse?.();
@@ -1 +1 @@
1
- {"version":3,"file":"common.js","sourceRoot":"","sources":["../../../../src/components/helpers/formatters/common.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,SAAS,CAAC,SAAiB,EAAE;IAC3C,0BAA0B;IAC1B,IAAI,MAAM;QAAE,OAAO,MAAM,CAAC;IAC1B,iDAAiD;IACjD,IAAI,KAAK,CAAC,kBAAkB,EAAE,CAAC,SAAS,EAAE;QAAE,OAAO,KAAK,CAAC,kBAAkB,EAAE,CAAC,SAAS,EAAE,CAAC;IAC1F,WAAW;IACX,OAAO,IAAI,CAAC,cAAc,EAAE,CAAC,eAAe,EAAE,CAAC,MAAM,CAAC;AACxD,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,WAAmB,kBAAkB;IACtE,IAAI,QAAQ;QAAE,OAAO,QAAQ,CAAC;IAC9B,OAAO,KAAK,EAAE,cAAc,EAAE,EAAE,CAAC,gBAAgB,EAAE,EAAE,CAAC;AACxD,CAAC","sourcesContent":["export function getLocale(locale: string = '') {\n // use locale if specified\n if (locale) return locale;\n // otherwise, use operator locale if it's defined\n if (PCore.getEnvironmentInfo().getLocale()) return PCore.getEnvironmentInfo().getLocale();\n // fallback\n return Intl.DateTimeFormat().resolvedOptions().locale;\n}\n\nexport function getCurrentTimezone(timezone: string = 'America/New_York') {\n if (timezone) return timezone;\n return PCore?.getLocaleUtils?.().getTimeZoneInUse?.();\n}\n"]}
1
+ {"version":3,"file":"common.js","sourceRoot":"","sources":["../../../../src/components/helpers/formatters/common.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,SAAS,CAAC,SAAiB,EAAE;IAC3C,0BAA0B;IAC1B,IAAI,MAAM;QAAE,OAAO,MAAM,CAAC;IAC1B,iDAAiD;IACjD,IAAI,KAAK,CAAC,kBAAkB,EAAE,CAAC,SAAS,EAAE;QAAE,OAAO,KAAK,CAAC,kBAAkB,EAAE,CAAC,SAAS,EAAE,CAAC;IAC1F,WAAW;IACX,OAAO,IAAI,CAAC,cAAc,EAAE,CAAC,eAAe,EAAE,CAAC,MAAM,CAAC;AACxD,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,QAAiB;IAClD,4BAA4B;IAC5B,IAAI,QAAQ;QAAE,OAAO,QAAQ,CAAC;IAC9B,OAAO,KAAK,EAAE,cAAc,EAAE,EAAE,CAAC,gBAAgB,EAAE,EAAE,CAAC;AACxD,CAAC","sourcesContent":["export function getLocale(locale: string = '') {\n // use locale if specified\n if (locale) return locale;\n // otherwise, use operator locale if it's defined\n if (PCore.getEnvironmentInfo().getLocale()) return PCore.getEnvironmentInfo().getLocale();\n // fallback\n return Intl.DateTimeFormat().resolvedOptions().locale;\n}\n\nexport function getCurrentTimezone(timezone?: string) {\n // use timezone if specified\n if (timezone) return timezone;\n return PCore?.getLocaleUtils?.().getTimeZoneInUse?.();\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/helpers/formatters/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAKA,wBAIE;AAmDF,wBAAgB,MAAM,CAAC,KAAK,KAAA,EAAE,IAAI,KAAA,EAAE,OAAO,KAAK,GAAG,MAAM,CAuExD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/helpers/formatters/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAKA,wBAIE;AAiDF,wBAAgB,MAAM,CAAC,KAAK,KAAA,EAAE,IAAI,KAAA,EAAE,OAAO,KAAK,GAAG,MAAM,CAuExD"}
@@ -15,9 +15,8 @@ function getDateObject(text) {
15
15
  const month = parseInt(timeStamp.substr(4, 2), 10) - 1;
16
16
  const day = parseInt(timeStamp.substr(6, 2), 10);
17
17
  const date = new Date();
18
- date.setDate(day);
19
- date.setMonth(month);
20
- date.setFullYear(year);
18
+ // Fix to handle all the dates, raised via https://github.com/pegasystems/react-sdk-components/issues/442
19
+ date.setFullYear(year, month, day);
21
20
  if (isDateTime) {
22
21
  const hours = parseInt(timeStamp.substr(9, 2), 10);
23
22
  const minutes = parseInt(timeStamp.substr(11, 2), 10);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/helpers/formatters/index.ts"],"names":[],"mappings":"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","sourcesContent":["import Boolean from './Boolean';\nimport Currency from './Currency';\nimport DateFormatter from './Date';\nimport { getCurrentTimezone, getLocale } from './common';\n\nexport default {\n ...Boolean,\n ...Currency,\n ...DateFormatter\n};\n\nfunction getDateObject(text): Date {\n // TODO - cleanup formatters util functions as DX APIs are returning values per ISO std now.\n const timeStamp = text.replace(/-/g, '');\n const isDateTime = timeStamp.indexOf('GMT') !== -1;\n const year = parseInt(timeStamp.substr(0, 4), 10);\n const month = parseInt(timeStamp.substr(4, 2), 10) - 1;\n const day = parseInt(timeStamp.substr(6, 2), 10);\n\n const date = new Date();\n\n date.setDate(day);\n date.setMonth(month);\n date.setFullYear(year);\n\n if (isDateTime) {\n const hours = parseInt(timeStamp.substr(9, 2), 10);\n const minutes = parseInt(timeStamp.substr(11, 2), 10);\n const seconds = parseInt(timeStamp.substr(13, 2), 10);\n const ms = parseInt(timeStamp.substr(16, 3), 10);\n date.setHours(hours);\n date.setMinutes(minutes);\n date.setSeconds(seconds);\n date.setMilliseconds(ms);\n }\n\n return date;\n}\n\nfunction isIsoDate(str) {\n if (!/\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}.\\d{3}Z/.test(str)) return false;\n const d = new Date(str);\n return d.toISOString() === str;\n}\n\nfunction parseDateInISO(value) {\n const isMilliSeconds = /^[0-9]+$/.exec(value);\n if (isMilliSeconds) {\n const date = new Date(parseInt(value, 10));\n return date.toISOString();\n }\n\n if (isIsoDate(value)) {\n const date = new Date(value);\n return date.toISOString();\n }\n\n return value ? getDateObject(value).toISOString() : value;\n}\n\nexport function format(value, type, options = {}): string {\n let formattedValue: string;\n\n switch (type?.toLowerCase()) {\n case 'currency': {\n const defaultOptions = {\n locale: getLocale(),\n position: 'before',\n decPlaces: 2\n };\n const params = { ...defaultOptions, ...options };\n formattedValue = Currency.Currency(value, params);\n break;\n }\n\n case 'decimal': {\n const defaultOptions = { locale: getLocale(), decPlaces: 2 };\n const params = { ...defaultOptions, ...options };\n formattedValue = Currency.Decimal(value, params);\n break;\n }\n\n case 'percentage': {\n const defaultOptions = { locale: getLocale(), decPlaces: 2 };\n const params = { ...defaultOptions, ...options };\n formattedValue = Currency.Percentage(value, params);\n break;\n }\n\n case 'integer': {\n const defaultOptions = { locale: getLocale() };\n const params = { ...defaultOptions, ...options };\n formattedValue = Currency.Integer(value, params);\n break;\n }\n\n case 'date': {\n const defaultOptions = {\n format: 'MMM DD, YYYY',\n timezone: getCurrentTimezone()\n };\n const params = { ...defaultOptions, ...options };\n formattedValue = DateFormatter.Date(parseDateInISO(value), params);\n break;\n }\n\n case 'datetime': {\n const defaultOptions = {\n format: 'MMM DD, YYYY h:mm A',\n timezone: getCurrentTimezone()\n };\n const params = { ...defaultOptions, ...options };\n formattedValue = DateFormatter.Date(parseDateInISO(value), params);\n break;\n }\n\n case 'boolean':\n case 'checkbox': {\n formattedValue = Boolean.TrueFalse(value, { allowEmpty: false, ...options });\n break;\n }\n\n case 'userreference': {\n formattedValue = value.userName;\n break;\n }\n\n default:\n formattedValue = value;\n }\n return formattedValue;\n}\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/helpers/formatters/index.ts"],"names":[],"mappings":"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","sourcesContent":["import Boolean from './Boolean';\nimport Currency from './Currency';\nimport DateFormatter from './Date';\nimport { getCurrentTimezone, getLocale } from './common';\n\nexport default {\n ...Boolean,\n ...Currency,\n ...DateFormatter\n};\n\nfunction getDateObject(text): Date {\n // TODO - cleanup formatters util functions as DX APIs are returning values per ISO std now.\n const timeStamp = text.replace(/-/g, '');\n const isDateTime = timeStamp.indexOf('GMT') !== -1;\n const year = parseInt(timeStamp.substr(0, 4), 10);\n const month = parseInt(timeStamp.substr(4, 2), 10) - 1;\n const day = parseInt(timeStamp.substr(6, 2), 10);\n\n const date = new Date();\n // Fix to handle all the dates, raised via https://github.com/pegasystems/react-sdk-components/issues/442\n date.setFullYear(year, month, day);\n\n if (isDateTime) {\n const hours = parseInt(timeStamp.substr(9, 2), 10);\n const minutes = parseInt(timeStamp.substr(11, 2), 10);\n const seconds = parseInt(timeStamp.substr(13, 2), 10);\n const ms = parseInt(timeStamp.substr(16, 3), 10);\n date.setHours(hours);\n date.setMinutes(minutes);\n date.setSeconds(seconds);\n date.setMilliseconds(ms);\n }\n\n return date;\n}\n\nfunction isIsoDate(str) {\n if (!/\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}.\\d{3}Z/.test(str)) return false;\n const d = new Date(str);\n return d.toISOString() === str;\n}\n\nfunction parseDateInISO(value) {\n const isMilliSeconds = /^[0-9]+$/.exec(value);\n if (isMilliSeconds) {\n const date = new Date(parseInt(value, 10));\n return date.toISOString();\n }\n\n if (isIsoDate(value)) {\n const date = new Date(value);\n return date.toISOString();\n }\n\n return value ? getDateObject(value).toISOString() : value;\n}\n\nexport function format(value, type, options = {}): string {\n let formattedValue: string;\n\n switch (type?.toLowerCase()) {\n case 'currency': {\n const defaultOptions = {\n locale: getLocale(),\n position: 'before',\n decPlaces: 2\n };\n const params = { ...defaultOptions, ...options };\n formattedValue = Currency.Currency(value, params);\n break;\n }\n\n case 'decimal': {\n const defaultOptions = { locale: getLocale(), decPlaces: 2 };\n const params = { ...defaultOptions, ...options };\n formattedValue = Currency.Decimal(value, params);\n break;\n }\n\n case 'percentage': {\n const defaultOptions = { locale: getLocale(), decPlaces: 2 };\n const params = { ...defaultOptions, ...options };\n formattedValue = Currency.Percentage(value, params);\n break;\n }\n\n case 'integer': {\n const defaultOptions = { locale: getLocale() };\n const params = { ...defaultOptions, ...options };\n formattedValue = Currency.Integer(value, params);\n break;\n }\n\n case 'date': {\n const defaultOptions = {\n format: 'MMM DD, YYYY',\n timezone: getCurrentTimezone()\n };\n const params = { ...defaultOptions, ...options };\n formattedValue = DateFormatter.Date(parseDateInISO(value), params);\n break;\n }\n\n case 'datetime': {\n const defaultOptions = {\n format: 'MMM DD, YYYY h:mm A',\n timezone: getCurrentTimezone()\n };\n const params = { ...defaultOptions, ...options };\n formattedValue = DateFormatter.Date(parseDateInISO(value), params);\n break;\n }\n\n case 'boolean':\n case 'checkbox': {\n formattedValue = Boolean.TrueFalse(value, { allowEmpty: false, ...options });\n break;\n }\n\n case 'userreference': {\n formattedValue = value.userName;\n break;\n }\n\n default:\n formattedValue = value;\n }\n return formattedValue;\n}\n"]}
@@ -62,7 +62,7 @@ export declare const createMetaForTable: (fields: any, renderMode: any) => {
62
62
  footer: boolean;
63
63
  filterExpression: null;
64
64
  editing: boolean;
65
- timezone: string;
65
+ timezone: string | undefined;
66
66
  };
67
67
  /**
68
68
  * This method returns a callBack function for Add action.
@@ -213,7 +213,7 @@ export const filterData = filterByColumns => {
213
213
  case 'Date':
214
214
  case 'DateTime':
215
215
  case 'Time':
216
- value = item[filterObj.ref] !== null ?? item[filterObj.ref] !== '' ? Utils.getSeconds(item[filterObj.ref]) : null;
216
+ value = (item[filterObj.ref] !== null ?? item[filterObj.ref] !== '') ? Utils.getSeconds(item[filterObj.ref]) : null;
217
217
  filterValue =
218
218
  filterObj.containsFilterValue !== null && filterObj.containsFilterValue !== '' ? Utils.getSeconds(filterObj.containsFilterValue) : null;
219
219
  // eslint-disable-next-line sonarjs/no-nested-switch
@@ -1 +1 @@
1
- {"version":3,"file":"simpleTableHelpers.js","sourceRoot":"","sources":["../../../src/components/helpers/simpleTableHelpers.ts"],"names":[],"mappings":"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","sourcesContent":["import { Utils } from './utils';\n\nexport const TABLE_CELL = 'SdkRenderer';\nexport const DELETE_ICON = 'DeleteIcon';\n\n// BUG-615253: Workaround for autosize in table with lazy loading components\n/* istanbul ignore next */\nfunction getFieldWidth(field, label) {\n let width: number;\n switch (field.type) {\n case 'Time':\n width = 150;\n break;\n case 'Date':\n width = 160;\n break;\n case 'DateTime':\n width = 205;\n break;\n case 'AutoComplete':\n case 'TextArea':\n width = 190;\n break;\n case 'Currency':\n case 'TextInput':\n width = 182;\n break;\n case 'Checkbox':\n // eslint-disable-next-line no-case-declarations\n const text = document.createElement('span');\n document.body.appendChild(text);\n text.style.fontSize = '13px';\n text.style.position = 'absolute';\n text.innerHTML = label;\n width = Math.ceil(text.clientWidth) + 30;\n document.body.removeChild(text);\n break;\n default:\n width = 180;\n }\n return width;\n}\n\nexport const getContext = thePConn => {\n const contextName = thePConn.getContextName();\n const pageReference = thePConn.getPageReference();\n const { referenceList } = thePConn.getStateProps()?.config || thePConn.getStateProps();\n const pageReferenceForRows = referenceList.startsWith('.') ? `${pageReference}.${referenceList.substring(1)}` : referenceList;\n\n // removing \"caseInfo.content\" prefix to avoid setting it as a target while preparing pageInstructions\n // skipping the removal as StateMachine itself is removing this case info prefix while preparing pageInstructions\n // referenceList = pageReferenceForRows.replace(\n // PCore.getConstants().CASE_INFO.CASE_INFO_CONTENT,\n // \"\"\n // );\n\n return {\n contextName,\n referenceListStr: referenceList,\n pageReferenceForRows\n };\n};\n\nexport const populateRowKey = rawData => {\n return rawData.map((row: any, index: number) => {\n return { ...row, index };\n });\n};\n\nexport const getApiContext = (processedData, pConnect, reorderCB) => {\n return {\n fetchData: () => {\n return new Promise(resolve => {\n resolve({\n data: processedData,\n filteredRecordCount: processedData.length,\n totalRecordCount: processedData.length\n });\n });\n },\n fetchPersonalizations: () => {\n return Promise.resolve({});\n },\n applyRowReorder: (sourceKey, destinationKey) => {\n // indexes are keys for simple table so, it should work.\n reorderCB();\n return Promise.resolve(pConnect.getListActions().reorder(parseInt(sourceKey, 10), parseInt(destinationKey, 10)));\n }\n };\n};\n\nexport const buildMetaForListView = (fieldMetadata, fields, type, ruleClass, name, propertyLabel, isDataObject, parameters) => {\n return {\n name,\n config: {\n type,\n referenceList: fieldMetadata.datasource.name,\n parameters: parameters ?? fieldMetadata.datasource.parameters,\n personalization: false,\n isDataObject,\n grouping: true,\n globalSearch: true,\n reorderFields: true,\n toggleFieldVisibility: true,\n title: propertyLabel,\n personalizationId: '' /* TODO */,\n template: 'ListView',\n presets: [\n {\n name: 'presets',\n template: 'Table',\n config: {},\n children: [\n {\n name: 'Columns',\n type: 'Region',\n children: fields\n }\n ],\n label: propertyLabel,\n id: 'P_' /* TODO */\n }\n ],\n ruleClass\n }\n };\n};\n\nexport const buildFieldsForTable = (configFields, fields, showDeleteButton) => {\n const fieldDefs = configFields.map((field, index) => {\n return {\n type: 'text',\n label: fields[index].config.label || fields[index].config.caption,\n fillAvailableSpace: !!field.config.fillAvailableSpace,\n id: `${index}`,\n name: field.config.value.substr(4),\n cellRenderer: TABLE_CELL,\n sort: false,\n noContextMenu: true,\n showMenu: false,\n meta: {\n ...field\n },\n // BUG-615253: Workaround for autosize in table with lazy loading components\n width: getFieldWidth(field, fields[index].config.label)\n };\n });\n\n // ONLY add DELETE_ICON to fields when the table is requested as EDITABLE\n if (showDeleteButton) {\n fieldDefs.push({\n type: 'text',\n id: fieldDefs.length,\n cellRenderer: DELETE_ICON,\n sort: false,\n noContextMenu: true,\n showMenu: false,\n // BUG-615253: Workaround for autosize in table with lazy loading components\n width: 46\n });\n }\n\n return fieldDefs;\n};\n\nexport const createMetaForTable = (fields, renderMode) => {\n return {\n height: {\n minHeight: 'auto',\n fitHeightToElement: 'fitHeightToElement',\n deltaAdjustment: 'deltaAdjustment',\n autoSize: true\n },\n fieldDefs: fields,\n itemKey: 'index',\n grouping: false,\n reorderFields: false,\n reorderItems: renderMode === 'Editable',\n dragHandle: renderMode === 'Editable',\n globalSearch: false,\n personalization: false,\n toggleFieldVisibility: false,\n toolbar: false,\n footer: false,\n filterExpression: null,\n editing: false,\n timezone: PCore.getEnvironmentInfo().getTimeZone()\n };\n};\n\n/**\n * This method returns a callBack function for Add action.\n * @param {object} pConnect - PConnect object\n * @param {number} index - index of the page list to add\n */\nexport const getAddRowCallback = (pConnect, index) => {\n return () => pConnect.getListActions().insert({}, index, ''); // 3rd arg null until typedef marked correctly as optional\n};\n\n/**\n * This method creates a PConnect object with proper options for Add and Delete actions\n * @param {string} contextName - contextName\n * @param {string} referenceList - referenceList\n * @param {string} pageReference - pageReference\n */\n// NOTE: use of type \"any\" is required since TypeScript doesn't allow private/protected properties\n// to be exported from a class (TS4094 error)\nexport function createPConnect(contextName, referenceList, pageReference): any {\n const options = {\n context: contextName,\n pageReference,\n referenceList\n };\n\n // create PConnect object\n const config = { meta: {}, options };\n const { getPConnect } = PCore.createPConnect(config);\n\n return getPConnect();\n}\n\nexport const filterData = filterByColumns => {\n return function filteringData(item) {\n let bKeep = true;\n for (const filterObj of filterByColumns) {\n if (filterObj.containsFilterValue !== '' || filterObj.containsFilter === 'null' || filterObj.containsFilter === 'notnull') {\n let value: any;\n let filterValue: any;\n\n switch (filterObj.type) {\n case 'Date':\n case 'DateTime':\n case 'Time':\n value = item[filterObj.ref] !== null ?? item[filterObj.ref] !== '' ? Utils.getSeconds(item[filterObj.ref]) : null;\n filterValue =\n filterObj.containsFilterValue !== null && filterObj.containsFilterValue !== '' ? Utils.getSeconds(filterObj.containsFilterValue) : null;\n\n // eslint-disable-next-line sonarjs/no-nested-switch\n switch (filterObj.containsFilter) {\n case 'notequal':\n // becasue filterValue is in minutes, need to have a range of less than 60 secons\n\n if (value !== null && filterValue !== null) {\n // get rid of milliseconds\n value /= 1000;\n filterValue /= 1000;\n\n const diff = value - filterValue;\n if (diff >= 0 && diff < 60) {\n bKeep = false;\n }\n }\n\n break;\n\n case 'equal':\n // becasue filterValue is in minutes, need to have a range of less than 60 secons\n\n if (value !== null && filterValue !== null) {\n // get rid of milliseconds\n value /= 1000;\n filterValue /= 1000;\n\n const diff = value - filterValue;\n if (diff !== 0) {\n bKeep = false;\n }\n }\n\n break;\n\n case 'after':\n if (value < filterValue) {\n bKeep = false;\n }\n break;\n\n case 'before':\n if (value > filterValue) {\n bKeep = false;\n }\n break;\n\n case 'null':\n if (value !== null) {\n bKeep = false;\n }\n break;\n\n case 'notnull':\n if (value === null) {\n bKeep = false;\n }\n break;\n\n default:\n break;\n }\n break;\n\n default:\n value = item[filterObj.ref].toLowerCase();\n filterValue = filterObj.containsFilterValue.toLowerCase();\n\n // eslint-disable-next-line sonarjs/no-nested-switch\n switch (filterObj.containsFilter) {\n case 'contains':\n if (value.indexOf(filterValue) < 0) {\n bKeep = false;\n }\n break;\n\n case 'equals':\n if (value !== filterValue) {\n bKeep = false;\n }\n break;\n\n case 'startswith':\n if (value.indexOf(filterValue) !== 0) {\n bKeep = false;\n }\n break;\n\n default:\n break;\n }\n\n break;\n }\n }\n\n // if don't keep stop filtering\n if (!bKeep) {\n break;\n }\n }\n return bKeep;\n };\n};\n"]}
1
+ {"version":3,"file":"simpleTableHelpers.js","sourceRoot":"","sources":["../../../src/components/helpers/simpleTableHelpers.ts"],"names":[],"mappings":"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","sourcesContent":["import { Utils } from './utils';\n\nexport const TABLE_CELL = 'SdkRenderer';\nexport const DELETE_ICON = 'DeleteIcon';\n\n// BUG-615253: Workaround for autosize in table with lazy loading components\n/* istanbul ignore next */\nfunction getFieldWidth(field, label) {\n let width: number;\n switch (field.type) {\n case 'Time':\n width = 150;\n break;\n case 'Date':\n width = 160;\n break;\n case 'DateTime':\n width = 205;\n break;\n case 'AutoComplete':\n case 'TextArea':\n width = 190;\n break;\n case 'Currency':\n case 'TextInput':\n width = 182;\n break;\n case 'Checkbox':\n // eslint-disable-next-line no-case-declarations\n const text = document.createElement('span');\n document.body.appendChild(text);\n text.style.fontSize = '13px';\n text.style.position = 'absolute';\n text.innerHTML = label;\n width = Math.ceil(text.clientWidth) + 30;\n document.body.removeChild(text);\n break;\n default:\n width = 180;\n }\n return width;\n}\n\nexport const getContext = thePConn => {\n const contextName = thePConn.getContextName();\n const pageReference = thePConn.getPageReference();\n const { referenceList } = thePConn.getStateProps()?.config || thePConn.getStateProps();\n const pageReferenceForRows = referenceList.startsWith('.') ? `${pageReference}.${referenceList.substring(1)}` : referenceList;\n\n // removing \"caseInfo.content\" prefix to avoid setting it as a target while preparing pageInstructions\n // skipping the removal as StateMachine itself is removing this case info prefix while preparing pageInstructions\n // referenceList = pageReferenceForRows.replace(\n // PCore.getConstants().CASE_INFO.CASE_INFO_CONTENT,\n // \"\"\n // );\n\n return {\n contextName,\n referenceListStr: referenceList,\n pageReferenceForRows\n };\n};\n\nexport const populateRowKey = rawData => {\n return rawData.map((row: any, index: number) => {\n return { ...row, index };\n });\n};\n\nexport const getApiContext = (processedData, pConnect, reorderCB) => {\n return {\n fetchData: () => {\n return new Promise(resolve => {\n resolve({\n data: processedData,\n filteredRecordCount: processedData.length,\n totalRecordCount: processedData.length\n });\n });\n },\n fetchPersonalizations: () => {\n return Promise.resolve({});\n },\n applyRowReorder: (sourceKey, destinationKey) => {\n // indexes are keys for simple table so, it should work.\n reorderCB();\n return Promise.resolve(pConnect.getListActions().reorder(parseInt(sourceKey, 10), parseInt(destinationKey, 10)));\n }\n };\n};\n\nexport const buildMetaForListView = (fieldMetadata, fields, type, ruleClass, name, propertyLabel, isDataObject, parameters) => {\n return {\n name,\n config: {\n type,\n referenceList: fieldMetadata.datasource.name,\n parameters: parameters ?? fieldMetadata.datasource.parameters,\n personalization: false,\n isDataObject,\n grouping: true,\n globalSearch: true,\n reorderFields: true,\n toggleFieldVisibility: true,\n title: propertyLabel,\n personalizationId: '' /* TODO */,\n template: 'ListView',\n presets: [\n {\n name: 'presets',\n template: 'Table',\n config: {},\n children: [\n {\n name: 'Columns',\n type: 'Region',\n children: fields\n }\n ],\n label: propertyLabel,\n id: 'P_' /* TODO */\n }\n ],\n ruleClass\n }\n };\n};\n\nexport const buildFieldsForTable = (configFields, fields, showDeleteButton) => {\n const fieldDefs = configFields.map((field, index) => {\n return {\n type: 'text',\n label: fields[index].config.label || fields[index].config.caption,\n fillAvailableSpace: !!field.config.fillAvailableSpace,\n id: `${index}`,\n name: field.config.value.substr(4),\n cellRenderer: TABLE_CELL,\n sort: false,\n noContextMenu: true,\n showMenu: false,\n meta: {\n ...field\n },\n // BUG-615253: Workaround for autosize in table with lazy loading components\n width: getFieldWidth(field, fields[index].config.label)\n };\n });\n\n // ONLY add DELETE_ICON to fields when the table is requested as EDITABLE\n if (showDeleteButton) {\n fieldDefs.push({\n type: 'text',\n id: fieldDefs.length,\n cellRenderer: DELETE_ICON,\n sort: false,\n noContextMenu: true,\n showMenu: false,\n // BUG-615253: Workaround for autosize in table with lazy loading components\n width: 46\n });\n }\n\n return fieldDefs;\n};\n\nexport const createMetaForTable = (fields, renderMode) => {\n return {\n height: {\n minHeight: 'auto',\n fitHeightToElement: 'fitHeightToElement',\n deltaAdjustment: 'deltaAdjustment',\n autoSize: true\n },\n fieldDefs: fields,\n itemKey: 'index',\n grouping: false,\n reorderFields: false,\n reorderItems: renderMode === 'Editable',\n dragHandle: renderMode === 'Editable',\n globalSearch: false,\n personalization: false,\n toggleFieldVisibility: false,\n toolbar: false,\n footer: false,\n filterExpression: null,\n editing: false,\n timezone: PCore.getEnvironmentInfo().getTimeZone()\n };\n};\n\n/**\n * This method returns a callBack function for Add action.\n * @param {object} pConnect - PConnect object\n * @param {number} index - index of the page list to add\n */\nexport const getAddRowCallback = (pConnect, index) => {\n return () => pConnect.getListActions().insert({}, index, ''); // 3rd arg null until typedef marked correctly as optional\n};\n\n/**\n * This method creates a PConnect object with proper options for Add and Delete actions\n * @param {string} contextName - contextName\n * @param {string} referenceList - referenceList\n * @param {string} pageReference - pageReference\n */\n// NOTE: use of type \"any\" is required since TypeScript doesn't allow private/protected properties\n// to be exported from a class (TS4094 error)\nexport function createPConnect(contextName, referenceList, pageReference): any {\n const options = {\n context: contextName,\n pageReference,\n referenceList\n };\n\n // create PConnect object\n const config = { meta: {}, options };\n const { getPConnect } = PCore.createPConnect(config);\n\n return getPConnect();\n}\n\nexport const filterData = filterByColumns => {\n return function filteringData(item) {\n let bKeep = true;\n for (const filterObj of filterByColumns) {\n if (filterObj.containsFilterValue !== '' || filterObj.containsFilter === 'null' || filterObj.containsFilter === 'notnull') {\n let value: any;\n let filterValue: any;\n\n switch (filterObj.type) {\n case 'Date':\n case 'DateTime':\n case 'Time':\n value = (item[filterObj.ref] !== null ?? item[filterObj.ref] !== '') ? Utils.getSeconds(item[filterObj.ref]) : null;\n filterValue =\n filterObj.containsFilterValue !== null && filterObj.containsFilterValue !== '' ? Utils.getSeconds(filterObj.containsFilterValue) : null;\n\n // eslint-disable-next-line sonarjs/no-nested-switch\n switch (filterObj.containsFilter) {\n case 'notequal':\n // becasue filterValue is in minutes, need to have a range of less than 60 secons\n\n if (value !== null && filterValue !== null) {\n // get rid of milliseconds\n value /= 1000;\n filterValue /= 1000;\n\n const diff = value - filterValue;\n if (diff >= 0 && diff < 60) {\n bKeep = false;\n }\n }\n\n break;\n\n case 'equal':\n // becasue filterValue is in minutes, need to have a range of less than 60 secons\n\n if (value !== null && filterValue !== null) {\n // get rid of milliseconds\n value /= 1000;\n filterValue /= 1000;\n\n const diff = value - filterValue;\n if (diff !== 0) {\n bKeep = false;\n }\n }\n\n break;\n\n case 'after':\n if (value < filterValue) {\n bKeep = false;\n }\n break;\n\n case 'before':\n if (value > filterValue) {\n bKeep = false;\n }\n break;\n\n case 'null':\n if (value !== null) {\n bKeep = false;\n }\n break;\n\n case 'notnull':\n if (value === null) {\n bKeep = false;\n }\n break;\n\n default:\n break;\n }\n break;\n\n default:\n value = item[filterObj.ref].toLowerCase();\n filterValue = filterObj.containsFilterValue.toLowerCase();\n\n // eslint-disable-next-line sonarjs/no-nested-switch\n switch (filterObj.containsFilter) {\n case 'contains':\n if (value.indexOf(filterValue) < 0) {\n bKeep = false;\n }\n break;\n\n case 'equals':\n if (value !== filterValue) {\n bKeep = false;\n }\n break;\n\n case 'startswith':\n if (value.indexOf(filterValue) !== 0) {\n bKeep = false;\n }\n break;\n\n default:\n break;\n }\n\n break;\n }\n }\n\n // if don't keep stop filtering\n if (!bKeep) {\n break;\n }\n }\n return bKeep;\n };\n};\n"]}
@@ -1,7 +1,7 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
- import { makeStyles } from '@material-ui/core/styles';
3
- import Button from '@material-ui/core/Button';
4
- import { Grid, Divider } from '@material-ui/core';
2
+ import makeStyles from '@mui/styles/makeStyles';
3
+ import Button from '@mui/material/Button';
4
+ import { Grid, Divider } from '@mui/material';
5
5
  const useStyles = makeStyles(( /* theme */) => ({
6
6
  button: {
7
7
  padding: '0px 5px'
@@ -1 +1 @@
1
- {"version":3,"file":"ActionButtons.js","sourceRoot":"","sources":["../../../../src/components/infra/ActionButtons/ActionButtons.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,MAAM,MAAM,0BAA0B,CAAC;AAC9C,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAUlD,MAAM,SAAS,GAAG,UAAU,CAAC,EAAC,WAAW,EAAE,EAAE,CAAC,CAAC;IAC7C,MAAM,EAAE;QACN,OAAO,EAAE,SAAS;KACnB;IACD,OAAO,EAAE;QACP,SAAS,EAAE,MAAM;QACjB,YAAY,EAAE,MAAM;KACrB;CACF,CAAC,CAAC,CAAC;AAEJ,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,KAAyB;IAC7D,MAAM,EAAE,aAAa,GAAG,EAAE,EAAE,kBAAkB,GAAG,EAAE,EAAE,aAAa,EAAE,GAAG,KAAK,CAAC;IAC7E,MAAM,OAAO,GAAG,SAAS,EAAE,CAAC;IAC5B,MAAM,YAAY,GAAG,KAAK,CAAC,cAAc,EAAE,CAAC,cAAc,CAAC;IAC3D,MAAM,cAAc,GAAG,YAAY,CAAC;IAEpC,SAAS,cAAc,CAAC,OAAe,EAAE,WAAmB;QAC1D,aAAa,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IACtC,CAAC;IAED,OAAO,CACL,8BACE,KAAC,OAAO,IAAC,SAAS,EAAE,OAAO,CAAC,OAAO,GAAI,EACvC,MAAC,IAAI,IAAC,SAAS,QAAC,OAAO,EAAE,CAAC,EAAE,cAAc,EAAC,eAAe,aACxD,KAAC,IAAI,IAAC,IAAI,kBACR,KAAC,IAAI,IAAC,SAAS,QAAC,OAAO,EAAE,CAAC,YACvB,kBAAkB,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CACjC,KAAC,IAAI,IAAC,IAAI,kBACR,KAAC,MAAM,IACL,OAAO,EAAC,WAAW,EACnB,KAAK,EAAC,WAAW,EACjB,OAAO,EAAE,GAAG,EAAE;wCACZ,cAAc,CAAC,OAAO,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;oCAChD,CAAC,YAEA,YAAY,CAAC,OAAO,CAAC,IAAI,EAAE,cAAc,CAAC,GACpC,IATK,OAAO,CAAC,IAAI,CAUrB,CACR,CAAC,GACG,GACF,EACP,KAAC,IAAI,IAAC,IAAI,kBACR,KAAC,IAAI,IAAC,SAAS,QAAC,OAAO,EAAE,CAAC,YACvB,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAC5B,KAAC,IAAI,IAAC,IAAI,kBACR,KAAC,MAAM,IACL,OAAO,EAAC,WAAW,EACnB,KAAK,EAAC,SAAS,EACf,OAAO,EAAE,GAAG,EAAE;wCACZ,cAAc,CAAC,OAAO,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;oCAC9C,CAAC,YAEA,YAAY,CAAC,OAAO,CAAC,IAAI,EAAE,cAAc,CAAC,GACpC,IATK,OAAO,CAAC,IAAI,CAUrB,CACR,CAAC,GACG,GACF,IACF,IACN,CACJ,CAAC;AACJ,CAAC","sourcesContent":["import { makeStyles } from '@material-ui/core/styles';\nimport Button from '@material-ui/core/Button';\nimport { Grid, Divider } from '@material-ui/core';\n\n// ActionButtons does NOT have getPConnect. So, no need to extend from PConnProps\ninterface ActionButtonsProps {\n // If any, enter additional props that only exist on this component\n arMainButtons?: any[];\n arSecondaryButtons?: any[];\n onButtonPress: any;\n}\n\nconst useStyles = makeStyles((/* theme */) => ({\n button: {\n padding: '0px 5px'\n },\n divider: {\n marginTop: '10px',\n marginBottom: '10px'\n }\n}));\n\nexport default function ActionButtons(props: ActionButtonsProps) {\n const { arMainButtons = [], arSecondaryButtons = [], onButtonPress } = props;\n const classes = useStyles();\n const localizedVal = PCore.getLocaleUtils().getLocaleValue;\n const localeCategory = 'Assignment';\n\n function _onButtonPress(sAction: string, sButtonType: string) {\n onButtonPress(sAction, sButtonType);\n }\n\n return (\n <>\n <Divider className={classes.divider} />\n <Grid container spacing={4} justifyContent='space-between'>\n <Grid item>\n <Grid container spacing={1}>\n {arSecondaryButtons.map(sButton => (\n <Grid item key={sButton.name}>\n <Button\n variant='contained'\n color='secondary'\n onClick={() => {\n _onButtonPress(sButton.jsAction, 'secondary');\n }}\n >\n {localizedVal(sButton.name, localeCategory)}\n </Button>\n </Grid>\n ))}\n </Grid>\n </Grid>\n <Grid item>\n <Grid container spacing={1}>\n {arMainButtons.map(mButton => (\n <Grid item key={mButton.name}>\n <Button\n variant='contained'\n color='primary'\n onClick={() => {\n _onButtonPress(mButton.jsAction, 'primary');\n }}\n >\n {localizedVal(mButton.name, localeCategory)}\n </Button>\n </Grid>\n ))}\n </Grid>\n </Grid>\n </Grid>\n </>\n );\n}\n"]}
1
+ {"version":3,"file":"ActionButtons.js","sourceRoot":"","sources":["../../../../src/components/infra/ActionButtons/ActionButtons.tsx"],"names":[],"mappings":";AAAA,OAAO,UAAU,MAAM,wBAAwB,CAAC;AAChD,OAAO,MAAM,MAAM,sBAAsB,CAAC;AAC1C,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAU9C,MAAM,SAAS,GAAG,UAAU,CAAC,EAAC,WAAW,EAAE,EAAE,CAAC,CAAC;IAC7C,MAAM,EAAE;QACN,OAAO,EAAE,SAAS;KACnB;IACD,OAAO,EAAE;QACP,SAAS,EAAE,MAAM;QACjB,YAAY,EAAE,MAAM;KACrB;CACF,CAAC,CAAC,CAAC;AAEJ,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,KAAyB;IAC7D,MAAM,EAAE,aAAa,GAAG,EAAE,EAAE,kBAAkB,GAAG,EAAE,EAAE,aAAa,EAAE,GAAG,KAAK,CAAC;IAC7E,MAAM,OAAO,GAAG,SAAS,EAAE,CAAC;IAC5B,MAAM,YAAY,GAAG,KAAK,CAAC,cAAc,EAAE,CAAC,cAAc,CAAC;IAC3D,MAAM,cAAc,GAAG,YAAY,CAAC;IAEpC,SAAS,cAAc,CAAC,OAAe,EAAE,WAAmB;QAC1D,aAAa,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IACtC,CAAC;IAED,OAAO,CACL,8BACE,KAAC,OAAO,IAAC,SAAS,EAAE,OAAO,CAAC,OAAO,GAAI,EACvC,MAAC,IAAI,IAAC,SAAS,QAAC,OAAO,EAAE,CAAC,EAAE,cAAc,EAAC,eAAe,aACxD,KAAC,IAAI,IAAC,IAAI,kBACR,KAAC,IAAI,IAAC,SAAS,QAAC,OAAO,EAAE,CAAC,YACvB,kBAAkB,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CACjC,KAAC,IAAI,IAAC,IAAI,kBACR,KAAC,MAAM,IACL,OAAO,EAAC,WAAW,EACnB,KAAK,EAAC,WAAW,EACjB,OAAO,EAAE,GAAG,EAAE;wCACZ,cAAc,CAAC,OAAO,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;oCAChD,CAAC,YAEA,YAAY,CAAC,OAAO,CAAC,IAAI,EAAE,cAAc,CAAC,GACpC,IATK,OAAO,CAAC,IAAI,CAUrB,CACR,CAAC,GACG,GACF,EACP,KAAC,IAAI,IAAC,IAAI,kBACR,KAAC,IAAI,IAAC,SAAS,QAAC,OAAO,EAAE,CAAC,YACvB,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAC5B,KAAC,IAAI,IAAC,IAAI,kBACR,KAAC,MAAM,IACL,OAAO,EAAC,WAAW,EACnB,KAAK,EAAC,SAAS,EACf,OAAO,EAAE,GAAG,EAAE;wCACZ,cAAc,CAAC,OAAO,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;oCAC9C,CAAC,YAEA,YAAY,CAAC,OAAO,CAAC,IAAI,EAAE,cAAc,CAAC,GACpC,IATK,OAAO,CAAC,IAAI,CAUrB,CACR,CAAC,GACG,GACF,IACF,IACN,CACJ,CAAC;AACJ,CAAC","sourcesContent":["import makeStyles from '@mui/styles/makeStyles';\nimport Button from '@mui/material/Button';\nimport { Grid, Divider } from '@mui/material';\n\n// ActionButtons does NOT have getPConnect. So, no need to extend from PConnProps\ninterface ActionButtonsProps {\n // If any, enter additional props that only exist on this component\n arMainButtons?: any[];\n arSecondaryButtons?: any[];\n onButtonPress: any;\n}\n\nconst useStyles = makeStyles((/* theme */) => ({\n button: {\n padding: '0px 5px'\n },\n divider: {\n marginTop: '10px',\n marginBottom: '10px'\n }\n}));\n\nexport default function ActionButtons(props: ActionButtonsProps) {\n const { arMainButtons = [], arSecondaryButtons = [], onButtonPress } = props;\n const classes = useStyles();\n const localizedVal = PCore.getLocaleUtils().getLocaleValue;\n const localeCategory = 'Assignment';\n\n function _onButtonPress(sAction: string, sButtonType: string) {\n onButtonPress(sAction, sButtonType);\n }\n\n return (\n <>\n <Divider className={classes.divider} />\n <Grid container spacing={4} justifyContent='space-between'>\n <Grid item>\n <Grid container spacing={1}>\n {arSecondaryButtons.map(sButton => (\n <Grid item key={sButton.name}>\n <Button\n variant='contained'\n color='secondary'\n onClick={() => {\n _onButtonPress(sButton.jsAction, 'secondary');\n }}\n >\n {localizedVal(sButton.name, localeCategory)}\n </Button>\n </Grid>\n ))}\n </Grid>\n </Grid>\n <Grid item>\n <Grid container spacing={1}>\n {arMainButtons.map(mButton => (\n <Grid item key={mButton.name}>\n <Button\n variant='contained'\n color='primary'\n onClick={() => {\n _onButtonPress(mButton.jsAction, 'primary');\n }}\n >\n {localizedVal(mButton.name, localeCategory)}\n </Button>\n </Grid>\n ))}\n </Grid>\n </Grid>\n </Grid>\n </>\n );\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"Assignment.d.ts","sourceRoot":"","sources":["../../../../src/components/infra/Assignment/Assignment.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,iBAAiB,EAAuB,MAAM,OAAO,CAAC;AAOtE,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAEvD,UAAU,eAAgB,SAAQ,UAAU;IAE1C,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,GAAG,EAAE,CAAC;IAEf,aAAa,EAAE,GAAG,EAAE,CAAC;CACtB;AAED,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,KAAK,EAAE,iBAAiB,CAAC,eAAe,CAAC,2CA6U3E"}
1
+ {"version":3,"file":"Assignment.d.ts","sourceRoot":"","sources":["../../../../src/components/infra/Assignment/Assignment.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,iBAAiB,EAAuB,MAAM,OAAO,CAAC;AAQtE,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAEvD,UAAU,eAAgB,SAAQ,UAAU;IAE1C,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,GAAG,EAAE,CAAC;IAEf,aAAa,EAAE,GAAG,EAAE,CAAC;CACtB;AAED,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,KAAK,EAAE,iBAAiB,CAAC,eAAe,CAAC,2CA4U3E"}
@@ -1,9 +1,10 @@
1
1
  import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { useEffect, useState } from 'react';
3
- import Snackbar from '@material-ui/core/Snackbar';
4
- import IconButton from '@material-ui/core/IconButton';
5
- import CloseIcon from '@material-ui/icons/Close';
3
+ import Snackbar from '@mui/material/Snackbar';
4
+ import IconButton from '@mui/material/IconButton';
5
+ import CloseIcon from '@mui/icons-material/Close';
6
6
  import { getComponentFromMap } from '../../../bridge/helpers/sdk_component_map';
7
+ import { useFocusFirstField, useScrolltoTop } from '../../../hooks';
7
8
  export default function Assignment(props) {
8
9
  // Get emitted components from map (so we can get any override that may exist)
9
10
  const AssignmentCard = getComponentFromMap('AssignmentCard');
@@ -66,6 +67,9 @@ export default function Assignment(props) {
66
67
  });
67
68
  return formedSteps;
68
69
  }
70
+ const scrollId = window.location.href.includes('embedded') ? '#pega-part-of-page' : '#portal';
71
+ useScrolltoTop(scrollId, children);
72
+ useFocusFirstField('Assignment', children);
69
73
  useEffect(() => {
70
74
  if (children) {
71
75
  const firstChild = Array.isArray(children) ? children[0] : children;
@@ -73,7 +77,7 @@ export default function Assignment(props) {
73
77
  const oWorkData = oWorkItem.getDataObject();
74
78
  const oData = thePConn.getDataObject(''); // 1st arg empty string until typedefs allow it to be optional
75
79
  if (oWorkData?.caseInfo && oWorkData.caseInfo.assignments !== null) {
76
- const oCaseInfo = oData.caseInfo;
80
+ const oCaseInfo = oData?.caseInfo;
77
81
  if (oCaseInfo && oCaseInfo.actionButtons) {
78
82
  setActionButtons(oCaseInfo.actionButtons);
79
83
  }
@@ -113,7 +117,7 @@ export default function Assignment(props) {
113
117
  setShowSnackbar(false);
114
118
  }
115
119
  function onSaveActionSuccess(data) {
116
- actionsAPI.cancelAssignment(itemKey).then(() => {
120
+ actionsAPI.cancelAssignment(itemKey, false).then(() => {
117
121
  PCore.getPubSubUtils().publish(PCore.getConstants().PUB_SUB_EVENTS.CASE_EVENTS.CREATE_STAGE_SAVED, data);
118
122
  });
119
123
  }
@@ -135,7 +139,6 @@ export default function Assignment(props) {
135
139
  const savePromise = saveAssignment(itemKey);
136
140
  savePromise
137
141
  .then(() => {
138
- // @ts-ignore - Property 'c11nEnv' is private and only accessible within class 'CaseInfo'.
139
142
  const caseType = thePConn.getCaseInfo().c11nEnv.getValue(PCore.getConstants().CASE_INFO.CASE_TYPE_ID);
140
143
  onSaveActionSuccess({ caseType, caseID, assignmentID });
141
144
  })
@@ -148,11 +151,8 @@ export default function Assignment(props) {
148
151
  // check if create stage (modal)
149
152
  const { PUB_SUB_EVENTS } = PCore.getConstants();
150
153
  const { publish } = PCore.getPubSubUtils();
151
- // @ts-ignore - Property 'isAssignmentInCreateStage' is private and only accessible within class 'CaseInfo'
152
154
  const isAssignmentInCreateStage = thePConn.getCaseInfo().isAssignmentInCreateStage();
153
- const isLocalAction =
154
- // @ts-ignore - Property 'isLocalAction' is private and only accessible within class 'CaseInfo'.
155
- thePConn.getCaseInfo().isLocalAction() ||
155
+ const isLocalAction = thePConn.getCaseInfo().isLocalAction() ||
156
156
  (PCore.getConstants().CASE_INFO.IS_LOCAL_ACTION && getPConnect().getValue(PCore.getConstants().CASE_INFO.IS_LOCAL_ACTION));
157
157
  if (isAssignmentInCreateStage && isInModal && !isLocalAction) {
158
158
  const cancelPromise = cancelCreateStageAssignment(itemKey);
@@ -165,7 +165,7 @@ export default function Assignment(props) {
165
165
  });
166
166
  }
167
167
  else {
168
- const cancelPromise = cancelAssignment(itemKey);
168
+ const cancelPromise = cancelAssignment(itemKey, false);
169
169
  cancelPromise
170
170
  .then(data => {
171
171
  publish(PUB_SUB_EVENTS.EVENT_CANCEL, data);
@@ -190,7 +190,6 @@ export default function Assignment(props) {
190
190
  }
191
191
  }
192
192
  else if (sButtonType === 'primary') {
193
- // eslint-disable-next-line sonarjs/no-small-switch
194
193
  switch (sAction) {
195
194
  case 'finishAssignment': {
196
195
  const finishPromise = finishAssignment(itemKey);
@@ -223,7 +222,6 @@ export default function Assignment(props) {
223
222
  return refreshConditions.filter(item => item.event && item.event === 'Changes').map(item => [item.field, item.field?.substring(1)]) || [];
224
223
  }
225
224
  // expected format of refreshConditions : [{field: ".Name", event: "Changes"}]
226
- // @ts-ignore - Property 'getActionRefreshConditions' is private and only accessible within class 'CaseInfo'
227
225
  const refreshConditions = thePConn.getCaseInfo()?.getActionRefreshConditions();
228
226
  const context = thePConn.getContextName();
229
227
  const pageReference = thePConn.getPageReference();
@@ -1 +1 @@
1
- {"version":3,"file":"Assignment.js","sourceRoot":"","sources":["../../../../src/components/infra/Assignment/Assignment.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { PropsWithChildren, useEffect, useState } from 'react';\nimport Snackbar from '@material-ui/core/Snackbar';\nimport IconButton from '@material-ui/core/IconButton';\nimport CloseIcon from '@material-ui/icons/Close';\n\nimport { getComponentFromMap } from '../../../bridge/helpers/sdk_component_map';\n\nimport { PConnProps } from '../../../types/PConnProps';\n\ninterface AssignmentProps extends PConnProps {\n // If any, enter additional props that only exist on this component\n itemKey: string;\n isInModal: boolean;\n banners: any[];\n // eslint-disable-next-line react/no-unused-prop-types\n actionButtons: any[];\n}\n\nexport default function Assignment(props: PropsWithChildren<AssignmentProps>) {\n // Get emitted components from map (so we can get any override that may exist)\n const AssignmentCard = getComponentFromMap('AssignmentCard');\n const MultiStep = getComponentFromMap('MultiStep');\n\n const { getPConnect, children, itemKey = '', isInModal = false, banners = [] } = props;\n const thePConn = getPConnect();\n\n const [bHasNavigation, setHasNavigation] = useState(false);\n const [actionButtons, setActionButtons] = useState([]);\n const [bIsVertical, setIsVertical] = useState(false);\n const [arCurrentStepIndicies, setArCurrentStepIndicies] = useState<any[]>([]);\n const [arNavigationSteps, setArNavigationSteps] = useState<any[]>([]);\n\n const actionsAPI = thePConn.getActionsApi();\n const localizedVal = PCore.getLocaleUtils().getLocaleValue;\n const localeCategory = 'Assignment';\n const localeReference = `${getPConnect().getCaseInfo().getClassName()}!CASE!${getPConnect().getCaseInfo().getName()}`.toUpperCase();\n\n // store off bound functions to above pointers\n const finishAssignment = actionsAPI.finishAssignment.bind(actionsAPI);\n const navigateToStep = actionsAPI.navigateToStep.bind(actionsAPI);\n const cancelAssignment = actionsAPI.cancelAssignment.bind(actionsAPI);\n const saveAssignment = actionsAPI.saveAssignment?.bind(actionsAPI);\n const cancelCreateStageAssignment = actionsAPI.cancelCreateStageAssignment.bind(actionsAPI);\n const approveCase = actionsAPI.approveCase?.bind(actionsAPI);\n const rejectCase = actionsAPI.rejectCase?.bind(actionsAPI);\n // const showPage = actionsAPI.showPage.bind(actionsAPI);\n\n const [showSnackbar, setShowSnackbar] = useState(false);\n const [snackbarMessage, setSnackbarMessage] = useState('');\n\n function findCurrentIndicies(arStepperSteps: any[], arIndicies: number[], depth: number): number[] {\n let count = 0;\n arStepperSteps.forEach(step => {\n if (step.visited_status === 'current') {\n arIndicies[depth] = count;\n\n // add in\n step.step_status = '';\n } else if (step.visited_status === 'success') {\n count += 1;\n step.step_status = 'completed';\n } else {\n count += 1;\n step.step_status = '';\n }\n\n if (step.steps) {\n arIndicies = findCurrentIndicies(step.steps, arIndicies, depth + 1);\n }\n });\n\n return arIndicies;\n }\n\n function getStepsInfo(steps, formedSteps: any = []) {\n steps.forEach(step => {\n if (step.name) {\n step.name = PCore.getLocaleUtils().getLocaleValue(step.name, undefined, localeReference);\n }\n if (step.steps) {\n formedSteps = getStepsInfo(step.steps, formedSteps);\n } else {\n formedSteps.push(step);\n }\n });\n return formedSteps;\n }\n\n useEffect(() => {\n if (children) {\n const firstChild = Array.isArray(children) ? children[0] : children;\n const oWorkItem = firstChild.props.getPConnect();\n const oWorkData = oWorkItem.getDataObject();\n const oData: any = thePConn.getDataObject(''); // 1st arg empty string until typedefs allow it to be optional\n\n if (oWorkData?.caseInfo && oWorkData.caseInfo.assignments !== null) {\n const oCaseInfo = oData.caseInfo;\n\n if (oCaseInfo && oCaseInfo.actionButtons) {\n setActionButtons(oCaseInfo.actionButtons);\n }\n\n if (oCaseInfo?.navigation /* was oCaseInfo.navigation != null */) {\n setHasNavigation(true);\n\n if (\n (oCaseInfo.navigation.template && oCaseInfo.navigation.template.toLowerCase() === 'standard') ||\n oCaseInfo?.navigation?.steps?.length === 1\n ) {\n setHasNavigation(false);\n } else if (oCaseInfo.navigation.template && oCaseInfo.navigation.template.toLowerCase() === 'vertical') {\n setIsVertical(true);\n } else {\n setIsVertical(false);\n }\n\n if (oCaseInfo?.navigation?.steps) {\n const steps = JSON.parse(JSON.stringify(oCaseInfo?.navigation?.steps));\n const formedSteps = getStepsInfo(steps);\n setArNavigationSteps(formedSteps);\n }\n\n setArCurrentStepIndicies(findCurrentIndicies(arNavigationSteps, arCurrentStepIndicies, 0));\n }\n }\n }\n }, [children]);\n\n function showToast(message: string) {\n const theMessage = `Assignment: ${message}`;\n // eslint-disable-next-line no-console\n console.error(theMessage);\n setSnackbarMessage(message);\n setShowSnackbar(true);\n }\n\n function handleSnackbarClose(event: React.SyntheticEvent | React.MouseEvent, reason?: string) {\n if (reason === 'clickaway') {\n return;\n }\n setShowSnackbar(false);\n }\n\n function onSaveActionSuccess(data) {\n actionsAPI.cancelAssignment(itemKey).then(() => {\n PCore.getPubSubUtils().publish(PCore.getConstants().PUB_SUB_EVENTS.CASE_EVENTS.CREATE_STAGE_SAVED, data);\n });\n }\n\n function buttonPress(sAction: string, sButtonType: string) {\n if (sButtonType === 'secondary') {\n switch (sAction) {\n case 'navigateToStep': {\n const navigatePromise = navigateToStep('previous', itemKey);\n\n navigatePromise\n .then(() => {})\n .catch(() => {\n showToast(`${localizedVal('Navigation failed!', localeCategory)}`);\n });\n\n break;\n }\n\n case 'saveAssignment': {\n const caseID = thePConn.getCaseInfo().getKey();\n const assignmentID = thePConn.getCaseInfo().getAssignmentID();\n const savePromise = saveAssignment(itemKey);\n\n savePromise\n .then(() => {\n // @ts-ignore - Property 'c11nEnv' is private and only accessible within class 'CaseInfo'.\n const caseType = thePConn.getCaseInfo().c11nEnv.getValue(PCore.getConstants().CASE_INFO.CASE_TYPE_ID);\n onSaveActionSuccess({ caseType, caseID, assignmentID });\n })\n .catch(() => {\n showToast(`${localizedVal('Save failed', localeCategory)}`);\n });\n\n break;\n }\n\n case 'cancelAssignment': {\n // check if create stage (modal)\n const { PUB_SUB_EVENTS } = PCore.getConstants();\n const { publish } = PCore.getPubSubUtils();\n // @ts-ignore - Property 'isAssignmentInCreateStage' is private and only accessible within class 'CaseInfo'\n const isAssignmentInCreateStage = thePConn.getCaseInfo().isAssignmentInCreateStage();\n const isLocalAction =\n // @ts-ignore - Property 'isLocalAction' is private and only accessible within class 'CaseInfo'.\n thePConn.getCaseInfo().isLocalAction() ||\n (PCore.getConstants().CASE_INFO.IS_LOCAL_ACTION && getPConnect().getValue(PCore.getConstants().CASE_INFO.IS_LOCAL_ACTION));\n if (isAssignmentInCreateStage && isInModal && !isLocalAction) {\n const cancelPromise = cancelCreateStageAssignment(itemKey);\n\n cancelPromise\n .then(data => {\n publish(PUB_SUB_EVENTS.EVENT_CANCEL, data);\n })\n .catch(() => {\n showToast(`${localizedVal('Cancel failed!', localeCategory)}`);\n });\n } else {\n const cancelPromise = cancelAssignment(itemKey);\n\n cancelPromise\n .then(data => {\n publish(PUB_SUB_EVENTS.EVENT_CANCEL, data);\n })\n .catch(() => {\n showToast(`${localizedVal('Cancel failed!', localeCategory)}`);\n });\n }\n break;\n }\n\n case 'rejectCase': {\n const rejectPromise = rejectCase(itemKey);\n\n rejectPromise\n .then(() => {})\n .catch(() => {\n showToast(`${localizedVal('Rejection failed!', localeCategory)}`);\n });\n\n break;\n }\n\n default:\n break;\n }\n } else if (sButtonType === 'primary') {\n // eslint-disable-next-line sonarjs/no-small-switch\n switch (sAction) {\n case 'finishAssignment': {\n const finishPromise = finishAssignment(itemKey);\n\n finishPromise\n .then(() => {})\n .catch(() => {\n showToast(`${localizedVal('Submit failed!', localeCategory)}`);\n });\n\n break;\n }\n\n case 'approveCase': {\n const approvePromise = approveCase(itemKey);\n\n approvePromise\n .then(() => {})\n .catch(() => {\n showToast(`${localizedVal('Approve failed!', localeCategory)}`);\n });\n\n break;\n }\n\n default:\n break;\n }\n }\n }\n\n function getRefreshProps(refreshConditions) {\n // refreshConditions cuurently supports only \"Changes\" event\n if (!refreshConditions) {\n return [];\n }\n return refreshConditions.filter(item => item.event && item.event === 'Changes').map(item => [item.field, item.field?.substring(1)]) || [];\n }\n\n // expected format of refreshConditions : [{field: \".Name\", event: \"Changes\"}]\n // @ts-ignore - Property 'getActionRefreshConditions' is private and only accessible within class 'CaseInfo'\n const refreshConditions = thePConn.getCaseInfo()?.getActionRefreshConditions();\n const context = thePConn.getContextName();\n const pageReference = thePConn.getPageReference();\n\n // refresh api de-registration\n PCore.getRefreshManager().deRegisterForRefresh(context);\n\n // refresh api registration\n const refreshProps = getRefreshProps(refreshConditions);\n const caseKey = thePConn.getCaseInfo().getKey();\n const refreshOptions = {\n autoDetectRefresh: true,\n preserveClientChanges: false\n };\n if (refreshProps.length > 0) {\n refreshProps.forEach(prop => {\n PCore.getRefreshManager().registerForRefresh(\n 'PROP_CHANGE',\n thePConn.getActionsApi().refreshCaseView.bind(thePConn.getActionsApi(), caseKey, '', pageReference, {\n ...refreshOptions,\n refreshFor: prop[0]\n }),\n `${pageReference}.${prop[1]}`,\n `${context}/${pageReference}`,\n context\n );\n });\n }\n\n return (\n <div id='Assignment'>\n {banners}\n {bHasNavigation ? (\n <>\n <MultiStep\n getPConnect={getPConnect}\n itemKey={itemKey}\n actionButtons={actionButtons}\n onButtonPress={buttonPress}\n bIsVertical={bIsVertical}\n arCurrentStepIndicies={arCurrentStepIndicies}\n arNavigationSteps={arNavigationSteps}\n >\n {children}\n </MultiStep>\n <Snackbar\n open={showSnackbar}\n autoHideDuration={3000}\n onClose={handleSnackbarClose}\n message={snackbarMessage}\n action={\n <IconButton size='small' aria-label='close' color='inherit' onClick={handleSnackbarClose}>\n <CloseIcon fontSize='small' />\n </IconButton>\n }\n />\n </>\n ) : (\n <>\n <AssignmentCard getPConnect={getPConnect} itemKey={itemKey} actionButtons={actionButtons} onButtonPress={buttonPress}>\n {children}\n </AssignmentCard>\n <Snackbar\n open={showSnackbar}\n autoHideDuration={3000}\n onClose={handleSnackbarClose}\n message={snackbarMessage}\n action={\n <IconButton size='small' aria-label='close' color='inherit' onClick={handleSnackbarClose}>\n <CloseIcon fontSize='small' />\n </IconButton>\n }\n />\n </>\n )}\n </div>\n );\n}\n\n// From WC SDK\n// const aHtml = html`\n// ${this.bHasNavigation?\n// html`\n// <div class=\"psdk-stepper\">\n// <multi-step-component .pConn=${this.pConn} .arChildren=${this.arChildren} itemKey=${this.itemKey}\n// .arMainButtons=${this.arMainButtons} .arSecondaryButtons=${this.arSecondaryButtons}\n// .bIsVertical=${this.bIsVertical} .arCurrentStepIndicies=${this.arCurrentStepIndicies}\n// .arNavigationSteps=${this.arNavigationSteps}\n// @MultiStepActionButtonClick=\"${this._onActionButtonClick}\">\n// </multi-step-component>\n// <lit-toast></lit-toast>\n// </div>`\n// :\n// html`\n// <div>\n// <assignment-card-component .pConn=${this.pConn} .arChildren=${this.arChildren} itemKey=${this.itemKey}\n// .arMainButtons=${this.arMainButtons} .arSecondaryButtons=${this.arSecondaryButtons}\n// @AssignmentActionButtonClick=\"${this._onActionButtonClick}\">\n// </assignment-card-component>\n// <lit-toast></lit-toast>\n// </div>`}\n// `;\n"]}
1
+ {"version":3,"file":"Assignment.js","sourceRoot":"","sources":["../../../../src/components/infra/Assignment/Assignment.tsx"],"names":[],"mappings":";AAAA,OAAc,EAAqB,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACtE,OAAO,QAAQ,MAAM,wBAAwB,CAAC;AAC9C,OAAO,UAAU,MAAM,0BAA0B,CAAC;AAClD,OAAO,SAAS,MAAM,2BAA2B,CAAC;AAElD,OAAO,EAAE,mBAAmB,EAAE,MAAM,2CAA2C,CAAC;AAChF,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAapE,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,KAAyC;IAC1E,8EAA8E;IAC9E,MAAM,cAAc,GAAG,mBAAmB,CAAC,gBAAgB,CAAC,CAAC;IAC7D,MAAM,SAAS,GAAG,mBAAmB,CAAC,WAAW,CAAC,CAAC;IAEnD,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,OAAO,GAAG,EAAE,EAAE,SAAS,GAAG,KAAK,EAAE,OAAO,GAAG,EAAE,EAAE,GAAG,KAAK,CAAC;IACvF,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;IAE/B,MAAM,CAAC,cAAc,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC3D,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IACvD,MAAM,CAAC,WAAW,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACrD,MAAM,CAAC,qBAAqB,EAAE,wBAAwB,CAAC,GAAG,QAAQ,CAAQ,EAAE,CAAC,CAAC;IAC9E,MAAM,CAAC,iBAAiB,EAAE,oBAAoB,CAAC,GAAG,QAAQ,CAAQ,EAAE,CAAC,CAAC;IAEtE,MAAM,UAAU,GAAG,QAAQ,CAAC,aAAa,EAAE,CAAC;IAC5C,MAAM,YAAY,GAAG,KAAK,CAAC,cAAc,EAAE,CAAC,cAAc,CAAC;IAC3D,MAAM,cAAc,GAAG,YAAY,CAAC;IACpC,MAAM,eAAe,GAAG,GAAG,WAAW,EAAE,CAAC,WAAW,EAAE,CAAC,YAAY,EAAE,SAAS,WAAW,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,WAAW,EAAE,CAAC;IAEpI,8CAA8C;IAC9C,MAAM,gBAAgB,GAAG,UAAU,CAAC,gBAAgB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACtE,MAAM,cAAc,GAAG,UAAU,CAAC,cAAc,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAClE,MAAM,gBAAgB,GAAG,UAAU,CAAC,gBAAgB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACtE,MAAM,cAAc,GAAG,UAAU,CAAC,cAAc,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IACnE,MAAM,2BAA2B,GAAG,UAAU,CAAC,2BAA2B,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC5F,MAAM,WAAW,GAAG,UAAU,CAAC,WAAW,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IAC7D,MAAM,UAAU,GAAG,UAAU,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IAC3D,yDAAyD;IAEzD,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACxD,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IAE3D,SAAS,mBAAmB,CAAC,cAAqB,EAAE,UAAoB,EAAE,KAAa;QACrF,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YAC5B,IAAI,IAAI,CAAC,cAAc,KAAK,SAAS,EAAE;gBACrC,UAAU,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;gBAE1B,SAAS;gBACT,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;aACvB;iBAAM,IAAI,IAAI,CAAC,cAAc,KAAK,SAAS,EAAE;gBAC5C,KAAK,IAAI,CAAC,CAAC;gBACX,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;aAChC;iBAAM;gBACL,KAAK,IAAI,CAAC,CAAC;gBACX,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;aACvB;YAED,IAAI,IAAI,CAAC,KAAK,EAAE;gBACd,UAAU,GAAG,mBAAmB,CAAC,IAAI,CAAC,KAAK,EAAE,UAAU,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;aACrE;QACH,CAAC,CAAC,CAAC;QAEH,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,SAAS,YAAY,CAAC,KAAK,EAAE,cAAmB,EAAE;QAChD,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YACnB,IAAI,IAAI,CAAC,IAAI,EAAE;gBACb,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,cAAc,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,eAAe,CAAC,CAAC;aAC1F;YACD,IAAI,IAAI,CAAC,KAAK,EAAE;gBACd,WAAW,GAAG,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;aACrD;iBAAM;gBACL,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aACxB;QACH,CAAC,CAAC,CAAC;QACH,OAAO,WAAW,CAAC;IACrB,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,SAAS,CAAC;IAC9F,cAAc,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IACnC,kBAAkB,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;IAE3C,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,QAAQ,EAAE;YACZ,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;YACpE,MAAM,SAAS,GAAG,UAAU,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;YACjD,MAAM,SAAS,GAAG,SAAS,CAAC,aAAa,EAAE,CAAC;YAC5C,MAAM,KAAK,GAAQ,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,CAAC,8DAA8D;YAE7G,IAAI,SAAS,EAAE,QAAQ,IAAI,SAAS,CAAC,QAAQ,CAAC,WAAW,KAAK,IAAI,EAAE;gBAClE,MAAM,SAAS,GAAG,KAAK,EAAE,QAAQ,CAAC;gBAElC,IAAI,SAAS,IAAI,SAAS,CAAC,aAAa,EAAE;oBACxC,gBAAgB,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;iBAC3C;gBAED,IAAI,SAAS,EAAE,UAAU,CAAC,sCAAsC,EAAE;oBAChE,gBAAgB,CAAC,IAAI,CAAC,CAAC;oBAEvB,IACE,CAAC,SAAS,CAAC,UAAU,CAAC,QAAQ,IAAI,SAAS,CAAC,UAAU,CAAC,QAAQ,CAAC,WAAW,EAAE,KAAK,UAAU,CAAC;wBAC7F,SAAS,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,KAAK,CAAC,EAC1C;wBACA,gBAAgB,CAAC,KAAK,CAAC,CAAC;qBACzB;yBAAM,IAAI,SAAS,CAAC,UAAU,CAAC,QAAQ,IAAI,SAAS,CAAC,UAAU,CAAC,QAAQ,CAAC,WAAW,EAAE,KAAK,UAAU,EAAE;wBACtG,aAAa,CAAC,IAAI,CAAC,CAAC;qBACrB;yBAAM;wBACL,aAAa,CAAC,KAAK,CAAC,CAAC;qBACtB;oBAED,IAAI,SAAS,EAAE,UAAU,EAAE,KAAK,EAAE;wBAChC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC;wBACvE,MAAM,WAAW,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;wBACxC,oBAAoB,CAAC,WAAW,CAAC,CAAC;qBACnC;oBAED,wBAAwB,CAAC,mBAAmB,CAAC,iBAAiB,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,CAAC;iBAC5F;aACF;SACF;IACH,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEf,SAAS,SAAS,CAAC,OAAe;QAChC,MAAM,UAAU,GAAG,eAAe,OAAO,EAAE,CAAC;QAC5C,sCAAsC;QACtC,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QAC1B,kBAAkB,CAAC,OAAO,CAAC,CAAC;QAC5B,eAAe,CAAC,IAAI,CAAC,CAAC;IACxB,CAAC;IAED,SAAS,mBAAmB,CAAC,KAAwC,EAAE,MAAe;QACpF,IAAI,MAAM,KAAK,WAAW,EAAE;YAC1B,OAAO;SACR;QACD,eAAe,CAAC,KAAK,CAAC,CAAC;IACzB,CAAC;IAED,SAAS,mBAAmB,CAAC,IAAI;QAC/B,UAAU,CAAC,gBAAgB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;YACpD,KAAK,CAAC,cAAc,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC,cAAc,CAAC,WAAW,CAAC,kBAAkB,EAAE,IAAI,CAAC,CAAC;QAC3G,CAAC,CAAC,CAAC;IACL,CAAC;IAED,SAAS,WAAW,CAAC,OAAe,EAAE,WAAmB;QACvD,IAAI,WAAW,KAAK,WAAW,EAAE;YAC/B,QAAQ,OAAO,EAAE;gBACf,KAAK,gBAAgB,CAAC,CAAC;oBACrB,MAAM,eAAe,GAAG,cAAc,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;oBAE5D,eAAe;yBACZ,IAAI,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC;yBACd,KAAK,CAAC,GAAG,EAAE;wBACV,SAAS,CAAC,GAAG,YAAY,CAAC,oBAAoB,EAAE,cAAc,CAAC,EAAE,CAAC,CAAC;oBACrE,CAAC,CAAC,CAAC;oBAEL,MAAM;iBACP;gBAED,KAAK,gBAAgB,CAAC,CAAC;oBACrB,MAAM,MAAM,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC,MAAM,EAAE,CAAC;oBAC/C,MAAM,YAAY,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC,eAAe,EAAE,CAAC;oBAC9D,MAAM,WAAW,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC;oBAE5C,WAAW;yBACR,IAAI,CAAC,GAAG,EAAE;wBACT,MAAM,QAAQ,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;wBACtG,mBAAmB,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,CAAC;oBAC1D,CAAC,CAAC;yBACD,KAAK,CAAC,GAAG,EAAE;wBACV,SAAS,CAAC,GAAG,YAAY,CAAC,aAAa,EAAE,cAAc,CAAC,EAAE,CAAC,CAAC;oBAC9D,CAAC,CAAC,CAAC;oBAEL,MAAM;iBACP;gBAED,KAAK,kBAAkB,CAAC,CAAC;oBACvB,gCAAgC;oBAChC,MAAM,EAAE,cAAc,EAAE,GAAG,KAAK,CAAC,YAAY,EAAE,CAAC;oBAChD,MAAM,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC,cAAc,EAAE,CAAC;oBAC3C,MAAM,yBAAyB,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC,yBAAyB,EAAE,CAAC;oBACrF,MAAM,aAAa,GACjB,QAAQ,CAAC,WAAW,EAAE,CAAC,aAAa,EAAE;wBACtC,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC,SAAS,CAAC,eAAe,IAAI,WAAW,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC,CAAC;oBAC7H,IAAI,yBAAyB,IAAI,SAAS,IAAI,CAAC,aAAa,EAAE;wBAC5D,MAAM,aAAa,GAAG,2BAA2B,CAAC,OAAO,CAAC,CAAC;wBAE3D,aAAa;6BACV,IAAI,CAAC,IAAI,CAAC,EAAE;4BACX,OAAO,CAAC,cAAc,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;wBAC7C,CAAC,CAAC;6BACD,KAAK,CAAC,GAAG,EAAE;4BACV,SAAS,CAAC,GAAG,YAAY,CAAC,gBAAgB,EAAE,cAAc,CAAC,EAAE,CAAC,CAAC;wBACjE,CAAC,CAAC,CAAC;qBACN;yBAAM;wBACL,MAAM,aAAa,GAAG,gBAAgB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;wBAEvD,aAAa;6BACV,IAAI,CAAC,IAAI,CAAC,EAAE;4BACX,OAAO,CAAC,cAAc,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;wBAC7C,CAAC,CAAC;6BACD,KAAK,CAAC,GAAG,EAAE;4BACV,SAAS,CAAC,GAAG,YAAY,CAAC,gBAAgB,EAAE,cAAc,CAAC,EAAE,CAAC,CAAC;wBACjE,CAAC,CAAC,CAAC;qBACN;oBACD,MAAM;iBACP;gBAED,KAAK,YAAY,CAAC,CAAC;oBACjB,MAAM,aAAa,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC;oBAE1C,aAAa;yBACV,IAAI,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC;yBACd,KAAK,CAAC,GAAG,EAAE;wBACV,SAAS,CAAC,GAAG,YAAY,CAAC,mBAAmB,EAAE,cAAc,CAAC,EAAE,CAAC,CAAC;oBACpE,CAAC,CAAC,CAAC;oBAEL,MAAM;iBACP;gBAED;oBACE,MAAM;aACT;SACF;aAAM,IAAI,WAAW,KAAK,SAAS,EAAE;YACpC,QAAQ,OAAO,EAAE;gBACf,KAAK,kBAAkB,CAAC,CAAC;oBACvB,MAAM,aAAa,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;oBAEhD,aAAa;yBACV,IAAI,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC;yBACd,KAAK,CAAC,GAAG,EAAE;wBACV,SAAS,CAAC,GAAG,YAAY,CAAC,gBAAgB,EAAE,cAAc,CAAC,EAAE,CAAC,CAAC;oBACjE,CAAC,CAAC,CAAC;oBAEL,MAAM;iBACP;gBAED,KAAK,aAAa,CAAC,CAAC;oBAClB,MAAM,cAAc,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;oBAE5C,cAAc;yBACX,IAAI,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC;yBACd,KAAK,CAAC,GAAG,EAAE;wBACV,SAAS,CAAC,GAAG,YAAY,CAAC,iBAAiB,EAAE,cAAc,CAAC,EAAE,CAAC,CAAC;oBAClE,CAAC,CAAC,CAAC;oBAEL,MAAM;iBACP;gBAED;oBACE,MAAM;aACT;SACF;IACH,CAAC;IAED,SAAS,eAAe,CAAC,iBAAiB;QACxC,4DAA4D;QAC5D,IAAI,CAAC,iBAAiB,EAAE;YACtB,OAAO,EAAE,CAAC;SACX;QACD,OAAO,iBAAiB,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAC5I,CAAC;IAED,8EAA8E;IAC9E,MAAM,iBAAiB,GAAG,QAAQ,CAAC,WAAW,EAAE,EAAE,0BAA0B,EAAE,CAAC;IAC/E,MAAM,OAAO,GAAG,QAAQ,CAAC,cAAc,EAAE,CAAC;IAC1C,MAAM,aAAa,GAAG,QAAQ,CAAC,gBAAgB,EAAE,CAAC;IAElD,8BAA8B;IAC9B,KAAK,CAAC,iBAAiB,EAAE,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;IAExD,2BAA2B;IAC3B,MAAM,YAAY,GAAG,eAAe,CAAC,iBAAiB,CAAC,CAAC;IACxD,MAAM,OAAO,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC,MAAM,EAAE,CAAC;IAChD,MAAM,cAAc,GAAG;QACrB,iBAAiB,EAAE,IAAI;QACvB,qBAAqB,EAAE,KAAK;KAC7B,CAAC;IACF,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE;QAC3B,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YAC1B,KAAK,CAAC,iBAAiB,EAAE,CAAC,kBAAkB,CAC1C,aAAa,EACb,QAAQ,CAAC,aAAa,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,aAAa,EAAE;gBAClG,GAAG,cAAc;gBACjB,UAAU,EAAE,IAAI,CAAC,CAAC,CAAC;aACpB,CAAC,EACF,GAAG,aAAa,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,EAC7B,GAAG,OAAO,IAAI,aAAa,EAAE,EAC7B,OAAO,CACR,CAAC;QACJ,CAAC,CAAC,CAAC;KACJ;IAED,OAAO,CACL,eAAK,EAAE,EAAC,YAAY,aACjB,OAAO,EACP,cAAc,CAAC,CAAC,CAAC,CAChB,8BACE,KAAC,SAAS,IACR,WAAW,EAAE,WAAW,EACxB,OAAO,EAAE,OAAO,EAChB,aAAa,EAAE,aAAa,EAC5B,aAAa,EAAE,WAAW,EAC1B,WAAW,EAAE,WAAW,EACxB,qBAAqB,EAAE,qBAAqB,EAC5C,iBAAiB,EAAE,iBAAiB,YAEnC,QAAQ,GACC,EACZ,KAAC,QAAQ,IACP,IAAI,EAAE,YAAY,EAClB,gBAAgB,EAAE,IAAI,EACtB,OAAO,EAAE,mBAAmB,EAC5B,OAAO,EAAE,eAAe,EACxB,MAAM,EACJ,KAAC,UAAU,IAAC,IAAI,EAAC,OAAO,gBAAY,OAAO,EAAC,KAAK,EAAC,SAAS,EAAC,OAAO,EAAE,mBAAmB,YACtF,KAAC,SAAS,IAAC,QAAQ,EAAC,OAAO,GAAG,GACnB,GAEf,IACD,CACJ,CAAC,CAAC,CAAC,CACF,8BACE,KAAC,cAAc,IAAC,WAAW,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,aAAa,EAAE,WAAW,YACjH,QAAQ,GACM,EACjB,KAAC,QAAQ,IACP,IAAI,EAAE,YAAY,EAClB,gBAAgB,EAAE,IAAI,EACtB,OAAO,EAAE,mBAAmB,EAC5B,OAAO,EAAE,eAAe,EACxB,MAAM,EACJ,KAAC,UAAU,IAAC,IAAI,EAAC,OAAO,gBAAY,OAAO,EAAC,KAAK,EAAC,SAAS,EAAC,OAAO,EAAE,mBAAmB,YACtF,KAAC,SAAS,IAAC,QAAQ,EAAC,OAAO,GAAG,GACnB,GAEf,IACD,CACJ,IACG,CACP,CAAC;AACJ,CAAC","sourcesContent":["import React, { PropsWithChildren, useEffect, useState } from 'react';\nimport Snackbar from '@mui/material/Snackbar';\nimport IconButton from '@mui/material/IconButton';\nimport CloseIcon from '@mui/icons-material/Close';\n\nimport { getComponentFromMap } from '../../../bridge/helpers/sdk_component_map';\nimport { useFocusFirstField, useScrolltoTop } from '../../../hooks';\n\nimport { PConnProps } from '../../../types/PConnProps';\n\ninterface AssignmentProps extends PConnProps {\n // If any, enter additional props that only exist on this component\n itemKey: string;\n isInModal: boolean;\n banners: any[];\n // eslint-disable-next-line react/no-unused-prop-types\n actionButtons: any[];\n}\n\nexport default function Assignment(props: PropsWithChildren<AssignmentProps>) {\n // Get emitted components from map (so we can get any override that may exist)\n const AssignmentCard = getComponentFromMap('AssignmentCard');\n const MultiStep = getComponentFromMap('MultiStep');\n\n const { getPConnect, children, itemKey = '', isInModal = false, banners = [] } = props;\n const thePConn = getPConnect();\n\n const [bHasNavigation, setHasNavigation] = useState(false);\n const [actionButtons, setActionButtons] = useState([]);\n const [bIsVertical, setIsVertical] = useState(false);\n const [arCurrentStepIndicies, setArCurrentStepIndicies] = useState<any[]>([]);\n const [arNavigationSteps, setArNavigationSteps] = useState<any[]>([]);\n\n const actionsAPI = thePConn.getActionsApi();\n const localizedVal = PCore.getLocaleUtils().getLocaleValue;\n const localeCategory = 'Assignment';\n const localeReference = `${getPConnect().getCaseInfo().getClassName()}!CASE!${getPConnect().getCaseInfo().getName()}`.toUpperCase();\n\n // store off bound functions to above pointers\n const finishAssignment = actionsAPI.finishAssignment.bind(actionsAPI);\n const navigateToStep = actionsAPI.navigateToStep.bind(actionsAPI);\n const cancelAssignment = actionsAPI.cancelAssignment.bind(actionsAPI);\n const saveAssignment = actionsAPI.saveAssignment?.bind(actionsAPI);\n const cancelCreateStageAssignment = actionsAPI.cancelCreateStageAssignment.bind(actionsAPI);\n const approveCase = actionsAPI.approveCase?.bind(actionsAPI);\n const rejectCase = actionsAPI.rejectCase?.bind(actionsAPI);\n // const showPage = actionsAPI.showPage.bind(actionsAPI);\n\n const [showSnackbar, setShowSnackbar] = useState(false);\n const [snackbarMessage, setSnackbarMessage] = useState('');\n\n function findCurrentIndicies(arStepperSteps: any[], arIndicies: number[], depth: number): number[] {\n let count = 0;\n arStepperSteps.forEach(step => {\n if (step.visited_status === 'current') {\n arIndicies[depth] = count;\n\n // add in\n step.step_status = '';\n } else if (step.visited_status === 'success') {\n count += 1;\n step.step_status = 'completed';\n } else {\n count += 1;\n step.step_status = '';\n }\n\n if (step.steps) {\n arIndicies = findCurrentIndicies(step.steps, arIndicies, depth + 1);\n }\n });\n\n return arIndicies;\n }\n\n function getStepsInfo(steps, formedSteps: any = []) {\n steps.forEach(step => {\n if (step.name) {\n step.name = PCore.getLocaleUtils().getLocaleValue(step.name, undefined, localeReference);\n }\n if (step.steps) {\n formedSteps = getStepsInfo(step.steps, formedSteps);\n } else {\n formedSteps.push(step);\n }\n });\n return formedSteps;\n }\n\n const scrollId = window.location.href.includes('embedded') ? '#pega-part-of-page' : '#portal';\n useScrolltoTop(scrollId, children);\n useFocusFirstField('Assignment', children);\n\n useEffect(() => {\n if (children) {\n const firstChild = Array.isArray(children) ? children[0] : children;\n const oWorkItem = firstChild.props.getPConnect();\n const oWorkData = oWorkItem.getDataObject();\n const oData: any = thePConn.getDataObject(''); // 1st arg empty string until typedefs allow it to be optional\n\n if (oWorkData?.caseInfo && oWorkData.caseInfo.assignments !== null) {\n const oCaseInfo = oData?.caseInfo;\n\n if (oCaseInfo && oCaseInfo.actionButtons) {\n setActionButtons(oCaseInfo.actionButtons);\n }\n\n if (oCaseInfo?.navigation /* was oCaseInfo.navigation != null */) {\n setHasNavigation(true);\n\n if (\n (oCaseInfo.navigation.template && oCaseInfo.navigation.template.toLowerCase() === 'standard') ||\n oCaseInfo?.navigation?.steps?.length === 1\n ) {\n setHasNavigation(false);\n } else if (oCaseInfo.navigation.template && oCaseInfo.navigation.template.toLowerCase() === 'vertical') {\n setIsVertical(true);\n } else {\n setIsVertical(false);\n }\n\n if (oCaseInfo?.navigation?.steps) {\n const steps = JSON.parse(JSON.stringify(oCaseInfo?.navigation?.steps));\n const formedSteps = getStepsInfo(steps);\n setArNavigationSteps(formedSteps);\n }\n\n setArCurrentStepIndicies(findCurrentIndicies(arNavigationSteps, arCurrentStepIndicies, 0));\n }\n }\n }\n }, [children]);\n\n function showToast(message: string) {\n const theMessage = `Assignment: ${message}`;\n // eslint-disable-next-line no-console\n console.error(theMessage);\n setSnackbarMessage(message);\n setShowSnackbar(true);\n }\n\n function handleSnackbarClose(event: React.SyntheticEvent<any> | Event, reason?: string) {\n if (reason === 'clickaway') {\n return;\n }\n setShowSnackbar(false);\n }\n\n function onSaveActionSuccess(data) {\n actionsAPI.cancelAssignment(itemKey, false).then(() => {\n PCore.getPubSubUtils().publish(PCore.getConstants().PUB_SUB_EVENTS.CASE_EVENTS.CREATE_STAGE_SAVED, data);\n });\n }\n\n function buttonPress(sAction: string, sButtonType: string) {\n if (sButtonType === 'secondary') {\n switch (sAction) {\n case 'navigateToStep': {\n const navigatePromise = navigateToStep('previous', itemKey);\n\n navigatePromise\n .then(() => {})\n .catch(() => {\n showToast(`${localizedVal('Navigation failed!', localeCategory)}`);\n });\n\n break;\n }\n\n case 'saveAssignment': {\n const caseID = thePConn.getCaseInfo().getKey();\n const assignmentID = thePConn.getCaseInfo().getAssignmentID();\n const savePromise = saveAssignment(itemKey);\n\n savePromise\n .then(() => {\n const caseType = thePConn.getCaseInfo().c11nEnv.getValue(PCore.getConstants().CASE_INFO.CASE_TYPE_ID);\n onSaveActionSuccess({ caseType, caseID, assignmentID });\n })\n .catch(() => {\n showToast(`${localizedVal('Save failed', localeCategory)}`);\n });\n\n break;\n }\n\n case 'cancelAssignment': {\n // check if create stage (modal)\n const { PUB_SUB_EVENTS } = PCore.getConstants();\n const { publish } = PCore.getPubSubUtils();\n const isAssignmentInCreateStage = thePConn.getCaseInfo().isAssignmentInCreateStage();\n const isLocalAction =\n thePConn.getCaseInfo().isLocalAction() ||\n (PCore.getConstants().CASE_INFO.IS_LOCAL_ACTION && getPConnect().getValue(PCore.getConstants().CASE_INFO.IS_LOCAL_ACTION));\n if (isAssignmentInCreateStage && isInModal && !isLocalAction) {\n const cancelPromise = cancelCreateStageAssignment(itemKey);\n\n cancelPromise\n .then(data => {\n publish(PUB_SUB_EVENTS.EVENT_CANCEL, data);\n })\n .catch(() => {\n showToast(`${localizedVal('Cancel failed!', localeCategory)}`);\n });\n } else {\n const cancelPromise = cancelAssignment(itemKey, false);\n\n cancelPromise\n .then(data => {\n publish(PUB_SUB_EVENTS.EVENT_CANCEL, data);\n })\n .catch(() => {\n showToast(`${localizedVal('Cancel failed!', localeCategory)}`);\n });\n }\n break;\n }\n\n case 'rejectCase': {\n const rejectPromise = rejectCase(itemKey);\n\n rejectPromise\n .then(() => {})\n .catch(() => {\n showToast(`${localizedVal('Rejection failed!', localeCategory)}`);\n });\n\n break;\n }\n\n default:\n break;\n }\n } else if (sButtonType === 'primary') {\n switch (sAction) {\n case 'finishAssignment': {\n const finishPromise = finishAssignment(itemKey);\n\n finishPromise\n .then(() => {})\n .catch(() => {\n showToast(`${localizedVal('Submit failed!', localeCategory)}`);\n });\n\n break;\n }\n\n case 'approveCase': {\n const approvePromise = approveCase(itemKey);\n\n approvePromise\n .then(() => {})\n .catch(() => {\n showToast(`${localizedVal('Approve failed!', localeCategory)}`);\n });\n\n break;\n }\n\n default:\n break;\n }\n }\n }\n\n function getRefreshProps(refreshConditions) {\n // refreshConditions cuurently supports only \"Changes\" event\n if (!refreshConditions) {\n return [];\n }\n return refreshConditions.filter(item => item.event && item.event === 'Changes').map(item => [item.field, item.field?.substring(1)]) || [];\n }\n\n // expected format of refreshConditions : [{field: \".Name\", event: \"Changes\"}]\n const refreshConditions = thePConn.getCaseInfo()?.getActionRefreshConditions();\n const context = thePConn.getContextName();\n const pageReference = thePConn.getPageReference();\n\n // refresh api de-registration\n PCore.getRefreshManager().deRegisterForRefresh(context);\n\n // refresh api registration\n const refreshProps = getRefreshProps(refreshConditions);\n const caseKey = thePConn.getCaseInfo().getKey();\n const refreshOptions = {\n autoDetectRefresh: true,\n preserveClientChanges: false\n };\n if (refreshProps.length > 0) {\n refreshProps.forEach(prop => {\n PCore.getRefreshManager().registerForRefresh(\n 'PROP_CHANGE',\n thePConn.getActionsApi().refreshCaseView.bind(thePConn.getActionsApi(), caseKey, '', pageReference, {\n ...refreshOptions,\n refreshFor: prop[0]\n }),\n `${pageReference}.${prop[1]}`,\n `${context}/${pageReference}`,\n context\n );\n });\n }\n\n return (\n <div id='Assignment'>\n {banners}\n {bHasNavigation ? (\n <>\n <MultiStep\n getPConnect={getPConnect}\n itemKey={itemKey}\n actionButtons={actionButtons}\n onButtonPress={buttonPress}\n bIsVertical={bIsVertical}\n arCurrentStepIndicies={arCurrentStepIndicies}\n arNavigationSteps={arNavigationSteps}\n >\n {children}\n </MultiStep>\n <Snackbar\n open={showSnackbar}\n autoHideDuration={3000}\n onClose={handleSnackbarClose}\n message={snackbarMessage}\n action={\n <IconButton size='small' aria-label='close' color='inherit' onClick={handleSnackbarClose}>\n <CloseIcon fontSize='small' />\n </IconButton>\n }\n />\n </>\n ) : (\n <>\n <AssignmentCard getPConnect={getPConnect} itemKey={itemKey} actionButtons={actionButtons} onButtonPress={buttonPress}>\n {children}\n </AssignmentCard>\n <Snackbar\n open={showSnackbar}\n autoHideDuration={3000}\n onClose={handleSnackbarClose}\n message={snackbarMessage}\n action={\n <IconButton size='small' aria-label='close' color='inherit' onClick={handleSnackbarClose}>\n <CloseIcon fontSize='small' />\n </IconButton>\n }\n />\n </>\n )}\n </div>\n );\n}\n\n// From WC SDK\n// const aHtml = html`\n// ${this.bHasNavigation?\n// html`\n// <div class=\"psdk-stepper\">\n// <multi-step-component .pConn=${this.pConn} .arChildren=${this.arChildren} itemKey=${this.itemKey}\n// .arMainButtons=${this.arMainButtons} .arSecondaryButtons=${this.arSecondaryButtons}\n// .bIsVertical=${this.bIsVertical} .arCurrentStepIndicies=${this.arCurrentStepIndicies}\n// .arNavigationSteps=${this.arNavigationSteps}\n// @MultiStepActionButtonClick=\"${this._onActionButtonClick}\">\n// </multi-step-component>\n// <lit-toast></lit-toast>\n// </div>`\n// :\n// html`\n// <div>\n// <assignment-card-component .pConn=${this.pConn} .arChildren=${this.arChildren} itemKey=${this.itemKey}\n// .arMainButtons=${this.arMainButtons} .arSecondaryButtons=${this.arSecondaryButtons}\n// @AssignmentActionButtonClick=\"${this._onActionButtonClick}\">\n// </assignment-card-component>\n// <lit-toast></lit-toast>\n// </div>`}\n// `;\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"FlowContainer.d.ts","sourceRoot":"","sources":["../../../../../src/components/infra/Containers/FlowContainer/FlowContainer.tsx"],"names":[],"mappings":";AAgBA,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAE1D,UAAU,kBAAmB,SAAQ,UAAU;IAE7C,YAAY,EAAE,GAAG,EAAE,CAAC;IACpB,eAAe,EAAE,KAAK,CAAC,SAAS,CAAC;IACjC,gCAAgC,EAAE,QAAQ,CAAC;IAC3C,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,qBAAqB,EAAE,MAAM,CAAC;CAC/B;AA6BD,eAAO,MAAM,aAAa,UAAW,kBAAkB,4CA8StD,CAAC;;AAEF,wBAA8D"}
1
+ {"version":3,"file":"FlowContainer.d.ts","sourceRoot":"","sources":["../../../../../src/components/infra/Containers/FlowContainer/FlowContainer.tsx"],"names":[],"mappings":";AAaA,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAI1D,UAAU,kBAAmB,SAAQ,UAAU;IAE7C,YAAY,EAAE,GAAG,EAAE,CAAC;IACpB,eAAe,EAAE,KAAK,CAAC,SAAS,CAAC;IACjC,gCAAgC,EAAE,QAAQ,CAAC;IAC3C,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,qBAAqB,EAAE,MAAM,CAAC;CAC/B;AA6BD,eAAO,MAAM,aAAa,UAAW,kBAAkB,4CAmStD,CAAC;;AAEF,wBAA8D"}
@@ -1,17 +1,16 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  /* eslint-disable no-nested-ternary */
3
3
  import { useState, useEffect, useContext } from 'react';
4
- import { makeStyles } from '@material-ui/core/styles';
5
- import { Card, CardHeader, Avatar, Typography } from '@material-ui/core';
6
- import { Alert } from '@material-ui/lab';
7
- import DayjsUtils from '@date-io/dayjs';
8
- import { MuiPickersUtilsProvider } from '@material-ui/pickers';
4
+ import makeStyles from '@mui/styles/makeStyles';
5
+ import { Alert, Card, CardHeader, Avatar, Typography } from '@mui/material';
9
6
  import StoreContext from '../../../../bridge/Context/StoreContext';
10
7
  import { Utils } from '../../../helpers/utils';
11
- import { isContainerInitialized } from '../helpers';
8
+ import { isContainerInitialized } from '../container-helpers';
12
9
  import { getComponentFromMap } from '../../../../bridge/helpers/sdk_component_map';
13
10
  import { withSimpleViewContainerRenderer } from '../SimpleView/SimpleView';
14
11
  import { addContainerItem, getToDoAssignments, showBanner, hasContainerItems } from './helpers';
12
+ import { LocalizationProvider } from '@mui/x-date-pickers';
13
+ import { AdapterDayjs } from '@mui/x-date-pickers/AdapterDayjs';
15
14
  //
16
15
  // WARNING: It is not expected that this file should be modified. It is part of infrastructure code that works with
17
16
  // Redux and creation/update of Redux containers and PConnect. Modifying this code could have undesireable results and
@@ -86,11 +85,7 @@ export const FlowContainer = (props) => {
86
85
  if (caseViewMode && caseViewMode === 'review') {
87
86
  return true;
88
87
  }
89
- // eslint-disable-next-line sonarjs/prefer-single-boolean-return
90
- if (caseViewMode && caseViewMode === 'perform') {
91
- return false;
92
- }
93
- return true;
88
+ return !(caseViewMode && caseViewMode === 'perform');
94
89
  }
95
90
  function initComponent() {
96
91
  const ourPConn = getPConnect();
@@ -135,11 +130,7 @@ export const FlowContainer = (props) => {
135
130
  const ourPConn = getPConnect();
136
131
  const childCases = ourPConn.getValue(pCoreConstants.CASE_INFO.CHILD_ASSIGNMENTS, ''); // 2nd arg empty string until typedefs properly allow optional
137
132
  // const allAssignments = [];
138
- // eslint-disable-next-line sonarjs/prefer-single-boolean-return
139
- if (childCases && childCases.length > 0) {
140
- return true;
141
- }
142
- return false;
133
+ return !!(childCases && childCases.length > 0);
143
134
  }
144
135
  function hasAssignments() {
145
136
  const ourPConn = getPConnect();
@@ -210,15 +201,14 @@ export const FlowContainer = (props) => {
210
201
  }
211
202
  // if have caseMessage show message and end
212
203
  const theCaseMessages = localizedVal(thePConn.getValue('caseMessages', ''), localeCategory); // 2nd arg empty string until typedefs properly allow optional
213
- if (theCaseMessages || !hasAssignments()) {
204
+ // caseMessages's behavior has changed in 24.2, and hence it doesn't let Optional Action work.
205
+ // Changing the below condition for now. Was: (theCaseMessages || !hasAssignments())
206
+ if (!hasAssignments()) {
214
207
  // Temp fix for 8.7 change: confirmationNote no longer coming through in caseMessages$.
215
208
  // So, if we get here and caseMessages$ is empty, use default value in DX API response
216
209
  setCaseMessages(theCaseMessages || localizedVal('Thank you! The next step in this case has been routed appropriately.', localeCategory));
217
210
  setHasCaseMessages(true);
218
211
  setShowConfirm(true);
219
- // publish this "assignmentFinished" for mashup, need to get approved as a standard
220
- // @ts-ignore - second parameter “payload” for publish method should be optional
221
- PCore.getPubSubUtils().publish('assignmentFinished');
222
212
  // debugger;
223
213
  setCheckSvg(Utils.getImageSrc('check', Utils.getSDKStaticConentUrl()));
224
214
  }
@@ -230,7 +220,7 @@ export const FlowContainer = (props) => {
230
220
  }, [props]);
231
221
  const caseId = thePConn.getCaseSummary().content.pyID;
232
222
  const urgency = getPConnect().getCaseSummary().assignments ? getPConnect().getCaseSummary().assignments?.[0].urgency : '';
233
- const operatorInitials = Utils.getInitials(PCore.getEnvironmentInfo().getOperatorName());
223
+ const operatorInitials = Utils.getInitials(PCore.getEnvironmentInfo().getOperatorName() || '');
234
224
  const bShowBanner = showBanner(getPConnect);
235
225
  const displayPageMessages = () => {
236
226
  let hasBanner = false;
@@ -239,7 +229,7 @@ export const FlowContainer = (props) => {
239
229
  return hasBanner && _jsx(AlertBanner, { id: 'flowContainerBanner', variant: 'urgent', messages: messages });
240
230
  };
241
231
  return (_jsxs("div", { style: { textAlign: 'left' }, id: buildName, className: 'psdk-flow-container-top', children: [!bShowConfirm &&
242
- (!todo_showTodo ? (!displayOnlyFA ? (_jsxs(Card, { className: `${classes.root} psdk-root`, children: [_jsx(CardHeader, { id: 'assignment-header', title: _jsx(Typography, { variant: 'h6', children: localizedVal(containerName, undefined, key) }), subheader: `${localizedVal('Task in', 'Todo')} ${caseId} \u2022 ${localizedVal('Priority', 'Todo')} ${urgency}`, avatar: _jsx(Avatar, { className: `${classes.avatar} psdk-avatar`, children: operatorInitials }) }), displayPageMessages(), _jsx(MuiPickersUtilsProvider, { utils: DayjsUtils, children: _jsx(Assignment, { getPConnect: getPConnect, itemKey: itemKey, children: rootViewElement }) })] })) : (_jsxs(Card, { className: `${classes.root} psdk-root`, children: [_jsx(Typography, { variant: 'h6', children: localizedVal(containerName, undefined, key) }), displayPageMessages(), _jsx(MuiPickersUtilsProvider, { utils: DayjsUtils, children: _jsx(Assignment, { getPConnect: getPConnect, itemKey: itemKey, children: rootViewElement }) })] }))) : (_jsx("div", { children: _jsx(ToDo, { getPConnect: getPConnect, caseInfoID: todo_caseInfoID, datasource: todo_datasource, showTodoList: todo_showTodoList, headerText: todo_headerText, type: TODO, context: todo_context, itemKey: itemKey, isConfirm: true }, Math.random()) }))), bHasCaseMessages && (_jsx("div", { className: `${classes.alert} psdk-alert`, children: _jsx(Alert, { severity: 'success', children: caseMessages }) })), bShowConfirm && bShowBanner && _jsx("div", { children: rootViewElement })] }));
232
+ (!todo_showTodo ? (!displayOnlyFA ? (_jsxs(Card, { className: `${classes.root} psdk-root`, children: [_jsx(CardHeader, { id: 'assignment-header', title: _jsx(Typography, { variant: 'h6', children: localizedVal(containerName, undefined, key) }), subheader: `${localizedVal('Task in', 'Todo')} ${caseId} \u2022 ${localizedVal('Priority', 'Todo')} ${urgency}`, avatar: _jsx(Avatar, { className: `${classes.avatar} psdk-avatar`, children: operatorInitials }) }), displayPageMessages(), _jsx(LocalizationProvider, { dateAdapter: AdapterDayjs, children: _jsx(Assignment, { getPConnect: getPConnect, itemKey: itemKey, children: rootViewElement }) })] })) : (_jsxs(Card, { className: `${classes.root} psdk-root`, children: [_jsx(Typography, { variant: 'h6', children: localizedVal(containerName, undefined, key) }), displayPageMessages(), _jsx(LocalizationProvider, { dateAdapter: AdapterDayjs, children: _jsx(Assignment, { getPConnect: getPConnect, itemKey: itemKey, children: rootViewElement }) })] }))) : (_jsx("div", { children: _jsx(ToDo, { getPConnect: getPConnect, caseInfoID: todo_caseInfoID, datasource: todo_datasource, showTodoList: todo_showTodoList, headerText: todo_headerText, type: TODO, context: todo_context, itemKey: itemKey, isConfirm: true }, Math.random()) }))), bHasCaseMessages && (_jsx("div", { className: `${classes.alert} psdk-alert`, children: _jsx(Alert, { severity: 'success', children: caseMessages }) })), bShowConfirm && bShowBanner && _jsx("div", { children: rootViewElement })] }));
243
233
  };
244
234
  export default withSimpleViewContainerRenderer(FlowContainer);
245
235
  //# sourceMappingURL=FlowContainer.js.map