@exabytellc/utils
Version:
EB react utils to make everything a little easier!
52 lines (48 loc) • 1.33 kB
JavaScript
import { handleTryCatch } from "../_helpers/handleError";
import { isArr, isClass, isFunc, isNum, isObj, isStr } from "../types";
export function padStart(value, length = 1, padChar = "0") {
return handleTryCatch({
n: "padStart",
c: !isStr(value) || !isNum(length) || !isStr(padChar),
p: { value, length, padChar },
e: () => {
return value.toString().padStart(length, padChar);
}
});
}
export function padEnd(value, length = 1, padChar = "0") {
return handleTryCatch({
n: "padStart",
c: !isStr(value) || !isNum(length) || !isStr(padChar),
p: { value, length, padChar },
e: () => {
return value.toString().padEnd(length, padChar);
}
});
}
export function repeatStr(value, count) {
return handleTryCatch({
n: "repeatStr",
c: !isStr(value) || !isNum(count),
p: { value, count },
e: () => {
return String(value).repeat(count);
}
});
}
export function forceStr(v) {
return handleTryCatch({
n: "forceStr",
e: () => {
if (!v) return "";
if (isArr(v) || isObj(v)) {
return JSON.stringify(v);
} else if (isClass(v)) {
return v?.constructor?.name;
} else if (isFunc(v)) {
return `Function: ${v}`;
}
return v;
}
});
}