@rh-support/troubleshoot 2.6.247 → 2.6.248

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/CaseEditView/CaseDetailsAside.d.ts.map +1 -1
  2. package/lib/esm/components/CaseManagement/CaseManagement.d.ts.map +1 -1
  3. package/lib/esm/components/ConfirmationModals/PreCaseConfirmationModals.d.ts.map +1 -1
  4. package/lib/esm/components/Cve/CvePanel.js +1 -1
  5. package/lib/esm/components/Cve/CveSidebar.d.ts.map +1 -1
  6. package/lib/esm/components/Cve/CveSidebar.js +8 -9
  7. package/lib/esm/components/SessionRestore/SessionRestore.d.ts.map +1 -1
  8. package/lib/esm/components/SessionRestore/SessionRestore.js +7 -13
  9. package/lib/esm/components/TroubleshootSection/AskRedHat.d.ts.map +1 -1
  10. package/lib/esm/components/TroubleshootSection/AskRedHat.js +27 -2
  11. package/lib/esm/components/TroubleshootSection/TroubleshootSection.d.ts.map +1 -1
  12. package/lib/esm/components/TroubleshootSection/TroubleshootSection.js +51 -10
  13. package/lib/esm/components/shared/fileUpload/reducer/AttachmentHelper.d.ts.map +1 -1
  14. package/lib/esm/components/shared/fileUpload/reducer/AttachmentHelper.js +0 -4
  15. package/lib/esm/components/wizardLayout/WizardAside.d.ts.map +1 -1
  16. package/lib/esm/components/wizardLayout/WizardAside.js +1 -9
  17. package/lib/esm/components/wizardLayout/WizardNavigation.d.ts.map +1 -1
  18. package/lib/esm/components/wizardLayout/WizardNavigation.js +5 -2
  19. package/lib/esm/css/AskRedHat.css +31 -0
  20. package/lib/esm/hooks/useARHResponse.d.ts.map +1 -1
  21. package/lib/esm/hooks/useARHResponse.js +23 -13
  22. package/lib/esm/reducers/AIResponseConstNTypes.d.ts +5 -0
  23. package/lib/esm/reducers/AIResponseConstNTypes.d.ts.map +1 -1
  24. package/lib/esm/reducers/AIResponseConstNTypes.js +6 -0
  25. package/lib/esm/reducers/SessionRestoreReducer.d.ts +0 -1
  26. package/lib/esm/reducers/SessionRestoreReducer.d.ts.map +1 -1
  27. package/lib/esm/reducers/SessionRestoreReducer.js +1 -12
  28. package/lib/esm/scss/_main.scss +0 -5
  29. package/package.json +9 -9
  30. package/lib/esm/components/CaseInformation/AISureMessageCard.d.ts +0 -7
  31. package/lib/esm/components/CaseInformation/AISureMessageCard.d.ts.map +0 -1
  32. package/lib/esm/components/CaseInformation/AISureMessageCard.js +0 -15
@@ -1 +1 @@
1
- {"version":3,"file":"CaseDetailsAside.d.ts","sourceRoot":"","sources":["../../../../src/components/CaseEditView/CaseDetailsAside.tsx"],"names":[],"mappings":"AAkBA,OAAO,KAA2D,MAAM,OAAO,CAAC;AAYhF,UAAU,MAAM;IACZ,UAAU,EAAE,MAAM,CAAC;CACtB;AAMD,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,qBAsZ7C"}
1
+ {"version":3,"file":"CaseDetailsAside.d.ts","sourceRoot":"","sources":["../../../../src/components/CaseEditView/CaseDetailsAside.tsx"],"names":[],"mappings":"AAkBA,OAAO,KAA2D,MAAM,OAAO,CAAC;AAYhF,UAAU,MAAM;IACZ,UAAU,EAAE,MAAM,CAAC;CACtB;AAMD,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,qBA2Z7C"}
@@ -1 +1 @@
1
- {"version":3,"file":"CaseManagement.d.ts","sourceRoot":"","sources":["../../../../src/components/CaseManagement/CaseManagement.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAgB1B,MAAM,WAAW,MAAM;CAAG;AAC1B,MAAM,CAAC,OAAO,UAAU,cAAc,CAAC,KAAK,EAAE,MAAM,qBAkCnD"}
1
+ {"version":3,"file":"CaseManagement.d.ts","sourceRoot":"","sources":["../../../../src/components/CaseManagement/CaseManagement.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAgB1B,MAAM,WAAW,MAAM;CAAG;AAC1B,MAAM,CAAC,OAAO,UAAU,cAAc,CAAC,KAAK,EAAE,MAAM,qBAiCnD"}
@@ -1 +1 @@
1
- {"version":3,"file":"PreCaseConfirmationModals.d.ts","sourceRoot":"","sources":["../../../../src/components/ConfirmationModals/PreCaseConfirmationModals.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAM1B,oBAAY,6BAA6B;IACrC,SAAS,aAAa;IACtB,mBAAmB,sBAAsB;IACzC,UAAU,cAAc;IACxB,mBAAmB,sBAAsB;CAC5C;AAED,UAAU,MAAM;IACZ,qBAAqB,EAAE,6BAA6B,CAAC;IACrD,YAAY,EAAE,MAAM,IAAI,CAAC;IACzB,SAAS,EAAE,MAAM,IAAI,CAAC;CACzB;AAED,MAAM,CAAC,OAAO,UAAU,yBAAyB,CAAC,KAAK,EAAE,MAAM,qBAqB9D"}
1
+ {"version":3,"file":"PreCaseConfirmationModals.d.ts","sourceRoot":"","sources":["../../../../src/components/ConfirmationModals/PreCaseConfirmationModals.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAM1B,oBAAY,6BAA6B;IACrC,SAAS,aAAa;IACtB,mBAAmB,sBAAsB;IACzC,UAAU,cAAc;IACxB,mBAAmB,sBAAsB;CAC5C;AAED,UAAU,MAAM;IACZ,qBAAqB,EAAE,6BAA6B,CAAC;IACrD,YAAY,EAAE,MAAM,IAAI,CAAC;IACzB,SAAS,EAAE,MAAM,IAAI,CAAC;CACzB;AAED,MAAM,CAAC,OAAO,UAAU,yBAAyB,CAAC,KAAK,EAAE,MAAM,qBAuB9D"}
@@ -19,5 +19,5 @@ export const CvePanel = (props) => {
19
19
  React.createElement(AccordionContent, { id: `cve-content-${index}` },
20
20
  React.createElement(CveItem, { cve: cve, isExpanded: isExpanded, index: index }))));
21
21
  };
22
- return (React.createElement(Accordion, { isBordered: false, displaySize: 'default', asDefinitionList: false, className: `${props.className ? props.className : ''}` }, map(slice(cveWorkflowRecommendation, 0, 4), renderAccordionItem)));
22
+ return (React.createElement(Accordion, { isBordered: true, displaySize: 'default', asDefinitionList: false, className: `${props.className ? props.className : ''}` }, map(slice(cveWorkflowRecommendation, 0, 4), renderAccordionItem)));
23
23
  };
@@ -1 +1 @@
1
- {"version":3,"file":"CveSidebar.d.ts","sourceRoot":"","sources":["../../../../src/components/Cve/CveSidebar.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,OAAO,CAAC;AAM1B,eAAO,MAAM,UAAU,yBA+BtB,CAAC"}
1
+ {"version":3,"file":"CveSidebar.d.ts","sourceRoot":"","sources":["../../../../src/components/Cve/CveSidebar.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,OAAO,CAAC;AAM1B,eAAO,MAAM,UAAU,yBA6BtB,CAAC"}
@@ -1,4 +1,4 @@
1
- import { Badge, Card, CardBody, CardHeader, CardTitle, Flex, FlexItem } from '@patternfly/react-core';
1
+ import { Badge } from '@patternfly/react-core';
2
2
  import isEmpty from 'lodash/isEmpty';
3
3
  import isEqual from 'lodash/isEqual';
4
4
  import size from 'lodash/size';
@@ -13,12 +13,11 @@ export const CveSidebar = () => {
13
13
  if (isEmpty(cveWorkflowRecommendation)) {
14
14
  return null;
15
15
  }
16
- return (React.createElement(Card, { className: "pf-v6-u-mb-lg" },
17
- React.createElement(CardHeader, null,
18
- React.createElement(CardTitle, null,
19
- React.createElement(Flex, { alignItems: { default: 'alignItemsCenter' } },
20
- 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"))),
21
- React.createElement(Badge, { isRead: true }, size(cveWorkflowRecommendation))))),
22
- React.createElement(CardBody, null,
23
- React.createElement(CvePanel, null))));
16
+ return (React.createElement(React.Fragment, null,
17
+ React.createElement("div", { className: "card card-white card-support file-diag pf-v6-u-mb-lg" },
18
+ React.createElement("h3", { className: "card-heading popular-solutions green-card-heading card-header-bg" },
19
+ React.createElement("span", { className: "pf-v6-u-mr-sm" }, cveWorkflowRecommendation.length > 1 ? (React.createElement(Trans, null, "Handpicked for these CVEs")) : (React.createElement(Trans, null, "Handpicked for this CVE"))),
20
+ React.createElement(Badge, { isRead: true }, size(cveWorkflowRecommendation))),
21
+ React.createElement("div", { className: "card-body" },
22
+ React.createElement(CvePanel, null)))));
24
23
  };
@@ -1 +1 @@
1
- {"version":3,"file":"SessionRestore.d.ts","sourceRoot":"","sources":["../../../../src/components/SessionRestore/SessionRestore.tsx"],"names":[],"mappings":"AAUA,OAAO,KAAkD,MAAM,OAAO,CAAC;AACvE,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAQvD,OAAO,EAGH,eAAe,EAElB,MAAM,iCAAiC,CAAC;AAmBzC,UAAU,MAAM;IACZ,UAAU,EAAE,mBAAmB,CAAC,eAAe,CAAC,CAAC;CACpD;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,qBAyW3C"}
1
+ {"version":3,"file":"SessionRestore.d.ts","sourceRoot":"","sources":["../../../../src/components/SessionRestore/SessionRestore.tsx"],"names":[],"mappings":"AAUA,OAAO,KAAkD,MAAM,OAAO,CAAC;AACvE,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAQvD,OAAO,EAGH,eAAe,EAElB,MAAM,iCAAiC,CAAC;AAkBzC,UAAU,MAAM;IACZ,UAAU,EAAE,mBAAmB,CAAC,eAAe,CAAC,CAAC;CACpD;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,qBAiW3C"}
@@ -24,7 +24,7 @@ import { CaseReducerConstants, SESSION_REFERRER_URL_LIMIT } from '../../reducers
24
24
  import { getSessionDetailsFromCase } from '../../reducers/CaseHelpers';
25
25
  import { setCaseAccountNumber, setCaseOwner, setCaseState, updateCaseWithSession } from '../../reducers/CaseReducer';
26
26
  import { AppRouteSections, sessionRestoreCardSections, } from '../../reducers/RouteConstNTypes';
27
- import { createSession, getIndividualSessionById, getRelevantSessionFromSessions, isAISureSession, loadPreviousSessions, markAllSessionsUnresolved, updateActiveSessionId, updateSession, } from '../../reducers/SessionRestoreReducer';
27
+ import { createSession, getIndividualSessionById, getRelevantSessionFromSessions, loadPreviousSessions, markAllSessionsUnresolved, updateActiveSessionId, updateSession, } from '../../reducers/SessionRestoreReducer';
28
28
  import { useMetadata } from '../../utils/metadataUtil';
29
29
  import RouteUtils from '../../utils/routeUtils';
30
30
  import { resetAttachment } from '../shared/fileUpload';
@@ -146,15 +146,11 @@ export function SessionRestore(props) {
146
146
  const userAgent = getUserAgentForCaseMode(isCaseCreate);
147
147
  // existingOriginatingSystem or If useragents are different then existingUserAgent or userAgent
148
148
  const userAgentAB = userAgent + (isEqual(ABTestVariation, 'A') ? '-A-1' : '-B-1');
149
- const mustReplaceForeignPcmTag = String(existingOriginatingSystem !== null && existingOriginatingSystem !== void 0 ? existingOriginatingSystem : '').toLowerCase() === 'aisure' ||
150
- String(existingUserAgent !== null && existingUserAgent !== void 0 ? existingUserAgent : '').toLowerCase() === 'aisure';
151
- const originatingSystem = mustReplaceForeignPcmTag
152
- ? userAgent
153
- : !isEmpty(existingOriginatingSystem)
154
- ? existingOriginatingSystem
155
- : !isEmpty(existingUserAgent) && existingUserAgent !== userAgent
156
- ? existingUserAgent
157
- : userAgent;
149
+ const originatingSystem = !isEmpty(existingOriginatingSystem)
150
+ ? existingOriginatingSystem
151
+ : !isEmpty(existingUserAgent) && existingUserAgent !== userAgent
152
+ ? existingUserAgent
153
+ : userAgent;
158
154
  let session = {
159
155
  userAgent: userAgentAB,
160
156
  originatingSystem: originatingSystem,
@@ -228,9 +224,7 @@ export function SessionRestore(props) {
228
224
  const v3ClusterName = reg.exec(sessionDetails.description) ? reg.exec(sessionDetails.description)[1] : '';
229
225
  setCaseState(caseDispatch, { v3ClusterName });
230
226
  yield updateCaseWithSession(caseDispatch, sessionItem, loggedInUserRights.data.getAccountNumber(), loggedInUserRights.data.getHydraContactFromLoggedInUser(), loggedInUsersAccount.data);
231
- if (!isAISureSession(sessionItem)) {
232
- restoreFilesFromSession(dispatchToAttachmentReducer, sessionItem.session.id);
233
- }
227
+ restoreFilesFromSession(dispatchToAttachmentReducer, sessionItem.session.id);
234
228
  // navigate to beginning section if submit case.
235
229
  if (isCaseSubmit) {
236
230
  const newParams = {
@@ -1 +1 @@
1
- {"version":3,"file":"AskRedHat.d.ts","sourceRoot":"","sources":["../../../../src/components/TroubleshootSection/AskRedHat.tsx"],"names":[],"mappings":"AAyBA,OAAO,KAAkD,MAAM,OAAO,CAAC;AAmCvE,UAAU,MAAM;IACZ,iBAAiB,CAAC,EAAE,MAAM,IAAI,CAAC;CAClC;AAED,eAAO,MAAM,SAAS,GAAI,uBAAuB,MAAM,sBA2ftD,CAAC"}
1
+ {"version":3,"file":"AskRedHat.d.ts","sourceRoot":"","sources":["../../../../src/components/TroubleshootSection/AskRedHat.tsx"],"names":[],"mappings":"AAyBA,OAAO,KAA2D,MAAM,OAAO,CAAC;AAmChF,UAAU,MAAM;IACZ,iBAAiB,CAAC,EAAE,MAAM,IAAI,CAAC;CAClC;AAED,eAAO,MAAM,SAAS,GAAI,uBAAuB,MAAM,sBAoiBtD,CAAC"}
@@ -12,9 +12,9 @@ import { sendRHDirectMessageFeedback } from '@ifd-ui/ask-redhat-core';
12
12
  import { Button, Card, CardBody, CardHeader, Content, ContentVariants, EmptyState, EmptyStateBody, EmptyStateFooter, EmptyStateVariant, Icon, Label, Modal, ModalVariant, Skeleton, Spinner, } from '@patternfly/react-core';
13
13
  import ExclamationCircleIcon from '@patternfly/react-icons/dist/js/icons/exclamation-circle-icon';
14
14
  import { useFetch } from '@rh-support/components';
15
- import { dtmTrackEventAskRedhat } from '@rh-support/utils';
15
+ import { dtmTrackEventAskRedhat, isFunctionalCookieAccepted } from '@rh-support/utils';
16
16
  import isEqual from 'lodash/isEqual';
17
- import React, { useContext, useEffect, useRef, useState } from 'react';
17
+ import React, { useContext, useEffect, useMemo, useRef, useState } from 'react';
18
18
  import { Trans, useTranslation } from 'react-i18next';
19
19
  import { MODAL_MESSAGES, QUICK_RESPONSES, TOOLTIP_MESSAGES } from '../../constants/askRedHatMessages';
20
20
  import { useAIResponseDispatch, useAIResponseState } from '../../context/AIResponseContext';
@@ -208,6 +208,31 @@ export const AskRedHat = ({ onChatWithAIClick }) => {
208
208
  navigator.clipboard.writeText(answer);
209
209
  } }, TOOLTIP_MESSAGES.copy),
210
210
  };
211
+ const isFunctionalCookieEnabled = useMemo(() => isFunctionalCookieAccepted(), []);
212
+ const handleManagePreferences = () => {
213
+ var _a, _b;
214
+ if (typeof ((_b = (_a = window.truste) === null || _a === void 0 ? void 0 : _a.eu) === null || _b === void 0 ? void 0 : _b.clickListener) === 'function') {
215
+ window.truste.eu.clickListener();
216
+ }
217
+ };
218
+ if (!isFunctionalCookieEnabled) {
219
+ return (React.createElement("div", { className: "ask-redhat" },
220
+ React.createElement("p", { className: "ask-redhat-title" },
221
+ React.createElement(StarIcon, { width: 20, height: 20 }),
222
+ isCaseCreate ? t('Resolve your issue now with AI insights') : t('Troubleshoot with AI insights'),
223
+ React.createElement(Label, { variant: "outline" },
224
+ React.createElement(Trans, null, "PREVIEW"))),
225
+ React.createElement("div", { className: "ask-redhat-cookie-error" },
226
+ React.createElement("div", { className: "ask-redhat-cookie-error__heading" },
227
+ React.createElement(Icon, { iconSize: "md", status: "danger" },
228
+ React.createElement(ExclamationCircleIcon, null)),
229
+ React.createElement("h4", null,
230
+ React.createElement(Trans, null, "Functional cookies not enabled"))),
231
+ React.createElement("p", { className: "ask-redhat-cookie-error__body" },
232
+ React.createElement(Trans, null, "To access this feature, functional cookies must be turned on. After updating your preferences, you may need to refresh the page.")),
233
+ React.createElement(Button, { variant: "primary", onClick: handleManagePreferences },
234
+ React.createElement(Trans, null, "Manage preferences")))));
235
+ }
211
236
  if (aiResponseState.isRateLimited) {
212
237
  return (React.createElement("div", { className: "ask-redhat" },
213
238
  React.createElement("p", { className: "ask-redhat-title" },
@@ -1 +1 @@
1
- {"version":3,"file":"TroubleshootSection.d.ts","sourceRoot":"","sources":["../../../../src/components/TroubleshootSection/TroubleshootSection.tsx"],"names":[],"mappings":"AAAA,OAAO,6CAA6C,CAAC;AAkBrD,OAAO,KAA+D,MAAM,OAAO,CAAC;AAEpF,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAUvD,OAAO,EAAoB,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAmCpF,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,EAAE,KAAK,CAAC,gBAAgB,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IAC7D,cAAc,EAAE,OAAO,CAAC;IACxB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,YAAY,EAAE,OAAO,CAAC;IACtB,eAAe,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IAC1C,iBAAiB,CAAC,EAAE,MAAM,IAAI,CAAC;IAC/B,mBAAmB,EAAE,OAAO,CAAC;IAC7B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,4BAA4B,CAAC,EAAE,OAAO,CAAC;IACvC,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC,KAAK,IAAI,CAAC;IAC1D,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,2BAA2B,CAAC,EAAE,KAAK,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAC9D,0BAA0B,CAAC,EAAE,KAAK,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAC7D,qBAAqB,CAAC,EAAE,MAAM,IAAI,CAAC;IACnC,yBAAyB,CAAC,EAAE,MAAM,IAAI,CAAC;IACvC,kBAAkB,CAAC,EAAE,MAAM,IAAI,CAAC;CACnC;AAWD,iBAAS,mBAAmB,CAAC,KAAK,EAAE,MAAM,qBAgdzC;kBAhdQ,mBAAmB;;;AAmd5B,eAAe,mBAAmB,CAAC"}
1
+ {"version":3,"file":"TroubleshootSection.d.ts","sourceRoot":"","sources":["../../../../src/components/TroubleshootSection/TroubleshootSection.tsx"],"names":[],"mappings":"AAAA,OAAO,6CAA6C,CAAC;AAkBrD,OAAO,KAA+D,MAAM,OAAO,CAAC;AAEpF,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAWvD,OAAO,EAAoB,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAmCpF,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,EAAE,KAAK,CAAC,gBAAgB,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IAC7D,cAAc,EAAE,OAAO,CAAC;IACxB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,YAAY,EAAE,OAAO,CAAC;IACtB,eAAe,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IAC1C,iBAAiB,CAAC,EAAE,MAAM,IAAI,CAAC;IAC/B,mBAAmB,EAAE,OAAO,CAAC;IAC7B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,4BAA4B,CAAC,EAAE,OAAO,CAAC;IACvC,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC,KAAK,IAAI,CAAC;IAC1D,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,2BAA2B,CAAC,EAAE,KAAK,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAC9D,0BAA0B,CAAC,EAAE,KAAK,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAC7D,qBAAqB,CAAC,EAAE,MAAM,IAAI,CAAC;IACnC,yBAAyB,CAAC,EAAE,MAAM,IAAI,CAAC;IACvC,kBAAkB,CAAC,EAAE,MAAM,IAAI,CAAC;CACnC;AAWD,iBAAS,mBAAmB,CAAC,KAAK,EAAE,MAAM,qBA4fzC;kBA5fQ,mBAAmB;;;AA+f5B,eAAe,mBAAmB,CAAC"}
@@ -13,7 +13,7 @@ import { ARHEventName, AskRedHatChat, setAuthToken, } from '@ifd-ui/ask-redhat-c
13
13
  import { Button, Card, CardBody, CardHeader, Tooltip } from '@patternfly/react-core';
14
14
  import InfoCircleIcon from '@patternfly/react-icons/dist/js/icons/info-circle-icon';
15
15
  import { ErrorBoundary, LoadingDots } from '@rh-support/components';
16
- import { PreviousCaseTypes } from '@rh-support/utils';
16
+ import { getValidUUID, isFunctionalCookieAccepted, PreviousCaseTypes } from '@rh-support/utils';
17
17
  import i18next from 'i18next';
18
18
  import isEmpty from 'lodash/isEmpty';
19
19
  import isEqual from 'lodash/isEqual';
@@ -25,10 +25,11 @@ import { RouteContext } from '../../context/RouteContext';
25
25
  import { SessionRestoreDispatchContext, SessionRestoreStateContext } from '../../context/SessionRestoreContext';
26
26
  import { TCStateContext } from '../../context/TopContentContext';
27
27
  import { useAB } from '../../hooks/useAB';
28
+ import { ARHConversationErrorType } from '../../reducers/AIResponseConstNTypes';
28
29
  import { setHasChunkReceived, updateConversationId } from '../../reducers/AIResponseReducer';
29
30
  import { appSourceId_ARH, excludedCaseTypesforARH } from '../../reducers/CaseConstNTypes';
30
31
  import { AppRouteSections } from '../../reducers/RouteConstNTypes';
31
- import { createOrUpdateSessionResources } from '../../reducers/SessionRestoreReducer';
32
+ import { createOrUpdateSessionResources, updateSession } from '../../reducers/SessionRestoreReducer';
32
33
  import { calculateEngagementWindow, DEFAULT_ENGAGEMENT_WINDOW } from '../../utils/engagementUtils';
33
34
  import { OpenShiftClusterId } from '../CaseManagement/OpenShiftClusterId';
34
35
  import ClusterRecommendations from '../Recommendations/ClusterRecommendations';
@@ -103,7 +104,7 @@ function TroubleshootSection(props) {
103
104
  caseType: state.caseDetails.caseType,
104
105
  issue: state.caseDetails.issue,
105
106
  }), isEqual);
106
- const { sessionRestore: { activeSessionId, sessionResourceTracking }, } = useContext(SessionRestoreStateContext);
107
+ const { sessionRestore: { activeSessionId, sessionResourceTracking, previousSessions }, } = useContext(SessionRestoreStateContext);
107
108
  const sessionRestoreDispatch = useContext(SessionRestoreDispatchContext);
108
109
  const canShowTopProducts = isEmpty(product);
109
110
  const canShowTopContent = !canShowTopProducts && ((_d = topContent === null || topContent === void 0 ? void 0 : topContent.data) === null || _d === void 0 ? void 0 : _d.length) > 0;
@@ -130,13 +131,24 @@ function TroubleshootSection(props) {
130
131
  }
131
132
  }, [activeSessionId, product, version, summary, issue, sessionRestoreDispatch, sessionResourceTracking]);
132
133
  const handleARHEvent = useCallback((eventData) => {
133
- // Enable "See more resources" button when first chunk iss received
134
+ var _a, _b, _c, _d;
135
+ const { conversationId } = eventData.payload;
136
+ if (isVariationA && conversationId && conversationId !== lastDispatchedConversationIdRef.current) {
137
+ lastDispatchedConversationIdRef.current = conversationId;
138
+ aiResponseDispatch(updateConversationId(conversationId));
139
+ // Store conversationId in session for persistence
140
+ if (activeSessionId) {
141
+ const sessionDetails = (_a = previousSessions.data[activeSessionId]) === null || _a === void 0 ? void 0 : _a.sessionDetails;
142
+ const newSession = { conversationId };
143
+ updateSession(sessionRestoreDispatch, activeSessionId, sessionDetails, newSession);
144
+ }
145
+ }
146
+ // Enable "See more resources" button when first chunk is received
134
147
  if (eventData.eventName === ARHEventName.FirstMessageReceived) {
135
148
  aiResponseDispatch(setHasChunkReceived(true));
136
149
  }
137
150
  // If message sent with conversationId, call API immediately (engagement happened)
138
151
  if (eventData.eventName === ARHEventName.MessageSent && isVariationA) {
139
- const { conversationId } = eventData.payload;
140
152
  if (conversationId === undefined || conversationId === null || conversationId === '') {
141
153
  hasFirstMessageSentRef.current = true;
142
154
  }
@@ -149,7 +161,7 @@ function TroubleshootSection(props) {
149
161
  }
150
162
  }
151
163
  if (eventData.eventName === ARHEventName.SourcePresented) {
152
- const { conversationId, sources } = eventData.payload;
164
+ const { sources } = eventData.payload;
153
165
  if (sources && Array.isArray(sources)) {
154
166
  sourcesRef.current = sources.map((source) => (Object.assign(Object.assign({}, source), { url: source.sourceUrl || source.url, link: source.sourceUrl || source.link })));
155
167
  }
@@ -172,6 +184,13 @@ function TroubleshootSection(props) {
172
184
  hasFirstMessageSentRef.current = true;
173
185
  setStreamingErrorOccurred();
174
186
  aiResponseDispatch(setHasChunkReceived(true));
187
+ const existingSessionConversationId = (_c = (_b = previousSessions.data[activeSessionId]) === null || _b === void 0 ? void 0 : _b.session) === null || _c === void 0 ? void 0 : _c.conversationId;
188
+ if (!conversationId && activeSessionId && !existingSessionConversationId) {
189
+ const sessionDetails = (_d = previousSessions.data[activeSessionId]) === null || _d === void 0 ? void 0 : _d.sessionDetails;
190
+ updateSession(sessionRestoreDispatch, activeSessionId, sessionDetails, {
191
+ conversationId: ARHConversationErrorType.AI_RESPONSE_ERROR,
192
+ });
193
+ }
175
194
  }
176
195
  // Count characters from DOM when answer is fully received
177
196
  if (eventData.eventName === ARHEventName.AnswerReceived) {
@@ -190,7 +209,15 @@ function TroubleshootSection(props) {
190
209
  setHasAnswerReceived(true);
191
210
  }, 100);
192
211
  }
193
- }, [aiResponseDispatch, callResourceAPI, clearEngagementTimer, isVariationA]);
212
+ }, [
213
+ activeSessionId,
214
+ aiResponseDispatch,
215
+ callResourceAPI,
216
+ clearEngagementTimer,
217
+ isVariationA,
218
+ previousSessions.data,
219
+ sessionRestoreDispatch,
220
+ ]);
194
221
  const preprocessRequest = () => __awaiter(this, void 0, void 0, function* () {
195
222
  var _a;
196
223
  if (!keycloakSession) {
@@ -217,9 +244,22 @@ function TroubleshootSection(props) {
217
244
  (!isVariationA && ((_f = aiResponseState.aiResponse) === null || _f === void 0 ? void 0 : _f.conversationId) && ((_g = props.haveARHFieldsChangedForBRef) === null || _g === void 0 ? void 0 : _g.current))
218
245
  ? detailedQuestion
219
246
  : '';
220
- const firstUserMessage = isVariationA && !((_h = aiResponseState.aiResponse) === null || _h === void 0 ? void 0 : _h.conversationId) && !hasFirstMessageSentRef.current
247
+ const firstUserMessage = isVariationA &&
248
+ !((_h = aiResponseState.aiResponse) === null || _h === void 0 ? void 0 : _h.conversationId) &&
249
+ !hasFirstMessageSentRef.current &&
250
+ isFunctionalCookieAccepted()
221
251
  ? detailedQuestion
222
252
  : '';
253
+ useEffect(() => {
254
+ var _a;
255
+ if (!isFunctionalCookieAccepted() && activeSessionId) {
256
+ const sessionDetails = (_a = previousSessions.data[activeSessionId]) === null || _a === void 0 ? void 0 : _a.sessionDetails;
257
+ updateSession(sessionRestoreDispatch, activeSessionId, sessionDetails, {
258
+ conversationId: ARHConversationErrorType.FUNCTIONAL_COOKIE_NOT_ACCEPTED,
259
+ });
260
+ }
261
+ // eslint-disable-next-line react-hooks/exhaustive-deps
262
+ }, [activeSessionId]);
223
263
  // Reset haveNewARHFieldsChangedRef after 100ms on mount
224
264
  useEffect(() => {
225
265
  const timer = setTimeout(() => {
@@ -255,7 +295,7 @@ function TroubleshootSection(props) {
255
295
  appEnv: Env.getEnvName(),
256
296
  showWelcomeMessage: false,
257
297
  firstUserMessage: firstUserMessage,
258
- conversationId: (_l = (_k = aiResponseState.aiResponse) === null || _k === void 0 ? void 0 : _k.conversationId) !== null && _l !== void 0 ? _l : '',
298
+ conversationId: (_l = getValidUUID((_k = aiResponseState.aiResponse) === null || _k === void 0 ? void 0 : _k.conversationId)) !== null && _l !== void 0 ? _l : '',
259
299
  latestUserMessage: latestUserMessage,
260
300
  enableHeaderMenu: false,
261
301
  enableTheme: false,
@@ -311,7 +351,8 @@ function TroubleshootSection(props) {
311
351
  React.createElement(AskRedHatChat, { initConfig: initConfig }),
312
352
  React.createElement("div", { className: "fullscreen-chat-footer" }, isVariationA && activeSection === AppRouteSections.RESOURCES ? (React.createElement(React.Fragment, null,
313
353
  React.createElement("button", { onClick: props.onBack, className: "btn btn-app btn-open-white main-nav-button", type: "button" }, t('Go back')),
314
- React.createElement("button", { onClick: props.onSeeMoreResources, className: "btn btn-app btn-primary main-nav-button", type: "button", disabled: props.aiServicesAvailable &&
354
+ React.createElement("button", { onClick: props.onSeeMoreResources, className: "btn btn-app btn-primary main-nav-button", type: "button", disabled: isFunctionalCookieAccepted() &&
355
+ props.aiServicesAvailable &&
315
356
  !aiResponseState.hasChunkReceived &&
316
357
  !aiResponseState.error }, t('See more resources')))) : isCaseCreate ? (React.createElement("span", null,
317
358
  React.createElement(Trans, { i18nKey: "<span>Return to</span> <button>case creation</button>", components: {
@@ -1 +1 @@
1
- {"version":3,"file":"AttachmentHelper.d.ts","sourceRoot":"","sources":["../../../../../../src/components/shared/fileUpload/reducer/AttachmentHelper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AttachmentHelper.d.ts","sourceRoot":"","sources":["../../../../../../src/components/shared/fileUpload/reducer/AttachmentHelper.ts"],"names":[],"mappings":"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"}
@@ -370,10 +370,6 @@ export function restoreFilesFromSession(dispatch, sessionId) {
370
370
  attachments.forEach((item) => {
371
371
  if (item.status !== 'COMPLETED')
372
372
  return;
373
- const attachmentSource = item.source;
374
- if (attachmentSource != null && String(attachmentSource).toLowerCase() === 'aisure') {
375
- return;
376
- }
377
373
  const localFile = {
378
374
  name: item.fileName,
379
375
  size: item.size,
@@ -1 +1 @@
1
- {"version":3,"file":"WizardAside.d.ts","sourceRoot":"","sources":["../../../../src/components/wizardLayout/WizardAside.tsx"],"names":[],"mappings":"AAMA,OAAO,KAAqB,MAAM,OAAO,CAAC;AAC1C,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAMvD,OAAO,EAGH,eAAe,EAIlB,MAAM,iCAAiC,CAAC;AAWzC,UAAU,MAAM;IACZ,UAAU,EAAE,mBAAmB,CAAC,eAAe,CAAC,CAAC;IACjD,2BAA2B,EAAE,OAAO,CAAC;CACxC;AAED,iBAAS,WAAW,CAAC,KAAK,EAAE,MAAM,qBA4EjC;kBA5EQ,WAAW;;;AA8EpB,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"WizardAside.d.ts","sourceRoot":"","sources":["../../../../src/components/wizardLayout/WizardAside.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAqB,MAAM,OAAO,CAAC;AAC1C,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAMvD,OAAO,EAGH,eAAe,EAIlB,MAAM,iCAAiC,CAAC;AAUzC,UAAU,MAAM;IACZ,UAAU,EAAE,mBAAmB,CAAC,eAAe,CAAC,CAAC;IACjD,2BAA2B,EAAE,OAAO,CAAC;CACxC;AAED,iBAAS,WAAW,CAAC,KAAK,EAAE,MAAM,qBAoEjC;kBApEQ,WAAW;;;AAsEpB,eAAe,WAAW,CAAC"}
@@ -1,4 +1,3 @@
1
- import { GlobalMetadataStateContext } from '@rh-support/react-context';
2
1
  import { ability, CaseListFields, resourceActions, resources } from '@rh-support/user-permissions';
3
2
  import { PreviousCaseTypes } from '@rh-support/utils';
4
3
  import isEmpty from 'lodash/isEmpty';
@@ -10,7 +9,6 @@ import { RouteContext } from '../../context/RouteContext';
10
9
  import { TCStateContext } from '../../context/TopContentContext';
11
10
  import { useAB } from '../../hooks/useAB';
12
11
  import { AppRouteSections, hideFileUploadSidebarWidgetSections, showSideBarClusterIdRuleWidgetSections, showSideBarEARuleWidgetSectionsExperienceA, showSideBarFileRecommendationSections, } from '../../reducers/RouteConstNTypes';
13
- import { AISureMessageCard } from '../CaseInformation/AISureMessageCard';
14
12
  import { FileDiag } from '../CaseInformation/FileDiag';
15
13
  import { CveSidebar } from '../Cve/CveSidebar';
16
14
  import { AsideResults } from '../Recommendations/AsideResults';
@@ -22,23 +20,18 @@ import EmptyTopContentSidebar from '../Suggestions/EmptyTopContentSidebar';
22
20
  import Suggestions from '../Suggestions/Suggestions';
23
21
  const defaultProps = {};
24
22
  function WizardAside(props) {
25
- var _a;
26
23
  const { isVariationA } = useAB();
27
24
  const { routeState: { activeSection, isCaseCreate }, } = useContext(RouteContext);
28
25
  const { topContentState: { topContent }, } = useContext(TCStateContext);
29
- const { globalMetadataState: { loggedInUsersAccount }, } = useContext(GlobalMetadataStateContext);
30
26
  const canAddAttachments = ability.can(resourceActions.PATCH, resources.CASE_CREATE, CaseListFields.ATTACHMENTS);
31
- const { isCreatingCase, caseType, isCveModalOpened, version, product } = useCaseSelector((state) => ({
27
+ const { isCreatingCase, caseType, isCveModalOpened, version } = useCaseSelector((state) => ({
32
28
  isCreatingCase: state.isCreatingCase,
33
29
  caseType: state.caseDetails.caseType,
34
30
  isCveModalOpened: state.isCveModalOpened,
35
31
  version: state.caseDetails.version,
36
- product: state.caseDetails.product,
37
32
  }), isEqual);
38
33
  const isIdea = caseType === PreviousCaseTypes.FEATURE_ENHANCEMENT;
39
34
  const canUseSessionManagement = ability.can(resourceActions.CREATE, resources.SESSION_TRACKING);
40
- const isSecureSupportOrCSS = loggedInUsersAccount.data.hasConfirmedStatesideSupport || loggedInUsersAccount.data.secureSupport;
41
- const isOpenShiftProduct = (_a = product === null || product === void 0 ? void 0 : product.toLowerCase().includes('openshift')) !== null && _a !== void 0 ? _a : false;
42
35
  const canShowFileUploadWidget = () => canAddAttachments &&
43
36
  !props.isAttachmentUploadModalOpen &&
44
37
  !isUndefined(activeSection) &&
@@ -59,7 +52,6 @@ function WizardAside(props) {
59
52
  canUseSessionManagement && !isCreatingCase && activeSection !== AppRouteSections.SUBMIT_CASE && (React.createElement(SessionRestore, { routeProps: props.routeProps })),
60
53
  canShowFileUploadWidget() && React.createElement(InsightsResults, null),
61
54
  canShowFileUploadWidget() && React.createElement(FileDiag, null),
62
- !isSecureSupportOrCSS && isOpenShiftProduct && React.createElement(AISureMessageCard, null),
63
55
  activeSection === (isCaseCreate ? AppRouteSections.SUMMARIZE : AppRouteSections.TROUBLESHOOT) &&
64
56
  !isCveModalOpened && React.createElement(CveSidebar, null),
65
57
  activeSection === AppRouteSections.RESOURCES && React.createElement(CveSidebar, null),
@@ -1 +1 @@
1
- {"version":3,"file":"WizardNavigation.d.ts","sourceRoot":"","sources":["../../../../src/components/wizardLayout/WizardNavigation.tsx"],"names":[],"mappings":"AAcA,OAAO,KAAmE,MAAM,OAAO,CAAC;AAExF,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAUvD,OAAO,EAAoB,eAAe,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AAM3G,UAAU,MAAM;IACZ,UAAU,EAAE,mBAAmB,CAAC,eAAe,CAAC,CAAC;IACjD,MAAM,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC,KAAK,IAAI,CAAC;IACzD,MAAM,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC,KAAK,IAAI,CAAC;IACzD,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;IACrE,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IAC3C,sBAAsB,CAAC,EAAE,MAAM,IAAI,CAAC;IACpC,kBAAkB,CAAC,EAAE,MAAM,IAAI,CAAC;IAChC,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,mBAAmB,CAAC,EAAE,OAAO,CAAC;CACjC;AAGD,iBAAS,gBAAgB,CAAC,KAAK,EAAE,MAAM,qBA+atC;kBA/aQ,gBAAgB;;;AAibzB,eAAe,gBAAgB,CAAC"}
1
+ {"version":3,"file":"WizardNavigation.d.ts","sourceRoot":"","sources":["../../../../src/components/wizardLayout/WizardNavigation.tsx"],"names":[],"mappings":"AAeA,OAAO,KAAmE,MAAM,OAAO,CAAC;AAExF,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAUvD,OAAO,EAAoB,eAAe,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AAM3G,UAAU,MAAM;IACZ,UAAU,EAAE,mBAAmB,CAAC,eAAe,CAAC,CAAC;IACjD,MAAM,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC,KAAK,IAAI,CAAC;IACzD,MAAM,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC,KAAK,IAAI,CAAC;IACzD,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;IACrE,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IAC3C,sBAAsB,CAAC,EAAE,MAAM,IAAI,CAAC;IACpC,kBAAkB,CAAC,EAAE,MAAM,IAAI,CAAC;IAChC,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,mBAAmB,CAAC,EAAE,OAAO,CAAC;CACjC;AAGD,iBAAS,gBAAgB,CAAC,KAAK,EAAE,MAAM,qBAkbtC;kBAlbQ,gBAAgB;;;AAobzB,eAAe,gBAAgB,CAAC"}
@@ -11,7 +11,7 @@ import { pcm } from '@cee-eng/hydrajs';
11
11
  import { Button, ButtonVariant, WizardFooterWrapper } from '@patternfly/react-core';
12
12
  import { useFetch, usePrevious } from '@rh-support/components';
13
13
  import { GlobalMetadataStateContext, useCanCreateCase } from '@rh-support/react-context';
14
- import { dtmTrackEventCaseCreationStepEncountered, getResTypeFromUrl, PreviousToNewCaseTypeMap, scrollIntoView, } from '@rh-support/utils';
14
+ import { dtmTrackEventCaseCreationStepEncountered, getResTypeFromUrl, isFunctionalCookieAccepted, PreviousToNewCaseTypeMap, scrollIntoView, } from '@rh-support/utils';
15
15
  import find from 'lodash/find';
16
16
  import isEmpty from 'lodash/isEmpty';
17
17
  import isEqual from 'lodash/isEqual';
@@ -283,7 +283,10 @@ function WizardNavigation(props) {
283
283
  React.createElement(WizardFooterWrapper, null,
284
284
  shouldShowNewARHFlowFooterButtons ? (React.createElement(React.Fragment, null,
285
285
  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'))),
286
- React.createElement("button", { onClick: props.onSeeMoreResources, className: "btn btn-app btn-primary main-nav-button", type: "button", disabled: props.aiServicesAvailable && !aiResponseState.hasChunkReceived && !aiResponseState.error }, t('See more resources')))) : props.isAIChatMode && activeSection === AppRouteSections.RESOURCES ? (isCaseCreate ? (React.createElement("span", null,
286
+ React.createElement("button", { onClick: props.onSeeMoreResources, className: "btn btn-app btn-primary main-nav-button", type: "button", disabled: isFunctionalCookieAccepted() &&
287
+ props.aiServicesAvailable &&
288
+ !aiResponseState.hasChunkReceived &&
289
+ !aiResponseState.error }, t('See more resources')))) : props.isAIChatMode && activeSection === AppRouteSections.RESOURCES ? (isCaseCreate ? (React.createElement("span", null,
287
290
  React.createElement(Trans, { i18nKey: "<span>Return to</span> <button>case creation</button>", components: {
288
291
  span: React.createElement("span", { className: "return-to-case-text" }),
289
292
  button: (React.createElement(Button, { className: "return-to-case-btn", variant: "link", component: "a", onClick: props.onReturnToCaseCreation })),
@@ -462,3 +462,34 @@ body:has(.pf-chatbot--embedded) .hide-for-askredhat {
462
462
  .ask-redhat-core .pf-chatbot__expand-collapse-button:focus .pf-v6-c-button__text {
463
463
  color: #151515 !important;
464
464
  }
465
+
466
+ .ask-redhat-cookie-error {
467
+ display: flex;
468
+ flex-direction: column;
469
+ align-items: center;
470
+ gap: 16px;
471
+ padding: 24px;
472
+ border: 1px solid var(--pf-v6-global--BorderColor--100, #c7c7c7);
473
+ border-radius: var(--pf-t--global--border--radius--small, 6px);
474
+ }
475
+
476
+ .ask-redhat-cookie-error__heading {
477
+ display: flex;
478
+ align-items: center;
479
+ justify-content: center;
480
+ gap: 8px;
481
+ }
482
+
483
+ .ask-redhat-cookie-error__heading h4 {
484
+ margin: 0;
485
+ font-size: 16px;
486
+ font-weight: 500;
487
+ }
488
+
489
+ .ask-redhat-cookie-error__body {
490
+ text-align: center;
491
+ font-size: 14px;
492
+ line-height: 21px;
493
+ max-width: 535px;
494
+ margin: 0;
495
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"useARHResponse.d.ts","sourceRoot":"","sources":["../../../src/hooks/useARHResponse.ts"],"names":[],"mappings":"AAqBA;;GAEG;AACH,eAAO,MAAM,cAAc,GAAI,wEAQ5B;IACC,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,GAAG,CAAC;CACf;;CAgGA,CAAC"}
1
+ {"version":3,"file":"useARHResponse.d.ts","sourceRoot":"","sources":["../../../src/hooks/useARHResponse.ts"],"names":[],"mappings":"AAuBA;;GAEG;AACH,eAAO,MAAM,cAAc,GAAI,wEAQ5B;IACC,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,GAAG,CAAC;CACf;;CAoGA,CAAC"}
@@ -8,11 +8,13 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
8
8
  });
9
9
  };
10
10
  import { askRHDirectAIResponse, getRHDirectConversationQuota, } from '@ifd-ui/ask-redhat-core';
11
+ import { getValidUUID, isFunctionalCookieAccepted } from '@rh-support/utils';
11
12
  import i18n from 'i18next';
12
13
  import { useCallback, useContext } from 'react';
13
14
  import { generateAIQuestion } from '../components/wizardLayout/WizardMain';
14
15
  import { useAIResponseDispatch } from '../context/AIResponseContext';
15
16
  import { SessionRestoreDispatchContext, SessionRestoreStateContext } from '../context/SessionRestoreContext';
17
+ import { ARHConversationErrorType } from '../reducers/AIResponseConstNTypes';
16
18
  import { streamingChunkReceived, streamingCompleted, streamingError, streamingStarted, updateQuotaLimit, } from '../reducers/AIResponseReducer';
17
19
  import { updateSession } from '../reducers/SessionRestoreReducer';
18
20
  /**
@@ -22,9 +24,21 @@ export const useARHResponse = ({ activeSection, product, version, summary, issue
22
24
  const aiResponseDispatch = useAIResponseDispatch();
23
25
  const { sessionRestore } = useContext(SessionRestoreStateContext);
24
26
  const sessionRestoreDispatch = useContext(SessionRestoreDispatchContext);
27
+ const persistConversationId = useCallback((conversationId) => __awaiter(void 0, void 0, void 0, function* () {
28
+ var _a;
29
+ if (!sessionRestore.activeSessionId)
30
+ return;
31
+ const sessionDetails = (_a = sessionRestore.previousSessions.data[sessionRestore.activeSessionId]) === null || _a === void 0 ? void 0 : _a.sessionDetails;
32
+ yield updateSession(sessionRestoreDispatch, sessionRestore.activeSessionId, sessionDetails, {
33
+ conversationId,
34
+ });
35
+ }), [sessionRestore.activeSessionId, sessionRestore.previousSessions.data, sessionRestoreDispatch]);
25
36
  const fetchARHResponse = useCallback(() => __awaiter(void 0, void 0, void 0, function* () {
26
37
  var _a;
27
38
  try {
39
+ if (!isFunctionalCookieAccepted()) {
40
+ return;
41
+ }
28
42
  // Check conversation quota
29
43
  const quotaResponse = yield getRHDirectConversationQuota(config);
30
44
  // Update quota limit in state
@@ -32,6 +46,7 @@ export const useARHResponse = ({ activeSection, product, version, summary, issue
32
46
  // Check if quota is exceeded
33
47
  if (quotaResponse.quota.used >= quotaResponse.quota.limit) {
34
48
  aiResponseDispatch(streamingError('Chat limit reached', true));
49
+ yield persistConversationId(ARHConversationErrorType.ARH_LIMIT_EXCEEDED);
35
50
  return;
36
51
  }
37
52
  }
@@ -46,26 +61,21 @@ export const useARHResponse = ({ activeSection, product, version, summary, issue
46
61
  aiResponseDispatch(streamingChunkReceived(chunk, accumulatedResponse));
47
62
  },
48
63
  onComplete: (finalResponse) => __awaiter(void 0, void 0, void 0, function* () {
49
- var _a;
50
64
  aiResponseDispatch(streamingCompleted(finalResponse));
51
- // Store conversationId in session for persistence
52
- if (finalResponse.conversationId && sessionRestore.activeSessionId) {
53
- const sessionDetails = (_a = sessionRestore.previousSessions.data[sessionRestore.activeSessionId]) === null || _a === void 0 ? void 0 : _a.sessionDetails;
54
- const newSession = {
55
- conversationId: finalResponse.conversationId,
56
- };
57
- yield updateSession(sessionRestoreDispatch, sessionRestore.activeSessionId, sessionDetails, newSession);
65
+ if (finalResponse.conversationId) {
66
+ yield persistConversationId(finalResponse.conversationId);
58
67
  }
59
68
  }),
60
- onError: (error) => {
69
+ onError: (error) => __awaiter(void 0, void 0, void 0, function* () {
61
70
  aiResponseDispatch(streamingError(error));
62
- },
71
+ yield persistConversationId(ARHConversationErrorType.AI_RESPONSE_ERROR);
72
+ }),
63
73
  };
64
74
  aiResponseDispatch(streamingStarted());
65
75
  try {
66
76
  // Get existing conversation ID from session
67
77
  const currentSessionItem = sessionRestore.previousSessions.data[sessionRestore.activeSessionId];
68
- const existingConversationId = (_a = currentSessionItem === null || currentSessionItem === void 0 ? void 0 : currentSessionItem.session) === null || _a === void 0 ? void 0 : _a.conversationId;
78
+ const existingConversationId = getValidUUID((_a = currentSessionItem === null || currentSessionItem === void 0 ? void 0 : currentSessionItem.session) === null || _a === void 0 ? void 0 : _a.conversationId);
69
79
  yield askRHDirectAIResponse(detailedQuestion, config, true, // response to be streamed or not
70
80
  existingConversationId, streamingCallbacks);
71
81
  }
@@ -81,10 +91,10 @@ export const useARHResponse = ({ activeSection, product, version, summary, issue
81
91
  issue,
82
92
  caseType,
83
93
  aiResponseDispatch,
94
+ persistConversationId,
95
+ config,
84
96
  sessionRestore.activeSessionId,
85
97
  sessionRestore.previousSessions.data,
86
- sessionRestoreDispatch,
87
- config,
88
98
  ]);
89
99
  return { fetchARHResponse };
90
100
  };
@@ -16,6 +16,11 @@ export interface IAIResponseState {
16
16
  hasChunkReceived?: boolean;
17
17
  }
18
18
  export declare const initialAIResponseState: IAIResponseState;
19
+ export declare enum ARHConversationErrorType {
20
+ AI_RESPONSE_ERROR = "error_in_arh_ai_response",
21
+ FUNCTIONAL_COOKIE_NOT_ACCEPTED = "functional_cookie_not_accepted",
22
+ ARH_LIMIT_EXCEEDED = "arh_limit_exceeded"
23
+ }
19
24
  export declare enum AIResponseConstants {
20
25
  clearAIResponse = "clearAIResponse",
21
26
  streamingStarted = "streamingStarted",
@@ -1 +1 @@
1
- {"version":3,"file":"AIResponseConstNTypes.d.ts","sourceRoot":"","sources":["../../../src/reducers/AIResponseConstNTypes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AIResponseConstNTypes.d.ts","sourceRoot":"","sources":["../../../src/reducers/AIResponseConstNTypes.ts"],"names":[],"mappings":"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"}
@@ -11,6 +11,12 @@ export const initialAIResponseState = {
11
11
  quotaLimit: undefined,
12
12
  hasChunkReceived: false,
13
13
  };
14
+ export var ARHConversationErrorType;
15
+ (function (ARHConversationErrorType) {
16
+ ARHConversationErrorType["AI_RESPONSE_ERROR"] = "error_in_arh_ai_response";
17
+ ARHConversationErrorType["FUNCTIONAL_COOKIE_NOT_ACCEPTED"] = "functional_cookie_not_accepted";
18
+ ARHConversationErrorType["ARH_LIMIT_EXCEEDED"] = "arh_limit_exceeded";
19
+ })(ARHConversationErrorType || (ARHConversationErrorType = {}));
14
20
  // Action Constants
15
21
  export var AIResponseConstants;
16
22
  (function (AIResponseConstants) {
@@ -63,7 +63,6 @@ export declare const loadPreviousSessions: (dispatch: SessionReducerDispatchType
63
63
  export declare const createSession: (dispatch: SessionReducerDispatchType, sessionDetails: ISessionDetails, session: ISession) => Promise<string>;
64
64
  export declare const updateSession: (dispatch: SessionReducerDispatchType, sessionId: string, sessionDetails: ISessionDetails, session?: ISession) => Promise<void>;
65
65
  export declare const updateActiveSessionId: (dispatch: SessionReducerDispatchType, activeSessionId: string) => void;
66
- export declare const isAISureSession: (sessionItem: ISessionItem) => boolean;
67
66
  export declare function getRelevantSessionFromSessions(dispatch: SessionReducerDispatchType, currentRelevantSessionId: string, previousSessions: IPrevSessions, caseDetails: Partial<ICasePayload>): string;
68
67
  export declare function markAllSessionsUnresolved(dispatch: SessionReducerDispatchType, sessionData: IPrevSessions, userAgent: string): Promise<void>;
69
68
  export declare function createOrUpdateSessionResources(dispatch: SessionReducerDispatchType, activeSessionId: string, currentSessionResourceTracking: ISessionResourcesTracking, source: ISessionResourceSource, resources: ISessionResource[] | undefined, payload?: string, workflowSource?: string | undefined): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"SessionRestoreReducer.d.ts","sourceRoot":"","sources":["../../../src/reducers/SessionRestoreReducer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SessionRestoreReducer.d.ts","sourceRoot":"","sources":["../../../src/reducers/SessionRestoreReducer.ts"],"names":[],"mappings":"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"}
@@ -131,8 +131,6 @@ export const getIndividualSessionById = (dispatch, sessionId, isCaseCreate, ABTe
131
131
  sessionId: sessionId,
132
132
  });
133
133
  let sessionItem = sessions[0];
134
- if (isAISureSession(sessionItem))
135
- return;
136
134
  if (!sessionItem.session.userAgent) {
137
135
  // session created by console, need to add user agent and A/B test variation
138
136
  const userAgent = getUserAgentForCaseMode(isCaseCreate) + ABTestVariation
@@ -171,8 +169,6 @@ export const loadPreviousSessions = (dispatch, caseDispatch) => __awaiter(void 0
171
169
  const prevSessions = {};
172
170
  let foundSessionWithCaseCreationError = {};
173
171
  for (const s of sessions) {
174
- if (isAISureSession(s))
175
- continue;
176
172
  prevSessions[s.session.id] = s;
177
173
  s.session.caseCreationError && (foundSessionWithCaseCreationError = s);
178
174
  }
@@ -254,18 +250,11 @@ export const updateSession = (dispatch, sessionId, sessionDetails, session) => _
254
250
  export const updateActiveSessionId = (dispatch, activeSessionId) => {
255
251
  dispatch({ type: SessionRestoreConstants.setActiveSessionId, payload: { activeSessionId } });
256
252
  };
257
- export const isAISureSession = (sessionItem) => {
258
- var _a, _b, _c, _d;
259
- const originatingSystem = String((_b = (_a = sessionItem === null || sessionItem === void 0 ? void 0 : sessionItem.session) === null || _a === void 0 ? void 0 : _a.originatingSystem) !== null && _b !== void 0 ? _b : '').toLowerCase();
260
- const userAgent = String((_d = (_c = sessionItem === null || sessionItem === void 0 ? void 0 : sessionItem.session) === null || _c === void 0 ? void 0 : _c.userAgent) !== null && _d !== void 0 ? _d : '').toLowerCase();
261
- return originatingSystem === 'aisure' || userAgent === 'aisure';
262
- };
263
253
  const isRestorableSession = (sessionItem) => !isEmpty(sessionItem) &&
264
254
  !sessionItem.session.isResolved &&
265
255
  sessionItem.session.isActive &&
266
256
  !sessionItem.session.hasVisitedResources &&
267
- isEmpty(sessionItem.sessionDetails.caseNumber) &&
268
- !isAISureSession(sessionItem);
257
+ isEmpty(sessionItem.sessionDetails.caseNumber);
269
258
  export function getRelevantSessionFromSessions(dispatch, currentRelevantSessionId, previousSessions, caseDetails) {
270
259
  var _a, _b, _c, _d, _e, _f;
271
260
  if (!isEmpty(previousSessions[currentRelevantSessionId]))
@@ -1323,8 +1323,3 @@ svg.pf-v6-u-ml-xs.icon-size {
1323
1323
  .send-notifications-add:disabled {
1324
1324
  color: var(--pf-v6-c-button--disabled--Color) !important;
1325
1325
  }
1326
-
1327
- .aisure-message-card {
1328
- border-radius: var(--global-border-radius-medium, 16px);
1329
- background: #f4f4f4;
1330
- }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rh-support/troubleshoot",
3
- "version": "2.6.247",
3
+ "version": "2.6.248",
4
4
  "publishConfig": {
5
5
  "access": "public",
6
6
  "registry": "https://registry.npmjs.org"
@@ -21,7 +21,7 @@
21
21
  "lib/**/*"
22
22
  ],
23
23
  "peerDependencies": {
24
- "@cee-eng/hydrajs": "4.18.111",
24
+ "@cee-eng/hydrajs": "4.18.107",
25
25
  "@cee-eng/ui-toolkit": "1.1.9",
26
26
  "@patternfly/patternfly": "6.2.1",
27
27
  "@patternfly/react-core": "6.2.1",
@@ -45,9 +45,9 @@
45
45
  "react-virtualized": "^9.22.5"
46
46
  },
47
47
  "dependencies": {
48
- "@cee-eng/hydrajs": "4.18.111",
48
+ "@cee-eng/hydrajs": "4.18.107",
49
49
  "@cee-eng/ui-toolkit": "1.1.9",
50
- "@ifd-ui/ask-redhat-core": "^0.0.50",
50
+ "@ifd-ui/ask-redhat-core": "^0.0.56",
51
51
  "@patternfly/patternfly": "6.2.1",
52
52
  "@patternfly/react-core": "6.2.1",
53
53
  "@patternfly/react-table": "6.2.1",
@@ -55,11 +55,11 @@
55
55
  "@progress/kendo-licensing": "1.3.5",
56
56
  "@progress/kendo-react-pdf": "^5.16.0",
57
57
  "@redux-devtools/extension": "^3.3.0",
58
- "@rh-support/components": "2.5.140",
59
- "@rh-support/react-context": "2.5.230",
58
+ "@rh-support/components": "2.5.155",
59
+ "@rh-support/react-context": "2.5.245",
60
60
  "@rh-support/types": "2.0.15",
61
- "@rh-support/user-permissions": "2.5.100",
62
- "@rh-support/utils": "2.5.80",
61
+ "@rh-support/user-permissions": "2.5.102",
62
+ "@rh-support/utils": "2.5.82",
63
63
  "@types/react-redux": "^7.1.33",
64
64
  "@types/redux": "^3.6.0",
65
65
  "date-fns": "3.6.0",
@@ -129,5 +129,5 @@
129
129
  "defaults and supports es6-module",
130
130
  "maintained node versions"
131
131
  ],
132
- "gitHead": "4ecc967442ccf4d407cbbb66ead6f55f29c747ae"
132
+ "gitHead": "ab3e18a4c8ca1ce08262c31335019982f1adff84"
133
133
  }
@@ -1,7 +0,0 @@
1
- import React from 'react';
2
- interface IProps {
3
- className?: string;
4
- }
5
- export declare function AISureMessageCard({ className }: IProps): React.JSX.Element;
6
- export {};
7
- //# sourceMappingURL=AISureMessageCard.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AISureMessageCard.d.ts","sourceRoot":"","sources":["../../../../src/components/CaseInformation/AISureMessageCard.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,UAAU,MAAM;IACZ,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,wBAAgB,iBAAiB,CAAC,EAAE,SAAS,EAAE,EAAE,MAAM,qBAiCtD"}
@@ -1,15 +0,0 @@
1
- import { Button, Card, CardBody, Title } from '@patternfly/react-core';
2
- import ExternalLinkAltIcon from '@patternfly/react-icons/dist/esm/icons/external-link-alt-icon';
3
- import React from 'react';
4
- import { Trans, useTranslation } from 'react-i18next';
5
- export function AISureMessageCard({ className }) {
6
- const { t } = useTranslation();
7
- const analyzeUrl = `${window.location.origin}${window.location.pathname}#/analyze`;
8
- return (React.createElement(Card, { className: `aisure-message-card pf-v6-u-mb-md${className ? ` ${className}` : ''}`, "data-testid": "aisure-message-card" },
9
- React.createElement(CardBody, null,
10
- React.createElement(Title, { headingLevel: "h3", size: "md", className: "pf-v6-u-mb-sm" },
11
- React.createElement(Trans, null, "Review OpenShift Cluster")),
12
- React.createElement("p", { className: "pf-v6-u-mb-md" }, t('Run a deep scan of your cluster to obtain AI generated Technical Supportability Review report, with criticality rating, impact, recommendations and actionable steps.')),
13
- React.createElement(Button, { variant: "primary", component: "a", href: analyzeUrl, target: "_blank", rel: "noopener noreferrer", icon: React.createElement(ExternalLinkAltIcon, null), iconPosition: "end", "data-tracking-id": "review-cluster-see-analyze-tab" },
14
- React.createElement(Trans, null, "See Analyze tab")))));
15
- }