66 <LazyHydrate when-visible >
77 <Notification />
88 </LazyHydrate >
9- <TopBar class =" desktop-only" />
9+ <TopBar
10+ class =" desktop-only"
11+ v-if =" !isMobile"
12+ />
1013 <AppHeader />
1114 <div id =" layout" >
1215 <nuxt :key =" route.fullPath" />
1922<script >
2023import LazyHydrate from ' vue-lazy-hydration' ;
2124import {
22- useRoute , defineComponent , onMounted , useAsync ,
25+ useRoute , defineComponent , onMounted , useAsync , onBeforeUnmount , computed ,
2326} from ' @nuxtjs/composition-api' ;
2427import {
2528 useUser ,
2629} from ' @vue-storefront/magento' ;
30+ import {
31+ mapMobileObserver ,
32+ unMapMobileObserver ,
33+ } from ' @storefront-ui/vue/src/utilities/mobile-observer.js' ;
2734import useUiState from ' ~/composables/useUiState.ts' ;
2835
2936import { useMagentoConfiguration } from ' ~/composables/useMagentoConfiguration' ;
3037import AppHeader from ' ~/components/AppHeader.vue' ;
3138import BottomNavigation from ' ~/components/BottomNavigation.vue' ;
32- import TopBar from ' ~/components/TopBar' ;
3339
3440export default defineComponent ({
3541 name: ' DefaultLayout' ,
3642
3743 components: {
3844 LazyHydrate,
3945 AppHeader,
40- TopBar,
4146 BottomNavigation,
47+ TopBar : () => import (/* webpackPrefetch: true */ ' ~/components/TopBar' ),
4248 AppFooter : () => import (/* webpackPrefetch: true */ ' ~/components/AppFooter.vue' ),
4349 CartSidebar : () => import (/* webpackPrefetch: true */ ' ~/components/CartSidebar.vue' ),
4450 WishlistSidebar : () => import (/* webpackPrefetch: true */ ' ~/components/WishlistSidebar.vue' ),
@@ -51,6 +57,7 @@ export default defineComponent({
5157 const { load: loadUser } = useUser ();
5258 const { loadConfiguration } = useMagentoConfiguration ();
5359 const { isCartSidebarOpen , isWishlistSidebarOpen , isLoginModalOpen } = useUiState ();
60+ const isMobile = computed (() => mapMobileObserver ().isMobile .get ());
5461
5562 useAsync (() => {
5663 loadConfiguration ();
@@ -60,10 +67,15 @@ export default defineComponent({
6067 loadUser ();
6168 });
6269
70+ onBeforeUnmount (() => {
71+ unMapMobileObserver ();
72+ });
73+
6374 return {
6475 isCartSidebarOpen,
6576 isWishlistSidebarOpen,
6677 isLoginModalOpen,
78+ isMobile,
6779 route,
6880 };
6981 },
0 commit comments