1export const logKey = 'strudel.log'; 2 3let debounce = 1000, 4 lastMessage, 5 lastTime; 6 7export function errorLogger(e, origin = 'cyclist') { 8 if (process.env.NODE_ENV === 'development') { 9 console.error(e); 10 } 11 logger(`[${origin}] error: ${e.message}`); 12} 13 14export function logger(message, type, data = {}) { 15 let t = performance.now(); 16 if (lastMessage === message && t - lastTime < debounce) { 17 return; 18 } 19 lastMessage = message; 20 lastTime = t; 21 console.log(`%c${message}`, 'background-color: black;color:white;border-radius:15px'); 22 if (typeof document !== 'undefined' && typeof CustomEvent !== 'undefined') { 23 document.dispatchEvent( 24 new CustomEvent(logKey, { 25 detail: { 26 message, 27 type, 28 data, 29 }, 30 }), 31 ); 32 } 33} 34 35logger.key = logKey;