create-broadcast-app
Version:
Create a NextGen TV broadcast app with one command
190 lines (189 loc) • 3.77 kB
JSON
{
"env": {
"browser": true,
"es2021": true
},
"extends": [
"react-app",
"airbnb",
"airbnb-typescript",
"plugin:prettier/recommended",
"prettier"
],
"parser": "@typescript-eslint/parser",
"parserOptions": {
"project": "./tsconfig.json"
},
"plugins": [
"@typescript-eslint",
"simple-import-sort",
"typescript-sort-keys",
"prettier"
],
"rules": {
"jsx-a11y/media-has-caption":"off",
"react/jsx-filename-extension": "off",
"typescript-sort-keys/interface": [
"error",
"asc",
{
"caseSensitive": true,
"natural": false,
"requiredFirst": true
}
],
"simple-import-sort/imports": [
"error",
{
"groups": [
[
"^react",
"^@?\\w",
"^(components|modules|utils)(/.*|$)",
"^\\u0000",
"^\\.\\.(?!/?$)",
"^\\.\\./?$",
"^\\./(?=.*/)(?!/?$)",
"^\\.(?!/?$)",
"^\\./?$",
"^.+\\.s?css$"
]
]
}
],
"no-param-reassign": [
"error",
{
"props": true,
"ignorePropertyModificationsFor": [
"state"
]
}
],
"object-curly-spacing": [
"warn",
"always"
],
"no-use-before-define": [
"error",
{
"functions": false,
"classes": true,
"variables": true
}
],
"max-len": [
"warn",
{
"code": 100,
"ignoreStrings": true,
"ignoreTemplateLiterals": true,
"ignoreComments": true
}
],
"no-plusplus": [
"error",
{
"allowForLoopAfterthoughts": true
}
],
"padding-line-between-statements": [
"error",
{
"blankLine": "always",
"prev": [
"const",
"let",
"var"
],
"next": "*"
},
{
"blankLine": "never",
"prev": [
"const",
"let",
"var"
],
"next": [
"const",
"let",
"var"
]
},
{
"blankLine": "always",
"prev": "*",
"next": [
"multiline-block-like",
"multiline-const",
"multiline-expression",
"multiline-let",
"multiline-var",
"return"
]
},
{
"blankLine": "always",
"prev": [
"multiline-block-like",
"multiline-const",
"multiline-expression",
"multiline-let",
"multiline-var",
"case",
"default"
],
"next": "*"
}
],
"no-multiple-empty-lines": [
"error",
{
"max": 1,
"maxEOF": 0,
"maxBOF": 0
}
],
"arrow-body-style": [
"error",
"as-needed"
],
"import/prefer-default-export": "off",
"@typescript-eslint/no-unused-vars": [
"warn",
{
"vars": "all",
"args": "all"
}
],
"@typescript-eslint/no-explicit-any": [
"error",
{
"ignoreRestArgs": true
}
],
"@typescript-eslint/no-use-before-define": [
"error",
{
"functions": false,
"classes": true,
"variables": true,
"typedefs": true
}
],
"prettier/prettier": [
"error",
{
"endOfLine": "auto"
}
],
"react/function-component-definition": "off",
"react/react-in-jsx-scope": "off",
"react/jsx-key": "error",
"react-hooks/exhaustive-deps": "error",
"react/jsx-props-no-spreading": "off",
"react/require-default-props": "off",
"react/destructuring-assignment": "off"
}
}