Files
openzeppelin-contracts/scripts/generate/format-lines.js
2022-05-21 14:38:31 +02:00

17 lines
424 B
JavaScript

function formatLines (...lines) {
return [...indentEach(0, lines)].join('\n') + '\n';
}
function *indentEach (indent, lines) {
for (const line of lines) {
if (Array.isArray(line)) {
yield * indentEach(indent + 1, line);
} else {
const padding = ' '.repeat(indent);
yield * line.split('\n').map(subline => subline === '' ? '' : padding + subline);
}
}
}
module.exports = formatLines;