@bubblelab/bubble-core 0.1.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 (275) hide show
  1. package/LICENSE.txt +202 -0
  2. package/dist/bubble-bundle.d.ts +2021 -0
  3. package/dist/bubble-factory.d.ts +161 -0
  4. package/dist/bubble-factory.d.ts.map +1 -0
  5. package/dist/bubble-factory.js +426 -0
  6. package/dist/bubble-factory.js.map +1 -0
  7. package/dist/bubble-flow/bubble-flow-class.d.ts +19 -0
  8. package/dist/bubble-flow/bubble-flow-class.d.ts.map +1 -0
  9. package/dist/bubble-flow/bubble-flow-class.js +23 -0
  10. package/dist/bubble-flow/bubble-flow-class.js.map +1 -0
  11. package/dist/bubble-flow/sample/data-analyst-flow.d.ts +15 -0
  12. package/dist/bubble-flow/sample/data-analyst-flow.d.ts.map +1 -0
  13. package/dist/bubble-flow/sample/data-analyst-flow.js +63 -0
  14. package/dist/bubble-flow/sample/data-analyst-flow.js.map +1 -0
  15. package/dist/bubble-flow/sample/error-ts.d.ts +23 -0
  16. package/dist/bubble-flow/sample/error-ts.d.ts.map +1 -0
  17. package/dist/bubble-flow/sample/error-ts.js +31 -0
  18. package/dist/bubble-flow/sample/error-ts.js.map +1 -0
  19. package/dist/bubble-flow/sample/sanitytest.d.ts +10 -0
  20. package/dist/bubble-flow/sample/sanitytest.d.ts.map +1 -0
  21. package/dist/bubble-flow/sample/sanitytest.js +13 -0
  22. package/dist/bubble-flow/sample/sanitytest.js.map +1 -0
  23. package/dist/bubble-flow/sample/simple-webhook-2.d.ts +19 -0
  24. package/dist/bubble-flow/sample/simple-webhook-2.d.ts.map +1 -0
  25. package/dist/bubble-flow/sample/simple-webhook-2.js +23 -0
  26. package/dist/bubble-flow/sample/simple-webhook-2.js.map +1 -0
  27. package/dist/bubble-flow/sample/simple-webhook.d.ts +10 -0
  28. package/dist/bubble-flow/sample/simple-webhook.d.ts.map +1 -0
  29. package/dist/bubble-flow/sample/simple-webhook.js +18 -0
  30. package/dist/bubble-flow/sample/simple-webhook.js.map +1 -0
  31. package/dist/bubble-flow/sample/simplified-data-analysis.flow.d.ts +29 -0
  32. package/dist/bubble-flow/sample/simplified-data-analysis.flow.d.ts.map +1 -0
  33. package/dist/bubble-flow/sample/simplified-data-analysis.flow.js +150 -0
  34. package/dist/bubble-flow/sample/simplified-data-analysis.flow.js.map +1 -0
  35. package/dist/bubble-flow/sample/slack-v0.1.d.ts +10 -0
  36. package/dist/bubble-flow/sample/slack-v0.1.d.ts.map +1 -0
  37. package/dist/bubble-flow/sample/slack-v0.1.js +59 -0
  38. package/dist/bubble-flow/sample/slack-v0.1.js.map +1 -0
  39. package/dist/bubble-flow/sample/slackagenttest.d.ts +10 -0
  40. package/dist/bubble-flow/sample/slackagenttest.d.ts.map +1 -0
  41. package/dist/bubble-flow/sample/slackagenttest.js +59 -0
  42. package/dist/bubble-flow/sample/slackagenttest.js.map +1 -0
  43. package/dist/bubble-trigger/index.d.ts +2 -0
  44. package/dist/bubble-trigger/index.d.ts.map +1 -0
  45. package/dist/bubble-trigger/index.js +2 -0
  46. package/dist/bubble-trigger/index.js.map +1 -0
  47. package/dist/bubble-trigger/types.d.ts +87 -0
  48. package/dist/bubble-trigger/types.d.ts.map +1 -0
  49. package/dist/bubble-trigger/types.js +14 -0
  50. package/dist/bubble-trigger/types.js.map +1 -0
  51. package/dist/bubbles/service-bubble/ai-agent.d.ts +428 -0
  52. package/dist/bubbles/service-bubble/ai-agent.d.ts.map +1 -0
  53. package/dist/bubbles/service-bubble/ai-agent.js +881 -0
  54. package/dist/bubbles/service-bubble/ai-agent.js.map +1 -0
  55. package/dist/bubbles/service-bubble/gmail.d.ts +3073 -0
  56. package/dist/bubbles/service-bubble/gmail.d.ts.map +1 -0
  57. package/dist/bubbles/service-bubble/gmail.js +908 -0
  58. package/dist/bubbles/service-bubble/gmail.js.map +1 -0
  59. package/dist/bubbles/service-bubble/google-calendar.d.ts +3377 -0
  60. package/dist/bubbles/service-bubble/google-calendar.d.ts.map +1 -0
  61. package/dist/bubbles/service-bubble/google-calendar.js +527 -0
  62. package/dist/bubbles/service-bubble/google-calendar.js.map +1 -0
  63. package/dist/bubbles/service-bubble/google-drive.d.ts +1152 -0
  64. package/dist/bubbles/service-bubble/google-drive.d.ts.map +1 -0
  65. package/dist/bubbles/service-bubble/google-drive.js +943 -0
  66. package/dist/bubbles/service-bubble/google-drive.js.map +1 -0
  67. package/dist/bubbles/service-bubble/google-sheets.d.ts +1811 -0
  68. package/dist/bubbles/service-bubble/google-sheets.d.ts.map +1 -0
  69. package/dist/bubbles/service-bubble/google-sheets.js +904 -0
  70. package/dist/bubbles/service-bubble/google-sheets.js.map +1 -0
  71. package/dist/bubbles/service-bubble/hello-world.d.ts +74 -0
  72. package/dist/bubbles/service-bubble/hello-world.d.ts.map +1 -0
  73. package/dist/bubbles/service-bubble/hello-world.js +67 -0
  74. package/dist/bubbles/service-bubble/hello-world.js.map +1 -0
  75. package/dist/bubbles/service-bubble/http.d.ts +134 -0
  76. package/dist/bubbles/service-bubble/http.d.ts.map +1 -0
  77. package/dist/bubbles/service-bubble/http.js +184 -0
  78. package/dist/bubbles/service-bubble/http.js.map +1 -0
  79. package/dist/bubbles/service-bubble/postgresql.d.ts +180 -0
  80. package/dist/bubbles/service-bubble/postgresql.d.ts.map +1 -0
  81. package/dist/bubbles/service-bubble/postgresql.js +448 -0
  82. package/dist/bubbles/service-bubble/postgresql.js.map +1 -0
  83. package/dist/bubbles/service-bubble/resend.d.ts +301 -0
  84. package/dist/bubbles/service-bubble/resend.d.ts.map +1 -0
  85. package/dist/bubbles/service-bubble/resend.js +253 -0
  86. package/dist/bubbles/service-bubble/resend.js.map +1 -0
  87. package/dist/bubbles/service-bubble/slack.d.ts +5869 -0
  88. package/dist/bubbles/service-bubble/slack.d.ts.map +1 -0
  89. package/dist/bubbles/service-bubble/slack.js +1536 -0
  90. package/dist/bubbles/service-bubble/slack.js.map +1 -0
  91. package/dist/bubbles/service-bubble/storage.d.ts +571 -0
  92. package/dist/bubbles/service-bubble/storage.d.ts.map +1 -0
  93. package/dist/bubbles/service-bubble/storage.js +504 -0
  94. package/dist/bubbles/service-bubble/storage.js.map +1 -0
  95. package/dist/bubbles/tool-bubble/bubbleflow-validation-tool.d.ts +308 -0
  96. package/dist/bubbles/tool-bubble/bubbleflow-validation-tool.d.ts.map +1 -0
  97. package/dist/bubbles/tool-bubble/bubbleflow-validation-tool.js +285 -0
  98. package/dist/bubbles/tool-bubble/bubbleflow-validation-tool.js.map +1 -0
  99. package/dist/bubbles/tool-bubble/chart-js-tool.d.ts +416 -0
  100. package/dist/bubbles/tool-bubble/chart-js-tool.d.ts.map +1 -0
  101. package/dist/bubbles/tool-bubble/chart-js-tool.js +570 -0
  102. package/dist/bubbles/tool-bubble/chart-js-tool.js.map +1 -0
  103. package/dist/bubbles/tool-bubble/get-bubble-details-tool.d.ts +99 -0
  104. package/dist/bubbles/tool-bubble/get-bubble-details-tool.d.ts.map +1 -0
  105. package/dist/bubbles/tool-bubble/get-bubble-details-tool.js +645 -0
  106. package/dist/bubbles/tool-bubble/get-bubble-details-tool.js.map +1 -0
  107. package/dist/bubbles/tool-bubble/list-bubbles-tool.d.ts +112 -0
  108. package/dist/bubbles/tool-bubble/list-bubbles-tool.d.ts.map +1 -0
  109. package/dist/bubbles/tool-bubble/list-bubbles-tool.js +82 -0
  110. package/dist/bubbles/tool-bubble/list-bubbles-tool.js.map +1 -0
  111. package/dist/bubbles/tool-bubble/reddit-scrape-tool.d.ts +413 -0
  112. package/dist/bubbles/tool-bubble/reddit-scrape-tool.d.ts.map +1 -0
  113. package/dist/bubbles/tool-bubble/reddit-scrape-tool.js +327 -0
  114. package/dist/bubbles/tool-bubble/reddit-scrape-tool.js.map +1 -0
  115. package/dist/bubbles/tool-bubble/research-agent-tool.d.ts +122 -0
  116. package/dist/bubbles/tool-bubble/research-agent-tool.d.ts.map +1 -0
  117. package/dist/bubbles/tool-bubble/research-agent-tool.js +343 -0
  118. package/dist/bubbles/tool-bubble/research-agent-tool.js.map +1 -0
  119. package/dist/bubbles/tool-bubble/sql-query-tool.d.ts +131 -0
  120. package/dist/bubbles/tool-bubble/sql-query-tool.d.ts.map +1 -0
  121. package/dist/bubbles/tool-bubble/sql-query-tool.js +147 -0
  122. package/dist/bubbles/tool-bubble/sql-query-tool.js.map +1 -0
  123. package/dist/bubbles/tool-bubble/tool-template.d.ts +257 -0
  124. package/dist/bubbles/tool-bubble/tool-template.d.ts.map +1 -0
  125. package/dist/bubbles/tool-bubble/tool-template.js +238 -0
  126. package/dist/bubbles/tool-bubble/tool-template.js.map +1 -0
  127. package/dist/bubbles/tool-bubble/virtual-file-editor-example.d.ts +8 -0
  128. package/dist/bubbles/tool-bubble/virtual-file-editor-example.d.ts.map +1 -0
  129. package/dist/bubbles/tool-bubble/virtual-file-editor-example.js +65 -0
  130. package/dist/bubbles/tool-bubble/virtual-file-editor-example.js.map +1 -0
  131. package/dist/bubbles/tool-bubble/virtual-file-editor.tool.d.ts +125 -0
  132. package/dist/bubbles/tool-bubble/virtual-file-editor.tool.d.ts.map +1 -0
  133. package/dist/bubbles/tool-bubble/virtual-file-editor.tool.js +169 -0
  134. package/dist/bubbles/tool-bubble/virtual-file-editor.tool.js.map +1 -0
  135. package/dist/bubbles/tool-bubble/web-crawl-tool.d.ts +218 -0
  136. package/dist/bubbles/tool-bubble/web-crawl-tool.d.ts.map +1 -0
  137. package/dist/bubbles/tool-bubble/web-crawl-tool.js +255 -0
  138. package/dist/bubbles/tool-bubble/web-crawl-tool.js.map +1 -0
  139. package/dist/bubbles/tool-bubble/web-extract-tool.d.ts +134 -0
  140. package/dist/bubbles/tool-bubble/web-extract-tool.d.ts.map +1 -0
  141. package/dist/bubbles/tool-bubble/web-extract-tool.js +175 -0
  142. package/dist/bubbles/tool-bubble/web-extract-tool.js.map +1 -0
  143. package/dist/bubbles/tool-bubble/web-scrape-tool.d.ts +228 -0
  144. package/dist/bubbles/tool-bubble/web-scrape-tool.d.ts.map +1 -0
  145. package/dist/bubbles/tool-bubble/web-scrape-tool.js +214 -0
  146. package/dist/bubbles/tool-bubble/web-scrape-tool.js.map +1 -0
  147. package/dist/bubbles/tool-bubble/web-search-tool.d.ts +134 -0
  148. package/dist/bubbles/tool-bubble/web-search-tool.d.ts.map +1 -0
  149. package/dist/bubbles/tool-bubble/web-search-tool.js +155 -0
  150. package/dist/bubbles/tool-bubble/web-search-tool.js.map +1 -0
  151. package/dist/bubbles/workflow-bubble/bubbleflow-generator.workflow.d.ts +114 -0
  152. package/dist/bubbles/workflow-bubble/bubbleflow-generator.workflow.d.ts.map +1 -0
  153. package/dist/bubbles/workflow-bubble/bubbleflow-generator.workflow.js +777 -0
  154. package/dist/bubbles/workflow-bubble/bubbleflow-generator.workflow.js.map +1 -0
  155. package/dist/bubbles/workflow-bubble/bubblscript-generateor.workflow.d.ts +97 -0
  156. package/dist/bubbles/workflow-bubble/bubblscript-generateor.workflow.d.ts.map +1 -0
  157. package/dist/bubbles/workflow-bubble/bubblscript-generateor.workflow.js +327 -0
  158. package/dist/bubbles/workflow-bubble/bubblscript-generateor.workflow.js.map +1 -0
  159. package/dist/bubbles/workflow-bubble/database-analyzer.workflow.d.ts +303 -0
  160. package/dist/bubbles/workflow-bubble/database-analyzer.workflow.d.ts.map +1 -0
  161. package/dist/bubbles/workflow-bubble/database-analyzer.workflow.js +297 -0
  162. package/dist/bubbles/workflow-bubble/database-analyzer.workflow.js.map +1 -0
  163. package/dist/bubbles/workflow-bubble/file-editor-agent.workflow.d.ts +157 -0
  164. package/dist/bubbles/workflow-bubble/file-editor-agent.workflow.d.ts.map +1 -0
  165. package/dist/bubbles/workflow-bubble/file-editor-agent.workflow.js +310 -0
  166. package/dist/bubbles/workflow-bubble/file-editor-agent.workflow.js.map +1 -0
  167. package/dist/bubbles/workflow-bubble/generate-document.workflow.d.ts +543 -0
  168. package/dist/bubbles/workflow-bubble/generate-document.workflow.d.ts.map +1 -0
  169. package/dist/bubbles/workflow-bubble/generate-document.workflow.js +628 -0
  170. package/dist/bubbles/workflow-bubble/generate-document.workflow.js.map +1 -0
  171. package/dist/bubbles/workflow-bubble/parse-document.workflow.d.ts +679 -0
  172. package/dist/bubbles/workflow-bubble/parse-document.workflow.d.ts.map +1 -0
  173. package/dist/bubbles/workflow-bubble/parse-document.workflow.js +604 -0
  174. package/dist/bubbles/workflow-bubble/parse-document.workflow.js.map +1 -0
  175. package/dist/bubbles/workflow-bubble/pdf-form-operations.workflow.d.ts +1011 -0
  176. package/dist/bubbles/workflow-bubble/pdf-form-operations.workflow.d.ts.map +1 -0
  177. package/dist/bubbles/workflow-bubble/pdf-form-operations.workflow.js +841 -0
  178. package/dist/bubbles/workflow-bubble/pdf-form-operations.workflow.js.map +1 -0
  179. package/dist/bubbles/workflow-bubble/pdf-ocr.workflow.d.ts +883 -0
  180. package/dist/bubbles/workflow-bubble/pdf-ocr.workflow.d.ts.map +1 -0
  181. package/dist/bubbles/workflow-bubble/pdf-ocr.workflow.js +781 -0
  182. package/dist/bubbles/workflow-bubble/pdf-ocr.workflow.js.map +1 -0
  183. package/dist/bubbles/workflow-bubble/slack-data-assistant.workflow.d.ts +300 -0
  184. package/dist/bubbles/workflow-bubble/slack-data-assistant.workflow.d.ts.map +1 -0
  185. package/dist/bubbles/workflow-bubble/slack-data-assistant.workflow.js +508 -0
  186. package/dist/bubbles/workflow-bubble/slack-data-assistant.workflow.js.map +1 -0
  187. package/dist/bubbles/workflow-bubble/slack-formatter-agent.d.ts +731 -0
  188. package/dist/bubbles/workflow-bubble/slack-formatter-agent.d.ts.map +1 -0
  189. package/dist/bubbles/workflow-bubble/slack-formatter-agent.js +690 -0
  190. package/dist/bubbles/workflow-bubble/slack-formatter-agent.js.map +1 -0
  191. package/dist/bubbles/workflow-bubble/slack-notifier.workflow.d.ts +401 -0
  192. package/dist/bubbles/workflow-bubble/slack-notifier.workflow.d.ts.map +1 -0
  193. package/dist/bubbles/workflow-bubble/slack-notifier.workflow.js +382 -0
  194. package/dist/bubbles/workflow-bubble/slack-notifier.workflow.js.map +1 -0
  195. package/dist/bubbles/workflow-bubble/workflow-template.d.ts +144 -0
  196. package/dist/bubbles/workflow-bubble/workflow-template.d.ts.map +1 -0
  197. package/dist/bubbles/workflow-bubble/workflow-template.js +124 -0
  198. package/dist/bubbles/workflow-bubble/workflow-template.js.map +1 -0
  199. package/dist/index.d.ts +46 -0
  200. package/dist/index.d.ts.map +1 -0
  201. package/dist/index.js +53 -0
  202. package/dist/index.js.map +1 -0
  203. package/dist/logging/BubbleLogger.d.ts +146 -0
  204. package/dist/logging/BubbleLogger.d.ts.map +1 -0
  205. package/dist/logging/BubbleLogger.js +472 -0
  206. package/dist/logging/BubbleLogger.js.map +1 -0
  207. package/dist/logging/StreamingBubbleLogger.d.ts +85 -0
  208. package/dist/logging/StreamingBubbleLogger.d.ts.map +1 -0
  209. package/dist/logging/StreamingBubbleLogger.js +340 -0
  210. package/dist/logging/StreamingBubbleLogger.js.map +1 -0
  211. package/dist/types/ai-models.d.ts +4 -0
  212. package/dist/types/ai-models.d.ts.map +1 -0
  213. package/dist/types/ai-models.js +14 -0
  214. package/dist/types/ai-models.js.map +1 -0
  215. package/dist/types/available-tools.d.ts +4 -0
  216. package/dist/types/available-tools.d.ts.map +1 -0
  217. package/dist/types/available-tools.js +19 -0
  218. package/dist/types/available-tools.js.map +1 -0
  219. package/dist/types/base-bubble-class.d.ts +47 -0
  220. package/dist/types/base-bubble-class.d.ts.map +1 -0
  221. package/dist/types/base-bubble-class.js +212 -0
  222. package/dist/types/base-bubble-class.js.map +1 -0
  223. package/dist/types/bubble-errors.d.ts +44 -0
  224. package/dist/types/bubble-errors.d.ts.map +1 -0
  225. package/dist/types/bubble-errors.js +51 -0
  226. package/dist/types/bubble-errors.js.map +1 -0
  227. package/dist/types/bubble.d.ts +73 -0
  228. package/dist/types/bubble.d.ts.map +1 -0
  229. package/dist/types/bubble.js +2 -0
  230. package/dist/types/bubble.js.map +1 -0
  231. package/dist/types/credentials.d.ts +6 -0
  232. package/dist/types/credentials.d.ts.map +1 -0
  233. package/dist/types/credentials.js +6 -0
  234. package/dist/types/credentials.js.map +1 -0
  235. package/dist/types/service-bubble-class.d.ts +31 -0
  236. package/dist/types/service-bubble-class.d.ts.map +1 -0
  237. package/dist/types/service-bubble-class.js +36 -0
  238. package/dist/types/service-bubble-class.js.map +1 -0
  239. package/dist/types/streaming-events.d.ts +18 -0
  240. package/dist/types/streaming-events.d.ts.map +1 -0
  241. package/dist/types/streaming-events.js +5 -0
  242. package/dist/types/streaming-events.js.map +1 -0
  243. package/dist/types/tool-bubble-class.d.ts +19 -0
  244. package/dist/types/tool-bubble-class.d.ts.map +1 -0
  245. package/dist/types/tool-bubble-class.js +48 -0
  246. package/dist/types/tool-bubble-class.js.map +1 -0
  247. package/dist/types/workflow-bubble-class.d.ts +25 -0
  248. package/dist/types/workflow-bubble-class.d.ts.map +1 -0
  249. package/dist/types/workflow-bubble-class.js +30 -0
  250. package/dist/types/workflow-bubble-class.js.map +1 -0
  251. package/dist/utils/bubbleflow-parser.d.ts +32 -0
  252. package/dist/utils/bubbleflow-parser.d.ts.map +1 -0
  253. package/dist/utils/bubbleflow-parser.js +332 -0
  254. package/dist/utils/bubbleflow-parser.js.map +1 -0
  255. package/dist/utils/bubbleflow-validation.d.ts +9 -0
  256. package/dist/utils/bubbleflow-validation.d.ts.map +1 -0
  257. package/dist/utils/bubbleflow-validation.js +116 -0
  258. package/dist/utils/bubbleflow-validation.js.map +1 -0
  259. package/dist/utils/json-parsing.d.ts +20 -0
  260. package/dist/utils/json-parsing.d.ts.map +1 -0
  261. package/dist/utils/json-parsing.js +394 -0
  262. package/dist/utils/json-parsing.js.map +1 -0
  263. package/dist/utils/mock-data-generator.d.ts +43 -0
  264. package/dist/utils/mock-data-generator.d.ts.map +1 -0
  265. package/dist/utils/mock-data-generator.js +312 -0
  266. package/dist/utils/mock-data-generator.js.map +1 -0
  267. package/dist/utils/param-helper.d.ts +2 -0
  268. package/dist/utils/param-helper.d.ts.map +1 -0
  269. package/dist/utils/param-helper.js +5 -0
  270. package/dist/utils/param-helper.js.map +1 -0
  271. package/dist/utils/source-bubble-parser.d.ts +31 -0
  272. package/dist/utils/source-bubble-parser.d.ts.map +1 -0
  273. package/dist/utils/source-bubble-parser.js +231 -0
  274. package/dist/utils/source-bubble-parser.js.map +1 -0
  275. package/package.json +63 -0
@@ -0,0 +1,308 @@
1
+ /**
2
+ * BUBBLEFLOW VALIDATION TOOL
3
+ *
4
+ * A tool bubble that validates BubbleFlow TypeScript code for syntax, type errors,
5
+ * and bubble structure. Takes TypeScript bubbleflow code as input and outputs
6
+ * validation results including any errors and information about detected bubbles.
7
+ *
8
+ * Features:
9
+ * - TypeScript syntax validation
10
+ * - BubbleFlow class structure validation
11
+ * - Bubble instantiation parsing and analysis
12
+ * - Detailed error reporting with line numbers
13
+ * - Bubble count and type information
14
+ */
15
+ import { z } from 'zod';
16
+ import { ToolBubble } from '../../types/tool-bubble-class.js';
17
+ import type { BubbleContext } from '../../types/bubble.js';
18
+ /**
19
+ * Define the parameters schema using Zod
20
+ * This schema validates and types the input parameters for the validation tool
21
+ */
22
+ declare const BubbleFlowValidationToolParamsSchema: z.ZodObject<{
23
+ code: z.ZodString;
24
+ options: z.ZodOptional<z.ZodObject<{
25
+ includeDetails: z.ZodDefault<z.ZodBoolean>;
26
+ strictMode: z.ZodDefault<z.ZodBoolean>;
27
+ }, "strip", z.ZodTypeAny, {
28
+ includeDetails: boolean;
29
+ strictMode: boolean;
30
+ }, {
31
+ includeDetails?: boolean | undefined;
32
+ strictMode?: boolean | undefined;
33
+ }>>;
34
+ credentials: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
35
+ config: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
36
+ }, "strip", z.ZodTypeAny, {
37
+ code: string;
38
+ options?: {
39
+ includeDetails: boolean;
40
+ strictMode: boolean;
41
+ } | undefined;
42
+ credentials?: Record<string, string> | undefined;
43
+ config?: Record<string, unknown> | undefined;
44
+ }, {
45
+ code: string;
46
+ options?: {
47
+ includeDetails?: boolean | undefined;
48
+ strictMode?: boolean | undefined;
49
+ } | undefined;
50
+ credentials?: Record<string, string> | undefined;
51
+ config?: Record<string, unknown> | undefined;
52
+ }>;
53
+ /**
54
+ * Type definitions derived from schemas
55
+ */
56
+ type BubbleFlowValidationToolParamsInput = z.input<typeof BubbleFlowValidationToolParamsSchema>;
57
+ type BubbleFlowValidationToolParams = z.output<typeof BubbleFlowValidationToolParamsSchema>;
58
+ type BubbleFlowValidationToolResult = z.output<typeof BubbleFlowValidationToolResultSchema>;
59
+ /**
60
+ * Define the result schema
61
+ * This schema defines what the validation tool returns
62
+ */
63
+ declare const BubbleFlowValidationToolResultSchema: z.ZodObject<{
64
+ valid: z.ZodBoolean;
65
+ errors: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
66
+ bubbleCount: z.ZodOptional<z.ZodNumber>;
67
+ bubbles: z.ZodOptional<z.ZodArray<z.ZodObject<{
68
+ variableName: z.ZodString;
69
+ bubbleName: z.ZodString;
70
+ className: z.ZodString;
71
+ hasAwait: z.ZodBoolean;
72
+ hasActionCall: z.ZodBoolean;
73
+ parameterCount: z.ZodNumber;
74
+ }, "strip", z.ZodTypeAny, {
75
+ bubbleName: string;
76
+ variableName: string;
77
+ className: string;
78
+ hasAwait: boolean;
79
+ hasActionCall: boolean;
80
+ parameterCount: number;
81
+ }, {
82
+ bubbleName: string;
83
+ variableName: string;
84
+ className: string;
85
+ hasAwait: boolean;
86
+ hasActionCall: boolean;
87
+ parameterCount: number;
88
+ }>, "many">>;
89
+ metadata: z.ZodObject<{
90
+ validatedAt: z.ZodString;
91
+ codeLength: z.ZodNumber;
92
+ strictMode: z.ZodBoolean;
93
+ }, "strip", z.ZodTypeAny, {
94
+ strictMode: boolean;
95
+ validatedAt: string;
96
+ codeLength: number;
97
+ }, {
98
+ strictMode: boolean;
99
+ validatedAt: string;
100
+ codeLength: number;
101
+ }>;
102
+ success: z.ZodBoolean;
103
+ error: z.ZodString;
104
+ }, "strip", z.ZodTypeAny, {
105
+ valid: boolean;
106
+ success: boolean;
107
+ error: string;
108
+ metadata: {
109
+ strictMode: boolean;
110
+ validatedAt: string;
111
+ codeLength: number;
112
+ };
113
+ bubbles?: {
114
+ bubbleName: string;
115
+ variableName: string;
116
+ className: string;
117
+ hasAwait: boolean;
118
+ hasActionCall: boolean;
119
+ parameterCount: number;
120
+ }[] | undefined;
121
+ errors?: string[] | undefined;
122
+ bubbleCount?: number | undefined;
123
+ }, {
124
+ valid: boolean;
125
+ success: boolean;
126
+ error: string;
127
+ metadata: {
128
+ strictMode: boolean;
129
+ validatedAt: string;
130
+ codeLength: number;
131
+ };
132
+ bubbles?: {
133
+ bubbleName: string;
134
+ variableName: string;
135
+ className: string;
136
+ hasAwait: boolean;
137
+ hasActionCall: boolean;
138
+ parameterCount: number;
139
+ }[] | undefined;
140
+ errors?: string[] | undefined;
141
+ bubbleCount?: number | undefined;
142
+ }>;
143
+ /**
144
+ * BubbleFlow Validation Tool
145
+ * Validates TypeScript BubbleFlow code and provides detailed analysis
146
+ */
147
+ export declare class BubbleFlowValidationTool extends ToolBubble<BubbleFlowValidationToolParams, BubbleFlowValidationToolResult> {
148
+ /**
149
+ * REQUIRED STATIC METADATA
150
+ */
151
+ static readonly type: "tool";
152
+ static readonly bubbleName = "bubbleflow-validation-tool";
153
+ static readonly schema: z.ZodObject<{
154
+ code: z.ZodString;
155
+ options: z.ZodOptional<z.ZodObject<{
156
+ includeDetails: z.ZodDefault<z.ZodBoolean>;
157
+ strictMode: z.ZodDefault<z.ZodBoolean>;
158
+ }, "strip", z.ZodTypeAny, {
159
+ includeDetails: boolean;
160
+ strictMode: boolean;
161
+ }, {
162
+ includeDetails?: boolean | undefined;
163
+ strictMode?: boolean | undefined;
164
+ }>>;
165
+ credentials: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
166
+ config: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
167
+ }, "strip", z.ZodTypeAny, {
168
+ code: string;
169
+ options?: {
170
+ includeDetails: boolean;
171
+ strictMode: boolean;
172
+ } | undefined;
173
+ credentials?: Record<string, string> | undefined;
174
+ config?: Record<string, unknown> | undefined;
175
+ }, {
176
+ code: string;
177
+ options?: {
178
+ includeDetails?: boolean | undefined;
179
+ strictMode?: boolean | undefined;
180
+ } | undefined;
181
+ credentials?: Record<string, string> | undefined;
182
+ config?: Record<string, unknown> | undefined;
183
+ }>;
184
+ static readonly resultSchema: z.ZodObject<{
185
+ valid: z.ZodBoolean;
186
+ errors: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
187
+ bubbleCount: z.ZodOptional<z.ZodNumber>;
188
+ bubbles: z.ZodOptional<z.ZodArray<z.ZodObject<{
189
+ variableName: z.ZodString;
190
+ bubbleName: z.ZodString;
191
+ className: z.ZodString;
192
+ hasAwait: z.ZodBoolean;
193
+ hasActionCall: z.ZodBoolean;
194
+ parameterCount: z.ZodNumber;
195
+ }, "strip", z.ZodTypeAny, {
196
+ bubbleName: string;
197
+ variableName: string;
198
+ className: string;
199
+ hasAwait: boolean;
200
+ hasActionCall: boolean;
201
+ parameterCount: number;
202
+ }, {
203
+ bubbleName: string;
204
+ variableName: string;
205
+ className: string;
206
+ hasAwait: boolean;
207
+ hasActionCall: boolean;
208
+ parameterCount: number;
209
+ }>, "many">>;
210
+ metadata: z.ZodObject<{
211
+ validatedAt: z.ZodString;
212
+ codeLength: z.ZodNumber;
213
+ strictMode: z.ZodBoolean;
214
+ }, "strip", z.ZodTypeAny, {
215
+ strictMode: boolean;
216
+ validatedAt: string;
217
+ codeLength: number;
218
+ }, {
219
+ strictMode: boolean;
220
+ validatedAt: string;
221
+ codeLength: number;
222
+ }>;
223
+ success: z.ZodBoolean;
224
+ error: z.ZodString;
225
+ }, "strip", z.ZodTypeAny, {
226
+ valid: boolean;
227
+ success: boolean;
228
+ error: string;
229
+ metadata: {
230
+ strictMode: boolean;
231
+ validatedAt: string;
232
+ codeLength: number;
233
+ };
234
+ bubbles?: {
235
+ bubbleName: string;
236
+ variableName: string;
237
+ className: string;
238
+ hasAwait: boolean;
239
+ hasActionCall: boolean;
240
+ parameterCount: number;
241
+ }[] | undefined;
242
+ errors?: string[] | undefined;
243
+ bubbleCount?: number | undefined;
244
+ }, {
245
+ valid: boolean;
246
+ success: boolean;
247
+ error: string;
248
+ metadata: {
249
+ strictMode: boolean;
250
+ validatedAt: string;
251
+ codeLength: number;
252
+ };
253
+ bubbles?: {
254
+ bubbleName: string;
255
+ variableName: string;
256
+ className: string;
257
+ hasAwait: boolean;
258
+ hasActionCall: boolean;
259
+ parameterCount: number;
260
+ }[] | undefined;
261
+ errors?: string[] | undefined;
262
+ bubbleCount?: number | undefined;
263
+ }>;
264
+ static readonly shortDescription = "Validates BubbleFlow TypeScript code for syntax and structure";
265
+ static readonly longDescription = "\n A comprehensive validation tool for BubbleFlow TypeScript code.\n \n What it does:\n - Validates TypeScript syntax and compilation\n - Checks BubbleFlow class structure and requirements\n - Parses and analyzes bubble instantiations\n - Provides detailed error reporting with line numbers\n - Returns metadata about detected bubbles\n \n How it works:\n - Uses TypeScript compiler API for syntax validation\n - Validates that code extends BubbleFlow and has handle method\n - Parses bubble instantiations using AST analysis\n - Maps bubble class names to registered bubble types\n \n Use cases:\n - When an AI agent needs to validate user-provided BubbleFlow code\n - When checking code before execution or deployment\n - When providing feedback on BubbleFlow implementation\n - When analyzing bubble usage patterns in code\n ";
266
+ static readonly alias = "validate-bubbleflow";
267
+ private bubbleFactory;
268
+ /**
269
+ * Constructor
270
+ */
271
+ constructor(params: BubbleFlowValidationToolParamsInput, context?: BubbleContext);
272
+ private initializeBubbleFactory;
273
+ /**
274
+ * Main action method - performs BubbleFlow validation
275
+ */
276
+ performAction(context?: BubbleContext): Promise<BubbleFlowValidationToolResult>;
277
+ }
278
+ export {};
279
+ /**
280
+ * REGISTRATION AND USAGE
281
+ *
282
+ * 1. Register the tool in the BubbleFactory:
283
+ * ```typescript
284
+ * import { BubbleFlowValidationTool } from './services/bubbleflow-validation-tool.js';
285
+ *
286
+ * // In registerDefaults() method:
287
+ * this.register('bubbleflow-validation', BubbleFlowValidationTool as BubbleClassWithMetadata);
288
+ * ```
289
+ *
290
+ * 2. Direct usage:
291
+ * ```typescript
292
+ * const tool = new BubbleFlowValidationTool({
293
+ * code: 'export class TestFlow extends BubbleFlow<"webhook/http"> { ... }',
294
+ * options: { includeDetails: true }
295
+ * });
296
+ * const result = await tool.action();
297
+ * ```
298
+ *
299
+ * 3. AI Agent usage:
300
+ * ```typescript
301
+ * // AI agent calls with:
302
+ * {
303
+ * "code": "export class TestFlow extends BubbleFlow<'webhook/http'> { ... }",
304
+ * "options": { "includeDetails": true, "strictMode": true }
305
+ * }
306
+ * ```
307
+ */
308
+ //# sourceMappingURL=bubbleflow-validation-tool.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bubbleflow-validation-tool.d.ts","sourceRoot":"","sources":["../../../src/bubbles/tool-bubble/bubbleflow-validation-tool.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAC;AAC9D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAQ3D;;;GAGG;AACH,QAAA,MAAM,oCAAoC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAgCxC,CAAC;AAEH;;GAEG;AACH,KAAK,mCAAmC,GAAG,CAAC,CAAC,KAAK,CAChD,OAAO,oCAAoC,CAC5C,CAAC;AACF,KAAK,8BAA8B,GAAG,CAAC,CAAC,MAAM,CAC5C,OAAO,oCAAoC,CAC5C,CAAC;AACF,KAAK,8BAA8B,GAAG,CAAC,CAAC,MAAM,CAC5C,OAAO,oCAAoC,CAC5C,CAAC;AAEF;;;GAGG;AACH,QAAA,MAAM,oCAAoC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA+CxC,CAAC;AAEH;;;GAGG;AACH,qBAAa,wBAAyB,SAAQ,UAAU,CACtD,8BAA8B,EAC9B,8BAA8B,CAC/B;IACC;;OAEG;IAGH,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAG,MAAM,CAAU;IAGvC,MAAM,CAAC,QAAQ,CAAC,UAAU,gCAAgC;IAG1D,MAAM,CAAC,QAAQ,CAAC,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAwC;IAC9D,MAAM,CAAC,QAAQ,CAAC,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAwC;IAGpE,MAAM,CAAC,QAAQ,CAAC,gBAAgB,mEACkC;IAGlE,MAAM,CAAC,QAAQ,CAAC,eAAe,+3BAqB7B;IAGF,MAAM,CAAC,QAAQ,CAAC,KAAK,yBAAyB;IAE9C,OAAO,CAAC,aAAa,CAAgB;IAErC;;OAEG;gBAED,MAAM,EAAE,mCAAmC,EAC3C,OAAO,CAAC,EAAE,aAAa;YAQX,uBAAuB;IAIrC;;OAEG;IACG,aAAa,CACjB,OAAO,CAAC,EAAE,aAAa,GACtB,OAAO,CAAC,8BAA8B,CAAC;CAgH3C;;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG"}
@@ -0,0 +1,285 @@
1
+ /**
2
+ * BUBBLEFLOW VALIDATION TOOL
3
+ *
4
+ * A tool bubble that validates BubbleFlow TypeScript code for syntax, type errors,
5
+ * and bubble structure. Takes TypeScript bubbleflow code as input and outputs
6
+ * validation results including any errors and information about detected bubbles.
7
+ *
8
+ * Features:
9
+ * - TypeScript syntax validation
10
+ * - BubbleFlow class structure validation
11
+ * - Bubble instantiation parsing and analysis
12
+ * - Detailed error reporting with line numbers
13
+ * - Bubble count and type information
14
+ */
15
+ import { z } from 'zod';
16
+ import { ToolBubble } from '../../types/tool-bubble-class.js';
17
+ import { BubbleFactory } from '../../bubble-factory.js';
18
+ import { validateBubbleFlow, } from '../../utils/bubbleflow-validation.js';
19
+ import { parseBubbleFlow } from '../../utils/bubbleflow-parser.js';
20
+ /**
21
+ * Define the parameters schema using Zod
22
+ * This schema validates and types the input parameters for the validation tool
23
+ */
24
+ const BubbleFlowValidationToolParamsSchema = z.object({
25
+ // The TypeScript code to validate
26
+ code: z.string().describe('TypeScript code to validate'),
27
+ // Optional validation options
28
+ options: z
29
+ .object({
30
+ includeDetails: z
31
+ .boolean()
32
+ .default(true)
33
+ .describe('Include detailed bubble analysis'),
34
+ strictMode: z
35
+ .boolean()
36
+ .default(true)
37
+ .describe('Enable strict TypeScript validation'),
38
+ })
39
+ .optional()
40
+ .describe('Validation configuration options'),
41
+ // Credentials (not needed for this tool but following template)
42
+ credentials: z
43
+ .record(z.string(), z.string())
44
+ .optional()
45
+ .describe('Credentials (HIDDEN from AI - injected at runtime)'),
46
+ // Optional configuration
47
+ config: z
48
+ .record(z.string(), z.unknown())
49
+ .optional()
50
+ .describe('Configuration for the validation tool (HIDDEN from AI - injected at runtime)'),
51
+ });
52
+ /**
53
+ * Define the result schema
54
+ * This schema defines what the validation tool returns
55
+ */
56
+ const BubbleFlowValidationToolResultSchema = z.object({
57
+ // Validation results
58
+ valid: z.boolean().describe('Whether the code is valid'),
59
+ errors: z
60
+ .array(z.string())
61
+ .optional()
62
+ .describe('List of validation errors if any'),
63
+ // Bubble analysis (when validation succeeds)
64
+ bubbleCount: z
65
+ .number()
66
+ .optional()
67
+ .describe('Number of bubbles found in the code'),
68
+ bubbles: z
69
+ .array(z.object({
70
+ variableName: z
71
+ .string()
72
+ .describe('Variable name assigned to the bubble'),
73
+ bubbleName: z
74
+ .string()
75
+ .describe('Type of bubble (e.g., postgresql, slack)'),
76
+ className: z
77
+ .string()
78
+ .describe('Bubble class name (e.g., PostgreSQLBubble)'),
79
+ hasAwait: z.boolean().describe('Whether the bubble call is awaited'),
80
+ hasActionCall: z.boolean().describe('Whether .action() is called'),
81
+ parameterCount: z
82
+ .number()
83
+ .describe('Number of parameters passed to the bubble'),
84
+ }))
85
+ .optional()
86
+ .describe('Details about each bubble found'),
87
+ // Metadata
88
+ metadata: z.object({
89
+ validatedAt: z.string().describe('Timestamp when validation was performed'),
90
+ codeLength: z.number().describe('Length of the code in characters'),
91
+ strictMode: z.boolean().describe('Whether strict mode was used'),
92
+ }),
93
+ // Standard result fields
94
+ success: z
95
+ .boolean()
96
+ .describe('Whether the validation operation was successful'),
97
+ error: z.string().describe('Error message if validation failed'),
98
+ });
99
+ /**
100
+ * BubbleFlow Validation Tool
101
+ * Validates TypeScript BubbleFlow code and provides detailed analysis
102
+ */
103
+ export class BubbleFlowValidationTool extends ToolBubble {
104
+ /**
105
+ * REQUIRED STATIC METADATA
106
+ */
107
+ // Bubble type - always 'tool' for tool bubbles
108
+ static type = 'tool';
109
+ // Unique identifier for the tool
110
+ static bubbleName = 'bubbleflow-validation-tool';
111
+ // Schemas for validation
112
+ static schema = BubbleFlowValidationToolParamsSchema;
113
+ static resultSchema = BubbleFlowValidationToolResultSchema;
114
+ // Short description
115
+ static shortDescription = 'Validates BubbleFlow TypeScript code for syntax and structure';
116
+ // Long description with detailed information
117
+ static longDescription = `
118
+ A comprehensive validation tool for BubbleFlow TypeScript code.
119
+
120
+ What it does:
121
+ - Validates TypeScript syntax and compilation
122
+ - Checks BubbleFlow class structure and requirements
123
+ - Parses and analyzes bubble instantiations
124
+ - Provides detailed error reporting with line numbers
125
+ - Returns metadata about detected bubbles
126
+
127
+ How it works:
128
+ - Uses TypeScript compiler API for syntax validation
129
+ - Validates that code extends BubbleFlow and has handle method
130
+ - Parses bubble instantiations using AST analysis
131
+ - Maps bubble class names to registered bubble types
132
+
133
+ Use cases:
134
+ - When an AI agent needs to validate user-provided BubbleFlow code
135
+ - When checking code before execution or deployment
136
+ - When providing feedback on BubbleFlow implementation
137
+ - When analyzing bubble usage patterns in code
138
+ `;
139
+ // Short alias for the tool
140
+ static alias = 'validate-bubbleflow';
141
+ bubbleFactory;
142
+ /**
143
+ * Constructor
144
+ */
145
+ constructor(params, context) {
146
+ super(params, context);
147
+ this.bubbleFactory = new BubbleFactory();
148
+ // Initialize with defaults for bubble class registry - this is async but we need to handle it
149
+ this.initializeBubbleFactory();
150
+ }
151
+ async initializeBubbleFactory() {
152
+ await this.bubbleFactory.registerDefaults();
153
+ }
154
+ /**
155
+ * Main action method - performs BubbleFlow validation
156
+ */
157
+ async performAction(context) {
158
+ // Context is available but not used in this tool
159
+ void context;
160
+ try {
161
+ // Ensure BubbleFactory is initialized before validation
162
+ await this.bubbleFactory.registerDefaults();
163
+ // Extract parameters
164
+ const { code, options } = this.params;
165
+ const includeDetails = options?.includeDetails ?? true;
166
+ const strictMode = options?.strictMode ?? true;
167
+ if (!code || code.trim().length === 0) {
168
+ return {
169
+ valid: false,
170
+ errors: ['Code cannot be empty'],
171
+ metadata: {
172
+ validatedAt: new Date().toISOString(),
173
+ codeLength: 0,
174
+ strictMode,
175
+ },
176
+ success: false,
177
+ error: 'Code cannot be empty',
178
+ };
179
+ }
180
+ // Perform TypeScript validation
181
+ const validationResult = await validateBubbleFlow(code, this.bubbleFactory);
182
+ if (!validationResult.valid) {
183
+ return {
184
+ valid: false,
185
+ errors: validationResult.errors || ['Unknown validation error'],
186
+ metadata: {
187
+ validatedAt: new Date().toISOString(),
188
+ codeLength: code.length,
189
+ strictMode,
190
+ },
191
+ success: false,
192
+ error: `Validation failed: ${validationResult.errors?.[0] || 'Unknown error'}`,
193
+ };
194
+ }
195
+ // If validation passes and details are requested, parse bubbles
196
+ let bubbleDetails;
197
+ let bubbleCount = 0;
198
+ if (includeDetails) {
199
+ const parseResult = parseBubbleFlow(code, this.bubbleFactory);
200
+ if (!parseResult.success) {
201
+ return {
202
+ valid: false,
203
+ errors: parseResult.errors || ['Failed to parse bubble details'],
204
+ metadata: {
205
+ validatedAt: new Date().toISOString(),
206
+ codeLength: code.length,
207
+ strictMode,
208
+ },
209
+ success: false,
210
+ error: `Bubble parsing failed: ${parseResult.errors?.[0] || 'Unknown error'}`,
211
+ };
212
+ }
213
+ bubbleCount = Object.keys(parseResult.bubbles).length;
214
+ // Transform parsed bubbles to result format
215
+ bubbleDetails = Object.values(parseResult.bubbles).map((bubble) => ({
216
+ variableName: bubble.variableName,
217
+ bubbleName: bubble.bubbleName,
218
+ className: bubble.className,
219
+ hasAwait: bubble.hasAwait,
220
+ hasActionCall: bubble.hasActionCall,
221
+ parameterCount: bubble.parameters.length,
222
+ }));
223
+ }
224
+ // Return successful result
225
+ return {
226
+ valid: true,
227
+ bubbleCount,
228
+ bubbles: bubbleDetails,
229
+ metadata: {
230
+ validatedAt: new Date().toISOString(),
231
+ codeLength: code.length,
232
+ strictMode,
233
+ },
234
+ success: true,
235
+ error: '',
236
+ };
237
+ }
238
+ catch (error) {
239
+ // Handle unexpected errors gracefully
240
+ return {
241
+ valid: false,
242
+ errors: [
243
+ error instanceof Error ? error.message : 'Unknown validation error',
244
+ ],
245
+ metadata: {
246
+ validatedAt: new Date().toISOString(),
247
+ codeLength: this.params.code?.length || 0,
248
+ strictMode: this.params.options?.strictMode ?? true,
249
+ },
250
+ success: false,
251
+ error: error instanceof Error ? error.message : 'Unknown validation error',
252
+ };
253
+ }
254
+ }
255
+ }
256
+ /**
257
+ * REGISTRATION AND USAGE
258
+ *
259
+ * 1. Register the tool in the BubbleFactory:
260
+ * ```typescript
261
+ * import { BubbleFlowValidationTool } from './services/bubbleflow-validation-tool.js';
262
+ *
263
+ * // In registerDefaults() method:
264
+ * this.register('bubbleflow-validation', BubbleFlowValidationTool as BubbleClassWithMetadata);
265
+ * ```
266
+ *
267
+ * 2. Direct usage:
268
+ * ```typescript
269
+ * const tool = new BubbleFlowValidationTool({
270
+ * code: 'export class TestFlow extends BubbleFlow<"webhook/http"> { ... }',
271
+ * options: { includeDetails: true }
272
+ * });
273
+ * const result = await tool.action();
274
+ * ```
275
+ *
276
+ * 3. AI Agent usage:
277
+ * ```typescript
278
+ * // AI agent calls with:
279
+ * {
280
+ * "code": "export class TestFlow extends BubbleFlow<'webhook/http'> { ... }",
281
+ * "options": { "includeDetails": true, "strictMode": true }
282
+ * }
283
+ * ```
284
+ */
285
+ //# sourceMappingURL=bubbleflow-validation-tool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bubbleflow-validation-tool.js","sourceRoot":"","sources":["../../../src/bubbles/tool-bubble/bubbleflow-validation-tool.ts"],"names":[],"mappings":"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"}