| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 |
- import js from '@eslint/js';
- import vue from 'eslint-plugin-vue';
- import vueParser from 'vue-eslint-parser';
- import globals from 'globals';
- export default [
- { ignores: ['node_modules/**', '../web/dist/**'] },
- js.configs.recommended,
- ...vue.configs['flat/recommended'],
- {
- files: ['**/*.{js,vue}'],
- languageOptions: {
- ecmaVersion: 2022,
- sourceType: 'module',
- parser: vueParser,
- parserOptions: {
- ecmaFeatures: { jsx: false },
- },
- globals: {
- ...globals.browser,
- ...globals.node,
- // Legacy script tags inject a couple of helpers on window before
- // the SPA boots; declared here so no-undef stops flagging them.
- getRandomRealityTarget: 'readonly',
- },
- },
- rules: {
- 'no-unused-vars': ['warn', {
- argsIgnorePattern: '^_',
- varsIgnorePattern: '^_',
- caughtErrorsIgnorePattern: '^_',
- }],
- 'no-empty': ['error', { allowEmptyCatch: true }],
- 'no-case-declarations': 'off',
- // Stylistic rules from vue/recommended that don't match the
- // existing codebase formatting. Disable rather than churn the
- // whole tree to satisfy them.
- 'vue/multi-word-component-names': 'off',
- 'vue/no-v-html': 'off',
- 'vue/html-self-closing': 'off',
- 'vue/max-attributes-per-line': 'off',
- 'vue/singleline-html-element-content-newline': 'off',
- 'vue/multiline-html-element-content-newline': 'off',
- 'vue/html-indent': 'off',
- 'vue/html-closing-bracket-newline': 'off',
- 'vue/attributes-order': 'off',
- 'vue/first-attribute-linebreak': 'off',
- 'vue/one-component-per-file': 'off',
- 'vue/order-in-components': 'off',
- 'vue/attribute-hyphenation': 'off',
- 'vue/v-on-event-hyphenation': 'off',
- // Pervasive in form components ported from the Vue 2 codebase
- // (parent passes a reactive object; child mutates it in place).
- // Properly fixing this means rewiring those components to emit
- // updates — a meaningful architectural change, separate task.
- 'vue/no-mutating-props': 'off',
- },
- },
- ];
|