45 lines
1.1 KiB
JavaScript
45 lines
1.1 KiB
JavaScript
|
// @flow
|
||
|
import * as ACTIONS from 'constants/action_types';
|
||
|
import { selectPrefsReady } from 'redux/selectors/sync';
|
||
|
import { doAlertWaitingForSync } from 'redux/actions/app';
|
||
|
import { Lbryio } from 'lbryinc';
|
||
|
|
||
|
export const doAddCoinSwap = (coinSwapInfo: CoinSwapInfo) => (dispatch: Dispatch, getState: GetState) => {
|
||
|
const state = getState();
|
||
|
const ready = selectPrefsReady(state);
|
||
|
|
||
|
if (!ready) {
|
||
|
return dispatch(doAlertWaitingForSync());
|
||
|
}
|
||
|
|
||
|
dispatch({
|
||
|
type: ACTIONS.ADD_COIN_SWAP,
|
||
|
data: coinSwapInfo,
|
||
|
});
|
||
|
};
|
||
|
|
||
|
export const doRemoveCoinSwap = (chargeCode: string) => (dispatch: Dispatch, getState: GetState) => {
|
||
|
const state = getState();
|
||
|
const ready = selectPrefsReady(state);
|
||
|
|
||
|
if (!ready) {
|
||
|
return dispatch(doAlertWaitingForSync());
|
||
|
}
|
||
|
|
||
|
dispatch({
|
||
|
type: ACTIONS.REMOVE_COIN_SWAP,
|
||
|
data: {
|
||
|
chargeCode,
|
||
|
},
|
||
|
});
|
||
|
};
|
||
|
|
||
|
export const doQueryCoinSwapStatus = (chargeCode: string) => (dispatch: Dispatch, getState: GetState) => {
|
||
|
Lbryio.call('btc', 'status', { charge_code: chargeCode }).then((response) => {
|
||
|
dispatch({
|
||
|
type: ACTIONS.COIN_SWAP_STATUS_RECEIVED,
|
||
|
data: response,
|
||
|
});
|
||
|
});
|
||
|
};
|