sindresorhus/eslint-plugin-unicorn
Rule proposal: `require-css-escape`
Closed
#2,318 opened on Apr 10, 2024
help wantednew rule
Repository metrics
- Stars
- (5,022 stars)
- PR merge metrics
- (Avg merge 1d 16h) (399 merged PRs in 30d)
Description
Description
CSS.escape should always be used when interpolating arbritrary variables into a CSS selector to ensure correct escaping.
Fail
document.querySelector(`#${id}`);
el.querySelectorAll(`a[href^="#${hash}"]`);
Pass
document.querySelector(`#${CSS.escape(id)}`);
el.querySelectorAll(`a[href^="#${CSS.escape(hash)}"]`);
Any tagged template should not trigger the rule:
document.querySelector(cssEscape`#${id}`);