@freemework/common
Version:
Common library of the Freemework Project.
55 lines • 2.28 kB
JavaScript
export var FLimit;
(function (FLimit) {
function isLimitOpts(probablyOpts) {
if (probablyOpts !== undefined && probablyOpts !== null) {
if (typeof probablyOpts === "object") {
let hasAnyFriendlyField = false;
if ("perSecond" in probablyOpts) {
if (!(probablyOpts.perSecond !== undefined && Number.isInteger(probablyOpts.perSecond))) {
return false;
}
hasAnyFriendlyField = true;
}
if ("perMinute" in probablyOpts) {
if (!(probablyOpts.perMinute !== undefined && Number.isInteger(probablyOpts.perMinute))) {
return false;
}
hasAnyFriendlyField = true;
}
if ("perHour" in probablyOpts) {
if (!(probablyOpts.perHour !== undefined && Number.isInteger(probablyOpts.perHour))) {
return false;
}
hasAnyFriendlyField = true;
}
if ("perTimespan" in probablyOpts) {
if (!(probablyOpts.perTimespan !== undefined
&& Number.isInteger(probablyOpts.perTimespan.count)
&& Number.isInteger(probablyOpts.perTimespan.delay))) {
return false;
}
hasAnyFriendlyField = true;
}
if ("parallel" in probablyOpts) {
if (!(probablyOpts.parallel !== undefined && Number.isInteger(probablyOpts.parallel))) {
return false;
}
hasAnyFriendlyField = true;
}
if (hasAnyFriendlyField) {
return true;
}
}
}
return false;
}
FLimit.isLimitOpts = isLimitOpts;
function ensureLimitOpts(probablyOpts) {
if (isLimitOpts(probablyOpts)) {
return probablyOpts;
}
throw new Error("Wrong argument for FLimit Opts");
}
FLimit.ensureLimitOpts = ensureLimitOpts;
})(FLimit || (FLimit = {}));
//# sourceMappingURL=f_limit.js.map