Syv nye API-endepunkter for kunnskapsgrafen: Entities: - GET/POST /api/entities — list, søk (name+aliases), filtrer på type - GET/PATCH/DELETE /api/entities/:id — hent (m/edge_count), oppdater, slett - GET /api/entities/:id/edges — relasjoner med retningsfilter Graf: - POST /api/graph/edges — opprett relasjon (upsert) - DELETE /api/graph/edges/:id — slett relasjon - GET /api/graph/search — fulltekstsøk (entiteter + transkripsjoner FTS) - GET /api/graph/traverse/:nodeId — recursive CTE, D3.js/Vis.js-format Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
18 lines
631 B
TypeScript
18 lines
631 B
TypeScript
import { json, error } from '@sveltejs/kit';
|
|
import type { RequestHandler } from './$types';
|
|
import { sql } from '$lib/server/db';
|
|
|
|
/** DELETE /api/graph/edges/:edgeId — Slett graf-relasjon */
|
|
export const DELETE: RequestHandler = async ({ params, locals }) => {
|
|
if (!locals.workspace || !locals.user) error(401);
|
|
|
|
const [edge] = await sql`
|
|
SELECT id FROM graph_edges
|
|
WHERE id = ${params.edgeId} AND workspace_id = ${locals.workspace.id}
|
|
`;
|
|
if (!edge) error(404, 'Relasjon ikke funnet');
|
|
|
|
await sql`DELETE FROM graph_edges WHERE id = ${params.edgeId}`;
|
|
|
|
return new Response(null, { status: 204 });
|
|
};
|