@rh-support/cases 1.0.5 → 1.0.7
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/case-list/CaseList.d.ts.map +1 -1
- package/lib/esm/components/case-list/CaseList.js +6 -3
- package/lib/esm/components/case-list/case-search/BookmarkedSearchesSelector.d.ts.map +1 -1
- package/lib/esm/components/case-list/case-search/BookmarkedSearchesSelector.js +16 -4
- package/lib/esm/components/case-list/case-search/CaseSearch.d.ts.map +1 -1
- package/lib/esm/components/case-list/case-search/CaseSearch.js +12 -14
- package/lib/esm/components/case-list/case-search/SaveCaseSearchModal.d.ts.map +1 -1
- package/lib/esm/components/case-list/case-search/SaveCaseSearchModal.js +4 -1
- package/lib/esm/enums/caseSearch.d.ts +2 -1
- package/lib/esm/enums/caseSearch.d.ts.map +1 -1
- package/lib/esm/enums/caseSearch.js +2 -2
- package/lib/esm/enums/filters.d.ts +1 -2
- package/lib/esm/enums/filters.d.ts.map +1 -1
- package/lib/esm/enums/filters.js +1 -2
- package/lib/esm/utils/caseListUtils.d.ts.map +1 -1
- package/lib/esm/utils/caseListUtils.js +14 -9
- package/lib/esm/utils/caseSearchUtils.d.ts +1 -1
- package/lib/esm/utils/caseSearchUtils.d.ts.map +1 -1
- package/lib/esm/utils/caseSearchUtils.js +58 -6
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CaseList.d.ts","sourceRoot":"","sources":["../../../../src/components/case-list/CaseList.tsx"],"names":[],"mappings":"AAAA,OAAO,wBAAwB,CAAC;AAChC,OAAO,0BAA0B,CAAC;AA4BlC,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAKH,0BAA0B,EAI7B,MAAM,mBAAmB,CAAC;AAO3B,OAAO,EAAE,mBAAmB,EAAe,MAAM,cAAc,CAAC;AAEhE,OAAO,EAAE,oBAAoB,EAAE,MAAM,IAAI,CAAC;AAK1C,OAAO,EAAgB,WAAW,EAA2B,MAAM,uBAAuB,CAAC;AAmC3F,UAAU,MAAM;IACZ,UAAU,EAAE,mBAAmB,CAAC,oBAAoB,CAAC,CAAC;CACzD;AAED,MAAM,WAAW,uBAAwB,SAAQ,cAAc;IAC3D,YAAY,EAAE,cAAc,EAAE,CAAC;CAClC;AAED,oBAAY,YAAY,GAAG,0BAA0B,CAAC,WAAW,EAAE,uBAAuB,CAAC,CAAC;AAM5F,MAAM,WAAW,gBAAgB;IAC7B,CAAC,GAAG,EAAE,MAAM,GAAG,aAAa,CAAC;CAChC;AAED,MAAM,WAAW,aAAa;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe,EAAE,MAAM,CAAC;IACxB,cAAc,EAAE,MAAM,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;CAC1B;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"CaseList.d.ts","sourceRoot":"","sources":["../../../../src/components/case-list/CaseList.tsx"],"names":[],"mappings":"AAAA,OAAO,wBAAwB,CAAC;AAChC,OAAO,0BAA0B,CAAC;AA4BlC,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAKH,0BAA0B,EAI7B,MAAM,mBAAmB,CAAC;AAO3B,OAAO,EAAE,mBAAmB,EAAe,MAAM,cAAc,CAAC;AAEhE,OAAO,EAAE,oBAAoB,EAAE,MAAM,IAAI,CAAC;AAK1C,OAAO,EAAgB,WAAW,EAA2B,MAAM,uBAAuB,CAAC;AAmC3F,UAAU,MAAM;IACZ,UAAU,EAAE,mBAAmB,CAAC,oBAAoB,CAAC,CAAC;CACzD;AAED,MAAM,WAAW,uBAAwB,SAAQ,cAAc;IAC3D,YAAY,EAAE,cAAc,EAAE,CAAC;CAClC;AAED,oBAAY,YAAY,GAAG,0BAA0B,CAAC,WAAW,EAAE,uBAAuB,CAAC,CAAC;AAM5F,MAAM,WAAW,gBAAgB;IAC7B,CAAC,GAAG,EAAE,MAAM,GAAG,aAAa,CAAC;CAChC;AAED,MAAM,WAAW,aAAa;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe,EAAE,MAAM,CAAC;IACxB,cAAc,EAAE,MAAM,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;CAC1B;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,MAAM,eAsfrC"}
|
|
@@ -114,11 +114,14 @@ export function CaseList(props) {
|
|
|
114
114
|
function saveFilterQueryInUserPreferences() {
|
|
115
115
|
if (isNoFilterApplied(filterState))
|
|
116
116
|
return;
|
|
117
|
+
const type = filterState.filterQueryInfo.type;
|
|
117
118
|
const recentSerach = {
|
|
118
|
-
filterState: filterState.filterInfo,
|
|
119
|
+
filterState: type === CaseSearchQueryType.BASIC ? filterState.filterInfo : {},
|
|
119
120
|
sortState: filterState.sortInfo,
|
|
120
|
-
queryString:
|
|
121
|
-
|
|
121
|
+
queryString: type === CaseSearchQueryType.BASIC
|
|
122
|
+
? filterState.filterQueryInfo.queryString
|
|
123
|
+
: filterState.filterQueryInfo.parsedQuery,
|
|
124
|
+
type,
|
|
122
125
|
};
|
|
123
126
|
try {
|
|
124
127
|
updateUserPreferences(dispatchToGlobalMetadataReducer, loggedInUserRights.data.getSSOUsername(), [{ key: UserPreferencesKeys.mostRecentSearch, value: JSON.stringify(recentSerach) }], 'add');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BookmarkedSearchesSelector.d.ts","sourceRoot":"","sources":["../../../../../src/components/case-list/case-search/BookmarkedSearchesSelector.tsx"],"names":[],"mappings":"AAwBA,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"BookmarkedSearchesSelector.d.ts","sourceRoot":"","sources":["../../../../../src/components/case-list/case-search/BookmarkedSearchesSelector.tsx"],"names":[],"mappings":"AAwBA,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAahE,UAAU,MAAM;IACZ,uBAAuB,EAAE,MAAM,CAAC;IAChC,iBAAiB,EAAE,mBAAmB,CAAC;IACvC,qBAAqB,EAAE,OAAO,CAAC;IAC/B,sBAAsB,EAAE,MAAM,CAAC;CAClC;AAED,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,MAAM,eAoSvD"}
|
|
@@ -20,13 +20,15 @@ import isEqual from 'lodash/isEqual';
|
|
|
20
20
|
import React, { useContext, useEffect, useRef, useState } from 'react';
|
|
21
21
|
import { Trans, useTranslation } from 'react-i18next';
|
|
22
22
|
import { CaseSearchQueryType } from '../../../enums/caseSearch';
|
|
23
|
+
import { createFilterStateFromAdvancedQuery } from '../../../utils/caseSearchUtils';
|
|
23
24
|
import { CaseListFilterDispatchContext, CaseListFilterStateContext, initialCaseFilterState, } from '../CaseListFilterContext';
|
|
24
25
|
import { isNoFilterApplied, isOnlyDefaultFilterApplied } from '../CaseListFilterHelpers';
|
|
25
|
-
import { clearFilters,
|
|
26
|
+
import { clearFilters, updateFilterState, updateSort } from '../CaseListFilterReducer';
|
|
26
27
|
import { SaveCaseSearchModal } from './SaveCaseSearchModal';
|
|
28
|
+
import useAdvanceSearchParser from './useAdvanceSearchParser';
|
|
27
29
|
export function BookmarkedSearchesSelector(props) {
|
|
28
30
|
const { t } = useTranslation();
|
|
29
|
-
const { globalMetadataState: { hydraUserPreferences }, } = useContext(GlobalMetadataStateContext);
|
|
31
|
+
const { globalMetadataState, globalMetadataState: { hydraUserPreferences }, } = useContext(GlobalMetadataStateContext);
|
|
30
32
|
const dispatch = useContext(CaseListFilterDispatchContext);
|
|
31
33
|
const [bookmarkedSearches, setBookmarkedSearches] = useState({});
|
|
32
34
|
const [mostRecentSearch, setMostRecentSearch] = useState({});
|
|
@@ -37,6 +39,7 @@ export function BookmarkedSearchesSelector(props) {
|
|
|
37
39
|
const [isMenuOpen, toggleMenu] = useState(false);
|
|
38
40
|
const isUpdatingFilters = useRef(false);
|
|
39
41
|
const [isAddingBookmarkSearch, setIsAddingBookmarkSearch] = useState(false);
|
|
42
|
+
const { parse } = useAdvanceSearchParser({ onInit: () => { } });
|
|
40
43
|
const [selectedSearchNameToEdit, setSelectedSearchNameToEdit] = useState('');
|
|
41
44
|
const [userPreferredSearch, setUserPreferredSearch] = useState('');
|
|
42
45
|
useEffect(() => {
|
|
@@ -119,9 +122,18 @@ export function BookmarkedSearchesSelector(props) {
|
|
|
119
122
|
clearFilters(dispatch, true);
|
|
120
123
|
setSelectedSearch(selectedItem);
|
|
121
124
|
const { filterState: filterStateSaved, queryString, type, sortState } = searchQuery;
|
|
125
|
+
if (type === CaseSearchQueryType.ADVANCED) {
|
|
126
|
+
const newFilterState = createFilterStateFromAdvancedQuery(parse(queryString).replace(/ and /g, ' AND ').replace(/ or /g, ' OR '), globalMetadataState, initialCaseFilterState, queryString, type);
|
|
127
|
+
updateFilterState(dispatch, newFilterState);
|
|
128
|
+
}
|
|
129
|
+
else {
|
|
130
|
+
updateFilterState(dispatch, Object.assign(Object.assign({}, initialCaseFilterState), { filterQueryInfo: {
|
|
131
|
+
queryString: queryString || '',
|
|
132
|
+
type: type || CaseSearchQueryType.BASIC,
|
|
133
|
+
parsedQuery: '',
|
|
134
|
+
}, filterInfo: Object.assign(Object.assign({}, initialCaseFilterState.filterInfo), filterStateSaved) }));
|
|
135
|
+
}
|
|
122
136
|
// update filters with new value
|
|
123
|
-
updateFilterQuery(dispatch, { queryString: queryString || '', type: type || CaseSearchQueryType.BASIC });
|
|
124
|
-
updateFilterState(dispatch, { filterInfo: Object.assign(Object.assign({}, initialCaseFilterState.filterInfo), filterStateSaved) });
|
|
125
137
|
sortState && updateSort(dispatch, sortState);
|
|
126
138
|
doToggle && toggleMenu(!isMenuOpen);
|
|
127
139
|
isUpdatingFilters.current = false;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CaseSearch.d.ts","sourceRoot":"","sources":["../../../../../src/components/case-list/case-search/CaseSearch.tsx"],"names":[],"mappings":"AAsBA,UAAU,MAAM;IACZ,sBAAsB,EAAE,MAAM,CAAC;CAClC;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"CaseSearch.d.ts","sourceRoot":"","sources":["../../../../../src/components/case-list/case-search/CaseSearch.tsx"],"names":[],"mappings":"AAsBA,UAAU,MAAM;IACZ,sBAAsB,EAAE,MAAM,CAAC;CAClC;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,eAoLvC"}
|
|
@@ -33,24 +33,22 @@ export function CaseSearch(props) {
|
|
|
33
33
|
}
|
|
34
34
|
}, [filterQueryInfo, getType]);
|
|
35
35
|
const onSearchValChange = (value) => {
|
|
36
|
-
|
|
37
|
-
setSearchVal('');
|
|
38
|
-
// clear search but keep type and sort info
|
|
39
|
-
updateFilterState(dispatch, Object.assign(Object.assign({}, filterState), { filterInfo: initialFilterInfo, filterQueryInfo: {
|
|
40
|
-
queryString: '',
|
|
41
|
-
parsedQuery: '',
|
|
42
|
-
type: CaseSearchQueryType.ADVANCED,
|
|
43
|
-
}, paginationInfo: initialPaginationInfo }));
|
|
44
|
-
}
|
|
45
|
-
else {
|
|
46
|
-
setSearchVal(value.trim());
|
|
47
|
-
}
|
|
36
|
+
setSearchVal(value === null || value === void 0 ? void 0 : value.trim());
|
|
48
37
|
};
|
|
49
38
|
const clearSearchVal = () => {
|
|
50
39
|
setSearchVal('');
|
|
51
40
|
(filterQueryInfo === null || filterQueryInfo === void 0 ? void 0 : filterQueryInfo.queryString) &&
|
|
52
41
|
updateFilterQuery(dispatch, { type: getType(), queryString: '', parsedQuery: '' });
|
|
53
42
|
};
|
|
43
|
+
const clearAdvancedSearchVal = () => {
|
|
44
|
+
setSearchVal('');
|
|
45
|
+
// clear search but keep type and sort info
|
|
46
|
+
updateFilterState(dispatch, Object.assign(Object.assign({}, filterState), { filterInfo: initialFilterInfo, filterQueryInfo: {
|
|
47
|
+
queryString: '',
|
|
48
|
+
parsedQuery: '',
|
|
49
|
+
type: CaseSearchQueryType.ADVANCED,
|
|
50
|
+
}, paginationInfo: initialPaginationInfo }));
|
|
51
|
+
};
|
|
54
52
|
const onCaseSearch = (parsedQuery = '', queryString = searchVal) => {
|
|
55
53
|
updateFilterQuery(dispatch, { type: getType(), queryString, parsedQuery });
|
|
56
54
|
};
|
|
@@ -62,7 +60,7 @@ export function CaseSearch(props) {
|
|
|
62
60
|
const onSearchTypeChange = (newType) => {
|
|
63
61
|
var _a, _b;
|
|
64
62
|
if (newType === CaseSearchQueryType.ADVANCED) {
|
|
65
|
-
const parsedQuery = createUserFriendlyQueryFromFilterStateAdvancedSearch(filterState.filterInfo, (_a = filterState.filterQueryInfo) === null || _a === void 0 ? void 0 : _a.queryString
|
|
63
|
+
const parsedQuery = createUserFriendlyQueryFromFilterStateAdvancedSearch(filterState.filterInfo, (_a = filterState.filterQueryInfo) === null || _a === void 0 ? void 0 : _a.queryString);
|
|
66
64
|
updateFilterQuery(dispatch, {
|
|
67
65
|
type: CaseSearchQueryType.ADVANCED,
|
|
68
66
|
queryString: (_b = filterState.filterQueryInfo) === null || _b === void 0 ? void 0 : _b.queryString,
|
|
@@ -99,7 +97,7 @@ export function CaseSearch(props) {
|
|
|
99
97
|
};
|
|
100
98
|
const renderAdvanceSearch = () => {
|
|
101
99
|
return canUseAdvancedSearch ? (React.createElement(React.Fragment, null,
|
|
102
|
-
React.createElement(AdvanceSearch, { onSearchValChange: onSearchValChange, onSearchClear:
|
|
100
|
+
React.createElement(AdvanceSearch, { onSearchValChange: onSearchValChange, onSearchClear: clearAdvancedSearchVal, onSearchSubmit: onCaseSearchAdvanced, onSearchTypeChange: onSearchTypeChange, onAdvancedSearchValidation: (isValid) => setIsAdvancedSearchValid(isValid) }))) : (React.createElement(React.Fragment, null));
|
|
103
101
|
};
|
|
104
102
|
return (React.createElement(React.Fragment, null,
|
|
105
103
|
React.createElement("form", { onSubmit: handleSubmit, onKeyDown: handleSearchInputKeyDown },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SaveCaseSearchModal.d.ts","sourceRoot":"","sources":["../../../../../src/components/case-list/case-search/SaveCaseSearchModal.tsx"],"names":[],"mappings":"AA4BA,UAAU,MAAM;IACZ,WAAW,EAAE,OAAO,CAAC;IACrB,WAAW,EAAE,MAAM,IAAI,CAAC;IACxB,QAAQ,EAAE,OAAO,CAAC;IAClB,wBAAwB,EAAE,MAAM,CAAC;IACjC,uBAAuB,EAAE,MAAM,CAAC;IAChC,iBAAiB,EAAE,MAAM,CAAC;IAC1B,eAAe,EAAE,MAAM,IAAI,CAAC;CAC/B;AAED,wBAAgB,mBAAmB,CAAC,EAChC,WAAW,EACX,WAAW,EACX,QAAQ,EACR,wBAAwB,EACxB,uBAAuB,EACvB,iBAAiB,EACjB,eAAe,GAClB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"SaveCaseSearchModal.d.ts","sourceRoot":"","sources":["../../../../../src/components/case-list/case-search/SaveCaseSearchModal.tsx"],"names":[],"mappings":"AA4BA,UAAU,MAAM;IACZ,WAAW,EAAE,OAAO,CAAC;IACrB,WAAW,EAAE,MAAM,IAAI,CAAC;IACxB,QAAQ,EAAE,OAAO,CAAC;IAClB,wBAAwB,EAAE,MAAM,CAAC;IACjC,uBAAuB,EAAE,MAAM,CAAC;IAChC,iBAAiB,EAAE,MAAM,CAAC;IAC1B,eAAe,EAAE,MAAM,IAAI,CAAC;CAC/B;AAED,wBAAgB,mBAAmB,CAAC,EAChC,WAAW,EACX,WAAW,EACX,QAAQ,EACR,wBAAwB,EACxB,uBAAuB,EACvB,iBAAiB,EACjB,eAAe,GAClB,EAAE,MAAM,eA4QR"}
|
|
@@ -135,7 +135,10 @@ export function SaveCaseSearchModal({ isModalOpen, modalToggle, isAdding, select
|
|
|
135
135
|
: currentCaseSearchString;
|
|
136
136
|
}
|
|
137
137
|
else if (selectedSearchNameToEdit && previousBookmarkedSearchesObj[selectedSearchNameToEdit]) {
|
|
138
|
-
queryStr =
|
|
138
|
+
queryStr =
|
|
139
|
+
currentSearchType === CaseSearchQueryType.BASIC
|
|
140
|
+
? createUserFriendlyQueryFromFilterState(previousBookmarkedSearchesObj[selectedSearchNameToEdit].filterState, previousBookmarkedSearchesObj[selectedSearchNameToEdit].queryString)
|
|
141
|
+
: previousBookmarkedSearchesObj[selectedSearchNameToEdit].queryString;
|
|
139
142
|
}
|
|
140
143
|
else {
|
|
141
144
|
queryStr = previousBookmarkedSearchesObj[localSavedSearchName] || '';
|
|
@@ -19,7 +19,7 @@ export declare const fieldNameToSolrFieldMapping: {
|
|
|
19
19
|
export declare const advanceSearchFieldNameToSolrFieldMapping: {
|
|
20
20
|
case_24_7: string;
|
|
21
21
|
case_is_cep: string;
|
|
22
|
-
|
|
22
|
+
case_account_name: string;
|
|
23
23
|
case_number: string;
|
|
24
24
|
case_owner_sso_username: string;
|
|
25
25
|
case_lastModifiedByName: string;
|
|
@@ -35,6 +35,7 @@ export declare const advanceSearchFieldNameToSolrFieldMapping: {
|
|
|
35
35
|
case_closedDate: string;
|
|
36
36
|
case_product: string;
|
|
37
37
|
case_status: string;
|
|
38
|
+
case_accountNumber: string;
|
|
38
39
|
case_folderNumber: string;
|
|
39
40
|
case_severity: string;
|
|
40
41
|
case_customer_escalation: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"caseSearch.d.ts","sourceRoot":"","sources":["../../../src/enums/caseSearch.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,4BAA4B,KAAK,CAAC;AAE/C,oBAAY,mBAAmB;IAC3B,KAAK,UAAU;IACf,QAAQ,aAAa;CACxB;AAED,eAAO,MAAM,2BAA2B;;;;;;;;;;;;CAYvC,CAAC;AAEF,eAAO,MAAM,wCAAwC
|
|
1
|
+
{"version":3,"file":"caseSearch.d.ts","sourceRoot":"","sources":["../../../src/enums/caseSearch.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,4BAA4B,KAAK,CAAC;AAE/C,oBAAY,mBAAmB;IAC3B,KAAK,UAAU;IACf,QAAQ,aAAa;CACxB;AAED,eAAO,MAAM,2BAA2B;;;;;;;;;;;;CAYvC,CAAC;AAEF,eAAO,MAAM,wCAAwC;;;;;;;;;;;;;;;;;;;;;;;;;CAkBpD,CAAC"}
|
|
@@ -8,7 +8,7 @@ export var CaseSearchQueryType;
|
|
|
8
8
|
export const fieldNameToSolrFieldMapping = {
|
|
9
9
|
[SolrKeys.product]: 'productName',
|
|
10
10
|
[SolrKeys.status]: 'status',
|
|
11
|
-
[SolrKeys.accountNumber]: '
|
|
11
|
+
[SolrKeys.accountNumber]: 'accountNumber',
|
|
12
12
|
[SolrKeys.group]: 'group',
|
|
13
13
|
[SolrKeys.severity]: 'severity',
|
|
14
14
|
[SolrKeys.caseOwner]: 'owner',
|
|
@@ -18,4 +18,4 @@ export const fieldNameToSolrFieldMapping = {
|
|
|
18
18
|
[SolrKeys.createdBySsoUsername]: 'createdBySsoUsername',
|
|
19
19
|
[SolrKeys.type]: 'caseType',
|
|
20
20
|
};
|
|
21
|
-
export const advanceSearchFieldNameToSolrFieldMapping = Object.assign(Object.assign({}, fieldNameToSolrFieldMapping), { [SolrKeys.fts]: 'FTS', [SolrKeys.cep]: 'CEP', [SolrKeys.
|
|
21
|
+
export const advanceSearchFieldNameToSolrFieldMapping = Object.assign(Object.assign({}, fieldNameToSolrFieldMapping), { [SolrKeys.fts]: 'FTS', [SolrKeys.cep]: 'CEP', [SolrKeys.accountName]: 'accountName', [SolrKeys.caseNumber]: 'caseNumber', [SolrKeys.caseOwner]: 'ownerSSO', [SolrKeys.modifiedBy]: 'lastModifiedByName', [SolrKeys.createdBySsoUsername]: 'createdBySSO', [SolrKeys.createdBy]: 'createdByName', [SolrKeys.contactName]: 'contactName', [SolrKeys.caseContactSSO]: 'contactSSO', [SolrKeys.modifiedDate]: 'lastModifiedDate', [SolrKeys.createdDate]: 'createdDate', [SolrKeys.description]: 'description', [SolrKeys.caseSummary]: 'summary', [SolrKeys.alternateId]: 'alternateId', [SolrKeys.caseClosedDate]: 'closedDate' });
|
|
@@ -33,7 +33,7 @@ export declare enum SolrKeys {
|
|
|
33
33
|
fts = "case_24_7",
|
|
34
34
|
type = "case_type",
|
|
35
35
|
cep = "case_is_cep",
|
|
36
|
-
accountName = "
|
|
36
|
+
accountName = "case_account_name",
|
|
37
37
|
alternateId = "case_alternate_id",
|
|
38
38
|
caseClosedDate = "case_closedDate",
|
|
39
39
|
openshiftClusterId = "case_openshift_cluster_id"
|
|
@@ -65,7 +65,6 @@ export declare const advancedSearchMap: {
|
|
|
65
65
|
case_24_7: string;
|
|
66
66
|
case_type: string;
|
|
67
67
|
case_is_cep: string;
|
|
68
|
-
case_accountName: string;
|
|
69
68
|
case_alternate_id: string;
|
|
70
69
|
case_closedDate: string;
|
|
71
70
|
case_openshift_cluster_id: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"filters.d.ts","sourceRoot":"","sources":["../../../src/enums/filters.ts"],"names":[],"mappings":"AAAA,oBAAY,QAAQ;IAChB,SAAS,cAAc;IACvB,QAAQ,aAAa;IACrB,SAAS,cAAc;IACvB,OAAO,YAAY;IACnB,UAAU,eAAe;IACzB,MAAM,WAAW;CACpB;AAED,oBAAY,QAAQ;IAChB,UAAU,gBAAgB;IAC1B,WAAW,iBAAiB;IAC5B,OAAO,iBAAiB;IACxB,MAAM,gBAAgB;IACtB,aAAa,uBAAuB;IACpC,KAAK,sBAAsB;IAC3B,SAAS,oBAAoB;IAC7B,QAAQ,kBAAkB;IAC1B,SAAS,4BAA4B;IACrC,SAAS,eAAe;IACxB,WAAW,qBAAqB;IAChC,cAAc,8BAA8B;IAC5C,UAAU,6BAA6B;IACvC,OAAO,iBAAiB;IACxB,SAAS,uBAAuB;IAChC,oBAAoB,gCAAgC;IACpD,WAAW,qBAAqB;IAChC,UAAU,4BAA4B;IACtC,YAAY,0BAA0B;IACtC,oBAAoB,iCAAiC;IACrD,sBAAsB,+BAA+B;IACrD,WAAW,qBAAqB;IAChC,GAAG,QAAQ;IACX,GAAG,cAAc;IACjB,IAAI,cAAc;IAClB,GAAG,gBAAgB;IACnB,WAAW,
|
|
1
|
+
{"version":3,"file":"filters.d.ts","sourceRoot":"","sources":["../../../src/enums/filters.ts"],"names":[],"mappings":"AAAA,oBAAY,QAAQ;IAChB,SAAS,cAAc;IACvB,QAAQ,aAAa;IACrB,SAAS,cAAc;IACvB,OAAO,YAAY;IACnB,UAAU,eAAe;IACzB,MAAM,WAAW;CACpB;AAED,oBAAY,QAAQ;IAChB,UAAU,gBAAgB;IAC1B,WAAW,iBAAiB;IAC5B,OAAO,iBAAiB;IACxB,MAAM,gBAAgB;IACtB,aAAa,uBAAuB;IACpC,KAAK,sBAAsB;IAC3B,SAAS,oBAAoB;IAC7B,QAAQ,kBAAkB;IAC1B,SAAS,4BAA4B;IACrC,SAAS,eAAe;IACxB,WAAW,qBAAqB;IAChC,cAAc,8BAA8B;IAC5C,UAAU,6BAA6B;IACvC,OAAO,iBAAiB;IACxB,SAAS,uBAAuB;IAChC,oBAAoB,gCAAgC;IACpD,WAAW,qBAAqB;IAChC,UAAU,4BAA4B;IACtC,YAAY,0BAA0B;IACtC,oBAAoB,iCAAiC;IACrD,sBAAsB,+BAA+B;IACrD,WAAW,qBAAqB;IAChC,GAAG,QAAQ;IACX,GAAG,cAAc;IACjB,IAAI,cAAc;IAClB,GAAG,gBAAgB;IACnB,WAAW,sBAAsB;IACjC,WAAW,sBAAsB;IACjC,cAAc,oBAAoB;IAClC,kBAAkB,8BAA8B;CACnD;AAED,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+B7B,CAAC;AAGF,oBAAY,aAAa;IACrB,eAAe,8BAA8B;CAChD;AAED,eAAO,MAAM,iBAAiB,QAA4C,CAAC;AAC3E,oBAAY,QAAQ;IAChB,UAAU,eAAe;IACzB,WAAW,YAAY;IACvB,OAAO,YAAY;IACnB,MAAM,WAAW;IACjB,aAAa,qBAAqB;IAClC,QAAQ,aAAa;IACrB,SAAS,YAAY;IACrB,WAAW,gBAAgB;IAC3B,SAAS,mBAAmB;IAC5B,UAAU,uBAAuB;IACjC,OAAO,YAAY;IACnB,SAAS,gBAAgB;IACzB,oBAAoB,gCAAgC;IACpD,WAAW,gBAAgB;IAC3B,UAAU,qBAAqB;IAC/B,YAAY,qBAAqB;IACjC,oBAAoB,qBAAqB;IACzC,sBAAsB,qBAAqB;IAC3C,WAAW,gBAAgB;IAC3B,GAAG,QAAQ;IACX,WAAW,gBAAgB;IAC3B,SAAS,cAAc;IACvB,WAAW,gBAAgB;IAC3B,QAAQ,aAAa;IACrB,cAAc,iBAAiB;CAClC;AAED,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;CAsB9B,CAAC;AAEF,eAAO,MAAM,sBAAsB;;CAElC,CAAC"}
|
package/lib/esm/enums/filters.js
CHANGED
|
@@ -35,7 +35,7 @@ export var SolrKeys;
|
|
|
35
35
|
SolrKeys["fts"] = "case_24_7";
|
|
36
36
|
SolrKeys["type"] = "case_type";
|
|
37
37
|
SolrKeys["cep"] = "case_is_cep";
|
|
38
|
-
SolrKeys["accountName"] = "
|
|
38
|
+
SolrKeys["accountName"] = "case_account_name";
|
|
39
39
|
SolrKeys["alternateId"] = "case_alternate_id";
|
|
40
40
|
SolrKeys["caseClosedDate"] = "case_closedDate";
|
|
41
41
|
SolrKeys["openshiftClusterId"] = "case_openshift_cluster_id";
|
|
@@ -67,7 +67,6 @@ export const advancedSearchMap = {
|
|
|
67
67
|
case_24_7: 'FTS',
|
|
68
68
|
case_type: 'caseType',
|
|
69
69
|
case_is_cep: 'CEP',
|
|
70
|
-
case_accountName: 'accountName',
|
|
71
70
|
case_alternate_id: 'alternateCaseId',
|
|
72
71
|
case_closedDate: 'closedDate',
|
|
73
72
|
case_openshift_cluster_id: 'openshiftClusterId',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"caseListUtils.d.ts","sourceRoot":"","sources":["../../../src/utils/caseListUtils.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AACtE,OAAO,EAAE,QAAQ,EAAE,MAAM,wCAAwC,CAAC;AAClE,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AAIxD,OAAO,EAAE,oBAAoB,EAAE,MAAM,+CAA+C,CAAC;
|
|
1
|
+
{"version":3,"file":"caseListUtils.d.ts","sourceRoot":"","sources":["../../../src/utils/caseListUtils.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AACtE,OAAO,EAAE,QAAQ,EAAE,MAAM,wCAAwC,CAAC;AAClE,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AAIxD,OAAO,EAAE,oBAAoB,EAAE,MAAM,+CAA+C,CAAC;AAErF,OAAO,EAAuC,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAOlG,MAAM,WAAW,kBAAkB,CAAC,CAAC;IACjC,CAAC,CAAC,EAAE,CAAC,CAAC;IACN,MAAM,EAAE,WAAW,GAAG,UAAU,CAAC;IACjC,CAAC,CAAC,EAAE,KAAK,CAAC;CACb;AAED,UAAU,iBAAiB;IACvB,gBAAgB,EAAE,uBAAuB,CAAC;IAC1C,sBAAsB,EAAE,OAAO,CAAC;IAChC,gBAAgB,EAAE,OAAO,CAAC;CAC7B;AAiBD,wBAAsB,WAAW,CAC7B,WAAW,EAAE,oBAAoB,EACjC,YAAY,EAAE,QAAQ,EACtB,mBAAmB,EAAE,OAAO,CAAC,QAAQ,CAAC,EACtC,WAAW,EAAE,WAAW,GACzB,OAAO,CAAC,iBAAiB,CAAC,CAwF5B;AAED,wBAAgB,mBAAmB,CAC/B,SAAS,EAAE,gBAAgB,EAC3B,aAAa,EAAE,OAAO,EACtB,WAAW,EAAE,WAAW,EACxB,eAAe,GAAE,OAAe,GACjC,OAAO,CAAC,uBAAuB,CAAC,CASlC"}
|
|
@@ -20,7 +20,8 @@ var __rest = (this && this.__rest) || function (s, e) {
|
|
|
20
20
|
};
|
|
21
21
|
import { publicApi, search } from '@cee-eng/hydrajs';
|
|
22
22
|
import { promiseReflection } from '@rh-support/utils';
|
|
23
|
-
import {
|
|
23
|
+
import { isNoFilterApplied } from '../components/case-list/CaseListFilterHelpers';
|
|
24
|
+
import { CaseSearchQueryType } from '../enums/caseSearch';
|
|
24
25
|
import { createSFDCQueryFromFilterState, createSolrQueryFromFilterState, mapSFDCCaseListToSolrCaseList, } from './caseSearchUtils';
|
|
25
26
|
const throwErrorOnAbort = (message) => {
|
|
26
27
|
const isAbortError = message && message.toLowerCase().includes('abort');
|
|
@@ -37,14 +38,18 @@ const throwErrorOnAbort = (message) => {
|
|
|
37
38
|
// Even though SFDC support most of the filters but another problem with SFDC is it doesnot support multiple values for a praticular filter.
|
|
38
39
|
// if user applies any filter apart from default filter we will always call solr and assume that(not safely) 10 sec scenario is not bound to happen.
|
|
39
40
|
export function getCaseList(filterState, loggedInUser, loggedInUserAccount, abortSignal) {
|
|
40
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j;
|
|
41
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
|
|
41
42
|
return __awaiter(this, void 0, void 0, function* () {
|
|
42
43
|
let isSolrSearchDownSFDCUp = false;
|
|
43
44
|
let showErrorMessage = false;
|
|
44
45
|
let caseListResponse;
|
|
45
46
|
const solrFilter = createSolrQueryFromFilterState(filterState, loggedInUser);
|
|
46
47
|
const partnerSearch = loggedInUser.hasManagedAccounts();
|
|
47
|
-
|
|
48
|
+
//sfdc returns wrong result, for now only call sfdc when we have no filter applied
|
|
49
|
+
const isSfdcSearchRequired = isNoFilterApplied(filterState) &&
|
|
50
|
+
!filterState.filterQueryInfo.queryString &&
|
|
51
|
+
!partnerSearch &&
|
|
52
|
+
((_a = filterState.filterQueryInfo) === null || _a === void 0 ? void 0 : _a.type) !== CaseSearchQueryType.ADVANCED;
|
|
48
53
|
let solrPromise = getCaseListFromSolr(solrFilter, partnerSearch, abortSignal, loggedInUserAccount === null || loggedInUserAccount === void 0 ? void 0 : loggedInUserAccount.secureSupport);
|
|
49
54
|
const sfdcAPICall = () => publicApi.caseList.getCaseListFromSFDC(createSFDCQueryFromFilterState(filterState, loggedInUser, loggedInUserAccount), partnerSearch, loggedInUserAccount === null || loggedInUserAccount === void 0 ? void 0 : loggedInUserAccount.secureSupport, abortSignal);
|
|
50
55
|
const sfdcPromise = isSfdcSearchRequired ? sfdcAPICall() : Promise.resolve(undefined);
|
|
@@ -54,8 +59,8 @@ export function getCaseList(filterState, loggedInUser, loggedInUserAccount, abor
|
|
|
54
59
|
throwErrorOnAbort(solrResponse === null || solrResponse === void 0 ? void 0 : solrResponse.e.message);
|
|
55
60
|
if (sfdcResponse.e)
|
|
56
61
|
throwErrorOnAbort(sfdcResponse === null || sfdcResponse === void 0 ? void 0 : sfdcResponse.e.message);
|
|
57
|
-
const solrFullfilled = !!(solrResponse.status === 'fulfilled' && ((
|
|
58
|
-
let sfdcFullfilled = !!(sfdcResponse.status === 'fulfilled' && ((
|
|
62
|
+
const solrFullfilled = !!(solrResponse.status === 'fulfilled' && ((_b = solrResponse.v) === null || _b === void 0 ? void 0 : _b.response));
|
|
63
|
+
let sfdcFullfilled = !!(sfdcResponse.status === 'fulfilled' && ((_c = sfdcResponse.v) === null || _c === void 0 ? void 0 : _c.cases));
|
|
59
64
|
const sfdcCallIsMadeAndFailed = !sfdcFullfilled && isSfdcSearchRequired;
|
|
60
65
|
const sfdcCallNotMade = !sfdcFullfilled && !isSfdcSearchRequired;
|
|
61
66
|
if (!solrFullfilled && sfdcCallIsMadeAndFailed) {
|
|
@@ -65,10 +70,10 @@ export function getCaseList(filterState, loggedInUser, loggedInUserAccount, abor
|
|
|
65
70
|
// SFDC call didn't make because we had filters that SFDC doesn't support
|
|
66
71
|
try {
|
|
67
72
|
const sfdcRes = yield promiseReflection(sfdcAPICall());
|
|
68
|
-
sfdcFullfilled = !!(sfdcRes.status === 'fulfilled' && ((
|
|
73
|
+
sfdcFullfilled = !!(sfdcRes.status === 'fulfilled' && ((_d = sfdcRes.v) === null || _d === void 0 ? void 0 : _d.cases));
|
|
69
74
|
if (sfdcFullfilled) {
|
|
70
75
|
isSolrSearchDownSFDCUp = true;
|
|
71
|
-
const mappedSfdcRes = mapSFDCCaseListToSolrCaseList((
|
|
76
|
+
const mappedSfdcRes = mapSFDCCaseListToSolrCaseList((_f = (_e = sfdcRes === null || sfdcRes === void 0 ? void 0 : sfdcRes.v) === null || _e === void 0 ? void 0 : _e.cases) !== null && _f !== void 0 ? _f : []);
|
|
72
77
|
caseListResponse = {
|
|
73
78
|
response: {
|
|
74
79
|
docs: mappedSfdcRes,
|
|
@@ -85,7 +90,7 @@ export function getCaseList(filterState, loggedInUser, loggedInUserAccount, abor
|
|
|
85
90
|
}
|
|
86
91
|
else if (solrFullfilled && sfdcFullfilled) {
|
|
87
92
|
caseListResponse = Object.assign(Object.assign({}, solrResponse.v), { response: {
|
|
88
|
-
docs: mapSFDCCaseListToSolrCaseList((
|
|
93
|
+
docs: mapSFDCCaseListToSolrCaseList((_h = (_g = sfdcResponse === null || sfdcResponse === void 0 ? void 0 : sfdcResponse.v) === null || _g === void 0 ? void 0 : _g.cases) !== null && _h !== void 0 ? _h : []),
|
|
89
94
|
numFound: sfdcResponse.v.totalCount,
|
|
90
95
|
} });
|
|
91
96
|
}
|
|
@@ -93,7 +98,7 @@ export function getCaseList(filterState, loggedInUser, loggedInUserAccount, abor
|
|
|
93
98
|
isSolrSearchDownSFDCUp = true;
|
|
94
99
|
caseListResponse = {
|
|
95
100
|
response: {
|
|
96
|
-
docs: mapSFDCCaseListToSolrCaseList((
|
|
101
|
+
docs: mapSFDCCaseListToSolrCaseList((_k = (_j = sfdcResponse === null || sfdcResponse === void 0 ? void 0 : sfdcResponse.v) === null || _j === void 0 ? void 0 : _j.cases) !== null && _k !== void 0 ? _k : []),
|
|
97
102
|
numFound: sfdcResponse.v.totalCount,
|
|
98
103
|
},
|
|
99
104
|
};
|
|
@@ -11,7 +11,7 @@ export declare const FILTER_URL_PAGE_SIZE_SEARCH_PARAM = "size";
|
|
|
11
11
|
export declare const FILTER_URL_QUERY_TYPE = "searchType";
|
|
12
12
|
declare function createSolrQueryFromFilterState(filterState: ICaseListFilterState, loggedInUser: UserAuth): any;
|
|
13
13
|
declare function createUserFriendlyQueryFromFilterState(filterInfo: Partial<IFilterInfo>, filterQuery: string, useKeyForKVPair?: boolean): string;
|
|
14
|
-
declare function createUserFriendlyQueryFromFilterStateAdvancedSearch(filterInfo: Partial<IFilterInfo>, filterQuery: string
|
|
14
|
+
declare function createUserFriendlyQueryFromFilterStateAdvancedSearch(filterInfo: Partial<IFilterInfo>, filterQuery: string): string;
|
|
15
15
|
declare function createAdvancedSearchQueryFromFilterState(filterInfo: Partial<IFilterInfo>, keyword: string, useKeyForKVPair?: any[]): string;
|
|
16
16
|
declare function createQueryForCSVDownload(filterState: ICaseListFilterState, loggedInUserRights: UserAuth, loggedInUsersAccount: any, startValue?: number, limitValue?: number): any;
|
|
17
17
|
declare function createSFDCQueryFromFilterState(filterState: ICaseListFilterState, loggedInUser: UserAuth, loggedInUserAccount: Partial<IAccount>): Partial<ISFDCCaseFilter>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"caseSearchUtils.d.ts","sourceRoot":"","sources":["../../../src/utils/caseSearchUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,6CAA6C,CAAC;AACrG,OAAO,EAAE,QAAQ,EAAE,MAAM,wCAAwC,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAEjE,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AAUxD,OAAO,EACH,oBAAoB,EACpB,WAAW,EAId,MAAM,+CAA+C,CAAC;AAOvD,OAAO,EAEH,mBAAmB,EAEtB,MAAM,qBAAqB,CAAC;AAU7B,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAE3D,eAAO,MAAM,6BAA6B,UAAU,CAAC;AACrD,eAAO,MAAM,oCAAoC,MAAM,CAAC;AACxD,eAAO,MAAM,iCAAiC,SAAS,CAAC;AACxD,eAAO,MAAM,qBAAqB,eAAe,CAAC;AAElD,iBAAS,8BAA8B,CAAC,WAAW,EAAE,oBAAoB,EAAE,YAAY,EAAE,QAAQ,OA4DhG;AAED,iBAAS,sCAAsC,CAC3C,UAAU,EAAE,OAAO,CAAC,WAAW,CAAC,EAChC,WAAW,EAAE,MAAM,EACnB,eAAe,GAAE,OAAe,UAwBnC;AAED,iBAAS,oDAAoD,
|
|
1
|
+
{"version":3,"file":"caseSearchUtils.d.ts","sourceRoot":"","sources":["../../../src/utils/caseSearchUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,6CAA6C,CAAC;AACrG,OAAO,EAAE,QAAQ,EAAE,MAAM,wCAAwC,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAEjE,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AAUxD,OAAO,EACH,oBAAoB,EACpB,WAAW,EAId,MAAM,+CAA+C,CAAC;AAOvD,OAAO,EAEH,mBAAmB,EAEtB,MAAM,qBAAqB,CAAC;AAU7B,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAE3D,eAAO,MAAM,6BAA6B,UAAU,CAAC;AACrD,eAAO,MAAM,oCAAoC,MAAM,CAAC;AACxD,eAAO,MAAM,iCAAiC,SAAS,CAAC;AACxD,eAAO,MAAM,qBAAqB,eAAe,CAAC;AAElD,iBAAS,8BAA8B,CAAC,WAAW,EAAE,oBAAoB,EAAE,YAAY,EAAE,QAAQ,OA4DhG;AAED,iBAAS,sCAAsC,CAC3C,UAAU,EAAE,OAAO,CAAC,WAAW,CAAC,EAChC,WAAW,EAAE,MAAM,EACnB,eAAe,GAAE,OAAe,UAwBnC;AAED,iBAAS,oDAAoD,CAAC,UAAU,EAAE,OAAO,CAAC,WAAW,CAAC,EAAE,WAAW,EAAE,MAAM,UA6ClH;AAkBD,iBAAS,wCAAwC,CAC7C,UAAU,EAAE,OAAO,CAAC,WAAW,CAAC,EAChC,OAAO,EAAE,MAAM,EACf,eAAe,QAAK,UA6BvB;AASD,iBAAS,yBAAyB,CAC9B,WAAW,EAAE,oBAAoB,EACjC,kBAAkB,EAAE,QAAQ,EAC5B,oBAAoB,KAAA,EACpB,UAAU,SAAI,EACd,UAAU,SAAO,OAcpB;AAkBD,iBAAS,8BAA8B,CACnC,WAAW,EAAE,oBAAoB,EACjC,YAAY,EAAE,QAAQ,EACtB,mBAAmB,EAAE,OAAO,CAAC,QAAQ,CAAC,GACvC,OAAO,CAAC,eAAe,CAAC,CAgE1B;AAED,iBAAS,6BAA6B,CAAC,QAAQ,GAAE,qBAAqB,EAAO,GAAG,qBAAqB,EAAE,CAEtG;AAcD,iBAAS,6BAA6B,CAAC,WAAW,EAAE,oBAAoB,UAUvE;AAED,iBAAS,6BAA6B,CAClC,QAAQ,EAAE,MAAM,EAChB,mBAAmB,EAAE,oBAAoB,EACzC,QAAQ,CAAC,EAAE,MAAM,EACjB,WAAW,CAAC,EAAE,MAAM,EACpB,UAAU,GAAE,mBAA+C,wBAsD9D;AAGD,iBAAS,kCAAkC,CACvC,WAAW,EAAE,MAAM,EACnB,mBAAmB,EAAE,oBAAoB,EACzC,kBAAkB,EAAE,oBAAoB,EACxC,WAAW,GAAE,MAAW,EACxB,IAAI,GAAE,mBAA+C,wBAsCxD;AAmKD,OAAO,EACH,8BAA8B,EAC9B,sCAAsC,EACtC,oDAAoD,EACpD,yBAAyB,EACzB,8BAA8B,EAC9B,6BAA6B,EAC7B,6BAA6B,EAC7B,6BAA6B,EAC7B,wCAAwC,EACxC,kCAAkC,GACrC,CAAC"}
|
|
@@ -96,7 +96,7 @@ function createUserFriendlyQueryFromFilterState(filterInfo, filterQuery, useKeyF
|
|
|
96
96
|
filtersQuery !== '*:*' && finalQueryArr.push(filtersQuery);
|
|
97
97
|
return finalQueryArr.join(' AND ');
|
|
98
98
|
}
|
|
99
|
-
function createUserFriendlyQueryFromFilterStateAdvancedSearch(filterInfo, filterQuery
|
|
99
|
+
function createUserFriendlyQueryFromFilterStateAdvancedSearch(filterInfo, filterQuery) {
|
|
100
100
|
// if query contains quotes then we need to escape it so that solr parser can parse it successfully
|
|
101
101
|
//const searchTextQuery = filterQuery ? `keyword: "${filterQuery.replace(/"/g, '\\"')}"` : '';
|
|
102
102
|
let solrQuery = new SolrQueryBuilder();
|
|
@@ -105,7 +105,7 @@ function createUserFriendlyQueryFromFilterStateAdvancedSearch(filterInfo, filter
|
|
|
105
105
|
? fieldNameToSolrFieldMapping[_filterKey]
|
|
106
106
|
: _filterKey;
|
|
107
107
|
const fieldValue = isKeyValuePair(filterInfo[_filterKey])
|
|
108
|
-
? filterInfo[_filterKey].map((item) => (
|
|
108
|
+
? filterInfo[_filterKey].map((item) => (SolrKeys.accountNumber ? item.key : item.value))
|
|
109
109
|
: filterInfo[_filterKey];
|
|
110
110
|
if (_filterKey !== ProductVersionKey) {
|
|
111
111
|
Array.isArray(fieldValue) && fieldValue.length > 0 && solrQuery.where(fieldLabel).in(flatMap(fieldValue));
|
|
@@ -326,7 +326,7 @@ function createFilterStateFromUrlQuery(urlQuery, globalMetadataState, pageSize,
|
|
|
326
326
|
}
|
|
327
327
|
});
|
|
328
328
|
const parsedQuery = filterQueryInfo.type === CaseSearchQueryType.ADVANCED
|
|
329
|
-
? createUserFriendlyQueryFromFilterStateAdvancedSearch(filterInfo, filterQueryInfo.queryString
|
|
329
|
+
? createUserFriendlyQueryFromFilterStateAdvancedSearch(filterInfo, filterQueryInfo.queryString)
|
|
330
330
|
: '';
|
|
331
331
|
const filterQuery = {
|
|
332
332
|
sortInfo,
|
|
@@ -352,7 +352,7 @@ function createFilterStateFromAdvancedQuery(queryString, globalMetadataState, cu
|
|
|
352
352
|
else {
|
|
353
353
|
// if field is present in this map, it means field is supported in basic search mode too
|
|
354
354
|
if (fieldNameToSolrFieldMapping[_key]) {
|
|
355
|
-
newFilterInfo[_key] = generateFilterValue(_key, filterObj[_key], globalMetadataState);
|
|
355
|
+
newFilterInfo[_key] = generateFilterValue(_key, filterObj[_key], globalMetadataState, true);
|
|
356
356
|
}
|
|
357
357
|
else {
|
|
358
358
|
// if it's supported in basic search mode then add it as a query string in the search input
|
|
@@ -367,9 +367,11 @@ function createFilterStateFromAdvancedQuery(queryString, globalMetadataState, cu
|
|
|
367
367
|
type }), filterInfo: Object.assign(Object.assign({}, initialCaseFilterState.filterInfo), newFilterInfo) });
|
|
368
368
|
return filterState;
|
|
369
369
|
}
|
|
370
|
-
function generateFilterValue(solrFieldName, value, globalMetadataState) {
|
|
370
|
+
function generateFilterValue(solrFieldName, value, globalMetadataState, isAdvancedSearch = false) {
|
|
371
371
|
const valueArr = Array.isArray(value) ? value : value ? [value] : [];
|
|
372
|
-
return
|
|
372
|
+
return isAdvancedSearch
|
|
373
|
+
? getValidValuesAdvancedSearch(solrFieldName, valueArr, globalMetadataState)
|
|
374
|
+
: getValidValues(solrFieldName, valueArr, globalMetadataState);
|
|
373
375
|
}
|
|
374
376
|
function getValidValues(solrFieldName, itemValues = [], globalMetadataState) {
|
|
375
377
|
var _a, _b, _c, _d;
|
|
@@ -422,6 +424,56 @@ function getValidValues(solrFieldName, itemValues = [], globalMetadataState) {
|
|
|
422
424
|
}
|
|
423
425
|
return mappedValues;
|
|
424
426
|
}
|
|
427
|
+
function getValidValuesAdvancedSearch(solrFieldName, itemValues = [], globalMetadataState) {
|
|
428
|
+
var _a, _b, _c, _d;
|
|
429
|
+
if (itemValues.length < 1)
|
|
430
|
+
return itemValues;
|
|
431
|
+
let mappedValues = [];
|
|
432
|
+
if (solrFieldName === SolrKeys.group) {
|
|
433
|
+
const caseGroupsMap = (((_a = globalMetadataState.caseGroups) === null || _a === void 0 ? void 0 : _a.data) || []).reduce((acc, { groupNum, name = 'Ungrouped' }) => {
|
|
434
|
+
acc[name] = groupNum;
|
|
435
|
+
return acc;
|
|
436
|
+
}, {});
|
|
437
|
+
itemValues.forEach((item) => {
|
|
438
|
+
caseGroupsMap[item] && mappedValues.push({ key: caseGroupsMap[item], value: item });
|
|
439
|
+
});
|
|
440
|
+
}
|
|
441
|
+
else if (solrFieldName === SolrKeys.accountNumber) {
|
|
442
|
+
let bookmarkedAccountsMap = (((_b = globalMetadataState.bookmarkedAccounts) === null || _b === void 0 ? void 0 : _b.data) || []).reduce((acc, { accountNumber, name }) => {
|
|
443
|
+
acc[accountNumber] = getLabel(accountNumber, name);
|
|
444
|
+
return acc;
|
|
445
|
+
}, {});
|
|
446
|
+
bookmarkedAccountsMap = (((_c = globalMetadataState.bookmarkedGroupAccounts) === null || _c === void 0 ? void 0 : _c.data) || []).reduce((acc, { accountNumber, name }) => {
|
|
447
|
+
acc[accountNumber] = getLabel(accountNumber, name);
|
|
448
|
+
return acc;
|
|
449
|
+
}, {});
|
|
450
|
+
const managedAccountsMap = (((_d = globalMetadataState.managedAccounts) === null || _d === void 0 ? void 0 : _d.data) || []).reduce((acc, { accountNum, name }) => {
|
|
451
|
+
acc[accountNum] = getLabel(accountNum, name);
|
|
452
|
+
return acc;
|
|
453
|
+
}, {});
|
|
454
|
+
itemValues.forEach((item) => {
|
|
455
|
+
if (bookmarkedAccountsMap[item]) {
|
|
456
|
+
mappedValues.push({ key: item, value: bookmarkedAccountsMap[item] });
|
|
457
|
+
}
|
|
458
|
+
else if (managedAccountsMap[item]) {
|
|
459
|
+
mappedValues.push({ key: item, value: managedAccountsMap[item] });
|
|
460
|
+
}
|
|
461
|
+
else if (isEmpty(managedAccountsMap)) {
|
|
462
|
+
mappedValues.push({ key: item, value: item });
|
|
463
|
+
}
|
|
464
|
+
});
|
|
465
|
+
}
|
|
466
|
+
else if (solrFieldName === SolrKeys.escalation) {
|
|
467
|
+
mappedValues = itemValues.map((item) => ({
|
|
468
|
+
key: item,
|
|
469
|
+
value: AdditionalFilterLabels[solrFieldName],
|
|
470
|
+
}));
|
|
471
|
+
}
|
|
472
|
+
else {
|
|
473
|
+
mappedValues = itemValues;
|
|
474
|
+
}
|
|
475
|
+
return mappedValues;
|
|
476
|
+
}
|
|
425
477
|
function generateProductVersionPivotValue(values) {
|
|
426
478
|
return (values || []).map((item) => {
|
|
427
479
|
return typeof item === 'string'
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@rh-support/cases",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.7",
|
|
4
4
|
"publishConfig": {
|
|
5
5
|
"access": "public",
|
|
6
6
|
"registry": "https://registry.npmjs.org"
|
|
@@ -99,5 +99,5 @@
|
|
|
99
99
|
"not ie <= 11",
|
|
100
100
|
"not op_mini all"
|
|
101
101
|
],
|
|
102
|
-
"gitHead": "
|
|
102
|
+
"gitHead": "d205a24d22e9f7e8891b07cfd92aca108bf85e4b"
|
|
103
103
|
}
|