refactor(handlers): Phase 7 - cleanup ebook.go, remove duplicate methods

- Remove 24 duplicate media CRUD methods from ebook.go (884 lines removed)
- Keep 12 scanner/watch/scheduler methods on Handler
- Move request type declarations to media.go:
  * CreateMediaItemRequest
  * UpdateMediaItemRequest
  * CreateMediaNoteRequest
  * UpdateMediaNoteRequest
  * CreateMediaHighlightRequest
  * UpdateMediaHighlightRequest
- Remove unused imports from ebook.go (strconv, pgx)
- Fix library.go to use MediaHandler.ListMediaItems instead of Handler

ebook.go reduced from 1266 lines to 382 lines (70% reduction)
Handler now has focused responsibility: scanner and scheduler operations only

This completes Phase 7 of the ebook.go refactoring plan.

Result: Clean separation of concerns with no duplicate code
This commit is contained in:
2026-02-07 19:56:52 -05:00
parent 465a273319
commit eb73e4a9f9
3 changed files with 67 additions and 884 deletions
+1 -1
View File
@@ -46,7 +46,7 @@ func registerLibraryRoutes(cfg *Config) {
adminLibrary.GET("/:id/media-items", func(c echo.Context) error {
libraryID := c.Param("id")
c.QueryParams().Set("library_id", libraryID)
return h.ListMediaItems(c)
return cfg.MediaHandler.ListMediaItems(c)
})
// User library visibility control