@rh-support/troubleshoot 2.4.10-beta.8 → 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 +108 -39
  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
@@ -1,11 +1,13 @@
1
1
  import { ability, CaseListFields, resourceActions, resources } from '@rh-support/user-permissions';
2
2
  import { PreviousCaseTypes } from '@rh-support/utils';
3
3
  import isEqual from 'lodash/isEqual';
4
+ import isUndefined from 'lodash/isUndefined';
4
5
  import React, { useContext } from 'react';
5
6
  import { useCaseSelector } from '../../context/CaseContext';
6
7
  import { RouteContext } from '../../context/RouteContext';
7
- import { hideFileUploadSidebarWidgetSections, showSideBarClusterIdRuleWidgetSections, showSideBarEARuleWidgetSections, showSideBarFileRecommendationSections, } from '../../reducers/RouteConstNTypes';
8
+ import { AppRouteSections, hideFileUploadSidebarWidgetSections, showSideBarClusterIdRuleWidgetSections, showSideBarEARuleWidgetSections, showSideBarEARuleWidgetSectionsExperienceA, showSideBarFileRecommendationSections, } from '../../reducers/RouteConstNTypes';
8
9
  import { FileDiag } from '../CaseInformation/FileDiag';
10
+ import { CveSidebar } from '../Cve/CveSidebar';
9
11
  import { AsideResults } from '../Recommendations/AsideResults';
10
12
  import ClusterRecommendations from '../Recommendations/ClusterRecommendations';
11
13
  import { EARuleWidget } from '../Recommendations/EARules/EARuleWidget';
@@ -15,28 +17,35 @@ const defaultProps = {};
15
17
  function WizardAside(props) {
16
18
  const { routeState: { activeSection }, } = useContext(RouteContext);
17
19
  const canAddAttachments = ability.can(resourceActions.PATCH, resources.CASE_CREATE, CaseListFields.ATTACHMENTS);
18
- const { isCreatingCase, caseType } = useCaseSelector((state) => ({
20
+ const { isCreatingCase, caseType, isCveModalOpened, ABTestVariation } = useCaseSelector((state) => ({
19
21
  isCreatingCase: state.isCreatingCase,
20
22
  caseType: state.caseDetails.caseType,
23
+ isCveModalOpened: state.isCveModalOpened,
24
+ ABTestVariation: state.ABTestVariation,
21
25
  }), isEqual);
26
+ const isATestvariation = ABTestVariation === 'A';
22
27
  const isIdea = caseType === PreviousCaseTypes.FEATURE_ENHANCEMENT;
23
28
  const canUseSessionManagement = ability.can(resourceActions.CREATE, resources.SESSION_TRACKING);
24
29
  const canShowFileUploadWidget = () => canAddAttachments &&
25
30
  !props.isAttachmentUploadModalOpen &&
31
+ !isUndefined(activeSection) &&
26
32
  !hideFileUploadSidebarWidgetSections.includes(activeSection);
27
- const canshowEARuleWidget = showSideBarEARuleWidgetSections.includes(activeSection);
33
+ const canShowEARuleWidget = isATestvariation
34
+ ? showSideBarEARuleWidgetSectionsExperienceA.includes(activeSection)
35
+ : showSideBarEARuleWidgetSections.includes(activeSection);
28
36
  const canShowClusterIdReportWidget = showSideBarClusterIdRuleWidgetSections.includes(activeSection);
29
37
  const canShowFileRecommendationSectionsWidget = showSideBarFileRecommendationSections.includes(activeSection);
30
38
  return (React.createElement("aside", null,
31
39
  React.createElement("section", { className: "grid-aside-content" },
32
- canshowEARuleWidget && React.createElement(EARuleWidget, null),
33
- React.createElement(InsightsResults, null),
34
- " ",
35
- !(isIdea && activeSection === 'submit-case') && React.createElement(AsideResults, { routeProps: props.routeProps }),
40
+ canUseSessionManagement && !isCreatingCase && activeSection !== AppRouteSections.SUBMIT_CASE && (React.createElement(SessionRestore, { routeProps: props.routeProps })),
41
+ canShowFileUploadWidget() && React.createElement(InsightsResults, null),
42
+ canShowFileUploadWidget() && React.createElement(FileDiag, { className: "pf-v5-u-mb-md" }),
43
+ activeSection === AppRouteSections.SUMMARIZE && !isCveModalOpened && React.createElement(CveSidebar, null),
44
+ activeSection === AppRouteSections.TROUBLESHOOT && React.createElement(CveSidebar, null),
45
+ canShowEARuleWidget && React.createElement(EARuleWidget, null),
46
+ !(isIdea && activeSection === 'submit-case') && (React.createElement(AsideResults, { routeProps: props.routeProps, className: "pf-v5-u-mb-md pf-v5-u-mt-0" })),
36
47
  canShowFileRecommendationSectionsWidget && React.createElement(InsightsResults, { isDisplayOnMain: true }),
37
- React.createElement(ClusterRecommendations, { showClusterRecommendationsList: canShowClusterIdReportWidget }),
38
- canUseSessionManagement && !isCreatingCase && React.createElement(SessionRestore, { routeProps: props.routeProps }),
39
- canShowFileUploadWidget() && React.createElement(FileDiag, { className: "pf-u-mt-md" }))));
48
+ React.createElement(ClusterRecommendations, { showClusterRecommendationsList: canShowClusterIdReportWidget, className: "pf-v5-u-mb-md pf-v5-u-mt-0" }))));
40
49
  }
41
50
  WizardAside.defaultProps = defaultProps;
42
51
  export default WizardAside;
@@ -1,8 +1,9 @@
1
+ import React from 'react';
1
2
  import { RouteComponentProps } from 'react-router-dom';
2
3
  import { IRouteUrlParams } from '../../reducers/RouteConstNTypes';
3
4
  interface IProps {
4
5
  routeProps: RouteComponentProps<IRouteUrlParams>;
5
6
  }
6
- export declare function WizardLayout(props: IProps): JSX.Element;
7
+ export declare function WizardLayout(props: IProps): React.JSX.Element;
7
8
  export {};
8
9
  //# sourceMappingURL=WizardLayout.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"WizardLayout.d.ts","sourceRoot":"","sources":["../../../../src/components/wizardLayout/WizardLayout.tsx"],"names":[],"mappings":"AAiBA,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAMvD,OAAO,EAAuC,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAavG,UAAU,MAAM;IACZ,UAAU,EAAE,mBAAmB,CAAC,eAAe,CAAC,CAAC;CACpD;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,eAyLzC"}
1
+ {"version":3,"file":"WizardLayout.d.ts","sourceRoot":"","sources":["../../../../src/components/wizardLayout/WizardLayout.tsx"],"names":[],"mappings":"AAeA,OAAO,KAAkD,MAAM,OAAO,CAAC;AAEvE,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAMvD,OAAO,EAAuC,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAavG,UAAU,MAAM;IACZ,UAAU,EAAE,mBAAmB,CAAC,eAAe,CAAC,CAAC;CACpD;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,qBA4MzC"}
@@ -9,9 +9,9 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
9
9
  };
10
10
  import { Grid, GridItem } from '@patternfly/react-core';
11
11
  import { SupportFeedbackForm } from '@rh-support/components';
12
- import { GlobalMetadataStateContext } from '@rh-support/react-context';
12
+ import { fetchProducts, GlobalMetadataDispatchContext, GlobalMetadataStateContext } from '@rh-support/react-context';
13
13
  import { ability, CaseListFields, resourceActions, resources } from '@rh-support/user-permissions';
14
- import { getConfigField, getVersionIfOnlyVersion, PCM_CONFIG_FIELD_TYPE, pendoTrackEvent, PreviousCaseTypes, trafficSplit, } from '@rh-support/utils';
14
+ import { ABTestSplitBasedOnAccountNumber, getConfigField, getVersionIfOnlyVersion, PCM_CONFIG_FIELD_TYPE, pendoTrackEvent, PreviousCaseTypes, } from '@rh-support/utils';
15
15
  import findIndex from 'lodash/findIndex';
16
16
  import isEmpty from 'lodash/isEmpty';
17
17
  import isEqual from 'lodash/isEqual';
@@ -20,7 +20,7 @@ import { Trans } from 'react-i18next';
20
20
  import { useCaseDispatch, useCaseSelector } from '../../context/CaseContext';
21
21
  import { RouteContext } from '../../context/RouteContext';
22
22
  import { SessionRestoreDispatchContext, SessionRestoreStateContext } from '../../context/SessionRestoreContext';
23
- import { setFetchingRecommendationsFromWatsonXFlag, submitCase } from '../../reducers/CaseReducer';
23
+ import { setABTestVariation, submitCase } from '../../reducers/CaseReducer';
24
24
  import { AppRouteSections } from '../../reducers/RouteConstNTypes';
25
25
  import RouteUtils from '../../utils/routeUtils';
26
26
  import PreCaseConfirmationModals, { PreCaseConfirmationModalsEnum, } from '../ConfirmationModals/PreCaseConfirmationModals';
@@ -33,46 +33,24 @@ import WizardAside from './WizardAside';
33
33
  import WizardMain from './WizardMain';
34
34
  export function WizardLayout(props) {
35
35
  const { routeState: { activeSection, isCaseCreate }, } = useContext(RouteContext);
36
- const caseState = useCaseSelector((state) => state, isEqual);
36
+ const { caseCreationError, contactSSOName, caseType, product, caseState, ABTestVariation } = useCaseSelector((state) => ({
37
+ caseState: state,
38
+ caseCreationError: state.caseCreationError,
39
+ contactSSOName: state.caseDetails.contactSSOName,
40
+ caseType: state.caseDetails.caseType,
41
+ product: state.caseDetails.product,
42
+ ABTestVariation: state.ABTestVariation,
43
+ }), isEqual);
37
44
  const sessionRestoreDispatch = useContext(SessionRestoreDispatchContext);
38
45
  const caseDispatch = useCaseDispatch();
39
46
  const { sessionRestore: { activeSessionId, previousSessions }, } = useContext(SessionRestoreStateContext);
40
- const { globalMetadataState: { allProducts, loggedInUser, loggedInUserRights, loggedInUsersAccount, pcmConfig }, } = useContext(GlobalMetadataStateContext);
47
+ const { globalMetadataState: { allProducts, loggedInUser, loggedInUsersAccount, pcmConfig }, } = useContext(GlobalMetadataStateContext);
48
+ const dispatchToGlobalMetadataReducer = useContext(GlobalMetadataDispatchContext);
41
49
  const canAddAttachments = ability.can(resourceActions.PATCH, resources.CASE_CREATE, CaseListFields.ATTACHMENTS);
42
50
  const { attachmentState } = useContext(AttachmentStateContext);
43
51
  const isAnyFileAttachedLocal = isAnyFileAttached(attachmentState.caseFiles.selectedLocalFiles);
44
52
  const [confirmationModalType, setConfirmationModalType] = useState(null);
45
53
  const viewedConfirmationModalsList = useRef([]);
46
- const isWatsonXEnabled = getConfigField(pcmConfig.data, 'isWatsonxEnabled', PCM_CONFIG_FIELD_TYPE.FEATURE_FLAG);
47
- const testVariationWeight = getConfigField(pcmConfig.data, 'testVariationWeightZeroToTen', PCM_CONFIG_FIELD_TYPE.NUMBER);
48
- const urlQueryParams = RouteUtils.getQueryParams(props.routeProps);
49
- const rerankingFromUrl = urlQueryParams.reranking;
50
- const isShowRerankingForInternalUsers = (rerankingFromUrl === 'true' || rerankingFromUrl === 'false') && loggedInUserRights.data.isInternal();
51
- useEffect(() => {
52
- if (isEmpty(activeSessionId) || !isWatsonXEnabled || !testVariationWeight)
53
- return;
54
- if (isShowRerankingForInternalUsers && rerankingFromUrl === 'true') {
55
- setFetchingRecommendationsFromWatsonXFlag(caseDispatch, true);
56
- return;
57
- }
58
- if (isShowRerankingForInternalUsers && rerankingFromUrl === 'false') {
59
- setFetchingRecommendationsFromWatsonXFlag(caseDispatch, false);
60
- return;
61
- }
62
- const sessionItem = previousSessions.data[activeSessionId];
63
- if (sessionItem && trafficSplit(testVariationWeight, sessionItem.session.createdDate) === 'A') {
64
- setFetchingRecommendationsFromWatsonXFlag(caseDispatch, true);
65
- }
66
- }, [
67
- caseDispatch,
68
- isWatsonXEnabled,
69
- activeSessionId,
70
- previousSessions,
71
- testVariationWeight,
72
- isShowRerankingForInternalUsers,
73
- rerankingFromUrl,
74
- props.routeProps,
75
- ]);
76
54
  const closeROCMProductModal = () => {
77
55
  const productName = 'OpenShift Container Platform';
78
56
  // if user click on Cancel then change product selection.
@@ -85,11 +63,10 @@ export function WizardLayout(props) {
85
63
  RouteUtils.updateQueryParams(props.routeProps, newParams);
86
64
  };
87
65
  const checkForConfirmationModalsOnReview = () => {
88
- var _a, _b;
89
- if (((_a = caseState === null || caseState === void 0 ? void 0 : caseState.caseDetails) === null || _a === void 0 ? void 0 : _a.caseType) === PreviousCaseTypes.FEATURE_ENHANCEMENT)
66
+ if (caseType === PreviousCaseTypes.FEATURE_ENHANCEMENT)
90
67
  return false;
91
68
  let isModalPresent = false;
92
- if (((_b = caseState === null || caseState === void 0 ? void 0 : caseState.caseDetails) === null || _b === void 0 ? void 0 : _b.product) === 'Red Hat OpenShift Cluster Manager' &&
69
+ if (product === 'Red Hat OpenShift Cluster Manager' &&
93
70
  !viewedConfirmationModalsList.current.includes(PreCaseConfirmationModalsEnum.ROCM_MODAL)) {
94
71
  setConfirmationModalType(PreCaseConfirmationModalsEnum.ROCM_MODAL);
95
72
  viewedConfirmationModalsList.current.push(PreCaseConfirmationModalsEnum.ROCM_MODAL);
@@ -116,18 +93,14 @@ export function WizardLayout(props) {
116
93
  "Try submitting again after a minute. Please ",
117
94
  React.createElement(SupportFeedbackForm, { isInline: true }),
118
95
  " if you continue to see this message.")));
119
- submitCase(caseDispatch, sessionRestoreDispatch, caseState, sessionItem, isCaseCreate, errorMessageCaseSubmit500, loggedInUser.data.ssoUsername, loggedInUsersAccount === null || loggedInUsersAccount === void 0 ? void 0 : loggedInUsersAccount.data.secureSupport);
96
+ submitCase(caseDispatch, sessionRestoreDispatch, caseState, sessionItem, isCaseCreate, errorMessageCaseSubmit500, loggedInUser.data.ssoUsername, loggedInUsersAccount === null || loggedInUsersAccount === void 0 ? void 0 : loggedInUsersAccount.data.secureSupport, isReSubmitting || false, RouteUtils.getQueryParams(props.routeProps).caseCreate === 'true');
120
97
  // reset viewedModals on case submit
121
98
  viewedConfirmationModalsList.current = [];
122
99
  !isReSubmitting &&
123
100
  RouteUtils.navigateToSection(props.routeProps, `${RouteUtils.seBasePath}/${AppRouteSections.SUBMIT_CASE}`, false);
124
101
  });
125
- const confirmSupportModal = (isConfirmedStateSideSupport, hasPreferredSecureSupportAccount) => {
126
- // confirmed state side support show modal logic
127
- if (isConfirmedStateSideSupport) {
128
- setConfirmationModalType(PreCaseConfirmationModalsEnum.CSS_MODAL);
129
- }
130
- else if (hasPreferredSecureSupportAccount) {
102
+ const confirmSupportModal = (hasPreferredSecureSupportAccount) => {
103
+ if (hasPreferredSecureSupportAccount) {
131
104
  setConfirmationModalType(PreCaseConfirmationModalsEnum.PREFERRED_GS4_Modal);
132
105
  // track pendo event
133
106
  pendoTrackEvent(preferredSSModalOpenPendoEvent);
@@ -139,13 +112,43 @@ export function WizardLayout(props) {
139
112
  }
140
113
  setConfirmationModalType(null);
141
114
  };
115
+ // A/B test
116
+ useEffect(() => {
117
+ var _a, _b;
118
+ if (isEmpty(loggedInUsersAccount.data.accountNumber))
119
+ return;
120
+ const urlParams = new URLSearchParams(window.location.search);
121
+ const useflowFromUrl = urlParams.get('useflow');
122
+ // if useflow was added in url, we force the selection
123
+ if (useflowFromUrl &&
124
+ (((_a = useflowFromUrl === null || useflowFromUrl === void 0 ? void 0 : useflowFromUrl.charAt(0)) === null || _a === void 0 ? void 0 : _a.toLowerCase()) === 'a' || ((_b = useflowFromUrl === null || useflowFromUrl === void 0 ? void 0 : useflowFromUrl.charAt(0)) === null || _b === void 0 ? void 0 : _b.toLowerCase()) === 'b')) {
125
+ // set state for PCM to show A or B
126
+ setABTestVariation(caseDispatch, useflowFromUrl === null || useflowFromUrl === void 0 ? void 0 : useflowFromUrl.charAt(0).toUpperCase());
127
+ return;
128
+ }
129
+ const appABTestConfig = getConfigField(pcmConfig.data, 'testVariationWeightZeroToTen', PCM_CONFIG_FIELD_TYPE.STRING);
130
+ if (isEmpty(loggedInUsersAccount.data.accountNumber) || isEmpty(appABTestConfig))
131
+ return;
132
+ const appTestWeight = parseInt(appABTestConfig, 10);
133
+ const newABTestVariation = ABTestSplitBasedOnAccountNumber(appTestWeight, loggedInUsersAccount.data.accountNumber);
134
+ if (newABTestVariation !== ABTestVariation) {
135
+ // set state for PCM to show A or B
136
+ setABTestVariation(caseDispatch, newABTestVariation);
137
+ }
138
+ // eslint-disable-next-line react-hooks/exhaustive-deps
139
+ }, [loggedInUsersAccount.data.accountNumber, ABTestVariation]);
140
+ // Loading app metadata
141
+ useEffect(() => {
142
+ fetchProducts(dispatchToGlobalMetadataReducer, contactSSOName);
143
+ // eslint-disable-next-line react-hooks/exhaustive-deps
144
+ }, [contactSSOName, dispatchToGlobalMetadataReducer]);
142
145
  return (React.createElement(React.Fragment, null,
143
146
  React.createElement(GlobalTroubleshootEffects, { routeProps: props.routeProps }),
144
- activeSection !== AppRouteSections.DESCRIBE_IDEA && (React.createElement(PreCaseConfirmationModals, { onModalClose: onModalClose, confirmationModalType: confirmationModalType, onConfirm: () => submitCaseAndNavigate(caseState.caseCreationError) })),
147
+ activeSection !== AppRouteSections.DESCRIBE_IDEA && (React.createElement(PreCaseConfirmationModals, { onModalClose: onModalClose, confirmationModalType: confirmationModalType, onConfirm: () => submitCaseAndNavigate(caseCreationError) })),
145
148
  React.createElement(Grid, { style: { height: '100%' } },
146
149
  React.createElement(GridItem, { sm: 12, md: 12, lg: 8, xl2: 8 },
147
150
  React.createElement(WizardMain, { routeProps: props.routeProps, submitCaseAndNavigate: submitCaseAndNavigate, confirmSupportModal: confirmSupportModal })),
148
151
  React.createElement(GridItem, { span: 4, className: "grid-wizard-aside-content" },
149
152
  React.createElement(WizardAside, { isAttachmentUploadModalOpen: confirmationModalType === PreCaseConfirmationModalsEnum.NO_ATTACHMENT_MODAL, routeProps: props.routeProps }))),
150
- React.createElement(AlertToastWrapper, { submitCaseAndNavigate: submitCaseAndNavigate })));
153
+ React.createElement(AlertToastWrapper, { submitCaseAndNavigate: submitCaseAndNavigate, routeProps: props.routeProps })));
151
154
  }
@@ -1,10 +1,11 @@
1
+ import React from 'react';
1
2
  import { RouteComponentProps } from 'react-router-dom';
2
3
  import { IRouteUrlParams } from '../../reducers/RouteConstNTypes';
3
4
  interface IProps {
4
5
  routeProps: RouteComponentProps<IRouteUrlParams>;
5
6
  submitCaseAndNavigate: (isReSubmitting: boolean) => void;
6
- confirmSupportModal: (isConfirmedStateSideSupport: boolean, hasPreferredSecureSupportAccount: boolean) => void;
7
+ confirmSupportModal: (hasPreferredSecureSupportAccount: boolean) => void;
7
8
  }
8
- declare function WizardMain(props: IProps): JSX.Element;
9
+ declare function WizardMain(props: IProps): React.JSX.Element;
9
10
  export default WizardMain;
10
11
  //# sourceMappingURL=WizardMain.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"WizardMain.d.ts","sourceRoot":"","sources":["../../../../src/components/wizardLayout/WizardMain.tsx"],"names":[],"mappings":"AAKA,OAAO,EAAS,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAK9D,OAAO,EAAoB,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAOpF,UAAU,MAAM;IACZ,UAAU,EAAE,mBAAmB,CAAC,eAAe,CAAC,CAAC;IACjD,qBAAqB,EAAE,CAAC,cAAc,EAAE,OAAO,KAAK,IAAI,CAAC;IACzD,mBAAmB,EAAE,CAAC,2BAA2B,EAAE,OAAO,EAAE,gCAAgC,EAAE,OAAO,KAAK,IAAI,CAAC;CAClH;AAED,iBAAS,UAAU,CAAC,KAAK,EAAE,MAAM,eAmGhC;AACD,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"WizardMain.d.ts","sourceRoot":"","sources":["../../../../src/components/wizardLayout/WizardMain.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAiD,MAAM,OAAO,CAAC;AAEtE,OAAO,EAAS,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAK9D,OAAO,EAAoB,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAQpF,UAAU,MAAM;IACZ,UAAU,EAAE,mBAAmB,CAAC,eAAe,CAAC,CAAC;IACjD,qBAAqB,EAAE,CAAC,cAAc,EAAE,OAAO,KAAK,IAAI,CAAC;IACzD,mBAAmB,EAAE,CAAC,gCAAgC,EAAE,OAAO,KAAK,IAAI,CAAC;CAC5E;AAED,iBAAS,UAAU,CAAC,KAAK,EAAE,MAAM,qBAsIhC;AACD,eAAe,UAAU,CAAC"}
@@ -1,7 +1,7 @@
1
- import { Wizard, WizardContextConsumer, WizardFooter } from '@patternfly/react-core';
1
+ import { Wizard, WizardContextConsumer, WizardFooter } from '@patternfly/react-core/deprecated';
2
2
  import { LoadingIndicator } from '@rh-support/components';
3
3
  import isEqual from 'lodash/isEqual';
4
- import React, { Suspense, useContext, useState } from 'react';
4
+ import React, { Suspense, useContext, useRef, useState } from 'react';
5
5
  import { useTranslation } from 'react-i18next';
6
6
  import { Route } from 'react-router-dom';
7
7
  import { useCaseSelector } from '../../context/CaseContext';
@@ -12,18 +12,38 @@ import { setActiveSectionChanged, updateisNextBtnClickedToShowValidationError }
12
12
  import RouteUtils from '../../utils/routeUtils';
13
13
  import SubmitCase from '../SubmitCase/SubmitCase';
14
14
  import MainSection from './MainSection';
15
+ import NewFeatureModal from './NewFeatureModal';
15
16
  import WizardNavigation from './WizardNavigation';
16
17
  function WizardMain(props) {
17
18
  const [showRestFlag, setShowRestFlag] = useState(false);
18
19
  const { isCreatingCase } = useCaseSelector((state) => ({
19
20
  isCreatingCase: state.isCreatingCase,
20
21
  }), isEqual);
21
- const { getStepsSequece } = useWizard(props.routeProps);
22
+ const [userSeenRecommendations, setUserSeenRecommendations] = useState(false);
23
+ const [userClickedNextonRecommendations, setUserClickedNextonRecommendations] = useState(false);
24
+ const [userScrolledLabel, setUserScrolledLabel] = useState(false);
25
+ const [userCanNavigateToTroubleshoot, setUserCanNavigateToTroubleshoot] = useState(false);
26
+ const resultsRowRef = useRef(null);
27
+ const { getStepsSequece } = useWizard(props.routeProps, {
28
+ userSeenRecommendationsfn: setUserSeenRecommendations,
29
+ userSeenRecommendationsValue: userSeenRecommendations,
30
+ userCanNavigateToTroubleshoot: userCanNavigateToTroubleshoot,
31
+ userClickedNextonRecommendationsValue: userClickedNextonRecommendations,
32
+ resultsRowRef: resultsRowRef,
33
+ userScrolledLabel: userScrolledLabel,
34
+ });
22
35
  const dispatchToRouteReducer = useContext(RouteDispatchContext);
23
36
  const { t } = useTranslation();
24
37
  const renderSubmitCasePage = () => (React.createElement(MainSection, { section: AppRouteSections.SUBMIT_CASE, title: t('Case has been submitted'), isLoading: isCreatingCase, description: t("We'll be in contact with you shortly. Look for updates on this case."), className: "case-submit-page" },
25
38
  React.createElement(Suspense, { fallback: React.createElement(LoadingIndicator, { size: "sm" }) },
26
39
  React.createElement(SubmitCase, { routeProps: props.routeProps }))));
40
+ // To focus the wizard main
41
+ const focusWizardMainPanel = () => {
42
+ setTimeout(() => {
43
+ var _a;
44
+ (_a = document.querySelector('.main-step-content')) === null || _a === void 0 ? void 0 : _a.focus({ preventScroll: true });
45
+ }, 250);
46
+ };
27
47
  const onNext = (step) => {
28
48
  RouteUtils.navigateToSection(props.routeProps, `${props.routeProps.location.pathname}/${step.id}`, false);
29
49
  };
@@ -42,12 +62,19 @@ function WizardMain(props) {
42
62
  };
43
63
  const CustomFooter = (React.createElement(WizardFooter, null,
44
64
  React.createElement(WizardContextConsumer, null, ({ activeStep, onNext, onBack }) => {
45
- return (React.createElement(WizardNavigation, { routeProps: props.routeProps, onNext: onNext, onBack: onBack, activeStep: activeStep, onSubmit: onSubmit, confirmSupportModal: props.confirmSupportModal, onShowRestUpdate: (flag) => setShowRestFlag(flag) }));
65
+ return (React.createElement(WizardNavigation, { routeProps: props.routeProps, onNext: () => {
66
+ onNext();
67
+ focusWizardMainPanel();
68
+ }, onBack: () => {
69
+ onBack();
70
+ focusWizardMainPanel();
71
+ }, activeStep: activeStep, onSubmit: onSubmit, confirmSupportModal: props.confirmSupportModal, onShowRestUpdate: (flag) => setShowRestFlag(flag), userSeenRecommendations: userSeenRecommendations, setUserSeenRecommendations: setUserSeenRecommendations, userClickedNextonRecommendationsFn: setUserClickedNextonRecommendations, userClickedNextonRecommendationsValue: userClickedNextonRecommendations, setUserCanNavigateToTroubleshoot: setUserCanNavigateToTroubleshoot, resultsRowRef: resultsRowRef, setUserScrolledLabel: setUserScrolledLabel }));
46
72
  })));
47
73
  // To add a new step to wizard first need to add the component to appRouteConfugurations
48
74
  // in useWizard file then add it to step squences in RouteConstNTypes
49
75
  const steps = getStepsSequece(showRestFlag);
50
76
  return (React.createElement(React.Fragment, null,
77
+ React.createElement(NewFeatureModal, null),
51
78
  steps.length !== 0 && (React.createElement(Route, { path: `${RouteUtils.seBasePath}/(${steps[0].id}|describe-issue|open-case)`, render: () => (React.createElement(Wizard, { navAriaLabel: ` navAriaLabel steps `, mainAriaLabel: ` mainAriaLabel content `, steps: steps, footer: CustomFooter, onNext: onNext, onBack: onBack, hideClose: true, backButtonText: t('Go back'), onCurrentStepChanged: onCurrentStepChanged })) })),
52
79
  React.createElement(Route, { exact: true, path: `${RouteUtils.seBasePath}/${AppRouteSections.SUBMIT_CASE}`, render: () => renderSubmitCasePage() })));
53
80
  }
@@ -1,4 +1,5 @@
1
- import { RouteComponentProps } from 'react-router';
1
+ import React from 'react';
2
+ import { RouteComponentProps } from 'react-router-dom';
2
3
  import { IRouteUrlParams, ISectionConfiguration } from '../../reducers/RouteConstNTypes';
3
4
  interface IProps {
4
5
  routeProps: RouteComponentProps<IRouteUrlParams>;
@@ -6,10 +7,17 @@ interface IProps {
6
7
  onBack: () => void;
7
8
  activeStep: Partial<ISectionConfiguration>;
8
9
  onSubmit: () => void;
9
- confirmSupportModal: (isConfirmedStateSideSupport: boolean, hasPreferredSecureSupportAccount: boolean) => void;
10
+ confirmSupportModal: (hasPreferredSecureSupportAccount: boolean) => void;
10
11
  onShowRestUpdate: (flag: boolean) => void;
12
+ userSeenRecommendations?: boolean;
13
+ setUserSeenRecommendations?: (value: React.SetStateAction<boolean>) => void;
14
+ userClickedNextonRecommendationsFn?: (value: React.SetStateAction<boolean>) => void;
15
+ userClickedNextonRecommendationsValue?: boolean;
16
+ setUserCanNavigateToTroubleshoot: (value: React.SetStateAction<boolean>) => void;
17
+ resultsRowRef?: any;
18
+ setUserScrolledLabel: (value: React.SetStateAction<boolean>) => void;
11
19
  }
12
- declare function WizardNavigation(props: IProps): JSX.Element;
20
+ declare function WizardNavigation(props: IProps): React.JSX.Element;
13
21
  declare namespace WizardNavigation {
14
22
  var defaultProps: Partial<IProps>;
15
23
  }
@@ -1 +1 @@
1
- {"version":3,"file":"WizardNavigation.d.ts","sourceRoot":"","sources":["../../../../src/components/wizardLayout/WizardNavigation.tsx"],"names":[],"mappings":"AASA,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAMnD,OAAO,EAAoB,eAAe,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AAK3G,UAAU,MAAM;IACZ,UAAU,EAAE,mBAAmB,CAAC,eAAe,CAAC,CAAC;IACjD,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,UAAU,EAAE,OAAO,CAAC,qBAAqB,CAAC,CAAC;IAC3C,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,mBAAmB,EAAE,CAAC,2BAA2B,EAAE,OAAO,EAAE,gCAAgC,EAAE,OAAO,KAAK,IAAI,CAAC;IAC/G,gBAAgB,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;CAC7C;AAGD,iBAAS,gBAAgB,CAAC,KAAK,EAAE,MAAM,eA4JtC;kBA5JQ,gBAAgB;;;AA8JzB,eAAe,gBAAgB,CAAC"}
1
+ {"version":3,"file":"WizardNavigation.d.ts","sourceRoot":"","sources":["../../../../src/components/wizardLayout/WizardNavigation.tsx"],"names":[],"mappings":"AAQA,OAAO,KAA0C,MAAM,OAAO,CAAC;AAE/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAOvD,OAAO,EAAoB,eAAe,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AAM3G,UAAU,MAAM;IACZ,UAAU,EAAE,mBAAmB,CAAC,eAAe,CAAC,CAAC;IACjD,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,UAAU,EAAE,OAAO,CAAC,qBAAqB,CAAC,CAAC;IAC3C,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,mBAAmB,EAAE,CAAC,gCAAgC,EAAE,OAAO,KAAK,IAAI,CAAC;IACzE,gBAAgB,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IAC1C,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,0BAA0B,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC;IAC5E,kCAAkC,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC;IACpF,qCAAqC,CAAC,EAAE,OAAO,CAAC;IAChD,gCAAgC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC;IACjF,aAAa,CAAC,EAAE,GAAG,CAAC;IACpB,oBAAoB,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC;CACxE;AAGD,iBAAS,gBAAgB,CAAC,KAAK,EAAE,MAAM,qBA0StC;kBA1SQ,gBAAgB;;;AA4SzB,eAAe,gBAAgB,CAAC"}
@@ -11,17 +11,20 @@ import { pcm } from '@cee-eng/hydrajs';
11
11
  import { Button, ButtonVariant } from '@patternfly/react-core';
12
12
  import { useFetch } from '@rh-support/components';
13
13
  import { GlobalMetadataStateContext, useCanCreateCase } from '@rh-support/react-context';
14
- import { getResTypeFromUrl } from '@rh-support/utils';
14
+ import { dtmTrackEventCaseCreationStepEncountered, getResTypeFromUrl, scrollIntoView } from '@rh-support/utils';
15
15
  import find from 'lodash/find';
16
+ import isEmpty from 'lodash/isEmpty';
16
17
  import isEqual from 'lodash/isEqual';
17
- import React, { useContext, useState } from 'react';
18
+ import React, { useContext, useEffect, useState } from 'react';
18
19
  import { useTranslation } from 'react-i18next';
19
20
  import { useCaseDispatch, useCaseSelector } from '../../context/CaseContext';
21
+ import { RecommendationStateContext } from '../../context/RecommendationContext';
20
22
  import { RouteContext, RouteDispatchContext } from '../../context/RouteContext';
21
23
  import { SessionRestoreStateContext } from '../../context/SessionRestoreContext';
22
24
  import { setCaseState } from '../../reducers/CaseReducer';
23
25
  import { AppRouteSections } from '../../reducers/RouteConstNTypes';
24
26
  import { updateisNextBtnClickedToShowValidationError } from '../../reducers/RouteReducer';
27
+ import RouteUtils from '../../utils/routeUtils';
25
28
  import { RecommendationFeedbackModal } from '../Recommendations/RecommendationFeedbackModal';
26
29
  import { useIsSectionValid } from '../shared/useIsSectionValid';
27
30
  const defaultProps = {};
@@ -29,11 +32,19 @@ function WizardNavigation(props) {
29
32
  var _a, _b;
30
33
  const { t } = useTranslation();
31
34
  const canCreateCase = useCanCreateCase();
32
- const { routeState: { activeSection, isNextBtnClickedToShowValidationError, noValidEntitlement, isSearchIntent }, } = useContext(RouteContext);
33
- const { globalMetadataState: { loggedInUsersAccount, allProducts }, } = useContext(GlobalMetadataStateContext);
34
- const { caseState } = useCaseSelector((state) => ({
35
+ const { recommendationState } = useContext(RecommendationStateContext);
36
+ const { routeState: { activeSection, isNextBtnClickedToShowValidationError, noValidEntitlement, isSearchIntent, isCaseCreate, }, } = useContext(RouteContext);
37
+ const { globalMetadataState: { loggedInUsersAccount, allProducts, navBarRef }, } = useContext(GlobalMetadataStateContext);
38
+ const { caseState, ABTestVariation, issue, summary, product, version } = useCaseSelector((state) => ({
35
39
  caseState: state,
40
+ issue: state.caseDetails.issue,
41
+ summary: state.caseDetails.summary,
42
+ ABTestVariation: state.ABTestVariation,
43
+ product: state.caseDetails.product,
44
+ version: state.caseDetails.version,
36
45
  }), isEqual);
46
+ const isATestvariation = ABTestVariation === 'A';
47
+ const isBTestvariation = ABTestVariation === 'B' || isEmpty(ABTestVariation);
37
48
  // To check if the user is entitled or not
38
49
  const isEntitledProduct = (_b = find((_a = allProducts === null || allProducts === void 0 ? void 0 : allProducts.data) === null || _a === void 0 ? void 0 : _a.productsResult, (p) => p.product === caseState.caseDetails.product)) === null || _b === void 0 ? void 0 : _b.isEntitledProduct;
39
50
  const dispatchToRouteReducer = useContext(RouteDispatchContext);
@@ -46,17 +57,90 @@ function WizardNavigation(props) {
46
57
  isFileRecommendationsTriggered: state.isFileRecommendationsTriggered,
47
58
  }), isEqual);
48
59
  const caseDispatch = useCaseDispatch();
49
- const onNext = () => {
60
+ useEffect(() => {
61
+ // we need this because when the user hits the troubleshoot tab, we only refresh the children but the state is managed in the parent
62
+ props.setUserSeenRecommendations(false);
63
+ props.userClickedNextonRecommendationsFn(false);
64
+ props.setUserScrolledLabel(false);
65
+ // eslint-disable-next-line react-hooks/exhaustive-deps
66
+ }, [recommendationState.isLoadingRecommendations]);
67
+ useEffect(() => {
50
68
  var _a, _b;
69
+ const isCreatingCase = RouteUtils.getQueryParams(props.routeProps).caseCreate === 'true';
70
+ dtmTrackEventCaseCreationStepEncountered(isCreatingCase,
71
+ // @ts-ignore
72
+ props.activeStep.id, (_a = caseState.caseDetails) === null || _a === void 0 ? void 0 : _a.caseNumber, (_b = caseState.caseDetails) === null || _b === void 0 ? void 0 : _b.caseType, caseState.caseDetails.summary, caseState.caseDetails.product, caseState.caseDetails.version);
73
+ if (props.activeStep.id === AppRouteSections.TROUBLESHOOT) {
74
+ window.scrollTo({
75
+ top: 0,
76
+ behavior: 'instant',
77
+ });
78
+ }
79
+ // eslint-disable-next-line react-hooks/exhaustive-deps
80
+ }, [props.activeStep.id]);
81
+ const [hasUserScrolled, setHasUserScrolled] = useState(false);
82
+ useEffect(() => {
83
+ if (props.activeStep.id !== AppRouteSections.SUMMARIZE || recommendationState.numFound <= 2) {
84
+ return;
85
+ }
86
+ const observer = new IntersectionObserver(([entry]) => {
87
+ // future debugging needs if resolution issue occurs
88
+ // console.log('Intersection status:', entry.isIntersecting);
89
+ // console.log('Intersection ratio:', entry.intersectionRatio);
90
+ // console.log({ hasUserScrolled });
91
+ const boundingRect = entry.boundingClientRect;
92
+ const isScrollingUp = boundingRect.top > 0;
93
+ const isAboveThreshold = entry.intersectionRatio >= 0.6;
94
+ isAboveThreshold && props.setUserCanNavigateToTroubleshoot(true);
95
+ isAboveThreshold && props.setUserSeenRecommendations(true);
96
+ // If scrolling up, always use the threshold check
97
+ if (isScrollingUp) {
98
+ setHasUserScrolled(isAboveThreshold);
99
+ props.setUserScrolledLabel(isAboveThreshold);
100
+ return;
101
+ }
102
+ // If scrolling down and we hit the threshold, set to true
103
+ if (isAboveThreshold) {
104
+ props.setUserScrolledLabel(true);
105
+ props.userClickedNextonRecommendationsFn && props.userClickedNextonRecommendationsFn(true);
106
+ }
107
+ }, {
108
+ root: null,
109
+ threshold: [0, 0.6], // Changing threshold value to have its effect on pagination when page size is more than 10.
110
+ rootMargin: '0px',
111
+ });
112
+ const resultsRowElement = props.resultsRowRef.current;
113
+ if (resultsRowElement) {
114
+ observer.observe(resultsRowElement);
115
+ }
116
+ return () => {
117
+ if (resultsRowElement) {
118
+ observer.unobserve(resultsRowElement);
119
+ }
120
+ };
121
+ }, [recommendationState.numFound, hasUserScrolled, props]);
122
+ const onNext = () => {
123
+ var _a;
51
124
  updateisNextBtnClickedToShowValidationError(dispatchToRouteReducer, true);
125
+ //handle the new changes for 13406:
126
+ if (props.activeStep.id === AppRouteSections.SUMMARIZE && recommendationState.numFound > 2) {
127
+ if (!hasUserScrolled) {
128
+ scrollIntoView(props.resultsRowRef, {
129
+ navBarRef,
130
+ timeout: 0,
131
+ onlyIfNotInViewport: true,
132
+ offset: 120,
133
+ });
134
+ props.userClickedNextonRecommendationsFn && props.userClickedNextonRecommendationsFn(true);
135
+ return;
136
+ }
137
+ }
52
138
  const userCanNotOpenCase = props.activeStep.id === AppRouteSections.TROUBLESHOOT && canCreateCase.alert();
53
139
  if (userCanNotOpenCase || !isSectionValidFn(props.activeStep.id))
54
140
  return;
55
- const isConfirmedStateSideSupport = (_a = loggedInUsersAccount === null || loggedInUsersAccount === void 0 ? void 0 : loggedInUsersAccount.data) === null || _a === void 0 ? void 0 : _a.hasConfirmedStatesideSupport;
56
- const hasPreferredSecureSupportAccount = (_b = loggedInUsersAccount === null || loggedInUsersAccount === void 0 ? void 0 : loggedInUsersAccount.data) === null || _b === void 0 ? void 0 : _b.hasPreferredSecureSupportAccount;
57
- if (props.activeStep.id === AppRouteSections.TROUBLESHOOT &&
58
- (isConfirmedStateSideSupport || hasPreferredSecureSupportAccount)) {
59
- props.confirmSupportModal(isConfirmedStateSideSupport, hasPreferredSecureSupportAccount);
141
+ const hasPreferredSecureSupportAccount = (_a = loggedInUsersAccount === null || loggedInUsersAccount === void 0 ? void 0 : loggedInUsersAccount.data) === null || _a === void 0 ? void 0 : _a.hasPreferredSecureSupportAccount;
142
+ if (props.activeStep.id === AppRouteSections.TROUBLESHOOT && hasPreferredSecureSupportAccount) {
143
+ props.confirmSupportModal(hasPreferredSecureSupportAccount);
60
144
  return;
61
145
  }
62
146
  if (props.activeStep.isLastStep) {
@@ -88,14 +172,14 @@ function WizardNavigation(props) {
88
172
  };
89
173
  // To handle self solving through file recommendations
90
174
  const handleFileRecsSelfSolved = () => __awaiter(this, void 0, void 0, function* () {
91
- var _c, _d, _e, _f;
175
+ var _a, _b, _c, _d;
92
176
  try {
93
177
  yield resolveSessionRequest(activeSessionId, {
94
178
  sessionId: activeSessionId,
95
- sessionResourceOriginId: (_d = (_c = sessionResourceTracking[SessionResourceSource.INSIGHTS]) === null || _c === void 0 ? void 0 : _c.resourceOriginId) !== null && _d !== void 0 ? _d : '',
179
+ sessionResourceOriginId: (_b = (_a = sessionResourceTracking[SessionResourceSource.INSIGHTS]) === null || _a === void 0 ? void 0 : _a.resourceOriginId) !== null && _b !== void 0 ? _b : '',
96
180
  type: getResTypeFromUrl(''),
97
181
  source: SessionResourceSource.INSIGHTS,
98
- resourceEntityId: (_f = (_e = sessionResourceTracking[SessionResourceSource.INSIGHTS]) === null || _e === void 0 ? void 0 : _e.resourceEntityId) !== null && _f !== void 0 ? _f : '',
182
+ resourceEntityId: (_d = (_c = sessionResourceTracking[SessionResourceSource.INSIGHTS]) === null || _c === void 0 ? void 0 : _c.resourceEntityId) !== null && _d !== void 0 ? _d : '',
99
183
  url: '',
100
184
  });
101
185
  setCaseState(caseDispatch, { isFileRecommendationsTriggered: false });
@@ -103,16 +187,49 @@ function WizardNavigation(props) {
103
187
  }
104
188
  catch (e) { }
105
189
  });
106
- // To handle entitled products
107
190
  const isEntitledProductLocal = isSearchIntent ? true : isEntitledProduct;
108
- return (React.createElement(React.Fragment, null,
109
- props.activeStep.order !== 0 && (React.createElement("button", { onClick: () => onBack(), className: "btn btn-app btn-open-white main-nav-button", "data-tracking-id": `prev-of-${activeSection}` }, t('Go back'))),
110
- React.createElement("button", { disabled: (!isEntitledProductLocal && props.activeStep.nextButtonLabel === 'Get support') ||
191
+ const nextButtonDisabledLogic = () => {
192
+ if (isBTestvariation) {
193
+ let value = ((isEmpty(summary) || isEmpty(issue) || isEmpty(product) || isEmpty(version)) &&
194
+ props.activeStep.id === AppRouteSections.SUMMARIZE) ||
195
+ (!isEntitledProductLocal && props.activeStep.nextButtonLabel === 'Get support') ||
196
+ props.activeStep.nextButtonLabel === 'Troubleshoot' ||
197
+ (!isSectionValidFn(props.activeStep.id) && isNextBtnClickedToShowValidationError) ||
198
+ noValidEntitlement;
199
+ return value;
200
+ }
201
+ else if (isATestvariation) {
202
+ let value = ((isEmpty(summary) || isEmpty(issue) || isEmpty(product) || isEmpty(version)) &&
203
+ props.activeStep.id === AppRouteSections.SUMMARIZE) ||
204
+ (!isEntitledProductLocal && props.activeStep.nextButtonLabel === 'Get support') ||
205
+ props.activeStep.nextButtonLabel === 'Troubleshoot' ||
206
+ (!isSectionValidFn(props.activeStep.id) && isNextBtnClickedToShowValidationError) ||
207
+ noValidEntitlement;
208
+ return value;
209
+ }
210
+ else if (isATestvariation && !isCaseCreate) {
211
+ let value = isEmpty(summary) ||
212
+ isEmpty(issue) ||
213
+ (!isEntitledProductLocal && props.activeStep.nextButtonLabel === 'Get support') ||
111
214
  (!isSectionValidFn(props.activeStep.id) && isNextBtnClickedToShowValidationError) ||
112
- noValidEntitlement, onClick: onNext, className: "btn btn-app btn-primary main-nav-button", "data-tracking-id": `next-of-${activeSection}` }, t(props.activeStep.nextButtonLabel)),
215
+ noValidEntitlement;
216
+ return value;
217
+ }
218
+ };
219
+ const isDisabledGoBack = () => {
220
+ if (isBTestvariation || isEmpty(ABTestVariation))
221
+ return false;
222
+ if (isATestvariation && props.activeStep.id === 'get-support') {
223
+ return isEmpty(product) || isEmpty(version);
224
+ }
225
+ };
226
+ // To handle entitled products
227
+ return (React.createElement(React.Fragment, null,
228
+ props.activeStep.order !== 0 && (React.createElement("button", { onClick: () => onBack(), className: "btn btn-app btn-open-white main-nav-button", "data-tracking-id": `prev-of-${activeSection}`, type: "button", disabled: isDisabledGoBack() }, t('Go back'))),
229
+ React.createElement("button", { disabled: nextButtonDisabledLogic(), onClick: onNext, className: "btn btn-app btn-primary main-nav-button", "data-tracking-id": `next-of-${activeSection}`, type: "button" }, t(props.activeStep.nextButtonLabel)),
113
230
  activeSection === AppRouteSections.TROUBLESHOOT && isFileRecommendationsTriggered && (React.createElement(Button, { onClick: handleFileRecsSelfSolved, variant: ButtonVariant.secondary, className: "issue-solved-button solved-issue-button", "data-tracking-id": "troubleshoot-self-solved-issue" }, t('I solved my issue'))),
114
231
  React.createElement(RecommendationFeedbackModal, { isModalOpen: isRecsModalVisible, handleModalToggle: onRecsFeedbackModalToggle, modalContent: t(`Great, we're glad that resolved your issue`) }),
115
- activeSectionError ? (React.createElement("small", { className: "pf-u-align-self-center pf-u-ml-md text-red" }, activeSectionError)) : null));
232
+ activeSectionError ? (React.createElement("small", { className: "pf-v5-u-align-self-center pf-v5-u-ml-md text-red" }, activeSectionError)) : null));
116
233
  }
117
234
  WizardNavigation.defaultProps = defaultProps;
118
235
  export default WizardNavigation;
@@ -4,6 +4,7 @@ import '../../css/pagination.css';
4
4
  import '../../css/productSelector.css';
5
5
  import '../../css/results.css';
6
6
  import '../shared/fileUpload/css/fileSelector.css';
7
+ import React from 'react';
7
8
  import { RouteComponentProps } from 'react-router-dom';
8
9
  import { IRouteUrlParams } from '../../reducers/RouteConstNTypes';
9
10
  interface IProps {
@@ -14,10 +15,8 @@ declare global {
14
15
  interface Window {
15
16
  sessionjs: any;
16
17
  MSInputMethodContext: any;
17
- chrometwo_require: (component: string[], callback: (...params: any[]) => any) => any;
18
18
  portal: any;
19
19
  Raven: any;
20
- chrometwo_ready: any;
21
20
  seVersionInfo: {
22
21
  packageVersion: string;
23
22
  hydrajs: string;
@@ -27,6 +26,6 @@ declare global {
27
26
  documentMode: any;
28
27
  }
29
28
  }
30
- export declare const Troubleshoot: (props: IProps) => JSX.Element;
29
+ export declare const Troubleshoot: (props: IProps) => React.JSX.Element;
31
30
  export {};
32
31
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/wizardLayout/index.tsx"],"names":[],"mappings":"AAAA,OAAO,6CAA6C,CAAC;AACrD,OAAO,mBAAmB,CAAC;AAC3B,OAAO,0BAA0B,CAAC;AAClC,OAAO,+BAA+B,CAAC;AACvC,OAAO,uBAAuB,CAAC;AAC/B,OAAO,2CAA2C,CAAC;AAKnD,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAIvD,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAIlE,UAAU,MAAM;IACZ,UAAU,EAAE,mBAAmB,CAAC,eAAe,CAAC,CAAC;IACjD,QAAQ,EAAE,MAAM,CAAC;CACpB;AAED,OAAO,CAAC,MAAM,CAAC;IACX,UAAU,MAAM;QACZ,SAAS,EAAE,GAAG,CAAC;QACf,oBAAoB,EAAE,GAAG,CAAC;QAC1B,iBAAiB,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,CAAC,GAAG,MAAM,OAAA,KAAK,GAAG,KAAK,GAAG,CAAC;QAC9E,MAAM,EAAE,GAAG,CAAC;QACZ,KAAK,EAAE,GAAG,CAAC;QACX,eAAe,EAAE,GAAG,CAAC;QACrB,aAAa,EAAE;YACX,cAAc,EAAE,MAAM,CAAC;YACvB,OAAO,EAAE,MAAM,CAAC;SACnB,CAAC;KACL;IAED,UAAU,QAAQ;QACd,YAAY,EAAE,GAAG,CAAC;KACrB;CACJ;AAED,eAAO,MAAM,YAAY,UAAW,MAAM,gBAgBzC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/wizardLayout/index.tsx"],"names":[],"mappings":"AAAA,OAAO,6CAA6C,CAAC;AACrD,OAAO,mBAAmB,CAAC;AAC3B,OAAO,0BAA0B,CAAC;AAClC,OAAO,+BAA+B,CAAC;AACvC,OAAO,uBAAuB,CAAC;AAC/B,OAAO,2CAA2C,CAAC;AAGnD,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAIvD,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAGlE,UAAU,MAAM;IACZ,UAAU,EAAE,mBAAmB,CAAC,eAAe,CAAC,CAAC;IACjD,QAAQ,EAAE,MAAM,CAAC;CACpB;AAED,OAAO,CAAC,MAAM,CAAC;IACX,UAAU,MAAM;QACZ,SAAS,EAAE,GAAG,CAAC;QACf,oBAAoB,EAAE,GAAG,CAAC;QAC1B,MAAM,EAAE,GAAG,CAAC;QACZ,KAAK,EAAE,GAAG,CAAC;QACX,aAAa,EAAE;YACX,cAAc,EAAE,MAAM,CAAC;YACvB,OAAO,EAAE,MAAM,CAAC;SACnB,CAAC;KACL;IAED,UAAU,QAAQ;QACd,YAAY,EAAE,GAAG,CAAC;KACrB;CACJ;AAED,eAAO,MAAM,YAAY,UAAW,MAAM,sBAYzC,CAAC"}