Files
var-monorepo/apps/dispatch/app/_store/connectionStore.ts
2025-03-15 11:09:55 -07:00

20 lines
439 B
TypeScript

import { create } from "zustand";
import { socket } from "../(dispatch)/socket";
interface ConnectionStore {
isConnected: boolean;
connect: (uid: string) => Promise<void>;
}
export const connectionStore = create<ConnectionStore>((set) => ({
isConnected: false,
connect: async (uid: string) => {
socket.auth = { uid };
socket.connect();
},
}));
socket.on("connect", () => {
connectionStore.setState({ isConnected: true });
});