@rh-support/troubleshoot 2.6.358 → 2.6.363

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 (349) hide show
  1. package/lib/esm/components/AccountInfo/AccountSelector.d.ts.map +1 -1
  2. package/lib/esm/components/AccountInfo/AccountSelector.js +29 -19
  3. package/lib/esm/components/AccountInfo/OwnerSelector.d.ts.map +1 -1
  4. package/lib/esm/components/AccountInfo/OwnerSelector.js +16 -91
  5. package/lib/esm/components/CaseEditView/ActiveCustomerEscalation/ActiveCustomerEscalation.d.ts.map +1 -1
  6. package/lib/esm/components/CaseEditView/ActiveCustomerEscalation/ActiveCustomerEscalation.js +2 -6
  7. package/lib/esm/components/CaseEditView/ActiveCustomerEscalation/RequestEscalationModal.d.ts.map +1 -1
  8. package/lib/esm/components/CaseEditView/ActiveCustomerEscalation/RequestEscalationModal.js +32 -61
  9. package/lib/esm/components/CaseEditView/Case.d.ts.map +1 -1
  10. package/lib/esm/components/CaseEditView/Case.js +33 -60
  11. package/lib/esm/components/CaseEditView/CaseDetailsAside.d.ts.map +1 -1
  12. package/lib/esm/components/CaseEditView/CaseDetailsAside.js +9 -19
  13. package/lib/esm/components/CaseEditView/CaseDetailsErrorMessage.d.ts.map +1 -1
  14. package/lib/esm/components/CaseEditView/CaseDetailsErrorMessage.js +4 -15
  15. package/lib/esm/components/CaseEditView/CaseDetailsTabs.d.ts.map +1 -1
  16. package/lib/esm/components/CaseEditView/CaseDetailsTabs.js +55 -82
  17. package/lib/esm/components/CaseEditView/CaseOverview/CaseOwnerInfo.d.ts +0 -2
  18. package/lib/esm/components/CaseEditView/CaseOverview/CaseOwnerInfo.d.ts.map +1 -1
  19. package/lib/esm/components/CaseEditView/CaseOverview/CaseOwnerInfo.js +3 -3
  20. package/lib/esm/components/CaseEditView/CaseOverview/CaseStatus.d.ts +2 -1
  21. package/lib/esm/components/CaseEditView/CaseOverview/CaseStatus.d.ts.map +1 -1
  22. package/lib/esm/components/CaseEditView/CaseOverview/CaseStatus.js +6 -8
  23. package/lib/esm/components/CaseEditView/CaseOverview/index.d.ts.map +1 -1
  24. package/lib/esm/components/CaseEditView/CaseOverview/index.js +47 -79
  25. package/lib/esm/components/CaseEditView/CaseSolutions/CaseSolutions.d.ts.map +1 -1
  26. package/lib/esm/components/CaseEditView/CaseSolutions/CaseSolutions.js +109 -203
  27. package/lib/esm/components/CaseEditView/CaseSolutions/CaseSolutionsItem.d.ts +1 -0
  28. package/lib/esm/components/CaseEditView/CaseSolutions/CaseSolutionsItem.d.ts.map +1 -1
  29. package/lib/esm/components/CaseEditView/CaseSolutions/CaseSolutionsItem.js +5 -5
  30. package/lib/esm/components/CaseEditView/ConfirmationModals/ReopenCaseModal.d.ts +3 -1
  31. package/lib/esm/components/CaseEditView/ConfirmationModals/ReopenCaseModal.d.ts.map +1 -1
  32. package/lib/esm/components/CaseEditView/ConfirmationModals/ReopenCaseModal.js +9 -5
  33. package/lib/esm/components/CaseEditView/RequestRemoteSession/ESSRemoteSessionModal.d.ts.map +1 -1
  34. package/lib/esm/components/CaseEditView/RequestRemoteSession/ESSRemoteSessionModal.js +17 -18
  35. package/lib/esm/components/CaseEditView/RequestRemoteSession/NewEssTermsModal.d.ts.map +1 -1
  36. package/lib/esm/components/CaseEditView/RequestRemoteSession/NewEssTermsModal.js +47 -51
  37. package/lib/esm/components/CaseEditView/RequestRemoteSession/RemoteSessionAgreementModal.d.ts.map +1 -1
  38. package/lib/esm/components/CaseEditView/RequestRemoteSession/RemoteSessionAgreementModal.js +44 -49
  39. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CaseContactPhoneNumber.d.ts.map +1 -1
  40. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CaseContactPhoneNumber.js +45 -51
  41. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CaseDetailsManagement.d.ts.map +1 -1
  42. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CaseDetailsManagement.js +17 -63
  43. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CaseHostname.js +1 -1
  44. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CaseInformation.d.ts.map +1 -1
  45. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CaseInformation.js +2 -0
  46. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CaseInternalStatus.d.ts.map +1 -1
  47. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CaseInternalStatus.js +2 -3
  48. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CaseOpenshiftClusterId/CaseOpenshiftClusterId.d.ts.map +1 -1
  49. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CaseOpenshiftClusterId/CaseOpenshiftClusterId.js +55 -130
  50. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CaseReferenceNumber.d.ts.map +1 -1
  51. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CaseReferenceNumber.js +5 -10
  52. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/ProductVersion.d.ts.map +1 -1
  53. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/ProductVersion.js +65 -110
  54. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/Summary.d.ts.map +1 -1
  55. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/Summary.js +9 -16
  56. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/AsaCommentFeedbackModal.d.ts +25 -0
  57. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/AsaCommentFeedbackModal.d.ts.map +1 -0
  58. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/AsaCommentFeedbackModal.js +102 -0
  59. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/CaseAttachment.d.ts.map +1 -1
  60. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/CaseAttachment.js +26 -40
  61. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/CaseComments.d.ts +4 -2
  62. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/CaseComments.d.ts.map +1 -1
  63. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/CaseComments.js +148 -122
  64. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/CaseDiscussion.d.ts +2 -4
  65. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/CaseDiscussion.d.ts.map +1 -1
  66. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/CaseDiscussion.js +145 -76
  67. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/CommentSearch.d.ts.map +1 -1
  68. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/CommentSearch.js +9 -22
  69. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/DiscussionItemLink.d.ts.map +1 -1
  70. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/DiscussionItemLink.js +2 -9
  71. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/JumpAndCopyLink.d.ts.map +1 -1
  72. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/JumpAndCopyLink.js +1 -8
  73. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/PostComment/useMarkdownFileUploader.d.ts +2 -2
  74. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/PostComment/useMarkdownFileUploader.d.ts.map +1 -1
  75. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/PostComment/useMarkdownFileUploader.js +7 -18
  76. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/PostComment.d.ts +3 -9
  77. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/PostComment.d.ts.map +1 -1
  78. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/PostComment.js +267 -217
  79. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/VerifyCaseStatusModal/VerifyCaseStatusModal.d.ts.map +1 -1
  80. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/VerifyCaseStatusModal/VerifyCaseStatusModal.js +4 -6
  81. package/lib/esm/components/CaseEditView/Tabs/CaseHistory/CaseHistory.d.ts.map +1 -1
  82. package/lib/esm/components/CaseEditView/Tabs/CaseHistory/CaseHistory.js +1 -3
  83. package/lib/esm/components/CaseEditView/Tabs/CaseHistory/Timeline.css +4 -4
  84. package/lib/esm/components/CaseEditView/Tabs/CaseHistory/Timeline.d.ts +3 -35
  85. package/lib/esm/components/CaseEditView/Tabs/CaseHistory/Timeline.d.ts.map +1 -1
  86. package/lib/esm/components/CaseEditView/Tabs/CaseHistory/Timeline.js +224 -63
  87. package/lib/esm/components/CaseEditView/Tabs/CasePrivateNotes/CasePrivateNotes.d.ts +5 -4
  88. package/lib/esm/components/CaseEditView/Tabs/CasePrivateNotes/CasePrivateNotes.d.ts.map +1 -1
  89. package/lib/esm/components/CaseEditView/Tabs/CasePrivateNotes/CasePrivateNotes.js +5 -18
  90. package/lib/esm/components/CaseEditView/Tabs/CaseSummary/CaseSummary.d.ts.map +1 -1
  91. package/lib/esm/components/CaseEditView/Tabs/CaseSummary/CaseSummary.js +2 -7
  92. package/lib/esm/components/CaseEditView/Tabs/RMEEscalations/RMEEscalationList.d.ts.map +1 -1
  93. package/lib/esm/components/CaseEditView/Tabs/RMEEscalations/RMEEscalationList.js +52 -38
  94. package/lib/esm/components/CaseInformation/CaseGroup.d.ts.map +1 -1
  95. package/lib/esm/components/CaseInformation/CaseGroup.js +61 -168
  96. package/lib/esm/components/CaseInformation/CaseInformation.d.ts.map +1 -1
  97. package/lib/esm/components/CaseInformation/CaseInformation.js +9 -10
  98. package/lib/esm/components/CaseInformation/ContactPhoneNumber.d.ts.map +1 -1
  99. package/lib/esm/components/CaseInformation/ContactPhoneNumber.js +31 -108
  100. package/lib/esm/components/CaseInformation/ContactPhoneNumberPopOver.js +2 -2
  101. package/lib/esm/components/CaseInformation/Description.js +1 -1
  102. package/lib/esm/components/CaseInformation/FileDiag.d.ts.map +1 -1
  103. package/lib/esm/components/CaseInformation/FileDiag.js +5 -2
  104. package/lib/esm/components/CaseInformation/Fts.d.ts.map +1 -1
  105. package/lib/esm/components/CaseInformation/Fts.js +17 -31
  106. package/lib/esm/components/CaseInformation/Severity.d.ts.map +1 -1
  107. package/lib/esm/components/CaseInformation/Severity.js +24 -33
  108. package/lib/esm/components/CaseInformation/SupportLevel.d.ts.map +1 -1
  109. package/lib/esm/components/CaseInformation/SupportLevel.js +55 -36
  110. package/lib/esm/components/CaseManagement/CaseLanguageSelector.d.ts.map +1 -1
  111. package/lib/esm/components/CaseManagement/CaseLanguageSelector.js +8 -2
  112. package/lib/esm/components/CaseManagement/CaseManagement.d.ts.map +1 -1
  113. package/lib/esm/components/CaseManagement/CaseManagement.js +10 -13
  114. package/lib/esm/components/CaseManagement/Cep.d.ts.map +1 -1
  115. package/lib/esm/components/CaseManagement/Cep.js +9 -11
  116. package/lib/esm/components/CaseManagement/NoClusterIDReasonSelector.d.ts +1 -2
  117. package/lib/esm/components/CaseManagement/NoClusterIDReasonSelector.d.ts.map +1 -1
  118. package/lib/esm/components/CaseManagement/NoClusterIDReasonSelector.js +3 -20
  119. package/lib/esm/components/CaseManagement/OpenShiftClusterId.d.ts.map +1 -1
  120. package/lib/esm/components/CaseManagement/OpenShiftClusterId.js +6 -6
  121. package/lib/esm/components/CaseManagement/OpenshiftDropdownV4.d.ts +1 -0
  122. package/lib/esm/components/CaseManagement/OpenshiftDropdownV4.d.ts.map +1 -1
  123. package/lib/esm/components/CaseManagement/OpenshiftDropdownV4.js +32 -19
  124. package/lib/esm/components/CaseManagement/SendNotifications/NonOrgCaseNotifyeesSelector.d.ts.map +1 -1
  125. package/lib/esm/components/CaseManagement/SendNotifications/NonOrgCaseNotifyeesSelector.js +40 -34
  126. package/lib/esm/components/ConfirmationModals/NoAttachmentSelectedModal.d.ts.map +1 -1
  127. package/lib/esm/components/ConfirmationModals/NoAttachmentSelectedModal.js +4 -8
  128. package/lib/esm/components/EditDescription/EditDescription.js +1 -1
  129. package/lib/esm/components/IdeaInformation/IdeaInformation.d.ts.map +1 -1
  130. package/lib/esm/components/IdeaInformation/IdeaInformation.js +17 -23
  131. package/lib/esm/components/OpenCase/SupportTypeSelectorPage.d.ts.map +1 -1
  132. package/lib/esm/components/OpenCase/SupportTypeSelectorPage.js +2 -4
  133. package/lib/esm/components/ProductSelector/AllProductsSelector.d.ts +1 -0
  134. package/lib/esm/components/ProductSelector/AllProductsSelector.d.ts.map +1 -1
  135. package/lib/esm/components/ProductSelector/AllProductsSelector.js +15 -3
  136. package/lib/esm/components/ProductSelector/NewProductDropdownSelector.d.ts.map +1 -1
  137. package/lib/esm/components/ProductSelector/NewProductDropdownSelector.js +37 -13
  138. package/lib/esm/components/ProductSelector/NewProductVersionSelector.d.ts.map +1 -1
  139. package/lib/esm/components/ProductSelector/NewProductVersionSelector.js +50 -37
  140. package/lib/esm/components/ProductSelector/ProductSelector.d.ts.map +1 -1
  141. package/lib/esm/components/ProductSelector/ProductSelector.js +3 -1
  142. package/lib/esm/components/ProductSelector/ProductVersionDropdownSelector.d.ts.map +1 -1
  143. package/lib/esm/components/ProductSelector/ProductVersionDropdownSelector.js +1 -9
  144. package/lib/esm/components/Recommendations/AsideResults.d.ts.map +1 -1
  145. package/lib/esm/components/Recommendations/AsideResults.js +3 -4
  146. package/lib/esm/components/Recommendations/ClusterRecommendationToast.d.ts.map +1 -1
  147. package/lib/esm/components/Recommendations/ClusterRecommendationToast.js +4 -1
  148. package/lib/esm/components/Recommendations/ClusterRecommendations.d.ts.map +1 -1
  149. package/lib/esm/components/Recommendations/ClusterRecommendations.js +4 -1
  150. package/lib/esm/components/Recommendations/InsightsResults.js +3 -3
  151. package/lib/esm/components/Recommendations/Recommendations.d.ts.map +1 -1
  152. package/lib/esm/components/Recommendations/Recommendations.js +9 -3
  153. package/lib/esm/components/RemoteRider/RemoteRiderAcceptanceModal.d.ts.map +1 -1
  154. package/lib/esm/components/RemoteRider/RemoteRiderAcceptanceModal.js +8 -10
  155. package/lib/esm/components/Review/Review.d.ts.map +1 -1
  156. package/lib/esm/components/Review/Review.js +19 -25
  157. package/lib/esm/components/SessionRestore/SessionRestore.d.ts.map +1 -1
  158. package/lib/esm/components/SessionRestore/SessionRestore.js +1 -3
  159. package/lib/esm/components/SubmitCase/SubmitCase.d.ts.map +1 -1
  160. package/lib/esm/components/SubmitCase/SubmitCase.js +1 -1
  161. package/lib/esm/components/TroubleshootSection/TroubleshootSection.js +2 -2
  162. package/lib/esm/components/UpdateSeverityModal/UpdateSeverityModal.d.ts.map +1 -1
  163. package/lib/esm/components/UpdateSeverityModal/UpdateSeverityModal.js +91 -139
  164. package/lib/esm/components/shared/Constants.d.ts +0 -5
  165. package/lib/esm/components/shared/Constants.d.ts.map +1 -1
  166. package/lib/esm/components/shared/Constants.js +0 -5
  167. package/lib/esm/components/shared/fileUpload/FileLister.d.ts.map +1 -1
  168. package/lib/esm/components/shared/fileUpload/FileLister.js +3 -3
  169. package/lib/esm/components/shared/fileUpload/FileUpload.js +3 -2
  170. package/lib/esm/components/shared/fileUpload/FileUploader.d.ts.map +1 -1
  171. package/lib/esm/components/shared/fileUpload/FileUploader.js +1 -3
  172. package/lib/esm/components/shared/fileUpload/WidgetFileUploader.d.ts +0 -1
  173. package/lib/esm/components/shared/fileUpload/WidgetFileUploader.d.ts.map +1 -1
  174. package/lib/esm/components/shared/fileUpload/WidgetFileUploader.js +3 -4
  175. package/lib/esm/components/shared/fileUpload/fileSelectors/FileSelectorButton.d.ts +1 -1
  176. package/lib/esm/components/shared/fileUpload/fileSelectors/FileSelectorButton.d.ts.map +1 -1
  177. package/lib/esm/components/shared/fileUpload/reducer/AttachmentHelper.d.ts +5 -22
  178. package/lib/esm/components/shared/fileUpload/reducer/AttachmentHelper.d.ts.map +1 -1
  179. package/lib/esm/components/shared/fileUpload/reducer/AttachmentHelper.js +59 -307
  180. package/lib/esm/components/shared/fileUpload/reducer/AttachmentReducer.d.ts +1 -5
  181. package/lib/esm/components/shared/fileUpload/reducer/AttachmentReducer.d.ts.map +1 -1
  182. package/lib/esm/components/shared/fileUpload/reducer/AttachmentReducer.js +1 -36
  183. package/lib/esm/components/shared/fileUpload/types/index.d.ts +1 -5
  184. package/lib/esm/components/shared/fileUpload/types/index.d.ts.map +1 -1
  185. package/lib/esm/components/shared/fileUpload/useFileUploader.d.ts +2 -2
  186. package/lib/esm/components/shared/fileUpload/useFileUploader.d.ts.map +1 -1
  187. package/lib/esm/components/shared/fileUpload/useFileUploader.js +47 -119
  188. package/lib/esm/components/shared/useIsSectionValid.d.ts.map +1 -1
  189. package/lib/esm/components/shared/useIsSectionValid.js +57 -22
  190. package/lib/esm/components/shared/usePostComment.d.ts.map +1 -1
  191. package/lib/esm/components/shared/usePostComment.js +28 -16
  192. package/lib/esm/components/shared/utils.d.ts +0 -1
  193. package/lib/esm/components/shared/utils.d.ts.map +1 -1
  194. package/lib/esm/components/shared/utils.js +3 -9
  195. package/lib/esm/components/wizardLayout/GlobalTroubleshootEffects.d.ts.map +1 -1
  196. package/lib/esm/components/wizardLayout/GlobalTroubleshootEffects.js +38 -178
  197. package/lib/esm/components/wizardLayout/MainSection.d.ts.map +1 -1
  198. package/lib/esm/components/wizardLayout/MainSection.js +1 -2
  199. package/lib/esm/components/wizardLayout/WizardAside.d.ts.map +1 -1
  200. package/lib/esm/components/wizardLayout/WizardAside.js +4 -2
  201. package/lib/esm/components/wizardLayout/WizardLayout.d.ts.map +1 -1
  202. package/lib/esm/components/wizardLayout/WizardLayout.js +13 -12
  203. package/lib/esm/components/wizardLayout/WizardMain.d.ts.map +1 -1
  204. package/lib/esm/components/wizardLayout/WizardMain.js +0 -7
  205. package/lib/esm/components/wizardLayout/WizardNavigation.d.ts.map +1 -1
  206. package/lib/esm/components/wizardLayout/WizardNavigation.js +11 -14
  207. package/lib/esm/constants/caseDetailsConstants.d.ts +0 -5
  208. package/lib/esm/constants/caseDetailsConstants.d.ts.map +1 -1
  209. package/lib/esm/constants/caseDetailsConstants.js +0 -5
  210. package/lib/esm/context/CaseContext.d.ts.map +1 -1
  211. package/lib/esm/css/app.css +0 -28
  212. package/lib/esm/css/case.css +209 -60
  213. package/lib/esm/hooks/useAB.d.ts.map +1 -1
  214. package/lib/esm/hooks/useAB.js +23 -45
  215. package/lib/esm/hooks/useCaseUpdateErrorMessage.d.ts +1 -1
  216. package/lib/esm/hooks/useCaseUpdateErrorMessage.d.ts.map +1 -1
  217. package/lib/esm/hooks/useCaseUpdateErrorMessage.js +11 -21
  218. package/lib/esm/hooks/useResetCaseCreate.d.ts.map +1 -1
  219. package/lib/esm/hooks/useResetCaseCreate.js +11 -18
  220. package/lib/esm/hooks/useS3Upload.d.ts +4 -5
  221. package/lib/esm/hooks/useS3Upload.d.ts.map +1 -1
  222. package/lib/esm/hooks/useS3Upload.js +30 -28
  223. package/lib/esm/i18n/template-de.d.ts +2 -2
  224. package/lib/esm/i18n/template-de.js +2 -2
  225. package/lib/esm/i18n/template-es.d.ts +2 -2
  226. package/lib/esm/i18n/template-es.js +2 -2
  227. package/lib/esm/i18n/template-fr.d.ts +2 -2
  228. package/lib/esm/i18n/template-fr.js +2 -2
  229. package/lib/esm/i18n/template-it.d.ts +2 -2
  230. package/lib/esm/i18n/template-it.js +2 -2
  231. package/lib/esm/i18n/template-jp.d.ts +2 -2
  232. package/lib/esm/i18n/template-jp.js +2 -2
  233. package/lib/esm/i18n/template-ko.d.ts +2 -2
  234. package/lib/esm/i18n/template-ko.js +2 -2
  235. package/lib/esm/i18n/template-pt.d.ts +2 -2
  236. package/lib/esm/i18n/template-pt.js +2 -2
  237. package/lib/esm/i18n/template-ru.d.ts +2 -2
  238. package/lib/esm/i18n/template-ru.js +2 -2
  239. package/lib/esm/i18n/template-zh.d.ts +2 -2
  240. package/lib/esm/i18n/template-zh.js +2 -2
  241. package/lib/esm/index.js +0 -1
  242. package/lib/esm/models/cache.d.ts +2 -0
  243. package/lib/esm/models/cache.d.ts.map +1 -1
  244. package/lib/esm/reducers/CaseConstNTypes.d.ts +9 -123
  245. package/lib/esm/reducers/CaseConstNTypes.d.ts.map +1 -1
  246. package/lib/esm/reducers/CaseConstNTypes.js +7 -31
  247. package/lib/esm/reducers/CaseDetailsPageReducer.d.ts +5 -7
  248. package/lib/esm/reducers/CaseDetailsPageReducer.d.ts.map +1 -1
  249. package/lib/esm/reducers/CaseDetailsPageReducer.js +26 -58
  250. package/lib/esm/reducers/CaseDiscussionTabReducer.d.ts +12 -11
  251. package/lib/esm/reducers/CaseDiscussionTabReducer.d.ts.map +1 -1
  252. package/lib/esm/reducers/CaseDiscussionTabReducer.js +70 -63
  253. package/lib/esm/reducers/CaseHelpers.d.ts +1 -11
  254. package/lib/esm/reducers/CaseHelpers.d.ts.map +1 -1
  255. package/lib/esm/reducers/CaseHelpers.js +17 -119
  256. package/lib/esm/reducers/CaseOverviewReducer.d.ts +1 -3
  257. package/lib/esm/reducers/CaseOverviewReducer.d.ts.map +1 -1
  258. package/lib/esm/reducers/CaseOverviewReducer.js +5 -7
  259. package/lib/esm/reducers/CaseReducer.d.ts +11 -56
  260. package/lib/esm/reducers/CaseReducer.d.ts.map +1 -1
  261. package/lib/esm/reducers/CaseReducer.js +100 -284
  262. package/lib/esm/reducers/RecommendationsReducer.d.ts.map +1 -1
  263. package/lib/esm/reducers/RecommendationsReducer.js +18 -15
  264. package/lib/esm/scss/_main.scss +0 -9
  265. package/lib/esm/utils/caseOpenshiftClusterIdUtils.d.ts +2 -1
  266. package/lib/esm/utils/caseOpenshiftClusterIdUtils.d.ts.map +1 -1
  267. package/lib/esm/utils/caseOpenshiftClusterIdUtils.js +4 -4
  268. package/package.json +8 -9
  269. package/lib/esm/components/CaseEditView/ArchivedCaseBanner.d.ts +0 -8
  270. package/lib/esm/components/CaseEditView/ArchivedCaseBanner.d.ts.map +0 -1
  271. package/lib/esm/components/CaseEditView/ArchivedCaseBanner.js +0 -18
  272. package/lib/esm/components/CaseEditView/RequestRemoteSession/remoteSessionUtils.d.ts +0 -4
  273. package/lib/esm/components/CaseEditView/RequestRemoteSession/remoteSessionUtils.d.ts.map +0 -1
  274. package/lib/esm/components/CaseEditView/RequestRemoteSession/remoteSessionUtils.js +0 -23
  275. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/PostComment/useAttachmentUploadCompletion.d.ts +0 -29
  276. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/PostComment/useAttachmentUploadCompletion.d.ts.map +0 -1
  277. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/PostComment/useAttachmentUploadCompletion.js +0 -29
  278. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/PostComment/useCommentDrafts.d.ts +0 -17
  279. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/PostComment/useCommentDrafts.d.ts.map +0 -1
  280. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/PostComment/useCommentDrafts.js +0 -60
  281. package/lib/esm/components/CaseInformation/CaseLabels.d.ts +0 -3
  282. package/lib/esm/components/CaseInformation/CaseLabels.d.ts.map +0 -1
  283. package/lib/esm/components/CaseInformation/CaseLabels.js +0 -106
  284. package/lib/esm/components/CaseManagement/CaseLabelsCreate.d.ts +0 -4
  285. package/lib/esm/components/CaseManagement/CaseLabelsCreate.d.ts.map +0 -1
  286. package/lib/esm/components/CaseManagement/CaseLabelsCreate.js +0 -141
  287. package/lib/esm/components/ProductSelector/ProductNotEntitledWarning.d.ts +0 -3
  288. package/lib/esm/components/ProductSelector/ProductNotEntitledWarning.d.ts.map +0 -1
  289. package/lib/esm/components/ProductSelector/ProductNotEntitledWarning.js +0 -9
  290. package/lib/esm/graphql/index.d.ts +0 -4
  291. package/lib/esm/graphql/index.d.ts.map +0 -1
  292. package/lib/esm/graphql/index.js +0 -3
  293. package/lib/esm/graphql/mutations/createRMECaseEscalation.d.ts +0 -2
  294. package/lib/esm/graphql/mutations/createRMECaseEscalation.d.ts.map +0 -1
  295. package/lib/esm/graphql/mutations/createRMECaseEscalation.js +0 -24
  296. package/lib/esm/graphql/mutations/index.d.ts +0 -2
  297. package/lib/esm/graphql/mutations/index.d.ts.map +0 -1
  298. package/lib/esm/graphql/mutations/index.js +0 -1
  299. package/lib/esm/graphql/queries/getEscalationDetails.d.ts +0 -2
  300. package/lib/esm/graphql/queries/getEscalationDetails.d.ts.map +0 -1
  301. package/lib/esm/graphql/queries/getEscalationDetails.js +0 -31
  302. package/lib/esm/graphql/queries/index.d.ts +0 -2
  303. package/lib/esm/graphql/queries/index.d.ts.map +0 -1
  304. package/lib/esm/graphql/queries/index.js +0 -1
  305. package/lib/esm/graphql/schemas/escalation.d.ts +0 -66
  306. package/lib/esm/graphql/schemas/escalation.d.ts.map +0 -1
  307. package/lib/esm/graphql/schemas/escalation.js +0 -1
  308. package/lib/esm/graphql/schemas/index.d.ts +0 -2
  309. package/lib/esm/graphql/schemas/index.d.ts.map +0 -1
  310. package/lib/esm/graphql/schemas/index.js +0 -1
  311. package/lib/esm/hooks/useCaseComments/caseCommentsQuery.d.ts +0 -4
  312. package/lib/esm/hooks/useCaseComments/caseCommentsQuery.d.ts.map +0 -1
  313. package/lib/esm/hooks/useCaseComments/caseCommentsQuery.js +0 -52
  314. package/lib/esm/hooks/useCaseComments/index.d.ts +0 -7
  315. package/lib/esm/hooks/useCaseComments/index.d.ts.map +0 -1
  316. package/lib/esm/hooks/useCaseComments/index.js +0 -5
  317. package/lib/esm/hooks/useCaseComments/mapCaseComment.d.ts +0 -25
  318. package/lib/esm/hooks/useCaseComments/mapCaseComment.d.ts.map +0 -1
  319. package/lib/esm/hooks/useCaseComments/mapCaseComment.js +0 -75
  320. package/lib/esm/hooks/useCaseComments/types.d.ts +0 -85
  321. package/lib/esm/hooks/useCaseComments/types.d.ts.map +0 -1
  322. package/lib/esm/hooks/useCaseComments/types.js +0 -1
  323. package/lib/esm/hooks/useCaseComments/useCaseComments.d.ts +0 -17
  324. package/lib/esm/hooks/useCaseComments/useCaseComments.d.ts.map +0 -1
  325. package/lib/esm/hooks/useCaseComments/useCaseComments.js +0 -38
  326. package/lib/esm/hooks/useCaseComments/useCreateCaseComment.d.ts +0 -19
  327. package/lib/esm/hooks/useCaseComments/useCreateCaseComment.d.ts.map +0 -1
  328. package/lib/esm/hooks/useCaseComments/useCreateCaseComment.js +0 -33
  329. package/lib/esm/hooks/useCaseGroupUiState.d.ts +0 -3
  330. package/lib/esm/hooks/useCaseGroupUiState.d.ts.map +0 -1
  331. package/lib/esm/hooks/useCaseGroupUiState.js +0 -10
  332. package/lib/esm/hooks/useCaseHistory.d.ts +0 -26
  333. package/lib/esm/hooks/useCaseHistory.d.ts.map +0 -1
  334. package/lib/esm/hooks/useCaseHistory.js +0 -98
  335. package/lib/esm/hooks/useCaseLabelLinkMutations.d.ts +0 -23
  336. package/lib/esm/hooks/useCaseLabelLinkMutations.d.ts.map +0 -1
  337. package/lib/esm/hooks/useCaseLabelLinkMutations.js +0 -84
  338. package/lib/esm/models/caseHistory.d.ts +0 -80
  339. package/lib/esm/models/caseHistory.d.ts.map +0 -1
  340. package/lib/esm/models/caseHistory.js +0 -1
  341. package/lib/esm/utils/TimelineUtils.d.ts +0 -41
  342. package/lib/esm/utils/TimelineUtils.d.ts.map +0 -1
  343. package/lib/esm/utils/TimelineUtils.js +0 -135
  344. package/lib/esm/utils/caseHistoryUtils.d.ts +0 -66
  345. package/lib/esm/utils/caseHistoryUtils.d.ts.map +0 -1
  346. package/lib/esm/utils/caseHistoryUtils.js +0 -165
  347. package/lib/esm/utils/caseSeverityFtsGraphQLUtils.d.ts +0 -6
  348. package/lib/esm/utils/caseSeverityFtsGraphQLUtils.d.ts.map +0 -1
  349. package/lib/esm/utils/caseSeverityFtsGraphQLUtils.js +0 -26
@@ -7,10 +7,9 @@ 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 { useApolloClient } from '@apollo/client/react';
10
+ import { escalations, publicApi } from '@cee-eng/hydrajs';
11
11
  import { Button, ButtonVariant, Flex, FlexItem } from '@patternfly/react-core';
12
- import { LoadingIndicator, PFTable, TableComponent, ToastNotification } from '@rh-support/components';
13
- import { useGlobalStateContext } from '@rh-support/react-context';
12
+ import { LoadingIndicator, PFTable, TableComponent, ToastNotification, useFetch, } from '@rh-support/components';
14
13
  import { ability, resourceActions, resources } from '@rh-support/user-permissions';
15
14
  import { formatDate, sendToSentry } from '@rh-support/utils';
16
15
  import find from 'lodash/find';
@@ -19,10 +18,11 @@ import isEqual from 'lodash/isEqual';
19
18
  import React, { useEffect, useRef, useState } from 'react';
20
19
  import { Trans, useTranslation } from 'react-i18next';
21
20
  import { useCaseDispatch, useCaseSelector } from '../../../../context/CaseContext';
22
- import { useCaseDetailsPageDispatchContext } from '../../../../context/CaseDetailsPageContext';
23
- import { GET_CASE_COMMENTS, useCreateCaseComment } from '../../../../hooks/useCaseComments';
21
+ import { useCaseDetailsPageDispatchContext, useCaseDetailsPageStateContext, } from '../../../../context/CaseDetailsPageContext';
22
+ import { useCaseDiscussionTabDispatchContext, useCaseDiscussionTabStateContext, } from '../../../../context/CaseDiscussionTabContext';
24
23
  import { escalationStatus } from '../../../../models/escalation';
25
24
  import { fetchCaseEscalations } from '../../../../reducers/CaseDetailsPageReducer';
25
+ import { updateDiscussionStateComments } from '../../../../reducers/CaseDiscussionTabReducer';
26
26
  import { checkForCaseStatusToggleOnAttachOrComment } from '../../../../reducers/CaseReducer';
27
27
  const ESCALATION_MSG = 'Request Management Escalation:';
28
28
  const UPDATE_ESCALATION_MSG = 'Escalation update requested. You will receive an update from a manager shortly.';
@@ -30,20 +30,20 @@ const REOPEN_ESCALATION_MSG = 'Escalation reopened. A manager will review your r
30
30
  const CLOSURE_ESCALATION_MSG = 'Escalation closed.';
31
31
  export default function RMEEscalationList(props) {
32
32
  const { t } = useTranslation();
33
- const apolloClient = useApolloClient();
34
- const { globalMetadataState: { loggedInUsersAccount }, } = useGlobalStateContext();
35
- // TODO: migrate escalation update from Hydra to GraphQL
36
- // const { request: updateEscalationRequest, isFetching: isUpdatingEscalation } = useFetch(
37
- // escalations.updateEscalations,
38
- // { propgateErrors: true }
39
- // );
40
- const { createComment, loading: isPostingComment } = useCreateCaseComment();
41
- const caseSalesforceId = useCaseSelector((state) => state.caseDetails.id, isEqual);
42
- const existingCaseDetails = useCaseSelector((state) => state.caseDetails, isEqual);
33
+ const { request: updateEscalationRequest, isFetching: isUpdatingEscalation } = useFetch(escalations.updateEscalations, { propgateErrors: true });
34
+ const { request: postCommentRequest, isFetching: isPostingComment } = useFetch(publicApi.kase.postComment, {
35
+ propgateErrors: true,
36
+ });
37
+ const { request: updateCaseRequest, isFetching: isUpdatingCase } = useFetch(publicApi.kase.updateCase, {
38
+ propgateErrors: true,
39
+ });
40
+ const { sort, allDiscussions, discussionFiltersListState } = useCaseDiscussionTabStateContext();
41
+ const dispatchDiscussion = useCaseDiscussionTabDispatchContext();
42
+ const { caseDetailsPageState: { caseFeedbacksHydra }, } = useCaseDetailsPageStateContext();
43
43
  const caseDetailsPageDispatch = useCaseDetailsPageDispatchContext();
44
44
  const escalationUpdateInProgessIds = useRef([]);
45
45
  const caseDispatch = useCaseDispatch();
46
- const isUpdating = isPostingComment;
46
+ const isUpdating = isUpdatingEscalation || isPostingComment || isUpdatingCase;
47
47
  const [escalationList, setEscalationList] = useState([]);
48
48
  const cannUpdateRME = ability.can(resourceActions.UPDATE, resources.RME_ESCALATION);
49
49
  const { customerEscalation } = useCaseSelector((state) => ({
@@ -54,48 +54,62 @@ export default function RMEEscalationList(props) {
54
54
  // called everytime we are updating the escalation
55
55
  setEscalationList([...props.escalations]);
56
56
  }, [isUpdating, props.escalations]);
57
- // TODO: migrate updateEscalation from Hydra (escalations.updateEscalations) to GraphQL
58
- // const updateEscalation = async (escalationName: string, text: string, options: Partial<IEscalationUpdate>) => {
59
- // ...
60
- // };
61
- const submitEscalationComment = (escalationName, comment, message) => __awaiter(this, void 0, void 0, function* () {
62
- var _a;
57
+ const updateEscalation = (escalationName, text, options) => __awaiter(this, void 0, void 0, function* () {
58
+ const updateRequest = Object.assign({ escalationName, isPrivate: false, text, isRequestForUpdate: false, isRequestForReOpen: false, isRequestForClosure: false, status: escalationStatus.requestUpdate }, options);
63
59
  escalationUpdateInProgessIds.current.push(escalationName);
60
+ return yield updateEscalationRequest(escalationName, updateRequest);
61
+ });
62
+ const submitEscalationComment = (escalationNum, comment, message) => __awaiter(this, void 0, void 0, function* () {
64
63
  try {
65
- fetchCaseEscalations(caseDetailsPageDispatch, caseSalesforceId, apolloClient, false, Boolean((_a = loggedInUsersAccount === null || loggedInUsersAccount === void 0 ? void 0 : loggedInUsersAccount.data) === null || _a === void 0 ? void 0 : _a.secureSupport));
66
- yield createComment({
67
- caseId: caseSalesforceId,
68
- body: comment,
69
- isPublic: true,
70
- });
71
- apolloClient.refetchQueries({ include: [GET_CASE_COMMENTS] });
72
- // TODO: migrate updateCaseRequest(props.caseNumber, { customerEscalation: true }) to GraphQL
73
- yield checkForCaseStatusToggleOnAttachOrComment(caseDispatch, props.isInternal, props.caseStatus, {
74
- apolloClient,
64
+ escalationNum &&
65
+ fetchCaseEscalations(caseDetailsPageDispatch, props.caseNumber, props.accountNumber, false);
66
+ yield postCommentRequest({
75
67
  caseNumber: props.caseNumber,
76
- existingCaseDetails,
68
+ commentBody: comment,
69
+ contentType: 'plaintext',
77
70
  });
78
- ToastNotification.addSuccessMessage(message);
71
+ updateDiscussionStateComments(dispatchDiscussion, caseDispatch, props.caseNumber, allDiscussions, sort, caseFeedbacksHydra.data, discussionFiltersListState);
72
+ yield updateCaseRequest(props.caseNumber, { customerEscalation: true });
73
+ checkForCaseStatusToggleOnAttachOrComment(caseDispatch, props.isInternal, props.caseStatus);
74
+ escalationNum && ToastNotification.addSuccessMessage(message);
79
75
  }
80
76
  catch (e) {
81
77
  ToastNotification.addDangerMessage(e);
82
78
  sendToSentry(e, {}, 'RME form submit error');
83
79
  }
84
80
  finally {
85
- escalationUpdateInProgessIds.current = escalationUpdateInProgessIds.current.filter((item) => item !== escalationName);
81
+ escalationUpdateInProgessIds.current = escalationUpdateInProgessIds.current.filter((item) => item !== escalationNum);
86
82
  }
87
83
  });
88
84
  const requestUpdateRMEEscalation = (escalationName) => __awaiter(this, void 0, void 0, function* () {
89
85
  const comment = `${ESCALATION_MSG}\n ${UPDATE_ESCALATION_MSG}`;
90
- yield submitEscalationComment(escalationName, comment, UPDATE_ESCALATION_MSG);
86
+ try {
87
+ const updatedInfo = yield updateEscalation(escalationName, comment, { isRequestForUpdate: true });
88
+ updatedInfo && submitEscalationComment(updatedInfo.escalationName, comment, UPDATE_ESCALATION_MSG);
89
+ }
90
+ catch (e) {
91
+ ToastNotification.addDangerMessage(e);
92
+ }
91
93
  });
92
94
  const requestClosureRMEEscalation = (escalationName) => __awaiter(this, void 0, void 0, function* () {
93
95
  const comment = `${ESCALATION_MSG}\n ${CLOSURE_ESCALATION_MSG}`;
94
- yield submitEscalationComment(escalationName, comment, CLOSURE_ESCALATION_MSG);
96
+ try {
97
+ const updatedInfo = yield updateEscalation(escalationName, comment, { isRequestForClosure: true });
98
+ updatedInfo && submitEscalationComment(updatedInfo.escalationName, comment, CLOSURE_ESCALATION_MSG);
99
+ }
100
+ catch (e) {
101
+ ToastNotification.addDangerMessage(e);
102
+ }
95
103
  });
96
104
  const requestReOpenRMEEscalation = (escalationName) => __awaiter(this, void 0, void 0, function* () {
97
105
  const comment = `${ESCALATION_MSG}\n ${REOPEN_ESCALATION_MSG}`;
98
- yield submitEscalationComment(escalationName, comment, REOPEN_ESCALATION_MSG);
106
+ try {
107
+ const updatedInfo = yield updateEscalation(escalationName, comment, { isRequestForReOpen: true });
108
+ updatedInfo && submitEscalationComment(updatedInfo.escalationName, comment, REOPEN_ESCALATION_MSG);
109
+ }
110
+ catch (e) {
111
+ ToastNotification.addDangerMessage(e);
112
+ }
99
113
  });
100
114
  const renderActionButtons = (escalation) => {
101
115
  if (isUpdating && escalationUpdateInProgessIds.current.includes(escalation.name)) {
@@ -1 +1 @@
1
- {"version":3,"file":"CaseGroup.d.ts","sourceRoot":"","sources":["../../../../src/components/CaseInformation/CaseGroup.tsx"],"names":[],"mappings":"AAyBA,OAAO,KAAuD,MAAM,OAAO,CAAC;AAmB5E,UAAU,MAAM;IACZ,IAAI,CAAC,EAAE,OAAO,CAAC;CAClB;AAWD,iBAAS,SAAS,CAAC,KAAK,EAAE,MAAM,qBAmf/B;AAED,eAAe,SAAS,CAAC"}
1
+ {"version":3,"file":"CaseGroup.d.ts","sourceRoot":"","sources":["../../../../src/components/CaseInformation/CaseGroup.tsx"],"names":[],"mappings":"AAqBA,OAAO,KAAuD,MAAM,OAAO,CAAC;AAiB5E,UAAU,MAAM;IACZ,IAAI,CAAC,EAAE,OAAO,CAAC;CAClB;AAWD,iBAAS,SAAS,CAAC,KAAK,EAAE,MAAM,qBAqW/B;AAED,eAAe,SAAS,CAAC"}
@@ -7,23 +7,20 @@ 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 { useApolloClient } from '@apollo/client/react';
11
- import { Button, HelperText, HelperTextItem, MenuToggle, Select, SelectList, SelectOption, Spinner, TextInputGroup, TextInputGroupMain, TextInputGroupUtilities, ValidatedOptions, } from '@patternfly/react-core';
10
+ import { Button, MenuToggle, Select, SelectList, SelectOption, Spinner, TextInputGroup, TextInputGroupMain, TextInputGroupUtilities, } from '@patternfly/react-core';
12
11
  import TimesIcon from '@patternfly/react-icons/dist/js/icons/times-icon';
13
12
  import { ToastNotification, useSelectKeyboardNavigator, ValueChangedIcon } from '@rh-support/components';
14
13
  import { GlobalMetadataStateContext, useCanEditCase } from '@rh-support/react-context';
15
- import { AbilityContext, resourceActions, resources } from '@rh-support/user-permissions';
14
+ import { toOption } from '@rh-support/utils';
16
15
  import find from 'lodash/find';
17
16
  import isEmpty from 'lodash/isEmpty';
18
17
  import isEqual from 'lodash/isEqual';
19
18
  import React, { useContext, useEffect, useRef, useState } from 'react';
20
19
  import { Trans, useTranslation } from 'react-i18next';
21
- import { Link } from 'react-router-dom';
22
20
  import { useCaseDispatch, useCaseSelector } from '../../context/CaseContext';
23
21
  import { RouteContext } from '../../context/RouteContext';
24
- import { useCaseGroupUiState } from '../../hooks/useCaseGroupUiState';
25
22
  import { useCaseUpdateErrorMessage } from '../../hooks/useCaseUpdateErrorMessage';
26
- import { fetchCaseGroupsForContactGraphQL, setCaseDetails, setCaseState, setSelectedCaseGroupUsers, updateCaseDetailsGraphQL, } from '../../reducers/CaseReducer';
23
+ import { fetchCaseGroupsForAccount, fetchCaseGroupsForSSO, setCaseDetails, setSelectedCaseGroupUsers, updateCaseDetails, } from '../../reducers/CaseReducer';
27
24
  import { PDFContext } from '../CaseEditView/PDFContainer';
28
25
  import { CaseValuesToWatch } from '../shared/Constants';
29
26
  import { getChangedValueTooltip } from '../shared/utils';
@@ -38,41 +35,20 @@ const emptyCaseGroup = {
38
35
  function CaseGroup(props) {
39
36
  const { t } = useTranslation();
40
37
  const caseUpdateError = useCaseUpdateErrorMessage();
41
- const { groupNumber, caseNumber, caseId, accountNumber, ownersCaseGroups, groupName, isCaseOwnerUpdating, contactSSOName, selectedOwnerContactId, selectedOwnerIsOrgAdmin, pendingCaseOwnerUpdate, existingCaseDetails, } = useCaseSelector((state) => {
42
- var _a, _b, _c, _d, _e;
43
- return ({
44
- caseNumber: state.caseDetails.caseNumber,
45
- caseId: state.caseDetails.id,
46
- groupNumber: state.caseDetails.groupNumber,
47
- accountNumber: state.caseDetails.accountNumberRef,
48
- ownersCaseGroups: state.ownersCaseGroups,
49
- groupName: state.caseDetails.groupName,
50
- isCaseOwnerUpdating: state.isCaseOwnerUpdating,
51
- contactSSOName: state.caseDetails.contactSSOName,
52
- selectedOwnerContactId: (_b = (_a = state.selectedOwner) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b.id,
53
- selectedOwnerIsOrgAdmin: (_e = (_d = (_c = state.selectedOwner) === null || _c === void 0 ? void 0 : _c.data) === null || _d === void 0 ? void 0 : _d.isOrgAdmin) !== null && _e !== void 0 ? _e : false,
54
- pendingCaseOwnerUpdate: state.pendingCaseOwnerUpdate,
55
- existingCaseDetails: state.caseDetails,
56
- });
57
- }, isEqual);
38
+ const { groupNumber, caseNumber, accountNumber, selectedAccountDetails, ownersCaseGroups, groupName, isCaseOwnerUpdating, contactSSOName, } = useCaseSelector((state) => ({
39
+ caseNumber: state.caseDetails.caseNumber,
40
+ groupNumber: state.caseDetails.groupNumber,
41
+ accountNumber: state.caseDetails.accountNumberRef,
42
+ ownersCaseGroups: state.ownersCaseGroups,
43
+ selectedAccountDetails: state.selectedAccountDetails,
44
+ groupName: state.caseDetails.groupName,
45
+ isCaseOwnerUpdating: state.isCaseOwnerUpdating,
46
+ contactSSOName: state.caseDetails.contactSSOName,
47
+ }), isEqual);
58
48
  const caseDispatch = useCaseDispatch();
59
- const apolloClient = useApolloClient();
60
49
  const { isExportingPDF } = useContext(PDFContext);
61
50
  const { routeState: { isNextBtnClickedToShowValidationError }, } = useContext(RouteContext);
62
- const { isGroupMandatory, shouldHideSelector, isNoGroupsBlockedState } = useCaseGroupUiState();
63
- useEffect(() => {
64
- if (!shouldHideSelector || !isEmpty(caseNumber))
65
- return;
66
- setCaseDetails(caseDispatch, { groupNumber: '', groupName: '' });
67
- }, [shouldHideSelector, caseNumber, caseDispatch]);
68
- useEffect(() => {
69
- if (!caseNumber)
70
- return;
71
- if (isEmpty(selectedOwnerContactId) || isEmpty(accountNumber))
72
- return;
73
- fetchCaseGroupsForContactGraphQL(caseDispatch, apolloClient, selectedOwnerContactId, accountNumber, null, selectedOwnerIsOrgAdmin, groupNumber !== null && groupNumber !== void 0 ? groupNumber : '');
74
- // eslint-disable-next-line react-hooks/exhaustive-deps
75
- }, [selectedOwnerContactId, accountNumber, selectedOwnerIsOrgAdmin]);
51
+ const isGroupMandatory = selectedAccountDetails.data.requireCGroupOnCreate;
76
52
  const [selectedCaseGroup, setSelectedCaseGroup] = useState(isGroupMandatory ? undefined : emptyCaseGroup);
77
53
  const [isCaseGroupInvalid, setCaseGroupInvalid] = useState(false);
78
54
  const [isSelectedUngroupedInvalid, setIsSelectedUngroupedInvalid] = useState(false);
@@ -83,10 +59,7 @@ function CaseGroup(props) {
83
59
  const [shouldFilter, setShouldFilter] = useState(false);
84
60
  const textInputRef = useRef();
85
61
  const canEditCase = useCanEditCase();
86
- const ability = useContext(AbilityContext);
87
62
  const { globalMetadataState: { loggedInUserRights, loggedInUser }, } = useContext(GlobalMetadataStateContext);
88
- const canViewManageTab = ability.can(resourceActions.READ, resources.MANAGE);
89
- const canViewCaseGroups = ability.can(resourceActions.READ, resources.CASE_GROUPS) && canViewManageTab;
90
63
  // value changed logic to show a non local group change
91
64
  const [localGroupChange, setLocalGroupChange] = useState(false);
92
65
  const afterGroupLocalChange = () => setLocalGroupChange(false);
@@ -97,21 +70,14 @@ function CaseGroup(props) {
97
70
  return isInValidGroup;
98
71
  };
99
72
  const onCaseGroupUpdate = (caseDetails) => __awaiter(this, void 0, void 0, function* () {
100
- var _a;
101
73
  if (canEditCase.alert())
102
74
  return;
103
75
  setCaseGroupUpdating(true);
104
76
  try {
105
- const pendingOwnerUpdate = pendingCaseOwnerUpdate;
106
- const updatePayload = pendingOwnerUpdate
107
- ? Object.assign({ contactId: pendingOwnerUpdate.contactId, contactSSOName: pendingOwnerUpdate.contactSSOName, groupNumber: caseDetails.groupNumber }, ((_a = pendingOwnerUpdate.phoneCaseUpdate) !== null && _a !== void 0 ? _a : {})) : { groupNumber: caseDetails.groupNumber };
108
- yield updateCaseDetailsGraphQL(caseDispatch, apolloClient, caseNumber, updatePayload, false, pendingOwnerUpdate ? { existingCaseDetails } : { salesforceCaseId: caseId });
109
- if (pendingOwnerUpdate) {
110
- setCaseState(caseDispatch, { pendingCaseOwnerUpdate: null });
111
- setSelectedCaseGroupUsers(caseDispatch, accountNumber, caseDetails.groupNumber, loggedInUserRights.data);
112
- }
113
- ToastNotification.addSuccessMessage(t(`Group has been successfully updated`));
77
+ yield updateCaseDetails(caseDispatch, caseNumber, caseDetails);
114
78
  setCaseGroupUpdating(false);
79
+ setSelectedCaseGroupUsers(caseDispatch, accountNumber, caseDetails.groupNumber, loggedInUserRights.data);
80
+ ToastNotification.addSuccessMessage(t(`Group has been successfully updated`));
115
81
  }
116
82
  catch (e) {
117
83
  setCaseGroupUpdating(false);
@@ -119,7 +85,7 @@ function CaseGroup(props) {
119
85
  }
120
86
  });
121
87
  const onCaseGroupChange = (selection) => __awaiter(this, void 0, void 0, function* () {
122
- if (!isInvalidateCaseGroup(selection) && (selection.groupNum !== groupNumber || !selected)) {
88
+ if (!isInvalidateCaseGroup(selection) && selection.groupNum !== groupNumber) {
123
89
  const caseDetails = {
124
90
  groupNumber: selection.groupNum,
125
91
  groupName: selection.name || '',
@@ -127,7 +93,7 @@ function CaseGroup(props) {
127
93
  setIsOpen(false);
128
94
  if (!isEmpty(caseNumber)) {
129
95
  yield onCaseGroupUpdate(caseDetails);
130
- setIsSelectedUngroupedInvalid(isGroupMandatory && !selection.groupNum);
96
+ setIsSelectedUngroupedInvalid(isGroupMandatory && (!selection.groupNum || selection.groupNum === '-1'));
131
97
  }
132
98
  else {
133
99
  setCaseDetails(caseDispatch, caseDetails);
@@ -154,7 +120,10 @@ function CaseGroup(props) {
154
120
  ? list.filter((v) => v.name.toLowerCase().includes(inputValue === null || inputValue === void 0 ? void 0 : inputValue.toLowerCase()))
155
121
  : list;
156
122
  if (isGroupMandatory) {
157
- return options.filter((g) => !!g.groupNum);
123
+ // having group selected for case is mandatory, make 'UnGrouped Case' option disabled
124
+ const listItems = options.map((item) => (Object.assign(Object.assign({}, item), { disabled: item.groupNum === '-1' })));
125
+ // As group is mandatory, 'UnGrouped Case' cannot be selected we filter it out
126
+ return listItems.filter((g) => g.groupNum !== '-1');
158
127
  }
159
128
  else
160
129
  return options;
@@ -165,11 +134,11 @@ function CaseGroup(props) {
165
134
  useEffect(() => {
166
135
  var _a, _b;
167
136
  // case group may change outside of PCM. On group load check if we have a valid group
168
- setIsSelectedUngroupedInvalid(isGroupMandatory && !groupNumber);
137
+ setIsSelectedUngroupedInvalid(isGroupMandatory && (!groupNumber || groupNumber === '-1'));
169
138
  if (groupNumber === undefined)
170
139
  return;
171
140
  if (((_b = (_a = ownersCaseGroups === null || ownersCaseGroups === void 0 ? void 0 : ownersCaseGroups.data) === null || _a === void 0 ? void 0 : _a.length) !== null && _b !== void 0 ? _b : 0) === 0) {
172
- if (groupNumber && groupName && caseNumber) {
141
+ if (groupNumber !== '-1' && groupName && caseNumber) {
173
142
  setSelectedCaseGroup({
174
143
  name: groupName,
175
144
  groupNum: groupNumber,
@@ -181,16 +150,11 @@ function CaseGroup(props) {
181
150
  setInputValue(groupName);
182
151
  setSelected(groupName);
183
152
  }
184
- else if (!groupNumber) {
185
- setSelectedCaseGroup(isGroupMandatory ? undefined : emptyCaseGroup);
186
- setInputValue('');
187
- setSelected('');
188
- }
189
153
  return;
190
154
  }
191
155
  const selectedGroup = find(ownersCaseGroups.data, (g) => g.groupNum === groupNumber);
192
156
  if (selectedGroup && selectedGroup.groupNum) {
193
- if (isGroupMandatory && !selectedGroup.groupNum) {
157
+ if (isGroupMandatory && selectedGroup.groupNum === '-1') {
194
158
  setCaseGroupInvalid(true);
195
159
  }
196
160
  else {
@@ -199,117 +163,46 @@ function CaseGroup(props) {
199
163
  setInputValue(selectedGroup.name);
200
164
  setSelected(selectedGroup.name);
201
165
  }
202
- else if (groupNumber && groupName) {
203
- setSelectedCaseGroup({
204
- name: groupName,
205
- groupNum: groupNumber,
206
- defaultMembers: [],
207
- isDefault: false,
208
- isPrivate: false,
209
- members: [],
210
- });
211
- setInputValue(groupName);
212
- setSelected(groupName);
213
- }
214
- else if (!groupNumber) {
215
- setSelectedCaseGroup(isGroupMandatory ? undefined : emptyCaseGroup);
216
- setInputValue('');
217
- setSelected('');
218
- setCaseGroupInvalid(!!isGroupMandatory);
219
- }
220
166
  else {
221
167
  setCaseGroupInvalid(true);
222
168
  }
223
169
  // eslint-disable-next-line react-hooks/exhaustive-deps
224
- }, [ownersCaseGroups, caseNumber, isGroupMandatory, groupNumber, groupName]);
225
- const onCaseGroupClear = () => __awaiter(this, void 0, void 0, function* () {
226
- if (canEditCase.alert())
170
+ }, [ownersCaseGroups, caseNumber, isGroupMandatory]);
171
+ useEffect(() => {
172
+ // On case edit, groups are loaded via fetchCaseDetails/setCaseOwner and OwnerSelector.
173
+ if (caseNumber)
227
174
  return;
228
- const caseDetails = {
229
- groupNumber: '',
230
- groupName: '',
231
- };
232
- if (caseNumber) {
233
- setCaseGroupUpdating(true);
234
- try {
235
- yield updateCaseDetailsGraphQL(caseDispatch, apolloClient, caseNumber, { groupNumber: '' }, false, {
236
- salesforceCaseId: caseId,
237
- });
238
- setCaseDetails(caseDispatch, caseDetails);
239
- setCaseGroupUpdating(false);
240
- ToastNotification.addSuccessMessage(t(`Group has been successfully updated`));
241
- }
242
- catch (e) {
243
- setCaseGroupUpdating(false);
244
- caseUpdateError.showError(e, t(`Group failed to update`));
245
- return;
175
+ if (loggedInUserRights.data.isInternal()) {
176
+ if (accountNumber) {
177
+ fetchCaseGroupsForAccount(caseDispatch, accountNumber);
246
178
  }
247
179
  }
248
- else {
249
- setCaseDetails(caseDispatch, caseDetails);
250
- setSelectedCaseGroupUsers(caseDispatch, accountNumber, '', loggedInUserRights.data);
180
+ else if (contactSSOName) {
181
+ fetchCaseGroupsForSSO(caseDispatch, contactSSOName);
251
182
  }
252
- setSelectedCaseGroup(emptyCaseGroup);
253
- setCaseGroupInvalid(!!isGroupMandatory);
254
- setInputValue('');
255
- setSelected('');
256
- setIsOpen(false);
257
- });
258
- const caseGroupRequiredErrorMessage = caseNumber
259
- ? t('Please select a Case Group to update the case')
260
- : t('Please select a Case Group to create the case');
261
- const renderNoGroupsBlockedMessage = () => {
183
+ }, [accountNumber, caseDispatch, caseNumber, contactSSOName, loggedInUserRights.data]);
184
+ const onCaseGroupClear = () => __awaiter(this, void 0, void 0, function* () {
262
185
  var _a;
263
- if (canViewCaseGroups) {
264
- return (React.createElement("span", { className: "case-group-field-helper__text" },
265
- t('Groups are enabled for your account, but none have been set up yet. Please '),
266
- React.createElement(Link, { className: "case-group-field-helper__create-link", to: "/manage/groups" }, t('create a group')),
267
- caseNumber ? t(' before you update a case.') : t(' before you create a case.')));
268
- }
269
- if ((_a = loggedInUser === null || loggedInUser === void 0 ? void 0 : loggedInUser.data) === null || _a === void 0 ? void 0 : _a.isOrgAdmin) {
270
- return t('Groups are enabled for your account, but no groups have been set up yet.');
186
+ try {
187
+ yield onCaseGroupChange(toOption(emptyCaseGroup));
188
+ setSelectedCaseGroup(emptyCaseGroup);
189
+ setInputValue('');
190
+ setSelected('');
191
+ (_a = textInputRef === null || textInputRef === void 0 ? void 0 : textInputRef.current) === null || _a === void 0 ? void 0 : _a.focus();
192
+ setIsOpen(false);
271
193
  }
272
- return caseNumber
273
- ? t('Groups are enabled for your account, but none exist yet. Please contact your org admin to set one up before you update a case.')
274
- : t('Groups are enabled for your account, but none exist yet. Please contact your org admin to set one up before you create a case.');
275
- };
276
- const groupFieldErrorMessage = isNoGroupsBlockedState ? null : caseGroupRequiredErrorMessage;
277
- const showMandatoryGroupValidationError = !isExportingPDF &&
278
- (isNoGroupsBlockedState ||
279
- (isGroupMandatory &&
280
- (isCaseGroupInvalid || isSelectedUngroupedInvalid || !!pendingCaseOwnerUpdate) &&
281
- isEmpty(groupNumber) &&
282
- (!!caseNumber || isNextBtnClickedToShowValidationError || isEmpty(groupNumber))));
283
- const showGroupFieldValidationError = showMandatoryGroupValidationError || ownersCaseGroups.isError;
284
- const renderGroupFieldHelperContent = () => {
285
- if (isNoGroupsBlockedState) {
286
- return renderNoGroupsBlockedMessage();
194
+ catch (error) {
195
+ console.log(error);
287
196
  }
288
- return groupFieldErrorMessage;
289
- };
290
- const groupFieldHelperContent = renderGroupFieldHelperContent();
291
- const showHelperText = !showMandatoryGroupValidationError;
292
- useEffect(() => {
293
- setCaseState(caseDispatch, { showMandatoryCaseGroupValidationError: !!showMandatoryGroupValidationError });
294
- return () => {
295
- setCaseState(caseDispatch, { showMandatoryCaseGroupValidationError: false });
296
- };
297
- }, [caseDispatch, showMandatoryGroupValidationError]);
197
+ });
198
+ const showHelperText = !isSelectedUngroupedInvalid || (!isCaseGroupInvalid && !isGroupMandatory);
199
+ const showEmptyValidationError = !caseNumber && isNextBtnClickedToShowValidationError && isCaseGroupInvalid;
298
200
  const canNotChangeGroup = () => !loggedInUserRights.data.isInternal() &&
299
201
  !loggedInUser.data.isOrgAdmin &&
300
202
  loggedInUser.data.ssoUsername !== contactSSOName &&
301
203
  !loggedInUserRights.data.isPartner();
302
- const isSelectorDisabled = isNoGroupsBlockedState ||
303
- ownersCaseGroups.isError ||
304
- ownersCaseGroups.isFetching ||
305
- isCaseGroupUpdating ||
306
- isCaseOwnerUpdating ||
307
- canNotChangeGroup() ||
308
- canEditCase.isCaseNotEditable;
309
204
  const onToggleClick = () => {
310
205
  var _a;
311
- if (isNoGroupsBlockedState)
312
- return;
313
206
  setIsOpen((prev) => !prev);
314
207
  if (!isOpen) {
315
208
  setShouldFilter(false);
@@ -328,20 +221,18 @@ function CaseGroup(props) {
328
221
  setShouldFilter(true);
329
222
  }
330
223
  };
331
- const toggle = (toggleRef) => (React.createElement(MenuToggle, { ref: toggleRef, variant: "typeahead", onClick: onToggleClick, isExpanded: isOpen, isDisabled: isSelectorDisabled, status: showGroupFieldValidationError ? 'danger' : undefined, isFullWidth: true },
224
+ const toggle = (toggleRef) => (React.createElement(MenuToggle, { ref: toggleRef, variant: "typeahead", onClick: onToggleClick, isExpanded: isOpen, isDisabled: ownersCaseGroups.isError ||
225
+ ownersCaseGroups.isFetching ||
226
+ isCaseGroupUpdating ||
227
+ isCaseOwnerUpdating ||
228
+ canNotChangeGroup(), status: ownersCaseGroups.isError || showEmptyValidationError || (caseNumber && isSelectedUngroupedInvalid)
229
+ ? 'danger'
230
+ : undefined, isFullWidth: true },
332
231
  React.createElement(TextInputGroup, { isPlain: true },
333
- React.createElement(TextInputGroupMain, { value: inputValue, onClick: onToggleClick, onChange: onInputQueryChange, onKeyDown: onInputKeyDown, onBlur: () => {
334
- if (selected) {
335
- setInputValue(selected);
336
- setShouldFilter(false);
337
- }
338
- }, autoComplete: "off", innerRef: textInputRef, placeholder: t(`Select a group`), role: "combobox", isExpanded: isOpen, "aria-controls": "select-typeahead-listbox", "aria-describedby": showGroupFieldValidationError ? "get-support-group-helper'" : undefined, disabled: isSelectorDisabled }),
232
+ React.createElement(TextInputGroupMain, { value: inputValue, onClick: onToggleClick, onChange: onInputQueryChange, onKeyDown: onInputKeyDown, autoComplete: "off", innerRef: textInputRef, placeholder: t(`Select a group`), role: "combobox", isExpanded: isOpen, "aria-controls": "select-typeahead-listbox" }),
339
233
  !isCaseOwnerUpdating && (ownersCaseGroups.isFetching || isCaseGroupUpdating) ? (React.createElement(TextInputGroupUtilities, null,
340
234
  React.createElement(Spinner, { size: "md" }))) : (React.createElement(TextInputGroupUtilities, Object.assign({}, (!inputValue ? { style: { display: 'none' } } : {})),
341
235
  React.createElement(Button, { icon: React.createElement(TimesIcon, { "aria-hidden": true }), variant: "plain", onClick: onCaseGroupClear, "aria-label": "Clear input value" }))))));
342
- if (shouldHideSelector) {
343
- return null;
344
- }
345
236
  return (React.createElement("div", { className: "form-group" },
346
237
  React.createElement("label", { htmlFor: "get-support-group" },
347
238
  React.createElement(Trans, null, "Group"),
@@ -349,8 +240,10 @@ function CaseGroup(props) {
349
240
  isGroupMandatory && !isExportingPDF && (React.createElement("span", { className: "form-required", "aria-hidden": true }, "*"))),
350
241
  React.createElement(Select, { id: "get-support-group", "data-tracking-id": "get-support-group", isOpen: isOpen, selected: selected, onSelect: (event, val) => onCaseGroupChange(val), onOpenChange: () => setIsOpen(false), toggle: toggle, shouldFocusFirstItemOnOpen: false, onBlur: () => onOuterClickGroupCheck, isScrollable: true, popperProps: { direction: 'down', enableFlip: false } },
351
242
  React.createElement(SelectList, null, computeDropdownList().map((option, index) => (React.createElement(SelectOption, { key: option.name, isFocused: focusedItemIndex === index, value: option, isSelected: option.name === selected }, option.name))))),
352
- showGroupFieldValidationError && groupFieldHelperContent && (React.createElement(HelperText, { className: "pf-v6-u-mt-sm pf-v6-u-mb-sm case-group-field-helper" },
353
- React.createElement(HelperTextItem, { variant: ValidatedOptions.error, id: "get-support-group-helper'" }, groupFieldHelperContent))),
243
+ caseNumber && isSelectedUngroupedInvalid && !isExportingPDF && (React.createElement("p", { className: "form-instructions form-invalid" },
244
+ React.createElement(Trans, null, "'Ungrouped Case' cannot be selected. Please select a group."))),
245
+ showEmptyValidationError && isGroupMandatory && !isExportingPDF && (React.createElement("p", { className: "form-instructions form-invalid" },
246
+ React.createElement(Trans, null, "Case group cannot be empty."))),
354
247
  showHelperText && (React.createElement("p", { className: "form-instructions" },
355
248
  React.createElement(Trans, null, "Organization administrators have the permission to manage groups.")))));
356
249
  }
@@ -1 +1 @@
1
- {"version":3,"file":"CaseInformation.d.ts","sourceRoot":"","sources":["../../../../src/components/CaseInformation/CaseInformation.tsx"],"names":[],"mappings":"AAYA,OAAO,KAAgC,MAAM,OAAO,CAAC;AAErD,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAQvD,UAAU,MAAM;IACZ,UAAU,EAAE,mBAAmB,CAAC;CACnC;AAED,MAAM,CAAC,OAAO,UAAU,eAAe,CAAC,KAAK,EAAE,MAAM,qBAmHpD"}
1
+ {"version":3,"file":"CaseInformation.d.ts","sourceRoot":"","sources":["../../../../src/components/CaseInformation/CaseInformation.tsx"],"names":[],"mappings":"AAWA,OAAO,KAAgC,MAAM,OAAO,CAAC;AAErD,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAQvD,UAAU,MAAM;IACZ,UAAU,EAAE,mBAAmB,CAAC;CACnC;AAED,MAAM,CAAC,OAAO,UAAU,eAAe,CAAC,KAAK,EAAE,MAAM,qBAkHpD"}
@@ -1,4 +1,3 @@
1
- import { useApolloClient } from '@apollo/client/react';
2
1
  import { AlertMessage, AlertType, LoadingIndicator } from '@rh-support/components';
3
2
  import { fetchCaseSeverities, fetchCaseTypes, fetchLanguageMetadata, GlobalMetadataDispatchContext, GlobalMetadataStateContext, } from '@rh-support/react-context';
4
3
  import { haventLoadedMetadata } from '@rh-support/utils';
@@ -8,18 +7,18 @@ import React, { useContext, useEffect } from 'react';
8
7
  import { Trans, useTranslation } from 'react-i18next';
9
8
  import { useCaseSelector } from '../../context/CaseContext';
10
9
  import { OpenShiftClusterId } from '../CaseManagement/OpenShiftClusterId';
11
- // import { Hostname } from '../ImproveCase/Hostname';
10
+ import { Hostname } from '../ImproveCase/Hostname';
12
11
  import KtQuestions from '../ImproveCase/KtQuestions';
13
12
  import ClusterRecommendations from '../Recommendations/ClusterRecommendations';
14
13
  export default function CaseInformation(props) {
15
14
  const { t } = useTranslation();
16
15
  const { globalMetadataState: { allCaseTypes, allCaseSeverities, caseLanguages, loggedInUser, loggedInUserJwtToken, loggedInUsersAccount, loggedInUserRights, }, } = useContext(GlobalMetadataStateContext);
17
16
  const dispatchToGlobalMetadataReducer = useContext(GlobalMetadataDispatchContext);
18
- const apolloClient = useApolloClient();
19
- const { contactSSOName, selectedAccountDetails, ownersCaseGroups } = useCaseSelector((state) => ({
17
+ const { contactSSOName, selectedAccountDetails, ownersCaseGroups, hasInvalidEntitlements } = useCaseSelector((state) => ({
20
18
  contactSSOName: state.caseDetails.contactSSOName,
21
19
  ownersCaseGroups: state.ownersCaseGroups,
22
20
  selectedAccountDetails: state.selectedAccountDetails,
21
+ hasInvalidEntitlements: state.hasInvalidEntitlements,
23
22
  }), isEqual);
24
23
  const isMetadataLoading = () => {
25
24
  return !isMetadataLoadingError() && (loggedInUser.isFetching || selectedAccountDetails.isFetching);
@@ -39,13 +38,13 @@ export default function CaseInformation(props) {
39
38
  }
40
39
  const allPromisses = [];
41
40
  if (haventLoadedMetadata(allCaseTypes)) {
42
- allPromisses.push(fetchCaseTypes(dispatchToGlobalMetadataReducer, apolloClient));
41
+ allPromisses.push(fetchCaseTypes(dispatchToGlobalMetadataReducer, loggedInUsersAccount.data.secureSupport));
43
42
  }
44
43
  if (haventLoadedMetadata(allCaseSeverities)) {
45
- allPromisses.push(fetchCaseSeverities(dispatchToGlobalMetadataReducer, apolloClient));
44
+ allPromisses.push(fetchCaseSeverities(dispatchToGlobalMetadataReducer, loggedInUsersAccount.data.secureSupport));
46
45
  }
47
46
  if (haventLoadedMetadata(caseLanguages)) {
48
- allPromisses.push(fetchLanguageMetadata(dispatchToGlobalMetadataReducer, apolloClient));
47
+ allPromisses.push(fetchLanguageMetadata(dispatchToGlobalMetadataReducer));
49
48
  }
50
49
  Promise.all(allPromisses);
51
50
  }, [
@@ -57,7 +56,6 @@ export default function CaseInformation(props) {
57
56
  loggedInUserJwtToken,
58
57
  selectedAccountDetails,
59
58
  loggedInUsersAccount.data.secureSupport,
60
- apolloClient,
61
59
  ]);
62
60
  return (React.createElement(React.Fragment, null,
63
61
  React.createElement(LoadingIndicator, { show: isMetadataLoading(), size: "lg" }),
@@ -68,17 +66,18 @@ export default function CaseInformation(props) {
68
66
  ' ',
69
67
  React.createElement("a", { href: "/support/contact/customerService" }, "Customer Service"),
70
68
  " for assistance.")),
71
- React.createElement(AlertMessage, { show: !loggedInUserRights.data.isEntitled(), variant: AlertType.DANGER, className: "pf-v6-u-mt-lg", isInline: true },
69
+ React.createElement(AlertMessage, { show: hasInvalidEntitlements, variant: AlertType.DANGER, className: "pf-v6-u-mt-lg", isInline: true },
72
70
  React.createElement(Trans, { i18nKey: "i18ValidEntitlementContactCustomerService" },
73
71
  "You need a valid entitlement to create a case.\u00A0 Please contact",
74
72
  ' ',
75
73
  React.createElement("a", { href: "/support/contact/customerService" }, "Customer Service"),
76
74
  " for assistance.")),
77
- loggedInUserRights.data.isEntitled() &&
75
+ !hasInvalidEntitlements &&
78
76
  !isMetadataLoading() &&
79
77
  !isMetadataLoadingError() &&
80
78
  loggedInUserRights.data.canManageCases() && (React.createElement(React.Fragment, null,
81
79
  React.createElement("form", null,
80
+ React.createElement(Hostname, null),
82
81
  React.createElement(OpenShiftClusterId, null),
83
82
  React.createElement(ClusterRecommendations, { className: "push-bottom" }),
84
83
  React.createElement(KtQuestions, null))))));
@@ -1 +1 @@
1
- {"version":3,"file":"ContactPhoneNumber.d.ts","sourceRoot":"","sources":["../../../../src/components/CaseInformation/ContactPhoneNumber.tsx"],"names":[],"mappings":"AAQA,OAAO,KAA0C,MAAM,OAAO,CAAC;AAsC/D,wBAAgB,kBAAkB,sBAwZjC"}
1
+ {"version":3,"file":"ContactPhoneNumber.d.ts","sourceRoot":"","sources":["../../../../src/components/CaseInformation/ContactPhoneNumber.tsx"],"names":[],"mappings":"AAOA,OAAO,KAA0C,MAAM,OAAO,CAAC;AAiB/D,wBAAgB,kBAAkB,sBAsVjC"}