@rh-support/cases 2.6.186 → 2.6.187

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.
Files changed (134) hide show
  1. package/lib/esm/components/case-list/CaseList.d.ts +0 -7
  2. package/lib/esm/components/case-list/CaseList.d.ts.map +1 -1
  3. package/lib/esm/components/case-list/CaseList.js +195 -113
  4. package/lib/esm/components/case-list/CaseListContext.d.ts.map +1 -1
  5. package/lib/esm/components/case-list/CaseListContext.js +5 -2
  6. package/lib/esm/components/case-list/CaseListFilterContext.d.ts.map +1 -1
  7. package/lib/esm/components/case-list/CaseListFilterContext.js +2 -1
  8. package/lib/esm/components/case-list/CaseListFilterHelpers.d.ts +3 -2
  9. package/lib/esm/components/case-list/CaseListFilterHelpers.d.ts.map +1 -1
  10. package/lib/esm/components/case-list/CaseListFilterHelpers.js +19 -6
  11. package/lib/esm/components/case-list/CaseListFilterReducer.d.ts +35 -4
  12. package/lib/esm/components/case-list/CaseListFilterReducer.d.ts.map +1 -1
  13. package/lib/esm/components/case-list/CaseListFilterReducer.js +4 -12
  14. package/lib/esm/components/case-list/CaseListReducer.d.ts +22 -10
  15. package/lib/esm/components/case-list/CaseListReducer.d.ts.map +1 -1
  16. package/lib/esm/components/case-list/CaseListReducer.js +25 -7
  17. package/lib/esm/components/case-list/case-list-filters/AccountsFilter.d.ts.map +1 -1
  18. package/lib/esm/components/case-list/case-list-filters/AccountsFilter.js +18 -11
  19. package/lib/esm/components/case-list/case-list-filters/AdditionalFilters.d.ts.map +1 -1
  20. package/lib/esm/components/case-list/case-list-filters/AdditionalFilters.js +6 -2
  21. package/lib/esm/components/case-list/case-list-filters/CaseListFilterChips.d.ts +1 -7
  22. package/lib/esm/components/case-list/case-list-filters/CaseListFilterChips.d.ts.map +1 -1
  23. package/lib/esm/components/case-list/case-list-filters/CaseListFilterChips.js +12 -16
  24. package/lib/esm/components/case-list/case-list-filters/CaseListFilters.d.ts +2 -5
  25. package/lib/esm/components/case-list/case-list-filters/CaseListFilters.d.ts.map +1 -1
  26. package/lib/esm/components/case-list/case-list-filters/CaseListFilters.js +12 -13
  27. package/lib/esm/components/case-list/case-list-filters/CreatorSsoNameFilterChip.d.ts.map +1 -1
  28. package/lib/esm/components/case-list/case-list-filters/CreatorSsoNameFilterChip.js +3 -0
  29. package/lib/esm/components/case-list/case-list-filters/GroupsFilter.d.ts +11 -1
  30. package/lib/esm/components/case-list/case-list-filters/GroupsFilter.d.ts.map +1 -1
  31. package/lib/esm/components/case-list/case-list-filters/GroupsFilter.js +116 -71
  32. package/lib/esm/components/case-list/case-list-filters/ProductFilterChip.d.ts +1 -3
  33. package/lib/esm/components/case-list/case-list-filters/ProductFilterChip.d.ts.map +1 -1
  34. package/lib/esm/components/case-list/case-list-filters/ProductFilterChip.js +2 -2
  35. package/lib/esm/components/case-list/case-list-filters/ProductsFilter.d.ts +5 -4
  36. package/lib/esm/components/case-list/case-list-filters/ProductsFilter.d.ts.map +1 -1
  37. package/lib/esm/components/case-list/case-list-filters/ProductsFilter.js +15 -54
  38. package/lib/esm/components/case-list/case-list-filters/SeverityFilter.d.ts +0 -3
  39. package/lib/esm/components/case-list/case-list-filters/SeverityFilter.d.ts.map +1 -1
  40. package/lib/esm/components/case-list/case-list-filters/SeverityFilter.js +18 -44
  41. package/lib/esm/components/case-list/case-list-filters/StatusFilter.d.ts +0 -3
  42. package/lib/esm/components/case-list/case-list-filters/StatusFilter.d.ts.map +1 -1
  43. package/lib/esm/components/case-list/case-list-filters/StatusFilter.js +14 -44
  44. package/lib/esm/components/case-list/case-list-filters/VersionsFilter.d.ts +1 -3
  45. package/lib/esm/components/case-list/case-list-filters/VersionsFilter.d.ts.map +1 -1
  46. package/lib/esm/components/case-list/case-list-filters/VersionsFilter.js +60 -59
  47. package/lib/esm/components/case-list/case-list-table/CaseListTable.d.ts +7 -3
  48. package/lib/esm/components/case-list/case-list-table/CaseListTable.d.ts.map +1 -1
  49. package/lib/esm/components/case-list/case-list-table/CaseListTable.js +77 -60
  50. package/lib/esm/components/case-list/case-list-table/DownloadCSVFileModal.d.ts +0 -5
  51. package/lib/esm/components/case-list/case-list-table/DownloadCSVFileModal.d.ts.map +1 -1
  52. package/lib/esm/components/case-list/case-list-table/DownloadCSVFileModal.js +38 -68
  53. package/lib/esm/components/case-list/case-list-table/ExportCaseListCSV.d.ts.map +1 -1
  54. package/lib/esm/components/case-list/case-list-table/ExportCaseListCSV.js +5 -15
  55. package/lib/esm/components/case-list/case-list-table/SeverityLabel.js +1 -1
  56. package/lib/esm/components/case-list/case-list-table/TableActionsDropdown.d.ts.map +1 -1
  57. package/lib/esm/components/case-list/case-list-table/TableActionsDropdown.js +2 -3
  58. package/lib/esm/components/case-list/case-search/AdvanceSearchToggleButton.d.ts +8 -0
  59. package/lib/esm/components/case-list/case-search/AdvanceSearchToggleButton.d.ts.map +1 -0
  60. package/lib/esm/components/case-list/case-search/AdvanceSearchToggleButton.js +8 -0
  61. package/lib/esm/components/case-list/case-search/BookmarkedSearchesSelector.d.ts.map +1 -1
  62. package/lib/esm/components/case-list/case-search/BookmarkedSearchesSelector.js +1 -0
  63. package/lib/esm/components/case-list/case-search/CaseSearch.d.ts.map +1 -1
  64. package/lib/esm/components/case-list/case-search/CaseSearch.js +55 -24
  65. package/lib/esm/components/case-list/case-search/advance-search-modal/AdvanceSearchAccountSection.d.ts +10 -0
  66. package/lib/esm/components/case-list/case-search/advance-search-modal/AdvanceSearchAccountSection.d.ts.map +1 -0
  67. package/lib/esm/components/case-list/case-search/advance-search-modal/AdvanceSearchAccountSection.js +29 -0
  68. package/lib/esm/components/case-list/case-search/advance-search-modal/AdvanceSearchAuditsSection.d.ts +10 -0
  69. package/lib/esm/components/case-list/case-search/advance-search-modal/AdvanceSearchAuditsSection.d.ts.map +1 -0
  70. package/lib/esm/components/case-list/case-search/advance-search-modal/AdvanceSearchAuditsSection.js +16 -0
  71. package/lib/esm/components/case-list/case-search/advance-search-modal/AdvanceSearchCaseSection.d.ts +9 -0
  72. package/lib/esm/components/case-list/case-search/advance-search-modal/AdvanceSearchCaseSection.d.ts.map +1 -0
  73. package/lib/esm/components/case-list/case-search/advance-search-modal/AdvanceSearchCaseSection.js +21 -0
  74. package/lib/esm/components/case-list/case-search/advance-search-modal/AdvanceSearchDateRangeField.d.ts +12 -0
  75. package/lib/esm/components/case-list/case-search/advance-search-modal/AdvanceSearchDateRangeField.d.ts.map +1 -0
  76. package/lib/esm/components/case-list/case-search/advance-search-modal/AdvanceSearchDateRangeField.js +31 -0
  77. package/lib/esm/components/case-list/case-search/advance-search-modal/AdvanceSearchFieldBlock.d.ts +10 -0
  78. package/lib/esm/components/case-list/case-search/advance-search-modal/AdvanceSearchFieldBlock.d.ts.map +1 -0
  79. package/lib/esm/components/case-list/case-search/advance-search-modal/AdvanceSearchFieldBlock.js +10 -0
  80. package/lib/esm/components/case-list/case-search/advance-search-modal/AdvanceSearchModal.d.ts +10 -0
  81. package/lib/esm/components/case-list/case-search/advance-search-modal/AdvanceSearchModal.d.ts.map +1 -0
  82. package/lib/esm/components/case-list/case-search/advance-search-modal/AdvanceSearchModal.js +92 -0
  83. package/lib/esm/components/case-list/case-search/advance-search-modal/AdvanceSearchOwnerSection.d.ts +9 -0
  84. package/lib/esm/components/case-list/case-search/advance-search-modal/AdvanceSearchOwnerSection.d.ts.map +1 -0
  85. package/lib/esm/components/case-list/case-search/advance-search-modal/AdvanceSearchOwnerSection.js +20 -0
  86. package/lib/esm/components/case-list/case-search/advance-search-modal/AdvanceSearchProductSection.d.ts +9 -0
  87. package/lib/esm/components/case-list/case-search/advance-search-modal/AdvanceSearchProductSection.d.ts.map +1 -0
  88. package/lib/esm/components/case-list/case-search/advance-search-modal/AdvanceSearchProductSection.js +28 -0
  89. package/lib/esm/components/case-list/case-search/advance-search-modal/ProductVersionDrilldownSelect.d.ts +9 -0
  90. package/lib/esm/components/case-list/case-search/advance-search-modal/ProductVersionDrilldownSelect.d.ts.map +1 -0
  91. package/lib/esm/components/case-list/case-search/advance-search-modal/ProductVersionDrilldownSelect.js +241 -0
  92. package/lib/esm/components/case-list/case-search/advance-search-modal/SelectableLabelFilter.d.ts +11 -0
  93. package/lib/esm/components/case-list/case-search/advance-search-modal/SelectableLabelFilter.d.ts.map +1 -0
  94. package/lib/esm/components/case-list/case-search/advance-search-modal/SelectableLabelFilter.js +23 -0
  95. package/lib/esm/components/case-list/case-search/useAdvanceSearchParser.d.ts.map +1 -1
  96. package/lib/esm/components/case-list/case-search/useAdvanceSearchParser.js +2 -1
  97. package/lib/esm/css/caseList.css +111 -22
  98. package/lib/esm/css/caseSearch.css +114 -0
  99. package/lib/esm/enums/case.d.ts +2 -1
  100. package/lib/esm/enums/case.d.ts.map +1 -1
  101. package/lib/esm/enums/case.js +14 -1
  102. package/lib/esm/enums/caseSearch.d.ts +1 -0
  103. package/lib/esm/enums/caseSearch.d.ts.map +1 -1
  104. package/lib/esm/enums/caseSearch.js +1 -1
  105. package/lib/esm/hooks/useExportCaseListCSV.d.ts.map +1 -1
  106. package/lib/esm/hooks/useExportCaseListCSV.js +1 -9
  107. package/lib/esm/hooks/useFilterStateOnLoad.d.ts +1 -1
  108. package/lib/esm/hooks/useFilterStateOnLoad.d.ts.map +1 -1
  109. package/lib/esm/test-utils/mockData.js +1 -1
  110. package/lib/esm/utils/advanceSearchFormMapper.d.ts +11 -0
  111. package/lib/esm/utils/advanceSearchFormMapper.d.ts.map +1 -0
  112. package/lib/esm/utils/advanceSearchFormMapper.js +71 -0
  113. package/lib/esm/utils/advanceSearchUtils.d.ts +24 -0
  114. package/lib/esm/utils/advanceSearchUtils.d.ts.map +1 -0
  115. package/lib/esm/utils/advanceSearchUtils.js +149 -0
  116. package/lib/esm/utils/caseListGraphQLUtils.d.ts +28 -0
  117. package/lib/esm/utils/caseListGraphQLUtils.d.ts.map +1 -0
  118. package/lib/esm/utils/caseListGraphQLUtils.js +280 -0
  119. package/lib/esm/utils/caseListMapper.d.ts +6 -0
  120. package/lib/esm/utils/caseListMapper.d.ts.map +1 -0
  121. package/lib/esm/utils/caseListMapper.js +36 -0
  122. package/lib/esm/utils/caseListVariablesBuilder.d.ts +15 -0
  123. package/lib/esm/utils/caseListVariablesBuilder.d.ts.map +1 -0
  124. package/lib/esm/utils/caseListVariablesBuilder.js +399 -0
  125. package/lib/esm/utils/caseSearchUtils.d.ts.map +1 -1
  126. package/lib/esm/utils/caseSearchUtils.js +26 -1
  127. package/lib/esm/utils/constants.d.ts +4 -1
  128. package/lib/esm/utils/constants.d.ts.map +1 -1
  129. package/lib/esm/utils/constants.js +20 -2
  130. package/lib/esm/utils/mockSolrResponse.js +1 -1
  131. package/lib/esm/utils/statusUtils.d.ts +4 -0
  132. package/lib/esm/utils/statusUtils.d.ts.map +1 -0
  133. package/lib/esm/utils/statusUtils.js +36 -0
  134. package/package.json +8 -8
@@ -6,7 +6,6 @@ declare enum CaseListReducerEnum {
6
6
  updateFilter = "UPDATE_FILTER",
7
7
  updateFilters = "UPDATE_FILTERS",
8
8
  updateSort = "UPDATE_SORT",
9
- updatePagination = "UPDATE_PAGINATION",
10
9
  updateFilterQuery = "UPDATE_FILTER_QUERY",
11
10
  removeFilter = "REMOVE_FILTER",
12
11
  clearFilters = "CLEAR_FILTERS",
@@ -26,8 +25,12 @@ export interface IFilterQueryInfo {
26
25
  type: CaseSearchQueryType;
27
26
  parsedQuery?: string;
28
27
  }
28
+ export interface IVersionFilterValue extends IFieldValue {
29
+ productId?: string;
30
+ }
29
31
  export interface IProductFilter extends IFieldValue {
30
- [SolrKeys.version]: IFieldValue[];
32
+ [SolrKeys.version]: IVersionFilterValue[];
33
+ productId?: string;
31
34
  }
32
35
  export interface IFilterInfo {
33
36
  [SolrPivotKeys.product_version]: IProductFilter[];
@@ -43,21 +46,49 @@ export interface IFilterInfo {
43
46
  [SolrKeys.caseSummary]: Array<string>;
44
47
  [SolrKeys.modifiedBy]: Array<string>;
45
48
  [SolrKeys.alternateId]: Array<string>;
49
+ [SolrKeys.openshiftClusterId]: Array<string>;
46
50
  [SolrKeys.isPrivate]: Array<IKeyValue<string>>;
47
51
  }
48
52
  export declare const emptyFilters: IFilterInfo;
53
+ export interface IAdvanceSearchDateRange {
54
+ startDate: string;
55
+ endDate: string;
56
+ }
57
+ export interface IAdvanceSearchDateRanges {
58
+ createdDateRange: IAdvanceSearchDateRange;
59
+ lastModifiedDateRange: IAdvanceSearchDateRange;
60
+ closedDateRange: IAdvanceSearchDateRange;
61
+ }
62
+ export interface IAdvanceSearchFormState {
63
+ statuses: string[];
64
+ severities: string[];
65
+ supportTypes: string[];
66
+ showEscalatedOnly: boolean;
67
+ accountNumbers: Array<IKeyValue<string>>;
68
+ personalReferenceNumber: string;
69
+ openshiftClusterId: string;
70
+ ownerNameAndSso: string;
71
+ assignedToNameAndSso: string;
72
+ groups: Array<IKeyValue<string>>;
73
+ createdByNameAndSso: string;
74
+ lastModifiedByNameAndSso: string;
75
+ createdDateRange: IAdvanceSearchDateRange;
76
+ lastModifiedDateRange: IAdvanceSearchDateRange;
77
+ closedDateRange: IAdvanceSearchDateRange;
78
+ products: IProductFilter[];
79
+ }
49
80
  export interface ICaseListFilterState {
50
81
  sortInfo?: ISortInfo;
51
82
  paginationInfo?: IPaginationInfo;
52
83
  filterQueryInfo?: IFilterQueryInfo;
53
84
  filterInfo?: Partial<IFilterInfo>;
85
+ advanceSearchDateRanges?: IAdvanceSearchDateRanges;
54
86
  }
55
87
  export type IFilterKeys = keyof IFilterInfo;
56
88
  type IActionType = IAction<CaseListReducerEnum, ICaseListFilterState>;
57
89
  export type CaseListFilterDispatchType = (value: IActionType) => void;
58
90
  declare const caseListFilterReducer: (pState: ICaseListFilterState, action: any) => ICaseListFilterState;
59
91
  declare function updateSort(dispatch: CaseListFilterDispatchType, sortInfo: ISortInfo): void;
60
- declare function updatePagination(dispatch: CaseListFilterDispatchType, paginationInfo: IPaginationInfo): void;
61
92
  declare function updateFilter(dispatch: CaseListFilterDispatchType, { filterKey, values }: {
62
93
  filterKey: any;
63
94
  values: any;
@@ -71,5 +102,5 @@ declare const clearFilters: (dispatch: any, clearQueryString?: boolean) => void;
71
102
  declare function resetFilterToDefaultState(dispatch: any): void;
72
103
  declare function updateFilterQuery(dispatch: CaseListFilterDispatchType, filterQueryInfo: IFilterQueryInfo): void;
73
104
  declare function updateFilterState(dispatch: CaseListFilterDispatchType, newState: Partial<ICaseListFilterState>): void;
74
- export { updateSort, updatePagination, updateFilter, updateFilters, updateFilterQuery, removeFilterItem, clearFilters, updateFilterState, caseListFilterReducer, resetFilterToDefaultState, };
105
+ export { updateSort, updateFilter, updateFilters, updateFilterQuery, removeFilterItem, clearFilters, updateFilterState, caseListFilterReducer, resetFilterToDefaultState, };
75
106
  //# sourceMappingURL=CaseListFilterReducer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"CaseListFilterReducer.d.ts","sourceRoot":"","sources":["../../../../src/components/case-list/CaseListFilterReducer.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CaseListFilterReducer.d.ts","sourceRoot":"","sources":["../../../../src/components/case-list/CaseListFilterReducer.tsx"],"names":[],"mappings":"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"}
@@ -18,7 +18,6 @@ var CaseListReducerEnum;
18
18
  CaseListReducerEnum["updateFilter"] = "UPDATE_FILTER";
19
19
  CaseListReducerEnum["updateFilters"] = "UPDATE_FILTERS";
20
20
  CaseListReducerEnum["updateSort"] = "UPDATE_SORT";
21
- CaseListReducerEnum["updatePagination"] = "UPDATE_PAGINATION";
22
21
  CaseListReducerEnum["updateFilterQuery"] = "UPDATE_FILTER_QUERY";
23
22
  CaseListReducerEnum["removeFilter"] = "REMOVE_FILTER";
24
23
  CaseListReducerEnum["clearFilters"] = "CLEAR_FILTERS";
@@ -39,6 +38,7 @@ export const emptyFilters = {
39
38
  [SolrKeys.caseSummary]: [],
40
39
  [SolrKeys.modifiedBy]: [],
41
40
  [SolrKeys.alternateId]: [],
41
+ [SolrKeys.openshiftClusterId]: [],
42
42
  [SolrKeys.isPrivate]: [],
43
43
  };
44
44
  const caseListFilterReducer = (pState, action) => {
@@ -54,10 +54,8 @@ const caseListFilterReducer = (pState, action) => {
54
54
  return Object.assign(Object.assign({}, pState), { filterInfo: newFilters, paginationInfo: newPaginationInfo });
55
55
  }
56
56
  case CaseListReducerEnum.updateSort: {
57
- return Object.assign(Object.assign({}, pState), { sortInfo: action.payload.sortInfo });
58
- }
59
- case CaseListReducerEnum.updatePagination: {
60
- return Object.assign(Object.assign({}, pState), { paginationInfo: action.payload.paginationInfo });
57
+ const newPaginationInfo = Object.assign(Object.assign({}, pState.paginationInfo), { currentPage: 1 });
58
+ return Object.assign(Object.assign({}, pState), { sortInfo: action.payload.sortInfo, paginationInfo: newPaginationInfo });
61
59
  }
62
60
  case CaseListReducerEnum.removeFilter: {
63
61
  const newValues = pState.filterInfo[action.payload.filterKey].filter((item) => {
@@ -89,12 +87,6 @@ function updateSort(dispatch, sortInfo) {
89
87
  payload: { sortInfo },
90
88
  });
91
89
  }
92
- function updatePagination(dispatch, paginationInfo) {
93
- dispatch({
94
- type: CaseListReducerEnum.updatePagination,
95
- payload: { paginationInfo },
96
- });
97
- }
98
90
  function updateFilter(dispatch, { filterKey, values }) {
99
91
  dispatch({
100
92
  type: CaseListReducerEnum.updateFilter,
@@ -141,4 +133,4 @@ function updateFilterState(dispatch, newState) {
141
133
  payload: newState,
142
134
  });
143
135
  }
144
- export { updateSort, updatePagination, updateFilter, updateFilters, updateFilterQuery, removeFilterItem, clearFilters, updateFilterState, caseListFilterReducer, resetFilterToDefaultState, };
136
+ export { updateSort, updateFilter, updateFilters, updateFilterQuery, removeFilterItem, clearFilters, updateFilterState, caseListFilterReducer, resetFilterToDefaultState, };
@@ -1,13 +1,14 @@
1
1
  import { IAction, ISolrResponse } from '@rh-support/types/shared';
2
- import { ISolrResponseToFacetFields, ISolrResponseToPivotFields } from '@rh-support/utils';
3
- import { ICaseListResponse, IFacetFields, IFacetPivot } from '../../models/caseList';
4
- import { IPivotValues, IProductVersionPivotMap } from './CaseList';
2
+ import { ICaseListResponse } from '../../models/caseList';
5
3
  export interface ICaseListState {
6
4
  caseList: ISolrResponse<ICaseListResponse>;
7
5
  isFetching: boolean;
6
+ isLoadingMore: boolean;
7
+ hasNextPage: boolean;
8
+ endCursor: string | undefined;
9
+ loadMoreError: boolean;
10
+ loadMoreRetryCount: number;
8
11
  chipsNameSsoMap?: IChipsNameSsoMap;
9
- filterValuesFromFacetResponse: ISolrResponseToFacetFields<IFacetFields>;
10
- pivotValues: ISolrResponseToPivotFields<IFacetPivot, IProductVersionPivotMap>;
11
12
  currentQuery: string;
12
13
  }
13
14
  export interface IChipsNameSso {
@@ -21,16 +22,27 @@ export interface IChipsNameSsoMap {
21
22
  [sso: string]: IChipsNameSso;
22
23
  }
23
24
  declare enum CaseListReducerEnum {
24
- updateState = "SET_STATE"
25
+ updateState = "SET_STATE",
26
+ appendDocs = "APPEND_DOCS"
25
27
  }
26
- type IActionType = IAction<CaseListReducerEnum, ICaseListState>;
28
+ interface IAppendDocsPayload {
29
+ docs: ICaseListResponse[];
30
+ hasNextPage: boolean;
31
+ endCursor: string | undefined;
32
+ }
33
+ type IActionType = IAction<CaseListReducerEnum, ICaseListState> | {
34
+ type: CaseListReducerEnum.appendDocs;
35
+ payload: IAppendDocsPayload;
36
+ };
27
37
  export type CaseListDispatchType = (value: IActionType) => void;
28
38
  declare const caseListReducer: (state: ICaseListState, action: IActionType) => ICaseListState;
29
39
  declare const setCaseList: (dispatch: CaseListDispatchType, caseList: ISolrResponse<ICaseListResponse>) => void;
30
40
  declare const setChipsNameSsoMap: (dispatch: CaseListDispatchType, chipsNameSsoMap: IChipsNameSsoMap) => void;
31
41
  declare const setIsFetching: (dispatch: CaseListDispatchType, isFetching: boolean) => void;
32
- declare const setFilterValuesFromFacetResponse: (dispatch: CaseListDispatchType, filterValuesFromFacetResponse: ISolrResponseToFacetFields<IFacetFields>) => void;
33
- declare const setPivotValues: (dispatch: CaseListDispatchType, pivotValues: IPivotValues) => void;
34
42
  declare const setCurrentQuery: (dispatch: CaseListDispatchType, currentQuery: string) => void;
35
- export { caseListReducer, setCaseList, setChipsNameSsoMap, setIsFetching, setFilterValuesFromFacetResponse, setPivotValues, setCurrentQuery, };
43
+ declare const setIsLoadingMore: (dispatch: CaseListDispatchType, isLoadingMore: boolean) => void;
44
+ declare const appendCaseList: (dispatch: CaseListDispatchType, docs: ICaseListResponse[], hasNextPage: boolean, endCursor: string | undefined) => void;
45
+ declare const setCursorInfo: (dispatch: CaseListDispatchType, hasNextPage: boolean, endCursor: string | undefined) => void;
46
+ declare const setLoadMoreError: (dispatch: CaseListDispatchType, loadMoreError: boolean, loadMoreRetryCount: number) => void;
47
+ export { caseListReducer, setCaseList, setChipsNameSsoMap, setIsFetching, setCurrentQuery, setIsLoadingMore, appendCaseList, setCursorInfo, setLoadMoreError, };
36
48
  //# sourceMappingURL=CaseListReducer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"CaseListReducer.d.ts","sourceRoot":"","sources":["../../../../src/components/case-list/CaseListReducer.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,0BAA0B,EAAE,0BAA0B,EAAE,MAAM,mBAAmB,CAAC;AAE3F,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACrF,OAAO,EAAE,YAAY,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;AAEnE,MAAM,WAAW,cAAc;IAC3B,QAAQ,EAAE,aAAa,CAAC,iBAAiB,CAAC,CAAC;IAC3C,UAAU,EAAE,OAAO,CAAC;IACpB,eAAe,CAAC,EAAE,gBAAgB,CAAC;IACnC,6BAA6B,EAAE,0BAA0B,CAAC,YAAY,CAAC,CAAC;IACxE,WAAW,EAAE,0BAA0B,CAAC,WAAW,EAAE,uBAAuB,CAAC,CAAC;IAC9E,YAAY,EAAE,MAAM,CAAC;CACxB;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,MAAM,WAAW,gBAAgB;IAC7B,CAAC,GAAG,EAAE,MAAM,GAAG,aAAa,CAAC;CAChC;AAED,aAAK,mBAAmB;IACpB,WAAW,cAAc;CAC5B;AAED,KAAK,WAAW,GAAG,OAAO,CAAC,mBAAmB,EAAE,cAAc,CAAC,CAAC;AAChE,MAAM,MAAM,oBAAoB,GAAG,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,CAAC;AAEhE,QAAA,MAAM,eAAe,GAAI,OAAO,cAAc,EAAE,QAAQ,WAAW,KAAG,cAMrE,CAAC;AAEF,QAAA,MAAM,WAAW,GAAI,UAAU,oBAAoB,EAAE,UAAU,aAAa,CAAC,iBAAiB,CAAC,SAK9F,CAAC;AAEF,QAAA,MAAM,kBAAkB,GAAI,UAAU,oBAAoB,EAAE,iBAAiB,gBAAgB,SAK5F,CAAC;AACF,QAAA,MAAM,aAAa,GAAI,UAAU,oBAAoB,EAAE,YAAY,OAAO,SAKzE,CAAC;AACF,QAAA,MAAM,gCAAgC,GAClC,UAAU,oBAAoB,EAC9B,+BAA+B,0BAA0B,CAAC,YAAY,CAAC,SAM1E,CAAC;AACF,QAAA,MAAM,cAAc,GAAI,UAAU,oBAAoB,EAAE,aAAa,YAAY,SAKhF,CAAC;AAEF,QAAA,MAAM,eAAe,GAAI,UAAU,oBAAoB,EAAE,cAAc,MAAM,SAK5E,CAAC;AAEF,OAAO,EACH,eAAe,EACf,WAAW,EACX,kBAAkB,EAClB,aAAa,EACb,gCAAgC,EAChC,cAAc,EACd,eAAe,GAClB,CAAC"}
1
+ {"version":3,"file":"CaseListReducer.d.ts","sourceRoot":"","sources":["../../../../src/components/case-list/CaseListReducer.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAElE,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAE1D,MAAM,WAAW,cAAc;IAC3B,QAAQ,EAAE,aAAa,CAAC,iBAAiB,CAAC,CAAC;IAC3C,UAAU,EAAE,OAAO,CAAC;IACpB,aAAa,EAAE,OAAO,CAAC;IACvB,WAAW,EAAE,OAAO,CAAC;IACrB,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,aAAa,EAAE,OAAO,CAAC;IACvB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,eAAe,CAAC,EAAE,gBAAgB,CAAC;IACnC,YAAY,EAAE,MAAM,CAAC;CACxB;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,MAAM,WAAW,gBAAgB;IAC7B,CAAC,GAAG,EAAE,MAAM,GAAG,aAAa,CAAC;CAChC;AAED,aAAK,mBAAmB;IACpB,WAAW,cAAc;IACzB,UAAU,gBAAgB;CAC7B;AAED,UAAU,kBAAkB;IACxB,IAAI,EAAE,iBAAiB,EAAE,CAAC;IAC1B,WAAW,EAAE,OAAO,CAAC;IACrB,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;CACjC;AAED,KAAK,WAAW,GACV,OAAO,CAAC,mBAAmB,EAAE,cAAc,CAAC,GAC5C;IAAE,IAAI,EAAE,mBAAmB,CAAC,UAAU,CAAC;IAAC,OAAO,EAAE,kBAAkB,CAAA;CAAE,CAAC;AAC5E,MAAM,MAAM,oBAAoB,GAAG,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,CAAC;AAEhE,QAAA,MAAM,eAAe,GAAI,OAAO,cAAc,EAAE,QAAQ,WAAW,KAAG,cAmBrE,CAAC;AAEF,QAAA,MAAM,WAAW,GAAI,UAAU,oBAAoB,EAAE,UAAU,aAAa,CAAC,iBAAiB,CAAC,SAK9F,CAAC;AAEF,QAAA,MAAM,kBAAkB,GAAI,UAAU,oBAAoB,EAAE,iBAAiB,gBAAgB,SAK5F,CAAC;AAEF,QAAA,MAAM,aAAa,GAAI,UAAU,oBAAoB,EAAE,YAAY,OAAO,SAKzE,CAAC;AAEF,QAAA,MAAM,eAAe,GAAI,UAAU,oBAAoB,EAAE,cAAc,MAAM,SAK5E,CAAC;AAEF,QAAA,MAAM,gBAAgB,GAAI,UAAU,oBAAoB,EAAE,eAAe,OAAO,SAK/E,CAAC;AAEF,QAAA,MAAM,cAAc,GAChB,UAAU,oBAAoB,EAC9B,MAAM,iBAAiB,EAAE,EACzB,aAAa,OAAO,EACpB,WAAW,MAAM,GAAG,SAAS,SAMhC,CAAC;AAEF,QAAA,MAAM,aAAa,GAAI,UAAU,oBAAoB,EAAE,aAAa,OAAO,EAAE,WAAW,MAAM,GAAG,SAAS,SAKzG,CAAC;AAEF,QAAA,MAAM,gBAAgB,GAAI,UAAU,oBAAoB,EAAE,eAAe,OAAO,EAAE,oBAAoB,MAAM,SAK3G,CAAC;AAEF,OAAO,EACH,eAAe,EACf,WAAW,EACX,kBAAkB,EAClB,aAAa,EACb,eAAe,EACf,gBAAgB,EAChB,cAAc,EACd,aAAa,EACb,gBAAgB,GACnB,CAAC"}
@@ -1,12 +1,18 @@
1
1
  var CaseListReducerEnum;
2
2
  (function (CaseListReducerEnum) {
3
3
  CaseListReducerEnum["updateState"] = "SET_STATE";
4
+ CaseListReducerEnum["appendDocs"] = "APPEND_DOCS";
4
5
  })(CaseListReducerEnum || (CaseListReducerEnum = {}));
5
6
  const caseListReducer = (state, action) => {
6
7
  switch (action.type) {
7
8
  case CaseListReducerEnum.updateState: {
8
9
  return Object.assign(Object.assign({}, state), action.payload);
9
10
  }
11
+ case CaseListReducerEnum.appendDocs: {
12
+ const { docs, hasNextPage, endCursor } = action.payload;
13
+ return Object.assign(Object.assign({}, state), { caseList: Object.assign(Object.assign({}, state.caseList), { docs: [...state.caseList.docs, ...docs] }), hasNextPage,
14
+ endCursor, isLoadingMore: false });
15
+ }
10
16
  }
11
17
  };
12
18
  const setCaseList = (dispatch, caseList) => {
@@ -27,22 +33,34 @@ const setIsFetching = (dispatch, isFetching) => {
27
33
  payload: { isFetching },
28
34
  });
29
35
  };
30
- const setFilterValuesFromFacetResponse = (dispatch, filterValuesFromFacetResponse) => {
36
+ const setCurrentQuery = (dispatch, currentQuery) => {
31
37
  dispatch({
32
38
  type: CaseListReducerEnum.updateState,
33
- payload: { filterValuesFromFacetResponse },
39
+ payload: { currentQuery },
34
40
  });
35
41
  };
36
- const setPivotValues = (dispatch, pivotValues) => {
42
+ const setIsLoadingMore = (dispatch, isLoadingMore) => {
37
43
  dispatch({
38
44
  type: CaseListReducerEnum.updateState,
39
- payload: { pivotValues },
45
+ payload: { isLoadingMore },
40
46
  });
41
47
  };
42
- const setCurrentQuery = (dispatch, currentQuery) => {
48
+ const appendCaseList = (dispatch, docs, hasNextPage, endCursor) => {
49
+ dispatch({
50
+ type: CaseListReducerEnum.appendDocs,
51
+ payload: { docs, hasNextPage, endCursor },
52
+ });
53
+ };
54
+ const setCursorInfo = (dispatch, hasNextPage, endCursor) => {
43
55
  dispatch({
44
56
  type: CaseListReducerEnum.updateState,
45
- payload: { currentQuery },
57
+ payload: { hasNextPage, endCursor },
58
+ });
59
+ };
60
+ const setLoadMoreError = (dispatch, loadMoreError, loadMoreRetryCount) => {
61
+ dispatch({
62
+ type: CaseListReducerEnum.updateState,
63
+ payload: { loadMoreError, loadMoreRetryCount, isLoadingMore: false },
46
64
  });
47
65
  };
48
- export { caseListReducer, setCaseList, setChipsNameSsoMap, setIsFetching, setFilterValuesFromFacetResponse, setPivotValues, setCurrentQuery, };
66
+ export { caseListReducer, setCaseList, setChipsNameSsoMap, setIsFetching, setCurrentQuery, setIsLoadingMore, appendCaseList, setCursorInfo, setLoadMoreError, };
@@ -1 +1 @@
1
- {"version":3,"file":"AccountsFilter.d.ts","sourceRoot":"","sources":["../../../../../src/components/case-list/case-list-filters/AccountsFilter.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,sBAAsB,EAAE,MAAM,wCAAwC,CAAC;AAQ1F,OAAO,KAAyC,MAAM,OAAO,CAAC;AAO9D,UAAU,MAAM;IACZ,uBAAuB,EAAE,OAAO,CAAC;CACpC;AAED,eAAO,MAAM,gCAAgC,GAAI,SAAS,QAAQ,WAMjE,CAAC;AACF,eAAO,MAAM,+BAA+B,GAAI,SAAS,OAAO,CAAC,sBAAsB,CAAC,WAEvF,CAAC;AAEF,eAAO,MAAM,QAAQ,GAAI,cAAS,EAAE,eAAU,QACgC,CAAC;AAE/E,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,qBA+F3C"}
1
+ {"version":3,"file":"AccountsFilter.d.ts","sourceRoot":"","sources":["../../../../../src/components/case-list/case-list-filters/AccountsFilter.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,sBAAsB,EAAE,MAAM,wCAAwC,CAAC;AAO1F,OAAO,KAAyC,MAAM,OAAO,CAAC;AAO9D,UAAU,MAAM;IACZ,uBAAuB,EAAE,OAAO,CAAC;CACpC;AAED,eAAO,MAAM,gCAAgC,GAAI,SAAS,QAAQ,WAMjE,CAAC;AACF,eAAO,MAAM,+BAA+B,GAAI,SAAS,OAAO,CAAC,sBAAsB,CAAC,WAEvF,CAAC;AAEF,eAAO,MAAM,QAAQ,GAAI,cAAS,EAAE,eAAU,QACgC,CAAC;AAE/E,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,qBAqG3C"}
@@ -7,9 +7,9 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
7
7
  step((generator = generator.apply(thisArg, _arguments || [])).next());
8
8
  });
9
9
  };
10
- import { accounts } from '@cee-eng/hydrajs';
10
+ import { useApolloClient } from '@apollo/client/react';
11
11
  import { AccountSelectorInternal } from '@rh-support/react-context';
12
- import { getDropdownBtnPlaceholder } from '@rh-support/utils';
12
+ import { getDropdownBtnPlaceholder, SEARCH_ACCOUNTS } from '@rh-support/utils';
13
13
  import differenceBy from 'lodash/differenceBy';
14
14
  import filter from 'lodash/filter';
15
15
  import remove from 'lodash/remove';
@@ -35,6 +35,7 @@ export function AccountsFilter(props) {
35
35
  const { canReadBookmarkAccounts } = props;
36
36
  const { filterInfo } = useContext(CaseListFilterStateContext);
37
37
  const dispatch = useContext(CaseListFilterDispatchContext);
38
+ const apolloClient = useApolloClient();
38
39
  const selectedAccounts = useMemo(() => filterInfo[SolrKeys.accountNumber]
39
40
  .filter((item) => !Array.isArray(item.key))
40
41
  .map((item) => ({
@@ -67,20 +68,26 @@ export function AccountsFilter(props) {
67
68
  return;
68
69
  function getAccountsWithoutNames() {
69
70
  return __awaiter(this, void 0, void 0, function* () {
71
+ var _a, _b, _c, _d;
70
72
  const allSelected = [...filterInfo[SolrKeys.accountNumber]];
71
73
  const accountsWithoutNames = remove(allSelected, (item) => item.key === item.value);
72
74
  if (accountsWithoutNames.length < 1)
73
75
  return;
74
- const fields = ['accountNumber', 'accountId', 'name'].join(',');
75
- const params = {
76
- fields,
77
- orderBy: 'name',
78
- orderDirection: 'asc',
79
- accountNumberIn: accountsWithoutNames.map((item) => item.key).join(','),
80
- };
76
+ const accountNumbers = accountsWithoutNames.map((item) => item.key);
81
77
  try {
82
- const accountsDetail = yield accounts.getAccounts(params);
83
- const keyValueMap = accountsDetail.items.map((item) => ({ key: item.accountNumber, value: item.name }));
78
+ const { data } = yield apolloClient.query({
79
+ query: SEARCH_ACCOUNTS,
80
+ variables: {
81
+ where: { AccountNumber: { in: accountNumbers } },
82
+ first: accountNumbers.length,
83
+ },
84
+ fetchPolicy: 'network-only',
85
+ });
86
+ const edges = (_d = (_c = (_b = (_a = data === null || data === void 0 ? void 0 : data.salesforce_support_uiapi) === null || _a === void 0 ? void 0 : _a.query) === null || _b === void 0 ? void 0 : _b.SalesforceSupportAccount) === null || _c === void 0 ? void 0 : _c.edges) !== null && _d !== void 0 ? _d : [];
87
+ const keyValueMap = edges.map((edge) => ({
88
+ key: edge.node.AccountNumber.value,
89
+ value: edge.node.Name.value,
90
+ }));
84
91
  updateFilter(dispatch, {
85
92
  filterKey: SolrKeys.accountNumber,
86
93
  values: [...keyValueMap, ...allSelected],
@@ -1 +1 @@
1
- {"version":3,"file":"AdditionalFilters.d.ts","sourceRoot":"","sources":["../../../../../src/components/case-list/case-list-filters/AdditionalFilters.tsx"],"names":[],"mappings":"AAIA,OAAO,KAA0C,MAAM,OAAO,CAAC;AAO/D,wBAAgB,iBAAiB,sBAgGhC"}
1
+ {"version":3,"file":"AdditionalFilters.d.ts","sourceRoot":"","sources":["../../../../../src/components/case-list/case-list-filters/AdditionalFilters.tsx"],"names":[],"mappings":"AAIA,OAAO,KAA0C,MAAM,OAAO,CAAC;AAO/D,wBAAgB,iBAAiB,sBAqGhC"}
@@ -14,6 +14,8 @@ export function AdditionalFilters() {
14
14
  const dispatch = useContext(CaseListFilterDispatchContext);
15
15
  const ability = useContext(AbilityContext);
16
16
  const canAccessPrivateCaseFilter = ability.can(resourceActions.PATCH, resources.CASE_LIST, CaseListFields.PRIVATE_CASE_FILTER);
17
+ //canAccessPrivateCaseFilter is not used anywhere, so we need to void it to avoid linting error
18
+ void canAccessPrivateCaseFilter;
17
19
  const { filterInfo: { case_customer_escalation, case_private }, } = useContext(CaseListFilterStateContext);
18
20
  const onEscalatedChange = (checked) => {
19
21
  updateFilter(dispatch, {
@@ -22,6 +24,8 @@ export function AdditionalFilters() {
22
24
  });
23
25
  setIsEscalated(checked);
24
26
  };
27
+ // @ts-ignore - kept for future use when GraphQL supports private cases filter
28
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
25
29
  const onisPrivateChange = (checked) => {
26
30
  updateFilter(dispatch, {
27
31
  filterKey: SolrKeys.isPrivate,
@@ -29,6 +33,7 @@ export function AdditionalFilters() {
29
33
  });
30
34
  setIsPrivate(checked);
31
35
  };
36
+ void onisPrivateChange;
32
37
  useEffect(() => {
33
38
  var _a, _b;
34
39
  updateFilter(dispatch, {
@@ -65,6 +70,5 @@ export function AdditionalFilters() {
65
70
  React.createElement("div", { className: "additional-filters" },
66
71
  React.createElement("h3", null,
67
72
  React.createElement(Trans, null, "More")),
68
- React.createElement(Checkbox, { label: t(AdditionalFilterLabels[SolrKeys.escalation]), isChecked: escalated, onChange: (_event, checked) => onEscalatedChange(checked), "aria-label": t(AdditionalFilterLabels[SolrKeys.escalation]), id: "escalated", name: "escalated", "data-tracking-id": "escalated-filter-selector" }),
69
- canAccessPrivateCaseFilter && (React.createElement(Checkbox, { label: t(AdditionalFilterLabels[SolrKeys.isPrivate]), isChecked: isPrivate, onChange: (_event, checked) => onisPrivateChange(checked), "aria-label": t(AdditionalFilterLabels[SolrKeys.isPrivate]), id: "private", name: "private", "data-tracking-id": "private-filter-selector" })))));
73
+ React.createElement(Checkbox, { label: t(AdditionalFilterLabels[SolrKeys.escalation]), isChecked: escalated, onChange: (_event, checked) => onEscalatedChange(checked), "aria-label": t(AdditionalFilterLabels[SolrKeys.escalation]), id: "escalated", name: "escalated", "data-tracking-id": "escalated-filter-selector" }))));
70
74
  }
@@ -1,9 +1,3 @@
1
1
  import React from 'react';
2
- import { IProductVersionPivotMap } from '../CaseList';
3
- interface IProps {
4
- productVersionPivotValues: IProductVersionPivotMap[];
5
- isSolrSearchDown: boolean;
6
- }
7
- export declare function CaseListFilterChips(props: IProps): React.JSX.Element;
8
- export {};
2
+ export declare function CaseListFilterChips(): React.JSX.Element;
9
3
  //# sourceMappingURL=CaseListFilterChips.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"CaseListFilterChips.d.ts","sourceRoot":"","sources":["../../../../../src/components/case-list/case-list-filters/CaseListFilterChips.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAqB,MAAM,OAAO,CAAC;AAK1C,OAAO,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAMtD,UAAU,MAAM;IACZ,yBAAyB,EAAE,uBAAuB,EAAE,CAAC;IACrD,gBAAgB,EAAE,OAAO,CAAC;CAC7B;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,qBAmIhD"}
1
+ {"version":3,"file":"CaseListFilterChips.d.ts","sourceRoot":"","sources":["../../../../../src/components/case-list/case-list-filters/CaseListFilterChips.tsx"],"names":[],"mappings":"AAMA,OAAO,KAAqB,MAAM,OAAO,CAAC;AAU1C,wBAAgB,mBAAmB,sBA+HlC"}
@@ -1,4 +1,5 @@
1
1
  import { Button, Label, LabelGroup } from '@patternfly/react-core';
2
+ import { AbilityContext, CaseListFields, resourceActions, resources } from '@rh-support/user-permissions';
2
3
  import { toNewCaseTypeMapper, toOldCaseTypeSwitcher } from '@rh-support/utils';
3
4
  import flatMap from 'lodash/flatMap';
4
5
  import remove from 'lodash/remove';
@@ -7,15 +8,17 @@ import { Trans } from 'react-i18next';
7
8
  import { ProductVersionKey, SolrKeys, SolrPivotKeys } from '../../../enums/filters';
8
9
  import { filterNamesMap } from '../../../utils/constants';
9
10
  import { CaseListFilterDispatchContext, CaseListFilterStateContext } from '../CaseListFilterContext';
10
- import { visibleFilterChipsWhenSolrDownSfdcUp } from '../CaseListFilterHelpers';
11
11
  import { clearFilters, removeFilterItem } from '../CaseListFilterReducer';
12
12
  import { CreatorSsoNameFilterChip } from './CreatorSsoNameFilterChip';
13
13
  import { ProductFilterChip } from './ProductFilterChip';
14
- export function CaseListFilterChips(props) {
14
+ export function CaseListFilterChips() {
15
+ const ability = useContext(AbilityContext);
15
16
  const { filterInfo } = useContext(CaseListFilterStateContext);
16
17
  const dispatch = useContext(CaseListFilterDispatchContext);
18
+ const canUseAdvancedSearch = ability.can(resourceActions.PATCH, resources.CASE_LIST, CaseListFields.ADVANCED_SEARCH);
17
19
  const currentFilterLength = flatMap(filterInfo).length;
18
20
  const isAnyFilterApplied = currentFilterLength > 0;
21
+ const shouldShowFilterChips = isAnyFilterApplied && !canUseAdvancedSearch;
19
22
  const deleteChip = (filterKey, value) => () => {
20
23
  removeFilterItem(dispatch, { filterKey, value });
21
24
  };
@@ -37,15 +40,10 @@ export function CaseListFilterChips(props) {
37
40
  };
38
41
  const getChipGroupForFilter = (filterKey, filterValues, groupName = '') => {
39
42
  const caseTypeFilter = filterKey === 'case_type' ? toNewCaseTypeMapper(filterValues) : filterValues;
40
- if (props.isSolrSearchDown && !visibleFilterChipsWhenSolrDownSfdcUp.includes(filterKey)) {
41
- return React.createElement(React.Fragment, null);
42
- }
43
- else {
44
- return (React.createElement("div", { className: "filter-chip", key: `${filterKey}-bookmarks-${groupName}` },
45
- React.createElement("span", { className: "filter-chip__heading" },
46
- React.createElement(Trans, null, groupName || filterNamesMap[filterKey] || filterKey)),
47
- React.createElement(LabelGroup, { numLabels: 7, className: "pf-v6-c-chip-group__simple" }, renderFilterValueChips(filterKey, caseTypeFilter, groupName))));
48
- }
43
+ return (React.createElement("div", { className: "filter-chip", key: `${filterKey}-bookmarks-${groupName}` },
44
+ React.createElement("span", { className: "filter-chip__heading" },
45
+ React.createElement(Trans, null, groupName || filterNamesMap[filterKey] || filterKey)),
46
+ React.createElement(LabelGroup, { numLabels: 7, className: "pf-v6-c-chip-group__simple" }, renderFilterValueChips(filterKey, caseTypeFilter, groupName))));
49
47
  };
50
48
  const renderAccountFilterChip = () => {
51
49
  const visibleChips = [];
@@ -83,13 +81,11 @@ export function CaseListFilterChips(props) {
83
81
  const showUsernameFilter = (Array.isArray(filterInfo[SolrKeys.createdBySsoUsername]) &&
84
82
  filterInfo[SolrKeys.createdBySsoUsername].length > 0) ||
85
83
  (Array.isArray(filterInfo[SolrKeys.caseContactSSO]) && filterInfo[SolrKeys.caseContactSSO].length > 0);
86
- return (React.createElement(React.Fragment, null, isAnyFilterApplied && (React.createElement("div", { className: "filter-chip-wrapper" },
84
+ return (React.createElement(React.Fragment, null, shouldShowFilterChips && (React.createElement("div", { className: "filter-chip-wrapper" },
87
85
  React.createElement("h2", null, "Filtering by"),
88
86
  React.createElement("div", { className: "filter-chips" },
89
- Array.isArray(filterInfo[ProductVersionKey]) && filterInfo[ProductVersionKey].length > 0 && (React.createElement(ProductFilterChip, { productList: props.isSolrSearchDown && filterInfo[ProductVersionKey].length > 1
90
- ? [filterInfo[ProductVersionKey][0]]
91
- : filterInfo[ProductVersionKey], productVersionPivot: props.productVersionPivotValues })),
92
- !props.isSolrSearchDown && showUsernameFilter && React.createElement(CreatorSsoNameFilterChip, null),
87
+ Array.isArray(filterInfo[ProductVersionKey]) && filterInfo[ProductVersionKey].length > 0 && (React.createElement(ProductFilterChip, { productList: filterInfo[ProductVersionKey] })),
88
+ showUsernameFilter && React.createElement(CreatorSsoNameFilterChip, null),
93
89
  renderChips(),
94
90
  currentFilterLength > 1 && (React.createElement(Button, { variant: "link", isInline: true, onClick: clearAllFilters, "data-tracking-id": "case-list-clear-filters", className: "clear-filters" },
95
91
  React.createElement(Trans, null, "Clear all filters"))))))));
@@ -1,15 +1,12 @@
1
1
  import { IApiResponseDetails } from '@rh-support/types/shared';
2
- import { ISolrResponseToFacetFields, ITroubleshootProductResponse } from '@rh-support/utils';
2
+ import { ITroubleshootProductResponse } from '@rh-support/utils';
3
3
  import React from 'react';
4
- import { IFacetFields } from '../../../models/caseList';
5
4
  interface IProps {
6
- filterValues: ISolrResponseToFacetFields<IFacetFields>;
7
- isSolrSearchDown: boolean;
8
5
  allCaseTypes: IApiResponseDetails<string[]>;
9
6
  allCaseStatuses: IApiResponseDetails<string[]>;
10
7
  allCaseSeverities: IApiResponseDetails<string[]>;
11
8
  allProducts: IApiResponseDetails<ITroubleshootProductResponse>;
12
9
  }
13
- export declare const CaseListFilters: ({ filterValues, allCaseTypes, allCaseSeverities, allCaseStatuses, allProducts, isSolrSearchDown, }: IProps) => React.JSX.Element;
10
+ export declare const CaseListFilters: ({ allCaseTypes, allCaseSeverities, allCaseStatuses, allProducts }: IProps) => React.JSX.Element;
14
11
  export {};
15
12
  //# sourceMappingURL=CaseListFilters.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"CaseListFilters.d.ts","sourceRoot":"","sources":["../../../../../src/components/case-list/case-list-filters/CaseListFilters.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAE/D,OAAO,EAAE,0BAA0B,EAAE,4BAA4B,EAAE,MAAM,mBAAmB,CAAC;AAE7F,OAAO,KAAqB,MAAM,OAAO,CAAC;AAG1C,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAWxD,UAAU,MAAM;IACZ,YAAY,EAAE,0BAA0B,CAAC,YAAY,CAAC,CAAC;IACvD,gBAAgB,EAAE,OAAO,CAAC;IAC1B,YAAY,EAAE,mBAAmB,CAAC,MAAM,EAAE,CAAC,CAAC;IAC5C,eAAe,EAAE,mBAAmB,CAAC,MAAM,EAAE,CAAC,CAAC;IAC/C,iBAAiB,EAAE,mBAAmB,CAAC,MAAM,EAAE,CAAC,CAAC;IACjD,WAAW,EAAE,mBAAmB,CAAC,4BAA4B,CAAC,CAAC;CAClE;AAID,eAAO,MAAM,eAAe,GAAI,oGAO7B,MAAM,sBA2ER,CAAC"}
1
+ {"version":3,"file":"CaseListFilters.d.ts","sourceRoot":"","sources":["../../../../../src/components/case-list/case-list-filters/CaseListFilters.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAE/D,OAAO,EAAE,4BAA4B,EAAE,MAAM,mBAAmB,CAAC;AACjE,OAAO,KAAqB,MAAM,OAAO,CAAC;AAY1C,UAAU,MAAM;IACZ,YAAY,EAAE,mBAAmB,CAAC,MAAM,EAAE,CAAC,CAAC;IAC5C,eAAe,EAAE,mBAAmB,CAAC,MAAM,EAAE,CAAC,CAAC;IAC/C,iBAAiB,EAAE,mBAAmB,CAAC,MAAM,EAAE,CAAC,CAAC;IACjD,WAAW,EAAE,mBAAmB,CAAC,4BAA4B,CAAC,CAAC;CAClE;AAED,eAAO,MAAM,eAAe,GAAI,mEAAmE,MAAM,sBAgExG,CAAC"}
@@ -1,7 +1,5 @@
1
1
  import { AbilityContext, CaseListFields, resourceActions, resources } from '@rh-support/user-permissions';
2
- import get from 'lodash/get';
3
2
  import React, { useContext } from 'react';
4
- import { SolrKeys } from '../../../enums/filters';
5
3
  import { AccountsBookmarkedGroupFilter } from './AccountsBookmarkedGroupFilter';
6
4
  import { AccountsFilter } from './AccountsFilter';
7
5
  import { AdditionalFilters } from './AdditionalFilters';
@@ -11,9 +9,7 @@ import { ProductsFilter } from './ProductsFilter';
11
9
  import { SeverityFilter } from './SeverityFilter';
12
10
  import { StatusFilter } from './StatusFilter';
13
11
  import { TypeFilter } from './TypeFilter';
14
- // Adding a new filter here? Make sure you add in caseSearchUtils also so that
15
- // it get included in the solr search query fq parameter
16
- export const CaseListFilters = ({ filterValues, allCaseTypes, allCaseSeverities, allCaseStatuses, allProducts, isSolrSearchDown, }) => {
12
+ export const CaseListFilters = ({ allCaseTypes, allCaseSeverities, allCaseStatuses, allProducts }) => {
17
13
  var _a, _b;
18
14
  const ability = useContext(AbilityContext);
19
15
  const canReadAccountFilter = ability.can(resourceActions.READ, resources.ACCOUNTS_FILTER);
@@ -29,13 +25,16 @@ export const CaseListFilters = ({ filterValues, allCaseTypes, allCaseSeverities,
29
25
  const canAccessTypeFilter = ability.can(resourceActions.PATCH, resources.CASE_LIST, CaseListFields.TYPE_FILTER);
30
26
  return (React.createElement(React.Fragment, null,
31
27
  React.createElement("div", { className: "filter-group" },
32
- !isSolrSearchDown && canReadAccountFilter && (React.createElement(AccountsFilter, { canReadBookmarkAccounts: canReadAccountFilter })),
33
- !isSolrSearchDown && (canReadBookmarkAccounts || canAccessManagedAccounts) && (React.createElement(AccountsBookmarkedGroupFilter, { canManageBookmarkAccounts: canManageBookmarkAccounts, canReadBookmarkAccounts: canReadBookmarkAccounts, canAccessManagedAccounts: canAccessManagedAccounts })),
28
+ canReadAccountFilter && React.createElement(AccountsFilter, { canReadBookmarkAccounts: canReadAccountFilter }),
29
+ (canReadBookmarkAccounts || canAccessManagedAccounts) && (React.createElement(AccountsBookmarkedGroupFilter, { canManageBookmarkAccounts: canManageBookmarkAccounts, canReadBookmarkAccounts: canReadBookmarkAccounts, canAccessManagedAccounts: canAccessManagedAccounts })),
34
30
  canAccessGroupsFilter && React.createElement(GroupsFilter, null),
35
- canAccessProductsFilter && (React.createElement(ProductsFilter, { filterValues: get(filterValues, SolrKeys.product, []), isSolrSearchDown: isSolrSearchDown, allProducts: ((_b = (_a = allProducts.data) === null || _a === void 0 ? void 0 : _a.productsResult) === null || _b === void 0 ? void 0 : _b.map((p) => p.product)) || [] })),
36
- canAccessSeverityFilter && (React.createElement(SeverityFilter, { filterValues: get(filterValues, SolrKeys.severity, []), isSolrSearchDown: isSolrSearchDown, allCaseSeverities: allCaseSeverities.data })),
37
- canAccessStatusFilter && (React.createElement(StatusFilter, { filterValues: get(filterValues, SolrKeys.status, []), allCaseStatuses: allCaseStatuses.data, isSolrSearchDown: isSolrSearchDown })),
38
- !isSolrSearchDown && canAccessTypeFilter && React.createElement(TypeFilter, { allCaseTypes: allCaseTypes.data }),
39
- !isSolrSearchDown && canAccessCreatorFilter && React.createElement(CreatorSsoNameFilter, null),
40
- !isSolrSearchDown && canAccessAdditionalFilter && React.createElement(AdditionalFilters, null))));
31
+ canAccessProductsFilter && (React.createElement(ProductsFilter, { allProducts: ((_b = (_a = allProducts.data) === null || _a === void 0 ? void 0 : _a.productsResult) === null || _b === void 0 ? void 0 : _b.map((p) => ({
32
+ name: p.product,
33
+ productId: p.productId,
34
+ }))) || [] })),
35
+ canAccessSeverityFilter && React.createElement(SeverityFilter, { allCaseSeverities: allCaseSeverities.data }),
36
+ canAccessStatusFilter && React.createElement(StatusFilter, { allCaseStatuses: allCaseStatuses.data }),
37
+ canAccessTypeFilter && React.createElement(TypeFilter, { allCaseTypes: allCaseTypes.data }),
38
+ canAccessCreatorFilter && React.createElement(CreatorSsoNameFilter, null),
39
+ canAccessAdditionalFilter && React.createElement(AdditionalFilters, null))));
41
40
  };
@@ -1 +1 @@
1
- {"version":3,"file":"CreatorSsoNameFilterChip.d.ts","sourceRoot":"","sources":["../../../../../src/components/case-list/case-list-filters/CreatorSsoNameFilterChip.tsx"],"names":[],"mappings":"AAKA,OAAO,KAA0C,MAAM,OAAO,CAAC;AAU/D,wBAAgB,wBAAwB,sBAuIvC"}
1
+ {"version":3,"file":"CreatorSsoNameFilterChip.d.ts","sourceRoot":"","sources":["../../../../../src/components/case-list/case-list-filters/CreatorSsoNameFilterChip.tsx"],"names":[],"mappings":"AAKA,OAAO,KAA0C,MAAM,OAAO,CAAC;AAU/D,wBAAgB,wBAAwB,sBA0IvC"}
@@ -69,6 +69,9 @@ export function CreatorSsoNameFilterChip() {
69
69
  }, []);
70
70
  setChips(valueLabelArray);
71
71
  };
72
+ // Advance search stores raw name/SSO text in filterInfo. Resolution uses ssoUsernameIn, so a
73
+ // short first name can match another contact's SSO and show the wrong chip label; filtering still
74
+ // works — users should enter full name or SSO when the label matters.
72
75
  const getInternalContactNames = (contacts) => __awaiter(this, void 0, void 0, function* () {
73
76
  const res = yield getInternalUserContactsList({
74
77
  internal: false,
@@ -1,3 +1,13 @@
1
+ import { IKeyValue } from '@rh-support/types/shared';
1
2
  import React from 'react';
2
- export declare function GroupsFilter(): React.JSX.Element;
3
+ export interface GroupsFilterProps {
4
+ /** When set with onGroupsChange, the filter is controlled (e.g. advanced search). */
5
+ selectedGroups?: Array<IKeyValue<string>>;
6
+ onGroupsChange?: (groups: Array<IKeyValue<string>>) => void;
7
+ hideLabel?: boolean;
8
+ idPrefix?: string;
9
+ showSelectionCountBadge?: boolean;
10
+ placeholder?: string;
11
+ }
12
+ export declare function GroupsFilter({ selectedGroups: controlledSelectedGroups, onGroupsChange, hideLabel, idPrefix, showSelectionCountBadge, placeholder: placeholderProp, }?: GroupsFilterProps): React.JSX.Element;
3
13
  //# sourceMappingURL=GroupsFilter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"GroupsFilter.d.ts","sourceRoot":"","sources":["../../../../../src/components/case-list/case-list-filters/GroupsFilter.tsx"],"names":[],"mappings":"AAmBA,OAAO,KAA2D,MAAM,OAAO,CAAC;AAShF,wBAAgB,YAAY,sBA+P3B"}
1
+ {"version":3,"file":"GroupsFilter.d.ts","sourceRoot":"","sources":["../../../../../src/components/case-list/case-list-filters/GroupsFilter.tsx"],"names":[],"mappings":"AAgBA,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAUrD,OAAO,KAA2D,MAAM,OAAO,CAAC;AAShF,MAAM,WAAW,iBAAiB;IAC9B,qFAAqF;IACrF,cAAc,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;IAC1C,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,KAAK,IAAI,CAAC;IAC5D,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,WAAW,CAAC,EAAE,MAAM,CAAC;CACxB;AAID,wBAAgB,YAAY,CAAC,EACzB,cAAc,EAAE,wBAAwB,EACxC,cAAc,EACd,SAAiB,EACjB,QAAmC,EACnC,uBAA+B,EAC/B,WAAW,EAAE,eAAe,GAC/B,GAAE,iBAAsB,qBAuTxB"}