Skip to content
Open
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Support conditional expression declarations
  • Loading branch information
jd-carroll committed Aug 14, 2023
commit f1ab6f4f55f713697d9af459e5c31f2d1a8132a1
12 changes: 12 additions & 0 deletions lib/util/ast.js
Original file line number Diff line number Diff line change
Expand Up @@ -123,6 +123,16 @@ function isObjectExpression(node) {
return node && node.type === 'ObjectExpression';
}

/**
* Find out if a node is an ConditionalExpression
*
* @param {ASTNode} node The AST node being checked
* @returns {Boolean}
*/
function isConditionalExpression(node) {
return node && node.type === 'ConditionalExpression';
}

/**
* Find out if node's value attribute is just simple text
*
Expand All @@ -134,6 +144,7 @@ function isValidDeclaratorValue(node) {
case isLiteralValue(node.init): // Simple string
case isArrayExpression(node.init): // ['tw-unknown-class']
case isObjectExpression(node.init): // {'tw-unknown-class': true}
case isConditionalExpression(node.init): // bool ? 'tw-unknown-class' : 'tw-unknown-class'
return true;
default:
return false;
Expand Down Expand Up @@ -432,6 +443,7 @@ module.exports = {
isLiteralValue,
isArrayExpression,
isObjectExpression,
isConditionalExpression,
isLiteralAttributeValue,
isValidDeclaratorValue,
isVArrayExpression,
Expand Down