UNPKG

@yookue/ts-lang-utils

Version:

Common lang utilities for typescript

26 lines 810 B
import { defaultIfBlank } from "./defaultIfBlank"; import { defaultString } from "./defaultString"; import { getLength } from "./getLength"; import { repeat } from "./repeat"; export function leftPad(text, size, pad) { if (size === undefined || size <= 0) { return text; } var textLength = getLength(text); var needLength = size - textLength; if (needLength <= 0) { return text; } var padding = defaultIfBlank(pad, ' '); var padLength = getLength(padding); var quotient = Math.floor(needLength / padLength); var remainder = needLength % padLength; var result = ''; if (quotient > 0) { result = result.concat(repeat(padding, quotient)); } if (remainder > 0) { result = result.concat(padding.substring(0, remainder)); } return result.concat(defaultString(text)); }