From 63e3e7a8ac9e355adb442caef6228417243c0d2d Mon Sep 17 00:00:00 2001 From: Gauthier Roebroeck Date: Thu, 29 Jun 2023 12:13:32 +0800 Subject: [PATCH] feat: library deep scan is now a parameter of the scan API Closes: #1137 --- .../components/dialogs/LibraryEditDialog.vue | 10 -------- .../src/components/menus/BookActionsMenu.vue | 2 +- .../menus/CollectionActionsMenu.vue | 2 +- .../components/menus/LibraryActionsMenu.vue | 9 ++++--- .../components/menus/ReadListActionsMenu.vue | 2 +- .../components/menus/SeriesActionsMenu.vue | 2 +- komga-webui/src/locales/en.json | 7 +++--- .../src/services/komga-libraries.service.ts | 24 ++++++++++--------- komga-webui/src/styles/list-warning.css | 10 +++++++- komga-webui/src/types/komga-libraries.ts | 3 --- komga-webui/src/views/SettingsServer.vue | 10 ++++++-- ...114356__remove_library_scandeep_column.sql | 2 ++ .../gotson/komga/application/tasks/Task.kt | 6 ++--- .../komga/application/tasks/TaskEmitter.kt | 4 ++-- .../komga/application/tasks/TaskHandler.kt | 2 +- .../org/gotson/komga/domain/model/Library.kt | 1 - .../domain/service/LibraryContentLifecycle.kt | 4 ++-- .../komga/infrastructure/jooq/LibraryDao.kt | 3 --- .../interfaces/api/rest/LibraryController.kt | 10 ++++---- .../api/rest/dto/LibraryCreationDto.kt | 1 - .../interfaces/api/rest/dto/LibraryDto.kt | 2 -- .../api/rest/dto/LibraryUpdateDto.kt | 1 - 22 files changed, 60 insertions(+), 57 deletions(-) create mode 100644 komga/src/flyway/resources/db/migration/sqlite/V20230629114356__remove_library_scandeep_column.sql diff --git a/komga-webui/src/components/dialogs/LibraryEditDialog.vue b/komga-webui/src/components/dialogs/LibraryEditDialog.vue index 82e9a06538..a97a1c5aa5 100644 --- a/komga-webui/src/components/dialogs/LibraryEditDialog.vue +++ b/komga-webui/src/components/dialogs/LibraryEditDialog.vue @@ -108,13 +108,6 @@ - - @@ -392,7 +385,6 @@ export default Vue.extend({ importLocalArtwork: true, importBarcodeIsbn: false, scanForceModifiedTime: false, - scanDeep: false, repairExtensions: false, convertToCbz: false, emptyTrashAfterScan: false, @@ -525,7 +517,6 @@ export default Vue.extend({ this.form.importLocalArtwork = library ? library.importLocalArtwork : true this.form.importBarcodeIsbn = library ? library.importBarcodeIsbn : false this.form.scanForceModifiedTime = library ? library.scanForceModifiedTime : false - this.form.scanDeep = library ? library.scanDeep : false this.form.repairExtensions = library ? library.repairExtensions : false this.form.convertToCbz = library ? library.convertToCbz : false this.form.emptyTrashAfterScan = library ? library.emptyTrashAfterScan : false @@ -553,7 +544,6 @@ export default Vue.extend({ importLocalArtwork: this.form.importLocalArtwork, importBarcodeIsbn: this.form.importBarcodeIsbn, scanForceModifiedTime: this.form.scanForceModifiedTime, - scanDeep: this.form.scanDeep, repairExtensions: this.form.repairExtensions, convertToCbz: this.form.convertToCbz, emptyTrashAfterScan: this.form.emptyTrashAfterScan, diff --git a/komga-webui/src/components/menus/BookActionsMenu.vue b/komga-webui/src/components/menus/BookActionsMenu.vue index 5ac3a5e11d..340b3ec094 100644 --- a/komga-webui/src/components/menus/BookActionsMenu.vue +++ b/komga-webui/src/components/menus/BookActionsMenu.vue @@ -22,7 +22,7 @@ {{ $t('menu.mark_unread') }} - + {{ $t('menu.delete') }} diff --git a/komga-webui/src/components/menus/CollectionActionsMenu.vue b/komga-webui/src/components/menus/CollectionActionsMenu.vue index 30481f9793..ec01b2185d 100644 --- a/komga-webui/src/components/menus/CollectionActionsMenu.vue +++ b/komga-webui/src/components/menus/CollectionActionsMenu.vue @@ -8,7 +8,7 @@ + class="list-danger"> {{ $t('menu.delete') }} diff --git a/komga-webui/src/components/menus/LibraryActionsMenu.vue b/komga-webui/src/components/menus/LibraryActionsMenu.vue index 280e7c6a5e..31593bfada 100644 --- a/komga-webui/src/components/menus/LibraryActionsMenu.vue +++ b/komga-webui/src/components/menus/LibraryActionsMenu.vue @@ -10,6 +10,9 @@ {{ $t('menu.scan_library_files') }} + + {{ $t('menu.scan_library_files_deep') }} + {{ $t('menu.analyze') }} @@ -23,7 +26,7 @@ {{ $t('menu.edit') }} + class="list-danger"> {{ $t('menu.delete') }} @@ -81,8 +84,8 @@ export default Vue.extend({ }, }, methods: { - scan() { - this.$komgaLibraries.scanLibrary(this.library) + scan(scanDeep: boolean = false) { + this.$komgaLibraries.scanLibrary(this.library, scanDeep) }, analyze() { this.$komgaLibraries.analyzeLibrary(this.library) diff --git a/komga-webui/src/components/menus/ReadListActionsMenu.vue b/komga-webui/src/components/menus/ReadListActionsMenu.vue index 2b994da9ef..c69f47500b 100644 --- a/komga-webui/src/components/menus/ReadListActionsMenu.vue +++ b/komga-webui/src/components/menus/ReadListActionsMenu.vue @@ -8,7 +8,7 @@ + class="list-danger"> {{ $t('menu.delete') }} diff --git a/komga-webui/src/components/menus/SeriesActionsMenu.vue b/komga-webui/src/components/menus/SeriesActionsMenu.vue index bd58873fe5..4ed037187b 100644 --- a/komga-webui/src/components/menus/SeriesActionsMenu.vue +++ b/komga-webui/src/components/menus/SeriesActionsMenu.vue @@ -22,7 +22,7 @@ {{ $t('menu.mark_unread') }} - + {{ $t('menu.delete') }} diff --git a/komga-webui/src/locales/en.json b/komga-webui/src/locales/en.json index 7c0e6de455..db90229b13 100644 --- a/komga-webui/src/locales/en.json +++ b/komga-webui/src/locales/en.json @@ -425,7 +425,6 @@ "field_name": "Name", "field_repair_extensions": "Automatically repair incorrect file extensions", "field_root_folder": "Root folder", - "field_scanner_deep_scan": "Deep scan", "field_scanner_empty_trash_after_scan": "Empty trash automatically after every scan", "field_scanner_force_directory_modified_time": "Force directory modified time", "field_series_cover": "Series cover", @@ -590,9 +589,9 @@ "count": "Count", "delete_count": "Deletion count", "delete_size": "Space saved", + "match_count": "Match count", "size": "Size", - "total_size": "Total size", - "match_count": "Match count" + "total_size": "Total size" }, "info": "Deleting duplicate pages will modify your files. Backup your files and use manual deletion before using automatic deletion.", "known": "Known", @@ -752,6 +751,7 @@ "mark_unread": "Mark as unread", "refresh_metadata": "Refresh metadata", "scan_library_files": "Scan library files", + "scan_library_files_deep": "Scan library files (deep)", "select_all": "Select all" }, "metrics": { @@ -803,6 +803,7 @@ "button_cancel_all_tasks": "Cancel all tasks", "button_empty_trash": "Empty trash for all libraries", "button_scan_libraries": "Scan all libraries", + "button_scan_libraries_deep": "Scan all libraries (deep)", "button_shutdown": "Shut down", "notification_tasks_cancelled": "No tasks to cancel | One task cancelled | {count} tasks cancelled", "section_title": "Server Management" diff --git a/komga-webui/src/services/komga-libraries.service.ts b/komga-webui/src/services/komga-libraries.service.ts index 39f129a9b2..ff6c720338 100644 --- a/komga-webui/src/services/komga-libraries.service.ts +++ b/komga-webui/src/services/komga-libraries.service.ts @@ -6,11 +6,11 @@ const API_LIBRARIES = '/api/v1/libraries' export default class KomgaLibrariesService { private http: AxiosInstance - constructor (http: AxiosInstance) { + constructor(http: AxiosInstance) { this.http = http } - async getLibraries (): Promise { + async getLibraries(): Promise { try { return (await this.http.get(API_LIBRARIES)).data } catch (e) { @@ -22,7 +22,7 @@ export default class KomgaLibrariesService { } } - async getLibrary (libraryId: string): Promise { + async getLibrary(libraryId: string): Promise { try { return (await this.http.get(`${API_LIBRARIES}/${libraryId}`)).data } catch (e) { @@ -34,7 +34,7 @@ export default class KomgaLibrariesService { } } - async postLibrary (library: LibraryCreationDto): Promise { + async postLibrary(library: LibraryCreationDto): Promise { try { return (await this.http.post(API_LIBRARIES, library)).data } catch (e) { @@ -46,7 +46,7 @@ export default class KomgaLibrariesService { } } - async updateLibrary (libraryId: string, library: LibraryUpdateDto) { + async updateLibrary(libraryId: string, library: LibraryUpdateDto) { try { await this.http.put(`${API_LIBRARIES}/${libraryId}`, library) } catch (e) { @@ -58,7 +58,7 @@ export default class KomgaLibrariesService { } } - async deleteLibrary (library: LibraryDto) { + async deleteLibrary(library: LibraryDto) { try { await this.http.delete(`${API_LIBRARIES}/${library.id}`) } catch (e) { @@ -70,9 +70,11 @@ export default class KomgaLibrariesService { } } - async scanLibrary (library: LibraryDto) { + async scanLibrary(library: LibraryDto, scanDeep: boolean = false) { try { - await this.http.post(`${API_LIBRARIES}/${library.id}/scan`) + await this.http.post(`${API_LIBRARIES}/${library.id}/scan`, null, { + params: {deep: scanDeep}, + }) } catch (e) { let msg = `An error occurred while trying to scan library '${library.name}'` if (e.response.data.message) { @@ -82,7 +84,7 @@ export default class KomgaLibrariesService { } } - async analyzeLibrary (library: LibraryDto) { + async analyzeLibrary(library: LibraryDto) { try { await this.http.post(`${API_LIBRARIES}/${library.id}/analyze`) } catch (e) { @@ -94,7 +96,7 @@ export default class KomgaLibrariesService { } } - async refreshMetadata (library: LibraryDto) { + async refreshMetadata(library: LibraryDto) { try { await this.http.post(`${API_LIBRARIES}/${library.id}/metadata/refresh`) } catch (e) { @@ -106,7 +108,7 @@ export default class KomgaLibrariesService { } } - async emptyTrash (library: LibraryDto) { + async emptyTrash(library: LibraryDto) { try { await this.http.post(`${API_LIBRARIES}/${library.id}/empty-trash`) } catch (e) { diff --git a/komga-webui/src/styles/list-warning.css b/komga-webui/src/styles/list-warning.css index 3ffad9a6e7..dba4571e74 100644 --- a/komga-webui/src/styles/list-warning.css +++ b/komga-webui/src/styles/list-warning.css @@ -1,5 +1,13 @@ +.list-danger:hover { + background: #ff5252; +} + +.list-danger:hover .v-list-item__title { + color: white; +} + .list-warning:hover { - background: #F44336; + background: #fb8c00; } .list-warning:hover .v-list-item__title { diff --git a/komga-webui/src/types/komga-libraries.ts b/komga-webui/src/types/komga-libraries.ts index a8c9858bbf..69dacef0ca 100644 --- a/komga-webui/src/types/komga-libraries.ts +++ b/komga-webui/src/types/komga-libraries.ts @@ -14,7 +14,6 @@ export interface LibraryCreationDto { importLocalArtwork: boolean, importBarcodeIsbn: boolean, scanForceModifiedTime: boolean, - scanDeep: boolean, repairExtensions: boolean, convertToCbz: boolean, emptyTrashAfterScan: boolean, @@ -38,7 +37,6 @@ export interface LibraryUpdateDto { importLocalArtwork: boolean, importBarcodeIsbn: boolean, scanForceModifiedTime: boolean, - scanDeep: boolean, repairExtensions: boolean, convertToCbz: boolean, emptyTrashAfterScan: boolean, @@ -63,7 +61,6 @@ export interface LibraryDto { importLocalArtwork: boolean, importBarcodeIsbn: boolean, scanForceModifiedTime: boolean, - scanDeep: boolean, repairExtensions: boolean, convertToCbz: boolean, emptyTrashAfterScan: boolean, diff --git a/komga-webui/src/views/SettingsServer.vue b/komga-webui/src/views/SettingsServer.vue index 307d9601a0..01cad12a6b 100644 --- a/komga-webui/src/views/SettingsServer.vue +++ b/komga-webui/src/views/SettingsServer.vue @@ -7,6 +7,12 @@ {{ $t('server.server_management.button_scan_libraries') }} + + {{ $t('server.server_management.button_scan_libraries_deep') }} + + {{ $t('server.server_management.button_empty_trash') }} @@ -68,9 +74,9 @@ export default Vue.extend({ this.$komgaLibraries.emptyTrash(library) }) }, - scanAllLibraries() { + scanAllLibraries(scanDeep: boolean = false) { this.libraries.forEach(library => { - this.$komgaLibraries.scanLibrary(library) + this.$komgaLibraries.scanLibrary(library, scanDeep) }) }, async cancelAllTasks() { diff --git a/komga/src/flyway/resources/db/migration/sqlite/V20230629114356__remove_library_scandeep_column.sql b/komga/src/flyway/resources/db/migration/sqlite/V20230629114356__remove_library_scandeep_column.sql new file mode 100644 index 0000000000..fa4477ed6d --- /dev/null +++ b/komga/src/flyway/resources/db/migration/sqlite/V20230629114356__remove_library_scandeep_column.sql @@ -0,0 +1,2 @@ +ALTER TABLE LIBRARY + RENAME COLUMN SCAN_DEEP to _UNUSED; diff --git a/komga/src/main/kotlin/org/gotson/komga/application/tasks/Task.kt b/komga/src/main/kotlin/org/gotson/komga/application/tasks/Task.kt index 3c19ec7de7..63f2a588e7 100644 --- a/komga/src/main/kotlin/org/gotson/komga/application/tasks/Task.kt +++ b/komga/src/main/kotlin/org/gotson/komga/application/tasks/Task.kt @@ -16,9 +16,9 @@ sealed class Task(priority: Int = DEFAULT_PRIORITY, val groupId: String? = null) abstract fun uniqueId(): String val priority = priority.coerceIn(0, 9) - class ScanLibrary(val libraryId: String, priority: Int = DEFAULT_PRIORITY) : Task(priority) { - override fun uniqueId() = "SCAN_LIBRARY_$libraryId" - override fun toString(): String = "ScanLibrary(libraryId='$libraryId', priority='$priority')" + class ScanLibrary(val libraryId: String, val scanDeep: Boolean, priority: Int = DEFAULT_PRIORITY) : Task(priority) { + override fun uniqueId() = "SCAN_LIBRARY_${libraryId}_DEEP_$scanDeep" + override fun toString(): String = "ScanLibrary(libraryId='$libraryId', scanDeep='$scanDeep', priority='$priority')" } class FindBooksToConvert(val libraryId: String, priority: Int = DEFAULT_PRIORITY) : Task(priority) { diff --git a/komga/src/main/kotlin/org/gotson/komga/application/tasks/TaskEmitter.kt b/komga/src/main/kotlin/org/gotson/komga/application/tasks/TaskEmitter.kt index 2ffcfd2476..7fc185dda5 100644 --- a/komga/src/main/kotlin/org/gotson/komga/application/tasks/TaskEmitter.kt +++ b/komga/src/main/kotlin/org/gotson/komga/application/tasks/TaskEmitter.kt @@ -42,8 +42,8 @@ class TaskEmitter( libraryRepository.findAll().forEach { scanLibrary(it.id) } } - fun scanLibrary(libraryId: String, priority: Int = DEFAULT_PRIORITY) { - submitTask(Task.ScanLibrary(libraryId, priority)) + fun scanLibrary(libraryId: String, scanDeep: Boolean = false, priority: Int = DEFAULT_PRIORITY) { + submitTask(Task.ScanLibrary(libraryId, scanDeep, priority)) } fun emptyTrash(libraryId: String, priority: Int = DEFAULT_PRIORITY) { diff --git a/komga/src/main/kotlin/org/gotson/komga/application/tasks/TaskHandler.kt b/komga/src/main/kotlin/org/gotson/komga/application/tasks/TaskHandler.kt index ac8ba2de7d..189517df11 100644 --- a/komga/src/main/kotlin/org/gotson/komga/application/tasks/TaskHandler.kt +++ b/komga/src/main/kotlin/org/gotson/komga/application/tasks/TaskHandler.kt @@ -57,7 +57,7 @@ class TaskHandler( when (task) { is Task.ScanLibrary -> libraryRepository.findByIdOrNull(task.libraryId)?.let { library -> - libraryContentLifecycle.scanRootFolder(library) + libraryContentLifecycle.scanRootFolder(library, task.scanDeep) taskEmitter.analyzeUnknownAndOutdatedBooks(library) taskEmitter.repairExtensions(library, LOW_PRIORITY) taskEmitter.findBooksToConvert(library, LOWEST_PRIORITY) diff --git a/komga/src/main/kotlin/org/gotson/komga/domain/model/Library.kt b/komga/src/main/kotlin/org/gotson/komga/domain/model/Library.kt index b221b8b353..d22d8c115e 100644 --- a/komga/src/main/kotlin/org/gotson/komga/domain/model/Library.kt +++ b/komga/src/main/kotlin/org/gotson/komga/domain/model/Library.kt @@ -21,7 +21,6 @@ data class Library( val importLocalArtwork: Boolean = true, val importBarcodeIsbn: Boolean = true, val scanForceModifiedTime: Boolean = false, - val scanDeep: Boolean = false, val repairExtensions: Boolean = false, val convertToCbz: Boolean = false, val emptyTrashAfterScan: Boolean = false, diff --git a/komga/src/main/kotlin/org/gotson/komga/domain/service/LibraryContentLifecycle.kt b/komga/src/main/kotlin/org/gotson/komga/domain/service/LibraryContentLifecycle.kt index 6a51323644..2c5e32dff9 100644 --- a/komga/src/main/kotlin/org/gotson/komga/domain/service/LibraryContentLifecycle.kt +++ b/komga/src/main/kotlin/org/gotson/komga/domain/service/LibraryContentLifecycle.kt @@ -62,7 +62,7 @@ class LibraryContentLifecycle( private val eventPublisher: EventPublisher, ) { - fun scanRootFolder(library: Library) { + fun scanRootFolder(library: Library, scanDeep: Boolean = false) { logger.info { "Updating library: $library" } measureTime { val scanResult = try { @@ -136,7 +136,7 @@ class LibraryContentLifecycle( logger.info { "Series changed on disk, updating: $existingSeries" } seriesRepository.update(existingSeries.copy(fileLastModified = newSeries.fileLastModified, deletedDate = null)) } - if (library.scanDeep || seriesChanged) { + if (scanDeep || seriesChanged) { // update list of books with existing entities if they exist val existingBooks = bookRepository.findAllBySeriesId(existingSeries.id) logger.debug { "Existing books: $existingBooks" } diff --git a/komga/src/main/kotlin/org/gotson/komga/infrastructure/jooq/LibraryDao.kt b/komga/src/main/kotlin/org/gotson/komga/infrastructure/jooq/LibraryDao.kt index aff7280953..6746d211b9 100644 --- a/komga/src/main/kotlin/org/gotson/komga/infrastructure/jooq/LibraryDao.kt +++ b/komga/src/main/kotlin/org/gotson/komga/infrastructure/jooq/LibraryDao.kt @@ -72,7 +72,6 @@ class LibraryDao( .set(l.IMPORT_LOCAL_ARTWORK, library.importLocalArtwork) .set(l.IMPORT_BARCODE_ISBN, library.importBarcodeIsbn) .set(l.SCAN_FORCE_MODIFIED_TIME, library.scanForceModifiedTime) - .set(l.SCAN_DEEP, library.scanDeep) .set(l.REPAIR_EXTENSIONS, library.repairExtensions) .set(l.CONVERT_TO_CBZ, library.convertToCbz) .set(l.EMPTY_TRASH_AFTER_SCAN, library.emptyTrashAfterScan) @@ -100,7 +99,6 @@ class LibraryDao( .set(l.IMPORT_LOCAL_ARTWORK, library.importLocalArtwork) .set(l.IMPORT_BARCODE_ISBN, library.importBarcodeIsbn) .set(l.SCAN_FORCE_MODIFIED_TIME, library.scanForceModifiedTime) - .set(l.SCAN_DEEP, library.scanDeep) .set(l.REPAIR_EXTENSIONS, library.repairExtensions) .set(l.CONVERT_TO_CBZ, library.convertToCbz) .set(l.EMPTY_TRASH_AFTER_SCAN, library.emptyTrashAfterScan) @@ -131,7 +129,6 @@ class LibraryDao( importLocalArtwork = importLocalArtwork, importBarcodeIsbn = importBarcodeIsbn, scanForceModifiedTime = scanForceModifiedTime, - scanDeep = scanDeep, repairExtensions = repairExtensions, convertToCbz = convertToCbz, emptyTrashAfterScan = emptyTrashAfterScan, diff --git a/komga/src/main/kotlin/org/gotson/komga/interfaces/api/rest/LibraryController.kt b/komga/src/main/kotlin/org/gotson/komga/interfaces/api/rest/LibraryController.kt index 679c4f86dc..967bc951e3 100644 --- a/komga/src/main/kotlin/org/gotson/komga/interfaces/api/rest/LibraryController.kt +++ b/komga/src/main/kotlin/org/gotson/komga/interfaces/api/rest/LibraryController.kt @@ -32,6 +32,7 @@ import org.springframework.web.bind.annotation.PostMapping import org.springframework.web.bind.annotation.PutMapping import org.springframework.web.bind.annotation.RequestBody import org.springframework.web.bind.annotation.RequestMapping +import org.springframework.web.bind.annotation.RequestParam import org.springframework.web.bind.annotation.ResponseStatus import org.springframework.web.bind.annotation.RestController import org.springframework.web.server.ResponseStatusException @@ -90,7 +91,6 @@ class LibraryController( importLocalArtwork = library.importLocalArtwork, importBarcodeIsbn = library.importBarcodeIsbn, scanForceModifiedTime = library.scanForceModifiedTime, - scanDeep = library.scanDeep, repairExtensions = library.repairExtensions, convertToCbz = library.convertToCbz, emptyTrashAfterScan = library.emptyTrashAfterScan, @@ -136,7 +136,6 @@ class LibraryController( importLocalArtwork = library.importLocalArtwork, importBarcodeIsbn = library.importBarcodeIsbn, scanForceModifiedTime = library.scanForceModifiedTime, - scanDeep = library.scanDeep, repairExtensions = library.repairExtensions, convertToCbz = library.convertToCbz, emptyTrashAfterScan = library.emptyTrashAfterScan, @@ -173,9 +172,12 @@ class LibraryController( @PostMapping("{libraryId}/scan") @PreAuthorize("hasRole('$ROLE_ADMIN')") @ResponseStatus(HttpStatus.ACCEPTED) - fun scan(@PathVariable libraryId: String) { + fun scan( + @PathVariable libraryId: String, + @RequestParam(required = false) deep: Boolean = false, + ) { libraryRepository.findByIdOrNull(libraryId)?.let { library -> - taskEmitter.scanLibrary(library.id, HIGHEST_PRIORITY) + taskEmitter.scanLibrary(library.id, deep, HIGHEST_PRIORITY) } ?: throw ResponseStatusException(HttpStatus.NOT_FOUND) } diff --git a/komga/src/main/kotlin/org/gotson/komga/interfaces/api/rest/dto/LibraryCreationDto.kt b/komga/src/main/kotlin/org/gotson/komga/interfaces/api/rest/dto/LibraryCreationDto.kt index bd53230c6d..82d4514092 100644 --- a/komga/src/main/kotlin/org/gotson/komga/interfaces/api/rest/dto/LibraryCreationDto.kt +++ b/komga/src/main/kotlin/org/gotson/komga/interfaces/api/rest/dto/LibraryCreationDto.kt @@ -16,7 +16,6 @@ data class LibraryCreationDto( val importLocalArtwork: Boolean = true, val importBarcodeIsbn: Boolean = true, val scanForceModifiedTime: Boolean = false, - val scanDeep: Boolean = false, val repairExtensions: Boolean = false, val convertToCbz: Boolean = false, val emptyTrashAfterScan: Boolean = false, diff --git a/komga/src/main/kotlin/org/gotson/komga/interfaces/api/rest/dto/LibraryDto.kt b/komga/src/main/kotlin/org/gotson/komga/interfaces/api/rest/dto/LibraryDto.kt index 405c3499fa..2240a150f6 100644 --- a/komga/src/main/kotlin/org/gotson/komga/interfaces/api/rest/dto/LibraryDto.kt +++ b/komga/src/main/kotlin/org/gotson/komga/interfaces/api/rest/dto/LibraryDto.kt @@ -18,7 +18,6 @@ data class LibraryDto( val importLocalArtwork: Boolean, val importBarcodeIsbn: Boolean, val scanForceModifiedTime: Boolean, - val scanDeep: Boolean, val repairExtensions: Boolean, val convertToCbz: Boolean, val emptyTrashAfterScan: Boolean, @@ -44,7 +43,6 @@ fun Library.toDto(includeRoot: Boolean) = LibraryDto( importLocalArtwork = importLocalArtwork, importBarcodeIsbn = importBarcodeIsbn, scanForceModifiedTime = scanForceModifiedTime, - scanDeep = scanDeep, repairExtensions = repairExtensions, convertToCbz = convertToCbz, emptyTrashAfterScan = emptyTrashAfterScan, diff --git a/komga/src/main/kotlin/org/gotson/komga/interfaces/api/rest/dto/LibraryUpdateDto.kt b/komga/src/main/kotlin/org/gotson/komga/interfaces/api/rest/dto/LibraryUpdateDto.kt index a3e10102b4..e5a9bca7a0 100644 --- a/komga/src/main/kotlin/org/gotson/komga/interfaces/api/rest/dto/LibraryUpdateDto.kt +++ b/komga/src/main/kotlin/org/gotson/komga/interfaces/api/rest/dto/LibraryUpdateDto.kt @@ -16,7 +16,6 @@ data class LibraryUpdateDto( val importLocalArtwork: Boolean, val importBarcodeIsbn: Boolean, val scanForceModifiedTime: Boolean, - val scanDeep: Boolean, val repairExtensions: Boolean, val convertToCbz: Boolean, val emptyTrashAfterScan: Boolean,