All files / src/utils throttle.ts

33.33% Statements 3/9
0% Branches 0/2
33.33% Functions 1/3
37.5% Lines 3/8

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18  1x 10x     10x                        
// tslint:disable-next-line: ban-types
export const throttle = (callback: Function, limit: number) => {
  let isWaiting = false;
 
  // tslint:disable-next-line: no-any
  return (...args: any[]) => {
    if (!isWaiting) {
      callback.apply(undefined, args);
 
      isWaiting = true;
 
      setTimeout(() => {
        isWaiting = false;
      }, limit);
    }
  };
};