Merge branch 'master' into develop

This commit is contained in:
jliddev
2021-01-05 21:57:40 -06:00
3 changed files with 24 additions and 6 deletions

View File

@@ -54,7 +54,9 @@ export class TukUiAddonProvider extends AddonProvider {
try {
const addons = await this.getAllAddons(clientType);
const filteredAddons = addons.filter((addon) => _.some(addonIds, (aid) => aid === addon.id));
const filteredAddons = addons.filter((addon) =>
_.some(addonIds, (aid) => aid.toString() === addon.id.toString())
);
results = await this.mapAddonsToSearchResults(filteredAddons);
} catch (err) {
// _analyticsService.Track(ex, "Failed to search TukUi");
@@ -143,7 +145,7 @@ export class TukUiAddonProvider extends AddonProvider {
name: tukUiAddon.name,
author: tukUiAddon.author,
downloadUrl: tukUiAddon.url,
externalId: tukUiAddon.id,
externalId: tukUiAddon.id.toString(),
externalUrl: tukUiAddon.web_url,
gameVersion: tukUiAddon.patch,
installedAt: addonFolder.fileStats.birthtime,
@@ -219,7 +221,7 @@ export class TukUiAddonProvider extends AddonProvider {
return {
author: addon.author,
externalId: addon.id,
externalId: addon.id.toString(),
name: addon.name,
thumbnailUrl: addon.screenshot_url,
externalUrl: addon.web_url,

View File

@@ -751,7 +751,7 @@ export class AddonService {
_.forEach(newAddons, (newAddon) => {
const existingAddon = _.find(
existingAddons,
(ea) => ea.externalId == newAddon.externalId && ea.providerName == newAddon.providerName
(ea) => ea.externalId.toString() === newAddon.externalId.toString() && ea.providerName == newAddon.providerName
);
if (!existingAddon) {
@@ -799,9 +799,11 @@ export class AddonService {
const searchResults = await addonProvider.getAll(clientType, providerAddonIds);
for (let result of searchResults) {
const addon = addons.find((addon) => addon.externalId === result?.externalId);
const addon = addons.find((addon) => addon.externalId.toString() === result?.externalId?.toString());
const latestFile = this.getLatestFile(result, addon?.channelType);
this.setExternalIdString(addon);
addon.summary = result.summary;
addon.thumbnailUrl = result.thumbnailUrl;
addon.latestChangelog = latestFile?.changelog || addon.latestChangelog;
@@ -837,6 +839,16 @@ export class AddonService {
}
}
// Legacy TukUI/ElvUI ids were ints, correct them
private setExternalIdString(addon: Addon) {
if (typeof addon.externalId === "string") {
return;
}
addon.externalId = `${addon.externalId}`;
this._addonStorage.set(addon.id, addon);
}
private getExternalIdsForProvider(addonProvider: AddonProvider, addons: Addon[]): string[] {
return addons.filter((addon) => addon.providerName === addonProvider.name).map((addon) => addon.externalId);
}
@@ -1207,7 +1219,7 @@ export class AddonService {
thumbnailUrl: searchResult.thumbnailUrl,
latestVersion: latestFile.version,
clientType: clientType,
externalId: searchResult.externalId,
externalId: searchResult.externalId.toString(),
gameVersion: AddonUtils.getGameVersion(latestFile.gameVersion),
author: searchResult.author,
downloadUrl: latestFile.downloadUrl,

View File

@@ -212,6 +212,10 @@
"Add the showing of unmatched addon folders to 'My Addons'"
]
},
{
"Version": "2.0.3",
"changes": ["Fix an issue with legacy TukUI/ElvUI external IDs saved as ints"]
},
{
"Version": "2.0.2",
"changes": ["Fix an issue with a hardcoded hub URL"]