**What**
- when deleting an OE cloned items are deleted, this would fail if there were changes associated with the OE since line items were referenced from the item changes and couldn't be deleted
**How**
- when deleting an order edit also remove it's item changes
Fixes CORE-689
* What - fixing PR #2350
* Why - In the ProductImportStrategy class, the getImportInstructions improperly checks the product.id for each row. With it setup this way, products will always be considered new because the product.id column is not read here. So products will never be updated. [Link to the code line](bd94130916/packages/medusa/src/strategies/batch-jobs/product/import.ts (L166))
* How - Replacing `row["product.product.id"]` to `row["product.id"]`
Co-authored-by: Oliver Windall Juhl <59018053+olivermrbl@users.noreply.github.com>
**What**
The existing totals calculations are extremely heavy and perform an enormous amount of duplicate work. The changes here remove large parts of the overhead and improves response times for cart endpoints up to 30x.
**What**
Add allowed relations to list orders and get order to throw appropriate error message + status code
**Test**
- Integration: Throw on invalid relation provided to list orders
- Integration: Add test suite get order
- Successfully retrieve order with expand + fields
- Throw on invalid relation provided
* wait for update to order edit model
* delete line item tests
* create remove method for lineitem with tax lines
* add remove item tests
* split delete allocation tests into two: more and less than total
* remove unused import
* cleanup
* add medusa-js and react endpoints
* pr feedback fixes
* linting
* remove unused relation from query
* remove removed-event and unused imports
* add await
**What**
Allow a customer to complete a requested order edit.
**Test**
- Unit tests complete flow
- Unit tests medusa react
- Integration tests of order edit completion
FIXES CORE-501
**What**
Improve transform query middleware management of the allowed fields and relations in order to improve security upon access data
FIXES CORE-651
**what**
Support confirm of an order edit:
Upon confirmation, the items of the original order are detached and the items from the order edit are attached to the order.
The order total is recomputed with the correct total which can defer from the paid_total and refundable_amount (based on the paid_total)
**Tests**
- Unit tests medusa-js and medusa-react as well as the core
- Integration test of the confirmation flow which check that the order edit is properly confirmed and can be confirmed idempotently. Also validate the totals and that the order items correspond to the order edit items. Also validate the order totals.
FIXES CORE-498
**What**
- Implement adding a line item to order (edit)
**How**
- _by implementing the following "flow"_
- generate a line item
- computing line item adjustments for that line item
- creating tax lines
- creating a change record
**Testing**
- **_integration tests_**
- check if line item and order item change objects are created (with correct tax lines)
- line item adjustments are generated if
- fixed discount is applied to cart
- percentage discount is applied
- **_unit tests_**
- ensure that methods from Inventory, LineItem, LineItemAdjustment etc. services are called
---
RESOLVES CORE-495
**what**
Support `updateLineItem` which does the following:
- If no item change exist then create a new one and attaches the clone item with the adjustments and tax lines
- if an item change exists then delete/create adjustments and tax lines and update the cloned item quantity
**Tests**
- Unit tests core + client
- integration tests
- When no item change already exists
- When an item change already exists
FIXES CORE-497
**What**
- Improve `retrieveActive` to take into account `(confirmed/canceled/declined)_at`
**Test**
- one more Integration test on that case
FIXES CORE-601