UNPKG

rabbit-browser

Version:

Browser automation tool for detecting interactive elements on web pages

92 lines 2.2 kB
"use strict"; /** * Logger utility for consistent log messages */ Object.defineProperty(exports, "__esModule", { value: true }); exports.LogLevel = void 0; exports.setLogLevel = setLogLevel; exports.logWithLevel = logWithLevel; exports.log = log; exports.debug = debug; exports.warn = warn; exports.error = error; exports.createBrowserLogger = createBrowserLogger; // Log levels var LogLevel; (function (LogLevel) { LogLevel[LogLevel["DEBUG"] = 0] = "DEBUG"; LogLevel[LogLevel["INFO"] = 1] = "INFO"; LogLevel[LogLevel["WARN"] = 2] = "WARN"; LogLevel[LogLevel["ERROR"] = 3] = "ERROR"; LogLevel[LogLevel["NONE"] = 4] = "NONE"; })(LogLevel || (exports.LogLevel = LogLevel = {})); // Current log level - can be set by the application let currentLogLevel = LogLevel.INFO; /** * Set the current log level */ function setLogLevel(level) { currentLogLevel = level; } /** * Log a message at the specified level */ function logWithLevel(level, message) { if (level >= currentLogLevel) { const prefix = getLogPrefix(level); console.log(`${prefix} ${message}`); } } /** * Standard log function (INFO level) */ function log(message) { logWithLevel(LogLevel.INFO, message); } /** * Debug level log */ function debug(message) { logWithLevel(LogLevel.DEBUG, message); } /** * Warning level log */ function warn(message) { logWithLevel(LogLevel.WARN, message); } /** * Error level log */ function error(message) { logWithLevel(LogLevel.ERROR, message); } /** * Get prefix for log level */ function getLogPrefix(level) { switch (level) { case LogLevel.DEBUG: return "[DEBUG]"; case LogLevel.INFO: return "[INFO]"; case LogLevel.WARN: return "[WARN]"; case LogLevel.ERROR: return "[ERROR]"; default: return "[INFO]"; } } /** * Browser-to-Node logging helper to be used in browser context */ function createBrowserLogger() { return ` function sendToNodeJS(message, level = 'info') { const prefix = level.toUpperCase(); console.log(\`[\${prefix}] \${message}\`); } `; } //# sourceMappingURL=logger.js.map