@rh-support/troubleshoot 0.2.116 → 0.2.119

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 (47) hide show
  1. package/lib/esm/components/CaseEditView/ActiveCustomerEscalation/ActiveCustomerEscalation.d.ts.map +1 -1
  2. package/lib/esm/components/CaseEditView/ActiveCustomerEscalation/ActiveCustomerEscalation.js +6 -4
  3. package/lib/esm/components/CaseEditView/ActiveCustomerEscalation/RequestEscalationModal.d.ts.map +1 -1
  4. package/lib/esm/components/CaseEditView/ActiveCustomerEscalation/RequestEscalationModal.js +114 -52
  5. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CaseOpenshiftClusterId/CaseOpenshiftClusterId.d.ts.map +1 -1
  6. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CaseOpenshiftClusterId/CaseOpenshiftClusterId.js +27 -44
  7. package/lib/esm/components/CaseEditView/Tabs/RMEEscalations/RMEEscalationList.d.ts.map +1 -1
  8. package/lib/esm/components/CaseEditView/Tabs/RMEEscalations/RMEEscalationList.js +10 -11
  9. package/lib/esm/components/CaseManagement/OpenShiftClusterId.d.ts.map +1 -1
  10. package/lib/esm/components/CaseManagement/OpenShiftClusterId.js +38 -52
  11. package/lib/esm/components/CaseManagement/OpenshiftDropdownV4.d.ts +2 -2
  12. package/lib/esm/components/CaseManagement/OpenshiftDropdownV4.d.ts.map +1 -1
  13. package/lib/esm/components/CaseManagement/OpenshiftDropdownV4.js +121 -80
  14. package/lib/esm/components/Recommendations/AlertToastWrapper.d.ts +1 -0
  15. package/lib/esm/components/Recommendations/AlertToastWrapper.d.ts.map +1 -1
  16. package/lib/esm/components/Recommendations/AlertToastWrapper.js +4 -2
  17. package/lib/esm/components/SessionRestore/RestoreLastSessionModal.d.ts +9 -0
  18. package/lib/esm/components/SessionRestore/RestoreLastSessionModal.d.ts.map +1 -0
  19. package/lib/esm/components/SessionRestore/RestoreLastSessionModal.js +43 -0
  20. package/lib/esm/components/SessionRestore/SessionRestore.d.ts.map +1 -1
  21. package/lib/esm/components/SessionRestore/SessionRestore.js +11 -5
  22. package/lib/esm/components/SubmitCase/ResubmitToast.d.ts +7 -0
  23. package/lib/esm/components/SubmitCase/ResubmitToast.d.ts.map +1 -0
  24. package/lib/esm/components/SubmitCase/ResubmitToast.js +25 -0
  25. package/lib/esm/components/wizardLayout/GlobalTroubleshootEffects.d.ts.map +1 -1
  26. package/lib/esm/components/wizardLayout/GlobalTroubleshootEffects.js +19 -8
  27. package/lib/esm/components/wizardLayout/WizardAside.d.ts +1 -0
  28. package/lib/esm/components/wizardLayout/WizardAside.d.ts.map +1 -1
  29. package/lib/esm/components/wizardLayout/WizardAside.js +1 -1
  30. package/lib/esm/components/wizardLayout/WizardLayout.d.ts.map +1 -1
  31. package/lib/esm/components/wizardLayout/WizardLayout.js +6 -5
  32. package/lib/esm/reducers/CaseConstNTypes.d.ts +4 -1
  33. package/lib/esm/reducers/CaseConstNTypes.d.ts.map +1 -1
  34. package/lib/esm/reducers/CaseConstNTypes.js +4 -0
  35. package/lib/esm/reducers/CaseReducer.d.ts +12 -0
  36. package/lib/esm/reducers/CaseReducer.d.ts.map +1 -1
  37. package/lib/esm/reducers/CaseReducer.js +35 -1
  38. package/lib/esm/reducers/ClusterRecommendationsReducer.d.ts +5 -2
  39. package/lib/esm/reducers/ClusterRecommendationsReducer.d.ts.map +1 -1
  40. package/lib/esm/reducers/ClusterRecommendationsReducer.js +19 -6
  41. package/lib/esm/reducers/SessionRestoreReducer.d.ts +5 -2
  42. package/lib/esm/reducers/SessionRestoreReducer.d.ts.map +1 -1
  43. package/lib/esm/reducers/SessionRestoreReducer.js +24 -1
  44. package/lib/esm/utils/caseOpenshiftClusterIdUtils.d.ts +4 -2
  45. package/lib/esm/utils/caseOpenshiftClusterIdUtils.d.ts.map +1 -1
  46. package/lib/esm/utils/caseOpenshiftClusterIdUtils.js +1 -9
  47. package/package.json +9 -9
@@ -0,0 +1,43 @@
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 { Button, Modal, ModalVariant } from '@patternfly/react-core';
11
+ import { isEqual } from 'lodash';
12
+ import React from 'react';
13
+ import { Trans, useTranslation } from 'react-i18next';
14
+ import { useCaseDispatch, useCaseSelector } from '../../context/CaseContext';
15
+ import { updateCaseCreationErrorStatus } from '../../reducers/CaseReducer';
16
+ export const RestoreLastSessionModal = ({ onRestore, errorSession }) => {
17
+ const { t } = useTranslation();
18
+ const { caseCreation500ErrorStatus, caseCreationError } = useCaseSelector((state) => ({
19
+ caseCreation500ErrorStatus: state.caseCreation500ErrorStatus,
20
+ caseCreationError: state.caseCreationError,
21
+ }), isEqual);
22
+ const caseDispatch = useCaseDispatch();
23
+ /**
24
+ * On Restore
25
+ */
26
+ const onRestoreClick = () => __awaiter(void 0, void 0, void 0, function* () {
27
+ yield onRestore(errorSession);
28
+ updateCaseCreationErrorStatus(caseDispatch, false);
29
+ });
30
+ /**
31
+ * On Open a new case close the modal by setting `caseCreationError` false
32
+ */
33
+ const onOpenNewCase = () => {
34
+ updateCaseCreationErrorStatus(caseDispatch, false);
35
+ };
36
+ return (React.createElement(Modal, { "data-tracking-id": "restore-session-modal", variant: ModalVariant.small, title: t('Restore last session?'), isOpen: !caseCreationError && caseCreation500ErrorStatus, onClose: onOpenNewCase, actions: [
37
+ React.createElement(Button, { key: "restore", variant: "primary", onClick: onRestoreClick, "data-tracking-id": "restore-session-button" },
38
+ React.createElement(Trans, null, " Restore")),
39
+ React.createElement(Button, { key: "openANewCase", variant: "secondary", onClick: onOpenNewCase, "data-tracking-id": "restore-session-open-case-button" },
40
+ React.createElement(Trans, null, "Open a new case")),
41
+ ] },
42
+ React.createElement(Trans, null, "It looks like an error prevented your last case from being submitted. Would you like to restore the last session or open a new case?")));
43
+ };
@@ -1 +1 @@
1
- {"version":3,"file":"SessionRestore.d.ts","sourceRoot":"","sources":["../../../../src/components/SessionRestore/SessionRestore.tsx"],"names":[],"mappings":"AAUA,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAQvD,OAAO,EAGH,eAAe,EAElB,MAAM,iCAAiC,CAAC;AAgBzC,UAAU,MAAM;IACZ,UAAU,EAAE,mBAAmB,CAAC,eAAe,CAAC,CAAC;CACpD;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,eAmU3C"}
1
+ {"version":3,"file":"SessionRestore.d.ts","sourceRoot":"","sources":["../../../../src/components/SessionRestore/SessionRestore.tsx"],"names":[],"mappings":"AAUA,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAQvD,OAAO,EAGH,eAAe,EAElB,MAAM,iCAAiC,CAAC;AAiBzC,UAAU,MAAM;IACZ,UAAU,EAAE,mBAAmB,CAAC,eAAe,CAAC,CAAC;CACpD;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,eA4U3C"}
@@ -29,17 +29,19 @@ import RouteUtils from '../../utils/routeUtils';
29
29
  import { resetAttachment } from '../shared/fileUpload';
30
30
  import { restoreFilesFromSession } from '../shared/fileUpload/reducer/AttachmentHelper';
31
31
  import { AttachmentDispatchContext } from '../shared/fileUpload/reducer/AttachmentReducerContext';
32
+ import { RestoreLastSessionModal } from './RestoreLastSessionModal';
32
33
  import { SessionRestoreCard } from './SessionRestoreCard';
33
34
  export function SessionRestore(props) {
34
35
  const sessionRestoreDispatch = useContext(SessionRestoreDispatchContext);
35
36
  const dispatchToAttachmentReducer = useContext(AttachmentDispatchContext);
36
37
  const dispatchToRouteReducer = useRouteDispatchContext();
37
38
  const { sessionRestore } = useContext(SessionRestoreStateContext);
38
- const { selectedNotificationContacts, cepDetails, caseDetails } = useCaseSelector((state) => ({
39
+ const { selectedNotificationContacts, cepDetails, caseDetails, caseCreation500ErrorStatus } = useCaseSelector((state) => ({
39
40
  openshiftClusterID: state.caseDetails.openshiftClusterID,
40
41
  cepDetails: state.cepDetails,
41
42
  selectedNotificationContacts: state.selectedNotificationContacts,
42
43
  caseDetails: state.caseDetails,
44
+ caseCreation500ErrorStatus: state.caseCreation500ErrorStatus,
43
45
  }), isEqual);
44
46
  const caseDispatch = useCaseDispatch();
45
47
  const { globalMetadataState: { loggedInUsersAccount, loggedInUserRights, referrerUrl }, } = useContext(GlobalMetadataStateContext);
@@ -54,8 +56,8 @@ export function SessionRestore(props) {
54
56
  * Fetching previous sessions on load
55
57
  */
56
58
  useEffect(() => {
57
- loadPreviousSessions(sessionRestoreDispatch);
58
- }, [sessionRestoreDispatch]);
59
+ loadPreviousSessions(sessionRestoreDispatch, caseDispatch);
60
+ }, [sessionRestoreDispatch, caseDispatch]);
59
61
  /**
60
62
  * Creating/use existing session new session if one doesn't exist when:
61
63
  * 1. hasFetchedPreviousSessions
@@ -129,7 +131,7 @@ export function SessionRestore(props) {
129
131
  : !isEmpty(existingUserAgent) && existingUserAgent !== userAgent
130
132
  ? existingUserAgent
131
133
  : userAgent;
132
- let session = { userAgent, originatingSystem };
134
+ let session = { userAgent, originatingSystem, caseCreationError: caseCreation500ErrorStatus };
133
135
  if (!isEmpty(caseDetails.caseNumber)) {
134
136
  session = Object.assign(Object.assign({}, session), { isActive: false, isResolved: true, caseNumber: caseDetails.caseNumber });
135
137
  }
@@ -141,6 +143,7 @@ export function SessionRestore(props) {
141
143
  sessionRestore.activeSessionId,
142
144
  sessionRestore.hasFetchedPreviousSessions,
143
145
  sessionRestoreDispatch,
146
+ caseCreation500ErrorStatus,
144
147
  ], 500);
145
148
  /**
146
149
  * Patch CEP Details
@@ -279,5 +282,8 @@ export function SessionRestore(props) {
279
282
  ], 1000);
280
283
  if (!sessionRestoreCardSections.includes(activeSection))
281
284
  return React.createElement(React.Fragment, null);
282
- return (React.createElement(SessionRestoreCard, { onRestore: restoreSession, previousSessions: previousSessions, onCardDismiss: onSessionRestoreCardDismiss }));
285
+ return (React.createElement(React.Fragment, null,
286
+ ' ',
287
+ React.createElement(SessionRestoreCard, { onRestore: restoreSession, previousSessions: previousSessions, onCardDismiss: onSessionRestoreCardDismiss }),
288
+ React.createElement(RestoreLastSessionModal, { onRestore: restoreSession, errorSession: sessionRestore.sessionOfCaseCreationError })));
283
289
  }
@@ -0,0 +1,7 @@
1
+ import { FC } from 'react';
2
+ interface IProps {
3
+ submitCaseAndNavigate: (isReSubmitting: boolean) => void;
4
+ }
5
+ export declare const ResubmitToast: FC<IProps>;
6
+ export {};
7
+ //# sourceMappingURL=ResubmitToast.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ResubmitToast.d.ts","sourceRoot":"","sources":["../../../../src/components/SubmitCase/ResubmitToast.tsx"],"names":[],"mappings":"AAEA,OAAc,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAMlC,UAAU,MAAM;IACZ,qBAAqB,EAAE,CAAC,cAAc,EAAE,OAAO,KAAK,IAAI,CAAC;CAC5D;AAED,eAAO,MAAM,aAAa,EAAE,EAAE,CAAC,MAAM,CAuCpC,CAAC"}
@@ -0,0 +1,25 @@
1
+ import { Alert, AlertActionCloseButton, AlertActionLink, AlertVariant } from '@patternfly/react-core';
2
+ import { isEqual } from 'lodash';
3
+ import React from 'react';
4
+ import { Trans, useTranslation } from 'react-i18next';
5
+ import { useCaseDispatch, useCaseSelector } from '../../context/CaseContext';
6
+ import { updateCaseCreationErrorStatus } from '../../reducers/CaseReducer';
7
+ export const ResubmitToast = ({ submitCaseAndNavigate }) => {
8
+ const { t } = useTranslation();
9
+ const { caseCreation500ErrorStatus, caseCreationError } = useCaseSelector((state) => ({
10
+ caseCreation500ErrorStatus: state.caseCreation500ErrorStatus,
11
+ caseCreationError: state.caseCreationError,
12
+ }), isEqual);
13
+ const caseDispatch = useCaseDispatch();
14
+ const onResubmit = () => {
15
+ updateCaseCreationErrorStatus(caseDispatch, false); // Hide the resubmit toast
16
+ submitCaseAndNavigate(true);
17
+ };
18
+ const onReturnToCase = () => {
19
+ updateCaseCreationErrorStatus(caseDispatch, false);
20
+ };
21
+ return caseCreationError && caseCreation500ErrorStatus ? (React.createElement(Alert, { "data-tracking-id": "resubmit-case-toast", variant: AlertVariant.danger, title: t('Case was not submitted due to an internal error'), actionClose: React.createElement(AlertActionCloseButton, { onClose: onReturnToCase }), actionLinks: React.createElement(React.Fragment, null,
22
+ React.createElement(AlertActionLink, { onClick: onResubmit }, t('Resubmit')),
23
+ React.createElement(AlertActionLink, { onClick: onReturnToCase }, t('Return to cases'))) },
24
+ React.createElement(Trans, null, "Don\u2019t panic\u2014we\u2019ve saved this case for you! You can try to submit again or restore your session at a later time."))) : null;
25
+ };
@@ -1 +1 @@
1
- {"version":3,"file":"GlobalTroubleshootEffects.d.ts","sourceRoot":"","sources":["../../../../src/components/wizardLayout/GlobalTroubleshootEffects.tsx"],"names":[],"mappings":"AAUA,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAWvD,OAAO,EAAqB,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAOrF,UAAU,MAAM;IACZ,UAAU,EAAE,mBAAmB,CAAC,eAAe,CAAC,CAAC;CACpD;AAED,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,MAAM,eAqXtD"}
1
+ {"version":3,"file":"GlobalTroubleshootEffects.d.ts","sourceRoot":"","sources":["../../../../src/components/wizardLayout/GlobalTroubleshootEffects.tsx"],"names":[],"mappings":"AAUA,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAWvD,OAAO,EAAqB,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAQrF,UAAU,MAAM;IACZ,UAAU,EAAE,mBAAmB,CAAC,eAAe,CAAC,CAAC;CACpD;AAED,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,MAAM,eA6YtD"}
@@ -30,6 +30,7 @@ import { fetchEdmundAbbottRules } from '../../reducers/RulesReducer';
30
30
  import { fetchTopContent } from '../../reducers/TopContentReducer';
31
31
  import { isClusterIdEnabledForProduct } from '../../utils/caseOpenshiftClusterIdUtils';
32
32
  import RouteUtils from '../../utils/routeUtils';
33
+ import { AttachmentStateContext } from '../shared/fileUpload/reducer/AttachmentReducerContext';
33
34
  export function GlobalTroubleshootEffects(props) {
34
35
  const [initDefaultSection, setInitDefaultSection] = useState(false);
35
36
  const dispatchToRouteReducer = useContext(RouteDispatchContext);
@@ -64,6 +65,7 @@ export function GlobalTroubleshootEffects(props) {
64
65
  // top content state
65
66
  const { topContentState: { topContentPayload }, } = useContext(TCStateContext);
66
67
  const tcDispatch = useContext(TCDispatchContext);
68
+ const { attachmentState: { caseFiles: { selectedLocalFiles }, }, } = useContext(AttachmentStateContext);
67
69
  const { resetCaseCreateState } = useResetCaseCreate();
68
70
  const prevSectionsToHide = usePrevious(sectionsToHide);
69
71
  const hasSummaryInUrl = !isEmpty(urlQueryParams.summary);
@@ -238,8 +240,7 @@ export function GlobalTroubleshootEffects(props) {
238
240
  return;
239
241
  }
240
242
  const getEARules = () => __awaiter(this, void 0, void 0, function* () {
241
- const rulesBody = {
242
- caseType: {
243
+ const rulesBody = Object.assign({ caseType: {
243
244
  product,
244
245
  version,
245
246
  summary,
@@ -247,11 +248,15 @@ export function GlobalTroubleshootEffects(props) {
247
248
  type: caseType,
248
249
  language,
249
250
  accountNumber,
250
- },
251
- accountType: { isSecure: selectedAccountDetails.data.securedEnvironment || false },
252
- userType: { canAddAttachments },
253
- fields: ['title', 'cta', 'description', 'rule_type', 'rule_sub_type', 'rule_id'],
254
- };
251
+ session_id: activeSessionId,
252
+ }, accountType: { isSecure: selectedAccountDetails.data.securedEnvironment || false }, userType: { canAddAttachments }, fields: ['title', 'cta', 'description', 'rule_type', 'rule_sub_type', 'rule_id'] }, ((selectedLocalFiles === null || selectedLocalFiles === void 0 ? void 0 : selectedLocalFiles.length) && {
253
+ attachment: selectedLocalFiles.map((file) => ({
254
+ uuid: file.attachmentId,
255
+ fileName: file.name,
256
+ size: file.size,
257
+ fileType: file.type,
258
+ })),
259
+ }));
255
260
  yield fetchEdmundAbbottRules(rulesDispatch, rulesBody);
256
261
  });
257
262
  getEARules();
@@ -269,6 +274,9 @@ export function GlobalTroubleshootEffects(props) {
269
274
  loggedInUserRights.data,
270
275
  rulesDispatch,
271
276
  selectedAccountDetails.data.securedEnvironment,
277
+ selectedLocalFiles,
278
+ selectedLocalFiles === null || selectedLocalFiles === void 0 ? void 0 : selectedLocalFiles.length,
279
+ activeSessionId,
272
280
  ], 2000);
273
281
  /**
274
282
  * If a component refetches the global account details , we want to make sure that the same changes are reflected in the
@@ -293,7 +301,10 @@ export function GlobalTroubleshootEffects(props) {
293
301
  const previousActiveSessionId = usePrevious(activeSessionId);
294
302
  useEffect(() => {
295
303
  var _a;
296
- if (isEmpty(product) || isEmpty(version) || activeSessionId !== previousActiveSessionId)
304
+ if (isEmpty(product) ||
305
+ isEmpty(version) ||
306
+ activeSessionId !== previousActiveSessionId ||
307
+ isEmpty(previousVersion))
297
308
  return;
298
309
  // we need to reset openshift cluster states only when major version is different
299
310
  const oldMajorVersion = previousVersion && getVersion(previousVersion).major;
@@ -3,6 +3,7 @@ import { IRouteUrlParams } from '../../reducers/RouteConstNTypes';
3
3
  interface IProps {
4
4
  routeProps: RouteComponentProps<IRouteUrlParams>;
5
5
  isAttachmentUploadModalOpen: boolean;
6
+ submitCaseAndNavigate: (isReSubmitting: boolean) => void;
6
7
  }
7
8
  declare function WizardAside(props: IProps): JSX.Element;
8
9
  declare namespace WizardAside {
@@ -1 +1 @@
1
- {"version":3,"file":"WizardAside.d.ts","sourceRoot":"","sources":["../../../../src/components/wizardLayout/WizardAside.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAKnD,OAAO,EAEH,eAAe,EAGlB,MAAM,iCAAiC,CAAC;AASzC,UAAU,MAAM;IACZ,UAAU,EAAE,mBAAmB,CAAC,eAAe,CAAC,CAAC;IACjD,2BAA2B,EAAE,OAAO,CAAC;CACxC;AAGD,iBAAS,WAAW,CAAC,KAAK,EAAE,MAAM,eA8CjC;kBA9CQ,WAAW;;;AAgDpB,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"WizardAside.d.ts","sourceRoot":"","sources":["../../../../src/components/wizardLayout/WizardAside.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAKnD,OAAO,EAEH,eAAe,EAGlB,MAAM,iCAAiC,CAAC;AASzC,UAAU,MAAM;IACZ,UAAU,EAAE,mBAAmB,CAAC,eAAe,CAAC,CAAC;IACjD,2BAA2B,EAAE,OAAO,CAAC;IACrC,qBAAqB,EAAE,CAAC,cAAc,EAAE,OAAO,KAAK,IAAI,CAAC;CAC5D;AAGD,iBAAS,WAAW,CAAC,KAAK,EAAE,MAAM,eA8CjC;kBA9CQ,WAAW;;;AAgDpB,eAAe,WAAW,CAAC"}
@@ -42,7 +42,7 @@ function WizardAside(props) {
42
42
  canUseSessionManagement && React.createElement(SessionRestore, { routeProps: props.routeProps }),
43
43
  React.createElement(AsideResults, null),
44
44
  canShowFileUploadWidget() && React.createElement(FileDiag, null),
45
- React.createElement(AlertToastWrapper, null))));
45
+ React.createElement(AlertToastWrapper, { submitCaseAndNavigate: props.submitCaseAndNavigate }))));
46
46
  }
47
47
  WizardAside.defaultProps = defaultProps;
48
48
  export default WizardAside;
@@ -1 +1 @@
1
- {"version":3,"file":"WizardLayout.d.ts","sourceRoot":"","sources":["../../../../src/components/wizardLayout/WizardLayout.tsx"],"names":[],"mappings":"AAQA,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAMvD,OAAO,EAAuC,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAcvG,UAAU,MAAM;IACZ,UAAU,EAAE,mBAAmB,CAAC,eAAe,CAAC,CAAC;CACpD;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,eAqJzC"}
1
+ {"version":3,"file":"WizardLayout.d.ts","sourceRoot":"","sources":["../../../../src/components/wizardLayout/WizardLayout.tsx"],"names":[],"mappings":"AAQA,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAMvD,OAAO,EAAuC,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAcvG,UAAU,MAAM;IACZ,UAAU,EAAE,mBAAmB,CAAC,eAAe,CAAC,CAAC;CACpD;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,eAsJzC"}
@@ -62,7 +62,7 @@ export function WizardLayout(props) {
62
62
  }
63
63
  return isModalPresent;
64
64
  };
65
- const submitCaseAndNavigate = () => {
65
+ const submitCaseAndNavigate = (isReSubmitting) => {
66
66
  confirmationModalType && setConfirmationModalType(null);
67
67
  // if a confirmation modal exists, show it and don't submit the case as
68
68
  // it will be handled by the confirmation modal itself
@@ -77,12 +77,13 @@ export function WizardLayout(props) {
77
77
  submitCase(caseDispatch, caseState, sessionItem, isCaseCreate, errorMessageCaseSubmit500);
78
78
  // reset viewedModals on case submit
79
79
  viewedConfirmationModalsList.current = [];
80
- RouteUtils.navigateToSection(props.routeProps, appRouteConfugurations[activeSection].nextSection, appRouteSectionsSequence, isCaseCreate, isSearchIntent, false);
80
+ !isReSubmitting &&
81
+ RouteUtils.navigateToSection(props.routeProps, appRouteConfugurations[activeSection].nextSection, appRouteSectionsSequence, isCaseCreate, isSearchIntent, false);
81
82
  };
82
83
  const onNext = (e) => {
83
84
  var _a;
84
85
  if (appRouteConfugurations[activeSection].nextSection === AppRouteSections.SUBMIT_CASE) {
85
- submitCaseAndNavigate();
86
+ submitCaseAndNavigate(false);
86
87
  return;
87
88
  }
88
89
  // confirmed state side support show modal logic
@@ -114,9 +115,9 @@ export function WizardLayout(props) {
114
115
  setConfirmationModalType(null);
115
116
  };
116
117
  return (React.createElement(React.Fragment, null,
117
- React.createElement(PreCaseConfirmationModals, { onModalClose: onModalClose, confirmationModalType: confirmationModalType, onConfirm: submitCaseAndNavigate }),
118
+ React.createElement(PreCaseConfirmationModals, { onModalClose: onModalClose, confirmationModalType: confirmationModalType, onConfirm: () => submitCaseAndNavigate(caseState.caseCreationError) }),
118
119
  React.createElement(WizardProgress, { routeProps: props.routeProps, onNext: onNext }),
119
120
  React.createElement(WizardMain, { routeProps: props.routeProps }),
120
121
  React.createElement(WizardNavigation, { routeProps: props.routeProps, onNext: onNext }),
121
- React.createElement(WizardAside, { isAttachmentUploadModalOpen: confirmationModalType === PreCaseConfirmationModalsEnum.NO_ATTACHMENT_MODAL, routeProps: props.routeProps })));
122
+ React.createElement(WizardAside, { isAttachmentUploadModalOpen: confirmationModalType === PreCaseConfirmationModalsEnum.NO_ATTACHMENT_MODAL, routeProps: props.routeProps, submitCaseAndNavigate: submitCaseAndNavigate })));
122
123
  }
@@ -144,7 +144,8 @@ export declare enum CaseReducerConstants {
144
144
  setSelectedCaseGroupUsers = "setSelectedCaseGroupUsers",
145
145
  getCustomEmail = "getCustomEmail",
146
146
  updateEmailList = "updateEmailList",
147
- getVersionDetails = "getVersionDetails"
147
+ getVersionDetails = "getVersionDetails",
148
+ caseCreation500ErrorStatus = "caseCreation500ErrorStatus"
148
149
  }
149
150
  export declare const initialCaseState: ICaseState;
150
151
  export interface ICaseState {
@@ -186,6 +187,8 @@ export interface ICaseState {
186
187
  isFetchingSelectedNotificationContacts: boolean;
187
188
  versionsDetails: IApiResponseDetails<IVersionsDetails[]>;
188
189
  v3ClusterName?: string;
190
+ caseCreation500ErrorStatus: boolean;
191
+ openshiftDisplayName?: string;
189
192
  }
190
193
  export interface ICreateCasePayloadType extends ICaseState {
191
194
  }
@@ -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":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,0CAA0C,CAAC;AAC5E,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,yCAAyC,CAAC;AACjH,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,+CAA+C,CAAC;AACvF,OAAO,EAAE,YAAY,EAAE,MAAM,iDAAiD,CAAC;AAC/E,OAAO,EAAE,QAAQ,EAAE,MAAM,wCAAwC,CAAC;AAClE,OAAO,EAAE,0BAA0B,EAAE,MAAM,qCAAqC,CAAC;AACjF,OAAO,EAAE,QAAQ,EAAE,MAAM,wCAAwC,CAAC;AAClE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAEnF,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAEjC,eAAO,MAAM,oBAAoB,MAAM,CAAC;AACxC,eAAO,MAAM,+BAA+B,MAAM,CAAC;AACnD,eAAO,MAAM,wBAAwB,QAAQ,CAAC;AAC9C,eAAO,MAAM,qBAAqB,MAAM,CAAC;AACzC,eAAO,MAAM,uBAAuB,QAAQ,CAAC;AAC7C,eAAO,MAAM,gBAAgB,MAAM,CAAC;AACpC,eAAO,MAAM,uBAAuB,MAAM,CAAC;AAC3C,eAAO,MAAM,qCAAqC,OAAO,CAAC;AAC1D,eAAO,MAAM,qCAAqC,OAAO,CAAC;AAC1D,eAAO,MAAM,iCAAiC,QAAQ,CAAC;AACvD,eAAO,MAAM,kCAAkC,QAAQ,CAAC;AACxD,eAAO,MAAM,mBAAmB,QAAQ,CAAC;AACzC,eAAO,MAAM,yBAAyB,QAAQ,CAAC;AAC/C,eAAO,MAAM,0BAA0B,OAAO,CAAC;AAC/C,eAAO,MAAM,sCAAsC,MAAM,CAAC;AAC1D,eAAO,MAAM,kDAAkD,MAAM,CAAC;AAEtE,eAAO,MAAM,4BAA4B,2DAA2D,CAAC;AAGrG,oBAAY,kBAAkB;IAC1B,KAAK,yFAAyF;IAC9F,WAAW,+DAA+D;IAC1E,kBAAkB,2EAA2E;IAC7F,oBAAoB,4EAA4E;CACnG;AAED,0BAAkB,qBAAqB;IACnC,YAAY,gBAAgB;IAC5B,QAAQ,aAAa;IACrB,OAAO,YAAY;CACtB;AACD,0BAAkB,sBAAsB;IACpC,KAAK,eAAe;IACpB,KAAK,aAAa;IAClB,KAAK,eAAe;IACpB,KAAK,YAAY;CACpB;AAED,eAAO,MAAM,mBAAmB;;;;;;;;CAQ/B,CAAC;AAEF,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmB7B,CAAC;AAEF,eAAO,MAAM,mBAAmB;;;;;CAK/B,CAAC;AAEF,eAAO,MAAM,4BAA4B,yEAAyE,CAAC;AAEnH,oBAAY,oBAAoB;IAC5B,iBAAiB,sBAAsB;IACvC,gBAAgB,qBAAqB;IACrC,WAAW,gBAAgB;IAC3B,cAAc,mBAAmB;IACjC,+BAA+B,oCAAoC;IACnE,cAAc,mBAAmB;IACjC,oBAAoB,yBAAyB;IAC7C,sBAAsB,2BAA2B;IACjD,uBAAuB,4BAA4B;IACnD,uBAAuB,4BAA4B;IACnD,mBAAmB,wBAAwB;IAC3C,wBAAwB,6BAA6B;IACrD,eAAe,oBAAoB;IACnC,oBAAoB,yBAAyB;IAC7C,sBAAsB,2BAA2B;IACjD,wBAAwB,6BAA6B;IACrD,yBAAyB,8BAA8B;IACvD,iBAAiB,sBAAsB;IACvC,wBAAwB,6BAA6B;IACrD,mBAAmB,wBAAwB;IAC3C,kBAAkB,uBAAuB;IACzC,8BAA8B,mCAAmC;IACjE,kBAAkB,uBAAuB;IACzC,6BAA6B,kCAAkC;IAC/D,kCAAkC,uCAAuC;IACzE,gCAAgC,qCAAqC;IACrE,sBAAsB,2BAA2B;IACjD,yBAAyB,8BAA8B;IACvD,cAAc,mBAAmB;IACjC,eAAe,oBAAoB;IACnC,iBAAiB,sBAAsB;IACvC,0BAA0B,+BAA+B;CAC5D;AAED,eAAO,MAAM,gBAAgB,EAAE,UAiF9B,CAAC;AAEF,MAAM,WAAW,UAAU;IACvB,iBAAiB,EAAE,mBAAmB,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC;IAC9D,WAAW,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;IACnC,kBAAkB,EAAE,OAAO,CAAC;IAC5B,QAAQ,EAAE,OAAO,CAAC;IAClB,kBAAkB,EAAE,OAAO,CAAC;IAC5B,aAAa,EAAE,aAAa,EAAE,CAAC;IAC/B,4BAA4B,EAAE,QAAQ,EAAE,CAAC;IACzC,gBAAgB,EAAE,OAAO,CAAC;IAC1B,eAAe,EAAE,OAAO,CAAC;IACzB,eAAe,EAAE,OAAO,CAAC;IACzB,cAAc,EAAE,OAAO,CAAC;IACxB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,wBAAwB,EAAE,MAAM,GAAG,GAAG,CAAC,OAAO,CAAC;IAC/C,oBAAoB,EAAE,OAAO,CAAC;IAC9B,uBAAuB,EAAE,OAAO,CAAC;IACjC,yBAAyB,EAAE,OAAO,CAAC;IACnC,uBAAuB,EAAE,OAAO,CAAC;IACjC,aAAa,EAAE,OAAO,CAAC;IACvB,UAAU,EAAE,WAAW,CAAC;IACxB,YAAY,EAAE,OAAO,CAAC;IACtB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,wBAAwB,EAAE,MAAM,CAAC;IACjC,sBAAsB,EAAE,mBAAmB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC/D,aAAa,EAAE,mBAAmB,CAAC,QAAQ,CAAC,CAAC;IAC7C,gBAAgB,EAAE,mBAAmB,CAAC,UAAU,EAAE,CAAC,CAAC;IACpD,sBAAsB,EAAE,mBAAmB,CAAC,UAAU,EAAE,CAAC,CAAC;IAC1D,gBAAgB,EAAE,mBAAmB,CAAC,OAAO,CAAC,0BAA0B,EAAE,CAAC,CAAC,CAAC;IAC7E,kBAAkB,EAAE,mBAAmB,CAAC,YAAY,EAAE,CAAC,CAAC;IACxD,sBAAsB,EAAE,OAAO,CAAC;IAChC,kBAAkB,EAAE,OAAO,CAAC;IAC5B,cAAc,EAAE,OAAO,CAAC;IACxB,gBAAgB,EAAE,SAAS,CAAC;IAC5B,0BAA0B,EAAE,OAAO,CAAC;IACpC,qBAAqB,EAAE,OAAO,CAAC;IAC/B,oCAAoC,EAAE,OAAO,CAAC;IAC9C,sCAAsC,EAAE,OAAO,CAAC;IAChD,eAAe,EAAE,mBAAmB,CAAC,gBAAgB,EAAE,CAAC,CAAC;IACzD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,0BAA0B,EAAE,OAAO,CAAC;IACpC,oBAAoB,CAAC,EAAE,MAAM,CAAC;CACjC;AAED,MAAM,WAAW,sBAAuB,SAAQ,UAAU;CAAG;AAC7D,oBAAY,eAAe,GAAG,OAAO,CAAC,oBAAoB,EAAE,sBAAsB,CAAC,CAAC;AACpF,oBAAY,uBAAuB,GAAG,QAAQ,CAAC,eAAe,CAAC,CAAC;AAEhE,eAAO,MAAM,qCAAqC,+CAA+C,CAAC;AAClG,eAAO,MAAM,yCAAyC,+CAA+C,CAAC"}
@@ -93,6 +93,7 @@ export var CaseReducerConstants;
93
93
  CaseReducerConstants["getCustomEmail"] = "getCustomEmail";
94
94
  CaseReducerConstants["updateEmailList"] = "updateEmailList";
95
95
  CaseReducerConstants["getVersionDetails"] = "getVersionDetails";
96
+ CaseReducerConstants["caseCreation500ErrorStatus"] = "caseCreation500ErrorStatus";
96
97
  })(CaseReducerConstants || (CaseReducerConstants = {}));
97
98
  export const initialCaseState = {
98
99
  isCreatingCase: false,
@@ -136,6 +137,7 @@ export const initialCaseState = {
136
137
  notes: '',
137
138
  noClusterIdReason: '',
138
139
  noClusterIdReasonExplanation: '',
140
+ openshiftClusterVersion: '',
139
141
  },
140
142
  customerEscalation: false,
141
143
  isClosed: false,
@@ -172,6 +174,8 @@ export const initialCaseState = {
172
174
  isFetchingSelectedNotificationContacts: true,
173
175
  versionsDetails: getApiResourceObject([]),
174
176
  v3ClusterName: '',
177
+ caseCreation500ErrorStatus: false,
178
+ openshiftDisplayName: '',
175
179
  };
176
180
  export const ORG_ADMIN_SEND_NOTIFCATION_KBASE_LINK = 'https://access.redhat.com/articles/5967811';
177
181
  export const NON_ORG_ADMIN_SEND_NOTIFCATION_KBASE_LINK = 'https://access.redhat.com/articles/5967831';
@@ -12,6 +12,18 @@ export declare const setCaseDetails: (dispatch: CaseReducerDispatchType, caseSta
12
12
  export declare const setCaseState: (dispatch: CaseReducerDispatchType, caseState: Partial<ICaseState>) => void;
13
13
  export declare const setNotifiedUser: (dispatch: CaseReducerDispatchType, selectedNotificationContacts: IContact[]) => void;
14
14
  export declare const submitCase: (dispatch: CaseReducerDispatchType, caseDetails: ICaseState, sessionItem: ISessionItem, isCaseCreate: boolean, errorMessage500: string | JSX.Element) => Promise<void>;
15
+ /**
16
+ * Update case details if there is HTTP 500 error while submitting case
17
+ * @param dispatch CaseReducerDispatchType
18
+ * @param error Error
19
+ */
20
+ export declare const updateCaseCreationErrorStatusOnError: (dispatch: CaseReducerDispatchType, error: any) => void;
21
+ /**
22
+ * Update `caseCreation500ErrorStatus` status
23
+ * @param dispatch CaseReducerDispatchType
24
+ * @param errorStatus Boolean
25
+ */
26
+ export declare const updateCaseCreationErrorStatus: (dispatch: CaseReducerDispatchType, errorStatus: boolean) => void;
15
27
  export declare const postCaseCreationProcessing: (dispatch: CaseReducerDispatchType, caseNumber: string, caseDetails: ICaseState) => Promise<void>;
16
28
  export declare const postCepDetails: (dispatch: CaseReducerDispatchType, caseNumber: string, cepDetails: ICepDetails) => Promise<void>;
17
29
  export declare const setCaseRecommendations: (dispatch: CaseReducerDispatchType, docs: ISolrRecommendation[], oldRecommendations: ICaseResourceLink[]) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"CaseReducer.d.ts","sourceRoot":"","sources":["../../../src/reducers/CaseReducer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CaseReducer.d.ts","sourceRoot":"","sources":["../../../src/reducers/CaseReducer.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,YAAY,EAAE,MAAM,qDAAqD,CAAC;AACnF,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,yCAAyC,CAAC;AAEtH,OAAO,EAAE,QAAQ,EAAE,MAAM,wCAAwC,CAAC;AAClE,OAAO,EAAE,0BAA0B,EAA+B,MAAM,qCAAqC,CAAC;AAC9G,OAAO,EAAE,QAAQ,EAAE,MAAM,wCAAwC,CAAC;AAClE,OAAO,EAAE,mBAAmB,EAAE,MAAM,0CAA0C,CAAC;AAE/E,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AASxD,OAAO,EAEH,uBAAuB,EAEvB,UAAU,EAEb,MAAM,mBAAmB,CAAC;AAU3B,eAAO,MAAM,WAAW,WAAY,UAAU,UAAU,GAAG,KAAG,UA6L7D,CAAC;AAGF,eAAO,MAAM,cAAc,aAAc,uBAAuB,aAAa,QAAQ,YAAY,CAAC,SAEjG,CAAC;AAEF,eAAO,MAAM,YAAY,aAAc,uBAAuB,aAAa,QAAQ,UAAU,CAAC,SAE7F,CAAC;AAEF,eAAO,MAAM,eAAe,aAAc,uBAAuB,gCAAgC,QAAQ,EAAE,SAK1G,CAAC;AAEF,eAAO,MAAM,UAAU,aACT,uBAAuB,eACpB,UAAU,eACV,YAAY,gBACX,OAAO,mBACJ,MAAM,GAAG,WAAW,kBAoBxC,CAAC;AACF;;;;GAIG;AACH,eAAO,MAAM,oCAAoC,aAAc,uBAAuB,qBAUrF,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,6BAA6B,aAAc,uBAAuB,eAAe,OAAO,SAOpG,CAAC;AAEF,eAAO,MAAM,0BAA0B,aACzB,uBAAuB,cACrB,MAAM,eACL,UAAU,kBAG1B,CAAC;AAEF,eAAO,MAAM,cAAc,aACb,uBAAuB,cACrB,MAAM,cACN,WAAW,kBAoB1B,CAAC;AAEF,eAAO,MAAM,sBAAsB,aACrB,uBAAuB,QAC3B,mBAAmB,EAAE,sBACP,iBAAiB,EAAE,SAO1C,CAAC;AAEF,eAAO,MAAM,mBAAmB,aAAoB,uBAAuB,WAAW,MAAM,eAAe,MAAM,kBAYhH,CAAC;AAEF,eAAO,MAAM,kBAAkB,aACjB,uBAAuB,cACrB,MAAM,eACL,QAAQ,UAAU,CAAC,kBAmBnC,CAAC;AAEF,eAAO,MAAM,mBAAmB,aAClB,uBAAuB,cACrB,MAAM,gBACJ,MAAM,EAAE,kBAoBzB,CAAC;AAEF,eAAO,MAAM,mBAAmB,aAClB,uBAAuB,cACrB,MAAM,cACN,QAAQ,EAAE,kBAmBzB,CAAC;AAEF,eAAO,MAAM,oBAAoB,aAAc,uBAAuB,SASrE,CAAC;AAEF,eAAO,MAAM,oBAAoB,aACnB,uBAAuB,iBAClB,MAAM,0DAEA,QAAQ,QAAQ,CAAC,kBA8CzC,CAAC;AAEF,eAAO,MAAM,YAAY,aACX,uBAAuB,SAC1B,QAAQ,WACN,MAAM,yBACQ,WAAW,4BACR,WAAW,2DAEV,MAAM,GAAG,SAAS,kBAmChD,CAAC;AA8BF,eAAO,MAAM,qBAAqB,aACpB,uBAAuB,sBACb,MAAM,8CAEZ,WAAW,6BACE,MAAM,GAAG,SAAS,kBAyBhD,CAAC;AAIF,eAAO,MAAM,qBAAqB,aACpB,uBAAuB,eACpB,YAAY,6BACE,MAAM,uBACZ,QAAQ,wBACR,QAAQ,QAAQ,CAAC,kBAiDzC,CAAC;AAmCF,eAAO,MAAM,gBAAgB,aACf,uBAAuB,cACrB,MAAM,8DAGH,QAAQ,YAAY,CAAC,kBAkGvC,CAAC;AAEF,eAAO,MAAM,iBAAiB,aAChB,uBAAuB,cACrB,MAAM,eACL,QAAQ,YAAY,CAAC,mBACjB,OAAO,mBAiB3B,CAAC;AAEF,eAAO,MAAM,oCAAoC,aACnC,uBAAuB,SAC1B,aAAa,EAAE,gBACR,MAAM,kBAmCvB,CAAC;AAEF,eAAO,MAAM,oCAAoC,aACnC,uBAAuB,yEAInB,MAAM,kBACJ,MAAM,kBAgFzB,CAAC;AAEF,eAAO,MAAM,yCAAyC,aACxC,uBAAuB,cACrB,OAAO,iBACJ,MAAM,SAMxB,CAAC;AAIF,eAAO,MAAM,yBAAyB,aACxB,uBAAuB,iBAClB,MAAM,eACR,MAAM,sBACC,QAAQ,kBA6B/B,CAAC;AAEF,wBAAsB,2BAA2B,CAAC,QAAQ,EAAE,uBAAuB,EAAE,UAAU,EAAE,MAAM,iBAmBtG;AAGD,wBAAgB,oBAAoB,CAChC,QAAQ,EAAE,uBAAuB,EACjC,KAAK,EAAE,MAAM,EACb,gBAAgB,EAAE,mBAAmB,CAAC,OAAO,CAAC,0BAA0B,EAAE,CAAC,CAAC,EAC5E,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,0BAA0B,EAAE,QAO5D;AAED,wBAAsB,kBAAkB,CAAC,QAAQ,EAAE,uBAAuB,EAAE,OAAO,EAAE,MAAM,iBAiB1F;AAED,eAAO,MAAM,kBAAkB,aAAc,uBAAuB,QAAQ,OAAO,SAKlF,CAAC"}
@@ -54,7 +54,7 @@ export const caseReducer = (pState, action) => {
54
54
  return Object.assign(Object.assign({}, pState), { caseDetails: Object.assign(Object.assign({}, pState.caseDetails), { caseNumber: null }), isCreatingCase: true, caseCreationError: false, caseCreationErrorMessage: '' });
55
55
  }
56
56
  case CaseReducerConstants.caseCreated: {
57
- return Object.assign(Object.assign({}, pState), { caseDetails: Object.assign(Object.assign({}, pState.caseDetails), action.payload.caseDetails), isCreatingCase: false, caseCreationError: false, caseCreationErrorMessage: '' });
57
+ return Object.assign(Object.assign({}, pState), { caseDetails: Object.assign(Object.assign({}, pState.caseDetails), action.payload.caseDetails), isCreatingCase: false, caseCreationError: false, caseCreationErrorMessage: '', caseCreation500ErrorStatus: false });
58
58
  }
59
59
  case CaseReducerConstants.setCaseCreationError: {
60
60
  return Object.assign(Object.assign({}, pState), { isCreatingCase: false, caseCreationError: true, caseCreationErrorMessage: action.payload.caseCreationErrorMessage });
@@ -127,6 +127,9 @@ export const caseReducer = (pState, action) => {
127
127
  case CaseReducerConstants.getVersionDetails: {
128
128
  return Object.assign(Object.assign({}, pState), { versionsDetails: action.payload.versionsDetails });
129
129
  }
130
+ case CaseReducerConstants.caseCreation500ErrorStatus: {
131
+ return Object.assign(Object.assign({}, pState), { caseCreation500ErrorStatus: action.payload.caseCreation500ErrorStatus });
132
+ }
130
133
  default: {
131
134
  return pState;
132
135
  }
@@ -155,12 +158,43 @@ export const submitCase = (dispatch, caseDetails, sessionItem, isCaseCreate, err
155
158
  }
156
159
  catch (error) {
157
160
  const errorMessage = formattedApiErrorMessage(error, { '500': { message: errorMessage500 } });
161
+ // Set `caseCreationError` as true if there is HTTP 500 error
162
+ updateCaseCreationErrorStatusOnError(dispatch, error);
158
163
  dispatch({
159
164
  type: CaseReducerConstants.setCaseCreationError,
160
165
  payload: { caseCreationErrorMessage: errorMessage },
161
166
  });
162
167
  }
163
168
  });
169
+ /**
170
+ * Update case details if there is HTTP 500 error while submitting case
171
+ * @param dispatch CaseReducerDispatchType
172
+ * @param error Error
173
+ */
174
+ export const updateCaseCreationErrorStatusOnError = (dispatch, error) => {
175
+ const errorCode = parseInt((error === null || error === void 0 ? void 0 : error.code) || (error === null || error === void 0 ? void 0 : error.status)) || '';
176
+ if (errorCode === 500) {
177
+ dispatch({
178
+ type: CaseReducerConstants.caseCreation500ErrorStatus,
179
+ payload: {
180
+ caseCreation500ErrorStatus: true,
181
+ },
182
+ });
183
+ }
184
+ };
185
+ /**
186
+ * Update `caseCreation500ErrorStatus` status
187
+ * @param dispatch CaseReducerDispatchType
188
+ * @param errorStatus Boolean
189
+ */
190
+ export const updateCaseCreationErrorStatus = (dispatch, errorStatus) => {
191
+ dispatch({
192
+ type: CaseReducerConstants.caseCreation500ErrorStatus,
193
+ payload: {
194
+ caseCreation500ErrorStatus: errorStatus,
195
+ },
196
+ });
197
+ };
164
198
  export const postCaseCreationProcessing = (dispatch, caseNumber, caseDetails) => __awaiter(void 0, void 0, void 0, function* () {
165
199
  caseDetails.caseDetails.cep === true && postCepDetails(dispatch, caseNumber, caseDetails.cepDetails);
166
200
  });
@@ -1,4 +1,4 @@
1
- import { IClusterRecommendation } from '@cee-eng/hydrajs/@types/api/pcm/preCaseDiagnostics';
1
+ import { IClusterRecommendation, IClusterRecommendationsResult } from '@cee-eng/hydrajs/@types/api/pcm/preCaseDiagnostics';
2
2
  import { IAction, IApiResponseDetails } from '@rh-support/types/shared';
3
3
  export declare enum RulesReducerConstants {
4
4
  requestClusterRecommendations = "requestClusterRecommendations",
@@ -11,11 +11,14 @@ export declare const initialClusterRecommendations: IApiResponseDetails<ICluster
11
11
  export interface IInitialClusterRecommendationsStateType {
12
12
  clusterRecommendations: IApiResponseDetails<IClusterRecommendation[]>;
13
13
  isClusterRecommendationsModalOpen: boolean;
14
+ clusterRecommendationsCache: {
15
+ [key: string]: IClusterRecommendationsResult;
16
+ };
14
17
  }
15
18
  export declare const initialState: IInitialClusterRecommendationsStateType;
16
19
  export declare const clusterRecommendationsReducer: (state: IInitialClusterRecommendationsStateType, action: IActionType) => IInitialClusterRecommendationsStateType;
17
20
  export declare const resetClusterRecommendations: (dispatch: ClusterRecommendationsDispatchType) => void;
18
- export declare const fetchClusterRecommendations: (dispatch: ClusterRecommendationsDispatchType, clusterId: string) => Promise<void>;
21
+ export declare const fetchClusterRecommendations: (dispatch: ClusterRecommendationsDispatchType, clusterId: string, clusterRecommendationsCache: any) => Promise<void>;
19
22
  export declare const toggleClusterRecommendationModal: (dispatch: ClusterRecommendationsDispatchType, newModalVisibilityValue: boolean) => void;
20
23
  export {};
21
24
  //# sourceMappingURL=ClusterRecommendationsReducer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ClusterRecommendationsReducer.d.ts","sourceRoot":"","sources":["../../../src/reducers/ClusterRecommendationsReducer.ts"],"names":[],"mappings":"AACA,OAAO,EACH,sBAAsB,EAEzB,MAAM,oDAAoD,CAAC;AAC5D,OAAO,EAAE,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAGxE,oBAAY,qBAAqB;IAC7B,6BAA6B,kCAAkC;IAC/D,2BAA2B,gCAAgC;IAC3D,gCAAgC,qCAAqC;CACxE;AAED,aAAK,WAAW,GAAG,OAAO,CAAC,qBAAqB,EAAE,uCAAuC,CAAC,CAAC;AAC3F,oBAAY,kCAAkC,GAAG,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,CAAC;AAE9E,eAAO,MAAM,6BAA6B,EAAE,mBAAmB,CAAC,sBAAsB,EAAE,CAA4B,CAAC;AAErH,MAAM,WAAW,uCAAuC;IACpD,sBAAsB,EAAE,mBAAmB,CAAC,sBAAsB,EAAE,CAAC,CAAC;IACtE,iCAAiC,EAAE,OAAO,CAAC;CAC9C;AAED,eAAO,MAAM,YAAY,EAAE,uCAG1B,CAAC;AAEF,eAAO,MAAM,6BAA6B,UAC/B,uCAAuC,0BAE/C,uCAgBF,CAAC;AAGF,eAAO,MAAM,2BAA2B,aAAc,kCAAkC,SAEvF,CAAC;AACF,eAAO,MAAM,2BAA2B,aAAoB,kCAAkC,aAAa,MAAM,kBAyBhH,CAAC;AACF,eAAO,MAAM,gCAAgC,aAC/B,kCAAkC,2BACnB,OAAO,SAMnC,CAAC"}
1
+ {"version":3,"file":"ClusterRecommendationsReducer.d.ts","sourceRoot":"","sources":["../../../src/reducers/ClusterRecommendationsReducer.ts"],"names":[],"mappings":"AACA,OAAO,EACH,sBAAsB,EACtB,6BAA6B,EAChC,MAAM,oDAAoD,CAAC;AAC5D,OAAO,EAAE,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAGxE,oBAAY,qBAAqB;IAC7B,6BAA6B,kCAAkC;IAC/D,2BAA2B,gCAAgC;IAC3D,gCAAgC,qCAAqC;CACxE;AAED,aAAK,WAAW,GAAG,OAAO,CAAC,qBAAqB,EAAE,uCAAuC,CAAC,CAAC;AAC3F,oBAAY,kCAAkC,GAAG,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,CAAC;AAE9E,eAAO,MAAM,6BAA6B,EAAE,mBAAmB,CAAC,sBAAsB,EAAE,CAA4B,CAAC;AAErH,MAAM,WAAW,uCAAuC;IACpD,sBAAsB,EAAE,mBAAmB,CAAC,sBAAsB,EAAE,CAAC,CAAC;IACtE,iCAAiC,EAAE,OAAO,CAAC;IAC3C,2BAA2B,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,6BAA6B,CAAA;KAAE,CAAC;CACjF;AAED,eAAO,MAAM,YAAY,EAAE,uCAI1B,CAAC;AAEF,eAAO,MAAM,6BAA6B,UAC/B,uCAAuC,0BAE/C,uCAmBF,CAAC;AAGF,eAAO,MAAM,2BAA2B,aAAc,kCAAkC,SAEvF,CAAC;AACF,eAAO,MAAM,2BAA2B,aAC1B,kCAAkC,aACjC,MAAM,oDAqCpB,CAAC;AACF,eAAO,MAAM,gCAAgC,aAC/B,kCAAkC,2BACnB,OAAO,SAMnC,CAAC"}
@@ -19,18 +19,19 @@ export const initialClusterRecommendations = getApiResourceObject([]);
19
19
  export const initialState = {
20
20
  clusterRecommendations: initialClusterRecommendations,
21
21
  isClusterRecommendationsModalOpen: false,
22
+ clusterRecommendationsCache: {},
22
23
  };
23
24
  export const clusterRecommendationsReducer = (state, action) => {
24
25
  switch (action.type) {
25
26
  case RulesReducerConstants.requestClusterRecommendations: {
26
- return Object.assign(Object.assign({}, state), { clusterRecommendations: action.payload.clusterRecommendations });
27
+ return Object.assign(Object.assign({}, state), action.payload);
27
28
  }
28
29
  // used for reseting the rules when reseting on a new troubleshoot issue.
29
30
  case RulesReducerConstants.resetClusterRecommendations: {
30
31
  return Object.assign(Object.assign({}, state), { clusterRecommendations: initialClusterRecommendations });
31
32
  }
32
33
  case RulesReducerConstants.toggleClusterRecommendationModal: {
33
- return Object.assign(Object.assign({}, state), { isClusterRecommendationsModalOpen: action.payload.isClusterRecommendationsModalOpen });
34
+ return Object.assign(Object.assign({}, state), action.payload);
34
35
  }
35
36
  default: {
36
37
  return state;
@@ -41,27 +42,39 @@ export const clusterRecommendationsReducer = (state, action) => {
41
42
  export const resetClusterRecommendations = (dispatch) => {
42
43
  dispatch({ type: RulesReducerConstants.resetClusterRecommendations });
43
44
  };
44
- export const fetchClusterRecommendations = (dispatch, clusterId) => __awaiter(void 0, void 0, void 0, function* () {
45
+ export const fetchClusterRecommendations = (dispatch, clusterId, clusterRecommendationsCache) => __awaiter(void 0, void 0, void 0, function* () {
45
46
  var _a;
46
47
  dispatch({
47
48
  type: RulesReducerConstants.requestClusterRecommendations,
48
49
  payload: {
49
50
  clusterRecommendations: getApiResourceObject([], true),
51
+ clusterRecommendationsCache,
50
52
  },
51
53
  });
52
54
  try {
53
- const clusterInsight = yield pcm.preCase.diag.getClusterRecommendations(clusterId);
55
+ let clusterInsight;
56
+ if (clusterRecommendationsCache[clusterId]) {
57
+ clusterInsight = clusterRecommendationsCache[clusterId];
58
+ }
59
+ else {
60
+ clusterInsight = yield pcm.preCase.diag.getClusterRecommendations(clusterId);
61
+ clusterRecommendationsCache[clusterId] = clusterInsight;
62
+ }
54
63
  const rules = ((_a = clusterInsight === null || clusterInsight === void 0 ? void 0 : clusterInsight.report) === null || _a === void 0 ? void 0 : _a.data) || [];
55
64
  dispatch({
56
65
  type: RulesReducerConstants.requestClusterRecommendations,
57
- payload: { clusterRecommendations: getApiResourceObject(rules) },
66
+ payload: { clusterRecommendations: getApiResourceObject(rules), clusterRecommendationsCache },
58
67
  });
59
68
  }
60
69
  catch (e) {
61
70
  console.log(e.message);
71
+ clusterRecommendationsCache[clusterId] = {};
62
72
  dispatch({
63
73
  type: RulesReducerConstants.requestClusterRecommendations,
64
- payload: { clusterRecommendations: getApiResourceObject([], false, true, e.message) },
74
+ payload: {
75
+ clusterRecommendations: getApiResourceObject([], false, true, e.message),
76
+ clusterRecommendationsCache,
77
+ },
65
78
  });
66
79
  }
67
80
  });
@@ -3,6 +3,7 @@ import { ICasePayload } from '@cee-eng/hydrajs/@types/api/public/case';
3
3
  import { ISolrRecommendation } from '@cee-eng/hydrajs/@types/models/solr/solr';
4
4
  import { ITopContent, ITopContentList } from '@cee-eng/hydrajs/@types/models/topContent/topContentModel';
5
5
  import { IAction, IApiCreateState, IApiResponseDetails, IApiUpdateState } from '@rh-support/types/shared';
6
+ import { CaseReducerDispatchType } from './CaseConstNTypes';
6
7
  export interface IPrevSessions {
7
8
  [sessionId: string]: ISessionItem;
8
9
  }
@@ -26,6 +27,7 @@ export interface ISessionRestoreState {
26
27
  sessionUpdationStatus: IApiUpdateState;
27
28
  sessionResourceTracking: ISessionResourcesTracking;
28
29
  referrerUrl: string;
30
+ sessionOfCaseCreationError: ISessionItem | null;
29
31
  }
30
32
  export interface ISessionRestorePayloadType extends ISessionRestoreState {
31
33
  sessionItem: ISessionItem;
@@ -46,12 +48,13 @@ export declare enum SessionRestoreConstants {
46
48
  setSessionCreationState = "setSessionCreationState",
47
49
  setSessionUpdationState = "setSessionUpdationState",
48
50
  updateSessionResourceTracking = "updateSessionResourceTracking",
49
- updatePreviousSessions = "updatePreviousSessions"
51
+ updatePreviousSessions = "updatePreviousSessions",
52
+ updateSessionOfCaseCreationError = "updateSessionOfCaseCreationError"
50
53
  }
51
54
  export declare const initialSessionRestoreState: ISessionRestoreState;
52
55
  export declare type SessionRestoreDispatchType = (value: IActionType) => void;
53
56
  export declare const sessionRestoreReducer: (state: ISessionRestoreState, action: IActionType) => ISessionRestoreState;
54
- export declare const loadPreviousSessions: (dispatch: SessionReducerDispatchType) => Promise<void>;
57
+ export declare const loadPreviousSessions: (dispatch: SessionReducerDispatchType, caseDispatch: CaseReducerDispatchType) => Promise<void>;
55
58
  export declare const createSession: (dispatch: SessionReducerDispatchType, sessionDetails: ISessionDetails, session: ISession) => Promise<void>;
56
59
  export declare const updateSession: (dispatch: SessionReducerDispatchType, sessionId: string, sessionDetails?: ISessionDetails, session?: ISession) => Promise<void>;
57
60
  export declare const updateActiveSessionId: (dispatch: SessionReducerDispatchType, activeSessionId: string) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"SessionRestoreReducer.d.ts","sourceRoot":"","sources":["../../../src/reducers/SessionRestoreReducer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SessionRestoreReducer.d.ts","sourceRoot":"","sources":["../../../src/reducers/SessionRestoreReducer.ts"],"names":[],"mappings":"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"}