UNPKG

inegicomponentes-tabulador

Version:

Componentes de visualizacion 2023 - Tabuladores

64 lines (61 loc) 2.43 kB
/**============================================== * UCOLOR utilidad * * @title Para el control y gestion de colores para los componentes * @description Metodos público principal: * @property colores[] arreglo de todos los colores predefinidos * - @function generaColor([posicion_color|#color_hexadecimal|"random"|"gradiente"], [numero_colores_generar, color_inicial_hex, color_final_hex]) * - @function random(numero_colores) * - @function gradiente(numero_colores_generar, color_inicial_hex, color_final_hex) * *=============================================**/ const UColor = { colores: ["#264653", "#2a9d8f","#e9c46a","#457b9d","#f9844a","#9e2a2b","#f08080","#3a5a40","#f15bb5","#a3b18a","#f8961e", "#ffe66d", "#55a630", "#2b9348", "#a44a3f", "#a68a64", "#723d46", "#87986a", "#a53860", "#450920", "#f4e285", "#4a5759", "#55828b", "#004e89", "#f2d0a9", "#bfd8bd", "#b2ff9e", "#ece2d0", "#56ab91", "#c81d25", "#ff5400"], generaColor: (c, n, i, f) => { if(UColor._esNumero(c)){ return UColor.colores[c]; } else if(UColor._esHexadecimal(c)){ return c; } else if(c === "random"){ return UColor.random(n); } else if(c === "gradiente"){ return UColor.gradiente(n, i, f); } else if(Array.isArray(c)){ return c; } else { throw "Error en Colores.color, el parametro es invalido: "+ c; return; } }, random: (n) => { var letters = "0123456789ABCDEF", color = '#', aC = []; for (var i = 0; i < n; i++){ color = "#"; for (var j = 0; j < 6; j++){ color += letters[(Math.floor(Math.random() * 16))]; } aC[i] = color; } return aC; }, gradiente: (n, [ci, cf]) => { console.log("gradiente de: "+n+" color inicio: "+ci+", color final: "+cf); return []; }, _esNumero:(c) => { const reNum = /^\d{1,2}/; if(typeof c === "number" && reNum.test(c)){ return true; } return false; }, _esHexadecimal:(c) => { let reHex = /(^#{1}([0-9A-Za-z]{6}))$/; console.log(c); if(typeof c === "string" && reHex.test(c)){ return true; } return false; } } export default UColor;