@rh-support/troubleshoot 2.4.5-beta.15 → 2.4.5-beta.17

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 (36) hide show
  1. package/lib/esm/components/CaseInformation/Description.d.ts.map +1 -1
  2. package/lib/esm/components/CaseInformation/Description.js +4 -2
  3. package/lib/esm/components/CaseManagement/OpenShiftClusterId.js +2 -2
  4. package/lib/esm/components/Cve/CveItem.js +3 -3
  5. package/lib/esm/components/Cve/CveModal.d.ts.map +1 -1
  6. package/lib/esm/components/Cve/CveModal.js +1 -1
  7. package/lib/esm/components/OpenCase/OpenCase.js +3 -3
  8. package/lib/esm/components/ProductSelector/AllProductsSelector.js +4 -4
  9. package/lib/esm/components/ProductSelector/ProductSelector.d.ts.map +1 -1
  10. package/lib/esm/components/ProductSelector/ProductSelector.js +19 -8
  11. package/lib/esm/components/Recommendations/Recommendations.d.ts.map +1 -1
  12. package/lib/esm/components/Recommendations/Recommendations.js +18 -14
  13. package/lib/esm/components/Review/Review.js +3 -3
  14. package/lib/esm/components/SessionRestore/SessionRestore.js +3 -3
  15. package/lib/esm/components/SubmitCase/SubmitCase.d.ts.map +1 -1
  16. package/lib/esm/components/SubmitCase/SubmitCase.js +1 -1
  17. package/lib/esm/components/shared/useIsSectionValid.js +4 -4
  18. package/lib/esm/components/wizardLayout/WizardAside.js +3 -3
  19. package/lib/esm/components/wizardLayout/WizardLayout.d.ts.map +1 -1
  20. package/lib/esm/components/wizardLayout/WizardLayout.js +18 -8
  21. package/lib/esm/components/wizardLayout/WizardNavigation.d.ts.map +1 -1
  22. package/lib/esm/components/wizardLayout/WizardNavigation.js +25 -9
  23. package/lib/esm/hooks/useFetchCVEData.d.ts.map +1 -1
  24. package/lib/esm/hooks/useFetchCVEData.js +10 -12
  25. package/lib/esm/hooks/useWizard.d.ts.map +1 -1
  26. package/lib/esm/hooks/useWizard.js +3 -2
  27. package/lib/esm/reducers/CaseConstNTypes.d.ts +2 -3
  28. package/lib/esm/reducers/CaseConstNTypes.d.ts.map +1 -1
  29. package/lib/esm/reducers/CaseConstNTypes.js +2 -3
  30. package/lib/esm/reducers/CaseReducer.d.ts +1 -1
  31. package/lib/esm/reducers/CaseReducer.d.ts.map +1 -1
  32. package/lib/esm/reducers/CaseReducer.js +5 -5
  33. package/lib/esm/reducers/RouteConstNTypes.d.ts +1 -1
  34. package/lib/esm/reducers/RouteConstNTypes.d.ts.map +1 -1
  35. package/lib/esm/scss/_main.scss +16 -0
  36. package/package.json +6 -6
@@ -1 +1 @@
1
- {"version":3,"file":"Description.d.ts","sourceRoot":"","sources":["../../../../src/components/CaseInformation/Description.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAsC,MAAM,OAAO,CAAC;AAQ3D,UAAU,MAAM;IACZ,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAChC;AAED,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,KAAK,EAAE,MAAM,qBAgKhD"}
1
+ {"version":3,"file":"Description.d.ts","sourceRoot":"","sources":["../../../../src/components/CaseInformation/Description.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAsC,MAAM,OAAO,CAAC;AAQ3D,UAAU,MAAM;IACZ,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAChC;AAED,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,KAAK,EAAE,MAAM,qBAmKhD"}
@@ -12,7 +12,7 @@ import { getUpdatedDescription } from '../../reducers/CaseHelpers';
12
12
  import { setCaseDetails } from '../../reducers/CaseReducer';
13
13
  export default function Description(props) {
14
14
  const { t } = useTranslation();
15
- const { issue, environment, periodicityOfIssue, timeFramesAndUrgency, v3ClusterName, version } = useCaseSelector((state) => ({
15
+ const { issue, environment, periodicityOfIssue, timeFramesAndUrgency, v3ClusterName, version, product, summary } = useCaseSelector((state) => ({
16
16
  description: state.caseDetails.description,
17
17
  issue: state.caseDetails.issue,
18
18
  environment: state.caseDetails.environment,
@@ -21,6 +21,8 @@ export default function Description(props) {
21
21
  timeFramesAndUrgency: state.caseDetails.timeFramesAndUrgency,
22
22
  hasLargeCaseDescription: state.hasLargeCaseDescription,
23
23
  v3ClusterName: state.v3ClusterName,
24
+ product: state.caseDetails.product,
25
+ summary: state.caseDetails.summary,
24
26
  }), isEqual);
25
27
  const caseDispatch = useCaseDispatch();
26
28
  const breakPoint = useBreakpoint();
@@ -76,7 +78,7 @@ export default function Description(props) {
76
78
  isKT1Required && (React.createElement("span", { className: "form-required", "aria-hidden": true }, "*")),
77
79
  React.createElement(Popover, { isVisible: isOpen, shouldClose: handleClose, headerContent: headerPopoverContent, bodyContent: PopoverContent },
78
80
  React.createElement(OutlinedQuestionCircleIcon, { className: "pf-v5-u-ml-xs icon-size", onClick: handleToggle }))))), labelProps: { htmlFor: 'get-support-ktQ1-issue' }, content: issue, allowInlineEdit: !!props.inlineEditable, hideSaveCancel: !!props.hideSaveCancel, initialIsEditing: isEmpty(issue), usePreformattedTag: true, saveOnBlur: true },
79
- React.createElement(TextArea, { id: "get-support-ktQ1-issue", name: "get-support-ktQ1-issue", className: `description-textarea ${isEmpty(version) && isEmpty(issue) ? 'kt1-disabled' : ''}`, "aria-invalid": (issue === null || issue === void 0 ? void 0 : issue.length) > CASE_DETAILS_ISSUE_LIMIT ? 'true' : 'false', "aria-required": isKT1Required, isRequired: isKT1Required, value: issue, disabled: isEmpty(version) && isEmpty(issue), onChange: (e, value) => onKTQ1IssueChange(value, e), "data-tracking-id": "get-support-ktQ1-issue", placeholder: t(`The more detail that you include, the easier it is for us to help you. \nExample: \nI'm unable to start the SSHD service and am receiving the error message "Bad yes/no \nargument for ShowPatchLevel parameter"`), resizeOrientation: "vertical", validated: props.isSummarizeInvalid ? 'error' : 'default', rows: isLgScreenHeight ? 10 : 4, ref: textAreaRef, onClick: handleTextAreaClick }),
81
+ React.createElement(TextArea, { id: "get-support-ktQ1-issue", name: "get-support-ktQ1-issue", className: `description-textarea ${isEmpty(version) && isEmpty(issue) ? 'kt1-disabled' : ''}`, "aria-invalid": (issue === null || issue === void 0 ? void 0 : issue.length) > CASE_DETAILS_ISSUE_LIMIT ? 'true' : 'false', "aria-required": isKT1Required, isRequired: isKT1Required, value: issue, disabled: isEmpty(version) || isEmpty(summary) || isEmpty(product), onChange: (e, value) => onKTQ1IssueChange(value, e), "data-tracking-id": "get-support-ktQ1-issue", placeholder: t(`The more detail that you include, the easier it is for us to help you. \nExample: \nI'm unable to start the SSHD service and am receiving the error message "Bad yes/no \nargument for ShowPatchLevel parameter"`), resizeOrientation: "vertical", validated: props.isSummarizeInvalid ? 'error' : 'default', rows: isLgScreenHeight ? 10 : 4, ref: textAreaRef, onClick: handleTextAreaClick }),
80
82
  React.createElement("p", { className: "form-instructions pf-v5-u-danger-color-100", "data-tracking-id": "large-20k-warning-ktQ1-environment" }, `${(issue === null || issue === void 0 ? void 0 : issue.length) > CASE_DETAILS_ISSUE_LIMIT
81
83
  ? `This description exceeds ${CASE_DETAILS_ISSUE_LIMIT} characters. Try shortening it.`
82
84
  : ''}`)));
@@ -86,16 +86,16 @@ export function OpenShiftClusterId(props) {
86
86
  */
87
87
  useEffect(() => {
88
88
  var _a;
89
- if (isEmpty(product) || isEmpty(version))
89
+ if (isEmpty(product))
90
90
  return;
91
91
  const isClusterVisible = () => __awaiter(this, void 0, void 0, function* () {
92
92
  var _a, _b;
93
93
  const hasCluster = yield isClusterIdEnabledForProduct(product, (_a = allProducts.data) === null || _a === void 0 ? void 0 : _a.productsResult);
94
+ setShowClusterId(hasCluster);
94
95
  if (!hasCluster) {
95
96
  resetClusterData();
96
97
  return;
97
98
  }
98
- setShowClusterId(hasCluster);
99
99
  // if clusterId is already populated it means it comes from session and
100
100
  // we ignore url clusterId otherwise we get cluster id from url and validate it
101
101
  const clusterIdFromUrl = queryParams === null || queryParams === void 0 ? void 0 : queryParams.clusterId;
@@ -76,14 +76,14 @@ export const CveItem = (props) => {
76
76
  !isEmpty(cve === null || cve === void 0 ? void 0 : cve.severity) && (React.createElement(Label, { color: cve.severity === 'Critical'
77
77
  ? 'red'
78
78
  : cve.severity === 'Important'
79
- ? 'blue'
79
+ ? 'orange'
80
80
  : cve.severity === 'Moderate'
81
- ? 'orange'
81
+ ? 'gold'
82
82
  : undefined, isCompact: true }, cve.severity)),
83
83
  !isEmpty(cve.errataData) && (React.createElement(Label, { color: "blue", isCompact: true },
84
84
  React.createElement(Trans, null, "Fixed"))),
85
85
  !isEmpty(cve.mitigation) && (React.createElement(Label, { isCompact: true },
86
- React.createElement(Trans, { color: "blue" }, "Mitigation available")))));
86
+ React.createElement(Trans, { color: "grey" }, "Mitigation available")))));
87
87
  const displayErrataTable = () => {
88
88
  if (isEmpty(cve === null || cve === void 0 ? void 0 : cve.errataData)) {
89
89
  return null;
@@ -1 +1 @@
1
- {"version":3,"file":"CveModal.d.ts","sourceRoot":"","sources":["../../../../src/components/Cve/CveModal.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAqB,MAAM,OAAO,CAAC;AAU1C,eAAO,MAAM,QAAQ,yBAmEpB,CAAC"}
1
+ {"version":3,"file":"CveModal.d.ts","sourceRoot":"","sources":["../../../../src/components/Cve/CveModal.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAqB,MAAM,OAAO,CAAC;AAU1C,eAAO,MAAM,QAAQ,yBAoEpB,CAAC"}
@@ -34,7 +34,7 @@ export const CveModal = () => {
34
34
  };
35
35
  return (React.createElement(Modal, { variant: ModalVariant.medium, title: React.createElement(Flex, { alignItems: { default: 'alignItemsCenter' } },
36
36
  React.createElement(FlexItem, { spacer: { default: 'spacerSm' } }, cveWorkflowRecommendation.length > 1 ? (React.createElement(Trans, null, "Handpicked for these CVEs")) : (React.createElement(Trans, null, "Handpicked for this CVE"))),
37
- React.createElement(Badge, { isRead: true }, size(cveWorkflowRecommendation))), isOpen: isCveModalOpened && activeSection === AppRouteSections.SUMMARIZE, onClose: handleModalToggle, titleIconVariant: "info", disableFocusTrap: true, onEscapePress: handleEscapePress, actions: [
37
+ React.createElement(Badge, { isRead: true }, size(cveWorkflowRecommendation))), isOpen: isCveModalOpened && activeSection === AppRouteSections.SUMMARIZE, onClose: handleModalToggle, titleIconVariant: "info", disableFocusTrap: true, className: "cve-modal-fade-in-effect", onEscapePress: handleEscapePress, actions: [
38
38
  React.createElement(Button, { key: "cve-checker-link", "data-tracking-id": "cve-checker-link", target: "_blank", variant: "secondary", isInline: true, component: "a", href: generateCveCheckerUrl() },
39
39
  React.createElement(Trans, null, "Red Hat CVE Checker"),
40
40
  " ",
@@ -8,10 +8,10 @@ import ProductSelector from '../ProductSelector/ProductSelector';
8
8
  import SupportTypeSelectorPage from './SupportTypeSelectorPage';
9
9
  export default function OpenCase(props) {
10
10
  const canChangeAccountInfo = ability.can(resourceActions.PATCH, resources.CASE_CREATE, CaseListFields.ACCOUNT_AND_OWNER);
11
- const { ABTestVarioation } = useCaseSelector((state) => ({
12
- ABTestVarioation: state.ABTestVarioation,
11
+ const { ABTestVariation } = useCaseSelector((state) => ({
12
+ ABTestVariation: state.ABTestVariation,
13
13
  }), isEqual);
14
- const isATestvariation = ABTestVarioation === 'A';
14
+ const isATestvariation = ABTestVariation === 'A';
15
15
  return (React.createElement("form", null,
16
16
  canChangeAccountInfo && (React.createElement(React.Fragment, null,
17
17
  React.createElement(AccountSelector, { "data-tracking-id": "get-support-account-selector" }),
@@ -33,11 +33,11 @@ const AllProductsSelector = forwardRef((props, ref) => {
33
33
  var _a, _b;
34
34
  const { globalMetadataState: { allProducts, loggedInUserRights }, } = useContext(GlobalMetadataStateContext);
35
35
  const caseDispatch = useCaseDispatch();
36
- const { product, version, contactSSOName, ABTestVarioation } = useCaseSelector((state) => ({
36
+ const { product, version, contactSSOName, ABTestVariation } = useCaseSelector((state) => ({
37
37
  product: state.caseDetails.product,
38
38
  version: state.caseDetails.version,
39
39
  contactSSOName: state.caseDetails.contactSSOName,
40
- ABTestVarioation: state.ABTestVarioation,
40
+ ABTestVariation: state.ABTestVariation,
41
41
  }), isEqual);
42
42
  const { topContentState: { topContent }, } = useContext(TCStateContext);
43
43
  const { routeState: { activeSection }, } = useContext(RouteContext);
@@ -80,8 +80,8 @@ const AllProductsSelector = forwardRef((props, ref) => {
80
80
  RouteUtils.updateQueryParams(props.routeProps, newParams);
81
81
  }
82
82
  const entitledProducts = filter(allProducts.data.productsResult, (p) => p.isEntitledProduct);
83
- const isATestvariation = ABTestVarioation === 'A';
84
- const isBTestvariation = ABTestVarioation === 'B';
83
+ const isATestvariation = ABTestVariation === 'A';
84
+ const isBTestvariation = ABTestVariation === 'B' || isEmpty(ABTestVariation);
85
85
  // Determine whether to render the ProductVersionDropdownSelector
86
86
  const renderProductVersionDropdownSelector = (activeSection === AppRouteSections.SUMMARIZE && !props.caseCreateExperience) ||
87
87
  activeSection === AppRouteSections.GET_SUPPORT ||
@@ -1 +1 @@
1
- {"version":3,"file":"ProductSelector.d.ts","sourceRoot":"","sources":["../../../../src/components/ProductSelector/ProductSelector.tsx"],"names":[],"mappings":"AAMA,OAAO,KAA6B,MAAM,OAAO,CAAC;AAElD,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAKvD,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAOlE,UAAU,MAAM;IACZ,UAAU,EAAE,mBAAmB,CAAC,eAAe,CAAC,CAAC;IACjD,uBAAuB,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC;IACzE,gCAAgC,CAAC,EAAE,OAAO,CAAC;IAC3C,aAAa,CAAC,EAAE,KAAK,CAAC,gBAAgB,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IAC9D,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,oBAAoB,CAAC,EAAE,OAAO,CAAC;CAClC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,OAAO,UAAU,eAAe,CAAC,KAAK,EAAE,MAAM,qBAgGpD"}
1
+ {"version":3,"file":"ProductSelector.d.ts","sourceRoot":"","sources":["../../../../src/components/ProductSelector/ProductSelector.tsx"],"names":[],"mappings":"AAMA,OAAO,KAAwC,MAAM,OAAO,CAAC;AAE7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAMvD,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAOlE,UAAU,MAAM;IACZ,UAAU,EAAE,mBAAmB,CAAC,eAAe,CAAC,CAAC;IACjD,uBAAuB,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC;IACzE,gCAAgC,CAAC,EAAE,OAAO,CAAC;IAC3C,aAAa,CAAC,EAAE,KAAK,CAAC,gBAAgB,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IAC9D,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,oBAAoB,CAAC,EAAE,OAAO,CAAC;CAClC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,OAAO,UAAU,eAAe,CAAC,KAAK,EAAE,MAAM,qBA0GpD"}
@@ -4,11 +4,12 @@ import { GlobalMetadataStateContext } from '@rh-support/react-context';
4
4
  import { getConfigField, PCM_CONFIG_FIELD_TYPE } from '@rh-support/utils';
5
5
  import isEmpty from 'lodash/isEmpty';
6
6
  import isEqual from 'lodash/isEqual';
7
- import React, { useContext, useRef } from 'react';
7
+ import React, { useContext, useEffect, useRef } from 'react';
8
8
  import { Trans, useTranslation } from 'react-i18next';
9
- import { useCaseSelector } from '../../context/CaseContext';
9
+ import { useCaseDispatch, useCaseSelector } from '../../context/CaseContext';
10
10
  import { RouteContext } from '../../context/RouteContext';
11
11
  import { useFetchCVEData } from '../../hooks/useFetchCVEData';
12
+ import { setCaseState } from '../../reducers/CaseReducer';
12
13
  import { CveModal } from '../Cve/CveModal';
13
14
  import { EARuleWidget } from '../Recommendations/EARules/EARuleWidget';
14
15
  import Recommendations from '../Recommendations/Recommendations';
@@ -26,15 +27,25 @@ export default function ProductSelector(props) {
26
27
  const { cveRecommendation } = useFetchCVEData();
27
28
  const { t } = useTranslation();
28
29
  const { globalMetadataState: { allProducts, pcmConfig }, } = useContext(GlobalMetadataStateContext);
29
- const { product, version, ABTestVarioation } = useCaseSelector((state) => ({
30
+ const { product, version, ABTestVariation } = useCaseSelector((state) => ({
30
31
  product: state.caseDetails.product,
31
32
  version: state.caseDetails.version,
32
- ABTestVarioation: state.ABTestVarioation,
33
+ ABTestVariation: state.ABTestVariation,
33
34
  }), isEqual);
34
35
  const { routeState: { isCaseCreate }, } = useContext(RouteContext);
35
- const isCVEModalEnabled = getConfigField(pcmConfig.data, 'isCVEModalEnabled', PCM_CONFIG_FIELD_TYPE.STRING);
36
- const isATestvariation = ABTestVarioation === 'A';
37
- const isBTestvariation = ABTestVarioation === 'B';
36
+ const caseDispatch = useCaseDispatch();
37
+ const cveModalEnabledConfig = getConfigField(pcmConfig.data, 'isCVEModalEnabled', PCM_CONFIG_FIELD_TYPE.STRING);
38
+ const isCVEModalEnabled = cveModalEnabledConfig === '1';
39
+ const isATestvariation = ABTestVariation === 'A';
40
+ const isBTestvariation = ABTestVariation === 'B' || isEmpty(ABTestVariation);
41
+ useEffect(() => {
42
+ if (!isCVEModalEnabled) {
43
+ setCaseState(caseDispatch, {
44
+ isCveModalOpened: false,
45
+ });
46
+ }
47
+ // eslint-disable-next-line react-hooks/exhaustive-deps
48
+ }, [isCVEModalEnabled]);
38
49
  /**
39
50
  * The all product selector and top product selector should always be "selected" because
40
51
  * the all product selector needs to show the selection from the top products selector and the top product selector
@@ -42,7 +53,7 @@ export default function ProductSelector(props) {
42
53
  */
43
54
  const productSelectorRef = useRef(null);
44
55
  const rederProductSelect = (React.createElement("form", null,
45
- (cveRecommendation === null || cveRecommendation === void 0 ? void 0 : cveRecommendation.length) !== 0 && isCVEModalEnabled === '1' && React.createElement(CveModal, null),
56
+ (cveRecommendation === null || cveRecommendation === void 0 ? void 0 : cveRecommendation.length) !== 0 && isCVEModalEnabled && React.createElement(CveModal, null),
46
57
  React.createElement(AllProductsSelector, { routeProps: props.routeProps, checkEntitledProduct: isCaseCreate ? true : false, ref: productSelectorRef, isOnSummaryPage: true, isOnGetSupportPage: props === null || props === void 0 ? void 0 : props.isOnGetSupportPage, caseCreateExperience: props.caseCreateExperience })));
47
58
  return (React.createElement(React.Fragment, null,
48
59
  isBTestvariation && allProducts.isFetching && React.createElement(ProductSelectorLoader, null),
@@ -1 +1 @@
1
- {"version":3,"file":"Recommendations.d.ts","sourceRoot":"","sources":["../../../../src/components/Recommendations/Recommendations.tsx"],"names":[],"mappings":"AAmBA,OAAO,KAAkD,MAAM,OAAO,CAAC;AAEvE,OAAO,EAAE,mBAAmB,EAAa,MAAM,kBAAkB,CAAC;AAclE,OAAO,EAAoB,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAYpF,UAAU,MAAM;IACZ,UAAU,EAAE,mBAAmB,CAAC,eAAe,CAAC,CAAC;IACjD,uBAAuB,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC;IACzE,qCAAqC,CAAC,EAAE,OAAO,CAAC;IAChD,aAAa,EAAE,GAAG,CAAC;CACtB;AAED,MAAM,CAAC,OAAO,UAAU,eAAe,CAAC,KAAK,EAAE,MAAM,qBA2VpD"}
1
+ {"version":3,"file":"Recommendations.d.ts","sourceRoot":"","sources":["../../../../src/components/Recommendations/Recommendations.tsx"],"names":[],"mappings":"AAqBA,OAAO,KAAkD,MAAM,OAAO,CAAC;AAEvE,OAAO,EAAE,mBAAmB,EAAa,MAAM,kBAAkB,CAAC;AAelE,OAAO,EAAoB,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAYpF,UAAU,MAAM;IACZ,UAAU,EAAE,mBAAmB,CAAC,eAAe,CAAC,CAAC;IACjD,uBAAuB,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC;IACzE,qCAAqC,CAAC,EAAE,OAAO,CAAC;IAChD,aAAa,EAAE,GAAG,CAAC;CACtB;AAED,MAAM,CAAC,OAAO,UAAU,eAAe,CAAC,KAAK,EAAE,MAAM,qBA6WpD"}
@@ -3,8 +3,9 @@ import { Label, Pagination, PaginationVariant, Popover, Spinner } from '@pattern
3
3
  import InfoCircleIcon from '@patternfly/react-icons/dist/js/icons/info-circle-icon';
4
4
  import StarIcon from '@patternfly/react-icons/dist/js/icons/star-icon';
5
5
  import { LoadingDots, useDebounce, usePrevious } from '@rh-support/components';
6
- import { computeRecommendationAbstract, computeRecommendationTitle, dtmTrackEventCaseStartStopped, formatDate, } from '@rh-support/utils';
6
+ import { computeRecommendationAbstract, computeRecommendationTitle, dtmTrackEventCaseStartStopped, formatDate, getRecommendationTitle, } from '@rh-support/utils';
7
7
  import differenceBy from 'lodash/differenceBy';
8
+ import find from 'lodash/find';
8
9
  import isEmpty from 'lodash/isEmpty';
9
10
  import isEqual from 'lodash/isEqual';
10
11
  import map from 'lodash/map';
@@ -26,14 +27,15 @@ import { WatsonxAiIcon } from './WatsonxAiIcon';
26
27
  const { SessionResourceSource, SessionResourceVisibility } = pcm.preCase.session;
27
28
  export default function Recommendations(props) {
28
29
  var _a, _b, _c;
29
- const { product, version, environment, summary, caseResourceLinks, issue, ABTestVarioation } = useCaseSelector((state) => ({
30
+ const { product, version, environment, summary, caseResourceLinks, issue, ABTestVariation, cveWorkflowRecommendation, } = useCaseSelector((state) => ({
30
31
  product: state.caseDetails.product,
31
32
  version: state.caseDetails.version,
32
33
  environment: state.caseDetails.environment,
33
34
  summary: state.caseDetails.summary,
34
35
  issue: state.caseDetails.issue,
35
36
  caseResourceLinks: state.caseDetails.caseResourceLinks,
36
- ABTestVarioation: state.ABTestVarioation,
37
+ ABTestVariation: state.ABTestVariation,
38
+ cveWorkflowRecommendation: state.cveWorkflowRecommendation,
37
39
  }), isEqual);
38
40
  const caseDispatch = useCaseDispatch();
39
41
  const { caseNumber } = useParams();
@@ -54,8 +56,8 @@ export default function Recommendations(props) {
54
56
  summary: summary,
55
57
  description: issue, // we don't need to truncate to 20k as Watsonx max recs is 4000 done for us already
56
58
  };
57
- const isATestvariation = ABTestVarioation === 'A';
58
- const isBTestvariation = ABTestVarioation === 'B';
59
+ const isATestvariation = ABTestVariation === 'A';
60
+ const isBTestvariation = ABTestVariation === 'B' || isEmpty(ABTestVariation);
59
61
  const isRecSearchPayloadSame = isEqual(payload, recommendationState.prevRecommendationsBody);
60
62
  useEffect(() => {
61
63
  // currently due to the debounce we use after the page load leads to some delay in the disbaling of next button
@@ -109,7 +111,7 @@ export default function Recommendations(props) {
109
111
  recommendationState.insightsKcsIds,
110
112
  ], 1000);
111
113
  useEffect(() => {
112
- props.userSeenRecommendations && props.userSeenRecommendations(!recommendationState.isLoadingRecommendations); //reset userSeenRecommendations when recommendationState changes
114
+ props.userSeenRecommendations && props.userSeenRecommendations(false); //reset userSeenRecommendations when recommendationState changes
113
115
  // eslint-disable-next-line react-hooks/exhaustive-deps
114
116
  }, [recommendationState.numFound]);
115
117
  useEffect(() => {
@@ -156,19 +158,21 @@ export default function Recommendations(props) {
156
158
  const infoPopover = (React.createElement(Popover, { triggerAction: "hover", "aria-label": "Hoverable popover", headerContent: React.createElement("div", null,
157
159
  React.createElement(Trans, null, "Powered by Openshift AI")), bodyContent: React.createElement("div", null,
158
160
  React.createElement(Trans, null, "These articles have been selected based on the information provided."),
159
- React.createElement("br", null),
160
- React.createElement("a", { href: "#" }, "Learn more")) },
161
+ React.createElement("br", null)) },
161
162
  React.createElement(InfoCircleIcon, { color: "white" })));
162
163
  function getRankPercentage(decimal) {
163
164
  return Math.round(decimal * 100);
164
165
  }
165
- const computeLabel = (rerankScore) => {
166
- const percentage = getRankPercentage(rerankScore);
166
+ const computeLabel = (recommendationDoc) => {
167
+ const { rerank_score } = recommendationDoc;
168
+ const title = getRecommendationTitle(recommendationDoc);
169
+ const isCveExist = !isEmpty(find(cveWorkflowRecommendation, (cveW) => (cveW === null || cveW === void 0 ? void 0 : cveW.title) === title));
170
+ const percentage = getRankPercentage(rerank_score);
167
171
  return (React.createElement(React.Fragment, null,
168
- percentage > 80 && (React.createElement(Label, { color: "green", className: "match-label", icon: React.createElement(StarIcon, null) }, "Best Match")),
169
- React.createElement(Label, { className: "match-label", color: "purple" },
172
+ (percentage >= 80 || isCveExist) && (React.createElement(Label, { color: "green", className: "match-label", icon: React.createElement(StarIcon, null) }, isCveExist ? 'Exact match' : 'Best match')),
173
+ !isCveExist && (React.createElement(Label, { className: "match-label", color: "purple" },
170
174
  percentage,
171
- "% Match")));
175
+ "% Match"))));
172
176
  };
173
177
  return (React.createElement(React.Fragment, null,
174
178
  isBTestvariation && (React.createElement(LoadingDots, { className: "recommendation-loading-dots", show: recommendationState.isLoadingRecommendations && !isEmpty(summary) })),
@@ -198,7 +202,7 @@ export default function Recommendations(props) {
198
202
  React.createElement("header", { className: "result-header" },
199
203
  React.createElement("a", { href: `${doc.view_uri}?${RouteUtils.getSEResourceQueryParams(activeSessionId, (_b = (_a = sessionResourceTracking[SessionResourceSource.RECOMMENDATIONS]) === null || _a === void 0 ? void 0 : _a.resourceOriginId) !== null && _b !== void 0 ? _b : '', SessionResourceSource.RECOMMENDATIONS)}`, className: "se-recommended ts-result", "data-tracking-id": `se-recommended-main-recommendations-${i}`, rel: "noopener noreferrer", target: "_blank", onClick: onResourceClick(doc, i), dangerouslySetInnerHTML: computeRecommendationTitle(doc) }),
200
204
  React.createElement("div", { className: "header-meta" },
201
- isATestvariation && doc.rerank_score && computeLabel(doc.rerank_score),
205
+ isATestvariation && doc.rerank_score && computeLabel(doc),
202
206
  doc.kcsState === 'verified' && (React.createElement(React.Fragment, null,
203
207
  React.createElement("span", { className: "status-verified pf-v5-u-font-weight-bold pf-v5-u-success-color-100" }, "verified"),
204
208
  React.createElement("span", { className: "list-separator" }, "\u2013"))),
@@ -30,10 +30,10 @@ import { EARuleWidget } from '../Recommendations/EARules/EARuleWidget';
30
30
  export default function Review(props) {
31
31
  var _a;
32
32
  const caseDispatch = useCaseDispatch();
33
- const { contactInfo24x7, product, ABTestVarioation } = useCaseSelector((state) => ({
33
+ const { contactInfo24x7, product, ABTestVariation } = useCaseSelector((state) => ({
34
34
  contactInfo24x7: state.caseDetails.contactInfo24x7,
35
35
  product: state.caseDetails.product,
36
- ABTestVarioation: state.ABTestVarioation,
36
+ ABTestVariation: state.ABTestVariation,
37
37
  }), isEqual);
38
38
  const ability = useContext(AbilityContext);
39
39
  const canSeeEmailNotifications = ability.can(resourceActions.PATCH, resources.CASE_DETAILS, CaseDetailsFields.CASE_DETAILS_SEND_NOTIFICATIONS);
@@ -42,7 +42,7 @@ export default function Review(props) {
42
42
  const onSeverityChange = (payload) => {
43
43
  setCaseDetails(caseDispatch, payload);
44
44
  };
45
- const isBTestvariation = ABTestVarioation === 'B';
45
+ const isBTestvariation = ABTestVariation === 'B' || isEmpty(ABTestVariation);
46
46
  // To check if the user is ESS Customer and Product has ESS Support
47
47
  const isESSCustomer = isSpecialSupportOfferingEnabled((_a = allProducts.data) === null || _a === void 0 ? void 0 : _a.productsResult, selectedProduct);
48
48
  return (React.createElement(React.Fragment, null,
@@ -35,13 +35,13 @@ export function SessionRestore(props) {
35
35
  const sessionRestoreDispatch = useContext(SessionRestoreDispatchContext);
36
36
  const dispatchToAttachmentReducer = useContext(AttachmentDispatchContext);
37
37
  const { sessionRestore } = useContext(SessionRestoreStateContext);
38
- const { selectedNotificationContacts, cepDetails, caseDetails, caseCreation500ErrorStatus, ABTestVarioation } = useCaseSelector((state) => ({
38
+ const { selectedNotificationContacts, cepDetails, caseDetails, caseCreation500ErrorStatus, ABTestVariation } = useCaseSelector((state) => ({
39
39
  openshiftClusterID: state.caseDetails.openshiftClusterID,
40
40
  cepDetails: state.cepDetails,
41
41
  selectedNotificationContacts: state.selectedNotificationContacts,
42
42
  caseDetails: state.caseDetails,
43
43
  caseCreation500ErrorStatus: state.caseCreation500ErrorStatus,
44
- ABTestVarioation: state.ABTestVarioation,
44
+ ABTestVariation: state.ABTestVariation,
45
45
  }), isEqual);
46
46
  const caseDispatch = useCaseDispatch();
47
47
  const { globalMetadataState: { loggedInUsersAccount, loggedInUserRights, referrerUrl }, } = useContext(GlobalMetadataStateContext);
@@ -91,7 +91,7 @@ export function SessionRestore(props) {
91
91
  const needsNewSessionId = hasProductVersionOrSummary && isEmpty(relevantSession);
92
92
  if (needsNewSessionId) {
93
93
  const userAgent = getUserAgentForCaseMode(isCaseCreate);
94
- const userAgentAB = userAgent + (ABTestVarioation ? '-A-1' : '-B-1');
94
+ const userAgentAB = userAgent + (ABTestVariation ? '-A-1' : '-B-1');
95
95
  let session = {
96
96
  userAgent: userAgentAB,
97
97
  originatingSystem: userAgent,
@@ -1 +1 @@
1
- {"version":3,"file":"SubmitCase.d.ts","sourceRoot":"","sources":["../../../../src/components/SubmitCase/SubmitCase.tsx"],"names":[],"mappings":"AAsBA,OAAO,KAA0C,MAAM,OAAO,CAAC;AAE/D,OAAO,EAAQ,mBAAmB,EAAe,MAAM,kBAAkB,CAAC;AAQ1E,OAAO,EAAqB,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAWrF,UAAU,MAAM;IACZ,UAAU,EAAE,mBAAmB,CAAC,eAAe,CAAC,CAAC;CACpD;AAED,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,KAAK,EAAE,MAAM,qBA8Z/C"}
1
+ {"version":3,"file":"SubmitCase.d.ts","sourceRoot":"","sources":["../../../../src/components/SubmitCase/SubmitCase.tsx"],"names":[],"mappings":"AAsBA,OAAO,KAA0C,MAAM,OAAO,CAAC;AAE/D,OAAO,EAAQ,mBAAmB,EAAe,MAAM,kBAAkB,CAAC;AAQ1E,OAAO,EAAqB,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAWrF,UAAU,MAAM;IACZ,UAAU,EAAE,mBAAmB,CAAC,eAAe,CAAC,CAAC;CACpD;AAED,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,KAAK,EAAE,MAAM,qBAwZ/C"}
@@ -233,5 +233,5 @@ export default function SubmitCase(props) {
233
233
  React.createElement(InsightsResults, { isDisplayOnMain: true })),
234
234
  React.createElement(ClusterRecommendations, { showClusterRecommendationsModal: false }))),
235
235
  React.createElement("div", { className: "pf-v5-u-mt-lg" }, isIdea ? (React.createElement(AsideResults, { routeProps: props.routeProps })) : (!isEmpty(topContent.data) &&
236
- isNotAnIdea && (React.createElement(Suggestions, { title: t('RedHat recommended results'), showTitleDescription: true, showMax: 6 })))))))));
236
+ isNotAnIdea && React.createElement(Suggestions, { showTitleDescription: true, showMax: 6 }))))))));
237
237
  }
@@ -14,7 +14,7 @@ import { AppRouteSections } from '../../reducers/RouteConstNTypes';
14
14
  import { AttachmentStateContext } from './fileUpload/reducer/AttachmentReducerContext';
15
15
  export function useIsSectionValid(sectionName) {
16
16
  var _a, _b;
17
- const { caseState, caseType, product, version, contactSSOName, accountNumber, summary, hostname, contactInfo24x7, alternateId, selectedAccountDetails, issue, environment, timeFramesAndUrgency, periodicityOfIssue, ABTestVarioation, } = useCaseSelector((state) => ({
17
+ const { caseState, caseType, product, version, contactSSOName, accountNumber, summary, hostname, contactInfo24x7, alternateId, selectedAccountDetails, issue, environment, timeFramesAndUrgency, periodicityOfIssue, ABTestVariation, } = useCaseSelector((state) => ({
18
18
  caseState: state,
19
19
  caseType: state.caseDetails.caseType,
20
20
  product: state.caseDetails.product,
@@ -30,11 +30,11 @@ export function useIsSectionValid(sectionName) {
30
30
  environment: state.caseDetails.environment,
31
31
  timeFramesAndUrgency: state.caseDetails.timeFramesAndUrgency,
32
32
  periodicityOfIssue: state.caseDetails.periodicityOfIssue,
33
- ABTestVarioation: state.ABTestVarioation,
33
+ ABTestVariation: state.ABTestVariation,
34
34
  }), isEqual);
35
35
  //&seSessionId=8e8960ac-680b-443e-bf67-9e13f2acd64e
36
- const isATestvariation = ABTestVarioation === 'A';
37
- const isBTestvariation = ABTestVarioation === 'B';
36
+ const isATestvariation = ABTestVariation === 'A';
37
+ const isBTestvariation = ABTestVariation === 'B' || isEmpty(ABTestVariation);
38
38
  const { routeState: { isCaseCreate }, } = useContext(RouteContext);
39
39
  const { globalMetadataState: { allProducts, loggedInUserJwtToken }, } = useContext(GlobalMetadataStateContext);
40
40
  const { topContentState: { topContent }, } = useContext(TCStateContext);
@@ -17,13 +17,13 @@ const defaultProps = {};
17
17
  function WizardAside(props) {
18
18
  const { routeState: { activeSection }, } = useContext(RouteContext);
19
19
  const canAddAttachments = ability.can(resourceActions.PATCH, resources.CASE_CREATE, CaseListFields.ATTACHMENTS);
20
- const { isCreatingCase, caseType, isCveModalOpened, ABTestVarioation } = useCaseSelector((state) => ({
20
+ const { isCreatingCase, caseType, isCveModalOpened, ABTestVariation } = useCaseSelector((state) => ({
21
21
  isCreatingCase: state.isCreatingCase,
22
22
  caseType: state.caseDetails.caseType,
23
23
  isCveModalOpened: state.isCveModalOpened,
24
- ABTestVarioation: state.ABTestVarioation,
24
+ ABTestVariation: state.ABTestVariation,
25
25
  }), isEqual);
26
- const isATestvariation = ABTestVarioation === 'A';
26
+ const isATestvariation = ABTestVariation === 'A';
27
27
  const isIdea = caseType === PreviousCaseTypes.FEATURE_ENHANCEMENT;
28
28
  const canUseSessionManagement = ability.can(resourceActions.CREATE, resources.SESSION_TRACKING);
29
29
  const canShowFileUploadWidget = () => canAddAttachments &&
@@ -1 +1 @@
1
- {"version":3,"file":"WizardLayout.d.ts","sourceRoot":"","sources":["../../../../src/components/wizardLayout/WizardLayout.tsx"],"names":[],"mappings":"AAeA,OAAO,KAAkD,MAAM,OAAO,CAAC;AAEvE,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAMvD,OAAO,EAAuC,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAavG,UAAU,MAAM;IACZ,UAAU,EAAE,mBAAmB,CAAC,eAAe,CAAC,CAAC;CACpD;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,qBA6LzC"}
1
+ {"version":3,"file":"WizardLayout.d.ts","sourceRoot":"","sources":["../../../../src/components/wizardLayout/WizardLayout.tsx"],"names":[],"mappings":"AAeA,OAAO,KAAkD,MAAM,OAAO,CAAC;AAEvE,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAMvD,OAAO,EAAuC,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAavG,UAAU,MAAM;IACZ,UAAU,EAAE,mBAAmB,CAAC,eAAe,CAAC,CAAC;CACpD;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,qBAwMzC"}
@@ -20,7 +20,7 @@ import { Trans } from 'react-i18next';
20
20
  import { useCaseDispatch, useCaseSelector } from '../../context/CaseContext';
21
21
  import { RouteContext } from '../../context/RouteContext';
22
22
  import { SessionRestoreDispatchContext, SessionRestoreStateContext } from '../../context/SessionRestoreContext';
23
- import { setABTestVarioation, submitCase } from '../../reducers/CaseReducer';
23
+ import { setABTestVariation, submitCase } from '../../reducers/CaseReducer';
24
24
  import { AppRouteSections } from '../../reducers/RouteConstNTypes';
25
25
  import RouteUtils from '../../utils/routeUtils';
26
26
  import PreCaseConfirmationModals, { PreCaseConfirmationModalsEnum, } from '../ConfirmationModals/PreCaseConfirmationModals';
@@ -33,18 +33,20 @@ import WizardAside from './WizardAside';
33
33
  import WizardMain from './WizardMain';
34
34
  export function WizardLayout(props) {
35
35
  const { routeState: { activeSection, isCaseCreate }, } = useContext(RouteContext);
36
- // const urlParams = getUrlParsedParams(props.routeProps.location.search);
37
- const { caseCreationError, contactSSOName, caseType, product, caseState } = useCaseSelector((state) => ({
36
+ const { caseCreationError, contactSSOName, caseType, product, caseState, ABTestVariation } = useCaseSelector((state) => ({
38
37
  caseState: state,
39
38
  caseCreationError: state.caseCreationError,
40
39
  contactSSOName: state.caseDetails.contactSSOName,
41
40
  caseType: state.caseDetails.caseType,
42
41
  product: state.caseDetails.product,
42
+ ABTestVariation: state.ABTestVariation,
43
43
  }), isEqual);
44
44
  const sessionRestoreDispatch = useContext(SessionRestoreDispatchContext);
45
45
  const caseDispatch = useCaseDispatch();
46
46
  const { sessionRestore: { activeSessionId, previousSessions }, } = useContext(SessionRestoreStateContext);
47
47
  const { globalMetadataState: { allProducts, loggedInUser, loggedInUsersAccount, pcmConfig }, } = useContext(GlobalMetadataStateContext);
48
+ const urlQueryParams = RouteUtils.getQueryParams(props.routeProps);
49
+ const userflowFromUrl = urlQueryParams.userflow;
48
50
  const dispatchToGlobalMetadataReducer = useContext(GlobalMetadataDispatchContext);
49
51
  const canAddAttachments = ability.can(resourceActions.PATCH, resources.CASE_CREATE, CaseListFields.ATTACHMENTS);
50
52
  const { attachmentState } = useContext(AttachmentStateContext);
@@ -116,15 +118,23 @@ export function WizardLayout(props) {
116
118
  useEffect(() => {
117
119
  if (isEmpty(loggedInUsersAccount.data.accountNumber))
118
120
  return;
121
+ // if userflow was added in url, we force the selection
122
+ if (userflowFromUrl && (userflowFromUrl === 'A' || userflowFromUrl === 'B')) {
123
+ // set state for PCM to show A or B
124
+ setABTestVariation(caseDispatch, userflowFromUrl);
125
+ return;
126
+ }
119
127
  const appABTestConfig = getConfigField(pcmConfig.data, 'testVariationWeightZeroToTen', PCM_CONFIG_FIELD_TYPE.STRING);
120
- if (isEmpty(appABTestConfig))
128
+ if (isEmpty(loggedInUsersAccount.data.accountNumber) || isEmpty(appABTestConfig))
121
129
  return;
122
130
  const appTestWeight = parseInt(appABTestConfig, 10);
123
- const ABTestVariation = ABTestSplitBasedOnAccountNumber(appTestWeight, loggedInUsersAccount.data.accountNumber);
124
- // set state for PCM to show A or B
125
- setABTestVarioation(caseDispatch, ABTestVariation);
131
+ const newABTestVariation = ABTestSplitBasedOnAccountNumber(appTestWeight, loggedInUsersAccount.data.accountNumber);
132
+ if (newABTestVariation !== ABTestVariation) {
133
+ // set state for PCM to show A or B
134
+ setABTestVariation(caseDispatch, newABTestVariation);
135
+ }
126
136
  // eslint-disable-next-line react-hooks/exhaustive-deps
127
- }, [loggedInUsersAccount.data.accountNumber]);
137
+ }, [loggedInUsersAccount.data.accountNumber, ABTestVariation]);
128
138
  // Loading app metadata
129
139
  useEffect(() => {
130
140
  fetchProducts(dispatchToGlobalMetadataReducer, contactSSOName);
@@ -1 +1 @@
1
- {"version":3,"file":"WizardNavigation.d.ts","sourceRoot":"","sources":["../../../../src/components/wizardLayout/WizardNavigation.tsx"],"names":[],"mappings":"AAOA,OAAO,KAA0C,MAAM,OAAO,CAAC;AAE/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAOvD,OAAO,EAAoB,eAAe,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AAK3G,UAAU,MAAM;IACZ,UAAU,EAAE,mBAAmB,CAAC,eAAe,CAAC,CAAC;IACjD,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,UAAU,EAAE,OAAO,CAAC,qBAAqB,CAAC,CAAC;IAC3C,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,mBAAmB,EAAE,CAAC,gCAAgC,EAAE,OAAO,KAAK,IAAI,CAAC;IACzE,gBAAgB,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IAC1C,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,0BAA0B,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC;IAC5E,kCAAkC,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC;IACpF,qCAAqC,CAAC,EAAE,OAAO,CAAC;IAChD,gCAAgC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC;IACjF,aAAa,CAAC,EAAE,GAAG,CAAC;IACpB,oBAAoB,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC;CACxE;AAGD,iBAAS,gBAAgB,CAAC,KAAK,EAAE,MAAM,qBAmRtC;kBAnRQ,gBAAgB;;;AAqRzB,eAAe,gBAAgB,CAAC"}
1
+ {"version":3,"file":"WizardNavigation.d.ts","sourceRoot":"","sources":["../../../../src/components/wizardLayout/WizardNavigation.tsx"],"names":[],"mappings":"AAQA,OAAO,KAA0C,MAAM,OAAO,CAAC;AAE/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAOvD,OAAO,EAAoB,eAAe,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AAK3G,UAAU,MAAM;IACZ,UAAU,EAAE,mBAAmB,CAAC,eAAe,CAAC,CAAC;IACjD,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,UAAU,EAAE,OAAO,CAAC,qBAAqB,CAAC,CAAC;IAC3C,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,mBAAmB,EAAE,CAAC,gCAAgC,EAAE,OAAO,KAAK,IAAI,CAAC;IACzE,gBAAgB,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IAC1C,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,0BAA0B,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC;IAC5E,kCAAkC,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC;IACpF,qCAAqC,CAAC,EAAE,OAAO,CAAC;IAChD,gCAAgC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC;IACjF,aAAa,CAAC,EAAE,GAAG,CAAC;IACpB,oBAAoB,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC;CACxE;AAGD,iBAAS,gBAAgB,CAAC,KAAK,EAAE,MAAM,qBAiStC;kBAjSQ,gBAAgB;;;AAmSzB,eAAe,gBAAgB,CAAC"}
@@ -13,6 +13,7 @@ import { useFetch } from '@rh-support/components';
13
13
  import { GlobalMetadataStateContext, useCanCreateCase } from '@rh-support/react-context';
14
14
  import { dtmTrackEventCaseStartStopped, getResTypeFromUrl, scrollIntoView } from '@rh-support/utils';
15
15
  import find from 'lodash/find';
16
+ import isEmpty from 'lodash/isEmpty';
16
17
  import isEqual from 'lodash/isEqual';
17
18
  import React, { useContext, useEffect, useState } from 'react';
18
19
  import { useTranslation } from 'react-i18next';
@@ -33,12 +34,16 @@ function WizardNavigation(props) {
33
34
  const { recommendationState } = useContext(RecommendationStateContext);
34
35
  const { routeState: { activeSection, isNextBtnClickedToShowValidationError, noValidEntitlement, isSearchIntent, isCaseCreate, }, } = useContext(RouteContext);
35
36
  const { globalMetadataState: { loggedInUsersAccount, allProducts, navBarRef }, } = useContext(GlobalMetadataStateContext);
36
- const { caseState, ABTestVarioation } = useCaseSelector((state) => ({
37
+ const { caseState, ABTestVariation, issue, summary, product, version } = useCaseSelector((state) => ({
37
38
  caseState: state,
38
- ABTestVarioation: state.ABTestVarioation,
39
+ issue: state.caseDetails.issue,
40
+ summary: state.caseDetails.summary,
41
+ ABTestVariation: state.ABTestVariation,
42
+ product: state.caseDetails.product,
43
+ version: state.caseDetails.version,
39
44
  }), isEqual);
40
- const isATestvariation = ABTestVarioation === 'A';
41
- const isBTestvariation = ABTestVarioation === 'B';
45
+ const isATestvariation = ABTestVariation === 'A';
46
+ const isBTestvariation = ABTestVariation === 'B' || isEmpty(ABTestVariation);
42
47
  // To check if the user is entitled or not
43
48
  const isEntitledProduct = (_b = find((_a = allProducts === null || allProducts === void 0 ? void 0 : allProducts.data) === null || _a === void 0 ? void 0 : _a.productsResult, (p) => p.product === caseState.caseDetails.product)) === null || _b === void 0 ? void 0 : _b.isEntitledProduct;
44
49
  const dispatchToRouteReducer = useContext(RouteDispatchContext);
@@ -79,7 +84,7 @@ function WizardNavigation(props) {
79
84
  // console.log({ hasUserScrolled });
80
85
  const boundingRect = entry.boundingClientRect;
81
86
  const isScrollingUp = boundingRect.top > 0;
82
- const isAboveThreshold = entry.intersectionRatio >= 0.3;
87
+ const isAboveThreshold = entry.intersectionRatio >= 0.6;
83
88
  isAboveThreshold && props.setUserCanNavigateToTroubleshoot(true);
84
89
  isAboveThreshold && props.setUserSeenRecommendations(true);
85
90
  // If scrolling up, always use the threshold check
@@ -95,7 +100,7 @@ function WizardNavigation(props) {
95
100
  }
96
101
  }, {
97
102
  root: null,
98
- threshold: [0, 0.3], // Changing threshold value to have its effect on pagination when page size is more than 10.
103
+ threshold: [0, 0.6], // Changing threshold value to have its effect on pagination when page size is more than 10.
99
104
  rootMargin: '0px',
100
105
  });
101
106
  const resultsRowElement = props.resultsRowRef.current;
@@ -180,24 +185,35 @@ function WizardNavigation(props) {
180
185
  });
181
186
  const nextButtonDisabledLogic = () => {
182
187
  if (isBTestvariation) {
183
- let value = (!props.userSeenRecommendations && props.activeStep.id === AppRouteSections.SUMMARIZE) ||
188
+ let value = (!props.userSeenRecommendations &&
189
+ isEmpty(summary) &&
190
+ isEmpty(caseState.caseDetails.issue) &&
191
+ props.activeStep.id === AppRouteSections.SUMMARIZE) ||
184
192
  (!isEntitledProductLocal && props.activeStep.nextButtonLabel === 'Get support') ||
185
193
  (!isSectionValidFn(props.activeStep.id) && isNextBtnClickedToShowValidationError) ||
186
194
  noValidEntitlement;
187
195
  return value;
188
196
  }
189
197
  else if (isATestvariation && !isCaseCreate) {
190
- let value = (!props.userSeenRecommendations && props.activeStep.id === AppRouteSections.SUMMARIZE) ||
198
+ let value = isEmpty(summary) ||
199
+ isEmpty(issue) ||
191
200
  (!isEntitledProductLocal && props.activeStep.nextButtonLabel === 'Get support') ||
192
201
  (!isSectionValidFn(props.activeStep.id) && isNextBtnClickedToShowValidationError) ||
193
202
  noValidEntitlement;
194
203
  return value;
195
204
  }
196
205
  };
206
+ const isDisabledGoBack = () => {
207
+ if (isBTestvariation || isEmpty(ABTestVariation))
208
+ return false;
209
+ if (isATestvariation && props.activeStep.id === 'get-support') {
210
+ return isEmpty(product) || isEmpty(version);
211
+ }
212
+ };
197
213
  // To handle entitled products
198
214
  const isEntitledProductLocal = isSearchIntent ? true : isEntitledProduct;
199
215
  return (React.createElement(React.Fragment, null,
200
- props.activeStep.order !== 0 && (React.createElement("button", { onClick: () => onBack(), className: "btn btn-app btn-open-white main-nav-button", "data-tracking-id": `prev-of-${activeSection}`, type: "button" }, t('Go back'))),
216
+ props.activeStep.order !== 0 && (React.createElement("button", { onClick: () => onBack(), className: "btn btn-app btn-open-white main-nav-button", "data-tracking-id": `prev-of-${activeSection}`, type: "button", disabled: isDisabledGoBack() }, t('Go back'))),
201
217
  React.createElement("button", { disabled: nextButtonDisabledLogic(), onClick: onNext, className: "btn btn-app btn-primary main-nav-button", "data-tracking-id": `next-of-${activeSection}`, type: "button" }, t(props.activeStep.nextButtonLabel)),
202
218
  activeSection === AppRouteSections.TROUBLESHOOT && isFileRecommendationsTriggered && (React.createElement(Button, { onClick: handleFileRecsSelfSolved, variant: ButtonVariant.secondary, className: "issue-solved-button solved-issue-button", "data-tracking-id": "troubleshoot-self-solved-issue" }, t('I solved my issue'))),
203
219
  React.createElement(RecommendationFeedbackModal, { isModalOpen: isRecsModalVisible, handleModalToggle: onRecsFeedbackModalToggle, modalContent: t(`Great, we're glad that resolved your issue`) }),
@@ -1 +1 @@
1
- {"version":3,"file":"useFetchCVEData.d.ts","sourceRoot":"","sources":["../../../src/hooks/useFetchCVEData.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,0BAA0B,EAAkB,MAAM,iCAAiC,CAAC;AAI7F,wBAAgB,eAAe;;EAmI9B"}
1
+ {"version":3,"file":"useFetchCVEData.d.ts","sourceRoot":"","sources":["../../../src/hooks/useFetchCVEData.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,0BAA0B,EAAkB,MAAM,iCAAiC,CAAC;AAI7F,wBAAgB,eAAe;;EAwI9B"}
@@ -8,8 +8,9 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
8
8
  });
9
9
  };
10
10
  import { search } from '@cee-eng/hydrajs';
11
- import { useLRUCache } from '@rh-support/components';
11
+ import { useDebounce, useLRUCache } from '@rh-support/components';
12
12
  import filter from 'lodash/filter';
13
+ import includes from 'lodash/includes';
13
14
  import isArray from 'lodash/isArray';
14
15
  import isEmpty from 'lodash/isEmpty';
15
16
  import isEqual from 'lodash/isEqual';
@@ -17,7 +18,7 @@ import map from 'lodash/map';
17
18
  import slice from 'lodash/slice';
18
19
  import sortBy from 'lodash/sortBy';
19
20
  import uniqBy from 'lodash/uniqBy';
20
- import { useEffect, useState } from 'react';
21
+ import { useState } from 'react';
21
22
  import { useCaseDispatch, useCaseSelector } from '../context/CaseContext';
22
23
  import { setCaseState } from '../reducers/CaseReducer';
23
24
  import { findCVEsInString } from '../utils/caseUtils';
@@ -43,13 +44,8 @@ export function useFetchCVEData() {
43
44
  const filteredArray = releaseInfo.filter((obj) => {
44
45
  var _a, _b;
45
46
  const product = (_b = (_a = obj === null || obj === void 0 ? void 0 : obj.product) === null || _a === void 0 ? void 0 : _a.toLowerCase()) === null || _b === void 0 ? void 0 : _b.trim();
46
- const productVersionMatchConditions = product === selectedProductLower ||
47
- product === `red hat ${selectedProductLower}` ||
48
- product === `${selectedProductLower} ${selectedVersionLower}` ||
49
- product === `red hat ${selectedProductLower} ${selectedVersionLower}` ||
50
- (majorVersion && product === `${selectedProductLower} ${majorVersion}`) ||
51
- (majorVersion && product === `red hat ${selectedProductLower} ${majorVersion}`);
52
- return productVersionMatchConditions && (obj === null || obj === void 0 ? void 0 : obj.state) === 'Fixed';
47
+ const productWithVersion = `${selectedProductLower} ${majorVersion}`;
48
+ return includes(product, productWithVersion) && (obj === null || obj === void 0 ? void 0 : obj.state) === 'Fixed';
53
49
  });
54
50
  const uniqFilteredArray = uniqBy(filteredArray, (fa) => { var _a; return (_a = fa === null || fa === void 0 ? void 0 : fa.advisory) === null || _a === void 0 ? void 0 : _a.name; });
55
51
  const errataData = map(uniqFilteredArray, (i) => {
@@ -106,7 +102,10 @@ export function useFetchCVEData() {
106
102
  return [];
107
103
  }
108
104
  });
109
- useEffect(() => {
105
+ useDebounce(() => {
106
+ if (isEmpty(summary) || isEmpty(description)) {
107
+ return;
108
+ }
110
109
  const CVETextValue = `${summary || ''} ${description || ''}`;
111
110
  const cveIds = findCVEsInString(CVETextValue);
112
111
  fetchCVEData(cveIds)
@@ -134,7 +133,6 @@ export function useFetchCVEData() {
134
133
  .catch((error) => {
135
134
  console.error('Error processing CVE data:', error);
136
135
  });
137
- // eslint-disable-next-line react-hooks/exhaustive-deps
138
- }, [summary, description, product, version]);
136
+ }, [summary, description, product, version], 1000);
139
137
  return { cveRecommendation };
140
138
  }
@@ -1 +1 @@
1
- {"version":3,"file":"useWizard.d.ts","sourceRoot":"","sources":["../../../src/hooks/useWizard.tsx"],"names":[],"mappings":"AA+BA,UAAU,MAAM;IACZ,yBAAyB,CAAC,EAAE,GAAG,CAAC;IAChC,4BAA4B,EAAE,OAAO,CAAC;IACtC,6BAA6B,EAAE,OAAO,CAAC;IACvC,qCAAqC,EAAE,OAAO,CAAC;IAC/C,aAAa,EAAE,GAAG,CAAC;IACnB,iBAAiB,EAAE,OAAO,CAAC;CAC9B;AAED,wBAAgB,SAAS,CAAC,UAAU,KAAA,EAAE,KAAK,CAAC,EAAE,MAAM;iCAwQb,OAAO;EAwC7C"}
1
+ {"version":3,"file":"useWizard.d.ts","sourceRoot":"","sources":["../../../src/hooks/useWizard.tsx"],"names":[],"mappings":"AA+BA,UAAU,MAAM;IACZ,yBAAyB,CAAC,EAAE,GAAG,CAAC;IAChC,4BAA4B,EAAE,OAAO,CAAC;IACtC,6BAA6B,EAAE,OAAO,CAAC;IACvC,qCAAqC,EAAE,OAAO,CAAC;IAC/C,aAAa,EAAE,GAAG,CAAC;IACnB,iBAAiB,EAAE,OAAO,CAAC;CAC9B;AAED,wBAAgB,SAAS,CAAC,UAAU,KAAA,EAAE,KAAK,CAAC,EAAE,MAAM;iCAyQb,OAAO;EAwC7C"}
@@ -61,8 +61,9 @@ export function useWizard(routeProps, props) {
61
61
  [AppRouteSections.SUMMARIZE]: Object.assign(Object.assign({}, defaultRouteConfiguration), { id: AppRouteSections.SUMMARIZE, name: isCaseCreate ? t('Summarize') : t('Troubleshoot'), component: (React.createElement(MainSection, { stepNumber: 2, totalSteps: 6, section: AppRouteSections.SUMMARIZE, title: t('What are you having an issue with?') },
62
62
  React.createElement(Suspense, { fallback: React.createElement(LoadingIndicator, { size: "sm" }) },
63
63
  alertMessage(),
64
- React.createElement(ProductSelector, { routeProps: routeProps, userSeenRecommendations: props.userSeenRecommendationsfn, userClickedNextonRecommendations: props.userClickedNextonRecommendationsValue, resultsRowRef: props.resultsRowRef, isOnGetSupportPage: false, caseCreateExperience: isCaseCreate })))), canJumpTo: isSectionValidFn(AppRouteSections.SUMMARIZE) || activeSection === AppRouteSections.SUMMARIZE, nextButtonLabel: (summarizeNextButtonLabelLogic() || ((props === null || props === void 0 ? void 0 : props.userSeenRecommendationsValue) && numFound < 3)) &&
65
- !isEmpty(issue) // do this so that when user refreshes tab and state persists we don't cause edge 'continue' render
64
+ React.createElement(ProductSelector, { routeProps: routeProps, userSeenRecommendations: props.userSeenRecommendationsfn, userClickedNextonRecommendations: props.userClickedNextonRecommendationsValue, resultsRowRef: props.resultsRowRef, isOnGetSupportPage: false, caseCreateExperience: isCaseCreate })))), canJumpTo: isSectionValidFn(AppRouteSections.SUMMARIZE) || activeSection === AppRouteSections.SUMMARIZE, nextButtonLabel: ((summarizeNextButtonLabelLogic() || ((props === null || props === void 0 ? void 0 : props.userSeenRecommendationsValue) && numFound < 3)) &&
65
+ !isEmpty(issue)) ||
66
+ numFound === 0 // do this so that when user refreshes tab and state persists we don't cause edge 'continue' render
66
67
  ? t('Continue')
67
68
  : t('See more options') }),
68
69
  [AppRouteSections.TROUBLESHOOT]: Object.assign(Object.assign({}, defaultRouteConfiguration), { id: AppRouteSections.TROUBLESHOOT, name: isCaseCreate ? t('Resources') : t('Resources'), component: (React.createElement(MainSection, { stepNumber: 3, totalSteps: 6, section: AppRouteSections.TROUBLESHOOT, title: t('Recommendations') },
@@ -177,11 +177,10 @@ export declare enum CaseReducerConstants {
177
177
  setIsPostingRemoteRequestCommentCompleted = "setIsPostingRemoteRequestCommentCompleted",
178
178
  setIsPostingRemoteRequestCommentCompletedError = "setIsPostingRemoteRequestCommentCompletedError",
179
179
  updateComments = "updateComments",
180
- setABTestVarioation = "setABTestVarioation"
180
+ setABTestVariation = "setABTestVariation"
181
181
  }
182
182
  export declare const initialCaseState: ICaseState;
183
183
  export interface ICaseState {
184
- enableGetSupportProductVersion?: boolean;
185
184
  caseDetailsStrata: IApiResponseDetails<Partial<ICaseDetails>>;
186
185
  caseDetails: Partial<ICasePayload>;
187
186
  customerEscalation: boolean;
@@ -235,7 +234,7 @@ export interface ICaseState {
235
234
  isCasePhoneUpdating?: boolean;
236
235
  cveWorkflowRecommendation?: ICVEWorkflowRecommendation[];
237
236
  isCveModalOpened?: boolean;
238
- ABTestVarioation?: string;
237
+ ABTestVariation?: string;
239
238
  }
240
239
  export interface ICreateCasePayloadType extends ICaseState {
241
240
  }
@@ -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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"}
@@ -128,10 +128,9 @@ export var CaseReducerConstants;
128
128
  CaseReducerConstants["setIsPostingRemoteRequestCommentCompleted"] = "setIsPostingRemoteRequestCommentCompleted";
129
129
  CaseReducerConstants["setIsPostingRemoteRequestCommentCompletedError"] = "setIsPostingRemoteRequestCommentCompletedError";
130
130
  CaseReducerConstants["updateComments"] = "updateComments";
131
- CaseReducerConstants["setABTestVarioation"] = "setABTestVarioation";
131
+ CaseReducerConstants["setABTestVariation"] = "setABTestVariation";
132
132
  })(CaseReducerConstants || (CaseReducerConstants = {}));
133
133
  export const initialCaseState = {
134
- enableGetSupportProductVersion: true,
135
134
  isCreatingCase: false,
136
135
  caseCreationError: false,
137
136
  caseCreationErrorMessage: '',
@@ -231,7 +230,7 @@ export const initialCaseState = {
231
230
  isCasePhoneUpdating: false,
232
231
  cveWorkflowRecommendation: [],
233
232
  isCveModalOpened: true,
234
- ABTestVarioation: '',
233
+ ABTestVariation: 'B',
235
234
  };
236
235
  export const ORG_ADMIN_SEND_NOTIFCATION_KBASE_LINK = 'https://access.redhat.com/articles/5967811';
237
236
  export const NON_ORG_ADMIN_SEND_NOTIFCATION_KBASE_LINK = 'https://access.redhat.com/articles/5967831';
@@ -49,5 +49,5 @@ export declare function getCustomNotificationEmails(dispatch: CaseReducerDispatc
49
49
  export declare function updateEmailListState(dispatch: CaseReducerDispatchType, email: string, customEmailsList: IApiResponseDetails<Partial<ICaseNotificationAddresses[]>>, callback: (email: string) => ICaseNotificationAddresses[]): void;
50
50
  export declare function getVersionsDetails(dispatch: CaseReducerDispatchType, product: string): Promise<void>;
51
51
  export declare const setRemoteRiderFlag: (dispatch: CaseReducerDispatchType, flag: boolean) => void;
52
- export declare const setABTestVarioation: (dispatch: CaseReducerDispatchType, ABTestVarioation: string) => void;
52
+ export declare const setABTestVariation: (dispatch: CaseReducerDispatchType, ABTestVariation: string) => void;
53
53
  //# sourceMappingURL=CaseReducer.d.ts.map
@@ -1 +1 @@
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;AAWxD,OAAO,EAEH,uBAAuB,EAEvB,UAAU,EAGb,MAAM,mBAAmB,CAAC;AAS3B,OAAO,EAAE,0BAA0B,EAAiB,MAAM,yBAAyB,CAAC;AAEpF,eAAO,MAAM,WAAW,WAAY,UAAU,UAAU,GAAG,KAAG,UA+N7D,CAAC;AAGF,eAAO,MAAM,cAAc,aAAc,uBAAuB,aAAa,OAAO,CAAC,YAAY,CAAC,SAEjG,CAAC;AAEF,eAAO,MAAM,YAAY,aAAc,uBAAuB,aAAa,OAAO,CAAC,UAAU,CAAC,SAE7F,CAAC;AAEF,eAAO,MAAM,eAAe,aAAc,uBAAuB,gCAAgC,QAAQ,EAAE,SAK1G,CAAC;AAEF,eAAO,MAAM,UAAU,aACT,uBAAuB,0BACT,0BAA0B,eACrC,UAAU,eACV,YAAY,gBACX,OAAO,mBACJ,MAAM,GAAG,GAAG,CAAC,OAAO,2BACZ,MAAM,mBACd,OAAO,cACZ,OAAO,kBA8CtB,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,oCAAoC,aAAc,uBAAuB,qBAUrF,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,6BAA6B,aAAc,uBAAuB,eAAe,OAAO,SAOpG,CAAC;AAEF,eAAO,MAAM,wBAAwB,aAAoB,uBAAuB,cAAc,MAAM,kBAsBnG,CAAC;AAGF,eAAO,MAAM,0BAA0B,oBAClB,OAAO,YACd,uBAAuB,0BACT,0BAA0B,eACrC,YAAY,cACb,MAAM,eACL,UAAU,kBAK1B,CAAC;AAGF,eAAO,MAAM,cAAc,2BACC,0BAA0B,eACrC,YAAY,cACb,MAAM,kBAQrB,CAAC;AAIF,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,OAAO,CAAC,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,OAAO,CAAC,QAAQ,CAAC,kBA8CzC,CAAC;AAEF,eAAO,MAAM,YAAY,aACX,uBAAuB,SAC1B,QAAQ,WACN,MAAM,yBACQ,WAAW,4BACR,WAAW,yEAEV,MAAM,GAAG,SAAS,mBAC7B,OAAO,iBACR,OAAO,eACT,MAAM,kBAkDtB,CAAC;AAiEF,eAAO,MAAM,qBAAqB,aACpB,uBAAuB,sBACb,MAAM,4DAEZ,WAAW,6BACE,MAAM,GAAG,SAAS,kBAyBhD,CAAC;AAIF,eAAO,MAAM,qBAAqB,aACpB,uBAAuB,eACpB,YAAY,6BACE,MAAM,uBACZ,QAAQ,wBACR,OAAO,CAAC,QAAQ,CAAC,kBAyDzC,CAAC;AAmCF,eAAO,MAAM,gBAAgB,aACf,uBAAuB,cACrB,MAAM,8DAwHrB,CAAC;AAEF,eAAO,MAAM,iBAAiB,aAChB,uBAAuB,cACrB,MAAM,eACL,OAAO,CAAC,YAAY,CAAC,mBACjB,OAAO,mBAsB3B,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;AAEF,eAAO,MAAM,mBAAmB,aAAc,uBAAuB,oBAAoB,MAAM,SAK9F,CAAC"}
1
+ {"version":3,"file":"CaseReducer.d.ts","sourceRoot":"","sources":["../../../src/reducers/CaseReducer.ts"],"names":[],"mappings":"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"}
@@ -145,8 +145,8 @@ export const caseReducer = (pState, action) => {
145
145
  case CaseReducerConstants.setIsPostingRemoteRequestCommentCompletedError: {
146
146
  return Object.assign(Object.assign({}, pState), { isPostingRemoteRequestCommentCompleted: false, isPostingRemoteRequestCommentCompletedErrorMessage: action.payload.isPostingRemoteRequestCommentCompletedErrorMessage });
147
147
  }
148
- case CaseReducerConstants.setABTestVarioation: {
149
- return Object.assign(Object.assign({}, pState), { ABTestVarioation: action.payload.ABTestVarioation });
148
+ case CaseReducerConstants.setABTestVariation: {
149
+ return Object.assign(Object.assign({}, pState), { ABTestVariation: action.payload.ABTestVariation });
150
150
  }
151
151
  default: {
152
152
  return pState;
@@ -924,9 +924,9 @@ export const setRemoteRiderFlag = (dispatch, flag) => {
924
924
  payload: { caseDetails: { remoteSessionTermsAcked: flag } },
925
925
  });
926
926
  };
927
- export const setABTestVarioation = (dispatch, ABTestVarioation) => {
927
+ export const setABTestVariation = (dispatch, ABTestVariation) => {
928
928
  dispatch({
929
- type: CaseReducerConstants.setABTestVarioation,
930
- payload: { ABTestVarioation },
929
+ type: CaseReducerConstants.setABTestVariation,
930
+ payload: { ABTestVariation },
931
931
  });
932
932
  };
@@ -6,10 +6,10 @@ export interface IRouteQueryParams {
6
6
  clusterId?: string;
7
7
  seSessionId?: string;
8
8
  source?: string;
9
- reranking?: string;
10
9
  caseCreationErrorCode?: string | number;
11
10
  summary?: string;
12
11
  caseNumber?: string | undefined;
12
+ userflow?: string;
13
13
  }
14
14
  export interface ISectionConfiguration extends WizardStep {
15
15
  id: number | string;
@@ -1 +1 @@
1
- {"version":3,"file":"RouteConstNTypes.d.ts","sourceRoot":"","sources":["../../../src/reducers/RouteConstNTypes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,mCAAmC,CAAC;AAE/D,MAAM,WAAW,iBAAiB;IAC9B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,qBAAqB,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAIxC,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACnC;AAED,MAAM,WAAW,qBAAsB,SAAQ,UAAU;IACrD,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IAGjB,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,cAAc,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED,MAAM,WAAW,sBAAsB;IACnC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAAC;CACjD;AAED,MAAM,WAAW,eAAe;CAAG;AACnC,oBAAY,gBAAgB;IACxB,WAAW,gBAAgB;IAC3B,SAAS,cAAc;IACvB,YAAY,iBAAiB;IAC7B,aAAa,kBAAkB;IAC/B,aAAa,kBAAkB;IAC/B,UAAU,eAAe;IACzB,MAAM,WAAW;IACjB,WAAW,gBAAgB;IAC3B,KAAK,UAAU;CAClB;AAKD,eAAO,MAAM,4BAA4B,EAAE,gBAAgB,EAI1D,CAAC;AAEF,eAAO,MAAM,gCAAgC,EAAE,gBAAgB,EAK9D,CAAC;AAEF,eAAO,MAAM,iCAAiC,oBAQ7C,CAAC;AAEF,eAAO,MAAM,gCAAgC,oBAQ5C,CAAC;AAEF,eAAO,MAAM,4BAA4B,oBAQxC,CAAC;AAGF,eAAO,MAAM,0BAA0B,oBAAiC,CAAC;AAEzE,eAAO,MAAM,mCAAmC,oBAA+D,CAAC;AAEhH,eAAO,MAAM,kCAAkC,oBAO9C,CAAC;AAEF,eAAO,MAAM,+BAA+B,oBAM3C,CAAC;AAEF,eAAO,MAAM,0CAA0C,oBAQtD,CAAC;AAEF,eAAO,MAAM,sCAAsC,oBAAyD,CAAC;AAE7G,eAAO,MAAM,qCAAqC,oBAAgE,CAAC;AAEnH,eAAO,MAAM,6BAA6B,oBAAiC,CAAC;AAE5E,eAAO,MAAM,wBAAwB,EAAE,gBAAgB,EAKtD,CAAC"}
1
+ {"version":3,"file":"RouteConstNTypes.d.ts","sourceRoot":"","sources":["../../../src/reducers/RouteConstNTypes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,mCAAmC,CAAC;AAE/D,MAAM,WAAW,iBAAiB;IAC9B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,qBAAqB,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAIxC,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAChC,QAAQ,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,qBAAsB,SAAQ,UAAU;IACrD,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IAGjB,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,cAAc,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED,MAAM,WAAW,sBAAsB;IACnC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAAC;CACjD;AAED,MAAM,WAAW,eAAe;CAAG;AACnC,oBAAY,gBAAgB;IACxB,WAAW,gBAAgB;IAC3B,SAAS,cAAc;IACvB,YAAY,iBAAiB;IAC7B,aAAa,kBAAkB;IAC/B,aAAa,kBAAkB;IAC/B,UAAU,eAAe;IACzB,MAAM,WAAW;IACjB,WAAW,gBAAgB;IAC3B,KAAK,UAAU;CAClB;AAKD,eAAO,MAAM,4BAA4B,EAAE,gBAAgB,EAI1D,CAAC;AAEF,eAAO,MAAM,gCAAgC,EAAE,gBAAgB,EAK9D,CAAC;AAEF,eAAO,MAAM,iCAAiC,oBAQ7C,CAAC;AAEF,eAAO,MAAM,gCAAgC,oBAQ5C,CAAC;AAEF,eAAO,MAAM,4BAA4B,oBAQxC,CAAC;AAGF,eAAO,MAAM,0BAA0B,oBAAiC,CAAC;AAEzE,eAAO,MAAM,mCAAmC,oBAA+D,CAAC;AAEhH,eAAO,MAAM,kCAAkC,oBAO9C,CAAC;AAEF,eAAO,MAAM,+BAA+B,oBAM3C,CAAC;AAEF,eAAO,MAAM,0CAA0C,oBAQtD,CAAC;AAEF,eAAO,MAAM,sCAAsC,oBAAyD,CAAC;AAE7G,eAAO,MAAM,qCAAqC,oBAAgE,CAAC;AAEnH,eAAO,MAAM,6BAA6B,oBAAiC,CAAC;AAE5E,eAAO,MAAM,wBAAwB,EAAE,gBAAgB,EAKtD,CAAC"}
@@ -1128,3 +1128,19 @@ svg.pf-v5-u-ml-xs.icon-size {
1128
1128
  transform: rotate(360deg);
1129
1129
  }
1130
1130
  }
1131
+
1132
+ .cve-modal-fade-in-effect {
1133
+ opacity: 0;
1134
+ animation: cveModalfadeIn 0.3s forwards;
1135
+ }
1136
+
1137
+ @keyframes cveModalfadeIn {
1138
+ from {
1139
+ opacity: 0;
1140
+ transform: scale(0.9);
1141
+ }
1142
+ to {
1143
+ opacity: 1;
1144
+ transform: scale(1);
1145
+ }
1146
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rh-support/troubleshoot",
3
- "version": "2.4.5-beta.15",
3
+ "version": "2.4.5-beta.17",
4
4
  "publishConfig": {
5
5
  "access": "public",
6
6
  "registry": "https://registry.npmjs.org"
@@ -60,11 +60,11 @@
60
60
  "@progress/kendo-licensing": "1.3.5",
61
61
  "@progress/kendo-react-pdf": "^5.16.0",
62
62
  "@redux-devtools/extension": "^3.3.0",
63
- "@rh-support/components": "2.4.3-beta.3",
64
- "@rh-support/react-context": "2.4.3-beta.3",
63
+ "@rh-support/components": "2.4.3-beta.4",
64
+ "@rh-support/react-context": "2.4.3-beta.4",
65
65
  "@rh-support/types": "2.0.5",
66
- "@rh-support/user-permissions": "2.4.3-beta.3",
67
- "@rh-support/utils": "2.4.3-beta.3",
66
+ "@rh-support/user-permissions": "2.4.3-beta.4",
67
+ "@rh-support/utils": "2.4.3-beta.4",
68
68
  "@types/react-redux": "^7.1.33",
69
69
  "@types/redux": "^3.6.0",
70
70
  "date-fns": "3.6.0",
@@ -135,5 +135,5 @@
135
135
  "defaults and supports es6-module",
136
136
  "maintained node versions"
137
137
  ],
138
- "gitHead": "246b3e514e1c0a504a285518810ca94f1b5690ce"
138
+ "gitHead": "555abfa59c5b5fc0fdf15fe30b7e97e8f80a4b80"
139
139
  }