{ "parserOptions": { "ecmaVersion": 2019 }, "env": { "node": true, "es6": true }, "plugins": [ "jsdoc", "node", "unicorn" ], "extends": [ "eslint:all", "plugin:jsdoc/recommended" ], "settings": { "jsdoc": { "preferredTypes": { "object": "Object" } } }, "reportUnusedDisableDirectives": true, "rules": { "array-bracket-spacing": ["error", "always"], "array-element-newline": "off", "capitalized-comments": "off", "complexity": "off", "dot-location": ["error", "property"], "func-style": ["error", "declaration"], "function-call-argument-newline": "off", "function-paren-newline": "off", "global-require": "off", "id-length": "off", "indent": ["error", 2, { "SwitchCase": 1 }], "linebreak-style": "off", "max-depth": "off", "max-lines": "off", "max-lines-per-function": "off", "max-params": ["error", 10], "max-statements": "off", "multiline-comment-style": ["error", "separate-lines"], "multiline-ternary": "off", "newline-per-chained-call": "off", "no-continue": "off", "no-empty-function": "off", "no-extra-parens": "off", "no-implicit-coercion": "off", "no-magic-numbers": "off", "no-nested-ternary": "off", "no-param-reassign": "off", "no-plusplus": "off", "no-sync": "off", "no-ternary": "off", "no-undefined": "off", "object-curly-spacing": ["error", "always"], "object-shorthand": "off", "one-var": "off", "operator-linebreak": ["error", "after"], "padded-blocks": "off", "prefer-arrow-callback": "off", "prefer-destructuring": "off", "prefer-named-capture-group": "off", "prefer-template": "off", "require-unicode-regexp": "off", "sort-keys": "off", "space-before-function-paren": ["error", "never"], "vars-on-top": "off", "wrap-regex": "off", "jsdoc/check-examples": "error", "jsdoc/check-indentation": "error", "jsdoc/check-line-alignment": "error", "jsdoc/check-syntax": "error", "jsdoc/match-description": "error", "jsdoc/no-bad-blocks": "error", "jsdoc/no-defaults": "error", "jsdoc/require-description": "error", "jsdoc/require-description-complete-sentence": "error", "node/handle-callback-err": "error", "node/no-callback-literal": "error", "node/no-exports-assign": "error", "node/no-extraneous-import": "error", "node/no-extraneous-require": "error", "node/no-missing-import": "error", "node/no-missing-require": "error", "node/no-new-require": "error", "node/no-path-concat": "error", "node/no-process-exit": "error", "node/no-unpublished-bin": "error", "node/no-unpublished-import": "error", "node/no-unpublished-require": "error", "node/no-unsupported-features/es-builtins": "error", "node/no-unsupported-features/es-syntax": "error", "node/no-unsupported-features/node-builtins": ["error", { "ignores": [ "fs.promises" ] }], "node/process-exit-as-throw": "error", "node/shebang": "error", "node/no-deprecated-api": "error", "node/callback-return": "error", "node/exports-style": "error", "node/file-extension-in-import": "error", "node/global-require": "off", "node/no-mixed-requires": "error", "node/no-process-env": "error", "node/no-restricted-import": "error", "node/no-restricted-require": "error", "node/no-sync": "off", "node/prefer-global/buffer": "error", "node/prefer-global/console": "error", "node/prefer-global/process": "error", "node/prefer-global/text-decoder": "error", "node/prefer-global/text-encoder": "error", "node/prefer-global/url-search-params": "error", "node/prefer-global/url": "error", "node/prefer-promises/dns": "error", "node/prefer-promises/fs": "off", "unicorn/better-regex": "off", "unicorn/catch-error-name": "error", "unicorn/consistent-destructuring": "error", "unicorn/consistent-function-scoping": "off", "unicorn/custom-error-definition": "error", "unicorn/empty-brace-spaces": "error", "unicorn/error-message": "error", "unicorn/escape-case": "error", "unicorn/expiring-todo-comments": "error", "unicorn/explicit-length-check": "error", "unicorn/filename-case": "off", "unicorn/import-index": "error", "unicorn/import-style": "error", "unicorn/new-for-builtins": "error", "unicorn/no-abusive-eslint-disable": "error", "unicorn/no-array-callback-reference": "off", "unicorn/no-array-for-each": "off", "unicorn/no-array-push-push": "error", "unicorn/no-array-reduce": "error", "unicorn/no-console-spaces": "error", "unicorn/no-document-cookie": "error", "unicorn/no-for-loop": "error", "unicorn/no-hex-escape": "error", "unicorn/no-instanceof-array": "error", "unicorn/no-keyword-prefix": "off", "unicorn/no-lonely-if": "error", "unicorn/no-nested-ternary": "error", "unicorn/no-new-array": "off", "unicorn/no-new-buffer": "error", "unicorn/no-null": "off", "unicorn/no-object-as-default-parameter": "error", "unicorn/no-process-exit": "error", "unicorn/no-static-only-class": "error", "unicorn/no-this-assignment": "error", "unicorn/no-unreadable-array-destructuring": "error", "unicorn/no-unsafe-regex": "off", "unicorn/no-unused-properties": "error", "unicorn/no-useless-undefined": "error", "unicorn/no-zero-fractions": "error", "unicorn/number-literal-case": "error", "unicorn/numeric-separators-style": "error", "unicorn/prefer-add-event-listener": "error", "unicorn/prefer-array-find": "error", "unicorn/prefer-array-flat": "error", "unicorn/prefer-array-flat-map": "error", "unicorn/prefer-array-index-of": "error", "unicorn/prefer-array-some": "error", "unicorn/prefer-date-now": "error", "unicorn/prefer-default-parameters": "error", "unicorn/prefer-dom-node-append": "error", "unicorn/prefer-dom-node-dataset": "error", "unicorn/prefer-dom-node-remove": "error", "unicorn/prefer-dom-node-text-content": "error", "unicorn/prefer-includes": "error", "unicorn/prefer-keyboard-event-key": "error", "unicorn/prefer-math-trunc": "error", "unicorn/prefer-modern-dom-apis": "error", "unicorn/prefer-module": "off", "unicorn/prefer-negative-index": "error", "unicorn/prefer-node-protocol": "error", "unicorn/prefer-number-properties": "error", "unicorn/prefer-object-has-own": "error", "unicorn/prefer-optional-catch-binding": "error", "unicorn/prefer-prototype-methods": "error", "unicorn/prefer-query-selector": "error", "unicorn/prefer-reflect-apply": "error", "unicorn/prefer-regexp-test": "error", "unicorn/prefer-set-has": "error", "unicorn/prefer-spread": "error", "unicorn/prefer-string-replace-all": "off", "unicorn/prefer-string-slice": "off", "unicorn/prefer-string-starts-ends-with": "error", "unicorn/prefer-string-trim-start-end": "error", "unicorn/prefer-switch": "off", "unicorn/prefer-ternary": "error", "unicorn/prefer-type-error": "error", "unicorn/prevent-abbreviations": "off", "unicorn/require-array-join-separator": "error", "unicorn/require-number-to-fixed-digits-argument": "error", "unicorn/string-content": "error", "unicorn/throw-new-error": "error" }, "overrides": [ { "files": [ "demo/*.js" ], "env": { "browser": true }, "rules": { "jsdoc/require-jsdoc": "off", "unicorn/prefer-query-selector": "off", "unicorn/prefer-add-event-listener": "off", "no-console": "off", "no-shadow": "off", "no-var": "off" } }, { "files": [ "example/*.js" ], "rules": { "node/no-missing-require": "off", "node/no-extraneous-require": "off", "no-console": "off", "no-invalid-this": "off", "no-shadow": "off", "object-property-newline": "off" } } ] }