From 1cba65808e56ccce2cbe672bd48956a878ea83b2 Mon Sep 17 00:00:00 2001 From: Jeff Dederick Date: Tue, 31 Oct 2017 10:16:28 -0400 Subject: [PATCH 1/3] all warmed up --- .gitignore | 1 + index.js | 9 +++++++++ package.json | 23 +++++++++++++++++++++++ 3 files changed, 33 insertions(+) create mode 100644 .gitignore create mode 100644 index.js create mode 100644 package.json diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..c2658d7 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +node_modules/ diff --git a/index.js b/index.js new file mode 100644 index 0000000..cc8ae44 --- /dev/null +++ b/index.js @@ -0,0 +1,9 @@ +const _ = require('lodash'); +const chalk = require('chalk'); + +console.log(chalk.blue('Hello World!')); +console.log(chalk.bgRed(chalk.gray('Happy Halloween'))); + +_.each([1, 2, 3], function(x) { + console.log(x * 2); +}); diff --git a/package.json b/package.json new file mode 100644 index 0000000..a77480f --- /dev/null +++ b/package.json @@ -0,0 +1,23 @@ +{ + "name": "assignment_node_hello_world", + "version": "1.0.0", + "description": "node logger app", + "main": "index.js", + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "repository": { + "type": "git", + "url": "git+https://github.com/Seeker0/assignment_node_hello_world.git" + }, + "author": "Jeff Dederick", + "license": "ISC", + "bugs": { + "url": "https://github.com/Seeker0/assignment_node_hello_world/issues" + }, + "homepage": "https://github.com/Seeker0/assignment_node_hello_world#readme", + "dependencies": { + "chalk": "^2.3.0", + "lodash": "^4.17.4" + } +} From de723bb65b41e0e47cb8cf30438c3e72879338b1 Mon Sep 17 00:00:00 2001 From: Jeff Dederick Date: Tue, 31 Oct 2017 10:51:42 -0400 Subject: [PATCH 2/3] logger with colors completed --- index.js | 14 +++++++------- lib/logger.js | 31 +++++++++++++++++++++++++++++++ 2 files changed, 38 insertions(+), 7 deletions(-) create mode 100644 lib/logger.js diff --git a/index.js b/index.js index cc8ae44..fabc8a8 100644 --- a/index.js +++ b/index.js @@ -1,9 +1,9 @@ -const _ = require('lodash'); -const chalk = require('chalk'); +'use strict'; -console.log(chalk.blue('Hello World!')); -console.log(chalk.bgRed(chalk.gray('Happy Halloween'))); +let _ = require('lodash'); +let chalk = require('chalk'); +let logger = require('./lib/logger.js'); -_.each([1, 2, 3], function(x) { - console.log(x * 2); -}); +logger.log('INFO level message', 'info'); +logger.log('WARNING level message', 'warning'); +logger.log('ERROR level message', 'error'); diff --git a/lib/logger.js b/lib/logger.js new file mode 100644 index 0000000..6b2047b --- /dev/null +++ b/lib/logger.js @@ -0,0 +1,31 @@ +'use strict'; +let chalk = require('chalk'); + +let logger = { + log: function(message, logLevel) { + switch (logLevel) { + case 'info': + return this.info(message); + break; + case 'warning': + return this.warning(message); + break; + case 'error': + return this.error(message); + break; + default: + alert(chalk.red('logLevel must be info, warning, or error')); + } + }, + info: function(message) { + console.log(chalk.blue(message)); + }, + warning: function(message) { + console.log(chalk.yellow(message)); + }, + error: function(message) { + console.log(chalk.red(message)); + } +}; + +module.exports = logger; From 58e52539389b155a68421434c3ff1af2784f2379 Mon Sep 17 00:00:00 2001 From: Jeff Dederick Date: Tue, 31 Oct 2017 11:23:12 -0400 Subject: [PATCH 3/3] project functional and complete --- index.js | 11 ++++++++--- lib/logger.js | 6 +++--- 2 files changed, 11 insertions(+), 6 deletions(-) diff --git a/index.js b/index.js index fabc8a8..5613f9c 100644 --- a/index.js +++ b/index.js @@ -3,7 +3,12 @@ let _ = require('lodash'); let chalk = require('chalk'); let logger = require('./lib/logger.js'); +let messages = require('./data/logs.json'); -logger.log('INFO level message', 'info'); -logger.log('WARNING level message', 'warning'); -logger.log('ERROR level message', 'error'); +// logger.log('INFO level message', 'info'); +// logger.log('WARNING level message', 'warning'); +// logger.log('ERROR level message', 'error'); + +_.each(messages, function(x) { + return logger.log(x.level, x.message); +}); diff --git a/lib/logger.js b/lib/logger.js index 6b2047b..68c9bc0 100644 --- a/lib/logger.js +++ b/lib/logger.js @@ -2,8 +2,8 @@ let chalk = require('chalk'); let logger = { - log: function(message, logLevel) { - switch (logLevel) { + log: function(level, message) { + switch (level) { case 'info': return this.info(message); break; @@ -14,7 +14,7 @@ let logger = { return this.error(message); break; default: - alert(chalk.red('logLevel must be info, warning, or error')); + console.log(chalk.red('logLevel must be info, warning, or error')); } }, info: function(message) {