Add a recommended configuration preset that enables concentric-order and no-empty-style-blocks rules with error severity.
- Fix plugin configuration structure to work properly with ESLint 9
- Set concentric-order and no-empty-style-blocks as recommended rules
- Use error severity for recommended rules to enforce best practices
- Maintain backward compatibility with existing implementations
This change improves developer experience by providing sensible defaults while maintaining flexibility for customization.
Add comprehensive rule to detect and prevent empty CSS style blocks:
- Identify style objects with no properties
- Flag empty style blocks as potential code quality issues
- Provide auto-fix capability to remove empty blocks
- Handle edge cases like comments-only blocks
This rule helps maintain cleaner codebases by eliminating empty style definitions that often result from incomplete refactoring or forgotten implementations, reducing confusion and unnecessary code.
- Fix handling of missing groupOrder configuration
- Refactor negative conditions to positive ones with optional chaining
- Add comprehensive tests to achieve total coverage
Set up comprehensive CI pipeline with three jobs:
- Lint: Runs ESLint and type checking
- Test: Executes test suite with Coveralls integration
- Build: Verifies package builds correctly
The workflow uses pnpm and caches dependencies for faster runs.
- Fix workflow triggers to support both manual runs and tag pushes
- Add conditional logic to handle different event types
- Skip already existing releases to prevent errors
- Add completion messages for better feedback
- Improve error handling for the release creation process
Add comprehensive tests for shared utility modules to improve code coverage:
- Test property name extraction edge cases
- Test CSS property priority map with invalid groups
- Test order strategy visitor creator edge cases
- Test font face property order enforcer early returns
- Test style node processor with arrays and null values
These tests ensure all code paths in shared utilities are properly exercised,
including error handling and edge cases.
Add tests for all three CSS property ordering rules:
alphabetical-order,
concentric-order,
custom-order,
Tests cover all implemented vanilla-extract APIs, fontFace, globalFontFace, globalKeyframes, globalStyle, keyframes, style, and styleVariants.. Each test verifies both valid and invalid cases, along with proper auto-fixing functionality.
- Ensure 'src' property always appears first
- Sort remaining properties alphabetically
- Handle both APIs correctly despite different argument structures
- Handles font faces ordering the same in all 3 available CSS rules
- Update documentation with fontFace ordering details