Socket
Socket
Sign inDemoInstall

bankai

Package Overview
Dependencies
379
Maintainers
7
Versions
114
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 5.4.1 to 5.5.0

101

bin.js
#!/usr/bin/env node
var explain = require('explain-error')
var pinoColada = require('pino-colada')
var mapLimit = require('map-limit')
var serverSink = require('server-sink')
var resolve = require('resolve')
var garnish = require('garnish')
var mkdirp = require('mkdirp')
var subarg = require('subarg')
var bole = require('bole')
var xtend = require('xtend')
var http = require('http')
var path = require('path')
var pino = require('pino')
var pump = require('pump')

@@ -17,2 +19,5 @@ var opn = require('opn')

var bankai = require('./')
var pretty = pinoColada()
var log = pino({ name: 'bankai', level: 'debug' }, pretty)
pretty.pipe(process.stdout)

@@ -85,6 +90,5 @@ var argv = subarg(process.argv.slice(2), {

var outputDir = argv._[2] || 'dist'
startLogging(argv.verbose)
if (argv.h) {
console.info(usage)
log.info(usage)
return process.exit()

@@ -94,3 +98,3 @@ }

if (argv.v) {
console.info(require('../package.json').version)
log.info(require('../package.json').version)
return process.exit()

@@ -102,8 +106,5 @@ }

} else if (cmd === 'build') {
build(entry, outputDir, argv, function (err) {
if (err) throw err
process.exit()
})
build(entry, outputDir, argv, handleError)
} else {
console.error(usage)
log.error(usage)
return process.exit(1)

@@ -113,3 +114,3 @@ }

function handleError (err) {
if (err) throw err
if (err) log.error(err)
}

@@ -123,21 +124,30 @@ }

http.createServer(function (req, res) {
switch (req.url) {
case '/': return assets.html(req, res).pipe(res)
case '/bundle.js': return assets.js(req, res).pipe(res)
case '/bundle.css': return assets.css(req, res).pipe(res)
default:
if (req.headers['accept'].indexOf('html') > 0) {
return assets.html(req, res).pipe(res)
}
if (staticAsset.test(req.url)) {
return assets.static(req, res).pipe(res)
}
res.writeHead(404, 'Not Found')
return res.end()
var server = http.createServer(handler)
server.listen(port, onlisten)
function handler (req, res) {
var sink = serverSink(req, res, function (msg) {
log.info(msg)
})
if (req.url === '/') {
assets.html(req, res).pipe(sink)
} else if (req.url === '/bundle.js') {
assets.js(req, res).pipe(sink)
} else if (req.url === '/bundle.css') {
assets.css(req, res).pipe(sink)
} else if (req.headers['accept'].indexOf('html') > 0) {
assets.html(req, res).pipe(sink)
} else if (staticAsset.test(req.url)) {
assets.static(req, res).pipe(sink)
} else {
res.writeHead(404, 'Not Found')
sink.end()
}
}).listen(port, function () {
}
function onlisten () {
var relative = path.relative(process.cwd(), entry)
var addr = 'http://localhost:' + port
console.info('Started bankai for', relative, 'on', addr)
log.info('Started for ' + relative + ' on ' + addr)
if (argv.open !== false) {

@@ -151,15 +161,25 @@ var app = (argv.open.length) ? argv.open : 'system browser'

}
})
}
}
function build (entry, outputDir, argv, done) {
log.info('bundling assets')
argv = xtend({ watch: false }, argv)
mkdirp.sync(outputDir)
buildStaticAssets(entry, outputDir, argv, done)
var assets = bankai(entry, argv)
var files = [ 'index.html', 'bundle.js', 'bundle.css' ]
mapLimit(files, Infinity, iterator, done)
function iterator (file, done) {
var file$ = fs.createWriteStream(path.join(outputDir, file))
var source$ = assets[file.replace(/^.*\./, '')]()
pump(source$, file$, done)
var fileStream = fs.createWriteStream(path.join(outputDir, file))
var sourceStream = assets[file.replace(/^.*\./, '')]()
log.debug(file + ' started')
pump(sourceStream, fileStream, function (err) {
log.info(file + ' done')
done(err)
})
}

@@ -172,5 +192,15 @@ }

if (fs.existsSync(src)) copy(src, dest)
function copy (src, dest) {
if (!fs.statSync(src).isDirectory()) {
return pump(fs.createReadStream(src), fs.createWriteStream(dest), done)
var relativeName = path.relative(path.join(argv.assets, '../'), src)
log.debug(relativeName + ' started')
return pump(fs.createReadStream(src), fs.createWriteStream(dest), function (err) {
if (err) {
log.error(relativeName + ' error')
return done(err)
}
log.info(relativeName + ' done')
done()
})
}

@@ -184,8 +214,1 @@ if (!fs.existsSync(dest)) fs.mkdirSync(dest)

}
function startLogging (verbose) {
var level = (verbose) ? 'debug' : 'info'
var pretty = garnish({ level: level, name: 'bankai' })
pretty.pipe(process.stdout)
bole.output({ stream: pretty, level: level })
}

@@ -35,2 +35,3 @@ var collapser = require('bundle-collapser/plugin')

this.optimize = opts.optimize
this.watch = opts.watch
this.cssQueue = []

@@ -44,6 +45,9 @@

this._html = (function () {
this._html = html()
this._js = js()
function html () {
var base = {
script: 'bundle.js',
css: (self.cssDisabled) ? null : 'bundle.css',
css: self.cssDisabled ? null : 'bundle.css',
head: '<meta name="viewport" content="width=device-width, initial-scale=1">'

@@ -53,5 +57,5 @@ }

return new Buffer(html)
})()
}
this._js = (function () {
function js () {
var base = {

@@ -66,3 +70,3 @@ basedir: process.cwd(),

var b = (self.optimize)
var b = self.optimize || self.watch === false
? browserify(jsOpts)

@@ -80,3 +84,2 @@ : watchify(browserify(jsOpts))

b.transform(yoyoify, { global: true })
// b.transform(varify, { global: true })
b.transform(uglifyify, { global: true })

@@ -94,3 +97,3 @@ b.plugin(collapser, { global: true })

}
})()
}
}

@@ -100,9 +103,9 @@

Bankai.prototype.js = function (req, res) {
var through$ = new stream.PassThrough()
var throughStream = new stream.PassThrough()
this._js(req, res, function (err, buffer) {
if (err) return through$.emit('error', err)
var source$ = from([buffer])
pump(source$, through$)
if (err) return throughStream.emit('error', err)
var sourceStream = from([buffer])
pump(sourceStream, throughStream)
})
return through$
return throughStream
}

@@ -109,0 +112,0 @@

{
"name": "bankai",
"version": "5.4.1",
"version": "5.5.0",
"description": "DIY asset server",

@@ -30,3 +30,2 @@ "main": "index.js",

"dependencies": {
"bole": "^3.0.1",
"browserify": "^14.0.0",

@@ -39,9 +38,11 @@ "bundle-collapser": "^1.2.1",

"from2": "^2.3.0",
"garnish": "^5.2.0",
"map-limit": "0.0.1",
"mkdirp": "^0.5.1",
"opn": "^4.0.2",
"pino": "^4.0.3",
"pino-colada": "^1.1.0",
"pump": "^1.0.1",
"resolve": "^1.1.7",
"send": "^0.15.0",
"server-sink": "^1.0.0",
"sheetify": "^6.0.1",

@@ -48,0 +49,0 @@ "subarg": "^1.0.0",

@@ -131,2 +131,3 @@ <h1 align="center">bankai</h1>

output and optimize all bundles
- __opts.watch:__ Disable livereload scripts

@@ -133,0 +134,0 @@ ### readableStream = assets.js(req?, res?)

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc