{"id":19756,"library":"eslint-plugin-fiori-custom","title":"eslint-plugin-fiori-custom","description":"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.","status":"active","version":"2.6.7","language":"javascript","source_language":"en","source_url":null,"tags":["javascript","eslint","eslintplugin","eslint-plugin","ui5","openui5","sapui5"],"install":[{"cmd":"npm install eslint-plugin-fiori-custom","lang":"bash","label":"npm"},{"cmd":"yarn add eslint-plugin-fiori-custom","lang":"bash","label":"yarn"},{"cmd":"pnpm add eslint-plugin-fiori-custom","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"peer dependency, required >=7.5","package":"eslint","optional":false},{"reason":"recommended for parsing modern JavaScript","package":"babel-eslint","optional":true}],"imports":[{"note":"The plugin is configured via ESLint config, not imported directly in code. Use eslint --config with provided configurations.","wrong":"npm install eslint-plugin-fiori-custom --save-dev","symbol":"plugin","correct":"// In .eslintrc: { \"plugins\": [\"fiori-custom\"] }"},{"note":"Must include 'plugin:' prefix when using ESLint config files (since ESLint v8)","wrong":"extends: [\"fiori-custom/fioriToolsDefault\"]","symbol":"fioriToolsDefault","correct":"// In .eslintrc: { \"extends\": [\"plugin:fiori-custom/fioriToolsDefault\"] }"},{"note":"Test code configuration is an ESLint extends string, not a module path","wrong":"require('eslint-plugin-fiori-custom/testcode.eslintrc')","symbol":"fioriToolsTestcode","correct":"// In .eslintrc: { \"extends\": [\"plugin:fiori-custom/fioriToolsTestcode\"] }"}],"quickstart":{"code":"{\n  \"plugins\": [\"fiori-custom\"],\n  \"extends\": [\"eslint:recommended\", \"plugin:fiori-custom/fioriToolsDefault\"],\n  \"rules\": {\n    \"fiori-custom/line-endings\": \"warn\"\n  }\n}","lang":"javascript","description":"Minimal .eslintrc configuration to enable the plugin and extend its default Fiori ruleset."},"warnings":[{"fix":"npm uninstall babel-eslint && npm install --save-dev @babel/eslint-parser, then update parser option in .eslintrc to '@babel/eslint-parser'","message":"babel-eslint is deprecated; use @babel/eslint-parser instead","severity":"deprecated","affected_versions":">=2.0.0"},{"fix":"Upgrade ESLint to version 7.5 or higher: npm install eslint@8.32.0 --save-dev","message":"Requires ESLint >=7.5; older versions will fail to load plugin configurations","severity":"breaking","affected_versions":"<7.5"},{"fix":"Use the provided .eslintrc files (configure.eslintrc, testcode.eslintrc) or extend from 'plugin:fiori-custom/fioriToolsDefault'","message":"The plugin's rules rely on a custom rules directory; if not using provided configs, you must set --rulesdir or specify rules individually","severity":"gotcha","affected_versions":">=2.0.0"},{"fix":"Include --no-eslintrc in CLI commands when using -c with provided configs","message":"ESLint's `--no-eslintrc` flag must be used when specifying a custom config file via -c; otherwise your local .eslintrc may override settings","severity":"gotcha","affected_versions":">=0.0.0"}],"env_vars":null,"last_verified":"2026-04-25T00:00:00.000Z","next_check":"2026-07-24T00:00:00.000Z","problems":[{"fix":"Ensure eslint-plugin-fiori-custom is installed and ESLint version is >=7.5.","cause":"ESLint version incompatible or plugin not installed","error":"Error: Failed to load plugin 'fiori-custom': Cannot read property 'rules' of undefined"},{"fix":"Install @babel/eslint-parser: npm install --save-dev @babel/eslint-parser","cause":"Missing parser dependency when using modern JavaScript features","error":"Error: Cannot find module '@babel/eslint-parser'"}],"ecosystem":"npm","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}