@rh-support/troubleshoot 2.6.304 → 2.6.306

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 (32) hide show
  1. package/lib/esm/components/AccountInfo/AccountSelector.d.ts.map +1 -1
  2. package/lib/esm/components/AccountInfo/AccountSelector.js +11 -9
  3. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CaseOpenshiftClusterId/CaseOpenshiftClusterId.d.ts.map +1 -1
  4. package/lib/esm/components/CaseEditView/Tabs/CaseDetails/CaseOpenshiftClusterId/CaseOpenshiftClusterId.js +7 -18
  5. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/CaseAttachment.d.ts.map +1 -1
  6. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/PostComment.d.ts.map +1 -1
  7. package/lib/esm/components/CaseEditView/Tabs/CaseDiscussion/PostComment.js +1 -1
  8. package/lib/esm/components/CaseInformation/CaseInformation.js +1 -1
  9. package/lib/esm/components/CaseManagement/OpenShiftClusterId.d.ts.map +1 -1
  10. package/lib/esm/components/CaseManagement/OpenShiftClusterId.js +12 -20
  11. package/lib/esm/components/CaseManagement/OpenshiftDropdownV4.d.ts.map +1 -1
  12. package/lib/esm/components/CaseManagement/OpenshiftDropdownV4.js +7 -16
  13. package/lib/esm/components/ProductSelector/ProductNotEntitledModal.d.ts +8 -0
  14. package/lib/esm/components/ProductSelector/ProductNotEntitledModal.d.ts.map +1 -0
  15. package/lib/esm/components/ProductSelector/ProductNotEntitledModal.js +11 -0
  16. package/lib/esm/components/shared/fileUpload/reducer/AttachmentHelper.d.ts.map +1 -1
  17. package/lib/esm/components/shared/fileUpload/reducer/AttachmentHelper.js +22 -9
  18. package/lib/esm/components/wizardLayout/GlobalTroubleshootEffects.d.ts.map +1 -1
  19. package/lib/esm/components/wizardLayout/GlobalTroubleshootEffects.js +55 -31
  20. package/lib/esm/components/wizardLayout/WizardLayout.d.ts.map +1 -1
  21. package/lib/esm/components/wizardLayout/WizardLayout.js +32 -3
  22. package/lib/esm/graphql/queries/getEscalationDetails.d.ts.map +1 -1
  23. package/lib/esm/graphql/queries/getEscalationDetails.js +7 -0
  24. package/lib/esm/reducers/CaseConstNTypes.d.ts +2 -0
  25. package/lib/esm/reducers/CaseConstNTypes.d.ts.map +1 -1
  26. package/lib/esm/reducers/CaseConstNTypes.js +2 -0
  27. package/lib/esm/reducers/CaseDetailsPageReducer.d.ts.map +1 -1
  28. package/lib/esm/reducers/CaseDetailsPageReducer.js +10 -6
  29. package/lib/esm/reducers/CaseHelpers.d.ts +2 -2
  30. package/lib/esm/reducers/CaseHelpers.d.ts.map +1 -1
  31. package/lib/esm/reducers/CaseHelpers.js +51 -51
  32. package/package.json +6 -6
@@ -1 +1 @@
1
- {"version":3,"file":"AccountSelector.d.ts","sourceRoot":"","sources":["../../../../src/components/AccountInfo/AccountSelector.tsx"],"names":[],"mappings":"AAAA,OAAO,2BAA2B,CAAC;AAOnC,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAK5D,OAAO,KAA0C,MAAM,OAAO,CAAC;AAS/D,UAAU,MAAO,SAAQ,gBAAgB;CAAG;AAE5C,eAAO,MAAM,YAAY,EAAE,MAG1B,CAAC;AAEF,iBAAS,eAAe,CAAC,KAAK,EAAE,MAAM,qBAmKrC;kBAnKQ,eAAe;;;AAuKxB,OAAO,EAAE,eAAe,EAAE,CAAC"}
1
+ {"version":3,"file":"AccountSelector.d.ts","sourceRoot":"","sources":["../../../../src/components/AccountInfo/AccountSelector.tsx"],"names":[],"mappings":"AAAA,OAAO,2BAA2B,CAAC;AAOnC,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAK5D,OAAO,KAA0C,MAAM,OAAO,CAAC;AAS/D,UAAU,MAAO,SAAQ,gBAAgB;CAAG;AAE5C,eAAO,MAAM,YAAY,EAAE,MAG1B,CAAC;AAEF,iBAAS,eAAe,CAAC,KAAK,EAAE,MAAM,qBAkKrC;kBAlKQ,eAAe;;;AAsKxB,OAAO,EAAE,eAAe,EAAE,CAAC"}
@@ -45,7 +45,7 @@ function AccountSelector(props) {
45
45
  const ability = useContext(AbilityContext);
46
46
  const canAccessManagedAccounts = ability.can(resourceActions.PATCH, resources.CASE_CREATE, CaseListFields.MANAGED_ACCOUNTS);
47
47
  const canBookmarkAccounts = ability.can(resourceActions.PATCH, resources.CASE_CREATE, CaseListFields.BOOKMARK_ACCOUNTS);
48
- // const canUseFindMyAccount = loggedInUserRights.data.isAccountDifferentFromLoggedInAccount(accountNumber!);
48
+ const canUseFindMyAccount = loggedInUserRights.data.isAccountDifferentFromLoggedInAccount(accountNumber);
49
49
  // Account Change Handler
50
50
  const onAccountChange = (account) => __awaiter(this, void 0, void 0, function* () {
51
51
  if (selectedAccountDetails.data.accountNumber === account.accountNumber)
@@ -66,13 +66,13 @@ function AccountSelector(props) {
66
66
  selection.accountNum &&
67
67
  onAccountChange({ accountNumber: selection.accountNum, name: selection.name });
68
68
  };
69
- // const onFindMyAccountClick = (event: React.MouseEvent<HTMLButtonElement, MouseEvent>) => {
70
- // !isEmpty(loggedInUserRights.data) &&
71
- // onAccountChange({
72
- // accountNumber: loggedInUserRights.data.getAccountNumber(),
73
- // name: loggedInUserRights.data.getAccountName(),
74
- // });
75
- // };
69
+ const onFindMyAccountClick = (event) => {
70
+ !isEmpty(loggedInUserRights.data) &&
71
+ onAccountChange({
72
+ accountNumber: loggedInUserRights.data.getAccountNumber(),
73
+ name: loggedInUserRights.data.getAccountName(),
74
+ });
75
+ };
76
76
  const selectedAccount = {
77
77
  name: selectedAccountDetails.data.name,
78
78
  accountNumber: selectedAccountDetails.data.accountNumber,
@@ -104,7 +104,9 @@ function AccountSelector(props) {
104
104
  React.createElement("label", { htmlFor: "account-selector" },
105
105
  React.createElement(Trans, null, "Account"),
106
106
  ' ',
107
- React.createElement("span", { className: "form-required", "aria-hidden": true }, "*"))),
107
+ React.createElement("span", { className: "form-required", "aria-hidden": true }, "*")),
108
+ canUseFindMyAccount && (React.createElement("button", { role: "link", className: "btn btn-link btn-app find-my-account pf-v6-u-ml-auto", onClick: onFindMyAccountClick, disabled: selectedAccountDetails.isFetching, "data-tracking-id": "get-support-find-my-account", type: "button" },
109
+ React.createElement(Trans, null, "Find my account")))),
108
110
  React.createElement("div", { className: "account-selector-wrapper" },
109
111
  React.createElement(AccountSelectorInternal, { selectedAccounts: [selectedAccount], canBookmarkAccount: canBookmarkAccounts, bookmarkedAccounts: bookmarkedGroupAccounts.data, id: "account-or-bookmark-selector", className: "account-selector", name: "account-or-bookmark-selector", placeholder: t(`Search for an account ${loggedInUserRights.data.isExternal() ? 'or select a bookmark' : ''} `), onSelect: onInternalAccountSelect, disabled: loggedInUserRights.data.isExternal() || selectedAccountDetails.isFetching, isInValid: isSelectedAccountSubscriptionAbused, restrictedOnSubscriptionAbuse: true })),
110
112
  canAccessManagedAccounts && !isEmpty(managedAccounts.data) && (React.createElement(ManagedAccountsDropdown, { className: "managed-account-selector pf-v6-u-mt-xl", onManagedAccountChange: onManagedAccountChange, managedAccounts: managedAccounts, selectedAccountNumber: accountNumber, disabled: selectedAccountDetails.isFetching })),
@@ -1 +1 @@
1
- {"version":3,"file":"CaseOpenshiftClusterId.d.ts","sourceRoot":"","sources":["../../../../../../../src/components/CaseEditView/Tabs/CaseDetails/CaseOpenshiftClusterId/CaseOpenshiftClusterId.tsx"],"names":[],"mappings":"AAQA,OAAO,KAA0C,MAAM,OAAO,CAAC;AAoB/D,wBAAgB,sBAAsB,sBAgUrC"}
1
+ {"version":3,"file":"CaseOpenshiftClusterId.d.ts","sourceRoot":"","sources":["../../../../../../../src/components/CaseEditView/Tabs/CaseDetails/CaseOpenshiftClusterId/CaseOpenshiftClusterId.tsx"],"names":[],"mappings":"AAQA,OAAO,KAA0C,MAAM,OAAO,CAAC;AAqB/D,wBAAgB,sBAAsB,sBAsTrC"}
@@ -21,7 +21,7 @@ import { useCaseUpdateErrorMessage } from '../../../../../hooks/useCaseUpdateErr
21
21
  import { setCaseDetails, updateCaseDetailsGraphQL } from '../../../../../reducers/CaseReducer';
22
22
  import { getIsClusterIdInvalid, isClusterIdEnabledForProduct, } from '../../../../../utils/caseOpenshiftClusterIdUtils';
23
23
  import { NoClusterIDReasonSelector } from '../../../../CaseManagement/NoClusterIDReasonSelector';
24
- import { discoverV4ClusterIdLink, isInvalidErrorMessage, v3Tov4TransitionLink, } from '../../../../CaseManagement/OpenShiftClusterId';
24
+ import { discoverV4ClusterIdLink, discoverV4ClusterIdLinkError, isInvalidErrorMessage, v3Tov4TransitionLink, } from '../../../../CaseManagement/OpenShiftClusterId';
25
25
  import { OpenshiftDropdownV4 } from '../../../../CaseManagement/OpenshiftDropdownV4';
26
26
  import { PDFContext } from '../../../PDFContainer';
27
27
  export function CaseOpenshiftClusterId() {
@@ -199,19 +199,11 @@ export function CaseOpenshiftClusterId() {
199
199
  "Your Cluster Name has been added to the description below. ",
200
200
  v3Tov4TransitionLink())) : (React.createElement(React.Fragment, null, v3Tov4TransitionLink()));
201
201
  const clusterIdDropdownFormInstructions = () => {
202
- // TODO: Re-enable empty cluster ID check when cluster ID is made mandatory again
203
- // const errorMessage = isClusterIdInvalid
204
- // ? isInvalidErrorMessage()
205
- // : isEmpty(openshiftClusterID) && isEmpty(selectedReason)
206
- // ? discoverV4ClusterIdLinkError()
207
- // : null;
208
- // TODO: Re-enable empty cluster ID check when cluster ID is made mandatory again
209
- // const errorMessage = isClusterIdInvalid
210
- // ? isInvalidErrorMessage()
211
- // : isEmpty(openshiftClusterID) && isEmpty(selectedReason)
212
- // ? discoverV4ClusterIdLinkError()
213
- // : null;
214
- const errorMessage = isClusterIdInvalid ? isInvalidErrorMessage() : null;
202
+ const errorMessage = isClusterIdInvalid
203
+ ? isInvalidErrorMessage()
204
+ : isEmpty(openshiftClusterID) && isEmpty(selectedReason)
205
+ ? discoverV4ClusterIdLinkError()
206
+ : null;
215
207
  const infoMessage = isDedicatedV3() ? v3Message() : discoverV4ClusterIdLink();
216
208
  return errorMessage ? errorMessage : infoMessage;
217
209
  };
@@ -262,10 +254,7 @@ export function CaseOpenshiftClusterId() {
262
254
  }
263
255
  else {
264
256
  return (React.createElement(React.Fragment, null,
265
- React.createElement(OpenshiftDropdownV4, { openshiftDisplayName: displayName, setOpenshiftDisplayName: onDisplayNameChange, openshiftClusterIDState: localOpenshiftClusterIDState || selectedReason, onClusterIdStateUpdate: onClusterIdSave, isClusterIdInvalid:
266
- // TODO: Re-enable empty check when cluster ID is made mandatory again
267
- // (isEmpty(localOpenshiftClusterIDState) && isEmpty(selectedReason)) ||
268
- isClusterIdInvalid, clusterIdDropdownFormInstructions: !isExportingPDF ? clusterIdDropdownFormInstructions() : undefined, onClusterClear: resetClusterData, isV3: product !== 'OpenShift Container Platform', isDisabled: isClusterIdUpdating, noClusterIdReasonExplanation: noClusterIdReasonExplanation }),
257
+ React.createElement(OpenshiftDropdownV4, { openshiftDisplayName: displayName, setOpenshiftDisplayName: onDisplayNameChange, openshiftClusterIDState: localOpenshiftClusterIDState || selectedReason, onClusterIdStateUpdate: onClusterIdSave, isClusterIdInvalid: (isEmpty(localOpenshiftClusterIDState) && isEmpty(selectedReason)) || isClusterIdInvalid, clusterIdDropdownFormInstructions: !isExportingPDF ? clusterIdDropdownFormInstructions() : undefined, onClusterClear: resetClusterData, isV3: product !== 'OpenShift Container Platform', isDisabled: isClusterIdUpdating, noClusterIdReasonExplanation: noClusterIdReasonExplanation }),
269
258
  noClusterIdReasonExplanation !== 'v3-cluster' &&
270
259
  (dontKnowSelected || noClusterIdReasonExplanation || noClusterIdReason) && (React.createElement(NoClusterIDReasonSelector, { noClusterIdReasonExplanation: noClusterIdReasonExplanation, noClusterIdReason: noClusterIdReason, onReasonInputBoxChanged: debounceFn, onReasonChange: onReasonChange, isInValid: isInVaidNoClusterIdReason, isCustomer: isCustomer, isDisabled: isReasonUpdating })),
271
260
  React.createElement(LoadingIndicator, { show: isClusterIdUpdating, size: "xs" })));
@@ -1 +1 @@
1
- {"version":3,"file":"CaseAttachment.d.ts","sourceRoot":"","sources":["../../../../../../src/components/CaseEditView/Tabs/CaseDiscussion/CaseAttachment.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,2CAA2C,CAAC;AAsBxE,OAAO,KAAuC,MAAM,OAAO,CAAC;AAS5D,UAAU,MAAM;IACZ,UAAU,EAAE,WAAW,CAAC;IACxB,kBAAkB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3C,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,gBAAgB,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,iBAAiB,EAAE,WAAW,KAAK,IAAI,CAAC;IACzE,eAAe,CAAC,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,IAAI,CAAC;IACjD,kBAAkB,EAAE,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;CAChH;AAED,QAAA,MAAM,cAAc,4EA4RlB,CAAC;AAEH,eAAe,cAAc,CAAC"}
1
+ {"version":3,"file":"CaseAttachment.d.ts","sourceRoot":"","sources":["../../../../../../src/components/CaseEditView/Tabs/CaseDiscussion/CaseAttachment.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,2CAA2C,CAAC;AAsBxE,OAAO,KAAuC,MAAM,OAAO,CAAC;AAS5D,UAAU,MAAM;IACZ,UAAU,EAAE,WAAW,CAAC;IACxB,kBAAkB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3C,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,gBAAgB,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,iBAAiB,EAAE,WAAW,KAAK,IAAI,CAAC;IACzE,eAAe,CAAC,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,IAAI,CAAC;IACjD,kBAAkB,EAAE,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;CAChH;AAED,QAAA,MAAM,cAAc,4EA8RlB,CAAC;AAEH,eAAe,cAAc,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"PostComment.d.ts","sourceRoot":"","sources":["../../../../../../src/components/CaseEditView/Tabs/CaseDiscussion/PostComment.tsx"],"names":[],"mappings":"AAaA,OAAO,KAA+D,MAAM,OAAO,CAAC;AAOpF,OAAO,EAAE,WAAW,EAAE,MAAM,+CAA+C,CAAC;AAkB5E,UAAU,MAAM;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACrC,iBAAiB,CAAC,EAAE,MAAM,IAAI,CAAC;IAC/B,kBAAkB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5C,cAAc,CAAC,EAAE,MAAM,IAAI,CAAC;IAC5B;;;;;OAKG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,cAAc,EAAE,WAAW,EAAE,CAAC;CACjC;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,qBAuaxC"}
1
+ {"version":3,"file":"PostComment.d.ts","sourceRoot":"","sources":["../../../../../../src/components/CaseEditView/Tabs/CaseDiscussion/PostComment.tsx"],"names":[],"mappings":"AAaA,OAAO,KAA+D,MAAM,OAAO,CAAC;AAOpF,OAAO,EAAE,WAAW,EAAE,MAAM,+CAA+C,CAAC;AAkB5E,UAAU,MAAM;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACrC,iBAAiB,CAAC,EAAE,MAAM,IAAI,CAAC;IAC/B,kBAAkB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5C,cAAc,CAAC,EAAE,MAAM,IAAI,CAAC;IAC5B;;;;;OAKG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,cAAc,EAAE,WAAW,EAAE,CAAC;CACjC;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,qBA2axC"}
@@ -306,5 +306,5 @@ export function PostComment(props) {
306
306
  React.createElement(Checkbox, { label: t('Private'), isChecked: !isPublic && canPostPrivateComments, onChange: handleCheckboxToggle, "aria-label": t('Private'), id: "private-comment", name: "private-comment", "data-tracking-id": "private-comment-checkbox" }))))),
307
307
  canAddAttachments && (React.createElement("div", Object.assign({}, getRootProps(), { className: "post-comment-dropzone" }),
308
308
  React.createElement("input", Object.assign({}, getInputProps())),
309
- React.createElement(FileUpload, { idToUploadTo: caseNumber, caseSalesforceId: caseSalesforceId, onUploadClick: onFileUploadClick, isSessionId: false, needsAnalyzing: false, autoUploadOnSelect: true, isPrivate: !isPublic })))));
309
+ React.createElement(FileUpload, { className: `file-upload-section ${hasSomeSelectedFilesLocal ? 'card card-white pf-v6-u-mt-lg pf-v6-u-p-lg' : ''}`, idToUploadTo: caseNumber, caseSalesforceId: caseSalesforceId, onUploadClick: onFileUploadClick, isSessionId: false, needsAnalyzing: false, autoUploadOnSelect: true, isPrivate: !isPublic, showDescriptionInfoMsg: true })))));
310
310
  }
@@ -20,7 +20,7 @@ export default function CaseInformation(props) {
20
20
  contactSSOName: state.caseDetails.contactSSOName,
21
21
  ownersCaseGroups: state.ownersCaseGroups,
22
22
  selectedAccountDetails: state.selectedAccountDetails,
23
- hasInvalidEntitlements: state.hasInvalidEntitlements,
23
+ hasInvalidEntitlements: false, // TODO: remove this once we have a proper entitlement check
24
24
  }), isEqual);
25
25
  const isMetadataLoading = () => {
26
26
  return !isMetadataLoadingError() && (loggedInUser.isFetching || selectedAccountDetails.isFetching);
@@ -1 +1 @@
1
- {"version":3,"file":"OpenShiftClusterId.d.ts","sourceRoot":"","sources":["../../../../src/components/CaseManagement/OpenShiftClusterId.tsx"],"names":[],"mappings":"AAKA,OAAO,KAA0C,MAAM,OAAO,CAAC;AAuB/D,eAAO,MAAM,oBAAoB,yBAShC,CAAC;AAEF,eAAO,MAAM,uBAAuB,yBAInC,CAAC;AAEF,eAAO,MAAM,4BAA4B,yBAYxC,CAAC;AAEF,eAAO,MAAM,qBAAqB,yBAIjC,CAAC;AAEF,UAAU,MAAM;IACZ,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,qBA8T/C"}
1
+ {"version":3,"file":"OpenShiftClusterId.d.ts","sourceRoot":"","sources":["../../../../src/components/CaseManagement/OpenShiftClusterId.tsx"],"names":[],"mappings":"AAKA,OAAO,KAA0C,MAAM,OAAO,CAAC;AAuB/D,eAAO,MAAM,oBAAoB,yBAShC,CAAC;AAEF,eAAO,MAAM,uBAAuB,yBAInC,CAAC;AAEF,eAAO,MAAM,4BAA4B,yBAYxC,CAAC;AAEF,eAAO,MAAM,qBAAqB,yBAIjC,CAAC;AAEF,UAAU,MAAM;IACZ,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,qBA2U/C"}
@@ -199,37 +199,31 @@ export function OpenShiftClusterId(props) {
199
199
  fetchClusterRecommendations(clusterRecommendationsDispatch, selectedId, clusterRecommendationsCache);
200
200
  };
201
201
  const clusterIdDropdownFormInstructions = () => {
202
- // TODO: Re-enable empty cluster ID check when cluster ID is made mandatory again
203
- // const errorMessage = isClusterIdInvalid
204
- // ? isInvalidErrorMessage()
205
- // : isEmpty(openshiftClusterID) && isEmpty(selectedReason)
206
- // ? discoverV4ClusterIdLinkError()
207
- // : null;
208
- // TODO: Re-enable empty cluster ID check when cluster ID is made mandatory again
209
- // const errorMessage = isClusterIdInvalid
210
- // ? isInvalidErrorMessage()
211
- // : isEmpty(openshiftClusterID) && isEmpty(selectedReason)
212
- // ? discoverV4ClusterIdLinkError()
213
- // : null;
214
- const errorMessage = isClusterIdInvalid ? isInvalidErrorMessage() : null;
202
+ const errorMessage = isClusterIdInvalid
203
+ ? isInvalidErrorMessage()
204
+ : isEmpty(openshiftClusterID) && isEmpty(selectedReason)
205
+ ? discoverV4ClusterIdLinkError()
206
+ : null;
215
207
  const infoMessage = v3Selected ? v3Tov4TransitionLink() : discoverV4ClusterIdLink();
216
208
  return isNextBtnClickedToShowValidationError && errorMessage ? errorMessage : infoMessage;
217
209
  };
218
- const onReasonExplanationInputBoxChanged = (noClusterIdReasonExplanation) => {
210
+ const onReasonExplanationInputBoxChanged = (explanation) => {
219
211
  if (noClusterIdReason === 'Other') {
220
- setCaseDetails(caseDispatch, { noClusterIdReasonExplanation: noClusterIdReasonExplanation });
212
+ const description = getUpdatedDescription(issue, environment, periodicityOfIssue, timeFramesAndUrgency, v3ClusterName, product, version, noClusterIdReason, explanation);
213
+ setCaseDetails(caseDispatch, { noClusterIdReasonExplanation: explanation, description });
221
214
  }
222
215
  };
223
216
  const v3ClusterNameInputBoxChanged = (v3Cluster) => {
224
217
  const v3ClusterName = product === 'OpenShift Container Platform' && version !== '3.11' && isEmpty(v3Cluster.trim())
225
218
  ? ''
226
219
  : v3Cluster;
227
- const description = getUpdatedDescription(issue, environment, periodicityOfIssue, timeFramesAndUrgency, v3ClusterName, product, version);
220
+ const description = getUpdatedDescription(issue, environment, periodicityOfIssue, timeFramesAndUrgency, v3ClusterName, product, version, noClusterIdReason, noClusterIdReasonExplanation);
228
221
  setCaseState(caseDispatch, { v3ClusterName });
229
222
  setCaseDetails(caseDispatch, { description });
230
223
  };
231
224
  const onReasonChange = (reason) => {
232
- setCaseDetails(caseDispatch, { noClusterIdReason: reason });
225
+ const description = getUpdatedDescription(issue, environment, periodicityOfIssue, timeFramesAndUrgency, v3ClusterName, product, version, reason, noClusterIdReasonExplanation);
226
+ setCaseDetails(caseDispatch, { noClusterIdReason: reason, description });
233
227
  };
234
228
  const isInVaidNoClusterIdReason = isNextBtnClickedToShowValidationError &&
235
229
  (isEmpty(noClusterIdReason) ||
@@ -240,9 +234,7 @@ export function OpenShiftClusterId(props) {
240
234
  return null;
241
235
  return (React.createElement("div", { className: `${props.className ? props.className : ''}` },
242
236
  !showV3TextBox && (React.createElement(OpenshiftDropdownV4, { openshiftDisplayName: openshiftDisplayName, openshiftClusterIDState: openshiftClusterID || selectedReason, onClusterIdStateUpdate: onClusterIdStateUpdate, isClusterIdInvalid: isNextBtnClickedToShowValidationError &&
243
- // TODO: Re-enable empty check when cluster ID is made mandatory again
244
- // ((isEmpty(openshiftClusterID) && isEmpty(selectedReason)) ||
245
- isClusterIdInvalid, clusterIdDropdownFormInstructions: clusterIdDropdownFormInstructions(), onClusterClear: resetClusterData, isV3: product !== 'OpenShift Container Platform' })),
237
+ ((isEmpty(openshiftClusterID) && isEmpty(selectedReason)) || isClusterIdInvalid), clusterIdDropdownFormInstructions: clusterIdDropdownFormInstructions(), onClusterClear: resetClusterData, isV3: product !== 'OpenShift Container Platform' })),
246
238
  noClusterIdReasonExplanation !== 'v3-cluster' && dontKnowSelected && !showV3TextBox && (React.createElement(NoClusterIDReasonSelector, { noClusterIdReasonExplanation: noClusterIdReasonExplanation, noClusterIdReason: noClusterIdReason, onReasonInputBoxChanged: onReasonExplanationInputBoxChanged, onReasonChange: onReasonChange, isInValid: isInVaidNoClusterIdReason, isCustomer: isCustomer })),
247
239
  (v3Selected || showV3TextBox) && (React.createElement(OpenShiftV3Inputbox, { v3ClusterName: v3ClusterName, onReasonInputBoxChanged: v3ClusterNameInputBoxChanged, isInValid: isEmpty(v3ClusterName.trim()) && isNextBtnClickedToShowValidationError, v3Selected: v3Selected }))));
248
240
  }
@@ -1 +1 @@
1
- {"version":3,"file":"OpenshiftDropdownV4.d.ts","sourceRoot":"","sources":["../../../../src/components/CaseManagement/OpenshiftDropdownV4.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAC;AAgB5E,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAI5D,OAAO,KAA2D,MAAM,OAAO,CAAC;AAOhF,UAAU,MAAO,SAAQ,gBAAgB;IACrC,uBAAuB,EAAE,MAAM,CAAC;IAChC,sBAAsB,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,oBAAoB,CAAC,EAAE,KAAK,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IACzF,kBAAkB,EAAE,OAAO,CAAC;IAC5B,iCAAiC,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC;IAChD,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,IAAI,EAAE,OAAO,CAAC;IACd,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,4BAA4B,CAAC,EAAE,MAAM,CAAC;IACtC,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,uBAAuB,CAAC,EAAE,CAAC,GAAG,KAAA,KAAK,IAAI,CAAC;CAC3C;AAsBD,iBAAS,mBAAmB,CAAC,KAAK,EAAE,MAAM,qBAwfzC;AAED,OAAO,EAAE,mBAAmB,EAAE,CAAC"}
1
+ {"version":3,"file":"OpenshiftDropdownV4.d.ts","sourceRoot":"","sources":["../../../../src/components/CaseManagement/OpenshiftDropdownV4.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAC;AAgB5E,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAI5D,OAAO,KAA2D,MAAM,OAAO,CAAC;AAOhF,UAAU,MAAO,SAAQ,gBAAgB;IACrC,uBAAuB,EAAE,MAAM,CAAC;IAChC,sBAAsB,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,oBAAoB,CAAC,EAAE,KAAK,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IACzF,kBAAkB,EAAE,OAAO,CAAC;IAC5B,iCAAiC,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC;IAChD,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,IAAI,EAAE,OAAO,CAAC;IACd,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,4BAA4B,CAAC,EAAE,MAAM,CAAC;IACtC,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,uBAAuB,CAAC,EAAE,CAAC,GAAG,KAAA,KAAK,IAAI,CAAC;CAC3C;AAsBD,iBAAS,mBAAmB,CAAC,KAAK,EAAE,MAAM,qBAkfzC;AAED,OAAO,EAAE,mBAAmB,EAAE,CAAC"}
@@ -117,8 +117,7 @@ function OpenshiftDropdownV4(props) {
117
117
  // Define dropdown options for keyboard navigation
118
118
  const dropdownOptions = useMemo(() => [
119
119
  { type: 'checkbox', key: 'show-hide-archived-clusters', label: t('Show archived clusters') },
120
- // TODO: Re-enable "I don't have my Cluster ID" option when needed
121
- // { type: 'option', key: 'dont-have-id', label: t("I don't have my Cluster ID") },
120
+ { type: 'option', key: 'dont-have-id', label: t("I don't have my Cluster ID") },
122
121
  ...(props.isV3 ? [{ type: 'option', key: 'v3-cluster', label: t('The case is for a v3 cluster') }] : []),
123
122
  ], [props.isV3, t]);
124
123
  // Use the keyboard navigation hook
@@ -133,10 +132,10 @@ function OpenshiftDropdownV4(props) {
133
132
  setShowArchivedClusters(!showArchivedClusters);
134
133
  props.onClusterClear();
135
134
  setClustersRawResponse([]);
136
- // TODO: Re-enable "I don't have my Cluster ID" keyboard handler when needed
137
- // } else if (item.key === 'dont-have-id') {
138
- // props.onClusterIdStateUpdate(createState('dont-have-id', t("I don't have my Cluster ID")));
139
- // setIsOpen(false);
135
+ }
136
+ else if (item.key === 'dont-have-id') {
137
+ props.onClusterIdStateUpdate(createState('dont-have-id', t("I don't have my Cluster ID")));
138
+ setIsOpen(false);
140
139
  }
141
140
  else if (item.key === 'v3-cluster') {
142
141
  props.onClusterIdStateUpdate(createState('v3-cluster', t('The case is for a v3 cluster')));
@@ -147,16 +146,7 @@ function OpenshiftDropdownV4(props) {
147
146
  const dropdownHeaderOptions = useMemo(() => [
148
147
  React.createElement(SelectOption, { hasCheckbox: true, key: "show-archived-clusters", "aria-label": t('Show archived clusters'), id: "show-archived-clusters", className: "archived-clusters-checkbox", "data-tracking-id": "show-hide-archived-clusters", value: { type: 'checkbox' }, isSelected: showArchivedClusters }, t('Show archived clusters')),
149
148
  React.createElement(Divider, { component: "div", key: 'cluster-id-options-divider-e' }),
150
- /* TODO: Re-enable "I don't have my Cluster ID" dropdown option when needed
151
- <SelectOption
152
- key={'dont-have-id'}
153
- value={createState('dont-have-id', t("I don't have my Cluster ID"))}
154
- data-tracking-id="dont-have-cluster-id"
155
- isFocused={focusedItemIndex === 1}
156
- >
157
- {"I don't have my Cluster ID"}
158
- </SelectOption>,
159
- */
149
+ React.createElement(SelectOption, { key: 'dont-have-id', value: createState('dont-have-id', t("I don't have my Cluster ID")), "data-tracking-id": "dont-have-cluster-id", isFocused: focusedItemIndex === 1 }, "I don't have my Cluster ID"),
160
150
  ...(props.isV3
161
151
  ? [
162
152
  React.createElement(SelectOption, { key: 'v3-cluster', value: createState('v3-cluster', t('The case is for a v3 cluster')), isFocused: focusedItemIndex === 2 }),
@@ -358,6 +348,7 @@ function OpenshiftDropdownV4(props) {
358
348
  React.createElement("div", { className: `${props.className} form-group` },
359
349
  React.createElement("label", { htmlFor: "case-details-cluster-nickname-selector" },
360
350
  React.createElement(Trans, null, "OpenShift Cluster ID"),
351
+ React.createElement("span", { className: `form-required ${isExportingPDF ? 'hide-in-pdf' : ''}`, "aria-hidden": true }, "*"),
361
352
  !isExportingPDF ? React.createElement(CaseOpenShiftPopover, null) : ''),
362
353
  React.createElement("span", { id: titleId, hidden: true }, "Select a state"),
363
354
  React.createElement(Select, { id: "openshift-cluster-selector", isOpen: isOpen, selected: getSelectedItem(), onSelect: onSelect, onOpenChange: (nextOpen) => {
@@ -0,0 +1,8 @@
1
+ import React from 'react';
2
+ interface IProps {
3
+ isOpen: boolean;
4
+ onClose: () => void;
5
+ }
6
+ export declare function ProductNotEntitledModal({ isOpen, onClose }: IProps): React.JSX.Element;
7
+ export {};
8
+ //# sourceMappingURL=ProductNotEntitledModal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProductNotEntitledModal.d.ts","sourceRoot":"","sources":["../../../../src/components/ProductSelector/ProductNotEntitledModal.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,UAAU,MAAM;IACZ,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,MAAM,IAAI,CAAC;CACvB;AAED,wBAAgB,uBAAuB,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,MAAM,qBAkBlE"}
@@ -0,0 +1,11 @@
1
+ import { Button, Modal, ModalBody, ModalFooter, ModalHeader, ModalVariant } from '@patternfly/react-core';
2
+ import React from 'react';
3
+ import { useTranslation } from 'react-i18next';
4
+ export function ProductNotEntitledModal({ isOpen, onClose }) {
5
+ const { t } = useTranslation();
6
+ return (React.createElement(Modal, { variant: ModalVariant.small, isOpen: isOpen, onClose: onClose, "aria-label": t('Product Not Entitled') },
7
+ React.createElement(ModalHeader, { title: t('Product Not Entitled'), titleIconVariant: "warning" }),
8
+ React.createElement(ModalBody, null, t('The selected product is not included in your current subscription entitlements. Please choose an entitled product or contact your administrator to update your subscription.')),
9
+ React.createElement(ModalFooter, null,
10
+ React.createElement(Button, { variant: "primary", onClick: onClose }, t('Okay')))));
11
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"AttachmentHelper.d.ts","sourceRoot":"","sources":["../../../../../../src/components/shared/fileUpload/reducer/AttachmentHelper.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,oDAAoD,CAAC;AAC3F,OAAO,EAAE,0BAA0B,EAAE,MAAM,2CAA2C,CAAC;AAEvF,OAAO,EACH,iBAAiB,EAQpB,MAAM,mBAAmB,CAAC;AAO3B,OAAO,EACH,uBAAuB,EAEvB,6BAA6B,EAK7B,gBAAgB,EAChB,UAAU,EACV,UAAU,EACV,eAAe,EAMf,qBAAqB,EACxB,MAAM,qBAAqB,CAAC;AAG7B,eAAO,MAAM,MAAM,GACd,6BAA6B,6BAA6B,EAAE,aAAa,OAAO,EAAE,mBAAiB,MACnG,eAAe,IAAI,EAAE,SA+BrB,CAAC;AAiBN,eAAO,MAAM,oBAAoB,GAAI,QAAQ,MAAM,uDAAwD,CAAC;AAC5G,eAAO,MAAM,iBAAiB,GAAI,QAAQ,MAAM,oDAAqD,CAAC;AACtG,eAAO,MAAM,wBAAwB,GAAI,QAAQ,MAAM,2DAA4D,CAAC;AACpH,eAAO,MAAM,qBAAqB,GAAI,QAAQ,MAAM,wDAAyD,CAAC;AAC9G,eAAO,MAAM,qBAAqB,GAAI,QAAQ,MAAM,wDAAyD,CAAC;AAC9G,eAAO,MAAM,uBAAuB,GAAI,QAAQ,MAAM,kGACiC,CAAC;AACxF,eAAO,MAAM,oBAAoB,GAAI,QAAQ,MAAM,mDAAoD,CAAC;AACxG,eAAO,MAAM,qBAAqB,GAAI,QAAQ,MAAM,0DAA2D,CAAC;AAChH,eAAO,MAAM,kBAAkB,GAAI,QAAQ,MAAM,uDAAwD,CAAC;AAC1G,eAAO,MAAM,cAAc,GAAI,QAAQ,MAAM,iDAAkD,CAAC;AAEhG,eAAO,MAAM,oBAAoB,GAAI,QAAQ,MAAM,yDAA0D,CAAC;AAC9G,eAAO,MAAM,eAAe,GAAI,QAAQ,MAAM,wDAAyD,CAAC;AACxG,eAAO,MAAM,kBAAkB,GAAI,QAAQ,MAAM,uDAAwD,CAAC;AAC1G,eAAO,MAAM,gBAAgB,GAAI,QAAQ,MAAM,qDAAsD,CAAC;AACtG,eAAO,MAAM,iBAAiB,GAAI,QAAQ,MAAM,sDAAuD,CAAC;AAExG,eAAO,MAAM,iBAAiB,GAAI,QAAQ,MAAM,uGAAsE,CAAC;AACvH,eAAO,MAAM,WAAW,GAAI,QAAQ,MAAM,+NAC0E,CAAC;AACrH,eAAO,MAAM,gBAAgB,GAAI,QAAQ,MAAM,yIAAoE,CAAC;AACpH,eAAO,MAAM,cAAc,GAAI,QAAQ,MAAM,qGAAgE,CAAC;AAC9G,eAAO,MAAM,eAAe,GAAI,QAAQ,MAAM,4CAA6C,CAAC;AAC5F,eAAO,MAAM,aAAa,GAAI,QAAQ,MAAM,4CAA6C,CAAC;AAE1F,eAAO,MAAM,0BAA0B,GAAI,oBAAoB,UAAU,EAAE,YACmC,CAAC;AAC/G,eAAO,MAAM,0BAA0B,GAAI,oBAAoB,UAAU,EAAE,YACyC,CAAC;AACrH,eAAO,MAAM,4BAA4B,GAAI,oBAAoB,UAAU,EAAE,YASxE,CAAC;AACN,eAAO,MAAM,oBAAoB,GAAI,oBAAoB,UAAU,EAAE,YAAiC,CAAC;AACvG,eAAO,MAAM,qBAAqB,GAAI,oBAAoB,UAAU,EAAE,YACmC,CAAC;AAE1G,eAAO,MAAM,wBAAwB,GAAI,oBAAoB,UAAU,EAAE,YACwC,CAAC;AAElH,eAAO,MAAM,kBAAkB,GAAI,MAAM,UAAU,YACuD,CAAC;AAC3G,eAAO,MAAM,qBAAqB,GAAI,MAAM,UAAU,EAAE,iBAAiB,OAAO,YAOhB,CAAC;AACjE,eAAO,MAAM,eAAe,GAAI,MAAM,UAAU,YAGb,CAAC;AACpC,eAAO,MAAM,qBAAqB,GAAI,MAAM,UAAU,YAGI,CAAC;AAC3D,eAAO,MAAM,2BAA2B,GAAI,MAAM,UAAU,YAC2D,CAAC;AACxH,eAAO,MAAM,sBAAsB,GAAI,MAAM,UAAU,WACoB,CAAC;AAC5E,eAAO,MAAM,4BAA4B,GAAI,MAAM,UAAU,YAEF,CAAC;AAC5D,eAAO,MAAM,oBAAoB,GAC7B,UAAU,6BAA6B,EACvC,iBAAiB,MAAM,EACvB,mBAAmB,OAAO,CAAC,eAAe,CAAC,SAG9C,CAAC;AAEF,eAAO,MAAM,cAAc,GAAU,uHAUlC;IACC,QAAQ,EAAE,6BAA6B,CAAC;IACxC,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,UAAU,CAAC;IAEtB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,gBAAgB,CAAC,EAAE,0BAA0B,CAAC;IAC9C,YAAY,CAAC,EAAE,iBAAiB,CAAC;IACjC,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC7B,kBAyBA,CAAC;AAEF,eAAO,MAAM,UAAU,GAAU,4IAY9B;IACC,QAAQ,EAAE,6BAA6B,CAAC;IACxC,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,UAAU,CAAC;IACtB,YAAY,EAAE,IAAI,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IAEd,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,gBAAgB,CAAC,EAAE,0BAA0B,CAAC;IAC9C,YAAY,CAAC,EAAE,iBAAiB,CAAC;IACjC,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC7B,kBA0JA,CAAC;AAEF,wBAAsB,8BAA8B,CAChD,QAAQ,KAAA,EACR,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,UAAU,EAAE,EACxB,WAAW,EAAE,OAAO,iBAMvB;AAED,wBAAsB,0BAA0B,CAC5C,QAAQ,KAAA,EACR,YAAY,EAAE,MAAM,EACpB,YAAY,EAAE,MAAM,EACpB,SAAS,EAAE,UAAU,EACrB,WAAW,EAAE,OAAO,EACpB,SAAS,EAAE,MAAM,EACjB,gBAAgB,CAAC,EAAE,qBAAqB,iBA6D3C;AAED,wBAAsB,sBAAsB,CACxC,YAAY,EAAE,MAAM,EACpB,YAAY,EAAE,MAAM,EACpB,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,OAAO,EACpB,QAAQ,EAAE,CAAC,MAAM,EAAE,qBAAqB,KAAK,IAAI,GAClD,OAAO,CAAC,gBAAgB,CAAC,CAwB3B;AAID,wBAAsB,2BAA2B,CAC7C,QAAQ,KAAA,EACR,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,UAAU,EACrB,SAAS,EAAE,MAAM,EACjB,YAAY,CAAC,EAAE,iBAAiB,EAChC,gBAAgB,CAAC,EAAE,MAAM,iBA2E5B;AAED,wBAAsB,uBAAuB,CAAC,QAAQ,KAAA,EAAE,SAAS,EAAE,MAAM,iBA+CxE;AAED,wBAAgB,+BAA+B,CAAC,UAAU,EAAE,UAAU,EAAE,WAEvE;AAED,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,UAAU,EAAE,WAKzD;AAED,eAAO,MAAM,uBAAuB,GAAI,YAAY,UAAU,KAAG,OAShE,CAAC;AAKF,eAAO,MAAM,2BAA2B,UAOvC,CAAC;AAEF,eAAO,MAAM,8BAA8B,GAAI,oBAAoB,UAAU,EAAE,YAE9E,CAAC;AAEF,eAAO,MAAM,eAAe,GAAI,aAAQ,SAUvC,CAAC"}
1
+ {"version":3,"file":"AttachmentHelper.d.ts","sourceRoot":"","sources":["../../../../../../src/components/shared/fileUpload/reducer/AttachmentHelper.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,oDAAoD,CAAC;AAC3F,OAAO,EAAE,0BAA0B,EAAE,MAAM,2CAA2C,CAAC;AAEvF,OAAO,EACH,iBAAiB,EAQpB,MAAM,mBAAmB,CAAC;AAO3B,OAAO,EACH,uBAAuB,EAEvB,6BAA6B,EAK7B,gBAAgB,EAChB,UAAU,EACV,UAAU,EACV,eAAe,EAMf,qBAAqB,EACxB,MAAM,qBAAqB,CAAC;AAG7B,eAAO,MAAM,MAAM,GACd,6BAA6B,6BAA6B,EAAE,aAAa,OAAO,EAAE,mBAAiB,MACnG,eAAe,IAAI,EAAE,SA+BrB,CAAC;AAiBN,eAAO,MAAM,oBAAoB,GAAI,QAAQ,MAAM,uDAAwD,CAAC;AAC5G,eAAO,MAAM,iBAAiB,GAAI,QAAQ,MAAM,oDAAqD,CAAC;AACtG,eAAO,MAAM,wBAAwB,GAAI,QAAQ,MAAM,2DAA4D,CAAC;AACpH,eAAO,MAAM,qBAAqB,GAAI,QAAQ,MAAM,wDAAyD,CAAC;AAC9G,eAAO,MAAM,qBAAqB,GAAI,QAAQ,MAAM,wDAAyD,CAAC;AAC9G,eAAO,MAAM,uBAAuB,GAAI,QAAQ,MAAM,kGACiC,CAAC;AACxF,eAAO,MAAM,oBAAoB,GAAI,QAAQ,MAAM,mDAAoD,CAAC;AACxG,eAAO,MAAM,qBAAqB,GAAI,QAAQ,MAAM,0DAA2D,CAAC;AAChH,eAAO,MAAM,kBAAkB,GAAI,QAAQ,MAAM,uDAAwD,CAAC;AAC1G,eAAO,MAAM,cAAc,GAAI,QAAQ,MAAM,iDAAkD,CAAC;AAEhG,eAAO,MAAM,oBAAoB,GAAI,QAAQ,MAAM,yDAA0D,CAAC;AAC9G,eAAO,MAAM,eAAe,GAAI,QAAQ,MAAM,wDAAyD,CAAC;AACxG,eAAO,MAAM,kBAAkB,GAAI,QAAQ,MAAM,uDAAwD,CAAC;AAC1G,eAAO,MAAM,gBAAgB,GAAI,QAAQ,MAAM,qDAAsD,CAAC;AACtG,eAAO,MAAM,iBAAiB,GAAI,QAAQ,MAAM,sDAAuD,CAAC;AAExG,eAAO,MAAM,iBAAiB,GAAI,QAAQ,MAAM,uGAAsE,CAAC;AACvH,eAAO,MAAM,WAAW,GAAI,QAAQ,MAAM,+NAC0E,CAAC;AACrH,eAAO,MAAM,gBAAgB,GAAI,QAAQ,MAAM,yIAAoE,CAAC;AACpH,eAAO,MAAM,cAAc,GAAI,QAAQ,MAAM,qGAAgE,CAAC;AAC9G,eAAO,MAAM,eAAe,GAAI,QAAQ,MAAM,4CAA6C,CAAC;AAC5F,eAAO,MAAM,aAAa,GAAI,QAAQ,MAAM,4CAA6C,CAAC;AAE1F,eAAO,MAAM,0BAA0B,GAAI,oBAAoB,UAAU,EAAE,YACmC,CAAC;AAC/G,eAAO,MAAM,0BAA0B,GAAI,oBAAoB,UAAU,EAAE,YACyC,CAAC;AACrH,eAAO,MAAM,4BAA4B,GAAI,oBAAoB,UAAU,EAAE,YASxE,CAAC;AACN,eAAO,MAAM,oBAAoB,GAAI,oBAAoB,UAAU,EAAE,YAAiC,CAAC;AACvG,eAAO,MAAM,qBAAqB,GAAI,oBAAoB,UAAU,EAAE,YACmC,CAAC;AAE1G,eAAO,MAAM,wBAAwB,GAAI,oBAAoB,UAAU,EAAE,YACwC,CAAC;AAElH,eAAO,MAAM,kBAAkB,GAAI,MAAM,UAAU,YACuD,CAAC;AAC3G,eAAO,MAAM,qBAAqB,GAAI,MAAM,UAAU,EAAE,iBAAiB,OAAO,YAOhB,CAAC;AACjE,eAAO,MAAM,eAAe,GAAI,MAAM,UAAU,YAGb,CAAC;AACpC,eAAO,MAAM,qBAAqB,GAAI,MAAM,UAAU,YAGI,CAAC;AAC3D,eAAO,MAAM,2BAA2B,GAAI,MAAM,UAAU,YAC2D,CAAC;AACxH,eAAO,MAAM,sBAAsB,GAAI,MAAM,UAAU,WACoB,CAAC;AAC5E,eAAO,MAAM,4BAA4B,GAAI,MAAM,UAAU,YAEF,CAAC;AAC5D,eAAO,MAAM,oBAAoB,GAC7B,UAAU,6BAA6B,EACvC,iBAAiB,MAAM,EACvB,mBAAmB,OAAO,CAAC,eAAe,CAAC,SAG9C,CAAC;AAEF,eAAO,MAAM,cAAc,GAAU,uHAUlC;IACC,QAAQ,EAAE,6BAA6B,CAAC;IACxC,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,UAAU,CAAC;IAEtB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,gBAAgB,CAAC,EAAE,0BAA0B,CAAC;IAC9C,YAAY,CAAC,EAAE,iBAAiB,CAAC;IACjC,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC7B,kBAyBA,CAAC;AAEF,eAAO,MAAM,UAAU,GAAU,4IAY9B;IACC,QAAQ,EAAE,6BAA6B,CAAC;IACxC,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,UAAU,CAAC;IACtB,YAAY,EAAE,IAAI,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IAEd,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,gBAAgB,CAAC,EAAE,0BAA0B,CAAC;IAC9C,YAAY,CAAC,EAAE,iBAAiB,CAAC;IACjC,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC7B,kBAqKA,CAAC;AAEF,wBAAsB,8BAA8B,CAChD,QAAQ,KAAA,EACR,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,UAAU,EAAE,EACxB,WAAW,EAAE,OAAO,iBAMvB;AAED,wBAAsB,0BAA0B,CAC5C,QAAQ,KAAA,EACR,YAAY,EAAE,MAAM,EACpB,YAAY,EAAE,MAAM,EACpB,SAAS,EAAE,UAAU,EACrB,WAAW,EAAE,OAAO,EACpB,SAAS,EAAE,MAAM,EACjB,gBAAgB,CAAC,EAAE,qBAAqB,iBA6D3C;AAED,wBAAsB,sBAAsB,CACxC,YAAY,EAAE,MAAM,EACpB,YAAY,EAAE,MAAM,EACpB,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,OAAO,EACpB,QAAQ,EAAE,CAAC,MAAM,EAAE,qBAAqB,KAAK,IAAI,GAClD,OAAO,CAAC,gBAAgB,CAAC,CAwB3B;AAID,wBAAsB,2BAA2B,CAC7C,QAAQ,KAAA,EACR,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,UAAU,EACrB,SAAS,EAAE,MAAM,EACjB,YAAY,CAAC,EAAE,iBAAiB,EAChC,gBAAgB,CAAC,EAAE,MAAM,iBA2E5B;AAED,wBAAsB,uBAAuB,CAAC,QAAQ,KAAA,EAAE,SAAS,EAAE,MAAM,iBA+CxE;AAED,wBAAgB,+BAA+B,CAAC,UAAU,EAAE,UAAU,EAAE,WAEvE;AAED,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,UAAU,EAAE,WAKzD;AAED,eAAO,MAAM,uBAAuB,GAAI,YAAY,UAAU,KAAG,OAShE,CAAC;AAKF,eAAO,MAAM,2BAA2B,UAOvC,CAAC;AAEF,eAAO,MAAM,8BAA8B,GAAI,oBAAoB,UAAU,EAAE,YAE9E,CAAC;AAEF,eAAO,MAAM,eAAe,GAAI,aAAQ,SAUvC,CAAC"}
@@ -208,26 +208,39 @@ needsAnalyzing = false, isSessionId = false, slowUploadConfig = {}, apolloClient
208
208
  }, putObjectRequest, listener, true, { partSize: 5 * 1024 * 1024, queueSize: 5 }, Object.assign(Object.assign({}, slowUploadConfig), { preferSlowS3Upload: Config.userConfig.preferSlowS3Upload }));
209
209
  }
210
210
  else {
211
+ // Mirror master Hydra listener behavior for circular progress + abort button.
212
+ let abortUpload;
213
+ const onAbort = (abortedFileIndex) => {
214
+ const abortPayload = {
215
+ percentUploaded: 0,
216
+ onAbort: undefined,
217
+ uploadStatus: UploadStatusConstants.aborted,
218
+ };
219
+ abortUpload === null || abortUpload === void 0 ? void 0 : abortUpload();
220
+ updateUploadMetadata(dispatch, abortedFileIndex, abortPayload);
221
+ };
211
222
  attachmentId = yield uploadCaseAttachment(idToUploadTo, originalFile, (percent) => {
223
+ const verifyingUpdate = percent === 100;
212
224
  updateUploadMetadata(dispatch, index, {
213
- uploadStatus: UploadStatusConstants.uploadingOnCase,
225
+ uploadStatus: verifyingUpdate
226
+ ? UploadStatusConstants.verifyingCaseUpload
227
+ : UploadStatusConstants.uploadingOnCase,
214
228
  percentUploaded: percent,
215
229
  uploadErrorMessage: '',
230
+ onAbort: verifyingUpdate ? undefined : onAbort,
216
231
  });
217
232
  }, (abort) => {
218
- updateUploadMetadata(dispatch, index, Object.assign(Object.assign({}, localFile.uploadProgress), { onAbort: () => {
219
- abort();
220
- updateUploadMetadata(dispatch, index, {
221
- percentUploaded: 0,
222
- onAbort: undefined,
223
- uploadStatus: UploadStatusConstants.aborted,
224
- });
225
- } }));
233
+ abortUpload = abort;
234
+ updateUploadMetadata(dispatch, index, {
235
+ uploadStatus: UploadStatusConstants.uploadingOnCase,
236
+ onAbort,
237
+ });
226
238
  });
227
239
  if (apolloClient && caseSalesforceId) {
228
240
  updateUploadMetadata(dispatch, index, {
229
241
  uploadStatus: UploadStatusConstants.verifyingCaseUpload,
230
242
  percentUploaded: 100,
243
+ onAbort: undefined,
231
244
  });
232
245
  yield pollAttachmentUploadStatus(apolloClient, caseSalesforceId, attachmentId);
233
246
  }
@@ -1 +1 @@
1
- {"version":3,"file":"GlobalTroubleshootEffects.d.ts","sourceRoot":"","sources":["../../../../src/components/wizardLayout/GlobalTroubleshootEffects.tsx"],"names":[],"mappings":"AAeA,OAAO,KAAkD,MAAM,OAAO,CAAC;AACvE,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAiBvD,OAAO,EAAuC,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAYvG,UAAU,MAAM;IACZ,UAAU,EAAE,mBAAmB,CAAC,eAAe,CAAC,CAAC;CACpD;AAED,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,MAAM,qBAsctD"}
1
+ {"version":3,"file":"GlobalTroubleshootEffects.d.ts","sourceRoot":"","sources":["../../../../src/components/wizardLayout/GlobalTroubleshootEffects.tsx"],"names":[],"mappings":"AAeA,OAAO,KAAkD,MAAM,OAAO,CAAC;AACvE,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAgBvD,OAAO,EAAuC,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAYvG,UAAU,MAAM;IACZ,UAAU,EAAE,mBAAmB,CAAC,eAAe,CAAC,CAAC;CACpD;AAED,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,MAAM,qBAodtD"}
@@ -25,7 +25,7 @@ import { TCDispatchContext, TCStateContext } from '../../context/TopContentConte
25
25
  import { useResetCaseCreate } from '../../hooks/useResetCaseCreate';
26
26
  import { CASE_DEATILS_SOURCE_REFERRER_LIMIT } from '../../reducers/CaseConstNTypes';
27
27
  import { getDescriptionWOQues } from '../../reducers/CaseHelpers';
28
- import { fetchCaseGroupsForContactGraphQL, setCaseAccountNumber, setCaseDetails, setCaseOwner, setCaseState, } from '../../reducers/CaseReducer';
28
+ import { fetchCaseGroupsForContactGraphQL, setCaseAccountNumber, setCaseDetails, setCaseState, } from '../../reducers/CaseReducer';
29
29
  import { AppRouteSections } from '../../reducers/RouteConstNTypes';
30
30
  import { setActiveSectionChanged, setRouteFlags, updateisNextBtnClickedToShowValidationError, } from '../../reducers/RouteReducer';
31
31
  import { fetchEdmundAbbottRules } from '../../reducers/RulesReducer';
@@ -175,8 +175,6 @@ export function GlobalTroubleshootEffects(props) {
175
175
  var _a, _b;
176
176
  if (isEmpty(loggedInUserRights.data))
177
177
  return;
178
- if (loggedInUserRights.data.isInternal())
179
- return;
180
178
  const resolvedAccountNumber = ((_a = loggedInUsersAccount.data) === null || _a === void 0 ? void 0 : _a.accountNumber) ||
181
179
  loggedInUserRights.data.getAccountNumber() ||
182
180
  (loggedInUserJwtToken === null || loggedInUserJwtToken === void 0 ? void 0 : loggedInUserJwtToken.account_number) ||
@@ -185,11 +183,6 @@ export function GlobalTroubleshootEffects(props) {
185
183
  const hasFullAccountData = !isEmpty((_b = loggedInUsersAccount.data) === null || _b === void 0 ? void 0 : _b.accountNumber);
186
184
  setCaseAccountNumber(caseDispatch, resolvedAccountNumber, hasFullAccountData, hasFullAccountData ? loggedInUsersAccount.data : {}, apolloClient);
187
185
  }
188
- if (isEmpty(contactSsoUsername)) {
189
- setCaseOwner(caseDispatch, loggedInUserRights.data.getHydraContactFromLoggedInUser(), product, undefined, undefined, true, undefined, true, undefined, undefined, loggedInUserRights.data.isInternal()
190
- ? accountNumber || loggedInUserRights.data.getAccountNumber()
191
- : undefined);
192
- }
193
186
  // eslint-disable-next-line react-hooks/exhaustive-deps
194
187
  }, [
195
188
  caseDispatch,
@@ -200,43 +193,66 @@ export function GlobalTroubleshootEffects(props) {
200
193
  contactSsoUsername,
201
194
  ]);
202
195
  useEffect(() => {
203
- if (isEmpty(loggedInUserRights.data) || loggedInUserRights.data.isInternal())
204
- return;
205
- if (isEmpty(accountNumber) || isEmpty(contactSsoUsername))
206
- return;
207
- if (selectedAccountDetails.isFetching)
196
+ if (isEmpty(loggedInUserRights.data))
208
197
  return;
209
198
  if (selectedOwnerContactId)
210
199
  return;
211
- const ownerSso = loggedInUserRights.data.getSSOUsername();
212
- const fetchContacts = () => __awaiter(this, void 0, void 0, function* () {
213
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
200
+ const fetchAndSetDefaultOwner = () => __awaiter(this, void 0, void 0, function* () {
201
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3, _4, _5;
214
202
  try {
215
- const { data } = yield apolloClient.query({
203
+ // First get logged-in user's FederationIdentifier and ContactId
204
+ const { data: userData } = yield apolloClient.query({
205
+ query: GET_ACCOUNT_CONTACTS,
206
+ variables: { first: 1, contactsWhere: { IsActive__c: { eq: true } } },
207
+ });
208
+ const response = userData;
209
+ const userEdges = (_d = (_c = (_b = (_a = response === null || response === void 0 ? void 0 : response.redhat_support_uiapi) === null || _a === void 0 ? void 0 : _a.query) === null || _b === void 0 ? void 0 : _b.RedHatSupportUser) === null || _c === void 0 ? void 0 : _c.edges) !== null && _d !== void 0 ? _d : [];
210
+ const loggedInUser = userEdges.find(({ node }) => { var _a, _b; return ((_a = node.FederationIdentifier) === null || _a === void 0 ? void 0 : _a.value) != null && ((_b = node.ContactId) === null || _b === void 0 ? void 0 : _b.value); });
211
+ if (!loggedInUser)
212
+ return;
213
+ const federationId = loggedInUser.node.FederationIdentifier.value;
214
+ // Search for the contact using FederationIdentifier (SSOUserName__c)
215
+ const { data: contactData } = yield apolloClient.query({
216
216
  query: GET_ACCOUNT_CONTACTS,
217
217
  variables: {
218
- accountNumber: { eq: accountNumber },
219
- first: 200,
220
- orderBy: { Name: { order: 'ASC' } },
218
+ first: 1,
219
+ contactsWhere: {
220
+ IsActive__c: { eq: true },
221
+ SSOUserName__c: { like: federationId },
222
+ },
221
223
  },
224
+ fetchPolicy: 'network-only',
222
225
  });
223
- const response = data;
224
- const contactEdges = (_h = (_g = (_f = (_e = (_d = (_c = (_b = (_a = response === null || response === void 0 ? void 0 : response.redhat_support_uiapi) === null || _a === void 0 ? void 0 : _a.query) === null || _b === void 0 ? void 0 : _b.RedHatSupportAccount) === null || _c === void 0 ? void 0 : _c.edges) === null || _d === void 0 ? void 0 : _d[0]) === null || _e === void 0 ? void 0 : _e.node) === null || _f === void 0 ? void 0 : _f.Contacts) === null || _g === void 0 ? void 0 : _g.edges) !== null && _h !== void 0 ? _h : [];
225
- const matchingContact = contactEdges.find(({ node }) => { var _a, _b; return ((_b = (_a = node.SSOUserName__c) === null || _a === void 0 ? void 0 : _a.value) === null || _b === void 0 ? void 0 : _b.toLowerCase()) === (ownerSso === null || ownerSso === void 0 ? void 0 : ownerSso.toLowerCase()); });
226
- if ((_j = matchingContact === null || matchingContact === void 0 ? void 0 : matchingContact.node) === null || _j === void 0 ? void 0 : _j.Id) {
227
- const ownerWithId = Object.assign(Object.assign({}, loggedInUserRights.data.getHydraContactFromLoggedInUser()), { id: matchingContact.node.Id, defaultCaseGroup: (_l = (_k = matchingContact.node.DefaultCaseGroup__c) === null || _k === void 0 ? void 0 : _k.value) !== null && _l !== void 0 ? _l : null });
226
+ const contactResponse = contactData;
227
+ const contactEdges = (_m = (_l = (_k = (_j = (_h = (_g = (_f = (_e = contactResponse === null || contactResponse === void 0 ? void 0 : contactResponse.redhat_support_uiapi) === null || _e === void 0 ? void 0 : _e.query) === null || _f === void 0 ? void 0 : _f.RedHatSupportAccount) === null || _g === void 0 ? void 0 : _g.edges) === null || _h === void 0 ? void 0 : _h[0]) === null || _j === void 0 ? void 0 : _j.node) === null || _k === void 0 ? void 0 : _k.Contacts) === null || _l === void 0 ? void 0 : _l.edges) !== null && _m !== void 0 ? _m : [];
228
+ const matchingContact = contactEdges[0];
229
+ if (matchingContact === null || matchingContact === void 0 ? void 0 : matchingContact.node) {
230
+ const node = matchingContact.node;
231
+ const ownerData = {
232
+ id: node.Id,
233
+ ssoUsername: (_p = (_o = node.SSOUserName__c) === null || _o === void 0 ? void 0 : _o.value) !== null && _p !== void 0 ? _p : '',
234
+ firstName: (_r = (_q = node.FirstName) === null || _q === void 0 ? void 0 : _q.value) !== null && _r !== void 0 ? _r : '',
235
+ lastName: (_t = (_s = node.LastName) === null || _s === void 0 ? void 0 : _s.value) !== null && _t !== void 0 ? _t : '',
236
+ fullNameCustom: (_v = (_u = node.Name) === null || _u === void 0 ? void 0 : _u.value) !== null && _v !== void 0 ? _v : '',
237
+ manageSupportCases: (_x = (_w = node.ManageSupportCases__c) === null || _w === void 0 ? void 0 : _w.value) !== null && _x !== void 0 ? _x : true,
238
+ isInternal: (_z = (_y = node.IsInternal__c) === null || _y === void 0 ? void 0 : _y.value) !== null && _z !== void 0 ? _z : false,
239
+ isOrgAdmin: (_1 = (_0 = node.IsOrgAdmin__c) === null || _0 === void 0 ? void 0 : _0.value) !== null && _1 !== void 0 ? _1 : false,
240
+ phone: (_3 = (_2 = node.Phone) === null || _2 === void 0 ? void 0 : _2.value) !== null && _3 !== void 0 ? _3 : '',
241
+ defaultCaseGroup: (_5 = (_4 = node.DefaultCaseGroup__c) === null || _4 === void 0 ? void 0 : _4.value) !== null && _5 !== void 0 ? _5 : null,
242
+ };
228
243
  setCaseState(caseDispatch, {
229
- selectedOwner: { data: ownerWithId, isFetching: false, isError: false, errorMessage: '' },
244
+ selectedOwner: { data: ownerData, isFetching: false, isError: false, errorMessage: '' },
230
245
  });
246
+ setCaseDetails(caseDispatch, { contactSSOName: ownerData.ssoUsername });
231
247
  }
232
248
  }
233
- catch (e) {
234
- // Contact fetch failed; case proceeds with owner from JWT
249
+ catch (_6) {
250
+ // Contact fetch failed; owner stays empty
235
251
  }
236
252
  });
237
- fetchContacts();
253
+ fetchAndSetDefaultOwner();
238
254
  // eslint-disable-next-line react-hooks/exhaustive-deps
239
- }, [accountNumber, contactSsoUsername, selectedAccountDetails.isFetching, selectedOwnerContactId]);
255
+ }, [loggedInUserRights.data, selectedOwnerContactId]);
240
256
  /**
241
257
  * Fetch case groups for the selected owner's contactId.
242
258
  * Filters groups where the contact is a member via GET_CASE_GROUP.
@@ -262,9 +278,17 @@ export function GlobalTroubleshootEffects(props) {
262
278
  if (isEmpty(product) || selectedAccountDetails.isFetching || isEmpty(selectedAccountDetails.data))
263
279
  return;
264
280
  const serviceLevels = resolveProductServiceLevelsForAccount(selectedAccountDetails.data, allProducts.data.productsResult, product);
265
- if (!serviceLevels)
281
+ if (!serviceLevels || !serviceLevels.productServiceLevel) {
282
+ setCaseState(caseDispatch, {
283
+ isProductNotEntitled: true,
284
+ productServiceLevel: undefined,
285
+ otherServiceLevels: [],
286
+ selectedEntitlementId: undefined,
287
+ });
266
288
  return;
289
+ }
267
290
  setCaseState(caseDispatch, {
291
+ isProductNotEntitled: false,
268
292
  productServiceLevel: serviceLevels.productServiceLevel,
269
293
  otherServiceLevels: serviceLevels.otherServiceLevels,
270
294
  selectedEntitlementId: serviceLevels.defaultEntitlementId,
@@ -1 +1 @@
1
- {"version":3,"file":"WizardLayout.d.ts","sourceRoot":"","sources":["../../../../src/components/wizardLayout/WizardLayout.tsx"],"names":[],"mappings":"AAUA,OAAO,KAAkD,MAAM,OAAO,CAAC;AAEvE,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,qBAoLzC"}
1
+ {"version":3,"file":"WizardLayout.d.ts","sourceRoot":"","sources":["../../../../src/components/wizardLayout/WizardLayout.tsx"],"names":[],"mappings":"AAUA,OAAO,KAAkD,MAAM,OAAO,CAAC;AAEvE,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAMvD,OAAO,EAAuC,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAevG,UAAU,MAAM;IACZ,UAAU,EAAE,mBAAmB,CAAC,eAAe,CAAC,CAAC;CACpD;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,qBA+NzC"}
@@ -21,11 +21,12 @@ import { Trans } from 'react-i18next';
21
21
  import { useCaseDispatch, useCaseSelector } from '../../context/CaseContext';
22
22
  import { RouteContext } from '../../context/RouteContext';
23
23
  import { SessionRestoreDispatchContext, SessionRestoreStateContext } from '../../context/SessionRestoreContext';
24
- import { submitCase } from '../../reducers/CaseReducer';
24
+ import { setCaseState, submitCase } from '../../reducers/CaseReducer';
25
25
  import { AppRouteSections } from '../../reducers/RouteConstNTypes';
26
26
  import { useMetadata } from '../../utils/metadataUtil';
27
27
  import RouteUtils from '../../utils/routeUtils';
28
28
  import PreCaseConfirmationModals, { PreCaseConfirmationModalsEnum, } from '../ConfirmationModals/PreCaseConfirmationModals';
29
+ import { ProductNotEntitledModal } from '../ProductSelector/ProductNotEntitledModal';
29
30
  import AlertToastWrapper from '../Recommendations/AlertToastWrapper';
30
31
  import { preferredSSModalOpenPendoEvent } from '../shared/Constants';
31
32
  import { AttachmentStateContext } from '../shared/fileUpload';
@@ -38,12 +39,17 @@ export function WizardLayout(props) {
38
39
  const { routeState: { activeSection, isCaseCreate }, } = useContext(RouteContext);
39
40
  const { getMetadata } = useMetadata();
40
41
  const [isAIChatMode, setIsAIChatMode] = useState(false);
41
- const { caseCreationError, caseType, product, caseState, hasInvalidEntitlements } = useCaseSelector((state) => ({
42
+ const [showEntitlementModal, setShowEntitlementModal] = useState(false);
43
+ const entitlementTimerRef = useRef(null);
44
+ const { caseCreationError, caseType, product, caseState, hasInvalidEntitlements, isProductNotEntitled, entitlementWarningDismissedForProduct, isAccountLoaded, } = useCaseSelector((state) => ({
42
45
  caseState: state,
43
46
  caseCreationError: state.caseCreationError,
44
47
  caseType: state.caseDetails.caseType,
45
48
  product: state.caseDetails.product,
46
49
  hasInvalidEntitlements: state.hasInvalidEntitlements,
50
+ isProductNotEntitled: state.isProductNotEntitled,
51
+ entitlementWarningDismissedForProduct: state.entitlementWarningDismissedForProduct,
52
+ isAccountLoaded: !state.selectedAccountDetails.isFetching && !isEmpty(state.selectedAccountDetails.data),
47
53
  }), isEqual);
48
54
  const sessionRestoreDispatch = useContext(SessionRestoreDispatchContext);
49
55
  const caseDispatch = useCaseDispatch();
@@ -51,6 +57,25 @@ export function WizardLayout(props) {
51
57
  const { globalMetadataState: { allProducts, loggedInUser, loggedInUsersAccount, loggedInUserRights }, } = useContext(GlobalMetadataStateContext);
52
58
  const dispatchToGlobalMetadataReducer = useContext(GlobalMetadataDispatchContext);
53
59
  const apolloClient = useApolloClient();
60
+ useEffect(() => {
61
+ if (entitlementTimerRef.current) {
62
+ clearTimeout(entitlementTimerRef.current);
63
+ entitlementTimerRef.current = null;
64
+ }
65
+ if (!isProductNotEntitled || isEmpty(product) || !isAccountLoaded) {
66
+ setShowEntitlementModal(false);
67
+ return;
68
+ }
69
+ if (product === entitlementWarningDismissedForProduct)
70
+ return;
71
+ entitlementTimerRef.current = setTimeout(() => {
72
+ setShowEntitlementModal(true);
73
+ }, 300);
74
+ return () => {
75
+ if (entitlementTimerRef.current)
76
+ clearTimeout(entitlementTimerRef.current);
77
+ };
78
+ }, [isProductNotEntitled, product, isAccountLoaded, entitlementWarningDismissedForProduct]);
54
79
  const canAddAttachments = ability.can(resourceActions.PATCH, resources.CASE_CREATE, CaseListFields.ATTACHMENTS);
55
80
  const { attachmentState } = useContext(AttachmentStateContext);
56
81
  const isAnyFileAttachedLocal = isAnyFileAttached(attachmentState.caseFiles.selectedLocalFiles);
@@ -132,5 +157,9 @@ export function WizardLayout(props) {
132
157
  React.createElement(WizardMain, { routeProps: props.routeProps, submitCaseAndNavigate: submitCaseAndNavigate, confirmSupportModal: confirmSupportModal, isAIChatMode: isAIChatMode, setIsAIChatMode: setIsAIChatMode, isSecureSupport: (_a = loggedInUsersAccount === null || loggedInUsersAccount === void 0 ? void 0 : loggedInUsersAccount.data) === null || _a === void 0 ? void 0 : _a.secureSupport, hasConfirmedStatesideSupport: (_b = loggedInUsersAccount === null || loggedInUsersAccount === void 0 ? void 0 : loggedInUsersAccount.data) === null || _b === void 0 ? void 0 : _b.hasConfirmedStatesideSupport, isUserExternal: (_d = (_c = loggedInUserRights === null || loggedInUserRights === void 0 ? void 0 : loggedInUserRights.data) === null || _c === void 0 ? void 0 : _c.isExternal()) !== null && _d !== void 0 ? _d : false, hasInvalidEntitlements: hasInvalidEntitlements })),
133
158
  !isAIChatMode && (React.createElement(GridItem, { span: 4, className: "grid-wizard-aside-content" },
134
159
  React.createElement(WizardAside, { isAttachmentUploadModalOpen: confirmationModalType === PreCaseConfirmationModalsEnum.NO_ATTACHMENT_MODAL, routeProps: props.routeProps })))),
135
- React.createElement(AlertToastWrapper, { submitCaseAndNavigate: submitCaseAndNavigate, routeProps: props.routeProps })));
160
+ React.createElement(AlertToastWrapper, { submitCaseAndNavigate: submitCaseAndNavigate, routeProps: props.routeProps }),
161
+ React.createElement(ProductNotEntitledModal, { isOpen: showEntitlementModal, onClose: () => {
162
+ setShowEntitlementModal(false);
163
+ setCaseState(caseDispatch, { entitlementWarningDismissedForProduct: product });
164
+ } })));
136
165
  }
@@ -1 +1 @@
1
- {"version":3,"file":"getEscalationDetails.d.ts","sourceRoot":"","sources":["../../../../src/graphql/queries/getEscalationDetails.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,sBAAsB,uCAsBlC,CAAC"}
1
+ {"version":3,"file":"getEscalationDetails.d.ts","sourceRoot":"","sources":["../../../../src/graphql/queries/getEscalationDetails.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,sBAAsB,uCA6BlC,CAAC"}
@@ -15,6 +15,13 @@ export const GET_ESCALATION_DETAILS = gql `
15
15
  Status {
16
16
  value
17
17
  }
18
+ Owner {
19
+ ... on RedHatSupportGroup {
20
+ Name {
21
+ value
22
+ }
23
+ }
24
+ }
18
25
  }
19
26
  }
20
27
  }
@@ -274,6 +274,8 @@ export interface ICaseState {
274
274
  customEmailsList: IApiResponseDetails<Partial<ICaseNotificationAddresses[]>>;
275
275
  ownersEntitlements: IApiResponseDetails<IEntitlement[]>;
276
276
  hasInvalidEntitlements: boolean;
277
+ isProductNotEntitled: boolean;
278
+ entitlementWarningDismissedForProduct: string | null;
277
279
  hasCaseUpdateError: boolean;
278
280
  isCaseUpdating: boolean;
279
281
  caseDetailsError: IAPIError;
@@ -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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"}
@@ -220,6 +220,8 @@ export const initialCaseState = {
220
220
  selectedCaseGroupUsers: getApiResourceObject([]),
221
221
  customEmailsList: getApiResourceObject([]),
222
222
  hasInvalidEntitlements: false,
223
+ isProductNotEntitled: false,
224
+ entitlementWarningDismissedForProduct: null,
223
225
  hasCaseUpdateError: false,
224
226
  isCaseUpdating: false,
225
227
  caseDetailsError: null,
@@ -1 +1 @@
1
- {"version":3,"file":"CaseDetailsPageReducer.d.ts","sourceRoot":"","sources":["../../../src/reducers/CaseDetailsPageReducer.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oDAAoD,CAAC;AACtF,OAAO,EAAE,WAAW,EAAE,MAAM,2CAA2C,CAAC;AACxE,OAAO,EAAE,eAAe,EAAE,MAAM,2CAA2C,CAAC;AAC5E,OAAO,EAAE,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AACxE,OAAO,EACH,iBAAiB,EAIpB,MAAM,mBAAmB,CAAC;AAI3B,KAAK,WAAW,GAAG,OAAO,CAAC,oBAAoB,EAAE,cAAc,CAAC,CAAC;AACjE,MAAM,MAAM,8BAA8B,GAAG,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,CAAC;AAE1E,oBAAY,oBAAoB;IAC5B,WAAW,gBAAgB;CAC9B;AAED,MAAM,WAAW,cAAc;IAC3B,kBAAkB,EAAE,mBAAmB,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC;IACrE,mBAAmB,EAAE,mBAAmB,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;IAGjE,0BAA0B,EAAE,mBAAmB,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IACpE,eAAe,EAAE,mBAAmB,CAAC,eAAe,EAAE,CAAC,CAAC;CAC3D;AAED,eAAO,MAAM,2BAA2B,EAAE,cAOzC,CAAC;AAEF,eAAO,MAAM,sBAAsB,GAAI,OAAO,cAAc,EAAE,QAAQ,WAAW,KAAG,GASnF,CAAC;AAEF,eAAO,MAAM,gBAAgB,GACzB,UAAU,8BAA8B,EACxC,YAAY,MAAM,EAClB,cAAc,iBAAiB,EAC/B,mBAAmB,MAAM,kBA+B5B,CAAC;AAEF,eAAO,MAAM,cAAc,GAAU,UAAU,8BAA8B,EAAE,YAAY,MAAM,kBAoBhG,CAAC;AAsBF,eAAO,MAAM,qBAAqB,GAAU,WAAW,8BAA8B,EAAE,aAAa,MAAM,kBAEzG,CAAC;AAEF,eAAO,MAAM,oBAAoB,GAC7B,UAAU,8BAA8B,EACxC,UAAU,MAAM,EAChB,cAAc;IAAE,KAAK,EAAE,CAAC,OAAO,EAAE,GAAG,KAAK,OAAO,CAAC,GAAG,CAAC,CAAA;CAAE,EACvD,oBAAiB,kBAgCpB,CAAC"}
1
+ {"version":3,"file":"CaseDetailsPageReducer.d.ts","sourceRoot":"","sources":["../../../src/reducers/CaseDetailsPageReducer.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oDAAoD,CAAC;AACtF,OAAO,EAAE,WAAW,EAAE,MAAM,2CAA2C,CAAC;AACxE,OAAO,EAAE,eAAe,EAAE,MAAM,2CAA2C,CAAC;AAC5E,OAAO,EAAE,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AACxE,OAAO,EACH,iBAAiB,EAIpB,MAAM,mBAAmB,CAAC;AAI3B,KAAK,WAAW,GAAG,OAAO,CAAC,oBAAoB,EAAE,cAAc,CAAC,CAAC;AACjE,MAAM,MAAM,8BAA8B,GAAG,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,CAAC;AAE1E,oBAAY,oBAAoB;IAC5B,WAAW,gBAAgB;CAC9B;AAED,MAAM,WAAW,cAAc;IAC3B,kBAAkB,EAAE,mBAAmB,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC;IACrE,mBAAmB,EAAE,mBAAmB,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;IAGjE,0BAA0B,EAAE,mBAAmB,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IACpE,eAAe,EAAE,mBAAmB,CAAC,eAAe,EAAE,CAAC,CAAC;CAC3D;AAED,eAAO,MAAM,2BAA2B,EAAE,cAOzC,CAAC;AAEF,eAAO,MAAM,sBAAsB,GAAI,OAAO,cAAc,EAAE,QAAQ,WAAW,KAAG,GASnF,CAAC;AAEF,eAAO,MAAM,gBAAgB,GACzB,UAAU,8BAA8B,EACxC,YAAY,MAAM,EAClB,cAAc,iBAAiB,EAC/B,mBAAmB,MAAM,kBA+B5B,CAAC;AAEF,eAAO,MAAM,cAAc,GAAU,UAAU,8BAA8B,EAAE,YAAY,MAAM,kBAoBhG,CAAC;AAsBF,eAAO,MAAM,qBAAqB,GAAU,WAAW,8BAA8B,EAAE,aAAa,MAAM,kBAEzG,CAAC;AAEF,eAAO,MAAM,oBAAoB,GAC7B,UAAU,8BAA8B,EACxC,UAAU,MAAM,EAChB,cAAc;IAAE,KAAK,EAAE,CAAC,OAAO,EAAE,GAAG,KAAK,OAAO,CAAC,GAAG,CAAC,CAAA;CAAE,EACvD,oBAAiB,kBAiCpB,CAAC"}
@@ -115,12 +115,16 @@ export const fetchCaseEscalations = (dispatch_1, parentId_1, apolloClient_1, ...
115
115
  variables: { where: { ParentId: { eq: parentId } } },
116
116
  });
117
117
  const edges = (_d = (_c = (_b = (_a = data === null || data === void 0 ? void 0 : data.redhat_support_uiapi) === null || _a === void 0 ? void 0 : _a.query) === null || _b === void 0 ? void 0 : _b.RedHatSupportCase) === null || _c === void 0 ? void 0 : _c.edges) !== null && _d !== void 0 ? _d : [];
118
- const caseEscalations = edges.map(({ node }) => ({
119
- name: node.CaseNumber.value,
120
- subject: node.Subject.value,
121
- status: node.Status.value,
122
- escalationSource: 'RME Escalation',
123
- }));
118
+ const caseEscalations = edges.map(({ node }) => {
119
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j;
120
+ return ({
121
+ name: (_b = (_a = node.CaseNumber) === null || _a === void 0 ? void 0 : _a.value) !== null && _b !== void 0 ? _b : '',
122
+ subject: (_d = (_c = node.Subject) === null || _c === void 0 ? void 0 : _c.value) !== null && _d !== void 0 ? _d : '',
123
+ status: (_f = (_e = node.Status) === null || _e === void 0 ? void 0 : _e.value) !== null && _f !== void 0 ? _f : '',
124
+ owner: (_j = (_h = (_g = node.Owner) === null || _g === void 0 ? void 0 : _g.Name) === null || _h === void 0 ? void 0 : _h.value) !== null && _j !== void 0 ? _j : '',
125
+ escalationSource: 'RME Escalation',
126
+ });
127
+ });
124
128
  dispatch({
125
129
  type: CaseDetailsConstants.updateState,
126
130
  payload: { caseEscalations: getApiResourceObject(caseEscalations, false) },
@@ -10,13 +10,13 @@ import { ICaseState, IGraphQLCasePayload } from './CaseConstNTypes';
10
10
  export declare const getCaseRecommendations: (docs: ISolrRecommendation[], oldDocs: any) => any[];
11
11
  export declare const getCepCommentFromCepDetails: (cepDetails: ICepDetails) => string;
12
12
  export declare const getRecommendationObject: (doc: ISolrRecommendation, index: number) => ICaseResourceLink;
13
- export declare const getUpdatedDescription: (issue: string, environment?: string, periodicityOfIssue?: string, timeFramesAndUrgency?: string, v3ClusterName?: string, product?: string, version?: string) => string;
13
+ export declare const getUpdatedDescription: (issue: string, environment?: string, periodicityOfIssue?: string, timeFramesAndUrgency?: string, v3ClusterName?: string, product?: string, version?: string, noClusterIdReason?: string, noClusterIdReasonExplanation?: string) => string;
14
14
  export declare const getDescriptionWOQues: (issue: string, environment?: string, periodicityOfIssue?: string, timeFramesAndUrgency?: string) => string;
15
15
  export declare const getIrtForSLAAndSeverity: (slaProcessId: string, severity: string) => string;
16
16
  export declare const getNewSeverityStringDef: (severity: string) => string | React.JSX.Element;
17
17
  export declare const getOrtForSLAAndSeverity: (slaProcessId: string, severity: string) => string;
18
18
  export declare const getSeverityDescription: (severity: string) => string;
19
- export declare const isClusterIDValid: (_caseState: any, _allProducts: any) => boolean;
19
+ export declare const isClusterIDValid: (caseState: any, allProducts: any) => boolean;
20
20
  export declare const isCaseStateValid: (caseState: ICaseState, loggedInUserRights: IApiResponseDetails<UserAuth>) => boolean;
21
21
  export declare const isIdeaCaseStateValid: (caseState: ICaseState, loggedInUserRights: IApiResponseDetails<UserAuth>) => boolean;
22
22
  export declare const isCaseManagementStateValid: (caseState: ICaseState, loggedInUserRights: IApiResponseDetails<UserAuth>) => boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"CaseHelpers.d.ts","sourceRoot":"","sources":["../../../src/reducers/CaseHelpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CaseHelpers.d.ts","sourceRoot":"","sources":["../../../src/reducers/CaseHelpers.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { getAppVersion, getTechnicalSupportRecordTypeId, getUserAgentForCaseMode, isPremiumEntitlement, showFtsOnCreateCasePage, } from '@rh-support/utils';
1
+ import { getAppVersion, getTechnicalSupportRecordTypeId, getUserAgentForCaseMode, getVersion, isPremiumEntitlement, showFtsOnCreateCasePage, } from '@rh-support/utils';
2
2
  import filter from 'lodash/filter';
3
3
  import forEach from 'lodash/forEach';
4
4
  import isEmpty from 'lodash/isEmpty';
@@ -8,7 +8,7 @@ import unionBy from 'lodash/unionBy';
8
8
  import uniqBy from 'lodash/uniqBy';
9
9
  import React from 'react';
10
10
  import { isPhoneValid, trimAndReplacePlus } from '../components/shared/utils';
11
- // import { isClusterIdEnabledForProduct } from '../utils/caseOpenshiftClusterIdUtils';
11
+ import { getIsClusterIdInvalid, isClusterIdEnabledForProduct } from '../utils/caseOpenshiftClusterIdUtils';
12
12
  import { CASE_DETAILS_ISSUE_LIMIT, CASE_REFERENCE_NUMBER_LIMIT, CLUSTER_ID_LIMIT, CONTACT_INFO_24X7_LIMIT, DESCRIPTION_LENGTH_LIMIT, HOSTNAME_LENGTH_LIMIT, IDEA_SECOND_KTQUESTION_MAX_LIMIT, ITRForSLASeverity, KTQUESTION_MAX_LIMIT, KtQuestionConstant, LANGUAGE_MAP, SESSION_ENVIRONMENT_LIMIT, SESSION_ISSUE_LIMIT, SESSION_NO_CLUSTER_REASON_EXPLANATION_LENGTH_LIMIT, SESSION_NO_CLUSTER_REASON_LENGTH_LIMIT, SESSION_NOTIFIED_USERS_EXTERNAL_LIMIT, SESSION_NOTIFIED_USERS_INTERNAL_LIMIT, SESSION_PERIODICITY_OF_ISSUE_LIMIT, SESSION_PHONE_LENGTH_LIMIT, SESSION_TIME_FRAMES_URGENCY_LIMIT, SeverityDescription, SeverityDescriptionDetails, TITLE_SUMMARY_LENGTH_LIMIT, } from './CaseConstNTypes';
13
13
  export const getCaseRecommendations = (docs, oldDocs) => {
14
14
  const recs = [];
@@ -47,7 +47,7 @@ export const getRecommendationObject = (doc, index) => {
47
47
  return rec;
48
48
  };
49
49
  // Responsible for the order of the questions in which they appear on case details
50
- export const getUpdatedDescription = (issue, environment, periodicityOfIssue, timeFramesAndUrgency, v3ClusterName, product, version) => {
50
+ export const getUpdatedDescription = (issue, environment, periodicityOfIssue, timeFramesAndUrgency, v3ClusterName, product, version, noClusterIdReason, noClusterIdReasonExplanation) => {
51
51
  let description = issue;
52
52
  const v3ClusterNameFinal = product === 'OpenShift Container Platform' && version !== '3.11' ? '' : v3ClusterName;
53
53
  if (!isEmpty(environment) ||
@@ -66,6 +66,12 @@ export const getUpdatedDescription = (issue, environment, periodicityOfIssue, ti
66
66
  ? `\n\n${KtQuestionConstant.periodicityOfIssue}\n${periodicityOfIssue}`
67
67
  : '';
68
68
  }
69
+ if (!isEmpty(noClusterIdReason)) {
70
+ description += `\n\nOpenShift Cluster ID\n${noClusterIdReason}`;
71
+ }
72
+ if (!isEmpty(noClusterIdReasonExplanation) && noClusterIdReasonExplanation !== 'v3-cluster') {
73
+ description += `\n\nI don't have my Cluster ID, because\n${noClusterIdReasonExplanation}`;
74
+ }
69
75
  return description;
70
76
  };
71
77
  // Gets the descriptions without questions
@@ -117,47 +123,33 @@ export const getSeverityDescription = (severity) => {
117
123
  }
118
124
  return SeverityDescription[severity];
119
125
  };
120
- // TODO: Re-enable cluster ID validation when cluster ID field is made mandatory again
121
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
122
- export const isClusterIDValid = (_caseState, _allProducts) => {
123
- return true;
124
- // const case_details = _caseState.caseDetails;
125
- // const productHasClusterID = isClusterIdEnabledForProduct(case_details.product, _allProducts);
126
- //
127
- // //if product doesn't have clusterId we don't need to validate value
128
- // if (!productHasClusterID) return true;
129
- //
130
- // const majorVersion = (case_details.version && getVersion(case_details.version).major) || '';
131
- // const isOpenShiftV3 = case_details.product === 'OpenShift Container Platform' && majorVersion === '3';
132
- //
133
- // const hasValidClusterId = () =>
134
- // !isEmpty(case_details.openshiftClusterID) &&
135
- // isEmpty(case_details.noClusterIdReason) &&
136
- // isEmpty(case_details.noClusterIdReasonExplanation) &&
137
- // isEmpty(caseState.v3ClusterName) &&
138
- // !getIsClusterIdInvalid(case_details.openshiftClusterID);
139
- //
140
- // const hasValidReason = () =>
141
- // isEmpty(case_details.openshiftClusterID) &&
142
- // !isEmpty(case_details.noClusterIdReason) &&
143
- // case_details.noClusterIdReason !== 'Other' &&
144
- // isEmpty(case_details.noClusterIdReasonExplanation) &&
145
- // isEmpty(caseState.v3ClusterName);
146
- //
147
- // const hasValidReasonExplanation = () =>
148
- // isEmpty(case_details.openshiftClusterID) &&
149
- // !isEmpty(case_details.noClusterIdReason) &&
150
- // case_details.noClusterIdReason === 'Other' &&
151
- // !isEmpty(case_details.noClusterIdReasonExplanation) &&
152
- // case_details.noClusterIdReasonExplanation !== 'v3-cluster' &&
153
- // case_details.noClusterIdReasonExplanation.length <= SESSION_NO_CLUSTER_REASON_LENGTH_LIMIT;
154
- //
155
- // const hasValidV3ClusterName = () =>
156
- // isEmpty(case_details.openshiftClusterID) &&
157
- // !isEmpty(caseState.v3ClusterName) &&
158
- // (case_details.noClusterIdReasonExplanation === 'v3-cluster' || isOpenShiftV3);
159
- //
160
- // return hasValidClusterId() || hasValidReason() || hasValidReasonExplanation() || hasValidV3ClusterName();
126
+ export const isClusterIDValid = (caseState, allProducts) => {
127
+ const case_details = caseState.caseDetails;
128
+ const productHasClusterID = isClusterIdEnabledForProduct(case_details.product);
129
+ if (!productHasClusterID)
130
+ return true;
131
+ const majorVersion = (case_details.version && getVersion(case_details.version).major) || '';
132
+ const isOpenShiftV3 = case_details.product === 'OpenShift Container Platform' && majorVersion === '3';
133
+ const hasValidClusterId = () => !isEmpty(case_details.openshiftClusterID) &&
134
+ isEmpty(case_details.noClusterIdReason) &&
135
+ isEmpty(case_details.noClusterIdReasonExplanation) &&
136
+ isEmpty(caseState.v3ClusterName) &&
137
+ !getIsClusterIdInvalid(case_details.openshiftClusterID);
138
+ const hasValidReason = () => isEmpty(case_details.openshiftClusterID) &&
139
+ !isEmpty(case_details.noClusterIdReason) &&
140
+ case_details.noClusterIdReason !== 'Other' &&
141
+ isEmpty(case_details.noClusterIdReasonExplanation) &&
142
+ isEmpty(caseState.v3ClusterName);
143
+ const hasValidReasonExplanation = () => isEmpty(case_details.openshiftClusterID) &&
144
+ !isEmpty(case_details.noClusterIdReason) &&
145
+ case_details.noClusterIdReason === 'Other' &&
146
+ !isEmpty(case_details.noClusterIdReasonExplanation) &&
147
+ case_details.noClusterIdReasonExplanation !== 'v3-cluster' &&
148
+ case_details.noClusterIdReasonExplanation.length <= SESSION_NO_CLUSTER_REASON_LENGTH_LIMIT;
149
+ const hasValidV3ClusterName = () => isEmpty(case_details.openshiftClusterID) &&
150
+ !isEmpty(caseState.v3ClusterName) &&
151
+ (case_details.noClusterIdReasonExplanation === 'v3-cluster' || isOpenShiftV3);
152
+ return hasValidClusterId() || hasValidReason() || hasValidReasonExplanation() || hasValidV3ClusterName();
161
153
  };
162
154
  // Add a !isEmpty to to make any KTQuestion Mandatory in isCaseStateValid
163
155
  export const isCaseStateValid = (caseState, loggedInUserRights) => {
@@ -233,11 +225,17 @@ export const isCaseInformationSectionValid = (caseState, loggedInUserRights) =>
233
225
  loggedInUserRights.data.canManageCases());
234
226
  };
235
227
  const assignDescriptionFields = (casePayload, case_details, v3ClusterName) => {
236
- const hasDescriptionContext = !isEmpty(case_details.environment) ||
237
- !isEmpty(case_details.periodicityOfIssue) ||
238
- !isEmpty(case_details.timeFramesAndUrgency);
239
- if (!isEmpty(case_details.issue) && hasDescriptionContext) {
240
- casePayload.Description = case_details.description;
228
+ if (!isEmpty(case_details.description)) {
229
+ let description = case_details.description;
230
+ if (!isEmpty(case_details.noClusterIdReason) && !description.includes('\n\nNo Cluster ID Reason\n')) {
231
+ description += `\n\nNo Cluster ID Reason\n${case_details.noClusterIdReason}`;
232
+ }
233
+ if (!isEmpty(case_details.noClusterIdReasonExplanation) &&
234
+ case_details.noClusterIdReasonExplanation !== 'v3-cluster' &&
235
+ !description.includes('\n\nNo Cluster ID Reason Explanation\n')) {
236
+ description += `\n\nNo Cluster ID Reason Explanation\n${case_details.noClusterIdReasonExplanation}`;
237
+ }
238
+ casePayload.Description = description;
241
239
  }
242
240
  if (!isEmpty(case_details.environment) || !isEmpty(v3ClusterName)) {
243
241
  const clusterPrefix = v3ClusterName ? `OpenShift Cluster Name: ${v3ClusterName}\n` : '';
@@ -254,14 +252,16 @@ const assignOptionalIdentifiers = (casePayload, caseState) => {
254
252
  var _a, _b, _c, _d;
255
253
  const case_details = caseState.caseDetails;
256
254
  const contactId = (_b = (_a = caseState.selectedOwner) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b.id;
255
+ const countryCode = (_c = case_details === null || case_details === void 0 ? void 0 : case_details.phoneCountryCode) === null || _c === void 0 ? void 0 : _c.trim();
256
+ const phoneLine = (_d = case_details.phoneAreaCodePrefixLineNumber) === null || _d === void 0 ? void 0 : _d.trim();
257
257
  if (!isEmpty(contactId))
258
258
  casePayload.ContactId = contactId;
259
259
  if (!isEmpty(caseState.selectedEntitlementId))
260
260
  casePayload.EntitlementId = caseState.selectedEntitlementId;
261
261
  if (!isEmpty(caseState.selectedVersionId))
262
262
  casePayload.ProductId = caseState.selectedVersionId;
263
- if (!isEmpty((_c = case_details.phoneAreaCodePrefixLineNumber) === null || _c === void 0 ? void 0 : _c.trim())) {
264
- casePayload.SuppliedPhone = (_d = case_details.phoneAreaCodePrefixLineNumber) === null || _d === void 0 ? void 0 : _d.trim();
263
+ if (!isEmpty(countryCode) && !isEmpty(phoneLine)) {
264
+ casePayload.SuppliedPhone = `${countryCode} ${phoneLine}`;
265
265
  }
266
266
  if (!isEmpty(case_details.alternateId))
267
267
  casePayload.AlternateCaseId__c = case_details.alternateId;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rh-support/troubleshoot",
3
- "version": "2.6.304",
3
+ "version": "2.6.306",
4
4
  "publishConfig": {
5
5
  "access": "public",
6
6
  "registry": "https://registry.npmjs.org"
@@ -52,11 +52,11 @@
52
52
  "@progress/kendo-licensing": "1.3.5",
53
53
  "@progress/kendo-react-pdf": "^5.16.0",
54
54
  "@redux-devtools/extension": "^3.3.0",
55
- "@rh-support/components": "2.5.185",
56
- "@rh-support/react-context": "2.5.279",
55
+ "@rh-support/components": "2.5.187",
56
+ "@rh-support/react-context": "2.5.281",
57
57
  "@rh-support/types": "2.0.26",
58
- "@rh-support/user-permissions": "2.5.131",
59
- "@rh-support/utils": "2.5.113",
58
+ "@rh-support/user-permissions": "2.5.133",
59
+ "@rh-support/utils": "2.5.115",
60
60
  "@types/react-redux": "^7.1.33",
61
61
  "@types/redux": "^3.6.0",
62
62
  "date-fns": "3.6.0",
@@ -126,5 +126,5 @@
126
126
  "defaults and supports es6-module",
127
127
  "maintained node versions"
128
128
  ],
129
- "gitHead": "4e6af2167e2c8cc3a0b949a41f1e82c1b7ca1d0a"
129
+ "gitHead": "62de68194f68d9d3546ff5e6569d2d5137609e8e"
130
130
  }