import { proxyActivities } from "@temporalio/workflow";
import type * as activities from "./activities.ts";
import { Effect } from "effect";
const { greet } = proxyActivities<typeof activities>({
startToCloseTimeout: "1 minute",
});
export async function helloWorldWorkflow(name: string): Promise<string> {
console.log(`Workflow: Starting hello world workflow for ${name}`);
await Effect.runPromise(Effect.gen(function* () {
yield* Effect.sleep("5 seconds");
}));
const greeting = await greet(name);
console.log(`Workflow: Received greeting: ${greeting}`);
return greeting;
}
import { proxyActivities } from "@temporalio/workflow";
import type * as activities from "./activities.ts";
import { Effect } from "effect";
const { greet } = proxyActivities<typeof activities>({
startToCloseTimeout: "1 minute",
});
export async function helloWorldWorkflow(name: string): Promise<string> {
console.log(`Workflow: Starting hello world workflow for ${name}`);
await Effect.runPromise(Effect.gen(function* () {
yield* Effect.sleep("5 seconds");
}));
const greeting = await greet(name);
console.log(`Workflow: Received greeting: ${greeting}`);
return greeting;
}