diff options
| author | Martin Kagamino Lehoux <martin@lehoux.net> | 2026-10-18 22:02:02 +0200 |
|---|---|---|
| committer | Martin Kagamino Lehoux <martin@lehoux.net> | 2026-10-18 22:02:02 +0200 |
| commit | 0685e9ece66fbcb09c9457027cf7bb2107cc0171 (patch) | |
| tree | f6dabadf2dcf55f2847a48ada2e03e491f017dcc /src/lib/server/services/index.ts | |
| parent | c3c61894d2b119ae424bac605d4b3099e0b674e5 (diff) | |
refactor: inject the database into services via a constructor
Pilot on the categories service: a CategoriesService class holds the Drizzle
handle, and services/index.ts wires the real instance once for the server while
tests build their own on an in-memory database. AppDatabase moves from
groceries.ts to db/types.ts.
Diffstat (limited to 'src/lib/server/services/index.ts')
| -rw-r--r-- | src/lib/server/services/index.ts | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/lib/server/services/index.ts b/src/lib/server/services/index.ts new file mode 100644 index 0000000..25a05be --- /dev/null +++ b/src/lib/server/services/index.ts @@ -0,0 +1,8 @@ +import { db } from '$lib/server/db'; +import { CategoriesService } from './categories'; + +/** + * Services wired once for the running server. Tests build their own instances + * with a test database instead of importing from here. + */ +export const categoriesService = new CategoriesService(db); |
