Commit Graph

1160 Commits

Author SHA1 Message Date
Shahed Nasser
2e65f7ffc0 chore(types): small tsdoc change to file service (#12240) 2025-04-18 14:41:39 +03:00
Harminder Virk
24af8f2d8e fix: expose beforeRefreshingPaymentCollection hook (#12232)
Fixes: FRMW-2942
Fixes: #12228
2025-04-18 09:31:19 +00:00
Oli Juhl
fe74e77a7a chore: Pass more data to fulfillment provider (#12186)
* fix(core-flows): Add more fulfillment data

* fix(core-flows): Add more fulfillment data

* add more fields

---------

Co-authored-by: Riqwan Thamir <rmthamir@gmail.com>
2025-04-18 10:24:46 +02:00
Stevche Radevski
c4a0b63778 feat: Add support for uploading a file directly to the file provider from the client (#12224)
* feat: Add support for uploading a file directly to the file provider from the client

* fix: Add missing types and add a couple of module tests

* fix: Allow nested routes, add test for it
2025-04-18 10:22:00 +02:00
Shahed Nasser
6f83dbc019 chore: fixes and updates to promotion and shipping option TSDocs (#12222) 2025-04-17 18:29:39 +03:00
Shahed Nasser
19d71fdc63 fix(core-flows): export registerOrderDeliveryStep (#12221)
Export registerOrderDeliveryStep to ensure devs can use it and to show it in the docs
2025-04-17 15:08:26 +00:00
Carlos R. L. Rodrigues
e180253d60 feat(orchestration): skip on permanent failure (#12027)
What:
 - Added step config `skipOnPermanentFailure`. Skip all the next steps when the current step fails. If a string is used, the workflow will resume from the given step.
 - Fix `continueOnPermanentFailure` to continue the execution of the flow when a step fails.
 
```ts
createWorkflow("some-workflow", () => {
  errorStep().config({
    skipOnPermanentFailure: true,
  })
  nextStep1() // skipped
  nextStep2() // skipped
})


createWorkflow("some-workflow", () => {
  errorStep().config({
    skipOnPermanentFailure: "resume-from-here",
  });
  nextStep1(); // skipped
  nextStep2(); // skipped
  nextStep3().config({ name: "resume-from-here" }); // executed
  nextStep4(); // executed
});
```
2025-04-17 12:49:58 +00:00
Shahed Nasser
1c5e82af51 chore(core-flows,types): fix links in TSDocs pointing to architectural modules (#12213) 2025-04-17 15:01:28 +03:00
Adrien de Peretti
8618e6ee38 fix(): Properly handle workflow as step now that events are fixed entirely (#12196)
**What**
Now that all events management are fixed in the workflows life cycle, the run as step needs to leverage the workflow engine if present (which should always be the case for async workflows) in order to ensure the continuation and the ability to mark parent step in parent workflow as success or failure

Co-authored-by: Carlos R. L. Rodrigues <37986729+carlos-r-l-rodrigues@users.noreply.github.com>
2025-04-17 09:34:19 +00:00
Harminder Virk
ee35f3ce90 fix: apply additional data validator using a global middleware (#12194) 2025-04-16 16:26:44 +05:30
Harminder Virk
b890263725 feature: add support for dynamoDB for storing sessions and some types cleanup (#12140) 2025-04-16 14:55:14 +05:30
Frane Polić
01542f6973 feat(core-flows, js-sdk, medusa): draft order shipping removal (#12124)
**What**
- allow removal of a shipping method

---

CLOSES CMRC-1013
2025-04-16 06:10:24 +00:00
Adrien de Peretti
2f6963a5fb fix(): Event group id propagation and event managements (#12157) 2025-04-14 15:57:52 -03:00
Frane Polić
413a0da26c fix(core-flows): draft order reservations (#12115)
* fix: draft order reservations

* feat: add test case

* fix: assert item ids
2025-04-13 17:40:16 +02:00
Shahed Nasser
1f73281ab8 fix(types): fix type of application_method_type filter (#12160)
The `application_method_type` filter has a `string` type in the HTTP types. This PR accurately sets the type. This is useful for the generated OAS to show the possible filter values.
2025-04-13 13:16:57 +00:00
Shahed Nasser
90f9149735 chore: fixes to JS SDK TSDocs (#12159) 2025-04-11 16:41:52 +03:00
Kunut Mix Chirdchai
ff9d1624b2 docs: Fix incorrect syntax in code snippets on Create Payment Provider page. (#12012) 2025-04-11 13:41:49 +03:00
olivermrbl
d61694385d chore: Version packages 2025-04-11 10:25:36 +02:00
Carlos R. L. Rodrigues
31abba8cde fix(orchestrator): save checkpoint before async step (#12138) 2025-04-10 15:36:36 +00:00
Adrien de Peretti
07252691c5 chore(pricing): Pricing retrieval improvements (#12128)
**What**
I have removed the check for the context key where it was fetching all attributes available and then stripping out the one that does not exists.. On big dataset these would remove multiple hundreds of ms of query execution
2025-04-10 09:39:21 +00:00
Pedro Guzman
8804ca2f9c fix: allow backorder variants to be added to cart even if no locations (#12083)
* fix: allow backorder variants to be added to cart even if no locations

* document and unit test prepareConfirmInventoryInput
2025-04-09 19:15:42 +02:00
Adrien de Peretti
13e159d8ad fix(workflow-engine-*): Prevent passing shared context reference (#11873)
* fix(workflow-engine-*): Prevent passing shared context reference

* fix(workflow-engine-*): Prevent passing shared context reference

* prevent tests from hanging

* fix event handling

* add integration tests

* use interval for scheduled in tests

* skip tests for now

* Create silent-glasses-enjoy.md

* fix cancel

* changeset

* push multiple aliases

* test multiple field alias

* increase wait time to index on test

---------

Co-authored-by: Carlos R. L. Rodrigues <37986729+carlos-r-l-rodrigues@users.noreply.github.com>
Co-authored-by: Carlos R. L. Rodrigues <rodrigolr@gmail.com>
2025-04-09 10:39:29 +02:00
Adrien de Peretti
2a18a75353 chore(framework): slightly improve maybe apply link filter middleware (#12113)
**What**
- Use the resource id filtering when possible instead of relying on programmatic intersection checks over potential hundreds thousands of resources from the link when in fact it is not necessary to fetch everything to check in memory but instead check in the db 
- Also fix normalizeDataForContext middlewares
2025-04-09 04:03:10 +00:00
Adrien de Peretti
74381addc3 chore(): Emit events in batch and index process event ids in batch (#12097)
**What**
First iteration to prevent events from overwhelming the systems.
- Group emitted event ids when possible instead of creating a message per id which leads to reduced amount of events to process massively in cases of import for example
- Update the index engine to process event data in batches of 100
- Update event handling by the index engine to be able to upsert by batch as well
- Fix index engine build config for intermediate listeners inferrence
2025-04-08 16:57:08 +00:00
Shahed Nasser
9ac74eead4 feat(core-flows,types): export fetchShippingOptionForOrderWorkflow (#12103)
* feat(core-flows,types): export fetchShippingOptionForOrderWorkflow

* revert change

* change to tsdoc

* fix errors

---------

Co-authored-by: Oli Juhl <59018053+olivermrbl@users.noreply.github.com>
2025-04-08 13:05:03 +03:00
Shahed Nasser
83d29c2e79 chore(js-sdk, types): add TSDocs for plugin methods in JS SDK (#12106)
* chore(js-sdk, types): add TSDocs for plugin methods in JS SDK

* tsdocs for draft orders
2025-04-07 18:11:33 +03:00
Carlos R. L. Rodrigues
92c7baa561 fix(orchestration): handle multiple shortcuts with same name (#12066) 2025-04-07 11:59:28 -03:00
Shahed Nasser
2be03d0d39 chore(types,utils): fixes to TSDocs for HTTP types and payment provider (#12102) 2025-04-07 16:08:39 +03:00
Shahed Nasser
4780226145 chore(core-flows): added TSDocs for setPricingContext hooks (#12100) 2025-04-07 14:49:24 +03:00
Frane Polić
a8513019db fix(core-flows,dashboard): handling authorized payment collection on OE (#11958)
* wip: handling authorized payment collection on OE

* fix: update condition

* fix: condition for creation

* chore: remove commented code

* chore: changeset, refactor

* chore: typo, comments

* fix: add a test case

* fix: reorg workflows, partially captured

* fix: status enum type
2025-04-02 13:57:44 +02:00
Harminder Virk
d3e725a907 feat: add hasMany flag to enforce in app link uniqueness (#12039)
* feat: add createMultiple flag to enforce inApp link uniqueness

* changes

* mocks

* default

* many to many

---------

Co-authored-by: Carlos R. L. Rodrigues <rodrigolr@gmail.com>
2025-04-02 10:46:51 +02:00
Kasper Fabricius Kristensen
f441362f4a feat(medusa,core-flows,types,js-sdk): Draft Order workflows and API endpoints (#11805) 2025-04-02 10:23:33 +02:00
Frane Polić
5f3a82f5c3 fix(core-flows): applying product type promotion (#12051)
* fix: applying porduct type promotion

* Create fair-terms-tell.md

---------

Co-authored-by: Oli Juhl <59018053+olivermrbl@users.noreply.github.com>
2025-04-02 09:35:25 +02:00
Harminder Virk
2f7eb0ee03 fix: validate module names to disallow unallowed characters (#12025) 2025-03-28 22:39:39 +05:30
Shahed Nasser
e998366aba chore(js-sdk): improve the TSDocs of auth methods in JS SDK (#12033) 2025-03-28 17:55:01 +02:00
Oli Juhl
79cfc1a69e fix(utils): Enable Redis locking by default in Cloud (#12017)
* fix(utils): Enable redis locking by default

* fix: tests

* Create popular-rules-shake.md
2025-03-28 16:23:02 +01:00
Frane Polić
95e89a39f3 feat(core-flows, types): try payment cancelation if cart complete fails in the webhook (#11832)
* fix: try compensating if cart complete fails, reorder process paymnet workflow steps

* fix: condition

* fix: feedback

* feat: changes to the compensation step

* fix: build

* fix: remove payment id as arg

* fix: when input

* chore: remove captures realtion, changeset

* fix: return lates payment object from authorize payment
2025-03-28 14:49:54 +01:00
Kasper Fabricius Kristensen
3dba58785f fix(dashboard,medusa,types): allow searching for promotion rule options (#12028)
* fix: allow searching for promotion rule options

* fix: allow searching for promotion rule options

* add changeset

* cleanup
2025-03-28 14:45:05 +01:00
Harminder Virk
b1b3b48474 feat: Set pricing context hook (#11891) 2025-03-28 15:17:52 +05:30
Riqwan Thamir
c870a7a1ba fix(utils,promotion): fix case where mutliple percentage promotions werent applied (#11992)
what:

- fix case where mutliple percentage promotions werent applied
2025-03-26 22:46:50 +00:00
Riqwan Thamir
1f8fab3636 feat(core-flows,types,order,cart): assign tax lines only to regular products (#11994)
what:

- assign tax lines only to regular products
2025-03-26 22:26:34 +00:00
Shahed Nasser
0cc306bf56 fix(js-sdk, types): fixes types and deprecate duplicate methods (#11975) 2025-03-25 16:37:30 +01:00
Carlos R. L. Rodrigues
01089d5bc8 chore(core-flows): price list skip when no data (#11977) 2025-03-25 10:55:30 -03:00
Shahed Nasser
768ea91e1b chore(js-sdk,types): add missing examples for JS SDK methods (#11934)
* chore(js-sdk,types): add TSDocs for calculate method

* added tsdocs for promotions

* finished adding examples

* fixes

* remove unused import
2025-03-25 14:55:54 +02:00
Shahed Nasser
c6f2f444ed fix(js-sdk): fix the return type of the promotion.listRules method (#11937) 2025-03-24 07:35:15 +01:00
Frane Polić
de8c034d1b feat(core-flows, types): calculated shipping in RMA flows (#11533)
* wip: calculated SO pricing in RMA flows

* fix: types

* chore: small refactor

* feat: caluclated shipping in return flow

* fix: module integrations

* fix: array containing

* feat: refresh shipping on update item quantity

* rm: log

* rm: log2

* feat: update interface, remove flag

* fix: revert change on OE for now

* fix: import

* feat: refactor flwos, cleanup cacluation cotext data model, wip exchanges

* feat: refreshing inbound/outbound shipping on items change

* feat: refresh exchange shipping on return item add, test

* feat: refresh shipping on exchange/return item remove

* fix: check optional

* feat: test recalculation on quantity update

* feat: calculated shipping on claims

* fix: comment

* wip: address comments

* fix: more remote query, fix build

* refactor: claim refresh workflow

* fix: remove throw option

* fix: deconstruct param

---------

Co-authored-by: Oli Juhl <59018053+olivermrbl@users.noreply.github.com>
2025-03-24 07:07:47 +01:00
Shahed Nasser
053326950d fix(js-sdk): fix the API route used in fulfillment.cancel method (#11936) 2025-03-21 15:08:44 +00:00
Harminder Virk
cab6f3a8ad feat: add support for accessing step results via context (#11907)
Fixes: FRMW-2934

This PR adds support for accessing the results of a hook using the `hook.getResult` method.
2025-03-21 10:15:38 +00:00
Stevche Radevski
c4f75ecbb2 feat: Add support for generating a cloud-ready config out of the box (#11850) 2025-03-21 09:21:38 +01:00
Frane Polić
8385a5e34d feat(core-flows): revisit fulfillment flow reservations and support inventory kit (#11790)
* feat: fulfillment flow with reservations and inventory kit

* fix: account for custom line items

* chore: cleanup, changeset

* fix: revert action check

* fix: deduplicate, test item qunatities, compute line item quantity from fulfillment items

* fix:

* fix: improve types

* fix: optimize fetched fileds in cancel fulfillment workflow

* fix: add a test case

* chore: update type
2025-03-19 13:15:24 +01:00