// 統一的主控台輸出格式,對應原本 entrypoint.sh 的 separator/section/info/... 等函式。 const LINE = '==================================================' const SUBLINE = '--------------------------------------------------' /** * 在前後換行的情況下輸出一條等號分隔線至 stdout,用於視覺上區隔不同階段的輸出。 */ export function separator() { process.stdout.write(`\n${LINE}\n`) } /** * 輸出一個區段標題:先印分隔線,再印標題文字與一條虛線,用於標示流程進入新階段。 * @param {string} title 區段標題文字 */ export function section(title) { separator() process.stdout.write(`${title}\n`) process.stdout.write(`${SUBLINE}\n`) } /** * 以 `[INFO]` 前綴輸出一般資訊訊息至 stdout。 * @param {string} message 訊息內容 */ export function info(message) { process.stdout.write(`[INFO] ${message}\n`) } /** * 以 `[OK]` 前綴輸出成功訊息至 stdout(前綴補空白以與其他標籤對齊)。 * @param {string} message 訊息內容 */ export function success(message) { process.stdout.write(`[OK] ${message}\n`) } /** * 以 `[WARN]` 前綴輸出警告訊息;為與一般輸出同流,仍寫入 stdout。 * @param {string} message 訊息內容 */ export function warn(message) { process.stdout.write(`[WARN] ${message}\n`) } /** * 以 `[ERR]` 前綴輸出錯誤訊息至 stderr(唯一寫入 stderr 的輸出函式)。 * @param {string} message 訊息內容 */ export function fail(message) { process.stderr.write(`[ERR] ${message}\n`) }