From 76b5ccd0e189b9125f869660cc8bbec0a0830842 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julien=20Valverd=C3=A9?= Date: Tue, 22 Jul 2025 23:14:12 +0200 Subject: [PATCH] Fix --- packages/effect-fc/src/Component.ts | 3 ++- packages/effect-fc/src/Memoized.ts | 4 ++-- packages/effect-fc/src/Suspense.ts | 4 ++-- 3 files changed, 6 insertions(+), 5 deletions(-) diff --git a/packages/effect-fc/src/Component.ts b/packages/effect-fc/src/Component.ts index f733015..e860189 100644 --- a/packages/effect-fc/src/Component.ts +++ b/packages/effect-fc/src/Component.ts @@ -10,6 +10,7 @@ export type TypeId = typeof TypeId export interface Component extends Pipeable.Pipeable, Component.Options { new(_: never): {} readonly [TypeId]: TypeId + /** @internal */ makeFunctionComponent(runtimeRef: React.Ref>>, scope: Scope.Scope): React.FC

readonly body: (props: P) => Effect.Effect } @@ -327,7 +328,7 @@ export const withOptions: { self: T, options: Partial, ): T => Object.setPrototypeOf( - { ...self, ...options }, + Object.assign(function() {}, self, options), Object.getPrototypeOf(self), )) diff --git a/packages/effect-fc/src/Memoized.ts b/packages/effect-fc/src/Memoized.ts index 0fadba3..09b476e 100644 --- a/packages/effect-fc/src/Memoized.ts +++ b/packages/effect-fc/src/Memoized.ts @@ -26,7 +26,7 @@ export const isMemoized = (u: unknown): u is Memoized => Predicate.hasPrope export const memo = >( self: T ): T & Memoized> => Object.setPrototypeOf( - { ...self, ...MemoizedProto }, + Object.assign(function() {}, self, MemoizedProto), Object.getPrototypeOf(self), ) @@ -42,6 +42,6 @@ export const withOptions: { self: T, options: Partial>>, ): T => Object.setPrototypeOf( - { ...self, ...options }, + Object.assign(function() {}, self, options), Object.getPrototypeOf(self), )) diff --git a/packages/effect-fc/src/Suspense.ts b/packages/effect-fc/src/Suspense.ts index 93a7585..3b20fac 100644 --- a/packages/effect-fc/src/Suspense.ts +++ b/packages/effect-fc/src/Suspense.ts @@ -53,7 +53,7 @@ export const suspense = , P extends { & Component.Component, Component.Component.Context, P & Suspense.Props> & Suspense ) => Object.setPrototypeOf( - { ...self, ...SuspenseProto }, + Object.assign(function() {}, self, SuspenseProto), Object.getPrototypeOf(self), ) @@ -69,6 +69,6 @@ export const withOptions: { self: T, options: Partial, ): T => Object.setPrototypeOf( - { ...self, ...options }, + Object.assign(function() {}, self, options), Object.getPrototypeOf(self), ))