snapshot of https://github.com/excalidraw/excalidraw.git (master, 2026-09-16; blobs > 131072B omitted)
Some checks failed
Tests / test (push) Failing after 15s

This commit is contained in:
upstream-mirror
2026-09-16 05:31:04 +05:00
commit 1a8d07ca6c
1286 changed files with 360144 additions and 0 deletions

View File

@@ -0,0 +1,18 @@
import { useRef } from "react";
/**
* Returns a stable function of the same type.
*/
export const useStableCallback = <T extends (...args: any[]) => any>(
userFn: T,
) => {
const stableRef = useRef<{ userFn: T; stableFn?: T }>({ userFn });
stableRef.current.userFn = userFn;
if (!stableRef.current.stableFn) {
stableRef.current.stableFn = ((...args: any[]) =>
stableRef.current.userFn(...args)) as T;
}
return stableRef.current.stableFn as T;
};