Merge pull request #194 from andreruffert/master

feature: add optional `--quiet` argument
This commit is contained in:
typicode
2015-11-08 22:22:03 +01:00
4 changed files with 25 additions and 8 deletions

View File

@ -20,6 +20,7 @@
"method-override": "^2.1.2", "method-override": "^2.1.2",
"morgan": "^1.3.1", "morgan": "^1.3.1",
"node-uuid": "^1.4.2", "node-uuid": "^1.4.2",
"object-assign": "^4.0.1",
"pluralize": "^1.1.2", "pluralize": "^1.1.2",
"underscore-db": "^0.9.1", "underscore-db": "^0.9.1",
"update-notifier": "^0.5.0", "update-notifier": "^0.5.0",

View File

@ -45,9 +45,14 @@ module.exports = function () {
alias: 'i', alias: 'i',
description: 'Set database id property (e.g. _id)', description: 'Set database id property (e.g. _id)',
default: 'id' default: 'id'
},
quiet: {
alias: 'q',
description: 'Suppress log messages from output'
} }
}) })
.boolean('watch') .boolean('watch')
.boolean('quiet')
.help('help').alias('help', 'h') .help('help').alias('help', 'h')
.version(pkg.version).alias('version', 'v') .version(pkg.version).alias('version', 'v')
.example('$0 db.json', '') .example('$0 db.json', '')

View File

@ -44,10 +44,13 @@ function createApp (source, object, routes, argv) {
var defaults var defaults
if (argv.static) { if (argv.static) {
defaults = jsonServer.defaults({ defaults = jsonServer.defaults({
logger: !argv.quiet,
static: path.join(process.cwd(), argv.static) static: path.join(process.cwd(), argv.static)
}) })
} else { } else {
defaults = jsonServer.defaults() defaults = jsonServer.defaults({
logger: !argv.quiet
})
} }
app.use(defaults) app.use(defaults)
@ -79,6 +82,11 @@ module.exports = function (argv) {
process.exit(1) process.exit(1)
} }
// noop log fn
if (argv.quiet) {
console.log = function () {}
}
console.log() console.log()
console.log(chalk.cyan(' \\{^_^}/ hi!')) console.log(chalk.cyan(' \\{^_^}/ hi!'))

View File

@ -4,6 +4,7 @@ var express = require('express')
var logger = require('morgan') var logger = require('morgan')
var cors = require('cors') var cors = require('cors')
var errorhandler = require('errorhandler') var errorhandler = require('errorhandler')
var objectAssign = require('object-assign')
module.exports = function (opts) { module.exports = function (opts) {
var userDir = path.join(process.cwd(), 'public') var userDir = path.join(process.cwd(), 'public')
@ -12,17 +13,19 @@ module.exports = function (opts) {
userDir : userDir :
defaultDir defaultDir
opts = opts || { static: staticDir } opts = objectAssign({ logger: true, static: staticDir }, opts)
var arr = [] var arr = []
// Logger // Logger
arr.push(logger('dev', { if (opts.logger) {
skip: function (req, res) { arr.push(logger('dev', {
return process.env.NODE_ENV === 'test' || skip: function (req, res) {
req.path === '/favicon.ico' return process.env.NODE_ENV === 'test' ||
} req.path === '/favicon.ico'
})) }
}))
}
// Enable CORS for all the requests, including static files // Enable CORS for all the requests, including static files
arr.push(cors({ origin: true, credentials: true })) arr.push(cors({ origin: true, credentials: true }))