mirror of
https://github.com/bretzel-app/crumbs.git
synced 2026-10-12 12:06:57 +02:00
Make db a required first parameter on all service functions (notes-service, api-utils, tags, collaborators, attachments, rate-limit, sync/server). This enables unit testing with in-memory databases via createTestDb(). Also removes the NODE_ENV=test bypass from rate-limit and adds optional now parameter for time control in tests. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
21 lines
792 B
TypeScript
21 lines
792 B
TypeScript
import { json } from '@sveltejs/kit';
|
|
import type { RequestHandler } from './$types.js';
|
|
import { db } from '$lib/server/db/index.js';
|
|
import { getUserId } from '$lib/server/api-utils.js';
|
|
import { listNotes, createNote } from '$lib/server/notes-service.js';
|
|
import type { NoteFilter } from '$lib/types/index.js';
|
|
|
|
export const GET: RequestHandler = async ({ url, ...event }) => {
|
|
const userId = getUserId(event);
|
|
const filter = (url.searchParams.get('filter') || 'all') as NoteFilter;
|
|
const result = listNotes(db, userId, filter);
|
|
return json(result);
|
|
};
|
|
|
|
export const POST: RequestHandler = async ({ request, ...event }) => {
|
|
const userId = getUserId(event);
|
|
const body = await request.json();
|
|
const newNote = createNote(db, userId, body);
|
|
return json(newNote, { status: 201 });
|
|
};
|