UNPKG

monad-ts

Version:

Monad-ts is a small library implements some of key monads and way to chain them in a pipe (flow) in JavaScript and TypeScript. Angular 2+ compatible.

34 lines (33 loc) 1.1 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); /** * Execute a function given a delay time. * @method debounceTime * @param {function} f - invoked function. * @param {number} d - a delay time. * @param {boolean} [immediate = true] immediate - first func call is immediate if true. * @return {function(...args:any[])=>void} */ function debounceTime(f, d, immediate) { var _this = this; if (immediate === void 0) { immediate = true; } var timeout; return function () { var args = []; for (var _i = 0; _i < arguments.length; _i++) { args[_i] = arguments[_i]; } var later = function () { timeout = null; if (!immediate) f.apply(_this, args); }; var callNow = immediate && !timeout; clearTimeout(timeout); timeout = setTimeout(later, d); if (callNow) f.apply(_this, args); }; } exports.debounceTime = debounceTime; //Copyright (c) 2017 Alex Tranchenko. All rights reserved.