Skip to content

Commit

Permalink
removed axios in favor to node-fetch
Browse files Browse the repository at this point in the history
  • Loading branch information
quentinlegot committed Mar 30, 2022
1 parent cb37aa7 commit 0a32249
Show file tree
Hide file tree
Showing 6 changed files with 35 additions and 65 deletions.
42 changes: 1 addition & 41 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,6 @@
"electron": "^18.0.0"
},
"dependencies": {
"axios": "^0.26.0",
"electron-is-dev": "^2.0.0",
"electron-log": "^4.4.6",
"electron-squirrel-startup": "^1.0.0",
Expand All @@ -41,6 +40,7 @@
"izitoast": "^1.4.0",
"minecraft-launcher-core": "^3.16.12",
"msmc": "^3.0.6",
"node-fetch": "^2.6.7",
"vue": "^3.2.31"
},
"config": {
Expand Down
7 changes: 3 additions & 4 deletions src/client/assets/js/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,9 @@ app = vue.createApp({
position: 'topRight',
resetOnHover: true,
})
setInterval(() => {
ipcRenderer.send("pageReady")
}, 500)
},
methods: {
invalidateData () {
Expand Down Expand Up @@ -150,10 +153,6 @@ ipcRenderer.on('launch', (_e, _args) => {
root.loadingMessageHidden = true
})

setInterval(() => {
ipcRenderer.send("pageReady")
}, 500)

ipcRenderer.on("modsInformations", (_e, args) => {
if(args === null) {
root.modsInformationsLoaded = false
Expand Down
2 changes: 0 additions & 2 deletions src/client/assets/js/login.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
// const {default: iziToast } = require('izitoast')

app = vue.createApp({
data() {
return {
Expand Down
1 change: 1 addition & 0 deletions src/server/main.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
const { app, BrowserWindow, Menu, ipcMain, autoUpdater, dialog } = require('electron')
const logger = require('electron-log')
const { join } = require('path')

if (require('electron-squirrel-startup')) {
require("./install.js").handleSquirrelEvent(app)
app.quit()
Expand Down
46 changes: 29 additions & 17 deletions src/server/minecraft.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
const isDev = require('electron-is-dev')
const { Client, Authenticator } = require('minecraft-launcher-core')
const axios = require('axios').default
const hasha = require('hasha');
const fetch = require('node-fetch').default
const hasha = require('hasha')
const fs = require('fs')
const { join } = require('path')
const constants = require("constants")
Expand Down Expand Up @@ -128,17 +128,25 @@ class Minecraft {
}

getModsInformations(event) {
axios.get("https://altarik.fr/launcher.json").then(o => {
if(o.status === 200 && o.headers["content-type"] === "application/json") {
let folder = join(process.env.LOCALAPPDATA, "altarik-launcher", "data")
if(!fs.existsSync(folder))
fs.mkdirSync(folder, {recursive: true})
let file = join(folder, "launcher.json")
if(fs.existsSync(file))
fs.rmSync(file)
fs.writeFileSync(file, JSON.stringify(o.data))
event.sender.send('modsInformations', this.extractModsInformations(o.data))
fetch("https://altarik.fr/launcher.json").then(response => {
if(response.ok) {
response.json().then(data => {
let folder = join(process.env.LOCALAPPDATA, "altarik-launcher", "data")
if(!fs.existsSync(folder))
fs.mkdirSync(folder, {recursive: true})
let file = join(folder, "launcher.json")
if(fs.existsSync(file))
fs.rmSync(file)
fs.writeFileSync(file, JSON.stringify(data))
event.sender.send('modsInformations', this.extractModsInformations(data))
}).catch(err => {
event.sender.send('modsInformations', this.extractModsFromFileSystem())
logger.warn(err)
logger.warn("An error occured while trying to connect to server")
})
} else {
logger.warn("Unable to connect to server")
logger.warn(err)
event.sender.send('modsInformations', this.extractModsFromFileSystem())
}
}).catch(err => {
Expand Down Expand Up @@ -222,17 +230,21 @@ class Minecraft {

downloadMods(link, path) {
return new Promise((resolve, reject) => {
axios.get(link, {responseType: "stream"}).then(res => {
if(res.status === 200) {
fetch(link).then(response => {
if(response.ok) {
if(fs.existsSync(path))
fs.rmSync(path)
res.data.pipe(fs.createWriteStream(path));
res.data.on("end", () => {
const dest = fs.createWriteStream(path)
response.body.pipe(dest)
response.body.on("end", () => {
logger.log("download completed");
resolve("download completed")
})
dest.on("error", () => {
reject("An error appenned when using stream")
});
} else {
reject(res.status)
reject(response.status)
}
}).catch(err => {
reject(err)
Expand Down

0 comments on commit 0a32249

Please sign in to comment.