minecraft-modpack
Version:
Minecraft modpack creation made easy
43 lines (31 loc) • 1.27 kB
JavaScript
var storage;
const config = require("../config");
const Helpers = require("../lib/helpers");
const ModFactory = require("./ModFactory");
let ModFactoryI = new ModFactory();
class TFile{
constructor(){
}
static passStorage( storageInstance ){
storage = storageInstance;
}
async instance(obj){
this.fileSize = obj.fileLength || 0;
this.id = obj.id || 0;
this.gameVersions = obj.gameVersion || [];
this.dependencies = await this.convertDeps(obj.dependencies) || [];
this.downloadURL = obj.downloadUrl || "";
this.fileName = obj.fileName || "";
return this;
}
async convertDeps(deps){
let depsNew = [];
await Helpers.asyncForEach(deps, async dependency => {
let depJSONURL = config.path.info( dependency.addonId );
let depJSON = (await storage.instance.get(depJSONURL)).data;
depsNew.push( await ModFactoryI.instance( depJSON, dependency.type ) );
});
return depsNew;
}
}
module.exports = TFile;