@@ -171,7 +171,7 @@ export const connectMultiselectHierarchicalMenu: MultiselectHierarchicalMenuConn
171
171
}
172
172
} ,
173
173
init ( initOptions ) {
174
- const { helper, instantSearchInstance } = initOptions
174
+ const { helper } = initOptions
175
175
attributes . forEach ( attr => {
176
176
if ( ! helper . state . disjunctiveFacets . includes ( attr ) ) {
177
177
helper . setQueryParameter ( "disjunctiveFacets" , [
@@ -180,8 +180,7 @@ export const connectMultiselectHierarchicalMenu: MultiselectHierarchicalMenuConn
180
180
] )
181
181
}
182
182
} )
183
- helper . search ( )
184
-
183
+ const { instantSearchInstance } = initOptions
185
184
renderFn (
186
185
{
187
186
...this . getWidgetRenderState ( initOptions ) ,
@@ -311,18 +310,14 @@ const MultiselectHierarchicalMenuItem = ({
311
310
312
311
const onButtonClick = useCallback ( ( ) => {
313
312
if ( isOpen ) {
314
- const currentLevel = levels [ index ]
315
- const subLevel = levels [ index + 1 ]
316
- if ( item . isRefined ) {
317
- currentLevel . refine ( item . name )
318
- }
319
- if ( subLevel ) {
320
- subLevel . items
321
- . filter (
322
- subItem => subItem . name . startsWith ( item . name ) && subItem . isRefined
323
- )
324
- . forEach ( subItem => subLevel . refine ( subItem . name ) )
325
- }
313
+ // Clear all refinements
314
+ levels . forEach ( level => {
315
+ level . items . forEach ( subItem => {
316
+ if ( subItem . isRefined ) {
317
+ level . refine ( subItem . name )
318
+ }
319
+ } )
320
+ } )
326
321
}
327
322
setIsOpen ( ! isOpen )
328
323
} , [ isOpen , levels ] )
@@ -395,10 +390,7 @@ const MultiselectHierarchicalMenuItem = ({
395
390
{ item . label }
396
391
</ span >
397
392
{ ! hasSubLevel && ( // Only render count if it's child
398
- < span
399
- className = { `ais-MultiselectHierarchicalMenu-count--child
400
- }` }
401
- >
393
+ < span className = { `ais-MultiselectHierarchicalMenu-count--child` } >
402
394
{ item . count }
403
395
</ span >
404
396
) }
0 commit comments