feat(pokedex): add shareable read-only dex links

This commit is contained in:
Josh Creek
2026-09-14 14:25:09 +01:00
parent 951c9b2878
commit 7240376e00
16 changed files with 693 additions and 192 deletions
@@ -0,0 +1,18 @@
import { error } from '@sveltejs/kit';
import { loadSharedPokedex } from '$lib/services/SharedPokedexService';
import { renderSharePreview } from '$lib/services/SharePreviewService';
import type { RequestHandler } from './$types';
export const GET: RequestHandler = async ({ locals, params }) => {
const shared = await loadSharedPokedex(locals.supabase, params.token);
if (!shared) throw error(404, 'Shared Pokédex not found');
const image = await renderSharePreview(shared);
return new Response(image, {
headers: {
'Content-Type': 'image/png',
'Cache-Control': 'public, max-age=300, stale-while-revalidate=600',
'Content-Length': String(image.byteLength)
}
});
};