73dfbbe8b5
Drop the eager Antd global import in favour of unplugin-vue-components on-demand resolution, async route components, defineAsyncComponent for the shell/login split, and a dynamic Modal import inside showClientActionError. Pair that with a visibility-aware runtime poller that stops the 15s snapshot refresh when the window is hidden and kicks off an immediate refresh on re-show. Refresh DesktopShell nav with inline icons and a calmer active/hover treatment, and land ActionButton/DisclosurePanel/PaginationBar primitives for upcoming views. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
19 lines
540 B
Vue
19 lines
540 B
Vue
<script setup lang="ts">
|
|
import { defineAsyncComponent, onMounted } from "vue";
|
|
import { useDesktopSession } from "./composables/useDesktopSession";
|
|
|
|
const DesktopShell = defineAsyncComponent(() => import("./components/DesktopShell.vue"));
|
|
const LoginView = defineAsyncComponent(() => import("./views/LoginView.vue"));
|
|
|
|
const { isAuthenticated, syncRuntimeSession } = useDesktopSession();
|
|
|
|
onMounted(() => {
|
|
void syncRuntimeSession();
|
|
});
|
|
</script>
|
|
|
|
<template>
|
|
<DesktopShell v-if="isAuthenticated" />
|
|
<LoginView v-else />
|
|
</template>
|