New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

@jcoreio/async-throttle

Package Overview
Dependencies
Maintainers
0
Versions
20
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@jcoreio/async-throttle - npm Package Compare versions

Comparing version 1.6.0 to 1.6.1

index.d.ts.map

29

index.d.ts

@@ -1,16 +0,15 @@

export class CanceledError extends Error {}
export type ThrottledFunction<Args extends any[], Value> = {
(...args: Args): Promise<Value>
invokeIgnoreResult: (...args: Args) => void
cancel: () => Promise<void>
flush: () => Promise<void>
declare class CanceledError extends Error {
constructor();
}
export default function throttle<Args extends any[], Value>(
fn: (...args: Args) => Value | Promise<Value>,
_wait?: number | null,
options?: {
getNextArgs?: (args0: Args, args1: Args) => Args
}
): ThrottledFunction<Args, Value>
export type ThrottledFunction<Args extends Array<any>, Value> = {
(...args: Args): Promise<Value>;
invokeIgnoreResult: (...args: Args) => void;
cancel: () => Promise<void>;
flush: () => Promise<void>;
};
declare function throttle<Args extends any[], Value>(fn: (...args: Args) => Value | Promise<Value>, _wait?: number | null | undefined, options?: {
getNextArgs?: (args0: Args, args1: Args) => Args;
}): ThrottledFunction<Args, Value>;
export default throttle;
export { CanceledError };
//# sourceMappingURL=index.d.ts.map
"use strict";
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports["default"] = exports.CanceledError = void 0;
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
var _wrapNativeSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/wrapNativeSuper"));
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
var CanceledError = /*#__PURE__*/function (_Error) {
(0, _inherits2["default"])(CanceledError, _Error);
var _super = _createSuper(CanceledError);
function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2["default"])(o), (0, _possibleConstructorReturn2["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2["default"])(t).constructor) : o.apply(t, e)); }
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
var CanceledError = exports.CanceledError = /*#__PURE__*/function (_Error) {
function CanceledError() {
var _this;
(0, _classCallCheck2["default"])(this, CanceledError);
_this = _super.call(this, 'throttled invocation was canceled');
_this = _callSuper(this, CanceledError, ['throttled invocation was canceled']);
_this.name = 'CanceledError';
return _this;
}
return CanceledError;
}( /*#__PURE__*/(0, _wrapNativeSuper2["default"])(Error));
(0, _inherits2["default"])(CanceledError, _Error);
return (0, _createClass2["default"])(CanceledError);
}(/*#__PURE__*/(0, _wrapNativeSuper2["default"])(Error));
var Delay = /*#__PURE__*/function () {
function Delay(lastInvocationDone, wait) {
var _this2 = this;
(0, _classCallCheck2["default"])(this, Delay);
(0, _defineProperty2["default"])(this, "ready", void 0);
(0, _defineProperty2["default"])(this, "canceled", false);

@@ -61,7 +46,6 @@ var delay = new Promise(function (resolve) {

}).then(function () {
_this2.ready = null;
_this2.ready = undefined;
});
}
(0, _createClass2["default"])(Delay, [{
return (0, _createClass2["default"])(Delay, [{
key: "flush",

@@ -80,40 +64,47 @@ value: function flush() {

}, {
key: Symbol.toStringTag,
get: function get() {
return 'Delay';
}
}, {
key: "then",
value: function then(handler) {
value: function then(onfulfilled, onrejected) {
var _this3 = this;
return (this.ready || Promise.resolve()).then(function () {
if (_this3.canceled) throw new CanceledError();
return handler();
});
}).then(onfulfilled, onrejected);
}
}, {
key: "catch",
value: function _catch(onrejected) {
return this.then(undefined, onrejected);
}
}, {
key: "finally",
value: function _finally(onfinally) {
return this.then()["finally"](onfinally);
}
}]);
return Delay;
}();
function throttle(fn, _wait) {
var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
var wait = _wait != null && Number.isFinite(_wait) ? Math.max(_wait, 0) : 0;
var getNextArgs = options.getNextArgs || function (prev, next) {
return next;
};
var nextArgs;
var lastInvocationDone = null;
var delay = null;
var nextInvocation = null;
var lastInvocationDone = undefined;
var delay = undefined;
var nextInvocation = undefined;
function invoke() {
var args = nextArgs; // istanbul ignore next
var args = nextArgs;
// istanbul ignore next
if (!args) {
return Promise.reject(new Error('unexpected error: nextArgs is null'));
}
nextInvocation = null;
nextArgs = null;
nextInvocation = undefined;
nextArgs = undefined;
var result = Promise.resolve(fn.apply(void 0, (0, _toConsumableArray2["default"])(args)));
lastInvocationDone = result["catch"](function () {}).then(function () {
lastInvocationDone = null;
lastInvocationDone = undefined;
});

@@ -123,3 +114,2 @@ delay = new Delay(lastInvocationDone, wait);

}
function setNextArgs(args) {

@@ -129,7 +119,5 @@ nextArgs = nextArgs ? getNextArgs(nextArgs, args) : args;

}
function doInvoke() {
return nextInvocation = (delay || Promise.resolve()).then(invoke);
}
function wrapper() {

@@ -140,3 +128,2 @@ try {

}
setNextArgs(args);

@@ -146,5 +133,5 @@ } catch (error) {

}
return nextInvocation || doInvoke();
}
/**

@@ -172,4 +159,2 @@ * Calls the throttled function soon, but doesn't return a promise, catches

*/
wrapper.invokeIgnoreResult = function () {

@@ -179,5 +164,3 @@ for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {

}
setNextArgs(args);
if (!nextInvocation) {

@@ -192,42 +175,33 @@ doInvoke()["catch"](function (err) {

};
wrapper.cancel = /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
wrapper.cancel = /*#__PURE__*/(0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee() {
var _delay, _delay$cancel;
var prevLastInvocationDone;
return _regenerator["default"].wrap(function _callee$(_context) {
while (1) {
switch (_context.prev = _context.next) {
case 0:
prevLastInvocationDone = lastInvocationDone;
(_delay = delay) === null || _delay === void 0 ? void 0 : (_delay$cancel = _delay.cancel) === null || _delay$cancel === void 0 ? void 0 : _delay$cancel.call(_delay);
nextInvocation = null;
nextArgs = null;
lastInvocationDone = null;
delay = null;
_context.next = 8;
return prevLastInvocationDone;
case 8:
case "end":
return _context.stop();
}
while (1) switch (_context.prev = _context.next) {
case 0:
prevLastInvocationDone = lastInvocationDone;
(_delay = delay) === null || _delay === void 0 || (_delay$cancel = _delay.cancel) === null || _delay$cancel === void 0 || _delay$cancel.call(_delay);
nextInvocation = undefined;
nextArgs = undefined;
lastInvocationDone = undefined;
delay = undefined;
_context.next = 8;
return prevLastInvocationDone;
case 8:
case "end":
return _context.stop();
}
}, _callee);
}));
wrapper.flush = /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2() {
wrapper.flush = /*#__PURE__*/(0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee2() {
var _delay2, _delay2$flush;
return _regenerator["default"].wrap(function _callee2$(_context2) {
while (1) {
switch (_context2.prev = _context2.next) {
case 0:
(_delay2 = delay) === null || _delay2 === void 0 ? void 0 : (_delay2$flush = _delay2.flush) === null || _delay2$flush === void 0 ? void 0 : _delay2$flush.call(_delay2);
_context2.next = 3;
return lastInvocationDone;
case 3:
case "end":
return _context2.stop();
}
while (1) switch (_context2.prev = _context2.next) {
case 0:
(_delay2 = delay) === null || _delay2 === void 0 || (_delay2$flush = _delay2.flush) === null || _delay2$flush === void 0 || _delay2$flush.call(_delay2);
_context2.next = 3;
return lastInvocationDone;
case 3:
case "end":
return _context2.stop();
}

@@ -238,5 +212,7 @@ }, _callee2);

}
;
throttle.CanceledError = CanceledError;
module.exports = throttle;
var _default = exports["default"] = throttle;
module.exports = exports.default;
module.exports.default = exports.default;
//# sourceMappingURL=index.js.map
{
"name": "@jcoreio/async-throttle",
"version": "1.6.0",
"version": "1.6.1",
"description": "throttle async and promise-returning functions. Other packages don't do it right.",
"main": "index.js",
"sideEffects": false,
"scripts": {
"lint": "eslint $npm_package_config_eslint",
"lint:fix": "eslint --fix $npm_package_config_eslint",
"prettier": "prettier --write $npm_package_config_prettier",
"prettier:check": "prettier --list-different $npm_package_config_prettier",
"flow": "flow",
"flow:coverage": "for file in src/**.js test/**.js; do echo $file; flow coverage $file; done",
"clean": "rimraf es lib $(cd src; ls) *.js.flow *.d.ts",
"build": "npm run clean && babel src --out-dir es && flow-copy-source -v src/ es && copy src/**/*.d.ts es && cross-env BABEL_ENV=es5 babel src --out-dir . && flow-copy-source -v src/ . && copy src/**/*.d.ts .",
"test": "cross-env NODE_ENV=test BABEL_ENV=es5 mocha $npm_package_config_mocha && cross-env NODE_ENV=test BABEL_ENV=coverage nyc --reporter=lcov --reporter=text mocha $npm_package_config_mocha",
"test:watch": "cross-env NODE_ENV=test BABEL_ENV=test mocha --watch $npm_package_config_mocha",
"test:debug": "cross-env NODE_ENV=test BABEL_ENV=test mocha --inspect-brk $npm_package_config_mocha",
"codecov": "nyc report --reporter=text-lcov > coverage.lcov; codecov",
"prepublishOnly": "npm run clean && npm run prettier:check && npm run lint && flow && tsc && npm test && npm run build",
"open:coverage": "open coverage/lcov-report/index.html",
"semantic-release": "semantic-release"
},
"husky": {
"hooks": {
"pre-commit": "lint-staged && npm run lint && flow && tsc",
"commit-msg": "commitlint -E HUSKY_GIT_PARAMS",
"pre-push": "npm test"
}
},
"lint-staged": {
"*.{js,json,css,md,ts}": [
"prettier --write"
]
},
"commitlint": {
"extends": [
"@jedwards1211/commitlint-config"
]
},
"prettier": {
"semi": false,
"singleQuote": true,
"trailingComma": "es5"
},
"config": {
"mocha": "-r @babel/register test/configure.js 'test/**/*.js'",
"eslint": "src test --cache",
"prettier": "*.{json,md,js} {src,test}/**/*.{js,ts}",
"commitizen": {
"path": "cz-conventional-changelog"
}
},
"nyc": {
"include": [
"src/**/*.js"
],
"require": [
"@babel/register"
],
"sourceMap": false,
"instrument": false
},
"repository": {

@@ -80,44 +22,23 @@ "type": "git",

"homepage": "https://github.com/jcoreio/async-throttle#readme",
"devDependencies": {
"@babel/cli": "^7.12.10",
"@babel/core": "^7.12.10",
"@babel/eslint-parser": "^7.12.13",
"@babel/node": "^7.20.7",
"@babel/plugin-transform-runtime": "^7.12.10",
"@babel/preset-env": "^7.12.11",
"@babel/preset-flow": "^7.12.1",
"@babel/register": "^7.12.10",
"@commitlint/cli": "^11.0.0",
"@commitlint/config-conventional": "^11.0.0",
"@jedwards1211/commitlint-config": "^1.0.2",
"@jedwards1211/eslint-config": "^2.0.2",
"@jedwards1211/eslint-config-flow": "^3.0.0",
"babel-eslint": "^10.1.0",
"babel-plugin-istanbul": "^6.0.0",
"chai": "^4.2.0",
"chai-as-promised": "^7.1.1",
"codecov": "^3.8.1",
"copy": "^0.3.2",
"cross-env": "^7.0.3",
"eslint": "^7.18.0",
"eslint-config-prettier": "^7.2.0",
"eslint-plugin-flowtype": "^5.2.0",
"flow-bin": "^0.143.1",
"flow-copy-source": "https://github.com/jedwards1211/flow-copy-source#no-watch",
"husky": "^4.3.8",
"istanbul": "^0.4.5",
"lint-staged": "^10.5.3",
"mocha": "^8.2.1",
"nyc": "^15.1.0",
"prettier": "^2.2.1",
"prettier-eslint": "^12.0.0",
"rimraf": "^3.0.2",
"semantic-release": "^17.3.7",
"sinon": "^9.0.3",
"typescript": "^4.1.3",
"waait": "^1.0.5"
"dependencies": {
"@babel/runtime": "^7.18.6"
},
"dependencies": {
"@babel/runtime": "^7.12.5"
"main": "index.js",
"module": "index.mjs",
"types": "index.d.ts",
"exports": {
"./package.json": "./package.json",
".": {
"types": "./index.d.ts",
"import": "./index.mjs",
"default": "./index.js"
}
},
"engines": {
"node": ">=16"
},
"packageManager": "pnpm@8.11.0",
"@jcoreio/toolchain": {
"migratedVersion": "4.9.1"
}
}

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc