more emotes
This commit is contained in:
parent
720744a297
commit
bff88ea865
File diff suppressed because one or more lines are too long
|
@ -68,7 +68,7 @@ export default new class EmoteModule extends Builtin {
|
||||||
get favorites() {return this.favoriteEmotes;}
|
get favorites() {return this.favoriteEmotes;}
|
||||||
|
|
||||||
getCategory(category) {return Emotes[category];}
|
getCategory(category) {return Emotes[category];}
|
||||||
getRemoteFile(category) {return new FormattableString(Utilities.repoUrl(`data/emotes/${category.toLowerCase()}.json`));}
|
getRemoteFile(category) {return Utilities.repoUrl(`data/emotes/${category.toLowerCase()}.json`);}
|
||||||
|
|
||||||
initialize() {
|
initialize() {
|
||||||
super.initialize();
|
super.initialize();
|
||||||
|
@ -225,24 +225,23 @@ export default new class EmoteModule extends Builtin {
|
||||||
if (useCache) {
|
if (useCache) {
|
||||||
this.log(`Loading ${category} emotes from local cache.`);
|
this.log(`Loading ${category} emotes from local cache.`);
|
||||||
const cachedData = DataStore.getEmoteData(category);
|
const cachedData = DataStore.getEmoteData(category);
|
||||||
const hasData = Object.keys(data).length > 0;
|
const hasData = Object.keys(cachedData).length > 0;
|
||||||
if (hasData) data = cachedData;
|
if (hasData) data = cachedData;
|
||||||
}
|
}
|
||||||
if (!data) data = await this.downloadEmotes(category);
|
if (!data) data = await this.downloadEmotes(category);
|
||||||
|
for (const emote in data) data[emote] = EmoteURLs[category].format({id: data[emote]});
|
||||||
Object.assign(Emotes[category], data);
|
Object.assign(Emotes[category], data);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Toasts.show(Strings.Emotes.downloading, {type: "info"});
|
|
||||||
// Toasts.show(Strings.Emotes.downloaded, {type: "success"});
|
|
||||||
|
|
||||||
this.emotesLoaded = true;
|
this.emotesLoaded = true;
|
||||||
Events.dispatch("emotes-loaded");
|
Events.dispatch("emotes-loaded");
|
||||||
}
|
}
|
||||||
|
|
||||||
downloadEmotes(category) {
|
downloadEmotes(category) {
|
||||||
|
// Toasts.show(Strings.Emotes.downloading, {type: "info"});
|
||||||
const url = this.getRemoteFile(category);
|
const url = this.getRemoteFile(category);
|
||||||
this.log(`Downloading ${category} from ${url}`);
|
this.log(`Downloading ${category} from ${url}`);
|
||||||
const options = {url: url, timeout: 5000, json: true};
|
const options = {url: url, timeout: 8000, json: true};
|
||||||
return new Promise(resolve => {
|
return new Promise(resolve => {
|
||||||
request.get(options, (error, response, parsedData) => {
|
request.get(options, (error, response, parsedData) => {
|
||||||
if (error || response.statusCode != 200) {
|
if (error || response.statusCode != 200) {
|
||||||
|
@ -255,11 +254,13 @@ export default new class EmoteModule extends Builtin {
|
||||||
delete parsedData[emote];
|
delete parsedData[emote];
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
parsedData[emote] = EmoteURLs[category].format({id: parsedData[emote]});
|
// parsedData[emote] = EmoteURLs[category].format({id: parsedData[emote]});
|
||||||
}
|
}
|
||||||
DataStore.saveEmoteData(category, parsedData);
|
DataStore.saveEmoteData(category, parsedData);
|
||||||
|
DataStore.setCacheHash("emotes", category, response.headers.etag);
|
||||||
resolve(parsedData);
|
resolve(parsedData);
|
||||||
this.log(`Downloaded ${category}`);
|
this.log(`Downloaded ${category}`);
|
||||||
|
// Toasts.show(Strings.Emotes.downloaded, {type: "success"});
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
|
@ -78,7 +78,7 @@ export default new class DataStore {
|
||||||
setCacheHash(category, key, hash) {
|
setCacheHash(category, key, hash) {
|
||||||
if (!this.cacheData[category]) this.cacheData[category] = {};
|
if (!this.cacheData[category]) this.cacheData[category] = {};
|
||||||
this.cacheData[category][key] = hash;
|
this.cacheData[category][key] = hash;
|
||||||
fs.writeFileSync(this.cacheFile, JSON.stringify(this.cacheData, null, 4));
|
fs.writeFileSync(this.cacheFile, JSON.stringify(this.cacheData));
|
||||||
}
|
}
|
||||||
|
|
||||||
emotesExist(category) {
|
emotesExist(category) {
|
||||||
|
|
Loading…
Reference in New Issue