mirror of
https://github.com/ivuorinen/base-configs.git
synced 2026-01-26 03:03:59 +00:00
* 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.
33 lines
1.1 KiB
JavaScript
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
|