console-class-browser
Advanced tools
+42
-14
@@ -7,3 +7,3 @@ const {Writable} = require("stream") | ||
| _write(chunk, encoding, callback) { | ||
| console.log(Buffer.from(chunk, encoding).toString().trim()) | ||
| console.log(Buffer.from(chunk, encoding).toString().slice(0, -1)) | ||
| callback() | ||
@@ -15,3 +15,3 @@ } | ||
| _write(chunk, encoding, callback) { | ||
| console.error(Buffer.from(chunk, encoding).toString().trim()) | ||
| console.error(Buffer.from(chunk, encoding).toString().slice(0, -1)) | ||
| callback() | ||
@@ -22,19 +22,27 @@ } | ||
| const simpleLogList = [ | ||
| "Linfo", "Lwarn", "Ltable", "Ngroup", "NgroupEnd", "NgroupCollapsed", "Ldirxml", "Etrace", "Nprofile", "NprofileEnd", "NtimeStamp", "Ldebug" | ||
| "Linfo", "Lwarn", "Ltable", "Ldirxml", "Ldebug", "GgroupCollapsed", "NcreateTask" | ||
| ] | ||
| const symbolTable = { | ||
| "L": "log", "E": "error", "N": "empty" | ||
| "L": "log", "E": "error", "G": "group", "N": "empty" | ||
| } | ||
| function Console(stdoutOrOption = {}, stderr) { | ||
| const native = [ | ||
| "profile", "profileEnd", "timeStamp" | ||
| ] | ||
| function Console(stdout = {}, stderr) { | ||
| this.label = {time: {}, count: {}} | ||
| if(!(typeof stdoutOrOption.write === "function")) { | ||
| this.inspectOption = stdoutOrOption.inspectOptions || {} | ||
| this.stdout = stdoutOrOption.stdout || new BrowserStdout() | ||
| this.stderr = (stdoutOrOption.stderr || stdoutOrOption.stdout) || new BrowserStderr() | ||
| if(!(typeof stdout.write === "function")) { | ||
| this.inspectOption = stdout.inspectOptions || {} | ||
| this.indentNumber = stdout.groupIndentation || 2 | ||
| this.indent = 0 | ||
| this.stdout = stdout.stdout || new BrowserStdout() | ||
| this.stderr = (stdout.stderr || stdout.stdout) || new BrowserStderr() | ||
| } else { | ||
| this.stdout = stdoutOrOption || new BrowserStdout() | ||
| this.stderr = (stderr || stdoutOrOption) || new BrowserStdout() | ||
| this.stdout = stdout || new BrowserStdout() | ||
| this.stderr = (stderr || stdout) || new BrowserStdout() | ||
| } | ||
| for(let func of native) | ||
| this[func] = console[func] | ||
| for(let func of simpleLogList) { | ||
@@ -45,6 +53,10 @@ this[func.slice(1)] = this[symbolTable[func[0]]] | ||
| Console.prototype = { | ||
| log(...text) { | ||
| _log(...text) { | ||
| var needFormat = true | ||
| text = text.map(inspectAll) | ||
| this.stdout.write((needFormat ? format(...text) : text.join(" ")) + "\n") | ||
| var output = needFormat ? format(...text) : text.join(" ") | ||
| output = output.split("\n"). | ||
| map(line => line.padStart(line.length + this.indent, " ")) | ||
| .join("\n") | ||
| return output + "\n" | ||
| function inspectAll(value) { | ||
@@ -57,5 +69,14 @@ if(typeof value !== "string") { | ||
| }, | ||
| log(...text) { | ||
| this.stdout.write(this._log(...text)) | ||
| }, | ||
| error(...text) { | ||
| this.stderr.write(format(...text) + "\n") | ||
| this.stderr.write(this._log(...text)) | ||
| }, | ||
| trace(...text) { | ||
| var trace = new Error() | ||
| trace.name = "Trace" | ||
| trace.message = this._log(...text) | ||
| this.error(trace) | ||
| }, | ||
| empty() {}, | ||
@@ -89,2 +110,9 @@ assert(value, ...message) { | ||
| delete this.label.time[label] | ||
| }, | ||
| group(...text) { | ||
| this.log(...text) | ||
| this.indent += this.indentNumber | ||
| }, | ||
| groupEnd() { | ||
| this.indent -= this.indentNumber | ||
| } | ||
@@ -91,0 +119,0 @@ } |
+1
-1
| { | ||
| "name": "console-class-browser", | ||
| "version": "1.0.1", | ||
| "version": "1.0.2", | ||
| "description": "This module implements the Node.js `console` module for browser environments.", | ||
@@ -5,0 +5,0 @@ "keywords": [ |
+55
-34
@@ -15,20 +15,28 @@ # console-class-browser | ||
| console.log("Hello %s", "World") | ||
| console.info("Hello %s", "World") | ||
| console.debug("Hello %s", "World") | ||
| console.dirxml("Hello %s", "World") | ||
| console.table("Hello %s", "World") | ||
| console.warn("Hello %s", "World") | ||
| console.group("SIMPLE LOG") | ||
| console.group("LOG") | ||
| console.log("Hello %s", "World") | ||
| console.info("Hello %s", "World") | ||
| console.debug("Hello %s", "World") | ||
| console.dirxml("Hello %s", "World") | ||
| console.table("Hello %s", "World") // TODO | ||
| console.warn("Hello %s", "World") | ||
| console.groupEnd() | ||
| console.group("ERROR") | ||
| console.error("Bye %s", "Bug") | ||
| console.trace("Bye %s", "Bug") | ||
| console.groupEnd() | ||
| console.groupEnd() | ||
| console.error("Bye %s", "Bug") | ||
| console.trace("Bye %s", "Bug") | ||
| console.assert(true, "Hello %s", "World") | ||
| console.time("Time") | ||
| console.timeLog("Time") | ||
| console.timeEnd("Time") | ||
| console.count("Count") | ||
| console.count("Count") | ||
| console.countReset("Count") | ||
| console.log({key: "value"}, "Hello", "World") | ||
| console.dir(console, {depth: 0}) | ||
| console.groupCollapsed("UTIL LOG") | ||
| console.assert(true, "Hello %s", "World") | ||
| console.time("Time") | ||
| console.timeLog("Time") | ||
| console.timeEnd("Time") | ||
| console.count("Count") | ||
| console.count("Count") | ||
| console.countReset("Count") | ||
| console.log({key: "value"}, "Hello", "World") | ||
| console.dir(console.Console.prototype, {depth: 0}) | ||
| console.groupEnd() | ||
| ``` | ||
@@ -80,3 +88,5 @@ | ||
| - timeEnd | ||
| - createTask | ||
| - Console | ||
| *Some methods are implemented as empty functions.* | ||
@@ -97,19 +107,28 @@ | ||
| console.log("Hello %s", "World") | ||
| console.info("Hello %s", "World") | ||
| console.debug("Hello %s", "World") | ||
| console.dirxml("Hello %s", "World") | ||
| console.table("Hello %s", "World") | ||
| console.warn("Hello %s", "World") | ||
| console.group("SIMPLE LOG") | ||
| console.group("LOG") | ||
| console.log("Hello %s", "World") | ||
| console.info("Hello %s", "World") | ||
| console.debug("Hello %s", "World") | ||
| console.dirxml("Hello %s", "World") | ||
| console.table("Hello %s", "World") // TODO | ||
| console.warn("Hello %s", "World") | ||
| console.groupEnd() | ||
| console.group("ERROR") | ||
| console.error("Bye %s", "Bug") | ||
| console.trace("Bye %s", "Bug") | ||
| console.groupEnd() | ||
| console.groupEnd() | ||
| console.error("Bye %s", "Bug") | ||
| console.trace("Bye %s", "Bug") | ||
| console.assert(true, "Hello %s", "World") | ||
| console.time("Time") | ||
| console.timeLog("Time") | ||
| console.timeEnd("Time") | ||
| console.count("Count") | ||
| console.count("Count") | ||
| console.countReset("Count") | ||
| console.dir(console, {depth: 0}) | ||
| console.groupCollapsed("UTIL LOG") | ||
| console.assert(true, "Hello %s", "World") | ||
| console.time("Time") | ||
| console.timeLog("Time") | ||
| console.timeEnd("Time") | ||
| console.count("Count") | ||
| console.count("Count") | ||
| console.countReset("Count") | ||
| console.log({key: "value"}, "Hello", "World") | ||
| console.dir(console.Console.prototype, {depth: 0}) | ||
| console.groupEnd() | ||
| ``` | ||
@@ -159,5 +178,7 @@ | ||
| - timeEnd | ||
| - Console | ||
| - createTask | ||
| - Console | ||
| *部分方法使用空函数实现* | ||
| 感谢阅读,欢迎pr补充) |
+25
-17
| const console = require(".") | ||
| console.log("Hello %s", "World") | ||
| console.info("Hello %s", "World") | ||
| console.debug("Hello %s", "World") | ||
| console.dirxml("Hello %s", "World") | ||
| console.table("Hello %s", "World") | ||
| console.warn("Hello %s", "World") | ||
| console.group("SIMPLE LOG") | ||
| console.group("LOG") | ||
| console.log("Hello %s", "World") | ||
| console.info("Hello %s", "World") | ||
| console.debug("Hello %s", "World") | ||
| console.dirxml("Hello %s", "World") | ||
| console.table("Hello %s", "World") // TODO | ||
| console.warn("Hello %s", "World") | ||
| console.groupEnd() | ||
| console.group("ERROR") | ||
| console.error(new Error("An Error")) | ||
| console.trace("Bye %s", "Bug") | ||
| console.groupEnd() | ||
| console.groupEnd() | ||
| console.error("Bye %s", "Bug") | ||
| console.trace("Bye %s", "Bug") | ||
| console.assert(true, "Hello %s", "World") | ||
| console.time("Time") | ||
| console.timeLog("Time") | ||
| console.timeEnd("Time") | ||
| console.count("Count") | ||
| console.count("Count") | ||
| console.countReset("Count") | ||
| console.log({key: "value"}, "Hello", "World") | ||
| console.dir(console, {depth: 0}) | ||
| console.groupCollapsed("UTIL LOG") | ||
| console.assert(true, "Hello %s", "World") | ||
| console.time("Time") | ||
| console.timeLog("Time") | ||
| console.timeEnd("Time") | ||
| console.count("Count") | ||
| console.count("Count") | ||
| console.countReset("Count") | ||
| console.log({key: "value"}, "Hello", "World") | ||
| console.dir(console.Console.prototype, {depth: 0}) | ||
| console.groupEnd() |
Sorry, the diff of this file is not supported yet
14235
14.48%136
34.65%180
13.21%