@tambo-ai/typescript-sdk 0.31.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 (291) hide show
  1. package/CHANGELOG.md +389 -0
  2. package/LICENSE +201 -0
  3. package/README.md +434 -0
  4. package/_shims/MultipartBody.d.ts +9 -0
  5. package/_shims/MultipartBody.d.ts.map +1 -0
  6. package/_shims/MultipartBody.js +16 -0
  7. package/_shims/MultipartBody.js.map +1 -0
  8. package/_shims/MultipartBody.mjs +12 -0
  9. package/_shims/MultipartBody.mjs.map +1 -0
  10. package/_shims/README.md +46 -0
  11. package/_shims/auto/runtime-bun.d.ts +5 -0
  12. package/_shims/auto/runtime-bun.d.ts.map +1 -0
  13. package/_shims/auto/runtime-bun.js +21 -0
  14. package/_shims/auto/runtime-bun.js.map +1 -0
  15. package/_shims/auto/runtime-bun.mjs +2 -0
  16. package/_shims/auto/runtime-bun.mjs.map +1 -0
  17. package/_shims/auto/runtime-node.d.ts +5 -0
  18. package/_shims/auto/runtime-node.d.ts.map +1 -0
  19. package/_shims/auto/runtime-node.js +21 -0
  20. package/_shims/auto/runtime-node.js.map +1 -0
  21. package/_shims/auto/runtime-node.mjs +2 -0
  22. package/_shims/auto/runtime-node.mjs.map +1 -0
  23. package/_shims/auto/runtime.d.ts +5 -0
  24. package/_shims/auto/runtime.d.ts.map +1 -0
  25. package/_shims/auto/runtime.js +21 -0
  26. package/_shims/auto/runtime.js.map +1 -0
  27. package/_shims/auto/runtime.mjs +2 -0
  28. package/_shims/auto/runtime.mjs.map +1 -0
  29. package/_shims/auto/types-node.d.ts +5 -0
  30. package/_shims/auto/types-node.d.ts.map +1 -0
  31. package/_shims/auto/types-node.js +21 -0
  32. package/_shims/auto/types-node.js.map +1 -0
  33. package/_shims/auto/types-node.mjs +2 -0
  34. package/_shims/auto/types-node.mjs.map +1 -0
  35. package/_shims/auto/types.d.ts +101 -0
  36. package/_shims/auto/types.js +3 -0
  37. package/_shims/auto/types.mjs +3 -0
  38. package/_shims/bun-runtime.d.ts +6 -0
  39. package/_shims/bun-runtime.d.ts.map +1 -0
  40. package/_shims/bun-runtime.js +14 -0
  41. package/_shims/bun-runtime.js.map +1 -0
  42. package/_shims/bun-runtime.mjs +10 -0
  43. package/_shims/bun-runtime.mjs.map +1 -0
  44. package/_shims/index.d.ts +81 -0
  45. package/_shims/index.js +13 -0
  46. package/_shims/index.mjs +7 -0
  47. package/_shims/manual-types.d.ts +12 -0
  48. package/_shims/manual-types.js +3 -0
  49. package/_shims/manual-types.mjs +3 -0
  50. package/_shims/node-runtime.d.ts +3 -0
  51. package/_shims/node-runtime.d.ts.map +1 -0
  52. package/_shims/node-runtime.js +89 -0
  53. package/_shims/node-runtime.js.map +1 -0
  54. package/_shims/node-runtime.mjs +56 -0
  55. package/_shims/node-runtime.mjs.map +1 -0
  56. package/_shims/node-types.d.ts +42 -0
  57. package/_shims/node-types.js +3 -0
  58. package/_shims/node-types.mjs +3 -0
  59. package/_shims/registry.d.ts +37 -0
  60. package/_shims/registry.d.ts.map +1 -0
  61. package/_shims/registry.js +41 -0
  62. package/_shims/registry.js.map +1 -0
  63. package/_shims/registry.mjs +37 -0
  64. package/_shims/registry.mjs.map +1 -0
  65. package/_shims/web-runtime.d.ts +5 -0
  66. package/_shims/web-runtime.d.ts.map +1 -0
  67. package/_shims/web-runtime.js +78 -0
  68. package/_shims/web-runtime.js.map +1 -0
  69. package/_shims/web-runtime.mjs +71 -0
  70. package/_shims/web-runtime.mjs.map +1 -0
  71. package/_shims/web-types.d.ts +83 -0
  72. package/_shims/web-types.js +3 -0
  73. package/_shims/web-types.mjs +3 -0
  74. package/core.d.ts +241 -0
  75. package/core.d.ts.map +1 -0
  76. package/core.js +914 -0
  77. package/core.js.map +1 -0
  78. package/core.mjs +882 -0
  79. package/core.mjs.map +1 -0
  80. package/error.d.ts +47 -0
  81. package/error.d.ts.map +1 -0
  82. package/error.js +113 -0
  83. package/error.js.map +1 -0
  84. package/error.mjs +97 -0
  85. package/error.mjs.map +1 -0
  86. package/index.d.mts +124 -0
  87. package/index.d.ts +124 -0
  88. package/index.d.ts.map +1 -0
  89. package/index.js +140 -0
  90. package/index.js.map +1 -0
  91. package/index.mjs +94 -0
  92. package/index.mjs.map +1 -0
  93. package/lib/advance-stream.d.ts +5 -0
  94. package/lib/advance-stream.d.ts.map +1 -0
  95. package/lib/advance-stream.js +35 -0
  96. package/lib/advance-stream.js.map +1 -0
  97. package/lib/advance-stream.mjs +31 -0
  98. package/lib/advance-stream.mjs.map +1 -0
  99. package/lib/streaming-components.d.ts +7 -0
  100. package/lib/streaming-components.d.ts.map +1 -0
  101. package/lib/streaming-components.js +48 -0
  102. package/lib/streaming-components.js.map +1 -0
  103. package/lib/streaming-components.mjs +43 -0
  104. package/lib/streaming-components.mjs.map +1 -0
  105. package/package.json +122 -0
  106. package/pagination.d.ts +20 -0
  107. package/pagination.d.ts.map +1 -0
  108. package/pagination.js +46 -0
  109. package/pagination.js.map +1 -0
  110. package/pagination.mjs +42 -0
  111. package/pagination.mjs.map +1 -0
  112. package/resource.d.ts +6 -0
  113. package/resource.d.ts.map +1 -0
  114. package/resource.js +11 -0
  115. package/resource.js.map +1 -0
  116. package/resource.mjs +7 -0
  117. package/resource.mjs.map +1 -0
  118. package/resources/beta/beta.d.ts +22 -0
  119. package/resources/beta/beta.d.ts.map +1 -0
  120. package/resources/beta/beta.js +52 -0
  121. package/resources/beta/beta.js.map +1 -0
  122. package/resources/beta/beta.mjs +25 -0
  123. package/resources/beta/beta.mjs.map +1 -0
  124. package/resources/beta/components.d.ts +44 -0
  125. package/resources/beta/components.d.ts.map +1 -0
  126. package/resources/beta/components.js +29 -0
  127. package/resources/beta/components.js.map +1 -0
  128. package/resources/beta/components.mjs +25 -0
  129. package/resources/beta/components.mjs.map +1 -0
  130. package/resources/beta/index.d.ts +6 -0
  131. package/resources/beta/index.d.ts.map +1 -0
  132. package/resources/beta/index.js +16 -0
  133. package/resources/beta/index.js.map +1 -0
  134. package/resources/beta/index.mjs +7 -0
  135. package/resources/beta/index.mjs.map +1 -0
  136. package/resources/beta/projects/api-key.d.ts +24 -0
  137. package/resources/beta/projects/api-key.d.ts.map +1 -0
  138. package/resources/beta/projects/api-key.js +18 -0
  139. package/resources/beta/projects/api-key.js.map +1 -0
  140. package/resources/beta/projects/api-key.mjs +14 -0
  141. package/resources/beta/projects/api-key.mjs.map +1 -0
  142. package/resources/beta/projects/index.d.ts +5 -0
  143. package/resources/beta/projects/index.d.ts.map +1 -0
  144. package/resources/beta/projects/index.js +13 -0
  145. package/resources/beta/projects/index.js.map +1 -0
  146. package/resources/beta/projects/index.mjs +6 -0
  147. package/resources/beta/projects/index.mjs.map +1 -0
  148. package/resources/beta/projects/projects.d.ts +52 -0
  149. package/resources/beta/projects/projects.d.ts.map +1 -0
  150. package/resources/beta/projects/projects.js +62 -0
  151. package/resources/beta/projects/projects.js.map +1 -0
  152. package/resources/beta/projects/projects.mjs +35 -0
  153. package/resources/beta/projects/projects.mjs.map +1 -0
  154. package/resources/beta/projects/provider-key.d.ts +34 -0
  155. package/resources/beta/projects/provider-key.d.ts.map +1 -0
  156. package/resources/beta/projects/provider-key.js +18 -0
  157. package/resources/beta/projects/provider-key.js.map +1 -0
  158. package/resources/beta/projects/provider-key.mjs +14 -0
  159. package/resources/beta/projects/provider-key.mjs.map +1 -0
  160. package/resources/beta/projects/user.d.ts +17 -0
  161. package/resources/beta/projects/user.d.ts.map +1 -0
  162. package/resources/beta/projects/user.js +12 -0
  163. package/resources/beta/projects/user.js.map +1 -0
  164. package/resources/beta/projects/user.mjs +8 -0
  165. package/resources/beta/projects/user.mjs.map +1 -0
  166. package/resources/beta/registry.d.ts +10 -0
  167. package/resources/beta/registry.d.ts.map +1 -0
  168. package/resources/beta/registry.js +12 -0
  169. package/resources/beta/registry.js.map +1 -0
  170. package/resources/beta/registry.mjs +8 -0
  171. package/resources/beta/registry.mjs.map +1 -0
  172. package/resources/beta/threads/index.d.ts +4 -0
  173. package/resources/beta/threads/index.d.ts.map +1 -0
  174. package/resources/beta/threads/index.js +12 -0
  175. package/resources/beta/threads/index.js.map +1 -0
  176. package/resources/beta/threads/index.mjs +5 -0
  177. package/resources/beta/threads/index.mjs.map +1 -0
  178. package/resources/beta/threads/messages.d.ts +42 -0
  179. package/resources/beta/threads/messages.d.ts.map +1 -0
  180. package/resources/beta/threads/messages.js +28 -0
  181. package/resources/beta/threads/messages.js.map +1 -0
  182. package/resources/beta/threads/messages.mjs +24 -0
  183. package/resources/beta/threads/messages.mjs.map +1 -0
  184. package/resources/beta/threads/suggestions.d.ts +55 -0
  185. package/resources/beta/threads/suggestions.d.ts.map +1 -0
  186. package/resources/beta/threads/suggestions.js +21 -0
  187. package/resources/beta/threads/suggestions.js.map +1 -0
  188. package/resources/beta/threads/suggestions.mjs +17 -0
  189. package/resources/beta/threads/suggestions.mjs.map +1 -0
  190. package/resources/beta/threads/threads.d.ts +161 -0
  191. package/resources/beta/threads/threads.d.ts.map +1 -0
  192. package/resources/beta/threads/threads.js +79 -0
  193. package/resources/beta/threads/threads.js.map +1 -0
  194. package/resources/beta/threads/threads.mjs +51 -0
  195. package/resources/beta/threads/threads.mjs.map +1 -0
  196. package/resources/components.d.ts +57 -0
  197. package/resources/components.d.ts.map +1 -0
  198. package/resources/components.js +15 -0
  199. package/resources/components.js.map +1 -0
  200. package/resources/components.mjs +11 -0
  201. package/resources/components.mjs.map +1 -0
  202. package/resources/index.d.ts +4 -0
  203. package/resources/index.d.ts.map +1 -0
  204. package/resources/index.js +24 -0
  205. package/resources/index.js.map +1 -0
  206. package/resources/index.mjs +5 -0
  207. package/resources/index.mjs.map +1 -0
  208. package/resources/shared.d.ts +38 -0
  209. package/resources/shared.d.ts.map +1 -0
  210. package/resources/shared.js +4 -0
  211. package/resources/shared.js.map +1 -0
  212. package/resources/shared.mjs +3 -0
  213. package/resources/shared.mjs.map +1 -0
  214. package/shims/node.d.ts +30 -0
  215. package/shims/node.d.ts.map +1 -0
  216. package/shims/node.js +31 -0
  217. package/shims/node.js.map +1 -0
  218. package/shims/node.mjs +5 -0
  219. package/shims/node.mjs.map +1 -0
  220. package/shims/web.d.ts +26 -0
  221. package/shims/web.d.ts.map +1 -0
  222. package/shims/web.js +31 -0
  223. package/shims/web.js.map +1 -0
  224. package/shims/web.mjs +5 -0
  225. package/shims/web.mjs.map +1 -0
  226. package/src/_shims/MultipartBody.ts +9 -0
  227. package/src/_shims/README.md +46 -0
  228. package/src/_shims/auto/runtime-bun.ts +4 -0
  229. package/src/_shims/auto/runtime-node.ts +4 -0
  230. package/src/_shims/auto/runtime.ts +4 -0
  231. package/src/_shims/auto/types-node.ts +4 -0
  232. package/src/_shims/auto/types.d.ts +101 -0
  233. package/src/_shims/auto/types.js +3 -0
  234. package/src/_shims/auto/types.mjs +3 -0
  235. package/src/_shims/bun-runtime.ts +14 -0
  236. package/src/_shims/index.d.ts +81 -0
  237. package/src/_shims/index.js +13 -0
  238. package/src/_shims/index.mjs +7 -0
  239. package/src/_shims/manual-types.d.ts +12 -0
  240. package/src/_shims/manual-types.js +3 -0
  241. package/src/_shims/manual-types.mjs +3 -0
  242. package/src/_shims/node-runtime.ts +81 -0
  243. package/src/_shims/node-types.d.ts +42 -0
  244. package/src/_shims/node-types.js +3 -0
  245. package/src/_shims/node-types.mjs +3 -0
  246. package/src/_shims/registry.ts +67 -0
  247. package/src/_shims/web-runtime.ts +103 -0
  248. package/src/_shims/web-types.d.ts +83 -0
  249. package/src/_shims/web-types.js +3 -0
  250. package/src/_shims/web-types.mjs +3 -0
  251. package/src/core.ts +1208 -0
  252. package/src/error.ts +130 -0
  253. package/src/index.ts +229 -0
  254. package/src/lib/.keep +4 -0
  255. package/src/lib/advance-stream.ts +47 -0
  256. package/src/lib/streaming-components.ts +71 -0
  257. package/src/pagination.ts +73 -0
  258. package/src/resource.ts +11 -0
  259. package/src/resources/beta/beta.ts +96 -0
  260. package/src/resources/beta/components.ts +97 -0
  261. package/src/resources/beta/index.ts +38 -0
  262. package/src/resources/beta/projects/api-key.ts +48 -0
  263. package/src/resources/beta/projects/index.ts +26 -0
  264. package/src/resources/beta/projects/projects.ts +121 -0
  265. package/src/resources/beta/projects/provider-key.ts +71 -0
  266. package/src/resources/beta/projects/user.ts +26 -0
  267. package/src/resources/beta/registry.ts +16 -0
  268. package/src/resources/beta/threads/index.ts +32 -0
  269. package/src/resources/beta/threads/messages.ts +100 -0
  270. package/src/resources/beta/threads/suggestions.ts +89 -0
  271. package/src/resources/beta/threads/threads.ts +379 -0
  272. package/src/resources/components.ts +105 -0
  273. package/src/resources/index.ts +12 -0
  274. package/src/resources/shared.ts +59 -0
  275. package/src/shims/node.ts +50 -0
  276. package/src/shims/web.ts +50 -0
  277. package/src/tsconfig.json +16 -0
  278. package/src/uploads.ts +255 -0
  279. package/src/version.ts +1 -0
  280. package/uploads.d.ts +75 -0
  281. package/uploads.d.ts.map +1 -0
  282. package/uploads.js +171 -0
  283. package/uploads.js.map +1 -0
  284. package/uploads.mjs +158 -0
  285. package/uploads.mjs.map +1 -0
  286. package/version.d.ts +2 -0
  287. package/version.d.ts.map +1 -0
  288. package/version.js +5 -0
  289. package/version.js.map +1 -0
  290. package/version.mjs +2 -0
  291. package/version.mjs.map +1 -0
package/index.js ADDED
@@ -0,0 +1,140 @@
1
+ "use strict";
2
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
3
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
4
+ if (k2 === undefined) k2 = k;
5
+ var desc = Object.getOwnPropertyDescriptor(m, k);
6
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
7
+ desc = { enumerable: true, get: function() { return m[k]; } };
8
+ }
9
+ Object.defineProperty(o, k2, desc);
10
+ }) : (function(o, m, k, k2) {
11
+ if (k2 === undefined) k2 = k;
12
+ o[k2] = m[k];
13
+ }));
14
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
15
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
16
+ }) : function(o, v) {
17
+ o["default"] = v;
18
+ });
19
+ var __importStar = (this && this.__importStar) || function (mod) {
20
+ if (mod && mod.__esModule) return mod;
21
+ var result = {};
22
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
23
+ __setModuleDefault(result, mod);
24
+ return result;
25
+ };
26
+ var _a;
27
+ Object.defineProperty(exports, "__esModule", { value: true });
28
+ exports.advanceStream = exports.hydrateStream = exports.generateStream = exports.UnprocessableEntityError = exports.PermissionDeniedError = exports.InternalServerError = exports.AuthenticationError = exports.BadRequestError = exports.RateLimitError = exports.ConflictError = exports.NotFoundError = exports.APIUserAbortError = exports.APIConnectionTimeoutError = exports.APIConnectionError = exports.APIError = exports.TamboAIError = exports.fileFromPath = exports.toFile = exports.TamboAI = void 0;
29
+ const Core = __importStar(require("./core.js"));
30
+ const Errors = __importStar(require("./error.js"));
31
+ const Pagination = __importStar(require("./pagination.js"));
32
+ const Uploads = __importStar(require("./uploads.js"));
33
+ const API = __importStar(require("./resources/index.js"));
34
+ const components_1 = require("./resources/components.js");
35
+ const beta_1 = require("./resources/beta/beta.js");
36
+ /**
37
+ * API Client for interfacing with the Tambo AI API.
38
+ */
39
+ class TamboAI extends Core.APIClient {
40
+ /**
41
+ * API Client for interfacing with the Tambo AI API.
42
+ *
43
+ * @param {string | null | undefined} [opts.apiKey=process.env['TAMBO_API_KEY'] ?? null]
44
+ * @param {string} [opts.baseURL=process.env['TAMBO_AI_BASE_URL']] - Override the default base URL for the API.
45
+ * @param {number} [opts.timeout=1 minute] - The maximum amount of time (in milliseconds) the client will wait for a response before timing out.
46
+ * @param {number} [opts.httpAgent] - An HTTP agent used to manage HTTP(s) connections.
47
+ * @param {Core.Fetch} [opts.fetch] - Specify a custom `fetch` function implementation.
48
+ * @param {number} [opts.maxRetries=0] - The maximum number of times the client will retry a request.
49
+ * @param {Core.Headers} opts.defaultHeaders - Default headers to include with every request to the API.
50
+ * @param {Core.DefaultQuery} opts.defaultQuery - Default query parameters to include with every request to the API.
51
+ */
52
+ constructor({ baseURL = Core.readEnv('TAMBO_AI_BASE_URL'), apiKey = Core.readEnv('TAMBO_API_KEY') ?? null, ...opts } = {}) {
53
+ const options = {
54
+ apiKey,
55
+ ...opts,
56
+ baseURL,
57
+ };
58
+ super({
59
+ baseURL: options.baseURL,
60
+ timeout: options.timeout ?? 60000 /* 1 minute */,
61
+ httpAgent: options.httpAgent,
62
+ maxRetries: options.maxRetries,
63
+ fetch: options.fetch,
64
+ });
65
+ this.components = new API.Components(this);
66
+ this.beta = new API.Beta(this);
67
+ this._options = options;
68
+ this.apiKey = apiKey;
69
+ }
70
+ defaultQuery() {
71
+ return this._options.defaultQuery;
72
+ }
73
+ defaultHeaders(opts) {
74
+ return {
75
+ ...super.defaultHeaders(opts),
76
+ ...this._options.defaultHeaders,
77
+ };
78
+ }
79
+ validateHeaders(headers, customHeaders) {
80
+ if (this.apiKey && headers['x-api-key']) {
81
+ return;
82
+ }
83
+ if (customHeaders['x-api-key'] === null) {
84
+ return;
85
+ }
86
+ throw new Error('Could not resolve authentication method. Expected the apiKey to be set. Or for the "x-api-key" headers to be explicitly omitted');
87
+ }
88
+ authHeaders(opts) {
89
+ if (this.apiKey == null) {
90
+ return {};
91
+ }
92
+ return { 'x-api-key': this.apiKey };
93
+ }
94
+ }
95
+ exports.TamboAI = TamboAI;
96
+ _a = TamboAI;
97
+ TamboAI.TamboAI = _a;
98
+ TamboAI.DEFAULT_TIMEOUT = 60000; // 1 minute
99
+ TamboAI.TamboAIError = Errors.TamboAIError;
100
+ TamboAI.APIError = Errors.APIError;
101
+ TamboAI.APIConnectionError = Errors.APIConnectionError;
102
+ TamboAI.APIConnectionTimeoutError = Errors.APIConnectionTimeoutError;
103
+ TamboAI.APIUserAbortError = Errors.APIUserAbortError;
104
+ TamboAI.NotFoundError = Errors.NotFoundError;
105
+ TamboAI.ConflictError = Errors.ConflictError;
106
+ TamboAI.RateLimitError = Errors.RateLimitError;
107
+ TamboAI.BadRequestError = Errors.BadRequestError;
108
+ TamboAI.AuthenticationError = Errors.AuthenticationError;
109
+ TamboAI.InternalServerError = Errors.InternalServerError;
110
+ TamboAI.PermissionDeniedError = Errors.PermissionDeniedError;
111
+ TamboAI.UnprocessableEntityError = Errors.UnprocessableEntityError;
112
+ TamboAI.toFile = Uploads.toFile;
113
+ TamboAI.fileFromPath = Uploads.fileFromPath;
114
+ TamboAI.Components = components_1.Components;
115
+ TamboAI.Beta = beta_1.Beta;
116
+ var uploads_1 = require("./uploads.js");
117
+ Object.defineProperty(exports, "toFile", { enumerable: true, get: function () { return uploads_1.toFile; } });
118
+ Object.defineProperty(exports, "fileFromPath", { enumerable: true, get: function () { return uploads_1.fileFromPath; } });
119
+ var error_1 = require("./error.js");
120
+ Object.defineProperty(exports, "TamboAIError", { enumerable: true, get: function () { return error_1.TamboAIError; } });
121
+ Object.defineProperty(exports, "APIError", { enumerable: true, get: function () { return error_1.APIError; } });
122
+ Object.defineProperty(exports, "APIConnectionError", { enumerable: true, get: function () { return error_1.APIConnectionError; } });
123
+ Object.defineProperty(exports, "APIConnectionTimeoutError", { enumerable: true, get: function () { return error_1.APIConnectionTimeoutError; } });
124
+ Object.defineProperty(exports, "APIUserAbortError", { enumerable: true, get: function () { return error_1.APIUserAbortError; } });
125
+ Object.defineProperty(exports, "NotFoundError", { enumerable: true, get: function () { return error_1.NotFoundError; } });
126
+ Object.defineProperty(exports, "ConflictError", { enumerable: true, get: function () { return error_1.ConflictError; } });
127
+ Object.defineProperty(exports, "RateLimitError", { enumerable: true, get: function () { return error_1.RateLimitError; } });
128
+ Object.defineProperty(exports, "BadRequestError", { enumerable: true, get: function () { return error_1.BadRequestError; } });
129
+ Object.defineProperty(exports, "AuthenticationError", { enumerable: true, get: function () { return error_1.AuthenticationError; } });
130
+ Object.defineProperty(exports, "InternalServerError", { enumerable: true, get: function () { return error_1.InternalServerError; } });
131
+ Object.defineProperty(exports, "PermissionDeniedError", { enumerable: true, get: function () { return error_1.PermissionDeniedError; } });
132
+ Object.defineProperty(exports, "UnprocessableEntityError", { enumerable: true, get: function () { return error_1.UnprocessableEntityError; } });
133
+ exports = module.exports = TamboAI;
134
+ exports.default = TamboAI;
135
+ var streaming_components_1 = require("./lib/streaming-components.js");
136
+ Object.defineProperty(exports, "generateStream", { enumerable: true, get: function () { return streaming_components_1.generateStream; } });
137
+ Object.defineProperty(exports, "hydrateStream", { enumerable: true, get: function () { return streaming_components_1.hydrateStream; } });
138
+ var advance_stream_1 = require("./lib/advance-stream.js");
139
+ Object.defineProperty(exports, "advanceStream", { enumerable: true, get: function () { return advance_stream_1.advanceStream; } });
140
+ //# sourceMappingURL=index.js.map
package/index.js.map ADDED
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["src/index.ts"],"names":[],"mappings":"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"}
package/index.mjs ADDED
@@ -0,0 +1,94 @@
1
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+ var _a;
3
+ import * as Core from "./core.mjs";
4
+ import * as Errors from "./error.mjs";
5
+ import * as Pagination from "./pagination.mjs";
6
+ import * as Uploads from "./uploads.mjs";
7
+ import * as API from "./resources/index.mjs";
8
+ import { Components, } from "./resources/components.mjs";
9
+ import { Beta } from "./resources/beta/beta.mjs";
10
+ /**
11
+ * API Client for interfacing with the Tambo AI API.
12
+ */
13
+ export class TamboAI extends Core.APIClient {
14
+ /**
15
+ * API Client for interfacing with the Tambo AI API.
16
+ *
17
+ * @param {string | null | undefined} [opts.apiKey=process.env['TAMBO_API_KEY'] ?? null]
18
+ * @param {string} [opts.baseURL=process.env['TAMBO_AI_BASE_URL']] - Override the default base URL for the API.
19
+ * @param {number} [opts.timeout=1 minute] - The maximum amount of time (in milliseconds) the client will wait for a response before timing out.
20
+ * @param {number} [opts.httpAgent] - An HTTP agent used to manage HTTP(s) connections.
21
+ * @param {Core.Fetch} [opts.fetch] - Specify a custom `fetch` function implementation.
22
+ * @param {number} [opts.maxRetries=0] - The maximum number of times the client will retry a request.
23
+ * @param {Core.Headers} opts.defaultHeaders - Default headers to include with every request to the API.
24
+ * @param {Core.DefaultQuery} opts.defaultQuery - Default query parameters to include with every request to the API.
25
+ */
26
+ constructor({ baseURL = Core.readEnv('TAMBO_AI_BASE_URL'), apiKey = Core.readEnv('TAMBO_API_KEY') ?? null, ...opts } = {}) {
27
+ const options = {
28
+ apiKey,
29
+ ...opts,
30
+ baseURL,
31
+ };
32
+ super({
33
+ baseURL: options.baseURL,
34
+ timeout: options.timeout ?? 60000 /* 1 minute */,
35
+ httpAgent: options.httpAgent,
36
+ maxRetries: options.maxRetries,
37
+ fetch: options.fetch,
38
+ });
39
+ this.components = new API.Components(this);
40
+ this.beta = new API.Beta(this);
41
+ this._options = options;
42
+ this.apiKey = apiKey;
43
+ }
44
+ defaultQuery() {
45
+ return this._options.defaultQuery;
46
+ }
47
+ defaultHeaders(opts) {
48
+ return {
49
+ ...super.defaultHeaders(opts),
50
+ ...this._options.defaultHeaders,
51
+ };
52
+ }
53
+ validateHeaders(headers, customHeaders) {
54
+ if (this.apiKey && headers['x-api-key']) {
55
+ return;
56
+ }
57
+ if (customHeaders['x-api-key'] === null) {
58
+ return;
59
+ }
60
+ throw new Error('Could not resolve authentication method. Expected the apiKey to be set. Or for the "x-api-key" headers to be explicitly omitted');
61
+ }
62
+ authHeaders(opts) {
63
+ if (this.apiKey == null) {
64
+ return {};
65
+ }
66
+ return { 'x-api-key': this.apiKey };
67
+ }
68
+ }
69
+ _a = TamboAI;
70
+ TamboAI.TamboAI = _a;
71
+ TamboAI.DEFAULT_TIMEOUT = 60000; // 1 minute
72
+ TamboAI.TamboAIError = Errors.TamboAIError;
73
+ TamboAI.APIError = Errors.APIError;
74
+ TamboAI.APIConnectionError = Errors.APIConnectionError;
75
+ TamboAI.APIConnectionTimeoutError = Errors.APIConnectionTimeoutError;
76
+ TamboAI.APIUserAbortError = Errors.APIUserAbortError;
77
+ TamboAI.NotFoundError = Errors.NotFoundError;
78
+ TamboAI.ConflictError = Errors.ConflictError;
79
+ TamboAI.RateLimitError = Errors.RateLimitError;
80
+ TamboAI.BadRequestError = Errors.BadRequestError;
81
+ TamboAI.AuthenticationError = Errors.AuthenticationError;
82
+ TamboAI.InternalServerError = Errors.InternalServerError;
83
+ TamboAI.PermissionDeniedError = Errors.PermissionDeniedError;
84
+ TamboAI.UnprocessableEntityError = Errors.UnprocessableEntityError;
85
+ TamboAI.toFile = Uploads.toFile;
86
+ TamboAI.fileFromPath = Uploads.fileFromPath;
87
+ TamboAI.Components = Components;
88
+ TamboAI.Beta = Beta;
89
+ export { toFile, fileFromPath } from "./uploads.mjs";
90
+ export { TamboAIError, APIError, APIConnectionError, APIConnectionTimeoutError, APIUserAbortError, NotFoundError, ConflictError, RateLimitError, BadRequestError, AuthenticationError, InternalServerError, PermissionDeniedError, UnprocessableEntityError, } from "./error.mjs";
91
+ export default TamboAI;
92
+ export { generateStream, hydrateStream } from "./lib/streaming-components.mjs";
93
+ export { advanceStream } from "./lib/advance-stream.mjs";
94
+ //# sourceMappingURL=index.mjs.map
package/index.mjs.map ADDED
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","sourceRoot":"","sources":["src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import TamboAI from "/...js";
2
+ import * as Core from "../core.js";
3
+ import { ThreadAdvanceParams, ThreadAdvanceResponse } from "../resources/beta.js";
4
+ export declare function advanceStream(client: TamboAI, body: ThreadAdvanceParams, threadId?: string, options?: Core.RequestOptions): Promise<AsyncIterable<ThreadAdvanceResponse>>;
5
+ //# sourceMappingURL=advance-stream.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"advance-stream.d.ts","sourceRoot":"","sources":["../src/lib/advance-stream.ts"],"names":[],"mappings":"AACA,OAAO,OAAO,MAAM,IAAI,CAAC;AACzB,OAAO,KAAK,IAAI,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAE/E,wBAAsB,aAAa,CACjC,MAAM,EAAE,OAAO,EACf,IAAI,EAAE,mBAAmB,EACzB,QAAQ,CAAC,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,IAAI,CAAC,cAAc,GAC5B,OAAO,CAAC,aAAa,CAAC,qBAAqB,CAAC,CAAC,CAe/C"}
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.advanceStream = void 0;
4
+ async function advanceStream(client, body, threadId, options) {
5
+ const responsePromise = client.post(`/threads${threadId ? `/${threadId}` : ''}/advancestream`, {
6
+ body,
7
+ ...options,
8
+ headers: {
9
+ ...options?.headers,
10
+ Accept: 'text/event-stream',
11
+ },
12
+ });
13
+ const response = await responsePromise.asResponse();
14
+ return handleStreamResponse(response);
15
+ }
16
+ exports.advanceStream = advanceStream;
17
+ async function* handleStreamResponse(response) {
18
+ const decoder = new TextDecoder();
19
+ for await (const chunk of response.body) {
20
+ const text = decoder.decode(chunk);
21
+ //handle server-combined events
22
+ const messages = text.split('\n').filter((msg) => msg.trim());
23
+ for (const msg of messages) {
24
+ if (msg === 'data: DONE') {
25
+ continue;
26
+ }
27
+ const jsonStr = msg.startsWith('data: ') ? msg.slice(6) : msg;
28
+ if (!jsonStr) {
29
+ continue;
30
+ }
31
+ yield JSON.parse(jsonStr);
32
+ }
33
+ }
34
+ }
35
+ //# sourceMappingURL=advance-stream.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"advance-stream.js","sourceRoot":"","sources":["../src/lib/advance-stream.ts"],"names":[],"mappings":";;;AAKO,KAAK,UAAU,aAAa,CACjC,MAAe,EACf,IAAyB,EACzB,QAAiB,EACjB,OAA6B;IAE7B,MAAM,eAAe,GAA2C,MAAM,CAAC,IAAI,CACzE,WAAW,QAAQ,CAAC,CAAC,CAAC,IAAI,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,gBAAgB,EACzD;QACE,IAAI;QACJ,GAAG,OAAO;QACV,OAAO,EAAE;YACP,GAAG,OAAO,EAAE,OAAO;YACnB,MAAM,EAAE,mBAAmB;SAC5B;KACF,CACF,CAAC;IACF,MAAM,QAAQ,GAAG,MAAM,eAAe,CAAC,UAAU,EAAE,CAAC;IAEpD,OAAO,oBAAoB,CAAwB,QAAQ,CAAC,CAAC;AAC/D,CAAC;AApBD,sCAoBC;AAED,KAAK,SAAS,CAAC,CAAC,oBAAoB,CAAI,QAAkB;IACxD,MAAM,OAAO,GAAG,IAAI,WAAW,EAAE,CAAC;IAClC,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,QAAQ,CAAC,IAAI,EAAE;QACvC,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,KAAmB,CAAC,CAAC;QAEjD,+BAA+B;QAC/B,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;QAE9D,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE;YAC1B,IAAI,GAAG,KAAK,YAAY,EAAE;gBACxB,SAAS;aACV;YACD,MAAM,OAAO,GAAG,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;YAC9D,IAAI,CAAC,OAAO,EAAE;gBACZ,SAAS;aACV;YACD,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAM,CAAC;SAChC;KACF;AACH,CAAC"}
@@ -0,0 +1,31 @@
1
+ export async function advanceStream(client, body, threadId, options) {
2
+ const responsePromise = client.post(`/threads${threadId ? `/${threadId}` : ''}/advancestream`, {
3
+ body,
4
+ ...options,
5
+ headers: {
6
+ ...options?.headers,
7
+ Accept: 'text/event-stream',
8
+ },
9
+ });
10
+ const response = await responsePromise.asResponse();
11
+ return handleStreamResponse(response);
12
+ }
13
+ async function* handleStreamResponse(response) {
14
+ const decoder = new TextDecoder();
15
+ for await (const chunk of response.body) {
16
+ const text = decoder.decode(chunk);
17
+ //handle server-combined events
18
+ const messages = text.split('\n').filter((msg) => msg.trim());
19
+ for (const msg of messages) {
20
+ if (msg === 'data: DONE') {
21
+ continue;
22
+ }
23
+ const jsonStr = msg.startsWith('data: ') ? msg.slice(6) : msg;
24
+ if (!jsonStr) {
25
+ continue;
26
+ }
27
+ yield JSON.parse(jsonStr);
28
+ }
29
+ }
30
+ }
31
+ //# sourceMappingURL=advance-stream.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"advance-stream.mjs","sourceRoot":"","sources":["../src/lib/advance-stream.ts"],"names":[],"mappings":"AAKA,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,MAAe,EACf,IAAyB,EACzB,QAAiB,EACjB,OAA6B;IAE7B,MAAM,eAAe,GAA2C,MAAM,CAAC,IAAI,CACzE,WAAW,QAAQ,CAAC,CAAC,CAAC,IAAI,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,gBAAgB,EACzD;QACE,IAAI;QACJ,GAAG,OAAO;QACV,OAAO,EAAE;YACP,GAAG,OAAO,EAAE,OAAO;YACnB,MAAM,EAAE,mBAAmB;SAC5B;KACF,CACF,CAAC;IACF,MAAM,QAAQ,GAAG,MAAM,eAAe,CAAC,UAAU,EAAE,CAAC;IAEpD,OAAO,oBAAoB,CAAwB,QAAQ,CAAC,CAAC;AAC/D,CAAC;AAED,KAAK,SAAS,CAAC,CAAC,oBAAoB,CAAI,QAAkB;IACxD,MAAM,OAAO,GAAG,IAAI,WAAW,EAAE,CAAC;IAClC,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,QAAQ,CAAC,IAAI,EAAE;QACvC,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,KAAmB,CAAC,CAAC;QAEjD,+BAA+B;QAC/B,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;QAE9D,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE;YAC1B,IAAI,GAAG,KAAK,YAAY,EAAE;gBACxB,SAAS;aACV;YACD,MAAM,OAAO,GAAG,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;YAC9D,IAAI,CAAC,OAAO,EAAE;gBACZ,SAAS;aACV;YACD,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAM,CAAC;SAChC;KACF;AACH,CAAC"}
@@ -0,0 +1,7 @@
1
+ import { type TamboAI } from "/...js";
2
+ import * as Core from "../core.js";
3
+ import { Components as BetaComponents } from "../resources/beta/components.js";
4
+ import { Components as BaseComponents } from "../resources/components.js";
5
+ export declare function generateStream(client: TamboAI, body: BaseComponents.ComponentGenerateParams | BetaComponents.ComponentGenerateParams, options?: Core.RequestOptions): Promise<AsyncIterable<BaseComponents.ComponentGenerateResponse | BetaComponents.ComponentGenerateResponse>>;
6
+ export declare function hydrateStream(client: TamboAI, body: BaseComponents.ComponentHydrateParams | BetaComponents.ComponentHydrateParams, options?: Core.RequestOptions): Promise<AsyncIterable<BaseComponents.ComponentHydrateResponse | BetaComponents.ComponentHydrateResponse>>;
7
+ //# sourceMappingURL=streaming-components.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"streaming-components.d.ts","sourceRoot":"","sources":["../src/lib/streaming-components.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,IAAI,CAAC;AAClC,OAAO,KAAK,IAAI,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,UAAU,IAAI,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC5E,OAAO,EAAE,UAAU,IAAI,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAEvE,wBAAsB,cAAc,CAClC,MAAM,EAAE,OAAO,EACf,IAAI,EAAE,cAAc,CAAC,uBAAuB,GAAG,cAAc,CAAC,uBAAuB,EACrF,OAAO,CAAC,EAAE,IAAI,CAAC,cAAc,GAC5B,OAAO,CACR,aAAa,CAAC,cAAc,CAAC,yBAAyB,GAAG,cAAc,CAAC,yBAAyB,CAAC,CACnG,CAgBA;AAED,wBAAsB,aAAa,CACjC,MAAM,EAAE,OAAO,EACf,IAAI,EAAE,cAAc,CAAC,sBAAsB,GAAG,cAAc,CAAC,sBAAsB,EACnF,OAAO,CAAC,EAAE,IAAI,CAAC,cAAc,GAC5B,OAAO,CAAC,aAAa,CAAC,cAAc,CAAC,wBAAwB,GAAG,cAAc,CAAC,wBAAwB,CAAC,CAAC,CAe3G"}
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.hydrateStream = exports.generateStream = void 0;
4
+ async function generateStream(client, body, options) {
5
+ const responsePromise = client.post('/components/generatestream', {
6
+ body,
7
+ ...options,
8
+ headers: {
9
+ ...options?.headers,
10
+ Accept: 'text/event-stream',
11
+ },
12
+ });
13
+ const response = await responsePromise.asResponse();
14
+ return handleStreamResponse(response);
15
+ }
16
+ exports.generateStream = generateStream;
17
+ async function hydrateStream(client, body, options) {
18
+ const responsePromise = client.post('/components/hydratestream', {
19
+ body,
20
+ ...options,
21
+ headers: {
22
+ ...options?.headers,
23
+ Accept: 'text/event-stream',
24
+ },
25
+ });
26
+ const response = await responsePromise.asResponse();
27
+ return handleStreamResponse(response);
28
+ }
29
+ exports.hydrateStream = hydrateStream;
30
+ async function* handleStreamResponse(response) {
31
+ const decoder = new TextDecoder();
32
+ for await (const chunk of response.body) {
33
+ const text = decoder.decode(chunk);
34
+ //handle server-combined events
35
+ const messages = text.split('\n').filter((msg) => msg.trim());
36
+ for (const msg of messages) {
37
+ if (msg === 'data: DONE') {
38
+ continue;
39
+ }
40
+ const jsonStr = msg.startsWith('data: ') ? msg.slice(6) : msg;
41
+ if (!jsonStr) {
42
+ continue;
43
+ }
44
+ yield JSON.parse(jsonStr);
45
+ }
46
+ }
47
+ }
48
+ //# sourceMappingURL=streaming-components.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"streaming-components.js","sourceRoot":"","sources":["../src/lib/streaming-components.ts"],"names":[],"mappings":";;;AAMO,KAAK,UAAU,cAAc,CAClC,MAAe,EACf,IAAqF,EACrF,OAA6B;IAI7B,MAAM,eAAe,GAEjB,MAAM,CAAC,IAAI,CAAC,4BAA4B,EAAE;QAC5C,IAAI;QACJ,GAAG,OAAO;QACV,OAAO,EAAE;YACP,GAAG,OAAO,EAAE,OAAO;YACnB,MAAM,EAAE,mBAAmB;SAC5B;KACF,CAAC,CAAC;IACH,MAAM,QAAQ,GAAG,MAAM,eAAe,CAAC,UAAU,EAAE,CAAC;IAEpD,OAAO,oBAAoB,CAEzB,QAAQ,CAAC,CAAC;AACd,CAAC;AAtBD,wCAsBC;AAEM,KAAK,UAAU,aAAa,CACjC,MAAe,EACf,IAAmF,EACnF,OAA6B;IAE7B,MAAM,eAAe,GAEjB,MAAM,CAAC,IAAI,CAAC,2BAA2B,EAAE;QAC3C,IAAI;QACJ,GAAG,OAAO;QACV,OAAO,EAAE;YACP,GAAG,OAAO,EAAE,OAAO;YACnB,MAAM,EAAE,mBAAmB;SAC5B;KACF,CAAC,CAAC;IACH,MAAM,QAAQ,GAAG,MAAM,eAAe,CAAC,UAAU,EAAE,CAAC;IACpD,OAAO,oBAAoB,CAEzB,QAAQ,CAAC,CAAC;AACd,CAAC;AAnBD,sCAmBC;AAED,KAAK,SAAS,CAAC,CAAC,oBAAoB,CAAI,QAAkB;IACxD,MAAM,OAAO,GAAG,IAAI,WAAW,EAAE,CAAC;IAClC,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,QAAQ,CAAC,IAAI,EAAE;QACvC,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,KAAmB,CAAC,CAAC;QAEjD,+BAA+B;QAC/B,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;QAE9D,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE;YAC1B,IAAI,GAAG,KAAK,YAAY,EAAE;gBACxB,SAAS;aACV;YACD,MAAM,OAAO,GAAG,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;YAC9D,IAAI,CAAC,OAAO,EAAE;gBACZ,SAAS;aACV;YACD,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAM,CAAC;SAChC;KACF;AACH,CAAC"}
@@ -0,0 +1,43 @@
1
+ export async function generateStream(client, body, options) {
2
+ const responsePromise = client.post('/components/generatestream', {
3
+ body,
4
+ ...options,
5
+ headers: {
6
+ ...options?.headers,
7
+ Accept: 'text/event-stream',
8
+ },
9
+ });
10
+ const response = await responsePromise.asResponse();
11
+ return handleStreamResponse(response);
12
+ }
13
+ export async function hydrateStream(client, body, options) {
14
+ const responsePromise = client.post('/components/hydratestream', {
15
+ body,
16
+ ...options,
17
+ headers: {
18
+ ...options?.headers,
19
+ Accept: 'text/event-stream',
20
+ },
21
+ });
22
+ const response = await responsePromise.asResponse();
23
+ return handleStreamResponse(response);
24
+ }
25
+ async function* handleStreamResponse(response) {
26
+ const decoder = new TextDecoder();
27
+ for await (const chunk of response.body) {
28
+ const text = decoder.decode(chunk);
29
+ //handle server-combined events
30
+ const messages = text.split('\n').filter((msg) => msg.trim());
31
+ for (const msg of messages) {
32
+ if (msg === 'data: DONE') {
33
+ continue;
34
+ }
35
+ const jsonStr = msg.startsWith('data: ') ? msg.slice(6) : msg;
36
+ if (!jsonStr) {
37
+ continue;
38
+ }
39
+ yield JSON.parse(jsonStr);
40
+ }
41
+ }
42
+ }
43
+ //# sourceMappingURL=streaming-components.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"streaming-components.mjs","sourceRoot":"","sources":["../src/lib/streaming-components.ts"],"names":[],"mappings":"AAMA,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,MAAe,EACf,IAAqF,EACrF,OAA6B;IAI7B,MAAM,eAAe,GAEjB,MAAM,CAAC,IAAI,CAAC,4BAA4B,EAAE;QAC5C,IAAI;QACJ,GAAG,OAAO;QACV,OAAO,EAAE;YACP,GAAG,OAAO,EAAE,OAAO;YACnB,MAAM,EAAE,mBAAmB;SAC5B;KACF,CAAC,CAAC;IACH,MAAM,QAAQ,GAAG,MAAM,eAAe,CAAC,UAAU,EAAE,CAAC;IAEpD,OAAO,oBAAoB,CAEzB,QAAQ,CAAC,CAAC;AACd,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,MAAe,EACf,IAAmF,EACnF,OAA6B;IAE7B,MAAM,eAAe,GAEjB,MAAM,CAAC,IAAI,CAAC,2BAA2B,EAAE;QAC3C,IAAI;QACJ,GAAG,OAAO;QACV,OAAO,EAAE;YACP,GAAG,OAAO,EAAE,OAAO;YACnB,MAAM,EAAE,mBAAmB;SAC5B;KACF,CAAC,CAAC;IACH,MAAM,QAAQ,GAAG,MAAM,eAAe,CAAC,UAAU,EAAE,CAAC;IACpD,OAAO,oBAAoB,CAEzB,QAAQ,CAAC,CAAC;AACd,CAAC;AAED,KAAK,SAAS,CAAC,CAAC,oBAAoB,CAAI,QAAkB;IACxD,MAAM,OAAO,GAAG,IAAI,WAAW,EAAE,CAAC;IAClC,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,QAAQ,CAAC,IAAI,EAAE;QACvC,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,KAAmB,CAAC,CAAC;QAEjD,+BAA+B;QAC/B,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;QAE9D,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE;YAC1B,IAAI,GAAG,KAAK,YAAY,EAAE;gBACxB,SAAS;aACV;YACD,MAAM,OAAO,GAAG,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;YAC9D,IAAI,CAAC,OAAO,EAAE;gBACZ,SAAS;aACV;YACD,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAM,CAAC;SAChC;KACF;AACH,CAAC"}
package/package.json ADDED
@@ -0,0 +1,122 @@
1
+ {
2
+ "name": "@tambo-ai/typescript-sdk",
3
+ "version": "0.31.0",
4
+ "description": "The official TypeScript library for the Tambo AI API",
5
+ "author": "Tambo AI <dev-feedback@tambo.co>",
6
+ "types": "./index.d.ts",
7
+ "main": "./index.js",
8
+ "type": "commonjs",
9
+ "repository": "github:tambo-ai/typescript-sdk",
10
+ "license": "Apache-2.0",
11
+ "packageManager": "yarn@1.22.22",
12
+ "files": [
13
+ "**/*"
14
+ ],
15
+ "private": false,
16
+ "scripts": {
17
+ "test": "./scripts/test",
18
+ "build": "./scripts/build",
19
+ "format": "prettier --write --cache --cache-strategy metadata . !dist",
20
+ "tsn": "ts-node -r tsconfig-paths/register",
21
+ "lint": "./scripts/lint",
22
+ "fix": "./scripts/format"
23
+ },
24
+ "dependencies": {
25
+ "abort-controller": "^3.0.0",
26
+ "agentkeepalive": "^4.2.1",
27
+ "form-data-encoder": "1.7.2",
28
+ "formdata-node": "^4.3.2",
29
+ "node-fetch": "^2.6.7"
30
+ },
31
+ "sideEffects": [
32
+ "./_shims/index.js",
33
+ "./_shims/index.mjs",
34
+ "./shims/node.js",
35
+ "./shims/node.mjs",
36
+ "./shims/web.js",
37
+ "./shims/web.mjs"
38
+ ],
39
+ "imports": {
40
+ "@tambo-ai/typescript-sdk": ".",
41
+ "@tambo-ai/typescript-sdk/*": "./src/*"
42
+ },
43
+ "exports": {
44
+ "./_shims/auto/*": {
45
+ "deno": {
46
+ "types": "./_shims/auto/*.d.ts",
47
+ "require": "./_shims/auto/*.js",
48
+ "default": "./_shims/auto/*.mjs"
49
+ },
50
+ "bun": {
51
+ "types": "./_shims/auto/*.d.ts",
52
+ "require": "./_shims/auto/*-bun.js",
53
+ "default": "./_shims/auto/*-bun.mjs"
54
+ },
55
+ "browser": {
56
+ "types": "./_shims/auto/*.d.ts",
57
+ "require": "./_shims/auto/*.js",
58
+ "default": "./_shims/auto/*.mjs"
59
+ },
60
+ "worker": {
61
+ "types": "./_shims/auto/*.d.ts",
62
+ "require": "./_shims/auto/*.js",
63
+ "default": "./_shims/auto/*.mjs"
64
+ },
65
+ "workerd": {
66
+ "types": "./_shims/auto/*.d.ts",
67
+ "require": "./_shims/auto/*.js",
68
+ "default": "./_shims/auto/*.mjs"
69
+ },
70
+ "node": {
71
+ "types": "./_shims/auto/*-node.d.ts",
72
+ "require": "./_shims/auto/*-node.js",
73
+ "default": "./_shims/auto/*-node.mjs"
74
+ },
75
+ "types": "./_shims/auto/*.d.ts",
76
+ "require": "./_shims/auto/*.js",
77
+ "default": "./_shims/auto/*.mjs"
78
+ },
79
+ ".": {
80
+ "require": {
81
+ "types": "./index.d.ts",
82
+ "default": "./index.js"
83
+ },
84
+ "types": "./index.d.mts",
85
+ "default": "./index.mjs"
86
+ },
87
+ "./*.mjs": {
88
+ "types": [
89
+ "./*.d.ts",
90
+ "./*/index.d.ts"
91
+ ],
92
+ "default": [
93
+ "./*.mjs",
94
+ "./*/index.mjs"
95
+ ]
96
+ },
97
+ "./*.js": {
98
+ "types": [
99
+ "./*.d.ts",
100
+ "./*/index.d.ts"
101
+ ],
102
+ "default": [
103
+ "./*.js",
104
+ "./*/index.js"
105
+ ]
106
+ },
107
+ "./*": {
108
+ "types": [
109
+ "./*.d.ts",
110
+ "./*/index.d.ts"
111
+ ],
112
+ "require": [
113
+ "./*.js",
114
+ "./*/index.js"
115
+ ],
116
+ "default": [
117
+ "./*.mjs",
118
+ "./*/index.mjs"
119
+ ]
120
+ }
121
+ }
122
+ }
@@ -0,0 +1,20 @@
1
+ import { AbstractPage, Response, APIClient, FinalRequestOptions, PageInfo } from "./core.js";
2
+ export interface OffsetAndLimitResponse<Item> {
3
+ items: Array<Item>;
4
+ total: number;
5
+ count: number;
6
+ }
7
+ export interface OffsetAndLimitParams {
8
+ offset?: number;
9
+ limit?: number;
10
+ }
11
+ export declare class OffsetAndLimit<Item> extends AbstractPage<Item> implements OffsetAndLimitResponse<Item> {
12
+ items: Array<Item>;
13
+ total: number;
14
+ count: number;
15
+ constructor(client: APIClient, response: Response, body: OffsetAndLimitResponse<Item>, options: FinalRequestOptions);
16
+ getPaginatedItems(): Item[];
17
+ nextPageParams(): Partial<OffsetAndLimitParams> | null;
18
+ nextPageInfo(): PageInfo | null;
19
+ }
20
+ //# sourceMappingURL=pagination.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pagination.d.ts","sourceRoot":"","sources":["src/pagination.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,SAAS,EAAE,mBAAmB,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAE1F,MAAM,WAAW,sBAAsB,CAAC,IAAI;IAC1C,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IAEnB,KAAK,EAAE,MAAM,CAAC;IAEd,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,oBAAoB;IACnC,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,qBAAa,cAAc,CAAC,IAAI,CAAE,SAAQ,YAAY,CAAC,IAAI,CAAE,YAAW,sBAAsB,CAAC,IAAI,CAAC;IAClG,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IAEnB,KAAK,EAAE,MAAM,CAAC;IAEd,KAAK,EAAE,MAAM,CAAC;gBAGZ,MAAM,EAAE,SAAS,EACjB,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAE,sBAAsB,CAAC,IAAI,CAAC,EAClC,OAAO,EAAE,mBAAmB;IAS9B,iBAAiB,IAAI,IAAI,EAAE;IAK3B,cAAc,IAAI,OAAO,CAAC,oBAAoB,CAAC,GAAG,IAAI;IAStD,YAAY,IAAI,QAAQ,GAAG,IAAI;CAoBhC"}
package/pagination.js ADDED
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.OffsetAndLimit = void 0;
5
+ const core_1 = require("./core.js");
6
+ class OffsetAndLimit extends core_1.AbstractPage {
7
+ constructor(client, response, body, options) {
8
+ super(client, response, body, options);
9
+ this.items = body.items || [];
10
+ this.total = body.total || 0;
11
+ this.count = body.count || 0;
12
+ }
13
+ getPaginatedItems() {
14
+ return this.items ?? [];
15
+ }
16
+ // @deprecated Please use `nextPageInfo()` instead
17
+ nextPageParams() {
18
+ const info = this.nextPageInfo();
19
+ if (!info)
20
+ return null;
21
+ if ('params' in info)
22
+ return info.params;
23
+ const params = Object.fromEntries(info.url.searchParams);
24
+ if (!Object.keys(params).length)
25
+ return null;
26
+ return params;
27
+ }
28
+ nextPageInfo() {
29
+ const offset = this.options.query.offset ?? 0;
30
+ if (!offset) {
31
+ return null;
32
+ }
33
+ const length = this.getPaginatedItems().length;
34
+ const currentCount = offset + length;
35
+ const totalCount = this.total;
36
+ if (!totalCount) {
37
+ return null;
38
+ }
39
+ if (currentCount < totalCount) {
40
+ return { params: { offset: currentCount } };
41
+ }
42
+ return null;
43
+ }
44
+ }
45
+ exports.OffsetAndLimit = OffsetAndLimit;
46
+ //# sourceMappingURL=pagination.js.map