@thisisagile/easy
Version:
Straightforward library for building domain-driven microservice architectures
31 lines (29 loc) • 921 B
JavaScript
import {
ofGet
} from "./chunk-SJGQU3OG.mjs";
import {
isFunc
} from "./chunk-PIRWVOO2.mjs";
import {
isDefined
} from "./chunk-AAND4MKF.mjs";
// src/types/Text.ts
var isText = (t) => isDefined(t) && isFunc(t.toString);
var asString = (t, alt = "") => (isText(t) ? t : ofGet(alt)).toString();
var equals = (a, b) => asString(a) === asString(b);
var replaceAll = (origin, search, replace = "") => asString(origin).split(asString(search)).join(asString(replace));
var toWords = (input) => {
return asString(input).replace(/(\p{Lower})(\p{Upper})/gu, "$1 $2").replace(/(\p{Upper})(\p{Upper}\p{Lower})/gu, "$1 $2").split(/[_\W]+/g).filter(Boolean);
};
var kebab = (s = "") => toWords(s).join("-").toLowerCase();
var capitalize = (s = "") => s.charAt(0).toUpperCase() + s.slice(1);
export {
isText,
asString,
equals,
replaceAll,
toWords,
kebab,
capitalize
};
//# sourceMappingURL=chunk-NNA77YYC.mjs.map