chore: migrate player-ui to oxlint and upgrade to React 19, Vite 8, TS 6

- Remove biome.json from apps/player (use root oxlint/oxfmt config)
- Remove eslint from apps/player-ui, switch lint script to oxlint
- Upgrade React 18 → 19, Vite 7 → 8, TypeScript 5.9 → 6.0
- Upgrade @vitejs/plugin-react 5 → 6, @types/react to v19
- Fix vite.config.ts: __dirname → import.meta.dirname (ESM compat)
- Fix tsconfig.app.json: remove deprecated baseUrl option

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
caorushizi
2026-04-01 00:05:02 +08:00
parent 906db36c81
commit 8a5ac39cc5
8 changed files with 57 additions and 1053 deletions
+1 -8
View File
@@ -62,14 +62,7 @@ const app = new ElectronApp();
export default defineConfig({
outDir: "build",
shims: true,
external: [
"electron",
"typeorm",
"better-sqlite3",
"@mediago/player",
"@mediago/core",
"@mediago/deps",
],
external: ["electron", "@mediago/player", "@mediago/core", "@mediago/deps"],
noExternal: [/.*/],
define: {
"process.env.NODE_ENV": JSON.stringify(
-23
View File
@@ -1,23 +0,0 @@
import js from "@eslint/js";
import globals from "globals";
import reactHooks from "eslint-plugin-react-hooks";
import reactRefresh from "eslint-plugin-react-refresh";
import tseslint from "typescript-eslint";
import { defineConfig, globalIgnores } from "eslint/config";
export default defineConfig([
globalIgnores(["dist"]),
{
files: ["**/*.{ts,tsx}"],
extends: [
js.configs.recommended,
tseslint.configs.recommended,
reactHooks.configs["recommended-latest"],
reactRefresh.configs.vite,
],
languageOptions: {
ecmaVersion: 2020,
globals: globals.browser,
},
},
]);
+10 -16
View File
@@ -6,7 +6,7 @@
"scripts": {
"dev": "vite",
"build": "tsc -b && vite build",
"lint": "eslint .",
"lint": "oxlint .",
"preview": "vite preview"
},
"dependencies": {
@@ -16,29 +16,23 @@
"axios": "^1.12.2",
"class-variance-authority": "^0.7.1",
"clsx": "^2.1.1",
"lucide-react": "^0.545.0",
"react": "^18.3.1",
"react-dom": "^18.3.1",
"lucide-react": "^1.7.0",
"react": "^19.2.4",
"react-dom": "^19.2.4",
"swr": "^2.3.6",
"tailwind-merge": "^3.3.1",
"video.js": "^8.23.4"
},
"devDependencies": {
"@eslint/js": "^9.36.0",
"@tailwindcss/vite": "^4.1.14",
"@types/node": "^24.6.0",
"@types/react": "^18.3.1",
"@types/react-dom": "^18.3.1",
"@vitejs/plugin-react": "^5.0.4",
"@types/node": "^24.7.2",
"@types/react": "^19.2.14",
"@types/react-dom": "^19.2.3",
"@vitejs/plugin-react": "^6.0.1",
"ahooks": "3.9.5",
"eslint": "^9.36.0",
"eslint-plugin-react-hooks": "^5.2.0",
"eslint-plugin-react-refresh": "^0.4.22",
"globals": "^16.4.0",
"tailwindcss": "^4.1.14",
"tw-animate-css": "^1.4.0",
"typescript": "~5.9.3",
"typescript-eslint": "^8.45.0",
"vite": "npm:rolldown-vite@7.1.14"
"typescript": "^6.0.2",
"vite": "^8.0.3"
}
}
-1
View File
@@ -27,7 +27,6 @@
"esModuleInterop": true,
"allowSyntheticDefaultImports": true,
"baseUrl": ".",
"paths": {
"@/*": ["./src/*"]
}
+1 -1
View File
@@ -14,7 +14,7 @@ export default defineConfig({
plugins: [react(), tailwindcss()],
resolve: {
alias: {
"@": path.resolve(__dirname, "./src"),
"@": path.resolve(import.meta.dirname, "./src"),
},
},
});
-34
View File
@@ -1,34 +0,0 @@
{
"$schema": "https://biomejs.dev/schemas/2.2.5/schema.json",
"vcs": {
"enabled": false,
"clientKind": "git",
"useIgnoreFile": false
},
"files": {
"ignoreUnknown": false
},
"formatter": {
"enabled": true,
"indentStyle": "space"
},
"linter": {
"enabled": true,
"rules": {
"recommended": true
}
},
"javascript": {
"formatter": {
"quoteStyle": "double"
}
},
"assist": {
"enabled": true,
"actions": {
"source": {
"organizeImports": "on"
}
}
}
}
+45 -969
View File
File diff suppressed because it is too large Load Diff
-1
View File
@@ -11,7 +11,6 @@ onlyBuiltDependencies:
- "@sentry-internal/node-cpu-profiler"
- "@swc/core"
- "@tailwindcss/oxide"
- better-sqlite3
- core-js
- electron
- electron-winstaller