summaryrefslogtreecommitdiff
path: root/haml_lint/inline_javascript.rb
blob: da6af92e82b4412908e3ad1ff2d50edc52888f47 (plain)
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
# frozen_string_literal: true

unless Rails.env.production?
  require_dependency 'haml_lint/haml_visitor'
  require_dependency 'haml_lint/linter'
  require_dependency 'haml_lint/linter_registry'

  module HamlLint
    class Linter::InlineJavaScript < Linter
      include ::HamlLint::LinterRegistry

      def visit_filter(node)
        return unless node.filter_type == 'javascript'

        record_lint(node, 'Inline JavaScript is discouraged (https://docs.gitlab.com/ee/development/gotchas.html#do-not-use-inline-javascript-in-views)')
      end

      def visit_tag(node)
        return unless node.tag_name == 'script'

        record_lint(node, 'Inline JavaScript is discouraged (https://docs.gitlab.com/ee/development/gotchas.html#do-not-use-inline-javascript-in-views)')
      end
    end
  end
end