Commit Graph

839 Commits

Author SHA1 Message Date
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
Stevche Radevski 07e5c17f86 chore: Remove medusa interfaces package (#7347) 2024-05-16 15:06:21 +02:00
Stevche Radevski ee924b1b28 feat: Add a simple configurable notifications subscriber (#7331)
* feat: Add a simple configurable notifications subscriber that is configurable

* Proposal on awaiting all subscribers to run

* fix: Clean up wait subscribers util and notifications test

---------

Co-authored-by: adrien2p <adrien.deperetti@gmail.com>
2024-05-16 13:36:09 +02:00
Riqwan Thamir b78703b8c6 chore: fix variant pricing validation for carts (#7344) 2024-05-16 09:03:37 +02:00
Kasper Fabricius Kristensen 490586f566 feat(medusa,dashboard,admin-sdk): Run admin dashboard from Medusa instance (#7330) 2024-05-15 19:52:09 +02:00
Carlos R. L. Rodrigues 7c4f4d7388 feat(payment): update payment collection status (#7335) 2024-05-15 15:11:40 +00:00
Carlos R. L. Rodrigues 70fd355e46 chore(order): link order and payment collection (#7334) 2024-05-14 20:37:27 +00:00
Stevche Radevski d680c7ee4c Remove v1-related code from medusa app (#7326)
* chore: Remove unused validations and utilities

* chore: Remove all resources that are not being loaded

* chore: Remove unused dependencies, typeorm related code and fix tests

* chore: Use createAdminUser in all module tests
2024-05-14 13:21:30 +02:00
Oli Juhl 5b26f5f2cf feat: Add publishable key scopes middleware (#7301)
**What**

Add pub key + sales channel middlewares to the store carts API
- Assign sales channel associated with pub key, if sales channel is not passed in request
  - Throw if pub key has multiple associated sales channels
- Throw if sales channel ID in payload is not associated with publishable API key in header
2024-05-13 16:17:52 +00:00
Adrien de Peretti 63623422fe chore(): Autoload module resources (#7291)
**What**
- automatically build and consume connection and container loader if not exported by the module
- therefore load the services and repositories automatically, including baseRepository
- automatically build run and revert migrations if not provided
- cleaup modules to remove extra unnecessary bits and pieces
- remove the `initializeFactory` in favor of using `medusaApp`

Should drastically improve the module building DX by removing a lot of boilerplate to handle by the user, that plus the base entity should simplify quite a lot the flow cc @shahednasser 

**Note**
I had to choose a way to identify connection and container loader from the exported loader from the module. I decided to go with named function `connectionLoader` and `containerLoader`, also, now the factories will return named function so if the user use the factories we are providing to build those loaders, the function will also be named and identified
2024-05-13 12:12:36 +00:00
Stevche Radevski 79758c46b6 feat: Add support for sendgrid and logger notification providers (#7290)
* feat: Add support for sendgrid and logger notification providers

* fix: changes based on PR review
2024-05-11 17:40:03 +02:00
Riqwan Thamir 9a14aeebcf feat(core-flows,types,medusa): API to add promotions to campaign (#7277)
what:

- adds an API to add promotions to campaign
- reworks module to perform atomic actions
2024-05-10 07:53:56 +00:00
Oli Juhl 948458a43d chore: Re-introduce CLI test (#7268) 2024-05-08 11:11:06 +02:00
Adrien de Peretti 71f4f46cb9 chore(medusa): cleanup medusa package (#7206) 2024-05-07 12:48:49 +02:00
Riqwan Thamir 0430e63b0b feat(core-flows,typers,utils,medusa): add payment auth step to complete cart workflow - [complete cart part 3] (#7248)
* chore: authorize payment sessions for cart

* chore: add spec for cart returns

* fix: Correctly select fields for cart

* chore: fix specs + address comments

---------

Co-authored-by: Stevche Radevski <sradevski@live.com>
Co-authored-by: Oli Juhl <59018053+olivermrbl@users.noreply.github.com>
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>
2024-05-06 23:34:56 +02:00
Carlos R. L. Rodrigues 5228b14ca9 feat(medusa): complete cart create reservation (#7250) 2024-05-06 14:36:55 -03:00
Stevche Radevski 4e12168dbd feat: Consolidate payment functions and handle sessions for storefront (#7231) 2024-05-06 13:14:40 +00:00
Oli Juhl cf9605fe6f feat(order): Add display_id to order table (#7242)
Co-authored-by: Carlos R. L. Rodrigues <37986729+carlos-r-l-rodrigues@users.noreply.github.com>
2024-05-05 19:43:13 +02:00
Carlos R. L. Rodrigues aba194de9a chore: complete cart part 2 (#7227) 2024-05-05 10:35:09 -03:00
Oli Juhl 2f7b53488d fix: Accept filters in softDelete + fulfillment location clean-up (#7198) 2024-05-03 16:32:07 +00:00
Oli Juhl 1366e2efad fix: Retrieve ancestors and/or descendants on product categories (#7226) 2024-05-03 18:09:04 +02:00
Adrien de Peretti 224ebb2154 chore: remove legacy plugins (#7224)
* chore(): remove more legacy plugins

* chore(): remove more legacy plugins

* rm plugins
2024-05-03 14:47:16 +02:00
Riqwan Thamir f129415650 feat(medusa,core-flows): complete cart [part-1] (#7201)
what:

- adds a very basic complete cart endpoint that creates an order
- the complete cart workflow currently does the following:
  - create tax lines
  - create order
2024-05-02 22:24:50 +00:00
Oli Juhl e78362c000 chore: Remove legacy MWH modules (#7213)
* chore: Remove legacy MWH modules

* chore: Add stock-location deps
2024-05-02 20:07:42 +02:00
Carlos R. L. Rodrigues 9d3f495314 feat(fulfillment): shipping options context field (#7169) 2024-05-02 09:59:14 -03:00
Adrien de Peretti 25b0ccc60a fix(fulfillment): Update shipping options rules (#7204)
**What**
Fix the update shipping options to apply the rules update properly and remove unused code
2024-05-02 12:30:13 +00:00
Stevche Radevski 6487931f54 fix: Add shipping options for cart fix (#7205) 2024-05-02 10:33:58 +00:00
Stevche Radevski d930d88369 fix: Ensure passed Id filters get applied on top of maybe link filter (#7182) 2024-05-01 11:25:24 +02:00
Stevche Radevski ec37576dd0 feat: Add collection and category endpoints to store (#7155)
* feat: Add collection endpoints to store

* feat: Add category store endpoints
2024-05-01 09:54:51 +02:00
Adrien de Peretti e26cda4b6a feat(medusa, core-flows, types): Allow to update the rules from a shipping options (#7175)
**What**
Add support for the following operations
- update rules from the update shipping options end point
- update rules from the batch update end point

Also added some improvements, that can be revisited later
- Add a rule value normalizer, jsonb will transform the input value to a [primitive](https://www.postgresql.org/docs/current/datatype-json.html#JSON-TYPE-MAPPING-TABLE) when possible meaning that passing `"true"` will result in storing `true` and not the string. The normalizer takes care of that
2024-04-30 16:45:17 +00:00
Riqwan Thamir efa3308d78 feat(medusa): add middleware filters + scope products (#7178)
* chore: add middleware filters + scope products

* chore: fix spec + add changeset

* chore: add internal category to list test
2024-04-30 16:59:43 +02:00
Riqwan Thamir 11517f0faf feat(medusa,types): added store apis for products (#7144)
what:

- adds products list api
- adds products retrieve api

RESOLVES CORE-2016
2024-04-29 15:14:41 +00:00
Stevche Radevski 32c2a9d76b feat: Add missing endpoints and normalize customer and currency endpoints for storefront (#7160) 2024-04-29 16:15:05 +02:00
Adrien de Peretti 08a9297f76 feat(medusa): Remove require id from update shipping options validator (#7166)
* feat(medusa): Remove require id from update shipping options validator

* update type apply

* Create great-stingrays-clap.md
2024-04-29 11:35:40 +02:00
Riqwan Thamir d2393f004e feat(core-flows, medusa): add shipping methods to cart API (#7150)
* feat(core-flows, medusa): add shipping methods to cart API

* chore: change id to option_id

* chore: use list listShippingOptionsForContext instead of validateShippingOption

* chore: remove comment

* chore: add refresh shipping methods step

* chore: set cart step

* chore: update all workflows to refresh shipping methods

* chore: add tests + cleanup
2024-04-29 09:25:23 +02:00
Carlos R. L. Rodrigues 4b57c5d286 feat(modules-sdk): remote query context filter (#7153)
What:

- Remote query now handles `context` keywork in the arguments to forward it as a filter to the method `list`
- Pricing module `list` method returning `calculated_price` if requested as a field
2024-04-26 10:20:42 +00:00
Stevche Radevski aef222278b fix: Corrections to the store region endpoint for v2 (#7152) 2024-04-26 08:36:37 +00:00
Stevche Radevski f03a822253 feat: Add support for search to all endpoints (#7149)
* feat: Add search capability to api keys

* feat: Add support for searching to currency and customer endpoints

* fix: Clean up product search filters

* feat: Add search support to regions

* feat: Add search support to sales channels

* feat: Add search support to store module

* feat: Add search support to user module

* fix: Clean up inventory search

* feat: Add search support for payments

* fix: Add searchable attributes to stock location models

* feat: Add search support to tax

* feat: Add search support to promotions

* feat: Add search support for pricing, filtering cleanup

* fix: Further cleanups around search
2024-04-25 17:36:59 +02:00
Carlos R. L. Rodrigues d02905cefa feat(order): bundled actions (#7133) 2024-04-25 07:06:23 -03:00
Philip Korsholm e4898fb00d feat(admin-next, inventory-next, medusa, types): Add admin reservations flow (#7080)
* add reservation endpoints

* add changeset

* initial

* add reservations table

* add edit-item modal

* udpate inventory item attributes

* manage locations skeleton

* add combi batch endpoint

* cleanup

* fix manage locations

* add adjust inventory

* prep for pr

* minor fixes to region domain and api (#7042)

* initial reservation

* init

* update reservation

* create reservation

* polishing

* minor fix

* prep for pr

* prep for pr

* polishing

* inventory items reservations

* Update packages/admin-next/dashboard/src/v2-routes/reservations/reservation-list/components/reservation-list-table/reservation-list-table.tsx

Co-authored-by: Frane Polić <16856471+fPolic@users.noreply.github.com>

* fix feedback

* rename to ispending

---------

Co-authored-by: Kasper Fabricius Kristensen <45367945+kasperkristensen@users.noreply.github.com>
Co-authored-by: Frane Polić <16856471+fPolic@users.noreply.github.com>
2024-04-25 10:11:29 +02:00
Stevche Radevski f341265f42 feat: Add s3-compatible plugin for the file module (#7143) 2024-04-25 09:06:47 +02:00
Stevche Radevski 614d659a59 feat: Add local file provider and wire everything up in the file module (#7134) 2024-04-24 10:59:58 +02:00
Oli Juhl 10e120062b feat: V2 batch update products in categories (#7125)
* wip

* wip

* fix: batch category update

* update tet

* fix type

---------

Co-authored-by: Stevche Radevski <sradevski@live.com>
2024-04-23 17:17:25 +02:00
Riqwan Thamir 93ef94cad3 feat(medusa,types): create promotion flows (#7029)
* chore: create promotion phase

* chore: fix specs + minor ui changes

* chore: minor fixes

* chore: added changeset

* address pr reviews

* chore: fix spec

* Update packages/admin-next/dashboard/src/v2-routes/promotions/common/edit-rules/edit-rules.tsx

Co-authored-by: Frane Polić <16856471+fPolic@users.noreply.github.com>

* chore: fix specs

---------

Co-authored-by: Frane Polić <16856471+fPolic@users.noreply.github.com>
2024-04-23 12:08:39 +02:00
Stevche Radevski 9e3556686b fix: Standardize remaining batch methods and update FE calls (#7122) 2024-04-23 09:12:38 +00:00
Riqwan Thamir 18f3aacee6 feat(core-flows,medusa,types): fulfillment API: create (#7101)
what:

- adds fulfillment create API

RESOLVES CORE-1962
2024-04-23 08:35:44 +00:00
Riqwan Thamir 38c971f111 feat(medusa,types): add fulfillment provider list api (#7124)
* feat(medusa,types): add fulfillment provider list api

* chore: remove timestamps
2024-04-22 19:35:33 +02:00
Stevche Radevski 0df523594f feat: Convert several batch methods to the standardized format (#7116) 2024-04-22 16:35:10 +02:00
Oli Juhl 0eb68541b8 fix: Resume workflow execution (#7103)
Supercedes #7051 – if OK, I'll move the base of this PR to `develop` and we can run reviews only of this one.

**What**
- Gracefully close BullMQ Worker in Redis Event Bus and Redis Workflow Engine (by @edast, @sradevski)
- Register workflows before MedusaApp is loaded*
- Introduce `onApplicationPrepareShutdown`**
- Refactor plugin resolving for reusability purposes

*We now register workflows before modules are loaded to ensure modules can run workflows as part of bootstrapping. E.g. the Redis Workflow Engine resumes workflows when it starts, which has until this change failed, because the workflows were not registered yet.

**We introduce a new hook to prepare resources for an application shutdown. E.g. closing the BullMQ worker as a preparatory step to closing the BullMQ queue. The worker will continue to process jobs while the queue is still open to receive new jobs (without processing them). 

Co-authored-by: Stevche Radevski <4820812+sradevski@users.noreply.github.com>
Co-authored-by: Darius <618221+edast@users.noreply.github.com>
Co-authored-by: Carlos R. L. Rodrigues <37986729+carlos-r-l-rodrigues@users.noreply.github.com>
2024-04-22 12:32:50 +00:00
Oli Juhl 67a21c3e45 feat: Update product category (#7092)
* feat: Update product category

* Disable V2 FF in product category tes

* clean up
2024-04-22 12:30:27 +02:00