Add framework adapter for SvelteKit with:
- `getApp()` - get bknd app instance
- `serve()` - request handler for hooks.server.ts
Usage in hooks.server.ts:
```typescript
import { serve } from "bknd/adapter/sveltekit";
import config from "../bknd.config";
const bkndHandler = serve(config);
export const handle = async ({ event, resolve }) => {
if (event.url.pathname.startsWith("/api/")) {
return bkndHandler(event);
}
return resolve(event);
};
```
Includes:
- Adapter implementation (app/src/adapter/sveltekit/)
- Test suite
- Working example (examples/sveltekit/)
- Package exports and types
25 lines
578 B
Svelte
25 lines
578 B
Svelte
<script lang="ts">
|
|
import type { PageData } from "./$types";
|
|
|
|
let { data }: { data: PageData } = $props();
|
|
</script>
|
|
|
|
<h1>bknd + SvelteKit Example</h1>
|
|
|
|
<h2>Todos</h2>
|
|
<ul>
|
|
{#each data.todos as todo (todo.id)}
|
|
<li>{todo.title} - {todo.done === "true" ? "Done" : "Pending"}</li>
|
|
{/each}
|
|
</ul>
|
|
|
|
<h2>API Endpoints</h2>
|
|
<ul>
|
|
<li><a href="/api/data/entity/todos">/api/data/entity/todos</a></li>
|
|
<li><a href="/api/auth/password/login">/api/auth/password/login</a> (POST)</li>
|
|
</ul>
|
|
|
|
<p>
|
|
Login credentials: <code>admin@example.com</code> / <code>password</code>
|
|
</p>
|