Skip to content

Conversation

@github-actions
Copy link
Contributor

@github-actions github-actions bot commented May 4, 2022

Vue Storefront for Magento 1.0.0.rc.7 highlights

Refactoring of composables

In this version, the integration packages @vue-storefront/magento has been marked as deprecated. All things from this package including composables, getters, and helpers have been moved to @vue-storefront/magento-theme

All composables have been refactored and moved to the theme.

  • SharedRefs are not used anymore.
    • from now we use the Pinia store for global state management
    • instead of sharing context between each composables we use the useContext hook from Nuxt Composition API
    • factories have been removed, and from now each composable is a function without dependencies on the @vue-storefront/core package

Getters have been moved to the theme package and marked as deprecated.

In the next releases, getters will be removed.

Helpers have been moved to the theme package

The onSSR hook is not used anymore

From now, each operation that should be performed on the server-side must be called inside on the useFetch and the useAsync functions that are part of Nuxt Composition API.

The i18n plugin is not used anymore

The i18n plugin from @vue-storefront/core is not used anymore. Configuring i18n is the responsibility of the theme package from now.

Modularization

We started the process of split whole app into modules. The first module is the category module that contains components and logic responsible for catalog category pages. In next releases we will continue refactorization and add modules for other parts of app like product, checkout, account, wishlist and so on.

New features

Performance improvements

  • From now, user data is loaded only on pages where it’s necessary like checkout and my account pages. In other cases, user data is not loading and thanks to that the performance on mobile is better because we decreased the time of JS long tasks. perf!: load whole user object only when necessary #859
  • We added the storeConfig plugin and changed the approach to getting config from Magento. refactor!: store config query #862
    • before we loaded the whole Magento config on page load, and we did that in layout so it was not possible to change the use different layout than the default
    • after this change, we load only a few necessary fields by the Nuxt plugin.
    • Thanks to that it’s possible to use other layouts like default. Moreover, this has an impact on performance because the storeConfig Magento query is not cached on the Magento side, so when we decreased the amount of data, the time of response should be faster.
  • Once we updated the Storefront UI to the newest version, we were able to add support for the NuxtImage for images in the Gallery on ta Product Page feat: add more support for cloudinary images #850

Bugfix

Refactors

Chore

Documentation

  • documentation about composables has been fully rewrited
  • added documentation for API Client methods

bartoszherba and others added 30 commits February 8, 2022 09:39
Co-authored-by: Alexander Devitsky <[email protected]>
* chore: fixed some error reported by eslint

* refactor: removed unnecessary type file
* fix(theme): show currency-switcher on mobile

* fix(theme): only show login-modal when user isn't logged in
- add loadTotalQuantity method on the cart composable as sometimes this is the only information needed
- add lazy load for a minicart
- header will pull only total quantity data instead of loading whole cart
…ncy switcher

- if there is less than 2 currencies/stores relevant switcher will be not displayed
- added useApi composable to use GraphQL APi on the client side
- update social icons to reduce weight and increase quality
- load footer only when visible
- add @nuxtjs/device package to recognize used device
- remove mobile observer from header and replave it with device recognition tool

- navigation is now lazy loaded, categories required for a navigation are not loaded at all on
mobile devices
- move search bar component to components/Header
- remove unused code and watchers
@Frodigo Frodigo marked this pull request as draft May 4, 2022 12:52
@Frodigo Frodigo force-pushed the release/1.0.0-rc.7 branch from 784ac43 to 49a7290 Compare May 23, 2022 13:33
@Frodigo Frodigo marked this pull request as ready for review May 24, 2022 05:30
@Frodigo Frodigo force-pushed the release/1.0.0-rc.7 branch 2 times, most recently from f23dcde to 6ff9f41 Compare May 24, 2022 05:37
@Frodigo Frodigo merged commit b4b866c into main May 24, 2022
@Frodigo Frodigo deleted the release/1.0.0-rc.7 branch May 24, 2022 06:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.