From 2b67b9bf9d2e3a27336bf78933b9afd3129fa1fb Mon Sep 17 00:00:00 2001 From: Petar Todorovic Date: Mon, 14 Apr 2025 13:00:31 +0200 Subject: [PATCH] fix(useSavedRef): save latest ref value before layout --- .changeset/wild-groups-swim.md | 5 +++++ packages/widget/src/hooks/use-saved-ref.ts | 4 ++-- 2 files changed, 7 insertions(+), 2 deletions(-) create mode 100644 .changeset/wild-groups-swim.md diff --git a/.changeset/wild-groups-swim.md b/.changeset/wild-groups-swim.md new file mode 100644 index 00000000..4d3aa8f5 --- /dev/null +++ b/.changeset/wild-groups-swim.md @@ -0,0 +1,5 @@ +--- +"@stakekit/widget": patch +--- + +fix(useSavedRef): save latest ref value before layout diff --git a/packages/widget/src/hooks/use-saved-ref.ts b/packages/widget/src/hooks/use-saved-ref.ts index 05c89cc6..02e40eb5 100644 --- a/packages/widget/src/hooks/use-saved-ref.ts +++ b/packages/widget/src/hooks/use-saved-ref.ts @@ -1,10 +1,10 @@ import type { RefObject } from "react"; -import { useEffect, useRef } from "react"; +import { useLayoutEffect, useRef } from "react"; export const useSavedRef = (value: T): Readonly> => { const savedRef = useRef(value); - useEffect(() => { + useLayoutEffect(() => { savedRef.current = value; });