integrate-sdk 0.9.28-dev.1 → 0.9.30-dev.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (41) hide show
  1. package/dist/adapters/auto-routes.js +61 -23
  2. package/dist/adapters/base-handler.d.ts.map +1 -1
  3. package/dist/adapters/base-handler.js +61 -23
  4. package/dist/adapters/index.js +99 -49
  5. package/dist/adapters/nextjs.js +61 -23
  6. package/dist/adapters/solid-start.js +99 -49
  7. package/dist/adapters/svelte-kit.js +99 -49
  8. package/dist/index.d.ts +1 -1
  9. package/dist/index.d.ts.map +1 -1
  10. package/dist/index.js +488 -101
  11. package/dist/oauth.js +60 -23
  12. package/dist/server.js +376 -122
  13. package/dist/src/adapters/base-handler.d.ts.map +1 -1
  14. package/dist/src/client.d.ts +3 -1
  15. package/dist/src/client.d.ts.map +1 -1
  16. package/dist/src/index.d.ts +8 -0
  17. package/dist/src/index.d.ts.map +1 -1
  18. package/dist/src/integrations/library-metadata.d.ts +1 -1
  19. package/dist/src/integrations/library-metadata.d.ts.map +1 -1
  20. package/dist/src/integrations/netlify-client.d.ts +161 -0
  21. package/dist/src/integrations/netlify-client.d.ts.map +1 -0
  22. package/dist/src/integrations/netlify.d.ts +18 -0
  23. package/dist/src/integrations/netlify.d.ts.map +1 -0
  24. package/dist/src/integrations/posthog-client.d.ts +222 -0
  25. package/dist/src/integrations/posthog-client.d.ts.map +1 -0
  26. package/dist/src/integrations/posthog.d.ts +30 -0
  27. package/dist/src/integrations/posthog.d.ts.map +1 -0
  28. package/dist/src/integrations/railway-client.d.ts +302 -0
  29. package/dist/src/integrations/railway-client.d.ts.map +1 -0
  30. package/dist/src/integrations/railway.d.ts +24 -0
  31. package/dist/src/integrations/railway.d.ts.map +1 -0
  32. package/dist/src/integrations/sentry-client.d.ts +78 -0
  33. package/dist/src/integrations/sentry-client.d.ts.map +1 -0
  34. package/dist/src/integrations/sentry.d.ts +22 -0
  35. package/dist/src/integrations/sentry.d.ts.map +1 -0
  36. package/dist/src/oauth/types.d.ts +2 -0
  37. package/dist/src/oauth/types.d.ts.map +1 -1
  38. package/dist/src/server.d.ts +2 -0
  39. package/dist/src/server.d.ts.map +1 -1
  40. package/index.ts +6 -1
  41. package/package.json +1 -1
package/dist/oauth.js CHANGED
@@ -101,10 +101,26 @@ var init_library_metadata = __esm(() => {
101
101
  description: "Manage Polar products, orders, and subscriptions",
102
102
  category: "Business"
103
103
  },
104
+ posthog: {
105
+ description: "Read PostHog organizations, projects, insights, and feature flags",
106
+ category: "Analytics"
107
+ },
104
108
  ramp: {
105
109
  description: "Manage Ramp corporate cards, bills, and spend",
106
110
  category: "Business"
107
111
  },
112
+ railway: {
113
+ description: "Manage Railway workspaces, projects, services, deployments, variables, domains, and volumes",
114
+ category: "Infrastructure"
115
+ },
116
+ sentry: {
117
+ description: "Monitor Sentry errors, issues, releases, and projects",
118
+ category: "Engineering"
119
+ },
120
+ netlify: {
121
+ description: "Manage Netlify sites, deploys, builds, and environment variables",
122
+ category: "Infrastructure"
123
+ },
108
124
  slack: {
109
125
  description: "Send and manage Slack messages and channels",
110
126
  category: "Communication"
@@ -629,6 +645,21 @@ var exports_base_handler = {};
629
645
  __export(exports_base_handler, {
630
646
  OAuthHandler: () => OAuthHandler
631
647
  });
648
+ function getForwardableProviderConfig(config) {
649
+ if (!config) {
650
+ return {};
651
+ }
652
+ return Object.fromEntries(Object.entries(config).filter(([key, value]) => value !== undefined && value !== null && !OAUTH_CONFIG_FIELDS.has(key)).map(([key, value]) => [key, String(value)]));
653
+ }
654
+ function getStoredProviderConfig(config) {
655
+ const baseUrl = config?.baseUrl || config?.apiBaseUrl;
656
+ if (!baseUrl) {
657
+ return;
658
+ }
659
+ return {
660
+ baseUrl: String(baseUrl)
661
+ };
662
+ }
632
663
 
633
664
  class OAuthHandler {
634
665
  config;
@@ -700,25 +731,9 @@ class OAuthHandler {
700
731
  if (redirectUri) {
701
732
  url.searchParams.set("redirect_uri", redirectUri);
702
733
  }
703
- const OAUTH_FIELDS = new Set([
704
- "clientId",
705
- "clientSecret",
706
- "scopes",
707
- "optionalScopes",
708
- "redirectUri",
709
- "client_id",
710
- "client_secret",
711
- "scope",
712
- "optional_scope",
713
- "redirect_uri",
714
- "provider"
715
- ]);
716
- if (providerConfig.config) {
717
- for (const [key, value] of Object.entries(providerConfig.config)) {
718
- if (value !== undefined && value !== null && !OAUTH_FIELDS.has(key)) {
719
- url.searchParams.set(key, String(value));
720
- }
721
- }
734
+ const extraConfig = getForwardableProviderConfig(providerConfig.config);
735
+ for (const [key, value] of Object.entries(extraConfig)) {
736
+ url.searchParams.set(key, value);
722
737
  }
723
738
  const response = await fetch(url.toString(), {
724
739
  method: "GET",
@@ -805,7 +820,8 @@ class OAuthHandler {
805
820
  state: callbackRequest.state,
806
821
  client_id: providerConfig.clientId,
807
822
  client_secret: providerConfig.clientSecret,
808
- redirect_uri: providerConfig.redirectUri
823
+ redirect_uri: providerConfig.redirectUri,
824
+ ...getForwardableProviderConfig(providerConfig.config)
809
825
  })
810
826
  });
811
827
  if (!response.ok) {
@@ -823,7 +839,8 @@ class OAuthHandler {
823
839
  tokenType: result.tokenType,
824
840
  expiresIn: result.expiresIn,
825
841
  expiresAt: result.expiresAt,
826
- scopes: result.scopes ? result.scopes.flatMap((s) => s.split(" ").filter(Boolean)) : result.scopes
842
+ scopes: result.scopes ? result.scopes.flatMap((s) => s.split(" ").filter(Boolean)) : result.scopes,
843
+ providerConfig: getStoredProviderConfig(providerConfig.config)
827
844
  };
828
845
  const email = result.email || await fetchUserEmail(callbackRequest.provider, tokenData);
829
846
  if (email) {
@@ -940,6 +957,12 @@ class OAuthHandler {
940
957
  if (providerConfig.config?.subdomain) {
941
958
  body.subdomain = providerConfig.config.subdomain;
942
959
  }
960
+ const extraConfig = getForwardableProviderConfig(providerConfig.config);
961
+ for (const [key, value] of Object.entries(extraConfig)) {
962
+ if (body[key] === undefined) {
963
+ body[key] = value;
964
+ }
965
+ }
943
966
  const url = new URL("/oauth/refresh", this.serverUrl);
944
967
  const response = await fetch(url.toString(), {
945
968
  method: "POST",
@@ -966,7 +989,8 @@ class OAuthHandler {
966
989
  tokenType: result.tokenType,
967
990
  expiresIn: result.expiresIn,
968
991
  expiresAt: result.expiresAt,
969
- scopes: result.scopes ? result.scopes.flatMap((s) => s.split(" ").filter(Boolean)) : result.scopes
992
+ scopes: result.scopes ? result.scopes.flatMap((s) => s.split(" ").filter(Boolean)) : result.scopes,
993
+ providerConfig: getStoredProviderConfig(providerConfig.config)
970
994
  };
971
995
  const email = result.email || await fetchUserEmail(refreshRequest.provider, tokenData);
972
996
  if (email) {
@@ -1033,12 +1057,25 @@ class OAuthHandler {
1033
1057
  return jsonRpcResponse.result;
1034
1058
  }
1035
1059
  }
1036
- var SERVER_LOG_CONTEXT = "server", logger2, MCP_SERVER_URL = "https://mcp.integrate.dev/api/v1/mcp";
1060
+ var SERVER_LOG_CONTEXT = "server", logger2, OAUTH_CONFIG_FIELDS, MCP_SERVER_URL = "https://mcp.integrate.dev/api/v1/mcp";
1037
1061
  var init_base_handler = __esm(() => {
1038
1062
  init_integration_summary();
1039
1063
  init_email_fetcher();
1040
1064
  init_logger();
1041
1065
  logger2 = createLogger("OAuthHandler", SERVER_LOG_CONTEXT);
1066
+ OAUTH_CONFIG_FIELDS = new Set([
1067
+ "clientId",
1068
+ "clientSecret",
1069
+ "scopes",
1070
+ "optionalScopes",
1071
+ "redirectUri",
1072
+ "client_id",
1073
+ "client_secret",
1074
+ "scope",
1075
+ "optional_scope",
1076
+ "redirect_uri",
1077
+ "provider"
1078
+ ]);
1042
1079
  });
1043
1080
 
1044
1081
  // src/adapters/auto-routes.ts