From 824b4659ec11a3a4f6acf259764f863a7cfafdfb Mon Sep 17 00:00:00 2001 From: gonzaloriestra <14979109+gonzaloriestra@users.noreply.github.com> Date: Sat, 27 Jun 2026 00:35:26 +0000 Subject: [PATCH] [Refactor] Declarative construction of config info body Refactor formatConfigInfoBody to use declarative array construction with spread operators and flatMap instead of imperative push/unshift and loops. This improves readability while maintaining identical output behavior. --- .../cli/services/format-config-info-body.ts | 34 +++++++++---------- 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/packages/app/src/cli/services/format-config-info-body.ts b/packages/app/src/cli/services/format-config-info-body.ts index 61e15a1ad14..dc6123263a2 100644 --- a/packages/app/src/cli/services/format-config-info-body.ts +++ b/packages/app/src/cli/services/format-config-info-body.ts @@ -39,26 +39,26 @@ export function formatConfigInfoBody({ includeConfigOnDeploy, messages, }: FormatConfigInfoBodyOptions): TokenItem { - const items = [`App: ${appName}`] - if (org) items.unshift(`Org: ${org}`) - if (devStores && devStores.length > 0) { - devStores.forEach((storeUrl) => items.push(`Dev store: ${storeUrl}`)) - } - if (updateURLs) items.push(`Update URLs: ${updateURLs}`) - if (includeConfigOnDeploy !== undefined) items.push(`Include config: ${includeConfigOnDeploy ? 'Yes' : 'No'}`) - - let body: Token[] = [{list: {items}}] - - if (messages && messages.length) { - for (let index = 0; index < messages.length; index++) { - const message = messages[index] + const items = [ + ...(org ? [`Org: ${org}`] : []), + `App: ${appName}`, + ...(devStores ?? []).map((storeUrl) => `Dev store: ${storeUrl}`), + ...(updateURLs ? [`Update URLs: ${updateURLs}`] : []), + ...(includeConfigOnDeploy === undefined ? [] : [`Include config: ${includeConfigOnDeploy ? 'Yes' : 'No'}`]), + ] - if (!message || message.length === 0) continue + const body: Token[] = [{list: {items}}] - const separator = index === 0 ? '\n' : '\n\n' + if (messages && messages.length > 0) { + const messageTokens = messages.flatMap((message, index) => { + if (message && message.length > 0) { + const separator = index === 0 ? '\n' : '\n\n' + return [separator, ...message] + } + return [] + }) - body = body.concat(separator, message) - } + return [...body, ...messageTokens] } return body