Mohammad Asif cf937194cb Removed un-waned things 1. 1 سال پیش
..
conf cf937194cb Removed un-waned things 1. 1 سال پیش
dist cf937194cb Removed un-waned things 1. 1 سال پیش
lib cf937194cb Removed un-waned things 1. 1 سال پیش
node_modules cf937194cb Removed un-waned things 1. 1 سال پیش
LICENSE cf937194cb Removed un-waned things 1. 1 سال پیش
README.md cf937194cb Removed un-waned things 1. 1 سال پیش
package.json cf937194cb Removed un-waned things 1. 1 سال پیش
universal.js cf937194cb Removed un-waned things 1. 1 سال پیش

README.md

ESLintRC Library

This repository contains the legacy ESLintRC configuration file format for ESLint. This package is not intended for use outside of the ESLint ecosystem. It is ESLint-specific and not intended for use in other programs.

Note: This package is frozen except for critical bug fixes as ESLint moves to a new config system.

Installation

You can install the package as follows:

npm install @eslint/eslintrc --save-dev

# or

yarn add @eslint/eslintrc -D

Usage (ESM)

The primary class in this package is FlatCompat, which is a utility to translate ESLintRC-style configs into flat configs. Here's how you use it inside of your eslint.config.js file:

import { FlatCompat } from "@eslint/eslintrc";
import js from "@eslint/js";
import path from "path";
import { fileURLToPath } from "url";

// mimic CommonJS variables -- not needed if using CommonJS
const __filename = fileURLToPath(import.meta.url);
const __dirname = path.dirname(__filename);

const compat = new FlatCompat({
    baseDirectory: __dirname,                  // optional; default: process.cwd()
    resolvePluginsRelativeTo: __dirname,       // optional
    recommendedConfig: js.configs.recommended, // optional
    allConfig: js.configs.all,                 // optional
});

export default [

    // mimic ESLintRC-style extends
    ...compat.extends("standard", "example"),

    // mimic environments
    ...compat.env({
        es2020: true,
        node: true
    }),

    // mimic plugins
    ...compat.plugins("airbnb", "react"),

    // translate an entire config
    ...compat.config({
        plugins: ["airbnb", "react"],
        extends: "standard",
        env: {
            es2020: true,
            node: true
        },
        rules: {
            semi: "error"
        }
    })
];

Usage (CommonJS)

Using FlatCompat in CommonJS files is similar to ESM, but you'll use require() and module.exports instead of import and export. Here's how you use it inside of your eslint.config.js CommonJS file:

const { FlatCompat } = require("@eslint/eslintrc");
const js = require("@eslint/js");

const compat = new FlatCompat({
    baseDirectory: __dirname,                  // optional; default: process.cwd()
    resolvePluginsRelativeTo: __dirname,       // optional
    recommendedConfig: js.configs.recommended, // optional
    allConfig: js.configs.all,                 // optional
});

module.exports = [

    // mimic ESLintRC-style extends
    ...compat.extends("standard", "example"),

    // mimic environments
    ...compat.env({
        es2020: true,
        node: true
    }),

    // mimic plugins
    ...compat.plugins("airbnb", "react"),

    // translate an entire config
    ...compat.config({
        plugins: ["airbnb", "react"],
        extends: "standard",
        env: {
            es2020: true,
            node: true
        },
        rules: {
            semi: "error"
        }
    })
];

License

MIT License