class SCSSLint::Linter::TransitionAll

Checks for explicitly transitioned properties instead of transition all.

Constants

TRANSITION_PROPERTIES

Public Instance Methods

visit_prop(node) click to toggle source
# File lib/scss_lint/linter/transition_all.rb, line 11
def visit_prop(node)
  property = node.name.first.to_s
  return unless TRANSITION_PROPERTIES.include?(property)

  check_transition(node, property, node.value.to_sass)
end

Private Instance Methods

check_transition(node, property, value) click to toggle source
# File lib/scss_lint/linter/transition_all.rb, line 20
def check_transition(node, property, value)
  return unless offset = value =~ /\ball\b/

  pos = node.value_source_range.start_pos.after(value[0, offset])

  add_lint(Location.new(pos.line, pos.offset, 3),
           "#{property} should contain explicit properties "                  'instead of using the keyword all')
end