+ /**
+ * Update the given book's cover image, or clear it.
+ *
+ * @throws ImageUploadException
+ * @throws Exception
+ */
+ public function updateCoverImage(Book $book, ?UploadedFile $coverImage, bool $removeImage = false)
+ {
+ $this->baseRepo->updateCoverImage($book, $coverImage, $removeImage);
+ }
+
+ /**
+ * Remove a book from the system.
+ *
+ * @throws Exception
+ */
+ public function destroy(Book $book)
+ {
+ $this->trashCan->softDestroyBook($book);
+ Activity::add(ActivityType::BOOK_DELETE, $book);
+
+ $this->trashCan->autoClearOld();
+ }
+}