diff options
Diffstat (limited to 'packages/integrations/cloudflare/test/fixtures/module-loader/src/pages')
7 files changed, 119 insertions, 0 deletions
diff --git a/packages/integrations/cloudflare/test/fixtures/module-loader/src/pages/add/[a]/[b].ts b/packages/integrations/cloudflare/test/fixtures/module-loader/src/pages/add/[a]/[b].ts new file mode 100644 index 000000000..0f09faa0a --- /dev/null +++ b/packages/integrations/cloudflare/test/fixtures/module-loader/src/pages/add/[a]/[b].ts @@ -0,0 +1,20 @@ +import { type APIContext } from 'astro'; +// @ts-ignore +import mod from '../../../util/add.wasm?module'; + +const addModule: any = new WebAssembly.Instance(mod); + +export const prerender = false; + +export async function GET( + context: APIContext +): Promise<Response> { + const a = Number.parseInt(context.params.a!); + const b = Number.parseInt(context.params.b!); + return new Response(JSON.stringify({ answer: addModule.exports.add(a, b) }), { + status: 200, + headers: { + 'Content-Type': 'application/json', + }, + }); +} diff --git a/packages/integrations/cloudflare/test/fixtures/module-loader/src/pages/bin.ts b/packages/integrations/cloudflare/test/fixtures/module-loader/src/pages/bin.ts new file mode 100644 index 000000000..a4e097782 --- /dev/null +++ b/packages/integrations/cloudflare/test/fixtures/module-loader/src/pages/bin.ts @@ -0,0 +1,16 @@ +import { type APIContext } from 'astro'; + +import data from '../util/file.bin'; + +export const prerender = false; + +export async function GET( + context: APIContext +): Promise<Response> { + return new Response(data, { + status: 200, + headers: { + 'Content-Type': 'binary/octet-stream', + }, + }); +} diff --git a/packages/integrations/cloudflare/test/fixtures/module-loader/src/pages/compound.ts b/packages/integrations/cloudflare/test/fixtures/module-loader/src/pages/compound.ts new file mode 100644 index 000000000..9dde18380 --- /dev/null +++ b/packages/integrations/cloudflare/test/fixtures/module-loader/src/pages/compound.ts @@ -0,0 +1,17 @@ + +import { type APIContext } from 'astro'; + +import text from '../util/file.1.md.txt'; + +export const prerender = false; + +export async function GET( + context: APIContext +): Promise<Response> { + return new Response(text, { + status: 200, + headers: { + 'Content-Type': 'text/plain; charset=utf-8', + }, + }); +} diff --git a/packages/integrations/cloudflare/test/fixtures/module-loader/src/pages/hybrid.ts b/packages/integrations/cloudflare/test/fixtures/module-loader/src/pages/hybrid.ts new file mode 100644 index 000000000..14d3d0fbe --- /dev/null +++ b/packages/integrations/cloudflare/test/fixtures/module-loader/src/pages/hybrid.ts @@ -0,0 +1,16 @@ +import { type APIContext } from 'astro'; +// @ts-ignore +import mod from '../util/add.wasm'; + +const addModule: any = new WebAssembly.Instance(mod); + +export async function GET( + context: APIContext +): Promise<Response> { + return new Response(JSON.stringify({ answer: addModule.exports.add(20, 1) }), { + status: 200, + headers: { + 'Content-Type': 'application/json', + }, + }); +} diff --git a/packages/integrations/cloudflare/test/fixtures/module-loader/src/pages/hybridshared.ts b/packages/integrations/cloudflare/test/fixtures/module-loader/src/pages/hybridshared.ts new file mode 100644 index 000000000..ea04408f7 --- /dev/null +++ b/packages/integrations/cloudflare/test/fixtures/module-loader/src/pages/hybridshared.ts @@ -0,0 +1,16 @@ +import { type APIContext } from 'astro'; + +import {add} from '../util/add'; + +export const prerender = true + +export async function GET( + context: APIContext +): Promise<Response> { + return new Response(JSON.stringify({ answer: add(20, 1) }), { + status: 200, + headers: { + 'Content-Type': 'application/json', + }, + }); +} diff --git a/packages/integrations/cloudflare/test/fixtures/module-loader/src/pages/shared/[a]/[b].ts b/packages/integrations/cloudflare/test/fixtures/module-loader/src/pages/shared/[a]/[b].ts new file mode 100644 index 000000000..9a8283d85 --- /dev/null +++ b/packages/integrations/cloudflare/test/fixtures/module-loader/src/pages/shared/[a]/[b].ts @@ -0,0 +1,18 @@ +import { type APIContext } from 'astro'; +import { add } from '../../../util/add'; + + +export const prerender = false; + +export async function GET( + context: APIContext +): Promise<Response> { + const a = Number.parseInt(context.params.a ?? "0"); + const b = Number.parseInt(context.params.b ?? "0"); + return new Response(JSON.stringify({ answer: add(a, b) }), { + status: 200, + headers: { + 'Content-Type': 'application/json', + }, + }); +} diff --git a/packages/integrations/cloudflare/test/fixtures/module-loader/src/pages/text.ts b/packages/integrations/cloudflare/test/fixtures/module-loader/src/pages/text.ts new file mode 100644 index 000000000..7306a5b06 --- /dev/null +++ b/packages/integrations/cloudflare/test/fixtures/module-loader/src/pages/text.ts @@ -0,0 +1,16 @@ +import { type APIContext } from 'astro'; + +import text from '../util/file.txt'; + +export const prerender = false; + +export async function GET( + context: APIContext +): Promise<Response> { + return new Response(text, { + status: 200, + headers: { + 'Content-Type': 'text/plain; charset=utf-8', + }, + }); +} |