Move plugin processing to top of plugins (#6381)
* centralize plugin options * Centralize plugins options - move more options to the top - move validations that depend on options to the top * use isLoose option * Move more validations to the top * Move ref parameter for rewriteModuleStatementsAndPrepareHeader() to the top * fix eslint errors * remove unused parameter * set default systemGlobal value * Revert "Move ref parameter for rewriteModuleStatementsAndPrepareHeader() to the top" This reverts commit b3855302d17fa19d8acb4c8accab3680c8d2710e. * Revert "Move more validations to the top" This reverts commit e5861d8a034ff8f553391f55654f753bcf428a5d. * fix allowMutablePropsOnTags option usage * improve naming * change Contructor definition for sake of consistency * move allowMutablePropsOnTags validation to the top * add missing !
This commit is contained in:
committed by
Logan Smyth
parent
d89063bb32
commit
fcdfc61bdb
@@ -1,9 +1,8 @@
|
||||
export default function({ types: t }) {
|
||||
function getSpreadLiteral(spread, scope, state) {
|
||||
if (
|
||||
state.opts.loose &&
|
||||
!t.isIdentifier(spread.argument, { name: "arguments" })
|
||||
) {
|
||||
export default function({ types: t }, options) {
|
||||
const { loose } = options;
|
||||
|
||||
function getSpreadLiteral(spread, scope) {
|
||||
if (loose && !t.isIdentifier(spread.argument, { name: "arguments" })) {
|
||||
return spread.argument;
|
||||
} else {
|
||||
return scope.toArray(spread.argument, true);
|
||||
@@ -25,14 +24,14 @@ export default function({ types: t }) {
|
||||
return [];
|
||||
}
|
||||
|
||||
function build(props: Array, scope, state) {
|
||||
function build(props: Array, scope) {
|
||||
const nodes = [];
|
||||
let _props = [];
|
||||
|
||||
for (const prop of props) {
|
||||
if (t.isSpreadElement(prop)) {
|
||||
_props = push(_props, nodes);
|
||||
nodes.push(getSpreadLiteral(prop, scope, state));
|
||||
nodes.push(getSpreadLiteral(prop, scope));
|
||||
} else {
|
||||
_props.push(prop);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user