Philip Korsholm
19f35ba6aa
Feat(medusa, medusa-js, medusa-react): Include sales channels in related queries as an optional expand parameter ( #1816 )
...
**What**
- Add `transformQuery` to get endpoints for product, order and cart
- ensure that the default relations (when getting a singular entity) includes sales channels when enabled
- Add `EmptyQueryParams` class in common types to prevent query parameters while using `transformQuery`
- update product-, order- and cartFactory to include sales channels if provided
- remove `packages/medusa/src/controllers/products/admin-list-products.ts`
**Testing**
- expands sales channel for single order
- expands sales channels for orders with expand parameter
- returns single product with sales channel
- expands sales channels for products with expand parameter
- returns cart with sales channel for single cart
Fixes CORE-293
Co-authored-by: Sebastian Rindom <7554214+srindom@users.noreply.github.com >
Co-authored-by: Adrien de Peretti <25098370+adrien2p@users.noreply.github.com >
2022-07-11 16:45:01 +00:00
Philip Korsholm
41681b45b1
Feat(medusa): implement feature flags ( #1768 )
...
* feat: add feature flag loading in projects
* fix: make feature flag consume itself
* fix: rename container registration to featureFlagRouter
* fix: refactor
* behavioral feature flags
* add environment to server
* limit "useTemplateDb" to non feature flagged migrations
* filter migrations and entities according to those which are enabled in the environment
* run only migrations that are enabled when running 'medusa migrations run'
* add logging to the featureflag loader
* initial implementation of featureFlagEntity
* column descriptors
* initial startServerWithEnv (to be refactored)
* update commands
* final touches
* update loaders to fix unit tests
* enable all batch job tests
* update seed method
* add api test capabilities
* revert batch job test
* revert formatting changes
* pr feedback
* pr feedback
* remove unused imports
* rename feature flag decorators
* pr feedback
Co-authored-by: Sebastian Rindom <skrindom@gmail.com >
2022-07-04 15:39:30 +02:00
Philip Korsholm
bf47d1aecd
feat(medusa): Add batch strategy for order exports ( #1603 )
2022-06-29 09:54:37 +02:00
Adrien de Peretti
7b09b8c36c
feat(medusa/product-export-strategy): Implement the Product export strategy ( #1688 )
2022-06-22 23:42:31 +02:00
Adrien de Peretti
453688682c
feat(medusa): Support batch-job API ( #1547 )
...
* feat(medusa): Implement confirm batch job end point
* feat(medusa): Implement confirm batch-job end point
* feat(medusa): Add create batch job end point and implementation
* feat(medusa): remove cancelled related
* feat(medusa): Remove unrelated content for batch job creation
* feat(medusa): Cleanup migration
* feat(medusa): Cleanup context
* fix(medusa): Batch-job service import
* feat(medusa): Update migration
* test(medusa): Fix batch job tests
* feat(medusa): Start batch job end point
* feat(medusa): Continue end points
* feat(medusa): Continue end points
* feat(medusa): Finalize batch-job end points
* style(medusa): Lint
* feat(medusa): Cleanup
* feat(medusa): Fix list-batch-job endpoint column selection
* feat(medusa): Batch-job feedback
* feat(medusa): Update create-batch-job endpoint doc
* test(integration-tests): Fix batch-job integration reguarding the response status code
* feat(medusa): Finalize rebase from develop
* feat(medusa): Extend batch job status with ready_at and failed_at
* feat(medusa): Update migration and tests accordingly
* feat(medusa): Update status order on batchJob
* feat(medusa): Enhance batchJobService status update
* style(medusa): Cleanup
* style(medusa): Typo
* style(medusa): Remove unnecessary comment
* cleanup(medusa): Address feedback
* test(integration-tests): Update naming and snapshots
* fix(medusa): Update validator
Co-authored-by: Philip Korsholm <88927411+pKorsholm@users.noreply.github.com >
* Fix(medusa): update validator
Co-authored-by: Philip Korsholm <88927411+pKorsholm@users.noreply.github.com >
* test(intergration-tests): Fix creates batch job
* test(integration-tests): Fix snapshot
* feat(medusa): Re-work status
* tests(integration-tests): Fix batch job
* feat(medusa): Addresses feedback
* fix(medusa): Revert package.json script
* feat(medusa/batch-job-api): Improve status management
* feat(medusa): Improve batch job status and remove some context validation from the service
* feat(medusa): BatchJob api merge params
* feat(medusa): Apply last changes on the batch job service
* Update packages/medusa/src/services/batch-job.ts
Co-authored-by: Oliver Windall Juhl <59018053+olivermrbl@users.noreply.github.com >
* feat(medusa): BatchJobStrategy and loaders (#1434 )
* add batch job strategy interface
* update plugin loaders
* remove comment
* make map async
* ensure that only one of each strategy is registered
* register strategies plural
* add identifier and batchType properties
* extend batch job strategy identification method
* initial test
* update loaders to accomodate different ways of accessing batch job strategies
* identifier batch type field
* redo merge in plugins
* update interface and load only js files
* use switches instead of elif
* remove comments
* use static properties for strategy registration
* update tests
* fix unit tests
* update test names
* update isBatchJobStrategy method
* add check for TransactionBaseService in services for plugins
* update interfaces export
* update batchjob strategy interface with a prepare script
* update loaders
* update batchjob strategy interface
* remove everything but public interface methods from batchJobStrategy
* add default implementation to prepareBathJobForProcessing
* remove unused import
* docs: Add Services reference (#1548 )
* added events reference
* add upgrade guide for 1.3.0
* Update 1-3-0.md
* merge 1.3.0 with 1.3.1
* rename to 1.3.0
* added paypal documentation
* Improve storefront quickstart documents
* chore(deps): bump sqlite3 from 5.0.2 to 5.0.3 (#1453 )
Bumps [sqlite3](https://github.com/TryGhost/node-sqlite3 ) from 5.0.2 to 5.0.3.
- [Release notes](https://github.com/TryGhost/node-sqlite3/releases )
- [Changelog](https://github.com/TryGhost/node-sqlite3/blob/master/CHANGELOG.md )
- [Commits](https://github.com/TryGhost/node-sqlite3/compare/v5.0.2...v5.0.3 )
* fix: Issue with cache in CI pipeline
Co-authored-by: Philip Korsholm <88927411+pKorsholm@users.noreply.github.com >
Co-authored-by: Oliver Windall Juhl <59018053+olivermrbl@users.noreply.github.com >
Co-authored-by: Shahed Nasser <shahednasser@gmail.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-06-16 13:57:18 +02:00
Zakaria El Asri
8e7de6dd36
fix: make sure @medusajs/medusa is loaded correctly regardless of integration test suite being run ( #1166 )
2022-03-09 17:20:18 +01:00
Sebastian Rindom
c56660fca9
feat: new tax api ( #979 )
...
* feat: add tax calculation strategy (#885 )
* feat: add tax calculation strategy
* fix: adds strategy loader
* fix: eslint ignore
* chore: cleanup
* fix: allow plugin overwrites
* fix: allow plugin overwrites
* fix: fake region
* Update packages/medusa/src/loaders/strategies.ts
Co-authored-by: Oliver Windall Juhl <59018053+olivermrbl@users.noreply.github.com >
Co-authored-by: Oliver Windall Juhl <59018053+olivermrbl@users.noreply.github.com >
* feat: adds tax related db entities + tax provider (#896 )
* feat: adds tax related db entities + tax provider
* fix: add tax provider tests
* fix: add tax service unit tests
* fix: tests + migrations
* fix: add inherited tax lines
* chore: rm tax-line repo
* fix: test
* fix: pr comments
* fix: unit test
* feat: totals service to ts (#911 )
* feat: adds tax related db entities + tax provider
* fix: add tax provider tests
* fix: add tax service unit tests
* fix: tests + migrations
* feat: totals service to ts
* fix: remove totals.js
* fix: add shipping methods
* fix: add inherited tax lines
* chore: rm tax-line repo
* fix: test
* fix: tests
* fix: tests
* fix: unit test
* fix: adds TotalsServiceProps
* feat: adds integration tests for automatic tax calculation + shipping tax rates (#945 )
* feat: adds tax related db entities + tax provider
* fix: add tax provider tests
* fix: add tax service unit tests
* fix: tests + migrations
* feat: totals service to ts
* fix: remove totals.js
* fix: add shipping methods
* fix: add inherited tax lines
* chore: rm tax-line repo
* fix: test
* fix: tests
* fix: tests
* fix: unit test
* fix: integration test helpers
* fix: adds factories + tests automatic tax rates
* fix: remove verbose
* fix: adds TotalsServiceProps
* fix: add shipping tax lines
* fix: add migration for shipping taxes
* fix: integration tests for shipping taxes
* fix: integration tests for shipping taxes
* fix: jsdoc types
* Feat/manual taxes (#950 )
* feat: adds tax related db entities + tax provider
* fix: add tax provider tests
* fix: add tax service unit tests
* fix: tests + migrations
* feat: totals service to ts
* fix: remove totals.js
* fix: add shipping methods
* fix: add inherited tax lines
* chore: rm tax-line repo
* fix: test
* fix: tests
* fix: tests
* fix: unit test
* fix: integration test helpers
* fix: adds factories + tests automatic tax rates
* fix: remove verbose
* fix: adds TotalsServiceProps
* fix: add shipping tax lines
* fix: add migration for shipping taxes
* fix: integration tests for shipping taxes
* fix: integration tests for shipping taxes
* fix: add integration tests for manual taxes
* fix: cart service - cleanup jsdoc
* feat: add /carts/id/taxes to manually calculate taxes
* feat: add integration tests for order tax calculations
* fix: unit tests
* fix: merge
* fix: rm verbose
* fix: unit tests
* fix: object -> cartOrOrder
* fix: rounding
* Feat/complete order w tax lines (#951 )
* feat: adds tax related db entities + tax provider
* fix: add tax provider tests
* fix: add tax service unit tests
* fix: tests + migrations
* feat: totals service to ts
* fix: remove totals.js
* fix: add shipping methods
* fix: add inherited tax lines
* chore: rm tax-line repo
* fix: test
* fix: tests
* fix: tests
* fix: unit test
* fix: integration test helpers
* fix: adds factories + tests automatic tax rates
* fix: remove verbose
* fix: adds TotalsServiceProps
* fix: add shipping tax lines
* fix: add migration for shipping taxes
* fix: integration tests for shipping taxes
* fix: integration tests for shipping taxes
* fix: add integration tests for manual taxes
* fix: cart service - cleanup jsdoc
* feat: add /carts/id/taxes to manually calculate taxes
* feat: add integration tests for order tax calculations
* feat: adds cart completion strategy + create order w. tax lines
* fix: unit tests
* fix: merge
* fix: rm verbose
* fix: unit tests
* fix: unit tests
* fix: unit tests
* fix: ensure calculation for list orders
* fix: unit tests
* fix: integration tests
* fix: adds cart order type gaurds
* Docs/tax api (#954 )
* feat: adds tax related db entities + tax provider
* fix: add tax provider tests
* fix: add tax service unit tests
* fix: tests + migrations
* feat: totals service to ts
* fix: remove totals.js
* fix: add shipping methods
* fix: add inherited tax lines
* chore: rm tax-line repo
* fix: test
* fix: tests
* fix: tests
* fix: unit test
* fix: integration test helpers
* fix: adds factories + tests automatic tax rates
* fix: remove verbose
* fix: adds TotalsServiceProps
* fix: add shipping tax lines
* fix: add migration for shipping taxes
* fix: integration tests for shipping taxes
* fix: integration tests for shipping taxes
* fix: add integration tests for manual taxes
* fix: cart service - cleanup jsdoc
* feat: add /carts/id/taxes to manually calculate taxes
* feat: add integration tests for order tax calculations
* feat: adds cart completion strategy + create order w. tax lines
* fix: unit tests
* fix: merge
* fix: rm verbose
* fix: unit tests
* fix: unit tests
* fix: unit tests
* fix: ensure calculation for list orders
* fix: unit tests
* fix: integration tests
* docs: documents tax related methods and types
* fix: require either item_id or shipping_method_id
* feat: product type tax rate (#969 )
* feat: adds tax related db entities + tax provider
* fix: add tax provider tests
* fix: add tax service unit tests
* fix: tests + migrations
* feat: totals service to ts
* fix: remove totals.js
* fix: add shipping methods
* fix: add inherited tax lines
* chore: rm tax-line repo
* fix: test
* fix: tests
* fix: tests
* fix: unit test
* fix: integration test helpers
* fix: adds factories + tests automatic tax rates
* fix: remove verbose
* fix: adds TotalsServiceProps
* fix: add shipping tax lines
* fix: add migration for shipping taxes
* fix: integration tests for shipping taxes
* fix: integration tests for shipping taxes
* fix: add integration tests for manual taxes
* fix: cart service - cleanup jsdoc
* feat: add /carts/id/taxes to manually calculate taxes
* feat: add integration tests for order tax calculations
* feat: adds cart completion strategy + create order w. tax lines
* fix: unit tests
* fix: merge
* fix: rm verbose
* fix: unit tests
* fix: unit tests
* fix: unit tests
* fix: ensure calculation for list orders
* fix: unit tests
* fix: integration tests
* docs: documents tax related methods and types
* fix: require either item_id or shipping_method_id
* feat: adds returns tests for new tax system
* feat: adds return lines + integration tests for swaps
* feat: return integration tests
* feat: adds product type tax rates
* feat: add tax management endpoints
* fix: create single migration
* fix: adds tax rates to js client
* fix: strats
* Fix/plugin tests (#998 )
* plugin testing setup
* fix: test sendgrid plugin
* fix: test sendgrid plugin
* chore: clean
* chore: clean
* fix: clean up tests
* fix: remove dirty import
* fix: sendgrid + brightpearl
* fix: plugin integration tests
* fix: klarna
* fix: shipping method tax
* fix: remove taxrates
* fix: unit tests
* fix: integration
* fix: integration
* fix: plugins tests
* fix: ignore plugins
* fix: tests
* fix: taxes (#1017 )
* fix: taxes
* fix: taxes
* fix: faulty ref
* fix: create tax-lines with claim items
* fix: snapshot tax-liens
* fix: allows integration test teardown to force deleting tables
* fix: tests
* fix: merge
* fix: adds tax-rates to client
* fix: adds tax-rates to medusa-react
* fix: tests
* fix: tests
* fix: add product types
* fix: adds tax provider endpoint + cascaded deletes on tax rate relations
* fix: move errors to service layer
* fix: cleanup api
* fix: unit tests
* fix: error handler in base-service
* fix: Add order region to swap on createFulfillment (#1110 )
Co-authored-by: Oliver Windall Juhl <59018053+olivermrbl@users.noreply.github.com >
2022-02-24 20:14:09 +01:00
Zakaria El Asri
321c271e53
fix: allow integration tests to run from integration-test/api folder ( #940 )
2021-12-16 14:56:25 +01:00
Zakaria El Asri
69620e572e
chore: parallelize integration tests and use template dbs ( #907 )
2021-12-14 21:45:57 +01:00
Mark
3d891c9b4f
Issue #442 Prettier rules not applied to some integration tests files ( #445 )
2021-10-08 12:11:58 +02:00
Sebastian Rindom
ae82cfc70a
feat: creates support for swaps on the storefront ( #355 )
2021-08-30 12:14:56 +02:00
Sebastian Rindom
1039d040e9
Add SQLite support for easy setup ( #336 )
...
* Modifies schema to allow SQLite as a DB driver. SQLite is preinstalled in most OSes allowing for minimal prerequisites in the installation process.
* Removes Redis dependency and replaces "real" redis instance with ioredis-mock this is not feature complete and errors are expected.
* Updates medusa new command to only ask for Postgres credentials if the starter template has database_type === "postgres" in medusa-config.js
* Small improvements to bin resolution
* Improvements to endpoint stability
2021-08-16 15:45:26 +02:00
Sebastian Rindom
9a701ff229
fix: improves integration tests ( #332 )
...
* fix: improves integration tests
* fix: giftcard order with total 0
* fix: remove breaking eager
2021-08-11 09:26:25 +02:00
Zakaria El Asri
06fd882a67
fix: parameterize integration tests' db credentials ( #319 )
...
* add: read db credentials from .env
* remove: console.log
* fix: default to default pg user and password
2021-07-23 11:27:05 +01:00
Sebastian Rindom
dd7b306333
feat(medusa): cart context ( #201 )
...
- Adds a context field to Cart
- context is automatically populated with ip + user agent
- context can be updated via POST /store/cart/:id or set when creating via POST /store/cart
2021-03-12 11:48:51 +01:00
Sebastian Rindom
690d339667
feat(medusa,brightpearl,segment,webshipper): claims ( #163 )
...
* chore: create tests
* chore: models
* fix: passing initial tests
* test: adds integration test
* test: clean up integration implementation
* fix: claims
* fix: brightpearl + webshipper
* tests: passing
* fix: update claim items
* fix: adds gitignore
* fix: pr comments
* fix: single migration
* fix(medusa-plugin-segment): adds item claimed event to segment
2021-02-03 09:49:12 +01:00