1import * as Cloudflare from "@/Cloudflare";
2import * as Alchemy from "@/index.ts";
3import * as Planetscale from "@/Planetscale";
4import * as Effect from "effect/Effect";
5import * as Layer from "effect/Layer";
6import PlanetscaleHostContainerWorker from "./worker.ts";
7
8export default Alchemy.Stack(
9 "PlanetscaleHostContainerStack",
10 {
11 providers: Layer.merge(Cloudflare.providers(), Planetscale.providers()),
12 state: Cloudflare.state(),
13 },
14 Effect.gen(function* () {
15 const worker = yield* PlanetscaleHostContainerWorker;
16 return { url: worker.url.as<string>() };
17 }),
18);