Carlos R. L. Rodrigues
45134e4d11
chore: local workflow proxying methods to pass context ( #6263 )
...
What:
- When calling a module's method inside a Local Workflow the MedusaContext is passed as the last argument to the method if not provided
- Add `requestId` to req
- A couple of fixes on Remote Joiner and the data fetcher for internal services
Why:
- The context used to initialize the workflow has to be shared with all modules. properties like transactionId will be used to emit events and requestId to trace logs for example.
2024-02-01 13:37:26 +00:00
Sebastian Rindom
a2bf6756ac
feat(customer): manage default address selection ( #6295 )
...
**What**
- Catches unique constraints on customer_id, is_default_billing/is_default_shipping and reformats
- Adds an step to create and update of addresses that unsets the previous default shipping/billing address if necessary.
- This creates a behavior in the API where you can always set an address to be default and it will automatically unset the previous one for you.
2024-02-01 12:28:14 +00:00
Sebastian Rindom
a28822e0d4
feat(customer): store addresses ( #6283 )
...
- GET /customers/me/addresses
- POST /customers/me/addresses
- GET /customers/me/addresses/:address_id
- POST /customers/me/addresses/:address_id
- DELETE /customers/me/addresses/:address_id
2024-02-01 10:11:52 +00:00
Sebastian Rindom
7903a15e0f
feat(customer): Add create and retrieve customer from store side ( #6267 )
...
**What**
- GET /store/customers/me
- POST /store/customers
- Workflow for customer account creation
- Authentication middleware on customer routes
2024-01-31 11:58:29 +00:00
Sebastian Rindom
f41877ef61
feat(customer): add customer group customer management ( #6276 )
...
**What**
- GET /admin/customer-groups/:id/customers
- POST /admin/customer-groups/:id/customers/batch
- POST /admin/customer-groups/:id/customers/remove
Workflows
2024-01-31 10:24:22 +00:00
Sebastian Rindom
36ec3ea3aa
feat(customer): admin addresses ( #6235 )
...
**What**
- GET /admin/customers/:id/addresses
- POST /admin/customers/:id/addresses
- POST /admin/customers/:id/addresses/:address_id
- DELETE /admin/customers/:id/addresses/:address_id
2024-01-31 09:55:07 +00:00
Sebastian Rindom
ca0e0631af
feat(customer): add customer group management apis ( #6233 )
...
**What**
```
POST /admin/customer-groups
POST /admin/customer-groups/:id
GET /admin/customer-groups/:id
DELETE /admin/customer-groups/:id
```
- Workflows
2024-01-30 19:37:53 +00:00
Oli Juhl
374b9b1fee
feat(cart): GET /store/carts/:id ( #6262 )
2024-01-30 12:52:54 +01:00
Sebastian Rindom
18ff739a94
feat(customer): admin CRUD endpoints ( #6232 )
...
**What**
- GET /customers/:id
- POST /customers/:id
- DELETE /customers/:id
- POST /customers
Including workflows for each.
2024-01-30 11:43:30 +00:00
Sebastian Rindom
87390704be
feat(customer): list customer ( #6206 )
...
**What**
- GET /admin/customers
- GET /admin/customer-groups
2024-01-29 16:56:39 +00:00
Kasper Fabricius Kristensen
90cff0777f
fix(medusa): add support for order field on GET /admin/orders ( #6258 )
...
**What**
- Adds support for `order` field on `GET /admin/orders`
2024-01-29 16:00:45 +00:00
Philip Korsholm
d1c18a3090
feat(medusa, stock-location, types): Add q and order params to list-stock-locations ( #6197 )
...
**What**
- add `q` and `order` params to list-stock-location endpoint
closes #6189
2024-01-29 09:14:39 +00:00
Frane Polić
3db2f95e65
feat: sales channel module ( #5923 )
2024-01-29 09:47:28 +01:00
Sebastian Rindom
4ad761788b
chore: move v2 api behind ff ( #6213 )
2024-01-25 14:39:22 +00:00
Oli Juhl
489b7effb0
fix(medusa): Support q search in currencies ( #6201 )
...
Closes #6175
2024-01-24 12:31:17 +00:00
Oli Juhl
8ad7539ebc
fix(medusa): Support q search and order in list regions ( #6202 )
2024-01-24 12:52:39 +01:00
Kasper Fabricius Kristensen
d68089b2aa
fix(medusa): Implement listAndCount for UserService and update list endpoint ( #6190 )
2024-01-24 10:41:35 +01:00
Riqwan Thamir
68d8daccd2
feat(medusa,types): added buyget support for modules ( #6159 )
2024-01-23 21:01:44 +01:00
Carlos R. L. Rodrigues
302323916b
feat: Workflow engine modules ( #6128 )
2024-01-23 10:08:08 -03:00
Carlos R. L. Rodrigues
d85fee42ee
chore: use loaded module reference ( #5763 )
2024-01-23 08:31:02 -03:00
Riqwan Thamir
99045848fd
feat(medusa,types,core-flows,utils): added delete endpoints for campaigns and promotions ( #6152 )
...
what:
adds delete endpoints for:
- campaigns (RESOLVES CORE-1686)
- promotions (RESOLVES CORE-1680)
2024-01-22 13:06:49 +00:00
Riqwan Thamir
da5cc4cf7f
feat(core-flows,medusa,utils): promotion and campaign create/update endpoint ( #6130 )
...
what:
- adds create endpoint for promotions including workflows and endpoint (RESOLVES CORE-1678)
- adds update endpoint for promotions including workflows and endpoint (RESOLVES CORE-1679)
- adds create endpoint for campaigns including workflows and endpoint (RESOLVES CORE-1684)
- adds update endpoint for campaigns including workflows and endpoint (RESOLVES CORE-1685)
2024-01-22 11:54:17 +00:00
Riqwan Thamir
af7af73745
feat(medusa,utils): added campaign get endpoints ( #6125 )
...
what:
adds endpoints for the following:
- list endpoint (RESOLVES CORE-1682)
- retrieve endpoint (RESOLVES CORE-1683)
2024-01-19 14:54:40 +00:00
Riqwan Thamir
a12c28b7d5
feat(medusa,types): add promotion list/get endpoint ( #6110 )
...
what:
- adds get promotion endpoint (RESOLVES CORE-1677)
- adds list promotions endpoint (RESOLVES CORE-1676)
- uses new API routes
2024-01-18 16:01:19 +00:00
Carlos R. L. Rodrigues
19bbae61f8
fix(modules-sdk): create workflow returning step transformer ( #6102 )
2024-01-17 09:17:37 -03:00
Adrien de Peretti
47be2ad723
fix(medusa): Order by using joins and pagination ( #5990 )
2024-01-07 13:58:30 +01:00
Frane Polić
6fc6a9de6a
feat(medusa, link-modules): sales channel <> pubkey link ( #5820 )
2024-01-05 14:51:57 +01:00
Frane Polić
fe007d01bd
feat(medusa, link-modules): sales channel <> order link ( #5810 )
2024-01-03 14:07:54 +01:00
Adrien de Peretti
278b7fb203
fix(medusa): Update cart sales channel should not remove all line items ( #5980 )
2024-01-03 14:06:07 +01:00
Frane Polić
76332ca6c1
feat(medusa, link-modules): sales channel <> cart link ( #5459 )
...
* feat: sales channel joiner config
* feat: product sales channel link config, SC list method
* feat: migration
* fix: refactor list SC
* refactor: SC repo api
* chore: changeset
* feat: add dedicated FF
* wip: cart<>sc link and migration
* chore: changeset
* fix: update migration with the cart table constraints
* feat: populate the pivot table
* chore: remove relation from joiner config
* fix: constraint name
* fix: filter out link relations when calling internal services
* feat: product<> sc join entity
* fix: update case
* fix: add FF on in the repository, fix tests
* fix: assign id when FF is on
* fix: target table
* feat: product service - fetch SC with RQ
* feat: admin list products & SC with isolated product domain
* feat: get admin product
* feat: store endpoints
* fix: remove duplicate import
* fix: remove "name" prop
* feat: typeorm entity changes
* feat: pivot table, entity, on cart create changes
* feat: update carts' SC
* feat: cart - getValidatedSalesChannel with RQ
* feat: refactor
* wip: changes to create cart workflow
* fix: remove join table entity due to migrations failing
* fix: product seeder if FF is on
* feat: attach SC handler and test
* fix: env
* feat: workflow compensation, cart service retrieve with RQ
* fix: remote joiner implode map
* chore: update changesets
* fix: remove methods from SC service/repo
* feat: use remote link in handlers
* fix: remove SC service calls
* fix: link params
* fix: migration add constraint to make link upsert pass
* refactor: workflow product handlers to handle remote links
* fix: condition
* fix: use correct method
* fix: build
* wip: update FF
* fix: update FF in the handlers
* chore: migrate to medusav2 FF
* chore: uncomment test
* fix: product factory
* fix: unlinking SC and product
* fix: use module name variable
* refactor: cleanup query definitions
* fix: add constraint
* wip: migrate FF
* fix: comments
* feat: cart entity callbacks, fix tests
* fix: only create SC in test
* wip: services updates, changes to models
* chore: rename prop
* fix: add hook
* fix: address comments
* fix: temp sc filtering
* fix: use RQ to filter by SC
* fix: relations on retrieve
* feat: migration sync data, remove FF
* fix: revert order of queries
* fix: alter migration, relations in service
* fix: revert id
* fix: migrations
* fix: make expand work
* fix: remote link method call
* fix: try making tests work without id in the pivot table
* test: use remote link
* test: relations changes
* fix: preserve channel id column
* fix: seeder and factory
* fix: remove sales_channels from response
* feat: support feature flag arrays
* fix: cover everything with correct FF
* fix: remove verbose
* fix: unit and plugin tests
* chore: comments
* fix: reenable workflow handler, add comments, split cart create workflow tests
* chore: reenable link in the create mehod, update changesets
* fix: address feedback
* fix: revert migration
* fix: change the migration to follow link module
* fix: migration syntax
* fix: merge conflicts
* fix: typo
* feat: remove store sales channel foreign key
* fix: merge migrations
* fix: FF keys
* refactor: cart service
* refactor: FF missing key
* fix: comments
* fix: address PR comments
* fix: new changesets
* fix: revert flag router changes
* chore: refactor `isFeatureEnabled`
---------
Co-authored-by: Carlos R. L. Rodrigues <rodrigolr@gmail.com >
Co-authored-by: Riqwan Thamir <rmthamir@gmail.com >
2023-12-22 13:05:36 +01:00
cyf0e
b5a07cfcf4
fix(medusa): add payments default relation to getTotalsRelations ( #5875 )
...
* bugfix: Add payments relation to getTotalsRelations
* update order test to expect correct paid_total and refundable_amount
2023-12-22 08:13:39 +01:00
Philip Korsholm
c1c470e6b8
fix(medusa, pricing, types): pass dates as Date-objects rather than strings to the pricing module ( #5768 )
...
* init
* remove date string validator;
* add transformOptionalDate transformer to api
* move type conversion to the datalayer
* fix final module integration test
* update arrow-function
* make string optional
* move work to utils
* make check for value exists
* move util back to pricng
* change utils
* refactor get-iso-string
* fix build
* flip transform condition
* add null check for isDate
* feat(pricing): Separate Pricing Module internal types from `@medusajs/types` (#5777 )
* create types for pricing repositories
* create RepositoryTypes input
* add service types
* use models for repository types
* fix build
* update types to match interface types
* add aliases
* types instead of moduletypes
* move repository to types for pricing module
* add changeset
* fix merge error
* fix conflict
* fix build
* re-add validation of dates in updatePriceLists_
2023-12-21 08:29:41 +01:00
Adrien de Peretti
9cc787cac4
feat(workflows-sdk): Configurable retries upon step creation ( #5728 )
...
**What**
- Allow to create step that can be configured to have a max retry
- Step end retry mechanism on permanent failure
Also added an API to override a step configuration from within the createWorkflow
```ts
const step = createStep({ name: "step", maxRetries: 3 }, async (_, context) => {
return new StepResponse({ output: "output" })
})
const workflow = createWorkflow("workflow", function () {
const res = step().config({ maxRetries: 5 }) // This will override the original maxRetries of 3
})
```
**NOTE**
We can maybe find another name than config on the step workflow data to override the step config.
2023-12-19 09:38:27 +00:00
Frane Polić
1d7888afca
feat(medusa, link-modules): sales channel <> product module link ( #5450 )
...
* feat: sales channel joiner config
* feat: product sales channel link config, SC list method
* feat: migration
* fix: refactor list SC
* refactor: SC repo api
* chore: changeset
* feat: add dedicated FF
* feat: product<> sc join entity
* fix: update case
* fix: add FF on in the repository, fix tests
* fix: assign id when FF is on
* fix: target table
* feat: product service - fetch SC with RQ
* feat: admin list products & SC with isolated product domain
* feat: get admin product
* feat: store endpoints
* fix: remove duplicate import
* fix: remove "name" prop
* feat: refactor
* fix: product seeder if FF is on
* fix: env
* refactor: workflow product handlers to handle remote links
* fix: condition
* fix: use correct method
* fix: build
* wip: update FF
* fix: update FF in the handlers
* chore: migrate to medusav2 FF
* chore: uncomment test
* fix: product factory
* fix: unlinking SC and product
* fix: use module name variable
* refactor: cleanup query definitions
* fix: add constraint
* chore: rename prop
* fix: add hook
* fix: address comments
* fix: temp sc filtering
* fix: use RQ to filter by SC
* fix: add sc to filter to list
---------
Co-authored-by: Riqwan Thamir <rmthamir@gmail.com >
2023-12-15 13:43:00 +01:00
Philip Korsholm
56b07ed0cf
feat(medusa): Update shipping option price type ( #5895 )
...
**What**
- allow updates to shipping option price type
- Clean up the use of strings in the api validation
Fixes #5824
2023-12-15 10:12:43 +00:00
Riqwan Thamir
2d79eeeecc
feat(medusa): add currency to region responses ( #5857 )
...
Resolves https://github.com/medusajs/medusa/issues/5837
2023-12-14 15:52:54 +00:00
Riqwan Thamir
07107f3565
feat(orchestration,core-flows,medusa,product,types,utils): product import/export uses workflows ( #5811 )
2023-12-12 12:09:25 +00:00
Riqwan Thamir
079f0da83f
feat(core-flows,pricing,medusa,pricing,types,utils): Price List Prices can have their own rules ( #5752 )
...
**What**
- Add price-rules for prices in price-lists
- make rules object optional when creating prices
**Why**
- more price granularity
Co-authored-by: Philip Korsholm <88927411+pKorsholm@users.noreply.github.com >
2023-12-12 08:20:21 +00:00
Adrien de Peretti
6975eacb33
feat(medusa): Improve add line item to cart perf and transaction management + clustering start command ( #5701 )
2023-12-06 08:53:35 +01:00
Oli Juhl
428331a653
feat(medusa): Respond with order when cart is already completed ( #5766 )
2023-12-01 09:17:12 +01:00
Philip Korsholm
e4bfa6c88a
fix(medusa): throw proper error when product doesn't exist w/ key header ( #5745 )
...
**What**
- ensure that an error is raised properly if the requested product doesn't exist and a publishable-key header is set
**Why**
- previously endpoints would hang if the product didn't exist and requests would time out
closes #5724
2023-11-28 10:24:50 +00:00
Adrien de Peretti
ddbeed4ea6
chore(workflows, core-flows): Split workflows tooling and definitions ( #5705 )
2023-11-24 13:55:48 +00:00
Riqwan Thamir
fc1ef29ed9
fix(medusa,pricing,types): rules only gets updated/deleted upon passing an explicit object ( #5711 )
2023-11-24 13:54:23 +00:00
Philip Korsholm
a39ce125cc
fix(product, types, workflows): Update product variant workflow ( #5668 )
...
**What**
- Fix issues with update-variant workflow:
- other variants than the updated variant are no longer removed
- options are updated properly
Co-authored-by: Riqwan Thamir <5105988+riqwan@users.noreply.github.com >
2023-11-23 14:35:01 +00:00
Adrien de Peretti
010560fd2a
fix(workflows): compensation handling ( #5691 )
2023-11-23 09:11:03 +00:00
Carlos R. L. Rodrigues
9f9db39698
feat(workflows): Workflow DX ( #5607 )
2023-11-22 17:23:39 +00:00
Philip Korsholm
dc5750dd66
feat(medusa,types,workflows,utils,product): PricingModule Integration of PriceLists into Core ( #5536 )
2023-11-21 17:42:37 +00:00
Riqwan Thamir
cedab58339
feat(workflows,medusa,utils): add medusa v2 feature flag ( #5603 )
...
* chore: add medusa v2 feature flag
* chore: cleanup more FF
* chore: cleanup workflows FF
* chore: add comments on broken specs
* chore: added check for package registration
* chore: reenable workflows FF for create order workflow
* chore: disable FF on test cli db
* chore: hide loader validation behind FF
* chore: use medusa v2 enabled
* chore: register feature flag router in use-db
* chore: change to minro
2023-11-13 16:18:05 +01:00
Adrien de Peretti
f88d75b0a7
feat(product, pricing, utils): Transaction issues and reference issues ( #5533 )
...
* feat(product, pricing, utils): Transaction issues and reference issues
* fixes decorators
* cleanup
* fix product module upsert
* fix missing active manager
* increase timeout
* revert package.json
* WIP
* try another node version based on findings with memory issues with jest introduced after 16.11 but fixed in 21
* re add bail
* fix variant options
* chore: bulk create pricing
* chore: workflow bulk
* Create big-chefs-dream.md
* fix missing update for upserty
* Add integration tests for product options upsert
* rm unnecessary return
* fix product prices workflow issue
* cleanup
* fix flag
* fix model
---------
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 >
Co-authored-by: Riqwan Thamir <rmthamir@gmail.com >
2023-11-06 12:24:29 +01:00
Adrien de Peretti
154c9b43bd
feat(medusa, modules-sdk, types, utils): Re work modules loading and remove legacy functions ( #5496 )
2023-11-02 17:59:13 +01:00