import globals from 'globals'; import pluginJs from '@eslint/js'; import tseslint from 'typescript-eslint'; import pluginVue from 'eslint-plugin-vue'; export default [ { languageOptions: { globals: globals.browser, parserOptions: { parser: '@typescript-eslint/parser' } } }, pluginJs.configs.recommended, ...tseslint.configs.recommended, ...pluginVue.configs['flat/essential'], { // The l10n engine is an implementation detail of core/src/plugins/l10n // (the vuetify plugin adapter is the one sanctioned exception). All // other code must use the '@KTXC' useL10n() surface. ignores: ['core/src/plugins/l10n/**', 'core/src/plugins/vuetify/**'], rules: { 'no-restricted-imports': ['error', { paths: [{ name: 'vue-i18n', message: 'Import useL10n from @KTXC instead; vue-i18n is confined to core/src/plugins/l10n.' }] }] } } ];