printHelp() — astro Function Reference
Architecture documentation for the printHelp() function in messages.ts from the astro codebase.
Entity Profile
Dependency Diagram
graph TD 35257cda_684b_7921_604a_ded460d84474["printHelp()"] 7e47cce3_632a_b102_4402_d13baf44fc8e["messages.ts"] 35257cda_684b_7921_604a_ded460d84474 -->|defined in| 7e47cce3_632a_b102_4402_d13baf44fc8e 96c4797b_5178_0a86_1cd5_afa604def56a["title()"] 35257cda_684b_7921_604a_ded460d84474 -->|calls| 96c4797b_5178_0a86_1cd5_afa604def56a 325f265a_a84d_6afa_c4c9_7a8631d25cd0["log()"] 35257cda_684b_7921_604a_ded460d84474 -->|calls| 325f265a_a84d_6afa_c4c9_7a8631d25cd0 style 35257cda_684b_7921_604a_ded460d84474 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
packages/create-astro/src/messages.ts lines 139–198
export function printHelp({
commandName,
headline,
usage,
tables,
description,
}: {
commandName: string;
headline?: string;
usage?: string;
tables?: Record<string, [command: string, help: string][]>;
description?: string;
}) {
const linebreak = () => '';
const table = (rows: [string, string][], { padding }: { padding: number }) => {
const split = stdout.columns < 60;
let raw = '';
for (const row of rows) {
if (split) {
raw += ` ${row[0]}\n `;
} else {
raw += `${`${row[0]}`.padStart(padding)}`;
}
raw += ' ' + color.dim(row[1]) + '\n';
}
return raw.slice(0, -1); // remove latest \n
};
let message = [];
if (headline) {
message.push(
linebreak(),
`${title(commandName)} ${color.green(`v${process.env.PACKAGE_VERSION ?? ''}`)} ${headline}`,
);
}
if (usage) {
message.push(linebreak(), `${color.green(commandName)} ${color.bold(usage)}`);
}
if (tables) {
function calculateTablePadding(rows: [string, string][]) {
return rows.reduce((val, [first]) => Math.max(val, first.length), 0);
}
const tableEntries = Object.entries(tables);
const padding = Math.max(...tableEntries.map(([, rows]) => calculateTablePadding(rows)));
for (const [, tableRows] of tableEntries) {
message.push(linebreak(), table(tableRows, { padding }));
}
}
if (description) {
message.push(linebreak(), `${description}`);
}
log(message.join('\n') + '\n');
}
Domain
Subdomains
Defined In
Source
Frequently Asked Questions
What does printHelp() do?
printHelp() is a function in the astro codebase, defined in packages/create-astro/src/messages.ts.
Where is printHelp() defined?
printHelp() is defined in packages/create-astro/src/messages.ts at line 139.
What does printHelp() call?
printHelp() calls 2 function(s): log, title.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free