# Files चुनना, Globals और Overrides — ESLint और Prettier: Code Quality और Formatting

Source: https://www.skillbyai.com/hi/eslint-prettier/eslint-prettier-08

> Flat config में files key से files चुनें, globals सेट करें और tests पर अलग rules लगाएँ।

## Environments और globals

Flat config में `languageOptions.globals`, `env` की जगह लेता है और `files` pattern वाले अतिरिक्त config objects, `overrides` की जगह लेते हैं। जिन files से मेल खाएँ उनके लिए बाद वाले objects जीतते हैं।

## Overrides का उपयोग करना

Source files के लिए stricter rules लागू करें लेकिन tests के लिए looser rules लागू करें।

```json
import globals from 'globals';

export default [
  { languageOptions: { globals: globals.browser }, rules: { 'no-console': 'error' } },
  {
    files: ['**/*.test.js'],
    languageOptions: { globals: globals.jest },
    rules: { 'no-console': 'off' },
  },
  { ignores: ['dist/', 'coverage/'] },
];
```

Output:

```
Overrides configured: stricter prod, lenient tests
```

## Selective strictness

Test files और scripts को अक्सर ढीले rules चाहिए। base config दोहराने के बजाय `files` pattern वाला config object जोड़ें, और build output के लिए top-level `ignores` object उपयोग करें।

त्वरित जाँच

**Quiz:** Flat config में test files पर अलग rules कैसे लगाएँ?

- [x] files pattern वाला config object जोड़ें
- [ ] env key उपयोग करें
- [ ] Files का नाम बदलें
- [ ] केवल .eslintignore उपयोग करें

*Answer:* files pattern वाला config object जोड़ें. बाद के मेल खाते objects पहले वालों को override करते हैं।
