feat(SW-2879): Move BookingWidget to booking-flow package * Fix lockfile * Fix styling * a tiny little booking widget test * Tiny fixes * Merge branch 'master' into feat/sw-2879-booking-widget-to-booking-flow-package * Remove unused scripts * lint:fix * Merge branch 'master' into feat/sw-2879-booking-widget-to-booking-flow-package * Tiny lint fixes * update test * Update Input in booking-flow * Clean up comments etc * Merge branch 'master' into feat/sw-2879-booking-widget-to-booking-flow-package * Setup tracking context for booking-flow * Add missing use client * Fix temp tracking function * Pass booking to booking-widget * Remove comment * Add use client to booking widget tracking provider * Add use client to tracking functions * Merge branch 'master' into feat/sw-2879-booking-widget-to-booking-flow-package * Move debug page * Merge branch 'master' into feat/sw-2879-booking-widget-to-booking-flow-package * Merge branch 'master' into feat/sw-2879-booking-widget-to-booking-flow-package * Merge branch 'master' into feat/sw-2879-booking-widget-to-booking-flow-package Approved-by: Bianca Widstam
13 lines
353 B
TypeScript
13 lines
353 B
TypeScript
export function debounce<Params extends any[]>(
|
|
func: (...args: Params) => any,
|
|
delay = 300
|
|
) {
|
|
let debounceTimer: ReturnType<typeof setTimeout>
|
|
|
|
return function <U>(this: U, ...args: Parameters<typeof func>) {
|
|
const context = this
|
|
clearTimeout(debounceTimer)
|
|
debounceTimer = setTimeout(() => func.apply(context, args), delay)
|
|
}
|
|
}
|