@bubblelab/bubble-core 0.1.10 → 0.1.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bubble-bundle.d.ts +803 -351
- package/dist/bubble-factory.d.ts.map +1 -1
- package/dist/bubble-factory.js +130 -35
- package/dist/bubble-factory.js.map +1 -1
- package/dist/bubble-flow/bubble-flow-class.d.ts +5 -0
- package/dist/bubble-flow/bubble-flow-class.d.ts.map +1 -1
- package/dist/bubble-flow/bubble-flow-class.js +20 -0
- package/dist/bubble-flow/bubble-flow-class.js.map +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/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 +273 -61
- package/dist/bubbles/service-bubble/ai-agent.d.ts.map +1 -1
- package/dist/bubbles/service-bubble/ai-agent.js +536 -405
- 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 +4 -4
- package/dist/bubbles/service-bubble/apify/actors/instagram-scraper.d.ts +14 -14
- 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 +6 -6
- package/dist/bubbles/service-bubble/apify/actors/linkedin-profile-posts.d.ts +32 -32
- 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 +12 -12
- package/dist/bubbles/service-bubble/apify/apify-scraper.schema.d.ts +1301 -170
- package/dist/bubbles/service-bubble/apify/apify-scraper.schema.d.ts.map +1 -1
- package/dist/bubbles/service-bubble/apify/apify-scraper.schema.js +32 -0
- package/dist/bubbles/service-bubble/apify/apify-scraper.schema.js.map +1 -1
- package/dist/bubbles/service-bubble/apify/apify.d.ts +158 -13
- package/dist/bubbles/service-bubble/apify/apify.d.ts.map +1 -1
- package/dist/bubbles/service-bubble/apify/apify.js +222 -37
- package/dist/bubbles/service-bubble/apify/apify.js.map +1 -1
- package/dist/bubbles/service-bubble/browserbase/browserbase.d.ts +542 -0
- package/dist/bubbles/service-bubble/browserbase/browserbase.d.ts.map +1 -0
- package/dist/bubbles/service-bubble/browserbase/browserbase.integration.flow.d.ts +37 -0
- package/dist/bubbles/service-bubble/browserbase/browserbase.integration.flow.d.ts.map +1 -0
- package/dist/bubbles/service-bubble/browserbase/browserbase.integration.flow.js +203 -0
- package/dist/bubbles/service-bubble/browserbase/browserbase.integration.flow.js.map +1 -0
- package/dist/bubbles/service-bubble/browserbase/browserbase.js +593 -0
- package/dist/bubbles/service-bubble/browserbase/browserbase.js.map +1 -0
- package/dist/bubbles/service-bubble/browserbase/browserbase.schema.d.ts +518 -0
- package/dist/bubbles/service-bubble/browserbase/browserbase.schema.d.ts.map +1 -0
- package/dist/bubbles/service-bubble/browserbase/browserbase.schema.js +311 -0
- package/dist/bubbles/service-bubble/browserbase/browserbase.schema.js.map +1 -0
- package/dist/bubbles/service-bubble/browserbase/index.d.ts +3 -0
- package/dist/bubbles/service-bubble/browserbase/index.d.ts.map +1 -0
- package/dist/bubbles/service-bubble/browserbase/index.js +3 -0
- package/dist/bubbles/service-bubble/browserbase/index.js.map +1 -0
- package/dist/bubbles/service-bubble/crustdata/crustdata.d.ts +1358 -0
- package/dist/bubbles/service-bubble/crustdata/crustdata.d.ts.map +1 -0
- package/dist/bubbles/service-bubble/crustdata/crustdata.js +219 -0
- package/dist/bubbles/service-bubble/crustdata/crustdata.js.map +1 -0
- package/dist/bubbles/service-bubble/crustdata/crustdata.schema.d.ts +1604 -0
- package/dist/bubbles/service-bubble/crustdata/crustdata.schema.d.ts.map +1 -0
- package/dist/bubbles/service-bubble/crustdata/crustdata.schema.js +194 -0
- package/dist/bubbles/service-bubble/crustdata/crustdata.schema.js.map +1 -0
- package/dist/bubbles/service-bubble/crustdata/index.d.ts +3 -0
- package/dist/bubbles/service-bubble/crustdata/index.d.ts.map +1 -0
- package/dist/bubbles/service-bubble/crustdata/index.js +3 -0
- package/dist/bubbles/service-bubble/crustdata/index.js.map +1 -0
- 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 +2393 -0
- package/dist/bubbles/service-bubble/github.d.ts.map +1 -0
- package/dist/bubbles/service-bubble/github.js +1046 -0
- package/dist/bubbles/service-bubble/github.js.map +1 -0
- package/dist/bubbles/service-bubble/gmail.d.ts +180 -180
- package/dist/bubbles/service-bubble/google-calendar.d.ts +60 -60
- package/dist/bubbles/service-bubble/google-drive.d.ts +69 -68
- package/dist/bubbles/service-bubble/google-drive.d.ts.map +1 -1
- package/dist/bubbles/service-bubble/google-drive.js +35 -3
- 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.d.ts +4 -4
- package/dist/bubbles/service-bubble/http.d.ts +17 -5
- package/dist/bubbles/service-bubble/http.d.ts.map +1 -1
- package/dist/bubbles/service-bubble/http.integration.flow.d.ts +49 -0
- package/dist/bubbles/service-bubble/http.integration.flow.d.ts.map +1 -0
- package/dist/bubbles/service-bubble/http.integration.flow.js +425 -0
- package/dist/bubbles/service-bubble/http.integration.flow.js.map +1 -0
- package/dist/bubbles/service-bubble/http.js +47 -5
- 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 +12 -12
- 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 +1741 -798
- package/dist/bubbles/service-bubble/slack.d.ts.map +1 -1
- package/dist/bubbles/service-bubble/slack.js +322 -28
- package/dist/bubbles/service-bubble/slack.js.map +1 -1
- package/dist/bubbles/service-bubble/storage.d.ts +26 -22
- package/dist/bubbles/service-bubble/storage.d.ts.map +1 -1
- package/dist/bubbles/service-bubble/storage.js +45 -4
- 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/amazon-shopping-tool/amazon-shopping-tool.d.ts +494 -0
- package/dist/bubbles/tool-bubble/amazon-shopping-tool/amazon-shopping-tool.d.ts.map +1 -0
- package/dist/bubbles/tool-bubble/amazon-shopping-tool/amazon-shopping-tool.integration.flow.d.ts +31 -0
- package/dist/bubbles/tool-bubble/amazon-shopping-tool/amazon-shopping-tool.integration.flow.d.ts.map +1 -0
- package/dist/bubbles/tool-bubble/amazon-shopping-tool/amazon-shopping-tool.integration.flow.js +100 -0
- package/dist/bubbles/tool-bubble/amazon-shopping-tool/amazon-shopping-tool.integration.flow.js.map +1 -0
- package/dist/bubbles/tool-bubble/amazon-shopping-tool/amazon-shopping-tool.js +1301 -0
- package/dist/bubbles/tool-bubble/amazon-shopping-tool/amazon-shopping-tool.js.map +1 -0
- package/dist/bubbles/tool-bubble/amazon-shopping-tool/amazon-shopping-tool.schema.d.ts +473 -0
- package/dist/bubbles/tool-bubble/amazon-shopping-tool/amazon-shopping-tool.schema.d.ts.map +1 -0
- package/dist/bubbles/tool-bubble/amazon-shopping-tool/amazon-shopping-tool.schema.js +230 -0
- package/dist/bubbles/tool-bubble/amazon-shopping-tool/amazon-shopping-tool.schema.js.map +1 -0
- package/dist/bubbles/tool-bubble/amazon-shopping-tool/index.d.ts +3 -0
- package/dist/bubbles/tool-bubble/amazon-shopping-tool/index.d.ts.map +1 -0
- package/dist/bubbles/tool-bubble/amazon-shopping-tool/index.js +3 -0
- package/dist/bubbles/tool-bubble/amazon-shopping-tool/index.js.map +1 -0
- package/dist/bubbles/tool-bubble/bubbleflow-validation-tool.d.ts +76 -20
- 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 +14 -14
- 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/company-enrichment-tool.d.ts +740 -0
- package/dist/bubbles/tool-bubble/company-enrichment-tool.d.ts.map +1 -0
- package/dist/bubbles/tool-bubble/company-enrichment-tool.js +350 -0
- package/dist/bubbles/tool-bubble/company-enrichment-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 +115 -10
- 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 +206 -0
- package/dist/bubbles/tool-bubble/google-maps-tool.js.map +1 -0
- package/dist/bubbles/tool-bubble/instagram-tool.d.ts +36 -36
- package/dist/bubbles/tool-bubble/instagram-tool.d.ts.map +1 -1
- package/dist/bubbles/tool-bubble/instagram-tool.js +4 -2
- package/dist/bubbles/tool-bubble/instagram-tool.js.map +1 -1
- package/dist/bubbles/tool-bubble/linkedin-tool.d.ts +830 -453
- package/dist/bubbles/tool-bubble/linkedin-tool.d.ts.map +1 -1
- package/dist/bubbles/tool-bubble/linkedin-tool.js +236 -14
- 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 +66 -66
- 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 +32 -17
- package/dist/bubbles/tool-bubble/research-agent-tool.js.map +1 -1
- package/dist/bubbles/tool-bubble/sql-query-tool.d.ts +8 -8
- 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/tool-template.d.ts +8 -8
- 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 +497 -0
- package/dist/bubbles/tool-bubble/twitter-tool.js.map +1 -0
- package/dist/bubbles/tool-bubble/web-crawl-tool.d.ts +22 -16
- 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 +8 -8
- 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 +21 -113
- package/dist/bubbles/tool-bubble/web-scrape-tool.d.ts.map +1 -1
- package/dist/bubbles/tool-bubble/web-scrape-tool.js +55 -73
- package/dist/bubbles/tool-bubble/web-scrape-tool.js.map +1 -1
- package/dist/bubbles/tool-bubble/web-search-tool.d.ts +20 -9
- package/dist/bubbles/tool-bubble/web-search-tool.d.ts.map +1 -1
- package/dist/bubbles/tool-bubble/web-search-tool.js +45 -35
- package/dist/bubbles/tool-bubble/web-search-tool.js.map +1 -1
- package/dist/bubbles/tool-bubble/youtube-tool.d.ts +25 -25
- package/dist/bubbles/tool-bubble/youtube-tool.d.ts.map +1 -1
- package/dist/bubbles/tool-bubble/youtube-tool.js +8 -5
- package/dist/bubbles/tool-bubble/youtube-tool.js.map +1 -1
- package/dist/bubbles/workflow-bubble/database-analyzer.workflow.d.ts +4 -4
- package/dist/bubbles/workflow-bubble/generate-document.workflow.d.ts +30 -30
- package/dist/bubbles/workflow-bubble/generate-document.workflow.js +1 -1
- package/dist/bubbles/workflow-bubble/parse-document.workflow.d.ts +22 -22
- package/dist/bubbles/workflow-bubble/parse-document.workflow.js +1 -1
- package/dist/bubbles/workflow-bubble/pdf-form-operations.workflow.d.ts +70 -70
- 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 +36 -36
- package/dist/bubbles/workflow-bubble/pdf-ocr.workflow.js +1 -1
- package/dist/bubbles/workflow-bubble/slack-data-assistant.workflow.d.ts +14 -14
- 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 +18 -18
- 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 +19 -19
- 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 +260 -77
- package/dist/index.d.ts +25 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +18 -3
- package/dist/index.js.map +1 -1
- package/dist/logging/BubbleLogger.d.ts +55 -16
- package/dist/logging/BubbleLogger.d.ts.map +1 -1
- package/dist/logging/BubbleLogger.js +192 -77
- package/dist/logging/BubbleLogger.js.map +1 -1
- package/dist/logging/StreamingBubbleLogger.d.ts +21 -1
- package/dist/logging/StreamingBubbleLogger.d.ts.map +1 -1
- package/dist/logging/StreamingBubbleLogger.js +80 -8
- 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 +7 -0
- package/dist/types/available-tools.js.map +1 -1
- package/dist/types/base-bubble-class.d.ts +6 -4
- package/dist/types/base-bubble-class.d.ts.map +1 -1
- package/dist/types/base-bubble-class.js +30 -23
- package/dist/types/base-bubble-class.js.map +1 -1
- package/dist/types/bubble.d.ts +2 -0
- package/dist/types/bubble.d.ts.map +1 -1
- package/dist/types/service-bubble-class.d.ts +1 -1
- 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 +1 -1
- package/dist/types/tool-bubble-class.d.ts.map +1 -1
- package/dist/types/tool-bubble-class.js +60 -10
- package/dist/types/tool-bubble-class.js.map +1 -1
- package/dist/types/workflow-bubble-class.d.ts +1 -1
- 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 +174 -26
- 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 +171 -6
- package/dist/utils/bubbleflow-validation.js.map +1 -1
- 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 +6 -4
- 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/service-bubble/x-twitter.d.ts +0 -814
- package/dist/bubbles/service-bubble/x-twitter.d.ts.map +0 -1
- package/dist/bubbles/service-bubble/x-twitter.js +0 -445
- package/dist/bubbles/service-bubble/x-twitter.js.map +0 -1
- package/dist/bubbles/workflow-bubble/bubbleflow-generator.workflow.d.ts +0 -125
- package/dist/bubbles/workflow-bubble/bubbleflow-generator.workflow.d.ts.map +0 -1
- package/dist/bubbles/workflow-bubble/bubbleflow-generator.workflow.js +0 -808
- package/dist/bubbles/workflow-bubble/bubbleflow-generator.workflow.js.map +0 -1
- package/dist/test-gm.d.ts +0 -10
- package/dist/test-gm.d.ts.map +0 -1
- package/dist/test-gm.js +0 -95
- package/dist/test-gm.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
|
@@ -0,0 +1,183 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Utility functions for Google Sheets bubble
|
|
3
|
+
* Handles range normalization, value sanitization, and error handling
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* Normalizes A1 notation range to ensure sheet names with spaces/special chars are quoted
|
|
7
|
+
*
|
|
8
|
+
* Examples:
|
|
9
|
+
* "Sheet1!A1:B10" -> "Sheet1!A1:B10"
|
|
10
|
+
* "Kaus Mode Landing zone!A:G" -> "'Kaus Mode Landing zone'!A:G"
|
|
11
|
+
* "'Sheet Name'!A1" -> "'Sheet Name'!A1" (already quoted, no change)
|
|
12
|
+
* "Sheet1!A1" -> "Sheet1!A1" (no sheet name change needed)
|
|
13
|
+
*
|
|
14
|
+
* @param range - A1 notation range string
|
|
15
|
+
* @returns Normalized range with proper quoting
|
|
16
|
+
*/
|
|
17
|
+
export function normalizeRange(range) {
|
|
18
|
+
// If range doesn't contain '!', it's just a cell/range reference, return as-is
|
|
19
|
+
if (!range.includes('!')) {
|
|
20
|
+
return range;
|
|
21
|
+
}
|
|
22
|
+
const [sheetPart, cellPart] = range.split('!', 2);
|
|
23
|
+
// If already quoted, ensure inner quotes are properly escaped
|
|
24
|
+
if (sheetPart.startsWith("'") && sheetPart.endsWith("'")) {
|
|
25
|
+
const innerName = sheetPart.slice(1, -1);
|
|
26
|
+
// Detect any single quote that is not part of a doubled-quote escape
|
|
27
|
+
const hasUnescapedQuote = /(^|[^'])'([^']|$)/.test(innerName);
|
|
28
|
+
if (hasUnescapedQuote) {
|
|
29
|
+
// Re-escape all quotes - first undo any existing escaping, then escape properly
|
|
30
|
+
const unescapedName = innerName.replace(/''/g, "'");
|
|
31
|
+
const escapedInnerName = unescapedName.replace(/'/g, "''");
|
|
32
|
+
return `'${escapedInnerName}'!${cellPart}`;
|
|
33
|
+
}
|
|
34
|
+
// Already quoted and correctly escaped
|
|
35
|
+
return range;
|
|
36
|
+
}
|
|
37
|
+
// Check if sheet name needs quoting (contains spaces, special chars, or starts with number)
|
|
38
|
+
const needsQuoting = sheetPart.includes(' ') ||
|
|
39
|
+
/[^a-zA-Z0-9_]/.test(sheetPart) ||
|
|
40
|
+
/^\d/.test(sheetPart);
|
|
41
|
+
if (needsQuoting) {
|
|
42
|
+
// Escape single quotes in sheet name and wrap in quotes
|
|
43
|
+
const escapedSheetName = sheetPart.replace(/'/g, "''");
|
|
44
|
+
return `'${escapedSheetName}'!${cellPart}`;
|
|
45
|
+
}
|
|
46
|
+
return range;
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Validates A1 notation range format
|
|
50
|
+
* Returns normalized range or throws descriptive error
|
|
51
|
+
*
|
|
52
|
+
* @param range - A1 notation range string
|
|
53
|
+
* @returns Normalized and validated range
|
|
54
|
+
* @throws Error if range format is invalid
|
|
55
|
+
*/
|
|
56
|
+
export function validateAndNormalizeRange(range) {
|
|
57
|
+
if (!range || typeof range !== 'string') {
|
|
58
|
+
throw new Error('Range must be a non-empty string');
|
|
59
|
+
}
|
|
60
|
+
const normalized = normalizeRange(range);
|
|
61
|
+
// Basic validation: should contain at least one cell reference
|
|
62
|
+
// Pattern: [SheetName!]A1[:B10] or [SheetName!]A[:G]
|
|
63
|
+
// Handles both quoted ('Sheet Name'!) and unquoted (Sheet1!) sheet names
|
|
64
|
+
const rangePattern = /^(('[^']*'|[^!]*?)!)?[A-Z]+\d*(:[A-Z]+\d*)?$/;
|
|
65
|
+
if (!normalized.match(rangePattern)) {
|
|
66
|
+
throw new Error(`Invalid range format: "${range}". Expected format: "SheetName!A1:B10" or "'Sheet Name'!A:G"`);
|
|
67
|
+
}
|
|
68
|
+
return normalized;
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Sanitizes values array by converting null/undefined to empty strings
|
|
72
|
+
* This ensures Google Sheets API compatibility (only accepts string | number | boolean)
|
|
73
|
+
*
|
|
74
|
+
* Also handles Date objects by converting them to ISO strings
|
|
75
|
+
*
|
|
76
|
+
* @param values - Values array (may contain null/undefined/Date objects)
|
|
77
|
+
* @returns Sanitized array with only string | number | boolean values
|
|
78
|
+
*/
|
|
79
|
+
export function sanitizeValues(values) {
|
|
80
|
+
if (!Array.isArray(values)) {
|
|
81
|
+
return [];
|
|
82
|
+
}
|
|
83
|
+
return values.map((row) => {
|
|
84
|
+
if (!Array.isArray(row)) {
|
|
85
|
+
return [];
|
|
86
|
+
}
|
|
87
|
+
return row.map((cell) => {
|
|
88
|
+
// Convert null/undefined to empty string
|
|
89
|
+
if (cell === null || cell === undefined) {
|
|
90
|
+
return '';
|
|
91
|
+
}
|
|
92
|
+
// Handle Date objects
|
|
93
|
+
if (cell instanceof Date) {
|
|
94
|
+
return cell.toISOString();
|
|
95
|
+
}
|
|
96
|
+
// Keep valid types as-is
|
|
97
|
+
if (typeof cell === 'string' ||
|
|
98
|
+
typeof cell === 'number' ||
|
|
99
|
+
typeof cell === 'boolean') {
|
|
100
|
+
return cell;
|
|
101
|
+
}
|
|
102
|
+
// Convert everything else to string
|
|
103
|
+
return String(cell);
|
|
104
|
+
});
|
|
105
|
+
});
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* Enhances Google Sheets API error messages with helpful hints
|
|
109
|
+
*
|
|
110
|
+
* @param errorText - Raw error text from API
|
|
111
|
+
* @param status - HTTP status code
|
|
112
|
+
* @param statusText - HTTP status text
|
|
113
|
+
* @param spreadsheetId - Optional spreadsheet ID for generating helpful links
|
|
114
|
+
* @returns Enhanced error message with helpful hints
|
|
115
|
+
*/
|
|
116
|
+
/**
|
|
117
|
+
* Extracts sheet name from a range string
|
|
118
|
+
* Examples:
|
|
119
|
+
* "Sheet1!A1:B10" -> "Sheet1"
|
|
120
|
+
* "'Sheet Name'!A1" -> "Sheet Name"
|
|
121
|
+
* "A1:B10" -> undefined (no sheet name)
|
|
122
|
+
*/
|
|
123
|
+
function extractSheetName(range) {
|
|
124
|
+
if (!range.includes('!')) {
|
|
125
|
+
return undefined;
|
|
126
|
+
}
|
|
127
|
+
const [sheetPart] = range.split('!', 2);
|
|
128
|
+
// Remove quotes if present
|
|
129
|
+
if (sheetPart.startsWith("'") && sheetPart.endsWith("'")) {
|
|
130
|
+
return sheetPart.slice(1, -1).replace(/''/g, "'");
|
|
131
|
+
}
|
|
132
|
+
return sheetPart;
|
|
133
|
+
}
|
|
134
|
+
export function enhanceErrorMessage(errorText, status, statusText, spreadsheetId, range) {
|
|
135
|
+
let errorMessage = `Google Sheets API error: ${status} ${statusText}`;
|
|
136
|
+
try {
|
|
137
|
+
const errorJson = JSON.parse(errorText);
|
|
138
|
+
const apiError = errorJson.error;
|
|
139
|
+
if (apiError?.message) {
|
|
140
|
+
errorMessage = apiError.message;
|
|
141
|
+
// Provide helpful hints for common errors
|
|
142
|
+
if (apiError.message.includes('Unable to parse range')) {
|
|
143
|
+
const spreadsheetLink = spreadsheetId
|
|
144
|
+
? `https://docs.google.com/spreadsheets/d/${spreadsheetId}`
|
|
145
|
+
: 'the spreadsheet';
|
|
146
|
+
const sheetName = range ? extractSheetName(range) : undefined;
|
|
147
|
+
const sheetNameInfo = sheetName ? ` "${sheetName}"` : '';
|
|
148
|
+
errorMessage += range ? `\nRange: "${range}"` : '';
|
|
149
|
+
errorMessage +=
|
|
150
|
+
`\nPlease verify that the sheet name${sheetNameInfo} exists in ${spreadsheetLink}. ` +
|
|
151
|
+
`Navigate to the spreadsheet and check the exact sheet name (case-sensitive). ` +
|
|
152
|
+
`The sheet name in your range must match exactly, including any spaces or special characters.`;
|
|
153
|
+
}
|
|
154
|
+
else if (apiError.message.includes('INVALID_ARGUMENT')) {
|
|
155
|
+
errorMessage +=
|
|
156
|
+
'. Please check that all values are strings, numbers, or booleans (not null/undefined). The bubble automatically converts null/undefined to empty strings.';
|
|
157
|
+
}
|
|
158
|
+
else if (apiError.message.includes('PERMISSION_DENIED') ||
|
|
159
|
+
apiError.message.includes('permission')) {
|
|
160
|
+
errorMessage +=
|
|
161
|
+
'. Please ensure your credentials have access to this spreadsheet. The spreadsheet must be present on the same account you connected bubble lab to.';
|
|
162
|
+
}
|
|
163
|
+
else if (apiError.message.includes('NOT_FOUND')) {
|
|
164
|
+
const spreadsheetLink = spreadsheetId
|
|
165
|
+
? `https://docs.google.com/spreadsheets/d/${spreadsheetId}`
|
|
166
|
+
: 'the spreadsheet';
|
|
167
|
+
const sheetName = range ? extractSheetName(range) : undefined;
|
|
168
|
+
const sheetNameInfo = sheetName ? ` "${sheetName}"` : '';
|
|
169
|
+
errorMessage += `. The spreadsheet or sheet may not exist, or you may not have access to it.`;
|
|
170
|
+
if (range) {
|
|
171
|
+
errorMessage += `\nRange: "${range}"`;
|
|
172
|
+
}
|
|
173
|
+
errorMessage += `\nPlease navigate to ${spreadsheetLink} and verify that the sheet name${sheetNameInfo} exists and matches exactly (case-sensitive).`;
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
catch {
|
|
178
|
+
// If parsing fails, use the raw error text
|
|
179
|
+
errorMessage += ` - ${errorText}`;
|
|
180
|
+
}
|
|
181
|
+
return errorMessage;
|
|
182
|
+
}
|
|
183
|
+
//# sourceMappingURL=google-sheets.utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"google-sheets.utils.js","sourceRoot":"","sources":["../../../../src/bubbles/service-bubble/google-sheets/google-sheets.utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export { GoogleSheetsBubble } from './google-sheets.js';
|
|
2
|
+
export { GoogleSheetsParamsSchema, GoogleSheetsResultSchema, ValueRangeSchema, SpreadsheetInfoSchema, type GoogleSheetsParams, type GoogleSheetsResult, type GoogleSheetsParamsInput, } from './google-sheets.schema.js';
|
|
3
|
+
export { normalizeRange, validateAndNormalizeRange, sanitizeValues, enhanceErrorMessage, } from './google-sheets.utils.js';
|
|
4
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/bubbles/service-bubble/google-sheets/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EACL,wBAAwB,EACxB,wBAAwB,EACxB,gBAAgB,EAChB,qBAAqB,EACrB,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,EACvB,KAAK,uBAAuB,GAC7B,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,cAAc,EACd,yBAAyB,EACzB,cAAc,EACd,mBAAmB,GACpB,MAAM,0BAA0B,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export { GoogleSheetsBubble } from './google-sheets.js';
|
|
2
|
+
export { GoogleSheetsParamsSchema, GoogleSheetsResultSchema, ValueRangeSchema, SpreadsheetInfoSchema, } from './google-sheets.schema.js';
|
|
3
|
+
export { normalizeRange, validateAndNormalizeRange, sanitizeValues, enhanceErrorMessage, } from './google-sheets.utils.js';
|
|
4
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/bubbles/service-bubble/google-sheets/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EACL,wBAAwB,EACxB,wBAAwB,EACxB,gBAAgB,EAChB,qBAAqB,GAItB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,cAAc,EACd,yBAAyB,EACzB,cAAc,EACd,mBAAmB,GACpB,MAAM,0BAA0B,CAAC"}
|
|
@@ -22,12 +22,12 @@ declare const HelloWorldResultSchema: z.ZodObject<{
|
|
|
22
22
|
success: z.ZodBoolean;
|
|
23
23
|
error: z.ZodString;
|
|
24
24
|
}, "strip", z.ZodTypeAny, {
|
|
25
|
-
success: boolean;
|
|
26
25
|
error: string;
|
|
26
|
+
success: boolean;
|
|
27
27
|
greeting: string;
|
|
28
28
|
}, {
|
|
29
|
-
success: boolean;
|
|
30
29
|
error: string;
|
|
30
|
+
success: boolean;
|
|
31
31
|
greeting: string;
|
|
32
32
|
}>;
|
|
33
33
|
type HelloWorldResult = z.output<typeof HelloWorldResultSchema>;
|
|
@@ -54,12 +54,12 @@ export declare class HelloWorldBubble extends ServiceBubble<HelloWorldParams, He
|
|
|
54
54
|
success: z.ZodBoolean;
|
|
55
55
|
error: z.ZodString;
|
|
56
56
|
}, "strip", z.ZodTypeAny, {
|
|
57
|
-
success: boolean;
|
|
58
57
|
error: string;
|
|
58
|
+
success: boolean;
|
|
59
59
|
greeting: string;
|
|
60
60
|
}, {
|
|
61
|
-
success: boolean;
|
|
62
61
|
error: string;
|
|
62
|
+
success: boolean;
|
|
63
63
|
greeting: string;
|
|
64
64
|
}>;
|
|
65
65
|
static readonly shortDescription = "Simple hello world bubble for testing purposes";
|
|
@@ -9,15 +9,19 @@ declare const HttpParamsSchema: z.ZodObject<{
|
|
|
9
9
|
body: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodUnknown>]>>;
|
|
10
10
|
timeout: z.ZodDefault<z.ZodNumber>;
|
|
11
11
|
followRedirects: z.ZodDefault<z.ZodBoolean>;
|
|
12
|
+
authType: z.ZodDefault<z.ZodEnum<["none", "bearer", "basic", "api-key", "api-key-header", "custom"]>>;
|
|
13
|
+
authHeader: z.ZodOptional<z.ZodString>;
|
|
12
14
|
credentials: z.ZodOptional<z.ZodRecord<z.ZodNativeEnum<typeof CredentialType>, z.ZodString>>;
|
|
13
15
|
}, "strip", z.ZodTypeAny, {
|
|
14
16
|
url: string;
|
|
15
17
|
timeout: number;
|
|
16
18
|
method: "DELETE" | "GET" | "POST" | "PUT" | "PATCH" | "HEAD" | "OPTIONS";
|
|
17
19
|
followRedirects: boolean;
|
|
20
|
+
authType: "none" | "custom" | "bearer" | "basic" | "api-key" | "api-key-header";
|
|
18
21
|
credentials?: Partial<Record<CredentialType, string>> | undefined;
|
|
19
22
|
headers?: Record<string, string> | undefined;
|
|
20
23
|
body?: string | Record<string, unknown> | undefined;
|
|
24
|
+
authHeader?: string | undefined;
|
|
21
25
|
}, {
|
|
22
26
|
url: string;
|
|
23
27
|
credentials?: Partial<Record<CredentialType, string>> | undefined;
|
|
@@ -26,6 +30,8 @@ declare const HttpParamsSchema: z.ZodObject<{
|
|
|
26
30
|
method?: "DELETE" | "GET" | "POST" | "PUT" | "PATCH" | "HEAD" | "OPTIONS" | undefined;
|
|
27
31
|
body?: string | Record<string, unknown> | undefined;
|
|
28
32
|
followRedirects?: boolean | undefined;
|
|
33
|
+
authType?: "none" | "custom" | "bearer" | "basic" | "api-key" | "api-key-header" | undefined;
|
|
34
|
+
authHeader?: string | undefined;
|
|
29
35
|
}>;
|
|
30
36
|
type HttpParamsInput = z.input<typeof HttpParamsSchema>;
|
|
31
37
|
type HttpParams = z.output<typeof HttpParamsSchema>;
|
|
@@ -41,8 +47,8 @@ declare const HttpResultSchema: z.ZodObject<{
|
|
|
41
47
|
size: z.ZodNumber;
|
|
42
48
|
}, "strip", z.ZodTypeAny, {
|
|
43
49
|
status: number;
|
|
44
|
-
success: boolean;
|
|
45
50
|
error: string;
|
|
51
|
+
success: boolean;
|
|
46
52
|
headers: Record<string, string>;
|
|
47
53
|
size: number;
|
|
48
54
|
body: string;
|
|
@@ -51,8 +57,8 @@ declare const HttpResultSchema: z.ZodObject<{
|
|
|
51
57
|
json?: unknown;
|
|
52
58
|
}, {
|
|
53
59
|
status: number;
|
|
54
|
-
success: boolean;
|
|
55
60
|
error: string;
|
|
61
|
+
success: boolean;
|
|
56
62
|
headers: Record<string, string>;
|
|
57
63
|
size: number;
|
|
58
64
|
body: string;
|
|
@@ -63,7 +69,7 @@ declare const HttpResultSchema: z.ZodObject<{
|
|
|
63
69
|
type HttpResult = z.output<typeof HttpResultSchema>;
|
|
64
70
|
export declare class HttpBubble extends ServiceBubble<HttpParams, HttpResult> {
|
|
65
71
|
static readonly service = "nodex-core";
|
|
66
|
-
static readonly authType: "
|
|
72
|
+
static readonly authType: "apikey";
|
|
67
73
|
static readonly bubbleName: BubbleName;
|
|
68
74
|
static readonly type: "service";
|
|
69
75
|
static readonly schema: z.ZodObject<{
|
|
@@ -73,15 +79,19 @@ export declare class HttpBubble extends ServiceBubble<HttpParams, HttpResult> {
|
|
|
73
79
|
body: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodUnknown>]>>;
|
|
74
80
|
timeout: z.ZodDefault<z.ZodNumber>;
|
|
75
81
|
followRedirects: z.ZodDefault<z.ZodBoolean>;
|
|
82
|
+
authType: z.ZodDefault<z.ZodEnum<["none", "bearer", "basic", "api-key", "api-key-header", "custom"]>>;
|
|
83
|
+
authHeader: z.ZodOptional<z.ZodString>;
|
|
76
84
|
credentials: z.ZodOptional<z.ZodRecord<z.ZodNativeEnum<typeof CredentialType>, z.ZodString>>;
|
|
77
85
|
}, "strip", z.ZodTypeAny, {
|
|
78
86
|
url: string;
|
|
79
87
|
timeout: number;
|
|
80
88
|
method: "DELETE" | "GET" | "POST" | "PUT" | "PATCH" | "HEAD" | "OPTIONS";
|
|
81
89
|
followRedirects: boolean;
|
|
90
|
+
authType: "none" | "custom" | "bearer" | "basic" | "api-key" | "api-key-header";
|
|
82
91
|
credentials?: Partial<Record<CredentialType, string>> | undefined;
|
|
83
92
|
headers?: Record<string, string> | undefined;
|
|
84
93
|
body?: string | Record<string, unknown> | undefined;
|
|
94
|
+
authHeader?: string | undefined;
|
|
85
95
|
}, {
|
|
86
96
|
url: string;
|
|
87
97
|
credentials?: Partial<Record<CredentialType, string>> | undefined;
|
|
@@ -90,6 +100,8 @@ export declare class HttpBubble extends ServiceBubble<HttpParams, HttpResult> {
|
|
|
90
100
|
method?: "DELETE" | "GET" | "POST" | "PUT" | "PATCH" | "HEAD" | "OPTIONS" | undefined;
|
|
91
101
|
body?: string | Record<string, unknown> | undefined;
|
|
92
102
|
followRedirects?: boolean | undefined;
|
|
103
|
+
authType?: "none" | "custom" | "bearer" | "basic" | "api-key" | "api-key-header" | undefined;
|
|
104
|
+
authHeader?: string | undefined;
|
|
93
105
|
}>;
|
|
94
106
|
static readonly resultSchema: z.ZodObject<{
|
|
95
107
|
status: z.ZodNumber;
|
|
@@ -103,8 +115,8 @@ export declare class HttpBubble extends ServiceBubble<HttpParams, HttpResult> {
|
|
|
103
115
|
size: z.ZodNumber;
|
|
104
116
|
}, "strip", z.ZodTypeAny, {
|
|
105
117
|
status: number;
|
|
106
|
-
success: boolean;
|
|
107
118
|
error: string;
|
|
119
|
+
success: boolean;
|
|
108
120
|
headers: Record<string, string>;
|
|
109
121
|
size: number;
|
|
110
122
|
body: string;
|
|
@@ -113,8 +125,8 @@ export declare class HttpBubble extends ServiceBubble<HttpParams, HttpResult> {
|
|
|
113
125
|
json?: unknown;
|
|
114
126
|
}, {
|
|
115
127
|
status: number;
|
|
116
|
-
success: boolean;
|
|
117
128
|
error: string;
|
|
129
|
+
success: boolean;
|
|
118
130
|
headers: Record<string, string>;
|
|
119
131
|
size: number;
|
|
120
132
|
body: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../../src/bubbles/service-bubble/http.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AACpE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,KAAK,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAc5E,QAAA,MAAM,gBAAgB
|
|
1
|
+
{"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../../src/bubbles/service-bubble/http.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AACpE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,KAAK,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAc5E,QAAA,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA0CpB,CAAC;AAEH,KAAK,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AACxD,KAAK,UAAU,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAGpD,QAAA,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAYpB,CAAC;AAEH,KAAK,UAAU,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAEpD,qBAAa,UAAW,SAAQ,aAAa,CAAC,UAAU,EAAE,UAAU,CAAC;IACnE,MAAM,CAAC,QAAQ,CAAC,OAAO,gBAAgB;IACvC,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAG,QAAQ,CAAU;IAC7C,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAU;IAChD,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAG,SAAS,CAAU;IAC1C,MAAM,CAAC,QAAQ,CAAC,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAoB;IAC1C,MAAM,CAAC,QAAQ,CAAC,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAoB;IAChD,MAAM,CAAC,QAAQ,CAAC,gBAAgB,uDACsB;IACtD,MAAM,CAAC,QAAQ,CAAC,eAAe,orBAkB7B;IACF,MAAM,CAAC,QAAQ,CAAC,KAAK,WAAW;gBAG9B,MAAM,GAAE,eAGP,EACD,OAAO,CAAC,EAAE,aAAa;IAKzB,SAAS,CAAC,gBAAgB,IAAI,MAAM,GAAG,SAAS;IAQnC,cAAc,IAAI,OAAO,CAAC,OAAO,CAAC;cAM/B,aAAa,CAAC,OAAO,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,UAAU,CAAC;CAwI5E"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { BubbleFlow, type WebhookEvent } from '@bubblelab/bubble-core';
|
|
2
|
+
export interface Output {
|
|
3
|
+
testResults: {
|
|
4
|
+
operation: string;
|
|
5
|
+
success: boolean;
|
|
6
|
+
details?: string;
|
|
7
|
+
status?: number;
|
|
8
|
+
responseTime?: number;
|
|
9
|
+
}[];
|
|
10
|
+
summary: {
|
|
11
|
+
total: number;
|
|
12
|
+
passed: number;
|
|
13
|
+
failed: number;
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Payload for the HTTP Bubble Integration Test workflow.
|
|
18
|
+
*/
|
|
19
|
+
export interface HttpIntegrationTestPayload extends WebhookEvent {
|
|
20
|
+
/**
|
|
21
|
+
* Optional base URL for testing (defaults to httpbin.org)
|
|
22
|
+
* @canBeFile false
|
|
23
|
+
*/
|
|
24
|
+
baseUrl?: string;
|
|
25
|
+
}
|
|
26
|
+
export declare class HttpBubbleIntegrationTest extends BubbleFlow<'webhook/http'> {
|
|
27
|
+
private testBasicGet;
|
|
28
|
+
private testGetWithParams;
|
|
29
|
+
private testPostJson;
|
|
30
|
+
private testPostString;
|
|
31
|
+
private testPut;
|
|
32
|
+
private testPatch;
|
|
33
|
+
private testDelete;
|
|
34
|
+
private testCustomHeaders;
|
|
35
|
+
private testBearerAuth;
|
|
36
|
+
private testBasicAuth;
|
|
37
|
+
private testApiKeyAuth;
|
|
38
|
+
private testApiKeyHeaderAuth;
|
|
39
|
+
private testCustomAuth;
|
|
40
|
+
private testDynamicApiKeyInHeaders;
|
|
41
|
+
private testErrorHandling404;
|
|
42
|
+
private testErrorHandling500;
|
|
43
|
+
private testHtmlResponse;
|
|
44
|
+
private testTimeout;
|
|
45
|
+
private testRedirectFollow;
|
|
46
|
+
private testRedirectManual;
|
|
47
|
+
handle(payload: HttpIntegrationTestPayload): Promise<Output>;
|
|
48
|
+
}
|
|
49
|
+
//# sourceMappingURL=http.integration.flow.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"http.integration.flow.d.ts","sourceRoot":"","sources":["../../../src/bubbles/service-bubble/http.integration.flow.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAc,KAAK,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAEnF,MAAM,WAAW,MAAM;IACrB,WAAW,EAAE;QACX,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,OAAO,CAAC;QACjB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,YAAY,CAAC,EAAE,MAAM,CAAC;KACvB,EAAE,CAAC;IACJ,OAAO,EAAE;QACP,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;CACH;AAED;;GAEG;AACH,MAAM,WAAW,0BAA2B,SAAQ,YAAY;IAC9D;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,qBAAa,yBAA0B,SAAQ,UAAU,CAAC,cAAc,CAAC;YAEzD,YAAY;YAkBZ,iBAAiB;YAqBjB,YAAY;YA6BZ,cAAc;YA0Bd,OAAO;YAqBP,SAAS;YAqBT,UAAU;YAkBV,iBAAiB;YAyBjB,cAAc;YAwBd,aAAa;YAwBb,cAAc;YAwBd,oBAAoB;YAwBpB,cAAc;YAyBd,0BAA0B;YA2B1B,oBAAoB;YAkBpB,oBAAoB;YAkBpB,gBAAgB;YAoBhB,WAAW;YAmBX,kBAAkB;YAmBlB,kBAAkB;IAqB1B,MAAM,CAAC,OAAO,EAAE,0BAA0B,GAAG,OAAO,CAAC,MAAM,CAAC;CAoDnE"}
|