mirror of
				https://github.com/mealie-recipes/mealie.git
				synced 2025-11-03 18:53:17 -05:00 
			
		
		
		
	
		
			
				
	
	
		
			66 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			66 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
module.exports = {
 | 
						|
  root: true,
 | 
						|
  settings: {
 | 
						|
    "import/ignore": ["@vueuse*"],
 | 
						|
  },
 | 
						|
  env: {
 | 
						|
    browser: true,
 | 
						|
    node: true,
 | 
						|
  },
 | 
						|
  parser: "vue-eslint-parser",
 | 
						|
  parserOptions: {
 | 
						|
    parser: "@typescript-eslint/parser",
 | 
						|
    requireConfigFile: false,
 | 
						|
    tsConfigRootDir: __dirname,
 | 
						|
    project: ["./tsconfig.json"],
 | 
						|
    extraFileExtensions: [".vue"],
 | 
						|
  },
 | 
						|
  extends: [
 | 
						|
    "@nuxtjs/eslint-config-typescript",
 | 
						|
    "plugin:nuxt/recommended",
 | 
						|
    "eslint:recommended",
 | 
						|
    "plugin:@typescript-eslint/recommended",
 | 
						|
    "plugin:@typescript-eslint/recommended-requiring-type-checking",
 | 
						|
    // "plugin:prettier/recommended",
 | 
						|
    "prettier",
 | 
						|
  ],
 | 
						|
  // Re-add once we use nuxt bridge
 | 
						|
  // See https://v3.nuxtjs.org/getting-started/bridge#update-nuxtconfig
 | 
						|
  ignorePatterns: ["nuxt.config.js"],
 | 
						|
  plugins: ["prettier"],
 | 
						|
  // add your custom rules here
 | 
						|
  rules: {
 | 
						|
    "no-console": process.env.NODE_ENV === "production" ? "warn" : "off",
 | 
						|
    "no-debugger": process.env.NODE_ENV === "production" ? "warn" : "off",
 | 
						|
    quotes: ["error", "double"],
 | 
						|
    "vue/component-name-in-template-casing": ["error", "PascalCase"],
 | 
						|
    camelcase: 0,
 | 
						|
    "vue/singleline-html-element-content-newline": "off",
 | 
						|
    "vue/multiline-html-element-content-newline": "off",
 | 
						|
    "vue/no-mutating-props": "off",
 | 
						|
    "vue/no-v-text-v-html-on-component": "warn",
 | 
						|
    "vue/no-v-for-template-key-on-child": "off",
 | 
						|
    "vue/valid-v-slot": [
 | 
						|
      "error",
 | 
						|
      {
 | 
						|
        allowModifiers: true,
 | 
						|
      },
 | 
						|
    ],
 | 
						|
    "@typescript-eslint/ban-ts-comment": [
 | 
						|
      "error",
 | 
						|
      {
 | 
						|
        "ts-ignore": "allow-with-description",
 | 
						|
      },
 | 
						|
    ],
 | 
						|
    "no-restricted-imports": ["error", { paths: ["@vue/reactivity", "@vue/runtime-dom", "@vue/composition-api"] }],
 | 
						|
 | 
						|
    // TODO Gradually activate all rules
 | 
						|
    "@typescript-eslint/no-unsafe-assignment": "off",
 | 
						|
    "@typescript-eslint/no-unsafe-member-access": "off",
 | 
						|
    "@typescript-eslint/explicit-module-boundary-types": "off",
 | 
						|
    "@typescript-eslint/no-unsafe-call": "off",
 | 
						|
    "@typescript-eslint/no-floating-promises": "off",
 | 
						|
    "@typescript-eslint/no-explicit-any": "off",
 | 
						|
  },
 | 
						|
};
 |