diff --git a/apps/web/.gitignore b/apps/web/.gitignore index e7e90209..bf5cba95 100644 --- a/apps/web/.gitignore +++ b/apps/web/.gitignore @@ -38,6 +38,7 @@ next-env.d.ts /dist src/**/*.js src/**/*.js.map +/socket-server.js # vitest /.vitest diff --git a/apps/web/server.js b/apps/web/server.js index 11ee74ed..4ec0bb22 100644 --- a/apps/web/server.js +++ b/apps/web/server.js @@ -12,7 +12,7 @@ const handle = app.getRequestHandler() // Run migrations before starting server console.log('🔄 Running database migrations...') const { migrate } = require('drizzle-orm/better-sqlite3/migrator') -const { db } = require('./src/db/index.js') +const { db } = require('./dist/db/index') try { migrate(db, { migrationsFolder: './drizzle' }) @@ -35,7 +35,7 @@ app.prepare().then(() => { }) // Initialize Socket.IO - const { initializeSocketServer } = require('./socket-server.js') + const { initializeSocketServer } = require('./dist/socket-server') initializeSocketServer(server) server diff --git a/apps/web/socket-server.ts b/apps/web/src/socket-server.ts similarity index 97% rename from apps/web/socket-server.ts rename to apps/web/src/socket-server.ts index a914bc03..bd1d353c 100644 --- a/apps/web/socket-server.ts +++ b/apps/web/src/socket-server.ts @@ -8,12 +8,12 @@ import { getArcadeSession, getArcadeSessionByRoom, updateSessionActivity, -} from './src/lib/arcade/session-manager' -import { createRoom, getRoomById } from './src/lib/arcade/room-manager' -import { getRoomMembers, getUserRooms, setMemberOnline } from './src/lib/arcade/room-membership' -import { getRoomActivePlayers } from './src/lib/arcade/player-manager' -import type { GameMove, GameName } from './src/lib/arcade/validation' -import { matchingGameValidator } from './src/lib/arcade/validation/MatchingGameValidator' +} from './lib/arcade/session-manager' +import { createRoom, getRoomById } from './lib/arcade/room-manager' +import { getRoomMembers, getUserRooms, setMemberOnline } from './lib/arcade/room-membership' +import { getRoomActivePlayers } from './lib/arcade/player-manager' +import type { GameMove, GameName } from './lib/arcade/validation' +import { matchingGameValidator } from './lib/arcade/validation/MatchingGameValidator' // Use globalThis to store socket.io instance to avoid module isolation issues // This ensures the same instance is accessible across dynamic imports diff --git a/apps/web/tsconfig.server.json b/apps/web/tsconfig.server.json index 2b07a2a2..12dfc9c5 100644 --- a/apps/web/tsconfig.server.json +++ b/apps/web/tsconfig.server.json @@ -4,6 +4,7 @@ "module": "commonjs", "target": "es2020", "outDir": "./dist", + "rootDir": "./src", "noEmit": false, "incremental": false, "skipLibCheck": true, @@ -21,7 +22,7 @@ "src/app/games/matching/context/types.ts", "src/app/games/matching/utils/cardGeneration.ts", "src/app/games/matching/utils/matchValidation.ts", - "socket-server.ts" + "src/socket-server.ts" ], "exclude": [ "node_modules",