Fix group sidebar sort order

This commit is contained in:
Natsumi
2025-02-02 18:36:40 +13:00
parent e5d900b364
commit 6cc10ad8af
4 changed files with 24 additions and 4 deletions

View File

@@ -7,7 +7,7 @@ const buildDir = path.join(rootDir, 'build');
let version = '';
try {
version = fs.readFileSync(versionFilePath, 'utf8').trim();
version = fs.readFileSync(versionFilePath, 'utf8').trim().replaceAll('.', '');
} catch (err) {
console.error('Error reading Version file:', err);
process.exit(1);

View File

@@ -1239,7 +1239,6 @@ export default class extends baseClass {
instance: this.applyInstance(json)
});
}
$app.groupInstances.sort(this.sortGroupInstancesByInGame);
});
/**

View File

@@ -46,6 +46,10 @@
groupInstances: {
type: Array,
default: () => []
},
groupOrder: {
type: Array,
default: () => []
}
},
data() {
@@ -76,7 +80,7 @@
}
});
return Array.from(groupMap.values());
return Array.from(groupMap.values()).sort(this.sortGroupInstancesByInGame);
}
},
methods: {
@@ -88,6 +92,20 @@
},
getGroupId(group) {
return group[0]?.group?.groupId || '';
},
sortGroupInstancesByInGame(a, b) {
var aIndex = this.groupOrder.indexOf(a[0]?.group?.id);
var bIndex = this.groupOrder.indexOf(b[0]?.group?.id);
if (aIndex === -1 && bIndex === -1) {
return 0;
}
if (aIndex === -1) {
return 1;
}
if (bIndex === -1) {
return -1;
}
return aIndex - bIndex;
}
}
};

View File

@@ -290,4 +290,7 @@ mixin friendsListSidebar
template(#label)
span {{ $t('side_panel.groups') }}
span(style='color: #909399; font-size: 12px; margin-left: 10px') ({{ groupInstances.length }})
groups-sidebar(:group-instances='groupInstances' @show-group-dialog='showGroupDialog')
groups-sidebar(
:group-instances='groupInstances'
:group-order='inGameGroupOrder'
@show-group-dialog='showGroupDialog')