get rid of babel, install biome plugin for vite

This commit is contained in:
Henry Jameson 2026-09-02 22:27:14 +03:00
commit 8c18336da3
6 changed files with 137 additions and 1302 deletions

View file

@ -1,5 +0,0 @@
{
"presets": ["@babel/preset-env"],
"plugins": ["@babel/plugin-transform-runtime", "@vue/babel-plugin-jsx"],
"comments": true
}

View file

@ -1,5 +1,5 @@
{ {
"$schema": "https://biomejs.dev/schemas/2.3.11/schema.json", "$schema": "https://biomejs.dev/schemas/2.5.11/schema.json",
"vcs": { "vcs": {
"enabled": true, "enabled": true,
"clientKind": "git", "clientKind": "git",

View file

@ -1,5 +1,6 @@
import { defineConfig, globalIgnores } from 'eslint/config' import { defineConfig, globalIgnores } from 'eslint/config'
import vue from 'eslint-plugin-vue' import vue from 'eslint-plugin-vue'
import vueParser from 'vue-eslint-parser'
export default defineConfig([ export default defineConfig([
...vue.configs['flat/recommended'], ...vue.configs['flat/recommended'],
@ -7,11 +8,8 @@ export default defineConfig([
{ {
files: ['src/**/*.vue'], files: ['src/**/*.vue'],
languageOptions: { languageOptions: {
parserOptions: { parser: vueParser,
parser: '@babel/eslint-parser',
},
}, },
rules: { rules: {
'vue/require-prop-types': 0, 'vue/require-prop-types': 0,
'vue/multi-word-component-names': 0, 'vue/multi-word-component-names': 0,

View file

@ -21,7 +21,6 @@
"lint-fix": "yarn exec eslint -- --fix; yarn exec stylelint '**/*.scss' '**/*.vue' --fix; biome check --write" "lint-fix": "yarn exec eslint -- --fix; yarn exec stylelint '**/*.scss' '**/*.vue' --fix; biome check --write"
}, },
"dependencies": { "dependencies": {
"@babel/runtime": "^8.0.0",
"@chenfengyuan/vue-qrcode": "2.0.0", "@chenfengyuan/vue-qrcode": "2.0.0",
"@fortawesome/fontawesome-svg-core": "7.1.0", "@fortawesome/fontawesome-svg-core": "7.1.0",
"@fortawesome/free-regular-svg-icons": "7.1.0", "@fortawesome/free-regular-svg-icons": "7.1.0",
@ -56,11 +55,6 @@
"vue-virtual-scroller": "^3.0.5" "vue-virtual-scroller": "^3.0.5"
}, },
"devDependencies": { "devDependencies": {
"@babel/core": "^8.0.0",
"@babel/eslint-parser": "^8.0.0",
"@babel/plugin-transform-runtime": "^8.0.0",
"@babel/preset-env": "^8.0.0",
"@babel/register": "^8.0.0",
"@biomejs/biome": "2.5.11", "@biomejs/biome": "2.5.11",
"@pinia/testing": "1.0.3", "@pinia/testing": "1.0.3",
"@ungap/event-target": "0.2.4", "@ungap/event-target": "0.2.4",
@ -71,15 +65,14 @@
"@vitest/browser-playwright": "^4.1.11", "@vitest/browser-playwright": "^4.1.11",
"@vitest/coverage-v8": "^4.1.11", "@vitest/coverage-v8": "^4.1.11",
"@vitest/ui": "^4.1.11", "@vitest/ui": "^4.1.11",
"@vue/babel-plugin-jsx": "3.0.0",
"@vue/compiler-sfc": "3.5.22", "@vue/compiler-sfc": "3.5.22",
"@vue/devtools-api": "^8.1.5", "@vue/devtools-api": "^8.1.5",
"@vue/test-utils": "2.5.0", "@vue/test-utils": "2.5.0",
"autoprefixer": "10.4.21", "autoprefixer": "10.4.21",
"chalk": "5.6.2", "chalk": "5.6.2",
"cross-spawn": "7.0.6", "cross-spawn": "7.0.6",
"eslint": "9.39.2", "eslint": "^10.9.1",
"eslint-plugin-vue": "10.6.2", "eslint-plugin-vue": "^10.10.0",
"iso-639-1": "3.1.5", "iso-639-1": "3.1.5",
"msw": "2.14.6", "msw": "2.14.6",
"nightwatch": "3.12.2", "nightwatch": "3.12.2",
@ -97,11 +90,12 @@
"stylelint-config-recommended-vue": "^1.6.0", "stylelint-config-recommended-vue": "^1.6.0",
"stylelint-config-standard": "38.0.0", "stylelint-config-standard": "38.0.0",
"vite": "^8.0.0", "vite": "^8.0.0",
"vite-plugin-eslint2": "^5.1.0", "vite-plugin-biome": "^1.2.0",
"vite-plugin-eslint2": "^5.3.0",
"vite-plugin-stylelint": "^6.1.0", "vite-plugin-stylelint": "^6.1.0",
"vite-plugin-vue-devtools": "^8.2.1", "vite-plugin-vue-devtools": "^8.2.1",
"vitest": "^4.1.11", "vitest": "^4.1.11",
"vue-eslint-parser": "10.2.0" "vue-eslint-parser": "^10.4.1"
}, },
"type": "module", "type": "module",
"engines": { "engines": {

View file

@ -2,11 +2,12 @@ import { dirname, resolve } from 'node:path'
import { fileURLToPath } from 'node:url' import { fileURLToPath } from 'node:url'
import vue from '@vitejs/plugin-vue' import vue from '@vitejs/plugin-vue'
import vueJsx from '@vitejs/plugin-vue-jsx' import vueJsx from '@vitejs/plugin-vue-jsx'
import vueDevTools from 'vite-plugin-vue-devtools'
import { playwright } from '@vitest/browser-playwright' import { playwright } from '@vitest/browser-playwright'
import { defineConfig } from 'vite' import { defineConfig } from 'vite'
import biomePlugin from 'vite-plugin-biome'
import eslint from 'vite-plugin-eslint2' import eslint from 'vite-plugin-eslint2'
import stylelint from 'vite-plugin-stylelint' import stylelint from 'vite-plugin-stylelint'
import vueDevTools from 'vite-plugin-vue-devtools'
import { configDefaults } from 'vitest/config' import { configDefaults } from 'vitest/config'
import { getCommitHash } from './build/commit_hash.js' import { getCommitHash } from './build/commit_hash.js'
@ -152,9 +153,13 @@ export default defineConfig(async ({ mode, command }) => {
inUrl: '/static/ruffle', inUrl: '/static/ruffle',
inFs: resolve(projectRoot, 'node_modules/@ruffle-rs/ruffle'), inFs: resolve(projectRoot, 'node_modules/@ruffle-rs/ruffle'),
}), }),
biomePlugin({
mode: 'check',
}),
eslint({ eslint({
lintInWorker: true, lintInWorker: true,
lintOnStart: true, lintOnStart: true,
customOverlay: true,
cacheLocation: resolve(projectRoot, 'node_modules/.cache/eslintcache'), cacheLocation: resolve(projectRoot, 'node_modules/.cache/eslintcache'),
}), }),
stylelint({ stylelint({

1403
yarn.lock

File diff suppressed because it is too large Load diff