Releases: plentymarkets/plentyshop-pwa
Releases · plentymarkets/plentyshop-pwa
v1.7.0
v1.7.0 (2024-11-06) Overview of all changes
New
- Google Pay and Apple Pay are now available as payment methods in the checkout.
- Clicking the Buy button with an unsaved address now displays a notification.
- To ensure compliance with geo-blocking regulations, selecting an EU country as the shipping country now makes all EU countries available as billing options.
- The product title display now supports custom titles. You can set the custom title on the item. If no custom title is set, the default "Item name | Company name" is used.
- Added tax and shipping note to the wishlist page.
- Added a new request header for the
configId
. - Added the environment variable
NO_CACHE
for disabling caching. - The hero banner and media card now support alt text properties for images.
- Enabled font color customization for the hero banner via a template property.
- Added a new carousel compoment.
- Added an edit mode toolbar and JSON editor for the front end. Note that this is a preparatory step. Further functionality will be added in an upcoming version.
🩹 Fixed
- Fixed an issue where increasing the quantity beyond maximum stock would clear the cart.
- Removed the "Add to Cart" notification from item and category pages when the quick checkout modal is not present.
- Improved accessibility for the cart and wishlist pages by increasing the font size.
- Fixed an issue where the product path was not reactive when the category was changed.
- The build now automatically generates a language file for every active language, not just the default language.
- Resolved an issue where the soft login was still shown after successful authentication on the order confirmation page.
- Corrected manufacturer data to use
externalName
instead ofname
in structured data. - Updated headlines to use the configured font.
- Fixed layout shift on the category page.
- Resolved build script failure on Windows due to file name pattern incompatibilities.
- The build script now adds the
API_URL
to the environment if it exists.
👷 Changed
- Implemented a new notification design.
- Increased default notification timeout from 3 to 5 seconds.
- The
height
andwidth
attributes set in Terra UI are now used only for full-size images of an item. - Moved the generation of missing language files based on the environment's language configuration to the build script. The locale configuration is now based on the language files in the
lang
directory. - Started unifying SDK/API error handling. Errors now return keys that can be translated in the frontend.
- Improved manufacturer visuals.
- Updated manufacturer translation text.
- Added support for a second argument to the payment status on an order. This allows you to define custom translations for different payment states.
- When trying to access the checkout with an empty cart, or if the user empties the cart during the checkout process, the user is now redirected to the cart.
- The logo container is now more flexible and adapts to the dimensions of the provided logo.
History
What's Changed
- fix: product url path on category switch by @abocsan-plenty in #730
- feat: offer page by @N-Feist in #691
- fix: create empty json for active language, if no json is found in directory by @clincu-plenty in #731
- chore: switched the types of the buttons on the decline offer modal by @N-Feist in #732
- refactor: locale configuration by @ksted in #735
- fix: order confirmation soft login by @FabianGerke in #737
- fix: fix manufacturer on structured data by @abocsan-plenty in #738
- feat: add new request header for configId + no cache in env by @abocsan-plenty in #740
- fix: error messages by @FabianGerke in #734
- fix: remove sizes for non full images by @rbedeoan-plenty in #739
- feat: update notification design by @doproiescu-plenty in #742
- feat: swiper carousel by @aoltean-plenty in #736
- fix: typography in headlines by @ksted in #750
- fix: content layout shift by @abocsan-plenty in #752
- fix: include tax note in wishlist by @rbedeoan-plenty in #748
- feat: manufacturer-improvements by @doproiescu-plenty in #753
- chore: updated translations for EU Responsible Person + Manufacturer by @fmutschler in #728
- fix: fix swiper mobile cls by @aoltean-plenty in #756
- fix: cart and wishlist numbers by @csandru-plenty in #749
- fix: removed addtocart notification by @rbedeoan-plenty in #747
- chore: adjust loginFailed translation key by @maxiroellplenty in #759
- fix: logo adaptation by @aoltean-plenty in #751
- feat: alt text for media card and for hero by @clincu-plenty in #758
- feat: adding the ability to color text in hero banner by @clincu-plenty in #755
- feat: geo blocking regulation by @csandru-plenty in #709
- chore: downsize wishlist buttons by @abocsan-plenty in #766
- ci: add dependency review job to compliance workflow by @ksted in #765
- fix: handle item maximum stock by @csandru-plenty in #757
- feat: refactor-index by @oivan-plenty in #769
- feat: notify on unsaved address by @csandru-plenty in #762
- feat: reject empty checkout by @csandru-plenty in #770
- feat: set default notification timeout to 5 seconds by @maxiroellplenty in #771
- fix: cls spike by @aoltean-plenty in #761
- feat: use the paymentStatus translation key to display the right payment status by @N-Feist in #772
- fix: build on windows by @ksted in #760
- feat: toolbar component and json editor by @aoltean-plenty in #763
- feat: display product titles without suffix by @doproiescu-plenty in #767
- chore: manufacturer eu responsible country name by @abocsan-plenty in #774
- fix(build): add api url to environment map by @ksted in #778
- chore: fix after paypal order cart gets cleared and watcher redirects… by @maxiroellplenty in #780
- chore: show default error message by @FabianGerke in #781
- feat: apple pay & google pay by @pfrincu-plenty in #746
- docs: update changelog by @ksted in #779
- chore: validate addresses for google and apple pay by @FabianGerke in #782
Full Changelog: v1.6.0...v1.7.0
v1.6.0
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 + col...
v1.5.0
v1.5.0 (2024-07-18) Overview of all changes
TODO 📙 Migration guide
- The package
@plentymarkets/shop-sdk
was migrated to the new@vue-storefront/nuxt
middleware module structure. - The package
@plentymarkets/shop-sdk
was removed and all its functionality was moved into@plentymarkets/shop-api
- All
@plentymarkets/shop-sdk
imports have to be renamed to@plentymarkets/shop-api
- useSdk() is now automatically imported and can no longer be imported. Remove all
import { useSdk } from '~/sdk';
imports.
🚀 New
- Variation properties can be displayed in the store
- Demo for changing app settings at runtime
- Uploaded files as a product attribute can now be downloaded
- Hook to load system configuration
- Reorder previous purchases from 'My Account' and order confirmation pages using the 'Buy Again' feature
🩹 Fixed
- Recursive calls found under catch-all
category/product
routes - Multiple hydration errors
- A problem with the image loading status for products on category pages
- Webmanifest 404 error
- Checkout console error
- Product attributes empty list rendering
- Canonical links are now correctly set
- Missing translation in country select
- Missing item short description
- Wrong link on the order confirmation page
- Bundle items links missing image
- Badges elements rendering
- Wishlist button aria label
- Reserve place for PayPal in express checkout if paypal is not configured
- Item image size in item list
- Layout shift on "add to cart" button
- Wishlist button not toggling between filled/empty heart icon
- Addresses not being displayed in checkout after creation
- No redirect occurred when using the login on the header while on the guest login page
- Cross price display on small screen sizes
- Language selector on small screen sizes
- The scroll towards reviews on small screen sizes
- Fetch system configuration script not using the
FETCH_REMOTE_CONFIG
from.env
- Review overview design
- Guest wishlist functionality
👷 Changed
- Changed
shortDescription
to return empty string - Improved display of reviews rating average
- Removed unnecessary hover state from cart items
- The mobile navigation bar at the bottom of the screen and the navigation/settings buttons in the checkout have been removed
- Added placeholder text for missing addresses
- Removed custom header in the myAccount
- Added tooltip for item attributes image component
- The token in the release workflow now uses a supplier secret
- Registration without cloudflare turnstile configuration is now possible
🏡 Chore
- Upgraded Nuxt and package dependencies
- Moved Lighthouse Test into its own GitHub action
- Moved paypal credit card test into quarantine folder
❤️ New Contributors
- @teodorrosusn made their first contribution in #505
- @ivladu-plenty made their first contribution in #506
- @clincu-plenty made their first contribution in #544
History
What's Changed
- chore: homepage link/button & article show options by @FabianGerke in #490
- fix: paypal seperator only if available by @FabianGerke in #492
- fix: register without cloudflare turnstile by @FabianGerke in #498
- fix: hydration errors by @csandru-plenty in #497
- chore: delete flaky PayPal credit card test by @maxiroellplenty in #499
- fix: wishlist aria label by @csandru-plenty in #495
- fix: images should have tooltip by @csandru-plenty in #500
- fix: dont render empty elements by @csandru-plenty in #493
- feat: sdk and middleware module by @maxiroellplenty in #452
- chore: remove cart image by @pfrincu-plenty in #501
- chore: warn if .env API_SECURITY_TOKEN and API_ENDPOINT are not set by @maxiroellplenty in #507
- chore: update readme flow, remove mevofvd5omld.c01-14.plentymarkets.c… by @maxiroellplenty in #508
- fix: item list image size to small by @teodorrosusn in #505
- feat: paypal card test by @doproiescu-plenty in #475
- fix: remove basket item hover by @csandru-plenty in #494
- fix: bundle item links by @csandru-plenty in #496
- fix: locale checkout button by @csandru-plenty in #510
- fix: missing short description by @csandru-plenty in #491
- chore: update z-index for the megamenu by @FabianGerke in #509
- feat: make reviews visisble by @doproiescu-plenty in #512
- fix: remove from wishlist button is styled differently by @ivladu-plenty in #506
- fix: countries translation by @csandru-plenty in #513
- fix: short description empty by @teodorrosusn in #514
- chore: change productive middleware url by @maxiroellplenty in #515
- feat: paginated reviews by @rbedeoan-plenty in #504
- feat: configuration UI experimental by @ksted in #502
- fix: canonical links by @FabianGerke in #518
- chore: wishlist show options by @FabianGerke in #517
- fix: change product text by @doproiescu-plenty in #520
- fix: dont render empty elements by @csandru-plenty in #519
- chore: small changelog cleanup by @abocsan-plenty in #523
- ci: fix job identifier by @ksted in #521
- fix: addresses by @maxiroellplenty in #463
- fix: cart hydration error by @csandru-plenty in #525
- chore: address changelog by @maxiroellplenty in #526
- fix: add to cart button is smaller when loading by @ivladu-plenty in #511
- fix: close language switch by @rbedeoan-plenty in #516
- feat: detailed rating dispaly by @N-Feist in #480
- fix: removed Image on myAccount-myOrders by @N-Feist in #529
- fix: no redirect after navbar login on guest login page by @N-Feist in #530
- fix: to many reviews error case by @rbedeoan-plenty in #531
- feat: download order property file by @FabianGerke in #527
- fix: recommended product text overflow by @rbedeoan-plenty in #535
- fix: scroll for product reviews on navigation by @rbedeoan-plenty in #534
- fix: checkout layout errors by @csandru-plenty in #528
- chore: remove lazy loading attribute on index.vue by @FabianGerke in #539
- feat: addresses placeholder by @pfrincu-plenty in #538
- fix: mobile-prices by @doproiescu-plenty in #533
- feat: lighthouse workflow by @csandru-plenty in #540
- fix: language selector on mobile by @teodorrosusn in #543
- feat: fetching pwa settings by @clincu-plenty in #544
- fix: reviews scroll on mobile by @doproiescu-plenty in #549
- feat: language selector e2e tests by @ivladu-plenty in #546
- fix: reviews scroll on mobile by @doproiescu-plenty in #552
- feat: new layout for checkout by @N-Feist in #550
- fix: fetch flag rewritten in env file by @clincu-plenty in #548
- feat: upgrade nuxt and dependencies by @csandru-plenty in #536
- fix: webmanifest 404 by @csandru-...
v1.4.1
v1.4.1 (2024-06-05) Overview of all changes
New
- Custom SVG icons are now supported.
- Images outside the visible area are now lazy loaded.
- The login dialogue before checkout has been added.
- The Selection of saved addresses in the checkout has been added.
- Images in category and item views now have width and height attributes.
- Item pages can now display reviews.
- “Item added to shopping cart” dialogue has been added.
Fixed
- The display of coupons in the order confirmation was not working properly. This has been fixed.
- Some issues related to the display of item reviews have been fixed.
- Missing details have been added to the order confirmation.
- Interacting with the wishlist was not working as intended. This has been fixed.
- A "defineExpose" compiler error has been fixed.
- A random "Nuxt instance unavailable" error has been fixed.
- Hydration and intlify warnings have been fixed.
- Slashes at the end of the API_URL are now removed.
- The quality of images in the category view has been improved.
- The facet filtering on category pages has been corrected.
- A random login error has been fixed.
- When adding an item to the shopping cart that is already in the shopping cart, the item's quantity is now increased.
- Components of item bundles without an item URL no longer lead to a 404 page.
- Components of item bundles without a name now display the placeholder "Product Information Missing" in place of the name
- Filters on the category view could lead to a server-side rendering error. This has been fixed.
- The login button is now acessible.
- The middleware now supporty IPv6 addresses.
- The PayPal express button on the product page now handles the click event correctly.
- Fixed a lighthouse error regarding the wishlist button size.
- The returns image has been removed.
- The cookie bar mobile view has been improved.
- The wishlist close button margins have been corrected.
- A cart loader layout shift issue has been fixed.
- An empty wishlist image has been removed.
- Images of the attributes in the item view are now displayed correctly.
- An error regarding external cookie script loading has been fixed.
- The missing translations in the cookie bar have been added.
Changed
- Demo images on the homepage have been converted to AVIF format.
- The styling of notifications has been adjusted.
- The customer registration form has been improved.
- Reviews in category and item views are now accessible.
- Demo images now have different sizes, based on the user's viewport.
- The design of the sitemap has been adjusted.
- Mark optional and required form fields.
History
What's Changed
- chore: missing changelog entries by @maxiroellplenty in #416
- refactor: ui notifications by @maxiroellplenty in #419
- feat: unit tests for useModernImage, useLocalization by @maxiroellplenty in #371
- feat: useNotification unit test by @maxiroellplenty in #421
- ci: add compliance check for changelog by @ksted in #417
- ci: disable docs based eslint rules by @ksted in #423
- feat: add security token to e2e tests by @maxiroellplenty in #426
- chore: update sdk version by @maxiroellplenty in #428
- fix: hydration and intlify warnings by @csandru-plenty in #414
- fix: creating new item in basket instead of updating quantity by @N-Feist in #422
- fix: add required and optional to all forms by @doproiescu-plenty in #425
- chore: add changelog by @maxiroellplenty in #430
- fix: size attributes on item images by @N-Feist in #401
- feat: checkout guest login by @N-Feist in #420
- feat: saved adresses select by @N-Feist in #427
- chore: update api client package by @maxiroellplenty in #435
- fix: setting facet filter by @csandru-plenty in #432
- fix: login error by @csandru-plenty in #434
- feat: quick checkout design work by @abocsan-plenty in #403
- fix: hero image aspect ratio by @csandru-plenty in #438
- feat: renaming to alokai by @luisaha in #439
- feat: register overlay redesign by @FabianGerke in #424
- fix: styling fix of notifications by @N-Feist in #440
- feat: lazy load images by @csandru-plenty in #436
- feat: homepage images conversion by @csandru-plenty in #442
- feat: feedback component by @luisaha in #437
- fix: made login button name accessible by @N-Feist in #451
- chore: reduce filter dom size by @FabianGerke in #450
- fix: reviews accessibility by @FabianGerke in #448
- fix: pixelated images on category view by @N-Feist in #441
- feat: ipv6 compatibility by @maxiroellplenty in #444
- fix: javascript error on PWA preview by @N-Feist in #445
- fix: ssr category filtering by @FabianGerke in #453
- fix: paypal add to cart by @FabianGerke in #431
- fix: quantity on quickcheckout by @rbedeoan-plenty in #447
- fix: lighthouse button fix by @abocsan-plenty in #454
- chore: aspect ratio for home image by @FabianGerke in #455
- chore: modal click away / mega menu linking by @FabianGerke in #459
- fix: style fixes by @abocsan-plenty in #462
- feat: added translations for cookies properties by @abocsan-plenty in #461
- fix: remove empty wishlist image by @abocsan-plenty in #464
- fix: remove returns image by @abocsan-plenty in #460
- fix: review login by @abocsan-plenty in #465
- fix: sizes for demo images by @rbedeoan-plenty in #458
- fix: nuxt instance errors by @csandru-plenty in #466
- fix: refactor checkout address by @rbedeoan-plenty in #433
- fix: define expose by @csandru-plenty in #470
- fix: wishlist multiple items by @csandru-plenty in #469
- chore: preload images by @FabianGerke in #457
- fix: local e2e tests by @csandru-plenty in #472
- fix: bundle items accessability by @N-Feist in #449
- fix: use correct domain by @FabianGerke in #476
- fix: thank you page missing details by @csandru-plenty in #474
- fix: cookie external scripts by @abocsan-plenty in #473
- fix: add missing translations for the cookie bar by @FabianGerke in #481
- feat: review feedback by @csandru-plenty in #479
- feat: custom icon by @csandru-plenty in #483
- fix: coupon display on thank you by @rbedeoan-plenty in #484
- fix: sitemap by @FabianGerke in #482
- refactor: nuxt config by @ksted in #486
- test: add product attributes test by @doproiescu-plenty in #467
- feat: extend sficonbase by @csandru-plenty in #487
- chore: german registration texts by @FabianGerke in #489
- chore: changelog 1.4.1 by @maxiroellplenty in #485
Full Changelog: https://github.com/plent...
v1.4.0
Changelog plentyshopPWA
v1.4.0 (2024-04-15)
Migration guide
- The upload action was changed .github/workflows/upload.yml update the file to make use of the config feature
- We now require an API Security Token to make requests to the plentysystems API. setup guide
- Category routing has been updated, and the /c prefix has been removed. Please verify that no static URLs in your application still include /c.
- To accommodate the /c routing change, the category page was moved from apps/web/pages/category/[slug].vue to apps/web/pages/[...slug].vue.
New
- a ‘Previous’ button to the return form for easier navigation.
- Added tag display on single item and category views.
- a box component for selecting item attributes, enhancing user interaction
- an image component for selecting item attributes, enhancing user interaction
- possibility to mark a primary address for improved address management
- item availability display to provide inventory status.
- sitemap generation feature for static content.
- display for bundle items in item, cart, checkout, and order summary
- performance optimisation for wishlist calls.
- ‘config’ repository variable to the upload action.
- unified address handling in a single component.
- support for the modern image format (AVIF).
- search by tags.
- order return confirmation page.
Changed
- Removed unnecessary HTML nodes to reduce DOM size.
- Changed filenames of legal pages.
- Optimized i18n imports.
- Performed an Nuxt upgrade to version 3.11.1.
- Unified the design of 'Remove' buttons.
- Changed the return layout from a popup to its own page.
- Removed ‘…/c/…’ as category URL identifier for cleaner URLs.
- Modified the order of address format.
- Updated the styling of the order confirmation page.
- Implemented different imagesize URLs for different viewport sizes.
- Moved the ‘delete from wishlist’ button to the top right.
- Updated the upload action.
Fixed
- Improved the image quality on the wishlist.
- added validation for return quantity and reason during return creation.
- Updated the order quantity after making a return.
- Fixed the styling of the attribute select arrow.
- Fixed the styling of price buttons filter.
- Adjusted the return form for mobile return orders.
- Fixed the behavior and name of the ‘Back to Shopping’ button.
- Fixed a bug where an email address was added to the searchbar via autocomplete.
- Unified the styling of input heights.
- Unified the styling of order properties.
- Fixed styling issues on radio buttons and adjusted spacing on checkboxes and coupons.
- Fixed the styling and wording on the new return page.
- Excluded certain pages from the sitemap.
- Fixed the function of the 'Product' button in the navbar for mobile device.
- Canonical URL includes currently selected language path.
- Fixed the format of legal text on small display sizes.
- Fixed the header color on mobile devices, to have a unified look and feel.
- Ensured the cart does not clear after a failed order process.
- Fixed homepage layout shifts and deliver fixed image sizes.
- Added missing translations on the homepage.
- Fixed the issue where a hard load after language switch leads to a 404 error.
- Added the missing wishlist navigation button on mobile devices.
- Fixed the link to the contribution guidelines in the documentation.
History
What's Changed
- fix: wishlist image quality by @FabianGerke in #326
- feat: return form previous button by @abocsan-plenty in #327
- fix: validation for return quantity and reason by @rbedeoan-plenty in #325
- fix: return thank you page by @rbedeoan-plenty in #324
- fix: update return quantity by @csandru-plenty in #329
- fix: attribute select arrow by @FabianGerke in #333
- feat: i18n optimised imports by @csandru-plenty in #332
- fix: price buttons filter by @FabianGerke in #335
- fix: mobile return orders by @csandru-plenty in #330
- fix: back to shopping behaviour by @csandru-plenty in #336
- fix: quick bug fix for search autocomplete by @doproiescu-plenty in #328
- feat: change legal pages by @csandru-plenty in #337
- feat: tags component for single item and category view by @N-Feist in #334
- fix: update position tags by @FabianGerke in #338
- docs: fix link to contribution guidelines by @ksted in #342
- feat: attribute select refactoring + box component by @FabianGerke in #339
- feat: primary address by @abocsan-plenty in #341
- chore: update sdk version api response fixes by @maxiroellplenty in #353
- feat: image attribute & feedback changes by @FabianGerke in #347
- fix: paypal credit card test by @FabianGerke in #356
- fix: unify styling of input heights by @rbedeoan-plenty in #352
- feat: unify remove buttons by @csandru-plenty in #354
- feat: change new return layout by @luisaha in #344
- feat: tags design and positioning AB#98448 by @csandru-plenty in #346
- feat: nuxt upgrade by @csandru-plenty in #345
- fix: unify order properties styles by @doproiescu-plenty in #351
- feat: item display availability AB#98866 by @csandru-plenty in #349
- feat: static sitemap by @FabianGerke in #359
- refactor: remove unnecessary nodes to reduce DOM size and minor styling changes by @Tim-M-S in #340
- feat: display bundle items by @N-Feist in #360
- feat: remove c as category url identifier by @maxiroellplenty in #357
- feat: improve wishlist calls by @abocsan-plenty in #361
- refactor: test improvments by @abocsan-plenty in #362
- fix: styling issues AB#100695 by @csandru-plenty in #363
- fix: new return page style by @FabianGerke in #365
- fix: sitemap excludes by @FabianGerke in #364
- chore: downgrade turbo package to a version that does not contain the… by @maxiroellplenty in #368
- feat: wishlist item availability AB#101092 by @csandru-plenty in #367
- fix: improve item bundle by @rbedeoan-plenty in #366
- fix: navbar product button by @FabianGerke in #377
- fix: canonical language path AB#101715 by @csandru-plenty in #376
- fix: address format by @abocsan-plenty in #375
- fix: legal text mobile AB#101548 by @csandru-plenty in #374
- feat: load config in upload action by @maxiroellplenty in #373
- fix: order confirmation styling AB#101529 by @csandru-plenty in #379
- fix: item bundle csss by @rbedeoan-plenty in #380
- fix: display bundle on ssr by @rbedeoan-plenty in #383
- fix: header color on mobile device by @rbedeoan-plenty in #385
- fix: dont clear cart after failing order process by @FabianGerke in #370
- fix: homepage cls by @maxiroellplenty in #378
- feat: remove artifact from the action by @pfrincu-plenty in #388
- chore(deps): bump the npm_and_yarn group across 1 directory with 1 update by @dependabot in h...
v1.3.0
v1.3.0 (2024-02-06) Overview of all changes
New
- Added order properties on product pages, in the cart, and on the order summary.
- Added coupons.
- Added PayPal's Pay Later option for payments.
- Added returns, including return reasons.
- Added wishlist functionality, including the ability to add products to the cart directly from the wishlist.
- Added product ratings to category pages.
- Added configuration (
cookie-scripts.config.ts
) to determine which scripts to load when a user accepts a consent cookie. - Added Cloudflare Turnstile to protect forms against bots. For further information on how to configure Turnstile, refer to the documentation.
- Added form validation with vee-validate. The following forms have validation:
- Registering a new account
- Signing up for the newsletter
- Add a product with order properties to the cart
- Parts of the checkout; full coverage of the checkout will be added in the future
- Added a way to exit preview mode on live domains.
Changed
- Deployments now use a unified endpoint. This means the secret
URL_ENDPOINT
is obsolete.
Fixed
- Addresses in the checkout now update properly.
- The PayPal buttons now show the correct text depending on the location of the button.
- The mega menu no longer displays categories without a label.
- The cookie consent bar is now translated in English and German.
- The lifespan of the
vsf-locale
cookie has been fixed. The lifespan is now 100 days. - Fixed Cumulative Layout Shifts caused by the language picker.
- Added missing aria labels to the category pagination.
- Added missing aria labels to the cookie bar.
- Improved the clickable area on the logo for better accessibility on mobile.
- When navigating back from the registration modal on mobile, the modal now closes and you no longer return to the previous URL.
History
What's Changed
- feat: update homepage img demo sections by @csandru-plenty in #251
- feat: add missing html attributes by @csandru-plenty in #248
- chore: remove prettier plugin from eslint config by @ksted in #238
- feat: coupon by @rbedeoan-plenty in #233
- chore: only run assign workflow once by @ksted in #241
- docs: add remarks to composables docs by @ksted in #254
- feat: disable pwa preview by @csandru-plenty in #249
- chore: remove redundant e2e test by @maxiroellplenty in #255
- fix: added padding to VsfLogo to have bigger click area in mobile view by @luisaha in #253
- feat: added rating on category pages by @luisaha in #252
- fix: mega menu categories after language switch by @FabianGerke in #257
- feat: cookie scripts refactor by @abocsan-plenty in #260
- fix: open "Browse products" on mobile navbar product by @FabianGerke in #259
- feat: cookie consent usability by @ksted in #258
- feat: order properties group by @csandru-plenty in #262
- feat: declutter default layout by @csandru-plenty in #264
- feat: declutter default layout by @csandru-plenty in #267
- feat: use unnified domain for deployment upload by @Dominik2809 in #270
- fix: coupon value assertion by @csandru-plenty in #266
- feat: change language picker by @doproiescu-plenty in #261
- chore: revert unified domain deployment by @ksted in #271
- feat: newsletter with turnstile by @FabianGerke in #263
- fix: grammatical error regarding cancellation rights hint in checkout by @fmutschler in #273
- feat: order properties checkbox by @rbedeoan-plenty in #269
- feat: update pagination accessibility by @doproiescu-plenty in #275
- feat: order properties input type by @rbedeoan-plenty in #276
- feat: add properties to cart by @FabianGerke in #277
- feat: value handling order prop input by @FabianGerke in #278
- feat: order property select by @rbedeoan-plenty in #280
- feat: webp by @maxiroellplenty in #279
- feat: implement vee-validate by @doproiescu-plenty in #281
- fix: order property selection style by @FabianGerke in #282
- feat: merge from upstream by @csandru-plenty in #283
- feat: show properties cart by @FabianGerke in #285
- feat: wishlist composable + add/remove on category and product view by @abocsan-plenty in #286
- feat: order properties validation by @csandru-plenty in #289
- fix: validator agnostic composable by @csandru-plenty in #291
- feat: registration validation and fixes by @FabianGerke in #287
- fix: order properties file upload component by @rbedeoan-plenty in #284
- feat: use new unified publish url by @felixgehrmann in #288
- feat: nuxt unit tests by @maxiroellplenty in #290
- chore: community health files by @ksted in #268
- chore: remove config docs by @ksted in #272
- feat: order properties for order confirmation by @FabianGerke in #293
- feat: wishlist page by @abocsan-plenty in #294
- fix: checkout addresses update fix by @abocsan-plenty in #298
- feat: multiline order property by @FabianGerke in #296
- feat: my account navigation by @csandru-plenty in #299
- feat: order property type validation by @rbedeoan-plenty in #297
- fix: update register.vue by @doproiescu-plenty in #300
- feat: validate newsletter registration by @csandru-plenty in #302
- feat: file upload order property by @FabianGerke in #303
- feat: integrate lighthouse in e2e tests by @abocsan-plenty in #301
- fix: wishlist variation fix by @abocsan-plenty in #304
- fix: order properties without group by @rbedeoan-plenty in #307
- fix: order properties validation by @FabianGerke in #308
- fix: locale cookie lifespan/expire date by @maxiroellplenty in #311
- fix: add 128 chars validation for order property by @FabianGerke in #312
- fix: homepage recommended products by @csandru-plenty in #305
- feat: wishlist e2e by @abocsan-plenty in #313
- feat: changed behaviour of select language menu container by @luisaha in #314
- fix: paypal commit flag by @FabianGerke in #315
- chore: 19 01 review feedback by @abocsan-plenty in #316
- fix: coupon empty string by @rbedeoan-plenty in #318
- feat: order return products form by @rbedeoan-plenty in #309
- feat: added default option to return reasons by @abocsan-plenty in #319
- feat: return review feedback by @abocsan-plenty in #322
- feat: add order return items by @doproiescu-plenty in #321
- fea...
v1.2.0
v1.2.0 (2023-11-28) Overview of all changes
New
- Added getters to show variation properties.
- Added a frontend toggle to disable the pwa preview mode.
- Added structured data for ratings (reviews).
- Added item images on the order confirmation (thank you) page.
- Added protection against CSRF attacks.
Changed
- Reworked logic of cookie bar.
- The language select has been refactored and is now showing country flags.
- Refactored the checkout page to load less data.
Fixed
- CancellationForm page not loading.
- Failing minimum buy price setting was not shown as error.
- Notifications were causing a layout shift for the user, this has been fixed.
- Categories loading in the wrong language when the site was rendered with SSR for the first time.
- The variation select didn't remove the variation from the URL when the base variation was selected.
- Products on the order confirmation didn't link to the correct product.
History
What's Changed
- fix: add removeVariationIdFromUrl on attribute select by @doproiescu-plenty in #214
- feat: change paths / product links by @FabianGerke in #212
- fix: paypal e2e by @rbedeoan-plenty in #198
- fix: update deployment guide with activation info by @Dominik2809 in #219
- feat: implement images and paths on thank you page by @FabianGerke in #217
- fix: ssr sdk language by @FabianGerke in #218
- feat: composables docs by @ksted in #211
- feat: upmerge from 2023-11-08 by @FabianGerke in #220
- refactor: language select by @maxiroellplenty in #193
- fix: load logo from cdn by @ksted in #222
- fix: e2e workflow triggers by @ksted in #223
- fix: typedoc out path by @ksted in #224
- fix: added structured data rating by @rbedeoan-plenty in #201
- feat: default layout small code refactor by @abocsan-plenty in #225
- chore: update pull request template with changelog by @ksted in #226
- feat: cookie refactor by @abocsan-plenty in #221
- feat: refactor checkout vue 1 by @csandru-plenty in #227
- feat: disable pwa preview by @csandru-plenty in #231
- docs: remove readme from typedoc output by @ksted in #230
- fix: notifications layout shift by @csandru-plenty in #234
- chore: update gh workflows with new yarn version by @abocsan-plenty in #235
- fix: refactor language select by @rbedeoan-plenty in #232
- chore: enable corepack by @ksted in #239
- fix: display minimum buy error by @csandru-plenty in #236
- fix: change type from CancellationForm to WithdrawalForm by @FabianGerke in #237
- chore: combine test workflows by @ksted in #243
- fix: different pagination desktop mobile by @csandru-plenty in #242
- fix: notifications layout shift by @csandru-plenty in #247
- feat: remove google png use locally conv webp by @csandru-plenty in #244
- feat: implement csrf token by @FabianGerke in #240
- feat: show all reviews href by @csandru-plenty in #250
- docs: extract composable annotations by @ksted in #245
- chore: changelog update by @maxiroellplenty in #246
New Contributors
- @csandru-plenty made their first contribution in #227
Full Changelog: v1.1.0...v1.2.0
v1.1.0
v1.1.0 (2023-11-03) Overview of all changes
TODO
- Middleware
API_ENDPOINT
now has to be maintained via an.env
file underapps/server
.
New
- Added PayPal Express Checkout
- Added PayPal payment option for credit cards
- PayPal: The
integration.config
file is no longer required - MyAccount: The creation and editing of shipping and billing addresses is now possible
- MyAccount: The order history shows the latest orders of the logged-in customer
- MyAccount: The return history shows the latest returns of the logged-in customer
- The order confirmation now shows all relevant data of the order
- The order confirmation now displays buttons to download order documents
- The order confirmation can now be accessed via a link after authentication
- The order confirmation is now also accessible via the order history
- None saleable products are marked as such
- Added display of bulk and graduated prices on product pages
- Display of net/gross prices depending on the configuration
- Added menu to header to switch between different language versions of the PWA
- Multilingual URLs are now used for different language versions of the PWA
- Added structured data for breadcrumbs, categories, products and logo
- Added composable that sets canonical url metadata for static pages.
- Added more default notifications for a variaty of interactions in the PWA
- Added loading animations where applicable
Changed
- Reworked logic of products with multiple attributes
- Current bulk price is now marked on product pages
- For products with different prices, the cheapest price is displayed as "from price" on the category page
- Updated URL structure to be more similar to plentyShop LTS
- Changed position of notifications
Fixed
- After login the user was wrongfully forwared to the homepage. The user now stays on the current page.
- Filtering: No longer available filters are removed from the URL
What's Changed
History
- feat: account addresses by @abocsan-plenty in #130
- fix: yarn version in actions by @ksted in #135
- feat: title item list retry by @rbadici-plenty in #111
- feat: removed edit button from my account personal information by @rbadici-plenty in #113
- feat: order summary, shipping/payment & sums by @FabianGerke in #136
- feat: item list (without product images) and smaller components on ThankYou page by @FabianGerke in #140
- refactor: mobile issues cookie bar by @Tim-M-S in #139
- feat: show icon for no orders by @rbedeoan-plenty in #144
- feat: added loading animations where necessarry by @rbadici-plenty in #138
- feat: added returns in my account by @rbadici-plenty in #129
- fix: add cookies to ssr sdk requests by @maxiroellplenty in #141
- fix: for price in category by @rbedeoan-plenty in #106
- feat: change path for my account by @abocsan-plenty in #149
- feat: soft login by @FabianGerke in #145
- feat: item not salable by @abocsan-plenty in #148
- fix: some fixes by @FabianGerke in #147
- feat: order documents by @abocsan-plenty in #143
- feat: add "Details" button to my-orders by @FabianGerke in #152
- fix: cart prices by @FabianGerke in #154
- feat: added language toggle by @rbadici-plenty in #151
- feat: lts routes compatibility by @abocsan-plenty in #155
- fix: paypal credentials by @FabianGerke in #161
- fix: show graduated prices correctly + graduated prices list by @FabianGerke in #159
- fix: page not found fix by @abocsan-plenty in #162
- feat: paypal express button by @abocsan-plenty in #157
- feat: multilingualism by @abocsan-plenty in #164
- feat: display vat information by @doproiescu-plenty in #150
- fix: multiple attribute select by @doproiescu-plenty in #160
- fix: login stay on same page by @rbodnariu-plenty in #156
- fix: sdk cookie header state by @maxiroellplenty in #163
- fix: use env for api endpoint by @Dominik2809 in #142
- feat: item multilang url by @abocsan-plenty in #165
- chore: comment to product slug change by @abocsan-plenty in #166
- feat: paypal credit card by @FabianGerke in #167
- feat: item url language change optimization by @abocsan-plenty in #168
- feat: bump shop-api to 0.10.1 (multiple cookie headers) by @maxiroellplenty in #169
- feat: checkout e2e test by @abocsan-plenty in #170
- fix: pwa deploy action build by @Dominik2809 in #173
- fix: use env for middleware by @Dominik2809 in #174
- fix: import lodash by @rbedeoan-plenty in #176
- feat: upstream merge 04 10 23 by @abocsan-plenty in #175
- fix: category filters & add e2e test by @maxiroellplenty in #178
- fix: return page mobile data by @abocsan-plenty in #180
- fix: return to prev by @rbedeoan-plenty in #182
- feat: composable documentation improvements by @abocsan-plenty in #183
- feat: upload action only uploads bundled files by @maxiroellplenty in #184
- fix: lang switch keep params by @abocsan-plenty in #185
- fix: api url env by @Dominik2809 in #186
- feat: add basic changelog by @maxiroellplenty in #172
- feat: add static page metadata functionality by @abocsan-plenty in #189
- chore: add canonical by @abocsan-plenty in #190
- feat: breadcrumbs for google by @rbedeoan-plenty in #179
- feat: added composable by @abocsan-plenty in #187
- feat: add canonical url for pagination by @doproiescu-plenty in #191
- feat: add i18n unit test by @ksted in #114
- feat: structured data logo by @rbedeoan-plenty in #194
- feat: canonical categories by @rbedeoan-plenty in #188
- feat: paypal feedback + remove integration.config by @FabianGerke in #196
- feat: upmerge from 2023-10-20 by @FabianGerke in #197
- feat: structured data single item by @rbedeoan-plenty in #195
- fix: canonicals for category are broken by @rbedeoan-plenty in #199
- feat: contact page by @abocsan-plenty in #200
- feat: add delete item from cart notification and change position by @FabianGerke in #204
- fix: filter filtering by @FabianGerke in #202
- feat: mark selected bulk price by @FabianGerke in #203
- fix: env vars for middleware by @Dominik2809 in #205
- fix: add translation keys by @doproiescu-plenty in #206
- refactor: product calls by @maxiroellplenty in #210
- feat: show from price by @FabianGerke in https://github.com/plentymarkets/plentyshop-pwa/pul...
v1.0.0
feat: bump sdk and api version (#134)