UNPKG

@chincapie/platzom

Version:
53 lines (44 loc) 1.59 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = platzom; function platzom(str) { var translation = str; // Si la palabra termina en ar se le quitan esos caracteres: if (str.toLowerCase().endsWith('ar')) { translation = str.slice(0, -2); } //Si la palabra inicia con Z se le agrega "pe" al final: if (str.toLowerCase().startsWith('z')) { translation = translation.concat('pe'); } // Si la palabra tiene mas de 10 caracteres // Se debe partir a la mitad y unir con un guión medio var longiud = translation.length; if (longiud >= 10) { var primeraMitad = translation.slice(0, Math.round(longiud / 2)); var segundaMitad = translation.slice(Math.round(longiud / 2)); //translation = primeraMitad.concat('_').concat(segundaMitad); translation = primeraMitad + '_' + segundaMitad; } // Si la palabra original es un palíndromo, // ninguna regla anterior cuenta y se devuelve // la misma palabra intercalando mayúsculas y minúsculas var reverse = function reverse(str) { return str.split('').reverse().join(''); }; function minMay(str) { var longitud = str.length; var translation = ''; var strV = str.split(''); for (var i = 0; i < longitud; i++) { translation += i % 2 == 0 ? strV[i].toUpperCase() : strV[i].toLowerCase(); } return translation; } if (str == reverse(str)) { return minMay(str); } return translation; }