@rh-support/troubleshoot 2.2.73 → 2.2.75
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.
- package/lib/esm/components/CaseEditView/CaseSolutions/CaseSolutions.d.ts.map +1 -1
- package/lib/esm/components/CaseEditView/CaseSolutions/CaseSolutions.js +10 -20
- package/lib/esm/components/Recommendations/AsideResults.d.ts.map +1 -1
- package/lib/esm/components/Recommendations/AsideResults.js +6 -14
- package/lib/esm/components/Recommendations/Recommendations.d.ts.map +1 -1
- package/lib/esm/components/Recommendations/Recommendations.js +3 -4
- package/lib/esm/reducers/RecommendationsReducer.d.ts +1 -1
- package/lib/esm/reducers/RecommendationsReducer.d.ts.map +1 -1
- package/lib/esm/reducers/RecommendationsReducer.js +2 -2
- package/lib/esm/utils/caseUtils.d.ts +1 -1
- package/lib/esm/utils/caseUtils.d.ts.map +1 -1
- package/lib/esm/utils/caseUtils.js +14 -12
- package/package.json +6 -6
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CaseSolutions.d.ts","sourceRoot":"","sources":["../../../../../src/components/CaseEditView/CaseSolutions/CaseSolutions.tsx"],"names":[],"mappings":"AAmBA,OAAO,
|
|
1
|
+
{"version":3,"file":"CaseSolutions.d.ts","sourceRoot":"","sources":["../../../../../src/components/CaseEditView/CaseSolutions/CaseSolutions.tsx"],"names":[],"mappings":"AAmBA,OAAO,KAAsD,MAAM,OAAO,CAAC;AAqE3E,UAAU,MAAM;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,sBAAsB,EAAE,OAAO,CAAC;CACnC;AAUD,eAAO,MAAM,aAAa,+EA4fxB,CAAC"}
|
|
@@ -27,17 +27,17 @@ import { getSolrParams } from '@rh-support/utils';
|
|
|
27
27
|
import find from 'lodash/find';
|
|
28
28
|
import isEqual from 'lodash/isEqual';
|
|
29
29
|
import some from 'lodash/some';
|
|
30
|
-
import React, { forwardRef, useContext, useEffect,
|
|
30
|
+
import React, { forwardRef, useContext, useEffect, useState } from 'react';
|
|
31
31
|
import { Trans, useTranslation } from 'react-i18next';
|
|
32
32
|
import { CaseStatusEnum } from '../../../constants/caseDetailsConstants';
|
|
33
33
|
import { useCaseDispatch, useCaseSelector } from '../../../context/CaseContext';
|
|
34
34
|
import { CaseOverviewDispatchContext } from '../../../context/CaseOverviewContext';
|
|
35
|
-
import {
|
|
35
|
+
import { useRecommendationDispatchContext, useRecommendationStateContext, } from '../../../context/RecommendationContext';
|
|
36
36
|
import { useCaseUpdateErrorMessage } from '../../../hooks/useCaseUpdateErrorMessage';
|
|
37
37
|
import { setStatusUpdating } from '../../../reducers/CaseOverviewReducer';
|
|
38
38
|
import { updateCaseDetails } from '../../../reducers/CaseReducer';
|
|
39
39
|
import { fetchRecommendations, fetchWatsonXRecommendations } from '../../../reducers/RecommendationsReducer';
|
|
40
|
-
import {
|
|
40
|
+
import { extractKTQuestion1FromDescription } from '../../../utils/caseUtils';
|
|
41
41
|
import { usePostComment } from '../../shared/usePostComment';
|
|
42
42
|
import { CaseSolutionsItem } from './CaseSolutionsItem';
|
|
43
43
|
import { HandpickedItem } from './HandpicketItem';
|
|
@@ -101,9 +101,7 @@ export const CaseSolutions = forwardRef((props, ref) => {
|
|
|
101
101
|
const caseOverviewDispatch = useContext(CaseOverviewDispatchContext);
|
|
102
102
|
const { recommendationState: { isLoadingRecommendations, allDocs }, } = useRecommendationStateContext();
|
|
103
103
|
const { globalMetadataState: { loggedInUsersAccount }, } = useGlobalStateContext();
|
|
104
|
-
const { recommendationState } = useContext(RecommendationStateContext);
|
|
105
104
|
const recommendationsDispatch = useRecommendationDispatchContext();
|
|
106
|
-
const watsonXRecommendationDispatch = useContext(RecommendationDispatchContext);
|
|
107
105
|
const { postComment } = usePostComment({ caseNumber: props.caseNumber });
|
|
108
106
|
const { caseNumber, isSecureSupportAccount } = props;
|
|
109
107
|
const [isPinLoading, setIsPinLoading] = useState({});
|
|
@@ -117,7 +115,6 @@ export const CaseSolutions = forwardRef((props, ref) => {
|
|
|
117
115
|
const { t } = useTranslation();
|
|
118
116
|
const hasPin = some(recommendations, (p) => p.isPinned);
|
|
119
117
|
const hasLink = some(recommendations, (p) => p.isLinked);
|
|
120
|
-
const abortControllerRef = useRef(undefined);
|
|
121
118
|
const getCommentBody = () => {
|
|
122
119
|
return `**Reason for closing case:** \nOther. Found a pinned article that perfectly resolved the issue. Closing this case now.`;
|
|
123
120
|
};
|
|
@@ -217,20 +214,15 @@ export const CaseSolutions = forwardRef((props, ref) => {
|
|
|
217
214
|
useEffect(() => {
|
|
218
215
|
function fetchRecs() {
|
|
219
216
|
if (product && version && summary && description) {
|
|
220
|
-
const payload = {
|
|
221
|
-
|
|
222
|
-
|
|
217
|
+
const payload = {
|
|
218
|
+
product,
|
|
219
|
+
version,
|
|
220
|
+
summary,
|
|
221
|
+
description: extractKTQuestion1FromDescription(description),
|
|
223
222
|
};
|
|
224
|
-
if (abortControllerRef.current !== undefined) {
|
|
225
|
-
// Cancel the previous request
|
|
226
|
-
abortControllerRef.current.abort();
|
|
227
|
-
}
|
|
228
|
-
// recreate a new AbortController for each call
|
|
229
|
-
let controller = new AbortController();
|
|
230
|
-
abortControllerRef.current = controller;
|
|
231
223
|
!loggedInUsersAccount.data.secureSupport
|
|
232
|
-
? fetchWatsonXRecommendations(
|
|
233
|
-
: fetchRecommendations(recommendationsDispatch, payload, 50, 5, 300, false, caseNumber, isSecureSupportAccount
|
|
224
|
+
? fetchWatsonXRecommendations(recommendationsDispatch, payload, 50, 5, 300, true)
|
|
225
|
+
: fetchRecommendations(recommendationsDispatch, payload, 50, 5, 300, false, caseNumber, isSecureSupportAccount);
|
|
234
226
|
}
|
|
235
227
|
}
|
|
236
228
|
fetchRecs();
|
|
@@ -242,9 +234,7 @@ export const CaseSolutions = forwardRef((props, ref) => {
|
|
|
242
234
|
recommendationsDispatch,
|
|
243
235
|
caseNumber,
|
|
244
236
|
isSecureSupportAccount,
|
|
245
|
-
recommendationState.insightsKcsIds,
|
|
246
237
|
loggedInUsersAccount.data.secureSupport,
|
|
247
|
-
watsonXRecommendationDispatch,
|
|
248
238
|
]);
|
|
249
239
|
// populate solutions when result is ready
|
|
250
240
|
useEffect(() => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AsideResults.d.ts","sourceRoot":"","sources":["../../../../src/components/Recommendations/AsideResults.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"AsideResults.d.ts","sourceRoot":"","sources":["../../../../src/components/Recommendations/AsideResults.tsx"],"names":[],"mappings":"AAgBA,OAAO,KAAwC,MAAM,OAAO,CAAC;AAE7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AASvD,OAAO,EAAE,eAAe,EAAsC,MAAM,iCAAiC,CAAC;AAUtG,UAAU,MAAM;IACZ,UAAU,EAAE,mBAAmB,CAAC,eAAe,CAAC,CAAC;CACpD;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,qBAsMzC"}
|
|
@@ -10,7 +10,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
10
10
|
import { pcm, search } from '@cee-eng/hydrajs';
|
|
11
11
|
import { useDebounce } from '@rh-support/components';
|
|
12
12
|
import { GlobalMetadataStateContext } from '@rh-support/react-context';
|
|
13
|
-
import { computeRecommendationAbstract, computeRecommendationTitle, convertObjToEncodedQueryParams,
|
|
13
|
+
import { computeRecommendationAbstract, computeRecommendationTitle, convertObjToEncodedQueryParams, getSolrParams, getTrimmedCharacters, PreviousCaseTypes, replaceHighlightingData, } from '@rh-support/utils';
|
|
14
14
|
import isEmpty from 'lodash/isEmpty';
|
|
15
15
|
import isEqual from 'lodash/isEqual';
|
|
16
16
|
import React, { useContext, useEffect, useRef } from 'react';
|
|
@@ -20,7 +20,6 @@ import { RecommendationDispatchContext, RecommendationStateContext } from '../..
|
|
|
20
20
|
import { RouteContext } from '../../context/RouteContext';
|
|
21
21
|
import { SessionRestoreDispatchContext, SessionRestoreStateContext } from '../../context/SessionRestoreContext';
|
|
22
22
|
import { WATSONX_DESCRIPTION_LIMIT, WATSONX_SUMMARY_LIMIT } from '../../reducers/CaseConstNTypes';
|
|
23
|
-
import { getDescriptionWOQues } from '../../reducers/CaseHelpers';
|
|
24
23
|
import { setCaseRecommendations } from '../../reducers/CaseReducer';
|
|
25
24
|
import { RecommendationsConstants } from '../../reducers/RecommendationsReducer';
|
|
26
25
|
import { showSidebarRecommendationsSections } from '../../reducers/RouteConstNTypes';
|
|
@@ -31,18 +30,14 @@ export function AsideResults(props) {
|
|
|
31
30
|
/*
|
|
32
31
|
* Sidebar recommendation logic
|
|
33
32
|
*/
|
|
34
|
-
const { globalMetadataState: { loggedInUsersAccount
|
|
35
|
-
const
|
|
36
|
-
const { isSelectedAccounntSecureSupport, product, version, caseResourceLinks, summary, issue, environment, periodicityOfIssue, timeFramesAndUrgency, caseType, } = useCaseSelector((state) => ({
|
|
33
|
+
const { globalMetadataState: { loggedInUsersAccount }, } = useContext(GlobalMetadataStateContext);
|
|
34
|
+
const { isSelectedAccounntSecureSupport, product, version, caseResourceLinks, summary, issue, caseType } = useCaseSelector((state) => ({
|
|
37
35
|
isSelectedAccounntSecureSupport: state.selectedAccountDetails.data.secureSupport,
|
|
38
36
|
product: state.caseDetails.product,
|
|
39
37
|
version: state.caseDetails.version,
|
|
40
38
|
caseResourceLinks: state.caseDetails.caseResourceLinks,
|
|
41
39
|
summary: state.caseDetails.summary,
|
|
42
40
|
issue: state.caseDetails.issue,
|
|
43
|
-
environment: state.caseDetails.environment,
|
|
44
|
-
periodicityOfIssue: state.caseDetails.periodicityOfIssue,
|
|
45
|
-
timeFramesAndUrgency: state.caseDetails.timeFramesAndUrgency,
|
|
46
41
|
caseType: state.caseDetails.caseType,
|
|
47
42
|
}), isEqual);
|
|
48
43
|
const caseDispatch = useCaseDispatch();
|
|
@@ -57,7 +52,7 @@ export function AsideResults(props) {
|
|
|
57
52
|
product: product,
|
|
58
53
|
version: version,
|
|
59
54
|
summary: summary,
|
|
60
|
-
description:
|
|
55
|
+
description: issue, // on recommendation API we only pass issue and skip other KTQs
|
|
61
56
|
});
|
|
62
57
|
// abort controller ref
|
|
63
58
|
const controllerRef = useRef(new AbortController());
|
|
@@ -74,7 +69,7 @@ export function AsideResults(props) {
|
|
|
74
69
|
product: product,
|
|
75
70
|
version: version,
|
|
76
71
|
summary: summary,
|
|
77
|
-
description:
|
|
72
|
+
description: issue, // on recommendation API we only pass issue and skip other KTQs
|
|
78
73
|
};
|
|
79
74
|
const queryFilters = {
|
|
80
75
|
id: { values: recommendationState.insightsKcsIds, exclude: true },
|
|
@@ -84,7 +79,7 @@ export function AsideResults(props) {
|
|
|
84
79
|
summary: getTrimmedCharacters(payload.summary, WATSONX_SUMMARY_LIMIT),
|
|
85
80
|
})), ((payload === null || payload === void 0 ? void 0 : payload.description) && {
|
|
86
81
|
description: getTrimmedCharacters(payload === null || payload === void 0 ? void 0 : payload.description, WATSONX_DESCRIPTION_LIMIT),
|
|
87
|
-
})), { rerank:
|
|
82
|
+
})), { rerank: true }), getSolrParams(PAGE_SIZE, 129, queryFilters))), controllerRef.current.signal)
|
|
88
83
|
: yield search.getRecommendationsForCase(payload, getSolrParams(PAGE_SIZE, 129, queryFilters), controllerRef.current.signal);
|
|
89
84
|
const sideDocs = replaceHighlightingData(response.response.docs, response.highlighting);
|
|
90
85
|
recommendationDispatch({
|
|
@@ -115,10 +110,7 @@ export function AsideResults(props) {
|
|
|
115
110
|
version,
|
|
116
111
|
summary,
|
|
117
112
|
issue,
|
|
118
|
-
environment,
|
|
119
113
|
activeSection,
|
|
120
|
-
timeFramesAndUrgency,
|
|
121
|
-
periodicityOfIssue,
|
|
122
114
|
recommendationState.insightsKcsIds,
|
|
123
115
|
], 2000);
|
|
124
116
|
const canShowSideRecommendations = () => showSidebarRecommendationsSections.includes(activeSection) &&
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Recommendations.d.ts","sourceRoot":"","sources":["../../../../src/components/Recommendations/Recommendations.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Recommendations.d.ts","sourceRoot":"","sources":["../../../../src/components/Recommendations/Recommendations.tsx"],"names":[],"mappings":"AAkBA,OAAO,KAAkD,MAAM,OAAO,CAAC;AAEvE,OAAO,EAAE,mBAAmB,EAAa,MAAM,kBAAkB,CAAC;AAelE,OAAO,EAAoB,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAUpF,UAAU,MAAM;IACZ,UAAU,EAAE,mBAAmB,CAAC,eAAe,CAAC,CAAC;CACpD;AAED,MAAM,CAAC,OAAO,UAAU,eAAe,CAAC,KAAK,EAAE,MAAM,qBA8OpD"}
|
|
@@ -2,7 +2,7 @@ import { pcm } from '@cee-eng/hydrajs';
|
|
|
2
2
|
import { Pagination, PaginationVariant } from '@patternfly/react-core';
|
|
3
3
|
import { LoadingDots, useDebounce, usePrevious } from '@rh-support/components';
|
|
4
4
|
import { useGlobalStateContext } from '@rh-support/react-context';
|
|
5
|
-
import { computeRecommendationAbstract, computeRecommendationTitle, formatDate,
|
|
5
|
+
import { computeRecommendationAbstract, computeRecommendationTitle, formatDate, scrollIntoView, } from '@rh-support/utils';
|
|
6
6
|
import differenceBy from 'lodash/differenceBy';
|
|
7
7
|
import isEmpty from 'lodash/isEmpty';
|
|
8
8
|
import isEqual from 'lodash/isEqual';
|
|
@@ -33,7 +33,7 @@ export default function Recommendations(props) {
|
|
|
33
33
|
const caseDispatch = useCaseDispatch();
|
|
34
34
|
// Use Case Number
|
|
35
35
|
const { caseNumber } = useParams();
|
|
36
|
-
const { globalMetadataState: { navBarRef, loggedInUsersAccount
|
|
36
|
+
const { globalMetadataState: { navBarRef, loggedInUsersAccount }, } = useGlobalStateContext();
|
|
37
37
|
const isSecureSupportAccount = loggedInUsersAccount.data.secureSupport;
|
|
38
38
|
const { routeState: { activeSection }, } = useContext(RouteContext);
|
|
39
39
|
const { sessionRestore: { activeSessionId, sessionResourceTracking }, } = useContext(SessionRestoreStateContext);
|
|
@@ -43,7 +43,6 @@ export default function Recommendations(props) {
|
|
|
43
43
|
const { recommendationState } = useContext(RecommendationStateContext);
|
|
44
44
|
const prevMainRecommendations = usePrevious((_a = recommendationState === null || recommendationState === void 0 ? void 0 : recommendationState.visibleDocs) !== null && _a !== void 0 ? _a : []);
|
|
45
45
|
const recommendationDispatch = useContext(RecommendationDispatchContext);
|
|
46
|
-
const isRerankEnabled = getConfigField(pcmConfig.data, 'isRerankEnabled', PCM_CONFIG_FIELD_TYPE.FEATURE_FLAG);
|
|
47
46
|
const DEFAULTPAGESIZE = 8;
|
|
48
47
|
const MAXROW = 24;
|
|
49
48
|
const recPageSize = pageSize !== null && pageSize !== void 0 ? pageSize : DEFAULTPAGESIZE;
|
|
@@ -81,7 +80,7 @@ export default function Recommendations(props) {
|
|
|
81
80
|
let controller = new AbortController();
|
|
82
81
|
abortControllerRef.current = controller;
|
|
83
82
|
!loggedInUsersAccount.data.secureSupport
|
|
84
|
-
? fetchWatsonXRecommendations(recommendationDispatch, payload, MAXROW, recPageSize, 0, true, queryFilters, controller.signal
|
|
83
|
+
? fetchWatsonXRecommendations(recommendationDispatch, payload, MAXROW, recPageSize, 0, true, queryFilters, controller.signal)
|
|
85
84
|
: fetchRecommendations(recommendationDispatch, payload, MAXROW, recPageSize, 0, true, caseNumber, isSecureSupportAccount, queryFilters, controller.signal);
|
|
86
85
|
}, [
|
|
87
86
|
activeSection,
|
|
@@ -32,7 +32,7 @@ export declare enum RecommendationsConstants {
|
|
|
32
32
|
}
|
|
33
33
|
export declare const recommandationsReducer: (state: IRecommendationsState, action: IActionType) => IRecommendationsState;
|
|
34
34
|
export declare const fetchRecommendations: (dispatch: RecommendationsReducerDispatchType, body: IRecommendationsPayload, max_rows: number, page_size: number, highlighted_fragment_size: number, seQueryFields: boolean, caseNumber: string, isSecureSupportAccount: boolean, additionalFilters?: IRecommendationAdditionalFilters, abortSignal?: AbortSignal) => Promise<void>;
|
|
35
|
-
export declare const fetchWatsonXRecommendations: (dispatch: RecommendationsReducerDispatchType, query: ISearchWatsonXQuery, max_rows: number, page_size: number, highlighted_fragment_size: number, seQueryFields?: boolean, additionalFilters?: IRecommendationAdditionalFilters, abortSignal?: AbortSignal
|
|
35
|
+
export declare const fetchWatsonXRecommendations: (dispatch: RecommendationsReducerDispatchType, query: ISearchWatsonXQuery, max_rows: number, page_size: number, highlighted_fragment_size: number, seQueryFields?: boolean, additionalFilters?: IRecommendationAdditionalFilters, abortSignal?: AbortSignal) => Promise<void>;
|
|
36
36
|
export declare const setVisibleDocs: (dispatch: RecommendationsReducerDispatchType, visDocs: ISolrRecommendation[]) => void;
|
|
37
37
|
export declare const setCurrentPage: (dispatch: RecommendationsReducerDispatchType, pageNum: number) => void;
|
|
38
38
|
export declare const setInsighResultsKcsIds: (dispatch: RecommendationsReducerDispatchType, insightsKcsIds: string[]) => void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RecommendationsReducer.d.ts","sourceRoot":"","sources":["../../../src/reducers/RecommendationsReducer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAAoB,mBAAmB,EAAE,MAAM,oCAAoC,CAAC;AACpH,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAiB,MAAM,0CAA0C,CAAC;AAC5G,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AACnD,OAAO,EAIH,gCAAgC,EAEnC,MAAM,mBAAmB,CAAC;AAG3B,KAAK,WAAW,GAAG,OAAO,CAAC,wBAAwB,EAAE,qBAAqB,CAAC,CAAC;AAC5E,MAAM,MAAM,kCAAkC,GAAG,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,CAAC;AAE9E,MAAM,WAAW,qBAAqB;IAClC,wBAAwB,EAAE,OAAO,CAAC;IAClC,6BAA6B,EAAE,OAAO,CAAC;IACvC,YAAY,EAAE,YAAY,CAAC;IAC3B,OAAO,EAAE,mBAAmB,EAAE,CAAC;IAC/B,WAAW,EAAE,mBAAmB,EAAE,CAAC;IACnC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,kBAAkB,CAAC,EAAE,mBAAmB,EAAE,CAAC;IAC3C,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,uBAAuB,EAAE,uBAAuB,CAAC;CACpD;AAED,eAAO,MAAM,2BAA2B,EAAE,qBAYzC,CAAC;AAEF,oBAAY,wBAAwB;IAChC,sBAAsB,2BAA2B;IACjD,uBAAuB,4BAA4B;IACnD,4BAA4B,iCAAiC;IAC7D,cAAc,mBAAmB;IACjC,cAAc,mBAAmB;IACjC,4BAA4B,iCAAiC;IAC7D,4BAA4B,iCAAiC;IAC7D,sBAAsB,2BAA2B;IACjD,2BAA2B,gCAAgC;IAC3D,oBAAoB,yBAAyB;CAChD;AAGD,eAAO,MAAM,sBAAsB,UAAW,qBAAqB,0BAAwB,qBAmD1F,CAAC;AAGF,eAAO,MAAM,oBAAoB,aACnB,kCAAkC,QACtC,uBAAuB,YACnB,MAAM,aACL,MAAM,6BACU,MAAM,sCAErB,MAAM,0BACM,OAAO,sBACX,gCAAgC,gBACtC,WAAW,kBAsC5B,CAAC;AAEF,eAAO,MAAM,2BAA2B,aAC1B,kCAAkC,SACrC,mBAAmB,YAChB,MAAM,aACL,MAAM,6BACU,MAAM,+CAEb,gCAAgC,gBACtC,WAAW,
|
|
1
|
+
{"version":3,"file":"RecommendationsReducer.d.ts","sourceRoot":"","sources":["../../../src/reducers/RecommendationsReducer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAAoB,mBAAmB,EAAE,MAAM,oCAAoC,CAAC;AACpH,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAiB,MAAM,0CAA0C,CAAC;AAC5G,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AACnD,OAAO,EAIH,gCAAgC,EAEnC,MAAM,mBAAmB,CAAC;AAG3B,KAAK,WAAW,GAAG,OAAO,CAAC,wBAAwB,EAAE,qBAAqB,CAAC,CAAC;AAC5E,MAAM,MAAM,kCAAkC,GAAG,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,CAAC;AAE9E,MAAM,WAAW,qBAAqB;IAClC,wBAAwB,EAAE,OAAO,CAAC;IAClC,6BAA6B,EAAE,OAAO,CAAC;IACvC,YAAY,EAAE,YAAY,CAAC;IAC3B,OAAO,EAAE,mBAAmB,EAAE,CAAC;IAC/B,WAAW,EAAE,mBAAmB,EAAE,CAAC;IACnC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,kBAAkB,CAAC,EAAE,mBAAmB,EAAE,CAAC;IAC3C,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,uBAAuB,EAAE,uBAAuB,CAAC;CACpD;AAED,eAAO,MAAM,2BAA2B,EAAE,qBAYzC,CAAC;AAEF,oBAAY,wBAAwB;IAChC,sBAAsB,2BAA2B;IACjD,uBAAuB,4BAA4B;IACnD,4BAA4B,iCAAiC;IAC7D,cAAc,mBAAmB;IACjC,cAAc,mBAAmB;IACjC,4BAA4B,iCAAiC;IAC7D,4BAA4B,iCAAiC;IAC7D,sBAAsB,2BAA2B;IACjD,2BAA2B,gCAAgC;IAC3D,oBAAoB,yBAAyB;CAChD;AAGD,eAAO,MAAM,sBAAsB,UAAW,qBAAqB,0BAAwB,qBAmD1F,CAAC;AAGF,eAAO,MAAM,oBAAoB,aACnB,kCAAkC,QACtC,uBAAuB,YACnB,MAAM,aACL,MAAM,6BACU,MAAM,sCAErB,MAAM,0BACM,OAAO,sBACX,gCAAgC,gBACtC,WAAW,kBAsC5B,CAAC;AAEF,eAAO,MAAM,2BAA2B,aAC1B,kCAAkC,SACrC,mBAAmB,YAChB,MAAM,aACL,MAAM,6BACU,MAAM,+CAEb,gCAAgC,gBACtC,WAAW,kBAyC5B,CAAC;AAEF,eAAO,MAAM,cAAc,aAAc,kCAAkC,WAAW,mBAAmB,EAAE,SAE1G,CAAC;AAEF,eAAO,MAAM,cAAc,aAAc,kCAAkC,WAAW,MAAM,SAE3F,CAAC;AAEF,eAAO,MAAM,sBAAsB,aAAc,kCAAkC,kBAAkB,MAAM,EAAE,SAE5G,CAAC;AAEF,eAAO,MAAM,oBAAoB,aAAc,kCAAkC,SAEhF,CAAC"}
|
|
@@ -103,7 +103,7 @@ export const fetchRecommendations = (dispatch, body, max_rows, page_size, highli
|
|
|
103
103
|
dispatch({ type: RecommendationsConstants.receivedRecommendationsError });
|
|
104
104
|
}
|
|
105
105
|
});
|
|
106
|
-
export const fetchWatsonXRecommendations = (dispatch, query, max_rows, page_size, highlighted_fragment_size, seQueryFields = false, additionalFilters, abortSignal
|
|
106
|
+
export const fetchWatsonXRecommendations = (dispatch, query, max_rows, page_size, highlighted_fragment_size, seQueryFields = false, additionalFilters, abortSignal) => __awaiter(void 0, void 0, void 0, function* () {
|
|
107
107
|
dispatch({
|
|
108
108
|
type: RecommendationsConstants.requestRecommendations,
|
|
109
109
|
payload: { prevRecommendationsBody: Object.assign({}, query) },
|
|
@@ -113,7 +113,7 @@ export const fetchWatsonXRecommendations = (dispatch, query, max_rows, page_size
|
|
|
113
113
|
summary: getTrimmedCharacters(query.summary, WATSONX_SUMMARY_LIMIT),
|
|
114
114
|
})), ((query === null || query === void 0 ? void 0 : query.description) && {
|
|
115
115
|
description: getTrimmedCharacters(query.description, WATSONX_DESCRIPTION_LIMIT),
|
|
116
|
-
})), { rerank:
|
|
116
|
+
})), { rerank: true });
|
|
117
117
|
const paramsObj = Object.assign(Object.assign({}, watsonXQuery), getSolrParams(max_rows, highlighted_fragment_size, additionalFilters, seQueryFields));
|
|
118
118
|
const response = yield search.getWatsonXRecommendationsForCase2(
|
|
119
119
|
//@ts-ignore
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const
|
|
1
|
+
export declare const extractKTQuestion1FromDescription: (description: any) => any;
|
|
2
2
|
//# sourceMappingURL=caseUtils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"caseUtils.d.ts","sourceRoot":"","sources":["../../../src/utils/caseUtils.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"caseUtils.d.ts","sourceRoot":"","sources":["../../../src/utils/caseUtils.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,iCAAiC,2BAa7C,CAAC"}
|
|
@@ -1,14 +1,16 @@
|
|
|
1
1
|
import { KtQuestionConstant } from '../reducers/CaseConstNTypes';
|
|
2
|
-
//
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
.
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
.
|
|
12
|
-
|
|
13
|
-
|
|
2
|
+
// extract issue form description and remove other KT questions
|
|
3
|
+
export const extractKTQuestion1FromDescription = (description) => {
|
|
4
|
+
if (description.startsWith(KtQuestionConstant.issue)) {
|
|
5
|
+
// escape the KtQuestionConstant enum and convert it to a regex
|
|
6
|
+
const re = /[-\/\\^$*+?.()|[\]{}]/g;
|
|
7
|
+
const kt1 = KtQuestionConstant.issue.replace(re, '\\$&');
|
|
8
|
+
const kt2 = KtQuestionConstant.timeFramesAndUrgency.replace(re, '\\$&');
|
|
9
|
+
const regex = new RegExp(`${kt1}\n(.*?)\n${kt2}`, 'sm');
|
|
10
|
+
const match = description.match(regex);
|
|
11
|
+
return match ? match[1].trim() : null;
|
|
12
|
+
}
|
|
13
|
+
else {
|
|
14
|
+
return description;
|
|
15
|
+
}
|
|
14
16
|
};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@rh-support/troubleshoot",
|
|
3
|
-
"version": "2.2.
|
|
3
|
+
"version": "2.2.75",
|
|
4
4
|
"publishConfig": {
|
|
5
5
|
"access": "public",
|
|
6
6
|
"registry": "https://registry.npmjs.org"
|
|
@@ -61,11 +61,11 @@
|
|
|
61
61
|
"@progress/kendo-licensing": "1.3.5",
|
|
62
62
|
"@progress/kendo-react-pdf": "^5.16.0",
|
|
63
63
|
"@redux-devtools/extension": "^3.3.0",
|
|
64
|
-
"@rh-support/components": "2.1.
|
|
65
|
-
"@rh-support/react-context": "2.1.
|
|
64
|
+
"@rh-support/components": "2.1.42",
|
|
65
|
+
"@rh-support/react-context": "2.1.45",
|
|
66
66
|
"@rh-support/types": "2.0.3",
|
|
67
|
-
"@rh-support/user-permissions": "2.1.
|
|
68
|
-
"@rh-support/utils": "2.1.
|
|
67
|
+
"@rh-support/user-permissions": "2.1.30",
|
|
68
|
+
"@rh-support/utils": "2.1.22",
|
|
69
69
|
"@types/react-redux": "^7.1.33",
|
|
70
70
|
"@types/redux": "^3.6.0",
|
|
71
71
|
"dompurify": "^2.2.6",
|
|
@@ -132,5 +132,5 @@
|
|
|
132
132
|
"defaults and supports es6-module",
|
|
133
133
|
"maintained node versions"
|
|
134
134
|
],
|
|
135
|
-
"gitHead": "
|
|
135
|
+
"gitHead": "52dfee356aaccf62387bc8c9119bee456521ddd8"
|
|
136
136
|
}
|