summaryrefslogtreecommitdiff
path: root/frontend/src/redux/actions
diff options
context:
space:
mode:
authorJoffrey BION <joffrey.bion@gmail.com>2019-05-03 00:43:11 +0200
committerJoffrey BION <joffrey.bion@gmail.com>2019-05-03 00:43:11 +0200
commitd7f9f2470b972fbdc5b9b0aec2f939f1799968c8 (patch)
treeca3eaf2c90769d1a71c52d24a2fab9e568f18ee6 /frontend/src/redux/actions
parentConvert api package to typescript (diff)
downloadseven-wonders-d7f9f2470b972fbdc5b9b0aec2f939f1799968c8.tar.gz
seven-wonders-d7f9f2470b972fbdc5b9b0aec2f939f1799968c8.tar.bz2
seven-wonders-d7f9f2470b972fbdc5b9b0aec2f939f1799968c8.zip
Convert redux actions to typescript
Diffstat (limited to 'frontend/src/redux/actions')
-rw-r--r--frontend/src/redux/actions/all.js5
-rw-r--r--frontend/src/redux/actions/all.ts5
-rw-r--r--frontend/src/redux/actions/game.js34
-rw-r--r--frontend/src/redux/actions/game.ts32
-rw-r--r--frontend/src/redux/actions/lobby.js34
-rw-r--r--frontend/src/redux/actions/lobby.ts32
-rw-r--r--frontend/src/redux/actions/user.js25
-rw-r--r--frontend/src/redux/actions/user.ts17
8 files changed, 86 insertions, 98 deletions
diff --git a/frontend/src/redux/actions/all.js b/frontend/src/redux/actions/all.js
deleted file mode 100644
index 12522819..00000000
--- a/frontend/src/redux/actions/all.js
+++ /dev/null
@@ -1,5 +0,0 @@
-import type { GameAction } from './game';
-import type { LobbyAction } from './lobby';
-import type { PlayerAction } from './user';
-
-export type Action = PlayerAction | LobbyAction | GameAction
diff --git a/frontend/src/redux/actions/all.ts b/frontend/src/redux/actions/all.ts
new file mode 100644
index 00000000..57d2a443
--- /dev/null
+++ b/frontend/src/redux/actions/all.ts
@@ -0,0 +1,5 @@
+import { GameAction } from './game';
+import { LobbyAction } from './lobby';
+import { PlayerAction } from './user';
+
+export type Action = PlayerAction | LobbyAction | GameAction
diff --git a/frontend/src/redux/actions/game.js b/frontend/src/redux/actions/game.js
deleted file mode 100644
index 434aa8d3..00000000
--- a/frontend/src/redux/actions/game.js
+++ /dev/null
@@ -1,34 +0,0 @@
-import type { ApiPlayerMove, ApiPlayerTurnInfo, ApiPreparedCard, ApiTable } from '../../api/model';
-
-export const types = {
- REQUEST_SAY_READY: 'GAME/REQUEST_SAY_READY',
- REQUEST_PREPARE_MOVE: 'GAME/REQUEST_PREPARE_MOVE',
- PLAYER_READY_RECEIVED: 'GAME/PLAYER_READY_RECEIVED',
- TABLE_UPDATE_RECEIVED: 'GAME/TABLE_UPDATE_RECEIVED',
- PREPARED_CARD_RECEIVED: 'GAME/PREPARED_CARD_RECEIVED',
- TURN_INFO_RECEIVED: 'GAME/TURN_INFO_RECEIVED',
-};
-
-export type SayReadyAction = { type: 'GAME/REQUEST_SAY_READY' };
-export type PrepareMoveAction = { type: 'GAME/REQUEST_PREPARE_MOVE', move: ApiPlayerMove };
-export type PlayerReadyEvent = { type: 'GAME/PLAYER_READY_RECEIVED', username: string };
-export type TableUpdateEvent = { type: 'GAME/TABLE_UPDATE_RECEIVED', table: ApiTable };
-export type PreparedCardEvent = { type: 'GAME/PREPARED_CARD_RECEIVED', card: ApiPreparedCard };
-export type TurnInfoEvent = { type: 'GAME/TURN_INFO_RECEIVED', turnInfo: ApiPlayerTurnInfo };
-
-export type GameAction =
- SayReadyAction
- | PrepareMoveAction
- | PlayerReadyEvent
- | TableUpdateEvent
- | PreparedCardEvent
- | TurnInfoEvent;
-
-export const actions = {
- sayReady: () => ({ type: types.REQUEST_SAY_READY }),
- prepareMove: (move: ApiPlayerMove) => ({ type: types.REQUEST_PREPARE_MOVE, move }),
- receivePlayerReady: (username: string) => ({ type: types.PLAYER_READY_RECEIVED, username }),
- receiveTableUpdate: (table: ApiTable) => ({ type: types.TABLE_UPDATE_RECEIVED, table }),
- receivePreparedCard: (card: ApiPreparedCard) => ({ type: types.PREPARED_CARD_RECEIVED, card }),
- receiveTurnInfo: (turnInfo: ApiPlayerTurnInfo) => ({ type: types.TURN_INFO_RECEIVED, turnInfo }),
-};
diff --git a/frontend/src/redux/actions/game.ts b/frontend/src/redux/actions/game.ts
new file mode 100644
index 00000000..b67ea1dc
--- /dev/null
+++ b/frontend/src/redux/actions/game.ts
@@ -0,0 +1,32 @@
+import { ApiPlayerMove, ApiPlayerTurnInfo, ApiPreparedCard, ApiTable } from '../../api/model';
+
+export const REQUEST_SAY_READY = 'GAME/REQUEST_SAY_READY';
+export const REQUEST_PREPARE_MOVE = 'GAME/REQUEST_PREPARE_MOVE';
+export const PLAYER_READY_RECEIVED = 'GAME/PLAYER_READY_RECEIVED';
+export const TABLE_UPDATE_RECEIVED = 'GAME/TABLE_UPDATE_RECEIVED';
+export const PREPARED_CARD_RECEIVED = 'GAME/PREPARED_CARD_RECEIVED';
+export const TURN_INFO_RECEIVED = 'GAME/TURN_INFO_RECEIVED';
+
+export type SayReadyAction = { type: typeof REQUEST_SAY_READY };
+export type PrepareMoveAction = { type: typeof REQUEST_PREPARE_MOVE, move: ApiPlayerMove };
+export type PlayerReadyEvent = { type: typeof PLAYER_READY_RECEIVED, username: string };
+export type TableUpdateEvent = { type: typeof TABLE_UPDATE_RECEIVED, table: ApiTable };
+export type PreparedCardEvent = { type: typeof PREPARED_CARD_RECEIVED, card: ApiPreparedCard };
+export type TurnInfoEvent = { type: typeof TURN_INFO_RECEIVED, turnInfo: ApiPlayerTurnInfo };
+
+export type GameAction =
+ SayReadyAction
+ | PrepareMoveAction
+ | PlayerReadyEvent
+ | TableUpdateEvent
+ | PreparedCardEvent
+ | TurnInfoEvent;
+
+export const actions = {
+ sayReady: () => ({ type: REQUEST_SAY_READY }),
+ prepareMove: (move: ApiPlayerMove) => ({ type: REQUEST_PREPARE_MOVE, move }),
+ receivePlayerReady: (username: string) => ({ type: PLAYER_READY_RECEIVED, username }),
+ receiveTableUpdate: (table: ApiTable) => ({ type: TABLE_UPDATE_RECEIVED, table }),
+ receivePreparedCard: (card: ApiPreparedCard) => ({ type: PREPARED_CARD_RECEIVED, card }),
+ receiveTurnInfo: (turnInfo: ApiPlayerTurnInfo) => ({ type: TURN_INFO_RECEIVED, turnInfo }),
+};
diff --git a/frontend/src/redux/actions/lobby.js b/frontend/src/redux/actions/lobby.js
deleted file mode 100644
index 8768ec80..00000000
--- a/frontend/src/redux/actions/lobby.js
+++ /dev/null
@@ -1,34 +0,0 @@
-import type { ApiLobby } from '../../api/model';
-
-export const types = {
- UPDATE_GAMES: 'GAMES/UPDATE_GAMES',
- REQUEST_CREATE_GAME: 'GAMES/REQUEST_CREATE_GAME',
- REQUEST_JOIN_GAME: 'GAMES/REQUEST_JOIN_GAME',
- REQUEST_START_GAME: 'GAMES/REQUEST_START_GAME',
- ENTER_LOBBY: 'GAMES/ENTER_LOBBY',
- ENTER_GAME: 'GAMES/ENTER_GAME',
-};
-
-export type UpdateGamesAction = { type: 'GAMES/UPDATE_GAMES', games: ApiLobby[]};
-export type RequestCreateGameAction = { type: 'GAMES/REQUEST_CREATE_GAME', gameName: string };
-export type RequestJoinGameAction = { type: 'GAMES/REQUEST_JOIN_GAME', gameId: number };
-export type RequestStartGameAction = { type: 'GAMES/REQUEST_START_GAME' };
-export type EnterLobbyAction = { type: 'GAMES/ENTER_LOBBY', gameId: number };
-export type EnterGameAction = { type: 'GAMES/ENTER_GAME', gameId: number };
-
-export type LobbyAction =
- | UpdateGamesAction
- | RequestCreateGameAction
- | RequestJoinGameAction
- | RequestStartGameAction
- | EnterLobbyAction
- | EnterGameAction;
-
-export const actions = {
- updateGames: (games: ApiLobby[]): UpdateGamesAction => ({ type: types.UPDATE_GAMES, games }),
- requestJoinGame: (gameId: number): RequestJoinGameAction => ({ type: types.REQUEST_JOIN_GAME, gameId }),
- requestCreateGame: (gameName: string): RequestCreateGameAction => ({ type: types.REQUEST_CREATE_GAME, gameName }),
- requestStartGame: (): RequestStartGameAction => ({ type: types.REQUEST_START_GAME }),
- enterLobby: (gameId: number): EnterLobbyAction => ({ type: types.ENTER_LOBBY, gameId }),
- enterGame: (gameId: number): EnterGameAction => ({ type: types.ENTER_GAME, gameId }),
-};
diff --git a/frontend/src/redux/actions/lobby.ts b/frontend/src/redux/actions/lobby.ts
new file mode 100644
index 00000000..c121b022
--- /dev/null
+++ b/frontend/src/redux/actions/lobby.ts
@@ -0,0 +1,32 @@
+import { ApiLobby } from '../../api/model';
+
+export const UPDATE_GAMES = 'GAMES/UPDATE_GAMES';
+export const REQUEST_CREATE_GAME = 'GAMES/REQUEST_CREATE_GAME';
+export const REQUEST_JOIN_GAME = 'GAMES/REQUEST_JOIN_GAME';
+export const REQUEST_START_GAME = 'GAMES/REQUEST_START_GAME';
+export const ENTER_LOBBY = 'GAMES/ENTER_LOBBY';
+export const ENTER_GAME = 'GAMES/ENTER_GAME';
+
+export type UpdateGamesAction = { type: typeof UPDATE_GAMES, games: ApiLobby[]};
+export type RequestCreateGameAction = { type: typeof REQUEST_CREATE_GAME, gameName: string };
+export type RequestJoinGameAction = { type: typeof REQUEST_JOIN_GAME, gameId: number };
+export type RequestStartGameAction = { type: typeof REQUEST_START_GAME };
+export type EnterLobbyAction = { type: typeof ENTER_LOBBY, gameId: number };
+export type EnterGameAction = { type: typeof ENTER_GAME, gameId: number };
+
+export type LobbyAction =
+ | UpdateGamesAction
+ | RequestCreateGameAction
+ | RequestJoinGameAction
+ | RequestStartGameAction
+ | EnterLobbyAction
+ | EnterGameAction;
+
+export const actions = {
+ updateGames: (games: ApiLobby[]): UpdateGamesAction => ({ type: UPDATE_GAMES, games }),
+ requestJoinGame: (gameId: number): RequestJoinGameAction => ({ type: REQUEST_JOIN_GAME, gameId }),
+ requestCreateGame: (gameName: string): RequestCreateGameAction => ({ type: REQUEST_CREATE_GAME, gameName }),
+ requestStartGame: (): RequestStartGameAction => ({ type: REQUEST_START_GAME }),
+ enterLobby: (gameId: number): EnterLobbyAction => ({ type: ENTER_LOBBY, gameId }),
+ enterGame: (gameId: number): EnterGameAction => ({ type: ENTER_GAME, gameId }),
+};
diff --git a/frontend/src/redux/actions/user.js b/frontend/src/redux/actions/user.js
deleted file mode 100644
index 4406230b..00000000
--- a/frontend/src/redux/actions/user.js
+++ /dev/null
@@ -1,25 +0,0 @@
-import { Map } from 'immutable';
-import type { ApiPlayer } from '../../api/model';
-
-export const types = {
- REQUEST_CHOOSE_USERNAME: 'USER/REQUEST_CHOOSE_USERNAME',
- SET_CURRENT_PLAYER: 'USER/SET_CURRENT_PLAYER',
- UPDATE_PLAYERS: 'USER/UPDATE_PLAYERS',
-};
-
-export type RequestChooseUsernameAction = { type: types.REQUEST_CHOOSE_USERNAME, username: string };
-export type SetCurrentPlayerAction = { type: types.SET_CURRENT_PLAYER, player: ApiPlayer };
-export type UpdatePlayersAction = { type: types.UPDATE_PLAYERS, players: Map<string, ApiPlayer> };
-
-export type PlayerAction = RequestChooseUsernameAction | SetCurrentPlayerAction | UpdatePlayersAction;
-
-export const actions = {
- chooseUsername: (username: string): RequestChooseUsernameAction => ({
- type: types.REQUEST_CHOOSE_USERNAME,
- username,
- }),
- setCurrentPlayer: (player: ApiPlayer): SetCurrentPlayerAction => ({
- type: types.SET_CURRENT_PLAYER,
- player: player,
- }),
-};
diff --git a/frontend/src/redux/actions/user.ts b/frontend/src/redux/actions/user.ts
new file mode 100644
index 00000000..29c85707
--- /dev/null
+++ b/frontend/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