You've already forked AstralRinth
forked from didirus/AstralRinth
Adds ordering on loader fields enum (#755)
* now sorts on ordering, fmt clippy prepare * fixed tests * removed accidenetal printlns
This commit is contained in:
@@ -341,6 +341,7 @@ impl LoaderFieldEnum {
|
||||
SELECT lfe.id, lfe.enum_name, lfe.ordering, lfe.hidable
|
||||
FROM loader_field_enums lfe
|
||||
WHERE lfe.enum_name = $1
|
||||
ORDER BY lfe.ordering ASC
|
||||
",
|
||||
enum_name
|
||||
)
|
||||
@@ -393,7 +394,7 @@ impl LoaderFieldEnumValue {
|
||||
|
||||
let enum_ids = loader_fields
|
||||
.iter()
|
||||
.filter_map(|x| get_enum_id(x))
|
||||
.filter_map(get_enum_id)
|
||||
.collect::<Vec<_>>();
|
||||
let values = Self::list_many(&enum_ids, exec, redis)
|
||||
.await?
|
||||
@@ -444,6 +445,7 @@ impl LoaderFieldEnumValue {
|
||||
"
|
||||
SELECT id, enum_id, value, ordering, metadata, created FROM loader_field_enum_values
|
||||
WHERE enum_id = ANY($1)
|
||||
ORDER BY enum_id, ordering, created DESC
|
||||
",
|
||||
&remaining_enums
|
||||
)
|
||||
@@ -465,7 +467,7 @@ impl LoaderFieldEnumValue {
|
||||
let cachable_enum_sets: Vec<(LoaderFieldEnumId, Vec<LoaderFieldEnumValue>)> = result
|
||||
.clone()
|
||||
.into_iter()
|
||||
.group_by(|x| x.enum_id)
|
||||
.group_by(|x| x.enum_id) // we sort by enum_id, so this will group all values of the same enum_id together
|
||||
.into_iter()
|
||||
.map(|(k, v)| (k, v.collect::<Vec<_>>().to_vec()))
|
||||
.collect();
|
||||
|
||||
@@ -77,7 +77,7 @@ impl LegacyProject {
|
||||
|
||||
// V2 versions only have one project type- v3 versions can rarely have multiple.
|
||||
// We'll just use the first one.
|
||||
let mut project_type = data.project_types.get(0).cloned().unwrap_or_default();
|
||||
let mut project_type = data.project_types.first().cloned().unwrap_or_default();
|
||||
let mut loaders = data.loaders;
|
||||
|
||||
if let Some(versions_item) = versions_item {
|
||||
@@ -174,7 +174,7 @@ impl LegacyProject {
|
||||
{
|
||||
let version_ids: Vec<_> = data
|
||||
.iter()
|
||||
.filter_map(|p| p.versions.get(0).map(|i| (*i).into()))
|
||||
.filter_map(|p| p.versions.first().map(|i| (*i).into()))
|
||||
.collect();
|
||||
let example_versions = version_item::Version::get_many(&version_ids, exec, redis).await?;
|
||||
let mut legacy_projects = Vec::new();
|
||||
|
||||
@@ -179,7 +179,7 @@ async fn find_version(
|
||||
|
||||
// Try to parse version filters from version coords.
|
||||
let Some((vnumber, filter)) = vcoords.rsplit_once('-') else {
|
||||
return Ok(exact_matches.get(0).map(|x| (*x).clone()));
|
||||
return Ok(exact_matches.first().map(|x| (*x).clone()));
|
||||
};
|
||||
|
||||
let db_loaders: HashSet<String> = Loader::list(pool, redis)
|
||||
@@ -221,8 +221,8 @@ async fn find_version(
|
||||
.collect::<Vec<_>>();
|
||||
|
||||
Ok(matched
|
||||
.get(0)
|
||||
.or_else(|| exact_matches.get(0))
|
||||
.first()
|
||||
.or_else(|| exact_matches.first())
|
||||
.copied()
|
||||
.cloned())
|
||||
}
|
||||
|
||||
@@ -13,7 +13,7 @@ pub fn get_color_from_img(data: &[u8]) -> Result<Option<u32>, ImageError> {
|
||||
.crop_imm(128, 128, 64, 64);
|
||||
let color = color_thief::get_palette(image.to_rgb8().as_bytes(), ColorFormat::Rgb, 10, 2)
|
||||
.ok()
|
||||
.and_then(|x| x.get(0).copied())
|
||||
.and_then(|x| x.first().copied())
|
||||
.map(|x| (x.r as u32) << 16 | (x.g as u32) << 8 | (x.b as u32));
|
||||
|
||||
Ok(color)
|
||||
|
||||
@@ -34,7 +34,7 @@ pub fn validation_errors_to_string(errors: ValidationErrors, adder: Option<Strin
|
||||
output
|
||||
}
|
||||
ValidationErrorsKind::Field(errors) => {
|
||||
if let Some(error) = errors.get(0) {
|
||||
if let Some(error) = errors.first() {
|
||||
if let Some(adder) = adder {
|
||||
output.push_str(&format!(
|
||||
"Field {} {} failed validation with error: {}",
|
||||
|
||||
Reference in New Issue
Block a user