460 lines
17 KiB
Diff
460 lines
17 KiB
Diff
diff --git a/elementType.js b/elementType.js
|
|
index 96873ac..c7b909a 100644
|
|
--- a/elementType.js
|
|
+++ b/elementType.js
|
|
@@ -1 +1 @@
|
|
-module.exports = require('./lib').elementType; // eslint-disable-line import/no-unresolved
|
|
+export { elementType as default } from './src';
|
|
\ No newline at end of file
|
|
diff --git a/eventHandlers.js b/eventHandlers.js
|
|
index b5d7f62..208eaca 100644
|
|
--- a/eventHandlers.js
|
|
+++ b/eventHandlers.js
|
|
@@ -1 +1 @@
|
|
-module.exports = require('./lib').eventHandlers; // eslint-disable-line import/no-unresolved
|
|
+export { eventHandlers as default } from './src';
|
|
\ No newline at end of file
|
|
diff --git a/eventHandlersByType.js b/eventHandlersByType.js
|
|
index b7a0c42..e2757e9 100644
|
|
--- a/eventHandlersByType.js
|
|
+++ b/eventHandlersByType.js
|
|
@@ -1 +1 @@
|
|
-module.exports = require('./lib').eventHandlersByType; // eslint-disable-line import/no-unresolved
|
|
+export { eventHandlersByType as default } from './src';
|
|
\ No newline at end of file
|
|
diff --git a/getLiteralPropValue.js b/getLiteralPropValue.js
|
|
index efc5c8d..970fc39 100644
|
|
--- a/getLiteralPropValue.js
|
|
+++ b/getLiteralPropValue.js
|
|
@@ -1 +1 @@
|
|
-module.exports = require('./lib').getLiteralPropValue; // eslint-disable-line import/no-unresolved
|
|
+export { getLiteralPropValue as default } from './src';
|
|
\ No newline at end of file
|
|
diff --git a/getProp.js b/getProp.js
|
|
index e523c2c..4e270e9 100644
|
|
--- a/getProp.js
|
|
+++ b/getProp.js
|
|
@@ -1 +1 @@
|
|
-module.exports = require('./lib').getProp; // eslint-disable-line import/no-unresolved
|
|
+export { getProp as default } from './src';
|
|
\ No newline at end of file
|
|
diff --git a/getPropValue.js b/getPropValue.js
|
|
index 883a37c..86bf585 100644
|
|
--- a/getPropValue.js
|
|
+++ b/getPropValue.js
|
|
@@ -1 +1 @@
|
|
-module.exports = require('./lib').getPropValue; // eslint-disable-line import/no-unresolved
|
|
+export { getPropValue as default } from './src';
|
|
\ No newline at end of file
|
|
diff --git a/hasAnyProp.js b/hasAnyProp.js
|
|
index 2a88420..95b3adc 100644
|
|
--- a/hasAnyProp.js
|
|
+++ b/hasAnyProp.js
|
|
@@ -1 +1 @@
|
|
-module.exports = require('./lib').hasAnyProp; // eslint-disable-line import/no-unresolved
|
|
+export { hasAnyProp as default } from './src';
|
|
\ No newline at end of file
|
|
diff --git a/hasEveryProp.js b/hasEveryProp.js
|
|
index 338f569..e865100 100644
|
|
--- a/hasEveryProp.js
|
|
+++ b/hasEveryProp.js
|
|
@@ -1 +1 @@
|
|
-module.exports = require('./lib').hasEveryProp; // eslint-disable-line import/no-unresolved
|
|
+export { hasEveryProp } from './src';
|
|
\ No newline at end of file
|
|
diff --git a/hasProp.js b/hasProp.js
|
|
index 0f1cd04..bfed363 100644
|
|
--- a/hasProp.js
|
|
+++ b/hasProp.js
|
|
@@ -1 +1 @@
|
|
-module.exports = require('./lib').hasProp; // eslint-disable-line import/no-unresolved
|
|
+export { hasProp } from './src';
|
|
\ No newline at end of file
|
|
diff --git a/package.json b/package.json
|
|
index 738d1b3..befb66e 100644
|
|
--- a/package.json
|
|
+++ b/package.json
|
|
@@ -2,7 +2,7 @@
|
|
"name": "jsx-ast-utils",
|
|
"version": "3.3.4",
|
|
"description": "AST utility module for statically analyzing JSX",
|
|
- "main": "lib/index.js",
|
|
+ "main": "src/index.js",
|
|
"scripts": {
|
|
"prepack": "npmignore --auto --commentLines=autogenerated && npm run build",
|
|
"prebuild": "rimraf lib",
|
|
@@ -62,8 +62,6 @@
|
|
},
|
|
"license": "MIT",
|
|
"dependencies": {
|
|
- "array-includes": "^3.1.6",
|
|
- "array.prototype.flat": "^1.3.1",
|
|
"object.assign": "^4.1.4",
|
|
"object.values": "^1.1.6"
|
|
},
|
|
diff --git a/propName.js b/propName.js
|
|
index 361a52b..4424cfe 100644
|
|
--- a/propName.js
|
|
+++ b/propName.js
|
|
@@ -1 +1 @@
|
|
-module.exports = require('./lib').propName; // eslint-disable-line import/no-unresolved
|
|
+export { propName } from './src';
|
|
\ No newline at end of file
|
|
diff --git a/src/index.js b/src/index.js
|
|
index 6814764..565a66e 100644
|
|
--- a/src/index.js
|
|
+++ b/src/index.js
|
|
@@ -5,7 +5,7 @@ import getProp from './getProp';
|
|
import getPropValue, { getLiteralPropValue } from './getPropValue';
|
|
import propName from './propName';
|
|
|
|
-module.exports = {
|
|
+export {
|
|
hasProp,
|
|
hasAnyProp,
|
|
hasEveryProp,
|
|
diff --git a/src/values/JSXElement.js b/src/values/JSXElement.js
|
|
index e5a049f..029c23d 100644
|
|
--- a/src/values/JSXElement.js
|
|
+++ b/src/values/JSXElement.js
|
|
@@ -1,12 +1,11 @@
|
|
+import getValue from './index';
|
|
+
|
|
/**
|
|
* Extractor function for a JSXElement type value node.
|
|
*
|
|
* Returns self-closing element with correct name.
|
|
*/
|
|
export default function extractValueFromJSXElement(value) {
|
|
- // eslint-disable-next-line global-require
|
|
- const getValue = require('.').default;
|
|
-
|
|
const Tag = value.openingElement.name.name;
|
|
if (value.openingElement.selfClosing) {
|
|
return `<${Tag} />`;
|
|
diff --git a/src/values/JSXFragment.js b/src/values/JSXFragment.js
|
|
index 379137e..90cbc54 100644
|
|
--- a/src/values/JSXFragment.js
|
|
+++ b/src/values/JSXFragment.js
|
|
@@ -1,12 +1,11 @@
|
|
+import getValue from './index';
|
|
+
|
|
/**
|
|
* Extractor function for a JSXFragment type value node.
|
|
*
|
|
* Returns self-closing element with correct name.
|
|
*/
|
|
export default function extractValueFromJSXFragment(value) {
|
|
- // eslint-disable-next-line global-require
|
|
- const getValue = require('.').default;
|
|
-
|
|
if (value.children.length === 0) {
|
|
return '<></>';
|
|
}
|
|
diff --git a/src/values/expressions/ArrayExpression.js b/src/values/expressions/ArrayExpression.js
|
|
index f333d58..4462c9d 100644
|
|
--- a/src/values/expressions/ArrayExpression.js
|
|
+++ b/src/values/expressions/ArrayExpression.js
|
|
@@ -1,3 +1,5 @@
|
|
+import getValue from './index';
|
|
+
|
|
/**
|
|
* Extractor function for an ArrayExpression type value node.
|
|
* An array expression is an expression with [] syntax.
|
|
@@ -5,8 +7,6 @@
|
|
* @returns - An array of the extracted elements.
|
|
*/
|
|
export default function extractValueFromArrayExpression(value) {
|
|
- // eslint-disable-next-line global-require
|
|
- const getValue = require('.').default;
|
|
return value.elements.map((element) => {
|
|
if (element === null) return undefined;
|
|
return getValue(element);
|
|
diff --git a/src/values/expressions/AssignmentExpression.js b/src/values/expressions/AssignmentExpression.js
|
|
index 7a14de5..6fce401 100644
|
|
--- a/src/values/expressions/AssignmentExpression.js
|
|
+++ b/src/values/expressions/AssignmentExpression.js
|
|
@@ -1,3 +1,5 @@
|
|
+import getValue from './index';
|
|
+
|
|
/**
|
|
* Extractor function for a AssignmentExpression type value node.
|
|
* An assignment expression looks like `x = y` or `x += y` in expression position.
|
|
@@ -7,7 +9,5 @@
|
|
* @returns - The extracted value converted to correct type.
|
|
*/
|
|
export default function extractValueFromAssignmentExpression(value) {
|
|
- // eslint-disable-next-line global-require
|
|
- const getValue = require('.').default;
|
|
return `${getValue(value.left)} ${value.operator} ${getValue(value.right)}`;
|
|
}
|
|
diff --git a/src/values/expressions/BinaryExpression.js b/src/values/expressions/BinaryExpression.js
|
|
index 5764f3f..7cf9c07 100644
|
|
--- a/src/values/expressions/BinaryExpression.js
|
|
+++ b/src/values/expressions/BinaryExpression.js
|
|
@@ -1,3 +1,5 @@
|
|
+import getValue from './index';
|
|
+
|
|
/**
|
|
* Extractor function for a BinaryExpression type value node.
|
|
* A binary expression has a left and right side separated by an operator
|
|
@@ -7,8 +9,6 @@
|
|
* @returns - The extracted value converted to correct type.
|
|
*/
|
|
export default function extractValueFromBinaryExpression(value) {
|
|
- // eslint-disable-next-line global-require
|
|
- const getValue = require('.').default;
|
|
const { operator, left, right } = value;
|
|
const leftVal = getValue(left);
|
|
const rightVal = getValue(right);
|
|
diff --git a/src/values/expressions/BindExpression.js b/src/values/expressions/BindExpression.js
|
|
index bc0bf0f..6c10fa4 100644
|
|
--- a/src/values/expressions/BindExpression.js
|
|
+++ b/src/values/expressions/BindExpression.js
|
|
@@ -1,3 +1,5 @@
|
|
+import getValue from './index';
|
|
+
|
|
/**
|
|
* Extractor function for a BindExpression type value node.
|
|
* A bind expression looks like `::this.foo`
|
|
@@ -8,8 +10,6 @@
|
|
* @returns - The extracted value converted to correct type.
|
|
*/
|
|
export default function extractValueFromBindExpression(value) {
|
|
- // eslint-disable-next-line global-require
|
|
- const getValue = require('.').default;
|
|
const callee = getValue(value.callee);
|
|
|
|
// If value.object === null, the callee must be a MemberExpression.
|
|
diff --git a/src/values/expressions/CallExpression.js b/src/values/expressions/CallExpression.js
|
|
index f225d16..ce7e43d 100644
|
|
--- a/src/values/expressions/CallExpression.js
|
|
+++ b/src/values/expressions/CallExpression.js
|
|
@@ -1,3 +1,5 @@
|
|
+import getValue from './index';
|
|
+
|
|
/**
|
|
* Extractor function for a CallExpression type value node.
|
|
* A call expression looks like `bar()`
|
|
@@ -8,8 +10,6 @@
|
|
* @returns - The extracted value converted to correct type.
|
|
*/
|
|
export default function extractValueFromCallExpression(value) {
|
|
- // eslint-disable-next-line global-require
|
|
- const getValue = require('.').default;
|
|
const args = Array.isArray(value.arguments) ? value.arguments.map((x) => getValue(x)).join(', ') : '';
|
|
return `${getValue(value.callee)}${value.optional ? '?.' : ''}(${args})`;
|
|
}
|
|
diff --git a/src/values/expressions/ChainExpression.js b/src/values/expressions/ChainExpression.js
|
|
index 1fb00a7..e8b3b75 100644
|
|
--- a/src/values/expressions/ChainExpression.js
|
|
+++ b/src/values/expressions/ChainExpression.js
|
|
@@ -1,3 +1,5 @@
|
|
+import getValue from './index';
|
|
+
|
|
/**
|
|
* Extractor function for a ChainExpression type value node.
|
|
* A member expression is accessing a property on an object `obj.property`.
|
|
@@ -7,7 +9,5 @@
|
|
* and maintaing `obj?.property` convention.
|
|
*/
|
|
export default function extractValueFromChainExpression(value) {
|
|
- // eslint-disable-next-line global-require
|
|
- const getValue = require('.').default;
|
|
return getValue(value.expression || value);
|
|
}
|
|
diff --git a/src/values/expressions/ConditionalExpression.js b/src/values/expressions/ConditionalExpression.js
|
|
index 4fd185d..a3308f6 100644
|
|
--- a/src/values/expressions/ConditionalExpression.js
|
|
+++ b/src/values/expressions/ConditionalExpression.js
|
|
@@ -1,3 +1,5 @@
|
|
+import getValue from './index';
|
|
+
|
|
/**
|
|
* Extractor function for a ConditionalExpression type value node.
|
|
*
|
|
@@ -5,8 +7,6 @@
|
|
* @returns - The extracted value converted to correct type.
|
|
*/
|
|
export default function extractValueFromConditionalExpression(value) {
|
|
- // eslint-disable-next-line global-require
|
|
- const getValue = require('.').default;
|
|
const {
|
|
test,
|
|
alternate,
|
|
diff --git a/src/values/expressions/LogicalExpression.js b/src/values/expressions/LogicalExpression.js
|
|
index 5b65a4e..b5cc573 100644
|
|
--- a/src/values/expressions/LogicalExpression.js
|
|
+++ b/src/values/expressions/LogicalExpression.js
|
|
@@ -1,3 +1,5 @@
|
|
+import getValue from './index';
|
|
+
|
|
/**
|
|
* Extractor function for a LogicalExpression type value node.
|
|
* A logical expression is `a && b` or `a || b`, so we evaluate both sides
|
|
@@ -7,8 +9,6 @@
|
|
* @returns - The extracted value converted to correct type.
|
|
*/
|
|
export default function extractValueFromLogicalExpression(value) {
|
|
- // eslint-disable-next-line global-require
|
|
- const getValue = require('.').default;
|
|
const { operator, left, right } = value;
|
|
const leftVal = getValue(left);
|
|
const rightVal = getValue(right);
|
|
diff --git a/src/values/expressions/MemberExpression.js b/src/values/expressions/MemberExpression.js
|
|
index 5d48fd5..d0cb7af 100644
|
|
--- a/src/values/expressions/MemberExpression.js
|
|
+++ b/src/values/expressions/MemberExpression.js
|
|
@@ -1,3 +1,5 @@
|
|
+import getValue from './index';
|
|
+
|
|
/**
|
|
* Extractor function for a MemberExpression type value node.
|
|
* A member expression is accessing a property on an object `obj.property`.
|
|
@@ -7,7 +9,5 @@
|
|
* and maintaing `obj.property` convention.
|
|
*/
|
|
export default function extractValueFromMemberExpression(value) {
|
|
- // eslint-disable-next-line global-require
|
|
- const getValue = require('.').default;
|
|
return `${getValue(value.object)}${value.optional ? '?.' : '.'}${getValue(value.property)}`;
|
|
}
|
|
diff --git a/src/values/expressions/ObjectExpression.js b/src/values/expressions/ObjectExpression.js
|
|
index 383b569..c1c08a8 100644
|
|
--- a/src/values/expressions/ObjectExpression.js
|
|
+++ b/src/values/expressions/ObjectExpression.js
|
|
@@ -1,4 +1,5 @@
|
|
import assign from 'object.assign';
|
|
+import getValue from './index';
|
|
|
|
/**
|
|
* Extractor function for an ObjectExpression type value node.
|
|
@@ -7,8 +8,6 @@ import assign from 'object.assign';
|
|
* @returns - a representation of the object
|
|
*/
|
|
export default function extractValueFromObjectExpression(value) {
|
|
- // eslint-disable-next-line global-require
|
|
- const getValue = require('.').default;
|
|
return value.properties.reduce((obj, property) => {
|
|
// Support types: SpreadProperty and ExperimentalSpreadProperty
|
|
if (/^(?:Experimental)?Spread(?:Property|Element)$/.test(property.type)) {
|
|
diff --git a/src/values/expressions/OptionalCallExpression.js b/src/values/expressions/OptionalCallExpression.js
|
|
index bcee760..3a36971 100644
|
|
--- a/src/values/expressions/OptionalCallExpression.js
|
|
+++ b/src/values/expressions/OptionalCallExpression.js
|
|
@@ -1,3 +1,5 @@
|
|
+import getValue from './index';
|
|
+
|
|
/**
|
|
* Extractor function for a OptionalCallExpression type value node.
|
|
* A member expression is accessing a property on an object `obj.property` and invoking it.
|
|
@@ -7,7 +9,5 @@
|
|
* and maintaing `obj.property?.()` convention.
|
|
*/
|
|
export default function extractValueFromOptionalCallExpression(value) {
|
|
- // eslint-disable-next-line global-require
|
|
- const getValue = require('.').default;
|
|
return `${getValue(value.callee)}?.(${value.arguments.map((x) => getValue(x)).join(', ')})`;
|
|
}
|
|
diff --git a/src/values/expressions/OptionalMemberExpression.js b/src/values/expressions/OptionalMemberExpression.js
|
|
index 8062eae..d236b04 100644
|
|
--- a/src/values/expressions/OptionalMemberExpression.js
|
|
+++ b/src/values/expressions/OptionalMemberExpression.js
|
|
@@ -1,3 +1,5 @@
|
|
+import getValue from './index';
|
|
+
|
|
/**
|
|
* Extractor function for a OptionalMemberExpression type value node.
|
|
* A member expression is accessing a property on an object `obj.property`.
|
|
@@ -7,7 +9,5 @@
|
|
* and maintaing `obj?.property` convention.
|
|
*/
|
|
export default function extractValueFromOptionalMemberExpression(value) {
|
|
- // eslint-disable-next-line global-require
|
|
- const getValue = require('.').default;
|
|
return `${getValue(value.object)}?.${getValue(value.property)}`;
|
|
}
|
|
diff --git a/src/values/expressions/SequenceExpression.js b/src/values/expressions/SequenceExpression.js
|
|
index 129d992..d644730 100644
|
|
--- a/src/values/expressions/SequenceExpression.js
|
|
+++ b/src/values/expressions/SequenceExpression.js
|
|
@@ -1,3 +1,5 @@
|
|
+import getValue from './index';
|
|
+
|
|
/**
|
|
* Extractor function for a SequenceExpression type value node.
|
|
* A Sequence expression is an object with an attribute named
|
|
@@ -7,7 +9,5 @@
|
|
* @returns - An array of the extracted elements.
|
|
*/
|
|
export default function extractValueFromSequenceExpression(value) {
|
|
- // eslint-disable-next-line global-require
|
|
- const getValue = require('.').default;
|
|
return value.expressions.map((element) => getValue(element));
|
|
}
|
|
diff --git a/src/values/expressions/TSNonNullExpression.js b/src/values/expressions/TSNonNullExpression.js
|
|
index 79dd1b0..7d74c8f 100644
|
|
--- a/src/values/expressions/TSNonNullExpression.js
|
|
+++ b/src/values/expressions/TSNonNullExpression.js
|
|
@@ -1,5 +1,5 @@
|
|
-const extractValueFromThisExpression = require('./ThisExpression').default;
|
|
-const extractValueFromCallExpression = require('./CallExpression').default;
|
|
+import extractValueFromThisExpression from './ThisExpression';
|
|
+import extractValueFromCallExpression from './CallExpression';
|
|
|
|
function navigate(obj, prop, value) {
|
|
if (value.computed) {
|
|
diff --git a/src/values/expressions/TypeCastExpression.js b/src/values/expressions/TypeCastExpression.js
|
|
index 1afd232..aeda1e5 100644
|
|
--- a/src/values/expressions/TypeCastExpression.js
|
|
+++ b/src/values/expressions/TypeCastExpression.js
|
|
@@ -1,3 +1,4 @@
|
|
+import getValue from './index';
|
|
/**
|
|
* Extractor function for a TypeCastExpression type value node.
|
|
* A type cast expression looks like `(this.handleClick: (event: MouseEvent) => void))`
|
|
@@ -7,7 +8,5 @@
|
|
* @returns - The extracted value converted to correct type.
|
|
*/
|
|
export default function extractValueFromTypeCastExpression(value) {
|
|
- // eslint-disable-next-line global-require
|
|
- const getValue = require('.').default;
|
|
return getValue(value.expression);
|
|
}
|
|
diff --git a/src/values/expressions/UnaryExpression.js b/src/values/expressions/UnaryExpression.js
|
|
index b699722..cc1fa35 100644
|
|
--- a/src/values/expressions/UnaryExpression.js
|
|
+++ b/src/values/expressions/UnaryExpression.js
|
|
@@ -1,3 +1,4 @@
|
|
+import getValue from './index';
|
|
/**
|
|
* Extractor function for a UnaryExpression type value node.
|
|
* A unary expression is an expression with a unary operator.
|
|
@@ -7,8 +8,6 @@
|
|
* @returns - The extracted value converted to correct type.
|
|
*/
|
|
export default function extractValueFromUnaryExpression(value) {
|
|
- // eslint-disable-next-line global-require
|
|
- const getValue = require('.').default;
|
|
const { operator, argument } = value;
|
|
|
|
switch (operator) {
|
|
diff --git a/src/values/expressions/UpdateExpression.js b/src/values/expressions/UpdateExpression.js
|
|
index 0e3898c..ca005a2 100644
|
|
--- a/src/values/expressions/UpdateExpression.js
|
|
+++ b/src/values/expressions/UpdateExpression.js
|
|
@@ -1,3 +1,4 @@
|
|
+import getValue from './index';
|
|
/**
|
|
* Extractor function for an UpdateExpression type value node.
|
|
* An update expression is an expression with an update operator.
|
|
@@ -7,8 +8,6 @@
|
|
* @returns - The extracted value converted to correct type.
|
|
*/
|
|
export default function extractValueFromUpdateExpression(value) {
|
|
- // eslint-disable-next-line global-require
|
|
- const getValue = require('.').default;
|
|
const { operator, argument, prefix } = value;
|
|
|
|
let val = getValue(argument);
|