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.
- package/dist/adapters/auto-routes.js +61 -23
- package/dist/adapters/base-handler.d.ts.map +1 -1
- package/dist/adapters/base-handler.js +61 -23
- package/dist/adapters/index.js +99 -49
- package/dist/adapters/nextjs.js +61 -23
- package/dist/adapters/solid-start.js +99 -49
- package/dist/adapters/svelte-kit.js +99 -49
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +488 -101
- package/dist/oauth.js +60 -23
- package/dist/server.js +376 -122
- package/dist/src/adapters/base-handler.d.ts.map +1 -1
- package/dist/src/client.d.ts +3 -1
- package/dist/src/client.d.ts.map +1 -1
- package/dist/src/index.d.ts +8 -0
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/integrations/library-metadata.d.ts +1 -1
- package/dist/src/integrations/library-metadata.d.ts.map +1 -1
- package/dist/src/integrations/netlify-client.d.ts +161 -0
- package/dist/src/integrations/netlify-client.d.ts.map +1 -0
- package/dist/src/integrations/netlify.d.ts +18 -0
- package/dist/src/integrations/netlify.d.ts.map +1 -0
- package/dist/src/integrations/posthog-client.d.ts +222 -0
- package/dist/src/integrations/posthog-client.d.ts.map +1 -0
- package/dist/src/integrations/posthog.d.ts +30 -0
- package/dist/src/integrations/posthog.d.ts.map +1 -0
- package/dist/src/integrations/railway-client.d.ts +302 -0
- package/dist/src/integrations/railway-client.d.ts.map +1 -0
- package/dist/src/integrations/railway.d.ts +24 -0
- package/dist/src/integrations/railway.d.ts.map +1 -0
- package/dist/src/integrations/sentry-client.d.ts +78 -0
- package/dist/src/integrations/sentry-client.d.ts.map +1 -0
- package/dist/src/integrations/sentry.d.ts +22 -0
- package/dist/src/integrations/sentry.d.ts.map +1 -0
- package/dist/src/oauth/types.d.ts +2 -0
- package/dist/src/oauth/types.d.ts.map +1 -1
- package/dist/src/server.d.ts +2 -0
- package/dist/src/server.d.ts.map +1 -1
- package/index.ts +6 -1
- 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
|
|
704
|
-
|
|
705
|
-
|
|
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
|