@bubblelab/shared-schemas 0.1.6 → 0.1.9

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 (48) hide show
  1. package/README.md +1 -136
  2. package/dist/ai-models.d.ts +4 -0
  3. package/dist/ai-models.d.ts.map +1 -0
  4. package/dist/ai-models.js +20 -0
  5. package/dist/ai-models.js.map +1 -0
  6. package/dist/bubble-definition-schema.d.ts +133 -25
  7. package/dist/bubble-definition-schema.d.ts.map +1 -1
  8. package/dist/bubble-definition-schema.js +21 -3
  9. package/dist/bubble-definition-schema.js.map +1 -1
  10. package/dist/bubbleflow-execution-schema.d.ts +100 -48
  11. package/dist/bubbleflow-execution-schema.d.ts.map +1 -1
  12. package/dist/bubbleflow-schema.d.ts +394 -125
  13. package/dist/bubbleflow-schema.d.ts.map +1 -1
  14. package/dist/bubbleflow-schema.js +19 -0
  15. package/dist/bubbleflow-schema.js.map +1 -1
  16. package/dist/credential-schema.d.ts +46 -46
  17. package/dist/credential-schema.d.ts.map +1 -1
  18. package/dist/credential-schema.js +7 -0
  19. package/dist/credential-schema.js.map +1 -1
  20. package/dist/cron-utils.d.ts +47 -0
  21. package/dist/cron-utils.d.ts.map +1 -0
  22. package/dist/cron-utils.js +228 -0
  23. package/dist/cron-utils.js.map +1 -0
  24. package/dist/general-chat.d.ts +81 -0
  25. package/dist/general-chat.d.ts.map +1 -0
  26. package/dist/general-chat.js +58 -0
  27. package/dist/general-chat.js.map +1 -0
  28. package/dist/generate-bubbleflow-schema.d.ts +92 -40
  29. package/dist/generate-bubbleflow-schema.d.ts.map +1 -1
  30. package/dist/index.d.ts +3 -0
  31. package/dist/index.d.ts.map +1 -1
  32. package/dist/index.js +3 -0
  33. package/dist/index.js.map +1 -1
  34. package/dist/milk-tea.d.ts +108 -0
  35. package/dist/milk-tea.d.ts.map +1 -0
  36. package/dist/milk-tea.js +74 -0
  37. package/dist/milk-tea.js.map +1 -0
  38. package/dist/pearl.d.ts +276 -0
  39. package/dist/pearl.d.ts.map +1 -0
  40. package/dist/pearl.js +75 -0
  41. package/dist/pearl.js.map +1 -0
  42. package/dist/streaming-events.d.ts +70 -0
  43. package/dist/streaming-events.d.ts.map +1 -1
  44. package/dist/types.d.ts +2 -1
  45. package/dist/types.d.ts.map +1 -1
  46. package/dist/types.js +2 -0
  47. package/dist/types.js.map +1 -1
  48. package/package.json +1 -1
@@ -0,0 +1,228 @@
1
+ /**
2
+ * Utility functions for parsing and working with cron expressions
3
+ * Supports standard 5-field cron format: minute hour day month day-of-week
4
+ */
5
+ /**
6
+ * Parse a cron expression string into its components
7
+ * @param cronString - Cron expression (e.g., "0 0 * * *")
8
+ * @returns Parsed cron expression object
9
+ */
10
+ export function parseCronExpression(cronString) {
11
+ const parts = cronString.trim().split(/\s+/);
12
+ if (parts.length !== 5) {
13
+ throw new Error(`Invalid cron expression: expected 5 fields, got ${parts.length}`);
14
+ }
15
+ const [minute, hour, dayOfMonth, month, dayOfWeek] = parts;
16
+ return {
17
+ minute,
18
+ hour,
19
+ dayOfMonth,
20
+ month,
21
+ dayOfWeek,
22
+ original: cronString,
23
+ };
24
+ }
25
+ /**
26
+ * Validate a cron expression
27
+ * @param cronString - Cron expression to validate
28
+ * @returns Object with validation result
29
+ */
30
+ export function validateCronExpression(cronString) {
31
+ try {
32
+ const expr = parseCronExpression(cronString);
33
+ // Validate each field
34
+ const validations = [
35
+ validateCronField(expr.minute, 0, 59, 'minute'),
36
+ validateCronField(expr.hour, 0, 23, 'hour'),
37
+ validateCronField(expr.dayOfMonth, 1, 31, 'day of month'),
38
+ validateCronField(expr.month, 1, 12, 'month'),
39
+ validateCronField(expr.dayOfWeek, 0, 6, 'day of week'),
40
+ ];
41
+ for (const validation of validations) {
42
+ if (!validation.valid) {
43
+ return validation;
44
+ }
45
+ }
46
+ return { valid: true };
47
+ }
48
+ catch (error) {
49
+ return {
50
+ valid: false,
51
+ error: error instanceof Error ? error.message : 'Invalid cron expression',
52
+ };
53
+ }
54
+ }
55
+ /**
56
+ * Validate a single cron field
57
+ */
58
+ function validateCronField(field, min, max, fieldName) {
59
+ // Wildcard
60
+ if (field === '*')
61
+ return { valid: true };
62
+ // Step values (*/n)
63
+ if (field.startsWith('*/')) {
64
+ const step = parseInt(field.substring(2), 10);
65
+ if (isNaN(step) || step <= 0) {
66
+ return {
67
+ valid: false,
68
+ error: `Invalid step value in ${fieldName}: ${field}`,
69
+ };
70
+ }
71
+ return { valid: true };
72
+ }
73
+ // Ranges (n-m)
74
+ if (field.includes('-')) {
75
+ const [start, end] = field.split('-').map((v) => parseInt(v, 10));
76
+ if (isNaN(start) || isNaN(end) || start < min || end > max || start > end) {
77
+ return {
78
+ valid: false,
79
+ error: `Invalid range in ${fieldName}: ${field} (must be ${min}-${max})`,
80
+ };
81
+ }
82
+ return { valid: true };
83
+ }
84
+ // Lists (n,m,o)
85
+ if (field.includes(',')) {
86
+ const values = field.split(',').map((v) => parseInt(v.trim(), 10));
87
+ for (const val of values) {
88
+ if (isNaN(val) || val < min || val > max) {
89
+ return {
90
+ valid: false,
91
+ error: `Invalid value in ${fieldName} list: ${val} (must be ${min}-${max})`,
92
+ };
93
+ }
94
+ }
95
+ return { valid: true };
96
+ }
97
+ // Single value
98
+ const value = parseInt(field, 10);
99
+ if (isNaN(value) || value < min || value > max) {
100
+ return {
101
+ valid: false,
102
+ error: `Invalid ${fieldName}: ${field} (must be ${min}-${max})`,
103
+ };
104
+ }
105
+ return { valid: true };
106
+ }
107
+ /**
108
+ * Generate a human-readable description of a cron expression
109
+ * @param cronString - Cron expression to describe
110
+ * @returns Human-readable description
111
+ */
112
+ export function describeCronExpression(cronString) {
113
+ try {
114
+ const expr = parseCronExpression(cronString);
115
+ // Common patterns
116
+ if (cronString === '* * * * *')
117
+ return 'Every minute';
118
+ if (cronString === '0 * * * *')
119
+ return 'Every hour';
120
+ if (cronString === '0 0 * * *')
121
+ return 'Daily at midnight';
122
+ if (cronString === '0 0 * * 0')
123
+ return 'Weekly on Sunday at midnight';
124
+ if (cronString === '0 0 1 * *')
125
+ return 'Monthly on the 1st at midnight';
126
+ if (cronString === '0 0 1 1 *')
127
+ return 'Yearly on January 1st at midnight';
128
+ // Step patterns
129
+ if (expr.minute.startsWith('*/')) {
130
+ const step = expr.minute.substring(2);
131
+ return `Every ${step} minute${step === '1' ? '' : 's'}`;
132
+ }
133
+ if (expr.hour.startsWith('*/') && expr.minute === '0') {
134
+ const step = expr.hour.substring(2);
135
+ return `Every ${step} hour${step === '1' ? '' : 's'}`;
136
+ }
137
+ // Weekday patterns
138
+ if (expr.dayOfWeek === '1-5' && expr.hour === '9' && expr.minute === '0') {
139
+ return 'Every weekday at 9:00 AM';
140
+ }
141
+ // Build description from parts
142
+ let description = 'At ';
143
+ // Time
144
+ if (expr.minute !== '*' && expr.hour !== '*') {
145
+ const hour = parseInt(expr.hour, 10);
146
+ const minute = parseInt(expr.minute, 10);
147
+ const ampm = hour >= 12 ? 'PM' : 'AM';
148
+ const hour12 = hour % 12 || 12;
149
+ description += `${hour12}:${minute.toString().padStart(2, '0')} ${ampm}`;
150
+ }
151
+ else if (expr.minute !== '*') {
152
+ description += `minute ${expr.minute}`;
153
+ }
154
+ else if (expr.hour !== '*') {
155
+ description += `hour ${expr.hour}`;
156
+ }
157
+ // Day
158
+ if (expr.dayOfMonth !== '*') {
159
+ description += ` on day ${expr.dayOfMonth}`;
160
+ }
161
+ if (expr.dayOfWeek !== '*') {
162
+ const days = [
163
+ 'Sunday',
164
+ 'Monday',
165
+ 'Tuesday',
166
+ 'Wednesday',
167
+ 'Thursday',
168
+ 'Friday',
169
+ 'Saturday',
170
+ ];
171
+ if (expr.dayOfWeek.includes('-')) {
172
+ const [start, end] = expr.dayOfWeek
173
+ .split('-')
174
+ .map((v) => parseInt(v, 10));
175
+ description += ` on ${days[start]} through ${days[end]}`;
176
+ }
177
+ else {
178
+ const day = parseInt(expr.dayOfWeek, 10);
179
+ description += ` on ${days[day]}`;
180
+ }
181
+ }
182
+ // Month
183
+ if (expr.month !== '*') {
184
+ const months = [
185
+ 'January',
186
+ 'February',
187
+ 'March',
188
+ 'April',
189
+ 'May',
190
+ 'June',
191
+ 'July',
192
+ 'August',
193
+ 'September',
194
+ 'October',
195
+ 'November',
196
+ 'December',
197
+ ];
198
+ const month = parseInt(expr.month, 10);
199
+ description += ` in ${months[month - 1]}`;
200
+ }
201
+ return description;
202
+ }
203
+ catch (error) {
204
+ return 'Invalid cron expression';
205
+ }
206
+ }
207
+ /**
208
+ * Get schedule information for a cron expression
209
+ * @param cronString - Cron expression
210
+ * @returns Schedule information including description and validation status
211
+ */
212
+ export function getCronScheduleInfo(cronString) {
213
+ const validation = validateCronExpression(cronString);
214
+ if (!validation.valid) {
215
+ return {
216
+ expression: parseCronExpression(cronString.split(/\s+/).length === 5 ? cronString : '0 0 * * *'),
217
+ description: 'Invalid cron expression',
218
+ isValid: false,
219
+ error: validation.error,
220
+ };
221
+ }
222
+ return {
223
+ expression: parseCronExpression(cronString),
224
+ description: describeCronExpression(cronString),
225
+ isValid: true,
226
+ };
227
+ }
228
+ //# sourceMappingURL=cron-utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cron-utils.js","sourceRoot":"","sources":["../src/cron-utils.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,81 @@
1
+ import { z } from 'zod';
2
+ /**
3
+ * Request schema for General Chat agent
4
+ * General Chat helps users build complete workflows without requiring specific bubbles
5
+ */
6
+ export declare const GeneralChatRequestSchema: z.ZodObject<{
7
+ userRequest: z.ZodString;
8
+ currentCode: z.ZodOptional<z.ZodString>;
9
+ userName: z.ZodString;
10
+ conversationHistory: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodObject<{
11
+ role: z.ZodEnum<["user", "assistant"]>;
12
+ content: z.ZodString;
13
+ }, "strip", z.ZodTypeAny, {
14
+ role: "user" | "assistant";
15
+ content: string;
16
+ }, {
17
+ role: "user" | "assistant";
18
+ content: string;
19
+ }>, "many">>>;
20
+ model: z.ZodDefault<z.ZodEnum<["openai/gpt-5", "openai/gpt-5-mini", "openai/gpt-o4-mini", "openai/gpt-4o", "google/gemini-2.5-pro", "google/gemini-2.5-flash", "google/gemini-2.5-flash-lite", "google/gemini-2.5-flash-image-preview", "anthropic/claude-sonnet-4-5-20250929", "openrouter/x-ai/grok-code-fast-1", "openrouter/z-ai/glm-4.5-air"]>>;
21
+ }, "strip", z.ZodTypeAny, {
22
+ userRequest: string;
23
+ userName: string;
24
+ conversationHistory: {
25
+ role: "user" | "assistant";
26
+ content: string;
27
+ }[];
28
+ model: "openai/gpt-5" | "openai/gpt-5-mini" | "openai/gpt-o4-mini" | "openai/gpt-4o" | "google/gemini-2.5-pro" | "google/gemini-2.5-flash" | "google/gemini-2.5-flash-lite" | "google/gemini-2.5-flash-image-preview" | "anthropic/claude-sonnet-4-5-20250929" | "openrouter/x-ai/grok-code-fast-1" | "openrouter/z-ai/glm-4.5-air";
29
+ currentCode?: string | undefined;
30
+ }, {
31
+ userRequest: string;
32
+ userName: string;
33
+ currentCode?: string | undefined;
34
+ conversationHistory?: {
35
+ role: "user" | "assistant";
36
+ content: string;
37
+ }[] | undefined;
38
+ model?: "openai/gpt-5" | "openai/gpt-5-mini" | "openai/gpt-o4-mini" | "openai/gpt-4o" | "google/gemini-2.5-pro" | "google/gemini-2.5-flash" | "google/gemini-2.5-flash-lite" | "google/gemini-2.5-flash-image-preview" | "anthropic/claude-sonnet-4-5-20250929" | "openrouter/x-ai/grok-code-fast-1" | "openrouter/z-ai/glm-4.5-air" | undefined;
39
+ }>;
40
+ /**
41
+ * Response schema for General Chat agent
42
+ */
43
+ export declare const GeneralChatResponseSchema: z.ZodObject<{
44
+ type: z.ZodEnum<["code", "question", "reject"]>;
45
+ message: z.ZodString;
46
+ snippet: z.ZodOptional<z.ZodString>;
47
+ success: z.ZodBoolean;
48
+ error: z.ZodOptional<z.ZodString>;
49
+ }, "strip", z.ZodTypeAny, {
50
+ message: string;
51
+ type: "code" | "question" | "reject";
52
+ success: boolean;
53
+ snippet?: string | undefined;
54
+ error?: string | undefined;
55
+ }, {
56
+ message: string;
57
+ type: "code" | "question" | "reject";
58
+ success: boolean;
59
+ snippet?: string | undefined;
60
+ error?: string | undefined;
61
+ }>;
62
+ /**
63
+ * Internal agent response format (JSON mode output from AI)
64
+ */
65
+ export declare const GeneralChatAgentOutputSchema: z.ZodObject<{
66
+ type: z.ZodEnum<["code", "question", "reject"]>;
67
+ message: z.ZodString;
68
+ snippet: z.ZodOptional<z.ZodString>;
69
+ }, "strip", z.ZodTypeAny, {
70
+ message: string;
71
+ type: "code" | "question" | "reject";
72
+ snippet?: string | undefined;
73
+ }, {
74
+ message: string;
75
+ type: "code" | "question" | "reject";
76
+ snippet?: string | undefined;
77
+ }>;
78
+ export type GeneralChatRequest = z.infer<typeof GeneralChatRequestSchema>;
79
+ export type GeneralChatResponse = z.infer<typeof GeneralChatResponseSchema>;
80
+ export type GeneralChatAgentOutput = z.infer<typeof GeneralChatAgentOutputSchema>;
81
+ //# sourceMappingURL=general-chat.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"general-chat.d.ts","sourceRoot":"","sources":["../src/general-chat.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AASxB;;;GAGG;AACH,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAwBnC,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;EA0BpC,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,4BAA4B;;;;;;;;;;;;EAIvC,CAAC;AAGH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAC1E,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAC5E,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAC1C,OAAO,4BAA4B,CACpC,CAAC"}
@@ -0,0 +1,58 @@
1
+ import { z } from 'zod';
2
+ import { AvailableModels } from './ai-models.js';
3
+ // Reuse the ConversationMessageSchema from milk-tea to avoid duplication
4
+ const ConversationMessageSchema = z.object({
5
+ role: z.enum(['user', 'assistant']),
6
+ content: z.string(),
7
+ });
8
+ /**
9
+ * Request schema for General Chat agent
10
+ * General Chat helps users build complete workflows without requiring specific bubbles
11
+ */
12
+ export const GeneralChatRequestSchema = z.object({
13
+ userRequest: z
14
+ .string()
15
+ .min(1, 'User request is required')
16
+ .describe('The user request or question about building a workflow'),
17
+ currentCode: z
18
+ .string()
19
+ .optional()
20
+ .describe('The current workflow code for context and modification'),
21
+ userName: z.string().describe('Name of the user making the request'),
22
+ conversationHistory: z
23
+ .array(ConversationMessageSchema)
24
+ .optional()
25
+ .default([])
26
+ .describe('Previous conversation messages for multi-turn interactions (frontend manages state)'),
27
+ model: AvailableModels.default('google/gemini-2.5-pro').describe('AI model to use for General Chat agent'),
28
+ });
29
+ /**
30
+ * Response schema for General Chat agent
31
+ */
32
+ export const GeneralChatResponseSchema = z.object({
33
+ type: z
34
+ .enum(['code', 'question', 'reject'])
35
+ .describe('Type of response: code (generated workflow), question (needs clarification), reject (infeasible request)'),
36
+ message: z
37
+ .string()
38
+ .describe('Human-readable message: explanation for code, question text, or rejection reason'),
39
+ snippet: z
40
+ .string()
41
+ .optional()
42
+ .describe('Generated TypeScript code for complete workflow (only present when type is "code")'),
43
+ success: z.boolean().describe('Whether the operation completed successfully'),
44
+ error: z
45
+ .string()
46
+ .optional()
47
+ .describe('Error message if the operation failed'),
48
+ });
49
+ /**
50
+ * Internal agent response format (JSON mode output from AI)
51
+ */
52
+ export const GeneralChatAgentOutputSchema = z.object({
53
+ type: z.enum(['code', 'question', 'reject']),
54
+ message: z.string(),
55
+ snippet: z.string().optional(),
56
+ });
57
+ // Note: ConversationMessage type is exported from milk-tea.ts to avoid duplication
58
+ //# sourceMappingURL=general-chat.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"general-chat.js","sourceRoot":"","sources":["../src/general-chat.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEjD,yEAAyE;AACzE,MAAM,yBAAyB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IACnC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;CACpB,CAAC,CAAC;AAEH;;;GAGG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/C,WAAW,EAAE,CAAC;SACX,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,EAAE,0BAA0B,CAAC;SAClC,QAAQ,CAAC,wDAAwD,CAAC;IAErE,WAAW,EAAE,CAAC;SACX,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,wDAAwD,CAAC;IAErE,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,qCAAqC,CAAC;IAEpE,mBAAmB,EAAE,CAAC;SACnB,KAAK,CAAC,yBAAyB,CAAC;SAChC,QAAQ,EAAE;SACV,OAAO,CAAC,EAAE,CAAC;SACX,QAAQ,CACP,qFAAqF,CACtF;IAEH,KAAK,EAAE,eAAe,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC,QAAQ,CAC9D,wCAAwC,CACzC;CACF,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC,MAAM,CAAC;IAChD,IAAI,EAAE,CAAC;SACJ,IAAI,CAAC,CAAC,MAAM,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC;SACpC,QAAQ,CACP,0GAA0G,CAC3G;IAEH,OAAO,EAAE,CAAC;SACP,MAAM,EAAE;SACR,QAAQ,CACP,kFAAkF,CACnF;IAEH,OAAO,EAAE,CAAC;SACP,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CACP,oFAAoF,CACrF;IAEH,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,8CAA8C,CAAC;IAE7E,KAAK,EAAE,CAAC;SACL,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,uCAAuC,CAAC;CACrD,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,CAAC,MAAM,CAAC;IACnD,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC;IAC5C,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;IACnB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC/B,CAAC,CAAC;AAQH,mFAAmF"}
@@ -18,19 +18,47 @@ export declare const generateBubbleFlowCodeResponseSchema: z.ZodObject<{
18
18
  bubbleName: z.ZodString;
19
19
  className: z.ZodString;
20
20
  parameters: z.ZodArray<z.ZodObject<{
21
+ location: z.ZodOptional<z.ZodObject<{
22
+ startLine: z.ZodNumber;
23
+ startCol: z.ZodNumber;
24
+ endLine: z.ZodNumber;
25
+ endCol: z.ZodNumber;
26
+ }, "strip", z.ZodTypeAny, {
27
+ startLine: number;
28
+ startCol: number;
29
+ endLine: number;
30
+ endCol: number;
31
+ }, {
32
+ startLine: number;
33
+ startCol: number;
34
+ endLine: number;
35
+ endCol: number;
36
+ }>>;
21
37
  variableId: z.ZodOptional<z.ZodNumber>;
22
38
  name: z.ZodString;
23
- value: z.ZodUnknown;
39
+ value: z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodRecord<z.ZodString, z.ZodUnknown>, z.ZodArray<z.ZodUnknown, "many">]>;
24
40
  type: z.ZodNativeEnum<typeof BubbleParameterType>;
25
41
  }, "strip", z.ZodTypeAny, {
42
+ value: string | number | boolean | unknown[] | Record<string, unknown>;
26
43
  type: BubbleParameterType;
27
44
  name: string;
28
- value?: unknown;
45
+ location?: {
46
+ startLine: number;
47
+ startCol: number;
48
+ endLine: number;
49
+ endCol: number;
50
+ } | undefined;
29
51
  variableId?: number | undefined;
30
52
  }, {
53
+ value: string | number | boolean | unknown[] | Record<string, unknown>;
31
54
  type: BubbleParameterType;
32
55
  name: string;
33
- value?: unknown;
56
+ location?: {
57
+ startLine: number;
58
+ startCol: number;
59
+ endLine: number;
60
+ endCol: number;
61
+ } | undefined;
34
62
  variableId?: number | undefined;
35
63
  }>, "many">;
36
64
  hasAwait: z.ZodBoolean;
@@ -56,47 +84,59 @@ export declare const generateBubbleFlowCodeResponseSchema: z.ZodObject<{
56
84
  endCol: number;
57
85
  }>;
58
86
  }, "strip", z.ZodTypeAny, {
87
+ location: {
88
+ startLine: number;
89
+ startCol: number;
90
+ endLine: number;
91
+ endCol: number;
92
+ };
59
93
  variableId: number;
60
94
  variableName: string;
61
- nodeType: "unknown" | "service" | "tool" | "workflow";
62
95
  bubbleName: string;
63
96
  className: string;
64
97
  parameters: {
98
+ value: string | number | boolean | unknown[] | Record<string, unknown>;
65
99
  type: BubbleParameterType;
66
100
  name: string;
67
- value?: unknown;
101
+ location?: {
102
+ startLine: number;
103
+ startCol: number;
104
+ endLine: number;
105
+ endCol: number;
106
+ } | undefined;
68
107
  variableId?: number | undefined;
69
108
  }[];
70
109
  hasAwait: boolean;
71
110
  hasActionCall: boolean;
111
+ nodeType: "unknown" | "service" | "tool" | "workflow";
112
+ dependencies?: import("./types").BubbleName[] | undefined;
113
+ dependencyGraph?: import("./bubble-definition-schema").DependencyGraphNode | undefined;
114
+ }, {
72
115
  location: {
73
116
  startLine: number;
74
117
  startCol: number;
75
118
  endLine: number;
76
119
  endCol: number;
77
120
  };
78
- dependencies?: import("./types").BubbleName[] | undefined;
79
- dependencyGraph?: import("./bubble-definition-schema").DependencyGraphNode | undefined;
80
- }, {
81
121
  variableId: number;
82
122
  variableName: string;
83
- nodeType: "unknown" | "service" | "tool" | "workflow";
84
123
  bubbleName: string;
85
124
  className: string;
86
125
  parameters: {
126
+ value: string | number | boolean | unknown[] | Record<string, unknown>;
87
127
  type: BubbleParameterType;
88
128
  name: string;
89
- value?: unknown;
129
+ location?: {
130
+ startLine: number;
131
+ startCol: number;
132
+ endLine: number;
133
+ endCol: number;
134
+ } | undefined;
90
135
  variableId?: number | undefined;
91
136
  }[];
92
137
  hasAwait: boolean;
93
138
  hasActionCall: boolean;
94
- location: {
95
- startLine: number;
96
- startCol: number;
97
- endLine: number;
98
- endCol: number;
99
- };
139
+ nodeType: "unknown" | "service" | "tool" | "workflow";
100
140
  dependencies?: import("./types").BubbleName[] | undefined;
101
141
  dependencyGraph?: import("./bubble-definition-schema").DependencyGraphNode | undefined;
102
142
  }>>;
@@ -106,25 +146,31 @@ export declare const generateBubbleFlowCodeResponseSchema: z.ZodObject<{
106
146
  success: boolean;
107
147
  requiredCredentials: Record<string, string[]>;
108
148
  bubbleParameters: Record<string, {
149
+ location: {
150
+ startLine: number;
151
+ startCol: number;
152
+ endLine: number;
153
+ endCol: number;
154
+ };
109
155
  variableId: number;
110
156
  variableName: string;
111
- nodeType: "unknown" | "service" | "tool" | "workflow";
112
157
  bubbleName: string;
113
158
  className: string;
114
159
  parameters: {
160
+ value: string | number | boolean | unknown[] | Record<string, unknown>;
115
161
  type: BubbleParameterType;
116
162
  name: string;
117
- value?: unknown;
163
+ location?: {
164
+ startLine: number;
165
+ startCol: number;
166
+ endLine: number;
167
+ endCol: number;
168
+ } | undefined;
118
169
  variableId?: number | undefined;
119
170
  }[];
120
171
  hasAwait: boolean;
121
172
  hasActionCall: boolean;
122
- location: {
123
- startLine: number;
124
- startCol: number;
125
- endLine: number;
126
- endCol: number;
127
- };
173
+ nodeType: "unknown" | "service" | "tool" | "workflow";
128
174
  dependencies?: import("./types").BubbleName[] | undefined;
129
175
  dependencyGraph?: import("./bubble-definition-schema").DependencyGraphNode | undefined;
130
176
  }>;
@@ -135,25 +181,31 @@ export declare const generateBubbleFlowCodeResponseSchema: z.ZodObject<{
135
181
  success: boolean;
136
182
  requiredCredentials: Record<string, string[]>;
137
183
  bubbleParameters: Record<string, {
184
+ location: {
185
+ startLine: number;
186
+ startCol: number;
187
+ endLine: number;
188
+ endCol: number;
189
+ };
138
190
  variableId: number;
139
191
  variableName: string;
140
- nodeType: "unknown" | "service" | "tool" | "workflow";
141
192
  bubbleName: string;
142
193
  className: string;
143
194
  parameters: {
195
+ value: string | number | boolean | unknown[] | Record<string, unknown>;
144
196
  type: BubbleParameterType;
145
197
  name: string;
146
- value?: unknown;
198
+ location?: {
199
+ startLine: number;
200
+ startCol: number;
201
+ endLine: number;
202
+ endCol: number;
203
+ } | undefined;
147
204
  variableId?: number | undefined;
148
205
  }[];
149
206
  hasAwait: boolean;
150
207
  hasActionCall: boolean;
151
- location: {
152
- startLine: number;
153
- startCol: number;
154
- endLine: number;
155
- endCol: number;
156
- };
208
+ nodeType: "unknown" | "service" | "tool" | "workflow";
157
209
  dependencies?: import("./types").BubbleName[] | undefined;
158
210
  dependencyGraph?: import("./bubble-definition-schema").DependencyGraphNode | undefined;
159
211
  }>;
@@ -388,19 +440,21 @@ export declare const bubbleFlowTemplateResponseSchema: z.ZodObject<{
388
440
  active: z.ZodBoolean;
389
441
  }, "strip", z.ZodTypeAny, {
390
442
  path: string;
391
- id: number;
392
443
  url: string;
444
+ id: number;
393
445
  active: boolean;
394
446
  }, {
395
447
  path: string;
396
- id: number;
397
448
  url: string;
449
+ id: number;
398
450
  active: boolean;
399
451
  }>>;
400
452
  }, "strip", z.ZodTypeAny, {
401
453
  description: string;
402
454
  name: string;
403
455
  id: number;
456
+ createdAt: string;
457
+ updatedAt: string;
404
458
  eventType: string;
405
459
  bubbleParameters: Record<string, {
406
460
  variableName: string;
@@ -426,19 +480,19 @@ export declare const bubbleFlowTemplateResponseSchema: z.ZodObject<{
426
480
  hasAwait: boolean;
427
481
  hasActionCall: boolean;
428
482
  }>;
429
- createdAt: string;
430
- updatedAt: string;
431
483
  requiredCredentials?: Record<string, CredentialType[]> | undefined;
432
484
  webhook?: {
433
485
  path: string;
434
- id: number;
435
486
  url: string;
487
+ id: number;
436
488
  active: boolean;
437
489
  } | undefined;
438
490
  }, {
439
491
  description: string;
440
492
  name: string;
441
493
  id: number;
494
+ createdAt: string;
495
+ updatedAt: string;
442
496
  eventType: string;
443
497
  bubbleParameters: Record<string, {
444
498
  variableName: string;
@@ -464,13 +518,11 @@ export declare const bubbleFlowTemplateResponseSchema: z.ZodObject<{
464
518
  hasAwait: boolean;
465
519
  hasActionCall: boolean;
466
520
  }>;
467
- createdAt: string;
468
- updatedAt: string;
469
521
  requiredCredentials?: Record<string, CredentialType[]> | undefined;
470
522
  webhook?: {
471
523
  path: string;
472
- id: number;
473
524
  url: string;
525
+ id: number;
474
526
  active: boolean;
475
527
  } | undefined;
476
528
  }>;
@@ -1 +1 @@
1
- {"version":3,"file":"generate-bubbleflow-schema.d.ts","sourceRoot":"","sources":["../src/generate-bubbleflow-schema.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,mBAAmB,CAAC;AACtC,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAGzC,eAAO,MAAM,4BAA4B;;;;;;EAMvC,CAAC;AAEH,eAAO,MAAM,oCAAoC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAe/C,CAAC;AAEH,eAAO,MAAM,gCAAgC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA2CE,CAAC;AAGhD,eAAO,MAAM,wCAAwC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA4FE,CAAC;AAGxD,eAAO,MAAM,gCAAgC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAiGL,CAAC;AACzC,MAAM,MAAM,8BAA8B,GAAG,CAAC,CAAC,KAAK,CAClD,OAAO,oCAAoC,CAC5C,CAAC;AACF,MAAM,MAAM,iCAAiC,GAAG,CAAC,CAAC,KAAK,CACrD,OAAO,gCAAgC,CACxC,CAAC;AACF,MAAM,MAAM,yCAAyC,GAAG,CAAC,CAAC,KAAK,CAC7D,OAAO,wCAAwC,CAChD,CAAC;AACF,MAAM,MAAM,0BAA0B,GAAG,CAAC,CAAC,KAAK,CAC9C,OAAO,gCAAgC,CACxC,CAAC"}
1
+ {"version":3,"file":"generate-bubbleflow-schema.d.ts","sourceRoot":"","sources":["../src/generate-bubbleflow-schema.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,mBAAmB,CAAC;AACtC,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAGzC,eAAO,MAAM,4BAA4B;;;;;;EAMvC,CAAC;AAEH,eAAO,MAAM,oCAAoC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAe/C,CAAC;AAEH,eAAO,MAAM,gCAAgC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA2CE,CAAC;AAGhD,eAAO,MAAM,wCAAwC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA4FE,CAAC;AAGxD,eAAO,MAAM,gCAAgC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAiGL,CAAC;AACzC,MAAM,MAAM,8BAA8B,GAAG,CAAC,CAAC,KAAK,CAClD,OAAO,oCAAoC,CAC5C,CAAC;AACF,MAAM,MAAM,iCAAiC,GAAG,CAAC,CAAC,KAAK,CACrD,OAAO,gCAAgC,CACxC,CAAC;AACF,MAAM,MAAM,yCAAyC,GAAG,CAAC,CAAC,KAAK,CAC7D,OAAO,wCAAwC,CAChD,CAAC;AACF,MAAM,MAAM,0BAA0B,GAAG,CAAC,CAAC,KAAK,CAC9C,OAAO,gCAAgC,CACxC,CAAC"}
package/dist/index.d.ts CHANGED
@@ -13,4 +13,7 @@ export * from './generate-bubbleflow-schema.js';
13
13
  export * from './webhook-schema.js';
14
14
  export * from './subscription-status-schema.js';
15
15
  export * from './api-schema.js';
16
+ export * from './milk-tea.js';
17
+ export * from './pearl.js';
18
+ export * from './ai-models.js';
16
19
  //# sourceMappingURL=index.d.ts.map