@rh-support/troubleshoot 0.2.81 → 0.2.82
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/Recommendations/ClusterRecommendationItems.js +4 -4
- package/lib/esm/components/Recommendations/EARules/EARule.d.ts.map +1 -1
- package/lib/esm/components/Recommendations/EARules/EARule.js +5 -3
- package/lib/esm/components/Recommendations/InsightsResults.d.ts.map +1 -1
- package/lib/esm/components/Recommendations/InsightsResults.js +4 -0
- package/lib/esm/components/Recommendations/InsightsRuleInfo.d.ts.map +1 -1
- package/lib/esm/components/Recommendations/InsightsRuleInfo.js +5 -3
- package/lib/esm/reducers/RulesReducer.d.ts +10 -3
- package/lib/esm/reducers/RulesReducer.d.ts.map +1 -1
- package/lib/esm/reducers/RulesReducer.js +11 -8
- package/lib/esm/reducers/SessionRestoreReducer.d.ts +4 -4
- package/lib/esm/reducers/SessionRestoreReducer.d.ts.map +1 -1
- package/lib/esm/reducers/SessionRestoreReducer.js +33 -15
- package/package.json +2 -2
|
@@ -6,12 +6,12 @@ import { Trans } from 'react-i18next';
|
|
|
6
6
|
import { useCaseSelector } from '../../context/CaseContext';
|
|
7
7
|
import { SessionRestoreDispatchContext, SessionRestoreStateContext } from '../../context/SessionRestoreContext';
|
|
8
8
|
import { useParseRuleMarkdown } from '../../hooks/useParseRuleMarkdown';
|
|
9
|
-
import { createOrUpdateSessionResources,
|
|
9
|
+
import { createOrUpdateSessionResources, getRulesToSave } from '../../reducers/SessionRestoreReducer';
|
|
10
10
|
import { riskLabels } from '../shared/Constants';
|
|
11
11
|
export function ClusterRecommendationItems(props) {
|
|
12
12
|
const sessionRestoreDispatch = useContext(SessionRestoreDispatchContext);
|
|
13
13
|
const { sessionRestore: { activeSessionId, sessionResourceTracking }, } = useContext(SessionRestoreStateContext);
|
|
14
|
-
const { SessionResourceSource
|
|
14
|
+
const { SessionResourceSource } = pcm.preCase.session;
|
|
15
15
|
const { version, product } = useCaseSelector((state) => ({
|
|
16
16
|
version: state.caseDetails.version,
|
|
17
17
|
product: state.caseDetails.product,
|
|
@@ -19,8 +19,8 @@ export function ClusterRecommendationItems(props) {
|
|
|
19
19
|
const { parseDotMarkdownWithTracking } = useParseRuleMarkdown();
|
|
20
20
|
const onResourceClick = (e, rule) => {
|
|
21
21
|
if (e.target.tagName.toLowerCase() === 'a') {
|
|
22
|
-
const
|
|
23
|
-
createOrUpdateSessionResources(sessionRestoreDispatch, activeSessionId, sessionResourceTracking, SessionResourceSource.CLUSTER_RECOMMENDATION,
|
|
22
|
+
const visitedUrl = e.target.href.split('?')[0];
|
|
23
|
+
createOrUpdateSessionResources(sessionRestoreDispatch, activeSessionId, sessionResourceTracking, SessionResourceSource.CLUSTER_RECOMMENDATION, getRulesToSave(visitedUrl, rule, props.clusterRecommendations), JSON.stringify({ product, version }));
|
|
24
24
|
}
|
|
25
25
|
};
|
|
26
26
|
return (React.createElement("pfe-accordion", null, props.clusterRecommendations.map((rule) => (React.createElement(React.Fragment, null,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EARule.d.ts","sourceRoot":"","sources":["../../../../../src/components/Recommendations/EARules/EARule.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAqB,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"EARule.d.ts","sourceRoot":"","sources":["../../../../../src/components/Recommendations/EARules/EARule.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAqB,MAAM,OAAO,CAAC;AAM1C,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAE/D,UAAU,cAAc;IACpB,IAAI,EAAE,aAAa,CAAC;IACpB,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,iBAAiB,EAAE,UAAU,CAAC,KAAK,IAAI,CAAC;CAClG;AAGD,eAAO,MAAM,aAAa,+BAGxB,CAAC;AAEH,wBAAgB,gBAAgB,mBAM/B;AACD,wBAAgB,MAAM,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE;;;CAAA,eA0BxC;AAED,iBAAS,WAAW,gBAGnB;AAED,iBAAS,iBAAiB,gBAsBzB;AAED,iBAAS,aAAa,CAAC,EAAE,SAA6B,EAAE,SAAc,EAAE,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,eA4BnH;AAED,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,aAAa,EAAE,CAAC"}
|
|
@@ -3,10 +3,11 @@ import { pcm } from '@cee-eng/hydrajs';
|
|
|
3
3
|
import CaretRightIcon from '@patternfly/react-icons/dist/js/icons/caret-right-icon';
|
|
4
4
|
import React, { useContext } from 'react';
|
|
5
5
|
import { Trans } from 'react-i18next';
|
|
6
|
+
import { RulesStateContext } from '../../../context/RulesContext';
|
|
6
7
|
import { SessionRestoreDispatchContext, SessionRestoreStateContext } from '../../../context/SessionRestoreContext';
|
|
7
8
|
import { useParseRuleMarkdown } from '../../../hooks/useParseRuleMarkdown';
|
|
8
|
-
import { createOrUpdateSessionResources,
|
|
9
|
-
const {
|
|
9
|
+
import { createOrUpdateSessionResources, getRulesToSave } from '../../../reducers/SessionRestoreReducer';
|
|
10
|
+
const { SessionResourceSource } = pcm.preCase.session;
|
|
10
11
|
export const EARuleContext = React.createContext({
|
|
11
12
|
rule: {},
|
|
12
13
|
onCtaClick: null,
|
|
@@ -21,8 +22,9 @@ export function useEARuleContext() {
|
|
|
21
22
|
export function EARule({ children, rule }) {
|
|
22
23
|
const { sessionRestore: { activeSessionId, sessionResourceTracking }, } = useContext(SessionRestoreStateContext);
|
|
23
24
|
const sessionRestoreDispatch = useContext(SessionRestoreDispatchContext);
|
|
25
|
+
const { rulesState } = useContext(RulesStateContext);
|
|
24
26
|
const onCtaClick = (link) => (event) => {
|
|
25
|
-
createOrUpdateSessionResources(sessionRestoreDispatch, activeSessionId, sessionResourceTracking, SessionResourceSource.EDMOUND_ABOTT,
|
|
27
|
+
createOrUpdateSessionResources(sessionRestoreDispatch, activeSessionId, sessionResourceTracking, SessionResourceSource.EDMOUND_ABOTT, getRulesToSave(link, rule, rulesState.EARules.rules));
|
|
26
28
|
};
|
|
27
29
|
return (React.createElement(EARuleContext.Provider, { value: {
|
|
28
30
|
rule,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InsightsResults.d.ts","sourceRoot":"","sources":["../../../../src/components/Recommendations/InsightsResults.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAgC,MAAM,0CAA0C,CAAC;AAG7G,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAwB5D,UAAU,MAAO,SAAQ,gBAAgB;IACrC,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,OAAO,CAAC;CAC1B;AASD,MAAM,WAAW,wBAAyB,SAAQ,mBAAmB;IACjE,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,OAAO,CAAC;CAClB;AAED,iBAAS,eAAe,CAAC,KAAK,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"InsightsResults.d.ts","sourceRoot":"","sources":["../../../../src/components/Recommendations/InsightsResults.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAgC,MAAM,0CAA0C,CAAC;AAG7G,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAwB5D,UAAU,MAAO,SAAQ,gBAAgB;IACrC,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,OAAO,CAAC;CAC1B;AASD,MAAM,WAAW,wBAAyB,SAAQ,mBAAmB;IACjE,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,OAAO,CAAC;CAClB;AAED,iBAAS,eAAe,CAAC,KAAK,EAAE,MAAM,eAmPrC;kBAnPQ,eAAe;;;AAsPxB,eAAe,eAAe,CAAC"}
|
|
@@ -196,6 +196,10 @@ function InsightsResults(props) {
|
|
|
196
196
|
}, [selectedLocalFiles]);
|
|
197
197
|
useEffect(() => {
|
|
198
198
|
setInsighResultsKcsIds(recommendationDispatch, includeAnalysisResults ? allResults.map((result) => result.id) : []);
|
|
199
|
+
rulesDispatch({
|
|
200
|
+
type: RulesReducerConstants.setInsightRules,
|
|
201
|
+
payload: { rules: allResults },
|
|
202
|
+
});
|
|
199
203
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
200
204
|
}, [allResults.length, includeAnalysisResults]);
|
|
201
205
|
function insightsModalToggle() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InsightsRuleInfo.d.ts","sourceRoot":"","sources":["../../../../src/components/Recommendations/InsightsRuleInfo.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"InsightsRuleInfo.d.ts","sourceRoot":"","sources":["../../../../src/components/Recommendations/InsightsRuleInfo.tsx"],"names":[],"mappings":"AAeA,OAAO,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAI7D,UAAU,MAAM;IACZ,GAAG,EAAE,wBAAwB,CAAC;IAC9B,UAAU,EAAE,OAAO,CAAC;IACpB,aAAa,EAAE,MAAM,EAAE,CAAC;CAC3B;AAOD,wBAAgB,gBAAgB,CAAC,EAAE,GAAG,EAAE,UAAU,EAAE,aAAa,EAAE,EAAE,MAAM,eA8J1E"}
|
|
@@ -6,11 +6,12 @@ import InfoCircleIcon from '@patternfly/react-icons/dist/js/icons/info-circle-ic
|
|
|
6
6
|
import { getRuleReasonHtml } from '@rh-support/utils';
|
|
7
7
|
import React, { useContext, useEffect, useRef, useState } from 'react';
|
|
8
8
|
import { Trans } from 'react-i18next';
|
|
9
|
+
import { RulesStateContext } from '../../context/RulesContext';
|
|
9
10
|
import { SessionRestoreDispatchContext, SessionRestoreStateContext } from '../../context/SessionRestoreContext';
|
|
10
11
|
import { useParseRuleMarkdown } from '../../hooks/useParseRuleMarkdown';
|
|
11
|
-
import { createOrUpdateSessionResources,
|
|
12
|
+
import { createOrUpdateSessionResources, getInsightRulesToSave } from '../../reducers/SessionRestoreReducer';
|
|
12
13
|
import { AttachmentStateContext } from '../shared/fileUpload/reducer/AttachmentReducerContext';
|
|
13
|
-
const {
|
|
14
|
+
const { SessionResourceSource } = pcm.preCase.session;
|
|
14
15
|
export function InsightsRuleInfo({ doc, showNewTag, duplicateKeys }) {
|
|
15
16
|
var _a, _b, _c, _d, _e, _f, _g;
|
|
16
17
|
const [ruleData, setRuleData] = useState(null);
|
|
@@ -19,6 +20,7 @@ export function InsightsRuleInfo({ doc, showNewTag, duplicateKeys }) {
|
|
|
19
20
|
const [isIssueExpanded, setIsIssueExpanded] = useState(true);
|
|
20
21
|
const [isAdditionalExpanded, setIsAdditionalExpanded] = useState(false);
|
|
21
22
|
const { sessionRestore: { activeSessionId, sessionResourceTracking }, } = useContext(SessionRestoreStateContext);
|
|
23
|
+
const { rulesState: { insightRules }, } = useContext(RulesStateContext);
|
|
22
24
|
const sessionRestoreDispatch = useContext(SessionRestoreDispatchContext);
|
|
23
25
|
const { parseDotMarkdownWithTracking, getTrackingULRWithQueryParams } = useParseRuleMarkdown();
|
|
24
26
|
const { attachmentState: { caseFiles: { selectedLocalFiles }, }, } = useContext(AttachmentStateContext);
|
|
@@ -36,7 +38,7 @@ export function InsightsRuleInfo({ doc, showNewTag, duplicateKeys }) {
|
|
|
36
38
|
setRuleData(rules[ruleId]);
|
|
37
39
|
}, [setRuleData, doc.attachmentId, doc.id, selectedLocalFiles, duplicateKeys]);
|
|
38
40
|
const onCtaClick = (link) => (event) => {
|
|
39
|
-
createOrUpdateSessionResources(sessionRestoreDispatch, activeSessionId, sessionResourceTracking, SessionResourceSource.INSIGHTS,
|
|
41
|
+
createOrUpdateSessionResources(sessionRestoreDispatch, activeSessionId, sessionResourceTracking, SessionResourceSource.INSIGHTS, getInsightRulesToSave(link, doc, insightRules.rules));
|
|
40
42
|
};
|
|
41
43
|
const parseMoreInfo = (moreInfo, reportDetails) => {
|
|
42
44
|
return parseDotMarkdownWithTracking(moreInfo, reportDetails, SessionResourceSource.INSIGHTS, 'ts-result-insights', 'se-recommended-insights-rule');
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { IEdmundAbbottBodyV2, IRule } from '@cee-eng/hydrajs/@types/api/pcm/edmundAbbott';
|
|
2
|
+
import { ISolrRecommendation } from '@cee-eng/hydrajs/@types/models/solr/solr';
|
|
2
3
|
import { IAction } from '@rh-support/types/shared';
|
|
3
4
|
export declare enum RulesReducerConstants {
|
|
4
5
|
CustomerPortalRuleVisibilityChanged = "CustomerPortalRuleVisibilityChanged",
|
|
@@ -10,11 +11,13 @@ export declare enum RulesReducerConstants {
|
|
|
10
11
|
triggerEARulesModalVisibiltyChange = "triggerEARulesModalVisibiltyChange",
|
|
11
12
|
resetEARules = "resetEARules",
|
|
12
13
|
setIsEARuleWidgetVisible = "setIsEARuleWidgetVisible",
|
|
13
|
-
EARuleMarkResolved = "EARuleMarkResolved"
|
|
14
|
+
EARuleMarkResolved = "EARuleMarkResolved",
|
|
15
|
+
setInsightRules = "setInsightRules"
|
|
14
16
|
}
|
|
15
17
|
export interface IAllRules {
|
|
16
18
|
customerPortalRules: IRules;
|
|
17
19
|
EARules: IRules;
|
|
20
|
+
insightRules: IRules;
|
|
18
21
|
isLoadingEdmundAbbottRules: boolean;
|
|
19
22
|
isLoadingEdmundAbbottRulesError: boolean;
|
|
20
23
|
triggerRuleNotification: boolean;
|
|
@@ -25,9 +28,12 @@ export interface IExtendedRule extends IRule {
|
|
|
25
28
|
isNew?: boolean;
|
|
26
29
|
resolved?: boolean;
|
|
27
30
|
}
|
|
31
|
+
export interface IExtendedSolrRecommendation extends ISolrRecommendation {
|
|
32
|
+
cta?: string;
|
|
33
|
+
}
|
|
28
34
|
export interface IRuleayloadType extends IAllRules {
|
|
29
|
-
rule: IExtendedRule;
|
|
30
|
-
rules: IExtendedRule[];
|
|
35
|
+
rule: IExtendedRule | IExtendedSolrRecommendation;
|
|
36
|
+
rules: IExtendedRule[] | IExtendedSolrRecommendation[];
|
|
31
37
|
}
|
|
32
38
|
declare type IActionType = IAction<RulesReducerConstants, IRuleayloadType>;
|
|
33
39
|
export declare type RulesDispatchType = (value: IActionType) => void;
|
|
@@ -44,5 +50,6 @@ export declare const resetEARules: (dispatch: RulesDispatchType) => void;
|
|
|
44
50
|
export declare const fetchEdmundAbbottRules: (dispatch: RulesDispatchType, body: Partial<IEdmundAbbottBodyV2>, onEARuleLoad?: (eaResponse: IRule[]) => void) => Promise<void>;
|
|
45
51
|
export declare const setIsEARuleWidgetVisible: (dispatch: RulesDispatchType, isEARuleWidgetVisible: boolean) => void;
|
|
46
52
|
export declare const markEARuleResolved: (dispatch: RulesDispatchType, rule: IRule) => void;
|
|
53
|
+
export declare const setInsightRules: (dispatch: RulesDispatchType, recResponse: IExtendedSolrRecommendation[]) => void;
|
|
47
54
|
export {};
|
|
48
55
|
//# sourceMappingURL=RulesReducer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RulesReducer.d.ts","sourceRoot":"","sources":["../../../src/reducers/RulesReducer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,KAAK,EAAE,MAAM,8CAA8C,CAAC;AAC1F,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AAMnD,oBAAY,qBAAqB;IAC7B,mCAAmC,wCAAwC;IAC3E,uBAAuB,4BAA4B;IACnD,wBAAwB,6BAA6B;IACrD,yBAAyB,8BAA8B;IACvD,8BAA8B,mCAAmC;IACjE,uBAAuB,4BAA4B;IACnD,kCAAkC,uCAAuC;IACzE,YAAY,iBAAiB;IAC7B,wBAAwB,6BAA6B;IACrD,kBAAkB,uBAAuB;
|
|
1
|
+
{"version":3,"file":"RulesReducer.d.ts","sourceRoot":"","sources":["../../../src/reducers/RulesReducer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,KAAK,EAAE,MAAM,8CAA8C,CAAC;AAC1F,OAAO,EAAE,mBAAmB,EAAE,MAAM,0CAA0C,CAAC;AAC/E,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AAMnD,oBAAY,qBAAqB;IAC7B,mCAAmC,wCAAwC;IAC3E,uBAAuB,4BAA4B;IACnD,wBAAwB,6BAA6B;IACrD,yBAAyB,8BAA8B;IACvD,8BAA8B,mCAAmC;IACjE,uBAAuB,4BAA4B;IACnD,kCAAkC,uCAAuC;IACzE,YAAY,iBAAiB;IAC7B,wBAAwB,6BAA6B;IACrD,kBAAkB,uBAAuB;IACzC,eAAe,oBAAoB;CACtC;AAED,MAAM,WAAW,SAAS;IACtB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,0BAA0B,EAAE,OAAO,CAAC;IACpC,+BAA+B,EAAE,OAAO,CAAC;IAEzC,uBAAuB,EAAE,OAAO,CAAC;IACjC,kBAAkB,EAAE,OAAO,CAAC;IAC5B,qBAAqB,EAAE,OAAO,CAAC;CAClC;AAED,MAAM,WAAW,aAAc,SAAQ,KAAK;IACxC,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,WAAW,2BAA4B,SAAQ,mBAAmB;IACpE,GAAG,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,eAAgB,SAAQ,SAAS;IAC9C,IAAI,EAAE,aAAa,GAAG,2BAA2B,CAAC;IAClD,KAAK,EAAE,aAAa,EAAE,GAAG,2BAA2B,EAAE,CAAC;CAC1D;AACD,aAAK,WAAW,GAAG,OAAO,CAAC,qBAAqB,EAAE,eAAe,CAAC,CAAC;AACnE,oBAAY,iBAAiB,GAAG,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,CAAC;AAE7D,MAAM,WAAW,MAAM;IACnB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,KAAK,CAAC,EAAE,aAAa,EAAE,CAAC;CAC3B;AAED,eAAO,MAAM,iBAAiB,EAAE,SA8B/B,CAAC;AAEF,eAAO,MAAM,YAAY,UAAW,SAAS,0BAAwB,SA0EpE,CAAC;AAGF,eAAO,MAAM,sCAAsC,aAAc,iBAAiB,QAAQ,KAAK,SAE9F,CAAC;AACF,eAAO,MAAM,0BAA0B,aAAc,iBAAiB,QAAQ,KAAK,SAElF,CAAC;AACF,eAAO,MAAM,YAAY,aAAc,iBAAiB,SAEvD,CAAC;AACF,eAAO,MAAM,sBAAsB,aACrB,iBAAiB,QACrB,QAAQ,mBAAmB,CAAC,8BACN,KAAK,EAAE,KAAK,IAAI,kBAa/C,CAAC;AAEF,eAAO,MAAM,wBAAwB,aAAc,iBAAiB,yBAAyB,OAAO,SAKnG,CAAC;AACF,eAAO,MAAM,kBAAkB,aAAc,iBAAiB,QAAQ,KAAK,SAE1E,CAAC;AACF,eAAO,MAAM,eAAe,aAAc,iBAAiB,eAAe,2BAA2B,EAAE,SAEtG,CAAC"}
|
|
@@ -23,15 +23,8 @@ export var RulesReducerConstants;
|
|
|
23
23
|
RulesReducerConstants["resetEARules"] = "resetEARules";
|
|
24
24
|
RulesReducerConstants["setIsEARuleWidgetVisible"] = "setIsEARuleWidgetVisible";
|
|
25
25
|
RulesReducerConstants["EARuleMarkResolved"] = "EARuleMarkResolved";
|
|
26
|
+
RulesReducerConstants["setInsightRules"] = "setInsightRules";
|
|
26
27
|
})(RulesReducerConstants || (RulesReducerConstants = {}));
|
|
27
|
-
// export interface IRule {
|
|
28
|
-
// rule_type?: string;
|
|
29
|
-
// rule_sub_type?: string;
|
|
30
|
-
// title?: string;
|
|
31
|
-
// cta?: string;
|
|
32
|
-
// description?: string;
|
|
33
|
-
// visible?: boolean;
|
|
34
|
-
// }
|
|
35
28
|
export const initialRulesState = {
|
|
36
29
|
customerPortalRules: {
|
|
37
30
|
sidebarSections: [AppRouteSections.PRODUCT_SELECTOR],
|
|
@@ -44,6 +37,10 @@ export const initialRulesState = {
|
|
|
44
37
|
},
|
|
45
38
|
],
|
|
46
39
|
},
|
|
40
|
+
insightRules: {
|
|
41
|
+
sidebarSections: [],
|
|
42
|
+
rules: [],
|
|
43
|
+
},
|
|
47
44
|
EARules: {
|
|
48
45
|
sidebarSections: [
|
|
49
46
|
AppRouteSections.RECOMMENDATIONS,
|
|
@@ -109,6 +106,9 @@ export const rulesReducer = (state, action) => {
|
|
|
109
106
|
const newRules = map(EARules, (rule) => rule.cta === action.payload.rule.cta ? Object.assign(Object.assign({}, rule), { resolved: true }) : rule);
|
|
110
107
|
return Object.assign(Object.assign({}, state), { EARules: Object.assign(Object.assign({}, state.EARules), { rules: newRules }) });
|
|
111
108
|
}
|
|
109
|
+
case RulesReducerConstants.setInsightRules: {
|
|
110
|
+
return Object.assign(Object.assign({}, state), { insightRules: Object.assign(Object.assign({}, state.insightRules), { rules: action.payload.rules }) });
|
|
111
|
+
}
|
|
112
112
|
default: {
|
|
113
113
|
return state;
|
|
114
114
|
}
|
|
@@ -147,3 +147,6 @@ export const setIsEARuleWidgetVisible = (dispatch, isEARuleWidgetVisible) => {
|
|
|
147
147
|
export const markEARuleResolved = (dispatch, rule) => {
|
|
148
148
|
dispatch({ type: RulesReducerConstants.EARuleMarkResolved, payload: { rule } });
|
|
149
149
|
};
|
|
150
|
+
export const setInsightRules = (dispatch, recResponse) => {
|
|
151
|
+
dispatch({ type: RulesReducerConstants.setInsightRules, payload: { rules: recResponse } });
|
|
152
|
+
};
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { IRule } from '@cee-eng/hydrajs/@types/api/pcm/edmundAbbott';
|
|
2
1
|
import { ISession, ISessionDetails, ISessionItem, ISessionResource, SessionResourceSource as ISessionResourceSource, SessionResourceVisibility as ISessionResourceVisibility } from '@cee-eng/hydrajs/@types/api/pcm/troubleshootSession';
|
|
3
2
|
import { ICasePayload } from '@cee-eng/hydrajs/@types/api/public/case';
|
|
4
3
|
import { ISolrRecommendation } from '@cee-eng/hydrajs/@types/models/solr/solr';
|
|
@@ -63,11 +62,12 @@ export declare function createSessionResourcesLocal(dispatch: SessionReducerDisp
|
|
|
63
62
|
export declare function updateSessionResourcesLocal(dispatch: SessionReducerDispatchType, activeSessionId: string, currentSessionResourceTracking: ISessionResourcesTracking, source: ISessionResourceSource, resources: ISessionResource[]): Promise<void>;
|
|
64
63
|
export declare function getSessResFromTCCategories(tcCategories: ITopContentList[], visibilityStatus: ISessionResourceVisibility): ISessionResource[];
|
|
65
64
|
export declare const getSessResTCCategory: (tcCategory: ITopContentList, visibilityStatus: ISessionResourceVisibility) => ISessionResource[];
|
|
66
|
-
export declare const getSessResTC: (tc: ITopContent, visibilityStatus: ISessionResourceVisibility, resourceEntityId?:
|
|
65
|
+
export declare const getSessResTC: (tc: ITopContent, visibilityStatus: ISessionResourceVisibility, resourceEntityId?: number, rank?: number) => ISessionResource;
|
|
67
66
|
export declare function getSessResFromRecs(recs: ISolrRecommendation[], visibilityStatus: ISessionResourceVisibility): ISessionResource[];
|
|
68
67
|
export declare const getSessResFromRec: (rec: ISolrRecommendation, visibilityStatus: ISessionResourceVisibility, rank?: number) => ISessionResource;
|
|
69
|
-
export declare const
|
|
70
|
-
export declare const
|
|
68
|
+
export declare const getSessResFromRules: (url: string, visibilityStatus: ISessionResourceVisibility, resourceEntityId?: any, rank?: number) => ISessionResource;
|
|
69
|
+
export declare const getRulesToSave: (visiterUrl: any, visitedRec: any, allPresentedRec: any) => ISessionResource[];
|
|
70
|
+
export declare const getInsightRulesToSave: (visiterUrl: any, visitedRec: any, allPresentedRec: any) => ISessionResource[];
|
|
71
71
|
export declare const getSessResFromEA: (cta: string, visibilityStatus: ISessionResourceVisibility, resourceEntityId?: any) => ISessionResource;
|
|
72
72
|
export declare const getSessResFromClusterRecommendation: (cta: string, visibilityStatus: ISessionResourceVisibility, resourceEntityId?: any) => ISessionResource;
|
|
73
73
|
export declare const getRecToSave: (visitedRec: ISolrRecommendation, allPresentedRec: ISolrRecommendation[], allDocs?: ISolrRecommendation[]) => ISessionResource[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SessionRestoreReducer.d.ts","sourceRoot":"","sources":["../../../src/reducers/SessionRestoreReducer.ts"],"names":[],"mappings":"AACA,OAAO,
|
|
1
|
+
{"version":3,"file":"SessionRestoreReducer.d.ts","sourceRoot":"","sources":["../../../src/reducers/SessionRestoreReducer.ts"],"names":[],"mappings":"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"}
|
|
@@ -336,25 +336,20 @@ export function updateSessionResourcesLocal(dispatch, activeSessionId, currentSe
|
|
|
336
336
|
}
|
|
337
337
|
});
|
|
338
338
|
}
|
|
339
|
-
// Session Resource Helper Functions
|
|
340
|
-
// Top Content Category Helper Function
|
|
341
339
|
export function getSessResFromTCCategories(tcCategories, visibilityStatus) {
|
|
342
340
|
const toReturn = [];
|
|
343
341
|
forEach(tcCategories, (tcCategory) => toReturn.push(...getSessResTCCategory(tcCategory, visibilityStatus)));
|
|
344
342
|
return toReturn;
|
|
345
343
|
}
|
|
346
|
-
// Top Content Helper Function Call
|
|
347
344
|
export const getSessResTCCategory = (tcCategory, visibilityStatus) => {
|
|
348
345
|
const toReturn = [];
|
|
349
346
|
forEach(tcCategory.content, (tc) => toReturn.push(getSessResTC(tc, visibilityStatus)));
|
|
350
347
|
return toReturn;
|
|
351
348
|
};
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
return (Object.assign(Object.assign({ visibilityStatus }, ((tc === null || tc === void 0 ? void 0 : tc.topContentId) && { resourceEntityId: `${(_a = tc === null || tc === void 0 ? void 0 : tc.topContentId) !== null && _a !== void 0 ? _a : null}` })), { type: getResTypeFromUrl((_b = tc === null || tc === void 0 ? void 0 : tc.contentUrl) !== null && _b !== void 0 ? _b : ''), url: (_c = tc === null || tc === void 0 ? void 0 : tc.contentUrl) !== null && _c !== void 0 ? _c : '', rank: (_d = tc === null || tc === void 0 ? void 0 : tc.contentRank) !== null && _d !== void 0 ? _d : 0 }));
|
|
349
|
+
export const getSessResTC = (tc, visibilityStatus, resourceEntityId, rank) => {
|
|
350
|
+
var _a, _b, _c;
|
|
351
|
+
return (Object.assign(Object.assign({ visibilityStatus }, ((tc === null || tc === void 0 ? void 0 : tc.topContentId) && { resourceEntityId: `${(_a = tc === null || tc === void 0 ? void 0 : tc.topContentId) !== null && _a !== void 0 ? _a : null}` })), { type: getResTypeFromUrl((_b = tc === null || tc === void 0 ? void 0 : tc.contentUrl) !== null && _b !== void 0 ? _b : ''), url: (_c = tc === null || tc === void 0 ? void 0 : tc.contentUrl) !== null && _c !== void 0 ? _c : '', rank: rank || 0 }));
|
|
356
352
|
};
|
|
357
|
-
// Recommendations Helper Function Call
|
|
358
353
|
export function getSessResFromRecs(recs, visibilityStatus) {
|
|
359
354
|
const toReturn = [];
|
|
360
355
|
forEach(recs, (rec) => toReturn.push(getSessResFromRec(rec, visibilityStatus)));
|
|
@@ -362,13 +357,36 @@ export function getSessResFromRecs(recs, visibilityStatus) {
|
|
|
362
357
|
}
|
|
363
358
|
// Recommendations Helper Function
|
|
364
359
|
export const getSessResFromRec = (rec, visibilityStatus, rank) => (Object.assign(Object.assign({ visibilityStatus }, (rec.id && { resourceEntityId: rec.id })), { type: getResTypeFromUrl(rec.view_uri), url: rec.view_uri, rank }));
|
|
365
|
-
|
|
366
|
-
export const
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
360
|
+
export const getSessResFromRules = (url, visibilityStatus, resourceEntityId, rank) => (Object.assign(Object.assign({ visibilityStatus }, (resourceEntityId && { resourceEntityId })), { type: getResTypeFromUrl(url), url: url, rank: rank || 0 }));
|
|
361
|
+
export const getRulesToSave = (visiterUrl, visitedRec, allPresentedRec) => {
|
|
362
|
+
return map(allPresentedRec, (rec, i) => {
|
|
363
|
+
let visStatus, url;
|
|
364
|
+
if (rec.rule_id === visitedRec.rule_id) {
|
|
365
|
+
url = visiterUrl;
|
|
366
|
+
visStatus = SessionResourceVisibility.VISITED;
|
|
367
|
+
}
|
|
368
|
+
else {
|
|
369
|
+
visStatus = SessionResourceVisibility.PRESENTED;
|
|
370
|
+
url = null;
|
|
371
|
+
}
|
|
372
|
+
const rank = i + 1;
|
|
373
|
+
return getSessResFromRules(url, visStatus, rec.rule_id, rank);
|
|
374
|
+
});
|
|
375
|
+
};
|
|
376
|
+
export const getInsightRulesToSave = (visiterUrl, visitedRec, allPresentedRec) => {
|
|
377
|
+
return map(allPresentedRec, (rec, i) => {
|
|
378
|
+
let visStatus, url;
|
|
379
|
+
if (rec.id === visitedRec.id) {
|
|
380
|
+
url = visiterUrl;
|
|
381
|
+
visStatus = SessionResourceVisibility.VISITED;
|
|
382
|
+
}
|
|
383
|
+
else {
|
|
384
|
+
visStatus = SessionResourceVisibility.PRESENTED;
|
|
385
|
+
url = null;
|
|
386
|
+
}
|
|
387
|
+
const rank = i + 1;
|
|
388
|
+
return getSessResFromRules(url, visStatus, rec.id, rank);
|
|
389
|
+
});
|
|
372
390
|
};
|
|
373
391
|
// EARules Helper Function
|
|
374
392
|
export const getSessResFromEA = (cta, visibilityStatus, resourceEntityId) => (Object.assign(Object.assign({ visibilityStatus }, (resourceEntityId && { resourceEntityId })), { type: getResTypeFromUrl(`${window.location.origin}${cta}`), url: cta.startsWith('http') ? cta : `${window.location.origin}/${cta}` }));
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@rh-support/troubleshoot",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.82",
|
|
4
4
|
"publishConfig": {
|
|
5
5
|
"access": "public",
|
|
6
6
|
"registry": "https://registry.npmjs.org"
|
|
@@ -143,5 +143,5 @@
|
|
|
143
143
|
"not ie <= 11",
|
|
144
144
|
"not op_mini all"
|
|
145
145
|
],
|
|
146
|
-
"gitHead": "
|
|
146
|
+
"gitHead": "ded962055f61a00447aa7aff04d8ec7425429d0d"
|
|
147
147
|
}
|