Creates an instance of GetShoppingCart
The actions for the fetchable data
The changes feed
Completed checkout order stream
The recommended steps to check for validity when starting a checkout
The dispatch count. Used for the dispatchId
The store section name Used to name the rootState member and postfixed to all actions
The reducers for the fetchable data
The url to fetch the data from
Initial state with extended properties
Checks if the current order is in a state where payment can commence The actual payment is handled by the payment provider which will verify payment method specific requirements
Try to complete the checkout if the state of the order allows it Will call startNewCart() when possible and emit the completed order
Create a fetch action using the class request type This helper will setup and add promises for the fetch call and any chain that is triggered
TODO: If typings provide optional-ness correctly we can remove the Partial
NOTE: omitSessionId is deprecated but remains to not mess up parameter ordering
Create a response action using the class response type
Retrieves the requested data from the EVA backend
The redux action
Returns the error property as an observable stream
Return the current order as an observable stream
Retrieves a specific property path from this reducers state from the root state as an observable stream
The extended collection of reducer functions
Returns the response property as an observable stream
Returns the response property as an observable stream
Retrieves section specific state from the root state
Retrieves section specific state from the root state as an observable stream
The observable stream
Expose a helper function to get the full url
Returns the isFetching property as an observable stream
This method will try to proceed the checkout by performing wrap-up actions such as placing and shipping the order. Depending on state and requirement issues this might fail. This method may call itself multiple times to keep typing to proceed with the checkout
The saga listener for this store section
Checks if it is possible to start the checkout for the current shopping cart and performs the necessary actions if so On success this means the App con proceed to the checkout page/UI
The list of preCheckoutRequired steps is enforced here. If required steps are valid createOrder will be called if needed
Helper method for an async-awaitable timeout
Implements GetShoppingCart fetch for the Redux store