From 86994fc20ddac885b63678076217329a70513c46 Mon Sep 17 00:00:00 2001 From: gonzaloriestra <14979109+gonzaloriestra@users.noreply.github.com> Date: Tue, 14 Jul 2026 00:19:39 +0000 Subject: [PATCH] [Refactor] output utility logic - Refactor `outputContent` to use a declarative `.reduce()` approach. - Refactor `formatSection` to use `.padEnd(35)` for idiomatic string padding. --- packages/cli-kit/src/public/node/output.ts | 28 +++++++--------------- 1 file changed, 9 insertions(+), 19 deletions(-) diff --git a/packages/cli-kit/src/public/node/output.ts b/packages/cli-kit/src/public/node/output.ts index af883ebd016..0a593a8f3ee 100644 --- a/packages/cli-kit/src/public/node/output.ts +++ b/packages/cli-kit/src/public/node/output.ts @@ -144,29 +144,19 @@ export function outputContent( strings: TemplateStringsArray, ...keys: (ContentToken | string)[] ): TokenizedString { - let output = `` - strings.forEach((string, i) => { - output += string - if (i >= keys.length) { - return - } - - const token = keys[i]! + const output = strings.reduce((acc, string, i) => { + const token = keys[i] + let tokenValue = '' if (typeof token === 'string') { - output += token + tokenValue = token } else if (token) { const enumTokenOutput = token.output() - - if (Array.isArray(enumTokenOutput)) { - enumTokenOutput.forEach((line: string) => { - output += line - }) - } else { - output += enumTokenOutput - } + tokenValue = Array.isArray(enumTokenOutput) ? enumTokenOutput.join('') : enumTokenOutput } - }) + + return acc + string + tokenValue + }, '') return new TokenizedString(output) } @@ -442,6 +432,6 @@ export function shouldDisplayColors(_process = process): boolean { * @returns The formatted message. */ export function formatSection(title: string, body: string): string { - const formattedTitle = `${title.toUpperCase()}${' '.repeat(35 - title.length)}` + const formattedTitle = title.toUpperCase().padEnd(35) return outputContent`${outputToken.heading(formattedTitle)}\n${body}`.value }