const { resolve } = require("node:path"); const project = resolve(process.cwd(), "tsconfig.json"); /* * This is a custom ESLint configuration for use with * Next.js apps. * * This config extends the Vercel Engineering Style Guide. * For more information, see https://github.com/vercel/style-guide * */ module.exports = { extends: [ ...[ "@vercel/style-guide/eslint/node", "@vercel/style-guide/eslint/typescript", "@vercel/style-guide/eslint/browser", "@vercel/style-guide/eslint/react", "@vercel/style-guide/eslint/next", ].map(require.resolve), "turbo", ], parserOptions: { project, }, globals: { React: true, JSX: true, }, settings: { "import/resolver": { typescript: { project, }, node: { extensions: [".mjs", ".js", ".jsx", ".ts", ".tsx"], }, }, }, ignorePatterns: ["node_modules/", "dist/"], // add rules configurations here rules: { "import/no-default-export": "off", "unicorn/filename-case": "off", "react/jsx-sort-props": "off", "import/order": "off", "@typescript-eslint/explicit-function-return-type": "off", "@typescript-eslint/no-unsafe-assignment": "off", "@typescript-eslint/no-unsafe-member-access": "off", "@typescript-eslint/no-unsafe-call": "off", "@typescript-eslint/no-unsafe-argument": "off", "@typescript-eslint/no-explicit-any": "off", "@typescript-eslint/require-await": "off", "react/no-unescaped-entities": "off", "react/display-name": "off", "@next/next/no-img-element": "off", "@typescript-eslint/no-misused-promises": "off" }, };