class RuboCop::Cop::Primer::DeprecatedButtonArguments

ButtonComponent.new(size: :small)
good
ButtonComponent.new(variant: :small)
bad
This cop ensures that ‘ButtonComponent` doesn’t use deprecated arguments.

def autocorrect(node)

def autocorrect(node)
  lambda do |corrector|
    corrector.replace(node, DEPRECATIONS[node.value])
  end
end

def on_send(node)

def on_send(node)
  return unless button_component?(node)
  kwargs = node.arguments.last
  return if kwargs.nil?
  pair = kwargs.pairs.find { |x| x.key.value == :variant }
  return if pair.nil?
  add_offense(pair.key, message: INVALID_MESSAGE)
end