@bubblelab/bubble-core 0.1.9 → 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.
- package/dist/bubble-bundle.d.ts +633 -1658
- package/dist/bubble-factory.d.ts.map +1 -1
- package/dist/bubble-factory.js +165 -43
- package/dist/bubble-factory.js.map +1 -1
- package/dist/bubble-flow/bubble-flow-class.d.ts +22 -1
- package/dist/bubble-flow/bubble-flow-class.d.ts.map +1 -1
- package/dist/bubble-flow/bubble-flow-class.js +36 -0
- package/dist/bubble-flow/bubble-flow-class.js.map +1 -1
- package/dist/bubble-flow/sample/data-analyst-flow.d.ts +1 -1
- package/dist/bubble-flow/sample/data-analyst-flow.d.ts.map +1 -1
- package/dist/bubble-flow/sample/error-ts.d.ts +1 -1
- package/dist/bubble-flow/sample/error-ts.d.ts.map +1 -1
- package/dist/bubble-flow/sample/sanitytest.d.ts +1 -1
- package/dist/bubble-flow/sample/sanitytest.d.ts.map +1 -1
- package/dist/bubble-flow/sample/simple-webhook-2.d.ts +1 -1
- package/dist/bubble-flow/sample/simple-webhook-2.d.ts.map +1 -1
- package/dist/bubble-flow/sample/simple-webhook.d.ts +1 -1
- package/dist/bubble-flow/sample/simple-webhook.d.ts.map +1 -1
- package/dist/bubble-flow/sample/simplified-data-analysis.flow.d.ts +1 -1
- package/dist/bubble-flow/sample/simplified-data-analysis.flow.d.ts.map +1 -1
- package/dist/bubble-flow/sample/simplified-data-analysis.flow.js +6 -3
- package/dist/bubble-flow/sample/simplified-data-analysis.flow.js.map +1 -1
- package/dist/bubble-flow/sample/slack-v0.1.d.ts +1 -1
- package/dist/bubble-flow/sample/slack-v0.1.d.ts.map +1 -1
- package/dist/bubble-flow/sample/slackagenttest.d.ts +1 -1
- package/dist/bubble-flow/sample/slackagenttest.d.ts.map +1 -1
- package/dist/bubbles/service-bubble/agi-inc.d.ts +1121 -0
- package/dist/bubbles/service-bubble/agi-inc.d.ts.map +1 -0
- package/dist/bubbles/service-bubble/agi-inc.js +730 -0
- package/dist/bubbles/service-bubble/agi-inc.js.map +1 -0
- package/dist/bubbles/service-bubble/ai-agent.d.ts +297 -85
- package/dist/bubbles/service-bubble/ai-agent.d.ts.map +1 -1
- package/dist/bubbles/service-bubble/ai-agent.js +535 -399
- package/dist/bubbles/service-bubble/ai-agent.js.map +1 -1
- package/dist/bubbles/service-bubble/airtable.d.ts +1753 -0
- package/dist/bubbles/service-bubble/airtable.d.ts.map +1 -0
- package/dist/bubbles/service-bubble/airtable.js +1173 -0
- package/dist/bubbles/service-bubble/airtable.js.map +1 -0
- package/dist/bubbles/service-bubble/apify/actors/google-maps-scraper.d.ts +240 -0
- package/dist/bubbles/service-bubble/apify/actors/google-maps-scraper.d.ts.map +1 -0
- package/dist/bubbles/service-bubble/apify/actors/google-maps-scraper.js +119 -0
- package/dist/bubbles/service-bubble/apify/actors/google-maps-scraper.js.map +1 -0
- package/dist/bubbles/service-bubble/apify/actors/instagram-hashtag-scraper.d.ts +38 -38
- package/dist/bubbles/service-bubble/apify/actors/instagram-scraper.d.ts +56 -56
- package/dist/bubbles/service-bubble/apify/actors/linkedin-jobs-scraper.d.ts +137 -0
- package/dist/bubbles/service-bubble/apify/actors/linkedin-jobs-scraper.d.ts.map +1 -0
- package/dist/bubbles/service-bubble/apify/actors/linkedin-jobs-scraper.js +81 -0
- package/dist/bubbles/service-bubble/apify/actors/linkedin-jobs-scraper.js.map +1 -0
- package/dist/bubbles/service-bubble/apify/actors/linkedin-posts-search.d.ts +27 -27
- package/dist/bubbles/service-bubble/apify/actors/linkedin-profile-posts.d.ts +38 -38
- package/dist/bubbles/service-bubble/apify/actors/tiktok-scraper.d.ts +488 -0
- package/dist/bubbles/service-bubble/apify/actors/tiktok-scraper.d.ts.map +1 -0
- package/dist/bubbles/service-bubble/apify/actors/tiktok-scraper.js +463 -0
- package/dist/bubbles/service-bubble/apify/actors/tiktok-scraper.js.map +1 -0
- package/dist/bubbles/service-bubble/apify/actors/twitter-scraper.d.ts +262 -0
- package/dist/bubbles/service-bubble/apify/actors/twitter-scraper.d.ts.map +1 -0
- package/dist/bubbles/service-bubble/apify/actors/twitter-scraper.js +291 -0
- package/dist/bubbles/service-bubble/apify/actors/twitter-scraper.js.map +1 -0
- package/dist/bubbles/service-bubble/apify/actors/youtube-scraper.d.ts +184 -0
- package/dist/bubbles/service-bubble/apify/actors/youtube-scraper.d.ts.map +1 -0
- package/dist/bubbles/service-bubble/apify/actors/youtube-scraper.js +145 -0
- package/dist/bubbles/service-bubble/apify/actors/youtube-scraper.js.map +1 -0
- package/dist/bubbles/service-bubble/apify/actors/youtube-transcript-scraper.d.ts +52 -0
- package/dist/bubbles/service-bubble/apify/actors/youtube-transcript-scraper.d.ts.map +1 -0
- package/dist/bubbles/service-bubble/apify/actors/youtube-transcript-scraper.js +29 -0
- package/dist/bubbles/service-bubble/apify/actors/youtube-transcript-scraper.js.map +1 -0
- package/dist/bubbles/service-bubble/apify/apify-scraper.schema.d.ts +1483 -123
- package/dist/bubbles/service-bubble/apify/apify-scraper.schema.d.ts.map +1 -1
- package/dist/bubbles/service-bubble/apify/apify-scraper.schema.js +48 -0
- package/dist/bubbles/service-bubble/apify/apify-scraper.schema.js.map +1 -1
- package/dist/bubbles/service-bubble/apify/apify.d.ts +156 -11
- package/dist/bubbles/service-bubble/apify/apify.d.ts.map +1 -1
- package/dist/bubbles/service-bubble/apify/apify.js +205 -32
- package/dist/bubbles/service-bubble/apify/apify.js.map +1 -1
- package/dist/bubbles/service-bubble/apify/index.d.ts +2 -0
- package/dist/bubbles/service-bubble/apify/index.d.ts.map +1 -1
- package/dist/bubbles/service-bubble/apify/index.js +3 -0
- package/dist/bubbles/service-bubble/apify/index.js.map +1 -1
- package/dist/bubbles/service-bubble/apify/types.js +1 -2
- package/dist/bubbles/service-bubble/apify/types.js.map +1 -1
- package/dist/bubbles/service-bubble/eleven-labs.d.ts +421 -0
- package/dist/bubbles/service-bubble/eleven-labs.d.ts.map +1 -0
- package/dist/bubbles/service-bubble/eleven-labs.js +479 -0
- package/dist/bubbles/service-bubble/eleven-labs.js.map +1 -0
- package/dist/bubbles/service-bubble/firecrawl.d.ts +37748 -0
- package/dist/bubbles/service-bubble/firecrawl.d.ts.map +1 -0
- package/dist/bubbles/service-bubble/firecrawl.js +1489 -0
- package/dist/bubbles/service-bubble/firecrawl.js.map +1 -0
- package/dist/bubbles/service-bubble/followupboss.d.ts +6822 -0
- package/dist/bubbles/service-bubble/followupboss.d.ts.map +1 -0
- package/dist/bubbles/service-bubble/followupboss.js +1394 -0
- package/dist/bubbles/service-bubble/followupboss.js.map +1 -0
- package/dist/bubbles/service-bubble/github.d.ts +2399 -0
- package/dist/bubbles/service-bubble/github.d.ts.map +1 -0
- package/dist/bubbles/service-bubble/github.js +1052 -0
- package/dist/bubbles/service-bubble/github.js.map +1 -0
- package/dist/bubbles/service-bubble/gmail.d.ts +726 -232
- package/dist/bubbles/service-bubble/gmail.d.ts.map +1 -1
- package/dist/bubbles/service-bubble/gmail.js +435 -7
- package/dist/bubbles/service-bubble/gmail.js.map +1 -1
- package/dist/bubbles/service-bubble/google-calendar.d.ts +8 -8
- package/dist/bubbles/service-bubble/google-drive.d.ts +270 -40
- package/dist/bubbles/service-bubble/google-drive.d.ts.map +1 -1
- package/dist/bubbles/service-bubble/google-drive.js +100 -78
- package/dist/bubbles/service-bubble/google-drive.js.map +1 -1
- package/dist/bubbles/service-bubble/google-sheets/google-sheets.d.ts +943 -0
- package/dist/bubbles/service-bubble/google-sheets/google-sheets.d.ts.map +1 -0
- package/dist/bubbles/service-bubble/google-sheets/google-sheets.integration.flow.d.ts +31 -0
- package/dist/bubbles/service-bubble/google-sheets/google-sheets.integration.flow.d.ts.map +1 -0
- package/dist/bubbles/service-bubble/google-sheets/google-sheets.integration.flow.js +184 -0
- package/dist/bubbles/service-bubble/google-sheets/google-sheets.integration.flow.js.map +1 -0
- package/dist/bubbles/service-bubble/google-sheets/google-sheets.js +401 -0
- package/dist/bubbles/service-bubble/google-sheets/google-sheets.js.map +1 -0
- package/dist/bubbles/service-bubble/google-sheets/google-sheets.schema.d.ts +1024 -0
- package/dist/bubbles/service-bubble/google-sheets/google-sheets.schema.d.ts.map +1 -0
- package/dist/bubbles/service-bubble/{google-sheets.js → google-sheets/google-sheets.schema.js} +45 -409
- package/dist/bubbles/service-bubble/google-sheets/google-sheets.schema.js.map +1 -0
- package/dist/bubbles/service-bubble/google-sheets/google-sheets.utils.d.ts +38 -0
- package/dist/bubbles/service-bubble/google-sheets/google-sheets.utils.d.ts.map +1 -0
- package/dist/bubbles/service-bubble/google-sheets/google-sheets.utils.js +183 -0
- package/dist/bubbles/service-bubble/google-sheets/google-sheets.utils.js.map +1 -0
- package/dist/bubbles/service-bubble/google-sheets/index.d.ts +4 -0
- package/dist/bubbles/service-bubble/google-sheets/index.d.ts.map +1 -0
- package/dist/bubbles/service-bubble/google-sheets/index.js +4 -0
- package/dist/bubbles/service-bubble/google-sheets/index.js.map +1 -0
- package/dist/bubbles/service-bubble/hello-world.js +2 -2
- package/dist/bubbles/service-bubble/hello-world.js.map +1 -1
- package/dist/bubbles/service-bubble/http.d.ts +6 -6
- package/dist/bubbles/service-bubble/http.d.ts.map +1 -1
- package/dist/bubbles/service-bubble/http.js +7 -1
- package/dist/bubbles/service-bubble/http.js.map +1 -1
- package/dist/bubbles/service-bubble/insforge-db.d.ts +140 -0
- package/dist/bubbles/service-bubble/insforge-db.d.ts.map +1 -0
- package/dist/bubbles/service-bubble/insforge-db.js +260 -0
- package/dist/bubbles/service-bubble/insforge-db.js.map +1 -0
- package/dist/bubbles/service-bubble/notion/index.d.ts +3 -0
- package/dist/bubbles/service-bubble/notion/index.d.ts.map +1 -0
- package/dist/bubbles/service-bubble/notion/index.js +3 -0
- package/dist/bubbles/service-bubble/notion/index.js.map +1 -0
- package/dist/bubbles/service-bubble/notion/notion.d.ts +35405 -0
- package/dist/bubbles/service-bubble/notion/notion.d.ts.map +1 -0
- package/dist/bubbles/service-bubble/notion/notion.js +1492 -0
- package/dist/bubbles/service-bubble/notion/notion.js.map +1 -0
- package/dist/bubbles/service-bubble/notion/property-schemas.d.ts +1148 -0
- package/dist/bubbles/service-bubble/notion/property-schemas.d.ts.map +1 -0
- package/dist/bubbles/service-bubble/notion/property-schemas.js +341 -0
- package/dist/bubbles/service-bubble/notion/property-schemas.js.map +1 -0
- package/dist/bubbles/service-bubble/postgresql.d.ts +8 -8
- package/dist/bubbles/service-bubble/resend.d.ts +30 -9
- package/dist/bubbles/service-bubble/resend.d.ts.map +1 -1
- package/dist/bubbles/service-bubble/resend.js +133 -2
- package/dist/bubbles/service-bubble/resend.js.map +1 -1
- package/dist/bubbles/service-bubble/slack.d.ts +525 -525
- package/dist/bubbles/service-bubble/slack.d.ts.map +1 -1
- package/dist/bubbles/service-bubble/slack.js +2 -2
- package/dist/bubbles/service-bubble/slack.js.map +1 -1
- package/dist/bubbles/service-bubble/storage.d.ts +21 -17
- package/dist/bubbles/service-bubble/storage.d.ts.map +1 -1
- package/dist/bubbles/service-bubble/storage.js +59 -7
- package/dist/bubbles/service-bubble/storage.js.map +1 -1
- package/dist/bubbles/service-bubble/telegram.d.ts +7742 -0
- package/dist/bubbles/service-bubble/telegram.d.ts.map +1 -0
- package/dist/bubbles/service-bubble/telegram.js +1132 -0
- package/dist/bubbles/service-bubble/telegram.js.map +1 -0
- package/dist/bubbles/tool-bubble/bubbleflow-validation-tool.d.ts +60 -4
- package/dist/bubbles/tool-bubble/bubbleflow-validation-tool.d.ts.map +1 -1
- package/dist/bubbles/tool-bubble/bubbleflow-validation-tool.js +12 -0
- package/dist/bubbles/tool-bubble/bubbleflow-validation-tool.js.map +1 -1
- package/dist/bubbles/tool-bubble/chart-js-tool.d.ts +4 -4
- package/dist/bubbles/tool-bubble/code-edit-tool.d.ts +188 -0
- package/dist/bubbles/tool-bubble/code-edit-tool.d.ts.map +1 -0
- package/dist/bubbles/tool-bubble/code-edit-tool.js +321 -0
- package/dist/bubbles/tool-bubble/code-edit-tool.js.map +1 -0
- package/dist/bubbles/tool-bubble/get-bubble-details-tool.d.ts +8 -4
- package/dist/bubbles/tool-bubble/get-bubble-details-tool.d.ts.map +1 -1
- package/dist/bubbles/tool-bubble/get-bubble-details-tool.js +132 -19
- package/dist/bubbles/tool-bubble/get-bubble-details-tool.js.map +1 -1
- package/dist/bubbles/tool-bubble/google-maps-tool.d.ts +455 -0
- package/dist/bubbles/tool-bubble/google-maps-tool.d.ts.map +1 -0
- package/dist/bubbles/tool-bubble/google-maps-tool.js +205 -0
- package/dist/bubbles/tool-bubble/google-maps-tool.js.map +1 -0
- package/dist/bubbles/tool-bubble/instagram-tool.d.ts +90 -90
- package/dist/bubbles/tool-bubble/instagram-tool.d.ts.map +1 -1
- package/dist/bubbles/tool-bubble/instagram-tool.js +2 -2
- package/dist/bubbles/tool-bubble/instagram-tool.js.map +1 -1
- package/dist/bubbles/tool-bubble/linkedin-tool.d.ts +808 -431
- package/dist/bubbles/tool-bubble/linkedin-tool.d.ts.map +1 -1
- package/dist/bubbles/tool-bubble/linkedin-tool.js +232 -12
- package/dist/bubbles/tool-bubble/linkedin-tool.js.map +1 -1
- package/dist/bubbles/tool-bubble/list-bubbles-tool.d.ts +4 -4
- package/dist/bubbles/tool-bubble/reddit-scrape-tool.d.ts +21 -16
- package/dist/bubbles/tool-bubble/reddit-scrape-tool.d.ts.map +1 -1
- package/dist/bubbles/tool-bubble/reddit-scrape-tool.js +97 -22
- package/dist/bubbles/tool-bubble/reddit-scrape-tool.js.map +1 -1
- package/dist/bubbles/tool-bubble/research-agent-tool.d.ts +17 -16
- package/dist/bubbles/tool-bubble/research-agent-tool.d.ts.map +1 -1
- package/dist/bubbles/tool-bubble/research-agent-tool.js +27 -17
- package/dist/bubbles/tool-bubble/research-agent-tool.js.map +1 -1
- package/dist/bubbles/tool-bubble/sql-query-tool.d.ts +4 -4
- package/dist/bubbles/tool-bubble/tiktok-tool.d.ts +485 -0
- package/dist/bubbles/tool-bubble/tiktok-tool.d.ts.map +1 -0
- package/dist/bubbles/tool-bubble/tiktok-tool.js +226 -0
- package/dist/bubbles/tool-bubble/tiktok-tool.js.map +1 -0
- package/dist/bubbles/tool-bubble/twitter-tool.d.ts +947 -0
- package/dist/bubbles/tool-bubble/twitter-tool.d.ts.map +1 -0
- package/dist/bubbles/tool-bubble/twitter-tool.js +494 -0
- package/dist/bubbles/tool-bubble/twitter-tool.js.map +1 -0
- package/dist/bubbles/tool-bubble/web-crawl-tool.d.ts +32 -26
- package/dist/bubbles/tool-bubble/web-crawl-tool.d.ts.map +1 -1
- package/dist/bubbles/tool-bubble/web-crawl-tool.js +58 -59
- package/dist/bubbles/tool-bubble/web-crawl-tool.js.map +1 -1
- package/dist/bubbles/tool-bubble/web-extract-tool.d.ts +4 -4
- package/dist/bubbles/tool-bubble/web-extract-tool.d.ts.map +1 -1
- package/dist/bubbles/tool-bubble/web-extract-tool.js +17 -17
- package/dist/bubbles/tool-bubble/web-extract-tool.js.map +1 -1
- package/dist/bubbles/tool-bubble/web-scrape-tool.d.ts +23 -115
- package/dist/bubbles/tool-bubble/web-scrape-tool.d.ts.map +1 -1
- package/dist/bubbles/tool-bubble/web-scrape-tool.js +51 -72
- package/dist/bubbles/tool-bubble/web-scrape-tool.js.map +1 -1
- package/dist/bubbles/tool-bubble/web-search-tool.d.ts +18 -6
- package/dist/bubbles/tool-bubble/web-search-tool.d.ts.map +1 -1
- package/dist/bubbles/tool-bubble/web-search-tool.js +46 -32
- package/dist/bubbles/tool-bubble/web-search-tool.js.map +1 -1
- package/dist/bubbles/tool-bubble/youtube-tool.d.ts +394 -0
- package/dist/bubbles/tool-bubble/youtube-tool.d.ts.map +1 -0
- package/dist/bubbles/tool-bubble/youtube-tool.js +352 -0
- package/dist/bubbles/tool-bubble/youtube-tool.js.map +1 -0
- package/dist/bubbles/workflow-bubble/generate-document.workflow.d.ts +78 -78
- package/dist/bubbles/workflow-bubble/generate-document.workflow.js +1 -1
- package/dist/bubbles/workflow-bubble/parse-document.workflow.d.ts +62 -62
- package/dist/bubbles/workflow-bubble/parse-document.workflow.js +1 -1
- package/dist/bubbles/workflow-bubble/pdf-form-operations.workflow.d.ts +80 -80
- package/dist/bubbles/workflow-bubble/pdf-form-operations.workflow.d.ts.map +1 -1
- package/dist/bubbles/workflow-bubble/pdf-form-operations.workflow.js +4 -4
- package/dist/bubbles/workflow-bubble/pdf-form-operations.workflow.js.map +1 -1
- package/dist/bubbles/workflow-bubble/pdf-ocr.workflow.d.ts +52 -52
- package/dist/bubbles/workflow-bubble/pdf-ocr.workflow.d.ts.map +1 -1
- package/dist/bubbles/workflow-bubble/pdf-ocr.workflow.js +2 -2
- package/dist/bubbles/workflow-bubble/pdf-ocr.workflow.js.map +1 -1
- package/dist/bubbles/workflow-bubble/slack-data-assistant.workflow.d.ts +32 -32
- package/dist/bubbles/workflow-bubble/slack-data-assistant.workflow.d.ts.map +1 -1
- package/dist/bubbles/workflow-bubble/slack-data-assistant.workflow.js +6 -6
- package/dist/bubbles/workflow-bubble/slack-data-assistant.workflow.js.map +1 -1
- package/dist/bubbles/workflow-bubble/slack-formatter-agent.d.ts +46 -46
- package/dist/bubbles/workflow-bubble/slack-formatter-agent.d.ts.map +1 -1
- package/dist/bubbles/workflow-bubble/slack-formatter-agent.js +24 -4
- package/dist/bubbles/workflow-bubble/slack-formatter-agent.js.map +1 -1
- package/dist/bubbles/workflow-bubble/slack-notifier.workflow.d.ts +27 -27
- package/dist/bubbles/workflow-bubble/slack-notifier.workflow.d.ts.map +1 -1
- package/dist/bubbles/workflow-bubble/slack-notifier.workflow.js +8 -8
- package/dist/bubbles/workflow-bubble/slack-notifier.workflow.js.map +1 -1
- package/dist/bubbles.json +251 -88
- package/dist/index.d.ts +27 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +18 -4
- package/dist/index.js.map +1 -1
- package/dist/logging/BubbleLogger.d.ts +45 -16
- package/dist/logging/BubbleLogger.d.ts.map +1 -1
- package/dist/logging/BubbleLogger.js +197 -89
- package/dist/logging/BubbleLogger.js.map +1 -1
- package/dist/logging/StreamingBubbleLogger.d.ts +13 -1
- package/dist/logging/StreamingBubbleLogger.d.ts.map +1 -1
- package/dist/logging/StreamingBubbleLogger.js +56 -13
- package/dist/logging/StreamingBubbleLogger.js.map +1 -1
- package/dist/logging/WebhookStreamLogger.d.ts +66 -0
- package/dist/logging/WebhookStreamLogger.d.ts.map +1 -0
- package/dist/logging/WebhookStreamLogger.js +291 -0
- package/dist/logging/WebhookStreamLogger.js.map +1 -0
- package/dist/types/available-tools.d.ts +1 -1
- package/dist/types/available-tools.d.ts.map +1 -1
- package/dist/types/available-tools.js +1 -0
- package/dist/types/available-tools.js.map +1 -1
- package/dist/types/base-bubble-class.d.ts +7 -5
- package/dist/types/base-bubble-class.d.ts.map +1 -1
- package/dist/types/base-bubble-class.js +63 -40
- package/dist/types/base-bubble-class.js.map +1 -1
- package/dist/types/bubble.d.ts +3 -10
- package/dist/types/bubble.d.ts.map +1 -1
- package/dist/types/bubble.js +1 -1
- package/dist/types/bubble.js.map +1 -1
- package/dist/types/service-bubble-class.d.ts +2 -2
- package/dist/types/service-bubble-class.d.ts.map +1 -1
- package/dist/types/service-bubble-class.js +2 -2
- package/dist/types/service-bubble-class.js.map +1 -1
- package/dist/types/tool-bubble-class.d.ts +2 -2
- package/dist/types/tool-bubble-class.d.ts.map +1 -1
- package/dist/types/tool-bubble-class.js +2 -4
- package/dist/types/tool-bubble-class.js.map +1 -1
- package/dist/types/workflow-bubble-class.d.ts +2 -2
- package/dist/types/workflow-bubble-class.d.ts.map +1 -1
- package/dist/types/workflow-bubble-class.js +2 -2
- package/dist/types/workflow-bubble-class.js.map +1 -1
- package/dist/utils/agent-formatter.d.ts +14 -2
- package/dist/utils/agent-formatter.d.ts.map +1 -1
- package/dist/utils/agent-formatter.js +176 -28
- package/dist/utils/agent-formatter.js.map +1 -1
- package/dist/utils/bubbleflow-validation.d.ts +7 -0
- package/dist/utils/bubbleflow-validation.d.ts.map +1 -1
- package/dist/utils/bubbleflow-validation.js +257 -35
- package/dist/utils/bubbleflow-validation.js.map +1 -1
- package/dist/utils/error-sanitizer.d.ts +12 -0
- package/dist/utils/error-sanitizer.d.ts.map +1 -0
- package/dist/utils/error-sanitizer.js +77 -0
- package/dist/utils/error-sanitizer.js.map +1 -0
- package/dist/utils/json-parsing.d.ts.map +1 -1
- package/dist/utils/json-parsing.js +146 -0
- package/dist/utils/json-parsing.js.map +1 -1
- package/dist/utils/safe-gemini-chat.d.ts +31 -0
- package/dist/utils/safe-gemini-chat.d.ts.map +1 -0
- package/dist/utils/safe-gemini-chat.js +93 -0
- package/dist/utils/safe-gemini-chat.js.map +1 -0
- package/dist/utils/schema-comparison.d.ts +92 -0
- package/dist/utils/schema-comparison.d.ts.map +1 -0
- package/dist/utils/schema-comparison.js +716 -0
- package/dist/utils/schema-comparison.js.map +1 -0
- package/dist/utils/zod-schema.d.ts +24 -0
- package/dist/utils/zod-schema.d.ts.map +1 -0
- package/dist/utils/zod-schema.js +56 -0
- package/dist/utils/zod-schema.js.map +1 -0
- package/package.json +7 -6
- package/dist/bubble-trigger/index.d.ts +0 -2
- package/dist/bubble-trigger/index.d.ts.map +0 -1
- package/dist/bubble-trigger/index.js +0 -2
- package/dist/bubble-trigger/index.js.map +0 -1
- package/dist/bubble-trigger/types.d.ts +0 -87
- package/dist/bubble-trigger/types.d.ts.map +0 -1
- package/dist/bubble-trigger/types.js +0 -14
- package/dist/bubble-trigger/types.js.map +0 -1
- package/dist/bubbles/service-bubble/apify/api-scraper.schema.d.ts +0 -370
- package/dist/bubbles/service-bubble/apify/api-scraper.schema.d.ts.map +0 -1
- package/dist/bubbles/service-bubble/apify/api-scraper.schema.js +0 -14
- package/dist/bubbles/service-bubble/apify/api-scraper.schema.js.map +0 -1
- package/dist/bubbles/service-bubble/apify.d.ts +0 -136
- package/dist/bubbles/service-bubble/apify.d.ts.map +0 -1
- package/dist/bubbles/service-bubble/apify.js +0 -282
- package/dist/bubbles/service-bubble/apify.js.map +0 -1
- package/dist/bubbles/service-bubble/google-sheets.d.ts +0 -1811
- package/dist/bubbles/service-bubble/google-sheets.d.ts.map +0 -1
- package/dist/bubbles/service-bubble/google-sheets.js.map +0 -1
- package/dist/bubbles/workflow-bubble/bubbleflow-generator.workflow.d.ts +0 -114
- package/dist/bubbles/workflow-bubble/bubbleflow-generator.workflow.d.ts.map +0 -1
- package/dist/bubbles/workflow-bubble/bubbleflow-generator.workflow.js +0 -782
- package/dist/bubbles/workflow-bubble/bubbleflow-generator.workflow.js.map +0 -1
- package/dist/types/ai-models.d.ts +0 -4
- package/dist/types/ai-models.d.ts.map +0 -1
- package/dist/types/ai-models.js +0 -20
- package/dist/types/ai-models.js.map +0 -1
- package/dist/types/api-scraper.schema.d.ts +0 -453
- package/dist/types/api-scraper.schema.d.ts.map +0 -1
- package/dist/types/api-scraper.schema.js +0 -160
- package/dist/types/api-scraper.schema.js.map +0 -1
- package/dist/utils/param-helper.d.ts +0 -2
- package/dist/utils/param-helper.d.ts.map +0 -1
- package/dist/utils/param-helper.js +0 -5
- package/dist/utils/param-helper.js.map +0 -1
|
@@ -49,7 +49,7 @@ declare const RedditPostSchema: z.ZodObject<{
|
|
|
49
49
|
flair?: string | undefined;
|
|
50
50
|
}>;
|
|
51
51
|
declare const RedditScrapeToolParamsSchema: z.ZodObject<{
|
|
52
|
-
subreddit: z.ZodString
|
|
52
|
+
subreddit: z.ZodPipeline<z.ZodEffects<z.ZodString, string, string>, z.ZodString>;
|
|
53
53
|
limit: z.ZodDefault<z.ZodNumber>;
|
|
54
54
|
sort: z.ZodDefault<z.ZodEnum<["hot", "new", "top", "rising"]>>;
|
|
55
55
|
timeFilter: z.ZodOptional<z.ZodEnum<["hour", "day", "week", "month", "year", "all"]>>;
|
|
@@ -64,14 +64,14 @@ declare const RedditScrapeToolParamsSchema: z.ZodObject<{
|
|
|
64
64
|
filterToday: boolean;
|
|
65
65
|
includeStickied: boolean;
|
|
66
66
|
credentials?: Partial<Record<CredentialType, string>> | undefined;
|
|
67
|
-
timeFilter?: "all" | "hour" | "
|
|
67
|
+
timeFilter?: "all" | "hour" | "week" | "month" | "year" | "day" | undefined;
|
|
68
68
|
minScore?: number | undefined;
|
|
69
69
|
}, {
|
|
70
70
|
subreddit: string;
|
|
71
71
|
sort?: "hot" | "new" | "top" | "rising" | undefined;
|
|
72
72
|
credentials?: Partial<Record<CredentialType, string>> | undefined;
|
|
73
73
|
limit?: number | undefined;
|
|
74
|
-
timeFilter?: "all" | "hour" | "
|
|
74
|
+
timeFilter?: "all" | "hour" | "week" | "month" | "year" | "day" | undefined;
|
|
75
75
|
filterToday?: boolean | undefined;
|
|
76
76
|
includeStickied?: boolean | undefined;
|
|
77
77
|
minScore?: number | undefined;
|
|
@@ -134,20 +134,20 @@ declare const RedditScrapeToolResultSchema: z.ZodObject<{
|
|
|
134
134
|
apiEndpoint: z.ZodString;
|
|
135
135
|
}, "strip", z.ZodTypeAny, {
|
|
136
136
|
sort: string;
|
|
137
|
+
scrapedAt: string;
|
|
137
138
|
subreddit: string;
|
|
138
139
|
requestedLimit: number;
|
|
139
140
|
actualCount: number;
|
|
140
141
|
filteredCount: number;
|
|
141
|
-
scrapedAt: string;
|
|
142
142
|
apiEndpoint: string;
|
|
143
143
|
timeFilter?: string | undefined;
|
|
144
144
|
}, {
|
|
145
145
|
sort: string;
|
|
146
|
+
scrapedAt: string;
|
|
146
147
|
subreddit: string;
|
|
147
148
|
requestedLimit: number;
|
|
148
149
|
actualCount: number;
|
|
149
150
|
filteredCount: number;
|
|
150
|
-
scrapedAt: string;
|
|
151
151
|
apiEndpoint: string;
|
|
152
152
|
timeFilter?: string | undefined;
|
|
153
153
|
}>;
|
|
@@ -158,11 +158,11 @@ declare const RedditScrapeToolResultSchema: z.ZodObject<{
|
|
|
158
158
|
success: boolean;
|
|
159
159
|
metadata: {
|
|
160
160
|
sort: string;
|
|
161
|
+
scrapedAt: string;
|
|
161
162
|
subreddit: string;
|
|
162
163
|
requestedLimit: number;
|
|
163
164
|
actualCount: number;
|
|
164
165
|
filteredCount: number;
|
|
165
|
-
scrapedAt: string;
|
|
166
166
|
apiEndpoint: string;
|
|
167
167
|
timeFilter?: string | undefined;
|
|
168
168
|
};
|
|
@@ -187,11 +187,11 @@ declare const RedditScrapeToolResultSchema: z.ZodObject<{
|
|
|
187
187
|
success: boolean;
|
|
188
188
|
metadata: {
|
|
189
189
|
sort: string;
|
|
190
|
+
scrapedAt: string;
|
|
190
191
|
subreddit: string;
|
|
191
192
|
requestedLimit: number;
|
|
192
193
|
actualCount: number;
|
|
193
194
|
filteredCount: number;
|
|
194
|
-
scrapedAt: string;
|
|
195
195
|
apiEndpoint: string;
|
|
196
196
|
timeFilter?: string | undefined;
|
|
197
197
|
};
|
|
@@ -219,7 +219,7 @@ type RedditPost = z.output<typeof RedditPostSchema>;
|
|
|
219
219
|
export declare class RedditScrapeTool extends ToolBubble<RedditScrapeToolParams, RedditScrapeToolResult> {
|
|
220
220
|
static readonly bubbleName: BubbleName;
|
|
221
221
|
static readonly schema: z.ZodObject<{
|
|
222
|
-
subreddit: z.ZodString
|
|
222
|
+
subreddit: z.ZodPipeline<z.ZodEffects<z.ZodString, string, string>, z.ZodString>;
|
|
223
223
|
limit: z.ZodDefault<z.ZodNumber>;
|
|
224
224
|
sort: z.ZodDefault<z.ZodEnum<["hot", "new", "top", "rising"]>>;
|
|
225
225
|
timeFilter: z.ZodOptional<z.ZodEnum<["hour", "day", "week", "month", "year", "all"]>>;
|
|
@@ -234,14 +234,14 @@ export declare class RedditScrapeTool extends ToolBubble<RedditScrapeToolParams,
|
|
|
234
234
|
filterToday: boolean;
|
|
235
235
|
includeStickied: boolean;
|
|
236
236
|
credentials?: Partial<Record<CredentialType, string>> | undefined;
|
|
237
|
-
timeFilter?: "all" | "hour" | "
|
|
237
|
+
timeFilter?: "all" | "hour" | "week" | "month" | "year" | "day" | undefined;
|
|
238
238
|
minScore?: number | undefined;
|
|
239
239
|
}, {
|
|
240
240
|
subreddit: string;
|
|
241
241
|
sort?: "hot" | "new" | "top" | "rising" | undefined;
|
|
242
242
|
credentials?: Partial<Record<CredentialType, string>> | undefined;
|
|
243
243
|
limit?: number | undefined;
|
|
244
|
-
timeFilter?: "all" | "hour" | "
|
|
244
|
+
timeFilter?: "all" | "hour" | "week" | "month" | "year" | "day" | undefined;
|
|
245
245
|
filterToday?: boolean | undefined;
|
|
246
246
|
includeStickied?: boolean | undefined;
|
|
247
247
|
minScore?: number | undefined;
|
|
@@ -304,20 +304,20 @@ export declare class RedditScrapeTool extends ToolBubble<RedditScrapeToolParams,
|
|
|
304
304
|
apiEndpoint: z.ZodString;
|
|
305
305
|
}, "strip", z.ZodTypeAny, {
|
|
306
306
|
sort: string;
|
|
307
|
+
scrapedAt: string;
|
|
307
308
|
subreddit: string;
|
|
308
309
|
requestedLimit: number;
|
|
309
310
|
actualCount: number;
|
|
310
311
|
filteredCount: number;
|
|
311
|
-
scrapedAt: string;
|
|
312
312
|
apiEndpoint: string;
|
|
313
313
|
timeFilter?: string | undefined;
|
|
314
314
|
}, {
|
|
315
315
|
sort: string;
|
|
316
|
+
scrapedAt: string;
|
|
316
317
|
subreddit: string;
|
|
317
318
|
requestedLimit: number;
|
|
318
319
|
actualCount: number;
|
|
319
320
|
filteredCount: number;
|
|
320
|
-
scrapedAt: string;
|
|
321
321
|
apiEndpoint: string;
|
|
322
322
|
timeFilter?: string | undefined;
|
|
323
323
|
}>;
|
|
@@ -328,11 +328,11 @@ export declare class RedditScrapeTool extends ToolBubble<RedditScrapeToolParams,
|
|
|
328
328
|
success: boolean;
|
|
329
329
|
metadata: {
|
|
330
330
|
sort: string;
|
|
331
|
+
scrapedAt: string;
|
|
331
332
|
subreddit: string;
|
|
332
333
|
requestedLimit: number;
|
|
333
334
|
actualCount: number;
|
|
334
335
|
filteredCount: number;
|
|
335
|
-
scrapedAt: string;
|
|
336
336
|
apiEndpoint: string;
|
|
337
337
|
timeFilter?: string | undefined;
|
|
338
338
|
};
|
|
@@ -357,11 +357,11 @@ export declare class RedditScrapeTool extends ToolBubble<RedditScrapeToolParams,
|
|
|
357
357
|
success: boolean;
|
|
358
358
|
metadata: {
|
|
359
359
|
sort: string;
|
|
360
|
+
scrapedAt: string;
|
|
360
361
|
subreddit: string;
|
|
361
362
|
requestedLimit: number;
|
|
362
363
|
actualCount: number;
|
|
363
364
|
filteredCount: number;
|
|
364
|
-
scrapedAt: string;
|
|
365
365
|
apiEndpoint: string;
|
|
366
366
|
timeFilter?: string | undefined;
|
|
367
367
|
};
|
|
@@ -383,15 +383,20 @@ export declare class RedditScrapeTool extends ToolBubble<RedditScrapeToolParams,
|
|
|
383
383
|
}[];
|
|
384
384
|
}>;
|
|
385
385
|
static readonly shortDescription = "Scrapes posts from any Reddit subreddit with flexible filtering and sorting options";
|
|
386
|
-
static readonly longDescription = "\n A specialized tool for scraping Reddit posts from any subreddit with comprehensive filtering and sorting capabilities.\n \n \uD83D\uDD25 Core Features:\n - Scrape posts from any public subreddit\n - Multiple sorting options (hot, new, top, rising)\n - Flexible post limits (1-
|
|
386
|
+
static readonly longDescription = "\n A specialized tool for scraping Reddit posts from any subreddit with comprehensive filtering and sorting capabilities.\n \n \uD83D\uDD25 Core Features:\n - Scrape posts from any public subreddit\n - Multiple sorting options (hot, new, top, rising)\n - Flexible post limits (1-1000 posts with pagination)\n - Time-based filtering for top posts\n - Today-only filtering option\n - Score-based filtering\n - Stickied post inclusion/exclusion\n \n \uD83D\uDCCA Post Data Extracted:\n - Title, author, and content\n - Upvote scores and comment counts\n - Creation timestamps and permalinks\n - Post types (text vs link posts)\n - External URLs and domains\n - Thumbnails and flairs\n - Comprehensive metadata\n \n \uD83C\uDFAF Use Cases:\n - Monitor specific subreddits for trends\n - Gather posts for content analysis\n - Track community engagement metrics\n - Feed Reddit data into other workflows\n - Research subreddit activity patterns\n - Content aggregation and curation\n \n \u26A1 Technical Features:\n - Uses Reddit's official JSON API\n - No authentication required for public posts\n - Respects Reddit's rate limiting\n - Handles large subreddits efficiently\n - Robust error handling and validation\n - Clean, structured data output\n \n Perfect for integration with AI agents, data analysis workflows, and content monitoring systems.\n ";
|
|
387
387
|
static readonly alias = "reddit";
|
|
388
388
|
static readonly type = "tool";
|
|
389
389
|
constructor(params?: RedditScrapeToolParamsInput, context?: BubbleContext);
|
|
390
390
|
performAction(context?: BubbleContext): Promise<RedditScrapeToolResult>;
|
|
391
391
|
/**
|
|
392
|
-
* Build the Reddit JSON API URL
|
|
392
|
+
* Build the Reddit JSON API URL with optional pagination
|
|
393
393
|
*/
|
|
394
394
|
private buildRedditApiUrl;
|
|
395
|
+
/**
|
|
396
|
+
* Fetch posts with pagination support (up to 1000 posts)
|
|
397
|
+
* Makes multiple requests if needed, using the 'after' parameter for pagination
|
|
398
|
+
*/
|
|
399
|
+
private fetchPostsWithPagination;
|
|
395
400
|
/**
|
|
396
401
|
* Get a random user agent to avoid being blocked
|
|
397
402
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reddit-scrape-tool.d.ts","sourceRoot":"","sources":["../../../src/bubbles/tool-bubble/reddit-scrape-tool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAC;AAC9D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,KAAK,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAG5E,QAAA,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"reddit-scrape-tool.d.ts","sourceRoot":"","sources":["../../../src/bubbles/tool-bubble/reddit-scrape-tool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAC;AAC9D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,KAAK,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAG5E,QAAA,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAyBpB,CAAC;AAGH,QAAA,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;EAsDhC,CAAC;AAGH,QAAA,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAkBhC,CAAC;AAGH,KAAK,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,4BAA4B,CAAC,CAAC;AAC5E,KAAK,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,4BAA4B,CAAC,CAAC;AAC5E,KAAK,2BAA2B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC;AAChF,KAAK,UAAU,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAEpD,qBAAa,gBAAiB,SAAQ,UAAU,CAC9C,sBAAsB,EACtB,sBAAsB,CACvB;IAEC,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAwB;IAC9D,MAAM,CAAC,QAAQ,CAAC,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAgC;IACtD,MAAM,CAAC,QAAQ,CAAC,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAgC;IAC5D,MAAM,CAAC,QAAQ,CAAC,gBAAgB,yFACwD;IACxF,MAAM,CAAC,QAAQ,CAAC,eAAe,07CAsC7B;IACF,MAAM,CAAC,QAAQ,CAAC,KAAK,YAAY;IACjC,MAAM,CAAC,QAAQ,CAAC,IAAI,UAAU;gBAG5B,MAAM,GAAE,2BAIP,EACD,OAAO,CAAC,EAAE,aAAa;IAKnB,aAAa,CACjB,OAAO,CAAC,EAAE,aAAa,GACtB,OAAO,CAAC,sBAAsB,CAAC;IA+DlC;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAoBzB;;;OAGG;YACW,wBAAwB;IA6DtC;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAiB1B;;OAEG;YACW,eAAe;IAwD7B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAiE3B;;OAEG;IACH,OAAO,CAAC,YAAY;CA4BrB;AAGD,YAAY,EAAE,UAAU,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,CAAC"}
|
|
@@ -10,7 +10,9 @@ const RedditPostSchema = z.object({
|
|
|
10
10
|
numComments: z.number().describe('Number of comments on the post'),
|
|
11
11
|
createdUtc: z.number().describe('Post creation timestamp (Unix UTC)'),
|
|
12
12
|
postUrl: z.string().describe('Reddit url to the post'),
|
|
13
|
-
selftext: z
|
|
13
|
+
selftext: z
|
|
14
|
+
.string()
|
|
15
|
+
.describe("Post content text (for text posts/self posts). Empty for link posts which don't have text content."),
|
|
14
16
|
subreddit: z.string().describe('Subreddit name'),
|
|
15
17
|
postHint: z
|
|
16
18
|
.string()
|
|
@@ -29,14 +31,20 @@ const RedditScrapeToolParamsSchema = z.object({
|
|
|
29
31
|
subreddit: z
|
|
30
32
|
.string()
|
|
31
33
|
.min(1, 'Subreddit name is required')
|
|
32
|
-
.
|
|
33
|
-
|
|
34
|
+
.transform((val) => {
|
|
35
|
+
// Strip "r/" prefix if present (be tolerant of input format)
|
|
36
|
+
return val.startsWith('r/') ? val.substring(2) : val;
|
|
37
|
+
})
|
|
38
|
+
.pipe(z
|
|
39
|
+
.string()
|
|
40
|
+
.regex(/^[a-zA-Z0-9_]+$/, 'Subreddit name can only contain letters, numbers, and underscores'))
|
|
41
|
+
.describe('Name of the subreddit to scrape (with or without r/ prefix)'),
|
|
34
42
|
limit: z
|
|
35
43
|
.number()
|
|
36
44
|
.min(1, 'Limit must be at least 1')
|
|
37
|
-
.max(
|
|
38
|
-
.default(
|
|
39
|
-
.describe('Maximum number of posts to fetch (1-
|
|
45
|
+
.max(1000, 'Limit cannot exceed 1000')
|
|
46
|
+
.default(100)
|
|
47
|
+
.describe('Maximum number of posts to fetch (1-1000, default: 25)'),
|
|
40
48
|
sort: z
|
|
41
49
|
.enum(['hot', 'new', 'top', 'rising'])
|
|
42
50
|
.default('hot')
|
|
@@ -92,7 +100,7 @@ export class RedditScrapeTool extends ToolBubble {
|
|
|
92
100
|
🔥 Core Features:
|
|
93
101
|
- Scrape posts from any public subreddit
|
|
94
102
|
- Multiple sorting options (hot, new, top, rising)
|
|
95
|
-
- Flexible post limits (1-
|
|
103
|
+
- Flexible post limits (1-1000 posts with pagination)
|
|
96
104
|
- Time-based filtering for top posts
|
|
97
105
|
- Today-only filtering option
|
|
98
106
|
- Score-based filtering
|
|
@@ -140,13 +148,8 @@ export class RedditScrapeTool extends ToolBubble {
|
|
|
140
148
|
const scrapedAt = new Date().toISOString();
|
|
141
149
|
try {
|
|
142
150
|
console.log(`[RedditScrapeTool] Scraping r/${subreddit} with ${limit} ${sort} posts`);
|
|
143
|
-
//
|
|
144
|
-
const
|
|
145
|
-
console.log(`[RedditScrapeTool] API endpoint: ${apiUrl}`);
|
|
146
|
-
// Fetch data from Reddit's JSON API
|
|
147
|
-
const redditData = await this.fetchRedditData(apiUrl);
|
|
148
|
-
// Parse and process posts
|
|
149
|
-
const rawPosts = this.parseRedditResponse(redditData);
|
|
151
|
+
// Fetch posts with pagination support (up to 1000 posts)
|
|
152
|
+
const rawPosts = await this.fetchPostsWithPagination();
|
|
150
153
|
console.log(`[RedditScrapeTool] Found ${rawPosts.length} raw posts`);
|
|
151
154
|
// Apply filters
|
|
152
155
|
const filteredPosts = this.applyFilters(rawPosts);
|
|
@@ -163,7 +166,7 @@ export class RedditScrapeTool extends ToolBubble {
|
|
|
163
166
|
sort,
|
|
164
167
|
timeFilter,
|
|
165
168
|
scrapedAt,
|
|
166
|
-
apiEndpoint:
|
|
169
|
+
apiEndpoint: this.buildRedditApiUrl(),
|
|
167
170
|
},
|
|
168
171
|
success: true,
|
|
169
172
|
error: '',
|
|
@@ -182,7 +185,7 @@ export class RedditScrapeTool extends ToolBubble {
|
|
|
182
185
|
sort,
|
|
183
186
|
timeFilter,
|
|
184
187
|
scrapedAt,
|
|
185
|
-
apiEndpoint:
|
|
188
|
+
apiEndpoint: this.buildRedditApiUrl(),
|
|
186
189
|
},
|
|
187
190
|
success: false,
|
|
188
191
|
error: errorMessage,
|
|
@@ -190,17 +193,73 @@ export class RedditScrapeTool extends ToolBubble {
|
|
|
190
193
|
}
|
|
191
194
|
}
|
|
192
195
|
/**
|
|
193
|
-
* Build the Reddit JSON API URL
|
|
196
|
+
* Build the Reddit JSON API URL with optional pagination
|
|
194
197
|
*/
|
|
195
|
-
buildRedditApiUrl() {
|
|
196
|
-
const { subreddit, sort, timeFilter
|
|
197
|
-
|
|
198
|
+
buildRedditApiUrl(after) {
|
|
199
|
+
const { subreddit, sort, timeFilter } = this.params;
|
|
200
|
+
// Use max limit of 100 per request (Reddit API limit)
|
|
201
|
+
// Add raw_json=1 to get unprocessed JSON content (helps ensure full selftext)
|
|
202
|
+
let url = `https://www.reddit.com/r/${subreddit}/${sort}.json?limit=100&raw_json=1`;
|
|
198
203
|
// Add time filter for top posts
|
|
199
204
|
if (sort === 'top' && timeFilter) {
|
|
200
205
|
url += `&t=${timeFilter}`;
|
|
201
206
|
}
|
|
207
|
+
// Add pagination parameter if provided
|
|
208
|
+
if (after) {
|
|
209
|
+
url += `&after=${after}`;
|
|
210
|
+
}
|
|
202
211
|
return url;
|
|
203
212
|
}
|
|
213
|
+
/**
|
|
214
|
+
* Fetch posts with pagination support (up to 1000 posts)
|
|
215
|
+
* Makes multiple requests if needed, using the 'after' parameter for pagination
|
|
216
|
+
*/
|
|
217
|
+
async fetchPostsWithPagination() {
|
|
218
|
+
const { limit } = this.params;
|
|
219
|
+
const allPosts = [];
|
|
220
|
+
let after = null;
|
|
221
|
+
const maxRequests = Math.ceil(limit / 100); // Max 100 posts per request
|
|
222
|
+
for (let requestNum = 0; requestNum < maxRequests && allPosts.length < limit; requestNum++) {
|
|
223
|
+
const apiUrl = this.buildRedditApiUrl(after || undefined);
|
|
224
|
+
if (requestNum === 0) {
|
|
225
|
+
console.log(`[RedditScrapeTool] API endpoint: ${apiUrl}`);
|
|
226
|
+
}
|
|
227
|
+
else {
|
|
228
|
+
console.log(`[RedditScrapeTool] Fetching page ${requestNum + 1}...`);
|
|
229
|
+
}
|
|
230
|
+
try {
|
|
231
|
+
// Fetch data from Reddit's JSON API
|
|
232
|
+
const redditData = await this.fetchRedditData(apiUrl);
|
|
233
|
+
// Parse and process posts
|
|
234
|
+
const posts = this.parseRedditResponse(redditData);
|
|
235
|
+
allPosts.push(...posts);
|
|
236
|
+
// Stop if we've collected enough posts
|
|
237
|
+
if (allPosts.length >= limit) {
|
|
238
|
+
break;
|
|
239
|
+
}
|
|
240
|
+
// Get the 'after' parameter for next page
|
|
241
|
+
after = redditData?.data?.after || null;
|
|
242
|
+
// If no more posts available, break
|
|
243
|
+
if (!after || posts.length === 0) {
|
|
244
|
+
break;
|
|
245
|
+
}
|
|
246
|
+
// Respect rate limits - add a small delay between requests
|
|
247
|
+
if (requestNum < maxRequests - 1 && allPosts.length < limit) {
|
|
248
|
+
await new Promise((resolve) => setTimeout(resolve, 500)); // 500ms delay
|
|
249
|
+
}
|
|
250
|
+
}
|
|
251
|
+
catch (error) {
|
|
252
|
+
console.error(`[RedditScrapeTool] Error fetching page ${requestNum + 1}:`, error);
|
|
253
|
+
// If we have some posts, return what we have
|
|
254
|
+
if (allPosts.length > 0) {
|
|
255
|
+
break;
|
|
256
|
+
}
|
|
257
|
+
// If this is the first request and it fails, throw the error
|
|
258
|
+
throw error;
|
|
259
|
+
}
|
|
260
|
+
}
|
|
261
|
+
return allPosts;
|
|
262
|
+
}
|
|
204
263
|
/**
|
|
205
264
|
* Get a random user agent to avoid being blocked
|
|
206
265
|
*/
|
|
@@ -270,6 +329,22 @@ export class RedditScrapeTool extends ToolBubble {
|
|
|
270
329
|
// Skip if not a post (could be an ad or other content)
|
|
271
330
|
if (!post || !post.title)
|
|
272
331
|
continue;
|
|
332
|
+
// Extract selftext - for text posts (is_self=true), this contains the post content
|
|
333
|
+
// For link posts (is_self=false), selftext will be empty (expected - they don't have text content)
|
|
334
|
+
// Try selftext_html as fallback if selftext is empty but post is marked as self post
|
|
335
|
+
let selftext = post.selftext || '';
|
|
336
|
+
const isSelfPost = post.is_self || false;
|
|
337
|
+
// If selftext is empty but we have selftext_html and it's a self post, try to use HTML version
|
|
338
|
+
// (though we prefer plain text, this is a fallback)
|
|
339
|
+
if (isSelfPost && !selftext && post.selftext_html) {
|
|
340
|
+
// For now, we'll use selftext_html as a fallback (could decode HTML if needed)
|
|
341
|
+
selftext = post.selftext_html;
|
|
342
|
+
console.warn(`[RedditScrapeTool] Text post "${post.title.substring(0, 50)}..." has empty selftext, using selftext_html`);
|
|
343
|
+
}
|
|
344
|
+
// Debug logging for text posts without any content (might indicate an API issue)
|
|
345
|
+
if (isSelfPost && !selftext && !post.selftext_html) {
|
|
346
|
+
console.warn(`[RedditScrapeTool] Text post "${post.title.substring(0, 50)}..." has no content (empty selftext and selftext_html)`);
|
|
347
|
+
}
|
|
273
348
|
posts.push({
|
|
274
349
|
title: post.title,
|
|
275
350
|
url: post.url || '',
|
|
@@ -280,10 +355,10 @@ export class RedditScrapeTool extends ToolBubble {
|
|
|
280
355
|
postUrl: post.permalink
|
|
281
356
|
? `https://reddit.com${post.permalink}`
|
|
282
357
|
: '',
|
|
283
|
-
selftext:
|
|
358
|
+
selftext: selftext,
|
|
284
359
|
subreddit: post.subreddit || this.params.subreddit,
|
|
285
360
|
postHint: post.post_hint || null,
|
|
286
|
-
isSelf:
|
|
361
|
+
isSelf: isSelfPost,
|
|
287
362
|
thumbnail: post.thumbnail !== 'self' && post.thumbnail !== 'default'
|
|
288
363
|
? post.thumbnail
|
|
289
364
|
: undefined,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reddit-scrape-tool.js","sourceRoot":"","sources":["../../../src/bubbles/tool-bubble/reddit-scrape-tool.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"reddit-scrape-tool.js","sourceRoot":"","sources":["../../../src/bubbles/tool-bubble/reddit-scrape-tool.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,23 +4,23 @@ import type { BubbleContext } from '../../types/bubble.js';
|
|
|
4
4
|
import { CredentialType, type BubbleName } from '@bubblelab/shared-schemas';
|
|
5
5
|
declare const ResearchAgentToolParamsSchema: z.ZodObject<{
|
|
6
6
|
task: z.ZodString;
|
|
7
|
-
expectedResultSchema: z.ZodString
|
|
8
|
-
model: z.
|
|
7
|
+
expectedResultSchema: z.ZodUnion<[z.ZodType<z.ZodTypeAny, z.ZodTypeDef, z.ZodTypeAny>, z.ZodString]>;
|
|
8
|
+
model: z.ZodDefault<z.ZodEnum<["openai/gpt-5", "openai/gpt-5-mini", "openai/gpt-5.1", "openai/gpt-5.2", "google/gemini-2.5-pro", "google/gemini-2.5-flash", "google/gemini-2.5-flash-lite", "google/gemini-2.5-flash-image-preview", "google/gemini-3-pro-preview", "google/gemini-3-pro-image-preview", "google/gemini-3-flash-preview", "anthropic/claude-sonnet-4-5", "anthropic/claude-opus-4-5", "anthropic/claude-haiku-4-5", "openrouter/x-ai/grok-code-fast-1", "openrouter/z-ai/glm-4.6", "openrouter/anthropic/claude-sonnet-4.5", "openrouter/google/gemini-3-pro-preview", "openrouter/morph/morph-v3-large", "openrouter/x-ai/grok-4.1-fast", "openrouter/openai/gpt-oss-120b", "openrouter/deepseek/deepseek-chat-v3.1"]>>;
|
|
9
9
|
maxTokens: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
|
|
10
10
|
maxIterations: z.ZodDefault<z.ZodNumber>;
|
|
11
11
|
credentials: z.ZodOptional<z.ZodRecord<z.ZodNativeEnum<typeof CredentialType>, z.ZodString>>;
|
|
12
12
|
}, "strip", z.ZodTypeAny, {
|
|
13
|
+
model: "openai/gpt-5" | "openai/gpt-5-mini" | "openai/gpt-5.1" | "openai/gpt-5.2" | "google/gemini-2.5-pro" | "google/gemini-2.5-flash" | "google/gemini-2.5-flash-lite" | "google/gemini-2.5-flash-image-preview" | "google/gemini-3-pro-preview" | "google/gemini-3-pro-image-preview" | "google/gemini-3-flash-preview" | "anthropic/claude-sonnet-4-5" | "anthropic/claude-opus-4-5" | "anthropic/claude-haiku-4-5" | "openrouter/x-ai/grok-code-fast-1" | "openrouter/z-ai/glm-4.6" | "openrouter/anthropic/claude-sonnet-4.5" | "openrouter/google/gemini-3-pro-preview" | "openrouter/morph/morph-v3-large" | "openrouter/x-ai/grok-4.1-fast" | "openrouter/openai/gpt-oss-120b" | "openrouter/deepseek/deepseek-chat-v3.1";
|
|
13
14
|
maxIterations: number;
|
|
14
15
|
task: string;
|
|
15
|
-
expectedResultSchema: string;
|
|
16
|
+
expectedResultSchema: string | z.ZodTypeAny;
|
|
16
17
|
credentials?: Partial<Record<CredentialType, string>> | undefined;
|
|
17
|
-
model?: "openai/gpt-5" | "openai/gpt-5-mini" | "openai/gpt-o4-mini" | "openai/gpt-4o" | "google/gemini-2.5-pro" | "google/gemini-2.5-flash" | "google/gemini-2.5-flash-lite" | "google/gemini-2.5-flash-image-preview" | "anthropic/claude-sonnet-4-5-20250929" | "openrouter/x-ai/grok-code-fast-1" | "openrouter/z-ai/glm-4.6" | undefined;
|
|
18
18
|
maxTokens?: number | undefined;
|
|
19
19
|
}, {
|
|
20
20
|
task: string;
|
|
21
|
-
expectedResultSchema: string;
|
|
21
|
+
expectedResultSchema: string | z.ZodTypeAny;
|
|
22
22
|
credentials?: Partial<Record<CredentialType, string>> | undefined;
|
|
23
|
-
model?: "openai/gpt-5" | "openai/gpt-5-mini" | "openai/gpt-
|
|
23
|
+
model?: "openai/gpt-5" | "openai/gpt-5-mini" | "openai/gpt-5.1" | "openai/gpt-5.2" | "google/gemini-2.5-pro" | "google/gemini-2.5-flash" | "google/gemini-2.5-flash-lite" | "google/gemini-2.5-flash-image-preview" | "google/gemini-3-pro-preview" | "google/gemini-3-pro-image-preview" | "google/gemini-3-flash-preview" | "anthropic/claude-sonnet-4-5" | "anthropic/claude-opus-4-5" | "anthropic/claude-haiku-4-5" | "openrouter/x-ai/grok-code-fast-1" | "openrouter/z-ai/glm-4.6" | "openrouter/anthropic/claude-sonnet-4.5" | "openrouter/google/gemini-3-pro-preview" | "openrouter/morph/morph-v3-large" | "openrouter/x-ai/grok-4.1-fast" | "openrouter/openai/gpt-oss-120b" | "openrouter/deepseek/deepseek-chat-v3.1" | undefined;
|
|
24
24
|
maxTokens?: number | undefined;
|
|
25
25
|
maxIterations?: number | undefined;
|
|
26
26
|
}>;
|
|
@@ -32,15 +32,15 @@ declare const ResearchAgentToolResultSchema: z.ZodObject<{
|
|
|
32
32
|
success: z.ZodBoolean;
|
|
33
33
|
error: z.ZodString;
|
|
34
34
|
}, "strip", z.ZodTypeAny, {
|
|
35
|
-
success: boolean;
|
|
36
35
|
error: string;
|
|
36
|
+
success: boolean;
|
|
37
37
|
summary: string;
|
|
38
38
|
sourcesUsed: string[];
|
|
39
39
|
iterationsUsed: number;
|
|
40
40
|
result?: any;
|
|
41
41
|
}, {
|
|
42
|
-
success: boolean;
|
|
43
42
|
error: string;
|
|
43
|
+
success: boolean;
|
|
44
44
|
summary: string;
|
|
45
45
|
sourcesUsed: string[];
|
|
46
46
|
iterationsUsed: number;
|
|
@@ -53,23 +53,23 @@ export declare class ResearchAgentTool extends ToolBubble<ResearchAgentToolParam
|
|
|
53
53
|
static readonly bubbleName: BubbleName;
|
|
54
54
|
static readonly schema: z.ZodObject<{
|
|
55
55
|
task: z.ZodString;
|
|
56
|
-
expectedResultSchema: z.ZodString
|
|
57
|
-
model: z.
|
|
56
|
+
expectedResultSchema: z.ZodUnion<[z.ZodType<z.ZodTypeAny, z.ZodTypeDef, z.ZodTypeAny>, z.ZodString]>;
|
|
57
|
+
model: z.ZodDefault<z.ZodEnum<["openai/gpt-5", "openai/gpt-5-mini", "openai/gpt-5.1", "openai/gpt-5.2", "google/gemini-2.5-pro", "google/gemini-2.5-flash", "google/gemini-2.5-flash-lite", "google/gemini-2.5-flash-image-preview", "google/gemini-3-pro-preview", "google/gemini-3-pro-image-preview", "google/gemini-3-flash-preview", "anthropic/claude-sonnet-4-5", "anthropic/claude-opus-4-5", "anthropic/claude-haiku-4-5", "openrouter/x-ai/grok-code-fast-1", "openrouter/z-ai/glm-4.6", "openrouter/anthropic/claude-sonnet-4.5", "openrouter/google/gemini-3-pro-preview", "openrouter/morph/morph-v3-large", "openrouter/x-ai/grok-4.1-fast", "openrouter/openai/gpt-oss-120b", "openrouter/deepseek/deepseek-chat-v3.1"]>>;
|
|
58
58
|
maxTokens: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
|
|
59
59
|
maxIterations: z.ZodDefault<z.ZodNumber>;
|
|
60
60
|
credentials: z.ZodOptional<z.ZodRecord<z.ZodNativeEnum<typeof CredentialType>, z.ZodString>>;
|
|
61
61
|
}, "strip", z.ZodTypeAny, {
|
|
62
|
+
model: "openai/gpt-5" | "openai/gpt-5-mini" | "openai/gpt-5.1" | "openai/gpt-5.2" | "google/gemini-2.5-pro" | "google/gemini-2.5-flash" | "google/gemini-2.5-flash-lite" | "google/gemini-2.5-flash-image-preview" | "google/gemini-3-pro-preview" | "google/gemini-3-pro-image-preview" | "google/gemini-3-flash-preview" | "anthropic/claude-sonnet-4-5" | "anthropic/claude-opus-4-5" | "anthropic/claude-haiku-4-5" | "openrouter/x-ai/grok-code-fast-1" | "openrouter/z-ai/glm-4.6" | "openrouter/anthropic/claude-sonnet-4.5" | "openrouter/google/gemini-3-pro-preview" | "openrouter/morph/morph-v3-large" | "openrouter/x-ai/grok-4.1-fast" | "openrouter/openai/gpt-oss-120b" | "openrouter/deepseek/deepseek-chat-v3.1";
|
|
62
63
|
maxIterations: number;
|
|
63
64
|
task: string;
|
|
64
|
-
expectedResultSchema: string;
|
|
65
|
+
expectedResultSchema: string | z.ZodTypeAny;
|
|
65
66
|
credentials?: Partial<Record<CredentialType, string>> | undefined;
|
|
66
|
-
model?: "openai/gpt-5" | "openai/gpt-5-mini" | "openai/gpt-o4-mini" | "openai/gpt-4o" | "google/gemini-2.5-pro" | "google/gemini-2.5-flash" | "google/gemini-2.5-flash-lite" | "google/gemini-2.5-flash-image-preview" | "anthropic/claude-sonnet-4-5-20250929" | "openrouter/x-ai/grok-code-fast-1" | "openrouter/z-ai/glm-4.6" | undefined;
|
|
67
67
|
maxTokens?: number | undefined;
|
|
68
68
|
}, {
|
|
69
69
|
task: string;
|
|
70
|
-
expectedResultSchema: string;
|
|
70
|
+
expectedResultSchema: string | z.ZodTypeAny;
|
|
71
71
|
credentials?: Partial<Record<CredentialType, string>> | undefined;
|
|
72
|
-
model?: "openai/gpt-5" | "openai/gpt-5-mini" | "openai/gpt-
|
|
72
|
+
model?: "openai/gpt-5" | "openai/gpt-5-mini" | "openai/gpt-5.1" | "openai/gpt-5.2" | "google/gemini-2.5-pro" | "google/gemini-2.5-flash" | "google/gemini-2.5-flash-lite" | "google/gemini-2.5-flash-image-preview" | "google/gemini-3-pro-preview" | "google/gemini-3-pro-image-preview" | "google/gemini-3-flash-preview" | "anthropic/claude-sonnet-4-5" | "anthropic/claude-opus-4-5" | "anthropic/claude-haiku-4-5" | "openrouter/x-ai/grok-code-fast-1" | "openrouter/z-ai/glm-4.6" | "openrouter/anthropic/claude-sonnet-4.5" | "openrouter/google/gemini-3-pro-preview" | "openrouter/morph/morph-v3-large" | "openrouter/x-ai/grok-4.1-fast" | "openrouter/openai/gpt-oss-120b" | "openrouter/deepseek/deepseek-chat-v3.1" | undefined;
|
|
73
73
|
maxTokens?: number | undefined;
|
|
74
74
|
maxIterations?: number | undefined;
|
|
75
75
|
}>;
|
|
@@ -81,15 +81,15 @@ export declare class ResearchAgentTool extends ToolBubble<ResearchAgentToolParam
|
|
|
81
81
|
success: z.ZodBoolean;
|
|
82
82
|
error: z.ZodString;
|
|
83
83
|
}, "strip", z.ZodTypeAny, {
|
|
84
|
-
success: boolean;
|
|
85
84
|
error: string;
|
|
85
|
+
success: boolean;
|
|
86
86
|
summary: string;
|
|
87
87
|
sourcesUsed: string[];
|
|
88
88
|
iterationsUsed: number;
|
|
89
89
|
result?: any;
|
|
90
90
|
}, {
|
|
91
|
-
success: boolean;
|
|
92
91
|
error: string;
|
|
92
|
+
success: boolean;
|
|
93
93
|
summary: string;
|
|
94
94
|
sourcesUsed: string[];
|
|
95
95
|
iterationsUsed: number;
|
|
@@ -101,6 +101,7 @@ export declare class ResearchAgentTool extends ToolBubble<ResearchAgentToolParam
|
|
|
101
101
|
static readonly type = "tool";
|
|
102
102
|
constructor(params?: ResearchAgentToolParamsInput, context?: BubbleContext);
|
|
103
103
|
performAction(context?: BubbleContext): Promise<ResearchAgentToolResult>;
|
|
104
|
+
getExpectedResultSchema(): string;
|
|
104
105
|
/**
|
|
105
106
|
* Build the main research prompt for the AI agent
|
|
106
107
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"research-agent-tool.d.ts","sourceRoot":"","sources":["../../../src/bubbles/tool-bubble/research-agent-tool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,
|
|
1
|
+
{"version":3,"file":"research-agent-tool.d.ts","sourceRoot":"","sources":["../../../src/bubbles/tool-bubble/research-agent-tool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAmB,MAAM,KAAK,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAC;AAC9D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,KAAK,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAc5E,QAAA,MAAM,6BAA6B;;;;;;;;;;;;;;;;;;;;;EAqCjC,CAAC;AAGH,QAAA,MAAM,6BAA6B;;;;;;;;;;;;;;;;;;;;;EAuBjC,CAAC;AAGH,KAAK,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,6BAA6B,CAAC,CAAC;AAC9E,KAAK,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,6BAA6B,CAAC,CAAC;AAC9E,KAAK,4BAA4B,GAAG,CAAC,CAAC,KAAK,CACzC,OAAO,6BAA6B,CACrC,CAAC;AAEF,qBAAa,iBAAkB,SAAQ,UAAU,CAC/C,uBAAuB,EACvB,uBAAuB,CACxB;IAEC,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAyB;IAC/D,MAAM,CAAC,QAAQ,CAAC,MAAM;;;;;;;;;;;;;;;;;;;;;OAAiC;IACvD,MAAM,CAAC,QAAQ,CAAC,YAAY;;;;;;;;;;;;;;;;;;;;;OAAiC;IAC7D,MAAM,CAAC,QAAQ,CAAC,gBAAgB,uGACsE;IACtG,MAAM,CAAC,QAAQ,CAAC,eAAe,0tDA4B7B;IACF,MAAM,CAAC,QAAQ,CAAC,KAAK,cAAc;IACnC,MAAM,CAAC,QAAQ,CAAC,IAAI,UAAU;gBAG5B,MAAM,GAAE,4BAGP,EACD,OAAO,CAAC,EAAE,aAAa;IAKnB,aAAa,CACjB,OAAO,CAAC,EAAE,aAAa,GACtB,OAAO,CAAC,uBAAuB,CAAC;IA4I5B,uBAAuB,IAAI,MAAM;IAYxC;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAsC3B;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAkDzB;;OAEG;IACH,OAAO,CAAC,2BAA2B;IA8CnC;;OAEG;IACH,OAAO,CAAC,uBAAuB;CAShC"}
|