alleyinteractive / alley-scripts

A collection of scripts and utilities for Alley projects.
https://alley-scripts.alley.dev/
6 stars 1 forks source link

Add Duplication Rule to StyleLinter #661

Open llflannery opened 2 months ago

llflannery commented 2 months ago

Description

In Ally stylelint config, we should add an additional rule that would flag any duplication of properties.

Screenshot 2024-06-14 at 4 23 41 PM

It would involve adding"declaration-block-no-duplicate-properties": true, and ignore: ["consecutive-duplicates-with-different-values"] in the .stylelintrc.json settings.

StyleLinter Documentation found here https://stylelint.io/user-guide/rules/declaration-block-no-duplicate-properties/

Use Case

When a developer is writing two identical properties in CSS, the linter should warn them that the first property will be overrided and effectively useless. If someone needs a duplicative property for a specific reason, they would have to disable stylelint for that line intentionally.

padding: 20px;
padding: 30px; 

One concern is that it will start to flag css code that looks like:

.thing-that-renders-with-js {
    /* critical:start */
    opacity: 0;
    /* critical:end */
    opacity: 1;
}

Depending on how many errors like that are flagged, we may have to put a pin in this and have a broader discussion.