UNPKG

agte-omni-tools

Version:

Conjunto de herramientas para todo propósito

36 lines (34 loc) 1.83 kB
/** * Registra un mensaje en la consola si la aplicación está en modo desarrollo. * @param {string} title - El título o etiqueta del mensaje a registrar. * @param {any} data - Los datos asociados al mensaje a registrar. */ export const log = (title, data) => { if (process.env.APP_MODE === 'development') { console.log(title, data) } } /** * Genera una cadena de datos aleatorios de una longitud especificada utilizando un conjunto de caracteres proporcionado. * @param {number} length - La longitud de la cadena aleatoria a generar. * @param {string} [characters='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789'] - El conjunto de caracteres a utilizar para generar la cadena aleatoria. * @returns {string} - Una cadena de datos aleatorios generada. */ export const getRandomData = (length, characters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789') => { return Array.from({ length }, () => characters.charAt(Math.floor(Math.random() * characters.length))).join('') } /** * Formatea una cadena de plantilla reemplazando marcadores de posición con valores proporcionados, útil para mensajes de error o log personalizados. * @param {string} template - Texto original con marcadores de posición en formato {n}. * @param {...any} values - Valores a reemplazar en los marcadores de posición. * @returns {string} - Cadena formateada con los valores reemplazados. * @example * // Ejemplo de uso: * const mensaje = formatTemplateString("Hola, {0}! Tienes {1} mensajes nuevos.", "Juan", 5); * console.log(mensaje); // "Hola, Juan! Tienes 5 mensajes nuevos." */ export const formatTemplateString = (template, ...values) => { return template.replace(/{(\d+)}/g, (match, index) => { return typeof values[index] !== 'undefined' ? values[index] : match; }); };