加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
eslint.config.js 2.70 KB
一键复制 编辑 原始数据 按行查看 历史
十界 提交于 2024-09-10 16:22 . chore: update dependencies (#3389)
import antfu from '@antfu/eslint-config';
import { baseRules, facadePreset, specPreset, typescriptPreset } from '@univerjs-infra/shared/eslint';
import header from 'eslint-plugin-header';
import barrel from 'eslint-plugin-no-barrel-import';
import penetrating from 'eslint-plugin-no-penetrating-import';
header.rules.header.meta.schema = false;
export default antfu({
stylistic: {
indent: 4,
semi: true,
},
regexp: false,
react: true,
yaml: {
overrides: {
'yaml/indent': ['error', 4, { indicatorValueIndent: 2 }],
},
},
markdown: false,
typescript: true,
formatters: {
css: true,
html: true,
},
rules: baseRules,
}, {
files: ['**/*.ts', '**/*.tsx'],
ignores: [
'packages/engine-render/src/components/docs/**/*.ts',
'**/*.tsx',
'**/*.d.ts',
'**/vite.config.ts',
'playwright.config.ts',
'**/*.spec.ts',
'**/*.spec.tsx',
'**/*.test.ts',
'**/*.test.tsx',
], // do not check test files
rules: {
complexity: ['warn', { max: 20 }],
'max-lines-per-function': ['warn', 80],
},
}, {
files: ['**/*.ts', '**/*.tsx'],
ignores: ['**/*.d.ts', '**/vite.config.ts', 'playwright.config.ts'],
plugins: {
header,
barrel,
},
rules: {
'barrel/no-barrel-import': 2,
'header/header': [
2,
'block',
[
'*',
' * Copyright 2023-present DreamNum Inc.',
' *',
' * Licensed 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.',
' ',
],
2,
],
},
}, {
// Not penetrating for source files
files: ['**/*.ts', '**/*.tsx'],
plugins: {
penetrating,
},
ignores: [
'**/__tests__/**/*',
'**/__testing__/**/*',
'examples/**/*',
],
rules: {
'penetrating/no-penetrating-import': 2,
},
},
typescriptPreset(),
facadePreset(),
specPreset()
);
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化