mirror of
https://github.com/apache/superset.git
synced 2026-04-07 18:35:15 +00:00
76 lines
2.3 KiB
JavaScript
76 lines
2.3 KiB
JavaScript
/* eslint-env node */
|
|
/**
|
|
* Licensed to the Apache Software Foundation (ASF) under one
|
|
* or more contributor license agreements. See the NOTICE file
|
|
* distributed with this work for additional information
|
|
* regarding copyright ownership. The ASF licenses this file
|
|
* to you under the Apache License, Version 2.0 (the
|
|
* "License"); you may not use this file except in compliance
|
|
* with the License. You may obtain a copy of the License at
|
|
*
|
|
* http://www.apache.org/licenses/LICENSE-2.0
|
|
*
|
|
* Unless required by applicable law or agreed to in writing,
|
|
* software distributed under the License is distributed on an
|
|
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
* KIND, either express or implied. See the License for the
|
|
* specific language governing permissions and limitations
|
|
* under the License.
|
|
*/
|
|
const typescriptEslintParser = require('@typescript-eslint/parser');
|
|
const typescriptEslintPlugin = require('@typescript-eslint/eslint-plugin');
|
|
const eslintConfigPrettier = require('eslint-config-prettier');
|
|
const prettierEslintPlugin = require('eslint-plugin-prettier');
|
|
const js = require('@eslint/js');
|
|
const ts = require('typescript-eslint');
|
|
const react = require('eslint-plugin-react');
|
|
const globals = require('globals');
|
|
const { defineConfig, globalIgnores } = require('eslint/config');
|
|
|
|
module.exports = defineConfig([
|
|
{
|
|
files: ['**/*.{js,jsx,ts,tsx}'],
|
|
},
|
|
globalIgnores(['build/**/*', '.docusaurus/**/*', 'node_modules/**/*']),
|
|
js.configs.recommended,
|
|
...ts.configs.recommended,
|
|
eslintConfigPrettier,
|
|
{
|
|
files: ['eslint.config.js'],
|
|
rules: {
|
|
'@typescript-eslint/no-require-imports': 'off',
|
|
},
|
|
},
|
|
{
|
|
languageOptions: {
|
|
parser: typescriptEslintParser,
|
|
parserOptions: {
|
|
ecmaFeatures: {
|
|
jsx: true,
|
|
},
|
|
ecmaVersion: 2020,
|
|
sourceType: 'module',
|
|
},
|
|
globals: {
|
|
...globals.browser,
|
|
...globals.node,
|
|
},
|
|
},
|
|
plugins: {
|
|
typescript: typescriptEslintPlugin,
|
|
react,
|
|
prettier: prettierEslintPlugin,
|
|
},
|
|
rules: {
|
|
'react/react-in-jsx-scope': 'off',
|
|
'react/prop-types': 'off',
|
|
'@typescript-eslint/explicit-module-boundary-types': 'off',
|
|
},
|
|
settings: {
|
|
react: {
|
|
version: 'detect',
|
|
},
|
|
},
|
|
},
|
|
]);
|