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; });