forked from enviPath/enviPy
Current Dev State
This commit is contained in:
57
static/js/ketcher2/node_modules/watchify-middleware/index.js
generated
vendored
Normal file
57
static/js/ketcher2/node_modules/watchify-middleware/index.js
generated
vendored
Normal file
@ -0,0 +1,57 @@
|
||||
var createBundler = require('./lib/bundler')
|
||||
|
||||
module.exports = function watchifyMiddleware (browserify, opt) {
|
||||
var emitter = createEmitter(browserify, opt)
|
||||
return emitter.middleware
|
||||
}
|
||||
|
||||
module.exports.emitter = createEmitter
|
||||
|
||||
module.exports.getWatchifyVersion = function () {
|
||||
return require('watchify/package.json').version
|
||||
}
|
||||
|
||||
function createEmitter (browserify, opt) {
|
||||
var bundler = createBundler(browserify, opt)
|
||||
var pending = false
|
||||
var contents = ''
|
||||
|
||||
bundler.on('pending', function () {
|
||||
pending = true
|
||||
})
|
||||
|
||||
bundler.on('update', function (data) {
|
||||
pending = false
|
||||
contents = data
|
||||
})
|
||||
|
||||
bundler.middleware = function middleware (req, res) {
|
||||
if (pending) {
|
||||
bundler.emit('log', {
|
||||
level: 'debug',
|
||||
type: 'request',
|
||||
message: 'bundle pending'
|
||||
})
|
||||
|
||||
bundler.once('update', function () {
|
||||
bundler.emit('log', {
|
||||
level: 'debug',
|
||||
type: 'request',
|
||||
message: 'bundle ready'
|
||||
})
|
||||
submit(req, res)
|
||||
})
|
||||
} else {
|
||||
submit(req, res)
|
||||
}
|
||||
}
|
||||
|
||||
return bundler
|
||||
|
||||
function submit (req, res) {
|
||||
res.setHeader('content-type', 'application/javascript; charset=utf-8')
|
||||
res.setHeader('content-length', contents.length)
|
||||
res.statusCode = req.statusCode || 200
|
||||
res.end(contents)
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user