decord/source/hooks/usePrevious.tsx

36 lines
902 B
TypeScript
Raw Normal View History

2026-07-24 07:16:23 +00:00
// Module ID: 8328
// Function ID: 65630
2026-07-20 16:05:17 +00:00
// Name: usePrevious
2026-07-23 10:11:24 +00:00
// Dependencies: [31, 2]
2026-07-20 16:05:17 +00:00
// Exports: default, usePreviousWhen
2026-07-24 07:16:23 +00:00
// Module 8328 (usePrevious)
2026-07-23 10:11:24 +00:00
import result from "result";
({ useRef: closure_0, useEffect: closure_1 } = result);
result = require("set").fileFinishedImporting("hooks/usePrevious.tsx");
2026-07-20 16:05:17 +00:00
export default function usePrevious(arg0) {
2026-07-23 10:11:24 +00:00
const callback = arg0;
const tmp = callback(null);
const callback2 = tmp;
2026-07-20 16:05:17 +00:00
const items = [arg0];
2026-07-23 10:11:24 +00:00
callback2(() => {
closure_1.current = closure_0;
2026-07-20 16:05:17 +00:00
}, items);
return tmp.current;
};
export const usePreviousWhen = function usePreviousWhen(value) {
value = value.value;
const shouldUpdate = value.shouldUpdate;
const tmp = value(null);
2026-07-23 10:11:24 +00:00
let closure_2 = tmp;
2026-07-20 16:05:17 +00:00
const items = [value, shouldUpdate];
shouldUpdate(() => {
if (shouldUpdate) {
2026-07-23 10:11:24 +00:00
closure_2.current = closure_0;
2026-07-20 16:05:17 +00:00
}
}, items);
return tmp.current;
};