2018-04-16 21:19:50 +00:00
|
|
|
/* @flow */
|
|
|
|
|
2018-08-14 13:18:16 +00:00
|
|
|
import * as ACCOUNT from 'actions/constants/account';
|
2018-09-23 06:49:43 +00:00
|
|
|
import type { Action } from 'flowtype';
|
2018-09-12 11:25:21 +00:00
|
|
|
import type { Account, State } from 'reducers/AccountsReducer';
|
2018-04-16 21:19:50 +00:00
|
|
|
|
2018-05-10 12:40:25 +00:00
|
|
|
export type AccountFromStorageAction = {
|
|
|
|
type: typeof ACCOUNT.FROM_STORAGE,
|
2018-04-23 10:20:15 +00:00
|
|
|
payload: State
|
|
|
|
}
|
|
|
|
|
2018-05-10 12:40:25 +00:00
|
|
|
export type AccountCreateAction = {
|
|
|
|
type: typeof ACCOUNT.CREATE,
|
2018-09-12 11:25:21 +00:00
|
|
|
payload: Account,
|
|
|
|
}
|
|
|
|
|
|
|
|
export type AccountUpdateAction = {
|
|
|
|
type: typeof ACCOUNT.UPDATE,
|
|
|
|
payload: Account,
|
2018-04-23 10:20:15 +00:00
|
|
|
}
|
|
|
|
|
2018-05-10 12:40:25 +00:00
|
|
|
export type AccountSetBalanceAction = {
|
|
|
|
type: typeof ACCOUNT.SET_BALANCE,
|
2018-04-23 10:20:15 +00:00
|
|
|
address: string,
|
|
|
|
network: string,
|
2018-05-10 11:52:51 +00:00
|
|
|
deviceState: string,
|
2018-04-23 10:20:15 +00:00
|
|
|
balance: string
|
|
|
|
}
|
|
|
|
|
2018-05-10 12:40:25 +00:00
|
|
|
export type AccountSetNonceAction = {
|
|
|
|
type: typeof ACCOUNT.SET_NONCE,
|
2018-04-23 10:20:15 +00:00
|
|
|
address: string,
|
|
|
|
network: string,
|
2018-05-10 11:52:51 +00:00
|
|
|
deviceState: string,
|
2018-04-23 10:20:15 +00:00
|
|
|
nonce: number
|
|
|
|
}
|
|
|
|
|
2018-09-05 14:17:50 +00:00
|
|
|
export type AccountAction =
|
|
|
|
AccountFromStorageAction
|
2018-09-12 11:25:21 +00:00
|
|
|
| AccountCreateAction
|
|
|
|
| AccountUpdateAction
|
|
|
|
| AccountSetBalanceAction
|
|
|
|
| AccountSetNonceAction;
|
2018-09-05 14:17:50 +00:00
|
|
|
|
2018-07-30 10:52:13 +00:00
|
|
|
export const setBalance = (address: string, network: string, deviceState: string, balance: string): Action => ({
|
|
|
|
type: ACCOUNT.SET_BALANCE,
|
|
|
|
address,
|
|
|
|
network,
|
|
|
|
deviceState,
|
|
|
|
balance,
|
|
|
|
});
|
|
|
|
|
|
|
|
export const setNonce = (address: string, network: string, deviceState: string, nonce: number): Action => ({
|
|
|
|
type: ACCOUNT.SET_NONCE,
|
|
|
|
address,
|
|
|
|
network,
|
|
|
|
deviceState,
|
|
|
|
nonce,
|
2018-09-05 14:17:50 +00:00
|
|
|
});
|
2018-09-12 11:25:21 +00:00
|
|
|
|
|
|
|
export const update = (account: Account): Action => ({
|
|
|
|
type: ACCOUNT.UPDATE,
|
2018-09-23 06:49:43 +00:00
|
|
|
payload: account,
|
2018-09-12 11:25:21 +00:00
|
|
|
});
|