@@ -57,33 +57,29 @@ export function useScriptList() {
5757 useEffect ( ( ) => {
5858 let mounted = true ;
5959 setLoadingList ( true ) ;
60- fetchScriptList ( )
61- . then ( async ( list ) => {
60+ fetchScriptList ( ) . then ( async ( list ) => {
61+ if ( ! mounted ) return ;
62+ setScriptList ( list ) ;
63+ setLoadingList ( false ) ;
64+ for await ( const { chunkResults } of loadScriptFavicons ( list ) ) {
6265 if ( ! mounted ) return ;
63- setScriptList ( list ) ;
64- for await ( const { chunkResults } of loadScriptFavicons ( list ) ) {
65- if ( ! mounted ) return ;
66- setScriptList ( ( list ) => {
67- const scriptMap = new Map < string , ScriptLoading > ( ) ;
68- for ( const s of list ) {
69- scriptMap . set ( s . uuid , s ) ;
70- }
71- const altered = new Set ( ) ;
72- for ( const item of chunkResults ) {
73- const script = scriptMap . get ( item . uuid ) ;
74- if ( script ) {
75- altered . add ( item . uuid ) ;
76- script . favorite = item . fav ;
77- }
66+ setScriptList ( ( list ) => {
67+ const scriptMap = new Map < string , ScriptLoading > ( ) ;
68+ for ( const s of list ) {
69+ scriptMap . set ( s . uuid , s ) ;
70+ }
71+ const altered = new Set ( ) ;
72+ for ( const item of chunkResults ) {
73+ const script = scriptMap . get ( item . uuid ) ;
74+ if ( script ) {
75+ altered . add ( item . uuid ) ;
76+ script . favorite = item . fav ;
7877 }
79- return list . map ( ( entry ) => ( altered . has ( entry . uuid ) ? { ...entry } : entry ) ) ;
80- } ) ;
81- }
82- } )
83- . finally ( ( ) => {
84- if ( ! mounted ) return ;
85- setLoadingList ( false ) ;
86- } ) ;
78+ }
79+ return list . map ( ( entry ) => ( altered . has ( entry . uuid ) ? { ...entry } : entry ) ) ;
80+ } ) ;
81+ }
82+ } ) ;
8783 return ( ) => {
8884 mounted = false ;
8985 } ;
0 commit comments