v1.6.0 (2024-10-10) Overview of all changes
TODO 📙 Migration guide
- Because Vue components now use different color weights (see New section for details), you have to update your color palettes as follows:
900
->700
800
->600
700
->500
600
->400
500
->300
400
->200
300
->100
200
->50
100
->50
- Replace all instances of
SfButton
withUiButton
. - Update the variable name
NEWSLETTER_FORM_SHOW_NAMES
toNEWSLETTERFORMNAMES
in your environment. - Update the variable name
USE_AVIF
toIMAGEAVIF
in your environment. - Update the variable name
USE_WEBP
toIMAGEWEBP
in your environment.
🚀 New
Functionality
- Product pages now display the EU responsible person of the manufacturer.
- The app now takes into consideration the referrer ID to display the correct price.
- Reorders now support order properties.
- Reorders now check for available stock.
Dev tools
- For debugging, you can now disable API caching with the query param
noCache=1
.
Payment
- PayPal's Pay Later banner is now displayed on product pages, the cart, checkout and quick checkout.
- Updated the PayPal form for credit card information.
- The quick checkout now displays variation properties.
- The order confirmation page now displays bank details if the payment method is cash in advance.
Configuration
- The app can now fetch the Favicon from the plentysystems system.
- The app can now fetch the logo from the plentysystems system.
- The app now reads which Google Fonts to use from the environment.
- The app can now generate a complete Tailwind color palette from a single main color. To use this functionality, enable the
build:before
hook'sgenerateScssVariables
method and set the environment variablesPRIMARY
andSECONDARY
. These variables represent the center color of the Tailwind palette, weight500
. As part of this update, all instances ofSfButton
have been replaced with a newUiButton
component. Functionally,UiButton
is identical toSfButton
, but some color weights were adjusted to work with the generated palettes. ESLint now reports anerror
forSfButton
. You can disable this rule inapps/web/eslintrc.cjs
. - The app now reads the internationalisation configuration from the environment. This includes the available languages and the default language.
- The app now reads whether to display the newsletter signup form on the homepage from the environment.
- The homepage template can now be configured via a category template.
- The footer and
shop-name
meta field now use the shop name.
SEO
- The app now reads the head title and title suffix from the environment.
- The app now reads metadata for products and categories, from the environment.
- The app now reads title and alternate for product images, from the environment.
- The app now reads metadata, such as description and keywords, from the environment.
- The app now reads the minimum required Open Graph data, that is the title, image, and endpoint, from the environment.
- Added canonical meta tags to product items.
Page speed
- Added cache-control for all static images to improve caching policy.
- Shop logo is now preloaded.
Accessibility Improvements
- Added table header in the MyAccount.
- Changed contrast for
Verfied purchase
text in feedback to increase accessibility. - Added label tags for inputs in
NewsletterSubscribe.vue
component. - Added labels for both min and max price filters.
- Increased size of wishlist and cart icon counter.
- Changed size for the cookie bar elements to increase accessibility.
🩹 Fixed
- Fixed
withDefaults() is unnecessary when using destructure with defineProps()
terminal error. - Fixed the REST call to fetch the remote configuration in the build process.
- Fixed middleware calls being stuck in an infinite loop.
- Fixed tailwind css double import.
- Fixed a deadspot in the viewport for the navigation bar.
- Added link color on item variation properties.
- Fixed pagination issues with reactivity.
- Fixed wrongful display of base prices.
- Fixed setting the vsf-locale cookie on ssr.
- The side navigation of the automatically generated composables documentation now contains the correct links.
- Fixed editing author name on reviews and replies with added e2e.
- Fixed the issue with the plentyID-cookie in the PWA live preview.
- Fixed that the PayPal Express button on the product page is only displayed if the item is available for purchase.
- Fixed that when fetching configurations from plentysystems, the build would only apply updates on the second run.
- Fixed orphaned form label on product page attributes.
- Fixed cookie bar privacy link not working properly.
- Fixed minor styling issues in the credit card form in the checkout and the rating form on the product page.
- Fixed DE translation regarding VAT.
- Fixed wrong price issues.
- Base price display on minimum order quantity.
- Display fonts now use the configured font family.
- Incorrect display of the PayPal loader
- Fixed my orders actions paddings and cookie bar link sizes.
- Fixed basket accesibilty issues.
- Fixed broken aria reference in cournty select and login modal.
- Fixed addtobasket overlay accesibilty issues.
- Fixed login page accesibilty issues.
👷 Changed
- Addresses: Enhanced
Address
interaction with a new, streamlined design, improved UX, and a more intuitive structure. - Addresses in read-only checkout are now displayed as non-editable and appear disabled.
- Unify html nodes on category page to use
h6
node. - Added display of file properties with download links for items.
- Ensure the design of order properties and variation properties is consistent.
- Cookiebar icon has been replaced.
- Checkout address buttons in the mobile view have been adjusted.
- The configuration files for app, cookie, interntaionlisation, and Tailwind settings have been moved to the
apps/web/configuration
folder. - Changes to item reviews logic in order to use the new feedback API.
- The order confirmation page url from
.../thank-you?[...]
to.../confirmation/orderId/accessKey
. - Remove cookie browser language detect.
- Set page
title
for items and categories instead ofmeta-title
. - Refactor of reviews functionality for better performance and maintainability.
- Change the file item property color to blue in the quick checkout.
- Changed the name of the Cloudflare Turnstile Sitekey environment variable to make it compatible with the system configuration.
- Eliminate the separate review average fetch by retrieving data directly from the reviews request.
- Resize demo favicon to 3 kb.
- The whole application uses the same font family now.
- Change the mobile design of the cookie bar layout.
- Modified manufacturer data appearance.
🏡 Chore
- Removed unnecessary Vue imports
- Updated Nuxt to 3.13.1 (includes Vue 3.5.0) for increased performance and stability.
History
What's Changed
- fix: add /rest to config fetch call by @clincu-plenty in #567
- feat: cookiebar icon replace by @csandru-plenty in #562
- feat: read app meta config from environment by @aoltean-plenty in #568
- feat: order again order properties by @FabianGerke in #573
- fix: infinite middleware call loop by @maxiroellplenty in #576
- fix: checkout address buttons on mobile by @FabianGerke in #574
- fix: paypal script load blocks main thread by @pfrincu-plenty in #577
- feat: move configurations to designated folder + adjusted imports by @aoltean-plenty in #581
- chore: update sdk version by @maxiroellplenty in #583
- fix: tailwind double import by @abocsan-plenty in #579
- feat: metadata for products and categories by @doproiescu-plenty in #582
- feat: update review logic to use feedback api ms by @ivladu-plenty in #578
- fix: category url trailing-slash results in 404 by @maxiroellplenty in #586
- fix: align design of properties by @rbedeoan-plenty in #575
- feat: create account after guest order by @FabianGerke in #585
- feat: refactor confirmation url by @N-Feist in #590
- feat: buy again with stock availability by @FabianGerke in #592
- feat: item link color by @doproiescu-plenty in #589
- fix: remove cookie browser language detect by @abocsan-plenty in #594
- fix: viewport deadspot for navigation by @N-Feist in #593
- fix: pagination reactivity + hydration warnings fix by @abocsan-plenty in #591
- fix: fix base prices by @abocsan-plenty in #597
- feat: tailwind color customization - variables scripts + color palette global change by @aoltean-plenty in #569
- chore: viewport fix by @N-Feist in #603
- fix: remove category image loading spinner by @volkerhoffmann in #601
- feat: use product unit test by @N-Feist in #478
- fix: setting the vsf-locale cookie on ssr by @FabianGerke in #602
- fix(docs-composables): side navigation links by @ksted in #605
- chore: create unit test for sdk client cookie helper by @maxiroellplenty in #604
- fix: preload logo by @rbedeoan-plenty in #596
- feat: dynamic metadata title for items by @doproiescu-plenty in #600
- chore(deps-dev): bump nuxt from 3.12.2 to 3.12.4 in the npm_and_yarn group across 1 directory by @dependabot in #588
- fix: missing fetch flag when rebuilding by @clincu-plenty in #611
- feat: add favicon configuration at build time by @clincu-plenty in #610
- refactor: product reviews by @abocsan-plenty in #607
- chore: update CODEOWNERS by @ksted in #616
- chore: update sdk version by @FabianGerke in #617
- feat: add fetch logo script by @ksted in #615
- feat: dynamic image title by @doproiescu-plenty in #613
- feat: configure google fonts via env by @ksted in #614
- feat: added pagination test for reviews by @abocsan-plenty in #619
- feat: add heading to categories by @doproiescu-plenty in #618
- chore: ssr init by @FabianGerke in #595
- feat: paypal card fields instead of hosted fields by @volkerhoffmann in #584
- fix: accessability of return page by @N-Feist in #624
- fix: review author name not editable e2e by @ivladu-plenty in #621
- fix: issue with the plentyID-cookie in the PWA live preview by @FabianGerke in #629
- fix: only show express button if the item is salable by @FabianGerke in #631
- fix: display file property by @rbedeoan-plenty in #627
- feat: add quick checkout data from cart request by @abocsan-plenty in #633
- feat: canonical on item by @doproiescu-plenty in #632
- feat: adding newsletter configuration by @clincu-plenty in #622
- feat: implement Applepay as a payment method by @pfrincu-plenty in #626
- feat: accessibility issues with newsletter form by @ivladu-plenty in #638
- feat: appropriate click sizes for interactive elements by @ivladu-plenty in #637
- fix: move system configuration from hook to separate script by @ksted in #636
- feat: add referrer id by @csandru-plenty in #643
- feat: font size of wishlist by @teodorrosusn in #639
- feat: feedback text verified purchase contrast by @ivladu-plenty in #644
- fix: orphaned attribute form larabel by @doproiescu-plenty in #648
- feat: labels for min-max price filters by @teodorrosusn in #640
- fix: fix cookie privacy link by @abocsan-plenty in #650
- feat: reduce open graph protocol app config to minimum required by @ksted in #651
- fix: review and card fields form design by @N-Feist in #649
- chore: review and card field form syntax fix by @N-Feist in #652
- fix: added important to leading class by @teodorrosusn in #654
- fix: fix vat translation by @abocsan-plenty in #655
- feat: server static assets by @teodorrosusn in #647
- chore: fix paypal creditcard test by @volkerhoffmann in #660
- feat: optimize aria labels and alt texts on homepage by @doproiescu-plenty in #657
- fix: make property link blue by @teodorrosusn in #658
- fix: login page accesibilty issues by @rbedeoan-plenty in #661
- feat: my account table header by @doproiescu-plenty in #662
- feat: update turnstile sitekey name to match system configuration by @ksted in #656
- fix: add to basket overlay accesibility by @rbedeoan-plenty in #663
- chore: update nuxt version by @abocsan-plenty in #665
- docs: add notes for nuxt dependecy updates by @ksted in #666
- fix: header logo working only as a svg by @clincu-plenty in #667
- feat: nocache query param by @maxiroellplenty in #668
- fix: re-add alt attribute by @ksted in #670
- fix: base price by @abocsan-plenty in #598
- chore: update Nuxt to version 3.13.2 by @ksted in #676
- test: move reviews e2e test to quarantine by @ksted in #678
- refactor: defineProps withDefaults by @ksted in #679
- fix: resize favicon by @rbedeoan-plenty in #675
- fix: broken aria reference by @rbedeoan-plenty in #674
- feat: paypal paylater banners by @FabianGerke in #646
- fix: modern images casting issue by @clincu-plenty in #680
- fix: basket accesibility by @rbedeoan-plenty in #672
- feat: new checkout addresses by @maxiroellplenty in #563
- chore: lodash named imports by @csandru-plenty in #684
- docs: restructure changelog, fix typos, change formulation by @Tim-M-S in #685
- chore: change address select label and fix VeeErrorMessage mounts by @maxiroellplenty in #686
- chore: remove cardholder from credit card by @FabianGerke in #687
- feat: review average fetching improvement by @ivladu-plenty in #673
- chore: adjust credit card e2e test by @maxiroellplenty in #689
- chore: move the review e2e out of quarantine by @ivladu-plenty in #688
- fix: nuxt terminal error by @csandru-plenty in #682
- fix: order properties responsivess bug by @rbedeoan-plenty in #692
- fix: removed demo links from footer by @rbedeoan-plenty in #693
- feat: manufacturer information by @doproiescu-plenty in #695
- feat: homepage customization by @oivan-plenty in #669
- chore: updated translations for EU responsible person and manufacturer; fixe… by @fmutschler in #697
- fix: update paddings by @doproiescu-plenty in #698
- docs: remove explicit return type by @ksted in #700
- feat: adding store title from settings by @clincu-plenty in #701
- docs: update modern image env variable names by @ksted in #699
- chore: add useProductPrice unit tests by @maxiroellplenty in #704
- chore: remove double imports by @csandru-plenty in #705
- feat: homepage adaptations by @aoltean-plenty in #706
- feat: sbs/language configuration by @aoltean-plenty in #677
- feat: show bank details on the order confirmation page by @FabianGerke in #707
- chore: check render order bank details by @csandru-plenty in #710
- fix: refactor cookiebar layout for mobile by @rbedeoan-plenty in #703
- chore(cypress): update cypress to latest version by @stentrop in #714
- feat: remove display font by @clincu-plenty in #712
- feat: add flexible image for MediaCard.vue by @oivan-plenty in #711
- feat: read only addresses by @csandru-plenty in #713
- chore: paypal checkout fix by @FabianGerke in #720
- fix: cart and wishlist count badge size by @maxiroellplenty in #718
- chore: adjust cart wishlist badge size by @maxiroellplenty in #721
- fix: paypal loader by @csandru-plenty in #717
- chore: update paypal color to gold by @FabianGerke in #722
- feat: update manufacturer apparence by @doproiescu-plenty in #716
- feat: optimization fixes by @aoltean-plenty in #724
- feat: adding flags and languages from multilingualism by @clincu-plenty in #726
- feat: add store name in footer and shop meta field by @aoltean-plenty in #725
- feat: added product minimum quantity price logic by @abocsan-plenty in #719
- feat: update media card to allow multiple entries by @oivan-plenty in #727
- chore: hide applepay by @maxiroellplenty in #729
- docs: update changelog en by @ksted in #723
New Contributors
- @volkerhoffmann made their first contribution in #601
- @stentrop made their first contribution in #714
Full Changelog: v1.5.0...v1.6.0