Releases: vuestorefront/vue-storefront
Releases · vuestorefront/vue-storefront
Vue Storefront 1.12.0
Added
- Add
vsf-capybarasupport as a dependency and extend CLI to support customization - @psmyrek (#4209) - Support theme configuration via CLI - @psmyrek (#4395)
- Allow parent_ids field on product as an alternative to urlpath based breadcrumb navigation (#4219)
- Pass the original item_id when updating/deleting a cart entry @carlokok (#4218)
- Separating endpoints for CSR/SSR - @Fifciu (#2861)
- Added short hands for version and help flags - @jamesgeorge007 (#3946)
- Add
oroperator for Elasticsearch filters inquickSearchByQueryand use exists if value isnull- @cewald (#3960) - Add unified fetch in mappingFallback for all searched entities - @gibkigonzo (#3942)
- add npm-run-all for parallel build - @gibkigonzo (#3819)
- Add OutputCaching support for x-vs-store-code - @benjick (#3979)
- The new search adapter
api-search-queryhas been added. When you switch to it, by setting theconfig.server.api = "api-search-query"the ElasticSearch query is being built in thevue-storefront-apiwhich saves around 400kB in the bundle size asbodybuilderis no longer needed in the frontend - @pkarw - #2167 - This new
api-search-queryadapter supports theresponse_formatquery parameter which now is sent to the/api/catalogendpoint. Currently there is just one additional format supported:response_format=compact. When used, the response format got optimized by: a) remapping the results, removing the_sourcefrom thehits.hits; b) compressing the JSON fields names according to theconfig.products.fieldsToCompact; c) removing the JSON fields from theproduct.configurable_childrenwhen their values === parent product values; overall response size reduced over -70% - @pkarw - The
amp-renderermodule has been disabled by default to save the bundle size; If you'd like to enable it uncomment the module from thesrc/modulesand uncomment theproduct-ampandcategory-amplinks that are added to the<head>section in thesrc/themes/default/Product.vueandsrc/themes/default/Category.vue - Reset Password confirmation page - @Fifciu (#2576)
- Add
Intl.NumberFormat()/toLocaleString()via polyfill support in NodeJs - @cewald (#3836, #4040) - Added
saveBandwidthOverCacheparameter for skipping caching for products data - @andrzejewsky (#3706) - New zoom effect for product gallery images - @Michal-Dziedzinski (#2755)
- Add custom currency separators and amount of fraction digits - @EndPositive (#3553)
- Product Page Schema implementation as JSON-LD - @Michal-Dziedzinski (#3704)
- Add
/cache-version.jsonroute to get current cache version - Built-in module for detecting device type based on UserAgent with SSR support - @Fifciu
- Update to
storefront-query-builderversion1.0.0- @cewald (#4234) - Move generating files from webpack config to script @gibkigonzo (#4236)
- Add correct type matching to
getConfigurationMatchLevel- @cewald (#4241) - Support
useSpecificImagePathswithuseExactUrlsNoProxy- @cewald (#4243) - Adds module which handles cache invalidation for Fastly. - @gibkigonzo (#4096)
- Add vsf-cache-nginx and vsf-cache-varnish modules - @gibkigonzo (#4096)
- Added meta info for CMS pages from Magento @mdanilowicz (#4392)
- Add useful core events to server & logger - @cewald (#4419)
Fixed
- Fixed
resultPorcessortypo - @psmyrek - Negative price has doubled minus sign - @psmyrek (#4353)
- Fixed Search product fails for category filter when categoryId is string - @adityasharma7 (#3929)
- Revert init filters in Vue app - @gibkigonzo (#3929)
- All categories disappearing if you add the child category name to includeFields - @1070rik (#4015)
- Fix overlapping text in PersonalDetails component - @jakubmakielkowski (#4024)
- Redirect from checkout to home with a proper store code - @Fifciu
- Added back error notification when user selects invalid configuration - @1070rik (#4033)
- findConfigurableChildAsync - return best match for configurable variant - @gibkigonzo, @cewald (#4042, #4216)
- use storeCode for mappingFallback url - @gibkigonzo (#4050)
getVariantWithLowestPriceuses inexistentfinal_priceproperty - @cewald (#4091)- Fixed
NOT_ALLOWED_SSR_EXTENSIONS_REGEXto only match with file extensions having a dot - @haelbichalex (#4100) - Fixed problem with not showing error message when placing an order fails - @qiqqq
- Invoking afterCacheInvalidated server hook in a proper moment - @Fifciu (#4176)
- Fixed
cart/isVirtualCartto returnfalsewhen cart is empty - @haelbichalex(#4182) - Use
setProductGalleryinproduct/setCurrentto use logic of the action - @cewald (#4153) - Use same data format in getConfigurationMatchLevel - @gibkigonzo (#4208)
- removed possible memory leak in ssr - @ResuBaka (#4247)
- Bugfix for reactivity of
current_configurationinpopulateProductConfigurationAsync- @cewald (#4258) - Bugfix for build exception in Node v13.13+ - @cewald (#4249)
- Convert option ids to string while comparing them in
getProductConfiguration- @gibkigonzo (#4484) - change value to number in price filter - @gibkigonzo (#4478)
Changed / Improved
- Optimized
translation.processorto process only enabled locale CSV files - @pkarw (#3950) - Remove commit register mapping - @gibkigonzo (#3875)
- Improved method
findConfigurableChildAsync- find variant with lowest price - @gibkigonzo (#3939) - Removed
product/loadConfigurableAttributescalls - @andrzejewsky (#3336) - Removed unused locales in disabled multistore - @gibkigonzo (#4072)
- Optimized attributes loading - @andrzejewsky (#3948)
- Cart optimization can now be used regardless if entity optimization is enabled - @juho-jaakkola (#4198)
- Improve typescript support for test utils - @ResuBaka (#4067)
- Removed
product/loadConfigurableAttributescalls - @andrzejewsky, @gibkigonzo (#3336) - Disable
mapFallbackurl by default - @gibkigonzo(#4092) - Include token in pricing sync - @carlokok (#4156)
- Move 'graphql' search adapter from core to src (deprecated) - @gibkigonzo (#4214)
- Homepage, new products query, uses now
newattribute - @mdanilwoicz - Refactor product module, more info in upgrade notes- @gibkigonzo (#3952, #4459)
- Move default theme to separate repository https://github.com/DivanteLtd/vsf-default - @gibkigonzo (#4255)
- add two numbers after dot to price by default, calculate default price for bundle or grouped main product, update typing, add fallback to attribute options - @gibkigonzo (#4476)
- udpate yarn and filter shipping methods for instant checkout - @gibkigonzo (#4480)
- add attribute metadata search query, add parentId - @gibkigonzo (#4491)
Vue Storefront 1.11.4
Changed / Improved
- use yarn in cli installer - @gibkigonzo (#4292)
- disable out of stock notification when config.stock.allowOutOfStockInCart is true - @gibigonzo (#4340)
Fixed
- Use LRU as object contructor based on newest changes in module - @gibkigonzo (#4242)
- Fixed ESC button action (minicart, wishlist) - @mdanilowicz (#4393)
- Fixes problems related to tax calculation and price filter in multistore setup - @juho-jaakkola (#4376)
- Blank order details page - @mdanilowicz (#4382)
- upadate cart hash after sync with backend - @gibkigonzo (#4387)
- exit from errorHandler after redirection - @gibkigonzo (#4246)
- add redirection in component for simple product related to configurable product - @gibkigonzo (#4359)
- disable sending carrier_code or method_code for virtual products,
adjust vue-carousel and vuelidate to newest versions api,
add aplha validators for register fields - @gibkigonzo (#4455, #4461)
Vue Storefront 1.11.3
Changed / Improved
- The default config file is now in more human-readable format - @juho-jaakkola (#4197)
- Create only once aside async component - @gibkigonzo (#4229, #4268)
Fixed
- Fixes when having multiple custom options with overlapping option_type_id values, selecting 1 changes the others - @carlokok (#4196)
- Update eslint and fix code style. - @gibkigonzo (#4179 #4181)
- Fixes bug that caused addToCart action not to display messages to user - @juho-jaakkola (#4185)
- add missing cache tags for category and product - @gibkigonzo (#4173)
- add ssrAppId to avoid second meta render on csr - @gibkigonzo (#4203)
- take control over default broswer behavior and use saved category page size to load prev products - @gibkigonzo (#4201)
- update getCurrentCartHash after add/remove coupon - @gibkigonzo (#4220)
- update replaceNumberToString, so it will change ONLY numbers to string - @gibkigonzo (#4217)
- allow empty shipping methods in checkout - @gibkigozno (#4192)
- configure products before price update - this is needed to have variant sku as product sku - @gibkigonzo (#4053)
- omit stock and totals when creating cart hash, it is not needed to compare products - @gibkigozno (#4235, #4273)
Vue Storefront 1.11.2
Added
- Add
isBackRoutethat informs if user returns to route, skip loading products for category if he does - @gibkigonzo (#4066) - Add server context to async data loader - @gibkigonzo (#4113)
- Add preload and preconnect for google font - @gibkigonzo (#4121)
Changed / Improved
- optimizations - improved prefetch strategy - @gibkigonzo (#4080)
- improvements to Finnish translations - @evktalo (#4116)
- Radio button now allows separate checked, value and name attributes - @EndPositive (#4098)
- Update backwards compatible dependencies - @simonmaass (#4126)
Fixed
- add disconnect and sync options for cart/clear - @gibkigonzo (#4062)
- add '1' as searched value for 'is_user_defined' and 'is_visible' (createAttributesListQuery) - @gibkigonzo (#4075)
- Fix possibility to add same SKU with different custom options to the cart - @Michal-Dziedzinski (#3595)
- Fix
calculateProductTaxto find matching tax rules from ES for current product - @DylannCordel (#4056) - Set
totalsin products in cart always in reactive way - @psmyrek (#4079) - Fix sync cart between tabs - @Michal-Dziedzinski (#3838)
- Add currentRoute to url module and return cached requests - @gibkigonzo (#4077, #4066)
- Hide original radio button behind built label - @EndPositive (#4098)
- Disable overriding
routestate in INITIAL_STATE - @gibkigonzo (#4095) - Fix gtm order placement event when user was guest - @Michal-Dziedzinski (#4064)
- Fix gtm event switched properties - @Michal-Dziedzinski (#4106)
- Group 'productChecksum' and 'productsEquals' logic for all supported products types. Remove 'checksum' when editing product.
Remove and add coupon when user login Remove 'NA' as default company. Show qty in microcart for all types of product.
Remove preload font - it gives good performance, but vue-meta refresh page, because there is script onload. - @gibkigonzo (#4128) - Keep old category before route is resolved - @gibkigonzo (#4124)
- Added comments in 'productsEqual' and change logic for different types of products. Remove login user after order in Checkout. Allow changing qty for 'group' and 'bundle'.products - @gibkigonzo (#4144)
- Fix incorrect root categories when extending includeFields - @Michal-Dziedzinski (#4090)
- Add onlyPositive prop to BaseInputNumber to not allow user type negative value - @Michal-Dziedzinski (#4136)
- Await for cart/authorize while login user - @gibkigonzo (#4133)
- Fixed
NOT_ALLOWED_SSR_EXTENSIONS_REGEXto only match with file extensions having a dot - @haelbichalex (#4100) - Add lazy load for vue-carousel - @gibkigonzo (#4157)
Vue Storefront 1.10.6
Added
- Add lazy create cart token - @gibkigonzo (#3994)
- Add server context to async data loader - @gibkigonzo (pr#4113)
Fixed
- Fix low-quality images styles - @przspa (#3906)
- Fix page-not-found redirect in dispatcher - @gibkigonzo (#3956)
- Fix hiding overlay for newsletter modal - @gibkigonzo (#3970)
- Fix problem with storeView as dependency in filters - @gibkigonzo (#3968)
- Fix v-model not working in BaseRadioButton - @lukeromanowicz (#4035)
- add disconnect and sync options for clear/cart - @gibkigonzo (#4062)
- Fix current token invalidation with refresh token - @gibkigonzo (#3928, #3620, #3626)
- Disable overriding
route,config,storeView,versionstate in INITIAL_STATE - @gibkigonzo (pr#4095) - Disable zoom image on hover in mobile - @gibkigonzo (pr#4115)
Vue Storefront 1.11.1
Added
- Add
ProductPricecomponent with bundleOptions and customOptions prices - @gibkigonzo (#3978) - Add lazy create cart token - @gibkigonzo (#3994)
Changed / Improved
- Set cache tag when loading a category - @haelbichalex (#3940)
- In development build
webpack.config.jsin theme folder is now called without thedefaultkey
Fixed
- Added Finnish translations - @mattiteraslahti and @alphpkeemik
- Updated Estonian translations to match 1.11 - @alphpkeemik
- CookieNotification CSR&SSR mismatch fixed - @Fifciu (#3922)
- The attribute filter in
attribute/listwas not filtering the already loaded attributes properly - @pkarw (#3964) - Update
hasProductErrorsin Product component and support additional sku in custom options - @gibkigonzo (#3976) - Fixed logic for generating ${lang}.json files in multi-store setup - @jpkempf
- Fixed logic for collecting valid locales in single-store, multi-lang setup - @jpkempf
- Make initial custom option value reactive - @gibkigonzo
- Fixed No image thumbnails leaded on 404 page - @andrzejewsky (#3955)
- Fixed Stock logic not working with manage_stock set to false - @andrzejewsky - (#3957)
- Support old price format in
ProductPrice- @gibkigonzo (#3978) - Fixed product bundle comparison condition - @gk-daniel (#4004)
- Add event callback for checkout load initial data - @gibkigonzo(#3985)
- Fixed
Processing order...modal closing too early - @grimasod (#4021) - Keep registered payment methods after
syncTotals- @grimasod (#4020) - Added status code to the cache content and use it in cache response - @ResuBaka (#4014)
- Fixed sku attribute is missing on compare page - @gibkigonzo (#4036)
- Fixed z-index for aside in compare list - @gibkigonzo (#4037)
- Disable checking max quantity when manage stock is set to false - @gibkigonzo (#4038)
- Add products quantity only when token is created - @gibkigonzo (#4017)
- Revert init filters in Vue app - add storeView to global/store and pass it to filters - @gibkigonzo (#3929)
- Fix v-model not working in BaseRadioButton - @lukeromanowicz (#4035)
- always keep filters values as array of object - @gibkigonzo (#4045)
- Fix ecosystem config to work with ts-node - @andrzejewsky (#3981)
Vue Storefront 1.11.0
Added
- Add unit tests for
core/modules/url- @dz3n (#3469) - Add unit test for
core/modules/checkout- @psmyrek (#3460) - Add defense against incomplete config in ssr renderer - @oskar1233 (#3774)
- Add unit tests for
core/modules/order- @dz3n (#3466) - Add unit tests for
core/modules/user- @dz3n (#3470) - Add to cart from Wishlist and Product listing for simple products - @Dnd-Dboy, @dz3n (#2637)
- Add global Category and Breadcrumb filters, defined in local.json - @grimasod (#3691)
- Add constant which conditions the number of products loading per page - @adkamil (#3630)
- Added price filtering key as config - @Roywcm
Fixed
- Fixed missing parameter to query function from cms/store/block/actions - @georgiev-ivan (#3909)
- Always close zoom overlay after changing product - @psmyrek (#3818)
- Fixed problem with cutting image height in category page on 1024px+ screen res - @adkamil (#3781)
- Fixed null value of search input - @adkamil (#3778)
- Fixed product sorting - @adkamil (#3785)
- Fixed displaying
saleandnewmark - @andrzejewsky (#3800) - Fixed sorting on category page and product tile sizing - @andrzejewsky (#3817)
- Redirect from simple product using url_path - @benjick (#3804)
- Mount app in 'beforeResolve' if it's not dispatched in 'onReady' - @gibkigonzo (#3669)
- Fixed AMP pages - @andrzejewsky (#3799)
- Fixed Product page breadcrumbs problem when products are in multiple categories in different branches of the category tree - @grimasod (#3691)
- Change translation from jp-JP to ja-JP - @gibkigonzo (#3824)
- Fixed ecosystem config for pm2 - @andrzejewsky (#3842)
- Fixed
mappingFallbackfor extending modules - @andrzejewsky (#3822) - Fixed adding products search results to category-next product store - @grimasod (#3877)
- Use
defaultSortByfor sorting category products by default @haelbichalex (#3873) - Fixed some potential mutations of Config object in
catalogandcatalog-next- @grimasod (#3843) - Set
nullas default value for custom option in product page - @gibkigonzo (#3885) - Fixed Breadcrumb filters - apply to second category fetch - @grimasod (#3887)
- Fixed
config.storeViews.commonCachebeing ignored - @grimasod (#3895) - Fixed static pages, password notification, offline mode #3902 - @andrzejewsky (#3902)
- Fixed error page display with enabled multistore - @gibkigonzo (#3890)
- Fixed edit shipping address in my account - @gibkigonzo (#3921)
- Fetch cms_block content in serverPrefetch method - @gibkigonzo (#3910)
- Fixed saving invalidated user token - @andrzejewsky (#3923)
- Keep category products objects on ssr - @gibkigonzo (#3924)
- product breadcrumbs - check if current category is not highest one - @gibkigonzo (#3933)
- Use
defaultSortByfor sorting category products by default @haelbichalex (#3873)
Changed / Improved
- Changed pre commit hook to use NODE_ENV production to check for debugger statements - @ResuBaka (#3686)
- Improve the readability of 'getShippingDetails()' and 'updateDetails()' method of UserShippingDetails component - @adityasharma7 (#3770)
- Keep git after yarn install in dockerfile - @ddanier (#3826)
- Update the Storage Manager shipping details cache immediately when then Vuex checkout store is updated - @grimasod (#3894)
Vue Storefront 1.10.5
Fixed
- Disable product mutation when assigning product variant - @gibkigonzo (#3735)
- Fix issue with Cannot assign to read only property 'storeCode' - @yuriboyko (#3748)
- Render correct category links when multistore is active - @gibkigonzo (#3753)
- Disable product mutation when assigning product variant - @gibkigonzo (#3735)
- Fixed null value of search input - @adkamil (#3778)
- Sorting fixed on category page - @adkamil (#3785)
- Mount app in 'beforeResolve' if it's not dispatched in 'onReady' - @gibkigonzo (#3669)
- change translation from jp-JP to ja-JP - @gibkigonzo (#3824)
- Fix product images, my account link, warnings in console - @andrzejewsky (#3850)
Vue Storefront 1.11.0-rc.2
Note: If you're about to upgrade your custom VS theme from 1.10.x to 1.11, please read the theme upgrade guide. It should be really helpful!
Fixed
- Fixed deprecated getter in cmsBlock store - @ResuBaka (#3683)
- Fixed problem around dynamic urls when default storeView is set with appendStoreCode false and url set to / . @ResuBaka (#3685)
- Fixed three problems you can run into when you have bundle products - @ResuBaka (#3692)
- Reset nested menu after logout - @gibkigonzo (#3680)
- Fixed handling checkbox custom option - @gibkigonzo (#2781)
- Fixed typos in docs - @afozbek (#3709)
- Fixed VSF build fails for some people due to lack of dependencies in the container - @krskibin (#3699)
- Fixed two graphql problems, one with cms_blocks and the other with default sort order - @ResuBaka (#3718)
- Allow falsy value for
parent_idwhen searching category - @gibkigonzo (#3732) - Remove including .map files in service worker cache - @gibkigonzo (#3734)
- Changed notification message object to factory fn - @gibkigozno (#3716)
- Load recently viewed module in my account page - @gibkigonzo (#3722)
- Added validation message for city field on checkout page - @dz3n (#3723)
- Make price calculation based on saved original prices - @gibkigonzo (#3740)
- Improving is_comparable to work with booleans and digits - @dz3n (#3697)
- Fixed displaying categories on search menu - @andrzejewsky (#3758)
- Fixed broken link for store locator - @andrzejewsky (#3754)
- Fixed instant checkout functionality - @andrzejewsky (#3765)
- Fixed links to the promoted banners - @andrzejewsky (#3753)
- Fixed missing parameter in the compare list - @andrzejewsky (#3757)
- Fixed product link on mobile - @andrzejewsky (#3772)
Added
- Added support for ES7 - @andrzejewsky (#3690)
- Added unit tests for
core/modules/mailer- @krskibin (#3710) - Get payment methods with billing address data - @rain2o (#2878)
- Added custom page-size parameter for
category-next/loadCategoryProductsaction - @cewald (#3713, #3714) - Remove unused dayjs locales - @gibkigonzo (#3498)
- check max quantity in microcart - @gibkigonzo (#3314)
- Add unit tests for
core/modules/newsletter- @psmyrek (#3464) - Add unit test for
core/modules/wishlist- @psmyrek (#3471)
Vue Storefront 1.10.4
Fixed
- Added try/catch for fetching single product in cart synchronization - @gibkigonzo (#3632)
- Removed infinite loop when changing checkbox in shipping details - @gibkigonzo (#3656)
- Remove modifying config by reference in multistore - @gibkigonzo (#3617)
- Fix displaying same country twice in the in the country switcher - @andrzejewsky (#3587)
- Remove race condition while loading locale messages - @gibkigonzo (#3602)
- Fixed special price that can break when you change pages (browser navigation for/back) or just go from category to product page - @ResuBaka (#3638)
- Change sku to string when checking products equality - @gibkigonzo (#3606)
- Fixed problem with losing browser history - @andrzejewsky (#3642)
- Fixed resolving store code on SSR - @andrzejewsky (#3576)
- Fixed styles for original price on Wishlist sidebar - @przspa (#3392)
- Added debounce for updating quantity method in the cart - @andrzejewsky (#3191)
- Improved scrolling in Safari on iOS devices (sidebars) - @phoenixdev-kl (#3551)
- Improved cookie and offline badges (z-index, overflow) - @phoenixdev-kl (#3552)
- Added config to set Cache-Control header for static assets based on mime type - @phoenix-bjoern (#3268)
- Added catching of errors when ES is down - @qiqqq
localizedRoute()doesn't return urlDispatcher routes anymore. Use localizedDispatcherRoute instead - @lukeromanowicz (#3548)- Fixed hash in dynamically resolved urls causing resolving issues - @lukeromanowicz (#3515)
localizedRoute()now supports path (and prefers over fullPath) in LocalizedRoute objects - @lukeromanowicz (#3515)- Decreased the
localStoragequota usage + error handling by introducing new config variables:config.products.disablePersistentProductsCacheto not store products by SKU (by default it's on). Products are cached in ServiceWorker cache anyway so theproduct/listwill populate the in-memory cache (cache.setItem(..., memoryOnly = true));config.seo.disableUrlRoutesPersistentCache- to not store the url mappings; they're stored in in-memory cache anyway so no additional requests will be made to the backend for url mapping; however it might cause some issues with url routing in the offline mode (when the offline mode PWA installed on homescreen got reloaded, the in-memory cache will be cleared so there won't potentially be the url mappings; however the same like withproduct/listthe ServiceWorker cache SHOULD populate url mappings anyway);config.syncTasks.disablePersistentTaskQueueto not store the network requests queue in service worker. Currently only the stock-check and user-data changes were using this queue. The only downside it introuces can be related to the offline mode and these tasks will not be re-executed after connectivity established, but just in a case when the page got reloaded while offline (yeah it might happen using ServiceWorker;syncTaskscan't be re-populated in cache from SW) - @pkarw (#2985) - Fixed evaluate detailsLink in the cookie notification - @benjick (#3689)
Added
- Added german translations - @schwerdt-ke (3076)