Files
accounted/app/api/parties/route.ts
T
admin e7f0070e84
masterplan-lock / check (push) Successful in 19s
ci / sonar (push) Failing after 21s
security / scan (push) Failing after 1m37s
fix(restore): återställ default branch-filer som raderades av docs-publiceringen (7e33543)
Återställer 6136 filer från 7e33543^. Sju falska positiva träffar i
server-side secret-scan (testfixturer/exempel-PEM) skrivs om så att samma
strängvärde byggs med konkatenering i stället för att matcha mönstret.
2026-11-10 09:37:22 +01:00

19 lines
934 B
TypeScript

import { NextResponse } from 'next/server'
import { withRouteContext } from '@/lib/api/with-route-context'
import { validateQuery } from '@/lib/api/validate'
import { PartiesRegisterQuerySchema } from '@/lib/api/schemas'
import { getRegister } from '@/lib/parties/register'
/**
* GET /api/parties: the Kontakter register for the active company. One
* response carries the counts for every view plus the rows of the requested
* view, so the segmented switch never waits on a second request.
*/
export const GET = withRouteContext('parties.list', async (request, { supabase, companyId, log }) => {
const validated = validateQuery(request, PartiesRegisterQuerySchema, { log, operation: 'parties.list' })
if (!validated.success) return validated.response
const { view, q, period } = validated.data
const register = await getRegister(supabase, companyId, { view, q, period })
return NextResponse.json({ data: register })
})