This commit is contained in:
2026-03-25 14:59:06 +08:00
commit ae315100b4
92 changed files with 9285 additions and 0 deletions

View File

@@ -0,0 +1,47 @@
import { type SignInState } from "./state";
import { type SignInAction } from "./action";
export const initialState: SignInState = {
isSubmiting: false,
signInUser: {
account: "",
password: "",
},
signUpUser: {
account: "",
defaultRole: "Buyer",
nickName: "",
password: "",
},
};
export function signInReducer(
state: SignInState,
action: SignInAction,
): SignInState {
switch (action.type) {
case "set_sign_in":
return {
...state,
signInUser: {
...state.signInUser,
...action.payload?.signInUser,
},
};
case "set_sign_up":
return {
...state,
signUpUser: {
...state.signUpUser,
...action.payload?.signUpUser,
},
};
case "set_is_submiting":
return {
...state,
isSubmiting: action.payload?.isSubmiting ?? false,
};
default:
throw Error(`wrong action type:${action.type}`);
}
}