// src/main.ts
import { Effect } from "effect";
export default {
async fetch(
request: Request,
env: Env,
ctx: ExecutionContext,
): Promise<Response> {
const result = await Effect.runPromise(
Effect.gen(function* (_) {
yield* _(Effect.sleep(1000));
return `Hello ${request.cf?.city ?? "World"}! env: (${Object.keys(env).join(", ")})`;
}),
);
return new Response(result);
},
} satisfies ExportedHandler<Env>;
// src/main.ts
import { Effect } from "effect";
export default {
async fetch(
request: Request,
env: Env,
ctx: ExecutionContext,
): Promise<Response> {
const result = await Effect.runPromise(
Effect.gen(function* (_) {
yield* _(Effect.sleep(1000));
return `Hello ${request.cf?.city ?? "World"}! env: (${Object.keys(env).join(", ")})`;
}),
);
return new Response(result);
},
} satisfies ExportedHandler<Env>;