chore: import upstream snapshot with attribution

This commit is contained in:
wehub-resource-sync
2026-07-13 13:32:57 +08:00
commit cd420f9332
4811 changed files with 884702 additions and 0 deletions
+20
View File
@@ -0,0 +1,20 @@
//From: https://kettanaito.com/blog/debounce-vs-throttle
/** A very simple throttle. Will execute the function at the end of each period and discard any other calls during that period. */
export function throttle<TArgs extends unknown[]>(
func: (...args: TArgs) => void,
durationMs: number
): (...args: TArgs) => void {
let isPrimedToFire = false;
return (...args: TArgs) => {
if (!isPrimedToFire) {
isPrimedToFire = true;
setTimeout(() => {
func(...args);
isPrimedToFire = false;
}, durationMs);
}
};
}