Commit Graph

116 Commits

Author SHA1 Message Date
Adrien de Peretti
9608bf06ef feat: Event emitting part 1/N (Fulfillment) (#7391)
**What**
Add support for event emitting in the fulfillment module

**NOTE**
It does not include the review of the events for the abstract module factory if the method is not implemented in the module itself and rely on the default implementation
2024-06-03 08:29:35 +00:00
Shahed Nasser
28d2a5347a chore(types, utils): added TSDocs for file provider module (#7553)
* chore(types, utils): added TSDocs for file provider module

* fix import
2024-06-03 10:18:02 +02:00
Shahed Nasser
872c42c6dc chore(utils): added TSDocs to AbstractAuthModuleProvider (#7550)
Added TSDocs to AbstractAuthModuleProvider. These are used to generate the reference on how to create an auth provider module.
2024-06-03 07:41:09 +00:00
Carlos R. L. Rodrigues
af0140d317 feat(order): cancel fulfillment (#7573) 2024-06-02 09:33:24 -03:00
Sebastian Rindom
e66cf9112d fix(utils): support omitting modules in config (#7563)
* fix: skip module loading if mod: false

* fix: don't include disabled modules in config

* add test

* fix: revert changes to module loading in medusaapp
2024-05-31 15:28:52 +02:00
Stevche Radevski
cec9af1b80 feat: Add support for uploading media in admin (#7564) 2024-05-31 13:11:34 +02: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
Shahed Nasser
6b86b1d531 chore(types): add TSDocs to the user module's types (#7549) 2024-05-30 18:04:44 +03: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
Shahed Nasser
fe96bd39b1 docs: change config snippets to use defineConfig (#7546) 2024-05-30 16:47:28 +03:00
Riqwan Thamir
15e9787465 feat(types,medusa): add inventory quantity to products endpoint (#7541)
what:

- when inventory_quantity is requested through the API, we calculate the inventory based on sales channels + stock locations and return the total available inventory.

A variant can have multiple inventory items. As an example:

Table: (variant)
  - 4 (required_quantity via link) x legs (inventory item)
  - 2 x table top

Only if all individual inventory items of a variant are available, do we mark the variant as available as a single unit. 

RESOLVES CORE-2187
2024-05-30 13:20:06 +00: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
096372463e chore(promotion): big number calc (#7537) 2024-05-30 07:23:57 -03:00
Adrien de Peretti
61977bd392 chore: Allow modules to discover resources from ts/js and local directories (#7520)
**What**
Update the module resources discovery to account to the source directory to look into.

example:
```ts
user: { resolve: 'user' }
```
The above config will load the resources from the resolved path looking from the node modules
```ts
user: { resolve: './modules/user' }
```
The above config will load the resources from the local directory under dist if not run with ts node and under src otherwise
2024-05-30 09:14:55 +00:00
Shahed Nasser
65ee18c5bc chore(modules-sdk): Small fix to error wording (#7526)
* chore(modules-sdk): Small fix to error wording

* rename variables

* fix tests

* rename plugins to providers in tests
2024-05-29 21:17:35 +02:00
Stevche Radevski
aeda24265d feat: Remove returning token from customer and user endpoints (#7523)
* chore: Move generateJwtToken to utils

* feat: Stop returning token on user and customer endpoints
2024-05-29 17:13:01 +02:00
Kasper Fabricius Kristensen
e5e5eb6e18 fix(dashboard): Clean Edit Variant form payload of empty strings (#7512)
* fix(dashboard): Clean Edit Variant form paylod of empty strings

* fix(dashboard,medusa): Allow passing null to update variant to unset fields

* fix product edit form

* cleanup

* cleanup

* pass prop
2024-05-29 17:09:40 +02:00
Harminder Virk
a40b6aef6d Add defineConfig helper (#7517) 2024-05-29 17:10:15 +05:30
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
8e66e10995 fix: Use correct config for auth methods per actor (#7515) 2024-05-29 10:42:53 +02:00
Kasper Fabricius Kristensen
5a9922916a feat(dashboard,types,js-sdk): Cleanup collection domain (#7502)
**What**
- Adds missing collection HttpTypes
- Adds missing sdk functions
- Adds usage of sdk to collection domain.
2024-05-28 18:53:55 +00: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
Harminder Virk
82be054a1a chore: Rename config properties to camelCase (#7498)
* refactor: rename config types to camelCase

* refactor: update config references to use renamed options

* refactor: update more references

---------

Co-authored-by: Oli Juhl <59018053+olivermrbl@users.noreply.github.com>
2024-05-28 14:49:29 +02:00
Stevche Radevski
e60b4bafe1 feat: Add google authentication package, cleanup old code (#7496) 2024-05-28 14:25:40 +02:00
Frane Polić
6117af2704 feat(dashboard): restructure create product flow (#7374) 2024-05-28 13:59:02 +02:00
Oli Juhl
c9de1d28a4 feat: Assign store default sales channel in cart creation (#7495) 2024-05-28 12:12:01 +02:00
Harminder Virk
ef6d748784 feat: add Filesystem util and load env util (#7487) 2024-05-28 15:31:13 +05:30
Stevche Radevski
fb16ef485c fix: Use the correct header for publishable key (#7492) 2024-05-28 08:32:42 +00:00
Oli Juhl
ad21bd30b1 fix: errors thrown in transformer (#7480)
* chore: wup

* throw on error

* add back test

---------

Co-authored-by: Carlos R. L. Rodrigues <rodrigolr@gmail.com>
2024-05-28 08:44:33 +02:00
Adrien de Peretti
d2b5768c02 feat: re integrate transform middleware lost files and features (#7477)
**What**
Re integrate the transform query tests + missing features. It was originally mistekenly removed from one the team pr, also, I have adjusted the API and tests

**NOTE**
It does not include a full clean up of the typings and the backward compatibility remains for now
2024-05-27 16:36:53 +00:00
Shahed Nasser
7b059562d7 fix(core-flows): change default currency to eur (#7476) 2024-05-27 19:23:38 +03:00
Kasper Fabricius Kristensen
eeb063ebdf fix(types): Export DetailWidgetProps (#7469)
* rename folder to ui, as admin breaks paths in integration tests for some reason

* rename to admin
2024-05-27 18:20:40 +02: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
Adrien de Peretti
45bcdfec17 fix: Listening events (#7474)
* fix: Listening events

* cleanup
2024-05-27 15:31:57 +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
e275e01d85 chore: Cleanup medusa test utils (#7464)
* chore: Cleanup medusa test utils

* update yarn

* cleanup

* fix key

* cleanup

* fixes

* fixes

* fixes

* fixes

* fix runners

* fix bootstrap

* naming

* Improve runners options

* Improve runners options

* Improve runners options

* cleanup

* fix tests
2024-05-27 14:14:32 +02:00
Kasper Fabricius Kristensen
ab2e8fcd45 feat(dashboard,ui,types,admin-shared): Add more extension zones + pass data to widgets (#7465) 2024-05-27 12:47:12 +02:00
Oli Juhl
ebc4215f16 fix: Change num_code column from int to varchar (#7463) 2024-05-27 10:28:07 +02: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
Stevche Radevski
8acba7aba6 feat: Add customer address methods to sdk (#7445) 2024-05-24 19:01:11 +02:00
Adrien de Peretti
77d72c5791 fix(customer): Unique constraint on customer email (#7439)
**What**
Prevent creating multiple customers with the same email
2024-05-24 14:20:54 +00:00
Adrien de Peretti
fff1b3ef9c chore(medusa, workflows-sdk): Workflow default to throw the first error (#7442)
**What**
Currently when a workflow fail it will throw an error which contains the messages of all error thrown durring the workflow lifetime. Therefore, in our cases we are always preventing workflow to throw and grab the first error that we then re throw.
This pr eliminate that need by throwing back the first error among the error thrown by a workflow as it is the main case. In case someone need a special handling they can still set the option throwOnError to false and handle the error the way they need
2024-05-24 12:55:05 +00:00
Stevche Radevski
296473d994 feat: Update customer related typings and sdk methods (#7440) 2024-05-24 13:25: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
Stevche Radevski
8a070d5d85 Revamp the authentication setup (#7419)
* feat: Add email pass authentication provider package

* feat: Revamp auth module and remove concept of scope

* feat: Revamp the auth module to be more standardized in how providers are loaded

* feat: Switch from scope to actor type for authentication

* feat: Add support for per-actor auth methods

* feat: Add emailpass auth provider by default

* fix: Add back app_metadata in auth module
2024-05-23 20:56:40 +02:00