cBioPortal/iViz

View on GitHub
app/scripts/views/components/dataTable/tableViewTemplate.js

Summary

Maintainability
D
1 day
Test Coverage

File tableViewTemplate.js has 334 lines of code (exceeds 250 allowed). Consider refactoring.
Open

/**
 * Created by Karthik Kalletla on 6/20/16.
 */
'use strict';
(function(Vue, dc, iViz, $, QueryByGeneTextArea, _) {
Severity: Minor
Found in app/scripts/views/components/dataTable/tableViewTemplate.js - About 4 hrs to fix

    Function ready has 61 lines of code (exceeds 25 allowed). Consider refactoring.
    Open

        ready: function() {
          var _self = this;
          var callbacks = {};
          var attrId = this.attributes.attr_id;
    
    
    Severity: Major
    Found in app/scripts/views/components/dataTable/tableViewTemplate.js - About 2 hrs to fix

      Function data has 33 lines of code (exceeds 25 allowed). Consider refactoring.
      Open

          data: function() {
            return {
              chartDivId:
                iViz.util.getDefaultDomId('chartDivId', this.attributes.attr_id),
              resetBtnId:
      Severity: Minor
      Found in app/scripts/views/components/dataTable/tableViewTemplate.js - About 1 hr to fix

        Function submitClick has 33 lines of code (exceeds 25 allowed). Consider refactoring.
        Open

              submitClick: function(_selectedRowData) {
                var selectedSamplesUnion = [];
                var selectedRowsUids = _.pluck(_selectedRowData, 'uniqueid');
        
                this.madeSelection = true;
        Severity: Minor
        Found in app/scripts/views/components/dataTable/tableViewTemplate.js - About 1 hr to fix

          Function processTableData has 29 lines of code (exceeds 25 allowed). Consider refactoring.
          Open

                processTableData: function(_data) {
                  var data = iViz.getGroupNdx(this.attributes.group_id);
                  var opts = {
                    width: window.iViz.styles.vars.specialTables.width,
                    height: window.iViz.styles.vars.specialTables.height,
          Severity: Minor
          Found in app/scripts/views/components/dataTable/tableViewTemplate.js - About 1 hr to fix

            'iviz' is not defined.
            Open

                      _self.totalNumOfStudies = Object.keys(iviz.datamanager.mutationProfileIdsMap).length;

            Disallow Undeclared Variables (no-undef)

            This rule can help you locate potential ReferenceErrors resulting from misspellings of variable and parameter names, or accidental implicit globals (for example, from forgetting the var keyword in a for loop initializer).

            Rule Details

            Any reference to an undeclared variable causes a warning, unless the variable is explicitly mentioned in a /*global ...*/ comment.

            Examples of incorrect code for this rule:

            /*eslint no-undef: "error"*/
            
            var a = someFunction();
            b = 10;

            Examples of correct code for this rule with global declaration:

            /*global someFunction b:true*/
            /*eslint no-undef: "error"*/
            
            var a = someFunction();
            b = 10;

            The b:true syntax in /*global */ indicates that assignment to b is correct.

            Examples of incorrect code for this rule with global declaration:

            /*global b*/
            /*eslint no-undef: "error"*/
            
            b = 10;

            By default, variables declared in /*global */ are read-only, therefore assignment is incorrect.

            Options

            • typeof set to true will warn for variables used inside typeof check (Default false).

            typeof

            Examples of correct code for the default { "typeof": false } option:

            /*eslint no-undef: "error"*/
            
            if (typeof UndefinedIdentifier === "undefined") {
                // do something ...
            }

            You can use this option if you want to prevent typeof check on a variable which has not been declared.

            Examples of incorrect code for the { "typeof": true } option:

            /*eslint no-undef: ["error", { "typeof": true }] */
            
            if(typeof a === "string"){}

            Examples of correct code for the { "typeof": true } option with global declaration:

            /*global a*/
            /*eslint no-undef: ["error", { "typeof": true }] */
            
            if(typeof a === "string"){}

            Environments

            For convenience, ESLint provides shortcuts that pre-define global variables exposed by popular libraries and runtime environments. This rule supports these environments, as listed in Specifying Environments. A few examples are given below.

            browser

            Examples of correct code for this rule with browser environment:

            /*eslint no-undef: "error"*/
            /*eslint-env browser*/
            
            setTimeout(function() {
                alert("Hello");
            });

            node

            Examples of correct code for this rule with node environment:

            /*eslint no-undef: "error"*/
            /*eslint-env node*/
            
            var fs = require("fs");
            module.exports = function() {
                console.log(fs);
            };

            When Not To Use It

            If explicit declaration of global variables is not to your taste.

            Compatibility

            This rule provides compatibility with treatment of global variables in JSHint and JSLint.

            Further Reading

            'iviz' is not defined.
            Open

                      _self.totalNumOfStudies = Object.keys(iviz.datamanager.cnaProfileIdsMap).length;

            Disallow Undeclared Variables (no-undef)

            This rule can help you locate potential ReferenceErrors resulting from misspellings of variable and parameter names, or accidental implicit globals (for example, from forgetting the var keyword in a for loop initializer).

            Rule Details

            Any reference to an undeclared variable causes a warning, unless the variable is explicitly mentioned in a /*global ...*/ comment.

            Examples of incorrect code for this rule:

            /*eslint no-undef: "error"*/
            
            var a = someFunction();
            b = 10;

            Examples of correct code for this rule with global declaration:

            /*global someFunction b:true*/
            /*eslint no-undef: "error"*/
            
            var a = someFunction();
            b = 10;

            The b:true syntax in /*global */ indicates that assignment to b is correct.

            Examples of incorrect code for this rule with global declaration:

            /*global b*/
            /*eslint no-undef: "error"*/
            
            b = 10;

            By default, variables declared in /*global */ are read-only, therefore assignment is incorrect.

            Options

            • typeof set to true will warn for variables used inside typeof check (Default false).

            typeof

            Examples of correct code for the default { "typeof": false } option:

            /*eslint no-undef: "error"*/
            
            if (typeof UndefinedIdentifier === "undefined") {
                // do something ...
            }

            You can use this option if you want to prevent typeof check on a variable which has not been declared.

            Examples of incorrect code for the { "typeof": true } option:

            /*eslint no-undef: ["error", { "typeof": true }] */
            
            if(typeof a === "string"){}

            Examples of correct code for the { "typeof": true } option with global declaration:

            /*global a*/
            /*eslint no-undef: ["error", { "typeof": true }] */
            
            if(typeof a === "string"){}

            Environments

            For convenience, ESLint provides shortcuts that pre-define global variables exposed by popular libraries and runtime environments. This rule supports these environments, as listed in Specifying Environments. A few examples are given below.

            browser

            Examples of correct code for this rule with browser environment:

            /*eslint no-undef: "error"*/
            /*eslint-env browser*/
            
            setTimeout(function() {
                alert("Hello");
            });

            node

            Examples of correct code for this rule with node environment:

            /*eslint no-undef: "error"*/
            /*eslint-env node*/
            
            var fs = require("fs");
            module.exports = function() {
                console.log(fs);
            };

            When Not To Use It

            If explicit declaration of global variables is not to your taste.

            Compatibility

            This rule provides compatibility with treatment of global variables in JSHint and JSLint.

            Further Reading

            Identical blocks of code found in 2 locations. Consider refactoring.
            Open

                    _.each(categories, function(category) {
                      if (dataForCategories.hasOwnProperty(category.name)) {
                        groups.push({
                          name: category.name,
                          caseIds: dataForCategories[category.name],
            Severity: Major
            Found in app/scripts/views/components/dataTable/tableViewTemplate.js and 1 other location - About 2 hrs to fix
            app/scripts/views/components/pieChart/pieChartTemplate.js on lines 102..110

            Duplicated Code

            Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

            Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

            When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

            Tuning

            This issue has a mass of 80.

            We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

            The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

            If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

            See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

            Refactorings

            Further Reading

            Identical blocks of code found in 3 locations. Consider refactoring.
            Open

                    this.$dispatch('create-rainbow-survival', {
                      attrId: this.attributes.attr_id,
                      subtitle: ' (' + this.attributes.display_name + ')',
                      groups: groups,
                      groupType: this.attributes.group_type
            app/scripts/views/components/barChart/barChartTemplate.js on lines 115..120
            app/scripts/views/components/pieChart/pieChartTemplate.js on lines 111..116

            Duplicated Code

            Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

            Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

            When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

            Tuning

            This issue has a mass of 65.

            We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

            The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

            If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

            See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

            Refactorings

            Further Reading

            Identical blocks of code found in 3 locations. Consider refactoring.
            Open

                    loadingBar :{
                      status: 0,
                      type: 'percentage',
                      divId: iViz.util.getDefaultDomId('progressBarId', this.attributes.attr_id),
                      opts: {},
            Severity: Major
            Found in app/scripts/views/components/dataTable/tableViewTemplate.js and 2 other locations - About 55 mins to fix
            app/scripts/views/components/scatterPlot/scatterPlotTemplate.js on lines 47..53
            app/scripts/views/components/survivalChart/template.js on lines 46..52

            Duplicated Code

            Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

            Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

            When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

            Tuning

            This issue has a mass of 53.

            We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

            The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

            If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

            See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

            Refactorings

            Further Reading

            Line 8 exceeds the maximum line length of 80.
            Open

                ':class="[\'grid-item\', classTableHeight, \'grid-item-w-2\', \'react-table\']" ' +

            enforce a maximum line length (max-len)

            Very long lines of code in any language can be difficult to read. In order to aid in readability and maintainability many coders have developed a convention to limit lines of code to X number of characters (traditionally 80 characters).

            var foo = { "bar": "This is a bar.", "baz": { "qux": "This is a qux" }, "difficult": "to read" }; // very long

            Rule Details

            This rule enforces a maximum line length to increase code readability and maintainability.

            Note: This rule calculates the length of a line via code points, not characters. That means if you use a double-byte character in your code, it will count as 2 code points instead of 1, and 2 will be used to calculate line length. This is a technical limitation of JavaScript that is made easier with ES2015, and we will look to update this when ES2015 is available in Node.js.

            Options

            This rule has a number or object option:

            • "code" (default 80) enforces a maximum line length
            • "tabWidth" (default 4) specifies the character width for tab characters
            • "comments" enforces a maximum line length for comments; defaults to value of code
            • "ignorePattern" ignores lines matching a regular expression; can only match a single line and need to be double escaped when written in YAML or JSON
            • "ignoreComments": true ignores all trailing comments and comments on their own line
            • "ignoreTrailingComments": true ignores only trailing comments
            • "ignoreUrls": true ignores lines that contain a URL

            code

            Examples of incorrect code for this rule with the default { "code": 80 } option:

            /*eslint max-len: ["error", 80]*/
            
            var foo = { "bar": "This is a bar.", "baz": { "qux": "This is a qux" }, "difficult": "to read" };

            Examples of correct code for this rule with the default { "code": 80 } option:

            /*eslint max-len: ["error", 80]*/
            
            var foo = {
              "bar": "This is a bar.",
              "baz": { "qux": "This is a qux" },
              "easier": "to read"
            };

            tabWidth

            Examples of incorrect code for this rule with the default { "tabWidth": 4 } option:

            /*eslint max-len: ["error", 80, 4]*/
            
            \t  \t  var foo = { "bar": "This is a bar.", "baz": { "qux": "This is a qux" } };

            Examples of correct code for this rule with the default { "tabWidth": 4 } option:

            /*eslint max-len: ["error", 80, 4]*/
            
            \t  \t  var foo = {
            \t  \t  \t  \t  "bar": "This is a bar.",
            \t  \t  \t  \t  "baz": { "qux": "This is a qux" }
            \t  \t  };

            comments

            Examples of incorrect code for this rule with the { "comments": 65 } option:

            /*eslint max-len: ["error", { "comments": 65 }]*/
            
            /**
             * This is a comment that violates the maximum line length we have specified
            **/

            ignoreComments

            Examples of correct code for this rule with the { "ignoreComments": true } option:

            /*eslint max-len: ["error", { "ignoreComments": true }]*/
            
            /**
             * This is a really really really really really really really really really long comment
            **/

            ignoreTrailingComments

            Examples of correct code for this rule with the { "ignoreTrailingComments": true } option:

            /*eslint max-len: ["error", { "ignoreTrailingComments": true }]*/
            
            var foo = 'bar'; // This is a really really really really really really really long comment

            ignoreUrls

            Examples of correct code for this rule with the { "ignoreUrls": true } option:

            /*eslint max-len: ["error", { "ignoreUrls": true }]*/
            
            var url = 'https://www.example.com/really/really/really/really/really/really/really/long';

            ignorePattern

            Examples of correct code for this rule with the { "ignorePattern": true } option:

            /*eslint max-len: ["error", { "ignorePattern": "^\\s*var\\s.+=\\s*require\\s*\\(/" }]*/
            
            var dep = require('really/really/really/really/really/really/really/really/long/module');

            Related Rules

            • [complexity](complexity.md)
            • [max-depth](max-depth.md)
            • [max-nested-callbacks](max-nested-callbacks.md)
            • [max-params](max-params.md)
            • [max-statements](max-statements.md) Source: http://eslint.org/docs/rules/

            Line 23 exceeds the maximum line length of 80.
            Open

                ':status="loadingBar.status" :opts="loadingBar.opts"></progress-bar></div>' +

            enforce a maximum line length (max-len)

            Very long lines of code in any language can be difficult to read. In order to aid in readability and maintainability many coders have developed a convention to limit lines of code to X number of characters (traditionally 80 characters).

            var foo = { "bar": "This is a bar.", "baz": { "qux": "This is a qux" }, "difficult": "to read" }; // very long

            Rule Details

            This rule enforces a maximum line length to increase code readability and maintainability.

            Note: This rule calculates the length of a line via code points, not characters. That means if you use a double-byte character in your code, it will count as 2 code points instead of 1, and 2 will be used to calculate line length. This is a technical limitation of JavaScript that is made easier with ES2015, and we will look to update this when ES2015 is available in Node.js.

            Options

            This rule has a number or object option:

            • "code" (default 80) enforces a maximum line length
            • "tabWidth" (default 4) specifies the character width for tab characters
            • "comments" enforces a maximum line length for comments; defaults to value of code
            • "ignorePattern" ignores lines matching a regular expression; can only match a single line and need to be double escaped when written in YAML or JSON
            • "ignoreComments": true ignores all trailing comments and comments on their own line
            • "ignoreTrailingComments": true ignores only trailing comments
            • "ignoreUrls": true ignores lines that contain a URL

            code

            Examples of incorrect code for this rule with the default { "code": 80 } option:

            /*eslint max-len: ["error", 80]*/
            
            var foo = { "bar": "This is a bar.", "baz": { "qux": "This is a qux" }, "difficult": "to read" };

            Examples of correct code for this rule with the default { "code": 80 } option:

            /*eslint max-len: ["error", 80]*/
            
            var foo = {
              "bar": "This is a bar.",
              "baz": { "qux": "This is a qux" },
              "easier": "to read"
            };

            tabWidth

            Examples of incorrect code for this rule with the default { "tabWidth": 4 } option:

            /*eslint max-len: ["error", 80, 4]*/
            
            \t  \t  var foo = { "bar": "This is a bar.", "baz": { "qux": "This is a qux" } };

            Examples of correct code for this rule with the default { "tabWidth": 4 } option:

            /*eslint max-len: ["error", 80, 4]*/
            
            \t  \t  var foo = {
            \t  \t  \t  \t  "bar": "This is a bar.",
            \t  \t  \t  \t  "baz": { "qux": "This is a qux" }
            \t  \t  };

            comments

            Examples of incorrect code for this rule with the { "comments": 65 } option:

            /*eslint max-len: ["error", { "comments": 65 }]*/
            
            /**
             * This is a comment that violates the maximum line length we have specified
            **/

            ignoreComments

            Examples of correct code for this rule with the { "ignoreComments": true } option:

            /*eslint max-len: ["error", { "ignoreComments": true }]*/
            
            /**
             * This is a really really really really really really really really really long comment
            **/

            ignoreTrailingComments

            Examples of correct code for this rule with the { "ignoreTrailingComments": true } option:

            /*eslint max-len: ["error", { "ignoreTrailingComments": true }]*/
            
            var foo = 'bar'; // This is a really really really really really really really long comment

            ignoreUrls

            Examples of correct code for this rule with the { "ignoreUrls": true } option:

            /*eslint max-len: ["error", { "ignoreUrls": true }]*/
            
            var url = 'https://www.example.com/really/really/really/really/really/really/really/long';

            ignorePattern

            Examples of correct code for this rule with the { "ignorePattern": true } option:

            /*eslint max-len: ["error", { "ignorePattern": "^\\s*var\\s.+=\\s*require\\s*\\(/" }]*/
            
            var dep = require('really/really/really/really/really/really/really/really/long/module');

            Related Rules

            • [complexity](complexity.md)
            • [max-depth](max-depth.md)
            • [max-nested-callbacks](max-nested-callbacks.md)
            • [max-params](max-params.md)
            • [max-statements](max-statements.md) Source: http://eslint.org/docs/rules/

            Extra space after key 'loadingBar'.
            Open

                    loadingBar :{

            enforce consistent spacing between keys and values in object literal properties (key-spacing)

            This rule enforces spacing around the colon in object literal properties. It can verify each property individually, or it can ensure horizontal alignment of adjacent properties in an object literal.

            Rule Details

            This rule enforces consistent spacing between keys and values in object literal properties. In the case of long lines, it is acceptable to add a new line wherever whitespace is allowed.

            Options

            This rule has an object option:

            • "beforeColon": false (default) disallows spaces between the key and the colon in object literals
            • "beforeColon": true requires at least one space between the key and the colon in object literals
            • "afterColon": true (default) requires at least one space between the colon and the value in object literals
            • "afterColon": false disallows spaces between the colon and the value in object literals
            • "mode": strict (default) enforces exactly one space before or after colons in object literals
            • "mode": minimum enforces one or more spaces before or after colons in object literals
            • "align": "value" enforces horizontal alignment of values in object literals
            • "align": "colon" enforces horizontal alignment of both colons and values in object literals.
            • "singleLine" specifies a spacing style for single-line object literals
            • "multiLine" specifies a spacing style for multi-line object literals

            Please note that you can either use the top-level options or the grouped options (singleLine and multiLine) but not both.

            beforeColon

            Examples of incorrect code for this rule with the default { "beforeColon": false } option:

            /*eslint key-spacing: ["error", { "beforeColon": false }]*/
            
            var obj = { "foo" : 42 };

            Examples of correct code for this rule with the default { "beforeColon": false } option:

            /*eslint key-spacing: ["error", { "beforeColon": false }]*/
            
            var obj = { "foo": 42 };

            Examples of incorrect code for this rule with the { "beforeColon": true } option:

            /*eslint key-spacing: ["error", { "beforeColon": true }]*/
            
            var obj = { "foo": 42 };

            Examples of correct code for this rule with the { "beforeColon": true } option:

            /*eslint key-spacing: ["error", { "beforeColon": true }]*/
            
            var obj = { "foo" : 42 };

            afterColon

            Examples of incorrect code for this rule with the default { "afterColon": true } option:

            /*eslint key-spacing: ["error", { "afterColon": true }]*/
            
            var obj = { "foo":42 };

            Examples of correct code for this rule with the default { "afterColon": true } option:

            /*eslint key-spacing: ["error", { "afterColon": true }]*/
            
            var obj = { "foo": 42 };

            Examples of incorrect code for this rule with the { "afterColon": false } option:

            /*eslint key-spacing: ["error", { "afterColon": false }]*/
            
            var obj = { "foo": 42 };

            Examples of correct code for this rule with the { "afterColon": false } option:

            /*eslint key-spacing: ["error", { "afterColon": false }]*/
            
            var obj = { "foo":42 };

            mode

            Examples of incorrect code for this rule with the default { "mode": "strict" } option:

            /*eslint key-spacing: ["error", { "mode": "strict" }]*/
            
            call({
                foobar: 42,
                bat:    2 * 2
            });

            Examples of correct code for this rule with the default { "mode": "strict" } option:

            /*eslint key-spacing: ["error", { "mode": "strict" }]*/
            
            call({
                foobar: 42,
                bat: 2 * 2
            });

            Examples of correct code for this rule with the { "mode": "minimum" } option:

            /*eslint key-spacing: ["error", { "mode": "minimum" }]*/
            
            call({
                foobar: 42,
                bat:    2 * 2
            });

            align

            Examples of incorrect code for this rule with the { "align": "value" } option:

            /*eslint key-spacing: ["error", { "align": "value" }]*/
            
            var obj = {
                a: value,
                bcde:  42,
                fg :   foo()
            };

            Examples of correct code for this rule with the { "align": "value" } option:

            /*eslint key-spacing: ["error", { "align": "value" }]*/
            
            var obj = {
                a:    value,
                bcde: 42,
            
                fg: foo(),
                h:  function() {
                    return this.a;
                },
                ijkl: 'Non-consecutive lines form a new group'
            };
            
            var obj = { a: "foo", longPropertyName: "bar" };

            Examples of incorrect code for this rule with the { "align": "colon" } option:

            /*eslint key-spacing: ["error", { "align": "colon" }]*/
            
            call({
                foobar: 42,
                bat:    2 * 2
            });

            Examples of correct code for this rule with the { "align": "colon" } option:

            /*eslint key-spacing: ["error", { "align": "colon" }]*/
            
            call({
                foobar: 42,
                bat   : 2 * 2
            });

            singleLine and multiLine

            Examples of correct code for this rule with sample { "singleLine": { }, "multiLine": { } } options:

            /*eslint "key-spacing": [2, {
                "singleLine": {
                    "beforeColon": false,
                    "afterColon": true
                },
                "multiLine": {
                    "beforeColon": true,
                    "afterColon": true,
                    "align": "colon"
                }
            }]*/
            var obj = { one: 1, "two": 2, three: 3 };
            var obj2 = {
                "two" : 2,
                three : 3
            };

            When Not To Use It

            If you have another convention for property spacing that might not be consistent with the available options, or if you want to permit multiple styles concurrently you can safely disable this rule. Source: http://eslint.org/docs/rules/

            Line 93 exceeds the maximum line length of 80.
            Open

                    if (!this.failedToInit && (!this.madeSelection || this.isMutatedGeneCna)) {

            enforce a maximum line length (max-len)

            Very long lines of code in any language can be difficult to read. In order to aid in readability and maintainability many coders have developed a convention to limit lines of code to X number of characters (traditionally 80 characters).

            var foo = { "bar": "This is a bar.", "baz": { "qux": "This is a qux" }, "difficult": "to read" }; // very long

            Rule Details

            This rule enforces a maximum line length to increase code readability and maintainability.

            Note: This rule calculates the length of a line via code points, not characters. That means if you use a double-byte character in your code, it will count as 2 code points instead of 1, and 2 will be used to calculate line length. This is a technical limitation of JavaScript that is made easier with ES2015, and we will look to update this when ES2015 is available in Node.js.

            Options

            This rule has a number or object option:

            • "code" (default 80) enforces a maximum line length
            • "tabWidth" (default 4) specifies the character width for tab characters
            • "comments" enforces a maximum line length for comments; defaults to value of code
            • "ignorePattern" ignores lines matching a regular expression; can only match a single line and need to be double escaped when written in YAML or JSON
            • "ignoreComments": true ignores all trailing comments and comments on their own line
            • "ignoreTrailingComments": true ignores only trailing comments
            • "ignoreUrls": true ignores lines that contain a URL

            code

            Examples of incorrect code for this rule with the default { "code": 80 } option:

            /*eslint max-len: ["error", 80]*/
            
            var foo = { "bar": "This is a bar.", "baz": { "qux": "This is a qux" }, "difficult": "to read" };

            Examples of correct code for this rule with the default { "code": 80 } option:

            /*eslint max-len: ["error", 80]*/
            
            var foo = {
              "bar": "This is a bar.",
              "baz": { "qux": "This is a qux" },
              "easier": "to read"
            };

            tabWidth

            Examples of incorrect code for this rule with the default { "tabWidth": 4 } option:

            /*eslint max-len: ["error", 80, 4]*/
            
            \t  \t  var foo = { "bar": "This is a bar.", "baz": { "qux": "This is a qux" } };

            Examples of correct code for this rule with the default { "tabWidth": 4 } option:

            /*eslint max-len: ["error", 80, 4]*/
            
            \t  \t  var foo = {
            \t  \t  \t  \t  "bar": "This is a bar.",
            \t  \t  \t  \t  "baz": { "qux": "This is a qux" }
            \t  \t  };

            comments

            Examples of incorrect code for this rule with the { "comments": 65 } option:

            /*eslint max-len: ["error", { "comments": 65 }]*/
            
            /**
             * This is a comment that violates the maximum line length we have specified
            **/

            ignoreComments

            Examples of correct code for this rule with the { "ignoreComments": true } option:

            /*eslint max-len: ["error", { "ignoreComments": true }]*/
            
            /**
             * This is a really really really really really really really really really long comment
            **/

            ignoreTrailingComments

            Examples of correct code for this rule with the { "ignoreTrailingComments": true } option:

            /*eslint max-len: ["error", { "ignoreTrailingComments": true }]*/
            
            var foo = 'bar'; // This is a really really really really really really really long comment

            ignoreUrls

            Examples of correct code for this rule with the { "ignoreUrls": true } option:

            /*eslint max-len: ["error", { "ignoreUrls": true }]*/
            
            var url = 'https://www.example.com/really/really/really/really/really/really/really/long';

            ignorePattern

            Examples of correct code for this rule with the { "ignorePattern": true } option:

            /*eslint max-len: ["error", { "ignorePattern": "^\\s*var\\s.+=\\s*require\\s*\\(/" }]*/
            
            var dep = require('really/really/really/really/really/really/really/really/long/module');

            Related Rules

            • [complexity](complexity.md)
            • [max-depth](max-depth.md)
            • [max-nested-callbacks](max-nested-callbacks.md)
            • [max-params](max-params.md)
            • [max-statements](max-statements.md) Source: http://eslint.org/docs/rules/

            Missing semicolon.
            Open

                      this.attributes.filter.push(selectedRowsUids.join(', '))

            Enforce or Disallow Semicolons (semi)

            (fixable) The --fix option on the [command line](../user-guide/command-line-interface#fix) automatically fixes problems reported by this rule.

            JavaScript is unique amongst the C-like languages in that it doesn't require semicolons at the end of each statement. In many cases, the JavaScript engine can determine that a semicolon should be in a certain spot and will automatically add it. This feature is known as automatic semicolon insertion (ASI) and is considered one of the more controversial features of JavaScript. For example, the following lines are both valid:

            var name = "ESLint"
            var website = "eslint.org";

            On the first line, the JavaScript engine will automatically insert a semicolon, so this is not considered a syntax error. The JavaScript engine still knows how to interpret the line and knows that the line end indicates the end of the statement.

            In the debate over ASI, there are generally two schools of thought. The first is that we should treat ASI as if it didn't exist and always include semicolons manually. The rationale is that it's easier to always include semicolons than to try to remember when they are or are not required, and thus decreases the possibility of introducing an error.

            However, the ASI mechanism can sometimes be tricky to people who are using semicolons. For example, consider this code:

            return
            {
                name: "ESLint"
            };

            This may look like a return statement that returns an object literal, however, the JavaScript engine will interpret this code as:

            return;
            {
                name: "ESLint";
            }

            Effectively, a semicolon is inserted after the return statement, causing the code below it (a labeled literal inside a block) to be unreachable. This rule and the [no-unreachable](no-unreachable.md) rule will protect your code from such cases.

            On the other side of the argument are those who says that since semicolons are inserted automatically, they are optional and do not need to be inserted manually. However, the ASI mechanism can also be tricky to people who don't use semicolons. For example, consider this code:

            var globalCounter = { }
            
            (function () {
                var n = 0
                globalCounter.increment = function () {
                    return ++n
                }
            })()

            In this example, a semicolon will not be inserted after the first line, causing a run-time error (because an empty object is called as if it's a function). The [no-unexpected-multiline](no-unexpected-multiline.md) rule can protect your code from such cases.

            Although ASI allows for more freedom over your coding style, it can also make your code behave in an unexpected way, whether you use semicolons or not. Therefore, it is best to know when ASI takes place and when it does not, and have ESLint protect your code from these potentially unexpected cases. In short, as once described by Isaac Schlueter, a \n character always ends a statement (just like a semicolon) unless one of the following is true:

            1. The statement has an unclosed paren, array literal, or object literal or ends in some other way that is not a valid way to end a statement. (For instance, ending with . or ,.)
            2. The line is -- or ++ (in which case it will decrement/increment the next token.)
            3. It is a for(), while(), do, if(), or else, and there is no {
            4. The next line starts with [, (, +, *, /, -, ,, ., or some other binary operator that can only be found between two tokens in a single expression.

            Rule Details

            This rule is aimed at ensuring consistent use of semicolons. You can decide whether or not to require semicolons at the end of statements.

            Options

            The rule takes one or two options. The first one is a string, which could be "always" or "never". The default is "always". The second one is an object for more fine-grained configuration when the first option is "always".

            You can set the option in configuration like this:

            "always"

            By using the default option, semicolons must be used any place where they are valid.

            semi: ["error", "always"]

            The following patterns are considered problems:

            /*eslint semi: "error"*/
            
            var name = "ESLint"
            
            object.method = function() {
                // ...
            }

            The following patterns are not considered problems:

            /*eslint semi: "error"*/
            
            var name = "ESLint";
            
            object.method = function() {
                // ...
            };

            Fine-grained control

            When setting the first option as "always", an additional option can be added to omit the last semicolon in a one-line block, that is, a block in which its braces (and therefore the content of the block) are in the same line:

            semi: ["error", "always", { "omitLastInOneLineBlock": true}]

            The following patterns are considered problems:

            /*eslint semi: ["error", "always", { "omitLastInOneLineBlock": true}] */
            
            if (foo) {
                bar()
            }
            
            if (foo) { bar(); }

            The following patterns are not considered problems:

            /*eslint semi: ["error", "always", { "omitLastInOneLineBlock": true}] */
            
            if (foo) { bar() }
            
            if (foo) { bar(); baz() }

            "never"

            If you want to enforce that semicolons are never used, switch the configuration to:

            semi: [2, "never"]

            Then, the following patterns are considered problems:

            /*eslint semi: ["error", "never"]*/
            
            var name = "ESLint";
            
            object.method = function() {
                // ...
            };

            And the following patterns are not considered problems:

            /*eslint semi: ["error", "never"]*/
            
            var name = "ESLint"
            
            object.method = function() {
                // ...
            }

            Even in "never" mode, semicolons are still allowed to disambiguate statements beginning with [, (, /, +, or -:

            /*eslint semi: ["error", "never"]*/
            
            var name = "ESLint"
            
            ;(function() {
                // ...
            })()

            When Not To Use It

            If you do not want to enforce semicolon usage (or omission) in any particular way, then you can turn this rule off.

            Further Reading

            Related Rules

            • [no-extra-semi](no-extra-semi.md)
            • [no-unexpected-multiline](no-unexpected-multiline.md)
            • [semi-spacing](semi-spacing.md) Source: http://eslint.org/docs/rules/

            Missing semicolon.
            Open

                      this.chartFilters = this.selectedRows

            Enforce or Disallow Semicolons (semi)

            (fixable) The --fix option on the [command line](../user-guide/command-line-interface#fix) automatically fixes problems reported by this rule.

            JavaScript is unique amongst the C-like languages in that it doesn't require semicolons at the end of each statement. In many cases, the JavaScript engine can determine that a semicolon should be in a certain spot and will automatically add it. This feature is known as automatic semicolon insertion (ASI) and is considered one of the more controversial features of JavaScript. For example, the following lines are both valid:

            var name = "ESLint"
            var website = "eslint.org";

            On the first line, the JavaScript engine will automatically insert a semicolon, so this is not considered a syntax error. The JavaScript engine still knows how to interpret the line and knows that the line end indicates the end of the statement.

            In the debate over ASI, there are generally two schools of thought. The first is that we should treat ASI as if it didn't exist and always include semicolons manually. The rationale is that it's easier to always include semicolons than to try to remember when they are or are not required, and thus decreases the possibility of introducing an error.

            However, the ASI mechanism can sometimes be tricky to people who are using semicolons. For example, consider this code:

            return
            {
                name: "ESLint"
            };

            This may look like a return statement that returns an object literal, however, the JavaScript engine will interpret this code as:

            return;
            {
                name: "ESLint";
            }

            Effectively, a semicolon is inserted after the return statement, causing the code below it (a labeled literal inside a block) to be unreachable. This rule and the [no-unreachable](no-unreachable.md) rule will protect your code from such cases.

            On the other side of the argument are those who says that since semicolons are inserted automatically, they are optional and do not need to be inserted manually. However, the ASI mechanism can also be tricky to people who don't use semicolons. For example, consider this code:

            var globalCounter = { }
            
            (function () {
                var n = 0
                globalCounter.increment = function () {
                    return ++n
                }
            })()

            In this example, a semicolon will not be inserted after the first line, causing a run-time error (because an empty object is called as if it's a function). The [no-unexpected-multiline](no-unexpected-multiline.md) rule can protect your code from such cases.

            Although ASI allows for more freedom over your coding style, it can also make your code behave in an unexpected way, whether you use semicolons or not. Therefore, it is best to know when ASI takes place and when it does not, and have ESLint protect your code from these potentially unexpected cases. In short, as once described by Isaac Schlueter, a \n character always ends a statement (just like a semicolon) unless one of the following is true:

            1. The statement has an unclosed paren, array literal, or object literal or ends in some other way that is not a valid way to end a statement. (For instance, ending with . or ,.)
            2. The line is -- or ++ (in which case it will decrement/increment the next token.)
            3. It is a for(), while(), do, if(), or else, and there is no {
            4. The next line starts with [, (, +, *, /, -, ,, ., or some other binary operator that can only be found between two tokens in a single expression.

            Rule Details

            This rule is aimed at ensuring consistent use of semicolons. You can decide whether or not to require semicolons at the end of statements.

            Options

            The rule takes one or two options. The first one is a string, which could be "always" or "never". The default is "always". The second one is an object for more fine-grained configuration when the first option is "always".

            You can set the option in configuration like this:

            "always"

            By using the default option, semicolons must be used any place where they are valid.

            semi: ["error", "always"]

            The following patterns are considered problems:

            /*eslint semi: "error"*/
            
            var name = "ESLint"
            
            object.method = function() {
                // ...
            }

            The following patterns are not considered problems:

            /*eslint semi: "error"*/
            
            var name = "ESLint";
            
            object.method = function() {
                // ...
            };

            Fine-grained control

            When setting the first option as "always", an additional option can be added to omit the last semicolon in a one-line block, that is, a block in which its braces (and therefore the content of the block) are in the same line:

            semi: ["error", "always", { "omitLastInOneLineBlock": true}]

            The following patterns are considered problems:

            /*eslint semi: ["error", "always", { "omitLastInOneLineBlock": true}] */
            
            if (foo) {
                bar()
            }
            
            if (foo) { bar(); }

            The following patterns are not considered problems:

            /*eslint semi: ["error", "always", { "omitLastInOneLineBlock": true}] */
            
            if (foo) { bar() }
            
            if (foo) { bar(); baz() }

            "never"

            If you want to enforce that semicolons are never used, switch the configuration to:

            semi: [2, "never"]

            Then, the following patterns are considered problems:

            /*eslint semi: ["error", "never"]*/
            
            var name = "ESLint";
            
            object.method = function() {
                // ...
            };

            And the following patterns are not considered problems:

            /*eslint semi: ["error", "never"]*/
            
            var name = "ESLint"
            
            object.method = function() {
                // ...
            }

            Even in "never" mode, semicolons are still allowed to disambiguate statements beginning with [, (, /, +, or -:

            /*eslint semi: ["error", "never"]*/
            
            var name = "ESLint"
            
            ;(function() {
                // ...
            })()

            When Not To Use It

            If you do not want to enforce semicolon usage (or omission) in any particular way, then you can turn this rule off.

            Further Reading

            Related Rules

            • [no-extra-semi](no-extra-semi.md)
            • [no-unexpected-multiline](no-unexpected-multiline.md)
            • [semi-spacing](semi-spacing.md) Source: http://eslint.org/docs/rules/

            Line 310 exceeds the maximum line length of 80.
            Open

                        bar.setText('Loading ' + progressBarText + Math.round(bar.value() * 100) + '%)');

            enforce a maximum line length (max-len)

            Very long lines of code in any language can be difficult to read. In order to aid in readability and maintainability many coders have developed a convention to limit lines of code to X number of characters (traditionally 80 characters).

            var foo = { "bar": "This is a bar.", "baz": { "qux": "This is a qux" }, "difficult": "to read" }; // very long

            Rule Details

            This rule enforces a maximum line length to increase code readability and maintainability.

            Note: This rule calculates the length of a line via code points, not characters. That means if you use a double-byte character in your code, it will count as 2 code points instead of 1, and 2 will be used to calculate line length. This is a technical limitation of JavaScript that is made easier with ES2015, and we will look to update this when ES2015 is available in Node.js.

            Options

            This rule has a number or object option:

            • "code" (default 80) enforces a maximum line length
            • "tabWidth" (default 4) specifies the character width for tab characters
            • "comments" enforces a maximum line length for comments; defaults to value of code
            • "ignorePattern" ignores lines matching a regular expression; can only match a single line and need to be double escaped when written in YAML or JSON
            • "ignoreComments": true ignores all trailing comments and comments on their own line
            • "ignoreTrailingComments": true ignores only trailing comments
            • "ignoreUrls": true ignores lines that contain a URL

            code

            Examples of incorrect code for this rule with the default { "code": 80 } option:

            /*eslint max-len: ["error", 80]*/
            
            var foo = { "bar": "This is a bar.", "baz": { "qux": "This is a qux" }, "difficult": "to read" };

            Examples of correct code for this rule with the default { "code": 80 } option:

            /*eslint max-len: ["error", 80]*/
            
            var foo = {
              "bar": "This is a bar.",
              "baz": { "qux": "This is a qux" },
              "easier": "to read"
            };

            tabWidth

            Examples of incorrect code for this rule with the default { "tabWidth": 4 } option:

            /*eslint max-len: ["error", 80, 4]*/
            
            \t  \t  var foo = { "bar": "This is a bar.", "baz": { "qux": "This is a qux" } };

            Examples of correct code for this rule with the default { "tabWidth": 4 } option:

            /*eslint max-len: ["error", 80, 4]*/
            
            \t  \t  var foo = {
            \t  \t  \t  \t  "bar": "This is a bar.",
            \t  \t  \t  \t  "baz": { "qux": "This is a qux" }
            \t  \t  };

            comments

            Examples of incorrect code for this rule with the { "comments": 65 } option:

            /*eslint max-len: ["error", { "comments": 65 }]*/
            
            /**
             * This is a comment that violates the maximum line length we have specified
            **/

            ignoreComments

            Examples of correct code for this rule with the { "ignoreComments": true } option:

            /*eslint max-len: ["error", { "ignoreComments": true }]*/
            
            /**
             * This is a really really really really really really really really really long comment
            **/

            ignoreTrailingComments

            Examples of correct code for this rule with the { "ignoreTrailingComments": true } option:

            /*eslint max-len: ["error", { "ignoreTrailingComments": true }]*/
            
            var foo = 'bar'; // This is a really really really really really really really long comment

            ignoreUrls

            Examples of correct code for this rule with the { "ignoreUrls": true } option:

            /*eslint max-len: ["error", { "ignoreUrls": true }]*/
            
            var url = 'https://www.example.com/really/really/really/really/really/really/really/long';

            ignorePattern

            Examples of correct code for this rule with the { "ignorePattern": true } option:

            /*eslint max-len: ["error", { "ignorePattern": "^\\s*var\\s.+=\\s*require\\s*\\(/" }]*/
            
            var dep = require('really/really/really/really/really/really/really/really/long/module');

            Related Rules

            • [complexity](complexity.md)
            • [max-depth](max-depth.md)
            • [max-nested-callbacks](max-nested-callbacks.md)
            • [max-params](max-params.md)
            • [max-statements](max-statements.md) Source: http://eslint.org/docs/rules/

            Line 317 exceeds the maximum line length of 80.
            Open

                      $.when(window.iviz.datamanager.getGenePanelMap(_tableData.allGenes, _tableData.allSamples))

            enforce a maximum line length (max-len)

            Very long lines of code in any language can be difficult to read. In order to aid in readability and maintainability many coders have developed a convention to limit lines of code to X number of characters (traditionally 80 characters).

            var foo = { "bar": "This is a bar.", "baz": { "qux": "This is a qux" }, "difficult": "to read" }; // very long

            Rule Details

            This rule enforces a maximum line length to increase code readability and maintainability.

            Note: This rule calculates the length of a line via code points, not characters. That means if you use a double-byte character in your code, it will count as 2 code points instead of 1, and 2 will be used to calculate line length. This is a technical limitation of JavaScript that is made easier with ES2015, and we will look to update this when ES2015 is available in Node.js.

            Options

            This rule has a number or object option:

            • "code" (default 80) enforces a maximum line length
            • "tabWidth" (default 4) specifies the character width for tab characters
            • "comments" enforces a maximum line length for comments; defaults to value of code
            • "ignorePattern" ignores lines matching a regular expression; can only match a single line and need to be double escaped when written in YAML or JSON
            • "ignoreComments": true ignores all trailing comments and comments on their own line
            • "ignoreTrailingComments": true ignores only trailing comments
            • "ignoreUrls": true ignores lines that contain a URL

            code

            Examples of incorrect code for this rule with the default { "code": 80 } option:

            /*eslint max-len: ["error", 80]*/
            
            var foo = { "bar": "This is a bar.", "baz": { "qux": "This is a qux" }, "difficult": "to read" };

            Examples of correct code for this rule with the default { "code": 80 } option:

            /*eslint max-len: ["error", 80]*/
            
            var foo = {
              "bar": "This is a bar.",
              "baz": { "qux": "This is a qux" },
              "easier": "to read"
            };

            tabWidth

            Examples of incorrect code for this rule with the default { "tabWidth": 4 } option:

            /*eslint max-len: ["error", 80, 4]*/
            
            \t  \t  var foo = { "bar": "This is a bar.", "baz": { "qux": "This is a qux" } };

            Examples of correct code for this rule with the default { "tabWidth": 4 } option:

            /*eslint max-len: ["error", 80, 4]*/
            
            \t  \t  var foo = {
            \t  \t  \t  \t  "bar": "This is a bar.",
            \t  \t  \t  \t  "baz": { "qux": "This is a qux" }
            \t  \t  };

            comments

            Examples of incorrect code for this rule with the { "comments": 65 } option:

            /*eslint max-len: ["error", { "comments": 65 }]*/
            
            /**
             * This is a comment that violates the maximum line length we have specified
            **/

            ignoreComments

            Examples of correct code for this rule with the { "ignoreComments": true } option:

            /*eslint max-len: ["error", { "ignoreComments": true }]*/
            
            /**
             * This is a really really really really really really really really really long comment
            **/

            ignoreTrailingComments

            Examples of correct code for this rule with the { "ignoreTrailingComments": true } option:

            /*eslint max-len: ["error", { "ignoreTrailingComments": true }]*/
            
            var foo = 'bar'; // This is a really really really really really really really long comment

            ignoreUrls

            Examples of correct code for this rule with the { "ignoreUrls": true } option:

            /*eslint max-len: ["error", { "ignoreUrls": true }]*/
            
            var url = 'https://www.example.com/really/really/really/really/really/really/really/long';

            ignorePattern

            Examples of correct code for this rule with the { "ignorePattern": true } option:

            /*eslint max-len: ["error", { "ignorePattern": "^\\s*var\\s.+=\\s*require\\s*\\(/" }]*/
            
            var dep = require('really/really/really/really/really/really/really/really/long/module');

            Related Rules

            • [complexity](complexity.md)
            • [max-depth](max-depth.md)
            • [max-nested-callbacks](max-nested-callbacks.md)
            • [max-params](max-params.md)
            • [max-statements](max-statements.md) Source: http://eslint.org/docs/rules/

            Expected space(s) after "if".
            Open

                      if(this.chartFilters.length === 0) {

            enforce consistent spacing before and after keywords (keyword-spacing)

            (fixable) The --fix option on the [command line](../user-guide/command-line-interface#fix) automatically fixes problems reported by this rule.

            Keywords are syntax elements of JavaScript, such as function and if. These identifiers have special meaning to the language and so often appear in a different color in code editors. As an important part of the language, style guides often refer to the spacing that should be used around keywords. For example, you might have a style guide that says keywords should be always surrounded by spaces, which would mean if-else statements must look like this:

            if (foo) {
                // ...
            } else {
                // ...
            }

            Of course, you could also have a style guide that disallows spaces around keywords.

            Rule Details

            This rule enforces consistent spacing around keywords and keyword-like tokens: as (in module declarations), break, case, catch, class, const, continue, debugger, default, delete, do, else, export, extends, finally, for, from (in module declarations), function, get (of getters), if, import, in, instanceof, let, new, of (in for-of statements), return, set (of setters), static, super, switch, this, throw, try, typeof, var, void, while, with, and yield. This rule is designed carefully not to conflict with other spacing rules: it does not apply to spacing where other rules report problems.

            Options

            This rule has an object option:

            • "before": true (default) requires at least one space before keywords
            • "before": false disallows spaces before keywords
            • "after": true (default) requires at least one space after keywords
            • "after": false disallows spaces after keywords
            • "overrides" allows overriding spacing style for specified keywords

            before

            Examples of incorrect code for this rule with the default { "before": true } option:

            /*eslint keyword-spacing: ["error", { "before": true }]*/
            
            if (foo) {
                //...
            }else if (bar) {
                //...
            }else {
                //...
            }

            Examples of correct code for this rule with the default { "before": true } option:

            /*eslint keyword-spacing: ["error", { "before": true }]*/
            /*eslint-env es6*/
            
            if (foo) {
                //...
            } else if (bar) {
                //...
            } else {
                //...
            }
            
            // no conflict with `array-bracket-spacing`
            let a = [this];
            let b = [function() {}];
            
            // no conflict with `arrow-spacing`
            let a = ()=> this.foo;
            
            // no conflict with `block-spacing`
            {function foo() {}}
            
            // no conflict with `comma-spacing`
            let a = [100,this.foo, this.bar];
            
            // not conflict with `computed-property-spacing`
            obj[this.foo] = 0;
            
            // no conflict with `generator-star-spacing`
            function *foo() {}
            
            // no conflict with `key-spacing`
            let obj = {
                foo:function() {}
            };
            
            // no conflict with `object-curly-spacing`
            let obj = {foo: this};
            
            // no conflict with `semi-spacing`
            let a = this;function foo() {}
            
            // no conflict with `space-in-parens`
            (function () {})();
            
            // no conflict with `space-infix-ops`
            if ("foo"in {foo: 0}) {}
            if (10+this.foo<= this.bar) {}
            
            // no conflict with `jsx-curly-spacing`
            let a = 

            Examples of incorrect code for this rule with the { "before": false } option:

            /*eslint keyword-spacing: ["error", { "before": false }]*/
            
            if (foo) {
                //...
            } else if (bar) {
                //...
            } else {
                //...
            }

            Examples of correct code for this rule with the { "before": false } option:

            /*eslint keyword-spacing: ["error", { "before": false }]*/
            
            if (foo) {
                //...
            }else if (bar) {
                //...
            }else {
                //...
            }

            after

            Examples of incorrect code for this rule with the default { "after": true } option:

            /*eslint keyword-spacing: ["error", { "after": true }]*/
            
            if(foo) {
                //...
            } else if(bar) {
                //...
            } else{
                //...
            }

            Examples of correct code for this rule with the default { "after": true } option:

            /*eslint keyword-spacing: ["error", { "after": true }]*/
            
            if (foo) {
                //...
            } else if (bar) {
                //...
            } else {
                //...
            }
            
            // not conflict with `array-bracket-spacing`
            let a = [this];
            
            // not conflict with `arrow-spacing`
            let a = ()=> this.foo;
            
            // not conflict with `comma-spacing`
            let a = [100, this.foo, this.bar];
            
            // not conflict with `computed-property-spacing`
            obj[this.foo] = 0;
            
            // not conflict with `generator-star-spacing`
            function* foo() {}
            
            // not conflict with `key-spacing`
            let obj = {
                foo:function() {}
            };
            
            // not conflict with `no-spaced-func`
            class A {
                constructor() {
                    super();
                }
            }
            
            // not conflict with `object-curly-spacing`
            let obj = {foo: this};
            
            // not conflict with `semi-spacing`
            let a = this;function foo() {}
            
            // not conflict with `space-before-function-paren`
            function() {}
            
            // no conflict with `space-infix-ops`
            if ("foo"in{foo: 0}) {}
            if (10+this.foo<= this.bar) {}
            
            // no conflict with `space-unary-ops`
            function* foo(a) {
                return yield+a;
            }
            
            // no conflict with `yield-star-spacing`
            function* foo(a) {
                return yield* a;
            }
            
            // no conflict with `jsx-curly-spacing`
            let a = 

            Examples of incorrect code for this rule with the { "after": false } option:

            /*eslint keyword-spacing: ["error", { "after": false }]*/
            
            if (foo) {
                //...
            } else if (bar) {
                //...
            } else {
                //...
            }

            Examples of correct code for this rule with the { "after": false } option:

            /*eslint keyword-spacing: ["error", { "after": false }]*/
            
            if(foo) {
                //...
            } else if(bar) {
                //...
            } else{
                //...
            }

            overrides

            Examples of correct code for this rule with the { "overrides": { "if": { "after": false }, "for": { "after": false }, "while": { "after": false } } } option:

            /*eslint keyword-spacing: ["error", { "overrides": {
              "if": { "after": false },
              "for": { "after": false },
              "while": { "after": false }
            } }]*/
            
            if(foo) {
                //...
            } else if(bar) {
                //...
            } else {
                //...
            }
            
            for(;;);
            
            while(true) {
              //...
            }

            When Not To Use It

            If you don't want to enforce consistency on keyword spacing, then it's safe to disable this rule. Source: http://eslint.org/docs/rules/

            Line 238 exceeds the maximum line length of 80.
            Open

                    this.chartInst.init(this.attributes, opts, this.$root.selectedsampleUIDs,

            enforce a maximum line length (max-len)

            Very long lines of code in any language can be difficult to read. In order to aid in readability and maintainability many coders have developed a convention to limit lines of code to X number of characters (traditionally 80 characters).

            var foo = { "bar": "This is a bar.", "baz": { "qux": "This is a qux" }, "difficult": "to read" }; // very long

            Rule Details

            This rule enforces a maximum line length to increase code readability and maintainability.

            Note: This rule calculates the length of a line via code points, not characters. That means if you use a double-byte character in your code, it will count as 2 code points instead of 1, and 2 will be used to calculate line length. This is a technical limitation of JavaScript that is made easier with ES2015, and we will look to update this when ES2015 is available in Node.js.

            Options

            This rule has a number or object option:

            • "code" (default 80) enforces a maximum line length
            • "tabWidth" (default 4) specifies the character width for tab characters
            • "comments" enforces a maximum line length for comments; defaults to value of code
            • "ignorePattern" ignores lines matching a regular expression; can only match a single line and need to be double escaped when written in YAML or JSON
            • "ignoreComments": true ignores all trailing comments and comments on their own line
            • "ignoreTrailingComments": true ignores only trailing comments
            • "ignoreUrls": true ignores lines that contain a URL

            code

            Examples of incorrect code for this rule with the default { "code": 80 } option:

            /*eslint max-len: ["error", 80]*/
            
            var foo = { "bar": "This is a bar.", "baz": { "qux": "This is a qux" }, "difficult": "to read" };

            Examples of correct code for this rule with the default { "code": 80 } option:

            /*eslint max-len: ["error", 80]*/
            
            var foo = {
              "bar": "This is a bar.",
              "baz": { "qux": "This is a qux" },
              "easier": "to read"
            };

            tabWidth

            Examples of incorrect code for this rule with the default { "tabWidth": 4 } option:

            /*eslint max-len: ["error", 80, 4]*/
            
            \t  \t  var foo = { "bar": "This is a bar.", "baz": { "qux": "This is a qux" } };

            Examples of correct code for this rule with the default { "tabWidth": 4 } option:

            /*eslint max-len: ["error", 80, 4]*/
            
            \t  \t  var foo = {
            \t  \t  \t  \t  "bar": "This is a bar.",
            \t  \t  \t  \t  "baz": { "qux": "This is a qux" }
            \t  \t  };

            comments

            Examples of incorrect code for this rule with the { "comments": 65 } option:

            /*eslint max-len: ["error", { "comments": 65 }]*/
            
            /**
             * This is a comment that violates the maximum line length we have specified
            **/

            ignoreComments

            Examples of correct code for this rule with the { "ignoreComments": true } option:

            /*eslint max-len: ["error", { "ignoreComments": true }]*/
            
            /**
             * This is a really really really really really really really really really long comment
            **/

            ignoreTrailingComments

            Examples of correct code for this rule with the { "ignoreTrailingComments": true } option:

            /*eslint max-len: ["error", { "ignoreTrailingComments": true }]*/
            
            var foo = 'bar'; // This is a really really really really really really really long comment

            ignoreUrls

            Examples of correct code for this rule with the { "ignoreUrls": true } option:

            /*eslint max-len: ["error", { "ignoreUrls": true }]*/
            
            var url = 'https://www.example.com/really/really/really/really/really/really/really/long';

            ignorePattern

            Examples of correct code for this rule with the { "ignorePattern": true } option:

            /*eslint max-len: ["error", { "ignorePattern": "^\\s*var\\s.+=\\s*require\\s*\\(/" }]*/
            
            var dep = require('really/really/really/really/really/really/really/really/long/module');

            Related Rules

            • [complexity](complexity.md)
            • [max-depth](max-depth.md)
            • [max-nested-callbacks](max-nested-callbacks.md)
            • [max-params](max-params.md)
            • [max-statements](max-statements.md) Source: http://eslint.org/docs/rules/

            Line 21 exceeds the maximum line length of 80.
            Open

                '<div v-show="showLoad" class="progress-bar-parent-div" :class="{\'show-loading-bar\': showLoad}">' +

            enforce a maximum line length (max-len)

            Very long lines of code in any language can be difficult to read. In order to aid in readability and maintainability many coders have developed a convention to limit lines of code to X number of characters (traditionally 80 characters).

            var foo = { "bar": "This is a bar.", "baz": { "qux": "This is a qux" }, "difficult": "to read" }; // very long

            Rule Details

            This rule enforces a maximum line length to increase code readability and maintainability.

            Note: This rule calculates the length of a line via code points, not characters. That means if you use a double-byte character in your code, it will count as 2 code points instead of 1, and 2 will be used to calculate line length. This is a technical limitation of JavaScript that is made easier with ES2015, and we will look to update this when ES2015 is available in Node.js.

            Options

            This rule has a number or object option:

            • "code" (default 80) enforces a maximum line length
            • "tabWidth" (default 4) specifies the character width for tab characters
            • "comments" enforces a maximum line length for comments; defaults to value of code
            • "ignorePattern" ignores lines matching a regular expression; can only match a single line and need to be double escaped when written in YAML or JSON
            • "ignoreComments": true ignores all trailing comments and comments on their own line
            • "ignoreTrailingComments": true ignores only trailing comments
            • "ignoreUrls": true ignores lines that contain a URL

            code

            Examples of incorrect code for this rule with the default { "code": 80 } option:

            /*eslint max-len: ["error", 80]*/
            
            var foo = { "bar": "This is a bar.", "baz": { "qux": "This is a qux" }, "difficult": "to read" };

            Examples of correct code for this rule with the default { "code": 80 } option:

            /*eslint max-len: ["error", 80]*/
            
            var foo = {
              "bar": "This is a bar.",
              "baz": { "qux": "This is a qux" },
              "easier": "to read"
            };

            tabWidth

            Examples of incorrect code for this rule with the default { "tabWidth": 4 } option:

            /*eslint max-len: ["error", 80, 4]*/
            
            \t  \t  var foo = { "bar": "This is a bar.", "baz": { "qux": "This is a qux" } };

            Examples of correct code for this rule with the default { "tabWidth": 4 } option:

            /*eslint max-len: ["error", 80, 4]*/
            
            \t  \t  var foo = {
            \t  \t  \t  \t  "bar": "This is a bar.",
            \t  \t  \t  \t  "baz": { "qux": "This is a qux" }
            \t  \t  };

            comments

            Examples of incorrect code for this rule with the { "comments": 65 } option:

            /*eslint max-len: ["error", { "comments": 65 }]*/
            
            /**
             * This is a comment that violates the maximum line length we have specified
            **/

            ignoreComments

            Examples of correct code for this rule with the { "ignoreComments": true } option:

            /*eslint max-len: ["error", { "ignoreComments": true }]*/
            
            /**
             * This is a really really really really really really really really really long comment
            **/

            ignoreTrailingComments

            Examples of correct code for this rule with the { "ignoreTrailingComments": true } option:

            /*eslint max-len: ["error", { "ignoreTrailingComments": true }]*/
            
            var foo = 'bar'; // This is a really really really really really really really long comment

            ignoreUrls

            Examples of correct code for this rule with the { "ignoreUrls": true } option:

            /*eslint max-len: ["error", { "ignoreUrls": true }]*/
            
            var url = 'https://www.example.com/really/really/really/really/really/really/really/long';

            ignorePattern

            Examples of correct code for this rule with the { "ignorePattern": true } option:

            /*eslint max-len: ["error", { "ignorePattern": "^\\s*var\\s.+=\\s*require\\s*\\(/" }]*/
            
            var dep = require('really/really/really/really/really/really/really/really/long/module');

            Related Rules

            • [complexity](complexity.md)
            • [max-depth](max-depth.md)
            • [max-nested-callbacks](max-nested-callbacks.md)
            • [max-params](max-params.md)
            • [max-statements](max-statements.md) Source: http://eslint.org/docs/rules/

            Line 22 exceeds the maximum line length of 80.
            Open

                '<progress-bar :div-id="loadingBar.divId" :type="loadingBar.type" :disable="loadingBar.disable" ' +

            enforce a maximum line length (max-len)

            Very long lines of code in any language can be difficult to read. In order to aid in readability and maintainability many coders have developed a convention to limit lines of code to X number of characters (traditionally 80 characters).

            var foo = { "bar": "This is a bar.", "baz": { "qux": "This is a qux" }, "difficult": "to read" }; // very long

            Rule Details

            This rule enforces a maximum line length to increase code readability and maintainability.

            Note: This rule calculates the length of a line via code points, not characters. That means if you use a double-byte character in your code, it will count as 2 code points instead of 1, and 2 will be used to calculate line length. This is a technical limitation of JavaScript that is made easier with ES2015, and we will look to update this when ES2015 is available in Node.js.

            Options

            This rule has a number or object option:

            • "code" (default 80) enforces a maximum line length
            • "tabWidth" (default 4) specifies the character width for tab characters
            • "comments" enforces a maximum line length for comments; defaults to value of code
            • "ignorePattern" ignores lines matching a regular expression; can only match a single line and need to be double escaped when written in YAML or JSON
            • "ignoreComments": true ignores all trailing comments and comments on their own line
            • "ignoreTrailingComments": true ignores only trailing comments
            • "ignoreUrls": true ignores lines that contain a URL

            code

            Examples of incorrect code for this rule with the default { "code": 80 } option:

            /*eslint max-len: ["error", 80]*/
            
            var foo = { "bar": "This is a bar.", "baz": { "qux": "This is a qux" }, "difficult": "to read" };

            Examples of correct code for this rule with the default { "code": 80 } option:

            /*eslint max-len: ["error", 80]*/
            
            var foo = {
              "bar": "This is a bar.",
              "baz": { "qux": "This is a qux" },
              "easier": "to read"
            };

            tabWidth

            Examples of incorrect code for this rule with the default { "tabWidth": 4 } option:

            /*eslint max-len: ["error", 80, 4]*/
            
            \t  \t  var foo = { "bar": "This is a bar.", "baz": { "qux": "This is a qux" } };

            Examples of correct code for this rule with the default { "tabWidth": 4 } option:

            /*eslint max-len: ["error", 80, 4]*/
            
            \t  \t  var foo = {
            \t  \t  \t  \t  "bar": "This is a bar.",
            \t  \t  \t  \t  "baz": { "qux": "This is a qux" }
            \t  \t  };

            comments

            Examples of incorrect code for this rule with the { "comments": 65 } option:

            /*eslint max-len: ["error", { "comments": 65 }]*/
            
            /**
             * This is a comment that violates the maximum line length we have specified
            **/

            ignoreComments

            Examples of correct code for this rule with the { "ignoreComments": true } option:

            /*eslint max-len: ["error", { "ignoreComments": true }]*/
            
            /**
             * This is a really really really really really really really really really long comment
            **/

            ignoreTrailingComments

            Examples of correct code for this rule with the { "ignoreTrailingComments": true } option:

            /*eslint max-len: ["error", { "ignoreTrailingComments": true }]*/
            
            var foo = 'bar'; // This is a really really really really really really really long comment

            ignoreUrls

            Examples of correct code for this rule with the { "ignoreUrls": true } option:

            /*eslint max-len: ["error", { "ignoreUrls": true }]*/
            
            var url = 'https://www.example.com/really/really/really/really/really/really/really/long';

            ignorePattern

            Examples of correct code for this rule with the { "ignorePattern": true } option:

            /*eslint max-len: ["error", { "ignorePattern": "^\\s*var\\s.+=\\s*require\\s*\\(/" }]*/
            
            var dep = require('really/really/really/really/really/really/really/really/long/module');

            Related Rules

            • [complexity](complexity.md)
            • [max-depth](max-depth.md)
            • [max-nested-callbacks](max-nested-callbacks.md)
            • [max-params](max-params.md)
            • [max-statements](max-statements.md) Source: http://eslint.org/docs/rules/

            Line 193 exceeds the maximum line length of 80.
            Open

                          iViz.util.intersection(this.chartFilters, selectedSamplesUnion.sort());

            enforce a maximum line length (max-len)

            Very long lines of code in any language can be difficult to read. In order to aid in readability and maintainability many coders have developed a convention to limit lines of code to X number of characters (traditionally 80 characters).

            var foo = { "bar": "This is a bar.", "baz": { "qux": "This is a qux" }, "difficult": "to read" }; // very long

            Rule Details

            This rule enforces a maximum line length to increase code readability and maintainability.

            Note: This rule calculates the length of a line via code points, not characters. That means if you use a double-byte character in your code, it will count as 2 code points instead of 1, and 2 will be used to calculate line length. This is a technical limitation of JavaScript that is made easier with ES2015, and we will look to update this when ES2015 is available in Node.js.

            Options

            This rule has a number or object option:

            • "code" (default 80) enforces a maximum line length
            • "tabWidth" (default 4) specifies the character width for tab characters
            • "comments" enforces a maximum line length for comments; defaults to value of code
            • "ignorePattern" ignores lines matching a regular expression; can only match a single line and need to be double escaped when written in YAML or JSON
            • "ignoreComments": true ignores all trailing comments and comments on their own line
            • "ignoreTrailingComments": true ignores only trailing comments
            • "ignoreUrls": true ignores lines that contain a URL

            code

            Examples of incorrect code for this rule with the default { "code": 80 } option:

            /*eslint max-len: ["error", 80]*/
            
            var foo = { "bar": "This is a bar.", "baz": { "qux": "This is a qux" }, "difficult": "to read" };

            Examples of correct code for this rule with the default { "code": 80 } option:

            /*eslint max-len: ["error", 80]*/
            
            var foo = {
              "bar": "This is a bar.",
              "baz": { "qux": "This is a qux" },
              "easier": "to read"
            };

            tabWidth

            Examples of incorrect code for this rule with the default { "tabWidth": 4 } option:

            /*eslint max-len: ["error", 80, 4]*/
            
            \t  \t  var foo = { "bar": "This is a bar.", "baz": { "qux": "This is a qux" } };

            Examples of correct code for this rule with the default { "tabWidth": 4 } option:

            /*eslint max-len: ["error", 80, 4]*/
            
            \t  \t  var foo = {
            \t  \t  \t  \t  "bar": "This is a bar.",
            \t  \t  \t  \t  "baz": { "qux": "This is a qux" }
            \t  \t  };

            comments

            Examples of incorrect code for this rule with the { "comments": 65 } option:

            /*eslint max-len: ["error", { "comments": 65 }]*/
            
            /**
             * This is a comment that violates the maximum line length we have specified
            **/

            ignoreComments

            Examples of correct code for this rule with the { "ignoreComments": true } option:

            /*eslint max-len: ["error", { "ignoreComments": true }]*/
            
            /**
             * This is a really really really really really really really really really long comment
            **/

            ignoreTrailingComments

            Examples of correct code for this rule with the { "ignoreTrailingComments": true } option:

            /*eslint max-len: ["error", { "ignoreTrailingComments": true }]*/
            
            var foo = 'bar'; // This is a really really really really really really really long comment

            ignoreUrls

            Examples of correct code for this rule with the { "ignoreUrls": true } option:

            /*eslint max-len: ["error", { "ignoreUrls": true }]*/
            
            var url = 'https://www.example.com/really/really/really/really/really/really/really/long';

            ignorePattern

            Examples of correct code for this rule with the { "ignorePattern": true } option:

            /*eslint max-len: ["error", { "ignorePattern": "^\\s*var\\s.+=\\s*require\\s*\\(/" }]*/
            
            var dep = require('really/really/really/really/really/really/really/really/long/module');

            Related Rules

            • [complexity](complexity.md)
            • [max-depth](max-depth.md)
            • [max-nested-callbacks](max-nested-callbacks.md)
            • [max-params](max-params.md)
            • [max-statements](max-statements.md) Source: http://eslint.org/docs/rules/

            Line 58 exceeds the maximum line length of 80.
            Open

                      divId: iViz.util.getDefaultDomId('progressBarId', this.attributes.attr_id),

            enforce a maximum line length (max-len)

            Very long lines of code in any language can be difficult to read. In order to aid in readability and maintainability many coders have developed a convention to limit lines of code to X number of characters (traditionally 80 characters).

            var foo = { "bar": "This is a bar.", "baz": { "qux": "This is a qux" }, "difficult": "to read" }; // very long

            Rule Details

            This rule enforces a maximum line length to increase code readability and maintainability.

            Note: This rule calculates the length of a line via code points, not characters. That means if you use a double-byte character in your code, it will count as 2 code points instead of 1, and 2 will be used to calculate line length. This is a technical limitation of JavaScript that is made easier with ES2015, and we will look to update this when ES2015 is available in Node.js.

            Options

            This rule has a number or object option:

            • "code" (default 80) enforces a maximum line length
            • "tabWidth" (default 4) specifies the character width for tab characters
            • "comments" enforces a maximum line length for comments; defaults to value of code
            • "ignorePattern" ignores lines matching a regular expression; can only match a single line and need to be double escaped when written in YAML or JSON
            • "ignoreComments": true ignores all trailing comments and comments on their own line
            • "ignoreTrailingComments": true ignores only trailing comments
            • "ignoreUrls": true ignores lines that contain a URL

            code

            Examples of incorrect code for this rule with the default { "code": 80 } option:

            /*eslint max-len: ["error", 80]*/
            
            var foo = { "bar": "This is a bar.", "baz": { "qux": "This is a qux" }, "difficult": "to read" };

            Examples of correct code for this rule with the default { "code": 80 } option:

            /*eslint max-len: ["error", 80]*/
            
            var foo = {
              "bar": "This is a bar.",
              "baz": { "qux": "This is a qux" },
              "easier": "to read"
            };

            tabWidth

            Examples of incorrect code for this rule with the default { "tabWidth": 4 } option:

            /*eslint max-len: ["error", 80, 4]*/
            
            \t  \t  var foo = { "bar": "This is a bar.", "baz": { "qux": "This is a qux" } };

            Examples of correct code for this rule with the default { "tabWidth": 4 } option:

            /*eslint max-len: ["error", 80, 4]*/
            
            \t  \t  var foo = {
            \t  \t  \t  \t  "bar": "This is a bar.",
            \t  \t  \t  \t  "baz": { "qux": "This is a qux" }
            \t  \t  };

            comments

            Examples of incorrect code for this rule with the { "comments": 65 } option:

            /*eslint max-len: ["error", { "comments": 65 }]*/
            
            /**
             * This is a comment that violates the maximum line length we have specified
            **/

            ignoreComments

            Examples of correct code for this rule with the { "ignoreComments": true } option:

            /*eslint max-len: ["error", { "ignoreComments": true }]*/
            
            /**
             * This is a really really really really really really really really really long comment
            **/

            ignoreTrailingComments

            Examples of correct code for this rule with the { "ignoreTrailingComments": true } option:

            /*eslint max-len: ["error", { "ignoreTrailingComments": true }]*/
            
            var foo = 'bar'; // This is a really really really really really really really long comment

            ignoreUrls

            Examples of correct code for this rule with the { "ignoreUrls": true } option:

            /*eslint max-len: ["error", { "ignoreUrls": true }]*/
            
            var url = 'https://www.example.com/really/really/really/really/really/really/really/long';

            ignorePattern

            Examples of correct code for this rule with the { "ignorePattern": true } option:

            /*eslint max-len: ["error", { "ignorePattern": "^\\s*var\\s.+=\\s*require\\s*\\(/" }]*/
            
            var dep = require('really/really/really/really/really/really/really/really/long/module');

            Related Rules

            • [complexity](complexity.md)
            • [max-depth](max-depth.md)
            • [max-nested-callbacks](max-nested-callbacks.md)
            • [max-params](max-params.md)
            • [max-statements](max-statements.md) Source: http://eslint.org/docs/rules/

            Line 304 exceeds the maximum line length of 80.
            Open

                      _self.totalNumOfStudies = Object.keys(iviz.datamanager.cnaProfileIdsMap).length;

            enforce a maximum line length (max-len)

            Very long lines of code in any language can be difficult to read. In order to aid in readability and maintainability many coders have developed a convention to limit lines of code to X number of characters (traditionally 80 characters).

            var foo = { "bar": "This is a bar.", "baz": { "qux": "This is a qux" }, "difficult": "to read" }; // very long

            Rule Details

            This rule enforces a maximum line length to increase code readability and maintainability.

            Note: This rule calculates the length of a line via code points, not characters. That means if you use a double-byte character in your code, it will count as 2 code points instead of 1, and 2 will be used to calculate line length. This is a technical limitation of JavaScript that is made easier with ES2015, and we will look to update this when ES2015 is available in Node.js.

            Options

            This rule has a number or object option:

            • "code" (default 80) enforces a maximum line length
            • "tabWidth" (default 4) specifies the character width for tab characters
            • "comments" enforces a maximum line length for comments; defaults to value of code
            • "ignorePattern" ignores lines matching a regular expression; can only match a single line and need to be double escaped when written in YAML or JSON
            • "ignoreComments": true ignores all trailing comments and comments on their own line
            • "ignoreTrailingComments": true ignores only trailing comments
            • "ignoreUrls": true ignores lines that contain a URL

            code

            Examples of incorrect code for this rule with the default { "code": 80 } option:

            /*eslint max-len: ["error", 80]*/
            
            var foo = { "bar": "This is a bar.", "baz": { "qux": "This is a qux" }, "difficult": "to read" };

            Examples of correct code for this rule with the default { "code": 80 } option:

            /*eslint max-len: ["error", 80]*/
            
            var foo = {
              "bar": "This is a bar.",
              "baz": { "qux": "This is a qux" },
              "easier": "to read"
            };

            tabWidth

            Examples of incorrect code for this rule with the default { "tabWidth": 4 } option:

            /*eslint max-len: ["error", 80, 4]*/
            
            \t  \t  var foo = { "bar": "This is a bar.", "baz": { "qux": "This is a qux" } };

            Examples of correct code for this rule with the default { "tabWidth": 4 } option:

            /*eslint max-len: ["error", 80, 4]*/
            
            \t  \t  var foo = {
            \t  \t  \t  \t  "bar": "This is a bar.",
            \t  \t  \t  \t  "baz": { "qux": "This is a qux" }
            \t  \t  };

            comments

            Examples of incorrect code for this rule with the { "comments": 65 } option:

            /*eslint max-len: ["error", { "comments": 65 }]*/
            
            /**
             * This is a comment that violates the maximum line length we have specified
            **/

            ignoreComments

            Examples of correct code for this rule with the { "ignoreComments": true } option:

            /*eslint max-len: ["error", { "ignoreComments": true }]*/
            
            /**
             * This is a really really really really really really really really really long comment
            **/

            ignoreTrailingComments

            Examples of correct code for this rule with the { "ignoreTrailingComments": true } option:

            /*eslint max-len: ["error", { "ignoreTrailingComments": true }]*/
            
            var foo = 'bar'; // This is a really really really really really really really long comment

            ignoreUrls

            Examples of correct code for this rule with the { "ignoreUrls": true } option:

            /*eslint max-len: ["error", { "ignoreUrls": true }]*/
            
            var url = 'https://www.example.com/really/really/really/really/really/really/really/long';

            ignorePattern

            Examples of correct code for this rule with the { "ignorePattern": true } option:

            /*eslint max-len: ["error", { "ignorePattern": "^\\s*var\\s.+=\\s*require\\s*\\(/" }]*/
            
            var dep = require('really/really/really/really/really/really/really/really/long/module');

            Related Rules

            • [complexity](complexity.md)
            • [max-depth](max-depth.md)
            • [max-nested-callbacks](max-nested-callbacks.md)
            • [max-params](max-params.md)
            • [max-statements](max-statements.md) Source: http://eslint.org/docs/rules/

            Line 242 exceeds the maximum line length of 80.
            Open

                      }, this.isMutatedGeneCna ? _data.geneMeta : null, this.invisibleDimension, this.genePanelMap);

            enforce a maximum line length (max-len)

            Very long lines of code in any language can be difficult to read. In order to aid in readability and maintainability many coders have developed a convention to limit lines of code to X number of characters (traditionally 80 characters).

            var foo = { "bar": "This is a bar.", "baz": { "qux": "This is a qux" }, "difficult": "to read" }; // very long

            Rule Details

            This rule enforces a maximum line length to increase code readability and maintainability.

            Note: This rule calculates the length of a line via code points, not characters. That means if you use a double-byte character in your code, it will count as 2 code points instead of 1, and 2 will be used to calculate line length. This is a technical limitation of JavaScript that is made easier with ES2015, and we will look to update this when ES2015 is available in Node.js.

            Options

            This rule has a number or object option:

            • "code" (default 80) enforces a maximum line length
            • "tabWidth" (default 4) specifies the character width for tab characters
            • "comments" enforces a maximum line length for comments; defaults to value of code
            • "ignorePattern" ignores lines matching a regular expression; can only match a single line and need to be double escaped when written in YAML or JSON
            • "ignoreComments": true ignores all trailing comments and comments on their own line
            • "ignoreTrailingComments": true ignores only trailing comments
            • "ignoreUrls": true ignores lines that contain a URL

            code

            Examples of incorrect code for this rule with the default { "code": 80 } option:

            /*eslint max-len: ["error", 80]*/
            
            var foo = { "bar": "This is a bar.", "baz": { "qux": "This is a qux" }, "difficult": "to read" };

            Examples of correct code for this rule with the default { "code": 80 } option:

            /*eslint max-len: ["error", 80]*/
            
            var foo = {
              "bar": "This is a bar.",
              "baz": { "qux": "This is a qux" },
              "easier": "to read"
            };

            tabWidth

            Examples of incorrect code for this rule with the default { "tabWidth": 4 } option:

            /*eslint max-len: ["error", 80, 4]*/
            
            \t  \t  var foo = { "bar": "This is a bar.", "baz": { "qux": "This is a qux" } };

            Examples of correct code for this rule with the default { "tabWidth": 4 } option:

            /*eslint max-len: ["error", 80, 4]*/
            
            \t  \t  var foo = {
            \t  \t  \t  \t  "bar": "This is a bar.",
            \t  \t  \t  \t  "baz": { "qux": "This is a qux" }
            \t  \t  };

            comments

            Examples of incorrect code for this rule with the { "comments": 65 } option:

            /*eslint max-len: ["error", { "comments": 65 }]*/
            
            /**
             * This is a comment that violates the maximum line length we have specified
            **/

            ignoreComments

            Examples of correct code for this rule with the { "ignoreComments": true } option:

            /*eslint max-len: ["error", { "ignoreComments": true }]*/
            
            /**
             * This is a really really really really really really really really really long comment
            **/

            ignoreTrailingComments

            Examples of correct code for this rule with the { "ignoreTrailingComments": true } option:

            /*eslint max-len: ["error", { "ignoreTrailingComments": true }]*/
            
            var foo = 'bar'; // This is a really really really really really really really long comment

            ignoreUrls

            Examples of correct code for this rule with the { "ignoreUrls": true } option:

            /*eslint max-len: ["error", { "ignoreUrls": true }]*/
            
            var url = 'https://www.example.com/really/really/really/really/really/really/really/long';

            ignorePattern

            Examples of correct code for this rule with the { "ignorePattern": true } option:

            /*eslint max-len: ["error", { "ignorePattern": "^\\s*var\\s.+=\\s*require\\s*\\(/" }]*/
            
            var dep = require('really/really/really/really/really/really/really/really/long/module');

            Related Rules

            • [complexity](complexity.md)
            • [max-depth](max-depth.md)
            • [max-nested-callbacks](max-nested-callbacks.md)
            • [max-params](max-params.md)
            • [max-statements](max-statements.md) Source: http://eslint.org/docs/rules/

            Line 26 exceeds the maximum line length of 80.
            Open

                '<span class="content">Failed to load data, refresh the page may help</span></div></div>',

            enforce a maximum line length (max-len)

            Very long lines of code in any language can be difficult to read. In order to aid in readability and maintainability many coders have developed a convention to limit lines of code to X number of characters (traditionally 80 characters).

            var foo = { "bar": "This is a bar.", "baz": { "qux": "This is a qux" }, "difficult": "to read" }; // very long

            Rule Details

            This rule enforces a maximum line length to increase code readability and maintainability.

            Note: This rule calculates the length of a line via code points, not characters. That means if you use a double-byte character in your code, it will count as 2 code points instead of 1, and 2 will be used to calculate line length. This is a technical limitation of JavaScript that is made easier with ES2015, and we will look to update this when ES2015 is available in Node.js.

            Options

            This rule has a number or object option:

            • "code" (default 80) enforces a maximum line length
            • "tabWidth" (default 4) specifies the character width for tab characters
            • "comments" enforces a maximum line length for comments; defaults to value of code
            • "ignorePattern" ignores lines matching a regular expression; can only match a single line and need to be double escaped when written in YAML or JSON
            • "ignoreComments": true ignores all trailing comments and comments on their own line
            • "ignoreTrailingComments": true ignores only trailing comments
            • "ignoreUrls": true ignores lines that contain a URL

            code

            Examples of incorrect code for this rule with the default { "code": 80 } option:

            /*eslint max-len: ["error", 80]*/
            
            var foo = { "bar": "This is a bar.", "baz": { "qux": "This is a qux" }, "difficult": "to read" };

            Examples of correct code for this rule with the default { "code": 80 } option:

            /*eslint max-len: ["error", 80]*/
            
            var foo = {
              "bar": "This is a bar.",
              "baz": { "qux": "This is a qux" },
              "easier": "to read"
            };

            tabWidth

            Examples of incorrect code for this rule with the default { "tabWidth": 4 } option:

            /*eslint max-len: ["error", 80, 4]*/
            
            \t  \t  var foo = { "bar": "This is a bar.", "baz": { "qux": "This is a qux" } };

            Examples of correct code for this rule with the default { "tabWidth": 4 } option:

            /*eslint max-len: ["error", 80, 4]*/
            
            \t  \t  var foo = {
            \t  \t  \t  \t  "bar": "This is a bar.",
            \t  \t  \t  \t  "baz": { "qux": "This is a qux" }
            \t  \t  };

            comments

            Examples of incorrect code for this rule with the { "comments": 65 } option:

            /*eslint max-len: ["error", { "comments": 65 }]*/
            
            /**
             * This is a comment that violates the maximum line length we have specified
            **/

            ignoreComments

            Examples of correct code for this rule with the { "ignoreComments": true } option:

            /*eslint max-len: ["error", { "ignoreComments": true }]*/
            
            /**
             * This is a really really really really really really really really really long comment
            **/

            ignoreTrailingComments

            Examples of correct code for this rule with the { "ignoreTrailingComments": true } option:

            /*eslint max-len: ["error", { "ignoreTrailingComments": true }]*/
            
            var foo = 'bar'; // This is a really really really really really really really long comment

            ignoreUrls

            Examples of correct code for this rule with the { "ignoreUrls": true } option:

            /*eslint max-len: ["error", { "ignoreUrls": true }]*/
            
            var url = 'https://www.example.com/really/really/really/really/really/really/really/long';

            ignorePattern

            Examples of correct code for this rule with the { "ignorePattern": true } option:

            /*eslint max-len: ["error", { "ignorePattern": "^\\s*var\\s.+=\\s*require\\s*\\(/" }]*/
            
            var dep = require('really/really/really/really/really/really/really/really/long/module');

            Related Rules

            • [complexity](complexity.md)
            • [max-depth](max-depth.md)
            • [max-nested-callbacks](max-nested-callbacks.md)
            • [max-params](max-params.md)
            • [max-statements](max-statements.md) Source: http://eslint.org/docs/rules/

            Line 265 exceeds the maximum line length of 80.
            Open

                    if (this.showedSurvivalPlot && !this.isMutatedGeneCna && _.isArray(categories) &&

            enforce a maximum line length (max-len)

            Very long lines of code in any language can be difficult to read. In order to aid in readability and maintainability many coders have developed a convention to limit lines of code to X number of characters (traditionally 80 characters).

            var foo = { "bar": "This is a bar.", "baz": { "qux": "This is a qux" }, "difficult": "to read" }; // very long

            Rule Details

            This rule enforces a maximum line length to increase code readability and maintainability.

            Note: This rule calculates the length of a line via code points, not characters. That means if you use a double-byte character in your code, it will count as 2 code points instead of 1, and 2 will be used to calculate line length. This is a technical limitation of JavaScript that is made easier with ES2015, and we will look to update this when ES2015 is available in Node.js.

            Options

            This rule has a number or object option:

            • "code" (default 80) enforces a maximum line length
            • "tabWidth" (default 4) specifies the character width for tab characters
            • "comments" enforces a maximum line length for comments; defaults to value of code
            • "ignorePattern" ignores lines matching a regular expression; can only match a single line and need to be double escaped when written in YAML or JSON
            • "ignoreComments": true ignores all trailing comments and comments on their own line
            • "ignoreTrailingComments": true ignores only trailing comments
            • "ignoreUrls": true ignores lines that contain a URL

            code

            Examples of incorrect code for this rule with the default { "code": 80 } option:

            /*eslint max-len: ["error", 80]*/
            
            var foo = { "bar": "This is a bar.", "baz": { "qux": "This is a qux" }, "difficult": "to read" };

            Examples of correct code for this rule with the default { "code": 80 } option:

            /*eslint max-len: ["error", 80]*/
            
            var foo = {
              "bar": "This is a bar.",
              "baz": { "qux": "This is a qux" },
              "easier": "to read"
            };

            tabWidth

            Examples of incorrect code for this rule with the default { "tabWidth": 4 } option:

            /*eslint max-len: ["error", 80, 4]*/
            
            \t  \t  var foo = { "bar": "This is a bar.", "baz": { "qux": "This is a qux" } };

            Examples of correct code for this rule with the default { "tabWidth": 4 } option:

            /*eslint max-len: ["error", 80, 4]*/
            
            \t  \t  var foo = {
            \t  \t  \t  \t  "bar": "This is a bar.",
            \t  \t  \t  \t  "baz": { "qux": "This is a qux" }
            \t  \t  };

            comments

            Examples of incorrect code for this rule with the { "comments": 65 } option:

            /*eslint max-len: ["error", { "comments": 65 }]*/
            
            /**
             * This is a comment that violates the maximum line length we have specified
            **/

            ignoreComments

            Examples of correct code for this rule with the { "ignoreComments": true } option:

            /*eslint max-len: ["error", { "ignoreComments": true }]*/
            
            /**
             * This is a really really really really really really really really really long comment
            **/

            ignoreTrailingComments

            Examples of correct code for this rule with the { "ignoreTrailingComments": true } option:

            /*eslint max-len: ["error", { "ignoreTrailingComments": true }]*/
            
            var foo = 'bar'; // This is a really really really really really really really long comment

            ignoreUrls

            Examples of correct code for this rule with the { "ignoreUrls": true } option:

            /*eslint max-len: ["error", { "ignoreUrls": true }]*/
            
            var url = 'https://www.example.com/really/really/really/really/really/really/really/long';

            ignorePattern

            Examples of correct code for this rule with the { "ignorePattern": true } option:

            /*eslint max-len: ["error", { "ignorePattern": "^\\s*var\\s.+=\\s*require\\s*\\(/" }]*/
            
            var dep = require('really/really/really/really/really/really/really/really/long/module');

            Related Rules

            • [complexity](complexity.md)
            • [max-depth](max-depth.md)
            • [max-nested-callbacks](max-nested-callbacks.md)
            • [max-params](max-params.md)
            • [max-statements](max-statements.md) Source: http://eslint.org/docs/rules/

            Inconsistently quoted property 'getRainbowSurvival' found.
            Open

                events: {

            Quoting Style for Property Names (quote-props)

            Object literal property names can be defined in two ways: using literals or using strings. For example, these two objects are equivalent:

            var object1 = {
                property: true
            };
            
            var object2 = {
                "property": true
            };

            In many cases, it doesn't matter if you choose to use an identifier instead of a string or vice-versa. Even so, you might decide to enforce a consistent style in your code.

            There are, however, some occasions when you must use quotes:

            1. If you are using an ECMAScript 3 JavaScript engine (such as IE8) and you want to use a keyword (such as if) as a property name. This restriction was removed in ECMAScript 5.
            2. You want to use a non-identifier character in your property name, such as having a property with a space like "one two".

            Another example where quotes do matter is when using numeric literals as property keys:

            var object = {
                1e2: 1,
                100: 2
            };

            This may look alright at first sight, but this code in fact throws a syntax error in ECMAScript 5 strict mode. This happens because 1e2 and 100 are coerced into strings before getting used as the property name. Both String(1e2) and String(100) happen to be equal to "100", which causes the "Duplicate data property in object literal not allowed in strict mode" error. Issues like that can be tricky to debug, so some prefer to require quotes around all property names.

            Rule Details

            This rule aims to enforce use of quotes in property names and as such will flag any properties that don't use quotes (default behavior).

            Options

            There are four behaviors for this rule: "always" (default), "as-needed", "consistent" and "consistent-as-needed". You can define these options in your configuration as:

            {
                "quote-props": ["error", "as-needed"]
            }

            "always"

            When configured with "always" as the first option (the default), quoting for all properties will be enforced. Some believe that ensuring property names in object literals are always wrapped in quotes is generally a good idea, since depending on the property name you may need to quote them anyway. Consider this example:

            var object = {
                foo: "bar",
                baz: 42,
                "qux-lorem": true
            };

            Here, the properties foo and baz are not wrapped in quotes, but qux-lorem is, because it doesn’t work without the quotes. This is rather inconsistent. Instead, you may prefer to quote names of all properties:

            var object = {
                "foo": "bar",
                "baz": 42,
                "qux-lorem": true
            };

            or, if you prefer single quotes:

            var object = {
                'foo': 'bar',
                'baz': 42,
                'qux-lorem': true
            };

            When configured with "always" as the first option (the default), quoting for all properties will be enforced. The following patterns are considered problems:

            /*eslint quote-props: ["error", "always"]*/
            
            var object = {
                foo: "bar",
                baz: 42,
                "qux-lorem": true
            };

            The following patterns are not considered problems:

            /*eslint quote-props: ["error", "always"]*/
            /*eslint-env es6*/
            
            var object1 = {
                "foo": "bar",
                "baz": 42,
                "qux-lorem": true
            };
            
            var object2 = {
                'foo': 'bar',
                'baz': 42,
                'qux-lorem': true
            };
            
            var object3 = {
                foo() {
                    return;
                }
            };

            "as-needed"

            When configured with "as-needed" as the first option, quotes will be enforced when they are strictly required, and unnecessary quotes will cause warnings. The following patterns are considered problems:

            /*eslint quote-props: ["error", "as-needed"]*/
            
            var object = {
                "a": 0,
                "0": 0,
                "true": 0,
                "null": 0
            };

            The following patterns are not considered problems:

            /*eslint quote-props: ["error", "as-needed"]*/
            /*eslint-env es6*/
            
            var object1 = {
                "a-b": 0,
                "0x0": 0,
                "1e2": 0
            };
            
            var object2 = {
                foo: 'bar',
                baz: 42,
                true: 0,
                0: 0,
                'qux-lorem': true
            };
            
            var object3 = {
                foo() {
                    return;
                }
            };

            When the "as-needed" mode is selected, an additional keywords option can be provided. This flag indicates whether language keywords should be quoted as properties. By default it is set to false.

            {
                "quote-props": ["error", "as-needed", { "keywords": true }]
            }

            When keywords is set to true, the following patterns become problems:

            /*eslint quote-props: ["error", "as-needed", { "keywords": true }]*/
            
            var x = {
                while: 1,
                volatile: "foo"
            };

            Another modifier for this rule is the unnecessary option which defaults to true. Setting this to false will prevent the rule from complaining about unnecessarily quoted properties. This comes in handy when you only care about quoting keywords.

            {
                "quote-props": ["error", "as-needed", { "keywords": true, "unnecessary": false }]
            }

            When unnecessary is set to false, the following patterns stop being problems:

            /*eslint quote-props: ["error", "as-needed", { "keywords": true, "unnecessary": false }]*/
            
            var x = {
                "while": 1,
                "foo": "bar"  // Would normally have caused a warning
            };

            A numbers flag, with default value false, can also be used as a modifier for the "as-needed" mode. When it is set to true, numeric literals should always be quoted.

            {
                "quote-props": ["error", "as-needed", {"numbers": true}]
            }

            When numbers is set to true, the following patterns become problems:

            /*eslint quote-props: ["error", "as-needed", { "numbers": true }]*/
            
            var x = {
                100: 1
            }

            and the following patterns stop being problems:

            var x = {
                "100": 1
            }

            "consistent"

            When configured with "consistent", the patterns below are considered problems. Basically "consistent" means all or no properties are expected to be quoted, in other words quoting style can't be mixed within an object. Please note the latter situation (no quotation at all) isn't always possible as some property names require quoting.

            /*eslint quote-props: ["error", "consistent"]*/
            
            var object1 = {
                foo: "bar",
                "baz": 42,
                "qux-lorem": true
            };
            
            var object2 = {
                'foo': 'bar',
                baz: 42
            };

            The following patterns are not considered problems:

            /*eslint quote-props: ["error", "consistent"]*/
            
            var object1 = {
                "foo": "bar",
                "baz": 42,
                "qux-lorem": true
            };
            
            var object2 = {
                'foo': 'bar',
                'baz': 42
            };
            
            var object3 = {
                foo: 'bar',
                baz: 42
            };

            "consistent-as-needed"

            When configured with "consistent-as-needed", the behavior is similar to "consistent" with one difference. Namely, properties' quoting should be consistent (as in "consistent") but whenever all quotes are redundant a warning is raised. In other words if at least one property name has to be quoted (like qux-lorem) then all property names must be quoted, otherwise no properties can be quoted. The following patterns are considered problems:

            /*eslint quote-props: ["error", "consistent-as-needed"]*/
            
            var object1 = {
                foo: "bar",
                "baz": 42,
                "qux-lorem": true
            };
            
            var object2 = {
                'foo': 'bar',
                'baz': 42
            };

            The following patterns are not considered problems:

            /*eslint quote-props: ["error", "consistent-as-needed"]*/
            
            var object1 = {
                "foo": "bar",
                "baz": 42,
                "qux-lorem": true
            };
            
            var object2 = {
                foo: 'bar',
                baz: 42
            };

            When the "consistent-as-needed" mode is selected, an additional keywords option can be provided. This flag indicates whether language keywords can be used unquoted as properties. By default it is set to false.

            {
                "quote-props": ["error", "consistent-as-needed", { "keywords": true }]
            }

            When keywords is set to true, the following patterns are considered problems:

            /*eslint quote-props: ["error", "consistent-as-needed", { "keywords": true }]*/
            
            var x = {
                while: 1,
                volatile: "foo"
            };

            When Not To Use It

            If you don't care if property names are consistently wrapped in quotes or not, and you don't target legacy ES3 environments, turn this rule off.

            Further Reading

            Missing space before value for key 'chartFilters'.
            Open

                    chartFilters:[]

            enforce consistent spacing between keys and values in object literal properties (key-spacing)

            This rule enforces spacing around the colon in object literal properties. It can verify each property individually, or it can ensure horizontal alignment of adjacent properties in an object literal.

            Rule Details

            This rule enforces consistent spacing between keys and values in object literal properties. In the case of long lines, it is acceptable to add a new line wherever whitespace is allowed.

            Options

            This rule has an object option:

            • "beforeColon": false (default) disallows spaces between the key and the colon in object literals
            • "beforeColon": true requires at least one space between the key and the colon in object literals
            • "afterColon": true (default) requires at least one space between the colon and the value in object literals
            • "afterColon": false disallows spaces between the colon and the value in object literals
            • "mode": strict (default) enforces exactly one space before or after colons in object literals
            • "mode": minimum enforces one or more spaces before or after colons in object literals
            • "align": "value" enforces horizontal alignment of values in object literals
            • "align": "colon" enforces horizontal alignment of both colons and values in object literals.
            • "singleLine" specifies a spacing style for single-line object literals
            • "multiLine" specifies a spacing style for multi-line object literals

            Please note that you can either use the top-level options or the grouped options (singleLine and multiLine) but not both.

            beforeColon

            Examples of incorrect code for this rule with the default { "beforeColon": false } option:

            /*eslint key-spacing: ["error", { "beforeColon": false }]*/
            
            var obj = { "foo" : 42 };

            Examples of correct code for this rule with the default { "beforeColon": false } option:

            /*eslint key-spacing: ["error", { "beforeColon": false }]*/
            
            var obj = { "foo": 42 };

            Examples of incorrect code for this rule with the { "beforeColon": true } option:

            /*eslint key-spacing: ["error", { "beforeColon": true }]*/
            
            var obj = { "foo": 42 };

            Examples of correct code for this rule with the { "beforeColon": true } option:

            /*eslint key-spacing: ["error", { "beforeColon": true }]*/
            
            var obj = { "foo" : 42 };

            afterColon

            Examples of incorrect code for this rule with the default { "afterColon": true } option:

            /*eslint key-spacing: ["error", { "afterColon": true }]*/
            
            var obj = { "foo":42 };

            Examples of correct code for this rule with the default { "afterColon": true } option:

            /*eslint key-spacing: ["error", { "afterColon": true }]*/
            
            var obj = { "foo": 42 };

            Examples of incorrect code for this rule with the { "afterColon": false } option:

            /*eslint key-spacing: ["error", { "afterColon": false }]*/
            
            var obj = { "foo": 42 };

            Examples of correct code for this rule with the { "afterColon": false } option:

            /*eslint key-spacing: ["error", { "afterColon": false }]*/
            
            var obj = { "foo":42 };

            mode

            Examples of incorrect code for this rule with the default { "mode": "strict" } option:

            /*eslint key-spacing: ["error", { "mode": "strict" }]*/
            
            call({
                foobar: 42,
                bat:    2 * 2
            });

            Examples of correct code for this rule with the default { "mode": "strict" } option:

            /*eslint key-spacing: ["error", { "mode": "strict" }]*/
            
            call({
                foobar: 42,
                bat: 2 * 2
            });

            Examples of correct code for this rule with the { "mode": "minimum" } option:

            /*eslint key-spacing: ["error", { "mode": "minimum" }]*/
            
            call({
                foobar: 42,
                bat:    2 * 2
            });

            align

            Examples of incorrect code for this rule with the { "align": "value" } option:

            /*eslint key-spacing: ["error", { "align": "value" }]*/
            
            var obj = {
                a: value,
                bcde:  42,
                fg :   foo()
            };

            Examples of correct code for this rule with the { "align": "value" } option:

            /*eslint key-spacing: ["error", { "align": "value" }]*/
            
            var obj = {
                a:    value,
                bcde: 42,
            
                fg: foo(),
                h:  function() {
                    return this.a;
                },
                ijkl: 'Non-consecutive lines form a new group'
            };
            
            var obj = { a: "foo", longPropertyName: "bar" };

            Examples of incorrect code for this rule with the { "align": "colon" } option:

            /*eslint key-spacing: ["error", { "align": "colon" }]*/
            
            call({
                foobar: 42,
                bat:    2 * 2
            });

            Examples of correct code for this rule with the { "align": "colon" } option:

            /*eslint key-spacing: ["error", { "align": "colon" }]*/
            
            call({
                foobar: 42,
                bat   : 2 * 2
            });

            singleLine and multiLine

            Examples of correct code for this rule with sample { "singleLine": { }, "multiLine": { } } options:

            /*eslint "key-spacing": [2, {
                "singleLine": {
                    "beforeColon": false,
                    "afterColon": true
                },
                "multiLine": {
                    "beforeColon": true,
                    "afterColon": true,
                    "align": "colon"
                }
            }]*/
            var obj = { one: 1, "two": 2, three: 3 };
            var obj2 = {
                "two" : 2,
                three : 3
            };

            When Not To Use It

            If you have another convention for property spacing that might not be consistent with the available options, or if you want to permit multiple styles concurrently you can safely disable this rule. Source: http://eslint.org/docs/rules/

            Line 78 exceeds the maximum line length of 80.
            Open

                    this.loadingBar.status = (this.loadedStudies / (this.totalNumOfStudies || 1)) * 0.8;

            enforce a maximum line length (max-len)

            Very long lines of code in any language can be difficult to read. In order to aid in readability and maintainability many coders have developed a convention to limit lines of code to X number of characters (traditionally 80 characters).

            var foo = { "bar": "This is a bar.", "baz": { "qux": "This is a qux" }, "difficult": "to read" }; // very long

            Rule Details

            This rule enforces a maximum line length to increase code readability and maintainability.

            Note: This rule calculates the length of a line via code points, not characters. That means if you use a double-byte character in your code, it will count as 2 code points instead of 1, and 2 will be used to calculate line length. This is a technical limitation of JavaScript that is made easier with ES2015, and we will look to update this when ES2015 is available in Node.js.

            Options

            This rule has a number or object option:

            • "code" (default 80) enforces a maximum line length
            • "tabWidth" (default 4) specifies the character width for tab characters
            • "comments" enforces a maximum line length for comments; defaults to value of code
            • "ignorePattern" ignores lines matching a regular expression; can only match a single line and need to be double escaped when written in YAML or JSON
            • "ignoreComments": true ignores all trailing comments and comments on their own line
            • "ignoreTrailingComments": true ignores only trailing comments
            • "ignoreUrls": true ignores lines that contain a URL

            code

            Examples of incorrect code for this rule with the default { "code": 80 } option:

            /*eslint max-len: ["error", 80]*/
            
            var foo = { "bar": "This is a bar.", "baz": { "qux": "This is a qux" }, "difficult": "to read" };

            Examples of correct code for this rule with the default { "code": 80 } option:

            /*eslint max-len: ["error", 80]*/
            
            var foo = {
              "bar": "This is a bar.",
              "baz": { "qux": "This is a qux" },
              "easier": "to read"
            };

            tabWidth

            Examples of incorrect code for this rule with the default { "tabWidth": 4 } option:

            /*eslint max-len: ["error", 80, 4]*/
            
            \t  \t  var foo = { "bar": "This is a bar.", "baz": { "qux": "This is a qux" } };

            Examples of correct code for this rule with the default { "tabWidth": 4 } option:

            /*eslint max-len: ["error", 80, 4]*/
            
            \t  \t  var foo = {
            \t  \t  \t  \t  "bar": "This is a bar.",
            \t  \t  \t  \t  "baz": { "qux": "This is a qux" }
            \t  \t  };

            comments

            Examples of incorrect code for this rule with the { "comments": 65 } option:

            /*eslint max-len: ["error", { "comments": 65 }]*/
            
            /**
             * This is a comment that violates the maximum line length we have specified
            **/

            ignoreComments

            Examples of correct code for this rule with the { "ignoreComments": true } option:

            /*eslint max-len: ["error", { "ignoreComments": true }]*/
            
            /**
             * This is a really really really really really really really really really long comment
            **/

            ignoreTrailingComments

            Examples of correct code for this rule with the { "ignoreTrailingComments": true } option:

            /*eslint max-len: ["error", { "ignoreTrailingComments": true }]*/
            
            var foo = 'bar'; // This is a really really really really really really really long comment

            ignoreUrls

            Examples of correct code for this rule with the { "ignoreUrls": true } option:

            /*eslint max-len: ["error", { "ignoreUrls": true }]*/
            
            var url = 'https://www.example.com/really/really/really/really/really/really/really/long';

            ignorePattern

            Examples of correct code for this rule with the { "ignorePattern": true } option:

            /*eslint max-len: ["error", { "ignorePattern": "^\\s*var\\s.+=\\s*require\\s*\\(/" }]*/
            
            var dep = require('really/really/really/really/really/really/really/really/long/module');

            Related Rules

            • [complexity](complexity.md)
            • [max-depth](max-depth.md)
            • [max-nested-callbacks](max-nested-callbacks.md)
            • [max-params](max-params.md)
            • [max-statements](max-statements.md) Source: http://eslint.org/docs/rules/

            Missing space before value for key 'loadingBar'.
            Open

                    loadingBar :{

            enforce consistent spacing between keys and values in object literal properties (key-spacing)

            This rule enforces spacing around the colon in object literal properties. It can verify each property individually, or it can ensure horizontal alignment of adjacent properties in an object literal.

            Rule Details

            This rule enforces consistent spacing between keys and values in object literal properties. In the case of long lines, it is acceptable to add a new line wherever whitespace is allowed.

            Options

            This rule has an object option:

            • "beforeColon": false (default) disallows spaces between the key and the colon in object literals
            • "beforeColon": true requires at least one space between the key and the colon in object literals
            • "afterColon": true (default) requires at least one space between the colon and the value in object literals
            • "afterColon": false disallows spaces between the colon and the value in object literals
            • "mode": strict (default) enforces exactly one space before or after colons in object literals
            • "mode": minimum enforces one or more spaces before or after colons in object literals
            • "align": "value" enforces horizontal alignment of values in object literals
            • "align": "colon" enforces horizontal alignment of both colons and values in object literals.
            • "singleLine" specifies a spacing style for single-line object literals
            • "multiLine" specifies a spacing style for multi-line object literals

            Please note that you can either use the top-level options or the grouped options (singleLine and multiLine) but not both.

            beforeColon

            Examples of incorrect code for this rule with the default { "beforeColon": false } option:

            /*eslint key-spacing: ["error", { "beforeColon": false }]*/
            
            var obj = { "foo" : 42 };

            Examples of correct code for this rule with the default { "beforeColon": false } option:

            /*eslint key-spacing: ["error", { "beforeColon": false }]*/
            
            var obj = { "foo": 42 };

            Examples of incorrect code for this rule with the { "beforeColon": true } option:

            /*eslint key-spacing: ["error", { "beforeColon": true }]*/
            
            var obj = { "foo": 42 };

            Examples of correct code for this rule with the { "beforeColon": true } option:

            /*eslint key-spacing: ["error", { "beforeColon": true }]*/
            
            var obj = { "foo" : 42 };

            afterColon

            Examples of incorrect code for this rule with the default { "afterColon": true } option:

            /*eslint key-spacing: ["error", { "afterColon": true }]*/
            
            var obj = { "foo":42 };

            Examples of correct code for this rule with the default { "afterColon": true } option:

            /*eslint key-spacing: ["error", { "afterColon": true }]*/
            
            var obj = { "foo": 42 };

            Examples of incorrect code for this rule with the { "afterColon": false } option:

            /*eslint key-spacing: ["error", { "afterColon": false }]*/
            
            var obj = { "foo": 42 };

            Examples of correct code for this rule with the { "afterColon": false } option:

            /*eslint key-spacing: ["error", { "afterColon": false }]*/
            
            var obj = { "foo":42 };

            mode

            Examples of incorrect code for this rule with the default { "mode": "strict" } option:

            /*eslint key-spacing: ["error", { "mode": "strict" }]*/
            
            call({
                foobar: 42,
                bat:    2 * 2
            });

            Examples of correct code for this rule with the default { "mode": "strict" } option:

            /*eslint key-spacing: ["error", { "mode": "strict" }]*/
            
            call({
                foobar: 42,
                bat: 2 * 2
            });

            Examples of correct code for this rule with the { "mode": "minimum" } option:

            /*eslint key-spacing: ["error", { "mode": "minimum" }]*/
            
            call({
                foobar: 42,
                bat:    2 * 2
            });

            align

            Examples of incorrect code for this rule with the { "align": "value" } option:

            /*eslint key-spacing: ["error", { "align": "value" }]*/
            
            var obj = {
                a: value,
                bcde:  42,
                fg :   foo()
            };

            Examples of correct code for this rule with the { "align": "value" } option:

            /*eslint key-spacing: ["error", { "align": "value" }]*/
            
            var obj = {
                a:    value,
                bcde: 42,
            
                fg: foo(),
                h:  function() {
                    return this.a;
                },
                ijkl: 'Non-consecutive lines form a new group'
            };
            
            var obj = { a: "foo", longPropertyName: "bar" };

            Examples of incorrect code for this rule with the { "align": "colon" } option:

            /*eslint key-spacing: ["error", { "align": "colon" }]*/
            
            call({
                foobar: 42,
                bat:    2 * 2
            });

            Examples of correct code for this rule with the { "align": "colon" } option:

            /*eslint key-spacing: ["error", { "align": "colon" }]*/
            
            call({
                foobar: 42,
                bat   : 2 * 2
            });

            singleLine and multiLine

            Examples of correct code for this rule with sample { "singleLine": { }, "multiLine": { } } options:

            /*eslint "key-spacing": [2, {
                "singleLine": {
                    "beforeColon": false,
                    "afterColon": true
                },
                "multiLine": {
                    "beforeColon": true,
                    "afterColon": true,
                    "align": "colon"
                }
            }]*/
            var obj = { one: 1, "two": 2, three: 3 };
            var obj2 = {
                "two" : 2,
                three : 3
            };

            When Not To Use It

            If you have another convention for property spacing that might not be consistent with the available options, or if you want to permit multiple styles concurrently you can safely disable this rule. Source: http://eslint.org/docs/rules/

            Expected space(s) after "if".
            Open

                    if(this.isMutatedGeneCna) {

            enforce consistent spacing before and after keywords (keyword-spacing)

            (fixable) The --fix option on the [command line](../user-guide/command-line-interface#fix) automatically fixes problems reported by this rule.

            Keywords are syntax elements of JavaScript, such as function and if. These identifiers have special meaning to the language and so often appear in a different color in code editors. As an important part of the language, style guides often refer to the spacing that should be used around keywords. For example, you might have a style guide that says keywords should be always surrounded by spaces, which would mean if-else statements must look like this:

            if (foo) {
                // ...
            } else {
                // ...
            }

            Of course, you could also have a style guide that disallows spaces around keywords.

            Rule Details

            This rule enforces consistent spacing around keywords and keyword-like tokens: as (in module declarations), break, case, catch, class, const, continue, debugger, default, delete, do, else, export, extends, finally, for, from (in module declarations), function, get (of getters), if, import, in, instanceof, let, new, of (in for-of statements), return, set (of setters), static, super, switch, this, throw, try, typeof, var, void, while, with, and yield. This rule is designed carefully not to conflict with other spacing rules: it does not apply to spacing where other rules report problems.

            Options

            This rule has an object option:

            • "before": true (default) requires at least one space before keywords
            • "before": false disallows spaces before keywords
            • "after": true (default) requires at least one space after keywords
            • "after": false disallows spaces after keywords
            • "overrides" allows overriding spacing style for specified keywords

            before

            Examples of incorrect code for this rule with the default { "before": true } option:

            /*eslint keyword-spacing: ["error", { "before": true }]*/
            
            if (foo) {
                //...
            }else if (bar) {
                //...
            }else {
                //...
            }

            Examples of correct code for this rule with the default { "before": true } option:

            /*eslint keyword-spacing: ["error", { "before": true }]*/
            /*eslint-env es6*/
            
            if (foo) {
                //...
            } else if (bar) {
                //...
            } else {
                //...
            }
            
            // no conflict with `array-bracket-spacing`
            let a = [this];
            let b = [function() {}];
            
            // no conflict with `arrow-spacing`
            let a = ()=> this.foo;
            
            // no conflict with `block-spacing`
            {function foo() {}}
            
            // no conflict with `comma-spacing`
            let a = [100,this.foo, this.bar];
            
            // not conflict with `computed-property-spacing`
            obj[this.foo] = 0;
            
            // no conflict with `generator-star-spacing`
            function *foo() {}
            
            // no conflict with `key-spacing`
            let obj = {
                foo:function() {}
            };
            
            // no conflict with `object-curly-spacing`
            let obj = {foo: this};
            
            // no conflict with `semi-spacing`
            let a = this;function foo() {}
            
            // no conflict with `space-in-parens`
            (function () {})();
            
            // no conflict with `space-infix-ops`
            if ("foo"in {foo: 0}) {}
            if (10+this.foo<= this.bar) {}
            
            // no conflict with `jsx-curly-spacing`
            let a = 

            Examples of incorrect code for this rule with the { "before": false } option:

            /*eslint keyword-spacing: ["error", { "before": false }]*/
            
            if (foo) {
                //...
            } else if (bar) {
                //...
            } else {
                //...
            }

            Examples of correct code for this rule with the { "before": false } option:

            /*eslint keyword-spacing: ["error", { "before": false }]*/
            
            if (foo) {
                //...
            }else if (bar) {
                //...
            }else {
                //...
            }

            after

            Examples of incorrect code for this rule with the default { "after": true } option:

            /*eslint keyword-spacing: ["error", { "after": true }]*/
            
            if(foo) {
                //...
            } else if(bar) {
                //...
            } else{
                //...
            }

            Examples of correct code for this rule with the default { "after": true } option:

            /*eslint keyword-spacing: ["error", { "after": true }]*/
            
            if (foo) {
                //...
            } else if (bar) {
                //...
            } else {
                //...
            }
            
            // not conflict with `array-bracket-spacing`
            let a = [this];
            
            // not conflict with `arrow-spacing`
            let a = ()=> this.foo;
            
            // not conflict with `comma-spacing`
            let a = [100, this.foo, this.bar];
            
            // not conflict with `computed-property-spacing`
            obj[this.foo] = 0;
            
            // not conflict with `generator-star-spacing`
            function* foo() {}
            
            // not conflict with `key-spacing`
            let obj = {
                foo:function() {}
            };
            
            // not conflict with `no-spaced-func`
            class A {
                constructor() {
                    super();
                }
            }
            
            // not conflict with `object-curly-spacing`
            let obj = {foo: this};
            
            // not conflict with `semi-spacing`
            let a = this;function foo() {}
            
            // not conflict with `space-before-function-paren`
            function() {}
            
            // no conflict with `space-infix-ops`
            if ("foo"in{foo: 0}) {}
            if (10+this.foo<= this.bar) {}
            
            // no conflict with `space-unary-ops`
            function* foo(a) {
                return yield+a;
            }
            
            // no conflict with `yield-star-spacing`
            function* foo(a) {
                return yield* a;
            }
            
            // no conflict with `jsx-curly-spacing`
            let a = 

            Examples of incorrect code for this rule with the { "after": false } option:

            /*eslint keyword-spacing: ["error", { "after": false }]*/
            
            if (foo) {
                //...
            } else if (bar) {
                //...
            } else {
                //...
            }

            Examples of correct code for this rule with the { "after": false } option:

            /*eslint keyword-spacing: ["error", { "after": false }]*/
            
            if(foo) {
                //...
            } else if(bar) {
                //...
            } else{
                //...
            }

            overrides

            Examples of correct code for this rule with the { "overrides": { "if": { "after": false }, "for": { "after": false }, "while": { "after": false } } } option:

            /*eslint keyword-spacing: ["error", { "overrides": {
              "if": { "after": false },
              "for": { "after": false },
              "while": { "after": false }
            } }]*/
            
            if(foo) {
                //...
            } else if(bar) {
                //...
            } else {
                //...
            }
            
            for(;;);
            
            while(true) {
              //...
            }

            When Not To Use It

            If you don't want to enforce consistency on keyword spacing, then it's safe to disable this rule. Source: http://eslint.org/docs/rules/

            Line 301 exceeds the maximum line length of 80.
            Open

                      _self.totalNumOfStudies = Object.keys(iviz.datamanager.mutationProfileIdsMap).length;

            enforce a maximum line length (max-len)

            Very long lines of code in any language can be difficult to read. In order to aid in readability and maintainability many coders have developed a convention to limit lines of code to X number of characters (traditionally 80 characters).

            var foo = { "bar": "This is a bar.", "baz": { "qux": "This is a qux" }, "difficult": "to read" }; // very long

            Rule Details

            This rule enforces a maximum line length to increase code readability and maintainability.

            Note: This rule calculates the length of a line via code points, not characters. That means if you use a double-byte character in your code, it will count as 2 code points instead of 1, and 2 will be used to calculate line length. This is a technical limitation of JavaScript that is made easier with ES2015, and we will look to update this when ES2015 is available in Node.js.

            Options

            This rule has a number or object option:

            • "code" (default 80) enforces a maximum line length
            • "tabWidth" (default 4) specifies the character width for tab characters
            • "comments" enforces a maximum line length for comments; defaults to value of code
            • "ignorePattern" ignores lines matching a regular expression; can only match a single line and need to be double escaped when written in YAML or JSON
            • "ignoreComments": true ignores all trailing comments and comments on their own line
            • "ignoreTrailingComments": true ignores only trailing comments
            • "ignoreUrls": true ignores lines that contain a URL

            code

            Examples of incorrect code for this rule with the default { "code": 80 } option:

            /*eslint max-len: ["error", 80]*/
            
            var foo = { "bar": "This is a bar.", "baz": { "qux": "This is a qux" }, "difficult": "to read" };

            Examples of correct code for this rule with the default { "code": 80 } option:

            /*eslint max-len: ["error", 80]*/
            
            var foo = {
              "bar": "This is a bar.",
              "baz": { "qux": "This is a qux" },
              "easier": "to read"
            };

            tabWidth

            Examples of incorrect code for this rule with the default { "tabWidth": 4 } option:

            /*eslint max-len: ["error", 80, 4]*/
            
            \t  \t  var foo = { "bar": "This is a bar.", "baz": { "qux": "This is a qux" } };

            Examples of correct code for this rule with the default { "tabWidth": 4 } option:

            /*eslint max-len: ["error", 80, 4]*/
            
            \t  \t  var foo = {
            \t  \t  \t  \t  "bar": "This is a bar.",
            \t  \t  \t  \t  "baz": { "qux": "This is a qux" }
            \t  \t  };

            comments

            Examples of incorrect code for this rule with the { "comments": 65 } option:

            /*eslint max-len: ["error", { "comments": 65 }]*/
            
            /**
             * This is a comment that violates the maximum line length we have specified
            **/

            ignoreComments

            Examples of correct code for this rule with the { "ignoreComments": true } option:

            /*eslint max-len: ["error", { "ignoreComments": true }]*/
            
            /**
             * This is a really really really really really really really really really long comment
            **/

            ignoreTrailingComments

            Examples of correct code for this rule with the { "ignoreTrailingComments": true } option:

            /*eslint max-len: ["error", { "ignoreTrailingComments": true }]*/
            
            var foo = 'bar'; // This is a really really really really really really really long comment

            ignoreUrls

            Examples of correct code for this rule with the { "ignoreUrls": true } option:

            /*eslint max-len: ["error", { "ignoreUrls": true }]*/
            
            var url = 'https://www.example.com/really/really/really/really/really/really/really/long';

            ignorePattern

            Examples of correct code for this rule with the { "ignorePattern": true } option:

            /*eslint max-len: ["error", { "ignorePattern": "^\\s*var\\s.+=\\s*require\\s*\\(/" }]*/
            
            var dep = require('really/really/really/really/really/really/really/really/long/module');

            Related Rules

            • [complexity](complexity.md)
            • [max-depth](max-depth.md)
            • [max-nested-callbacks](max-nested-callbacks.md)
            • [max-params](max-params.md)
            • [max-statements](max-statements.md) Source: http://eslint.org/docs/rules/

            There are no issues that match your filters.

            Category
            Status