diff --git a/src/renderer/main/vueapp.js b/src/renderer/main/vueapp.js index 9e9f9955..0627b90f 100644 --- a/src/renderer/main/vueapp.js +++ b/src/renderer/main/vueapp.js @@ -290,6 +290,20 @@ const app = new Vue({ ); }, methods: { + _fetch(url, opts = {}) { + if (app.cfg.advanced.experiments.includes("cider_mirror") === true) { + if (url.includes("api.github.com/")) { + return fetch(url.replace("api.github.com/", "mirror.api.cider.sh/v2/api/"), opts); + } else if (url.includes("raw.githubusercontent.com/")) { + return fetch(url.replace("raw.githubusercontent.com/", "mirror.api.cider.sh/v2/raw/"), opts); + } else { + return fetch(url, opts); + } + } else { + return fetch(url, opts); + } + } + , setWindowHash(route = "") { this.setPagePos(); window.location.hash = `#${route}`; @@ -1290,9 +1304,8 @@ const app = new Vue({ const themes = ipcRenderer.sendSync("get-themes"); await asyncForEach(themes, async (theme) => { if (theme.commit != "") { - await fetch(`https://api.github.com/repos/${theme.github_repo}/commits`) + await app._fetch(`https://api.github.com/repos/${theme.github_repo}/commits`) .then((res) => res.json()) - .then((res) => { if (res[0].sha != theme.commit) { const notify = notyf.open({ className: "notyf-info", @@ -1304,8 +1317,7 @@ const app = new Vue({ notyf.dismiss(notify); }); } - }); - } + }; }); }, async setTheme(theme = "", onlyPrefs = false) { diff --git a/src/renderer/views/components/settings-plugins-github.ejs b/src/renderer/views/components/settings-plugins-github.ejs index 941e8b9e..77393d31 100644 --- a/src/renderer/views/components/settings-plugins-github.ejs +++ b/src/renderer/views/components/settings-plugins-github.ejs @@ -107,7 +107,7 @@ redirect: 'follow' }; - fetch(readmeUrl, requestOptions) + app._fetch(readmeUrl, requestOptions) .then(response => response.text()) .then(result => { self.openRepo = repo @@ -178,7 +178,7 @@ redirect: 'follow' }; - fetch("https://api.github.com/search/repositories?q=topic:cidermusicplugin fork:true&per_page=100", requestOptions) + app._fetch("https://api.github.com/search/repositories?q=topic:cidermusicplugin fork:true&per_page=100", requestOptions) .then(response => response.text()) .then(result => { self.repos = JSON.parse(result).items diff --git a/src/renderer/views/components/settings-themes-github.ejs b/src/renderer/views/components/settings-themes-github.ejs index 60925016..87cda31a 100644 --- a/src/renderer/views/components/settings-themes-github.ejs +++ b/src/renderer/views/components/settings-themes-github.ejs @@ -126,7 +126,7 @@ redirect: 'follow' }; - fetch(readmeUrl, requestOptions) + app._fetch(readmeUrl, requestOptions) .then(response => response.text()) .then(result => { self.openRepo = repo @@ -184,7 +184,7 @@ redirect: 'follow' }; - fetch("https://api.github.com/search/repositories?q=topic:cidermusictheme fork:true&per_page=100", requestOptions) + app._fetch("https://api.github.com/search/repositories?q=topic:cidermusictheme fork:true&per_page=100", requestOptions) .then(response => response.text()) .then(result => { let items = JSON.parse(result).items diff --git a/src/renderer/views/components/settings-themes.ejs b/src/renderer/views/components/settings-themes.ejs index 39a07f9c..15eadfe7 100644 --- a/src/renderer/views/components/settings-themes.ejs +++ b/src/renderer/views/components/settings-themes.ejs @@ -297,7 +297,7 @@ redirect: 'follow' }; - fetch(readmeUrl, requestOptions) + app._fetch(readmeUrl, requestOptions) .then(response => response.text()) .then(result => { self.openRepo = repo diff --git a/src/renderer/views/pages/installed-themes.ejs b/src/renderer/views/pages/installed-themes.ejs index 453fd424..acce78ee 100644 --- a/src/renderer/views/pages/installed-themes.ejs +++ b/src/renderer/views/pages/installed-themes.ejs @@ -356,7 +356,7 @@ redirect: 'follow' }; - fetch("https://api.github.com/search/repositories?q=topic:cidermusictheme fork:true", requestOptions) + app._fetch("https://api.github.com/search/repositories?q=topic:cidermusictheme fork:true", requestOptions) .then(response => response.text()) .then(result => { let items = JSON.parse(result).items @@ -366,4 +366,4 @@ } } }) - --> \ No newline at end of file + --> diff --git a/src/renderer/views/pages/themes-github.ejs b/src/renderer/views/pages/themes-github.ejs index a5f7dbab..11918b87 100644 --- a/src/renderer/views/pages/themes-github.ejs +++ b/src/renderer/views/pages/themes-github.ejs @@ -186,7 +186,7 @@ redirect: 'follow' }; - fetch("https://api.github.com/search/repositories?q=topic:cidermusictheme fork:true&per_page=100", requestOptions) + app._fetch("https://api.github.com/search/repositories?q=topic:cidermusictheme fork:true&per_page=100", requestOptions) .then(response => response.text()) .then(result => { let items = JSON.parse(result).items @@ -197,4 +197,4 @@ } }) - --> \ No newline at end of file + -->