nekosapi
Version:
Async wrapper for NekosAPI
23 lines • 901 B
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.preventRateLimit = void 0;
function preventRateLimit() {
return function (target, propertyKey, descriptor) {
const originalMethod = descriptor.value;
descriptor.value = async function (...args) {
const now = new Date().getTime();
const elapsedTime = now - this.constructor.lastRequest.getTime();
if (elapsedTime < 1000) {
return new Promise(resolve => setTimeout(() => {
this.constructor.lastRequest = new Date();
return resolve(originalMethod.apply(this, args));
}, 1000));
}
else {
return originalMethod.apply(this, args);
}
};
};
}
exports.preventRateLimit = preventRateLimit;
//# sourceMappingURL=preventRateLimit.js.map
;