UNPKG

@atlaskit/eslint-plugin-design-system

Version:

The essential plugin for use with the Atlassian Design System.

48 lines 1.87 kB
import { createLintRule } from '../utils/create-lint-rule'; import { StyleProperty } from './transformers/style-property'; var rule = createLintRule({ meta: { name: 'use-tokens-space', type: 'problem', fixable: 'code', hasSuggestions: true, docs: { description: 'Enforces usage of space design tokens rather than hard-coded values.', recommended: false, severity: 'error' }, messages: { noRawSpacingValues: 'The use of spacing primitives or tokens is preferred over the direct application of spacing properties.' } }, create: function create(context) { return { 'CallExpression[callee.name="css"] ObjectExpression Property': function CallExpressionCalleeNameCss_ObjectExpression_Property(node) { return StyleProperty.lint(node, { context: context }); }, 'CallExpression[callee.name="keyframes"] ObjectExpression Property': function CallExpressionCalleeNameKeyframes_ObjectExpression_Property(node) { return StyleProperty.lint(node, { context: context }); }, 'CallExpression[callee.name="cssMap"] ObjectExpression Property': function CallExpressionCalleeNameCssMap_ObjectExpression_Property(node) { return StyleProperty.lint(node, { context: context }); }, 'CallExpression[callee.object.name=styled] ObjectExpression Property': function CallExpressionCalleeObjectNameStyled_ObjectExpression_Property(node) { return StyleProperty.lint(node, { context: context }); }, 'CallExpression[callee.object.name=styled2] ObjectExpression Property': function CallExpressionCalleeObjectNameStyled2_ObjectExpression_Property(node) { return StyleProperty.lint(node, { context: context }); } }; } }); export default rule;