UNPKG

@elsikora/nestjs-crud-automator

Version:

A library for automating the creation of CRUD operations in NestJS.

40 lines (38 loc) 1.28 kB
/** * Converts a string to camel case format with special handling for known compound words * @param {string} string - The string to convert to camel case * @returns {string} The camel-cased string */ function CamelCaseString(string) { const knownCompounds = { getlist: "GetList", partialupdate: "PartialUpdate", }; const hasInternalCaps = /[a-z][A-Z]/.test(string); if (hasInternalCaps) { const firstChar = string.charAt(0).toUpperCase(); return firstChar + string.slice(1); } const cleanString = string.replaceAll(/[^a-z0-9]+/gi, " "); const words = cleanString.split(" "); if (words.length === 1 && words[0]) { const word = words[0].toLowerCase(); if (knownCompounds[word]) { return knownCompounds[word]; } return word.charAt(0).toUpperCase() + word.slice(1); } return words .map((word) => { if (!word) return ""; const lowerWord = word.toLowerCase(); if (knownCompounds[lowerWord]) { return knownCompounds[lowerWord]; } return word.charAt(0).toUpperCase() + lowerWord.slice(1); }) .join(""); } export { CamelCaseString }; //# sourceMappingURL=camel-case-string.utility.js.map