import globals from 'globals'; import pluginJs from '@eslint/js'; import tseslint from 'typescript-eslint'; export default [ { ...tseslint.configs.recommended, ...pluginJs.configs.recommended, ignores: [ // Existing ignores './test/', 'node_modules/**', // Explicitly ignore node_modules and subdirs // Add Bun-specific cache ignores (adjust paths if needed) '**/.bun/**', // Covers Bun's cache dirs '/home/teamcity-agent/.bun/**', // Absolute path for CI (if known; customize for your agent) // Other common ignores '**/dist/**', // Build outputs '**/build/**', '**/temp/**', '**/cache/**', '**/*.min.js', // Minified files ], files: ['./src/**/*.{ts,js,tsx,jsx}'], // Expanded to include JSX if needed; keeps it scoped to src languageOptions: { globals: { ...globals.browser, ...globals.node }, parserOptions: { ecmaVersion: 'latest', // Ensure modern JS support sourceType: 'module', }, }, rules: { // Optional: Suppress specific warnings seen in log (e.g., unused disables) 'no-unused-vars': 'warn', // Downgrade if needed // Add rules to handle common log issues (customize as needed) '@typescript-eslint/no-non-null-assertion': 'off', // Temporarily disable if causing many errors '@typescript-eslint/no-unsafe-enum-comparison': 'off', // Ignore undefined rules in third-party code 'eslint-plugin/no-property-in-node': 'off', }, }, ];