UNPKG

alinea

Version:
27 lines (25 loc) 581 B
import { atom } from "../../chunks/chunk-WJ67RR7S.js"; import "../../chunks/chunk-NZLE2WMY.js"; // src/dashboard/util/DebounceAtom.ts function debounceAtom(readable, delay) { const current = atom(void 0); let timeout; const result = atom( (get, options) => { const next = get(readable); const update = () => options.setSelf(next); clearTimeout(timeout); timeout = setTimeout(update, delay); return get(current) ?? next; }, (get, set, value) => { set(current, value); } ); return result; } export { debounceAtom };