integrate-sdk 0.9.10-dev.0 → 0.9.14-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 (37) hide show
  1. package/dist/adapters/auto-routes.js +166 -12360
  2. package/dist/adapters/base-handler.d.ts.map +1 -1
  3. package/dist/adapters/base-handler.js +838 -0
  4. package/dist/adapters/index.js +3370 -12617
  5. package/dist/adapters/nextjs-oauth-redirect.js +0 -3
  6. package/dist/adapters/nextjs.js +266 -12132
  7. package/dist/adapters/node.js +31 -13004
  8. package/dist/adapters/session-detector.js +137 -38
  9. package/dist/adapters/solid-start.js +3633 -0
  10. package/dist/adapters/svelte-kit.js +3382 -12611
  11. package/dist/adapters/tanstack-start.js +7 -13027
  12. package/dist/ai/anthropic.js +44 -12
  13. package/dist/ai/google.js +44 -12
  14. package/dist/ai/index.js +44 -12
  15. package/dist/ai/openai.js +44 -12
  16. package/dist/ai/trigger-tools.js +17 -0
  17. package/dist/ai/utils.js +17 -0
  18. package/dist/ai/vercel-ai.js +44 -12
  19. package/dist/code-mode/executor.d.ts +8 -0
  20. package/dist/code-mode/executor.d.ts.map +1 -1
  21. package/dist/code-mode/executor.js +40 -7
  22. package/dist/code-mode/index.js +48 -12
  23. package/dist/code-mode/runtime-stub.js +19 -0
  24. package/dist/code-mode/tool-builder.d.ts.map +1 -1
  25. package/dist/code-mode/tool-builder.js +48 -12
  26. package/dist/code-mode/type-generator.js +19 -0
  27. package/dist/index.js +4199 -12562
  28. package/dist/oauth.js +140 -12309
  29. package/dist/react.js +14 -16
  30. package/dist/server.js +9147 -9503
  31. package/dist/src/adapters/base-handler.d.ts.map +1 -1
  32. package/dist/src/code-mode/executor.d.ts +8 -0
  33. package/dist/src/code-mode/executor.d.ts.map +1 -1
  34. package/dist/src/code-mode/tool-builder.d.ts.map +1 -1
  35. package/dist/src/index.d.ts +0 -2
  36. package/dist/src/index.d.ts.map +1 -1
  37. package/package.json +2 -2
@@ -10,47 +10,146 @@ var __export = (target, all) => {
10
10
  };
11
11
  var __esm = (fn, res) => () => (fn && (res = fn(fn = 0)), res);
12
12
 
13
- // node.ts
14
- function fromNodeHeaders(nodeHeaders) {
15
- const webHeaders = new Headers;
16
- for (const [key, value] of Object.entries(nodeHeaders)) {
17
- if (value !== undefined) {
18
- if (Array.isArray(value)) {
19
- value.forEach((v) => webHeaders.append(key, v));
20
- } else {
21
- webHeaders.set(key, value);
22
- }
13
+ // session-detector.ts
14
+ var exports_session_detector = {};
15
+ __export(exports_session_detector, {
16
+ tryDecodeJWT: () => tryDecodeJWT,
17
+ detectSessionContext: () => detectSessionContext
18
+ });
19
+ function tryDecodeJWT(token) {
20
+ try {
21
+ const parts = token.split(".");
22
+ if (parts.length !== 3) {
23
+ return;
23
24
  }
25
+ const payloadPart = parts[1];
26
+ if (!payloadPart) {
27
+ return;
28
+ }
29
+ const base64 = payloadPart.replace(/-/g, "+").replace(/_/g, "/");
30
+ const jsonPayload = decodeURIComponent(atob(base64).split("").map((c) => "%" + ("00" + c.charCodeAt(0).toString(16)).slice(-2)).join(""));
31
+ return JSON.parse(jsonPayload);
32
+ } catch (error) {
33
+ return;
24
34
  }
25
- return webHeaders;
26
- }
27
- async function toWebRequest(req) {
28
- const protocol = req.socket?.encrypted ? "https" : "http";
29
- const host = req.headers.host || "localhost";
30
- const url = `${protocol}://${host}${req.url || ""}`;
31
- const headers = fromNodeHeaders(req.headers);
32
- let body;
33
- if (req.method && ["POST", "PUT", "PATCH"].includes(req.method)) {
34
- body = await new Promise((resolve, reject) => {
35
- let data = "";
36
- req.on("data", (chunk) => data += chunk);
37
- req.on("end", () => resolve(data));
38
- req.on("error", reject);
39
- });
35
+ }
36
+ function getCookies(request) {
37
+ const cookies = new Map;
38
+ const cookieHeader = request.headers.get("cookie");
39
+ if (!cookieHeader) {
40
+ return cookies;
41
+ }
42
+ const pairs = cookieHeader.split(";");
43
+ for (const pair of pairs) {
44
+ const [name, ...valueParts] = pair.split("=");
45
+ if (name && valueParts.length > 0) {
46
+ const trimmedName = name.trim();
47
+ const value = valueParts.join("=").trim();
48
+ cookies.set(trimmedName, value);
49
+ }
50
+ }
51
+ return cookies;
52
+ }
53
+ function tryBetterAuth(cookies) {
54
+ const sessionToken = cookies.get("better-auth.session_token");
55
+ if (!sessionToken) {
56
+ return;
57
+ }
58
+ const payload = tryDecodeJWT(sessionToken);
59
+ if (!payload) {
60
+ return;
61
+ }
62
+ const userId = payload.sub || payload.userId || payload.user_id || payload.id;
63
+ if (!userId) {
64
+ return;
65
+ }
66
+ return {
67
+ userId,
68
+ sessionId: payload.jti || payload.sessionId
69
+ };
70
+ }
71
+ function tryNextAuth(cookies) {
72
+ const sessionToken = cookies.get("__Secure-next-auth.session-token") || cookies.get("next-auth.session-token");
73
+ if (!sessionToken) {
74
+ return;
75
+ }
76
+ if (sessionToken.includes(".")) {
77
+ const payload = tryDecodeJWT(sessionToken);
78
+ if (payload) {
79
+ return {
80
+ userId: payload.sub || payload.userId || payload.user_id || payload.id,
81
+ sessionId: payload.jti
82
+ };
83
+ }
84
+ }
85
+ return;
86
+ }
87
+ function tryClerk(cookies) {
88
+ const sessionToken = cookies.get("__session");
89
+ if (!sessionToken) {
90
+ return;
91
+ }
92
+ const payload = tryDecodeJWT(sessionToken);
93
+ if (!payload) {
94
+ return;
95
+ }
96
+ return {
97
+ userId: payload.sub || payload.userId,
98
+ organizationId: payload.org_id || payload.organizationId,
99
+ sessionId: payload.sid || payload.sessionId
100
+ };
101
+ }
102
+ function tryLucia(cookies) {
103
+ const sessionToken = cookies.get("lucia_session");
104
+ if (!sessionToken) {
105
+ return;
106
+ }
107
+ return {
108
+ sessionId: sessionToken
109
+ };
110
+ }
111
+ function tryGenericSession(cookies) {
112
+ const sessionToken = cookies.get("auth_session") || cookies.get("session");
113
+ if (!sessionToken) {
114
+ return;
115
+ }
116
+ if (sessionToken.includes(".")) {
117
+ const payload = tryDecodeJWT(sessionToken);
118
+ if (payload) {
119
+ return {
120
+ userId: payload.sub || payload.userId || payload.user_id || payload.id,
121
+ sessionId: payload.jti || payload.sessionId || payload.sid
122
+ };
123
+ }
124
+ }
125
+ return {
126
+ sessionId: sessionToken
127
+ };
128
+ }
129
+ async function detectSessionContext(request) {
130
+ const cookies = getCookies(request);
131
+ let context;
132
+ context = tryBetterAuth(cookies);
133
+ if (context?.userId) {
134
+ return context;
135
+ }
136
+ context = tryNextAuth(cookies);
137
+ if (context?.userId) {
138
+ return context;
139
+ }
140
+ context = tryClerk(cookies);
141
+ if (context?.userId) {
142
+ return context;
143
+ }
144
+ context = tryLucia(cookies);
145
+ if (context?.userId) {
146
+ return context;
147
+ }
148
+ context = tryGenericSession(cookies);
149
+ if (context?.userId) {
150
+ return context;
40
151
  }
41
- return new Request(url, {
42
- method: req.method,
43
- headers,
44
- body: body || undefined
45
- });
46
- }
47
- async function sendWebResponse(webRes, nodeRes) {
48
- nodeRes.statusCode = webRes.status;
49
- webRes.headers.forEach((value, key) => {
50
- nodeRes.setHeader(key, value);
51
- });
52
- const body = await webRes.text();
53
- nodeRes.end(body);
152
+ return;
54
153
  }
55
154
  export {
56
155
  tryDecodeJWT,