fixup endpoints

This commit is contained in:
2025-04-28 23:27:58 +02:00
parent 8660e29ff9
commit cda8d63a3f
10 changed files with 352 additions and 307 deletions

View File

@@ -1,24 +1,26 @@
import { client } from '$lib/api/client'
import { redirect } from '@sveltejs/kit'
import type { RequestEvent } from './$types'
import { client } from '$lib/api/client';
import { redirect } from '@sveltejs/kit';
import type { RequestEvent } from './$types';
export async function GET(event: RequestEvent): Promise<Response> {
if (event.locals.session === null) {
return redirect(302, '/login');
}
if (event.locals.session === null) {
return redirect(302, '/login');
}
const response = await client.GET(
'/admin/{id1}',
{
params: {
path: { id1: Number(event.params.ID1) },
header: { 'X-User-ID': event.locals.session.userId }
}
}
);
const response = await client.GET('/admin/{id1}', {
params: {
path: { id1: Number(event.params.ID1) },
header: { 'X-User-ID': event.locals.session.userId }
}
});
return new Response(await response.response.json(), {
status: response.response.status,
});
}
if (response.response.ok) {
return new Response(null, {
status: response.response.status
});
} else {
return new Response(JSON.stringify(response.error), {
status: response.response.status
});
}
}

View File

@@ -1,64 +1,72 @@
import { client } from '$lib/api/client'
import { redirect } from '@sveltejs/kit'
import type { RequestEvent } from './$types'
import { client } from '$lib/api/client';
import { redirect } from '@sveltejs/kit';
import type { RequestEvent } from './$types';
export async function GET(event: RequestEvent): Promise<Response> {
if (event.locals.session === null) {
return redirect(302, '/login');
}
if (event.locals.session === null) {
return redirect(302, '/login');
}
const response = await client.GET(
'/admin/{id1}/{id2}',
{
params: {
path: { id1: Number(event.params.ID1), id2: Number(event.params.ID2) },
header: { 'X-User-ID': event.locals.session.userId }
}
}
);
const response = await client.GET('/admin/{id1}/{id2}', {
params: {
path: { id1: Number(event.params.ID1), id2: Number(event.params.ID2) },
header: { 'X-User-ID': event.locals.session.userId }
}
});
return new Response(await response.response.json(), {
status: response.response.status,
});
if (response.response.ok) {
return new Response(JSON.stringify(response.data), {
status: response.response.status
});
} else {
return new Response(JSON.stringify(response.error), {
status: response.response.status
});
}
}
export async function POST(event: RequestEvent): Promise<Response> {
if (event.locals.session === null) {
return redirect(302, '/login');
}
if (event.locals.session === null) {
return redirect(302, '/login');
}
const response = await client.POST(
'/admin/{id1}/{id2}',
{
params: {
path: { id1: Number(event.params.ID1), id2: Number(event.params.ID2) },
header: { 'X-User-ID': event.locals.session.userId }
},
}
);
const response = await client.POST('/admin/{id1}/{id2}', {
params: {
path: { id1: Number(event.params.ID1), id2: Number(event.params.ID2) },
header: { 'X-User-ID': event.locals.session.userId }
}
});
return new Response(await response.response.json(), {
status: response.response.status,
});
if (response.response.ok) {
return new Response(JSON.stringify(response.data), {
status: response.response.status
});
} else {
return new Response(JSON.stringify(response.error), {
status: response.response.status
});
}
}
export async function DELETE(event: RequestEvent): Promise<Response> {
if (event.locals.session === null) {
return redirect(302, '/login');
}
if (event.locals.session === null) {
return redirect(302, '/login');
}
const response = await client.DELETE(
'/admin/{id1}/{id2}',
{
params: {
path: { id1: Number(event.params.ID1), id2: Number(event.params.ID2) },
header: { 'X-User-ID': event.locals.session.userId }
},
}
);
const response = await client.DELETE('/admin/{id1}/{id2}', {
params: {
path: { id1: Number(event.params.ID1), id2: Number(event.params.ID2) },
header: { 'X-User-ID': event.locals.session.userId }
}
});
return new Response(await response.response.json(), {
status: response.response.status,
});
}
if (response.response.ok) {
return new Response(null, {
status: response.response.status
});
} else {
return new Response(JSON.stringify(response.error), {
status: response.response.status
});
}
}

View File

@@ -3,92 +3,97 @@ import { client } from '$lib/api/client';
import type { RequestEvent } from './$types';
import type { components } from '$lib/api/api.gen';
export async function POST(event: RequestEvent): Promise<Response> {
if (event.locals.session === null) {
return redirect(302, '/login');
}
if (event.locals.session === null) {
return redirect(302, '/login');
}
let message = await event.request.json() as components['schemas']['Message']
message.edited = null;
message.sent_at = new Date(Date.now()).toISOString();
let message = (await event.request.json()) as components['schemas']['Message'];
message.edited = null;
message.sent_at = new Date(Date.now()).toISOString();
const response = await client.POST(
'/comment/{id}',
{
params: {
path: { id: Number(event.params.ID) },
header: { 'X-User-ID': event.locals.session.userId }
},
body: message
}
);
const response = await client.POST('/comment/{id}', {
params: {
path: { id: Number(event.params.ID) },
header: { 'X-User-ID': event.locals.session.userId }
},
body: message
});
return new Response(await response.response.json(), {
status: response.response.status,
});
return new Response(await response.response.json(), {
status: response.response.status
});
}
export async function GET(event: RequestEvent): Promise<Response> {
if (event.locals.session === null) {
return redirect(302, '/login');
}
if (event.locals.session === null) {
return redirect(302, '/login');
}
const response = await client.GET(
'/comment/{id}',
{
params: {
path: { id: Number(event.params.ID) },
header: { 'X-User-ID': event.locals.session.userId }
}
}
);
const response = await client.GET('/comment/{id}', {
params: {
path: { id: Number(event.params.ID) },
header: { 'X-User-ID': event.locals.session.userId }
}
});
return new Response(await response.response.json(), {
status: response.response.status,
});
if (response.response.ok) {
return new Response(JSON.stringify(response.data), {
status: response.response.status
});
} else {
return new Response(JSON.stringify(response.error), {
status: response.response.status
});
}
}
export async function DELETE(event: RequestEvent): Promise<Response> {
if (event.locals.session === null) {
return redirect(302, '/login');
}
if (event.locals.session === null) {
return redirect(302, '/login');
}
const response = await client.DELETE(
'/comment/{id}',
{
params: {
path: { id: Number(event.params.ID) },
header: { 'X-User-ID': event.locals.session.userId }
}
}
);
const response = await client.DELETE('/comment/{id}', {
params: {
path: { id: Number(event.params.ID) },
header: { 'X-User-ID': event.locals.session.userId }
}
});
return new Response(await response.response.json(), {
status: response.response.status,
});
if (response.response.ok) {
return new Response(null, {
status: response.response.status
});
} else {
return new Response(JSON.stringify(response.error), {
status: response.response.status
});
}
}
export async function PATCH(event: RequestEvent): Promise<Response> {
if (event.locals.session === null) {
return redirect(302, '/login');
}
if (event.locals.session === null) {
return redirect(302, '/login');
}
let message = await event.request.json() as components['schemas']['Message']
message.edited = new Date(Date.now()).toISOString();
let message = (await event.request.json()) as components['schemas']['Message'];
message.edited = new Date(Date.now()).toISOString();
const response = await client.PATCH(
'/comment/{id}',
{
params: {
path: { id: Number(event.params.ID) },
header: { 'X-User-ID': event.locals.session.userId }
},
body: message
}
);
const response = await client.PATCH('/comment/{id}', {
params: {
path: { id: Number(event.params.ID) },
header: { 'X-User-ID': event.locals.session.userId }
},
body: message
});
return new Response(await response.response.json(), {
status: response.response.status,
});
}
if (response.response.ok) {
return new Response(JSON.stringify(response.data), {
status: response.response.status
});
} else {
return new Response(JSON.stringify(response.error), {
status: response.response.status
});
}
}

View File

@@ -9,7 +9,7 @@ export async function GET(event: RequestEvent): Promise<Response> {
}
const response = await client.GET(
event.url.searchParams.get('with_out_spouse') === 'true'
event.url.searchParams.get('with_out_spouse') === 'false'
? '/family-tree-with-spouses'
: '/family-tree',
{

View File

@@ -4,21 +4,24 @@ import type { RequestEvent } from './$types';
import type { components } from '$lib/api/api.gen';
export async function POST(event: RequestEvent): Promise<Response> {
if (event.locals.session === null) {
return redirect(302, '/login');
}
if (event.locals.session === null) {
return redirect(302, '/login');
}
const response = await client.POST(
'/person',
{
params: {
header: { 'X-User-ID': event.locals.session.userId }
},
body: await event.request.json() as components['schemas']['PersonRegistration']
}
);
const response = await client.POST('/person', {
params: {
header: { 'X-User-ID': event.locals.session.userId }
},
body: (await event.request.json()) as components['schemas']['PersonRegistration']
});
return new Response(await response.response.json(), {
status: response.response.status,
});
if (response.response.ok) {
return new Response(JSON.stringify(response.data), {
status: response.response.status
});
} else {
return new Response(JSON.stringify(response.error), {
status: response.response.status
});
}
}

View File

@@ -4,62 +4,71 @@ import type { RequestEvent } from './$types';
import type { components } from '$lib/api/api.gen';
export async function GET(event: RequestEvent): Promise<Response> {
if (event.locals.session === null) {
return redirect(302, '/login');
}
if (event.locals.session === null) {
return redirect(302, '/login');
}
const response = await client.GET(
'/person/{id}',
{
params: {
path: { id: Number(event.params.ID) },
header: { 'X-User-ID': event.locals.session.userId }
}
}
);
const response = await client.GET('/person/{id}', {
params: {
path: { id: Number(event.params.ID) },
header: { 'X-User-ID': event.locals.session.userId }
}
});
return new Response(await response.response.json(), {
status: response.response.status,
});
if (response.response.ok) {
return new Response(JSON.stringify(response.data), {
status: response.response.status
});
} else {
return new Response(JSON.stringify(response.error), {
status: response.response.status
});
}
}
export async function DELETE(event: RequestEvent): Promise<Response> {
if (event.locals.session === null) {
return redirect(302, '/login');
}
if (event.locals.session === null) {
return redirect(302, '/login');
}
const response = await client.DELETE(
'/person/{id}',
{
params: {
path: { id: Number(event.params.ID) },
header: { 'X-User-ID': event.locals.session.userId }
}
}
);
const response = await client.DELETE('/person/{id}', {
params: {
path: { id: Number(event.params.ID) },
header: { 'X-User-ID': event.locals.session.userId }
}
});
return new Response(await response.response.json(), {
status: response.response.status,
});
if (response.response.ok) {
return new Response(null, {
status: response.response.status
});
} else {
return new Response(JSON.stringify(response.error), {
status: response.response.status
});
}
}
export async function PATCH(event: RequestEvent): Promise<Response> {
if (event.locals.session === null) {
return redirect(302, '/login');
}
if (event.locals.session === null) {
return redirect(302, '/login');
}
const response = await client.PATCH(
'/person/{id}',
{
params: {
path: { id: Number(event.params.ID) },
header: { 'X-User-ID': event.locals.session.userId }
},
body: await event.request.json() as components['schemas']['PersonProperties']
}
);
const response = await client.PATCH('/person/{id}', {
params: {
path: { id: Number(event.params.ID) },
header: { 'X-User-ID': event.locals.session.userId }
},
body: (await event.request.json()) as components['schemas']['PersonProperties']
});
return new Response(await response.response.json(), {
status: response.response.status,
});
}
if (response.response.ok) {
return new Response(JSON.stringify(response.data), {
status: response.response.status
});
} else {
return new Response(JSON.stringify(response.error), {
status: response.response.status
});
}
}

View File

@@ -3,21 +3,24 @@ import { client } from '$lib/api/client';
import type { RequestEvent } from './$types';
export async function DELETE(event: RequestEvent): Promise<Response> {
if (event.locals.session === null) {
return redirect(302, '/login');
}
if (event.locals.session === null) {
return redirect(302, '/login');
}
const response = await client.DELETE(
'/person/{id}/hard-delete',
{
params: {
path: { id: Number(event.params.ID) },
header: { 'X-User-ID': event.locals.session.userId }
}
}
);
const response = await client.DELETE('/person/{id}/hard-delete', {
params: {
path: { id: Number(event.params.ID) },
header: { 'X-User-ID': event.locals.session.userId }
}
});
return new Response(await response.response.json(), {
status: response.response.status,
});
}
if (response.response.ok) {
return new Response(null, {
status: response.response.status
});
} else {
return new Response(JSON.stringify(response.error), {
status: response.response.status
});
}
}

View File

@@ -4,26 +4,29 @@ import type { RequestEvent } from './$types';
import type { components } from '$lib/api/api.gen';
export async function POST(event: RequestEvent): Promise<Response> {
if (event.locals.session === null) {
return redirect(302, '/login');
}
if (event.locals.session === null) {
return redirect(302, '/login');
}
const response = await client.POST(
'/person_and_relationship/{id}',
{
params: {
path: { id: Number(event.params.ID) },
header: { 'X-User-ID': event.locals.session.userId }
},
body: await event.request.json() as {
person: components["schemas"]["PersonRegistration"];
type?: "child" | "parent" | "spouse" | "sibling";
relationship: components["schemas"]["FamilyRelationship"];
}
}
);
const response = await client.POST('/person_and_relationship/{id}', {
params: {
path: { id: Number(event.params.ID) },
header: { 'X-User-ID': event.locals.session.userId }
},
body: (await event.request.json()) as {
person: components['schemas']['PersonRegistration'];
type?: 'child' | 'parent' | 'spouse' | 'sibling';
relationship: components['schemas']['FamilyRelationship'];
}
});
return new Response(await response.response.json(), {
status: response.response.status,
});
if (response.response.ok) {
return new Response(JSON.stringify(response.data), {
status: response.response.status
});
} else {
return new Response(JSON.stringify(response.error), {
status: response.response.status
});
}
}

View File

@@ -4,26 +4,29 @@ import type { RequestEvent } from './$types';
import type { components } from '$lib/api/api.gen';
export async function POST(event: RequestEvent): Promise<Response> {
if (event.locals.session === null) {
return redirect(302, '/login');
}
if (event.locals.session === null) {
return redirect(302, '/login');
}
const response = await client.POST(
'/relationship',
{
params: {
header: { 'X-User-ID': event.locals.session.userId }
},
body: event.request.json() as {
id1?: number;
id2?: number;
type?: "child" | "parent" | "spouse" | "sibling";
relationship?: components["schemas"]["FamilyRelationship"];
}
}
);
const response = await client.POST('/relationship', {
params: {
header: { 'X-User-ID': event.locals.session.userId }
},
body: event.request.json() as {
id1?: number;
id2?: number;
type?: 'child' | 'parent' | 'spouse' | 'sibling';
relationship?: components['schemas']['FamilyRelationship'];
}
});
return new Response(await response.response.json(), {
status: response.response.status,
});
if (response.response.ok) {
return new Response(JSON.stringify(response.data), {
status: response.response.status
});
} else {
return new Response(JSON.stringify(response.error), {
status: response.response.status
});
}
}

View File

@@ -4,64 +4,73 @@ import type { RequestEvent } from './$types';
import type { components } from '$lib/api/api.gen';
export async function GET(event: RequestEvent): Promise<Response> {
if (event.locals.session === null) {
return redirect(302, '/login');
}
if (event.locals.session === null) {
return redirect(302, '/login');
}
const response = await client.GET(
'/relationship/{id1}/{id2}',
{
params: {
path: { id1: Number(event.params.ID1), id2: Number(event.params.ID2) },
header: { 'X-User-ID': event.locals.session.userId }
}
}
);
const response = await client.GET('/relationship/{id1}/{id2}', {
params: {
path: { id1: Number(event.params.ID1), id2: Number(event.params.ID2) },
header: { 'X-User-ID': event.locals.session.userId }
}
});
return new Response(await response.response.json(), {
status: response.response.status,
});
if (response.response.ok) {
return new Response(JSON.stringify(response.data), {
status: response.response.status
});
} else {
return new Response(JSON.stringify(response.error), {
status: response.response.status
});
}
}
export async function PATCH(event: RequestEvent): Promise<Response> {
if (event.locals.session === null) {
return redirect(302, '/login');
}
if (event.locals.session === null) {
return redirect(302, '/login');
}
const response = await client.PATCH(
'/relationship/{id1}/{id2}',
{
params: {
path: { id1: Number(event.params.ID1), id2: Number(event.params.ID2) },
header: { 'X-User-ID': event.locals.session.userId }
},
body: {
relationship: event.request.json() as components['schemas']['FamilyRelationship']
}
}
);
const response = await client.PATCH('/relationship/{id1}/{id2}', {
params: {
path: { id1: Number(event.params.ID1), id2: Number(event.params.ID2) },
header: { 'X-User-ID': event.locals.session.userId }
},
body: {
relationship: event.request.json() as components['schemas']['FamilyRelationship']
}
});
return new Response(await response.response.json(), {
status: response.response.status,
});
if (response.response.ok) {
return new Response(JSON.stringify(response.data), {
status: response.response.status
});
} else {
return new Response(JSON.stringify(response.error), {
status: response.response.status
});
}
}
export async function DELETE(event: RequestEvent): Promise<Response> {
if (event.locals.session === null) {
return redirect(302, '/login');
}
if (event.locals.session === null) {
return redirect(302, '/login');
}
const response = await client.DELETE(
'/relationship/{id1}/{id2}',
{
params: {
path: { id1: Number(event.params.ID1), id2: Number(event.params.ID2) },
header: { 'X-User-ID': event.locals.session.userId }
}
}
);
const response = await client.DELETE('/relationship/{id1}/{id2}', {
params: {
path: { id1: Number(event.params.ID1), id2: Number(event.params.ID2) },
header: { 'X-User-ID': event.locals.session.userId }
}
});
return new Response(await response.response.json(), {
status: response.response.status,
});
}
if (response.response.ok) {
return new Response(null, {
status: response.response.status
});
} else {
return new Response(JSON.stringify(response.error), {
status: response.response.status
});
}
}