import { useRef, useEffect } from "react"; export function useTraceUpdate(props: { [s: string]: unknown } | ArrayLike) { const prev = useRef(props); useEffect(() => { const changedProps = Object.entries(props).reduce((ps, [k, v]) => { // @ts-expect-error TODO: fix this if (prev.current[k] !== v) { // @ts-expect-error TODO: fix this ps[k] = [prev.current[k], v]; } return ps; }, {}); prev.current = props; }); }