UNPKG

@atlaskit/eslint-plugin-design-system

Version:

The essential plugin for use with the Atlassian Design System.

21 lines 1.18 kB
import { isNodeOfType } from 'eslint-codemod-utils'; import { isDecendantOfGlobalToken } from '../utils/is-decendant-of-global-token'; var filterSuggestion = function filterSuggestion(_ref) { var shouldReturnSuggestion = _ref.shouldReturnSuggestion; return shouldReturnSuggestion; }; export var getTokenSuggestion = function getTokenSuggestion(node, reference, config) { return [{ shouldReturnSuggestion: !isDecendantOfGlobalToken(node) && config.shouldEnforceFallbacks === false, desc: "Convert to token", fix: function fix(fixer) { return fixer.replaceText(isNodeOfType(node.parent, 'MemberExpression') ? node.parent : node, isNodeOfType(node.parent, 'JSXAttribute') ? "{token('')}" : "token('')"); } }, { shouldReturnSuggestion: !isDecendantOfGlobalToken(node) && config.shouldEnforceFallbacks === true, desc: "Convert to token with fallback", fix: function fix(fixer) { return fixer.replaceText(isNodeOfType(node.parent, 'MemberExpression') ? node.parent : node, isNodeOfType(node.parent, 'JSXAttribute') ? "{token('', ".concat(reference, ")}") : "token('', ".concat(reference, ")")); } }].filter(filterSuggestion); };