| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113 |
- /**
- * @type {import('eslint').Linter.Config}
- */
- module.exports = {
- extends: ['next/core-web-vitals', 'weseek/react'],
- plugins: [],
- ignorePatterns: [
- 'dist/**',
- '**/dist/**',
- 'transpiled/**',
- 'public/**',
- 'src/linter-checker/**',
- 'tmp/**',
- 'next-env.d.ts',
- 'next.config.js',
- 'playwright.config.ts',
- 'test/integration/global-setup.js',
- 'test/integration/global-teardown.js',
- 'test/integration/setup-crowi.ts',
- 'test/integration/crowi/**',
- 'test/integration/middlewares/**',
- 'test/integration/migrations/**',
- 'test/integration/models/**',
- 'test/integration/service/**',
- 'test/integration/setup.js',
- 'playwright/**',
- 'test-with-vite/**',
- 'public/**',
- 'bin/**',
- 'config/**',
- 'src/styles/**',
- 'src/linter-checker/**',
- 'src/migrations/**',
- 'src/models/**',
- 'src/features/callout/**',
- 'src/features/collaborative-editor/**',
- 'src/features/comment/**',
- 'src/features/templates/**',
- 'src/features/mermaid/**',
- 'src/features/search/**',
- 'src/features/plantuml/**',
- 'src/features/external-user-group/**',
- 'src/features/page-bulk-export/**',
- 'src/features/growi-plugin/**',
- 'src/features/opentelemetry/**',
- 'src/features/openai/**',
- 'src/features/rate-limiter/**',
- 'src/stores-universal/**',
- 'src/interfaces/**',
- 'src/utils/**',
- 'src/components/**',
- 'src/services/**',
- 'src/states/**',
- 'src/stores/**',
- 'src/pages/**',
- 'src/server/crowi/**',
- 'src/server/events/**',
- 'src/server/interfaces/**',
- 'src/server/models/**',
- 'src/server/util/**',
- 'src/server/app.ts',
- 'src/server/repl.ts',
- 'src/server/middlewares/**',
- 'src/server/routes/*.js',
- 'src/server/routes/*.ts',
- 'src/server/routes/attachment/**',
- 'src/server/routes/apiv3/interfaces/**',
- 'src/server/routes/apiv3/pages/**',
- 'src/server/routes/apiv3/user/**',
- 'src/server/routes/apiv3/personal-setting/**',
- 'src/server/routes/apiv3/security-settings/**',
- 'src/server/routes/apiv3/app-settings/**',
- 'src/server/routes/apiv3/page/**',
- 'src/server/routes/apiv3/*.ts',
- ],
- settings: {
- // resolve path aliases by eslint-import-resolver-typescript
- 'import/resolver': {
- typescript: {},
- },
- },
- rules: {
- 'space-before-function-paren': 'off',
- '@typescript-eslint/no-var-requires': 'off',
- // set 'warn' temporarily -- 2021.08.02 Yuki Takei
- '@typescript-eslint/no-use-before-define': ['warn'],
- '@typescript-eslint/no-this-alias': ['warn'],
- },
- overrides: [
- {
- // enable the rule specifically for JavaScript files
- files: ['*.js', '*.mjs', '*.jsx'],
- rules: {
- // set 'warn' temporarily -- 2023.08.14 Yuki Takei
- 'react/prop-types': 'warn',
- // set 'warn' temporarily -- 2023.08.14 Yuki Takei
- 'no-unused-vars': ['warn'],
- },
- },
- {
- // enable the rule specifically for TypeScript files
- files: ['*.ts', '*.mts', '*.tsx'],
- rules: {
- 'no-unused-vars': 'off',
- // set 'warn' temporarily -- 2023.08.14 Yuki Takei
- 'react/prop-types': 'warn',
- // set 'warn' temporarily -- 2022.07.25 Yuki Takei
- '@typescript-eslint/explicit-module-boundary-types': ['warn'],
- },
- },
- ],
- };
|