diff --git a/src-electron/rename-builds.js b/src-electron/rename-builds.js index 58b47a66..30922e06 100644 --- a/src-electron/rename-builds.js +++ b/src-electron/rename-builds.js @@ -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); diff --git a/src/classes/groups.js b/src/classes/groups.js index 4c31c86a..616e8be2 100644 --- a/src/classes/groups.js +++ b/src/classes/groups.js @@ -1239,7 +1239,6 @@ export default class extends baseClass { instance: this.applyInstance(json) }); } - $app.groupInstances.sort(this.sortGroupInstancesByInGame); }); /** diff --git a/src/components/sidebar/GroupsSidebar.vue b/src/components/sidebar/GroupsSidebar.vue index ab7c6a0b..66cd075a 100644 --- a/src/components/sidebar/GroupsSidebar.vue +++ b/src/components/sidebar/GroupsSidebar.vue @@ -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; } } }; diff --git a/src/mixins/friendsListSidebar.pug b/src/mixins/friendsListSidebar.pug index 6d938634..cdf8e873 100644 --- a/src/mixins/friendsListSidebar.pug +++ b/src/mixins/friendsListSidebar.pug @@ -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')