@sberdevices/plasma-temple
Version:
SberDevices CanvasApp Templates.
30 lines (23 loc) • 1.12 kB
JavaScript
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.THROTTLE_WAIT = exports.THROTTLE_PARAMS = void 0;
exports.useThrottledCallback = useThrottledCallback;
var _react = /*#__PURE__*/_interopRequireDefault( /*#__PURE__*/require("react"));
var _lodash = /*#__PURE__*/_interopRequireDefault( /*#__PURE__*/require("lodash.throttle"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
var THROTTLE_WAIT = 450;
exports.THROTTLE_WAIT = THROTTLE_WAIT;
var THROTTLE_PARAMS = {
leading: true,
trailing: false
};
exports.THROTTLE_PARAMS = THROTTLE_PARAMS;
function useThrottledCallback(fn, dependencies) {
var wait = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : THROTTLE_WAIT;
var params = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : THROTTLE_PARAMS;
var throttled = (0, _lodash["default"])(fn, wait, params); // eslint-disable-next-line react-hooks/exhaustive-deps
return _react["default"].useCallback(throttled, dependencies);
}
//# sourceMappingURL=useThrottledCallback.js.map
;