File: //proc/1526/task/1527/cwd/zaklada/html/node_modules/console-browserify/index.js
/*global window, global*/
var util = require("util")
var assert = require("assert")
var now = require("date-now")
var slice = Array.prototype.slice
var console
var times = {}
if (typeof global !== "undefined" && global.console) {
    console = global.console
} else if (typeof window !== "undefined" && window.console) {
    console = window.console
} else {
    console = {}
}
var functions = [
    [log, "log"],
    [info, "info"],
    [warn, "warn"],
    [error, "error"],
    [time, "time"],
    [timeEnd, "timeEnd"],
    [trace, "trace"],
    [dir, "dir"],
    [consoleAssert, "assert"]
]
for (var i = 0; i < functions.length; i++) {
    var tuple = functions[i]
    var f = tuple[0]
    var name = tuple[1]
    if (!console[name]) {
        console[name] = f
    }
}
module.exports = console
function log() {}
function info() {
    console.log.apply(console, arguments)
}
function warn() {
    console.log.apply(console, arguments)
}
function error() {
    console.warn.apply(console, arguments)
}
function time(label) {
    times[label] = now()
}
function timeEnd(label) {
    var time = times[label]
    if (!time) {
        throw new Error("No such label: " + label)
    }
    var duration = now() - time
    console.log(label + ": " + duration + "ms")
}
function trace() {
    var err = new Error()
    err.name = "Trace"
    err.message = util.format.apply(null, arguments)
    console.error(err.stack)
}
function dir(object) {
    console.log(util.inspect(object) + "\n")
}
function consoleAssert(expression) {
    if (!expression) {
        var arr = slice.call(arguments, 1)
        assert.ok(false, util.format.apply(null, arr))
    }
}