rflib-plugin 0.2.0 → 0.3.1

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.
@@ -12,6 +12,7 @@ export default class RflibLoggingApexInstrument extends SfCommand<RflibLoggingAp
12
12
  sourcepath: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
13
13
  dryrun: import("@oclif/core/interfaces").BooleanFlag<boolean>;
14
14
  prettier: import("@oclif/core/interfaces").BooleanFlag<boolean>;
15
+ 'no-if': import("@oclif/core/interfaces").BooleanFlag<boolean>;
15
16
  };
16
17
  private logger;
17
18
  private processedFiles;
@@ -24,6 +25,7 @@ export default class RflibLoggingApexInstrument extends SfCommand<RflibLoggingAp
24
25
  private static processParameters;
25
26
  private static processMethodDeclarations;
26
27
  private static processCatchBlocks;
28
+ private static processIfStatements;
27
29
  run(): Promise<RflibLoggingApexInstrumentResult>;
28
30
  private processDirectory;
29
31
  private processTestFile;
@@ -15,6 +15,8 @@ const classLevelLoggerRegex = /\bprivate\s+(?:static\s+)?(?:final\s+)?rflib_Logg
15
15
  const genericArgsRegex = /<[^>]+>/g;
16
16
  const catchRegex = /catch\s*\(\s*\w+\s+(\w+)\s*\)\s*{/g;
17
17
  const testSetupRegex = /@TestSetup\s+((public|private|protected|global)s+)?(?:static\s+)?void\s+(\w+)\s*\([^)]*\)\s*{/g;
18
+ const ifStatementRegex = /if\s*\((.*?)\)\s*(?:{([^]*?(?:(?<!{){(?:[^]*?)}(?!})[^]*?)*)}|([^{].*?)(?=\s*(?:;|$));)/g;
19
+ const elseRegex = /}\s*else(?!\s+if\b)\s*(?:{((?:[^{}]|{(?:[^{}]|{[^{}]*})*})*)}|([^{].*?)(?=\n|;|$))/g;
18
20
  const PRIMITIVE_TYPES = new Set([
19
21
  'STRING',
20
22
  'INTEGER',
@@ -50,6 +52,9 @@ export default class RflibLoggingApexInstrument extends SfCommand {
50
52
  char: 'p',
51
53
  default: false,
52
54
  }),
55
+ 'no-if': Flags.boolean({
56
+ summary: messages.getMessage('flags.no-if.summary'),
57
+ }),
53
58
  };
54
59
  logger;
55
60
  processedFiles = 0;
@@ -126,16 +131,58 @@ export default class RflibLoggingApexInstrument extends SfCommand {
126
131
  return `${match}\n ${loggerName}.error('An error occurred in ${methodName}()', ${exceptionVar.trim()});`;
127
132
  });
128
133
  }
134
+ static processIfStatements(content, loggerName) {
135
+ const conditions = [];
136
+ // Process if statements and store conditions with positions
137
+ let modified = content.replace(ifStatementRegex, (match, condition, blockBody, singleLineBody, offset) => {
138
+ const cleanedUpCondition = condition.trim().replaceAll("'", "\\'");
139
+ conditions.push({
140
+ condition: cleanedUpCondition,
141
+ position: offset,
142
+ });
143
+ const logStatement = `${loggerName}.debug('if (${cleanedUpCondition})');\n `;
144
+ if (blockBody) {
145
+ return `if (${condition}) {\n ${logStatement}${blockBody}}`;
146
+ }
147
+ else if (singleLineBody) {
148
+ const cleanBody = singleLineBody.replace(/;$/, '').trim();
149
+ return `if (${condition}) {\n ${logStatement}${cleanBody};\n }`;
150
+ }
151
+ return match;
152
+ });
153
+ // Process else blocks using nearest if condition
154
+ modified = modified.replace(elseRegex, (match, blockBody, singleLineBody, offset) => {
155
+ // Find last if statement before this else
156
+ const nearestIf = conditions
157
+ .filter((c) => c.position < offset)
158
+ .reduce((prev, curr) => (!prev || curr.position > prev.position ? curr : prev));
159
+ const logStatement = nearestIf
160
+ ? `${loggerName}.debug('else for if (${nearestIf.condition})');\n `
161
+ : `${loggerName}.debug('else statement');\n `;
162
+ if (blockBody) {
163
+ return `} else {\n ${logStatement}${blockBody}}`;
164
+ }
165
+ else if (singleLineBody) {
166
+ return `} else {\n ${logStatement}${singleLineBody};\n }`;
167
+ }
168
+ return match;
169
+ });
170
+ return modified;
171
+ }
129
172
  async run() {
130
173
  this.logger = await Logger.child(this.ctor.name);
131
174
  const startTime = Date.now();
132
175
  const { flags } = await this.parse(RflibLoggingApexInstrument);
133
176
  const sourcePath = flags.sourcepath;
134
177
  const isDryRun = flags.dryrun;
135
- const usePrettier = flags.prettier;
178
+ const instrumentationFlags = {
179
+ prettier: flags.prettier,
180
+ noIf: flags['no-if'],
181
+ };
136
182
  this.log(`Scanning Apex classes in ${sourcePath} and sub directories`);
183
+ this.logger.debug(`Dry run mode: ${flags.dryrun}`);
137
184
  this.spinner.start('Running...');
138
- await this.processDirectory(sourcePath, isDryRun, usePrettier);
185
+ await this.processDirectory(sourcePath, isDryRun, instrumentationFlags);
139
186
  this.spinner.stop();
140
187
  const duration = Date.now() - startTime;
141
188
  this.logger.debug(`Completed instrumentation in ${duration}ms`);
@@ -149,20 +196,20 @@ export default class RflibLoggingApexInstrument extends SfCommand {
149
196
  formattedFiles: this.formattedFiles,
150
197
  };
151
198
  }
152
- async processDirectory(dirPath, isDryRun, usePrettier) {
199
+ async processDirectory(dirPath, isDryRun, flags) {
153
200
  this.logger.debug(`Processing directory: ${dirPath}`);
154
201
  const files = await fs.promises.readdir(dirPath);
155
202
  for (const file of files) {
156
203
  const filePath = path.join(dirPath, file);
157
204
  const stat = await fs.promises.stat(filePath);
158
205
  if (stat.isDirectory()) {
159
- await this.processDirectory(filePath, isDryRun, usePrettier);
206
+ await this.processDirectory(filePath, isDryRun, flags);
160
207
  }
161
208
  else if (file.endsWith('Test.cls')) {
162
209
  await this.processTestFile(filePath, isDryRun);
163
210
  }
164
211
  else if (file.endsWith('.cls')) {
165
- await this.instrumentApexClass(filePath, isDryRun, usePrettier);
212
+ await this.instrumentApexClass(filePath, isDryRun, flags);
166
213
  }
167
214
  }
168
215
  }
@@ -182,7 +229,8 @@ export default class RflibLoggingApexInstrument extends SfCommand {
182
229
  }
183
230
  }
184
231
  }
185
- async instrumentApexClass(filePath, isDryRun, usePrettier) {
232
+ async instrumentApexClass(filePath, isDryRun, flags) {
233
+ const usePrettier = flags.prettier;
186
234
  const className = path.basename(filePath, '.cls');
187
235
  this.logger.debug(`Processing class: ${className}`);
188
236
  try {
@@ -193,6 +241,9 @@ export default class RflibLoggingApexInstrument extends SfCommand {
193
241
  content = RflibLoggingApexInstrument.addLoggerDeclaration(content, className);
194
242
  content = RflibLoggingApexInstrument.processMethodDeclarations(content, loggerVariableName);
195
243
  content = RflibLoggingApexInstrument.processCatchBlocks(content, loggerVariableName);
244
+ if (!flags.noIf) {
245
+ content = RflibLoggingApexInstrument.processIfStatements(content, loggerVariableName);
246
+ }
196
247
  if (content !== originalContent) {
197
248
  this.modifiedFiles++;
198
249
  if (!isDryRun) {
@@ -1 +1 @@
1
- {"version":3,"file":"instrument.js","sourceRoot":"","sources":["../../../../../src/commands/rflib/logging/apex/instrument.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"instrument.js","sourceRoot":"","sources":["../../../../../src/commands/rflib/logging/apex/instrument.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,7 @@ export default class RflibLoggingAuraInstrument extends SfCommand<RflibLoggingAu
12
12
  sourcepath: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
13
13
  dryrun: import("@oclif/core/interfaces").BooleanFlag<boolean>;
14
14
  prettier: import("@oclif/core/interfaces").BooleanFlag<boolean>;
15
+ 'no-if': import("@oclif/core/interfaces").BooleanFlag<boolean>;
15
16
  };
16
17
  private logger;
17
18
  private processedFiles;
@@ -21,6 +22,7 @@ export default class RflibLoggingAuraInstrument extends SfCommand<RflibLoggingAu
21
22
  private static processMethodLogging;
22
23
  private static processPromiseChains;
23
24
  private static processTryCatchBlocks;
25
+ private static processIfStatements;
24
26
  run(): Promise<RflibLoggingAuraInstrumentResult>;
25
27
  private processDirectory;
26
28
  private processAuraComponents;
@@ -16,6 +16,8 @@ const loggerVarRegex = /var\s+(\w+)\s*=\s*component\.find\(['"](\w+)['"]\)/;
16
16
  const methodRegex = /(\b\w+)\s*:\s*function\s*\((.*?)\)\s*{((?:[^{}]|{(?:[^{}]|{(?:[^{}]|{(?:[^{}]|{(?:[^{}]|{[^{}]*})*})*})*})*})*?)}/g;
17
17
  const promiseChainRegex = /\.(then|catch|finally)\s*\(\s*(?:async\s+)?(?:\(?([^)]*)\)?)?\s*=>\s*(?:{([\s\S]*?)}|([^{].*?)(?=\.|\)|\n|;|$))/g;
18
18
  const tryCatchBlockRegex = /try\s*{[\s\S]*?}\s*catch\s*\(([^)]*)\)\s*{/g;
19
+ const ifStatementRegex = /if\s*\((.*?)\)\s*(?:{([^]*?(?:(?<!{){(?:[^]*?)}(?!})[^]*?)*)}|([^{].*?)(?=\s*(?:;|$));)/g;
20
+ const elseRegex = /}\s*else(?!\s+if\b)\s*(?:{((?:[^{}]|{(?:[^{}]|{[^{}]*})*})*)}|([^{].*?)(?=\n|;|$))/g;
19
21
  export default class RflibLoggingAuraInstrument extends SfCommand {
20
22
  static summary = messages.getMessage('summary');
21
23
  static description = messages.getMessage('description');
@@ -39,6 +41,9 @@ export default class RflibLoggingAuraInstrument extends SfCommand {
39
41
  summary: messages.getMessage('flags.prettier.summary'),
40
42
  description: messages.getMessage('flags.prettier.description'),
41
43
  }),
44
+ 'no-if': Flags.boolean({
45
+ summary: messages.getMessage('flags.no-if.summary'),
46
+ }),
42
47
  };
43
48
  logger;
44
49
  processedFiles = 0;
@@ -50,13 +55,16 @@ export default class RflibLoggingAuraInstrument extends SfCommand {
50
55
  tabWidth: 4,
51
56
  useTabs: false,
52
57
  singleQuote: true,
53
- trailingComma: "none"
58
+ trailingComma: 'none',
54
59
  };
55
- static processMethodLogging(logger, content, loggerId, filePath) {
60
+ static processMethodLogging(logger, content, loggerId, filePath, flags) {
56
61
  const isHelper = filePath.endsWith('Helper.js');
57
62
  return content.replace(methodRegex, (match, methodName, params, body) => {
58
63
  logger.trace(`Processing method: ${methodName}`);
59
- const paramList = params.split(',').map(p => p.trim()).filter(p => p);
64
+ const paramList = params
65
+ .split(',')
66
+ .map((p) => p.trim())
67
+ .filter((p) => p);
60
68
  let loggerVar = 'logger';
61
69
  let bodyContent = body;
62
70
  // Prepare logging parameters
@@ -69,15 +77,20 @@ export default class RflibLoggingAuraInstrument extends SfCommand {
69
77
  loggerVar = loggerMatch[1];
70
78
  // Insert log after existing logger declaration
71
79
  const loggerIndex = body.indexOf(loggerMatch[0]) + loggerMatch[0].length;
72
- bodyContent = body.slice(0, loggerIndex) +
73
- `\n ${loggerVar}.info('${methodName}(${placeholders})'${logParams});` +
74
- body.slice(loggerIndex);
80
+ bodyContent =
81
+ body.slice(0, loggerIndex) +
82
+ `\n ${loggerVar}.info('${methodName}(${placeholders})'${logParams});` +
83
+ body.slice(loggerIndex);
75
84
  }
76
85
  else {
77
86
  // Add new logger and log statement
78
87
  const loggerInit = `var ${loggerVar} = ${paramList[0]}.find('${loggerId}');\n`;
79
88
  bodyContent = `\n ${loggerInit} ${loggerVar}.info('${methodName}(${placeholders})'${logParams});${body}`;
80
89
  }
90
+ // Then handle if statements
91
+ if (!flags.noIf) {
92
+ bodyContent = this.processIfStatements(bodyContent, loggerVar);
93
+ }
81
94
  return `${methodName}: function(${params}) {${bodyContent}}`;
82
95
  });
83
96
  }
@@ -117,13 +130,55 @@ export default class RflibLoggingAuraInstrument extends SfCommand {
117
130
  logger.error('An error occurred', ${errorVar});`);
118
131
  });
119
132
  }
133
+ static processIfStatements(content, loggerName) {
134
+ const conditions = [];
135
+ // Process if statements and store conditions with positions
136
+ let modified = content.replace(ifStatementRegex, (match, condition, blockBody, singleLineBody, offset) => {
137
+ const cleanedUpCondition = condition.trim().replaceAll("'", "\\'");
138
+ conditions.push({
139
+ condition: cleanedUpCondition,
140
+ position: offset,
141
+ });
142
+ const logStatement = `${loggerName}.debug('if (${cleanedUpCondition})');\n `;
143
+ if (blockBody) {
144
+ return `if (${condition}) {\n ${logStatement}${blockBody}}`;
145
+ }
146
+ else if (singleLineBody) {
147
+ const cleanBody = singleLineBody.replace(/;$/, '').trim();
148
+ return `if (${condition}) {\n ${logStatement}${cleanBody};\n }`;
149
+ }
150
+ return match;
151
+ });
152
+ // Process else blocks using nearest if condition
153
+ modified = modified.replace(elseRegex, (match, blockBody, singleLineBody, offset) => {
154
+ // Find last if statement before this else
155
+ const nearestIf = conditions
156
+ .filter((c) => c.position < offset)
157
+ .reduce((prev, curr) => (!prev || curr.position > prev.position ? curr : prev));
158
+ const logStatement = nearestIf
159
+ ? `${loggerName}.debug('else for if (${nearestIf.condition})');\n `
160
+ : `${loggerName}.debug('else statement');\n `;
161
+ if (blockBody) {
162
+ return `} else {\n ${logStatement}${blockBody}}`;
163
+ }
164
+ else if (singleLineBody) {
165
+ return `} else {\n ${logStatement}${singleLineBody};\n }`;
166
+ }
167
+ return match;
168
+ });
169
+ return modified;
170
+ }
120
171
  async run() {
121
172
  this.logger = await Logger.child(this.ctor.name);
122
173
  const { flags } = await this.parse(RflibLoggingAuraInstrument);
174
+ const instrumentationFlags = {
175
+ prettier: flags.prettier,
176
+ noIf: flags['no-if'],
177
+ };
123
178
  this.log(`Starting Aura component instrumentation in ${flags.sourcepath}`);
124
179
  this.logger.debug(`Dry run mode: ${flags.dryrun}`);
125
180
  this.spinner.start('Running...');
126
- await this.processDirectory(flags.sourcepath, flags.dryrun, flags.prettier);
181
+ await this.processDirectory(flags.sourcepath, flags.dryrun, instrumentationFlags);
127
182
  this.spinner.stop();
128
183
  this.log(`\nInstrumentation complete.`);
129
184
  this.log(`Processed files: ${this.processedFiles}`);
@@ -135,14 +190,14 @@ export default class RflibLoggingAuraInstrument extends SfCommand {
135
190
  formattedFiles: this.formattedFiles,
136
191
  };
137
192
  }
138
- async processDirectory(dirPath, isDryRun, usePrettier) {
193
+ async processDirectory(dirPath, isDryRun, flags) {
139
194
  this.logger.debug(`Processing directory: ${dirPath}`);
140
195
  // Check if path is direct component
141
196
  const dirName = path.basename(dirPath);
142
197
  const parentDir = path.basename(path.dirname(dirPath));
143
198
  if (parentDir === 'aura') {
144
199
  this.logger.info(`Processing single component: ${dirName}`);
145
- await this.processAuraComponent(dirPath, dirName, isDryRun, usePrettier);
200
+ await this.processAuraComponent(dirPath, dirName, isDryRun, flags);
146
201
  return;
147
202
  }
148
203
  const entries = await fs.promises.readdir(dirPath, { withFileTypes: true });
@@ -152,15 +207,15 @@ export default class RflibLoggingAuraInstrument extends SfCommand {
152
207
  if (entry.isDirectory()) {
153
208
  if (entry.name === 'aura') {
154
209
  this.logger.info(`Found Aura directory: ${fullPath}`);
155
- await this.processAuraComponents(fullPath, isDryRun, usePrettier);
210
+ await this.processAuraComponents(fullPath, isDryRun, flags);
156
211
  }
157
212
  else {
158
- await this.processDirectory(fullPath, isDryRun, usePrettier);
213
+ await this.processDirectory(fullPath, isDryRun, flags);
159
214
  }
160
215
  }
161
216
  }
162
217
  }
163
- async processAuraComponents(auraPath, isDryRun, usePrettier) {
218
+ async processAuraComponents(auraPath, isDryRun, flags) {
164
219
  // Check if path is already an aura directory
165
220
  if (path.basename(auraPath) !== 'aura') {
166
221
  this.logger.warn(`Not an aura directory: ${auraPath}`);
@@ -170,11 +225,11 @@ export default class RflibLoggingAuraInstrument extends SfCommand {
170
225
  for (const entry of entries) {
171
226
  if (entry.isDirectory()) {
172
227
  const componentPath = path.join(auraPath, entry.name);
173
- await this.processAuraComponent(componentPath, entry.name, isDryRun, usePrettier);
228
+ await this.processAuraComponent(componentPath, entry.name, isDryRun, flags);
174
229
  }
175
230
  }
176
231
  }
177
- async processAuraComponent(componentPath, componentName, isDryRun, usePrettier) {
232
+ async processAuraComponent(componentPath, componentName, isDryRun, flags) {
178
233
  this.logger.info(`Processing Aura component: ${componentName}`);
179
234
  const cmpPath = path.join(componentPath, `${componentName}.cmp`);
180
235
  const controllerPath = path.join(componentPath, `${componentName}Controller.js`);
@@ -183,9 +238,9 @@ export default class RflibLoggingAuraInstrument extends SfCommand {
183
238
  try {
184
239
  const loggerId = await this.instrumentCmpFile(cmpPath, componentName, isDryRun);
185
240
  this.logger.debug(`Using logger ID: ${loggerId}`);
186
- await this.instrumentJsFile(controllerPath, loggerId, isDryRun, usePrettier);
187
- await this.instrumentJsFile(helperPath, loggerId, isDryRun, usePrettier);
188
- await this.instrumentJsFile(rendererPath, loggerId, isDryRun, usePrettier);
241
+ await this.instrumentJsFile(controllerPath, loggerId, isDryRun, flags);
242
+ await this.instrumentJsFile(helperPath, loggerId, isDryRun, flags);
243
+ await this.instrumentJsFile(rendererPath, loggerId, isDryRun, flags);
189
244
  }
190
245
  catch (error) {
191
246
  this.logger.error(`Error processing Aura ${componentName}`, error);
@@ -218,7 +273,7 @@ export default class RflibLoggingAuraInstrument extends SfCommand {
218
273
  }
219
274
  return 'logger';
220
275
  }
221
- async instrumentJsFile(filePath, loggerId, isDryRun, usePrettier) {
276
+ async instrumentJsFile(filePath, loggerId, isDryRun, flags) {
222
277
  if (!fs.existsSync(filePath)) {
223
278
  this.logger.debug(`JavaScript file not found: ${filePath}`);
224
279
  return;
@@ -227,8 +282,9 @@ export default class RflibLoggingAuraInstrument extends SfCommand {
227
282
  this.processedFiles++;
228
283
  let content = await fs.promises.readFile(filePath, 'utf8');
229
284
  const originalContent = content;
285
+ const usePrettier = flags.prettier;
230
286
  // Process methods
231
- content = RflibLoggingAuraInstrument.processMethodLogging(this.logger, content, loggerId, filePath);
287
+ content = RflibLoggingAuraInstrument.processMethodLogging(this.logger, content, loggerId, filePath, flags);
232
288
  content = RflibLoggingAuraInstrument.processPromiseChains(content);
233
289
  content = RflibLoggingAuraInstrument.processTryCatchBlocks(content);
234
290
  if (content !== originalContent) {
@@ -1 +1 @@
1
- {"version":3,"file":"instrument.js","sourceRoot":"","sources":["../../../../../src/commands/rflib/logging/aura/instrument.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"instrument.js","sourceRoot":"","sources":["../../../../../src/commands/rflib/logging/aura/instrument.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,7 @@ export default class RflibLoggingLwcInstrument extends SfCommand<RflibLoggingLwc
12
12
  sourcepath: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
13
13
  dryrun: import("@oclif/core/interfaces").BooleanFlag<boolean>;
14
14
  prettier: import("@oclif/core/interfaces").BooleanFlag<boolean>;
15
+ 'no-if': import("@oclif/core/interfaces").BooleanFlag<boolean>;
15
16
  };
16
17
  private logger;
17
18
  private processedFiles;
@@ -14,8 +14,8 @@ const importRegex = /import\s*{\s*createLogger\s*}\s*from\s*['"]c\/rflibLogger['
14
14
  const loggerRegex = /const\s+(\w+)\s*=\s*createLogger\s*\(['"]([\w-]+)['"]\)/;
15
15
  const methodRegex = /(?:async\s+)?(?!(?:if|switch|case|while|for|catch)\b)(\b\w+)\s*\((.*?)\)\s*{/g;
16
16
  const exportDefaultRegex = /export\s+default\s+class\s+(\w+)/;
17
- const ifStatementRegex = /if\s*\((.*?)\)\s*{([\s\S]*?)}|if\s*\((.*?)\)\s*([^{\n].*?)(?=\n|$)/g;
18
- const elseRegex = /}\s*else\s*{([\s\S]*?)}|}\s*else\s+([^{\n].*?)(?=\n|$)/g;
17
+ const ifStatementRegex = /if\s*\((.*?)\)\s*(?:{([^]*?(?:(?<!{){(?:[^]*?)}(?!})[^]*?)*)}|([^{].*?)(?=\s*(?:;|$));)/g;
18
+ const elseRegex = /}\s*else(?!\s+if\b)\s*(?:{((?:[^{}]|{(?:[^{}]|{[^{}]*})*})*)}|([^{].*?)(?=\n|;|$))/g;
19
19
  const promiseChainRegex = /\.(then|catch|finally)\s*\(\s*(?:async\s+)?(?:\(?([^)]*)\)?)?\s*=>\s*(?:\{((?:[^{}]|`[^`]*`)*?)\}|([^{;]*(?:\([^)]*\))*)(?=(?:\)\))|\)|\.))/g;
20
20
  const tryCatchBlockRegex = /try\s*{[\s\S]*?}\s*catch\s*\(([^)]*)\)\s*{/g;
21
21
  export default class RflibLoggingLwcInstrument extends SfCommand {
@@ -41,6 +41,9 @@ export default class RflibLoggingLwcInstrument extends SfCommand {
41
41
  summary: messages.getMessage('flags.prettier.summary'),
42
42
  description: messages.getMessage('flags.prettier.description'),
43
43
  }),
44
+ 'no-if': Flags.boolean({
45
+ summary: messages.getMessage('flags.no-if.summary'),
46
+ }),
44
47
  };
45
48
  logger;
46
49
  processedFiles = 0;
@@ -84,32 +87,44 @@ export default class RflibLoggingLwcInstrument extends SfCommand {
84
87
  return closestMethod ? closestMethod[1] : 'unknown';
85
88
  }
86
89
  static processIfStatements(content, loggerName) {
87
- let lastCondition = '';
88
- // First process if statements and store conditions
89
- let modified = content.replace(ifStatementRegex, (match, blockCondition, blockBody, lineCondition, lineBody) => {
90
- const condition = typeof blockCondition === 'string' ? blockCondition : typeof lineCondition === 'string' ? lineCondition : '';
91
- lastCondition = condition.trim();
92
- const logStatement = `${loggerName}.debug(\`if (${lastCondition})\`);`;
90
+ const conditions = [];
91
+ // Process if statements and store conditions with positions
92
+ let modified = content.replace(ifStatementRegex, (match, condition, blockBody, singleLineBody, offset) => {
93
+ const cleanedUpCondition = condition.trim().replaceAll("'", "\\'");
94
+ conditions.push({
95
+ condition: cleanedUpCondition,
96
+ position: offset,
97
+ });
98
+ const logStatement = `${loggerName}.debug('if (${cleanedUpCondition})');\n `;
93
99
  if (blockBody) {
94
100
  return `if (${condition}) {\n ${logStatement}${blockBody}}`;
95
101
  }
96
- else {
97
- return `if (${condition}) {\n ${logStatement}\n ${lineBody}\n }`;
102
+ else if (singleLineBody) {
103
+ const cleanBody = singleLineBody.replace(/;$/, '').trim();
104
+ return `if (${condition}) {\n ${logStatement}${cleanBody};\n }`;
98
105
  }
106
+ return match;
99
107
  });
100
- // Then process else blocks using stored condition
101
- modified = modified.replace(elseRegex, (match, blockBody, lineBody) => {
102
- const logStatement = `${loggerName}.debug(\`else for if (${lastCondition})\`);`;
108
+ // Process else blocks using nearest if condition
109
+ modified = modified.replace(elseRegex, (match, blockBody, singleLineBody, offset) => {
110
+ // Find last if statement before this else
111
+ const nearestIf = conditions
112
+ .filter((c) => c.position <= offset)
113
+ .reduce((prev, curr) => (!prev || curr.position > prev.position ? curr : prev));
114
+ const logStatement = nearestIf
115
+ ? `${loggerName}.debug('else for if (${nearestIf.condition})');\n `
116
+ : `${loggerName}.debug('else statement');\n `;
103
117
  if (blockBody) {
104
118
  return `} else {\n ${logStatement}${blockBody}}`;
105
119
  }
106
- else {
107
- return `} else {\n ${logStatement}\n ${lineBody}\n }`;
120
+ else if (singleLineBody) {
121
+ return `} else {\n ${logStatement}${singleLineBody};\n }`;
108
122
  }
123
+ return match;
109
124
  });
110
125
  return modified;
111
126
  }
112
- static processMethodLogging(content, loggerName) {
127
+ static processMethodLogging(content, loggerName, flags) {
113
128
  // First handle methods
114
129
  let modified = content.replace(methodRegex, (match, methodName, args) => {
115
130
  const parameters = args
@@ -121,7 +136,9 @@ export default class RflibLoggingLwcInstrument extends SfCommand {
121
136
  return `${match}\n ${loggerName}.info('${methodName}(${placeholders})'${logArgs});`;
122
137
  });
123
138
  // Then handle if statements
124
- modified = this.processIfStatements(modified, loggerName);
139
+ if (!flags.noIf) {
140
+ modified = this.processIfStatements(modified, loggerName);
141
+ }
125
142
  return modified;
126
143
  }
127
144
  static processPromiseChains(content, loggerName) {
@@ -170,9 +187,13 @@ export default class RflibLoggingLwcInstrument extends SfCommand {
170
187
  async run() {
171
188
  this.logger = await Logger.child(this.ctor.name);
172
189
  const { flags } = await this.parse(RflibLoggingLwcInstrument);
190
+ const instrumentationFlags = {
191
+ prettier: flags.prettier,
192
+ noIf: flags['no-if'],
193
+ };
173
194
  this.log(`Scanning LWC components in ${flags.sourcepath}...`);
174
195
  this.spinner.start('Running...');
175
- await this.processDirectory(flags.sourcepath, flags.dryrun, flags.prettier);
196
+ await this.processDirectory(flags.sourcepath, flags.dryrun, instrumentationFlags);
176
197
  this.spinner.stop();
177
198
  this.log(`\nInstrumentation complete.`);
178
199
  this.log(`Processed files: ${this.processedFiles}`);
@@ -184,29 +205,32 @@ export default class RflibLoggingLwcInstrument extends SfCommand {
184
205
  formattedFiles: this.formattedFiles,
185
206
  };
186
207
  }
187
- async processDirectory(dirPath, isDryRun, usePrettier) {
208
+ async processDirectory(dirPath, isDryRun, flags) {
188
209
  const files = await fs.promises.readdir(dirPath);
189
210
  for (const file of files) {
190
211
  const filePath = path.join(dirPath, file);
191
212
  const stat = await fs.promises.stat(filePath);
192
213
  if (stat.isDirectory()) {
193
- await this.processDirectory(filePath, isDryRun, usePrettier);
214
+ await this.processDirectory(filePath, isDryRun, flags);
194
215
  }
195
- else if (file.endsWith('.js') && !path.dirname(filePath).includes('aura') && !path.dirname(filePath).includes('__tests__')) {
196
- await this.instrumentLwcFile(filePath, isDryRun, usePrettier);
216
+ else if (file.endsWith('.js') &&
217
+ !path.dirname(filePath).includes('aura') &&
218
+ !path.dirname(filePath).includes('__tests__')) {
219
+ await this.instrumentLwcFile(filePath, isDryRun, flags);
197
220
  }
198
221
  }
199
222
  }
200
- async instrumentLwcFile(filePath, isDryRun, usePrettier) {
223
+ async instrumentLwcFile(filePath, isDryRun, flags) {
201
224
  const componentName = path.basename(path.dirname(filePath));
202
225
  this.logger.debug(`Processing LWC: ${componentName}`);
226
+ const usePrettier = flags.prettier;
203
227
  try {
204
228
  this.processedFiles++;
205
229
  let content = await fs.promises.readFile(filePath, 'utf8');
206
230
  const originalContent = content;
207
231
  const { loggerName } = RflibLoggingLwcInstrument.detectExistingLogger(content);
208
232
  content = RflibLoggingLwcInstrument.addImportAndLogger(content, componentName);
209
- content = RflibLoggingLwcInstrument.processMethodLogging(content, loggerName);
233
+ content = RflibLoggingLwcInstrument.processMethodLogging(content, loggerName, flags);
210
234
  content = RflibLoggingLwcInstrument.processTryCatchBlocks(content, loggerName);
211
235
  content = RflibLoggingLwcInstrument.processPromiseChains(content, loggerName);
212
236
  if (content !== originalContent) {