UNPKG

@sap/eslint-plugin-cds

Version:

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

32 lines (28 loc) 960 B
'use strict' /** * Searches for ESLint config file types (in order or precedence) * and returns corresponding directory (usually project's root dir) * https://eslint.org/docs/user-guide/configuring#configuration-file-formats * @param {string} currentDir start here and search until root dir * @returns {string} dir containing ESLint config file (empty if not exists) */ const fs = require('node:fs') const path = require('node:path') module.exports = (currentDir = '.') => { let configFiles = [ 'eslint.config.js', 'eslint.config.cjs', 'eslint.config.mjs' ] let configDir = path.resolve(currentDir) while (configDir !== path.resolve(configDir, '..')) { for (const configFile of configFiles) { const configPath = path.join(configDir, configFile) if (fs.existsSync(configPath) && fs.statSync(configPath).isFile()) { return configPath } } configDir = path.join(configDir, '..') } return '' }