integrate-sdk 0.8.2 → 0.8.3
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/auto-routes.d.ts.map +1 -1
- package/dist/adapters/auto-routes.js +23 -2
- package/dist/adapters/base-handler.d.ts +22 -1
- package/dist/adapters/base-handler.d.ts.map +1 -1
- package/dist/adapters/base-handler.js +22 -1
- package/dist/adapters/index.js +47 -3
- package/dist/adapters/nextjs.d.ts.map +1 -1
- package/dist/adapters/nextjs.js +23 -2
- package/dist/adapters/node.d.ts.map +1 -1
- package/dist/adapters/node.js +23 -2
- package/dist/adapters/solid-start.js +46 -2
- package/dist/adapters/svelte-kit.js +46 -2
- package/dist/index.js +47 -3
- package/dist/oauth.js +23 -2
- package/dist/server.js +53 -6
- package/dist/src/adapters/auto-routes.d.ts.map +1 -1
- package/dist/src/adapters/base-handler.d.ts +22 -1
- package/dist/src/adapters/base-handler.d.ts.map +1 -1
- package/dist/src/adapters/nextjs.d.ts.map +1 -1
- package/dist/src/adapters/node.d.ts.map +1 -1
- package/dist/src/oauth/manager.d.ts.map +1 -1
- package/dist/src/server.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auto-routes.d.ts","sourceRoot":"","sources":["../../../src/adapters/auto-routes.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAgB,KAAK,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAQ1E;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,kBAAkB,GAAG,IAAI,CAErE;AAED;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,kBAAkB,GAAG,IAAI,CAEhE;AAED;;;;;;;;;;;;;;;;;GAiBG;AAkBH;;;GAGG;AACH,wBAAsB,IAAI,CACxB,GAAG,EAAE,GAAG,EACR,OAAO,CAAC,EAAE;IAAE,MAAM,EAAE;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,GACvC,OAAO,CAAC,GAAG,CAAC,
|
|
1
|
+
{"version":3,"file":"auto-routes.d.ts","sourceRoot":"","sources":["../../../src/adapters/auto-routes.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAgB,KAAK,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAQ1E;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,kBAAkB,GAAG,IAAI,CAErE;AAED;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,kBAAkB,GAAG,IAAI,CAEhE;AAED;;;;;;;;;;;;;;;;;GAiBG;AAkBH;;;GAGG;AACH,wBAAsB,IAAI,CACxB,GAAG,EAAE,GAAG,EACR,OAAO,CAAC,EAAE;IAAE,MAAM,EAAE;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,GACvC,OAAO,CAAC,GAAG,CAAC,CA+Dd;AAED;;;GAGG;AACH,wBAAsB,GAAG,CACvB,GAAG,EAAE,GAAG,EACR,OAAO,CAAC,EAAE;IAAE,MAAM,EAAE;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,GACvC,OAAO,CAAC,GAAG,CAAC,CAoCd"}
|
|
@@ -476,10 +476,31 @@ class OAuthHandler {
|
|
|
476
476
|
const data = await response.json();
|
|
477
477
|
return data;
|
|
478
478
|
}
|
|
479
|
-
async handleDisconnect(request, accessToken) {
|
|
479
|
+
async handleDisconnect(request, accessToken, webRequest) {
|
|
480
480
|
if (!accessToken) {
|
|
481
481
|
throw new Error("No access token provided. Cannot disconnect provider.");
|
|
482
482
|
}
|
|
483
|
+
if (webRequest && this.config.removeProviderToken) {
|
|
484
|
+
try {
|
|
485
|
+
let context;
|
|
486
|
+
if (this.config.getSessionContext) {
|
|
487
|
+
context = await this.config.getSessionContext(webRequest);
|
|
488
|
+
}
|
|
489
|
+
if (!context || !context.userId) {
|
|
490
|
+
const { detectSessionContext: detectSessionContext2 } = await Promise.resolve().then(() => exports_session_detector);
|
|
491
|
+
context = await detectSessionContext2(webRequest);
|
|
492
|
+
}
|
|
493
|
+
if (context) {
|
|
494
|
+
try {
|
|
495
|
+
await this.config.removeProviderToken(request.provider, context);
|
|
496
|
+
} catch (error) {
|
|
497
|
+
console.error(`Failed to delete token for ${request.provider} from database via removeProviderToken:`, error);
|
|
498
|
+
}
|
|
499
|
+
}
|
|
500
|
+
} catch (error) {
|
|
501
|
+
console.error(`Failed to extract context for disconnect:`, error);
|
|
502
|
+
}
|
|
503
|
+
}
|
|
483
504
|
const url = new URL("/oauth/disconnect", this.serverUrl);
|
|
484
505
|
const response = await fetch(url.toString(), {
|
|
485
506
|
method: "POST",
|
|
@@ -579,7 +600,7 @@ async function POST(req, context) {
|
|
|
579
600
|
if (!body.provider) {
|
|
580
601
|
return createErrorResponse("Missing provider in request body", 400);
|
|
581
602
|
}
|
|
582
|
-
const result = await handler.handleDisconnect({ provider: body.provider }, accessToken);
|
|
603
|
+
const result = await handler.handleDisconnect({ provider: body.provider }, accessToken, req);
|
|
583
604
|
return createSuccessResponse(result);
|
|
584
605
|
}
|
|
585
606
|
return createErrorResponse(`Unknown action: ${action}`, 404);
|
|
@@ -68,6 +68,26 @@ export interface OAuthHandlerConfig {
|
|
|
68
68
|
* ```
|
|
69
69
|
*/
|
|
70
70
|
setProviderToken?: (provider: string, tokenData: ProviderTokenData, context?: MCPContext) => Promise<void> | void;
|
|
71
|
+
/**
|
|
72
|
+
* Optional callback to delete provider tokens from database
|
|
73
|
+
* Called automatically when disconnecting providers
|
|
74
|
+
*
|
|
75
|
+
* @param provider - Provider name (e.g., 'github')
|
|
76
|
+
* @param context - User context (userId, organizationId, etc.)
|
|
77
|
+
*
|
|
78
|
+
* @example
|
|
79
|
+
* ```typescript
|
|
80
|
+
* removeProviderToken: async (provider, context) => {
|
|
81
|
+
* const userId = context?.userId;
|
|
82
|
+
* if (!userId) return;
|
|
83
|
+
*
|
|
84
|
+
* await db.tokens.delete({
|
|
85
|
+
* where: { provider_userId: { provider, userId } }
|
|
86
|
+
* });
|
|
87
|
+
* }
|
|
88
|
+
* ```
|
|
89
|
+
*/
|
|
90
|
+
removeProviderToken?: (provider: string, context?: MCPContext) => Promise<void> | void;
|
|
71
91
|
}
|
|
72
92
|
/**
|
|
73
93
|
* Request body for authorize endpoint
|
|
@@ -209,12 +229,13 @@ export declare class OAuthHandler {
|
|
|
209
229
|
*
|
|
210
230
|
* @param request - Disconnect request with provider name
|
|
211
231
|
* @param accessToken - Access token from client
|
|
232
|
+
* @param webRequest - Optional Web Request object for context extraction
|
|
212
233
|
* @returns Disconnect response
|
|
213
234
|
*
|
|
214
235
|
* @throws Error if no access token provided
|
|
215
236
|
* @throws Error if MCP server request fails
|
|
216
237
|
*/
|
|
217
|
-
handleDisconnect(request: DisconnectRequest, accessToken: string): Promise<DisconnectResponse>;
|
|
238
|
+
handleDisconnect(request: DisconnectRequest, accessToken: string, webRequest?: Request): Promise<DisconnectResponse>;
|
|
218
239
|
/**
|
|
219
240
|
* Handle MCP tool call
|
|
220
241
|
* Forwards tool call requests to MCP server with API key and provider token
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base-handler.d.ts","sourceRoot":"","sources":["../../../src/adapters/base-handler.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAO3D;;;GAGG;AACH,MAAM,WAAW,kBAAkB;IACjC,uCAAuC;IACvC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE;QACxB,iDAAiD;QACjD,QAAQ,EAAE,MAAM,CAAC;QACjB,qDAAqD;QACrD,YAAY,EAAE,MAAM,CAAC;QACrB,qCAAqC;QACrC,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,8CAA8C;QAC9C,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;QAClB,kFAAkF;QAClF,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;KAC9B,CAAC,CAAC;IACH;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;;;;;;;;;;;;OAcG;IACH,iBAAiB,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC,GAAG,UAAU,GAAG,SAAS,CAAC;IACnG;;;;;;;;;;;;;;;;;;OAkBG;IACH,gBAAgB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,iBAAiB,EAAE,OAAO,CAAC,EAAE,UAAU,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"base-handler.d.ts","sourceRoot":"","sources":["../../../src/adapters/base-handler.ts"],"names":[],"mappings":"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"}
|
|
@@ -476,10 +476,31 @@ class OAuthHandler {
|
|
|
476
476
|
const data = await response.json();
|
|
477
477
|
return data;
|
|
478
478
|
}
|
|
479
|
-
async handleDisconnect(request, accessToken) {
|
|
479
|
+
async handleDisconnect(request, accessToken, webRequest) {
|
|
480
480
|
if (!accessToken) {
|
|
481
481
|
throw new Error("No access token provided. Cannot disconnect provider.");
|
|
482
482
|
}
|
|
483
|
+
if (webRequest && this.config.removeProviderToken) {
|
|
484
|
+
try {
|
|
485
|
+
let context;
|
|
486
|
+
if (this.config.getSessionContext) {
|
|
487
|
+
context = await this.config.getSessionContext(webRequest);
|
|
488
|
+
}
|
|
489
|
+
if (!context || !context.userId) {
|
|
490
|
+
const { detectSessionContext: detectSessionContext2 } = await Promise.resolve().then(() => exports_session_detector);
|
|
491
|
+
context = await detectSessionContext2(webRequest);
|
|
492
|
+
}
|
|
493
|
+
if (context) {
|
|
494
|
+
try {
|
|
495
|
+
await this.config.removeProviderToken(request.provider, context);
|
|
496
|
+
} catch (error) {
|
|
497
|
+
console.error(`Failed to delete token for ${request.provider} from database via removeProviderToken:`, error);
|
|
498
|
+
}
|
|
499
|
+
}
|
|
500
|
+
} catch (error) {
|
|
501
|
+
console.error(`Failed to extract context for disconnect:`, error);
|
|
502
|
+
}
|
|
503
|
+
}
|
|
483
504
|
const url = new URL("/oauth/disconnect", this.serverUrl);
|
|
484
505
|
const response = await fetch(url.toString(), {
|
|
485
506
|
method: "POST",
|
package/dist/adapters/index.js
CHANGED
|
@@ -476,10 +476,31 @@ class OAuthHandler {
|
|
|
476
476
|
const data = await response.json();
|
|
477
477
|
return data;
|
|
478
478
|
}
|
|
479
|
-
async handleDisconnect(request, accessToken) {
|
|
479
|
+
async handleDisconnect(request, accessToken, webRequest) {
|
|
480
480
|
if (!accessToken) {
|
|
481
481
|
throw new Error("No access token provided. Cannot disconnect provider.");
|
|
482
482
|
}
|
|
483
|
+
if (webRequest && this.config.removeProviderToken) {
|
|
484
|
+
try {
|
|
485
|
+
let context;
|
|
486
|
+
if (this.config.getSessionContext) {
|
|
487
|
+
context = await this.config.getSessionContext(webRequest);
|
|
488
|
+
}
|
|
489
|
+
if (!context || !context.userId) {
|
|
490
|
+
const { detectSessionContext: detectSessionContext2 } = await Promise.resolve().then(() => exports_session_detector);
|
|
491
|
+
context = await detectSessionContext2(webRequest);
|
|
492
|
+
}
|
|
493
|
+
if (context) {
|
|
494
|
+
try {
|
|
495
|
+
await this.config.removeProviderToken(request.provider, context);
|
|
496
|
+
} catch (error) {
|
|
497
|
+
console.error(`Failed to delete token for ${request.provider} from database via removeProviderToken:`, error);
|
|
498
|
+
}
|
|
499
|
+
}
|
|
500
|
+
} catch (error) {
|
|
501
|
+
console.error(`Failed to extract context for disconnect:`, error);
|
|
502
|
+
}
|
|
503
|
+
}
|
|
483
504
|
const url = new URL("/oauth/disconnect", this.serverUrl);
|
|
484
505
|
const response = await fetch(url.toString(), {
|
|
485
506
|
method: "POST",
|
|
@@ -830,7 +851,7 @@ function createNextOAuthHandler(config) {
|
|
|
830
851
|
if (!provider) {
|
|
831
852
|
return Response.json({ error: "Missing provider in request body" }, { status: 400 });
|
|
832
853
|
}
|
|
833
|
-
const result = await handler.handleDisconnect({ provider }, accessToken);
|
|
854
|
+
const result = await handler.handleDisconnect({ provider }, accessToken, req);
|
|
834
855
|
return Response.json(result);
|
|
835
856
|
} catch (error) {
|
|
836
857
|
console.error("[OAuth Disconnect] Error:", error);
|
|
@@ -1047,7 +1068,7 @@ function toNodeHandler(config) {
|
|
|
1047
1068
|
headers: { "Content-Type": "application/json" }
|
|
1048
1069
|
});
|
|
1049
1070
|
} else {
|
|
1050
|
-
const result = await oauthHandler.handleDisconnect({ provider }, accessToken);
|
|
1071
|
+
const result = await oauthHandler.handleDisconnect({ provider }, accessToken, webReq);
|
|
1051
1072
|
webRes = new Response(JSON.stringify(result), {
|
|
1052
1073
|
status: 200,
|
|
1053
1074
|
headers: { "Content-Type": "application/json" }
|
|
@@ -1608,6 +1629,29 @@ class OAuthManager {
|
|
|
1608
1629
|
} catch (error) {
|
|
1609
1630
|
console.error(`Failed to delete token for ${provider} from database via setProviderToken:`, error);
|
|
1610
1631
|
}
|
|
1632
|
+
} else {
|
|
1633
|
+
try {
|
|
1634
|
+
const tokenData = await this.getProviderToken(provider);
|
|
1635
|
+
if (tokenData?.accessToken) {
|
|
1636
|
+
const url = this.apiBaseUrl ? `${this.apiBaseUrl}${this.oauthApiBase}/disconnect` : `${this.oauthApiBase}/disconnect`;
|
|
1637
|
+
const response = await fetch(url, {
|
|
1638
|
+
method: "POST",
|
|
1639
|
+
headers: {
|
|
1640
|
+
"Content-Type": "application/json",
|
|
1641
|
+
Authorization: `Bearer ${tokenData.accessToken}`
|
|
1642
|
+
},
|
|
1643
|
+
body: JSON.stringify({
|
|
1644
|
+
provider
|
|
1645
|
+
})
|
|
1646
|
+
});
|
|
1647
|
+
if (!response.ok) {
|
|
1648
|
+
const errorText = await response.text();
|
|
1649
|
+
console.error(`Failed to disconnect ${provider} via API: ${response.status} ${errorText}`);
|
|
1650
|
+
}
|
|
1651
|
+
}
|
|
1652
|
+
} catch (error) {
|
|
1653
|
+
console.error(`Failed to disconnect ${provider} via API:`, error);
|
|
1654
|
+
}
|
|
1611
1655
|
}
|
|
1612
1656
|
this.providerTokens.delete(provider);
|
|
1613
1657
|
this.clearProviderToken(provider);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nextjs.d.ts","sourceRoot":"","sources":["../../../src/adapters/nextjs.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAgB,KAAK,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAG1E,KAAK,WAAW,GAAG,GAAG,CAAC;AACvB,KAAK,YAAY,GAAG,GAAG,CAAC;AAExB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,kBAAkB;IAI7D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAwCG;mBACkB,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC;IAuBxD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAyCG;kBACiB,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC;IAuBvD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAoCG;gBACe,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC;IA+BrD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAuCG;oBACmB,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"nextjs.d.ts","sourceRoot":"","sources":["../../../src/adapters/nextjs.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAgB,KAAK,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAG1E,KAAK,WAAW,GAAG,GAAG,CAAC;AACvB,KAAK,YAAY,GAAG,GAAG,CAAC;AAExB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,kBAAkB;IAI7D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAwCG;mBACkB,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC;IAuBxD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAyCG;kBACiB,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC;IAuBvD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAoCG;gBACe,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC;IA+BrD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAuCG;oBACmB,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC;IAkCzD;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;;QAGC;;WAEG;kBAEI,WAAW,WACP;YAAE,MAAM,EAAE;gBAAE,MAAM,EAAE,MAAM,CAAA;aAAE,GAAG,OAAO,CAAC;gBAAE,MAAM,EAAE,MAAM,CAAA;aAAE,CAAC,CAAA;SAAE,GACpE,OAAO,CAAC,YAAY,CAAC;QA2BxB;;WAEG;iBAEI,WAAW,WACP;YAAE,MAAM,EAAE;gBAAE,MAAM,EAAE,MAAM,CAAA;aAAE,GAAG,OAAO,CAAC;gBAAE,MAAM,EAAE,MAAM,CAAA;aAAE,CAAC,CAAA;SAAE,GACpE,OAAO,CAAC,YAAY,CAAC;;IAiB5B;;;;;;;;;;;;;;;;;;;;;;;OAuBG;aACY,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC;IAelD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAmCG;qCAC8B;QAC/B,6DAA6D;QAC7D,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,iEAAiE;QACjE,gBAAgB,CAAC,EAAE,MAAM,CAAC;KAC3B;QAKG;;WAEG;kBAEI,WAAW,WACP;YAAE,MAAM,EAAE;gBAAE,GAAG,EAAE,MAAM,EAAE,CAAA;aAAE,GAAG,OAAO,CAAC;gBAAE,GAAG,EAAE,MAAM,EAAE,CAAA;aAAE,CAAC,CAAA;SAAE,GAClE,OAAO,CAAC,YAAY,CAAC;QAsCxB;;WAEG;iBAEI,WAAW,WACP;YAAE,MAAM,EAAE;gBAAE,GAAG,EAAE,MAAM,EAAE,CAAA;aAAE,GAAG,OAAO,CAAC;gBAAE,GAAG,EAAE,MAAM,EAAE,CAAA;aAAE,CAAC,CAAA;SAAE,GAClE,OAAO,CAAC,YAAY,CAAC;;EA+F/B"}
|
package/dist/adapters/nextjs.js
CHANGED
|
@@ -476,10 +476,31 @@ class OAuthHandler {
|
|
|
476
476
|
const data = await response.json();
|
|
477
477
|
return data;
|
|
478
478
|
}
|
|
479
|
-
async handleDisconnect(request, accessToken) {
|
|
479
|
+
async handleDisconnect(request, accessToken, webRequest) {
|
|
480
480
|
if (!accessToken) {
|
|
481
481
|
throw new Error("No access token provided. Cannot disconnect provider.");
|
|
482
482
|
}
|
|
483
|
+
if (webRequest && this.config.removeProviderToken) {
|
|
484
|
+
try {
|
|
485
|
+
let context;
|
|
486
|
+
if (this.config.getSessionContext) {
|
|
487
|
+
context = await this.config.getSessionContext(webRequest);
|
|
488
|
+
}
|
|
489
|
+
if (!context || !context.userId) {
|
|
490
|
+
const { detectSessionContext: detectSessionContext2 } = await Promise.resolve().then(() => exports_session_detector);
|
|
491
|
+
context = await detectSessionContext2(webRequest);
|
|
492
|
+
}
|
|
493
|
+
if (context) {
|
|
494
|
+
try {
|
|
495
|
+
await this.config.removeProviderToken(request.provider, context);
|
|
496
|
+
} catch (error) {
|
|
497
|
+
console.error(`Failed to delete token for ${request.provider} from database via removeProviderToken:`, error);
|
|
498
|
+
}
|
|
499
|
+
}
|
|
500
|
+
} catch (error) {
|
|
501
|
+
console.error(`Failed to extract context for disconnect:`, error);
|
|
502
|
+
}
|
|
503
|
+
}
|
|
483
504
|
const url = new URL("/oauth/disconnect", this.serverUrl);
|
|
484
505
|
const response = await fetch(url.toString(), {
|
|
485
506
|
method: "POST",
|
|
@@ -692,7 +713,7 @@ function createNextOAuthHandler(config) {
|
|
|
692
713
|
if (!provider) {
|
|
693
714
|
return Response.json({ error: "Missing provider in request body" }, { status: 400 });
|
|
694
715
|
}
|
|
695
|
-
const result = await handler.handleDisconnect({ provider }, accessToken);
|
|
716
|
+
const result = await handler.handleDisconnect({ provider }, accessToken, req);
|
|
696
717
|
return Response.json(result);
|
|
697
718
|
} catch (error) {
|
|
698
719
|
console.error("[OAuth Disconnect] Error:", error);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../../src/adapters/node.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAgB,KAAK,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAC1E,OAAO,KAAK,EAAE,mBAAmB,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,MAAM,CAAC;AAEjF;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,WAAW,EAAE,mBAAmB,GAAG,OAAO,CAYzE;AAkDD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,kBAAkB,IAGxC,KAAK,eAAe,EAAE,KAAK,cAAc,KAAG,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../../src/adapters/node.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAgB,KAAK,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAC1E,OAAO,KAAK,EAAE,mBAAmB,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,MAAM,CAAC;AAEjF;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,WAAW,EAAE,mBAAmB,GAAG,OAAO,CAYzE;AAkDD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,kBAAkB,IAGxC,KAAK,eAAe,EAAE,KAAK,cAAc,KAAG,OAAO,CAAC,IAAI,CAAC,CAqIxE"}
|
package/dist/adapters/node.js
CHANGED
|
@@ -476,10 +476,31 @@ class OAuthHandler {
|
|
|
476
476
|
const data = await response.json();
|
|
477
477
|
return data;
|
|
478
478
|
}
|
|
479
|
-
async handleDisconnect(request, accessToken) {
|
|
479
|
+
async handleDisconnect(request, accessToken, webRequest) {
|
|
480
480
|
if (!accessToken) {
|
|
481
481
|
throw new Error("No access token provided. Cannot disconnect provider.");
|
|
482
482
|
}
|
|
483
|
+
if (webRequest && this.config.removeProviderToken) {
|
|
484
|
+
try {
|
|
485
|
+
let context;
|
|
486
|
+
if (this.config.getSessionContext) {
|
|
487
|
+
context = await this.config.getSessionContext(webRequest);
|
|
488
|
+
}
|
|
489
|
+
if (!context || !context.userId) {
|
|
490
|
+
const { detectSessionContext: detectSessionContext2 } = await Promise.resolve().then(() => exports_session_detector);
|
|
491
|
+
context = await detectSessionContext2(webRequest);
|
|
492
|
+
}
|
|
493
|
+
if (context) {
|
|
494
|
+
try {
|
|
495
|
+
await this.config.removeProviderToken(request.provider, context);
|
|
496
|
+
} catch (error) {
|
|
497
|
+
console.error(`Failed to delete token for ${request.provider} from database via removeProviderToken:`, error);
|
|
498
|
+
}
|
|
499
|
+
}
|
|
500
|
+
} catch (error) {
|
|
501
|
+
console.error(`Failed to extract context for disconnect:`, error);
|
|
502
|
+
}
|
|
503
|
+
}
|
|
483
504
|
const url = new URL("/oauth/disconnect", this.serverUrl);
|
|
484
505
|
const response = await fetch(url.toString(), {
|
|
485
506
|
method: "POST",
|
|
@@ -625,7 +646,7 @@ function toNodeHandler(config) {
|
|
|
625
646
|
headers: { "Content-Type": "application/json" }
|
|
626
647
|
});
|
|
627
648
|
} else {
|
|
628
|
-
const result = await oauthHandler.handleDisconnect({ provider }, accessToken);
|
|
649
|
+
const result = await oauthHandler.handleDisconnect({ provider }, accessToken, webReq);
|
|
629
650
|
webRes = new Response(JSON.stringify(result), {
|
|
630
651
|
status: 200,
|
|
631
652
|
headers: { "Content-Type": "application/json" }
|
|
@@ -476,10 +476,31 @@ class OAuthHandler {
|
|
|
476
476
|
const data = await response.json();
|
|
477
477
|
return data;
|
|
478
478
|
}
|
|
479
|
-
async handleDisconnect(request, accessToken) {
|
|
479
|
+
async handleDisconnect(request, accessToken, webRequest) {
|
|
480
480
|
if (!accessToken) {
|
|
481
481
|
throw new Error("No access token provided. Cannot disconnect provider.");
|
|
482
482
|
}
|
|
483
|
+
if (webRequest && this.config.removeProviderToken) {
|
|
484
|
+
try {
|
|
485
|
+
let context;
|
|
486
|
+
if (this.config.getSessionContext) {
|
|
487
|
+
context = await this.config.getSessionContext(webRequest);
|
|
488
|
+
}
|
|
489
|
+
if (!context || !context.userId) {
|
|
490
|
+
const { detectSessionContext: detectSessionContext2 } = await Promise.resolve().then(() => exports_session_detector);
|
|
491
|
+
context = await detectSessionContext2(webRequest);
|
|
492
|
+
}
|
|
493
|
+
if (context) {
|
|
494
|
+
try {
|
|
495
|
+
await this.config.removeProviderToken(request.provider, context);
|
|
496
|
+
} catch (error) {
|
|
497
|
+
console.error(`Failed to delete token for ${request.provider} from database via removeProviderToken:`, error);
|
|
498
|
+
}
|
|
499
|
+
}
|
|
500
|
+
} catch (error) {
|
|
501
|
+
console.error(`Failed to extract context for disconnect:`, error);
|
|
502
|
+
}
|
|
503
|
+
}
|
|
483
504
|
const url = new URL("/oauth/disconnect", this.serverUrl);
|
|
484
505
|
const response = await fetch(url.toString(), {
|
|
485
506
|
method: "POST",
|
|
@@ -830,7 +851,7 @@ function createNextOAuthHandler(config) {
|
|
|
830
851
|
if (!provider) {
|
|
831
852
|
return Response.json({ error: "Missing provider in request body" }, { status: 400 });
|
|
832
853
|
}
|
|
833
|
-
const result = await handler.handleDisconnect({ provider }, accessToken);
|
|
854
|
+
const result = await handler.handleDisconnect({ provider }, accessToken, req);
|
|
834
855
|
return Response.json(result);
|
|
835
856
|
} catch (error) {
|
|
836
857
|
console.error("[OAuth Disconnect] Error:", error);
|
|
@@ -1467,6 +1488,29 @@ class OAuthManager {
|
|
|
1467
1488
|
} catch (error) {
|
|
1468
1489
|
console.error(`Failed to delete token for ${provider} from database via setProviderToken:`, error);
|
|
1469
1490
|
}
|
|
1491
|
+
} else {
|
|
1492
|
+
try {
|
|
1493
|
+
const tokenData = await this.getProviderToken(provider);
|
|
1494
|
+
if (tokenData?.accessToken) {
|
|
1495
|
+
const url = this.apiBaseUrl ? `${this.apiBaseUrl}${this.oauthApiBase}/disconnect` : `${this.oauthApiBase}/disconnect`;
|
|
1496
|
+
const response = await fetch(url, {
|
|
1497
|
+
method: "POST",
|
|
1498
|
+
headers: {
|
|
1499
|
+
"Content-Type": "application/json",
|
|
1500
|
+
Authorization: `Bearer ${tokenData.accessToken}`
|
|
1501
|
+
},
|
|
1502
|
+
body: JSON.stringify({
|
|
1503
|
+
provider
|
|
1504
|
+
})
|
|
1505
|
+
});
|
|
1506
|
+
if (!response.ok) {
|
|
1507
|
+
const errorText = await response.text();
|
|
1508
|
+
console.error(`Failed to disconnect ${provider} via API: ${response.status} ${errorText}`);
|
|
1509
|
+
}
|
|
1510
|
+
}
|
|
1511
|
+
} catch (error) {
|
|
1512
|
+
console.error(`Failed to disconnect ${provider} via API:`, error);
|
|
1513
|
+
}
|
|
1470
1514
|
}
|
|
1471
1515
|
this.providerTokens.delete(provider);
|
|
1472
1516
|
this.clearProviderToken(provider);
|
|
@@ -476,10 +476,31 @@ class OAuthHandler {
|
|
|
476
476
|
const data = await response.json();
|
|
477
477
|
return data;
|
|
478
478
|
}
|
|
479
|
-
async handleDisconnect(request, accessToken) {
|
|
479
|
+
async handleDisconnect(request, accessToken, webRequest) {
|
|
480
480
|
if (!accessToken) {
|
|
481
481
|
throw new Error("No access token provided. Cannot disconnect provider.");
|
|
482
482
|
}
|
|
483
|
+
if (webRequest && this.config.removeProviderToken) {
|
|
484
|
+
try {
|
|
485
|
+
let context;
|
|
486
|
+
if (this.config.getSessionContext) {
|
|
487
|
+
context = await this.config.getSessionContext(webRequest);
|
|
488
|
+
}
|
|
489
|
+
if (!context || !context.userId) {
|
|
490
|
+
const { detectSessionContext: detectSessionContext2 } = await Promise.resolve().then(() => exports_session_detector);
|
|
491
|
+
context = await detectSessionContext2(webRequest);
|
|
492
|
+
}
|
|
493
|
+
if (context) {
|
|
494
|
+
try {
|
|
495
|
+
await this.config.removeProviderToken(request.provider, context);
|
|
496
|
+
} catch (error) {
|
|
497
|
+
console.error(`Failed to delete token for ${request.provider} from database via removeProviderToken:`, error);
|
|
498
|
+
}
|
|
499
|
+
}
|
|
500
|
+
} catch (error) {
|
|
501
|
+
console.error(`Failed to extract context for disconnect:`, error);
|
|
502
|
+
}
|
|
503
|
+
}
|
|
483
504
|
const url = new URL("/oauth/disconnect", this.serverUrl);
|
|
484
505
|
const response = await fetch(url.toString(), {
|
|
485
506
|
method: "POST",
|
|
@@ -830,7 +851,7 @@ function createNextOAuthHandler(config) {
|
|
|
830
851
|
if (!provider) {
|
|
831
852
|
return Response.json({ error: "Missing provider in request body" }, { status: 400 });
|
|
832
853
|
}
|
|
833
|
-
const result = await handler.handleDisconnect({ provider }, accessToken);
|
|
854
|
+
const result = await handler.handleDisconnect({ provider }, accessToken, req);
|
|
834
855
|
return Response.json(result);
|
|
835
856
|
} catch (error) {
|
|
836
857
|
console.error("[OAuth Disconnect] Error:", error);
|
|
@@ -1467,6 +1488,29 @@ class OAuthManager {
|
|
|
1467
1488
|
} catch (error) {
|
|
1468
1489
|
console.error(`Failed to delete token for ${provider} from database via setProviderToken:`, error);
|
|
1469
1490
|
}
|
|
1491
|
+
} else {
|
|
1492
|
+
try {
|
|
1493
|
+
const tokenData = await this.getProviderToken(provider);
|
|
1494
|
+
if (tokenData?.accessToken) {
|
|
1495
|
+
const url = this.apiBaseUrl ? `${this.apiBaseUrl}${this.oauthApiBase}/disconnect` : `${this.oauthApiBase}/disconnect`;
|
|
1496
|
+
const response = await fetch(url, {
|
|
1497
|
+
method: "POST",
|
|
1498
|
+
headers: {
|
|
1499
|
+
"Content-Type": "application/json",
|
|
1500
|
+
Authorization: `Bearer ${tokenData.accessToken}`
|
|
1501
|
+
},
|
|
1502
|
+
body: JSON.stringify({
|
|
1503
|
+
provider
|
|
1504
|
+
})
|
|
1505
|
+
});
|
|
1506
|
+
if (!response.ok) {
|
|
1507
|
+
const errorText = await response.text();
|
|
1508
|
+
console.error(`Failed to disconnect ${provider} via API: ${response.status} ${errorText}`);
|
|
1509
|
+
}
|
|
1510
|
+
}
|
|
1511
|
+
} catch (error) {
|
|
1512
|
+
console.error(`Failed to disconnect ${provider} via API:`, error);
|
|
1513
|
+
}
|
|
1470
1514
|
}
|
|
1471
1515
|
this.providerTokens.delete(provider);
|
|
1472
1516
|
this.clearProviderToken(provider);
|
package/dist/index.js
CHANGED
|
@@ -710,10 +710,31 @@ class OAuthHandler {
|
|
|
710
710
|
const data = await response.json();
|
|
711
711
|
return data;
|
|
712
712
|
}
|
|
713
|
-
async handleDisconnect(request, accessToken) {
|
|
713
|
+
async handleDisconnect(request, accessToken, webRequest) {
|
|
714
714
|
if (!accessToken) {
|
|
715
715
|
throw new Error("No access token provided. Cannot disconnect provider.");
|
|
716
716
|
}
|
|
717
|
+
if (webRequest && this.config.removeProviderToken) {
|
|
718
|
+
try {
|
|
719
|
+
let context;
|
|
720
|
+
if (this.config.getSessionContext) {
|
|
721
|
+
context = await this.config.getSessionContext(webRequest);
|
|
722
|
+
}
|
|
723
|
+
if (!context || !context.userId) {
|
|
724
|
+
const { detectSessionContext: detectSessionContext2 } = await Promise.resolve().then(() => exports_session_detector);
|
|
725
|
+
context = await detectSessionContext2(webRequest);
|
|
726
|
+
}
|
|
727
|
+
if (context) {
|
|
728
|
+
try {
|
|
729
|
+
await this.config.removeProviderToken(request.provider, context);
|
|
730
|
+
} catch (error) {
|
|
731
|
+
console.error(`Failed to delete token for ${request.provider} from database via removeProviderToken:`, error);
|
|
732
|
+
}
|
|
733
|
+
}
|
|
734
|
+
} catch (error) {
|
|
735
|
+
console.error(`Failed to extract context for disconnect:`, error);
|
|
736
|
+
}
|
|
737
|
+
}
|
|
717
738
|
const url = new URL("/oauth/disconnect", this.serverUrl);
|
|
718
739
|
const response = await fetch(url.toString(), {
|
|
719
740
|
method: "POST",
|
|
@@ -1308,6 +1329,29 @@ class OAuthManager {
|
|
|
1308
1329
|
} catch (error) {
|
|
1309
1330
|
console.error(`Failed to delete token for ${provider} from database via setProviderToken:`, error);
|
|
1310
1331
|
}
|
|
1332
|
+
} else {
|
|
1333
|
+
try {
|
|
1334
|
+
const tokenData = await this.getProviderToken(provider);
|
|
1335
|
+
if (tokenData?.accessToken) {
|
|
1336
|
+
const url = this.apiBaseUrl ? `${this.apiBaseUrl}${this.oauthApiBase}/disconnect` : `${this.oauthApiBase}/disconnect`;
|
|
1337
|
+
const response = await fetch(url, {
|
|
1338
|
+
method: "POST",
|
|
1339
|
+
headers: {
|
|
1340
|
+
"Content-Type": "application/json",
|
|
1341
|
+
Authorization: `Bearer ${tokenData.accessToken}`
|
|
1342
|
+
},
|
|
1343
|
+
body: JSON.stringify({
|
|
1344
|
+
provider
|
|
1345
|
+
})
|
|
1346
|
+
});
|
|
1347
|
+
if (!response.ok) {
|
|
1348
|
+
const errorText = await response.text();
|
|
1349
|
+
console.error(`Failed to disconnect ${provider} via API: ${response.status} ${errorText}`);
|
|
1350
|
+
}
|
|
1351
|
+
}
|
|
1352
|
+
} catch (error) {
|
|
1353
|
+
console.error(`Failed to disconnect ${provider} via API:`, error);
|
|
1354
|
+
}
|
|
1311
1355
|
}
|
|
1312
1356
|
this.providerTokens.delete(provider);
|
|
1313
1357
|
this.clearProviderToken(provider);
|
|
@@ -2381,7 +2425,7 @@ function createNextOAuthHandler(config) {
|
|
|
2381
2425
|
if (!provider) {
|
|
2382
2426
|
return Response.json({ error: "Missing provider in request body" }, { status: 400 });
|
|
2383
2427
|
}
|
|
2384
|
-
const result = await handler.handleDisconnect({ provider }, accessToken);
|
|
2428
|
+
const result = await handler.handleDisconnect({ provider }, accessToken, req);
|
|
2385
2429
|
return Response.json(result);
|
|
2386
2430
|
} catch (error) {
|
|
2387
2431
|
console.error("[OAuth Disconnect] Error:", error);
|
|
@@ -2639,7 +2683,7 @@ function toNodeHandler(config) {
|
|
|
2639
2683
|
headers: { "Content-Type": "application/json" }
|
|
2640
2684
|
});
|
|
2641
2685
|
} else {
|
|
2642
|
-
const result = await oauthHandler.handleDisconnect({ provider }, accessToken);
|
|
2686
|
+
const result = await oauthHandler.handleDisconnect({ provider }, accessToken, webReq);
|
|
2643
2687
|
webRes = new Response(JSON.stringify(result), {
|
|
2644
2688
|
status: 200,
|
|
2645
2689
|
headers: { "Content-Type": "application/json" }
|
package/dist/oauth.js
CHANGED
|
@@ -498,10 +498,31 @@ class OAuthHandler {
|
|
|
498
498
|
const data = await response.json();
|
|
499
499
|
return data;
|
|
500
500
|
}
|
|
501
|
-
async handleDisconnect(request, accessToken) {
|
|
501
|
+
async handleDisconnect(request, accessToken, webRequest) {
|
|
502
502
|
if (!accessToken) {
|
|
503
503
|
throw new Error("No access token provided. Cannot disconnect provider.");
|
|
504
504
|
}
|
|
505
|
+
if (webRequest && this.config.removeProviderToken) {
|
|
506
|
+
try {
|
|
507
|
+
let context;
|
|
508
|
+
if (this.config.getSessionContext) {
|
|
509
|
+
context = await this.config.getSessionContext(webRequest);
|
|
510
|
+
}
|
|
511
|
+
if (!context || !context.userId) {
|
|
512
|
+
const { detectSessionContext: detectSessionContext2 } = await Promise.resolve().then(() => exports_session_detector);
|
|
513
|
+
context = await detectSessionContext2(webRequest);
|
|
514
|
+
}
|
|
515
|
+
if (context) {
|
|
516
|
+
try {
|
|
517
|
+
await this.config.removeProviderToken(request.provider, context);
|
|
518
|
+
} catch (error) {
|
|
519
|
+
console.error(`Failed to delete token for ${request.provider} from database via removeProviderToken:`, error);
|
|
520
|
+
}
|
|
521
|
+
}
|
|
522
|
+
} catch (error) {
|
|
523
|
+
console.error(`Failed to extract context for disconnect:`, error);
|
|
524
|
+
}
|
|
525
|
+
}
|
|
505
526
|
const url = new URL("/oauth/disconnect", this.serverUrl);
|
|
506
527
|
const response = await fetch(url.toString(), {
|
|
507
528
|
method: "POST",
|
|
@@ -595,7 +616,7 @@ async function POST(req, context) {
|
|
|
595
616
|
if (!body.provider) {
|
|
596
617
|
return createErrorResponse("Missing provider in request body", 400);
|
|
597
618
|
}
|
|
598
|
-
const result = await handler.handleDisconnect({ provider: body.provider }, accessToken);
|
|
619
|
+
const result = await handler.handleDisconnect({ provider: body.provider }, accessToken, req);
|
|
599
620
|
return createSuccessResponse(result);
|
|
600
621
|
}
|
|
601
622
|
return createErrorResponse(`Unknown action: ${action}`, 404);
|
package/dist/server.js
CHANGED
|
@@ -732,10 +732,31 @@ class OAuthHandler {
|
|
|
732
732
|
const data = await response.json();
|
|
733
733
|
return data;
|
|
734
734
|
}
|
|
735
|
-
async handleDisconnect(request, accessToken) {
|
|
735
|
+
async handleDisconnect(request, accessToken, webRequest) {
|
|
736
736
|
if (!accessToken) {
|
|
737
737
|
throw new Error("No access token provided. Cannot disconnect provider.");
|
|
738
738
|
}
|
|
739
|
+
if (webRequest && this.config.removeProviderToken) {
|
|
740
|
+
try {
|
|
741
|
+
let context;
|
|
742
|
+
if (this.config.getSessionContext) {
|
|
743
|
+
context = await this.config.getSessionContext(webRequest);
|
|
744
|
+
}
|
|
745
|
+
if (!context || !context.userId) {
|
|
746
|
+
const { detectSessionContext: detectSessionContext2 } = await Promise.resolve().then(() => exports_session_detector);
|
|
747
|
+
context = await detectSessionContext2(webRequest);
|
|
748
|
+
}
|
|
749
|
+
if (context) {
|
|
750
|
+
try {
|
|
751
|
+
await this.config.removeProviderToken(request.provider, context);
|
|
752
|
+
} catch (error) {
|
|
753
|
+
console.error(`Failed to delete token for ${request.provider} from database via removeProviderToken:`, error);
|
|
754
|
+
}
|
|
755
|
+
}
|
|
756
|
+
} catch (error) {
|
|
757
|
+
console.error(`Failed to extract context for disconnect:`, error);
|
|
758
|
+
}
|
|
759
|
+
}
|
|
739
760
|
const url = new URL("/oauth/disconnect", this.serverUrl);
|
|
740
761
|
const response = await fetch(url.toString(), {
|
|
741
762
|
method: "POST",
|
|
@@ -1301,6 +1322,29 @@ class OAuthManager {
|
|
|
1301
1322
|
} catch (error) {
|
|
1302
1323
|
console.error(`Failed to delete token for ${provider} from database via setProviderToken:`, error);
|
|
1303
1324
|
}
|
|
1325
|
+
} else {
|
|
1326
|
+
try {
|
|
1327
|
+
const tokenData = await this.getProviderToken(provider);
|
|
1328
|
+
if (tokenData?.accessToken) {
|
|
1329
|
+
const url = this.apiBaseUrl ? `${this.apiBaseUrl}${this.oauthApiBase}/disconnect` : `${this.oauthApiBase}/disconnect`;
|
|
1330
|
+
const response = await fetch(url, {
|
|
1331
|
+
method: "POST",
|
|
1332
|
+
headers: {
|
|
1333
|
+
"Content-Type": "application/json",
|
|
1334
|
+
Authorization: `Bearer ${tokenData.accessToken}`
|
|
1335
|
+
},
|
|
1336
|
+
body: JSON.stringify({
|
|
1337
|
+
provider
|
|
1338
|
+
})
|
|
1339
|
+
});
|
|
1340
|
+
if (!response.ok) {
|
|
1341
|
+
const errorText = await response.text();
|
|
1342
|
+
console.error(`Failed to disconnect ${provider} via API: ${response.status} ${errorText}`);
|
|
1343
|
+
}
|
|
1344
|
+
}
|
|
1345
|
+
} catch (error) {
|
|
1346
|
+
console.error(`Failed to disconnect ${provider} via API:`, error);
|
|
1347
|
+
}
|
|
1304
1348
|
}
|
|
1305
1349
|
this.providerTokens.delete(provider);
|
|
1306
1350
|
this.clearProviderToken(provider);
|
|
@@ -2224,7 +2268,7 @@ function createNextOAuthHandler(config) {
|
|
|
2224
2268
|
if (!provider) {
|
|
2225
2269
|
return Response.json({ error: "Missing provider in request body" }, { status: 400 });
|
|
2226
2270
|
}
|
|
2227
|
-
const result = await handler.handleDisconnect({ provider }, accessToken);
|
|
2271
|
+
const result = await handler.handleDisconnect({ provider }, accessToken, req);
|
|
2228
2272
|
return Response.json(result);
|
|
2229
2273
|
} catch (error) {
|
|
2230
2274
|
console.error("[OAuth Disconnect] Error:", error);
|
|
@@ -7015,14 +7059,16 @@ function createMCPServer(config) {
|
|
|
7015
7059
|
serverUrl: config.serverUrl,
|
|
7016
7060
|
apiKey: config.apiKey,
|
|
7017
7061
|
getSessionContext: config.getSessionContext,
|
|
7018
|
-
setProviderToken: config.setProviderToken
|
|
7062
|
+
setProviderToken: config.setProviderToken,
|
|
7063
|
+
removeProviderToken: config.removeProviderToken
|
|
7019
7064
|
};
|
|
7020
7065
|
const { POST, GET } = createOAuthRouteHandlers({
|
|
7021
7066
|
providers,
|
|
7022
7067
|
serverUrl: config.serverUrl,
|
|
7023
7068
|
apiKey: config.apiKey,
|
|
7024
7069
|
getSessionContext: config.getSessionContext,
|
|
7025
|
-
setProviderToken: config.setProviderToken
|
|
7070
|
+
setProviderToken: config.setProviderToken,
|
|
7071
|
+
removeProviderToken: config.removeProviderToken
|
|
7026
7072
|
});
|
|
7027
7073
|
const handler = async (request, context) => {
|
|
7028
7074
|
const method = request.method.toUpperCase();
|
|
@@ -7185,7 +7231,8 @@ function toNextJsHandler(clientOrOptions, redirectOptions) {
|
|
|
7185
7231
|
serverUrl: options.serverUrl,
|
|
7186
7232
|
apiKey: options.apiKey,
|
|
7187
7233
|
getSessionContext: options.getSessionContext,
|
|
7188
|
-
setProviderToken: options.setProviderToken
|
|
7234
|
+
setProviderToken: options.setProviderToken,
|
|
7235
|
+
removeProviderToken: options.removeProviderToken
|
|
7189
7236
|
};
|
|
7190
7237
|
redirectUrl = options.redirectUrl;
|
|
7191
7238
|
errorRedirectUrl = options.errorRedirectUrl;
|
|
@@ -7415,7 +7462,7 @@ function toNodeHandler(config) {
|
|
|
7415
7462
|
headers: { "Content-Type": "application/json" }
|
|
7416
7463
|
});
|
|
7417
7464
|
} else {
|
|
7418
|
-
const result = await oauthHandler.handleDisconnect({ provider }, accessToken);
|
|
7465
|
+
const result = await oauthHandler.handleDisconnect({ provider }, accessToken, webReq);
|
|
7419
7466
|
webRes = new Response(JSON.stringify(result), {
|
|
7420
7467
|
status: 200,
|
|
7421
7468
|
headers: { "Content-Type": "application/json" }
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auto-routes.d.ts","sourceRoot":"","sources":["../../../src/adapters/auto-routes.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAgB,KAAK,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAQ1E;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,kBAAkB,GAAG,IAAI,CAErE;AAED;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,kBAAkB,GAAG,IAAI,CAEhE;AAED;;;;;;;;;;;;;;;;;GAiBG;AAkBH;;;GAGG;AACH,wBAAsB,IAAI,CACxB,GAAG,EAAE,GAAG,EACR,OAAO,CAAC,EAAE;IAAE,MAAM,EAAE;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,GACvC,OAAO,CAAC,GAAG,CAAC,
|
|
1
|
+
{"version":3,"file":"auto-routes.d.ts","sourceRoot":"","sources":["../../../src/adapters/auto-routes.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAgB,KAAK,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAQ1E;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,kBAAkB,GAAG,IAAI,CAErE;AAED;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,kBAAkB,GAAG,IAAI,CAEhE;AAED;;;;;;;;;;;;;;;;;GAiBG;AAkBH;;;GAGG;AACH,wBAAsB,IAAI,CACxB,GAAG,EAAE,GAAG,EACR,OAAO,CAAC,EAAE;IAAE,MAAM,EAAE;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,GACvC,OAAO,CAAC,GAAG,CAAC,CA+Dd;AAED;;;GAGG;AACH,wBAAsB,GAAG,CACvB,GAAG,EAAE,GAAG,EACR,OAAO,CAAC,EAAE;IAAE,MAAM,EAAE;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,GACvC,OAAO,CAAC,GAAG,CAAC,CAoCd"}
|
|
@@ -68,6 +68,26 @@ export interface OAuthHandlerConfig {
|
|
|
68
68
|
* ```
|
|
69
69
|
*/
|
|
70
70
|
setProviderToken?: (provider: string, tokenData: ProviderTokenData, context?: MCPContext) => Promise<void> | void;
|
|
71
|
+
/**
|
|
72
|
+
* Optional callback to delete provider tokens from database
|
|
73
|
+
* Called automatically when disconnecting providers
|
|
74
|
+
*
|
|
75
|
+
* @param provider - Provider name (e.g., 'github')
|
|
76
|
+
* @param context - User context (userId, organizationId, etc.)
|
|
77
|
+
*
|
|
78
|
+
* @example
|
|
79
|
+
* ```typescript
|
|
80
|
+
* removeProviderToken: async (provider, context) => {
|
|
81
|
+
* const userId = context?.userId;
|
|
82
|
+
* if (!userId) return;
|
|
83
|
+
*
|
|
84
|
+
* await db.tokens.delete({
|
|
85
|
+
* where: { provider_userId: { provider, userId } }
|
|
86
|
+
* });
|
|
87
|
+
* }
|
|
88
|
+
* ```
|
|
89
|
+
*/
|
|
90
|
+
removeProviderToken?: (provider: string, context?: MCPContext) => Promise<void> | void;
|
|
71
91
|
}
|
|
72
92
|
/**
|
|
73
93
|
* Request body for authorize endpoint
|
|
@@ -209,12 +229,13 @@ export declare class OAuthHandler {
|
|
|
209
229
|
*
|
|
210
230
|
* @param request - Disconnect request with provider name
|
|
211
231
|
* @param accessToken - Access token from client
|
|
232
|
+
* @param webRequest - Optional Web Request object for context extraction
|
|
212
233
|
* @returns Disconnect response
|
|
213
234
|
*
|
|
214
235
|
* @throws Error if no access token provided
|
|
215
236
|
* @throws Error if MCP server request fails
|
|
216
237
|
*/
|
|
217
|
-
handleDisconnect(request: DisconnectRequest, accessToken: string): Promise<DisconnectResponse>;
|
|
238
|
+
handleDisconnect(request: DisconnectRequest, accessToken: string, webRequest?: Request): Promise<DisconnectResponse>;
|
|
218
239
|
/**
|
|
219
240
|
* Handle MCP tool call
|
|
220
241
|
* Forwards tool call requests to MCP server with API key and provider token
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base-handler.d.ts","sourceRoot":"","sources":["../../../src/adapters/base-handler.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAO3D;;;GAGG;AACH,MAAM,WAAW,kBAAkB;IACjC,uCAAuC;IACvC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE;QACxB,iDAAiD;QACjD,QAAQ,EAAE,MAAM,CAAC;QACjB,qDAAqD;QACrD,YAAY,EAAE,MAAM,CAAC;QACrB,qCAAqC;QACrC,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,8CAA8C;QAC9C,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;QAClB,kFAAkF;QAClF,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;KAC9B,CAAC,CAAC;IACH;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;;;;;;;;;;;;OAcG;IACH,iBAAiB,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC,GAAG,UAAU,GAAG,SAAS,CAAC;IACnG;;;;;;;;;;;;;;;;;;OAkBG;IACH,gBAAgB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,iBAAiB,EAAE,OAAO,CAAC,EAAE,UAAU,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"base-handler.d.ts","sourceRoot":"","sources":["../../../src/adapters/base-handler.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nextjs.d.ts","sourceRoot":"","sources":["../../../src/adapters/nextjs.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAgB,KAAK,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAG1E,KAAK,WAAW,GAAG,GAAG,CAAC;AACvB,KAAK,YAAY,GAAG,GAAG,CAAC;AAExB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,kBAAkB;IAI7D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAwCG;mBACkB,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC;IAuBxD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAyCG;kBACiB,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC;IAuBvD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAoCG;gBACe,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC;IA+BrD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAuCG;oBACmB,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"nextjs.d.ts","sourceRoot":"","sources":["../../../src/adapters/nextjs.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAgB,KAAK,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAG1E,KAAK,WAAW,GAAG,GAAG,CAAC;AACvB,KAAK,YAAY,GAAG,GAAG,CAAC;AAExB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,kBAAkB;IAI7D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAwCG;mBACkB,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC;IAuBxD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAyCG;kBACiB,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC;IAuBvD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAoCG;gBACe,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC;IA+BrD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAuCG;oBACmB,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC;IAkCzD;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;;QAGC;;WAEG;kBAEI,WAAW,WACP;YAAE,MAAM,EAAE;gBAAE,MAAM,EAAE,MAAM,CAAA;aAAE,GAAG,OAAO,CAAC;gBAAE,MAAM,EAAE,MAAM,CAAA;aAAE,CAAC,CAAA;SAAE,GACpE,OAAO,CAAC,YAAY,CAAC;QA2BxB;;WAEG;iBAEI,WAAW,WACP;YAAE,MAAM,EAAE;gBAAE,MAAM,EAAE,MAAM,CAAA;aAAE,GAAG,OAAO,CAAC;gBAAE,MAAM,EAAE,MAAM,CAAA;aAAE,CAAC,CAAA;SAAE,GACpE,OAAO,CAAC,YAAY,CAAC;;IAiB5B;;;;;;;;;;;;;;;;;;;;;;;OAuBG;aACY,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC;IAelD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAmCG;qCAC8B;QAC/B,6DAA6D;QAC7D,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,iEAAiE;QACjE,gBAAgB,CAAC,EAAE,MAAM,CAAC;KAC3B;QAKG;;WAEG;kBAEI,WAAW,WACP;YAAE,MAAM,EAAE;gBAAE,GAAG,EAAE,MAAM,EAAE,CAAA;aAAE,GAAG,OAAO,CAAC;gBAAE,GAAG,EAAE,MAAM,EAAE,CAAA;aAAE,CAAC,CAAA;SAAE,GAClE,OAAO,CAAC,YAAY,CAAC;QAsCxB;;WAEG;iBAEI,WAAW,WACP;YAAE,MAAM,EAAE;gBAAE,GAAG,EAAE,MAAM,EAAE,CAAA;aAAE,GAAG,OAAO,CAAC;gBAAE,GAAG,EAAE,MAAM,EAAE,CAAA;aAAE,CAAC,CAAA;SAAE,GAClE,OAAO,CAAC,YAAY,CAAC;;EA+F/B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../../src/adapters/node.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAgB,KAAK,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAC1E,OAAO,KAAK,EAAE,mBAAmB,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,MAAM,CAAC;AAEjF;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,WAAW,EAAE,mBAAmB,GAAG,OAAO,CAYzE;AAkDD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,kBAAkB,IAGxC,KAAK,eAAe,EAAE,KAAK,cAAc,KAAG,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../../src/adapters/node.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAgB,KAAK,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAC1E,OAAO,KAAK,EAAE,mBAAmB,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,MAAM,CAAC;AAEjF;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,WAAW,EAAE,mBAAmB,GAAG,OAAO,CAYzE;AAkDD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,kBAAkB,IAGxC,KAAK,eAAe,EAAE,KAAK,cAAc,KAAG,OAAO,CAAC,IAAI,CAAC,CAqIxE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../../src/oauth/manager.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,KAAK,EACV,eAAe,EAEf,UAAU,EAGV,iBAAiB,EAClB,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAIrD;;;GAGG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,YAAY,CAAuC;IAC3D,OAAO,CAAC,cAAc,CAA6C;IACnE,OAAO,CAAC,aAAa,CAAqB;IAC1C,OAAO,CAAC,UAAU,CAAkB;IACpC,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,UAAU,CAAC,CAAS;IAC5B,OAAO,CAAC,gBAAgB,CAAC,CAAqH;IAC9I,OAAO,CAAC,gBAAgB,CAAC,CAAwG;IACjI,OAAO,CAAC,mBAAmB,CAAC,CAAmE;IAC/F,OAAO,CAAC,gBAAgB,CAAU;gBAGhC,YAAY,EAAE,MAAM,EACpB,UAAU,CAAC,EAAE,OAAO,CAAC,eAAe,CAAC,EACrC,UAAU,CAAC,EAAE,MAAM,EACnB,cAAc,CAAC,EAAE;QACf,gBAAgB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,UAAU,KAAK,OAAO,CAAC,iBAAiB,GAAG,SAAS,CAAC,GAAG,iBAAiB,GAAG,SAAS,CAAC;QACtI,gBAAgB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,iBAAiB,GAAG,IAAI,EAAE,OAAO,CAAC,EAAE,UAAU,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;QACzH,mBAAmB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,UAAU,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;QACvF,gBAAgB,CAAC,EAAE,OAAO,CAAC;KAC5B;IAqBH;;;;;;;;;;;;;;;;;;;;;OAqBG;IACG,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA8C5F;;;;;;;;;;;;;;OAcG;IACG,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,GAAG;QAAE,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;IAkEpG;;;;;;;;;;;;;;;;;OAiBG;IACG,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAoB5D;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACG,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;
|
|
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.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,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAI9D;;GAEG;AACH,MAAM,MAAM,eAAe,CAAC,aAAa,SAAS,SAAS,cAAc,EAAE,IAAI,SAAS,CAAC,aAAa,CAAC,GAAG;IACxG,uEAAuE;IACvE,OAAO,EAAE,CAAC,OAAO,EAAE,OAAO,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,CAAC,CAAC;IACtH,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;AA6CF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2DG;AACH,wBAAgB,eAAe,CAAC,aAAa,SAAS,SAAS,cAAc,EAAE,EAC7E,MAAM,EAAE,eAAe,CAAC,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/server.ts"],"names":[],"mappings":"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"}
|