extends: - plugin:@gitlab/default - plugin:@gitlab/i18n - plugin:no-jquery/slim - plugin:no-jquery/deprecated-3.4 - ./tooling/eslint-config/conditionally_ignore_ee.js globals: __webpack_public_path__: true gl: false gon: false localStorage: false IS_EE: false plugins: - no-jquery settings: import/resolver: webpack: config: './config/webpack.config.js' rules: import/no-commonjs: error import/no-default-export: off no-underscore-dangle: - error - allow: - __ - _links import/no-unresolved: - error # Disabled for now, to make the airbnb-base 12.1.0 -> 13.1.0 update smoother no-else-return: - error - allowElseIf: true lines-between-class-members: off # Disabled for now, to make the plugin-vue 4.5 -> 5.0 update smoother vue/no-confusing-v-for-v-if: error vue/no-use-v-if-with-v-for: off vue/no-v-html: error vue/use-v-on-exact: off # all offenses of no-jquery/no-animate-toggle are false positives ( $toast.show() ) no-jquery/no-animate-toggle: off no-jquery/no-event-shorthand: off no-jquery/no-serialize: error promise/always-return: off promise/no-callback-in-promise: off "@gitlab/no-global-event-off": error # BEGIN eslint-plugin-vue@7 overrides # TODO: Remove these rules as part of # https://gitlab.com/groups/gitlab-org/-/epics/5142. These are setting # various vue lint rules as they were in eslint-plugin-vue@6, or disabling # new ones, to ease migration to v7, so violations of each can be fixed # separately. vue/no-mutating-props: off vue/one-component-per-file: off vue/no-lone-template: off vue/component-definition-name-casing: off # END eslint-plugin-vue@7 overrides overrides: - files: - '**/spec/**/*' rules: "@gitlab/require-i18n-strings": off