chore: adjust linter configs for new layout

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
pull/55432/head
Ferdinand Thiessen 2025-10-19 18:46:19 +07:00
parent da5e27917f
commit 3c1e9cd99e
No known key found for this signature in database
GPG Key ID: 45FAE7268762B400
3 changed files with 33 additions and 41 deletions

@ -58,7 +58,7 @@ $expectedFiles = [
'cypress.config.ts',
'cypress',
'dist',
'eslint.config.mjs',
'eslint.config.js',
'flake.lock',
'flake.nix',
'index.html',

@ -4,7 +4,7 @@
*/
import { includeIgnoreFile } from '@eslint/compat'
import { recommendedVue2 } from '@nextcloud/eslint-config'
import { recommended } from '@nextcloud/eslint-config'
import CypressEslint from 'eslint-plugin-cypress'
import noOnlyTests from 'eslint-plugin-no-only-tests'
import { defineConfig } from 'eslint/config'
@ -21,7 +21,7 @@ export default defineConfig([
},
},
...recommendedVue2,
...recommended,
// add globals configuration for Webpack injected variables
{
@ -39,8 +39,7 @@ export default defineConfig([
name: 'server/scripts-are-cjs',
files: [
'*.js',
'build/**/*.js',
'**/core/src/icons.cjs',
'build/*.js',
],
languageOptions: {

@ -3,45 +3,38 @@
* SPDX-License-Identifier: AGPL-3.0-or-later
*/
const additionalPseudoSelectors = [
// Vue <style scoped>
// See: https://vuejs.org/api/sfc-css-features.html
'deep',
'slotted',
// CSS Modules (including Vue <style module>)
// See: https://github.com/css-modules/css-modules/blob/master/docs/composition.md#exceptions
'global',
'local',
]
/** @type {import('stylelint').Config} */
const config = {
export default {
extends: '@nextcloud/stylelint-config',
plugins: ['stylelint-use-logical'],
ignoreFiles: [
'**/*.(!(vue|scss))',
],
// remove with nextcloud/stylelint-config 3.1.1+
rules: {
'csstools/use-logical': ['always',
'selector-pseudo-class-no-unknown': [
true,
{
except: [
// For now ignore block rules for logical properties
/(^|-)(height|width)$/,
/(^|-)(top|bottom)(-|$)/,
// Also ignore float as this is not well supported (I look at you Samsung)
'clear',
'float',
],
}],
},
overrides: [
{
files: ['**/*.vue'],
// Override the nextcloud rules to also allow :global (we should put this into the config...)
rules: {
'selector-pseudo-element-no-unknown': [
true,
{
// Vue deep and global pseudo-element
ignorePseudoElements: ['deep', 'global'],
},
],
'selector-pseudo-class-no-unknown': [
true,
{
// vue deep and global pseudo-class
ignorePseudoClasses: ['deep', 'global'],
},
],
ignorePseudoClasses: additionalPseudoSelectors,
},
},
],
],
'selector-pseudo-element-no-unknown': [
true,
{
ignorePseudoElements: additionalPseudoSelectors,
},
],
},
}
module.exports = config