Press n or j to go to the next uncovered block, b, p or k for the previous block.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 | 2x 2x 2x 2x 2x 2x 2x 2x 363x 363x 2x 2x 2x 2x 96x 76x 76x 2x 2x 134x 2x 2x 2x 2x 1234x 206x 206x 206x 206x 1234x 1234x 2x 2x 1220x 6x 1220x 1214x 1214x 1220x 2x | import { walk } from 'zimmerframe'; import * as w from '../../../warnings.js'; import { is_keyframes_node } from '../../css.js'; /** * @param {import('#compiler').Css.StyleSheet} stylesheet */ export function warn_unused(stylesheet) { walk(stylesheet, { stylesheet }, visitors); } /** @type {import('zimmerframe').Visitors<import('#compiler').Css.Node, { stylesheet: import('#compiler').Css.StyleSheet }>} */ const visitors = { Atrule(node, context) { if (!is_keyframes_node(node)) { context.next(); } }, PseudoClassSelector(node, context) { if (node.name === 'is' || node.name === 'where') { context.next(); } }, ComplexSelector(node, context) { if (!node.metadata.used) { const content = context.state.stylesheet.content; const text = content.styles.substring(node.start - content.start, node.end - content.start); w.css_unused_selector(node, text); } context.next(); }, Rule(node, context) { if (node.metadata.is_global_block) { context.visit(node.prelude); } else { context.next(); } } }; |