UNPKG

744 BJavaScriptView Raw
1var expressMiddleware = require('webpack-dev-middleware');
2
3function middleware(doIt, req, res) {
4 var originalEnd = res.end;
5
6 return function (done) {
7 res.end = function () {
8 originalEnd.apply(this, arguments);
9 done(null, 0);
10 };
11 doIt(req, res, function () {
12 done(null, 1);
13 })
14 }
15}
16
17module.exports = function (compiler, option) {
18 var doIt = expressMiddleware(compiler, option);
19 return function*(next) {
20 var ctx = this;
21 var req = this.req;
22 var runNext = yield middleware(doIt, req, {
23 end: function (content) {
24 ctx.body = content;
25 },
26 setHeader: function () {
27 ctx.set.apply(ctx, arguments);
28 }
29 });
30 if (runNext) {
31 yield *next;
32 }
33 };
34};