rollup-plugin-filesize
Advanced tools
Comparing version
@@ -13,81 +13,85 @@ 'use strict'; | ||
var toConsumableArray = function (arr) { | ||
function _toConsumableArray(arr) { | ||
return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _nonIterableSpread(); | ||
} | ||
function _arrayWithoutHoles(arr) { | ||
if (Array.isArray(arr)) { | ||
for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) arr2[i] = arr[i]; | ||
for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) arr2[i] = arr[i]; | ||
return arr2; | ||
} else { | ||
return Array.from(arr); | ||
} | ||
}; | ||
} | ||
function render(opt, outputOptions, info) { | ||
var primaryColor = opt.theme === "dark" ? "green" : "black"; | ||
var secondaryColor = opt.theme === "dark" ? "yellow" : "blue"; | ||
function _iterableToArray(iter) { | ||
if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === "[object Arguments]") return Array.from(iter); | ||
} | ||
var title = colors[primaryColor].bold; | ||
var value = colors[secondaryColor]; | ||
function _nonIterableSpread() { | ||
throw new TypeError("Invalid attempt to spread non-iterable instance"); | ||
} | ||
var values = [].concat(toConsumableArray(outputOptions.file ? ["" + title("Destination: ") + value(outputOptions.file)] : info.fileName ? [title("Bundle Name: ") + " " + value(info.fileName)] : []), [title("Bundle Size: ") + " " + value(info.bundleSize)], toConsumableArray(info.minSize ? [title("Minified Size: ") + " " + value(info.minSize)] : []), toConsumableArray(info.gzipSize ? [title("Gzipped Size: ") + " " + value(info.gzipSize)] : []), toConsumableArray(info.brotliSize ? ["" + title("Brotli size: ") + value(info.brotliSize)] : [])); | ||
return boxen(values.join("\n"), { padding: 1 }); | ||
function render(opt, outputOptions, info) { | ||
var primaryColor = opt.theme === "dark" ? "green" : "black"; | ||
var secondaryColor = opt.theme === "dark" ? "yellow" : "blue"; | ||
var title = colors[primaryColor].bold; | ||
var value = colors[secondaryColor]; | ||
var values = [].concat(_toConsumableArray(outputOptions.file ? ["".concat(title("Destination: ")).concat(value(outputOptions.file))] : info.fileName ? ["".concat(title("Bundle Name: "), " ").concat(value(info.fileName))] : []), ["".concat(title("Bundle Size: "), " ").concat(value(info.bundleSize))], _toConsumableArray(info.minSize ? ["".concat(title("Minified Size: "), " ").concat(value(info.minSize))] : []), _toConsumableArray(info.gzipSize ? ["".concat(title("Gzipped Size: "), " ").concat(value(info.gzipSize))] : []), _toConsumableArray(info.brotliSize ? ["".concat(title("Brotli size: ")).concat(value(info.brotliSize))] : [])); | ||
return boxen(values.join("\n"), { | ||
padding: 1 | ||
}); | ||
} | ||
function filesize() { | ||
var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; | ||
var env = arguments[1]; | ||
var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; | ||
var env = arguments.length > 1 ? arguments[1] : undefined; | ||
var defaultOptions = { | ||
format: {}, | ||
theme: "dark", | ||
render: render, | ||
showGzippedSize: true, | ||
showBrotliSize: false, | ||
showMinifiedSize: true | ||
}; | ||
var opts = deepAssign({}, defaultOptions, options); | ||
var defaultOptions = { | ||
format: {}, | ||
theme: "dark", | ||
render: render, | ||
showGzippedSize: true, | ||
showBrotliSize: false, | ||
showMinifiedSize: true | ||
}; | ||
if (options.render) { | ||
opts.render = options.render; | ||
} | ||
var opts = deepAssign({}, defaultOptions, options); | ||
if (options.render) { | ||
opts.render = options.render; | ||
} | ||
var getData = function getData(outputOptions, bundle) { | ||
var code = bundle.code, | ||
fileName = bundle.fileName; | ||
var info = {}; | ||
info.fileName = fileName; | ||
info.bundleSize = fileSize(Buffer.byteLength(code), opts.format); | ||
info.brotliSize = opts.showBrotliSize ? fileSize(brotli.sync(code), opts.format) : ""; | ||
var getData = function getData(outputOptions, bundle) { | ||
var code = bundle.code, | ||
fileName = bundle.fileName; | ||
if (opts.showMinifiedSize || opts.showGzippedSize) { | ||
var minifiedCode = terser.minify(code).code; | ||
info.minSize = opts.showMinifiedSize ? fileSize(minifiedCode.length, opts.format) : ""; | ||
info.gzipSize = opts.showGzippedSize ? fileSize(gzip.sync(minifiedCode), opts.format) : ""; | ||
} | ||
var info = {}; | ||
return opts.render(opts, outputOptions, info); | ||
}; | ||
info.fileName = fileName; | ||
if (env === "test") { | ||
return getData; | ||
} | ||
info.bundleSize = fileSize(Buffer.byteLength(code), opts.format); | ||
info.brotliSize = opts.showBrotliSize ? fileSize(brotli.sync(code), opts.format) : ""; | ||
if (opts.showMinifiedSize || opts.showGzippedSize) { | ||
var minifiedCode = terser.minify(code).code; | ||
info.minSize = opts.showMinifiedSize ? fileSize(minifiedCode.length, opts.format) : ""; | ||
info.gzipSize = opts.showGzippedSize ? fileSize(gzip.sync(minifiedCode), opts.format) : ""; | ||
} | ||
return opts.render(opts, outputOptions, info); | ||
}; | ||
if (env === "test") { | ||
return getData; | ||
} | ||
return { | ||
name: "filesize", | ||
generateBundle: function generateBundle(outputOptions, bundle, isWrite) { | ||
Object.keys(bundle).map(function (fileName) { | ||
return bundle[fileName]; | ||
}).filter(function (currentBundle) { | ||
return !currentBundle.isAsset; | ||
}).forEach(function (currentBundle) { | ||
console.log(getData(outputOptions, currentBundle)); | ||
}); | ||
} | ||
}; | ||
return { | ||
name: "filesize", | ||
generateBundle: function generateBundle(outputOptions, bundle, isWrite) { | ||
Object.keys(bundle).map(function (fileName) { | ||
return bundle[fileName]; | ||
}).filter(function (currentBundle) { | ||
return !currentBundle.isAsset; | ||
}).forEach(function (currentBundle) { | ||
console.log(getData(outputOptions, currentBundle)); | ||
}); | ||
} | ||
}; | ||
} | ||
module.exports = filesize; |
{ | ||
"name": "rollup-plugin-filesize", | ||
"version": "6.1.0", | ||
"version": "6.1.1", | ||
"description": "A rollup plugin to show filesize in the cli", | ||
@@ -32,18 +32,18 @@ "main": "dist/index.js", | ||
"dependencies": { | ||
"boxen": "^2.0.0", | ||
"brotli-size": "0.0.3", | ||
"colors": "^1.3.2", | ||
"deep-assign": "^2.0.0", | ||
"filesize": "^3.6.1", | ||
"gzip-size": "^5.0.0", | ||
"terser": "^3.10.0" | ||
"boxen": "^4.1.0", | ||
"brotli-size": "0.1.0", | ||
"colors": "^1.3.3", | ||
"deep-assign": "^3.0.0", | ||
"filesize": "^4.1.2", | ||
"gzip-size": "^5.1.1", | ||
"terser": "^4.0.0" | ||
}, | ||
"devDependencies": { | ||
"@babel/core": "^7.4.5", | ||
"@babel/preset-env": "^7.4.5", | ||
"ava": "^0.19.1", | ||
"babel-preset-es2015": "^6.6.0", | ||
"babel-preset-es2015-rollup": "^3.0.0", | ||
"babel-register": "^6.7.2", | ||
"prettier": "^1.13.7", | ||
"rollup": "^1.0.0", | ||
"rollup-plugin-babel": "^3.0.4" | ||
"babel-register": "^6.26.0", | ||
"prettier": "^1.18.2", | ||
"rollup": "^1.15.6", | ||
"rollup-plugin-babel": "^4.3.2" | ||
}, | ||
@@ -50,0 +50,0 @@ "ava": { |
8451
7.03%152
7.04%+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
Updated
Updated
Updated
Updated
Updated
Updated
Updated