diff --git a/packages/effect-fc/src/ReactComponent.ts b/packages/effect-fc/src/ReactComponent.ts index 71711a5..2c96368 100644 --- a/packages/effect-fc/src/ReactComponent.ts +++ b/packages/effect-fc/src/ReactComponent.ts @@ -61,12 +61,20 @@ export const use: { }) export const withRuntime: { - (context: React.Context>): (self: ReactComponent) => React.FC

- (self: ReactComponent, context: React.Context>): React.FC

-} = Function.dual(2, ( + ( + context: React.Context>, + options?: ReactHook.ScopeOptions, + ): (self: ReactComponent) => React.FC

+ ( + self: ReactComponent, + context: React.Context>, + options?: ReactHook.ScopeOptions, + ): React.FC

+} = Function.dual(3, ( self: ReactComponent, context: React.Context>, + options?: ReactHook.ScopeOptions, ): React.FC

=> function WithRuntime(props) { const runtime = React.useContext(context) - return React.createElement(Runtime.runSync(runtime)(useFC(self)), props) + return React.createElement(Runtime.runSync(runtime)(useFC(self, options)), props) }) diff --git a/packages/example/src/routes/index.tsx b/packages/example/src/routes/index.tsx index 3158660..51ef0ab 100644 --- a/packages/example/src/routes/index.tsx +++ b/packages/example/src/routes/index.tsx @@ -13,6 +13,6 @@ export const Route = createFileRoute("/")({ }), ReactComponent.withDisplayName("Index"), - ReactComponent.withRuntime(runtime.context), + ReactComponent.withRuntime(runtime.context, { finalizerExecutionMode: "fork" }), ) })