@chatcops/server 0.6.0 → 1.0.0-rc.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/README.md +15 -19
- package/dist/adapters/ai-sdk.js +1 -1
- package/dist/adapters/ai-sdk.js.map +1 -1
- package/dist/adapters/cloudflare.js +1 -1
- package/dist/adapters/cloudflare.js.map +1 -1
- package/dist/adapters/express.d.ts.map +1 -1
- package/dist/adapters/express.js +6 -5
- package/dist/adapters/express.js.map +1 -1
- package/dist/adapters/vercel.js +1 -1
- package/dist/adapters/vercel.js.map +1 -1
- package/dist/client-ip.d.ts +5 -4
- package/dist/client-ip.d.ts.map +1 -1
- package/dist/client-ip.js +9 -14
- package/dist/client-ip.js.map +1 -1
- package/dist/config.d.ts +33 -17
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +10 -0
- package/dist/config.js.map +1 -1
- package/dist/examples/cloudflare-worker.d.ts.map +1 -1
- package/dist/examples/cloudflare-worker.js +4 -2
- package/dist/examples/cloudflare-worker.js.map +1 -1
- package/dist/examples/express-server.js +3 -1
- package/dist/examples/express-server.js.map +1 -1
- package/dist/examples/vercel-api.d.ts.map +1 -1
- package/dist/examples/vercel-api.js +3 -1
- package/dist/examples/vercel-api.js.map +1 -1
- package/dist/handler.d.ts +2 -0
- package/dist/handler.d.ts.map +1 -1
- package/dist/handler.js +64 -37
- package/dist/handler.js.map +1 -1
- package/dist/http.d.ts +4 -1
- package/dist/http.d.ts.map +1 -1
- package/dist/http.js +6 -6
- package/dist/http.js.map +1 -1
- package/dist/index.d.ts +1 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +0 -1
- package/dist/index.js.map +1 -1
- package/dist/knowledge.d.ts +18 -0
- package/dist/knowledge.d.ts.map +1 -0
- package/dist/knowledge.js +32 -0
- package/dist/knowledge.js.map +1 -0
- package/dist/removed-options.d.ts +7 -0
- package/dist/removed-options.d.ts.map +1 -0
- package/dist/removed-options.js +21 -0
- package/dist/removed-options.js.map +1 -0
- package/dist/security/origin-policy.d.ts +3 -5
- package/dist/security/origin-policy.d.ts.map +1 -1
- package/dist/security/origin-policy.js +6 -17
- package/dist/security/origin-policy.js.map +1 -1
- package/dist/security/sessions.d.ts +26 -3
- package/dist/security/sessions.d.ts.map +1 -1
- package/dist/security/sessions.js +69 -11
- package/dist/security/sessions.js.map +1 -1
- package/dist/security/startup-checks.d.ts +2 -1
- package/dist/security/startup-checks.d.ts.map +1 -1
- package/dist/security/startup-checks.js +6 -16
- package/dist/security/startup-checks.js.map +1 -1
- package/dist/visitor-context.d.ts.map +1 -1
- package/dist/visitor-context.js +6 -0
- package/dist/visitor-context.js.map +1 -1
- package/dist/webhook.d.ts +4 -10
- package/dist/webhook.d.ts.map +1 -1
- package/dist/webhook.js +6 -6
- package/dist/webhook.js.map +1 -1
- package/package.json +2 -2
- package/dist/rate-limit.d.ts +0 -20
- package/dist/rate-limit.d.ts.map +0 -1
- package/dist/rate-limit.js +0 -45
- package/dist/rate-limit.js.map +0 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@chatcops/server",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "1.0.0-rc.0",
|
|
4
4
|
"description": "Server-side handler and adapters for ChatCops",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"chatcops",
|
|
@@ -40,7 +40,7 @@
|
|
|
40
40
|
],
|
|
41
41
|
"dependencies": {
|
|
42
42
|
"zod": "^3.24.0",
|
|
43
|
-
"@chatcops/core": "0.
|
|
43
|
+
"@chatcops/core": "1.0.0-rc.0"
|
|
44
44
|
},
|
|
45
45
|
"peerDependencies": {
|
|
46
46
|
"express": "^4.0.0 || ^5.0.0"
|
package/dist/rate-limit.d.ts
DELETED
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
export interface RateLimitConfig {
|
|
2
|
-
maxRequests: number;
|
|
3
|
-
windowMs: number;
|
|
4
|
-
}
|
|
5
|
-
/**
|
|
6
|
-
* @deprecated The server now limits with `createRateLimiter` from
|
|
7
|
-
* `@chatcops/core`, on the storage's counters, so limits hold across
|
|
8
|
-
* instances. This in-process limiter is kept for code that uses it directly.
|
|
9
|
-
*/
|
|
10
|
-
export declare class RateLimiter {
|
|
11
|
-
private store;
|
|
12
|
-
private config;
|
|
13
|
-
constructor(config?: Partial<RateLimitConfig>);
|
|
14
|
-
check(key: string): {
|
|
15
|
-
allowed: boolean;
|
|
16
|
-
retryAfter?: number;
|
|
17
|
-
};
|
|
18
|
-
cleanup(): void;
|
|
19
|
-
}
|
|
20
|
-
//# sourceMappingURL=rate-limit.d.ts.map
|
package/dist/rate-limit.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"rate-limit.d.ts","sourceRoot":"","sources":["../src/rate-limit.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,eAAe;IAC9B,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAOD;;;;GAIG;AACH,qBAAa,WAAW;IACtB,OAAO,CAAC,KAAK,CAAqC;IAClD,OAAO,CAAC,MAAM,CAAkB;gBAEpB,MAAM,CAAC,EAAE,OAAO,CAAC,eAAe,CAAC;IAU7C,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE;IAkB7D,OAAO,IAAI,IAAI;CAQhB"}
|
package/dist/rate-limit.js
DELETED
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
const DEFAULT_CONFIG = {
|
|
2
|
-
maxRequests: 30,
|
|
3
|
-
windowMs: 60_000,
|
|
4
|
-
};
|
|
5
|
-
/**
|
|
6
|
-
* @deprecated The server now limits with `createRateLimiter` from
|
|
7
|
-
* `@chatcops/core`, on the storage's counters, so limits hold across
|
|
8
|
-
* instances. This in-process limiter is kept for code that uses it directly.
|
|
9
|
-
*/
|
|
10
|
-
export class RateLimiter {
|
|
11
|
-
store = new Map();
|
|
12
|
-
config;
|
|
13
|
-
constructor(config) {
|
|
14
|
-
this.config = { ...DEFAULT_CONFIG, ...config };
|
|
15
|
-
if (this.config.maxRequests <= 0) {
|
|
16
|
-
throw new Error('maxRequests must be greater than 0');
|
|
17
|
-
}
|
|
18
|
-
if (this.config.windowMs <= 0) {
|
|
19
|
-
throw new Error('windowMs must be greater than 0');
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
check(key) {
|
|
23
|
-
const now = Date.now();
|
|
24
|
-
const entry = this.store.get(key);
|
|
25
|
-
if (!entry || now >= entry.resetAt) {
|
|
26
|
-
this.store.set(key, { count: 1, resetAt: now + this.config.windowMs });
|
|
27
|
-
return { allowed: true };
|
|
28
|
-
}
|
|
29
|
-
if (entry.count >= this.config.maxRequests) {
|
|
30
|
-
const retryAfter = Math.ceil((entry.resetAt - now) / 1000);
|
|
31
|
-
return { allowed: false, retryAfter };
|
|
32
|
-
}
|
|
33
|
-
entry.count++;
|
|
34
|
-
return { allowed: true };
|
|
35
|
-
}
|
|
36
|
-
cleanup() {
|
|
37
|
-
const now = Date.now();
|
|
38
|
-
for (const [key, entry] of this.store) {
|
|
39
|
-
if (now >= entry.resetAt) {
|
|
40
|
-
this.store.delete(key);
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
//# sourceMappingURL=rate-limit.js.map
|
package/dist/rate-limit.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"rate-limit.js","sourceRoot":"","sources":["../src/rate-limit.ts"],"names":[],"mappings":"AAUA,MAAM,cAAc,GAAoB;IACtC,WAAW,EAAE,EAAE;IACf,QAAQ,EAAE,MAAM;CACjB,CAAC;AAEF;;;;GAIG;AACH,MAAM,OAAO,WAAW;IACd,KAAK,GAAG,IAAI,GAAG,EAA0B,CAAC;IAC1C,MAAM,CAAkB;IAEhC,YAAY,MAAiC;QAC3C,IAAI,CAAC,MAAM,GAAG,EAAE,GAAG,cAAc,EAAE,GAAG,MAAM,EAAE,CAAC;QAC/C,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,IAAI,CAAC,EAAE,CAAC;YACjC,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;QACxD,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI,CAAC,EAAE,CAAC;YAC9B,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;QACrD,CAAC;IACH,CAAC;IAED,KAAK,CAAC,GAAW;QACf,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAElC,IAAI,CAAC,KAAK,IAAI,GAAG,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;YACnC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;YACvE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QAC3B,CAAC;QAED,IAAI,KAAK,CAAC,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;YAC3C,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,OAAO,GAAG,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;YAC3D,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC;QACxC,CAAC;QAED,KAAK,CAAC,KAAK,EAAE,CAAC;QACd,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC3B,CAAC;IAED,OAAO;QACL,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACtC,IAAI,GAAG,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;gBACzB,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACzB,CAAC;QACH,CAAC;IACH,CAAC;CACF"}
|