From 7fb0d2209d65b9641a9ddda0bc0dbd6f06fa324a Mon Sep 17 00:00:00 2001 From: Natsumi Date: Tue, 7 Oct 2025 20:50:08 +1300 Subject: [PATCH] Status fixes, fetch instance name for invites --- src/stores/notification.js | 22 +++++++++++++++++++++- src/stores/vrcStatus.js | 8 +------- 2 files changed, 22 insertions(+), 8 deletions(-) diff --git a/src/stores/notification.js b/src/stores/notification.js index 41254944..f1cc0c5c 100644 --- a/src/stores/notification.js +++ b/src/stores/notification.js @@ -1,7 +1,12 @@ import Noty from 'noty'; import { defineStore } from 'pinia'; import { computed, reactive, watch } from 'vue'; -import { notificationRequest, userRequest, worldRequest } from '../api'; +import { + instanceRequest, + notificationRequest, + userRequest, + worldRequest +} from '../api'; import configRepository from '../service/config'; import { database } from '../service/database'; import { AppDebug } from '../service/appConfig'; @@ -28,6 +33,7 @@ import { useWristOverlaySettingsStore } from './settings/wristOverlay'; import { useSharedFeedStore } from './sharedFeed'; import { useUiStore } from './ui'; import { useUserStore } from './user'; +import { useInstanceStore } from './instance'; export const useNotificationStore = defineStore('Notification', () => { const generalSettingsStore = useGeneralSettingsStore(); @@ -42,6 +48,7 @@ export const useNotificationStore = defineStore('Notification', () => { const uiStore = useUiStore(); const gameStore = useGameStore(); const sharedFeedStore = useSharedFeedStore(); + const instanceStore = useInstanceStore(); const state = reactive({ notificationInitStatus: false, notificationTable: { @@ -149,6 +156,19 @@ export const useNotificationStore = defineStore('Notification', () => { database.addNotificationToDatabase(ref); } if (watchState.isFriendsLoaded && state.notificationInitStatus) { + if ( + ref.details?.worldId && + !instanceStore.cachedInstances.has(ref.details.worldId) + ) { + // get instance name for invite + const L = parseLocation(ref.details.worldId); + if (L.isRealInstance) { + instanceRequest.getInstance({ + worldId: L.worldId, + instanceId: L.tag + }); + } + } if ( state.notificationTable.filters[0].value.length === 0 || state.notificationTable.filters[0].value.includes(ref.type) diff --git a/src/stores/vrcStatus.js b/src/stores/vrcStatus.js index fe34770d..a54b5a3d 100644 --- a/src/stores/vrcStatus.js +++ b/src/stores/vrcStatus.js @@ -15,7 +15,7 @@ export const useVrcStatusStore = defineStore('VrcStatus', () => { const lastStatusText = ref(''); const statusText = computed(() => { - if (lastStatusSummary.value) { + if (lastStatus.value && lastStatusSummary.value) { return `${lastStatus.value}: ${lastStatusSummary.value}`; } return lastStatus.value; @@ -38,9 +38,6 @@ export const useVrcStatusStore = defineStore('VrcStatus', () => { showClose: true, onClick: () => { openStatusPage(); - }, - onClose: () => { - alertRef.value = null; } }); } @@ -56,9 +53,6 @@ export const useVrcStatusStore = defineStore('VrcStatus', () => { showClose: true, onClick: () => { openStatusPage(); - }, - onClose: () => { - alertRef.value = null; } }); }