@igli.kokici/st-open-api
Version:
Generates API client SDKs from an OpenAPI specification written in OpenAPI version 3.x.x
48 lines • 1.78 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
var first_character_upper_1 = require("./first-character-upper");
var first_character_lower_1 = require("./first-character-lower");
exports.formatText = function (str, from, to) {
var strings = [];
switch (from) {
case "PascalCase":
case "CamelCase": {
strings = str.split(/(?=[A-Z])/)
.filter(function (v) { return !!v; });
break;
}
case "SnakeCase": {
strings = str.split('_')
.filter(function (v) { return !!v; });
break;
}
case "KebabCase": {
strings = str.split('-')
.filter(function (v) { return !!v; });
break;
}
case "ANY": {
strings = str.split(/(?=[A-Z])/)
.map(function (v) { return v.split('_'); })
.reduce(function (acc, x) { return acc.concat(x); }, [])
.map(function (v) { return v.split('-'); })
.reduce(function (acc, x) { return acc.concat(x); }, [])
.filter(function (v) { return !!v; });
}
}
switch (to) {
case "PascalCase": {
return strings.map(function (v) { return first_character_upper_1.firstCharacterUpper(v); }).join('');
}
case "CamelCase": {
return first_character_lower_1.firstCharacterLower(strings.map(function (v) { return first_character_upper_1.firstCharacterUpper(v); }).join(''));
}
case "SnakeCase": {
return strings.join('_').toLowerCase();
}
case "KebabCase": {
return strings.join('-').toLowerCase();
}
}
};
//# sourceMappingURL=formatText.js.map