Refactor fulfillment items #4531
Merged
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.
Impact: breaking
Type: refactor
Changes
This is some refactor work in preparation for #4497. In particular, the
cart.shippingandorder.shippingarray items no longer have anitemsarray on them because this wasn't used much and isn't necessary. The items are already oncart.itemsororder.items. It is replaced by anitemIdsproperty, with just the IDs, which is only set for orders, not carts.Breaking changes
There are migrations that make this non-breaking for core, but it will break any non-core plugins that are expecting the
itemsproperty to be there. Such plugins should be updated to use a combination ofitemIdsand the mainitemslist.Testing
Verify that you can still successfully add items to a cart, checkout, and fulfill the order through to completion as an admin.