/** * @copyright Copyright (c) Open-Xchange GmbH, Germany <info@open-xchange.com> * @license AGPL-3.0 * * This code is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Affero General Public License for more details. * * You should have received a copy of the GNU Affero General Public License * along with OX App Suite. If not, see <https://www.gnu.org/licenses/agpl-3.0.txt>. * * Any use of the work other than as authorized under this license or copyright law is prohibited. */ import { FlatCompat } from '@eslint/eslintrc' import { fileURLToPath } from 'url' import path from 'path' import licenseHeader from 'eslint-plugin-license-header' import specConfig from './spec/eslint.config.js' import integrationConfig from './integration/eslint.config.js' const __filename = fileURLToPath(import.meta.url) const __dirname = path.dirname(__filename) const flatCompat = new FlatCompat({ baseDirectory: __dirname }) export default [ ...flatCompat.extends('eslint-config-standard'), ...flatCompat.extends('plugin:chai-friendly/recommended'), ...specConfig, ...integrationConfig, { languageOptions: { globals: { browser: true, es2022: true } }, plugins: { licenseHeader }, ignores: [ 'public/*', 'node_modules/*' ], rules: { 'licenseHeader/header': ['error', path.join(__dirname, 'license-header')] } } ]