integrate-sdk 0.3.12 → 0.3.14
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/index.js +77 -2
- package/dist/oauth.js +41 -1
- package/dist/server.js +77 -2
- package/dist/src/adapters/auto-routes.d.ts +1 -1
- package/dist/src/adapters/auto-routes.d.ts.map +1 -1
- package/dist/src/adapters/base-handler.d.ts +25 -0
- package/dist/src/adapters/base-handler.d.ts.map +1 -1
- package/dist/src/adapters/nextjs.d.ts +46 -2
- package/dist/src/adapters/nextjs.d.ts.map +1 -1
- package/dist/src/client.d.ts +1 -0
- package/dist/src/client.d.ts.map +1 -1
- package/dist/src/index.d.ts +1 -1
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/oauth/manager.d.ts +14 -0
- package/dist/src/oauth/manager.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -245,6 +245,28 @@ class OAuthHandler {
|
|
|
245
245
|
const data = await response.json();
|
|
246
246
|
return data;
|
|
247
247
|
}
|
|
248
|
+
async handleDisconnect(request, sessionToken) {
|
|
249
|
+
if (!sessionToken) {
|
|
250
|
+
throw new Error("No session token provided. Cannot disconnect provider.");
|
|
251
|
+
}
|
|
252
|
+
const url = new URL("/oauth/disconnect", this.serverUrl);
|
|
253
|
+
const response = await fetch(url.toString(), {
|
|
254
|
+
method: "POST",
|
|
255
|
+
headers: {
|
|
256
|
+
"Content-Type": "application/json",
|
|
257
|
+
"X-Session-Token": sessionToken
|
|
258
|
+
},
|
|
259
|
+
body: JSON.stringify({
|
|
260
|
+
provider: request.provider
|
|
261
|
+
})
|
|
262
|
+
});
|
|
263
|
+
if (!response.ok) {
|
|
264
|
+
const error = await response.text();
|
|
265
|
+
throw new Error(`MCP server failed to disconnect provider: ${error}`);
|
|
266
|
+
}
|
|
267
|
+
const data = await response.json();
|
|
268
|
+
return data;
|
|
269
|
+
}
|
|
248
270
|
}
|
|
249
271
|
var MCP_SERVER_URL2 = "https://mcp.integrate.dev/api/v1/mcp";
|
|
250
272
|
|
|
@@ -293,6 +315,24 @@ function createNextOAuthHandler(config) {
|
|
|
293
315
|
return Response.json({ error: error.message || "Failed to check authorization status" }, { status: 500 });
|
|
294
316
|
}
|
|
295
317
|
},
|
|
318
|
+
async disconnect(req) {
|
|
319
|
+
try {
|
|
320
|
+
const sessionToken = req.headers.get("x-session-token");
|
|
321
|
+
if (!sessionToken) {
|
|
322
|
+
return Response.json({ error: "Missing X-Session-Token header" }, { status: 400 });
|
|
323
|
+
}
|
|
324
|
+
const body = await req.json();
|
|
325
|
+
const { provider } = body;
|
|
326
|
+
if (!provider) {
|
|
327
|
+
return Response.json({ error: "Missing provider in request body" }, { status: 400 });
|
|
328
|
+
}
|
|
329
|
+
const result = await handler.handleDisconnect({ provider }, sessionToken);
|
|
330
|
+
return Response.json(result);
|
|
331
|
+
} catch (error) {
|
|
332
|
+
console.error("[OAuth Disconnect] Error:", error);
|
|
333
|
+
return Response.json({ error: error.message || "Failed to disconnect provider" }, { status: 500 });
|
|
334
|
+
}
|
|
335
|
+
},
|
|
296
336
|
createRoutes() {
|
|
297
337
|
return {
|
|
298
338
|
async POST(req, context) {
|
|
@@ -304,6 +344,9 @@ function createNextOAuthHandler(config) {
|
|
|
304
344
|
if (action === "callback") {
|
|
305
345
|
return handlers.callback(req);
|
|
306
346
|
}
|
|
347
|
+
if (action === "disconnect") {
|
|
348
|
+
return handlers.disconnect(req);
|
|
349
|
+
}
|
|
307
350
|
return Response.json({ error: `Unknown action: ${action}` }, { status: 404 });
|
|
308
351
|
},
|
|
309
352
|
async GET(req, context) {
|
|
@@ -889,6 +932,29 @@ class OAuthManager {
|
|
|
889
932
|
};
|
|
890
933
|
}
|
|
891
934
|
}
|
|
935
|
+
async disconnectProvider(provider) {
|
|
936
|
+
if (!this.sessionToken) {
|
|
937
|
+
throw new Error("No session token available. Cannot disconnect provider.");
|
|
938
|
+
}
|
|
939
|
+
try {
|
|
940
|
+
const url = `${this.oauthApiBase}/disconnect`;
|
|
941
|
+
const response = await fetch(url, {
|
|
942
|
+
method: "POST",
|
|
943
|
+
headers: {
|
|
944
|
+
"Content-Type": "application/json",
|
|
945
|
+
"X-Session-Token": this.sessionToken
|
|
946
|
+
},
|
|
947
|
+
body: JSON.stringify({ provider })
|
|
948
|
+
});
|
|
949
|
+
if (!response.ok) {
|
|
950
|
+
const errorText = await response.text();
|
|
951
|
+
throw new Error(`Failed to disconnect provider: ${errorText}`);
|
|
952
|
+
}
|
|
953
|
+
} catch (error) {
|
|
954
|
+
console.error("Failed to disconnect provider:", error);
|
|
955
|
+
throw error;
|
|
956
|
+
}
|
|
957
|
+
}
|
|
892
958
|
getSessionToken() {
|
|
893
959
|
return this.sessionToken;
|
|
894
960
|
}
|
|
@@ -1383,8 +1449,17 @@ class MCPClient {
|
|
|
1383
1449
|
if (!plugin?.oauth) {
|
|
1384
1450
|
throw new Error(`No OAuth configuration found for provider: ${provider}`);
|
|
1385
1451
|
}
|
|
1386
|
-
|
|
1387
|
-
|
|
1452
|
+
try {
|
|
1453
|
+
await this.oauthManager.disconnectProvider(provider);
|
|
1454
|
+
this.authState.set(provider, { authenticated: false });
|
|
1455
|
+
this.eventEmitter.emit("auth:disconnect", { provider });
|
|
1456
|
+
} catch (error) {
|
|
1457
|
+
this.eventEmitter.emit("auth:error", {
|
|
1458
|
+
provider,
|
|
1459
|
+
error
|
|
1460
|
+
});
|
|
1461
|
+
throw error;
|
|
1462
|
+
}
|
|
1388
1463
|
}
|
|
1389
1464
|
async logout() {
|
|
1390
1465
|
this.clearSessionToken();
|
package/dist/oauth.js
CHANGED
|
@@ -107,6 +107,28 @@ class OAuthHandler {
|
|
|
107
107
|
const data = await response.json();
|
|
108
108
|
return data;
|
|
109
109
|
}
|
|
110
|
+
async handleDisconnect(request, sessionToken) {
|
|
111
|
+
if (!sessionToken) {
|
|
112
|
+
throw new Error("No session token provided. Cannot disconnect provider.");
|
|
113
|
+
}
|
|
114
|
+
const url = new URL("/oauth/disconnect", this.serverUrl);
|
|
115
|
+
const response = await fetch(url.toString(), {
|
|
116
|
+
method: "POST",
|
|
117
|
+
headers: {
|
|
118
|
+
"Content-Type": "application/json",
|
|
119
|
+
"X-Session-Token": sessionToken
|
|
120
|
+
},
|
|
121
|
+
body: JSON.stringify({
|
|
122
|
+
provider: request.provider
|
|
123
|
+
})
|
|
124
|
+
});
|
|
125
|
+
if (!response.ok) {
|
|
126
|
+
const error = await response.text();
|
|
127
|
+
throw new Error(`MCP server failed to disconnect provider: ${error}`);
|
|
128
|
+
}
|
|
129
|
+
const data = await response.json();
|
|
130
|
+
return data;
|
|
131
|
+
}
|
|
110
132
|
}
|
|
111
133
|
var MCP_SERVER_URL = "https://mcp.integrate.dev/api/v1/mcp";
|
|
112
134
|
|
|
@@ -132,6 +154,18 @@ async function POST(req, context) {
|
|
|
132
154
|
const result = await handler.handleCallback(body);
|
|
133
155
|
return createSuccessResponse(result);
|
|
134
156
|
}
|
|
157
|
+
if (action === "disconnect") {
|
|
158
|
+
const body = await parseRequestBody(req);
|
|
159
|
+
const sessionToken = extractSessionToken(req);
|
|
160
|
+
if (!sessionToken) {
|
|
161
|
+
return createErrorResponse("Missing X-Session-Token header", 400);
|
|
162
|
+
}
|
|
163
|
+
if (!body.provider) {
|
|
164
|
+
return createErrorResponse("Missing provider in request body", 400);
|
|
165
|
+
}
|
|
166
|
+
const result = await handler.handleDisconnect({ provider: body.provider }, sessionToken);
|
|
167
|
+
return createSuccessResponse(result);
|
|
168
|
+
}
|
|
135
169
|
return createErrorResponse(`Unknown action: ${action}`, 404);
|
|
136
170
|
} catch (error) {
|
|
137
171
|
console.error(`[OAuth ${action}] Error:`, error);
|
|
@@ -168,6 +202,12 @@ async function parseRequestBody(req) {
|
|
|
168
202
|
}
|
|
169
203
|
throw new Error("Unable to parse request body");
|
|
170
204
|
}
|
|
205
|
+
function extractSessionToken(req) {
|
|
206
|
+
if (req.headers?.get) {
|
|
207
|
+
return req.headers.get("x-session-token") || undefined;
|
|
208
|
+
}
|
|
209
|
+
return;
|
|
210
|
+
}
|
|
171
211
|
function parseQueryParams(req) {
|
|
172
212
|
let url;
|
|
173
213
|
if (req.nextUrl) {
|
|
@@ -178,7 +218,7 @@ function parseQueryParams(req) {
|
|
|
178
218
|
return {};
|
|
179
219
|
}
|
|
180
220
|
const provider = url.searchParams.get("provider") || undefined;
|
|
181
|
-
const sessionToken = req
|
|
221
|
+
const sessionToken = extractSessionToken(req);
|
|
182
222
|
return { provider, sessionToken };
|
|
183
223
|
}
|
|
184
224
|
function createSuccessResponse(data) {
|
package/dist/server.js
CHANGED
|
@@ -245,6 +245,28 @@ class OAuthHandler {
|
|
|
245
245
|
const data = await response.json();
|
|
246
246
|
return data;
|
|
247
247
|
}
|
|
248
|
+
async handleDisconnect(request, sessionToken) {
|
|
249
|
+
if (!sessionToken) {
|
|
250
|
+
throw new Error("No session token provided. Cannot disconnect provider.");
|
|
251
|
+
}
|
|
252
|
+
const url = new URL("/oauth/disconnect", this.serverUrl);
|
|
253
|
+
const response = await fetch(url.toString(), {
|
|
254
|
+
method: "POST",
|
|
255
|
+
headers: {
|
|
256
|
+
"Content-Type": "application/json",
|
|
257
|
+
"X-Session-Token": sessionToken
|
|
258
|
+
},
|
|
259
|
+
body: JSON.stringify({
|
|
260
|
+
provider: request.provider
|
|
261
|
+
})
|
|
262
|
+
});
|
|
263
|
+
if (!response.ok) {
|
|
264
|
+
const error = await response.text();
|
|
265
|
+
throw new Error(`MCP server failed to disconnect provider: ${error}`);
|
|
266
|
+
}
|
|
267
|
+
const data = await response.json();
|
|
268
|
+
return data;
|
|
269
|
+
}
|
|
248
270
|
}
|
|
249
271
|
var MCP_SERVER_URL2 = "https://mcp.integrate.dev/api/v1/mcp";
|
|
250
272
|
|
|
@@ -293,6 +315,24 @@ function createNextOAuthHandler(config) {
|
|
|
293
315
|
return Response.json({ error: error.message || "Failed to check authorization status" }, { status: 500 });
|
|
294
316
|
}
|
|
295
317
|
},
|
|
318
|
+
async disconnect(req) {
|
|
319
|
+
try {
|
|
320
|
+
const sessionToken = req.headers.get("x-session-token");
|
|
321
|
+
if (!sessionToken) {
|
|
322
|
+
return Response.json({ error: "Missing X-Session-Token header" }, { status: 400 });
|
|
323
|
+
}
|
|
324
|
+
const body = await req.json();
|
|
325
|
+
const { provider } = body;
|
|
326
|
+
if (!provider) {
|
|
327
|
+
return Response.json({ error: "Missing provider in request body" }, { status: 400 });
|
|
328
|
+
}
|
|
329
|
+
const result = await handler.handleDisconnect({ provider }, sessionToken);
|
|
330
|
+
return Response.json(result);
|
|
331
|
+
} catch (error) {
|
|
332
|
+
console.error("[OAuth Disconnect] Error:", error);
|
|
333
|
+
return Response.json({ error: error.message || "Failed to disconnect provider" }, { status: 500 });
|
|
334
|
+
}
|
|
335
|
+
},
|
|
296
336
|
createRoutes() {
|
|
297
337
|
return {
|
|
298
338
|
async POST(req, context) {
|
|
@@ -304,6 +344,9 @@ function createNextOAuthHandler(config) {
|
|
|
304
344
|
if (action === "callback") {
|
|
305
345
|
return handlers.callback(req);
|
|
306
346
|
}
|
|
347
|
+
if (action === "disconnect") {
|
|
348
|
+
return handlers.disconnect(req);
|
|
349
|
+
}
|
|
307
350
|
return Response.json({ error: `Unknown action: ${action}` }, { status: 404 });
|
|
308
351
|
},
|
|
309
352
|
async GET(req, context) {
|
|
@@ -889,6 +932,29 @@ class OAuthManager {
|
|
|
889
932
|
};
|
|
890
933
|
}
|
|
891
934
|
}
|
|
935
|
+
async disconnectProvider(provider) {
|
|
936
|
+
if (!this.sessionToken) {
|
|
937
|
+
throw new Error("No session token available. Cannot disconnect provider.");
|
|
938
|
+
}
|
|
939
|
+
try {
|
|
940
|
+
const url = `${this.oauthApiBase}/disconnect`;
|
|
941
|
+
const response = await fetch(url, {
|
|
942
|
+
method: "POST",
|
|
943
|
+
headers: {
|
|
944
|
+
"Content-Type": "application/json",
|
|
945
|
+
"X-Session-Token": this.sessionToken
|
|
946
|
+
},
|
|
947
|
+
body: JSON.stringify({ provider })
|
|
948
|
+
});
|
|
949
|
+
if (!response.ok) {
|
|
950
|
+
const errorText = await response.text();
|
|
951
|
+
throw new Error(`Failed to disconnect provider: ${errorText}`);
|
|
952
|
+
}
|
|
953
|
+
} catch (error) {
|
|
954
|
+
console.error("Failed to disconnect provider:", error);
|
|
955
|
+
throw error;
|
|
956
|
+
}
|
|
957
|
+
}
|
|
892
958
|
getSessionToken() {
|
|
893
959
|
return this.sessionToken;
|
|
894
960
|
}
|
|
@@ -1383,8 +1449,17 @@ class MCPClient {
|
|
|
1383
1449
|
if (!plugin?.oauth) {
|
|
1384
1450
|
throw new Error(`No OAuth configuration found for provider: ${provider}`);
|
|
1385
1451
|
}
|
|
1386
|
-
|
|
1387
|
-
|
|
1452
|
+
try {
|
|
1453
|
+
await this.oauthManager.disconnectProvider(provider);
|
|
1454
|
+
this.authState.set(provider, { authenticated: false });
|
|
1455
|
+
this.eventEmitter.emit("auth:disconnect", { provider });
|
|
1456
|
+
} catch (error) {
|
|
1457
|
+
this.eventEmitter.emit("auth:error", {
|
|
1458
|
+
provider,
|
|
1459
|
+
error
|
|
1460
|
+
});
|
|
1461
|
+
throw error;
|
|
1462
|
+
}
|
|
1388
1463
|
}
|
|
1389
1464
|
async logout() {
|
|
1390
1465
|
this.clearSessionToken();
|
|
@@ -32,7 +32,7 @@ export declare function getGlobalOAuthConfig(): OAuthHandlerConfig | null;
|
|
|
32
32
|
*/
|
|
33
33
|
/**
|
|
34
34
|
* Universal POST handler
|
|
35
|
-
* Handles authorize and
|
|
35
|
+
* Handles authorize, callback, and disconnect actions
|
|
36
36
|
*/
|
|
37
37
|
export declare function POST(req: any, context?: {
|
|
38
38
|
params: {
|
|
@@ -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,CAgDd;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,CAkCd"}
|
|
@@ -61,6 +61,19 @@ export interface StatusResponse {
|
|
|
61
61
|
scopes?: string[];
|
|
62
62
|
expiresAt?: number;
|
|
63
63
|
}
|
|
64
|
+
/**
|
|
65
|
+
* Request body for disconnect endpoint
|
|
66
|
+
*/
|
|
67
|
+
export interface DisconnectRequest {
|
|
68
|
+
provider: string;
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Response from disconnect endpoint
|
|
72
|
+
*/
|
|
73
|
+
export interface DisconnectResponse {
|
|
74
|
+
success: boolean;
|
|
75
|
+
provider: string;
|
|
76
|
+
}
|
|
64
77
|
/**
|
|
65
78
|
* OAuth Handler
|
|
66
79
|
* Handles OAuth authorization flows by proxying requests to MCP server
|
|
@@ -102,5 +115,17 @@ export declare class OAuthHandler {
|
|
|
102
115
|
* @throws Error if MCP server request fails
|
|
103
116
|
*/
|
|
104
117
|
handleStatus(provider: string, sessionToken: string): Promise<StatusResponse>;
|
|
118
|
+
/**
|
|
119
|
+
* Handle provider disconnection
|
|
120
|
+
* Revokes authorization for a specific provider
|
|
121
|
+
*
|
|
122
|
+
* @param request - Disconnect request with provider name
|
|
123
|
+
* @param sessionToken - Session token from client
|
|
124
|
+
* @returns Disconnect response
|
|
125
|
+
*
|
|
126
|
+
* @throws Error if no session token provided
|
|
127
|
+
* @throws Error if MCP server request fails
|
|
128
|
+
*/
|
|
129
|
+
handleDisconnect(request: DisconnectRequest, sessionToken: string): Promise<DisconnectResponse>;
|
|
105
130
|
}
|
|
106
131
|
//# sourceMappingURL=base-handler.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base-handler.d.ts","sourceRoot":"","sources":["../../../src/adapters/base-handler.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAOH;;;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;KACtB,CAAC,CAAC;CACJ;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,MAAM,CAAC;IACtB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,UAAU,EAAE,OAAO,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;GAIG;AACH,qBAAa,YAAY;IAGX,OAAO,CAAC,MAAM;IAF1B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAkB;gBAExB,MAAM,EAAE,kBAAkB;IAE9C;;;;;;;;;OASG;IACG,eAAe,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IA0C5E;;;;;;;;OAQG;IACG,cAAc,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,gBAAgB,CAAC;IA0BzE;;;;;;;;;OASG;IACG,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"base-handler.d.ts","sourceRoot":"","sources":["../../../src/adapters/base-handler.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAOH;;;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;KACtB,CAAC,CAAC;CACJ;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,MAAM,CAAC;IACtB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,UAAU,EAAE,OAAO,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;;;GAIG;AACH,qBAAa,YAAY;IAGX,OAAO,CAAC,MAAM;IAF1B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAkB;gBAExB,MAAM,EAAE,kBAAkB;IAE9C;;;;;;;;;OASG;IACG,eAAe,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IA0C5E;;;;;;;;OAQG;IACG,cAAc,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,gBAAgB,CAAC;IA0BzE;;;;;;;;;OASG;IACG,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IA6BnF;;;;;;;;;;OAUG;IACG,gBAAgB,CAAC,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC;CA2BtG"}
|
|
@@ -15,7 +15,7 @@ type NextResponse = any;
|
|
|
15
15
|
* that handle authorization with server-side secrets.
|
|
16
16
|
*
|
|
17
17
|
* @param config - OAuth handler configuration with provider credentials
|
|
18
|
-
* @returns Object with authorize, callback, and
|
|
18
|
+
* @returns Object with authorize, callback, status, and disconnect route handlers, plus a unified handler
|
|
19
19
|
*
|
|
20
20
|
* @example
|
|
21
21
|
* **Simple Setup (Recommended)** - One route file handles everything:
|
|
@@ -48,6 +48,9 @@ type NextResponse = any;
|
|
|
48
48
|
*
|
|
49
49
|
* // app/api/integrate/oauth/status/route.ts
|
|
50
50
|
* export const GET = handler.status;
|
|
51
|
+
*
|
|
52
|
+
* // app/api/integrate/oauth/disconnect/route.ts
|
|
53
|
+
* export const POST = handler.disconnect;
|
|
51
54
|
* ```
|
|
52
55
|
*/
|
|
53
56
|
export declare function createNextOAuthHandler(config: OAuthHandlerConfig): {
|
|
@@ -175,6 +178,47 @@ export declare function createNextOAuthHandler(config: OAuthHandlerConfig): {
|
|
|
175
178
|
* ```
|
|
176
179
|
*/
|
|
177
180
|
status(req: NextRequest): Promise<NextResponse>;
|
|
181
|
+
/**
|
|
182
|
+
* POST /api/integrate/oauth/disconnect
|
|
183
|
+
*
|
|
184
|
+
* Revoke authorization for a specific provider
|
|
185
|
+
*
|
|
186
|
+
* Request headers:
|
|
187
|
+
* - X-Session-Token: Session token from previous authorization
|
|
188
|
+
*
|
|
189
|
+
* Request body:
|
|
190
|
+
* ```json
|
|
191
|
+
* {
|
|
192
|
+
* "provider": "github"
|
|
193
|
+
* }
|
|
194
|
+
* ```
|
|
195
|
+
*
|
|
196
|
+
* Response:
|
|
197
|
+
* ```json
|
|
198
|
+
* {
|
|
199
|
+
* "success": true,
|
|
200
|
+
* "provider": "github"
|
|
201
|
+
* }
|
|
202
|
+
* ```
|
|
203
|
+
*
|
|
204
|
+
* @example
|
|
205
|
+
* ```typescript
|
|
206
|
+
* // app/api/integrate/oauth/disconnect/route.ts
|
|
207
|
+
* import { createNextOAuthHandler } from 'integrate-sdk';
|
|
208
|
+
*
|
|
209
|
+
* const handler = createNextOAuthHandler({
|
|
210
|
+
* providers: {
|
|
211
|
+
* github: {
|
|
212
|
+
* clientId: process.env.GITHUB_CLIENT_ID!,
|
|
213
|
+
* clientSecret: process.env.GITHUB_CLIENT_SECRET!,
|
|
214
|
+
* },
|
|
215
|
+
* },
|
|
216
|
+
* });
|
|
217
|
+
*
|
|
218
|
+
* export const POST = handler.disconnect;
|
|
219
|
+
* ```
|
|
220
|
+
*/
|
|
221
|
+
disconnect(req: NextRequest): Promise<NextResponse>;
|
|
178
222
|
/**
|
|
179
223
|
* Create unified route handlers for catch-all route
|
|
180
224
|
*
|
|
@@ -202,7 +246,7 @@ export declare function createNextOAuthHandler(config: OAuthHandlerConfig): {
|
|
|
202
246
|
*/
|
|
203
247
|
createRoutes(): {
|
|
204
248
|
/**
|
|
205
|
-
* POST handler for authorize and
|
|
249
|
+
* POST handler for authorize, callback, and disconnect actions
|
|
206
250
|
*/
|
|
207
251
|
POST(req: NextRequest, context: {
|
|
208
252
|
params: {
|
|
@@ -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
|
|
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;IAcxD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAyCG;kBACiB,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC;IAcvD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAqCG;gBACe,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC;IA8BrD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAuCG;oBACmB,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC;IAgCzD;;;;;;;;;;;;;;;;;;;;;;;;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;QAuBxB;;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;;EAmB/B"}
|
package/dist/src/client.d.ts
CHANGED
|
@@ -205,6 +205,7 @@ export declare class MCPClient<TPlugins extends readonly MCPPlugin[] = readonly
|
|
|
205
205
|
/**
|
|
206
206
|
* Disconnect a specific OAuth provider
|
|
207
207
|
* Removes authorization for a single provider while keeping others connected
|
|
208
|
+
* Makes a server-side call to revoke the provider's authorization
|
|
208
209
|
*
|
|
209
210
|
* @param provider - Provider name to disconnect (e.g., 'github', 'gmail')
|
|
210
211
|
*
|
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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"}
|
package/dist/src/index.d.ts
CHANGED
|
@@ -9,7 +9,7 @@ export { OAuthWindowManager, sendCallbackToOpener } from "./oauth/window-manager
|
|
|
9
9
|
export { generateCodeVerifier, generateCodeChallenge, generateState } from "./oauth/pkce.js";
|
|
10
10
|
export type { OAuthFlowConfig, PopupOptions, AuthStatus, PendingAuth, AuthorizationUrlResponse, OAuthCallbackResponse, OAuthCallbackParams, OAuthEventType, OAuthEventHandler, AuthStartedEvent, AuthCompleteEvent, AuthErrorEvent, AuthDisconnectEvent, AuthLogoutEvent, } from "./oauth/types.js";
|
|
11
11
|
export { OAuthHandler } from "./adapters/base-handler.js";
|
|
12
|
-
export type { OAuthHandlerConfig, AuthorizeRequest, AuthorizeResponse, CallbackRequest, CallbackResponse, StatusResponse, } from "./adapters/base-handler.js";
|
|
12
|
+
export type { OAuthHandlerConfig, AuthorizeRequest, AuthorizeResponse, CallbackRequest, CallbackResponse, StatusResponse, DisconnectRequest, DisconnectResponse, } from "./adapters/base-handler.js";
|
|
13
13
|
export { createNextOAuthHandler } from "./adapters/nextjs.js";
|
|
14
14
|
export { createOAuthRedirectHandler } from "./adapters/nextjs-oauth-redirect.js";
|
|
15
15
|
export type { OAuthRedirectConfig } from "./adapters/nextjs-oauth-redirect.js";
|
package/dist/src/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC3E,YAAY,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAGzD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACrF,OAAO,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC7F,YAAY,EACV,eAAe,EACf,YAAY,EACZ,UAAU,EACV,WAAW,EACX,wBAAwB,EACxB,qBAAqB,EACrB,mBAAmB,EACnB,cAAc,EACd,iBAAiB,EACjB,gBAAgB,EAChB,iBAAiB,EACjB,cAAc,EACd,mBAAmB,EACnB,eAAe,GAChB,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,YAAY,EACV,kBAAkB,EAClB,gBAAgB,EAChB,iBAAiB,EACjB,eAAe,EACf,gBAAgB,EAChB,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC3E,YAAY,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAGzD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACrF,OAAO,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC7F,YAAY,EACV,eAAe,EACf,YAAY,EACZ,UAAU,EACV,WAAW,EACX,wBAAwB,EACxB,qBAAqB,EACrB,mBAAmB,EACnB,cAAc,EACd,iBAAiB,EACjB,gBAAgB,EAChB,iBAAiB,EACjB,cAAc,EACd,mBAAmB,EACnB,eAAe,GAChB,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,YAAY,EACV,kBAAkB,EAClB,gBAAgB,EAChB,iBAAiB,EACjB,eAAe,EACf,gBAAgB,EAChB,cAAc,EACd,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,EAAE,0BAA0B,EAAE,MAAM,qCAAqC,CAAC;AACjF,YAAY,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAC/E,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAG1E,YAAY,EAAE,eAAe,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAGvF,OAAO,EACL,iBAAiB,EACjB,mBAAmB,EACnB,kBAAkB,EAClB,iBAAiB,EACjB,eAAe,EACf,aAAa,EACb,WAAW,EACX,mBAAmB,EACnB,oBAAoB,EACpB,gBAAgB,GACjB,MAAM,aAAa,CAAC;AAGrB,YAAY,EACV,SAAS,EACT,WAAW,EACX,gBAAgB,EAChB,kBAAkB,GACnB,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,YAAY,EAAE,kBAAkB,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAE/F,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,YAAY,EAAE,iBAAiB,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAG3F,YAAY,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAErE,OAAO,EACL,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAGrE,OAAO,EACL,wBAAwB,EACxB,yBAAyB,EACzB,gBAAgB,GACjB,MAAM,6BAA6B,CAAC;AACrC,YAAY,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAGhE,YAAY,EACV,cAAc,EACd,eAAe,EACf,sBAAsB,EACtB,oBAAoB,EACpB,mBAAmB,EACnB,OAAO,EACP,oBAAoB,EACpB,iBAAiB,EACjB,mBAAmB,EACnB,mBAAmB,EACnB,qBAAqB,GACtB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAGnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACnE,YAAY,EACV,cAAc,EACd,2BAA2B,GAC5B,MAAM,6BAA6B,CAAC"}
|
|
@@ -63,6 +63,20 @@ export declare class OAuthManager {
|
|
|
63
63
|
* ```
|
|
64
64
|
*/
|
|
65
65
|
checkAuthStatus(provider: string): Promise<AuthStatus>;
|
|
66
|
+
/**
|
|
67
|
+
* Disconnect a specific provider
|
|
68
|
+
* Makes a server-side call to revoke authorization for the provider
|
|
69
|
+
*
|
|
70
|
+
* @param provider - OAuth provider to disconnect
|
|
71
|
+
* @returns Promise that resolves when disconnection is complete
|
|
72
|
+
*
|
|
73
|
+
* @example
|
|
74
|
+
* ```typescript
|
|
75
|
+
* await oauthManager.disconnectProvider('github');
|
|
76
|
+
* // GitHub is now disconnected server-side
|
|
77
|
+
* ```
|
|
78
|
+
*/
|
|
79
|
+
disconnectProvider(provider: string): Promise<void>;
|
|
66
80
|
/**
|
|
67
81
|
* Get session token
|
|
68
82
|
*/
|
|
@@ -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,qBAAqB,CAAC;AACvD,OAAO,KAAK,EACV,eAAe,EAEf,UAAU,EAGX,MAAM,YAAY,CAAC;AAIpB;;;GAGG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,YAAY,CAAuC;IAC3D,OAAO,CAAC,YAAY,CAAC,CAAS;IAC9B,OAAO,CAAC,aAAa,CAAqB;IAC1C,OAAO,CAAC,UAAU,CAAkB;IACpC,OAAO,CAAC,YAAY,CAAS;gBAG3B,YAAY,EAAE,MAAM,EACpB,UAAU,CAAC,EAAE,OAAO,CAAC,eAAe,CAAC;IAcvC;;;;;;;;;;;;;;;;OAgBG;IACG,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IA4CxE;;;;;;;;;;;;;OAaG;IACG,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAyDlE;;;;;;;;;;;;;OAaG;IACG,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAoC5D;;OAEG;IACH,eAAe,IAAI,MAAM,GAAG,SAAS;IAIrC;;OAEG;IACH,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAKpC;;OAEG;IACH,iBAAiB,IAAI,IAAI;IAWzB;;;OAGG;IACH,oBAAoB,IAAI,IAAI;IAwB5B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAUxB;;;;;OAKG;IACH,OAAO,CAAC,wBAAwB;IAWhC;;;OAGG;IACH,OAAO,CAAC,0BAA0B;IAelC;;OAEG;IACH,OAAO,CAAC,4BAA4B;IAWpC;;;OAGG;IACH,OAAO,CAAC,0BAA0B;IAoClC;;;OAGG;YACW,mBAAmB;IAiCjC;;;OAGG;YACW,oBAAoB;IA8BlC;;OAEG;IACH,KAAK,IAAI,IAAI;CAGd"}
|
|
1
|
+
{"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../../src/oauth/manager.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,KAAK,EACV,eAAe,EAEf,UAAU,EAGX,MAAM,YAAY,CAAC;AAIpB;;;GAGG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,YAAY,CAAuC;IAC3D,OAAO,CAAC,YAAY,CAAC,CAAS;IAC9B,OAAO,CAAC,aAAa,CAAqB;IAC1C,OAAO,CAAC,UAAU,CAAkB;IACpC,OAAO,CAAC,YAAY,CAAS;gBAG3B,YAAY,EAAE,MAAM,EACpB,UAAU,CAAC,EAAE,OAAO,CAAC,eAAe,CAAC;IAcvC;;;;;;;;;;;;;;;;OAgBG;IACG,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IA4CxE;;;;;;;;;;;;;OAaG;IACG,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAyDlE;;;;;;;;;;;;;OAaG;IACG,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAoC5D;;;;;;;;;;;;OAYG;IACG,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA2BzD;;OAEG;IACH,eAAe,IAAI,MAAM,GAAG,SAAS;IAIrC;;OAEG;IACH,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAKpC;;OAEG;IACH,iBAAiB,IAAI,IAAI;IAWzB;;;OAGG;IACH,oBAAoB,IAAI,IAAI;IAwB5B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAUxB;;;;;OAKG;IACH,OAAO,CAAC,wBAAwB;IAWhC;;;OAGG;IACH,OAAO,CAAC,0BAA0B;IAelC;;OAEG;IACH,OAAO,CAAC,4BAA4B;IAWpC;;;OAGG;IACH,OAAO,CAAC,0BAA0B;IAoClC;;;OAGG;YACW,mBAAmB;IAiCjC;;;OAGG;YACW,oBAAoB;IA8BlC;;OAEG;IACH,KAAK,IAAI,IAAI;CAGd"}
|