@j0hanz/fetch-url-mcp 1.2.0 → 1.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cache.d.ts +9 -3
- package/dist/cache.d.ts.map +1 -0
- package/dist/cache.js +44 -110
- 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 +9 -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 +18 -25
- 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 +1 -0
- 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 +8 -4
- 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 +1 -0
- 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 +14 -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 +6 -3
- 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 +120 -51
- 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 +19 -6
- package/dist/host-normalization.js.map +1 -0
- package/dist/http/auth.d.ts +35 -0
- package/dist/http/auth.d.ts.map +1 -0
- package/dist/http/auth.js +283 -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 +166 -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 +372 -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 +529 -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 +81 -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 +2 -1
- 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 +108 -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 +2 -0
- 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 +19 -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 +1 -0
- 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 +51 -52
- 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 +16 -8
- 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 +17 -333
- 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 +30 -5
- 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 +30 -23
- 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 +11 -15
- 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 +23 -23
- package/dist/server.js.map +1 -0
- package/dist/session.d.ts +1 -0
- package/dist/session.d.ts.map +1 -0
- package/dist/session.js +55 -28
- 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 +232 -0
- package/dist/tasks/execution.js.map +1 -0
- package/dist/{tasks.d.ts → tasks/manager.d.ts} +6 -0
- package/dist/tasks/manager.d.ts.map +1 -0
- package/dist/{tasks.js → tasks/manager.js} +86 -37
- package/dist/tasks/manager.js.map +1 -0
- package/dist/tasks/owner.d.ts +33 -0
- package/dist/tasks/owner.d.ts.map +1 -0
- package/dist/tasks/owner.js +99 -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 +12 -5
- 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 +52 -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 +407 -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 +123 -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 +93 -566
- 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} +73 -769
- package/dist/transform/transform.js.map +1 -0
- package/dist/{transform-types.d.ts → transform/types.d.ts} +1 -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 +759 -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 +3 -1
- 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 +2 -1
- 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 +1 -0
- 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
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":""}
|
package/dist/index.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import process from 'node:process';
|
|
3
3
|
import { parseCliArgs, renderCliUsage } from './cli.js';
|
|
4
4
|
import { serverVersion } from './config.js';
|
|
5
|
-
import { startHttpServer } from './http
|
|
5
|
+
import { startHttpServer } from './http/native.js';
|
|
6
6
|
import { logError } from './observability.js';
|
|
7
7
|
import { startStdioServer } from './server.js';
|
|
8
8
|
const FORCE_EXIT_TIMEOUT_MS = 10_000;
|
|
@@ -92,3 +92,4 @@ catch (error) {
|
|
|
92
92
|
process.exitCode = 1;
|
|
93
93
|
scheduleForcedExit('Startup failure');
|
|
94
94
|
}
|
|
95
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"instructions.d.ts","sourceRoot":"","sources":["../src/instructions.ts"],"names":[],"mappings":"AAGA,wBAAgB,uBAAuB,IAAI,MAAM,CAwGhD"}
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
import { config } from './config.js';
|
|
2
|
+
import { FETCH_URL_TOOL_NAME } from './tools.js';
|
|
3
|
+
export function buildServerInstructions() {
|
|
4
|
+
return `# FETCH-URL INSTRUCTIONS
|
|
5
|
+
|
|
6
|
+
Available as resource (\`internal://instructions\`) or prompt (\`get-help\`). Load when unsure about tool usage.
|
|
7
|
+
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
## CORE CAPABILITY
|
|
11
|
+
|
|
12
|
+
- Domain: Fetch public web pages and convert HTML to clean, LLM-readable Markdown.
|
|
13
|
+
- Primary Resources: Markdown content, cached snapshots (\`internal://cache/{namespace}/{hash}\`).
|
|
14
|
+
- Tools: \`${FETCH_URL_TOOL_NAME}\` (READ-ONLY; no write tools exist).
|
|
15
|
+
|
|
16
|
+
---
|
|
17
|
+
|
|
18
|
+
## PROMPTS
|
|
19
|
+
|
|
20
|
+
- \`get-help\`: Returns these instructions for quick recall.
|
|
21
|
+
|
|
22
|
+
---
|
|
23
|
+
|
|
24
|
+
## RESOURCES & RESOURCE LINKS
|
|
25
|
+
|
|
26
|
+
- \`internal://instructions\`: This document.
|
|
27
|
+
- \`internal://cache/{namespace}/{hash}\`: Ephemeral cached Markdown from previous calls. Use the \`cacheResourceUri\` from tool responses with \`resources/read\` to retrieve full content. Supports \`resources/subscribe\` for change notifications.
|
|
28
|
+
|
|
29
|
+
---
|
|
30
|
+
|
|
31
|
+
## PROGRESS & TASKS
|
|
32
|
+
|
|
33
|
+
- Include \`_meta.progressToken\` in requests to receive \`notifications/progress\` updates during fetch.
|
|
34
|
+
- Task-augmented tool calls are supported for \`${FETCH_URL_TOOL_NAME}\`:
|
|
35
|
+
- These tools declare \`execution.taskSupport: "optional"\` — invoke normally or as a task.
|
|
36
|
+
- Send \`tools/call\` with \`task\` to get a task id.
|
|
37
|
+
- Poll \`tasks/get\` until status is \`completed\` or \`failed\`.
|
|
38
|
+
- Use \`tasks/cancel\` to abort.
|
|
39
|
+
- Task data is stored in memory and cleared on restart.
|
|
40
|
+
|
|
41
|
+
---
|
|
42
|
+
|
|
43
|
+
## THE "GOLDEN PATH" WORKFLOWS (CRITICAL)
|
|
44
|
+
|
|
45
|
+
### WORKFLOW A: STANDARD FETCH
|
|
46
|
+
|
|
47
|
+
1. Call \`${FETCH_URL_TOOL_NAME}\` with \`{ "url": "https://..." }\`.
|
|
48
|
+
2. Read the \`markdown\` field from \`structuredContent\`.
|
|
49
|
+
3. If \`truncated\` is \`true\`: use \`cacheResourceUri\` from \`structuredContent\` with \`resources/read\` to get full content.
|
|
50
|
+
NOTE: Never guess URIs; always use values returned in responses.
|
|
51
|
+
|
|
52
|
+
### WORKFLOW B: FRESH CONTENT (BYPASS CACHE)
|
|
53
|
+
|
|
54
|
+
1. Call \`${FETCH_URL_TOOL_NAME}\` with \`{ "url": "https://...", "forceRefresh": true }\`.
|
|
55
|
+
2. Read the \`markdown\` field.
|
|
56
|
+
NOTE: Use \`forceRefresh\` only when stale content is suspected. Cached responses are faster.
|
|
57
|
+
|
|
58
|
+
### WORKFLOW C: FULL-FIDELITY FETCH (PRESERVE NOISE)
|
|
59
|
+
|
|
60
|
+
1. Call \`${FETCH_URL_TOOL_NAME}\` with \`{ "url": "https://...", "skipNoiseRemoval": true }\`.
|
|
61
|
+
2. Read the \`markdown\` field — navigation, footers, and sidebars are preserved.
|
|
62
|
+
NOTE: Use this when page structure (nav, footer) is relevant to the task.
|
|
63
|
+
|
|
64
|
+
### WORKFLOW D: ASYNC EXECUTION (LARGE SITES / TIMEOUTS)
|
|
65
|
+
|
|
66
|
+
Add \`task: { ttl: <ms> }\` to the \`tools/call\` request; poll \`tasks/get\` until \`completed\` or \`failed\`; then call \`tasks/result\`.
|
|
67
|
+
|
|
68
|
+
---
|
|
69
|
+
|
|
70
|
+
## TOOL BEHAVIOR & GOTCHAS
|
|
71
|
+
|
|
72
|
+
\`${FETCH_URL_TOOL_NAME}\`
|
|
73
|
+
|
|
74
|
+
- Purpose: Fetch a URL and return Markdown. Input/output schemas are available via MCP tool discovery.
|
|
75
|
+
- Side effects: None (read-only, idempotent). Populates the in-memory cache automatically.
|
|
76
|
+
- \`cacheResourceUri\`: Present when cache key generation succeeds; use with \`resources/read\` for full content retrieval.
|
|
77
|
+
- \`resolvedUrl\`: GitHub, GitLab, and Bitbucket URLs are auto-transformed to raw content endpoints. Check this field to see what was actually fetched.
|
|
78
|
+
- \`truncated\`: When \`true\`, inline \`markdown\` was cut to fit the inline limit. Use \`cacheResourceUri\` with \`resources/read\` for the full content.
|
|
79
|
+
- \`maxInlineChars\`: Set to \`0\` for unlimited inline content (default). When both a per-call and global limit exist, the lower value wins.
|
|
80
|
+
- Does not execute client-side JavaScript. Content requiring JS rendering may be incomplete.
|
|
81
|
+
- HTML capped at ${config.constants.maxHtmlSize / 1024 / 1024} MB (\`MAX_HTML_BYTES\`). Inline content unlimited by default; set \`MAX_INLINE_CONTENT_CHARS\` env var to cap.
|
|
82
|
+
- Error responses: read \`code\` (\`VALIDATION_ERROR\`, \`FETCH_ERROR\`, \`HTTP_xxx\`, \`ABORTED\`, \`queue_full\`) and \`statusCode\` from \`content[0]\` JSON for programmatic routing.
|
|
83
|
+
|
|
84
|
+
---
|
|
85
|
+
|
|
86
|
+
## CONSTRAINTS & LIMITATIONS
|
|
87
|
+
|
|
88
|
+
- **Blocked URLs:** localhost, private IPs (\`10.x\`, \`172.16–31.x\`, \`192.168.x\`), cloud metadata endpoints (\`169.254.169.254\`, \`metadata.google.internal\`, etc.), \`.local\`/\`.internal\` suffixes.
|
|
89
|
+
- **Max HTML size:** ${config.constants.maxHtmlSize / 1024 / 1024} MB per fetch.
|
|
90
|
+
- **Cache:** In-memory LRU — max ${config.cache.maxKeys} entries, ${config.cache.maxSizeBytes / 1024 / 1024} MB total, ${config.cache.ttl / 3600} hour TTL. Lost on process restart.
|
|
91
|
+
- **No JavaScript execution:** Pages relying on client-side rendering may yield incomplete Markdown.
|
|
92
|
+
- **Binary files:** Not supported — only HTML content is processed.
|
|
93
|
+
- **Redirects:** Max ${config.fetcher.maxRedirects} redirects followed automatically.
|
|
94
|
+
|
|
95
|
+
---
|
|
96
|
+
|
|
97
|
+
## ERROR HANDLING STRATEGY
|
|
98
|
+
|
|
99
|
+
Error responses include a \`code\` field for programmatic routing:
|
|
100
|
+
|
|
101
|
+
- \`VALIDATION_ERROR\`: URL invalid or blocked (private IP, metadata endpoint). Do not retry — fix the URL.
|
|
102
|
+
- \`FETCH_ERROR\`: Network/upstream failure (DNS, connection refused, timeout). Retry once with backoff.
|
|
103
|
+
- \`HTTP_{status}\` (e.g. \`HTTP_404\`, \`HTTP_500\`): Upstream returned an HTTP error. Check \`statusCode\` and \`details\` fields. Retry only for 5xx errors.
|
|
104
|
+
- \`ABORTED\`: Request was cancelled (timeout or task cancellation). Retry if the operation is still needed.
|
|
105
|
+
- \`queue_full\`: Worker pool busy (concurrent transforms). Wait briefly, then retry or use the Task interface.
|
|
106
|
+
`;
|
|
107
|
+
}
|
|
108
|
+
//# sourceMappingURL=instructions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"instructions.js","sourceRoot":"","sources":["../src/instructions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAEjD,MAAM,UAAU,uBAAuB;IACrC,OAAO;;;;;;;;;;aAUI,mBAAmB;;;;;;;;;;;;;;;;;;;;kDAoBkB,mBAAmB;;;;;;;;;;;;;YAazD,mBAAmB;;;;;;;YAOnB,mBAAmB;;;;;;YAMnB,mBAAmB;;;;;;;;;;;;IAY3B,mBAAmB;;;;;;;;;mBASJ,MAAM,CAAC,SAAS,CAAC,WAAW,GAAG,IAAI,GAAG,IAAI;;;;;;;;uBAQtC,MAAM,CAAC,SAAS,CAAC,WAAW,GAAG,IAAI,GAAG,IAAI;mCAC9B,MAAM,CAAC,KAAK,CAAC,OAAO,aAAa,MAAM,CAAC,KAAK,CAAC,YAAY,GAAG,IAAI,GAAG,IAAI,cAAc,MAAM,CAAC,KAAK,CAAC,GAAG,GAAG,IAAI;;;uBAGzH,MAAM,CAAC,OAAO,CAAC,YAAY;;;;;;;;;;;;;CAajD,CAAC;AACF,CAAC"}
|
package/dist/ip-blocklist.d.ts
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ip-blocklist.d.ts","sourceRoot":"","sources":["../src/ip-blocklist.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAQ,MAAM,UAAU,CAAC;AAE3C,KAAK,QAAQ,GAAG,MAAM,GAAG,MAAM,CAAC;AAkDhC,wBAAgB,sBAAsB,IAAI,SAAS,CAMlD;AAcD,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,MAAM,GACZ;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,QAAQ,CAAA;CAAE,GAAG,IAAI,CAezC"}
|
package/dist/ip-blocklist.js
CHANGED
|
@@ -34,6 +34,7 @@ const BLOCKED_SUBNETS = [
|
|
|
34
34
|
{ subnet: IPV6_FC00, prefix: 7, family: 'ipv6' },
|
|
35
35
|
{ subnet: IPV6_FE80, prefix: 10, family: 'ipv6' },
|
|
36
36
|
{ subnet: IPV6_FF00, prefix: 8, family: 'ipv6' },
|
|
37
|
+
{ subnet: '::', prefix: 96, family: 'ipv6' },
|
|
37
38
|
];
|
|
38
39
|
export function createDefaultBlockList() {
|
|
39
40
|
const list = new BlockList();
|
|
@@ -72,3 +73,4 @@ export function normalizeIpForBlockList(input) {
|
|
|
72
73
|
}
|
|
73
74
|
return null;
|
|
74
75
|
}
|
|
76
|
+
//# sourceMappingURL=ip-blocklist.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ip-blocklist.js","sourceRoot":"","sources":["../src/ip-blocklist.ts"],"names":[],"mappings":"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"}
|
package/dist/json.d.ts
CHANGED
|
@@ -1 +1,2 @@
|
|
|
1
|
-
export declare function stableStringify(obj: unknown, depth?: number, seen?: WeakSet<
|
|
1
|
+
export declare function stableStringify(obj: unknown, depth?: number, seen?: WeakSet<WeakKey>): string;
|
|
2
|
+
//# sourceMappingURL=json.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"json.d.ts","sourceRoot":"","sources":["../src/json.ts"],"names":[],"mappings":"AA4DA,wBAAgB,eAAe,CAC7B,GAAG,EAAE,OAAO,EACZ,KAAK,SAAI,EACT,IAAI,mBAAgB,GACnB,MAAM,CAGR"}
|
package/dist/json.js
CHANGED
|
@@ -1,27 +1,39 @@
|
|
|
1
1
|
const MAX_DEPTH = 20;
|
|
2
|
+
const MAX_DEPTH_ERROR = `stableStringify: Max depth (${MAX_DEPTH}) exceeded`;
|
|
3
|
+
const CIRCULAR_ERROR = 'stableStringify: Circular reference detected';
|
|
4
|
+
function compareObjectKeys(a, b) {
|
|
5
|
+
if (a === b)
|
|
6
|
+
return 0;
|
|
7
|
+
return a < b ? -1 : 1;
|
|
8
|
+
}
|
|
9
|
+
function getSortedObjectKeys(obj) {
|
|
10
|
+
return Object.keys(obj).sort(compareObjectKeys);
|
|
11
|
+
}
|
|
12
|
+
function processChildValue(value, depth, seen) {
|
|
13
|
+
return processValue(value, depth + 1, seen);
|
|
14
|
+
}
|
|
2
15
|
function processValue(obj, depth, seen) {
|
|
3
16
|
if (typeof obj !== 'object' || obj === null) {
|
|
4
17
|
return obj;
|
|
5
18
|
}
|
|
6
19
|
// Depth guard
|
|
7
20
|
if (depth > MAX_DEPTH) {
|
|
8
|
-
throw new Error(
|
|
21
|
+
throw new Error(MAX_DEPTH_ERROR);
|
|
9
22
|
}
|
|
10
23
|
// Cycle detection (track active recursion stack only).
|
|
11
24
|
if (seen.has(obj)) {
|
|
12
|
-
throw new Error(
|
|
25
|
+
throw new Error(CIRCULAR_ERROR);
|
|
13
26
|
}
|
|
14
27
|
seen.add(obj);
|
|
15
28
|
try {
|
|
16
|
-
const processChild = (value) => processValue(value, depth + 1, seen);
|
|
17
29
|
if (Array.isArray(obj)) {
|
|
18
|
-
return obj.map((item) =>
|
|
30
|
+
return obj.map((item) => processChildValue(item, depth, seen));
|
|
19
31
|
}
|
|
20
|
-
const keys =
|
|
32
|
+
const keys = getSortedObjectKeys(obj);
|
|
21
33
|
const record = obj;
|
|
22
34
|
const sortedObj = {};
|
|
23
35
|
for (const key of keys) {
|
|
24
|
-
sortedObj[key] =
|
|
36
|
+
sortedObj[key] = processChildValue(record[key], depth, seen);
|
|
25
37
|
}
|
|
26
38
|
return sortedObj;
|
|
27
39
|
}
|
|
@@ -33,3 +45,4 @@ export function stableStringify(obj, depth = 0, seen = new WeakSet()) {
|
|
|
33
45
|
const processed = processValue(obj, depth, seen);
|
|
34
46
|
return JSON.stringify(processed);
|
|
35
47
|
}
|
|
48
|
+
//# sourceMappingURL=json.js.map
|
package/dist/json.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"json.js","sourceRoot":"","sources":["../src/json.ts"],"names":[],"mappings":"AAAA,MAAM,SAAS,GAAG,EAAE,CAAC;AACrB,MAAM,eAAe,GAAG,+BAA+B,SAAS,YAAY,CAAC;AAC7E,MAAM,cAAc,GAAG,8CAA8C,CAAC;AAEtE,SAAS,iBAAiB,CAAC,CAAS,EAAE,CAAS;IAC7C,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,CAAC,CAAC;IACtB,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACxB,CAAC;AAED,SAAS,mBAAmB,CAAC,GAAW;IACtC,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;AAClD,CAAC;AAED,SAAS,iBAAiB,CACxB,KAAc,EACd,KAAa,EACb,IAAqB;IAErB,OAAO,YAAY,CAAC,KAAK,EAAE,KAAK,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC;AAC9C,CAAC;AAED,SAAS,YAAY,CACnB,GAAY,EACZ,KAAa,EACb,IAAqB;IAErB,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;QAC5C,OAAO,GAAG,CAAC;IACb,CAAC;IAED,cAAc;IACd,IAAI,KAAK,GAAG,SAAS,EAAE,CAAC;QACtB,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;IACnC,CAAC;IAED,uDAAuD;IACvD,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,CAAC;IAClC,CAAC;IACD,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAEd,IAAI,CAAC;QACH,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YACvB,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,iBAAiB,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;QACjE,CAAC;QAED,MAAM,IAAI,GAAG,mBAAmB,CAAC,GAAG,CAAC,CAAC;QACtC,MAAM,MAAM,GAAG,GAA8B,CAAC;QAC9C,MAAM,SAAS,GAA4B,EAAE,CAAC;QAE9C,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,SAAS,CAAC,GAAG,CAAC,GAAG,iBAAiB,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;QAC/D,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;YAAS,CAAC;QACT,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACnB,CAAC;AACH,CAAC;AAED,MAAM,UAAU,eAAe,CAC7B,GAAY,EACZ,KAAK,GAAG,CAAC,EACT,IAAI,GAAG,IAAI,OAAO,EAAE;IAEpB,MAAM,SAAS,GAAG,YAAY,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IACjD,OAAO,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;AACnC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"language-detection.d.ts","sourceRoot":"","sources":["../src/language-detection.ts"],"names":[],"mappings":"AAwWA,wBAAgB,6BAA6B,CAC3C,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,GACf,MAAM,GAAG,SAAS,CAKpB;AAED,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CA6BvE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"language-detection.js","sourceRoot":"","sources":["../src/language-detection.ts"],"names":[],"mappings":"AAAA,yFAAyF;AACzF,MAAM,gBAAgB;IAKC;IAJb,MAAM,CAAqB;IAC3B,MAAM,CAAgC;IACtC,aAAa,CAAqB;IAE1C,YAAqB,IAAY;QAAZ,SAAI,GAAJ,IAAI,CAAQ;IAAG,CAAC;IAErC,IAAI,KAAK;QACP,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;QACxC,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,IAAI,KAAK;QACP,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACzC,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,IAAI,YAAY;QACd,IAAI,CAAC,aAAa,KAAK,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;QAC7C,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;CACF;AAED,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC;IAC5B,MAAM;IACN,OAAO;IACP,OAAO;IACP,IAAI;IACJ,IAAI;IACJ,KAAK;IACL,MAAM;CACP,CAAC,CAAC;AAEH,MAAM,qBAAqB,GAAG;IAC5B,KAAK;IACL,MAAM;IACN,MAAM;IACN,KAAK;IACL,MAAM;IACN,KAAK;IACL,KAAK;IACL,OAAO;IACP,IAAI;CACI,CAAC;AAEX,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,CAAC,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;AAExE,MAAM,gBAAgB,GAAG;IACvB,UAAU;IACV,SAAS;IACT,UAAU;IACV,SAAS;IACT,WAAW;IACX,UAAU;IACV,QAAQ;IACR,OAAO;IACP,OAAO;IACP,MAAM;IACN,WAAW;IACX,UAAU;IACV,SAAS;IACT,QAAQ;CACT,CAAC;AAEF,MAAM,SAAS,GAAG;IAChB,WAAW;IACX,OAAO;IACP,OAAO;IACP,OAAO;IACP,MAAM;IACN,OAAO;IACP,IAAI;IACJ,IAAI;IACJ,SAAS;IACT,QAAQ;CACT,CAAC;AAEF,MAAM,UAAU,GAAG,6BAA6B,CAAC;AACjD,MAAM,QAAQ,GACZ,gEAAgE,CAAC;AACnE,MAAM,mBAAmB,GACvB,gEAAgE,CAAC;AACnE,MAAM,eAAe,GACnB,iEAAiE,CAAC;AACpE,MAAM,SAAS,GAAG,2BAA2B,CAAC;AAC9C,MAAM,kBAAkB,GAAG,qBAAqB,CAAC;AAEjD,SAAS,cAAc,CAAC,IAAY;IAClC,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC;IACxB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QACjC,IAAI,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,OAAO,EAAE,CAAC;YACtC,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YACpC,IAAI,IAAI,IAAI,EAAE,IAAI,IAAI,IAAI,EAAE;gBAAE,OAAO,IAAI,CAAC,CAAC,MAAM;QACnD,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,UAAU,CAAC,IAAY;IAC9B,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;IACjC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAEvC,eAAe;IACf,IACE,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC;QACxB,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC;QACxB,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,EACxB,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACtC,MAAM,SAAS,GAAG,QAAQ,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;IAEzE,IAAI,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC;QAAE,OAAO,IAAI,CAAC;IAE9C,mBAAmB;IACnB,IAAI,QAAQ,GAAG,KAAK,CAAC;IACrB,KAAK,MAAM,GAAG,IAAI,qBAAqB,EAAE,CAAC;QACxC,IAAI,SAAS,KAAK,GAAG,EAAE,CAAC;YACtB,QAAQ,GAAG,IAAI,CAAC;YAChB,MAAM;QACR,CAAC;IACH,CAAC;IAED,IAAI,QAAQ,IAAI,QAAQ,KAAK,CAAC,CAAC,EAAE,CAAC;QAChC,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;QACzC,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACzC,MAAM,UAAU,GACd,cAAc,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC;QAC/D,IAAI,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC;YAAE,OAAO,IAAI,CAAC;IAC9C,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,oBAAoB,CAAC,KAAwB;IACpD,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;AAChD,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAwB;IAClD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QACjC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE,SAAS;QAEnC,MAAM,WAAW,GACf,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;YACpD,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QAExB,IAAI,WAAW;YAAE,OAAO,IAAI,CAAC;QAC7B,IACE,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC;YACrB,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC;YAChC,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,EACtB,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAwB;IACnD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QAC5B,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE,SAAS;QAEnC,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACtC,IAAI,QAAQ,IAAI,CAAC;YAAE,SAAS;QAE5B,MAAM,KAAK,GAAG,OAAO,CAAC,UAAU,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;QAC/C,wBAAwB;QACxB,IAAI,KAAK,KAAK,EAAE,IAAI,KAAK,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;IAC/C,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAWD,MAAM,SAAS,GAAkB;IAC/B;QACE,IAAI,EAAE,MAAM;QACZ,MAAM,EAAE,EAAE;QACV,KAAK,EAAE,CAAC,GAAG,EAAE,EAAE;YACb,IAAI,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC;gBAAE,OAAO,IAAI,CAAC;YAC/C,IAAI,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;gBAAE,OAAO,IAAI,CAAC;YAC5C,OAAO,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAChE,CAAC;KACF;IACD;QACE,IAAI,EAAE,IAAI;QACV,MAAM,EAAE,EAAE;QACV,KAAK,EAAE,CAAC,GAAG,EAAE,EAAE;YACb,IAAI,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC;gBAAE,OAAO,IAAI,CAAC;YAChD,OAAO,sBAAsB,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAChD,CAAC;KACF;IACD;QACE,IAAI,EAAE,KAAK;QACX,MAAM,EAAE,EAAE;QACV,KAAK,EAAE,CAAC,GAAG,EAAE,EAAE;YACb,MAAM,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC;YACpB,IACE,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC;gBACxB,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC;gBAClB,CAAC,CAAC,QAAQ,CAAC,cAAc,CAAC;gBAC1B,CAAC,CAAC,QAAQ,CAAC,cAAc,CAAC,EAC1B,CAAC;gBACD,OAAO,IAAI,CAAC;YACd,CAAC;YACD,OAAO,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAClC,CAAC;KACF;IACD;QACE,IAAI,EAAE,YAAY;QAClB,MAAM,EAAE,EAAE;QACV,KAAK,EAAE,CAAC,GAAG,EAAE,EAAE;YACb,IAAI,wBAAwB,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;gBAAE,OAAO,IAAI,CAAC;YAC1D,MAAM,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC;YACpB,KAAK,MAAM,IAAI,IAAI,gBAAgB,EAAE,CAAC;gBACpC,IAAI,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;oBAAE,OAAO,IAAI,CAAC;YACpC,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;KACF;IACD;QACE,IAAI,EAAE,KAAK;QACX,MAAM,EAAE,EAAE;QACV,KAAK,EAAE,CAAC,GAAG,EAAE,EAAE;YACb,MAAM,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC;YACpB,OAAO,uDAAuD,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACzE,CAAC;KACF;IACD;QACE,IAAI,EAAE,QAAQ;QACd,MAAM,EAAE,EAAE;QACV,KAAK,EAAE,CAAC,GAAG,EAAE,EAAE;YACb,MAAM,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC;YACpB,IAAI,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC;gBAAE,OAAO,IAAI,CAAC;YAChE,IAAI,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC;gBAAE,OAAO,IAAI,CAAC;YAC5D,0FAA0F;YAC1F,IACE,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;gBACzB,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;gBACzB,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,EAC1B,CAAC;gBACD,OAAO,IAAI,CAAC;YACd,CAAC;YACD,8CAA8C;YAC9C,IAAI,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC;gBAAE,OAAO,IAAI,CAAC;YAC7C,8EAA8E;YAC9E,IACE,2BAA2B,CAAC,IAAI,CAAC,CAAC,CAAC;gBACnC,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC;gBACxB,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC;gBAChB,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,EACrB,CAAC;gBACD,OAAO,IAAI,CAAC;YACd,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;KACF;IACD;QACE,IAAI,EAAE,KAAK;QACX,MAAM,EAAE,EAAE;QACV,KAAK,EAAE,CAAC,GAAG,EAAE,EAAE;YACb,IAAI,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;gBAAE,OAAO,IAAI,CAAC;YAC3C,OAAO,kBAAkB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACvC,CAAC;KACF;IACD;QACE,IAAI,EAAE,MAAM;QACZ,MAAM,EAAE,EAAE;QACV,KAAK,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,oBAAoB,CAAC,GAAG,CAAC,KAAK,CAAC;KAChD;IACD;QACE,IAAI,EAAE,MAAM;QACZ,MAAM,EAAE,EAAE;QACV,KAAK,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,mBAAmB,CAAC,GAAG,CAAC,KAAK,CAAC;KAC/C;IACD;QACE,IAAI,EAAE,YAAY;QAClB,MAAM,EAAE,EAAE;QACV,KAAK,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;KACzC;IACD;QACE,IAAI,EAAE,MAAM;QACZ,MAAM,EAAE,EAAE;QACV,KAAK,EAAE,CAAC,GAAG,EAAE,EAAE;YACb,MAAM,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC;YACpB,KAAK,MAAM,GAAG,IAAI,SAAS,EAAE,CAAC;gBAC5B,IAAI,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC;oBAAE,OAAO,IAAI,CAAC;YACnC,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;KACF;IACD;QACE,IAAI,EAAE,MAAM;QACZ,MAAM,EAAE,EAAE;QACV,KAAK,EAAE,CAAC,GAAG,EAAE,EAAE;YACb,MAAM,CAAC,GAAG,GAAG,CAAC,YAAY,CAAC;YAC3B,OAAO,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;QAChD,CAAC;KACF;CACF,CAAC;AAEF,SAAS,4BAA4B,CAAC,SAAiB;IACrD,IAAI,CAAC,SAAS;QAAE,OAAO,SAAS,CAAC;IAEjC,wDAAwD;IACxD,MAAM,MAAM,GAAG,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACvC,IAAI,CAAC,MAAM;QAAE,OAAO,SAAS,CAAC;IAE9B,gCAAgC;IAChC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,MAAM,KAAK,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;QAClC,IAAI,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC;YAAE,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACzD,IAAI,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC;YAAE,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACrD,IAAI,KAAK,CAAC,UAAU,CAAC,YAAY,CAAC;YAAE,OAAO,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAC7D,CAAC;IAED,mCAAmC;IACnC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;QAAE,OAAO,SAAS,CAAC;IAE/C,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;QAClC,MAAM,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC;QAC1B,OAAO,CAAC,KAAK,MAAM,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IAChD,CAAC,CAAC,CAAC;IACH,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,gCAAgC,CACvC,QAAgB;IAEhB,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC;IAChC,IAAI,CAAC,OAAO;QAAE,OAAO,SAAS,CAAC;IAE/B,eAAe;IACf,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACxC,MAAM,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QAChC,0BAA0B;QAC1B,MAAM,OAAO,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;QACnC,MAAM,OAAO,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,GAAG,CAAC;QACpC,MAAM,OAAO,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;QACnC,MAAM,OAAO,GAAG,CAAC,KAAK,EAAE,CAAC;QAEzB,IAAI,CAAC,OAAO,IAAI,CAAC,OAAO,IAAI,CAAC,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC;YACjD,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,6BAA6B,CAC3C,SAAiB,EACjB,QAAgB;IAEhB,OAAO,CACL,4BAA4B,CAAC,SAAS,CAAC;QACvC,gCAAgC,CAAC,QAAQ,CAAC,CAC3C,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,IAAY;IACjD,IAAI,CAAC,IAAI;QAAE,OAAO,SAAS,CAAC;IAE5B,sCAAsC;IACtC,IAAI,KAAK,GAAG,IAAI,CAAC;IACjB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,IAAI,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC;YAC5B,KAAK,GAAG,KAAK,CAAC;YACd,MAAM;QACR,CAAC;IACH,CAAC;IACD,IAAI,KAAK;QAAE,OAAO,SAAS,CAAC;IAE5B,MAAM,GAAG,GAAG,IAAI,gBAAgB,CAAC,IAAI,CAAC,CAAC;IAEvC,IAAI,QAA4B,CAAC;IACjC,IAAI,SAAS,GAAG,CAAC,CAAC,CAAC;IAEnB,KAAK,MAAM,GAAG,IAAI,SAAS,EAAE,CAAC;QAC5B,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;YACnB,IAAI,GAAG,CAAC,MAAM,GAAG,SAAS,EAAE,CAAC;gBAC3B,SAAS,GAAG,GAAG,CAAC,MAAM,CAAC;gBACvB,QAAQ,GAAG,GAAG,CAAC,IAAI,CAAC;gBACpB,IAAI,SAAS,IAAI,EAAE;oBAAE,MAAM;YAC7B,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { MetadataBlock } from './transform
|
|
1
|
+
import type { MetadataBlock } from './transform/types.js';
|
|
2
2
|
interface CleanupOptions {
|
|
3
3
|
signal?: AbortSignal;
|
|
4
4
|
url?: string;
|
|
@@ -9,3 +9,4 @@ export declare function addSourceToMarkdown(content: string, url: string): strin
|
|
|
9
9
|
export declare function isRawTextContent(content: string): boolean;
|
|
10
10
|
export declare function buildMetadataFooter(metadata?: MetadataBlock, fallbackUrl?: string): string;
|
|
11
11
|
export {};
|
|
12
|
+
//# sourceMappingURL=markdown-cleanup.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"markdown-cleanup.d.ts","sourceRoot":"","sources":["../src/markdown-cleanup.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAsD1D,UAAU,cAAc;IACtB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AA4SD,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,cAAc,GACvB,MAAM,CA6DR;AAoHD,wBAAgB,2BAA2B,CACzC,OAAO,EAAE,MAAM,GACd,MAAM,GAAG,SAAS,CAOpB;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAmCxE;AAgBD,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAczD;AAeD,wBAAgB,mBAAmB,CACjC,QAAQ,CAAC,EAAE,aAAa,EACxB,WAAW,CAAC,EAAE,MAAM,GACnB,MAAM,CAmBR"}
|
package/dist/markdown-cleanup.js
CHANGED
|
@@ -46,6 +46,13 @@ function throwIfAborted(signal, url, stage) {
|
|
|
46
46
|
stage,
|
|
47
47
|
});
|
|
48
48
|
}
|
|
49
|
+
function createAbortChecker(options) {
|
|
50
|
+
const signal = options?.signal;
|
|
51
|
+
const url = options?.url ?? '';
|
|
52
|
+
return (stage) => {
|
|
53
|
+
throwIfAborted(signal, url, stage);
|
|
54
|
+
};
|
|
55
|
+
}
|
|
49
56
|
// --- Helper Functions ---
|
|
50
57
|
function getLineEnding(content) {
|
|
51
58
|
return content.includes('\r\n') ? '\r\n' : '\n';
|
|
@@ -200,6 +207,7 @@ function preprocessLines(lines, options) {
|
|
|
200
207
|
const len = lines.length;
|
|
201
208
|
const promote = config.markdownCleanup.promoteOrphanHeadings;
|
|
202
209
|
const removeToc = config.markdownCleanup.removeTocBlocks;
|
|
210
|
+
const checkAbort = createAbortChecker(options);
|
|
203
211
|
let skipUntil = -1;
|
|
204
212
|
for (let i = 0; i < len; i++) {
|
|
205
213
|
if (i < skipUntil)
|
|
@@ -216,7 +224,7 @@ function preprocessLines(lines, options) {
|
|
|
216
224
|
continue;
|
|
217
225
|
}
|
|
218
226
|
if (promote && trimmed.length > 0) {
|
|
219
|
-
|
|
227
|
+
checkAbort('markdown:cleanup:promote');
|
|
220
228
|
const promoted = tryPromoteOrphan(lines, i, trimmed);
|
|
221
229
|
if (promoted)
|
|
222
230
|
line = promoted;
|
|
@@ -234,14 +242,15 @@ function processTextBuffer(lines, options) {
|
|
|
234
242
|
}
|
|
235
243
|
function applyGlobalRegexes(text, options) {
|
|
236
244
|
let result = text;
|
|
237
|
-
|
|
245
|
+
const checkAbort = createAbortChecker(options);
|
|
246
|
+
checkAbort('markdown:cleanup:headings');
|
|
238
247
|
// fixAndSpaceHeadings
|
|
239
248
|
result = result
|
|
240
249
|
.replace(REGEX.HEADING_SPACING, '$1\n\n$2')
|
|
241
250
|
.replace(REGEX.HEADING_CODE_BLOCK, '$1\n\n```')
|
|
242
251
|
.replace(REGEX.HEADING_CAMEL_CASE, '$1\n\n$2');
|
|
243
252
|
if (config.markdownCleanup.removeTypeDocComments) {
|
|
244
|
-
|
|
253
|
+
checkAbort('markdown:cleanup:typedoc');
|
|
245
254
|
result = result
|
|
246
255
|
.split('\n')
|
|
247
256
|
.filter((line) => !isTypeDocArtifactLine(line))
|
|
@@ -249,12 +258,12 @@ function applyGlobalRegexes(text, options) {
|
|
|
249
258
|
result = result.replace(REGEX.TYPEDOC_COMMENT, (match) => match.startsWith('`') ? match : '');
|
|
250
259
|
}
|
|
251
260
|
if (config.markdownCleanup.removeSkipLinks) {
|
|
252
|
-
|
|
261
|
+
checkAbort('markdown:cleanup:skip-links');
|
|
253
262
|
result = result
|
|
254
263
|
.replace(REGEX.ZERO_WIDTH_ANCHOR, '')
|
|
255
264
|
.replace(REGEX.COMBINED_LINE_REMOVALS, '');
|
|
256
265
|
}
|
|
257
|
-
|
|
266
|
+
checkAbort('markdown:cleanup:spacing');
|
|
258
267
|
// normalizeSpacing
|
|
259
268
|
result = result
|
|
260
269
|
.replace(REGEX.SPACING_LINK_FIX, ']($1)\n\n[')
|
|
@@ -264,7 +273,7 @@ function applyGlobalRegexes(text, options) {
|
|
|
264
273
|
.replace(REGEX.SPACING_LIST_NUM_COMBINED, '$1\n\n$2')
|
|
265
274
|
.replace(REGEX.DOUBLE_NEWLINE_REDUCER, '\n\n');
|
|
266
275
|
result = normalizeNestedListIndentation(result);
|
|
267
|
-
|
|
276
|
+
checkAbort('markdown:cleanup:properties');
|
|
268
277
|
// fixProperties
|
|
269
278
|
for (let k = 0; k < 3; k++) {
|
|
270
279
|
const next = result.replace(REGEX.CONCATENATED_PROPS, '$1$2\n\n$3');
|
|
@@ -283,65 +292,54 @@ function normalizeNestedListIndentation(text) {
|
|
|
283
292
|
return `${normalized}${marker} `;
|
|
284
293
|
});
|
|
285
294
|
}
|
|
286
|
-
function findNextLine(content, lastIndex, len) {
|
|
287
|
-
let nextIndex = content.indexOf('\n', lastIndex);
|
|
288
|
-
let line;
|
|
289
|
-
if (nextIndex === -1) {
|
|
290
|
-
line = content.slice(lastIndex);
|
|
291
|
-
nextIndex = len;
|
|
292
|
-
}
|
|
293
|
-
else {
|
|
294
|
-
if (nextIndex > lastIndex && content.charCodeAt(nextIndex - 1) === 13) {
|
|
295
|
-
line = content.slice(lastIndex, nextIndex - 1);
|
|
296
|
-
}
|
|
297
|
-
else {
|
|
298
|
-
line = content.slice(lastIndex, nextIndex);
|
|
299
|
-
}
|
|
300
|
-
nextIndex++; // Skip \n
|
|
301
|
-
}
|
|
302
|
-
return { line, nextIndex };
|
|
303
|
-
}
|
|
304
|
-
function checkFenceStart(line) {
|
|
305
|
-
const match = REGEX.FENCE_START.exec(line);
|
|
306
|
-
return match ? (match[1] ?? '```') : null;
|
|
307
|
-
}
|
|
308
|
-
function isFenceClosure(trimmed, marker) {
|
|
309
|
-
return (trimmed.startsWith(marker) && trimmed.slice(marker.length).trim() === '');
|
|
310
|
-
}
|
|
311
|
-
function handleFencedLine(line, trimmed, fenceMarker, segments) {
|
|
312
|
-
segments.push(line);
|
|
313
|
-
return isFenceClosure(trimmed, fenceMarker) ? null : fenceMarker;
|
|
314
|
-
}
|
|
315
|
-
function handleUnfencedLine(line, segments, buffer, options) {
|
|
316
|
-
const newMarker = checkFenceStart(line);
|
|
317
|
-
if (!newMarker) {
|
|
318
|
-
buffer.push(line);
|
|
319
|
-
return { fenceMarker: null, buffer };
|
|
320
|
-
}
|
|
321
|
-
if (buffer.length > 0) {
|
|
322
|
-
segments.push(processTextBuffer(buffer, options));
|
|
323
|
-
buffer = [];
|
|
324
|
-
}
|
|
325
|
-
segments.push(line);
|
|
326
|
-
return { fenceMarker: newMarker, buffer };
|
|
327
|
-
}
|
|
328
295
|
export function cleanupMarkdownArtifacts(content, options) {
|
|
329
296
|
if (!content)
|
|
330
297
|
return '';
|
|
331
|
-
|
|
298
|
+
const checkAbort = createAbortChecker(options);
|
|
299
|
+
checkAbort('markdown:cleanup:begin');
|
|
332
300
|
const len = content.length;
|
|
333
301
|
let lastIndex = 0;
|
|
334
302
|
let fenceMarker = null;
|
|
335
303
|
const segments = [];
|
|
336
304
|
let buffer = [];
|
|
337
305
|
while (lastIndex < len) {
|
|
338
|
-
|
|
306
|
+
let nextIndex = content.indexOf('\n', lastIndex);
|
|
307
|
+
let line;
|
|
308
|
+
if (nextIndex === -1) {
|
|
309
|
+
line = content.slice(lastIndex);
|
|
310
|
+
nextIndex = len;
|
|
311
|
+
}
|
|
312
|
+
else {
|
|
313
|
+
if (nextIndex > lastIndex && content.charCodeAt(nextIndex - 1) === 13) {
|
|
314
|
+
line = content.slice(lastIndex, nextIndex - 1);
|
|
315
|
+
}
|
|
316
|
+
else {
|
|
317
|
+
line = content.slice(lastIndex, nextIndex);
|
|
318
|
+
}
|
|
319
|
+
nextIndex++; // Skip \n
|
|
320
|
+
}
|
|
339
321
|
const trimmed = line.trimStart();
|
|
340
322
|
if (fenceMarker) {
|
|
341
|
-
|
|
323
|
+
segments.push(line);
|
|
324
|
+
if (trimmed.startsWith(fenceMarker) &&
|
|
325
|
+
trimmed.slice(fenceMarker.length).trim() === '') {
|
|
326
|
+
fenceMarker = null;
|
|
327
|
+
}
|
|
342
328
|
}
|
|
343
329
|
else {
|
|
344
|
-
|
|
330
|
+
const match = REGEX.FENCE_START.exec(line);
|
|
331
|
+
const newMarker = match ? (match[1] ?? '```') : null;
|
|
332
|
+
if (!newMarker) {
|
|
333
|
+
buffer.push(line);
|
|
334
|
+
}
|
|
335
|
+
else {
|
|
336
|
+
if (buffer.length > 0) {
|
|
337
|
+
segments.push(processTextBuffer(buffer, options));
|
|
338
|
+
buffer = [];
|
|
339
|
+
}
|
|
340
|
+
segments.push(line);
|
|
341
|
+
fenceMarker = newMarker;
|
|
342
|
+
}
|
|
345
343
|
}
|
|
346
344
|
lastIndex = nextIndex;
|
|
347
345
|
}
|
|
@@ -534,3 +532,4 @@ export function buildMetadataFooter(metadata, fallbackUrl) {
|
|
|
534
532
|
lines.push(` <sub>${metadata.description}</sub>`);
|
|
535
533
|
return lines.join('\n');
|
|
536
534
|
}
|
|
535
|
+
//# sourceMappingURL=markdown-cleanup.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"markdown-cleanup.js","sourceRoot":"","sources":["../src/markdown-cleanup.ts"],"names":[],"mappings":"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"}
|
package/dist/mcp-validator.d.ts
CHANGED
|
@@ -14,3 +14,4 @@ export declare function isMcpRequestBody(body: unknown): body is McpRequestBody;
|
|
|
14
14
|
export declare function acceptsEventStream(header: string | null | undefined): boolean;
|
|
15
15
|
export declare function acceptsJsonAndEventStream(header: string | null | undefined): boolean;
|
|
16
16
|
export {};
|
|
17
|
+
//# sourceMappingURL=mcp-validator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcp-validator.d.ts","sourceRoot":"","sources":["../src/mcp-validator.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;AAE/C,UAAU,gBAAgB;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,UAAU,cAAc;IACtB,OAAO,EAAE,KAAK,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,EAAE,CAAC,EAAE,SAAS,CAAC;IACf,MAAM,CAAC,EAAE,gBAAgB,CAAC;CAC3B;AAYD,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,CAE5D;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,IAAI,cAAc,CAEtE;AAgBD,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,CAG7E;AAgBD,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAChC,OAAO,CAUT"}
|
package/dist/mcp-validator.js
CHANGED
|
@@ -13,17 +13,23 @@ export function isJsonRpcBatchRequest(body) {
|
|
|
13
13
|
export function isMcpRequestBody(body) {
|
|
14
14
|
return mcpRequestSchema.safeParse(body).success;
|
|
15
15
|
}
|
|
16
|
-
function
|
|
16
|
+
function parseAcceptMediaTypes(header) {
|
|
17
17
|
if (!header)
|
|
18
18
|
return [];
|
|
19
|
-
return header
|
|
19
|
+
return header
|
|
20
|
+
.split(',')
|
|
21
|
+
.map((value) => extractAcceptMediaType(value.trim()))
|
|
22
|
+
.filter((value) => value.length > 0);
|
|
23
|
+
}
|
|
24
|
+
function extractAcceptMediaType(value) {
|
|
25
|
+
return value.split(';', 1)[0]?.trim().toLowerCase() ?? '';
|
|
20
26
|
}
|
|
21
27
|
export function acceptsEventStream(header) {
|
|
22
|
-
|
|
28
|
+
const mediaTypes = parseAcceptMediaTypes(header);
|
|
29
|
+
return mediaTypes.some((mediaType) => mediaType === 'text/event-stream');
|
|
23
30
|
}
|
|
24
|
-
function hasAcceptedMediaType(
|
|
25
|
-
return
|
|
26
|
-
const mediaType = rawPart.trim().split(';', 1)[0]?.trim().toLowerCase();
|
|
31
|
+
function hasAcceptedMediaType(mediaTypes, exact, wildcardPrefix) {
|
|
32
|
+
return mediaTypes.some((mediaType) => {
|
|
27
33
|
if (!mediaType)
|
|
28
34
|
return false;
|
|
29
35
|
if (mediaType === '*/*')
|
|
@@ -36,8 +42,10 @@ function hasAcceptedMediaType(header, exact, wildcardPrefix) {
|
|
|
36
42
|
});
|
|
37
43
|
}
|
|
38
44
|
export function acceptsJsonAndEventStream(header) {
|
|
39
|
-
const
|
|
45
|
+
const mediaTypes = parseAcceptMediaTypes(header);
|
|
46
|
+
const acceptsJson = hasAcceptedMediaType(mediaTypes, 'application/json', 'application/*');
|
|
40
47
|
if (!acceptsJson)
|
|
41
48
|
return false;
|
|
42
|
-
return hasAcceptedMediaType(
|
|
49
|
+
return hasAcceptedMediaType(mediaTypes, 'text/event-stream', 'text/*');
|
|
43
50
|
}
|
|
51
|
+
//# sourceMappingURL=mcp-validator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcp-validator.js","sourceRoot":"","sources":["../src/mcp-validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAkBxB,qBAAqB;AAErB,MAAM,YAAY,GAAG,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;AACvC,MAAM,gBAAgB,GAAG,CAAC,CAAC,YAAY,CAAC;IACtC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC;IACzB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACzB,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE;IAChD,MAAM,EAAE,YAAY,CAAC,QAAQ,EAAE;CAChC,CAAC,CAAC;AAEH,MAAM,UAAU,qBAAqB,CAAC,IAAa;IACjD,OAAO,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;AAC7B,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,IAAa;IAC5C,OAAO,gBAAgB,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC;AAClD,CAAC;AAED,SAAS,qBAAqB,CAC5B,MAAiC;IAEjC,IAAI,CAAC,MAAM;QAAE,OAAO,EAAE,CAAC;IACvB,OAAO,MAAM;SACV,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,sBAAsB,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;SACpD,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AACzC,CAAC;AAED,SAAS,sBAAsB,CAAC,KAAa;IAC3C,OAAO,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC;AAC5D,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,MAAiC;IAClE,MAAM,UAAU,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAC;IACjD,OAAO,UAAU,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,KAAK,mBAAmB,CAAC,CAAC;AAC3E,CAAC;AAED,SAAS,oBAAoB,CAC3B,UAA6B,EAC7B,KAAa,EACb,cAAsB;IAEtB,OAAO,UAAU,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE;QACnC,IAAI,CAAC,SAAS;YAAE,OAAO,KAAK,CAAC;QAC7B,IAAI,SAAS,KAAK,KAAK;YAAE,OAAO,IAAI,CAAC;QACrC,IAAI,SAAS,KAAK,KAAK;YAAE,OAAO,IAAI,CAAC;QACrC,IAAI,SAAS,KAAK,cAAc;YAAE,OAAO,IAAI,CAAC;QAC9C,OAAO,KAAK,CAAC;IACf,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,yBAAyB,CACvC,MAAiC;IAEjC,MAAM,UAAU,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAC;IACjD,MAAM,WAAW,GAAG,oBAAoB,CACtC,UAAU,EACV,kBAAkB,EAClB,eAAe,CAChB,CAAC;IACF,IAAI,CAAC,WAAW;QAAE,OAAO,KAAK,CAAC;IAE/B,OAAO,oBAAoB,CAAC,UAAU,EAAE,mBAAmB,EAAE,QAAQ,CAAC,CAAC;AACzE,CAAC"}
|
package/dist/mcp.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
|
|
2
|
-
export
|
|
3
|
-
export declare function abortAllTaskExecutions(): void;
|
|
2
|
+
export { cancelTasksForOwner, abortAllTaskExecutions, } from './tasks/execution.js';
|
|
4
3
|
export declare function registerTaskHandlers(server: McpServer): void;
|
|
4
|
+
//# sourceMappingURL=mcp.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcp.d.ts","sourceRoot":"","sources":["../src/mcp.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AA+BzE,OAAO,EACL,mBAAmB,EACnB,sBAAsB,GACvB,MAAM,sBAAsB,CAAC;AA2F9B,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAoH5D"}
|