aidxnCC/lib/socket.ts

28 lines
No EOL
465 B
TypeScript

"use client"
import { io, Socket } from "socket.io-client"
let socket: Socket | null = null
export const getSocket = (): Socket => {
if (!socket) {
socket = io(undefined, {
autoConnect: false,
})
}
return socket
}
export const connectSocket = (): Socket => {
const s = getSocket()
if (!s.connected) {
s.connect()
}
return s
}
export const disconnectSocket = (): void => {
if (socket?.connected) {
socket.disconnect()
}
}