local ____lualib = require("lualib_bundle") local __TS__ArrayMap = ____lualib.__TS__ArrayMap local __TS__Unpack = ____lualib.__TS__Unpack local __TS__SparseArrayNew = ____lualib.__TS__SparseArrayNew local __TS__SparseArrayPush = ____lualib.__TS__SparseArrayPush local __TS__SparseArraySpread = ____lualib.__TS__SparseArraySpread local __TS__SourceMapTraceBack = ____lualib.__TS__SourceMapTraceBack __TS__SourceMapTraceBack(debug.getinfo(1).short_src, {["10"] = 1,["11"] = 1,["12"] = 3,["13"] = 4,["14"] = 4,["15"] = 5,["16"] = 5,["17"] = 6,["18"] = 6,["19"] = 7,["20"] = 7,["21"] = 8,["22"] = 8,["23"] = 11,["24"] = 11,["25"] = 11,["26"] = 11,["27"] = 11,["28"] = 11,["29"] = 11,["30"] = 13,["31"] = 14,["32"] = 13,["33"] = 17,["36"] = 28,["37"] = 29,["38"] = 29,["39"] = 29,["40"] = 29,["41"] = 30,["42"] = 30,["43"] = 30,["44"] = 30,["45"] = 30,["46"] = 30,["47"] = 30,["48"] = 31,["49"] = 34,["50"] = 35,["51"] = 37,["52"] = 38,["53"] = 39,["54"] = 39,["55"] = 39,["57"] = 39,["59"] = 39,["60"] = 40,["61"] = 41,["62"] = 37,["63"] = 44,["64"] = 45,["65"] = 46,["66"] = 47,["68"] = 49,["69"] = 50,["70"] = 44,["71"] = 53,["72"] = 54,["73"] = 55,["74"] = 56,["76"] = 58,["77"] = 59,["78"] = 53,["79"] = 62,["80"] = 63,["81"] = 62,["82"] = 66,["83"] = 67,["84"] = 66,["85"] = 70,["86"] = 71,["87"] = 72,["89"] = 70,["90"] = 76,["91"] = 77,["92"] = 78,["94"] = 76,["95"] = 82,["96"] = 83,["97"] = 84,["99"] = 82,["100"] = 87,["101"] = 88,["102"] = 89,["104"] = 87,["105"] = 93,["106"] = 94,["107"] = 93,["108"] = 97,["109"] = 98,["110"] = 98,["111"] = 98,["112"] = 98,["113"] = 98,["114"] = 98,["115"] = 98,["116"] = 98,["117"] = 98,["118"] = 98,["119"] = 99,["120"] = 100,["121"] = 97,["122"] = 103,["123"] = 104,["124"] = 105,["125"] = 106,["127"] = 103,["128"] = 110,["129"] = 110,["130"] = 110,["131"] = 110,["132"] = 110,["133"] = 110,["134"] = 110,["135"] = 110,["136"] = 110,["137"] = 110,["138"] = 110,["139"] = 110,["140"] = 110,["141"] = 28}); local ____exports = {} local ____TimeUtils = require("TimeUtils") local getTimeMillis = ____TimeUtils.getTimeMillis ____exports.LogLevel = LogLevel or ({}) ____exports.LogLevel.TRACE = 1 ____exports.LogLevel[____exports.LogLevel.TRACE] = "TRACE" ____exports.LogLevel.DEBUG = 2 ____exports.LogLevel[____exports.LogLevel.DEBUG] = "DEBUG" ____exports.LogLevel.INFO = 3 ____exports.LogLevel[____exports.LogLevel.INFO] = "INFO" ____exports.LogLevel.WARN = 4 ____exports.LogLevel[____exports.LogLevel.WARN] = "WARN" ____exports.LogLevel.ERROR = 5 ____exports.LogLevel[____exports.LogLevel.ERROR] = "ERROR" local logLevelString = { "TRACE", "DEBUG", "INFO", "WARN", "ERROR" } function ____exports.toLogLevelString(self, logLevel) return logLevelString[logLevel] end local DEFAULT_LOG_LEVEL = ____exports.LogLevel.ERROR --- -- @param configs a config heirarchy (anscestors) of this logger function ____exports.Logger(self, params) local ____temp_0 = params == nil and ({}) or params local prefix = ____temp_0.prefix local logLevel = ____temp_0.logLevel local withElappsedTimePrefix = ____temp_0.withElappsedTimePrefix local _prefix = table.concat( __TS__ArrayMap( prefix or ({}), function(____, p) return ("[" .. p) .. "]" end ), "" ) local childLoggers = {} local _logLevel = logLevel or DEFAULT_LOG_LEVEL local lastTimestamp local function makeTimeStamp(self) local curTime = getTimeMillis(nil) local ____temp_1 if lastTimestamp == nil then ____temp_1 = nil else ____temp_1 = math.floor(curTime - lastTimestamp + 0.5) end local elapsed = ____temp_1 lastTimestamp = curTime return elapsed end local function _prefixMsg(self, msg) local elapsed if withElappsedTimePrefix then elapsed = makeTimeStamp(nil) end local elapsedPart = withElappsedTimePrefix and ("[" .. tostring(elapsed == nil and "?" or elapsed)) .. "ms]" or "" return (((_prefix .. ":") .. elapsedPart) .. " ") .. msg end local function _prefixMsgWithLevel(self, msg, logLevel) local elapsed if withElappsedTimePrefix then elapsed = makeTimeStamp(nil) end local elapsedPart = withElappsedTimePrefix and ("[" .. tostring(elapsed == nil and "?" or elapsed)) .. "ms]" or "" return (((((_prefix .. ":") .. elapsedPart) .. " ") .. logLevelString[logLevel]) .. " ") .. msg end local function _printf(self, msg) Printf(_prefixMsg(nil, msg)) end local function _echo(self, msg) Echo(_prefixMsg(nil, msg)) end local function _trace(self, msg) if _logLevel <= ____exports.LogLevel.TRACE then Echo(_prefixMsgWithLevel(nil, msg, ____exports.LogLevel.TRACE)) end end local function _debug(self, msg) if _logLevel <= ____exports.LogLevel.DEBUG then Echo(_prefixMsgWithLevel(nil, msg, ____exports.LogLevel.DEBUG)) end end local function _info(self, msg) if _logLevel <= ____exports.LogLevel.INFO then Echo(_prefixMsgWithLevel(nil, msg, ____exports.LogLevel.INFO)) end end local function _warn(self, msg) if _logLevel <= ____exports.LogLevel.WARN then Echo(_prefixMsgWithLevel(nil, msg, ____exports.LogLevel.WARN)) end end local function _error(self, msg) ErrEcho(_prefixMsgWithLevel(nil, msg, ____exports.LogLevel.ERROR)) end local function subLogger(self, subPrefix) local ____exports_Logger_3 = ____exports.Logger local ____array_2 = __TS__SparseArrayNew(__TS__Unpack(prefix or ({}))) __TS__SparseArrayPush(____array_2, subPrefix) local newLogger = ____exports_Logger_3( nil, { prefix = {__TS__SparseArraySpread(____array_2)}, logLevel = _logLevel } ) childLoggers[#childLoggers + 1] = newLogger return newLogger end local function setLogLevel(self, logLevel) _logLevel = logLevel for ____, logger in ipairs(childLoggers) do logger:setLogLevel(logLevel) end end return { msg = _prefixMsg, printf = _printf, echo = _echo, trace = _trace, debug = _debug, info = _info, warn = _warn, error = _error, subLogger = subLogger, getLogLevel = function() return _logLevel end, setLogLevel = setLogLevel } end return ____exports