2026-05-09 19:36:02 +03:00
|
|
|
|
// ESLint flat-config (Sprint 2 verify O-stack-07): подтверждено как flat-config
|
|
|
|
|
|
// синтаксис (export default [...]). Совместимо с ESLint 10.x. Legacy .eslintrc.json
|
|
|
|
|
|
// в репозитории не используется (отсутствует физически).
|
2026-05-08 16:07:14 +03:00
|
|
|
|
import js from '@eslint/js';
|
|
|
|
|
|
import vue from 'eslint-plugin-vue';
|
|
|
|
|
|
import vueTsConfig from '@vue/eslint-config-typescript';
|
|
|
|
|
|
import prettier from 'eslint-config-prettier';
|
|
|
|
|
|
|
|
|
|
|
|
// ESLint flat config (фаза 2, Tooling §3.3 #22).
|
|
|
|
|
|
// Связка: ESLint + plugin-vue + @vue/eslint-config-typescript + config-prettier.
|
|
|
|
|
|
// Prettier — отдельный форматтер, ESLint его не дублирует (eslint-config-prettier
|
|
|
|
|
|
// отключает форматирующие правила).
|
|
|
|
|
|
export default [
|
|
|
|
|
|
js.configs.recommended,
|
|
|
|
|
|
...vue.configs['flat/recommended'],
|
|
|
|
|
|
...vueTsConfig(),
|
|
|
|
|
|
prettier,
|
|
|
|
|
|
{
|
|
|
|
|
|
ignores: ['public/build/**', 'storage/**', 'vendor/**', 'node_modules/**'],
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
rules: {
|
|
|
|
|
|
'vue/multi-word-component-names': 'off', // допускаем AppShell.vue
|
2026-05-09 18:31:17 +03:00
|
|
|
|
'no-restricted-imports': ['error', {
|
|
|
|
|
|
paths: [{
|
|
|
|
|
|
name: 'vuetify/components',
|
|
|
|
|
|
message: 'Используй auto-import через vite-plugin-vuetify (vite.config.ts). Явные импорты дублируют auto-injected.',
|
|
|
|
|
|
}],
|
|
|
|
|
|
}],
|
2026-05-08 16:07:14 +03:00
|
|
|
|
},
|
|
|
|
|
|
},
|
|
|
|
|
|
];
|