Sha256: 809faec9a0623a1f0b3f21f92ea79939691841e6d6260b86051e0a860bcef6ef

Contents?: true

Size: 1.52 KB

Versions: 14

Compression:

Stored size: 1.52 KB

Contents

/* eslint-disable */
"use strict";

var webpack = require("webpack");
// var net = require("net");
// var SocketIOClient = require("socket.io-client");

function noop() {}

function DashboardPlugin(options) {
    this.options = options;
}

function log(type, value) {
    console.log('STATUS:', JSON.stringify({type, value}));
}


DashboardPlugin.prototype.apply = function(compiler) {
    var timer;

    // console.log(compiler.options);

    if ( compiler.options.devServer ) {
        let {port, host, outputPath} = compiler.options.devServer;
        log("dev-server", { port, host, outputPath });
    }

    compiler.apply(new webpack.ProgressPlugin(function (percent, msg) {
        log("compile", {
            "progress":  percent,
            "operation": msg,
            "ms": Date.now() - timer
        });
    }));

    compiler.plugin("compile", function() {
        timer = Date.now();
        log("compile", {
            "progress":  0,
            "operation": "idle"
        })
    });

    compiler.plugin("invalid", function() {
        log("status", "Invalidated");
    });

    compiler.plugin("after-emit", function(c) {
        for (var k in c.assets){
            log("asset", {name: k, size: c.assets[k].size()});
        }
    });

    compiler.plugin("done", function(stats) {
        log("status", "success");
    });

    compiler.plugin("failed", function() {
        log("status", "failed");
    });
    compiler.plugin("valid", function() {
        log("status", "valid");
    });

}

module.exports = DashboardPlugin;

Version data entries

14 entries across 14 versions & 1 rubygems

Version Path
webpack_driver-0.5.0pre1 templates/status-plugin.js.tt
webpack_driver-0.4.1 templates/status-plugin.js.tt
webpack_driver-0.4.0 templates/status-plugin.js.tt
webpack_driver-0.3.7 templates/status-plugin.js.tt
webpack_driver-0.3.6 templates/status-plugin.js.tt
webpack_driver-0.3.5 templates/status-plugin.js.tt
webpack_driver-0.3.4 templates/status-plugin.js.tt
webpack_driver-0.3.3 templates/status-plugin.js.tt
webpack_driver-0.3.2 templates/status-plugin.js.tt
webpack_driver-0.3.1 templates/status-plugin.js.tt
webpack_driver-0.3.0 templates/status-plugin.js.tt
webpack_driver-0.2.1 templates/status-plugin.js.tt
webpack_driver-0.2.0 templates/status-plugin.js.tt
webpack_driver-0.1.1 templates/status-plugin.js.tt