@thirdweb-dev/service-utils 0.7.3 → 0.8.0
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.
- package/dist/cjs/core/api.js +0 -16
- package/dist/cjs/core/api.js.map +1 -1
- package/dist/cjs/core/rateLimit/index.js +2 -13
- package/dist/cjs/core/rateLimit/index.js.map +1 -1
- package/dist/cjs/index.js +1 -2
- package/dist/cjs/index.js.map +1 -1
- package/dist/esm/core/api.js +0 -15
- package/dist/esm/core/api.js.map +1 -1
- package/dist/esm/core/rateLimit/index.js +2 -13
- package/dist/esm/core/rateLimit/index.js.map +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/types/core/api.d.ts +0 -1
- package/dist/types/core/api.d.ts.map +1 -1
- package/dist/types/core/rateLimit/index.d.ts +2 -2
- package/dist/types/core/rateLimit/index.d.ts.map +1 -1
- package/dist/types/core/usage.d.ts +2 -2
- package/dist/types/index.d.ts +1 -1
- package/dist/types/index.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/cjs/core/api.js
CHANGED
@@ -1,7 +1,6 @@
|
|
1
1
|
"use strict";
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
3
|
exports.fetchTeamAndProject = fetchTeamAndProject;
|
4
|
-
exports.updateRateLimitedAt = updateRateLimitedAt;
|
5
4
|
async function fetchTeamAndProject(authData, config) {
|
6
5
|
const { apiUrl, serviceApiKey } = config;
|
7
6
|
const clientId = authData.clientId;
|
@@ -24,19 +23,4 @@ async function fetchTeamAndProject(authData, config) {
|
|
24
23
|
throw new Error(`Error fetching key metadata from API: ${response.status} - ${text}`);
|
25
24
|
}
|
26
25
|
}
|
27
|
-
async function updateRateLimitedAt(projectId, config) {
|
28
|
-
const { apiUrl, serviceScope: scope, serviceApiKey } = config;
|
29
|
-
const url = `${apiUrl}/usage/rateLimit`;
|
30
|
-
await fetch(url, {
|
31
|
-
method: "PUT",
|
32
|
-
headers: {
|
33
|
-
"x-service-api-key": serviceApiKey,
|
34
|
-
"content-type": "application/json",
|
35
|
-
},
|
36
|
-
body: JSON.stringify({
|
37
|
-
apiKeyId: projectId, // projectId is the apiKeyId
|
38
|
-
scope,
|
39
|
-
}),
|
40
|
-
});
|
41
|
-
}
|
42
26
|
//# sourceMappingURL=api.js.map
|
package/dist/cjs/core/api.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../../src/core/api.ts"],"names":[],"mappings":";;AA0IA,kDA2BC;
|
1
|
+
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../../src/core/api.ts"],"names":[],"mappings":";;AA0IA,kDA2BC;AA3BM,KAAK,UAAU,mBAAmB,CACvC,QAA4B,EAC5B,MAAyB;IAEzB,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,CAAC;IAEzC,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC;IACnC,MAAM,GAAG,GAAG,GAAG,MAAM,eAAe,QAAQ,CAAC,CAAC,CAAC,aAAa,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;IAC9E,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;QAChC,MAAM,EAAE,KAAK;QACb,OAAO,EAAE;YACP,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACrE,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,UAAU,QAAQ,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACpE,mBAAmB,EAAE,aAAa;YAClC,cAAc,EAAE,kBAAkB;SACnC;KACF,CAAC,CAAC;IAEH,IAAI,IAAI,GAAG,EAAE,CAAC;IACd,IAAI,CAAC;QACH,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QAC7B,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,KAAK,CACb,yCAAyC,QAAQ,CAAC,MAAM,MAAM,IAAI,EAAE,CACrE,CAAC;IACJ,CAAC;AACH,CAAC"}
|
@@ -1,10 +1,9 @@
|
|
1
1
|
"use strict";
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
3
|
exports.rateLimit = rateLimit;
|
4
|
-
const api_js_1 = require("../api.js");
|
5
4
|
const RATE_LIMIT_WINDOW_SECONDS = 10;
|
6
5
|
async function rateLimit(args) {
|
7
|
-
const {
|
6
|
+
const { team, limitPerSecond, serviceConfig, redis, sampleRate = 1.0 } = args;
|
8
7
|
const shouldSampleRequest = Math.random() < sampleRate;
|
9
8
|
if (!shouldSampleRequest) {
|
10
9
|
return {
|
@@ -25,7 +24,7 @@ async function rateLimit(args) {
|
|
25
24
|
// Gets the 10-second window for the current timestamp.
|
26
25
|
const timestampWindow = Math.floor(Date.now() / (1000 * RATE_LIMIT_WINDOW_SECONDS)) *
|
27
26
|
RATE_LIMIT_WINDOW_SECONDS;
|
28
|
-
const key = `rate-limit:${serviceScope}:${
|
27
|
+
const key = `rate-limit:${serviceScope}:${team.id}:${timestampWindow}`;
|
29
28
|
// Increment and get the current request count in this window.
|
30
29
|
const requestCount = await redis.incr(key);
|
31
30
|
if (requestCount === 1) {
|
@@ -35,16 +34,6 @@ async function rateLimit(args) {
|
|
35
34
|
// Get the limit for this window accounting for the sample rate.
|
36
35
|
const limitPerWindow = limitPerSecond * sampleRate * RATE_LIMIT_WINDOW_SECONDS;
|
37
36
|
if (requestCount > limitPerWindow) {
|
38
|
-
/**
|
39
|
-
* Report rate limit hits.
|
40
|
-
* Only track rate limit when its hit for the first time.
|
41
|
-
* Not waiting for tracking to complete as user doesn't need to wait.
|
42
|
-
*/
|
43
|
-
if (requestCount === limitPerWindow + 1 && project?.id) {
|
44
|
-
(0, api_js_1.updateRateLimitedAt)(project.id, serviceConfig).catch(() => {
|
45
|
-
// no-op
|
46
|
-
});
|
47
|
-
}
|
48
37
|
return {
|
49
38
|
rateLimited: true,
|
50
39
|
requestCount,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/rateLimit/index.ts"],"names":[],"mappings":";;
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/rateLimit/index.ts"],"names":[],"mappings":";;AAWA,8BAmEC;AA3ED,MAAM,yBAAyB,GAAG,EAAE,CAAC;AAQ9B,KAAK,UAAU,SAAS,CAAC,IAW/B;IACC,MAAM,EAAE,IAAI,EAAE,cAAc,EAAE,aAAa,EAAE,KAAK,EAAE,UAAU,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC;IAE9E,MAAM,mBAAmB,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,UAAU,CAAC;IACvD,IAAI,CAAC,mBAAmB,EAAE,CAAC;QACzB,OAAO;YACL,WAAW,EAAE,KAAK;YAClB,YAAY,EAAE,CAAC;YACf,SAAS,EAAE,CAAC;SACb,CAAC;IACJ,CAAC;IAED,IAAI,cAAc,KAAK,CAAC,EAAE,CAAC;QACzB,qEAAqE;QACrE,OAAO;YACL,WAAW,EAAE,KAAK;YAClB,YAAY,EAAE,CAAC;YACf,SAAS,EAAE,CAAC;SACb,CAAC;IACJ,CAAC;IAED,MAAM,YAAY,GAAG,aAAa,CAAC,YAAY,CAAC;IAEhD,uDAAuD;IACvD,MAAM,eAAe,GACnB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,GAAG,yBAAyB,CAAC,CAAC;QAC3D,yBAAyB,CAAC;IAC5B,MAAM,GAAG,GAAG,cAAc,YAAY,IAAI,IAAI,CAAC,EAAE,IAAI,eAAe,EAAE,CAAC;IAEvE,8DAA8D;IAC9D,MAAM,YAAY,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC3C,IAAI,YAAY,KAAK,CAAC,EAAE,CAAC;QACvB,mEAAmE;QACnE,MAAM,KAAK,CAAC,MAAM,CAAC,GAAG,EAAE,yBAAyB,CAAC,CAAC;IACrD,CAAC;IAED,gEAAgE;IAChE,MAAM,cAAc,GAClB,cAAc,GAAG,UAAU,GAAG,yBAAyB,CAAC;IAE1D,IAAI,YAAY,GAAG,cAAc,EAAE,CAAC;QAClC,OAAO;YACL,WAAW,EAAE,IAAI;YACjB,YAAY;YACZ,SAAS,EAAE,cAAc;YACzB,MAAM,EAAE,GAAG;YACX,YAAY,EAAE,wBAAwB,YAAY,kBAAkB,cAAc,sFAAsF;YACxK,SAAS,EAAE,qBAAqB;SACjC,CAAC;IACJ,CAAC;IAED,OAAO;QACL,WAAW,EAAE,KAAK;QAClB,YAAY;QACZ,SAAS,EAAE,cAAc;KAC1B,CAAC;AACJ,CAAC"}
|
package/dist/cjs/index.js
CHANGED
@@ -1,12 +1,11 @@
|
|
1
1
|
"use strict";
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
-
exports.authorizeDomain = exports.authorizeBundleId = exports.
|
3
|
+
exports.authorizeDomain = exports.authorizeBundleId = exports.fetchTeamAndProject = void 0;
|
4
4
|
const tslib_1 = require("tslib");
|
5
5
|
// Exports the public service definitions.
|
6
6
|
tslib_1.__exportStar(require("./core/services.js"), exports);
|
7
7
|
var api_js_1 = require("./core/api.js");
|
8
8
|
Object.defineProperty(exports, "fetchTeamAndProject", { enumerable: true, get: function () { return api_js_1.fetchTeamAndProject; } });
|
9
|
-
Object.defineProperty(exports, "updateRateLimitedAt", { enumerable: true, get: function () { return api_js_1.updateRateLimitedAt; } });
|
10
9
|
var client_js_1 = require("./core/authorize/client.js");
|
11
10
|
Object.defineProperty(exports, "authorizeBundleId", { enumerable: true, get: function () { return client_js_1.authorizeBundleId; } });
|
12
11
|
Object.defineProperty(exports, "authorizeDomain", { enumerable: true, get: function () { return client_js_1.authorizeDomain; } });
|
package/dist/cjs/index.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;AAAA,0CAA0C;AAC1C,6DAAmC;AAWnC,
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;AAAA,0CAA0C;AAC1C,6DAAmC;AAWnC,wCAAoD;AAA3C,6GAAA,mBAAmB,OAAA;AAE5B,wDAGoC;AAFlC,8GAAA,iBAAiB,OAAA;AACjB,4GAAA,eAAe,OAAA"}
|
package/dist/esm/core/api.js
CHANGED
@@ -20,19 +20,4 @@ export async function fetchTeamAndProject(authData, config) {
|
|
20
20
|
throw new Error(`Error fetching key metadata from API: ${response.status} - ${text}`);
|
21
21
|
}
|
22
22
|
}
|
23
|
-
export async function updateRateLimitedAt(projectId, config) {
|
24
|
-
const { apiUrl, serviceScope: scope, serviceApiKey } = config;
|
25
|
-
const url = `${apiUrl}/usage/rateLimit`;
|
26
|
-
await fetch(url, {
|
27
|
-
method: "PUT",
|
28
|
-
headers: {
|
29
|
-
"x-service-api-key": serviceApiKey,
|
30
|
-
"content-type": "application/json",
|
31
|
-
},
|
32
|
-
body: JSON.stringify({
|
33
|
-
apiKeyId: projectId, // projectId is the apiKeyId
|
34
|
-
scope,
|
35
|
-
}),
|
36
|
-
});
|
37
|
-
}
|
38
23
|
//# sourceMappingURL=api.js.map
|
package/dist/esm/core/api.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../../src/core/api.ts"],"names":[],"mappings":"AA0IA,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,QAA4B,EAC5B,MAAyB;IAEzB,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,CAAC;IAEzC,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC;IACnC,MAAM,GAAG,GAAG,GAAG,MAAM,eAAe,QAAQ,CAAC,CAAC,CAAC,aAAa,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;IAC9E,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;QAChC,MAAM,EAAE,KAAK;QACb,OAAO,EAAE;YACP,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACrE,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,UAAU,QAAQ,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACpE,mBAAmB,EAAE,aAAa;YAClC,cAAc,EAAE,kBAAkB;SACnC;KACF,CAAC,CAAC;IAEH,IAAI,IAAI,GAAG,EAAE,CAAC;IACd,IAAI,CAAC;QACH,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QAC7B,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,KAAK,CACb,yCAAyC,QAAQ,CAAC,MAAM,MAAM,IAAI,EAAE,CACrE,CAAC;IACJ,CAAC;AACH,CAAC
|
1
|
+
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../../src/core/api.ts"],"names":[],"mappings":"AA0IA,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,QAA4B,EAC5B,MAAyB;IAEzB,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,CAAC;IAEzC,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC;IACnC,MAAM,GAAG,GAAG,GAAG,MAAM,eAAe,QAAQ,CAAC,CAAC,CAAC,aAAa,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;IAC9E,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;QAChC,MAAM,EAAE,KAAK;QACb,OAAO,EAAE;YACP,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACrE,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,UAAU,QAAQ,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACpE,mBAAmB,EAAE,aAAa;YAClC,cAAc,EAAE,kBAAkB;SACnC;KACF,CAAC,CAAC;IAEH,IAAI,IAAI,GAAG,EAAE,CAAC;IACd,IAAI,CAAC;QACH,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QAC7B,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,KAAK,CACb,yCAAyC,QAAQ,CAAC,MAAM,MAAM,IAAI,EAAE,CACrE,CAAC;IACJ,CAAC;AACH,CAAC"}
|
@@ -1,7 +1,6 @@
|
|
1
|
-
import { updateRateLimitedAt, } from "../api.js";
|
2
1
|
const RATE_LIMIT_WINDOW_SECONDS = 10;
|
3
2
|
export async function rateLimit(args) {
|
4
|
-
const {
|
3
|
+
const { team, limitPerSecond, serviceConfig, redis, sampleRate = 1.0 } = args;
|
5
4
|
const shouldSampleRequest = Math.random() < sampleRate;
|
6
5
|
if (!shouldSampleRequest) {
|
7
6
|
return {
|
@@ -22,7 +21,7 @@ export async function rateLimit(args) {
|
|
22
21
|
// Gets the 10-second window for the current timestamp.
|
23
22
|
const timestampWindow = Math.floor(Date.now() / (1000 * RATE_LIMIT_WINDOW_SECONDS)) *
|
24
23
|
RATE_LIMIT_WINDOW_SECONDS;
|
25
|
-
const key = `rate-limit:${serviceScope}:${
|
24
|
+
const key = `rate-limit:${serviceScope}:${team.id}:${timestampWindow}`;
|
26
25
|
// Increment and get the current request count in this window.
|
27
26
|
const requestCount = await redis.incr(key);
|
28
27
|
if (requestCount === 1) {
|
@@ -32,16 +31,6 @@ export async function rateLimit(args) {
|
|
32
31
|
// Get the limit for this window accounting for the sample rate.
|
33
32
|
const limitPerWindow = limitPerSecond * sampleRate * RATE_LIMIT_WINDOW_SECONDS;
|
34
33
|
if (requestCount > limitPerWindow) {
|
35
|
-
/**
|
36
|
-
* Report rate limit hits.
|
37
|
-
* Only track rate limit when its hit for the first time.
|
38
|
-
* Not waiting for tracking to complete as user doesn't need to wait.
|
39
|
-
*/
|
40
|
-
if (requestCount === limitPerWindow + 1 && project?.id) {
|
41
|
-
updateRateLimitedAt(project.id, serviceConfig).catch(() => {
|
42
|
-
// no-op
|
43
|
-
});
|
44
|
-
}
|
45
34
|
return {
|
46
35
|
rateLimited: true,
|
47
36
|
requestCount,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/rateLimit/index.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/rateLimit/index.ts"],"names":[],"mappings":"AAGA,MAAM,yBAAyB,GAAG,EAAE,CAAC;AAQrC,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,IAW/B;IACC,MAAM,EAAE,IAAI,EAAE,cAAc,EAAE,aAAa,EAAE,KAAK,EAAE,UAAU,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC;IAE9E,MAAM,mBAAmB,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,UAAU,CAAC;IACvD,IAAI,CAAC,mBAAmB,EAAE,CAAC;QACzB,OAAO;YACL,WAAW,EAAE,KAAK;YAClB,YAAY,EAAE,CAAC;YACf,SAAS,EAAE,CAAC;SACb,CAAC;IACJ,CAAC;IAED,IAAI,cAAc,KAAK,CAAC,EAAE,CAAC;QACzB,qEAAqE;QACrE,OAAO;YACL,WAAW,EAAE,KAAK;YAClB,YAAY,EAAE,CAAC;YACf,SAAS,EAAE,CAAC;SACb,CAAC;IACJ,CAAC;IAED,MAAM,YAAY,GAAG,aAAa,CAAC,YAAY,CAAC;IAEhD,uDAAuD;IACvD,MAAM,eAAe,GACnB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,GAAG,yBAAyB,CAAC,CAAC;QAC3D,yBAAyB,CAAC;IAC5B,MAAM,GAAG,GAAG,cAAc,YAAY,IAAI,IAAI,CAAC,EAAE,IAAI,eAAe,EAAE,CAAC;IAEvE,8DAA8D;IAC9D,MAAM,YAAY,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC3C,IAAI,YAAY,KAAK,CAAC,EAAE,CAAC;QACvB,mEAAmE;QACnE,MAAM,KAAK,CAAC,MAAM,CAAC,GAAG,EAAE,yBAAyB,CAAC,CAAC;IACrD,CAAC;IAED,gEAAgE;IAChE,MAAM,cAAc,GAClB,cAAc,GAAG,UAAU,GAAG,yBAAyB,CAAC;IAE1D,IAAI,YAAY,GAAG,cAAc,EAAE,CAAC;QAClC,OAAO;YACL,WAAW,EAAE,IAAI;YACjB,YAAY;YACZ,SAAS,EAAE,cAAc;YACzB,MAAM,EAAE,GAAG;YACX,YAAY,EAAE,wBAAwB,YAAY,kBAAkB,cAAc,sFAAsF;YACxK,SAAS,EAAE,qBAAqB;SACjC,CAAC;IACJ,CAAC;IAED,OAAO;QACL,WAAW,EAAE,KAAK;QAClB,YAAY;QACZ,SAAS,EAAE,cAAc;KAC1B,CAAC;AACJ,CAAC"}
|
package/dist/esm/index.js
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
// Exports the public service definitions.
|
2
2
|
export * from "./core/services.js";
|
3
|
-
export { fetchTeamAndProject
|
3
|
+
export { fetchTeamAndProject } from "./core/api.js";
|
4
4
|
export { authorizeBundleId, authorizeDomain, } from "./core/authorize/client.js";
|
5
5
|
//# sourceMappingURL=index.js.map
|
package/dist/esm/index.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,0CAA0C;AAC1C,cAAc,oBAAoB,CAAC;AAWnC,OAAO,EAAE,mBAAmB,EAAE,
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,0CAA0C;AAC1C,cAAc,oBAAoB,CAAC;AAWnC,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAEpD,OAAO,EACL,iBAAiB,EACjB,eAAe,GAChB,MAAM,4BAA4B,CAAC"}
|
package/dist/types/core/api.d.ts
CHANGED
@@ -117,6 +117,5 @@ type CustomAuthEndpointServiceSchema = {
|
|
117
117
|
}[];
|
118
118
|
};
|
119
119
|
export declare function fetchTeamAndProject(authData: AuthorizationInput, config: CoreServiceConfig): Promise<ApiResponse>;
|
120
|
-
export declare function updateRateLimitedAt(projectId: string, config: CoreServiceConfig): Promise<void>;
|
121
120
|
export {};
|
122
121
|
//# sourceMappingURL=api.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../src/core/api.ts"],"names":[],"mappings":"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
|
1
|
+
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../src/core/api.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAEjD,MAAM,MAAM,UAAU,GAAG;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,MAAM,EAAE,MAAM,CAAC;IAGf,YAAY,EAAE,WAAW,GAAG,IAAI,CAAC;IACjC,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACnC,UAAU,EAAE,WAAW,GAAG,gBAAgB,GAAG,KAAK,GAAG,QAAQ,CAAC;IAC9D,IAAI,EAAE,YAAY,CAAC;IACnB,OAAO,CAAC,EAAE,eAAe,GAAG,IAAI,CAAC;CAClC,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,EAAE,sBAAsB,GAAG,IAAI,CAAC;IACpC,KAAK,EAAE;QACL,IAAI,EAAE,MAAM,CAAC;QACb,UAAU,EAAE,MAAM,CAAC;QACnB,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,WAAW,EAAE,MAAM,GAAG,SAAS,GAAG,QAAQ,GAAG,KAAK,CAAC;IACnD,kBAAkB,EAAE,MAAM,CAAC;IAC3B,SAAS,EAAE,IAAI,CAAC;IAChB,SAAS,EAAE,IAAI,GAAG,IAAI,CAAC;IACvB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,aAAa,EAAE,WAAW,GAAG,cAAc,GAAG,gBAAgB,GAAG,IAAI,CAAC;IACtE,mBAAmB,EAAE,KAAK,CAAC;IAC3B,aAAa,EAAE,WAAW,EAAE,CAAC;CAC9B,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,IAAI,CAAC;IAChB,SAAS,EAAE,IAAI,GAAG,IAAI,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,QAAQ,EAAE,CACN;QACE,IAAI,EAAE,KAAK,CAAC;QACZ,OAAO,EAAE,KAAK,EAAE,CAAC;QACjB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;KAC9B,GACD;QACE,IAAI,EAAE,SAAS,CAAC;QAChB,OAAO,EAAE,CAAC,MAAM,GAAG,OAAO,CAAC,EAAE,CAAC;KAC/B,GACD;QACE,IAAI,EAAE,KAAK,CAAC;QACZ,OAAO,EAAE,KAAK,EAAE,CAAC;KAClB,GACD;QACE,IAAI,EAAE,SAAS,CAAC;QAChB,OAAO,EAAE,KAAK,EAAE,CAAC;KAClB,GACD;QACE,IAAI,EAAE,QAAQ,CAAC;QACf,OAAO,EAAE,KAAK,EAAE,CAAC;KAClB,GACD;QACE,IAAI,EAAE,SAAS,CAAC;QAChB,OAAO,EAAE,KAAK,EAAE,CAAC;QACjB,eAAe,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;QAClC,wBAAwB,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;QAC3C,cAAc,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;QACjC,cAAc,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;QACjC,aAAa,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;QAChC,MAAM,CAAC,EAAE;YACP,MAAM,CAAC,EAAE;gBACP,QAAQ,EAAE,MAAM,CAAC;gBACjB,YAAY,EAAE,KAAK,GAAG,QAAQ,CAAC;aAChC,GAAG,IAAI,CAAC;SACV,GAAG,IAAI,CAAC;QACT,cAAc,CAAC,EAAE;YACf,GAAG,EAAE,MAAM,CAAC;YACZ,OAAO,CAAC,EAAE;gBACR,GAAG,EAAE,MAAM,CAAC;gBACZ,KAAK,EAAE,MAAM,CAAC;aACf,EAAE,CAAC;SACL,GAAG,IAAI,CAAC;KACV,GACD;QACE,IAAI,EAAE,iBAAiB,CAAC;QACxB,OAAO,EAAE,KAAK,EAAE,CAAC;QACjB,YAAY,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;QAC/B,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAChC,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QACpC,uBAAuB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QACxC,oBAAoB,CAAC,EAAE,iCAAiC,GAAG,IAAI,CAAC;QAChE,kBAAkB,CAAC,EAAE,+BAA+B,GAAG,IAAI,CAAC;KAC7D,CACJ,EAAE,CAAC;IACJ,eAAe,EAAE,MAAM,EAAE,CAAC;CAC3B,CAAC;AAEF,KAAK,iCAAiC,GAAG;IACvC,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;CACb,CAAC;AAEF,KAAK,+BAA+B,GAAG;IACrC,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE;QACb,GAAG,EAAE,MAAM,CAAC;QACZ,KAAK,EAAE,MAAM,CAAC;KACf,EAAE,CAAC;CACL,CAAC;AAEF,wBAAsB,mBAAmB,CACvC,QAAQ,EAAE,kBAAkB,EAC5B,MAAM,EAAE,iBAAiB,GACxB,OAAO,CAAC,WAAW,CAAC,CAwBtB"}
|
@@ -1,11 +1,11 @@
|
|
1
|
-
import {
|
1
|
+
import type { CoreServiceConfig, TeamResponse } from "../api.js";
|
2
2
|
import type { RateLimitResult } from "./types.js";
|
3
3
|
type IRedis = {
|
4
4
|
incr: (key: string) => Promise<number>;
|
5
5
|
expire: (key: string, ttlSeconds: number) => Promise<0 | 1>;
|
6
6
|
};
|
7
7
|
export declare function rateLimit(args: {
|
8
|
-
|
8
|
+
team: TeamResponse;
|
9
9
|
limitPerSecond: number;
|
10
10
|
serviceConfig: CoreServiceConfig;
|
11
11
|
redis: IRedis;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/rateLimit/index.ts"],"names":[],"mappings":"AAAA,OAAO,
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/rateLimit/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACjE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAKlD,KAAK,MAAM,GAAG;IACZ,IAAI,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IACvC,MAAM,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,KAAK,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;CAC7D,CAAC;AAEF,wBAAsB,SAAS,CAAC,IAAI,EAAE;IACpC,IAAI,EAAE,YAAY,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,iBAAiB,CAAC;IACjC,KAAK,EAAE,MAAM,CAAC;IACd;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,GAAG,OAAO,CAAC,eAAe,CAAC,CAwD3B"}
|
@@ -107,7 +107,7 @@ export declare const usageEventSchema: z.ZodObject<{
|
|
107
107
|
tokenAddress?: string | undefined;
|
108
108
|
amountWei?: string | undefined;
|
109
109
|
amountUSDCents?: number | undefined;
|
110
|
-
httpMethod?: "GET" | "
|
110
|
+
httpMethod?: "GET" | "POST" | "PUT" | "DELETE" | "PATCH" | "HEAD" | "CONNECT" | "OPTIONS" | "TRACE" | undefined;
|
111
111
|
ecosystemId?: string | undefined;
|
112
112
|
ecosystemPartnerId?: string | undefined;
|
113
113
|
authenticationMethod?: string | undefined;
|
@@ -170,7 +170,7 @@ export declare const usageEventSchema: z.ZodObject<{
|
|
170
170
|
tokenAddress?: string | undefined;
|
171
171
|
amountWei?: string | undefined;
|
172
172
|
amountUSDCents?: number | undefined;
|
173
|
-
httpMethod?: "GET" | "
|
173
|
+
httpMethod?: "GET" | "POST" | "PUT" | "DELETE" | "PATCH" | "HEAD" | "CONNECT" | "OPTIONS" | "TRACE" | undefined;
|
174
174
|
ecosystemId?: string | undefined;
|
175
175
|
ecosystemPartnerId?: string | undefined;
|
176
176
|
authenticationMethod?: string | undefined;
|
package/dist/types/index.d.ts
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
export * from "./core/services.js";
|
2
2
|
export type { ApiResponse, CoreServiceConfig, PolicyResult, UserOpData, ProjectResponse, TeamAndProjectResponse, TeamResponse, } from "./core/api.js";
|
3
|
-
export { fetchTeamAndProject
|
3
|
+
export { fetchTeamAndProject } from "./core/api.js";
|
4
4
|
export { authorizeBundleId, authorizeDomain, } from "./core/authorize/client.js";
|
5
5
|
//# sourceMappingURL=index.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AACA,cAAc,oBAAoB,CAAC;AACnC,YAAY,EACV,WAAW,EACX,iBAAiB,EACjB,YAAY,EACZ,UAAU,EACV,eAAe,EACf,sBAAsB,EACtB,YAAY,GACb,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,mBAAmB,EAAE,
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AACA,cAAc,oBAAoB,CAAC;AACnC,YAAY,EACV,WAAW,EACX,iBAAiB,EACjB,YAAY,EACZ,UAAU,EACV,eAAe,EACf,sBAAsB,EACtB,YAAY,GACb,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAEpD,OAAO,EACL,iBAAiB,EACjB,eAAe,GAChB,MAAM,4BAA4B,CAAC"}
|