@rh-support/troubleshoot 2.4.10-beta.7 → 2.5.0

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 (645) hide show
  1. package/README.md +1 -4
  2. package/lib/esm/components/AccountInfo/AccountSelector.d.ts +2 -1
  3. package/lib/esm/components/AccountInfo/AccountSelector.d.ts.map +1 -1
  4. package/lib/esm/components/AccountInfo/AccountSelector.js +7 -7
  5. package/lib/esm/components/AccountInfo/ManagedAccountsDropdown.d.ts +2 -1
  6. package/lib/esm/components/AccountInfo/ManagedAccountsDropdown.d.ts.map +1 -1
  7. package/lib/esm/components/AccountInfo/ManagedAccountsDropdown.js +36 -11
  8. package/lib/esm/components/AccountInfo/OwnerSelector.d.ts +2 -1
  9. package/lib/esm/components/AccountInfo/OwnerSelector.d.ts.map +1 -1
  10. package/lib/esm/components/AccountInfo/OwnerSelector.js +10 -124
  11. package/lib/esm/components/AccountInfo/css/accountSelector.css +6 -0
  12. package/lib/esm/components/CaseEditView/ActiveCustomerEscalation/ActiveCustomerEscalation.js +5 -5
  13. package/lib/esm/components/CaseEditView/ActiveCustomerEscalation/RequestEscalationModal.d.ts +2 -1
  14. package/lib/esm/components/CaseEditView/ActiveCustomerEscalation/RequestEscalationModal.d.ts.map +1 -1
  15. package/lib/esm/components/CaseEditView/ActiveCustomerEscalation/RequestEscalationModal.js +23 -20
  16. package/lib/esm/components/CaseEditView/Case.d.ts +2 -1
  17. package/lib/esm/components/CaseEditView/Case.d.ts.map +1 -1
  18. package/lib/esm/components/CaseEditView/Case.js +8 -8
  19. package/lib/esm/components/CaseEditView/CaseDetailsAside.d.ts +2 -1
  20. package/lib/esm/components/CaseEditView/CaseDetailsAside.d.ts.map +1 -1
  21. package/lib/esm/components/CaseEditView/CaseDetailsAside.js +22 -16
  22. package/lib/esm/components/CaseEditView/CaseDetailsErrorMessage.d.ts +2 -1
  23. package/lib/esm/components/CaseEditView/CaseDetailsErrorMessage.d.ts.map +1 -1
  24. package/lib/esm/components/CaseEditView/CaseDetailsErrorMessage.js +1 -1
  25. package/lib/esm/components/CaseEditView/CaseDetailsModals.js +1 -1
  26. package/lib/esm/components/CaseEditView/CaseDetailsTabs.d.ts +1 -1
  27. package/lib/esm/components/CaseEditView/CaseDetailsTabs.d.ts.map +1 -1
  28. package/lib/esm/components/CaseEditView/CaseDetailsTabs.js +45 -25
  29. package/lib/esm/components/CaseEditView/CaseOverview/CaseOwnerInfo.d.ts +2 -1
  30. package/lib/esm/components/CaseEditView/CaseOverview/CaseOwnerInfo.d.ts.map +1 -1
  31. package/lib/esm/components/CaseEditView/CaseOverview/CaseOwnerInfo.js +1 -1
  32. package/lib/esm/components/CaseEditView/CaseOverview/CaseStatus.d.ts +2 -1
  33. package/lib/esm/components/CaseEditView/CaseOverview/CaseStatus.d.ts.map +1 -1
  34. package/lib/esm/components/CaseEditView/CaseOverview/CaseType.d.ts +2 -1
  35. package/lib/esm/components/CaseEditView/CaseOverview/CaseType.d.ts.map +1 -1
  36. package/lib/esm/components/CaseEditView/CaseOverview/CaseType.js +18 -4
  37. package/lib/esm/components/CaseEditView/CaseOverview/DateTime.d.ts +2 -1
  38. package/lib/esm/components/CaseEditView/CaseOverview/DateTime.d.ts.map +1 -1
  39. package/lib/esm/components/CaseEditView/CaseOverview/DateTime.js +1 -1
  40. package/lib/esm/components/CaseEditView/CaseOverview/index.d.ts +1 -1
  41. package/lib/esm/components/CaseEditView/CaseOverview/index.d.ts.map +1 -1
  42. package/lib/esm/components/CaseEditView/CaseOverview/index.js +44 -35
  43. package/lib/esm/components/CaseEditView/CaseSolutions/CaseSolutions.d.ts.map +1 -1
  44. package/lib/esm/components/CaseEditView/CaseSolutions/CaseSolutions.js +115 -47
  45. package/lib/esm/components/CaseEditView/CaseSolutions/CaseSolutionsItem.d.ts +7 -2
  46. package/lib/esm/components/CaseEditView/CaseSolutions/CaseSolutionsItem.d.ts.map +1 -1
  47. package/lib/esm/components/CaseEditView/CaseSolutions/CaseSolutionsItem.js +8 -6
  48. package/lib/esm/components/CaseEditView/CaseSolutions/HandpicketItem.d.ts +15 -0
  49. package/lib/esm/components/CaseEditView/CaseSolutions/HandpicketItem.d.ts.map +1 -0
  50. package/lib/esm/components/CaseEditView/CaseSolutions/HandpicketItem.js +76 -0
  51. package/lib/esm/components/CaseEditView/CaseSubscriptionAbuseAlert.d.ts +2 -1
  52. package/lib/esm/components/CaseEditView/CaseSubscriptionAbuseAlert.d.ts.map +1 -1
  53. package/lib/esm/components/CaseEditView/CaseSubscriptionAbuseAlert.js +1 -1
  54. package/lib/esm/components/CaseEditView/ConfirmationModals/ReopenCaseModal.d.ts +2 -1
  55. package/lib/esm/components/CaseEditView/ConfirmationModals/ReopenCaseModal.d.ts.map +1 -1
  56. package/lib/esm/components/CaseEditView/ConfirmationModals/ReopenCaseModal.js +17 -11
  57. package/lib/esm/components/CaseEditView/PDFContainer.d.ts +1 -1
  58. package/lib/esm/components/CaseEditView/PDFContainer.d.ts.map +1 -1
  59. package/lib/esm/components/CaseEditView/RequestRemoteSession/ESSRemoteSession.js +2 -2
  60. package/lib/esm/components/CaseEditView/RequestRemoteSession/ESSRemoteSessionModal.d.ts +2 -1
  61. package/lib/esm/components/CaseEditView/RequestRemoteSession/ESSRemoteSessionModal.d.ts.map +1 -1
  62. package/lib/esm/components/CaseEditView/RequestRemoteSession/ESSRemoteSessionModal.js +8 -7
  63. package/lib/esm/components/CaseEditView/RequestRemoteSession/NewEssTermsModal.d.ts +2 -1
  64. package/lib/esm/components/CaseEditView/RequestRemoteSession/NewEssTermsModal.d.ts.map +1 -1
  65. package/lib/esm/components/CaseEditView/RequestRemoteSession/NewEssTermsModal.js +13 -12
  66. package/lib/esm/components/CaseEditView/RequestRemoteSession/RemoteSessionAgreement.js +2 -2
  67. package/lib/esm/components/CaseEditView/RequestRemoteSession/RemoteSessionAgreementModal.d.ts +2 -1
  68. package/lib/esm/components/CaseEditView/RequestRemoteSession/RemoteSessionAgreementModal.d.ts.map +1 -1
  69. package/lib/esm/components/CaseEditView/RequestRemoteSession/RemoteSessionAgreementModal.js +13 -12
  70. package/lib/esm/components/CaseEditView/ShareCase/PartnerCaseHelper.d.ts +2 -2
  71. package/lib/esm/components/CaseEditView/ShareCase/PartnerCaseHelper.d.ts.map +1 -1
  72. package/lib/esm/components/CaseEditView/ShareCase/PartnerCaseHelper.js +1 -1
  73. package/lib/esm/components/CaseEditView/ShareCase/PartnerShare.d.ts +2 -1
  74. package/lib/esm/components/CaseEditView/ShareCase/PartnerShare.d.ts.map +1 -1
  75. package/lib/esm/components/CaseEditView/ShareCase/PartnerShare.js +59 -35
  76. package/lib/esm/components/CaseEditView/ShareCase/TnC.d.ts +1 -1
  77. package/lib/esm/components/CaseEditView/ShareCase/TnC.d.ts.map +1 -1
  78. package/lib/esm/components/CaseEditView/Tabs/CaseActionPlan/CaseActionPlan.d.ts +2 -1
  79. package/lib/esm/components/CaseEditView/Tabs/CaseActionPlan/CaseActionPlan.d.ts.map +1 -1
  80. package/lib/esm/components/CaseEditView/Tabs/CaseActionPlan/CaseActionPlan.js +8 -20
  81. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CaseContactPhoneNumber.d.ts +2 -1
  82. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CaseContactPhoneNumber.d.ts.map +1 -1
  83. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CaseContactPhoneNumber.js +187 -66
  84. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CaseDetailsManagement.d.ts +2 -2
  85. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CaseDetailsManagement.d.ts.map +1 -1
  86. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CaseDetailsManagement.js +2 -2
  87. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CaseHostname.d.ts +2 -1
  88. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CaseHostname.d.ts.map +1 -1
  89. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CaseHostname.js +2 -2
  90. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CaseInformation.d.ts +2 -1
  91. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CaseInformation.d.ts.map +1 -1
  92. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CaseInformation.js +10 -13
  93. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CaseInternalStatus.d.ts +2 -1
  94. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CaseInternalStatus.d.ts.map +1 -1
  95. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CaseInternalStatus.js +31 -12
  96. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CaseOpenshiftClusterId/CaseOpenShiftPopover.d.ts +2 -1
  97. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CaseOpenshiftClusterId/CaseOpenShiftPopover.d.ts.map +1 -1
  98. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CaseOpenshiftClusterId/CaseOpenShiftPopover.js +1 -1
  99. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CaseOpenshiftClusterId/CaseOpenShiftV3Popover.d.ts +2 -1
  100. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CaseOpenshiftClusterId/CaseOpenShiftV3Popover.d.ts.map +1 -1
  101. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CaseOpenshiftClusterId/CaseOpenShiftV3Popover.js +1 -1
  102. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CaseOpenshiftClusterId/CaseOpenshiftClusterId.d.ts +2 -1
  103. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CaseOpenshiftClusterId/CaseOpenshiftClusterId.d.ts.map +1 -1
  104. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CaseOpenshiftClusterId/CaseOpenshiftClusterId.js +15 -14
  105. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CasePhoneNumberConfirmAlert.d.ts +1 -1
  106. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CasePhoneNumberConfirmAlert.d.ts.map +1 -1
  107. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CasePhoneNumberConfirmAlert.js +21 -11
  108. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CaseReferenceNumber.d.ts +2 -1
  109. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CaseReferenceNumber.d.ts.map +1 -1
  110. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CaseReferenceNumber.js +7 -7
  111. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CaseSbrGroups.d.ts +2 -1
  112. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CaseSbrGroups.d.ts.map +1 -1
  113. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CaseSbrGroups.js +3 -3
  114. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/ProductVersion.d.ts +2 -1
  115. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/ProductVersion.d.ts.map +1 -1
  116. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/ProductVersion.js +1 -1
  117. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/SFDCUrl.d.ts +3 -0
  118. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/SFDCUrl.d.ts.map +1 -0
  119. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/SFDCUrl.js +37 -0
  120. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/Summary.d.ts +2 -1
  121. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/Summary.d.ts.map +1 -1
  122. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/Summary.js +9 -9
  123. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/useCustomEmails.js +1 -1
  124. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/CaseAttachment.d.ts.map +1 -1
  125. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/CaseAttachment.js +10 -8
  126. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/CaseChat.js +1 -1
  127. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/CaseComments.d.ts.map +1 -1
  128. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/CaseComments.js +29 -11
  129. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/CaseDiscussion.d.ts +1 -1
  130. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/CaseDiscussion.d.ts.map +1 -1
  131. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/CaseDiscussion.js +89 -31
  132. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/CaseExternalTrackerUpdate.d.ts.map +1 -1
  133. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/CaseExternalTrackerUpdate.js +6 -4
  134. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/CommentSearch.d.ts +2 -1
  135. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/CommentSearch.d.ts.map +1 -1
  136. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/CommentSearch.js +4 -3
  137. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/DiscussionItemLink.d.ts +1 -1
  138. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/DiscussionItemLink.d.ts.map +1 -1
  139. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/DiscussionItemLink.js +1 -1
  140. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/JumpAndCopyLink.d.ts +2 -1
  141. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/JumpAndCopyLink.d.ts.map +1 -1
  142. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/PostComment/useMarkdownFileUploader.d.ts.map +1 -1
  143. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/PostComment.d.ts +2 -1
  144. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/PostComment.d.ts.map +1 -1
  145. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/PostComment.js +29 -9
  146. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/VerifyCaseStatusModal/VerifyCaseStatusModal.d.ts +2 -1
  147. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/VerifyCaseStatusModal/VerifyCaseStatusModal.d.ts.map +1 -1
  148. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/VerifyCaseStatusModal/VerifyCaseStatusModal.js +4 -3
  149. package/lib/esm/components/CaseEditView/Tabs/CaseHistory/CaseHistory.css +0 -0
  150. package/lib/esm/components/CaseEditView/Tabs/CaseHistory/CaseHistory.d.ts +5 -2
  151. package/lib/esm/components/CaseEditView/Tabs/CaseHistory/CaseHistory.d.ts.map +1 -1
  152. package/lib/esm/components/CaseEditView/Tabs/CaseHistory/CaseHistory.js +7 -3
  153. package/lib/esm/components/CaseEditView/Tabs/CaseHistory/Timeline.css +331 -0
  154. package/lib/esm/components/CaseEditView/Tabs/CaseHistory/Timeline.d.ts +7 -0
  155. package/lib/esm/components/CaseEditView/Tabs/CaseHistory/Timeline.d.ts.map +1 -0
  156. package/lib/esm/components/CaseEditView/Tabs/CaseHistory/Timeline.js +442 -0
  157. package/lib/esm/components/CaseEditView/Tabs/CasePrivateNotes/CasePrivateNotes.d.ts +3 -2
  158. package/lib/esm/components/CaseEditView/Tabs/CasePrivateNotes/CasePrivateNotes.d.ts.map +1 -1
  159. package/lib/esm/components/CaseEditView/Tabs/CasePrivateNotes/CasePrivateNotes.js +5 -5
  160. package/lib/esm/components/CaseEditView/Tabs/RMEEscalations/RMEEscalationList.d.ts +2 -1
  161. package/lib/esm/components/CaseEditView/Tabs/RMEEscalations/RMEEscalationList.d.ts.map +1 -1
  162. package/lib/esm/components/CaseEditView/Tabs/RMEEscalations/RMEEscalationList.js +4 -4
  163. package/lib/esm/components/CaseEditView/Tabs/RelatedTasks/RelatedTasks.d.ts +4 -0
  164. package/lib/esm/components/CaseEditView/Tabs/RelatedTasks/RelatedTasks.d.ts.map +1 -0
  165. package/lib/esm/components/CaseEditView/Tabs/RelatedTasks/RelatedTasks.js +118 -0
  166. package/lib/esm/components/CaseEditView/index.d.ts +2 -8
  167. package/lib/esm/components/CaseEditView/index.d.ts.map +1 -1
  168. package/lib/esm/components/CaseEditView/index.js +8 -13
  169. package/lib/esm/components/CaseInformation/CaseGroup.d.ts +2 -1
  170. package/lib/esm/components/CaseInformation/CaseGroup.d.ts.map +1 -1
  171. package/lib/esm/components/CaseInformation/CaseGroup.js +72 -26
  172. package/lib/esm/components/CaseInformation/CaseInformation.d.ts +2 -1
  173. package/lib/esm/components/CaseInformation/CaseInformation.d.ts.map +1 -1
  174. package/lib/esm/components/CaseInformation/CaseInformation.js +3 -5
  175. package/lib/esm/components/CaseInformation/CaseType.d.ts +2 -1
  176. package/lib/esm/components/CaseInformation/CaseType.d.ts.map +1 -1
  177. package/lib/esm/components/CaseInformation/ContactPhoneNumber.d.ts +2 -1
  178. package/lib/esm/components/CaseInformation/ContactPhoneNumber.d.ts.map +1 -1
  179. package/lib/esm/components/CaseInformation/ContactPhoneNumber.js +230 -55
  180. package/lib/esm/components/CaseInformation/ContactPhoneNumberAlert.d.ts +2 -1
  181. package/lib/esm/components/CaseInformation/ContactPhoneNumberAlert.d.ts.map +1 -1
  182. package/lib/esm/components/CaseInformation/ContactPhoneNumberAlert.js +33 -14
  183. package/lib/esm/components/CaseInformation/ContactPhoneNumberPopOver.d.ts +2 -1
  184. package/lib/esm/components/CaseInformation/ContactPhoneNumberPopOver.d.ts.map +1 -1
  185. package/lib/esm/components/CaseInformation/ContactPhoneNumberPopOver.js +1 -1
  186. package/lib/esm/components/CaseInformation/Description.d.ts +3 -1
  187. package/lib/esm/components/CaseInformation/Description.d.ts.map +1 -1
  188. package/lib/esm/components/CaseInformation/Description.js +58 -28
  189. package/lib/esm/components/CaseInformation/FileDiag.d.ts +2 -1
  190. package/lib/esm/components/CaseInformation/FileDiag.d.ts.map +1 -1
  191. package/lib/esm/components/CaseInformation/Fts.d.ts +2 -1
  192. package/lib/esm/components/CaseInformation/Fts.d.ts.map +1 -1
  193. package/lib/esm/components/CaseInformation/Fts.js +38 -8
  194. package/lib/esm/components/CaseInformation/MandatoryPhonePopOver.d.ts +4 -0
  195. package/lib/esm/components/CaseInformation/MandatoryPhonePopOver.d.ts.map +1 -0
  196. package/lib/esm/components/CaseInformation/MandatoryPhonePopOver.js +26 -0
  197. package/lib/esm/components/CaseInformation/OpenCaseIssue.d.ts +3 -1
  198. package/lib/esm/components/CaseInformation/OpenCaseIssue.d.ts.map +1 -1
  199. package/lib/esm/components/CaseInformation/OpenCaseIssue.js +54 -29
  200. package/lib/esm/components/CaseInformation/Severity.d.ts +2 -1
  201. package/lib/esm/components/CaseInformation/Severity.d.ts.map +1 -1
  202. package/lib/esm/components/CaseInformation/Severity.js +18 -32
  203. package/lib/esm/components/CaseInformation/SupportLevel.d.ts +2 -1
  204. package/lib/esm/components/CaseInformation/SupportLevel.d.ts.map +1 -1
  205. package/lib/esm/components/CaseInformation/SupportLevel.js +9 -5
  206. package/lib/esm/components/CaseManagement/CaseLanguageSelector.d.ts +2 -1
  207. package/lib/esm/components/CaseManagement/CaseLanguageSelector.d.ts.map +1 -1
  208. package/lib/esm/components/CaseManagement/CaseLanguageSelector.js +3 -2
  209. package/lib/esm/components/CaseManagement/CaseManagement.d.ts +2 -1
  210. package/lib/esm/components/CaseManagement/CaseManagement.d.ts.map +1 -1
  211. package/lib/esm/components/CaseManagement/CaseManagement.js +10 -7
  212. package/lib/esm/components/CaseManagement/Cep.d.ts +2 -1
  213. package/lib/esm/components/CaseManagement/Cep.d.ts.map +1 -1
  214. package/lib/esm/components/CaseManagement/Cep.js +37 -21
  215. package/lib/esm/components/CaseManagement/ESSRemoteSessionCheckBox.d.ts +2 -1
  216. package/lib/esm/components/CaseManagement/ESSRemoteSessionCheckBox.d.ts.map +1 -1
  217. package/lib/esm/components/CaseManagement/ESSRemoteSessionCheckBox.js +14 -13
  218. package/lib/esm/components/CaseManagement/NoClusterIDReasonSelector.d.ts +2 -1
  219. package/lib/esm/components/CaseManagement/NoClusterIDReasonSelector.d.ts.map +1 -1
  220. package/lib/esm/components/CaseManagement/NoClusterIDReasonSelector.js +3 -3
  221. package/lib/esm/components/CaseManagement/OpenReferenceNumber.d.ts +2 -1
  222. package/lib/esm/components/CaseManagement/OpenReferenceNumber.d.ts.map +1 -1
  223. package/lib/esm/components/CaseManagement/OpenShiftClusterId.d.ts +6 -5
  224. package/lib/esm/components/CaseManagement/OpenShiftClusterId.d.ts.map +1 -1
  225. package/lib/esm/components/CaseManagement/OpenShiftClusterId.js +46 -28
  226. package/lib/esm/components/CaseManagement/OpenShiftV3Inputbox.d.ts +2 -1
  227. package/lib/esm/components/CaseManagement/OpenShiftV3Inputbox.d.ts.map +1 -1
  228. package/lib/esm/components/CaseManagement/OpenShiftV3Inputbox.js +1 -1
  229. package/lib/esm/components/CaseManagement/OpenshiftDropdownV4.d.ts +2 -1
  230. package/lib/esm/components/CaseManagement/OpenshiftDropdownV4.d.ts.map +1 -1
  231. package/lib/esm/components/CaseManagement/OpenshiftDropdownV4.js +7 -6
  232. package/lib/esm/components/CaseManagement/RHAssociatesSelector.d.ts +2 -1
  233. package/lib/esm/components/CaseManagement/RHAssociatesSelector.d.ts.map +1 -1
  234. package/lib/esm/components/CaseManagement/RHAssociatesSelector.js +19 -13
  235. package/lib/esm/components/CaseManagement/SendNotifications/AddContactToGroupModal.d.ts +2 -1
  236. package/lib/esm/components/CaseManagement/SendNotifications/AddContactToGroupModal.d.ts.map +1 -1
  237. package/lib/esm/components/CaseManagement/SendNotifications/AddCustomEmailToAccountModal.d.ts +2 -1
  238. package/lib/esm/components/CaseManagement/SendNotifications/AddCustomEmailToAccountModal.d.ts.map +1 -1
  239. package/lib/esm/components/CaseManagement/SendNotifications/AddCustomEmailToAccountModal.js +16 -15
  240. package/lib/esm/components/CaseManagement/SendNotifications/CaseContactSelector.d.ts +2 -1
  241. package/lib/esm/components/CaseManagement/SendNotifications/CaseContactSelector.d.ts.map +1 -1
  242. package/lib/esm/components/CaseManagement/SendNotifications/CaseContactSelector.js +43 -37
  243. package/lib/esm/components/CaseManagement/SendNotifications/NonOrgCaseNotifyeesSelector.d.ts +1 -1
  244. package/lib/esm/components/CaseManagement/SendNotifications/NonOrgCaseNotifyeesSelector.d.ts.map +1 -1
  245. package/lib/esm/components/CaseManagement/SendNotifications/NonOrgCaseNotifyeesSelector.js +3 -5
  246. package/lib/esm/components/ConfirmationModals/NoAttachmentSelectedModal.d.ts +2 -1
  247. package/lib/esm/components/ConfirmationModals/NoAttachmentSelectedModal.d.ts.map +1 -1
  248. package/lib/esm/components/ConfirmationModals/NoAttachmentSelectedModal.js +3 -3
  249. package/lib/esm/components/ConfirmationModals/PreCaseConfirmationModals.d.ts +2 -1
  250. package/lib/esm/components/ConfirmationModals/PreCaseConfirmationModals.d.ts.map +1 -1
  251. package/lib/esm/components/ConfirmationModals/PreCaseConfirmationModals.js +0 -2
  252. package/lib/esm/components/ConfirmationModals/PreferredSecureSupportModal.d.ts +2 -1
  253. package/lib/esm/components/ConfirmationModals/PreferredSecureSupportModal.d.ts.map +1 -1
  254. package/lib/esm/components/ConfirmationModals/ROCMModal.d.ts +2 -1
  255. package/lib/esm/components/ConfirmationModals/ROCMModal.d.ts.map +1 -1
  256. package/lib/esm/components/Cve/CveItem.d.ts +10 -0
  257. package/lib/esm/components/Cve/CveItem.d.ts.map +1 -0
  258. package/lib/esm/components/Cve/CveItem.js +139 -0
  259. package/lib/esm/components/Cve/CveModal.d.ts +3 -0
  260. package/lib/esm/components/Cve/CveModal.d.ts.map +1 -0
  261. package/lib/esm/components/Cve/CveModal.js +44 -0
  262. package/lib/esm/components/Cve/CvePanel.d.ts +7 -0
  263. package/lib/esm/components/Cve/CvePanel.d.ts.map +1 -0
  264. package/lib/esm/components/Cve/CvePanel.js +23 -0
  265. package/lib/esm/components/Cve/CveSidebar.d.ts +3 -0
  266. package/lib/esm/components/Cve/CveSidebar.d.ts.map +1 -0
  267. package/lib/esm/components/Cve/CveSidebar.js +23 -0
  268. package/lib/esm/components/EditDescription/EditDescription.d.ts +2 -1
  269. package/lib/esm/components/EditDescription/EditDescription.d.ts.map +1 -1
  270. package/lib/esm/components/EditDescription/EditDescription.js +1 -6
  271. package/lib/esm/components/IdeaInformation/IdeaInformation.d.ts +2 -1
  272. package/lib/esm/components/IdeaInformation/IdeaInformation.d.ts.map +1 -1
  273. package/lib/esm/components/IdeaInformation/IdeaInformation.js +12 -11
  274. package/lib/esm/components/ImproveCase/FileEARule.d.ts +2 -1
  275. package/lib/esm/components/ImproveCase/FileEARule.d.ts.map +1 -1
  276. package/lib/esm/components/ImproveCase/Hostname.d.ts +2 -1
  277. package/lib/esm/components/ImproveCase/Hostname.d.ts.map +1 -1
  278. package/lib/esm/components/ImproveCase/Hostname.js +3 -3
  279. package/lib/esm/components/ImproveCase/KtQuestions.d.ts +2 -1
  280. package/lib/esm/components/ImproveCase/KtQuestions.d.ts.map +1 -1
  281. package/lib/esm/components/ImproveCase/KtQuestions.js +62 -58
  282. package/lib/esm/components/OpenCase/CaseTypeIcons/BugIcon.d.ts +2 -1
  283. package/lib/esm/components/OpenCase/CaseTypeIcons/BugIcon.d.ts.map +1 -1
  284. package/lib/esm/components/OpenCase/CaseTypeIcons/CertificationIcon.d.ts +2 -1
  285. package/lib/esm/components/OpenCase/CaseTypeIcons/CertificationIcon.d.ts.map +1 -1
  286. package/lib/esm/components/OpenCase/CaseTypeIcons/CustomerServiceIcon.d.ts +2 -1
  287. package/lib/esm/components/OpenCase/CaseTypeIcons/CustomerServiceIcon.d.ts.map +1 -1
  288. package/lib/esm/components/OpenCase/CaseTypeIcons/DocumentationIcon.d.ts +2 -1
  289. package/lib/esm/components/OpenCase/CaseTypeIcons/DocumentationIcon.d.ts.map +1 -1
  290. package/lib/esm/components/OpenCase/CaseTypeIcons/GearIcon.d.ts +2 -1
  291. package/lib/esm/components/OpenCase/CaseTypeIcons/GearIcon.d.ts.map +1 -1
  292. package/lib/esm/components/OpenCase/CaseTypeIcons/IdeaIcon.d.ts +2 -1
  293. package/lib/esm/components/OpenCase/CaseTypeIcons/IdeaIcon.d.ts.map +1 -1
  294. package/lib/esm/components/OpenCase/CaseTypeIcons/RcaIcon.d.ts +2 -1
  295. package/lib/esm/components/OpenCase/CaseTypeIcons/RcaIcon.d.ts.map +1 -1
  296. package/lib/esm/components/OpenCase/OpenCase.d.ts +5 -1
  297. package/lib/esm/components/OpenCase/OpenCase.d.ts.map +1 -1
  298. package/lib/esm/components/OpenCase/OpenCase.js +9 -0
  299. package/lib/esm/components/OpenCase/SupportTypeIcons/BugIcon.d.ts +2 -1
  300. package/lib/esm/components/OpenCase/SupportTypeIcons/BugIcon.d.ts.map +1 -1
  301. package/lib/esm/components/OpenCase/SupportTypeIcons/CertificationIcon.d.ts +2 -1
  302. package/lib/esm/components/OpenCase/SupportTypeIcons/CertificationIcon.d.ts.map +1 -1
  303. package/lib/esm/components/OpenCase/SupportTypeIcons/CustomerServiceIcon.d.ts +2 -1
  304. package/lib/esm/components/OpenCase/SupportTypeIcons/CustomerServiceIcon.d.ts.map +1 -1
  305. package/lib/esm/components/OpenCase/SupportTypeIcons/DocumentationIcon.d.ts +2 -1
  306. package/lib/esm/components/OpenCase/SupportTypeIcons/DocumentationIcon.d.ts.map +1 -1
  307. package/lib/esm/components/OpenCase/SupportTypeIcons/GearIcon.d.ts +2 -1
  308. package/lib/esm/components/OpenCase/SupportTypeIcons/GearIcon.d.ts.map +1 -1
  309. package/lib/esm/components/OpenCase/SupportTypeIcons/IdeaIcon.d.ts +2 -1
  310. package/lib/esm/components/OpenCase/SupportTypeIcons/IdeaIcon.d.ts.map +1 -1
  311. package/lib/esm/components/OpenCase/SupportTypeIcons/RcaIcon.d.ts +2 -1
  312. package/lib/esm/components/OpenCase/SupportTypeIcons/RcaIcon.d.ts.map +1 -1
  313. package/lib/esm/components/OpenCase/SupportTypeSelectorPage.d.ts +2 -1
  314. package/lib/esm/components/OpenCase/SupportTypeSelectorPage.d.ts.map +1 -1
  315. package/lib/esm/components/OpenCase/SupportTypeSelectorPage.js +12 -15
  316. package/lib/esm/components/ProductSelector/AllProductsSelector.d.ts +5 -1
  317. package/lib/esm/components/ProductSelector/AllProductsSelector.d.ts.map +1 -1
  318. package/lib/esm/components/ProductSelector/AllProductsSelector.js +29 -9
  319. package/lib/esm/components/ProductSelector/NewProductDropdownSelector.d.ts +4 -1
  320. package/lib/esm/components/ProductSelector/NewProductDropdownSelector.d.ts.map +1 -1
  321. package/lib/esm/components/ProductSelector/NewProductDropdownSelector.js +21 -6
  322. package/lib/esm/components/ProductSelector/NewProductVersionSelector.d.ts +2 -1
  323. package/lib/esm/components/ProductSelector/NewProductVersionSelector.d.ts.map +1 -1
  324. package/lib/esm/components/ProductSelector/NewProductVersionSelector.js +2 -2
  325. package/lib/esm/components/ProductSelector/ProductSelector.d.ts +8 -2
  326. package/lib/esm/components/ProductSelector/ProductSelector.d.ts.map +1 -1
  327. package/lib/esm/components/ProductSelector/ProductSelector.js +45 -23
  328. package/lib/esm/components/ProductSelector/ProductSelectorLoader.d.ts +2 -1
  329. package/lib/esm/components/ProductSelector/ProductSelectorLoader.d.ts.map +1 -1
  330. package/lib/esm/components/ProductSelector/ProductVersionDropdownSelector.d.ts +3 -0
  331. package/lib/esm/components/ProductSelector/ProductVersionDropdownSelector.d.ts.map +1 -1
  332. package/lib/esm/components/ProductSelector/ProductVersionDropdownSelector.js +10 -2
  333. package/lib/esm/components/Recommendations/AlertToastWrapper.d.ts +3 -0
  334. package/lib/esm/components/Recommendations/AlertToastWrapper.d.ts.map +1 -1
  335. package/lib/esm/components/Recommendations/AlertToastWrapper.js +2 -2
  336. package/lib/esm/components/Recommendations/AsideResults.d.ts +3 -1
  337. package/lib/esm/components/Recommendations/AsideResults.d.ts.map +1 -1
  338. package/lib/esm/components/Recommendations/AsideResults.js +17 -28
  339. package/lib/esm/components/Recommendations/ClusterRecommendationItems.d.ts +2 -1
  340. package/lib/esm/components/Recommendations/ClusterRecommendationItems.d.ts.map +1 -1
  341. package/lib/esm/components/Recommendations/ClusterRecommendationItems.js +8 -5
  342. package/lib/esm/components/Recommendations/ClusterRecommendations.d.ts +2 -1
  343. package/lib/esm/components/Recommendations/ClusterRecommendations.d.ts.map +1 -1
  344. package/lib/esm/components/Recommendations/ClusterRecommendations.js +1 -1
  345. package/lib/esm/components/Recommendations/ClusterRecommendationsModal.d.ts +2 -1
  346. package/lib/esm/components/Recommendations/ClusterRecommendationsModal.d.ts.map +1 -1
  347. package/lib/esm/components/Recommendations/CriticalSolutionsToast.d.ts.map +1 -1
  348. package/lib/esm/components/Recommendations/CriticalSolutionsToast.js +1 -1
  349. package/lib/esm/components/Recommendations/EARules/EARule.d.ts +7 -6
  350. package/lib/esm/components/Recommendations/EARules/EARule.d.ts.map +1 -1
  351. package/lib/esm/components/Recommendations/EARules/EARule.js +7 -6
  352. package/lib/esm/components/Recommendations/EARules/EARuleInfoAccordion.d.ts +3 -1
  353. package/lib/esm/components/Recommendations/EARules/EARuleInfoAccordion.d.ts.map +1 -1
  354. package/lib/esm/components/Recommendations/EARules/EARuleInfoAccordion.js +14 -4
  355. package/lib/esm/components/Recommendations/EARules/EARuleInfoInline.d.ts +2 -1
  356. package/lib/esm/components/Recommendations/EARules/EARuleInfoInline.d.ts.map +1 -1
  357. package/lib/esm/components/Recommendations/EARules/EARuleInfoInline.js +13 -12
  358. package/lib/esm/components/Recommendations/EARules/EARuleWidget.d.ts +2 -1
  359. package/lib/esm/components/Recommendations/EARules/EARuleWidget.d.ts.map +1 -1
  360. package/lib/esm/components/Recommendations/EARules/EARuleWidget.js +6 -2
  361. package/lib/esm/components/Recommendations/InsightsResults.d.ts +2 -1
  362. package/lib/esm/components/Recommendations/InsightsResults.d.ts.map +1 -1
  363. package/lib/esm/components/Recommendations/InsightsResults.js +20 -7
  364. package/lib/esm/components/Recommendations/InsightsRuleInfo.d.ts +3 -1
  365. package/lib/esm/components/Recommendations/InsightsRuleInfo.d.ts.map +1 -1
  366. package/lib/esm/components/Recommendations/InsightsRuleInfo.js +17 -14
  367. package/lib/esm/components/Recommendations/RecommendationFeedbackModal.d.ts +2 -1
  368. package/lib/esm/components/Recommendations/RecommendationFeedbackModal.d.ts.map +1 -1
  369. package/lib/esm/components/Recommendations/RecommendationFeedbackModal.js +1 -1
  370. package/lib/esm/components/Recommendations/RecommendationInfoBox.d.ts +3 -0
  371. package/lib/esm/components/Recommendations/RecommendationInfoBox.d.ts.map +1 -0
  372. package/lib/esm/components/Recommendations/RecommendationInfoBox.js +28 -0
  373. package/lib/esm/components/Recommendations/Recommendations.d.ts +5 -1
  374. package/lib/esm/components/Recommendations/Recommendations.d.ts.map +1 -1
  375. package/lib/esm/components/Recommendations/Recommendations.js +107 -41
  376. package/lib/esm/components/Recommendations/RecommendationsLoader.d.ts +3 -0
  377. package/lib/esm/components/Recommendations/RecommendationsLoader.d.ts.map +1 -0
  378. package/lib/esm/components/Recommendations/RecommendationsLoader.js +11 -0
  379. package/lib/esm/components/Recommendations/RulesModal.d.ts +2 -1
  380. package/lib/esm/components/Recommendations/RulesModal.d.ts.map +1 -1
  381. package/lib/esm/components/Recommendations/RulesModal.js +8 -14
  382. package/lib/esm/components/Recommendations/WatsonxAiIcon.d.ts +10 -0
  383. package/lib/esm/components/Recommendations/WatsonxAiIcon.d.ts.map +1 -0
  384. package/lib/esm/components/Recommendations/WatsonxAiIcon.js +13 -0
  385. package/lib/esm/components/RemoteRider/RemoteRiderAcceptanceModal.d.ts +2 -1
  386. package/lib/esm/components/RemoteRider/RemoteRiderAcceptanceModal.d.ts.map +1 -1
  387. package/lib/esm/components/RemoteRider/RemoteRiderBanner.d.ts +2 -1
  388. package/lib/esm/components/RemoteRider/RemoteRiderBanner.d.ts.map +1 -1
  389. package/lib/esm/components/RemoteRider/RemoteRiderBanner.js +1 -1
  390. package/lib/esm/components/Review/Review.d.ts +3 -2
  391. package/lib/esm/components/Review/Review.d.ts.map +1 -1
  392. package/lib/esm/components/Review/Review.js +14 -11
  393. package/lib/esm/components/SessionRestore/SessionItem.d.ts +2 -1
  394. package/lib/esm/components/SessionRestore/SessionItem.d.ts.map +1 -1
  395. package/lib/esm/components/SessionRestore/SessionItem.js +4 -4
  396. package/lib/esm/components/SessionRestore/SessionRestore.d.ts +2 -1
  397. package/lib/esm/components/SessionRestore/SessionRestore.d.ts.map +1 -1
  398. package/lib/esm/components/SessionRestore/SessionRestore.js +51 -35
  399. package/lib/esm/components/SessionRestore/SessionRestoreCard.d.ts +2 -1
  400. package/lib/esm/components/SessionRestore/SessionRestoreCard.d.ts.map +1 -1
  401. package/lib/esm/components/SessionRestore/SessionRestoreCard.js +9 -16
  402. package/lib/esm/components/SubmitCase/ResubmitToast.d.ts +3 -0
  403. package/lib/esm/components/SubmitCase/ResubmitToast.d.ts.map +1 -1
  404. package/lib/esm/components/SubmitCase/ResubmitToast.js +3 -1
  405. package/lib/esm/components/SubmitCase/SubmitCase.d.ts +2 -1
  406. package/lib/esm/components/SubmitCase/SubmitCase.d.ts.map +1 -1
  407. package/lib/esm/components/SubmitCase/SubmitCase.js +122 -33
  408. package/lib/esm/components/Suggestions/Suggestions.d.ts +2 -1
  409. package/lib/esm/components/Suggestions/Suggestions.d.ts.map +1 -1
  410. package/lib/esm/components/Suggestions/Suggestions.js +10 -3
  411. package/lib/esm/components/Suggestions/TopContent.d.ts +2 -2
  412. package/lib/esm/components/Suggestions/TopContent.d.ts.map +1 -1
  413. package/lib/esm/components/Suggestions/TopContent.js +58 -13
  414. package/lib/esm/components/TroubleshootSection/TroubleshootSection.d.ts +2 -1
  415. package/lib/esm/components/TroubleshootSection/TroubleshootSection.d.ts.map +1 -1
  416. package/lib/esm/components/TroubleshootSection/TroubleshootSection.js +25 -34
  417. package/lib/esm/components/UpdateSeverityModal/UpdateSeverityModal.d.ts +2 -1
  418. package/lib/esm/components/UpdateSeverityModal/UpdateSeverityModal.d.ts.map +1 -1
  419. package/lib/esm/components/UpdateSeverityModal/UpdateSeverityModal.js +176 -75
  420. package/lib/esm/components/shared/Constants.d.ts +5 -4
  421. package/lib/esm/components/shared/Constants.d.ts.map +1 -1
  422. package/lib/esm/components/shared/Rule.d.ts +2 -1
  423. package/lib/esm/components/shared/Rule.d.ts.map +1 -1
  424. package/lib/esm/components/shared/Rule.js +6 -6
  425. package/lib/esm/components/shared/fileUpload/FileLister.d.ts +3 -1
  426. package/lib/esm/components/shared/fileUpload/FileLister.d.ts.map +1 -1
  427. package/lib/esm/components/shared/fileUpload/FileLister.js +8 -7
  428. package/lib/esm/components/shared/fileUpload/FileUpload.d.ts +2 -1
  429. package/lib/esm/components/shared/fileUpload/FileUpload.d.ts.map +1 -1
  430. package/lib/esm/components/shared/fileUpload/FileUploader.d.ts +2 -1
  431. package/lib/esm/components/shared/fileUpload/FileUploader.d.ts.map +1 -1
  432. package/lib/esm/components/shared/fileUpload/SectionFileUploader.d.ts +2 -1
  433. package/lib/esm/components/shared/fileUpload/SectionFileUploader.d.ts.map +1 -1
  434. package/lib/esm/components/shared/fileUpload/UploadButton.d.ts +2 -2
  435. package/lib/esm/components/shared/fileUpload/UploadButton.d.ts.map +1 -1
  436. package/lib/esm/components/shared/fileUpload/WidgetFileUploader.d.ts +1 -1
  437. package/lib/esm/components/shared/fileUpload/WidgetFileUploader.d.ts.map +1 -1
  438. package/lib/esm/components/shared/fileUpload/WidgetFileUploader.js +9 -9
  439. package/lib/esm/components/shared/fileUpload/common/FileUploaderInfoIcon.d.ts +2 -1
  440. package/lib/esm/components/shared/fileUpload/common/FileUploaderInfoIcon.d.ts.map +1 -1
  441. package/lib/esm/components/shared/fileUpload/common/FileUploaderInfoIcon.js +1 -1
  442. package/lib/esm/components/shared/fileUpload/css/fileSelector.css +1 -1
  443. package/lib/esm/components/shared/fileUpload/fileSelectors/FileSelectorButton.d.ts +2 -1
  444. package/lib/esm/components/shared/fileUpload/fileSelectors/FileSelectorButton.d.ts.map +1 -1
  445. package/lib/esm/components/shared/fileUpload/fileSelectors/FileSelectorButton.js +4 -3
  446. package/lib/esm/components/shared/fileUpload/fileSelectors/InputFileSelector.d.ts +2 -1
  447. package/lib/esm/components/shared/fileUpload/fileSelectors/InputFileSelector.d.ts.map +1 -1
  448. package/lib/esm/components/shared/fileUpload/fileSelectors/WidgetFileSelector.d.ts +3 -2
  449. package/lib/esm/components/shared/fileUpload/fileSelectors/WidgetFileSelector.d.ts.map +1 -1
  450. package/lib/esm/components/shared/fileUpload/fileSelectors/WidgetFileSelector.js +15 -6
  451. package/lib/esm/components/shared/fileUpload/fileSelectors/WidgetFileSelectorImage.d.ts +2 -1
  452. package/lib/esm/components/shared/fileUpload/fileSelectors/WidgetFileSelectorImage.d.ts.map +1 -1
  453. package/lib/esm/components/shared/fileUpload/fileSelectors/WidgetFileSelectorImage.js +3 -3
  454. package/lib/esm/components/shared/fileUpload/reducer/AttachmentHelper.d.ts +23 -23
  455. package/lib/esm/components/shared/fileUpload/reducer/AttachmentHelper.d.ts.map +1 -1
  456. package/lib/esm/components/shared/fileUpload/reducer/AttachmentHelper.js +14 -8
  457. package/lib/esm/components/shared/fileUpload/reducer/AttachmentReducer.d.ts +2 -2
  458. package/lib/esm/components/shared/fileUpload/reducer/AttachmentReducer.d.ts.map +1 -1
  459. package/lib/esm/components/shared/fileUpload/reducer/AttachmentReducerContext.d.ts +1 -1
  460. package/lib/esm/components/shared/fileUpload/reducer/AttachmentReducerContext.d.ts.map +1 -1
  461. package/lib/esm/components/shared/fileUpload/useFileUploader.d.ts.map +1 -1
  462. package/lib/esm/components/shared/fileUpload/useFileUploader.js +2 -1
  463. package/lib/esm/components/shared/input/ContactSelectorInternal.d.ts +2 -2
  464. package/lib/esm/components/shared/input/ContactSelectorInternal.d.ts.map +1 -1
  465. package/lib/esm/components/shared/useIsSectionValid.d.ts +2 -1
  466. package/lib/esm/components/shared/useIsSectionValid.d.ts.map +1 -1
  467. package/lib/esm/components/shared/useIsSectionValid.js +82 -23
  468. package/lib/esm/components/shared/usePostComment.d.ts.map +1 -1
  469. package/lib/esm/components/shared/usePostComment.js +4 -2
  470. package/lib/esm/components/shared/utils.d.ts +4 -1
  471. package/lib/esm/components/shared/utils.d.ts.map +1 -1
  472. package/lib/esm/components/shared/utils.js +17 -5
  473. package/lib/esm/components/wizardLayout/GlobalTroubleshootEffects.d.ts +2 -1
  474. package/lib/esm/components/wizardLayout/GlobalTroubleshootEffects.d.ts.map +1 -1
  475. package/lib/esm/components/wizardLayout/GlobalTroubleshootEffects.js +9 -49
  476. package/lib/esm/components/wizardLayout/MainSection.d.ts +4 -1
  477. package/lib/esm/components/wizardLayout/MainSection.d.ts.map +1 -1
  478. package/lib/esm/components/wizardLayout/MainSection.js +28 -4
  479. package/lib/esm/components/wizardLayout/NewFeatureModal.d.ts +4 -0
  480. package/lib/esm/components/wizardLayout/NewFeatureModal.d.ts.map +1 -0
  481. package/lib/esm/components/wizardLayout/NewFeatureModal.js +38 -0
  482. package/lib/esm/components/wizardLayout/RedHatCustomerPortalIcon.d.ts +3 -0
  483. package/lib/esm/components/wizardLayout/RedHatCustomerPortalIcon.d.ts.map +1 -0
  484. package/lib/esm/components/wizardLayout/RedHatCustomerPortalIcon.js +31 -0
  485. package/lib/esm/components/wizardLayout/WizardAside.d.ts +3 -2
  486. package/lib/esm/components/wizardLayout/WizardAside.d.ts.map +1 -1
  487. package/lib/esm/components/wizardLayout/WizardAside.js +19 -10
  488. package/lib/esm/components/wizardLayout/WizardLayout.d.ts +2 -1
  489. package/lib/esm/components/wizardLayout/WizardLayout.d.ts.map +1 -1
  490. package/lib/esm/components/wizardLayout/WizardLayout.js +50 -47
  491. package/lib/esm/components/wizardLayout/WizardMain.d.ts +3 -2
  492. package/lib/esm/components/wizardLayout/WizardMain.d.ts.map +1 -1
  493. package/lib/esm/components/wizardLayout/WizardMain.js +31 -4
  494. package/lib/esm/components/wizardLayout/WizardNavigation.d.ts +11 -3
  495. package/lib/esm/components/wizardLayout/WizardNavigation.d.ts.map +1 -1
  496. package/lib/esm/components/wizardLayout/WizardNavigation.js +137 -20
  497. package/lib/esm/components/wizardLayout/index.d.ts +2 -3
  498. package/lib/esm/components/wizardLayout/index.d.ts.map +1 -1
  499. package/lib/esm/components/wizardLayout/index.js +4 -11
  500. package/lib/esm/constants/caseDetailsConstants.d.ts +9 -3
  501. package/lib/esm/constants/caseDetailsConstants.d.ts.map +1 -1
  502. package/lib/esm/constants/caseDetailsConstants.js +9 -2
  503. package/lib/esm/context/CaseContext.d.ts +1 -1
  504. package/lib/esm/context/CaseContext.d.ts.map +1 -1
  505. package/lib/esm/context/CaseContext.js +1 -1
  506. package/lib/esm/context/CaseDetailsPageContext.d.ts +1 -1
  507. package/lib/esm/context/CaseDetailsPageContext.d.ts.map +1 -1
  508. package/lib/esm/context/CaseDiscussionTabContext.d.ts +1 -1
  509. package/lib/esm/context/CaseDiscussionTabContext.d.ts.map +1 -1
  510. package/lib/esm/context/CaseOverviewContext.d.ts +8 -0
  511. package/lib/esm/context/CaseOverviewContext.d.ts.map +1 -0
  512. package/lib/esm/context/CaseOverviewContext.js +10 -0
  513. package/lib/esm/context/ClusterRecommendationsContext.d.ts +1 -1
  514. package/lib/esm/context/ClusterRecommendationsContext.d.ts.map +1 -1
  515. package/lib/esm/context/RecommendationContext.d.ts +1 -1
  516. package/lib/esm/context/RecommendationContext.d.ts.map +1 -1
  517. package/lib/esm/context/RootTroubleshootProvider.d.ts +2 -1
  518. package/lib/esm/context/RootTroubleshootProvider.d.ts.map +1 -1
  519. package/lib/esm/context/RouteContext.d.ts +1 -1
  520. package/lib/esm/context/RouteContext.d.ts.map +1 -1
  521. package/lib/esm/context/RulesContext.d.ts +1 -1
  522. package/lib/esm/context/RulesContext.d.ts.map +1 -1
  523. package/lib/esm/context/SessionRestoreContext.d.ts +1 -1
  524. package/lib/esm/context/SessionRestoreContext.d.ts.map +1 -1
  525. package/lib/esm/context/TopContentContext.d.ts +1 -1
  526. package/lib/esm/context/TopContentContext.d.ts.map +1 -1
  527. package/lib/esm/css/app.css +43 -14
  528. package/lib/esm/css/case.css +4 -4
  529. package/lib/esm/css/productSelector.css +7 -3
  530. package/lib/esm/css/results.css +6 -0
  531. package/lib/esm/enums/cache.d.ts +2 -2
  532. package/lib/esm/enums/cache.d.ts.map +1 -1
  533. package/lib/esm/hooks/useFetchCVEData.d.ts +5 -0
  534. package/lib/esm/hooks/useFetchCVEData.d.ts.map +1 -0
  535. package/lib/esm/hooks/useFetchCVEData.js +138 -0
  536. package/lib/esm/hooks/useParseRuleMarkdown.d.ts.map +1 -1
  537. package/lib/esm/hooks/useParseRuleMarkdown.js +1 -1
  538. package/lib/esm/hooks/useS3Upload.js +2 -2
  539. package/lib/esm/hooks/useWizard.d.ts +10 -1
  540. package/lib/esm/hooks/useWizard.d.ts.map +1 -1
  541. package/lib/esm/hooks/useWizard.js +27 -15
  542. package/lib/esm/i18n/template-de.d.ts +52 -0
  543. package/lib/esm/i18n/template-de.d.ts.map +1 -1
  544. package/lib/esm/i18n/template-de.js +55 -0
  545. package/lib/esm/i18n/template-es.d.ts +51 -0
  546. package/lib/esm/i18n/template-es.d.ts.map +1 -1
  547. package/lib/esm/i18n/template-es.js +53 -0
  548. package/lib/esm/i18n/template-fr.d.ts +6 -0
  549. package/lib/esm/i18n/template-fr.d.ts.map +1 -1
  550. package/lib/esm/i18n/template-fr.js +6 -0
  551. package/lib/esm/i18n/template-it.d.ts +52 -0
  552. package/lib/esm/i18n/template-it.d.ts.map +1 -1
  553. package/lib/esm/i18n/template-it.js +54 -0
  554. package/lib/esm/i18n/template-jp.d.ts +9 -0
  555. package/lib/esm/i18n/template-jp.d.ts.map +1 -1
  556. package/lib/esm/i18n/template-jp.js +11 -2
  557. package/lib/esm/i18n/template-ko.d.ts +9 -0
  558. package/lib/esm/i18n/template-ko.d.ts.map +1 -1
  559. package/lib/esm/i18n/template-ko.js +10 -1
  560. package/lib/esm/i18n/template-pt.d.ts +50 -0
  561. package/lib/esm/i18n/template-pt.d.ts.map +1 -1
  562. package/lib/esm/i18n/template-pt.js +53 -0
  563. package/lib/esm/i18n/template-zh.d.ts +9 -0
  564. package/lib/esm/i18n/template-zh.d.ts.map +1 -1
  565. package/lib/esm/i18n/template-zh.js +9 -0
  566. package/lib/esm/index.d.ts +0 -1
  567. package/lib/esm/index.d.ts.map +1 -1
  568. package/lib/esm/index.js +0 -1
  569. package/lib/esm/models/caseCreationWorkflows.d.ts +27 -0
  570. package/lib/esm/models/caseCreationWorkflows.d.ts.map +1 -0
  571. package/lib/esm/models/caseCreationWorkflows.js +1 -0
  572. package/lib/esm/reducers/CaseConstNTypes.d.ts +42 -13
  573. package/lib/esm/reducers/CaseConstNTypes.d.ts.map +1 -1
  574. package/lib/esm/reducers/CaseConstNTypes.js +62 -31
  575. package/lib/esm/reducers/CaseDetailsPageReducer.d.ts +2 -2
  576. package/lib/esm/reducers/CaseDetailsPageReducer.d.ts.map +1 -1
  577. package/lib/esm/reducers/CaseDetailsPageReducer.js +1 -1
  578. package/lib/esm/reducers/CaseDiscussionTabReducer.d.ts +5 -4
  579. package/lib/esm/reducers/CaseDiscussionTabReducer.d.ts.map +1 -1
  580. package/lib/esm/reducers/CaseDiscussionTabReducer.js +7 -3
  581. package/lib/esm/reducers/CaseHelpers.d.ts +1 -0
  582. package/lib/esm/reducers/CaseHelpers.d.ts.map +1 -1
  583. package/lib/esm/reducers/CaseHelpers.js +21 -25
  584. package/lib/esm/reducers/CaseOverviewReducer.d.ts +3 -3
  585. package/lib/esm/reducers/CaseOverviewReducer.d.ts.map +1 -1
  586. package/lib/esm/reducers/CaseReducer.d.ts +5 -5
  587. package/lib/esm/reducers/CaseReducer.d.ts.map +1 -1
  588. package/lib/esm/reducers/CaseReducer.js +137 -70
  589. package/lib/esm/reducers/ClusterRecommendationsReducer.d.ts +2 -2
  590. package/lib/esm/reducers/ClusterRecommendationsReducer.d.ts.map +1 -1
  591. package/lib/esm/reducers/RecommendationsReducer.d.ts +6 -4
  592. package/lib/esm/reducers/RecommendationsReducer.d.ts.map +1 -1
  593. package/lib/esm/reducers/RecommendationsReducer.js +12 -9
  594. package/lib/esm/reducers/RouteConstNTypes.d.ts +6 -2
  595. package/lib/esm/reducers/RouteConstNTypes.d.ts.map +1 -1
  596. package/lib/esm/reducers/RouteConstNTypes.js +10 -5
  597. package/lib/esm/reducers/RouteReducer.d.ts +2 -2
  598. package/lib/esm/reducers/RouteReducer.d.ts.map +1 -1
  599. package/lib/esm/reducers/RulesReducer.d.ts +2 -2
  600. package/lib/esm/reducers/RulesReducer.d.ts.map +1 -1
  601. package/lib/esm/reducers/SessionRestoreReducer.d.ts +20 -16
  602. package/lib/esm/reducers/SessionRestoreReducer.d.ts.map +1 -1
  603. package/lib/esm/reducers/SessionRestoreReducer.js +80 -44
  604. package/lib/esm/reducers/TopContentReducer.d.ts +2 -2
  605. package/lib/esm/reducers/TopContentReducer.d.ts.map +1 -1
  606. package/lib/esm/scss/_main.scss +319 -51
  607. package/lib/esm/scss/_pf-overrides.scss +792 -0
  608. package/lib/esm/scss/index.scss +1 -7
  609. package/lib/esm/utils/caseOpenshiftClusterIdUtils.d.ts.map +1 -1
  610. package/lib/esm/utils/caseUtils.d.ts +20 -0
  611. package/lib/esm/utils/caseUtils.d.ts.map +1 -0
  612. package/lib/esm/utils/caseUtils.js +58 -0
  613. package/lib/esm/utils/insightRuleInfoUtils.d.ts +4 -0
  614. package/lib/esm/utils/insightRuleInfoUtils.d.ts.map +1 -0
  615. package/lib/esm/utils/insightRuleInfoUtils.js +23 -0
  616. package/lib/esm/utils/routeUtils.d.ts +1 -1
  617. package/lib/esm/utils/routeUtils.d.ts.map +1 -1
  618. package/lib/esm/utils/routeUtils.js +2 -1
  619. package/package.json +54 -50
  620. package/lib/esm/components/CaseEditView/CaseDetailsWarningMessage.d.ts +0 -8
  621. package/lib/esm/components/CaseEditView/CaseDetailsWarningMessage.d.ts.map +0 -1
  622. package/lib/esm/components/CaseEditView/CaseDetailsWarningMessage.js +0 -10
  623. package/lib/esm/components/CaseEditView/CaseSecureSupportAlert.d.ts +0 -8
  624. package/lib/esm/components/CaseEditView/CaseSecureSupportAlert.d.ts.map +0 -1
  625. package/lib/esm/components/CaseEditView/CaseSecureSupportAlert.js +0 -22
  626. package/lib/esm/components/CaseEditView/Tabs/CaseBugzilla/CaseBugzilla.d.ts +0 -5
  627. package/lib/esm/components/CaseEditView/Tabs/CaseBugzilla/CaseBugzilla.d.ts.map +0 -1
  628. package/lib/esm/components/CaseEditView/Tabs/CaseBugzilla/CaseBugzilla.js +0 -29
  629. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CasePhoneNumberSev1ConfirmAlert.d.ts +0 -9
  630. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CasePhoneNumberSev1ConfirmAlert.d.ts.map +0 -1
  631. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CasePhoneNumberSev1ConfirmAlert.js +0 -71
  632. package/lib/esm/components/CaseInformation/ProductNVersion.d.ts +0 -5
  633. package/lib/esm/components/CaseInformation/ProductNVersion.d.ts.map +0 -1
  634. package/lib/esm/components/CaseInformation/ProductNVersion.js +0 -20
  635. package/lib/esm/components/ConfirmationModals/ConfirmedStateSideSupportModal.d.ts +0 -7
  636. package/lib/esm/components/ConfirmationModals/ConfirmedStateSideSupportModal.d.ts.map +0 -1
  637. package/lib/esm/components/ConfirmationModals/ConfirmedStateSideSupportModal.js +0 -21
  638. package/lib/esm/components/Recommendations/ShowRank.d.ts +0 -12
  639. package/lib/esm/components/Recommendations/ShowRank.d.ts.map +0 -1
  640. package/lib/esm/components/Recommendations/ShowRank.js +0 -27
  641. package/lib/esm/hooks/useUserPreference.d.ts +0 -7
  642. package/lib/esm/hooks/useUserPreference.d.ts.map +0 -1
  643. package/lib/esm/hooks/useUserPreference.js +0 -36
  644. package/lib/esm/scss/_pf4-imports.scss +0 -30
  645. package/lib/esm/scss/_pf4-overrides.scss +0 -488
@@ -8,6 +8,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
8
8
  });
9
9
  };
10
10
  import { accounts, kase } from '@cee-eng/hydrajs';
11
+ import { Button } from '@patternfly/react-core';
11
12
  import { ToastNotification } from '@rh-support/components';
12
13
  import { GlobalMetadataStateContext } from '@rh-support/react-context';
13
14
  import { ability, CaseDetailsFields, resourceActions, resources } from '@rh-support/user-permissions';
@@ -16,8 +17,6 @@ import find from 'lodash/find';
16
17
  import get from 'lodash/get';
17
18
  import isEmpty from 'lodash/isEmpty';
18
19
  import isEqual from 'lodash/isEqual';
19
- import map from 'lodash/map';
20
- import merge from 'lodash/merge';
21
20
  import React, { useContext, useEffect, useState } from 'react';
22
21
  import { Typeahead } from 'react-bootstrap-typeahead';
23
22
  import { Trans, useTranslation } from 'react-i18next';
@@ -26,6 +25,7 @@ import { getTnCUrl } from './TnC';
26
25
  export function ShareWithPartner(props) {
27
26
  const [selected, setSelected] = useState([]);
28
27
  const [TnCUrl, setTnCUrl] = useState('');
28
+ const [isUpdating, setIsUpdating] = useState(false);
29
29
  const { accountNumber, caseNumber } = useCaseSelector((state) => ({
30
30
  accountNumber: state.caseDetails.accountNumberRef,
31
31
  caseNumber: state.caseDetails.caseNumber,
@@ -41,41 +41,41 @@ export function ShareWithPartner(props) {
41
41
  .map((account) => account.accountNum)
42
42
  .includes(props.accountNumber);
43
43
  const canShareWithPartner = hasPartnerShareAccess && !isManagedAccountForLoggedInUser;
44
+ const populatePartners = (caseNumber, caseAccountNumber) => __awaiter(this, void 0, void 0, function* () {
45
+ try {
46
+ const _partners = loggedInUserRights.data.isAccountSameAsLoggedInAccount(accountNumber)
47
+ ? accountManagers
48
+ : yield accounts.getPartnerAccountsForACustomer(caseAccountNumber, null, true);
49
+ const partners = get(_partners, 'data'); // to check
50
+ if (!isEmpty(partners)) {
51
+ const response = yield kase.access.getCaseAccessList(caseNumber);
52
+ const hasAccountLevelAccess = (access) => access.accessScope === 'Account' && access.permission === 'Write';
53
+ const hasCaseLevelAccess = (access) => access.accessScope === 'Case' && access.permission === 'Write';
54
+ const getAccountName = (partnerAccess) => {
55
+ var _a;
56
+ const account = find(partners, (p) => p.accountNum === partnerAccess.accountNumber);
57
+ return (_a = account === null || account === void 0 ? void 0 : account.name) !== null && _a !== void 0 ? _a : '';
58
+ };
59
+ const appendAccountName = (list) => list.map((partnerAccess) => (Object.assign(Object.assign({}, partnerAccess), { accountName: getAccountName(partnerAccess) })));
60
+ const savedPartners = appendAccountName(filter(response.accessList, (p) => hasCaseLevelAccess(p)));
61
+ // remove partner accounts that already have access to case
62
+ const eligiblePartnerAccessList = filter(response.accessList, (access) => {
63
+ return !hasAccountLevelAccess(access) && !hasCaseLevelAccess(access);
64
+ });
65
+ setPartners({ savedPartners, eligiblePartners: appendAccountName(eligiblePartnerAccessList) });
66
+ savedPartners.length > 0 && setSelected(savedPartners);
67
+ }
68
+ }
69
+ catch (e) {
70
+ ToastNotification.addDangerMessage(t('Failed to fetch partners'));
71
+ }
72
+ });
44
73
  useEffect(() => {
45
74
  if (!canShareWithPartner) {
46
75
  return;
47
76
  }
48
- const populatePartners = (caseNumber, caseAccountNumber) => __awaiter(this, void 0, void 0, function* () {
49
- try {
50
- const _partners = loggedInUserRights.data.isAccountSameAsLoggedInAccount(accountNumber)
51
- ? accountManagers
52
- : yield accounts.getPartnerAccountsForACustomer(caseAccountNumber);
53
- const partners = get(_partners, 'data'); // to check
54
- if (!isEmpty(partners)) {
55
- const response = yield kase.access.getCaseAccessList(caseNumber);
56
- const hasAccountLevelAccess = (access) => access.accessScope === 'Account' && access.permission === 'Write';
57
- const hasCaseLevelAccess = (access) => access.accessScope === 'Case' && access.permission === 'Write';
58
- const getAccountName = (partnerAccess) => {
59
- var _a;
60
- const account = find(partners, (p) => p.accountNum === partnerAccess.accountNumber);
61
- return (_a = account === null || account === void 0 ? void 0 : account.name) !== null && _a !== void 0 ? _a : '';
62
- };
63
- const appendAccountName = (list) => map(list, (partnerAccess) => merge({}, partnerAccess, {
64
- accountName: getAccountName(partnerAccess),
65
- }));
66
- const savedPartners = appendAccountName(filter(response.accessList, (p) => hasCaseLevelAccess(p)));
67
- const eligiblePartnerAccessList = filter(response.accessList, (access) => {
68
- return !hasAccountLevelAccess(access) && !hasCaseLevelAccess(access);
69
- });
70
- setPartners({ savedPartners, eligiblePartners: appendAccountName(eligiblePartnerAccessList) });
71
- savedPartners.length > 0 && setSelected(savedPartners);
72
- }
73
- }
74
- catch (e) {
75
- ToastNotification.addDangerMessage(t('Failed to fetch partners'));
76
- }
77
- });
78
77
  !props.isUpdatingPartner && populatePartners(caseNumber, accountNumber);
78
+ // eslint-disable-next-line react-hooks/exhaustive-deps
79
79
  }, [
80
80
  accountNumber,
81
81
  caseNumber,
@@ -98,13 +98,37 @@ export function ShareWithPartner(props) {
98
98
  const url = getTnCUrl(partnerAccNumber);
99
99
  setTnCUrl(url);
100
100
  };
101
+ const removePartnerAccess = () => __awaiter(this, void 0, void 0, function* () {
102
+ try {
103
+ setIsUpdating(true);
104
+ const body = {
105
+ access: {
106
+ accessScope: 'Case',
107
+ permission: 'none',
108
+ accountNumber: partners.savedPartners[0].accountNumber,
109
+ },
110
+ };
111
+ //@ts-ignore
112
+ yield kase.access.patchCaseAccess(caseNumber, body);
113
+ yield populatePartners(caseNumber, accountNumber);
114
+ setSelected([]);
115
+ setIsUpdating(false);
116
+ ToastNotification.addSuccessMessage(t('Partner access removed successfully'));
117
+ }
118
+ catch (e) {
119
+ setIsUpdating(false);
120
+ ToastNotification.addDangerMessage(t('Failed to remove partner access'));
121
+ }
122
+ });
101
123
  if (!canShareWithPartner || (partners.savedPartners.length === 0 && partners.eligiblePartners.length === 0)) {
102
124
  return null;
103
125
  }
104
126
  return (React.createElement("div", { className: `form-group` },
105
- React.createElement("label", { "html-for": "share-with-partner" },
106
- React.createElement(Trans, null, "Share with partner")),
107
- React.createElement(Typeahead, { id: "share-with-partner", labelKey: (option) => `${option.accountName} (${option.accountNumber})`, multiple: false, filterBy: ['accountName', 'accountNumber'], options: partners.eligiblePartners, onChange: onPartnerSelect, selected: selected, disabled: partners.savedPartners.length > 0, "data-tracking-id": "share-with-partner" }),
127
+ React.createElement("label", { className: "react-typeahead-label-wrapper", "html-for": "share-with-partner" },
128
+ React.createElement(Trans, null, "Share with partner"),
129
+ React.createElement(Typeahead, { id: "share-with-partner", labelKey: (option) => `${option.accountName} (${option.accountNumber})`, multiple: false, filterBy: ['accountName', 'accountNumber'], options: partners.eligiblePartners, onChange: onPartnerSelect, selected: selected, disabled: props.isUpdatingPartner || partners.savedPartners.length > 0, "data-tracking-id": "share-with-partner", className: "partner-share-bootstrap-typeahead", isLoading: props.isUpdatingPartner })),
130
+ partners.savedPartners.length > 0 && (React.createElement(Button, { onClick: removePartnerAccess, "aria-label": t('Remove'), isLoading: isUpdating, isDisabled: isUpdating },
131
+ React.createElement(Trans, null, "Remove"))),
108
132
  TnCUrl && (React.createElement("a", { href: TnCUrl, className: "btn btn-app btn-info" },
109
133
  React.createElement(Trans, null, "Share")))));
110
134
  }
@@ -1,4 +1,4 @@
1
- import { RouteComponentProps } from 'react-router';
1
+ import { RouteComponentProps } from 'react-router-dom';
2
2
  export declare function getTnCUrl(accountNumber: any): string;
3
3
  export declare const handleTnCQueryParams: (caseNumber: string, routeProps: RouteComponentProps) => Promise<void>;
4
4
  //# sourceMappingURL=TnC.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"TnC.d.ts","sourceRoot":"","sources":["../../../../../src/components/CaseEditView/ShareCase/TnC.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAEnD,wBAAgB,SAAS,CAAC,aAAa,KAAA,UAQtC;AAMD,eAAO,MAAM,oBAAoB,eAAsB,MAAM,cAAc,mBAAmB,kBAc7F,CAAC"}
1
+ {"version":3,"file":"TnC.d.ts","sourceRoot":"","sources":["../../../../../src/components/CaseEditView/ShareCase/TnC.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAEvD,wBAAgB,SAAS,CAAC,aAAa,KAAA,UAQtC;AAMD,eAAO,MAAM,oBAAoB,eAAsB,MAAM,cAAc,mBAAmB,kBAc7F,CAAC"}
@@ -1,7 +1,8 @@
1
+ import React from 'react';
1
2
  interface IProps {
2
3
  caseNumber: string;
3
4
  }
4
- declare function CaseActionPlan(props: IProps): JSX.Element;
5
+ declare function CaseActionPlan(props: IProps): React.JSX.Element;
5
6
  declare namespace CaseActionPlan {
6
7
  var defaultProps: Partial<IProps>;
7
8
  }
@@ -1 +1 @@
1
- {"version":3,"file":"CaseActionPlan.d.ts","sourceRoot":"","sources":["../../../../../../src/components/CaseEditView/Tabs/CaseActionPlan/CaseActionPlan.tsx"],"names":[],"mappings":"AAqBA,UAAU,MAAM;IACZ,UAAU,EAAE,MAAM,CAAC;CACtB;AAMD,iBAAS,cAAc,CAAC,KAAK,EAAE,MAAM,eAyIpC;kBAzIQ,cAAc;;;AA4IvB,eAAe,cAAc,CAAC"}
1
+ {"version":3,"file":"CaseActionPlan.d.ts","sourceRoot":"","sources":["../../../../../../src/components/CaseEditView/Tabs/CaseActionPlan/CaseActionPlan.tsx"],"names":[],"mappings":"AAYA,OAAO,KAA0C,MAAM,OAAO,CAAC;AAQ/D,UAAU,MAAM;IACZ,UAAU,EAAE,MAAM,CAAC;CACtB;AAMD,iBAAS,cAAc,CAAC,KAAK,EAAE,MAAM,qBAqHpC;kBArHQ,cAAc;;;AAwHvB,eAAe,cAAc,CAAC"}
@@ -7,11 +7,10 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
7
7
  step((generator = generator.apply(thisArg, _arguments || [])).next());
8
8
  });
9
9
  };
10
- import { parseCommentMarkdown } from '@cee-eng/ui-toolkit';
10
+ import { CodeBlock, CodeBlockCode } from '@patternfly/react-core'; // Import PatternFly CodeBlock components
11
11
  import { AlertMessage, AlertType, LoadingIndicator, TextAreaResizable, ToastNotification, } from '@rh-support/components';
12
12
  import { GlobalMetadataStateContext } from '@rh-support/react-context';
13
13
  import { AbilityContext, CaseDetailsFields, resourceActions, resources } from '@rh-support/user-permissions';
14
- import DOMPurify from 'dompurify';
15
14
  import isEmpty from 'lodash/isEmpty';
16
15
  import React, { useContext, useEffect, useState } from 'react';
17
16
  import { Trans, useTranslation } from 'react-i18next';
@@ -71,32 +70,21 @@ function CaseActionPlan(props) {
71
70
  };
72
71
  const isInternalWithoutSFDCUser = loggedInUserRights.data.isInternalWithoutSFDCUser();
73
72
  const isActionPlanEmpty = isEmpty(actionPlanState === null || actionPlanState === void 0 ? void 0 : actionPlanState.trim());
74
- // To parse comment from markdown to html for action plan comments
75
- // DOMPurify - a XSS sanitizer for HTML, MathML and SVG.
76
- const commentMarkdown = (markdown) => {
77
- if (isEmpty(markdown)) {
78
- return { __html: t('No action plan to display.') };
79
- }
80
- var cleanMarkdown = DOMPurify.sanitize(markdown);
81
- const htmlString = parseCommentMarkdown(cleanMarkdown, { showButtonForAttachmentLink: true }, { openLinksInNewTab: true, gfm: true, breaks: true });
82
- return { __html: htmlString };
83
- };
84
73
  return (React.createElement(React.Fragment, null,
85
- React.createElement(AlertMessage, { show: isInternalWithoutSFDCUser, variant: AlertType.WARNING, isInline: true, className: "pf-u-mb-lg", title: t('You need a Salesforce (SFDC) user to edit the action plan.') }),
74
+ React.createElement(AlertMessage, { show: isInternalWithoutSFDCUser, variant: AlertType.WARNING, isInline: true, className: "pf-v5-u-mb-lg", title: t('You need a Salesforce (SFDC) user to edit the action plan.') }),
86
75
  React.createElement("label", { htmlFor: "rha-action-plan", className: "sr-only" },
87
76
  React.createElement(Trans, null, "Action plan")),
88
- !canUpdateActionPlan && (React.createElement("pre", { "aria-label": t('Case Action Plan'), dangerouslySetInnerHTML: commentMarkdown(actionPlan), style: { fontFamily: isExportingPDF ? 'DejaVu Sans' : '' } })),
89
- canUpdateActionPlan && (React.createElement("form", null,
90
- React.createElement("div", { className: isExportingPDF ? 'hide-in-pdf' : '' },
91
- React.createElement(TextAreaResizable, { className: "form-control", id: "rha-action-plan", disabled: isUpdating || isInternalWithoutSFDCUser, maxLength: 32768, name: "actionPlan", value: actionPlanState, onChange: onChange, rowsMin: 3 })),
77
+ !canUpdateActionPlan ? (React.createElement(CodeBlock, null,
78
+ React.createElement(CodeBlockCode, null, isEmpty(actionPlan) ? t('No action plan to display.') : actionPlan))) : (React.createElement("form", null,
79
+ React.createElement(TextAreaResizable, { id: "rha-action-plan", disabled: isUpdating || isInternalWithoutSFDCUser, maxLength: 32768, name: "actionPlan", value: actionPlanState, onChange: onChange, rowsMin: 3 }),
92
80
  !isInternalWithoutSFDCUser && (React.createElement("div", { className: `${isExportingPDF ? 'hide-in-pdf' : ''} push-top-narrow` },
93
- React.createElement("button", { className: "btn btn-app btn-primary", onClick: updateCase, disabled: isActionPlanEmpty || isUpdating || !formIsDirty },
81
+ React.createElement("button", { className: "btn btn-app btn-primary", onClick: updateCase, disabled: isActionPlanEmpty || isUpdating || !formIsDirty, type: "button" },
94
82
  React.createElement(Trans, null, "Submit"),
95
83
  " ",
96
84
  React.createElement(LoadingIndicator, { show: isUpdating, isInline: true })),
97
- React.createElement("button", { className: "btn btn-app btn-link", onClick: discardActionPlan, disabled: isUpdating || !formIsDirty },
85
+ React.createElement("button", { className: "btn btn-app btn-link", onClick: discardActionPlan, disabled: isUpdating || !formIsDirty, type: "button" },
98
86
  React.createElement(Trans, null, "Cancel")))),
99
- React.createElement("p", { className: "pf-u-mt-xl" },
87
+ React.createElement("p", { className: "pf-v5-u-mt-xl" },
100
88
  React.createElement(Trans, null,
101
89
  "Updates to the action plan are ",
102
90
  React.createElement("strong", null, "customer-facing"),
@@ -1,2 +1,3 @@
1
- export declare function CaseContactPhoneNumber(): JSX.Element;
1
+ import React from 'react';
2
+ export declare function CaseContactPhoneNumber(): React.JSX.Element;
2
3
  //# sourceMappingURL=CaseContactPhoneNumber.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"CaseContactPhoneNumber.d.ts","sourceRoot":"","sources":["../../../../../../src/components/CaseEditView/Tabs/CaseDetails/CaseContactPhoneNumber.tsx"],"names":[],"mappings":"AAwBA,wBAAgB,sBAAsB,gBAkPrC"}
1
+ {"version":3,"file":"CaseContactPhoneNumber.d.ts","sourceRoot":"","sources":["../../../../../../src/components/CaseEditView/Tabs/CaseDetails/CaseContactPhoneNumber.tsx"],"names":[],"mappings":"AASA,OAAO,KAA0C,MAAM,OAAO,CAAC;AAgB/D,wBAAgB,sBAAsB,sBAoYrC"}
@@ -8,8 +8,9 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
8
8
  });
9
9
  };
10
10
  import { contacts } from '@cee-eng/hydrajs';
11
- import { InputGroupText, InputGroupTextVariant, ValidatedOptions } from '@patternfly/react-core';
11
+ import { InputGroupText, ValidatedOptions } from '@patternfly/react-core';
12
12
  import CheckIcon from '@patternfly/react-icons/dist/js/icons/check-icon';
13
+ import PencilAltIcon from '@patternfly/react-icons/dist/js/icons/pencil-alt-icon';
13
14
  import TimesIcon from '@patternfly/react-icons/dist/js/icons/times-icon';
14
15
  import { getPhoneObj, PhoneInput, ToastNotification } from '@rh-support/components';
15
16
  import { GlobalMetadataStateContext, useCanEditCase } from '@rh-support/react-context';
@@ -21,28 +22,30 @@ import { PHONE_INSTRUCTION, PHONE_IS_NOT_VALID, PHONE_LINE_CANNOT_BE_EMPTY, PHON
21
22
  import { useCaseDispatch, useCaseSelector } from '../../../../context/CaseContext';
22
23
  import { useCaseUpdateErrorMessage } from '../../../../hooks/useCaseUpdateErrorMessage';
23
24
  import { PHONE_LIMIT } from '../../../../reducers/CaseConstNTypes';
24
- import { updateCaseDetails } from '../../../../reducers/CaseReducer';
25
+ import { setCaseState, updateCaseDetails } from '../../../../reducers/CaseReducer';
25
26
  import { ContactPhoneNumberPopOver } from '../../../CaseInformation/ContactPhoneNumberPopOver';
26
- import { trimAndReplacePlus } from '../../../shared/utils';
27
+ import { removeAllChars, trimAndReplacePlus } from '../../../shared/utils';
27
28
  import { PDFContext } from '../../PDFContainer';
28
29
  export function CaseContactPhoneNumber() {
29
- const { phoneCountryCode = '', phoneAreaCodePrefixLineNumber = '', caseNumber, contactSSOName, suppliedPhoneNumberVerified, isCaseOwnerUpdating, phone, } = useCaseSelector((state) => ({
30
+ var _a;
31
+ const { phoneCountryCode = '', phoneAreaCodePrefixLineNumber = '', caseNumber, contactSSOName, suppliedPhoneNumberVerified, isCaseOwnerUpdating, hasLoggedInUserConfirmedPhoneNumber, isCasePhoneUpdating, } = useCaseSelector((state) => ({
30
32
  phoneCountryCode: state.caseDetails.phoneCountryCode || '',
31
33
  phoneAreaCodePrefixLineNumber: state.caseDetails.phoneAreaCodePrefixLineNumber || '',
32
34
  caseNumber: state.caseDetails.caseNumber,
33
35
  contactSSOName: state.caseDetails.contactSSOName,
34
36
  suppliedPhoneNumberVerified: state.caseDetails.suppliedPhoneNumberVerified,
35
37
  isCaseOwnerUpdating: state.isCaseOwnerUpdating,
36
- phone: state.caseDetails.phone,
38
+ hasLoggedInUserConfirmedPhoneNumber: state.hasLoggedInUserConfirmedPhoneNumber,
39
+ isCasePhoneUpdating: state.isCasePhoneUpdating,
37
40
  }), isEqual);
38
41
  const { globalMetadataState: { loggedInUser }, } = useContext(GlobalMetadataStateContext);
39
42
  const canEditCase = useCanEditCase();
40
- const [isCasePhoneUpdating, setCasePhoneUpdating] = useState(false);
43
+ const [isEditting, setIsEditting] = useState(false);
41
44
  const [localFullPhoneState, setLocalFullPhoneState] = useState(phoneCountryCode + ' ' + phoneAreaCodePrefixLineNumber);
42
45
  const [localCountryCodeState, setLocalCountryCodeState] = useState(phoneCountryCode);
43
46
  const [invalid, setInvalid] = useState(false);
44
47
  const [isSaveClicked, setIsSavedClicked] = useState(false);
45
- const [isShowOldPhone, setIsShowOldPhone] = useState(false);
48
+ const [isFetchingSSO, setIsFetchingSSO] = useState(false);
46
49
  const caseDispatch = useCaseDispatch();
47
50
  const caseUpdateError = useCaseUpdateErrorMessage();
48
51
  const { t } = useTranslation();
@@ -58,21 +61,30 @@ export function CaseContactPhoneNumber() {
58
61
  return;
59
62
  setLocalCountryCodeState(countryCode);
60
63
  };
64
+ // To check if country code is given but phone number empty
65
+ const isPhoneNumberInvalid = !isEmpty(localFullPhoneState) &&
66
+ isEmpty((_a = removeAllChars(localFullPhoneState)) === null || _a === void 0 ? void 0 : _a.replace(localCountryCodeState, ''));
67
+ const isPhoneLineEmpty = isEmpty(trimAndReplacePlus(localCountryCodeState)) &&
68
+ isEmpty(localFullPhoneState === null || localFullPhoneState === void 0 ? void 0 : localFullPhoneState.replace(localCountryCodeState, ''));
69
+ const showInvalidPhoneError = !isCasePhoneUpdating &&
70
+ !isEmpty(localFullPhoneState) &&
71
+ !isEmpty(phoneAreaCodePrefixLineNumber) &&
72
+ isEmpty(phoneCountryCode); // country code empty
61
73
  const onSave = () => __awaiter(this, void 0, void 0, function* () {
74
+ var _a, _b;
62
75
  setIsSavedClicked(true);
63
76
  if (isPhoneValueCannotBeSaved)
64
77
  return;
65
- setCasePhoneUpdating(true);
66
- const phoneLine = localFullPhoneState
67
- .substring(localCountryCodeState.length, localFullPhoneState.length)
68
- .trim();
69
- const countryCode = trimAndReplacePlus(localCountryCodeState);
78
+ setCaseState(caseDispatch, { isCasePhoneUpdating: true });
79
+ const phoneLine = (_a = getPhoneObj(localFullPhoneState)) === null || _a === void 0 ? void 0 : _a.phoneLine;
80
+ const countryCode = (_b = getPhoneObj(localFullPhoneState)) === null || _b === void 0 ? void 0 : _b.countryCode;
70
81
  try {
71
82
  // update case contact info
72
83
  yield updateCaseDetails(caseDispatch, caseNumber, Object.assign(Object.assign({ phoneCountryCode: countryCode, phoneAreaCodePrefixLineNumber: phoneLine }, (contactSSOName === loggedInUser.data.ssoUsername && { suppliedPhoneNumberVerified: 'True' })), (!countryCode && !phoneLine && { clearPhoneNumber: true, suppliedPhoneNumberVerified: 'False' })));
73
84
  setIsSavedClicked(false);
74
- setCasePhoneUpdating(false);
85
+ setCaseState(caseDispatch, { isCasePhoneUpdating: false });
75
86
  ToastNotification.addSuccessMessage(t(`Phone number has been successfully updated`));
87
+ setIsEditting(false);
76
88
  try {
77
89
  // update logged-in user contact info
78
90
  if (contactSSOName === loggedInUser.data.ssoUsername && !isEmpty(phoneLine) && !isEmpty(countryCode)) {
@@ -83,96 +95,205 @@ export function CaseContactPhoneNumber() {
83
95
  }
84
96
  }
85
97
  catch (e) {
86
- // silently fails
98
+ setCaseState(caseDispatch, { isCasePhoneUpdating: false });
99
+ setIsEditting(false);
87
100
  }
88
101
  }
89
102
  catch (e) {
90
- setCasePhoneUpdating(false);
103
+ setCaseState(caseDispatch, { isCasePhoneUpdating: false });
104
+ setIsEditting(false);
91
105
  caseUpdateError.showError(e, t(`Phone number failed to update`));
92
106
  }
93
107
  });
94
108
  const onClear = () => __awaiter(this, void 0, void 0, function* () {
95
- setLocalFullPhoneState('');
96
- setLocalCountryCodeState('');
97
- setCasePhoneUpdating(true);
98
- try {
99
- yield updateCaseDetails(caseDispatch, caseNumber, {
100
- phoneCountryCode: '',
101
- phoneAreaCodePrefixLineNumber: '',
102
- clearPhoneNumber: true,
103
- suppliedPhoneNumberVerified: 'False',
104
- });
105
- setCasePhoneUpdating(false);
106
- ToastNotification.addSuccessMessage(t(`Phone number has been successfully updated`));
107
- }
108
- catch (e) {
109
- setCasePhoneUpdating(false);
110
- caseUpdateError.showError(e, t(`Phone number failed to update`));
111
- }
109
+ setIsEditting(false);
110
+ setLocalFullPhoneState(phoneCountryCode + ' ' + phoneAreaCodePrefixLineNumber);
112
111
  });
113
112
  const maxLengthErrorMessage = t('Phone number cannot be more than {{limit}} digits.', {
114
113
  limit: PHONE_LIMIT,
115
114
  });
116
- const isPhoneNeedsReview = contactSSOName === loggedInUser.data.ssoUsername && suppliedPhoneNumberVerified === 'Deferred';
117
- // To check if country code is given but phone number empty
118
- const isPhoneLineEmpty = !isEmpty(localFullPhoneState) && isEmpty(localFullPhoneState === null || localFullPhoneState === void 0 ? void 0 : localFullPhoneState.replace(localCountryCodeState, ''));
119
- const isPhoneNumberInvalid = isEmpty(localCountryCodeState) && !isEmpty(localFullPhoneState);
120
- const isPhoneNumberValid = (localFullPhoneState === null || localFullPhoneState === void 0 ? void 0 : localFullPhoneState.length) > PHONE_LIMIT
115
+ const phoneObject = getPhoneObj(localFullPhoneState);
116
+ const localFullPhone = phoneObject.countryCode + ' ' + phoneObject.phoneLine;
117
+ const isPhoneNeedsReview = !isEmpty(contactSSOName) &&
118
+ contactSSOName === loggedInUser.data.ssoUsername &&
119
+ suppliedPhoneNumberVerified === 'Deferred' &&
120
+ !isCaseOwnerUpdating &&
121
+ !isCasePhoneUpdating &&
122
+ !isEmpty(localFullPhoneState);
123
+ const isPhoneNumberValid = (localFullPhone === null || localFullPhone === void 0 ? void 0 : localFullPhone.length) > PHONE_LIMIT
121
124
  ? ValidatedOptions.error
122
125
  : isPhoneNeedsReview
123
126
  ? ValidatedOptions.warning
124
- : isSaveClicked && (isPhoneLineEmpty || isPhoneNumberInvalid)
127
+ : isSaveClicked &&
128
+ (isPhoneLineEmpty || isPhoneNumberInvalid || isEmpty(trimAndReplacePlus(localCountryCodeState)))
125
129
  ? ValidatedOptions.error
126
130
  : invalid
127
131
  ? ValidatedOptions.error
128
132
  : ValidatedOptions.default;
129
- const isPhoneValueCannotBeSaved = isPhoneLineEmpty || isPhoneNumberInvalid || localFullPhoneState.trim() === localCountryCodeState.trim();
130
- // should be removed when old phone field is removed by CCM team
133
+ const isPhoneValueCannotBeSaved = isPhoneLineEmpty ||
134
+ isPhoneNumberInvalid ||
135
+ isEmpty(trimAndReplacePlus(localCountryCodeState)) ||
136
+ trimAndReplacePlus(localFullPhoneState) === trimAndReplacePlus(localCountryCodeState);
137
+ const checkingPlusInLocalFullPhone = (_localFullPhone) => {
138
+ if (isEqual(_localFullPhone.trim(), '+')) {
139
+ return '';
140
+ }
141
+ else if (!isEmpty(_localFullPhone.trim()) && !_localFullPhone.trim().startsWith('+')) {
142
+ return '+' + _localFullPhone.replace(' ', '');
143
+ }
144
+ else {
145
+ return _localFullPhone;
146
+ }
147
+ };
131
148
  useEffect(() => {
132
- var _a, _b;
133
- if (isEmpty(phoneCountryCode) && isEmpty(phoneAreaCodePrefixLineNumber) && !isEmpty(phone)) {
134
- const oldPhoneline = ((_a = getPhoneObj(phone)) === null || _a === void 0 ? void 0 : _a.phoneLine) || '';
135
- const oldCountryCode = ((_b = getPhoneObj(phone)) === null || _b === void 0 ? void 0 : _b.countryCode) || '';
136
- if (!isEmpty(oldPhoneline.trim()) && !isEmpty(trimAndReplacePlus(oldCountryCode))) {
137
- setLocalFullPhoneState(oldCountryCode + ' ' + oldPhoneline);
149
+ if (contactSSOName === loggedInUser.data.ssoUsername) {
150
+ // edge case: when loggedInUser === contactSSOName while opening a case confirms or deffers the phone
151
+ // we need to save the verification state globally so that we don't show the phone review banner again
152
+ // to the user where he changes it to another owner and then again assigns himself as the case owner
153
+ setCaseState(caseDispatch, {
154
+ hasLoggedInUserConfirmedPhoneNumber: suppliedPhoneNumberVerified,
155
+ });
156
+ }
157
+ else {
158
+ // when loggedInUser !== contactSSOName while opening a case, we need to save the verification deferred state globally
159
+ // so that when the owner is again changed back to loggedInUser, we show the phone review banner again
160
+ // if he has not previously responded to the banner
161
+ setCaseState(caseDispatch, {
162
+ hasLoggedInUserConfirmedPhoneNumber: !isEqual(hasLoggedInUserConfirmedPhoneNumber, 'True')
163
+ ? 'Deferred'
164
+ : 'True',
165
+ });
166
+ }
167
+ // eslint-disable-next-line react-hooks/exhaustive-deps
168
+ }, [suppliedPhoneNumberVerified]);
169
+ useEffect(() => {
170
+ if (isEmpty(contactSSOName)) {
171
+ setLocalFullPhoneState('');
172
+ return;
173
+ }
174
+ const initContactPhoneNumber = () => __awaiter(this, void 0, void 0, function* () {
175
+ let _phoneAreaCodePrefixLineNumber;
176
+ let _phoneCountryCode;
177
+ let _suppliedPhoneNumberVerified;
178
+ setCaseState(caseDispatch, { isCasePhoneUpdating: true });
179
+ // logged in user and case owner are the same
180
+ if (contactSSOName === loggedInUser.data.ssoUsername) {
181
+ try {
182
+ setIsFetchingSSO(true);
183
+ const loggedInUserContact = yield (contacts === null || contacts === void 0 ? void 0 : contacts.getSFDCContactBySso(contactSSOName));
184
+ setIsFetchingSSO(false);
185
+ if (loggedInUserContact.supportPhoneAreaCodePrefixLineNumber) {
186
+ // User has opened a case before and has phone and area code in her/his contact on SF
187
+ _phoneAreaCodePrefixLineNumber = loggedInUserContact.supportPhoneAreaCodePrefixLineNumber;
188
+ _phoneCountryCode = loggedInUserContact.supportPhoneCountryCode;
189
+ _suppliedPhoneNumberVerified =
190
+ isEqual(hasLoggedInUserConfirmedPhoneNumber, 'True') ||
191
+ isEqual(hasLoggedInUserConfirmedPhoneNumber, 'Deferred')
192
+ ? hasLoggedInUserConfirmedPhoneNumber
193
+ : 'False';
194
+ }
195
+ else {
196
+ const phoneLine = getPhoneObj(loggedInUserContact.phone).phoneLine || '';
197
+ const countryCode = getPhoneObj(loggedInUserContact.phone).countryCode;
198
+ _phoneAreaCodePrefixLineNumber = phoneLine;
199
+ _phoneCountryCode = countryCode;
200
+ _suppliedPhoneNumberVerified =
201
+ isEqual(hasLoggedInUserConfirmedPhoneNumber, 'True') ||
202
+ isEqual(hasLoggedInUserConfirmedPhoneNumber, 'Deferred')
203
+ ? hasLoggedInUserConfirmedPhoneNumber
204
+ : 'False';
205
+ }
206
+ }
207
+ catch (_a) {
208
+ _phoneAreaCodePrefixLineNumber = '';
209
+ _phoneCountryCode = '';
210
+ _suppliedPhoneNumberVerified = 'False';
211
+ setIsFetchingSSO(false);
212
+ setCaseState(caseDispatch, { isCasePhoneUpdating: false });
213
+ }
138
214
  }
139
215
  else {
140
- setIsShowOldPhone(true);
216
+ // user is openning case for others (use is partner or red hatter)
217
+ try {
218
+ setIsFetchingSSO(true);
219
+ const selectedContact = yield contacts.getSFDCContactBySso(contactSSOName);
220
+ setIsFetchingSSO(false);
221
+ if (selectedContact.supportPhoneAreaCodePrefixLineNumber) {
222
+ _phoneAreaCodePrefixLineNumber = selectedContact.supportPhoneAreaCodePrefixLineNumber;
223
+ _phoneCountryCode = selectedContact.supportPhoneCountryCode;
224
+ _suppliedPhoneNumberVerified = 'Deferred';
225
+ }
226
+ else {
227
+ _phoneAreaCodePrefixLineNumber = getPhoneObj(selectedContact.phone).phoneLine || '';
228
+ _phoneCountryCode = getPhoneObj(selectedContact.phone).countryCode || '';
229
+ _suppliedPhoneNumberVerified = 'Deferred';
230
+ }
231
+ }
232
+ catch (e) {
233
+ _phoneAreaCodePrefixLineNumber = '';
234
+ _phoneCountryCode = '';
235
+ _suppliedPhoneNumberVerified = 'False';
236
+ setIsFetchingSSO(false);
237
+ setCaseState(caseDispatch, { isCasePhoneUpdating: false });
238
+ }
239
+ }
240
+ try {
241
+ yield updateCaseDetails(caseDispatch, caseNumber, {
242
+ phoneAreaCodePrefixLineNumber: _phoneAreaCodePrefixLineNumber,
243
+ phoneCountryCode: _phoneCountryCode,
244
+ suppliedPhoneNumberVerified: _suppliedPhoneNumberVerified,
245
+ });
141
246
  }
247
+ catch (error) {
248
+ setCaseState(caseDispatch, { isCasePhoneUpdating: false });
249
+ console.log(error);
250
+ }
251
+ let _localFullPhone = _phoneCountryCode + ' ' + _phoneAreaCodePrefixLineNumber;
252
+ setLocalFullPhoneState(checkingPlusInLocalFullPhone(_localFullPhone));
253
+ setCaseState(caseDispatch, { isCasePhoneUpdating: false });
254
+ });
255
+ if (isEmpty(phoneCountryCode) && isEmpty(phoneAreaCodePrefixLineNumber)) {
256
+ initContactPhoneNumber();
142
257
  }
143
258
  else {
144
- setLocalFullPhoneState((phoneCountryCode + ' ' + phoneAreaCodePrefixLineNumber).trim());
145
- setIsShowOldPhone(false);
259
+ setLocalFullPhoneState(phoneCountryCode + ' ' + phoneAreaCodePrefixLineNumber);
146
260
  }
147
261
  // eslint-disable-next-line react-hooks/exhaustive-deps
148
- }, []);
149
- return (React.createElement("div", { className: "form-group pf-u-pb-md", style: { minWidth: '200px' } },
262
+ }, [contactSSOName]);
263
+ return (React.createElement("div", { className: "form-group pf-v5-u-pb-md", style: { minWidth: '200px' } },
150
264
  React.createElement("h3", { className: `subheading subheading-sm ${isExportingPDF ? 'expand-input' : ''}` },
151
265
  React.createElement(Trans, null, "Case owner's phone number"),
266
+ React.createElement("span", { className: `form-required ${isExportingPDF ? 'hide-in-pdf' : ''}`, "aria-hidden": true }, "*"),
152
267
  !isExportingPDF ? ContactPhoneNumberPopOver() : ''),
153
- React.createElement(InputGroupText, { variant: InputGroupTextVariant.plain },
154
- React.createElement(PhoneInput, { phoneValue: localFullPhoneState, onPhoneValueChange: onPhoneChange, onCountryCodeChange: onCountryCodeChange, validations: isPhoneNumberValid, isDisabled: isCasePhoneUpdating || isCaseOwnerUpdating, isLoading: isCasePhoneUpdating, "data-tracking-id": "case-details-page-supplied-phone", invalid: invalid, setInvalid: setInvalid }),
155
- React.createElement("button", { className: "btn btn-app btn-link pf-u-ml-sm", type: "button", "data-tracking-id": "case-details-page-supplied-phone-save", onClick: () => onSave(), disabled: (localFullPhoneState === null || localFullPhoneState === void 0 ? void 0 : localFullPhoneState.length) > PHONE_LIMIT ||
156
- localFullPhoneState === phoneCountryCode + ' ' + phoneAreaCodePrefixLineNumber ||
157
- (isSaveClicked && isPhoneValueCannotBeSaved), style: { display: isExportingPDF ? 'none' : '' } },
158
- React.createElement(CheckIcon, null)),
159
- React.createElement("button", { className: "btn btn-app btn-link", type: "button", onClick: onClear, "data-tracking-id": "case-details-page-supplied-phone-cancel", style: { display: isExportingPDF ? 'none' : '' }, disabled: isEmpty(localFullPhoneState) },
160
- React.createElement(TimesIcon, { color: "#6A6E73" }))),
268
+ React.createElement(InputGroupText, null,
269
+ React.createElement(PhoneInput, { phoneValue: localFullPhoneState, onPhoneValueChange: onPhoneChange, onCountryCodeChange: onCountryCodeChange, validations: isPhoneNumberValid, isDisabled: isCasePhoneUpdating || isCaseOwnerUpdating || !isEditting, isLoading: isCasePhoneUpdating || isCaseOwnerUpdating || isFetchingSSO, "data-tracking-id": "case-details-page-supplied-phone", invalid: invalid, setInvalid: setInvalid }),
270
+ isEditting ? (React.createElement(React.Fragment, null,
271
+ React.createElement("button", { className: "btn btn-app btn-link pf-v5-u-ml-sm", type: "button", "data-tracking-id": "case-details-page-supplied-phone-save", onClick: () => onSave(), "aria-label": "Save", disabled: (isSaveClicked && isPhoneValueCannotBeSaved) ||
272
+ (localFullPhone === null || localFullPhone === void 0 ? void 0 : localFullPhone.length) > PHONE_LIMIT ||
273
+ localFullPhoneState === phoneCountryCode + ' ' + phoneAreaCodePrefixLineNumber ||
274
+ isCaseOwnerUpdating ||
275
+ isCasePhoneUpdating, style: { display: isExportingPDF ? 'none' : '' } },
276
+ React.createElement(CheckIcon, null)),
277
+ React.createElement("button", { className: "btn btn-app btn-link", type: "button", onClick: onClear, "data-tracking-id": "case-details-page-supplied-phone-cancel", style: { display: isExportingPDF ? 'none' : '' }, disabled: isCaseOwnerUpdating || isCasePhoneUpdating, "aria-label": "Clear" },
278
+ React.createElement(TimesIcon, { color: "#6A6E73" })))) : (React.createElement("button", { className: "btn btn-app btn-link", type: "button", onClick: () => setIsEditting(true), "data-tracking-id": "case-details-page-supplied-phone-edit", style: { display: isExportingPDF ? 'none' : '' }, "aria-label": "Edit", disabled: isCaseOwnerUpdating || isCasePhoneUpdating },
279
+ React.createElement(PencilAltIcon, null)))),
161
280
  !invalid &&
162
- (localFullPhoneState === null || localFullPhoneState === void 0 ? void 0 : localFullPhoneState.length) < PHONE_LIMIT &&
281
+ (localFullPhone === null || localFullPhone === void 0 ? void 0 : localFullPhone.length) <= PHONE_LIMIT &&
163
282
  !(isSaveClicked && isPhoneValueCannotBeSaved) &&
164
- !isShowOldPhone && (React.createElement("p", { className: "form-instructions" },
283
+ !showInvalidPhoneError && (React.createElement("p", { className: "form-instructions" },
165
284
  React.createElement(Trans, null, PHONE_INSTRUCTION))),
166
285
  invalid && (React.createElement("p", { className: "form-instructions form-invalid" },
167
286
  React.createElement(Trans, null, PHONE_NO_CHAR_ERROR))),
168
- (localFullPhoneState === null || localFullPhoneState === void 0 ? void 0 : localFullPhoneState.length) > PHONE_LIMIT && (React.createElement("p", { className: "form-instructions form-invalid" }, maxLengthErrorMessage)),
169
- isSaveClicked && (isPhoneLineEmpty || localFullPhoneState.trim() === localCountryCodeState.trim()) && (React.createElement("p", { className: "form-instructions form-invalid" },
170
- React.createElement(Trans, null, PHONE_LINE_CANNOT_BE_EMPTY))),
287
+ (localFullPhone === null || localFullPhone === void 0 ? void 0 : localFullPhone.length) > PHONE_LIMIT && (React.createElement("p", { className: "form-instructions form-invalid" }, maxLengthErrorMessage)),
288
+ isSaveClicked && isPhoneLineEmpty && (React.createElement("p", { className: "form-instructions form-invalid" },
289
+ React.createElement(Trans, null, PHONE_INSTRUCTION))),
171
290
  isSaveClicked && isPhoneNumberInvalid && (React.createElement("p", { className: "form-instructions form-invalid" },
291
+ React.createElement(Trans, null, PHONE_LINE_CANNOT_BE_EMPTY))),
292
+ isSaveClicked && isEmpty(trimAndReplacePlus(localCountryCodeState)) && !isPhoneLineEmpty && (React.createElement("p", { className: "form-instructions form-invalid" },
172
293
  React.createElement(Trans, null, PHONE_IS_NOT_VALID))),
173
- isShowOldPhone && (React.createElement("p", { className: "form-instructions form-invalid" },
294
+ showInvalidPhoneError && (React.createElement("p", { className: "form-instructions form-invalid" },
174
295
  React.createElement(Trans, null,
175
296
  "The phone number on case is ",
176
- phone,
297
+ localFullPhoneState,
177
298
  ". The format of the phone field is changed and this phone does not fit.")))));
178
299
  }
@@ -1,11 +1,11 @@
1
1
  import { IDClassNameProps } from '@rh-support/types/shared';
2
2
  import React from 'react';
3
- import { RouteComponentProps } from 'react-router';
3
+ import { RouteComponentProps } from 'react-router-dom';
4
4
  interface IProps extends IDClassNameProps {
5
5
  caseNumber: string;
6
6
  routeProps: RouteComponentProps;
7
7
  tabRef: React.MutableRefObject<HTMLDivElement>;
8
8
  }
9
- export default function CaseDetailsManagement(props: IProps): JSX.Element;
9
+ export default function CaseDetailsManagement(props: IProps): React.JSX.Element;
10
10
  export {};
11
11
  //# sourceMappingURL=CaseDetailsManagement.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"CaseDetailsManagement.d.ts","sourceRoot":"","sources":["../../../../../../src/components/CaseEditView/Tabs/CaseDetails/CaseDetailsManagement.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAG5D,OAAO,KAA+B,MAAM,OAAO,CAAC;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAkBnD,UAAU,MAAO,SAAQ,gBAAgB;IACrC,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,mBAAmB,CAAC;IAChC,MAAM,EAAE,KAAK,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAC;CAClD;AAED,MAAM,CAAC,OAAO,UAAU,qBAAqB,CAAC,KAAK,EAAE,MAAM,eAgE1D"}
1
+ {"version":3,"file":"CaseDetailsManagement.d.ts","sourceRoot":"","sources":["../../../../../../src/components/CaseEditView/Tabs/CaseDetails/CaseDetailsManagement.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAG5D,OAAO,KAA+B,MAAM,OAAO,CAAC;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAkBvD,UAAU,MAAO,SAAQ,gBAAgB;IACrC,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,mBAAmB,CAAC;IAChC,MAAM,EAAE,KAAK,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAC;CAClD;AAED,MAAM,CAAC,OAAO,UAAU,qBAAqB,CAAC,KAAK,EAAE,MAAM,qBAgE1D"}