diff --git a/components/ScribeControllerBar.tsx b/components/ScribeControllerBar.tsx index a364a2e..8ef5e63 100644 --- a/components/ScribeControllerBar.tsx +++ b/components/ScribeControllerBar.tsx @@ -78,6 +78,7 @@ export default function ScribeControllerBar() { desiredWordCount: response.desiredWordCount, totalWordCount: response.desiredWordCount, quillsenseEnabled: response.quillsenseEnabled, + tools: response?.tools, }); } catch (e: unknown) { if (e instanceof Error) { diff --git a/components/book/BookList.tsx b/components/book/BookList.tsx index 7fe51b4..2090487 100644 --- a/components/book/BookList.tsx +++ b/components/book/BookList.tsx @@ -161,6 +161,7 @@ export default function BookList() { const localBooks: BookProps[] = await window.electron.invoke('db:book:books'); bookResponse = localBooks.map((book: BookProps): BookProps & { itIsLocal: boolean } => ({ ...book, itIsLocal: true })); } + console.log(bookResponse); if (bookResponse) { const booksByType: Record = bookResponse.reduce((groups: Record, book: BookProps): Record => { const imageDataUrl: string = book.coverImage ? 'data:image/jpeg;base64,' + book.coverImage : ''; @@ -267,6 +268,7 @@ export default function BookList() { localBook: localBookOnly, coverImage: bookResponse?.coverImage ? 'data:image/jpeg;base64,' + bookResponse.coverImage : '', quillsenseEnabled: bookResponse?.quillsenseEnabled, + tools: bookResponse?.tools, }); } } catch (e: unknown) { diff --git a/electron/database/models/Book.ts b/electron/database/models/Book.ts index 45669ba..cd1be96 100644 --- a/electron/database/models/Book.ts +++ b/electron/database/models/Book.ts @@ -41,7 +41,7 @@ export interface SyncedBookTools { } export interface BookProps { - id: string; + bookId: string; type: string; authorId: string; title: string; @@ -190,7 +190,7 @@ export default class Book { return await Promise.all( books.map(async (book: BookQuery): Promise => { return { - id: book.book_id, + bookId: book.book_id, type: book.type, authorId: book.author_id, title: System.decryptDataWithUserKey(book.title, userKey), @@ -254,7 +254,7 @@ export default class Book { book.getBookInfos(userId); const bookTools: BookToolsTable | null = BookRepo.fetchBookTools(userId, bookId, lang); return { - id: book.getId(), + bookId: book.getId(), type: book.getType(), authorId: book.getAuthorId(), title: book.getTitle(), diff --git a/electron/database/models/User.ts b/electron/database/models/User.ts index ecdcc75..13f425e 100644 --- a/electron/database/models/User.ts +++ b/electron/database/models/User.ts @@ -44,7 +44,6 @@ export interface UserInfoResponse { groupId: number; termsAccepted: boolean; guideTour: GuideTour[]; - books: BookSummary[]; } /** @@ -105,7 +104,6 @@ export default class User { public static async returnUserInfos(userId: string): Promise { const user: User = new User(userId); await user.getUserInfos(); - const userBooks: BookProps[] = await Book.getBooks(userId); const guideTourStatus: GuideTour[] = []; return { id: user.getId(), @@ -118,13 +116,6 @@ export default class User { groupId: user.getGroupId(), termsAccepted: user.isTermsAccepted(), guideTour: guideTourStatus, - books: userBooks.map((book: BookProps): BookSummary => { - return { - bookId: book.id, - title: book.title, - subTitle: book.subTitle, - }; - }) }; } diff --git a/electron/database/repositories/book.repository.ts b/electron/database/repositories/book.repository.ts index 51897b6..2892559 100644 --- a/electron/database/repositories/book.repository.ts +++ b/electron/database/repositories/book.repository.ts @@ -260,6 +260,7 @@ export default class BookRepo { * @returns true if the deletion was successful */ public static deleteBook(userId: string, bookId: string, lang: 'fr' | 'en'): boolean { + console.log(`Deleting book with ID ${bookId} for user ${userId}`) try { const db: Database = System.getDb(); const query: string = 'DELETE FROM erit_books WHERE author_id=? AND book_id=?';