Commit Graph

1621 Commits

Author SHA1 Message Date
Sebastian Rindom
af80e0fd2e fix: make prices optional param when updating a variant (#2155)
**Why**
- It should be possible to update variant props without having to send the prices array with every update
2022-09-06 13:49:18 +00:00
olivermrbl
70139d0bbb chore(release): Publish 2022-09-06 09:50:00 +02:00
olivermrbl
5ea1d98aa7 Merge branch 'master' into develop 2022-09-06 09:44:11 +02:00
Oliver Windall Juhl
e707b46499 fix(medusa-plugin-meilisearch): Update meilisearch dependency (#2140) 2022-09-05 18:15:09 +02:00
Oliver Windall Juhl
ad717b9533 chore(medusa): Remove deprecated dependency @hapi/joi (#2069) 2022-09-05 16:03:06 +02:00
Frane Polić
ba6416f095 feat(medusa): Convert SwapService to TypeScript (#2000)
**What**
- refactor swap service to typescript
- reimplement legacy methods
- use enums instead of magic strings

RESOLVES CORE-396

Co-authored-by: Oliver Windall Juhl <59018053+olivermrbl@users.noreply.github.com>
2022-09-05 13:37:47 +00:00
Shahed Nasser
4961aece1c docs: Add request and error examples (#2109) 2022-09-04 20:08:05 +02:00
Frane Polić
546a963f7b feat: import strategy - sales channels support (#2124)
**What**
- add support for specifying sales channel with import strategy
- additional:
  - refactor SC service to use `retrieve_` pattern
  - fix: pass arguments from `startServerWithEnvironment` to setup server
  - fix: minio undefined resolve/reject calls
  - fix: csv parser - detect missing columns from schema only if the column is required

**How**
- extending schema to expect sales channels columns in an import CSV file

RESOLVES CORE-304
2022-09-02 11:28:43 +00:00
Oliver Windall Juhl
d14a0398fb fix(medusa): Delete ProductOption on Product without Variants (#1846)
**What**
Solves admin issue [166](https://github.com/medusajs/admin/issues/166)

Deleting a product option on a product without variants currently throws, because we are cleaning up variant options as well.  

**How**
Only do variant clean up, if product has variants
2022-08-29 18:51:45 +00:00
olivermrbl
37056b8066 Merge branch 'master' into develop 2022-08-29 18:51:34 +02:00
olivermrbl
2e1f5bffa0 chore(release): Publish 2022-08-29 18:39:07 +02:00
olivermrbl
b1e2830fb2 Merge branch 'master' into develop 2022-08-29 15:47:17 +02:00
Carlos R. L. Rodrigues
846ae637e2 fix(medusa): Hot reloading on Windows (#2105) 2022-08-29 15:46:15 +02:00
Shahed Nasser
076b41bb89 fix(docs): API reference bugs (#2119)
* fixed shipping method tax line schema name

* added dry run option to build openapi script

* fixed summary of endpoints

* fixed title of endpoint
2022-08-29 14:25:17 +03:00
olivermrbl
3a44dd5726 Merge branch 'master' into develop 2022-08-26 13:17:55 +02:00
Frane Polić
03221c4a19 feat: product import strategy (#1706)
* init: copy PI files

* feat: add subscribers, refactor strategies folder

* wip: strategies integration tests package

* fix: rename

* wip: use redis

* wip: use redis deps, redis setup in local tests

* fix: naming collision, medusa config

* fix: typing, update apply changes for new event ordering and reimplement interface

* feat: make redis container run in integration tests

* fix: missing yarn lock

* feat: redis setup v2

* fix: setup server imports

* fix: a lot of integration issues

* fix: a lot of integration issues v2, transform tags, fix `ops` object parsing

* wip: parsing product options

* feat: creating product and variants works, processing product/variant options, update schema

* fix: query keys, logic for finding existing variant

* fix: types

* feat: update product variant's options

* feat: parse MA records

* feat: creating/updating MA records, region detection, error handling

* feat: throw an error when creating an MA for nonexistent region

* refactor: remove unused methods

* refactor: use provided ids to track records, extract a couple of methods

* refactor: remove unused method

* refactor/wip: add initial comment for main methods

* refactor: replace usage of RedisJSON functionality with basic k/v api

* feat: async progress report

* types: define more precise types, cleanup

* feat: error handling

* feat: unit testing preprocessing

* feat: integration testing for CI, fix legacy bug where user is unable to create a variant if regional price is also sent as payload, add csv for integration tests

* fix: error throw for logs

* feat: add product endpoint snap

* refactor: remove log

* feat: add snaps, rebase

* refactor: add comments

* feat: snap update

* refactor: typo

* refactor: change error handler

* feat: Redis cleanup after the job is done

* testing :fix product unit test, remove integration snap, add inline object matcher

* testing: fix obsolete snaps

* refactor: update comments

* fix: rebase issue

* fix: rebase issue v2, remove log form an integration test

* fix: try reverting setup server

* fix: insert variants test

* refactor: don't pass tx manager, refactor methods

* refactor: don't use regionRepo, add `retrieveByName` to region repo

* refactor: don't use productRepo

* refactor: don't use `productVariantRepo`

* refactor: remove repo mocks from unit tests

* fix: product import unit tests

* feat: file cleanup on finalize, kill test logs

* wip: use files to persist ops instead of redis, move strategy class into `batch-job` folder

* fix: minio delete method, add file cleanup method to import, fix promise coordination

* fix: replace redis methods

* feat: store import ops as a file instead of Redis

* feat: test cleanup

* fix: change unit tests after Redis logic removal

* feat: use `results` for progress reporting, add `stat_descriptors` info after preprocessing, remove redis mentions

* feat: extract to other files, use directory from property, fix strategy loader to allow other files in `strategies` directory

* feat: fix instance progress counter

* fix: mock services types

* fix: update snaps

* fix: error handling stream, fix test file service name generation

* fix: remove dir with tmp files after testing

* fix: new yarn.lock after rebase

* fix: remove log, change object shape

* fix: add DI types

* refactor: remove container as a csv parser dep

* fix: remove seeder, change typings

* refactor: reimplement `retrieveByName` in the region service

* fix: unit tests typings

* fix: remove ts-ignore, complete typings for csv parser validators

* fix: don't keep track of progress since it is redundant and only keep track of `advancement_count`

* fix: return of the batch job seeder

* fix: update find region by name method

* fix: update types for service typings

* fix: update redis type usage

* fix: update unit tests file

* fix: unit tests

* fix: remove redis from integration test

* feat: refactor region retrieval by name

* feat: refactor product option update

* fix: remove repo import

* fix: return redis in test

* fix: handle stream error

* fix: tmp data cleanup

Co-authored-by: fPolic <frane@medusajs.com>
2022-08-25 22:16:51 +02:00
Shahed Nasser
501bda6aae fix: incorrect exit status of OAS comments test (#2099)
* fix exit status

* fix oas comments
2022-08-25 18:04:15 +03:00
olivermrbl
384c8efb8b chore(release): Publish 2022-08-25 15:51:21 +02:00
Sebastian Rindom
9e0cb12120 fix(medusa): remove unique cart on payments to allow canceled payments to exist (#1854)
Fixes CORE-321

Co-authored-by: Adrien de Peretti <25098370+adrien2p@users.noreply.github.com>
Co-authored-by: Oliver Windall Juhl <59018053+olivermrbl@users.noreply.github.com>
2022-08-24 14:25:40 +00:00
Oliver Windall Juhl
5ac7f08e4d fix(medusa): Incorrect swap difference due (#2086)
### What
Creating a swap on an order with a discount leads to an incorrect difference due. 

**Scenario**
- Create a store with minimum 2 products (Prod A, Prod B)
- Create a discount that only works for Prod A
- Create an order for Prod A with the discount applied
- Create a swap between Prod A and Prod B

**Expected outcome**
We would expect the difference_due amount to come out to the sum of:
- -1 * (price of prod a - discount applied to prod a) 
- price of prod b

**Actual outcome**
Instead the discount is applied across both products when calculating difference due. This results in a total that is instead the sum of:
- -1 * (price of prod a - discount applied to prod a)
- price of prod b - discount on prod b ignoring the condition

### How
Adds `line_item.adjustments` to relations in cart retrieval prior to setting the difference_due to car total

Fixes CORE-361
2022-08-24 14:07:44 +00:00
olivermrbl
b7b0a7d3a4 Merge branch 'master' into develop 2022-08-24 12:30:33 +02:00
Frane Polić
bda83a84bc feat(medusa): Convert RegionService to TypeScript (#1914) 2022-08-22 19:59:02 +02:00
Philip Korsholm
80e02130b4 feat(medusa): Convert SystemPaymentProvider to TypeScript (#1988)
**What**
- convert system payment provider to typescript

Fixes CORE-397

Co-authored-by: Oliver Windall Juhl <59018053+olivermrbl@users.noreply.github.com>
2022-08-22 17:37:25 +00:00
Philip Korsholm
c97ccd3fb5 feat(medusa): Convert FulfillmentService to TypeScript (#1962) 2022-08-22 19:19:41 +02:00
Kevin Antonio Rateni Iatauro
8cbebef403 feat(medusa-js): Add deleteSession endpoint (#1234) 2022-08-21 14:08:51 +02:00
Philip Korsholm
a54dc68db7 feat(medusa): Filtering Customer Orders (#975) 2022-08-21 13:26:25 +02:00
endigo
8c4be33536 feat(medusa): Add Mongolian currency tugrug (#2067) 2022-08-21 12:12:40 +02:00
Adrien de Peretti
844d7d1f5f feat(medusa): Migrate Return service to ts (#1926) 2022-08-19 17:26:12 +02:00
Oliver Windall Juhl
fb1105b9c0 fix(medusa-payment-stripe): Add item adjustments relation in CartSubcriber (#2052) 2022-08-16 19:36:57 +02:00
Oliver Windall Juhl
0ba63c70b0 fix(medusa): Complete cart with 100% discount (#2032)
**What**
Naive fix to allow carts with 100% discount to be completed.

**Why**
Discount total is wrongly calculated if `items` and `items.adjustments` is not included in relations upon retrieving the cart.

**Thought**
This is yet another example of why we need to rethink and refactor totals computation to not depend on what is provided by the user.
2022-08-16 09:21:01 +00:00
Adrien de Peretti
f1c2c6c68b feat(medusa): Implement the SC migration scripts (#2037)
**What**
Migrate the existing products to the default sales channel

FIXES CORE-434
2022-08-16 08:47:23 +00:00
Sebastian Rindom
15a5b029ae fix(medusa): join tracking links to all fulfillments in admin/orders (#2045)
Fixes https://github.com/medusajs/medusa/issues/2042
2022-08-15 11:23:36 +00:00
Adrien de Peretti
79acc38a57 feat(medusa): Simplify the transaction base service (#2007)
**What**
Simplify the transaction base service.

**How**

In fact, it does not need to be template and reduce the extensibility as the type is internally enforce. Now, the type is deduced by this which can be any derived class.
2022-08-12 09:17:39 +00:00
Adrien de Peretti
cbe2b7f687 chore(medusa): Remove intepestive services re instanciation in loop (#2036)
* chore(medusa): Renove intepestive services re instanciation in loop

* test(medusa): Fix missing deps

* fix(medusa): Missing await
2022-08-11 22:18:11 +02:00
Adrien de Peretti
c31290c911 feat(medusa): Refactor undefined check into a single util (#2024) 2022-08-10 17:45:48 +02:00
Adrien de Peretti
bd031ef7ad feat(medusa:) Convert PaymentProvider + PaymentProviderInterface to TS + (#1773)
* feat(payments): Refactor core Payment related

* fix(medusa): typings

* test(unit): fix suite

* test(unit): fix suite

* feat(medusa): Improve payment provider container typings

* fix(medusa): typings

* styles(medusa): renove comments

* feat(medusa): cleanup

* feat(medusa): Add uniq constraint on payment session and idem key on create-payment-session end point

* fix(medusa): migration

* fix(medusa): create payment session

* feat(medusa): cleanup
2022-08-10 17:26:16 +02:00
Adrien de Peretti
987ce2ab6d chore(medusa): Feature flag loader simplify, deduplicate and increase readability (#2025) 2022-08-10 13:02:26 +02:00
Oliver Windall Juhl
900260c5b9 feat(medusa,medusa-telemetry): Add telemetry on feature flags (#2017) 2022-08-09 16:27:12 +02:00
Adrien de Peretti
aaebb38eae feat(medusa): Convert IdempotencyKeyService to TypeScript (#1995)
* feat(medusa): Migrate the idempotency key service to ts + fix

* feat(medusa): Finalise idempotency migration

* Create late-owls-pump.md

* feat(medusa): Polish

* feat(medusa): Add case to the error handler

* feat(medusa): Add case to the error handler

Co-authored-by: olivermrbl <oliver@mrbltech.com>
2022-08-09 08:08:07 +02:00
Adrien de Peretti
4b663cca3a feat(medusa): Use transactions in CartCompletionStrategy (#1968) 2022-08-08 21:11:34 +02:00
Philip Korsholm
152934f8b0 feat(medusa): Convert ShippingProfileService to TypeScript (#1963) 2022-08-08 16:51:55 +02:00
Shahed Nasser
cef081d2f2 docs: Change :id to {id} in OAS comments (#2015) 2022-08-08 16:35:13 +02:00
chemicalkosek
40ae53567a feat(medusa-payment-stripe): Add support for Przelewy24 and Blik (#1982) 2022-08-08 13:02:33 +02:00
Richard Ward
2a723dcd4f feat(medusa-react): Add Collection batch (remove, add) endpoints (#1959) 2022-08-08 12:58:23 +02:00
Richard Ward
a88bf3c76e feat(medusa-js): Add Collection batch (remove, add) endpoints (#1958) 2022-08-07 13:22:36 +02:00
Philip Korsholm
11fab121f4 feat(medusa): Convert OauthService to TypeScript (#1983) 2022-08-07 13:15:20 +02:00
Philip Korsholm
42ed209518 feat(medusa): Convert CollectionService to TypeScript (#1976) 2022-08-07 12:06:36 +02:00
Shahed Nasser
73383cc466 chore(docs): Refactor API Reference (#1883) 2022-08-05 14:06:12 +02:00
Shahed Nasser
02d5c1da88 docs: update Typedoc and regenerate references (#1994)
* generated new services reference

* changed from automatic push to automated pull request

* updated typedoc, regenerated JS Client reference

* regenerated the reference after updating typedoc

* added action for js client
2022-08-04 17:29:52 +03:00
olivermrbl
6663a6290b chore(release): Publish 2022-08-04 14:12:54 +02:00