summaryrefslogtreecommitdiff
path: root/sw-ui/src/redux/actions/user.ts
diff options
context:
space:
mode:
Diffstat (limited to 'sw-ui/src/redux/actions/user.ts')
-rw-r--r--sw-ui/src/redux/actions/user.ts17
1 files changed, 17 insertions, 0 deletions
diff --git a/sw-ui/src/redux/actions/user.ts b/sw-ui/src/redux/actions/user.ts
new file mode 100644
index 00000000..29c85707
--- /dev/null
+++ b/sw-ui/src/redux/actions/user.ts
@@ -0,0 +1,17 @@
+import { Map } from 'immutable';
+import { ApiPlayer } from '../../api/model';
+
+export const REQUEST_CHOOSE_USERNAME = 'USER/REQUEST_CHOOSE_USERNAME';
+export const SET_CURRENT_PLAYER = 'USER/SET_CURRENT_PLAYER';
+export const UPDATE_PLAYERS = 'USER/UPDATE_PLAYERS';
+
+export type RequestChooseUsernameAction = { type: typeof REQUEST_CHOOSE_USERNAME, username: string };
+export type SetCurrentPlayerAction = { type: typeof SET_CURRENT_PLAYER, player: ApiPlayer };
+export type UpdatePlayersAction = { type: typeof UPDATE_PLAYERS, players: Map<string, ApiPlayer> };
+
+export type PlayerAction = RequestChooseUsernameAction | SetCurrentPlayerAction | UpdatePlayersAction;
+
+export const actions = {
+ chooseUsername: (username: string): RequestChooseUsernameAction => ({ type: REQUEST_CHOOSE_USERNAME, username }),
+ setCurrentPlayer: (player: ApiPlayer): SetCurrentPlayerAction => ({ type: SET_CURRENT_PLAYER, player }),
+};
bgstack15