Commit Graph

134 Commits

Author SHA1 Message Date
Adrien de Peretti
da3837f2bc chore: return meta information on created/updated/deleted object from upsertWithReplace (#7616)
**What**
- Return the updated/deleted/created entities from the upsert with replace according to the configuration

This will help to emit the events from the product module as it rely on this abstraction in many places
2024-06-05 20:04:45 +00:00
Carlos R. L. Rodrigues
56f65f319d fix(modules-sdk): dependencies (#7622) 2024-06-05 11:46:07 -03:00
Harminder Virk
2b62686ec6 implement events to the pricing module (#7584) 2024-06-05 17:33:49 +05:30
Stevche Radevski
fafc92b875 Revamp auth module to support multiple providers linked to a single auth identity (#7521) 2024-06-05 07:47:16 +00:00
Oli Juhl
20cd6a7b51 chore: Split up admin domain in js-sdk (#7612) 2024-06-05 09:34:18 +02:00
Oli Juhl
dc087bf310 feat: Move shipping option + profile test and more (#7609) 2024-06-05 08:36:41 +02:00
Stevche Radevski
e44fe78b96 fix: Several fixes to store product endpoints, moved several test suites to HTTP (#7601)
* chore: Move publishable api key tests to HTTP

* chore: Move store tests to HTTP folder

* fix: Add tests for store products, fix several bugs around publishable keys
2024-06-04 21:00:07 +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
Shahed Nasser
6646a203df chore(types, utils): add TSDocs for AbstractNotificationProviderService (#7556)
Add TSDocs for `AbstractNotificationProviderService` which will be used to generate a reference on how to create a notification provider module.
2024-06-04 13:36:06 +00:00
Harminder Virk
8d9d78029b Remove redundant methods from pricing module (#7597) 2024-06-04 16:33:06 +05:30
Carlos R. L. Rodrigues
41df24e2dc chore(workflows-sdk): check exported workflow (#7592) 2024-06-04 07:18:40 -03: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
Stevche Radevski
fdd9022376 chore: Move payment tests to http folder (#7588) 2024-06-03 15:04:18 +00:00
Adrien de Peretti
337b8ce0bb chore: Resolve flaky integration tests (#7587) 2024-06-03 16:29:08 +02:00
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