@rh-support/cases 2.0.4 → 2.0.7-beta.1
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/NewCaseButton.js +2 -2
- package/lib/esm/components/case-list/CaseList.d.ts.map +1 -1
- package/lib/esm/components/case-list/CaseList.js +7 -8
- package/lib/esm/components/case-list/case-list-filters/AccountsBookmarkedGroupFilter.d.ts.map +1 -1
- package/lib/esm/components/case-list/case-list-filters/AccountsBookmarkedGroupFilter.js +5 -1
- package/lib/esm/components/case-list/case-list-filters/AccountsFilter.js +1 -1
- package/lib/esm/components/case-list/case-list-filters/CaseListFilters.js +1 -1
- package/lib/esm/components/case-list/case-list-filters/ProductsFilter.js +1 -1
- package/lib/esm/components/case-list/case-list-filters/VersionsFilter.d.ts.map +1 -1
- package/lib/esm/components/case-list/case-list-filters/VersionsFilter.js +1 -1
- package/lib/esm/components/case-list/case-list-table/CaseListTable.d.ts.map +1 -1
- package/lib/esm/components/case-list/case-list-table/CaseListTable.js +2 -1
- package/lib/esm/components/case-list/case-list-table/ExportCaseListCSV.js +3 -3
- package/lib/esm/components/case-list/case-search/AdvanceSearch.d.ts +1 -0
- package/lib/esm/components/case-list/case-search/AdvanceSearch.d.ts.map +1 -1
- package/lib/esm/components/case-list/case-search/AdvanceSearch.js +6 -2
- package/lib/esm/components/case-list/case-search/CaseSearch.d.ts.map +1 -1
- package/lib/esm/components/case-list/case-search/CaseSearch.js +10 -5
- package/lib/esm/components/case-list/case-search/SaveCaseSearchModal.js +2 -2
- package/lib/esm/enums/filters.d.ts +2 -2
- package/lib/esm/enums/filters.d.ts.map +1 -1
- package/lib/esm/enums/filters.js +2 -2
- package/lib/esm/hooks/useFilterStateOnLoad.d.ts.map +1 -1
- package/lib/esm/hooks/useFilterStateOnLoad.js +14 -10
- package/lib/esm/scss/_pf-overrides.scss +1 -0
- package/lib/esm/utils/caseListUtils.js +1 -1
- package/lib/esm/utils/caseSearchUtils.d.ts.map +1 -1
- package/lib/esm/utils/caseSearchUtils.js +3 -1
- package/package.json +14 -20
|
@@ -7,7 +7,7 @@ export function NewCaseButton(props) {
|
|
|
7
7
|
const { t } = useTranslation();
|
|
8
8
|
const canCreateCase = useCanCreateCase();
|
|
9
9
|
// Handle onClick of Get support button
|
|
10
|
-
const
|
|
10
|
+
const onNewCase = () => {
|
|
11
11
|
if (canCreateCase.alert()) {
|
|
12
12
|
return;
|
|
13
13
|
}
|
|
@@ -17,6 +17,6 @@ export function NewCaseButton(props) {
|
|
|
17
17
|
}
|
|
18
18
|
};
|
|
19
19
|
return (React.createElement(React.Fragment, null,
|
|
20
|
-
React.createElement(Button, { variant: ButtonVariant.tertiary, onClick:
|
|
20
|
+
React.createElement(Button, { variant: ButtonVariant.tertiary, onClick: onNewCase, "data-tracking-id": "get-support-new-case", "aria-label": t('Get support') },
|
|
21
21
|
React.createElement(Trans, null, "Get support"))));
|
|
22
22
|
}
|
|
@@ -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,eA2frC"}
|
|
@@ -17,8 +17,8 @@ import AngleDoubleUpIcon from '@patternfly/react-icons/dist/js/icons/angle-doubl
|
|
|
17
17
|
import { ErrorBoundary, ToastNotification, useBreakpoint, useDocumentTitle, useForceUpdate, usePrevious, } from '@rh-support/components';
|
|
18
18
|
import { fetchAllStatuses, fetchCaseGroupsForSSO, fetchCaseSeverities, fetchCaseTypes, fetchProducts, GlobalMetadataDispatchContext, GlobalMetadataStateContext, setUserPreferences, updateUserPreferences, UserPreferencesKeys, } from '@rh-support/react-context';
|
|
19
19
|
import { getStringifiedParams, getUrlParsedParams, haventLoadedMetadata, haventLoadedProductsMetadata, pendoTrackEvent, solrResponseToFacetFields, solrResponseToPivotFields, } from '@rh-support/utils';
|
|
20
|
-
import { isEmpty } from 'lodash';
|
|
21
20
|
import get from 'lodash/get';
|
|
21
|
+
import isEmpty from 'lodash/isEmpty';
|
|
22
22
|
import mapValues from 'lodash/mapValues';
|
|
23
23
|
import some from 'lodash/some';
|
|
24
24
|
import React, { useContext, useEffect, useRef, useState } from 'react';
|
|
@@ -52,7 +52,6 @@ export function CaseList(props) {
|
|
|
52
52
|
const { globalMetadataState, globalMetadataState: { caseGroups, loggedInUserJwtToken, loggedInUserRights, loggedInUsersAccount, userPreferences, managedAccounts, bookmarkedAccounts, bookmarkedGroupAccounts, allCaseTypes, allCaseSeverities, allCaseStatuses, allProducts, }, } = useContext(GlobalMetadataStateContext);
|
|
53
53
|
const location = useLocation();
|
|
54
54
|
const searchParams = getUrlParsedParams(location.search);
|
|
55
|
-
const queryParams = getUrlParsedParams(useLocation().search);
|
|
56
55
|
const queryFromUrl = searchParams[FILTER_URL_QUERY_SEARCH_PARAM];
|
|
57
56
|
const pageSizeFromUrl = parseInt(searchParams[FILTER_URL_PAGE_SIZE_SEARCH_PARAM]);
|
|
58
57
|
const currentPageFromUrl = parseInt(searchParams[FILTER_URL_CURRENT_PAGE_SEARCH_PARAM]);
|
|
@@ -222,7 +221,7 @@ export function CaseList(props) {
|
|
|
222
221
|
? ''
|
|
223
222
|
: createURLQueryFromFilterState(filterState);
|
|
224
223
|
setCurrentQuery(CaseListDispatch, urlQuery);
|
|
225
|
-
searchParams[FILTER_URL_QUERY_SEARCH_PARAM] =
|
|
224
|
+
searchParams[FILTER_URL_QUERY_SEARCH_PARAM] = encodeURIComponent(urlQuery);
|
|
226
225
|
searchParams[FILTER_URL_CURRENT_PAGE_SEARCH_PARAM] = filterState.paginationInfo.currentPage;
|
|
227
226
|
searchParams[FILTER_URL_PAGE_SIZE_SEARCH_PARAM] = filterState.paginationInfo.pageSize;
|
|
228
227
|
searchParams[FILTER_URL_QUERY_TYPE] = filterState.filterQueryInfo.type;
|
|
@@ -264,7 +263,7 @@ export function CaseList(props) {
|
|
|
264
263
|
// - check if we have new case
|
|
265
264
|
if (currentQuery) {
|
|
266
265
|
const navObj = {
|
|
267
|
-
[FILTER_URL_QUERY_SEARCH_PARAM]: currentQuery,
|
|
266
|
+
[FILTER_URL_QUERY_SEARCH_PARAM]: encodeURIComponent(currentQuery),
|
|
268
267
|
[FILTER_URL_PAGE_SIZE_SEARCH_PARAM]: filterState.paginationInfo.pageSize,
|
|
269
268
|
[FILTER_URL_CURRENT_PAGE_SEARCH_PARAM]: filterState.paginationInfo.currentPage,
|
|
270
269
|
[FILTER_URL_QUERY_TYPE]: filterState.filterQueryInfo.type,
|
|
@@ -275,12 +274,12 @@ export function CaseList(props) {
|
|
|
275
274
|
return;
|
|
276
275
|
}
|
|
277
276
|
/*** user comes to this point on first time app load landing on case list ***/
|
|
278
|
-
if (
|
|
277
|
+
if (searchParams.rhcd) {
|
|
279
278
|
// this is to check if rhcd is passed on first load
|
|
280
|
-
setRHCDValue(
|
|
279
|
+
setRHCDValue(searchParams.rhcd);
|
|
281
280
|
}
|
|
282
281
|
// set filter state based on url or default saved search
|
|
283
|
-
const { initFilterState, defaultSearchName } = useFilterStateInit.set(queryFromUrl, pageSizeFromUrl, currentPageFromUrl, searchType);
|
|
282
|
+
const { initFilterState, defaultSearchName } = useFilterStateInit.set(decodeURIComponent(queryFromUrl), pageSizeFromUrl, currentPageFromUrl, searchType);
|
|
284
283
|
setDefaultSavedSearchName(defaultSearchName);
|
|
285
284
|
// set default params when they are empty
|
|
286
285
|
if (!queryFromUrl) {
|
|
@@ -332,7 +331,7 @@ export function CaseList(props) {
|
|
|
332
331
|
React.createElement(Alert, { isInline: true, variant: AlertVariant.warning, title: React.createElement(Trans, null,
|
|
333
332
|
"Case search is working with limited functionality. Please check",
|
|
334
333
|
' ',
|
|
335
|
-
React.createElement("a", { href: "https://status.redhat.com", target: "_blank", rel: "noreferrer" }, "status page"),
|
|
334
|
+
React.createElement("a", { href: "https://status.redhat.com", target: "_blank", rel: "noreferrer", "data-tracking-id": "caselist-redirect-status-page" }, "status page"),
|
|
336
335
|
' ',
|
|
337
336
|
"for details.") }))),
|
|
338
337
|
React.createElement("section", { className: "case-search-top" },
|
package/lib/esm/components/case-list/case-list-filters/AccountsBookmarkedGroupFilter.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AccountsBookmarkedGroupFilter.d.ts","sourceRoot":"","sources":["../../../../../src/components/case-list/case-list-filters/AccountsBookmarkedGroupFilter.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"AccountsBookmarkedGroupFilter.d.ts","sourceRoot":"","sources":["../../../../../src/components/case-list/case-list-filters/AccountsBookmarkedGroupFilter.tsx"],"names":[],"mappings":"AAkBA,eAAO,MAAM,YAAY,eAAgB,MAAM,gBAS9C,CAAC;AAEF,UAAU,MAAM;IACZ,uBAAuB,EAAE,OAAO,CAAC;IACjC,wBAAwB,EAAE,OAAO,CAAC;IAClC,yBAAyB,EAAE,OAAO,CAAC;CACtC;AAOD,eAAO,MAAM,QAAQ,cAAe,MAAM,eAAe,MAAM,WACiB,CAAC;AAEjF,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,MAAM,eAgJ1D"}
|
|
@@ -2,7 +2,11 @@ import { Label, Select, SelectOption, SelectVariant, Tooltip } from '@patternfly
|
|
|
2
2
|
import InfoCircleIcon from '@patternfly/react-icons/dist/js/icons/info-circle-icon';
|
|
3
3
|
import { GlobalMetadataStateContext } from '@rh-support/react-context';
|
|
4
4
|
import { getDropdownBtnPlaceholder } from '@rh-support/utils';
|
|
5
|
-
import
|
|
5
|
+
import groupBy from 'lodash/groupBy';
|
|
6
|
+
import isEmpty from 'lodash/isEmpty';
|
|
7
|
+
import isEqual from 'lodash/isEqual';
|
|
8
|
+
import some from 'lodash/some';
|
|
9
|
+
import sortBy from 'lodash/sortBy';
|
|
6
10
|
import React, { useContext, useMemo, useState } from 'react';
|
|
7
11
|
import { Trans, useTranslation } from 'react-i18next';
|
|
8
12
|
import { Link } from 'react-router-dom';
|
|
@@ -10,7 +10,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
10
10
|
import { accounts } from '@cee-eng/hydrajs';
|
|
11
11
|
import { AccountSelectorInternal } from '@rh-support/react-context';
|
|
12
12
|
import { getDropdownBtnPlaceholder } from '@rh-support/utils';
|
|
13
|
-
import
|
|
13
|
+
import differenceBy from 'lodash/differenceBy';
|
|
14
14
|
import filter from 'lodash/filter';
|
|
15
15
|
import remove from 'lodash/remove';
|
|
16
16
|
import uniqBy from 'lodash/uniqBy';
|
|
@@ -35,7 +35,7 @@ export const CaseListFilters = ({ filterValues, allCaseTypes, allCaseSeverities,
|
|
|
35
35
|
canAccessProductsFilter && (React.createElement(ProductsFilter, { filterValues: get(filterValues, SolrKeys.product, []), isSolrSearchDown: isSolrSearchDown, allProducts: ((_a = allProducts.data) === null || _a === void 0 ? void 0 : _a.productsResult.map((p) => p.product)) || [] })),
|
|
36
36
|
canAccessSeverityFilter && (React.createElement(SeverityFilter, { filterValues: get(filterValues, SolrKeys.severity, []), isSolrSearchDown: isSolrSearchDown, allCaseSeverities: allCaseSeverities.data })),
|
|
37
37
|
canAccessStatusFilter && (React.createElement(StatusFilter, { filterValues: get(filterValues, SolrKeys.status, []), allCaseStatuses: allCaseStatuses.data, isSolrSearchDown: isSolrSearchDown })),
|
|
38
|
-
!isSolrSearchDown && canAccessCreatorFilter && React.createElement(CreatorSsoNameFilter, null),
|
|
39
38
|
!isSolrSearchDown && canAccessTypeFilter && React.createElement(TypeFilter, { allCaseTypes: allCaseTypes.data }),
|
|
39
|
+
!isSolrSearchDown && canAccessCreatorFilter && React.createElement(CreatorSsoNameFilter, null),
|
|
40
40
|
!isSolrSearchDown && canAccessAdditionalFilter && React.createElement(AdditionalFilters, null))));
|
|
41
41
|
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Checkbox, Select, SelectOption, SelectVariant } from '@patternfly/react-core';
|
|
2
2
|
import { getDropdownBtnPlaceholder } from '@rh-support/utils';
|
|
3
|
-
import
|
|
3
|
+
import isUndefined from 'lodash/isUndefined';
|
|
4
4
|
import React, { useContext, useState } from 'react';
|
|
5
5
|
import { useTranslation } from 'react-i18next';
|
|
6
6
|
import { SolrKeys, SolrPivotKeys } from '../../../enums/filters';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VersionsFilter.d.ts","sourceRoot":"","sources":["../../../../../src/components/case-list/case-list-filters/VersionsFilter.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAEtD,OAAO,EAAE,cAAc,EAAgB,MAAM,0BAA0B,CAAC;AAMxE,UAAU,MAAM;IACZ,WAAW,EAAE,cAAc,CAAC;IAC5B,mBAAmB,EAAE,uBAAuB,EAAE,CAAC;CAClD;AAED,wBAAgB,cAAc,CAAC,EAAE,WAAW,EAAE,mBAAmB,EAAE,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"VersionsFilter.d.ts","sourceRoot":"","sources":["../../../../../src/components/case-list/case-list-filters/VersionsFilter.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAEtD,OAAO,EAAE,cAAc,EAAgB,MAAM,0BAA0B,CAAC;AAMxE,UAAU,MAAM;IACZ,WAAW,EAAE,cAAc,CAAC;IAC5B,mBAAmB,EAAE,uBAAuB,EAAE,CAAC;CAClD;AAED,wBAAgB,cAAc,CAAC,EAAE,WAAW,EAAE,mBAAmB,EAAE,EAAE,MAAM,eA4D1E"}
|
|
@@ -33,5 +33,5 @@ export function VersionsFilter({ productInfo, productVersionPivot }) {
|
|
|
33
33
|
const titleId = 'case-list-versions-filter';
|
|
34
34
|
return (React.createElement(React.Fragment, null, !isEmpty(versions) && (React.createElement(React.Fragment, null,
|
|
35
35
|
React.createElement("label", { hidden: true, htmlFor: titleId }, t('Open versions dropdown')),
|
|
36
|
-
React.createElement(Select, { variant: SelectVariant.checkbox, "aria-label": t('Version'), onToggle: toggleIsOpen, onSelect: onFilterChange, selections: productInfo.case_version.map((ver) => ver.value), isOpen: isOpen, placeholderText: 'Version', isCheckboxSelectionBadgeHidden: true, "aria-labelledby": titleId, "data-tracking-id": "versions-filter", hasPlaceholderStyle: true }, (versions || []).map((filterValue) => (React.createElement(SelectOption, { key: filterValue.value, value: filterValue.value, component: "div" }))))))));
|
|
36
|
+
React.createElement(Select, { className: "version-filter-chip", variant: SelectVariant.checkbox, "aria-label": t('Version'), onToggle: toggleIsOpen, onSelect: onFilterChange, selections: productInfo.case_version.map((ver) => ver.value), isOpen: isOpen, placeholderText: 'Version', isCheckboxSelectionBadgeHidden: true, "aria-labelledby": titleId, "data-tracking-id": "versions-filter", hasPlaceholderStyle: true }, (versions || []).map((filterValue) => (React.createElement(SelectOption, { key: filterValue.value, value: filterValue.value, component: "div" }))))))));
|
|
37
37
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CaseListTable.d.ts","sourceRoot":"","sources":["../../../../../src/components/case-list/case-list-table/CaseListTable.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,+CAA+C,CAAC;AA6B3E,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AAWxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAE7D,OAAO,EAEH,eAAe,EACf,SAAS,EAIZ,MAAM,0BAA0B,CAAC;AA2BlC,UAAU,MAAM;IACZ,QAAQ,EAAE,aAAa,CAAC,iBAAiB,CAAC,CAAC;IAC3C,UAAU,EAAE,UAAU,EAAE,CAAC;IACzB,kBAAkB,EAAE,QAAQ,CAAC;IAC7B,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,cAAc,CAAC,EAAE,eAAe,CAAC;IACjC,qBAAqB,EAAE,OAAO,CAAC;IAC/B,QAAQ,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"CaseListTable.d.ts","sourceRoot":"","sources":["../../../../../src/components/case-list/case-list-table/CaseListTable.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,+CAA+C,CAAC;AA6B3E,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AAWxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAE7D,OAAO,EAEH,eAAe,EACf,SAAS,EAIZ,MAAM,0BAA0B,CAAC;AA2BlC,UAAU,MAAM;IACZ,QAAQ,EAAE,aAAa,CAAC,iBAAiB,CAAC,CAAC;IAC3C,UAAU,EAAE,UAAU,EAAE,CAAC;IACzB,kBAAkB,EAAE,QAAQ,CAAC;IAC7B,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,cAAc,CAAC,EAAE,eAAe,CAAC;IACjC,qBAAqB,EAAE,OAAO,CAAC;IAC/B,QAAQ,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,eAiX1C"}
|
|
@@ -75,7 +75,7 @@ export function CaseListTable(props) {
|
|
|
75
75
|
},
|
|
76
76
|
{
|
|
77
77
|
id: CaseListColumnIds.summary,
|
|
78
|
-
cellWidth:
|
|
78
|
+
cellWidth: 10,
|
|
79
79
|
title: t('Issue summary'),
|
|
80
80
|
sortable: true,
|
|
81
81
|
accessor: (data) => data.case_summary,
|
|
@@ -170,6 +170,7 @@ export function CaseListTable(props) {
|
|
|
170
170
|
},
|
|
171
171
|
{
|
|
172
172
|
id: CaseListColumnIds.group,
|
|
173
|
+
cellWidth: 10,
|
|
173
174
|
title: t('Group'),
|
|
174
175
|
sortable: true,
|
|
175
176
|
accessor: (data) => data.case_folderName || getCaseGroupName(data.case_folderNumber),
|
|
@@ -8,7 +8,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
8
8
|
});
|
|
9
9
|
};
|
|
10
10
|
import { publicApi } from '@cee-eng/hydrajs';
|
|
11
|
-
import { Button } from '@patternfly/react-core';
|
|
11
|
+
import { Button, Spinner } from '@patternfly/react-core';
|
|
12
12
|
import { ToastNotification, useFetch } from '@rh-support/components';
|
|
13
13
|
import { GlobalMetadataStateContext } from '@rh-support/react-context';
|
|
14
14
|
import { downloadCSV, formatDateTime, toNewCaseTypeSwitcher } from '@rh-support/utils';
|
|
@@ -90,7 +90,7 @@ export function ExportCaseListCSV(props) {
|
|
|
90
90
|
ToastNotification.addDangerMessage(t('Could not export CSV'));
|
|
91
91
|
}
|
|
92
92
|
});
|
|
93
|
-
const partnerSearch = loggedInUserRights.data.
|
|
93
|
+
const partnerSearch = loggedInUserRights.data.isPartner();
|
|
94
94
|
// CSV For Normal Users
|
|
95
95
|
const onExportCSVClick = () => __awaiter(this, void 0, void 0, function* () {
|
|
96
96
|
try {
|
|
@@ -115,5 +115,5 @@ export function ExportCaseListCSV(props) {
|
|
|
115
115
|
return (React.createElement("span", { title: (props.isExportCsvDisabled && getTooltipContent()) || '' },
|
|
116
116
|
React.createElement(Button, { variant: "tertiary", isDisabled: isBtnDisabled || props.isExportCsvDisabled, onClick: loggedInUsersAccount.data.secureSupport ? onExportCSVClickSecureSupport : onExportCSVClick, title: btnTitle, "data-tracking-id": "case-list-toolbar-export-csv" }, isFetchingCSVData ? (React.createElement(React.Fragment, null,
|
|
117
117
|
React.createElement(Trans, null, "Exporting CSV"),
|
|
118
|
-
React.createElement(
|
|
118
|
+
React.createElement(Spinner, { isSVG: true, size: "md", "aria-label": "loading", className: "export-csv-loader pf-u-ml-xs" }))) : (React.createElement(Trans, null, "Export CSV")))));
|
|
119
119
|
}
|
|
@@ -5,6 +5,7 @@ interface IProps {
|
|
|
5
5
|
onSearchClear?: () => void;
|
|
6
6
|
onSearchSubmit: (type: CaseSearchQueryType, parsedQuery: string) => void;
|
|
7
7
|
onAdvancedSearchValidation: (validation: boolean) => void;
|
|
8
|
+
isSearchDisabled?: boolean;
|
|
8
9
|
}
|
|
9
10
|
export declare function AdvanceSearch(props: IProps): JSX.Element;
|
|
10
11
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AdvanceSearch.d.ts","sourceRoot":"","sources":["../../../../../src/components/case-list/case-search/AdvanceSearch.tsx"],"names":[],"mappings":"AAOA,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAIhE,UAAU,MAAM;IACZ,iBAAiB,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7C,kBAAkB,CAAC,EAAE,CAAC,OAAO,EAAE,mBAAmB,KAAK,IAAI,CAAC;IAC5D,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;IAC3B,cAAc,EAAE,CAAC,IAAI,EAAE,mBAAmB,EAAE,WAAW,EAAE,MAAM,KAAK,IAAI,CAAC;IACzE,0BAA0B,EAAE,CAAC,UAAU,EAAE,OAAO,KAAK,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"AdvanceSearch.d.ts","sourceRoot":"","sources":["../../../../../src/components/case-list/case-search/AdvanceSearch.tsx"],"names":[],"mappings":"AAOA,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAIhE,UAAU,MAAM;IACZ,iBAAiB,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7C,kBAAkB,CAAC,EAAE,CAAC,OAAO,EAAE,mBAAmB,KAAK,IAAI,CAAC;IAC5D,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;IAC3B,cAAc,EAAE,CAAC,IAAI,EAAE,mBAAmB,EAAE,WAAW,EAAE,MAAM,KAAK,IAAI,CAAC;IACzE,0BAA0B,EAAE,CAAC,UAAU,EAAE,OAAO,KAAK,IAAI,CAAC;IAC1D,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,eA8S1C"}
|
|
@@ -163,6 +163,10 @@ export function AdvanceSearch(props) {
|
|
|
163
163
|
}
|
|
164
164
|
setSelectedItemIndex(nextId);
|
|
165
165
|
};
|
|
166
|
+
// To determine if search button is enabled or not
|
|
167
|
+
const isAdvancedSearchButtonDisabled = props.isSearchDisabled ||
|
|
168
|
+
(isEmpty(inputString) && isEmpty(filterQueryInfo === null || filterQueryInfo === void 0 ? void 0 : filterQueryInfo.parsedQuery)) ||
|
|
169
|
+
!isParsingSuccessful;
|
|
166
170
|
const onKeyDown = (e) => {
|
|
167
171
|
setIsAutoCompleteListVisible(true);
|
|
168
172
|
const whichKey = e.which;
|
|
@@ -180,7 +184,7 @@ export function AdvanceSearch(props) {
|
|
|
180
184
|
}
|
|
181
185
|
else if (whichKey === 13) {
|
|
182
186
|
//key ENTER
|
|
183
|
-
if (e.ctrlKey) {
|
|
187
|
+
if (e.ctrlKey && !isAdvancedSearchButtonDisabled) {
|
|
184
188
|
onSearchSubmit();
|
|
185
189
|
}
|
|
186
190
|
else {
|
|
@@ -215,7 +219,7 @@ export function AdvanceSearch(props) {
|
|
|
215
219
|
React.createElement(TimesCircleIcon, null)))),
|
|
216
220
|
isAutoCompleteListVisible && (React.createElement("ul", { className: "pf-c-select__menu", "aria-labelledby": "advance-search-typeahead-label", role: "listbox" }, autoCompleteList.map((item, index) => (React.createElement("li", { key: index, role: "presentation", className: `pf-c-select__menu-wrapper ${selectedItemIndex === index ? 'pf-m-focus' : ''}` },
|
|
217
221
|
React.createElement("button", { type: "button", onClick: (e) => onItemClick(item.value), className: "pf-c-select__menu-item", "aria-selected": selectedItemIndex === index ? true : false, role: "option" }, item.display))))))),
|
|
218
|
-
React.createElement(Button, { type: "button", variant: "primary", "data-tracking-id": "case-list-adv-search-button", className: "pf-u-ml-sm", onClick: onSearchSubmit, isDisabled:
|
|
222
|
+
React.createElement(Button, { type: "button", variant: "primary", "data-tracking-id": "case-list-adv-search-button", className: "pf-u-ml-sm", onClick: onSearchSubmit, isDisabled: isAdvancedSearchButtonDisabled },
|
|
219
223
|
React.createElement(Trans, null, "Search")),
|
|
220
224
|
React.createElement(Button, { variant: "link", onClick: onBasicClick, "data-tracking-id": "case-list-basic-toggle-button" },
|
|
221
225
|
React.createElement(Trans, null, "Basic")),
|
|
@@ -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,CAAC,EAAE,MAAM,CAAC;CACnC;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,CAAC,EAAE,MAAM,CAAC;CACnC;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,eA0LvC"}
|
|
@@ -76,14 +76,19 @@ export function CaseSearch(props) {
|
|
|
76
76
|
// To handle return or enter keydown event when search button is disabled
|
|
77
77
|
const handleSearchInputKeyDown = (e) => {
|
|
78
78
|
const key = e.which;
|
|
79
|
-
if (key === 13
|
|
80
|
-
|
|
81
|
-
|
|
79
|
+
if (key === 13) {
|
|
80
|
+
if (isSearchButtonDisabled) {
|
|
81
|
+
e.preventDefault();
|
|
82
|
+
return;
|
|
83
|
+
}
|
|
84
|
+
else {
|
|
85
|
+
onCaseSearch();
|
|
86
|
+
}
|
|
82
87
|
}
|
|
83
88
|
};
|
|
84
89
|
const handleSubmit = (ev) => {
|
|
85
90
|
ev.preventDefault();
|
|
86
|
-
//
|
|
91
|
+
// For advance search submit should only happen on btn click or ctrl+enter which will be handled manually
|
|
87
92
|
getType() === CaseSearchQueryType.BASIC && onCaseSearch();
|
|
88
93
|
};
|
|
89
94
|
const renderBasicSearch = () => {
|
|
@@ -97,7 +102,7 @@ export function CaseSearch(props) {
|
|
|
97
102
|
};
|
|
98
103
|
const renderAdvanceSearch = () => {
|
|
99
104
|
return canUseAdvancedSearch ? (React.createElement(React.Fragment, null,
|
|
100
|
-
React.createElement(AdvanceSearch, { onSearchValChange: onSearchValChange, onSearchClear: clearAdvancedSearchVal, onSearchSubmit: onCaseSearchAdvanced, onSearchTypeChange: onSearchTypeChange, onAdvancedSearchValidation: (isValid) => setIsAdvancedSearchValid(isValid) }))) : (React.createElement(React.Fragment, null));
|
|
105
|
+
React.createElement(AdvanceSearch, { isSearchDisabled: isSearchButtonDisabled, onSearchValChange: onSearchValChange, onSearchClear: clearAdvancedSearchVal, onSearchSubmit: onCaseSearchAdvanced, onSearchTypeChange: onSearchTypeChange, onAdvancedSearchValidation: (isValid) => setIsAdvancedSearchValid(isValid) }))) : (React.createElement(React.Fragment, null));
|
|
101
106
|
};
|
|
102
107
|
return (React.createElement(React.Fragment, null,
|
|
103
108
|
React.createElement("form", { onSubmit: handleSubmit, onKeyDown: handleSearchInputKeyDown },
|
|
@@ -21,8 +21,8 @@ import { CaseSearchQueryType } from '../../../enums/caseSearch';
|
|
|
21
21
|
import { createUserFriendlyQueryFromFilterState } from '../../../utils/caseSearchUtils';
|
|
22
22
|
import { CaseListFilterStateContext } from '../CaseListFilterContext';
|
|
23
23
|
const directionMap = {
|
|
24
|
-
asc: '
|
|
25
|
-
desc: '
|
|
24
|
+
asc: 'Ascending',
|
|
25
|
+
desc: 'Descending',
|
|
26
26
|
};
|
|
27
27
|
export function SaveCaseSearchModal({ isModalOpen, modalToggle, isAdding, selectedSearchNameToEdit, currentCaseSearchString, currentSearchType, clearSearchName, }) {
|
|
28
28
|
const { t } = useTranslation();
|
|
@@ -98,7 +98,7 @@ export declare enum SFDCKeys {
|
|
|
98
98
|
groupNumber = "groupNumber",
|
|
99
99
|
groupName = "groupName",
|
|
100
100
|
alternateId = "alternateId",
|
|
101
|
-
caseType = "
|
|
101
|
+
caseType = "caseType",
|
|
102
102
|
caseClosedDate = "lastClosedAt"
|
|
103
103
|
}
|
|
104
104
|
export declare const sfdcFieldToSolrMap: {
|
|
@@ -121,7 +121,7 @@ export declare const sfdcFieldToSolrMap: {
|
|
|
121
121
|
groupNumber: SolrKeys;
|
|
122
122
|
groupName: SolrKeys;
|
|
123
123
|
alternateId: SolrKeys;
|
|
124
|
-
|
|
124
|
+
caseType: SolrKeys;
|
|
125
125
|
lastClosedAt: SolrKeys;
|
|
126
126
|
};
|
|
127
127
|
export declare const AdditionalFilterLabels: {
|
|
@@ -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,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,
|
|
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
|
@@ -65,7 +65,7 @@ export const advancedSearchMap = {
|
|
|
65
65
|
case_description: 'description',
|
|
66
66
|
uri: 'uri',
|
|
67
67
|
case_24_7: 'FTS',
|
|
68
|
-
case_type: '
|
|
68
|
+
case_type: 'caseType',
|
|
69
69
|
case_is_cep: 'CEP',
|
|
70
70
|
case_alternate_id: 'personalReferenceNumber',
|
|
71
71
|
case_closedDate: 'closedDate',
|
|
@@ -103,7 +103,7 @@ export var SFDCKeys;
|
|
|
103
103
|
SFDCKeys["groupNumber"] = "groupNumber";
|
|
104
104
|
SFDCKeys["groupName"] = "groupName";
|
|
105
105
|
SFDCKeys["alternateId"] = "alternateId";
|
|
106
|
-
SFDCKeys["caseType"] = "
|
|
106
|
+
SFDCKeys["caseType"] = "caseType";
|
|
107
107
|
SFDCKeys["caseClosedDate"] = "lastClosedAt";
|
|
108
108
|
})(SFDCKeys || (SFDCKeys = {}));
|
|
109
109
|
export const sfdcFieldToSolrMap = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useFilterStateOnLoad.d.ts","sourceRoot":"","sources":["../../../src/hooks/useFilterStateOnLoad.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"useFilterStateOnLoad.d.ts","sourceRoot":"","sources":["../../../src/hooks/useFilterStateOnLoad.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAI1D,wBAAgB,oBAAoB;wBAkBd,MAAM,mBACH,MAAM,sBACH,MAAM,cACd,mBAAmB;;;;EA+DtC"}
|
|
@@ -11,23 +11,27 @@ export function useFilterStateOnLoad() {
|
|
|
11
11
|
const savesSearches = find(hydraUserPreferences.data, (pref) => pref.key === UserPreferencesKeys.caseSavedSearchFilters);
|
|
12
12
|
const savedSearchesObj = useMemo(() => ((savesSearches === null || savesSearches === void 0 ? void 0 : savesSearches.value) ? JSON.parse(savesSearches.value) : {}), [savesSearches]);
|
|
13
13
|
const set = (queryFromUrl, pageSizeFromUrl, currentPageFromUrl, searchType) => {
|
|
14
|
-
const filterStateFromURL = createFilterStateFromUrlQuery(queryFromUrl, globalMetadataState, pageSizeFromUrl, currentPageFromUrl, searchType);
|
|
15
14
|
let savedSearchFilterState = null;
|
|
16
15
|
const defaultSavedSearchKey = findKey(savedSearchesObj, { defaultChecked: true });
|
|
17
16
|
if (defaultSavedSearchKey) {
|
|
18
17
|
const { filterState: filterStateSaved, queryString, type, sortState, } = savedSearchesObj[defaultSavedSearchKey];
|
|
19
18
|
savedSearchFilterState = Object.assign(Object.assign({}, filterState), { sortInfo: sortState, filterQueryInfo: Object.assign(Object.assign({}, filterState.filterQueryInfo), { queryString, type }), filterInfo: Object.assign(Object.assign({}, initialCaseFilterState.filterInfo), filterStateSaved) });
|
|
20
19
|
}
|
|
21
|
-
let defaultFilterState = queryFromUrl
|
|
22
|
-
? filterStateFromURL
|
|
23
|
-
: savedSearchFilterState
|
|
24
|
-
? savedSearchFilterState
|
|
25
|
-
: filterState;
|
|
26
20
|
const defaultGroup = (caseGroups.data || []).find((group) => group.isDefault);
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
21
|
+
const [urlQuery] = (queryFromUrl || '').split(/ orderBy /i);
|
|
22
|
+
/**
|
|
23
|
+
When user lands on page for the first time:
|
|
24
|
+
If we have any query in url(for example redirect from dashboard), we apply the query, if not
|
|
25
|
+
check if user has any saved search then we apply the save search, if not
|
|
26
|
+
check if user has default group the apply group filter,
|
|
27
|
+
non of the above, we apply default search values
|
|
28
|
+
*/
|
|
29
|
+
let defaultFilterState = urlQuery && urlQuery !== 'undefined'
|
|
30
|
+
? createFilterStateFromUrlQuery(queryFromUrl, globalMetadataState, pageSizeFromUrl, currentPageFromUrl, searchType)
|
|
31
|
+
: defaultSavedSearchKey
|
|
32
|
+
? savedSearchFilterState
|
|
33
|
+
: !!(defaultGroup === null || defaultGroup === void 0 ? void 0 : defaultGroup.name)
|
|
34
|
+
? Object.assign(Object.assign({}, filterState), { filterInfo: Object.assign(Object.assign({}, filterState.filterInfo), { [SolrKeys.group]: [{ key: defaultGroup.groupNum, value: defaultGroup.name }] }) }) : filterState;
|
|
31
35
|
return {
|
|
32
36
|
initFilterState: defaultFilterState,
|
|
33
37
|
defaultSearchName: defaultSavedSearchKey && !queryFromUrl ? defaultSavedSearchKey : '',
|
|
@@ -44,7 +44,7 @@ export function getCaseList(filterState, loggedInUser, loggedInUserAccount, abor
|
|
|
44
44
|
let showErrorMessage = false;
|
|
45
45
|
let caseListResponse;
|
|
46
46
|
const solrFilter = createSolrQueryFromFilterState(filterState, loggedInUser);
|
|
47
|
-
const partnerSearch = loggedInUser.
|
|
47
|
+
const partnerSearch = loggedInUser.isPartner();
|
|
48
48
|
//sfdc returns wrong result, for now only call sfdc when we have no filter applied
|
|
49
49
|
const isSfdcSearchRequired = isNoFilterApplied(filterState) &&
|
|
50
50
|
!filterState.filterQueryInfo.queryString &&
|
|
@@ -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;AAkBxD,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,UA2BnC;AAED,iBAAS,oDAAoD,CAAC,UAAU,EAAE,OAAO,CAAC,WAAW,CAAC,EAAE,WAAW,EAAE,MAAM,UAsDlH;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,CAuD1B;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,wBA+DxD;
|
|
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;AAkBxD,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,UA2BnC;AAED,iBAAS,oDAAoD,CAAC,UAAU,EAAE,OAAO,CAAC,WAAW,CAAC,EAAE,WAAW,EAAE,MAAM,UAsDlH;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,CAuD1B;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,wBA+DxD;AA0KD,OAAO,EACH,8BAA8B,EAC9B,sCAAsC,EACtC,oDAAoD,EACpD,yBAAyB,EACzB,8BAA8B,EAC9B,6BAA6B,EAC7B,6BAA6B,EAC7B,6BAA6B,EAC7B,wCAAwC,EACxC,kCAAkC,GACrC,CAAC"}
|
|
@@ -396,7 +396,9 @@ function createFilterStateFromAdvancedQuery(queryString, globalMetadataState, cu
|
|
|
396
396
|
return filterState;
|
|
397
397
|
}
|
|
398
398
|
function generateFilterValue(solrFieldName, value, globalMetadataState, isAdvancedSearch = false) {
|
|
399
|
-
|
|
399
|
+
let valueArr = Array.isArray(value) ? value : value ? [value] : [];
|
|
400
|
+
if (solrFieldName === SolrKeys.type)
|
|
401
|
+
valueArr = toOldCaseTypeMapper(valueArr);
|
|
400
402
|
return isAdvancedSearch
|
|
401
403
|
? getValidValuesAdvancedSearch(solrFieldName, valueArr, globalMetadataState)
|
|
402
404
|
: getValidValues(solrFieldName, valueArr, globalMetadataState);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@rh-support/cases",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.7-beta.1",
|
|
4
4
|
"publishConfig": {
|
|
5
5
|
"access": "public",
|
|
6
6
|
"registry": "https://registry.npmjs.org"
|
|
@@ -26,18 +26,13 @@
|
|
|
26
26
|
"lib/**/*"
|
|
27
27
|
],
|
|
28
28
|
"peerDependencies": {
|
|
29
|
-
"@cee-eng/hydrajs": "4.
|
|
29
|
+
"@cee-eng/hydrajs": "4.16.4",
|
|
30
30
|
"@patternfly/patternfly": "4.196.7",
|
|
31
31
|
"@patternfly/pfe-collapse": "1.12.3",
|
|
32
32
|
"@patternfly/react-core": "4.264.0",
|
|
33
33
|
"@patternfly/react-table": "4.111.33",
|
|
34
|
-
"@rh-support/components": "^0.1.3",
|
|
35
|
-
"@rh-support/react-context": "^0.1.3",
|
|
36
|
-
"@rh-support/types": "^0.1.3",
|
|
37
|
-
"@rh-support/user-permissions": "^0.1.3",
|
|
38
|
-
"@rh-support/utils": "^0.1.3",
|
|
39
34
|
"i18next": "^19.0.1",
|
|
40
|
-
"localforage": "^1.
|
|
35
|
+
"localforage": "^1.10.0",
|
|
41
36
|
"lodash": "^4.17.21",
|
|
42
37
|
"react": "17.0.2",
|
|
43
38
|
"react-dom": "17.0.2",
|
|
@@ -46,18 +41,18 @@
|
|
|
46
41
|
"solr-query-builder": "1.0.1"
|
|
47
42
|
},
|
|
48
43
|
"dependencies": {
|
|
49
|
-
"@cee-eng/hydrajs": "4.
|
|
44
|
+
"@cee-eng/hydrajs": "4.16.4",
|
|
50
45
|
"@patternfly/patternfly": "4.196.7",
|
|
51
46
|
"@patternfly/pfe-collapse": "1.12.3",
|
|
52
47
|
"@patternfly/react-core": "4.264.0",
|
|
53
48
|
"@patternfly/react-table": "4.111.33",
|
|
54
|
-
"@rh-support/components": "2.0.
|
|
55
|
-
"@rh-support/react-context": "2.0.
|
|
56
|
-
"@rh-support/types": "2.0.
|
|
57
|
-
"@rh-support/user-permissions": "2.0.
|
|
58
|
-
"@rh-support/utils": "2.0.
|
|
49
|
+
"@rh-support/components": "2.0.7-beta.1",
|
|
50
|
+
"@rh-support/react-context": "2.0.7-beta-1",
|
|
51
|
+
"@rh-support/types": "2.0.2",
|
|
52
|
+
"@rh-support/user-permissions": "2.0.3-beta-1",
|
|
53
|
+
"@rh-support/utils": "2.0.1-beta-1",
|
|
59
54
|
"i18next": "^19.0.1",
|
|
60
|
-
"localforage": "^1.
|
|
55
|
+
"localforage": "^1.10.0",
|
|
61
56
|
"lodash": "^4.17.21",
|
|
62
57
|
"pegjs": "^0.10.0",
|
|
63
58
|
"react": "17.0.2",
|
|
@@ -87,7 +82,7 @@
|
|
|
87
82
|
"test:watch": "./../../node_modules/.bin/jest --watchAll -c ./../../configs/tests/jest.config.unit.js",
|
|
88
83
|
"test:unit": "./../../node_modules/.bin/jest -c ./../../configs/tests/jest.config.unit.js",
|
|
89
84
|
"test:snap": "./../../node_modules/.bin/jest -c ./../../configs/tests/jest.config.snapshot.js",
|
|
90
|
-
"test:coverage": "./../../node_modules/.bin/jest --passWithNoTests -c ./../../configs/tests/jest.config.coverage.js",
|
|
85
|
+
"test:coverage": "./../../node_modules/.bin/jest --passWithNoTests --all -c ./../../configs/tests/jest.config.coverage.js",
|
|
91
86
|
"test:changes": "./../../node_modules/.bin/jest --passWithNoTests -c ./../../configs/tests/jest-only-changed-from-upstream.js",
|
|
92
87
|
"test": "npm run test:changes",
|
|
93
88
|
"watch:css": "./../../node_modules/.bin/chokidar 'src/**/*.(css|scss)' -c '../../node_modules/.bin/copyfiles -V -u 1 -a {path} lib/esm'",
|
|
@@ -95,9 +90,8 @@
|
|
|
95
90
|
"prepublishOnly": "npm run build"
|
|
96
91
|
},
|
|
97
92
|
"browserslist": [
|
|
98
|
-
"
|
|
99
|
-
"
|
|
100
|
-
"not op_mini all"
|
|
93
|
+
"defaults and supports es6-module",
|
|
94
|
+
"maintained node versions"
|
|
101
95
|
],
|
|
102
|
-
"gitHead": "
|
|
96
|
+
"gitHead": "c382d611cbe5e1520adb25c9a9d0737b80a09748"
|
|
103
97
|
}
|