1
0
mirror of https://github.com/ZeroCatDev/Classworks.git synced 2026-03-21 17:33:10 +00:00
Classworks/eslint.config.js
2026-03-03 19:53:29 +08:00

69 lines
1.6 KiB
JavaScript

import js from '@eslint/js'
import pluginVue from 'eslint-plugin-vue'
export default [
{
name: 'app/files-to-lint',
files: ['**/*.{js,mjs,jsx,vue}'],
},
{
name: 'app/files-to-ignore',
ignores: ['**/dist/**', '**/dist-ssr/**', '**/coverage/**'],
},
js.configs.recommended,
...pluginVue.configs['flat/recommended'],
{
rules: {
'vue/multi-word-component-names': 'off',
},
},
{
languageOptions: {
globals: {
// Browser globals
window: 'readonly',
document: 'readonly',
navigator: 'readonly',
localStorage: 'readonly',
sessionStorage: 'readonly',
console: 'readonly',
alert: 'readonly',
confirm: 'readonly',
prompt: 'readonly',
setTimeout: 'readonly',
clearTimeout: 'readonly',
setInterval: 'readonly',
clearInterval: 'readonly',
fetch: 'readonly',
XMLHttpRequest: 'readonly',
URL: 'readonly',
URLSearchParams: 'readonly',
atob: 'readonly',
btoa: 'readonly',
// Vite globals
import: 'readonly',
process: 'readonly',
// Service Worker globals
self: 'readonly',
caches: 'readonly',
// Web API
Notification: 'readonly',
ServiceWorker: 'readonly',
PushManager: 'readonly',
PushSubscription: 'readonly',
// Web Storage API
Storage: 'readonly',
StorageEvent: 'readonly',
// Web Socket
WebSocket: 'readonly',
// Web Workers
Worker: 'readonly',
SharedWorker: 'readonly',
},
},
}
]