{ "env": { "browser": true, "es6": true, "jest/globals": true, "node": true }, "parser": "@typescript-eslint/parser", "parserOptions": { "ecmaFeatures": { "experimentalObjectRestSpread": true, "jsx": true }, "sourceType": "module" }, "extends": [ "eslint:recommended", "plugin:@typescript-eslint/recommended", "plugin:jsdoc/recommended", "plugin:json/recommended", "plugin:markdown/recommended", "plugin:@cspell/recommended", "prettier" ], "plugins": ["@typescript-eslint", "no-only-tests", "html", "jest", "jsdoc", "json", "@cspell"], "rules": { "curly": "error", "no-console": "error", "no-prototype-builtins": "off", "no-unused-vars": "off", "jsdoc/check-indentation": "off", "jsdoc/check-alignment": "off", "jsdoc/check-line-alignment": "off", "jsdoc/multiline-blocks": "off", "jsdoc/newline-after-description": "off", "jsdoc/tag-lines": "off", "jsdoc/require-param-description": "off", "jsdoc/require-param-type": "off", "jsdoc/require-returns": "off", "jsdoc/require-returns-description": "off", "cypress/no-async-tests": "off", "@typescript-eslint/ban-ts-comment": [ "error", { "ts-expect-error": "allow-with-description", "ts-ignore": "allow-with-description", "ts-nocheck": "allow-with-description", "ts-check": "allow-with-description", "minimumDescriptionLength": 10 } ], "json/*": ["error", "allowComments"], "@cspell/spellchecker": [ "error", { "checkIdentifiers": false, "checkStrings": false, "checkStringTemplates": false } ], "no-empty": [ "error", { "allowEmptyCatch": true } ], "no-only-tests/no-only-tests": "error" }, "overrides": [ { "files": ["cypress/**", "demos/**"], "rules": { "no-console": "off" } }, { "files": ["*.spec.{ts,js}", "cypress/**", "demos/**", "**/docs/**"], "rules": { "jsdoc/require-jsdoc": "off", "@typescript-eslint/no-unused-vars": "off" } }, { "files": ["*.html", "*.md", "**/*.md/*"], "rules": { "no-var": "error", "no-undef": "off", "@typescript-eslint/no-unused-vars": "off" } } ] }