Files
Hotwives/frontend/lib/socket.ts
root 5e4a2283bf Initial commit: HotWives Platform completa
- Backend completo com Express, TypeScript e Prisma
- Sistema de autenticação JWT
- API REST com todas as funcionalidades
- Sistema de mensagens e chat em tempo real (Socket.io)
- Upload e gerenciamento de fotos
- Sistema de perfis com verificação
- Busca avançada com filtros
- Sistema de eventos
- Dashboard administrativo
- Frontend Next.js 14 com TypeScript
- Design moderno com Tailwind CSS
- Componentes UI com Radix UI
- Tema dark/light
- Configuração Nginx pronta para produção
- Scripts de instalação e deploy
- Documentação completa
2025-11-22 01:00:35 +00:00

46 lines
840 B
TypeScript

import { io, Socket } from 'socket.io-client'
const SOCKET_URL = process.env.NEXT_PUBLIC_SOCKET_URL || 'http://localhost:3001'
let socket: Socket | null = null
export const connectSocket = (token: string) => {
if (!socket) {
socket = io(SOCKET_URL, {
auth: {
token,
},
})
socket.on('connect', () => {
console.log('Socket connected')
})
socket.on('disconnect', () => {
console.log('Socket disconnected')
})
socket.on('connect_error', (error) => {
console.error('Socket connection error:', error)
})
}
return socket
}
export const disconnectSocket = () => {
if (socket) {
socket.disconnect()
socket = null
}
}
export const getSocket = () => socket
export default {
connect: connectSocket,
disconnect: disconnectSocket,
get: getSocket,
}