@bubblelab/bubble-core 0.1.11 → 0.1.12

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 (138) hide show
  1. package/dist/bubble-bundle.d.ts +164 -121
  2. package/dist/bubble-factory.d.ts.map +1 -1
  3. package/dist/bubble-factory.js +5 -0
  4. package/dist/bubble-factory.js.map +1 -1
  5. package/dist/bubbles/service-bubble/ai-agent.d.ts +30 -30
  6. package/dist/bubbles/service-bubble/ai-agent.d.ts.map +1 -1
  7. package/dist/bubbles/service-bubble/ai-agent.js +3 -6
  8. package/dist/bubbles/service-bubble/ai-agent.js.map +1 -1
  9. package/dist/bubbles/service-bubble/apify/apify.d.ts +5 -5
  10. package/dist/bubbles/service-bubble/apify/apify.d.ts.map +1 -1
  11. package/dist/bubbles/service-bubble/apify/apify.js +20 -8
  12. package/dist/bubbles/service-bubble/apify/apify.js.map +1 -1
  13. package/dist/bubbles/service-bubble/browserbase/browserbase.d.ts +542 -0
  14. package/dist/bubbles/service-bubble/browserbase/browserbase.d.ts.map +1 -0
  15. package/dist/bubbles/service-bubble/browserbase/browserbase.integration.flow.d.ts +37 -0
  16. package/dist/bubbles/service-bubble/browserbase/browserbase.integration.flow.d.ts.map +1 -0
  17. package/dist/bubbles/service-bubble/browserbase/browserbase.integration.flow.js +203 -0
  18. package/dist/bubbles/service-bubble/browserbase/browserbase.integration.flow.js.map +1 -0
  19. package/dist/bubbles/service-bubble/browserbase/browserbase.js +593 -0
  20. package/dist/bubbles/service-bubble/browserbase/browserbase.js.map +1 -0
  21. package/dist/bubbles/service-bubble/browserbase/browserbase.schema.d.ts +518 -0
  22. package/dist/bubbles/service-bubble/browserbase/browserbase.schema.d.ts.map +1 -0
  23. package/dist/bubbles/service-bubble/browserbase/browserbase.schema.js +311 -0
  24. package/dist/bubbles/service-bubble/browserbase/browserbase.schema.js.map +1 -0
  25. package/dist/bubbles/service-bubble/browserbase/index.d.ts +3 -0
  26. package/dist/bubbles/service-bubble/browserbase/index.d.ts.map +1 -0
  27. package/dist/bubbles/service-bubble/browserbase/index.js +3 -0
  28. package/dist/bubbles/service-bubble/browserbase/index.js.map +1 -0
  29. package/dist/bubbles/service-bubble/crustdata/crustdata.d.ts +1358 -0
  30. package/dist/bubbles/service-bubble/crustdata/crustdata.d.ts.map +1 -0
  31. package/dist/bubbles/service-bubble/crustdata/crustdata.js +219 -0
  32. package/dist/bubbles/service-bubble/crustdata/crustdata.js.map +1 -0
  33. package/dist/bubbles/service-bubble/crustdata/crustdata.schema.d.ts +1604 -0
  34. package/dist/bubbles/service-bubble/crustdata/crustdata.schema.d.ts.map +1 -0
  35. package/dist/bubbles/service-bubble/crustdata/crustdata.schema.js +194 -0
  36. package/dist/bubbles/service-bubble/crustdata/crustdata.schema.js.map +1 -0
  37. package/dist/bubbles/service-bubble/crustdata/index.d.ts +3 -0
  38. package/dist/bubbles/service-bubble/crustdata/index.d.ts.map +1 -0
  39. package/dist/bubbles/service-bubble/crustdata/index.js +3 -0
  40. package/dist/bubbles/service-bubble/crustdata/index.js.map +1 -0
  41. package/dist/bubbles/service-bubble/firecrawl.d.ts +4 -4
  42. package/dist/bubbles/service-bubble/firecrawl.js +1 -1
  43. package/dist/bubbles/service-bubble/firecrawl.js.map +1 -1
  44. package/dist/bubbles/service-bubble/github.d.ts +0 -6
  45. package/dist/bubbles/service-bubble/github.d.ts.map +1 -1
  46. package/dist/bubbles/service-bubble/github.js +1 -7
  47. package/dist/bubbles/service-bubble/github.js.map +1 -1
  48. package/dist/bubbles/service-bubble/gmail.d.ts +84 -84
  49. package/dist/bubbles/service-bubble/google-drive.d.ts +32 -32
  50. package/dist/bubbles/service-bubble/http.d.ts +13 -1
  51. package/dist/bubbles/service-bubble/http.d.ts.map +1 -1
  52. package/dist/bubbles/service-bubble/http.integration.flow.d.ts +49 -0
  53. package/dist/bubbles/service-bubble/http.integration.flow.d.ts.map +1 -0
  54. package/dist/bubbles/service-bubble/http.integration.flow.js +425 -0
  55. package/dist/bubbles/service-bubble/http.integration.flow.js.map +1 -0
  56. package/dist/bubbles/service-bubble/http.js +40 -4
  57. package/dist/bubbles/service-bubble/http.js.map +1 -1
  58. package/dist/bubbles/service-bubble/resend.d.ts +4 -4
  59. package/dist/bubbles/service-bubble/slack.d.ts +978 -35
  60. package/dist/bubbles/service-bubble/slack.d.ts.map +1 -1
  61. package/dist/bubbles/service-bubble/slack.js +320 -26
  62. package/dist/bubbles/service-bubble/slack.js.map +1 -1
  63. package/dist/bubbles/service-bubble/storage.d.ts +1 -1
  64. package/dist/bubbles/service-bubble/storage.d.ts.map +1 -1
  65. package/dist/bubbles/service-bubble/storage.js +2 -2
  66. package/dist/bubbles/service-bubble/storage.js.map +1 -1
  67. package/dist/bubbles/tool-bubble/amazon-shopping-tool/amazon-shopping-tool.d.ts +494 -0
  68. package/dist/bubbles/tool-bubble/amazon-shopping-tool/amazon-shopping-tool.d.ts.map +1 -0
  69. package/dist/bubbles/tool-bubble/amazon-shopping-tool/amazon-shopping-tool.integration.flow.d.ts +31 -0
  70. package/dist/bubbles/tool-bubble/amazon-shopping-tool/amazon-shopping-tool.integration.flow.d.ts.map +1 -0
  71. package/dist/bubbles/tool-bubble/amazon-shopping-tool/amazon-shopping-tool.integration.flow.js +100 -0
  72. package/dist/bubbles/tool-bubble/amazon-shopping-tool/amazon-shopping-tool.integration.flow.js.map +1 -0
  73. package/dist/bubbles/tool-bubble/amazon-shopping-tool/amazon-shopping-tool.js +1301 -0
  74. package/dist/bubbles/tool-bubble/amazon-shopping-tool/amazon-shopping-tool.js.map +1 -0
  75. package/dist/bubbles/tool-bubble/amazon-shopping-tool/amazon-shopping-tool.schema.d.ts +473 -0
  76. package/dist/bubbles/tool-bubble/amazon-shopping-tool/amazon-shopping-tool.schema.d.ts.map +1 -0
  77. package/dist/bubbles/tool-bubble/amazon-shopping-tool/amazon-shopping-tool.schema.js +230 -0
  78. package/dist/bubbles/tool-bubble/amazon-shopping-tool/amazon-shopping-tool.schema.js.map +1 -0
  79. package/dist/bubbles/tool-bubble/amazon-shopping-tool/index.d.ts +3 -0
  80. package/dist/bubbles/tool-bubble/amazon-shopping-tool/index.d.ts.map +1 -0
  81. package/dist/bubbles/tool-bubble/amazon-shopping-tool/index.js +3 -0
  82. package/dist/bubbles/tool-bubble/amazon-shopping-tool/index.js.map +1 -0
  83. package/dist/bubbles/tool-bubble/bubbleflow-validation-tool.d.ts +8 -8
  84. package/dist/bubbles/tool-bubble/company-enrichment-tool.d.ts +740 -0
  85. package/dist/bubbles/tool-bubble/company-enrichment-tool.d.ts.map +1 -0
  86. package/dist/bubbles/tool-bubble/company-enrichment-tool.js +350 -0
  87. package/dist/bubbles/tool-bubble/company-enrichment-tool.js.map +1 -0
  88. package/dist/bubbles/tool-bubble/google-maps-tool.d.ts.map +1 -1
  89. package/dist/bubbles/tool-bubble/google-maps-tool.js +1 -0
  90. package/dist/bubbles/tool-bubble/google-maps-tool.js.map +1 -1
  91. package/dist/bubbles/tool-bubble/instagram-tool.d.ts.map +1 -1
  92. package/dist/bubbles/tool-bubble/instagram-tool.js +2 -0
  93. package/dist/bubbles/tool-bubble/instagram-tool.js.map +1 -1
  94. package/dist/bubbles/tool-bubble/linkedin-tool.d.ts +6 -6
  95. package/dist/bubbles/tool-bubble/linkedin-tool.d.ts.map +1 -1
  96. package/dist/bubbles/tool-bubble/linkedin-tool.js +6 -4
  97. package/dist/bubbles/tool-bubble/linkedin-tool.js.map +1 -1
  98. package/dist/bubbles/tool-bubble/research-agent-tool.d.ts.map +1 -1
  99. package/dist/bubbles/tool-bubble/research-agent-tool.js +6 -1
  100. package/dist/bubbles/tool-bubble/research-agent-tool.js.map +1 -1
  101. package/dist/bubbles/tool-bubble/tiktok-tool.d.ts +8 -8
  102. package/dist/bubbles/tool-bubble/twitter-tool.d.ts +10 -10
  103. package/dist/bubbles/tool-bubble/twitter-tool.d.ts.map +1 -1
  104. package/dist/bubbles/tool-bubble/twitter-tool.js +3 -0
  105. package/dist/bubbles/tool-bubble/twitter-tool.js.map +1 -1
  106. package/dist/bubbles/tool-bubble/web-scrape-tool.d.ts +6 -6
  107. package/dist/bubbles/tool-bubble/web-scrape-tool.d.ts.map +1 -1
  108. package/dist/bubbles/tool-bubble/web-scrape-tool.js +4 -1
  109. package/dist/bubbles/tool-bubble/web-scrape-tool.js.map +1 -1
  110. package/dist/bubbles/tool-bubble/youtube-tool.d.ts.map +1 -1
  111. package/dist/bubbles/tool-bubble/youtube-tool.js +3 -0
  112. package/dist/bubbles/tool-bubble/youtube-tool.js.map +1 -1
  113. package/dist/bubbles/workflow-bubble/pdf-form-operations.workflow.d.ts +24 -24
  114. package/dist/bubbles/workflow-bubble/slack-formatter-agent.d.ts +8 -8
  115. package/dist/bubbles.json +50 -15
  116. package/dist/index.d.ts +2 -0
  117. package/dist/index.d.ts.map +1 -1
  118. package/dist/index.js +2 -0
  119. package/dist/index.js.map +1 -1
  120. package/dist/logging/BubbleLogger.d.ts +10 -0
  121. package/dist/logging/BubbleLogger.d.ts.map +1 -1
  122. package/dist/logging/BubbleLogger.js +14 -0
  123. package/dist/logging/BubbleLogger.js.map +1 -1
  124. package/dist/logging/StreamingBubbleLogger.d.ts +8 -0
  125. package/dist/logging/StreamingBubbleLogger.d.ts.map +1 -1
  126. package/dist/logging/StreamingBubbleLogger.js +29 -0
  127. package/dist/logging/StreamingBubbleLogger.js.map +1 -1
  128. package/dist/types/available-tools.d.ts +1 -1
  129. package/dist/types/available-tools.d.ts.map +1 -1
  130. package/dist/types/available-tools.js +6 -0
  131. package/dist/types/available-tools.js.map +1 -1
  132. package/dist/types/base-bubble-class.d.ts.map +1 -1
  133. package/dist/types/base-bubble-class.js +0 -8
  134. package/dist/types/base-bubble-class.js.map +1 -1
  135. package/dist/types/tool-bubble-class.d.ts.map +1 -1
  136. package/dist/types/tool-bubble-class.js +58 -8
  137. package/dist/types/tool-bubble-class.js.map +1 -1
  138. package/package.json +3 -2
@@ -0,0 +1,425 @@
1
+ import { BubbleFlow, HttpBubble } from '@bubblelab/bubble-core';
2
+ export class HttpBubbleIntegrationTest extends BubbleFlow {
3
+ // Test basic GET request
4
+ async testBasicGet(baseUrl) {
5
+ const result = await new HttpBubble({
6
+ url: `${baseUrl}/get`,
7
+ method: 'GET',
8
+ }).action();
9
+ const data = result.data;
10
+ return {
11
+ operation: 'basic_get',
12
+ success: result.success && data?.status === 200,
13
+ details: `Status: ${data?.status}, Response time: ${data?.responseTime}ms`,
14
+ status: data?.status,
15
+ responseTime: data?.responseTime,
16
+ };
17
+ }
18
+ // Test GET with query parameters
19
+ async testGetWithParams(baseUrl) {
20
+ const result = await new HttpBubble({
21
+ url: `${baseUrl}/get?foo=bar&baz=123`,
22
+ method: 'GET',
23
+ }).action();
24
+ const data = result.data;
25
+ const json = data?.json;
26
+ const args = json?.args;
27
+ const hasParams = args?.foo === 'bar' && args?.baz === '123';
28
+ return {
29
+ operation: 'get_with_params',
30
+ success: result.success && hasParams,
31
+ details: `Query params preserved: ${hasParams}`,
32
+ status: data?.status,
33
+ responseTime: data?.responseTime,
34
+ };
35
+ }
36
+ // Test POST with JSON body
37
+ async testPostJson(baseUrl) {
38
+ const testData = {
39
+ name: 'Integration Test',
40
+ value: 42,
41
+ nested: { key: 'value' },
42
+ };
43
+ const result = await new HttpBubble({
44
+ url: `${baseUrl}/post`,
45
+ method: 'POST',
46
+ body: testData,
47
+ }).action();
48
+ const data = result.data;
49
+ const json = data?.json;
50
+ const echoedJson = json?.json;
51
+ const bodyMatches = echoedJson?.name === 'Integration Test' && echoedJson?.value === 42;
52
+ return {
53
+ operation: 'post_json',
54
+ success: result.success && bodyMatches,
55
+ details: `JSON body echoed correctly: ${bodyMatches}`,
56
+ status: data?.status,
57
+ responseTime: data?.responseTime,
58
+ };
59
+ }
60
+ // Test POST with string body
61
+ async testPostString(baseUrl) {
62
+ const rawData = 'raw string data for testing';
63
+ const result = await new HttpBubble({
64
+ url: `${baseUrl}/post`,
65
+ method: 'POST',
66
+ body: rawData,
67
+ headers: {
68
+ 'Content-Type': 'text/plain',
69
+ },
70
+ }).action();
71
+ const data = result.data;
72
+ const json = data?.json;
73
+ const echoedData = json?.data;
74
+ return {
75
+ operation: 'post_string',
76
+ success: result.success && echoedData === rawData,
77
+ details: `String body echoed: ${echoedData === rawData}`,
78
+ status: data?.status,
79
+ responseTime: data?.responseTime,
80
+ };
81
+ }
82
+ // Test PUT request
83
+ async testPut(baseUrl) {
84
+ const result = await new HttpBubble({
85
+ url: `${baseUrl}/put`,
86
+ method: 'PUT',
87
+ body: { updated: true },
88
+ }).action();
89
+ const data = result.data;
90
+ const json = data?.json;
91
+ const echoedJson = json?.json;
92
+ return {
93
+ operation: 'put_request',
94
+ success: result.success && echoedJson?.updated === true,
95
+ details: `PUT successful`,
96
+ status: data?.status,
97
+ responseTime: data?.responseTime,
98
+ };
99
+ }
100
+ // Test PATCH request
101
+ async testPatch(baseUrl) {
102
+ const result = await new HttpBubble({
103
+ url: `${baseUrl}/patch`,
104
+ method: 'PATCH',
105
+ body: { patched: 'field' },
106
+ }).action();
107
+ const data = result.data;
108
+ const json = data?.json;
109
+ const echoedJson = json?.json;
110
+ return {
111
+ operation: 'patch_request',
112
+ success: result.success && echoedJson?.patched === 'field',
113
+ details: `PATCH successful`,
114
+ status: data?.status,
115
+ responseTime: data?.responseTime,
116
+ };
117
+ }
118
+ // Test DELETE request
119
+ async testDelete(baseUrl) {
120
+ const result = await new HttpBubble({
121
+ url: `${baseUrl}/delete`,
122
+ method: 'DELETE',
123
+ }).action();
124
+ const data = result.data;
125
+ return {
126
+ operation: 'delete_request',
127
+ success: result.success && data?.status === 200,
128
+ details: `DELETE successful`,
129
+ status: data?.status,
130
+ responseTime: data?.responseTime,
131
+ };
132
+ }
133
+ // Test custom headers
134
+ async testCustomHeaders(baseUrl) {
135
+ const result = await new HttpBubble({
136
+ url: `${baseUrl}/headers`,
137
+ method: 'GET',
138
+ headers: {
139
+ 'X-Custom-Header': 'test-value',
140
+ 'X-Another-Header': 'another-value',
141
+ },
142
+ }).action();
143
+ const data = result.data;
144
+ const json = data?.json;
145
+ const headers = json?.headers;
146
+ const headersReceived = headers?.['X-Custom-Header'] === 'test-value';
147
+ return {
148
+ operation: 'custom_headers',
149
+ success: result.success && headersReceived,
150
+ details: `Custom headers received: ${headersReceived}`,
151
+ status: data?.status,
152
+ responseTime: data?.responseTime,
153
+ };
154
+ }
155
+ // Test Bearer auth type (credentials injected at runtime)
156
+ async testBearerAuth(baseUrl) {
157
+ const result = await new HttpBubble({
158
+ url: `${baseUrl}/headers`,
159
+ method: 'GET',
160
+ authType: 'bearer',
161
+ // credentials will be injected at runtime by BubbleInjector
162
+ }).action();
163
+ const data = result.data;
164
+ const json = data?.json;
165
+ const headers = json?.headers;
166
+ const authHeader = headers?.Authorization;
167
+ const hasBearerToken = authHeader?.startsWith('Bearer ') ?? false;
168
+ return {
169
+ operation: 'bearer_auth',
170
+ success: result.success && hasBearerToken,
171
+ details: `Bearer auth header present: ${hasBearerToken}`,
172
+ status: data?.status,
173
+ responseTime: data?.responseTime,
174
+ };
175
+ }
176
+ // Test Basic auth type (credentials injected at runtime)
177
+ async testBasicAuth(baseUrl) {
178
+ const result = await new HttpBubble({
179
+ url: `${baseUrl}/headers`,
180
+ method: 'GET',
181
+ authType: 'basic',
182
+ // credentials will be injected at runtime by BubbleInjector
183
+ }).action();
184
+ const data = result.data;
185
+ const json = data?.json;
186
+ const headers = json?.headers;
187
+ const authHeader = headers?.Authorization;
188
+ const hasBasicToken = authHeader?.startsWith('Basic ') ?? false;
189
+ return {
190
+ operation: 'basic_auth',
191
+ success: result.success && hasBasicToken,
192
+ details: `Basic auth header present: ${hasBasicToken}`,
193
+ status: data?.status,
194
+ responseTime: data?.responseTime,
195
+ };
196
+ }
197
+ // Test X-API-Key auth type (credentials injected at runtime)
198
+ async testApiKeyAuth(baseUrl) {
199
+ const result = await new HttpBubble({
200
+ url: `${baseUrl}/headers`,
201
+ method: 'GET',
202
+ authType: 'api-key',
203
+ // credentials will be injected at runtime by BubbleInjector
204
+ }).action();
205
+ const data = result.data;
206
+ const json = data?.json;
207
+ const headers = json?.headers;
208
+ const apiKeyHeader = headers?.['X-Api-Key'];
209
+ const hasApiKey = !!apiKeyHeader;
210
+ return {
211
+ operation: 'api_key_auth',
212
+ success: result.success && hasApiKey,
213
+ details: `X-API-Key header present: ${hasApiKey}`,
214
+ status: data?.status,
215
+ responseTime: data?.responseTime,
216
+ };
217
+ }
218
+ // Test Api-Key header auth type (credentials injected at runtime)
219
+ async testApiKeyHeaderAuth(baseUrl) {
220
+ const result = await new HttpBubble({
221
+ url: `${baseUrl}/headers`,
222
+ method: 'GET',
223
+ authType: 'api-key-header',
224
+ // credentials will be injected at runtime by BubbleInjector
225
+ }).action();
226
+ const data = result.data;
227
+ const json = data?.json;
228
+ const headers = json?.headers;
229
+ const apiKeyHeader = headers?.['Api-Key'];
230
+ const hasApiKey = !!apiKeyHeader;
231
+ return {
232
+ operation: 'api_key_header_auth',
233
+ success: result.success && hasApiKey,
234
+ details: `Api-Key header present: ${hasApiKey}`,
235
+ status: data?.status,
236
+ responseTime: data?.responseTime,
237
+ };
238
+ }
239
+ // Test custom auth header (credentials injected at runtime)
240
+ async testCustomAuth(baseUrl) {
241
+ const result = await new HttpBubble({
242
+ url: `${baseUrl}/headers`,
243
+ method: 'GET',
244
+ authType: 'custom',
245
+ authHeader: 'X-Custom-Auth-Token',
246
+ // credentials will be injected at runtime by BubbleInjector
247
+ }).action();
248
+ const data = result.data;
249
+ const json = data?.json;
250
+ const headers = json?.headers;
251
+ const customHeader = headers?.['X-Custom-Auth-Token'];
252
+ const hasCustomAuth = !!customHeader;
253
+ return {
254
+ operation: 'custom_auth_header',
255
+ success: result.success && hasCustomAuth,
256
+ details: `Custom auth header present: ${hasCustomAuth}`,
257
+ status: data?.status,
258
+ responseTime: data?.responseTime,
259
+ };
260
+ }
261
+ // Test dynamic API key in headers (manual injection via headers parameter)
262
+ async testDynamicApiKeyInHeaders(baseUrl, authToken) {
263
+ const result = await new HttpBubble({
264
+ url: `${baseUrl}/headers`,
265
+ method: 'GET',
266
+ headers: {
267
+ Authorization: authToken,
268
+ 'Content-Type': 'application/json',
269
+ Accept: 'application/json',
270
+ 'x-ms-version': '2021-04-10',
271
+ },
272
+ }).action();
273
+ const data = result.data;
274
+ const json = data?.json;
275
+ const headers = json?.headers;
276
+ const authReceived = headers?.Authorization === authToken;
277
+ return {
278
+ operation: 'dynamic_api_key_headers',
279
+ success: result.success && authReceived,
280
+ details: `Dynamic auth header received: ${authReceived}`,
281
+ status: data?.status,
282
+ responseTime: data?.responseTime,
283
+ };
284
+ }
285
+ // Test HTTP error handling (404)
286
+ async testErrorHandling404(baseUrl) {
287
+ const result = await new HttpBubble({
288
+ url: `${baseUrl}/status/404`,
289
+ method: 'GET',
290
+ }).action();
291
+ const data = result.data;
292
+ return {
293
+ operation: 'error_handling_404',
294
+ success: !data?.success && data?.status === 404,
295
+ details: `404 handled correctly: ${data?.status === 404}`,
296
+ status: data?.status,
297
+ responseTime: data?.responseTime,
298
+ };
299
+ }
300
+ // Test HTTP error handling (500)
301
+ async testErrorHandling500(baseUrl) {
302
+ const result = await new HttpBubble({
303
+ url: `${baseUrl}/status/500`,
304
+ method: 'GET',
305
+ }).action();
306
+ const data = result.data;
307
+ return {
308
+ operation: 'error_handling_500',
309
+ success: !data?.success && data?.status === 500,
310
+ details: `500 handled correctly: ${data?.status === 500}`,
311
+ status: data?.status,
312
+ responseTime: data?.responseTime,
313
+ };
314
+ }
315
+ // Test response with different content types
316
+ async testHtmlResponse(baseUrl) {
317
+ const result = await new HttpBubble({
318
+ url: `${baseUrl}/html`,
319
+ method: 'GET',
320
+ }).action();
321
+ const data = result.data;
322
+ const isHtml = data?.body?.includes('<html>') || data?.body?.includes('<!DOCTYPE');
323
+ return {
324
+ operation: 'html_response',
325
+ success: result.success && isHtml,
326
+ details: `HTML response received: ${isHtml}`,
327
+ status: data?.status,
328
+ responseTime: data?.responseTime,
329
+ };
330
+ }
331
+ // Test timeout behavior
332
+ async testTimeout(baseUrl) {
333
+ const result = await new HttpBubble({
334
+ url: `${baseUrl}/delay/1`, // 1 second delay
335
+ method: 'GET',
336
+ timeout: 5000, // 5 second timeout (should succeed)
337
+ }).action();
338
+ const data = result.data;
339
+ return {
340
+ operation: 'timeout_handling',
341
+ success: result.success,
342
+ details: `Request with delay completed: ${result.success}`,
343
+ status: data?.status,
344
+ responseTime: data?.responseTime,
345
+ };
346
+ }
347
+ // Test redirect handling
348
+ async testRedirectFollow(baseUrl) {
349
+ const result = await new HttpBubble({
350
+ url: `${baseUrl}/redirect/2`, // 2 redirects
351
+ method: 'GET',
352
+ followRedirects: true,
353
+ }).action();
354
+ const data = result.data;
355
+ return {
356
+ operation: 'redirect_follow',
357
+ success: result.success && data?.status === 200,
358
+ details: `Redirects followed: ${result.success}`,
359
+ status: data?.status,
360
+ responseTime: data?.responseTime,
361
+ };
362
+ }
363
+ // Test redirect handling disabled
364
+ async testRedirectManual(baseUrl) {
365
+ const result = await new HttpBubble({
366
+ url: `${baseUrl}/redirect/1`,
367
+ method: 'GET',
368
+ followRedirects: false,
369
+ }).action();
370
+ const data = result.data;
371
+ const status = data?.status ?? 0;
372
+ // When followRedirects is false, we should get a 3xx status
373
+ const isRedirect = status >= 300 && status < 400;
374
+ return {
375
+ operation: 'redirect_manual',
376
+ success: isRedirect || status === 200, // Some implementations may still follow
377
+ details: `Manual redirect handling: status ${status}`,
378
+ status: data?.status,
379
+ responseTime: data?.responseTime,
380
+ };
381
+ }
382
+ async handle(payload) {
383
+ const baseUrl = payload.baseUrl || 'https://httpbin.org';
384
+ const results = [];
385
+ // Basic HTTP method tests
386
+ results.push(await this.testBasicGet(baseUrl));
387
+ results.push(await this.testGetWithParams(baseUrl));
388
+ results.push(await this.testPostJson(baseUrl));
389
+ results.push(await this.testPostString(baseUrl));
390
+ results.push(await this.testPut(baseUrl));
391
+ results.push(await this.testPatch(baseUrl));
392
+ results.push(await this.testDelete(baseUrl));
393
+ results.push(await this.testCustomHeaders(baseUrl));
394
+ // Auth type tests (credentials injected at runtime)
395
+ // Note: These tests will only pass when CUSTOM_AUTH_KEY credential is configured
396
+ results.push(await this.testBearerAuth(baseUrl));
397
+ results.push(await this.testBasicAuth(baseUrl));
398
+ results.push(await this.testApiKeyAuth(baseUrl));
399
+ results.push(await this.testApiKeyHeaderAuth(baseUrl));
400
+ results.push(await this.testCustomAuth(baseUrl));
401
+ // Dynamic API key in headers (manual approach)
402
+ results.push(await this.testDynamicApiKeyInHeaders(baseUrl, 'Bearer test-token-12345'));
403
+ // Error handling tests
404
+ results.push(await this.testErrorHandling404(baseUrl));
405
+ results.push(await this.testErrorHandling500(baseUrl));
406
+ // Response type tests
407
+ results.push(await this.testHtmlResponse(baseUrl));
408
+ // Timeout and redirect tests
409
+ results.push(await this.testTimeout(baseUrl));
410
+ results.push(await this.testRedirectFollow(baseUrl));
411
+ results.push(await this.testRedirectManual(baseUrl));
412
+ // Calculate summary
413
+ const passed = results.filter((r) => r.success).length;
414
+ const failed = results.filter((r) => !r.success).length;
415
+ return {
416
+ testResults: results,
417
+ summary: {
418
+ total: results.length,
419
+ passed,
420
+ failed,
421
+ },
422
+ };
423
+ }
424
+ }
425
+ //# sourceMappingURL=http.integration.flow.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"http.integration.flow.js","sourceRoot":"","sources":["../../../src/bubbles/service-bubble/http.integration.flow.ts"],"names":[],"mappings":"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"}
@@ -36,6 +36,14 @@ const HttpParamsSchema = z.object({
36
36
  .boolean()
37
37
  .default(true)
38
38
  .describe('Whether to follow HTTP redirects (default: true)'),
39
+ authType: z
40
+ .enum(['none', 'bearer', 'basic', 'api-key', 'api-key-header', 'custom'])
41
+ .default('none')
42
+ .describe('Authentication type: none (default), bearer (Authorization: Bearer), basic (Authorization: Basic), api-key (X-API-Key), api-key-header (Api-Key), custom (user-specified header)'),
43
+ authHeader: z
44
+ .string()
45
+ .optional()
46
+ .describe('Custom header name when authType is "custom" (e.g., "X-Custom-Auth")'),
39
47
  credentials: z
40
48
  .record(z.nativeEnum(CredentialType), z.string())
41
49
  .optional()
@@ -57,7 +65,7 @@ const HttpResultSchema = z.object({
57
65
  });
58
66
  export class HttpBubble extends ServiceBubble {
59
67
  static service = 'nodex-core';
60
- static authType = 'none';
68
+ static authType = 'apikey';
61
69
  static bubbleName = 'http';
62
70
  static type = 'service';
63
71
  static schema = HttpParamsSchema;
@@ -90,8 +98,11 @@ export class HttpBubble extends ServiceBubble {
90
98
  super(params, context);
91
99
  }
92
100
  chooseCredential() {
93
- // HTTP bubble can work without credentials for public APIs
94
- return undefined;
101
+ const credentials = this.params.credentials;
102
+ if (!credentials || typeof credentials !== 'object') {
103
+ return undefined;
104
+ }
105
+ return credentials[CredentialType.CUSTOM_AUTH_KEY];
95
106
  }
96
107
  async testCredential() {
97
108
  // HTTP bubble doesn't require specific credentials to test
@@ -100,7 +111,7 @@ export class HttpBubble extends ServiceBubble {
100
111
  }
101
112
  async performAction(context) {
102
113
  void context; // Context available but not currently used
103
- const { url, method, headers, body, timeout, followRedirects } = this.params;
114
+ const { url, method, headers, body, timeout, followRedirects, authType, authHeader, } = this.params;
104
115
  const startTime = Date.now();
105
116
  try {
106
117
  console.log(`[HttpBubble] Making ${method} request to ${url}`);
@@ -109,11 +120,36 @@ export class HttpBubble extends ServiceBubble {
109
120
  const timeoutId = setTimeout(() => {
110
121
  abortController.abort();
111
122
  }, timeout);
123
+ // Build auth headers based on authType
124
+ const authHeaders = {};
125
+ const credential = this.chooseCredential();
126
+ if (credential && authType !== 'none') {
127
+ switch (authType) {
128
+ case 'bearer':
129
+ authHeaders['Authorization'] = `Bearer ${credential}`;
130
+ break;
131
+ case 'basic':
132
+ authHeaders['Authorization'] = `Basic ${credential}`;
133
+ break;
134
+ case 'api-key':
135
+ authHeaders['X-API-Key'] = credential;
136
+ break;
137
+ case 'api-key-header':
138
+ authHeaders['Api-Key'] = credential;
139
+ break;
140
+ case 'custom':
141
+ if (authHeader) {
142
+ authHeaders[authHeader] = credential;
143
+ }
144
+ break;
145
+ }
146
+ }
112
147
  // Prepare request options
113
148
  const requestOptions = {
114
149
  method,
115
150
  headers: {
116
151
  'User-Agent': 'NodeX-HttpBubble/1.0',
152
+ ...authHeaders,
117
153
  ...headers,
118
154
  },
119
155
  redirect: followRedirects ? 'follow' : 'manual',
@@ -1 +1 @@
1
- {"version":3,"file":"http.js","sourceRoot":"","sources":["../../../src/bubbles/service-bubble/http.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AAEpE,OAAO,EAAE,cAAc,EAAmB,MAAM,2BAA2B,CAAC;AAE5E,oBAAoB;AACpB,MAAM,gBAAgB,GAAG,CAAC,CAAC,IAAI,CAAC;IAC9B,KAAK;IACL,MAAM;IACN,KAAK;IACL,OAAO;IACP,QAAQ;IACR,MAAM;IACN,SAAS;CACV,CAAC,CAAC;AAEH,mDAAmD;AACnD,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC;IAChC,GAAG,EAAE,CAAC;SACH,MAAM,EAAE;SACR,GAAG,CAAC,qBAAqB,CAAC;SAC1B,QAAQ,CAAC,qCAAqC,CAAC;IAClD,MAAM,EAAE,gBAAgB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,CAC9C,mCAAmC,CACpC;IACD,OAAO,EAAE,CAAC;SACP,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;SAClB,QAAQ,EAAE;SACV,QAAQ,CAAC,wCAAwC,CAAC;IACrD,IAAI,EAAE,CAAC;SACJ,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;SAC1C,QAAQ,EAAE;SACV,QAAQ,CAAC,sCAAsC,CAAC;IACnD,OAAO,EAAE,CAAC;SACP,MAAM,EAAE;SACR,GAAG,CAAC,IAAI,CAAC;SACT,GAAG,CAAC,MAAM,CAAC;SACX,OAAO,CAAC,KAAK,CAAC;SACd,QAAQ,CAAC,+DAA+D,CAAC;IAC5E,eAAe,EAAE,CAAC;SACf,OAAO,EAAE;SACT,OAAO,CAAC,IAAI,CAAC;SACb,QAAQ,CAAC,kDAAkD,CAAC;IAC/D,WAAW,EAAE,CAAC;SACX,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;SAChD,QAAQ,EAAE;SACV,QAAQ,CAAC,+DAA+D,CAAC;CAC7E,CAAC,CAAC;AAKH,0CAA0C;AAC1C,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC;IAChC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,kBAAkB,CAAC;IAC/C,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,kBAAkB,CAAC;IACnD,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,kBAAkB,CAAC;IAC1D,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,yBAAyB,CAAC;IACpD,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sCAAsC,CAAC;IAC7E,OAAO,EAAE,CAAC;SACP,OAAO,EAAE;SACT,QAAQ,CAAC,4DAA4D,CAAC;IACzE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,iCAAiC,CAAC;IAC7D,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,+BAA+B,CAAC;IAClE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wBAAwB,CAAC;CACpD,CAAC,CAAC;AAIH,MAAM,OAAO,UAAW,SAAQ,aAAqC;IACnE,MAAM,CAAU,OAAO,GAAG,YAAY,CAAC;IACvC,MAAM,CAAU,QAAQ,GAAG,MAAe,CAAC;IAC3C,MAAM,CAAU,UAAU,GAAe,MAAM,CAAC;IAChD,MAAM,CAAU,IAAI,GAAG,SAAkB,CAAC;IAC1C,MAAM,CAAU,MAAM,GAAG,gBAAgB,CAAC;IAC1C,MAAM,CAAU,YAAY,GAAG,gBAAgB,CAAC;IAChD,MAAM,CAAU,gBAAgB,GAC9B,mDAAmD,CAAC;IACtD,MAAM,CAAU,eAAe,GAAG;;;;;;;;;;;;;;;;;;GAkBjC,CAAC;IACF,MAAM,CAAU,KAAK,GAAG,OAAO,CAAC;IAEhC,YACE,SAA0B;QACxB,GAAG,EAAE,yBAAyB;QAC9B,MAAM,EAAE,KAAK;KACd,EACD,OAAuB;QAEvB,KAAK,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACzB,CAAC;IAES,gBAAgB;QACxB,2DAA2D;QAC3D,OAAO,SAAS,CAAC;IACnB,CAAC;IAEM,KAAK,CAAC,cAAc;QACzB,2DAA2D;QAC3D,sDAAsD;QACtD,OAAO,IAAI,CAAC;IACd,CAAC;IAES,KAAK,CAAC,aAAa,CAAC,OAAuB;QACnD,KAAK,OAAO,CAAC,CAAC,2CAA2C;QAEzD,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,eAAe,EAAE,GAC5D,IAAI,CAAC,MAAM,CAAC;QACd,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAE7B,IAAI,CAAC;YACH,OAAO,CAAC,GAAG,CAAC,uBAAuB,MAAM,eAAe,GAAG,EAAE,CAAC,CAAC;YAE/D,sCAAsC;YACtC,MAAM,eAAe,GAAG,IAAI,eAAe,EAAE,CAAC;YAC9C,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE;gBAChC,eAAe,CAAC,KAAK,EAAE,CAAC;YAC1B,CAAC,EAAE,OAAO,CAAC,CAAC;YAEZ,0BAA0B;YAC1B,MAAM,cAAc,GAAgB;gBAClC,MAAM;gBACN,OAAO,EAAE;oBACP,YAAY,EAAE,sBAAsB;oBACpC,GAAG,OAAO;iBACX;gBACD,QAAQ,EAAE,eAAe,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ;gBAC/C,MAAM,EAAE,eAAe,CAAC,MAAM;aAC/B,CAAC;YAEF,+BAA+B;YAC/B,IAAI,IAAI,IAAI,MAAM,KAAK,KAAK,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;gBAClD,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;oBAC7B,cAAc,CAAC,IAAI,GAAG,IAAI,CAAC;gBAC7B,CAAC;qBAAM,CAAC;oBACN,cAAc,CAAC,OAAO,GAAG;wBACvB,cAAc,EAAE,kBAAkB;wBAClC,GAAG,cAAc,CAAC,OAAO;qBAC1B,CAAC;oBACF,cAAc,CAAC,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;gBAC7C,CAAC;YACH,CAAC;YAED,mBAAmB;YACnB,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;YAClD,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,qCAAqC;YAC9D,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;YAE5C,qBAAqB;YACrB,MAAM,YAAY,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;YAC3C,MAAM,YAAY,GAAG,IAAI,IAAI,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC;YAEnD,uBAAuB;YACvB,IAAI,YAAqB,CAAC;YAC1B,IAAI,CAAC;gBACH,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;YAC1C,CAAC;YAAC,MAAM,CAAC;gBACP,wBAAwB;gBACxB,YAAY,GAAG,SAAS,CAAC;YAC3B,CAAC;YAED,kCAAkC;YAClC,MAAM,eAAe,GAA2B,EAAE,CAAC;YACnD,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,KAAa,EAAE,GAAW,EAAE,EAAE;gBACtD,eAAe,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;YAC/B,CAAC,CAAC,CAAC;YAEH,MAAM,MAAM,GAAe;gBACzB,MAAM,EAAE,QAAQ,CAAC,MAAM;gBACvB,UAAU,EAAE,QAAQ,CAAC,UAAU;gBAC/B,OAAO,EAAE,eAAe;gBACxB,IAAI,EAAE,YAAY;gBAClB,IAAI,EAAE,YAAY;gBAClB,OAAO,EAAE,QAAQ,CAAC,EAAE;gBACpB,KAAK,EAAE,QAAQ,CAAC,EAAE;oBAChB,CAAC,CAAC,EAAE;oBACJ,CAAC,CAAC,QAAQ,QAAQ,CAAC,MAAM,KAAK,QAAQ,CAAC,UAAU,EAAE;gBACrD,YAAY;gBACZ,IAAI,EAAE,YAAY;aACnB,CAAC;YAEF,OAAO,CAAC,GAAG,CACT,mCAAmC,QAAQ,CAAC,MAAM,KAAK,YAAY,KAAK,CACzE,CAAC;YACF,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;YAC5C,MAAM,YAAY,GAChB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;YAE3D,OAAO,CAAC,KAAK,CAAC,8BAA8B,EAAE,YAAY,CAAC,CAAC;YAE5D,OAAO;gBACL,MAAM,EAAE,CAAC;gBACT,UAAU,EAAE,gBAAgB;gBAC5B,OAAO,EAAE,EAAE;gBACX,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,YAAY;gBACnB,YAAY;gBACZ,IAAI,EAAE,CAAC;aACR,CAAC;QACJ,CAAC;IACH,CAAC"}
1
+ {"version":3,"file":"http.js","sourceRoot":"","sources":["../../../src/bubbles/service-bubble/http.ts"],"names":[],"mappings":"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"}
@@ -47,12 +47,12 @@ declare const ResendParamsSchema: z.ZodDiscriminatedUnion<"operation", [z.ZodObj
47
47
  to: string | string[];
48
48
  subject: string;
49
49
  credentials?: Partial<Record<CredentialType, string>> | undefined;
50
- text?: string | undefined;
51
50
  tags?: {
52
51
  value: string;
53
52
  name: string;
54
53
  }[] | undefined;
55
54
  headers?: Record<string, string> | undefined;
55
+ text?: string | undefined;
56
56
  attachments?: {
57
57
  content: string | Buffer<ArrayBufferLike>;
58
58
  filename: string;
@@ -69,12 +69,12 @@ declare const ResendParamsSchema: z.ZodDiscriminatedUnion<"operation", [z.ZodObj
69
69
  to: string | string[];
70
70
  subject: string;
71
71
  credentials?: Partial<Record<CredentialType, string>> | undefined;
72
- text?: string | undefined;
73
72
  tags?: {
74
73
  value: string;
75
74
  name: string;
76
75
  }[] | undefined;
77
76
  headers?: Record<string, string> | undefined;
77
+ text?: string | undefined;
78
78
  attachments?: {
79
79
  content: string | Buffer<ArrayBufferLike>;
80
80
  filename: string;
@@ -194,12 +194,12 @@ export declare class ResendBubble<T extends ResendParams = ResendParams> extends
194
194
  to: string | string[];
195
195
  subject: string;
196
196
  credentials?: Partial<Record<CredentialType, string>> | undefined;
197
- text?: string | undefined;
198
197
  tags?: {
199
198
  value: string;
200
199
  name: string;
201
200
  }[] | undefined;
202
201
  headers?: Record<string, string> | undefined;
202
+ text?: string | undefined;
203
203
  attachments?: {
204
204
  content: string | Buffer<ArrayBufferLike>;
205
205
  filename: string;
@@ -216,12 +216,12 @@ export declare class ResendBubble<T extends ResendParams = ResendParams> extends
216
216
  to: string | string[];
217
217
  subject: string;
218
218
  credentials?: Partial<Record<CredentialType, string>> | undefined;
219
- text?: string | undefined;
220
219
  tags?: {
221
220
  value: string;
222
221
  name: string;
223
222
  }[] | undefined;
224
223
  headers?: Record<string, string> | undefined;
224
+ text?: string | undefined;
225
225
  attachments?: {
226
226
  content: string | Buffer<ArrayBufferLike>;
227
227
  filename: string;