merge: branch 'refactor/client-cleanup'

This commit is contained in:
2025-10-01 16:38:42 -04:00
5 changed files with 65 additions and 58 deletions

View File

@@ -1,26 +1,26 @@
# Logs
logs
*.log
npm-debug.log*
yarn-debug.log*
yarn-error.log*
pnpm-debug.log*
lerna-debug.log*
node_modules
dist
dist-ssr
dist-electron
*.local
release/
# Editor directories and files
.vscode/*
!.vscode/extensions.json
.idea
.DS_Store
*.suo
*.ntvs*
*.njsproj
*.sln
*.sw?
# Logs
logs
*.log
npm-debug.log*
yarn-debug.log*
yarn-error.log*
pnpm-debug.log*
lerna-debug.log*
node_modules
dist
dist-ssr
dist-electron
*.local
release/
# Editor directories and files
.vscode/*
!.vscode/extensions.json
.idea
.DS_Store
*.suo
*.ntvs*
*.njsproj
*.sln
*.sw?

View File

@@ -4,7 +4,8 @@
"version": "0.0.0",
"type": "module",
"scripts": {
"dev": "bunx --bun vite --open",
"dev:web": "VITE_APP_MODE=web bunx --bun vite",
"dev:electron": "bunx --bun vite --open",
"build": "tsc && bunx --bun vite build && electron-builder",
"lint": "eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0",
"preview": "bunx --bun vite preview"

View File

@@ -65,7 +65,7 @@ function App(props: { socket: Socket }) {
return (
<ErrorBoundary>
<QueryClientProvider client={queryClient}>
<ThemeProvider defaultTheme="system" storageKey="discord-theme">
<ThemeProvider defaultTheme="system" storageKey="concord-theme">
<Router>
<div className="h-screen w-screen overflow-hidden bg-background text-foreground">
<Routes>

View File

@@ -558,9 +558,8 @@ const ChatPage: React.FC = () => {
</div>
);
} else if (!channelId || !currentChannel) {
const existingChannelId = categories
?.flatMap((cat) => cat.channels)
?.find((channel) => channel.position === 0)?.id;
const existingChannelId = categories?.flatMap((cat) => cat.channels)?.[0]
?.id; // Get the first channel from the flattened list
if (existingChannelId) {
navigate(`/channels/${instanceId}/${existingChannelId}`);

View File

@@ -5,33 +5,40 @@ import react from "@vitejs/plugin-react";
import tailwindcss from "@tailwindcss/vite";
// https://vitejs.dev/config/
export default defineConfig({
plugins: [
react(),
electron({
main: {
// Shortcut of `build.lib.entry`.
entry: "electron/main.ts",
export default defineConfig(({ mode }) => {
// Check if VITE_APP_MODE is set to 'web'
const isWebApp = process.env.VITE_APP_MODE === "web";
return {
plugins: [
react(),
// Only include the electron plugin if not in 'web' app mode
!isWebApp &&
electron({
main: {
// Shortcut of `build.lib.entry`.
entry: "electron/main.ts",
},
preload: {
// Shortcut of `build.rollupOptions.input`.
// Preload scripts may contain Web assets, so use the `build.rollupOptions.input` instead `build.lib.entry`.
input: path.join(__dirname, "electron/preload.ts"),
},
// Ployfill the Electron and Node.js API for Renderer process.
// If you want use Node.js in Renderer process, the `nodeIntegration` needs to be enabled in the Main process.
// See 👉 https://github.com/electron-vite/vite-plugin-electron-renderer
renderer:
process.env.NODE_ENV === "test"
? // https://github.com/electron-vite/vite-plugin-electron-renderer/issues/78#issuecomment-2053600808
undefined
: {},
}),
tailwindcss(),
].filter(Boolean), // Filter out 'false' values if electron plugin is not included
resolve: {
alias: {
"@": path.resolve(__dirname, "./src"),
},
preload: {
// Shortcut of `build.rollupOptions.input`.
// Preload scripts may contain Web assets, so use the `build.rollupOptions.input` instead `build.lib.entry`.
input: path.join(__dirname, "electron/preload.ts"),
},
// Ployfill the Electron and Node.js API for Renderer process.
// If you want use Node.js in Renderer process, the `nodeIntegration` needs to be enabled in the Main process.
// See 👉 https://github.com/electron-vite/vite-plugin-electron-renderer
renderer:
process.env.NODE_ENV === "test"
? // https://github.com/electron-vite/vite-plugin-electron-renderer/issues/78#issuecomment-2053600808
undefined
: {},
}),
tailwindcss(),
],
resolve: {
alias: {
"@": path.resolve(__dirname, "./src"),
},
},
};
});