@bubblelab/bubble-core 0.1.31 → 0.1.32

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. package/dist/bubble-bundle.d.ts +50 -50
  2. package/dist/bubbles/service-bubble/agi-inc.d.ts +12 -12
  3. package/dist/bubbles/service-bubble/airtable.d.ts +156 -156
  4. package/dist/bubbles/service-bubble/apify/apify.d.ts +8 -8
  5. package/dist/bubbles/service-bubble/browserbase/browserbase.d.ts +1 -1
  6. package/dist/bubbles/service-bubble/eleven-labs.d.ts +4 -4
  7. package/dist/bubbles/service-bubble/firecrawl.d.ts +8 -8
  8. package/dist/bubbles/service-bubble/followupboss.d.ts +78 -78
  9. package/dist/bubbles/service-bubble/github.d.ts +98 -98
  10. package/dist/bubbles/service-bubble/gmail.d.ts +30 -30
  11. package/dist/bubbles/service-bubble/google-calendar.d.ts +88 -88
  12. package/dist/bubbles/service-bubble/google-drive.d.ts +50 -50
  13. package/dist/bubbles/service-bubble/google-sheets/google-sheets.d.ts +8 -8
  14. package/dist/bubbles/service-bubble/http.d.ts +4 -4
  15. package/dist/bubbles/service-bubble/insforge-db.d.ts +2 -2
  16. package/dist/bubbles/service-bubble/jira/jira.d.ts +503 -493
  17. package/dist/bubbles/service-bubble/jira/jira.d.ts.map +1 -1
  18. package/dist/bubbles/service-bubble/jira/jira.js +47 -10
  19. package/dist/bubbles/service-bubble/jira/jira.js.map +1 -1
  20. package/dist/bubbles/service-bubble/jira/jira.schema.d.ts +6 -6
  21. package/dist/bubbles/service-bubble/jira/jira.schema.d.ts.map +1 -1
  22. package/dist/bubbles/service-bubble/jira/jira.schema.js +4 -3
  23. package/dist/bubbles/service-bubble/jira/jira.schema.js.map +1 -1
  24. package/dist/bubbles/service-bubble/notion/notion.d.ts +148 -148
  25. package/dist/bubbles/service-bubble/postgresql.d.ts +2 -2
  26. package/dist/bubbles/service-bubble/resend.d.ts +4 -4
  27. package/dist/bubbles/service-bubble/slack/slack.d.ts +60 -60
  28. package/dist/bubbles/service-bubble/storage.d.ts +20 -20
  29. package/dist/bubbles/tool-bubble/linkedin-tool.d.ts +36 -36
  30. package/dist/bubbles/tool-bubble/reddit-scrape-tool.d.ts +10 -10
  31. package/dist/bubbles/tool-bubble/sql-query-tool.d.ts +4 -4
  32. package/dist/bubbles/tool-bubble/twitter-tool.d.ts +28 -28
  33. package/dist/bubbles/tool-bubble/youtube-tool.d.ts +20 -20
  34. package/dist/bubbles/workflow-bubble/pdf-form-operations.workflow.d.ts +30 -30
  35. package/dist/bubbles/workflow-bubble/slack-data-assistant.workflow.d.ts +4 -4
  36. package/dist/bubbles.json +4 -16
  37. package/package.json +2 -2
@@ -80,8 +80,8 @@ declare const PDFFormOperationsParamsSchema: z.ZodDiscriminatedUnion<"operation"
80
80
  pages: z.ZodOptional<z.ZodArray<z.ZodNumber, "many">>;
81
81
  credentials: z.ZodOptional<z.ZodRecord<z.ZodNativeEnum<typeof CredentialType>, z.ZodString>>;
82
82
  }, "strip", z.ZodTypeAny, {
83
- operation: "convert-to-images";
84
83
  format: "png" | "jpeg";
84
+ operation: "convert-to-images";
85
85
  quality: number;
86
86
  pdfData: string;
87
87
  dpi: number;
@@ -137,8 +137,8 @@ declare const PDFFormOperationsResultSchema: z.ZodDiscriminatedUnion<"operation"
137
137
  potential_labels: z.ZodArray<z.ZodString, "many">;
138
138
  }, "strip", z.ZodTypeAny, {
139
139
  type: string;
140
- name: string;
141
140
  id: number;
141
+ name: string;
142
142
  width: number;
143
143
  height: number;
144
144
  label: string;
@@ -153,8 +153,8 @@ declare const PDFFormOperationsResultSchema: z.ZodDiscriminatedUnion<"operation"
153
153
  potential_labels: string[];
154
154
  }, {
155
155
  type: string;
156
- name: string;
157
156
  id: number;
157
+ name: string;
158
158
  width: number;
159
159
  height: number;
160
160
  label: string;
@@ -172,11 +172,10 @@ declare const PDFFormOperationsResultSchema: z.ZodDiscriminatedUnion<"operation"
172
172
  success: z.ZodBoolean;
173
173
  error: z.ZodString;
174
174
  }, "strip", z.ZodTypeAny, {
175
- operation: "discover";
176
175
  fields: {
177
176
  type: string;
178
- name: string;
179
177
  id: number;
178
+ name: string;
180
179
  width: number;
181
180
  height: number;
182
181
  label: string;
@@ -190,15 +189,15 @@ declare const PDFFormOperationsResultSchema: z.ZodDiscriminatedUnion<"operation"
190
189
  field_flags: number;
191
190
  potential_labels: string[];
192
191
  }[];
192
+ operation: "discover";
193
193
  success: boolean;
194
194
  error: string;
195
195
  totalFields: number;
196
196
  }, {
197
- operation: "discover";
198
197
  fields: {
199
198
  type: string;
200
- name: string;
201
199
  id: number;
200
+ name: string;
202
201
  width: number;
203
202
  height: number;
204
203
  label: string;
@@ -212,6 +211,7 @@ declare const PDFFormOperationsResultSchema: z.ZodDiscriminatedUnion<"operation"
212
211
  field_flags: number;
213
212
  potential_labels: string[];
214
213
  }[];
214
+ operation: "discover";
215
215
  success: boolean;
216
216
  error: string;
217
217
  totalFields: number;
@@ -320,24 +320,24 @@ declare const PDFFormOperationsResultSchema: z.ZodDiscriminatedUnion<"operation"
320
320
  success: z.ZodBoolean;
321
321
  error: z.ZodString;
322
322
  }, "strip", z.ZodTypeAny, {
323
- operation: "validate";
324
323
  fields: Record<string, {
325
324
  value: string;
326
325
  type: string;
327
326
  page: number;
328
327
  }>;
328
+ operation: "validate";
329
329
  success: boolean;
330
330
  error: string;
331
331
  totalFields: number;
332
332
  filledFields: number;
333
333
  emptyFields: number;
334
334
  }, {
335
- operation: "validate";
336
335
  fields: Record<string, {
337
336
  value: string;
338
337
  type: string;
339
338
  page: number;
340
339
  }>;
340
+ operation: "validate";
341
341
  success: boolean;
342
342
  error: string;
343
343
  totalFields: number;
@@ -410,15 +410,15 @@ declare const PDFFormOperationsResultSchema: z.ZodDiscriminatedUnion<"operation"
410
410
  }, "strip", z.ZodTypeAny, {
411
411
  value: string;
412
412
  type: string;
413
- name: string;
414
413
  id: number;
414
+ name: string;
415
415
  x: number;
416
416
  y: number;
417
417
  }, {
418
418
  value: string;
419
419
  type: string;
420
- name: string;
421
420
  id: number;
421
+ name: string;
422
422
  x: number;
423
423
  y: number;
424
424
  }>, "many">>;
@@ -428,8 +428,8 @@ declare const PDFFormOperationsResultSchema: z.ZodDiscriminatedUnion<"operation"
428
428
  formFields?: {
429
429
  value: string;
430
430
  type: string;
431
- name: string;
432
431
  id: number;
432
+ name: string;
433
433
  x: number;
434
434
  y: number;
435
435
  }[] | undefined;
@@ -439,8 +439,8 @@ declare const PDFFormOperationsResultSchema: z.ZodDiscriminatedUnion<"operation"
439
439
  formFields?: {
440
440
  value: string;
441
441
  type: string;
442
- name: string;
443
442
  id: number;
443
+ name: string;
444
444
  x: number;
445
445
  y: number;
446
446
  }[] | undefined;
@@ -459,8 +459,8 @@ declare const PDFFormOperationsResultSchema: z.ZodDiscriminatedUnion<"operation"
459
459
  formFields?: {
460
460
  value: string;
461
461
  type: string;
462
- name: string;
463
462
  id: number;
463
+ name: string;
464
464
  x: number;
465
465
  y: number;
466
466
  }[] | undefined;
@@ -478,8 +478,8 @@ declare const PDFFormOperationsResultSchema: z.ZodDiscriminatedUnion<"operation"
478
478
  formFields?: {
479
479
  value: string;
480
480
  type: string;
481
- name: string;
482
481
  id: number;
482
+ name: string;
483
483
  x: number;
484
484
  y: number;
485
485
  }[] | undefined;
@@ -562,8 +562,8 @@ export declare class PDFFormOperationsWorkflow<T extends PDFFormOperationsParams
562
562
  pages: z.ZodOptional<z.ZodArray<z.ZodNumber, "many">>;
563
563
  credentials: z.ZodOptional<z.ZodRecord<z.ZodNativeEnum<typeof CredentialType>, z.ZodString>>;
564
564
  }, "strip", z.ZodTypeAny, {
565
- operation: "convert-to-images";
566
565
  format: "png" | "jpeg";
566
+ operation: "convert-to-images";
567
567
  quality: number;
568
568
  pdfData: string;
569
569
  dpi: number;
@@ -616,8 +616,8 @@ export declare class PDFFormOperationsWorkflow<T extends PDFFormOperationsParams
616
616
  potential_labels: z.ZodArray<z.ZodString, "many">;
617
617
  }, "strip", z.ZodTypeAny, {
618
618
  type: string;
619
- name: string;
620
619
  id: number;
620
+ name: string;
621
621
  width: number;
622
622
  height: number;
623
623
  label: string;
@@ -632,8 +632,8 @@ export declare class PDFFormOperationsWorkflow<T extends PDFFormOperationsParams
632
632
  potential_labels: string[];
633
633
  }, {
634
634
  type: string;
635
- name: string;
636
635
  id: number;
636
+ name: string;
637
637
  width: number;
638
638
  height: number;
639
639
  label: string;
@@ -651,11 +651,10 @@ export declare class PDFFormOperationsWorkflow<T extends PDFFormOperationsParams
651
651
  success: z.ZodBoolean;
652
652
  error: z.ZodString;
653
653
  }, "strip", z.ZodTypeAny, {
654
- operation: "discover";
655
654
  fields: {
656
655
  type: string;
657
- name: string;
658
656
  id: number;
657
+ name: string;
659
658
  width: number;
660
659
  height: number;
661
660
  label: string;
@@ -669,15 +668,15 @@ export declare class PDFFormOperationsWorkflow<T extends PDFFormOperationsParams
669
668
  field_flags: number;
670
669
  potential_labels: string[];
671
670
  }[];
671
+ operation: "discover";
672
672
  success: boolean;
673
673
  error: string;
674
674
  totalFields: number;
675
675
  }, {
676
- operation: "discover";
677
676
  fields: {
678
677
  type: string;
679
- name: string;
680
678
  id: number;
679
+ name: string;
681
680
  width: number;
682
681
  height: number;
683
682
  label: string;
@@ -691,6 +690,7 @@ export declare class PDFFormOperationsWorkflow<T extends PDFFormOperationsParams
691
690
  field_flags: number;
692
691
  potential_labels: string[];
693
692
  }[];
693
+ operation: "discover";
694
694
  success: boolean;
695
695
  error: string;
696
696
  totalFields: number;
@@ -799,24 +799,24 @@ export declare class PDFFormOperationsWorkflow<T extends PDFFormOperationsParams
799
799
  success: z.ZodBoolean;
800
800
  error: z.ZodString;
801
801
  }, "strip", z.ZodTypeAny, {
802
- operation: "validate";
803
802
  fields: Record<string, {
804
803
  value: string;
805
804
  type: string;
806
805
  page: number;
807
806
  }>;
807
+ operation: "validate";
808
808
  success: boolean;
809
809
  error: string;
810
810
  totalFields: number;
811
811
  filledFields: number;
812
812
  emptyFields: number;
813
813
  }, {
814
- operation: "validate";
815
814
  fields: Record<string, {
816
815
  value: string;
817
816
  type: string;
818
817
  page: number;
819
818
  }>;
819
+ operation: "validate";
820
820
  success: boolean;
821
821
  error: string;
822
822
  totalFields: number;
@@ -889,15 +889,15 @@ export declare class PDFFormOperationsWorkflow<T extends PDFFormOperationsParams
889
889
  }, "strip", z.ZodTypeAny, {
890
890
  value: string;
891
891
  type: string;
892
- name: string;
893
892
  id: number;
893
+ name: string;
894
894
  x: number;
895
895
  y: number;
896
896
  }, {
897
897
  value: string;
898
898
  type: string;
899
- name: string;
900
899
  id: number;
900
+ name: string;
901
901
  x: number;
902
902
  y: number;
903
903
  }>, "many">>;
@@ -907,8 +907,8 @@ export declare class PDFFormOperationsWorkflow<T extends PDFFormOperationsParams
907
907
  formFields?: {
908
908
  value: string;
909
909
  type: string;
910
- name: string;
911
910
  id: number;
911
+ name: string;
912
912
  x: number;
913
913
  y: number;
914
914
  }[] | undefined;
@@ -918,8 +918,8 @@ export declare class PDFFormOperationsWorkflow<T extends PDFFormOperationsParams
918
918
  formFields?: {
919
919
  value: string;
920
920
  type: string;
921
- name: string;
922
921
  id: number;
922
+ name: string;
923
923
  x: number;
924
924
  y: number;
925
925
  }[] | undefined;
@@ -938,8 +938,8 @@ export declare class PDFFormOperationsWorkflow<T extends PDFFormOperationsParams
938
938
  formFields?: {
939
939
  value: string;
940
940
  type: string;
941
- name: string;
942
941
  id: number;
942
+ name: string;
943
943
  x: number;
944
944
  y: number;
945
945
  }[] | undefined;
@@ -957,8 +957,8 @@ export declare class PDFFormOperationsWorkflow<T extends PDFFormOperationsParams
957
957
  formFields?: {
958
958
  value: string;
959
959
  type: string;
960
- name: string;
961
960
  id: number;
961
+ name: string;
962
962
  x: number;
963
963
  y: number;
964
964
  }[] | undefined;
@@ -106,12 +106,12 @@ declare const SlackDataAssistantResultSchema: z.ZodObject<{
106
106
  }, "strip", z.ZodTypeAny, {
107
107
  success: boolean;
108
108
  error: string;
109
+ query?: string | undefined;
109
110
  metadata?: {
110
111
  executionTime: number;
111
112
  rowCount?: number | undefined;
112
113
  wordCount?: number | undefined;
113
114
  } | undefined;
114
- query?: string | undefined;
115
115
  queryExplanation?: string | undefined;
116
116
  queryResults?: Record<string, unknown>[] | undefined;
117
117
  formattedResponse?: string | undefined;
@@ -121,12 +121,12 @@ declare const SlackDataAssistantResultSchema: z.ZodObject<{
121
121
  }, {
122
122
  success: boolean;
123
123
  error: string;
124
+ query?: string | undefined;
124
125
  metadata?: {
125
126
  executionTime: number;
126
127
  rowCount?: number | undefined;
127
128
  wordCount?: number | undefined;
128
129
  } | undefined;
129
- query?: string | undefined;
130
130
  queryExplanation?: string | undefined;
131
131
  queryResults?: Record<string, unknown>[] | undefined;
132
132
  formattedResponse?: string | undefined;
@@ -244,12 +244,12 @@ export declare class SlackDataAssistantWorkflow extends WorkflowBubble<SlackData
244
244
  }, "strip", z.ZodTypeAny, {
245
245
  success: boolean;
246
246
  error: string;
247
+ query?: string | undefined;
247
248
  metadata?: {
248
249
  executionTime: number;
249
250
  rowCount?: number | undefined;
250
251
  wordCount?: number | undefined;
251
252
  } | undefined;
252
- query?: string | undefined;
253
253
  queryExplanation?: string | undefined;
254
254
  queryResults?: Record<string, unknown>[] | undefined;
255
255
  formattedResponse?: string | undefined;
@@ -259,12 +259,12 @@ export declare class SlackDataAssistantWorkflow extends WorkflowBubble<SlackData
259
259
  }, {
260
260
  success: boolean;
261
261
  error: string;
262
+ query?: string | undefined;
262
263
  metadata?: {
263
264
  executionTime: number;
264
265
  rowCount?: number | undefined;
265
266
  wordCount?: number | undefined;
266
267
  } | undefined;
267
- query?: string | undefined;
268
268
  queryExplanation?: string | undefined;
269
269
  queryResults?: Record<string, unknown>[] | undefined;
270
270
  formattedResponse?: string | undefined;
package/dist/bubbles.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": "2.0.0",
3
- "generatedAt": "2026-01-22T22:33:26.097Z",
3
+ "generatedAt": "2026-01-22T23:03:28.906Z",
4
4
  "totalCount": 54,
5
5
  "bubbles": [
6
6
  {
@@ -52912,13 +52912,7 @@
52912
52912
  },
52913
52913
  "priority": {
52914
52914
  "type": "string",
52915
- "enum": [
52916
- "Highest",
52917
- "High",
52918
- "Medium",
52919
- "Low",
52920
- "Lowest"
52921
- ],
52915
+ "minLength": 1,
52922
52916
  "description": "Issue priority. Default: uses project default"
52923
52917
  },
52924
52918
  "labels": {
@@ -52983,13 +52977,7 @@
52983
52977
  },
52984
52978
  "priority": {
52985
52979
  "type": "string",
52986
- "enum": [
52987
- "Highest",
52988
- "High",
52989
- "Medium",
52990
- "Low",
52991
- "Lowest"
52992
- ],
52980
+ "minLength": 1,
52993
52981
  "description": "New priority"
52994
52982
  },
52995
52983
  "labels": {
@@ -54556,7 +54544,7 @@
54556
54544
  }
54557
54545
  ]
54558
54546
  },
54559
- "usageExample": "// Search example\nconst jira_search = new JiraBubble({\n operation: \"search\", // Search for issues using JQL query\n jql: \"example string\", // JQL query string. Examples: \"project = PROJ\", \"assignee = currentUser()\", \"status = Open AND created >= -7d\"\n limit: 50 // default, // Maximum number of issues to return (1-100)\n offset: 0 // default, // Starting index for pagination\n fields: [\"example string\"], // Specific fields to return (e.g., [\"summary\", \"status\", \"assignee\"]). Default: all standard fields\n});\n\nconst result = await jira_search.action();\n// outputSchema for result.data when operation === 'search':\n// {\n// operation: \"search\",\n// success: boolean // Whether the operation was successful,\n// issues: { id: string // Issue ID, key: string // Issue key (e.g., \"PROJ-123\"), self: string | undefined // Issue API URL, fields: { summary: string | undefined // Issue title/summary, description: unknown | undefined // Issue description (ADF format), status: { id: string // Status ID, name: string // Status name (e.g., \"To Do\", \"In Progress\", \"Done\"), statusCategory: { key: string // Category key, name: string // Category name } | undefined // Status category } | undefined // Current status, priority: { id: string // Priority ID, name: string // Priority name } | null | undefined // Issue priority (null if not assigned), assignee: { accountId: string // User account ID, displayName: string | undefined // User display name, emailAddress: string | undefined // User email address, active: boolean | undefined // Whether the user is active } | null | undefined // Assigned user, reporter: { accountId: string // User account ID, displayName: string | undefined // User display name, emailAddress: string | undefined // User email address, active: boolean | undefined // Whether the user is active } | null | undefined // Reporter user (null if deleted or anonymized), issuetype: { id: string // Issue type ID, name: string // Issue type name (e.g., \"Task\", \"Bug\", \"Story\"), description: string | undefined // Issue type description, subtask: boolean | undefined // Whether this is a subtask type } | undefined // Issue type, project: { id: string // Project ID, key: string // Project key (e.g., \"PROJ\"), name: string // Project name } | undefined // Project, labels: string[] | undefined // Issue labels, created: string | undefined // Creation timestamp, updated: string | undefined // Last update timestamp, duedate: string | null | undefined // Due date (YYYY-MM-DD), parent: { id: string, key: string } | undefined // Parent issue (for subtasks), comment: { comments: { id: string // Comment ID, author: { accountId: string // User account ID, displayName: string | undefined // User display name, emailAddress: string | undefined // User email address, active: boolean | undefined // Whether the user is active } | null | undefined // Comment author (null if deleted or anonymized), body: string | undefined // Comment body as plain text, renderedBody: string | undefined // Comment body as rendered HTML, created: string | undefined // Creation timestamp, updated: string | undefined // Last update timestamp }[] | undefined, total: number | undefined } | undefined // Issue comments } // Issue fields, transitions: { id: string // Transition ID, name: string // Transition name (e.g., \"Start Progress\", \"Done\"), to: { id: string // Status ID, name: string // Status name (e.g., \"To Do\", \"In Progress\", \"Done\"), statusCategory: { key: string // Category key, name: string // Category name } | undefined // Status category } | undefined // Target status }[] | undefined // Available transitions, changelog: unknown | undefined // Issue changelog }[] | undefined // Found issues,\n// total: number | undefined // Total matching issues,\n// offset: number | undefined // Current offset,\n// limit: number | undefined // Requested limit,\n// error: string // Error message if operation failed\n// }\n\n\n// Get example\nconst jira_get = new JiraBubble({\n operation: \"get\", // Get details for a specific issue\n key: \"example string\", // Issue key (e.g., \"PROJ-123\") or issue ID\n fields: [\"example string\"], // Specific fields to return. Default: all fields\n expand: [\"changelog\" // options: \"changelog\", \"comments\", \"transitions\"], // Additional data to include\n});\n\nconst result = await jira_get.action();\n// outputSchema for result.data when operation === 'get':\n// {\n// operation: \"get\",\n// success: boolean // Whether the operation was successful,\n// issue: { id: string // Issue ID, key: string // Issue key (e.g., \"PROJ-123\"), self: string | undefined // Issue API URL, fields: { summary: string | undefined // Issue title/summary, description: unknown | undefined // Issue description (ADF format), status: { id: string // Status ID, name: string // Status name (e.g., \"To Do\", \"In Progress\", \"Done\"), statusCategory: { key: string // Category key, name: string // Category name } | undefined // Status category } | undefined // Current status, priority: { id: string // Priority ID, name: string // Priority name } | null | undefined // Issue priority (null if not assigned), assignee: { accountId: string // User account ID, displayName: string | undefined // User display name, emailAddress: string | undefined // User email address, active: boolean | undefined // Whether the user is active } | null | undefined // Assigned user, reporter: { accountId: string // User account ID, displayName: string | undefined // User display name, emailAddress: string | undefined // User email address, active: boolean | undefined // Whether the user is active } | null | undefined // Reporter user (null if deleted or anonymized), issuetype: { id: string // Issue type ID, name: string // Issue type name (e.g., \"Task\", \"Bug\", \"Story\"), description: string | undefined // Issue type description, subtask: boolean | undefined // Whether this is a subtask type } | undefined // Issue type, project: { id: string // Project ID, key: string // Project key (e.g., \"PROJ\"), name: string // Project name } | undefined // Project, labels: string[] | undefined // Issue labels, created: string | undefined // Creation timestamp, updated: string | undefined // Last update timestamp, duedate: string | null | undefined // Due date (YYYY-MM-DD), parent: { id: string, key: string } | undefined // Parent issue (for subtasks), comment: { comments: { id: string // Comment ID, author: { accountId: string // User account ID, displayName: string | undefined // User display name, emailAddress: string | undefined // User email address, active: boolean | undefined // Whether the user is active } | null | undefined // Comment author (null if deleted or anonymized), body: string | undefined // Comment body as plain text, renderedBody: string | undefined // Comment body as rendered HTML, created: string | undefined // Creation timestamp, updated: string | undefined // Last update timestamp }[] | undefined, total: number | undefined } | undefined // Issue comments } // Issue fields, transitions: { id: string // Transition ID, name: string // Transition name (e.g., \"Start Progress\", \"Done\"), to: { id: string // Status ID, name: string // Status name (e.g., \"To Do\", \"In Progress\", \"Done\"), statusCategory: { key: string // Category key, name: string // Category name } | undefined // Status category } | undefined // Target status }[] | undefined // Available transitions, changelog: unknown | undefined // Issue changelog } | undefined // Issue details,\n// error: string // Error message if operation failed\n// }\n\n\n// Create example\nconst jira_create = new JiraBubble({\n operation: \"create\", // Create a new issue in Jira\n project: \"example string\", // Project key (e.g., \"PROJ\")\n summary: \"example string\", // Issue title/summary (max 255 chars)\n type: \"Task\" // default, // Issue type: \"Task\", \"Bug\", \"Story\", \"Epic\", etc. Default: \"Task\"\n description: \"example string\", // Issue description (plain text - auto-converted to ADF)\n assignee: \"example string\", // Assignee account ID or email. Leave empty for unassigned\n priority: \"Highest\" // options: \"Highest\", \"High\", \"Medium\", \"Low\", \"Lowest\", // Issue priority. Default: uses project default\n labels: [\"example string\"], // Labels to apply (e.g., [\"bug\", \"urgent\"])\n parent: \"example string\", // Parent issue key for subtasks (e.g., \"PROJ-100\")\n due_date: \"example string\", // Due date in YYYY-MM-DD format\n});\n\nconst result = await jira_create.action();\n// outputSchema for result.data when operation === 'create':\n// {\n// operation: \"create\",\n// success: boolean // Whether the operation was successful,\n// issue: { id: string // Created issue ID, key: string // Created issue key, self: string | undefined // Issue API URL } | undefined // Created issue info,\n// error: string // Error message if operation failed\n// }\n\n\n// Update example\nconst jira_update = new JiraBubble({\n operation: \"update\", // Update an existing issue\n key: \"example string\", // Issue key (e.g., \"PROJ-123\") or issue ID\n summary: \"example string\", // New issue title\n description: \"example string\", // New description (markdown or plain text - auto-converted to ADF). Supports: **bold**, *italic*, `code`, [links](url), # headings, lists, > blockquotes, ``` code blocks ```, ~~strikethrough~~\n assignee: \"example string\", // New assignee (account ID/email) or null to unassign\n priority: \"Highest\" // options: \"Highest\", \"High\", \"Medium\", \"Low\", \"Lowest\", // New priority\n labels: { add: [\"example string\"] // Labels to add to the issue, remove: [\"example string\"] // Labels to remove from the issue, set: [\"example string\"] // Replace all labels with these (overrides add/remove) }, // Label modifications\n due_date: \"example string\", // New due date (YYYY-MM-DD) or null to clear\n comment: \"example string\", // Add a comment with this update (markdown or plain text - auto-converted to ADF). Supports: **bold**, *italic*, `code`, [links](url), # headings, lists, > blockquotes, ``` code blocks ```, ~~strikethrough~~\n});\n\nconst result = await jira_update.action();\n// outputSchema for result.data when operation === 'update':\n// {\n// operation: \"update\",\n// success: boolean // Whether the operation was successful,\n// key: string | undefined // Updated issue key,\n// error: string // Error message if operation failed\n// }\n\n\n// Transition example\nconst jira_transition = new JiraBubble({\n operation: \"transition\", // Transition issue to a new status\n key: \"example string\", // Issue key (e.g., \"PROJ-123\")\n status: \"example string\", // Target status NAME (e.g., \"In Progress\", \"Done\"). Finds matching transition automatically\n transition_id: \"example string\", // Specific transition ID (from list_transitions). Use when status name is ambiguous\n comment: \"example string\", // Comment to add with the transition (markdown or plain text - auto-converted to ADF). Supports: **bold**, *italic*, `code`, [links](url), # headings, lists, > blockquotes, ``` code blocks ```, ~~strikethrough~~\n resolution: \"example string\", // Resolution when closing (e.g., \"Fixed\", \"Won't Fix\", \"Duplicate\")\n});\n\nconst result = await jira_transition.action();\n// outputSchema for result.data when operation === 'transition':\n// {\n// operation: \"transition\",\n// success: boolean // Whether the operation was successful,\n// key: string | undefined // Transitioned issue key,\n// new_status: string | undefined // New status name,\n// error: string // Error message if operation failed\n// }\n\n\n// List Transitions example\nconst jira_list_transitions = new JiraBubble({\n operation: \"list_transitions\", // Get available transitions for an issue\n key: \"example string\", // Issue key (e.g., \"PROJ-123\")\n});\n\nconst result = await jira_list_transitions.action();\n// outputSchema for result.data when operation === 'list_transitions':\n// {\n// operation: \"list_transitions\",\n// success: boolean // Whether the operation was successful,\n// transitions: { id: string // Transition ID, name: string // Transition name (e.g., \"Start Progress\", \"Done\"), to: { id: string // Status ID, name: string // Status name (e.g., \"To Do\", \"In Progress\", \"Done\"), statusCategory: { key: string // Category key, name: string // Category name } | undefined // Status category } | undefined // Target status }[] | undefined // Available transitions,\n// error: string // Error message if operation failed\n// }\n\n\n// List Projects example\nconst jira_list_projects = new JiraBubble({\n operation: \"list_projects\", // List available Jira projects\n limit: 50 // default, // Maximum number of projects to return\n offset: 0 // default, // Starting index for pagination\n});\n\nconst result = await jira_list_projects.action();\n// outputSchema for result.data when operation === 'list_projects':\n// {\n// operation: \"list_projects\",\n// success: boolean // Whether the operation was successful,\n// projects: { id: string // Project ID, key: string // Project key (e.g., \"PROJ\"), name: string // Project name }[] | undefined // Available projects,\n// total: number | undefined // Total projects,\n// error: string // Error message if operation failed\n// }\n\n\n// List Issue Types example\nconst jira_list_issue_types = new JiraBubble({\n operation: \"list_issue_types\", // List issue types for a project\n project: \"example string\", // Project key (e.g., \"PROJ\")\n});\n\nconst result = await jira_list_issue_types.action();\n// outputSchema for result.data when operation === 'list_issue_types':\n// {\n// operation: \"list_issue_types\",\n// success: boolean // Whether the operation was successful,\n// issue_types: { id: string // Issue type ID, name: string // Issue type name (e.g., \"Task\", \"Bug\", \"Story\"), description: string | undefined // Issue type description, subtask: boolean | undefined // Whether this is a subtask type }[] | undefined // Available issue types,\n// error: string // Error message if operation failed\n// }\n\n\n// Add Comment example\nconst jira_add_comment = new JiraBubble({\n operation: \"add_comment\", // Add a comment to an issue\n key: \"example string\", // Issue key (e.g., \"PROJ-123\")\n body: \"example string\", // Comment text (markdown or plain text - auto-converted to ADF). Supports: **bold**, *italic*, `code`, [links](url), # headings, lists, > blockquotes, ``` code blocks ```, ~~strikethrough~~\n});\n\nconst result = await jira_add_comment.action();\n// outputSchema for result.data when operation === 'add_comment':\n// {\n// operation: \"add_comment\",\n// success: boolean // Whether the operation was successful,\n// comment: { id: string // Comment ID, author: { accountId: string // User account ID, displayName: string | undefined // User display name, emailAddress: string | undefined // User email address, active: boolean | undefined // Whether the user is active } | null | undefined // Comment author (null if deleted or anonymized), body: string | undefined // Comment body as plain text, renderedBody: string | undefined // Comment body as rendered HTML, created: string | undefined // Creation timestamp, updated: string | undefined // Last update timestamp } | undefined // Created comment,\n// error: string // Error message if operation failed\n// }\n\n\n// Get Comments example\nconst jira_get_comments = new JiraBubble({\n operation: \"get_comments\", // Get comments for an issue\n key: \"example string\", // Issue key (e.g., \"PROJ-123\")\n limit: 50 // default, // Maximum number of comments to return\n offset: 0 // default, // Starting index for pagination\n});\n\nconst result = await jira_get_comments.action();\n// outputSchema for result.data when operation === 'get_comments':\n// {\n// operation: \"get_comments\",\n// success: boolean // Whether the operation was successful,\n// comments: { id: string // Comment ID, author: { accountId: string // User account ID, displayName: string | undefined // User display name, emailAddress: string | undefined // User email address, active: boolean | undefined // Whether the user is active } | null | undefined // Comment author (null if deleted or anonymized), body: string | undefined // Comment body as plain text, renderedBody: string | undefined // Comment body as rendered HTML, created: string | undefined // Creation timestamp, updated: string | undefined // Last update timestamp }[] | undefined // Issue comments,\n// total: number | undefined // Total comments,\n// error: string // Error message if operation failed\n// }\n\n\n// Always check success status before using data\nif (!result.success) {\n throw new Error(`jira failed: ${result.error}`);\n}\n\n// Access the actual data\nconst actualData = result.data;\nconsole.log(actualData);",
54547
+ "usageExample": "// Search example\nconst jira_search = new JiraBubble({\n operation: \"search\", // Search for issues using JQL query\n jql: \"example string\", // JQL query string. Examples: \"project = PROJ\", \"assignee = currentUser()\", \"status = Open AND created >= -7d\"\n limit: 50 // default, // Maximum number of issues to return (1-100)\n offset: 0 // default, // Starting index for pagination\n fields: [\"example string\"], // Specific fields to return (e.g., [\"summary\", \"status\", \"assignee\"]). Default: all standard fields\n});\n\nconst result = await jira_search.action();\n// outputSchema for result.data when operation === 'search':\n// {\n// operation: \"search\",\n// success: boolean // Whether the operation was successful,\n// issues: { id: string // Issue ID, key: string // Issue key (e.g., \"PROJ-123\"), self: string | undefined // Issue API URL, fields: { summary: string | undefined // Issue title/summary, description: unknown | undefined // Issue description (ADF format), status: { id: string // Status ID, name: string // Status name (e.g., \"To Do\", \"In Progress\", \"Done\"), statusCategory: { key: string // Category key, name: string // Category name } | undefined // Status category } | undefined // Current status, priority: { id: string // Priority ID, name: string // Priority name } | null | undefined // Issue priority (null if not assigned), assignee: { accountId: string // User account ID, displayName: string | undefined // User display name, emailAddress: string | undefined // User email address, active: boolean | undefined // Whether the user is active } | null | undefined // Assigned user, reporter: { accountId: string // User account ID, displayName: string | undefined // User display name, emailAddress: string | undefined // User email address, active: boolean | undefined // Whether the user is active } | null | undefined // Reporter user (null if deleted or anonymized), issuetype: { id: string // Issue type ID, name: string // Issue type name (e.g., \"Task\", \"Bug\", \"Story\"), description: string | undefined // Issue type description, subtask: boolean | undefined // Whether this is a subtask type } | undefined // Issue type, project: { id: string // Project ID, key: string // Project key (e.g., \"PROJ\"), name: string // Project name } | undefined // Project, labels: string[] | undefined // Issue labels, created: string | undefined // Creation timestamp, updated: string | undefined // Last update timestamp, duedate: string | null | undefined // Due date (YYYY-MM-DD), parent: { id: string, key: string } | undefined // Parent issue (for subtasks), comment: { comments: { id: string // Comment ID, author: { accountId: string // User account ID, displayName: string | undefined // User display name, emailAddress: string | undefined // User email address, active: boolean | undefined // Whether the user is active } | null | undefined // Comment author (null if deleted or anonymized), body: string | undefined // Comment body as plain text, renderedBody: string | undefined // Comment body as rendered HTML, created: string | undefined // Creation timestamp, updated: string | undefined // Last update timestamp }[] | undefined, total: number | undefined } | undefined // Issue comments } // Issue fields, transitions: { id: string // Transition ID, name: string // Transition name (e.g., \"Start Progress\", \"Done\"), to: { id: string // Status ID, name: string // Status name (e.g., \"To Do\", \"In Progress\", \"Done\"), statusCategory: { key: string // Category key, name: string // Category name } | undefined // Status category } | undefined // Target status }[] | undefined // Available transitions, changelog: unknown | undefined // Issue changelog }[] | undefined // Found issues,\n// total: number | undefined // Total matching issues,\n// offset: number | undefined // Current offset,\n// limit: number | undefined // Requested limit,\n// error: string // Error message if operation failed\n// }\n\n\n// Get example\nconst jira_get = new JiraBubble({\n operation: \"get\", // Get details for a specific issue\n key: \"example string\", // Issue key (e.g., \"PROJ-123\") or issue ID\n fields: [\"example string\"], // Specific fields to return. Default: all fields\n expand: [\"changelog\" // options: \"changelog\", \"comments\", \"transitions\"], // Additional data to include\n});\n\nconst result = await jira_get.action();\n// outputSchema for result.data when operation === 'get':\n// {\n// operation: \"get\",\n// success: boolean // Whether the operation was successful,\n// issue: { id: string // Issue ID, key: string // Issue key (e.g., \"PROJ-123\"), self: string | undefined // Issue API URL, fields: { summary: string | undefined // Issue title/summary, description: unknown | undefined // Issue description (ADF format), status: { id: string // Status ID, name: string // Status name (e.g., \"To Do\", \"In Progress\", \"Done\"), statusCategory: { key: string // Category key, name: string // Category name } | undefined // Status category } | undefined // Current status, priority: { id: string // Priority ID, name: string // Priority name } | null | undefined // Issue priority (null if not assigned), assignee: { accountId: string // User account ID, displayName: string | undefined // User display name, emailAddress: string | undefined // User email address, active: boolean | undefined // Whether the user is active } | null | undefined // Assigned user, reporter: { accountId: string // User account ID, displayName: string | undefined // User display name, emailAddress: string | undefined // User email address, active: boolean | undefined // Whether the user is active } | null | undefined // Reporter user (null if deleted or anonymized), issuetype: { id: string // Issue type ID, name: string // Issue type name (e.g., \"Task\", \"Bug\", \"Story\"), description: string | undefined // Issue type description, subtask: boolean | undefined // Whether this is a subtask type } | undefined // Issue type, project: { id: string // Project ID, key: string // Project key (e.g., \"PROJ\"), name: string // Project name } | undefined // Project, labels: string[] | undefined // Issue labels, created: string | undefined // Creation timestamp, updated: string | undefined // Last update timestamp, duedate: string | null | undefined // Due date (YYYY-MM-DD), parent: { id: string, key: string } | undefined // Parent issue (for subtasks), comment: { comments: { id: string // Comment ID, author: { accountId: string // User account ID, displayName: string | undefined // User display name, emailAddress: string | undefined // User email address, active: boolean | undefined // Whether the user is active } | null | undefined // Comment author (null if deleted or anonymized), body: string | undefined // Comment body as plain text, renderedBody: string | undefined // Comment body as rendered HTML, created: string | undefined // Creation timestamp, updated: string | undefined // Last update timestamp }[] | undefined, total: number | undefined } | undefined // Issue comments } // Issue fields, transitions: { id: string // Transition ID, name: string // Transition name (e.g., \"Start Progress\", \"Done\"), to: { id: string // Status ID, name: string // Status name (e.g., \"To Do\", \"In Progress\", \"Done\"), statusCategory: { key: string // Category key, name: string // Category name } | undefined // Status category } | undefined // Target status }[] | undefined // Available transitions, changelog: unknown | undefined // Issue changelog } | undefined // Issue details,\n// error: string // Error message if operation failed\n// }\n\n\n// Create example\nconst jira_create = new JiraBubble({\n operation: \"create\", // Create a new issue in Jira\n project: \"example string\", // Project key (e.g., \"PROJ\")\n summary: \"example string\", // Issue title/summary (max 255 chars)\n type: \"Task\" // default, // Issue type: \"Task\", \"Bug\", \"Story\", \"Epic\", etc. Default: \"Task\"\n description: \"example string\", // Issue description (plain text - auto-converted to ADF)\n assignee: \"example string\", // Assignee account ID or email. Leave empty for unassigned\n priority: \"example string\", // Issue priority. Default: uses project default\n labels: [\"example string\"], // Labels to apply (e.g., [\"bug\", \"urgent\"])\n parent: \"example string\", // Parent issue key for subtasks (e.g., \"PROJ-100\")\n due_date: \"example string\", // Due date in YYYY-MM-DD format\n});\n\nconst result = await jira_create.action();\n// outputSchema for result.data when operation === 'create':\n// {\n// operation: \"create\",\n// success: boolean // Whether the operation was successful,\n// issue: { id: string // Created issue ID, key: string // Created issue key, self: string | undefined // Issue API URL } | undefined // Created issue info,\n// error: string // Error message if operation failed\n// }\n\n\n// Update example\nconst jira_update = new JiraBubble({\n operation: \"update\", // Update an existing issue\n key: \"example string\", // Issue key (e.g., \"PROJ-123\") or issue ID\n summary: \"example string\", // New issue title\n description: \"example string\", // New description (markdown or plain text - auto-converted to ADF). Supports: **bold**, *italic*, `code`, [links](url), # headings, lists, > blockquotes, ``` code blocks ```, ~~strikethrough~~\n assignee: \"example string\", // New assignee (account ID/email) or null to unassign\n priority: \"example string\", // New priority\n labels: { add: [\"example string\"] // Labels to add to the issue, remove: [\"example string\"] // Labels to remove from the issue, set: [\"example string\"] // Replace all labels with these (overrides add/remove) }, // Label modifications\n due_date: \"example string\", // New due date (YYYY-MM-DD) or null to clear\n comment: \"example string\", // Add a comment with this update (markdown or plain text - auto-converted to ADF). Supports: **bold**, *italic*, `code`, [links](url), # headings, lists, > blockquotes, ``` code blocks ```, ~~strikethrough~~\n});\n\nconst result = await jira_update.action();\n// outputSchema for result.data when operation === 'update':\n// {\n// operation: \"update\",\n// success: boolean // Whether the operation was successful,\n// key: string | undefined // Updated issue key,\n// error: string // Error message if operation failed\n// }\n\n\n// Transition example\nconst jira_transition = new JiraBubble({\n operation: \"transition\", // Transition issue to a new status\n key: \"example string\", // Issue key (e.g., \"PROJ-123\")\n status: \"example string\", // Target status NAME (e.g., \"In Progress\", \"Done\"). Finds matching transition automatically\n transition_id: \"example string\", // Specific transition ID (from list_transitions). Use when status name is ambiguous\n comment: \"example string\", // Comment to add with the transition (markdown or plain text - auto-converted to ADF). Supports: **bold**, *italic*, `code`, [links](url), # headings, lists, > blockquotes, ``` code blocks ```, ~~strikethrough~~\n resolution: \"example string\", // Resolution when closing (e.g., \"Fixed\", \"Won't Fix\", \"Duplicate\")\n});\n\nconst result = await jira_transition.action();\n// outputSchema for result.data when operation === 'transition':\n// {\n// operation: \"transition\",\n// success: boolean // Whether the operation was successful,\n// key: string | undefined // Transitioned issue key,\n// new_status: string | undefined // New status name,\n// error: string // Error message if operation failed\n// }\n\n\n// List Transitions example\nconst jira_list_transitions = new JiraBubble({\n operation: \"list_transitions\", // Get available transitions for an issue\n key: \"example string\", // Issue key (e.g., \"PROJ-123\")\n});\n\nconst result = await jira_list_transitions.action();\n// outputSchema for result.data when operation === 'list_transitions':\n// {\n// operation: \"list_transitions\",\n// success: boolean // Whether the operation was successful,\n// transitions: { id: string // Transition ID, name: string // Transition name (e.g., \"Start Progress\", \"Done\"), to: { id: string // Status ID, name: string // Status name (e.g., \"To Do\", \"In Progress\", \"Done\"), statusCategory: { key: string // Category key, name: string // Category name } | undefined // Status category } | undefined // Target status }[] | undefined // Available transitions,\n// error: string // Error message if operation failed\n// }\n\n\n// List Projects example\nconst jira_list_projects = new JiraBubble({\n operation: \"list_projects\", // List available Jira projects\n limit: 50 // default, // Maximum number of projects to return\n offset: 0 // default, // Starting index for pagination\n});\n\nconst result = await jira_list_projects.action();\n// outputSchema for result.data when operation === 'list_projects':\n// {\n// operation: \"list_projects\",\n// success: boolean // Whether the operation was successful,\n// projects: { id: string // Project ID, key: string // Project key (e.g., \"PROJ\"), name: string // Project name }[] | undefined // Available projects,\n// total: number | undefined // Total projects,\n// error: string // Error message if operation failed\n// }\n\n\n// List Issue Types example\nconst jira_list_issue_types = new JiraBubble({\n operation: \"list_issue_types\", // List issue types for a project\n project: \"example string\", // Project key (e.g., \"PROJ\")\n});\n\nconst result = await jira_list_issue_types.action();\n// outputSchema for result.data when operation === 'list_issue_types':\n// {\n// operation: \"list_issue_types\",\n// success: boolean // Whether the operation was successful,\n// issue_types: { id: string // Issue type ID, name: string // Issue type name (e.g., \"Task\", \"Bug\", \"Story\"), description: string | undefined // Issue type description, subtask: boolean | undefined // Whether this is a subtask type }[] | undefined // Available issue types,\n// error: string // Error message if operation failed\n// }\n\n\n// Add Comment example\nconst jira_add_comment = new JiraBubble({\n operation: \"add_comment\", // Add a comment to an issue\n key: \"example string\", // Issue key (e.g., \"PROJ-123\")\n body: \"example string\", // Comment text (markdown or plain text - auto-converted to ADF). Supports: **bold**, *italic*, `code`, [links](url), # headings, lists, > blockquotes, ``` code blocks ```, ~~strikethrough~~\n});\n\nconst result = await jira_add_comment.action();\n// outputSchema for result.data when operation === 'add_comment':\n// {\n// operation: \"add_comment\",\n// success: boolean // Whether the operation was successful,\n// comment: { id: string // Comment ID, author: { accountId: string // User account ID, displayName: string | undefined // User display name, emailAddress: string | undefined // User email address, active: boolean | undefined // Whether the user is active } | null | undefined // Comment author (null if deleted or anonymized), body: string | undefined // Comment body as plain text, renderedBody: string | undefined // Comment body as rendered HTML, created: string | undefined // Creation timestamp, updated: string | undefined // Last update timestamp } | undefined // Created comment,\n// error: string // Error message if operation failed\n// }\n\n\n// Get Comments example\nconst jira_get_comments = new JiraBubble({\n operation: \"get_comments\", // Get comments for an issue\n key: \"example string\", // Issue key (e.g., \"PROJ-123\")\n limit: 50 // default, // Maximum number of comments to return\n offset: 0 // default, // Starting index for pagination\n});\n\nconst result = await jira_get_comments.action();\n// outputSchema for result.data when operation === 'get_comments':\n// {\n// operation: \"get_comments\",\n// success: boolean // Whether the operation was successful,\n// comments: { id: string // Comment ID, author: { accountId: string // User account ID, displayName: string | undefined // User display name, emailAddress: string | undefined // User email address, active: boolean | undefined // Whether the user is active } | null | undefined // Comment author (null if deleted or anonymized), body: string | undefined // Comment body as plain text, renderedBody: string | undefined // Comment body as rendered HTML, created: string | undefined // Creation timestamp, updated: string | undefined // Last update timestamp }[] | undefined // Issue comments,\n// total: number | undefined // Total comments,\n// error: string // Error message if operation failed\n// }\n\n\n// Always check success status before using data\nif (!result.success) {\n throw new Error(`jira failed: ${result.error}`);\n}\n\n// Access the actual data\nconst actualData = result.data;\nconsole.log(actualData);",
54560
54548
  "requiredCredentials": [
54561
54549
  "JIRA_CRED"
54562
54550
  ]
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bubblelab/bubble-core",
3
- "version": "0.1.31",
3
+ "version": "0.1.32",
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.32"
43
+ "@bubblelab/shared-schemas": "0.1.33"
44
44
  },
45
45
  "devDependencies": {
46
46
  "zod-to-json-schema": "^3.24.6",