UNPKG

@deftomat/opinionated

Version:

Opinionated tooling for JavaScript & TypeScript projects.

33 lines (32 loc) 1.15 kB
import fs from 'node:fs'; /** * Returns filename of ignore file for ESLint. */ export function findEslintIgnoreFile({ projectRoot, projectSpec }) { const eslintIgnore = `${projectRoot}/.eslintignore`; const opinionatedIgnore = `${projectRoot}/.opinionatedignore`; const gitIgnore = `${projectRoot}/.gitignore`; if (fs.existsSync(eslintIgnore)) return eslintIgnore; if (projectSpec.get().eslintIgnore != null) return; if (fs.existsSync(opinionatedIgnore)) return opinionatedIgnore; if (fs.existsSync(gitIgnore)) return gitIgnore; } /** * Returns filename of ignore file for Prettier. */ export function findPrettierIgnoreFile({ projectRoot }) { const prettierIgnore = `${projectRoot}/.prettierignore`; const opinionatedIgnore = `${projectRoot}/.opinionatedignore`; const gitIgnore = `${projectRoot}/.gitignore`; if (fs.existsSync(prettierIgnore)) return prettierIgnore; if (fs.existsSync(opinionatedIgnore)) return opinionatedIgnore; if (fs.existsSync(gitIgnore)) return gitIgnore; } export const defaultIgnorePattern = '**/node_modules/';