@bubblelab/bubble-core 0.1.8 → 0.1.10

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 (224) hide show
  1. package/dist/bubble-bundle.d.ts +333 -1438
  2. package/dist/bubble-factory.d.ts.map +1 -1
  3. package/dist/bubble-factory.js +64 -28
  4. package/dist/bubble-factory.js.map +1 -1
  5. package/dist/bubble-flow/bubble-flow-class.d.ts +17 -1
  6. package/dist/bubble-flow/bubble-flow-class.d.ts.map +1 -1
  7. package/dist/bubble-flow/bubble-flow-class.js +16 -0
  8. package/dist/bubble-flow/bubble-flow-class.js.map +1 -1
  9. package/dist/bubble-flow/sample/data-analyst-flow.d.ts +1 -1
  10. package/dist/bubble-flow/sample/data-analyst-flow.d.ts.map +1 -1
  11. package/dist/bubble-flow/sample/error-ts.d.ts +1 -1
  12. package/dist/bubble-flow/sample/error-ts.d.ts.map +1 -1
  13. package/dist/bubble-flow/sample/sanitytest.d.ts +1 -1
  14. package/dist/bubble-flow/sample/sanitytest.d.ts.map +1 -1
  15. package/dist/bubble-flow/sample/simple-webhook-2.d.ts +1 -1
  16. package/dist/bubble-flow/sample/simple-webhook-2.d.ts.map +1 -1
  17. package/dist/bubble-flow/sample/simple-webhook.d.ts +1 -1
  18. package/dist/bubble-flow/sample/simple-webhook.d.ts.map +1 -1
  19. package/dist/bubble-flow/sample/simplified-data-analysis.flow.d.ts +1 -1
  20. package/dist/bubble-flow/sample/simplified-data-analysis.flow.d.ts.map +1 -1
  21. package/dist/bubble-flow/sample/slack-v0.1.d.ts +1 -1
  22. package/dist/bubble-flow/sample/slack-v0.1.d.ts.map +1 -1
  23. package/dist/bubble-flow/sample/slackagenttest.d.ts +1 -1
  24. package/dist/bubble-flow/sample/slackagenttest.d.ts.map +1 -1
  25. package/dist/bubbles/service-bubble/ai-agent.d.ts +115 -97
  26. package/dist/bubbles/service-bubble/ai-agent.d.ts.map +1 -1
  27. package/dist/bubbles/service-bubble/ai-agent.js +276 -96
  28. package/dist/bubbles/service-bubble/ai-agent.js.map +1 -1
  29. package/dist/bubbles/service-bubble/apify/actors/instagram-hashtag-scraper.d.ts +805 -0
  30. package/dist/bubbles/service-bubble/apify/actors/instagram-hashtag-scraper.d.ts.map +1 -0
  31. package/dist/bubbles/service-bubble/apify/actors/instagram-hashtag-scraper.js +131 -0
  32. package/dist/bubbles/service-bubble/apify/actors/instagram-hashtag-scraper.js.map +1 -0
  33. package/dist/bubbles/service-bubble/apify/actors/instagram-scraper.d.ts +485 -0
  34. package/dist/bubbles/service-bubble/apify/actors/instagram-scraper.d.ts.map +1 -0
  35. package/dist/bubbles/service-bubble/apify/actors/instagram-scraper.js +176 -0
  36. package/dist/bubbles/service-bubble/apify/actors/instagram-scraper.js.map +1 -0
  37. package/dist/bubbles/service-bubble/apify/actors/linkedin-posts-search.d.ts +302 -0
  38. package/dist/bubbles/service-bubble/apify/actors/linkedin-posts-search.d.ts.map +1 -0
  39. package/dist/bubbles/service-bubble/apify/actors/linkedin-posts-search.js +138 -0
  40. package/dist/bubbles/service-bubble/apify/actors/linkedin-posts-search.js.map +1 -0
  41. package/dist/bubbles/service-bubble/apify/actors/linkedin-profile-posts.d.ts +642 -0
  42. package/dist/bubbles/service-bubble/apify/actors/linkedin-profile-posts.d.ts.map +1 -0
  43. package/dist/bubbles/service-bubble/apify/actors/linkedin-profile-posts.js +123 -0
  44. package/dist/bubbles/service-bubble/apify/actors/linkedin-profile-posts.js.map +1 -0
  45. package/dist/bubbles/service-bubble/apify/actors/youtube-scraper.d.ts +184 -0
  46. package/dist/bubbles/service-bubble/apify/actors/youtube-scraper.d.ts.map +1 -0
  47. package/dist/bubbles/service-bubble/apify/actors/youtube-scraper.js +145 -0
  48. package/dist/bubbles/service-bubble/apify/actors/youtube-scraper.js.map +1 -0
  49. package/dist/bubbles/service-bubble/apify/actors/youtube-transcript-scraper.d.ts +52 -0
  50. package/dist/bubbles/service-bubble/apify/actors/youtube-transcript-scraper.d.ts.map +1 -0
  51. package/dist/bubbles/service-bubble/apify/actors/youtube-transcript-scraper.js +29 -0
  52. package/dist/bubbles/service-bubble/apify/actors/youtube-transcript-scraper.js.map +1 -0
  53. package/dist/bubbles/service-bubble/apify/apify-scraper.schema.d.ts +1999 -0
  54. package/dist/bubbles/service-bubble/apify/apify-scraper.schema.d.ts.map +1 -0
  55. package/dist/bubbles/service-bubble/apify/apify-scraper.schema.js +54 -0
  56. package/dist/bubbles/service-bubble/apify/apify-scraper.schema.js.map +1 -0
  57. package/dist/bubbles/service-bubble/apify/apify.d.ts +143 -0
  58. package/dist/bubbles/service-bubble/apify/apify.d.ts.map +1 -0
  59. package/dist/bubbles/service-bubble/apify/apify.js +276 -0
  60. package/dist/bubbles/service-bubble/apify/apify.js.map +1 -0
  61. package/dist/bubbles/service-bubble/apify/index.d.ts +6 -0
  62. package/dist/bubbles/service-bubble/apify/index.d.ts.map +1 -0
  63. package/dist/bubbles/service-bubble/apify/index.js +6 -0
  64. package/dist/bubbles/service-bubble/apify/index.js.map +1 -0
  65. package/dist/bubbles/service-bubble/apify/types.d.ts +7 -0
  66. package/dist/bubbles/service-bubble/apify/types.d.ts.map +1 -0
  67. package/dist/bubbles/service-bubble/apify/types.js +5 -0
  68. package/dist/bubbles/service-bubble/apify/types.js.map +1 -0
  69. package/dist/bubbles/service-bubble/gmail.d.ts +626 -132
  70. package/dist/bubbles/service-bubble/gmail.d.ts.map +1 -1
  71. package/dist/bubbles/service-bubble/gmail.js +435 -7
  72. package/dist/bubbles/service-bubble/gmail.js.map +1 -1
  73. package/dist/bubbles/service-bubble/google-calendar.d.ts +36 -36
  74. package/dist/bubbles/service-bubble/google-drive.d.ts +233 -4
  75. package/dist/bubbles/service-bubble/google-drive.d.ts.map +1 -1
  76. package/dist/bubbles/service-bubble/google-drive.js +65 -75
  77. package/dist/bubbles/service-bubble/google-drive.js.map +1 -1
  78. package/dist/bubbles/service-bubble/google-sheets.d.ts +52 -52
  79. package/dist/bubbles/service-bubble/hello-world.js +2 -2
  80. package/dist/bubbles/service-bubble/hello-world.js.map +1 -1
  81. package/dist/bubbles/service-bubble/http.d.ts +6 -6
  82. package/dist/bubbles/service-bubble/postgresql.d.ts +4 -4
  83. package/dist/bubbles/service-bubble/resend.d.ts +5 -5
  84. package/dist/bubbles/service-bubble/resend.d.ts.map +1 -1
  85. package/dist/bubbles/service-bubble/resend.js +16 -5
  86. package/dist/bubbles/service-bubble/resend.js.map +1 -1
  87. package/dist/bubbles/service-bubble/slack.d.ts +18 -18
  88. package/dist/bubbles/service-bubble/storage.d.ts +4 -4
  89. package/dist/bubbles/service-bubble/storage.d.ts.map +1 -1
  90. package/dist/bubbles/service-bubble/storage.js +16 -5
  91. package/dist/bubbles/service-bubble/storage.js.map +1 -1
  92. package/dist/bubbles/service-bubble/x-twitter.d.ts +814 -0
  93. package/dist/bubbles/service-bubble/x-twitter.d.ts.map +1 -0
  94. package/dist/bubbles/service-bubble/x-twitter.js +445 -0
  95. package/dist/bubbles/service-bubble/x-twitter.js.map +1 -0
  96. package/dist/bubbles/tool-bubble/bubbleflow-validation-tool.d.ts +20 -20
  97. package/dist/bubbles/tool-bubble/chart-js-tool.d.ts +16 -16
  98. package/dist/bubbles/tool-bubble/get-bubble-details-tool.d.ts +14 -1
  99. package/dist/bubbles/tool-bubble/get-bubble-details-tool.d.ts.map +1 -1
  100. package/dist/bubbles/tool-bubble/get-bubble-details-tool.js +101 -47
  101. package/dist/bubbles/tool-bubble/get-bubble-details-tool.js.map +1 -1
  102. package/dist/bubbles/tool-bubble/instagram-tool.d.ts +435 -0
  103. package/dist/bubbles/tool-bubble/instagram-tool.d.ts.map +1 -0
  104. package/dist/bubbles/tool-bubble/instagram-tool.js +474 -0
  105. package/dist/bubbles/tool-bubble/instagram-tool.js.map +1 -0
  106. package/dist/bubbles/tool-bubble/linkedin-tool.d.ts +2136 -0
  107. package/dist/bubbles/tool-bubble/linkedin-tool.d.ts.map +1 -0
  108. package/dist/bubbles/tool-bubble/linkedin-tool.js +608 -0
  109. package/dist/bubbles/tool-bubble/linkedin-tool.js.map +1 -0
  110. package/dist/bubbles/tool-bubble/reddit-scrape-tool.d.ts +69 -64
  111. package/dist/bubbles/tool-bubble/reddit-scrape-tool.d.ts.map +1 -1
  112. package/dist/bubbles/tool-bubble/reddit-scrape-tool.js +97 -22
  113. package/dist/bubbles/tool-bubble/reddit-scrape-tool.js.map +1 -1
  114. package/dist/bubbles/tool-bubble/research-agent-tool.d.ts +6 -6
  115. package/dist/bubbles/tool-bubble/research-agent-tool.js +5 -5
  116. package/dist/bubbles/tool-bubble/research-agent-tool.js.map +1 -1
  117. package/dist/bubbles/tool-bubble/tool-template.d.ts +8 -8
  118. package/dist/bubbles/tool-bubble/web-crawl-tool.d.ts +14 -14
  119. package/dist/bubbles/tool-bubble/web-extract-tool.d.ts +4 -4
  120. package/dist/bubbles/tool-bubble/web-scrape-tool.d.ts +28 -28
  121. package/dist/bubbles/tool-bubble/web-scrape-tool.js +1 -1
  122. package/dist/bubbles/tool-bubble/web-scrape-tool.js.map +1 -1
  123. package/dist/bubbles/tool-bubble/web-search-tool.d.ts +5 -4
  124. package/dist/bubbles/tool-bubble/web-search-tool.d.ts.map +1 -1
  125. package/dist/bubbles/tool-bubble/web-search-tool.js +6 -2
  126. package/dist/bubbles/tool-bubble/web-search-tool.js.map +1 -1
  127. package/dist/bubbles/tool-bubble/youtube-tool.d.ts +394 -0
  128. package/dist/bubbles/tool-bubble/youtube-tool.d.ts.map +1 -0
  129. package/dist/bubbles/tool-bubble/youtube-tool.js +352 -0
  130. package/dist/bubbles/tool-bubble/youtube-tool.js.map +1 -0
  131. package/dist/bubbles/workflow-bubble/bubbleflow-generator.workflow.d.ts +47 -36
  132. package/dist/bubbles/workflow-bubble/bubbleflow-generator.workflow.d.ts.map +1 -1
  133. package/dist/bubbles/workflow-bubble/bubbleflow-generator.workflow.js +96 -65
  134. package/dist/bubbles/workflow-bubble/bubbleflow-generator.workflow.js.map +1 -1
  135. package/dist/bubbles/workflow-bubble/generate-document.workflow.d.ts +38 -38
  136. package/dist/bubbles/workflow-bubble/generate-document.workflow.js +1 -1
  137. package/dist/bubbles/workflow-bubble/generate-document.workflow.js.map +1 -1
  138. package/dist/bubbles/workflow-bubble/parse-document.workflow.d.ts +42 -42
  139. package/dist/bubbles/workflow-bubble/parse-document.workflow.js +1 -1
  140. package/dist/bubbles/workflow-bubble/parse-document.workflow.js.map +1 -1
  141. package/dist/bubbles/workflow-bubble/pdf-form-operations.workflow.d.ts +22 -22
  142. package/dist/bubbles/workflow-bubble/pdf-form-operations.workflow.d.ts.map +1 -1
  143. package/dist/bubbles/workflow-bubble/pdf-form-operations.workflow.js +1 -4
  144. package/dist/bubbles/workflow-bubble/pdf-form-operations.workflow.js.map +1 -1
  145. package/dist/bubbles/workflow-bubble/pdf-ocr.workflow.d.ts +60 -60
  146. package/dist/bubbles/workflow-bubble/pdf-ocr.workflow.d.ts.map +1 -1
  147. package/dist/bubbles/workflow-bubble/pdf-ocr.workflow.js +2 -2
  148. package/dist/bubbles/workflow-bubble/pdf-ocr.workflow.js.map +1 -1
  149. package/dist/bubbles/workflow-bubble/slack-data-assistant.workflow.d.ts +20 -20
  150. package/dist/bubbles/workflow-bubble/slack-data-assistant.workflow.js +1 -1
  151. package/dist/bubbles/workflow-bubble/slack-data-assistant.workflow.js.map +1 -1
  152. package/dist/bubbles/workflow-bubble/slack-formatter-agent.d.ts +66 -66
  153. package/dist/bubbles/workflow-bubble/slack-formatter-agent.js +1 -1
  154. package/dist/bubbles/workflow-bubble/slack-formatter-agent.js.map +1 -1
  155. package/dist/bubbles/workflow-bubble/slack-notifier.workflow.d.ts +18 -18
  156. package/dist/bubbles/workflow-bubble/slack-notifier.workflow.d.ts.map +1 -1
  157. package/dist/bubbles/workflow-bubble/slack-notifier.workflow.js +1 -2
  158. package/dist/bubbles/workflow-bubble/slack-notifier.workflow.js.map +1 -1
  159. package/dist/bubbles.json +489 -0
  160. package/dist/index.d.ts +16 -3
  161. package/dist/index.d.ts.map +1 -1
  162. package/dist/index.js +8 -1
  163. package/dist/index.js.map +1 -1
  164. package/dist/logging/BubbleLogger.d.ts +11 -0
  165. package/dist/logging/BubbleLogger.d.ts.map +1 -1
  166. package/dist/logging/BubbleLogger.js +87 -33
  167. package/dist/logging/BubbleLogger.js.map +1 -1
  168. package/dist/logging/StreamingBubbleLogger.d.ts.map +1 -1
  169. package/dist/logging/StreamingBubbleLogger.js +23 -16
  170. package/dist/logging/StreamingBubbleLogger.js.map +1 -1
  171. package/dist/test-gm.d.ts +10 -0
  172. package/dist/test-gm.d.ts.map +1 -0
  173. package/dist/test-gm.js +95 -0
  174. package/dist/test-gm.js.map +1 -0
  175. package/dist/types/available-tools.d.ts +1 -1
  176. package/dist/types/available-tools.d.ts.map +1 -1
  177. package/dist/types/available-tools.js +2 -0
  178. package/dist/types/available-tools.js.map +1 -1
  179. package/dist/types/base-bubble-class.d.ts +6 -1
  180. package/dist/types/base-bubble-class.d.ts.map +1 -1
  181. package/dist/types/base-bubble-class.js +47 -24
  182. package/dist/types/base-bubble-class.js.map +1 -1
  183. package/dist/types/bubble.d.ts +3 -13
  184. package/dist/types/bubble.d.ts.map +1 -1
  185. package/dist/types/bubble.js +1 -1
  186. package/dist/types/bubble.js.map +1 -1
  187. package/dist/types/service-bubble-class.d.ts +5 -5
  188. package/dist/types/service-bubble-class.d.ts.map +1 -1
  189. package/dist/types/service-bubble-class.js +6 -7
  190. package/dist/types/service-bubble-class.js.map +1 -1
  191. package/dist/types/tool-bubble-class.d.ts +1 -1
  192. package/dist/types/tool-bubble-class.d.ts.map +1 -1
  193. package/dist/types/tool-bubble-class.js +9 -3
  194. package/dist/types/tool-bubble-class.js.map +1 -1
  195. package/dist/types/workflow-bubble-class.d.ts +1 -1
  196. package/dist/types/workflow-bubble-class.d.ts.map +1 -1
  197. package/dist/utils/agent-formatter.d.ts +17 -0
  198. package/dist/utils/agent-formatter.d.ts.map +1 -0
  199. package/dist/utils/agent-formatter.js +139 -0
  200. package/dist/utils/agent-formatter.js.map +1 -0
  201. package/dist/utils/bubbleflow-validation.d.ts.map +1 -1
  202. package/dist/utils/bubbleflow-validation.js +89 -32
  203. package/dist/utils/bubbleflow-validation.js.map +1 -1
  204. package/dist/utils/error-sanitizer.d.ts +12 -0
  205. package/dist/utils/error-sanitizer.d.ts.map +1 -0
  206. package/dist/utils/error-sanitizer.js +77 -0
  207. package/dist/utils/error-sanitizer.js.map +1 -0
  208. package/dist/utils/json-parsing.d.ts +1 -0
  209. package/dist/utils/json-parsing.d.ts.map +1 -1
  210. package/dist/utils/json-parsing.js +205 -32
  211. package/dist/utils/json-parsing.js.map +1 -1
  212. package/package.json +6 -5
  213. package/dist/bubble-trigger/index.d.ts +0 -2
  214. package/dist/bubble-trigger/index.d.ts.map +0 -1
  215. package/dist/bubble-trigger/index.js +0 -2
  216. package/dist/bubble-trigger/index.js.map +0 -1
  217. package/dist/bubble-trigger/types.d.ts +0 -87
  218. package/dist/bubble-trigger/types.d.ts.map +0 -1
  219. package/dist/bubble-trigger/types.js +0 -14
  220. package/dist/bubble-trigger/types.js.map +0 -1
  221. package/dist/types/ai-models.d.ts +0 -4
  222. package/dist/types/ai-models.d.ts.map +0 -1
  223. package/dist/types/ai-models.js +0 -16
  224. package/dist/types/ai-models.js.map +0 -1
@@ -0,0 +1,95 @@
1
+ import {
2
+ // Base classes
3
+ BubbleFlow, GoogleDriveBubble, } from '@bubblelab/bubble-core';
4
+ export class GoogleDriveFileOrganizerFlow extends BubbleFlow {
5
+ async handle(_payload) {
6
+ const listFilesBubble = new GoogleDriveBubble({
7
+ operation: 'list_files',
8
+ max_results: 100, // Process up to 100 files per run
9
+ });
10
+ const listResult = await listFilesBubble.action();
11
+ if (!listResult.success || !listResult.data?.files) {
12
+ throw new Error(`Failed to list Google Drive files: ${listResult.error || 'Unknown error'}`);
13
+ }
14
+ const filesToProcess = listResult.data.files.filter((file) => file.mimeType !== 'application/vnd.google-apps.folder' && file.id);
15
+ if (filesToProcess.length === 0) {
16
+ return { message: 'No files found to organize.' };
17
+ }
18
+ const mimeTypeFolderMap = new Map();
19
+ let organizedCount = 0;
20
+ const errors = [];
21
+ // Process files in batches of 5
22
+ for (let i = 0; i < filesToProcess.length; i += 5) {
23
+ const batch = filesToProcess.slice(i, i + 5);
24
+ const batchPromises = batch.map(async (file) => {
25
+ try {
26
+ if (!file.id || !file.mimeType || !file.name) {
27
+ console.warn(`Skipping file with missing data: ${JSON.stringify(file)}`);
28
+ return;
29
+ }
30
+ // 1. Get or create the destination folder
31
+ let folderId = mimeTypeFolderMap.get(file.mimeType);
32
+ if (!folderId) {
33
+ const folderName = `${file.mimeType.split('/').pop()?.split('.').pop()?.toUpperCase()} Files`;
34
+ const createFolderBubble = new GoogleDriveBubble({
35
+ operation: 'create_folder',
36
+ name: folderName,
37
+ });
38
+ const folderResult = await createFolderBubble.action();
39
+ if (folderResult.success && folderResult.data?.folder?.id) {
40
+ folderId = folderResult.data.folder.id;
41
+ mimeTypeFolderMap.set(file.mimeType, folderId);
42
+ }
43
+ else {
44
+ throw new Error(`Failed to create folder for ${file.mimeType}: ${folderResult.error}`);
45
+ }
46
+ }
47
+ // 2. Download the file
48
+ const downloadBubble = new GoogleDriveBubble({
49
+ operation: 'download_file',
50
+ file_id: file.id,
51
+ });
52
+ const downloadResult = await downloadBubble.action();
53
+ if (!downloadResult.success || !downloadResult.data?.content) {
54
+ throw new Error(`Failed to download file ${file.name}: ${downloadResult.error}`);
55
+ }
56
+ // 3. Upload the file to the new folder
57
+ const uploadBubble = new GoogleDriveBubble({
58
+ operation: 'upload_file',
59
+ name: file.name,
60
+ content: downloadResult.data.content,
61
+ mimeType: file.mimeType,
62
+ parent_folder_id: folderId,
63
+ });
64
+ const uploadResult = await uploadBubble.action();
65
+ if (!uploadResult.success) {
66
+ throw new Error(`Failed to upload file ${file.name}: ${uploadResult.error}`);
67
+ }
68
+ // 4. Delete the original file
69
+ const deleteBubble = new GoogleDriveBubble({
70
+ operation: 'delete_file',
71
+ file_id: file.id,
72
+ });
73
+ const deleteResult = await deleteBubble.action();
74
+ if (!deleteResult.success) {
75
+ // Log as a non-critical error, since the file was already moved
76
+ console.error(`Failed to delete original file ${file.name}: ${deleteResult.error}`);
77
+ }
78
+ organizedCount++;
79
+ }
80
+ catch (error) {
81
+ const errorMessage = `Error processing file ${file.name || 'unknown'}: ${error instanceof Error ? error.message : String(error)}`;
82
+ console.error(errorMessage);
83
+ errors.push(errorMessage);
84
+ }
85
+ });
86
+ await Promise.all(batchPromises);
87
+ }
88
+ let message = `Successfully organized ${organizedCount} out of ${filesToProcess.length} files.`;
89
+ if (errors.length > 0) {
90
+ message += ` Encountered ${errors.length} errors. Check logs for details.`;
91
+ }
92
+ return { message };
93
+ }
94
+ }
95
+ //# sourceMappingURL=test-gm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test-gm.js","sourceRoot":"","sources":["../src/test-gm.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
1
  import { z } from 'zod';
2
- export declare const AvailableTools: z.ZodEnum<["web-search-tool", "web-scrape-tool", "web-crawl-tool", "web-extract-tool", "research-agent-tool", "reddit-scrape-tool", "list-bubbles-tool", "get-bubble-details-tool", "bubbleflow-validation-tool", "chart-js-tool", "sql-query-tool"]>;
2
+ export declare const AvailableTools: z.ZodEnum<["web-search-tool", "web-scrape-tool", "web-crawl-tool", "web-extract-tool", "research-agent-tool", "reddit-scrape-tool", "instagram-tool", "list-bubbles-tool", "get-bubble-details-tool", "bubbleflow-validation-tool", "chart-js-tool", "sql-query-tool"]>;
3
3
  export type AvailableTool = z.infer<typeof AvailableTools>;
4
4
  //# sourceMappingURL=available-tools.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"available-tools.d.ts","sourceRoot":"","sources":["../../src/types/available-tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,eAAO,MAAM,cAAc,uPAcgB,CAAC;AAE5C,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC"}
1
+ {"version":3,"file":"available-tools.d.ts","sourceRoot":"","sources":["../../src/types/available-tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,eAAO,MAAM,cAAc,yQAgBgB,CAAC;AAE5C,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC"}
@@ -9,6 +9,8 @@ export const AvailableTools = z.enum([
9
9
  'web-extract-tool',
10
10
  'research-agent-tool',
11
11
  'reddit-scrape-tool',
12
+ // Social media tools
13
+ 'instagram-tool',
12
14
  // Existing bubble tools (for reference - these are handled by bubble names)
13
15
  'list-bubbles-tool',
14
16
  'get-bubble-details-tool',
@@ -1 +1 @@
1
- {"version":3,"file":"available-tools.js","sourceRoot":"","sources":["../../src/types/available-tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,4DAA4D;AAC5D,oEAAoE;AACpE,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC,IAAI,CAAC;IACnC,YAAY;IACZ,iBAAiB;IACjB,iBAAiB;IACjB,gBAAgB;IAChB,kBAAkB;IAClB,qBAAqB;IACrB,oBAAoB;IACpB,4EAA4E;IAC5E,mBAAmB;IACnB,yBAAyB;IACzB,4BAA4B;IAC5B,eAAe;IACf,gBAAgB;CACwB,CAAC,CAAC"}
1
+ {"version":3,"file":"available-tools.js","sourceRoot":"","sources":["../../src/types/available-tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,4DAA4D;AAC5D,oEAAoE;AACpE,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC,IAAI,CAAC;IACnC,YAAY;IACZ,iBAAiB;IACjB,iBAAiB;IACjB,gBAAgB;IAChB,kBAAkB;IAClB,qBAAqB;IACrB,oBAAoB;IACpB,qBAAqB;IACrB,gBAAgB;IAChB,4EAA4E;IAC5E,mBAAmB;IACnB,yBAAyB;IACzB,4BAA4B;IAC5B,eAAe;IACf,gBAAgB;CACwB,CAAC,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { z } from 'zod';
2
- import type { IBubble, BubbleContext, BubbleResult, BubbleOperationResult } from './bubble.js';
2
+ import type { IBubble, BubbleContext, BubbleResult, BubbleOperationResult } from '@bubblelab/bubble-core';
3
3
  /**
4
4
  * Abstract base class for all bubble types
5
5
  * Implements common properties and methods defined in IBubble interface
@@ -25,6 +25,11 @@ export declare abstract class BaseBubble<TParams = unknown, TResult extends Bubb
25
25
  private computeChildContext;
26
26
  saveResult<R extends BubbleOperationResult>(result: BubbleResult<R>): void;
27
27
  clearSavedResult(): void;
28
+ /**
29
+ * Override toJSON to prevent credential leaking via JSON.stringify or console.log
30
+ * Only exposes safe metadata, never params which may contain credentials
31
+ */
32
+ toJSON(): Record<string, unknown>;
28
33
  /**
29
34
  * Execute the bubble - just runs the action
30
35
  */
@@ -1 +1 @@
1
- {"version":3,"file":"base-bubble-class.d.ts","sourceRoot":"","sources":["../../src/types/base-bubble-class.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EACV,OAAO,EACP,aAAa,EACb,YAAY,EACZ,qBAAqB,EACtB,MAAM,aAAa,CAAC;AAUrB;;;GAGG;AACH,8BAAsB,UAAU,CAC9B,OAAO,GAAG,OAAO,EACjB,OAAO,SAAS,qBAAqB,GAAG,qBAAqB,CAC7D,YAAW,OAAO,CAAC,OAAO,CAAC;IAE3B,SAAgB,IAAI,EAAE,MAAM,CAAC;IAC7B,SAAgB,MAAM,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;IACnD,SAAgB,YAAY,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;IACzD,SAAgB,gBAAgB,EAAE,MAAM,CAAC;IACzC,SAAgB,eAAe,EAAE,MAAM,CAAC;IACxC,SAAgB,KAAK,CAAC,EAAE,MAAM,CAAC;IAC/B,kBAAyB,IAAI,EACzB,SAAS,GACT,UAAU,GACV,MAAM,GACN,IAAI,GACJ,OAAO,CAAC;IAEZ,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACnC,SAAS,CAAC,OAAO,CAAC,EAAE,aAAa,CAAC;IAC3B,cAAc,EAAE,YAAY,CAAC,qBAAqB,CAAC,GAAG,SAAS,CAAC;gBAE3D,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,aAAa;IAkEpD;;;;;OAKG;IACH,OAAO,CAAC,mBAAmB;IAqE3B,UAAU,CAAC,CAAC,SAAS,qBAAqB,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,IAAI;IAI1E,gBAAgB,IAAI,IAAI;IAIxB;;OAEG;IACG,MAAM,IAAI,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;IAyG9C;;;OAGG;IACH,kBAAkB,IAAI,YAAY,CAAC,OAAO,CAAC;IAI3C;;;OAGG;IACH,0BAA0B,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,CAAC,OAAO,CAAC;IAc/D;;OAEG;IACH,SAAS,CAAC,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC;CAC5E"}
1
+ {"version":3,"file":"base-bubble-class.d.ts","sourceRoot":"","sources":["../../src/types/base-bubble-class.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EACV,OAAO,EACP,aAAa,EACb,YAAY,EACZ,qBAAqB,EACtB,MAAM,wBAAwB,CAAC;AAUhC;;;GAGG;AACH,8BAAsB,UAAU,CAC9B,OAAO,GAAG,OAAO,EACjB,OAAO,SAAS,qBAAqB,GAAG,qBAAqB,CAC7D,YAAW,OAAO,CAAC,OAAO,CAAC;IAE3B,SAAgB,IAAI,EAAE,MAAM,CAAC;IAC7B,SAAgB,MAAM,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;IACnD,SAAgB,YAAY,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;IACzD,SAAgB,gBAAgB,EAAE,MAAM,CAAC;IACzC,SAAgB,eAAe,EAAE,MAAM,CAAC;IACxC,SAAgB,KAAK,CAAC,EAAE,MAAM,CAAC;IAC/B,kBAAyB,IAAI,EACzB,SAAS,GACT,UAAU,GACV,MAAM,GACN,IAAI,GACJ,OAAO,CAAC;IAEZ,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACnC,SAAS,CAAC,OAAO,CAAC,EAAE,aAAa,CAAC;IAC3B,cAAc,EAAE,YAAY,CAAC,qBAAqB,CAAC,GAAG,SAAS,CAAC;gBAE3D,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,aAAa;IAoDpD;;;;;OAKG;IACH,OAAO,CAAC,mBAAmB;IAqE3B,UAAU,CAAC,CAAC,SAAS,qBAAqB,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,IAAI;IAI1E,gBAAgB,IAAI,IAAI;IAIxB;;;OAGG;IACH,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAWjC;;OAEG;IACG,MAAM,IAAI,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;IAgI9C;;;OAGG;IACH,kBAAkB,IAAI,YAAY,CAAC,OAAO,CAAC;IAI3C;;;OAGG;IACH,0BAA0B,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,CAAC,OAAO,CAAC;IAc/D;;OAEG;IACH,SAAS,CAAC,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC;CAC5E"}
@@ -30,32 +30,22 @@ export class BaseBubble {
30
30
  this.params = this.schema.parse(params);
31
31
  // Enrich context with child variableId/currentUniqueId if dependencyGraph is provided
32
32
  if (context && context.dependencyGraph && context.currentUniqueId) {
33
- console.debug('Computing child context');
33
+ console.debug('[BaseBubble] Computing child context');
34
34
  const next = this.computeChildContext(context);
35
35
  this.context = next;
36
- console.debug('Computed child context unique id:', this.context?.currentUniqueId);
36
+ console.debug('[BaseBubble] Computed child context unique id:', this.context?.currentUniqueId);
37
37
  //Prnt the var id of the computed child context
38
- console.debug('Computed child context variable id:', this.context?.variableId);
38
+ console.debug('[BaseBubble] Computed child context variable id:', this.context?.variableId);
39
39
  }
40
40
  else {
41
41
  this.context = context;
42
42
  }
43
43
  }
44
44
  catch (error) {
45
- // Parse Zod validation errors to make them more user-friendly
46
- if (error instanceof z.ZodError) {
47
- const errorMessages = error.errors.map((err) => {
48
- const path = err.path.length > 0 ? `${err.path.join('.')}: ` : '';
49
- return `${path}${err.message}`;
50
- });
51
- throw new BubbleValidationError(`Parameter validation failed: ${errorMessages.join(', ')}`, {
52
- variableId: context?.variableId,
53
- bubbleName: ctor.bubbleName,
54
- validationErrors: errorMessages,
55
- cause: error,
56
- });
57
- }
58
- throw new BubbleValidationError(`Parameter validation failed: ${String(error)}`, {
45
+ const errorMessage = error instanceof z.ZodError
46
+ ? `Input Schema validation failed: ${error.errors.map((e) => `${e.path.join('.')}: ${e.message}`).join(', ')}`
47
+ : `Input Schema validation failed: ${error instanceof Error ? error.message : 'Unknown validation error'}`;
48
+ throw new BubbleValidationError(errorMessage, {
59
49
  variableId: context?.variableId,
60
50
  bubbleName: ctor.bubbleName,
61
51
  cause: error instanceof Error ? error : undefined,
@@ -128,6 +118,20 @@ export class BaseBubble {
128
118
  clearSavedResult() {
129
119
  this.previousResult = undefined;
130
120
  }
121
+ /**
122
+ * Override toJSON to prevent credential leaking via JSON.stringify or console.log
123
+ * Only exposes safe metadata, never params which may contain credentials
124
+ */
125
+ toJSON() {
126
+ return {
127
+ name: this.name,
128
+ type: this.type,
129
+ shortDescription: this.shortDescription,
130
+ alias: this.alias,
131
+ // Explicitly exclude params, context, and previousResult
132
+ // These may contain sensitive credentials
133
+ };
134
+ }
131
135
  /**
132
136
  * Execute the bubble - just runs the action
133
137
  */
@@ -144,16 +148,35 @@ export class BaseBubble {
144
148
  logger?.logBubbleExecutionComplete(this.context?.variableId ?? -999, this.name, this.name, savedResult);
145
149
  return savedResult;
146
150
  }
147
- const result = await this.performAction(this.context);
151
+ let result;
152
+ try {
153
+ result = await this.performAction(this.context);
154
+ }
155
+ catch (error) {
156
+ console.error('Error executing bubble:', error);
157
+ this.context?.logger?.logBubbleExecutionComplete(this.context?.variableId ?? -999, this.name, this.name, {
158
+ success: false,
159
+ error: error instanceof Error ? error.message : 'Unknown error',
160
+ executionId: randomUUID(),
161
+ timestamp: new Date(),
162
+ });
163
+ this.context?.logger?.error(`[${this.name}] Unexpected error when performing action: ${error instanceof Error ? error.message : 'Unknown error'}`);
164
+ throw new BubbleExecutionError(error instanceof Error ? error.message : 'Unknown error', {
165
+ variableId: this.context?.variableId,
166
+ bubbleName: this.name,
167
+ executionPhase: 'execution',
168
+ cause: error instanceof Error ? error : undefined,
169
+ });
170
+ }
148
171
  // Validate result if schema is provided
149
172
  if (this.resultSchema) {
150
173
  try {
151
174
  const validatedResult = this.resultSchema.parse(result);
152
175
  const finalResult = {
153
176
  success: result.success,
154
- // For data we strip out the success and error fields
177
+ // For data we strip out any excessive fields
155
178
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
156
- data: (({ success: _success, error: _error, ...rest }) => rest)(validatedResult),
179
+ data: (({ ...rest }) => rest)(validatedResult),
157
180
  executionId: randomUUID(),
158
181
  error: validatedResult.error || '',
159
182
  timestamp: new Date(),
@@ -166,14 +189,13 @@ export class BaseBubble {
166
189
  return finalResult;
167
190
  }
168
191
  catch (validationError) {
169
- // Throw execution error for result validation failures
192
+ // Validation error for result validation failures
170
193
  const errorMessage = validationError instanceof z.ZodError
171
194
  ? `Result schema validation failed: ${validationError.errors.map((e) => `${e.path.join('.')}: ${e.message}`).join(', ')}`
172
195
  : `Result validation failed: ${validationError instanceof Error ? validationError.message : 'Unknown validation error'}`;
173
- throw new BubbleExecutionError(errorMessage, {
196
+ throw new BubbleValidationError(errorMessage, {
174
197
  variableId: this.context?.variableId,
175
198
  bubbleName: this.name,
176
- executionPhase: 'validation',
177
199
  cause: validationError instanceof Error ? validationError : undefined,
178
200
  });
179
201
  }
@@ -181,8 +203,9 @@ export class BaseBubble {
181
203
  // No result schema defined - proceed without validation
182
204
  const finalResult = {
183
205
  success: result.success,
206
+ // For data we strip out any excessive fields
184
207
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
185
- data: (({ success: _success, error: _error, ...rest }) => rest)(result),
208
+ data: (({ ...rest }) => rest)(result),
186
209
  error: result.error || '',
187
210
  executionId: randomUUID(),
188
211
  timestamp: new Date(),
@@ -1 +1 @@
1
- {"version":3,"file":"base-bubble-class.js","sourceRoot":"","sources":["../../src/types/base-bubble-class.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"base-bubble-class.js","sourceRoot":"","sources":["../../src/types/base-bubble-class.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { z } from 'zod';
2
- import type { DatabaseMetadata, CredentialOptions, DependencyGraphNode } from '@bubblelab/shared-schemas';
2
+ import type { DatabaseMetadata, CredentialOptions, DependencyGraphNode, BubbleOperationResult, BubbleResult } from '@bubblelab/shared-schemas';
3
3
  import type { BubbleLogger } from '../logging/BubbleLogger';
4
4
  export interface IBubble<TResult extends BubbleOperationResult = BubbleOperationResult> {
5
5
  readonly name: string;
@@ -16,12 +16,11 @@ export interface IBubble<TResult extends BubbleOperationResult = BubbleOperation
16
16
  generateMockResult: () => BubbleResult<TResult>;
17
17
  generateMockResultWithSeed: (seed: number) => BubbleResult<TResult>;
18
18
  }
19
- export interface IServiceBubble<TResult extends BubbleOperationResult = BubbleOperationResult> extends IBubble<TResult> {
19
+ export interface IServiceBubble<TParams extends Record<string, unknown> = Record<string, unknown>, TResult extends BubbleOperationResult = BubbleOperationResult> extends IBubble<TResult> {
20
20
  readonly type: 'service';
21
21
  authType?: 'oauth' | 'apikey' | 'none' | 'connection-string';
22
22
  testCredential: () => Promise<boolean>;
23
- setCredentials: (credentials: Record<string, string>) => void;
24
- setParam: (paramName: string, paramValue: unknown) => void;
23
+ setParam: <K extends keyof TParams>(paramName: K, paramValue: TParams[K]) => void;
25
24
  getCredentialMetadata: () => Promise<DatabaseMetadata | undefined>;
26
25
  }
27
26
  export interface IWorkflowBubble<TResult extends BubbleOperationResult = BubbleOperationResult> extends IBubble<TResult> {
@@ -39,16 +38,7 @@ export interface IInfraBubble extends IBubble {
39
38
  provider: 'aws' | 'gcp' | 'supabase';
40
39
  resourceType: string;
41
40
  }
42
- export interface BubbleOperationResult {
43
- success: boolean;
44
- error: string;
45
- }
46
41
  export type BubbleFlowOperationResult = unknown;
47
- export interface BubbleResult<T> extends BubbleOperationResult {
48
- data: T;
49
- executionId: string;
50
- timestamp: Date;
51
- }
52
42
  export interface BubbleContext {
53
43
  logger?: BubbleLogger;
54
44
  variableId?: number;
@@ -1 +1 @@
1
- {"version":3,"file":"bubble.d.ts","sourceRoot":"","sources":["../../src/types/bubble.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bubble.d.ts","sourceRoot":"","sources":["../../src/types/bubble.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import { z } from 'zod';
1
+ export {};
2
2
  //# sourceMappingURL=bubble.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"bubble.js","sourceRoot":"","sources":["../../src/types/bubble.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC"}
1
+ {"version":3,"file":"bubble.js","sourceRoot":"","sources":["../../src/types/bubble.ts"],"names":[],"mappings":""}
@@ -1,4 +1,4 @@
1
- import type { BubbleOperationResult, ServiceBubbleParams, BubbleContext } from './bubble.js';
1
+ import type { BubbleOperationResult, ServiceBubbleParams, BubbleContext } from '@bubblelab/bubble-core';
2
2
  import { BaseBubble } from './base-bubble-class.js';
3
3
  import type { DatabaseMetadata } from '@bubblelab/shared-schemas';
4
4
  export declare abstract class ServiceBubble<TParams extends ServiceBubbleParams = ServiceBubbleParams, TResult extends BubbleOperationResult = BubbleOperationResult> extends BaseBubble<TParams, TResult> {
@@ -18,11 +18,11 @@ export declare abstract class ServiceBubble<TParams extends ServiceBubbleParams
18
18
  */
19
19
  getCredentialMetadata(): Promise<DatabaseMetadata | undefined>;
20
20
  /**
21
- * Get the current parameters
21
+ * Get the current parameters (credentials are excluded for security)
22
+ * Use chooseCredential() method to access credentials in a controlled way
22
23
  */
23
- get currentParams(): TParams;
24
- setCredentials(credentials: Record<string, string>): void;
25
- setParam(paramName: string, paramValue: unknown): void;
24
+ get currentParams(): Omit<TParams, 'credentials'>;
25
+ setParam<K extends keyof TParams>(paramName: K, paramValue: TParams[K]): void;
26
26
  /**
27
27
  * Get the current context
28
28
  */
@@ -1 +1 @@
1
- {"version":3,"file":"service-bubble-class.d.ts","sourceRoot":"","sources":["../../src/types/service-bubble-class.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,qBAAqB,EACrB,mBAAmB,EACnB,aAAa,EACd,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAElE,8BAAsB,aAAa,CACjC,OAAO,SAAS,mBAAmB,GAAG,mBAAmB,EACzD,OAAO,SAAS,qBAAqB,GAAG,qBAAqB,CAC7D,SAAQ,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC;IACpC,SAAgB,IAAI,EAAG,SAAS,CAAU;IACnC,QAAQ,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,MAAM,GAAG,mBAAmB,CAAC;gBAExD,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,aAAa;aAIpC,cAAc,IAAI,OAAO,CAAC,OAAO,CAAC;IAElD;;;;OAIG;IACH,SAAS,CAAC,QAAQ,CAAC,gBAAgB,IAAI,MAAM,GAAG,SAAS;IAEzD;;;OAGG;IAEG,qBAAqB,IAAI,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC;IAIpE;;OAEG;IACH,IAAI,aAAa,IAAI,OAAO,CAE3B;IAED,cAAc,CAAC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAIlD,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,GAAG,IAAI;IAKtD;;OAEG;IACH,IAAI,cAAc,IAAI,aAAa,GAAG,SAAS,CAE9C;CACF"}
1
+ {"version":3,"file":"service-bubble-class.d.ts","sourceRoot":"","sources":["../../src/types/service-bubble-class.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,qBAAqB,EACrB,mBAAmB,EACnB,aAAa,EACd,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAElE,8BAAsB,aAAa,CACjC,OAAO,SAAS,mBAAmB,GAAG,mBAAmB,EACzD,OAAO,SAAS,qBAAqB,GAAG,qBAAqB,CAC7D,SAAQ,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC;IACpC,SAAgB,IAAI,EAAG,SAAS,CAAU;IACnC,QAAQ,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,MAAM,GAAG,mBAAmB,CAAC;gBAExD,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,aAAa;aAIpC,cAAc,IAAI,OAAO,CAAC,OAAO,CAAC;IAElD;;;;OAIG;IACH,SAAS,CAAC,QAAQ,CAAC,gBAAgB,IAAI,MAAM,GAAG,SAAS;IAEzD;;;OAGG;IAEG,qBAAqB,IAAI,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC;IAIpE;;;OAGG;IACH,IAAI,aAAa,IAAI,IAAI,CAAC,OAAO,EAAE,aAAa,CAAC,CAIhD;IAED,QAAQ,CAAC,CAAC,SAAS,MAAM,OAAO,EAC9B,SAAS,EAAE,CAAC,EACZ,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC,GACrB,IAAI;IAIP;;OAEG;IACH,IAAI,cAAc,IAAI,aAAa,GAAG,SAAS,CAE9C;CACF"}
@@ -14,17 +14,16 @@ export class ServiceBubble extends BaseBubble {
14
14
  return undefined;
15
15
  }
16
16
  /**
17
- * Get the current parameters
17
+ * Get the current parameters (credentials are excluded for security)
18
+ * Use chooseCredential() method to access credentials in a controlled way
18
19
  */
19
20
  get currentParams() {
20
- return this.params;
21
- }
22
- setCredentials(credentials) {
23
- this.params.credentials = credentials;
21
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
22
+ const { credentials, ...sanitized } = this.params;
23
+ return sanitized;
24
24
  }
25
25
  setParam(paramName, paramValue) {
26
- this.params[paramName] =
27
- paramValue;
26
+ this.params[paramName] = paramValue;
28
27
  }
29
28
  /**
30
29
  * Get the current context
@@ -1 +1 @@
1
- {"version":3,"file":"service-bubble-class.js","sourceRoot":"","sources":["../../src/types/service-bubble-class.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAGpD,MAAM,OAAgB,aAGpB,SAAQ,UAA4B;IACpB,IAAI,GAAG,SAAkB,CAAC;IACnC,QAAQ,CAAqD;IAEpE,YAAY,MAAe,EAAE,OAAuB;QAClD,KAAK,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACzB,CAAC;IAWD;;;OAGG;IACH,kDAAkD;IAClD,KAAK,CAAC,qBAAqB;QACzB,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;OAEG;IACH,IAAI,aAAa;QACf,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,cAAc,CAAC,WAAmC;QAChD,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,WAAW,CAAC;IACxC,CAAC;IAED,QAAQ,CAAC,SAAiB,EAAE,UAAmB;QAC7C,IAAI,CAAC,MAAM,CAAC,SAA0B,CAAC;YACrC,UAAoC,CAAC;IACzC,CAAC;IAED;;OAEG;IACH,IAAI,cAAc;QAChB,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;CACF"}
1
+ {"version":3,"file":"service-bubble-class.js","sourceRoot":"","sources":["../../src/types/service-bubble-class.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAGpD,MAAM,OAAgB,aAGpB,SAAQ,UAA4B;IACpB,IAAI,GAAG,SAAkB,CAAC;IACnC,QAAQ,CAAqD;IAEpE,YAAY,MAAe,EAAE,OAAuB;QAClD,KAAK,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACzB,CAAC;IAWD;;;OAGG;IACH,kDAAkD;IAClD,KAAK,CAAC,qBAAqB;QACzB,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;;OAGG;IACH,IAAI,aAAa;QACf,6DAA6D;QAC7D,MAAM,EAAE,WAAW,EAAE,GAAG,SAAS,EAAE,GAAG,IAAI,CAAC,MAA6B,CAAC;QACzE,OAAO,SAAyC,CAAC;IACnD,CAAC;IAED,QAAQ,CACN,SAAY,EACZ,UAAsB;QAEtB,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,UAAU,CAAC;IACtC,CAAC;IAED;;OAEG;IACH,IAAI,cAAc;QAChB,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;CACF"}
@@ -1,5 +1,5 @@
1
1
  import { z } from 'zod';
2
- import type { IToolBubble, ServiceBubbleParams, BubbleContext, BubbleOperationResult, BubbleResult } from './bubble.js';
2
+ import type { IToolBubble, ServiceBubbleParams, BubbleContext, BubbleOperationResult, BubbleResult } from '@bubblelab/bubble-core';
3
3
  import { BaseBubble } from './base-bubble-class.js';
4
4
  import { CredentialType } from '@bubblelab/shared-schemas';
5
5
  export interface LangGraphTool {
@@ -1 +1 @@
1
- {"version":3,"file":"tool-bubble-class.d.ts","sourceRoot":"","sources":["../../src/types/tool-bubble-class.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EACV,WAAW,EACX,mBAAmB,EACnB,aAAa,EACb,qBAAqB,EACrB,YAAY,EACb,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAG3D,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,CAAC,CAAC,SAAS,CAAC;IACpB,IAAI,CAAC,OAAO,SAAS,qBAAqB,GAAG,qBAAqB,EAChE,MAAM,EAAE,OAAO,GACd,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC;CACnC;AAED;;GAEG;AACH,8BAAsB,UAAU,CAC5B,OAAO,SAAS,mBAAmB,GAAG,mBAAmB,EACzD,OAAO,SAAS,qBAAqB,GAAG,qBAAqB,CAE/D,SAAQ,UAAU,CAAC,OAAO,EAAE,OAAO,CACnC,YAAW,WAAW,CAAC,OAAO,CAAC;IAE/B,SAAgB,IAAI,EAAG,MAAM,CAAU;gBAE3B,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,aAAa;IAKpD,MAAM,CAAC,SAAS,CACd,WAAW,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC,EACrD,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChC,OAAO,CAAC,EAAE,aAAa,GACtB,aAAa;CA4CjB"}
1
+ {"version":3,"file":"tool-bubble-class.d.ts","sourceRoot":"","sources":["../../src/types/tool-bubble-class.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EACV,WAAW,EACX,mBAAmB,EACnB,aAAa,EACb,qBAAqB,EACrB,YAAY,EACb,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAG3D,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,CAAC,CAAC,SAAS,CAAC;IACpB,IAAI,CAAC,OAAO,SAAS,qBAAqB,GAAG,qBAAqB,EAChE,MAAM,EAAE,OAAO,GACd,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC;CACnC;AAED;;GAEG;AACH,8BAAsB,UAAU,CAC5B,OAAO,SAAS,mBAAmB,GAAG,mBAAmB,EACzD,OAAO,SAAS,qBAAqB,GAAG,qBAAqB,CAE/D,SAAQ,UAAU,CAAC,OAAO,EAAE,OAAO,CACnC,YAAW,WAAW,CAAC,OAAO,CAAC;IAE/B,SAAgB,IAAI,EAAG,MAAM,CAAU;gBAE3B,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,aAAa;IAOpD,MAAM,CAAC,SAAS,CACd,WAAW,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC,EACrD,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChC,OAAO,CAAC,EAAE,aAAa,GACtB,aAAa;CAoDjB"}
@@ -1,6 +1,4 @@
1
- import { z } from 'zod';
2
1
  import { BaseBubble } from './base-bubble-class.js';
3
- import { CredentialType } from '@bubblelab/shared-schemas';
4
2
  /**
5
3
  * Abstract base class for all tool bubbles that can be converted to LangGraph tools
6
4
  */
@@ -10,6 +8,8 @@ export class ToolBubble extends BaseBubble {
10
8
  super(params, context);
11
9
  }
12
10
  // Static method - returns LangChain tool with credentials injected
11
+ // Creates a LangGraph compatible tool with specific configurations that will
12
+ // be passed in to the tool bubble
13
13
  static toolAgent(credentials, config, context) {
14
14
  // In static context, 'this' refers to the constructor/class
15
15
  const ToolClass = this;
@@ -26,16 +26,22 @@ export class ToolBubble extends BaseBubble {
26
26
  if (agentSchema.shape?.config) {
27
27
  agentSchema = agentSchema.omit({ config: true });
28
28
  }
29
+ agentSchema = agentSchema.passthrough();
29
30
  return {
30
31
  name: bubbleName,
31
32
  description: shortDescription,
32
33
  schema: agentSchema,
33
34
  func: async (toolParams) => {
34
35
  // Create instance with credentials and config injected
36
+ // Sometimes config should be dynamic and determined on each
37
+ // tool invocation, rather than the start of agent run
38
+ // In this case, we will replace the config (statically configured in the tool bubble)
39
+ // with the runtime config
40
+ const runtimeConfig = toolParams?.config;
35
41
  const enrichedParams = {
36
42
  ...toolParams,
37
43
  credentials,
38
- config,
44
+ config: runtimeConfig || config,
39
45
  };
40
46
  // 'this' in static context is the constructor
41
47
  const instance = new ToolClass(enrichedParams, context);
@@ -1 +1 @@
1
- {"version":3,"file":"tool-bubble-class.js","sourceRoot":"","sources":["../../src/types/tool-bubble-class.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAQxB,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAY3D;;GAEG;AACH,MAAM,OAAgB,UAIpB,SAAQ,UAA4B;IAGpB,IAAI,GAAG,MAAe,CAAC;IAEvC,YAAY,MAAe,EAAE,OAAuB;QAClD,KAAK,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACzB,CAAC;IAED,mEAAmE;IACnE,MAAM,CAAC,SAAS,CACd,WAAqD,EACrD,MAAgC,EAChC,OAAuB;QAEvB,4DAA4D;QAC5D,MAAM,SAAS,GAAG,IAIjB,CAAC;QACF,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,gBAAgB,EAAE,GAAG,SAAS,CAAC;QAE3D,IAAI,CAAC,MAAM,IAAI,CAAC,UAAU,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAChD,MAAM,IAAI,KAAK,CACb,GAAG,SAAS,CAAC,IAAI,8DAA8D,CAChF,CAAC;QACJ,CAAC;QAED,+CAA+C;QAC/C,0CAA0C;QAC1C,IAAI,WAAW,GAAqB,MAAM,CAAC;QAC3C,IAAI,MAAM,CAAC,KAAK,EAAE,WAAW,EAAE,CAAC;YAC9B,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;QACnD,CAAC;QACD,IAAI,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC;YAC9B,WAAW,GAAG,WAAW,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QACnD,CAAC;QAED,OAAO;YACL,IAAI,EAAE,UAAU;YAChB,WAAW,EAAE,gBAAgB;YAC7B,MAAM,EAAE,WAAW;YACnB,IAAI,EAAE,KAAK,EAAE,UAAmB,EAAE,EAAE;gBAClC,uDAAuD;gBACvD,MAAM,cAAc,GAAG;oBACrB,GAAI,UAAqB;oBACzB,WAAW;oBACX,MAAM;iBACP,CAAC;gBAEF,8CAA8C;gBAC9C,MAAM,QAAQ,GAAG,IAAK,SAAiB,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;gBACjE,yEAAyE;gBACzE,OAAO,QAAQ,CAAC,MAAM,EAAE,CAAC;YAC3B,CAAC;SACF,CAAC;IACJ,CAAC;CACF"}
1
+ {"version":3,"file":"tool-bubble-class.js","sourceRoot":"","sources":["../../src/types/tool-bubble-class.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAapD;;GAEG;AACH,MAAM,OAAgB,UAIpB,SAAQ,UAA4B;IAGpB,IAAI,GAAG,MAAe,CAAC;IAEvC,YAAY,MAAe,EAAE,OAAuB;QAClD,KAAK,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACzB,CAAC;IAED,mEAAmE;IACnE,6EAA6E;IAC7E,kCAAkC;IAClC,MAAM,CAAC,SAAS,CACd,WAAqD,EACrD,MAAgC,EAChC,OAAuB;QAEvB,4DAA4D;QAC5D,MAAM,SAAS,GAAG,IAIjB,CAAC;QACF,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,gBAAgB,EAAE,GAAG,SAAS,CAAC;QAE3D,IAAI,CAAC,MAAM,IAAI,CAAC,UAAU,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAChD,MAAM,IAAI,KAAK,CACb,GAAG,SAAS,CAAC,IAAI,8DAA8D,CAChF,CAAC;QACJ,CAAC;QAED,+CAA+C;QAC/C,0CAA0C;QAC1C,IAAI,WAAW,GAAqB,MAAM,CAAC;QAC3C,IAAI,MAAM,CAAC,KAAK,EAAE,WAAW,EAAE,CAAC;YAC9B,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;QACnD,CAAC;QACD,IAAI,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC;YAC9B,WAAW,GAAG,WAAW,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QACnD,CAAC;QACD,WAAW,GAAG,WAAW,CAAC,WAAW,EAAE,CAAC;QAExC,OAAO;YACL,IAAI,EAAE,UAAU;YAChB,WAAW,EAAE,gBAAgB;YAC7B,MAAM,EAAE,WAAW;YACnB,IAAI,EAAE,KAAK,EAAE,UAAmB,EAAE,EAAE;gBAClC,uDAAuD;gBAEvD,4DAA4D;gBAC5D,sDAAsD;gBACtD,sFAAsF;gBACtF,0BAA0B;gBAE1B,MAAM,aAAa,GAAI,UAAsC,EAAE,MAAM,CAAC;gBACtE,MAAM,cAAc,GAAG;oBACrB,GAAI,UAAsC;oBAC1C,WAAW;oBACX,MAAM,EAAE,aAAa,IAAI,MAAM;iBAChC,CAAC;gBAEF,8CAA8C;gBAC9C,MAAM,QAAQ,GAAG,IAAK,SAAiB,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;gBACjE,yEAAyE;gBACzE,OAAO,QAAQ,CAAC,MAAM,EAAE,CAAC;YAC3B,CAAC;SACF,CAAC;IACJ,CAAC;CACF"}
@@ -1,4 +1,4 @@
1
- import type { IWorkflowBubble, BubbleOperationResult, ServiceBubbleParams, BubbleContext } from './bubble.js';
1
+ import type { IWorkflowBubble, BubbleOperationResult, ServiceBubbleParams, BubbleContext } from '@bubblelab/bubble-core';
2
2
  import { BaseBubble } from './base-bubble-class.js';
3
3
  /**
4
4
  * WorkflowBubble - Higher-level abstraction that orchestrates ServiceBubbles
@@ -1 +1 @@
1
- {"version":3,"file":"workflow-bubble-class.d.ts","sourceRoot":"","sources":["../../src/types/workflow-bubble-class.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,qBAAqB,EACrB,mBAAmB,EACnB,aAAa,EACd,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEpD;;;;;;;;;GASG;AACH,8BAAsB,cAAc,CAChC,OAAO,SAAS,mBAAmB,GAAG,mBAAmB,EACzD,OAAO,SAAS,qBAAqB,GAAG,qBAAqB,CAE/D,SAAQ,UAAU,CAAC,OAAO,EAAE,OAAO,CACnC,YAAW,eAAe,CAAC,OAAO,CAAC;IAEnC,SAAgB,IAAI,EAAG,UAAU,CAAU;gBAE/B,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,aAAa;IAIpD;;OAEG;IACH,IAAI,aAAa,IAAI,OAAO,CAE3B;IAED;;OAEG;IACH,IAAI,cAAc,IAAI,aAAa,GAAG,SAAS,CAE9C;CACF"}
1
+ {"version":3,"file":"workflow-bubble-class.d.ts","sourceRoot":"","sources":["../../src/types/workflow-bubble-class.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,qBAAqB,EACrB,mBAAmB,EACnB,aAAa,EACd,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEpD;;;;;;;;;GASG;AACH,8BAAsB,cAAc,CAChC,OAAO,SAAS,mBAAmB,GAAG,mBAAmB,EACzD,OAAO,SAAS,qBAAqB,GAAG,qBAAqB,CAE/D,SAAQ,UAAU,CAAC,OAAO,EAAE,OAAO,CACnC,YAAW,eAAe,CAAC,OAAO,CAAC;IAEnC,SAAgB,IAAI,EAAG,UAAU,CAAU;gBAE/B,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,aAAa;IAIpD;;OAEG;IACH,IAAI,aAAa,IAAI,OAAO,CAE3B;IAED;;OAEG;IACH,IAAI,cAAc,IAAI,aAAa,GAAG,SAAS,CAE9C;CACF"}
@@ -0,0 +1,17 @@
1
+ import type { LLMResult } from '@langchain/core/outputs';
2
+ /**
3
+ * Extract and stream thinking tokens from different model providers
4
+ */
5
+ export declare function extractAndStreamThinkingTokens(output: LLMResult): string | undefined;
6
+ /**
7
+ * Format final response with special handling for Gemini image models and JSON mode
8
+ */
9
+ export declare function formatFinalResponse(response: string | unknown, modelName: string, jsonMode?: boolean): {
10
+ response: string;
11
+ error?: string;
12
+ };
13
+ /**
14
+ * Convert Gemini's inlineData format to LangChain-compatible data URI format
15
+ */
16
+ export declare function formatGeminiImageResponse(response: string | unknown): string;
17
+ //# sourceMappingURL=agent-formatter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-formatter.d.ts","sourceRoot":"","sources":["../../src/utils/agent-formatter.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACzD;;GAEG;AACH,wBAAgB,8BAA8B,CAC5C,MAAM,EAAE,SAAS,GAChB,MAAM,GAAG,SAAS,CAqDpB;AACD;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,MAAM,GAAG,OAAO,EAC1B,SAAS,EAAE,MAAM,EACjB,QAAQ,CAAC,EAAE,OAAO,GACjB;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAyDtC;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,CA2C5E"}