mirror of
				https://github.com/zadam/trilium.git
				synced 2025-10-31 11:39:01 +01:00 
			
		
		
		
	 57cdd9ee93
			
		
	
	
		57cdd9ee93
		
			
		
	
	
	
	
		
			
			See: * https://github.com/ckeditor/ckeditor5-package-generator/pull/229 * https://github.com/ckeditor/ckeditor5-linters-config/pull/60
		
			
				
	
	
		
			84 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			84 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| import globals from 'globals';
 | |
| import { defineConfig } from 'eslint/config';
 | |
| import eslintConfigCKEditor5 from 'eslint-config-ckeditor5';
 | |
| import eslintPluginCKEditor5Rules from 'eslint-plugin-ckeditor5-rules';
 | |
| 
 | |
| export default defineConfig( [
 | |
| 	eslintConfigCKEditor5,
 | |
| 	{
 | |
| 		name: 'Ignored files config',
 | |
| 		ignores: [
 | |
| 			// Ignore compiled JavaScript files, as they are generated automatically.
 | |
| 			'src/**/*.js',
 | |
| 			// Also, do not check typing declarations, too.
 | |
| 			'src/**/*.d.ts',
 | |
| 			// Ignore the entire `dist/` (the NIM build).
 | |
| 			'dist/**'
 | |
| 		]
 | |
| 	},
 | |
| 	{
 | |
| 		name: 'Base config',
 | |
| 		languageOptions: {
 | |
| 			ecmaVersion: 'latest',
 | |
| 			sourceType: 'module'
 | |
| 		},
 | |
| 		linterOptions: {
 | |
| 			reportUnusedInlineConfigs: 'error',
 | |
| 			reportUnusedDisableDirectives: 'error'
 | |
| 		},
 | |
| 		plugins: {
 | |
| 			'ckeditor5-rules': eslintPluginCKEditor5Rules
 | |
| 		},
 | |
| 		rules: {
 | |
| 			//  This rule disallows importing from any path other than the package main entrypoint.
 | |
| 			'ckeditor5-rules/allow-imports-only-from-main-package-entry-point': 'error',
 | |
| 			// As required by the ECMAScript (ESM) standard, all imports must include a file extension.
 | |
| 			// If the import does not include it, this rule will try to automatically detect the correct file extension.
 | |
| 			'ckeditor5-rules/require-file-extensions-in-imports': [ 'error', {
 | |
| 				extensions: [ '.ts', '.js', '.json' ]
 | |
| 			} ],
 | |
| 			// This rule ensures that all imports from `@ckeditor/*` packages are done through the main package entry points.
 | |
| 			// This is required for the editor types to work properly and to ease migration to the installation methods
 | |
| 			// introduced in CKEditor 5 version 42.0.0.
 | |
| 			'ckeditor5-rules/no-legacy-imports': 'error'
 | |
| 		}
 | |
| 	},
 | |
| 	{
 | |
| 		name: 'NodeJS environment config',
 | |
| 		files: [
 | |
| 			'./scripts/**/*.{js,mjs,cjs}'
 | |
| 		],
 | |
| 		languageOptions: {
 | |
| 			globals: {
 | |
| 				...globals.node
 | |
| 			}
 | |
| 		}
 | |
| 	},
 | |
| 	{
 | |
| 		name: 'Browser environment config',
 | |
| 		files: [
 | |
| 			'./sample/**/*.{ts,mts,cts}',
 | |
| 			'./src/**/*.{ts,mts,cts}',
 | |
| 			'./tests/**/*.{ts,mts,cts}',
 | |
| 			'./typings/**/*.d.ts'
 | |
| 		],
 | |
| 		languageOptions: {
 | |
| 			globals: {
 | |
| 				...globals.browser
 | |
| 			}
 | |
| 		}
 | |
| 	},
 | |
| 	{
 | |
| 		name: 'Sample and tests config',
 | |
| 		files: [
 | |
| 			'sample/**/*.{ts,mts,cts}',
 | |
| 			'tests/**/*.{ts,mts,cts}'
 | |
| 		],
 | |
| 		rules: {
 | |
| 			// To write complex tests, you may need to import files that are not exported in DLL files by default.
 | |
| 			// Hence, imports CKEditor 5 packages in test files are not checked.
 | |
| 			'ckeditor5-rules/ckeditor-imports': 'off'
 | |
| 		}
 | |
| 	}
 | |
| ] );
 |