♻️ Refactor

This commit is contained in:
Liyas Thomas
2020-01-19 12:37:19 +05:30
parent d9feffa630
commit 5458debe35
6 changed files with 53 additions and 51 deletions

View File

@@ -69,8 +69,8 @@ _Customized themes are synced with local session storage_
- Instant loading with [Service Workers](https://developers.google.com/web/fundamentals/primers/service-workers)
- Offline support
- Low RAM/memory and CPU usage
- [Add to Home Screen](https://developers.google.com/web/fundamentals/app-install-banners) (button in footer)
- [Desktop PWA](https://developers.google.com/web/progressive-web-apps/desktop) support (button in footer)
- Add to Home Screen
- Desktop PWA
- ([full features](https://developers.google.com/web/progressive-web-apps))
🚀 **Request**: Retrieve response from endpoint instantly.

View File

@@ -7,9 +7,8 @@ const DEFAULT_THEME = "twilight";
import ace from "ace-builds";
import * as gql from "graphql";
import "ace-builds/webpack-resolver";
import debounce from '../../functions/utils/debounce';
import debounce from "../../functions/utils/debounce";
export default {
props: {
@@ -71,9 +70,7 @@ export default {
editor.on("change", () => {
const content = editor.getValue();
this.$emit("input", content);
this.parseContents(content)
this.parseContents(content);
this.cacheValue = content;
});
@@ -91,16 +88,18 @@ export default {
}
},
parseContents: debounce(function (content) {
parseContents: debounce(function(content) {
try {
gql.parse(content);
} catch (e) {
this.editor.session.setAnnotations([{
row: e.locations[0].line - 1,
column: e.locations[0].column - 1,
text: e.message,
type: "error"
}]);
this.editor.session.setAnnotations([
{
row: e.locations[0].line - 1,
column: e.locations[0].column - 1,
text: e.message,
type: "error"
}
]);
}
}, 2000)
},

View File

@@ -1,13 +1,12 @@
import axios from "axios";
const axiosWithProxy = async (req, store) => {
const axiosWithProxy = async (req, { state }) => {
const { data } = await axios.post(
store.state.postwoman.settings.PROXY_URL ||
"https://postwoman.apollotv.xyz/",
state.postwoman.settings.PROXY_URL || "https://postwoman.apollotv.xyz/",
req
);
return data;
}
};
const axiosWithoutProxy = async (req, _store) => {
const res = await axios(req);
@@ -19,6 +18,6 @@ const axiosStrategy = (req, store) => {
return axiosWithProxy(req, store);
}
return axiosWithoutProxy(req, store);
}
};
export default axiosStrategy;

View File

@@ -1,45 +1,50 @@
const firefoxWithProxy = (req, { state }) =>
new Promise((resolve, reject) => {
const eventListener = event => {
window.removeEventListener("firefoxExtSendRequestComplete", event);
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);
window.addEventListener("firefoxExtSendRequestComplete", eventListener);
window.firefoxExtSendRequest({
method: "post",
url: store.state.postwoman.settings.PROXY_URL || "https://postwoman.apollotv.xyz/",
data: req
window.firefoxExtSendRequest({
method: "post",
url:
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);
const firefoxWithoutProxy = (req, _store) =>
new Promise((resolve, reject) => {
const eventListener = ({ detail }) => {
window.removeEventListener(
"firefoxExtSendRequestComplete",
eventListener
);
if (event.detail.error) {
reject(JSON.parse(event.detail.error));
} else {
resolve(JSON.parse(event.detail.response));
}
};
if (detail.error) {
reject(JSON.parse(detail.error));
} else {
resolve(JSON.parse(detail.response));
}
};
window.addEventListener("firefoxExtSendRequestComplete", eventListener);
window.addEventListener("firefoxExtSendRequestComplete", eventListener);
window.firefoxExtSendRequest(req);
});
window.firefoxExtSendRequest(req);
});
const firefoxStrategy = (req, store) => {
if (store.state.postwoman.settings.PROXY_ENABLED) {
return firefoxWithProxy(req, store);
}
return firefoxWithoutProxy(req, store);
}
};
export default firefoxStrategy;

View File

@@ -619,8 +619,7 @@ export default {
showExtensions: false,
showShortcuts: false,
showSupport: false,
firefoxExtInstalled:
window.firefoxExtSendRequest !== undefined ? true : false,
firefoxExtInstalled: window.firefoxExtSendRequest,
chromeExtInstalled: false
};
},

View File

@@ -820,7 +820,7 @@ export default {
});
} catch (error) {
this.$nuxt.$loading.finish();
this.schemaString = `${error}. ${check_console_details}`;
this.schemaString = `${error}. ${this.$t("check_console_details")}`;
this.$toast.error(`${error} ${this.$t("f12_details")}`, {
icon: "error"
});