brX GraphQL Service Release Notes

Project Status

Solution versionBloomreach Content version
14.x14.x

brX GraphQL Service and Commerce React Components Release Notes (14.x)

14.7.6

GraphQL Service

Improvements

  • Display product variants in the Wishlist for commercetools.

14.7.5

GraphQL Service

Bug Fixes

  • The streetAddress field was returned as null when providing a complete address in the input for SetOrderDetails with commercetools.

14.7.4

Commerce React Components

New Features

  • Added support for the new brEnvType queryHint type to specify the Discovery realm when querying with Discovery.

GraphQL Service

New Features

  • Registered AIR key value is now included for the SAP Commerce Cloud connector on every request as a certified solution identifier.

Improvements

  • Categories are now included as part of the product(s) result with commercetools.

14.7.3

GraphQL Service

New Features

  • Introduced the brEnvtype queryHint type to specify the Discovery realm when querying with Discovery.

Improvements

  • Added additional fields for discounts with commercetools.

Bug Fixes

  • Sorting by ID and creation date did not work on the Order data source with BigCommerce.
  • Variant item ID returned "var693-undefined" in the checkout response with BigCommerce.
  • Users could not access or update orders placed by another user with commercetools.
  • The tax amount in the placeOrder response with commercetools was not rounded.

14.7.2

Commerce React Components

Improvements

  • Exposed the Apollo Query refetch function through Commerce React Components.

GraphQL Service

New Features

  • Shipping costs are now available when fetching shipping methods with commercetools.

Improvements

  • Added support for order number in order CRU operations with commercetools.
  • Price and discounts can now be selected per country instead of per channel.

14.7.1

Commerce React Components

Improvements

  • Introduced the customQueryOptionsProcessor input property for all components to enable GraphQL query customization.

GraphQL Service

New Features

  • The cart is retained when changing locale with commercetools.

Improvements

  • An empty companyName can be provided when updating a user's address with commercetools.
  • Price and discounts can now be selected per country instead of per channel.

14.7.0

Commerce React Components

Improvements

  • Added category.key in GraphQL queries to improve URL readability.

Bug Fixes

  • Included missing Discovery functionalities in queries and generated TypeScript definitions.
  • Resolved Apollo client caching issues on ProductGrid and ProductDetail item ObjectTypes due to shared cache entries for the same item (identified by itemID).

GraphQL Service

New Features

  • BigCommerce connector: Added access management support for sign-in and sign-out.
  • BigCommerce connector: Implemented Customer DataSource.
    • Queries:
      • Retrieve authenticated customer details.
    • Mutations:
      • Register a new customer.
      • Change authenticated customer's password.
      • Update authenticated customer's details.
      • Recover password.
      • Reset password.
  • BigCommerce connector: Implemented Address DataSource.
    • Queries:
      • Retrieve authenticated customer's addresses by group.
      • Retrieve authenticated customer's address by ID.
    • Mutations:
      • Create a new address for the authenticated customer.
      • Update an address for the authenticated customer.
      • Remove an address for the authenticated customer.
      • Set default shipping address for the authenticated customer.
      • Set default billing address for the authenticated customer.
  • BigCommerce connector: Implemented Items DataSource.
    • Queries:
      • Find products by ID.
      • Find products by category.
      • Find items by slug.
  • BigCommerce connector: Implemented Cart DataSource.
    • Queries:
      • Retrieve cart for authenticated customer.
    • Mutations:
      • Add items to the authenticated customer's cart.
      • Update entries in the authenticated customer's cart.
      • Remove items from the authenticated customer's cart.
      • Update order details (checkout) for the authenticated customer's cart.
      • Set order (checkout) for the authenticated customer's cart.
  • BigCommerce connector: Implemented Order DataSource.
    • Queries:
      • Find orders for authenticated customer.
      • Find an order by ID for authenticated customer.
      • Retrieve all shipping methods for an order.
    • Mutations:
      • Repeat order (add items from a previous order to the active cart, removing any existing items).
  • BigCommerce connector: Implemented Wishlist DataSource.
    • Queries:
      • Find wishlist by ID.
      • Find all wishlists for authenticated customer.
    • Mutations:
      • Create a new wishlist for authenticated customer.
      • Update a wishlist (e.g., rename) for authenticated customer.
      • Delete a wishlist for authenticated customer.
      • Add a new item to a wishlist for authenticated customer.
      • Update a wishlist (e.g., remove an item) for authenticated customer.
  • BigCommerce connector: Implemented Inventory DataSource.
    • Queries:
      • Find item availability by ID.

Improvements

  • Extra attributes stored in store Users are now passed during signing operations and can be retrieved by the recovery REST API.
  • Product information for multiple products can be retrieved in a single request.
  • Orders can be associated with custom attributes upon creation with commercetools.

14.6.10

GraphQL Service

Improvements

  • The cart is dropped when removing a session with commercetools.

14.6.9

GraphQL Service

Improvements

  • Added extra parameters to find items operations for commercetools.

14.6.8

GraphQL Service

Bug Fixes

  • Cart (or OrderDraft) was missing customer email and address phone data.

14.6.7

GraphQL Service

Improvements

  • Added telephone number, including country code, to customer address (billing and shipping) with commercetools.

14.6.6

GraphQL Service

Improvements

  • Enabled setting the distributionChannel as part of the cartHint.

14.6.5

Commerce React Components

New Features

  • Added storeKey parameter for cart-related Commerce React Components.

Improvements

  • Channel product availability is now available in product-related queries and type definitions.

GraphQL Service

New Features

  • Added storeKey parameter for cart operations in commercetools.

Improvements

  • Enabled product sorting by custom fields with commercetools.

Bug Fixes

  • The storeKey parameter was not applied when searching for products by category.

14.6.4

GraphQL Service

Improvements

  • Enabled use of storeKey for retrieving a single product by ID or slug.

14.6.3

Commerce React Components

Improvements

  • Introduced storeKey in CommonQueryHintInputProps interface to query products for a specific store.
  • Read the slug field based on new "find by slug" operations.
  • Set the Accept-Language request header to an empty string by default.

GraphQL Service

New Features

  • The commercetools store is now passed when creating an order, enabling differentiation of orders from different stores.
  • Added queries to retrieve a product by slug and a category by slug.
  • Introduced new GraphQL queries: findChannels, findChannelByKey, and findChannelById.
  • Enabled overriding default request headers, including Accept-Language, in CommerceConnectorProvider.
  • Enabled updating multiple custom attributes on the Order resource.

Improvements

  • Added support for stock information in the product response.
  • Enabled updating custom attributes of an order during order updates.
  • Improved the findOrders query operation to accept filtering by custom attribute name-value pairs.

14.6.2

Commerce React Components

Improvements

  • Added the slug field in the GraphQL schema-generated code for items and categories.
  • Added the storeKey option in queryHintInput in the Commerce React Components GraphQL schema-generated code.

GraphQL Service

New Features

  • Added "Short URL" (slug) attribute for products and categories when querying commercetools via GraphQL Service.
  • Enabled querying products using the commercetools store.

Improvements

  • Product title and description are now displayed in the localized language if available from commercetools.
  • Channel ID information is now included as part of the product price.

Bug Fixes

  • Resolved vulnerabilities encountered during installation of commerce-graphql-service.

14.6.1

Commerce React Components

Improvements

  • Included ImageSet.variants in GraphQL queries to support multiple variant images.

GraphQL Service

Improvements

  • Improved URLs to be more user-friendly by supporting both category key and category ID.

New Features

  • Stock levels can be checked in a product detail page (PDP) based on the shopper's location with commercetools.
  • Shoppers can view shipping costs for their cart according to their region with commercetools.
  • Create, update, and delete wishlists with commercetools.
  • Password recovery is available with commercetools.
  • Product search results can be filtered with commercetools.

14.6.0

Commerce React Components

Improvements

  • Supported all brSM query hints in Product and Category components.
  • Added coupon code support in Cart.
  • Implemented page-based pagination in Product and Category components.

New Features

  • Introduced ProductGridWidgets to handle the findItemsByWidget GraphQL query.

GraphQL Service

Improvements

  • Added a default locale option.
  • Exposed the X-BR-Response-Time from brSM in the GraphQL response.
  • Included custom attributes in queryHint in brSM search field names.
  • Enabled overriding CUSTOM_VARIANT_LIST_PRICE_FIELD and CUSTOM_VARIANT_PURCHASE_PRICE_FIELD through GraphQL queryHint.
  • Enabled overriding smAccountID (and auth_key) through GraphQL queryHint.

Bug Fixes

  • The cart did not reset after logging out of the Demo React App for Shopify.
  • Customers could not add items to the cart after checkout with Shopify.
  • Variant price data was incorrectly mapped between brSM and Shopify.
  • findItemsByWidget did not return the correct result.
  • Non-existing custom attributes no longer return the string "undefined".
  • The brSM search API response for products-with-variants was incorrect.

14.5.1

Bug Fixes

  • Variant price data was incorrectly mapped between brSM and Shopify.

14.5.0

User Stories

  • As a front-end developer, check product inventory to determine if it can be added to the cart with Shopify.
  • As a front-end developer, allow shoppers to customize a product, add it to the cart, and view their customization in the cart with Shopify.
  • As a front-end developer, enable shoppers to update their cart with coupon codes during checkout with commercetools.

New Features

  • Added findItemsByWidget query to support Pathways and Recommendations v2.

Improvements

  • Added "active" and "state" fields to the Cart model to inform the front end of cart changes.
  • Supported overwriting or appending query parameters with Search and Merchandising's auto-suggest.
  • Added variant ID to the cart entry's itemID with Shopify.
  • Enabled custom attributes to be added to the cart in Commerce React Components and Demo React App.
  • Fixed the URL pattern for cart item variants in Commerce React Components.
  • Changed mainItem in ItemVariant to contain only itemId and displayName.
  • Used "handle" as the main product's code with Shopify.

Bug Fixes

  • Commerce Open UI Pickers failed to connect if the GraphQL URL configuration was changed.

Tasks

  • Improved the Commerce Open UI Picker to read the configured URL from its own configuration in JCR.

14.4.0

User Stories

  • As a front-end developer, enable users to sort search results on a Product Grid with commercetools.
  • As a front-end developer, enable users to sort search results on a Product Grid with SAP.
  • As a front-end developer, enable users to sort search results on a Product Grid with Shopify.
  • As a front-end developer, retrieve custom fields (attributes) from SAP.

New Features

  • Migrated Autosuggest data source from V1 to V2.

Improvements

  • Enabled product search using product key with commercetools.
  • Allowed querying against brSM without signing in (including anonymous access).
  • Added GraphQL Federation support.

14.3.3

User Stories

  • As a front-end developer, retrieve custom fields (attributes) from Shopify when querying through GraphQL.
  • As a front-end developer, expose customFields from commercetools in the GraphQL response.
  • As a front-end developer, pass search redirects set in brSM by merchandisers through GraphQL for front-end handling.

New Features

  • Implemented cart functionalities on the Open-Source Commerce Backend Connector: Shopizer.
  • Implemented customer sign-in and sign-out on the Open-Source Commerce Backend Connector: Shopizer.
  • Implemented product search on the Open-Source Commerce Backend Connector: Shopizer.
  • Implemented address management for updating addresses on the Open-Source Commerce Backend Connector: Shopizer.
  • Added category resolver (retrieve all categories for menu) and category detail on the Open-Source Commerce Backend Connector: Shopizer.
  • Added customer profile functionalities to the Open-Source Commerce Backend Connector: Shopizer.
  • Added registration functionalities on the Open-Source Commerce Backend Connector: Shopizer.
  • Implemented checkout functionalities on the Open-Source Commerce Backend Connector: Shopizer.
  • Forwarded "autocorrect" information in brSM API response to front-end code.

Improvements

  • Direct checkout no longer merges the anonymous cart with the current user cart; sign-in operation supports extra cart-related options.
  • Displayed product version (brx-graphql-service) on startup.
  • Improved the commercetools customer data model with additional fields in the GraphQL response.
  • Merged brSM global custom attribute field names in .env into the fl parameter by default.

Bug Fixes

  • Auto-suggest threw "Invalid URL" message.

Tasks

  • Provided product variant dimensions data to the Open-Source Commerce Backend Connector: Shopizer.

14.3.2

Improvements

  • Provided GraphQL Schema HTML Documents.

14.3.1

Bug Fixes

  • Master variant was not displayed on the product detail page with commercetools.
  • brSM connector fl list contained duplicate field names in brX GraphQL Service.

New Features

  • Added generic params input in QueryHint (to include segment, ll, etc.) to brSM with brX GraphQL Service.
  • Added "forgot password" functionality to brX GraphQL Service with Shopify.

User Stories

  • As a front-end developer, retrieve custom fields (attributes) from brSM when querying through brX GraphQL Service.
  • As a front-end developer, retrieve custom fields (attributes) from commercetools when querying through brX GraphQL Service.

Improvements

  • Added sorting support for findByKeyword and findByCategory against brSM in brX GraphQL Service.
  • Anonymous cart did not merge when signing in with SAP.
  • Included price_range and sale_price_range as standard fields.
  • Allowed fields in BRSM_CUSTOM_ATTR_FIELD to be returned as facets in the response from brX GraphQL Service.
  • Supported custom attribute fields at the variant level from brSM with brX GraphQL Service.
  • Added sorting support for findByKeyword and findByCategory in Product Grid React High Order Component.
  • Allowed overriding customAttrs fields info through QueryHint when accessing brSM.

14.3.0

Bug Fixes

  • Anonymous cart did not merge after signing in with valid credentials in SAP.
  • Authorization token from Salesforce CloudCraze did not work if brX GraphQL Service was inactive for 2-3 hours.

New Features

  • Added federated login/logout in brX GraphQL Service.
  • Added "cart" functionalities to brX GraphQL Service with Shopify.
  • Added "customer sign-in and sign-out" functionalities to brX GraphQL Service with Shopify.
  • Added "product search" functionalities to brX GraphQL Service with Shopify.
  • Added "address management" functionalities to brX GraphQL Service with Shopify.
  • Added "customer profile" functionalities to brX GraphQL Service with Shopify.
  • Added "registration" functionalities to brX GraphQL Service with Shopify.
  • Added "order" functionalities to brX GraphQL Service with Shopify.
  • Added Pixel scriptlet in React Demo and passed _br_uid_2 cookie value in HOC when searching against brSM.

User Stories

  • As a developer, set up brX GraphQL Service with brSM without requiring a commerce backend connection for access management.
  • As a developer, query brSM in multiple languages defined via domain_key in each API call.

Tasks

  • Provided product variant dimensions data to brX GraphQL Service with Shopify.
  • Updated docker-compose.yml file with all environment configurations.
  • Implemented React HOC and Demo for Federated Cart Checkout Integration with Shopify.
  • Provided guidance on customizing the Shopify "Thank you" page to redirect back to SPA, with examples.
  • Included auth_key parameter in brSM Search, Category, and Widget API calls.
  • Fixed license info and headers in source in brX GraphQL Service.

Improvements

  • Added category resolver (retrieve all categories for menu) and category detail to brX GraphQL Service with Shopify.
  • Standardized error handling at the Apollo level for different direct error messages from REST in brX GraphQL Service.
  • Added support for _br_uid_2 in brX GraphQL Service with brSM.
  • Enabled configuration to allow or disable token refreshing.
  • Used specific customerID when invoking the backend SAP OCC API.
  • Updated StoreUser.username to contain both backend-specific identifier and username (email).
  • Changed the scope of DataSources to transient.

14.2.1

Bug Fixes

  • brX GraphQL Service did not work with NodeJS 12.18.X.
  • ItemId converter did not function as expected in brX GraphQL Service.
  • getCart query for SAP did not return the current cart when an "id" was not provided.
  • getCart query for commercetools did not return an empty cart when none was found.

New Features

  • Added "cart" functionalities to brX GraphQL Service with SAP.
  • Added "checkout" functionalities to brX GraphQL Service with SAP.
  • Added "view order list and single order" functionalities to brX GraphQL Service with SAP.
  • Added "registration" functionalities to brX GraphQL Service with SAP.
  • Added "product search by category" functionalities to brX GraphQL Service with SAP.
  • Added "re-order" functionalities to brX GraphQL Service with SAP.

Tasks

  • Supported product attributes in brX GraphQL Service with commercetools.
  • Added "re-order" functionalities to brX GraphQL Service with commercetools.
  • Removed unused utility functions in sap-utils.ts.

Improvements

  • Supported sorting fields when querying customer orders in brX GraphQL Service with commercetools.
  • Returned facets when querying products by category and keywords in brX GraphQL Service with brSM.
  • Supported product variant dimensions data in brX GraphQL Service with SAP.
  • Implemented product variant inclusion in the product item for brX GraphQL Service with SAP.
  • Enabled filtering product queries by facets in brX GraphQL Service with brSM.
  • Removed "username" from changeCurrentCustomerPassword mutation input.
  • Supported sorting fields when querying customer orders in brX GraphQL Service with SAP.
  • Added GraphQL API documentation comments to the brX GraphQL Service schema.

Sub-tasks

  • Provided a React component for changing password to be added to front-end applications.
  • Added GraphQL mutation for adding a customer address.

14.2.0

Bug Fixes

  • "Algorithm not allowed: undefined" error appeared in the console after starting brX GraphQL Service.
  • placeOrder API failed with "Cannot read property 'user' of undefined" error.
  • commercetools GraphQL ItemDataSource#findOne() did not search by ID if not found by code.
  • commercetools ItemDataSource did not provide code value in itemIds.
  • commercetools master variant was not included in item.variants.

New Features

  • Added "cart" functionalities to brX GraphQL Service with commercetools.
  • Added "customer sign-in and sign-out" functionalities to brX GraphQL Service with commercetools.
  • Added "product search by category" functionalities to brX GraphQL Service with commercetools.
  • Added "product search by category", "Just For You", and "More Like This" functionalities to brX GraphQL Service with brSM.
  • Added "address management" functionalities to brX GraphQL Service with commercetools.
  • Added "customer profile" functionalities to brX GraphQL Service with commercetools.
  • Added "registration" functionalities to brX GraphQL Service with commercetools.
  • Added "autosuggest" functionalities to brX GraphQL Service with brSM.
  • Added "customer account" functionalities to brX GraphQL Service with SAP.
  • Added "address management" functionalities to brX GraphQL Service with SAP.
  • Added "product" functionalities to brX GraphQL Service with SAP.
  • Added "order" functionalities to brX GraphQL Service with commercetools.
  • Added "customer sign-in and sign-out" functionalities to brX GraphQL Service with SAP.
  • Added category resolver (retrieve all categories for menu) and category detail to brX GraphQL Service with SAP.

Tasks

  • Dockerized the brX GraphQL Service.
  • Added source distribution Maven profile in connector-service for deployment.
  • Provided product variant dimensions data to brX GraphQL Service with commercetools.

Improvements

  • Added category resolver (retrieve all categories for menu) and category detail to brX GraphQL Service with commercetools.
  • Added category resolver (retrieve all categories for menu) and category detail to brX GraphQL Service with brSM.
  • Created a mobile and single-page application client API for commercetools.
  • Assigned anonymous cart to customer during sign-in operation in commercetools.
  • Improved brSM items/category GraphQL with queryHint input variable.
  • Improved Item/ItemVariant resolving through brX GraphQL Service resolver chains.
  • Increased log verbosity when commercetools API calls fail.
  • Removed "revision" from cart mutation inputs.
  • Improved variant handling logic in brX GraphQL Service with commercetools.
Share Feedback
Page: /frontend/commerce-accelerator/brx-graphql-service/release-notes
Section: Frontend
Category *