@bubblelab/bubble-runtime 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 (70) hide show
  1. package/LICENSE.txt +202 -0
  2. package/dist/extraction/BubbleParser.d.ts +80 -0
  3. package/dist/extraction/BubbleParser.d.ts.map +1 -0
  4. package/dist/extraction/BubbleParser.js +926 -0
  5. package/dist/extraction/BubbleParser.js.map +1 -0
  6. package/dist/extraction/index.d.ts +2 -0
  7. package/dist/extraction/index.d.ts.map +1 -0
  8. package/dist/extraction/index.js +4 -0
  9. package/dist/extraction/index.js.map +1 -0
  10. package/dist/index.d.ts +7 -0
  11. package/dist/index.d.ts.map +1 -0
  12. package/dist/index.js +8 -0
  13. package/dist/index.js.map +1 -0
  14. package/dist/injection/BubbleInjector.d.ts +71 -0
  15. package/dist/injection/BubbleInjector.d.ts.map +1 -0
  16. package/dist/injection/BubbleInjector.js +326 -0
  17. package/dist/injection/BubbleInjector.js.map +1 -0
  18. package/dist/injection/LoggerInjector.d.ts +33 -0
  19. package/dist/injection/LoggerInjector.d.ts.map +1 -0
  20. package/dist/injection/LoggerInjector.js +154 -0
  21. package/dist/injection/LoggerInjector.js.map +1 -0
  22. package/dist/injection/index.d.ts +3 -0
  23. package/dist/injection/index.d.ts.map +1 -0
  24. package/dist/injection/index.js +3 -0
  25. package/dist/injection/index.js.map +1 -0
  26. package/dist/parse/BubbleScript.d.ts +141 -0
  27. package/dist/parse/BubbleScript.d.ts.map +1 -0
  28. package/dist/parse/BubbleScript.js +513 -0
  29. package/dist/parse/BubbleScript.js.map +1 -0
  30. package/dist/parse/index.d.ts +3 -0
  31. package/dist/parse/index.d.ts.map +1 -0
  32. package/dist/parse/index.js +3 -0
  33. package/dist/parse/index.js.map +1 -0
  34. package/dist/parse/traceDependencies.d.ts +18 -0
  35. package/dist/parse/traceDependencies.d.ts.map +1 -0
  36. package/dist/parse/traceDependencies.js +181 -0
  37. package/dist/parse/traceDependencies.js.map +1 -0
  38. package/dist/runtime/BubbleRunner.d.ts +91 -0
  39. package/dist/runtime/BubbleRunner.d.ts.map +1 -0
  40. package/dist/runtime/BubbleRunner.js +586 -0
  41. package/dist/runtime/BubbleRunner.js.map +1 -0
  42. package/dist/runtime/index.d.ts +2 -0
  43. package/dist/runtime/index.d.ts.map +1 -0
  44. package/dist/runtime/index.js +2 -0
  45. package/dist/runtime/index.js.map +1 -0
  46. package/dist/runtime/types.d.ts +29 -0
  47. package/dist/runtime/types.d.ts.map +1 -0
  48. package/dist/runtime/types.js +2 -0
  49. package/dist/runtime/types.js.map +1 -0
  50. package/dist/types/index.d.ts +8 -0
  51. package/dist/types/index.d.ts.map +1 -0
  52. package/dist/types/index.js +2 -0
  53. package/dist/types/index.js.map +1 -0
  54. package/dist/utils/bubble-helper.d.ts +11 -0
  55. package/dist/utils/bubble-helper.d.ts.map +1 -0
  56. package/dist/utils/bubble-helper.js +15 -0
  57. package/dist/utils/bubble-helper.js.map +1 -0
  58. package/dist/utils/parameter-formatter.d.ts +22 -0
  59. package/dist/utils/parameter-formatter.d.ts.map +1 -0
  60. package/dist/utils/parameter-formatter.js +219 -0
  61. package/dist/utils/parameter-formatter.js.map +1 -0
  62. package/dist/validation/BubbleValidator.d.ts +43 -0
  63. package/dist/validation/BubbleValidator.d.ts.map +1 -0
  64. package/dist/validation/BubbleValidator.js +172 -0
  65. package/dist/validation/BubbleValidator.js.map +1 -0
  66. package/dist/validation/index.d.ts +27 -0
  67. package/dist/validation/index.d.ts.map +1 -0
  68. package/dist/validation/index.js +126 -0
  69. package/dist/validation/index.js.map +1 -0
  70. package/package.json +47 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BubbleParser.js","sourceRoot":"","sources":["../../src/extraction/BubbleParser.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export * from './BubbleParser.js';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/extraction/index.ts"],"names":[],"mappings":"AAGA,cAAc,mBAAmB,CAAC"}
@@ -0,0 +1,4 @@
1
+ // Bubble parameter extraction logic
2
+ // TODO: Implement AST parsing and parameter extraction
3
+ export * from './BubbleParser.js';
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/extraction/index.ts"],"names":[],"mappings":"AAAA,oCAAoC;AACpC,uDAAuD;AAEvD,cAAc,mBAAmB,CAAC"}
@@ -0,0 +1,7 @@
1
+ export * from './validation';
2
+ export * from './extraction';
3
+ export * from './types';
4
+ export * from './runtime';
5
+ export * from './parse';
6
+ export * from './injection';
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC;AACxB,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,aAAa,CAAC"}
package/dist/index.js ADDED
@@ -0,0 +1,8 @@
1
+ // Main exports for @bubblelab/bubble-runtime package
2
+ export * from './validation';
3
+ export * from './extraction';
4
+ export * from './types';
5
+ export * from './runtime';
6
+ export * from './parse';
7
+ export * from './injection';
8
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,qDAAqD;AACrD,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC;AACxB,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,aAAa,CAAC"}
@@ -0,0 +1,71 @@
1
+ import { CredentialType, ParsedBubbleWithInfo } from '@bubblelab/shared-schemas';
2
+ import { BubbleScript } from 'src/parse/BubbleScript';
3
+ export interface UserCredentialWithId {
4
+ /** The variable id of the bubble */
5
+ bubbleVarId: number;
6
+ secret: string;
7
+ credentialType: CredentialType;
8
+ credentialId?: number;
9
+ metadata?: Record<string, unknown>;
10
+ }
11
+ export interface CredentialInjectionResult {
12
+ success: boolean;
13
+ parsedBubbles?: Record<string, ParsedBubbleWithInfo>;
14
+ code?: string;
15
+ errors?: string[];
16
+ injectedCredentials?: Record<number, string>;
17
+ }
18
+ export declare class BubbleInjector {
19
+ private bubbleScript;
20
+ private loggerInjector;
21
+ constructor(bubbleScript: BubbleScript);
22
+ /**
23
+ * Extracts required credential types from parsed bubble parameters
24
+ * Returns a map of variableId to the list of credentials required by that bubble
25
+ * @param bubbleParameters - Parsed bubble parameters with info
26
+ * @returns Record mapping bubble variable IDs to their required credential types (excluding system credentials)
27
+ */
28
+ findCredentials(bubbleParameters: Record<string, ParsedBubbleWithInfo>): Record<number, CredentialType[]>;
29
+ /**
30
+ * Extracts tool credential requirements from AI agent bubble parameters
31
+ * @param bubble - The parsed bubble to extract tool requirements from
32
+ * @returns Array of credential types required by the bubble's tools
33
+ */
34
+ private extractToolCredentials;
35
+ /**
36
+ * Injects credentials into bubble parameters
37
+ * @param bubbleParameters - Parsed bubble parameters with info
38
+ * @param userCredentials - User-provided credentials
39
+ * @param systemCredentials - System-provided credentials (environment variables)
40
+ * @returns Result of credential injection
41
+ */
42
+ injectCredentials(bubbleParameters: Record<string, ParsedBubbleWithInfo>, userCredentials?: UserCredentialWithId[], systemCredentials?: Partial<Record<CredentialType, string>>): CredentialInjectionResult;
43
+ /**
44
+ * Injects credentials into a specific bubble's parameters
45
+ */
46
+ private injectCredentialsIntoBubble;
47
+ /**
48
+ * Escapes a string for safe injection into TypeScript code
49
+ */
50
+ private escapeString;
51
+ /**
52
+ * Masks a credential value for debugging/logging
53
+ */
54
+ private maskCredential;
55
+ private getBubble;
56
+ /**
57
+ * Inject statement logging using original line numbers for traceability
58
+ */
59
+ private injectStatementLogging;
60
+ private reapplyBubbleInstantiations;
61
+ /**
62
+ * Apply new bubble parameters by converting them back to code and injecting in place
63
+ * Injects logger to the bubble instantiations
64
+ */
65
+ injectBubbleLoggingAndReinitializeBubbleParameters(): void;
66
+ /** Takes in bubbleId and key, value pair and changes the parameter in the bubble script */
67
+ changeBubbleParameters(bubbleId: number, key: string, value: unknown): void;
68
+ /** Changes the credentials field inside the bubble parameters by modifying the value to add ore replace new credentials */
69
+ changeCredentials(bubbleId: number, credentials: Record<CredentialType, string>): void;
70
+ }
71
+ //# sourceMappingURL=BubbleInjector.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BubbleInjector.d.ts","sourceRoot":"","sources":["../../src/injection/BubbleInjector.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EAEd,oBAAoB,EAGrB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAItD,MAAM,WAAW,oBAAoB;IACnC,oCAAoC;IACpC,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,EAAE,cAAc,CAAC;IAC/B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED,MAAM,WAAW,yBAAyB;IACxC,OAAO,EAAE,OAAO,CAAC;IACjB,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC;IACrD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,mBAAmB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC9C;AAED,qBAAa,cAAc;IACzB,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,cAAc,CAAiB;gBAC3B,YAAY,EAAE,YAAY;IAKtC;;;;;OAKG;IACH,eAAe,CACb,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,GACrD,MAAM,CAAC,MAAM,EAAE,cAAc,EAAE,CAAC;IAsCnC;;;;OAIG;IACH,OAAO,CAAC,sBAAsB;IAqE9B;;;;;;OAMG;IACH,iBAAiB,CACf,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,EACtD,eAAe,GAAE,oBAAoB,EAAO,EAC5C,iBAAiB,GAAE,OAAO,CAAC,MAAM,CAAC,cAAc,EAAE,MAAM,CAAC,CAAM,GAC9D,yBAAyB;IA2F5B;;OAEG;IACH,OAAO,CAAC,2BAA2B;IAoCnC;;OAEG;IACH,OAAO,CAAC,YAAY;IAUpB;;OAEG;IACH,OAAO,CAAC,cAAc;IAWtB,OAAO,CAAC,SAAS;IAQjB;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAU9B,OAAO,CAAC,2BAA2B;IAmCnC;;;OAGG;IACH,kDAAkD;IAYlD,2FAA2F;IAC3F,sBAAsB,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO;IAepE,2HAA2H;IAC3H,iBAAiB,CACf,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,MAAM,CAAC,cAAc,EAAE,MAAM,CAAC;CAgC9C"}
@@ -0,0 +1,326 @@
1
+ import { BubbleParameterType, BUBBLE_CREDENTIAL_OPTIONS, } from '@bubblelab/shared-schemas';
2
+ import { LoggerInjector } from './LoggerInjector';
3
+ import { replaceBubbleInstantiation } from '../utils/parameter-formatter';
4
+ export class BubbleInjector {
5
+ bubbleScript;
6
+ loggerInjector;
7
+ constructor(bubbleScript) {
8
+ this.bubbleScript = bubbleScript;
9
+ this.loggerInjector = new LoggerInjector(bubbleScript);
10
+ }
11
+ /**
12
+ * Extracts required credential types from parsed bubble parameters
13
+ * Returns a map of variableId to the list of credentials required by that bubble
14
+ * @param bubbleParameters - Parsed bubble parameters with info
15
+ * @returns Record mapping bubble variable IDs to their required credential types (excluding system credentials)
16
+ */
17
+ findCredentials(bubbleParameters) {
18
+ const requiredCredentials = {};
19
+ // Iterate through each bubble and check its credential requirements
20
+ for (const [, bubble] of Object.entries(bubbleParameters)) {
21
+ const allCredentialTypes = new Set();
22
+ // Get bubble-level credentials
23
+ const credentialOptions = BUBBLE_CREDENTIAL_OPTIONS[bubble.bubbleName];
24
+ if (credentialOptions && Array.isArray(credentialOptions)) {
25
+ for (const credType of credentialOptions) {
26
+ allCredentialTypes.add(credType);
27
+ }
28
+ }
29
+ // For AI agent bubbles, also collect tool-level credential requirements
30
+ if (bubble.bubbleName === 'ai-agent') {
31
+ const toolCredentials = this.extractToolCredentials(bubble);
32
+ for (const credType of toolCredentials) {
33
+ allCredentialTypes.add(credType);
34
+ }
35
+ }
36
+ // Return all credentials (system and user credentials)
37
+ const allCredentials = Array.from(allCredentialTypes);
38
+ // Only add the bubble if it has credentials
39
+ if (allCredentials.length > 0) {
40
+ requiredCredentials[bubble.variableId] = allCredentials;
41
+ }
42
+ }
43
+ return requiredCredentials;
44
+ }
45
+ /**
46
+ * Extracts tool credential requirements from AI agent bubble parameters
47
+ * @param bubble - The parsed bubble to extract tool requirements from
48
+ * @returns Array of credential types required by the bubble's tools
49
+ */
50
+ extractToolCredentials(bubble) {
51
+ if (bubble.bubbleName !== 'ai-agent') {
52
+ return [];
53
+ }
54
+ const toolCredentials = new Set();
55
+ // Find the tools parameter in the bubble
56
+ const toolsParam = bubble.parameters.find((param) => param.name === 'tools');
57
+ if (!toolsParam || typeof toolsParam.value !== 'string') {
58
+ return [];
59
+ }
60
+ try {
61
+ // Parse the tools array from the parameter value
62
+ // The value can be either JSON or JavaScript array literal
63
+ let toolsArray;
64
+ // First try to safely evaluate as JavaScript (for cases like [{"name": "web-search-tool"}])
65
+ try {
66
+ // Use Function constructor to safely evaluate the expression in isolation
67
+ const safeEval = new Function('return ' + toolsParam.value);
68
+ const evaluated = safeEval();
69
+ if (Array.isArray(evaluated)) {
70
+ toolsArray = evaluated;
71
+ }
72
+ else {
73
+ // Single object, wrap in array
74
+ toolsArray = [evaluated];
75
+ }
76
+ }
77
+ catch {
78
+ // Fallback to JSON.parse for cases where it's valid JSON
79
+ if (toolsParam.value.startsWith('[')) {
80
+ toolsArray = JSON.parse(toolsParam.value);
81
+ }
82
+ else {
83
+ toolsArray = [JSON.parse(toolsParam.value)];
84
+ }
85
+ }
86
+ // For each tool, get its credential requirements
87
+ for (const tool of toolsArray) {
88
+ if (!tool.name || typeof tool.name !== 'string') {
89
+ continue;
90
+ }
91
+ const toolBubbleName = tool.name;
92
+ const toolCredentialOptions = BUBBLE_CREDENTIAL_OPTIONS[toolBubbleName];
93
+ if (toolCredentialOptions && Array.isArray(toolCredentialOptions)) {
94
+ for (const credType of toolCredentialOptions) {
95
+ toolCredentials.add(credType);
96
+ }
97
+ }
98
+ }
99
+ }
100
+ catch (error) {
101
+ // If we can't parse the tools parameter, silently ignore
102
+ // This handles cases where the tools parameter contains complex TypeScript expressions
103
+ console.debug(`Failed to parse tools parameter for credential extraction: ${error}`);
104
+ }
105
+ return Array.from(toolCredentials);
106
+ }
107
+ /**
108
+ * Injects credentials into bubble parameters
109
+ * @param bubbleParameters - Parsed bubble parameters with info
110
+ * @param userCredentials - User-provided credentials
111
+ * @param systemCredentials - System-provided credentials (environment variables)
112
+ * @returns Result of credential injection
113
+ */
114
+ injectCredentials(bubbleParameters, userCredentials = [], systemCredentials = {}) {
115
+ try {
116
+ const modifiedBubbles = { ...bubbleParameters };
117
+ const injectedCredentials = {};
118
+ const errors = [];
119
+ // Iterate through each bubble to determine if it needs credential injection
120
+ for (const [_, bubble] of Object.entries(modifiedBubbles)) {
121
+ const bubbleName = bubble.bubbleName;
122
+ // Get the credential options for this bubble from the registry
123
+ const bubbleCredentialOptions = BUBBLE_CREDENTIAL_OPTIONS[bubbleName] || [];
124
+ // For AI agent bubbles, also collect tool-level credential requirements
125
+ const toolCredentialOptions = bubble.bubbleName === 'ai-agent'
126
+ ? this.extractToolCredentials(bubble)
127
+ : [];
128
+ // Combine bubble and tool credentials
129
+ const allCredentialOptions = [
130
+ ...new Set([...bubbleCredentialOptions, ...toolCredentialOptions]),
131
+ ];
132
+ if (allCredentialOptions.length === 0) {
133
+ continue;
134
+ }
135
+ const credentialMapping = {};
136
+ // First, inject system credentials
137
+ for (const credentialType of allCredentialOptions) {
138
+ if (systemCredentials[credentialType]) {
139
+ credentialMapping[credentialType] = this.escapeString(systemCredentials[credentialType]);
140
+ }
141
+ }
142
+ // Then inject user credentials (these override system credentials)
143
+ const userCreds = userCredentials.filter((uc) => uc.bubbleVarId === bubble.variableId);
144
+ for (const userCred of userCreds) {
145
+ const userCredType = userCred.credentialType;
146
+ if (allCredentialOptions.includes(userCredType)) {
147
+ credentialMapping[userCredType] = this.escapeString(userCred.secret);
148
+ }
149
+ }
150
+ // Inject credentials into bubble parameters
151
+ if (Object.keys(credentialMapping).length > 0) {
152
+ this.injectCredentialsIntoBubble(bubble, credentialMapping);
153
+ // Track injected credentials for debugging (mask values)
154
+ for (const [credType, value] of Object.entries(credentialMapping)) {
155
+ injectedCredentials[`${bubble.variableId}.${credType}`] =
156
+ this.maskCredential(value);
157
+ }
158
+ }
159
+ }
160
+ // Apply the modified bubbles back to the script
161
+ const finalScript = this.reapplyBubbleInstantiations(Object.values(modifiedBubbles));
162
+ return {
163
+ success: errors.length === 0,
164
+ code: finalScript,
165
+ parsedBubbles: this.bubbleScript.getParsedBubbles(),
166
+ errors: errors.length > 0 ? errors : undefined,
167
+ injectedCredentials,
168
+ };
169
+ }
170
+ catch (error) {
171
+ return {
172
+ success: false,
173
+ errors: [
174
+ `Credential injection error: ${error instanceof Error ? error.message : String(error)}`,
175
+ ],
176
+ };
177
+ }
178
+ }
179
+ /**
180
+ * Injects credentials into a specific bubble's parameters
181
+ */
182
+ injectCredentialsIntoBubble(bubble, credentialMapping) {
183
+ // Check if bubble already has credentials parameter
184
+ let credentialsParam = bubble.parameters.find((p) => p.name === 'credentials');
185
+ if (!credentialsParam) {
186
+ // Add new credentials parameter
187
+ credentialsParam = {
188
+ name: 'credentials',
189
+ value: {},
190
+ type: BubbleParameterType.OBJECT,
191
+ };
192
+ bubble.parameters.push(credentialsParam);
193
+ }
194
+ // Ensure the value is an object
195
+ if (typeof credentialsParam.value !== 'object' ||
196
+ credentialsParam.value === null) {
197
+ credentialsParam.value = {};
198
+ }
199
+ // Inject credentials into the credentials object
200
+ const credentialsObj = credentialsParam.value;
201
+ for (const [credType, credValue] of Object.entries(credentialMapping)) {
202
+ credentialsObj[credType] = credValue;
203
+ }
204
+ credentialsParam.value = credentialsObj;
205
+ }
206
+ /**
207
+ * Escapes a string for safe injection into TypeScript code
208
+ */
209
+ escapeString(str) {
210
+ return str
211
+ .replace(/\\/g, '\\\\')
212
+ .replace(/"/g, '\\"')
213
+ .replace(/'/g, "\\'")
214
+ .replace(/\n/g, '\\n')
215
+ .replace(/\r/g, '\\r')
216
+ .replace(/\t/g, '\\t');
217
+ }
218
+ /**
219
+ * Masks a credential value for debugging/logging
220
+ */
221
+ maskCredential(value) {
222
+ if (value.length <= 8) {
223
+ return '*'.repeat(value.length);
224
+ }
225
+ return (value.substring(0, 4) +
226
+ '*'.repeat(value.length - 8) +
227
+ value.substring(value.length - 4));
228
+ }
229
+ getBubble(bubbleId) {
230
+ const bubbleClass = this.bubbleScript.getParsedBubbles()[bubbleId];
231
+ if (!bubbleClass) {
232
+ throw new Error(`Bubble with id ${bubbleId} not found`);
233
+ }
234
+ return bubbleClass;
235
+ }
236
+ /**
237
+ * Inject statement logging using original line numbers for traceability
238
+ */
239
+ injectStatementLogging(originalAST, originalHandleMethodLocation) {
240
+ this.loggerInjector.injectLoggingWithOriginalLines(originalAST, originalHandleMethodLocation);
241
+ }
242
+ reapplyBubbleInstantiations(bubbles) {
243
+ const lines = this.bubbleScript.currentBubbleScript.split('\n');
244
+ // Process bubbles in forward order and track line number shifts
245
+ const sortedBubbles = [...bubbles].sort((a, b) => a.location.startLine - b.location.startLine);
246
+ let lineShift = 0;
247
+ for (const bubble of sortedBubbles) {
248
+ // Adjust bubble location for previous replacements
249
+ const adjustedBubble = {
250
+ ...bubble,
251
+ location: {
252
+ ...bubble.location,
253
+ startLine: bubble.location.startLine + lineShift,
254
+ endLine: bubble.location.endLine + lineShift,
255
+ },
256
+ };
257
+ const originalLineCount = lines.length;
258
+ replaceBubbleInstantiation(lines, adjustedBubble);
259
+ const newLineCount = lines.length;
260
+ // Track how many lines were added/removed
261
+ const lineChange = newLineCount - originalLineCount;
262
+ lineShift += lineChange;
263
+ }
264
+ const finalScript = lines.join('\n');
265
+ this.bubbleScript.currentBubbleScript = finalScript;
266
+ this.bubbleScript.reparseAST();
267
+ return finalScript;
268
+ }
269
+ /**
270
+ * Apply new bubble parameters by converting them back to code and injecting in place
271
+ * Injects logger to the bubble instantiations
272
+ */
273
+ injectBubbleLoggingAndReinitializeBubbleParameters() {
274
+ const parsedBubbles = this.bubbleScript.getParsedBubbles();
275
+ // Store original line numbers for traceability
276
+ const originalHandleMethodLocation = this.bubbleScript.getHandleMethodLocation();
277
+ const originalAST = this.bubbleScript.getAST();
278
+ this.reapplyBubbleInstantiations(Object.values(parsedBubbles));
279
+ // Now inject statement logging with original line numbers for traceability
280
+ this.injectStatementLogging(originalAST, originalHandleMethodLocation);
281
+ }
282
+ /** Takes in bubbleId and key, value pair and changes the parameter in the bubble script */
283
+ changeBubbleParameters(bubbleId, key, value) {
284
+ // Find the bubble class in the bubble script
285
+ const parameters = this.getBubble(bubbleId).parameters;
286
+ if (!parameters) {
287
+ throw new Error(`Bubble with id ${bubbleId} not found`);
288
+ }
289
+ // Find the parameter in the bubble class
290
+ const parameter = parameters.find((p) => p.name === key);
291
+ if (!parameter) {
292
+ throw new Error(`Parameter ${key} not found in bubble ${bubbleId}`);
293
+ }
294
+ // Change the parameter value
295
+ parameter.value = value;
296
+ }
297
+ /** Changes the credentials field inside the bubble parameters by modifying the value to add ore replace new credentials */
298
+ changeCredentials(bubbleId, credentials) {
299
+ // Find the bubble parameters
300
+ const bubble = this.getBubble(bubbleId);
301
+ const parameters = bubble.parameters;
302
+ if (!parameters) {
303
+ throw new Error(`Bubble with id ${bubbleId} not found`);
304
+ }
305
+ // Find the credentials parameter
306
+ const credentialsParameter = parameters.find((p) => p.name === 'credentials');
307
+ if (!credentialsParameter) {
308
+ // Add the credentials parameter
309
+ parameters.push({
310
+ name: 'credentials',
311
+ value: credentials,
312
+ type: BubbleParameterType.OBJECT,
313
+ });
314
+ }
315
+ // For each credential types given in the input, find the credential in the credentials parameter, if it doesn't exist will add it, if it does will replace it
316
+ for (const credentialType of Object.keys(credentials)) {
317
+ // Find if the credential type is in the bubble script's credentials parameters
318
+ // Find credentials object in the bubble script's parameters
319
+ const credentialsObject = parameters.find((p) => p.name === 'credentials');
320
+ // Add the credentials object parameter
321
+ // Replace the credential parameter
322
+ credentialsObject.value = credentials[credentialType];
323
+ }
324
+ }
325
+ }
326
+ //# sourceMappingURL=BubbleInjector.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BubbleInjector.js","sourceRoot":"","sources":["../../src/injection/BubbleInjector.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,mBAAmB,EAEnB,yBAAyB,GAE1B,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAmB1E,MAAM,OAAO,cAAc;IACjB,YAAY,CAAe;IAC3B,cAAc,CAAiB;IACvC,YAAY,YAA0B;QACpC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,cAAc,GAAG,IAAI,cAAc,CAAC,YAAY,CAAC,CAAC;IACzD,CAAC;IAED;;;;;OAKG;IACH,eAAe,CACb,gBAAsD;QAEtD,MAAM,mBAAmB,GAAqC,EAAE,CAAC;QAEjE,oEAAoE;QACpE,KAAK,MAAM,CAAC,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAE,CAAC;YAC1D,MAAM,kBAAkB,GAAG,IAAI,GAAG,EAAkB,CAAC;YAErD,+BAA+B;YAC/B,MAAM,iBAAiB,GACrB,yBAAyB,CACvB,MAAM,CAAC,UAAoD,CAC5D,CAAC;YACJ,IAAI,iBAAiB,IAAI,KAAK,CAAC,OAAO,CAAC,iBAAiB,CAAC,EAAE,CAAC;gBAC1D,KAAK,MAAM,QAAQ,IAAI,iBAAiB,EAAE,CAAC;oBACzC,kBAAkB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;gBACnC,CAAC;YACH,CAAC;YAED,wEAAwE;YACxE,IAAI,MAAM,CAAC,UAAU,KAAK,UAAU,EAAE,CAAC;gBACrC,MAAM,eAAe,GAAG,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAC;gBAC5D,KAAK,MAAM,QAAQ,IAAI,eAAe,EAAE,CAAC;oBACvC,kBAAkB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;gBACnC,CAAC;YACH,CAAC;YAED,uDAAuD;YACvD,MAAM,cAAc,GAAG,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;YAEtD,4CAA4C;YAC5C,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC9B,mBAAmB,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,cAAc,CAAC;YAC1D,CAAC;QACH,CAAC;QAED,OAAO,mBAAmB,CAAC;IAC7B,CAAC;IAED;;;;OAIG;IACK,sBAAsB,CAC5B,MAA4B;QAE5B,IAAI,MAAM,CAAC,UAAU,KAAK,UAAU,EAAE,CAAC;YACrC,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,MAAM,eAAe,GAAwB,IAAI,GAAG,EAAE,CAAC;QAEvD,yCAAyC;QACzC,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CACvC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,OAAO,CAClC,CAAC;QACF,IAAI,CAAC,UAAU,IAAI,OAAO,UAAU,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;YACxD,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,IAAI,CAAC;YACH,iDAAiD;YACjD,2DAA2D;YAC3D,IAAI,UAA2D,CAAC;YAEhE,4FAA4F;YAC5F,IAAI,CAAC;gBACH,0EAA0E;gBAC1E,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC,SAAS,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;gBAC5D,MAAM,SAAS,GAAG,QAAQ,EAAE,CAAC;gBAE7B,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;oBAC7B,UAAU,GAAG,SAAS,CAAC;gBACzB,CAAC;qBAAM,CAAC;oBACN,+BAA+B;oBAC/B,UAAU,GAAG,CAAC,SAAS,CAAC,CAAC;gBAC3B,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,yDAAyD;gBACzD,IAAI,UAAU,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;oBACrC,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;gBAC5C,CAAC;qBAAM,CAAC;oBACN,UAAU,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;gBAC9C,CAAC;YACH,CAAC;YAED,iDAAiD;YACjD,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;gBAC9B,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;oBAChD,SAAS;gBACX,CAAC;gBAED,MAAM,cAAc,GAAG,IAAI,CAAC,IAAkB,CAAC;gBAC/C,MAAM,qBAAqB,GAAG,yBAAyB,CAAC,cAAc,CAAC,CAAC;gBAExE,IAAI,qBAAqB,IAAI,KAAK,CAAC,OAAO,CAAC,qBAAqB,CAAC,EAAE,CAAC;oBAClE,KAAK,MAAM,QAAQ,IAAI,qBAAqB,EAAE,CAAC;wBAC7C,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;oBAChC,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,yDAAyD;YACzD,uFAAuF;YACvF,OAAO,CAAC,KAAK,CACX,8DAA8D,KAAK,EAAE,CACtE,CAAC;QACJ,CAAC;QAED,OAAO,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IACrC,CAAC;IAED;;;;;;OAMG;IACH,iBAAiB,CACf,gBAAsD,EACtD,kBAA0C,EAAE,EAC5C,oBAA6D,EAAE;QAE/D,IAAI,CAAC;YACH,MAAM,eAAe,GAAG,EAAE,GAAG,gBAAgB,EAAE,CAAC;YAChD,MAAM,mBAAmB,GAA2B,EAAE,CAAC;YACvD,MAAM,MAAM,GAAa,EAAE,CAAC;YAE5B,4EAA4E;YAC5E,KAAK,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,CAAC;gBAC1D,MAAM,UAAU,GAAG,MAAM,CAAC,UAAwB,CAAC;gBAEnD,+DAA+D;gBAC/D,MAAM,uBAAuB,GAC3B,yBAAyB,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;gBAE9C,wEAAwE;gBACxE,MAAM,qBAAqB,GACzB,MAAM,CAAC,UAAU,KAAK,UAAU;oBAC9B,CAAC,CAAC,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC;oBACrC,CAAC,CAAC,EAAE,CAAC;gBAET,sCAAsC;gBACtC,MAAM,oBAAoB,GAAG;oBAC3B,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,uBAAuB,EAAE,GAAG,qBAAqB,CAAC,CAAC;iBACnE,CAAC;gBAEF,IAAI,oBAAoB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBACtC,SAAS;gBACX,CAAC;gBAED,MAAM,iBAAiB,GAAmC,EAGzD,CAAC;gBAEF,mCAAmC;gBACnC,KAAK,MAAM,cAAc,IAAI,oBAAwC,EAAE,CAAC;oBACtE,IAAI,iBAAiB,CAAC,cAAc,CAAC,EAAE,CAAC;wBACtC,iBAAiB,CAAC,cAAc,CAAC,GAAG,IAAI,CAAC,YAAY,CACnD,iBAAiB,CAAC,cAAc,CAAC,CAClC,CAAC;oBACJ,CAAC;gBACH,CAAC;gBAED,mEAAmE;gBACnE,MAAM,SAAS,GAAG,eAAe,CAAC,MAAM,CACtC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,WAAW,KAAK,MAAM,CAAC,UAAU,CAC7C,CAAC;gBAEF,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;oBACjC,MAAM,YAAY,GAAG,QAAQ,CAAC,cAAc,CAAC;oBAE7C,IAAI,oBAAoB,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;wBAChD,iBAAiB,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC,YAAY,CACjD,QAAQ,CAAC,MAAM,CAChB,CAAC;oBACJ,CAAC;gBACH,CAAC;gBAED,4CAA4C;gBAC5C,IAAI,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC9C,IAAI,CAAC,2BAA2B,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;oBAE5D,yDAAyD;oBACzD,KAAK,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,iBAAiB,CAAC,EAAE,CAAC;wBAClE,mBAAmB,CAAC,GAAG,MAAM,CAAC,UAAU,IAAI,QAAQ,EAAE,CAAC;4BACrD,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;oBAC/B,CAAC;gBACH,CAAC;YACH,CAAC;YAED,gDAAgD;YAChD,MAAM,WAAW,GAAG,IAAI,CAAC,2BAA2B,CAClD,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,CAC/B,CAAC;YACF,OAAO;gBACL,OAAO,EAAE,MAAM,CAAC,MAAM,KAAK,CAAC;gBAC5B,IAAI,EAAE,WAAW;gBACjB,aAAa,EAAE,IAAI,CAAC,YAAY,CAAC,gBAAgB,EAAE;gBACnD,MAAM,EAAE,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;gBAC9C,mBAAmB;aACpB,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,MAAM,EAAE;oBACN,+BAA+B,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;iBACxF;aACF,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;OAEG;IACK,2BAA2B,CACjC,MAA4B,EAC5B,iBAAiD;QAEjD,oDAAoD;QACpD,IAAI,gBAAgB,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAC3C,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,aAAa,CAChC,CAAC;QAEF,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACtB,gCAAgC;YAChC,gBAAgB,GAAG;gBACjB,IAAI,EAAE,aAAa;gBACnB,KAAK,EAAE,EAAE;gBACT,IAAI,EAAE,mBAAmB,CAAC,MAAM;aACjC,CAAC;YACF,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QAC3C,CAAC;QAED,gCAAgC;QAChC,IACE,OAAO,gBAAgB,CAAC,KAAK,KAAK,QAAQ;YAC1C,gBAAgB,CAAC,KAAK,KAAK,IAAI,EAC/B,CAAC;YACD,gBAAgB,CAAC,KAAK,GAAG,EAAE,CAAC;QAC9B,CAAC;QAED,iDAAiD;QACjD,MAAM,cAAc,GAAG,gBAAgB,CAAC,KAA+B,CAAC;QACxE,KAAK,MAAM,CAAC,QAAQ,EAAE,SAAS,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,iBAAiB,CAAC,EAAE,CAAC;YACtE,cAAc,CAAC,QAAQ,CAAC,GAAG,SAAS,CAAC;QACvC,CAAC;QAED,gBAAgB,CAAC,KAAK,GAAG,cAAc,CAAC;IAC1C,CAAC;IAED;;OAEG;IACK,YAAY,CAAC,GAAW;QAC9B,OAAO,GAAG;aACP,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC;aACtB,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC;aACpB,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC;aACpB,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC;aACrB,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC;aACrB,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IAC3B,CAAC;IAED;;OAEG;IACK,cAAc,CAAC,KAAa;QAClC,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;YACtB,OAAO,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAClC,CAAC;QACD,OAAO,CACL,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC;YACrB,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;YAC5B,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAClC,CAAC;IACJ,CAAC;IAEO,SAAS,CAAC,QAAgB;QAChC,MAAM,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC,gBAAgB,EAAE,CAAC,QAAQ,CAAC,CAAC;QACnE,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,kBAAkB,QAAQ,YAAY,CAAC,CAAC;QAC1D,CAAC;QACD,OAAO,WAAW,CAAC;IACrB,CAAC;IAED;;OAEG;IACK,sBAAsB,CAC5B,WAAgB,EAChB,4BAAiC;QAEjC,IAAI,CAAC,cAAc,CAAC,8BAA8B,CAChD,WAAW,EACX,4BAA4B,CAC7B,CAAC;IACJ,CAAC;IAEO,2BAA2B,CAAC,OAA+B;QACjE,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,mBAAmB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAEhE,gEAAgE;QAChE,MAAM,aAAa,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC,IAAI,CACrC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,GAAG,CAAC,CAAC,QAAQ,CAAC,SAAS,CACtD,CAAC;QAEF,IAAI,SAAS,GAAG,CAAC,CAAC;QAClB,KAAK,MAAM,MAAM,IAAI,aAAa,EAAE,CAAC;YACnC,mDAAmD;YACnD,MAAM,cAAc,GAAG;gBACrB,GAAG,MAAM;gBACT,QAAQ,EAAE;oBACR,GAAG,MAAM,CAAC,QAAQ;oBAClB,SAAS,EAAE,MAAM,CAAC,QAAQ,CAAC,SAAS,GAAG,SAAS;oBAChD,OAAO,EAAE,MAAM,CAAC,QAAQ,CAAC,OAAO,GAAG,SAAS;iBAC7C;aACF,CAAC;YAEF,MAAM,iBAAiB,GAAG,KAAK,CAAC,MAAM,CAAC;YACvC,0BAA0B,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC;YAClD,MAAM,YAAY,GAAG,KAAK,CAAC,MAAM,CAAC;YAElC,0CAA0C;YAC1C,MAAM,UAAU,GAAG,YAAY,GAAG,iBAAiB,CAAC;YACpD,SAAS,IAAI,UAAU,CAAC;QAC1B,CAAC;QAED,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACrC,IAAI,CAAC,YAAY,CAAC,mBAAmB,GAAG,WAAW,CAAC;QACpD,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,CAAC;QAC/B,OAAO,WAAW,CAAC;IACrB,CAAC;IAED;;;OAGG;IACH,kDAAkD;QAChD,MAAM,aAAa,GAAG,IAAI,CAAC,YAAY,CAAC,gBAAgB,EAAE,CAAC;QAE3D,+CAA+C;QAC/C,MAAM,4BAA4B,GAChC,IAAI,CAAC,YAAY,CAAC,uBAAuB,EAAE,CAAC;QAC9C,MAAM,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC;QAC/C,IAAI,CAAC,2BAA2B,CAAC,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC;QAC/D,2EAA2E;QAC3E,IAAI,CAAC,sBAAsB,CAAC,WAAW,EAAE,4BAA4B,CAAC,CAAC;IACzE,CAAC;IAED,2FAA2F;IAC3F,sBAAsB,CAAC,QAAgB,EAAE,GAAW,EAAE,KAAc;QAClE,6CAA6C;QAC7C,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC;QACvD,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CAAC,kBAAkB,QAAQ,YAAY,CAAC,CAAC;QAC1D,CAAC;QACD,yCAAyC;QACzC,MAAM,SAAS,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC;QACzD,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,aAAa,GAAG,wBAAwB,QAAQ,EAAE,CAAC,CAAC;QACtE,CAAC;QACD,6BAA6B;QAC7B,SAAS,CAAC,KAAK,GAAG,KAAK,CAAC;IAC1B,CAAC;IAED,2HAA2H;IAC3H,iBAAiB,CACf,QAAgB,EAChB,WAA2C;QAE3C,6BAA6B;QAC7B,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QACxC,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;QACrC,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CAAC,kBAAkB,QAAQ,YAAY,CAAC,CAAC;QAC1D,CAAC;QACD,iCAAiC;QACjC,MAAM,oBAAoB,GAAG,UAAU,CAAC,IAAI,CAC1C,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,aAAa,CAChC,CAAC;QACF,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC1B,gCAAgC;YAChC,UAAU,CAAC,IAAI,CAAC;gBACd,IAAI,EAAE,aAAa;gBACnB,KAAK,EAAE,WAAW;gBAClB,IAAI,EAAE,mBAAmB,CAAC,MAAM;aACjC,CAAC,CAAC;QACL,CAAC;QACD,8JAA8J;QAC9J,KAAK,MAAM,cAAc,IAAI,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;YACtD,+EAA+E;YAC/E,4DAA4D;YAC5D,MAAM,iBAAiB,GAAG,UAAU,CAAC,IAAI,CACvC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,aAAa,CACK,CAAC;YACvC,uCAAuC;YACvC,mCAAmC;YACnC,iBAAkB,CAAC,KAAK,GAAG,WAAW,CAAC,cAAgC,CAAC,CAAC;QAC3E,CAAC;IACH,CAAC;CACF"}
@@ -0,0 +1,33 @@
1
+ import { BubbleScript } from '../parse/BubbleScript';
2
+ export interface LoggingInjectionOptions {
3
+ enableLineByLineLogging: boolean;
4
+ enableBubbleLogging: boolean;
5
+ enableVariableLogging: boolean;
6
+ }
7
+ export declare class LoggerInjector {
8
+ private bubbleScript;
9
+ private options;
10
+ constructor(bubbleScript: BubbleScript, options?: Partial<LoggingInjectionOptions>);
11
+ /**
12
+ * Inject comprehensive logging into the bubble script using existing analysis
13
+ */
14
+ injectLogging(): string;
15
+ /**
16
+ * Inject logging using original line numbers for traceability
17
+ */
18
+ injectLoggingWithOriginalLines(originalAST: any, originalHandleMethodLocation: any): string;
19
+ /**
20
+ * Inject statement-level logging using existing AST analysis
21
+ */
22
+ private injectLineLogging;
23
+ /**
24
+ * Inject statement-level logging using original line numbers for traceability
25
+ */
26
+ private injectLineLoggingWithOriginalLines;
27
+ /**
28
+ * Find all statements within the handle method using AST
29
+ */
30
+ private findStatementsInHandleMethod;
31
+ private visitChildNodes;
32
+ }
33
+ //# sourceMappingURL=LoggerInjector.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LoggerInjector.d.ts","sourceRoot":"","sources":["../../src/injection/LoggerInjector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAGrD,MAAM,WAAW,uBAAuB;IACtC,uBAAuB,EAAE,OAAO,CAAC;IACjC,mBAAmB,EAAE,OAAO,CAAC;IAC7B,qBAAqB,EAAE,OAAO,CAAC;CAChC;AAED,qBAAa,cAAc;IACzB,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,OAAO,CAA0B;gBAGvC,YAAY,EAAE,YAAY,EAC1B,OAAO,GAAE,OAAO,CAAC,uBAAuB,CAAM;IAWhD;;OAEG;IACH,aAAa,IAAI,MAAM;IAavB;;OAEG;IACH,8BAA8B,CAC5B,WAAW,EAAE,GAAG,EAChB,4BAA4B,EAAE,GAAG,GAChC,MAAM;IAiBT;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAmCzB;;OAEG;IACH,OAAO,CAAC,kCAAkC;IAqC1C;;OAEG;IACH,OAAO,CAAC,4BAA4B;IA2CpC,OAAO,CAAC,eAAe;CA8BxB"}