eslint-plugin-fiori-custom
raw JSON → 2.6.7 verified Sat Apr 25 auth: no javascript
ESLint plugin providing custom linting rules and configurations for SAP Fiori, OpenUI5, and SAPUI5 projects. Version 2.6.7 is current stable, released semi-annually. It extends ESLint with Fiori-specific rules for productive and test code, offering pre-built .eslintrc configurations. Differentiates from generic ESLint by targeting Fiori development patterns and enforcing SAP best practices.
Common errors
error Error: Failed to load plugin 'fiori-custom': Cannot read property 'rules' of undefined ↓
cause ESLint version incompatible or plugin not installed
fix
Ensure eslint-plugin-fiori-custom is installed and ESLint version is >=7.5.
error Error: Cannot find module '@babel/eslint-parser' ↓
cause Missing parser dependency when using modern JavaScript features
fix
Install @babel/eslint-parser: npm install --save-dev @babel/eslint-parser
Warnings
deprecated babel-eslint is deprecated; use @babel/eslint-parser instead ↓
fix npm uninstall babel-eslint && npm install --save-dev @babel/eslint-parser, then update parser option in .eslintrc to '@babel/eslint-parser'
breaking Requires ESLint >=7.5; older versions will fail to load plugin configurations ↓
fix Upgrade ESLint to version 7.5 or higher: npm install eslint@8.32.0 --save-dev
gotcha The plugin's rules rely on a custom rules directory; if not using provided configs, you must set --rulesdir or specify rules individually ↓
fix Use the provided .eslintrc files (configure.eslintrc, testcode.eslintrc) or extend from 'plugin:fiori-custom/fioriToolsDefault'
gotcha ESLint's `--no-eslintrc` flag must be used when specifying a custom config file via -c; otherwise your local .eslintrc may override settings ↓
fix Include --no-eslintrc in CLI commands when using -c with provided configs
Install
npm install eslint-plugin-fiori-custom yarn add eslint-plugin-fiori-custom pnpm add eslint-plugin-fiori-custom Imports
- plugin wrong
npm install eslint-plugin-fiori-custom --save-devcorrect// In .eslintrc: { "plugins": ["fiori-custom"] } - fioriToolsDefault wrong
extends: ["fiori-custom/fioriToolsDefault"]correct// In .eslintrc: { "extends": ["plugin:fiori-custom/fioriToolsDefault"] } - fioriToolsTestcode wrong
require('eslint-plugin-fiori-custom/testcode.eslintrc')correct// In .eslintrc: { "extends": ["plugin:fiori-custom/fioriToolsTestcode"] }
Quickstart
{
"plugins": ["fiori-custom"],
"extends": ["eslint:recommended", "plugin:fiori-custom/fioriToolsDefault"],
"rules": {
"fiori-custom/line-endings": "warn"
}
}