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.
29 lines (28 loc) • 975 B
JavaScript
import { ensurePackages, interopDefault } from "@antfu/eslint-config";
export async function promise(options) {
await ensurePackages(["eslint-plugin-promise"]);
const pluginPromise = await interopDefault(import("eslint-plugin-promise"));
return [{
name: "xaxa/promise/rules",
plugins: { promise: pluginPromise },
rules: {
"promise/always-return": "off",
"promise/avoid-new": "off",
"promise/catch-or-return": "off",
"promise/no-callback-in-promise": "off",
"promise/no-native": "off",
"promise/no-nesting": "off",
"promise/no-new-statics": "error",
"promise/no-promise-in-callback": "off",
"promise/no-return-in-finally": "error",
"promise/no-return-wrap": ["error", { allowReject: true }],
"promise/param-names": "error",
"promise/prefer-await-to-callbacks": "off",
"promise/prefer-await-to-then": "off",
"promise/valid-params": "error"
}
}, {
name: "xaxa/promise/user-overrides",
rules: { ...options || {} }
}];
}