task "eslint" => "eslint:check"
-namespace "eslint" do
- def yarn_path
- Rails.root.join("bin", "yarn").to_s
- end
+def yarn_path
+ Rails.root.join("bin/yarn").to_s
+end
- def config_file
- Rails.root.join("config", "eslint.json").to_s
- end
+def config_file
+ Rails.root.join("config/eslint.json").to_s
+end
- def js_files
- Rails.application.assets.each_file.select do |file|
- file.ends_with?(".js") && !file.match?(%r{/(gems|vendor|i18n)/})
- end
+def js_files
+ Rails.application.assets.each_file.select do |file|
+ file.ends_with?(".js") && !file.match?(%r{/(gems|vendor|i18n|node_modules)/})
end
+end
+namespace "eslint" do
task :check => :environment do
system(yarn_path, "run", "eslint", "-c", config_file, *js_files) || abort
end