/** @type {import("eslint").Linter.Config} */
module.exports = {
root: true,
extends: ["plugin:playwright/playwright-test", "next", "plugin:prettier/recommended"],
parserOptions: {
tsconfigRootDir: __dirname,
project: ["./tsconfig.json"],
project: ["./apps/*/tsconfig.json", "./packages/*/tsconfig.json"],
},
settings: {
next: {
rootDir: ["apps/*/", "packages/*/"],
rules: {
"@next/next/no-img-element": "off",
"@next/next/no-html-link-for-pages": "off",
"jsx-a11y/role-supports-aria-props": "off", // @see https://github.com/vercel/next.js/issues/27989#issuecomment-897638654
"react/jsx-curly-brace-presence": ["error", { props: "never", children: "never" }],
overrides: [
{
files: ["*.ts", "*.tsx"],
extends: ["plugin:@typescript-eslint/recommended", "plugin:@calcom/eslint/recommended"],
plugins: ["@typescript-eslint", "@calcom/eslint"],
parser: "@typescript-eslint/parser",
files: ["playwright/**/*.{tsx,ts}"],
"no-undef": "off",
],
files: ["playwright/**/*.{js,jsx}"],
};