All checks were successful
ci/woodpecker/push/publish_instable Pipeline was successful
76 lines
2.8 KiB
TypeScript
76 lines
2.8 KiB
TypeScript
import { defineConfigWithVueTs, vueTsConfigs } from "@vue/eslint-config-typescript";
|
|
import perfectionist from "eslint-plugin-perfectionist";
|
|
import vue from "eslint-plugin-vue";
|
|
import globals from "globals";
|
|
|
|
export default defineConfigWithVueTs(
|
|
{
|
|
files: ["**/*.{js,mjs,ts,mts,vue}"],
|
|
languageOptions: { ecmaVersion: "latest", globals: { ...globals.browser, ...globals.es2025 } },
|
|
name: "app/files-to-lint",
|
|
},
|
|
{ ignores: [".cache/", "dist/", "node_modules/"], name: "app/files-to-ignore" },
|
|
vueTsConfigs.strictTypeChecked,
|
|
vueTsConfigs.stylisticTypeChecked,
|
|
vue.configs["flat/recommended"],
|
|
{
|
|
name: "app/no-vue-formatting",
|
|
rules: {
|
|
"vue/array-bracket-newline": "off",
|
|
"vue/array-bracket-spacing": "off",
|
|
"vue/array-element-newline": "off",
|
|
"vue/arrow-spacing": "off",
|
|
"vue/attributes-order": ["error", { alphabetical: true }],
|
|
"vue/block-spacing": "off",
|
|
"vue/block-tag-newline": "off",
|
|
"vue/brace-style": "off",
|
|
"vue/comma-dangle": "off",
|
|
"vue/comma-spacing": "off",
|
|
"vue/comma-style": "off",
|
|
"vue/dot-location": "off",
|
|
"vue/first-attribute-linebreak": "off",
|
|
"vue/func-call-spacing": "off",
|
|
"vue/html-closing-bracket-newline": "off",
|
|
"vue/html-closing-bracket-spacing": "off",
|
|
"vue/html-comment-content-newline": "off",
|
|
"vue/html-comment-content-spacing": "off",
|
|
"vue/html-comment-indent": "off",
|
|
"vue/html-indent": "off",
|
|
"vue/html-quotes": "off",
|
|
"vue/html-self-closing": "off",
|
|
"vue/key-spacing": "off",
|
|
"vue/keyword-spacing": "off",
|
|
"vue/max-attributes-per-line": "off",
|
|
"vue/max-len": "off",
|
|
"vue/multiline-html-element-content-newline": "off",
|
|
"vue/multiline-ternary": "off",
|
|
"vue/new-line-between-multi-line-property": "off",
|
|
"vue/no-extra-parens": "off",
|
|
"vue/no-multi-spaces": "off",
|
|
"vue/no-spaces-around-equal-signs-in-attribute": "off",
|
|
"vue/object-curly-newline": "off",
|
|
"vue/object-curly-spacing": "off",
|
|
"vue/object-property-newline": "off",
|
|
"vue/operator-linebreak": "off",
|
|
"vue/padding-line-between-blocks": "off",
|
|
"vue/padding-line-between-tags": "off",
|
|
"vue/padding-lines-in-component-definition": "off",
|
|
"vue/quote-props": "off",
|
|
"vue/script-indent": "off",
|
|
"vue/singleline-html-element-content-newline": "off",
|
|
"vue/space-in-parens": "off",
|
|
"vue/space-infix-ops": "off",
|
|
"vue/space-unary-ops": "off",
|
|
"vue/template-curly-spacing": "off",
|
|
"vue/v-for-delimiter-style": "off",
|
|
},
|
|
},
|
|
perfectionist.configs["recommended-natural"],
|
|
{
|
|
name: "ts/no-annoying-rules",
|
|
rules: {
|
|
"@typescript-eslint/no-misused-spread": "off",
|
|
"perfectionist/sort-modules": "off",
|
|
},
|
|
},
|
|
);
|