sfdx-hardis 6.21.0 → 6.21.2-beta202601121655.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.
@@ -5,6 +5,7 @@ type FieldUsageRow = {
5
5
  sObjectName: string;
6
6
  fieldApiName: string;
7
7
  fieldLabel: string;
8
+ fieldCreatedDate: string;
8
9
  totalRecords: number;
9
10
  populatedRecords: number;
10
11
  populatedPercentageNumeric: number;
@@ -27,7 +28,10 @@ export default class HardisDocObjectFieldUsage extends SfCommand<any> {
27
28
  static flags: any;
28
29
  protected identifierRegex: RegExp;
29
30
  protected compositeBatchSize: number;
31
+ protected toolingCustomFieldBatchSize: number;
30
32
  protected objectsPromptSentinel: string;
33
+ protected formatDateOnly(value: any): string;
34
+ protected fetchFieldCreatedDates(connection: Connection, sObjectName: string, fieldApiNames: string[]): Promise<Record<string, string>>;
31
35
  protected validateIdentifier(identifier: string, label: string): void;
32
36
  protected extractCount(result: any): number;
33
37
  protected countRecords(connection: Connection, sObjectName: string, useTooling: boolean, fieldName?: string): Promise<number>;
@@ -3,12 +3,13 @@ import { Flags, SfCommand, requiredOrgFlagWithDeprecations } from '@salesforce/s
3
3
  import { Messages } from '@salesforce/core';
4
4
  import c from 'chalk';
5
5
  import sortArray from 'sort-array';
6
- import { generateReports, isCI, uxLog } from '../../../common/utils/index.js';
6
+ import { generateReports, isCI, uxLog, uxLogTable } from '../../../common/utils/index.js';
7
7
  import { soqlQuery, soqlQueryTooling } from '../../../common/utils/apiUtils.js';
8
8
  import { prompts } from '../../../common/utils/prompts.js';
9
9
  import { createXlsxFromCsvFiles, generateCsvFile, generateReportPath } from '../../../common/utils/filesUtils.js';
10
10
  import { WebSocketClient } from '../../../common/websocketClient.js';
11
11
  import { listOrgSObjects } from '../../../common/utils/orgUtils.js';
12
+ import { isManagedApiName } from '../../../common/utils/projectUtils.js';
12
13
  Messages.importMessagesDirectoryFromMetaUrl(import.meta.url);
13
14
  const messages = Messages.loadMessages("sfdx-hardis", "org");
14
15
  export default class HardisDocObjectFieldUsage extends SfCommand {
@@ -52,7 +53,66 @@ This command focuses on one or more sObjects and measures how many records popul
52
53
  };
53
54
  identifierRegex = /^[A-Za-z][A-Za-z0-9_]*$/;
54
55
  compositeBatchSize = 5;
56
+ toolingCustomFieldBatchSize = 80;
55
57
  objectsPromptSentinel = '__PROMPT_OBJECTS__';
58
+ formatDateOnly(value) {
59
+ if (!value) {
60
+ return 'N/A';
61
+ }
62
+ try {
63
+ return new Date(value).toISOString().split('T')[0];
64
+ }
65
+ catch {
66
+ return 'N/A';
67
+ }
68
+ }
69
+ async fetchFieldCreatedDates(connection, sObjectName, fieldApiNames) {
70
+ const createdDateByField = {};
71
+ if (!fieldApiNames.length) {
72
+ return createdDateByField;
73
+ }
74
+ // We only analyze custom fields in this command, and Tooling CustomField exposes CreatedDate.
75
+ // FieldDefinition does NOT expose CreatedDate in Tooling API.
76
+ try {
77
+ const objectDeveloperName = sObjectName.endsWith('__c') ? sObjectName.replace(/__c$/, '') : sObjectName;
78
+ const customObjectRes = await soqlQueryTooling(`SELECT Id FROM CustomObject WHERE DeveloperName = '${objectDeveloperName.replace(/'/g, "\\'")}' LIMIT 1`, connection);
79
+ const tableEnumOrId = customObjectRes?.records?.[0]?.Id || sObjectName;
80
+ const requestedApiNames = fieldApiNames.filter((name) => typeof name === 'string' && name.length > 0);
81
+ const developerNames = Array.from(new Set(requestedApiNames
82
+ .filter((name) => name.endsWith('__c'))
83
+ .map((name) => {
84
+ if (isManagedApiName(name)) {
85
+ // ns__Field__c -> DeveloperName = Field
86
+ const parts = name.split('__');
87
+ return parts[1] || name.replace(/__c$/, '');
88
+ }
89
+ return name.replace(/__c$/, '');
90
+ })));
91
+ for (let i = 0; i < developerNames.length; i += this.toolingCustomFieldBatchSize) {
92
+ const chunk = developerNames.slice(i, i + this.toolingCustomFieldBatchSize);
93
+ const inClause = chunk.map((name) => `'${name.replace(/'/g, "\\'")}'`).join(',');
94
+ const query = `SELECT DeveloperName, NamespacePrefix, CreatedDate ` +
95
+ `FROM CustomField ` +
96
+ `WHERE TableEnumOrId = '${String(tableEnumOrId).replace(/'/g, "\\'")}' ` +
97
+ `AND DeveloperName IN (${inClause})`;
98
+ const res = await soqlQueryTooling(query, connection);
99
+ for (const record of res?.records || []) {
100
+ const devName = record?.DeveloperName;
101
+ if (!devName) {
102
+ continue;
103
+ }
104
+ const ns = record?.NamespacePrefix;
105
+ const apiName = `${ns ? ns + '__' : ''}${devName}__c`;
106
+ createdDateByField[apiName] = this.formatDateOnly(record?.CreatedDate);
107
+ }
108
+ }
109
+ }
110
+ catch (error) {
111
+ uxLog('warning', this, c.yellow(`Unable to query Tooling CustomField for created dates on ${sObjectName}. ` +
112
+ `Created Date column will be set to N/A. Error: ${error?.message || error}`));
113
+ }
114
+ return createdDateByField;
115
+ }
56
116
  validateIdentifier(identifier, label) {
57
117
  if (!this.identifierRegex.test(identifier)) {
58
118
  throw new Error(`Invalid ${label} name: ${identifier}`);
@@ -218,6 +278,7 @@ This command focuses on one or more sObjects and measures how many records popul
218
278
  uxLog("log", this, c.cyan(`Counting total ${sObjectName} records...`));
219
279
  const totalRecords = await this.countRecords(connection, sObjectName, useTooling);
220
280
  const skippedFields = [];
281
+ const fieldCreatedDates = await this.fetchFieldCreatedDates(connection, sObjectName, eligibleFields.map((f) => f.name).filter((name) => typeof name === 'string' && name.length > 0));
221
282
  const fieldCounts = await this.countFieldsWithComposite(connection, sObjectName, eligibleFields, useTooling, skippedFields);
222
283
  const rows = [];
223
284
  for (const field of eligibleFields) {
@@ -233,6 +294,7 @@ This command focuses on one or more sObjects and measures how many records popul
233
294
  sObjectName,
234
295
  fieldApiName: field.name,
235
296
  fieldLabel: field.label || field.name,
297
+ fieldCreatedDate: fieldCreatedDates[field.name] || 'N/A',
236
298
  totalRecords,
237
299
  populatedRecords,
238
300
  populatedPercentageNumeric: percentage,
@@ -260,6 +322,7 @@ This command focuses on one or more sObjects and measures how many records popul
260
322
  sObjectName: row.sObjectName,
261
323
  fieldApiName: row.fieldApiName,
262
324
  fieldLabel: row.fieldLabel,
325
+ fieldCreatedDate: row.fieldCreatedDate,
263
326
  totalRecords: row.totalRecords,
264
327
  populatedRecords: row.populatedRecords,
265
328
  populatedPercentage: row.populatedPercentage,
@@ -267,6 +330,7 @@ This command focuses on one or more sObjects and measures how many records popul
267
330
  await generateCsvFile(csvData, csvPath, {
268
331
  fileTitle,
269
332
  noExcel: true,
333
+ skipNotifyToWebSocket: true,
270
334
  });
271
335
  return csvPath;
272
336
  }
@@ -309,7 +373,8 @@ This command focuses on one or more sObjects and measures how many records popul
309
373
  return sum;
310
374
  }
311
375
  const compositeCalls = Math.ceil(eligibleCount / this.compositeBatchSize);
312
- return sum + 1 + compositeCalls; // 1 for total records + composite batches
376
+ const createdDateCalls = Math.ceil(eligibleCount / this.toolingCustomFieldBatchSize) || 1;
377
+ return sum + 1 + createdDateCalls + compositeCalls; // total count + CustomField chunks + composite batches
313
378
  }, 0);
314
379
  }
315
380
  async confirmApiUsage(plannedCalls, objectNames) {
@@ -394,7 +459,16 @@ This command focuses on one or more sObjects and measures how many records popul
394
459
  const context = await this.describeTarget(connection, sObjectName);
395
460
  uxLog("log", this, c.grey(`Using ${context.useTooling ? 'Tooling' : 'standard'} API for ${sObjectName}.`));
396
461
  const eligibleFields = this.filterDescribeFields(context.describeResult?.fields || []);
397
- objectContexts.push({ sObjectName, ...context, eligibleFields });
462
+ // Filter eligible fields to remove those with namespaces
463
+ const eligibleFieldsFiltered = eligibleFields.filter((field) => {
464
+ if (isManagedApiName(field.name) && !fieldsInput.includes(field.name)) {
465
+ return false;
466
+ }
467
+ return true;
468
+ });
469
+ if (eligibleFieldsFiltered.length > 0) {
470
+ objectContexts.push({ sObjectName, ...context, eligibleFields: eligibleFieldsFiltered });
471
+ }
398
472
  WebSocketClient.sendProgressStepMessage(counter + 1, uniqueObjects.length);
399
473
  counter++;
400
474
  }
@@ -424,6 +498,25 @@ This command focuses on one or more sObjects and measures how many records popul
424
498
  aggregatedReportFiles.push(...(singleResult.reportFiles || []));
425
499
  totalRecords = singleResult.totalRecords ?? totalRecords;
426
500
  }
501
+ uxLog("action", this, c.cyan(`Summary:`));
502
+ const fieldSummaryRows = fieldsInput.map((fieldApiName) => {
503
+ const distinctValues = aggregatedResults.filter((r) => r?.fieldApiName === fieldApiName).length;
504
+ return {
505
+ sObjectName: context.sObjectName,
506
+ fieldApiName,
507
+ distinctValues,
508
+ totalRecords: totalRecords ?? 'N/A',
509
+ };
510
+ });
511
+ if (fieldSummaryRows.length > 0) {
512
+ uxLogTable(this, fieldSummaryRows, ['sObjectName', 'fieldApiName', 'distinctValues', 'totalRecords']);
513
+ }
514
+ if (aggregatedReportFiles.length > 0) {
515
+ uxLog("log", this, c.grey('Report files:'));
516
+ for (const rf of aggregatedReportFiles) {
517
+ uxLog("log", this, c.grey(`- ${rf?.type || 'file'}: ${rf?.file || ''}`));
518
+ }
519
+ }
427
520
  return {
428
521
  outputString: `Processed value distribution for ${context.sObjectName} fields: ${fieldsInput.join(', ')}.`,
429
522
  result: aggregatedResults,
@@ -476,10 +569,51 @@ This command focuses on one or more sObjects and measures how many records popul
476
569
  }
477
570
  if (csvFilesForXlsx.length > 0) {
478
571
  const consolidatedBase = await generateReportPath('object-field-usage', '', { withDate: true });
572
+ uxLog("action", this, c.cyan(`Generating consolidated XLSX report...`));
479
573
  await createXlsxFromCsvFiles(csvFilesForXlsx, consolidatedBase, { fileTitle: 'Object field usage (all)' });
480
574
  const consolidatedXlsx = path.join(path.dirname(consolidatedBase), 'xls', path.basename(consolidatedBase).replace('.csv', '.xlsx'));
481
575
  reportFiles.push({ type: 'xlsx', file: consolidatedXlsx });
482
576
  }
577
+ uxLog("action", this, c.cyan(`Summary:`));
578
+ const perObjectSummary = objectContexts.map((context) => {
579
+ const rows = perObjectRows[context.sObjectName] || [];
580
+ const skippedCount = aggregatedSkipped.filter((s) => s.sObjectName === context.sObjectName).length;
581
+ const neverUsedFields = rows.filter((r) => (r?.populatedPercentageNumeric ?? 0) === 0).length;
582
+ const mostPopulated = rows.length > 0 ? rows[0] : null;
583
+ const leastPopulated = rows.length > 0 ? rows[rows.length - 1] : null;
584
+ return {
585
+ sObjectName: context.sObjectName,
586
+ totalRecords: totalRecordsMap[context.sObjectName] ?? 0,
587
+ fieldsAnalyzed: rows.length,
588
+ neverUsedFields,
589
+ skippedFields: skippedCount,
590
+ mostPopulated: mostPopulated ? `${mostPopulated.fieldApiName} (${mostPopulated.populatedPercentage})` : 'N/A',
591
+ leastPopulated: leastPopulated ? `${leastPopulated.fieldApiName} (${leastPopulated.populatedPercentage})` : 'N/A',
592
+ };
593
+ });
594
+ perObjectSummary.sort((a, b) => {
595
+ if (b.neverUsedFields !== a.neverUsedFields) {
596
+ return b.neverUsedFields - a.neverUsedFields;
597
+ }
598
+ if (b.fieldsAnalyzed !== a.fieldsAnalyzed) {
599
+ return b.fieldsAnalyzed - a.fieldsAnalyzed;
600
+ }
601
+ return String(a.sObjectName).localeCompare(String(b.sObjectName));
602
+ });
603
+ const totalFieldsAnalyzed = aggregatedRows.length;
604
+ uxLog("log", this, c.grey(`Analyzed ${objectContexts.length} object(s), ${totalFieldsAnalyzed} field(s) ` +
605
+ `(${aggregatedSkipped.length} skipped).`));
606
+ if (perObjectSummary.length > 0) {
607
+ uxLogTable(this, perObjectSummary, [
608
+ 'sObjectName',
609
+ 'totalRecords',
610
+ 'fieldsAnalyzed',
611
+ 'neverUsedFields',
612
+ 'skippedFields',
613
+ 'mostPopulated',
614
+ 'leastPopulated',
615
+ ]);
616
+ }
483
617
  const outputString = `Processed object field usage for ${objectContexts.length} object(s).`;
484
618
  return {
485
619
  outputString,
@@ -1 +1 @@
1
- {"version":3,"file":"object-field-usage.js","sourceRoot":"","sources":["../../../../src/commands/hardis/doc/object-field-usage.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"object-field-usage.js","sourceRoot":"","sources":["../../../../src/commands/hardis/doc/object-field-usage.ts"],"names":[],"mappings":"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"}
@@ -191,6 +191,7 @@ export interface ExcelExportOptions {
191
191
  xlsFileTitle?: string;
192
192
  noExcel?: boolean;
193
193
  columnsCustomStyles?: Record<string, ExcelColumnStyle>;
194
+ skipNotifyToWebSocket?: boolean;
194
195
  }
195
196
  export declare function generateCsvFile(data: any[], outputPath: string, options?: ExcelExportOptions): Promise<any>;
196
197
  export declare function createXlsxFromCsv(outputPath: string, options: ExcelExportOptions, result: any): Promise<void>;
@@ -1228,11 +1228,13 @@ export async function generateCsvFile(data, outputPath, options = {}) {
1228
1228
  await fs.writeFile(outputPath, csvContent, 'utf8');
1229
1229
  uxLog("action", this, c.cyan(c.italic(`Please see detailed CSV log in ${c.bold(outputPath)}`)));
1230
1230
  result.csvFile = outputPath;
1231
- if (!WebSocketClient.isAliveWithLwcUI()) {
1231
+ if (!WebSocketClient.isAliveWithLwcUI() && !options?.skipNotifyToWebSocket) {
1232
1232
  WebSocketClient.requestOpenFile(outputPath);
1233
1233
  }
1234
1234
  const csvFileTitle = options?.fileTitle ? `${options.fileTitle} (CSV)` : options?.csvFileTitle ?? "Report (CSV)";
1235
- WebSocketClient.sendReportFileMessage(outputPath, csvFileTitle, "report");
1235
+ if (!options?.skipNotifyToWebSocket) {
1236
+ WebSocketClient.sendReportFileMessage(outputPath, csvFileTitle, "report");
1237
+ }
1236
1238
  if (data.length > 0 && !options?.noExcel) {
1237
1239
  await createXlsxFromCsv(outputPath, options, result);
1238
1240
  }