{"size": 214, "ext": "js", "max_stars_repo_path": "packages/util/src/debounce.js", "max_stars_repo_name": "jakemwood/design-system", "max_stars_repo_stars_event_min_datetime": null, "max_stars_repo_stars_event_max_datetime": null, "max_issues_repo_path": "packages/util/src/debounce.js", "max_issues_repo_name": "jakemwood/design-system", "max_issues_repo_issues_event_min_datetime": null, "max_issues_repo_issues_event_max_datetime": null, "max_forks_repo_path": "packages/util/src/debounce.js", "max_forks_repo_name": "jakemwood/design-system", "max_forks_repo_forks_event_min_datetime": null, "max_forks_repo_forks_event_max_datetime": null}
{"max_stars_count": null, "max_issues_count": null, "max_forks_count": null, "avg_line_length": 16.4615384615, "max_line_length": 38, "alphanum_fraction": 0.5794392523}
export function debounce(delay, fn) {
  let timerId

  return function(...args) {
    if (timerId) clearTimeout(timerId)

    timerId = setTimeout(() => {
      fn(...args)
      timerId = null
    }, delay)
  }
}
