mcp-use 1.11.0-canary.3 → 1.11.0-canary.5
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/.tsbuildinfo +1 -1
- package/dist/{chunk-FDWI2WVM.js → chunk-454ZT2R7.js} +15 -91
- package/dist/{chunk-BONN23WU.js → chunk-52OY3IIW.js} +2 -2
- package/dist/chunk-6RVQ5RGR.js +12 -0
- package/dist/chunk-BAFXO6MT.js +101 -0
- package/dist/{chunk-TZ7SHSRY.js → chunk-FONZ4CWK.js} +1 -1
- package/dist/{chunk-WFPXUU4A.js → chunk-FQJ6Z3U6.js} +1 -1
- package/dist/{chunk-YIZWQ5PM.js → chunk-JRFJXT2T.js} +1 -1
- package/dist/{chunk-DKLRVWPJ.js → chunk-WK34REFK.js} +3 -8
- package/dist/{chunk-KZL3RCT6.js → chunk-ZP4QTLQC.js} +1419 -88
- package/dist/index.cjs +4745 -4443
- package/dist/index.js +26 -1035
- package/dist/src/agents/index.cjs +2881 -157
- package/dist/src/agents/index.d.ts +2 -0
- package/dist/src/agents/index.d.ts.map +1 -1
- package/dist/src/agents/index.js +6 -4
- package/dist/src/agents/mcp_agent.d.ts +59 -37
- package/dist/src/agents/mcp_agent.d.ts.map +1 -1
- package/dist/src/agents/remote.d.ts +25 -0
- package/dist/src/agents/remote.d.ts.map +1 -1
- package/dist/src/agents/types.d.ts +76 -0
- package/dist/src/agents/types.d.ts.map +1 -1
- package/dist/src/agents/utils/index.d.ts +1 -0
- package/dist/src/agents/utils/index.d.ts.map +1 -1
- package/dist/src/agents/utils/llm_provider.d.ts +53 -0
- package/dist/src/agents/utils/llm_provider.d.ts.map +1 -0
- package/dist/src/browser.cjs +1632 -201
- package/dist/src/browser.js +18 -7
- package/dist/src/client/base.d.ts +1 -0
- package/dist/src/client/base.d.ts.map +1 -1
- package/dist/src/client/prompts.js +4 -3
- package/dist/src/react/index.cjs +12 -3
- package/dist/src/react/index.js +5 -4
- package/dist/src/server/endpoints/mount-mcp.d.ts.map +1 -1
- package/dist/src/server/index.cjs +91 -64
- package/dist/src/server/index.js +93 -66
- package/dist/src/server/mcp-server.d.ts.map +1 -1
- package/dist/src/server/types/common.d.ts +26 -0
- package/dist/src/server/types/common.d.ts.map +1 -1
- package/dist/src/session.d.ts +2 -2
- package/dist/src/session.d.ts.map +1 -1
- package/dist/src/version.d.ts +1 -1
- package/dist/{tool-execution-helpers-HNASWGXY.js → tool-execution-helpers-3RAOCSJ4.js} +2 -2
- package/package.json +5 -4
- /package/dist/{chunk-EW4MJSHA.js → chunk-H4BZVTGK.js} +0 -0
package/dist/src/browser.js
CHANGED
|
@@ -2,34 +2,41 @@ import {
|
|
|
2
2
|
createReadableStreamFromGenerator,
|
|
3
3
|
streamEventsToAISDK,
|
|
4
4
|
streamEventsToAISDKWithTools
|
|
5
|
-
} from "../chunk-
|
|
5
|
+
} from "../chunk-H4BZVTGK.js";
|
|
6
6
|
import {
|
|
7
7
|
BaseAdapter,
|
|
8
8
|
LangChainAdapter,
|
|
9
9
|
MCPAgent,
|
|
10
10
|
ObservabilityManager,
|
|
11
|
-
RemoteAgent
|
|
12
|
-
|
|
11
|
+
RemoteAgent,
|
|
12
|
+
createLLMFromString,
|
|
13
|
+
getSupportedProviders,
|
|
14
|
+
isValidLLMString,
|
|
15
|
+
parseLLMString
|
|
16
|
+
} from "../chunk-ZP4QTLQC.js";
|
|
13
17
|
import "../chunk-JRGQRPTN.js";
|
|
18
|
+
import "../chunk-WK34REFK.js";
|
|
19
|
+
import {
|
|
20
|
+
BrowserMCPClient
|
|
21
|
+
} from "../chunk-BAFXO6MT.js";
|
|
14
22
|
import {
|
|
15
|
-
BrowserMCPClient,
|
|
16
23
|
HttpConnector,
|
|
17
24
|
MCPSession
|
|
18
|
-
} from "../chunk-
|
|
25
|
+
} from "../chunk-454ZT2R7.js";
|
|
19
26
|
import {
|
|
20
27
|
BrowserOAuthClientProvider,
|
|
21
28
|
onMcpAuthorization
|
|
22
29
|
} from "../chunk-J75I2C26.js";
|
|
23
30
|
import {
|
|
24
31
|
BaseConnector
|
|
25
|
-
} from "../chunk-
|
|
32
|
+
} from "../chunk-JRFJXT2T.js";
|
|
26
33
|
import {
|
|
27
34
|
Tel,
|
|
28
35
|
Telemetry,
|
|
29
36
|
VERSION,
|
|
30
37
|
getPackageVersion,
|
|
31
38
|
setTelemetrySource
|
|
32
|
-
} from "../chunk-
|
|
39
|
+
} from "../chunk-FONZ4CWK.js";
|
|
33
40
|
import {
|
|
34
41
|
Logger,
|
|
35
42
|
logger
|
|
@@ -51,10 +58,14 @@ export {
|
|
|
51
58
|
Tel,
|
|
52
59
|
Telemetry,
|
|
53
60
|
VERSION,
|
|
61
|
+
createLLMFromString,
|
|
54
62
|
createReadableStreamFromGenerator,
|
|
55
63
|
getPackageVersion,
|
|
64
|
+
getSupportedProviders,
|
|
65
|
+
isValidLLMString,
|
|
56
66
|
logger,
|
|
57
67
|
onMcpAuthorization,
|
|
68
|
+
parseLLMString,
|
|
58
69
|
setTelemetrySource as setBrowserTelemetrySource,
|
|
59
70
|
setTelemetrySource,
|
|
60
71
|
streamEventsToAISDK,
|
|
@@ -25,6 +25,7 @@ export declare abstract class BaseMCPClient {
|
|
|
25
25
|
createSession(serverName: string, autoInitialize?: boolean): Promise<MCPSession>;
|
|
26
26
|
createAllSessions(autoInitialize?: boolean): Promise<Record<string, MCPSession>>;
|
|
27
27
|
getSession(serverName: string): MCPSession | null;
|
|
28
|
+
requireSession(serverName: string): MCPSession;
|
|
28
29
|
getAllActiveSessions(): Record<string, MCPSession>;
|
|
29
30
|
closeSession(serverName: string): Promise<void>;
|
|
30
31
|
closeAllSessions(): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../src/client/base.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAE3D,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAG3C;;;;;GAKG;AACH,8BAAsB,aAAa;IACjC,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAM;IAC3C,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAM;IAC7C,cAAc,EAAE,MAAM,EAAE,CAAM;gBAEzB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;WAM1B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,aAAa;IAKzD,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI;IAMhE,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAQhC,cAAc,IAAI,MAAM,EAAE;IAI1B,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAIlD,SAAS,IAAI,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAIvC;;;OAGG;IACH,SAAS,CAAC,QAAQ,CAAC,yBAAyB,CAC1C,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAChC,aAAa;IAEH,aAAa,CACxB,UAAU,EAAE,MAAM,EAClB,cAAc,UAAO,GACpB,OAAO,CAAC,UAAU,CAAC;IAyBT,iBAAiB,CAC5B,cAAc,UAAO,GACpB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IAc/B,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI;IAQjD,oBAAoB,IAAI,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC;IAM5C,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAmB/C,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC;CAqB/C"}
|
|
1
|
+
{"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../src/client/base.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAE3D,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAG3C;;;;;GAKG;AACH,8BAAsB,aAAa;IACjC,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAM;IAC3C,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAM;IAC7C,cAAc,EAAE,MAAM,EAAE,CAAM;gBAEzB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;WAM1B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,aAAa;IAKzD,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI;IAMhE,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAQhC,cAAc,IAAI,MAAM,EAAE;IAI1B,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAIlD,SAAS,IAAI,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAIvC;;;OAGG;IACH,SAAS,CAAC,QAAQ,CAAC,yBAAyB,CAC1C,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAChC,aAAa;IAEH,aAAa,CACxB,UAAU,EAAE,MAAM,EAClB,cAAc,UAAO,GACpB,OAAO,CAAC,UAAU,CAAC;IAyBT,iBAAiB,CAC5B,cAAc,UAAO,GACpB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IAc/B,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI;IAQjD,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,UAAU;IAU9C,oBAAoB,IAAI,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC;IAM5C,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAmB/C,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC;CAqB/C"}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import {
|
|
2
2
|
PROMPTS
|
|
3
|
-
} from "../../chunk-
|
|
4
|
-
import "../../chunk-
|
|
5
|
-
import "../../chunk-
|
|
3
|
+
} from "../../chunk-6RVQ5RGR.js";
|
|
4
|
+
import "../../chunk-WK34REFK.js";
|
|
5
|
+
import "../../chunk-JRFJXT2T.js";
|
|
6
|
+
import "../../chunk-FONZ4CWK.js";
|
|
6
7
|
import "../../chunk-FRUZDWXH.js";
|
|
7
8
|
import "../../chunk-3GQAWCBQ.js";
|
|
8
9
|
export {
|
package/dist/src/react/index.cjs
CHANGED
|
@@ -876,7 +876,7 @@ function generateUUID() {
|
|
|
876
876
|
__name(generateUUID, "generateUUID");
|
|
877
877
|
|
|
878
878
|
// src/version.ts
|
|
879
|
-
var VERSION = "1.11.0-canary.
|
|
879
|
+
var VERSION = "1.11.0-canary.5";
|
|
880
880
|
function getPackageVersion() {
|
|
881
881
|
return VERSION;
|
|
882
882
|
}
|
|
@@ -2384,7 +2384,7 @@ var MCPSession = class {
|
|
|
2384
2384
|
* Call a tool on the server.
|
|
2385
2385
|
*
|
|
2386
2386
|
* @param name - Name of the tool to call
|
|
2387
|
-
* @param args - Arguments to pass to the tool
|
|
2387
|
+
* @param args - Arguments to pass to the tool (defaults to empty object)
|
|
2388
2388
|
* @param options - Optional request options (timeout, progress handlers, etc.)
|
|
2389
2389
|
* @returns Result from the tool execution
|
|
2390
2390
|
*
|
|
@@ -2394,7 +2394,7 @@ var MCPSession = class {
|
|
|
2394
2394
|
* console.log(`Result: ${result.content[0].text}`);
|
|
2395
2395
|
* ```
|
|
2396
2396
|
*/
|
|
2397
|
-
async callTool(name, args, options) {
|
|
2397
|
+
async callTool(name, args = {}, options) {
|
|
2398
2398
|
return this.connector.callTool(name, args, options);
|
|
2399
2399
|
}
|
|
2400
2400
|
/**
|
|
@@ -2609,6 +2609,15 @@ var BaseMCPClient = class {
|
|
|
2609
2609
|
}
|
|
2610
2610
|
return session;
|
|
2611
2611
|
}
|
|
2612
|
+
requireSession(serverName) {
|
|
2613
|
+
const session = this.sessions[serverName];
|
|
2614
|
+
if (!session) {
|
|
2615
|
+
throw new Error(
|
|
2616
|
+
`Session '${serverName}' not found. Available sessions: ${this.activeSessions.join(", ") || "none"}`
|
|
2617
|
+
);
|
|
2618
|
+
}
|
|
2619
|
+
return session;
|
|
2620
|
+
}
|
|
2612
2621
|
getAllActiveSessions() {
|
|
2613
2622
|
return Object.fromEntries(
|
|
2614
2623
|
this.activeSessions.map((n) => [n, this.sessions[n]])
|
package/dist/src/react/index.js
CHANGED
|
@@ -9,17 +9,18 @@ import {
|
|
|
9
9
|
useWidgetProps,
|
|
10
10
|
useWidgetState,
|
|
11
11
|
useWidgetTheme
|
|
12
|
-
} from "../../chunk-
|
|
13
|
-
import "../../chunk-
|
|
12
|
+
} from "../../chunk-52OY3IIW.js";
|
|
13
|
+
import "../../chunk-BAFXO6MT.js";
|
|
14
|
+
import "../../chunk-454ZT2R7.js";
|
|
14
15
|
import {
|
|
15
16
|
onMcpAuthorization
|
|
16
17
|
} from "../../chunk-J75I2C26.js";
|
|
17
|
-
import "../../chunk-
|
|
18
|
+
import "../../chunk-JRFJXT2T.js";
|
|
18
19
|
import {
|
|
19
20
|
Tel,
|
|
20
21
|
Telemetry,
|
|
21
22
|
setTelemetrySource
|
|
22
|
-
} from "../../chunk-
|
|
23
|
+
} from "../../chunk-FONZ4CWK.js";
|
|
23
24
|
import "../../chunk-FRUZDWXH.js";
|
|
24
25
|
import "../../chunk-3GQAWCBQ.js";
|
|
25
26
|
export {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mount-mcp.d.ts","sourceRoot":"","sources":["../../../../src/server/endpoints/mount-mcp.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAW,IAAI,IAAI,QAAQ,EAAE,MAAM,MAAM,CAAC;AACtD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAExD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAItD;;;;;GAKG;AACH,wBAAsB,QAAQ,CAC5B,GAAG,EAAE,QAAQ,EACb,iBAAiB,EAAE;IACjB,mBAAmB,EAAE,MAAM,OAAO,iDAAiD,EAAE,SAAS,CAAC;IAC/F,2BAA2B,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;CAC3D,EAAE,2DAA2D;AAC9D,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,EAClC,MAAM,EAAE,YAAY,EACpB,gBAAgB,EAAE,OAAO,GACxB,OAAO,CAAC;IAAE,UAAU,EAAE,OAAO,CAAC;IAAC,mBAAmB,CAAC,EAAE,MAAM,CAAC,OAAO,CAAA;CAAE,CAAC,
|
|
1
|
+
{"version":3,"file":"mount-mcp.d.ts","sourceRoot":"","sources":["../../../../src/server/endpoints/mount-mcp.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAW,IAAI,IAAI,QAAQ,EAAE,MAAM,MAAM,CAAC;AACtD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAExD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAItD;;;;;GAKG;AACH,wBAAsB,QAAQ,CAC5B,GAAG,EAAE,QAAQ,EACb,iBAAiB,EAAE;IACjB,mBAAmB,EAAE,MAAM,OAAO,iDAAiD,EAAE,SAAS,CAAC;IAC/F,2BAA2B,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;CAC3D,EAAE,2DAA2D;AAC9D,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,EAClC,MAAM,EAAE,YAAY,EACpB,gBAAgB,EAAE,OAAO,GACxB,OAAO,CAAC;IAAE,UAAU,EAAE,OAAO,CAAC;IAAC,mBAAmB,CAAC,EAAE,MAAM,CAAC,OAAO,CAAA;CAAE,CAAC,CA4IxE"}
|
|
@@ -761,7 +761,7 @@ var VERSION;
|
|
|
761
761
|
var init_version = __esm({
|
|
762
762
|
"src/version.ts"() {
|
|
763
763
|
"use strict";
|
|
764
|
-
VERSION = "1.11.0-canary.
|
|
764
|
+
VERSION = "1.11.0-canary.5";
|
|
765
765
|
__name(getPackageVersion, "getPackageVersion");
|
|
766
766
|
}
|
|
767
767
|
});
|
|
@@ -4678,7 +4678,7 @@ async function mountMcp(app, mcpServerInstance, sessions, config, isProductionMo
|
|
|
4678
4678
|
const idleTimeoutMs = config.sessionIdleTimeoutMs ?? 3e5;
|
|
4679
4679
|
const transports = /* @__PURE__ */ new Map();
|
|
4680
4680
|
let idleCleanupInterval;
|
|
4681
|
-
if (idleTimeoutMs > 0) {
|
|
4681
|
+
if (!config.stateless && idleTimeoutMs > 0) {
|
|
4682
4682
|
idleCleanupInterval = startIdleCleanup(
|
|
4683
4683
|
sessions,
|
|
4684
4684
|
idleTimeoutMs,
|
|
@@ -4687,73 +4687,90 @@ async function mountMcp(app, mcpServerInstance, sessions, config, isProductionMo
|
|
|
4687
4687
|
);
|
|
4688
4688
|
}
|
|
4689
4689
|
const handleRequest = /* @__PURE__ */ __name(async (c) => {
|
|
4690
|
-
|
|
4691
|
-
|
|
4692
|
-
|
|
4693
|
-
|
|
4694
|
-
|
|
4695
|
-
|
|
4696
|
-
|
|
4697
|
-
|
|
4698
|
-
|
|
4699
|
-
|
|
4700
|
-
|
|
4701
|
-
|
|
4702
|
-
|
|
4703
|
-
|
|
4704
|
-
}
|
|
4705
|
-
|
|
4706
|
-
|
|
4707
|
-
|
|
4708
|
-
|
|
4709
|
-
|
|
4710
|
-
|
|
4711
|
-
|
|
4712
|
-
|
|
4713
|
-
|
|
4714
|
-
|
|
4715
|
-
|
|
4716
|
-
|
|
4717
|
-
|
|
4718
|
-
|
|
4719
|
-
|
|
4720
|
-
|
|
4721
|
-
|
|
4722
|
-
|
|
4723
|
-
|
|
4724
|
-
|
|
4725
|
-
|
|
4726
|
-
|
|
4727
|
-
|
|
4728
|
-
|
|
4729
|
-
|
|
4690
|
+
if (config.stateless) {
|
|
4691
|
+
const server = mcpServerInstance.getServerForSession();
|
|
4692
|
+
const transport = new FetchStreamableHTTPServerTransport({
|
|
4693
|
+
sessionIdGenerator: void 0
|
|
4694
|
+
// No session tracking
|
|
4695
|
+
});
|
|
4696
|
+
try {
|
|
4697
|
+
await server.connect(transport);
|
|
4698
|
+
return await transport.handleRequest(c.req.raw);
|
|
4699
|
+
} catch (error2) {
|
|
4700
|
+
console.error("[MCP] Stateless request error:", error2);
|
|
4701
|
+
transport.close();
|
|
4702
|
+
server.close();
|
|
4703
|
+
throw error2;
|
|
4704
|
+
}
|
|
4705
|
+
} else {
|
|
4706
|
+
const sessionId = c.req.header("mcp-session-id");
|
|
4707
|
+
if (c.req.method === "HEAD") {
|
|
4708
|
+
if (sessionId && sessions.has(sessionId)) {
|
|
4709
|
+
sessions.get(sessionId).lastAccessedAt = Date.now();
|
|
4710
|
+
}
|
|
4711
|
+
return new Response(null, { status: 200 });
|
|
4712
|
+
}
|
|
4713
|
+
if (sessionId && transports.has(sessionId)) {
|
|
4714
|
+
const transport2 = transports.get(sessionId);
|
|
4715
|
+
if (sessions.has(sessionId)) {
|
|
4716
|
+
const session = sessions.get(sessionId);
|
|
4717
|
+
session.lastAccessedAt = Date.now();
|
|
4718
|
+
session.context = c;
|
|
4719
|
+
session.honoContext = c;
|
|
4720
|
+
}
|
|
4721
|
+
return transport2.handleRequest(c.req.raw);
|
|
4722
|
+
}
|
|
4723
|
+
const server = mcpServerInstance.getServerForSession();
|
|
4724
|
+
const transport = new FetchStreamableHTTPServerTransport({
|
|
4725
|
+
sessionIdGenerator: /* @__PURE__ */ __name(() => generateUUID(), "sessionIdGenerator"),
|
|
4726
|
+
onsessioninitialized: /* @__PURE__ */ __name((sid) => {
|
|
4727
|
+
console.log(`[MCP] Session initialized: ${sid}`);
|
|
4728
|
+
transports.set(sid, transport);
|
|
4729
|
+
sessions.set(sid, {
|
|
4730
|
+
transport,
|
|
4731
|
+
server,
|
|
4732
|
+
lastAccessedAt: Date.now(),
|
|
4733
|
+
context: c,
|
|
4734
|
+
honoContext: c
|
|
4735
|
+
});
|
|
4736
|
+
server.server.oninitialized = () => {
|
|
4737
|
+
const clientCapabilities = server.server.getClientCapabilities();
|
|
4738
|
+
const clientInfo = server.server.getClientInfo?.() || {};
|
|
4739
|
+
const protocolVersion = server.server.getProtocolVersion?.() || "unknown";
|
|
4740
|
+
if (clientCapabilities && sessions.has(sid)) {
|
|
4741
|
+
const session = sessions.get(sid);
|
|
4742
|
+
session.clientCapabilities = clientCapabilities;
|
|
4743
|
+
console.log(
|
|
4744
|
+
`[MCP] Captured client capabilities for session ${sid}:`,
|
|
4745
|
+
Object.keys(clientCapabilities)
|
|
4746
|
+
);
|
|
4747
|
+
}
|
|
4748
|
+
Telemetry.getInstance().trackServerInitialize({
|
|
4749
|
+
protocolVersion: String(protocolVersion),
|
|
4750
|
+
clientInfo: clientInfo || {},
|
|
4751
|
+
clientCapabilities: clientCapabilities || {},
|
|
4752
|
+
sessionId: sid
|
|
4753
|
+
}).catch(
|
|
4754
|
+
(e) => console.debug(`Failed to track server initialize: ${e}`)
|
|
4730
4755
|
);
|
|
4731
|
-
}
|
|
4732
|
-
|
|
4733
|
-
|
|
4734
|
-
|
|
4735
|
-
|
|
4736
|
-
|
|
4737
|
-
|
|
4738
|
-
|
|
4739
|
-
|
|
4740
|
-
|
|
4741
|
-
|
|
4742
|
-
|
|
4743
|
-
console.log(`[MCP] Session closed: ${sid}`);
|
|
4744
|
-
transports.delete(sid);
|
|
4745
|
-
sessions.delete(sid);
|
|
4746
|
-
mcpServerInstance.cleanupSessionSubscriptions?.(sid);
|
|
4747
|
-
}, "onsessionclosed")
|
|
4748
|
-
});
|
|
4749
|
-
await server.connect(transport);
|
|
4750
|
-
return transport.handleRequest(c.req.raw);
|
|
4756
|
+
};
|
|
4757
|
+
}, "onsessioninitialized"),
|
|
4758
|
+
onsessionclosed: /* @__PURE__ */ __name((sid) => {
|
|
4759
|
+
console.log(`[MCP] Session closed: ${sid}`);
|
|
4760
|
+
transports.delete(sid);
|
|
4761
|
+
sessions.delete(sid);
|
|
4762
|
+
mcpServerInstance.cleanupSessionSubscriptions?.(sid);
|
|
4763
|
+
}, "onsessionclosed")
|
|
4764
|
+
});
|
|
4765
|
+
await server.connect(transport);
|
|
4766
|
+
return transport.handleRequest(c.req.raw);
|
|
4767
|
+
}
|
|
4751
4768
|
}, "handleRequest");
|
|
4752
4769
|
for (const endpoint of ["/mcp", "/sse"]) {
|
|
4753
4770
|
app.on(["GET", "POST", "DELETE", "HEAD"], endpoint, handleRequest);
|
|
4754
4771
|
}
|
|
4755
4772
|
console.log(
|
|
4756
|
-
`[MCP] Server mounted at /mcp and /sse (
|
|
4773
|
+
`[MCP] Server mounted at /mcp and /sse (${config.stateless ? "stateless" : "stateful"} mode)`
|
|
4757
4774
|
);
|
|
4758
4775
|
return { mcpMounted: true, idleCleanupInterval };
|
|
4759
4776
|
}
|
|
@@ -5119,6 +5136,12 @@ var MCPServerClass = class {
|
|
|
5119
5136
|
*/
|
|
5120
5137
|
constructor(config) {
|
|
5121
5138
|
this.config = config;
|
|
5139
|
+
if (this.config.stateless === void 0) {
|
|
5140
|
+
this.config.stateless = isDeno;
|
|
5141
|
+
if (this.config.stateless) {
|
|
5142
|
+
console.log("[MCP] Deno detected - using stateless mode (no sessions)");
|
|
5143
|
+
}
|
|
5144
|
+
}
|
|
5122
5145
|
this.serverHost = config.host || "localhost";
|
|
5123
5146
|
this.serverBaseUrl = config.baseUrl;
|
|
5124
5147
|
this.nativeServer = new import_mcp2.McpServer(
|
|
@@ -5777,9 +5800,13 @@ var MCPServerClass = class {
|
|
|
5777
5800
|
const fetchHandler = this.app.fetch.bind(this.app);
|
|
5778
5801
|
if (options?.provider === "supabase") {
|
|
5779
5802
|
return async (req) => {
|
|
5803
|
+
const corsHeaders = getDenoCorsHeaders();
|
|
5804
|
+
if (req.method === "OPTIONS") {
|
|
5805
|
+
return new Response("ok", { headers: corsHeaders });
|
|
5806
|
+
}
|
|
5780
5807
|
const rewrittenReq = rewriteSupabaseRequest(req);
|
|
5781
5808
|
const result = await fetchHandler(rewrittenReq);
|
|
5782
|
-
return result;
|
|
5809
|
+
return applyDenoCorsHeaders(result);
|
|
5783
5810
|
};
|
|
5784
5811
|
}
|
|
5785
5812
|
return async (req) => {
|
package/dist/src/server/index.js
CHANGED
|
@@ -7,7 +7,7 @@ import {
|
|
|
7
7
|
createEnhancedContext,
|
|
8
8
|
findSessionContext,
|
|
9
9
|
isValidLogLevel
|
|
10
|
-
} from "../../chunk-
|
|
10
|
+
} from "../../chunk-FQJ6Z3U6.js";
|
|
11
11
|
import {
|
|
12
12
|
convertToolResultToResourceResult
|
|
13
13
|
} from "../../chunk-362PI25Z.js";
|
|
@@ -25,7 +25,7 @@ import {
|
|
|
25
25
|
getPackageVersion,
|
|
26
26
|
isDeno,
|
|
27
27
|
pathHelpers
|
|
28
|
-
} from "../../chunk-
|
|
28
|
+
} from "../../chunk-FONZ4CWK.js";
|
|
29
29
|
import "../../chunk-FRUZDWXH.js";
|
|
30
30
|
import {
|
|
31
31
|
__name
|
|
@@ -2091,7 +2091,7 @@ function registerResource(resourceDefinition, callback) {
|
|
|
2091
2091
|
const explicitMimeType = resourceDefinition.mimeType;
|
|
2092
2092
|
const wrappedCallback = /* @__PURE__ */ __name(async () => {
|
|
2093
2093
|
const { getRequestContext: getRequestContext2, runWithContext: runWithContext2 } = await import("../../context-storage-NA4MHWOZ.js");
|
|
2094
|
-
const { findSessionContext: findSessionContext2 } = await import("../../tool-execution-helpers-
|
|
2094
|
+
const { findSessionContext: findSessionContext2 } = await import("../../tool-execution-helpers-3RAOCSJ4.js");
|
|
2095
2095
|
const initialRequestContext = getRequestContext2();
|
|
2096
2096
|
const sessions = this.sessions || /* @__PURE__ */ new Map();
|
|
2097
2097
|
const { requestContext } = findSessionContext2(
|
|
@@ -2169,7 +2169,7 @@ function registerResourceTemplate(resourceTemplateDefinition, callback) {
|
|
|
2169
2169
|
async (uri) => {
|
|
2170
2170
|
const params = this.parseTemplateUri(uriTemplate, uri.toString());
|
|
2171
2171
|
const { getRequestContext: getRequestContext2, runWithContext: runWithContext2 } = await import("../../context-storage-NA4MHWOZ.js");
|
|
2172
|
-
const { findSessionContext: findSessionContext2 } = await import("../../tool-execution-helpers-
|
|
2172
|
+
const { findSessionContext: findSessionContext2 } = await import("../../tool-execution-helpers-3RAOCSJ4.js");
|
|
2173
2173
|
const initialRequestContext = getRequestContext2();
|
|
2174
2174
|
const sessions = this.sessions || /* @__PURE__ */ new Map();
|
|
2175
2175
|
const { requestContext } = findSessionContext2(
|
|
@@ -2224,7 +2224,7 @@ function registerPrompt(promptDefinition, callback) {
|
|
|
2224
2224
|
}
|
|
2225
2225
|
const wrappedCallback = /* @__PURE__ */ __name(async (params, extra) => {
|
|
2226
2226
|
const { getRequestContext: getRequestContext2, runWithContext: runWithContext2 } = await import("../../context-storage-NA4MHWOZ.js");
|
|
2227
|
-
const { findSessionContext: findSessionContext2 } = await import("../../tool-execution-helpers-
|
|
2227
|
+
const { findSessionContext: findSessionContext2 } = await import("../../tool-execution-helpers-3RAOCSJ4.js");
|
|
2228
2228
|
const initialRequestContext = getRequestContext2();
|
|
2229
2229
|
const sessions = this.sessions || /* @__PURE__ */ new Map();
|
|
2230
2230
|
const { requestContext } = findSessionContext2(
|
|
@@ -2539,7 +2539,7 @@ async function mountMcp(app, mcpServerInstance, sessions, config, isProductionMo
|
|
|
2539
2539
|
const idleTimeoutMs = config.sessionIdleTimeoutMs ?? 3e5;
|
|
2540
2540
|
const transports = /* @__PURE__ */ new Map();
|
|
2541
2541
|
let idleCleanupInterval;
|
|
2542
|
-
if (idleTimeoutMs > 0) {
|
|
2542
|
+
if (!config.stateless && idleTimeoutMs > 0) {
|
|
2543
2543
|
idleCleanupInterval = startIdleCleanup(
|
|
2544
2544
|
sessions,
|
|
2545
2545
|
idleTimeoutMs,
|
|
@@ -2548,73 +2548,90 @@ async function mountMcp(app, mcpServerInstance, sessions, config, isProductionMo
|
|
|
2548
2548
|
);
|
|
2549
2549
|
}
|
|
2550
2550
|
const handleRequest = /* @__PURE__ */ __name(async (c) => {
|
|
2551
|
-
|
|
2552
|
-
|
|
2553
|
-
|
|
2554
|
-
|
|
2551
|
+
if (config.stateless) {
|
|
2552
|
+
const server = mcpServerInstance.getServerForSession();
|
|
2553
|
+
const transport = new FetchStreamableHTTPServerTransport({
|
|
2554
|
+
sessionIdGenerator: void 0
|
|
2555
|
+
// No session tracking
|
|
2556
|
+
});
|
|
2557
|
+
try {
|
|
2558
|
+
await server.connect(transport);
|
|
2559
|
+
return await transport.handleRequest(c.req.raw);
|
|
2560
|
+
} catch (error2) {
|
|
2561
|
+
console.error("[MCP] Stateless request error:", error2);
|
|
2562
|
+
transport.close();
|
|
2563
|
+
server.close();
|
|
2564
|
+
throw error2;
|
|
2555
2565
|
}
|
|
2556
|
-
|
|
2557
|
-
|
|
2558
|
-
|
|
2559
|
-
|
|
2560
|
-
|
|
2561
|
-
|
|
2562
|
-
|
|
2563
|
-
session.context = c;
|
|
2564
|
-
session.honoContext = c;
|
|
2566
|
+
} else {
|
|
2567
|
+
const sessionId = c.req.header("mcp-session-id");
|
|
2568
|
+
if (c.req.method === "HEAD") {
|
|
2569
|
+
if (sessionId && sessions.has(sessionId)) {
|
|
2570
|
+
sessions.get(sessionId).lastAccessedAt = Date.now();
|
|
2571
|
+
}
|
|
2572
|
+
return new Response(null, { status: 200 });
|
|
2565
2573
|
}
|
|
2566
|
-
|
|
2567
|
-
|
|
2568
|
-
|
|
2569
|
-
|
|
2570
|
-
|
|
2571
|
-
|
|
2572
|
-
|
|
2573
|
-
|
|
2574
|
-
|
|
2575
|
-
|
|
2576
|
-
|
|
2577
|
-
|
|
2578
|
-
|
|
2579
|
-
|
|
2580
|
-
|
|
2581
|
-
|
|
2582
|
-
|
|
2583
|
-
|
|
2584
|
-
|
|
2585
|
-
|
|
2586
|
-
|
|
2587
|
-
|
|
2588
|
-
|
|
2589
|
-
|
|
2590
|
-
|
|
2574
|
+
if (sessionId && transports.has(sessionId)) {
|
|
2575
|
+
const transport2 = transports.get(sessionId);
|
|
2576
|
+
if (sessions.has(sessionId)) {
|
|
2577
|
+
const session = sessions.get(sessionId);
|
|
2578
|
+
session.lastAccessedAt = Date.now();
|
|
2579
|
+
session.context = c;
|
|
2580
|
+
session.honoContext = c;
|
|
2581
|
+
}
|
|
2582
|
+
return transport2.handleRequest(c.req.raw);
|
|
2583
|
+
}
|
|
2584
|
+
const server = mcpServerInstance.getServerForSession();
|
|
2585
|
+
const transport = new FetchStreamableHTTPServerTransport({
|
|
2586
|
+
sessionIdGenerator: /* @__PURE__ */ __name(() => generateUUID(), "sessionIdGenerator"),
|
|
2587
|
+
onsessioninitialized: /* @__PURE__ */ __name((sid) => {
|
|
2588
|
+
console.log(`[MCP] Session initialized: ${sid}`);
|
|
2589
|
+
transports.set(sid, transport);
|
|
2590
|
+
sessions.set(sid, {
|
|
2591
|
+
transport,
|
|
2592
|
+
server,
|
|
2593
|
+
lastAccessedAt: Date.now(),
|
|
2594
|
+
context: c,
|
|
2595
|
+
honoContext: c
|
|
2596
|
+
});
|
|
2597
|
+
server.server.oninitialized = () => {
|
|
2598
|
+
const clientCapabilities = server.server.getClientCapabilities();
|
|
2599
|
+
const clientInfo = server.server.getClientInfo?.() || {};
|
|
2600
|
+
const protocolVersion = server.server.getProtocolVersion?.() || "unknown";
|
|
2601
|
+
if (clientCapabilities && sessions.has(sid)) {
|
|
2602
|
+
const session = sessions.get(sid);
|
|
2603
|
+
session.clientCapabilities = clientCapabilities;
|
|
2604
|
+
console.log(
|
|
2605
|
+
`[MCP] Captured client capabilities for session ${sid}:`,
|
|
2606
|
+
Object.keys(clientCapabilities)
|
|
2607
|
+
);
|
|
2608
|
+
}
|
|
2609
|
+
Telemetry.getInstance().trackServerInitialize({
|
|
2610
|
+
protocolVersion: String(protocolVersion),
|
|
2611
|
+
clientInfo: clientInfo || {},
|
|
2612
|
+
clientCapabilities: clientCapabilities || {},
|
|
2613
|
+
sessionId: sid
|
|
2614
|
+
}).catch(
|
|
2615
|
+
(e) => console.debug(`Failed to track server initialize: ${e}`)
|
|
2591
2616
|
);
|
|
2592
|
-
}
|
|
2593
|
-
|
|
2594
|
-
|
|
2595
|
-
|
|
2596
|
-
|
|
2597
|
-
|
|
2598
|
-
|
|
2599
|
-
|
|
2600
|
-
|
|
2601
|
-
|
|
2602
|
-
|
|
2603
|
-
|
|
2604
|
-
console.log(`[MCP] Session closed: ${sid}`);
|
|
2605
|
-
transports.delete(sid);
|
|
2606
|
-
sessions.delete(sid);
|
|
2607
|
-
mcpServerInstance.cleanupSessionSubscriptions?.(sid);
|
|
2608
|
-
}, "onsessionclosed")
|
|
2609
|
-
});
|
|
2610
|
-
await server.connect(transport);
|
|
2611
|
-
return transport.handleRequest(c.req.raw);
|
|
2617
|
+
};
|
|
2618
|
+
}, "onsessioninitialized"),
|
|
2619
|
+
onsessionclosed: /* @__PURE__ */ __name((sid) => {
|
|
2620
|
+
console.log(`[MCP] Session closed: ${sid}`);
|
|
2621
|
+
transports.delete(sid);
|
|
2622
|
+
sessions.delete(sid);
|
|
2623
|
+
mcpServerInstance.cleanupSessionSubscriptions?.(sid);
|
|
2624
|
+
}, "onsessionclosed")
|
|
2625
|
+
});
|
|
2626
|
+
await server.connect(transport);
|
|
2627
|
+
return transport.handleRequest(c.req.raw);
|
|
2628
|
+
}
|
|
2612
2629
|
}, "handleRequest");
|
|
2613
2630
|
for (const endpoint of ["/mcp", "/sse"]) {
|
|
2614
2631
|
app.on(["GET", "POST", "DELETE", "HEAD"], endpoint, handleRequest);
|
|
2615
2632
|
}
|
|
2616
2633
|
console.log(
|
|
2617
|
-
`[MCP] Server mounted at /mcp and /sse (
|
|
2634
|
+
`[MCP] Server mounted at /mcp and /sse (${config.stateless ? "stateless" : "stateful"} mode)`
|
|
2618
2635
|
);
|
|
2619
2636
|
return { mcpMounted: true, idleCleanupInterval };
|
|
2620
2637
|
}
|
|
@@ -2980,6 +2997,12 @@ var MCPServerClass = class {
|
|
|
2980
2997
|
*/
|
|
2981
2998
|
constructor(config) {
|
|
2982
2999
|
this.config = config;
|
|
3000
|
+
if (this.config.stateless === void 0) {
|
|
3001
|
+
this.config.stateless = isDeno;
|
|
3002
|
+
if (this.config.stateless) {
|
|
3003
|
+
console.log("[MCP] Deno detected - using stateless mode (no sessions)");
|
|
3004
|
+
}
|
|
3005
|
+
}
|
|
2983
3006
|
this.serverHost = config.host || "localhost";
|
|
2984
3007
|
this.serverBaseUrl = config.baseUrl;
|
|
2985
3008
|
this.nativeServer = new OfficialMcpServer(
|
|
@@ -3638,9 +3661,13 @@ var MCPServerClass = class {
|
|
|
3638
3661
|
const fetchHandler = this.app.fetch.bind(this.app);
|
|
3639
3662
|
if (options?.provider === "supabase") {
|
|
3640
3663
|
return async (req) => {
|
|
3664
|
+
const corsHeaders = getDenoCorsHeaders();
|
|
3665
|
+
if (req.method === "OPTIONS") {
|
|
3666
|
+
return new Response("ok", { headers: corsHeaders });
|
|
3667
|
+
}
|
|
3641
3668
|
const rewrittenReq = rewriteSupabaseRequest(req);
|
|
3642
3669
|
const result = await fetchHandler(rewrittenReq);
|
|
3643
|
-
return result;
|
|
3670
|
+
return applyDenoCorsHeaders(result);
|
|
3644
3671
|
};
|
|
3645
3672
|
}
|
|
3646
3673
|
return async (req) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-server.d.ts","sourceRoot":"","sources":["../../../src/server/mcp-server.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,IAAI,iBAAiB,EAE/B,MAAM,iDAAiD,CAAC;AACzD,OAAO,KAAK,EACV,oBAAoB,EACpB,mBAAmB,EACpB,MAAM,4CAA4C,CAAC;AAKpD,OAAO,KAAK,EAAE,IAAI,IAAI,QAAQ,EAAE,MAAM,MAAM,CAAC;AAK7C,OAAO,EAAE,sBAAsB,EAAgB,MAAM,oBAAoB,CAAC;AAE1E,OAAO,EAEL,wBAAwB,EACxB,kBAAkB,EACnB,MAAM,kBAAkB,CAAC;AAS1B,OAAO,KAAK,EACV,WAAW,EACX,aAAa,EACb,aAAa,EACb,gBAAgB,EAChB,eAAe,EAChB,MAAM,yBAAyB,CAAC;AAEjC,YAAY,EACV,WAAW,EACX,aAAa,EACb,aAAa,EACb,gBAAgB,EAChB,eAAe,GAChB,CAAC;AAEF,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAE7D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAChB,yBAAyB,EAC1B,MAAM,0BAA0B,CAAC;AAQlC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,
|
|
1
|
+
{"version":3,"file":"mcp-server.d.ts","sourceRoot":"","sources":["../../../src/server/mcp-server.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,IAAI,iBAAiB,EAE/B,MAAM,iDAAiD,CAAC;AACzD,OAAO,KAAK,EACV,oBAAoB,EACpB,mBAAmB,EACpB,MAAM,4CAA4C,CAAC;AAKpD,OAAO,KAAK,EAAE,IAAI,IAAI,QAAQ,EAAE,MAAM,MAAM,CAAC;AAK7C,OAAO,EAAE,sBAAsB,EAAgB,MAAM,oBAAoB,CAAC;AAE1E,OAAO,EAEL,wBAAwB,EACxB,kBAAkB,EACnB,MAAM,kBAAkB,CAAC;AAS1B,OAAO,KAAK,EACV,WAAW,EACX,aAAa,EACb,aAAa,EACb,gBAAgB,EAChB,eAAe,EAChB,MAAM,yBAAyB,CAAC;AAEjC,YAAY,EACV,WAAW,EACX,aAAa,EACb,aAAa,EACb,gBAAgB,EAChB,eAAe,GAChB,CAAC;AAEF,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAE7D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAChB,yBAAyB,EAC1B,MAAM,0BAA0B,CAAC;AAQlC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAWL,gBAAgB,IAAI,sBAAsB,EAE3C,MAAM,kBAAkB,CAAC;AAE1B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,KAAK,EACV,cAAc,EACd,YAAY,EACZ,cAAc,EACd,eAAe,EAChB,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAC1E,OAAO,KAAK,EACV,kBAAkB,EAClB,0BAA0B,EAC1B,oBAAoB,EACpB,4BAA4B,EAC7B,MAAM,qBAAqB,CAAC;AAE7B,cAAM,cAAc,CAAC,QAAQ,SAAS,OAAO,GAAG,KAAK;IACnD;;;OAGG;WACW,iBAAiB,IAAI,MAAM;IAIzC;;;OAGG;IACH,SAAgB,YAAY,EAAE,iBAAiB,CAAC;IAEhD,6EAA6E;IAC7E,IAAW,MAAM,IAAI,iBAAiB,CAErC;IAEM,MAAM,EAAE,YAAY,CAAC;IACrB,GAAG,EAAE,QAAQ,CAAC;IACrB,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,gBAAgB,CAAS;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,MAAM,EAAE,CAAM;IAC/B,iBAAiB,EAAE,MAAM,EAAE,CAAM;IACjC,mBAAmB,EAAE,MAAM,EAAE,CAAM;IACnC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,2BAAkC;IACjD,OAAO,CAAC,mBAAmB,CAAC,CAAiB;IAC7C,OAAO,CAAC,eAAe,CAMrB;IACK,aAAa,CAAC,EAAE,aAAa,CAAC;IACrC,OAAO,CAAC,eAAe,CAAC,CAAkD;IAE1E;;;;OAIG;IACI,aAAa;;oBACe,cAAc;qBAAW,YAAY;;;oBAG1D,gBAAgB;qBAAW,cAAc;;;oBAIzC,kBAAkB;qBAAW,oBAAoB;;;oBAKjD,0BAA0B;qBACzB,4BAA4B;;MAGzC;IAEF;;;OAGG;IACI,iBAAiB,uCAA8C;IAEtE;;OAEG;IACH,OAAO,CAAC,mBAAmB,CAAqC;IAEhE;;;;;;;;OAQG;IACI,2BAA2B,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAI3D;;;;;;;;;OASG;gBACS,MAAM,EAAE,YAAY;IA2ChC;;;OAGG;IACH,OAAO,CAAC,uBAAuB;IA8J/B;;;OAGG;IACI,mBAAmB,IAAI,iBAAiB;IA0a/C;;;OAGG;IACH,OAAO,CAAC,gBAAgB;IASjB,IAAI,EAAG,CAAC,CAAC,SAAS,cAAc,CAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,CAAC,EACzD,cAAc,EAAE,CAAC,EACjB,QAAQ,CAAC,EAAE,YAAY,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,KACrE,IAAI,CAAC;IAGH,wBAAwB,kCAA4B;IACpD,kBAAkB,4BAAsB;IAGxC,gBAAgB,gCAA0B;IAG1C,QAAQ,EAAG,CAChB,kBAAkB,EACd,kBAAkB,CAAC,QAAQ,CAAC,GAC5B,OAAO,kBAAkB,EAAE,iCAAiC,EAChE,QAAQ,CAAC,EAAE,oBAAoB,CAAC,QAAQ,CAAC,KACtC,IAAI,CAAC;IACH,gBAAgB,EAAG,CACxB,kBAAkB,EACd,0BAA0B,CAAC,QAAQ,CAAC,GACpC,OAAO,kBAAkB,EAAE,yCAAyC,GACpE,OAAO,kBAAkB,EAAE,8BAA8B,CAAC,QAAQ,CAAC,GACnE,OAAO,kBAAkB,EAAE,6CAA6C,EAC5E,QAAQ,CAAC,EAAE,4BAA4B,CAAC,QAAQ,CAAC,KAC9C,IAAI,CAAC;IAGH,MAAM,EAAG,CACd,gBAAgB,EACZ,gBAAgB,CAAC,GAAG,EAAE,QAAQ,CAAC,GAC/B,OAAO,kBAAkB,EAAE,+BAA+B,EAC9D,QAAQ,CAAC,EAAE,cAAc,CAAC,GAAG,EAAE,QAAQ,CAAC,KACrC,IAAI,CAAC;IAGH,iBAAiB,2BAAqB;IACtC,gBAAgB,0BAAoB;IACpC,yBAAyB,mCAA6B;IAE7D;;;;;;;;;;;;;;OAcG;IACU,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIvD,UAAU,GACf,YAAY,UAAU,CAAC,OAAO,sBAAsB,CAAC,CAAC,CAAC,CAAC,SAGxD;IAEF;;;;;;;;;;;;;;;;;;OAkBG;YACW,QAAQ;IActB;;;;;;;;;;;;;;;;;;;;OAoBG;IACH;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAQnB,UAAU;IAIV,aAAa;IAIpB;;;OAGG;IACU,aAAa,CACxB,MAAM,EAAE,oBAAoB,CAAC,QAAQ,CAAC,EACtC,OAAO,CAAC,EAAE,GAAG,GACZ,OAAO,CAAC,mBAAmB,CAAC;IAIzB,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAkD1C,OAAO,CAAC,eAAe;IAMvB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAgCG;IACG,UAAU,CAAC,OAAO,CAAC,EAAE;QACzB,QAAQ,CAAC,EAAE,UAAU,GAAG,YAAY,GAAG,aAAa,CAAC;KACtD,GAAG,OAAO,CAAC,CAAC,GAAG,EAAE,OAAO,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;IAuDhD,cAAc,wBAA6B;IAC3C,SAAS,mBAAwB;IAEjC;;;;;;;;;;;;;;;;;;;;;OAqBG;YACW,cAAc;CAc7B;AAED,MAAM,MAAM,iBAAiB,CAAC,QAAQ,SAAS,OAAO,GAAG,KAAK,IAC5D,cAAc,CAAC,QAAQ,CAAC,GAAG,QAAQ,CAAC;AAGtC,MAAM,MAAM,SAAS,CAAC,QAAQ,SAAS,OAAO,GAAG,KAAK,IACpD,cAAc,CAAC,QAAQ,CAAC,CAAC;AAG3B,MAAM,WAAW,oBAAoB;IAEnC,KACE,MAAM,EAAE,YAAY,GAAG;QAAE,KAAK,EAAE,WAAW,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAA;KAAE,GACnE,iBAAiB,CAAC,IAAI,CAAC,CAAC;IAE3B,KAAK,MAAM,EAAE,YAAY,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;IACrD,SAAS,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC;CACpC;AAMD,eAAO,MAAM,SAAS,EAAE,oBAA4C,CAAC;AAErE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuDG;AAIH,wBAAgB,eAAe,CAC7B,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,OAAO,CAAC,YAAY,CAAC,GAAG;IAAE,KAAK,EAAE,WAAW,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAA;CAAE,GAC5E,iBAAiB,CAAC,IAAI,CAAC,CAAC;AAI3B,wBAAgB,eAAe,CAC7B,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,GAC7B,iBAAiB,CAAC,KAAK,CAAC,CAAC"}
|