diff --git a/src/components/dialogs/SendBoopDialog.vue b/src/components/dialogs/SendBoopDialog.vue index e69e68f0..fc43c2e1 100644 --- a/src/components/dialogs/SendBoopDialog.vue +++ b/src/components/dialogs/SendBoopDialog.vue @@ -5,101 +5,7 @@ :title="t('dialog.boop_dialog.header')" width="450px" @close="closeDialog"> - - - - - - - - - - - - - - - - - - - - - - - - - - + {{ displayName }}

@@ -108,7 +14,7 @@ v-if="sendBoopDialog.visible" v-model="fileId" clearable - :placeholder="t('dialog.boop_dialog.select_emoji')" + :placeholder="t('dialog.boop_dialog.select_default_emoji')" size="small" style="width: 100%"> @@ -178,12 +84,10 @@ import { storeToRefs } from 'pinia'; import { useI18n } from 'vue-i18n'; - import { userImage, userStatusClass } from '../../shared/utils'; + import { notificationRequest, userRequest } from '../../api'; import { miscRequest } from '../../api'; - import { notificationRequest } from '../../api'; import { photonEmojis } from '../../shared/constants/photon.js'; import { redirectToToolsTab } from '../../shared/utils/base/ui'; - import { useFriendStore } from '../../stores'; import { useGalleryStore } from '../../stores'; import { useNotificationStore } from '../../stores'; import { useUserStore } from '../../stores/user.js'; @@ -196,15 +100,21 @@ const { notificationTable } = storeToRefs(useNotificationStore()); const { showGalleryDialog, refreshEmojiTable } = useGalleryStore(); const { emojiTable } = storeToRefs(useGalleryStore()); - const { vipFriends, onlineFriends, activeFriends, offlineFriends } = useFriendStore(); const { isLocalUserVrcPlusSupporter } = storeToRefs(useUserStore()); const fileId = ref(''); + const displayName = ref(''); watch( () => sendBoopDialog.value.visible, (visible) => { - if (visible && emojiTable.value.length === 0) { + if (visible) { + displayName.value = ''; + userRequest.getCachedUser({ userId: sendBoopDialog.value.userId }).then((user) => { + displayName.value = user.ref.displayName; + }); + } + if (visible && isLocalUserVrcPlusSupporter && emojiTable.value.length === 0) { refreshEmojiTable(); } } diff --git a/src/localization/en/en.json b/src/localization/en/en.json index 3e603c96..3683ace7 100644 --- a/src/localization/en/en.json +++ b/src/localization/en/en.json @@ -1686,7 +1686,7 @@ "boop_dialog": { "header": "Boop", "emoji_manager": "Emoji Manager", - "select_emoji": "Select Emoji", + "select_default_emoji": "Select Default Emoji", "my_emojis": "My Emojis", "default_emojis": "Default Emojis", "cancel": "Cancel", diff --git a/src/stores/vrcStatus.js b/src/stores/vrcStatus.js index 5e963f5b..5651091f 100644 --- a/src/stores/vrcStatus.js +++ b/src/stores/vrcStatus.js @@ -75,7 +75,6 @@ export const useVrcStatusStore = defineStore('VrcStatus', () => { } }); lastTimeFetched.value = Date.now(); - const data = JSON.parse(response.data); if (response.status !== 200) { console.error('Failed to fetch VRChat status', response); lastStatus.value = 'Failed to fetch VRC status'; @@ -83,6 +82,7 @@ export const useVrcStatusStore = defineStore('VrcStatus', () => { updateAlert(); return; } + const data = JSON.parse(response.data); lastStatusTime.value = new Date(data.page.updated_at); if (data.status.description === 'All Systems Operational') { lastStatus.value = ''; diff --git a/src/views/Favorites/components/FavoritesWorldTab.vue b/src/views/Favorites/components/FavoritesWorldTab.vue index 94dd25d7..773059b0 100644 --- a/src/views/Favorites/components/FavoritesWorldTab.vue +++ b/src/views/Favorites/components/FavoritesWorldTab.vue @@ -296,7 +296,10 @@ const sliceWorldFavorites = computed(() => { return (group) => { - return groupedByGroupKeyFavoriteWorlds.value[group].slice(0, sliceWorldFavoritesLoadMoreNumber.value); + if (groupedByGroupKeyFavoriteWorlds.value[group]) { + return groupedByGroupKeyFavoriteWorlds.value[group].slice(0, sliceWorldFavoritesLoadMoreNumber.value); + } + return []; }; });