@sudobility/ratelimit_service 1.0.16 → 1.0.18
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.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RateLimitRouteHandler.d.ts","sourceRoot":"","sources":["../../src/helpers/RateLimitRouteHandler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAChE,OAAO,KAAK,EACV,oBAAoB,
|
|
1
|
+
{"version":3,"file":"RateLimitRouteHandler.d.ts","sourceRoot":"","sources":["../../src/helpers/RateLimitRouteHandler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAChE,OAAO,KAAK,EACV,oBAAoB,EAKpB,oBAAoB,EAEpB,mBAAmB,EACpB,MAAM,mBAAmB,CAAC;AAI3B,OAAO,EAGL,KAAK,gBAAgB,EAEtB,MAAM,UAAU,CAAC;AAOlB;;GAEG;AACH,MAAM,WAAW,2BAA2B;IAC1C,yBAAyB;IACzB,gBAAgB,EAAE,MAAM,CAAC;IACzB,gCAAgC;IAChC,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,gCAAgC;IAChC,EAAE,EAAE,kBAAkB,CAAC,GAAG,CAAC,CAAC;IAC5B,qDAAqD;IACrD,eAAe,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;IACtC,uDAAuD;IACvD,uBAAuB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAClD;AAYD;;;GAGG;AACH,qBAAa,qBAAqB;IAChC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAmB;IAC5C,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAoB;IACtD,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAmB;IACpD,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAmB;IACpD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAyB;gBAE1C,MAAM,EAAE,2BAA2B;IAc/C;;;;;;OAMG;IACG,uBAAuB,CAC3B,MAAM,EAAE,MAAM,EACd,QAAQ,GAAE,OAAe,GACxB,OAAO,CAAC,oBAAoB,CAAC;IAuEhC;;;;;;;;OAQG;IACG,uBAAuB,CAC3B,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,mBAAmB,EAC/B,KAAK,GAAE,MAAY,EACnB,QAAQ,GAAE,OAAe,GACxB,OAAO,CAAC,oBAAoB,CAAC;IA6ChC;;OAEG;IACH,OAAO,CAAC,cAAc;IAQtB;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IAY7B;;;OAGG;IACH,OAAO,CAAC,aAAa;IAQrB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAazB;;OAEG;IACH,OAAO,CAAC,iBAAiB;CAe1B"}
|
|
@@ -2,6 +2,7 @@ import { RevenueCatHelper } from "./RevenueCatHelper";
|
|
|
2
2
|
import { EntitlementHelper } from "./EntitlementHelper";
|
|
3
3
|
import { RateLimitChecker } from "./RateLimitChecker";
|
|
4
4
|
import { NONE_ENTITLEMENT, PeriodType, } from "../types";
|
|
5
|
+
import { getNextHourStart, getNextDayStart, getNextSubscriptionMonthStart, } from "../utils/time";
|
|
5
6
|
/**
|
|
6
7
|
* Default display names for common entitlements.
|
|
7
8
|
*/
|
|
@@ -73,11 +74,19 @@ export class RateLimitRouteHandler {
|
|
|
73
74
|
? internalLimits.monthly - (checkResult.remaining.monthly ?? 0)
|
|
74
75
|
: 0,
|
|
75
76
|
};
|
|
77
|
+
// Calculate reset times
|
|
78
|
+
const now = new Date();
|
|
79
|
+
const resets = {
|
|
80
|
+
hourly: getNextHourStart(now).toISOString(),
|
|
81
|
+
daily: getNextDayStart(now).toISOString(),
|
|
82
|
+
monthly: getNextSubscriptionMonthStart(subscriptionStartedAt, now).toISOString(),
|
|
83
|
+
};
|
|
76
84
|
return {
|
|
77
85
|
tiers,
|
|
78
86
|
currentEntitlement,
|
|
79
87
|
currentLimits,
|
|
80
88
|
currentUsage,
|
|
89
|
+
resets,
|
|
81
90
|
};
|
|
82
91
|
}
|
|
83
92
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RateLimitRouteHandler.js","sourceRoot":"","sources":["../../src/helpers/RateLimitRouteHandler.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"RateLimitRouteHandler.js","sourceRoot":"","sources":["../../src/helpers/RateLimitRouteHandler.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EACL,gBAAgB,EAChB,UAAU,GAGX,MAAM,UAAU,CAAC;AAClB,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,6BAA6B,GAC9B,MAAM,eAAe,CAAC;AAkBvB;;GAEG;AACH,MAAM,qBAAqB,GAA2B;IACpD,IAAI,EAAE,MAAM;IACZ,OAAO,EAAE,SAAS;IAClB,GAAG,EAAE,KAAK;IACV,UAAU,EAAE,YAAY;CACzB,CAAC;AAEF;;;GAGG;AACH,MAAM,OAAO,qBAAqB;IAOhC,YAAY,MAAmC;QAC7C,IAAI,CAAC,QAAQ,GAAG,IAAI,gBAAgB,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,gBAAgB,EAAE,CAAC,CAAC;QAC1E,IAAI,CAAC,iBAAiB,GAAG,IAAI,iBAAiB,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;QACxE,IAAI,CAAC,gBAAgB,GAAG,IAAI,gBAAgB,CAAC;YAC3C,EAAE,EAAE,MAAM,CAAC,EAAE;YACb,KAAK,EAAE,MAAM,CAAC,eAAe;SAC9B,CAAC,CAAC;QACH,IAAI,CAAC,gBAAgB,GAAG,MAAM,CAAC,gBAAgB,CAAC;QAChD,IAAI,CAAC,YAAY,GAAG;YAClB,GAAG,qBAAqB;YACxB,GAAG,MAAM,CAAC,uBAAuB;SAClC,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,uBAAuB,CAC3B,MAAc,EACd,WAAoB,KAAK;QAEzB,4BAA4B;QAC5B,MAAM,KAAK,GAAoB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,GAAG,CACtE,CAAC,CAAC,WAAW,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC;YAC1B,WAAW;YACX,WAAW,EAAE,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC;YAC7C,MAAM,EAAE,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC;SACnC,CAAC,CACH,CAAC;QAEF,+CAA+C;QAC/C,IAAI,YAAsB,CAAC;QAC3B,IAAI,qBAAqB,GAAgB,IAAI,CAAC;QAC9C,IAAI,CAAC;YACH,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,mBAAmB,CAC9D,MAAM,EACN,QAAQ,CACT,CAAC;YACF,YAAY,GAAG,gBAAgB,CAAC,YAAY,CAAC;YAC7C,qBAAqB,GAAG,gBAAgB,CAAC,qBAAqB,CAAC;QACjE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,6CAA6C,EAAE,KAAK,CAAC,CAAC;YACpE,YAAY,GAAG,CAAC,gBAAgB,CAAC,CAAC;QACpC,CAAC;QAED,qEAAqE;QACrE,MAAM,kBAAkB,GAAG,IAAI,CAAC,qBAAqB,CAAC,YAAY,CAAC,CAAC;QAEpE,0CAA0C;QAC1C,MAAM,cAAc,GAAG,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;QAC1E,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC;QAEzD,oBAAoB;QACpB,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,SAAS,CACvD,MAAM,EACN,cAAc,EACd,qBAAqB,CACtB,CAAC;QAEF,MAAM,YAAY,GAAmB;YACnC,MAAM,EACJ,cAAc,CAAC,MAAM,KAAK,SAAS;gBACjC,CAAC,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,WAAW,CAAC,SAAS,CAAC,MAAM,IAAI,CAAC,CAAC;gBAC7D,CAAC,CAAC,CAAC;YACP,KAAK,EACH,cAAc,CAAC,KAAK,KAAK,SAAS;gBAChC,CAAC,CAAC,cAAc,CAAC,KAAK,GAAG,CAAC,WAAW,CAAC,SAAS,CAAC,KAAK,IAAI,CAAC,CAAC;gBAC3D,CAAC,CAAC,CAAC;YACP,OAAO,EACL,cAAc,CAAC,OAAO,KAAK,SAAS;gBAClC,CAAC,CAAC,cAAc,CAAC,OAAO,GAAG,CAAC,WAAW,CAAC,SAAS,CAAC,OAAO,IAAI,CAAC,CAAC;gBAC/D,CAAC,CAAC,CAAC;SACR,CAAC;QAEF,wBAAwB;QACxB,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,MAAM,MAAM,GAAoB;YAC9B,MAAM,EAAE,gBAAgB,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE;YAC3C,KAAK,EAAE,eAAe,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE;YACzC,OAAO,EAAE,6BAA6B,CAAC,qBAAqB,EAAE,GAAG,CAAC,CAAC,WAAW,EAAE;SACjF,CAAC;QAEF,OAAO;YACL,KAAK;YACL,kBAAkB;YAClB,aAAa;YACb,YAAY;YACZ,MAAM;SACP,CAAC;IACJ,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,uBAAuB,CAC3B,MAAc,EACd,UAA+B,EAC/B,QAAgB,GAAG,EACnB,WAAoB,KAAK;QAEzB,kDAAkD;QAClD,MAAM,kBAAkB,GAAG,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;QAE9D,kEAAkE;QAClE,IAAI,qBAAqB,GAAgB,IAAI,CAAC;QAC9C,IAAI,YAAY,GAAa,CAAC,gBAAgB,CAAC,CAAC;QAChD,IAAI,CAAC;YACH,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,mBAAmB,CAC9D,MAAM,EACN,QAAQ,CACT,CAAC;YACF,qBAAqB,GAAG,gBAAgB,CAAC,qBAAqB,CAAC;YAC/D,YAAY,GAAG,gBAAgB,CAAC,YAAY,CAAC;QAC/C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,mBAAmB,EAAE,KAAK,CAAC,CAAC;QAC5C,CAAC;QAED,qCAAqC;QACrC,MAAM,cAAc,GAAG,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;QAC1E,MAAM,WAAW,GAAG,IAAI,CAAC,iBAAiB,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;QAEvE,4BAA4B;QAC5B,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,UAAU,CACpD,MAAM,EACN,kBAAkB,EAClB,qBAAqB,EACrB,KAAK,CACN,CAAC;QAEF,wBAAwB;QACxB,MAAM,OAAO,GAA4B,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YACrE,WAAW,EAAE,KAAK,CAAC,YAAY,CAAC,WAAW,EAAE;YAC7C,SAAS,EAAE,KAAK,CAAC,UAAU,CAAC,WAAW,EAAE;YACzC,YAAY,EAAE,KAAK,CAAC,aAAa;YACjC,KAAK,EAAE,WAAW;SACnB,CAAC,CAAC,CAAC;QAEJ,OAAO;YACL,UAAU;YACV,OAAO;YACP,YAAY,EAAE,OAAO,CAAC,MAAM;SAC7B,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,cAAc,CAAC,WAAmB;QACxC,IAAI,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,EAAE,CAAC;YACnC,OAAO,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;QACxC,CAAC;QACD,sCAAsC;QACtC,OAAO,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACpE,CAAC;IAED;;;OAGG;IACK,qBAAqB,CAAC,YAAsB;QAClD,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE,CAAC;YACvC,IACE,WAAW,KAAK,gBAAgB;gBAChC,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,EAClC,CAAC;gBACD,OAAO,WAAW,CAAC;YACrB,CAAC;QACH,CAAC;QACD,OAAO,gBAAgB,CAAC;IAC1B,CAAC;IAED;;;OAGG;IACK,aAAa,CAAC,MAA0B;QAC9C,OAAO;YACL,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,IAAI;YAC7B,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,IAAI;YAC3B,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,IAAI;SAChC,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,iBAAiB,CAAC,UAA+B;QACvD,QAAQ,UAAU,EAAE,CAAC;YACnB,KAAK,MAAM;gBACT,OAAO,UAAU,CAAC,MAAM,CAAC;YAC3B,KAAK,KAAK;gBACR,OAAO,UAAU,CAAC,KAAK,CAAC;YAC1B,KAAK,OAAO;gBACV,OAAO,UAAU,CAAC,OAAO,CAAC;YAC5B;gBACE,MAAM,IAAI,KAAK,CAAC,wBAAwB,UAAU,EAAE,CAAC,CAAC;QAC1D,CAAC;IACH,CAAC;IAED;;OAEG;IACK,iBAAiB,CACvB,MAA0B,EAC1B,UAA+B;QAE/B,QAAQ,UAAU,EAAE,CAAC;YACnB,KAAK,MAAM;gBACT,OAAO,MAAM,CAAC,MAAM,IAAI,IAAI,CAAC;YAC/B,KAAK,KAAK;gBACR,OAAO,MAAM,CAAC,KAAK,IAAI,IAAI,CAAC;YAC9B,KAAK,OAAO;gBACV,OAAO,MAAM,CAAC,OAAO,IAAI,IAAI,CAAC;YAChC;gBACE,OAAO,IAAI,CAAC;QAChB,CAAC;IACH,CAAC;CACF"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sudobility/ratelimit_service",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.18",
|
|
4
4
|
"description": "Shared rate limiting library based on RevenueCat entitlements",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -48,14 +48,14 @@
|
|
|
48
48
|
"author": "Sudobility",
|
|
49
49
|
"license": "MIT",
|
|
50
50
|
"peerDependencies": {
|
|
51
|
-
"@sudobility/types": "^1.9.
|
|
51
|
+
"@sudobility/types": "^1.9.49",
|
|
52
52
|
"drizzle-orm": "^0.45.0",
|
|
53
53
|
"hono": "^4.0.0",
|
|
54
54
|
"postgres": "^3.4.0"
|
|
55
55
|
},
|
|
56
56
|
"devDependencies": {
|
|
57
57
|
"vitest": "^4.0.4",
|
|
58
|
-
"@sudobility/types": "^1.9.
|
|
58
|
+
"@sudobility/types": "^1.9.49",
|
|
59
59
|
"@types/bun": "latest",
|
|
60
60
|
"@types/node": "^24.10.1",
|
|
61
61
|
"@typescript-eslint/eslint-plugin": "^8.50.0",
|