@rh-support/troubleshoot 2.1.18 → 2.1.20

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 (41) hide show
  1. package/lib/esm/components/CaseEditView/CaseOverview/CaseOwnerInfo.d.ts.map +1 -1
  2. package/lib/esm/components/CaseEditView/CaseOverview/CaseOwnerInfo.js +2 -1
  3. package/lib/esm/components/CaseEditView/CaseOverview/index.d.ts.map +1 -1
  4. package/lib/esm/components/CaseEditView/CaseOverview/index.js +8 -3
  5. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CaseDetailsManagement.d.ts.map +1 -1
  6. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CaseDetailsManagement.js +2 -0
  7. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CaseHostname.d.ts.map +1 -1
  8. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CaseHostname.js +2 -1
  9. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CasePhoneNumberSev1ConfirmAlert.d.ts +9 -0
  10. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CasePhoneNumberSev1ConfirmAlert.d.ts.map +1 -0
  11. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CasePhoneNumberSev1ConfirmAlert.js +69 -0
  12. package/lib/esm/components/CaseInformation/ContactPhoneNumberPopOver.d.ts.map +1 -1
  13. package/lib/esm/components/CaseInformation/ContactPhoneNumberPopOver.js +2 -1
  14. package/lib/esm/components/CaseInformation/FileDiag.d.ts +5 -1
  15. package/lib/esm/components/CaseInformation/FileDiag.d.ts.map +1 -1
  16. package/lib/esm/components/CaseInformation/FileDiag.js +2 -2
  17. package/lib/esm/components/CaseInformation/Severity.d.ts.map +1 -1
  18. package/lib/esm/components/CaseInformation/Severity.js +2 -1
  19. package/lib/esm/components/CaseInformation/SupportLevel.d.ts.map +1 -1
  20. package/lib/esm/components/CaseInformation/SupportLevel.js +2 -1
  21. package/lib/esm/components/CaseManagement/Cep.d.ts.map +1 -1
  22. package/lib/esm/components/CaseManagement/Cep.js +3 -3
  23. package/lib/esm/components/Recommendations/CriticalSolutionsToast.d.ts.map +1 -1
  24. package/lib/esm/components/Recommendations/CriticalSolutionsToast.js +5 -2
  25. package/lib/esm/components/Recommendations/RecommendationFeedbackModal.js +1 -1
  26. package/lib/esm/components/Recommendations/RulesModal.d.ts.map +1 -1
  27. package/lib/esm/components/Recommendations/RulesModal.js +25 -9
  28. package/lib/esm/components/TroubleshootSection/TroubleshootSection.d.ts.map +1 -1
  29. package/lib/esm/components/TroubleshootSection/TroubleshootSection.js +16 -11
  30. package/lib/esm/components/shared/fileUpload/FileLister.d.ts.map +1 -1
  31. package/lib/esm/components/shared/fileUpload/FileLister.js +2 -1
  32. package/lib/esm/components/wizardLayout/WizardAside.js +1 -1
  33. package/lib/esm/components/wizardLayout/WizardMain.js +1 -1
  34. package/lib/esm/components/wizardLayout/WizardNavigation.d.ts.map +1 -1
  35. package/lib/esm/components/wizardLayout/WizardNavigation.js +50 -4
  36. package/lib/esm/reducers/CaseConstNTypes.d.ts +1 -0
  37. package/lib/esm/reducers/CaseConstNTypes.d.ts.map +1 -1
  38. package/lib/esm/reducers/CaseConstNTypes.js +1 -0
  39. package/lib/esm/scss/_main.scss +21 -0
  40. package/lib/esm/scss/_pf4-overrides.scss +24 -1
  41. package/package.json +4 -4
@@ -1 +1 @@
1
- {"version":3,"file":"CaseOwnerInfo.d.ts","sourceRoot":"","sources":["../../../../../src/components/CaseEditView/CaseOverview/CaseOwnerInfo.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,qCAAqC,CAAC;AAG5D,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAI/D,UAAU,MAAM;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,gBAAgB,EAAE,mBAAmB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;CACzD;AAED,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,KAAK,EAAE,MAAM,eA+DlD"}
1
+ {"version":3,"file":"CaseOwnerInfo.d.ts","sourceRoot":"","sources":["../../../../../src/components/CaseEditView/CaseOverview/CaseOwnerInfo.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,qCAAqC,CAAC;AAI5D,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAI/D,UAAU,MAAM;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,gBAAgB,EAAE,mBAAmB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;CACzD;AAED,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,KAAK,EAAE,MAAM,eA+DlD"}
@@ -1,4 +1,5 @@
1
1
  import { Tooltip, TooltipPosition } from '@patternfly/react-core';
2
+ import QuestionCircleIcon from '@patternfly/react-icons/dist/js/icons/question-circle-icon';
2
3
  import { LoadingIndicator } from '@rh-support/components';
3
4
  import React from 'react';
4
5
  import { Trans } from 'react-i18next';
@@ -43,5 +44,5 @@ export default function CaseOwnerInfo(props) {
43
44
  React.createElement(Trans, null, "Office location")),
44
45
  ": ",
45
46
  props.caseDetailsHydra.data.caseOwner.officeLocation)) },
46
- React.createElement("i", { "aria-label": "Support Level info", className: "fa fa-question-circle" })))))));
47
+ React.createElement(QuestionCircleIcon, { className: "pf-u-ml-xs icon-size", "aria-label": "Support Level Info" })))))));
47
48
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/CaseEditView/CaseOverview/index.tsx"],"names":[],"mappings":"AAkBA,OAAO,KAA8D,MAAM,OAAO,CAAC;AA6BnF,UAAU,MAAM;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,KAAK,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAC;CACnD;AAED,MAAM,CAAC,OAAO,UAAU,YAAY,CAAC,KAAK,EAAE,MAAM,eA0ejD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/CaseEditView/CaseOverview/index.tsx"],"names":[],"mappings":"AA0BA,OAAO,KAA8D,MAAM,OAAO,CAAC;AA8BnF,UAAU,MAAM;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,KAAK,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAC;CACnD;AAED,MAAM,CAAC,OAAO,UAAU,YAAY,CAAC,KAAK,EAAE,MAAM,eA8ejD"}
@@ -7,7 +7,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
7
7
  step((generator = generator.apply(thisArg, _arguments || [])).next());
8
8
  });
9
9
  };
10
- import { Alert, AlertVariant, Button, ButtonVariant, ExpandableSection, Label } from '@patternfly/react-core';
10
+ import { Alert, AlertVariant, Button, ButtonVariant, ExpandableSection, Label, ModalVariant, } from '@patternfly/react-core';
11
11
  import { ToastNotification, useConfirmation } from '@rh-support/components';
12
12
  import { CloseCaseModal, fetchCaseSeverities, fetchCaseTypes, GlobalMetadataDispatchContext, GlobalMetadataStateContext, useCanEditCase, } from '@rh-support/react-context';
13
13
  import { AbilityContext, CaseDetailsFields, resourceActions, resources } from '@rh-support/user-permissions';
@@ -27,6 +27,7 @@ import { ReopenCaseModal } from '../ConfirmationModals/ReopenCaseModal';
27
27
  import { PDFContext } from '../PDFContainer';
28
28
  import { CaseInformation } from '../Tabs/CaseDetails/CaseInformation';
29
29
  import { CaseContactPhoneNumberAlert } from '../Tabs/CaseDetails/CasePhoneNumberConfirmAlert';
30
+ import { CasePhoneNumberSev1ConfirmAlert } from '../Tabs/CaseDetails/CasePhoneNumberSev1ConfirmAlert';
30
31
  import Summary from '../Tabs/CaseDetails/Summary';
31
32
  import CaseOwnerInfo from './CaseOwnerInfo';
32
33
  import CaseStatus from './CaseStatus';
@@ -172,8 +173,11 @@ export default function CaseOverview(props) {
172
173
  else {
173
174
  yield confirm({
174
175
  catchOnCancel: true,
175
- title: t(`Status has been changed`),
176
- description: t('Are you sure you want to change this case status to {{newStatus}}?', { newStatus }),
176
+ title: t(`Update the status of the case?`),
177
+ description: t('Are you sure you want to change the case status to {{newStatus}}?', { newStatus }),
178
+ confirmText: t('Yes, confirm'),
179
+ cancelText: t('No, cancel'),
180
+ modalVariant: ModalVariant.small,
177
181
  });
178
182
  updateStatusState(newStatus);
179
183
  }
@@ -229,6 +233,7 @@ export default function CaseOverview(props) {
229
233
  React.createElement("p", { className: "pf-u-mb-sm" },
230
234
  React.createElement(Trans, null, "The customer has received two warnings regarding inactivity. This case will be closed soon if we don't receive any input."))) })))),
231
235
  React.createElement(CaseContactPhoneNumberAlert, { isReview: true, tabRef: props.tabsRef }),
236
+ React.createElement(CasePhoneNumberSev1ConfirmAlert, { isReview: true, tabRef: props.tabsRef }),
232
237
  React.createElement("header", null,
233
238
  React.createElement("h2", { className: "case-ID" },
234
239
  React.createElement(Trans, null, "Case"),
@@ -1 +1 @@
1
- {"version":3,"file":"CaseDetailsManagement.d.ts","sourceRoot":"","sources":["../../../../../../src/components/CaseEditView/Tabs/CaseDetails/CaseDetailsManagement.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAG5D,OAAO,KAA+B,MAAM,OAAO,CAAC;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAiBnD,UAAU,MAAO,SAAQ,gBAAgB;IACrC,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,mBAAmB,CAAC;IAChC,MAAM,EAAE,KAAK,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAC;CAClD;AAED,MAAM,CAAC,OAAO,UAAU,qBAAqB,CAAC,KAAK,EAAE,MAAM,eA+D1D"}
1
+ {"version":3,"file":"CaseDetailsManagement.d.ts","sourceRoot":"","sources":["../../../../../../src/components/CaseEditView/Tabs/CaseDetails/CaseDetailsManagement.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAG5D,OAAO,KAA+B,MAAM,OAAO,CAAC;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAkBnD,UAAU,MAAO,SAAQ,gBAAgB;IACrC,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,mBAAmB,CAAC;IAChC,MAAM,EAAE,KAAK,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAC;CAClD;AAED,MAAM,CAAC,OAAO,UAAU,qBAAqB,CAAC,KAAK,EAAE,MAAM,eAgE1D"}
@@ -14,6 +14,7 @@ import { ShareWithPartner } from '../../ShareCase/PartnerShare';
14
14
  import { CaseContactPhoneNumber } from './CaseContactPhoneNumber';
15
15
  import CaseInternalStatus from './CaseInternalStatus';
16
16
  import { CaseContactPhoneNumberAlert } from './CasePhoneNumberConfirmAlert';
17
+ import { CasePhoneNumberSev1ConfirmAlert } from './CasePhoneNumberSev1ConfirmAlert';
17
18
  import CaseReferenceNumber from './CaseReferenceNumber';
18
19
  import CaseSbrGroups from './CaseSbrGroups';
19
20
  export default function CaseDetailsManagement(props) {
@@ -38,6 +39,7 @@ export default function CaseDetailsManagement(props) {
38
39
  React.createElement(FlexItem, { flex: { default: 'flex_1' } },
39
40
  React.createElement(CaseContactPhoneNumber, null))),
40
41
  React.createElement(CaseContactPhoneNumberAlert, { isConfirm: true }),
42
+ React.createElement(CasePhoneNumberSev1ConfirmAlert, { isConfirm: true }),
41
43
  canSeeInternalStatus && React.createElement(CaseInternalStatus, null),
42
44
  canSeeSBRGroups && React.createElement(CaseSbrGroups, null),
43
45
  React.createElement(CaseGroup, null),
@@ -1 +1 @@
1
- {"version":3,"file":"CaseHostname.d.ts","sourceRoot":"","sources":["../../../../../../src/components/CaseEditView/Tabs/CaseDetails/CaseHostname.tsx"],"names":[],"mappings":"AAKA,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAY5D,UAAU,MAAO,SAAQ,gBAAgB;IACrC,cAAc,EAAE,OAAO,CAAC;CAC3B;AAMD,iBAAS,YAAY,CAAC,KAAK,EAAE,MAAM,eAqKlC;kBArKQ,YAAY;;;AAwKrB,OAAO,EAAE,YAAY,EAAE,CAAC"}
1
+ {"version":3,"file":"CaseHostname.d.ts","sourceRoot":"","sources":["../../../../../../src/components/CaseEditView/Tabs/CaseDetails/CaseHostname.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAa5D,UAAU,MAAO,SAAQ,gBAAgB;IACrC,cAAc,EAAE,OAAO,CAAC;CAC3B;AAMD,iBAAS,YAAY,CAAC,KAAK,EAAE,MAAM,eAqKlC;kBArKQ,YAAY;;;AAwKrB,OAAO,EAAE,YAAY,EAAE,CAAC"}
@@ -9,6 +9,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
9
9
  };
10
10
  import { accounts } from '@cee-eng/hydrajs';
11
11
  import { Popover, PopoverPosition, Spinner, Switch } from '@patternfly/react-core';
12
+ import QuestionCircleIcon from '@patternfly/react-icons/dist/js/icons/question-circle-icon';
12
13
  import { InlineEdit, LoadingIndicator, ToastNotification, useFetch, ValueChangedIcon } from '@rh-support/components';
13
14
  import { GlobalMetadataStateContext, useCanEditCase } from '@rh-support/react-context';
14
15
  import { ability, CaseListFields, resourceActions, resources } from '@rh-support/user-permissions';
@@ -108,7 +109,7 @@ function CaseHostname(props) {
108
109
  React.createElement(InlineEdit, { labelProps: { htmlFor: 'case-details-hostname' }, formClassName: props.className || '', labelContent: React.createElement(React.Fragment, null,
109
110
  React.createElement(Trans, null, "Hostname"),
110
111
  React.createElement(ValueChangedIcon, { afterLocalChange: afterLocalChange, isLocalChange: localHostnameChange, value: hostname, getTooltipContent: getChangedValueTooltip(() => CaseValuesToWatch.hostname) })), helperContent: React.createElement(Popover, { "aria-label": "Hostname Info", position: PopoverPosition.auto, bodyContent: hostNameVisibilityContent, closeBtnAriaLabel: "Close", headerContent: 'Share hostname?', onShow: () => userOriginalHostnameValue() },
111
- React.createElement("i", { "aria-label": "Hostname Info", className: "m-l-1 fa fa-question-circle" })), allowInlineEdit: props.inlineEditable, content: hostname, saveDisabled: hostnameState === hostname || isHostnameUpdating || lengthError, onSave: onSave, onCancel: onCancel, initialIsEditing: false, loadingIndicator: isHostnameUpdating ? React.createElement(LoadingIndicator, { show: isHostnameUpdating, isInline: true }) : undefined },
112
+ React.createElement(QuestionCircleIcon, { className: "pf-u-ml-xs icon-size", "aria-label": "Hostname Info" })), allowInlineEdit: props.inlineEditable, content: hostname, saveDisabled: hostnameState === hostname || isHostnameUpdating || lengthError, onSave: onSave, onCancel: onCancel, initialIsEditing: false, loadingIndicator: isHostnameUpdating ? React.createElement(LoadingIndicator, { show: isHostnameUpdating, isInline: true }) : undefined },
112
113
  React.createElement("input", { type: "text", id: "case-details-hostname", className: `form-control${lengthError ? ' form-invalid' : ''}`, name: "case-details-hostname", value: hostnameState, onChange: onHostnameChange, disabled: isHostnameUpdating, "data-tracking-id": "case-details-hostname", "aria-invalid": lengthError })),
113
114
  lengthError && (React.createElement("div", { className: "pull-top" },
114
115
  React.createElement("p", { className: "form-instructions form-invalid" },
@@ -0,0 +1,9 @@
1
+ import React from 'react';
2
+ interface IProps {
3
+ isReview?: boolean;
4
+ isConfirm?: boolean;
5
+ tabRef?: React.MutableRefObject<HTMLDivElement>;
6
+ }
7
+ export declare function CasePhoneNumberSev1ConfirmAlert(props: IProps): JSX.Element;
8
+ export {};
9
+ //# sourceMappingURL=CasePhoneNumberSev1ConfirmAlert.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CasePhoneNumberSev1ConfirmAlert.d.ts","sourceRoot":"","sources":["../../../../../../src/components/CaseEditView/Tabs/CaseDetails/CasePhoneNumberSev1ConfirmAlert.tsx"],"names":[],"mappings":"AAMA,OAAO,KAA+B,MAAM,OAAO,CAAC;AASpD,UAAU,MAAM;IACZ,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,MAAM,CAAC,EAAE,KAAK,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAC;CACnD;AAMD,wBAAgB,+BAA+B,CAAC,KAAK,EAAE,MAAM,eAmG5D"}
@@ -0,0 +1,69 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ import { Alert, AlertVariant, Button, ButtonVariant } from '@patternfly/react-core';
11
+ import { ToastNotification } from '@rh-support/components';
12
+ import { GlobalMetadataStateContext } from '@rh-support/react-context';
13
+ import { scrollIntoView } from '@rh-support/utils';
14
+ import isEqual from 'lodash/isEqual';
15
+ import React, { useContext, useState } from 'react';
16
+ import { Trans, useTranslation } from 'react-i18next';
17
+ import { Link } from 'react-router-dom';
18
+ import { useCaseDispatch, useCaseSelector } from '../../../../context/CaseContext';
19
+ import { useCaseUpdateErrorMessage } from '../../../../hooks/useCaseUpdateErrorMessage';
20
+ import { updateCaseDetails } from '../../../../reducers/CaseReducer';
21
+ /*
22
+ On case detail page when case owner changes the sevirity to sev1, this alert will be displayed
23
+ // what happens when partner changes ???
24
+ */
25
+ export function CasePhoneNumberSev1ConfirmAlert(props) {
26
+ const { globalMetadataState: { loggedInUser }, } = useContext(GlobalMetadataStateContext);
27
+ const [isCaseUpdating, setCasUpdating] = useState(false);
28
+ const { caseNumber, suppliedPhoneNumberVerified, contactSSOName, severity } = useCaseSelector((state) => ({
29
+ caseNumber: state.caseDetails.caseNumber,
30
+ suppliedPhoneNumberVerified: state.caseDetails.suppliedPhoneNumberVerified,
31
+ contactSSOName: state.caseDetails.contactSSOName,
32
+ severity: state.caseDetails.severity,
33
+ }), isEqual);
34
+ const { t } = useTranslation();
35
+ const caseDispatch = useCaseDispatch();
36
+ const caseUpdateError = useCaseUpdateErrorMessage();
37
+ const onCaseDetailsChange = (caseDetails) => __awaiter(this, void 0, void 0, function* () {
38
+ setCasUpdating(true);
39
+ try {
40
+ yield updateCaseDetails(caseDispatch, caseNumber, caseDetails);
41
+ setCasUpdating(false);
42
+ ToastNotification.addSuccessMessage(t(`Phone number has been successfully confirmed`));
43
+ }
44
+ catch (e) {
45
+ setCasUpdating(false);
46
+ caseUpdateError.showError(e, t(`Phone number failed to be confirmed`));
47
+ }
48
+ });
49
+ const goToPhoneField = () => {
50
+ scrollIntoView(props.tabRef);
51
+ };
52
+ const isPhoneNeedsConfirm = contactSSOName === loggedInUser.data.ssoUsername &&
53
+ severity === "1 (Urgent)" /* SEV_1 */ &&
54
+ suppliedPhoneNumberVerified === 'False';
55
+ if (!isPhoneNeedsConfirm)
56
+ return React.createElement(React.Fragment, null);
57
+ return (React.createElement(React.Fragment, null, props.isReview ? (React.createElement(Alert, { className: "pf-u-mb-md", isInline: true, variant: AlertVariant.warning, title: t('Review phone number'), actionLinks: [
58
+ React.createElement(Link, { replace: true, to: {
59
+ pathname: `/case/${caseNumber}/management`,
60
+ search: 'hello',
61
+ }, onClick: () => goToPhoneField(), "data-tracking-id": "case-contact-phone-number-review" },
62
+ React.createElement(Trans, null, "Review phone number")),
63
+ ] },
64
+ React.createElement(Trans, null, "This case severity is urgent. Please confirm the phone number we have on file is correct."))) : props.isConfirm ? (React.createElement(Alert, { isInline: true, className: "pf-u-mb-md", variant: AlertVariant.warning, title: t('Review phone number'), actionLinks: [
65
+ React.createElement(Button, { variant: ButtonVariant.link, isInline: true, onClick: () => onCaseDetailsChange({ suppliedPhoneNumberVerified: 'True' }), "data-tracking-id": "case-contact-phone-number-confirm", isLoading: isCaseUpdating, isDisabled: isCaseUpdating },
66
+ React.createElement(Trans, null, "Confirm phone number")),
67
+ ] },
68
+ React.createElement(Trans, null, "This case severity is urgent. Please confirm the phone number we have on file is correct."))) : (React.createElement(React.Fragment, null))));
69
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"ContactPhoneNumberPopOver.d.ts","sourceRoot":"","sources":["../../../../src/components/CaseInformation/ContactPhoneNumberPopOver.tsx"],"names":[],"mappings":"AAIA,wBAAgB,yBAAyB,gBA2BxC"}
1
+ {"version":3,"file":"ContactPhoneNumberPopOver.d.ts","sourceRoot":"","sources":["../../../../src/components/CaseInformation/ContactPhoneNumberPopOver.tsx"],"names":[],"mappings":"AAKA,wBAAgB,yBAAyB,gBA2BxC"}
@@ -1,4 +1,5 @@
1
1
  import { Popover, PopoverPosition } from '@patternfly/react-core';
2
+ import QuestionCircleIcon from '@patternfly/react-icons/dist/js/icons/question-circle-icon';
2
3
  import React from 'react';
3
4
  import { Trans } from 'react-i18next';
4
5
  export function ContactPhoneNumberPopOver() {
@@ -8,5 +9,5 @@ export function ContactPhoneNumberPopOver() {
8
9
  ' ',
9
10
  React.createElement("a", { href: "https://www.redhat.com/wapps/ugc/protected/personalInfo.html", "data-tracking-id": "case-contact-phone-number-account-details", target: "_blank", rel: "noopener noreferrer" }, "your account details"),
10
11
  ".")), closeBtnAriaLabel: "Close" },
11
- React.createElement("i", { "aria-label": "Support Severity Level info", className: "fa fa-question-circle" })));
12
+ React.createElement(QuestionCircleIcon, { className: "pf-u-ml-xs icon-size", "aria-label": "Contact Phone Number Info" })));
12
13
  }
@@ -1,2 +1,6 @@
1
- export declare function FileDiag(): JSX.Element;
1
+ interface IProps {
2
+ className?: string;
3
+ }
4
+ export declare function FileDiag(props: IProps): JSX.Element;
5
+ export {};
2
6
  //# sourceMappingURL=FileDiag.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"FileDiag.d.ts","sourceRoot":"","sources":["../../../../src/components/CaseInformation/FileDiag.tsx"],"names":[],"mappings":"AAYA,wBAAgB,QAAQ,gBAgCvB"}
1
+ {"version":3,"file":"FileDiag.d.ts","sourceRoot":"","sources":["../../../../src/components/CaseInformation/FileDiag.tsx"],"names":[],"mappings":"AAYA,UAAU,MAAM;IACZ,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,MAAM,eAiCrC"}
@@ -8,7 +8,7 @@ import { RulesStateContext } from '../../context/RulesContext';
8
8
  import { SessionRestoreStateContext } from '../../context/SessionRestoreContext';
9
9
  import FileEARule, { getValidAttachmentRules } from '../ImproveCase/FileEARule';
10
10
  import { WidgetFileUploader } from '../shared/fileUpload/WidgetFileUploader';
11
- export function FileDiag() {
11
+ export function FileDiag(props) {
12
12
  const { sessionRestore: { activeSessionId }, } = useContext(SessionRestoreStateContext);
13
13
  const canAddAttachments = ability.can(resourceActions.PATCH, resources.CASE_CREATE, CaseListFields.ATTACHMENTS);
14
14
  const { globalMetadataState: { loggedInUsersAccount }, } = useContext(GlobalMetadataStateContext);
@@ -19,5 +19,5 @@ export function FileDiag() {
19
19
  const isIdea = caseType === PreviousCaseTypes.FEATURE_ENHANCEMENT;
20
20
  if (!canAddAttachments)
21
21
  return null;
22
- return (React.createElement(WidgetFileUploader, { idToUploadTo: activeSessionId, isPrivate: false, needsAnalyzing: isIdea ? false : true, isSessionId: true, isSecureSupport: loggedInUsersAccount.data.secureSupport, autoUploadOnSelect: loggedInUsersAccount.data.secureSupport ? false : true, helperText: getValidAttachmentRules(rulesState.EARules.rules).length > 0 ? React.createElement(FileEARule, null) : null, isIdea: isIdea }));
22
+ return (React.createElement(WidgetFileUploader, { className: props.className, idToUploadTo: activeSessionId, isPrivate: false, needsAnalyzing: isIdea ? false : true, isSessionId: true, isSecureSupport: loggedInUsersAccount.data.secureSupport, autoUploadOnSelect: loggedInUsersAccount.data.secureSupport ? false : true, helperText: getValidAttachmentRules(rulesState.EARules.rules).length > 0 ? React.createElement(FileEARule, null) : null, isIdea: isIdea }));
23
23
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Severity.d.ts","sourceRoot":"","sources":["../../../../src/components/CaseInformation/Severity.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,yCAAyC,CAAC;AAKvE,OAAO,EAAE,gBAAgB,EAAW,MAAM,0BAA0B,CAAC;AAwBrE,UAAU,MAAO,SAAQ,gBAAgB;IACrC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,gBAAgB,CAAC,EAAE,CAAC,WAAW,EAAE,OAAO,CAAC,YAAY,CAAC,KAAK,IAAI,CAAC;IAChE,oBAAoB,EAAE,OAAO,CAAC;CACjC;AASD,MAAM,WAAW,gBAAgB;IAC7B,QAAQ,EAAE,OAAO,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,EAAE,MAAM,GAAG,GAAG,CAAC,OAAO,GAAG,GAAG,CAAC,OAAO,EAAE,CAAC;CACxD;AAED,iBAAS,QAAQ,CAAC,KAAK,EAAE,MAAM,eAqR9B;kBArRQ,QAAQ;;;AAuRjB,eAAe,QAAQ,CAAC"}
1
+ {"version":3,"file":"Severity.d.ts","sourceRoot":"","sources":["../../../../src/components/CaseInformation/Severity.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,yCAAyC,CAAC;AAMvE,OAAO,EAAE,gBAAgB,EAAW,MAAM,0BAA0B,CAAC;AAwBrE,UAAU,MAAO,SAAQ,gBAAgB;IACrC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,gBAAgB,CAAC,EAAE,CAAC,WAAW,EAAE,OAAO,CAAC,YAAY,CAAC,KAAK,IAAI,CAAC;IAChE,oBAAoB,EAAE,OAAO,CAAC;CACjC;AASD,MAAM,WAAW,gBAAgB;IAC7B,QAAQ,EAAE,OAAO,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,EAAE,MAAM,GAAG,GAAG,CAAC,OAAO,GAAG,GAAG,CAAC,OAAO,EAAE,CAAC;CACxD;AAED,iBAAS,QAAQ,CAAC,KAAK,EAAE,MAAM,eAqR9B;kBArRQ,QAAQ;;;AAuRjB,eAAe,QAAQ,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import { Popover, PopoverPosition, Tooltip, TooltipPosition } from '@patternfly/react-core';
2
+ import QuestionCircleIcon from '@patternfly/react-icons/dist/js/icons/question-circle-icon';
2
3
  import WarningTriangleIcon from '@patternfly/react-icons/dist/js/icons/warning-triangle-icon';
3
4
  import { Dropdown, ValueChangedIcon } from '@rh-support/components';
4
5
  import { GlobalMetadataStateContext } from '@rh-support/react-context';
@@ -159,7 +160,7 @@ function Severity(props) {
159
160
  ' ',
160
161
  React.createElement("a", { href: "/support/policy/severity", target: "_blank" },
161
162
  React.createElement(Trans, null, "Red Hat Support Severity Level Definitions"))), closeBtnAriaLabel: "Close" },
162
- React.createElement("i", { "aria-label": "Support Severity Level info", className: "fa fa-question-circle" }))),
163
+ React.createElement(QuestionCircleIcon, { className: "pf-u-ml-xs icon-size", "aria-label": "Support Severity Level Info" }))),
163
164
  "\u00A0",
164
165
  filteredSeverities.filter((s) => s.disabled).length !== 0 && (React.createElement(Tooltip, { position: TooltipPosition.top, content: React.createElement(Trans, null, "Only the enabled severity levels are supported for selected product and version.") },
165
166
  React.createElement(WarningTriangleIcon, { color: "#ec7a08", size: "sm", title: "Support Severity Level warning" }))),
@@ -1 +1 @@
1
- {"version":3,"file":"SupportLevel.d.ts","sourceRoot":"","sources":["../../../../src/components/CaseInformation/SupportLevel.tsx"],"names":[],"mappings":"AAUA,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAU5D,UAAU,MAAO,SAAQ,gBAAgB;CAAG;AAO5C,iBAAS,YAAY,CAAC,KAAK,EAAE,MAAM,eA4HlC;kBA5HQ,YAAY;;;AA8HrB,eAAe,YAAY,CAAC"}
1
+ {"version":3,"file":"SupportLevel.d.ts","sourceRoot":"","sources":["../../../../src/components/CaseInformation/SupportLevel.tsx"],"names":[],"mappings":"AAWA,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAU5D,UAAU,MAAO,SAAQ,gBAAgB;CAAG;AAO5C,iBAAS,YAAY,CAAC,KAAK,EAAE,MAAM,eA4HlC;kBA5HQ,YAAY;;;AA8HrB,eAAe,YAAY,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import { Popover, PopoverPosition, Select, SelectOption, SelectVariant, ValidatedOptions, } from '@patternfly/react-core';
2
+ import QuestionCircleIcon from '@patternfly/react-icons/dist/js/icons/question-circle-icon';
2
3
  import { GlobalMetadataStateContext } from '@rh-support/react-context';
3
4
  import { showFtsOnCaseViewEditPage, showFtsOnCreateCasePage } from '@rh-support/utils';
4
5
  import isEmpty from 'lodash/isEmpty';
@@ -81,7 +82,7 @@ function SupportLevel(props) {
81
82
  "Learn more about our",
82
83
  ' ',
83
84
  React.createElement("a", { href: "/support/offerings/production/sla", target: "_blank" }, "production support service level agreement"))), closeBtnAriaLabel: "Close" },
84
- React.createElement("i", { "aria-label": "Support Level info", className: "fa fa-question-circle" })),
85
+ React.createElement(QuestionCircleIcon, { className: "pf-u-ml-xs icon-size", "aria-label": "Support Level Info" })),
85
86
  React.createElement(Select, { variant: SelectVariant.single, "aria-label": t('Select Support Level'), onToggle: onToggle, onSelect: onEntitlementChange, selections: selectedSla, isOpen: isOpen, "aria-labelledby": 'get-support-supportLevel', isDisabled: ownersEntitlements.isError || isEmpty(ownersEntitlements.data), validated: isSupportLevelInValid ? ValidatedOptions.error : ValidatedOptions.default, "data-tracking-id": "get-support-supportLevel" }, getSlaList().map((sla, index) => (React.createElement(SelectOption, { key: index, value: sla })))),
86
87
  isEmpty(ownersEntitlements.data) && (React.createElement("p", { className: "form-instructions" }, ownersEntitlements.isError ? t('Error loading support levels') : t('No active subscriptions')))));
87
88
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Cep.d.ts","sourceRoot":"","sources":["../../../../src/components/CaseManagement/Cep.tsx"],"names":[],"mappings":"AAqCA,UAAU,MAAM;CAAG;AAEnB,wBAAgB,GAAG,CAAC,KAAK,EAAE,MAAM,eAkShC"}
1
+ {"version":3,"file":"Cep.d.ts","sourceRoot":"","sources":["../../../../src/components/CaseManagement/Cep.tsx"],"names":[],"mappings":"AAsCA,UAAU,MAAM;CAAG;AAEnB,wBAAgB,GAAG,CAAC,KAAK,EAAE,MAAM,eAkShC"}
@@ -8,6 +8,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
8
8
  });
9
9
  };
10
10
  import { Button, Form, FormGroup, Modal, ModalVariant, Popover, PopoverPosition, TextArea, TextInput, ValidatedOptions, } from '@patternfly/react-core';
11
+ import QuestionCircleIcon from '@patternfly/react-icons/dist/js/icons/question-circle-icon';
11
12
  import { LoadingIndicator, ToastNotification, useConfirmation } from '@rh-support/components';
12
13
  import { GlobalMetadataStateContext, useCanEditCase } from '@rh-support/react-context';
13
14
  import { AbilityContext, CaseListFields, resourceActions, resources } from '@rh-support/user-permissions';
@@ -135,12 +136,11 @@ export function Cep(props) {
135
136
  return React.createElement(React.Fragment, null);
136
137
  }
137
138
  return (React.createElement("div", { className: "form-group push-top" },
138
- React.createElement("input", { type: "checkbox", id: "get-support-cep", name: "get-support-cep", checked: cep, onChange: onCepChange, "data-tracking-id": "get-support-cep" }),
139
+ React.createElement("input", { type: "checkbox", id: "get-support-cep", name: "get-support-cep", checked: isEqual(cep, undefined) ? false : cep, onChange: onCepChange, "data-tracking-id": "get-support-cep" }),
139
140
  React.createElement("label", { htmlFor: "get-support-cep" },
140
141
  React.createElement(Trans, null, "Consultant has been engaged")),
141
142
  React.createElement(Popover, { "aria-label": "CEP info", position: PopoverPosition.top, bodyContent: React.createElement(Trans, null, "Used by consultants to indicate that a consulting engagement is in progress and the issue requires increased attention from support resources."), closeBtnAriaLabel: "Close" },
142
- React.createElement("i", { "aria-label": "CEP info", className: "fa fa-question-circle" })),
143
- ' ',
143
+ React.createElement(QuestionCircleIcon, { className: "pf-u-ml-xs icon-size", "aria-label": "CEP Info" })),
144
144
  React.createElement(LoadingIndicator, { show: isCaseUpdating && isPostingCep, isInline: true, size: "sm" }),
145
145
  React.createElement(Modal, { id: "cep-details-modal", title: t('Consultant engagement is in progress'), "aria-describedby": "cep-modal-description", isOpen: isCepModalOpen, showClose: true, variant: ModalVariant.large, onClose: onCancel, actions: [
146
146
  React.createElement(Button, { key: "confirm", variant: "primary", className: "btn btn-app btn-primary", onClick: onSubmit, isDisabled: saveButtonIsClicked && isFormInvalid, "data-tracking-id": "cep-details-save" },
@@ -1 +1 @@
1
- {"version":3,"file":"CriticalSolutionsToast.d.ts","sourceRoot":"","sources":["../../../../src/components/Recommendations/CriticalSolutionsToast.tsx"],"names":[],"mappings":"AAGA,OAAc,EAAE,EAAE,EAAmC,MAAM,OAAO,CAAC;AAMnE,UAAU,MAAM;IACZ,UAAU,EAAE,MAAM,IAAI,CAAC;CAC1B;AAED,QAAA,MAAM,sBAAsB,EAAE,EAAE,CAAC,MAAM,CA0DtC,CAAC;AAEF,eAAe,sBAAsB,CAAC"}
1
+ {"version":3,"file":"CriticalSolutionsToast.d.ts","sourceRoot":"","sources":["../../../../src/components/Recommendations/CriticalSolutionsToast.tsx"],"names":[],"mappings":"AAGA,OAAc,EAAE,EAAE,EAAmC,MAAM,OAAO,CAAC;AAOnE,UAAU,MAAM;IACZ,UAAU,EAAE,MAAM,IAAI,CAAC;CAC1B;AAED,QAAA,MAAM,sBAAsB,EAAE,EAAE,CAAC,MAAM,CA4DtC,CAAC;AAEF,eAAe,sBAAsB,CAAC"}
@@ -3,14 +3,16 @@ import { PreviousCaseTypes } from '@rh-support/utils';
3
3
  import isEqual from 'lodash/isEqual';
4
4
  import React, { useContext, useEffect, useState } from 'react';
5
5
  import { Trans, useTranslation } from 'react-i18next';
6
- import { useCaseSelector } from '../../context/CaseContext';
6
+ import { useCaseDispatch, useCaseSelector } from '../../context/CaseContext';
7
7
  import { RulesDispatchContext, RulesStateContext } from '../../context/RulesContext';
8
+ import { setCaseState } from '../../reducers/CaseReducer';
8
9
  import { RulesReducerConstants } from '../../reducers/RulesReducer';
9
10
  const CriticalSolutionsToast = (props) => {
10
11
  const { t } = useTranslation();
11
12
  const [showNotification, setShowNotification] = useState(false);
12
13
  const { rulesState } = useContext(RulesStateContext);
13
14
  const rulesDispatch = useContext(RulesDispatchContext);
15
+ const caseDispatch = useCaseDispatch();
14
16
  const { caseType } = useCaseSelector((state) => ({
15
17
  caseType: state.caseDetails.caseType,
16
18
  }), isEqual);
@@ -35,13 +37,14 @@ const CriticalSolutionsToast = (props) => {
35
37
  });
36
38
  };
37
39
  const viewCriticalSolution = () => {
40
+ setCaseState(caseDispatch, { isFileRecommendationsTriggered: true });
38
41
  onClose();
39
42
  setEAModalVisibility(true);
40
43
  props.userClosed();
41
44
  };
42
45
  if (!showNotification && !rulesState.triggerRuleNotification)
43
46
  return null;
44
- return (React.createElement(Alert, { isLiveRegion: true, variant: "success", title: t('File recommendations are ready to view'), "data-tracking-id": "toast-view-crit-sol", actionLinks: React.createElement(Button, { isInline: true, variant: "link", onClick: viewCriticalSolution },
47
+ return (React.createElement(Alert, { isLiveRegion: true, variant: "success", title: t('File recommendations are ready to view'), "data-tracking-id": "toast-view-critical-solutions", actionLinks: React.createElement(Button, { isInline: true, variant: "link", onClick: viewCriticalSolution },
45
48
  React.createElement(Trans, null, "Troubleshooting specific for your uploaded files.")), actionClose: React.createElement(AlertActionCloseButton, { variantLabel: "success alert", onClose: onClose }), timeout: caseType !== PreviousCaseTypes.FEATURE_ENHANCEMENT }));
46
49
  };
47
50
  export default CriticalSolutionsToast;
@@ -7,7 +7,7 @@ export function RecommendationFeedbackModal({ isModalOpen, handleModalToggle, mo
7
7
  React.createElement(Link, { "data-tracking-id": "resolved-feedback-cases", key: "view", className: "pf-c-button pf-m-primary", to: "/case/list" },
8
8
  React.createElement(Trans, null, "View your cases")),
9
9
  React.createElement(Button, { "data-tracking-id": "resolved-feedback-continue", key: "continue", variant: "link", onClick: handleModalToggle },
10
- React.createElement(Trans, null, "Continue")),
10
+ React.createElement(Trans, null, "Continue troubleshooting")),
11
11
  ] },
12
12
  React.createElement("h1", { id: "rec-feedback-modal" }, modalContent)));
13
13
  }
@@ -1 +1 @@
1
- {"version":3,"file":"RulesModal.d.ts","sourceRoot":"","sources":["../../../../src/components/Recommendations/RulesModal.tsx"],"names":[],"mappings":"AAQA,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAI5D,OAAO,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAG7D,UAAU,MAAM;IACZ,cAAc,EAAE,wBAAwB,EAAE,CAAC;IAC3C,MAAM,EAAE,OAAO,CAAC;IAChB,MAAM,EAAE,aAAa,EAAE,CAAC;IACxB,aAAa,EAAE,MAAM,GAAG,CAAC;IACzB,cAAc,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,eA+K/C"}
1
+ {"version":3,"file":"RulesModal.d.ts","sourceRoot":"","sources":["../../../../src/components/Recommendations/RulesModal.tsx"],"names":[],"mappings":"AAmBA,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAI5D,OAAO,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAG7D,UAAU,MAAM;IACZ,cAAc,EAAE,wBAAwB,EAAE,CAAC;IAC3C,MAAM,EAAE,OAAO,CAAC;IAChB,MAAM,EAAE,aAAa,EAAE,CAAC;IACxB,aAAa,EAAE,MAAM,GAAG,CAAC;IACzB,cAAc,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,eAyM/C"}
@@ -8,12 +8,14 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
8
8
  });
9
9
  };
10
10
  import { pcm } from '@cee-eng/hydrajs';
11
- import { Accordion, Button, Modal } from '@patternfly/react-core';
11
+ import { Accordion, Button, Card, CardBody, CardExpandableContent, CardHeader, CardTitle, Modal, } from '@patternfly/react-core';
12
12
  import { useFetch } from '@rh-support/components';
13
13
  import { getResTypeFromUrl } from '@rh-support/utils';
14
14
  import React, { useContext, useEffect, useState } from 'react';
15
15
  import { Trans, useTranslation } from 'react-i18next';
16
+ import { useCaseDispatch } from '../../context/CaseContext';
16
17
  import { SessionRestoreDispatchContext, SessionRestoreStateContext } from '../../context/SessionRestoreContext';
18
+ import { setCaseState } from '../../reducers/CaseReducer';
17
19
  import { createOrUpdateSessionResources, getSessResFromRecs } from '../../reducers/SessionRestoreReducer';
18
20
  import { AttachmentStateContext } from '../shared/fileUpload/reducer/AttachmentReducerContext';
19
21
  import { EARuleInfoAccordion } from './EARules/EARuleInfoAccordion';
@@ -40,6 +42,9 @@ export function InsightResultModal(props) {
40
42
  const { request: resolveSessionRequest, isFetching } = useFetch(pcm.preCase.session.resolveSession);
41
43
  const { sessionRestore: { activeSessionId, sessionResourceTracking }, } = useContext(SessionRestoreStateContext);
42
44
  const [isModalVisible, setIsModalVisible] = useState(false);
45
+ const caseDispatch = useCaseDispatch();
46
+ const [isExpanded, setIsExpanded] = React.useState(true);
47
+ // To handle self solving of issues
43
48
  const handleSolvedIssue = () => __awaiter(this, void 0, void 0, function* () {
44
49
  var _a, _b, _c, _d;
45
50
  try {
@@ -59,6 +64,9 @@ export function InsightResultModal(props) {
59
64
  const onModalToggle = () => {
60
65
  setIsModalVisible((visible) => !visible);
61
66
  };
67
+ const onExpand = (event, id) => {
68
+ setIsExpanded(!isExpanded);
69
+ };
62
70
  useEffect(() => {
63
71
  props.isOpen &&
64
72
  createOrUpdateSessionResources(sessionRestoreDispatch, activeSessionId, sessionResourceTracking, SessionResourceSource.INSIGHTS, getSessResFromRecs(props.insightResults, SessionResourceVisibility.PRESENTED));
@@ -86,14 +94,22 @@ export function InsightResultModal(props) {
86
94
  setCanShowNewTag(!(total === trueValues));
87
95
  }, [selectedLocalFiles, props.EARule]);
88
96
  if (props.isRenderedMain) {
89
- return (React.createElement("div", { className: "card card-white card-support top-recommendations" },
90
- React.createElement("h3", { className: "card-heading popular-solutions" },
91
- React.createElement(Trans, null, "File recommendations")),
92
- React.createElement("div", { className: "card-body file-recommendations" },
93
- React.createElement(Accordion, { headingLevel: "h5", asDefinitionList: false, isBordered: true },
94
- props.insightResults.map((doc) => (React.createElement(InsightsRuleInfo, { duplicateKeys: duplicateKeys, showNewTag: canShowNewTag, key: doc.id + doc.attachmentId, doc: doc }))),
95
- props.EARule.length > 0 &&
96
- props.EARule.map((rule, index) => (React.createElement(EARuleInfoAccordion, { showNewTag: canShowNewTag, key: `${index}_eaRule`, rule: rule })))))));
97
+ setCaseState(caseDispatch, { isFileRecommendationsTriggered: true });
98
+ return (React.createElement(Card, { id: "expandable-card", className: "card-support top-recommendations", isExpanded: isExpanded, isCompact: true },
99
+ React.createElement(CardHeader, { onExpand: onExpand, toggleButtonProps: {
100
+ id: 'toggle-button1',
101
+ 'aria-label': t('File recommendations'),
102
+ 'aria-labelledby': 'expandable-card-title toggle-button1',
103
+ 'aria-expanded': isExpanded,
104
+ }, className: "popular-solutions" },
105
+ React.createElement(CardTitle, { id: "expandable-card-title", className: "card-title" },
106
+ React.createElement(Trans, null, "File recommendations"))),
107
+ React.createElement(CardExpandableContent, null,
108
+ React.createElement(CardBody, { className: "file-recommendation" },
109
+ React.createElement(Accordion, { headingLevel: "h5", asDefinitionList: false, isBordered: true },
110
+ props.insightResults.map((doc) => (React.createElement(InsightsRuleInfo, { duplicateKeys: duplicateKeys, showNewTag: canShowNewTag, key: doc.id + doc.attachmentId, doc: doc }))),
111
+ props.EARule.length > 0 &&
112
+ props.EARule.map((rule, index) => (React.createElement(EARuleInfoAccordion, { showNewTag: canShowNewTag, key: `${index}_eaRule`, rule: rule }))))))));
97
113
  }
98
114
  return (React.createElement(React.Fragment, null,
99
115
  React.createElement(RecommendationFeedbackModal, { isModalOpen: isModalVisible, handleModalToggle: onModalToggle, modalContent: t(`Great, we're glad that resolved your issue`) }),
@@ -1 +1 @@
1
- {"version":3,"file":"TroubleshootSection.d.ts","sourceRoot":"","sources":["../../../../src/components/TroubleshootSection/TroubleshootSection.tsx"],"names":[],"mappings":"AAiBA,UAAU,MAAM;IACZ,cAAc,EAAE,OAAO,CAAC;IACxB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,cAAc,CAAC,EAAE,OAAO,CAAC;CAC5B;AASD,iBAAS,mBAAmB,CAAC,KAAK,EAAE,MAAM,eAyFzC;kBAzFQ,mBAAmB;;;AA4F5B,eAAe,mBAAmB,CAAC"}
1
+ {"version":3,"file":"TroubleshootSection.d.ts","sourceRoot":"","sources":["../../../../src/components/TroubleshootSection/TroubleshootSection.tsx"],"names":[],"mappings":"AAkBA,UAAU,MAAM;IACZ,cAAc,EAAE,OAAO,CAAC;IACxB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,cAAc,CAAC,EAAE,OAAO,CAAC;CAC5B;AASD,iBAAS,mBAAmB,CAAC,KAAK,EAAE,MAAM,eA0GzC;kBA1GQ,mBAAmB;;;AA6G5B,eAAe,mBAAmB,CAAC"}
@@ -1,3 +1,4 @@
1
+ import { Card, CardBody, CardHeader, CardTitle } from '@patternfly/react-core';
1
2
  import { ErrorBoundary, LoadingDots } from '@rh-support/components';
2
3
  import { GlobalMetadataStateContext } from '@rh-support/react-context';
3
4
  import { ability, CaseListFields, resourceActions, resources } from '@rh-support/user-permissions';
@@ -31,7 +32,6 @@ function TroubleshootSection(props) {
31
32
  isCreatingCase: state.isCreatingCase,
32
33
  caseType: state.caseDetails.caseType,
33
34
  }), isEqual);
34
- const isIdea = caseType === PreviousCaseTypes.FEATURE_ENHANCEMENT;
35
35
  const canShowTopProducts = isEmpty(product);
36
36
  const canShowTopContent = !canShowTopProducts && ((_a = topContent === null || topContent === void 0 ? void 0 : topContent.data) === null || _a === void 0 ? void 0 : _a.length) > 0;
37
37
  const canAddAttachments = ability.can(resourceActions.PATCH, resources.CASE_CREATE, CaseListFields.ATTACHMENTS);
@@ -47,21 +47,26 @@ function TroubleshootSection(props) {
47
47
  ' ',
48
48
  React.createElement("p", { className: "pf-u-font-weight-bold selected-product-suggestion" }, product))),
49
49
  React.createElement(LoadingDots, { show: topContent.isFetching }),
50
- topContent.data.length === 0 && (React.createElement("div", { className: "card card-white card-support" },
51
- React.createElement("h3", { className: "card-heading popular-solutions" },
52
- React.createElement(Trans, { i18nKey: 'i18nKeyPopularSolutions' }, "Popular solutions and docs")),
53
- React.createElement("div", { className: "card-body" },
50
+ topContent.data.length === 0 && (React.createElement(Card, { id: "card", className: "card-support top-recommendations pf-u-mb-md", isCompact: true },
51
+ React.createElement(CardHeader, { "aria-label": t('Popular solutions and docs'), className: "popular-solutions" },
52
+ React.createElement(CardTitle, { id: "card-title", className: "card-title" },
53
+ React.createElement(Trans, { i18nKey: 'i18nKeyPopularSolutions' }, "Popular solutions and docs"))),
54
+ React.createElement(CardBody, { "aria-label": t('No recommendations for this product'), className: "file-recs-no-recommendation pf-u-mt-md" },
54
55
  React.createElement(Trans, null, "No recommendations for this product")))),
55
56
  React.createElement(ErrorBoundary, { errorMsgInfo: { message: t('There was an error loading suggestions') } }, canShowTopContent && !isEmpty(version) && React.createElement(Suggestions, null)),
56
57
  !isCreatingCase && React.createElement(ClusterRecommendations, { className: "push-top" }))),
57
58
  React.createElement("section", { className: "pf-u-mt-lg" },
58
59
  isNotAnIdea && React.createElement(InsightsResults, { isDisplayOnMain: true }),
59
- React.createElement("div", { className: "push-top" }, canAddAttachments ? (React.createElement(FileDiag, null)) : (React.createElement("div", { className: "card card-white card-support file-diag" },
60
- React.createElement("h3", { className: "card-heading" }, isIdea || loggedInUsersAccount.data.secureSupport ? (React.createElement(Trans, null, "File uploader")) : (React.createElement(Trans, null, "Upload file to analyze"))),
61
- React.createElement("div", { className: "card-body" },
62
- React.createElement("div", { className: "display-dashed pf-u-font-weight-bold pf-u-text-align-center" },
63
- React.createElement(Trans, null, "You do not have access to upload files"),
64
- "."))))))));
60
+ React.createElement("div", { className: "push-top" }, canAddAttachments ? (React.createElement(FileDiag, null)) : (React.createElement(React.Fragment, null,
61
+ React.createElement(Card, { id: "card", className: "card-support card-white file-diag", isCompact: true },
62
+ React.createElement(CardHeader, { "aria-label": !isNotAnIdea || loggedInUsersAccount.data.secureSupport
63
+ ? t('File uploader')
64
+ : t('Upload file to analyze'), className: "card-heading" },
65
+ React.createElement(CardTitle, { id: "card-title", className: "card-title" }, !isNotAnIdea || loggedInUsersAccount.data.secureSupport ? (React.createElement(Trans, null, "File uploader")) : (React.createElement(Trans, null, "Upload file to analyze")))),
66
+ React.createElement(CardBody, { "aria-label": t('No recommendations for this product'), className: "no-access-file-diag" },
67
+ React.createElement("div", { className: "display-dashed pf-u-font-weight-bold pf-u-text-align-center pf-u-mt-md" },
68
+ React.createElement(Trans, null, "You do not have access to upload files"),
69
+ ".")))))))));
65
70
  }
66
71
  TroubleshootSection.defaultProps = defaultProps;
67
72
  export default TroubleshootSection;
@@ -1 +1 @@
1
- {"version":3,"file":"FileLister.d.ts","sourceRoot":"","sources":["../../../../../src/components/shared/fileUpload/FileLister.tsx"],"names":[],"mappings":"AA4BA,OAAO,EAAiB,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAGxE,eAAO,MAAM,qBAAqB,2FAAyC,CAAC;AAiB5E,UAAU,MAAM;IACZ,kBAAkB,EAAE,UAAU,EAAE,CAAC;IACjC,UAAU,EAAE,CAAC,eAAe,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,KAAK,IAAI,CAAC;IACtG,YAAY,EAAE,CAAC,aAAa,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,UAAU,KAAK,IAAI,CAAC;IACtE,OAAO,CAAC,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,eAAe,CAAC,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,IAAI,CAAC;IACjD,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC/B;AAED,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,KAAK,EAAE,MAAM,eAsR/C"}
1
+ {"version":3,"file":"FileLister.d.ts","sourceRoot":"","sources":["../../../../../src/components/shared/fileUpload/FileLister.tsx"],"names":[],"mappings":"AA6BA,OAAO,EAAiB,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAGxE,eAAO,MAAM,qBAAqB,2FAAyC,CAAC;AAiB5E,UAAU,MAAM;IACZ,kBAAkB,EAAE,UAAU,EAAE,CAAC;IACjC,UAAU,EAAE,CAAC,eAAe,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,KAAK,IAAI,CAAC;IACtG,YAAY,EAAE,CAAC,aAAa,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,UAAU,KAAK,IAAI,CAAC;IACtE,OAAO,CAAC,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,eAAe,CAAC,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,IAAI,CAAC;IACjD,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC/B;AAED,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,KAAK,EAAE,MAAM,eAsR/C"}
@@ -1,5 +1,6 @@
1
1
  import { pcm } from '@cee-eng/hydrajs';
2
2
  import { Button, ButtonVariant, Label, Progress, ProgressMeasureLocation } from '@patternfly/react-core';
3
+ import HistoryIcon from '@patternfly/react-icons/dist/js/icons/history-icon';
3
4
  import { CircularProgressbar } from '@rh-support/components';
4
5
  import { humanizeSize } from '@rh-support/utils';
5
6
  import capitalize from 'lodash/capitalize';
@@ -113,7 +114,7 @@ export default function FileLister(props) {
113
114
  ((_a = localFile === null || localFile === void 0 ? void 0 : localFile.description) === null || _a === void 0 ? void 0 : _a.length) > 1 && (React.createElement("span", { className: "character-counter text-muted" }, 255 - localFile.description.length)),
114
115
  (isUploadFailed(localFile.uploadProgress.uploadStatus) ||
115
116
  isUploadAborted(localFile.uploadProgress.uploadStatus)) && (React.createElement("button", { type: "button", "aria-label": "Failed to upload, Retry", title: "Failed to upload, Retry", className: "btn btn-link btn-xs", "data-tracking-id": "file-lister-retry", onClick: onRetry(index) },
116
- React.createElement("i", { className: "nimbus-icon-backup" }))),
117
+ React.createElement(HistoryIcon, null))),
117
118
  !isVerifyingUpload(localFile.uploadProgress.uploadStatus) &&
118
119
  !isAnalysingFile(localFile.analysisMetadata.analysisStatus) && (React.createElement(React.Fragment, null,
119
120
  canShowAbortBtn(localFile.uploadProgress.uploadStatus) && (React.createElement(Button, { variant: ButtonVariant.link, isDanger: true, "aria-label": t('Cancel Upload'), title: t('Cancel Upload'), className: "btn btn-link btn-app remove-file", "data-tracking-id": "file-lister-abort", onClick: onAbortClick(localFile, index), hidden: !localFile.uploadability.ableToUpload, isDisabled: !(localFile.uploadProgress.percentUploaded > 0) },
@@ -36,7 +36,7 @@ function WizardAside(props) {
36
36
  canShowFileRecommendationSectionsWidget && React.createElement(InsightsResults, { isDisplayOnMain: true }),
37
37
  React.createElement(ClusterRecommendations, { showClusterRecommendationsList: canShowClusterIdReportWidget }),
38
38
  canUseSessionManagement && !isCreatingCase && React.createElement(SessionRestore, { routeProps: props.routeProps }),
39
- canShowFileUploadWidget() && React.createElement(FileDiag, null))));
39
+ canShowFileUploadWidget() && React.createElement(FileDiag, { className: "pf-u-mt-md" }))));
40
40
  }
41
41
  WizardAside.defaultProps = defaultProps;
42
42
  export default WizardAside;
@@ -48,7 +48,7 @@ function WizardMain(props) {
48
48
  // in useWizard file then add it to step squences in RouteConstNTypes
49
49
  const steps = getStepsSequece(showRestFlag);
50
50
  return (React.createElement(React.Fragment, null,
51
- steps.length !== 0 && (React.createElement(Route, { path: `${RouteUtils.seBasePath}/(${steps[0].id}|describe-issue)`, 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 })) })),
51
+ 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
52
  React.createElement(Route, { exact: true, path: `${RouteUtils.seBasePath}/${AppRouteSections.SUBMIT_CASE}`, render: () => renderSubmitCasePage() })));
53
53
  }
54
54
  export default WizardMain;
@@ -1 +1 @@
1
- {"version":3,"file":"WizardNavigation.d.ts","sourceRoot":"","sources":["../../../../src/components/wizardLayout/WizardNavigation.tsx"],"names":[],"mappings":"AAKA,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAInD,OAAO,EAAoB,eAAe,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AAI3G,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,eAoGtC;kBApGQ,gBAAgB;;;AAsGzB,eAAe,gBAAgB,CAAC"}
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,12 +1,28 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ import { pcm } from '@cee-eng/hydrajs';
11
+ import { Button, ButtonVariant } from '@patternfly/react-core';
12
+ import { useFetch } from '@rh-support/components';
1
13
  import { GlobalMetadataStateContext, useCanCreateCase } from '@rh-support/react-context';
14
+ import { getResTypeFromUrl } from '@rh-support/utils';
2
15
  import find from 'lodash/find';
3
16
  import isEqual from 'lodash/isEqual';
4
- import React, { useContext } from 'react';
17
+ import React, { useContext, useState } from 'react';
5
18
  import { useTranslation } from 'react-i18next';
6
- import { useCaseSelector } from '../../context/CaseContext';
19
+ import { useCaseDispatch, useCaseSelector } from '../../context/CaseContext';
7
20
  import { RouteContext, RouteDispatchContext } from '../../context/RouteContext';
21
+ import { SessionRestoreStateContext } from '../../context/SessionRestoreContext';
22
+ import { setCaseState } from '../../reducers/CaseReducer';
8
23
  import { AppRouteSections } from '../../reducers/RouteConstNTypes';
9
24
  import { updateisNextBtnClickedToShowValidationError } from '../../reducers/RouteReducer';
25
+ import { RecommendationFeedbackModal } from '../Recommendations/RecommendationFeedbackModal';
10
26
  import { useIsSectionValid } from '../shared/useIsSectionValid';
11
27
  const defaultProps = {};
12
28
  function WizardNavigation(props) {
@@ -22,6 +38,14 @@ function WizardNavigation(props) {
22
38
  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;
23
39
  const dispatchToRouteReducer = useContext(RouteDispatchContext);
24
40
  const { activeSectionError, isSectionValidFn } = useIsSectionValid(activeSection);
41
+ const [isRecsModalVisible, setIsRecsModalVisible] = useState(false);
42
+ const { request: resolveSessionRequest } = useFetch(pcm.preCase.session.resolveSession);
43
+ const { sessionRestore: { activeSessionId, sessionResourceTracking }, } = useContext(SessionRestoreStateContext);
44
+ const { SessionResourceSource } = pcm.preCase.session;
45
+ const { isFileRecommendationsTriggered } = useCaseSelector((state) => ({
46
+ isFileRecommendationsTriggered: state.isFileRecommendationsTriggered,
47
+ }), isEqual);
48
+ const caseDispatch = useCaseDispatch();
25
49
  const onNext = () => {
26
50
  var _a, _b;
27
51
  updateisNextBtnClickedToShowValidationError(dispatchToRouteReducer, true);
@@ -59,13 +83,35 @@ function WizardNavigation(props) {
59
83
  props.onShowRestUpdate(false);
60
84
  props.onBack();
61
85
  };
86
+ const onRecsFeedbackModalToggle = () => {
87
+ setIsRecsModalVisible((visible) => !visible);
88
+ };
89
+ // To handle self solving through file recommendations
90
+ const handleFileRecsSelfSolved = () => __awaiter(this, void 0, void 0, function* () {
91
+ var _c, _d, _e, _f;
92
+ try {
93
+ yield resolveSessionRequest(activeSessionId, {
94
+ sessionId: activeSessionId,
95
+ sessionResourceOriginId: (_d = (_c = sessionResourceTracking[SessionResourceSource.INSIGHTS]) === null || _c === void 0 ? void 0 : _c.resourceOriginId) !== null && _d !== void 0 ? _d : '',
96
+ type: getResTypeFromUrl(''),
97
+ source: SessionResourceSource.INSIGHTS,
98
+ resourceEntityId: (_f = (_e = sessionResourceTracking[SessionResourceSource.INSIGHTS]) === null || _e === void 0 ? void 0 : _e.resourceEntityId) !== null && _f !== void 0 ? _f : '',
99
+ url: '',
100
+ });
101
+ setCaseState(caseDispatch, { isFileRecommendationsTriggered: false });
102
+ setIsRecsModalVisible(true);
103
+ }
104
+ catch (e) { }
105
+ });
62
106
  // To handle entitled products
63
107
  const isEntitledProductLocal = isSearchIntent ? true : isEntitledProduct;
64
108
  return (React.createElement(React.Fragment, null,
65
- props.activeStep.order !== 0 && (React.createElement("button", { onClick: () => onBack(), className: "btn btn-app btn-open-white", "data-tracking-id": `prev-of-${activeSection}` }, t('Go back'))),
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'))),
66
110
  React.createElement("button", { disabled: (!isEntitledProductLocal && props.activeStep.nextButtonLabel === 'Get support') ||
67
111
  (!isSectionValidFn(props.activeStep.id) && isNextBtnClickedToShowValidationError) ||
68
- noValidEntitlement, onClick: onNext, className: "btn btn-app btn-primary", "data-tracking-id": `next-of-${activeSection}` }, t(props.activeStep.nextButtonLabel)),
112
+ noValidEntitlement, onClick: onNext, className: "btn btn-app btn-primary main-nav-button", "data-tracking-id": `next-of-${activeSection}` }, t(props.activeStep.nextButtonLabel)),
113
+ 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
+ React.createElement(RecommendationFeedbackModal, { isModalOpen: isRecsModalVisible, handleModalToggle: onRecsFeedbackModalToggle, modalContent: t(`Great, we're glad that resolved your issue`) }),
69
115
  activeSectionError ? (React.createElement("small", { className: "pf-u-align-self-center pf-u-ml-md text-red" }, t(activeSectionError))) : null));
70
116
  }
71
117
  WizardNavigation.defaultProps = defaultProps;
@@ -199,6 +199,7 @@ export interface ICaseState {
199
199
  caseCreation500ErrorStatus: boolean;
200
200
  openshiftDisplayName?: string;
201
201
  isCaseOwnerUpdating: boolean;
202
+ isFileRecommendationsTriggered?: boolean;
202
203
  }
203
204
  export interface ICreateCasePayloadType extends ICaseState {
204
205
  }
@@ -1 +1 @@
1
- {"version":3,"file":"CaseConstNTypes.d.ts","sourceRoot":"","sources":["../../../src/reducers/CaseConstNTypes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CaseConstNTypes.d.ts","sourceRoot":"","sources":["../../../src/reducers/CaseConstNTypes.ts"],"names":[],"mappings":"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"}
@@ -190,6 +190,7 @@ export const initialCaseState = {
190
190
  caseCreation500ErrorStatus: false,
191
191
  openshiftDisplayName: '',
192
192
  isCaseOwnerUpdating: false,
193
+ isFileRecommendationsTriggered: false,
193
194
  };
194
195
  export const ORG_ADMIN_SEND_NOTIFCATION_KBASE_LINK = 'https://access.redhat.com/articles/5967811';
195
196
  export const NON_ORG_ADMIN_SEND_NOTIFCATION_KBASE_LINK = 'https://access.redhat.com/articles/5967831';
@@ -1077,3 +1077,24 @@ li.pf-c-wizard__nav-item button.pf-m-disabled::before {
1077
1077
  border: 2px dashed var(--pf-global--palette--black-600);
1078
1078
  background-color: var(--pf-global--palette--black-300);
1079
1079
  }
1080
+ .pf-c-wizard__footer {
1081
+ display: flex !important;
1082
+ align-items: center !important;
1083
+ padding: 10px !important;
1084
+ }
1085
+
1086
+ .main-nav-button {
1087
+ display: flex !important;
1088
+ }
1089
+
1090
+ .solved-issue-button {
1091
+ margin-left: auto !important;
1092
+ }
1093
+
1094
+ svg.pf-c-spinner.pf-m-md.export-csv-loader {
1095
+ --pf-c-spinner--Color: var(--pf-global--Color--200) !important;
1096
+ }
1097
+
1098
+ svg.pf-u-ml-xs.icon-size {
1099
+ width: 14px;
1100
+ }
@@ -147,7 +147,7 @@
147
147
  padding: 0 10px;
148
148
 
149
149
  &:hover svg {
150
- color: #004080 !important;
150
+ color: var(--pf-global--palette--blue-500) !important;
151
151
  }
152
152
  }
153
153
  }
@@ -276,6 +276,29 @@
276
276
 
277
277
  .popular-solutions {
278
278
  background-color: #286869 !important;
279
+ .card-title {
280
+ color: #fff !important;
281
+ }
282
+ div > button > span > svg {
283
+ color: white !important;
284
+ }
285
+ .file-recs-actions-toggle {
286
+ color: white !important;
287
+ }
288
+ }
289
+ .file-diag {
290
+ border: 1px solid #ededed;
291
+ }
292
+
293
+ .file-diag > .card-heading {
294
+ display: flex;
295
+ -ms-flex-align: center;
296
+ margin-bottom: 0;
297
+ padding: 0.5rem 0.8rem;
298
+ font-size: 15px;
299
+ background-color: var(--pf-global--palette--black-500);
300
+ border: 1px solid var(--pf-global--palette--black-500);
301
+ color: var(--pf-global--palette--white);
279
302
  }
280
303
 
281
304
  .file-diag .file-buttons .pf-c-switch .pf-c-switch__label {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rh-support/troubleshoot",
3
- "version": "2.1.18",
3
+ "version": "2.1.20",
4
4
  "publishConfig": {
5
5
  "access": "public",
6
6
  "registry": "https://registry.npmjs.org"
@@ -66,8 +66,8 @@
66
66
  "@patternfly/react-core": "4.264.0",
67
67
  "@progress/kendo-drawing": "^1.6.0",
68
68
  "@progress/kendo-react-pdf": "^3.12.0",
69
- "@rh-support/components": "2.0.11",
70
- "@rh-support/react-context": "2.0.11",
69
+ "@rh-support/components": "2.0.12",
70
+ "@rh-support/react-context": "2.0.12",
71
71
  "@rh-support/types": "2.0.2",
72
72
  "@rh-support/user-permissions": "2.0.11",
73
73
  "@rh-support/utils": "2.0.11",
@@ -133,5 +133,5 @@
133
133
  "defaults and supports es6-module",
134
134
  "maintained node versions"
135
135
  ],
136
- "gitHead": "70dfc36e7b1c55fcfe9776a68fb65fb931e6b7cf"
136
+ "gitHead": "4a3df080406db9104209fa9fa830c733ada71082"
137
137
  }