@j0hanz/fetch-url-mcp 1.2.0 → 1.3.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/cache.d.ts +9 -3
- package/dist/cache.d.ts.map +1 -0
- package/dist/cache.js +54 -119
- package/dist/cache.js.map +1 -0
- package/dist/cli.d.ts +1 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +7 -4
- package/dist/cli.js.map +1 -0
- package/dist/config.d.ts +2 -3
- package/dist/config.d.ts.map +1 -0
- package/dist/config.js +19 -27
- package/dist/config.js.map +1 -0
- package/dist/crypto.d.ts +1 -0
- package/dist/crypto.d.ts.map +1 -0
- package/dist/crypto.js +7 -3
- package/dist/crypto.js.map +1 -0
- package/dist/dom-noise-removal.d.ts +2 -1
- package/dist/dom-noise-removal.d.ts.map +1 -0
- package/dist/dom-noise-removal.js +9 -6
- package/dist/dom-noise-removal.js.map +1 -0
- package/dist/download.d.ts +4 -0
- package/dist/download.d.ts.map +1 -0
- package/dist/download.js +106 -0
- package/dist/download.js.map +1 -0
- package/dist/errors.d.ts +1 -0
- package/dist/errors.d.ts.map +1 -0
- package/dist/errors.js +2 -1
- package/dist/errors.js.map +1 -0
- package/dist/examples/mcp-fetch-url-client.js +19 -3
- package/dist/examples/mcp-fetch-url-client.js.map +1 -1
- package/dist/fetch-content.d.ts +1 -0
- package/dist/fetch-content.d.ts.map +1 -0
- package/dist/fetch-content.js +15 -14
- package/dist/fetch-content.js.map +1 -0
- package/dist/fetch-stream.d.ts +1 -0
- package/dist/fetch-stream.d.ts.map +1 -0
- package/dist/fetch-stream.js +1 -0
- package/dist/fetch-stream.js.map +1 -0
- package/dist/fetch.d.ts +1 -0
- package/dist/fetch.d.ts.map +1 -0
- package/dist/fetch.js +123 -54
- package/dist/fetch.js.map +1 -0
- package/dist/host-normalization.d.ts +1 -0
- package/dist/host-normalization.d.ts.map +1 -0
- package/dist/host-normalization.js +22 -9
- package/dist/host-normalization.js.map +1 -0
- package/dist/http/auth.d.ts +51 -0
- package/dist/http/auth.d.ts.map +1 -0
- package/dist/http/auth.js +344 -0
- package/dist/http/auth.js.map +1 -0
- package/dist/http/health.d.ts +7 -0
- package/dist/http/health.d.ts.map +1 -0
- package/dist/http/health.js +156 -0
- package/dist/http/health.js.map +1 -0
- package/dist/http/helpers.d.ts +58 -0
- package/dist/http/helpers.d.ts.map +1 -0
- package/dist/http/helpers.js +370 -0
- package/dist/http/helpers.js.map +1 -0
- package/dist/{http-native.d.ts → http/native.d.ts} +1 -0
- package/dist/http/native.d.ts.map +1 -0
- package/dist/http/native.js +618 -0
- package/dist/http/native.js.map +1 -0
- package/dist/http/rate-limit.d.ts +13 -0
- package/dist/http/rate-limit.d.ts.map +1 -0
- package/dist/http/rate-limit.js +92 -0
- package/dist/http/rate-limit.js.map +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +20 -14
- package/dist/index.js.map +1 -0
- package/dist/instructions.d.ts +2 -0
- package/dist/instructions.d.ts.map +1 -0
- package/dist/instructions.js +41 -0
- package/dist/instructions.js.map +1 -0
- package/dist/ip-blocklist.d.ts +1 -0
- package/dist/ip-blocklist.d.ts.map +1 -0
- package/dist/ip-blocklist.js +13 -8
- package/dist/ip-blocklist.js.map +1 -0
- package/dist/json.d.ts +2 -1
- package/dist/json.d.ts.map +1 -0
- package/dist/json.js +16 -6
- package/dist/json.js.map +1 -0
- package/dist/language-detection.d.ts +1 -0
- package/dist/language-detection.d.ts.map +1 -0
- package/dist/language-detection.js +2 -7
- package/dist/language-detection.js.map +1 -0
- package/dist/markdown-cleanup.d.ts +2 -1
- package/dist/markdown-cleanup.d.ts.map +1 -0
- package/dist/markdown-cleanup.js +52 -54
- package/dist/markdown-cleanup.js.map +1 -0
- package/dist/mcp-validator.d.ts +1 -0
- package/dist/mcp-validator.d.ts.map +1 -0
- package/dist/mcp-validator.js +20 -18
- package/dist/mcp-validator.js.map +1 -0
- package/dist/mcp.d.ts +2 -2
- package/dist/mcp.d.ts.map +1 -0
- package/dist/mcp.js +35 -344
- package/dist/mcp.js.map +1 -0
- package/dist/observability.d.ts +2 -0
- package/dist/observability.d.ts.map +1 -0
- package/dist/observability.js +32 -6
- package/dist/observability.js.map +1 -0
- package/dist/prompts.d.ts +1 -0
- package/dist/prompts.d.ts.map +1 -0
- package/dist/prompts.js +15 -3
- package/dist/prompts.js.map +1 -0
- package/dist/resources.d.ts +1 -0
- package/dist/resources.d.ts.map +1 -0
- package/dist/resources.js +46 -25
- package/dist/resources.js.map +1 -0
- package/dist/server-tuning.d.ts +1 -0
- package/dist/server-tuning.d.ts.map +1 -0
- package/dist/server-tuning.js +14 -17
- package/dist/server-tuning.js.map +1 -0
- package/dist/server.d.ts +1 -0
- package/dist/server.d.ts.map +1 -0
- package/dist/server.js +29 -35
- package/dist/server.js.map +1 -0
- package/dist/session.d.ts +2 -0
- package/dist/session.d.ts.map +1 -0
- package/dist/session.js +58 -29
- package/dist/session.js.map +1 -0
- package/dist/tasks/execution.d.ts +42 -0
- package/dist/tasks/execution.d.ts.map +1 -0
- package/dist/tasks/execution.js +241 -0
- package/dist/tasks/execution.js.map +1 -0
- package/dist/{tasks.d.ts → tasks/manager.d.ts} +12 -0
- package/dist/tasks/manager.d.ts.map +1 -0
- package/dist/{tasks.js → tasks/manager.js} +95 -43
- package/dist/tasks/manager.js.map +1 -0
- package/dist/tasks/owner.d.ts +32 -0
- package/dist/tasks/owner.d.ts.map +1 -0
- package/dist/tasks/owner.js +92 -0
- package/dist/tasks/owner.js.map +1 -0
- package/dist/timer-utils.d.ts +1 -0
- package/dist/timer-utils.d.ts.map +1 -0
- package/dist/timer-utils.js +8 -4
- package/dist/timer-utils.js.map +1 -0
- package/dist/tool-errors.d.ts +12 -0
- package/dist/tool-errors.d.ts.map +1 -0
- package/dist/tool-errors.js +55 -0
- package/dist/tool-errors.js.map +1 -0
- package/dist/tool-pipeline.d.ts +72 -0
- package/dist/tool-pipeline.d.ts.map +1 -0
- package/dist/tool-pipeline.js +408 -0
- package/dist/tool-pipeline.js.map +1 -0
- package/dist/tool-progress.d.ts +32 -0
- package/dist/tool-progress.d.ts.map +1 -0
- package/dist/tool-progress.js +129 -0
- package/dist/tool-progress.js.map +1 -0
- package/dist/tools.d.ts +35 -111
- package/dist/tools.d.ts.map +1 -0
- package/dist/tools.js +150 -610
- package/dist/tools.js.map +1 -0
- package/dist/{transform.d.ts → transform/transform.d.ts} +2 -1
- package/dist/transform/transform.d.ts.map +1 -0
- package/dist/{transform.js → transform/transform.js} +81 -771
- package/dist/transform/transform.js.map +1 -0
- package/dist/{transform-types.d.ts → transform/types.d.ts} +2 -0
- package/dist/transform/types.d.ts.map +1 -0
- package/dist/{transform-types.js → transform/types.js} +1 -0
- package/dist/transform/types.js.map +1 -0
- package/dist/transform/worker-pool.d.ts +93 -0
- package/dist/transform/worker-pool.d.ts.map +1 -0
- package/dist/transform/worker-pool.js +757 -0
- package/dist/transform/worker-pool.js.map +1 -0
- package/dist/transform/workers/transform-child.d.ts +2 -0
- package/dist/transform/workers/transform-child.d.ts.map +1 -0
- package/dist/{workers → transform/workers}/transform-child.js +17 -13
- package/dist/transform/workers/transform-child.js.map +1 -0
- package/dist/transform/workers/transform-worker.d.ts +2 -0
- package/dist/transform/workers/transform-worker.d.ts.map +1 -0
- package/dist/{workers → transform/workers}/transform-worker.js +16 -13
- package/dist/transform/workers/transform-worker.js.map +1 -0
- package/dist/type-guards.d.ts +1 -0
- package/dist/type-guards.d.ts.map +1 -0
- package/dist/type-guards.js +4 -4
- package/dist/type-guards.js.map +1 -0
- package/package.json +6 -7
- package/dist/AGENTS.md +0 -152
- package/dist/http-native.js +0 -1320
- package/dist/instructions.md +0 -113
- package/dist/workers/transform-child.d.ts +0 -1
- package/dist/workers/transform-worker.d.ts +0 -1
package/dist/observability.js
CHANGED
|
@@ -45,7 +45,8 @@ function getRequestContext() {
|
|
|
45
45
|
return requestContext.getStore();
|
|
46
46
|
}
|
|
47
47
|
export function getRequestId() {
|
|
48
|
-
|
|
48
|
+
const context = getRequestContext();
|
|
49
|
+
return context?.requestId;
|
|
49
50
|
}
|
|
50
51
|
function getSessionId() {
|
|
51
52
|
return getRequestContext()?.sessionId;
|
|
@@ -108,12 +109,14 @@ function formatLogEntry(level, message, meta) {
|
|
|
108
109
|
}
|
|
109
110
|
return `[${createTimestamp()}] ${level.toUpperCase()}: ${message}${formatMetadata(meta)}`;
|
|
110
111
|
}
|
|
112
|
+
const LEVEL_PRIORITY = {
|
|
113
|
+
debug: 0,
|
|
114
|
+
info: 1,
|
|
115
|
+
warn: 2,
|
|
116
|
+
error: 3,
|
|
117
|
+
};
|
|
111
118
|
function shouldLog(level) {
|
|
112
|
-
|
|
113
|
-
if (level === 'debug')
|
|
114
|
-
return isDebugEnabled();
|
|
115
|
-
// All other levels always log
|
|
116
|
-
return true;
|
|
119
|
+
return LEVEL_PRIORITY[level] >= LEVEL_PRIORITY[config.logging.level];
|
|
117
120
|
}
|
|
118
121
|
function mapToMcpLevel(level) {
|
|
119
122
|
switch (level) {
|
|
@@ -161,10 +164,13 @@ function writeLog(level, message, meta) {
|
|
|
161
164
|
: mcpServer;
|
|
162
165
|
if (!server)
|
|
163
166
|
return;
|
|
167
|
+
if (!server.isConnected())
|
|
168
|
+
return;
|
|
164
169
|
try {
|
|
165
170
|
server.server
|
|
166
171
|
.sendLoggingMessage({
|
|
167
172
|
level: mapToMcpLevel(level),
|
|
173
|
+
logger: 'fetch-url-mcp',
|
|
168
174
|
// Preserve existing behavior: MCP payload includes only message + provided meta (not ALS context meta).
|
|
169
175
|
data: meta ? { message, ...meta } : message,
|
|
170
176
|
}, sessionId)
|
|
@@ -197,6 +203,25 @@ export function logError(message, error) {
|
|
|
197
203
|
: (error ?? {});
|
|
198
204
|
writeLog('error', message, errorMeta);
|
|
199
205
|
}
|
|
206
|
+
export function setLogLevel(level) {
|
|
207
|
+
const normalized = level.toLowerCase();
|
|
208
|
+
// Map MCP logging levels (RFC 5424 subset) to internal levels.
|
|
209
|
+
if (normalized === 'debug') {
|
|
210
|
+
config.logging.level = 'debug';
|
|
211
|
+
}
|
|
212
|
+
else if (normalized === 'info' || normalized === 'notice') {
|
|
213
|
+
config.logging.level = 'info';
|
|
214
|
+
}
|
|
215
|
+
else if (normalized === 'warning' || normalized === 'warn') {
|
|
216
|
+
config.logging.level = 'warn';
|
|
217
|
+
}
|
|
218
|
+
else if (normalized === 'error' ||
|
|
219
|
+
normalized === 'critical' ||
|
|
220
|
+
normalized === 'alert' ||
|
|
221
|
+
normalized === 'emergency') {
|
|
222
|
+
config.logging.level = 'error';
|
|
223
|
+
}
|
|
224
|
+
}
|
|
200
225
|
export function redactUrl(rawUrl) {
|
|
201
226
|
try {
|
|
202
227
|
const url = new URL(rawUrl);
|
|
@@ -210,3 +235,4 @@ export function redactUrl(rawUrl) {
|
|
|
210
235
|
return rawUrl;
|
|
211
236
|
}
|
|
212
237
|
}
|
|
238
|
+
//# sourceMappingURL=observability.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"observability.js","sourceRoot":"","sources":["../src/observability.ts"],"names":[],"mappings":"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"}
|
package/dist/prompts.d.ts
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prompts.d.ts","sourceRoot":"","sources":["../src/prompts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAGzE,UAAU,QAAQ;IAChB,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;CAClB;AAiBD,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,SAAS,EACjB,YAAY,EAAE,MAAM,EACpB,QAAQ,CAAC,EAAE,QAAQ,GAClB,IAAI,CAwBN"}
|
package/dist/prompts.js
CHANGED
|
@@ -1,10 +1,21 @@
|
|
|
1
|
+
function buildOptionalPromptIcons(iconInfo) {
|
|
2
|
+
return iconInfo
|
|
3
|
+
? {
|
|
4
|
+
icons: [
|
|
5
|
+
{
|
|
6
|
+
src: iconInfo.src,
|
|
7
|
+
mimeType: iconInfo.mimeType,
|
|
8
|
+
},
|
|
9
|
+
],
|
|
10
|
+
}
|
|
11
|
+
: {};
|
|
12
|
+
}
|
|
1
13
|
export function registerGetHelpPrompt(server, instructions, iconInfo) {
|
|
2
|
-
const description = 'Return
|
|
3
|
-
const iconConfig = iconInfo ? { icons: [{ ...iconInfo }] } : {};
|
|
14
|
+
const description = 'Return Fetch URL server instructions: workflows, cache usage, task mode, and error handling.';
|
|
4
15
|
server.registerPrompt('get-help', {
|
|
5
16
|
title: 'Get Help',
|
|
6
17
|
description,
|
|
7
|
-
...
|
|
18
|
+
...buildOptionalPromptIcons(iconInfo),
|
|
8
19
|
}, () => ({
|
|
9
20
|
description,
|
|
10
21
|
messages: [
|
|
@@ -18,3 +29,4 @@ export function registerGetHelpPrompt(server, instructions, iconInfo) {
|
|
|
18
29
|
],
|
|
19
30
|
}));
|
|
20
31
|
}
|
|
32
|
+
//# sourceMappingURL=prompts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prompts.js","sourceRoot":"","sources":["../src/prompts.ts"],"names":[],"mappings":"AAQA,SAAS,wBAAwB,CAC/B,QAAmB;IAEnB,OAAO,QAAQ;QACb,CAAC,CAAC;YACE,KAAK,EAAE;gBACL;oBACE,GAAG,EAAE,QAAQ,CAAC,GAAG;oBACjB,QAAQ,EAAE,QAAQ,CAAC,QAAQ;iBAC5B;aACF;SACF;QACH,CAAC,CAAC,EAAE,CAAC;AACT,CAAC;AAED,MAAM,UAAU,qBAAqB,CACnC,MAAiB,EACjB,YAAoB,EACpB,QAAmB;IAEnB,MAAM,WAAW,GACf,8FAA8F,CAAC;IAEjG,MAAM,CAAC,cAAc,CACnB,UAAU,EACV;QACE,KAAK,EAAE,UAAU;QACjB,WAAW;QACX,GAAG,wBAAwB,CAAC,QAAQ,CAAC;KACtC,EACD,GAAoB,EAAE,CAAC,CAAC;QACtB,WAAW;QACX,QAAQ,EAAE;YACR;gBACE,IAAI,EAAE,MAAM;gBACZ,OAAO,EAAE;oBACP,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,YAAY;iBACnB;aACF;SACF;KACF,CAAC,CACH,CAAC;AACJ,CAAC"}
|
package/dist/resources.d.ts
CHANGED
|
@@ -6,3 +6,4 @@ interface IconInfo {
|
|
|
6
6
|
export declare function registerInstructionResource(server: McpServer, instructions: string, iconInfo?: IconInfo): void;
|
|
7
7
|
export declare function registerCacheResourceTemplate(server: McpServer, iconInfo?: IconInfo): void;
|
|
8
8
|
export {};
|
|
9
|
+
//# sourceMappingURL=resources.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resources.d.ts","sourceRoot":"","sources":["../src/resources.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,SAAS,EAEf,MAAM,yCAAyC,CAAC;AAqBjD,UAAU,QAAQ;IAChB,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;CAClB;AA8VD,wBAAgB,2BAA2B,CACzC,MAAM,EAAE,SAAS,EACjB,YAAY,EAAE,MAAM,EACpB,QAAQ,CAAC,EAAE,QAAQ,GAClB,IAAI,CAwBN;AAED,wBAAgB,6BAA6B,CAC3C,MAAM,EAAE,SAAS,EACjB,QAAQ,CAAC,EAAE,QAAQ,GAClB,IAAI,CA4BN"}
|
package/dist/resources.js
CHANGED
|
@@ -1,14 +1,28 @@
|
|
|
1
1
|
import { ResourceTemplate, } from '@modelcontextprotocol/sdk/server/mcp.js';
|
|
2
2
|
import { ErrorCode, McpError, SubscribeRequestSchema, UnsubscribeRequestSchema, } from '@modelcontextprotocol/sdk/types.js';
|
|
3
|
-
import { get as getCacheEntry, keys as listCacheKeys, onCacheUpdate, parseCachedPayload, parseCacheKey, resolveCachedPayloadContent, } from './cache.js';
|
|
3
|
+
import { get as getCacheEntry, getEntryMeta, keys as listCacheKeys, onCacheUpdate, parseCachedPayload, parseCacheKey, resolveCachedPayloadContent, } from './cache.js';
|
|
4
4
|
import { logWarn } from './observability.js';
|
|
5
5
|
import { isObject } from './type-guards.js';
|
|
6
6
|
const CACHE_RESOURCE_TEMPLATE_URI = 'internal://cache/{namespace}/{hash}';
|
|
7
7
|
const CACHE_RESOURCE_PREFIX = 'internal://cache/';
|
|
8
8
|
const CACHE_NAMESPACE_PATTERN = /^[a-z0-9_-]{1,64}$/i;
|
|
9
9
|
const CACHE_HASH_PATTERN = /^[a-f0-9.]{8,64}$/i;
|
|
10
|
+
// -32002 is the MCP extension code for resource-not-found. The SDK ErrorCode enum
|
|
11
|
+
// does not export this value, so it is defined locally.
|
|
10
12
|
const RESOURCE_NOT_FOUND_ERROR_CODE = -32002;
|
|
11
13
|
const MAX_COMPLETION_VALUES = 100;
|
|
14
|
+
function buildOptionalIcons(iconInfo) {
|
|
15
|
+
if (!iconInfo)
|
|
16
|
+
return {};
|
|
17
|
+
return {
|
|
18
|
+
icons: [
|
|
19
|
+
{
|
|
20
|
+
src: iconInfo.src,
|
|
21
|
+
mimeType: iconInfo.mimeType,
|
|
22
|
+
},
|
|
23
|
+
],
|
|
24
|
+
};
|
|
25
|
+
}
|
|
12
26
|
function isValidCacheResourceParts(parts) {
|
|
13
27
|
return (CACHE_NAMESPACE_PATTERN.test(parts.namespace) &&
|
|
14
28
|
CACHE_HASH_PATTERN.test(parts.hash));
|
|
@@ -115,10 +129,14 @@ function listCacheResources() {
|
|
|
115
129
|
namespace: parts.namespace,
|
|
116
130
|
hash: parts.urlHash,
|
|
117
131
|
};
|
|
132
|
+
const cacheKey = `${parts.namespace}:${parts.urlHash}`;
|
|
133
|
+
const meta = getEntryMeta(cacheKey);
|
|
134
|
+
if (!meta)
|
|
135
|
+
return null; // expired between keys() and meta read — skip
|
|
118
136
|
return {
|
|
119
137
|
uri: toCacheResourceUri(cacheParts),
|
|
120
138
|
name: `${parts.namespace}:${parts.urlHash}`,
|
|
121
|
-
title: 'Cached Markdown',
|
|
139
|
+
title: meta.title ?? 'Cached Markdown',
|
|
122
140
|
description: 'Cached markdown output generated by fetch-url',
|
|
123
141
|
mimeType: 'text/markdown',
|
|
124
142
|
annotations: {
|
|
@@ -126,7 +144,8 @@ function listCacheResources() {
|
|
|
126
144
|
priority: 0.6,
|
|
127
145
|
},
|
|
128
146
|
};
|
|
129
|
-
})
|
|
147
|
+
})
|
|
148
|
+
.filter((r) => r !== null);
|
|
130
149
|
return { resources };
|
|
131
150
|
}
|
|
132
151
|
function normalizeSubscriptionUri(uri) {
|
|
@@ -141,12 +160,21 @@ function normalizeSubscriptionUri(uri) {
|
|
|
141
160
|
}
|
|
142
161
|
function registerCacheResourceNotifications(server) {
|
|
143
162
|
const subscribedResourceUris = new Set();
|
|
163
|
+
const setSubscription = (uri, subscribed) => {
|
|
164
|
+
const normalized = normalizeSubscriptionUri(uri);
|
|
165
|
+
if (subscribed) {
|
|
166
|
+
subscribedResourceUris.add(normalized);
|
|
167
|
+
}
|
|
168
|
+
else {
|
|
169
|
+
subscribedResourceUris.delete(normalized);
|
|
170
|
+
}
|
|
171
|
+
};
|
|
144
172
|
server.server.setRequestHandler(SubscribeRequestSchema, async (request) => {
|
|
145
|
-
|
|
173
|
+
setSubscription(request.params.uri, true);
|
|
146
174
|
return Promise.resolve({});
|
|
147
175
|
});
|
|
148
176
|
server.server.setRequestHandler(UnsubscribeRequestSchema, async (request) => {
|
|
149
|
-
|
|
177
|
+
setSubscription(request.params.uri, false);
|
|
150
178
|
return Promise.resolve({});
|
|
151
179
|
});
|
|
152
180
|
const unsubscribe = onCacheUpdate((event) => {
|
|
@@ -182,11 +210,21 @@ function registerCacheResourceNotifications(server) {
|
|
|
182
210
|
cleanedUp = true;
|
|
183
211
|
unsubscribe();
|
|
184
212
|
};
|
|
213
|
+
// Both patches are intentional and handle distinct disconnection scenarios:
|
|
214
|
+
// • `server.server.onclose` fires when the transport closes unexpectedly
|
|
215
|
+
// (e.g., client drops the connection) — the SDK calls it directly from
|
|
216
|
+
// `_onclose()` without going through `server.close()`.
|
|
217
|
+
// • `server.close()` fires when the application shuts the server down
|
|
218
|
+
// gracefully. The `server.close()` path also eventually triggers `onclose`,
|
|
219
|
+
// so the `cleanedUp` guard below prevents double-invocation.
|
|
185
220
|
const originalOnClose = server.server.onclose;
|
|
186
221
|
server.server.onclose = () => {
|
|
187
222
|
cleanup();
|
|
188
223
|
originalOnClose?.();
|
|
189
224
|
};
|
|
225
|
+
// FIXME: Monkey-patching server.close is fragile if other modules wrap it.
|
|
226
|
+
// A proper fix requires a first-class lifecycle hook or cleanup registration API
|
|
227
|
+
// in the SDK. Until then, the cleanedUp guard prevents double-invocation.
|
|
190
228
|
const originalClose = server.close.bind(server);
|
|
191
229
|
server.close = async () => {
|
|
192
230
|
cleanup();
|
|
@@ -248,16 +286,7 @@ export function registerInstructionResource(server, instructions, iconInfo) {
|
|
|
248
286
|
audience: ['assistant'],
|
|
249
287
|
priority: 0.9,
|
|
250
288
|
},
|
|
251
|
-
...(iconInfo
|
|
252
|
-
? {
|
|
253
|
-
icons: [
|
|
254
|
-
{
|
|
255
|
-
src: iconInfo.src,
|
|
256
|
-
mimeType: iconInfo.mimeType,
|
|
257
|
-
},
|
|
258
|
-
],
|
|
259
|
-
}
|
|
260
|
-
: {}),
|
|
289
|
+
...buildOptionalIcons(iconInfo),
|
|
261
290
|
}, (uri) => ({
|
|
262
291
|
contents: [
|
|
263
292
|
{
|
|
@@ -284,16 +313,8 @@ export function registerCacheResourceTemplate(server, iconInfo) {
|
|
|
284
313
|
audience: ['assistant'],
|
|
285
314
|
priority: 0.6,
|
|
286
315
|
},
|
|
287
|
-
...(iconInfo
|
|
288
|
-
? {
|
|
289
|
-
icons: [
|
|
290
|
-
{
|
|
291
|
-
src: iconInfo.src,
|
|
292
|
-
mimeType: iconInfo.mimeType,
|
|
293
|
-
},
|
|
294
|
-
],
|
|
295
|
-
}
|
|
296
|
-
: {}),
|
|
316
|
+
...buildOptionalIcons(iconInfo),
|
|
297
317
|
}, (uri, variables) => readCacheResource(uri, normalizeTemplateVariables(variables)));
|
|
298
318
|
registerCacheResourceNotifications(server);
|
|
299
319
|
}
|
|
320
|
+
//# sourceMappingURL=resources.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resources.js","sourceRoot":"","sources":["../src/resources.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,gBAAgB,GACjB,MAAM,yCAAyC,CAAC;AACjD,OAAO,EACL,SAAS,EACT,QAAQ,EAER,sBAAsB,EACtB,wBAAwB,GACzB,MAAM,oCAAoC,CAAC;AAE5C,OAAO,EACL,GAAG,IAAI,aAAa,EACpB,YAAY,EACZ,IAAI,IAAI,aAAa,EACrB,aAAa,EACb,kBAAkB,EAClB,aAAa,EACb,2BAA2B,GAC5B,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAkB5C,MAAM,2BAA2B,GAAG,qCAAqC,CAAC;AAC1E,MAAM,qBAAqB,GAAG,mBAAmB,CAAC;AAClD,MAAM,uBAAuB,GAAG,qBAAqB,CAAC;AACtD,MAAM,kBAAkB,GAAG,oBAAoB,CAAC;AAChD,kFAAkF;AAClF,wDAAwD;AACxD,MAAM,6BAA6B,GAAG,CAAC,KAAK,CAAC;AAC7C,MAAM,qBAAqB,GAAG,GAAG,CAAC;AAElC,SAAS,kBAAkB,CACzB,QAAmB;IAEnB,IAAI,CAAC,QAAQ;QAAE,OAAO,EAAE,CAAC;IACzB,OAAO;QACL,KAAK,EAAE;YACL;gBACE,GAAG,EAAE,QAAQ,CAAC,GAAG;gBACjB,QAAQ,EAAE,QAAQ,CAAC,QAAQ;aAC5B;SACF;KACF,CAAC;AACJ,CAAC;AAED,SAAS,yBAAyB,CAAC,KAAyB;IAC1D,OAAO,CACL,uBAAuB,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;QAC7C,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CACpC,CAAC;AACJ,CAAC;AAED,SAAS,aAAa,CAAC,KAAa;IAClC,IAAI,CAAC;QACH,OAAO,kBAAkB,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,SAAS,WAAW,CAAC,KAAa;IAChC,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IAC7B,OAAO,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;AAClD,CAAC;AAED,SAAS,kBAAkB,CAAC,KAA4B;IACtD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,WAAW,CAAC,KAAK,CAAC,CAAC;IAC5B,CAAC;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QACvB,IAAI,OAAO,KAAK,KAAK,QAAQ;YAAE,OAAO,SAAS,CAAC;QAChD,OAAO,WAAW,CAAC,KAAK,CAAC,CAAC;IAC5B,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,+BAA+B,CACtC,SAAgD;IAEhD,MAAM,SAAS,GAAG,kBAAkB,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC;IAC7D,MAAM,IAAI,GAAG,kBAAkB,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;IACnD,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IAErC,MAAM,OAAO,GAAG;QACd,SAAS,EAAE,aAAa,CAAC,SAAS,CAAC;QACnC,IAAI,EAAE,aAAa,CAAC,IAAI,CAAC;KAC1B,CAAC;IAEF,OAAO,yBAAyB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;AAC7D,CAAC;AAED,SAAS,yBAAyB,CAAC,GAAQ;IACzC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,qBAAqB,CAAC;QAAE,OAAO,IAAI,CAAC;IAE7D,MAAM,OAAO,GAAG,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC;QAC1C,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;QACvB,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC;IACjB,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACpC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAEvC,MAAM,SAAS,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAC9B,MAAM,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IACzB,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IAErC,MAAM,OAAO,GAAG;QACd,SAAS,EAAE,aAAa,CAAC,SAAS,CAAC;QACnC,IAAI,EAAE,aAAa,CAAC,IAAI,CAAC;KAC1B,CAAC;IAEF,OAAO,yBAAyB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;AAC7D,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAyB;IACnD,MAAM,SAAS,GAAG,kBAAkB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IACtD,MAAM,IAAI,GAAG,kBAAkB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC5C,OAAO,GAAG,qBAAqB,GAAG,SAAS,IAAI,IAAI,EAAE,CAAC;AACxD,CAAC;AAED,SAAS,mBAAmB;IAC1B,MAAM,UAAU,GAAG,IAAI,GAAG,EAAU,CAAC;IACrC,KAAK,MAAM,GAAG,IAAI,aAAa,EAAE,EAAE,CAAC;QAClC,MAAM,MAAM,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;QAClC,IAAI,CAAC,MAAM;YAAE,SAAS;QACtB,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IACnC,CAAC;IAED,OAAO,CAAC,GAAG,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC;AAC1E,CAAC;AAED,SAAS,uBAAuB,CAAC,KAAa;IAC5C,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC9C,OAAO,mBAAmB,EAAE;SACzB,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;SACrE,KAAK,CAAC,CAAC,EAAE,qBAAqB,CAAC,CAAC;AACrC,CAAC;AAED,SAAS,mBAAmB,CAC1B,KAAa,EACb,OAA2B;IAE3B,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC9C,MAAM,SAAS,GAAG,OAAO,EAAE,SAAS,EAAE,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,CAAC;IAC5D,MAAM,MAAM,GAAG,IAAI,GAAG,EAAU,CAAC;IAEjC,KAAK,MAAM,GAAG,IAAI,aAAa,EAAE,EAAE,CAAC;QAClC,MAAM,MAAM,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;QAClC,IAAI,CAAC,MAAM;YAAE,SAAS;QAEtB,IAAI,SAAS,IAAI,MAAM,CAAC,SAAS,KAAK,SAAS;YAAE,SAAS;QAC1D,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC;YAAE,SAAS;QAEnE,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAC7B,CAAC;IAED,OAAO,CAAC,GAAG,MAAM,CAAC;SACf,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;SAChD,KAAK,CAAC,CAAC,EAAE,qBAAqB,CAAC,CAAC;AACrC,CAAC;AAED,SAAS,kBAAkB;IAUzB,MAAM,SAAS,GAAG,aAAa,EAAE;SAC9B,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;SAChC,MAAM,CAAC,CAAC,KAAK,EAAsC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;SACrE,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;QACb,MAAM,UAAU,GAAuB;YACrC,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,IAAI,EAAE,KAAK,CAAC,OAAO;SACpB,CAAC;QACF,MAAM,QAAQ,GAAG,GAAG,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;QACvD,MAAM,IAAI,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC;QACpC,IAAI,CAAC,IAAI;YAAE,OAAO,IAAI,CAAC,CAAC,8CAA8C;QACtE,OAAO;YACL,GAAG,EAAE,kBAAkB,CAAC,UAAU,CAAC;YACnC,IAAI,EAAE,GAAG,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,OAAO,EAAE;YAC3C,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,iBAAiB;YACtC,WAAW,EAAE,+CAA+C;YAC5D,QAAQ,EAAE,eAAe;YACzB,WAAW,EAAE;gBACX,QAAQ,EAAE,CAAC,WAAW,CAAkB;gBACxC,QAAQ,EAAE,GAAG;aACd;SACF,CAAC;IACJ,CAAC,CAAC;SACD,MAAM,CAAC,CAAC,CAAC,EAA8B,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC;IAEzD,OAAO,EAAE,SAAS,EAAE,CAAC;AACvB,CAAC;AAED,SAAS,wBAAwB,CAAC,GAAW;IAC3C,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QACvB,MAAM,IAAI,QAAQ,CAAC,SAAS,CAAC,aAAa,EAAE,sBAAsB,CAAC,CAAC;IACtE,CAAC;IAED,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;IAC/B,MAAM,UAAU,GAAG,yBAAyB,CAAC,SAAS,CAAC,CAAC;IACxD,IAAI,UAAU;QAAE,OAAO,kBAAkB,CAAC,UAAU,CAAC,CAAC;IAEtD,OAAO,SAAS,CAAC,IAAI,CAAC;AACxB,CAAC;AAED,SAAS,kCAAkC,CAAC,MAAiB;IAC3D,MAAM,sBAAsB,GAAG,IAAI,GAAG,EAAU,CAAC;IAEjD,MAAM,eAAe,GAAG,CAAC,GAAW,EAAE,UAAmB,EAAQ,EAAE;QACjE,MAAM,UAAU,GAAG,wBAAwB,CAAC,GAAG,CAAC,CAAC;QACjD,IAAI,UAAU,EAAE,CAAC;YACf,sBAAsB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QACzC,CAAC;aAAM,CAAC;YACN,sBAAsB,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QAC5C,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC,sBAAsB,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;QACxE,eAAe,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QAC1C,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAC7B,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC,wBAAwB,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;QAC1E,eAAe,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QAC3C,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAC7B,CAAC,CAAC,CAAC;IAEH,MAAM,WAAW,GAAG,aAAa,CAAC,CAAC,KAAK,EAAE,EAAE;QAC1C,MAAM,UAAU,GAAG,kBAAkB,CAAC;YACpC,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,IAAI,EAAE,KAAK,CAAC,OAAO;SACpB,CAAC,CAAC;QAEH,IAAI,MAAM,CAAC,WAAW,EAAE,IAAI,sBAAsB,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;YACnE,KAAK,MAAM,CAAC,MAAM;iBACf,mBAAmB,CAAC,EAAE,GAAG,EAAE,UAAU,EAAE,CAAC;iBACxC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;gBACxB,OAAO,CAAC,8CAA8C,EAAE;oBACtD,GAAG,EAAE,UAAU;oBACf,KAAK;iBACN,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACP,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,WAAW;YAAE,OAAO;QAE/B,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE;YAAE,OAAO;QAElC,IAAI,CAAC;YACH,MAAM,CAAC,uBAAuB,EAAE,CAAC;QACnC,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACxB,OAAO,CAAC,oDAAoD,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QAC3E,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,IAAI,SAAS,GAAG,KAAK,CAAC;IACtB,MAAM,OAAO,GAAG,GAAS,EAAE;QACzB,IAAI,SAAS;YAAE,OAAO;QACtB,SAAS,GAAG,IAAI,CAAC;QACjB,WAAW,EAAE,CAAC;IAChB,CAAC,CAAC;IAEF,4EAA4E;IAC5E,yEAAyE;IACzE,yEAAyE;IACzE,yDAAyD;IACzD,sEAAsE;IACtE,8EAA8E;IAC9E,+DAA+D;IAC/D,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC;IAC9C,MAAM,CAAC,MAAM,CAAC,OAAO,GAAG,GAAG,EAAE;QAC3B,OAAO,EAAE,CAAC;QACV,eAAe,EAAE,EAAE,CAAC;IACtB,CAAC,CAAC;IAEF,2EAA2E;IAC3E,iFAAiF;IACjF,0EAA0E;IAC1E,MAAM,aAAa,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAChD,MAAM,CAAC,KAAK,GAAG,KAAK,IAAmB,EAAE;QACvC,OAAO,EAAE,CAAC;QACV,MAAM,aAAa,EAAE,CAAC;IACxB,CAAC,CAAC;AACJ,CAAC;AAED,SAAS,0BAA0B,CACjC,SAAkB;IAElB,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC;QAAE,OAAO,EAAE,CAAC;IAEpC,MAAM,UAAU,GAA0C,EAAE,CAAC;IAE7D,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;QACrD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACrD,UAAU,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;YACxB,SAAS;QACX,CAAC;QAED,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACzB,UAAU,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM,CAC5B,CAAC,IAAI,EAAkB,EAAE,CAAC,OAAO,IAAI,KAAK,QAAQ,CACnD,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,SAAS,yBAAyB,CAChC,GAAQ,EACR,SAAgD;IAEhD,MAAM,aAAa,GAAG,+BAA+B,CAAC,SAAS,CAAC,CAAC;IACjE,IAAI,aAAa;QAAE,OAAO,aAAa,CAAC;IAExC,MAAM,OAAO,GAAG,yBAAyB,CAAC,GAAG,CAAC,CAAC;IAC/C,IAAI,OAAO;QAAE,OAAO,OAAO,CAAC;IAE5B,MAAM,IAAI,QAAQ,CAChB,SAAS,CAAC,aAAa,EACvB,kDAAkD,CACnD,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CACxB,GAAQ,EACR,SAAgD;IAEhD,MAAM,KAAK,GAAG,yBAAyB,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;IACxD,MAAM,QAAQ,GAAG,GAAG,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;IACpD,MAAM,KAAK,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC;IACtC,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,IAAI,QAAQ,CAAC,6BAA6B,EAAE,oBAAoB,EAAE;YACtE,GAAG,EAAE,GAAG,CAAC,IAAI;SACd,CAAC,CAAC;IACL,CAAC;IAED,MAAM,OAAO,GAAG,kBAAkB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAClD,MAAM,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC,2BAA2B,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACvE,MAAM,IAAI,GAAG,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC;IAEvC,OAAO;QACL,QAAQ,EAAE;YACR;gBACE,GAAG,EAAE,GAAG,CAAC,IAAI;gBACb,QAAQ,EAAE,eAAe;gBACzB,IAAI;aACL;SACF;KACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,2BAA2B,CACzC,MAAiB,EACjB,YAAoB,EACpB,QAAmB;IAEnB,MAAM,CAAC,gBAAgB,CACrB,4BAA4B,EAC5B,yBAAyB,EACzB;QACE,KAAK,EAAE,qBAAqB;QAC5B,WAAW,EAAE,8CAA8C;QAC3D,QAAQ,EAAE,eAAe;QACzB,WAAW,EAAE;YACX,QAAQ,EAAE,CAAC,WAAW,CAAC;YACvB,QAAQ,EAAE,GAAG;SACd;QACD,GAAG,kBAAkB,CAAC,QAAQ,CAAC;KAChC,EACD,CAAC,GAAG,EAAsB,EAAE,CAAC,CAAC;QAC5B,QAAQ,EAAE;YACR;gBACE,GAAG,EAAE,GAAG,CAAC,IAAI;gBACb,QAAQ,EAAE,eAAe;gBACzB,IAAI,EAAE,YAAY;aACnB;SACF;KACF,CAAC,CACH,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,6BAA6B,CAC3C,MAAiB,EACjB,QAAmB;IAEnB,MAAM,QAAQ,GAAG,IAAI,gBAAgB,CAAC,2BAA2B,EAAE;QACjE,IAAI,EAAE,GAAG,EAAE,CAAC,kBAAkB,EAAE;QAChC,QAAQ,EAAE;YACR,SAAS,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,uBAAuB,CAAC,KAAK,CAAC;YACpD,IAAI,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE,CAAC,mBAAmB,CAAC,KAAK,EAAE,OAAO,CAAC;SAC9D;KACF,CAAC,CAAC;IAEH,MAAM,CAAC,gBAAgB,CACrB,2BAA2B,EAC3B,QAAQ,EACR;QACE,KAAK,EAAE,qBAAqB;QAC5B,WAAW,EACT,6DAA6D;QAC/D,QAAQ,EAAE,eAAe;QACzB,WAAW,EAAE;YACX,QAAQ,EAAE,CAAC,WAAW,CAAC;YACvB,QAAQ,EAAE,GAAG;SACd;QACD,GAAG,kBAAkB,CAAC,QAAQ,CAAC;KAChC,EACD,CAAC,GAAG,EAAE,SAAS,EAAsB,EAAE,CACrC,iBAAiB,CAAC,GAAG,EAAE,0BAA0B,CAAC,SAAS,CAAC,CAAC,CAChE,CAAC;IAEF,kCAAkC,CAAC,MAAM,CAAC,CAAC;AAC7C,CAAC"}
|
package/dist/server-tuning.d.ts
CHANGED
|
@@ -12,3 +12,4 @@ interface HttpServerTuningTarget {
|
|
|
12
12
|
export declare function applyHttpServerTuning(server: HttpServerTuningTarget): void;
|
|
13
13
|
export declare function drainConnectionsOnShutdown(server: HttpServerTuningTarget): void;
|
|
14
14
|
export {};
|
|
15
|
+
//# sourceMappingURL=server-tuning.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"server-tuning.d.ts","sourceRoot":"","sources":["../src/server-tuning.ts"],"names":[],"mappings":"AAGA,UAAU,sBAAsB;IAC9B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,EAAE,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,KAAK,IAAI,CAAC;IACrE,oBAAoB,CAAC,EAAE,MAAM,IAAI,CAAC;IAClC,mBAAmB,CAAC,EAAE,MAAM,IAAI,CAAC;CAClC;AAsBD,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,sBAAsB,GAAG,IAAI,CAyC1E;AAED,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,sBAAsB,GAC7B,IAAI,CAKN"}
|
package/dist/server-tuning.js
CHANGED
|
@@ -6,29 +6,24 @@ function setIfDefined(value, setter) {
|
|
|
6
6
|
return;
|
|
7
7
|
setter(value);
|
|
8
8
|
}
|
|
9
|
+
function assignServerValue(server, key, value) {
|
|
10
|
+
setIfDefined(value, (resolved) => {
|
|
11
|
+
server[key] = resolved;
|
|
12
|
+
});
|
|
13
|
+
}
|
|
9
14
|
export function applyHttpServerTuning(server) {
|
|
10
15
|
const { headersTimeoutMs, requestTimeoutMs, keepAliveTimeoutMs, keepAliveTimeoutBufferMs, maxHeadersCount, maxConnections, } = config.server.http;
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
});
|
|
17
|
-
setIfDefined(keepAliveTimeoutMs, (value) => {
|
|
18
|
-
server.keepAliveTimeout = value;
|
|
19
|
-
});
|
|
20
|
-
setIfDefined(keepAliveTimeoutBufferMs, (value) => {
|
|
21
|
-
server.keepAliveTimeoutBuffer = value;
|
|
22
|
-
});
|
|
23
|
-
setIfDefined(maxHeadersCount, (value) => {
|
|
24
|
-
server.maxHeadersCount = value;
|
|
25
|
-
});
|
|
16
|
+
assignServerValue(server, 'headersTimeout', headersTimeoutMs);
|
|
17
|
+
assignServerValue(server, 'requestTimeout', requestTimeoutMs);
|
|
18
|
+
assignServerValue(server, 'keepAliveTimeout', keepAliveTimeoutMs);
|
|
19
|
+
assignServerValue(server, 'keepAliveTimeoutBuffer', keepAliveTimeoutBufferMs);
|
|
20
|
+
assignServerValue(server, 'maxHeadersCount', maxHeadersCount);
|
|
26
21
|
if (typeof maxConnections === 'number' && maxConnections > 0) {
|
|
27
22
|
server.maxConnections = maxConnections;
|
|
28
23
|
if (typeof server.on === 'function') {
|
|
29
24
|
let lastLoggedAt = 0;
|
|
30
25
|
let droppedSinceLastLog = 0;
|
|
31
|
-
|
|
26
|
+
const onDrop = (data) => {
|
|
32
27
|
droppedSinceLastLog += 1;
|
|
33
28
|
const now = Date.now();
|
|
34
29
|
if (now - lastLoggedAt < DROP_LOG_INTERVAL_MS)
|
|
@@ -40,7 +35,8 @@ export function applyHttpServerTuning(server) {
|
|
|
40
35
|
});
|
|
41
36
|
lastLoggedAt = now;
|
|
42
37
|
droppedSinceLastLog = 0;
|
|
43
|
-
}
|
|
38
|
+
};
|
|
39
|
+
server.on('drop', onDrop);
|
|
44
40
|
}
|
|
45
41
|
}
|
|
46
42
|
}
|
|
@@ -50,3 +46,4 @@ export function drainConnectionsOnShutdown(server) {
|
|
|
50
46
|
logDebug('Closed idle HTTP connections during shutdown');
|
|
51
47
|
}
|
|
52
48
|
}
|
|
49
|
+
//# sourceMappingURL=server-tuning.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"server-tuning.js","sourceRoot":"","sources":["../src/server-tuning.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAcvD,MAAM,oBAAoB,GAAG,MAAM,CAAC;AAEpC,SAAS,YAAY,CACnB,KAAoB,EACpB,MAA6B;IAE7B,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO;IAChC,MAAM,CAAC,KAAK,CAAC,CAAC;AAChB,CAAC;AAED,SAAS,iBAAiB,CACxB,MAA8B,EAC9B,GAAM,EACN,KAA4C;IAE5C,YAAY,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE,EAAE;QAC/B,MAAM,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC;IACzB,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,MAA8B;IAClE,MAAM,EACJ,gBAAgB,EAChB,gBAAgB,EAChB,kBAAkB,EAClB,wBAAwB,EACxB,eAAe,EACf,cAAc,GACf,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC;IAEvB,iBAAiB,CAAC,MAAM,EAAE,gBAAgB,EAAE,gBAAgB,CAAC,CAAC;IAC9D,iBAAiB,CAAC,MAAM,EAAE,gBAAgB,EAAE,gBAAgB,CAAC,CAAC;IAC9D,iBAAiB,CAAC,MAAM,EAAE,kBAAkB,EAAE,kBAAkB,CAAC,CAAC;IAClE,iBAAiB,CAAC,MAAM,EAAE,wBAAwB,EAAE,wBAAwB,CAAC,CAAC;IAC9E,iBAAiB,CAAC,MAAM,EAAE,iBAAiB,EAAE,eAAe,CAAC,CAAC;IAE9D,IAAI,OAAO,cAAc,KAAK,QAAQ,IAAI,cAAc,GAAG,CAAC,EAAE,CAAC;QAC7D,MAAM,CAAC,cAAc,GAAG,cAAc,CAAC;QAEvC,IAAI,OAAO,MAAM,CAAC,EAAE,KAAK,UAAU,EAAE,CAAC;YACpC,IAAI,YAAY,GAAG,CAAC,CAAC;YACrB,IAAI,mBAAmB,GAAG,CAAC,CAAC;YAE5B,MAAM,MAAM,GAAG,CAAC,IAAa,EAAQ,EAAE;gBACrC,mBAAmB,IAAI,CAAC,CAAC;gBACzB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;gBACvB,IAAI,GAAG,GAAG,YAAY,GAAG,oBAAoB;oBAAE,OAAO;gBAEtD,OAAO,CAAC,sDAAsD,EAAE;oBAC9D,cAAc;oBACd,OAAO,EAAE,mBAAmB;oBAC5B,IAAI;iBACL,CAAC,CAAC;gBAEH,YAAY,GAAG,GAAG,CAAC;gBACnB,mBAAmB,GAAG,CAAC,CAAC;YAC1B,CAAC,CAAC;YAEF,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC5B,CAAC;IACH,CAAC;AACH,CAAC;AAED,MAAM,UAAU,0BAA0B,CACxC,MAA8B;IAE9B,IAAI,OAAO,MAAM,CAAC,oBAAoB,KAAK,UAAU,EAAE,CAAC;QACtD,MAAM,CAAC,oBAAoB,EAAE,CAAC;QAC9B,QAAQ,CAAC,8CAA8C,CAAC,CAAC;IAC3D,CAAC;AACH,CAAC"}
|
package/dist/server.d.ts
CHANGED
|
@@ -2,3 +2,4 @@ import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
|
|
|
2
2
|
export declare function createMcpServer(): Promise<McpServer>;
|
|
3
3
|
export declare function createMcpServerForHttpSession(): Promise<McpServer>;
|
|
4
4
|
export declare function startStdioServer(): Promise<void>;
|
|
5
|
+
//# sourceMappingURL=server.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAsGpE,wBAAsB,eAAe,IAAI,OAAO,CAAC,SAAS,CAAC,CAE1D;AAoCD,wBAAsB,6BAA6B,IAAI,OAAO,CAAC,SAAS,CAAC,CAExE;AAyFD,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC,CAMtD"}
|
package/dist/server.js
CHANGED
|
@@ -1,18 +1,16 @@
|
|
|
1
|
-
import * as fs from 'node:fs/promises';
|
|
2
|
-
import * as path from 'node:path';
|
|
3
|
-
import process from 'node:process';
|
|
4
|
-
import { fileURLToPath } from 'node:url';
|
|
5
|
-
import { InMemoryTaskMessageQueue, InMemoryTaskStore, } from '@modelcontextprotocol/sdk/experimental/tasks/stores/in-memory.js';
|
|
6
1
|
import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
|
|
7
2
|
import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
|
|
3
|
+
import * as fs from 'node:fs/promises';
|
|
4
|
+
import process from 'node:process';
|
|
5
|
+
import { z } from 'zod';
|
|
8
6
|
import { config } from './config.js';
|
|
9
|
-
import {
|
|
7
|
+
import { buildServerInstructions } from './instructions.js';
|
|
10
8
|
import { abortAllTaskExecutions, registerTaskHandlers } from './mcp.js';
|
|
11
|
-
import { logError, logInfo, setMcpServer } from './observability.js';
|
|
9
|
+
import { logError, logInfo, setLogLevel, setMcpServer, } from './observability.js';
|
|
12
10
|
import { registerGetHelpPrompt } from './prompts.js';
|
|
13
11
|
import { registerCacheResourceTemplate, registerInstructionResource, } from './resources.js';
|
|
14
12
|
import { registerTools } from './tools.js';
|
|
15
|
-
import { shutdownTransformWorkerPool } from './transform.js';
|
|
13
|
+
import { shutdownTransformWorkerPool } from './transform/transform.js';
|
|
16
14
|
async function getLocalIconInfo() {
|
|
17
15
|
const name = 'logo.svg';
|
|
18
16
|
const mime = 'image/svg+xml';
|
|
@@ -28,17 +26,7 @@ async function getLocalIconInfo() {
|
|
|
28
26
|
return undefined;
|
|
29
27
|
}
|
|
30
28
|
}
|
|
31
|
-
const
|
|
32
|
-
let serverInstructions = `
|
|
33
|
-
Fetch URL MCP Instructions
|
|
34
|
-
(Detailed instructions failed to load - check logs)
|
|
35
|
-
`;
|
|
36
|
-
try {
|
|
37
|
-
serverInstructions = await fs.readFile(path.join(currentDir, 'instructions.md'), 'utf-8');
|
|
38
|
-
}
|
|
39
|
-
catch (error) {
|
|
40
|
-
console.error('[WARNING] Failed to load instructions.md:', getErrorMessage(error));
|
|
41
|
-
}
|
|
29
|
+
const serverInstructions = buildServerInstructions();
|
|
42
30
|
function createServerCapabilities() {
|
|
43
31
|
return {
|
|
44
32
|
logging: {},
|
|
@@ -70,9 +58,6 @@ function createServerInfo(icons) {
|
|
|
70
58
|
...(icons ? { icons } : {}),
|
|
71
59
|
};
|
|
72
60
|
}
|
|
73
|
-
function toIconList(icon) {
|
|
74
|
-
return icon ? [icon] : undefined;
|
|
75
|
-
}
|
|
76
61
|
/* -------------------------------------------------------------------------------------------------
|
|
77
62
|
* Server lifecycle
|
|
78
63
|
* ------------------------------------------------------------------------------------------------- */
|
|
@@ -81,17 +66,13 @@ export async function createMcpServer() {
|
|
|
81
66
|
}
|
|
82
67
|
async function createMcpServerWithOptions(options) {
|
|
83
68
|
const localIcon = await getLocalIconInfo();
|
|
84
|
-
const taskStore = new InMemoryTaskStore();
|
|
85
|
-
const taskMessageQueue = new InMemoryTaskMessageQueue();
|
|
86
69
|
const serverConfig = {
|
|
87
70
|
capabilities: createServerCapabilities(),
|
|
88
|
-
taskStore,
|
|
89
|
-
taskMessageQueue,
|
|
90
71
|
};
|
|
91
72
|
if (serverInstructions) {
|
|
92
73
|
serverConfig.instructions = serverInstructions;
|
|
93
74
|
}
|
|
94
|
-
const serverInfo = createServerInfo(
|
|
75
|
+
const serverInfo = createServerInfo(localIcon ? [localIcon] : undefined);
|
|
95
76
|
const server = new McpServer(serverInfo, serverConfig);
|
|
96
77
|
if (options?.registerObservabilityServer ?? true) {
|
|
97
78
|
setMcpServer(server);
|
|
@@ -101,11 +82,25 @@ async function createMcpServerWithOptions(options) {
|
|
|
101
82
|
registerInstructionResource(server, serverInstructions, localIcon);
|
|
102
83
|
registerCacheResourceTemplate(server, localIcon);
|
|
103
84
|
registerTaskHandlers(server);
|
|
85
|
+
registerLoggingSetLevelHandler(server);
|
|
86
|
+
attachServerErrorHandler(server);
|
|
104
87
|
return server;
|
|
105
88
|
}
|
|
106
89
|
export async function createMcpServerForHttpSession() {
|
|
107
90
|
return createMcpServerWithOptions({ registerObservabilityServer: false });
|
|
108
91
|
}
|
|
92
|
+
function registerLoggingSetLevelHandler(server) {
|
|
93
|
+
const SetLevelRequestSchema = z
|
|
94
|
+
.object({
|
|
95
|
+
method: z.literal('logging/setLevel'),
|
|
96
|
+
params: z.object({ level: z.string() }).loose(),
|
|
97
|
+
})
|
|
98
|
+
.loose();
|
|
99
|
+
server.server.setRequestHandler(SetLevelRequestSchema, async (request) => {
|
|
100
|
+
setLogLevel(request.params.level);
|
|
101
|
+
return Promise.resolve({});
|
|
102
|
+
});
|
|
103
|
+
}
|
|
109
104
|
function attachServerErrorHandler(server) {
|
|
110
105
|
server.server.onerror = (error) => {
|
|
111
106
|
logError('[MCP Error]', error instanceof Error ? error : { error });
|
|
@@ -145,12 +140,11 @@ function createShutdownHandler(server) {
|
|
|
145
140
|
};
|
|
146
141
|
}
|
|
147
142
|
function registerSignalHandlers(handler) {
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
});
|
|
143
|
+
for (const signal of ['SIGINT', 'SIGTERM']) {
|
|
144
|
+
process.once(signal, () => {
|
|
145
|
+
handler(signal);
|
|
146
|
+
});
|
|
147
|
+
}
|
|
154
148
|
}
|
|
155
149
|
async function connectStdioServer(server, transport) {
|
|
156
150
|
try {
|
|
@@ -160,14 +154,14 @@ async function connectStdioServer(server, transport) {
|
|
|
160
154
|
catch (error) {
|
|
161
155
|
const err = error instanceof Error ? error : new Error(String(error));
|
|
162
156
|
throw new Error(`Failed to start stdio server: ${err.message}`, {
|
|
163
|
-
cause:
|
|
157
|
+
cause: error,
|
|
164
158
|
});
|
|
165
159
|
}
|
|
166
160
|
}
|
|
167
161
|
export async function startStdioServer() {
|
|
168
162
|
const server = await createMcpServer();
|
|
169
163
|
const transport = new StdioServerTransport();
|
|
170
|
-
attachServerErrorHandler(server);
|
|
171
164
|
registerSignalHandlers(createShutdownHandler(server));
|
|
172
165
|
await connectStdioServer(server, transport);
|
|
173
166
|
}
|
|
167
|
+
//# sourceMappingURL=server.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
package/dist/session.d.ts
CHANGED
|
@@ -6,6 +6,7 @@ export interface SessionEntry {
|
|
|
6
6
|
createdAt: number;
|
|
7
7
|
lastSeen: number;
|
|
8
8
|
protocolInitialized: boolean;
|
|
9
|
+
negotiatedProtocolVersion: string;
|
|
9
10
|
authFingerprint: string;
|
|
10
11
|
}
|
|
11
12
|
export interface SessionStore {
|
|
@@ -38,3 +39,4 @@ export declare function ensureSessionCapacity({ store, maxSessions, evictOldest,
|
|
|
38
39
|
evictOldest: (store: SessionStore) => boolean;
|
|
39
40
|
}): boolean;
|
|
40
41
|
export {};
|
|
42
|
+
//# sourceMappingURL=session.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,oDAAoD,CAAC;AAUxG,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC;IAC3B,QAAQ,CAAC,SAAS,EAAE,6BAA6B,CAAC;IAClD,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,mBAAmB,EAAE,OAAO,CAAC;IAC7B,yBAAyB,EAAE,MAAM,CAAC;IAClC,eAAe,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,YAAY,GAAG,SAAS,CAAC;IACrD,KAAK,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,GAAG,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,KAAK,IAAI,CAAC;IACtD,MAAM,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,YAAY,GAAG,SAAS,CAAC;IACxD,IAAI,EAAE,MAAM,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,MAAM,CAAC;IACvB,iBAAiB,EAAE,MAAM,IAAI,CAAC;IAC9B,iBAAiB,EAAE,MAAM,IAAI,CAAC;IAC9B,KAAK,EAAE,MAAM,YAAY,EAAE,CAAC;IAC5B,YAAY,EAAE,MAAM,YAAY,EAAE,CAAC;IACnC,WAAW,EAAE,MAAM,YAAY,GAAG,SAAS,CAAC;CAC7C;AAED,UAAU,WAAW;IACnB,QAAQ,CAAC,WAAW,EAAE,MAAM,IAAI,CAAC;IACjC,QAAQ,CAAC,eAAe,EAAE,MAAM,IAAI,CAAC;IACrC,QAAQ,CAAC,aAAa,EAAE,MAAM,OAAO,CAAC;CACvC;AAED,KAAK,YAAY,GAAG,CAAC,MAAM,IAAI,CAAC,GAAG,SAAS,CAAC;AAE7C,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,YAAY,EACnB,MAAM,EAAE,YAAY,GACnB,YAAY,CAWd;AA4ID,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,YAAY,EACnB,YAAY,EAAE,MAAM,GACnB,eAAe,CAEjB;AAmGD,wBAAgB,kBAAkB,CAAC,YAAY,EAAE,MAAM,GAAG,YAAY,CAErE;AAuBD,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,YAAY,GAAG,WAAW,CAElE;AAMD,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,YAAY,EACnB,WAAW,EAAE,MAAM,GAClB,OAAO,CAMT;AAMD,wBAAgB,qBAAqB,CAAC,EACpC,KAAK,EACL,WAAW,EACX,WAAW,GACZ,EAAE;IACD,KAAK,EAAE,YAAY,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,OAAO,CAAC;CAC/C,GAAG,OAAO,CAeV"}
|