From 2a51ec6d9f410a5b784efb09dd7a6468cbecee34 Mon Sep 17 00:00:00 2001 From: Andrew Bastin Date: Fri, 17 Jan 2020 13:27:37 -0500 Subject: [PATCH 1/7] Moved proxy code to be handled in each strategy --- functions/network.js | 5 ----- functions/strategies/AxiosStrategy.js | 17 ++++++++++++++++- functions/strategies/ProxyStrategy.js | 12 ------------ 3 files changed, 16 insertions(+), 18 deletions(-) delete mode 100644 functions/strategies/ProxyStrategy.js diff --git a/functions/network.js b/functions/network.js index 7ed233cf8..a2c885be5 100644 --- a/functions/network.js +++ b/functions/network.js @@ -1,5 +1,4 @@ import AxiosStrategy from "./strategies/AxiosStrategy"; -import ProxyStrategy from "./strategies/ProxyStrategy"; import FirefoxStrategy from "./strategies/FirefoxStrategy"; @@ -10,10 +9,6 @@ const runAppropriateStrategy = (req, store) => { return FirefoxStrategy(req, store); } - if (store.state.postwoman.settings.PROXY_ENABLED) { - return ProxyStrategy(req, store); - } - return AxiosStrategy(req, store); } diff --git a/functions/strategies/AxiosStrategy.js b/functions/strategies/AxiosStrategy.js index 9bef30aef..885ed2f1e 100644 --- a/functions/strategies/AxiosStrategy.js +++ b/functions/strategies/AxiosStrategy.js @@ -1,8 +1,23 @@ import axios from "axios"; -const axiosStrategy = async (req, _store) => { +const axiosWithProxy = async (req, store) => { + const { data } = await axios.post( + store.state.postwoman.settings.PROXY_URL || + "https://postwoman.apollotv.xyz/", + req + ); + return data; +} + +const axiosWithoutProxy = async (req, _store) => { const res = await axios(req); return res; }; +const axiosStrategy = (req, store) => { + if (store.state.postwoman.settings.PROXY_ENABLED) + return axiosWithProxy(req, store); + else return axiosWithoutProxy(req, store); +} + export default axiosStrategy; diff --git a/functions/strategies/ProxyStrategy.js b/functions/strategies/ProxyStrategy.js deleted file mode 100644 index 0b6f50b0f..000000000 --- a/functions/strategies/ProxyStrategy.js +++ /dev/null @@ -1,12 +0,0 @@ -import axios from "axios"; - -const proxyStrategy = async (req, store) => { - const { data } = await axios.post( - store.state.postwoman.settings.PROXY_URL || - "https://postwoman.apollotv.xyz/", - req - ); - return data; -}; - -export default proxyStrategy; From 951266e52946c99a4acf7d8818795a5e5d510562 Mon Sep 17 00:00:00 2001 From: Andrew Bastin Date: Fri, 17 Jan 2020 13:28:04 -0500 Subject: [PATCH 2/7] Added proxy support to FirefoxStrategy --- functions/strategies/FirefoxStrategy.js | 25 ++++++++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) diff --git a/functions/strategies/FirefoxStrategy.js b/functions/strategies/FirefoxStrategy.js index 77b15f453..ecd7b133a 100644 --- a/functions/strategies/FirefoxStrategy.js +++ b/functions/strategies/FirefoxStrategy.js @@ -1,5 +1,22 @@ -const firefoxStrategy = (req, _store) => new Promise((resolve, reject) => { +const firefoxWithProxy = (req, store) => new Promise((resolve, reject) => { + const eventListener = (event) => { + window.removeEventListener("firefoxExtSendRequestComplete", event); + + if (event.detail.error) reject(JSON.parse(event.detail.error)); + else resolve(JSON.parse(event.detail.response)); + }; + + window.addEventListener("firefoxExtSendRequestComplete", eventListener); + + window.firefoxExtSendRequest({ + method: "post", + url: store.state.postwoman.settings.PROXY_URL || "https://postwoman.apollotv.xyz/", + data: req + }); +}); + +const firefoxWithoutProxy = (req, _store) => new Promise((resolve, reject) => { const eventListener = (event) => { window.removeEventListener("firefoxExtSendRequestComplete", eventListener); @@ -12,4 +29,10 @@ const firefoxStrategy = (req, _store) => new Promise((resolve, reject) => { window.firefoxExtSendRequest(req); }); +const firefoxStrategy = (req, store) => { + if (store.state.postwoman.settings.PROXY_ENABLED) + return firefoxWithProxy(req, store); + else return firefoxWithoutProxy(req, store); +} + export default firefoxStrategy; From 730018b45ff8036955b301eff81dc4753b07641c Mon Sep 17 00:00:00 2001 From: Andrew Bastin Date: Sat, 18 Jan 2020 04:16:51 -0500 Subject: [PATCH 3/7] Improve strategy code redability --- functions/strategies/AxiosStrategy.js | 3 ++- functions/strategies/FirefoxStrategy.js | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/functions/strategies/AxiosStrategy.js b/functions/strategies/AxiosStrategy.js index 885ed2f1e..3c237ea6c 100644 --- a/functions/strategies/AxiosStrategy.js +++ b/functions/strategies/AxiosStrategy.js @@ -15,8 +15,9 @@ const axiosWithoutProxy = async (req, _store) => { }; const axiosStrategy = (req, store) => { - if (store.state.postwoman.settings.PROXY_ENABLED) + if (store.state.postwoman.settings.PROXY_ENABLED) { return axiosWithProxy(req, store); + } else return axiosWithoutProxy(req, store); } diff --git a/functions/strategies/FirefoxStrategy.js b/functions/strategies/FirefoxStrategy.js index ecd7b133a..cfe47d059 100644 --- a/functions/strategies/FirefoxStrategy.js +++ b/functions/strategies/FirefoxStrategy.js @@ -30,8 +30,9 @@ const firefoxWithoutProxy = (req, _store) => new Promise((resolve, reject) => { }); const firefoxStrategy = (req, store) => { - if (store.state.postwoman.settings.PROXY_ENABLED) + if (store.state.postwoman.settings.PROXY_ENABLED) { return firefoxWithProxy(req, store); + } else return firefoxWithoutProxy(req, store); } From a1568a98d4cbba0959affb9336bf4db8306bbfcf Mon Sep 17 00:00:00 2001 From: Andrew Bastin Date: Sat, 18 Jan 2020 04:22:21 -0500 Subject: [PATCH 4/7] Update functions/strategies/FirefoxStrategy.js Co-Authored-By: James George --- functions/strategies/FirefoxStrategy.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/functions/strategies/FirefoxStrategy.js b/functions/strategies/FirefoxStrategy.js index cfe47d059..aeda4c146 100644 --- a/functions/strategies/FirefoxStrategy.js +++ b/functions/strategies/FirefoxStrategy.js @@ -33,7 +33,7 @@ const firefoxStrategy = (req, store) => { if (store.state.postwoman.settings.PROXY_ENABLED) { return firefoxWithProxy(req, store); } - else return firefoxWithoutProxy(req, store); + return firefoxWithoutProxy(req, store); } export default firefoxStrategy; From 8e86e4c8e8d02fcce35f844b0f586ae163e181d4 Mon Sep 17 00:00:00 2001 From: Andrew Bastin Date: Sat, 18 Jan 2020 04:22:30 -0500 Subject: [PATCH 5/7] Update functions/strategies/AxiosStrategy.js Co-Authored-By: James George --- functions/strategies/AxiosStrategy.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/functions/strategies/AxiosStrategy.js b/functions/strategies/AxiosStrategy.js index 3c237ea6c..10ab56a2f 100644 --- a/functions/strategies/AxiosStrategy.js +++ b/functions/strategies/AxiosStrategy.js @@ -18,7 +18,7 @@ const axiosStrategy = (req, store) => { if (store.state.postwoman.settings.PROXY_ENABLED) { return axiosWithProxy(req, store); } - else return axiosWithoutProxy(req, store); + return axiosWithoutProxy(req, store); } export default axiosStrategy; From 3b96f85c55490f5f5312b43a6dec9f84cf8040fa Mon Sep 17 00:00:00 2001 From: Andrew Bastin Date: Sat, 18 Jan 2020 04:30:24 -0500 Subject: [PATCH 6/7] Make James happy by doing proper code refactors --- functions/strategies/FirefoxStrategy.js | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/functions/strategies/FirefoxStrategy.js b/functions/strategies/FirefoxStrategy.js index aeda4c146..1e12ba119 100644 --- a/functions/strategies/FirefoxStrategy.js +++ b/functions/strategies/FirefoxStrategy.js @@ -3,8 +3,11 @@ const firefoxWithProxy = (req, store) => new Promise((resolve, reject) => { const eventListener = (event) => { window.removeEventListener("firefoxExtSendRequestComplete", event); - if (event.detail.error) reject(JSON.parse(event.detail.error)); - else resolve(JSON.parse(event.detail.response)); + if (event.detail.error) { + reject(JSON.parse(event.detail.error)); + } else { + resolve(JSON.parse(event.detail.response)); + } }; window.addEventListener("firefoxExtSendRequestComplete", eventListener); @@ -20,8 +23,11 @@ const firefoxWithoutProxy = (req, _store) => new Promise((resolve, reject) => { const eventListener = (event) => { window.removeEventListener("firefoxExtSendRequestComplete", eventListener); - if (event.detail.error) reject(JSON.parse(event.detail.error)); - else resolve(JSON.parse(event.detail.response)); + if (event.detail.error) { + reject(JSON.parse(event.detail.error)); + } else { + resolve(JSON.parse(event.detail.response)); + } }; window.addEventListener("firefoxExtSendRequestComplete", eventListener); @@ -32,8 +38,9 @@ const firefoxWithoutProxy = (req, _store) => new Promise((resolve, reject) => { const firefoxStrategy = (req, store) => { if (store.state.postwoman.settings.PROXY_ENABLED) { return firefoxWithProxy(req, store); + } else { + return firefoxWithoutProxy(req, store); } - return firefoxWithoutProxy(req, store); } export default firefoxStrategy; From aa056ff1c159cc971a506cb4e1917a30afc67aa9 Mon Sep 17 00:00:00 2001 From: jamesgeorge007 Date: Sat, 18 Jan 2020 15:22:59 +0530 Subject: [PATCH 7/7] refactor: remove extraneous else --- functions/strategies/FirefoxStrategy.js | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/functions/strategies/FirefoxStrategy.js b/functions/strategies/FirefoxStrategy.js index 1e12ba119..10d5a09ec 100644 --- a/functions/strategies/FirefoxStrategy.js +++ b/functions/strategies/FirefoxStrategy.js @@ -38,9 +38,8 @@ const firefoxWithoutProxy = (req, _store) => new Promise((resolve, reject) => { const firefoxStrategy = (req, store) => { if (store.state.postwoman.settings.PROXY_ENABLED) { return firefoxWithProxy(req, store); - } else { - return firefoxWithoutProxy(req, store); } + return firefoxWithoutProxy(req, store); } export default firefoxStrategy;