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