Files
ConvertX/eslint.config.ts

71 lines
1.8 KiB
TypeScript

import js from "@eslint/js";
import eslintParserTypeScript from "@typescript-eslint/parser";
import eslintPluginBetterTailwindcss from "eslint-plugin-better-tailwindcss";
import globals from "globals";
import tseslint from "typescript-eslint";
export default tseslint.config(
js.configs.recommended,
tseslint.configs.recommended,
{
plugins: {
"better-tailwindcss": eslintPluginBetterTailwindcss,
},
ignores: ["**/node_modules/**", "eslint.config.ts"],
languageOptions: {
parser: eslintParserTypeScript,
parserOptions: {
project: true,
ecmaFeatures: {
jsx: true,
},
},
globals: {
...globals.node,
},
},
files: ["**/*.{tsx,ts}"],
settings: {
"better-tailwindcss": {
entryPoint: "src/main.css",
},
},
rules: {
...(eslintPluginBetterTailwindcss.configs["recommended-warn"] ?? {}).rules,
...(eslintPluginBetterTailwindcss.configs["stylistic-warn"] ?? {}).rules,
// "tailwindcss/classnames-order": "off",
"better-tailwindcss/enforce-consistent-line-wrapping": [
"warn",
{
group: "newLine",
printWidth: 100,
},
],
"better-tailwindcss/no-unregistered-classes": [
"warn",
{
ignore: [
"^group(?:\\/(\\S*))?$",
"^peer(?:\\/(\\S*))?$",
"select_container",
"convert_to_popup",
"convert_to_group",
"target",
"convert_to_target",
"job-details-toggle",
],
},
],
},
},
{
files: ["**/*.{js,cjs,mjs,jsx}"],
extends: [tseslint.configs.disableTypeChecked],
languageOptions: {
globals: {
...globals.browser,
},
},
},
);