Files
base-configs/packages/config-checker/lib/config-checker.js
Ismo Vuorinen 6d6f4582dd feat!: ESLint 9 Fixes (#307)
* chore: update postinstall scripts
* chore(lint): eslint automated fixes
* feat!: drop standard, sonarjs to work with eslint9

- This config allows arrow functions.

BREAKING CHANGES:

- Switches to eslint-config-eslint from eslint-config-standard.
- Also drops eslint-plugins-sonarjs because it doesn't work well
  with eslint9, and wants eslint8 and related plugins.
- Switches from eslint-plugin-prettier to eslint-config-prettier.
2024-11-25 03:35:13 +02:00

33 lines
1.1 KiB
JavaScript

/* eslint no-console: "off", n/no-process-exit: "off" -- CLI app that gives users feedback */
const fs = require('node:fs')
const path = require('node:path')
// noinspection NpmUsedModulesInstalled
const process = require('node:process')
const configurationPaths = require('./configuration-paths')
/**
* Checks for the existence of a configuration file.
* @param {string} moduleName The name of the module to check for.
* @param {string} pathPrefix The prefix to add to the path.
* @returns {string[]} - The paths to the configuration files.
*/
const configChecker = (moduleName, pathPrefix = '') => {
let searchPath = process.env.INIT_CWD
if (pathPrefix.length > 0) {
searchPath = pathPrefix
}
const allFiles = configurationPaths(moduleName)
if (process.env.DEBUG) {
const filesWithPath = allFiles.map(file => path.join(searchPath, file))
console.log(filesWithPath)
}
// Look for config files in defined search path, and return found.
return allFiles.filter(file => fs.existsSync(path.join(searchPath, file)))
}
module.exports = configChecker