diff --git a/src/components/dialogs/GroupDialog/groupMemberModerationLogsColumns.jsx b/src/components/dialogs/GroupDialog/groupMemberModerationLogsColumns.jsx
index 25b6aa90..8f018efc 100644
--- a/src/components/dialogs/GroupDialog/groupMemberModerationLogsColumns.jsx
+++ b/src/components/dialogs/GroupDialog/groupMemberModerationLogsColumns.jsx
@@ -1,13 +1,38 @@
import Location from '@/components/Location.vue';
import { i18n } from '@/plugin';
import { formatDateFilter } from '@/shared/utils';
+import { ArrowUpDown } from 'lucide-vue-next';
+import { Button } from '@/components/ui/button';
const { t } = i18n.global;
+const sortButton = ({ column, label, descFirst = false }) => (
+
+);
+
export const createColumns = ({ onShowUser }) => [
{
accessorKey: 'created_at',
- header: () => t('dialog.group_member_moderation.created_at'),
+ header: ({ column }) =>
+ sortButton({
+ column,
+ label: t('dialog.group_member_moderation.created_at')
+ }),
size: 170,
cell: ({ row }) => (
{formatDateFilter(row.original?.created_at, 'long')}
@@ -15,13 +40,22 @@ export const createColumns = ({ onShowUser }) => [
},
{
accessorKey: 'eventType',
- header: () => t('dialog.group_member_moderation.type'),
+ header: ({ column }) =>
+ sortButton({
+ column,
+ label: t('dialog.group_member_moderation.type')
+ }),
size: 190,
cell: ({ row }) => {row.original?.eventType}
},
{
accessorKey: 'actorDisplayName',
- header: () => t('dialog.group_member_moderation.display_name'),
+ header: ({ column }) =>
+ sortButton({
+ column,
+ label: t('dialog.group_member_moderation.display_name')
+ }),
+ enableSorting: true,
size: 160,
cell: ({ row }) => {
const original = row.original;
@@ -50,7 +84,8 @@ export const createColumns = ({ onShowUser }) => [
const targetId = original?.targetId ?? '';
return (
- {typeof targetId === 'string' && targetId.startsWith('wrld_') ? (
+ {typeof targetId === 'string' &&
+ targetId.startsWith('wrld_') ? (
) : null}
{original?.description}
@@ -65,7 +100,8 @@ export const createColumns = ({ onShowUser }) => [
cell: ({ row }) => {
const original = row.original;
const data = original?.data;
- const hasData = data && typeof data === 'object' && Object.keys(data).length;
+ const hasData =
+ data && typeof data === 'object' && Object.keys(data).length;
return {hasData ? JSON.stringify(data) : ''};
}
}
diff --git a/src/stores/vrcxUpdater.js b/src/stores/vrcxUpdater.js
index 41cccf5f..33feb9d4 100644
--- a/src/stores/vrcxUpdater.js
+++ b/src/stores/vrcxUpdater.js
@@ -43,7 +43,7 @@ export const useVRCXUpdaterStore = defineStore('VRCXUpdater', () => {
const updateToastRelease = ref('');
async function initVRCXUpdaterSettings() {
- if (!LINUX) {
+ if (LINUX) {
arch.value = await window.electron.getArch();
noUpdater.value = await window.electron.getNoUpdater();
console.log('Architecture:', arch.value);
diff --git a/src/views/Favorites/dialogs/AvatarExportDialog.vue b/src/views/Favorites/dialogs/AvatarExportDialog.vue
index b5e1dcee..5a478b99 100644
--- a/src/views/Favorites/dialogs/AvatarExportDialog.vue
+++ b/src/views/Favorites/dialogs/AvatarExportDialog.vue
@@ -1,6 +1,6 @@