@atlaskit/eslint-plugin-design-system
Version:
The essential plugin for use with the Atlassian Design System.
21 lines • 1.18 kB
JavaScript
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);
};