This repository has been archived by the owner on Mar 11, 2018. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathindex-browser-dev.cjs.js.map
1 lines (1 loc) · 21.3 KB
/
index-browser-dev.cjs.js.map
1
{"version":3,"file":"index-browser-dev.cjs.js","sources":["../src/index.js"],"sourcesContent":["/* eslint-disable max-lines, flowtype/sort-keys */\n\nimport util from 'util';\nimport levels from 'nightingale-levels';\n\ntype RecordType = {\n level: number,\n key: string,\n displayName: ?string,\n datetime: Date,\n message: string,\n context: ?Object,\n metadata: ?Object,\n extra: ?Object,\n};\n\ntype HandlerType = {\n minLevel: number,\n isHandling: ?() => boolean,\n handle: ?(record: RecordType) => boolean,\n};\n\ntype ProcessorType = (record: RecordType) => void;\n\ntype ConfigForLoggerType = {\n handlers: Array<HandlerType>,\n processors: Array<ProcessorType>,\n};\n\nif (!global.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER) {\n global.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER = function(): ConfigForLoggerType {\n return { handlers: [], processors: [] };\n };\n}\n\nif (!global.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER_RECORD) {\n global.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER_RECORD = (\n key: string,\n level: number,\n ): ConfigForLoggerType => {\n const { handlers, processors } = global.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER(key);\n\n return {\n handlers: handlers.filter(\n handler =>\n level >= handler.minLevel && (!handler.isHandling || handler.isHandling(level, key)),\n ),\n processors,\n };\n };\n}\n\n/** @private */\nfunction getConfigForLoggerRecord(key: ?string, recordLevel: number): ConfigForLoggerType {\n return global.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER_RECORD(key, recordLevel);\n}\n\n/**\n * Interface that allows you to log records.\n * This records are treated by handlers\n */\nexport default class Logger {\n key: string;\n displayName: ?string;\n\n /**\n * Create a new Logger\n *\n * @param {string} key\n * @param {string} [displayName]\n */\n constructor(key: string, displayName: ?string) {\n this.key = key;\n this.displayName = displayName;\n\n if (key.includes('.')) {\n this.warn('nightingale: `.` in key is deprecated, replace with `:`', { key, displayName });\n this.key = key.replace(/\\./g, ':');\n }\n }\n\n /** @private */\n getHandlersAndProcessors(recordLevel: number): ConfigForLoggerType {\n return getConfigForLoggerRecord(this.key, recordLevel);\n }\n\n /** @private */\n getConfig(): ConfigForLoggerType {\n return global.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER(this.key);\n }\n\n /**\n * Create a child logger\n */\n child(childSuffixKey: string, childDisplayName: ?string): Logger {\n return new Logger(`${this.key}:${childSuffixKey}`, childDisplayName);\n }\n\n /**\n * Create a new Logger with the same key a this attached context\n *\n * @example\n * const loggerMyService = new Logger('app.myService');\n * function someAction(arg1) {\n * const logger = loggerMyService.context({ arg1 });\n * logger.info('starting');\n * // do stuff\n * logger.info('done');\n * }\n *\n */\n context(context: Object): Logger {\n const logger = new Logger(this.key);\n logger.setContext(context);\n return logger;\n }\n\n /**\n * Set the context of this logger\n *\n * @param {Object} context\n */\n setContext(context: Object) {\n this._context = context;\n }\n\n /**\n * Extends existing context of this logger\n */\n extendsContext(extendedContext: Object) {\n Object.assign(this._context, extendedContext);\n }\n\n /**\n * Handle a record\n *\n * Use this only if you know what you are doing.\n */\n addRecord(record: Object) {\n const { handlers, processors } = this.getHandlersAndProcessors(record.level);\n\n if (handlers.length === 0) {\n if (record.level > levels.ERROR) {\n // eslint-disable-next-line no-console\n console.log('[nightingale] no logger for > error level.', {\n key: record.key,\n message: record.message,\n });\n }\n return;\n }\n\n if (processors) {\n processors.forEach(process => process(record, record.context));\n }\n\n handlers.some(handler => handler.handle(record) === false);\n }\n\n /**\n * Log a message\n */\n log(\n message: string,\n metadata: ?Object,\n level: number = levels.INFO,\n options: ?Object = undefined,\n ) {\n const context = metadata && metadata.context;\n if (metadata) {\n delete metadata.context;\n }\n\n let record = {\n level,\n key: this.key,\n displayName: this.displayName,\n datetime: new Date(),\n message,\n context: context || this._context,\n metadata,\n extra: {},\n };\n\n if (options) {\n record = Object.assign(options, record);\n }\n\n this.addRecord(record);\n }\n\n /**\n * Log a trace message\n */\n trace(message: string, metadata: ?Object, metadataStyles: ?Object) {\n this.log(message, metadata, levels.TRACE, { metadataStyles });\n }\n\n /**\n * Log a debug message\n */\n debug(message: string, metadata: ?Object, metadataStyles: ?Object) {\n this.log(message, metadata, levels.DEBUG, { metadataStyles });\n }\n\n /**\n * Notice an info message\n */\n notice(message: string, metadata: ?Object, metadataStyles: ?Object) {\n this.log(message, metadata, levels.NOTICE, { metadataStyles });\n }\n\n /**\n * Log an info message\n */\n info(message: string, metadata: ?Object, metadataStyles: ?Object) {\n this.log(message, metadata, levels.INFO, { metadataStyles });\n }\n\n /**\n * Log a warn message\n */\n warn(message: string, metadata: ?Object, metadataStyles: ?Object) {\n this.log(message, metadata, levels.WARN, { metadataStyles });\n }\n\n /**\n * Log an error message\n */\n error(message: string | Error, metadata: Object = {}, metadataStyles: ?Object) {\n if (message instanceof Error) {\n metadata.error = message;\n message = `${metadata.error.name}: ${metadata.error.message}`;\n }\n this.log(message, metadata, levels.ERROR, { metadataStyles });\n }\n\n /**\n * Log an critical message\n */\n critical(message: string, metadata: ?Object, metadataStyles: ?Object) {\n this.log(message, metadata, levels.CRITICAL, { metadataStyles });\n }\n\n /**\n * Log a fatal message\n */\n fatal(message: string, metadata: ?Object, metadataStyles: ?Object) {\n this.log(message, metadata, levels.FATAL, { metadataStyles });\n }\n\n /**\n * Log an alert message\n */\n alert(message: string, metadata: ?Object, metadataStyles: ?Object) {\n this.log(message, metadata, levels.ALERT, { metadataStyles });\n }\n\n /**\n * Log an inspected value\n */\n inspectValue(value: any, metadata: ?Object, metadataStyles: ?Object) {\n if (BROWSER) {\n throw new Error('Not supported for the browser. Prefer `debugger;`');\n } else {\n // Note: inspect is a special function for node:\n // https://github.com/nodejs/node/blob/a1bda1b4deb08dfb3e06cb778f0db40023b18318/lib/util.js#L210\n value = util.inspect(value, { depth: 6 });\n this.log(value, metadata, levels.DEBUG, { metadataStyles, styles: ['gray'] });\n }\n }\n\n /**\n * Log a debugged var\n */\n inspectVar(varName: string, varValue: any, metadata: ?Object, metadataStyles: ?Object) {\n if (BROWSER) {\n throw new Error('Not supported for the browser. Prefer `debugger;`');\n } else {\n varValue = util.inspect(varValue, { depth: 6 });\n this.log(`${varName} = ${varValue}`, metadata, levels.DEBUG, {\n metadataStyles,\n styles: ['cyan'],\n });\n }\n }\n\n /**\n * Alias for infoSuccess\n */\n success(message: string, metadata: ?Object, metadataStyles: ?Object) {\n this.infoSuccess(message, metadata, metadataStyles);\n }\n\n /**\n * Log an info success message\n */\n infoSuccess(message: string, metadata: ?Object, metadataStyles: ?Object) {\n this.log(message, metadata, levels.INFO, {\n metadataStyles,\n symbol: '✔',\n styles: ['green', 'bold'],\n });\n }\n\n /**\n * Log an debug success message\n */\n debugSuccess(message: string, metadata: ?Object, metadataStyles: ?Object) {\n this.log(message, metadata, levels.DEBUG, {\n metadataStyles,\n symbol: '✔',\n styles: ['green'],\n });\n }\n\n /**\n * Alias for infoFail\n */\n fail(message: string, metadata: ?Object, metadataStyles: ?Object) {\n this.infoFail(message, metadata, metadataStyles);\n }\n\n /**\n * Log an info fail message\n */\n infoFail(message: string, metadata: ?Object, metadataStyles: ?Object) {\n this.log(message, metadata, levels.INFO, {\n metadataStyles,\n symbol: '✖',\n styles: ['red', 'bold'],\n });\n }\n\n /**\n * Log an debug fail message\n */\n debugFail(message: string, metadata: ?Object, metadataStyles: ?Object) {\n this.log(message, metadata, levels.DEBUG, {\n metadataStyles,\n symbol: '✖',\n styles: ['red'],\n });\n }\n\n /**\n * @returns {number} time to pass to timeEnd\n */\n time(\n message: ?string,\n metadata: ?Object,\n metadataStyles: ?Object,\n level: number = levels.DEBUG,\n ): number {\n if (message) {\n this.log(message, metadata, level, { metadataStyles });\n }\n\n return Date.now();\n }\n\n infoTime(message: ?string, metadata: ?Object, metadataStyles: ?Object): number {\n return this.time(message, metadata, metadataStyles, levels.INFO);\n }\n\n /**\n * Finds difference between when this method\n * was called and when the respective time method\n * was called, then logs out the difference\n * and deletes the original record\n */\n timeEnd(\n startTime: number,\n message: string,\n metadata: Object = {},\n metadataStyles: ?Object,\n level: number = levels.DEBUG,\n options: ?Object,\n ) {\n const now = Date.now();\n\n const diffTime = now - startTime;\n\n if (diffTime < 1000) {\n metadata.readableTime = `${diffTime}ms`;\n } else {\n const seconds = diffTime > 1000 && Math.floor(diffTime / 1000);\n const ms = diffTime - seconds * 1000;\n metadata.readableTime = `${seconds ? `${seconds}s and ` : ''}${ms}ms`;\n }\n\n metadata.timeMs = diffTime;\n this.log(message, metadata, level, { ...options, metadataStyles });\n }\n\n /**\n * Like timeEnd, but with INFO level\n */\n infoTimeEnd(time: number, message: string, metadata: ?Object, metadataStyles: ?Object) {\n this.timeEnd(time, message, metadata, metadataStyles, levels.INFO);\n }\n\n /**\n * Like timeEnd, but with INFO level\n */\n infoSuccessTimeEnd(time: number, message: string, metadata: ?Object, metadataStyles: ?Object) {\n this.timeEnd(time, message, metadata, metadataStyles, levels.INFO, {\n symbol: '✔',\n styles: ['green', 'bold'],\n });\n }\n\n /**\n * Log an enter in a function\n *\n * @example\n * class A {\n * method(arg1) {\n * logger.enter(method, { arg1 });\n * // Do your stuff\n * }\n * }\n *\n */\n enter(fn: Function, metadata: ?Object, metadataStyles: ?Object) {\n metadata = {\n functionName: fn.name,\n ...metadata,\n };\n this.log('enter', metadata, levels.TRACE, { metadataStyles });\n }\n\n /**\n * Log an exit in a function\n *\n * @example\n * const logger = new ConsoleLogger('myNamespace.A');\n * class A {\n * method(arg1) {\n * // Do your stuff\n * logger.exit(method, { arg1 });\n * }\n * }\n */\n exit(fn: Function, metadata: ?Object, metadataStyles: ?Object) {\n metadata = {\n functionName: fn.name,\n ...metadata,\n };\n this.log('exit', metadata, levels.TRACE, { metadataStyles });\n }\n\n /**\n * Wrap around a function to log enter and exit of a function\n *\n * @example\n * const logger = new ConsoleLogger('myNamespace.A');\n * class A {\n * method() {\n * logger.wrap(method, () => {\n * // Do your stuff\n * });\n * }\n * }\n *\n * @param {Function} fn\n * @param {Object} [metadata]\n * @param {Object} [metadataStyles]\n * @param {Function} callback\n */\n wrap(\n fn: Function,\n metadata: ?Object | Function,\n metadataStyles: ?Object | Function,\n callback: Function,\n ) {\n if (typeof metadata === 'function') {\n callback = metadata;\n metadata = undefined;\n } else if (typeof metadataStyles === 'function') {\n callback = metadataStyles;\n metadataStyles = undefined;\n }\n\n this.enter(fn, metadata, metadataStyles);\n callback();\n this.exit(fn);\n }\n}\n"],"names":["global","__NIGHTINGALE_GET_CONFIG_FOR_LOGGER","handlers","processors","__NIGHTINGALE_GET_CONFIG_FOR_LOGGER_RECORD","key","level","filter","handler","minLevel","isHandling","getConfigForLoggerRecord","recordLevel","Logger","displayName","includes","warn","replace","childSuffixKey","childDisplayName","context","logger","setContext","_context","extendedContext","assign","record","getHandlersAndProcessors","length","levels","ERROR","log","message","forEach","process","some","handle","metadata","INFO","options","undefined","Date","Object","addRecord","metadataStyles","TRACE","DEBUG","NOTICE","WARN","Error","error","name","CRITICAL","FATAL","ALERT","value","varName","varValue","infoSuccess","infoFail","now","time","startTime","diffTime","readableTime","seconds","Math","floor","timeMs","timeEnd","fn","callback","enter","exit"],"mappings":"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"}