@bubblelab/bubble-core 0.1.10 → 0.1.11

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 (298) hide show
  1. package/dist/bubble-bundle.d.ts +759 -350
  2. package/dist/bubble-factory.d.ts.map +1 -1
  3. package/dist/bubble-factory.js +125 -35
  4. package/dist/bubble-factory.js.map +1 -1
  5. package/dist/bubble-flow/bubble-flow-class.d.ts +5 -0
  6. package/dist/bubble-flow/bubble-flow-class.d.ts.map +1 -1
  7. package/dist/bubble-flow/bubble-flow-class.js +20 -0
  8. package/dist/bubble-flow/bubble-flow-class.js.map +1 -1
  9. package/dist/bubble-flow/sample/simplified-data-analysis.flow.d.ts.map +1 -1
  10. package/dist/bubble-flow/sample/simplified-data-analysis.flow.js +6 -3
  11. package/dist/bubble-flow/sample/simplified-data-analysis.flow.js.map +1 -1
  12. package/dist/bubbles/service-bubble/agi-inc.d.ts +1121 -0
  13. package/dist/bubbles/service-bubble/agi-inc.d.ts.map +1 -0
  14. package/dist/bubbles/service-bubble/agi-inc.js +730 -0
  15. package/dist/bubbles/service-bubble/agi-inc.js.map +1 -0
  16. package/dist/bubbles/service-bubble/ai-agent.d.ts +277 -65
  17. package/dist/bubbles/service-bubble/ai-agent.d.ts.map +1 -1
  18. package/dist/bubbles/service-bubble/ai-agent.js +533 -399
  19. package/dist/bubbles/service-bubble/ai-agent.js.map +1 -1
  20. package/dist/bubbles/service-bubble/airtable.d.ts +1753 -0
  21. package/dist/bubbles/service-bubble/airtable.d.ts.map +1 -0
  22. package/dist/bubbles/service-bubble/airtable.js +1173 -0
  23. package/dist/bubbles/service-bubble/airtable.js.map +1 -0
  24. package/dist/bubbles/service-bubble/apify/actors/google-maps-scraper.d.ts +240 -0
  25. package/dist/bubbles/service-bubble/apify/actors/google-maps-scraper.d.ts.map +1 -0
  26. package/dist/bubbles/service-bubble/apify/actors/google-maps-scraper.js +119 -0
  27. package/dist/bubbles/service-bubble/apify/actors/google-maps-scraper.js.map +1 -0
  28. package/dist/bubbles/service-bubble/apify/actors/instagram-hashtag-scraper.d.ts +4 -4
  29. package/dist/bubbles/service-bubble/apify/actors/instagram-scraper.d.ts +14 -14
  30. package/dist/bubbles/service-bubble/apify/actors/linkedin-jobs-scraper.d.ts +137 -0
  31. package/dist/bubbles/service-bubble/apify/actors/linkedin-jobs-scraper.d.ts.map +1 -0
  32. package/dist/bubbles/service-bubble/apify/actors/linkedin-jobs-scraper.js +81 -0
  33. package/dist/bubbles/service-bubble/apify/actors/linkedin-jobs-scraper.js.map +1 -0
  34. package/dist/bubbles/service-bubble/apify/actors/linkedin-posts-search.d.ts +6 -6
  35. package/dist/bubbles/service-bubble/apify/actors/linkedin-profile-posts.d.ts +32 -32
  36. package/dist/bubbles/service-bubble/apify/actors/tiktok-scraper.d.ts +488 -0
  37. package/dist/bubbles/service-bubble/apify/actors/tiktok-scraper.d.ts.map +1 -0
  38. package/dist/bubbles/service-bubble/apify/actors/tiktok-scraper.js +463 -0
  39. package/dist/bubbles/service-bubble/apify/actors/tiktok-scraper.js.map +1 -0
  40. package/dist/bubbles/service-bubble/apify/actors/twitter-scraper.d.ts +262 -0
  41. package/dist/bubbles/service-bubble/apify/actors/twitter-scraper.d.ts.map +1 -0
  42. package/dist/bubbles/service-bubble/apify/actors/twitter-scraper.js +291 -0
  43. package/dist/bubbles/service-bubble/apify/actors/twitter-scraper.js.map +1 -0
  44. package/dist/bubbles/service-bubble/apify/actors/youtube-scraper.d.ts +12 -12
  45. package/dist/bubbles/service-bubble/apify/apify-scraper.schema.d.ts +1301 -170
  46. package/dist/bubbles/service-bubble/apify/apify-scraper.schema.d.ts.map +1 -1
  47. package/dist/bubbles/service-bubble/apify/apify-scraper.schema.js +32 -0
  48. package/dist/bubbles/service-bubble/apify/apify-scraper.schema.js.map +1 -1
  49. package/dist/bubbles/service-bubble/apify/apify.d.ts +162 -17
  50. package/dist/bubbles/service-bubble/apify/apify.d.ts.map +1 -1
  51. package/dist/bubbles/service-bubble/apify/apify.js +205 -32
  52. package/dist/bubbles/service-bubble/apify/apify.js.map +1 -1
  53. package/dist/bubbles/service-bubble/eleven-labs.d.ts +421 -0
  54. package/dist/bubbles/service-bubble/eleven-labs.d.ts.map +1 -0
  55. package/dist/bubbles/service-bubble/eleven-labs.js +479 -0
  56. package/dist/bubbles/service-bubble/eleven-labs.js.map +1 -0
  57. package/dist/bubbles/service-bubble/firecrawl.d.ts +37748 -0
  58. package/dist/bubbles/service-bubble/firecrawl.d.ts.map +1 -0
  59. package/dist/bubbles/service-bubble/firecrawl.js +1489 -0
  60. package/dist/bubbles/service-bubble/firecrawl.js.map +1 -0
  61. package/dist/bubbles/service-bubble/followupboss.d.ts +6822 -0
  62. package/dist/bubbles/service-bubble/followupboss.d.ts.map +1 -0
  63. package/dist/bubbles/service-bubble/followupboss.js +1394 -0
  64. package/dist/bubbles/service-bubble/followupboss.js.map +1 -0
  65. package/dist/bubbles/service-bubble/github.d.ts +2399 -0
  66. package/dist/bubbles/service-bubble/github.d.ts.map +1 -0
  67. package/dist/bubbles/service-bubble/github.js +1052 -0
  68. package/dist/bubbles/service-bubble/github.js.map +1 -0
  69. package/dist/bubbles/service-bubble/gmail.d.ts +180 -180
  70. package/dist/bubbles/service-bubble/google-calendar.d.ts +60 -60
  71. package/dist/bubbles/service-bubble/google-drive.d.ts +37 -36
  72. package/dist/bubbles/service-bubble/google-drive.d.ts.map +1 -1
  73. package/dist/bubbles/service-bubble/google-drive.js +35 -3
  74. package/dist/bubbles/service-bubble/google-drive.js.map +1 -1
  75. package/dist/bubbles/service-bubble/google-sheets/google-sheets.d.ts +943 -0
  76. package/dist/bubbles/service-bubble/google-sheets/google-sheets.d.ts.map +1 -0
  77. package/dist/bubbles/service-bubble/google-sheets/google-sheets.integration.flow.d.ts +31 -0
  78. package/dist/bubbles/service-bubble/google-sheets/google-sheets.integration.flow.d.ts.map +1 -0
  79. package/dist/bubbles/service-bubble/google-sheets/google-sheets.integration.flow.js +184 -0
  80. package/dist/bubbles/service-bubble/google-sheets/google-sheets.integration.flow.js.map +1 -0
  81. package/dist/bubbles/service-bubble/google-sheets/google-sheets.js +401 -0
  82. package/dist/bubbles/service-bubble/google-sheets/google-sheets.js.map +1 -0
  83. package/dist/bubbles/service-bubble/google-sheets/google-sheets.schema.d.ts +1024 -0
  84. package/dist/bubbles/service-bubble/google-sheets/google-sheets.schema.d.ts.map +1 -0
  85. package/dist/bubbles/service-bubble/{google-sheets.js → google-sheets/google-sheets.schema.js} +45 -409
  86. package/dist/bubbles/service-bubble/google-sheets/google-sheets.schema.js.map +1 -0
  87. package/dist/bubbles/service-bubble/google-sheets/google-sheets.utils.d.ts +38 -0
  88. package/dist/bubbles/service-bubble/google-sheets/google-sheets.utils.d.ts.map +1 -0
  89. package/dist/bubbles/service-bubble/google-sheets/google-sheets.utils.js +183 -0
  90. package/dist/bubbles/service-bubble/google-sheets/google-sheets.utils.js.map +1 -0
  91. package/dist/bubbles/service-bubble/google-sheets/index.d.ts +4 -0
  92. package/dist/bubbles/service-bubble/google-sheets/index.d.ts.map +1 -0
  93. package/dist/bubbles/service-bubble/google-sheets/index.js +4 -0
  94. package/dist/bubbles/service-bubble/google-sheets/index.js.map +1 -0
  95. package/dist/bubbles/service-bubble/hello-world.d.ts +4 -4
  96. package/dist/bubbles/service-bubble/http.d.ts +4 -4
  97. package/dist/bubbles/service-bubble/http.d.ts.map +1 -1
  98. package/dist/bubbles/service-bubble/http.js +7 -1
  99. package/dist/bubbles/service-bubble/http.js.map +1 -1
  100. package/dist/bubbles/service-bubble/insforge-db.d.ts +140 -0
  101. package/dist/bubbles/service-bubble/insforge-db.d.ts.map +1 -0
  102. package/dist/bubbles/service-bubble/insforge-db.js +260 -0
  103. package/dist/bubbles/service-bubble/insforge-db.js.map +1 -0
  104. package/dist/bubbles/service-bubble/notion/index.d.ts +3 -0
  105. package/dist/bubbles/service-bubble/notion/index.d.ts.map +1 -0
  106. package/dist/bubbles/service-bubble/notion/index.js +3 -0
  107. package/dist/bubbles/service-bubble/notion/index.js.map +1 -0
  108. package/dist/bubbles/service-bubble/notion/notion.d.ts +35405 -0
  109. package/dist/bubbles/service-bubble/notion/notion.d.ts.map +1 -0
  110. package/dist/bubbles/service-bubble/notion/notion.js +1492 -0
  111. package/dist/bubbles/service-bubble/notion/notion.js.map +1 -0
  112. package/dist/bubbles/service-bubble/notion/property-schemas.d.ts +1148 -0
  113. package/dist/bubbles/service-bubble/notion/property-schemas.d.ts.map +1 -0
  114. package/dist/bubbles/service-bubble/notion/property-schemas.js +341 -0
  115. package/dist/bubbles/service-bubble/notion/property-schemas.js.map +1 -0
  116. package/dist/bubbles/service-bubble/postgresql.d.ts +12 -12
  117. package/dist/bubbles/service-bubble/resend.d.ts +34 -13
  118. package/dist/bubbles/service-bubble/resend.d.ts.map +1 -1
  119. package/dist/bubbles/service-bubble/resend.js +133 -2
  120. package/dist/bubbles/service-bubble/resend.js.map +1 -1
  121. package/dist/bubbles/service-bubble/slack.d.ts +241 -241
  122. package/dist/bubbles/service-bubble/slack.d.ts.map +1 -1
  123. package/dist/bubbles/service-bubble/slack.js +2 -2
  124. package/dist/bubbles/service-bubble/slack.js.map +1 -1
  125. package/dist/bubbles/service-bubble/storage.d.ts +25 -21
  126. package/dist/bubbles/service-bubble/storage.d.ts.map +1 -1
  127. package/dist/bubbles/service-bubble/storage.js +43 -2
  128. package/dist/bubbles/service-bubble/storage.js.map +1 -1
  129. package/dist/bubbles/service-bubble/telegram.d.ts +7742 -0
  130. package/dist/bubbles/service-bubble/telegram.d.ts.map +1 -0
  131. package/dist/bubbles/service-bubble/telegram.js +1132 -0
  132. package/dist/bubbles/service-bubble/telegram.js.map +1 -0
  133. package/dist/bubbles/tool-bubble/bubbleflow-validation-tool.d.ts +76 -20
  134. package/dist/bubbles/tool-bubble/bubbleflow-validation-tool.d.ts.map +1 -1
  135. package/dist/bubbles/tool-bubble/bubbleflow-validation-tool.js +12 -0
  136. package/dist/bubbles/tool-bubble/bubbleflow-validation-tool.js.map +1 -1
  137. package/dist/bubbles/tool-bubble/chart-js-tool.d.ts +14 -14
  138. package/dist/bubbles/tool-bubble/code-edit-tool.d.ts +188 -0
  139. package/dist/bubbles/tool-bubble/code-edit-tool.d.ts.map +1 -0
  140. package/dist/bubbles/tool-bubble/code-edit-tool.js +321 -0
  141. package/dist/bubbles/tool-bubble/code-edit-tool.js.map +1 -0
  142. package/dist/bubbles/tool-bubble/get-bubble-details-tool.d.ts +8 -4
  143. package/dist/bubbles/tool-bubble/get-bubble-details-tool.d.ts.map +1 -1
  144. package/dist/bubbles/tool-bubble/get-bubble-details-tool.js +115 -10
  145. package/dist/bubbles/tool-bubble/get-bubble-details-tool.js.map +1 -1
  146. package/dist/bubbles/tool-bubble/google-maps-tool.d.ts +455 -0
  147. package/dist/bubbles/tool-bubble/google-maps-tool.d.ts.map +1 -0
  148. package/dist/bubbles/tool-bubble/google-maps-tool.js +205 -0
  149. package/dist/bubbles/tool-bubble/google-maps-tool.js.map +1 -0
  150. package/dist/bubbles/tool-bubble/instagram-tool.d.ts +36 -36
  151. package/dist/bubbles/tool-bubble/instagram-tool.d.ts.map +1 -1
  152. package/dist/bubbles/tool-bubble/instagram-tool.js +2 -2
  153. package/dist/bubbles/tool-bubble/instagram-tool.js.map +1 -1
  154. package/dist/bubbles/tool-bubble/linkedin-tool.d.ts +824 -447
  155. package/dist/bubbles/tool-bubble/linkedin-tool.d.ts.map +1 -1
  156. package/dist/bubbles/tool-bubble/linkedin-tool.js +232 -12
  157. package/dist/bubbles/tool-bubble/linkedin-tool.js.map +1 -1
  158. package/dist/bubbles/tool-bubble/list-bubbles-tool.d.ts +4 -4
  159. package/dist/bubbles/tool-bubble/reddit-scrape-tool.d.ts +66 -66
  160. package/dist/bubbles/tool-bubble/research-agent-tool.d.ts +17 -16
  161. package/dist/bubbles/tool-bubble/research-agent-tool.d.ts.map +1 -1
  162. package/dist/bubbles/tool-bubble/research-agent-tool.js +26 -16
  163. package/dist/bubbles/tool-bubble/research-agent-tool.js.map +1 -1
  164. package/dist/bubbles/tool-bubble/sql-query-tool.d.ts +8 -8
  165. package/dist/bubbles/tool-bubble/tiktok-tool.d.ts +485 -0
  166. package/dist/bubbles/tool-bubble/tiktok-tool.d.ts.map +1 -0
  167. package/dist/bubbles/tool-bubble/tiktok-tool.js +226 -0
  168. package/dist/bubbles/tool-bubble/tiktok-tool.js.map +1 -0
  169. package/dist/bubbles/tool-bubble/tool-template.d.ts +8 -8
  170. package/dist/bubbles/tool-bubble/twitter-tool.d.ts +947 -0
  171. package/dist/bubbles/tool-bubble/twitter-tool.d.ts.map +1 -0
  172. package/dist/bubbles/tool-bubble/twitter-tool.js +494 -0
  173. package/dist/bubbles/tool-bubble/twitter-tool.js.map +1 -0
  174. package/dist/bubbles/tool-bubble/web-crawl-tool.d.ts +22 -16
  175. package/dist/bubbles/tool-bubble/web-crawl-tool.d.ts.map +1 -1
  176. package/dist/bubbles/tool-bubble/web-crawl-tool.js +58 -59
  177. package/dist/bubbles/tool-bubble/web-crawl-tool.js.map +1 -1
  178. package/dist/bubbles/tool-bubble/web-extract-tool.d.ts +8 -8
  179. package/dist/bubbles/tool-bubble/web-extract-tool.d.ts.map +1 -1
  180. package/dist/bubbles/tool-bubble/web-extract-tool.js +17 -17
  181. package/dist/bubbles/tool-bubble/web-extract-tool.js.map +1 -1
  182. package/dist/bubbles/tool-bubble/web-scrape-tool.d.ts +15 -107
  183. package/dist/bubbles/tool-bubble/web-scrape-tool.d.ts.map +1 -1
  184. package/dist/bubbles/tool-bubble/web-scrape-tool.js +51 -72
  185. package/dist/bubbles/tool-bubble/web-scrape-tool.js.map +1 -1
  186. package/dist/bubbles/tool-bubble/web-search-tool.d.ts +20 -9
  187. package/dist/bubbles/tool-bubble/web-search-tool.d.ts.map +1 -1
  188. package/dist/bubbles/tool-bubble/web-search-tool.js +45 -35
  189. package/dist/bubbles/tool-bubble/web-search-tool.js.map +1 -1
  190. package/dist/bubbles/tool-bubble/youtube-tool.d.ts +25 -25
  191. package/dist/bubbles/tool-bubble/youtube-tool.d.ts.map +1 -1
  192. package/dist/bubbles/tool-bubble/youtube-tool.js +5 -5
  193. package/dist/bubbles/tool-bubble/youtube-tool.js.map +1 -1
  194. package/dist/bubbles/workflow-bubble/database-analyzer.workflow.d.ts +4 -4
  195. package/dist/bubbles/workflow-bubble/generate-document.workflow.d.ts +30 -30
  196. package/dist/bubbles/workflow-bubble/generate-document.workflow.js +1 -1
  197. package/dist/bubbles/workflow-bubble/parse-document.workflow.d.ts +22 -22
  198. package/dist/bubbles/workflow-bubble/parse-document.workflow.js +1 -1
  199. package/dist/bubbles/workflow-bubble/pdf-form-operations.workflow.d.ts +54 -54
  200. package/dist/bubbles/workflow-bubble/pdf-form-operations.workflow.d.ts.map +1 -1
  201. package/dist/bubbles/workflow-bubble/pdf-form-operations.workflow.js +4 -4
  202. package/dist/bubbles/workflow-bubble/pdf-form-operations.workflow.js.map +1 -1
  203. package/dist/bubbles/workflow-bubble/pdf-ocr.workflow.d.ts +36 -36
  204. package/dist/bubbles/workflow-bubble/pdf-ocr.workflow.js +1 -1
  205. package/dist/bubbles/workflow-bubble/slack-data-assistant.workflow.d.ts +14 -14
  206. package/dist/bubbles/workflow-bubble/slack-data-assistant.workflow.d.ts.map +1 -1
  207. package/dist/bubbles/workflow-bubble/slack-data-assistant.workflow.js +6 -6
  208. package/dist/bubbles/workflow-bubble/slack-data-assistant.workflow.js.map +1 -1
  209. package/dist/bubbles/workflow-bubble/slack-formatter-agent.d.ts +26 -26
  210. package/dist/bubbles/workflow-bubble/slack-formatter-agent.d.ts.map +1 -1
  211. package/dist/bubbles/workflow-bubble/slack-formatter-agent.js +24 -4
  212. package/dist/bubbles/workflow-bubble/slack-formatter-agent.js.map +1 -1
  213. package/dist/bubbles/workflow-bubble/slack-notifier.workflow.d.ts +19 -19
  214. package/dist/bubbles/workflow-bubble/slack-notifier.workflow.d.ts.map +1 -1
  215. package/dist/bubbles/workflow-bubble/slack-notifier.workflow.js +8 -8
  216. package/dist/bubbles/workflow-bubble/slack-notifier.workflow.js.map +1 -1
  217. package/dist/bubbles.json +220 -72
  218. package/dist/index.d.ts +23 -4
  219. package/dist/index.d.ts.map +1 -1
  220. package/dist/index.js +16 -3
  221. package/dist/index.js.map +1 -1
  222. package/dist/logging/BubbleLogger.d.ts +45 -16
  223. package/dist/logging/BubbleLogger.d.ts.map +1 -1
  224. package/dist/logging/BubbleLogger.js +178 -77
  225. package/dist/logging/BubbleLogger.js.map +1 -1
  226. package/dist/logging/StreamingBubbleLogger.d.ts +13 -1
  227. package/dist/logging/StreamingBubbleLogger.d.ts.map +1 -1
  228. package/dist/logging/StreamingBubbleLogger.js +51 -8
  229. package/dist/logging/StreamingBubbleLogger.js.map +1 -1
  230. package/dist/logging/WebhookStreamLogger.d.ts +66 -0
  231. package/dist/logging/WebhookStreamLogger.d.ts.map +1 -0
  232. package/dist/logging/WebhookStreamLogger.js +291 -0
  233. package/dist/logging/WebhookStreamLogger.js.map +1 -0
  234. package/dist/types/available-tools.d.ts +1 -1
  235. package/dist/types/available-tools.d.ts.map +1 -1
  236. package/dist/types/available-tools.js +1 -0
  237. package/dist/types/available-tools.js.map +1 -1
  238. package/dist/types/base-bubble-class.d.ts +6 -4
  239. package/dist/types/base-bubble-class.d.ts.map +1 -1
  240. package/dist/types/base-bubble-class.js +35 -20
  241. package/dist/types/base-bubble-class.js.map +1 -1
  242. package/dist/types/bubble.d.ts +2 -0
  243. package/dist/types/bubble.d.ts.map +1 -1
  244. package/dist/types/service-bubble-class.d.ts +1 -1
  245. package/dist/types/service-bubble-class.d.ts.map +1 -1
  246. package/dist/types/service-bubble-class.js +2 -2
  247. package/dist/types/service-bubble-class.js.map +1 -1
  248. package/dist/types/tool-bubble-class.d.ts +1 -1
  249. package/dist/types/tool-bubble-class.d.ts.map +1 -1
  250. package/dist/types/tool-bubble-class.js +2 -2
  251. package/dist/types/tool-bubble-class.js.map +1 -1
  252. package/dist/types/workflow-bubble-class.d.ts +1 -1
  253. package/dist/types/workflow-bubble-class.d.ts.map +1 -1
  254. package/dist/types/workflow-bubble-class.js +2 -2
  255. package/dist/types/workflow-bubble-class.js.map +1 -1
  256. package/dist/utils/agent-formatter.d.ts +14 -2
  257. package/dist/utils/agent-formatter.d.ts.map +1 -1
  258. package/dist/utils/agent-formatter.js +174 -26
  259. package/dist/utils/agent-formatter.js.map +1 -1
  260. package/dist/utils/bubbleflow-validation.d.ts +7 -0
  261. package/dist/utils/bubbleflow-validation.d.ts.map +1 -1
  262. package/dist/utils/bubbleflow-validation.js +171 -6
  263. package/dist/utils/bubbleflow-validation.js.map +1 -1
  264. package/dist/utils/json-parsing.d.ts.map +1 -1
  265. package/dist/utils/json-parsing.js +146 -0
  266. package/dist/utils/json-parsing.js.map +1 -1
  267. package/dist/utils/safe-gemini-chat.d.ts +31 -0
  268. package/dist/utils/safe-gemini-chat.d.ts.map +1 -0
  269. package/dist/utils/safe-gemini-chat.js +93 -0
  270. package/dist/utils/safe-gemini-chat.js.map +1 -0
  271. package/dist/utils/schema-comparison.d.ts +92 -0
  272. package/dist/utils/schema-comparison.d.ts.map +1 -0
  273. package/dist/utils/schema-comparison.js +716 -0
  274. package/dist/utils/schema-comparison.js.map +1 -0
  275. package/dist/utils/zod-schema.d.ts +24 -0
  276. package/dist/utils/zod-schema.d.ts.map +1 -0
  277. package/dist/utils/zod-schema.js +56 -0
  278. package/dist/utils/zod-schema.js.map +1 -0
  279. package/package.json +5 -4
  280. package/dist/bubbles/service-bubble/google-sheets.d.ts +0 -1811
  281. package/dist/bubbles/service-bubble/google-sheets.d.ts.map +0 -1
  282. package/dist/bubbles/service-bubble/google-sheets.js.map +0 -1
  283. package/dist/bubbles/service-bubble/x-twitter.d.ts +0 -814
  284. package/dist/bubbles/service-bubble/x-twitter.d.ts.map +0 -1
  285. package/dist/bubbles/service-bubble/x-twitter.js +0 -445
  286. package/dist/bubbles/service-bubble/x-twitter.js.map +0 -1
  287. package/dist/bubbles/workflow-bubble/bubbleflow-generator.workflow.d.ts +0 -125
  288. package/dist/bubbles/workflow-bubble/bubbleflow-generator.workflow.d.ts.map +0 -1
  289. package/dist/bubbles/workflow-bubble/bubbleflow-generator.workflow.js +0 -808
  290. package/dist/bubbles/workflow-bubble/bubbleflow-generator.workflow.js.map +0 -1
  291. package/dist/test-gm.d.ts +0 -10
  292. package/dist/test-gm.d.ts.map +0 -1
  293. package/dist/test-gm.js +0 -95
  294. package/dist/test-gm.js.map +0 -1
  295. package/dist/utils/param-helper.d.ts +0 -2
  296. package/dist/utils/param-helper.d.ts.map +0 -1
  297. package/dist/utils/param-helper.js +0 -5
  298. package/dist/utils/param-helper.js.map +0 -1
@@ -1,6 +1,106 @@
1
1
  /**
2
2
  * JSON parsing utilities extracted from AI Agent for reusability and testing
3
3
  */
4
+ /**
5
+ * Check if input has an incomplete code block (opening fence but no closing fence)
6
+ */
7
+ function hasIncompleteCodeBlock(input) {
8
+ const codeFencePattern = /```(?:json)?\s*\n?/g;
9
+ const matches = [...input.matchAll(codeFencePattern)];
10
+ if (matches.length === 0)
11
+ return false;
12
+ // Count opening and closing fences
13
+ let openCount = 0;
14
+ let closeCount = 0;
15
+ for (const match of matches) {
16
+ const afterMatch = input.slice(match.index + match[0].length);
17
+ // Check if there's a closing fence after this opening fence
18
+ const closingFenceIndex = afterMatch.search(/```/);
19
+ if (closingFenceIndex !== -1) {
20
+ closeCount++;
21
+ }
22
+ else {
23
+ openCount++;
24
+ }
25
+ }
26
+ // If we have more opening fences than closing fences, it's incomplete
27
+ return openCount > closeCount;
28
+ }
29
+ /**
30
+ * Check if JSON appears to be embedded in markdown documentation
31
+ * Only rejects if there's substantial documentation text outside the JSON structure
32
+ */
33
+ function isJsonEmbeddedInDocumentation(input) {
34
+ // First, check if the input is valid JSON as-is (not embedded in documentation)
35
+ try {
36
+ JSON.parse(input);
37
+ // If original input is valid JSON, it's not documentation
38
+ return false;
39
+ }
40
+ catch {
41
+ // Not parseable as-is, continue checking
42
+ }
43
+ // Check for markdown formatting indicators
44
+ const hasMarkdownFormatting = input.includes('**') ||
45
+ input.includes('*') ||
46
+ input.includes('#') ||
47
+ input.includes('1.') || // numbered lists
48
+ input.includes('-') || // bullet lists
49
+ input.includes('`'); // inline code
50
+ if (!hasMarkdownFormatting)
51
+ return false;
52
+ // Check if there's a code block (complete or incomplete)
53
+ const hasCodeBlock = input.includes('```');
54
+ if (!hasCodeBlock)
55
+ return false;
56
+ // Check if there's substantial text content before or after the code block
57
+ // This indicates it's documentation, not just a JSON response with markdown formatting
58
+ const lines = input.split('\n');
59
+ const codeBlockStartIndex = input.indexOf('```');
60
+ const codeBlockEndIndex = input.lastIndexOf('```');
61
+ // Count non-empty lines before and after code block
62
+ let linesBefore = 0;
63
+ let linesAfter = 0;
64
+ let currentIndex = 0;
65
+ for (let i = 0; i < lines.length; i++) {
66
+ const line = lines[i];
67
+ const lineStart = currentIndex;
68
+ const lineEnd = currentIndex + line.length;
69
+ if (lineStart < codeBlockStartIndex && line.trim().length > 0) {
70
+ linesBefore++;
71
+ }
72
+ else if (lineEnd > codeBlockEndIndex + 3 && line.trim().length > 0) {
73
+ // +3 for the closing ```
74
+ linesAfter++;
75
+ }
76
+ currentIndex = lineEnd + 1; // +1 for the newline character
77
+ }
78
+ // If there are multiple lines of documentation text before or after the code block,
79
+ // it's likely documentation, not a JSON response
80
+ // Even if JSON inside the code block can be parsed, if there's substantial text outside,
81
+ // it's still documentation
82
+ if (linesBefore > 2 || linesAfter > 2) {
83
+ return true;
84
+ }
85
+ // If there's no substantial documentation text outside, try to parse the JSON
86
+ // If we can successfully parse it, it's valid JSON (even if it contains markdown in strings)
87
+ const stripped = stripCodeFences(input);
88
+ const scanned = extractTopLevelJson(stripped);
89
+ if (scanned) {
90
+ try {
91
+ const cleaned = postProcessJSON(scanned);
92
+ JSON.parse(cleaned);
93
+ // If we can parse it and there's no substantial documentation text, it's valid JSON
94
+ return false;
95
+ }
96
+ catch {
97
+ // JSON extraction found something but it's not parseable
98
+ // Continue to check if it's documentation
99
+ }
100
+ }
101
+ // If we can't parse JSON and there's markdown formatting, it's likely documentation
102
+ return true;
103
+ }
4
104
  /**
5
105
  * Strip markdown code fences and return inner content.
6
106
  */
@@ -304,6 +404,24 @@ function removeTrailingCommasOutsideStrings(input) {
304
404
  * Extract JSON from mixed text/JSON responses with robust cleanup
305
405
  */
306
406
  export function extractAndCleanJSON(input) {
407
+ // Check for incomplete code blocks - if found and input looks like documentation,
408
+ // reject it to avoid extracting JSON from markdown documentation
409
+ if (hasIncompleteCodeBlock(input)) {
410
+ // If input has markdown formatting (bullets, headers, multiple lines), it's likely documentation
411
+ const hasMarkdownFormatting = input.includes('**') ||
412
+ input.includes('*') ||
413
+ input.includes('#') ||
414
+ (input.split('\n').length > 5 && input.includes('```'));
415
+ if (hasMarkdownFormatting) {
416
+ // This looks like documentation with an incomplete code block - reject it
417
+ return null;
418
+ }
419
+ }
420
+ // Check for complete code blocks embedded in documentation
421
+ // This catches cases where JSON is in a code block but surrounded by documentation text
422
+ if (isJsonEmbeddedInDocumentation(input)) {
423
+ return null;
424
+ }
307
425
  const stripped = stripCodeFences(input);
308
426
  // Preferred: scan/extract top-level JSON
309
427
  const scanned = extractTopLevelJson(stripped);
@@ -485,6 +603,34 @@ export function postProcessJSON(jsonString) {
485
603
  * Multi-stage JSON parsing approach with various fallback strategies
486
604
  */
487
605
  export function parseJsonWithFallbacks(finalResponse) {
606
+ // Check for incomplete code blocks - if found and input looks like documentation,
607
+ // reject it early to avoid extracting JSON from markdown documentation
608
+ if (hasIncompleteCodeBlock(finalResponse)) {
609
+ // If input has markdown formatting (bullets, headers, multiple lines), it's likely documentation
610
+ const hasMarkdownFormatting = finalResponse.includes('**') ||
611
+ finalResponse.includes('*') ||
612
+ finalResponse.includes('#') ||
613
+ (finalResponse.split('\n').length > 5 && finalResponse.includes('```'));
614
+ if (hasMarkdownFormatting) {
615
+ // This looks like documentation with an incomplete code block - reject it
616
+ return {
617
+ response: finalResponse,
618
+ parsed: null,
619
+ success: false,
620
+ error: 'AI Agent failed to generate valid JSON. Input appears to be markdown documentation with an incomplete code block, not valid JSON.',
621
+ };
622
+ }
623
+ }
624
+ // Check for complete code blocks embedded in documentation
625
+ // This catches cases where JSON is in a code block but surrounded by documentation text
626
+ if (isJsonEmbeddedInDocumentation(finalResponse)) {
627
+ return {
628
+ response: finalResponse,
629
+ parsed: null,
630
+ success: false,
631
+ error: 'AI Agent failed to generate valid JSON. Input appears to be markdown documentation with a code block, not valid JSON.',
632
+ };
633
+ }
488
634
  const attempts = [
489
635
  // Attempt 1: Try parsing the original response as-is
490
636
  () => {
@@ -1 +1 @@
1
- {"version":3,"file":"json-parsing.js","sourceRoot":"","sources":["../../src/utils/json-parsing.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;GAEG;AACH,SAAS,eAAe,CAAC,KAAa;IACpC,IAAI,CAAC,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IACrB,iDAAiD;IACjD,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,qCAAqC,EAAE,IAAI,CAAC,CAAC;IAC3D,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC;IAC9D,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;AAClB,CAAC;AAED;;;GAGG;AACH,SAAS,mBAAmB,CAAC,KAAa;IACxC,MAAM,CAAC,GAAG,KAAK,CAAC;IAChB,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC;IACf,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAClC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAChB,IAAI,EAAE,KAAK,GAAG,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;YAC7B,KAAK,GAAG,CAAC,CAAC;YACV,MAAM;QACR,CAAC;IACH,CAAC;IACD,IAAI,KAAK,KAAK,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IAE9B,MAAM,KAAK,GAA8B,EAAE,CAAC;IAC5C,IAAI,YAAY,GAAG,KAAK,CAAC;IACzB,IAAI,UAAU,GAAG,KAAK,CAAC;IACvB,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC;IAEb,KAAK,IAAI,CAAC,GAAG,KAAK,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAChB,IAAI,YAAY,EAAE,CAAC;YACjB,IAAI,UAAU,EAAE,CAAC;gBACf,UAAU,GAAG,KAAK,CAAC;YACrB,CAAC;iBAAM,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC;gBACvB,UAAU,GAAG,IAAI,CAAC;YACpB,CAAC;iBAAM,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;gBACtB,YAAY,GAAG,KAAK,CAAC;YACvB,CAAC;QACH,CAAC;aAAM,CAAC;YACN,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;gBACf,YAAY,GAAG,IAAI,CAAC;YACtB,CAAC;iBAAM,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;gBACtB,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACvB,CAAC;iBAAM,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;gBACtB,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACtB,CAAC;iBAAM,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;gBACtB,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,QAAQ;oBAAE,KAAK,CAAC,GAAG,EAAE,CAAC;gBACtD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBACvB,GAAG,GAAG,CAAC,CAAC;oBACR,MAAM;gBACR,CAAC;YACH,CAAC;iBAAM,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;gBACtB,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,OAAO;oBAAE,KAAK,CAAC,GAAG,EAAE,CAAC;gBACrD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBACvB,GAAG,GAAG,CAAC,CAAC;oBACR,MAAM;gBACR,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC;QACf,OAAO,CAAC,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC;IACjC,CAAC;IAED,kFAAkF;IAClF,OAAO,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;AACxB,CAAC;AAED;;;;GAIG;AACH,SAAS,sCAAsC,CAAC,KAAa;IAC3D,MAAM,GAAG,GAAa,EAAE,CAAC;IACzB,MAAM,KAAK,GAA8B,EAAE,CAAC;IAC5C,IAAI,YAAY,GAAG,KAAK,CAAC;IACzB,IAAI,UAAU,GAAG,KAAK,CAAC;IACvB,IAAI,WAAW,GAAG,KAAK,CAAC;IACxB,IAAI,SAAS,GAAkB,IAAI,CAAC;IAEpC,MAAM,YAAY,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAEjD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QAEpB,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;gBACf,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACrB,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACb,SAAS,GAAG,EAAE,CAAC;gBACf,SAAS;YACX,CAAC;YACD,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;gBACf,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBACpB,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACb,SAAS,GAAG,EAAE,CAAC;gBACf,SAAS;YACX,CAAC;YACD,IAAI,EAAE,KAAK,GAAG,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;gBAC7B,KAAK,CAAC,GAAG,EAAE,CAAC;gBACZ,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACb,SAAS,GAAG,EAAE,CAAC;gBACf,SAAS;YACX,CAAC;YACD,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;gBACf,gCAAgC;gBAChC,IAAI,SAAS,KAAK,GAAG,EAAE,CAAC;oBACtB,WAAW,GAAG,KAAK,CAAC;gBACtB,CAAC;qBAAM,IACL,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,QAAQ;oBACpC,CAAC,SAAS,KAAK,GAAG,IAAI,SAAS,KAAK,GAAG,IAAI,SAAS,KAAK,IAAI,CAAC,EAC9D,CAAC;oBACD,WAAW,GAAG,IAAI,CAAC;gBACrB,CAAC;qBAAM,CAAC;oBACN,qDAAqD;oBACrD,WAAW,GAAG,KAAK,CAAC;gBACtB,CAAC;gBACD,YAAY,GAAG,IAAI,CAAC;gBACpB,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBACd,SAAS;YACX,CAAC;YACD,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,EAAE,CAAC;gBACtB,SAAS,GAAG,EAAE,CAAC;YACjB,CAAC;YACD,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACb,SAAS;QACX,CAAC;QAED,gBAAgB;QAChB,IAAI,UAAU,EAAE,CAAC;YACf,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACb,UAAU,GAAG,KAAK,CAAC;YACnB,SAAS;QACX,CAAC;QACD,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC;YAChB,wFAAwF;YACxF,oEAAoE;YACpE,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAC1B,MAAM,aAAa,GACjB,IAAI,KAAK,GAAG;gBACZ,IAAI,KAAK,IAAI;gBACb,IAAI,KAAK,GAAG;gBACZ,IAAI,KAAK,GAAG;gBACZ,IAAI,KAAK,GAAG;gBACZ,IAAI,KAAK,GAAG;gBACZ,IAAI,KAAK,GAAG;gBACZ,IAAI,KAAK,GAAG;gBACZ,IAAI,KAAK,GAAG,CAAC;YAEf,IAAI,aAAa,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC9C,8BAA8B;gBAC9B,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACf,UAAU,GAAG,IAAI,CAAC,CAAC,6BAA6B;gBAChD,SAAS;YACX,CAAC;YACD,iEAAiE;YACjE,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACjB,SAAS;QACX,CAAC;QACD,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;YACf,gCAAgC;YAChC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACd,IAAI,SAA6B,CAAC;YAClC,OAAO,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;gBACxB,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;gBACnB,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC;oBACrB,SAAS,GAAG,CAAC,CAAC;oBACd,MAAM;gBACR,CAAC;gBACD,CAAC,EAAE,CAAC;YACN,CAAC;YACD,MAAM,eAAe,GAAG,WAAW;gBACjC,CAAC,CAAC,SAAS,KAAK,GAAG;gBACnB,CAAC,CAAC,SAAS,KAAK,GAAG;oBACjB,SAAS,KAAK,GAAG;oBACjB,SAAS,KAAK,GAAG;oBACjB,SAAS,KAAK,SAAS,CAAC;YAC5B,IAAI,eAAe,EAAE,CAAC;gBACpB,YAAY,GAAG,KAAK,CAAC;gBACrB,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBACd,SAAS;YACX,CAAC;YACD,6CAA6C;YAC7C,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAChB,SAAS;QACX,CAAC;QACD,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC;YAChB,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAChB,SAAS;QACX,CAAC;QACD,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC;YAChB,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAChB,SAAS;QACX,CAAC;QACD,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC;YAChB,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAChB,SAAS;QACX,CAAC;QACD,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,CAAC;IAED,IAAI,YAAY,EAAE,CAAC;QACjB,gCAAgC;QAChC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAChB,CAAC;IACD,OAAO,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACtB,CAAC;AAED;;GAEG;AACH,SAAS,+BAA+B,CAAC,KAAa;IACpD,MAAM,GAAG,GAAa,EAAE,CAAC;IACzB,IAAI,YAAY,GAAG,KAAK,CAAC;IACzB,IAAI,UAAU,GAAG,KAAK,CAAC;IAEvB,oEAAoE;IACpE,IAAI,MAAM,GAAG,EAAE,CAAC;IAEhB,MAAM,WAAW,GAAG,GAAG,EAAE;QACvB,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACjB,MAAM,GAAG,EAAE,CAAC;IACd,CAAC,CAAC;IAEF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QACpB,IAAI,YAAY,EAAE,CAAC;YACjB,MAAM,IAAI,EAAE,CAAC;YACb,IAAI,UAAU,EAAE,CAAC;gBACf,UAAU,GAAG,KAAK,CAAC;YACrB,CAAC;iBAAM,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC;gBACvB,UAAU,GAAG,IAAI,CAAC;YACpB,CAAC;iBAAM,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;gBACtB,YAAY,GAAG,KAAK,CAAC;YACvB,CAAC;YACD,SAAS;QACX,CAAC;QAED,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;YACf,wEAAwE;YACxE,0CAA0C;YAC1C,gDAAgD;YAChD,MAAM,GAAG,MAAM,CAAC,OAAO,CACrB,4CAA4C,EAC5C,WAAW,CACZ,CAAC;YACF,WAAW,EAAE,CAAC;YACd,YAAY,GAAG,IAAI,CAAC;YACpB,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACd,SAAS;QACX,CAAC;QAED,MAAM,IAAI,EAAE,CAAC;IACf,CAAC;IAED,4DAA4D;IAC5D,MAAM,GAAG,MAAM,CAAC,OAAO,CACrB,4CAA4C,EAC5C,WAAW,CACZ,CAAC;IACF,WAAW,EAAE,CAAC;IACd,OAAO,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACtB,CAAC;AAED;;GAEG;AACH,SAAS,kCAAkC,CAAC,KAAa;IACvD,MAAM,GAAG,GAAa,EAAE,CAAC;IACzB,IAAI,YAAY,GAAG,KAAK,CAAC;IACzB,IAAI,UAAU,GAAG,KAAK,CAAC;IAEvB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QACpB,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACb,IAAI,YAAY,EAAE,CAAC;YACjB,IAAI,UAAU,EAAE,CAAC;gBACf,UAAU,GAAG,KAAK,CAAC;YACrB,CAAC;iBAAM,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC;gBACvB,UAAU,GAAG,IAAI,CAAC;YACpB,CAAC;iBAAM,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;gBACtB,YAAY,GAAG,KAAK,CAAC;YACvB,CAAC;YACD,SAAS;QACX,CAAC;QACD,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;YACf,YAAY,GAAG,IAAI,CAAC;YACpB,SAAS;QACX,CAAC;QACD,sFAAsF;QACtF,IACE,EAAE,KAAK,GAAG;YACV,CAAC,GAAG,EAAE;gBACJ,KAAK,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;oBAC1C,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;oBACnB,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;wBAAE,SAAS;oBAC3B,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,GAAG,CAAC;gBAChC,CAAC;gBACD,OAAO,KAAK,CAAC;YACf,CAAC,CAAC,EAAE,EACJ,CAAC;YACD,+BAA+B;YAC/B,GAAG,CAAC,GAAG,EAAE,CAAC;YACV,qCAAqC;QACvC,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACtB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,mBAAmB,CAAC,KAAa;IAC/C,MAAM,QAAQ,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;IAExC,yCAAyC;IACzC,MAAM,OAAO,GAAG,mBAAmB,CAAC,QAAQ,CAAC,CAAC;IAC9C,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,OAAO,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;QACzC,IAAI,CAAC;YACH,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACpB,OAAO,OAAO,CAAC;QACjB,CAAC;QAAC,MAAM,CAAC;YACP,WAAW;QACb,CAAC;IACH,CAAC;IAED,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC;IAEhC,yCAAyC;IACzC,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAC7B,kEAAkE,CACnE,CAAC;IACF,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,SAAS,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;QAC/B,MAAM,OAAO,GAAG,eAAe,CAAC,SAAS,CAAC,CAAC;QAC3C,IAAI,CAAC;YACH,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACpB,OAAO,OAAO,CAAC;QACjB,CAAC;QAAC,MAAM,CAAC;YACP,+BAA+B;QACjC,CAAC;IACH,CAAC;IAED,+DAA+D;IAC/D,MAAM,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC/C,IAAI,eAAe,KAAK,CAAC,CAAC,EAAE,CAAC;QAC3B,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;QACjD,MAAM,OAAO,GAAG,eAAe,CAAC,SAAS,CAAC,CAAC;QAC3C,IAAI,CAAC;YACH,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACpB,OAAO,OAAO,CAAC;QACjB,CAAC;QAAC,MAAM,CAAC;YACP,+BAA+B;QACjC,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,eAAe,CAAC,UAAkB;IAChD,IAAI,SAAS,GAAG,UAAU,CAAC,IAAI,EAAE,CAAC;IAElC,yCAAyC;IACzC,SAAS,GAAG,eAAe,CAAC,SAAS,CAAC,CAAC;IAEvC,0FAA0F;IAC1F,SAAS,GAAG,SAAS,CAAC,OAAO,CAAC,uBAAuB,EAAE,IAAI,CAAC,CAAC;IAE7D,2CAA2C;IAC3C,SAAS,GAAG,SAAS;SAClB,OAAO,CAAC,0DAA0D,EAAE,EAAE,CAAC;SACvE,OAAO,CAAC,uDAAuD,EAAE,EAAE,CAAC;SACpE,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,+BAA+B;SACxD,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,CAAC,gCAAgC;IAE7D,yCAAyC;IACzC,SAAS,GAAG,+BAA+B,CAAC,SAAS,CAAC,CAAC;IAEvD,8CAA8C;IAC9C,SAAS,GAAG,kCAAkC,CAAC,SAAS,CAAC,CAAC;IAE1D,8EAA8E;IAC9E,qFAAqF;IACrF,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QAC7B,SAAS,GAAG,SAAS,CAAC,OAAO,CAC3B,6CAA6C,EAC7C,QAAQ,CACT,CAAC;IACJ,CAAC;IAED,2EAA2E;IAC3E,SAAS,GAAG,sCAAsC,CAAC,SAAS,CAAC,CAAC;IAE9D,mEAAmE;IACnE,SAAS,GAAG,kCAAkC,CAAC,SAAS,CAAC,CAAC;IAE1D,gDAAgD;IAChD,4CAA4C;IAC5C,SAAS,GAAG,SAAS,CAAC,OAAO,CAAC,oCAAoC,EAAE,EAAE,CAAC,CAAC;IAExE,0EAA0E;IAC1E,iEAAiE;IACjE,CAAC;QACC,IAAI,MAAM,GAAG,KAAK,CAAC;QACnB,IAAI,GAAG,GAAG,KAAK,CAAC;QAChB,IAAI,SAAS,GAAG,CAAC,CAAC,CAAC;QACnB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC1C,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;YACxB,IAAI,MAAM,EAAE,CAAC;gBACX,IAAI,GAAG,EAAE,CAAC;oBACR,GAAG,GAAG,KAAK,CAAC;gBACd,CAAC;qBAAM,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC;oBACvB,GAAG,GAAG,IAAI,CAAC;gBACb,CAAC;qBAAM,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;oBACtB,MAAM,GAAG,KAAK,CAAC;gBACjB,CAAC;gBACD,SAAS;YACX,CAAC;YACD,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;gBACf,MAAM,GAAG,IAAI,CAAC;gBACd,SAAS;YACX,CAAC;YACD,IAAI,EAAE,KAAK,GAAG,IAAI,EAAE,KAAK,GAAG;gBAAE,SAAS,GAAG,CAAC,CAAC;QAC9C,CAAC;QACD,IAAI,SAAS,KAAK,CAAC,CAAC,EAAE,CAAC;YACrB,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,GAAG,CAAC,CAAC,CAAC;QAChD,CAAC;IACH,CAAC;IAED,4DAA4D;IAC5D,IAAI,UAAU,GAAG,CAAC,CAAC;IACnB,IAAI,WAAW,GAAG,CAAC,CAAC;IACpB,IAAI,YAAY,GAAG,CAAC,CAAC;IACrB,IAAI,aAAa,GAAG,CAAC,CAAC;IACtB,CAAC;QACC,IAAI,MAAM,GAAG,KAAK,CAAC;QACnB,IAAI,GAAG,GAAG,KAAK,CAAC;QAChB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC1C,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;YACxB,IAAI,MAAM,EAAE,CAAC;gBACX,IAAI,GAAG,EAAE,CAAC;oBACR,GAAG,GAAG,KAAK,CAAC;gBACd,CAAC;qBAAM,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC;oBACvB,GAAG,GAAG,IAAI,CAAC;gBACb,CAAC;qBAAM,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;oBACtB,MAAM,GAAG,KAAK,CAAC;gBACjB,CAAC;gBACD,SAAS;YACX,CAAC;YACD,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;gBACf,MAAM,GAAG,IAAI,CAAC;gBACd,SAAS;YACX,CAAC;YACD,IAAI,EAAE,KAAK,GAAG;gBAAE,UAAU,EAAE,CAAC;iBACxB,IAAI,EAAE,KAAK,GAAG;gBAAE,WAAW,EAAE,CAAC;iBAC9B,IAAI,EAAE,KAAK,GAAG;gBAAE,YAAY,EAAE,CAAC;iBAC/B,IAAI,EAAE,KAAK,GAAG;gBAAE,aAAa,EAAE,CAAC;QACvC,CAAC;IACH,CAAC;IAED,6FAA6F;IAC7F,IAAI,UAAU,GAAG,WAAW,IAAI,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QACxD,0FAA0F;QAC1F,IAAI,SAAS,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;YACjE,oEAAoE;YACpE,gDAAgD;YAChD,MAAM,aAAa,GAAG,UAAU,GAAG,WAAW,CAAC;YAC/C,MAAM,eAAe,GAAG,YAAY,GAAG,aAAa,CAAC;YAErD,uFAAuF;YACvF,IAAI,eAAe,GAAG,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;gBACnD,SAAS,IAAI,GAAG,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;YAC3C,CAAC;YAED,oBAAoB;YACpB,SAAS,IAAI,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;QACzC,CAAC;IACH,CAAC;SAAM,IAAI,YAAY,GAAG,aAAa,IAAI,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QACnE,oFAAoF;QACpF,IAAI,SAAS,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YAChE,SAAS,IAAI,GAAG,CAAC,MAAM,CAAC,YAAY,GAAG,aAAa,CAAC,CAAC;QACxD,CAAC;IACH,CAAC;IAED,wCAAwC;IACxC,IAAI,WAAW,GAAG,UAAU,EAAE,CAAC;QAC7B,MAAM,MAAM,GAAG,WAAW,GAAG,UAAU,CAAC;QACxC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAChC,SAAS,GAAG,SAAS,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QAC7C,CAAC;IACH,CAAC;IACD,IAAI,aAAa,GAAG,YAAY,EAAE,CAAC;QACjC,MAAM,MAAM,GAAG,aAAa,GAAG,YAAY,CAAC;QAC5C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAChC,SAAS,GAAG,SAAS,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QAC7C,CAAC;IACH,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,sBAAsB,CAAC,aAAqB;IAM1D,MAAM,QAAQ,GAAG;QACf,qDAAqD;QACrD,GAAG,EAAE;YACH,OAAO;gBACL,QAAQ,EAAE,aAAa;gBACvB,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC;gBACjC,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QACD,gEAAgE;QAChE,GAAG,EAAE;YACH,MAAM,QAAQ,GAAG,eAAe,CAAC,aAAa,CAAC,CAAC;YAChD,MAAM,OAAO,GAAG,mBAAmB,CAAC,QAAQ,CAAC,CAAC;YAC9C,IAAI,CAAC,OAAO;gBAAE,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;YACrD,MAAM,OAAO,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;YACzC,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QAC3E,CAAC;QACD,mDAAmD;QACnD,GAAG,EAAE;YACH,MAAM,SAAS,GAAG,eAAe,CAAC,aAAa,CAAC,CAAC;YACjD,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;YACtB,OAAO;gBACL,QAAQ,EAAE,SAAS;gBACnB,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;gBAC7B,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QACD,oFAAoF;QACpF,GAAG,EAAE;YACH,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,EAAE,CAAC;YACrC,IAAI,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBACpE,2DAA2D;gBAC3D,IAAI,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;oBACvD,MAAM,OAAO,GAAG,IAAI,OAAO,GAAG,CAAC;oBAC/B,MAAM,SAAS,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;oBAC3C,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;oBACtB,OAAO;wBACL,QAAQ,EAAE,SAAS;wBACnB,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;wBAC7B,OAAO,EAAE,IAAI;qBACd,CAAC;gBACJ,CAAC;YACH,CAAC;YACD,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;QAClD,CAAC;KACF,CAAC;IAEF,IAAI,SAAS,GAAiB,IAAI,CAAC;IAEnC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACzC,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7B,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;gBACV,OAAO,CAAC,GAAG,CAAC,+CAA+C,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACtE,CAAC;YACD,OAAO;gBACL,QAAQ,EAAE,MAAM,CAAC,QAAQ;gBACzB,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,KAAK,EAAE,SAAS;gBAChB,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,SAAS;gBACP,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;YACtE,OAAO,CAAC,IAAI,CACV,iCAAiC,CAAC,GAAG,CAAC,UAAU,EAChD,SAAS,CAAC,OAAO,CAClB,CAAC;QACJ,CAAC;IACH,CAAC;IAED,sBAAsB;IACtB,OAAO,CAAC,IAAI,CAAC,gDAAgD,CAAC,CAAC;IAC/D,OAAO,CAAC,IAAI,CAAC,kCAAkC,EAAE,aAAa,CAAC,CAAC;IAEhE,oEAAoE;IACpE,MAAM,WAAW,GACf,mBAAmB,CAAC,aAAa,CAAC,IAAI,eAAe,CAAC,aAAa,CAAC,CAAC;IAEvE,OAAO;QACL,QAAQ,EAAE,WAAW;QACrB,MAAM,EAAE,IAAI;QACZ,KAAK,EAAE,kGAAkG,SAAS,EAAE,OAAO,IAAI,eAAe,EAAE;QAChJ,OAAO,EAAE,KAAK;KACf,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"json-parsing.js","sourceRoot":"","sources":["../../src/utils/json-parsing.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,31 @@
1
+ import { ChatGoogleGenerativeAI, type GoogleGenerativeAIChatInput } from '@langchain/google-genai';
2
+ import type { BaseMessage } from '@langchain/core/messages';
3
+ import { AIMessage } from '@langchain/core/messages';
4
+ import type { ChatResult } from '@langchain/core/outputs';
5
+ import type { CallbackManagerForLLMRun } from '@langchain/core/callbacks/manager';
6
+ /**
7
+ * SafeGeminiChat: A wrapper around ChatGoogleGenerativeAI that gracefully handles
8
+ * the candidateContent.parts.reduce error when Gemini returns blocked/empty content.
9
+ *
10
+ * Issue: When Gemini blocks content (safety filters, policy violations, etc.), it sometimes
11
+ * returns candidates without a `content` field, causing `candidateContent.parts.reduce` to crash.
12
+ *
13
+ * Solution: This wrapper catches these errors and returns a structured error response instead
14
+ * of crashing the entire agent workflow.
15
+ */
16
+ export declare class SafeGeminiChat extends ChatGoogleGenerativeAI {
17
+ constructor(fields: GoogleGenerativeAIChatInput);
18
+ /**
19
+ * Override the _generate method to add null-safety checks
20
+ */
21
+ _generate(messages: BaseMessage[], options: this['ParsedCallOptions'], runManager?: CallbackManagerForLLMRun): Promise<ChatResult>;
22
+ }
23
+ /**
24
+ * Utility function to check if an AIMessage contains a Gemini error
25
+ */
26
+ export declare function isGeminiErrorResponse(message: AIMessage): boolean;
27
+ /**
28
+ * Utility function to extract the original error from a Gemini error response
29
+ */
30
+ export declare function getGeminiErrorDetails(message: AIMessage): string | undefined;
31
+ //# sourceMappingURL=safe-gemini-chat.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"safe-gemini-chat.d.ts","sourceRoot":"","sources":["../../src/utils/safe-gemini-chat.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,EACtB,KAAK,2BAA2B,EACjC,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AACrD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAGlF;;;;;;;;;GASG;AACH,qBAAa,cAAe,SAAQ,sBAAsB;gBAC5C,MAAM,EAAE,2BAA2B;IAI/C;;OAEG;IACG,SAAS,CACb,QAAQ,EAAE,WAAW,EAAE,EACvB,OAAO,EAAE,IAAI,CAAC,mBAAmB,CAAC,EAClC,UAAU,CAAC,EAAE,wBAAwB,GACpC,OAAO,CAAC,UAAU,CAAC;CA2DvB;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,SAAS,GAAG,OAAO,CAgBjE;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,SAAS,GAAG,MAAM,GAAG,SAAS,CAE5E"}
@@ -0,0 +1,93 @@
1
+ import { ChatGoogleGenerativeAI, } from '@langchain/google-genai';
2
+ import { AIMessage } from '@langchain/core/messages';
3
+ import { RECOMMENDED_MODELS } from '@bubblelab/shared-schemas';
4
+ /**
5
+ * SafeGeminiChat: A wrapper around ChatGoogleGenerativeAI that gracefully handles
6
+ * the candidateContent.parts.reduce error when Gemini returns blocked/empty content.
7
+ *
8
+ * Issue: When Gemini blocks content (safety filters, policy violations, etc.), it sometimes
9
+ * returns candidates without a `content` field, causing `candidateContent.parts.reduce` to crash.
10
+ *
11
+ * Solution: This wrapper catches these errors and returns a structured error response instead
12
+ * of crashing the entire agent workflow.
13
+ */
14
+ export class SafeGeminiChat extends ChatGoogleGenerativeAI {
15
+ constructor(fields) {
16
+ super(fields);
17
+ }
18
+ /**
19
+ * Override the _generate method to add null-safety checks
20
+ */
21
+ async _generate(messages, options, runManager) {
22
+ try {
23
+ // Call the parent implementation
24
+ return await super._generate(messages, options, runManager);
25
+ }
26
+ catch (error) {
27
+ // Check if this is the candidateContent.parts error
28
+ const errorMessage = error instanceof Error ? error.message : String(error);
29
+ if (errorMessage.includes('candidateContent') ||
30
+ errorMessage.includes('parts') ||
31
+ errorMessage.includes('reduce') ||
32
+ errorMessage.includes('undefined is not an object')) {
33
+ // Log the error for debugging
34
+ console.error('[SafeGeminiChat] Gemini returned blocked/empty content:', errorMessage);
35
+ // Return a structured error message instead of crashing
36
+ const errorResponse = new AIMessage({
37
+ content: `[Gemini Error] The model was unable to generate a response. This can happen when:
38
+ 1. Content safety filters are triggered (despite BLOCK_NONE setting)
39
+ 2. The model encounters policy violations
40
+ 3. The response contains blocked content
41
+ 4. Network or API issues occur
42
+
43
+ Original error: ${errorMessage}
44
+
45
+ Please try:
46
+ - Rephrasing your prompt
47
+ - Using a different model (e.g., ${RECOMMENDED_MODELS.FAST_ALT})
48
+ - Checking the Google AI Studio for more details`,
49
+ additional_kwargs: {
50
+ finishReason: 'SAFETY_BLOCKED',
51
+ error: errorMessage,
52
+ },
53
+ });
54
+ return {
55
+ generations: [
56
+ {
57
+ text: errorResponse.content,
58
+ message: errorResponse,
59
+ },
60
+ ],
61
+ llmOutput: {
62
+ error: 'GEMINI_CONTENT_BLOCKED',
63
+ originalError: errorMessage,
64
+ },
65
+ };
66
+ }
67
+ // If it's a different error, rethrow it
68
+ throw error;
69
+ }
70
+ }
71
+ }
72
+ /**
73
+ * Utility function to check if an AIMessage contains a Gemini error
74
+ */
75
+ export function isGeminiErrorResponse(message) {
76
+ const content = message.content;
77
+ // Handle null/undefined content
78
+ if (content == null) {
79
+ return false;
80
+ }
81
+ const contentStr = content.toString();
82
+ return (contentStr.includes('[Gemini Error]') ||
83
+ contentStr.includes('[Gemini Response Error]') ||
84
+ message.additional_kwargs?.finishReason === 'SAFETY_BLOCKED' ||
85
+ message.additional_kwargs?.finishReason === 'ERROR');
86
+ }
87
+ /**
88
+ * Utility function to extract the original error from a Gemini error response
89
+ */
90
+ export function getGeminiErrorDetails(message) {
91
+ return message.additional_kwargs?.error;
92
+ }
93
+ //# sourceMappingURL=safe-gemini-chat.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"safe-gemini-chat.js","sourceRoot":"","sources":["../../src/utils/safe-gemini-chat.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,GAEvB,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAGrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAE/D;;;;;;;;;GASG;AACH,MAAM,OAAO,cAAe,SAAQ,sBAAsB;IACxD,YAAY,MAAmC;QAC7C,KAAK,CAAC,MAAM,CAAC,CAAC;IAChB,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,SAAS,CACb,QAAuB,EACvB,OAAkC,EAClC,UAAqC;QAErC,IAAI,CAAC;YACH,iCAAiC;YACjC,OAAO,MAAM,KAAK,CAAC,SAAS,CAAC,QAAQ,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC;QAC9D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,oDAAoD;YACpD,MAAM,YAAY,GAChB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAEzD,IACE,YAAY,CAAC,QAAQ,CAAC,kBAAkB,CAAC;gBACzC,YAAY,CAAC,QAAQ,CAAC,OAAO,CAAC;gBAC9B,YAAY,CAAC,QAAQ,CAAC,QAAQ,CAAC;gBAC/B,YAAY,CAAC,QAAQ,CAAC,4BAA4B,CAAC,EACnD,CAAC;gBACD,8BAA8B;gBAC9B,OAAO,CAAC,KAAK,CACX,yDAAyD,EACzD,YAAY,CACb,CAAC;gBAEF,wDAAwD;gBACxD,MAAM,aAAa,GAAG,IAAI,SAAS,CAAC;oBAClC,OAAO,EAAE;;;;;;kBAMD,YAAY;;;;mCAIK,kBAAkB,CAAC,QAAQ;iDACb;oBACvC,iBAAiB,EAAE;wBACjB,YAAY,EAAE,gBAAgB;wBAC9B,KAAK,EAAE,YAAY;qBACpB;iBACF,CAAC,CAAC;gBAEH,OAAO;oBACL,WAAW,EAAE;wBACX;4BACE,IAAI,EAAE,aAAa,CAAC,OAAiB;4BACrC,OAAO,EAAE,aAAa;yBACvB;qBACF;oBACD,SAAS,EAAE;wBACT,KAAK,EAAE,wBAAwB;wBAC/B,aAAa,EAAE,YAAY;qBAC5B;iBACF,CAAC;YACJ,CAAC;YAED,wCAAwC;YACxC,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;CACF;AAED;;GAEG;AACH,MAAM,UAAU,qBAAqB,CAAC,OAAkB;IACtD,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAEhC,gCAAgC;IAChC,IAAI,OAAO,IAAI,IAAI,EAAE,CAAC;QACpB,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,UAAU,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAEtC,OAAO,CACL,UAAU,CAAC,QAAQ,CAAC,gBAAgB,CAAC;QACrC,UAAU,CAAC,QAAQ,CAAC,yBAAyB,CAAC;QAC9C,OAAO,CAAC,iBAAiB,EAAE,YAAY,KAAK,gBAAgB;QAC5D,OAAO,CAAC,iBAAiB,EAAE,YAAY,KAAK,OAAO,CACpD,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,qBAAqB,CAAC,OAAkB;IACtD,OAAO,OAAO,CAAC,iBAAiB,EAAE,KAA2B,CAAC;AAChE,CAAC"}
@@ -0,0 +1,92 @@
1
+ import { z } from 'zod';
2
+ /**
3
+ * Represents the difference between actual data and a Zod schema
4
+ */
5
+ export interface SchemaDifference {
6
+ /** Fields present in data but not defined in schema */
7
+ extraFields: FieldInfo[];
8
+ /** Fields defined in schema but missing from data (and are required) */
9
+ missingRequiredFields: FieldInfo[];
10
+ /** Fields defined in schema but missing from data (optional fields) */
11
+ missingOptionalFields: FieldInfo[];
12
+ /** Fields with type mismatches */
13
+ typeMismatches: TypeMismatch[];
14
+ /** Nested object differences */
15
+ nestedDifferences: Record<string, SchemaDifference>;
16
+ /** Summary statistics */
17
+ summary: {
18
+ totalExtraFields: number;
19
+ totalMissingRequired: number;
20
+ totalMissingOptional: number;
21
+ totalTypeMismatches: number;
22
+ isCompatible: boolean;
23
+ };
24
+ }
25
+ export interface FieldInfo {
26
+ path: string;
27
+ value?: unknown;
28
+ type?: string;
29
+ }
30
+ export interface TypeMismatch {
31
+ path: string;
32
+ expectedType: string;
33
+ actualType: string;
34
+ actualValue: unknown;
35
+ }
36
+ /**
37
+ * Compare data against a Zod schema and find all differences
38
+ *
39
+ * @param schema - The Zod schema to compare against
40
+ * @param data - The actual data to compare
41
+ * @param basePath - Base path for nested field names (used internally)
42
+ * @returns Detailed comparison results showing all differences
43
+ *
44
+ * @example
45
+ * ```typescript
46
+ * const schema = z.object({
47
+ * name: z.string(),
48
+ * age: z.number().optional(),
49
+ * });
50
+ *
51
+ * const data = {
52
+ * name: 'John',
53
+ * extraField: 'unexpected',
54
+ * };
55
+ *
56
+ * const diff = compareWithSchema(schema, data);
57
+ * // diff.extraFields = [{ path: 'extraField', value: 'unexpected', type: 'string' }]
58
+ * // diff.missingOptionalFields = [{ path: 'age' }]
59
+ * ```
60
+ */
61
+ export declare function compareWithSchema(schema: z.ZodTypeAny, data: unknown, basePath?: string): SchemaDifference;
62
+ /**
63
+ * Format schema differences as a human-readable string
64
+ */
65
+ export declare function formatSchemaDifference(diff: SchemaDifference, indent?: number): string;
66
+ export interface FieldWithIndex {
67
+ fieldName: string;
68
+ index: number;
69
+ }
70
+ /**
71
+ * Compare multiple data items against a schema and aggregate differences
72
+ * Useful for analyzing API responses with multiple items
73
+ */
74
+ export declare function compareMultipleWithSchema(schema: z.ZodTypeAny, items: unknown[], maxItems?: number): {
75
+ itemCount: number;
76
+ status: 'PASS' | 'FAIL';
77
+ allExtraFields: FieldWithIndex[];
78
+ allMissingRequired: FieldWithIndex[];
79
+ allMissingOptional: FieldWithIndex[];
80
+ allTypeMismatches: Map<string, Set<string>>;
81
+ sampleDifferences: SchemaDifference[];
82
+ summary: string;
83
+ };
84
+ /**
85
+ * Format aggregated differences from multiple items in a git-diff style
86
+ */
87
+ export declare function formatAggregatedDifferences(result: ReturnType<typeof compareMultipleWithSchema>): string;
88
+ /**
89
+ * Format aggregated differences with per-item breakdown
90
+ */
91
+ export declare function formatAggregatedDifferencesDetailed(result: ReturnType<typeof compareMultipleWithSchema>, schema: z.ZodTypeAny): string;
92
+ //# sourceMappingURL=schema-comparison.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema-comparison.d.ts","sourceRoot":"","sources":["../../src/utils/schema-comparison.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,uDAAuD;IACvD,WAAW,EAAE,SAAS,EAAE,CAAC;IACzB,wEAAwE;IACxE,qBAAqB,EAAE,SAAS,EAAE,CAAC;IACnC,uEAAuE;IACvE,qBAAqB,EAAE,SAAS,EAAE,CAAC;IACnC,kCAAkC;IAClC,cAAc,EAAE,YAAY,EAAE,CAAC;IAC/B,gCAAgC;IAChC,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IACpD,yBAAyB;IACzB,OAAO,EAAE;QACP,gBAAgB,EAAE,MAAM,CAAC;QACzB,oBAAoB,EAAE,MAAM,CAAC;QAC7B,oBAAoB,EAAE,MAAM,CAAC;QAC7B,mBAAmB,EAAE,MAAM,CAAC;QAC5B,YAAY,EAAE,OAAO,CAAC;KACvB,CAAC;CACH;AAED,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,OAAO,CAAC;CACtB;AAqHD;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,CAAC,CAAC,UAAU,EACpB,IAAI,EAAE,OAAO,EACb,QAAQ,SAAK,GACZ,gBAAgB,CAyJlB;AAkCD;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,gBAAgB,EACtB,MAAM,SAAI,GACT,MAAM,CAgDR;AAED,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,CAAC,CAAC,UAAU,EACpB,KAAK,EAAE,OAAO,EAAE,EAChB,QAAQ,SAAK,GACZ;IACD,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,cAAc,EAAE,cAAc,EAAE,CAAC;IACjC,kBAAkB,EAAE,cAAc,EAAE,CAAC;IACrC,kBAAkB,EAAE,cAAc,EAAE,CAAC;IACrC,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;IAC5C,iBAAiB,EAAE,gBAAgB,EAAE,CAAC;IACtC,OAAO,EAAE,MAAM,CAAC;CACjB,CAwEA;AAmUD;;GAEG;AACH,wBAAgB,2BAA2B,CACzC,MAAM,EAAE,UAAU,CAAC,OAAO,yBAAyB,CAAC,GACnD,MAAM,CAgDR;AAED;;GAEG;AACH,wBAAgB,mCAAmC,CACjD,MAAM,EAAE,UAAU,CAAC,OAAO,yBAAyB,CAAC,EACpD,MAAM,EAAE,CAAC,CAAC,UAAU,GACnB,MAAM,CA8CR"}