@bubblelab/shared-schemas 0.1.0

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 (75) hide show
  1. package/LICENSE.txt +202 -0
  2. package/README.md +138 -0
  3. package/dist/api-schema.d.ts +38 -0
  4. package/dist/api-schema.d.ts.map +1 -0
  5. package/dist/api-schema.js +26 -0
  6. package/dist/api-schema.js.map +1 -0
  7. package/dist/bubble-definition-schema.d.ts +242 -0
  8. package/dist/bubble-definition-schema.d.ts.map +1 -0
  9. package/dist/bubble-definition-schema.js +95 -0
  10. package/dist/bubble-definition-schema.js.map +1 -0
  11. package/dist/bubbleflow-execution-schema.d.ts +580 -0
  12. package/dist/bubbleflow-execution-schema.d.ts.map +1 -0
  13. package/dist/bubbleflow-execution-schema.js +230 -0
  14. package/dist/bubbleflow-execution-schema.js.map +1 -0
  15. package/dist/bubbleflow-schema.d.ts +785 -0
  16. package/dist/bubbleflow-schema.d.ts.map +1 -0
  17. package/dist/bubbleflow-schema.js +206 -0
  18. package/dist/bubbleflow-schema.js.map +1 -0
  19. package/dist/credential-schema.d.ts +405 -0
  20. package/dist/credential-schema.d.ts.map +1 -0
  21. package/dist/credential-schema.js +327 -0
  22. package/dist/credential-schema.js.map +1 -0
  23. package/dist/database-definition-schema.d.ts +97 -0
  24. package/dist/database-definition-schema.d.ts.map +1 -0
  25. package/dist/database-definition-schema.js +36 -0
  26. package/dist/database-definition-schema.js.map +1 -0
  27. package/dist/generate-bubbleflow-schema.d.ts +481 -0
  28. package/dist/generate-bubbleflow-schema.d.ts.map +1 -0
  29. package/dist/generate-bubbleflow-schema.js +247 -0
  30. package/dist/generate-bubbleflow-schema.js.map +1 -0
  31. package/dist/index.d.ts +16 -0
  32. package/dist/index.d.ts.map +1 -0
  33. package/dist/index.js +18 -0
  34. package/dist/index.js.map +1 -0
  35. package/dist/mock-data-generator.d.ts +51 -0
  36. package/dist/mock-data-generator.d.ts.map +1 -0
  37. package/dist/mock-data-generator.js +325 -0
  38. package/dist/mock-data-generator.js.map +1 -0
  39. package/dist/mock-data-generator.test.d.ts +2 -0
  40. package/dist/mock-data-generator.test.d.ts.map +1 -0
  41. package/dist/mock-data-generator.test.js +176 -0
  42. package/dist/mock-data-generator.test.js.map +1 -0
  43. package/dist/oauth-schema.d.ts +61 -0
  44. package/dist/oauth-schema.d.ts.map +1 -0
  45. package/dist/oauth-schema.js +75 -0
  46. package/dist/oauth-schema.js.map +1 -0
  47. package/dist/prompts.d.ts +12 -0
  48. package/dist/prompts.d.ts.map +1 -0
  49. package/dist/prompts.js +40 -0
  50. package/dist/prompts.js.map +1 -0
  51. package/dist/routes.d.ts +2207 -0
  52. package/dist/routes.d.ts.map +1 -0
  53. package/dist/routes.js +978 -0
  54. package/dist/routes.js.map +1 -0
  55. package/dist/streaming-events.d.ts +35 -0
  56. package/dist/streaming-events.d.ts.map +1 -0
  57. package/dist/streaming-events.js +5 -0
  58. package/dist/streaming-events.js.map +1 -0
  59. package/dist/subscription-status-schema.d.ts +90 -0
  60. package/dist/subscription-status-schema.d.ts.map +1 -0
  61. package/dist/subscription-status-schema.js +66 -0
  62. package/dist/subscription-status-schema.js.map +1 -0
  63. package/dist/types.d.ts +19 -0
  64. package/dist/types.d.ts.map +1 -0
  65. package/dist/types.js +27 -0
  66. package/dist/types.js.map +1 -0
  67. package/dist/waitlist-schema.d.ts +30 -0
  68. package/dist/waitlist-schema.d.ts.map +1 -0
  69. package/dist/waitlist-schema.js +39 -0
  70. package/dist/waitlist-schema.js.map +1 -0
  71. package/dist/webhook-schema.d.ts +95 -0
  72. package/dist/webhook-schema.d.ts.map +1 -0
  73. package/dist/webhook-schema.js +50 -0
  74. package/dist/webhook-schema.js.map +1 -0
  75. package/package.json +45 -0
@@ -0,0 +1,247 @@
1
+ import { ParsedBubbleWithInfoSchema } from './bubble-definition-schema';
2
+ import { z } from '@hono/zod-openapi';
3
+ import { BubbleParameterType } from './bubble-definition-schema';
4
+ import { CredentialType } from './types';
5
+ // BubbleFlow generation schemas
6
+ export const generateBubbleFlowCodeSchema = z.object({
7
+ prompt: z.string().min(1).openapi({
8
+ description: 'Natural language description of the desired BubbleFlow',
9
+ example: 'Create a flow that queries my database and sends results to Slack',
10
+ }),
11
+ });
12
+ export const generateBubbleFlowCodeResponseSchema = z.object({
13
+ generatedCode: z.string().openapi({
14
+ description: 'The generated BubbleFlow TypeScript code',
15
+ }),
16
+ isValid: z.boolean().openapi({
17
+ description: 'Whether the generated code is valid',
18
+ }),
19
+ success: z.boolean(),
20
+ error: z.string(),
21
+ bubbleParameters: z.record(z.string(), ParsedBubbleWithInfoSchema).openapi({
22
+ description: 'Parsed bubble parameters from the generated code',
23
+ }),
24
+ requiredCredentials: z.record(z.string(), z.array(z.string())).openapi({
25
+ description: 'Required credentials for the bubbles in the generated code',
26
+ }),
27
+ });
28
+ // POST /bubbleflow-template/data-analyst - Generate template from description
29
+ export const generateBubbleFlowTemplateSchema = z
30
+ .object({
31
+ name: z.string().min(1).max(100).openapi({
32
+ description: 'Name for the workflow',
33
+ example: 'Sam Dix Data Scientist Bot',
34
+ }),
35
+ description: z.string().min(10).max(500).openapi({
36
+ description: 'Description of what the workflow should do',
37
+ example: 'A Slack bot that helps analyze user engagement data and provides insights',
38
+ }),
39
+ roles: z.string().min(10).max(1000).openapi({
40
+ description: "Detailed description of the bot's roles and responsibilities",
41
+ example: 'Be prepared to answer any question on user engagement and come up with proactive insights...',
42
+ }),
43
+ useCase: z.literal('slack-data-scientist').openapi({
44
+ description: 'The specific use case template to generate',
45
+ example: 'slack-data-scientist',
46
+ }),
47
+ // Optional configuration parameters
48
+ verbosity: z.enum(['1', '2', '3', '4', '5']).optional().openapi({
49
+ description: 'Response verbosity level (1=concise, 5=comprehensive)',
50
+ example: '3',
51
+ }),
52
+ technicality: z.enum(['1', '2', '3', '4', '5']).optional().openapi({
53
+ description: 'Technical complexity level (1=plain English, 5=expert)',
54
+ example: '2',
55
+ }),
56
+ includeQuery: z.boolean().optional().openapi({
57
+ description: 'Include the SQL query in the response',
58
+ example: true,
59
+ }),
60
+ includeExplanation: z.boolean().optional().openapi({
61
+ description: 'Include query explanation in the response',
62
+ example: true,
63
+ }),
64
+ maxQueries: z.number().optional().openapi({
65
+ description: 'Maximum number of queries to run',
66
+ example: 10,
67
+ }),
68
+ })
69
+ .openapi('GenerateBubbleFlowTemplateRequest');
70
+ // POST /bubbleflow-template/document-generation - Generate document processing template
71
+ export const generateDocumentGenerationTemplateSchema = z
72
+ .object({
73
+ name: z.string().min(1).max(100).openapi({
74
+ description: 'Name for the document processing workflow',
75
+ example: 'Expense Report Generator',
76
+ }),
77
+ description: z
78
+ .string()
79
+ .max(500)
80
+ .default('Document processing workflow')
81
+ .openapi({
82
+ description: 'Description of what the document processing workflow should do (optional)',
83
+ example: 'Process receipts and invoices to generate structured expense reports',
84
+ }),
85
+ outputDescription: z.string().min(1).max(1000).openapi({
86
+ description: 'Detailed description of the desired output format and data extraction',
87
+ example: 'Extract expense tracking data with vendor name, transaction date, amount, category, and description',
88
+ }),
89
+ // Optional configuration parameters
90
+ outputFormat: z.enum(['html', 'csv', 'json']).optional().openapi({
91
+ description: 'Default output format for generated documents',
92
+ example: 'html',
93
+ }),
94
+ conversionOptions: z
95
+ .object({
96
+ preserveStructure: z.boolean().optional().openapi({
97
+ description: 'Preserve document structure during parsing',
98
+ example: true,
99
+ }),
100
+ includeVisualDescriptions: z.boolean().optional().openapi({
101
+ description: 'Include descriptions of visual elements',
102
+ example: true,
103
+ }),
104
+ extractNumericalData: z.boolean().optional().openapi({
105
+ description: 'Extract and process numerical data',
106
+ example: true,
107
+ }),
108
+ combinePages: z.boolean().optional().openapi({
109
+ description: 'Combine multiple pages into single output',
110
+ example: true,
111
+ }),
112
+ })
113
+ .optional(),
114
+ imageOptions: z
115
+ .object({
116
+ format: z.enum(['png', 'jpg', 'jpeg']).optional().openapi({
117
+ description: 'Image format for document conversion',
118
+ example: 'png',
119
+ }),
120
+ quality: z.number().min(0.1).max(1.0).optional().openapi({
121
+ description: 'Image quality (0.1 to 1.0)',
122
+ example: 0.9,
123
+ }),
124
+ dpi: z.number().min(72).max(300).optional().openapi({
125
+ description: 'Image DPI for conversion',
126
+ example: 200,
127
+ }),
128
+ })
129
+ .optional(),
130
+ aiOptions: z
131
+ .object({
132
+ model: z.string().optional().openapi({
133
+ description: 'AI model to use for processing',
134
+ example: 'google/gemini-2.5-flash',
135
+ }),
136
+ temperature: z.number().min(0).max(2).optional().openapi({
137
+ description: 'AI model temperature (0 to 2)',
138
+ example: 0.2,
139
+ }),
140
+ maxTokens: z.number().min(1000).max(200000).optional().openapi({
141
+ description: 'Maximum tokens for AI processing',
142
+ example: 90000,
143
+ }),
144
+ jsonMode: z.boolean().optional().openapi({
145
+ description: 'Enable JSON mode for structured output',
146
+ example: false,
147
+ }),
148
+ })
149
+ .optional(),
150
+ metadata: z
151
+ .record(z.string(), z.unknown())
152
+ .optional()
153
+ .openapi({
154
+ description: 'Additional metadata for the workflow (e.g., outputDescription)',
155
+ example: { outputDescription: 'Extract expense data from receipts' },
156
+ }),
157
+ })
158
+ .openapi('GenerateDocumentGenerationTemplateRequest');
159
+ // Response for template generation (extends the regular create response)
160
+ export const bubbleFlowTemplateResponseSchema = z
161
+ .object({
162
+ id: z.number().openapi({
163
+ description: 'ID of the created BubbleFlow template',
164
+ example: 123,
165
+ }),
166
+ name: z.string().openapi({
167
+ description: 'Name of the BubbleFlow',
168
+ example: 'Sam Dix Data Scientist Bot',
169
+ }),
170
+ description: z.string().openapi({
171
+ description: 'Description of the BubbleFlow',
172
+ example: 'A Slack bot that helps analyze user engagement data',
173
+ }),
174
+ eventType: z.string().openapi({
175
+ description: 'Event type this BubbleFlow responds to',
176
+ example: 'slack/bot_mentioned',
177
+ }),
178
+ displayedBubbleParameters: z.record(z.string(), z.object({
179
+ variableName: z.string(),
180
+ bubbleName: z.string(),
181
+ className: z.string(),
182
+ parameters: z.array(z.object({
183
+ name: z.string(),
184
+ value: z.unknown(),
185
+ type: z.nativeEnum(BubbleParameterType),
186
+ })),
187
+ hasAwait: z.boolean(),
188
+ hasActionCall: z.boolean(),
189
+ })),
190
+ bubbleParameters: z
191
+ .record(z.string(), z.object({
192
+ variableName: z.string(),
193
+ bubbleName: z.string(),
194
+ className: z.string(),
195
+ parameters: z.array(z.object({
196
+ name: z.string(),
197
+ value: z.unknown(),
198
+ type: z.nativeEnum(BubbleParameterType),
199
+ })),
200
+ hasAwait: z.boolean(),
201
+ hasActionCall: z.boolean(),
202
+ }))
203
+ .openapi({
204
+ description: 'Parsed bubble parameters from the BubbleFlow code',
205
+ }),
206
+ requiredCredentials: z
207
+ .record(z.string(), z.array(z.nativeEnum(CredentialType)))
208
+ .optional()
209
+ .openapi({
210
+ description: 'Mapping of bubble names to their required credential types',
211
+ example: {
212
+ 'database-connection': [CredentialType.DATABASE_CRED],
213
+ 'slack-notification': [CredentialType.SLACK_CRED],
214
+ 'ai-analysis': [CredentialType.GOOGLE_GEMINI_CRED],
215
+ },
216
+ }),
217
+ createdAt: z.string().openapi({
218
+ description: 'ISO timestamp when the template was created',
219
+ example: '2025-01-15T10:30:00.000Z',
220
+ }),
221
+ updatedAt: z.string().openapi({
222
+ description: 'ISO timestamp when the template was last updated',
223
+ example: '2025-01-15T10:30:00.000Z',
224
+ }),
225
+ webhook: z
226
+ .object({
227
+ id: z.number().openapi({ description: 'Webhook ID', example: 456 }),
228
+ url: z.string().openapi({
229
+ description: 'Full webhook URL',
230
+ example: 'http://localhost:3001/webhook/user123/my-webhook',
231
+ }),
232
+ path: z.string().openapi({
233
+ description: 'Webhook path',
234
+ example: 'my-webhook',
235
+ }),
236
+ active: z.boolean().openapi({
237
+ description: 'Whether webhook is active',
238
+ example: true,
239
+ }),
240
+ })
241
+ .optional()
242
+ .openapi({
243
+ description: 'Webhook information (if webhook was created)',
244
+ }),
245
+ })
246
+ .openapi('BubbleFlowTemplateResponse');
247
+ //# sourceMappingURL=generate-bubbleflow-schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generate-bubbleflow-schema.js","sourceRoot":"","sources":["../src/generate-bubbleflow-schema.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ export * from './api-schema.js';
2
+ export * from './database-definition-schema.js';
3
+ export * from './credential-schema.js';
4
+ export * from './bubble-definition-schema.js';
5
+ export * from './types.js';
6
+ export * from './streaming-events.js';
7
+ export * from './mock-data-generator.js';
8
+ export * from './oauth-schema.js';
9
+ export * from './waitlist-schema.js';
10
+ export * from './bubbleflow-schema.js';
11
+ export * from './bubbleflow-execution-schema.js';
12
+ export * from './generate-bubbleflow-schema.js';
13
+ export * from './webhook-schema.js';
14
+ export * from './subscription-status-schema.js';
15
+ export * from './api-schema.js';
16
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,cAAc,iBAAiB,CAAC;AAChC,cAAc,iCAAiC,CAAC;AAChD,cAAc,wBAAwB,CAAC;AACvC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,YAAY,CAAC;AAC3B,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,mBAAmB,CAAC;AAClC,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,kCAAkC,CAAC;AACjD,cAAc,iCAAiC,CAAC;AAChD,cAAc,qBAAqB,CAAC;AACpC,cAAc,iCAAiC,CAAC;AAChD,cAAc,iBAAiB,CAAC"}
package/dist/index.js ADDED
@@ -0,0 +1,18 @@
1
+ // Re-export all schemas and types from the routes file
2
+ // Note: All schemas are defined in routes.ts
3
+ export * from './api-schema.js';
4
+ export * from './database-definition-schema.js';
5
+ export * from './credential-schema.js';
6
+ export * from './bubble-definition-schema.js';
7
+ export * from './types.js';
8
+ export * from './streaming-events.js';
9
+ export * from './mock-data-generator.js';
10
+ export * from './oauth-schema.js';
11
+ export * from './waitlist-schema.js';
12
+ export * from './bubbleflow-schema.js';
13
+ export * from './bubbleflow-execution-schema.js';
14
+ export * from './generate-bubbleflow-schema.js';
15
+ export * from './webhook-schema.js';
16
+ export * from './subscription-status-schema.js';
17
+ export * from './api-schema.js';
18
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,uDAAuD;AACvD,6CAA6C;AAC7C,cAAc,iBAAiB,CAAC;AAChC,cAAc,iCAAiC,CAAC;AAChD,cAAc,wBAAwB,CAAC;AACvC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,YAAY,CAAC;AAC3B,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,mBAAmB,CAAC;AAClC,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,kCAAkC,CAAC;AACjD,cAAc,iCAAiC,CAAC;AAChD,cAAc,qBAAqB,CAAC;AACpC,cAAc,iCAAiC,CAAC;AAChD,cAAc,iBAAiB,CAAC"}
@@ -0,0 +1,51 @@
1
+ import { z } from 'zod';
2
+ export interface BubbleOperationResult {
3
+ success: boolean;
4
+ error: string;
5
+ }
6
+ export interface BubbleResult<T> extends BubbleOperationResult {
7
+ data: T;
8
+ executionId: string;
9
+ timestamp: Date;
10
+ }
11
+ /**
12
+ * Utility class for generating mock data from Zod schemas
13
+ * Useful for testing, development, and creating sample data
14
+ */
15
+ export declare class MockDataGenerator {
16
+ /**
17
+ * Generate a complete mock BubbleResult from a result schema
18
+ */
19
+ static generateMockResult<TResult extends BubbleOperationResult>(resultSchema: z.ZodObject<z.ZodRawShape>): BubbleResult<TResult>;
20
+ /**
21
+ * Generate mock data from JSON Schema
22
+ * Converts JSON Schema to mock data with realistic values
23
+ */
24
+ static generateMockFromJsonSchema(jsonSchema: Record<string, unknown>): Record<string, unknown>;
25
+ /**
26
+ * Generate a mock value for a specific JSON Schema property
27
+ */
28
+ static generateMockValueFromJsonSchema(schema: Record<string, unknown>): unknown;
29
+ /**
30
+ * Generate mock data object from a Zod schema
31
+ * Recursively handles nested objects, arrays, and primitive types
32
+ */
33
+ static generateMockFromSchema(schema: z.ZodObject<z.ZodRawShape>): Record<string, unknown>;
34
+ /**
35
+ * Generate a mock value for a specific Zod type
36
+ */
37
+ static generateMockValue(zodType: z.ZodTypeAny): unknown;
38
+ /**
39
+ * Generate mock string values with format-specific handling
40
+ */
41
+ private static generateMockString;
42
+ /**
43
+ * Generate mock number values respecting constraints
44
+ */
45
+ private static generateMockNumber;
46
+ /**
47
+ * Generate mock data with custom seed for reproducible results
48
+ */
49
+ static generateMockWithSeed<TResult extends BubbleOperationResult>(resultSchema: z.ZodObject<z.ZodRawShape>, seed: number): BubbleResult<TResult>;
50
+ }
51
+ //# sourceMappingURL=mock-data-generator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mock-data-generator.d.ts","sourceRoot":"","sources":["../src/mock-data-generator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAoBxB,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;CACf;AAGD,MAAM,WAAW,YAAY,CAAC,CAAC,CAAE,SAAQ,qBAAqB;IAC5D,IAAI,EAAE,CAAC,CAAC;IACR,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,IAAI,CAAC;CACjB;AAED;;;GAGG;AACH,qBAAa,iBAAiB;IAC5B;;OAEG;IACH,MAAM,CAAC,kBAAkB,CAAC,OAAO,SAAS,qBAAqB,EAC7D,YAAY,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,GACvC,YAAY,CAAC,OAAO,CAAC;IAYxB;;;OAGG;IACH,MAAM,CAAC,0BAA0B,CAC/B,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAClC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IA0B1B;;OAEG;IACH,MAAM,CAAC,+BAA+B,CACpC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC9B,OAAO;IAwEV;;;OAGG;IACH,MAAM,CAAC,sBAAsB,CAC3B,MAAM,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,GACjC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IA0B1B;;OAEG;IACH,MAAM,CAAC,iBAAiB,CAAC,OAAO,EAAE,CAAC,CAAC,UAAU,GAAG,OAAO;IA0HxD;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,kBAAkB;IAoCjC;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,kBAAkB;IA4BjC;;OAEG;IACH,MAAM,CAAC,oBAAoB,CAAC,OAAO,SAAS,qBAAqB,EAC/D,YAAY,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,EACxC,IAAI,EAAE,MAAM,GACX,YAAY,CAAC,OAAO,CAAC;CAmBzB"}