@@ -234,8 +234,6 @@ const FileBrowser: React.FC<{
234234 } ;
235235
236236 // Create a function to fetch files and folders to avoid code duplication
237- const [ apiReady , setApiReady ] = React . useState ( false ) ;
238-
239237 const fetchFilesAndFolders = React . useCallback ( ( ) => {
240238 if ( ! browserApiRef . current ) {
241239 return ;
@@ -259,20 +257,6 @@ const FileBrowser: React.FC<{
259257 . finally ( ( ) => setLoading ( false ) ) ;
260258 } , [ currentPath ] ) ;
261259
262- // Track when the browserApiRef becomes available
263- React . useEffect ( ( ) => {
264- if ( browserApiRef . current && browserApiRef . current !== '' && ! apiReady ) {
265- setApiReady ( true ) ;
266- }
267- } , [ browserApiRef . current , apiReady ] ) ;
268-
269- // Fetch data when either the path changes or the API becomes ready
270- React . useEffect ( ( ) => {
271- if ( apiReady ) {
272- fetchFilesAndFolders ( ) ;
273- }
274- } , [ apiReady , currentPath , fetchFilesAndFolders ] ) ;
275-
276260 const [ result ] = useQuery ( {
277261 query : GetApisQuery
278262 } ) ;
@@ -296,6 +280,12 @@ const FileBrowser: React.FC<{
296280 deleteApiRef . current = data . deleteApi ;
297281 uploadApiRef . current = data . uploadApi ;
298282 folderCreateApiRef . current = data . folderCreateApi ;
283+
284+ // Fetch files and folders when APIs are ready
285+ React . useEffect ( ( ) => {
286+ fetchFilesAndFolders ( ) ;
287+ } , [ currentPath , fetchFilesAndFolders ] ) ;
288+
299289 return (
300290 < div className = "file-browser" >
301291 { loading === true && (
@@ -342,20 +332,22 @@ const FileBrowser: React.FC<{
342332 Root
343333 </ a >
344334 </ div >
345- { currentPath . map ( ( f , index ) => (
346- < div key = { index } >
347- < span > /</ span >
348- < a
349- className = "text-primary hover:underline"
350- href = "#"
351- onClick = { ( e ) =>
352- onSelectFolderFromBreadcrumb ( e , f . index )
353- }
354- >
355- { f . name }
356- </ a >
357- </ div >
358- ) ) }
335+ { currentPath
336+ . filter ( ( f ) => f . name !== '' )
337+ . map ( ( f , index ) => (
338+ < div key = { index } >
339+ < span > /</ span >
340+ < a
341+ className = "text-primary hover:underline"
342+ href = "#"
343+ onClick = { ( e ) =>
344+ onSelectFolderFromBreadcrumb ( e , f . index )
345+ }
346+ >
347+ { f . name }
348+ </ a >
349+ </ div >
350+ ) ) }
359351 </ div >
360352 </ div >
361353 < ul className = "mt-4 mb-4" >
0 commit comments