Files
juwan-frontend/store/players.ts
T

25 lines
748 B
TypeScript

import type { Player } from "@/lib/types"
import { create } from "zustand"
interface PlayerState {
players: Player[]
assignToShop: (playerId: string, shopId: string, shopName: string) => void
removeFromShop: (playerId: string) => void
}
export const usePlayerStore = create<PlayerState>((set) => ({
players: [],
assignToShop: (playerId, shopId, shopName) =>
set((state) => ({
players: state.players.map((player) =>
player.id === playerId ? { ...player, shopId, shopName } : player,
),
})),
removeFromShop: (playerId) =>
set((state) => ({
players: state.players.map((player) =>
player.id === playerId ? { ...player, shopId: undefined, shopName: undefined } : player,
),
})),
}))