@bubblelab/bubble-core 0.1.74 → 0.1.76
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 +88 -88
- package/dist/bubbles/service-bubble/ai-agent.d.ts +32 -32
- package/dist/bubbles/service-bubble/airtable.d.ts +76 -76
- package/dist/bubbles/service-bubble/airtable.d.ts.map +1 -1
- package/dist/bubbles/service-bubble/airtable.js +3 -1
- package/dist/bubbles/service-bubble/airtable.js.map +1 -1
- package/dist/bubbles/service-bubble/apify/apify.d.ts +18 -18
- package/dist/bubbles/service-bubble/ashby/ashby.d.ts +112 -112
- package/dist/bubbles/service-bubble/ashby/ashby.schema.d.ts +38 -38
- package/dist/bubbles/service-bubble/browserbase/browserbase.d.ts +2 -2
- package/dist/bubbles/service-bubble/browserbase/browserbase.schema.d.ts +78 -78
- package/dist/bubbles/service-bubble/crustdata/crustdata.d.ts +82 -82
- package/dist/bubbles/service-bubble/crustdata/crustdata.schema.d.ts +42 -42
- package/dist/bubbles/service-bubble/firecrawl.d.ts +250 -250
- package/dist/bubbles/service-bubble/followupboss.d.ts +4 -4
- package/dist/bubbles/service-bubble/fullenrich/fullenrich.schema.d.ts +46 -46
- package/dist/bubbles/service-bubble/github.d.ts +44 -44
- package/dist/bubbles/service-bubble/gmail.d.ts +104 -104
- package/dist/bubbles/service-bubble/google-drive.d.ts +36 -36
- package/dist/bubbles/service-bubble/google-sheets/google-sheets.schema.d.ts +52 -52
- package/dist/bubbles/service-bubble/insforge-db.d.ts +8 -8
- package/dist/bubbles/service-bubble/jira/jira.schema.d.ts +62 -62
- package/dist/bubbles/service-bubble/notion/notion.d.ts +304 -304
- package/dist/bubbles/service-bubble/postgresql.d.ts +8 -8
- package/dist/bubbles/service-bubble/resend.d.ts +4 -4
- package/dist/bubbles/service-bubble/slack/slack.d.ts +320 -320
- package/dist/bubbles/service-bubble/stripe/stripe.d.ts +9 -9
- package/dist/bubbles/service-bubble/stripe/stripe.schema.d.ts +78 -78
- package/dist/bubbles/tool-bubble/amazon-shopping-tool/amazon-shopping-tool.schema.d.ts +28 -28
- package/dist/bubbles/tool-bubble/google-maps-tool.d.ts +12 -12
- package/dist/bubbles/tool-bubble/linkedin-connection-tool/linkedin-connection-tool.schema.d.ts +4 -4
- package/dist/bubbles/tool-bubble/linkedin-tool.d.ts +301 -301
- package/dist/bubbles/tool-bubble/sql-query-tool.d.ts +4 -4
- package/dist/bubbles/tool-bubble/tiktok-tool.d.ts +60 -60
- package/dist/bubbles/tool-bubble/twitter-tool.d.ts +106 -106
- package/dist/bubbles/tool-bubble/web-scrape-tool.d.ts +4 -4
- package/dist/bubbles/tool-bubble/web-search-tool.d.ts +8 -8
- package/dist/bubbles/tool-bubble/youtube-tool.d.ts +20 -20
- package/dist/bubbles/workflow-bubble/generate-document.workflow.d.ts +12 -12
- package/dist/bubbles/workflow-bubble/pdf-form-operations.workflow.d.ts +28 -28
- package/dist/bubbles/workflow-bubble/slack-formatter-agent.d.ts +56 -56
- package/dist/bubbles.json +3 -2
- package/package.json +2 -2
|
@@ -154,17 +154,17 @@ declare const SlackFormatterAgentResultSchema: z.ZodObject<{
|
|
|
154
154
|
verbatim?: boolean | undefined;
|
|
155
155
|
}>, "many">>;
|
|
156
156
|
}, "strip", z.ZodTypeAny, {
|
|
157
|
-
type: "
|
|
158
|
-
|
|
159
|
-
type: "plain_text"
|
|
157
|
+
type: "input" | "image" | "file" | "section" | "header" | "divider" | "context" | "actions";
|
|
158
|
+
title?: {
|
|
159
|
+
type: "plain_text";
|
|
160
160
|
text: string;
|
|
161
161
|
emoji?: boolean | undefined;
|
|
162
|
-
verbatim?: boolean | undefined;
|
|
163
162
|
} | undefined;
|
|
164
|
-
|
|
165
|
-
type: "plain_text";
|
|
163
|
+
text?: {
|
|
164
|
+
type: "plain_text" | "mrkdwn";
|
|
166
165
|
text: string;
|
|
167
166
|
emoji?: boolean | undefined;
|
|
167
|
+
verbatim?: boolean | undefined;
|
|
168
168
|
} | undefined;
|
|
169
169
|
image_url?: string | undefined;
|
|
170
170
|
optional?: boolean | undefined;
|
|
@@ -187,17 +187,17 @@ declare const SlackFormatterAgentResultSchema: z.ZodObject<{
|
|
|
187
187
|
label?: unknown;
|
|
188
188
|
hint?: unknown;
|
|
189
189
|
}, {
|
|
190
|
-
type: "
|
|
191
|
-
|
|
192
|
-
type: "plain_text"
|
|
190
|
+
type: "input" | "image" | "file" | "section" | "header" | "divider" | "context" | "actions";
|
|
191
|
+
title?: {
|
|
192
|
+
type: "plain_text";
|
|
193
193
|
text: string;
|
|
194
194
|
emoji?: boolean | undefined;
|
|
195
|
-
verbatim?: boolean | undefined;
|
|
196
195
|
} | undefined;
|
|
197
|
-
|
|
198
|
-
type: "plain_text";
|
|
196
|
+
text?: {
|
|
197
|
+
type: "plain_text" | "mrkdwn";
|
|
199
198
|
text: string;
|
|
200
199
|
emoji?: boolean | undefined;
|
|
200
|
+
verbatim?: boolean | undefined;
|
|
201
201
|
} | undefined;
|
|
202
202
|
image_url?: string | undefined;
|
|
203
203
|
optional?: boolean | undefined;
|
|
@@ -255,31 +255,31 @@ declare const SlackFormatterAgentResultSchema: z.ZodObject<{
|
|
|
255
255
|
}, "strip", z.ZodTypeAny, {
|
|
256
256
|
error: string;
|
|
257
257
|
success: boolean;
|
|
258
|
-
response: string;
|
|
259
|
-
iterations: number;
|
|
260
258
|
metadata: {
|
|
261
259
|
verbosityLevel: string;
|
|
262
260
|
technicalityLevel: string;
|
|
263
261
|
wordCount: number;
|
|
264
262
|
blockCount?: number | undefined;
|
|
265
263
|
};
|
|
264
|
+
response: string;
|
|
265
|
+
iterations: number;
|
|
266
266
|
toolCalls?: {
|
|
267
267
|
tool: string;
|
|
268
268
|
input?: unknown;
|
|
269
269
|
output?: unknown;
|
|
270
270
|
}[] | undefined;
|
|
271
271
|
blocks?: {
|
|
272
|
-
type: "
|
|
273
|
-
|
|
274
|
-
type: "plain_text"
|
|
272
|
+
type: "input" | "image" | "file" | "section" | "header" | "divider" | "context" | "actions";
|
|
273
|
+
title?: {
|
|
274
|
+
type: "plain_text";
|
|
275
275
|
text: string;
|
|
276
276
|
emoji?: boolean | undefined;
|
|
277
|
-
verbatim?: boolean | undefined;
|
|
278
277
|
} | undefined;
|
|
279
|
-
|
|
280
|
-
type: "plain_text";
|
|
278
|
+
text?: {
|
|
279
|
+
type: "plain_text" | "mrkdwn";
|
|
281
280
|
text: string;
|
|
282
281
|
emoji?: boolean | undefined;
|
|
282
|
+
verbatim?: boolean | undefined;
|
|
283
283
|
} | undefined;
|
|
284
284
|
image_url?: string | undefined;
|
|
285
285
|
optional?: boolean | undefined;
|
|
@@ -305,31 +305,31 @@ declare const SlackFormatterAgentResultSchema: z.ZodObject<{
|
|
|
305
305
|
}, {
|
|
306
306
|
error: string;
|
|
307
307
|
success: boolean;
|
|
308
|
-
response: string;
|
|
309
|
-
iterations: number;
|
|
310
308
|
metadata: {
|
|
311
309
|
verbosityLevel: string;
|
|
312
310
|
technicalityLevel: string;
|
|
313
311
|
wordCount: number;
|
|
314
312
|
blockCount?: number | undefined;
|
|
315
313
|
};
|
|
314
|
+
response: string;
|
|
315
|
+
iterations: number;
|
|
316
316
|
toolCalls?: {
|
|
317
317
|
tool: string;
|
|
318
318
|
input?: unknown;
|
|
319
319
|
output?: unknown;
|
|
320
320
|
}[] | undefined;
|
|
321
321
|
blocks?: {
|
|
322
|
-
type: "
|
|
323
|
-
|
|
324
|
-
type: "plain_text"
|
|
322
|
+
type: "input" | "image" | "file" | "section" | "header" | "divider" | "context" | "actions";
|
|
323
|
+
title?: {
|
|
324
|
+
type: "plain_text";
|
|
325
325
|
text: string;
|
|
326
326
|
emoji?: boolean | undefined;
|
|
327
|
-
verbatim?: boolean | undefined;
|
|
328
327
|
} | undefined;
|
|
329
|
-
|
|
330
|
-
type: "plain_text";
|
|
328
|
+
text?: {
|
|
329
|
+
type: "plain_text" | "mrkdwn";
|
|
331
330
|
text: string;
|
|
332
331
|
emoji?: boolean | undefined;
|
|
332
|
+
verbatim?: boolean | undefined;
|
|
333
333
|
} | undefined;
|
|
334
334
|
image_url?: string | undefined;
|
|
335
335
|
optional?: boolean | undefined;
|
|
@@ -512,17 +512,17 @@ export declare class SlackFormatterAgentBubble extends WorkflowBubble<SlackForma
|
|
|
512
512
|
verbatim?: boolean | undefined;
|
|
513
513
|
}>, "many">>;
|
|
514
514
|
}, "strip", z.ZodTypeAny, {
|
|
515
|
-
type: "
|
|
516
|
-
|
|
517
|
-
type: "plain_text"
|
|
515
|
+
type: "input" | "image" | "file" | "section" | "header" | "divider" | "context" | "actions";
|
|
516
|
+
title?: {
|
|
517
|
+
type: "plain_text";
|
|
518
518
|
text: string;
|
|
519
519
|
emoji?: boolean | undefined;
|
|
520
|
-
verbatim?: boolean | undefined;
|
|
521
520
|
} | undefined;
|
|
522
|
-
|
|
523
|
-
type: "plain_text";
|
|
521
|
+
text?: {
|
|
522
|
+
type: "plain_text" | "mrkdwn";
|
|
524
523
|
text: string;
|
|
525
524
|
emoji?: boolean | undefined;
|
|
525
|
+
verbatim?: boolean | undefined;
|
|
526
526
|
} | undefined;
|
|
527
527
|
image_url?: string | undefined;
|
|
528
528
|
optional?: boolean | undefined;
|
|
@@ -545,17 +545,17 @@ export declare class SlackFormatterAgentBubble extends WorkflowBubble<SlackForma
|
|
|
545
545
|
label?: unknown;
|
|
546
546
|
hint?: unknown;
|
|
547
547
|
}, {
|
|
548
|
-
type: "
|
|
549
|
-
|
|
550
|
-
type: "plain_text"
|
|
548
|
+
type: "input" | "image" | "file" | "section" | "header" | "divider" | "context" | "actions";
|
|
549
|
+
title?: {
|
|
550
|
+
type: "plain_text";
|
|
551
551
|
text: string;
|
|
552
552
|
emoji?: boolean | undefined;
|
|
553
|
-
verbatim?: boolean | undefined;
|
|
554
553
|
} | undefined;
|
|
555
|
-
|
|
556
|
-
type: "plain_text";
|
|
554
|
+
text?: {
|
|
555
|
+
type: "plain_text" | "mrkdwn";
|
|
557
556
|
text: string;
|
|
558
557
|
emoji?: boolean | undefined;
|
|
558
|
+
verbatim?: boolean | undefined;
|
|
559
559
|
} | undefined;
|
|
560
560
|
image_url?: string | undefined;
|
|
561
561
|
optional?: boolean | undefined;
|
|
@@ -613,31 +613,31 @@ export declare class SlackFormatterAgentBubble extends WorkflowBubble<SlackForma
|
|
|
613
613
|
}, "strip", z.ZodTypeAny, {
|
|
614
614
|
error: string;
|
|
615
615
|
success: boolean;
|
|
616
|
-
response: string;
|
|
617
|
-
iterations: number;
|
|
618
616
|
metadata: {
|
|
619
617
|
verbosityLevel: string;
|
|
620
618
|
technicalityLevel: string;
|
|
621
619
|
wordCount: number;
|
|
622
620
|
blockCount?: number | undefined;
|
|
623
621
|
};
|
|
622
|
+
response: string;
|
|
623
|
+
iterations: number;
|
|
624
624
|
toolCalls?: {
|
|
625
625
|
tool: string;
|
|
626
626
|
input?: unknown;
|
|
627
627
|
output?: unknown;
|
|
628
628
|
}[] | undefined;
|
|
629
629
|
blocks?: {
|
|
630
|
-
type: "
|
|
631
|
-
|
|
632
|
-
type: "plain_text"
|
|
630
|
+
type: "input" | "image" | "file" | "section" | "header" | "divider" | "context" | "actions";
|
|
631
|
+
title?: {
|
|
632
|
+
type: "plain_text";
|
|
633
633
|
text: string;
|
|
634
634
|
emoji?: boolean | undefined;
|
|
635
|
-
verbatim?: boolean | undefined;
|
|
636
635
|
} | undefined;
|
|
637
|
-
|
|
638
|
-
type: "plain_text";
|
|
636
|
+
text?: {
|
|
637
|
+
type: "plain_text" | "mrkdwn";
|
|
639
638
|
text: string;
|
|
640
639
|
emoji?: boolean | undefined;
|
|
640
|
+
verbatim?: boolean | undefined;
|
|
641
641
|
} | undefined;
|
|
642
642
|
image_url?: string | undefined;
|
|
643
643
|
optional?: boolean | undefined;
|
|
@@ -663,31 +663,31 @@ export declare class SlackFormatterAgentBubble extends WorkflowBubble<SlackForma
|
|
|
663
663
|
}, {
|
|
664
664
|
error: string;
|
|
665
665
|
success: boolean;
|
|
666
|
-
response: string;
|
|
667
|
-
iterations: number;
|
|
668
666
|
metadata: {
|
|
669
667
|
verbosityLevel: string;
|
|
670
668
|
technicalityLevel: string;
|
|
671
669
|
wordCount: number;
|
|
672
670
|
blockCount?: number | undefined;
|
|
673
671
|
};
|
|
672
|
+
response: string;
|
|
673
|
+
iterations: number;
|
|
674
674
|
toolCalls?: {
|
|
675
675
|
tool: string;
|
|
676
676
|
input?: unknown;
|
|
677
677
|
output?: unknown;
|
|
678
678
|
}[] | undefined;
|
|
679
679
|
blocks?: {
|
|
680
|
-
type: "
|
|
681
|
-
|
|
682
|
-
type: "plain_text"
|
|
680
|
+
type: "input" | "image" | "file" | "section" | "header" | "divider" | "context" | "actions";
|
|
681
|
+
title?: {
|
|
682
|
+
type: "plain_text";
|
|
683
683
|
text: string;
|
|
684
684
|
emoji?: boolean | undefined;
|
|
685
|
-
verbatim?: boolean | undefined;
|
|
686
685
|
} | undefined;
|
|
687
|
-
|
|
688
|
-
type: "plain_text";
|
|
686
|
+
text?: {
|
|
687
|
+
type: "plain_text" | "mrkdwn";
|
|
689
688
|
text: string;
|
|
690
689
|
emoji?: boolean | undefined;
|
|
690
|
+
verbatim?: boolean | undefined;
|
|
691
691
|
} | undefined;
|
|
692
692
|
image_url?: string | undefined;
|
|
693
693
|
optional?: boolean | undefined;
|
package/dist/bubbles.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": "2.0.0",
|
|
3
|
-
"generatedAt": "2026-02-
|
|
3
|
+
"generatedAt": "2026-02-02T10:41:40.296Z",
|
|
4
4
|
"totalCount": 58,
|
|
5
5
|
"bubbles": [
|
|
6
6
|
{
|
|
@@ -40960,7 +40960,8 @@
|
|
|
40960
40960
|
},
|
|
40961
40961
|
"usageExample": "// List Records example\nconst airtable_list_records = new AirtableBubble({\n operation: \"list_records\", // List records from an Airtable table with filtering and sorting\n baseId: \"example string\", // Airtable base ID (e.g., appXXXXXXXXXXXXXX)\n tableIdOrName: \"example string\", // Table ID (e.g., tblXXXXXXXXXXXXXX) or table name\n fields: [\"example string\"], // Array of field names to include in results (returns all fields if not specified)\n filterByFormula: \"example string\", // Airtable formula to filter records (e.g., \"{Status} = 'Done'\")\n maxRecords: 42, // Maximum number of records to return (1-100, returns all if not specified)\n pageSize: 100 // default, // Number of records per page for pagination (1-100)\n sort: [{ field: \"example string\" // Field name to sort by, direction: \"asc\" // options: \"asc\", \"desc\" // Sort direction (asc or desc) }], // Array of sort specifications to order records\n view: \"example string\", // View name or ID to use (includes view's filters and sorts)\n cellFormat: \"json\" // options: \"json\", \"string\", // Format for cell values: json (structured) or string (formatted)\n timeZone: \"example string\", // Time zone for date/time fields (e.g., \"America/Los_Angeles\")\n userLocale: \"example string\", // Locale for formatting (e.g., \"en-US\")\n offset: \"example string\", // Pagination offset from previous response\n});\n\nconst result = await airtable_list_records.action();\n// outputSchema for result.data when operation === 'list_records':\n// {\n// operation: \"list_records\" // List records from an Airtable table with filtering and sorting,\n// ok: boolean // Whether the Airtable API call was successful,\n// records: { id: string // Unique record identifier (starts with rec), createdTime: string // ISO 8601 datetime when record was created, fields: Record<string, unknown> // Record field values as key-value pairs }[] | undefined // Array of record objects,\n// offset: string | undefined // Pagination offset for retrieving next page of results,\n// error: string // Error message if operation failed,\n// success: boolean // Whether the operation was successful\n// }\n\n\n// Get Record example\nconst airtable_get_record = new AirtableBubble({\n operation: \"get_record\", // Retrieve a single record by its ID\n baseId: \"example string\", // Airtable base ID (e.g., appXXXXXXXXXXXXXX)\n tableIdOrName: \"example string\", // Table ID (e.g., tblXXXXXXXXXXXXXX) or table name\n recordId: \"example string\", // Record ID to retrieve (starts with rec)\n});\n\nconst result = await airtable_get_record.action();\n// outputSchema for result.data when operation === 'get_record':\n// {\n// operation: \"get_record\" // Retrieve a single record by its ID,\n// ok: boolean // Whether the Airtable API call was successful,\n// record: { id: string // Unique record identifier (starts with rec), createdTime: string // ISO 8601 datetime when record was created, fields: Record<string, unknown> // Record field values as key-value pairs } | undefined // Record object,\n// error: string // Error message if operation failed,\n// success: boolean // Whether the operation was successful\n// }\n\n\n// Create Records example\nconst airtable_create_records = new AirtableBubble({\n operation: \"create_records\", // Create one or more new records in an Airtable table\n baseId: \"example string\", // Airtable base ID (e.g., appXXXXXXXXXXXXXX)\n tableIdOrName: \"example string\", // Table ID (e.g., tblXXXXXXXXXXXXXX) or table name\n records: [{ fields: { \"example_key\": [] } // Field values for the new record }], // Array of records to create (max 10 per request)\n typecast: false // default, // Automatically convert field values to the appropriate type\n});\n\nconst result = await airtable_create_records.action();\n// outputSchema for result.data when operation === 'create_records':\n// {\n// operation: \"create_records\" // Create one or more new records in an Airtable table,\n// ok: boolean // Whether the Airtable API call was successful,\n// records: { id: string // Unique record identifier (starts with rec), createdTime: string // ISO 8601 datetime when record was created, fields: Record<string, unknown> // Record field values as key-value pairs }[] | undefined // Array of created record objects,\n// error: string // Error message if operation failed,\n// success: boolean // Whether the operation was successful\n// }\n\n\n// Update Records example\nconst airtable_update_records = new AirtableBubble({\n operation: \"update_records\", // Update existing records in an Airtable table\n baseId: \"example string\", // Airtable base ID (e.g., appXXXXXXXXXXXXXX)\n tableIdOrName: \"example string\", // Table ID (e.g., tblXXXXXXXXXXXXXX) or table name\n records: [{ id: \"example string\" // Record ID to update (starts with rec), fields: { \"example_key\": [] } // Field values to update (only specified fields will be updated) }], // Array of records to update (max 10 per request)\n typecast: false // default, // Automatically convert field values to the appropriate type\n});\n\nconst result = await airtable_update_records.action();\n// outputSchema for result.data when operation === 'update_records':\n// {\n// operation: \"update_records\" // Update existing records in an Airtable table,\n// ok: boolean // Whether the Airtable API call was successful,\n// records: { id: string // Unique record identifier (starts with rec), createdTime: string // ISO 8601 datetime when record was created, fields: Record<string, unknown> // Record field values as key-value pairs }[] | undefined // Array of updated record objects,\n// error: string // Error message if operation failed,\n// success: boolean // Whether the operation was successful\n// }\n\n\n// Delete Records example\nconst airtable_delete_records = new AirtableBubble({\n operation: \"delete_records\", // Delete one or more records from an Airtable table\n baseId: \"example string\", // Airtable base ID (e.g., appXXXXXXXXXXXXXX)\n tableIdOrName: \"example string\", // Table ID (e.g., tblXXXXXXXXXXXXXX) or table name\n recordIds: [\"example string\"], // Array of record IDs to delete (max 10 per request)\n});\n\nconst result = await airtable_delete_records.action();\n// outputSchema for result.data when operation === 'delete_records':\n// {\n// operation: \"delete_records\" // Delete one or more records from an Airtable table,\n// ok: boolean // Whether the Airtable API call was successful,\n// records: { id: string // ID of deleted record, deleted: boolean // Whether the record was deleted }[] | undefined // Array of deletion confirmation objects,\n// error: string // Error message if operation failed,\n// success: boolean // Whether the operation was successful\n// }\n\n\n// List Bases example\nconst airtable_list_bases = new AirtableBubble({\n operation: \"list_bases\", // List all bases accessible with the current API key\n});\n\nconst result = await airtable_list_bases.action();\n// outputSchema for result.data when operation === 'list_bases':\n// {\n// operation: \"list_bases\" // List all bases accessible with the current API key,\n// ok: boolean // Whether the Airtable API call was successful,\n// bases: { id: string // Base ID, name: string // Base name, permissionLevel: string // Permission level for this base }[] | undefined // Array of base objects,\n// error: string // Error message if operation failed,\n// success: boolean // Whether the operation was successful\n// }\n\n\n// Get Base Schema example\nconst airtable_get_base_schema = new AirtableBubble({\n operation: \"get_base_schema\", // Get the schema for a specific base including all tables and fields\n baseId: \"example string\", // Airtable base ID (e.g., appXXXXXXXXXXXXXX)\n});\n\nconst result = await airtable_get_base_schema.action();\n// outputSchema for result.data when operation === 'get_base_schema':\n// {\n// operation: \"get_base_schema\" // Get the schema for a specific base including all tables and fields,\n// ok: boolean // Whether the Airtable API call was successful,\n// tables: { id: string // Table ID, name: string // Table name, description: string | undefined // Table description, primaryFieldId: string // ID of the primary field, fields: { id: string // Field ID, name: string // Field name, type: string // Field type, description: string | undefined // Field description, options: Record<string, unknown> | undefined // Field options }[] // Array of field definitions, views: { id: string // View ID, name: string // View name, type: string // View type }[] | undefined // Array of view definitions }[] | undefined // Array of table schemas,\n// error: string // Error message if operation failed,\n// success: boolean // Whether the operation was successful\n// }\n\n\n// Create Table example\nconst airtable_create_table = new AirtableBubble({\n operation: \"create_table\", // Create a new table in an Airtable base\n baseId: \"example string\", // Airtable base ID (e.g., appXXXXXXXXXXXXXX)\n name: \"example string\", // Name for the new table\n description: \"example string\", // Optional description for the table\n fields: [{ name: \"example string\" // Field name, type: \"singleLineText\" // options: \"singleLineText\", \"multilineText\", \"richText\", \"email\", \"url\", \"phoneNumber\", \"number\", \"percent\", \"currency\", \"rating\", \"duration\", \"singleSelect\", \"multipleSelects\", \"singleCollaborator\", \"multipleCollaborators\", \"date\", \"dateTime\", \"checkbox\", \"multipleRecordLinks\", \"multipleAttachments\", \"barcode\", \"button\", \"formula\", \"createdTime\", \"lastModifiedTime\", \"createdBy\", \"lastModifiedBy\", \"autoNumber\", \"externalSyncSource\", \"count\", \"lookup\", \"rollup\" // Field type, description: \"example string\" // Field description, options: {} // Field options }], // Array of field definitions for the table\n});\n\nconst result = await airtable_create_table.action();\n// outputSchema for result.data when operation === 'create_table':\n// {\n// operation: \"create_table\" // Create a new table in an Airtable base,\n// ok: boolean // Whether the Airtable API call was successful,\n// table: { id: string // Table ID, name: string // Table name, description: string | undefined // Table description, primaryFieldId: string // ID of the primary field, fields: { id: string // Field ID, name: string // Field name, type: \"singleLineText\" | \"multilineText\" | \"richText\" | \"email\" | \"url\" | \"phoneNumber\" | \"number\" | \"percent\" | \"currency\" | \"rating\" | \"duration\" | \"singleSelect\" | \"multipleSelects\" | \"singleCollaborator\" | \"multipleCollaborators\" | \"date\" | \"dateTime\" | \"checkbox\" | \"multipleRecordLinks\" | \"multipleAttachments\" | \"barcode\" | \"button\" | \"formula\" | \"createdTime\" | \"lastModifiedTime\" | \"createdBy\" | \"lastModifiedBy\" | \"autoNumber\" | \"externalSyncSource\" | \"count\" | \"lookup\" | \"rollup\" // Field type }[] // Array of field definitions } | undefined // Created table object,\n// error: string // Error message if operation failed,\n// success: boolean // Whether the operation was successful\n// }\n\n\n// Update Table example\nconst airtable_update_table = new AirtableBubble({\n operation: \"update_table\", // Update table properties like name and description\n baseId: \"example string\", // Airtable base ID (e.g., appXXXXXXXXXXXXXX)\n tableIdOrName: \"example string\", // Table ID (e.g., tblXXXXXXXXXXXXXX) or table name\n name: \"example string\", // New name for the table\n description: \"example string\", // New description for the table\n});\n\nconst result = await airtable_update_table.action();\n// outputSchema for result.data when operation === 'update_table':\n// {\n// operation: \"update_table\" // Update table properties like name and description,\n// ok: boolean // Whether the Airtable API call was successful,\n// table: { id: string // Table ID, name: string // Table name, description: string | undefined // Table description } | undefined // Updated table object,\n// error: string // Error message if operation failed,\n// success: boolean // Whether the operation was successful\n// }\n\n\n// Create Field example\nconst airtable_create_field = new AirtableBubble({\n operation: \"create_field\", // Create a new field in an Airtable table\n baseId: \"example string\", // Airtable base ID (e.g., appXXXXXXXXXXXXXX)\n tableIdOrName: \"example string\", // Table ID (e.g., tblXXXXXXXXXXXXXX) or table name\n name: \"example string\", // Name for the new field\n type: \"singleLineText\" // options: \"singleLineText\", \"multilineText\", \"richText\", \"email\", \"url\", \"phoneNumber\", \"number\", \"percent\", \"currency\", \"rating\", \"duration\", \"singleSelect\", \"multipleSelects\", \"singleCollaborator\", \"multipleCollaborators\", \"date\", \"dateTime\", \"checkbox\", \"multipleRecordLinks\", \"multipleAttachments\", \"barcode\", \"button\", \"formula\", \"createdTime\", \"lastModifiedTime\", \"createdBy\", \"lastModifiedBy\", \"autoNumber\", \"externalSyncSource\", \"count\", \"lookup\", \"rollup\", // Field type\n description: \"example string\", // Field description\n options: {}, // Field-specific options\n});\n\nconst result = await airtable_create_field.action();\n// outputSchema for result.data when operation === 'create_field':\n// {\n// operation: \"create_field\" // Create a new field in an Airtable table,\n// ok: boolean // Whether the Airtable API call was successful,\n// field: { id: string // Field ID, name: string // Field name, type: string // Field type, description: string | undefined // Field description } | undefined // Created field object,\n// error: string // Error message if operation failed,\n// success: boolean // Whether the operation was successful\n// }\n\n\n// Update Field example\nconst airtable_update_field = new AirtableBubble({\n operation: \"update_field\", // Update field properties like name, type, or description\n baseId: \"example string\", // Airtable base ID (e.g., appXXXXXXXXXXXXXX)\n tableIdOrName: \"example string\", // Table ID (e.g., tblXXXXXXXXXXXXXX) or table name\n fieldIdOrName: \"example string\", // Field ID (e.g., fldXXXXXXXXXXXXXX) or field name\n name: \"example string\", // New name for the field\n description: \"example string\", // New description for the field\n});\n\nconst result = await airtable_update_field.action();\n// outputSchema for result.data when operation === 'update_field':\n// {\n// operation: \"update_field\" // Update field properties like name, type, or description,\n// ok: boolean // Whether the Airtable API call was successful,\n// field: { id: string // Field ID, name: string // Field name, type: string // Field type, description: string | undefined // Field description } | undefined // Updated field object,\n// error: string // Error message if operation failed,\n// success: boolean // Whether the operation was successful\n// }\n\n\n// Always check success status before using data\nif (!result.success) {\n throw new Error(`airtable failed: ${result.error}`);\n}\n\n// Access the actual data\nconst actualData = result.data;\nconsole.log(actualData);",
|
|
40962
40962
|
"requiredCredentials": [
|
|
40963
|
-
"AIRTABLE_CRED"
|
|
40963
|
+
"AIRTABLE_CRED",
|
|
40964
|
+
"AIRTABLE_OAUTH"
|
|
40964
40965
|
]
|
|
40965
40966
|
},
|
|
40966
40967
|
{
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bubblelab/bubble-core",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.76",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -40,7 +40,7 @@
|
|
|
40
40
|
"puppeteer-core": "^24.10.0",
|
|
41
41
|
"resend": "^4.8.0",
|
|
42
42
|
"zod": "^3.24.1",
|
|
43
|
-
"@bubblelab/shared-schemas": "0.1.
|
|
43
|
+
"@bubblelab/shared-schemas": "0.1.77"
|
|
44
44
|
},
|
|
45
45
|
"devDependencies": {
|
|
46
46
|
"zod-to-json-schema": "^3.24.6",
|