t3-code-android-nightly/.repos/alchemy-effect/packages/alchemy/test/Cloudflare/Browser/fixtures/stack.ts
Julius Marminge 108e01746c
Upgrade Effect and Alchemy betas (#4643)
Prepare Relay production infrastructure for the PlanetScale PS_20 HA topology, upgrade Effect and Alchemy to compatible betas, reconcile migration state, and preserve patched MCP session termination behavior.\n\nCo-authored-by: codex <codex@users.noreply.github.com>
2026-07-27 16:21:02 +02:00

36 lines
965 B
TypeScript

import * as Cloudflare from "@/Cloudflare";
import * as Alchemy from "@/index";
import * as Effect from "effect/Effect";
import * as pathe from "pathe";
import BrowserEffectWorker from "./effect-worker.ts";
const asyncWorkerMain = pathe.resolve(import.meta.dirname, "async-worker.ts");
export const AsyncWorker = Cloudflare.Worker("BrowserAsyncWorker", {
main: asyncWorkerMain,
compatibility: {
flags: ["nodejs_compat"],
},
env: {
BROWSER: Cloudflare.Browser("BROWSER"),
},
});
export type AsyncWorkerEnv = Cloudflare.InferEnv<typeof AsyncWorker>;
export default Alchemy.Stack(
"BrowserBindingStack",
{
providers: Cloudflare.providers(),
state: Cloudflare.state(),
},
Effect.gen(function* () {
const asyncWorker = yield* AsyncWorker;
const effectWorker = yield* BrowserEffectWorker;
return {
asyncWorkerUrl: asyncWorker.url.as<string>(),
effectWorkerUrl: effectWorker.url.as<string>(),
};
}),
);