13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
# File 'lib/primer/view_components/linters/blankslate_api_migration.rb', line 13
def run(processed_source)
processed_source.ast.descendants(:erb).each do |erb_node|
_, _, code_node = *erb_node
code = code_node.children.first.strip
next unless code.include?("Primer::BlankslateComponent")
next if code.end_with?("do", "|")
line = erb_node.loc.source_line
indent = line.split("<%=").first.size
ast = erb_ast(code)
kwargs = ast.arguments.first.arguments.last
replacement = build_replacement_blankslate(kwargs, indent)
add_offense(processed_source.to_source_range(erb_node.loc), "`Primer::BlankslateComponent` is deprecated. `Primer::Beta::Blankslate` should be used instead", replacement)
end
end
|