eslint-plugin-vanilla-extract/src/css-rules/no-unknown-unit/rule-definition.ts
Ante Budimir f880c051ff feat 🥁: add no-unknown-unit rule
Adds a rule to disallow unknown or invalid CSS units in vanilla-extract style objects.

- Reports any usage of unrecognized units in property values
- Handles all vanilla-extract APIs (style, styleVariants, recipe, etc.)
- Ignores valid units in special contexts (e.g., CSS functions, custom properties)

No autofix is provided because replacing or removing unknown units may result in unintended or invalid CSS. Manual developer review is required to ensure correctness.
2025-04-16 09:45:33 +03:00

22 lines
624 B
TypeScript

import type { Rule } from 'eslint';
import { createUnknownUnitVisitors } from './unknown-unit-visitor-creator.js';
const noUnknownUnitRule: Rule.RuleModule = {
meta: {
type: 'problem',
docs: {
description: 'disallow invalid or unknown CSS units in vanilla-extract style objects',
category: 'Possible Errors',
recommended: true,
},
schema: [],
messages: {
unknownUnit: 'The unit "{{ unit }}" in value "{{ value }}" is not recognized as a valid CSS unit.',
},
},
create(context) {
return createUnknownUnitVisitors(context);
},
};
export default noUnknownUnitRule;