From 3c2a5c249d2a0cec1d5c371efcd1dfcf7e8c7f2e Mon Sep 17 00:00:00 2001 From: Anton Tananaev Date: Fri, 18 Aug 2017 11:22:48 +1200 Subject: Fix various style issues --- web/.eslintignore | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'web/.eslintignore') diff --git a/web/.eslintignore b/web/.eslintignore index 3e0fc5c5..d40ab12b 100644 --- a/web/.eslintignore +++ b/web/.eslintignore @@ -1 +1,2 @@ -simple/app.js \ No newline at end of file +simple/app.js +load.js -- cgit v1.2.3 From adacb40ad63c462e93c8a175c6da56c823446ec3 Mon Sep 17 00:00:00 2001 From: Anton Tananaev Date: Fri, 18 Aug 2017 11:46:57 +1200 Subject: Implement eslint configuration --- .eslintignore | 2 ++ .gitignore | 2 ++ .travis.yml | 4 +++ package.json | 70 ++++++++++++++++++++++++++++++++++++++++++ web/.eslintignore | 2 -- web/.eslintrc.json | 89 ------------------------------------------------------ web/.jscsrc | 7 ----- web/.jshintignore | 2 -- web/.jshintrc | 76 ---------------------------------------------- 9 files changed, 78 insertions(+), 176 deletions(-) create mode 100644 .eslintignore create mode 100644 .travis.yml create mode 100644 package.json delete mode 100644 web/.eslintignore delete mode 100644 web/.eslintrc.json delete mode 100644 web/.jscsrc delete mode 100644 web/.jshintignore delete mode 100644 web/.jshintrc (limited to 'web/.eslintignore') diff --git a/.eslintignore b/.eslintignore new file mode 100644 index 00000000..c3577ef5 --- /dev/null +++ b/.eslintignore @@ -0,0 +1,2 @@ +web/simple/app.js +web/load.js diff --git a/.gitignore b/.gitignore index c0913c4b..d395d2ea 100644 --- a/.gitignore +++ b/.gitignore @@ -4,3 +4,5 @@ nbproject/ web/app.min.js sencha-error-* +node_modules +package-lock.json diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 00000000..354951d5 --- /dev/null +++ b/.travis.yml @@ -0,0 +1,4 @@ +language: node_js + +script: + - npm run lint diff --git a/package.json b/package.json new file mode 100644 index 00000000..d313631a --- /dev/null +++ b/package.json @@ -0,0 +1,70 @@ +{ + "name": "traccar-web", + "devDependencies": { + "eslint": "^4.4.1" + }, + "scripts": { + "lint": "./node_modules/.bin/eslint web/." + }, + "eslintConfig": { + "extends": "eslint:all", + "env": { + "browser": true + }, + "globals": { + "Ext": false, + "ol": false, + "Traccar": false, + "Strings": false, + "Locale": false, + "proj4": false, + "Uint8Array": false + }, + "rules": { + "strict": "off", + "max-lines": ["error", 1000], + "max-len": ["error", 180], + "max-statements": ["error", 35], + "max-params": ["error", 5], + "indent": ["error", 4, { + "SwitchCase": 1 + }], + "quotes": ["error", "single"], + "padded-blocks": ["error", "never"], + "dot-location": ["error", "property"], + "wrap-iife": ["error", "inside"], + "dot-notation": "off", + "array-bracket-newline": "off", + "array-element-newline": "off", + "sort-keys": "off", + "sort-vars": "off", + "no-magic-numbers": "off", + "no-mixed-operators": "off", + "prefer-template": "off", + "newline-per-chained-call": "off", + "object-shorthand": "off", + "func-names": "off", + "init-declarations": "off", + "no-var": "off", + "id-length": "off", + "no-undefined": "off", + "object-curly-newline": "off", + "prefer-destructuring": "off", + "no-plusplus": "off", + "no-param-reassign": "off", + "no-ternary": "off", + "multiline-ternary": "off", + "one-var-declaration-per-line": "off", + "no-shadow": "off", + "no-else-return": "off", + "consistent-this": "off", + "quote-props": "off", + "no-negated-condition": "off", + "prefer-arrow-callback": "off", + "no-prototype-builtins": "off", + "no-multi-assign": "off", + "no-bitwise": "off", + "prefer-rest-params": "off" + } + } +} diff --git a/web/.eslintignore b/web/.eslintignore deleted file mode 100644 index d40ab12b..00000000 --- a/web/.eslintignore +++ /dev/null @@ -1,2 +0,0 @@ -simple/app.js -load.js diff --git a/web/.eslintrc.json b/web/.eslintrc.json deleted file mode 100644 index 03de8088..00000000 --- a/web/.eslintrc.json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "extends": "crockford", - "env": { - "browser": true, - "node": true - }, - - // Custom Globals - "globals" : { - "Ext" : false, - "ol" : false, - "Traccar" : false, - "Strings" : false, - "Locale" : false, - "proj4" : false - }, - - "rules": { - "indent": ["error", 4, - { - "SwitchCase":1 - } - ], - "comma-spacing": [2, - { - "after": true - } - ], - "no-bitwise": 0, - "camelcase": 2, - "curly": 2, - "eqeqeq": 2, - "guard-for-in": 2, - "no-extend-native": 2, - "wrap-iife": [ - 2, - "any" - ], - "no-use-before-define": [ - 2, - { - "functions": false - } - ], - "new-cap": 2, - "no-caller": 2, - "no-empty": 2, - "no-irregular-whitespace": 2, - "no-new": 2, - "no-plusplus": 0, - "quotes": [ - 2, - "single" - ], - "no-undef": 2, - "no-unused-vars": 2, - "strict": 0, - "max-params": 0, - "max-depth": 0, - "max-statements": 0, - "complexity": 0, - "max-len": 0, - "no-var": 0, - "semi": 0, - "no-cond-assign": 0, - "no-debugger": 0, - "no-eq-null": 0, - "no-eval": 0, - "no-unused-expressions": 0, - "block-scoped-var": 0, - "no-iterator": 0, - "linebreak-style": 0, - "comma-style": [ - 2, - "last" - ], - "no-loop-func": 0, - "no-multi-str": 0, - "require-yield": 0, - "valid-typeof": 0, - "no-proto": 0, - "no-script-url": 0, - "no-shadow": 2, - "dot-notation": 0, - "no-new-func": 0, - "no-new-wrappers": 0, - "no-invalid-this": 0 - } -} \ No newline at end of file diff --git a/web/.jscsrc b/web/.jscsrc deleted file mode 100644 index c20bcf08..00000000 --- a/web/.jscsrc +++ /dev/null @@ -1,7 +0,0 @@ -{ - "preset": "crockford", - "maxErrors": 100, - "excludeFiles": ["simple/app.js"], - "requireDotNotation": false, - "requireSpaceAfterComma": true -} diff --git a/web/.jshintignore b/web/.jshintignore deleted file mode 100644 index 0a20d51b..00000000 --- a/web/.jshintignore +++ /dev/null @@ -1,2 +0,0 @@ -locale.js -simple/app.js diff --git a/web/.jshintrc b/web/.jshintrc deleted file mode 100644 index 67329cd0..00000000 --- a/web/.jshintrc +++ /dev/null @@ -1,76 +0,0 @@ -{ - // Enforcing - "bitwise" : false, // true: Prohibit bitwise operators (&, |, ^, etc.) - "camelcase" : true, // true: Identifiers must be in camelCase - "curly" : true, // true: Require {} for every new block or scope - "eqeqeq" : true, // true: Require triple equals (===) for comparison - "forin" : true, // true: Require filtering for..in loops with obj.hasOwnProperty() - "freeze" : true, // true: prohibits overwriting prototypes of native objects such as Array, Date etc. - "immed" : true, // true: Require immediate invocations to be wrapped in parens e.g. `(function () { } ());` - "indent" : 4, // {int} Number of spaces to use for indentation - "latedef" : true, // true: Require variables/functions to be defined before being used - "newcap" : true, // true: Require capitalization of all constructor functions e.g. `new F()` - "noarg" : true, // true: Prohibit use of `arguments.caller` and `arguments.callee` - "noempty" : true, // true: Prohibit use of empty blocks - "nonbsp" : true, // true: Prohibit "non-breaking whitespace" characters. - "nonew" : true, // true: Prohibit use of constructors for side-effects (without assignment) - "plusplus" : false, // true: Prohibit use of `++` and `--` - "quotmark" : "single", // Quotation mark consistency: - // false : do nothing (default) - // true : ensure whatever is used is consistent - // "single" : require single quotes - // "double" : require double quotes - "undef" : true, // true: Require all non-global variables to be declared (prevents global leaks) - "unused" : "vars", // Unused variables: - // true : all variables, last function parameter - // "vars" : all variables only - // "strict" : all variables, all function parameters - "strict" : false, // true: Requires all functions run in ES5 Strict Mode - "maxparams" : false, // {int} Max number of formal params allowed per function - "maxdepth" : false, // {int} Max depth of nested blocks (within functions) - "maxstatements" : false, // {int} Max number statements per function - "maxcomplexity" : false, // {int} Max cyclomatic complexity per function - "maxlen" : false, // {int} Max number of characters per line - "varstmt" : false, // true: Disallow any var statements. Only `let` and `const` are allowed. - - // Relaxing - "asi" : false, // true: Tolerate Automatic Semicolon Insertion (no semicolons) - "boss" : false, // true: Tolerate assignments where comparisons would be expected - "debug" : false, // true: Allow debugger statements e.g. browser breakpoints. - "eqnull" : false, // true: Tolerate use of `== null` - "esnext" : false, // true: Allow ES.next (ES6) syntax (ex: `const`) - "moz" : false, // true: Allow Mozilla specific syntax (extends and overrides esnext features) - "evil" : false, // true: Tolerate use of `eval` and `new Function()` - "expr" : false, // true: Tolerate `ExpressionStatement` as Programs - "funcscope" : false, // true: Tolerate defining variables inside control statements - "globalstrict" : false, // true: Allow global "use strict" (also enables 'strict') - "iterator" : false, // true: Tolerate using the `__iterator__` property - "lastsemic" : false, // true: Tolerate omitting a semicolon for the last statement of a 1-line block - "laxbreak" : false, // true: Tolerate possibly unsafe line breakings - "laxcomma" : false, // true: Tolerate comma-first style coding - "loopfunc" : false, // true: Tolerate functions being defined in loops - "multistr" : false, // true: Tolerate multi-line strings - "noyield" : false, // true: Tolerate generator functions with no yield statement in them. - "notypeof" : false, // true: Tolerate invalid typeof operator values - "proto" : false, // true: Tolerate using the `__proto__` property - "scripturl" : false, // true: Tolerate script-targeted URLs - "shadow" : false, // true: Allows re-define variables later in code e.g. `var x=1; x=2;` - "sub" : true, // true: Tolerate using `[]` notation when it can still be expressed in dot notation - "supernew" : false, // true: Tolerate `new function () { ... };` and `new Object;` - "validthis" : false, // true: Tolerate using this in a non-constructor function - - // Environments - "browser" : true, // Web Browser (window, document, etc) - "devel" : true, // Development/debugging (alert, confirm, etc) - "node" : true, // Node.js - - // Custom Globals - "globals" : { - "Ext" : false, - "ol" : false, - "Traccar" : false, - "Strings" : false, - "Locale" : false, - "proj4" : false - } -} -- cgit v1.2.3