File tree Expand file tree Collapse file tree 1 file changed +16
-4
lines changed Expand file tree Collapse file tree 1 file changed +16
-4
lines changed Original file line number Diff line number Diff line change @@ -101,15 +101,16 @@ export const TreeEntry: FC<TreeEntryProperties> = ({
101
101
const [ key , value ] = data ;
102
102
const [ open , setOpen ] = useState ( false ) ;
103
103
const Icon = open ? MinusSquareIcon : PlusSquareIcon ;
104
+ const isToggleable =
105
+ ( typeof value === "object" && Object . values ( value ?? { } ) . length ) ||
106
+ ( Array . isArray ( value ) && value . length ) ;
104
107
105
108
const toggleOpen = ( ) => setOpen ( ! open ) ;
106
109
107
110
return (
108
111
< >
109
112
< div className = "flex items-center gap-3" >
110
- { ( typeof value === "object" &&
111
- Object . values ( value ?? { } ) . length ) ||
112
- ( Array . isArray ( value ) && value . length ) ? (
113
+ { isToggleable ? (
113
114
< button
114
115
onClick = { toggleOpen }
115
116
aria-label = "Toggle"
@@ -120,7 +121,18 @@ export const TreeEntry: FC<TreeEntryProperties> = ({
120
121
) : (
121
122
< div className = "w-4 h-4" />
122
123
) }
123
- { key && < span > { key } </ span > }
124
+ { key &&
125
+ ( isToggleable ? (
126
+ < button
127
+ onClick = { toggleOpen }
128
+ type = "button"
129
+ className = "hover:underline"
130
+ >
131
+ { key }
132
+ </ button >
133
+ ) : (
134
+ < span > { key } </ span >
135
+ ) ) }
124
136
{ renderValue ( value ) . map ( ( part , partIndex ) => (
125
137
< span
126
138
key = { partIndex }
You can’t perform that action at this time.
0 commit comments