Implementation
final FigGenerator generateLintRules = valueList(
values: [
const FigSuggestion(
name: "adjacent-overload-signatures",
description:
"Requires overload signatures to be adjacent to each other"),
const FigSuggestion(
name: "ban-ts-comment",
description:
"Disallows the use of Typescript directives without a comment"),
const FigSuggestion(
name: "ban-types",
description:
"Bans the use of primitive wrapper objects (e.g. `String` the object is a wrapper\nof `string` the primitive) in addition to the non-explicit `Function` type and\nthe misunderstood `Object` type"),
const FigSuggestion(
name: "ban-unknown-rule-code",
description:
"Warns the usage of unknown rule codes in ignore directives"),
const FigSuggestion(
name: "ban-untagged-ignore",
description:
"Requires `deno-lint-ignore` to be annotated with one or more rule names"),
const FigSuggestion(
name: "ban-unused-ignore",
description: "Warns unused ignore directives"),
const FigSuggestion(
name: "constructor-super",
description:
"Verifies the correct usage of constructors and calls to `super()`"),
const FigSuggestion(
name: "for-direction",
description:
"Requires `for` loop control variables to increment in the correct direction"),
const FigSuggestion(
name: "getter-return",
description:
"Requires all property getter functions to return a value"),
const FigSuggestion(
name: "no-array-constructor",
description: "Enforce conventional usage of array construction"),
const FigSuggestion(
name: "no-async-promise-executor",
description:
"Requires that async promise executor functions are not used"),
const FigSuggestion(
name: "no-case-declarations",
description:
"Requires lexical declarations (`let`, `const`, `function` and `class`) in switch\n`case` or `default` clauses to be scoped with brackets"),
const FigSuggestion(
name: "no-class-assign",
description: "Disallows modifying variables of class declarations"),
const FigSuggestion(
name: "no-compare-neg-zero",
description: "Disallows comparing against negative zero (`-0`)"),
const FigSuggestion(
name: "no-cond-assign",
description:
"Disallows the use of the assignment operator, `=`, in conditional statements"),
const FigSuggestion(
name: "no-constant-condition",
description:
"Disallows the use of a constant expression in conditional test"),
const FigSuggestion(
name: "no-control-regex",
description:
"Disallows the use ascii control characters in regular expressions"),
const FigSuggestion(
name: "no-debugger",
description: "Disallows the use of the `debugger` statement"),
const FigSuggestion(
name: "no-delete-var",
description: "Disallows the deletion of variables"),
const FigSuggestion(
name: "no-deprecated-deno-api",
description: "Warns the usage of the deprecated Deno APIs"),
const FigSuggestion(
name: "no-dupe-args",
description:
"Disallows using an argument name more than once in a function signature"),
const FigSuggestion(
name: "no-dupe-class-members",
description:
"Disallows using a class member function name more than once"),
const FigSuggestion(
name: "no-dupe-else-if",
description:
"Disallows using the same condition twice in an `if`/`else if` statement"),
const FigSuggestion(
name: "no-dupe-keys",
description: "Disallows duplicate keys in object literals"),
const FigSuggestion(
name: "no-duplicate-case",
description:
"Disallows using the same case clause in a switch statement more than once"),
const FigSuggestion(
name: "no-empty",
description: "Disallows the use of empty block statements"),
const FigSuggestion(
name: "no-empty-character-class",
description:
"Disallows using the empty character class in a regular expression"),
const FigSuggestion(
name: "no-empty-enum",
description: "Disallows the declaration of an empty enum"),
const FigSuggestion(
name: "no-empty-interface",
description: "Disallows the declaration of an empty interface"),
const FigSuggestion(
name: "no-empty-pattern",
description: "Disallows the use of empty patterns in destructuring"),
const FigSuggestion(
name: "no-ex-assign",
description: "Disallows the reassignment of exception parameters"),
const FigSuggestion(
name: "no-explicit-any",
description: "Disallows use of the `any` type"),
const FigSuggestion(
name: "no-extra-boolean-cast",
description: "Disallows unnecessary boolean casts"),
const FigSuggestion(
name: "no-extra-non-null-assertion",
description: "Disallows unnecessary non-null assertions"),
const FigSuggestion(
name: "no-extra-semi", description: "<!-- deno-fmt-ignore-file -->"),
const FigSuggestion(
name: "no-fallthrough",
description: "Disallows the implicit fallthrough of case statements"),
const FigSuggestion(
name: "no-func-assign",
description:
"Disallows the overwriting/reassignment of an existing function"),
const FigSuggestion(
name: "no-global-assign",
description: "Disallows assignment to native Javascript objects"),
const FigSuggestion(
name: "no-import-assign",
description: "Disallows reassignment of imported module bindings"),
const FigSuggestion(
name: "no-inferrable-types",
description: "Disallows easily inferrable types"),
const FigSuggestion(
name: "no-inner-declarations",
description:
"Disallows variable or function definitions in nested blocks"),
const FigSuggestion(
name: "no-invalid-regexp",
description:
"Disallows specifying invalid regular expressions in RegExp constructors"),
const FigSuggestion(
name: "no-invalid-triple-slash-reference",
description:
"Warns the wrong usage of triple-slash reference directives"),
const FigSuggestion(
name: "no-irregular-whitespace",
description:
"Disallows the use of non-space or non-tab whitespace characters"),
const FigSuggestion(
name: "no-misused-new",
description:
"Disallows defining `constructor`s for interfaces or `new` for classes"),
const FigSuggestion(
name: "no-namespace",
description:
"Disallows the use of `namespace` and `module` keywords in TypeScript code"),
const FigSuggestion(
name: "no-new-symbol",
description:
"Disallows the use of `new` operators with built-in `Symbol`s"),
const FigSuggestion(
name: "no-obj-calls",
description:
"Disallows calling built-in global objects like functions"),
const FigSuggestion(
name: "no-octal",
description:
"Disallows expressing octal numbers via numeric literals beginning with `0`"),
const FigSuggestion(
name: "no-prototype-builtins",
description:
"Disallows the use of `Object.prototype` builtins directly"),
const FigSuggestion(
name: "no-redeclare",
description:
"Disallows redeclaration of variables, functions, parameters with the same name"),
const FigSuggestion(
name: "no-regex-spaces",
description:
"Disallows multiple spaces in regular expression literals"),
const FigSuggestion(
name: "no-self-assign", description: "Disallows self assignments"),
const FigSuggestion(
name: "no-setter-return",
description: "Disallows returning values from setters"),
const FigSuggestion(
name: "no-shadow-restricted-names",
description: "Disallows shadowing of restricted names"),
const FigSuggestion(
name: "no-this-alias",
description: "Disallows assigning variables to `this`"),
const FigSuggestion(
name: "no-this-before-super",
description:
"Disallows use of `this` or `super` before calling `super()` in constructors"),
const FigSuggestion(
name: "no-unreachable",
description:
"Disallows the unreachable code after the control flow statements"),
const FigSuggestion(
name: "no-unsafe-finally",
description:
"Disallows the use of control flow statements within `finally` blocks"),
const FigSuggestion(
name: "no-unsafe-negation",
description:
"Disallows the usage of negation operator `!` as the left operand of relational\noperators"),
const FigSuggestion(
name: "no-unused-labels", description: "Disallows unused labels"),
const FigSuggestion(
name: "no-unused-vars",
description: "Enforces all variables used at least once"),
const FigSuggestion(
name: "no-var",
description:
"Enforces the use of block scoped variables over more error prone function scoped\nvariables. Block scoped variables are defined using `const` and `let` keywords"),
const FigSuggestion(
name: "no-window-prefix",
description: "Disallows the use of Web APIs via the `window` object"),
const FigSuggestion(
name: "no-with",
description: "Disallows the usage of `with` statements"),
const FigSuggestion(
name: "prefer-as-const",
description:
"Recommends using const assertion (`as const`) over explicitly specifying literal\ntypes or using type assertion"),
const FigSuggestion(
name: "prefer-const",
description:
"Recommends declaring variables with [`const`] over [`let`]"),
const FigSuggestion(
name: "prefer-namespace-keyword",
description:
"Recommends the use of `namespace` keyword over `module` keyword when declaring\nTypeScript module"),
const FigSuggestion(
name: "require-await",
description: "Disallows async functions that have no await expression"),
const FigSuggestion(
name: "require-yield",
description: "Disallows generator functions that have no `yield`"),
const FigSuggestion(
name: "use-isnan", description: "Disallows comparisons to `NaN`"),
const FigSuggestion(
name: "valid-typeof",
description:
"Restricts the use of the `typeof` operator to a specific set of string literals"),
]
.map((s) => FigSuggestion(
name: s.name,
description: s.description,
icon: "fig://icon?type=string"))
.toList(),
);