123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960 |
- import { Wallet } from "@/api/user";
- import { create } from "zustand";
- interface State {
- wallet: Wallet;
- score: Wallet["score"];
- }
- interface Action {
- setWallet: (state: Wallet) => void;
- setScore: (state: Wallet["score"]) => void;
- reset: () => void;
- }
- const initialState: State = {
- wallet: {
- avatar_url: "",
- currency: "",
- current_free_score_rollover: 0,
- current_lose_score_rollover: 0,
- current_point_rollover: 0,
- current_score_rollover: 0,
- deposit: 0,
- first_pay_time: 0,
- free_score: 0,
- lock_point: 0,
- lock_score: 0,
- lose_score: 0,
- nick_name: "",
- point: 0,
- score: 0,
- target_free_score_rollover: 0,
- target_lose_score_rollover: 0,
- target_point_rollover: 0,
- target_score_rollover: 0,
- total_free_score_rollover: 0,
- total_lose_score_rollover: 0,
- total_point_rollover: 0,
- total_receive_red_packet: 0,
- total_red_packet: 0,
- total_score_rollover: 0,
- user_name: "",
- notice: {
- lose_score: 0,
- },
- },
- score: undefined,
- };
- export const useWalletStore = create<State & Action>()((set) => {
- return {
- ...initialState,
- setWallet: (wallet) => {
- set((state) => ({ ...state, wallet }));
- },
- setScore: (score) => {
- set((state) => ({ ...state, score }));
- },
- reset: () => set(initialState),
- };
- });
|