hexabot/widget/.eslintrc.json
2025-01-02 11:44:55 +01:00

76 lines
2.2 KiB
JSON

{
"root": true,
"plugins": ["@typescript-eslint", "import", "header", "react"],
"extends": [
"eslint:recommended",
"plugin:@typescript-eslint/recommended",
"plugin:react/recommended",
"plugin:react-hooks/recommended"
],
"rules": {
"react/jsx-no-target-blank": ["off"],
"react/react-in-jsx-scope": "off",
"@typescript-eslint/no-unused-vars": [
"error",
{
"argsIgnorePattern": "^_",
"varsIgnorePattern": "^_",
"caughtErrorsIgnorePattern": "^_"
}
],
"import/newline-after-import": "error",
"import/order": [
"error",
{
"groups": [
"builtin",
"external",
"unknown",
"index",
"internal",
"parent",
"sibling"
],
"newlines-between": "always",
"alphabetize": {
"order": "asc",
"caseInsensitive": true
}
}
],
"newline-after-var": "error",
"newline-before-return": "error",
"no-console": "error",
"no-duplicate-imports": "error",
"object-shorthand": "error",
"padding-line-between-statements": [
"error",
{ "blankLine": "never", "prev": ["const"], "next": "const" }
],
"react/jsx-curly-brace-presence": ["warn"],
"react/self-closing-comp": ["error"],
"header/header": [
2,
"block",
[
"",
{
"pattern": "^ \\* Copyright © 20\\d{2} Hexastack. All rights reserved.$",
"template": " * Copyright © 2025 Hexastack. All rights reserved."
},
" *",
" * Licensed under the GNU Affero General Public License v3.0 (AGPLv3) with the following additional terms:",
" * 1. The name \"Hexabot\" is a trademark of Hexastack. You may not use this name in derivative works without express written permission.",
" * 2. All derivative works must include clear attribution to the original creator and software, Hexastack and Hexabot, in a prominent location (e.g., in the software's \"About\" section, documentation, and README file).",
" "
],
2
]
},
"settings": {
"react": {
"version": "detect"
}
}
}