Commit Graph

61 Commits

Author SHA1 Message Date
Riqwan Thamir
3d33f06e77 chore: upgrade jest everywhere (#7703) 2024-06-14 07:35:30 +02:00
Stevche Radevski
d862d03de0 feat: Revamp of product categories (#7695)
* feat: Normalize the categories interface to match standards

* feat: Revamp the product category implementation

* fix: Adjustments to code and tests around product categories
2024-06-13 09:10:12 +02:00
Carlos R. L. Rodrigues
75811cd4b3 feat(order): Claim and Exchange entities (#7681) 2024-06-12 14:49:15 -03:00
Oli Juhl
73ca358606 feat: Introduce order.placed event (#7682) 2024-06-12 12:05:13 +02:00
Frane Polić
48d8b2c623 fix(core-flows): variant pricing batch update (#7677)
* fix: variant pricing batch update

* fix: batch endpoint throwing when `create` array isn't passed

* fix: batch variants workflow
2024-06-11 19:45:43 +02:00
Stevche Radevski
0e731dbad0 feat: Add support for category deletion (#7679) 2024-06-11 16:49:42 +02:00
Adrien de Peretti
dd0b9f0805 feat: workflows release events (#7664)
* feat: Release grouped events once a worfklow finish

* update common step

* update types

* tests

* optionality

* fies

* cancel flow on release failure

* clear events on fail

* more tests

* log errors

* log more errors

* update missing interface method declaration

* fix missing return

* update mock

* fix tests
2024-06-11 15:48:15 +02:00
Riqwan Thamir
39ddba2491 chore: ability to group events on redis event bus (#7655)
* chore: ability to group events on redis event bus

* chore: fix tests

* Update packages/modules/event-bus-redis/src/services/event-bus-redis.ts

Co-authored-by: Adrien de Peretti <adrien.deperetti@gmail.com>

* chore: change shape of input and body data

* chore: fix builds

* chore: address comments

* chore: fix unit test

---------

Co-authored-by: Adrien de Peretti <adrien.deperetti@gmail.com>
2024-06-10 22:15:43 +02:00
Frane Polić
f08f0d6cc9 feat(dashboard): inventory create flow (#7650) 2024-06-10 17:37:36 +02:00
Oli Juhl
3f661c917b feat: Fix subscribers loading + add order <> cart link (#7617) 2024-06-09 12:31:28 +02:00
Adrien de Peretti
2e77a076b8 feat: Add emitEvent step + cleanup (#7643)
* feat: Add emitEvent step + cleanup

* fix typo

* fix typo
2024-06-07 11:52:19 +02:00
Riqwan Thamir
0507dbe027 chore(core-flows,inventory,types,medusa): add fixes to inventory module + location levels api (#7629)
what:

- santizes inputs to prevent reserved_quantity from being updated directly
- inventory items create api can create location levels
- add validation to update quantity of reservation items
- general cleanup

RESOLVES CORE-2254
2024-06-06 12:58:17 +00:00
Frane Polić
d285e60961 feat(dashboard,core-flows,medusa): update fulfillment flows (#7589)
* fix: fulfillment ops

* fix: cancel fulfillment route

* fix: adjustInventoryLevelsStep throwing

* feat: cancel order and fix endpoint

* fix: type

* feat: order domain sdk

* feat: delete unused file

* fix: import
2024-06-06 08:58:21 +02:00
Oli Juhl
dc087bf310 feat: Move shipping option + profile test and more (#7609) 2024-06-05 08:36:41 +02:00
Carlos R. L. Rodrigues
1ba887f4c9 chore: parallelize steps (#7605) 2024-06-04 11:23:53 -03:00
Riqwan Thamir
e7005a0aac feat(core-flows,medusa): adds inventory kit creation to variants endpoint (#7599)
what:

When creating a variant, we can now create inventory as a part of the product and variants create endpoint.

This applies only to variants where `manage_inventory=true`. 2 cases present itself:

1. When inventory_items are present
  - Link an inventory item with required_quantity to the variant
  - the inventory item already needs to be present
2. When inventory_items are not present
  - A default inventory item will be created
  - links the created item to the variant with a default required_quantity
  
  
RESOLVES CORE-2220
2024-06-04 13:49:31 +00:00
Carlos R. L. Rodrigues
68fb04b849 fix(order): ignore reservation when manage_inventory is false (#7594) 2024-06-04 07:08:54 -03:00
Stevche Radevski
0929c4f457 Feat: Add product tag endpoints, move tests to HTTP folder (#7591)
* chore: Move product type tests to HTTP folder

* feat: Add product tags endpoints and move tests to HTTP folder
2024-06-04 10:56:22 +02:00
Riqwan Thamir
ecfbfcc707 feat(core-flows,modules-sdk,types,medusa,link-modules): adds variant <> inventory item link endpoints (#7576)
what:

- adds variant inventory link management endpoints:
```
Link inventory item to variant
POST /products/:id/variants/:vid/inventory-items

Update variant's inventory item link
POST /products/:id/variants/:vid/inventory-items/:iid

Unlink variant's inventory item
DELETE /products/:id/variants/:vid/inventory-items/:iid
```

- a batch endpoint that does the above 3 across variants
```
POST /products/:id/variants/inventory-items
```
2024-06-03 18:23:29 +00:00
Carlos R. L. Rodrigues
122186a78d chore(order): cancel order (#7586) 2024-06-03 12:31:33 -03:00
Adrien de Peretti
337b8ce0bb chore: Resolve flaky integration tests (#7587) 2024-06-03 16:29:08 +02:00
Carlos R. L. Rodrigues
af0140d317 feat(order): cancel fulfillment (#7573) 2024-06-02 09:33:24 -03:00
Harminder Virk
11528526fa feat: loosely typed container 2024-05-31 15:22:03 +05:30
Riqwan Thamir
2d956931b3 chore: append variants to created products on workflow (#7560) 2024-05-30 22:23:43 +02:00
Riqwan Thamir
22891060f9 chore: use product variant workflow in product create workflow (#7548)
what:

- reuses the product variant create workflow inside product create workflow
2024-05-30 14:04:59 +00:00
Stevche Radevski
4117beed58 chore: Refactor batch product workflows and add tests (#7540) 2024-05-30 15:53:03 +02:00
Adrien de Peretti
4e20588522 chore(core-flows): Cleanup old code (#7547)
Remove the old handlers and definitions that does not work anymore or are not used anymore. This legacy was bothering a refactoring we have with @thetutlage
2024-05-30 12:53:42 +00:00
Carlos R. L. Rodrigues
f1ced57d5f chore: payment auto capture + remove enum from utils (#7513)
What:

- handles payments session that are auto captured
- removes all the enums from `@medusajs/types`
- move all `@medusajs/types` to devDependencies
2024-05-29 11:12:59 +00:00
Carlos R. L. Rodrigues
bbca54efa7 chore(order): aggregate statuses (#7497) 2024-05-29 07:05:42 -03:00
Stevche Radevski
af7a885b5b fix: Ensure sales channel updates don't remove sales channel on other products (#7510)
* fix: Make all product tests pass

* fix: Ensure product update doesnt remove sales channels on other products
2024-05-28 18:24:27 +02:00
Oli Juhl
c9de1d28a4 feat: Assign store default sales channel in cart creation (#7495) 2024-05-28 12:12:01 +02:00
Shahed Nasser
7b059562d7 fix(core-flows): change default currency to eur (#7476) 2024-05-27 19:23:38 +03:00
Riqwan Thamir
7baedf73d5 feat(core-flows,types,utils,medusa): Update existing line items when adding the same variant to cart (#7470)
* feat(core-flows,types,utils,medusa): Update existing line items when adding the same variant to cart

* chore: split steps into 2 for add-to-cart

* chore: split steps into 2 for add-to-cart

* chore: iterate safely

* chore: parallelize upsert
2024-05-27 17:54:11 +02:00
Carlos R. L. Rodrigues
62ef82f497 feat(order): fulfillment workflow (#7385)
FIXES: CORE-2162 CORE-2167 CORE-2041
2024-05-27 12:49:33 +00:00
Adrien de Peretti
b8bc3ed16f chore: Start cleaning up medusa-core-utils (#7450)
**What**
- remove medusa-core-utils
- dispatch the utils where they belongs
- update usage

**NOTE**
I have been wondering if the graceful class should go into the utils package or medusa package, I ve put it in the medusa package as it seems to be the best place I can see for now and is tight to the server as well. Also, I wanted to avoid the utils package to depends on http and net dependencies, happy to change that if you feel like it
2024-05-27 08:00:15 +00:00
Stevche Radevski
28a3f9a3df feat: Add list cart option typings, make region optional on update cart (#7455) 2024-05-27 09:37:10 +02:00
Riqwan Thamir
ff870482bb feat(medusa,core-flows,types): fix bugs with cart promotions (#7438)
what:

The true source of promotions applied are present in the adjustments, previously we had links as the source of truth, but some issues popped up when you're trying to delete a line item as it was holding onto stale promotion data.

For this to truly work properly in the current form, we would have to pass data from the deleted line item step to the refresh promotion step and mutate the links twice to get the correct promotions for a cart. Additionally, the final list of codes to apply, comes from computeAction, because some previously applied codes could no longer be valid. The combination of passing codes from adjustments to computeActions and the codes returned from the computedActions are how we can accurately calculate the right promotions to apply. 

With this change, the promotions step always look at the latest line item adjustments of the cart, pass them to compute actions, pick the correct codes to apply from the compute actions and then mutate the links based on the final result. This way, we perform the correct calculations for a cart and have promotion links that are correct.
2024-05-24 09:48:14 +00:00
Stevche Radevski
135772b27b feat: Revert to using app_metadata for authentication (#7433) 2024-05-23 22:01:41 +02:00
Shahed Nasser
2187b82d5d fix(core-flows,types): general fixes to workflow types (#7392) 2024-05-22 11:27:12 +02:00
Stevche Radevski
5ede560f70 feat(auth): Revamp authentication setup (#7387)
* chore: Clean up authentication middlewares

* chore: Rename AuthUser to AuthIdentity

* feat: Define link between user, customer, and auth identity

* feat: Use links for auth, update auth context content

* fix: Adjust user create command with new auth setup

* fix: Make auth login more dynamic, review fixes

* fix: Change test assertions for created by
2024-05-22 10:27:32 +02:00
Frane Polić
b7df447682 fix(core-flows): set SalesChannels on Product update (#7272) 2024-05-21 21:48:34 +02:00
Adrien de Peretti
c4fde7ea5c feat(core-flows, fulfillment): Add create return specific method and add more tests (#7357)
* feat(core-flows, fulfillment): Add create return specific method and add more tests

* fix defautl providers in tests fixtures

* more tests

* wip fixes

* fix flow and tests

* cleanup
2024-05-21 13:48:59 +02:00
Riqwan Thamir
43613f3f58 chore: pick the default store region (#7369)
* chore: pick the default store region

* chore: fix test

* chore: remove from defaults workflow and move to seeds

* chore: undo payment provider change

* chore: rearrange conditionals
2024-05-21 12:05:01 +02:00
Carlos R. L. Rodrigues
f57dc98c7a chore(order): Paid Total and Refunded Total (#7373) 2024-05-20 15:48:57 -03:00
Frane Polić
521b4e7926 feat(dashboard): order fulfillment UI (#7262)
* feat: initial impl. of Unfulfilled section and create flow

* feat: create fulfillment

* feat: order <> fulfillment link, fulfillment section

* feat: accept order_id when creating fulfillment

* feat: finish create and cancel

* fix: integration test

* refactor: real Order<>Fulfillment link instead readonly, add link step to the workflow

* fix: revert `order_id` definitions

* chore: add changeset

* fix: build

* fix: address comments

* fix: fetch inventory and location levels for fulfilled variant

* fix: loading inventory details

* add isList to order fulfillment link

* fix: duplicate declaration

* fix: type

* refactor: link orders step, fix client

* fix: move translations to the new file

* fix: pass order id in test

---------

Co-authored-by: olivermrbl <oliver@mrbltech.com>
2024-05-20 13:41:09 +02:00
Carlos R. L. Rodrigues
48aa09be23 Chore(order): endpoints - Part 1:N (#7360) 2024-05-19 14:51:08 -03:00
Adrien de Peretti
a775d57255 feat(core-flows, types): Create return order (#7319)
**what**
- Create return workflow partial implementation
- Update some order domain types
- create order fulfillment link

**NOTE**
this PR is partially done but can still be merged as is, it will require some discussions around the flow and some unknowns or uncertainty in regards to some data and some behaviour
2024-05-16 14:10:54 +00:00
Riqwan Thamir
b78703b8c6 chore: fix variant pricing validation for carts (#7344) 2024-05-16 09:03:37 +02:00
Carlos R. L. Rodrigues
70fd355e46 chore(order): link order and payment collection (#7334) 2024-05-14 20:37:27 +00:00
Carlos R. L. Rodrigues
9dae86daa2 chore: es target 2021 (#7325) 2024-05-14 08:07:14 -03:00