From 068310679cabaa5fc7ab004aad81be70761297ad Mon Sep 17 00:00:00 2001 From: QuickMythril Date: Thu, 7 Mar 2024 14:18:56 -0500 Subject: [PATCH] Consolidate "sendCoin" functions --- core/src/plugins/routes.js | 101 ++++++-------------------- core/src/tradebot/trade-bot-routes.js | 101 ++++++-------------------- crypto/api/tradeRequest.js | 75 +++---------------- 3 files changed, 57 insertions(+), 220 deletions(-) diff --git a/core/src/plugins/routes.js b/core/src/plugins/routes.js index 01f33410..c70ad48f 100644 --- a/core/src/plugins/routes.js +++ b/core/src/plugins/routes.js @@ -26,12 +26,23 @@ const tradeBotRespondRequest = api.tradeBotRespondRequest const signTradeBotTxn = api.signTradeBotTxn const deleteTradeOffer = api.deleteTradeOffer const cancelAllOffers = api.cancelAllOffers -const sendBtc = api.sendBtc -const sendLtc = api.sendLtc -const sendDoge = api.sendDoge -const sendDgb = api.sendDgb -const sendRvn = api.sendRvn -const sendArrr = api.sendArrr +const sendCoin = async (coin, req) => { + let response + try { + const sendFn = api[`send${coin}`] + if (sendFn) { + const res = await sendFn(req.data) + response = res + } else { + response = `Unsupported blockchain: ${coin}` + } + } catch (e) { + console.error(e) + console.error(e.message) + response = e.message + } + return response +} export const routes = { registerUrl: async (req) => { @@ -397,81 +408,15 @@ export const routes = { return response }, - sendBtc: async (req) => { - let response - try { - const res = await sendBtc(req.data) - response = res - } catch (e) { - console.error(e) - console.error(e.message) - response = e.message - } - return response - }, + sendBtc: async (req) => sendCoin('Btc', req), - sendLtc: async (req) => { - let response - try { - const res = await sendLtc(req.data) - response = res - } catch (e) { - console.error(e) - console.error(e.message) - response = e.message - } - return response - }, + sendLtc: async (req) => sendCoin('Ltc', req), - sendDoge: async (req) => { - let response - try { - const res = await sendDoge(req.data) - response = res - } catch (e) { - console.error(e) - console.error(e.message) - response = e.message - } - return response - }, + sendDoge: async (req) => sendCoin('Doge', req), - sendDgb: async (req) => { - let response - try { - const res = await sendDgb(req.data) - response = res - } catch (e) { - console.error(e) - console.error(e.message) - response = e.message - } - return response - }, + sendDgb: async (req) => sendCoin('Dgb', req), - sendRvn: async (req) => { - let response - try { - const res = await sendRvn(req.data) - response = res - } catch (e) { - console.error(e) - console.error(e.message) - response = e.message - } - return response - }, + sendRvn: async (req) => sendCoin('Rvn', req), - sendArrr: async (req) => { - let response - try { - const res = await sendArrr(req.data) - response = res - } catch (e) { - console.error(e) - console.error(e.message) - response = e.message - } - return response - }, + sendArrr: async (req) => sendCoin('Arrr', req), } diff --git a/core/src/tradebot/trade-bot-routes.js b/core/src/tradebot/trade-bot-routes.js index 4fb72c4c..ad8a298e 100644 --- a/core/src/tradebot/trade-bot-routes.js +++ b/core/src/tradebot/trade-bot-routes.js @@ -9,12 +9,23 @@ const tradeBotRespondRequest = api.tradeBotRespondRequest const signTradeBotTxn = api.signTradeBotTxn const deleteTradeOffer = api.deleteTradeOffer const cancelAllOffers = api.cancelAllOffers -const sendBtc = api.sendBtc -const sendLtc = api.sendLtc -const sendDoge = api.sendDoge -const sendDgb = api.sendDgb -const sendRvn = api.sendRvn -const sendArrr = api.sendArrr +const sendCoin = async (coin, req) => { + let response + try { + const sendFn = api[`send${coin}`] + if (sendFn) { + const res = await sendFn(req.data) + response = res + } else { + response = `Unsupported blockchain: ${coin}` + } + } catch (e) { + console.error(e) + console.error(e.message) + response = e.message + } + return response +} export const routes = { apiCall: async (req) => { @@ -173,81 +184,15 @@ export const routes = { return response }, - sendBtc: async (req) => { - let response - try { - const res = await sendBtc(req.data) - response = res - } catch (e) { - console.error(e) - console.error(e.message) - response = e.message - } - return response - }, + sendBtc: async (req) => sendCoin('Btc', req), - sendLtc: async (req) => { - let response - try { - const res = await sendLtc(req.data) - response = res - } catch (e) { - console.error(e) - console.error(e.message) - response = e.message - } - return response - }, + sendLtc: async (req) => sendCoin('Ltc', req), - sendDoge: async (req) => { - let response - try { - const res = await sendDoge(req.data) - response = res - } catch (e) { - console.error(e) - console.error(e.message) - response = e.message - } - return response - }, + sendDoge: async (req) => sendCoin('Doge', req), - sendDgb: async (req) => { - let response - try { - const res = await sendDgb(req.data) - response = res - } catch (e) { - console.error(e) - console.error(e.message) - response = e.message - } - return response - }, + sendDgb: async (req) => sendCoin('Dgb', req), - sendRvn: async (req) => { - let response - try { - const res = await sendRvn(req.data) - response = res - } catch (e) { - console.error(e) - console.error(e.message) - response = e.message - } - return response - }, + sendRvn: async (req) => sendCoin('Rvn', req), - sendArrr: async (req) => { - let response - try { - const res = await sendArrr(req.data) - response = res - } catch (e) { - console.error(e) - console.error(e.message) - response = e.message - } - return response - }, + sendArrr: async (req) => sendCoin('Arrr', req), } diff --git a/crypto/api/tradeRequest.js b/crypto/api/tradeRequest.js index 892c1318..6a896dec 100644 --- a/crypto/api/tradeRequest.js +++ b/crypto/api/tradeRequest.js @@ -55,11 +55,10 @@ export const deleteTradeOffer = (requestObject) => { }) } -// Send BTC -export const sendBtc = (requestObject) => { +// Send Coin +const sendCoin = (coin, requestObject) => { const myNode = window.parent.reduxStore.getState().app.nodeConfig.knownNodes[window.parent.reduxStore.getState().app.nodeConfig.node] - - return request(`/crosschain/btc/send?apiKey=${myNode.apiKey}`, { + return request(`/crosschain/${coin}/send?apiKey=${myNode.apiKey}`, { method: 'POST', headers: { 'Accept': 'application/json', @@ -69,72 +68,20 @@ export const sendBtc = (requestObject) => { }) } -// Send LTC -export const sendLtc = (requestObject) => { - const myNode = window.parent.reduxStore.getState().app.nodeConfig.knownNodes[window.parent.reduxStore.getState().app.nodeConfig.node] +// Send BTC +export const sendBtc = (requestObject) => sendCoin('btc', requestObject) - return request(`/crosschain/ltc/send?apiKey=${myNode.apiKey}`, { - method: 'POST', - headers: { - 'Accept': 'application/json', - 'Content-Type': 'application/json' - }, - body: JSON.stringify(requestObject) - }) -} +// Send LTC +export const sendLtc = (requestObject) => sendCoin('ltc', requestObject) // Send DOGE -export const sendDoge = (requestObject) => { - const myNode = window.parent.reduxStore.getState().app.nodeConfig.knownNodes[window.parent.reduxStore.getState().app.nodeConfig.node] - - return request(`/crosschain/doge/send?apiKey=${myNode.apiKey}`, { - method: 'POST', - headers: { - 'Accept': 'application/json', - 'Content-Type': 'application/json' - }, - body: JSON.stringify(requestObject) - }) -} +export const sendDoge = (requestObject) => sendCoin('doge', requestObject) // Send DGB -export const sendDgb = (requestObject) => { - const myNode = window.parent.reduxStore.getState().app.nodeConfig.knownNodes[window.parent.reduxStore.getState().app.nodeConfig.node] - - return request(`/crosschain/dgb/send?apiKey=${myNode.apiKey}`, { - method: 'POST', - headers: { - 'Accept': 'application/json', - 'Content-Type': 'application/json' - }, - body: JSON.stringify(requestObject) - }) -} +export const sendDgb = (requestObject) => sendCoin('dgb', requestObject) // Send RVN -export const sendRvn = (requestObject) => { - const myNode = window.parent.reduxStore.getState().app.nodeConfig.knownNodes[window.parent.reduxStore.getState().app.nodeConfig.node] - - return request(`/crosschain/rvn/send?apiKey=${myNode.apiKey}`, { - method: 'POST', - headers: { - 'Accept': 'application/json', - 'Content-Type': 'application/json' - }, - body: JSON.stringify(requestObject) - }) -} +export const sendRvn = (requestObject) => sendCoin('rvn', requestObject) // Send ARRR -export const sendArrr = (requestObject) => { - const myNode = window.parent.reduxStore.getState().app.nodeConfig.knownNodes[window.parent.reduxStore.getState().app.nodeConfig.node] - - return request(`/crosschain/arrr/send?apiKey=${myNode.apiKey}`, { - method: 'POST', - headers: { - 'Accept': 'application/json', - 'Content-Type': 'application/json' - }, - body: JSON.stringify(requestObject) - }) -} +export const sendArrr = (requestObject) => sendCoin('arrr', requestObject)