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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (262) hide show
  1. package/lib/bridge/Context/StoreContext.d.ts +3 -2
  2. package/lib/bridge/Context/StoreContext.d.ts.map +1 -1
  3. package/lib/bridge/Context/StoreContext.js +2 -3
  4. package/lib/bridge/Context/StoreContext.js.map +1 -1
  5. package/lib/bridge/helpers/sdk_component_map.d.ts +1 -0
  6. package/lib/bridge/helpers/sdk_component_map.d.ts.map +1 -1
  7. package/lib/bridge/helpers/sdk_component_map.js +22 -0
  8. package/lib/bridge/helpers/sdk_component_map.js.map +1 -1
  9. package/lib/bridge/react_pconnect.d.ts.map +1 -1
  10. package/lib/bridge/react_pconnect.js +2 -14
  11. package/lib/bridge/react_pconnect.js.map +1 -1
  12. package/lib/components/designSystemExtension/AlertBanner/AlertBanner.d.ts +13 -0
  13. package/lib/components/designSystemExtension/AlertBanner/AlertBanner.d.ts.map +1 -0
  14. package/lib/components/designSystemExtension/AlertBanner/AlertBanner.js +26 -0
  15. package/lib/components/designSystemExtension/AlertBanner/AlertBanner.js.map +1 -0
  16. package/lib/components/designSystemExtension/AlertBanner/index.d.ts +2 -0
  17. package/lib/components/designSystemExtension/AlertBanner/index.d.ts.map +1 -0
  18. package/lib/components/designSystemExtension/AlertBanner/index.js +2 -0
  19. package/lib/components/designSystemExtension/AlertBanner/index.js.map +1 -0
  20. package/lib/components/designSystemExtension/FieldGroupList/FieldGroupList.d.ts.map +1 -1
  21. package/lib/components/designSystemExtension/FieldGroupList/FieldGroupList.js +1 -1
  22. package/lib/components/designSystemExtension/FieldGroupList/FieldGroupList.js.map +1 -1
  23. package/lib/components/designSystemExtension/Operator/Operator.d.ts.map +1 -1
  24. package/lib/components/designSystemExtension/Operator/Operator.js +12 -10
  25. package/lib/components/designSystemExtension/Operator/Operator.js.map +1 -1
  26. package/lib/components/designSystemExtension/WssQuickCreate/WssQuickCreate.js +2 -2
  27. package/lib/components/designSystemExtension/WssQuickCreate/WssQuickCreate.js.map +1 -1
  28. package/lib/components/field/CancelAlert/CancelAlert.d.ts.map +1 -1
  29. package/lib/components/field/CancelAlert/CancelAlert.js +9 -7
  30. package/lib/components/field/CancelAlert/CancelAlert.js.map +1 -1
  31. package/lib/components/field/Checkbox/Checkbox.d.ts.map +1 -1
  32. package/lib/components/field/Checkbox/Checkbox.js +3 -3
  33. package/lib/components/field/Checkbox/Checkbox.js.map +1 -1
  34. package/lib/components/field/Currency/currency-utils.d.ts +1 -1
  35. package/lib/components/field/Currency/currency-utils.d.ts.map +1 -1
  36. package/lib/components/field/Currency/currency-utils.js.map +1 -1
  37. package/lib/components/field/Date/Date.d.ts.map +1 -1
  38. package/lib/components/field/Date/Date.js +11 -5
  39. package/lib/components/field/Date/Date.js.map +1 -1
  40. package/lib/components/field/DateTime/DateTime.js +1 -1
  41. package/lib/components/field/DateTime/DateTime.js.map +1 -1
  42. package/lib/components/field/Decimal/Decimal.d.ts.map +1 -1
  43. package/lib/components/field/Decimal/Decimal.js +41 -8
  44. package/lib/components/field/Decimal/Decimal.js.map +1 -1
  45. package/lib/components/field/Dropdown/Dropdown.d.ts.map +1 -1
  46. package/lib/components/field/Dropdown/Dropdown.js +21 -7
  47. package/lib/components/field/Dropdown/Dropdown.js.map +1 -1
  48. package/lib/components/field/Phone/Phone.d.ts.map +1 -1
  49. package/lib/components/field/Phone/Phone.js +2 -1
  50. package/lib/components/field/Phone/Phone.js.map +1 -1
  51. package/lib/components/field/RadioButtons/RadioButtons.d.ts.map +1 -1
  52. package/lib/components/field/RadioButtons/RadioButtons.js +17 -4
  53. package/lib/components/field/RadioButtons/RadioButtons.js.map +1 -1
  54. package/lib/components/field/SemanticLink/utils.d.ts.map +1 -1
  55. package/lib/components/field/SemanticLink/utils.js.map +1 -1
  56. package/lib/components/field/TextInput/TextInput.d.ts.map +1 -1
  57. package/lib/components/field/TextInput/TextInput.js +20 -3
  58. package/lib/components/field/TextInput/TextInput.js.map +1 -1
  59. package/lib/components/field/Time/Time.d.ts.map +1 -1
  60. package/lib/components/field/Time/Time.js +6 -2
  61. package/lib/components/field/Time/Time.js.map +1 -1
  62. package/lib/components/field/URL/URL.d.ts.map +1 -1
  63. package/lib/components/field/URL/URL.js +6 -2
  64. package/lib/components/field/URL/URL.js.map +1 -1
  65. package/lib/components/field/UserReference/UserReference.d.ts.map +1 -1
  66. package/lib/components/field/UserReference/UserReference.js.map +1 -1
  67. package/lib/components/helpers/attachmentHelpers.d.ts +5 -5
  68. package/lib/components/helpers/attachmentHelpers.d.ts.map +1 -1
  69. package/lib/components/helpers/attachmentHelpers.js +2 -2
  70. package/lib/components/helpers/attachmentHelpers.js.map +1 -1
  71. package/lib/components/helpers/auth.d.ts.map +1 -1
  72. package/lib/components/helpers/auth.js +13 -3
  73. package/lib/components/helpers/auth.js.map +1 -1
  74. package/lib/components/helpers/authManager.d.ts.map +1 -1
  75. package/lib/components/helpers/authManager.js +15 -12
  76. package/lib/components/helpers/authManager.js.map +1 -1
  77. package/lib/components/helpers/case-utils.d.ts +20 -0
  78. package/lib/components/helpers/case-utils.d.ts.map +1 -0
  79. package/lib/components/helpers/case-utils.js +81 -0
  80. package/lib/components/helpers/case-utils.js.map +1 -0
  81. package/lib/components/helpers/common-utils.d.ts +2 -0
  82. package/lib/components/helpers/common-utils.d.ts.map +1 -0
  83. package/lib/components/helpers/common-utils.js +5 -0
  84. package/lib/components/helpers/common-utils.js.map +1 -0
  85. package/lib/components/helpers/config_access.d.ts.map +1 -1
  86. package/lib/components/helpers/config_access.js +75 -82
  87. package/lib/components/helpers/config_access.js.map +1 -1
  88. package/lib/components/helpers/data_page.d.ts.map +1 -1
  89. package/lib/components/helpers/data_page.js.map +1 -1
  90. package/lib/components/helpers/date-format-utils.d.ts.map +1 -1
  91. package/lib/components/helpers/date-format-utils.js +23 -14
  92. package/lib/components/helpers/date-format-utils.js.map +1 -1
  93. package/lib/components/helpers/event-utils.d.ts +1 -1
  94. package/lib/components/helpers/event-utils.d.ts.map +1 -1
  95. package/lib/components/helpers/event-utils.js.map +1 -1
  96. package/lib/components/helpers/field-group-utils.d.ts +15 -2
  97. package/lib/components/helpers/field-group-utils.d.ts.map +1 -1
  98. package/lib/components/helpers/field-group-utils.js +3 -3
  99. package/lib/components/helpers/field-group-utils.js.map +1 -1
  100. package/lib/components/helpers/formatters/Boolean.d.ts +3 -3
  101. package/lib/components/helpers/formatters/Boolean.d.ts.map +1 -1
  102. package/lib/components/helpers/formatters/Boolean.js.map +1 -1
  103. package/lib/components/helpers/formatters/Currency.d.ts.map +1 -1
  104. package/lib/components/helpers/formatters/Currency.js +4 -3
  105. package/lib/components/helpers/formatters/Currency.js.map +1 -1
  106. package/lib/components/helpers/formatters/CurrencyMap.d.ts +1132 -1399
  107. package/lib/components/helpers/formatters/CurrencyMap.d.ts.map +1 -1
  108. package/lib/components/helpers/formatters/CurrencyMap.js.map +1 -1
  109. package/lib/components/helpers/formatters/Date.d.ts.map +1 -1
  110. package/lib/components/helpers/formatters/Date.js +1 -1
  111. package/lib/components/helpers/formatters/Date.js.map +1 -1
  112. package/lib/components/helpers/formatters/common.d.ts +2 -2
  113. package/lib/components/helpers/formatters/common.d.ts.map +1 -1
  114. package/lib/components/helpers/formatters/common.js +4 -5
  115. package/lib/components/helpers/formatters/common.js.map +1 -1
  116. package/lib/components/helpers/formatters/index.d.ts +1 -1
  117. package/lib/components/helpers/formatters/index.d.ts.map +1 -1
  118. package/lib/components/helpers/formatters/index.js.map +1 -1
  119. package/lib/components/helpers/reactContextHelpers.d.ts +3 -2
  120. package/lib/components/helpers/reactContextHelpers.d.ts.map +1 -1
  121. package/lib/components/helpers/reactContextHelpers.js.map +1 -1
  122. package/lib/components/helpers/simpleTableHelpers.d.ts +2 -2
  123. package/lib/components/helpers/simpleTableHelpers.d.ts.map +1 -1
  124. package/lib/components/helpers/simpleTableHelpers.js +5 -2
  125. package/lib/components/helpers/simpleTableHelpers.js.map +1 -1
  126. package/lib/components/helpers/state-utils.d.ts +4 -0
  127. package/lib/components/helpers/state-utils.d.ts.map +1 -0
  128. package/lib/components/helpers/state-utils.js +36 -0
  129. package/lib/components/helpers/state-utils.js.map +1 -0
  130. package/lib/components/helpers/template-utils.d.ts.map +1 -1
  131. package/lib/components/helpers/template-utils.js +0 -1
  132. package/lib/components/helpers/template-utils.js.map +1 -1
  133. package/lib/components/helpers/utils.d.ts +1 -1
  134. package/lib/components/helpers/utils.d.ts.map +1 -1
  135. package/lib/components/helpers/utils.js +9 -3
  136. package/lib/components/helpers/utils.js.map +1 -1
  137. package/lib/components/helpers/versionHelpers.d.ts +0 -6
  138. package/lib/components/helpers/versionHelpers.d.ts.map +1 -1
  139. package/lib/components/helpers/versionHelpers.js +0 -6
  140. package/lib/components/helpers/versionHelpers.js.map +1 -1
  141. package/lib/components/infra/ActionButtons/ActionButtons.d.ts.map +1 -1
  142. package/lib/components/infra/ActionButtons/ActionButtons.js +4 -2
  143. package/lib/components/infra/ActionButtons/ActionButtons.js.map +1 -1
  144. package/lib/components/infra/Assignment/Assignment.d.ts +1 -0
  145. package/lib/components/infra/Assignment/Assignment.d.ts.map +1 -1
  146. package/lib/components/infra/Assignment/Assignment.js +27 -15
  147. package/lib/components/infra/Assignment/Assignment.js.map +1 -1
  148. package/lib/components/infra/Containers/FlowContainer/FlowContainer.d.ts.map +1 -1
  149. package/lib/components/infra/Containers/FlowContainer/FlowContainer.js +17 -9
  150. package/lib/components/infra/Containers/FlowContainer/FlowContainer.js.map +1 -1
  151. package/lib/components/infra/Containers/FlowContainer/helpers.d.ts +12 -12
  152. package/lib/components/infra/Containers/FlowContainer/helpers.d.ts.map +1 -1
  153. package/lib/components/infra/Containers/FlowContainer/helpers.js +17 -16
  154. package/lib/components/infra/Containers/FlowContainer/helpers.js.map +1 -1
  155. package/lib/components/infra/Containers/ModalViewContainer/ModalViewContainer.d.ts.map +1 -1
  156. package/lib/components/infra/Containers/ModalViewContainer/ModalViewContainer.js +17 -8
  157. package/lib/components/infra/Containers/ModalViewContainer/ModalViewContainer.js.map +1 -1
  158. package/lib/components/infra/Containers/ViewContainer/ViewContainer.d.ts.map +1 -1
  159. package/lib/components/infra/Containers/ViewContainer/ViewContainer.js +4 -2
  160. package/lib/components/infra/Containers/ViewContainer/ViewContainer.js.map +1 -1
  161. package/lib/components/infra/DashboardFilter/DashboardFilter.d.ts.map +1 -1
  162. package/lib/components/infra/DashboardFilter/DashboardFilter.js.map +1 -1
  163. package/lib/components/infra/DashboardFilter/filterUtils.d.ts.map +1 -1
  164. package/lib/components/infra/DashboardFilter/filterUtils.js.map +1 -1
  165. package/lib/components/infra/DeferLoad/DeferLoad.d.ts.map +1 -1
  166. package/lib/components/infra/DeferLoad/DeferLoad.js.map +1 -1
  167. package/lib/components/infra/ErrorBoundary/ErrorBoundary.d.ts.map +1 -1
  168. package/lib/components/infra/ErrorBoundary/ErrorBoundary.js +7 -4
  169. package/lib/components/infra/ErrorBoundary/ErrorBoundary.js.map +1 -1
  170. package/lib/components/infra/MultiStep/MultiStep.js +2 -2
  171. package/lib/components/infra/MultiStep/MultiStep.js.map +1 -1
  172. package/lib/components/infra/NavBar/NavBar.d.ts.map +1 -1
  173. package/lib/components/infra/NavBar/NavBar.js +6 -4
  174. package/lib/components/infra/NavBar/NavBar.js.map +1 -1
  175. package/lib/components/infra/RootContainer/RootContainer.d.ts.map +1 -1
  176. package/lib/components/infra/RootContainer/RootContainer.js +12 -15
  177. package/lib/components/infra/RootContainer/RootContainer.js.map +1 -1
  178. package/lib/components/infra/Stages/Stages.d.ts.map +1 -1
  179. package/lib/components/infra/Stages/Stages.js +2 -1
  180. package/lib/components/infra/Stages/Stages.js.map +1 -1
  181. package/lib/components/infra/View/View.d.ts +1 -1
  182. package/lib/components/infra/View/View.d.ts.map +1 -1
  183. package/lib/components/infra/View/View.js +6 -34
  184. package/lib/components/infra/View/View.js.map +1 -1
  185. package/lib/components/template/AppShell/AppShell.d.ts.map +1 -1
  186. package/lib/components/template/AppShell/AppShell.js +8 -8
  187. package/lib/components/template/AppShell/AppShell.js.map +1 -1
  188. package/lib/components/template/CaseView/CaseView.d.ts +1 -1
  189. package/lib/components/template/CaseView/CaseView.d.ts.map +1 -1
  190. package/lib/components/template/CaseView/CaseView.js +37 -28
  191. package/lib/components/template/CaseView/CaseView.js.map +1 -1
  192. package/lib/components/template/CaseViewActionsMenu/CaseViewActionsMenu.d.ts +3 -1
  193. package/lib/components/template/CaseViewActionsMenu/CaseViewActionsMenu.d.ts.map +1 -1
  194. package/lib/components/template/CaseViewActionsMenu/CaseViewActionsMenu.js +13 -8
  195. package/lib/components/template/CaseViewActionsMenu/CaseViewActionsMenu.js.map +1 -1
  196. package/lib/components/template/Confirmation/Confirmation.d.ts.map +1 -1
  197. package/lib/components/template/Confirmation/Confirmation.js.map +1 -1
  198. package/lib/components/template/DataReference/DataReference.d.ts.map +1 -1
  199. package/lib/components/template/DataReference/DataReference.js.map +1 -1
  200. package/lib/components/template/DefaultForm/DefaultForm.d.ts.map +1 -1
  201. package/lib/components/template/DefaultForm/DefaultForm.js +9 -5
  202. package/lib/components/template/DefaultForm/DefaultForm.js.map +1 -1
  203. package/lib/components/template/DefaultForm/utils/index.d.ts +3 -0
  204. package/lib/components/template/DefaultForm/utils/index.d.ts.map +1 -0
  205. package/lib/components/template/DefaultForm/utils/index.js +27 -0
  206. package/lib/components/template/DefaultForm/utils/index.js.map +1 -0
  207. package/lib/components/template/FieldGroupTemplate/FieldGroupTemplate.d.ts.map +1 -1
  208. package/lib/components/template/FieldGroupTemplate/FieldGroupTemplate.js +1 -1
  209. package/lib/components/template/FieldGroupTemplate/FieldGroupTemplate.js.map +1 -1
  210. package/lib/components/template/ListView/DefaultViewMeta.d.ts +1 -90
  211. package/lib/components/template/ListView/DefaultViewMeta.d.ts.map +1 -1
  212. package/lib/components/template/ListView/DefaultViewMeta.js.map +1 -1
  213. package/lib/components/template/ListView/ListView.d.ts.map +1 -1
  214. package/lib/components/template/ListView/ListView.js +1 -1
  215. package/lib/components/template/ListView/ListView.js.map +1 -1
  216. package/lib/components/template/ListView/hooks.d.ts.map +1 -1
  217. package/lib/components/template/ListView/hooks.js +0 -1
  218. package/lib/components/template/ListView/hooks.js.map +1 -1
  219. package/lib/components/template/ListView/utils.d.ts +28 -16
  220. package/lib/components/template/ListView/utils.d.ts.map +1 -1
  221. package/lib/components/template/ListView/utils.js +1 -2
  222. package/lib/components/template/ListView/utils.js.map +1 -1
  223. package/lib/components/template/MultiReferenceReadOnly/MultiReferenceReadOnly.d.ts.map +1 -1
  224. package/lib/components/template/MultiReferenceReadOnly/MultiReferenceReadOnly.js.map +1 -1
  225. package/lib/components/template/PromotedFilters/PromotedFilters.d.ts.map +1 -1
  226. package/lib/components/template/PromotedFilters/PromotedFilters.js +2 -2
  227. package/lib/components/template/PromotedFilters/PromotedFilters.js.map +1 -1
  228. package/lib/components/template/SimpleTable/SimpleTable/SimpleTable.d.ts.map +1 -1
  229. package/lib/components/template/SimpleTable/SimpleTable/SimpleTable.js.map +1 -1
  230. package/lib/components/template/SimpleTable/SimpleTableManual/SimpleTableManual.d.ts.map +1 -1
  231. package/lib/components/template/SimpleTable/SimpleTableManual/SimpleTableManual.js +3 -3
  232. package/lib/components/template/SimpleTable/SimpleTableManual/SimpleTableManual.js.map +1 -1
  233. package/lib/components/template/SimpleTable/SimpleTableSelect/SimpleTableSelect.d.ts.map +1 -1
  234. package/lib/components/template/SimpleTable/SimpleTableSelect/SimpleTableSelect.js.map +1 -1
  235. package/lib/components/template/SubTabs/tabUtils.d.ts.map +1 -1
  236. package/lib/components/template/SubTabs/tabUtils.js.map +1 -1
  237. package/lib/components/template/WssNavBar/WssNavBar.js +2 -2
  238. package/lib/components/template/WssNavBar/WssNavBar.js.map +1 -1
  239. package/lib/components/widget/Attachment/Attachment.css +15 -3
  240. package/lib/components/widget/Attachment/Attachment.d.ts.map +1 -1
  241. package/lib/components/widget/Attachment/Attachment.js +29 -25
  242. package/lib/components/widget/Attachment/Attachment.js.map +1 -1
  243. package/lib/components/widget/CaseHistory/CaseHistory.js +3 -3
  244. package/lib/components/widget/CaseHistory/CaseHistory.js.map +1 -1
  245. package/lib/components/widget/FileUtility/FileUtility/FileUtility.d.ts.map +1 -1
  246. package/lib/components/widget/FileUtility/FileUtility/FileUtility.js +17 -17
  247. package/lib/components/widget/FileUtility/FileUtility/FileUtility.js.map +1 -1
  248. package/lib/components/widget/QuickCreate/QuickCreate.d.ts.map +1 -1
  249. package/lib/components/widget/QuickCreate/QuickCreate.js +2 -2
  250. package/lib/components/widget/QuickCreate/QuickCreate.js.map +1 -1
  251. package/lib/components/widget/SummaryItem/SummaryItem.d.ts.map +1 -1
  252. package/lib/components/widget/SummaryItem/SummaryItem.js +2 -2
  253. package/lib/components/widget/SummaryItem/SummaryItem.js.map +1 -1
  254. package/lib/components/widget/ToDo/ToDo.d.ts.map +1 -1
  255. package/lib/components/widget/ToDo/ToDo.js +10 -6
  256. package/lib/components/widget/ToDo/ToDo.js.map +1 -1
  257. package/lib/components_map.d.ts +3 -3
  258. package/lib/components_map.d.ts.map +1 -1
  259. package/lib/components_map.js +819 -818
  260. package/lib/components_map.js.map +1 -1
  261. package/lib/doc/KeyReleaseUpdates.md +44 -9
  262. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Attachment.js","sourceRoot":"","sources":["../../../../src/components/widget/Attachment/Attachment.tsx"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable react/jsx-boolean-value */\n\nimport { Button } from '@material-ui/core';\nimport React, { useState, useEffect } from 'react';\nimport { buildFilePropsFromResponse, getIconFromFileType, validateMaxSize, getIconForAttachment } from '../../helpers/attachmentHelpers';\nimport './Attachment.css';\nimport SummaryList from '../SummaryList'\nimport { CircularProgress } from \"@material-ui/core\";\nimport download from \"downloadjs\";\n\ndeclare const PCore: any;\n\nfunction getCurrentAttachmentsList(context) {\n return PCore.getStoreValue('.attachmentsList', 'context_data', context) || [];\n}\n\nexport default function Attachment(props) {\n const {value, getPConnect, label} = props;\n /* this is a temporary fix because required is supposed to be passed as a boolean and NOT as a string */\n let { required, disabled } = props;\n [required, disabled] = [required, disabled].map(\n prop => prop === true || (typeof prop === 'string' && prop === 'true')\n );\n let arFileList$: Array<any> = [];\n const pConn = getPConnect();\n const caseID = PCore.getStoreValue('.pyID', 'caseInfo.content', pConn.getContextName());\n let fileTemp: any = {};\n\n let categoryName = '';\n if (value && value.pyCategoryName) {\n categoryName = value.pyCategoryName;\n }\n\n let valueRef = pConn.getStateProps().value;\n valueRef = valueRef.indexOf('.') === 0 ? valueRef.substring(1) : valueRef;\n const [file, setFile] = useState(fileTemp);\n\n const resetAttachmentStoredState = () => {\n PCore.getStateUtils().updateState(pConn.getContextName(), 'attachmentsList', undefined, {\n pageReference: 'context_data',\n isArrayDeepMerge: false\n });\n };\n\n const fileDownload = (data, fileName, ext) => {\n const fileData = ext ? `${fileName}.${ext}` : fileName;\n download(atob(data), fileData);\n };\n\n function _downloadFileFromList(fileObj: any) {\n PCore.getAttachmentUtils()\n .downloadAttachment(fileObj.pzInsKey, pConn.getContextName())\n .then((content) => {\n const extension = fileObj.pyAttachName.split(\".\").pop();\n fileDownload(content.data, fileObj.pyFileName, extension);\n })\n .catch(() => {});\n }\n\n function setNewFiles(arFiles) {\n let index = 0;\n for (const item of arFiles) {\n if (!validateMaxSize(item, 5)) {\n item.error = true;\n item.meta = \"File is too big. Max allowed size is 5MB.\";\n }\n item.mimeType = item.type;\n item.icon = getIconFromFileType(item.type);\n item.ID = `${new Date().getTime()}I${index}`;\n index+=1;\n }\n return arFiles;\n }\n\n function getFiles(arFiles: Array<any>) {\n return setNewFiles(arFiles);\n }\n\n function getNewListUtilityItemProps({\n att,\n cancelFile,\n downloadFile,\n deleteFile,\n removeFile\n }) {\n let actions;\n if (att.progress && att.progress !== 100) {\n actions = [\n {\n id: `Cancel-${att.ID}`,\n text: \"Cancel\",\n icon: \"times\",\n onClick: cancelFile\n }\n ];\n } else if (att.links) {\n const isFile = att.type === \"FILE\";\n const ID = att.ID.replace(/\\s/gi, \"\");\n const actionsMap = new Map([\n [\n \"download\",\n {\n id: `download-${ID}`,\n text: isFile ? \"Download\" : \"Open\",\n icon: isFile ? \"download\" : \"open\",\n onClick: downloadFile\n }\n ],\n [\n \"delete\",\n {\n id: `Delete-${ID}`,\n text: \"Delete\",\n icon: \"trash\",\n onClick: deleteFile\n }\n ]\n ]);\n actions = [];\n actionsMap.forEach((action, actionKey) => {\n if (att.links[actionKey]) {\n actions.push(action);\n }\n });\n } else if (att.error) {\n actions = [\n {\n id: `Remove-${att.ID}`,\n text: \"Remove\",\n icon: \"trash\",\n onClick: removeFile\n }\n ];\n }\n return {\n id: att.ID,\n visual: {\n icon: getIconForAttachment(att),\n progress: att.progress === 100 ? undefined: att.progress,\n },\n primary: {\n type: att.type,\n name: att.error ? att.fileName : att.name,\n icon: \"trash\",\n click: removeFile,\n },\n secondary: {\n text: att.meta,\n error: att.error\n },\n actions\n };\n };\n\n const onFileAdded = (event) => {\n const addedFile = event.target.files[0];\n setFile({\n props: {\n name: addedFile.name,\n icon: getIconFromFileType(addedFile.type),\n },\n inProgress: true\n });\n const arFiles$ = getFiles(event.target.files);\n const myFiles: any = Array.from(arFiles$);\n\n const onUploadProgress = () => {};\n\n const errorHandler = (isFetchCanceled) => {\n return (error) => {\n if (!isFetchCanceled(error)) {\n let uploadFailMsg = pConn.getLocalizedValue('Something went wrong');\n if (error.response && error.response.data && error.response.data.errorDetails) {\n uploadFailMsg = pConn.getLocalizedValue(error.response.data.errorDetails[0].localizedValue);\n }\n myFiles[0].meta = uploadFailMsg;\n myFiles[0].error = true;\n myFiles[0].fileName = pConn.getLocalizedValue('Unable to upload file');\n arFileList$ = myFiles.map((att) => {\n return getNewListUtilityItemProps({\n att,\n downloadFile: null,\n cancelFile: null,\n deleteFile: null,\n removeFile: null\n });\n });\n setFile((current) => {\n return {\n ...current,\n props: {\n ...current.props,\n arFileList$\n },\n inProgress: false,\n attachmentUploaded: true,\n showMenuIcon: false\n };\n });\n }\n throw error;\n };\n };\n\n PCore.getAttachmentUtils()\n .uploadAttachment(\n myFiles[0],\n onUploadProgress,\n errorHandler,\n pConn.getContextName()\n )\n .then((fileRes) => {\n let reqObj;\n if (PCore.getPCoreVersion()?.includes('8.7')) {\n reqObj = {\n type: \"File\",\n attachmentFieldName: valueRef,\n category: categoryName,\n ID: fileRes.ID\n };\n pConn.attachmentsInfo = reqObj;\n } else {\n reqObj = {\n type: \"File\",\n label: valueRef,\n category: categoryName,\n handle: fileRes.ID,\n ID: fileRes.clientFileID\n };\n const currentAttachmentList = getCurrentAttachmentsList(pConn.getContextName()).filter(\n (f) => f.label !== valueRef\n );\n PCore.getStateUtils().updateState(\n pConn.getContextName(),\n 'attachmentsList',\n [...currentAttachmentList, reqObj],\n {\n pageReference: 'context_data',\n isArrayDeepMerge: false\n }\n );\n }\n const fieldName = pConn.getStateProps().value;\n const context = pConn.getContextName();\n\n PCore.getMessageManager().clearMessages({\n type: PCore.getConstants().MESSAGES.MESSAGES_TYPE_ERROR,\n property: fieldName,\n pageReference: pConn.getPageReference(),\n context\n });\n myFiles[0].meta = \"Uploaded Successfully\";\n\n arFileList$ = myFiles.map((att) => {\n return getNewListUtilityItemProps({\n att,\n downloadFile: null,\n cancelFile: null,\n deleteFile: null,\n removeFile: null\n });\n });\n setFile((current) => {\n return {\n ...current,\n props: {\n ...current.props,\n arFileList$\n },\n inProgress: false,\n attachmentUploaded: true,\n showMenuIcon: false\n };\n });\n })\n\n .catch(() => {\n // just catching the rethrown error at uploadAttachment\n // to handle Unhandled rejections\n });\n };\n\n function _removeFileFromList(item: any, list) {\n const arFileList = file.props ? file.props.arFileList$ : list;\n const fileIndex = arFileList.findIndex(element => element?.id === item?.id);\n if (PCore.getPCoreVersion()?.includes('8.7')) {\n if (value) {\n pConn.attachmentsInfo = {\n type: \"File\",\n attachmentFieldName: valueRef,\n delete: true\n };\n }\n if (fileIndex > -1) { arFileList.splice(parseInt(fileIndex, 10), 1) };\n setFile((current) => {\n return {\n ...current,\n props: {\n ...current.props,\n arFileList\n },\n };\n });\n } else {\n const attachmentsList = [];\n const currentAttachmentList = getCurrentAttachmentsList(pConn.getContextName()).filter(\n (f) => f.label !== valueRef\n );\n if (value && value.pxResults && +value.pyCount > 0) {\n const deletedFile = {\n type: \"File\",\n label: valueRef,\n delete: true,\n responseProps: {\n pzInsKey: arFileList[fileIndex].id\n },\n };\n // updating the redux store to help form-handler in passing the data to delete the file from server\n PCore.getStateUtils().updateState(\n pConn.getContextName(),\n 'attachmentsList',\n [...currentAttachmentList, deletedFile],\n {\n pageReference: 'context_data',\n isArrayDeepMerge: false\n }\n );\n } else {\n PCore.getStateUtils().updateState(\n pConn.getContextName(),\n 'attachmentsList',\n [...currentAttachmentList, ...attachmentsList],\n {\n pageReference: 'context_data',\n isArrayDeepMerge: false\n }\n );\n }\n if (fileIndex > -1) { arFileList.splice(parseInt(fileIndex, 10), 1) };\n setFile((current) => {\n return {\n ...current,\n props: {\n ...current.props,\n arFileList\n },\n };\n });\n }\n }\n\n useEffect(() => {\n if (value && value.pxResults && +value.pyCount > 0) {\n fileTemp = buildFilePropsFromResponse(value.pxResults[0]);\n\n if (fileTemp.responseProps) {\n if (!pConn.attachmentsInfo) {\n pConn.attachmentsInfo = {\n type: \"File\",\n attachmentFieldName: valueRef,\n category: categoryName\n };\n }\n\n if (fileTemp.responseProps.pzInsKey && !fileTemp.responseProps.pzInsKey.includes(\"temp\")) {\n\n fileTemp.props.type = fileTemp.responseProps.pyMimeFileExtension;\n fileTemp.props.mimeType = fileTemp.responseProps.pyMimeFileExtension;\n fileTemp.props.ID = fileTemp.responseProps.pzInsKey;\n // create the actions for the \"more\" menu on the attachment\n const arMenuList: Array<any> = [];\n let oMenu: any = {};\n\n oMenu.icon = \"download\";\n oMenu.text = \"Download\";\n oMenu.onClick = () => { _downloadFileFromList(value.pxResults[0])}\n arMenuList.push(oMenu);\n oMenu = {};\n oMenu.icon = \"trash\";\n oMenu.text = \"Delete\";\n oMenu.onClick = () => { _removeFileFromList(arFileList$[0], arFileList$)}\n arMenuList.push(oMenu);\n\n arFileList$.push(getNewListUtilityItemProps({\n att: fileTemp.props,\n downloadFile: null,\n cancelFile: null,\n deleteFile: null,\n removeFile: null\n }));\n arFileList$[0].actions = arMenuList;\n\n setFile((current) => {\n return {\n ...current,\n props: {\n ...current.props,\n arFileList$\n },\n inProgress: false,\n attachmentUploaded: true,\n showMenuIcon: true\n };\n });\n }\n\n if (fileTemp) {\n const currentAttachmentList = getCurrentAttachmentsList(pConn.getContextName());\n const index = currentAttachmentList.findIndex(element => element.props.ID === fileTemp.props.ID);\n let tempFiles: any = [];\n if (index < 0) {\n tempFiles = [fileTemp];\n }\n PCore.getStateUtils().updateState(\n pConn.getContextName(),\n 'attachmentsList',\n [...currentAttachmentList, ...tempFiles],\n {\n pageReference: 'context_data',\n isArrayDeepMerge: false\n }\n );\n }\n }\n }\n PCore.getPubSubUtils().subscribe(\n PCore.getConstants().PUB_SUB_EVENTS.CASE_EVENTS.ASSIGNMENT_SUBMISSION,\n resetAttachmentStoredState,\n caseID\n );\n return () => {\n PCore.getPubSubUtils().unsubscribe(PCore.getConstants().PUB_SUB_EVENTS.CASE_EVENTS.ASSIGNMENT_SUBMISSION, caseID);\n };\n }, []);\n\n let content = (\n <div className='file-div'>\n {file.inProgress && (<div className=\"progress-div\"><CircularProgress /></div>)}\n <div hidden={true} id=\"attachment-ID\">{valueRef}</div>\n <label htmlFor={valueRef}>\n <input\n style={{ display: 'none' }}\n id={valueRef}\n name='upload-photo'\n type='file'\n required={required}\n onChange={onFileAdded}\n />\n <Button variant='outlined' color='primary' component=\"span\">\n Upload file\n </Button>\n </label>\n </div>\n );\n\n if (file && file.attachmentUploaded && file.props.arFileList$ && file.props.arFileList$.length > 0) {\n content = (\n <div>\n {file.showMenuIcon && (<SummaryList arItems$={file.props.arFileList$} menuIconOverrideAction$={_removeFileFromList}></SummaryList>)}\n {!file.showMenuIcon && (<SummaryList menuIconOverride$='trash' arItems$={file.props.arFileList$} menuIconOverrideAction$={_removeFileFromList}></SummaryList>)}\n </div>\n\n );\n }\n\n return (\n <div className='file-upload-container'>\n <span className={`label ${required ? 'file-label' : ''}`}>{label}</span>\n <section>{content}</section>\n </div>\n );\n}\n"]}
1
+ {"version":3,"file":"Attachment.js","sourceRoot":"","sources":["../../../../src/components/widget/Attachment/Attachment.tsx"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable react/jsx-boolean-value */\n\nimport { Button } from '@material-ui/core';\nimport React, { useState, useEffect } from 'react';\nimport { buildFilePropsFromResponse, getIconFromFileType, validateMaxSize, getIconForAttachment } from '../../helpers/attachmentHelpers';\nimport './Attachment.css';\nimport SummaryList from '../SummaryList'\nimport { CircularProgress } from \"@material-ui/core\";\nimport download from \"downloadjs\";\n\n// Remove this and use \"real\" PCore type once .d.ts is fixed (currently shows 2 errors)\ndeclare const PCore: any;\n\n\nconst getAttachmentKey = (name='') => name ? `attachmentsList.${name}` : 'attachmentsList';\n\nfunction getCurrentAttachmentsList(key, context) {\n return PCore.getStoreValue(`.${key}`, 'context_data', context) || [];\n}\n\nexport default function Attachment(props) {\n const PCoreVersion = PCore.getPCoreVersion();\n const {value, getPConnect, label, validatemessage} = props;\n /* this is a temporary fix because required is supposed to be passed as a boolean and NOT as a string */\n let { required, disabled } = props;\n [required, disabled] = [required, disabled].map(\n prop => prop === true || (typeof prop === 'string' && prop === 'true')\n );\n let arFileList$: Array<any> = [];\n const pConn = getPConnect();\n const caseID = PCore.getStoreValue('.pyID', 'caseInfo.content', pConn.getContextName());\n let fileTemp: any = {};\n\n let categoryName = '';\n if (value && value.pyCategoryName) {\n categoryName = value.pyCategoryName;\n }\n\n let valueRef = pConn.getStateProps().value;\n valueRef = valueRef.indexOf('.') === 0 ? valueRef.substring(1) : valueRef;\n const [file, setFile] = useState(fileTemp);\n\n const resetAttachmentStoredState = () => {\n PCore.getStateUtils().updateState(pConn.getContextName(), getAttachmentKey(PCoreVersion?.includes('8.23') ? valueRef : ''), undefined, {\n pageReference: 'context_data',\n isArrayDeepMerge: false\n });\n };\n\n const fileDownload = (data, fileName, ext) => {\n const fileData = ext ? `${fileName}.${ext}` : fileName;\n download(atob(data), fileData);\n };\n\n function _downloadFileFromList(fileObj: any) {\n PCore.getAttachmentUtils()\n .downloadAttachment(fileObj.pzInsKey, pConn.getContextName())\n .then((content) => {\n const extension = fileObj.pyAttachName.split(\".\").pop();\n fileDownload(content.data, fileObj.pyFileName, extension);\n })\n .catch(() => {});\n }\n\n function setNewFiles(arFiles) {\n let index = 0;\n const maxAttachmentSize = 5;\n for (const item of arFiles) {\n if (!validateMaxSize(item, maxAttachmentSize)) {\n item.error = true;\n item.meta = pConn.getLocalizedValue(`File is too big. Max allowed size is ${maxAttachmentSize}MB.`);\n }\n item.mimeType = item.type;\n item.icon = getIconFromFileType(item.type);\n item.ID = `${new Date().getTime()}I${index}`;\n index+=1;\n }\n return arFiles;\n }\n\n function getFiles(arFiles: Array<any>) {\n return setNewFiles(arFiles);\n }\n\n function getNewListUtilityItemProps(this: any, {\n att,\n cancelFile,\n downloadFile,\n deleteFile,\n removeFile\n }) {\n let actions;\n if (att.progress && att.progress !== 100) {\n actions = [\n {\n id: `Cancel-${att.ID}`,\n text: pConn.getLocalizedValue('Cancel'),\n icon: \"times\",\n onClick: cancelFile\n }\n ];\n } else if (att.links) {\n const isFile = att.type === \"FILE\";\n const ID = att.ID.replace(/\\s/gi, \"\");\n const actionsMap = new Map([\n [\n \"download\",\n {\n id: `download-${ID}`,\n text: isFile ? pConn.getLocalizedValue('Download') : pConn.getLocalizedValue('Open'),\n icon: isFile ? \"download\" : \"open\",\n onClick: downloadFile\n }\n ],\n [\n \"delete\",\n {\n id: `Delete-${ID}`,\n text: pConn.getLocalizedValue('Delete'),\n icon: \"trash\",\n onClick: deleteFile\n }\n ]\n ]);\n actions = [];\n actionsMap.forEach((action, actionKey) => {\n if (att.links[actionKey]) {\n actions.push(action);\n }\n });\n } else if (att.error) {\n actions = [\n {\n id: `Remove-${att.ID}`,\n text: pConn.getLocalizedValue('Remove'),\n icon: \"trash\",\n onClick: removeFile\n }\n ];\n }\n return {\n id: att.ID,\n visual: {\n icon: getIconForAttachment(this, att),\n progress: att.progress === 100 ? undefined: att.progress,\n },\n primary: {\n type: att.type,\n name: att.error ? att.fileName : att.name,\n icon: \"trash\",\n click: removeFile,\n },\n secondary: {\n text: att.meta,\n error: att.error\n },\n actions\n };\n };\n\n const onFileAdded = (event) => {\n const addedFile = event.target.files[0];\n setFile({\n props: {\n name: addedFile.name,\n icon: getIconFromFileType(addedFile.type),\n },\n inProgress: true\n });\n const arFiles$ = getFiles(event.target.files);\n const myFiles: any = Array.from(arFiles$);\n\n const onUploadProgress = () => {};\n\n const errorHandler = (isFetchCanceled) => {\n return (error) => {\n if (!isFetchCanceled(error)) {\n let uploadFailMsg = pConn.getLocalizedValue('Something went wrong');\n if (error.response && error.response.data && error.response.data.errorDetails) {\n uploadFailMsg = pConn.getLocalizedValue(error.response.data.errorDetails[0].localizedValue);\n }\n myFiles[0].meta = uploadFailMsg;\n myFiles[0].error = true;\n myFiles[0].fileName = pConn.getLocalizedValue('Unable to upload file');\n arFileList$ = myFiles.map((att) => {\n return getNewListUtilityItemProps({\n att,\n downloadFile: null,\n cancelFile: null,\n deleteFile: null,\n removeFile: null\n });\n });\n setFile((current) => {\n return {\n ...current,\n props: {\n ...current.props,\n arFileList$\n },\n inProgress: false,\n attachmentUploaded: true,\n showMenuIcon: false\n };\n });\n }\n throw error;\n };\n };\n\n PCore.getAttachmentUtils()\n .uploadAttachment(\n myFiles[0],\n onUploadProgress,\n errorHandler,\n pConn.getContextName()\n )\n .then((fileRes) => {\n let reqObj;\n if (PCoreVersion?.includes('8.7')) {\n reqObj = {\n type: \"File\",\n attachmentFieldName: valueRef,\n category: categoryName,\n ID: fileRes.ID\n };\n pConn.attachmentsInfo = reqObj;\n } else {\n reqObj = {\n type: \"File\",\n label: valueRef,\n category: categoryName,\n handle: fileRes.ID,\n ID: fileRes.clientFileID\n };\n const currentAttachmentList = getCurrentAttachmentsList( getAttachmentKey(PCoreVersion?.includes('8.23') ? valueRef : ''), pConn.getContextName()).filter(\n (f) => f.label !== valueRef\n );\n PCore.getStateUtils().updateState(\n pConn.getContextName(),\n getAttachmentKey(PCoreVersion?.includes('8.23') ? valueRef : ''),\n [...currentAttachmentList, reqObj],\n {\n pageReference: 'context_data',\n isArrayDeepMerge: false\n }\n );\n }\n const fieldName = pConn.getStateProps().value;\n const context = pConn.getContextName();\n\n PCore.getMessageManager().clearMessages({\n type: PCore.getConstants().MESSAGES.MESSAGES_TYPE_ERROR,\n property: fieldName,\n pageReference: pConn.getPageReference(),\n context\n });\n myFiles[0].meta = pConn.getLocalizedValue('Uploaded successfully');\n\n arFileList$ = myFiles.map((att) => {\n return getNewListUtilityItemProps({\n att,\n downloadFile: null,\n cancelFile: null,\n deleteFile: null,\n removeFile: null\n });\n });\n setFile((current) => {\n return {\n ...current,\n props: {\n ...current.props,\n arFileList$\n },\n inProgress: false,\n attachmentUploaded: true,\n showMenuIcon: false\n };\n });\n })\n\n .catch(() => {\n // just catching the rethrown error at uploadAttachment\n // to handle Unhandled rejections\n });\n };\n\n function _removeFileFromList(item: any, list) {\n const arFileList = file.props ? file.props.arFileList$ : list;\n const fileIndex = arFileList.findIndex(element => element?.id === item?.id);\n if (PCoreVersion?.includes('8.7')) {\n if (value) {\n pConn.attachmentsInfo = {\n type: \"File\",\n attachmentFieldName: valueRef,\n delete: true\n };\n }\n if (fileIndex > -1) { arFileList.splice(parseInt(fileIndex, 10), 1) };\n setFile((current) => {\n return {\n ...current,\n props: {\n ...current.props,\n arFileList\n },\n };\n });\n } else {\n const attachmentsList = [];\n const currentAttachmentList = getCurrentAttachmentsList( getAttachmentKey(PCoreVersion?.includes('8.23') ? valueRef : ''), pConn.getContextName()).filter(\n (f) => f.label !== valueRef\n );\n if (value && value.pxResults && +value.pyCount > 0) {\n const deletedFile = {\n type: \"File\",\n label: valueRef,\n delete: true,\n responseProps: {\n pzInsKey: arFileList[fileIndex].id\n },\n };\n // updating the redux store to help form-handler in passing the data to delete the file from server\n PCore.getStateUtils().updateState(\n pConn.getContextName(),\n getAttachmentKey(PCoreVersion?.includes('8.23') ? valueRef : ''),\n [...currentAttachmentList, deletedFile],\n {\n pageReference: 'context_data',\n isArrayDeepMerge: false\n }\n );\n } else {\n PCore.getStateUtils().updateState(\n pConn.getContextName(),\n getAttachmentKey(PCoreVersion?.includes('8.23') ? valueRef : ''),\n [...currentAttachmentList, ...attachmentsList],\n {\n pageReference: 'context_data',\n isArrayDeepMerge: false\n }\n );\n }\n if (fileIndex > -1) { arFileList.splice(parseInt(fileIndex, 10), 1) };\n setFile((current) => {\n return {\n ...current,\n props: {\n ...current.props,\n arFileList\n },\n };\n });\n }\n }\n\n useEffect(() => {\n if (value && value.pxResults && +value.pyCount > 0) {\n fileTemp = buildFilePropsFromResponse(value.pxResults[0]);\n\n if (fileTemp.responseProps) {\n if (!pConn.attachmentsInfo) {\n pConn.attachmentsInfo = {\n type: \"File\",\n attachmentFieldName: valueRef,\n category: categoryName\n };\n }\n\n if (fileTemp.responseProps.pzInsKey && !fileTemp.responseProps.pzInsKey.includes(\"temp\")) {\n\n fileTemp.props.type = fileTemp.responseProps.pyMimeFileExtension;\n fileTemp.props.mimeType = fileTemp.responseProps.pyMimeFileExtension;\n fileTemp.props.ID = fileTemp.responseProps.pzInsKey;\n // create the actions for the \"more\" menu on the attachment\n const arMenuList: Array<any> = [];\n let oMenu: any = {};\n\n oMenu.icon = \"download\";\n oMenu.text = pConn.getLocalizedValue('Download');\n oMenu.onClick = () => { _downloadFileFromList(value.pxResults[0])}\n arMenuList.push(oMenu);\n oMenu = {};\n oMenu.icon = \"trash\";\n oMenu.text = pConn.getLocalizedValue('Delete');\n oMenu.onClick = () => { _removeFileFromList(arFileList$[0], arFileList$)}\n arMenuList.push(oMenu);\n\n arFileList$.push(getNewListUtilityItemProps({\n att: fileTemp.props,\n downloadFile: null,\n cancelFile: null,\n deleteFile: null,\n removeFile: null\n }));\n arFileList$[0].actions = arMenuList;\n\n setFile((current) => {\n return {\n ...current,\n props: {\n ...current.props,\n arFileList$\n },\n inProgress: false,\n attachmentUploaded: true,\n showMenuIcon: true\n };\n });\n }\n\n if (fileTemp) {\n const currentAttachmentList = getCurrentAttachmentsList( getAttachmentKey(PCoreVersion?.includes('8.23') ? valueRef : ''), pConn.getContextName());\n const index = currentAttachmentList.findIndex(element => element.props.ID === fileTemp.props.ID);\n let tempFiles: any = [];\n if (index < 0) {\n tempFiles = [fileTemp];\n }\n PCore.getStateUtils().updateState(\n pConn.getContextName(),\n getAttachmentKey(PCoreVersion?.includes('8.23') ? valueRef : ''),\n [...currentAttachmentList, ...tempFiles],\n {\n pageReference: 'context_data',\n isArrayDeepMerge: false\n }\n );\n }\n }\n }\n PCore.getPubSubUtils().subscribe(\n PCore.getConstants().PUB_SUB_EVENTS.CASE_EVENTS.ASSIGNMENT_SUBMISSION,\n resetAttachmentStoredState,\n caseID\n );\n return () => {\n PCore.getPubSubUtils().unsubscribe(PCore.getConstants().PUB_SUB_EVENTS.CASE_EVENTS.ASSIGNMENT_SUBMISSION, caseID);\n };\n }, []);\n\n let content = (\n <div className={`${validatemessage === '' ? 'file-div' : 'file-div-error'}`}>\n {file.inProgress && (<div className=\"progress-div\"><CircularProgress /></div>)}\n <div hidden={true} id=\"attachment-ID\">{valueRef}</div>\n <label htmlFor={valueRef}>\n <input\n style={{ display: 'none' }}\n id={valueRef}\n name='upload-photo'\n type='file'\n required={required}\n onChange={onFileAdded}\n />\n <Button variant='outlined' color='primary' component=\"span\">\n Upload file\n </Button>\n </label>\n </div>\n );\n\n if (file && file.attachmentUploaded && file.props.arFileList$ && file.props.arFileList$.length > 0) {\n content = (\n <div>\n {file.showMenuIcon && (<SummaryList arItems$={file.props.arFileList$} menuIconOverrideAction$={_removeFileFromList}></SummaryList>)}\n {!file.showMenuIcon && (<SummaryList menuIconOverride$='trash' arItems$={file.props.arFileList$} menuIconOverrideAction$={_removeFileFromList}></SummaryList>)}\n </div>\n\n );\n }\n\n return (\n <div className='file-upload-container'>\n <span className={`label ${required ? 'file-label' : ''}`}>{label}</span>\n <section>{content}</section>\n {validatemessage !== \"\" ? <span className='file-error'>{validatemessage}</span> : ''}\n </div>\n );\n}\n"]}
@@ -29,9 +29,9 @@ export default function CaseHistory(props) {
29
29
  const thePConn = getPConnect();
30
30
  // let waitingForData = true;
31
31
  const displayedColumns = [
32
- { label: "Date", type: "DateTime", fieldName: "pxTimeCreated" },
33
- { label: "Description", type: "TextInput", fieldName: "pyMessageKey" },
34
- { label: "User", type: "TextInput", fieldName: "pyPerformer" }
32
+ { label: thePConn.getLocalizedValue('Date'), type: "DateTime", fieldName: "pxTimeCreated" },
33
+ { label: thePConn.getLocalizedValue('Description'), type: "TextInput", fieldName: "pyMessageKey" },
34
+ { label: thePConn.getLocalizedValue('Performed by'), type: "TextInput", fieldName: "pyPerformer" }
35
35
  ];
36
36
  const rowData = useRef([]);
37
37
  // eslint-disable-next-line no-unused-vars, @typescript-eslint/no-unused-vars
@@ -1 +1 @@
1
- {"version":3,"file":"CaseHistory.js","sourceRoot":"","sources":["../../../../src/components/widget/CaseHistory/CaseHistory.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAC3D,OAAO,SAAS,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,UAAU,EAAS,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAC3E,OAAO,KAAK,MAAM,yBAAyB,CAAC;AAC5C,OAAO,SAAS,MAAM,6BAA6B,CAAC;AACpD,OAAO,SAAS,MAAM,6BAA6B,CAAC;AACpD,OAAO,cAAc,MAAM,kCAAkC,CAAC;AAC9D,OAAO,SAAS,MAAM,6BAA6B,CAAC;AACpD,OAAO,QAAQ,MAAM,4BAA4B,CAAC;AAClD,OAAO,WAAW,MAAM,uBAAuB,CAAC;AAChD,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAK5C,MAAM,eAAe,GAAG,UAAU,CAAC,CAAC,KAAY,EAAE,EAAE,CAClD,YAAY,CAAC;IACX,IAAI,EAAE;QACJ,WAAW,EAAE,KAAK;QAClB,WAAW,EAAE,OAAO;QACpB,WAAW,EAAE,QAAQ;QACrB,eAAe,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ;QAC5C,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC;KAClE;IACD,IAAI,EAAE;QACJ,WAAW,EAAE,KAAK;QAClB,WAAW,EAAE,OAAO;QACpB,WAAW,EAAE,QAAQ;QACrB,gBAAgB;KACjB;CACF,CAAC,CACH,CAAC,SAAS,CAAC,CAAC;AAGb,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,KAAK;IACvC,MAAM,EAAE,WAAW,EAAE,GAAG,KAAK,CAAC;IAC9B,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;IAC/B,6BAA6B;IAE7B,MAAM,gBAAgB,GAAG;QACvB,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,eAAe,EAAE;QAC/D,EAAE,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,cAAc,EAAE;QACtE,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,aAAa,EAAE;KAC9D,CAAC;IAEH,MAAM,OAAO,GAAQ,MAAM,CAAC,EAAE,CAAC,CAAC;IAChC,6EAA6E;IAC7E,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,QAAQ,CAAU,IAAI,CAAC,CAAC;IAGpE,MAAM,MAAM,GAAG,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;IAC9E,MAAM,YAAY,GAAG,iBAAiB,CAAC;IACvC,MAAM,OAAO,GAAG,QAAQ,CAAC,cAAc,EAAE,CAAC;IAG1C,SAAS,cAAc,CAAC,IAAmB;QACzC,MAAM,UAAU,GAAkB,EAAE,CAAC;QAErC,IAAI,CAAC,OAAO,CAAC,CAAC,GAAQ,EAAE,QAAgB,EAAE,EAAE;YAC1C,0FAA0F;YAC1F,4BAA4B;YAC5B,MAAM,gBAAgB,GAAQ,EAAE,CAAC;YAEjC,gBAAgB,CAAC,OAAO,CAAC,CAAC,MAAc,EAAE,WAAW,EAAE,EAAE;gBACvD,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;gBAC/B,MAAM,YAAY,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC;gBACzC,MAAM,QAAQ,GAAG,CAAC,CAAC,OAAO,KAAK,MAAM,IAAI,OAAO,KAAK,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;gBACpJ,gBAAgB,CAAC,WAAW,CAAC,GAAG,QAAQ,CAAC;YAC3C,CAAC,CAAC,CAAC;YAEH,UAAU,CAAC,QAAQ,CAAC,GAAG,gBAAgB,CAAC;QAC1C,CAAC,CAAC,CAAA;QAEF,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,OAAO,CAAC,OAAO,CAAC,EAAE;YAC7C,kFAAkF;YAClF,OAAO,CAAC,OAAO,GAAG,UAAU,CAAC;SAC9B;IACH,CAAC;IAED,+DAA+D;IAC/D,SAAS,CAAE,GAAG,EAAE;QAEd,IAAI,sBAAsB,GAAG,IAAI,CAAC;QAElC,MAAM,WAAW,GAAG,KAAK,CAAC,eAAe,EAAE,CAAC,OAAO,CACjD,YAAY,EAAG,8CAA8C,MAAM,MAAM,EACzE,OAAO,CACN,CAAC;QAEJ,WAAW,CAAC,IAAI,CAAE,CAAC,WAAmB,EAAE,EAAE;YAExC,MAAM,gBAAgB,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC;YAElD,iDAAiD;YACjD,cAAc,CAAC,gBAAgB,CAAC,CAAC;YAEjC,wEAAwE;YACxE,iEAAiE;YACjE,IAAI,sBAAsB,EAAE;gBAC1B,iBAAiB,CAAC,KAAK,CAAC,CAAC;aAC1B;QAEH,CAAC,CAAC,CAAC;QAEH,OAAO,GAAG,EAAE;YACV,wEAAwE;YACxE,0EAA0E;YAC1E,qEAAqE;YACrE,uBAAuB;YACvB,yEAAyE;YACzE,iFAAiF;YACjF,sBAAsB,GAAG,KAAK,CAAC;QACjC,CAAC,CAAA;IAEH,CAAC,EAAE,EAAE,CAAC,CAAC;IAGP,SAAS,cAAc;QACrB,MAAM,SAAS,GAAG,yBAAyB,CAAC;QAE5C,MAAM,cAAc,GAAe,gBAAgB,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,KAAK,EAAE,EAAE;YAC3E,MAAM,UAAU,GAAG,GAAG,SAAS,IAAI,KAAK,EAAE,CAAC;YAC3C,OAAO,oBAAC,eAAe,IAAC,GAAG,EAAE,UAAU,IAAG,SAAS,CAAC,KAAK,CAAmB,CAAA;QAC9E,CAAC,CAAC,CAAA;QAEF,OAAO,oBAAC,QAAQ,IAAC,GAAG,EAAE,SAAS,IAAG,cAAc,CAAY,CAAC;IAC/D,CAAC;IAGD,SAAS,YAAY;QACnB,MAAM,WAAW,GAAe,EAAE,CAAC;QAEnC,sEAAsE;QACtE,8CAA8C;QAC9C,IAAI,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;YAC9B,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,OAAsB,EAAE,KAAK,EAAE,EAAE;gBACxD,yEAAyE;gBACzE,MAAM,MAAM,GAAG,eAAe,KAAK,EAAE,CAAC;gBACtC,WAAW,CAAC,IAAI,CAAE,oBAAC,QAAQ,IAAC,GAAG,EAAE,MAAM;oBACrC,oBAAC,eAAe,QAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAmB;oBACpE,oBAAC,eAAe,QAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAmB;oBACpE,oBAAC,eAAe,QAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAmB,CAC3D,CACV,CAAA;YACH,CAAC,CAAC,CAAC;SACJ;QAED,OAAO,WAAW,CAAC;IACrB,CAAC;IAED,OAAO,CACL,6BAAK,EAAE,EAAC,aAAa;QACnB,oBAAC,cAAc;YACb,oBAAC,KAAK;gBACJ,oBAAC,SAAS,QACP,cAAc,EAAE,CACP;gBACZ,oBAAC,SAAS,QACP,YAAY,EAAE,CACL,CACN,CACO,CACb,CACP,CAAA;AACH,CAAC;AAED,WAAW,CAAC,SAAS,GAAG;IACtB,WAAW,EAAE,SAAS,CAAC,IAAI,CAAC,UAAU;CACvC,CAAC","sourcesContent":["import React, { useState, useRef, useEffect } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { withStyles, Theme, createStyles } from '@material-ui/core/styles';\nimport Table from '@material-ui/core/Table';\nimport TableBody from '@material-ui/core/TableBody';\nimport TableCell from '@material-ui/core/TableCell';\nimport TableContainer from '@material-ui/core/TableContainer';\nimport TableHead from '@material-ui/core/TableHead';\nimport TableRow from '@material-ui/core/TableRow';\nimport isDeepEqual from 'fast-deep-equal/react';\nimport { Utils } from '../../helpers/utils';\n\ndeclare const PCore;\n\n\nconst StyledTableCell = withStyles((theme: Theme) =>\n createStyles({\n head: {\n borderWidth: \"1px\",\n borderStyle: \"solid\",\n borderColor: \"silver\",\n backgroundColor: theme.palette.text.disabled,\n color: theme.palette.getContrastText(theme.palette.text.disabled),\n },\n body: {\n borderWidth: \"1px\",\n borderStyle: \"solid\",\n borderColor: \"silver\",\n // fontSize: 14,\n },\n }),\n)(TableCell);\n\n\nexport default function CaseHistory(props) {\n const { getPConnect } = props;\n const thePConn = getPConnect();\n // let waitingForData = true;\n\n const displayedColumns = [\n { label: \"Date\", type: \"DateTime\", fieldName: \"pxTimeCreated\" },\n { label: \"Description\", type: \"TextInput\", fieldName: \"pyMessageKey\" },\n { label: \"User\", type: \"TextInput\", fieldName: \"pyPerformer\" }\n ];\n\n const rowData: any = useRef([]);\n // eslint-disable-next-line no-unused-vars, @typescript-eslint/no-unused-vars\n const [waitingForData, setWaitingForData] = useState<boolean>(true);\n\n\n const caseID = thePConn.getValue(PCore.getConstants().CASE_INFO.CASE_INFO_ID);\n const dataViewName = \"D_pyWorkHistory\";\n const context = thePConn.getContextName();\n\n\n function computeRowData(rows: Array<Object>): void {\n const theRowData: Array<Object> = [];\n\n rows.forEach((row: any, rowIndex: number) => {\n // Now, for each property in the index of row properties (displayedColumns), add an object\n // to a new array of values\n const rowDisplayValues: any = [];\n\n displayedColumns.forEach((column: Object, rowValIndex) => {\n const theType = column[\"type\"];\n const theFieldName = column[\"fieldName\"];\n const theValue = ((theType === \"Date\" || theType === \"DateTime\")) ? Utils.generateDateTime(row[theFieldName], \"DateTime-Short\") : row[theFieldName];\n rowDisplayValues[rowValIndex] = theValue;\n });\n\n theRowData[rowIndex] = rowDisplayValues;\n })\n\n if (!isDeepEqual(theRowData, rowData.current)) {\n // Only update rowData.current when it actually changes (to prevent infinite loop)\n rowData.current = theRowData;\n }\n }\n\n // Get the case history data when component mounted/initialized\n useEffect( () => {\n\n let bCallSetWaitingForData = true;\n\n const historyData = PCore.getDataApiUtils().getData(\n dataViewName, `{\"dataViewParameters\":[{\"CaseInstanceKey\":\"${caseID}\"}]}`,\n context\n );\n\n historyData.then( (historyJSON: Object) => {\n\n const tableDataResults = historyJSON[\"data\"].data;\n\n // compute the rowData using the tableDataResults\n computeRowData(tableDataResults);\n\n // At this point, if we have data ready to render and haven't been asked\n // to NOT call setWaitingForData, we can stop progress indicator\n if (bCallSetWaitingForData) {\n setWaitingForData(false);\n }\n\n });\n\n return () => {\n // Inspired by https://juliangaramendy.dev/blog/use-promise-subscription\n // The useEffect closure lets us have access to the bCallSetWaitingForData\n // variable inside the useEffect and inside the \"then\" clause of the\n // historyData promise\n // So, if this cleanup code gets run before the promise .then is called,\n // we can avoid calling the useState setter which would otherwise show a warning\n bCallSetWaitingForData = false;\n }\n\n }, []);\n\n\n function getTableHeader() {\n const theRowKey = \"CaseHistory.TableHeader\";\n\n const theHeaderCells: Array<any> = displayedColumns.map((headerCol, index) => {\n const theCellKey = `${theRowKey}.${index}`;\n return <StyledTableCell key={theCellKey}>{headerCol.label}</StyledTableCell>\n })\n\n return <TableRow key={theRowKey}>{theHeaderCells}</TableRow>;\n }\n\n\n function getTableData() {\n const theDataRows: Array<any> = [];\n\n // Note: using rowData.current since we're using useRef as a mutatable\n // value that's only updated when it changes.\n if (rowData.current.length > 0) {\n rowData.current.forEach((dataRow: Array<Object>, index) => {\n // using dataRow[0]-dataRow[1] as the array key since it's a unique value\n const theKey = `CaseHistory-${index}`;\n theDataRows.push( <TableRow key={theKey}>\n <StyledTableCell>{dataRow[0] ? dataRow[0] : \"---\"}</StyledTableCell>\n <StyledTableCell>{dataRow[1] ? dataRow[1] : \"---\"}</StyledTableCell>\n <StyledTableCell>{dataRow[2] ? dataRow[2] : \"---\"}</StyledTableCell>\n </TableRow>\n )\n });\n }\n\n return theDataRows;\n }\n\n return (\n <div id=\"CaseHistory\">\n <TableContainer>\n <Table>\n <TableHead>\n {getTableHeader()}\n </TableHead>\n <TableBody>\n {getTableData()}\n </TableBody>\n </Table>\n </TableContainer>\n </div>\n )\n}\n\nCaseHistory.propTypes = {\n getPConnect: PropTypes.func.isRequired\n};\n"]}
1
+ {"version":3,"file":"CaseHistory.js","sourceRoot":"","sources":["../../../../src/components/widget/CaseHistory/CaseHistory.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAC3D,OAAO,SAAS,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,UAAU,EAAS,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAC3E,OAAO,KAAK,MAAM,yBAAyB,CAAC;AAC5C,OAAO,SAAS,MAAM,6BAA6B,CAAC;AACpD,OAAO,SAAS,MAAM,6BAA6B,CAAC;AACpD,OAAO,cAAc,MAAM,kCAAkC,CAAC;AAC9D,OAAO,SAAS,MAAM,6BAA6B,CAAC;AACpD,OAAO,QAAQ,MAAM,4BAA4B,CAAC;AAClD,OAAO,WAAW,MAAM,uBAAuB,CAAC;AAChD,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAK5C,MAAM,eAAe,GAAG,UAAU,CAAC,CAAC,KAAY,EAAE,EAAE,CAClD,YAAY,CAAC;IACX,IAAI,EAAE;QACJ,WAAW,EAAE,KAAK;QAClB,WAAW,EAAE,OAAO;QACpB,WAAW,EAAE,QAAQ;QACrB,eAAe,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ;QAC5C,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC;KAClE;IACD,IAAI,EAAE;QACJ,WAAW,EAAE,KAAK;QAClB,WAAW,EAAE,OAAO;QACpB,WAAW,EAAE,QAAQ;QACrB,gBAAgB;KACjB;CACF,CAAC,CACH,CAAC,SAAS,CAAC,CAAC;AAGb,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,KAAK;IACvC,MAAM,EAAE,WAAW,EAAE,GAAG,KAAK,CAAC;IAC9B,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;IAC/B,6BAA6B;IAE7B,MAAM,gBAAgB,GAAG;QACvB,EAAE,KAAK,EAAE,QAAQ,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,eAAe,EAAE;QAC3F,EAAE,KAAK,EAAE,QAAQ,CAAC,iBAAiB,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,cAAc,EAAE;QAClG,EAAE,KAAK,EAAE,QAAQ,CAAC,iBAAiB,CAAC,cAAc,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,aAAa,EAAE;KAClG,CAAC;IAEH,MAAM,OAAO,GAAQ,MAAM,CAAC,EAAE,CAAC,CAAC;IAChC,6EAA6E;IAC7E,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,QAAQ,CAAU,IAAI,CAAC,CAAC;IAGpE,MAAM,MAAM,GAAG,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;IAC9E,MAAM,YAAY,GAAG,iBAAiB,CAAC;IACvC,MAAM,OAAO,GAAG,QAAQ,CAAC,cAAc,EAAE,CAAC;IAG1C,SAAS,cAAc,CAAC,IAAmB;QACzC,MAAM,UAAU,GAAkB,EAAE,CAAC;QAErC,IAAI,CAAC,OAAO,CAAC,CAAC,GAAQ,EAAE,QAAgB,EAAE,EAAE;YAC1C,0FAA0F;YAC1F,4BAA4B;YAC5B,MAAM,gBAAgB,GAAQ,EAAE,CAAC;YAEjC,gBAAgB,CAAC,OAAO,CAAC,CAAC,MAAc,EAAE,WAAW,EAAE,EAAE;gBACvD,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;gBAC/B,MAAM,YAAY,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC;gBACzC,MAAM,QAAQ,GAAG,CAAC,CAAC,OAAO,KAAK,MAAM,IAAI,OAAO,KAAK,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;gBACpJ,gBAAgB,CAAC,WAAW,CAAC,GAAG,QAAQ,CAAC;YAC3C,CAAC,CAAC,CAAC;YAEH,UAAU,CAAC,QAAQ,CAAC,GAAG,gBAAgB,CAAC;QAC1C,CAAC,CAAC,CAAA;QAEF,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,OAAO,CAAC,OAAO,CAAC,EAAE;YAC7C,kFAAkF;YAClF,OAAO,CAAC,OAAO,GAAG,UAAU,CAAC;SAC9B;IACH,CAAC;IAED,+DAA+D;IAC/D,SAAS,CAAE,GAAG,EAAE;QAEd,IAAI,sBAAsB,GAAG,IAAI,CAAC;QAElC,MAAM,WAAW,GAAG,KAAK,CAAC,eAAe,EAAE,CAAC,OAAO,CACjD,YAAY,EAAG,8CAA8C,MAAM,MAAM,EACzE,OAAO,CACN,CAAC;QAEJ,WAAW,CAAC,IAAI,CAAE,CAAC,WAAmB,EAAE,EAAE;YAExC,MAAM,gBAAgB,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC;YAElD,iDAAiD;YACjD,cAAc,CAAC,gBAAgB,CAAC,CAAC;YAEjC,wEAAwE;YACxE,iEAAiE;YACjE,IAAI,sBAAsB,EAAE;gBAC1B,iBAAiB,CAAC,KAAK,CAAC,CAAC;aAC1B;QAEH,CAAC,CAAC,CAAC;QAEH,OAAO,GAAG,EAAE;YACV,wEAAwE;YACxE,0EAA0E;YAC1E,qEAAqE;YACrE,uBAAuB;YACvB,yEAAyE;YACzE,iFAAiF;YACjF,sBAAsB,GAAG,KAAK,CAAC;QACjC,CAAC,CAAA;IAEH,CAAC,EAAE,EAAE,CAAC,CAAC;IAGP,SAAS,cAAc;QACrB,MAAM,SAAS,GAAG,yBAAyB,CAAC;QAE5C,MAAM,cAAc,GAAe,gBAAgB,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,KAAK,EAAE,EAAE;YAC3E,MAAM,UAAU,GAAG,GAAG,SAAS,IAAI,KAAK,EAAE,CAAC;YAC3C,OAAO,oBAAC,eAAe,IAAC,GAAG,EAAE,UAAU,IAAG,SAAS,CAAC,KAAK,CAAmB,CAAA;QAC9E,CAAC,CAAC,CAAA;QAEF,OAAO,oBAAC,QAAQ,IAAC,GAAG,EAAE,SAAS,IAAG,cAAc,CAAY,CAAC;IAC/D,CAAC;IAGD,SAAS,YAAY;QACnB,MAAM,WAAW,GAAe,EAAE,CAAC;QAEnC,sEAAsE;QACtE,8CAA8C;QAC9C,IAAI,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;YAC9B,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,OAAsB,EAAE,KAAK,EAAE,EAAE;gBACxD,yEAAyE;gBACzE,MAAM,MAAM,GAAG,eAAe,KAAK,EAAE,CAAC;gBACtC,WAAW,CAAC,IAAI,CAAE,oBAAC,QAAQ,IAAC,GAAG,EAAE,MAAM;oBACrC,oBAAC,eAAe,QAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAmB;oBACpE,oBAAC,eAAe,QAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAmB;oBACpE,oBAAC,eAAe,QAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAmB,CAC3D,CACV,CAAA;YACH,CAAC,CAAC,CAAC;SACJ;QAED,OAAO,WAAW,CAAC;IACrB,CAAC;IAED,OAAO,CACL,6BAAK,EAAE,EAAC,aAAa;QACnB,oBAAC,cAAc;YACb,oBAAC,KAAK;gBACJ,oBAAC,SAAS,QACP,cAAc,EAAE,CACP;gBACZ,oBAAC,SAAS,QACP,YAAY,EAAE,CACL,CACN,CACO,CACb,CACP,CAAA;AACH,CAAC;AAED,WAAW,CAAC,SAAS,GAAG;IACtB,WAAW,EAAE,SAAS,CAAC,IAAI,CAAC,UAAU;CACvC,CAAC","sourcesContent":["import React, { useState, useRef, useEffect } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { withStyles, Theme, createStyles } from '@material-ui/core/styles';\nimport Table from '@material-ui/core/Table';\nimport TableBody from '@material-ui/core/TableBody';\nimport TableCell from '@material-ui/core/TableCell';\nimport TableContainer from '@material-ui/core/TableContainer';\nimport TableHead from '@material-ui/core/TableHead';\nimport TableRow from '@material-ui/core/TableRow';\nimport isDeepEqual from 'fast-deep-equal/react';\nimport { Utils } from '../../helpers/utils';\n\n// Remove this and use \"real\" PCore type once .d.ts is fixed (currently shows 2 errors)\ndeclare const PCore: any;\n\nconst StyledTableCell = withStyles((theme: Theme) =>\n createStyles({\n head: {\n borderWidth: \"1px\",\n borderStyle: \"solid\",\n borderColor: \"silver\",\n backgroundColor: theme.palette.text.disabled,\n color: theme.palette.getContrastText(theme.palette.text.disabled),\n },\n body: {\n borderWidth: \"1px\",\n borderStyle: \"solid\",\n borderColor: \"silver\",\n // fontSize: 14,\n },\n }),\n)(TableCell);\n\n\nexport default function CaseHistory(props) {\n const { getPConnect } = props;\n const thePConn = getPConnect();\n // let waitingForData = true;\n\n const displayedColumns = [\n { label: thePConn.getLocalizedValue('Date'), type: \"DateTime\", fieldName: \"pxTimeCreated\" },\n { label: thePConn.getLocalizedValue('Description'), type: \"TextInput\", fieldName: \"pyMessageKey\" },\n { label: thePConn.getLocalizedValue('Performed by'), type: \"TextInput\", fieldName: \"pyPerformer\" }\n ];\n\n const rowData: any = useRef([]);\n // eslint-disable-next-line no-unused-vars, @typescript-eslint/no-unused-vars\n const [waitingForData, setWaitingForData] = useState<boolean>(true);\n\n\n const caseID = thePConn.getValue(PCore.getConstants().CASE_INFO.CASE_INFO_ID);\n const dataViewName = \"D_pyWorkHistory\";\n const context = thePConn.getContextName();\n\n\n function computeRowData(rows: Array<Object>): void {\n const theRowData: Array<Object> = [];\n\n rows.forEach((row: any, rowIndex: number) => {\n // Now, for each property in the index of row properties (displayedColumns), add an object\n // to a new array of values\n const rowDisplayValues: any = [];\n\n displayedColumns.forEach((column: Object, rowValIndex) => {\n const theType = column[\"type\"];\n const theFieldName = column[\"fieldName\"];\n const theValue = ((theType === \"Date\" || theType === \"DateTime\")) ? Utils.generateDateTime(row[theFieldName], \"DateTime-Short\") : row[theFieldName];\n rowDisplayValues[rowValIndex] = theValue;\n });\n\n theRowData[rowIndex] = rowDisplayValues;\n })\n\n if (!isDeepEqual(theRowData, rowData.current)) {\n // Only update rowData.current when it actually changes (to prevent infinite loop)\n rowData.current = theRowData;\n }\n }\n\n // Get the case history data when component mounted/initialized\n useEffect( () => {\n\n let bCallSetWaitingForData = true;\n\n const historyData = PCore.getDataApiUtils().getData(\n dataViewName, `{\"dataViewParameters\":[{\"CaseInstanceKey\":\"${caseID}\"}]}`,\n context\n );\n\n historyData.then( (historyJSON: Object) => {\n\n const tableDataResults = historyJSON[\"data\"].data;\n\n // compute the rowData using the tableDataResults\n computeRowData(tableDataResults);\n\n // At this point, if we have data ready to render and haven't been asked\n // to NOT call setWaitingForData, we can stop progress indicator\n if (bCallSetWaitingForData) {\n setWaitingForData(false);\n }\n\n });\n\n return () => {\n // Inspired by https://juliangaramendy.dev/blog/use-promise-subscription\n // The useEffect closure lets us have access to the bCallSetWaitingForData\n // variable inside the useEffect and inside the \"then\" clause of the\n // historyData promise\n // So, if this cleanup code gets run before the promise .then is called,\n // we can avoid calling the useState setter which would otherwise show a warning\n bCallSetWaitingForData = false;\n }\n\n }, []);\n\n\n function getTableHeader() {\n const theRowKey = \"CaseHistory.TableHeader\";\n\n const theHeaderCells: Array<any> = displayedColumns.map((headerCol, index) => {\n const theCellKey = `${theRowKey}.${index}`;\n return <StyledTableCell key={theCellKey}>{headerCol.label}</StyledTableCell>\n })\n\n return <TableRow key={theRowKey}>{theHeaderCells}</TableRow>;\n }\n\n\n function getTableData() {\n const theDataRows: Array<any> = [];\n\n // Note: using rowData.current since we're using useRef as a mutatable\n // value that's only updated when it changes.\n if (rowData.current.length > 0) {\n rowData.current.forEach((dataRow: Array<Object>, index) => {\n // using dataRow[0]-dataRow[1] as the array key since it's a unique value\n const theKey = `CaseHistory-${index}`;\n theDataRows.push( <TableRow key={theKey}>\n <StyledTableCell>{dataRow[0] ? dataRow[0] : \"---\"}</StyledTableCell>\n <StyledTableCell>{dataRow[1] ? dataRow[1] : \"---\"}</StyledTableCell>\n <StyledTableCell>{dataRow[2] ? dataRow[2] : \"---\"}</StyledTableCell>\n </TableRow>\n )\n });\n }\n\n return theDataRows;\n }\n\n return (\n <div id=\"CaseHistory\">\n <TableContainer>\n <Table>\n <TableHead>\n {getTableHeader()}\n </TableHead>\n <TableBody>\n {getTableData()}\n </TableBody>\n </Table>\n </TableContainer>\n </div>\n )\n}\n\nCaseHistory.propTypes = {\n getPConnect: PropTypes.func.isRequired\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"FileUtility.d.ts","sourceRoot":"","sources":["../../../../../src/components/widget/FileUtility/FileUtility/FileUtility.tsx"],"names":[],"mappings":";AAMA,OAAO,mBAAmB,CAAC;AAS3B,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,KAAK,KAAA,eAuiBxC"}
1
+ {"version":3,"file":"FileUtility.d.ts","sourceRoot":"","sources":["../../../../../src/components/widget/FileUtility/FileUtility/FileUtility.tsx"],"names":[],"mappings":";AAMA,OAAO,mBAAmB,CAAC;AAW3B,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,KAAK,KAAA,eAsiBxC"}
@@ -19,24 +19,24 @@ export default function FileUtility(props) {
19
19
  count: 0
20
20
  };
21
21
  const [list, setList] = useState(listTemp);
22
- const headerSvgIcon$ = Utils.getImageSrc('paper-clip', PCore.getAssetLoader().getStaticServerUrl());
23
- const closeSvgIcon = Utils.getImageSrc("times", PCore.getAssetLoader().getStaticServerUrl());
22
+ const headerSvgIcon$ = Utils.getImageSrc('paper-clip', Utils.getSDKStaticConentUrl());
23
+ const closeSvgIcon = Utils.getImageSrc("times", Utils.getSDKStaticConentUrl());
24
24
  const configProps = thePConn.resolveConfigProps(thePConn.getConfigProps());
25
25
  const header = configProps.label;
26
26
  const fileTemp = {
27
27
  showfileModal: false,
28
28
  fileList: [],
29
29
  attachedFiles: [],
30
- fileMainButtons: [{ actionID: "attach", jsAction: "attachFiles", name: "Attach files" }],
31
- fileSecondaryButtons: [{ actionID: "cancel", jsAction: "cancel", name: "Cancel" }]
30
+ fileMainButtons: [{ actionID: "attach", jsAction: "attachFiles", name: thePConn.getLocalizedValue('Attach files') }],
31
+ fileSecondaryButtons: [{ actionID: "cancel", jsAction: "cancel", name: thePConn.getLocalizedValue('Cancel') }]
32
32
  };
33
33
  const [fileData, setFileData] = useState(fileTemp);
34
34
  const linkTemp = {
35
35
  showLinkModal: false,
36
36
  linksList: [],
37
37
  attachedLinks: [],
38
- linkMainButtons: [{ actionID: "attach", jsAction: "attachLinks", name: "Attach links" }],
39
- linkSecondaryButtons: [{ actionID: "cancel", jsAction: "cancel", name: "Cancel" }]
38
+ linkMainButtons: [{ actionID: "attach", jsAction: "attachLinks", name: thePConn.getLocalizedValue('Attach links') }],
39
+ linkSecondaryButtons: [{ actionID: "cancel", jsAction: "cancel", name: thePConn.getLocalizedValue('Cancel') }]
40
40
  };
41
41
  const [linkData, setLinkData] = useState(linkTemp);
42
42
  const [anchorEl, setAnchorEl] = useState(null);
@@ -64,7 +64,7 @@ export default function FileUtility(props) {
64
64
  actions = [
65
65
  {
66
66
  id: `Cancel-${att.ID}`,
67
- text: "Cancel",
67
+ text: thePConn.getLocalizedValue('Cancel'),
68
68
  icon: "times",
69
69
  onClick: cancelFile
70
70
  }
@@ -78,7 +78,7 @@ export default function FileUtility(props) {
78
78
  "download",
79
79
  {
80
80
  id: `download-${ID}`,
81
- text: isFile ? "Download" : "Open",
81
+ text: isFile ? thePConn.getLocalizedValue('Download') : thePConn.getLocalizedValue('Open'),
82
82
  icon: isFile ? "download" : "open",
83
83
  onClick: downloadFile
84
84
  }
@@ -87,7 +87,7 @@ export default function FileUtility(props) {
87
87
  "delete",
88
88
  {
89
89
  id: `Delete-${ID}`,
90
- text: "Delete",
90
+ text: thePConn.getLocalizedValue('Delete'),
91
91
  icon: "trash",
92
92
  onClick: deleteFile
93
93
  }
@@ -104,7 +104,7 @@ export default function FileUtility(props) {
104
104
  actions = [
105
105
  {
106
106
  id: `Remove-${att.ID}`,
107
- text: "Remove",
107
+ text: thePConn.getLocalizedValue('Remove'),
108
108
  icon: "trash",
109
109
  onClick: removeFile
110
110
  }
@@ -411,27 +411,27 @@ export default function FileUtility(props) {
411
411
  React.createElement(IconButton, { id: "long-button", "aria-controls": open ? 'simple-menu' : undefined, "aria-expanded": open ? 'true' : undefined, "aria-haspopup": "true", onClick: handleClick },
412
412
  React.createElement(MoreVertIcon, null)),
413
413
  React.createElement(Menu, { style: { marginTop: '3rem' }, id: "simple-menu", anchorEl: anchorEl, keepMounted: true, open: Boolean(anchorEl), onClose: handleClose },
414
- React.createElement(MenuItem, { style: { fontSize: '14px' }, onClick: onAddFilesClick }, "Add Files"),
415
- React.createElement(MenuItem, { style: { fontSize: '14px' }, onClick: onAddLinksClick }, "Add Links")))),
414
+ React.createElement(MenuItem, { style: { fontSize: '14px' }, onClick: onAddFilesClick }, thePConn.getLocalizedValue('Add files')),
415
+ React.createElement(MenuItem, { style: { fontSize: '14px' }, onClick: onAddLinksClick }, thePConn.getLocalizedValue('Add links'))))),
416
416
  list.data.length > 0 && (React.createElement("div", { style: { marginTop: '1rem' } },
417
417
  React.createElement(SummaryList, { "arItems$": list.data }))),
418
418
  list.count > 3 && (React.createElement("div", { className: "psdk-utility-view-all" },
419
419
  React.createElement(Button, { style: { textTransform: 'none' }, color: "primary", onClick: () => setViewAll(true) }, "View all"))),
420
420
  fileData.showfileModal && (React.createElement("div", { className: "psdk-dialog-background" },
421
421
  React.createElement("div", { className: "psdk-modal-file-top" },
422
- React.createElement("h3", null, "Add local files"),
422
+ React.createElement("h3", null, thePConn.getLocalizedValue('Add local files')),
423
423
  React.createElement("div", { className: "psdk-modal-body" },
424
424
  React.createElement("div", { className: "psdk-modal-file-selector" },
425
425
  React.createElement("label", { htmlFor: 'upload-files' },
426
426
  React.createElement("input", { style: { display: 'none' }, id: 'upload-files', name: 'upload-files', type: 'file', multiple: true, onChange: uploadMyFiles }),
427
- React.createElement(Button, { variant: 'outlined', color: 'primary', component: "span" }, "Upload file(s)"))),
427
+ React.createElement(Button, { variant: 'outlined', color: 'primary', component: "span" }, thePConn.getLocalizedValue('Attach files')))),
428
428
  fileData.fileList.length > 0 && (React.createElement("div", { style: { marginTop: '1rem' } },
429
429
  React.createElement(SummaryList, { "menuIconOverride$": 'trash', "arItems$": fileData.fileList, "menuIconOverrideAction$": removeFileFromList }))),
430
430
  fileData.fileList.length === 0 && (React.createElement("div", null)),
431
431
  React.createElement(ActionButtonsForFileUtil, { arMainButtons: fileData.fileMainButtons, arSecondaryButtons: fileData.fileSecondaryButtons, primaryAction: onAttachFiles, secondaryAction: closeFilePopup }))))),
432
432
  linkData.showLinkModal && (React.createElement("div", { className: "psdk-dialog-background" },
433
433
  React.createElement("div", { className: "psdk-modal-file-top" },
434
- React.createElement("h3", null, "Add links"),
434
+ React.createElement("h3", null, thePConn.getLocalizedValue('Add links')),
435
435
  React.createElement("div", { className: "psdk-modal-body" },
436
436
  React.createElement("div", { className: "psdk-modal-links-row" },
437
437
  React.createElement("div", { className: "psdk-links-two-column" },
@@ -440,14 +440,14 @@ export default function FileUtility(props) {
440
440
  React.createElement("div", { className: "psdk-modal-link-data" },
441
441
  React.createElement(TextField, { fullWidth: true, variant: "outlined", label: "URL", size: "small", required: required, value: link.url, onChange: fieldurlOnChange }))),
442
442
  React.createElement("div", { className: "psdk-modal-link-add" },
443
- React.createElement(Button, { className: "psdk-add-link-action", color: "primary", variant: "contained", component: "span", onClick: addLink, disabled: link.disable }, "Add Link"))),
443
+ React.createElement(Button, { className: "psdk-add-link-action", color: "primary", variant: "contained", component: "span", onClick: addLink, disabled: link.disable }, thePConn.getLocalizedValue('Add link')))),
444
444
  linkData.linksList.length > 0 && (React.createElement("div", { style: { marginTop: '1rem' } },
445
445
  React.createElement(SummaryList, { "menuIconOverride$": 'trash', "arItems$": linkData.linksList, "menuIconOverrideAction$": removeLinksFromList }))),
446
446
  React.createElement(ActionButtonsForFileUtil, { arMainButtons: linkData.linkMainButtons, arSecondaryButtons: linkData.linkSecondaryButtons, primaryAction: onAttachLinks, secondaryAction: closeAddLinksPopup }))))),
447
447
  showViewAllModal && (React.createElement("div", { className: "psdk-dialog-background" },
448
448
  React.createElement("div", { className: "psdk-modal-file-top" },
449
449
  React.createElement("div", { className: "psdk-view-all-header" },
450
- React.createElement("h3", null, "Attachments"),
450
+ React.createElement("h3", null, thePConn.getLocalizedValue('Attachments')),
451
451
  React.createElement("button", { type: "button", className: "psdk-close-button", onClick: () => setViewAll(false) },
452
452
  React.createElement("img", { className: "psdk-utility-card-actions-svg-icon", src: closeSvgIcon }))),
453
453
  React.createElement("div", { className: "psdk-view-all-body" },
@@ -1 +1 @@
1
- {"version":3,"file":"FileUtility.js","sourceRoot":"","sources":["../../../../../src/components/widget/FileUtility/FileUtility/FileUtility.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { useEffect, useState } from \"react\";\nimport TextField from '@material-ui/core/TextField';\nimport { Utils } from '../../../helpers/utils';\nimport download from \"downloadjs\";\nimport SummaryList from '../../SummaryList';\nimport ActionButtonsForFileUtil from '../ActionButtonsForFileUtil';\nimport './FileUtility.css';\nimport { IconButton, Menu, MenuItem } from '@material-ui/core';\nimport MoreVertIcon from '@material-ui/icons/MoreVert';\nimport { Button } from '@material-ui/core';\nimport { validateMaxSize } from '../../../helpers/attachmentHelpers';\nimport { CircularProgress } from \"@material-ui/core\";\n\ndeclare const PCore;\n\nexport default function FileUtility(props) {\n const { getPConnect } = props;\n const thePConn = getPConnect();\n const required = true;\n const listTemp = {\n data: [],\n count: 0\n };\n const [list, setList] = useState(listTemp);\n const headerSvgIcon$ = Utils.getImageSrc('paper-clip', PCore.getAssetLoader().getStaticServerUrl());\n const closeSvgIcon = Utils.getImageSrc(\"times\", PCore.getAssetLoader().getStaticServerUrl());\n const configProps: any = thePConn.resolveConfigProps(thePConn.getConfigProps());\n\n const header = configProps.label;\n const fileTemp = {\n showfileModal: false,\n fileList: [],\n attachedFiles: [],\n fileMainButtons: [{ actionID: \"attach\", jsAction: \"attachFiles\", name: \"Attach files\"}],\n fileSecondaryButtons: [{ actionID: \"cancel\", jsAction: \"cancel\", name: \"Cancel\"}]\n };\n const [fileData, setFileData] = useState(fileTemp);\n const linkTemp = {\n showLinkModal: false,\n linksList: [],\n attachedLinks: [],\n linkMainButtons: [{ actionID: \"attach\", jsAction: \"attachLinks\", name: \"Attach links\"}],\n linkSecondaryButtons: [{ actionID: \"cancel\", jsAction: \"cancel\", name: \"Cancel\"}]\n };\n const [linkData, setLinkData] = useState(linkTemp);\n const [anchorEl, setAnchorEl] = useState(null);\n const open = Boolean(anchorEl);\n const [link, setLink] = useState({title: '', url: '', disable: true});\n const [inProgress, setProgress] = useState(false);\n const [showViewAllModal, setViewAll] = useState(false);\n const [vaItems, setFullAttachments] = useState([]);\n\n function addAttachments(attsFromResp: Array<any> = []) {\n attsFromResp = attsFromResp.map((respAtt) => {\n const updatedAtt = {\n ...respAtt,\n meta: `${respAtt.category} . ${Utils.generateDateTime(respAtt.createTime, \"DateTime-Since\")}, ${\n respAtt.createdBy\n }`\n };\n if (updatedAtt.type === \"FILE\") {\n updatedAtt.nameWithExt = updatedAtt.fileName;\n }\n return updatedAtt;\n });\n return attsFromResp;\n }\n\n function getListUtilityItemProps({\n att,\n cancelFile,\n downloadFile,\n deleteFile,\n removeFile\n }) {\n let actions;\n\n\n if (att.progress && att.progress !== 100) {\n actions = [\n {\n id: `Cancel-${att.ID}`,\n text: \"Cancel\",\n icon: \"times\",\n onClick: cancelFile\n }\n ];\n } else if (att.links) {\n const isFile = att.type === \"FILE\";\n const ID = att.ID.replace(/\\s/gi, \"\");\n const actionsMap = new Map([\n [\n \"download\",\n {\n id: `download-${ID}`,\n text: isFile ? \"Download\" : \"Open\",\n icon: isFile ? \"download\" : \"open\",\n onClick: downloadFile\n }\n ],\n [\n \"delete\",\n {\n id: `Delete-${ID}`,\n text: \"Delete\",\n icon: \"trash\",\n onClick: deleteFile\n }\n ]\n ]);\n actions = [];\n actionsMap.forEach((action, actionKey) => {\n if (att.links[actionKey]) {\n actions.push(action);\n }\n });\n } else if (att.error) {\n actions = [\n {\n id: `Remove-${att.ID}`,\n text: \"Remove\",\n icon: \"trash\",\n onClick: removeFile\n }\n ];\n }\n\n return {\n id: att.ID,\n visual: {\n icon: Utils.getIconForAttachment(att),\n progress: att.progress === 100 ? undefined: att.progress,\n },\n primary: {\n type: att.type,\n name: att.name,\n icon: \"open\",\n click: downloadFile,\n },\n secondary: {\n text: att.meta\n },\n actions\n };\n }\n\n function fileDownload(data, fileName, ext) {\n const file = ext ? `${fileName}.${ext}` : fileName;\n download(atob(data), file);\n };\n\n function downloadAttachedFile(att: any) {\n const attachUtils = PCore.getAttachmentUtils();\n const {ID, name, extension, type} = att;\n const context = thePConn.getContextName();\n\n attachUtils\n .downloadAttachment(ID, context)\n .then((content) => {\n if (type === \"FILE\") {\n fileDownload(content.data, name, extension);\n } else if (type === \"URL\") {\n let { data } = content;\n if (!/^(http|https):\\/\\//.test(data)) {\n data = `//${data}`;\n }\n window.open(content.data, \"_blank\");\n }\n })\n .catch();\n }\n\n function deleteAttachedFile(att: any) {\n const attachUtils = PCore.getAttachmentUtils();\n const {ID} = att;\n const context = thePConn.getContextName();\n\n attachUtils.deleteAttachment(ID, context)\n .then(() => {\n // eslint-disable-next-line @typescript-eslint/no-use-before-define\n getAttachments();\n })\n .catch();\n }\n\n const getAttachments = () => {\n\n const attachmentUtils = PCore.getAttachmentUtils();\n const caseID = thePConn.getValue(PCore.getConstants().CASE_INFO.CASE_INFO_ID);\n\n if (caseID && caseID !== \"\") {\n const attPromise = attachmentUtils.getCaseAttachments(caseID, thePConn.getContextName());\n\n attPromise\n .then( (resp) => {\n const arFullListAttachments = addAttachments(resp);\n const attachmentsCount = arFullListAttachments.length;\n const arItems: any = arFullListAttachments.slice(0, 3).map((att) => {\n return getListUtilityItemProps({\n att,\n downloadFile: !att.progress ? () => downloadAttachedFile(att) : null,\n cancelFile: null,\n deleteFile: !att.progress ? () => deleteAttachedFile(att) : null,\n removeFile: null\n });\n });\n const viewAllarItems: any = arFullListAttachments.map((att) => {\n return getListUtilityItemProps({\n att,\n downloadFile: !att.progress ? () => downloadAttachedFile(att) : null,\n cancelFile: null,\n deleteFile: !att.progress ? () => deleteAttachedFile(att) : null,\n removeFile: null\n });\n });\n setProgress(false);\n setList((current) => {\n return {...current, count: attachmentsCount, data: arItems}\n });\n setFullAttachments(viewAllarItems);\n });\n }\n }\n\n useEffect(() => {\n getAttachments();\n }, []);\n\n\n useEffect(() => {\n PCore.getPubSubUtils().subscribe(\n PCore.getEvents().getCaseEvent().CASE_ATTACHMENTS_UPDATED_FROM_CASEVIEW,\n getAttachments,\n \"caseAttachmentsUpdateFromCaseview\"\n );\n\n return () => {\n PCore.getPubSubUtils().unsubscribe(\n PCore.getEvents().getCaseEvent().CASE_ATTACHMENTS_UPDATED_FROM_CASEVIEW,\n \"caseAttachmentsUpdateFromCaseview\"\n );\n };\n }, []);\n\n function setNewFiles(arFiles) {\n let index = 0;\n for (const file of arFiles) {\n if (!validateMaxSize(file, 5)) {\n file.error = true;\n file.meta = \"File is too big. Max allowed size is 5MB.\";\n }\n file.mimeType = file.type;\n file.icon = Utils.getIconFromFileType(file.type);\n file.ID = `${new Date().getTime()}I${index}`;\n index+=1;\n }\n return arFiles;\n }\n\n function getFiles(arFiles: Array<any>): Array<any> {\n return setNewFiles(arFiles);\n }\n\n function uploadMyFiles(event) {\n // alert($event.target.files[0]); // outputs the first file\n const arFiles = getFiles(event.target.files);\n // convert FileList to an array\n const myFiles: any = Array.from(arFiles);\n\n const arFileList$: any = myFiles.map((att: any) => {\n return getListUtilityItemProps({\n att,\n downloadFile: !att.progress ? () => downloadAttachedFile(att) : null,\n cancelFile: null,\n deleteFile: !att.progress ? () => deleteAttachedFile(att) : null,\n removeFile: null\n });\n });\n setFileData((current) => {\n return {...current, fileList: arFileList$, attachedFiles: myFiles}\n });\n }\n\n\n\n const handleClick = (event) => {\n setAnchorEl(event.currentTarget);\n };\n\n const handleClose = () => {\n setAnchorEl(null);\n };\n\n function onAddFilesClick() {\n setFileData((current) => {\n return {...current, showfileModal: true}\n });\n setAnchorEl(null);\n }\n\n function removeFileFromList(item: any) {\n let attachedFiles: any = fileData.attachedFiles;\n let fileList: any = fileData.fileList;\n if (item !== null) {\n attachedFiles = attachedFiles.filter(ele => ele.ID !== item.id);\n fileList = fileList.filter(ele => ele.id !== item.id);\n setFileData((current) => {\n return {...current, fileList, attachedFiles}\n });\n }\n }\n\n function closeFilePopup() {\n setFileData((current) => {\n return {...current, showfileModal: false}\n });\n }\n\n function onAttachFiles() {\n const attachmentUtils = PCore.getAttachmentUtils();\n const caseID = thePConn.getValue(PCore.getConstants().CASE_INFO.CASE_INFO_ID);\n const onUploadProgress = () => {};\n const errorHandler = () => {};\n closeFilePopup()\n if (fileData.attachedFiles && fileData.attachedFiles.length > 0 ) {\n setProgress(true);\n }\n for (const file of fileData.attachedFiles) {\n attachmentUtils\n .uploadAttachment(\n file,\n onUploadProgress,\n errorHandler,\n thePConn.getContextName()\n )\n .then((fileResponse) => {\n if (fileResponse.type === \"File\") {\n attachmentUtils.linkAttachmentsToCase(\n caseID,\n [ fileResponse ],\n \"File\",\n thePConn.getContextName()\n )\n .then(() => {\n setFileData((current) => {\n return {...current, fileList: [], attachedFiles: []};\n });\n getAttachments();\n })\n .catch();\n }\n })\n .catch();\n }\n }\n\n function onAddLinksClick() {\n setLinkData((current) => {\n return {...current, showLinkModal: true}\n });\n setAnchorEl(null);\n }\n\n function closeAddLinksPopup() {\n setLinkData((current) => {\n return {...current, showLinkModal: false}\n });\n }\n\n const fieldlinkOnChange = (event) => {\n const title = event.target.value;\n setLink((current) => {\n const updatedData = {...current, title};\n updatedData.disable = !(updatedData.title && updatedData.url);\n return updatedData;\n });\n }\n\n function fieldurlOnChange(event) {\n const url = event.target.value;\n setLink((current) => {\n const updatedData = {...current, url}\n updatedData.disable = !(updatedData.title && updatedData.url);\n return updatedData;\n });\n }\n\n function addLink() {\n // copy list locally\n const localList: any = linkData.linksList.slice();\n const url = link.url;\n if (!/^(http|https):\\/\\//.test(link.url)) {\n link.url = `http://${link.url}`;\n }\n\n // list for display\n let oLink: any = {};\n oLink.icon = \"chain\";\n oLink.ID = `${new Date().getTime()}`;\n oLink = getListUtilityItemProps({\n att: oLink,\n downloadFile: null,\n cancelFile: null,\n deleteFile: null,\n removeFile: null\n });\n oLink.type = \"URL\";\n oLink.primary.type = oLink.type;\n oLink.visual.icon = \"chain\";\n oLink.primary.name = link.title;\n oLink.primary.icon = \"open\";\n oLink.secondary.text = url;\n\n localList.push(oLink);\n\n // list for actually attachments\n const attachedListTemp: any = linkData.attachedLinks.slice();\n const attachedLink: any = {};\n attachedLink.id = oLink.id;\n attachedLink.linkTitle = link.title;\n attachedLink.type = oLink.type;\n attachedLink.url = url;\n\n attachedListTemp.push(attachedLink);\n setLinkData((current) => {\n return {...current, linksList: localList, attachedLinks: attachedListTemp}\n });\n // clear values\n setLink({title: '', url: '', disable: true});\n }\n\n function removeLinksFromList(item: any) {\n let attachedLinks: any = linkData.attachedLinks;\n let linksList: any = linkData.linksList;\n if (item !== null) {\n attachedLinks = attachedLinks.filter(ele => ele.id !== item.id);\n linksList = linksList.filter(ele => ele.id !== item.id);\n setLinkData((current) => {\n return {...current, linksList, attachedLinks}\n });\n }\n }\n\n function onAttachLinks() {\n const attachmentUtils = PCore.getAttachmentUtils();\n const caseID = thePConn.getValue(PCore.getConstants().CASE_INFO.CASE_INFO_ID);\n const links = linkData.attachedLinks;\n closeAddLinksPopup();\n const linksToAttach = links.map((item: any) => ({\n type: \"URL\",\n category: \"URL\",\n url: item.url,\n name: item.linkTitle\n }));\n\n if (linksToAttach && linksToAttach.length > 0) {\n setProgress(true);\n attachmentUtils\n .linkAttachmentsToCase(caseID, linksToAttach, \"URL\", thePConn.getContextName())\n .then( () => {\n setLinkData((current) => {\n return {...current, linksList: [], attachedLinks: []};\n });\n getAttachments();\n })\n .catch(setProgress(false));\n }\n }\n\n return (\n <div className=\"psdk-utility\">\n {inProgress && (<div className=\"progress-div\"><CircularProgress /></div>)}\n <div className=\"psdk-header\">\n <img className=\"psdk-file-utility-card-svg-icon\" src={headerSvgIcon$}></img>\n <div className=\"header-text\">{header}</div>\n <div className=\"psdk-utility-count\" id=\"attachments-count\">{list.count}</div>\n <div style={{flexGrow: 1}}></div>\n <div>\n <IconButton\n id=\"long-button\"\n aria-controls={open ? 'simple-menu' : undefined}\n aria-expanded={open ? 'true' : undefined}\n aria-haspopup=\"true\"\n onClick={handleClick}\n >\n <MoreVertIcon />\n </IconButton>\n <Menu style={{marginTop: '3rem'}}\n id=\"simple-menu\"\n anchorEl={anchorEl}\n keepMounted\n open={Boolean(anchorEl)}\n onClose={handleClose}\n >\n <MenuItem style={{fontSize: '14px'}} onClick={onAddFilesClick}>Add Files</MenuItem>\n <MenuItem style={{fontSize: '14px'}} onClick={onAddLinksClick}>Add Links</MenuItem>\n </Menu>\n </div>\n </div>\n {list.data.length > 0 && (<div style={{marginTop: '1rem'}}>\n <SummaryList arItems$={list.data}></SummaryList>\n </div>)}\n {list.count > 3 && (<div className=\"psdk-utility-view-all\">\n <Button style={{textTransform: 'none'}} color=\"primary\" onClick = {() => setViewAll(true)}>View all</Button>\n </div>)}\n {fileData.showfileModal && (\n <div className=\"psdk-dialog-background\">\n <div className=\"psdk-modal-file-top\">\n <h3>Add local files</h3>\n <div className=\"psdk-modal-body\">\n <div className=\"psdk-modal-file-selector\">\n <label htmlFor='upload-files'>\n <input style={{ display: 'none' }} id='upload-files' name='upload-files' type='file' multiple onChange={uploadMyFiles}/>\n <Button variant='outlined' color='primary' component=\"span\">Upload file(s)</Button>\n </label>\n </div>\n {fileData.fileList.length > 0 && (<div style={{marginTop: '1rem'}}>\n <SummaryList menuIconOverride$='trash' arItems$={fileData.fileList} menuIconOverrideAction$={removeFileFromList}></SummaryList>\n </div>)}\n {fileData.fileList.length === 0 && (<div></div>)}\n <ActionButtonsForFileUtil arMainButtons={fileData.fileMainButtons} arSecondaryButtons={fileData.fileSecondaryButtons}\n primaryAction={onAttachFiles} secondaryAction={closeFilePopup}></ActionButtonsForFileUtil>\n </div>\n </div>\n </div>\n )}\n {linkData.showLinkModal && (\n <div className=\"psdk-dialog-background\">\n <div className=\"psdk-modal-file-top\">\n <h3>Add links</h3>\n <div className=\"psdk-modal-body\">\n <div className=\"psdk-modal-links-row\">\n <div className=\"psdk-links-two-column\">\n <div className=\"psdk-modal-link-data\">\n <TextField fullWidth variant=\"outlined\" label=\"Link title\" size=\"small\" required={required} value={link.title} onChange={fieldlinkOnChange}/>\n </div>\n <div className=\"psdk-modal-link-data\">\n <TextField fullWidth variant=\"outlined\" label=\"URL\" size=\"small\" required={required} value={link.url} onChange={fieldurlOnChange}/>\n </div>\n </div>\n <div className=\"psdk-modal-link-add\">\n <Button className=\"psdk-add-link-action\" color=\"primary\" variant=\"contained\" component=\"span\" onClick={addLink} disabled={link.disable}>Add Link</Button>\n </div>\n </div>\n {linkData.linksList.length > 0 && (<div style={{marginTop: '1rem'}}>\n <SummaryList menuIconOverride$='trash' arItems$={linkData.linksList} menuIconOverrideAction$={removeLinksFromList}></SummaryList>\n </div>)}\n <ActionButtonsForFileUtil arMainButtons={linkData.linkMainButtons} arSecondaryButtons={linkData.linkSecondaryButtons}\n primaryAction={onAttachLinks} secondaryAction={closeAddLinksPopup}></ActionButtonsForFileUtil>\n </div>\n </div>\n </div>\n )}\n {showViewAllModal && (<div className=\"psdk-dialog-background\">\n <div className=\"psdk-modal-file-top\">\n <div className=\"psdk-view-all-header\">\n <h3>Attachments</h3>\n {/* eslint-disable-next-line jsx-a11y/control-has-associated-label */}\n <button type=\"button\" className=\"psdk-close-button\" onClick = {() => setViewAll(false)}><img className=\"psdk-utility-card-actions-svg-icon\" src={closeSvgIcon}></img></button>\n </div>\n <div className=\"psdk-view-all-body\"><SummaryList arItems$={vaItems}></SummaryList></div>\n </div>\n </div>)}\n </div>\n\n )\n}\n"]}
1
+ {"version":3,"file":"FileUtility.js","sourceRoot":"","sources":["../../../../../src/components/widget/FileUtility/FileUtility/FileUtility.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { useEffect, useState } from \"react\";\nimport TextField from '@material-ui/core/TextField';\nimport { Utils } from '../../../helpers/utils';\nimport download from \"downloadjs\";\nimport SummaryList from '../../SummaryList';\nimport ActionButtonsForFileUtil from '../ActionButtonsForFileUtil';\nimport './FileUtility.css';\nimport { IconButton, Menu, MenuItem } from '@material-ui/core';\nimport MoreVertIcon from '@material-ui/icons/MoreVert';\nimport { Button } from '@material-ui/core';\nimport { validateMaxSize } from '../../../helpers/attachmentHelpers';\nimport { CircularProgress } from \"@material-ui/core\";\n\n// Remove this and use \"real\" PCore type once .d.ts is fixed (currently shows 5 errors)\ndeclare const PCore: any;\n\n\nexport default function FileUtility(props) {\n const { getPConnect } = props;\n const thePConn = getPConnect();\n const required = true;\n const listTemp = {\n data: [],\n count: 0\n };\n const [list, setList] = useState(listTemp);\n const headerSvgIcon$ = Utils.getImageSrc('paper-clip', Utils.getSDKStaticConentUrl());\n const closeSvgIcon = Utils.getImageSrc(\"times\", Utils.getSDKStaticConentUrl());\n const configProps: any = thePConn.resolveConfigProps(thePConn.getConfigProps());\n\n const header = configProps.label;\n const fileTemp = {\n showfileModal: false,\n fileList: [],\n attachedFiles: [],\n fileMainButtons: [{ actionID: \"attach\", jsAction: \"attachFiles\", name: thePConn.getLocalizedValue('Attach files')}],\n fileSecondaryButtons: [{ actionID: \"cancel\", jsAction: \"cancel\", name: thePConn.getLocalizedValue('Cancel')}]\n };\n const [fileData, setFileData] = useState(fileTemp);\n const linkTemp = {\n showLinkModal: false,\n linksList: [],\n attachedLinks: [],\n linkMainButtons: [{ actionID: \"attach\", jsAction: \"attachLinks\", name: thePConn.getLocalizedValue('Attach links')}],\n linkSecondaryButtons: [{ actionID: \"cancel\", jsAction: \"cancel\", name: thePConn.getLocalizedValue('Cancel')}]\n };\n const [linkData, setLinkData] = useState(linkTemp);\n const [anchorEl, setAnchorEl] = useState(null);\n const open = Boolean(anchorEl);\n const [link, setLink] = useState({title: '', url: '', disable: true});\n const [inProgress, setProgress] = useState(false);\n const [showViewAllModal, setViewAll] = useState(false);\n const [vaItems, setFullAttachments] = useState([]);\n\n function addAttachments(attsFromResp: Array<any> = []) {\n attsFromResp = attsFromResp.map((respAtt) => {\n const updatedAtt = {\n ...respAtt,\n meta: `${respAtt.category} . ${Utils.generateDateTime(respAtt.createTime, \"DateTime-Since\")}, ${\n respAtt.createdBy\n }`\n };\n if (updatedAtt.type === \"FILE\") {\n updatedAtt.nameWithExt = updatedAtt.fileName;\n }\n return updatedAtt;\n });\n return attsFromResp;\n }\n\n function getListUtilityItemProps({\n att,\n cancelFile,\n downloadFile,\n deleteFile,\n removeFile\n }) {\n let actions;\n\n if (att.progress && att.progress !== 100) {\n actions = [\n {\n id: `Cancel-${att.ID}`,\n text: thePConn.getLocalizedValue('Cancel'),\n icon: \"times\",\n onClick: cancelFile\n }\n ];\n } else if (att.links) {\n const isFile = att.type === \"FILE\";\n const ID = att.ID.replace(/\\s/gi, \"\");\n const actionsMap = new Map([\n [\n \"download\",\n {\n id: `download-${ID}`,\n text: isFile ? thePConn.getLocalizedValue('Download') : thePConn.getLocalizedValue('Open'),\n icon: isFile ? \"download\" : \"open\",\n onClick: downloadFile\n }\n ],\n [\n \"delete\",\n {\n id: `Delete-${ID}`,\n text: thePConn.getLocalizedValue('Delete'),\n icon: \"trash\",\n onClick: deleteFile\n }\n ]\n ]);\n actions = [];\n actionsMap.forEach((action, actionKey) => {\n if (att.links[actionKey]) {\n actions.push(action);\n }\n });\n } else if (att.error) {\n actions = [\n {\n id: `Remove-${att.ID}`,\n text: thePConn.getLocalizedValue('Remove'),\n icon: \"trash\",\n onClick: removeFile\n }\n ];\n }\n\n return {\n id: att.ID,\n visual: {\n icon: Utils.getIconForAttachment(att),\n progress: att.progress === 100 ? undefined: att.progress,\n },\n primary: {\n type: att.type,\n name: att.name,\n icon: \"open\",\n click: downloadFile,\n },\n secondary: {\n text: att.meta\n },\n actions\n };\n }\n\n function fileDownload(data, fileName, ext) {\n const file = ext ? `${fileName}.${ext}` : fileName;\n download(atob(data), file);\n };\n\n function downloadAttachedFile(att: any) {\n const attachUtils = PCore.getAttachmentUtils();\n const {ID, name, extension, type} = att;\n const context = thePConn.getContextName();\n\n attachUtils\n .downloadAttachment(ID, context)\n .then((content) => {\n if (type === \"FILE\") {\n fileDownload(content.data, name, extension);\n } else if (type === \"URL\") {\n let { data } = content;\n if (!/^(http|https):\\/\\//.test(data)) {\n data = `//${data}`;\n }\n window.open(content.data, \"_blank\");\n }\n })\n .catch();\n }\n\n function deleteAttachedFile(att: any) {\n const attachUtils = PCore.getAttachmentUtils();\n const {ID} = att;\n const context = thePConn.getContextName();\n\n attachUtils.deleteAttachment(ID, context)\n .then(() => {\n // eslint-disable-next-line @typescript-eslint/no-use-before-define\n getAttachments();\n })\n .catch();\n }\n\n const getAttachments = () => {\n\n const attachmentUtils = PCore.getAttachmentUtils();\n const caseID = thePConn.getValue(PCore.getConstants().CASE_INFO.CASE_INFO_ID);\n\n if (caseID && caseID !== \"\") {\n const attPromise = attachmentUtils.getCaseAttachments(caseID, thePConn.getContextName());\n\n attPromise\n .then( (resp) => {\n const arFullListAttachments = addAttachments(resp);\n const attachmentsCount = arFullListAttachments.length;\n const arItems: any = arFullListAttachments.slice(0, 3).map((att) => {\n return getListUtilityItemProps({\n att,\n downloadFile: !att.progress ? () => downloadAttachedFile(att) : null,\n cancelFile: null,\n deleteFile: !att.progress ? () => deleteAttachedFile(att) : null,\n removeFile: null\n });\n });\n const viewAllarItems: any = arFullListAttachments.map((att) => {\n return getListUtilityItemProps({\n att,\n downloadFile: !att.progress ? () => downloadAttachedFile(att) : null,\n cancelFile: null,\n deleteFile: !att.progress ? () => deleteAttachedFile(att) : null,\n removeFile: null\n });\n });\n setProgress(false);\n setList((current) => {\n return {...current, count: attachmentsCount, data: arItems}\n });\n setFullAttachments(viewAllarItems);\n });\n }\n }\n\n useEffect(() => {\n getAttachments();\n }, []);\n\n\n useEffect(() => {\n PCore.getPubSubUtils().subscribe(\n PCore.getEvents().getCaseEvent().CASE_ATTACHMENTS_UPDATED_FROM_CASEVIEW,\n getAttachments,\n \"caseAttachmentsUpdateFromCaseview\"\n );\n\n return () => {\n PCore.getPubSubUtils().unsubscribe(\n PCore.getEvents().getCaseEvent().CASE_ATTACHMENTS_UPDATED_FROM_CASEVIEW,\n \"caseAttachmentsUpdateFromCaseview\"\n );\n };\n }, []);\n\n function setNewFiles(arFiles) {\n let index = 0;\n for (const file of arFiles) {\n if (!validateMaxSize(file, 5)) {\n file.error = true;\n file.meta = \"File is too big. Max allowed size is 5MB.\";\n }\n file.mimeType = file.type;\n file.icon = Utils.getIconFromFileType(file.type);\n file.ID = `${new Date().getTime()}I${index}`;\n index+=1;\n }\n return arFiles;\n }\n\n function getFiles(arFiles: Array<any>): Array<any> {\n return setNewFiles(arFiles);\n }\n\n function uploadMyFiles(event) {\n // alert($event.target.files[0]); // outputs the first file\n const arFiles = getFiles(event.target.files);\n // convert FileList to an array\n const myFiles: any = Array.from(arFiles);\n\n const arFileList$: any = myFiles.map((att: any) => {\n return getListUtilityItemProps({\n att,\n downloadFile: !att.progress ? () => downloadAttachedFile(att) : null,\n cancelFile: null,\n deleteFile: !att.progress ? () => deleteAttachedFile(att) : null,\n removeFile: null\n });\n });\n setFileData((current) => {\n return {...current, fileList: arFileList$, attachedFiles: myFiles}\n });\n }\n\n\n\n const handleClick = (event) => {\n setAnchorEl(event.currentTarget);\n };\n\n const handleClose = () => {\n setAnchorEl(null);\n };\n\n function onAddFilesClick() {\n setFileData((current) => {\n return {...current, showfileModal: true}\n });\n setAnchorEl(null);\n }\n\n function removeFileFromList(item: any) {\n let attachedFiles: any = fileData.attachedFiles;\n let fileList: any = fileData.fileList;\n if (item !== null) {\n attachedFiles = attachedFiles.filter(ele => ele.ID !== item.id);\n fileList = fileList.filter(ele => ele.id !== item.id);\n setFileData((current) => {\n return {...current, fileList, attachedFiles}\n });\n }\n }\n\n function closeFilePopup() {\n setFileData((current) => {\n return {...current, showfileModal: false}\n });\n }\n\n function onAttachFiles() {\n const attachmentUtils = PCore.getAttachmentUtils();\n const caseID = thePConn.getValue(PCore.getConstants().CASE_INFO.CASE_INFO_ID);\n const onUploadProgress = () => {};\n const errorHandler = () => {};\n closeFilePopup()\n if (fileData.attachedFiles && fileData.attachedFiles.length > 0 ) {\n setProgress(true);\n }\n for (const file of fileData.attachedFiles) {\n attachmentUtils\n .uploadAttachment(\n file,\n onUploadProgress,\n errorHandler,\n thePConn.getContextName()\n )\n .then((fileResponse) => {\n if (fileResponse.type === \"File\") {\n attachmentUtils.linkAttachmentsToCase(\n caseID,\n [ fileResponse ],\n \"File\",\n thePConn.getContextName()\n )\n .then(() => {\n setFileData((current) => {\n return {...current, fileList: [], attachedFiles: []};\n });\n getAttachments();\n })\n .catch();\n }\n })\n .catch();\n }\n }\n\n function onAddLinksClick() {\n setLinkData((current) => {\n return {...current, showLinkModal: true}\n });\n setAnchorEl(null);\n }\n\n function closeAddLinksPopup() {\n setLinkData((current) => {\n return {...current, showLinkModal: false}\n });\n }\n\n const fieldlinkOnChange = (event) => {\n const title = event.target.value;\n setLink((current) => {\n const updatedData = {...current, title};\n updatedData.disable = !(updatedData.title && updatedData.url);\n return updatedData;\n });\n }\n\n function fieldurlOnChange(event) {\n const url = event.target.value;\n setLink((current) => {\n const updatedData = {...current, url}\n updatedData.disable = !(updatedData.title && updatedData.url);\n return updatedData;\n });\n }\n\n function addLink() {\n // copy list locally\n const localList: any = linkData.linksList.slice();\n const url = link.url;\n if (!/^(http|https):\\/\\//.test(link.url)) {\n link.url = `http://${link.url}`;\n }\n\n // list for display\n let oLink: any = {};\n oLink.icon = \"chain\";\n oLink.ID = `${new Date().getTime()}`;\n oLink = getListUtilityItemProps({\n att: oLink,\n downloadFile: null,\n cancelFile: null,\n deleteFile: null,\n removeFile: null\n });\n oLink.type = \"URL\";\n oLink.primary.type = oLink.type;\n oLink.visual.icon = \"chain\";\n oLink.primary.name = link.title;\n oLink.primary.icon = \"open\";\n oLink.secondary.text = url;\n\n localList.push(oLink);\n\n // list for actually attachments\n const attachedListTemp: any = linkData.attachedLinks.slice();\n const attachedLink: any = {};\n attachedLink.id = oLink.id;\n attachedLink.linkTitle = link.title;\n attachedLink.type = oLink.type;\n attachedLink.url = url;\n\n attachedListTemp.push(attachedLink);\n setLinkData((current) => {\n return {...current, linksList: localList, attachedLinks: attachedListTemp}\n });\n // clear values\n setLink({title: '', url: '', disable: true});\n }\n\n function removeLinksFromList(item: any) {\n let attachedLinks: any = linkData.attachedLinks;\n let linksList: any = linkData.linksList;\n if (item !== null) {\n attachedLinks = attachedLinks.filter(ele => ele.id !== item.id);\n linksList = linksList.filter(ele => ele.id !== item.id);\n setLinkData((current) => {\n return {...current, linksList, attachedLinks}\n });\n }\n }\n\n function onAttachLinks() {\n const attachmentUtils = PCore.getAttachmentUtils();\n const caseID = thePConn.getValue(PCore.getConstants().CASE_INFO.CASE_INFO_ID);\n const links = linkData.attachedLinks;\n closeAddLinksPopup();\n const linksToAttach = links.map((item: any) => ({\n type: \"URL\",\n category: \"URL\",\n url: item.url,\n name: item.linkTitle\n }));\n\n if (linksToAttach && linksToAttach.length > 0) {\n setProgress(true);\n attachmentUtils\n .linkAttachmentsToCase(caseID, linksToAttach, \"URL\", thePConn.getContextName())\n .then( () => {\n setLinkData((current) => {\n return {...current, linksList: [], attachedLinks: []};\n });\n getAttachments();\n })\n .catch(setProgress(false));\n }\n }\n\n return (\n <div className=\"psdk-utility\">\n {inProgress && (<div className=\"progress-div\"><CircularProgress /></div>)}\n <div className=\"psdk-header\">\n <img className=\"psdk-file-utility-card-svg-icon\" src={headerSvgIcon$}></img>\n <div className=\"header-text\">{header}</div>\n <div className=\"psdk-utility-count\" id=\"attachments-count\">{list.count}</div>\n <div style={{flexGrow: 1}}></div>\n <div>\n <IconButton\n id=\"long-button\"\n aria-controls={open ? 'simple-menu' : undefined}\n aria-expanded={open ? 'true' : undefined}\n aria-haspopup=\"true\"\n onClick={handleClick}\n >\n <MoreVertIcon />\n </IconButton>\n <Menu style={{marginTop: '3rem'}}\n id=\"simple-menu\"\n anchorEl={anchorEl}\n keepMounted\n open={Boolean(anchorEl)}\n onClose={handleClose}\n >\n <MenuItem style={{fontSize: '14px'}} onClick={onAddFilesClick}>{thePConn.getLocalizedValue('Add files')}</MenuItem>\n <MenuItem style={{fontSize: '14px'}} onClick={onAddLinksClick}>{thePConn.getLocalizedValue('Add links')}</MenuItem>\n </Menu>\n </div>\n </div>\n {list.data.length > 0 && (<div style={{marginTop: '1rem'}}>\n <SummaryList arItems$={list.data}></SummaryList>\n </div>)}\n {list.count > 3 && (<div className=\"psdk-utility-view-all\">\n <Button style={{textTransform: 'none'}} color=\"primary\" onClick = {() => setViewAll(true)}>View all</Button>\n </div>)}\n {fileData.showfileModal && (\n <div className=\"psdk-dialog-background\">\n <div className=\"psdk-modal-file-top\">\n <h3>{thePConn.getLocalizedValue('Add local files')}</h3>\n <div className=\"psdk-modal-body\">\n <div className=\"psdk-modal-file-selector\">\n <label htmlFor='upload-files'>\n <input style={{ display: 'none' }} id='upload-files' name='upload-files' type='file' multiple onChange={uploadMyFiles}/>\n <Button variant='outlined' color='primary' component=\"span\">{thePConn.getLocalizedValue('Attach files')}</Button>\n </label>\n </div>\n {fileData.fileList.length > 0 && (<div style={{marginTop: '1rem'}}>\n <SummaryList menuIconOverride$='trash' arItems$={fileData.fileList} menuIconOverrideAction$={removeFileFromList}></SummaryList>\n </div>)}\n {fileData.fileList.length === 0 && (<div></div>)}\n <ActionButtonsForFileUtil arMainButtons={fileData.fileMainButtons} arSecondaryButtons={fileData.fileSecondaryButtons}\n primaryAction={onAttachFiles} secondaryAction={closeFilePopup}></ActionButtonsForFileUtil>\n </div>\n </div>\n </div>\n )}\n {linkData.showLinkModal && (\n <div className=\"psdk-dialog-background\">\n <div className=\"psdk-modal-file-top\">\n <h3>{thePConn.getLocalizedValue('Add links')}</h3>\n <div className=\"psdk-modal-body\">\n <div className=\"psdk-modal-links-row\">\n <div className=\"psdk-links-two-column\">\n <div className=\"psdk-modal-link-data\">\n <TextField fullWidth variant=\"outlined\" label=\"Link title\" size=\"small\" required={required} value={link.title} onChange={fieldlinkOnChange}/>\n </div>\n <div className=\"psdk-modal-link-data\">\n <TextField fullWidth variant=\"outlined\" label=\"URL\" size=\"small\" required={required} value={link.url} onChange={fieldurlOnChange}/>\n </div>\n </div>\n <div className=\"psdk-modal-link-add\">\n <Button className=\"psdk-add-link-action\" color=\"primary\" variant=\"contained\" component=\"span\" onClick={addLink} disabled={link.disable}>{thePConn.getLocalizedValue('Add link')}</Button>\n </div>\n </div>\n {linkData.linksList.length > 0 && (<div style={{marginTop: '1rem'}}>\n <SummaryList menuIconOverride$='trash' arItems$={linkData.linksList} menuIconOverrideAction$={removeLinksFromList}></SummaryList>\n </div>)}\n <ActionButtonsForFileUtil arMainButtons={linkData.linkMainButtons} arSecondaryButtons={linkData.linkSecondaryButtons}\n primaryAction={onAttachLinks} secondaryAction={closeAddLinksPopup}></ActionButtonsForFileUtil>\n </div>\n </div>\n </div>\n )}\n {showViewAllModal && (<div className=\"psdk-dialog-background\">\n <div className=\"psdk-modal-file-top\">\n <div className=\"psdk-view-all-header\">\n <h3>{thePConn.getLocalizedValue('Attachments')}</h3>\n {/* eslint-disable-next-line jsx-a11y/control-has-associated-label */}\n <button type=\"button\" className=\"psdk-close-button\" onClick = {() => setViewAll(false)}><img className=\"psdk-utility-card-actions-svg-icon\" src={closeSvgIcon}></img></button>\n </div>\n <div className=\"psdk-view-all-body\"><SummaryList arItems$={vaItems}></SummaryList></div>\n </div>\n </div>)}\n </div>\n\n )\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"QuickCreate.d.ts","sourceRoot":"","sources":["../../../../src/components/widget/QuickCreate/QuickCreate.tsx"],"names":[],"mappings":";AAMA,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,KAAK,KAAA,eA+CxC"}
1
+ {"version":3,"file":"QuickCreate.d.ts","sourceRoot":"","sources":["../../../../src/components/widget/QuickCreate/QuickCreate.tsx"],"names":[],"mappings":";AASA,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,KAAK,KAAA,eA+CxC"}
@@ -20,11 +20,11 @@ export default function QuickCreate(props) {
20
20
  envInfo.environmentInfoObject.pyCaseTypeList &&
21
21
  envInfo.environmentInfoObject.pyCaseTypeList.length > 0) {
22
22
  classFilter.forEach((item) => {
23
- let icon = Utils.getImageSrc('polaris-solid', PCore.getAssetLoader().getStaticServerUrl());
23
+ let icon = Utils.getImageSrc('polaris-solid', Utils.getSDKStaticConentUrl());
24
24
  let label = '';
25
25
  envInfo.environmentInfoObject.pyCaseTypeList.forEach((casetype) => {
26
26
  if (casetype.pyWorkTypeImplementationClassName === item) {
27
- icon = casetype.pxIcon && Utils.getImageSrc(casetype?.pxIcon, PCore.getAssetLoader().getStaticServerUrl());
27
+ icon = casetype.pxIcon && Utils.getImageSrc(casetype?.pxIcon, Utils.getSDKStaticConentUrl());
28
28
  label = casetype.pyWorkTypeName ?? '';
29
29
  }
30
30
  });
@@ -1 +1 @@
1
- {"version":3,"file":"QuickCreate.js","sourceRoot":"","sources":["../../../../src/components/widget/QuickCreate/QuickCreate.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,cAAc,MAAM,4CAA4C,CAAC;AACxE,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAI5C,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,KAAK;IACvC,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,GAAG,KAAK,CAAC;IACnE,MAAM,KAAK,GAAG,WAAW,EAAE,CAAC;IAC5B,MAAM,UAAU,GAAG,CAAC,SAAS,EAAE,EAAE;QAC/B,KAAK;aACF,aAAa,EAAE;aACf,UAAU,CAAC,SAAS,EAAE,EAAE,CAAC;aACzB,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;YACf,sCAAsC;YACtC,OAAO,CAAC,GAAG,CAAC,0BAA0B,EAAE,KAAK,EAAE,OAAO,CAAC,CAAA;QACzD,CAAC,CAAC,CAAC;IACP,CAAC,CAAC;IAEF,MAAM,KAAK,GAAQ,EAAE,CAAC;IACtB,MAAM,OAAO,GAAG,KAAK,CAAC,kBAAkB,EAAE,CAAC;IAC3C,IACE,WAAW;QACX,OAAO,CAAC,qBAAqB;QAC7B,OAAO,CAAC,qBAAqB,CAAC,cAAc;QAC5C,OAAO,CAAC,qBAAqB,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,EACvD;QACA,WAAW,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;YAC3B,IAAI,IAAI,GAAG,KAAK,CAAC,WAAW,CAAC,eAAe,EAAE,KAAK,CAAC,cAAc,EAAE,CAAC,kBAAkB,EAAE,CAAC,CAAC;YAC3F,IAAI,KAAK,GAAG,EAAE,CAAC;YACf,OAAO,CAAC,qBAAqB,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;gBAChE,IAAI,QAAQ,CAAC,iCAAiC,KAAK,IAAI,EAAE;oBACvD,IAAI,GAAG,QAAQ,CAAC,MAAM,IAAI,KAAK,CAAC,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,cAAc,EAAE,CAAC,kBAAkB,EAAE,CAAC,CAAC;oBAC3G,KAAK,GAAG,QAAQ,CAAC,cAAc,IAAI,EAAE,CAAC;iBACvC;YACH,CAAC,CAAC,CAAC;YACH,IAAI,KAAK,KAAK,EAAE,EAAE;gBAChB,KAAK,CAAC,IAAI,CAAC;oBACT,KAAK;oBACL,OAAO,EAAE,GAAG,EAAE;wBACZ,UAAU,CAAC,IAAI,CAAC,CAAC;oBACnB,CAAC;oBACD,GAAG,CAAC,aAAa,IAAI,EAAE,IAAI,EAAE,CAAC;iBAC/B,CAAC,CAAC;aACJ;QACH,CAAC,CAAC,CAAC;KACJ;IAED,OAAO,CACH;QACE,oBAAC,cAAc,IAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,GAAmB,CAC/D,CACP,CAAC;AACN,CAAC","sourcesContent":["import React from \"react\";\nimport WssQuickCreate from '../../designSystemExtension/WssQuickCreate';\nimport { Utils } from '../../helpers/utils';\n\ndeclare const PCore: any;\n\nexport default function QuickCreate(props) {\n const { getPConnect, heading, showCaseIcons, classFilter } = props;\n const pConn = getPConnect();\n const createCase = (className) => {\n pConn\n .getActionsApi()\n .createWork(className, {})\n .catch((error) => {\n // eslint-disable-next-line no-console\n console.log('Error in case creation: ', error?.message)\n });\n };\n\n const cases: any = [];\n const envInfo = PCore.getEnvironmentInfo();\n if (\n classFilter &&\n envInfo.environmentInfoObject &&\n envInfo.environmentInfoObject.pyCaseTypeList &&\n envInfo.environmentInfoObject.pyCaseTypeList.length > 0\n ) {\n classFilter.forEach((item) => {\n let icon = Utils.getImageSrc('polaris-solid', PCore.getAssetLoader().getStaticServerUrl());\n let label = '';\n envInfo.environmentInfoObject.pyCaseTypeList.forEach((casetype) => {\n if (casetype.pyWorkTypeImplementationClassName === item) {\n icon = casetype.pxIcon && Utils.getImageSrc(casetype?.pxIcon, PCore.getAssetLoader().getStaticServerUrl());\n label = casetype.pyWorkTypeName ?? '';\n }\n });\n if (label !== '') {\n cases.push({\n label,\n onClick: () => {\n createCase(item);\n },\n ...(showCaseIcons && { icon })\n });\n }\n });\n }\n\n return (\n <div>\n <WssQuickCreate heading={heading} actions={cases}></WssQuickCreate>\n </div>\n );\n}\n"]}
1
+ {"version":3,"file":"QuickCreate.js","sourceRoot":"","sources":["../../../../src/components/widget/QuickCreate/QuickCreate.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,cAAc,MAAM,4CAA4C,CAAC;AACxE,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAO5C,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,KAAK;IACvC,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,GAAG,KAAK,CAAC;IACnE,MAAM,KAAK,GAAG,WAAW,EAAE,CAAC;IAC5B,MAAM,UAAU,GAAG,CAAC,SAAS,EAAE,EAAE;QAC/B,KAAK;aACF,aAAa,EAAE;aACf,UAAU,CAAC,SAAS,EAAE,EAAE,CAAC;aACzB,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;YACf,sCAAsC;YACtC,OAAO,CAAC,GAAG,CAAC,0BAA0B,EAAE,KAAK,EAAE,OAAO,CAAC,CAAA;QACzD,CAAC,CAAC,CAAC;IACP,CAAC,CAAC;IAEF,MAAM,KAAK,GAAQ,EAAE,CAAC;IACtB,MAAM,OAAO,GAAG,KAAK,CAAC,kBAAkB,EAAE,CAAC;IAC3C,IACE,WAAW;QACX,OAAO,CAAC,qBAAqB;QAC7B,OAAO,CAAC,qBAAqB,CAAC,cAAc;QAC5C,OAAO,CAAC,qBAAqB,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,EACvD;QACA,WAAW,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;YAC3B,IAAI,IAAI,GAAG,KAAK,CAAC,WAAW,CAAC,eAAe,EAAE,KAAK,CAAC,qBAAqB,EAAE,CAAC,CAAC;YAC7E,IAAI,KAAK,GAAG,EAAE,CAAC;YACf,OAAO,CAAC,qBAAqB,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;gBAChE,IAAI,QAAQ,CAAC,iCAAiC,KAAK,IAAI,EAAE;oBACvD,IAAI,GAAG,QAAQ,CAAC,MAAM,IAAI,KAAK,CAAC,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,qBAAqB,EAAE,CAAC,CAAC;oBAC7F,KAAK,GAAG,QAAQ,CAAC,cAAc,IAAI,EAAE,CAAC;iBACvC;YACH,CAAC,CAAC,CAAC;YACH,IAAI,KAAK,KAAK,EAAE,EAAE;gBAChB,KAAK,CAAC,IAAI,CAAC;oBACT,KAAK;oBACL,OAAO,EAAE,GAAG,EAAE;wBACZ,UAAU,CAAC,IAAI,CAAC,CAAC;oBACnB,CAAC;oBACD,GAAG,CAAC,aAAa,IAAI,EAAE,IAAI,EAAE,CAAC;iBAC/B,CAAC,CAAC;aACJ;QACH,CAAC,CAAC,CAAC;KACJ;IAED,OAAO,CACH;QACE,oBAAC,cAAc,IAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,GAAmB,CAC/D,CACP,CAAC;AACN,CAAC","sourcesContent":["import React from \"react\";\nimport WssQuickCreate from '../../designSystemExtension/WssQuickCreate';\nimport { Utils } from '../../helpers/utils';\n\nimport PCoreType from '@pega/pcore-pconnect-typedefs/types/pcore';\n\ndeclare const PCore: typeof PCoreType;\n\n\nexport default function QuickCreate(props) {\n const { getPConnect, heading, showCaseIcons, classFilter } = props;\n const pConn = getPConnect();\n const createCase = (className) => {\n pConn\n .getActionsApi()\n .createWork(className, {})\n .catch((error) => {\n // eslint-disable-next-line no-console\n console.log('Error in case creation: ', error?.message)\n });\n };\n\n const cases: any = [];\n const envInfo = PCore.getEnvironmentInfo();\n if (\n classFilter &&\n envInfo.environmentInfoObject &&\n envInfo.environmentInfoObject.pyCaseTypeList &&\n envInfo.environmentInfoObject.pyCaseTypeList.length > 0\n ) {\n classFilter.forEach((item) => {\n let icon = Utils.getImageSrc('polaris-solid', Utils.getSDKStaticConentUrl());\n let label = '';\n envInfo.environmentInfoObject.pyCaseTypeList.forEach((casetype) => {\n if (casetype.pyWorkTypeImplementationClassName === item) {\n icon = casetype.pxIcon && Utils.getImageSrc(casetype?.pxIcon, Utils.getSDKStaticConentUrl());\n label = casetype.pyWorkTypeName ?? '';\n }\n });\n if (label !== '') {\n cases.push({\n label,\n onClick: () => {\n createCase(item);\n },\n ...(showCaseIcons && { icon })\n });\n }\n });\n }\n\n return (\n <div>\n <WssQuickCreate heading={heading} actions={cases}></WssQuickCreate>\n </div>\n );\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"SummaryItem.d.ts","sourceRoot":"","sources":["../../../../src/components/widget/SummaryItem/SummaryItem.tsx"],"names":[],"mappings":";AAEA,OAAO,mBAAmB,CAAA;AAM1B,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,KAAK,KAAA,eAuExC"}
1
+ {"version":3,"file":"SummaryItem.d.ts","sourceRoot":"","sources":["../../../../src/components/widget/SummaryItem/SummaryItem.tsx"],"names":[],"mappings":";AAEA,OAAO,mBAAmB,CAAA;AAI1B,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,KAAK,KAAA,eAuExC"}
@@ -7,13 +7,13 @@ export default function SummaryItem(props) {
7
7
  let imagePath$ = "";
8
8
  let menuIconOverride$;
9
9
  menuIconOverride$ = props.menuIconOverride$;
10
- imagePath$ = Utils.getIconPath(PCore.getAssetLoader().getStaticServerUrl());
10
+ imagePath$ = Utils.getIconPath(Utils.getSDKStaticConentUrl());
11
11
  const item = props.arItems$;
12
12
  const srcImg = `${imagePath$}${item.visual.icon}.svg`;
13
13
  const [anchorEl, setAnchorEl] = useState(null);
14
14
  const open = Boolean(anchorEl);
15
15
  if (menuIconOverride$) {
16
- menuIconOverride$ = Utils.getImageSrc(menuIconOverride$, PCore.getAssetLoader().getStaticServerUrl());
16
+ menuIconOverride$ = Utils.getImageSrc(menuIconOverride$, Utils.getSDKStaticConentUrl());
17
17
  }
18
18
  function removeAttachment() {
19
19
  props.menuIconOverrideAction$(item);