sfdx-hardis 7.19.2 → 7.20.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.
@@ -0,0 +1,22 @@
1
+ import { SfCommand } from '@salesforce/sf-plugins-core';
2
+ import { AnyJson } from '@salesforce/ts-types';
3
+ export default class Doctor extends SfCommand<any> {
4
+ static title: string;
5
+ static description: string;
6
+ static examples: string[];
7
+ static flags: any;
8
+ static requiresProject: boolean;
9
+ run(): Promise<AnyJson>;
10
+ private gatherInstallInfo;
11
+ private detectCiProvider;
12
+ private enrichWithLatestVersions;
13
+ private getLatestNpmVersion;
14
+ private isOutdated;
15
+ private versionCell;
16
+ private latestCell;
17
+ private buildPluginsBlock;
18
+ private buildEnvironmentRows;
19
+ private buildPluginRows;
20
+ private buildDoctorReport;
21
+ private buildIssueUrl;
22
+ }
@@ -0,0 +1,350 @@
1
+ /* jscpd:ignore-start */
2
+ import { SfCommand, Flags } from '@salesforce/sf-plugins-core';
3
+ import { Messages } from '@salesforce/core';
4
+ import * as os from 'node:os';
5
+ import axios from 'axios';
6
+ import c from 'chalk';
7
+ import open from 'open';
8
+ import semver from 'semver';
9
+ import { getEnvVar } from '../../config/index.js';
10
+ import { isCI, uxLog, uxLogTable } from '../../common/utils/index.js';
11
+ import { prompts } from '../../common/utils/prompts.js';
12
+ import { WebSocketClient } from '../../common/websocketClient.js';
13
+ Messages.importMessagesDirectoryFromMetaUrl(import.meta.url);
14
+ const messages = Messages.loadMessages('sfdx-hardis', 'org');
15
+ const NEW_ISSUE_URL = 'https://github.com/hardisgroupcom/sfdx-hardis/issues/new';
16
+ // Keep the generated URL comfortably under the ~8k browser limit.
17
+ const MAX_ISSUE_URL_LENGTH = 7000;
18
+ // npm package name of the Salesforce CLI (used to check the CLI latest version)
19
+ const SF_CLI_NPM_NAME = '@salesforce/cli';
20
+ export default class Doctor extends SfCommand {
21
+ static title = 'Doctor';
22
+ static description = `
23
+ ## Command Behavior
24
+
25
+ **Collects your local sfdx-hardis install info and helps you open a pre-filled GitHub issue.**
26
+
27
+ This command gathers everything a maintainer usually asks for when investigating a bug, then prints it as a ready-to-paste report and offers to open the sfdx-hardis "New issue" page with the report already filled in.
28
+
29
+ Key functionalities:
30
+
31
+ - **Install info gathering:** sfdx-hardis version, Salesforce CLI version, Node.js version, OS, shell, language and the full list of installed SF CLI plugins with their versions.
32
+ - **Latest version check:** Queries npm for the latest published versions and flags any outdated component (shown as \`(latest: x.y.z)\` in the report). If anything is outdated, it warns you to upgrade first, in case the issue is already fixed in a newer version. Disable with \`--skip-version-check\`.
33
+ - **VS Code extension detection:** When the command runs inside VS Code with the sfdx-hardis extension linked, the extension version is added to the report.
34
+ - **CI detection:** Detects whether it runs in a CI environment and which provider.
35
+ - **Pre-filled GitHub issue:** Builds the "New issue" URL of the sfdx-hardis repository with the report pre-filled in the body, and (interactively) opens it in your browser.
36
+
37
+ The report is always printed in your terminal, so you can copy it manually if the browser page is not enough.
38
+
39
+ <details markdown="1">
40
+ <summary>Technical explanations</summary>
41
+
42
+ - **oclif Config:** Install info is read from the oclif \`Config\` object (\`config.version\`, \`config.shell\`, \`config.plugins\`), so no shell command is executed to list plugins.
43
+ - **Node & OS:** Node version comes from \`process.version\`; OS details come from the Node.js \`os\` module.
44
+ - **Latest versions:** Queried from the npm registry (\`registry.npmjs.org\`) in parallel, with a short timeout and full best-effort handling, then compared with \`semver\`. Core plugins are not flagged, as they are pinned to the Salesforce CLI.
45
+ - **VS Code extension version:** Requested over the existing WebSocket connection (\`getExtensionVersion\` event). The extension answers with its version; the request times out gracefully after a few seconds and reports "not available" if no compatible extension is linked.
46
+ - **Issue URL:** Built as \`https://github.com/hardisgroupcom/sfdx-hardis/issues/new\` with \`title\` and \`body\` query parameters. If the encoded URL would exceed the browser limit, the plugin list is trimmed from the URL body (the full report stays in the terminal).
47
+ - **Browser:** Uses the \`open\` package to launch the default browser after user confirmation.
48
+ </details>
49
+
50
+ ### Agent Mode
51
+
52
+ Supports non-interactive execution with \`--agent\`:
53
+
54
+ \`\`\`sh
55
+ sf hardis:doctor --agent
56
+ \`\`\`
57
+
58
+ In agent mode (or in CI):
59
+ - The install info report and the GitHub issue URL are printed.
60
+ - No prompt is displayed and the browser is never opened.
61
+ `;
62
+ static examples = ['$ sf hardis:doctor', '$ sf hardis:doctor --agent'];
63
+ static flags = {
64
+ agent: Flags.boolean({
65
+ default: false,
66
+ description: 'Run in non-interactive mode for agents and automation',
67
+ }),
68
+ open: Flags.boolean({
69
+ char: 'o',
70
+ default: false,
71
+ description: 'Open the GitHub new issue page directly without prompting',
72
+ }),
73
+ 'skip-version-check': Flags.boolean({
74
+ default: false,
75
+ description: 'Do not query npm for the latest versions (faster, works offline)',
76
+ }),
77
+ debug: Flags.boolean({
78
+ char: 'd',
79
+ default: false,
80
+ description: messages.getMessage('debugMode'),
81
+ }),
82
+ websocket: Flags.string({
83
+ description: messages.getMessage('websocket'),
84
+ }),
85
+ skipauth: Flags.boolean({
86
+ description: 'Skip authentication check when a default username is required',
87
+ }),
88
+ };
89
+ // Set this to true if your command requires a project workspace; 'requiresProject' is false by default
90
+ static requiresProject = false;
91
+ /* jscpd:ignore-end */
92
+ async run() {
93
+ const { flags } = await this.parse(Doctor);
94
+ const agentMode = flags.agent === true;
95
+ uxLog("action", this, c.cyan('Collecting installation info...'));
96
+ // Gather local install info (no shell command needed).
97
+ // Version checking queries npm to flag outdated components (unless skipped).
98
+ const checkVersions = flags['skip-version-check'] !== true;
99
+ const info = await this.gatherInstallInfo(this.config, checkVersions);
100
+ // Best-effort: get VS Code extension version if linked
101
+ const extensionVersion = await WebSocketClient.getExtensionVersion();
102
+ info.vscodeExtensionVersion = extensionVersion || 'not available (run inside VS Code with the extension linked)';
103
+ // Build and print the markdown report (ready to paste into a GitHub issue)
104
+ const report = this.buildDoctorReport(info);
105
+ uxLog("action", this, c.cyan('sfdx-hardis install info (paste this into your GitHub issue):'));
106
+ uxLog("log", this, c.grey(report));
107
+ // Build the pre-filled GitHub issue URL
108
+ const issueUrl = this.buildIssueUrl(report);
109
+ uxLog("other", this, c.cyan(`GitHub new issue page: ${c.yellow(issueUrl)}`));
110
+ // In CI or agent mode: never prompt, never open a browser
111
+ if (isCI || agentMode) {
112
+ return { outputString: report, installInfo: info, issueUrl };
113
+ }
114
+ // Display a readable summary of the gathered info just before prompting.
115
+ // alwaysVisible keeps this section open in the VS Code UI so the tables (and the warning below) stay visible.
116
+ uxLog("action", this, c.cyan('Installation summary'), { alwaysVisible: true });
117
+ uxLogTable(this, this.buildEnvironmentRows(info), ['Item', 'Value']);
118
+ uxLogTable(this, this.buildPluginRows(info), ['Plugin', 'Version', 'Type', 'Latest']);
119
+ // Warn (inside the summary section) if some components are not on their latest version
120
+ if (info.outdatedItems.length > 0) {
121
+ uxLog("warning", this, c.yellow(`Before posting an issue, we detected that you are not using the latest versions of ${info.outdatedItems.join(', ')}. Maybe upgrade them first, to check whether the problem is not already resolved in a more recent version?`));
122
+ }
123
+ // Decide whether to open the browser
124
+ let shouldOpen = flags.open === true;
125
+ if (!shouldOpen) {
126
+ const openRes = await prompts({
127
+ type: 'confirm',
128
+ name: 'value',
129
+ message: c.cyan('Open the GitHub new issue page in your browser now?'),
130
+ description: 'The issue body will be pre-filled with your install info. Complete the bug description before submitting.',
131
+ initial: true,
132
+ });
133
+ shouldOpen = openRes.value === true;
134
+ }
135
+ if (shouldOpen) {
136
+ await open(issueUrl);
137
+ }
138
+ return { outputString: report, installInfo: info, issueUrl };
139
+ }
140
+ // Gather local install info from the oclif config, Node.js and environment.
141
+ // No shell command is executed: plugin versions come from config.plugins.
142
+ // When checkVersions is true, the latest published versions are fetched from npm.
143
+ async gatherInstallInfo(config, checkVersions) {
144
+ const plugins = [];
145
+ for (const plugin of config.plugins?.values?.() ?? []) {
146
+ // Skip oclif framework plugins: they are internal and not useful in an issue report
147
+ if (plugin.name.startsWith('@oclif/')) {
148
+ continue;
149
+ }
150
+ plugins.push({ name: plugin.name, version: plugin.version, type: plugin.type });
151
+ }
152
+ plugins.sort((a, b) => a.name.localeCompare(b.name));
153
+ const sfdxHardisPlugin = plugins.find((plugin) => plugin.name === 'sfdx-hardis');
154
+ const info = {
155
+ sfdxHardisVersion: sfdxHardisPlugin?.version ?? config.pjson?.version ?? 'unknown',
156
+ sfCliVersion: config.version,
157
+ nodeVersion: process.version,
158
+ os: `${os.platform()} ${os.release()} (${os.arch()})`,
159
+ shell: config.shell,
160
+ lang: getEnvVar('SFDX_HARDIS_LANG') || 'en',
161
+ isCI: isCI,
162
+ ciProvider: this.detectCiProvider(),
163
+ plugins: plugins,
164
+ outdatedItems: [],
165
+ };
166
+ if (checkVersions === true) {
167
+ await this.enrichWithLatestVersions(info);
168
+ }
169
+ return info;
170
+ }
171
+ // Best-effort detection of the CI provider from well-known environment variables
172
+ detectCiProvider() {
173
+ if (getEnvVar('GITHUB_ACTIONS'))
174
+ return 'GitHub Actions';
175
+ if (getEnvVar('GITLAB_CI'))
176
+ return 'GitLab CI';
177
+ if (getEnvVar('TF_BUILD'))
178
+ return 'Azure Pipelines';
179
+ if (getEnvVar('BITBUCKET_BUILD_NUMBER'))
180
+ return 'Bitbucket Pipelines';
181
+ if (getEnvVar('CIRCLECI'))
182
+ return 'CircleCI';
183
+ if (getEnvVar('JENKINS_URL'))
184
+ return 'Jenkins';
185
+ if (getEnvVar('CI'))
186
+ return 'Unknown (generic CI)';
187
+ return undefined;
188
+ }
189
+ // Fetches latest versions from npm (in parallel) and fills the outdated flags.
190
+ async enrichWithLatestVersions(info) {
191
+ // A plugin is worth checking when the user can upgrade it independently.
192
+ // Core plugins are pinned to the Salesforce CLI, so upgrading the CLI covers them.
193
+ // The Salesforce CLI itself is checked so its "Latest" cell is populated too.
194
+ const isCheckable = (plugin) => plugin.type === 'user' || plugin.name === 'sfdx-hardis' || plugin.name === SF_CLI_NPM_NAME;
195
+ const checkablePlugins = info.plugins.filter(isCheckable);
196
+ const npmNames = [...new Set([...checkablePlugins.map((plugin) => plugin.name), SF_CLI_NPM_NAME])];
197
+ const latestByName = new Map();
198
+ await Promise.all(npmNames.map(async (name) => {
199
+ latestByName.set(name, await this.getLatestNpmVersion(name));
200
+ }));
201
+ // Plugins
202
+ for (const plugin of checkablePlugins) {
203
+ const latest = latestByName.get(plugin.name) ?? null;
204
+ if (latest) {
205
+ plugin.latest = latest;
206
+ plugin.outdated = this.isOutdated(plugin.version, latest);
207
+ }
208
+ }
209
+ // Salesforce CLI
210
+ const sfCliLatest = latestByName.get(SF_CLI_NPM_NAME) ?? undefined;
211
+ info.sfCliLatest = sfCliLatest;
212
+ info.sfCliOutdated = this.isOutdated(info.sfCliVersion, sfCliLatest);
213
+ // sfdx-hardis (mirror the plugin entry so the dedicated table row is consistent)
214
+ const sfdxHardisPlugin = info.plugins.find((plugin) => plugin.name === 'sfdx-hardis');
215
+ info.sfdxHardisLatest = sfdxHardisPlugin?.latest;
216
+ info.sfdxHardisOutdated = sfdxHardisPlugin?.outdated === true;
217
+ // Build the list of outdated component names for the warning message
218
+ const outdated = [];
219
+ if (info.sfdxHardisOutdated)
220
+ outdated.push('sfdx-hardis');
221
+ if (info.sfCliOutdated)
222
+ outdated.push('Salesforce CLI');
223
+ for (const plugin of checkablePlugins) {
224
+ if (plugin.name !== 'sfdx-hardis' && plugin.outdated === true) {
225
+ outdated.push(plugin.name);
226
+ }
227
+ }
228
+ info.outdatedItems = outdated;
229
+ }
230
+ // Best-effort fetch of the latest published version of an npm package.
231
+ // Returns null on any error so version checking never blocks the command.
232
+ async getLatestNpmVersion(packageName) {
233
+ try {
234
+ const res = await axios.get(`https://registry.npmjs.org/${encodeURIComponent(packageName)}`, {
235
+ timeout: 7000,
236
+ // Abbreviated metadata: smaller payload that still carries dist-tags
237
+ headers: { Accept: 'application/vnd.npm.install-v1+json' },
238
+ });
239
+ return res.data?.['dist-tags']?.latest ?? null;
240
+ }
241
+ catch {
242
+ return null;
243
+ }
244
+ }
245
+ // Returns true when current is a valid version strictly lower than latest.
246
+ isOutdated(current, latest) {
247
+ if (!latest || !semver.valid(current) || !semver.valid(latest)) {
248
+ return false;
249
+ }
250
+ return semver.lt(current, latest);
251
+ }
252
+ // Renders a version cell, appending "(latest: x.y.z)" when the component is outdated.
253
+ versionCell(current, latest, outdated) {
254
+ return outdated && latest ? `${current} (latest: ${latest})` : current;
255
+ }
256
+ // Renders the "Latest" cell: warning + latest version when outdated, green check when up to date, empty when not checked.
257
+ latestCell(plugin) {
258
+ if (plugin.outdated && plugin.latest) {
259
+ return `⚠️ (${plugin.latest})`;
260
+ }
261
+ return plugin.latest ? '✅' : '';
262
+ }
263
+ buildPluginsBlock(info) {
264
+ if (info.plugins.length === 0) {
265
+ return '(none detected)';
266
+ }
267
+ const lines = [];
268
+ lines.push('| Plugin | Version | Type | Latest |');
269
+ lines.push('| --- | --- | --- | --- |');
270
+ for (const plugin of info.plugins) {
271
+ lines.push(`| ${plugin.name} | ${plugin.version} | ${plugin.type} | ${this.latestCell(plugin)} |`);
272
+ }
273
+ return lines.join('\n');
274
+ }
275
+ // Builds the Environment table rows for console display.
276
+ buildEnvironmentRows(info) {
277
+ return [
278
+ { Item: 'sfdx-hardis version', Value: this.versionCell(info.sfdxHardisVersion, info.sfdxHardisLatest, info.sfdxHardisOutdated) },
279
+ { Item: 'Salesforce CLI version', Value: this.versionCell(info.sfCliVersion, info.sfCliLatest, info.sfCliOutdated) },
280
+ { Item: 'Node.js version', Value: info.nodeVersion },
281
+ { Item: 'OS', Value: info.os },
282
+ { Item: 'Shell', Value: info.shell },
283
+ { Item: 'Language (SFDX_HARDIS_LANG)', Value: info.lang },
284
+ { Item: 'Running in CI', Value: info.isCI ? `yes${info.ciProvider ? ` (${info.ciProvider})` : ''}` : 'no' },
285
+ { Item: 'VS Code extension version', Value: info.vscodeExtensionVersion ?? 'not available' },
286
+ ];
287
+ }
288
+ // Builds the plugins table rows for console display.
289
+ // Core plugins are filtered out (they are pinned to the CLI), except @salesforce/cli itself.
290
+ buildPluginRows(info) {
291
+ return info.plugins
292
+ .filter((plugin) => plugin.type !== 'core' || plugin.name === '@salesforce/cli')
293
+ .map((plugin) => ({
294
+ Plugin: plugin.name,
295
+ Version: plugin.version,
296
+ Type: plugin.type,
297
+ // Outdated: show the latest version. Up to date: green check. Not checked: empty.
298
+ Latest: this.latestCell(plugin),
299
+ }));
300
+ }
301
+ // Builds the English markdown report used both for the console output and the GitHub issue body.
302
+ buildDoctorReport(info) {
303
+ const lines = [];
304
+ lines.push('### Bug description');
305
+ lines.push('');
306
+ lines.push('<!-- Describe the issue you are facing here -->');
307
+ lines.push('');
308
+ lines.push('### Steps to reproduce');
309
+ lines.push('');
310
+ lines.push('1. ');
311
+ lines.push('2. ');
312
+ lines.push('3. ');
313
+ lines.push('');
314
+ lines.push('### Environment');
315
+ lines.push('');
316
+ lines.push('| Item | Value |');
317
+ lines.push('| --- | --- |');
318
+ lines.push(`| sfdx-hardis version | ${this.versionCell(info.sfdxHardisVersion, info.sfdxHardisLatest, info.sfdxHardisOutdated)} |`);
319
+ lines.push(`| Salesforce CLI version | ${this.versionCell(info.sfCliVersion, info.sfCliLatest, info.sfCliOutdated)} |`);
320
+ lines.push(`| Node.js version | ${info.nodeVersion} |`);
321
+ lines.push(`| OS | ${info.os} |`);
322
+ lines.push(`| Shell | ${info.shell} |`);
323
+ lines.push(`| Language (SFDX_HARDIS_LANG) | ${info.lang} |`);
324
+ lines.push(`| Running in CI | ${info.isCI ? `yes${info.ciProvider ? ` (${info.ciProvider})` : ''}` : 'no'} |`);
325
+ lines.push(`| VS Code extension version | ${info.vscodeExtensionVersion ?? 'not available'} |`);
326
+ lines.push('');
327
+ lines.push('### Installed SF CLI plugins');
328
+ lines.push('');
329
+ lines.push(this.buildPluginsBlock(info));
330
+ lines.push('');
331
+ return lines.join('\n');
332
+ }
333
+ // Builds the GitHub "new issue" URL with a pre-filled title and body.
334
+ // If the encoded URL exceeds the browser limit, the plugin list is dropped and a note is added,
335
+ // since the full report is always printed in the terminal.
336
+ buildIssueUrl(report) {
337
+ const title = 'Issue report: ';
338
+ const buildUrl = (body) => `${NEW_ISSUE_URL}?title=${encodeURIComponent(title)}&body=${encodeURIComponent(body)}`;
339
+ const url = buildUrl(report);
340
+ if (url.length <= MAX_ISSUE_URL_LENGTH) {
341
+ return url;
342
+ }
343
+ // Too long: keep everything up to the plugins section and add a paste note
344
+ const pluginsHeaderIndex = report.indexOf('### Installed SF CLI plugins');
345
+ const trimmedReport = (pluginsHeaderIndex > -1 ? report.slice(0, pluginsHeaderIndex) : report) +
346
+ '\n_(report truncated - the full details, including installed plugins, were printed in your terminal, please paste them here)_\n';
347
+ return buildUrl(trimmedReport);
348
+ }
349
+ }
350
+ //# sourceMappingURL=doctor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../../src/commands/hardis/doctor.ts"],"names":[],"mappings":"AAAA,wBAAwB;AACxB,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,CAAC,MAAM,OAAO,CAAC;AACtB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AACtE,OAAO,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAElE,QAAQ,CAAC,kCAAkC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC7D,MAAM,QAAQ,GAAG,QAAQ,CAAC,YAAY,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC;AAE7D,MAAM,aAAa,GAAG,0DAA0D,CAAC;AACjF,kEAAkE;AAClE,MAAM,oBAAoB,GAAG,IAAI,CAAC;AAClC,gFAAgF;AAChF,MAAM,eAAe,GAAG,iBAAiB,CAAC;AAuC1C,MAAM,CAAC,OAAO,OAAO,MAAO,SAAQ,SAAc;IACzC,MAAM,CAAC,KAAK,GAAG,QAAQ,CAAC;IAExB,MAAM,CAAC,WAAW,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuC7B,CAAC;IAEO,MAAM,CAAC,QAAQ,GAAG,CAAC,oBAAoB,EAAE,4BAA4B,CAAC,CAAC;IAEvE,MAAM,CAAC,KAAK,GAAQ;QACzB,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC;YACnB,OAAO,EAAE,KAAK;YACd,WAAW,EAAE,uDAAuD;SACrE,CAAC;QACF,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC;YAClB,IAAI,EAAE,GAAG;YACT,OAAO,EAAE,KAAK;YACd,WAAW,EAAE,2DAA2D;SACzE,CAAC;QACF,oBAAoB,EAAE,KAAK,CAAC,OAAO,CAAC;YAClC,OAAO,EAAE,KAAK;YACd,WAAW,EAAE,kEAAkE;SAChF,CAAC;QACF,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC;YACnB,IAAI,EAAE,GAAG;YACT,OAAO,EAAE,KAAK;YACd,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC,WAAW,CAAC;SAC9C,CAAC;QACF,SAAS,EAAE,KAAK,CAAC,MAAM,CAAC;YACtB,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC,WAAW,CAAC;SAC9C,CAAC;QACF,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC;YACtB,WAAW,EAAE,+DAA+D;SAC7E,CAAC;KACH,CAAC;IAEF,uGAAuG;IAChG,MAAM,CAAC,eAAe,GAAG,KAAK,CAAC;IAEtC,sBAAsB;IAEf,KAAK,CAAC,GAAG;QACd,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAC3C,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,KAAK,IAAI,CAAC;QAEvC,KAAK,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC,CAAC;QAEjE,uDAAuD;QACvD,6EAA6E;QAC7E,MAAM,aAAa,GAAG,KAAK,CAAC,oBAAoB,CAAC,KAAK,IAAI,CAAC;QAC3D,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAoC,EAAE,aAAa,CAAC,CAAC;QAEpG,uDAAuD;QACvD,MAAM,gBAAgB,GAAG,MAAM,eAAe,CAAC,mBAAmB,EAAE,CAAC;QACrE,IAAI,CAAC,sBAAsB,GAAG,gBAAgB,IAAI,8DAA8D,CAAC;QAEjH,2EAA2E;QAC3E,MAAM,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;QAC5C,KAAK,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,+DAA+D,CAAC,CAAC,CAAC;QAC/F,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;QAEnC,wCAAwC;QACxC,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QAC5C,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC;QAE7E,0DAA0D;QAC1D,IAAI,IAAI,IAAI,SAAS,EAAE,CAAC;YACtB,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,EAAwB,CAAC;QACrF,CAAC;QAED,yEAAyE;QACzE,8GAA8G;QAC9G,KAAK,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,sBAAsB,CAAC,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QAC/E,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;QACrE,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;QAEtF,uFAAuF;QACvF,IAAI,IAAI,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAClC,KAAK,CACH,SAAS,EACT,IAAI,EACJ,CAAC,CAAC,MAAM,CACN,sFAAsF,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,4GAA4G,CAChO,CACF,CAAC;QACJ,CAAC;QAED,qCAAqC;QACrC,IAAI,UAAU,GAAG,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC;QACrC,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC;gBAC5B,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,OAAO;gBACb,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,qDAAqD,CAAC;gBACtE,WAAW,EAAE,2GAA2G;gBACxH,OAAO,EAAE,IAAI;aACd,CAAC,CAAC;YACH,UAAU,GAAG,OAAO,CAAC,KAAK,KAAK,IAAI,CAAC;QACtC,CAAC;QAED,IAAI,UAAU,EAAE,CAAC;YACf,MAAM,IAAI,CAAC,QAAQ,CAAC,CAAC;QACvB,CAAC;QAED,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,EAAwB,CAAC;IACrF,CAAC;IAED,4EAA4E;IAC5E,0EAA0E;IAC1E,kFAAkF;IAC1E,KAAK,CAAC,iBAAiB,CAAC,MAAuB,EAAE,aAAsB;QAC7E,MAAM,OAAO,GAAiB,EAAE,CAAC;QACjC,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC;YACtD,oFAAoF;YACpF,IAAI,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;gBACtC,SAAS;YACX,CAAC;YACD,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;QAClF,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QAErD,MAAM,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,aAAa,CAAC,CAAC;QAEjF,MAAM,IAAI,GAAe;YACvB,iBAAiB,EAAE,gBAAgB,EAAE,OAAO,IAAI,MAAM,CAAC,KAAK,EAAE,OAAO,IAAI,SAAS;YAClF,YAAY,EAAE,MAAM,CAAC,OAAO;YAC5B,WAAW,EAAE,OAAO,CAAC,OAAO;YAC5B,EAAE,EAAE,GAAG,EAAE,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC,IAAI,EAAE,GAAG;YACrD,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,IAAI,EAAE,SAAS,CAAC,kBAAkB,CAAC,IAAI,IAAI;YAC3C,IAAI,EAAE,IAAI;YACV,UAAU,EAAE,IAAI,CAAC,gBAAgB,EAAE;YACnC,OAAO,EAAE,OAAO;YAChB,aAAa,EAAE,EAAE;SAClB,CAAC;QAEF,IAAI,aAAa,KAAK,IAAI,EAAE,CAAC;YAC3B,MAAM,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC;QAC5C,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED,iFAAiF;IACzE,gBAAgB;QACtB,IAAI,SAAS,CAAC,gBAAgB,CAAC;YAAE,OAAO,gBAAgB,CAAC;QACzD,IAAI,SAAS,CAAC,WAAW,CAAC;YAAE,OAAO,WAAW,CAAC;QAC/C,IAAI,SAAS,CAAC,UAAU,CAAC;YAAE,OAAO,iBAAiB,CAAC;QACpD,IAAI,SAAS,CAAC,wBAAwB,CAAC;YAAE,OAAO,qBAAqB,CAAC;QACtE,IAAI,SAAS,CAAC,UAAU,CAAC;YAAE,OAAO,UAAU,CAAC;QAC7C,IAAI,SAAS,CAAC,aAAa,CAAC;YAAE,OAAO,SAAS,CAAC;QAC/C,IAAI,SAAS,CAAC,IAAI,CAAC;YAAE,OAAO,sBAAsB,CAAC;QACnD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,+EAA+E;IACvE,KAAK,CAAC,wBAAwB,CAAC,IAAgB;QACrD,yEAAyE;QACzE,mFAAmF;QACnF,8EAA8E;QAC9E,MAAM,WAAW,GAAG,CAAC,MAAkB,EAAE,EAAE,CACzC,MAAM,CAAC,IAAI,KAAK,MAAM,IAAI,MAAM,CAAC,IAAI,KAAK,aAAa,IAAI,MAAM,CAAC,IAAI,KAAK,eAAe,CAAC;QAC7F,MAAM,gBAAgB,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAC1D,MAAM,QAAQ,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC;QAEnG,MAAM,YAAY,GAAG,IAAI,GAAG,EAAyB,CAAC;QACtD,MAAM,OAAO,CAAC,GAAG,CACf,QAAQ,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;YAC1B,YAAY,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC;QAC/D,CAAC,CAAC,CACH,CAAC;QAEF,UAAU;QACV,KAAK,MAAM,MAAM,IAAI,gBAAgB,EAAE,CAAC;YACtC,MAAM,MAAM,GAAG,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC;YACrD,IAAI,MAAM,EAAE,CAAC;gBACX,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC;gBACvB,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;YAC5D,CAAC;QACH,CAAC;QAED,iBAAiB;QACjB,MAAM,WAAW,GAAG,YAAY,CAAC,GAAG,CAAC,eAAe,CAAC,IAAI,SAAS,CAAC;QACnE,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC;QAErE,iFAAiF;QACjF,MAAM,gBAAgB,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,aAAa,CAAC,CAAC;QACtF,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,EAAE,MAAM,CAAC;QACjD,IAAI,CAAC,kBAAkB,GAAG,gBAAgB,EAAE,QAAQ,KAAK,IAAI,CAAC;QAE9D,qEAAqE;QACrE,MAAM,QAAQ,GAAa,EAAE,CAAC;QAC9B,IAAI,IAAI,CAAC,kBAAkB;YAAE,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAC1D,IAAI,IAAI,CAAC,aAAa;YAAE,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QACxD,KAAK,MAAM,MAAM,IAAI,gBAAgB,EAAE,CAAC;YACtC,IAAI,MAAM,CAAC,IAAI,KAAK,aAAa,IAAI,MAAM,CAAC,QAAQ,KAAK,IAAI,EAAE,CAAC;gBAC9D,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAC7B,CAAC;QACH,CAAC;QACD,IAAI,CAAC,aAAa,GAAG,QAAQ,CAAC;IAChC,CAAC;IAED,uEAAuE;IACvE,0EAA0E;IAClE,KAAK,CAAC,mBAAmB,CAAC,WAAmB;QACnD,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,8BAA8B,kBAAkB,CAAC,WAAW,CAAC,EAAE,EAAE;gBAC3F,OAAO,EAAE,IAAI;gBACb,qEAAqE;gBACrE,OAAO,EAAE,EAAE,MAAM,EAAE,qCAAqC,EAAE;aAC3D,CAAC,CAAC;YACH,OAAO,GAAG,CAAC,IAAI,EAAE,CAAC,WAAW,CAAC,EAAE,MAAM,IAAI,IAAI,CAAC;QACjD,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED,2EAA2E;IACnE,UAAU,CAAC,OAAe,EAAE,MAAiC;QACnE,IAAI,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;YAC/D,OAAO,KAAK,CAAC;QACf,CAAC;QACD,OAAO,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IACpC,CAAC;IAED,sFAAsF;IAC9E,WAAW,CAAC,OAAe,EAAE,MAA0B,EAAE,QAA6B;QAC5F,OAAO,QAAQ,IAAI,MAAM,CAAC,CAAC,CAAC,GAAG,OAAO,aAAa,MAAM,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC;IACzE,CAAC;IAED,0HAA0H;IAClH,UAAU,CAAC,MAAkB;QACnC,IAAI,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;YACrC,OAAO,OAAO,MAAM,CAAC,MAAM,GAAG,CAAC;QACjC,CAAC;QACD,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;IAClC,CAAC;IAEO,iBAAiB,CAAC,IAAgB;QACxC,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC9B,OAAO,iBAAiB,CAAC;QAC3B,CAAC;QACD,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,KAAK,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAC;QACnD,KAAK,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;QACxC,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAClC,KAAK,CAAC,IAAI,CAAC,KAAK,MAAM,CAAC,IAAI,MAAM,MAAM,CAAC,OAAO,MAAM,MAAM,CAAC,IAAI,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACrG,CAAC;QACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IAED,yDAAyD;IACjD,oBAAoB,CAAC,IAAgB;QAC3C,OAAO;YACL,EAAE,IAAI,EAAE,qBAAqB,EAAE,KAAK,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,iBAAiB,EAAE,IAAI,CAAC,gBAAgB,EAAE,IAAI,CAAC,kBAAkB,CAAC,EAAE;YAChI,EAAE,IAAI,EAAE,wBAAwB,EAAE,KAAK,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,aAAa,CAAC,EAAE;YACpH,EAAE,IAAI,EAAE,iBAAiB,EAAE,KAAK,EAAE,IAAI,CAAC,WAAW,EAAE;YACpD,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,EAAE;YAC9B,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE;YACpC,EAAE,IAAI,EAAE,6BAA6B,EAAE,KAAK,EAAE,IAAI,CAAC,IAAI,EAAE;YACzD,EAAE,IAAI,EAAE,eAAe,EAAE,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE;YAC3G,EAAE,IAAI,EAAE,2BAA2B,EAAE,KAAK,EAAE,IAAI,CAAC,sBAAsB,IAAI,eAAe,EAAE;SAC7F,CAAC;IACJ,CAAC;IAED,qDAAqD;IACrD,6FAA6F;IACrF,eAAe,CAAC,IAAgB;QACtC,OAAO,IAAI,CAAC,OAAO;aAChB,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,MAAM,IAAI,MAAM,CAAC,IAAI,KAAK,iBAAiB,CAAC;aAC/E,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;YAChB,MAAM,EAAE,MAAM,CAAC,IAAI;YACnB,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,kFAAkF;YAClF,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;SAChC,CAAC,CAAC,CAAC;IACR,CAAC;IAED,iGAAiG;IACzF,iBAAiB,CAAC,IAAgB;QACxC,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,KAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;QAClC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACf,KAAK,CAAC,IAAI,CAAC,iDAAiD,CAAC,CAAC;QAC9D,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACf,KAAK,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;QACrC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACf,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAClB,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAClB,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAClB,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACf,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAC9B,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACf,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QAC/B,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QAC5B,KAAK,CAAC,IAAI,CAAC,2BAA2B,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,iBAAiB,EAAE,IAAI,CAAC,gBAAgB,EAAE,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;QACpI,KAAK,CAAC,IAAI,CAAC,8BAA8B,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QACxH,KAAK,CAAC,IAAI,CAAC,uBAAuB,IAAI,CAAC,WAAW,IAAI,CAAC,CAAC;QACxD,KAAK,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;QAClC,KAAK,CAAC,IAAI,CAAC,aAAa,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC;QACxC,KAAK,CAAC,IAAI,CAAC,mCAAmC,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC;QAC7D,KAAK,CAAC,IAAI,CAAC,qBAAqB,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC;QAC/G,KAAK,CAAC,IAAI,CAAC,iCAAiC,IAAI,CAAC,sBAAsB,IAAI,eAAe,IAAI,CAAC,CAAC;QAChG,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACf,KAAK,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC;QAC3C,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACf,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC;QACzC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACf,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IAED,sEAAsE;IACtE,gGAAgG;IAChG,2DAA2D;IACnD,aAAa,CAAC,MAAc;QAClC,MAAM,KAAK,GAAG,gBAAgB,CAAC;QAC/B,MAAM,QAAQ,GAAG,CAAC,IAAY,EAAE,EAAE,CAChC,GAAG,aAAa,UAAU,kBAAkB,CAAC,KAAK,CAAC,SAAS,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC;QAEzF,MAAM,GAAG,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC7B,IAAI,GAAG,CAAC,MAAM,IAAI,oBAAoB,EAAE,CAAC;YACvC,OAAO,GAAG,CAAC;QACb,CAAC;QAED,2EAA2E;QAC3E,MAAM,kBAAkB,GAAG,MAAM,CAAC,OAAO,CAAC,8BAA8B,CAAC,CAAC;QAC1E,MAAM,aAAa,GACjB,CAAC,kBAAkB,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,kBAAkB,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;YACxE,iIAAiI,CAAC;QACpI,OAAO,QAAQ,CAAC,aAAa,CAAC,CAAC;IACjC,CAAC"}
@@ -257,8 +257,8 @@ In agent mode:
257
257
  secretDisplay = `<copy>${secret}</copy>`;
258
258
  }
259
259
  uxLog("action", this, c.cyan(t('ecaNewCredentialsCopyNow', { appName })));
260
- uxLog("log", this, c.grey(c.cyanBright(`- Consumer Key: ${c.bold(c.green(keyDisplay))}`)), true);
261
- uxLog("log", this, c.grey(c.cyanBright(`- Consumer Secret: ${c.bold(c.green(secretDisplay))}`)), true);
260
+ uxLog("log", this, c.grey(c.cyanBright(`- Consumer Key: ${c.bold(c.green(keyDisplay))}`)), { sensitive: true });
261
+ uxLog("log", this, c.grey(c.cyanBright(`- Consumer Secret: ${c.bold(c.green(secretDisplay))}`)), { sensitive: true });
262
262
  uxLog("warning", this, c.yellow(t('ecaRotateUpdateCiReminder')));
263
263
  }
264
264
  }
@@ -1 +1 @@
1
- {"version":3,"file":"rotate-credentials.js","sourceRoot":"","sources":["../../../../../src/commands/hardis/org/ext-client-app/rotate-credentials.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rotate-credentials.js","sourceRoot":"","sources":["../../../../../src/commands/hardis/org/ext-client-app/rotate-credentials.ts"],"names":[],"mappings":"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"}
@@ -89,7 +89,11 @@ export declare function extractRegexMatchesMultipleGroups(regex: RegExp, text: s
89
89
  export declare function arrayUniqueByKey(array: any, key: string): any;
90
90
  export declare function arrayUniqueByKeys(array: any, keysIn: string[]): any;
91
91
  export declare function generateReports(resultSorted: any[], columns: any[], commandThis: any, options?: any): Promise<any[]>;
92
- export declare function uxLog(logType: LogType, commandThis: any, textInit: string, sensitive?: boolean): void;
92
+ export interface UxLogOptions {
93
+ sensitive?: boolean;
94
+ alwaysVisible?: boolean;
95
+ }
96
+ export declare function uxLog(logType: LogType, commandThis: any, textInit: string, optionsOrSensitive?: boolean | UxLogOptions): void;
93
97
  export declare function uxLogTable(commandThis: any, tableData: any[], columnsOrder?: string[]): void;
94
98
  export declare function humanizeObjectKeys(obj: object): {
95
99
  Key: string;
@@ -1266,7 +1266,12 @@ export async function generateReports(resultSorted, columns, commandThis, option
1266
1266
  { type: 'xls', file: reportFileExcel },
1267
1267
  ];
1268
1268
  }
1269
- export function uxLog(logType, commandThis, textInit, sensitive = false) {
1269
+ export function uxLog(logType, commandThis, textInit, optionsOrSensitive = {}) {
1270
+ // Backward compatibility: the 4th argument used to be a boolean "sensitive" flag.
1271
+ // uxLog can be called by external plugins, so keep accepting that legacy form.
1272
+ const options = typeof optionsOrSensitive === 'boolean' ? { sensitive: optionsOrSensitive } : (optionsOrSensitive || {});
1273
+ const sensitive = options.sensitive === true;
1274
+ const alwaysVisible = options.alwaysVisible === true;
1270
1275
  const text = textInit.includes('[sfdx-hardis]') ? textInit : '[sfdx-hardis]' + (textInit.startsWith('[') ? '' : ' ') + textInit;
1271
1276
  // Console log
1272
1277
  if (commandThis?.ux) {
@@ -1300,7 +1305,7 @@ export function uxLog(logType, commandThis, textInit, sensitive = false) {
1300
1305
  }
1301
1306
  // Send message to WebSocket client
1302
1307
  if (logType !== "other") {
1303
- WebSocketClient.sendCommandLogLineMessage(textToSend, logType, isQuestion);
1308
+ WebSocketClient.sendCommandLogLineMessage(textToSend, logType, isQuestion, alwaysVisible);
1304
1309
  }
1305
1310
  }
1306
1311
  }
@@ -1663,19 +1668,19 @@ export async function generateSSLCertificate(branchName, folder, commandThis, co
1663
1668
  }
1664
1669
  uxLog("action", commandThis, c.cyan(t(storeCertificateInVariable ? 'pleaseConfigureThreeBelowVariablesInYour' : 'pleaseConfigureBothBelowVariablesInYour')));
1665
1670
  uxLog("log", commandThis, c.grey(c.cyanBright(`- Variable: ${c.green(c.bold(idKeyValues.clientIdString))}
1666
- - Value: ${c.bold(c.green(idKeyValues.clientIdValueString))}`)), true);
1671
+ - Value: ${c.bold(c.green(idKeyValues.clientIdValueString))}`)), { sensitive: true });
1667
1672
  uxLog("log", commandThis, c.grey(c.cyanBright(`- Variable: ${c.green(c.bold(idKeyValues.clientKeyString))}
1668
- - Value: ${c.bold(c.green(idKeyValues.clientKeyValueString))}`)), true);
1673
+ - Value: ${c.bold(c.green(idKeyValues.clientKeyValueString))}`)), { sensitive: true });
1669
1674
  if (storeCertificateInVariable) {
1670
1675
  uxLog("log", commandThis, c.grey(c.cyanBright(`- Variable: ${c.green(c.bold(idKeyValues.clientCertString))}
1671
- - Value: ${c.bold(c.green(idKeyValues.clientCertValueString))}`)), true);
1676
+ - Value: ${c.bold(c.green(idKeyValues.clientCertValueString))}`)), { sensitive: true });
1672
1677
  }
1673
1678
  uxLog("log", commandThis, c.grey(c.yellow(t('helpToConfigureCiCdVariablesUrl', { url: `${CONSTANTS.DOC_URL_ROOT}/salesforce-ci-cd-setup-auth/` }))));
1674
1679
  uxLog("warning", commandThis, c.yellow(t(storeCertificateInVariable ? 'ifYouAreUsingGithubOrAzureWithClientCert' : 'ifYouAreUsingGithubOrAzure', { clientIdStringRaw, clientKeyStringRaw, clientCertStringRaw })));
1675
1680
  // External storage: the encrypted certificate must be kept in a password manager, not in the repo nor a CI/CD variable
1676
1681
  if (externalStorage) {
1677
1682
  uxLog("action", commandThis, c.cyan(t('pleaseStoreEncryptedCertInPasswordManager')));
1678
- uxLog("log", commandThis, c.grey(c.cyanBright(`- ${c.bold(c.green(idKeyValues.clientCertString))}\n- Value: ${c.bold(c.green(idKeyValues.clientCertValueString))}`)), true);
1683
+ uxLog("log", commandThis, c.grey(c.cyanBright(`- ${c.bold(c.green(idKeyValues.clientCertString))}\n- Value: ${c.bold(c.green(idKeyValues.clientCertValueString))}`)), { sensitive: true });
1679
1684
  uxLog("warning", commandThis, c.yellow(t('externalStorageCertNotCommitted')));
1680
1685
  }
1681
1686
  if (removeCertFileFromRepo) {