chiiya/haven

View on GitHub
src/notification/index.ts

Summary

Maintainability
A
1 hr
Test Coverage

Function init has 32 lines of code (exceeds 25 allowed). Consider refactoring.
Open

  public init(): void {
    // Use custom cookie notification if present
    this.cookieNotification = document.getElementById("cookie-notification");

    // If no custom cookie notification is found, create a default one.
Severity: Minor
Found in src/notification/index.ts - About 1 hr to fix

    " should be '
    Open

    import store from "../store";
    Severity: Minor
    Found in src/notification/index.ts by tslint

    Rule: quotemark

    Enforces quote character for string literals.

    Notes
    • Has Fix

    Config

    Five arguments may be optionally provided:

    • "single" enforces single quotes.
    • "double" enforces double quotes.
    • "backtick" enforces backticks.
    • "jsx-single" enforces single quotes for JSX attributes.
    • "jsx-double" enforces double quotes for JSX attributes.
    • "avoid-template" forbids single-line untagged template strings that do not contain string interpolations. Note that backticks may still be used if "avoid-escape" is enabled and both single and double quotes are present in the string (the latter option takes precedence).
    • "avoid-escape" allows you to use the "other" quotemark in cases where escaping would normally be required. For example, [true, "double", "avoid-escape"] would not report a failure on the string literal 'Hello "World"'.
    Examples
    "quotemark": true,single,avoid-escape,avoid-template
    "quotemark": true,single,jsx-double
    Schema
    {
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "single",
          "double",
          "backtick",
          "jsx-single",
          "jsx-double",
          "avoid-escape",
          "avoid-template"
        ]
      },
      "minLength": 0,
      "maxLength": 5
    }

    For more information see this page.

    Expected parentheses around arrow function argument having a body with curly braces.
    Open

          this.cookiesDecline.addEventListener("click", event => {
    Severity: Minor
    Found in src/notification/index.ts by tslint

    Rule: ter-arrow-parens

    require parens in arrow function arguments

    Rationale

    Arrow functions can omit parentheses when they have exactly one parameter. In all other cases the parameter(s) must be wrapped in parentheses. This rule enforces the consistent use of parentheses in arrow functions.

    Config

    This rule has a string option and an object one.

    String options are:

    • "always" (default) requires parentheses around arguments in all cases.
    • "as-needed" allows omitting parentheses when there is only one argument.

    Object properties for variants of the "as-needed" option:

    • "requireForBlockBody": true modifies the as-needed rule in order to require parentheses if the function body is in an instructions block (surrounded by braces).
    Examples
    "ter-arrow-parens": 
    "ter-arrow-parens": [true]
    "ter-arrow-parens": 
    "ter-arrow-parens": [true, "always"]
    "ter-arrow-parens": 
    "ter-arrow-parens": [true, "as-needed"]
    "ter-arrow-parens": 
    "ter-arrow-parens": [true, "as-needed", { "requireForBlockBody": true }]
    Schema
    {
      "type": "array",
      "items": [
        {
          "enum": [
            "always",
            "as-needed"
          ]
        },
        {
          "type": "object",
          "properties": {
            "requireForBlockBody": {
              "type": "boolean"
            }
          },
          "additionalProperties": false
        }
      ],
      "maxLength": 1
    }

    For more information see this page.

    Missing trailing comma
    Open

          store.cookieAttributes
    Severity: Minor
    Found in src/notification/index.ts by tslint

    Rule: trailing-comma

    Requires or disallows trailing commas in array and object literals, destructuring assignments, function typings, named imports and exports and function parameters.

    Notes
    • Has Fix

    Config

    One argument which is an object with the keys multiline and singleline. Both can be set to a string ("always" or "never") or an object.

    The object can contain any of the following keys: "arrays", "objects", "functions", "imports", "exports", and "typeLiterals"; each key can have one of the following values: "always", "never", and "ignore". Any missing keys will default to "ignore".

    • "multiline" checks multi-line object literals.
    • "singleline" checks single-line object literals.

    An array is considered "multiline" if its closing bracket is on a line after the last array element. The same general logic is followed for object literals, function typings, named import statements and function parameters.

    To align this rule with the ECMAScript specification that is implemented in modern JavaScript VMs, there is a third option esSpecCompliant. Set this option to true to disallow trailing comma on object and array rest and rest parameters.

    Examples
    "trailing-comma": true,[object Object]
    "trailing-comma": true,[object Object]
    Schema
    {
      "type": "object",
      "properties": {
        "multiline": {
          "anyOf": [
            {
              "type": "string",
              "enum": [
                "always",
                "never"
              ]
            },
            {
              "type": "object",
              "properties": {
                "arrays": {
                  "type": "string",
                  "enum": [
                    "always",
                    "never",
                    "ignore"
                  ]
                },
                "exports": {
                  "type": "string",
                  "enum": [
                    "always",
                    "never",
                    "ignore"
                  ]
                },
                "functions": {
                  "type": "string",
                  "enum": [
                    "always",
                    "never",
                    "ignore"
                  ]
                },
                "imports": {
                  "type": "string",
                  "enum": [
                    "always",
                    "never",
                    "ignore"
                  ]
                },
                "objects": {
                  "type": "string",
                  "enum": [
                    "always",
                    "never",
                    "ignore"
                  ]
                },
                "typeLiterals": {
                  "type": "string",
                  "enum": [
                    "always",
                    "never",
                    "ignore"
                  ]
                }
              }
            }
          ]
        },
        "singleline": {
          "anyOf": [
            {
              "type": "string",
              "enum": [
                "always",
                "never"
              ]
            },
            {
              "type": "object",
              "properties": {
                "arrays": {
                  "type": "string",
                  "enum": [
                    "always",
                    "never",
                    "ignore"
                  ]
                },
                "exports": {
                  "type": "string",
                  "enum": [
                    "always",
                    "never",
                    "ignore"
                  ]
                },
                "functions": {
                  "type": "string",
                  "enum": [
                    "always",
                    "never",
                    "ignore"
                  ]
                },
                "imports": {
                  "type": "string",
                  "enum": [
                    "always",
                    "never",
                    "ignore"
                  ]
                },
                "objects": {
                  "type": "string",
                  "enum": [
                    "always",
                    "never",
                    "ignore"
                  ]
                },
                "typeLiterals": {
                  "type": "string",
                  "enum": [
                    "always",
                    "never",
                    "ignore"
                  ]
                }
              }
            }
          ]
        },
        "esSpecCompliant": {
          "type": "boolean"
        }
      },
      "additionalProperties": false
    }

    For more information see this page.

    " should be '
    Open

    import CookieManager from "../cookies/cookie-manager";
    Severity: Minor
    Found in src/notification/index.ts by tslint

    Rule: quotemark

    Enforces quote character for string literals.

    Notes
    • Has Fix

    Config

    Five arguments may be optionally provided:

    • "single" enforces single quotes.
    • "double" enforces double quotes.
    • "backtick" enforces backticks.
    • "jsx-single" enforces single quotes for JSX attributes.
    • "jsx-double" enforces double quotes for JSX attributes.
    • "avoid-template" forbids single-line untagged template strings that do not contain string interpolations. Note that backticks may still be used if "avoid-escape" is enabled and both single and double quotes are present in the string (the latter option takes precedence).
    • "avoid-escape" allows you to use the "other" quotemark in cases where escaping would normally be required. For example, [true, "double", "avoid-escape"] would not report a failure on the string literal 'Hello "World"'.
    Examples
    "quotemark": true,single,avoid-escape,avoid-template
    "quotemark": true,single,jsx-double
    Schema
    {
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "single",
          "double",
          "backtick",
          "jsx-single",
          "jsx-double",
          "avoid-escape",
          "avoid-template"
        ]
      },
      "minLength": 0,
      "maxLength": 5
    }

    For more information see this page.

    " should be '
    Open

          this.cookiesDecline.addEventListener("click", event => {
    Severity: Minor
    Found in src/notification/index.ts by tslint

    Rule: quotemark

    Enforces quote character for string literals.

    Notes
    • Has Fix

    Config

    Five arguments may be optionally provided:

    • "single" enforces single quotes.
    • "double" enforces double quotes.
    • "backtick" enforces backticks.
    • "jsx-single" enforces single quotes for JSX attributes.
    • "jsx-double" enforces double quotes for JSX attributes.
    • "avoid-template" forbids single-line untagged template strings that do not contain string interpolations. Note that backticks may still be used if "avoid-escape" is enabled and both single and double quotes are present in the string (the latter option takes precedence).
    • "avoid-escape" allows you to use the "other" quotemark in cases where escaping would normally be required. For example, [true, "double", "avoid-escape"] would not report a failure on the string literal 'Hello "World"'.
    Examples
    "quotemark": true,single,avoid-escape,avoid-template
    "quotemark": true,single,jsx-double
    Schema
    {
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "single",
          "double",
          "backtick",
          "jsx-single",
          "jsx-double",
          "avoid-escape",
          "avoid-template"
        ]
      },
      "minLength": 0,
      "maxLength": 5
    }

    For more information see this page.

    " should be '
    Open

    import DefaultNotification from "./default-notification";
    Severity: Minor
    Found in src/notification/index.ts by tslint

    Rule: quotemark

    Enforces quote character for string literals.

    Notes
    • Has Fix

    Config

    Five arguments may be optionally provided:

    • "single" enforces single quotes.
    • "double" enforces double quotes.
    • "backtick" enforces backticks.
    • "jsx-single" enforces single quotes for JSX attributes.
    • "jsx-double" enforces double quotes for JSX attributes.
    • "avoid-template" forbids single-line untagged template strings that do not contain string interpolations. Note that backticks may still be used if "avoid-escape" is enabled and both single and double quotes are present in the string (the latter option takes precedence).
    • "avoid-escape" allows you to use the "other" quotemark in cases where escaping would normally be required. For example, [true, "double", "avoid-escape"] would not report a failure on the string literal 'Hello "World"'.
    Examples
    "quotemark": true,single,avoid-escape,avoid-template
    "quotemark": true,single,jsx-double
    Schema
    {
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "single",
          "double",
          "backtick",
          "jsx-single",
          "jsx-double",
          "avoid-escape",
          "avoid-template"
        ]
      },
      "minLength": 0,
      "maxLength": 5
    }

    For more information see this page.

    variable name must be in lowerCamelCase or UPPER_CASE
    Open

    const Status = {
    Severity: Minor
    Found in src/notification/index.ts by tslint

    Rule: variable-name

    Checks variable names for various errors.

    Config

    Several arguments may be optionally provided:

    • "check-format" enbables enforcement of a certain naming format. By default, the rule only allows only lowerCamelCased or UPPER_CASED variable names.
      • These additional options make the check stricter:
      • "require-const-for-all-caps": enforces that all variables with UPPER_CASED names should be const.
      • These additional options make the check more permissive:
      • "allow-leading-underscore" allows underscores at the beginning (only has an effect if "check-format" specified)
      • "allow-pascal-case" allows PascalCase in addition to lowerCamelCase.
      • "allow-snake-case" allows snake_case in addition to lowerCamelCase.
      • "allow-trailing-underscore" allows underscores at the end. (only has an effect if "check-format" specified)
    • "ban-keywords": disallows the use of certain TypeScript keywords as variable or parameter names.
      • These are: any, Number, number, String, string, Boolean, boolean, Undefined, undefined
    Examples
    "variable-name": [object Object]
    Schema
    {
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "check-format",
          "allow-leading-underscore",
          "allow-pascal-case",
          "allow-snake-case",
          "allow-trailing-underscore",
          "require-const-for-all-caps",
          "ban-keywords"
        ]
      },
      "minLength": 0,
      "maxLength": 6
    }

    For more information see this page.

    " should be '
    Open

          "cookie-notification__decline"
    Severity: Minor
    Found in src/notification/index.ts by tslint

    Rule: quotemark

    Enforces quote character for string literals.

    Notes
    • Has Fix

    Config

    Five arguments may be optionally provided:

    • "single" enforces single quotes.
    • "double" enforces double quotes.
    • "backtick" enforces backticks.
    • "jsx-single" enforces single quotes for JSX attributes.
    • "jsx-double" enforces double quotes for JSX attributes.
    • "avoid-template" forbids single-line untagged template strings that do not contain string interpolations. Note that backticks may still be used if "avoid-escape" is enabled and both single and double quotes are present in the string (the latter option takes precedence).
    • "avoid-escape" allows you to use the "other" quotemark in cases where escaping would normally be required. For example, [true, "double", "avoid-escape"] would not report a failure on the string literal 'Hello "World"'.
    Examples
    "quotemark": true,single,avoid-escape,avoid-template
    "quotemark": true,single,jsx-double
    Schema
    {
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "single",
          "double",
          "backtick",
          "jsx-single",
          "jsx-double",
          "avoid-escape",
          "avoid-template"
        ]
      },
      "minLength": 0,
      "maxLength": 5
    }

    For more information see this page.

    " should be '
    Open

          this.cookieNotification.classList.remove("hv-notification--hidden");
    Severity: Minor
    Found in src/notification/index.ts by tslint

    Rule: quotemark

    Enforces quote character for string literals.

    Notes
    • Has Fix

    Config

    Five arguments may be optionally provided:

    • "single" enforces single quotes.
    • "double" enforces double quotes.
    • "backtick" enforces backticks.
    • "jsx-single" enforces single quotes for JSX attributes.
    • "jsx-double" enforces double quotes for JSX attributes.
    • "avoid-template" forbids single-line untagged template strings that do not contain string interpolations. Note that backticks may still be used if "avoid-escape" is enabled and both single and double quotes are present in the string (the latter option takes precedence).
    • "avoid-escape" allows you to use the "other" quotemark in cases where escaping would normally be required. For example, [true, "double", "avoid-escape"] would not report a failure on the string literal 'Hello "World"'.
    Examples
    "quotemark": true,single,avoid-escape,avoid-template
    "quotemark": true,single,jsx-double
    Schema
    {
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "single",
          "double",
          "backtick",
          "jsx-single",
          "jsx-double",
          "avoid-escape",
          "avoid-template"
        ]
      },
      "minLength": 0,
      "maxLength": 5
    }

    For more information see this page.

    " should be '
    Open

        this.cookiesAccept = document.getElementById("cookie-notification__accept");
    Severity: Minor
    Found in src/notification/index.ts by tslint

    Rule: quotemark

    Enforces quote character for string literals.

    Notes
    • Has Fix

    Config

    Five arguments may be optionally provided:

    • "single" enforces single quotes.
    • "double" enforces double quotes.
    • "backtick" enforces backticks.
    • "jsx-single" enforces single quotes for JSX attributes.
    • "jsx-double" enforces double quotes for JSX attributes.
    • "avoid-template" forbids single-line untagged template strings that do not contain string interpolations. Note that backticks may still be used if "avoid-escape" is enabled and both single and double quotes are present in the string (the latter option takes precedence).
    • "avoid-escape" allows you to use the "other" quotemark in cases where escaping would normally be required. For example, [true, "double", "avoid-escape"] would not report a failure on the string literal 'Hello "World"'.
    Examples
    "quotemark": true,single,avoid-escape,avoid-template
    "quotemark": true,single,jsx-double
    Schema
    {
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "single",
          "double",
          "backtick",
          "jsx-single",
          "jsx-double",
          "avoid-escape",
          "avoid-template"
        ]
      },
      "minLength": 0,
      "maxLength": 5
    }

    For more information see this page.

    " should be '
    Open

          this.cookiesAccept.addEventListener("click", event => {
    Severity: Minor
    Found in src/notification/index.ts by tslint

    Rule: quotemark

    Enforces quote character for string literals.

    Notes
    • Has Fix

    Config

    Five arguments may be optionally provided:

    • "single" enforces single quotes.
    • "double" enforces double quotes.
    • "backtick" enforces backticks.
    • "jsx-single" enforces single quotes for JSX attributes.
    • "jsx-double" enforces double quotes for JSX attributes.
    • "avoid-template" forbids single-line untagged template strings that do not contain string interpolations. Note that backticks may still be used if "avoid-escape" is enabled and both single and double quotes are present in the string (the latter option takes precedence).
    • "avoid-escape" allows you to use the "other" quotemark in cases where escaping would normally be required. For example, [true, "double", "avoid-escape"] would not report a failure on the string literal 'Hello "World"'.
    Examples
    "quotemark": true,single,avoid-escape,avoid-template
    "quotemark": true,single,jsx-double
    Schema
    {
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "single",
          "double",
          "backtick",
          "jsx-single",
          "jsx-double",
          "avoid-escape",
          "avoid-template"
        ]
      },
      "minLength": 0,
      "maxLength": 5
    }

    For more information see this page.

    " should be '
    Open

            this.cookieNotification.dataset.display || "block";
    Severity: Minor
    Found in src/notification/index.ts by tslint

    Rule: quotemark

    Enforces quote character for string literals.

    Notes
    • Has Fix

    Config

    Five arguments may be optionally provided:

    • "single" enforces single quotes.
    • "double" enforces double quotes.
    • "backtick" enforces backticks.
    • "jsx-single" enforces single quotes for JSX attributes.
    • "jsx-double" enforces double quotes for JSX attributes.
    • "avoid-template" forbids single-line untagged template strings that do not contain string interpolations. Note that backticks may still be used if "avoid-escape" is enabled and both single and double quotes are present in the string (the latter option takes precedence).
    • "avoid-escape" allows you to use the "other" quotemark in cases where escaping would normally be required. For example, [true, "double", "avoid-escape"] would not report a failure on the string literal 'Hello "World"'.
    Examples
    "quotemark": true,single,avoid-escape,avoid-template
    "quotemark": true,single,jsx-double
    Schema
    {
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "single",
          "double",
          "backtick",
          "jsx-single",
          "jsx-double",
          "avoid-escape",
          "avoid-template"
        ]
      },
      "minLength": 0,
      "maxLength": 5
    }

    For more information see this page.

    " should be '
    Open

          this.cookieNotification.style.display = "none";
    Severity: Minor
    Found in src/notification/index.ts by tslint

    Rule: quotemark

    Enforces quote character for string literals.

    Notes
    • Has Fix

    Config

    Five arguments may be optionally provided:

    • "single" enforces single quotes.
    • "double" enforces double quotes.
    • "backtick" enforces backticks.
    • "jsx-single" enforces single quotes for JSX attributes.
    • "jsx-double" enforces double quotes for JSX attributes.
    • "avoid-template" forbids single-line untagged template strings that do not contain string interpolations. Note that backticks may still be used if "avoid-escape" is enabled and both single and double quotes are present in the string (the latter option takes precedence).
    • "avoid-escape" allows you to use the "other" quotemark in cases where escaping would normally be required. For example, [true, "double", "avoid-escape"] would not report a failure on the string literal 'Hello "World"'.
    Examples
    "quotemark": true,single,avoid-escape,avoid-template
    "quotemark": true,single,jsx-double
    Schema
    {
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "single",
          "double",
          "backtick",
          "jsx-single",
          "jsx-double",
          "avoid-escape",
          "avoid-template"
        ]
      },
      "minLength": 0,
      "maxLength": 5
    }

    For more information see this page.

    " should be '
    Open

          this.cookieNotification = document.getElementById("cookie-notification");
    Severity: Minor
    Found in src/notification/index.ts by tslint

    Rule: quotemark

    Enforces quote character for string literals.

    Notes
    • Has Fix

    Config

    Five arguments may be optionally provided:

    • "single" enforces single quotes.
    • "double" enforces double quotes.
    • "backtick" enforces backticks.
    • "jsx-single" enforces single quotes for JSX attributes.
    • "jsx-double" enforces double quotes for JSX attributes.
    • "avoid-template" forbids single-line untagged template strings that do not contain string interpolations. Note that backticks may still be used if "avoid-escape" is enabled and both single and double quotes are present in the string (the latter option takes precedence).
    • "avoid-escape" allows you to use the "other" quotemark in cases where escaping would normally be required. For example, [true, "double", "avoid-escape"] would not report a failure on the string literal 'Hello "World"'.
    Examples
    "quotemark": true,single,avoid-escape,avoid-template
    "quotemark": true,single,jsx-double
    Schema
    {
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "single",
          "double",
          "backtick",
          "jsx-single",
          "jsx-double",
          "avoid-escape",
          "avoid-template"
        ]
      },
      "minLength": 0,
      "maxLength": 5
    }

    For more information see this page.

    Expected parentheses around arrow function argument having a body with curly braces.
    Open

          this.cookiesAccept.addEventListener("click", event => {
    Severity: Minor
    Found in src/notification/index.ts by tslint

    Rule: ter-arrow-parens

    require parens in arrow function arguments

    Rationale

    Arrow functions can omit parentheses when they have exactly one parameter. In all other cases the parameter(s) must be wrapped in parentheses. This rule enforces the consistent use of parentheses in arrow functions.

    Config

    This rule has a string option and an object one.

    String options are:

    • "always" (default) requires parentheses around arguments in all cases.
    • "as-needed" allows omitting parentheses when there is only one argument.

    Object properties for variants of the "as-needed" option:

    • "requireForBlockBody": true modifies the as-needed rule in order to require parentheses if the function body is in an instructions block (surrounded by braces).
    Examples
    "ter-arrow-parens": 
    "ter-arrow-parens": [true]
    "ter-arrow-parens": 
    "ter-arrow-parens": [true, "always"]
    "ter-arrow-parens": 
    "ter-arrow-parens": [true, "as-needed"]
    "ter-arrow-parens": 
    "ter-arrow-parens": [true, "as-needed", { "requireForBlockBody": true }]
    Schema
    {
      "type": "array",
      "items": [
        {
          "enum": [
            "always",
            "as-needed"
          ]
        },
        {
          "type": "object",
          "properties": {
            "requireForBlockBody": {
              "type": "boolean"
            }
          },
          "additionalProperties": false
        }
      ],
      "maxLength": 1
    }

    For more information see this page.

    Missing trailing comma
    Open

      DISABLED: false
    Severity: Minor
    Found in src/notification/index.ts by tslint

    Rule: trailing-comma

    Requires or disallows trailing commas in array and object literals, destructuring assignments, function typings, named imports and exports and function parameters.

    Notes
    • Has Fix

    Config

    One argument which is an object with the keys multiline and singleline. Both can be set to a string ("always" or "never") or an object.

    The object can contain any of the following keys: "arrays", "objects", "functions", "imports", "exports", and "typeLiterals"; each key can have one of the following values: "always", "never", and "ignore". Any missing keys will default to "ignore".

    • "multiline" checks multi-line object literals.
    • "singleline" checks single-line object literals.

    An array is considered "multiline" if its closing bracket is on a line after the last array element. The same general logic is followed for object literals, function typings, named import statements and function parameters.

    To align this rule with the ECMAScript specification that is implemented in modern JavaScript VMs, there is a third option esSpecCompliant. Set this option to true to disallow trailing comma on object and array rest and rest parameters.

    Examples
    "trailing-comma": true,[object Object]
    "trailing-comma": true,[object Object]
    Schema
    {
      "type": "object",
      "properties": {
        "multiline": {
          "anyOf": [
            {
              "type": "string",
              "enum": [
                "always",
                "never"
              ]
            },
            {
              "type": "object",
              "properties": {
                "arrays": {
                  "type": "string",
                  "enum": [
                    "always",
                    "never",
                    "ignore"
                  ]
                },
                "exports": {
                  "type": "string",
                  "enum": [
                    "always",
                    "never",
                    "ignore"
                  ]
                },
                "functions": {
                  "type": "string",
                  "enum": [
                    "always",
                    "never",
                    "ignore"
                  ]
                },
                "imports": {
                  "type": "string",
                  "enum": [
                    "always",
                    "never",
                    "ignore"
                  ]
                },
                "objects": {
                  "type": "string",
                  "enum": [
                    "always",
                    "never",
                    "ignore"
                  ]
                },
                "typeLiterals": {
                  "type": "string",
                  "enum": [
                    "always",
                    "never",
                    "ignore"
                  ]
                }
              }
            }
          ]
        },
        "singleline": {
          "anyOf": [
            {
              "type": "string",
              "enum": [
                "always",
                "never"
              ]
            },
            {
              "type": "object",
              "properties": {
                "arrays": {
                  "type": "string",
                  "enum": [
                    "always",
                    "never",
                    "ignore"
                  ]
                },
                "exports": {
                  "type": "string",
                  "enum": [
                    "always",
                    "never",
                    "ignore"
                  ]
                },
                "functions": {
                  "type": "string",
                  "enum": [
                    "always",
                    "never",
                    "ignore"
                  ]
                },
                "imports": {
                  "type": "string",
                  "enum": [
                    "always",
                    "never",
                    "ignore"
                  ]
                },
                "objects": {
                  "type": "string",
                  "enum": [
                    "always",
                    "never",
                    "ignore"
                  ]
                },
                "typeLiterals": {
                  "type": "string",
                  "enum": [
                    "always",
                    "never",
                    "ignore"
                  ]
                }
              }
            }
          ]
        },
        "esSpecCompliant": {
          "type": "boolean"
        }
      },
      "additionalProperties": false
    }

    For more information see this page.

    " should be '
    Open

    import { getAllPurposes } from "../utils";
    Severity: Minor
    Found in src/notification/index.ts by tslint

    Rule: quotemark

    Enforces quote character for string literals.

    Notes
    • Has Fix

    Config

    Five arguments may be optionally provided:

    • "single" enforces single quotes.
    • "double" enforces double quotes.
    • "backtick" enforces backticks.
    • "jsx-single" enforces single quotes for JSX attributes.
    • "jsx-double" enforces double quotes for JSX attributes.
    • "avoid-template" forbids single-line untagged template strings that do not contain string interpolations. Note that backticks may still be used if "avoid-escape" is enabled and both single and double quotes are present in the string (the latter option takes precedence).
    • "avoid-escape" allows you to use the "other" quotemark in cases where escaping would normally be required. For example, [true, "double", "avoid-escape"] would not report a failure on the string literal 'Hello "World"'.
    Examples
    "quotemark": true,single,avoid-escape,avoid-template
    "quotemark": true,single,jsx-double
    Schema
    {
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "single",
          "double",
          "backtick",
          "jsx-single",
          "jsx-double",
          "avoid-escape",
          "avoid-template"
        ]
      },
      "minLength": 0,
      "maxLength": 5
    }

    For more information see this page.

    " should be '
    Open

        this.cookieNotification = document.getElementById("cookie-notification");
    Severity: Minor
    Found in src/notification/index.ts by tslint

    Rule: quotemark

    Enforces quote character for string literals.

    Notes
    • Has Fix

    Config

    Five arguments may be optionally provided:

    • "single" enforces single quotes.
    • "double" enforces double quotes.
    • "backtick" enforces backticks.
    • "jsx-single" enforces single quotes for JSX attributes.
    • "jsx-double" enforces double quotes for JSX attributes.
    • "avoid-template" forbids single-line untagged template strings that do not contain string interpolations. Note that backticks may still be used if "avoid-escape" is enabled and both single and double quotes are present in the string (the latter option takes precedence).
    • "avoid-escape" allows you to use the "other" quotemark in cases where escaping would normally be required. For example, [true, "double", "avoid-escape"] would not report a failure on the string literal 'Hello "World"'.
    Examples
    "quotemark": true,single,avoid-escape,avoid-template
    "quotemark": true,single,jsx-double
    Schema
    {
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "single",
          "double",
          "backtick",
          "jsx-single",
          "jsx-double",
          "avoid-escape",
          "avoid-template"
        ]
      },
      "minLength": 0,
      "maxLength": 5
    }

    For more information see this page.

    Missing trailing comma
    Open

          "cookie-notification__decline"
    Severity: Minor
    Found in src/notification/index.ts by tslint

    Rule: trailing-comma

    Requires or disallows trailing commas in array and object literals, destructuring assignments, function typings, named imports and exports and function parameters.

    Notes
    • Has Fix

    Config

    One argument which is an object with the keys multiline and singleline. Both can be set to a string ("always" or "never") or an object.

    The object can contain any of the following keys: "arrays", "objects", "functions", "imports", "exports", and "typeLiterals"; each key can have one of the following values: "always", "never", and "ignore". Any missing keys will default to "ignore".

    • "multiline" checks multi-line object literals.
    • "singleline" checks single-line object literals.

    An array is considered "multiline" if its closing bracket is on a line after the last array element. The same general logic is followed for object literals, function typings, named import statements and function parameters.

    To align this rule with the ECMAScript specification that is implemented in modern JavaScript VMs, there is a third option esSpecCompliant. Set this option to true to disallow trailing comma on object and array rest and rest parameters.

    Examples
    "trailing-comma": true,[object Object]
    "trailing-comma": true,[object Object]
    Schema
    {
      "type": "object",
      "properties": {
        "multiline": {
          "anyOf": [
            {
              "type": "string",
              "enum": [
                "always",
                "never"
              ]
            },
            {
              "type": "object",
              "properties": {
                "arrays": {
                  "type": "string",
                  "enum": [
                    "always",
                    "never",
                    "ignore"
                  ]
                },
                "exports": {
                  "type": "string",
                  "enum": [
                    "always",
                    "never",
                    "ignore"
                  ]
                },
                "functions": {
                  "type": "string",
                  "enum": [
                    "always",
                    "never",
                    "ignore"
                  ]
                },
                "imports": {
                  "type": "string",
                  "enum": [
                    "always",
                    "never",
                    "ignore"
                  ]
                },
                "objects": {
                  "type": "string",
                  "enum": [
                    "always",
                    "never",
                    "ignore"
                  ]
                },
                "typeLiterals": {
                  "type": "string",
                  "enum": [
                    "always",
                    "never",
                    "ignore"
                  ]
                }
              }
            }
          ]
        },
        "singleline": {
          "anyOf": [
            {
              "type": "string",
              "enum": [
                "always",
                "never"
              ]
            },
            {
              "type": "object",
              "properties": {
                "arrays": {
                  "type": "string",
                  "enum": [
                    "always",
                    "never",
                    "ignore"
                  ]
                },
                "exports": {
                  "type": "string",
                  "enum": [
                    "always",
                    "never",
                    "ignore"
                  ]
                },
                "functions": {
                  "type": "string",
                  "enum": [
                    "always",
                    "never",
                    "ignore"
                  ]
                },
                "imports": {
                  "type": "string",
                  "enum": [
                    "always",
                    "never",
                    "ignore"
                  ]
                },
                "objects": {
                  "type": "string",
                  "enum": [
                    "always",
                    "never",
                    "ignore"
                  ]
                },
                "typeLiterals": {
                  "type": "string",
                  "enum": [
                    "always",
                    "never",
                    "ignore"
                  ]
                }
              }
            }
          ]
        },
        "esSpecCompliant": {
          "type": "boolean"
        }
      },
      "additionalProperties": false
    }

    For more information see this page.

    There are no issues that match your filters.

    Category
    Status