2024-10-19 11:12:32 +00:00
/ *
* Copyright © 2024 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 ) .
* /
module . exports = {
root : true ,
2025-01-02 10:44:30 +00:00
plugins : [ "@typescript-eslint/eslint-plugin" , "import" , "header" ] ,
2024-10-19 11:12:32 +00:00
extends : [ "next/core-web-vitals" ] ,
rules : {
"@typescript-eslint/no-unused-vars" : [
"error" ,
{
argsIgnorePattern : "^_" ,
varsIgnorePattern : "^_" ,
caughtErrorsIgnorePattern : "^_" ,
} ,
] ,
"import/newline-after-import" : "error" ,
"import/order" : [
"error" ,
{
groups : [
"builtin" , // Built-in imports (come from NodeJS native) go first
"external" , // <- External imports
"unknown" , // <- unknown
"index" , // <- index imports
"internal" , // <- Absolute imports
"parent" , // <- Relative imports, the sibling and parent types they can be mingled together
"sibling" ,
] ,
"newlines-between" : "always" ,
alphabetize : {
/* sort in ascending order. Options: ["ignore", "asc", "desc"] */
order : "asc" ,
/* ignore case. Options: [true, false] */
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" ,
2025-01-02 10:44:30 +00:00
"header/header" : [
2 ,
"block" ,
2024-10-19 11:12:32 +00:00
[
2025-01-02 10:44:30 +00:00
"" ,
{
pattern :
"^ \\* Copyright © 20\\d{2} Hexastack. All rights reserved.$" ,
template : " * Copyright © 2025 Hexastack. All rights reserved." ,
} ,
2024-10-19 11:12:32 +00:00
" *" ,
" * 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).' ,
2025-01-02 10:44:30 +00:00
" " ,
2024-10-19 11:12:32 +00:00
] ,
2025-01-02 10:44:30 +00:00
2 ,
2024-10-19 11:12:32 +00:00
] ,
} ,
settings : {
react : {
version : "detect" ,
} ,
} ,
} ;