refactor: use router handle login redirect

This commit is contained in:
pa
2025-11-12 16:46:00 +09:00
committed by Natsumi
parent a2f76d1a3e
commit 957a69f745
4 changed files with 203 additions and 123 deletions
+2 -81
View File
@@ -9,68 +9,15 @@
ondragenter="event.preventDefault()"
ondragover="event.preventDefault()"
ondrop="event.preventDefault()">
<!-- ### Login ### -->
<Login v-if="!watchState.isLoggedIn"></Login>
<RouterView></RouterView>
<VRCXUpdateDialog></VRCXUpdateDialog>
<template v-if="watchState.isLoggedIn">
<NavMenu></NavMenu>
<el-splitter @resize-end="setAsideWidth">
<el-splitter-panel>
<RouterView></RouterView>
</el-splitter-panel>
<el-splitter-panel v-if="isSideBarTabShow" :min="250" :max="700" :size="asideWidth" collapsible>
<Sidebar></Sidebar>
</el-splitter-panel>
</el-splitter>
<!-- ## Dialogs ## -->
<UserDialog></UserDialog>
<WorldDialog></WorldDialog>
<AvatarDialog></AvatarDialog>
<GroupDialog></GroupDialog>
<GroupMemberModerationDialog></GroupMemberModerationDialog>
<InviteGroupDialog></InviteGroupDialog>
<FullscreenImagePreview></FullscreenImagePreview>
<PreviousInstancesInfoDialog></PreviousInstancesInfoDialog>
<LaunchDialog></LaunchDialog>
<LaunchOptionsDialog></LaunchOptionsDialog>
<FriendImportDialog></FriendImportDialog>
<WorldImportDialog></WorldImportDialog>
<AvatarImportDialog></AvatarImportDialog>
<ChooseFavoriteGroupDialog></ChooseFavoriteGroupDialog>
<VRChatConfigDialog></VRChatConfigDialog>
<PrimaryPasswordDialog></PrimaryPasswordDialog>
<SendBoopDialog></SendBoopDialog>
<ChangelogDialog></ChangelogDialog>
</template>
</div>
</el-config-provider>
</template>
<script setup>
import { computed, onBeforeMount, onMounted } from 'vue';
import { storeToRefs } from 'pinia';
import { useI18n } from 'vue-i18n';
import cs from 'element-plus/es/locale/lang/cs';
@@ -88,33 +35,11 @@
import zhCN from 'element-plus/es/locale/lang/zh-cn';
import zhTW from 'element-plus/es/locale/lang/zh-tw';
import { createGlobalStores, useAppearanceSettingsStore } from './stores';
import { createGlobalStores } from './stores';
import { initNoty } from './plugin/noty';
import { watchState } from './service/watchState';
import AvatarDialog from './components/dialogs/AvatarDialog/AvatarDialog.vue';
import AvatarImportDialog from './views/Favorites/dialogs/AvatarImportDialog.vue';
import ChangelogDialog from './views/Settings/dialogs/ChangelogDialog.vue';
import ChooseFavoriteGroupDialog from './components/dialogs/ChooseFavoriteGroupDialog.vue';
import FriendImportDialog from './views/Favorites/dialogs/FriendImportDialog.vue';
import FullscreenImagePreview from './components/FullscreenImagePreview.vue';
import GroupDialog from './components/dialogs/GroupDialog/GroupDialog.vue';
import GroupMemberModerationDialog from './components/dialogs/GroupDialog/GroupMemberModerationDialog.vue';
import InviteGroupDialog from './components/dialogs/InviteGroupDialog.vue';
import LaunchDialog from './components/dialogs/LaunchDialog.vue';
import LaunchOptionsDialog from './views/Settings/dialogs/LaunchOptionsDialog.vue';
import Login from './views/Login/Login.vue';
import MacOSTitleBar from './components/MacOSTitleBar.vue';
import NavMenu from './components/NavMenu.vue';
import PreviousInstancesInfoDialog from './components/dialogs/PreviousInstancesDialog/PreviousInstancesInfoDialog.vue';
import PrimaryPasswordDialog from './views/Settings/dialogs/PrimaryPasswordDialog.vue';
import SendBoopDialog from './components/dialogs/SendBoopDialog.vue';
import Sidebar from './views/Sidebar/Sidebar.vue';
import UserDialog from './components/dialogs/UserDialog/UserDialog.vue';
import VRCXUpdateDialog from './components/dialogs/VRCXUpdateDialog.vue';
import VRChatConfigDialog from './views/Settings/dialogs/VRChatConfigDialog.vue';
import WorldDialog from './components/dialogs/WorldDialog/WorldDialog.vue';
import WorldImportDialog from './views/Favorites/dialogs/WorldImportDialog.vue';
import './app.scss';
@@ -166,10 +91,6 @@
store.vrcx.checkAutoBackupRestoreVrcRegistry();
store.game.checkVRChatDebugLogging();
});
const appearanceStore = useAppearanceSettingsStore();
const { setAsideWidth } = appearanceStore;
const { asideWidth, isSideBarTabShow } = storeToRefs(appearanceStore);
</script>
<style lang="scss" scoped>