@rh-support/cases 0.2.42 → 0.2.46
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/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 +2 -0
- package/lib/esm/components/case-list/case-search/BookmarkedSearchesSelector.d.ts +1 -0
- package/lib/esm/components/case-list/case-search/BookmarkedSearchesSelector.d.ts.map +1 -1
- package/lib/esm/components/case-list/case-search/BookmarkedSearchesSelector.js +7 -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 +3 -2
- package/lib/esm/components/case-list/case-search/SaveCaseSearchModal.d.ts +3 -1
- package/lib/esm/components/case-list/case-search/SaveCaseSearchModal.d.ts.map +1 -1
- package/lib/esm/components/case-list/case-search/SaveCaseSearchModal.js +8 -10
- package/lib/esm/components/case-list/case-search/useAdvanceSearchParser.d.ts.map +1 -1
- package/lib/esm/components/case-list/case-search/useAdvanceSearchParser.js +6 -1
- package/package.json +8 -8
|
@@ -4,6 +4,7 @@ interface IProps {
|
|
|
4
4
|
onSearchTypeChange?: (newType: CaseSearchQueryType) => void;
|
|
5
5
|
onSearchClear?: () => void;
|
|
6
6
|
onSearchSubmit: (parsedQuery: string) => void;
|
|
7
|
+
onAdvancedSearchValidation: (validation: boolean) => void;
|
|
7
8
|
}
|
|
8
9
|
export declare function AdvanceSearch(props: IProps): JSX.Element;
|
|
9
10
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AdvanceSearch.d.ts","sourceRoot":"","sources":["../../../../../src/components/case-list/case-search/AdvanceSearch.tsx"],"names":[],"mappings":"AAQA,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAMhE,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,WAAW,EAAE,MAAM,KAAK,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"AdvanceSearch.d.ts","sourceRoot":"","sources":["../../../../../src/components/case-list/case-search/AdvanceSearch.tsx"],"names":[],"mappings":"AAQA,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAMhE,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,WAAW,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9C,0BAA0B,EAAE,CAAC,UAAU,EAAE,OAAO,KAAK,IAAI,CAAC;CAC7D;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,eAwV1C"}
|
|
@@ -23,6 +23,7 @@ export function AdvanceSearch(props) {
|
|
|
23
23
|
try {
|
|
24
24
|
parse(queryString);
|
|
25
25
|
setIsParsingSuccessful(true);
|
|
26
|
+
props.onAdvancedSearchValidation(true);
|
|
26
27
|
try {
|
|
27
28
|
// to trigger the autocomplete on a valid selection
|
|
28
29
|
parse(queryString + ' ');
|
|
@@ -34,6 +35,7 @@ export function AdvanceSearch(props) {
|
|
|
34
35
|
}
|
|
35
36
|
catch (e) {
|
|
36
37
|
setIsParsingSuccessful(false);
|
|
38
|
+
props.onAdvancedSearchValidation(false);
|
|
37
39
|
parserErrorRef.current = e;
|
|
38
40
|
autoCompleteSetup(e.expected, queryString.substring(e.location.start.offset, queryString.length));
|
|
39
41
|
}
|
|
@@ -2,6 +2,7 @@ import { CaseSearchQueryType } from '../../../enums/caseSearch';
|
|
|
2
2
|
interface IProps {
|
|
3
3
|
currentCaseSearchString: string;
|
|
4
4
|
currentSearchType: CaseSearchQueryType;
|
|
5
|
+
isAdvancedSearchValid: boolean;
|
|
5
6
|
}
|
|
6
7
|
export declare function BookmarkedSearchesSelector(props: IProps): JSX.Element;
|
|
7
8
|
export {};
|
|
@@ -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;AAWhE,UAAU,MAAM;IACZ,uBAAuB,EAAE,MAAM,CAAC;IAChC,iBAAiB,EAAE,mBAAmB,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;AAWhE,UAAU,MAAM;IACZ,uBAAuB,EAAE,MAAM,CAAC;IAChC,iBAAiB,EAAE,mBAAmB,CAAC;IACvC,qBAAqB,EAAE,OAAO,CAAC;CAClC;AAED,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,MAAM,eAqNvD"}
|
|
@@ -10,6 +10,7 @@ import isEmpty from 'lodash/isEmpty';
|
|
|
10
10
|
import isEqual from 'lodash/isEqual';
|
|
11
11
|
import React, { useContext, useEffect, useRef, useState } from 'react';
|
|
12
12
|
import { Trans, useTranslation } from 'react-i18next';
|
|
13
|
+
import { CaseSearchQueryType } from '../../../enums/caseSearch';
|
|
13
14
|
import { CaseListFilterDispatchContext, CaseListFilterStateContext, initialCaseFilterState, } from '../CaseListFilterContext';
|
|
14
15
|
import { isNoFilterApplied, isOnlyDefaultFilterApplied } from '../CaseListFilterHelpers';
|
|
15
16
|
import { clearFilters, updateFilterQuery, updateFilterState, updateSort } from '../CaseListFilterReducer';
|
|
@@ -68,7 +69,7 @@ export function BookmarkedSearchesSelector(props) {
|
|
|
68
69
|
setSelectedSearch(selectedItem);
|
|
69
70
|
const { filterState: filterStateSaved, queryString, type, sortState } = searchQuery;
|
|
70
71
|
// update filters with new value
|
|
71
|
-
|
|
72
|
+
updateFilterQuery(dispatch, { queryString: queryString || '', type: type || CaseSearchQueryType.BASIC });
|
|
72
73
|
updateFilterState(dispatch, { filterInfo: Object.assign(Object.assign({}, initialCaseFilterState.filterInfo), filterStateSaved) });
|
|
73
74
|
sortState && updateSort(dispatch, sortState);
|
|
74
75
|
doToggle && toggleMenu(!isMenuOpen);
|
|
@@ -114,14 +115,16 @@ export function BookmarkedSearchesSelector(props) {
|
|
|
114
115
|
...(renderSavedSearchItems.length !== 0 ? [React.createElement(DropdownSeparator, { key: "separator" })] : []),
|
|
115
116
|
...(!isEmpty(mostRecentSearch) ? renderMostRecentSearch : []),
|
|
116
117
|
];
|
|
118
|
+
const advancedSearchPhraseIsNotValid = filterState.filterQueryInfo.type === CaseSearchQueryType.ADVANCED && !props.isAdvancedSearchValid;
|
|
119
|
+
const noFilterOrSearchQueryApplied = !props.currentCaseSearchString && (isOnlyDefaultFilterApplied(filterState) || isNoFilterApplied(filterState));
|
|
117
120
|
return (React.createElement(React.Fragment, null,
|
|
118
121
|
React.createElement("div", { className: "bookmark-search-dropdown-wrapper" },
|
|
119
122
|
React.createElement(Dropdown, { className: "bookmark-search-dropdown", isOpen: isMenuOpen, dropdownItems: renderListItems, toggle: React.createElement(DropdownToggle, { splitButtonItems: [
|
|
120
123
|
React.createElement(DropdownToggleAction, { onClick: onSaveForLaterClick, key: "action", isDisabled: !!selectedSearch ||
|
|
121
|
-
|
|
122
|
-
|
|
124
|
+
noFilterOrSearchQueryApplied ||
|
|
125
|
+
advancedSearchPhraseIsNotValid, "data-tracking-id": "case-list-bookmark-search-trigger" }, selectedSearch ? selectedSearch : React.createElement(Trans, null, "Save for later")),
|
|
123
126
|
], splitButtonVariant: "action", onToggle: onMenuToggle, "aria-label": t(`${isMenuOpen ? 'Close' : 'Open'} bookmarked searches selector'`), isDisabled: !bookmarkedSearches }), disabled: hydraUserPreferences.isFetching || hydraUserPreferences.isError }),
|
|
124
127
|
flatMap(filterInfo).length === 0 && (React.createElement(Button, { variant: "link", onClick: onBookmarkSelectorChange('', mostRecentSearch, false), "data-tracking-id": "case-most-recent-search-button", className: "most-recent-search-button" },
|
|
125
128
|
React.createElement(Trans, null, "Restore most recent filters")))),
|
|
126
|
-
React.createElement(ConfirmationServiceProvider, null, isSaveSearchModalOpen && (React.createElement(SaveCaseSearchModal, { isModalOpen: isSaveSearchModalOpen, modalToggle: modalToggle, isAdding: isAddingBookmarkSearch, selectedSearchNameToEdit: selectedSearchNameToEdit })))));
|
|
129
|
+
React.createElement(ConfirmationServiceProvider, null, isSaveSearchModalOpen && (React.createElement(SaveCaseSearchModal, { currentCaseSearchString: props.currentCaseSearchString, currentSearchType: props.currentSearchType, isModalOpen: isSaveSearchModalOpen, modalToggle: modalToggle, isAdding: isAddingBookmarkSearch, selectedSearchNameToEdit: selectedSearchNameToEdit })))));
|
|
127
130
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CaseSearch.d.ts","sourceRoot":"","sources":["../../../../../src/components/case-list/case-search/CaseSearch.tsx"],"names":[],"mappings":"AAeA,wBAAgB,UAAU,
|
|
1
|
+
{"version":3,"file":"CaseSearch.d.ts","sourceRoot":"","sources":["../../../../../src/components/case-list/case-search/CaseSearch.tsx"],"names":[],"mappings":"AAeA,wBAAgB,UAAU,gBAoJzB"}
|
|
@@ -19,6 +19,7 @@ export function CaseSearch() {
|
|
|
19
19
|
const { filterQueryInfo } = filterState;
|
|
20
20
|
const [searchVal, setSearchVal] = useState(filterQueryInfo.queryString);
|
|
21
21
|
const [searchType, setSearchType] = useState(CaseSearchQueryType.BASIC);
|
|
22
|
+
const [isAdvancedSearchValid, setIsAdvancedSearchValid] = useState(true);
|
|
22
23
|
const dispatch = useContext(CaseListFilterDispatchContext);
|
|
23
24
|
const { isFetching } = useCaseListStateContext();
|
|
24
25
|
useEffect(() => {
|
|
@@ -90,10 +91,10 @@ export function CaseSearch() {
|
|
|
90
91
|
};
|
|
91
92
|
const renderAdvanceSearch = () => {
|
|
92
93
|
return canUseAdvancedSearch ? (React.createElement(React.Fragment, null,
|
|
93
|
-
React.createElement(AdvanceSearch, { onSearchValChange: onSearchValChange, onSearchClear: clearSearchVal, onSearchSubmit: onCaseSearch, onSearchTypeChange: onSearchTypeChange }))) : (React.createElement(React.Fragment, null));
|
|
94
|
+
React.createElement(AdvanceSearch, { onSearchValChange: onSearchValChange, onSearchClear: clearSearchVal, onSearchSubmit: onCaseSearch, onSearchTypeChange: onSearchTypeChange, onAdvancedSearchValidation: (isValid) => setIsAdvancedSearchValid(isValid) }))) : (React.createElement(React.Fragment, null));
|
|
94
95
|
};
|
|
95
96
|
return (React.createElement(React.Fragment, null,
|
|
96
97
|
React.createElement("form", { onSubmit: handleSubmit, onKeyDown: handleSearchInputKeyDown },
|
|
97
98
|
React.createElement("div", { className: "form-group case-search-form-group" }, CaseSearchQueryType.BASIC === searchType ? renderBasicSearch() : renderAdvanceSearch())),
|
|
98
|
-
React.createElement(BookmarkedSearchesSelector, { currentCaseSearchString: searchVal === null || searchVal === void 0 ? void 0 : searchVal.trim(), currentSearchType: searchType })));
|
|
99
|
+
React.createElement(BookmarkedSearchesSelector, { currentCaseSearchString: searchVal === null || searchVal === void 0 ? void 0 : searchVal.trim(), currentSearchType: searchType, isAdvancedSearchValid: isAdvancedSearchValid })));
|
|
99
100
|
}
|
|
@@ -3,7 +3,9 @@ interface IProps {
|
|
|
3
3
|
modalToggle: () => void;
|
|
4
4
|
isAdding: boolean;
|
|
5
5
|
selectedSearchNameToEdit: string;
|
|
6
|
+
currentCaseSearchString: string;
|
|
7
|
+
currentSearchType: string;
|
|
6
8
|
}
|
|
7
|
-
export declare function SaveCaseSearchModal({ isModalOpen, modalToggle, isAdding, selectedSearchNameToEdit }: IProps): JSX.Element;
|
|
9
|
+
export declare function SaveCaseSearchModal({ isModalOpen, modalToggle, isAdding, selectedSearchNameToEdit, currentCaseSearchString, currentSearchType, }: IProps): JSX.Element;
|
|
8
10
|
export {};
|
|
9
11
|
//# sourceMappingURL=SaveCaseSearchModal.d.ts.map
|
|
@@ -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;
|
|
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;CAC7B;AAED,wBAAgB,mBAAmB,CAAC,EAChC,WAAW,EACX,WAAW,EACX,QAAQ,EACR,wBAAwB,EACxB,uBAAuB,EACvB,iBAAiB,GACpB,EAAE,MAAM,eAwQR"}
|
|
@@ -19,7 +19,7 @@ import { Trans, useTranslation } from 'react-i18next';
|
|
|
19
19
|
import { CaseSearchQueryType } from '../../../enums/caseSearch';
|
|
20
20
|
import { createUserFriendlyQueryFromFilterState } from '../../../utils/caseSearchUtils';
|
|
21
21
|
import { CaseListFilterStateContext } from '../CaseListFilterContext';
|
|
22
|
-
export function SaveCaseSearchModal({ isModalOpen, modalToggle, isAdding, selectedSearchNameToEdit }) {
|
|
22
|
+
export function SaveCaseSearchModal({ isModalOpen, modalToggle, isAdding, selectedSearchNameToEdit, currentCaseSearchString, currentSearchType, }) {
|
|
23
23
|
const { t } = useTranslation();
|
|
24
24
|
const [localSavedSearchName, setLocalSavedSearchName] = useState('');
|
|
25
25
|
const [localDefaultChecked, setLocalDefaultChecked] = useState(false);
|
|
@@ -70,13 +70,12 @@ export function SaveCaseSearchModal({ isModalOpen, modalToggle, isAdding, select
|
|
|
70
70
|
// need to remove old default search if there is any
|
|
71
71
|
localDefaultChecked && setDefaultSearchToFalse();
|
|
72
72
|
if (isAdding) {
|
|
73
|
-
const type = filterState.filterQueryInfo.type;
|
|
74
73
|
previousBookmarkedSearchesObj[localSavedSearchName] = {
|
|
75
74
|
filterState: pickBy(filterState.filterInfo, (value) => value.length !== 0),
|
|
76
75
|
sortState: sortInfo,
|
|
77
|
-
type,
|
|
76
|
+
type: currentSearchType,
|
|
77
|
+
queryString: currentCaseSearchString,
|
|
78
78
|
defaultChecked: localDefaultChecked,
|
|
79
|
-
queryString: getQueryStr(),
|
|
80
79
|
};
|
|
81
80
|
}
|
|
82
81
|
else {
|
|
@@ -129,11 +128,10 @@ export function SaveCaseSearchModal({ isModalOpen, modalToggle, isAdding, select
|
|
|
129
128
|
const getQueryStr = () => {
|
|
130
129
|
let queryStr = '';
|
|
131
130
|
if (isAdding) {
|
|
132
|
-
const type = filterState.filterQueryInfo.type;
|
|
133
131
|
queryStr =
|
|
134
|
-
|
|
135
|
-
? createUserFriendlyQueryFromFilterState(filterInfo,
|
|
136
|
-
:
|
|
132
|
+
currentSearchType === CaseSearchQueryType.BASIC
|
|
133
|
+
? createUserFriendlyQueryFromFilterState(filterInfo, currentCaseSearchString)
|
|
134
|
+
: currentCaseSearchString;
|
|
137
135
|
}
|
|
138
136
|
else if (selectedSearchNameToEdit && previousBookmarkedSearchesObj[selectedSearchNameToEdit]) {
|
|
139
137
|
queryStr = createUserFriendlyQueryFromFilterState(previousBookmarkedSearchesObj[selectedSearchNameToEdit].filterState, previousBookmarkedSearchesObj[selectedSearchNameToEdit].queryString);
|
|
@@ -141,14 +139,14 @@ export function SaveCaseSearchModal({ isModalOpen, modalToggle, isAdding, select
|
|
|
141
139
|
else {
|
|
142
140
|
queryStr = previousBookmarkedSearchesObj[localSavedSearchName] || '';
|
|
143
141
|
}
|
|
144
|
-
return queryStr;
|
|
142
|
+
return queryStr || '';
|
|
145
143
|
};
|
|
146
144
|
useEffect(() => {
|
|
147
145
|
var _a;
|
|
148
146
|
setLocalSavedSearchName(selectedSearchNameToEdit);
|
|
149
147
|
setLocalDefaultChecked(((_a = previousBookmarkedSearchesObj[selectedSearchNameToEdit]) === null || _a === void 0 ? void 0 : _a.defaultChecked) || false);
|
|
150
148
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
151
|
-
}, [filterInfo, filterQueryInfo.queryString, isAdding, selectedSearchNameToEdit]);
|
|
149
|
+
}, [filterInfo, filterQueryInfo.queryString, isAdding, selectedSearchNameToEdit, currentCaseSearchString]);
|
|
152
150
|
return (React.createElement(Modal, { variant: ModalVariant.medium, title: isAdding ? t('Save search and filters') : t('Edit saved search and filters'), isOpen: isModalOpen, onClose: closeModal, style: { overflow: 'visible' }, actions: [
|
|
153
151
|
React.createElement(Button, { key: "save", variant: ButtonVariant.primary, isLoading: isUpdating, spinnerAriaValueText: hydraUserPreferences.isFetching ? 'Saving' : undefined, isDisabled: hydraUserPreferences.isFetching ||
|
|
154
152
|
(saveButtonIsClicked && (isEmpty(localSavedSearchName.trim()) || isDuplicateNameError)), "data-tracking-id": isAdding ? 'case-list-bookmark-search-saved' : 'case-list-bookmark-search-edited', onClick: save },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useAdvanceSearchParser.d.ts","sourceRoot":"","sources":["../../../../../src/components/case-list/case-search/useAdvanceSearchParser.tsx"],"names":[],"mappings":"AAWA,MAAM,CAAC,OAAO,UAAU,sBAAsB,CAAC,EAAE,MAAM,EAAE;;CAAA;yBASzB,MAAM;6BASF,MAAM;;
|
|
1
|
+
{"version":3,"file":"useAdvanceSearchParser.d.ts","sourceRoot":"","sources":["../../../../../src/components/case-list/case-search/useAdvanceSearchParser.tsx"],"names":[],"mappings":"AAWA,MAAM,CAAC,OAAO,UAAU,sBAAsB,CAAC,EAAE,MAAM,EAAE;;CAAA;yBASzB,MAAM;6BASF,MAAM;;EA4EzC"}
|
|
@@ -26,7 +26,12 @@ export default function useAdvanceSearchParser({ onInit }) {
|
|
|
26
26
|
return '';
|
|
27
27
|
};
|
|
28
28
|
const initParser = () => {
|
|
29
|
-
|
|
29
|
+
try {
|
|
30
|
+
parserRef.current = PEG.generate(grammerStringRef.current);
|
|
31
|
+
}
|
|
32
|
+
catch (_a) {
|
|
33
|
+
parserRef.current = null;
|
|
34
|
+
}
|
|
30
35
|
};
|
|
31
36
|
// write products, severity and status to grammar string once we have the values from facets
|
|
32
37
|
useEffect(() => {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@rh-support/cases",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.46",
|
|
4
4
|
"publishConfig": {
|
|
5
5
|
"access": "public",
|
|
6
6
|
"registry": "https://registry.npmjs.org"
|
|
@@ -52,12 +52,12 @@
|
|
|
52
52
|
"@patternfly/pfe-collapse": "1.12.3",
|
|
53
53
|
"@patternfly/react-core": "4.194.0",
|
|
54
54
|
"@patternfly/react-table": "4.63.0",
|
|
55
|
-
"@rh-support/api": "0.3.
|
|
56
|
-
"@rh-support/components": "1.1.
|
|
57
|
-
"@rh-support/react-context": "0.2.
|
|
58
|
-
"@rh-support/types": "0.2.
|
|
59
|
-
"@rh-support/user-permissions": "0.2.
|
|
60
|
-
"@rh-support/utils": "0.2.
|
|
55
|
+
"@rh-support/api": "^0.3.12",
|
|
56
|
+
"@rh-support/components": "^1.1.31",
|
|
57
|
+
"@rh-support/react-context": "^0.2.34",
|
|
58
|
+
"@rh-support/types": "^0.2.2",
|
|
59
|
+
"@rh-support/user-permissions": "^0.2.25",
|
|
60
|
+
"@rh-support/utils": "^0.2.23",
|
|
61
61
|
"i18next": "^19.0.1",
|
|
62
62
|
"localforage": "^1.7.3",
|
|
63
63
|
"lodash": "^4.17.15",
|
|
@@ -101,5 +101,5 @@
|
|
|
101
101
|
"not ie <= 11",
|
|
102
102
|
"not op_mini all"
|
|
103
103
|
],
|
|
104
|
-
"gitHead": "
|
|
104
|
+
"gitHead": "70f8095b855f531eb814e85cb5a77908405fff5f"
|
|
105
105
|
}
|