From c7f2309d0027e3af3d70ab4ea22d651b1e29fc7e Mon Sep 17 00:00:00 2001 From: Shivam Meena Date: Sun, 30 Oct 2022 23:52:21 +0530 Subject: [PATCH] Cleaning and doc fix --- README.md | 5 +++-- src/lib/index.ts | 6 ++++-- src/routes/+server.ts | 3 ++- src/routes/component-og/+server.ts | 3 ++- 4 files changed, 11 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 19bfed2..b990b05 100644 --- a/README.md +++ b/README.md @@ -9,7 +9,8 @@ Install `@ethercorps/sveltekit-og`, then use it inside a server endpoint route ( ```typescript // /routes/og/+server.ts -import { ImageResponse } from '@ethercorps/sveltekit-og'; +import {ImageResponse} from '@ethercorps/sveltekit-og'; +import {RequestHandler} from "./$types"; const template = `
@@ -32,7 +33,7 @@ const template = ` const fontFile = await fetch('https://og-playground.vercel.app/inter-latin-ext-400-normal.woff'); const fontData: ArrayBuffer = await fontFile.arrayBuffer(); -export const GET: () => Promise = async () => { +export const GET: RequestHandler = async () => { return new ImageResponse(template, { height: 250, width: 500, diff --git a/src/lib/index.ts b/src/lib/index.ts index 65c9dc0..ccab4ea 100644 --- a/src/lib/index.ts +++ b/src/lib/index.ts @@ -8,7 +8,7 @@ const resSvgWasm = initWasm(fetch('https://sveltekit-og.ethercorps.io/resvg.wasm const fontFile = await fetch('https://sveltekit-og.ethercorps.io/noto-sans.ttf'); const fontData: ArrayBuffer = await fontFile.arrayBuffer(); -export class ImageResponse { +class ImageResponse { constructor(htmlTemplate: string, optionsByUser: ImageResponseOptions) { const options = Object.assign({ width: 1200, height: 630, debug: !1 }, optionsByUser); const png = new ReadableStream({ @@ -47,7 +47,7 @@ export class ImageResponse { } } -export class componentToImageResponse { +class componentToImageResponse { constructor(component: typeof SvelteComponent, props = {}, optionsByUser: ImageResponseOptions) { const htmlTemplate = componentToMarkup(component, props) return new ImageResponse(htmlTemplate, optionsByUser); @@ -73,3 +73,5 @@ type ImageOptions = { graphemeImages?: Record; loadAdditionalAsset?: (languageCode: string, segment: string) => Promise; }; + +export {componentToImageResponse, ImageResponse} diff --git a/src/routes/+server.ts b/src/routes/+server.ts index c5a09d0..555a9e5 100644 --- a/src/routes/+server.ts +++ b/src/routes/+server.ts @@ -1,4 +1,5 @@ import { ImageResponse } from '$lib'; +import type {RequestHandler} from "@sveltejs/kit"; const template = `
@@ -23,7 +24,7 @@ const fontFile700 = await fetch('https://og-playground.vercel.app/inter-latin-ex const fontData400: ArrayBuffer = await fontFile400.arrayBuffer(); const fontData700: ArrayBuffer = await fontFile700.arrayBuffer(); -export const GET: () => Promise = async () => { +export const GET: RequestHandler = async () => { return new ImageResponse(template, { height: 250, width: 500, diff --git a/src/routes/component-og/+server.ts b/src/routes/component-og/+server.ts index 40eac01..e87095e 100644 --- a/src/routes/component-og/+server.ts +++ b/src/routes/component-og/+server.ts @@ -1,11 +1,12 @@ import OG from "./OG.svelte"; import {componentToImageResponse} from "$lib"; +import type {RequestHandler} from "@sveltejs/kit"; const fontFile = await fetch('https://og-playground.vercel.app/inter-latin-ext-700-normal.woff'); const fontData: ArrayBuffer = await fontFile.arrayBuffer(); -export const GET:() => Promise= async () => { +export const GET: RequestHandler = async () => { return new componentToImageResponse(OG, {text: 'Ready to dive in?', spanText: 'Start your free trial today.'}, { height: 250, width: 500,