* Fix workflow * Trigger * [auto] Update compiled version * [auto] Commit modules * Push Windows changes * Fix * [auto] Update compiled version * Try removing cwd * [auto] Update compiled version * Try with path module * [auto] Update compiled version * Fix path * [auto] Update compiled version * Use raw path * [auto] Update compiled version * Other path * [auto] Update compiled version * Avoid @action/exec * [auto] Update compiled version * test * [auto] Update compiled version * test * [auto] Update compiled version * test * [auto] Update compiled version * test * [auto] Update compiled version * Try with shelljs * [auto] Update compiled version * Fix my stupidity * Copy scripts to local dir * [auto] Update compiled version * Still use path * [auto] Update compiled version * Delete entrypoint.sh * [auto] Update compiled version * Make file executable * [auto] Update compiled version * Try using bash * [auto] Update compiled version
36 lines
816 B
JavaScript
36 lines
816 B
JavaScript
"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;
|
|
}
|
|
}
|
|
|
|
}
|
|
}
|
|
};
|
|
}; |