| 1 | import { createFileRoute } from "@tanstack/react-router"; |
| 2 | |
| 3 | interface Instance { |
| 4 | exports: { |
| 5 | add(a: number, b: number): number; |
| 6 | }; |
| 7 | } |
| 8 | |
| 9 | export const Route = createFileRoute("/api/wasm")({ |
| 10 | server: { |
| 11 | handlers: { |
| 12 | GET: async () => { |
| 13 | const mod = await import("../wasm-example.wasm").then( |
| 14 | (m) => WebAssembly.instantiate(m.default) as Promise<Instance>, |
| 15 | ); |
| 16 | const result = mod.exports.add(1, 2); |
| 17 | return Response.json({ result }); |
| 18 | }, |
| 19 | }, |
| 20 | }, |
| 21 | }); |