21 lines
488 B
TypeScript
21 lines
488 B
TypeScript
// Metro module 10671 (f10672).
|
|
import { useRef, useState, useEffect } from "react";
|
|
export const useLeadingEdgeDebounce = (a0, a1) => {
|
|
const ref = useRef(true);
|
|
const [state, setState] = useState(a0);
|
|
useEffect(() => {
|
|
let c26788_0 = setTimeout(() => {
|
|
setState(a0);
|
|
ref.current = true;
|
|
}, a1);
|
|
if (ref.current) {
|
|
setState(a0);
|
|
}
|
|
ref.current = false;
|
|
return () => {
|
|
clearTimeout(c26788_0);
|
|
};
|
|
}, [a0, a1]);
|
|
return state;
|
|
};
|