import { defineFacet } from "@earendil-works/chord"; import { BACKGROUND_CONTEXT } from "@earendil-works/chord/context"; import { ExampleFacetService } from "./contract.ts"; export default defineFacet({ id: "@earendil-works/pi-example-plugin/session", setup(env) { const workerActivations = env.replicatedState({ count: 0 }); env.provide(ExampleFacetService, { workerActivations, async greet({ name }) { return { message: `Hello ${name} from the bundled Session worker facet!!!`, workerActivations: workerActivations.value.count, }; }, }); env.onActivate(() => { workerActivations.state.count += 1; workerActivations.publish(BACKGROUND_CONTEXT); }); }, });