27 lines
507 B
JavaScript
27 lines
507 B
JavaScript
'use strict'
|
|
|
|
var repeat = require('repeat-string')
|
|
|
|
module.exports = pad
|
|
|
|
var lineFeed = '\n'
|
|
var space = ' '
|
|
|
|
var tabSize = 4
|
|
|
|
// Pad `value` with `level * tabSize` spaces. Respects lines. Ignores empty
|
|
// lines.
|
|
function pad(value, level) {
|
|
var values = value.split(lineFeed)
|
|
var index = values.length
|
|
var padding = repeat(space, level * tabSize)
|
|
|
|
while (index--) {
|
|
if (values[index].length !== 0) {
|
|
values[index] = padding + values[index]
|
|
}
|
|
}
|
|
|
|
return values.join(lineFeed)
|
|
}
|