You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							83 lines
						
					
					
						
							2.6 KiB
						
					
					
				
			
		
		
		
			
			
			
		
		
	
	
							83 lines
						
					
					
						
							2.6 KiB
						
					
					
				| /** | |
|  * SPDX-FileCopyrightText: 2025 Nextcloud GmbH and Nextcloud contributors | |
|  * SPDX-License-Identifier: AGPL-3.0-or-later | |
|  */ | |
| 
 | |
| import { recommended } from '@nextcloud/eslint-config' | |
| import globals from 'globals' | |
| 
 | |
| export default [ | |
| 	...recommended, | |
| 
 | |
| 	{ | |
| 		name: 'talk/ignores', | |
| 		ignores: [ | |
| 			// Generated files | |
| 			'src/types/openapi/*', | |
| 			'js/*', | |
| 			// Vendor code | |
| 			'src/utils/**/vendor/*', | |
| 			// Temporary ignore code in documentation examples | |
| 			'docs', | |
| 			// TODO: upstream | |
| 			'openapi-*.json', | |
| 		], | |
| 	}, | |
| 
 | |
| 	{ | |
| 		name: 'talk/config', | |
| 		languageOptions: { | |
| 			globals: { | |
| 				...globals.browser, | |
| 				...globals.node, | |
| 				IS_DESKTOP: 'readonly', | |
| 				__webpack_public_path__: 'writable', | |
| 			}, | |
| 		}, | |
| 	}, | |
| 
 | |
| 	{ | |
| 		name: 'talk/jest', | |
| 		files: ['src/__mocks__/*.js', '**/*.spec.js', 'src/test-setup.js'], | |
| 		languageOptions: { | |
| 			globals: { | |
| 				...globals.jest, | |
| 			}, | |
| 		}, | |
| 	}, | |
| 
 | |
| 	{ | |
| 		name: 'talk/disabled-during-migration', | |
| 		rules: { | |
| 			'@nextcloud-l10n/non-breaking-space': 'off', // changes translation strings | |
| 			'@nextcloud-l10n/non-breaking-space-vue': 'off', // changes translation strings | |
| 			'@stylistic/array-bracket-newline': 'off', // changes array formatting | |
| 			'@stylistic/max-statements-per-line': 'off', // non-fixable | |
| 			'@typescript-eslint/no-unused-expressions': 'off', // non-fixable | |
| 			'@typescript-eslint/no-unused-vars': 'off', // non-fixable | |
| 			'@typescript-eslint/no-use-before-define': 'off', // non-fixable | |
| 			'antfu/top-level-function': 'off', // non-fixable | |
| 			'jsdoc/check-param-names': 'off', // need to respect JS | |
| 			'jsdoc/check-tag-names': 'off', // need to respect JS | |
| 			'jsdoc/check-types': 'off', // need to respect JS | |
| 			'jsdoc/no-defaults': 'off', // need to respect JS | |
| 			'jsdoc/no-types': 'off', // need to respect JS | |
| 			'jsdoc/require-param': 'off', // need to respect JS | |
| 			'jsdoc/require-param-type': 'off', // need to respect JS | |
| 			'jsdoc/require-param-description': 'off', // need to respect JS | |
| 			'jsdoc/tag-lines': 'off', // need to respect JS | |
| 			'no-console': 'off', // non-fixable | |
| 			'no-unused-vars': 'off', // non-fixable | |
| 			'no-use-before-define': 'off', // non-fixable | |
| 			'object-shorthand': 'off', // changes Vue watchers | |
| 			'prefer-object-has-own': 'off', // changes Objet.prototype.hasOwnProperty | |
| 			'prefer-object-spread': 'off', // changes Object.assign | |
| 			'vue/first-attribute-linebreak': 'off', // changes all Vue files | |
| 			'vue/multi-word-component-names': 'off', // non-fixable | |
| 			'vue/no-boolean-default': 'off', // non-fixable | |
| 			'vue/no-required-prop-with-default': 'off', // non-fixable | |
| 			'vue/no-unused-properties': 'off', // non-fixable | |
| 			'vue/no-unused-refs': 'off', // non-fixable | |
| 		}, | |
| 	}, | |
| ]
 |