Sha256: dc52666add7a9d0096d4d6a758c24ec0be16df00ef6d06e5d94fa47658a31ee5
Contents?: true
Size: 1.05 KB
Versions: 6
Compression:
Stored size: 1.05 KB
Contents
require_relative 'base' require 'better_html/test_helper/ruby_node' module BetterHtml module TestHelper module SafeErb class NoJavascriptTagHelper < Base def validate no_javascript_tag_helper(ast) end private def no_javascript_tag_helper(node) erb_nodes(node).each do |erb_node, indicator_node, code_node| indicator = indicator_node&.loc&.source next if indicator == '#' || indicator == '%' source = code_node.loc.source ruby_node = begin RubyNode.parse(source) rescue ::Parser::SyntaxError nil end next unless ruby_node ruby_node.descendants(:send, :csend).each do |send_node| next unless send_node.method_name?(:javascript_tag) add_error( "'javascript_tag do' syntax is deprecated; use inline <script> instead", location: erb_node.loc, ) end end end end end end end
Version data entries
6 entries across 6 versions & 1 rubygems