From cb6ff532c62e8213d15639478ed75a4e99053e40 Mon Sep 17 00:00:00 2001 From: Filip Sobol Date: Fri, 11 Dec 2020 16:43:33 +0100 Subject: [PATCH 1/8] Reduce Total Blocking Time --- packages/boilerplate/theme/package.json | 8 +- packages/core/nuxt-theme-module/package.json | 3 +- .../theme/layouts/default.vue | 21 +++- .../nuxt-theme-module/theme/pages/Home.vue | 115 ++++++++++-------- yarn.lock | 5 + 5 files changed, 93 insertions(+), 59 deletions(-) diff --git a/packages/boilerplate/theme/package.json b/packages/boilerplate/theme/package.json index 793dda7553..ead30d8b2e 100644 --- a/packages/boilerplate/theme/package.json +++ b/packages/boilerplate/theme/package.json @@ -11,22 +11,22 @@ "test": "jest" }, "dependencies": { + "@nuxtjs/style-resources": "^1.0.0", "@storefront-ui/vue": "^0.9.1", - "@vue-storefront/boilerplate-api": "^0.0.1", "@vue-storefront/boilerplate": "^0.0.1", + "@vue-storefront/boilerplate-api": "^0.0.1", "@vue-storefront/nuxt": "0.0.12-lc.16", "@vue-storefront/nuxt-theme": "0.0.6-lc.16", - "@nuxtjs/style-resources": "^1.0.0", "cookie-universal-nuxt": "^2.1.3", - "nuxt-i18n": "^6.5.0", "core-js": "^2.6.5", "nuxt": "^2.13.3", + "nuxt-i18n": "^6.5.0", "vee-validate": "^3.2.3", "vue-scrollto": "^2.17.1" }, "devDependencies": { - "@nuxt/typescript-build": "^2.0.0", "@nuxt/types": "^0.7.9", + "@nuxt/typescript-build": "^2.0.0", "@vue/test-utils": "^1.0.0-beta.27", "babel-jest": "^24.1.0", "jest": "^24.1.0", diff --git a/packages/core/nuxt-theme-module/package.json b/packages/core/nuxt-theme-module/package.json index 9c16e06e4d..f980a0693e 100644 --- a/packages/core/nuxt-theme-module/package.json +++ b/packages/core/nuxt-theme-module/package.json @@ -16,7 +16,8 @@ "ejs": "^3.0.2", "loglevel": "^1.6.7", "ts-loader": "^8.0.3", - "vue": "^2.6.11" + "vue": "^2.6.11", + "vue-lazy-hydration": "^2.0.0-beta.4" }, "publishConfig": { "access": "public" diff --git a/packages/core/nuxt-theme-module/theme/layouts/default.vue b/packages/core/nuxt-theme-module/theme/layouts/default.vue index 3009f78a51..d758bc8a4c 100644 --- a/packages/core/nuxt-theme-module/theme/layouts/default.vue +++ b/packages/core/nuxt-theme-module/theme/layouts/default.vue @@ -1,11 +1,22 @@ @@ -29,12 +33,8 @@ import AppHeader from '~/components/AppHeader.vue'; import BottomNavigation from '~/components/BottomNavigation.vue'; import AppFooter from '~/components/AppFooter.vue'; import TopBar from '~/components/TopBar.vue'; -import CartSidebar from '~/components/CartSidebar.vue'; -import WishlistSidebar from '~/components/WishlistSidebar.vue'; -import LoginModal from '~/components/LoginModal.vue'; import LazyHydrate from 'vue-lazy-hydration'; -// const CartSidebar = () => import(/* webpackChunkName: "CartSidebar" */ '~/components/CartSidebar.vue') -// const LoginModal = () => import(/* webpackChunkName: "LoginModal" */ '~/components/LoginModal.vue') +import { useUiState } from '~/composables'; export default { components: { @@ -43,9 +43,18 @@ export default { AppHeader, BottomNavigation, AppFooter, - CartSidebar, - WishlistSidebar, - LoginModal + CartSidebar: () => import(/* webpackChunkName: "CartSidebar" */ '~/components/CartSidebar.vue'), + WishlistSidebar: () => import(/* webpackChunkName: "WishlistSidebar" */ '~/components/WishlistSidebar.vue'), + LoginModal: () => import(/* webpackChunkName: "LoginModal" */ '~/components/LoginModal.vue') + }, + setup() { + const { isCartSidebarOpen, isWishlistSidebarOpen, isLoginModalOpen } = useUiState(); + + return { + isCartSidebarOpen, + isWishlistSidebarOpen, + isLoginModalOpen + }; } }; diff --git a/packages/core/nuxt-theme-module/theme/pages/Category.vue b/packages/core/nuxt-theme-module/theme/pages/Category.vue index 36277c0f4d..7afcd6d3b9 100644 --- a/packages/core/nuxt-theme-module/theme/pages/Category.vue +++ b/packages/core/nuxt-theme-module/theme/pages/Category.vue @@ -6,47 +6,60 @@ /> diff --git a/packages/core/nuxt-theme-module/theme/pages/Home.vue b/packages/core/nuxt-theme-module/theme/pages/Home.vue index 52b1906f86..aa874dd62f 100644 --- a/packages/core/nuxt-theme-module/theme/pages/Home.vue +++ b/packages/core/nuxt-theme-module/theme/pages/Home.vue @@ -15,7 +15,7 @@ - +