mirror of
https://github.com/InsanusMokrassar/KSLog.git
synced 2025-11-11 17:00:15 +00:00
perestroika
This commit is contained in:
28
src/jsMain/kotlin/ActualLogger.kt
Normal file
28
src/jsMain/kotlin/ActualLogger.kt
Normal file
@@ -0,0 +1,28 @@
|
||||
package dev.inmo.kslog.common
|
||||
|
||||
fun Logger(
|
||||
messageFormatter: (l: LogLevel, m: String, t: String?, Throwable?) -> String,
|
||||
filter: (l: LogLevel, m: String, t: String?, Throwable?) -> Boolean
|
||||
) = Logger { l, m, t, e ->
|
||||
if (!filter(l, m, t, e)) return@Logger
|
||||
val text = messageFormatter(l,m,t,e)
|
||||
when (l) {
|
||||
LogLevel.VERBOSE,
|
||||
LogLevel.INFO -> console.info(text, e)
|
||||
LogLevel.WARNING -> console.warn(text, e)
|
||||
LogLevel.ERROR,
|
||||
LogLevel.ASSERT -> console.error(text, e)
|
||||
LogLevel.DEBUG -> console.log(text, e)
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
actual fun Logger(
|
||||
defaultTag: String,
|
||||
filter: (l: LogLevel, m: String, t: String, Throwable?) -> Boolean
|
||||
): Logger {
|
||||
return Logger(
|
||||
{ l, m, t, e -> "[$l] ${t ?: defaultTag} - $m" },
|
||||
{ l, m, t, e -> filter(l, m, t ?: defaultTag, e) }
|
||||
)
|
||||
}
|
||||
Reference in New Issue
Block a user