aboutsummaryrefslogtreecommitdiffstats
path: root/.eslintrc.js
blob: 40fa92d1e8cec40ba36578048309d847bac2f893 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
/**
 * SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors
 * SPDX-License-Identifier: AGPL-3.0-or-later
 */
module.exports = {
	globals: {
		__webpack_nonce__: true,
		_: true,
		$: true,
		dayNames: true,
		escapeHTML: true,
		firstDay: true,
		moment: true,
		oc_userconfig: true,
		sinon: true,
	},
	plugins: [
		'cypress',
	],
	extends: [
		'@nextcloud/eslint-config/typescript',
		'plugin:cypress/recommended',
	],
	rules: {
		'no-tabs': 'warn',
		// TODO: make sure we fix this as this is bad vue coding style.
		// Use proper sync modifier
		'vue/no-mutating-props': 'warn',
		'vue/custom-event-name-casing': ['error', 'kebab-case', {
			// allows custom xxxx:xxx events formats
			ignores: ['/^[a-z]+(?:-[a-z]+)*:[a-z]+(?:-[a-z]+)*$/u'],
		}],
	},
	settings: {
		jsdoc: {
			mode: 'typescript',
		},
	},
	overrides: [
		// Allow any in tests
		{
			files: ['**/*.spec.ts'],
			rules: {
				'@typescript-eslint/no-explicit-any': 'warn',
			},
		}
	],
}