@flexis/ui
Version:
Styleless React Components
17 lines (16 loc) • 1.17 kB
JavaScript
import { throttle } from 'throttle-debounce';
import { Bind } from './Bind';
/**
* Decortor for throttlify class method.
* @param delay - Throttle delay in ms.
* @param noTrailing - No trailing call.
* @return Method decorator.
*/
export function Throttle(delay) {
var noTrailing = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
return function (_, __, descriptor) {
descriptor.value = throttle(delay, noTrailing, descriptor.value, false);
Bind()(_, __, descriptor);
};
}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9oZWxwZXJzL1Rocm90dGxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLFNBQ0MsUUFERCxRQUVPLG1CQUZQO0FBR0EsU0FDQyxJQURELFFBRU8sUUFGUDtBQUlBOzs7Ozs7O0FBTUEsT0FBTSxTQUFVLFFBQVYsQ0FBbUIsS0FBbkIsRUFBb0Q7QUFBQSxNQUFsQixVQUFrQix1RUFBTCxLQUFLO0FBQ3pELFNBQU8sVUFBQyxDQUFELEVBQUksRUFBSixFQUFRLFVBQVIsRUFBMEM7QUFDaEQsSUFBQSxVQUFVLENBQUMsS0FBWCxHQUFtQixRQUFRLENBQUMsS0FBRCxFQUFRLFVBQVIsRUFBb0IsVUFBVSxDQUFDLEtBQS9CLEVBQXNDLEtBQXRDLENBQTNCO0FBQ0EsSUFBQSxJQUFJLEdBQUcsQ0FBSCxFQUFNLEVBQU4sRUFBVSxVQUFWLENBQUo7QUFDQSxHQUhEO0FBSUEiLCJzb3VyY2VSb290IjoiIn0=