WIP - add extractor, generate snippet_data
This commit is contained in:
28
node_modules/babel-plugin-minify-numeric-literals/lib/index.js
generated
vendored
Normal file
28
node_modules/babel-plugin-minify-numeric-literals/lib/index.js
generated
vendored
Normal file
@ -0,0 +1,28 @@
|
||||
"use strict";
|
||||
|
||||
module.exports = function () {
|
||||
return {
|
||||
name: "minify-numeric-literals",
|
||||
visitor: {
|
||||
NumericLiteral(path) {
|
||||
if (!path.node.extra) return;
|
||||
|
||||
var normal = path.node.value.toString().replace(/^0\./, ".");
|
||||
var exponential = path.node.value.toExponential().replace(/\+/g, "");
|
||||
|
||||
if (exponential.indexOf(".") >= 0 && exponential.indexOf("e") >= 0) {
|
||||
var lastChar = exponential.substr(exponential.lastIndexOf("e") + 1);
|
||||
var dotIndex = exponential.lastIndexOf(".") + 1;
|
||||
var subLength = exponential.substr(dotIndex, exponential.lastIndexOf("e") - dotIndex).length;
|
||||
exponential = (exponential.substr(0, exponential.lastIndexOf("e") + 1) + (lastChar - subLength)).replace(".", "").replace(/e0/, "");
|
||||
}
|
||||
|
||||
var replacement = normal.length > exponential.length ? exponential : normal;
|
||||
|
||||
if (path.node.extra.raw.length > replacement.length) {
|
||||
path.node.extra.raw = replacement;
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
};
|
||||
Reference in New Issue
Block a user