* docs for tax-inclusive pricing
* changes based on feedback
* changes based on feedback
* fix link
* 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
* feat(medusa): Tax-inclusive pricing (#2131)
* add feature flag for tax inclusive pricing
* update db model for TIP
* add migration
* set featureflag column decorators
* remove unused prop
* update tests to reflect feature_flags as any array
* fix types
* reference key from featureFlag file
* use feature flag key in models
* fix copy paste mistake
* unify spelling
* Create gorgeous-experts-guess.md
* feat(medusa): create/update endpoints of currency/region/price-lists/shipping-options should allow to pass includes_tax
* test(integration): continue to add some integration test
* test(integration): continue to add some integration test
* test(unit): Fix region service tests
* fix(medusa): API unit tests flags management
* feat(medusa): Minor cleanup
* style(medusa): Fix typo
* fix(medusa): rebase
* feat(medusa): Replace old tag with the new one
* feat(medusa): revert flag
* feat(medusa): Cleanup
* feat(medusa): feedback
* feat(medusa): Rename currency retrieve method
* test(medudsa): fix unit tests
* chore(medusa): fix oas
* feat(medusa): ShippingMethod should include tax setting from parent option (#2021)
* feat(medusa): Shipping method should includes tax from parent options
* feat(medusa): Condition the includes tax flag to the availability of the feature and add some other tests
* test(integration): Move cart/order ff test in separate files
* fix: snapshots folder
* fix(integration): snapshots
* Create calm-baboons-sit.md
* test(integration): file naming
Co-authored-by: Carlos R. L. Rodrigues <rodrigolr@gmail.com>
* Feat/tax inclusive pricing extend price selection strategy (#2087)
* initial changes to price selection strategy including unit tests
* typing for tax calculation
* update types and remove region and currency from prices results
* fix casing
* include tax calculation in priceselectionstrategy
* integration tests for tax inclusive pricing price calculations
* fix build
* include tax inclusive considerations when calculating tax fields for variants
* include only "includes_tax" fields from currency and region joins
* test to see errors in pipelines
* conditionally join featureflagged fields
* add "includes_tax" to price list factory
* add tests for tax inclusive price list prices and currency prices
* fix unit tests
* refactor pricing array checks to expect arraycontaining
* undo error handler
* Feat/tax inclusive pricing flag on generated lineitems (#2108)
* include tax inclusive pricing flag on generated lineitems
* initial addition of tax inclusivity for lineitem service
* add generate test to ensure that includes_tax is set when returned from price selection strategy
* add integration test for generating lineitem including tax
* add test for negative tax inclusion
* add tests for mixed pricing
* add negative test for setting tax exclusivity
* restructure the setting of includes_tax on lineitems
* fix: update cwd to be correct in cart test
* feat(medusa): Line item totals calculations (#2123)
* feat(medusa): Update totals and tax calculation way to calculate the totals
* feat(medusa): remove region feetching from decorate total
* feat(medusa): cleanup
* test(medusa): fix tax calculation tests
* comment
* test(integration): cleanup
* test(integration): cleanup
* fix(medusa): return service missing await
* feat(medusa): cleanup
* feat(medusa): cleanup
* test(integration): fix data
* feat(medusa): improve tax calculation readability
* test(medusa): improve tax calculation structure case
Co-authored-by: Sebastian Rindom <skrindom@gmail.com>
* Feat(medusa): tax inclusive pricing in shipping method tax (#2125)
* initial implementation and test
* include tax inclusive calculations for getting shipping options
* remove inaccurate comment
* remove console log
* refactor how prices and taxes are set for shipping methods
* fix integration tests
* remove verbose flag
* fix integration tests
* remove console log
* format util
* use util in price service and tax strategy
* fix faulty integration test
* undo tax calculation strategy changes in favor or Carlos' pr
* undo changes to tax calculation strategy tests
* round tax amount
* feat(medusa): cleanup calculate tax amount utils and its usage (#2136)
* feat(medusa): Refund line totals calculation (#2139)
Rely on the update of the following pr https://github.com/medusajs/medusa/pull/2136
**WIP Missing integration tests**
**What**
Update the totals calculation on the refund line to include the notion of tax inclusive
**Test**
- Update and add new tests around the refund
Fixes CORE-482
* feat(medusa): Tax inclusive discounts calculations (#2137)
**What**
- Calculate line adjustments correctly taking into account the tax inclusivity
- fix totals getLineItemTotals by adjusting the sub total with the original tax amount instead of the tax amount when the unit price includes the taxes
**Tests**
- The tests create a cart with a percentage discount of 15%, the cart includes 2 items mixing the tax inclusive and validate the items on the result cart as well as the totals on each item. I ve based my calculation validation based on what we have done + some articles around discount apply on price without taxes to validate the output.,
FIXES CORE-477
* Chore: shipping methods tax inclusive total (#2130)
* chore: calculate tax inclusive shipping methods
* chore: additional tests and check undefined tax_rate (#2157)
* chore: additional tests and check undefined tax_rate
* fix: naming + correct price type check
* fix: remove price_includes_tax from type
* fix: remove price_includes_tax from type
Co-authored-by: Philip Korsholm <philip.korsholm@hotmail.com>
Co-authored-by: adrien2p <adrien.deperetti@gmail.com>
Co-authored-by: Carlos R. L. Rodrigues <rodrigolr@gmail.com>
Co-authored-by: Philip Korsholm <88927411+pKorsholm@users.noreply.github.com>
Co-authored-by: Sebastian Rindom <skrindom@gmail.com>
Co-authored-by: Carlos R. L. Rodrigues <37986729+carlos-r-l-rodrigues@users.noreply.github.com>
* Remove unused QueryBuilderService (#2104)
**Issue number:** #2068
**What:**
- removed unused query-builder service files
- medusa/src/services/query-builder.js
- medusa/src/services/__mocks__/query-builder.js
- deleted export from medusa/src/services/index.ts
- (extra) deleted documentation files related to QueryBuilderService (QueryBuilderService.md)
* docs for tax-inclusive pricing
* changes based on feedback
* changes based on feedback
* feat(medusa-fulfillment-webshipper): Support personal customs no in orders (#2167)
* feat(webshipper): support personal customs no in orders
* docs: update readme with personal customs number info
* fix(medusa-file-spaces): return `fileKey` for Spaces upload (#2171)
**What**
- return `fileKey` in the response after the file is uploaded to Spaces
Co-authored-by: Oliver Windall Juhl <59018053+olivermrbl@users.noreply.github.com>
* fix(medusa): Export/import fixes including export fields that contains new line char (#2150)
* feat(medusa-js,medusa-react,medusa): Add missing Currency endpoints (#2185)
* fix(medusa): Resent notification replaces parent notification
* chore: Bump medusa-file-minio
* fix(medusa): allow address updates on carts w/o existing address (#2176)
* chore: Bump minor version of plugins
* chore: Centralise ESLint rules (#2162)
* chore: centrilize eslint rules
* feat: order editing data model (#2184)
**What**
- add order editing entities
- add repositories
- add a feature flag for the order editing feature
- add the migrations file
RESOLVES CORE-490
* fix link
* fix(medusa): Check for Sales Channel on product import (#2202)
* docs: change title in Create a Service documentation (#2201)
Change title in Create a Service documentation
* chore(release): Publish
* added links to sidebar
Co-authored-by: Sebastian Rindom <skrindom@gmail.com>
Co-authored-by: Oliver Windall Juhl <59018053+olivermrbl@users.noreply.github.com>
Co-authored-by: Philip Korsholm <philip.korsholm@hotmail.com>
Co-authored-by: adrien2p <adrien.deperetti@gmail.com>
Co-authored-by: Carlos R. L. Rodrigues <rodrigolr@gmail.com>
Co-authored-by: Philip Korsholm <88927411+pKorsholm@users.noreply.github.com>
Co-authored-by: Carlos R. L. Rodrigues <37986729+carlos-r-l-rodrigues@users.noreply.github.com>
Co-authored-by: Dorian <46839236+DorianMazur@users.noreply.github.com>
Co-authored-by: Frane Polić <16856471+fPolic@users.noreply.github.com>
Co-authored-by: Kasper Fabricius Kristensen <45367945+kasperkristensen@users.noreply.github.com>
Co-authored-by: Bhargava Prabu Reddy <prabu0reddy777@gmail.com>
Co-authored-by: olivermrbl <oliver@mrbltech.com>
Co-authored-by: sabakhilji <52318459+sabakhilji@users.noreply.github.com>
Bumps [moment](https://github.com/moment/moment) from 2.29.1 to 2.29.4.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/moment/moment/blob/develop/CHANGELOG.md">moment's changelog</a>.</em></p>
<blockquote>
<h3>2.29.4</h3>
<ul>
<li>Release Jul 6, 2022
<ul>
<li><a href="https://github-redirect.dependabot.com/moment/moment/pull/6015">#6015</a> [bugfix] Fix ReDoS in preprocessRFC2822 regex</li>
</ul>
</li>
</ul>
<h3>2.29.3 <a href="https://gist.github.com/ichernev/edebd440f49adcaec72e5e77b791d8be">Full changelog</a></h3>
<ul>
<li>Release Apr 17, 2022
<ul>
<li><a href="https://github-redirect.dependabot.com/moment/moment/pull/5995">#5995</a> [bugfix] Remove const usage</li>
<li><a href="https://github-redirect.dependabot.com/moment/moment/pull/5990">#5990</a> misc: fix advisory link</li>
</ul>
</li>
</ul>
<h3>2.29.2 <a href="https://gist.github.com/ichernev/1904b564f6679d9aac1ae08ce13bc45c">See full changelog</a></h3>
<ul>
<li>Release Apr 3 2022</li>
</ul>
<p>Address <a href="https://github.com/moment/moment/security/advisories/GHSA-8hfj-j24r-96c4">https://github.com/moment/moment/security/advisories/GHSA-8hfj-j24r-96c4</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="000ac1800e"><code>000ac18</code></a> Build 2.24.4</li>
<li><a href="f2006b6479"><code>f2006b6</code></a> Bump version to 2.24.4</li>
<li><a href="536ad0c348"><code>536ad0c</code></a> Update changelog for 2.29.4</li>
<li><a href="9a3b5894f3"><code>9a3b589</code></a> [bugfix] Fix redos in preprocessRFC2822 regex (<a href="https://github-redirect.dependabot.com/moment/moment/issues/6015">#6015</a>)</li>
<li><a href="6374fd860a"><code>6374fd8</code></a> Merge branch 'master' into develop</li>
<li><a href="b4e615307e"><code>b4e6153</code></a> Revert "[bugfix] Fix redos in preprocessRFC2822 regex (<a href="https://github-redirect.dependabot.com/moment/moment/issues/6015">#6015</a>)"</li>
<li><a href="7aebb1617f"><code>7aebb16</code></a> [bugfix] Fix redos in preprocessRFC2822 regex (<a href="https://github-redirect.dependabot.com/moment/moment/issues/6015">#6015</a>)</li>
<li><a href="57c90622e4"><code>57c9062</code></a> Build 2.29.3</li>
<li><a href="aaf50b6bca"><code>aaf50b6</code></a> Fixup release complaints</li>
<li><a href="26f4aef9ca"><code>26f4aef</code></a> Bump version to 2.29.3</li>
<li>Additional commits viewable in <a href="https://github.com/moment/moment/compare/2.29.1...2.29.4">compare view</a></li>
</ul>
</details>
<br />
[](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
- `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language
- `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language
- `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language
- `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language
You can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/medusajs/medusa/network/alerts).
</details>