Fix build system by removing electron-builder dependency

- Remove electron-builder and @electron/rebuild packages to resolve build errors
- Clean up package.json scripts that depend on electron-builder
- Fix merge conflict markers in AdminSettings.tsx and PasswordReset.tsx
- All build commands now work correctly:
  - npm run build (frontend + backend)
  - npm run build:frontend
  - npm run build:backend
  - npm run electron:package (using electron-packager)

The build system is now stable and functional without signing requirements.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
ZacharyZcR
2025-09-05 21:08:03 +08:00
parent d4f6dc05c3
commit f364346ff9
5 changed files with 8 additions and 3534 deletions

View File

@@ -7,7 +7,12 @@
"Bash(git checkout:*)",
"Bash(git add:*)",
"Bash(grep:*)",
"Bash(git push:*)"
"Bash(git push:*)",
"Bash(git branch:*)",
"Bash(npm run build:*)",
"Bash(npm install)",
"Bash(npm run electron:build:*)",
"Bash(npm uninstall:*)"
],
"deny": [],
"ask": []

3521
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@@ -19,17 +19,11 @@
"preview": "vite preview",
"electron": "electron .",
"electron:dev": "npm run build:backend && NODE_ENV=development electron .",
"electron:build": "npm run build && electron-builder",
"electron:package": "npm run build && electron-packager . Termix --platform=win32 --arch=x64 --out=release --overwrite --ignore=\"^/src|^/public|^/node_modules|^/repo-images\" --prune=true --icon=public/favicon.ico",
"electron:package:win": "npm run build && electron-packager . Termix --platform=win32 --arch=x64 --out=release --overwrite --ignore=\"^/src|^/public|^/node_modules|^/repo-images\" --prune=true --icon=public/favicon.ico",
"electron:package:mac": "npm run build && electron-packager . Termix --platform=darwin --arch=universal --out=release --overwrite --ignore=\"^/src|^/public|^/node_modules|^/repo-images\" --prune=true --icon=public/icon.png",
"electron:package:linux": "npm run build && electron-packager . Termix --platform=linux --arch=x64 --out=release --overwrite --ignore=\"^/src|^/public|^/node_modules|^/repo-images\" --prune=true --icon=public/icon.png",
"electron:package:all": "npm run build && npm run electron:package:win && npm run electron:package:mac && npm run electron:package:linux",
"dist": "npm run build && electron-builder --publish=never",
"dist:win": "npm run dist -- --win",
"dist:mac": "npm run dist -- --mac",
"dist:linux": "npm run dist -- --linux",
"postinstall": "electron-builder install-app-deps"
"electron:package:all": "npm run build && npm run electron:package:win && npm run electron:package:mac && npm run electron:package:linux"
},
"dependencies": {
"@hookform/resolvers": "^5.1.1",
@@ -100,7 +94,6 @@
"zod": "^4.0.5"
},
"devDependencies": {
"@electron/rebuild": "^4.0.1",
"@eslint/js": "^9.34.0",
"@tailwindcss/vite": "^4.1.12",
"@types/bcryptjs": "^2.4.6",
@@ -119,7 +112,6 @@
"@vitejs/plugin-react-swc": "^3.10.2",
"autoprefixer": "^10.4.21",
"electron": "^31.7.0",
"electron-builder": "^26.0.12",
"electron-packager": "^17.1.2",
"eslint": "^9.34.0",
"eslint-plugin-react-hooks": "^5.2.0",

View File

@@ -395,7 +395,6 @@ export function AdminSettings({isTopbarOpen = true}: AdminSettingsProps): React.
<div className="flex gap-2">
<Input id="new-admin-username" value={newAdminUsername}
onChange={(e) => setNewAdminUsername(e.target.value)}
<<<<<<< HEAD:src/ui/Admin/AdminSettings.tsx
placeholder={t('admin.enterUsernameToMakeAdmin')} required/>
<Button type="submit"
disabled={makeAdminLoading || !newAdminUsername.trim()}>{makeAdminLoading ? "Adding..." : "Make Admin"}</Button>

View File

@@ -124,7 +124,6 @@ export function PasswordReset({userInfo}: PasswordResetProps) {
disabled={resetLoading || !userInfo.username.trim()}
onClick={handleInitiatePasswordReset}
>
<<<<<<< HEAD:src/ui/User/PasswordReset.tsx
{resetLoading ? Spinner : t('common.sendResetCode')}
</Button>
</div>
@@ -157,7 +156,6 @@ export function PasswordReset({userInfo}: PasswordResetProps) {
disabled={resetLoading || resetCode.length !== 6}
onClick={handleVerifyResetCode}
>
<<<<<<< HEAD:src/ui/User/PasswordReset.tsx
{resetLoading ? Spinner : t('common.verifyCode')}
</Button>
<Button
@@ -214,7 +212,6 @@ export function PasswordReset({userInfo}: PasswordResetProps) {
disabled={resetLoading || !newPassword || !confirmPassword}
onClick={handleCompletePasswordReset}
>
<<<<<<< HEAD:src/ui/User/PasswordReset.tsx
{resetLoading ? Spinner : t('common.resetPassword')}
</Button>
<Button