Jack Mallers
7 years ago
4 changed files with 102 additions and 6 deletions
@ -0,0 +1,46 @@ |
|||
import { ipcRenderer } from 'electron' |
|||
// ------------------------------------
|
|||
// Constants
|
|||
// ------------------------------------
|
|||
export const GET_ADDRESS = 'GET_ADDRESS' |
|||
export const RECEIVE_ADDRESS = 'RECEIVE_ADDRESS' |
|||
|
|||
// ------------------------------------
|
|||
// Actions
|
|||
// ------------------------------------
|
|||
export function getAddress() { |
|||
return { |
|||
type: GET_ADDRESS |
|||
} |
|||
} |
|||
|
|||
// Send IPC event for getinfo
|
|||
export const newAddress = (type) => async (dispatch) => { |
|||
dispatch(getAddress()) |
|||
ipcRenderer.send('lnd', { msg: 'newaddress' }) |
|||
} |
|||
|
|||
// Receive IPC event for info
|
|||
export const receiveAddress = (event, address) => dispatch => dispatch({ type: RECEIVE_INFO, address }) |
|||
|
|||
// ------------------------------------
|
|||
// Action Handlers
|
|||
// ------------------------------------
|
|||
const ACTION_HANDLERS = { |
|||
[GET_ADDRESS]: state => ({ ...state, infoLoading: true }), |
|||
[RECEIVE_ADDRESS]: (state, { address }) => ({ ...state, addressLoading: false, address }) |
|||
} |
|||
|
|||
// ------------------------------------
|
|||
// Reducer
|
|||
// ------------------------------------
|
|||
const initialState = { |
|||
addressLoading: false, |
|||
address: '' |
|||
} |
|||
|
|||
export default function addressReducer(state = initialState, action) { |
|||
const handler = ACTION_HANDLERS[action.type] |
|||
|
|||
return handler ? handler(state, action) : state |
|||
} |
Loading…
Reference in new issue