@frontmcp/auth 1.4.1 → 1.5.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/esm/index.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { createRequire as __frontmcpCreateRequire } from 'module';
|
|
2
|
-
const require = __frontmcpCreateRequire(import.meta.url);
|
|
2
|
+
const require = __frontmcpCreateRequire(import.meta.url || 'file:///');
|
|
3
3
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
4
|
var __require = /* @__PURE__ */ ((x) => typeof require !== "undefined" ? require : typeof Proxy !== "undefined" ? new Proxy(x, {
|
|
5
5
|
get: (a, b) => (typeof require !== "undefined" ? require : a)[b]
|
|
@@ -7,8 +7,13 @@ var __require = /* @__PURE__ */ ((x) => typeof require !== "undefined" ? require
|
|
|
7
7
|
if (typeof require !== "undefined") return require.apply(this, arguments);
|
|
8
8
|
throw Error('Dynamic require of "' + x + '" is not supported');
|
|
9
9
|
});
|
|
10
|
-
var __esm = (fn, res) => function __init() {
|
|
11
|
-
|
|
10
|
+
var __esm = (fn, res, err) => function __init() {
|
|
11
|
+
if (err) throw err[0];
|
|
12
|
+
try {
|
|
13
|
+
return fn && (res = (0, fn[__getOwnPropNames(fn)[0]])(fn = 0)), res;
|
|
14
|
+
} catch (e) {
|
|
15
|
+
throw err = [e], e;
|
|
16
|
+
}
|
|
12
17
|
};
|
|
13
18
|
|
|
14
19
|
// libs/auth/src/cimd/cimd.cache.ts
|
|
@@ -1507,6 +1512,8 @@ var RedisAuthorizationStore = class {
|
|
|
1507
1512
|
this.redis = redis;
|
|
1508
1513
|
this.namespace = namespace;
|
|
1509
1514
|
}
|
|
1515
|
+
redis;
|
|
1516
|
+
namespace;
|
|
1510
1517
|
key(type, id) {
|
|
1511
1518
|
return `${this.namespace}${type}:${id}`;
|
|
1512
1519
|
}
|
|
@@ -3134,15 +3141,22 @@ var SessionRateLimiter = class {
|
|
|
3134
3141
|
windowMs;
|
|
3135
3142
|
maxRequests;
|
|
3136
3143
|
requests = /* @__PURE__ */ new Map();
|
|
3144
|
+
cleanupIntervalMs;
|
|
3137
3145
|
cleanupTimer = null;
|
|
3138
3146
|
constructor(config = {}) {
|
|
3139
3147
|
this.windowMs = config.windowMs ?? 6e4;
|
|
3140
3148
|
this.maxRequests = config.maxRequests ?? 100;
|
|
3141
|
-
|
|
3142
|
-
|
|
3143
|
-
|
|
3144
|
-
|
|
3145
|
-
|
|
3149
|
+
this.cleanupIntervalMs = config.cleanupIntervalMs ?? 6e4;
|
|
3150
|
+
}
|
|
3151
|
+
/**
|
|
3152
|
+
* Start the periodic cleanup timer on first use (idempotent). Deferred out of
|
|
3153
|
+
* the constructor so constructing an instance at module scope has no side
|
|
3154
|
+
* effects — see the constructor note on V8-isolate global-scope restrictions.
|
|
3155
|
+
*/
|
|
3156
|
+
ensureCleanupTimer() {
|
|
3157
|
+
if (this.cleanupTimer || this.cleanupIntervalMs <= 0) return;
|
|
3158
|
+
this.cleanupTimer = setInterval(() => this.cleanup(), this.cleanupIntervalMs);
|
|
3159
|
+
if (typeof this.cleanupTimer.unref === "function") this.cleanupTimer.unref();
|
|
3146
3160
|
}
|
|
3147
3161
|
/**
|
|
3148
3162
|
* Check if a request is allowed for the given key.
|
|
@@ -3151,6 +3165,7 @@ var SessionRateLimiter = class {
|
|
|
3151
3165
|
* @returns Rate limit result with allowed status and metadata
|
|
3152
3166
|
*/
|
|
3153
3167
|
check(key) {
|
|
3168
|
+
this.ensureCleanupTimer();
|
|
3154
3169
|
const now = Date.now();
|
|
3155
3170
|
const windowStart = now - this.windowMs;
|
|
3156
3171
|
let timestamps = this.requests.get(key);
|
|
@@ -3263,6 +3278,7 @@ var TinyTtlCache = class {
|
|
|
3263
3278
|
constructor(ttlMs) {
|
|
3264
3279
|
this.ttlMs = ttlMs;
|
|
3265
3280
|
}
|
|
3281
|
+
ttlMs;
|
|
3266
3282
|
map = /* @__PURE__ */ new Map();
|
|
3267
3283
|
get(k) {
|
|
3268
3284
|
const hit = this.map.get(k);
|
|
@@ -5048,6 +5064,9 @@ var EncryptedRedisVault = class {
|
|
|
5048
5064
|
this.encryption = encryption;
|
|
5049
5065
|
this.namespace = namespace;
|
|
5050
5066
|
}
|
|
5067
|
+
redis;
|
|
5068
|
+
encryption;
|
|
5069
|
+
namespace;
|
|
5051
5070
|
/**
|
|
5052
5071
|
* Run a callback with encryption context set for the current async scope.
|
|
5053
5072
|
* This is the recommended way to set encryption context as it is safe for
|
|
@@ -6308,6 +6327,7 @@ var OrchestratedAuthAccessorAdapter = class {
|
|
|
6308
6327
|
constructor(authorization) {
|
|
6309
6328
|
this.authorization = authorization;
|
|
6310
6329
|
}
|
|
6330
|
+
authorization;
|
|
6311
6331
|
get primaryProviderId() {
|
|
6312
6332
|
return this.authorization.primaryProviderId;
|
|
6313
6333
|
}
|
|
@@ -6363,6 +6383,7 @@ var DcrClientRegistry = class {
|
|
|
6363
6383
|
this.redirectMatchers = config.allowedRedirectUris?.map(globToRegExp);
|
|
6364
6384
|
this.seedPreRegisteredClients();
|
|
6365
6385
|
}
|
|
6386
|
+
config;
|
|
6366
6387
|
clients = /* @__PURE__ */ new Map();
|
|
6367
6388
|
redirectMatchers;
|
|
6368
6389
|
/** Seed `dcr.clients` so the authorize/token flows accept them without DCR. */
|
|
@@ -8767,6 +8788,12 @@ var AuthProvidersAccessorImpl = class {
|
|
|
8767
8788
|
this.context = context;
|
|
8768
8789
|
this.logger = logger;
|
|
8769
8790
|
}
|
|
8791
|
+
registry;
|
|
8792
|
+
vault;
|
|
8793
|
+
cache;
|
|
8794
|
+
loader;
|
|
8795
|
+
context;
|
|
8796
|
+
logger;
|
|
8770
8797
|
async get(providerName, options) {
|
|
8771
8798
|
const config = this.registry.get(providerName);
|
|
8772
8799
|
if (!config) {
|
|
@@ -9126,6 +9153,9 @@ var AuthProvidersVault = class {
|
|
|
9126
9153
|
this.namespace = namespace;
|
|
9127
9154
|
this.logger = logger;
|
|
9128
9155
|
}
|
|
9156
|
+
baseVault;
|
|
9157
|
+
namespace;
|
|
9158
|
+
logger;
|
|
9129
9159
|
/**
|
|
9130
9160
|
* Store a credential in the vault
|
|
9131
9161
|
*
|
|
@@ -9324,6 +9354,9 @@ var EagerCredentialLoader = class {
|
|
|
9324
9354
|
this.cache = cache;
|
|
9325
9355
|
this.logger = logger;
|
|
9326
9356
|
}
|
|
9357
|
+
registry;
|
|
9358
|
+
cache;
|
|
9359
|
+
logger;
|
|
9327
9360
|
/**
|
|
9328
9361
|
* Load all eager credentials for a session.
|
|
9329
9362
|
* Called during session initialization.
|
|
@@ -9407,6 +9440,7 @@ var LazyCredentialLoader = class {
|
|
|
9407
9440
|
constructor(logger) {
|
|
9408
9441
|
this.logger = logger;
|
|
9409
9442
|
}
|
|
9443
|
+
logger;
|
|
9410
9444
|
/** In-flight loading promises for deduplication */
|
|
9411
9445
|
loading = /* @__PURE__ */ new Map();
|
|
9412
9446
|
/**
|
|
@@ -10059,6 +10093,8 @@ var AuthoritiesEngine = class {
|
|
|
10059
10093
|
this.profiles = profiles;
|
|
10060
10094
|
this.evaluators = evaluators;
|
|
10061
10095
|
}
|
|
10096
|
+
profiles;
|
|
10097
|
+
evaluators;
|
|
10062
10098
|
/**
|
|
10063
10099
|
* Evaluate an AuthoritiesMetadata value (string, string[], or policy object).
|
|
10064
10100
|
*/
|
|
@@ -10458,6 +10494,7 @@ var FetchCredentialMiddleware = class {
|
|
|
10458
10494
|
this.tokenAccessor = tokenAccessor;
|
|
10459
10495
|
this.appliers = new Map(Object.entries(appliers ?? {}));
|
|
10460
10496
|
}
|
|
10497
|
+
tokenAccessor;
|
|
10461
10498
|
appliers;
|
|
10462
10499
|
/**
|
|
10463
10500
|
* Inspect the `credentials` field. If it references a named provider,
|
package/esm/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@frontmcp/auth",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.5.0",
|
|
4
4
|
"description": "FrontMCP Auth - Authentication, session management, and credential vault",
|
|
5
5
|
"author": "AgentFront <info@agentfront.dev>",
|
|
6
6
|
"homepage": "https://docs.agentfront.dev",
|
|
@@ -47,8 +47,8 @@
|
|
|
47
47
|
"node": ">=24.0.0"
|
|
48
48
|
},
|
|
49
49
|
"peerDependencies": {
|
|
50
|
-
"@frontmcp/lazy-zod": "1.
|
|
51
|
-
"@frontmcp/storage-sqlite": "1.
|
|
50
|
+
"@frontmcp/lazy-zod": "1.5.0",
|
|
51
|
+
"@frontmcp/storage-sqlite": "1.5.0",
|
|
52
52
|
"@vercel/kv": "^3.0.0",
|
|
53
53
|
"ioredis": "^5.0.0"
|
|
54
54
|
},
|
|
@@ -64,8 +64,8 @@
|
|
|
64
64
|
}
|
|
65
65
|
},
|
|
66
66
|
"dependencies": {
|
|
67
|
-
"@frontmcp/di": "1.
|
|
68
|
-
"@frontmcp/utils": "1.
|
|
67
|
+
"@frontmcp/di": "1.5.0",
|
|
68
|
+
"@frontmcp/utils": "1.5.0",
|
|
69
69
|
"jose": "^6.0.0"
|
|
70
70
|
},
|
|
71
71
|
"devDependencies": {
|
package/index.js
CHANGED
|
@@ -3,8 +3,13 @@ var __defProp = Object.defineProperty;
|
|
|
3
3
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
4
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
5
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
-
var __esm = (fn, res) => function __init() {
|
|
7
|
-
|
|
6
|
+
var __esm = (fn, res, err) => function __init() {
|
|
7
|
+
if (err) throw err[0];
|
|
8
|
+
try {
|
|
9
|
+
return fn && (res = (0, fn[__getOwnPropNames(fn)[0]])(fn = 0)), res;
|
|
10
|
+
} catch (e) {
|
|
11
|
+
throw err = [e], e;
|
|
12
|
+
}
|
|
8
13
|
};
|
|
9
14
|
var __export = (target, all) => {
|
|
10
15
|
for (var name in all)
|
|
@@ -1822,6 +1827,8 @@ var RedisAuthorizationStore = class {
|
|
|
1822
1827
|
this.redis = redis;
|
|
1823
1828
|
this.namespace = namespace;
|
|
1824
1829
|
}
|
|
1830
|
+
redis;
|
|
1831
|
+
namespace;
|
|
1825
1832
|
key(type, id) {
|
|
1826
1833
|
return `${this.namespace}${type}:${id}`;
|
|
1827
1834
|
}
|
|
@@ -3429,15 +3436,22 @@ var SessionRateLimiter = class {
|
|
|
3429
3436
|
windowMs;
|
|
3430
3437
|
maxRequests;
|
|
3431
3438
|
requests = /* @__PURE__ */ new Map();
|
|
3439
|
+
cleanupIntervalMs;
|
|
3432
3440
|
cleanupTimer = null;
|
|
3433
3441
|
constructor(config = {}) {
|
|
3434
3442
|
this.windowMs = config.windowMs ?? 6e4;
|
|
3435
3443
|
this.maxRequests = config.maxRequests ?? 100;
|
|
3436
|
-
|
|
3437
|
-
|
|
3438
|
-
|
|
3439
|
-
|
|
3440
|
-
|
|
3444
|
+
this.cleanupIntervalMs = config.cleanupIntervalMs ?? 6e4;
|
|
3445
|
+
}
|
|
3446
|
+
/**
|
|
3447
|
+
* Start the periodic cleanup timer on first use (idempotent). Deferred out of
|
|
3448
|
+
* the constructor so constructing an instance at module scope has no side
|
|
3449
|
+
* effects — see the constructor note on V8-isolate global-scope restrictions.
|
|
3450
|
+
*/
|
|
3451
|
+
ensureCleanupTimer() {
|
|
3452
|
+
if (this.cleanupTimer || this.cleanupIntervalMs <= 0) return;
|
|
3453
|
+
this.cleanupTimer = setInterval(() => this.cleanup(), this.cleanupIntervalMs);
|
|
3454
|
+
if (typeof this.cleanupTimer.unref === "function") this.cleanupTimer.unref();
|
|
3441
3455
|
}
|
|
3442
3456
|
/**
|
|
3443
3457
|
* Check if a request is allowed for the given key.
|
|
@@ -3446,6 +3460,7 @@ var SessionRateLimiter = class {
|
|
|
3446
3460
|
* @returns Rate limit result with allowed status and metadata
|
|
3447
3461
|
*/
|
|
3448
3462
|
check(key) {
|
|
3463
|
+
this.ensureCleanupTimer();
|
|
3449
3464
|
const now = Date.now();
|
|
3450
3465
|
const windowStart = now - this.windowMs;
|
|
3451
3466
|
let timestamps = this.requests.get(key);
|
|
@@ -3558,6 +3573,7 @@ var TinyTtlCache = class {
|
|
|
3558
3573
|
constructor(ttlMs) {
|
|
3559
3574
|
this.ttlMs = ttlMs;
|
|
3560
3575
|
}
|
|
3576
|
+
ttlMs;
|
|
3561
3577
|
map = /* @__PURE__ */ new Map();
|
|
3562
3578
|
get(k) {
|
|
3563
3579
|
const hit = this.map.get(k);
|
|
@@ -5343,6 +5359,9 @@ var EncryptedRedisVault = class {
|
|
|
5343
5359
|
this.encryption = encryption;
|
|
5344
5360
|
this.namespace = namespace;
|
|
5345
5361
|
}
|
|
5362
|
+
redis;
|
|
5363
|
+
encryption;
|
|
5364
|
+
namespace;
|
|
5346
5365
|
/**
|
|
5347
5366
|
* Run a callback with encryption context set for the current async scope.
|
|
5348
5367
|
* This is the recommended way to set encryption context as it is safe for
|
|
@@ -6603,6 +6622,7 @@ var OrchestratedAuthAccessorAdapter = class {
|
|
|
6603
6622
|
constructor(authorization) {
|
|
6604
6623
|
this.authorization = authorization;
|
|
6605
6624
|
}
|
|
6625
|
+
authorization;
|
|
6606
6626
|
get primaryProviderId() {
|
|
6607
6627
|
return this.authorization.primaryProviderId;
|
|
6608
6628
|
}
|
|
@@ -6658,6 +6678,7 @@ var DcrClientRegistry = class {
|
|
|
6658
6678
|
this.redirectMatchers = config.allowedRedirectUris?.map(globToRegExp);
|
|
6659
6679
|
this.seedPreRegisteredClients();
|
|
6660
6680
|
}
|
|
6681
|
+
config;
|
|
6661
6682
|
clients = /* @__PURE__ */ new Map();
|
|
6662
6683
|
redirectMatchers;
|
|
6663
6684
|
/** Seed `dcr.clients` so the authorize/token flows accept them without DCR. */
|
|
@@ -9062,6 +9083,12 @@ var AuthProvidersAccessorImpl = class {
|
|
|
9062
9083
|
this.context = context;
|
|
9063
9084
|
this.logger = logger;
|
|
9064
9085
|
}
|
|
9086
|
+
registry;
|
|
9087
|
+
vault;
|
|
9088
|
+
cache;
|
|
9089
|
+
loader;
|
|
9090
|
+
context;
|
|
9091
|
+
logger;
|
|
9065
9092
|
async get(providerName, options) {
|
|
9066
9093
|
const config = this.registry.get(providerName);
|
|
9067
9094
|
if (!config) {
|
|
@@ -9421,6 +9448,9 @@ var AuthProvidersVault = class {
|
|
|
9421
9448
|
this.namespace = namespace;
|
|
9422
9449
|
this.logger = logger;
|
|
9423
9450
|
}
|
|
9451
|
+
baseVault;
|
|
9452
|
+
namespace;
|
|
9453
|
+
logger;
|
|
9424
9454
|
/**
|
|
9425
9455
|
* Store a credential in the vault
|
|
9426
9456
|
*
|
|
@@ -9619,6 +9649,9 @@ var EagerCredentialLoader = class {
|
|
|
9619
9649
|
this.cache = cache;
|
|
9620
9650
|
this.logger = logger;
|
|
9621
9651
|
}
|
|
9652
|
+
registry;
|
|
9653
|
+
cache;
|
|
9654
|
+
logger;
|
|
9622
9655
|
/**
|
|
9623
9656
|
* Load all eager credentials for a session.
|
|
9624
9657
|
* Called during session initialization.
|
|
@@ -9702,6 +9735,7 @@ var LazyCredentialLoader = class {
|
|
|
9702
9735
|
constructor(logger) {
|
|
9703
9736
|
this.logger = logger;
|
|
9704
9737
|
}
|
|
9738
|
+
logger;
|
|
9705
9739
|
/** In-flight loading promises for deduplication */
|
|
9706
9740
|
loading = /* @__PURE__ */ new Map();
|
|
9707
9741
|
/**
|
|
@@ -10354,6 +10388,8 @@ var AuthoritiesEngine = class {
|
|
|
10354
10388
|
this.profiles = profiles;
|
|
10355
10389
|
this.evaluators = evaluators;
|
|
10356
10390
|
}
|
|
10391
|
+
profiles;
|
|
10392
|
+
evaluators;
|
|
10357
10393
|
/**
|
|
10358
10394
|
* Evaluate an AuthoritiesMetadata value (string, string[], or policy object).
|
|
10359
10395
|
*/
|
|
@@ -10753,6 +10789,7 @@ var FetchCredentialMiddleware = class {
|
|
|
10753
10789
|
this.tokenAccessor = tokenAccessor;
|
|
10754
10790
|
this.appliers = new Map(Object.entries(appliers ?? {}));
|
|
10755
10791
|
}
|
|
10792
|
+
tokenAccessor;
|
|
10756
10793
|
appliers;
|
|
10757
10794
|
/**
|
|
10758
10795
|
* Inspect the `credentials` field. If it references a named provider,
|
|
@@ -14,7 +14,8 @@
|
|
|
14
14
|
*/
|
|
15
15
|
/**
|
|
16
16
|
* Get the current machine ID.
|
|
17
|
-
* Returns the override (if set via `setMachineIdOverride`) or the
|
|
17
|
+
* Returns the override (if set via `setMachineIdOverride`) or the lazily
|
|
18
|
+
* computed-and-memoized value.
|
|
18
19
|
*/
|
|
19
20
|
export declare function getMachineId(): string;
|
|
20
21
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"machine-id.d.ts","sourceRoot":"","sources":["../../src/machine-id/machine-id.ts"],"names":[],"mappings":"AACA;;;;;;;;;;;;;GAaG;
|
|
1
|
+
{"version":3,"file":"machine-id.d.ts","sourceRoot":"","sources":["../../src/machine-id/machine-id.ts"],"names":[],"mappings":"AACA;;;;;;;;;;;;;GAaG;AA8HH;;;;GAIG;AACH,wBAAgB,YAAY,IAAI,MAAM,CAMrC;AAED;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAEjE"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@frontmcp/auth",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.5.0",
|
|
4
4
|
"description": "FrontMCP Auth - Authentication, session management, and credential vault",
|
|
5
5
|
"author": "AgentFront <info@agentfront.dev>",
|
|
6
6
|
"homepage": "https://docs.agentfront.dev",
|
|
@@ -47,8 +47,8 @@
|
|
|
47
47
|
"node": ">=24.0.0"
|
|
48
48
|
},
|
|
49
49
|
"peerDependencies": {
|
|
50
|
-
"@frontmcp/lazy-zod": "1.
|
|
51
|
-
"@frontmcp/storage-sqlite": "1.
|
|
50
|
+
"@frontmcp/lazy-zod": "1.5.0",
|
|
51
|
+
"@frontmcp/storage-sqlite": "1.5.0",
|
|
52
52
|
"@vercel/kv": "^3.0.0",
|
|
53
53
|
"ioredis": "^5.0.0"
|
|
54
54
|
},
|
|
@@ -64,8 +64,8 @@
|
|
|
64
64
|
}
|
|
65
65
|
},
|
|
66
66
|
"dependencies": {
|
|
67
|
-
"@frontmcp/di": "1.
|
|
68
|
-
"@frontmcp/utils": "1.
|
|
67
|
+
"@frontmcp/di": "1.5.0",
|
|
68
|
+
"@frontmcp/utils": "1.5.0",
|
|
69
69
|
"jose": "^6.0.0"
|
|
70
70
|
},
|
|
71
71
|
"devDependencies": {
|
|
@@ -55,8 +55,15 @@ export declare class SessionRateLimiter {
|
|
|
55
55
|
private readonly windowMs;
|
|
56
56
|
private readonly maxRequests;
|
|
57
57
|
private readonly requests;
|
|
58
|
+
private readonly cleanupIntervalMs;
|
|
58
59
|
private cleanupTimer;
|
|
59
60
|
constructor(config?: SessionRateLimiterConfig);
|
|
61
|
+
/**
|
|
62
|
+
* Start the periodic cleanup timer on first use (idempotent). Deferred out of
|
|
63
|
+
* the constructor so constructing an instance at module scope has no side
|
|
64
|
+
* effects — see the constructor note on V8-isolate global-scope restrictions.
|
|
65
|
+
*/
|
|
66
|
+
private ensureCleanupTimer;
|
|
60
67
|
/**
|
|
61
68
|
* Check if a request is allowed for the given key.
|
|
62
69
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-rate-limiter.d.ts","sourceRoot":"","sources":["../../src/session/session-rate-limiter.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,MAAM,WAAW,wBAAwB;IACvC;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,eAAe;IAC9B,qCAAqC;IACrC,OAAO,EAAE,OAAO,CAAC;IACjB,yDAAyD;IACzD,SAAS,EAAE,MAAM,CAAC;IAClB,sDAAsD;IACtD,OAAO,EAAE,MAAM,CAAC;IAChB,0DAA0D;IAC1D,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAS;IACrC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAoC;IAC7D,OAAO,CAAC,YAAY,CAA+B;gBAEvC,MAAM,GAAE,wBAA6B;
|
|
1
|
+
{"version":3,"file":"session-rate-limiter.d.ts","sourceRoot":"","sources":["../../src/session/session-rate-limiter.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,MAAM,WAAW,wBAAwB;IACvC;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,eAAe;IAC9B,qCAAqC;IACrC,OAAO,EAAE,OAAO,CAAC;IACjB,yDAAyD;IACzD,SAAS,EAAE,MAAM,CAAC;IAClB,sDAAsD;IACtD,OAAO,EAAE,MAAM,CAAC;IAChB,0DAA0D;IAC1D,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAS;IACrC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAoC;IAC7D,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAS;IAC3C,OAAO,CAAC,YAAY,CAA+B;gBAEvC,MAAM,GAAE,wBAA6B;IAUjD;;;;OAIG;IACH,OAAO,CAAC,kBAAkB;IAO1B;;;;;OAKG;IACH,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,eAAe;IAwCnC;;;;;;OAMG;IACH,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAWhC;;;;;OAKG;IACH,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAIxB;;;OAGG;IACH,OAAO,IAAI,IAAI;IAcf;;OAEG;IACH,QAAQ,IAAI;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,MAAM,CAAA;KAAE;IAWxD;;;OAGG;IACH,OAAO,IAAI,IAAI;CAOhB;AAED;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,yBAAyB,oBAA2B,CAAC"}
|