@@ -27,8 +27,7 @@ export interface NavigationTreeNodeProps {
2727 children ?: React . ReactNode ;
2828 onActivate ?: ( path : string ) => void ;
2929 getActions ?: NavigationTreeProps [ 'getActions' ] ;
30- onActionsOpen ?: ( ) => void ;
31- onActionsClose ?: ( ) => void ;
30+ onOpenToggle ?: NavigationTreeProps [ 'onOpenToggle' ] ;
3231 renderAdditionalNodeElements ?: NavigationTreeProps [ 'renderAdditionalNodeElements' ] ;
3332 cache ?: boolean ;
3433}
@@ -73,8 +72,7 @@ export function NavigationTreeNode({
7372 children,
7473 onActivate,
7574 getActions,
76- onActionsOpen,
77- onActionsClose,
75+ onOpenToggle,
7876 renderAdditionalNodeElements,
7977 cache,
8078} : NavigationTreeNodeProps ) {
@@ -134,6 +132,17 @@ export function NavigationTreeNode({
134132 return getActions ?.( nodeState . path , nodeState . type ) ;
135133 } , [ getActions , nodeState ] ) ;
136134
135+ const handleOpenToggle = React . useCallback (
136+ ( isOpen : boolean ) => {
137+ onOpenToggle ?.( {
138+ path : nodeState . path ,
139+ type : nodeState . type ,
140+ isOpen,
141+ } ) ;
142+ } ,
143+ [ nodeState . path , nodeState . type , onOpenToggle ] ,
144+ ) ;
145+
137146 return (
138147 < TreeView
139148 name = { nodeState . name }
@@ -145,8 +154,7 @@ export function NavigationTreeNode({
145154 hasArrow = { nodeState . expandable }
146155 onClick = { handleClick }
147156 onArrowClick = { handleArrowClick }
148- onActionsClose = { onActionsClose }
149- onActionsOpen = { onActionsOpen }
157+ onOpenToggle = { handleOpenToggle }
150158 level = { level }
151159 >
152160 { children }
0 commit comments