Stirling-PDF/devTools/.stylelintrc.json
Ludy 626734c781
chore: add integrate Stylelint for CSS linting (#3909)
# Description of Changes

**What was changed**  
- Added a new `.stylelintrc.json` to configure Stylelint with
`stylelint-config-standard` and custom ignore rules.
- Created a `lint:css` script in `package.json` and added
`stylelint`/`stylelint-config-standard` to `devDependencies`.
  - Added `package-lock.json` to lock dependencies.  
- Updated numerous CSS files under
`stirling-pdf/src/main/resources/static/css/` to fix lint errors
(shorthand properties, removed redundant units, consistent box-shadow
syntax, margin shorthand, etc.).

**Why the change was made**  
- To enforce consistent, modern CSS code style across the project, catch
errors early, and enable automated fixing of common lint issues.


---

## Checklist

### General

- [x] I have read the [Contribution
Guidelines](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/CONTRIBUTING.md)
- [x] I have read the [Stirling-PDF Developer
Guide](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/devGuide/DeveloperGuide.md)
(if applicable)
- [ ] I have read the [How to add new languages to
Stirling-PDF](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/devGuide/HowToAddNewLanguage.md)
(if applicable)
- [x] I have performed a self-review of my own code
- [x] My changes generate no new warnings

### Documentation

- [ ] I have updated relevant docs on [Stirling-PDF's doc
repo](https://github.com/Stirling-Tools/Stirling-Tools.github.io/blob/main/docs/)
(if functionality has heavily changed)
- [ ] I have read the section [Add New Translation
Tags](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/devGuide/HowToAddNewLanguage.md#add-new-translation-tags)
(for new translation tags only)

### UI Changes (if applicable)

- [ ] Screenshots or videos demonstrating the UI changes are attached
(e.g., as comments or direct attachments in the PR)

### Testing (if applicable)

- [ ] I have tested my changes locally. Refer to the [Testing
Guide](https://github.com/Stirling-Tools/Stirling-PDF/blob/main/devGuide/DeveloperGuide.md#6-testing)
for more details.
2025-07-14 12:37:03 +01:00

70 lines
2.0 KiB
JSON

{
"extends": [
"stylelint-config-standard"
],
"plugins": [
"@stylistic/stylelint-plugin"
],
"ignoreFiles": [
"stirling-pdf/src/main/resources/static/css/bootstrap*.css",
"stirling-pdf/src/main/resources/static/css/cookieconsent.css",
"stirling-pdf/src/main/resources/static/css/cookieconsentCustomisation.css",
"stirling-pdf/src/main/resources/static/css/prism.css",
"stirling-pdf/src/main/resources/static/pdfjs-legacy/**/*.css"
],
"rules": {
"property-no-vendor-prefix": null,
"value-no-vendor-prefix": null,
"selector-no-vendor-prefix": null,
"media-feature-name-no-vendor-prefix": null,
"value-keyword-case": null,
"color-function-notation": null,
"alpha-value-notation": null,
"color-function-alias-notation": null,
"selector-class-pattern": null,
"selector-id-pattern": null,
"declaration-block-no-redundant-longhand-properties": null,
"media-feature-range-notation": "prefix",
"selector-attribute-quotes": null,
"at-rule-no-vendor-prefix": null,
"selector-not-notation": null,
"no-duplicate-selectors": [
true,
{
"disableFix": true
}
],
"comment-word-disallowed-list": null,
"custom-property-pattern": null,
"no-descending-specificity": null,
"keyframes-name-pattern": null,
"comment-empty-line-before": [
"always",
{
"ignore": [
"stylelint-commands"
]
}
],
"block-no-empty": true,
"@stylistic/declaration-bang-space-after": "never",
"@stylistic/declaration-bang-space-before": "always",
"@stylistic/declaration-block-trailing-semicolon": "always",
"@stylistic/function-comma-space-after": [
"always-single-line",
{
"disableFix": false
}
],
"@stylistic/function-comma-space-before": "never",
"@stylistic/color-hex-case": "lower",
"@stylistic/declaration-block-semicolon-newline-after": "always",
"@stylistic/indentation": [
2,
{
"baseIndentLevel": 2
}
]
}
}