@commitlint/prompt
Version:
commitizen prompt using commitlint.config.js
34 lines • 1.05 kB
JavaScript
import chalk from 'chalk';
/**
* Get formatted commit message
* @param input object containing structured results
* @param debug show debug information in commit message
* @return formatted debug message
*/
export default function format(input, debug = false) {
const defaultInput = {
type: undefined,
scope: undefined,
subject: undefined,
body: undefined,
footer: undefined,
...input,
};
const results = debug
? Object.entries(defaultInput).reduce((registry, [name, value]) => {
registry[name] =
value === undefined ? chalk.grey(`<${name}>`) : chalk.bold(value);
return registry;
}, {})
: defaultInput;
// Return formatted string
const { type, scope, subject, body, footer } = results;
return [
`${type || ''}${scope ? `(${scope})` : ''}${type || scope ? ':' : ''} ${subject || ''}`,
body,
footer,
]
.filter(Boolean)
.join('\n');
}
//# sourceMappingURL=format.js.map