Skip to content

Releases: intershop/intershop-pwa

0.22.0

23 Jul 13:58
Compare
Choose a tag to compare

required Intershop Commerce Management version: 7.10.20.1

Features

  • show account identifier attribute of payment instrument (75e4a31)
  • use new filter REST API for product filter display and navigation (#148) (3f493c5)
  • display loading page when service worker is booting up (9f89684)
  • manage B2B user roles in organization-management (5ac6577)
  • display information for B2B users above my account navigation (#298) (ee5e1cb)
  • add guard, directive and service for toggling depending on user permissions (#298) (af9ce44)
  • retrieve roles and permissions for B2B users (#298) (e4ba676)
  • delete B2B users in organization-management (#258, #310) (d8d8523)
  • add and edit B2B users in organization-management (#260, #310) (3185084)
  • serialize currently matched path in router state (d83068c)
  • add B2B users management base version as part of organization management in my account (#295, #246, #247, #305) (9c46eec)

Bug Fixes

  • inconsistent breadcrumb updates on category, search & product page (83ac5f9)
  • Minor user management issues (#338) (caaa600)
  • tslint-rules: repair use-async-synchronization-in-tests rule (#330) (e83437d)
  • save bic for concardis direct debit payment method (#323) (b5d26dd)
  • set 404 status when route is not found (29570b4)
  • Correcting field type for Concardis directdebit payment error message key (#317) (a762d12)
  • delay routing and only route after profile edit (#314) (9c08b52)

Performance Improvements

  • correctly memoize cms selectors (fa910d4)
  • correctly memoize category selectors (#284) (afc69ed)

Documentation

  • add documentation for progressive web app features (8d96718)
  • add KB labels and adjust title for documentation overview (#301) (5f5ca9a)

Code Refactoring

  • remove ngx-custom-validators dependency and custom implement the two validators we use (#332) (7a3fb0a)
  • adapt parsing for changed configurations REST call (#307) (3d82674)
  • set breadcrumb trail consistently via store (#289) (8282584)

BREAKING CHANGES

  • Dependency ngx-custom-validators was removed from the project.
  • Adapted parsing for changed configurations REST call in Intershop Commerce Management version 7.10.20.1.
  • Setting the breadcrumb trail can now only be done consistently by using route data or by dispatching the appropriate action.

0.21.0

23 Jun 12:50
Compare
Choose a tag to compare

required Intershop Commerce Management version: 7.10.19.2

Features

  • add migration script for NgRx 8 creator functions (5800cd2)
  • schematics: add helper for adding destroy subject to Angular artifact (4013ff6)
  • tslint-rules: add rule for enforcing newline before root statements (34c20e5)
  • tslint-rules: add tslint rule force-jsdoc-comments for enforcing JSDoc usage (26b25a7)
  • tslint-rules: add rule for removing star imports in store (3c0b528)

Bug Fixes

Documentation

  • update 0.20-to-0.21 migration guide (6324ebe)
  • update state management documentation regarding creator functions (8818b16)
  • update for the new store structure (2d9cafa)
  • new testing approach for NgRx (b573e18)
  • update for using destroy Subject with takeUntil in Angular artifacts (8331521)

Code Refactoring

  • change sending of PGID for CMS calls according to ICM 7.10.19.2 CMS REST API changes (#192, #193) (a5bfff5)
  • supply operators for resolving links via ApiService (82e0de7)
  • perform action creator migration (31acf5d)
  • new structure for core store (0fe99e4)

BREAKING CHANGES

  • Pipable operators for resolving links are now ApiService members.
  • NgRx code artifacts are transformed to a new pattern, follow the instructions in the migration guide.
  • Core store was restructured. Follow instructions in the migration guide.
  • CMS service personalized content call adaptions to match CMS REST API changes in ICM.

0.20.0

29 May 14:32
Compare
Choose a tag to compare

required Intershop Commerce Management version: 7.10.18.1

Features

  • add order templates functionality as configurable feature (#230) (75683ce)
  • remove (feature toggle) security question on forgot password and registration page (#255, #253) (9b5d10d)
  • display captcha component according to the related ICM captcha service (#200) (447317b)
  • tslint-rules: tslint rule ng-module-sorted-fields respects bundle arrays in modules (09f4295)
  • tslint-rules: add testing capabilities for tslint-rules (c0fc9c8)
  • add a link to order details page for registered users on checkout receipt page (#216) (64b0056)
  • schematics: add lazy option to page schematic (d07a378)
  • schematics: adapt schematics for creating files in projects (3e08d4b)
  • tslint-rules: adapt folder structure rules for projects (187a485)
  • respect returnUrl query parameter when logout guard is triggered (c7d49c2)
  • accept 'always' and 'never' as input for feature-toggle artifacts (e2372a9)
  • schematics: add schematic for generating lazy component (#215) (0468e73)
  • introduce module-loader for lazy loading extension modules depending on feature toggles (#215) (fc6e504)
  • schematics: add linting to files generated or touched by schematics (bf21771)
  • display loading animation while restoring user on first navigation (#211) (337d9d3)

Bug Fixes

  • PWA container healthcheck now supports ICM https (#261) (8ce42be)
  • schematics: handle imports of complex typings for input decorated fields in lazy-component schematic (#254) (b1b4ec3)
  • set captcha authorization key for 'contact us' REST requests (#200) (a838a8a)
  • display concardis direct debit form on checkout payment page (#240) (30444ef)
  • find possible variation for selection based on changed attribute (a951e27)
  • variation select "Not Available" flag in case of one variation attribute (0229788)
  • display the region in the address form on the checkout address page (#241) (7b8e1bf)
  • hide loading spinner after order creation failed (#217) (9d48c50)
  • use exhaustMap for user login to prevent creating multiple sessions (#236) (b144f47)
  • add a concardis direct debit payment instrument on checkout payment page (#234) (b778b00)
  • prevent mixed locale due to race condition using ngx-translate service use method (#207, #222) (7750993)
  • debounce loading wishlists to prevent picking up wrong token (cf35e52)

Documentation

BREAKING CHANGES

  • Upgrade to Angular 9, follow the recommendations in the migration guide.
  • The feature toggle 'securityQuestion' and the related functionality has been removed.
  • The feature toggles 'captchaV2' and 'captchaV3' are obsolete. This is now configured via ICM Backoffice and fetched via 'configurations' REST call. The component 'ish-captcha' is replaced by 'ish-lazy-captcha' with a mandatory topic input for the captcha context to check whether it is activated or not.

0.19.1

29 Apr 07:06
Compare
Choose a tag to compare

required Intershop Commerce Management version: 7.10.17.0

Bug Fixes

  • suppress display of total payment costs with zero value on cost summary (67fa061)
  • display correct label for VAT inclusion on cost summary (910e643)
  • do not synchronize server config via state transfer (e0ae3f3)

Documentation

  • import and update documentation from PWA Guide (#125) (4934b66)

0.19.0

20 Apr 21:50
Compare
Choose a tag to compare

required Intershop Commerce Management version: 7.10.17.0

Features

  • wishlist widget on account overview page (#195) (8ae0b7e)
  • detect device type in nginx and cache SSR responses individually (#171, #188) (00c9640)
  • add quickorder functionality as configurable feature (#177) (97c4cd6)
  • integrated quote request submittedDate (86839d7)
  • schematics: add customization script for enabling and disabling service worker (30bec4d)
  • calculate payment cost threshold according to ICM pricing settings (#179) (eb981ec)
  • display checkout and order prices respecting ICM pricing settings (#179) (44ad2a5)
  • read ICM server configuration on PWA startup (#179) (d305c8a)
  • delete payment instrument link on checkout payment page (#182) (2944589)
  • add opt-in mocks for browser to fix window, document, HTMLElement and navigator issues on server-side rendering (#180) (e9d4551)
  • support Concardis Direct Debit payment method (#165) (567b61e)
  • make PWA docker build configuration aware (#143) (3af4a1d)
  • nginx can be run with default PWA channel configuration if environment variables are omitted (#143) (3634d44)
  • make complete domain configurable for multi-channel setup (#143) (c8d6eb5)

Bug Fixes

  • prevent an error after login on checkout address page (#194) (8fbeaf2)
  • deactivate service worker index.html fetch (be4e289)
  • if payment has failed after order creation navigate to checkout payment page and display a message (#184) (1a1bccb)
  • fix styling for product-row product items in carousels and add tile configuration options to the product link carousel (e41e2e8)
  • display swiper navigation buttons (fixed styling issue) (7f66cc7)
  • fix styling of user information box for mobile (#90, #168) (b7843e7)
  • remove personalized content from store (8da665e)
  • prevent changing the basket item quantities if they belong to a quote (#81) (d74cb3d)
  • prevent "null" as search term on search box initialization (#159) (6bacee7)
  • use data.id for ContentPageletEntryPoint id (#151, #152) (0529af5)
  • consistent success messages in My Account area (#147) (41bb17e)

Performance Improvements

  • deactivate throttle time in products effects on SSR (274ca49)
  • use new parameter omitHasOnlineProducts for more performant categories tree call (52e3cd0)

Documentation

  • add note about router-store replacement to migration guide (632e74f)
  • add labels for syncing documents to knowledge base (b4280a2)

Code Refactoring

  • rename device type 'pc' to 'desktop' (fa8afc5)
  • use @ngrx/router-store instead of ngrx-router (#167) (032b2ae)

BREAKING CHANGES

  • renamed device type 'pc' to 'desktop'
  • Angular CLI environment configurations now need defaultDeviceType property
  • all dependencies of ngrx-router are replaced with @ngrx/router-store

0.18.1

01 Apr 20:37
Compare
Choose a tag to compare

required Intershop Commerce Management version: 7.10.16.6

Features

  • support Concardis Direct Debit payment method (#165) (a3b3e74)

0.18.0

09 Mar 13:15
Compare
Choose a tag to compare

required Intershop Commerce Management version: 7.10.16.6

Features

  • manage multiple personal wishlists (#34, #129) (199f25b)
  • SEO friendly localized URLs for category and product list pages (#110) (4e3169e)
  • SEO friendly localized URLs for product detail pages (#110) (91767f3)
  • support running ICM and PWA in hybrid mode (#99) (d95b36e)
  • HTTPS deployment for universal server (#99) (90e6440)
  • proxy ICM through express server (#99) (f39bd83)
  • use nginx with https upstream (#99) (d0fdd75)
  • add support for CMS Landing Page components (#108) (da50347)
  • use morgan for logging in expressjs server (ea4c800)
  • add url property to RouteNavigation (ca946f2)
  • extend ishServerHtml directive to apply default handling to 'javascript:' links and allow a callback function in combination with further link handling (8716834)
  • use ishServerHtml for header error-keys in error-message component (2e87448)
  • error-message component uses header error-key as fallback (b4f7ae9)
  • dynamic breadcrumb for quote-edit and quote-request-edit (5769cba)
  • provide preview image for social media sharing - add og:image to meta tags (#126) (52a1907)
  • display product labels in product lists (#73, #131) (7314bf0)
  • extended multiple theme support to control system icons (e.g. favicon), manifest.webmanifest and theme-color as well (#88, #100) (46e84ba)
  • schematics: create facade skeleton when creating an extension (c02d4d2)

Bug Fixes

  • quotes routerActiveLink on account menu (c95c31f, 5bf460c)
  • 'submit quote request' and 'copy submitted quote request' from modal dialog should not navigate to my account (#112) (8039fe5)
  • "Add Quote to Cart" behaviour changed to only route on success and hide the button on error (#51) (a70da64)
  • show quote item availability on quote detail page (#51) (788b6dd)
  • save quote request from modal dialog navigates to my account (#56) (e26d4e1)
  • missing product names in quote items listing (#111) (af71f23)
  • breadcrumb quote detail page (d9ddcfe)
  • display user friendly error messages for quoting (#51) (0c9a943)
  • add user friendly error message for "Forbidden (QuoteRequest is not editable)" with reload link (ISREST-943) (671aad3)
  • correct "Thank you for your quote" page heading to "Thank you for your quote request" (ISREST-945) (5067f93)
  • remove duplicated content on "Thank you for your quote request" page (ISREST-944) (5efa993, d506c8e)
  • set correct URL for sharing product page via email (#128, #138) (a338c22)
  • respect selected category when switching variations on product detail page (3a806f3)
  • display localized product attribute names (#91, #107) (3205ba5)
  • display product labels on search result pages (#134) (0062272)
  • remove preferred language management in user profile (#120) (9f44cff)
  • correctly propagate queryParams to login route (95bf324)
  • timeout in auth guard only on first routing (d7a310c)
  • change password redirects to login page on success instead of displaying the login dialog (#130) (ebf8379)
  • schematics: prevent using same name for store and store-group (09d66f4)
  • schematics: make store location selection more robust (c0ab56c)

0.17.0

24 Jan 14:10
Compare
Choose a tag to compare

required Intershop Commerce Management version: 7.10.15.2

Features

  • add customized-copy schematic for creating a customization copy (#77) (f92bcbc)
  • script for setting up customization (#77) (0a2059f)
  • add My Account / Payment section with saved payment information (#78) (df8407f)
  • add anchor scrolling / fragment navigation on the current route for serverHtml content (#80) (ccf461c)
  • include logo images via CSS to configure them via theme styling (#49, #64) (a5f49fb)
  • styling restructuring for multiple themes support and introduction of an alternative blue theme (#49, #64) (fb62ebb)
  • support for multiple themes and switching via environment (#49, #64) (9f53006)
  • add counter input component (#61) (a7f5aee)
  • serve robots.txt from universal server (#66) (34bbd04)
  • seo canonical link support (#45) (7e19179)
  • remove promotion from basket (#71) (16c6f1f)
  • migration script for removing container-component-pattern (c7a1c9e)
  • add move-component schematic (6b1523b)
  • basket validation with adjustments on checkout shipping, review & payment page (b04fadf)
  • run Cypress e2e tests with GitHub actions (996b5c1)
  • extend ishServerHtml directive to handle links with callbacks, e.g. to open dialogs (#8) (08416f7)

Bug Fixes

  • missing route in user effects RouterTestingModule (#95, #97) (a73d17f)
  • open 'Terms & Conditions' and 'Privacy Policy' in new tab instead of in a dialog (#84) (1fcb795)
  • my account overview breadcrumb should not have parent / child structure (#43) (25ce59a)
  • prevent elements with non-unique ids in product-variation-select-component (#74, #76) (85c8cb2)
  • product master should not display product availability and shipping information (#44) (17c684a)
  • defer-load images not loading in carousel in Chrome/Chromium on Linux (#47) (9b0cb0c)
  • ngx-meta translate on load is not working (#69, #72) (b77a3ee)
  • repair memoization of promotion selectors (#70) (3ea5ee9)
  • reopen the pwa in the user's language after coming back from payment redirect (#55) (8638bc0)
  • load quote-requests on login and page refresh (#37) (b43d5b4)
  • wrong alignment of forgot password link for mobile view (#59) (f8a05eb)
  • remove trademark content from open source project (#39) (9759b26)
  • always write apiToken cookie as it is a functional cookie (#36) (cbcfc86)
  • display error messages on empty cart (0d75e7c)
  • universal EmptyError in console (#38) (3547cef)
  • lazy loading (ng-defer-load) works in chromium only on block-elements (#28) (cba69a9)

Documentation

  • documentation for search engine optimizations (#85) (75c9338)
  • introduce developer documentation within the project (Project Structure, State Management, Migrations) (#67) (95bc368)

Code Refactoring

  • perform migration to pattern without containers (11d729d)

BREAKING CHANGES

0.16.1

13 Dec 09:38
0e7e95a
Compare
Choose a tag to compare

NOTE: To address the issue with trademarked content or content of questionable origin it was neccessary to clean the complete GitHub repository resulting in a rewritten history. Because of that change it is advisable to work with a new clone of the repository.

NOTE: Release 0.16.1 is the first release that contains all necessary assets again to run "out of the box". Older releases will miss some referenced assets that had to be removed from an Open Source project.

required Intershop Commerce Management version: 7.10.15.2

Bug Fixes

  • remove trademark content from open source project (#39)
  • always write apiToken cookie as it is a functional cookie (#36)

Code Refactoring

  • switch from roboto font files contained in the sources to ones provided via npm packages
  • move all used images to a central img folder for a better overview

0.16.0

29 Nov 12:09
Compare
Choose a tag to compare

required Intershop Commerce Management version: 7.10.15.2

Features

  • enable Intershop test payment methods for redirect before and after checkout (ISH creditCard and onlinePay)
  • use modal dialog for login
  • keep session alive by regularly fetching basket
  • handle outdated auth tokens
  • lazy loading for cms managed images and videos (ng-defer-load)
  • lazy loading for product and category images (ng-defer-load)
  • display checkout error messages with full width (ISREST-885)
  • address basket validation with adjustments (ISREST-885)
  • display info messages for adding, updating, deleting basket items (ISREST-852)
  • display removed items on cart after basket was adjusted (ISREST-852)
  • add page meta information for SEO with ngx-meta (ISREST-913)
  • Open Source preparation (change license, add contributing information, update readme)
  • add confirmation for terms and conditions to registration page (ISREST-888)
  • add update password functionality (from generated email link) to the forgot password handling
  • Google reCaptcha V3 support (ISREST-859)
  • fill contact us form with user details if user is logged in
  • tuning for nginx responses and caching
  • fetch price ranges for retail sets on product lists
  • swatch image and color code navigation filter improvement

Bug Fixes

  • load basket products after merge basket (#26)
  • production mode support for concardis credit card
  • remove anonymous basket if auth token vanishes
  • improve categories list rendering with a trackBy function (prevents unnecessary re-rendering)
  • hide compare link in mobile view for disabled compare feature (ISREST-928) (#12)
  • quote request notification messages improvements (ISREST-880)
  • enable company input fields when registration form is loaded
  • add wrong variation to cart from product tile after variation change
  • server-html-directive patch elements on input change
  • rework basket merge handling (ISREST-848)
  • navigate to checkout payment page if order creation is rolled back. (ISREST-853)
  • apply a consistent form grid width layout (ISREST-906)
  • display bucket surcharges on checkout cost summary widget (ISREST-904)
  • remove wrong 'Cancel' button styling in edit profile forms (ISREST-839)
  • multiple product-requests on category-page
  • display delivery times and shipping costs for eligible shipping methods (ISREST-869)
  • update quote request before submit if quote request has unsaved changes
  • also send currentPassword when changing user passwords

Performance Improvements

  • decouple content-pagelet-container for more efficient memoization

BREAKING CHANGES

  • The feature toggle 'captcha' was renamed to 'captchaV2' in contrast to the newly introduced 'captchaV3' option that could be used with the reCaptcha V3 service activated in ICM and the PWA.
  • To resolve naming conflicts for the upcoming removal of the container-component-pattern some containers and components were merged into simpler components.