@atlaskit/eslint-plugin-design-system
Version:
The essential plugin for use with the Atlassian Design System.
35 lines • 1.2 kB
JavaScript
import { createLintRule } from '../utils/create-lint-rule';
import { JSXElement as _JSXElement } from './node-types/jsx-element';
import { StyledComponent } from './node-types/styled-component';
var rule = createLintRule({
meta: {
name: 'no-html-image',
type: 'suggestion',
hasSuggestions: true,
docs: {
description: 'Discourage direct usage of HTML image elements in favor of the Atlassian Design System image component.',
recommended: true,
severity: 'warn'
},
messages: {
noHtmlImage: "This <{{ name }}> should be replaced with the image component from the Atlassian Design System. ADS images ensure accessible implementations, and provide access to ADS styling features like design tokens."
}
},
create: function create(context) {
return {
// transforms styled.<anchor>(...) usages
CallExpression: function CallExpression(node) {
StyledComponent.lint(node, {
context: context
});
},
// transforms <anchor css={...}> usages
JSXElement: function JSXElement(node) {
_JSXElement.lint(node, {
context: context
});
}
};
}
});
export default rule;