mirror of
https://github.com/HMCL-dev/HMCL.git
synced 2025-08-03 19:36:53 -04:00
Fix bugs. (#2920)
* Always sort the results while searching in CurseForge. * Fix bugs.
This commit is contained in:
parent
7ca5744559
commit
baf1d22bc4
@ -111,9 +111,8 @@ public final class CurseForgeRemoteModRepository implements RemoteModRepository
|
|||||||
.header("X-API-KEY", apiKey)
|
.header("X-API-KEY", apiKey)
|
||||||
.getJson(new TypeToken<Response<List<CurseAddon>>>() {
|
.getJson(new TypeToken<Response<List<CurseAddon>>>() {
|
||||||
}.getType());
|
}.getType());
|
||||||
Stream<RemoteMod> res = response.getData().stream().map(CurseAddon::toMod);
|
|
||||||
if (searchFilter.isEmpty()) {
|
if (searchFilter.isEmpty()) {
|
||||||
return new SearchResult(res, (int)Math.ceil((double)response.pagination.totalCount / pageSize));
|
return new SearchResult(response.getData().stream().map(CurseAddon::toMod), (int)Math.ceil((double)response.pagination.totalCount / pageSize));
|
||||||
}
|
}
|
||||||
|
|
||||||
// https://github.com/HMCL-dev/HMCL/issues/1549
|
// https://github.com/HMCL-dev/HMCL/issues/1549
|
||||||
@ -125,7 +124,7 @@ public final class CurseForgeRemoteModRepository implements RemoteModRepository
|
|||||||
|
|
||||||
StringUtils.LevCalculator levCalculator = new StringUtils.LevCalculator();
|
StringUtils.LevCalculator levCalculator = new StringUtils.LevCalculator();
|
||||||
|
|
||||||
return new SearchResult(res.map(remoteMod -> {
|
return new SearchResult(response.getData().stream().map(CurseAddon::toMod).map(remoteMod -> {
|
||||||
String lowerCaseResult = remoteMod.getTitle().toLowerCase();
|
String lowerCaseResult = remoteMod.getTitle().toLowerCase();
|
||||||
int diff = levCalculator.calc(lowerCaseSearchFilter, lowerCaseResult);
|
int diff = levCalculator.calc(lowerCaseSearchFilter, lowerCaseResult);
|
||||||
|
|
||||||
@ -136,7 +135,7 @@ public final class CurseForgeRemoteModRepository implements RemoteModRepository
|
|||||||
}
|
}
|
||||||
|
|
||||||
return pair(remoteMod, diff);
|
return pair(remoteMod, diff);
|
||||||
}).sorted(Comparator.comparingInt(Pair::getValue)).map(Pair::getKey), res, response.pagination.totalCount);
|
}).sorted(Comparator.comparingInt(Pair::getValue)).map(Pair::getKey), response.getData().stream().map(CurseAddon::toMod), response.pagination.totalCount);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
Loading…
x
Reference in New Issue
Block a user