UNPKG

eslint-config-xaxa

Version:

The ultimate ESLint config - successor to Airbnb Config. Built on Anthony Fu's ESLint config, Airbnb, ESLint Stylistic, Perfectionist, React, TypeScript, Astro, JSDocs, Prettier, Node.js, Unicorns, Promises, and more.

14 lines (13 loc) 735 B
import { typescript } from "@antfu/eslint-config"; import { FlatConfigComposer } from "eslint-flat-config-utils"; import { isPackageExists } from "local-pkg"; import { airbnb } from "./configs/index.js"; export default function airbnbPreset(options = {}, ...userConfigs) { const isTypescript = isPackageExists("typescript"); const { typescript: enableTypeScript = isTypescript,...opts } = { ...options }; const configs = [airbnb(opts), enableTypeScript && typescript(enableTypeScript === true ? {} : enableTypeScript)]; let composer = new FlatConfigComposer(); composer = composer.append(...configs.flat().filter(Boolean), ...userConfigs.flat().filter(Boolean)); return composer; } export { airbnbPreset as airbnb, typescript };