1
1
import { t } from '@lingui/macro' ;
2
- import {
3
- SearchInput ,
4
- Toolbar ,
5
- ToolbarGroup ,
6
- ToolbarItem ,
7
- } from '@patternfly/react-core' ;
8
2
import React from 'react' ;
9
3
import { Link } from 'react-router-dom' ;
10
4
import { CollectionUsedByDependencies } from 'src/api' ;
11
5
import {
12
6
EmptyStateFilter ,
13
7
EmptyStateNoData ,
8
+ HubListToolbar ,
14
9
LoadingPageSpinner ,
15
10
Pagination ,
16
- Sort ,
17
11
} from 'src/components' ;
18
12
import 'src/containers/collection-detail/collection-dependencies.scss' ;
19
13
import { Paths , formatPath } from 'src/paths' ;
@@ -40,8 +34,6 @@ export const CollectionUsedbyDependenciesList = ({
40
34
updateParams,
41
35
usedByDependenciesLoading,
42
36
} : IProps ) => {
43
- const ignoredParams = [ 'page_size' , 'page' , 'sort' , 'name__icontains' ] ;
44
-
45
37
if ( ! itemCount && ! filterIsSet ( params , [ 'name__icontains' ] ) ) {
46
38
return (
47
39
< EmptyStateNoData
@@ -51,50 +43,29 @@ export const CollectionUsedbyDependenciesList = ({
51
43
) ;
52
44
}
53
45
46
+ const ignoredParams = [ 'page_size' , 'page' , 'sort' ] ;
47
+
48
+ const filterConfig = [
49
+ {
50
+ id : 'name__icontains' ,
51
+ title : t `Name` ,
52
+ } ,
53
+ ] ;
54
+
55
+ const sortOptions = [
56
+ { title : t `Collection` , id : 'collection' , type : 'alpha' } ,
57
+ ] ;
58
+
54
59
return (
55
60
< >
56
- < div className = 'hub-toolbar' >
57
- < Toolbar >
58
- < ToolbarGroup >
59
- < ToolbarItem >
60
- < SearchInput
61
- value = { params . name__icontains || '' }
62
- onChange = { ( _e , val ) =>
63
- updateParams (
64
- ParamHelper . setParam ( params , 'name__icontains' , val ) ,
65
- )
66
- }
67
- onClear = { ( ) =>
68
- updateParams (
69
- ParamHelper . setParam ( params , 'name__icontains' , '' ) ,
70
- )
71
- }
72
- aria-label = 'filter-collection-name'
73
- placeholder = { t `Filter by name` }
74
- />
75
- </ ToolbarItem >
76
- < ToolbarItem >
77
- < Sort
78
- options = { [
79
- { title : t `Collection` , id : 'collection' , type : 'alpha' } ,
80
- ] }
81
- params = { params }
82
- updateParams = { ( { sort } ) =>
83
- updateParams ( ParamHelper . setParam ( params , 'sort' , sort ) )
84
- }
85
- />
86
- </ ToolbarItem >
87
- </ ToolbarGroup >
88
- </ Toolbar >
89
- { ! ! itemCount && (
90
- < Pagination
91
- params = { params }
92
- updateParams = { ( p ) => updateParams ( p ) }
93
- count = { itemCount }
94
- isTop
95
- />
96
- ) }
97
- </ div >
61
+ < HubListToolbar
62
+ count = { itemCount }
63
+ filterConfig = { filterConfig }
64
+ ignoredParams = { ignoredParams }
65
+ params = { params }
66
+ sortOptions = { sortOptions }
67
+ updateParams = { updateParams }
68
+ />
98
69
99
70
{ usedByDependenciesLoading ? (
100
71
< LoadingPageSpinner />
@@ -118,10 +89,10 @@ export const CollectionUsedbyDependenciesList = ({
118
89
namespace,
119
90
repo : repository_list [ 0 ] ,
120
91
} ,
121
- ParamHelper . getReduced (
122
- { version } ,
123
- ignoredParams ,
124
- ) ,
92
+ ParamHelper . getReduced ( { version } , [
93
+ ... ignoredParams ,
94
+ 'name__icontains' ,
95
+ ] ) ,
125
96
) }
126
97
>
127
98
{ namespace + '.' + name } v{ version }
0 commit comments