This repository was archived by the owner on Dec 19, 2019. It is now read-only.
This repository was archived by the owner on Dec 19, 2019. It is now read-only.
[Cart Operations] Manage Cart Items #37
Closed
Description
As a Magento developer, I need to manipulate the shopping cart via GraphQL so that I can build basic ecommerce experiences for shoppers on the front-end using only GraphQL.
GraphQL needs to provide sufficient mutations (ways to create/update/delete data) for a developer to build out the storefront checkout experience for a shopper.
Use cases:
- Both guest and registered shoppers can add new items to cart
- Both guest and registered shoppers can update item qty in cart
- Both guest and registered shoppers can remove items from cart
- Both guest and registered shoppers can update the configuration (for a configurable product) or quantity of a previously added configurable product in cart
- Edit Item link > Product page > Update configuration or qty > Update Cart
Acceptance criteria:
- Cart operations should be useable in both standard Cart and mini-cart
- GraphQL provides the following mutations:
addCartItems
updateCartItems
removeCartItems
updateCartItems
mutation allows the cart item quantity to be updated in a shopper's cart- All product types are supported in a modular way (e.g. configurable-related schema and resolvers must be declared in
ConfigurableProductGraphQl
module and the rest of the system should still work if this module is disabled) - Depending on token in
Authorization
header (if any), customer or guest service contract should be used - Changes are covered with web API functional tests. See \Magento\GraphQl\TestModule\GraphQlMutationTest::testMutation as an example.
My Account area impacted:
- Cart
- Minicart