Commit Graph
100 Commits
Author SHA1 Message Date
Adrien de Peretti 2c5e72d141 feat: Application types generation from project GQL schema's (#8995) 2024-09-06 15:15:32 +05:30
Adrien de Peretti 479e712c17 fix(core-flows): Handle variant creation duplicate inventory item ids (#8937)
* fix(core-flows): Handle variant creation duplicate inventory item ids

* disabled already selected options

* address feedback

* fix tests
2024-09-02 18:36:42 +02:00
Adrien de Peretti 99461e24ab feat(notification): Handle long running transaction and add status support (#8900)
RESOLVES FRMW-2110
RESOLVES FRMW-2095

**What**
- Fix notification module to not retain transactions open while sending notification
- Add support for notification status [success, pending, failure]
2024-09-01 08:01:47 +00:00
Adrien de Peretti 3da01035f3 fix: Shipping profile deletion with options (#8910)
* fix(fulfillment): Prevent deletion of profiles associated to options

* add tests

* typo

* address feedback
2024-08-30 17:04:29 +02:00
Adrien de Peretti bd20d66968 fix(link-module): Migration planner not closing connection correctly (#8881)
RESOLVES CC-405

**What**
Fixing mikro orm connection not closed during sync-links
2024-08-29 15:10:13 +00:00
Adrien de Peretti 77b874f272 feat: Add support for providers to validate their options at loading time (#8853)
* feat: Add support for providers to validate their options at loading time

* fix missing removal

* fix integration tests

* add tests
2024-08-29 09:08:49 +02:00
Adrien de Peretti 52e394055c fix(utils): DML hasOne - belongsTo not behaving correctly (#8813)
FIXES FRMW-2676

**What**
ref: https://discord.com/channels/876835651130097704/1023889804544458752/threads/1276979858781503528

Currently, when providing the following

```ts
const user1 = manager.create(User, {
  username: "User 1",
  team: {
    name: "Team 1",
  },
})
```

It would result in an error inserting into the database because the foreign key will be sent twice as part of the insert, one for the relation and one for the foreign key that both relate to the foreign key property.

To fix that and allow both approaches (providing the entity to cascade persist or just providing the foreign key in case of another side nullable relation) we need to handle it a bit differently.

now both approaches would be valid. the entities for the example might not be the best ones but it is just to illustrate
option 1 - we create both the user and the team:
```ts
const user1 = manager.create(User, {
  username: "User 1",
  team: {
    name: "Team 1",
  },
})
```
option 2 - the team already exists (for example the previous user have been detached from the team but we kept the team alive and assign a new user to that team) :
```ts
const user1 = manager.create(User, {
  username: "User 1",
  team_id: team.id
})
```
2024-08-28 15:45:48 +00:00
Adrien de Peretti 5bec38538a chore: Treat internal event differently, primarely do not display info logs for those events (#8767)
* chore: Treat internal event differently, primarely do not display info log for those events

* revert doc

* add few tests

* only set internal option if present

* revert to previous condition

* start including feedback after discussion

* include feedback

* fix modules integration tests

* fix modules integration tests

* fix event bus local
2024-08-28 16:46:40 +02:00
Adrien de Peretti 5294ce8654 chore(medusa): Re enable plugin loading (#8843)
* chore(medusa): Re enable plugin loading

* finalise
2024-08-28 15:38:51 +02:00
Adrien de Peretti b09c19912b fix(orchestration, workflow-sdk): Local workflow separated orchestrator (#8765)
FIXES TRI-174

**What**
Currently, every time a Local workflow is being instantiated, it will grab the global workflow definition including the orchestrator instance. This leads to issues when we have concurrent running workflows which all register their event listeners to this single orchestrator instance which can lead to exhausting the listerners. 
With this fix, every local workflow will have a copy of the global workflow definition plus a new instance (cloned) of the orchestrator meaning that from now on, every local workflow will have its own orchestrator.
2024-08-27 08:59:56 +00:00
Adrien de Peretti 8bde27153a fix(framework/config): Properly resolve env variables (#8411) 2024-08-02 16:24:32 +02:00
Adrien de Peretti e44332ba62 chore(framework): Allow multiple source dir for subcribers loader (#8407)
* chore(framework): Allow multiple source dir for subcribers loader

* re add  log

* add logs
2024-08-02 13:55:48 +02:00
Adrien de Peretti 9950a7efe2 chore(framework): medusa app loaders (#8393)
RESOLVE FRMW-2636

**What**
cleanup and move medusa app loader for now
2024-08-02 10:38:36 +00:00
Adrien de Peretti f81652bf6e chore(framework): Move and improve routes loader (#8392)
* chore(framework): Move and improve routes loader

* cleanup

* fix(framework): import
2024-08-01 16:18:42 +02:00
Adrien de Peretti 4a7b2fd625 fix(framework): telemetry package version (#8378) 2024-07-31 14:46:38 +00:00
Adrien de Peretti 56602d215b chore(framework): Move and improve workflows loader (#8363)
**What**
Refactoring Workflows loader and move

FIXES FRMW-2627
2024-07-31 14:46:04 +00:00
Adrien de Peretti 27837b8833 fix(framework): prepublish script (#8377) 2024-07-31 14:00:54 +00:00
Adrien de Peretti 12c6a1a022 chore(framework): Move and improve links loader (#8367)
**What**
Refactor and move links loader

FIXES FRMW-2637
2024-07-31 12:33:12 +00:00
Adrien de Peretti 6ccf83128c Chore/framework 6/n (#8356)
**What**
Refactor and improve job loader as well as move it to the framework

FIXES FRMW-2626
2024-07-31 09:17:17 +00:00
Adrien de Peretti a9fea986b0 chore(framework): Move and improve subscriber loader (#8347)
**What**
Move `SubscriberLoader` and improve implementation

FIXES FRMW-2635
2024-07-30 12:54:31 +00:00
Adrien de Peretti 9b6de8c02d chore(framework): Move feature flags related resources and cleanup (#8297)
**What**
cleanup and move the feature flag related resources to manage them.

It also include some refactoring around loading and registering the flag as well as not relying on the `glob` package anymore plus some reorganization of the code itself

FIXES FRMW-2625
2024-07-30 12:20:03 +00:00
Adrien de PerettiandOli Juhl bcd9d9c2b1 chore(framework): Continue to move loaders to framework (#8258)
**What**
More move and cleanup

FIXES FRMW-2603
FIXES FRMW-2608
FIXES FRMW-2610
FIXES FRMW-2611

Co-authored-by: Oli Juhl <59018053+olivermrbl@users.noreply.github.com>
2024-07-30 08:52:12 +00:00
Adrien de Peretti 75ec53e45a chore(framework): update deps (#8261)
* chore(medusa): update framework deps

* update lock

* update deps

* fix
2024-07-24 11:38:50 +02:00
Adrien de Peretti 2188a4e1ba fix: isList on field alias in link configuration (#8244)
* fix/link-configuration-is-list-on-fieldsAlias

* fix tests

* fix tests

* fix tests
2024-07-24 10:18:38 +02:00
Adrien de Peretti 47dde05517 chore(framework): Initial commit (#8221)
**What**
- Initiate the framework package (which is just a place to move things around for now)
- move the config loader and related resources as well as the `ConfigModule` type
- Create a ConfigManager singleton which prepare and store the config (later can be stored entirely in the container) and allow for easier test override
- re export the logger from the framework
- replace medusa config loader with the framework one
- `build` run type check on tests as well but `prepublishOnly` will not fail on build if tests are typed broken

FIXES FRMW-2607
FIXES FRMW-2609
FIXES FRMW-2614
FIXES FRMW-2618
2024-07-23 15:46:28 +00:00
Adrien de Peretti a9abf448c6 fix(utils): Fix inferrence of public method name and service registration name based on configuration (#8237) 2024-07-23 14:43:46 +02:00
Adrien de Peretti c307972a99 chore(medusa): rm default created at field (#8213)
**What**
To maintain the backward compatibility, we use to populate `created_at` no matter what. But since we can break things from v1, I ll remove it as we moved the default ordering to the repository layer
2024-07-22 08:20:14 +00:00
Adrien de Peretti f74fdcb644 breaking: rework how links database migrations are managed (#8162) 2024-07-22 13:12:23 +05:30
Adrien de Peretti 566300d54b fix: normalize path before consuming it while loading models (#8194)
* fix: normalize path before consuming it while loading models

* Make it so that models derived from the service if present

* fix linkable tests that now match what has been passed to the medusa service if there is no custom joiner config

* fix linkable tests that now match what has been passed to the medusa service if there is no custom joiner config

* fix linkable tests that now match what has been passed to the medusa service if there is no custom joiner config
2024-07-21 21:21:05 +02:00
Adrien de Peretti ecc97076b5 chore: default isQueryable module (#8192)
* chore: default isQueryable module

* fix defaults

* fix
2024-07-19 16:14:42 +02:00
Adrien de Peretti 35c3759ed8 fix: workflow 'when' should return T or undefined instead of Partial<T> (#8195)
* fix: workflow 'when' should return T or undefined instead of Partial<T>

* fix when usage
2024-07-19 10:46:55 +02:00
Adrien de Peretti 398e39d163 fix: product module joiner config (#8170)
* fix: product module joiner config

* fix aliases

* revert package.json

* add js doc
2024-07-18 11:27:21 +02:00
Adrien de Peretti 4af7309170 fix: install modules-sdk for test-utils to work (#8142) 2024-07-16 12:00:24 +02:00
Adrien de Peretti 8a68919ed3 chore: Allow to fetch remote link using the service name or the alias from the use remote link step (#8140)
* chore: Allow to fetch remote link using the service name or the alias from the use remote link step

* revert package.json

* fix packages
2024-07-16 11:03:41 +02:00
Adrien de Peretti 53ddea717c fix: workflow return type inf missing type (#8133) 2024-07-15 14:40:03 +03:00
Adrien de Peretti 136da3f3ce fix: Handle multiple id prop generation (#8097)
* fix: Handle multiple id prop generation

* throw on duplicate id + cleanup

* fix mistakenly removed files

* fix

* fix

* passzord string

* passzord string
2024-07-12 16:41:19 +02:00
Adrien de Peretti f6e86f1b99 chore: temporarely disabling link revert (#8105) 2024-07-12 15:05:56 +02:00
Adrien de Peretti 104b00d4e9 feat(migrations): CLI generate command (#8103) 2024-07-12 13:12:49 +02:00
Adrien de Peretti 79ec2bcfe2 fix: Migration generator and generated migrations (#8090) 2024-07-11 18:21:09 +02:00
Adrien de Peretti 143847ace4 fix: Investigate geo zones with address checks (#8066)
* fix: Investigate geo zones with address checks

* rm debug

* fix constraint building checks

* add more explanation
2024-07-11 11:11:42 +02:00
Adrien de Peretti 1789b8e315 chore: properly infer return type from model config (#8079) 2024-07-11 10:36:07 +02:00
Adrien de Peretti e778870c68 chore: Ensure the events are emitted with the same shape all accross (#8063)
* chore: Ensure the events are emitted with the same shape all accross

* fixes:

* rm unsues type

* types

* fix tests
2024-07-10 19:34:28 +02:00
Adrien de Peretti 10848c8bf2 chore: rename source to linkable in defineLink options (#8016)
* chore: rename source to linkable in defineLink options

* rm unused const
2024-07-08 16:44:03 +02:00
Adrien de Peretti fc7f5ff71a fix: Modules providers loading mechanism to infer the source dir (#8015)
* fix: Modules providers loading mechanism to infer the source dir

* finalize
2024-07-08 14:11:45 +02:00
Adrien de Peretti b450628481 fix: error 4082 when using defineLink (#8014) 2024-07-08 12:05:44 +02:00
Adrien de Peretti 9750047af1 chore: Rename entity to model (#7977)
**What**
Start renaming `entity` to `model`
2024-07-08 07:43:49 +00:00
Adrien de Peretti b24c8503d5 feat: Add types to the workflow conditional (#7979)
**What**
Add typing to the when conditional workflow step

FIXES CORE-2494
2024-07-05 14:43:16 +00:00
Adrien de Peretti b368251ca3 chore: Migrate modules to use the Module util (#7964)
**What**
Apply the `Module` util to each module to handle the export and provide the linkable configuration object.

- Most joiner config that does not have any special config are removed/cleaned up in favor of the autogenerated one or simpler one
- linkable are now available in all modules
- cleaned up the dependencies of the modules

FIXES CORE-2410
2024-07-05 13:00:40 +00:00
Adrien de Peretti f4dd390ab1 chore: Apply defineMikroOrmCliConfig (#7975)
**What**
Ensure all module rely on the same config for the dev db

FIXES CORE-2493
2024-07-05 11:10:03 +00:00
Adrien de PerettiandRiqwan Thamir 1393f51046 fix: Improve get caller file path util (#7974)
* fix: Improve get caller file path util

* improve compatibility

* update comment

---------

Co-authored-by: Riqwan Thamir <rmthamir@gmail.com>
2024-07-05 12:54:27 +02:00
Adrien de Peretti 8c30f0a54d chore: rm database extra (#7963) 2024-07-05 09:53:15 +02:00
Adrien de Peretti f49139b20f fix: custom link resolution in medusa app (#7950)
* fix custom link resolution in medusa app

* improve

* fix duplicate
2024-07-04 16:50:53 +02:00
Adrien de Peretti 32998b7527 fix: The table existence check should quote the table name (#7949) 2024-07-04 16:17:24 +02:00
Adrien de Peretti 7b84d854f0 Feat/mikro orm based linkable (#7944)
**What**
- Generate simple linkable for mikro orm based modules 
- fix module util
- fix joiner config builder
- fix define link relationship extension
- fix migrations not loading custom links
2024-07-04 13:30:47 +00:00
Adrien de Peretti cb36655b63 chore: Update defineMikroOrmCliConfig api (#7940)
* chore: Update defineMikroOrmCliConfig api

* update usage
2024-07-04 12:58:43 +02:00
Adrien de Peretti 41c4307fc7 feat: define link util (#7931)
* feat: define link util

* handle pluralized fieldAlias for isList

* serviceName ar reference

* finalize

* todo

* WIP

* finalize

* fix tests

* update typings

* fix Module

* linkable

* update errors
2024-07-04 10:37:30 +02:00
Adrien de Peretti 2711012d96 feat: Make the Module require the service name (#7923)
* feat: Make the Module require the service name

* finalize types
2024-07-03 15:44:57 +02:00
Adrien de PerettiandHarminder Virk 617a5972bf feat: refactor module joiner config and links generation (#7859)
* feat: refactor module joiner config and links generation

* improve typings

* WIP

* WIP

* WIP

* rename type file

* create link config

* finish typings and add utils

* improve links

* WIP typings

* finalize ExportModule utils

* finalize ExportModule utils

* fix: dml tests

* improve and fixes

* simplify typings with id changes

* add toJSON

* multiple fixes and entity builder fixes

* fix currency searchable

* fix tests

* medusa service refactoring

* cleanup

* cleanup and fixes

* make module name optional

* renaming

---------

Co-authored-by: Harminder Virk <virk.officials@gmail.com>
2024-07-03 13:12:49 +02:00
Adrien de Peretti 68dbcda84c fix: DML Enum property (#7846)
* fix: DML Enum property

* add more tests

* fix unit tests
2024-06-26 17:01:57 +02:00
Adrien de Peretti dc307c658d feat: Add support for array properties DML (#7836) 2024-06-25 20:51:14 +02:00
Adrien de Peretti 39038ddb0a chore: various DML improvements (#7833)
* chore: various DML improvements

* Check is something through static utils

* Check is something through static utils

* allow to define a schema with table name

* restrict searchable to text only

* rm searchable modifier

* extract constructor logic into separate function
2024-06-25 18:00:39 +02:00
Adrien de Peretti 66d17fabde chore: rename extractor type to InferEntityType (#7829) 2024-06-25 13:43:11 +02:00
Adrien de PerettiandOli Juhl 34c44078e7 fix: DML relation management for many to one relation ship foreign keys (#7790)
FIXES CORE-2369

cc @thetutlage 

Co-authored-by: Oli Juhl <59018053+olivermrbl@users.noreply.github.com>
2024-06-24 18:54:54 +00:00
Adrien de Peretti 021f5ea016 fix: medusa service should infer names when not provided (#7818)
* fix: medusa service should infer names when not provided

* fix types

* fix typings
2024-06-24 16:35:44 +02:00
Adrien de Peretti 27bb93c5b5 chore: Fix export and option of mikro orm define config util (#7809) 2024-06-24 09:31:52 +00:00
Adrien de Peretti ae6dbc06be chore: Update module test runner to support DmlEntities when needed (#7799)
* chore: Update module test runner to support DmlEntities when needed

* update es version for core test utils

* fix test

* update swc config
2024-06-24 09:44:01 +02:00
Adrien de PerettiandRiqwan Thamir 8fa43a6db3 Feat/define mikro orm configuration dev (#7798)
* chore: define mikro orm config for CLI

* add tests

* fix types

* fix import

---------

Co-authored-by: Riqwan Thamir <rmthamir@gmail.com>
2024-06-24 09:10:54 +02:00
Adrien de Peretti 90e6ca0e9e chore: Internal medusa service proper typings with DML (#7792) 2024-06-21 12:36:54 +02:00
Adrien de Peretti 937a632eb6 chore: make module loaders DML aware and auto generate joiner config (#7781)
* chore: make module loaders DML aware and auto generate joiner config

* fixes and cleanup

* improve dml entity check

* add unit tests on load resources

* cleanup deps

* cleanup deps

* cleanup Modules

* finalise

* fix modules-sdk jest

* fix modules-sdk jest

* fix import

* fix import
2024-06-20 18:18:07 +02:00
48963f55ef Chore/rm main entity concept (#7709)
**What**
Update the `MedusaService` class, factory and types to remove the concept of main modules. The idea being that all method will be explicitly named and suffixes to represent the object you are trying to manipulate.
This pr also includes various fixes in different modules

Co-authored-by: Stevche Radevski <4820812+sradevski@users.noreply.github.com>
Co-authored-by: Oli Juhl <59018053+olivermrbl@users.noreply.github.com>
2024-06-19 13:02:16 +00:00
Adrien de Peretti 89bb16cea1 chore: Add back the db utils to the test runner for specific cases (#7764)
* chore: Add back the db utils to the test runner for specific casees

* chore: Add back the db utils to the test runner for specific casees
2024-06-18 17:19:37 +02:00
Adrien de Peretti e0b14519f1 fix: Medusa service base method transaction (#7758)
**What**
Remove transaction decorator from the base medusa service method, the transaction will always be coming from the shared context. It fixes the issue that when you consume a base method directly it will return a proper tuple from the DB instead of the one from the entity map cc @VariableVic 

**NOTE**
This pr also fix some categories issues in the product module which was preventing the tests from working. if @sradevski you could have a look later, in the mean time we can still merge it

FIXES CORE-2342
2024-06-18 10:58:54 +00:00
Adrien de Peretti d2a5201eeb chore: Refactor and improve abstract module service factory (#7688)
* chore: Refactor and improve abstract module service factory

* align naming

* clean up some template args and tests

* partially migrate modules

* partially migrate modules

* migrate more modules

* migrate last modules

* fix typings

* rename interface

* rename interface

* fixes

* fixes

* rm local plain tests
2024-06-13 13:12:37 +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
afae395fea chore: ensure the event group id is kept for async workflow (#7668)
* chore: ensure the event group id is kept for async workflow

* revert test

* fix tests

---------

Co-authored-by: Oli Juhl <59018053+olivermrbl@users.noreply.github.com>
Co-authored-by: Riqwan Thamir <rmthamir@gmail.com>
2024-06-11 13:20:17 +02:00
Adrien de Peretti c9c2b6c88f chore: Ensure the transactionId/eventGroupId are passed down the child workflows (#7648) 2024-06-07 12:38:04 +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
Adrien de Peretti 3cd2d60daa feat: Ensure the event group id is either generated or picked up from the context (#7646)
**What**
- Pick the context event group id or generate it to be accessible from the workflow and down the module calls

FIXES CORE-2273
2024-06-07 09:14:02 +00:00
Adrien de Peretti 9576de2be4 feat: emit product tags events (#7636)
**What**
emit product tags events

**note**
Stil does not take into consideration non overriden method, delete and soft delete emits event under the hood and we will have to migrate that at the end
2024-06-06 15:14:40 +00:00
Adrien de Peretti 3f62bfad5a fix: should disable db connection ssl when some url params are provided (#7634)
**What**
Enable ssl identification from the client url query params as well
2024-06-06 14:52:12 +00:00
Adrien de Peretti 3fbb8aa671 feat: Product module events (#7598)
WIP, not ready to review

**what**
- add events
- integration tests of emitted events
- remove integration tests on auto generated services in favor of module method integration tests
2024-06-06 11:47:38 +00:00
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
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
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
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
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
Adrien de Peretti 45bcdfec17 fix: Listening events (#7474)
* fix: Listening events

* cleanup
2024-05-27 15:31:57 +02: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
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
Adrien de Peretti f585b13c96 chore: remove babel usage (#7452) 2024-05-24 20:51:12 +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 d354b253d5 chore: Fixes somes command and migrate to ts (#7444)
**What**
Fix some commands that are using the loaders return unproperly and cleanup, also includes a migration to ts
2024-05-24 14:17:58 +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
Adrien de Peretti 16651f9849 chore(medusa): Loader shutdown fixes (#7443)
**What**
prepare shutdown was called after modules shutdown
2024-05-24 12:38:37 +00:00
Adrien de Peretti f8b4a65168 feat: Load custom link definitions (#7430)
**What**
Load custom links from the projects
2024-05-23 20:33:38 +00:00
Adrien de Peretti 37ae87fe9b fix(admin-next, utils, medusa): Handle db errors properly and fix form (#7416)
* fix(admin-next, utils, medusa): Handle db errors properly and fix form

* fix(admin-next, utils, medusa): Handle db errors properly and fix form

* fix(admin-next, utils, medusa): Handle db errors properly and fix form

* fix(admin-next, utils, medusa): Handle db errors properly and fix form
2024-05-23 12:36:45 +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
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
Adrien de Peretti e733d6b1ee fix(modules-sdk): Resolve discovery location properly (#7345) 2024-05-16 12:13:25 +02:00