UNPKG

jscodeshaft

Version:

Collection of more or less primitive helpers and abstractions for JSCodeShift, build for design system migrations and upgrades.

13 lines (12 loc) 424 B
/** * Determines whether given className attribute's uses classnames library, * following one of the syntaxes: * classNames={cx(...)} * classNames={classnames(...)} * @param {Node} classNameAttr * @returns {boolean} */ export const isClassNamesLib = (classNameAttr) => ( classNameAttr.value.expression.type === 'CallExpression' && ['classnames', 'cx'].includes(classNameAttr.value.expression.callee.name) );