chore: extract shared tsconfig, move display-status to core, add i18n tests

- Add `@sofa/tsconfig` package with a shared `base.json` (target, lib, strict, moduleResolution, etc.) and migrate all packages/apps to `"extends": "@sofa/tsconfig/base.json"` to eliminate duplicated compiler options
- Move `display-status.ts` (and its `DisplayStatus` type + `getDisplayStatus` fn) from `@sofa/api` to `@sofa/core`; remove the `./display-status` export from `@sofa/api` and update all import sites in `discovery.ts` and `tracking.ts`
- Add `packages/core/test/display-status.test.ts`: 15 tests covering `ONGOING_TMDB_STATUSES` and all `getDisplayStatus` branches (movie, TV watchlist/in_progress/caught_up/completed, edge cases)
- Add `packages/i18n/vitest.config.ts` and two new test files: `date-buckets.test.ts` and `format.test.ts` covering date bucketing and locale formatting utilities
This commit is contained in:
2026-03-22 14:46:25 -04:00
parent 6be586bd53
commit 1d67b201a0
34 changed files with 508 additions and 180 deletions
+2
View File
@@ -11,6 +11,7 @@
"./credits": "./src/credits.ts",
"./cron": "./src/cron.ts",
"./discovery": "./src/discovery.ts",
"./display-status": "./src/display-status.ts",
"./export": "./src/export.ts",
"./image-cache": "./src/image-cache.ts",
"./imports": "./src/imports/index.ts",
@@ -49,6 +50,7 @@
"zod": "catalog:"
},
"devDependencies": {
"@sofa/tsconfig": "workspace:*",
"@types/adm-zip": "0.5.8",
"@types/bun": "catalog:",
"typescript": "catalog:",