@@ -27,7 +27,7 @@ export const useRefinements = ({
2727 hierarchicalMenuProps,
2828 refinementProps
2929} : {
30- hierarchicalMenuProps : any [ ]
30+ hierarchicalMenuProps ? : any [ ]
3131 refinementProps : any [ ]
3232} ) => {
3333 const inline = useMediaQuery ( "(min-width: 768px)" )
@@ -43,68 +43,20 @@ export const useRefinements = ({
4343 </ >
4444 )
4545
46- const hierarchicalMenu = (
47- < >
48- < MultiselectHierarchicalMenu
49- attributes = { [
50- hierarchicalMenuProps [ 0 ] . attribute ,
51- hierarchicalMenuProps [ 1 ] . attribute
52- ] }
53- />
54- </ >
55- )
56-
57- const hasRefinements = useHasRefinements ( )
58-
59- const { t } = useTranslation ( "billSearch" )
46+ let hierarchicalMenu = < > </ >
6047
61- return {
62- options : inline ? (
48+ if ( hierarchicalMenuProps ) {
49+ hierarchicalMenu = (
6350 < >
64- < div > { hierarchicalMenu } </ div >
65- < div > { refinements } </ div >
51+ < MultiselectHierarchicalMenu
52+ attributes = { [
53+ hierarchicalMenuProps [ 0 ] . attribute ,
54+ hierarchicalMenuProps [ 1 ] . attribute
55+ ] }
56+ />
6657 </ >
67- ) : (
68- < Offcanvas show = { show } onHide = { handleClose } >
69- < Offcanvas . Header closeButton >
70- < Offcanvas . Title > { t ( "filter" ) } </ Offcanvas . Title >
71- </ Offcanvas . Header >
72- < Offcanvas . Body >
73- < SearchContainer > { hierarchicalMenu } </ SearchContainer >
74- < SearchContainer > { refinements } </ SearchContainer >
75- </ Offcanvas . Body >
76- </ Offcanvas >
77- ) ,
78- show : inline ? null : (
79- < FilterButton
80- variant = "secondary"
81- active = { show }
82- onClick = { handleOpen }
83- className = { hasRefinements ? "ais-FilterButton-has-refinements" : "" }
84- >
85- < FontAwesomeIcon icon = { faFilter } /> { t ( "filter" ) }
86- </ FilterButton >
8758 )
8859 }
89- }
90-
91- export const useBasicRefinements = ( {
92- refinementProps
93- } : {
94- refinementProps : any [ ]
95- } ) => {
96- const inline = useMediaQuery ( "(min-width: 768px)" )
97- const [ show , setShow ] = useState ( false )
98- const handleClose = useCallback ( ( ) => setShow ( false ) , [ ] )
99- const handleOpen = useCallback ( ( ) => setShow ( true ) , [ ] )
100-
101- const refinements = (
102- < >
103- { refinementProps . map ( ( p , i ) => (
104- < RefinementList className = "mb-4" key = { i } { ...( p as any ) } />
105- ) ) }
106- </ >
107- )
10860
10961 const hasRefinements = useHasRefinements ( )
11062
@@ -113,6 +65,7 @@ export const useBasicRefinements = ({
11365 return {
11466 options : inline ? (
11567 < >
68+ < div > { hierarchicalMenu } </ div >
11669 < div > { refinements } </ div >
11770 </ >
11871 ) : (
@@ -121,6 +74,7 @@ export const useBasicRefinements = ({
12174 < Offcanvas . Title > { t ( "filter" ) } </ Offcanvas . Title >
12275 </ Offcanvas . Header >
12376 < Offcanvas . Body >
77+ < SearchContainer > { hierarchicalMenu } </ SearchContainer >
12478 < SearchContainer > { refinements } </ SearchContainer >
12579 </ Offcanvas . Body >
12680 </ Offcanvas >
0 commit comments