Skip to content

Latest commit

 

History

History

eslint-plugin-ckeditor5-rules

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 
 
 
 
 

CKEditor 5 ESLint plugins

npm version Dependency Status

A set of plugins used by the CKEditor 5 team for Eslint

By default this plugin is added to our eslint-config-ckeditor5 preset.

Usage

npm i --save-dev eslint-plugin-ckeditor5-rules

Configure ESLint with a .eslintrc file using the following contents:

{
	// ...
	plugins: [
		// ...
		'ckeditor5-rules' // Add the plugin to the linter.
	],
	rules: {
		'ckeditor5-rules/no-relative-imports': 'error',
		'ckeditor5-rules/license-header': [ 'error', {
			headerLines: [
				'/**',
				' * @license Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.',
				' * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license',
				' */'
			]
		} ]
		// ...
	}
	// ...
}

Rules

no-relative-imports

A rule that inspects for relative imports to other CKEditor 5's packages:

// Incorrect import:
import Position from '../../ckeditor5-engine/src/model/position';

// Will be fixed to:
import Position from '@ckeditor/ckeditor5-engine/src/model/position';

license-header

This rule checks if each file starts with proper @license block comment. It requires configuration:

rules: {
	'ckeditor5-rules/license-header': [ 'error', {
		headerLines: [
			'/**',
			' * @license Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.',
			' * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license',
			' */'
		]
	} ]
}