generator-begcode
Version:
Spring Boot + Angular/React/Vue in one handy generator
24 lines (23 loc) • 699 B
JavaScript
export function hibernateSnakeCase(value) {
let res = '';
if (value) {
if (value.length === 1) {
return value.toLowerCase();
}
value = value.replace('.', '_');
res = value[0];
for (let i = 1, len = value.length - 1; i < len; i++) {
if (value[i - 1] !== value[i - 1].toUpperCase() &&
value[i] !== value[i].toLowerCase() &&
value[i + 1] !== value[i + 1].toUpperCase()) {
res += `_${value[i]}`;
}
else {
res += value[i];
}
}
res += value[value.length - 1];
res = res.toLowerCase();
}
return res;
}