diff planemo/lib/python3.7/site-packages/cwltool/jshint/jshint_wrapper.js @ 0:d30785e31577 draft

"planemo upload commit 6eee67778febed82ddd413c3ca40b3183a3898f1"
author guerler
date Fri, 31 Jul 2020 00:18:57 -0400
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/planemo/lib/python3.7/site-packages/cwltool/jshint/jshint_wrapper.js	Fri Jul 31 00:18:57 2020 -0400
@@ -0,0 +1,47 @@
+"use strict";
+// set a global object, in order for jshint to work
+var global = this;
+
+function validateJS(input) {
+  var jshintGlobalsObj = {};
+  input.globals.forEach(function (global) {
+    jshintGlobalsObj[global] = true;
+  })
+  var includewarnings;
+
+  if (input.options.includewarnings !== undefined) {
+    includewarnings = input.options.includewarnings;
+    delete input.options.includewarnings;
+  }
+
+  JSHINT(
+    input.code,
+    input.options,
+    jshintGlobalsObj
+  )
+
+  var jshintData = JSHINT.data();
+  if (jshintData.errors !== undefined) {
+    if (includewarnings !== undefined) {
+      jshintData.errors = jshintData.errors.filter(function (error) {
+        return includewarnings.indexOf(error.code) !== -1 || error.code[0] == "E";
+      })
+    }
+
+    jshintData.errors.forEach(function (error) {
+      if (error.code == "W104" || error.code == "W119") {
+        if (error.code == "W104"){
+          var jslint_suffix = " (use 'esversion: 6') or Mozilla JS extensions (use moz)."
+        }
+        else{
+          var jslint_suffix = " (use 'esversion: 6')"
+        }
+
+        error.reason = error.reason.slice(0, -jslint_suffix.length - 1) +
+          ". CWL only supports ES5.1";
+      }
+    })
+  }
+
+  return jshintData;
+}