GraphQL and User Experience Improvements: Upgrades and Fixes
Author:
Fluent Commerce
Changed on:
20 Feb 2025
Target release date: | 2025-02-19 |
---|---|
Release status: | Development |
Description
In this update, we've enhanced the Fluent GraphQL API and UI Components to improve the overall experience. Key fixes address issues with query ordering, duplicate data, and bulk actions in the list component. We've also added support for updating key fields (primary email, delivery type, and client secret) with null or empty values and introduced a configurable setting for handling null and empty fields in GraphQL mutations. Additionally, a new helper function has been added to preserve your content's original formatting. For full details, refer to the changelog below.
Changelog
- Fixed Query Ordering Issue:
Resolved an issue where an error would occur if order items were requested after fulfilment items within the same query. The query now functions correctly regardless of the order in which order items and fulfilment items are specified (refer to screenshots below). - New Update Capability:
The following mutations now acceptand empty string values.`null`
- Customer: Can now update the primary email ().
`updateCustomer`
- Fulfilment Choice: Delivery type can now be updated ().
`updateFulfilmentChoice`
- Payment Service Provider: Client secret can now be updated ().
`updatePaymentServiceProvider`
- Customer: Can now update the primary email (
- Fixed Duplicate Articles Bug:
Eliminated duplicate articles previously returned when using themutation with multiple fulfilment IDs. Related queries (`createArticle`
,`fulfilmentById`
, and`articleById`
) now return unique articles.`articlesByLocation`
- New Configuration Setting for Null & Empty Field Validation:
Introduced a configurable setting () at the account level to control handling of`fc.graphql.compatibility.nullEmptyValidation`
and empty string inputs in GraphQL mutations.The default behaviour of the setting if not present is`null`
.`validate-empty-fields`
Options:- : Converts
`validate-null-as-string`
to string`null`
and preserves empty strings as provided. This reflects the previous behavior.`"null"`
- (Default):
`validate-empty-fields`
- Optional fields:
- saved as
`null`
`null`
- and
`""`
saved as-is`" "`
- Required fields:
- ,
`null`
, or whitespace-only strings trigger validation errors.`""`
- Note:
For the purpose of validating required fields, literal nulls and strings containing only whitespace are now correctly considered invalid.
- Optional fields:
- Fixed Bulk User Actions Bug in List Component:
Resolved a bug in the List Component where bulk user actions would fail when the list contained entities from multiple retailers. Previously, the action assumed all items were associated with the retailer of the first selected entry, causing exceptions for entities linked to different retailers. - Fixed Duplicate Fulfilments on the Create Wave Page:
Resolved an issue on the Fluent Store Create Wave page where fulfilments occasionally appeared duplicated in the table. - Added Helper Function:
`preserveWhitespace`
Added a helper function,, to the template registry. This function preserves the original white space in content rather than collapsing it into a single space, as HTML typically does. Additional details about this helper function can be found in the Common Concepts section.`preserveWhitespace`
1{
2 "errors": [
3 {
4 "message": "Exception while fetching data (/updateOrder) : 'status' argument value cannot be null or empty",
5 "locations": [
6 {
7 "line": 2,
8 "column": 5
9 }
10 ],
11 "path": [
12 "updateOrder"
13 ],
14 "extensions": {
15 "classification": "DataFetchingException"
16 }
17 }
18 ],
19 "data": {
20 "updateOrder": null
21 }
22}
Language: plain_text
Name: Example of a required field error
Description:
[Warning: empty required content area]Screenshots


Released capability depth: | Fix |
---|---|
Release bundle / Capability type: | Platform |