integrate-sdk 0.9.14-dev.0 → 0.9.16-dev.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/adapters/index.js +24 -0
- package/dist/adapters/solid-start.js +24 -0
- package/dist/adapters/svelte-kit.js +24 -0
- package/dist/ai/anthropic.js +8 -1
- package/dist/ai/google.js +8 -1
- package/dist/ai/index.js +8 -1
- package/dist/ai/openai.js +8 -1
- package/dist/ai/vercel-ai.js +8 -1
- package/dist/code-mode/executor.js +8 -1
- package/dist/code-mode/index.js +8 -1
- package/dist/code-mode/runtime-stub.d.ts +1 -1
- package/dist/code-mode/runtime-stub.d.ts.map +1 -1
- package/dist/code-mode/runtime-stub.js +8 -1
- package/dist/code-mode/tool-builder.js +8 -1
- package/dist/index.js +23 -0
- package/dist/server.js +95 -29
- package/dist/src/client.d.ts.map +1 -1
- package/dist/src/code-mode/runtime-stub.d.ts +1 -1
- package/dist/src/code-mode/runtime-stub.d.ts.map +1 -1
- package/dist/src/oauth/manager.d.ts +12 -0
- package/dist/src/oauth/manager.d.ts.map +1 -1
- package/dist/src/server.d.ts +2 -0
- package/dist/src/server.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/adapters/index.js
CHANGED
|
@@ -2555,6 +2555,28 @@ class OAuthManager {
|
|
|
2555
2555
|
}
|
|
2556
2556
|
this.loadAllProviderTokens(providers).catch(() => {});
|
|
2557
2557
|
}
|
|
2558
|
+
loadTokensFromEnvVar() {
|
|
2559
|
+
try {
|
|
2560
|
+
if (typeof process === "undefined" || !process.env?.PROVIDER_TOKENS) {
|
|
2561
|
+
return;
|
|
2562
|
+
}
|
|
2563
|
+
const parsed = JSON.parse(process.env.PROVIDER_TOKENS);
|
|
2564
|
+
if (!parsed || typeof parsed !== "object" || Array.isArray(parsed)) {
|
|
2565
|
+
logger6.warn("PROVIDER_TOKENS env var is set but is not a JSON object — skipping");
|
|
2566
|
+
return;
|
|
2567
|
+
}
|
|
2568
|
+
for (const [provider, token] of Object.entries(parsed)) {
|
|
2569
|
+
if (typeof token === "string") {
|
|
2570
|
+
this.providerTokens.set(provider, {
|
|
2571
|
+
accessToken: token,
|
|
2572
|
+
tokenType: "Bearer",
|
|
2573
|
+
expiresIn: 0
|
|
2574
|
+
});
|
|
2575
|
+
logger6.debug(`Loaded token for ${provider} from PROVIDER_TOKENS env var`);
|
|
2576
|
+
}
|
|
2577
|
+
}
|
|
2578
|
+
} catch {}
|
|
2579
|
+
}
|
|
2558
2580
|
savePendingAuthToStorage(state, pendingAuth) {
|
|
2559
2581
|
if (typeof window !== "undefined" && window.localStorage) {
|
|
2560
2582
|
try {
|
|
@@ -2819,6 +2841,7 @@ class MCPClientBase {
|
|
|
2819
2841
|
logger7.error("Failed to load provider tokens:", error);
|
|
2820
2842
|
});
|
|
2821
2843
|
} else {
|
|
2844
|
+
this.oauthManager.loadTokensFromEnvVar();
|
|
2822
2845
|
this.oauthManager.loadAllProviderTokensSync(providers);
|
|
2823
2846
|
for (const integration of this.integrations) {
|
|
2824
2847
|
if (integration.oauth) {
|
|
@@ -3674,6 +3697,7 @@ init_tool_builder();
|
|
|
3674
3697
|
var SERVER_LOG_CONTEXT3 = "server";
|
|
3675
3698
|
var logger31 = createLogger("MCPServer", SERVER_LOG_CONTEXT3);
|
|
3676
3699
|
var codeVerifierStorage = new Map;
|
|
3700
|
+
var unauthenticatedCodeModeWarnings = new Set;
|
|
3677
3701
|
function toSolidStartHandler(clientOrHandlerOrOptions, _redirectOptions) {
|
|
3678
3702
|
if (clientOrHandlerOrOptions && clientOrHandlerOrOptions.handler && typeof clientOrHandlerOrOptions.handler === "function") {
|
|
3679
3703
|
const baseHandler = clientOrHandlerOrOptions.handler;
|
|
@@ -2555,6 +2555,28 @@ class OAuthManager {
|
|
|
2555
2555
|
}
|
|
2556
2556
|
this.loadAllProviderTokens(providers).catch(() => {});
|
|
2557
2557
|
}
|
|
2558
|
+
loadTokensFromEnvVar() {
|
|
2559
|
+
try {
|
|
2560
|
+
if (typeof process === "undefined" || !process.env?.PROVIDER_TOKENS) {
|
|
2561
|
+
return;
|
|
2562
|
+
}
|
|
2563
|
+
const parsed = JSON.parse(process.env.PROVIDER_TOKENS);
|
|
2564
|
+
if (!parsed || typeof parsed !== "object" || Array.isArray(parsed)) {
|
|
2565
|
+
logger6.warn("PROVIDER_TOKENS env var is set but is not a JSON object — skipping");
|
|
2566
|
+
return;
|
|
2567
|
+
}
|
|
2568
|
+
for (const [provider, token] of Object.entries(parsed)) {
|
|
2569
|
+
if (typeof token === "string") {
|
|
2570
|
+
this.providerTokens.set(provider, {
|
|
2571
|
+
accessToken: token,
|
|
2572
|
+
tokenType: "Bearer",
|
|
2573
|
+
expiresIn: 0
|
|
2574
|
+
});
|
|
2575
|
+
logger6.debug(`Loaded token for ${provider} from PROVIDER_TOKENS env var`);
|
|
2576
|
+
}
|
|
2577
|
+
}
|
|
2578
|
+
} catch {}
|
|
2579
|
+
}
|
|
2558
2580
|
savePendingAuthToStorage(state, pendingAuth) {
|
|
2559
2581
|
if (typeof window !== "undefined" && window.localStorage) {
|
|
2560
2582
|
try {
|
|
@@ -2819,6 +2841,7 @@ class MCPClientBase {
|
|
|
2819
2841
|
logger7.error("Failed to load provider tokens:", error);
|
|
2820
2842
|
});
|
|
2821
2843
|
} else {
|
|
2844
|
+
this.oauthManager.loadTokensFromEnvVar();
|
|
2822
2845
|
this.oauthManager.loadAllProviderTokensSync(providers);
|
|
2823
2846
|
for (const integration of this.integrations) {
|
|
2824
2847
|
if (integration.oauth) {
|
|
@@ -3674,6 +3697,7 @@ init_tool_builder();
|
|
|
3674
3697
|
var SERVER_LOG_CONTEXT3 = "server";
|
|
3675
3698
|
var logger31 = createLogger("MCPServer", SERVER_LOG_CONTEXT3);
|
|
3676
3699
|
var codeVerifierStorage = new Map;
|
|
3700
|
+
var unauthenticatedCodeModeWarnings = new Set;
|
|
3677
3701
|
function toSolidStartHandler(clientOrHandlerOrOptions, _redirectOptions) {
|
|
3678
3702
|
if (clientOrHandlerOrOptions && clientOrHandlerOrOptions.handler && typeof clientOrHandlerOrOptions.handler === "function") {
|
|
3679
3703
|
const baseHandler = clientOrHandlerOrOptions.handler;
|
|
@@ -2555,6 +2555,28 @@ class OAuthManager {
|
|
|
2555
2555
|
}
|
|
2556
2556
|
this.loadAllProviderTokens(providers).catch(() => {});
|
|
2557
2557
|
}
|
|
2558
|
+
loadTokensFromEnvVar() {
|
|
2559
|
+
try {
|
|
2560
|
+
if (typeof process === "undefined" || !process.env?.PROVIDER_TOKENS) {
|
|
2561
|
+
return;
|
|
2562
|
+
}
|
|
2563
|
+
const parsed = JSON.parse(process.env.PROVIDER_TOKENS);
|
|
2564
|
+
if (!parsed || typeof parsed !== "object" || Array.isArray(parsed)) {
|
|
2565
|
+
logger6.warn("PROVIDER_TOKENS env var is set but is not a JSON object — skipping");
|
|
2566
|
+
return;
|
|
2567
|
+
}
|
|
2568
|
+
for (const [provider, token] of Object.entries(parsed)) {
|
|
2569
|
+
if (typeof token === "string") {
|
|
2570
|
+
this.providerTokens.set(provider, {
|
|
2571
|
+
accessToken: token,
|
|
2572
|
+
tokenType: "Bearer",
|
|
2573
|
+
expiresIn: 0
|
|
2574
|
+
});
|
|
2575
|
+
logger6.debug(`Loaded token for ${provider} from PROVIDER_TOKENS env var`);
|
|
2576
|
+
}
|
|
2577
|
+
}
|
|
2578
|
+
} catch {}
|
|
2579
|
+
}
|
|
2558
2580
|
savePendingAuthToStorage(state, pendingAuth) {
|
|
2559
2581
|
if (typeof window !== "undefined" && window.localStorage) {
|
|
2560
2582
|
try {
|
|
@@ -2819,6 +2841,7 @@ class MCPClientBase {
|
|
|
2819
2841
|
logger7.error("Failed to load provider tokens:", error);
|
|
2820
2842
|
});
|
|
2821
2843
|
} else {
|
|
2844
|
+
this.oauthManager.loadTokensFromEnvVar();
|
|
2822
2845
|
this.oauthManager.loadAllProviderTokensSync(providers);
|
|
2823
2846
|
for (const integration of this.integrations) {
|
|
2824
2847
|
if (integration.oauth) {
|
|
@@ -3674,6 +3697,7 @@ init_tool_builder();
|
|
|
3674
3697
|
var SERVER_LOG_CONTEXT3 = "server";
|
|
3675
3698
|
var logger31 = createLogger("MCPServer", SERVER_LOG_CONTEXT3);
|
|
3676
3699
|
var codeVerifierStorage = new Map;
|
|
3700
|
+
var unauthenticatedCodeModeWarnings = new Set;
|
|
3677
3701
|
function toSolidStartHandler(clientOrHandlerOrOptions, _redirectOptions) {
|
|
3678
3702
|
if (clientOrHandlerOrOptions && clientOrHandlerOrOptions.handler && typeof clientOrHandlerOrOptions.handler === "function") {
|
|
3679
3703
|
const baseHandler = clientOrHandlerOrOptions.handler;
|
package/dist/ai/anthropic.js
CHANGED
|
@@ -4677,7 +4677,14 @@ async function callTool(toolName, args) {
|
|
|
4677
4677
|
}
|
|
4678
4678
|
|
|
4679
4679
|
if (!res.ok) {
|
|
4680
|
-
|
|
4680
|
+
let message = (payload && (payload.error || payload.message)) || 'Tool call failed: HTTP ' + res.status;
|
|
4681
|
+
if ((res.status === 401 || res.status === 403) && typeof text === 'string' && text.indexOf('Authorization header') !== -1) {
|
|
4682
|
+
message =
|
|
4683
|
+
'Code Mode callback was rejected by the MCP server (HTTP ' + res.status + '). ' +
|
|
4684
|
+
'The SDK route could not synthesize an Authorization header. Check the host-side ' +
|
|
4685
|
+
'createMCPServer config (apiKey, getProviderToken) or pass providerTokens to the ' +
|
|
4686
|
+
'AI helper. Original upstream message: ' + text;
|
|
4687
|
+
}
|
|
4681
4688
|
const err = new Error(message);
|
|
4682
4689
|
err.status = res.status;
|
|
4683
4690
|
err.toolName = toolName;
|
package/dist/ai/google.js
CHANGED
|
@@ -4677,7 +4677,14 @@ async function callTool(toolName, args) {
|
|
|
4677
4677
|
}
|
|
4678
4678
|
|
|
4679
4679
|
if (!res.ok) {
|
|
4680
|
-
|
|
4680
|
+
let message = (payload && (payload.error || payload.message)) || 'Tool call failed: HTTP ' + res.status;
|
|
4681
|
+
if ((res.status === 401 || res.status === 403) && typeof text === 'string' && text.indexOf('Authorization header') !== -1) {
|
|
4682
|
+
message =
|
|
4683
|
+
'Code Mode callback was rejected by the MCP server (HTTP ' + res.status + '). ' +
|
|
4684
|
+
'The SDK route could not synthesize an Authorization header. Check the host-side ' +
|
|
4685
|
+
'createMCPServer config (apiKey, getProviderToken) or pass providerTokens to the ' +
|
|
4686
|
+
'AI helper. Original upstream message: ' + text;
|
|
4687
|
+
}
|
|
4681
4688
|
const err = new Error(message);
|
|
4682
4689
|
err.status = res.status;
|
|
4683
4690
|
err.toolName = toolName;
|
package/dist/ai/index.js
CHANGED
|
@@ -4677,7 +4677,14 @@ async function callTool(toolName, args) {
|
|
|
4677
4677
|
}
|
|
4678
4678
|
|
|
4679
4679
|
if (!res.ok) {
|
|
4680
|
-
|
|
4680
|
+
let message = (payload && (payload.error || payload.message)) || 'Tool call failed: HTTP ' + res.status;
|
|
4681
|
+
if ((res.status === 401 || res.status === 403) && typeof text === 'string' && text.indexOf('Authorization header') !== -1) {
|
|
4682
|
+
message =
|
|
4683
|
+
'Code Mode callback was rejected by the MCP server (HTTP ' + res.status + '). ' +
|
|
4684
|
+
'The SDK route could not synthesize an Authorization header. Check the host-side ' +
|
|
4685
|
+
'createMCPServer config (apiKey, getProviderToken) or pass providerTokens to the ' +
|
|
4686
|
+
'AI helper. Original upstream message: ' + text;
|
|
4687
|
+
}
|
|
4681
4688
|
const err = new Error(message);
|
|
4682
4689
|
err.status = res.status;
|
|
4683
4690
|
err.toolName = toolName;
|
package/dist/ai/openai.js
CHANGED
|
@@ -4677,7 +4677,14 @@ async function callTool(toolName, args) {
|
|
|
4677
4677
|
}
|
|
4678
4678
|
|
|
4679
4679
|
if (!res.ok) {
|
|
4680
|
-
|
|
4680
|
+
let message = (payload && (payload.error || payload.message)) || 'Tool call failed: HTTP ' + res.status;
|
|
4681
|
+
if ((res.status === 401 || res.status === 403) && typeof text === 'string' && text.indexOf('Authorization header') !== -1) {
|
|
4682
|
+
message =
|
|
4683
|
+
'Code Mode callback was rejected by the MCP server (HTTP ' + res.status + '). ' +
|
|
4684
|
+
'The SDK route could not synthesize an Authorization header. Check the host-side ' +
|
|
4685
|
+
'createMCPServer config (apiKey, getProviderToken) or pass providerTokens to the ' +
|
|
4686
|
+
'AI helper. Original upstream message: ' + text;
|
|
4687
|
+
}
|
|
4681
4688
|
const err = new Error(message);
|
|
4682
4689
|
err.status = res.status;
|
|
4683
4690
|
err.toolName = toolName;
|
package/dist/ai/vercel-ai.js
CHANGED
|
@@ -4677,7 +4677,14 @@ async function callTool(toolName, args) {
|
|
|
4677
4677
|
}
|
|
4678
4678
|
|
|
4679
4679
|
if (!res.ok) {
|
|
4680
|
-
|
|
4680
|
+
let message = (payload && (payload.error || payload.message)) || 'Tool call failed: HTTP ' + res.status;
|
|
4681
|
+
if ((res.status === 401 || res.status === 403) && typeof text === 'string' && text.indexOf('Authorization header') !== -1) {
|
|
4682
|
+
message =
|
|
4683
|
+
'Code Mode callback was rejected by the MCP server (HTTP ' + res.status + '). ' +
|
|
4684
|
+
'The SDK route could not synthesize an Authorization header. Check the host-side ' +
|
|
4685
|
+
'createMCPServer config (apiKey, getProviderToken) or pass providerTokens to the ' +
|
|
4686
|
+
'AI helper. Original upstream message: ' + text;
|
|
4687
|
+
}
|
|
4681
4688
|
const err = new Error(message);
|
|
4682
4689
|
err.status = res.status;
|
|
4683
4690
|
err.toolName = toolName;
|
|
@@ -60,7 +60,14 @@ async function callTool(toolName, args) {
|
|
|
60
60
|
}
|
|
61
61
|
|
|
62
62
|
if (!res.ok) {
|
|
63
|
-
|
|
63
|
+
let message = (payload && (payload.error || payload.message)) || 'Tool call failed: HTTP ' + res.status;
|
|
64
|
+
if ((res.status === 401 || res.status === 403) && typeof text === 'string' && text.indexOf('Authorization header') !== -1) {
|
|
65
|
+
message =
|
|
66
|
+
'Code Mode callback was rejected by the MCP server (HTTP ' + res.status + '). ' +
|
|
67
|
+
'The SDK route could not synthesize an Authorization header. Check the host-side ' +
|
|
68
|
+
'createMCPServer config (apiKey, getProviderToken) or pass providerTokens to the ' +
|
|
69
|
+
'AI helper. Original upstream message: ' + text;
|
|
70
|
+
}
|
|
64
71
|
const err = new Error(message);
|
|
65
72
|
err.status = res.status;
|
|
66
73
|
err.toolName = toolName;
|
package/dist/code-mode/index.js
CHANGED
|
@@ -275,7 +275,14 @@ async function callTool(toolName, args) {
|
|
|
275
275
|
}
|
|
276
276
|
|
|
277
277
|
if (!res.ok) {
|
|
278
|
-
|
|
278
|
+
let message = (payload && (payload.error || payload.message)) || 'Tool call failed: HTTP ' + res.status;
|
|
279
|
+
if ((res.status === 401 || res.status === 403) && typeof text === 'string' && text.indexOf('Authorization header') !== -1) {
|
|
280
|
+
message =
|
|
281
|
+
'Code Mode callback was rejected by the MCP server (HTTP ' + res.status + '). ' +
|
|
282
|
+
'The SDK route could not synthesize an Authorization header. Check the host-side ' +
|
|
283
|
+
'createMCPServer config (apiKey, getProviderToken) or pass providerTokens to the ' +
|
|
284
|
+
'AI helper. Original upstream message: ' + text;
|
|
285
|
+
}
|
|
279
286
|
const err = new Error(message);
|
|
280
287
|
err.status = res.status;
|
|
281
288
|
err.toolName = toolName;
|
|
@@ -12,5 +12,5 @@
|
|
|
12
12
|
* dependencies. It is NOT imported by the host SDK — it only ships as a
|
|
13
13
|
* literal payload to the sandbox.
|
|
14
14
|
*/
|
|
15
|
-
export declare const RUNTIME_STUB_SOURCE = "// runtime.mjs \u2014 generated by integrate-sdk code mode\nconst MCP_URL = process.env.INTEGRATE_MCP_URL;\nconst SESSION_TOKEN = process.env.INTEGRATE_SESSION_TOKEN;\nconst API_KEY = process.env.INTEGRATE_API_KEY || '';\nconst PROVIDER_TOKENS = process.env.INTEGRATE_PROVIDER_TOKENS || '';\nconst INTEGRATIONS_HEADER = process.env.INTEGRATE_INTEGRATIONS || '';\nconst CONTEXT_JSON = process.env.INTEGRATE_CONTEXT || '';\n\nif (!MCP_URL) {\n throw new Error('INTEGRATE_MCP_URL is not set \u2014 the sandbox cannot reach the MCP route.');\n}\n\nfunction camelToSnake(str) {\n return str.replace(/[A-Z]/g, (letter) => '_' + letter.toLowerCase());\n}\n\nasync function callTool(toolName, args) {\n const headers = {\n 'Content-Type': 'application/json',\n 'x-integrate-code-mode': '1',\n };\n if (SESSION_TOKEN) headers['Authorization'] = 'Bearer ' + SESSION_TOKEN;\n if (API_KEY) headers['x-integrate-api-key'] = API_KEY;\n if (PROVIDER_TOKENS) headers['x-integrate-tokens'] = PROVIDER_TOKENS;\n if (INTEGRATIONS_HEADER) headers['x-integrations'] = INTEGRATIONS_HEADER;\n if (CONTEXT_JSON) headers['x-integrate-context'] = CONTEXT_JSON;\n\n const res = await fetch(MCP_URL, {\n method: 'POST',\n headers,\n body: JSON.stringify({ name: toolName, arguments: args || {} }),\n });\n\n const text = await res.text();\n let payload;\n try {\n payload = text ? JSON.parse(text) : null;\n } catch {\n payload = { content: [{ type: 'text', text }] };\n }\n\n if (!res.ok) {\n
|
|
15
|
+
export declare const RUNTIME_STUB_SOURCE = "// runtime.mjs \u2014 generated by integrate-sdk code mode\nconst MCP_URL = process.env.INTEGRATE_MCP_URL;\nconst SESSION_TOKEN = process.env.INTEGRATE_SESSION_TOKEN;\nconst API_KEY = process.env.INTEGRATE_API_KEY || '';\nconst PROVIDER_TOKENS = process.env.INTEGRATE_PROVIDER_TOKENS || '';\nconst INTEGRATIONS_HEADER = process.env.INTEGRATE_INTEGRATIONS || '';\nconst CONTEXT_JSON = process.env.INTEGRATE_CONTEXT || '';\n\nif (!MCP_URL) {\n throw new Error('INTEGRATE_MCP_URL is not set \u2014 the sandbox cannot reach the MCP route.');\n}\n\nfunction camelToSnake(str) {\n return str.replace(/[A-Z]/g, (letter) => '_' + letter.toLowerCase());\n}\n\nasync function callTool(toolName, args) {\n const headers = {\n 'Content-Type': 'application/json',\n 'x-integrate-code-mode': '1',\n };\n if (SESSION_TOKEN) headers['Authorization'] = 'Bearer ' + SESSION_TOKEN;\n if (API_KEY) headers['x-integrate-api-key'] = API_KEY;\n if (PROVIDER_TOKENS) headers['x-integrate-tokens'] = PROVIDER_TOKENS;\n if (INTEGRATIONS_HEADER) headers['x-integrations'] = INTEGRATIONS_HEADER;\n if (CONTEXT_JSON) headers['x-integrate-context'] = CONTEXT_JSON;\n\n const res = await fetch(MCP_URL, {\n method: 'POST',\n headers,\n body: JSON.stringify({ name: toolName, arguments: args || {} }),\n });\n\n const text = await res.text();\n let payload;\n try {\n payload = text ? JSON.parse(text) : null;\n } catch {\n payload = { content: [{ type: 'text', text }] };\n }\n\n if (!res.ok) {\n let message = (payload && (payload.error || payload.message)) || 'Tool call failed: HTTP ' + res.status;\n if ((res.status === 401 || res.status === 403) && typeof text === 'string' && text.indexOf('Authorization header') !== -1) {\n message =\n 'Code Mode callback was rejected by the MCP server (HTTP ' + res.status + '). ' +\n 'The SDK route could not synthesize an Authorization header. Check the host-side ' +\n 'createMCPServer config (apiKey, getProviderToken) or pass providerTokens to the ' +\n 'AI helper. Original upstream message: ' + text;\n }\n const err = new Error(message);\n err.status = res.status;\n err.toolName = toolName;\n throw err;\n }\n\n return payload;\n}\n\nfunction createIntegrationProxy(integrationId) {\n return new Proxy({}, {\n get(_target, methodName) {\n if (typeof methodName !== 'string') return undefined;\n return (args) => callTool(integrationId + '_' + camelToSnake(methodName), args);\n },\n });\n}\n\nexport const client = new Proxy({}, {\n get(_target, integrationId) {\n if (typeof integrationId !== 'string') return undefined;\n return createIntegrationProxy(integrationId);\n },\n});\n\nexport { callTool };\n";
|
|
16
16
|
//# sourceMappingURL=runtime-stub.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime-stub.d.ts","sourceRoot":"","sources":["../../../src/code-mode/runtime-stub.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,eAAO,MAAM,mBAAmB,
|
|
1
|
+
{"version":3,"file":"runtime-stub.d.ts","sourceRoot":"","sources":["../../../src/code-mode/runtime-stub.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,eAAO,MAAM,mBAAmB,8rFA4E/B,CAAC"}
|
|
@@ -60,7 +60,14 @@ async function callTool(toolName, args) {
|
|
|
60
60
|
}
|
|
61
61
|
|
|
62
62
|
if (!res.ok) {
|
|
63
|
-
|
|
63
|
+
let message = (payload && (payload.error || payload.message)) || 'Tool call failed: HTTP ' + res.status;
|
|
64
|
+
if ((res.status === 401 || res.status === 403) && typeof text === 'string' && text.indexOf('Authorization header') !== -1) {
|
|
65
|
+
message =
|
|
66
|
+
'Code Mode callback was rejected by the MCP server (HTTP ' + res.status + '). ' +
|
|
67
|
+
'The SDK route could not synthesize an Authorization header. Check the host-side ' +
|
|
68
|
+
'createMCPServer config (apiKey, getProviderToken) or pass providerTokens to the ' +
|
|
69
|
+
'AI helper. Original upstream message: ' + text;
|
|
70
|
+
}
|
|
64
71
|
const err = new Error(message);
|
|
65
72
|
err.status = res.status;
|
|
66
73
|
err.toolName = toolName;
|
|
@@ -275,7 +275,14 @@ async function callTool(toolName, args) {
|
|
|
275
275
|
}
|
|
276
276
|
|
|
277
277
|
if (!res.ok) {
|
|
278
|
-
|
|
278
|
+
let message = (payload && (payload.error || payload.message)) || 'Tool call failed: HTTP ' + res.status;
|
|
279
|
+
if ((res.status === 401 || res.status === 403) && typeof text === 'string' && text.indexOf('Authorization header') !== -1) {
|
|
280
|
+
message =
|
|
281
|
+
'Code Mode callback was rejected by the MCP server (HTTP ' + res.status + '). ' +
|
|
282
|
+
'The SDK route could not synthesize an Authorization header. Check the host-side ' +
|
|
283
|
+
'createMCPServer config (apiKey, getProviderToken) or pass providerTokens to the ' +
|
|
284
|
+
'AI helper. Original upstream message: ' + text;
|
|
285
|
+
}
|
|
279
286
|
const err = new Error(message);
|
|
280
287
|
err.status = res.status;
|
|
281
288
|
err.toolName = toolName;
|
package/dist/index.js
CHANGED
|
@@ -1810,6 +1810,28 @@ class OAuthManager {
|
|
|
1810
1810
|
}
|
|
1811
1811
|
this.loadAllProviderTokens(providers).catch(() => {});
|
|
1812
1812
|
}
|
|
1813
|
+
loadTokensFromEnvVar() {
|
|
1814
|
+
try {
|
|
1815
|
+
if (typeof process === "undefined" || !process.env?.PROVIDER_TOKENS) {
|
|
1816
|
+
return;
|
|
1817
|
+
}
|
|
1818
|
+
const parsed = JSON.parse(process.env.PROVIDER_TOKENS);
|
|
1819
|
+
if (!parsed || typeof parsed !== "object" || Array.isArray(parsed)) {
|
|
1820
|
+
logger4.warn("PROVIDER_TOKENS env var is set but is not a JSON object — skipping");
|
|
1821
|
+
return;
|
|
1822
|
+
}
|
|
1823
|
+
for (const [provider, token] of Object.entries(parsed)) {
|
|
1824
|
+
if (typeof token === "string") {
|
|
1825
|
+
this.providerTokens.set(provider, {
|
|
1826
|
+
accessToken: token,
|
|
1827
|
+
tokenType: "Bearer",
|
|
1828
|
+
expiresIn: 0
|
|
1829
|
+
});
|
|
1830
|
+
logger4.debug(`Loaded token for ${provider} from PROVIDER_TOKENS env var`);
|
|
1831
|
+
}
|
|
1832
|
+
}
|
|
1833
|
+
} catch {}
|
|
1834
|
+
}
|
|
1813
1835
|
savePendingAuthToStorage(state, pendingAuth) {
|
|
1814
1836
|
if (typeof window !== "undefined" && window.localStorage) {
|
|
1815
1837
|
try {
|
|
@@ -2076,6 +2098,7 @@ class MCPClientBase {
|
|
|
2076
2098
|
logger5.error("Failed to load provider tokens:", error);
|
|
2077
2099
|
});
|
|
2078
2100
|
} else {
|
|
2101
|
+
this.oauthManager.loadTokensFromEnvVar();
|
|
2079
2102
|
this.oauthManager.loadAllProviderTokensSync(providers);
|
|
2080
2103
|
for (const integration of this.integrations) {
|
|
2081
2104
|
if (integration.oauth) {
|
package/dist/server.js
CHANGED
|
@@ -1481,7 +1481,14 @@ async function callTool(toolName, args) {
|
|
|
1481
1481
|
}
|
|
1482
1482
|
|
|
1483
1483
|
if (!res.ok) {
|
|
1484
|
-
|
|
1484
|
+
let message = (payload && (payload.error || payload.message)) || 'Tool call failed: HTTP ' + res.status;
|
|
1485
|
+
if ((res.status === 401 || res.status === 403) && typeof text === 'string' && text.indexOf('Authorization header') !== -1) {
|
|
1486
|
+
message =
|
|
1487
|
+
'Code Mode callback was rejected by the MCP server (HTTP ' + res.status + '). ' +
|
|
1488
|
+
'The SDK route could not synthesize an Authorization header. Check the host-side ' +
|
|
1489
|
+
'createMCPServer config (apiKey, getProviderToken) or pass providerTokens to the ' +
|
|
1490
|
+
'AI helper. Original upstream message: ' + text;
|
|
1491
|
+
}
|
|
1485
1492
|
const err = new Error(message);
|
|
1486
1493
|
err.status = res.status;
|
|
1487
1494
|
err.toolName = toolName;
|
|
@@ -3126,6 +3133,28 @@ class OAuthManager {
|
|
|
3126
3133
|
}
|
|
3127
3134
|
this.loadAllProviderTokens(providers).catch(() => {});
|
|
3128
3135
|
}
|
|
3136
|
+
loadTokensFromEnvVar() {
|
|
3137
|
+
try {
|
|
3138
|
+
if (typeof process === "undefined" || !process.env?.PROVIDER_TOKENS) {
|
|
3139
|
+
return;
|
|
3140
|
+
}
|
|
3141
|
+
const parsed = JSON.parse(process.env.PROVIDER_TOKENS);
|
|
3142
|
+
if (!parsed || typeof parsed !== "object" || Array.isArray(parsed)) {
|
|
3143
|
+
logger4.warn("PROVIDER_TOKENS env var is set but is not a JSON object — skipping");
|
|
3144
|
+
return;
|
|
3145
|
+
}
|
|
3146
|
+
for (const [provider, token] of Object.entries(parsed)) {
|
|
3147
|
+
if (typeof token === "string") {
|
|
3148
|
+
this.providerTokens.set(provider, {
|
|
3149
|
+
accessToken: token,
|
|
3150
|
+
tokenType: "Bearer",
|
|
3151
|
+
expiresIn: 0
|
|
3152
|
+
});
|
|
3153
|
+
logger4.debug(`Loaded token for ${provider} from PROVIDER_TOKENS env var`);
|
|
3154
|
+
}
|
|
3155
|
+
}
|
|
3156
|
+
} catch {}
|
|
3157
|
+
}
|
|
3129
3158
|
savePendingAuthToStorage(state, pendingAuth) {
|
|
3130
3159
|
if (typeof window !== "undefined" && window.localStorage) {
|
|
3131
3160
|
try {
|
|
@@ -3390,6 +3419,7 @@ class MCPClientBase {
|
|
|
3390
3419
|
logger5.error("Failed to load provider tokens:", error);
|
|
3391
3420
|
});
|
|
3392
3421
|
} else {
|
|
3422
|
+
this.oauthManager.loadTokensFromEnvVar();
|
|
3393
3423
|
this.oauthManager.loadAllProviderTokensSync(providers);
|
|
3394
3424
|
for (const integration of this.integrations) {
|
|
3395
3425
|
if (integration.oauth) {
|
|
@@ -11784,6 +11814,33 @@ var logger33 = createLogger("MCPServer", SERVER_LOG_CONTEXT3);
|
|
|
11784
11814
|
var globalServerConfig = null;
|
|
11785
11815
|
var globalMCPHandler = null;
|
|
11786
11816
|
var codeVerifierStorage = new Map;
|
|
11817
|
+
function resolveProviderFromToolName(toolName, candidates) {
|
|
11818
|
+
let best = null;
|
|
11819
|
+
for (const candidate of candidates) {
|
|
11820
|
+
if (!candidate)
|
|
11821
|
+
continue;
|
|
11822
|
+
if (toolName === candidate || toolName.startsWith(candidate + "_")) {
|
|
11823
|
+
if (!best || candidate.length > best.length)
|
|
11824
|
+
best = candidate;
|
|
11825
|
+
}
|
|
11826
|
+
}
|
|
11827
|
+
return best;
|
|
11828
|
+
}
|
|
11829
|
+
var unauthenticatedCodeModeWarnings = new Set;
|
|
11830
|
+
function warnUnauthenticatedCodeModeCallback(details) {
|
|
11831
|
+
if (unauthenticatedCodeModeWarnings.has(details.toolName))
|
|
11832
|
+
return;
|
|
11833
|
+
unauthenticatedCodeModeWarnings.add(details.toolName);
|
|
11834
|
+
console.warn(`[integrate-sdk] Code Mode callback for tool "${details.toolName}" has no Authorization header.
|
|
11835
|
+
` + ` x-integrate-tokens present: ${details.tokensPresent} (resolved provider: ${details.tokensResolvedProvider ?? "none"})
|
|
11836
|
+
` + ` x-integrate-context present: ${details.contextPresent}
|
|
11837
|
+
` + ` x-integrate-api-key matches server apiKey: ${details.apiKeyMatches}
|
|
11838
|
+
` + ` getProviderToken configured: ${details.getProviderTokenConfigured}
|
|
11839
|
+
` + ` Fix by either (a) passing providerTokens to the AI helper, or (b) configuring getProviderToken + apiKey on createMCPServer and passing context.`);
|
|
11840
|
+
}
|
|
11841
|
+
function __resetUnauthenticatedCodeModeWarnings() {
|
|
11842
|
+
unauthenticatedCodeModeWarnings.clear();
|
|
11843
|
+
}
|
|
11787
11844
|
function cleanupExpiredCodeVerifiers() {
|
|
11788
11845
|
const now = Date.now();
|
|
11789
11846
|
for (const [state, entry] of codeVerifierStorage.entries()) {
|
|
@@ -11950,36 +12007,44 @@ function createMCPServer(config) {
|
|
|
11950
12007
|
const body = await webRequest.json();
|
|
11951
12008
|
let authHeader = webRequest.headers.get("authorization");
|
|
11952
12009
|
const integrationsHeader = webRequest.headers.get("x-integrations");
|
|
11953
|
-
|
|
11954
|
-
|
|
11955
|
-
|
|
11956
|
-
|
|
11957
|
-
|
|
11958
|
-
|
|
11959
|
-
|
|
11960
|
-
|
|
11961
|
-
|
|
11962
|
-
|
|
11963
|
-
|
|
11964
|
-
|
|
12010
|
+
const codeModeHeader = webRequest.headers.get("x-integrate-code-mode");
|
|
12011
|
+
const contextHeader = webRequest.headers.get("x-integrate-context");
|
|
12012
|
+
const callbackApiKey = webRequest.headers.get("x-integrate-api-key");
|
|
12013
|
+
const tokensHeader = webRequest.headers.get("x-integrate-tokens");
|
|
12014
|
+
const toolName = typeof body?.name === "string" ? body.name : "";
|
|
12015
|
+
let tokensResolvedProvider = null;
|
|
12016
|
+
if (!authHeader && tokensHeader && toolName) {
|
|
12017
|
+
try {
|
|
12018
|
+
const tokens = JSON.parse(tokensHeader);
|
|
12019
|
+
const provider = resolveProviderFromToolName(toolName, Object.keys(tokens));
|
|
12020
|
+
if (provider && tokens[provider]) {
|
|
12021
|
+
tokensResolvedProvider = provider;
|
|
12022
|
+
authHeader = `Bearer ${tokens[provider]}`;
|
|
12023
|
+
}
|
|
12024
|
+
} catch {}
|
|
11965
12025
|
}
|
|
11966
|
-
if (!authHeader && config.getProviderToken) {
|
|
11967
|
-
|
|
11968
|
-
|
|
11969
|
-
|
|
11970
|
-
|
|
11971
|
-
|
|
11972
|
-
|
|
11973
|
-
|
|
11974
|
-
|
|
11975
|
-
if (provider) {
|
|
11976
|
-
const tokenData = await config.getProviderToken(provider, undefined, context2);
|
|
11977
|
-
if (tokenData?.accessToken) {
|
|
11978
|
-
authHeader = `Bearer ${tokenData.accessToken}`;
|
|
11979
|
-
}
|
|
12026
|
+
if (!authHeader && config.getProviderToken && codeModeHeader === "1" && contextHeader && toolName && config.apiKey && callbackApiKey === config.apiKey) {
|
|
12027
|
+
try {
|
|
12028
|
+
const context2 = JSON.parse(contextHeader);
|
|
12029
|
+
const candidates = integrationsHeader ? integrationsHeader.split(",").map((s) => s.trim()).filter(Boolean) : (config.integrations ?? []).map((i) => i.id).filter(Boolean);
|
|
12030
|
+
const provider = resolveProviderFromToolName(toolName, candidates);
|
|
12031
|
+
if (provider) {
|
|
12032
|
+
const tokenData = await config.getProviderToken(provider, undefined, context2);
|
|
12033
|
+
if (tokenData?.accessToken) {
|
|
12034
|
+
authHeader = `Bearer ${tokenData.accessToken}`;
|
|
11980
12035
|
}
|
|
11981
|
-
}
|
|
11982
|
-
}
|
|
12036
|
+
}
|
|
12037
|
+
} catch {}
|
|
12038
|
+
}
|
|
12039
|
+
if (!authHeader && codeModeHeader === "1") {
|
|
12040
|
+
warnUnauthenticatedCodeModeCallback({
|
|
12041
|
+
toolName,
|
|
12042
|
+
tokensPresent: !!tokensHeader,
|
|
12043
|
+
tokensResolvedProvider,
|
|
12044
|
+
contextPresent: !!contextHeader,
|
|
12045
|
+
apiKeyMatches: !!(config.apiKey && callbackApiKey === config.apiKey),
|
|
12046
|
+
getProviderTokenConfigured: !!config.getProviderToken
|
|
12047
|
+
});
|
|
11983
12048
|
}
|
|
11984
12049
|
const { OAuthHandler: OAuthHandler2 } = await Promise.resolve().then(() => (init_base_handler(), exports_base_handler));
|
|
11985
12050
|
const oauthHandler = new OAuthHandler2({
|
|
@@ -12765,6 +12830,7 @@ export {
|
|
|
12765
12830
|
calcomIntegration,
|
|
12766
12831
|
buildCodeModeTool,
|
|
12767
12832
|
airtableIntegration,
|
|
12833
|
+
__resetUnauthenticatedCodeModeWarnings,
|
|
12768
12834
|
RUNTIME_STUB_SOURCE,
|
|
12769
12835
|
POST,
|
|
12770
12836
|
OAuthHandler,
|
package/dist/src/client.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,5 +12,5 @@
|
|
|
12
12
|
* dependencies. It is NOT imported by the host SDK — it only ships as a
|
|
13
13
|
* literal payload to the sandbox.
|
|
14
14
|
*/
|
|
15
|
-
export declare const RUNTIME_STUB_SOURCE = "// runtime.mjs \u2014 generated by integrate-sdk code mode\nconst MCP_URL = process.env.INTEGRATE_MCP_URL;\nconst SESSION_TOKEN = process.env.INTEGRATE_SESSION_TOKEN;\nconst API_KEY = process.env.INTEGRATE_API_KEY || '';\nconst PROVIDER_TOKENS = process.env.INTEGRATE_PROVIDER_TOKENS || '';\nconst INTEGRATIONS_HEADER = process.env.INTEGRATE_INTEGRATIONS || '';\nconst CONTEXT_JSON = process.env.INTEGRATE_CONTEXT || '';\n\nif (!MCP_URL) {\n throw new Error('INTEGRATE_MCP_URL is not set \u2014 the sandbox cannot reach the MCP route.');\n}\n\nfunction camelToSnake(str) {\n return str.replace(/[A-Z]/g, (letter) => '_' + letter.toLowerCase());\n}\n\nasync function callTool(toolName, args) {\n const headers = {\n 'Content-Type': 'application/json',\n 'x-integrate-code-mode': '1',\n };\n if (SESSION_TOKEN) headers['Authorization'] = 'Bearer ' + SESSION_TOKEN;\n if (API_KEY) headers['x-integrate-api-key'] = API_KEY;\n if (PROVIDER_TOKENS) headers['x-integrate-tokens'] = PROVIDER_TOKENS;\n if (INTEGRATIONS_HEADER) headers['x-integrations'] = INTEGRATIONS_HEADER;\n if (CONTEXT_JSON) headers['x-integrate-context'] = CONTEXT_JSON;\n\n const res = await fetch(MCP_URL, {\n method: 'POST',\n headers,\n body: JSON.stringify({ name: toolName, arguments: args || {} }),\n });\n\n const text = await res.text();\n let payload;\n try {\n payload = text ? JSON.parse(text) : null;\n } catch {\n payload = { content: [{ type: 'text', text }] };\n }\n\n if (!res.ok) {\n
|
|
15
|
+
export declare const RUNTIME_STUB_SOURCE = "// runtime.mjs \u2014 generated by integrate-sdk code mode\nconst MCP_URL = process.env.INTEGRATE_MCP_URL;\nconst SESSION_TOKEN = process.env.INTEGRATE_SESSION_TOKEN;\nconst API_KEY = process.env.INTEGRATE_API_KEY || '';\nconst PROVIDER_TOKENS = process.env.INTEGRATE_PROVIDER_TOKENS || '';\nconst INTEGRATIONS_HEADER = process.env.INTEGRATE_INTEGRATIONS || '';\nconst CONTEXT_JSON = process.env.INTEGRATE_CONTEXT || '';\n\nif (!MCP_URL) {\n throw new Error('INTEGRATE_MCP_URL is not set \u2014 the sandbox cannot reach the MCP route.');\n}\n\nfunction camelToSnake(str) {\n return str.replace(/[A-Z]/g, (letter) => '_' + letter.toLowerCase());\n}\n\nasync function callTool(toolName, args) {\n const headers = {\n 'Content-Type': 'application/json',\n 'x-integrate-code-mode': '1',\n };\n if (SESSION_TOKEN) headers['Authorization'] = 'Bearer ' + SESSION_TOKEN;\n if (API_KEY) headers['x-integrate-api-key'] = API_KEY;\n if (PROVIDER_TOKENS) headers['x-integrate-tokens'] = PROVIDER_TOKENS;\n if (INTEGRATIONS_HEADER) headers['x-integrations'] = INTEGRATIONS_HEADER;\n if (CONTEXT_JSON) headers['x-integrate-context'] = CONTEXT_JSON;\n\n const res = await fetch(MCP_URL, {\n method: 'POST',\n headers,\n body: JSON.stringify({ name: toolName, arguments: args || {} }),\n });\n\n const text = await res.text();\n let payload;\n try {\n payload = text ? JSON.parse(text) : null;\n } catch {\n payload = { content: [{ type: 'text', text }] };\n }\n\n if (!res.ok) {\n let message = (payload && (payload.error || payload.message)) || 'Tool call failed: HTTP ' + res.status;\n if ((res.status === 401 || res.status === 403) && typeof text === 'string' && text.indexOf('Authorization header') !== -1) {\n message =\n 'Code Mode callback was rejected by the MCP server (HTTP ' + res.status + '). ' +\n 'The SDK route could not synthesize an Authorization header. Check the host-side ' +\n 'createMCPServer config (apiKey, getProviderToken) or pass providerTokens to the ' +\n 'AI helper. Original upstream message: ' + text;\n }\n const err = new Error(message);\n err.status = res.status;\n err.toolName = toolName;\n throw err;\n }\n\n return payload;\n}\n\nfunction createIntegrationProxy(integrationId) {\n return new Proxy({}, {\n get(_target, methodName) {\n if (typeof methodName !== 'string') return undefined;\n return (args) => callTool(integrationId + '_' + camelToSnake(methodName), args);\n },\n });\n}\n\nexport const client = new Proxy({}, {\n get(_target, integrationId) {\n if (typeof integrationId !== 'string') return undefined;\n return createIntegrationProxy(integrationId);\n },\n});\n\nexport { callTool };\n";
|
|
16
16
|
//# sourceMappingURL=runtime-stub.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime-stub.d.ts","sourceRoot":"","sources":["../../../src/code-mode/runtime-stub.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,eAAO,MAAM,mBAAmB,
|
|
1
|
+
{"version":3,"file":"runtime-stub.d.ts","sourceRoot":"","sources":["../../../src/code-mode/runtime-stub.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,eAAO,MAAM,mBAAmB,8rFA4E/B,CAAC"}
|
|
@@ -240,6 +240,18 @@ export declare class OAuthManager {
|
|
|
240
240
|
* Note: IndexedDB operations are async, so this method falls back to localStorage synchronously
|
|
241
241
|
*/
|
|
242
242
|
loadAllProviderTokensSync(providers: string[]): void;
|
|
243
|
+
/**
|
|
244
|
+
* Load provider tokens from the PROVIDER_TOKENS environment variable.
|
|
245
|
+
*
|
|
246
|
+
* In sandbox/code-execution environments (e.g. Vercel sandbox for code mode),
|
|
247
|
+
* the host passes user OAuth tokens via this env var because there is no browser
|
|
248
|
+
* storage or database callback available. Tokens are loaded into the in-memory
|
|
249
|
+
* cache only — they are never persisted.
|
|
250
|
+
*
|
|
251
|
+
* Format: JSON object mapping provider name → access token string.
|
|
252
|
+
* Example: PROVIDER_TOKENS='{"github":"ghp_...","gmail":"ya29...."}'
|
|
253
|
+
*/
|
|
254
|
+
loadTokensFromEnvVar(): void;
|
|
243
255
|
/**
|
|
244
256
|
* Save pending auth to localStorage (for redirect flows)
|
|
245
257
|
* Uses localStorage instead of sessionStorage because OAuth may open in a new tab,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../../src/oauth/manager.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../../src/oauth/manager.ts"],"names":[],"mappings":"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"}
|
package/dist/src/server.d.ts
CHANGED
|
@@ -40,6 +40,8 @@ export type MCPServerClient<TIntegrations extends readonly MCPIntegration[]> = M
|
|
|
40
40
|
}>;
|
|
41
41
|
}) => Promise<Response>;
|
|
42
42
|
};
|
|
43
|
+
/** @internal — used by unit tests to reset the warn-once throttle. */
|
|
44
|
+
export declare function __resetUnauthenticatedCodeModeWarnings(): void;
|
|
43
45
|
/**
|
|
44
46
|
* Store codeVerifier temporarily for backend redirect flow
|
|
45
47
|
* @param state - OAuth state parameter
|
package/dist/src/server.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/server.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,OAAO,KAAK,EAAc,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACrE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAU9D,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,MAAM,CAAC;AAO5D;;GAEG;AACH,MAAM,MAAM,eAAe,CAAC,aAAa,SAAS,SAAS,cAAc,EAAE,IAAI,SAAS,CAAC,aAAa,CAAC,GAAG;IACxG;+HAC2H;IAC3H,OAAO,EAAE,CAAC,OAAO,EAAE,OAAO,GAAG,eAAe,EAAE,YAAY,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE;YAAE,MAAM,CAAC,EAAE,MAAM,CAAC;YAAC,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;SAAE,CAAA;KAAE,GAAG,cAAc,EAAE,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE;YAAE,MAAM,CAAC,EAAE,MAAM,CAAC;YAAC,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;SAAE,CAAA;KAAE,KAAK,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAC;IAC1O,qDAAqD;IACrD,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE;QAAE,MAAM,EAAE;YAAE,MAAM,EAAE,MAAM,CAAA;SAAE,GAAG,OAAO,CAAC;YAAE,MAAM,EAAE,MAAM,CAAA;SAAE,CAAC,CAAA;KAAE,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC7G,oDAAoD;IACpD,GAAG,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE;QAAE,MAAM,EAAE;YAAE,MAAM,EAAE,MAAM,CAAA;SAAE,GAAG,OAAO,CAAC;YAAE,MAAM,EAAE,MAAM,CAAA;SAAE,CAAC,CAAA;KAAE,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;CAC7G,CAAC;
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/server.ts"],"names":[],"mappings":"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"}
|