74 строки
1.7 KiB
JavaScript
74 строки
1.7 KiB
JavaScript
|
const js = require('@eslint/js');
|
||
|
const globals = require('globals');
|
||
|
|
||
|
const prettier = require('eslint-plugin-prettier');
|
||
|
const eslintPluginPrettierRecommended = require('eslint-plugin-prettier/recommended');
|
||
|
|
||
|
const jest = require('eslint-plugin-jest');
|
||
|
|
||
|
module.exports = [
|
||
|
js.configs.recommended,
|
||
|
eslintPluginPrettierRecommended,
|
||
|
{
|
||
|
plugins: {
|
||
|
prettier
|
||
|
},
|
||
|
rules: {
|
||
|
'prettier/prettier': ['error'],
|
||
|
'no-var': ['error'],
|
||
|
'no-unused-vars': [
|
||
|
'warn',
|
||
|
{
|
||
|
argsIgnorePattern: '^_',
|
||
|
varsIgnorePattern: '^_'
|
||
|
}
|
||
|
]
|
||
|
},
|
||
|
languageOptions: {
|
||
|
ecmaVersion: 'latest',
|
||
|
sourceType: 'module',
|
||
|
globals: {
|
||
|
...globals.browser,
|
||
|
...globals.webextensions,
|
||
|
...globals.es2021,
|
||
|
...globals.jquery,
|
||
|
...globals.serviceworker
|
||
|
}
|
||
|
}
|
||
|
},
|
||
|
{
|
||
|
files: [
|
||
|
'functional-samples/tutorial.puppeteer/**/*',
|
||
|
'functional-samples/tutorial.terminate-sw/**/*'
|
||
|
],
|
||
|
plugins: { jest },
|
||
|
rules: {
|
||
|
...jest.configs['flat/recommended'].rules
|
||
|
},
|
||
|
languageOptions: {
|
||
|
globals: {
|
||
|
...globals.jest
|
||
|
}
|
||
|
},
|
||
|
settings: {
|
||
|
jest: {
|
||
|
version: '29.7.0'
|
||
|
}
|
||
|
}
|
||
|
},
|
||
|
{
|
||
|
// Ignores must be in a separate block to apply globally:
|
||
|
// https://eslint.org/docs/latest/use/configure/configuration-files#globally-ignoring-files-with-ignores
|
||
|
ignores: [
|
||
|
'eslint.config.js',
|
||
|
'.repo/**/*',
|
||
|
'_archive/**/*',
|
||
|
'**/third-party/**',
|
||
|
'**/node_modules/**/*',
|
||
|
// These are autogenerated files that we shouldn't lint
|
||
|
'functional-samples/cookbook.wasm-helloworld-print/wasm/pkg/**/*',
|
||
|
'functional-samples/cookbook.wasm-helloworld-print-nomodule/wasm/pkg/**/*'
|
||
|
]
|
||
|
}
|
||
|
];
|