@bubblelab/bubble-core 0.1.9 → 0.1.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bubble-bundle.d.ts +252 -1686
- package/dist/bubble-factory.d.ts.map +1 -1
- package/dist/bubble-factory.js +51 -19
- package/dist/bubble-factory.js.map +1 -1
- package/dist/bubble-flow/bubble-flow-class.d.ts +17 -1
- package/dist/bubble-flow/bubble-flow-class.d.ts.map +1 -1
- package/dist/bubble-flow/bubble-flow-class.js +16 -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/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/ai-agent.d.ts +30 -30
- package/dist/bubbles/service-bubble/ai-agent.d.ts.map +1 -1
- package/dist/bubbles/service-bubble/ai-agent.js +3 -1
- package/dist/bubbles/service-bubble/ai-agent.js.map +1 -1
- package/dist/bubbles/service-bubble/apify/actors/instagram-hashtag-scraper.d.ts +34 -34
- package/dist/bubbles/service-bubble/apify/actors/instagram-scraper.d.ts +42 -42
- package/dist/bubbles/service-bubble/apify/actors/linkedin-posts-search.d.ts +21 -21
- package/dist/bubbles/service-bubble/apify/actors/linkedin-profile-posts.d.ts +6 -6
- 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 +338 -109
- package/dist/bubbles/service-bubble/apify/apify-scraper.schema.d.ts.map +1 -1
- package/dist/bubbles/service-bubble/apify/apify-scraper.schema.js +16 -0
- package/dist/bubbles/service-bubble/apify/apify-scraper.schema.js.map +1 -1
- package/dist/bubbles/service-bubble/apify/apify.d.ts +10 -10
- 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/gmail.d.ts +678 -184
- 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 +60 -60
- package/dist/bubbles/service-bubble/google-drive.d.ts +301 -72
- package/dist/bubbles/service-bubble/google-drive.d.ts.map +1 -1
- package/dist/bubbles/service-bubble/google-drive.js +65 -75
- package/dist/bubbles/service-bubble/google-drive.js.map +1 -1
- package/dist/bubbles/service-bubble/google-sheets.d.ts +76 -76
- package/dist/bubbles/service-bubble/hello-world.d.ts +4 -4
- 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 +10 -10
- package/dist/bubbles/service-bubble/postgresql.d.ts +12 -12
- package/dist/bubbles/service-bubble/resend.d.ts +16 -16
- package/dist/bubbles/service-bubble/slack.d.ts +469 -469
- package/dist/bubbles/service-bubble/storage.d.ts +36 -36
- package/dist/bubbles/service-bubble/storage.d.ts.map +1 -1
- package/dist/bubbles/service-bubble/storage.js +16 -5
- package/dist/bubbles/service-bubble/storage.js.map +1 -1
- package/dist/bubbles/service-bubble/x-twitter.d.ts +814 -0
- package/dist/bubbles/service-bubble/x-twitter.d.ts.map +1 -0
- package/dist/bubbles/service-bubble/x-twitter.js +445 -0
- package/dist/bubbles/service-bubble/x-twitter.js.map +1 -0
- package/dist/bubbles/tool-bubble/bubbleflow-validation-tool.d.ts +20 -20
- package/dist/bubbles/tool-bubble/chart-js-tool.d.ts +10 -10
- package/dist/bubbles/tool-bubble/get-bubble-details-tool.d.ts.map +1 -1
- package/dist/bubbles/tool-bubble/get-bubble-details-tool.js +17 -9
- package/dist/bubbles/tool-bubble/get-bubble-details-tool.js.map +1 -1
- package/dist/bubbles/tool-bubble/instagram-tool.d.ts +86 -86
- package/dist/bubbles/tool-bubble/linkedin-tool.d.ts +134 -134
- package/dist/bubbles/tool-bubble/reddit-scrape-tool.d.ts +69 -64
- 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 +6 -6
- package/dist/bubbles/tool-bubble/research-agent-tool.js +4 -4
- 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/tool-template.d.ts +8 -8
- package/dist/bubbles/tool-bubble/web-crawl-tool.d.ts +10 -10
- package/dist/bubbles/tool-bubble/web-extract-tool.d.ts +4 -4
- package/dist/bubbles/tool-bubble/web-scrape-tool.d.ts +12 -12
- package/dist/bubbles/tool-bubble/web-search-tool.d.ts +11 -10
- package/dist/bubbles/tool-bubble/web-search-tool.d.ts.map +1 -1
- package/dist/bubbles/tool-bubble/web-search-tool.js +5 -1
- 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/bubbleflow-generator.workflow.d.ts +47 -36
- package/dist/bubbles/workflow-bubble/bubbleflow-generator.workflow.d.ts.map +1 -1
- package/dist/bubbles/workflow-bubble/bubbleflow-generator.workflow.js +91 -65
- package/dist/bubbles/workflow-bubble/bubbleflow-generator.workflow.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 +70 -70
- package/dist/bubbles/workflow-bubble/parse-document.workflow.d.ts +66 -66
- package/dist/bubbles/workflow-bubble/pdf-form-operations.workflow.d.ts +56 -56
- package/dist/bubbles/workflow-bubble/pdf-form-operations.workflow.d.ts.map +1 -1
- package/dist/bubbles/workflow-bubble/pdf-form-operations.workflow.js.map +1 -1
- package/dist/bubbles/workflow-bubble/pdf-ocr.workflow.d.ts +44 -44
- package/dist/bubbles/workflow-bubble/pdf-ocr.workflow.d.ts.map +1 -1
- package/dist/bubbles/workflow-bubble/pdf-ocr.workflow.js +1 -1
- 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-formatter-agent.d.ts +58 -58
- package/dist/bubbles/workflow-bubble/slack-notifier.workflow.d.ts +18 -18
- package/dist/bubbles.json +69 -54
- package/dist/index.d.ts +4 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/logging/BubbleLogger.d.ts.map +1 -1
- package/dist/logging/BubbleLogger.js +20 -13
- package/dist/logging/BubbleLogger.js.map +1 -1
- package/dist/logging/StreamingBubbleLogger.d.ts.map +1 -1
- package/dist/logging/StreamingBubbleLogger.js +5 -5
- package/dist/logging/StreamingBubbleLogger.js.map +1 -1
- package/dist/test-gm.d.ts +10 -0
- package/dist/test-gm.d.ts.map +1 -0
- package/dist/test-gm.js +95 -0
- package/dist/test-gm.js.map +1 -0
- package/dist/types/base-bubble-class.d.ts +1 -1
- package/dist/types/base-bubble-class.d.ts.map +1 -1
- package/dist/types/base-bubble-class.js +29 -21
- package/dist/types/base-bubble-class.js.map +1 -1
- package/dist/types/bubble.d.ts +1 -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 +1 -1
- package/dist/types/service-bubble-class.d.ts.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 +0 -2
- 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/utils/agent-formatter.d.ts.map +1 -1
- package/dist/utils/agent-formatter.js +2 -2
- package/dist/utils/agent-formatter.js.map +1 -1
- package/dist/utils/bubbleflow-validation.d.ts.map +1 -1
- package/dist/utils/bubbleflow-validation.js +89 -32
- 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/package.json +4 -4
- 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/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/types/bubble.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
|
-
import type { DatabaseMetadata, CredentialOptions, DependencyGraphNode } from '@bubblelab/shared-schemas';
|
|
2
|
+
import type { DatabaseMetadata, CredentialOptions, DependencyGraphNode, BubbleOperationResult, BubbleResult } from '@bubblelab/shared-schemas';
|
|
3
3
|
import type { BubbleLogger } from '../logging/BubbleLogger';
|
|
4
4
|
export interface IBubble<TResult extends BubbleOperationResult = BubbleOperationResult> {
|
|
5
5
|
readonly name: string;
|
|
@@ -38,16 +38,7 @@ export interface IInfraBubble extends IBubble {
|
|
|
38
38
|
provider: 'aws' | 'gcp' | 'supabase';
|
|
39
39
|
resourceType: string;
|
|
40
40
|
}
|
|
41
|
-
export interface BubbleOperationResult {
|
|
42
|
-
success: boolean;
|
|
43
|
-
error: string;
|
|
44
|
-
}
|
|
45
41
|
export type BubbleFlowOperationResult = unknown;
|
|
46
|
-
export interface BubbleResult<T> extends BubbleOperationResult {
|
|
47
|
-
data: T;
|
|
48
|
-
executionId: string;
|
|
49
|
-
timestamp: Date;
|
|
50
|
-
}
|
|
51
42
|
export interface BubbleContext {
|
|
52
43
|
logger?: BubbleLogger;
|
|
53
44
|
variableId?: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bubble.d.ts","sourceRoot":"","sources":["../../src/types/bubble.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EACV,gBAAgB,EAChB,iBAAiB,EACjB,mBAAmB,
|
|
1
|
+
{"version":3,"file":"bubble.d.ts","sourceRoot":"","sources":["../../src/types/bubble.ts"],"names":[],"mappings":"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"}
|
package/dist/types/bubble.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
|
|
1
|
+
export {};
|
|
2
2
|
//# sourceMappingURL=bubble.js.map
|
package/dist/types/bubble.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bubble.js","sourceRoot":"","sources":["../../src/types/bubble.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"bubble.js","sourceRoot":"","sources":["../../src/types/bubble.ts"],"names":[],"mappings":""}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { BubbleOperationResult, ServiceBubbleParams, BubbleContext } from '
|
|
1
|
+
import type { BubbleOperationResult, ServiceBubbleParams, BubbleContext } from '@bubblelab/bubble-core';
|
|
2
2
|
import { BaseBubble } from './base-bubble-class.js';
|
|
3
3
|
import type { DatabaseMetadata } from '@bubblelab/shared-schemas';
|
|
4
4
|
export declare abstract class ServiceBubble<TParams extends ServiceBubbleParams = ServiceBubbleParams, TResult extends BubbleOperationResult = BubbleOperationResult> extends BaseBubble<TParams, TResult> {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service-bubble-class.d.ts","sourceRoot":"","sources":["../../src/types/service-bubble-class.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,qBAAqB,EACrB,mBAAmB,EACnB,aAAa,EACd,MAAM,
|
|
1
|
+
{"version":3,"file":"service-bubble-class.d.ts","sourceRoot":"","sources":["../../src/types/service-bubble-class.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,qBAAqB,EACrB,mBAAmB,EACnB,aAAa,EACd,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAElE,8BAAsB,aAAa,CACjC,OAAO,SAAS,mBAAmB,GAAG,mBAAmB,EACzD,OAAO,SAAS,qBAAqB,GAAG,qBAAqB,CAC7D,SAAQ,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC;IACpC,SAAgB,IAAI,EAAG,SAAS,CAAU;IACnC,QAAQ,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,MAAM,GAAG,mBAAmB,CAAC;gBAExD,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,aAAa;aAIpC,cAAc,IAAI,OAAO,CAAC,OAAO,CAAC;IAElD;;;;OAIG;IACH,SAAS,CAAC,QAAQ,CAAC,gBAAgB,IAAI,MAAM,GAAG,SAAS;IAEzD;;;OAGG;IAEG,qBAAqB,IAAI,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC;IAIpE;;;OAGG;IACH,IAAI,aAAa,IAAI,IAAI,CAAC,OAAO,EAAE,aAAa,CAAC,CAIhD;IAED,QAAQ,CAAC,CAAC,SAAS,MAAM,OAAO,EAC9B,SAAS,EAAE,CAAC,EACZ,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC,GACrB,IAAI;IAIP;;OAEG;IACH,IAAI,cAAc,IAAI,aAAa,GAAG,SAAS,CAE9C;CACF"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
|
-
import type { IToolBubble, ServiceBubbleParams, BubbleContext, BubbleOperationResult, BubbleResult } from '
|
|
2
|
+
import type { IToolBubble, ServiceBubbleParams, BubbleContext, BubbleOperationResult, BubbleResult } from '@bubblelab/bubble-core';
|
|
3
3
|
import { BaseBubble } from './base-bubble-class.js';
|
|
4
4
|
import { CredentialType } from '@bubblelab/shared-schemas';
|
|
5
5
|
export interface LangGraphTool {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-bubble-class.d.ts","sourceRoot":"","sources":["../../src/types/tool-bubble-class.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EACV,WAAW,EACX,mBAAmB,EACnB,aAAa,EACb,qBAAqB,EACrB,YAAY,EACb,MAAM,
|
|
1
|
+
{"version":3,"file":"tool-bubble-class.d.ts","sourceRoot":"","sources":["../../src/types/tool-bubble-class.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EACV,WAAW,EACX,mBAAmB,EACnB,aAAa,EACb,qBAAqB,EACrB,YAAY,EACb,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAG3D,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,CAAC,CAAC,SAAS,CAAC;IACpB,IAAI,CAAC,OAAO,SAAS,qBAAqB,GAAG,qBAAqB,EAChE,MAAM,EAAE,OAAO,GACd,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC;CACnC;AAED;;GAEG;AACH,8BAAsB,UAAU,CAC5B,OAAO,SAAS,mBAAmB,GAAG,mBAAmB,EACzD,OAAO,SAAS,qBAAqB,GAAG,qBAAqB,CAE/D,SAAQ,UAAU,CAAC,OAAO,EAAE,OAAO,CACnC,YAAW,WAAW,CAAC,OAAO,CAAC;IAE/B,SAAgB,IAAI,EAAG,MAAM,CAAU;gBAE3B,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,aAAa;IAOpD,MAAM,CAAC,SAAS,CACd,WAAW,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC,EACrD,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChC,OAAO,CAAC,EAAE,aAAa,GACtB,aAAa;CAoDjB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-bubble-class.js","sourceRoot":"","sources":["../../src/types/tool-bubble-class.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"tool-bubble-class.js","sourceRoot":"","sources":["../../src/types/tool-bubble-class.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAapD;;GAEG;AACH,MAAM,OAAgB,UAIpB,SAAQ,UAA4B;IAGpB,IAAI,GAAG,MAAe,CAAC;IAEvC,YAAY,MAAe,EAAE,OAAuB;QAClD,KAAK,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACzB,CAAC;IAED,mEAAmE;IACnE,6EAA6E;IAC7E,kCAAkC;IAClC,MAAM,CAAC,SAAS,CACd,WAAqD,EACrD,MAAgC,EAChC,OAAuB;QAEvB,4DAA4D;QAC5D,MAAM,SAAS,GAAG,IAIjB,CAAC;QACF,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,gBAAgB,EAAE,GAAG,SAAS,CAAC;QAE3D,IAAI,CAAC,MAAM,IAAI,CAAC,UAAU,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAChD,MAAM,IAAI,KAAK,CACb,GAAG,SAAS,CAAC,IAAI,8DAA8D,CAChF,CAAC;QACJ,CAAC;QAED,+CAA+C;QAC/C,0CAA0C;QAC1C,IAAI,WAAW,GAAqB,MAAM,CAAC;QAC3C,IAAI,MAAM,CAAC,KAAK,EAAE,WAAW,EAAE,CAAC;YAC9B,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;QACnD,CAAC;QACD,IAAI,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC;YAC9B,WAAW,GAAG,WAAW,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QACnD,CAAC;QACD,WAAW,GAAG,WAAW,CAAC,WAAW,EAAE,CAAC;QAExC,OAAO;YACL,IAAI,EAAE,UAAU;YAChB,WAAW,EAAE,gBAAgB;YAC7B,MAAM,EAAE,WAAW;YACnB,IAAI,EAAE,KAAK,EAAE,UAAmB,EAAE,EAAE;gBAClC,uDAAuD;gBAEvD,4DAA4D;gBAC5D,sDAAsD;gBACtD,sFAAsF;gBACtF,0BAA0B;gBAE1B,MAAM,aAAa,GAAI,UAAsC,EAAE,MAAM,CAAC;gBACtE,MAAM,cAAc,GAAG;oBACrB,GAAI,UAAsC;oBAC1C,WAAW;oBACX,MAAM,EAAE,aAAa,IAAI,MAAM;iBAChC,CAAC;gBAEF,8CAA8C;gBAC9C,MAAM,QAAQ,GAAG,IAAK,SAAiB,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;gBACjE,yEAAyE;gBACzE,OAAO,QAAQ,CAAC,MAAM,EAAE,CAAC;YAC3B,CAAC;SACF,CAAC;IACJ,CAAC;CACF"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { IWorkflowBubble, BubbleOperationResult, ServiceBubbleParams, BubbleContext } from '
|
|
1
|
+
import type { IWorkflowBubble, BubbleOperationResult, ServiceBubbleParams, BubbleContext } from '@bubblelab/bubble-core';
|
|
2
2
|
import { BaseBubble } from './base-bubble-class.js';
|
|
3
3
|
/**
|
|
4
4
|
* WorkflowBubble - Higher-level abstraction that orchestrates ServiceBubbles
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workflow-bubble-class.d.ts","sourceRoot":"","sources":["../../src/types/workflow-bubble-class.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,qBAAqB,EACrB,mBAAmB,EACnB,aAAa,EACd,MAAM,
|
|
1
|
+
{"version":3,"file":"workflow-bubble-class.d.ts","sourceRoot":"","sources":["../../src/types/workflow-bubble-class.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,qBAAqB,EACrB,mBAAmB,EACnB,aAAa,EACd,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEpD;;;;;;;;;GASG;AACH,8BAAsB,cAAc,CAChC,OAAO,SAAS,mBAAmB,GAAG,mBAAmB,EACzD,OAAO,SAAS,qBAAqB,GAAG,qBAAqB,CAE/D,SAAQ,UAAU,CAAC,OAAO,EAAE,OAAO,CACnC,YAAW,eAAe,CAAC,OAAO,CAAC;IAEnC,SAAgB,IAAI,EAAG,UAAU,CAAU;gBAE/B,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,aAAa;IAIpD;;OAEG;IACH,IAAI,aAAa,IAAI,OAAO,CAE3B;IAED;;OAEG;IACH,IAAI,cAAc,IAAI,aAAa,GAAG,SAAS,CAE9C;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-formatter.d.ts","sourceRoot":"","sources":["../../src/utils/agent-formatter.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACzD;;GAEG;AACH,wBAAgB,8BAA8B,CAC5C,MAAM,EAAE,SAAS,GAChB,MAAM,GAAG,SAAS,CAqDpB;AACD;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,MAAM,GAAG,OAAO,EAC1B,SAAS,EAAE,MAAM,EACjB,QAAQ,CAAC,EAAE,OAAO,GACjB;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,
|
|
1
|
+
{"version":3,"file":"agent-formatter.d.ts","sourceRoot":"","sources":["../../src/utils/agent-formatter.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACzD;;GAEG;AACH,wBAAgB,8BAA8B,CAC5C,MAAM,EAAE,SAAS,GAChB,MAAM,GAAG,SAAS,CAqDpB;AACD;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,MAAM,GAAG,OAAO,EAC1B,SAAS,EAAE,MAAM,EACjB,QAAQ,CAAC,EAAE,OAAO,GACjB;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAyDtC;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,CA2C5E"}
|
|
@@ -63,7 +63,7 @@ export function formatFinalResponse(response, modelName, jsonMode) {
|
|
|
63
63
|
let finalResponse = typeof response === 'string' ? response : JSON.stringify(response);
|
|
64
64
|
// If response is an array, look for first parsable JSON in text
|
|
65
65
|
console.log('[AIAgent] Checking if response is an array:', Array.isArray(response));
|
|
66
|
-
console.log('[AIAgent] Response:', response);
|
|
66
|
+
console.log('[AIAgent] Response length:', typeof response === 'string' ? response.length : 'N/A (object)');
|
|
67
67
|
if (Array.isArray(response)) {
|
|
68
68
|
for (const item of response) {
|
|
69
69
|
if (item &&
|
|
@@ -98,7 +98,7 @@ export function formatFinalResponse(response, modelName, jsonMode) {
|
|
|
98
98
|
}
|
|
99
99
|
return { response: result.response };
|
|
100
100
|
}
|
|
101
|
-
console.log('[AIAgent] Final response:', finalResponse);
|
|
101
|
+
console.log('[AIAgent] Final response length:', typeof finalResponse === 'string' ? finalResponse.length : 'N/A');
|
|
102
102
|
return { response: finalResponse };
|
|
103
103
|
}
|
|
104
104
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-formatter.js","sourceRoot":"","sources":["../../src/utils/agent-formatter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAExD;;GAEG;AACH,MAAM,UAAU,8BAA8B,CAC5C,MAAiB;IAEjB,IAAI,CAAC;QACH,gDAAgD;QAChD,MAAM,SAAS,GAAG,MAAa,CAAC;QAChC,+CAA+C;QAC/C,MAAM,aAAa,GAAG;YACpB,6BAA6B;YAC7B,SAAS,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,iBAAiB;gBACzD,EAAE,cAAc;YAClB,yBAAyB;YACzB,SAAS,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,iBAAiB;gBACjE,EAAE,cAAc;YAClB,4BAA4B;YAC5B,SAAS,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,cAAc;YACxD,gCAAgC;YAChC,SAAS,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,cAAc;YAClE,gCAAgC;YAChC,SAAS,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,iBAAiB;gBACzD,EAAE,cAAc;SACnB,CAAC;QAEF,IAAI,WAAW,GAAQ,IAAI,CAAC;QAC5B,KAAK,MAAM,IAAI,IAAI,aAAa,EAAE,CAAC;YACjC,IAAI,IAAI,EAAE,CAAC;gBACT,WAAW,GAAG,IAAI,CAAC;gBACnB,MAAM;YACR,CAAC;QACH,CAAC;QAED,IAAI,WAAW,EAAE,CAAC;YAChB,IAAI,WAAW,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC9D,KAAK,MAAM,MAAM,IAAI,WAAW,CAAC,OAAO,EAAE,CAAC;oBACzC,IAAI,MAAM,CAAC,KAAK,EAAE,SAAS,EAAE,CAAC;wBAC5B,yCAAyC;wBACzC,OAAO,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC;oBAChC,CAAC;oBACD,iEAAiE;oBACjE,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;wBACrB,OAAO,MAAM,CAAC,SAAS,CAAC;oBAC1B,CAAC;gBACH,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,uCAAuC,CAAC,CAAC;YACvD,CAAC;QACH,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAC;QAClD,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,IAAI,CAAC,6CAA6C,EAAE,KAAK,CAAC,CAAC;QACnE,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AACD;;GAEG;AACH,MAAM,UAAU,mBAAmB,CACjC,QAA0B,EAC1B,SAAiB,EACjB,QAAkB;IAElB,IAAI,aAAa,GACf,OAAO,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IACrE,gEAAgE;IAEhE,OAAO,CAAC,GAAG,CACT,6CAA6C,EAC7C,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CACxB,CAAC;IACF,OAAO,CAAC,GAAG,CAAC,
|
|
1
|
+
{"version":3,"file":"agent-formatter.js","sourceRoot":"","sources":["../../src/utils/agent-formatter.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bubbleflow-validation.d.ts","sourceRoot":"","sources":["../../src/utils/bubbleflow-validation.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAE9D,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;CACjD;
|
|
1
|
+
{"version":3,"file":"bubbleflow-validation.d.ts","sourceRoot":"","sources":["../../src/utils/bubbleflow-validation.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAE9D,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;CACjD;AA+ED,wBAAsB,kBAAkB,CACtC,IAAI,EAAE,MAAM,EACZ,aAAa,EAAE,aAAa,GAC3B,OAAO,CAAC,gBAAgB,CAAC,CAsF3B"}
|
|
@@ -1,40 +1,88 @@
|
|
|
1
1
|
import * as ts from 'typescript';
|
|
2
2
|
import { parseBubbleFlow } from './bubbleflow-parser.js';
|
|
3
|
+
// Language Service-based validator (persistent across calls for performance)
|
|
4
|
+
let cachedLanguageService = null;
|
|
5
|
+
let cachedCompilerOptions = null;
|
|
6
|
+
const scriptVersions = new Map();
|
|
7
|
+
const scriptSnapshots = new Map();
|
|
8
|
+
function getOrCreateLanguageService() {
|
|
9
|
+
if (cachedLanguageService && cachedCompilerOptions) {
|
|
10
|
+
return cachedLanguageService;
|
|
11
|
+
}
|
|
12
|
+
// Get TypeScript compiler options (similar to bubble-core config)
|
|
13
|
+
// Disable file generation options for runtime validation performance
|
|
14
|
+
const compilerOptions = {
|
|
15
|
+
target: ts.ScriptTarget.ES2022,
|
|
16
|
+
module: ts.ModuleKind.ESNext,
|
|
17
|
+
moduleResolution: ts.ModuleResolutionKind.Bundler,
|
|
18
|
+
esModuleInterop: true,
|
|
19
|
+
allowSyntheticDefaultImports: true,
|
|
20
|
+
strict: true,
|
|
21
|
+
noImplicitAny: false,
|
|
22
|
+
skipLibCheck: true,
|
|
23
|
+
forceConsistentCasingInFileNames: true,
|
|
24
|
+
declaration: false,
|
|
25
|
+
declarationMap: false,
|
|
26
|
+
sourceMap: false,
|
|
27
|
+
incremental: false,
|
|
28
|
+
noUnusedLocals: true,
|
|
29
|
+
noUnusedParameters: true,
|
|
30
|
+
noImplicitReturns: true,
|
|
31
|
+
noFallthroughCasesInSwitch: true,
|
|
32
|
+
resolveJsonModule: true,
|
|
33
|
+
isolatedModules: true,
|
|
34
|
+
};
|
|
35
|
+
// Create Language Service Host with full file system access
|
|
36
|
+
const host = {
|
|
37
|
+
getScriptFileNames: () => Array.from(scriptSnapshots.keys()),
|
|
38
|
+
getScriptVersion: (fileName) => scriptVersions.get(fileName)?.toString() ?? '0',
|
|
39
|
+
getScriptSnapshot: (fileName) => {
|
|
40
|
+
// First check our in-memory snapshots
|
|
41
|
+
const snapshot = scriptSnapshots.get(fileName);
|
|
42
|
+
if (snapshot) {
|
|
43
|
+
return snapshot;
|
|
44
|
+
}
|
|
45
|
+
// Then try to read from file system (for node_modules, etc.)
|
|
46
|
+
if (ts.sys.fileExists(fileName)) {
|
|
47
|
+
const text = ts.sys.readFile(fileName);
|
|
48
|
+
if (text !== undefined) {
|
|
49
|
+
return ts.ScriptSnapshot.fromString(text);
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
return undefined;
|
|
53
|
+
},
|
|
54
|
+
getCurrentDirectory: () => ts.sys.getCurrentDirectory(),
|
|
55
|
+
getCompilationSettings: () => compilerOptions,
|
|
56
|
+
getDefaultLibFileName: (options) => ts.getDefaultLibFilePath(options),
|
|
57
|
+
fileExists: ts.sys.fileExists,
|
|
58
|
+
readFile: ts.sys.readFile,
|
|
59
|
+
readDirectory: ts.sys.readDirectory,
|
|
60
|
+
directoryExists: ts.sys.directoryExists,
|
|
61
|
+
getDirectories: ts.sys.getDirectories,
|
|
62
|
+
useCaseSensitiveFileNames: () => ts.sys.useCaseSensitiveFileNames,
|
|
63
|
+
};
|
|
64
|
+
cachedCompilerOptions = compilerOptions;
|
|
65
|
+
cachedLanguageService = ts.createLanguageService(host, ts.createDocumentRegistry());
|
|
66
|
+
return cachedLanguageService;
|
|
67
|
+
}
|
|
3
68
|
export async function validateBubbleFlow(code, bubbleFactory) {
|
|
4
69
|
try {
|
|
5
70
|
// Create a temporary file name for the validation
|
|
6
|
-
const fileName = '
|
|
7
|
-
// Get
|
|
8
|
-
const
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
baseUrl: '.',
|
|
22
|
-
};
|
|
23
|
-
// Create a program with the code
|
|
24
|
-
const sourceFile = ts.createSourceFile(fileName, code, ts.ScriptTarget.ES2022, true);
|
|
25
|
-
// Create program
|
|
26
|
-
const host = ts.createCompilerHost(compilerOptions);
|
|
27
|
-
// Override getSourceFile to return our code
|
|
28
|
-
const originalGetSourceFile = host.getSourceFile;
|
|
29
|
-
host.getSourceFile = (name, languageVersion, onError, shouldCreateNewSourceFile) => {
|
|
30
|
-
if (name === fileName) {
|
|
31
|
-
return sourceFile;
|
|
32
|
-
}
|
|
33
|
-
return originalGetSourceFile.call(host, name, languageVersion, onError, shouldCreateNewSourceFile);
|
|
34
|
-
};
|
|
35
|
-
const program = ts.createProgram([fileName], compilerOptions, host);
|
|
36
|
-
// Get diagnostics
|
|
37
|
-
const diagnostics = ts.getPreEmitDiagnostics(program);
|
|
71
|
+
const fileName = 'virtual-bubble-flow.ts';
|
|
72
|
+
// Get or create the language service
|
|
73
|
+
const languageService = getOrCreateLanguageService();
|
|
74
|
+
// Update script version and snapshot
|
|
75
|
+
const version = (scriptVersions.get(fileName) ?? 0) + 1;
|
|
76
|
+
scriptVersions.set(fileName, version);
|
|
77
|
+
scriptSnapshots.set(fileName, ts.ScriptSnapshot.fromString(code));
|
|
78
|
+
// Get diagnostics using Language Service
|
|
79
|
+
const syntacticDiagnostics = languageService.getSyntacticDiagnostics(fileName);
|
|
80
|
+
const semanticDiagnostics = languageService.getSemanticDiagnostics(fileName);
|
|
81
|
+
// Filter out TS6133 (unused variables) like the server does
|
|
82
|
+
const diagnostics = [
|
|
83
|
+
...syntacticDiagnostics,
|
|
84
|
+
...semanticDiagnostics,
|
|
85
|
+
].filter((d) => d.code !== 6133);
|
|
38
86
|
if (diagnostics.length > 0) {
|
|
39
87
|
const errors = diagnostics.map((diagnostic) => {
|
|
40
88
|
if (diagnostic.file && diagnostic.start !== undefined) {
|
|
@@ -50,6 +98,15 @@ export async function validateBubbleFlow(code, bubbleFactory) {
|
|
|
50
98
|
};
|
|
51
99
|
}
|
|
52
100
|
// Additional validation: Check if it extends BubbleFlow
|
|
101
|
+
// Get source file from language service for AST analysis
|
|
102
|
+
const program = languageService.getProgram();
|
|
103
|
+
const sourceFile = program?.getSourceFile(fileName);
|
|
104
|
+
if (!sourceFile) {
|
|
105
|
+
return {
|
|
106
|
+
valid: false,
|
|
107
|
+
errors: ['Failed to get source file for validation'],
|
|
108
|
+
};
|
|
109
|
+
}
|
|
53
110
|
const hasValidBubbleFlow = validateBubbleFlowClass(sourceFile);
|
|
54
111
|
if (!hasValidBubbleFlow.valid) {
|
|
55
112
|
return hasValidBubbleFlow;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bubbleflow-validation.js","sourceRoot":"","sources":["../../src/utils/bubbleflow-validation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAUzD,
|
|
1
|
+
{"version":3,"file":"bubbleflow-validation.js","sourceRoot":"","sources":["../../src/utils/bubbleflow-validation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAUzD,6EAA6E;AAC7E,IAAI,qBAAqB,GAA8B,IAAI,CAAC;AAC5D,IAAI,qBAAqB,GAA8B,IAAI,CAAC;AAC5D,MAAM,cAAc,GAAG,IAAI,GAAG,EAAkB,CAAC;AACjD,MAAM,eAAe,GAAG,IAAI,GAAG,EAA8B,CAAC;AAE9D,SAAS,0BAA0B;IACjC,IAAI,qBAAqB,IAAI,qBAAqB,EAAE,CAAC;QACnD,OAAO,qBAAqB,CAAC;IAC/B,CAAC;IAED,kEAAkE;IAClE,qEAAqE;IACrE,MAAM,eAAe,GAAuB;QAC1C,MAAM,EAAE,EAAE,CAAC,YAAY,CAAC,MAAM;QAC9B,MAAM,EAAE,EAAE,CAAC,UAAU,CAAC,MAAM;QAC5B,gBAAgB,EAAE,EAAE,CAAC,oBAAoB,CAAC,OAAO;QACjD,eAAe,EAAE,IAAI;QACrB,4BAA4B,EAAE,IAAI;QAClC,MAAM,EAAE,IAAI;QACZ,aAAa,EAAE,KAAK;QACpB,YAAY,EAAE,IAAI;QAClB,gCAAgC,EAAE,IAAI;QACtC,WAAW,EAAE,KAAK;QAClB,cAAc,EAAE,KAAK;QACrB,SAAS,EAAE,KAAK;QAChB,WAAW,EAAE,KAAK;QAClB,cAAc,EAAE,IAAI;QACpB,kBAAkB,EAAE,IAAI;QACxB,iBAAiB,EAAE,IAAI;QACvB,0BAA0B,EAAE,IAAI;QAChC,iBAAiB,EAAE,IAAI;QACvB,eAAe,EAAE,IAAI;KACtB,CAAC;IAEF,4DAA4D;IAC5D,MAAM,IAAI,GAA2B;QACnC,kBAAkB,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC;QAC5D,gBAAgB,EAAE,CAAC,QAAQ,EAAE,EAAE,CAC7B,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,QAAQ,EAAE,IAAI,GAAG;QACjD,iBAAiB,EAAE,CAAC,QAAQ,EAAE,EAAE;YAC9B,sCAAsC;YACtC,MAAM,QAAQ,GAAG,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAC/C,IAAI,QAAQ,EAAE,CAAC;gBACb,OAAO,QAAQ,CAAC;YAClB,CAAC;YAED,6DAA6D;YAC7D,IAAI,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAChC,MAAM,IAAI,GAAG,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;gBACvC,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;oBACvB,OAAO,EAAE,CAAC,cAAc,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;gBAC5C,CAAC;YACH,CAAC;YAED,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,mBAAmB,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,mBAAmB,EAAE;QACvD,sBAAsB,EAAE,GAAG,EAAE,CAAC,eAAe;QAC7C,qBAAqB,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,EAAE,CAAC,qBAAqB,CAAC,OAAO,CAAC;QACrE,UAAU,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU;QAC7B,QAAQ,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ;QACzB,aAAa,EAAE,EAAE,CAAC,GAAG,CAAC,aAAa;QACnC,eAAe,EAAE,EAAE,CAAC,GAAG,CAAC,eAAe;QACvC,cAAc,EAAE,EAAE,CAAC,GAAG,CAAC,cAAc;QACrC,yBAAyB,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,yBAAyB;KAClE,CAAC;IAEF,qBAAqB,GAAG,eAAe,CAAC;IACxC,qBAAqB,GAAG,EAAE,CAAC,qBAAqB,CAC9C,IAAI,EACJ,EAAE,CAAC,sBAAsB,EAAE,CAC5B,CAAC;IAEF,OAAO,qBAAqB,CAAC;AAC/B,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,IAAY,EACZ,aAA4B;IAE5B,IAAI,CAAC;QACH,kDAAkD;QAClD,MAAM,QAAQ,GAAG,wBAAwB,CAAC;QAE1C,qCAAqC;QACrC,MAAM,eAAe,GAAG,0BAA0B,EAAE,CAAC;QAErD,qCAAqC;QACrC,MAAM,OAAO,GAAG,CAAC,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QACxD,cAAc,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QACtC,eAAe,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,CAAC,cAAc,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;QAElE,yCAAyC;QACzC,MAAM,oBAAoB,GACxB,eAAe,CAAC,uBAAuB,CAAC,QAAQ,CAAC,CAAC;QACpD,MAAM,mBAAmB,GACvB,eAAe,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC;QAEnD,4DAA4D;QAC5D,MAAM,WAAW,GAAG;YAClB,GAAG,oBAAoB;YACvB,GAAG,mBAAmB;SACvB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;QAEjC,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3B,MAAM,MAAM,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE;gBAC5C,IAAI,UAAU,CAAC,IAAI,IAAI,UAAU,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;oBACtD,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,6BAA6B,CAC1D,UAAU,CAAC,IAAI,EACf,UAAU,CAAC,KAAK,CACjB,CAAC;oBACF,MAAM,OAAO,GAAG,EAAE,CAAC,4BAA4B,CAC7C,UAAU,CAAC,WAAW,EACtB,IAAI,CACL,CAAC;oBACF,OAAO,QAAQ,IAAI,GAAG,CAAC,YAAY,SAAS,GAAG,CAAC,KAAK,OAAO,EAAE,CAAC;gBACjE,CAAC;gBACD,OAAO,EAAE,CAAC,4BAA4B,CAAC,UAAU,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;YACvE,CAAC,CAAC,CAAC;YAEH,OAAO;gBACL,KAAK,EAAE,KAAK;gBACZ,MAAM;aACP,CAAC;QACJ,CAAC;QAED,wDAAwD;QACxD,yDAAyD;QACzD,MAAM,OAAO,GAAG,eAAe,CAAC,UAAU,EAAE,CAAC;QAC7C,MAAM,UAAU,GAAG,OAAO,EAAE,aAAa,CAAC,QAAQ,CAAC,CAAC;QAEpD,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO;gBACL,KAAK,EAAE,KAAK;gBACZ,MAAM,EAAE,CAAC,0CAA0C,CAAC;aACrD,CAAC;QACJ,CAAC;QAED,MAAM,kBAAkB,GAAG,uBAAuB,CAAC,UAAU,CAAC,CAAC;QAC/D,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,CAAC;YAC9B,OAAO,kBAAkB,CAAC;QAC5B,CAAC;QAED,sDAAsD;QACtD,MAAM,WAAW,GAAG,eAAe,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;QACzD,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;YACzB,uEAAuE;YACvE,OAAO;gBACL,KAAK,EAAE,KAAK;gBACZ,MAAM,EAAE,WAAW,CAAC,MAAM,IAAI,CAAC,mCAAmC,CAAC;aACpE,CAAC;QACJ,CAAC;QAED,OAAO;YACL,KAAK,EAAE,IAAI;YACX,gBAAgB,EAAE,WAAW,CAAC,OAAO;SACtC,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,KAAK,EAAE,KAAK;YACZ,MAAM,EAAE;gBACN,qBAAqB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;aAC9E;SACF,CAAC;IACJ,CAAC;AACH,CAAC;AAED,SAAS,uBAAuB,CAAC,UAAyB;IACxD,IAAI,kBAAkB,GAAG,KAAK,CAAC;IAC/B,IAAI,eAAe,GAAG,KAAK,CAAC;IAE5B,SAAS,KAAK,CAAC,IAAa;QAC1B,IAAI,EAAE,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YACxD,oCAAoC;YACpC,MAAM,aAAa,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAC7C,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,KAAK,EAAE,CAAC,UAAU,CAAC,cAAc,CAC1D,CAAC;YAEF,IACE,aAAa;gBACb,aAAa,CAAC,KAAK,CAAC,IAAI,CACtB,CAAC,IAAI,EAAE,EAAE,CACP,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC;oBAChC,IAAI,CAAC,UAAU,CAAC,IAAI,KAAK,YAAY,CACxC,EACD,CAAC;gBACD,kBAAkB,GAAG,IAAI,CAAC;gBAE1B,0BAA0B;gBAC1B,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;oBAC9B,IACE,EAAE,CAAC,mBAAmB,CAAC,MAAM,CAAC;wBAC9B,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC;wBAC5B,MAAM,CAAC,IAAI,CAAC,IAAI,KAAK,QAAQ,EAC7B,CAAC;wBACD,eAAe,GAAG,IAAI,CAAC;oBACzB,CAAC;gBACH,CAAC,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAC/B,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,CAAC;IAElB,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,IAAI,CAAC,kBAAkB,EAAE,CAAC;QACxB,MAAM,CAAC,IAAI,CAAC,mDAAmD,CAAC,CAAC;IACnE,CAAC;IACD,IAAI,CAAC,eAAe,EAAE,CAAC;QACrB,MAAM,CAAC,IAAI,CAAC,4CAA4C,CAAC,CAAC;IAC5D,CAAC;IAED,OAAO;QACL,KAAK,EAAE,MAAM,CAAC,MAAM,KAAK,CAAC;QAC1B,MAAM,EAAE,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;KAC/C,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Sanitizes error messages to remove sensitive credential information
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* Sanitizes error stack traces
|
|
6
|
+
*/
|
|
7
|
+
export declare function sanitizeErrorStack(error: Error | undefined): string | undefined;
|
|
8
|
+
/**
|
|
9
|
+
* Sanitizes error messages
|
|
10
|
+
*/
|
|
11
|
+
export declare function sanitizeErrorMessage(message: string): string;
|
|
12
|
+
//# sourceMappingURL=error-sanitizer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"error-sanitizer.d.ts","sourceRoot":"","sources":["../../src/utils/error-sanitizer.ts"],"names":[],"mappings":"AAAA;;GAEG;AAwFH;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,KAAK,GAAG,SAAS,GACvB,MAAM,GAAG,SAAS,CAGpB;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAE5D"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Sanitizes error messages to remove sensitive credential information
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* Sanitizes a string to remove credential patterns
|
|
6
|
+
*/
|
|
7
|
+
function sanitizeString(str) {
|
|
8
|
+
if (!str)
|
|
9
|
+
return str;
|
|
10
|
+
let sanitized = str;
|
|
11
|
+
// Common credential field name patterns (case-insensitive)
|
|
12
|
+
const credentialFieldPatterns = [
|
|
13
|
+
'api[_-]?key',
|
|
14
|
+
'access[_-]?key',
|
|
15
|
+
'secret[_-]?key',
|
|
16
|
+
'secret',
|
|
17
|
+
'token',
|
|
18
|
+
'password',
|
|
19
|
+
'passwd',
|
|
20
|
+
'pwd',
|
|
21
|
+
'auth[_-]?token',
|
|
22
|
+
'bearer[_-]?token',
|
|
23
|
+
'account[_-]?id',
|
|
24
|
+
'client[_-]?id',
|
|
25
|
+
'client[_-]?secret',
|
|
26
|
+
'private[_-]?key',
|
|
27
|
+
'public[_-]?key',
|
|
28
|
+
'api[_-]?secret',
|
|
29
|
+
'credential',
|
|
30
|
+
'auth',
|
|
31
|
+
'authentication',
|
|
32
|
+
];
|
|
33
|
+
// Create pattern to match any credential field name
|
|
34
|
+
const credentialPattern = new RegExp(`(${credentialFieldPatterns.join('|')})["\\s]*:["\\s]*(["'])([^"']+)\\2`, 'gi');
|
|
35
|
+
// Replace credential values with [REDACTED]
|
|
36
|
+
sanitized = sanitized.replace(credentialPattern, (match, fieldName, quote, value) => {
|
|
37
|
+
// Only replace if it looks like a credential value (long alphanumeric/hex string)
|
|
38
|
+
if (value.length > 8 && /^[a-zA-Z0-9+/\-=]+$/.test(value)) {
|
|
39
|
+
return `${fieldName}: ${quote}[REDACTED]${quote}`;
|
|
40
|
+
}
|
|
41
|
+
return match;
|
|
42
|
+
});
|
|
43
|
+
// Sanitize entire credentials objects that might be in the error
|
|
44
|
+
// Match: credentials: { ... }
|
|
45
|
+
sanitized = sanitized.replace(/credentials["\s]*:["\s]*\{[^}]*\}/gi, 'credentials: { [REDACTED] }');
|
|
46
|
+
// Sanitize any object literal that contains credential-like keys
|
|
47
|
+
// This catches objects like { CLOUDFLARE_R2_ACCESS_KEY: "...", ... }
|
|
48
|
+
sanitized = sanitized.replace(/\{[^}]*\b(?:API[_-]?KEY|ACCESS[_-]?KEY|SECRET[_-]?KEY|SECRET|TOKEN|PASSWORD|CREDENTIAL)\b[^}]*\}/gi, (match) => {
|
|
49
|
+
// Replace all values in this object that look like credentials
|
|
50
|
+
return match.replace(/([\w_]+)["\s]*:["\s]*(["'])([^"']+)\2/g, (fullMatch, key, quote, value) => {
|
|
51
|
+
// Check if the key looks like a credential field
|
|
52
|
+
const isCredentialKey = credentialFieldPatterns.some((pattern) => new RegExp(pattern, 'i').test(key));
|
|
53
|
+
// Check if the value looks like a credential
|
|
54
|
+
const isCredentialValue = value.length > 8 && /^[a-zA-Z0-9+/\-=]+$/.test(value);
|
|
55
|
+
if (isCredentialKey || isCredentialValue) {
|
|
56
|
+
return `${key}: ${quote}[REDACTED]${quote}`;
|
|
57
|
+
}
|
|
58
|
+
return fullMatch;
|
|
59
|
+
});
|
|
60
|
+
});
|
|
61
|
+
return sanitized;
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Sanitizes error stack traces
|
|
65
|
+
*/
|
|
66
|
+
export function sanitizeErrorStack(error) {
|
|
67
|
+
if (!error || !error.stack)
|
|
68
|
+
return error?.stack;
|
|
69
|
+
return sanitizeString(error.stack);
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Sanitizes error messages
|
|
73
|
+
*/
|
|
74
|
+
export function sanitizeErrorMessage(message) {
|
|
75
|
+
return sanitizeString(message);
|
|
76
|
+
}
|
|
77
|
+
//# sourceMappingURL=error-sanitizer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"error-sanitizer.js","sourceRoot":"","sources":["../../src/utils/error-sanitizer.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;GAEG;AACH,SAAS,cAAc,CAAC,GAAW;IACjC,IAAI,CAAC,GAAG;QAAE,OAAO,GAAG,CAAC;IAErB,IAAI,SAAS,GAAG,GAAG,CAAC;IAEpB,2DAA2D;IAC3D,MAAM,uBAAuB,GAAG;QAC9B,aAAa;QACb,gBAAgB;QAChB,gBAAgB;QAChB,QAAQ;QACR,OAAO;QACP,UAAU;QACV,QAAQ;QACR,KAAK;QACL,gBAAgB;QAChB,kBAAkB;QAClB,gBAAgB;QAChB,eAAe;QACf,mBAAmB;QACnB,iBAAiB;QACjB,gBAAgB;QAChB,gBAAgB;QAChB,YAAY;QACZ,MAAM;QACN,gBAAgB;KACjB,CAAC;IAEF,oDAAoD;IACpD,MAAM,iBAAiB,GAAG,IAAI,MAAM,CAClC,IAAI,uBAAuB,CAAC,IAAI,CAAC,GAAG,CAAC,mCAAmC,EACxE,IAAI,CACL,CAAC;IAEF,4CAA4C;IAC5C,SAAS,GAAG,SAAS,CAAC,OAAO,CAC3B,iBAAiB,EACjB,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;QACjC,kFAAkF;QAClF,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,qBAAqB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YAC1D,OAAO,GAAG,SAAS,KAAK,KAAK,aAAa,KAAK,EAAE,CAAC;QACpD,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC,CACF,CAAC;IAEF,iEAAiE;IACjE,8BAA8B;IAC9B,SAAS,GAAG,SAAS,CAAC,OAAO,CAC3B,qCAAqC,EACrC,6BAA6B,CAC9B,CAAC;IAEF,iEAAiE;IACjE,qEAAqE;IACrE,SAAS,GAAG,SAAS,CAAC,OAAO,CAC3B,oGAAoG,EACpG,CAAC,KAAK,EAAE,EAAE;QACR,+DAA+D;QAC/D,OAAO,KAAK,CAAC,OAAO,CAClB,wCAAwC,EACxC,CAAC,SAAS,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;YAC/B,iDAAiD;YACjD,MAAM,eAAe,GAAG,uBAAuB,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAC/D,IAAI,MAAM,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CACnC,CAAC;YAEF,6CAA6C;YAC7C,MAAM,iBAAiB,GACrB,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,qBAAqB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAExD,IAAI,eAAe,IAAI,iBAAiB,EAAE,CAAC;gBACzC,OAAO,GAAG,GAAG,KAAK,KAAK,aAAa,KAAK,EAAE,CAAC;YAC9C,CAAC;YACD,OAAO,SAAS,CAAC;QACnB,CAAC,CACF,CAAC;IACJ,CAAC,CACF,CAAC;IAEF,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAChC,KAAwB;IAExB,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,KAAK;QAAE,OAAO,KAAK,EAAE,KAAK,CAAC;IAChD,OAAO,cAAc,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;AACrC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,oBAAoB,CAAC,OAAe;IAClD,OAAO,cAAc,CAAC,OAAO,CAAC,CAAC;AACjC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bubblelab/bubble-core",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.10",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
"dependencies": {
|
|
25
25
|
"@aws-sdk/client-s3": "^3.873.0",
|
|
26
26
|
"@aws-sdk/s3-request-presigner": "^3.873.0",
|
|
27
|
-
"@langchain/anthropic": "^0.3.
|
|
27
|
+
"@langchain/anthropic": "^0.3.32",
|
|
28
28
|
"@langchain/community": "^0.3.53",
|
|
29
29
|
"@langchain/core": "^0.3.66",
|
|
30
30
|
"@langchain/google-genai": "^0.2.15",
|
|
@@ -39,13 +39,13 @@
|
|
|
39
39
|
"resend": "^4.8.0",
|
|
40
40
|
"zod": "^3.24.1",
|
|
41
41
|
"zod-to-json-schema": "^3.24.6",
|
|
42
|
-
"@bubblelab/shared-schemas": "0.1.
|
|
42
|
+
"@bubblelab/shared-schemas": "0.1.10"
|
|
43
43
|
},
|
|
44
44
|
"devDependencies": {
|
|
45
45
|
"@types/node": "^20.12.12",
|
|
46
46
|
"@vitest/ui": "^3.2.4",
|
|
47
47
|
"tsx": "^4.20.3",
|
|
48
|
-
"typescript": "^5.
|
|
48
|
+
"typescript": "^5.8.3",
|
|
49
49
|
"vitest": "^3.2.4"
|
|
50
50
|
},
|
|
51
51
|
"scripts": {
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/bubble-trigger/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/bubble-trigger/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC"}
|
|
@@ -1,87 +0,0 @@
|
|
|
1
|
-
export interface BubbleTriggerEventRegistry {
|
|
2
|
-
'slack/bot_mentioned': SlackMentionEvent;
|
|
3
|
-
'slack/message_received': SlackMessageReceivedEvent;
|
|
4
|
-
'gmail/email_received': GmailEmailEvent;
|
|
5
|
-
'schedule/cron/daily': CronEvent;
|
|
6
|
-
'webhook/http': WebhookEvent;
|
|
7
|
-
}
|
|
8
|
-
export declare const BUBBLE_TRIGGER_EVENTS: {
|
|
9
|
-
readonly 'slack/bot_mentioned': true;
|
|
10
|
-
readonly 'slack/message_received': true;
|
|
11
|
-
readonly 'gmail/email_received': true;
|
|
12
|
-
readonly 'schedule/cron/daily': true;
|
|
13
|
-
readonly 'webhook/http': true;
|
|
14
|
-
};
|
|
15
|
-
export declare function isValidBubbleTriggerEvent(eventType: string): eventType is keyof BubbleTriggerEventRegistry;
|
|
16
|
-
export interface BubbleTriggerEvent {
|
|
17
|
-
type: keyof BubbleTriggerEventRegistry;
|
|
18
|
-
timestamp: string;
|
|
19
|
-
path: string;
|
|
20
|
-
[key: string]: unknown;
|
|
21
|
-
}
|
|
22
|
-
export interface SlackEventWrapper {
|
|
23
|
-
token: string;
|
|
24
|
-
team_id: string;
|
|
25
|
-
api_app_id: string;
|
|
26
|
-
event: SlackAppMentionEvent | SlackMessageEvent;
|
|
27
|
-
type: 'event_callback';
|
|
28
|
-
authorizations: Array<{
|
|
29
|
-
enterprise_id?: string;
|
|
30
|
-
team_id: string;
|
|
31
|
-
user_id: string;
|
|
32
|
-
is_bot: boolean;
|
|
33
|
-
}>;
|
|
34
|
-
event_context: string;
|
|
35
|
-
event_id: string;
|
|
36
|
-
event_time: number;
|
|
37
|
-
}
|
|
38
|
-
export interface SlackAppMentionEvent {
|
|
39
|
-
type: 'app_mention';
|
|
40
|
-
user: string;
|
|
41
|
-
text: string;
|
|
42
|
-
ts: string;
|
|
43
|
-
channel: string;
|
|
44
|
-
event_ts: string;
|
|
45
|
-
thread_ts?: string;
|
|
46
|
-
}
|
|
47
|
-
export interface SlackMessageEvent {
|
|
48
|
-
type: 'message';
|
|
49
|
-
user: string;
|
|
50
|
-
text: string;
|
|
51
|
-
ts: string;
|
|
52
|
-
channel: string;
|
|
53
|
-
event_ts: string;
|
|
54
|
-
channel_type: 'channel' | 'group' | 'im' | 'mpim';
|
|
55
|
-
subtype?: string;
|
|
56
|
-
}
|
|
57
|
-
export interface SlackMentionEvent extends BubbleTriggerEvent {
|
|
58
|
-
slack_event: SlackEventWrapper;
|
|
59
|
-
channel: string;
|
|
60
|
-
user: string;
|
|
61
|
-
text: string;
|
|
62
|
-
thread_ts?: string;
|
|
63
|
-
}
|
|
64
|
-
export interface SlackMessageReceivedEvent extends BubbleTriggerEvent {
|
|
65
|
-
slack_event: SlackEventWrapper;
|
|
66
|
-
channel: string;
|
|
67
|
-
user: string;
|
|
68
|
-
text: string;
|
|
69
|
-
channel_type: 'channel' | 'group' | 'im' | 'mpim';
|
|
70
|
-
subtype?: string;
|
|
71
|
-
}
|
|
72
|
-
export interface GmailEmailEvent extends BubbleTriggerEvent {
|
|
73
|
-
email: string;
|
|
74
|
-
}
|
|
75
|
-
export interface CronEvent extends BubbleTriggerEvent {
|
|
76
|
-
cron: string;
|
|
77
|
-
}
|
|
78
|
-
export interface WebhookEvent extends BubbleTriggerEvent {
|
|
79
|
-
body?: Record<string, unknown>;
|
|
80
|
-
}
|
|
81
|
-
export interface BubbleTriggerOptions {
|
|
82
|
-
name?: string;
|
|
83
|
-
description?: string;
|
|
84
|
-
timeout?: number;
|
|
85
|
-
retries?: number;
|
|
86
|
-
}
|
|
87
|
-
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/bubble-trigger/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
// Runtime object that mirrors the interface keys
|
|
2
|
-
// This allows us to validate event types at runtime
|
|
3
|
-
export const BUBBLE_TRIGGER_EVENTS = {
|
|
4
|
-
'slack/bot_mentioned': true,
|
|
5
|
-
'slack/message_received': true,
|
|
6
|
-
'gmail/email_received': true,
|
|
7
|
-
'schedule/cron/daily': true,
|
|
8
|
-
'webhook/http': true,
|
|
9
|
-
};
|
|
10
|
-
// Helper function to check if an event type is valid
|
|
11
|
-
export function isValidBubbleTriggerEvent(eventType) {
|
|
12
|
-
return eventType in BUBBLE_TRIGGER_EVENTS;
|
|
13
|
-
}
|
|
14
|
-
//# sourceMappingURL=types.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/bubble-trigger/types.ts"],"names":[],"mappings":"AAQA,iDAAiD;AACjD,oDAAoD;AACpD,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,qBAAqB,EAAE,IAAI;IAC3B,wBAAwB,EAAE,IAAI;IAC9B,sBAAsB,EAAE,IAAI;IAC5B,qBAAqB,EAAE,IAAI;IAC3B,cAAc,EAAE,IAAI;CAC6C,CAAC;AAEpE,qDAAqD;AACrD,MAAM,UAAU,yBAAyB,CACvC,SAAiB;IAEjB,OAAO,SAAS,IAAI,qBAAqB,CAAC;AAC5C,CAAC"}
|