mirror of
https://github.com/S2-/minifyfromhtml.git
synced 2025-08-03 20:30:04 +02:00
add some packages
This commit is contained in:
36
node_modules/babel-plugin-transform-member-expression-literals/lib/index.js
generated
vendored
Normal file
36
node_modules/babel-plugin-transform-member-expression-literals/lib/index.js
generated
vendored
Normal file
@@ -0,0 +1,36 @@
|
||||
"use strict";
|
||||
|
||||
module.exports = function ({
|
||||
types: t
|
||||
}) {
|
||||
return {
|
||||
name: "transform-member-expression-literals",
|
||||
visitor: {
|
||||
// foo['bar'] -> foo.bar
|
||||
MemberExpression: {
|
||||
exit({
|
||||
node
|
||||
}) {
|
||||
const prop = node.property;
|
||||
|
||||
if (!node.computed || !t.isStringLiteral(prop)) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (prop.value.match(/^\d+$/)) {
|
||||
const newProp = parseInt(prop.value, 10);
|
||||
|
||||
if (newProp.toString() === prop.value) {
|
||||
node.property = t.numericLiteral(newProp);
|
||||
node.computed = false;
|
||||
}
|
||||
} else if (t.isValidIdentifier(prop.value)) {
|
||||
node.property = t.identifier(prop.value);
|
||||
node.computed = false;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
};
|
||||
};
|
Reference in New Issue
Block a user