bananas-commerce
Version:
A client for bananas-commerce with support for TypeScript
26 lines (25 loc) • 964 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.pascalCase = exports.pascalCaseTransformMerge = exports.pascalCaseTransform = void 0;
const mod_js_1 = require("../no_case/mod.js");
function pascalCaseTransform(input, index) {
const firstChar = input.charAt(0);
const lowerChars = input.substr(1).toLowerCase();
if (index > 0 && firstChar >= "0" && firstChar <= "9") {
return `_${firstChar}${lowerChars}`;
}
return `${firstChar.toUpperCase()}${lowerChars}`;
}
exports.pascalCaseTransform = pascalCaseTransform;
function pascalCaseTransformMerge(input) {
return input.charAt(0).toUpperCase() + input.slice(1).toLowerCase();
}
exports.pascalCaseTransformMerge = pascalCaseTransformMerge;
function pascalCase(input, options = {}) {
return (0, mod_js_1.noCase)(input, {
delimiter: "",
transform: pascalCaseTransform,
...options,
});
}
exports.pascalCase = pascalCase;