UNPKG

@sap/eslint-plugin-cds

Version:

ESLint plugin including recommended SAP Cloud Application Programming model and environment rules

49 lines (44 loc) 1.18 kB
'use strict' const path = require('node:path') const { FILES, GLOBALS } = require('../constants') const { parserPath } = require('../api') function _createJsConfig (plugin, configName) { return { name: '@sap/cds/js', plugins: { '@sap/cds': plugin }, files: ['**/*.js'], rules: require(path.join(__dirname, 'js', configName)) } } /** * @param {object} plugin Plugin implementation used for new configuration layout. * @param {string} configName */ function _createConfig (plugin, configName) { const config = require(path.join(__dirname, configName)) return { name: `@sap/cds/${configName}`, languageOptions: { globals: GLOBALS, parser: require(parserPath) }, plugins: { '@sap/cds': plugin }, files: FILES.map(file => file.replace('*.', '**/*.')), rules: config } } module.exports = function (plugin) { return { all: _createConfig(plugin, 'all'), recommended: _createConfig(plugin, 'recommended'), experimental: _createConfig(plugin, 'experimental'), js: { all: _createJsConfig(plugin, 'all'), recommended: _createJsConfig(plugin, 'recommended') } } }