aboutsummaryrefslogtreecommitdiff
path: root/srcs/wordpress/wp-includes/js/codemirror/fakejshint.js
diff options
context:
space:
mode:
authorCharles <sircharlesaze@gmail.com>2020-01-07 13:06:14 +0100
committerCharles <sircharlesaze@gmail.com>2020-01-07 13:06:14 +0100
commit7086111ad4dd997e12a3220e1ee60c9b9bcf0bb8 (patch)
treef7453d7dd5cbaaab246e23810b02d3edf1e451be /srcs/wordpress/wp-includes/js/codemirror/fakejshint.js
parentc59bdcf77c50cbe89b4a93782cdd6d9e7532080e (diff)
downloadft_server-7086111ad4dd997e12a3220e1ee60c9b9bcf0bb8.tar.gz
ft_server-7086111ad4dd997e12a3220e1ee60c9b9bcf0bb8.tar.bz2
ft_server-7086111ad4dd997e12a3220e1ee60c9b9bcf0bb8.zip
Added wordpress
Diffstat (limited to 'srcs/wordpress/wp-includes/js/codemirror/fakejshint.js')
-rw-r--r--srcs/wordpress/wp-includes/js/codemirror/fakejshint.js43
1 files changed, 43 insertions, 0 deletions
diff --git a/srcs/wordpress/wp-includes/js/codemirror/fakejshint.js b/srcs/wordpress/wp-includes/js/codemirror/fakejshint.js
new file mode 100644
index 0000000..6cc33ce
--- /dev/null
+++ b/srcs/wordpress/wp-includes/js/codemirror/fakejshint.js
@@ -0,0 +1,43 @@
+// JSHINT has some GPL Compatability issues, so we are faking it out and using esprima for validation
+// Based on https://github.com/jquery/esprima/blob/gh-pages/demo/validate.js which is MIT licensed
+
+var fakeJSHINT = new function() {
+ var syntax, errors;
+ var that = this;
+ this.data = [];
+ this.convertError = function( error ){
+ return {
+ line: error.lineNumber,
+ character: error.column,
+ reason: error.description,
+ code: 'E'
+ };
+ };
+ this.parse = function( code ){
+ try {
+ syntax = window.esprima.parse(code, { tolerant: true, loc: true });
+ errors = syntax.errors;
+ if ( errors.length > 0 ) {
+ for ( var i = 0; i < errors.length; i++) {
+ var error = errors[i];
+ that.data.push( that.convertError( error ) );
+ }
+ } else {
+ that.data = [];
+ }
+ } catch (e) {
+ that.data.push( that.convertError( e ) );
+ }
+ };
+};
+
+window.JSHINT = function( text ){
+ fakeJSHINT.parse( text );
+};
+window.JSHINT.data = function(){
+ return {
+ errors: fakeJSHINT.data
+ };
+};
+
+