mcp-use 1.8.1 → 1.9.0-canary.1
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-KUEVOU4M.js +49 -0
- package/dist/{chunk-LWAQBWXN.js → chunk-QREDNTLS.js} +1 -1
- package/dist/{chunk-X2HZKCNO.js → chunk-UADIRKWG.js} +9 -3
- package/dist/{chunk-HDYKWLGV.js → chunk-VYOEQ5NZ.js} +5 -2
- package/dist/{chunk-DWTSQOEC.js → chunk-ZQUCGISK.js} +29 -1
- package/dist/index.cjs +90 -5
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +20 -6
- package/dist/src/agents/index.js +2 -2
- package/dist/src/browser.cjs +35 -2
- package/dist/src/browser.js +2 -2
- package/dist/src/client/prompts.js +2 -2
- package/dist/src/client.d.ts +12 -1
- package/dist/src/client.d.ts.map +1 -1
- package/dist/src/connectors/base.d.ts +17 -4
- package/dist/src/connectors/base.d.ts.map +1 -1
- package/dist/src/connectors/http.d.ts.map +1 -1
- package/dist/src/connectors/stdio.d.ts.map +1 -1
- package/dist/src/errors.d.ts +28 -0
- package/dist/src/errors.d.ts.map +1 -0
- package/dist/src/react/index.cjs +39 -3
- package/dist/src/react/index.js +3 -3
- package/dist/src/react/types.d.ts +11 -1
- package/dist/src/react/types.d.ts.map +1 -1
- package/dist/src/react/useMcp.d.ts.map +1 -1
- package/dist/src/server/index.cjs +89 -0
- package/dist/src/server/index.js +75 -0
- package/dist/src/server/mcp-server.d.ts +99 -2
- package/dist/src/server/mcp-server.d.ts.map +1 -1
- package/package.json +3 -3
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import {
|
|
2
|
+
__name
|
|
3
|
+
} from "./chunk-3GQAWCBQ.js";
|
|
4
|
+
|
|
5
|
+
// src/errors.ts
|
|
6
|
+
var ElicitationValidationError = class _ElicitationValidationError extends Error {
|
|
7
|
+
constructor(message, cause) {
|
|
8
|
+
super(message);
|
|
9
|
+
this.cause = cause;
|
|
10
|
+
this.name = "ElicitationValidationError";
|
|
11
|
+
if (Error.captureStackTrace) {
|
|
12
|
+
Error.captureStackTrace(this, _ElicitationValidationError);
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
static {
|
|
16
|
+
__name(this, "ElicitationValidationError");
|
|
17
|
+
}
|
|
18
|
+
};
|
|
19
|
+
var ElicitationTimeoutError = class _ElicitationTimeoutError extends Error {
|
|
20
|
+
constructor(message, timeoutMs) {
|
|
21
|
+
super(message);
|
|
22
|
+
this.timeoutMs = timeoutMs;
|
|
23
|
+
this.name = "ElicitationTimeoutError";
|
|
24
|
+
if (Error.captureStackTrace) {
|
|
25
|
+
Error.captureStackTrace(this, _ElicitationTimeoutError);
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
static {
|
|
29
|
+
__name(this, "ElicitationTimeoutError");
|
|
30
|
+
}
|
|
31
|
+
};
|
|
32
|
+
var ElicitationDeclinedError = class _ElicitationDeclinedError extends Error {
|
|
33
|
+
static {
|
|
34
|
+
__name(this, "ElicitationDeclinedError");
|
|
35
|
+
}
|
|
36
|
+
constructor(message = "User declined the elicitation request") {
|
|
37
|
+
super(message);
|
|
38
|
+
this.name = "ElicitationDeclinedError";
|
|
39
|
+
if (Error.captureStackTrace) {
|
|
40
|
+
Error.captureStackTrace(this, _ElicitationDeclinedError);
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
};
|
|
44
|
+
|
|
45
|
+
export {
|
|
46
|
+
ElicitationValidationError,
|
|
47
|
+
ElicitationTimeoutError,
|
|
48
|
+
ElicitationDeclinedError
|
|
49
|
+
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
BaseConnector
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-ZQUCGISK.js";
|
|
4
4
|
import {
|
|
5
5
|
logger
|
|
6
6
|
} from "./chunk-34R6SIER.js";
|
|
@@ -391,7 +391,9 @@ var HttpConnector = class extends BaseConnector {
|
|
|
391
391
|
roots: { listChanged: true },
|
|
392
392
|
// Always advertise roots capability
|
|
393
393
|
// Add sampling capability if callback is provided
|
|
394
|
-
...this.opts.samplingCallback ? { sampling: {} } : {}
|
|
394
|
+
...this.opts.samplingCallback ? { sampling: {} } : {},
|
|
395
|
+
// Add elicitation capability if callback is provided
|
|
396
|
+
...this.opts.elicitationCallback ? { elicitation: { form: {}, url: {} } } : {}
|
|
395
397
|
}
|
|
396
398
|
};
|
|
397
399
|
logger.debug(
|
|
@@ -445,6 +447,7 @@ var HttpConnector = class extends BaseConnector {
|
|
|
445
447
|
this.transportType = "streamable-http";
|
|
446
448
|
this.setupNotificationHandler();
|
|
447
449
|
this.setupSamplingHandler();
|
|
450
|
+
this.setupElicitationHandler();
|
|
448
451
|
logger.debug(
|
|
449
452
|
`Successfully connected to MCP implementation via streamable HTTP: ${baseUrl}`
|
|
450
453
|
);
|
|
@@ -474,7 +477,9 @@ var HttpConnector = class extends BaseConnector {
|
|
|
474
477
|
roots: { listChanged: true },
|
|
475
478
|
// Always advertise roots capability
|
|
476
479
|
// Add sampling capability if callback is provided
|
|
477
|
-
...this.opts.samplingCallback ? { sampling: {} } : {}
|
|
480
|
+
...this.opts.samplingCallback ? { sampling: {} } : {},
|
|
481
|
+
// Add elicitation capability if callback is provided
|
|
482
|
+
...this.opts.elicitationCallback ? { elicitation: { form: {}, url: {} } } : {}
|
|
478
483
|
}
|
|
479
484
|
};
|
|
480
485
|
logger.debug(
|
|
@@ -489,6 +494,7 @@ var HttpConnector = class extends BaseConnector {
|
|
|
489
494
|
this.transportType = "sse";
|
|
490
495
|
this.setupNotificationHandler();
|
|
491
496
|
this.setupSamplingHandler();
|
|
497
|
+
this.setupElicitationHandler();
|
|
492
498
|
logger.debug(
|
|
493
499
|
`Successfully connected to MCP implementation via HTTP/SSE: ${baseUrl}`
|
|
494
500
|
);
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
BrowserMCPClient
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-UADIRKWG.js";
|
|
4
4
|
import {
|
|
5
5
|
BrowserOAuthClientProvider,
|
|
6
6
|
sanitizeUrl
|
|
@@ -50,7 +50,8 @@ function useMcp(options) {
|
|
|
50
50
|
// 5 minutes default for SSE read timeout
|
|
51
51
|
wrapTransport,
|
|
52
52
|
onNotification,
|
|
53
|
-
samplingCallback
|
|
53
|
+
samplingCallback,
|
|
54
|
+
onElicitation
|
|
54
55
|
} = options;
|
|
55
56
|
const [state, setState] = useState("discovering");
|
|
56
57
|
const [tools, setTools] = useState([]);
|
|
@@ -208,6 +209,8 @@ function useMcp(options) {
|
|
|
208
209
|
// ← Pass client config to connector
|
|
209
210
|
samplingCallback,
|
|
210
211
|
// ← Pass sampling callback to connector
|
|
212
|
+
elicitationCallback: onElicitation,
|
|
213
|
+
// ← Pass elicitation callback to connector
|
|
211
214
|
wrapTransport: wrapTransport ? (transport) => {
|
|
212
215
|
console.log(
|
|
213
216
|
"[useMcp] Applying transport wrapper for server:",
|
|
@@ -8,7 +8,8 @@ import {
|
|
|
8
8
|
// src/connectors/base.ts
|
|
9
9
|
import {
|
|
10
10
|
ListRootsRequestSchema,
|
|
11
|
-
CreateMessageRequestSchema
|
|
11
|
+
CreateMessageRequestSchema,
|
|
12
|
+
ElicitRequestSchema
|
|
12
13
|
} from "@modelcontextprotocol/sdk/types.js";
|
|
13
14
|
var BaseConnector = class {
|
|
14
15
|
static {
|
|
@@ -182,6 +183,33 @@ var BaseConnector = class {
|
|
|
182
183
|
"setupSamplingHandler: Sampling handler registered successfully"
|
|
183
184
|
);
|
|
184
185
|
}
|
|
186
|
+
/**
|
|
187
|
+
* Internal: set up elicitation/create request handler.
|
|
188
|
+
* This is called after the client connects to register the handler for elicitation requests.
|
|
189
|
+
*/
|
|
190
|
+
setupElicitationHandler() {
|
|
191
|
+
if (!this.client) {
|
|
192
|
+
logger.debug("setupElicitationHandler: No client available");
|
|
193
|
+
return;
|
|
194
|
+
}
|
|
195
|
+
if (!this.opts.elicitationCallback) {
|
|
196
|
+
logger.debug("setupElicitationHandler: No elicitation callback provided");
|
|
197
|
+
return;
|
|
198
|
+
}
|
|
199
|
+
logger.debug(
|
|
200
|
+
"setupElicitationHandler: Setting up elicitation request handler"
|
|
201
|
+
);
|
|
202
|
+
this.client.setRequestHandler(
|
|
203
|
+
ElicitRequestSchema,
|
|
204
|
+
async (request, _extra) => {
|
|
205
|
+
logger.debug("Server requested elicitation, forwarding to callback");
|
|
206
|
+
return await this.opts.elicitationCallback(request.params);
|
|
207
|
+
}
|
|
208
|
+
);
|
|
209
|
+
logger.debug(
|
|
210
|
+
"setupElicitationHandler: Elicitation handler registered successfully"
|
|
211
|
+
);
|
|
212
|
+
}
|
|
185
213
|
/** Disconnect and release resources. */
|
|
186
214
|
async disconnect() {
|
|
187
215
|
if (!this.connected) {
|
package/dist/index.cjs
CHANGED
|
@@ -1055,6 +1055,9 @@ __export(index_exports, {
|
|
|
1055
1055
|
BrowserOAuthClientProvider: () => BrowserOAuthClientProvider,
|
|
1056
1056
|
ConnectMCPServerTool: () => ConnectMCPServerTool,
|
|
1057
1057
|
E2BCodeExecutor: () => E2BCodeExecutor,
|
|
1058
|
+
ElicitationDeclinedError: () => ElicitationDeclinedError,
|
|
1059
|
+
ElicitationTimeoutError: () => ElicitationTimeoutError,
|
|
1060
|
+
ElicitationValidationError: () => ElicitationValidationError,
|
|
1058
1061
|
ErrorBoundary: () => ErrorBoundary,
|
|
1059
1062
|
HttpConnector: () => HttpConnector,
|
|
1060
1063
|
Image: () => Image,
|
|
@@ -5650,6 +5653,33 @@ var BaseConnector = class {
|
|
|
5650
5653
|
"setupSamplingHandler: Sampling handler registered successfully"
|
|
5651
5654
|
);
|
|
5652
5655
|
}
|
|
5656
|
+
/**
|
|
5657
|
+
* Internal: set up elicitation/create request handler.
|
|
5658
|
+
* This is called after the client connects to register the handler for elicitation requests.
|
|
5659
|
+
*/
|
|
5660
|
+
setupElicitationHandler() {
|
|
5661
|
+
if (!this.client) {
|
|
5662
|
+
logger.debug("setupElicitationHandler: No client available");
|
|
5663
|
+
return;
|
|
5664
|
+
}
|
|
5665
|
+
if (!this.opts.elicitationCallback) {
|
|
5666
|
+
logger.debug("setupElicitationHandler: No elicitation callback provided");
|
|
5667
|
+
return;
|
|
5668
|
+
}
|
|
5669
|
+
logger.debug(
|
|
5670
|
+
"setupElicitationHandler: Setting up elicitation request handler"
|
|
5671
|
+
);
|
|
5672
|
+
this.client.setRequestHandler(
|
|
5673
|
+
import_types.ElicitRequestSchema,
|
|
5674
|
+
async (request, _extra) => {
|
|
5675
|
+
logger.debug("Server requested elicitation, forwarding to callback");
|
|
5676
|
+
return await this.opts.elicitationCallback(request.params);
|
|
5677
|
+
}
|
|
5678
|
+
);
|
|
5679
|
+
logger.debug(
|
|
5680
|
+
"setupElicitationHandler: Elicitation handler registered successfully"
|
|
5681
|
+
);
|
|
5682
|
+
}
|
|
5653
5683
|
/** Disconnect and release resources. */
|
|
5654
5684
|
async disconnect() {
|
|
5655
5685
|
if (!this.connected) {
|
|
@@ -6399,7 +6429,9 @@ var HttpConnector = class extends BaseConnector {
|
|
|
6399
6429
|
roots: { listChanged: true },
|
|
6400
6430
|
// Always advertise roots capability
|
|
6401
6431
|
// Add sampling capability if callback is provided
|
|
6402
|
-
...this.opts.samplingCallback ? { sampling: {} } : {}
|
|
6432
|
+
...this.opts.samplingCallback ? { sampling: {} } : {},
|
|
6433
|
+
// Add elicitation capability if callback is provided
|
|
6434
|
+
...this.opts.elicitationCallback ? { elicitation: { form: {}, url: {} } } : {}
|
|
6403
6435
|
}
|
|
6404
6436
|
};
|
|
6405
6437
|
logger.debug(
|
|
@@ -6453,6 +6485,7 @@ var HttpConnector = class extends BaseConnector {
|
|
|
6453
6485
|
this.transportType = "streamable-http";
|
|
6454
6486
|
this.setupNotificationHandler();
|
|
6455
6487
|
this.setupSamplingHandler();
|
|
6488
|
+
this.setupElicitationHandler();
|
|
6456
6489
|
logger.debug(
|
|
6457
6490
|
`Successfully connected to MCP implementation via streamable HTTP: ${baseUrl}`
|
|
6458
6491
|
);
|
|
@@ -6482,7 +6515,9 @@ var HttpConnector = class extends BaseConnector {
|
|
|
6482
6515
|
roots: { listChanged: true },
|
|
6483
6516
|
// Always advertise roots capability
|
|
6484
6517
|
// Add sampling capability if callback is provided
|
|
6485
|
-
...this.opts.samplingCallback ? { sampling: {} } : {}
|
|
6518
|
+
...this.opts.samplingCallback ? { sampling: {} } : {},
|
|
6519
|
+
// Add elicitation capability if callback is provided
|
|
6520
|
+
...this.opts.elicitationCallback ? { elicitation: { form: {}, url: {} } } : {}
|
|
6486
6521
|
}
|
|
6487
6522
|
};
|
|
6488
6523
|
logger.debug(
|
|
@@ -6497,6 +6532,7 @@ var HttpConnector = class extends BaseConnector {
|
|
|
6497
6532
|
this.transportType = "sse";
|
|
6498
6533
|
this.setupNotificationHandler();
|
|
6499
6534
|
this.setupSamplingHandler();
|
|
6535
|
+
this.setupElicitationHandler();
|
|
6500
6536
|
logger.debug(
|
|
6501
6537
|
`Successfully connected to MCP implementation via HTTP/SSE: ${baseUrl}`
|
|
6502
6538
|
);
|
|
@@ -6640,7 +6676,9 @@ var StdioConnector = class extends BaseConnector {
|
|
|
6640
6676
|
roots: { listChanged: true },
|
|
6641
6677
|
// Always advertise roots capability
|
|
6642
6678
|
// Add sampling capability if callback is provided
|
|
6643
|
-
...this.opts.samplingCallback ? { sampling: {} } : {}
|
|
6679
|
+
...this.opts.samplingCallback ? { sampling: {} } : {},
|
|
6680
|
+
// Add elicitation capability if callback is provided
|
|
6681
|
+
...this.opts.elicitationCallback ? { elicitation: { form: {}, url: {} } } : {}
|
|
6644
6682
|
}
|
|
6645
6683
|
};
|
|
6646
6684
|
this.client = new import_client2.Client(this.clientInfo, clientOptions);
|
|
@@ -6649,6 +6687,7 @@ var StdioConnector = class extends BaseConnector {
|
|
|
6649
6687
|
this.setupNotificationHandler();
|
|
6650
6688
|
this.setupRootsHandler();
|
|
6651
6689
|
this.setupSamplingHandler();
|
|
6690
|
+
this.setupElicitationHandler();
|
|
6652
6691
|
logger.debug(
|
|
6653
6692
|
`Successfully connected to MCP implementation: ${this.command}`
|
|
6654
6693
|
);
|
|
@@ -6991,6 +7030,7 @@ var MCPClient = class _MCPClient extends BaseMCPClient {
|
|
|
6991
7030
|
_codeExecutorConfig = "vm";
|
|
6992
7031
|
_executorOptions;
|
|
6993
7032
|
_samplingCallback;
|
|
7033
|
+
_elicitationCallback;
|
|
6994
7034
|
constructor(config, options) {
|
|
6995
7035
|
if (config) {
|
|
6996
7036
|
if (typeof config === "string") {
|
|
@@ -7017,6 +7057,7 @@ var MCPClient = class _MCPClient extends BaseMCPClient {
|
|
|
7017
7057
|
this._codeExecutorConfig = executorConfig;
|
|
7018
7058
|
this._executorOptions = executorOptions;
|
|
7019
7059
|
this._samplingCallback = options?.samplingCallback;
|
|
7060
|
+
this._elicitationCallback = options?.elicitationCallback;
|
|
7020
7061
|
if (this.codeMode) {
|
|
7021
7062
|
this._setupCodeModeConnector();
|
|
7022
7063
|
}
|
|
@@ -7043,7 +7084,8 @@ var MCPClient = class _MCPClient extends BaseMCPClient {
|
|
|
7043
7084
|
*/
|
|
7044
7085
|
createConnectorFromConfig(serverConfig) {
|
|
7045
7086
|
return createConnectorFromConfig(serverConfig, {
|
|
7046
|
-
samplingCallback: this._samplingCallback
|
|
7087
|
+
samplingCallback: this._samplingCallback,
|
|
7088
|
+
elicitationCallback: this._elicitationCallback
|
|
7047
7089
|
});
|
|
7048
7090
|
}
|
|
7049
7091
|
_setupCodeModeConnector() {
|
|
@@ -8112,7 +8154,8 @@ function useMcp(options) {
|
|
|
8112
8154
|
// 5 minutes default for SSE read timeout
|
|
8113
8155
|
wrapTransport,
|
|
8114
8156
|
onNotification,
|
|
8115
|
-
samplingCallback
|
|
8157
|
+
samplingCallback,
|
|
8158
|
+
onElicitation
|
|
8116
8159
|
} = options;
|
|
8117
8160
|
const [state, setState] = (0, import_react.useState)("discovering");
|
|
8118
8161
|
const [tools, setTools] = (0, import_react.useState)([]);
|
|
@@ -8270,6 +8313,8 @@ function useMcp(options) {
|
|
|
8270
8313
|
// ← Pass client config to connector
|
|
8271
8314
|
samplingCallback,
|
|
8272
8315
|
// ← Pass sampling callback to connector
|
|
8316
|
+
elicitationCallback: onElicitation,
|
|
8317
|
+
// ← Pass elicitation callback to connector
|
|
8273
8318
|
wrapTransport: wrapTransport ? (transport) => {
|
|
8274
8319
|
console.log(
|
|
8275
8320
|
"[useMcp] Applying transport wrapper for server:",
|
|
@@ -9692,3 +9737,43 @@ __name(McpUseProvider, "McpUseProvider");
|
|
|
9692
9737
|
var PROMPTS = {
|
|
9693
9738
|
CODE_MODE: CODE_MODE_AGENT_PROMPT
|
|
9694
9739
|
};
|
|
9740
|
+
|
|
9741
|
+
// src/errors.ts
|
|
9742
|
+
var ElicitationValidationError = class _ElicitationValidationError extends Error {
|
|
9743
|
+
constructor(message, cause) {
|
|
9744
|
+
super(message);
|
|
9745
|
+
this.cause = cause;
|
|
9746
|
+
this.name = "ElicitationValidationError";
|
|
9747
|
+
if (Error.captureStackTrace) {
|
|
9748
|
+
Error.captureStackTrace(this, _ElicitationValidationError);
|
|
9749
|
+
}
|
|
9750
|
+
}
|
|
9751
|
+
static {
|
|
9752
|
+
__name(this, "ElicitationValidationError");
|
|
9753
|
+
}
|
|
9754
|
+
};
|
|
9755
|
+
var ElicitationTimeoutError = class _ElicitationTimeoutError extends Error {
|
|
9756
|
+
constructor(message, timeoutMs) {
|
|
9757
|
+
super(message);
|
|
9758
|
+
this.timeoutMs = timeoutMs;
|
|
9759
|
+
this.name = "ElicitationTimeoutError";
|
|
9760
|
+
if (Error.captureStackTrace) {
|
|
9761
|
+
Error.captureStackTrace(this, _ElicitationTimeoutError);
|
|
9762
|
+
}
|
|
9763
|
+
}
|
|
9764
|
+
static {
|
|
9765
|
+
__name(this, "ElicitationTimeoutError");
|
|
9766
|
+
}
|
|
9767
|
+
};
|
|
9768
|
+
var ElicitationDeclinedError = class _ElicitationDeclinedError extends Error {
|
|
9769
|
+
static {
|
|
9770
|
+
__name(this, "ElicitationDeclinedError");
|
|
9771
|
+
}
|
|
9772
|
+
constructor(message = "User declined the elicitation request") {
|
|
9773
|
+
super(message);
|
|
9774
|
+
this.name = "ElicitationDeclinedError";
|
|
9775
|
+
if (Error.captureStackTrace) {
|
|
9776
|
+
Error.captureStackTrace(this, _ElicitationDeclinedError);
|
|
9777
|
+
}
|
|
9778
|
+
}
|
|
9779
|
+
};
|
package/dist/index.d.ts
CHANGED
|
@@ -37,6 +37,7 @@ export type { NotificationHandler };
|
|
|
37
37
|
export type { CodeModeConfig, E2BExecutorOptions, ExecutorOptions, MCPClientOptions, VMExecutorOptions, } from "./src/client.js";
|
|
38
38
|
export { BaseCodeExecutor, E2BCodeExecutor, VMCodeExecutor, isVMAvailable, } from "./src/client.js";
|
|
39
39
|
export type { ExecutionResult, SearchToolsFunction, ToolNamespaceInfo, ToolSearchResult, } from "./src/client/codeExecutor.js";
|
|
40
|
+
export { ElicitationDeclinedError, ElicitationTimeoutError, ElicitationValidationError, } from "./src/errors.js";
|
|
40
41
|
export type { CreateMessageRequest, CreateMessageResult, } from "@modelcontextprotocol/sdk/types.js";
|
|
41
42
|
/**
|
|
42
43
|
* Type alias for the params property of CreateMessageRequest.
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAEnE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAClE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAE/E,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAExE,cAAc,6BAA6B,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AAEjE,cAAc,+BAA+B,CAAC;AAG9C,OAAO,EACL,oBAAoB,EACpB,KAAK,mBAAmB,GACzB,MAAM,8BAA8B,CAAC;AAGtC,OAAO,EAAE,kBAAkB,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAGzE,OAAO,EACL,oBAAoB,EACpB,mBAAmB,EACnB,WAAW,GACZ,MAAM,uBAAuB,CAAC;AAC/B,YAAY,EACV,kBAAkB,EAClB,WAAW,EACX,cAAc,EACd,WAAW,EACX,UAAU,GACX,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EACL,0BAA0B,EAC1B,kBAAkB,GACnB,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAGvD,cAAc,sBAAsB,CAAC;AAGrC,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAQhD,OAAO,EACL,aAAa,EACb,aAAa,EACb,cAAc,EACd,MAAM,EACN,MAAM,EACN,QAAQ,EACR,SAAS,EACT,UAAU,EACV,YAAY,EACZ,WAAW,EACX,IAAI,EACJ,cAAc,EACd,kBAAkB,GACnB,CAAC;AAGF,YAAY,EAAE,mBAAmB,EAAE,CAAC;AAGpC,YAAY,EACV,cAAc,EACd,kBAAkB,EAClB,eAAe,EACf,gBAAgB,EAChB,iBAAiB,GAClB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,cAAc,EACd,aAAa,GACd,MAAM,iBAAiB,CAAC;AAEzB,YAAY,EACV,eAAe,EACf,mBAAmB,EACnB,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,8BAA8B,CAAC;AAGtC,YAAY,EACV,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,oCAAoC,CAAC;AAE5C;;;GAGG;AACH,MAAM,MAAM,0BAA0B,GAAG,oBAAoB,CAAC,QAAQ,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAEnE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAClE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAE/E,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAExE,cAAc,6BAA6B,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AAEjE,cAAc,+BAA+B,CAAC;AAG9C,OAAO,EACL,oBAAoB,EACpB,KAAK,mBAAmB,GACzB,MAAM,8BAA8B,CAAC;AAGtC,OAAO,EAAE,kBAAkB,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAGzE,OAAO,EACL,oBAAoB,EACpB,mBAAmB,EACnB,WAAW,GACZ,MAAM,uBAAuB,CAAC;AAC/B,YAAY,EACV,kBAAkB,EAClB,WAAW,EACX,cAAc,EACd,WAAW,EACX,UAAU,GACX,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EACL,0BAA0B,EAC1B,kBAAkB,GACnB,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAGvD,cAAc,sBAAsB,CAAC;AAGrC,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAQhD,OAAO,EACL,aAAa,EACb,aAAa,EACb,cAAc,EACd,MAAM,EACN,MAAM,EACN,QAAQ,EACR,SAAS,EACT,UAAU,EACV,YAAY,EACZ,WAAW,EACX,IAAI,EACJ,cAAc,EACd,kBAAkB,GACnB,CAAC;AAGF,YAAY,EAAE,mBAAmB,EAAE,CAAC;AAGpC,YAAY,EACV,cAAc,EACd,kBAAkB,EAClB,eAAe,EACf,gBAAgB,EAChB,iBAAiB,GAClB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,cAAc,EACd,aAAa,GACd,MAAM,iBAAiB,CAAC;AAEzB,YAAY,EACV,eAAe,EACf,mBAAmB,EACnB,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,8BAA8B,CAAC;AAGtC,OAAO,EACL,wBAAwB,EACxB,uBAAuB,EACvB,0BAA0B,GAC3B,MAAM,iBAAiB,CAAC;AAGzB,YAAY,EACV,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,oCAAoC,CAAC;AAE5C;;;GAGG;AACH,MAAM,MAAM,0BAA0B,GAAG,oBAAoB,CAAC,QAAQ,CAAC,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -24,7 +24,7 @@ import "./chunk-JQKKMUCT.js";
|
|
|
24
24
|
import {
|
|
25
25
|
CodeModeConnector,
|
|
26
26
|
PROMPTS
|
|
27
|
-
} from "./chunk-
|
|
27
|
+
} from "./chunk-QREDNTLS.js";
|
|
28
28
|
import {
|
|
29
29
|
ErrorBoundary,
|
|
30
30
|
Image,
|
|
@@ -36,25 +36,30 @@ import {
|
|
|
36
36
|
useWidgetProps,
|
|
37
37
|
useWidgetState,
|
|
38
38
|
useWidgetTheme
|
|
39
|
-
} from "./chunk-
|
|
39
|
+
} from "./chunk-VYOEQ5NZ.js";
|
|
40
40
|
import {
|
|
41
41
|
BaseMCPClient,
|
|
42
42
|
ConnectionManager,
|
|
43
43
|
HttpConnector,
|
|
44
44
|
MCPSession,
|
|
45
45
|
WebSocketConnector
|
|
46
|
-
} from "./chunk-
|
|
46
|
+
} from "./chunk-UADIRKWG.js";
|
|
47
47
|
import {
|
|
48
48
|
BrowserOAuthClientProvider,
|
|
49
49
|
onMcpAuthorization
|
|
50
50
|
} from "./chunk-3R5PDYIN.js";
|
|
51
51
|
import {
|
|
52
52
|
BaseConnector
|
|
53
|
-
} from "./chunk-
|
|
53
|
+
} from "./chunk-ZQUCGISK.js";
|
|
54
54
|
import {
|
|
55
55
|
Logger,
|
|
56
56
|
logger
|
|
57
57
|
} from "./chunk-34R6SIER.js";
|
|
58
|
+
import {
|
|
59
|
+
ElicitationDeclinedError,
|
|
60
|
+
ElicitationTimeoutError,
|
|
61
|
+
ElicitationValidationError
|
|
62
|
+
} from "./chunk-KUEVOU4M.js";
|
|
58
63
|
import "./chunk-MTHLLDCX.js";
|
|
59
64
|
import {
|
|
60
65
|
__name,
|
|
@@ -819,7 +824,9 @@ var StdioConnector = class extends BaseConnector {
|
|
|
819
824
|
roots: { listChanged: true },
|
|
820
825
|
// Always advertise roots capability
|
|
821
826
|
// Add sampling capability if callback is provided
|
|
822
|
-
...this.opts.samplingCallback ? { sampling: {} } : {}
|
|
827
|
+
...this.opts.samplingCallback ? { sampling: {} } : {},
|
|
828
|
+
// Add elicitation capability if callback is provided
|
|
829
|
+
...this.opts.elicitationCallback ? { elicitation: { form: {}, url: {} } } : {}
|
|
823
830
|
}
|
|
824
831
|
};
|
|
825
832
|
this.client = new Client(this.clientInfo, clientOptions);
|
|
@@ -828,6 +835,7 @@ var StdioConnector = class extends BaseConnector {
|
|
|
828
835
|
this.setupNotificationHandler();
|
|
829
836
|
this.setupRootsHandler();
|
|
830
837
|
this.setupSamplingHandler();
|
|
838
|
+
this.setupElicitationHandler();
|
|
831
839
|
logger.debug(
|
|
832
840
|
`Successfully connected to MCP implementation: ${this.command}`
|
|
833
841
|
);
|
|
@@ -892,6 +900,7 @@ var MCPClient = class _MCPClient extends BaseMCPClient {
|
|
|
892
900
|
_codeExecutorConfig = "vm";
|
|
893
901
|
_executorOptions;
|
|
894
902
|
_samplingCallback;
|
|
903
|
+
_elicitationCallback;
|
|
895
904
|
constructor(config, options) {
|
|
896
905
|
if (config) {
|
|
897
906
|
if (typeof config === "string") {
|
|
@@ -918,6 +927,7 @@ var MCPClient = class _MCPClient extends BaseMCPClient {
|
|
|
918
927
|
this._codeExecutorConfig = executorConfig;
|
|
919
928
|
this._executorOptions = executorOptions;
|
|
920
929
|
this._samplingCallback = options?.samplingCallback;
|
|
930
|
+
this._elicitationCallback = options?.elicitationCallback;
|
|
921
931
|
if (this.codeMode) {
|
|
922
932
|
this._setupCodeModeConnector();
|
|
923
933
|
}
|
|
@@ -944,7 +954,8 @@ var MCPClient = class _MCPClient extends BaseMCPClient {
|
|
|
944
954
|
*/
|
|
945
955
|
createConnectorFromConfig(serverConfig) {
|
|
946
956
|
return createConnectorFromConfig(serverConfig, {
|
|
947
|
-
samplingCallback: this._samplingCallback
|
|
957
|
+
samplingCallback: this._samplingCallback,
|
|
958
|
+
elicitationCallback: this._elicitationCallback
|
|
948
959
|
});
|
|
949
960
|
}
|
|
950
961
|
_setupCodeModeConnector() {
|
|
@@ -1467,6 +1478,9 @@ export {
|
|
|
1467
1478
|
BrowserOAuthClientProvider,
|
|
1468
1479
|
ConnectMCPServerTool,
|
|
1469
1480
|
E2BCodeExecutor,
|
|
1481
|
+
ElicitationDeclinedError,
|
|
1482
|
+
ElicitationTimeoutError,
|
|
1483
|
+
ElicitationValidationError,
|
|
1470
1484
|
ErrorBoundary,
|
|
1471
1485
|
HttpConnector,
|
|
1472
1486
|
Image,
|
package/dist/src/agents/index.js
CHANGED
|
@@ -8,8 +8,8 @@ import {
|
|
|
8
8
|
import "../../chunk-CPG2WZUL.js";
|
|
9
9
|
import {
|
|
10
10
|
PROMPTS
|
|
11
|
-
} from "../../chunk-
|
|
12
|
-
import "../../chunk-
|
|
11
|
+
} from "../../chunk-QREDNTLS.js";
|
|
12
|
+
import "../../chunk-ZQUCGISK.js";
|
|
13
13
|
import "../../chunk-34R6SIER.js";
|
|
14
14
|
import "../../chunk-MTHLLDCX.js";
|
|
15
15
|
import "../../chunk-3GQAWCBQ.js";
|
package/dist/src/browser.cjs
CHANGED
|
@@ -1412,6 +1412,33 @@ var BaseConnector = class {
|
|
|
1412
1412
|
"setupSamplingHandler: Sampling handler registered successfully"
|
|
1413
1413
|
);
|
|
1414
1414
|
}
|
|
1415
|
+
/**
|
|
1416
|
+
* Internal: set up elicitation/create request handler.
|
|
1417
|
+
* This is called after the client connects to register the handler for elicitation requests.
|
|
1418
|
+
*/
|
|
1419
|
+
setupElicitationHandler() {
|
|
1420
|
+
if (!this.client) {
|
|
1421
|
+
logger.debug("setupElicitationHandler: No client available");
|
|
1422
|
+
return;
|
|
1423
|
+
}
|
|
1424
|
+
if (!this.opts.elicitationCallback) {
|
|
1425
|
+
logger.debug("setupElicitationHandler: No elicitation callback provided");
|
|
1426
|
+
return;
|
|
1427
|
+
}
|
|
1428
|
+
logger.debug(
|
|
1429
|
+
"setupElicitationHandler: Setting up elicitation request handler"
|
|
1430
|
+
);
|
|
1431
|
+
this.client.setRequestHandler(
|
|
1432
|
+
import_types.ElicitRequestSchema,
|
|
1433
|
+
async (request, _extra) => {
|
|
1434
|
+
logger.debug("Server requested elicitation, forwarding to callback");
|
|
1435
|
+
return await this.opts.elicitationCallback(request.params);
|
|
1436
|
+
}
|
|
1437
|
+
);
|
|
1438
|
+
logger.debug(
|
|
1439
|
+
"setupElicitationHandler: Elicitation handler registered successfully"
|
|
1440
|
+
);
|
|
1441
|
+
}
|
|
1415
1442
|
/** Disconnect and release resources. */
|
|
1416
1443
|
async disconnect() {
|
|
1417
1444
|
if (!this.connected) {
|
|
@@ -1795,7 +1822,9 @@ var HttpConnector = class extends BaseConnector {
|
|
|
1795
1822
|
roots: { listChanged: true },
|
|
1796
1823
|
// Always advertise roots capability
|
|
1797
1824
|
// Add sampling capability if callback is provided
|
|
1798
|
-
...this.opts.samplingCallback ? { sampling: {} } : {}
|
|
1825
|
+
...this.opts.samplingCallback ? { sampling: {} } : {},
|
|
1826
|
+
// Add elicitation capability if callback is provided
|
|
1827
|
+
...this.opts.elicitationCallback ? { elicitation: { form: {}, url: {} } } : {}
|
|
1799
1828
|
}
|
|
1800
1829
|
};
|
|
1801
1830
|
logger.debug(
|
|
@@ -1849,6 +1878,7 @@ var HttpConnector = class extends BaseConnector {
|
|
|
1849
1878
|
this.transportType = "streamable-http";
|
|
1850
1879
|
this.setupNotificationHandler();
|
|
1851
1880
|
this.setupSamplingHandler();
|
|
1881
|
+
this.setupElicitationHandler();
|
|
1852
1882
|
logger.debug(
|
|
1853
1883
|
`Successfully connected to MCP implementation via streamable HTTP: ${baseUrl}`
|
|
1854
1884
|
);
|
|
@@ -1878,7 +1908,9 @@ var HttpConnector = class extends BaseConnector {
|
|
|
1878
1908
|
roots: { listChanged: true },
|
|
1879
1909
|
// Always advertise roots capability
|
|
1880
1910
|
// Add sampling capability if callback is provided
|
|
1881
|
-
...this.opts.samplingCallback ? { sampling: {} } : {}
|
|
1911
|
+
...this.opts.samplingCallback ? { sampling: {} } : {},
|
|
1912
|
+
// Add elicitation capability if callback is provided
|
|
1913
|
+
...this.opts.elicitationCallback ? { elicitation: { form: {}, url: {} } } : {}
|
|
1882
1914
|
}
|
|
1883
1915
|
};
|
|
1884
1916
|
logger.debug(
|
|
@@ -1893,6 +1925,7 @@ var HttpConnector = class extends BaseConnector {
|
|
|
1893
1925
|
this.transportType = "sse";
|
|
1894
1926
|
this.setupNotificationHandler();
|
|
1895
1927
|
this.setupSamplingHandler();
|
|
1928
|
+
this.setupElicitationHandler();
|
|
1896
1929
|
logger.debug(
|
|
1897
1930
|
`Successfully connected to MCP implementation via HTTP/SSE: ${baseUrl}`
|
|
1898
1931
|
);
|
package/dist/src/browser.js
CHANGED
|
@@ -16,14 +16,14 @@ import {
|
|
|
16
16
|
HttpConnector,
|
|
17
17
|
MCPSession,
|
|
18
18
|
WebSocketConnector
|
|
19
|
-
} from "../chunk-
|
|
19
|
+
} from "../chunk-UADIRKWG.js";
|
|
20
20
|
import {
|
|
21
21
|
BrowserOAuthClientProvider,
|
|
22
22
|
onMcpAuthorization
|
|
23
23
|
} from "../chunk-3R5PDYIN.js";
|
|
24
24
|
import {
|
|
25
25
|
BaseConnector
|
|
26
|
-
} from "../chunk-
|
|
26
|
+
} from "../chunk-ZQUCGISK.js";
|
|
27
27
|
import {
|
|
28
28
|
Logger,
|
|
29
29
|
logger
|
package/dist/src/client.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { CreateMessageRequest, CreateMessageResult } from "@modelcontextprotocol/sdk/types.js";
|
|
1
|
+
import type { CreateMessageRequest, CreateMessageResult, ElicitRequestFormParams, ElicitRequestURLParams, ElicitResult } from "@modelcontextprotocol/sdk/types.js";
|
|
2
2
|
import { BaseMCPClient } from "./client/base.js";
|
|
3
3
|
import type { ExecutionResult } from "./client/codeExecutor.js";
|
|
4
4
|
import { BaseCodeExecutor } from "./client/codeExecutor.js";
|
|
@@ -27,6 +27,16 @@ export interface MCPClientOptions {
|
|
|
27
27
|
* `sampling/createMessage` requests by calling this callback.
|
|
28
28
|
*/
|
|
29
29
|
samplingCallback?: (params: CreateMessageRequest["params"]) => Promise<CreateMessageResult>;
|
|
30
|
+
/**
|
|
31
|
+
* Optional callback function to handle elicitation requests from servers.
|
|
32
|
+
* When provided, the client will declare elicitation capability and handle
|
|
33
|
+
* `elicitation/create` requests by calling this callback.
|
|
34
|
+
*
|
|
35
|
+
* Elicitation allows servers to request additional information from users:
|
|
36
|
+
* - Form mode: Collect structured data with JSON schema validation
|
|
37
|
+
* - URL mode: Direct users to external URLs for sensitive interactions
|
|
38
|
+
*/
|
|
39
|
+
elicitationCallback?: (params: ElicitRequestFormParams | ElicitRequestURLParams) => Promise<ElicitResult>;
|
|
30
40
|
}
|
|
31
41
|
export { BaseCodeExecutor, E2BCodeExecutor, isVMAvailable, VMCodeExecutor, } from "./client/codeExecutor.js";
|
|
32
42
|
/**
|
|
@@ -45,6 +55,7 @@ export declare class MCPClient extends BaseMCPClient {
|
|
|
45
55
|
private _codeExecutorConfig;
|
|
46
56
|
private _executorOptions?;
|
|
47
57
|
private _samplingCallback?;
|
|
58
|
+
private _elicitationCallback?;
|
|
48
59
|
constructor(config?: string | Record<string, any>, options?: MCPClientOptions);
|
|
49
60
|
static fromDict(cfg: Record<string, any>, options?: MCPClientOptions): MCPClient;
|
|
50
61
|
static fromConfigFile(path: string, options?: MCPClientOptions): MCPClient;
|
package/dist/src/client.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,oBAAoB,EACpB,mBAAmB,
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,oBAAoB,EACpB,mBAAmB,EACnB,uBAAuB,EACvB,sBAAsB,EACtB,YAAY,EACb,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EACL,gBAAgB,EAGjB,MAAM,0BAA0B,CAAC;AAGlC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAI1D,MAAM,MAAM,oBAAoB,GAAG,CACjC,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,MAAM,KACb,OAAO,CAAC,eAAe,CAAC,CAAC;AAC9B,MAAM,MAAM,gBAAgB,GAAG,IAAI,GAAG,KAAK,CAAC;AAG5C,MAAM,WAAW,iBAAiB;IAChC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAGD,MAAM,MAAM,eAAe,GAAG,iBAAiB,GAAG,kBAAkB,CAAC;AAErE,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,gBAAgB,GAAG,oBAAoB,GAAG,gBAAgB,CAAC;IACtE,eAAe,CAAC,EAAE,eAAe,CAAC;CACnC;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,EAAE,OAAO,GAAG,cAAc,CAAC;IACpC;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,CACjB,MAAM,EAAE,oBAAoB,CAAC,QAAQ,CAAC,KACnC,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAClC;;;;;;;;OAQG;IACH,mBAAmB,CAAC,EAAE,CACpB,MAAM,EAAE,uBAAuB,GAAG,sBAAsB,KACrD,OAAO,CAAC,YAAY,CAAC,CAAC;CAC5B;AAGD,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,aAAa,EACb,cAAc,GACf,MAAM,0BAA0B,CAAC;AAElC;;;;;;;;GAQG;AACH,qBAAa,SAAU,SAAQ,aAAa;IACnC,QAAQ,EAAE,OAAO,CAAS;IACjC,OAAO,CAAC,aAAa,CAAiC;IACtD,OAAO,CAAC,mBAAmB,CAAqC;IAChE,OAAO,CAAC,mBAAmB,CAGC;IAC5B,OAAO,CAAC,gBAAgB,CAAC,CAAkB;IAC3C,OAAO,CAAC,iBAAiB,CAAC,CAEQ;IAClC,OAAO,CAAC,oBAAoB,CAAC,CAEF;gBAGzB,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACrC,OAAO,CAAC,EAAE,gBAAgB;WAyCd,QAAQ,CACpB,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACxB,OAAO,CAAC,EAAE,gBAAgB,GACzB,SAAS;WAIE,cAAc,CAC1B,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,gBAAgB,GACzB,SAAS;IAIZ;;OAEG;IACI,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAQzC;;;OAGG;IACH,SAAS,CAAC,yBAAyB,CACjC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAChC,aAAa;IAOhB,OAAO,CAAC,uBAAuB;IAU/B,OAAO,CAAC,mBAAmB;IAkE3B;;OAEG;IACU,WAAW,CACtB,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,eAAe,CAAC;IAc3B;;OAEG;IACU,WAAW,CACtB,KAAK,GAAE,MAAW,EAClB,WAAW,GAAE,OAAO,GAAG,cAAc,GAAG,MAAe,GACtD,OAAO,CAAC,OAAO,0BAA0B,EAAE,kBAAkB,CAAC;IAUjE;;OAEG;IACI,cAAc,IAAI,MAAM,EAAE;IAOjC;;;OAGG;IACU,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAUpC"}
|