diff --git a/apps/readest-app/src/app/library/hooks/useBooksSync.ts b/apps/readest-app/src/app/library/hooks/useBooksSync.ts index 713db7cf..612e7cbb 100644 --- a/apps/readest-app/src/app/library/hooks/useBooksSync.ts +++ b/apps/readest-app/src/app/library/hooks/useBooksSync.ts @@ -74,6 +74,8 @@ export const useBooksSync = ({ onSyncStart, onSyncEnd }: UseBooksSyncProps) => { const updateLibrary = async () => { if (!syncedBooks?.length) return; + // Process old books first so that when we update the library the order is preserved + syncedBooks.sort((a, b) => a.updatedAt - b.updatedAt); const processOldBook = async (oldBook: Book) => { const matchingBook = syncedBooks.find((newBook) => newBook.hash === oldBook.hash);