UNPKG

@alithanar/react-automation-profiler

Version:

Automated React profiling and data visualization using React's Profiler API, Puppeteer, and D3.

48 lines • 1.57 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.printMessage = exports.getFileName = void 0; function formatLabel(label) { return label .toLowerCase() .split(' ') .map((word) => word.charAt(0).toUpperCase() + word.slice(1)) .join(''); } function getFileName(label, extension = 'json') { return `${hyphenateString(`${label ? formatLabel(label) : ''}${extension === 'json' ? `-${Date.now()}` : ''}-${new Date().toLocaleString()}`)}.${extension}`; } exports.getFileName = getFileName; function hyphenateString(str) { return str .replace(/(\/|\s|:|\.)/g, '-') .replace(',', '') .replace(/-{2,}/g, '-') .replace(/-$/, ''); } function printMessage(messageType, params) { let message = ''; switch (messageType) { case "AUTOMATION_START" /* AUTOMATION_START */: { message = '\nšŸ›  preparing automation...\n'; break; } case "AUTOMATION_STOP" /* AUTOMATION_STOP */: { const { log } = params; message = `šŸ“” ${log}\n`; break; } case "ERROR" /* ERROR */: { const { e = null, log } = params; message = `āŒ ${log}${e ? `: ${e.message || JSON.stringify(e)}` : ''}\n`; break; } case "NOTICE" /* NOTICE */: { const { log } = params; message = `🚫 ${log}`; break; } } console.log(message); } exports.printMessage = printMessage; //# sourceMappingURL=util.js.map