@rh-support/troubleshoot 2.6.13 → 2.6.15

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 (197) hide show
  1. package/lib/esm/components/AccountInfo/AccountSelector.js +4 -4
  2. package/lib/esm/components/AccountInfo/ManagedAccountsDropdown.js +1 -1
  3. package/lib/esm/components/CaseEditView/ActiveCustomerEscalation/ActiveCustomerEscalation.d.ts.map +1 -1
  4. package/lib/esm/components/CaseEditView/ActiveCustomerEscalation/ActiveCustomerEscalation.js +21 -18
  5. package/lib/esm/components/CaseEditView/ActiveCustomerEscalation/RequestEscalationModal.d.ts.map +1 -1
  6. package/lib/esm/components/CaseEditView/ActiveCustomerEscalation/RequestEscalationModal.js +45 -34
  7. package/lib/esm/components/CaseEditView/CaseDetailsAside.d.ts.map +1 -1
  8. package/lib/esm/components/CaseEditView/CaseDetailsAside.js +13 -19
  9. package/lib/esm/components/CaseEditView/CaseDetailsErrorMessage.js +1 -1
  10. package/lib/esm/components/CaseEditView/CaseDetailsTabs.d.ts.map +1 -1
  11. package/lib/esm/components/CaseEditView/CaseDetailsTabs.js +8 -8
  12. package/lib/esm/components/CaseEditView/CaseOverview/CaseOwnerInfo.js +1 -1
  13. package/lib/esm/components/CaseEditView/CaseOverview/DateTime.d.ts.map +1 -1
  14. package/lib/esm/components/CaseEditView/CaseOverview/DateTime.js +1 -1
  15. package/lib/esm/components/CaseEditView/CaseOverview/index.d.ts.map +1 -1
  16. package/lib/esm/components/CaseEditView/CaseOverview/index.js +10 -9
  17. package/lib/esm/components/CaseEditView/CaseSolutions/CaseSolutions.d.ts.map +1 -1
  18. package/lib/esm/components/CaseEditView/CaseSolutions/CaseSolutions.js +20 -19
  19. package/lib/esm/components/CaseEditView/CaseSolutions/CaseSolutionsItem.d.ts.map +1 -1
  20. package/lib/esm/components/CaseEditView/CaseSolutions/CaseSolutionsItem.js +5 -5
  21. package/lib/esm/components/CaseEditView/CaseSolutions/HandpicketItem.js +3 -3
  22. package/lib/esm/components/CaseEditView/CaseSubscriptionAbuseAlert.js +1 -1
  23. package/lib/esm/components/CaseEditView/ConfirmationModals/ReopenCaseModal.d.ts.map +1 -1
  24. package/lib/esm/components/CaseEditView/ConfirmationModals/ReopenCaseModal.js +33 -23
  25. package/lib/esm/components/CaseEditView/PDFContainer.js +19 -15
  26. package/lib/esm/components/CaseEditView/RequestRemoteSession/ESSRemoteSession.d.ts.map +1 -1
  27. package/lib/esm/components/CaseEditView/RequestRemoteSession/ESSRemoteSession.js +9 -8
  28. package/lib/esm/components/CaseEditView/RequestRemoteSession/ESSRemoteSessionModal.d.ts.map +1 -1
  29. package/lib/esm/components/CaseEditView/RequestRemoteSession/ESSRemoteSessionModal.js +13 -16
  30. package/lib/esm/components/CaseEditView/RequestRemoteSession/NewEssTermsModal.d.ts.map +1 -1
  31. package/lib/esm/components/CaseEditView/RequestRemoteSession/NewEssTermsModal.js +51 -94
  32. package/lib/esm/components/CaseEditView/RequestRemoteSession/RemoteSessionAgreement.d.ts.map +1 -1
  33. package/lib/esm/components/CaseEditView/RequestRemoteSession/RemoteSessionAgreement.js +9 -8
  34. package/lib/esm/components/CaseEditView/RequestRemoteSession/RemoteSessionAgreementModal.d.ts.map +1 -1
  35. package/lib/esm/components/CaseEditView/RequestRemoteSession/RemoteSessionAgreementModal.js +36 -31
  36. package/lib/esm/components/CaseEditView/Tabs/CaseActionPlan/CaseActionPlan.d.ts.map +1 -1
  37. package/lib/esm/components/CaseEditView/Tabs/CaseActionPlan/CaseActionPlan.js +3 -3
  38. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CaseContactPhoneNumber.js +2 -2
  39. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CaseHostname.d.ts.map +1 -1
  40. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CaseHostname.js +9 -7
  41. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CaseOpenshiftClusterId/CaseOpenShiftPopover.js +1 -1
  42. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CaseOpenshiftClusterId/CaseOpenShiftV3Popover.js +1 -1
  43. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CaseOpenshiftClusterId/CaseOpenshiftClusterId.js +1 -1
  44. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CasePhoneNumberConfirmAlert.js +2 -2
  45. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CaseReferenceNumber.d.ts.map +1 -1
  46. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CaseReferenceNumber.js +3 -3
  47. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/ProductVersion.d.ts.map +1 -1
  48. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/ProductVersion.js +2 -2
  49. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/SFDCUrl.d.ts.map +1 -1
  50. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/SFDCUrl.js +3 -4
  51. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/Summary.js +2 -2
  52. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/CaseAttachment.js +2 -2
  53. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/CaseChat.js +1 -1
  54. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/CaseComments.js +1 -1
  55. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/CaseDiscussion.js +2 -2
  56. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/CaseExternalTrackerUpdate.js +1 -1
  57. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/CommentSearch.d.ts.map +1 -1
  58. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/CommentSearch.js +2 -3
  59. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/PostComment.js +5 -5
  60. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/VerifyCaseStatusModal/VerifyCaseStatusModal.d.ts.map +1 -1
  61. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/VerifyCaseStatusModal/VerifyCaseStatusModal.js +23 -17
  62. package/lib/esm/components/CaseEditView/Tabs/CaseHistory/Timeline.css +19 -4
  63. package/lib/esm/components/CaseEditView/Tabs/CaseHistory/Timeline.d.ts.map +1 -1
  64. package/lib/esm/components/CaseEditView/Tabs/CaseHistory/Timeline.js +5 -8
  65. package/lib/esm/components/CaseEditView/Tabs/CasePrivateNotes/CasePrivateNotes.d.ts.map +1 -1
  66. package/lib/esm/components/CaseEditView/Tabs/CasePrivateNotes/CasePrivateNotes.js +5 -4
  67. package/lib/esm/components/CaseEditView/Tabs/CaseSummary/CaseSummary.d.ts.map +1 -1
  68. package/lib/esm/components/CaseEditView/Tabs/CaseSummary/CaseSummary.js +4 -6
  69. package/lib/esm/components/CaseEditView/Tabs/CaseSummary/CaseSummaryErrorMessage.d.ts.map +1 -1
  70. package/lib/esm/components/CaseEditView/Tabs/CaseSummary/CaseSummaryErrorMessage.js +4 -6
  71. package/lib/esm/components/CaseEditView/Tabs/RMEEscalations/RMEEscalationList.js +1 -1
  72. package/lib/esm/components/CaseEditView/Tabs/RelatedTasks/RelatedTasks.d.ts.map +1 -1
  73. package/lib/esm/components/CaseEditView/Tabs/RelatedTasks/RelatedTasks.js +2 -3
  74. package/lib/esm/components/CaseInformation/CaseGroup.d.ts.map +1 -1
  75. package/lib/esm/components/CaseInformation/CaseGroup.js +1 -2
  76. package/lib/esm/components/CaseInformation/CaseInformation.js +3 -3
  77. package/lib/esm/components/CaseInformation/ContactPhoneNumberPopOver.d.ts.map +1 -1
  78. package/lib/esm/components/CaseInformation/ContactPhoneNumberPopOver.js +1 -1
  79. package/lib/esm/components/CaseInformation/Description.js +4 -4
  80. package/lib/esm/components/CaseInformation/Fts.d.ts.map +1 -1
  81. package/lib/esm/components/CaseInformation/Fts.js +13 -9
  82. package/lib/esm/components/CaseInformation/OpenCaseIssue.js +2 -2
  83. package/lib/esm/components/CaseInformation/Severity.js +1 -1
  84. package/lib/esm/components/CaseInformation/SupportLevel.d.ts.map +1 -1
  85. package/lib/esm/components/CaseInformation/SupportLevel.js +16 -10
  86. package/lib/esm/components/CaseManagement/CaseLanguageSelector.d.ts.map +1 -1
  87. package/lib/esm/components/CaseManagement/CaseLanguageSelector.js +14 -11
  88. package/lib/esm/components/CaseManagement/CaseManagement.js +4 -4
  89. package/lib/esm/components/CaseManagement/Cep.d.ts.map +1 -1
  90. package/lib/esm/components/CaseManagement/Cep.js +44 -41
  91. package/lib/esm/components/CaseManagement/ESSRemoteSessionCheckBox.d.ts.map +1 -1
  92. package/lib/esm/components/CaseManagement/ESSRemoteSessionCheckBox.js +50 -42
  93. package/lib/esm/components/CaseManagement/NoClusterIDReasonSelector.d.ts.map +1 -1
  94. package/lib/esm/components/CaseManagement/NoClusterIDReasonSelector.js +39 -63
  95. package/lib/esm/components/CaseManagement/OpenShiftClusterId.js +1 -1
  96. package/lib/esm/components/CaseManagement/OpenshiftDropdownV4.d.ts.map +1 -1
  97. package/lib/esm/components/CaseManagement/OpenshiftDropdownV4.js +62 -36
  98. package/lib/esm/components/CaseManagement/RHAssociatesSelector.js +1 -1
  99. package/lib/esm/components/CaseManagement/SendNotifications/AddContactToGroupModal.d.ts.map +1 -1
  100. package/lib/esm/components/CaseManagement/SendNotifications/AddContactToGroupModal.js +8 -8
  101. package/lib/esm/components/CaseManagement/SendNotifications/AddCustomEmailToAccountModal.d.ts.map +1 -1
  102. package/lib/esm/components/CaseManagement/SendNotifications/AddCustomEmailToAccountModal.js +10 -10
  103. package/lib/esm/components/CaseManagement/SendNotifications/CaseContactSelector.js +2 -2
  104. package/lib/esm/components/CaseManagement/SendNotifications/NonOrgCaseNotifyeesSelector.d.ts.map +1 -1
  105. package/lib/esm/components/CaseManagement/SendNotifications/NonOrgCaseNotifyeesSelector.js +57 -16
  106. package/lib/esm/components/ConfirmationModals/NoAttachmentSelectedModal.d.ts.map +1 -1
  107. package/lib/esm/components/ConfirmationModals/NoAttachmentSelectedModal.js +12 -27
  108. package/lib/esm/components/ConfirmationModals/PreferredSecureSupportModal.d.ts.map +1 -1
  109. package/lib/esm/components/ConfirmationModals/PreferredSecureSupportModal.js +1 -1
  110. package/lib/esm/components/Cve/CveItem.d.ts.map +1 -1
  111. package/lib/esm/components/Cve/CveItem.js +10 -11
  112. package/lib/esm/components/Cve/CveModal.d.ts.map +1 -1
  113. package/lib/esm/components/Cve/CveModal.js +10 -11
  114. package/lib/esm/components/Cve/CvePanel.d.ts.map +1 -1
  115. package/lib/esm/components/Cve/CvePanel.js +3 -3
  116. package/lib/esm/components/Cve/CveSidebar.js +2 -2
  117. package/lib/esm/components/IdeaInformation/IdeaInformation.js +7 -7
  118. package/lib/esm/components/ImproveCase/KtQuestions.js +6 -6
  119. package/lib/esm/components/OpenCase/SupportTypeSelectorPage.d.ts.map +1 -1
  120. package/lib/esm/components/OpenCase/SupportTypeSelectorPage.js +6 -13
  121. package/lib/esm/components/ProductSelector/AllProductsSelector.js +8 -7
  122. package/lib/esm/components/ProductSelector/NewProductDropdownSelector.d.ts +1 -1
  123. package/lib/esm/components/ProductSelector/NewProductDropdownSelector.d.ts.map +1 -1
  124. package/lib/esm/components/ProductSelector/NewProductDropdownSelector.js +80 -53
  125. package/lib/esm/components/ProductSelector/NewProductVersionSelector.d.ts.map +1 -1
  126. package/lib/esm/components/ProductSelector/NewProductVersionSelector.js +14 -10
  127. package/lib/esm/components/ProductSelector/ProductSelector.js +1 -1
  128. package/lib/esm/components/ProductSelector/ProductVersionDropdownSelector.js +4 -4
  129. package/lib/esm/components/Recommendations/AsideResults.d.ts.map +1 -1
  130. package/lib/esm/components/Recommendations/AsideResults.js +5 -3
  131. package/lib/esm/components/Recommendations/ClusterRecommendationItems.js +1 -1
  132. package/lib/esm/components/Recommendations/ClusterRecommendations.js +1 -1
  133. package/lib/esm/components/Recommendations/ClusterRecommendationsModal.d.ts.map +1 -1
  134. package/lib/esm/components/Recommendations/ClusterRecommendationsModal.js +7 -11
  135. package/lib/esm/components/Recommendations/EARules/EARuleInfoAccordion.d.ts.map +1 -1
  136. package/lib/esm/components/Recommendations/EARules/EARuleInfoAccordion.js +4 -4
  137. package/lib/esm/components/Recommendations/EARules/EARuleInfoInline.js +7 -7
  138. package/lib/esm/components/Recommendations/InsightsResults.js +1 -1
  139. package/lib/esm/components/Recommendations/InsightsRuleInfo.d.ts.map +1 -1
  140. package/lib/esm/components/Recommendations/InsightsRuleInfo.js +16 -16
  141. package/lib/esm/components/Recommendations/RecommendationFeedbackModal.js +6 -6
  142. package/lib/esm/components/Recommendations/RecommendationInfoBox.d.ts.map +1 -1
  143. package/lib/esm/components/Recommendations/RecommendationInfoBox.js +7 -7
  144. package/lib/esm/components/Recommendations/Recommendations.d.ts.map +1 -1
  145. package/lib/esm/components/Recommendations/Recommendations.js +23 -20
  146. package/lib/esm/components/Recommendations/RecommendationsLoader.js +1 -1
  147. package/lib/esm/components/Recommendations/RulesModal.d.ts.map +1 -1
  148. package/lib/esm/components/Recommendations/RulesModal.js +7 -9
  149. package/lib/esm/components/Recommendations/WatsonxAiIcon.d.ts.map +1 -1
  150. package/lib/esm/components/Recommendations/WatsonxAiIcon.js +9 -10
  151. package/lib/esm/components/RemoteRider/RemoteRiderBanner.js +1 -1
  152. package/lib/esm/components/Review/Review.js +4 -4
  153. package/lib/esm/components/SessionRestore/RestoreLastSessionModal.js +5 -5
  154. package/lib/esm/components/SessionRestore/SessionRestore.js +1 -1
  155. package/lib/esm/components/SessionRestore/SessionRestoreCard.js +1 -1
  156. package/lib/esm/components/SubmitCase/SubmitCase.d.ts.map +1 -1
  157. package/lib/esm/components/SubmitCase/SubmitCase.js +21 -21
  158. package/lib/esm/components/Suggestions/Suggestions.js +2 -2
  159. package/lib/esm/components/Suggestions/TopContent.d.ts.map +1 -1
  160. package/lib/esm/components/Suggestions/TopContent.js +8 -8
  161. package/lib/esm/components/TroubleshootSection/TroubleshootSection.d.ts.map +1 -1
  162. package/lib/esm/components/TroubleshootSection/TroubleshootSection.js +13 -14
  163. package/lib/esm/components/UpdateSeverityModal/UpdateSeverityModal.d.ts.map +1 -1
  164. package/lib/esm/components/UpdateSeverityModal/UpdateSeverityModal.js +20 -16
  165. package/lib/esm/components/shared/Rule.js +6 -6
  166. package/lib/esm/components/shared/fileUpload/FileLister.js +6 -6
  167. package/lib/esm/components/shared/fileUpload/WidgetFileUploader.d.ts.map +1 -1
  168. package/lib/esm/components/shared/fileUpload/WidgetFileUploader.js +7 -6
  169. package/lib/esm/components/shared/fileUpload/common/FileUploaderInfoIcon.js +1 -1
  170. package/lib/esm/components/shared/fileUpload/css/fileSelector.css +1 -0
  171. package/lib/esm/components/shared/fileUpload/fileSelectors/FileSelectorButton.js +1 -1
  172. package/lib/esm/components/shared/fileUpload/fileSelectors/WidgetFileSelector.d.ts.map +1 -1
  173. package/lib/esm/components/shared/fileUpload/fileSelectors/WidgetFileSelector.js +4 -4
  174. package/lib/esm/components/shared/fileUpload/fileSelectors/WidgetFileSelectorImage.js +2 -2
  175. package/lib/esm/components/shared/input/ContactSelectorInternal.d.ts +15 -6
  176. package/lib/esm/components/shared/input/ContactSelectorInternal.d.ts.map +1 -1
  177. package/lib/esm/components/shared/input/ContactSelectorInternal.js +128 -23
  178. package/lib/esm/components/wizardLayout/MainSection.js +2 -2
  179. package/lib/esm/components/wizardLayout/NewFeatureModal.d.ts.map +1 -1
  180. package/lib/esm/components/wizardLayout/NewFeatureModal.js +6 -6
  181. package/lib/esm/components/wizardLayout/WizardAside.js +3 -3
  182. package/lib/esm/components/wizardLayout/WizardMain.d.ts.map +1 -1
  183. package/lib/esm/components/wizardLayout/WizardMain.js +61 -19
  184. package/lib/esm/components/wizardLayout/WizardNavigation.d.ts.map +1 -1
  185. package/lib/esm/components/wizardLayout/WizardNavigation.js +11 -16
  186. package/lib/esm/css/app.css +13 -13
  187. package/lib/esm/css/case.css +23 -16
  188. package/lib/esm/hooks/useWizard.d.ts.map +1 -1
  189. package/lib/esm/hooks/useWizard.js +1 -3
  190. package/lib/esm/reducers/CaseReducer.d.ts.map +1 -1
  191. package/lib/esm/reducers/CaseReducer.js +2 -2
  192. package/lib/esm/reducers/RouteConstNTypes.d.ts +1 -2
  193. package/lib/esm/reducers/RouteConstNTypes.d.ts.map +1 -1
  194. package/lib/esm/reducers/RulesReducer.d.ts.map +1 -1
  195. package/lib/esm/scss/_main.scss +183 -88
  196. package/lib/esm/scss/_pf-overrides.scss +150 -140
  197. package/package.json +11 -11
@@ -19,7 +19,7 @@ var __rest = (this && this.__rest) || function (s, e) {
19
19
  return t;
20
20
  };
21
21
  import { search } from '@cee-eng/hydrajs';
22
- import { Accordion, AccordionContent, AccordionItem, AccordionToggle, Button, Modal, ModalVariant, } from '@patternfly/react-core';
22
+ import { Accordion, AccordionContent, AccordionItem, AccordionToggle, Button, Card, CardBody, CardHeader, Modal, ModalFooter, ModalVariant, } from '@patternfly/react-core';
23
23
  import { PaginatedList, ToastNotification } from '@rh-support/components';
24
24
  import { useGlobalStateContext } from '@rh-support/react-context';
25
25
  import { AbilityContext, CaseDetailsFields, resourceActions, resources } from '@rh-support/user-permissions';
@@ -282,44 +282,45 @@ export const CaseSolutions = forwardRef((props, ref) => {
282
282
  // redhatter logged in: we show pins but perform link/unlink
283
283
  const renderPinnedByCustomerRedhatterView = (recommendation, index, type) => (React.createElement(CaseSolutionsItem, { showLink: true, type: type, pinTitle: recommendation.isPinnedAndLinked ? t('Unpin') : t('Pin'), isPinLoading: isPinLoading, index: index, recommendation: recommendation, onPinClicked: updateRecommendations(recommendation, undefined, recommendation.isLinked), onLinkClick: (name) => addDtmEvent(name) }));
284
284
  // redhatter logged in: we show links and perform link/unlink
285
- const renderHandPickedByRedHatter = (recommendation, index, type) => (React.createElement("div", { className: "pf-v5-u-ml-lg" },
285
+ const renderHandPickedByRedHatter = (recommendation, index, type) => (React.createElement("div", { className: "pf-v6-u-ml-lg" },
286
286
  React.createElement(CaseSolutionsItem, { showLink: true, type: type, pinTitle: recommendation.isLinked ? t('Unlink') : t('Link'), isPinLoading: isPinLoading, index: index, recommendation: recommendation, onPinClicked: updateRecommendations(recommendation, undefined, recommendation.isLinked), onLinkClick: (name) => addDtmEvent(name) })));
287
287
  const linkedRecommendations = recommendations.filter((r) => r.isLinked);
288
288
  const pinnedRecommendations = recommendations.filter((r) => r.isPinned);
289
- const closeCaseModal = (React.createElement(Modal, { variant: ModalVariant.small, title: t('Did this solve your case?'), isOpen: isCloseCaseModalOpen && caseStatus !== CaseStatusEnum.CLOSED, onClose: () => setIsCloseCaseModalOpen(false), actions: [
289
+ const closeCaseModal = (React.createElement(Modal, { variant: ModalVariant.small, title: t('Did this solve your case?'), isOpen: isCloseCaseModalOpen && caseStatus !== CaseStatusEnum.CLOSED, onClose: () => setIsCloseCaseModalOpen(false) },
290
+ React.createElement(Trans, null, "We're glad to hear this article was helpful. Would you like to close this case or keep it open? You can still view the case after it closes."),
291
+ React.createElement(ModalFooter, null,
290
292
  React.createElement(Button, { variant: "primary", isDisabled: isCaseCloseLoading, onClick: () => setIsCloseCaseModalOpen(false), key: "keep-case-open-btn" },
291
293
  React.createElement(Trans, null, "Keep it open")),
292
294
  React.createElement(Button, { variant: "secondary", isDisabled: isCaseCloseLoading, isLoading: isCaseCloseLoading, key: "close-case-btn", onClick: handleCaseClose },
293
- React.createElement(Trans, null, "Close case")),
294
- ] },
295
- React.createElement(Trans, null, "We're glad to hear this article was helpful. Would you like to close this case or keep it open? You can still view the case after it closes.")));
295
+ React.createElement(Trans, null, "Close case")))));
296
296
  return (React.createElement(React.Fragment, null,
297
297
  closeCaseModal,
298
- React.createElement(Accordion, { isBordered: true, asDefinitionList: false, className: "card card-white case-details-aside-solutions" },
299
- linkedRecommendations.length !== 0 && (React.createElement(AccordionItem, null,
300
- React.createElement(AccordionToggle, { id: "sol-handpicked", isExpanded: handPickedOpen, onClick: () => setHandPickedOpen((pre) => !pre) },
298
+ React.createElement(Accordion, { className: "card card-white case-details-aside-solutions" },
299
+ linkedRecommendations.length !== 0 && (React.createElement(AccordionItem, { isExpanded: handPickedOpen },
300
+ React.createElement(AccordionToggle, { id: "sol-handpicked", onClick: () => setHandPickedOpen((pre) => !pre) },
301
301
  React.createElement("span", null, canLinkUnlink ? (React.createElement(Trans, null, "Handpicked by you")) : (React.createElement(Trans, null, "Handpicked for this case"))),
302
- React.createElement("span", { className: "badge-item pf-v5-u-font-size-sm pf-v5-u-mx-sm" }, linkedRecommendations.length)),
303
- React.createElement(AccordionContent, { isHidden: !handPickedOpen }, !hasLink ? (!canLinkUnlink ? (React.createElement(Trans, null, "If a Red Hat engineer finds an article or solution that can help with your case, they'll pin it here.")) : (React.createElement(React.Fragment, null))) : (React.createElement(PaginatedList, { id: "case-details-handpicked-recommendations", listItems: linkedRecommendations.map((rec, index) => canLinkUnlink
302
+ React.createElement("span", { className: "badge-item pf-v6-u-font-size-sm pf-v6-u-mx-sm" }, linkedRecommendations.length)),
303
+ React.createElement(AccordionContent, null, !hasLink ? (!canLinkUnlink ? (React.createElement(Trans, null, "If a Red Hat engineer finds an article or solution that can help with your case, they'll pin it here.")) : (React.createElement(React.Fragment, null))) : (React.createElement(PaginatedList, { id: "case-details-handpicked-recommendations", listItems: linkedRecommendations.map((rec, index) => canLinkUnlink
304
304
  ? renderHandPickedByRedHatter(rec, index, 'handpicked-recommendations')
305
305
  : renderHandpickedCustomerView(rec, index, 'handpicked-recommendations')), perPage: 5, className: "list-icons list-icons-flush", isFetching: !!isLoadingRecommendations, perPageOptions: [
306
306
  { title: '5', value: 5 },
307
307
  { title: '10', value: 10 },
308
308
  ] }))))),
309
- pinnedRecommendations.length !== 0 && (React.createElement(AccordionItem, null,
310
- React.createElement(AccordionToggle, { id: "sol-pinned", isExpanded: pinnedOpen, onClick: () => setPinnedOpen((pre) => !pre) },
309
+ pinnedRecommendations.length !== 0 && (React.createElement(AccordionItem, { isExpanded: pinnedOpen },
310
+ React.createElement(AccordionToggle, { id: "sol-pinned", onClick: () => setPinnedOpen((pre) => !pre) },
311
311
  React.createElement("span", null, canLinkUnlink ? (React.createElement(Trans, null, "Pinned by customer")) : (React.createElement(Trans, null, "My pinned recommendations"))),
312
- React.createElement("span", { className: "badge-item pf-v5-u-font-size-sm pf-v5-u-mx-sm" }, pinnedRecommendations.length)),
313
- React.createElement(AccordionContent, { isHidden: !pinnedOpen }, !hasPin ? (!canLinkUnlink ? (React.createElement(Trans, null, "When you save a recommended article or solution, you'll see it here. Saved items display only in this case and are not saved for later.")) : (React.createElement(React.Fragment, null))) : (React.createElement(PaginatedList, { id: "case-details-pinned-recommendations", listItems: pinnedRecommendations.map((rec, index) => canLinkUnlink
312
+ React.createElement("span", { className: "badge-item pf-v6-u-font-size-sm pf-v6-u-mx-sm" }, pinnedRecommendations.length)),
313
+ React.createElement(AccordionContent, null, !hasPin ? (!canLinkUnlink ? (React.createElement(Trans, null, "When you save a recommended article or solution, you'll see it here. Saved items display only in this case and are not saved for later.")) : (React.createElement(React.Fragment, null))) : (React.createElement(PaginatedList, { id: "case-details-pinned-recommendations", listItems: pinnedRecommendations.map((rec, index) => canLinkUnlink
314
314
  ? renderPinnedByCustomerRedhatterView(rec, index, 'pinned-recommendations')
315
315
  : renderPinsByCustomer(rec, index, 'pinned-recommendations')), perPage: 5, className: "list-icons list-icons-flush", isFetching: !!isLoadingRecommendations, perPageOptions: [
316
316
  { title: '5', value: 5 },
317
317
  { title: '10', value: 10 },
318
318
  ] })))))),
319
- topRecommendations.length > 0 && (React.createElement("div", { className: "card card-white card-support recommendations", ref: ref },
320
- React.createElement("h3", { className: "card-heading case-detail-panel-card-heading card-header-bg" },
321
- React.createElement(Trans, null, "Knowledgebase recommendations")),
322
- React.createElement("div", { className: "card-body" },
319
+ topRecommendations.length > 0 && (React.createElement(Card, { className: "card-support recommendations", ref: ref },
320
+ React.createElement(CardHeader, null,
321
+ React.createElement("h3", { className: "card-heading case-detail-panel-card-heading" },
322
+ React.createElement(Trans, null, "Knowledgebase recommendations"))),
323
+ React.createElement(CardBody, null,
323
324
  React.createElement(PaginatedList, { id: "case-details-top-recommendations", className: "list-icons list-icons-flush", listItems: topRecommendations
324
325
  .filter((r) => !pinnedRecommendations.some((pr) => pr.resourceId === r.resourceId))
325
326
  .map((rec, index) => renderTopRecommendations(rec, index, 'top-recommendations')), perPage: 5, isFetching: !!isLoadingRecommendations, perPageOptions: [
@@ -1 +1 @@
1
- {"version":3,"file":"CaseSolutionsItem.d.ts","sourceRoot":"","sources":["../../../../../src/components/CaseEditView/CaseSolutions/CaseSolutionsItem.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,yCAAyC,CAAC;AAQ5E,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,0BAA0B,EAAE,MAAM,yCAAyC,CAAC;AACrF,UAAU,MAAM;IACZ,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,EAAE,8BAA8B,CAAC;IAC/C,YAAY,EAAE,GAAG,CAAC;IAClB,YAAY,EAAE,MAAM,IAAI,CAAC;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CACvC;AAED,MAAM,WAAW,8BAA+B,SAAQ,OAAO,CAAC,iBAAiB,CAAC;IAC9E,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,kBAAkB,CAAC,EAAE,0BAA0B,CAAC;CACnD;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,qBAwD9C"}
1
+ {"version":3,"file":"CaseSolutionsItem.d.ts","sourceRoot":"","sources":["../../../../../src/components/CaseEditView/CaseSolutions/CaseSolutionsItem.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,yCAAyC,CAAC;AAQ5E,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,0BAA0B,EAAE,MAAM,yCAAyC,CAAC;AACrF,UAAU,MAAM;IACZ,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,EAAE,8BAA8B,CAAC;IAC/C,YAAY,EAAE,GAAG,CAAC;IAClB,YAAY,EAAE,MAAM,IAAI,CAAC;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CACvC;AAED,MAAM,WAAW,8BAA+B,SAAQ,OAAO,CAAC,iBAAiB,CAAC;IAC9E,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,kBAAkB,CAAC,EAAE,0BAA0B,CAAC;CACnD;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,qBA2D9C"}
@@ -12,11 +12,11 @@ export function CaseSolutionsItem(props) {
12
12
  const isLoading = !!props.isPinLoading[props.recommendation.resourceId];
13
13
  return (React.createElement("div", null,
14
14
  React.createElement("div", { className: "recommendation-header" },
15
- React.createElement(Button, { title: props.pinTitle, onClick: props.onPinClicked, "data-tracking-id": `case-resource-${props.pinTitle}`, variant: "plain", className: "list-icon" },
16
- isLoading && React.createElement(LoadingIndicator, { show: isLoading, size: "xs" }),
17
- !isLoading && props.showPin && (React.createElement(React.Fragment, null,
18
- React.createElement(Icon, { size: "md" }, props.isPinned ? (React.createElement(StarIcon, { className: "pinned-resource", color: "0066cc" })) : (React.createElement(OutlinedStarIcon, { className: "pinned-resource", color: "0066cc" }))))),
19
- !isLoading && props.showLink && React.createElement(LinkIcon, null)),
15
+ React.createElement(Button, { icon: React.createElement(React.Fragment, null,
16
+ isLoading && React.createElement(LoadingIndicator, { show: isLoading, size: "xs" }),
17
+ !isLoading && props.showPin && (React.createElement(React.Fragment, null,
18
+ React.createElement(Icon, { size: "md" }, props.isPinned ? (React.createElement(StarIcon, { className: "pinned-resource", color: "0066cc" })) : (React.createElement(OutlinedStarIcon, { className: "pinned-resource", color: "0066cc" }))))),
19
+ !isLoading && props.showLink && React.createElement(LinkIcon, null)), title: props.pinTitle, onClick: props.onPinClicked, "data-tracking-id": `case-resource-${props.pinTitle}`, variant: "plain", className: "list-icon" }),
20
20
  React.createElement("a", { href: props.recommendation.resourceViewURI, "data-tracking-id": `case-resource-${props.type}-link-${props.index}`, target: "_blank", rel: "noopener noreferrer", className: "case-resource-recommendation-link", dangerouslySetInnerHTML: {
21
21
  __html: DOMPurify.sanitize(truncate(decodeMarkTag(props.recommendation.title || ''), maxTitleLength)),
22
22
  }, onClick: () => props.onLinkClick('case solution click') })),
@@ -58,7 +58,7 @@ export function HandpickedItem(props) {
58
58
  props.onRecommendationLike();
59
59
  }
60
60
  });
61
- return (React.createElement("div", { className: "handpicked-resource pf-v5-u-mx-sm" },
61
+ return (React.createElement("div", { className: "handpicked-resource pf-v6-u-mx-sm" },
62
62
  React.createElement("div", { className: "recommendation-header" },
63
63
  React.createElement("a", { href: recommendation.resourceViewURI, "data-tracking-id": `case-resource-${props.type}-link-${props.index}`, target: "_blank", rel: "noopener noreferrer", dangerouslySetInnerHTML: {
64
64
  __html: DOMPurify.sanitize(truncate(decodeMarkTag(recommendation.title || ''), maxTitleLength)),
@@ -66,11 +66,11 @@ export function HandpickedItem(props) {
66
66
  React.createElement("div", { className: "result-body", dangerouslySetInnerHTML: {
67
67
  __html: DOMPurify.sanitize(truncate(cleanupMarkDown(decodeMarkTag(props.recommendation.solutionAbstract || '')), maxAbstractLength)),
68
68
  } }),
69
- React.createElement(ActionList, { className: "pf-v5-u-my-xs" },
69
+ React.createElement(ActionList, { className: "pf-v6-u-my-xs" },
70
70
  React.createElement(ActionListItem, null,
71
71
  React.createElement(Button, { variant: "link", isDisabled: helpfulBtnLoading || notHelpfulBtnLoading, icon: helpfulBtnLoading ? (React.createElement(LoadingIndicator, { show: true, size: "xs" })) : (React.createElement(Icon, { size: "md", className: "eval-icons" }, evaluation === CaseRecommendationEvalEnum.HELPFUL ? (React.createElement(ThumbsUpIcon, null)) : (React.createElement(OutlinedThumbsUpIcon, null)))), onClick: () => updateEvaluation(CaseRecommendationEvalEnum.HELPFUL), "data-tracking-id": "recommendation-helpful" },
72
72
  React.createElement(Trans, null, "This was helpful"))),
73
- React.createElement(ActionListItem, { className: "pf-v5-u-ml-lg" },
73
+ React.createElement(ActionListItem, { className: "pf-v6-u-ml-lg" },
74
74
  React.createElement(Button, { variant: "link", isDisabled: helpfulBtnLoading || notHelpfulBtnLoading, icon: notHelpfulBtnLoading ? (React.createElement(LoadingIndicator, { show: true, size: "xs" })) : (React.createElement(Icon, { size: "md", className: "eval-icons" }, evaluation === CaseRecommendationEvalEnum.NOT_HELPFUL ? (React.createElement(ThumbsDownIcon, null)) : (React.createElement(OutlinedThumbsDownIcon, null)))), onClick: () => updateEvaluation(CaseRecommendationEvalEnum.NOT_HELPFUL), "data-tracking-id": "recommendation-not-helpful" },
75
75
  React.createElement(Trans, null, "Not helpful"))))));
76
76
  }
@@ -3,6 +3,6 @@ import { SubscriptionAbuseModalText, SubscriptionAbuseModalTitle } from '@rh-sup
3
3
  import React from 'react';
4
4
  import { Trans } from 'react-i18next';
5
5
  export function CaseSubscriptionAbuseAlert() {
6
- return (React.createElement(Alert, { className: "pf-v5-u-mb-md", isInline: true, variant: AlertVariant.warning, title: React.createElement(Trans, null, SubscriptionAbuseModalTitle), children: React.createElement("p", { className: "pf-v5-u-mb-sm" },
6
+ return (React.createElement(Alert, { className: "pf-v6-u-mb-md", isInline: true, variant: AlertVariant.warning, title: React.createElement(Trans, null, SubscriptionAbuseModalTitle), children: React.createElement("p", { className: "pf-v6-u-mb-sm" },
7
7
  React.createElement(Trans, null, SubscriptionAbuseModalText)) }));
8
8
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ReopenCaseModal.d.ts","sourceRoot":"","sources":["../../../../../src/components/CaseEditView/ConfirmationModals/ReopenCaseModal.tsx"],"names":[],"mappings":"AAeA,OAAO,KAAmB,MAAM,OAAO,CAAC;AAGxC,OAAO,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAC;AAEzE,UAAU,MAAM;IACZ,SAAS,EAAE,CAAC,WAAW,KAAA,EAAE,SAAS,KAAA,EAAE,UAAU,CAAC,KAAA,EAAE,iBAAiB,CAAC,KAAA,EAAE,cAAc,CAAC,KAAA,EAAE,mBAAmB,CAAC,KAAA,KAAK,IAAI,CAAC;IACpH,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,OAAO,CAAC;IACpB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,UAAU,EAAE,OAAO,CAAC;IACpB,YAAY,EAAE,cAAc,CAAC;IAC7B,aAAa,EAAE,MAAM,CAAC;CACzB;AAMD,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,qBAuM5C"}
1
+ {"version":3,"file":"ReopenCaseModal.d.ts","sourceRoot":"","sources":["../../../../../src/components/CaseEditView/ConfirmationModals/ReopenCaseModal.tsx"],"names":[],"mappings":"AAgBA,OAAO,KAAmB,MAAM,OAAO,CAAC;AAGxC,OAAO,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAC;AAEzE,UAAU,MAAM;IACZ,SAAS,EAAE,CAAC,WAAW,KAAA,EAAE,SAAS,KAAA,EAAE,UAAU,CAAC,KAAA,EAAE,iBAAiB,CAAC,KAAA,EAAE,cAAc,CAAC,KAAA,EAAE,mBAAmB,CAAC,KAAA,KAAK,IAAI,CAAC;IACpH,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,OAAO,CAAC;IACpB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,UAAU,EAAE,OAAO,CAAC;IACpB,YAAY,EAAE,cAAc,CAAC;IAC7B,aAAa,EAAE,MAAM,CAAC;CACzB;AAMD,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,qBA0M5C"}
@@ -8,9 +8,10 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
8
8
  });
9
9
  };
10
10
  import { Button, ButtonVariant, Form, FormGroup, FormHelperText, HelperText, HelperTextItem, Modal, ModalVariant, TextArea, } from '@patternfly/react-core';
11
- import { Select, SelectOption } from '@patternfly/react-core/deprecated';
11
+ import { SingleSelectDropdown } from '@rh-support/components';
12
12
  import { formatDateTime } from '@rh-support/utils';
13
13
  import isEmpty from 'lodash/isEmpty';
14
+ import map from 'lodash/map';
14
15
  import React, { useState } from 'react';
15
16
  import { Trans, useTranslation } from 'react-i18next';
16
17
  import { CaseStatusEnum } from '../../../constants/caseDetailsConstants';
@@ -21,11 +22,9 @@ export function ReopenCaseModal(props) {
21
22
  const { t } = useTranslation();
22
23
  const [reopenDescription, setReopenDescription] = useState('');
23
24
  const [selectedReason, setSelectedReason] = useState('');
24
- const [showDropdown, setShowDropdown] = useState(false);
25
25
  const [showTextArea, setShowTextArea] = useState(props.isInternal);
26
26
  const [showValidationError, setShowValidationError] = useState(false);
27
27
  const [selectedStatus, setSelectedStatus] = useState('');
28
- const onDropdownToggle = (toggle) => setShowDropdown(toggle);
29
28
  const onDescriptionChange = (text) => {
30
29
  setShowValidationError(false);
31
30
  setReopenDescription(text);
@@ -57,40 +56,51 @@ export function ReopenCaseModal(props) {
57
56
  let submissionDate = new Date();
58
57
  props.onConfirm(getCommentBody(), props.reopenStatus || selectedStatus || CaseStatusEnum.WAITING_ON_REDHAT, submissionDate, props.whoIsUpdating, selectedReason, reopenDescription);
59
58
  });
60
- const onReasonChange = (event, resolution) => {
61
- setSelectedReason(resolution);
59
+ const onReasonChange = (option) => {
60
+ setSelectedReason(option.value);
62
61
  setShowValidationError(false);
63
- reasonWithDescription.includes(resolution) ? setShowTextArea(true) : setShowTextArea(false);
64
- onDropdownToggle(false);
62
+ reasonWithDescription.includes(option.value) ? setShowTextArea(true) : setShowTextArea(false);
65
63
  };
66
- const onStatusChange = (event, status) => {
64
+ const onStatusChange = (option) => {
67
65
  setShowValidationError(false);
68
- setSelectedStatus(status);
69
- onDropdownToggle(false);
66
+ setSelectedStatus(option.value);
70
67
  };
71
68
  const isDescriptionEmpty = showTextArea ? isEmpty(reopenDescription === null || reopenDescription === void 0 ? void 0 : reopenDescription.trim()) : false;
72
- return (React.createElement(Modal, { className: "case-reopen-modal", id: "case-reopen-modal", title: t(`Reopening case ${props.caseNumber}`), "aria-describedby": "case-reopen-modal", isOpen: true, onClose: props.onClose, showClose: true, actions: [
73
- React.createElement(Button, { key: "submit-description", variant: ButtonVariant.primary, onClick: onSubmit, isLoading: props.isUpdating, isDisabled: isDescriptionEmpty || showValidationError || props.isUpdating, "data-tracking-id": "reopen-case-description-modal-submit" },
74
- React.createElement(Trans, null, "Reopen case")),
75
- React.createElement(Button, { key: "close-modal", variant: ButtonVariant.secondary, onClick: props.onClose, isDisabled: props.isUpdating, "data-tracking-id": "reopen-case-description-modal-cancel" },
76
- React.createElement(Trans, null, "Cancel")),
77
- ], variant: ModalVariant.medium },
69
+ const getReasonDropdownOptions = map(reasonsList, (option) => ({
70
+ label: option,
71
+ value: option,
72
+ }));
73
+ const getStatusDropdownOptions = map(props.allStatuses.filter((status) => status !== CaseStatusEnum.CLOSED), (option) => ({
74
+ label: option,
75
+ value: option,
76
+ }));
77
+ const getSelectedReasonOption = {
78
+ label: selectedReason,
79
+ value: selectedReason,
80
+ };
81
+ const getSelectedStatusOption = {
82
+ label: selectedStatus,
83
+ value: selectedStatus,
84
+ };
85
+ return (React.createElement(Modal, { className: "case-reopen-modal", id: "case-reopen-modal", title: t(`Reopening case ${props.caseNumber}`), "aria-describedby": "case-reopen-modal", isOpen: true, onClose: props.onClose, variant: ModalVariant.medium },
78
86
  React.createElement(Form, { className: "case-reopen-modal-form" },
79
87
  (!props.isInternal || !props.reopenStatus) && (React.createElement(FormGroup, { label: t(props.isInternal ? 'Status' : 'Reason'), isRequired: true, fieldId: "case-resolution" },
80
88
  showValidationError && (props.isInternal ? !selectedStatus : !selectedReason) && (React.createElement(FormHelperText, null,
81
89
  React.createElement(HelperText, null,
82
- React.createElement(HelperTextItem, { variant: "error", hasIcon: true },
90
+ React.createElement(HelperTextItem, { variant: "error" },
83
91
  React.createElement(Trans, null, "Required field"))))),
84
- props.isInternal ? (React.createElement(Select, { "aria-label": t('Select an option that best fits'), id: "reopen-case-status", selections: selectedStatus, onSelect: onStatusChange, isOpen: showDropdown, isDisabled: props.isUpdating, menuAppendTo: document.body, validated: showValidationError && !selectedStatus ? 'error' : 'default', placeholderText: t('Select an option that best fits'), onToggle: (_event, toggle) => onDropdownToggle(toggle) }, props.allStatuses
85
- .filter((status) => status !== CaseStatusEnum.CLOSED)
86
- .map((option, index) => (React.createElement(SelectOption, { key: index, value: option },
87
- React.createElement(Trans, null, option)))))) : (React.createElement(Select, { "aria-label": t('Select an option that best fits'), id: "case-resolution", selections: selectedReason, onSelect: onReasonChange, isOpen: showDropdown, isDisabled: props.isUpdating, menuAppendTo: document.body, validated: showValidationError && !selectedReason ? 'error' : 'default', placeholderText: t('Select an option that best fits'), onToggle: (_event, toggle) => onDropdownToggle(toggle) }, reasonsList.map((option, index) => (React.createElement(SelectOption, { key: index, value: option },
88
- React.createElement(Trans, null, option)))))))),
92
+ props.isInternal ? (React.createElement(SingleSelectDropdown, { placeholder: t('Select an option that best fits'), dataTrackingId: "reopen-case-status", options: getStatusDropdownOptions, selected: getSelectedStatusOption, isDisabled: props.isUpdating, isInvalid: showValidationError && !selectedStatus, onSelect: onStatusChange })) : (React.createElement(SingleSelectDropdown, { placeholder: t('Select an option that best fits'), dataTrackingId: "case-resolution", options: getReasonDropdownOptions, selected: getSelectedReasonOption, isDisabled: props.isUpdating, isInvalid: showValidationError && !selectedReason, onSelect: onReasonChange })))),
89
93
  showTextArea && (React.createElement(FormGroup, { label: t('Please describe your reason'), type: "text", isRequired: true, fieldId: "reopen-case-description" },
90
94
  React.createElement(TextArea, { placeholder: t(props.isInternal
91
95
  ? 'Describe the reason for reopening with the selected status'
92
96
  : 'The better the description, the easier it will be for our support team to address your case.'), validated: showValidationError && isDescriptionEmpty && !reopenDescription ? 'error' : 'default', isRequired: true, id: "reopen-case-description", name: "reopen-case-description", "aria-describedby": "reopen-case-description", value: reopenDescription, onChange: (_event, text) => onDescriptionChange(text), isDisabled: props.isUpdating, resizeOrientation: "vertical" }),
93
97
  React.createElement(FormHelperText, null,
94
98
  React.createElement(HelperText, null,
95
- React.createElement(HelperTextItem, null, t(`Your comment will be visible${props.isInternal ? ' to the customers' : ''} under discussions after reopening.`)))))))));
99
+ React.createElement(HelperTextItem, null, t(`Your comment will be visible${props.isInternal ? ' to the customers' : ''} under discussions after reopening.`)))))),
100
+ React.createElement("div", { className: "pf-v6-u-pt-md" },
101
+ React.createElement(Button, { key: "submit-description", variant: ButtonVariant.primary, onClick: onSubmit, isLoading: props.isUpdating, isDisabled: isDescriptionEmpty || showValidationError || props.isUpdating, "data-tracking-id": "reopen-case-description-modal-submit" },
102
+ React.createElement(Trans, null, "Reopen case")),
103
+ ' ',
104
+ React.createElement(Button, { key: "close-modal", variant: ButtonVariant.secondary, onClick: props.onClose, isDisabled: props.isUpdating, "data-tracking-id": "reopen-case-description-modal-cancel" },
105
+ React.createElement(Trans, null, "Cancel"))))));
96
106
  }
@@ -1,4 +1,4 @@
1
- import { Button, Modal, ModalVariant } from '@patternfly/react-core';
1
+ import { Button, Modal, ModalBody, ModalFooter, ModalHeader, ModalVariant } from '@patternfly/react-core';
2
2
  import DownloadIcon from '@patternfly/react-icons/dist/js/icons/download-icon';
3
3
  import { savePDF } from '@progress/kendo-react-pdf';
4
4
  import React, { useRef, useState } from 'react';
@@ -46,7 +46,7 @@ export function PDFContainer(props) {
46
46
  setValues(Object.assign(Object.assign({}, values), { [event.target.name]: event.target.value }));
47
47
  }
48
48
  function exportPDFButton(caseNumber) {
49
- return (React.createElement(Button, { title: "Export as PDF", variant: "link", isInline: true, className: isExportingPDF ? 'hide-in-pdf' : '', "data-tracking-id": "export-case-as-pdf", onClick: openModal(caseNumber), disabled: isExportingPDF, icon: React.createElement(DownloadIcon, null), iconPosition: "right" },
49
+ return (React.createElement(Button, { title: t('Export as PDF'), variant: "link", isInline: true, className: isExportingPDF ? 'hide-in-pdf' : '', "data-tracking-id": "export-case-as-pdf", onClick: openModal(caseNumber), disabled: isExportingPDF, icon: React.createElement(DownloadIcon, null), iconPosition: "right" },
50
50
  React.createElement(Trans, null, "Export")));
51
51
  }
52
52
  const exportToPDF = () => {
@@ -73,20 +73,24 @@ export function PDFContainer(props) {
73
73
  }, 500);
74
74
  };
75
75
  return (React.createElement(React.Fragment, null,
76
- React.createElement(Modal, { variant: ModalVariant.small, title: t('Export PDF'), description: t('Select a version to download.'), isOpen: showModal, onClose: handleModalToggle, actions: [
76
+ React.createElement(Modal, { variant: ModalVariant.small, title: t('Export PDF'), isOpen: showModal, onClose: handleModalToggle },
77
+ React.createElement(ModalHeader, null,
78
+ React.createElement("h2", { className: "pf-v6-u-m-0" }, t('Export PDF'))),
79
+ React.createElement(ModalBody, null,
80
+ React.createElement("p", { className: "pf-v6-u-mb-md pf-v6-u-text-color-subtle" }, t('Select a version to download.')),
81
+ React.createElement("form", { action: "", onSubmit: handleFormConfirmAction },
82
+ React.createElement("fieldset", { className: "form-group radios", role: "radiogroup", "aria-labelledby": "", "data-role": "controlgroup" },
83
+ React.createElement("legend", { id: "group_label_1" },
84
+ React.createElement(Trans, null, "Case discussions:")),
85
+ React.createElement("label", { className: "radio-inline", htmlFor: "reduced" },
86
+ React.createElement("input", { type: "radio", id: "reduced", name: "pdfOption", value: "Reduced", "data-tracking-id": "export-case-as-pdf-no-discussion", checked: values.pdfOption === 'Reduced', required: true, onChange: handleChange }),
87
+ React.createElement(Trans, null, "No discussions")),
88
+ React.createElement("label", { className: "radio-inline", htmlFor: "original" },
89
+ React.createElement("input", { type: "radio", id: "original", name: "pdfOption", value: "Original", "data-tracking-id": "export-case-as-pdf-all-discussion", checked: values.pdfOption === 'Original', required: true, onChange: handleChange }),
90
+ React.createElement(Trans, null, "All"))))),
91
+ React.createElement(ModalFooter, null,
77
92
  React.createElement(Button, { key: "confirm", "data-tracking-id": "export-case-as-pdf-confirm", variant: "primary", onClick: handleButtonConfirmAction }, "Confirm"),
78
- React.createElement(Button, { key: "cancel", "data-tracking-id": "export-case-as-pdf-cancel", variant: "link", onClick: handleModalToggle }, "Cancel"),
79
- ] },
80
- React.createElement("form", { action: "", onSubmit: handleFormConfirmAction },
81
- React.createElement("fieldset", { className: "form-group radios", role: "radiogroup", "aria-labelledby": "", "data-role": "controlgroup" },
82
- React.createElement("legend", { id: "group_label_1" },
83
- React.createElement(Trans, null, "Case discussions:")),
84
- React.createElement("label", { className: "radio-inline", htmlFor: "reduced" },
85
- React.createElement("input", { type: "radio", id: "reduced", name: "pdfOption", value: "Reduced", "data-tracking-id": "export-case-as-pdf-no-discussion", checked: values.pdfOption === 'Reduced', required: true, onChange: handleChange }),
86
- React.createElement(Trans, null, "No discussions")),
87
- React.createElement("label", { className: "radio-inline", htmlFor: "original" },
88
- React.createElement("input", { type: "radio", id: "original", name: "pdfOption", value: "Original", "data-tracking-id": "export-case-as-pdf-all-discussion", checked: values.pdfOption === 'Original', required: true, onChange: handleChange }),
89
- React.createElement(Trans, null, "All"))))),
93
+ React.createElement(Button, { key: "cancel", "data-tracking-id": "export-case-as-pdf-cancel", variant: "link", onClick: handleModalToggle }, "Cancel"))),
90
94
  React.createElement(PDFContext.Provider, { value: { isExportingPDF, exportPDFButton, pdfOption: values.pdfOption } },
91
95
  React.createElement("section", { ref: pdfRef }, props.children))));
92
96
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ESSRemoteSession.d.ts","sourceRoot":"","sources":["../../../../../src/components/CaseEditView/RequestRemoteSession/ESSRemoteSession.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAmD,MAAM,OAAO,CAAC;AAKxE,UAAU,MAAM;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,OAAO,CAAC;IAClB,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC/B;AAED,eAAO,MAAM,gBAAgB,+EAuH3B,CAAC"}
1
+ {"version":3,"file":"ESSRemoteSession.d.ts","sourceRoot":"","sources":["../../../../../src/components/CaseEditView/RequestRemoteSession/ESSRemoteSession.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAmD,MAAM,OAAO,CAAC;AAKxE,UAAU,MAAM;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,OAAO,CAAC;IAClB,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC/B;AAED,eAAO,MAAM,gBAAgB,+EAwH3B,CAAC"}
@@ -1,4 +1,4 @@
1
- import { Button, List, ListItem, Popover, Tooltip } from '@patternfly/react-core';
1
+ import { Button, Card, CardBody, CardHeader, List, ListItem, Popover, Tooltip } from '@patternfly/react-core';
2
2
  import InfoCircleIcon from '@patternfly/react-icons/dist/js/icons/info-circle-icon';
3
3
  import LockIcon from '@patternfly/react-icons/dist/js/icons/lock-icon';
4
4
  import { GlobalMetadataStateContext, useCanEditCase } from '@rh-support/react-context';
@@ -22,12 +22,13 @@ export const ESSRemoteSession = forwardRef((props, ref) => {
22
22
  setOpenNewESSRemoteSessionModal((openNewESSRemoteSessionModal) => !openNewESSRemoteSessionModal);
23
23
  };
24
24
  // ESS RS Aside Section Body
25
- const ESSRemoteSessionSectionBody = (React.createElement("div", { className: "card card-white card-support escalations", ref: ref },
26
- React.createElement("h3", { className: "card-heading case-detail-panel-card-heading pf-v5-u-display-flex pf-v5-u-justify-content-space-between card-header-bg" },
27
- t('Remote session request'),
28
- React.createElement(Popover, { "aria-label": t('Remote Session Helper Info'), bodyContent: t('A remote session allows support engineers to view or access your computer to simplify collaboration and troubleshooting.'), footerContent: React.createElement("a", { href: "/articles/3566571", target: "_blank", rel: "noopener noreferrer", "aria-label": t('Read more about remote sessions') }, t('Read more about remote sessions')) },
29
- React.createElement(InfoCircleIcon, null))),
30
- React.createElement("div", { className: "card-body" },
25
+ const ESSRemoteSessionSectionBody = (React.createElement(Card, { className: "card-support escalations", ref: ref },
26
+ React.createElement(CardHeader, null,
27
+ React.createElement("h3", { className: "card-heading case-detail-panel-card-heading pf-v6-u-display-flex pf-v6-u-justify-content-space-between" },
28
+ t('Remote session request'),
29
+ React.createElement(Popover, { "aria-label": t('Remote Session Helper Info'), bodyContent: t('A remote session allows support engineers to view or access your computer to simplify collaboration and troubleshooting.'), footerContent: React.createElement("a", { href: "/articles/3566571", target: "_blank", rel: "noopener noreferrer", "aria-label": t('Read more about remote sessions') }, t('Read more about remote sessions')) },
30
+ React.createElement(InfoCircleIcon, null)))),
31
+ React.createElement(CardBody, null,
31
32
  isInternal && (React.createElement(React.Fragment, null,
32
33
  React.createElement("p", null,
33
34
  React.createElement(LockIcon, null),
@@ -43,7 +44,7 @@ export const ESSRemoteSession = forwardRef((props, ref) => {
43
44
  isExternal && (React.createElement(React.Fragment, null,
44
45
  React.createElement("p", null,
45
46
  React.createElement("strong", null, `${t('Red Hat may agree to remotely access your systems if:')}`)),
46
- React.createElement(List, { className: "pf-v5-u-pl-xl" },
47
+ React.createElement(List, { className: "pf-v6-u-pl-xl" },
47
48
  React.createElement(ListItem, null, t('Such access will help diagnose and have greater understanding into the issue.')),
48
49
  React.createElement(ListItem, null, t('Agreed upon by both Red Hat and you, the end user'))),
49
50
  React.createElement("p", { className: "rrs-light-grey-text" }, t('Red Hat will add a comment to your case to schedule your remote session.')),
@@ -1 +1 @@
1
- {"version":3,"file":"ESSRemoteSessionModal.d.ts","sourceRoot":"","sources":["../../../../../src/components/CaseEditView/RequestRemoteSession/ESSRemoteSessionModal.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AACxD,OAAO,KAAmB,MAAM,OAAO,CAAC;AAgBxC,UAAU,MAAM;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,OAAO,CAAC;IACd,kBAAkB,EAAE,mBAAmB,CAAC,QAAQ,CAAC,CAAC;IAClD,QAAQ,EAAE,OAAO,CAAC;IAClB,sBAAsB,EAAE,OAAO,CAAC;CACnC;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,qBAuKlD"}
1
+ {"version":3,"file":"ESSRemoteSessionModal.d.ts","sourceRoot":"","sources":["../../../../../src/components/CaseEditView/RequestRemoteSession/ESSRemoteSessionModal.tsx"],"names":[],"mappings":"AAcA,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AACxD,OAAO,KAAmB,MAAM,OAAO,CAAC;AAgBxC,UAAU,MAAM;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,OAAO,CAAC;IACd,kBAAkB,EAAE,mBAAmB,CAAC,QAAQ,CAAC,CAAC;IAClD,QAAQ,EAAE,OAAO,CAAC;IAClB,sBAAsB,EAAE,OAAO,CAAC;CACnC;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,qBAsKlD"}
@@ -8,7 +8,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
8
8
  });
9
9
  };
10
10
  import { publicApi } from '@cee-eng/hydrajs';
11
- import { Button, ButtonVariant, Icon, Modal, ModalVariant, Title, TitleSizes } from '@patternfly/react-core';
11
+ import { Button, ButtonVariant, Icon, Modal, ModalFooter, ModalHeader, ModalVariant, Title, TitleSizes, } from '@patternfly/react-core';
12
12
  import CheckCircleIcon from '@patternfly/react-icons/dist/js/icons/check-circle-icon';
13
13
  import { ToastNotification, useFetch } from '@rh-support/components';
14
14
  import React, { useState } from 'react';
@@ -79,31 +79,28 @@ export function ESSRemoteSessionModal(props) {
79
79
  };
80
80
  // To check and if Request remote session button is loading
81
81
  const isAgreeLoading = agreeLoading || isPostingComment;
82
- // ESS RS Modal Actions
83
- const modalActions = [
84
- React.createElement(Button, { key: "submit", "aria-label": t('Request remote session'), variant: ButtonVariant.primary, onClick: onSubmit, "data-tracking-id": "ess-request-remote-session", isLoading: isAgreeLoading }, t('Request remote session')),
85
- React.createElement(Button, { key: "cancel", variant: "link", onClick: props.onClose }, t('Cancel')),
86
- ];
87
- const acceptedModalActions = [
88
- React.createElement(Button, { key: "cancel", variant: ButtonVariant.primary, onClick: props.onClose },
89
- React.createElement(Trans, null, "Close")),
90
- ];
91
82
  // Body of ESS Modal
92
83
  const ESSRemoteSessionModalBody = () => {
93
84
  return (React.createElement(React.Fragment, null,
94
- React.createElement("p", { className: "pf-v5-u-mt-xs" },
85
+ React.createElement("p", { className: "pf-v6-u-mt-xs" },
95
86
  React.createElement(Trans, null, "To troubleshoot your problem, Red Hat support accesses your network or systems remotely."))));
96
87
  };
97
88
  const RequestedESSRemoteSessionModalBody = () => {
98
89
  return (React.createElement(React.Fragment, null,
99
- React.createElement("p", { className: "pf-v5-u-mt-xs" },
90
+ React.createElement("p", { className: "pf-v6-u-mt-xs" },
100
91
  React.createElement(Trans, null, "Red Hat will add a comment to your case to schedule your remote session."))));
101
92
  };
102
93
  const essModalHeader = props.screenSessionRequested ? (React.createElement(React.Fragment, null,
103
- React.createElement(Title, { className: "pf-v5-u-mb-xs", id: "modal-custom-header-label", headingLevel: "h1", size: TitleSizes['2xl'] },
94
+ React.createElement(Title, { className: "pf-v6-u-mb-xs", id: "modal-custom-header-label", headingLevel: "h1", size: TitleSizes['2xl'] },
104
95
  React.createElement(Icon, { size: "lg" },
105
- React.createElement(CheckCircleIcon, { color: "#3E8635", className: "pf-v5-u-mr-md" })),
96
+ React.createElement(CheckCircleIcon, { color: "#3E8635", className: "pf-v6-u-mr-md" })),
106
97
  t('Remote session has been requested')))) : (React.createElement(React.Fragment, null,
107
- React.createElement(Title, { className: "pf-v5-u-mb-xs", id: "modal-custom-header-label", headingLevel: "h1", size: TitleSizes['2xl'] }, t('Request a remote session?'))));
108
- return (React.createElement(Modal, { variant: ModalVariant.small, id: "remote-session-agreement-modal", "aria-label": props.screenSessionRequested ? t('Remote session has been requested') : t('Request a remote session?'), header: essModalHeader, isOpen: props.show, onClose: onCancel, actions: props.screenSessionRequested ? acceptedModalActions : modalActions }, props.screenSessionRequested ? RequestedESSRemoteSessionModalBody() : ESSRemoteSessionModalBody()));
98
+ React.createElement(Title, { className: "pf-v6-u-mb-xs", id: "modal-custom-header-label", headingLevel: "h1", size: TitleSizes['2xl'] }, t('Request a remote session?'))));
99
+ return (React.createElement(Modal, { variant: ModalVariant.small, id: "remote-session-agreement-modal", "aria-label": props.screenSessionRequested ? t('Remote session has been requested') : t('Request a remote session?'), isOpen: props.show, onClose: onCancel },
100
+ React.createElement(ModalHeader, null, essModalHeader),
101
+ props.screenSessionRequested ? RequestedESSRemoteSessionModalBody() : ESSRemoteSessionModalBody(),
102
+ React.createElement(ModalFooter, null, props.screenSessionRequested ? (React.createElement(Button, { key: "cancel", variant: ButtonVariant.primary, onClick: props.onClose },
103
+ React.createElement(Trans, null, "Close"))) : (React.createElement(React.Fragment, null,
104
+ React.createElement(Button, { key: "submit", "aria-label": t('Request remote session'), variant: ButtonVariant.primary, onClick: onSubmit, "data-tracking-id": "ess-request-remote-session", isLoading: isAgreeLoading }, t('Request remote session')),
105
+ React.createElement(Button, { key: "cancel", variant: "link", onClick: props.onClose }, t('Cancel')))))));
109
106
  }
@@ -1 +1 @@
1
- {"version":3,"file":"NewEssTermsModal.d.ts","sourceRoot":"","sources":["../../../../../src/components/CaseEditView/RequestRemoteSession/NewEssTermsModal.tsx"],"names":[],"mappings":"AAOA,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AAExD,OAAO,KAA8B,MAAM,OAAO,CAAC;AAYnD,UAAU,MAAM;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,OAAO,CAAC;IACd,kBAAkB,EAAE,mBAAmB,CAAC,QAAQ,CAAC,CAAC;IAClD,QAAQ,EAAE,OAAO,CAAC;CACrB;AAiBD,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,qBA6W7C"}
1
+ {"version":3,"file":"NewEssTermsModal.d.ts","sourceRoot":"","sources":["../../../../../src/components/CaseEditView/RequestRemoteSession/NewEssTermsModal.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AACxD,OAAO,KAA8B,MAAM,OAAO,CAAC;AAYnD,UAAU,MAAM;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,OAAO,CAAC;IACd,kBAAkB,EAAE,mBAAmB,CAAC,QAAQ,CAAC,CAAC;IAClD,QAAQ,EAAE,OAAO,CAAC;CACrB;AAiBD,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,qBA4P7C"}