@@ -309,18 +309,11 @@ export function useDocumentChunks(
309309 hasMore : false ,
310310 } )
311311 const [ initialLoadDone , setInitialLoadDone ] = useState ( false )
312- const [ isMounted , setIsMounted ] = useState ( false )
313312
314313 // Client-side search state
315314 const [ searchQuery , setSearchQuery ] = useState ( '' )
316315 const [ currentPage , setCurrentPage ] = useState ( urlPage )
317316
318- // Handle mounting state
319- useEffect ( ( ) => {
320- setIsMounted ( true )
321- return ( ) => setIsMounted ( false )
322- } , [ ] )
323-
324317 // Sync with URL page changes
325318 useEffect ( ( ) => {
326319 setCurrentPage ( urlPage )
@@ -331,7 +324,7 @@ export function useDocumentChunks(
331324
332325 if ( enableClientSearch ) {
333326 const loadAllChunks = useCallback ( async ( ) => {
334- if ( ! knowledgeBaseId || ! documentId || ! isMounted ) return
327+ if ( ! knowledgeBaseId || ! documentId ) return
335328
336329 try {
337330 setIsLoading ( true )
@@ -342,7 +335,7 @@ export function useDocumentChunks(
342335 let offset = 0
343336 const limit = 50
344337
345- while ( hasMore && isMounted ) {
338+ while ( hasMore ) {
346339 const response = await fetch (
347340 `/api/knowledge/${ knowledgeBaseId } /documents/${ documentId } /chunks?limit=${ limit } &offset=${ offset } `
348341 )
@@ -362,32 +355,24 @@ export function useDocumentChunks(
362355 }
363356 }
364357
365- if ( isMounted ) {
366- setAllChunks ( allChunksData )
367- setChunks ( allChunksData ) // For compatibility
368- }
358+ setAllChunks ( allChunksData )
359+ setChunks ( allChunksData ) // For compatibility
369360 } catch ( err ) {
370- if ( isMounted ) {
371- setError ( err instanceof Error ? err . message : 'Failed to load chunks' )
372- logger . error ( `Failed to load chunks for document ${ documentId } :` , err )
373- }
361+ setError ( err instanceof Error ? err . message : 'Failed to load chunks' )
362+ logger . error ( `Failed to load chunks for document ${ documentId } :` , err )
374363 } finally {
375- if ( isMounted ) {
376- setIsLoading ( false )
377- }
364+ setIsLoading ( false )
378365 }
379- } , [ knowledgeBaseId , documentId , isMounted ] )
366+ } , [ knowledgeBaseId , documentId ] )
380367
381- // Load chunks on mount
368+ // Load chunks when knowledgeBaseId or documentId changes
382369 useEffect ( ( ) => {
383- if ( isMounted ) {
384- loadAllChunks ( )
385- }
386- } , [ isMounted , loadAllChunks ] )
370+ loadAllChunks ( )
371+ } , [ loadAllChunks ] )
387372
388373 // Client-side filtering with fuzzy search
389374 const filteredChunks = useMemo ( ( ) => {
390- if ( ! isMounted || ! searchQuery . trim ( ) ) return allChunks
375+ if ( ! searchQuery . trim ( ) ) return allChunks
391376
392377 const fuse = new Fuse ( allChunks , {
393378 keys : [ 'content' ] ,
@@ -400,7 +385,7 @@ export function useDocumentChunks(
400385
401386 const results = fuse . search ( searchQuery )
402387 return results . map ( ( result ) => result . item )
403- } , [ allChunks , searchQuery , isMounted ] )
388+ } , [ allChunks , searchQuery ] )
404389
405390 // Client-side pagination
406391 const CHUNKS_PER_PAGE = 50
0 commit comments