feat(reader): add audiobook reader with narrator and Audible metadata

- add audiobook reader with playback queue, progress tracking, and audio settings
- add narrator support with DB schema, module, and metadata extraction
- add Audible and Audnexus metadata providers with mappers and tests
- improve scanner with file classification, walk utilities, and file-event processing
- extend upload validator and processor for audio formats
This commit is contained in:
neon
2026-03-21 16:14:55 -06:00
parent 9bcde5b0c8
commit 2117b729d5
155 changed files with 11295 additions and 923 deletions
+4 -3
View File
@@ -57,18 +57,19 @@
"class-transformer": "^0.5.1",
"class-validator": "^0.15.1",
"drizzle-orm": "^0.45.1",
"fast-xml-parser": "^5.5.7",
"fast-xml-parser": "^5.5.8",
"fastify": "^5.8.2",
"geoip-lite": "^2.0.1",
"jose": "^6.2.2",
"ms": "^2.1.3",
"music-metadata": "^7.14.0",
"nestjs-pino": "^4.6.1",
"node-unrar-js": "^2.0.2",
"nodemailer": "^8.0.3",
"passport": "^0.7.0",
"passport-jwt": "^4.0.1",
"pdf-lib": "^1.17.1",
"pg": "^8.18.0",
"pg": "^8.20.0",
"pino-http": "^11.0.0",
"reflect-metadata": "^0.2.2",
"rxjs": "^7.8.2",
@@ -97,7 +98,7 @@
"@types/unzipper": "^0.10.11",
"@vitest/coverage-v8": "^4.1.0",
"drizzle-kit": "^0.31.10",
"eslint": "^10.0.3",
"eslint": "^10.1.0",
"eslint-config-prettier": "^10.1.8",
"eslint-plugin-prettier": "^5.5.5",
"globals": "^17.4.0",