fix(hosted-buttons): fix an issue where shipping callbacks would not throw #2427
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The result of calling actions.reject was not being returned, causing the callback to not reject when the consumer passed an action.reject that rejects.
Description
The existing onShippingChange and onShippingOptionsChange callbacks used by hosted buttons do not return the result of calling the client application supplied action.reject method. This allows execution to continue and the callback resolves as if it were successful.
This causes the need for unsightly and hard to test error handling scenarios in the client application.
Why are we making these changes? Include references to any related Jira tasks or GitHub Issues
(ticket incoming) Supporting NCPS shipping callbacks.
Reproduction Steps (if applicable)
Passing
{ reject: message => Promise.reject(message) }
when calling either callback from the client application and the callback will not reject. See original test and changes for confirmation.Screenshots (if applicable)
Dependent Changes (if applicable)
Groups who should review (if applicable)
❤️ Thank you!