integrate-sdk 0.3.8 → 0.3.10

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 CHANGED
@@ -839,6 +839,7 @@ class OAuthManager {
839
839
  try {
840
840
  const response = await this.exchangeCodeForToken(pendingAuth.provider, code, pendingAuth.codeVerifier, state);
841
841
  this.sessionToken = response.sessionToken;
842
+ this.saveSessionToken(response.sessionToken);
842
843
  this.pendingAuths.delete(state);
843
844
  return response.sessionToken;
844
845
  } catch (error) {
@@ -882,9 +883,26 @@ class OAuthManager {
882
883
  }
883
884
  setSessionToken(token) {
884
885
  this.sessionToken = token;
886
+ this.saveSessionToken(token);
885
887
  }
886
888
  clearSessionToken() {
887
889
  this.sessionToken = undefined;
890
+ if (typeof window !== "undefined" && window.sessionStorage) {
891
+ try {
892
+ window.sessionStorage.removeItem("integrate_session_token");
893
+ } catch (error) {
894
+ console.error("Failed to clear session token from sessionStorage:", error);
895
+ }
896
+ }
897
+ }
898
+ saveSessionToken(token) {
899
+ if (typeof window !== "undefined" && window.sessionStorage) {
900
+ try {
901
+ window.sessionStorage.setItem("integrate_session_token", token);
902
+ } catch (error) {
903
+ console.error("Failed to save session token to sessionStorage:", error);
904
+ }
905
+ }
888
906
  }
889
907
  async getAuthorizationUrl(provider, scopes, state, codeChallenge, redirectUri) {
890
908
  const url = `${this.oauthApiBase}/authorize`;
@@ -936,6 +954,40 @@ class OAuthManager {
936
954
  }
937
955
 
938
956
  // src/client.ts
957
+ class SimpleEventEmitter {
958
+ handlers = new Map;
959
+ on(event, handler) {
960
+ if (!this.handlers.has(event)) {
961
+ this.handlers.set(event, new Set);
962
+ }
963
+ this.handlers.get(event).add(handler);
964
+ }
965
+ off(event, handler) {
966
+ const handlers = this.handlers.get(event);
967
+ if (handlers) {
968
+ handlers.delete(handler);
969
+ }
970
+ }
971
+ emit(event, payload) {
972
+ const handlers = this.handlers.get(event);
973
+ if (handlers) {
974
+ handlers.forEach((handler) => {
975
+ try {
976
+ handler(payload);
977
+ } catch (error) {
978
+ console.error(`Error in event handler for ${event}:`, error);
979
+ }
980
+ });
981
+ }
982
+ }
983
+ removeAllListeners(event) {
984
+ if (event) {
985
+ this.handlers.delete(event);
986
+ } else {
987
+ this.handlers.clear();
988
+ }
989
+ }
990
+ }
939
991
  var MCP_SERVER_URL = "https://mcp.integrate.dev/api/v1/mcp";
940
992
  var clientCache = new Map;
941
993
  var cleanupClients = new Set;
@@ -954,6 +1006,7 @@ class MCPClient {
954
1006
  connectionMode;
955
1007
  connecting = null;
956
1008
  oauthManager;
1009
+ eventEmitter = new SimpleEventEmitter;
957
1010
  github;
958
1011
  gmail;
959
1012
  server;
@@ -972,9 +1025,16 @@ class MCPClient {
972
1025
  this.maxReauthRetries = config.maxReauthRetries ?? 1;
973
1026
  this.connectionMode = config.connectionMode ?? "lazy";
974
1027
  this.oauthManager = new OAuthManager(config.oauthApiBase || "/api/integrate/oauth", config.oauthFlow);
975
- if (config.sessionToken) {
976
- this.oauthManager.setSessionToken(config.sessionToken);
977
- this.transport.setHeader("X-Session-Token", config.sessionToken);
1028
+ let sessionToken = config.sessionToken;
1029
+ if (!sessionToken) {
1030
+ const storedToken = this.loadSessionToken();
1031
+ if (storedToken) {
1032
+ sessionToken = storedToken;
1033
+ }
1034
+ }
1035
+ if (sessionToken) {
1036
+ this.oauthManager.setSessionToken(sessionToken);
1037
+ this.transport.setHeader("X-Session-Token", sessionToken);
978
1038
  }
979
1039
  for (const plugin of this.plugins) {
980
1040
  for (const toolName of plugin.tools) {
@@ -1190,6 +1250,42 @@ class MCPClient {
1190
1250
  onMessage(handler) {
1191
1251
  return this.transport.onMessage(handler);
1192
1252
  }
1253
+ on(event, handler) {
1254
+ this.eventEmitter.on(event, handler);
1255
+ }
1256
+ off(event, handler) {
1257
+ this.eventEmitter.off(event, handler);
1258
+ }
1259
+ saveSessionToken(token) {
1260
+ if (typeof window !== "undefined" && window.sessionStorage) {
1261
+ try {
1262
+ window.sessionStorage.setItem("integrate_session_token", token);
1263
+ } catch (error) {
1264
+ console.error("Failed to save session token to sessionStorage:", error);
1265
+ }
1266
+ }
1267
+ }
1268
+ loadSessionToken() {
1269
+ if (typeof window !== "undefined" && window.sessionStorage) {
1270
+ try {
1271
+ return window.sessionStorage.getItem("integrate_session_token") || undefined;
1272
+ } catch (error) {
1273
+ console.error("Failed to load session token from sessionStorage:", error);
1274
+ return;
1275
+ }
1276
+ }
1277
+ return;
1278
+ }
1279
+ clearSessionToken() {
1280
+ if (typeof window !== "undefined" && window.sessionStorage) {
1281
+ try {
1282
+ window.sessionStorage.removeItem("integrate_session_token");
1283
+ } catch (error) {
1284
+ console.error("Failed to clear session token from sessionStorage:", error);
1285
+ }
1286
+ }
1287
+ this.oauthManager.clearSessionToken();
1288
+ }
1193
1289
  async disconnect() {
1194
1290
  for (const plugin of this.plugins) {
1195
1291
  if (plugin.onDisconnect) {
@@ -1233,18 +1329,44 @@ class MCPClient {
1233
1329
  async authorize(provider) {
1234
1330
  const plugin = this.plugins.find((p) => p.oauth?.provider === provider);
1235
1331
  if (!plugin?.oauth) {
1236
- throw new Error(`No OAuth configuration found for provider: ${provider}`);
1332
+ const error = new Error(`No OAuth configuration found for provider: ${provider}`);
1333
+ this.eventEmitter.emit("auth:error", { provider, error });
1334
+ throw error;
1335
+ }
1336
+ this.eventEmitter.emit("auth:started", { provider });
1337
+ try {
1338
+ await this.oauthManager.initiateFlow(provider, plugin.oauth);
1339
+ const sessionToken = this.oauthManager.getSessionToken();
1340
+ if (sessionToken) {
1341
+ this.saveSessionToken(sessionToken);
1342
+ this.eventEmitter.emit("auth:complete", { provider, sessionToken });
1343
+ }
1344
+ this.authState.set(provider, { authenticated: true });
1345
+ } catch (error) {
1346
+ this.eventEmitter.emit("auth:error", { provider, error });
1347
+ throw error;
1237
1348
  }
1238
- await this.oauthManager.initiateFlow(provider, plugin.oauth);
1239
- this.authState.set(provider, { authenticated: true });
1240
1349
  }
1241
1350
  async handleOAuthCallback(params) {
1242
- const sessionToken = await this.oauthManager.handleCallback(params.code, params.state);
1243
- this.transport.setHeader("X-Session-Token", sessionToken);
1244
- for (const plugin of this.plugins) {
1245
- if (plugin.oauth) {
1246
- this.authState.set(plugin.oauth.provider, { authenticated: true });
1351
+ try {
1352
+ const sessionToken = await this.oauthManager.handleCallback(params.code, params.state);
1353
+ this.saveSessionToken(sessionToken);
1354
+ this.transport.setHeader("X-Session-Token", sessionToken);
1355
+ for (const plugin of this.plugins) {
1356
+ if (plugin.oauth) {
1357
+ this.authState.set(plugin.oauth.provider, { authenticated: true });
1358
+ this.eventEmitter.emit("auth:complete", {
1359
+ provider: plugin.oauth.provider,
1360
+ sessionToken
1361
+ });
1362
+ }
1247
1363
  }
1364
+ } catch (error) {
1365
+ this.eventEmitter.emit("auth:error", {
1366
+ provider: "unknown",
1367
+ error
1368
+ });
1369
+ throw error;
1248
1370
  }
1249
1371
  }
1250
1372
  getSessionToken() {
@@ -1339,6 +1461,9 @@ function createMCPClient(config) {
1339
1461
  console.error("Failed to connect client:", error);
1340
1462
  });
1341
1463
  }
1464
+ if (config.autoHandleOAuthCallback !== false) {
1465
+ processOAuthCallbackFromHash(client);
1466
+ }
1342
1467
  return client;
1343
1468
  } else {
1344
1469
  const client = new MCPClient(config);
@@ -1351,9 +1476,35 @@ function createMCPClient(config) {
1351
1476
  console.error("Failed to connect client:", error);
1352
1477
  });
1353
1478
  }
1479
+ if (config.autoHandleOAuthCallback !== false) {
1480
+ processOAuthCallbackFromHash(client);
1481
+ }
1354
1482
  return client;
1355
1483
  }
1356
1484
  }
1485
+ function processOAuthCallbackFromHash(client) {
1486
+ if (typeof window === "undefined") {
1487
+ return;
1488
+ }
1489
+ try {
1490
+ const hash = window.location.hash;
1491
+ if (hash && hash.includes("oauth_callback=")) {
1492
+ const hashParams = new URLSearchParams(hash.substring(1));
1493
+ const oauthCallbackData = hashParams.get("oauth_callback");
1494
+ if (oauthCallbackData) {
1495
+ const callbackParams = JSON.parse(decodeURIComponent(oauthCallbackData));
1496
+ if (callbackParams.code && callbackParams.state) {
1497
+ client.handleOAuthCallback(callbackParams).catch((error) => {
1498
+ console.error("Failed to process OAuth callback:", error);
1499
+ });
1500
+ window.history.replaceState(null, "", window.location.pathname + window.location.search);
1501
+ }
1502
+ }
1503
+ }
1504
+ } catch (error) {
1505
+ console.error("Failed to process OAuth callback from hash:", error);
1506
+ }
1507
+ }
1357
1508
  async function clearClientCache() {
1358
1509
  const clients = Array.from(clientCache.values());
1359
1510
  clientCache.clear();
package/dist/server.js CHANGED
@@ -839,6 +839,7 @@ class OAuthManager {
839
839
  try {
840
840
  const response = await this.exchangeCodeForToken(pendingAuth.provider, code, pendingAuth.codeVerifier, state);
841
841
  this.sessionToken = response.sessionToken;
842
+ this.saveSessionToken(response.sessionToken);
842
843
  this.pendingAuths.delete(state);
843
844
  return response.sessionToken;
844
845
  } catch (error) {
@@ -882,9 +883,26 @@ class OAuthManager {
882
883
  }
883
884
  setSessionToken(token) {
884
885
  this.sessionToken = token;
886
+ this.saveSessionToken(token);
885
887
  }
886
888
  clearSessionToken() {
887
889
  this.sessionToken = undefined;
890
+ if (typeof window !== "undefined" && window.sessionStorage) {
891
+ try {
892
+ window.sessionStorage.removeItem("integrate_session_token");
893
+ } catch (error) {
894
+ console.error("Failed to clear session token from sessionStorage:", error);
895
+ }
896
+ }
897
+ }
898
+ saveSessionToken(token) {
899
+ if (typeof window !== "undefined" && window.sessionStorage) {
900
+ try {
901
+ window.sessionStorage.setItem("integrate_session_token", token);
902
+ } catch (error) {
903
+ console.error("Failed to save session token to sessionStorage:", error);
904
+ }
905
+ }
888
906
  }
889
907
  async getAuthorizationUrl(provider, scopes, state, codeChallenge, redirectUri) {
890
908
  const url = `${this.oauthApiBase}/authorize`;
@@ -936,6 +954,40 @@ class OAuthManager {
936
954
  }
937
955
 
938
956
  // src/client.ts
957
+ class SimpleEventEmitter {
958
+ handlers = new Map;
959
+ on(event, handler) {
960
+ if (!this.handlers.has(event)) {
961
+ this.handlers.set(event, new Set);
962
+ }
963
+ this.handlers.get(event).add(handler);
964
+ }
965
+ off(event, handler) {
966
+ const handlers = this.handlers.get(event);
967
+ if (handlers) {
968
+ handlers.delete(handler);
969
+ }
970
+ }
971
+ emit(event, payload) {
972
+ const handlers = this.handlers.get(event);
973
+ if (handlers) {
974
+ handlers.forEach((handler) => {
975
+ try {
976
+ handler(payload);
977
+ } catch (error) {
978
+ console.error(`Error in event handler for ${event}:`, error);
979
+ }
980
+ });
981
+ }
982
+ }
983
+ removeAllListeners(event) {
984
+ if (event) {
985
+ this.handlers.delete(event);
986
+ } else {
987
+ this.handlers.clear();
988
+ }
989
+ }
990
+ }
939
991
  var MCP_SERVER_URL = "https://mcp.integrate.dev/api/v1/mcp";
940
992
  var clientCache = new Map;
941
993
  var cleanupClients = new Set;
@@ -954,6 +1006,7 @@ class MCPClient {
954
1006
  connectionMode;
955
1007
  connecting = null;
956
1008
  oauthManager;
1009
+ eventEmitter = new SimpleEventEmitter;
957
1010
  github;
958
1011
  gmail;
959
1012
  server;
@@ -972,9 +1025,16 @@ class MCPClient {
972
1025
  this.maxReauthRetries = config.maxReauthRetries ?? 1;
973
1026
  this.connectionMode = config.connectionMode ?? "lazy";
974
1027
  this.oauthManager = new OAuthManager(config.oauthApiBase || "/api/integrate/oauth", config.oauthFlow);
975
- if (config.sessionToken) {
976
- this.oauthManager.setSessionToken(config.sessionToken);
977
- this.transport.setHeader("X-Session-Token", config.sessionToken);
1028
+ let sessionToken = config.sessionToken;
1029
+ if (!sessionToken) {
1030
+ const storedToken = this.loadSessionToken();
1031
+ if (storedToken) {
1032
+ sessionToken = storedToken;
1033
+ }
1034
+ }
1035
+ if (sessionToken) {
1036
+ this.oauthManager.setSessionToken(sessionToken);
1037
+ this.transport.setHeader("X-Session-Token", sessionToken);
978
1038
  }
979
1039
  for (const plugin of this.plugins) {
980
1040
  for (const toolName of plugin.tools) {
@@ -1190,6 +1250,42 @@ class MCPClient {
1190
1250
  onMessage(handler) {
1191
1251
  return this.transport.onMessage(handler);
1192
1252
  }
1253
+ on(event, handler) {
1254
+ this.eventEmitter.on(event, handler);
1255
+ }
1256
+ off(event, handler) {
1257
+ this.eventEmitter.off(event, handler);
1258
+ }
1259
+ saveSessionToken(token) {
1260
+ if (typeof window !== "undefined" && window.sessionStorage) {
1261
+ try {
1262
+ window.sessionStorage.setItem("integrate_session_token", token);
1263
+ } catch (error) {
1264
+ console.error("Failed to save session token to sessionStorage:", error);
1265
+ }
1266
+ }
1267
+ }
1268
+ loadSessionToken() {
1269
+ if (typeof window !== "undefined" && window.sessionStorage) {
1270
+ try {
1271
+ return window.sessionStorage.getItem("integrate_session_token") || undefined;
1272
+ } catch (error) {
1273
+ console.error("Failed to load session token from sessionStorage:", error);
1274
+ return;
1275
+ }
1276
+ }
1277
+ return;
1278
+ }
1279
+ clearSessionToken() {
1280
+ if (typeof window !== "undefined" && window.sessionStorage) {
1281
+ try {
1282
+ window.sessionStorage.removeItem("integrate_session_token");
1283
+ } catch (error) {
1284
+ console.error("Failed to clear session token from sessionStorage:", error);
1285
+ }
1286
+ }
1287
+ this.oauthManager.clearSessionToken();
1288
+ }
1193
1289
  async disconnect() {
1194
1290
  for (const plugin of this.plugins) {
1195
1291
  if (plugin.onDisconnect) {
@@ -1233,18 +1329,44 @@ class MCPClient {
1233
1329
  async authorize(provider) {
1234
1330
  const plugin = this.plugins.find((p) => p.oauth?.provider === provider);
1235
1331
  if (!plugin?.oauth) {
1236
- throw new Error(`No OAuth configuration found for provider: ${provider}`);
1332
+ const error = new Error(`No OAuth configuration found for provider: ${provider}`);
1333
+ this.eventEmitter.emit("auth:error", { provider, error });
1334
+ throw error;
1335
+ }
1336
+ this.eventEmitter.emit("auth:started", { provider });
1337
+ try {
1338
+ await this.oauthManager.initiateFlow(provider, plugin.oauth);
1339
+ const sessionToken = this.oauthManager.getSessionToken();
1340
+ if (sessionToken) {
1341
+ this.saveSessionToken(sessionToken);
1342
+ this.eventEmitter.emit("auth:complete", { provider, sessionToken });
1343
+ }
1344
+ this.authState.set(provider, { authenticated: true });
1345
+ } catch (error) {
1346
+ this.eventEmitter.emit("auth:error", { provider, error });
1347
+ throw error;
1237
1348
  }
1238
- await this.oauthManager.initiateFlow(provider, plugin.oauth);
1239
- this.authState.set(provider, { authenticated: true });
1240
1349
  }
1241
1350
  async handleOAuthCallback(params) {
1242
- const sessionToken = await this.oauthManager.handleCallback(params.code, params.state);
1243
- this.transport.setHeader("X-Session-Token", sessionToken);
1244
- for (const plugin of this.plugins) {
1245
- if (plugin.oauth) {
1246
- this.authState.set(plugin.oauth.provider, { authenticated: true });
1351
+ try {
1352
+ const sessionToken = await this.oauthManager.handleCallback(params.code, params.state);
1353
+ this.saveSessionToken(sessionToken);
1354
+ this.transport.setHeader("X-Session-Token", sessionToken);
1355
+ for (const plugin of this.plugins) {
1356
+ if (plugin.oauth) {
1357
+ this.authState.set(plugin.oauth.provider, { authenticated: true });
1358
+ this.eventEmitter.emit("auth:complete", {
1359
+ provider: plugin.oauth.provider,
1360
+ sessionToken
1361
+ });
1362
+ }
1247
1363
  }
1364
+ } catch (error) {
1365
+ this.eventEmitter.emit("auth:error", {
1366
+ provider: "unknown",
1367
+ error
1368
+ });
1369
+ throw error;
1248
1370
  }
1249
1371
  }
1250
1372
  getSessionToken() {
@@ -1339,6 +1461,9 @@ function createMCPClient(config) {
1339
1461
  console.error("Failed to connect client:", error);
1340
1462
  });
1341
1463
  }
1464
+ if (config.autoHandleOAuthCallback !== false) {
1465
+ processOAuthCallbackFromHash(client);
1466
+ }
1342
1467
  return client;
1343
1468
  } else {
1344
1469
  const client = new MCPClient(config);
@@ -1351,9 +1476,35 @@ function createMCPClient(config) {
1351
1476
  console.error("Failed to connect client:", error);
1352
1477
  });
1353
1478
  }
1479
+ if (config.autoHandleOAuthCallback !== false) {
1480
+ processOAuthCallbackFromHash(client);
1481
+ }
1354
1482
  return client;
1355
1483
  }
1356
1484
  }
1485
+ function processOAuthCallbackFromHash(client) {
1486
+ if (typeof window === "undefined") {
1487
+ return;
1488
+ }
1489
+ try {
1490
+ const hash = window.location.hash;
1491
+ if (hash && hash.includes("oauth_callback=")) {
1492
+ const hashParams = new URLSearchParams(hash.substring(1));
1493
+ const oauthCallbackData = hashParams.get("oauth_callback");
1494
+ if (oauthCallbackData) {
1495
+ const callbackParams = JSON.parse(decodeURIComponent(oauthCallbackData));
1496
+ if (callbackParams.code && callbackParams.state) {
1497
+ client.handleOAuthCallback(callbackParams).catch((error) => {
1498
+ console.error("Failed to process OAuth callback:", error);
1499
+ });
1500
+ window.history.replaceState(null, "", window.location.pathname + window.location.search);
1501
+ }
1502
+ }
1503
+ }
1504
+ } catch (error) {
1505
+ console.error("Failed to process OAuth callback from hash:", error);
1506
+ }
1507
+ }
1357
1508
  async function clearClientCache() {
1358
1509
  const clients = Array.from(clientCache.values());
1359
1510
  clientCache.clear();
@@ -9,7 +9,7 @@ import { type AuthenticationError } from "./errors.js";
9
9
  import type { GitHubPluginClient } from "./plugins/github-client.js";
10
10
  import type { GmailPluginClient } from "./plugins/gmail-client.js";
11
11
  import type { ServerPluginClient } from "./plugins/server-client.js";
12
- import type { AuthStatus, OAuthCallbackParams } from "./oauth/types.js";
12
+ import type { AuthStatus, OAuthCallbackParams, OAuthEventHandler, AuthStartedEvent, AuthCompleteEvent, AuthErrorEvent } from "./oauth/types.js";
13
13
  /**
14
14
  * Tool invocation options
15
15
  */
@@ -56,6 +56,7 @@ export declare class MCPClient<TPlugins extends readonly MCPPlugin[] = readonly
56
56
  private connectionMode;
57
57
  private connecting;
58
58
  private oauthManager;
59
+ private eventEmitter;
59
60
  readonly github: PluginNamespaces<TPlugins> extends {
60
61
  github: GitHubPluginClient;
61
62
  } ? GitHubPluginClient : never;
@@ -148,6 +149,47 @@ export declare class MCPClient<TPlugins extends readonly MCPPlugin[] = readonly
148
149
  * Register a message handler
149
150
  */
150
151
  onMessage(handler: (message: unknown) => void): () => void;
152
+ /**
153
+ * Add event listener for OAuth events
154
+ *
155
+ * @param event - Event type to listen for
156
+ * @param handler - Handler function to call when event is emitted
157
+ *
158
+ * @example
159
+ * ```typescript
160
+ * client.on('auth:complete', ({ provider, sessionToken }) => {
161
+ * console.log(`${provider} authorized!`);
162
+ * });
163
+ * ```
164
+ */
165
+ on(event: 'auth:started', handler: OAuthEventHandler<AuthStartedEvent>): void;
166
+ on(event: 'auth:complete', handler: OAuthEventHandler<AuthCompleteEvent>): void;
167
+ on(event: 'auth:error', handler: OAuthEventHandler<AuthErrorEvent>): void;
168
+ /**
169
+ * Remove event listener for OAuth events
170
+ *
171
+ * @param event - Event type to stop listening for
172
+ * @param handler - Handler function to remove
173
+ */
174
+ off(event: 'auth:started', handler: OAuthEventHandler<AuthStartedEvent>): void;
175
+ off(event: 'auth:complete', handler: OAuthEventHandler<AuthCompleteEvent>): void;
176
+ off(event: 'auth:error', handler: OAuthEventHandler<AuthErrorEvent>): void;
177
+ /**
178
+ * Save session token to sessionStorage
179
+ *
180
+ * @param token - Session token to save
181
+ */
182
+ private saveSessionToken;
183
+ /**
184
+ * Load session token from sessionStorage
185
+ *
186
+ * @returns Session token or undefined if not found
187
+ */
188
+ private loadSessionToken;
189
+ /**
190
+ * Clear session token from sessionStorage
191
+ */
192
+ clearSessionToken(): void;
151
193
  /**
152
194
  * Disconnect from the server
153
195
  */
@@ -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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"}
@@ -148,6 +148,21 @@ export interface MCPClientConfig<TPlugins extends readonly MCPPlugin[]> {
148
148
  * ```
149
149
  */
150
150
  oauthApiBase?: string;
151
+ /**
152
+ * Automatically detect and handle OAuth callbacks from URL hash fragments
153
+ * When true, the SDK will automatically process #oauth_callback={...} in the URL
154
+ *
155
+ * @default true
156
+ *
157
+ * @example
158
+ * ```typescript
159
+ * const client = createMCPClient({
160
+ * plugins: [githubPlugin({ ... })],
161
+ * autoHandleOAuthCallback: false // Disable automatic callback handling
162
+ * });
163
+ * ```
164
+ */
165
+ autoHandleOAuthCallback?: boolean;
151
166
  }
152
167
  /**
153
168
  * Helper type to infer enabled tools from plugins
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/config/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAExD;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,uDAAuD;IACvD,QAAQ,EAAE,MAAM,CAAC;IACjB,iDAAiD;IACjD,KAAK,EAAE,mBAAmB,CAAC;IAC3B,0DAA0D;IAC1D,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;;GAIG;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,EAAE,aAAa,KAAK,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC;AAEnF;;GAEG;AACH,MAAM,WAAW,eAAe,CAAC,QAAQ,SAAS,SAAS,SAAS,EAAE;IACpE,iCAAiC;IACjC,OAAO,EAAE,QAAQ,CAAC;IAElB,mDAAmD;IACnD,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAEjC,uDAAuD;IACvD,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,yBAAyB;IACzB,UAAU,CAAC,EAAE;QACX,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;IAEF;;;;;;;;;;;;;;;;;;;OAmBG;IACH,gBAAgB,CAAC,EAAE,aAAa,CAAC;IAEjC;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B;;;;;;;;OAQG;IACH,cAAc,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,QAAQ,CAAC;IAE7C;;;;;;;OAOG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB;;;;OAIG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB;;;;;;;;;;;;;;OAcG;IACH,SAAS,CAAC,EAAE;QACV,+DAA+D;QAC/D,IAAI,CAAC,EAAE,OAAO,GAAG,UAAU,CAAC;QAC5B,oDAAoD;QACpD,YAAY,CAAC,EAAE;YACb,KAAK,CAAC,EAAE,MAAM,CAAC;YACf,MAAM,CAAC,EAAE,MAAM,CAAC;SACjB,CAAC;QACF,sDAAsD;QACtD,cAAc,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;KACnF,CAAC;IAEF;;;;;;;;;;;;OAYG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;;;;;;;;;;;;;;;;;OAkBG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,MAAM,iBAAiB,CAAC,QAAQ,SAAS,SAAS,SAAS,EAAE,IACjE,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC;AAEpC;;GAEG;AACH,MAAM,MAAM,gBAAgB,CAAC,QAAQ,SAAS,SAAS,SAAS,EAAE,IAAI;KACnE,CAAC,IAAI,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC;CAC/C,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/config/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAExD;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,uDAAuD;IACvD,QAAQ,EAAE,MAAM,CAAC;IACjB,iDAAiD;IACjD,KAAK,EAAE,mBAAmB,CAAC;IAC3B,0DAA0D;IAC1D,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;;GAIG;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,EAAE,aAAa,KAAK,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC;AAEnF;;GAEG;AACH,MAAM,WAAW,eAAe,CAAC,QAAQ,SAAS,SAAS,SAAS,EAAE;IACpE,iCAAiC;IACjC,OAAO,EAAE,QAAQ,CAAC;IAElB,mDAAmD;IACnD,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAEjC,uDAAuD;IACvD,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,yBAAyB;IACzB,UAAU,CAAC,EAAE;QACX,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;IAEF;;;;;;;;;;;;;;;;;;;OAmBG;IACH,gBAAgB,CAAC,EAAE,aAAa,CAAC;IAEjC;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B;;;;;;;;OAQG;IACH,cAAc,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,QAAQ,CAAC;IAE7C;;;;;;;OAOG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB;;;;OAIG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB;;;;;;;;;;;;;;OAcG;IACH,SAAS,CAAC,EAAE;QACV,+DAA+D;QAC/D,IAAI,CAAC,EAAE,OAAO,GAAG,UAAU,CAAC;QAC5B,oDAAoD;QACpD,YAAY,CAAC,EAAE;YACb,KAAK,CAAC,EAAE,MAAM,CAAC;YACf,MAAM,CAAC,EAAE,MAAM,CAAC;SACjB,CAAC;QACF,sDAAsD;QACtD,cAAc,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;KACnF,CAAC;IAEF;;;;;;;;;;;;OAYG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;;;;;;;;;;;;;;;;;OAkBG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;;;;;;;;;;;;OAaG;IACH,uBAAuB,CAAC,EAAE,OAAO,CAAC;CACnC;AAED;;GAEG;AACH,MAAM,MAAM,iBAAiB,CAAC,QAAQ,SAAS,SAAS,SAAS,EAAE,IACjE,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC;AAEpC;;GAEG;AACH,MAAM,MAAM,gBAAgB,CAAC,QAAQ,SAAS,SAAS,SAAS,EAAE,IAAI;KACnE,CAAC,IAAI,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC;CAC/C,CAAC"}
@@ -7,7 +7,7 @@ export type { ToolInvocationOptions } from "./client.js";
7
7
  export { OAuthManager } from "./oauth/manager.js";
8
8
  export { OAuthWindowManager, sendCallbackToOpener } from "./oauth/window-manager.js";
9
9
  export { generateCodeVerifier, generateCodeChallenge, generateState } from "./oauth/pkce.js";
10
- export type { OAuthFlowConfig, PopupOptions, AuthStatus, PendingAuth, AuthorizationUrlResponse, OAuthCallbackResponse, OAuthCallbackParams, } from "./oauth/types.js";
10
+ export type { OAuthFlowConfig, PopupOptions, AuthStatus, PendingAuth, AuthorizationUrlResponse, OAuthCallbackResponse, OAuthCallbackParams, OAuthEventType, OAuthEventHandler, AuthStartedEvent, AuthCompleteEvent, AuthErrorEvent, } from "./oauth/types.js";
11
11
  export { OAuthHandler } from "./adapters/base-handler.js";
12
12
  export type { OAuthHandlerConfig, AuthorizeRequest, AuthorizeResponse, CallbackRequest, CallbackResponse, StatusResponse, } from "./adapters/base-handler.js";
13
13
  export { createNextOAuthHandler } from "./adapters/nextjs.js";
@@ -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,GACpB,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,GACf,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"}
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,GACf,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,GACf,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"}
@@ -75,6 +75,10 @@ export declare class OAuthManager {
75
75
  * Clear session token
76
76
  */
77
77
  clearSessionToken(): void;
78
+ /**
79
+ * Save session token to sessionStorage
80
+ */
81
+ private saveSessionToken;
78
82
  /**
79
83
  * Request authorization URL from user's API route
80
84
  * The API route will add OAuth secrets and forward to MCP server
@@ -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;IAWvC;;;;;;;;;;;;;;;;OAgBG;IACG,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAwCxE;;;;;;;;;;;;;OAaG;IACG,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IA8ClE;;;;;;;;;;;;;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;IAIpC;;OAEG;IACH,iBAAiB,IAAI,IAAI;IAIzB;;;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;IAWvC;;;;;;;;;;;;;;;;OAgBG;IACG,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAwCxE;;;;;;;;;;;;;OAaG;IACG,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAiDlE;;;;;;;;;;;;;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;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAUxB;;;OAGG;YACW,mBAAmB;IAiCjC;;;OAGG;YACW,oBAAoB;IA8BlC;;OAEG;IACH,KAAK,IAAI,IAAI;CAGd"}
@@ -81,4 +81,37 @@ export interface OAuthCallbackParams {
81
81
  /** State parameter for CSRF protection */
82
82
  state: string;
83
83
  }
84
+ /**
85
+ * Event payload for auth:started event
86
+ */
87
+ export interface AuthStartedEvent {
88
+ /** Provider being authorized */
89
+ provider: string;
90
+ }
91
+ /**
92
+ * Event payload for auth:complete event
93
+ */
94
+ export interface AuthCompleteEvent {
95
+ /** Provider that was authorized */
96
+ provider: string;
97
+ /** Session token for authenticated requests */
98
+ sessionToken: string;
99
+ }
100
+ /**
101
+ * Event payload for auth:error event
102
+ */
103
+ export interface AuthErrorEvent {
104
+ /** Provider that failed authorization */
105
+ provider: string;
106
+ /** Error that occurred */
107
+ error: Error;
108
+ }
109
+ /**
110
+ * All possible OAuth event types
111
+ */
112
+ export type OAuthEventType = 'auth:started' | 'auth:complete' | 'auth:error';
113
+ /**
114
+ * Event handler function type
115
+ */
116
+ export type OAuthEventHandler<T = any> = (payload: T) => void;
84
117
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/oauth/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,4CAA4C;IAC5C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,6CAA6C;IAC7C,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,yCAAyC;IACzC,IAAI,EAAE,OAAO,GAAG,UAAU,CAAC;IAC3B,oDAAoD;IACpD,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,sDAAsD;IACtD,cAAc,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACnF;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,yCAAyC;IACzC,UAAU,EAAE,OAAO,CAAC;IACpB,wBAAwB;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,wBAAwB;IACxB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,4BAA4B;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B,2CAA2C;IAC3C,QAAQ,EAAE,MAAM,CAAC;IACjB,4BAA4B;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,yBAAyB;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,0BAA0B;IAC1B,aAAa,EAAE,MAAM,CAAC;IACtB,mCAAmC;IACnC,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,mBAAmB;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,wCAAwC;IACxC,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC,qDAAqD;IACrD,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED;;;GAGG;AACH,MAAM,WAAW,qBAAqB;IACpC,+CAA+C;IAC/C,YAAY,EAAE,MAAM,CAAC;IACrB,4BAA4B;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,6CAA6C;IAC7C,IAAI,EAAE,MAAM,CAAC;IACb,0CAA0C;IAC1C,KAAK,EAAE,MAAM,CAAC;CACf"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/oauth/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,4CAA4C;IAC5C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,6CAA6C;IAC7C,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,yCAAyC;IACzC,IAAI,EAAE,OAAO,GAAG,UAAU,CAAC;IAC3B,oDAAoD;IACpD,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,sDAAsD;IACtD,cAAc,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACnF;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,yCAAyC;IACzC,UAAU,EAAE,OAAO,CAAC;IACpB,wBAAwB;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,wBAAwB;IACxB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,4BAA4B;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B,2CAA2C;IAC3C,QAAQ,EAAE,MAAM,CAAC;IACjB,4BAA4B;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,yBAAyB;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,0BAA0B;IAC1B,aAAa,EAAE,MAAM,CAAC;IACtB,mCAAmC;IACnC,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,mBAAmB;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,wCAAwC;IACxC,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC,qDAAqD;IACrD,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED;;;GAGG;AACH,MAAM,WAAW,qBAAqB;IACpC,+CAA+C;IAC/C,YAAY,EAAE,MAAM,CAAC;IACrB,4BAA4B;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,6CAA6C;IAC7C,IAAI,EAAE,MAAM,CAAC;IACb,0CAA0C;IAC1C,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,gCAAgC;IAChC,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,mCAAmC;IACnC,QAAQ,EAAE,MAAM,CAAC;IACjB,+CAA+C;IAC/C,YAAY,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,yCAAyC;IACzC,QAAQ,EAAE,MAAM,CAAC;IACjB,0BAA0B;IAC1B,KAAK,EAAE,KAAK,CAAC;CACd;AAED;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,cAAc,GAAG,eAAe,GAAG,YAAY,CAAC;AAE7E;;GAEG;AACH,MAAM,MAAM,iBAAiB,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,IAAI,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "integrate-sdk",
3
- "version": "0.3.8",
3
+ "version": "0.3.10",
4
4
  "description": "Type-safe TypeScript SDK for MCP Client with plugin-based OAuth provider configuration",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",