jscodeshaft
Version:
Collection of more or less primitive helpers and abstractions for JSCodeShift, build for design system migrations and upgrades.
17 lines (14 loc) • 448 B
JavaScript
import { isLiteral, isExpression } from '../../typeChecking';
/**
* Determines whether given className attribute's uses a JSX string expression,
* following the syntax:
* classNames={"banana"}
* @param {Node} classNameAttr
* @param {object} [classNameAttr.value]
* @returns {boolean}
*/
export const isLiteralExpression = ({value}) => (
isExpression(value)
&& isLiteral(value.expression)
&& Boolean(value.expression.value)
)