@@ -108,7 +108,6 @@ export async function saveMessagesForGuild(
108108 try {
109109 let lastMessageId : string | undefined ;
110110 let messagesFound = true ;
111- const channelMessages = [ ] ;
112111
113112 if ( channel . isThread ( ) && ! channel . joined ) {
114113 await channel . join ( ) ;
@@ -155,10 +154,11 @@ export async function saveMessagesForGuild(
155154 }
156155 }
157156
158- channelMessages . push ( ...validMessages ) ;
159-
160- // Update progress
161- totalSaved += validMessages . length ;
157+ // Save messages to the database
158+ if ( validMessages . length > 0 ) {
159+ await saveChannelMessages ( guildId , validMessages ) ;
160+ totalSaved += validMessages . length ;
161+ }
162162
163163 if ( since ) {
164164 lastMessageId = messages . first ( ) ?. id ;
@@ -167,21 +167,20 @@ export async function saveMessagesForGuild(
167167 }
168168 }
169169
170- if ( channelMessages . length > 0 ) {
171- if ( progressMessage && interaction ) {
172- await progressMessage . edit ( {
173- content : (
174- translations . responses ?. progress ?. [ interaction . locale ] ??
175- "Saved {saved} messages from {channels} channels..."
176- )
177- . replace ( "{saved}" , totalSaved . toString ( ) )
178- . replace ( "{channels}" , totalChannels . toString ( ) ) ,
179- } ) ;
180- }
181- await saveChannelMessages ( guildId , channelMessages ) ;
182- totalChannels ++ ;
183-
184- logger . info ( "Saved %d messages from channel %s" , channelMessages . length , channel . name ) ;
170+ totalChannels ++ ;
171+ logger . info ( "Finished saving messages from channel %s" , channel . name ) ;
172+
173+ // Update progress
174+ if ( progressMessage && interaction ) {
175+ await progressMessage . edit ( {
176+ content : (
177+ translations . responses ?. progress ?. [ interaction . locale ] ??
178+ "Saved {saved} messages from {channels}/{textChannels} channels..."
179+ )
180+ . replace ( "{saved}" , totalSaved . toString ( ) )
181+ . replace ( "{channels}" , totalChannels . toString ( ) )
182+ . replace ( "{textChannels}" , textChannels . size . toString ( ) ) ,
183+ } ) ;
185184 }
186185 } catch ( error ) {
187186 logger . warn ( "Error saving channel %s: %o" , channel . name , error ) ;
0 commit comments