@edirect/rate-limit-module 1.0.6 → 1.0.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -66,24 +66,24 @@ let RateLimitingRuleGuard = RateLimitingRuleGuard_1 = class RateLimitingRuleGuar
|
|
|
66
66
|
};
|
|
67
67
|
const invalidExpressionMessage = this.ruleService.validateRuleExpression(rule.expression);
|
|
68
68
|
if (invalidExpressionMessage && invalidExpressionMessage.length) {
|
|
69
|
-
throw new common_1.
|
|
69
|
+
throw new common_1.NotAcceptableException(invalidExpressionMessage);
|
|
70
70
|
}
|
|
71
71
|
const invalidFunctions = this.ruleEngine.validateFunctionsAreValid(rule.expression);
|
|
72
72
|
if (invalidFunctions && invalidFunctions.length) {
|
|
73
|
-
throw new common_1.
|
|
73
|
+
throw new common_1.NotAcceptableException(`these functions are not allowed ${invalidFunctions.join(', ')}`);
|
|
74
74
|
}
|
|
75
75
|
if (rule.variablesRequired) {
|
|
76
76
|
const missingVars = await this.ruleEngine.validateExpressionVariables(rule.expression, contextVars);
|
|
77
77
|
if (missingVars && missingVars.length) {
|
|
78
78
|
this.logger.debug(`[RATE LIMITER] rule - ${rule.name} requires theses variables ${JSON.stringify(missingVars)}`);
|
|
79
|
-
throw new common_1.
|
|
79
|
+
throw new common_1.NotAcceptableException(`For rate limiting validation these variables are required ${JSON.stringify(missingVars)}`);
|
|
80
80
|
}
|
|
81
81
|
}
|
|
82
82
|
const safeContextVars = (0, object_utils_1.withDefaultNull)(contextVars);
|
|
83
83
|
const notAllowed = await this.ruleEngine.evaluate(rule.expression, safeContextVars);
|
|
84
84
|
this.logger.debug(`[RATE LIMITER] rule - ${rule.name} reached the limit`);
|
|
85
85
|
if (notAllowed)
|
|
86
|
-
throw new common_1.
|
|
86
|
+
throw new common_1.NotAcceptableException(rule.errorMessage || `Rate Limiting rule reached limit`);
|
|
87
87
|
}
|
|
88
88
|
return true;
|
|
89
89
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rate-limiting.guard.js","sourceRoot":"","sources":["../../../src/guards/rate-limiting.guard.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAOwB;AACxB,uCAAyC;AACzC,6FAGoD;AACpD,kDAAkD;AAElD,wDAAoD;AACpD,mFAA8E;AAGvE,IAAM,qBAAqB,6BAA3B,MAAM,qBAAqB;IAIb;IACA;IAEA;IANF,MAAM,GAAG,IAAI,eAAM,CAAC,uBAAqB,CAAC,IAAI,CAAC,CAAC;IAEjE,YACmB,SAAoB,EACpB,WAAwB,EAExB,UAA6B;QAH7B,cAAS,GAAT,SAAS,CAAW;QACpB,gBAAW,GAAX,WAAW,CAAa;QAExB,eAAU,GAAV,UAAU,CAAmB;IAC7C,CAAC;IAEJ,KAAK,CAAC,WAAW,CAAC,OAAyB;QACzC,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;YAErC,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CACrC,4CAAa,EACb,OAAO,CACR,CAAC;YAEF,IAAI,CAAC,YAAY;gBAAE,OAAO,IAAI,CAAC;YAE/B,MAAM,GAAG,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,UAAU,EAAE,CAAC;YAChD,MAAM,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC;YAExB,MAAM,EACJ,MAAM,EACN,WAAW,EACX,YAAY,EACZ,eAAe,EACf,UAAU,GACX,GAAG,YAAY,CAAC;YAEjB,MAAM,OAAO,GAAG,sBAAsB,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;YAE5D,IAAI,CAAC,OAAO;gBAAE,OAAO,IAAI,CAAC;YAE1B,MAAM,QAAQ,GAAG,sBAAsB,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;YAC9D,MAAM,WAAW,GAAG,sBAAsB,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;YACpE,MAAM,MAAM,GAAG,sBAAsB,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;YAE1D,MAAM,UAAU,GAAc;gBAC5B,OAAO,EAAE,MAAM;gBACf,OAAO,EAAE,OAAO;gBAChB,QAAQ,EAAE,QAAQ;gBAClB,MAAM,EAAE,MAAM;gBACd,YAAY,EAAE,MAAM;gBACpB,WAAW;gBACX,IAAI,EAAE,CAAC;gBACP,KAAK,EAAE,EAAE;aACV,CAAC;YAEF,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,wBAAwB,CAAC,UAAU,CAAC,CAAC;YAC1E,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,kBAAkB,KAAK,CAAC,MAAM,kBAAkB,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAE3F,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,MAAM;gBAAE,OAAO,IAAI,CAAC;YAEzC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBACzB,MAAM,WAAW,GAAG;oBAClB,GAAG,MAAM;oBACT,GAAG,IAAI,CAAC,SAAS;iBAClB,CAAC;gBAEF,MAAM,wBAAwB,GAC5B,IAAI,CAAC,WAAW,CAAC,sBAAsB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;gBAE3D,IAAI,wBAAwB,IAAI,wBAAwB,CAAC,MAAM,EAAE,CAAC;oBAChE,MAAM,IAAI,
|
|
1
|
+
{"version":3,"file":"rate-limiting.guard.js","sourceRoot":"","sources":["../../../src/guards/rate-limiting.guard.ts"],"names":[],"mappings":"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"}
|
|
@@ -83,7 +83,8 @@ let RuleService = class RuleService {
|
|
|
83
83
|
const cacheKey = this.generateRateLimitingCountCacheKey({
|
|
84
84
|
partner: queryParameters?.partner,
|
|
85
85
|
provider: queryParameters?.provider,
|
|
86
|
-
productType: queryParameters?.productType
|
|
86
|
+
productType: queryParameters?.productType,
|
|
87
|
+
market: queryParameters?.market,
|
|
87
88
|
});
|
|
88
89
|
if (data && data.length) {
|
|
89
90
|
await this.cacheService.set(cacheKey, data, 3600);
|
|
@@ -121,6 +122,7 @@ let RuleService = class RuleService {
|
|
|
121
122
|
partner: current?.partner,
|
|
122
123
|
provider: current?.provider,
|
|
123
124
|
productType: current?.productType,
|
|
125
|
+
market: current?.market
|
|
124
126
|
});
|
|
125
127
|
if (cacheKey || cacheKey === '') {
|
|
126
128
|
const isDeleted = await this.cacheService.delete([cacheKey]);
|
|
@@ -171,7 +173,8 @@ let RuleService = class RuleService {
|
|
|
171
173
|
const cacheKey = this.generateRateLimitingCountCacheKey({
|
|
172
174
|
partner: queryParameters?.partner,
|
|
173
175
|
provider: queryParameters?.provider,
|
|
174
|
-
productType: queryParameters?.productType
|
|
176
|
+
productType: queryParameters?.productType,
|
|
177
|
+
market: queryParameters?.market
|
|
175
178
|
});
|
|
176
179
|
const cachedData = await this.cacheService.get(cacheKey);
|
|
177
180
|
if (cachedData && cachedData.length) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rule.service.js","sourceRoot":"","sources":["../../../src/rules/rule.service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,4CAAgD;AAChD,2CAAiI;AACjI,kDAAiD;AACjD,iEAA6D;AAI7D,uDAAmD;AAG5C,IAAM,WAAW,GAAjB,MAAM,WAAW;IAqBH;IACA;IACA;IAtBF,qBAAqB,GAAG,GAAG,CAAC;IAC5B,oBAAoB,GAAG,CAAC,CAAC;IACzB,kBAAkB,GAAG;QACpC,cAAc;QACd,YAAY;QACZ,YAAY;QACZ,UAAU;QACV,SAAS;QACT,UAAU;QACV,SAAS;QACT,OAAO;QACP,WAAW;QACX,aAAa;QACb,cAAc;QACd,MAAM;QACN,UAAU;QACV,sBAAsB;KACvB,CAAC;IAEF,YACmB,MAAqB,EACrB,UAA0B,EAC1B,YAA0B;QAF1B,WAAM,GAAN,MAAM,CAAe;QACrB,eAAU,GAAV,UAAU,CAAgB;QAC1B,iBAAY,GAAZ,YAAY,CAAc;IAC1C,CAAC;IAEJ,KAAK,CAAC,MAAM,CAAC,KAAoB;QAC/B,IAAI,CAAC;YACH,IAAI,CAAC,KAAK;gBAAE,MAAM,IAAI,4BAAmB,CAAC,0BAA0B,CAAC,CAAC;YAEtE,MAAM,QAAQ,GAAG,IAAI,CAAC,iCAAiC,CAAC;gBACtD,OAAO,EAAE,KAAK,EAAE,OAAO;gBACvB,QAAQ,EAAE,KAAK,EAAE,QAAQ;gBACzB,WAAW,EAAE,KAAK,EAAE,WAAW;gBAC/B,MAAM,EAAE,KAAK,EAAE,MAAM;aACtB,CAAC,CAAC;YAEH,IAAI,QAAQ,IAAI,QAAQ,KAAK,EAAE,EAAE,CAAC;gBAChC,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;gBAE7D,IAAI,CAAC,SAAS,EAAE,CAAC;oBACf,MAAM,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,mBAAmB,CAAC,CAAC;gBAC/D,CAAC;YACH,CAAC;YAED,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACrC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,wCAAwC,EAAE,KAAK,CAAC,CAAC;YACnE,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,eAA0B;QACtC,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;QAClD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,qCAAqC,EAAE,KAAK,CAAC,CAAC;YAChE,MAAM,IAAI,qCAA4B,EAAE,CAAC;QAC3C,CAAC;IACH,CAAC;IAED,KAAK,CAAC,wBAAwB,CAC5B,eAA0B;QAE1B,IAAI,CAAC;YACH,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC;YAE5D,IAAI,UAAU,IAAI,UAAU,CAAC,MAAM;gBAAE,OAAO,UAAU,CAAC;YAEvD,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;YAEhE,MAAM,QAAQ,GAAG,IAAI,CAAC,iCAAiC,CAAC;gBACtD,OAAO,EAAE,eAAe,EAAE,OAAO;gBACjC,QAAQ,EAAE,eAAe,EAAE,QAAQ;gBACnC,WAAW,EAAE,eAAe,EAAE,WAAW;
|
|
1
|
+
{"version":3,"file":"rule.service.js","sourceRoot":"","sources":["../../../src/rules/rule.service.ts"],"names":[],"mappings":"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"}
|