Commit Graph

452 Commits

Author SHA1 Message Date
Frane Polić
c3ae529b40 fix(dashboard): payment providers select (#13592)
**What**
- use lazy loading for payment providers select on region create/edit
2025-09-25 17:54:07 +00:00
Bastien
9538df2eaf fix(dashboard): copy phone on order customer info (#13596)
In the order details page, clicking the copy button for customer phone number was incorrectly copying the email address instead of the phone number.

Co-authored-by: William Bouchard <46496014+willbouch@users.noreply.github.com>
2025-09-25 17:03:59 +00:00
Frane Polić
7af9e3224c fix(dashboard): improve inventory level location management (#13589)
**What**
- add InfiniteList on location selection for inventory level -> fixes issue with location pagination
- fix removal of location level for an inventory item
- refresh the levels table when locations are updated
- add search input for filtering locations

---

CLOSES CORE-1208
2025-09-24 18:00:45 +00:00
William Bouchard
edf29b3bd2 feat(dashboard): select refund reason in refund form (#13587)
CLOSES CORE-1211

This PR quickly allows the user to select a refund a reason when creating a refund

<img width="1106" height="1618" alt="CleanShot 2025-09-23 at 14 36 39@2x" src="https://github.com/user-attachments/assets/7cb9a53e-82ca-44d3-8267-874153f8d9ac" />


<img width="1870" height="1082" alt="CleanShot 2025-09-23 at 14 36 26@2x" src="https://github.com/user-attachments/assets/ea8d39b2-07e6-4295-ae52-da16b5d0d265" />
2025-09-24 12:06:42 +00:00
Frane Polić
294c37564c fix(dashboard): edit promotion campaign w/wo currrency (#13404)
**What**
- a promotion couldn't be added to a campaign without a currency budget (on promotion details screen)
- fix fetching campaigns pagination issue
- move select to Combobox
- fix currency restriction and move warning description to the label hint
2025-09-24 10:24:11 +00:00
Frane Polić
10787c865f feat(dashboard): refactor location list UI to use data table (#13571)
* wip: convert location list to a table

* chore: changeset

* fix: rm search bluring on loading change

* feat: translations and palceholders, cleanup, make content more compact

* fix: delete message

* chore: optimise use memo

* fix: update toast

* feat: make stock location address searchable

* fix: search input blur on load finish
2025-09-24 10:29:13 +02:00
Frane Polić
6e806942c7 fix:(dasboard, order): set return status on cancel (#13578) 2025-09-24 08:48:00 +02:00
William Bouchard
5e827ec95d feat(admin-shared,dashboard,js-sdk,types): refund reasons in dashboard (#13575)
CLOSES CORE-1209

This PR just adds the stuff necessary to support refund reasons in the dashboard. It adds the option in the settings tab and allows viewing, creating, editing and deleting refund reasons. I hate to open such a big PR but most of it is copy pasted from the return reasons. Major difference is only the fact that refund reasons don't have a `value` field
2025-09-23 15:51:40 +00:00
Ayman Mustafa
a75cf7fb36 feat(dashboard): support RTL in dashboard (#11252)
* fix: add direction attribute to components and adjust styles for RTL support

* fix(data-grid): comment it out

* Added useDocumentDirection hook

* refactor: Integrate useDocumentDirection hook

* refactor: Standardize direction prop usage across components

* resolve

* fix: resolve build errors

* fix : remove unused useDocument

* Apply RTL styles for some components

* Create smooth-gorillas-hide.md

* refactor: update some styles for RTL support

---------

Co-authored-by: William Bouchard <46496014+willbouch@users.noreply.github.com>
2025-09-23 11:11:30 -04:00
docloulou
55f89b2151 fix(dashboard): add offset and limit to query parameters in useTableConfiguration (#13565)
This pull request introduces a minor update to the table configuration functionality in the dashboard package. The main change is the addition of pagination support through `offset` and `limit` query parameters.

This fix pagination with `view_configurations:true`

Pagination improvements:

* [`packages/admin/dashboard/src/hooks/table/use-table-configuration.tsx`](diffhunk://#diff-2cf338f1bf284cf3568eabc51107b9a3d51a4b830a81baae2362f608f7c8a55aL71-R71): Updated the `useTableConfiguration` hook to include `offset` and `limit` in the query parameters, enabling pagination for table data.
* [`.changeset/spicy-swans-grab.md`](diffhunk://#diff-1bada2c80b4c3b4ee3c8782ee24ca0183b1bee09aafd7fe130c481152458f1a4R1-R5): Documented the change as a minor update to `@medusajs/dashboard`, specifying the addition of `offset` and `limit` to query parameters in `useTableConfiguration`.
2025-09-22 16:19:59 +00:00
github-actions[bot]
174b5b1cb7 chore: Version Packages (#13494)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-09-18 18:38:07 +02:00
Sebastian Rindom
41047b3854 feat(dashboard): configurable product views (#13408)
* feat: add a reusable configurable data table

* fix: cleanup

* fix: cleanup

* fix: cache invalidation

* fix: test

* fix: add configurable products

* feat: add configurable product table

* fix: build errors+table style

* fix: sticky header column

* add translations

* fix: cleanup counterenderer

* fix: formatting

* fix: client still skips nulls

* fix: test

* fix: cleanup

* fix: revert client bracket format

* fix: better typing

* fix: add placeholder data to product list
2025-09-18 18:27:17 +02:00
tehaulp
dcca42ec51 fix(dashboard): added missing currencies (#13214)
Related to #13086, #12440 and #12668

Currencies were added in the migrations, but not in the admin dashboard list, causing admin display errors.

This mod should fix that

Co-authored-by: William Bouchard <46496014+willbouch@users.noreply.github.com>
2025-09-17 17:34:19 +00:00
Sebastian Rindom
23d5a902b1 feat(dashboard): reusable config datatable (#13389)
* feat: add a reusable configurable data table

* fix: cleanup

* fix: cleanup

* fix: cache invalidation

* fix: test

---------

Co-authored-by: Oli Juhl <59018053+olivermrbl@users.noreply.github.com>
2025-09-15 10:59:00 +02:00
docloulou
5e5f628d87 feat(dashboard): update display of tracking/label URLs on order details (#11613)
### Overview

This PR updates the fulfillment label rendering by replacing the deprecated .url field with the new tracking_url and label_url fields, following the MedusaJS FulfillmentLabel model.

### Changes

- Implemented conditional rendering for both tracking_url and label_url.
- If a tracking_url exists, it is displayed as a clickable link.
- Similarly, if a label_url exists, it is displayed as a clickable link.
- If neither link is provided, only the tracking number is shown.
- Maintained existing styling for interactive elements.

![image](https://github.com/user-attachments/assets/187bd8d5-d6c2-4f06-8f61-f9bb7d02da11)

### Reference

This update is based on the MedusaJS FulfillmentLabel model:
https://docs.medusajs.com/resources/references/fulfillment/models/FulfillmentLabel

Please review the changes and provide feedback for further improvements.


Co-authored-by: William Bouchard <46496014+willbouch@users.noreply.github.com>
2025-09-12 18:15:43 +00:00
github-actions[bot]
6525ac5c1c chore: Version Packages (#13354)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-09-12 15:42:43 +02:00
Dylan Park
75e85414cc feat(dashboard): improve Korean transl and add missing keys (#13081)
## Summary
- Improved Korean translations with natural terms for e-commerce context
- Applied consistent translations throughout the admin interface
- Added all missing required keys for i18n validation

## Changes
- Used appropriate e-commerce terms: "재고 키트" → "구성 상품", "이행" → "주문 처리/배송 준비"
- Applied consistent translation: "항목" → "상품" throughout the file
- Distinguished shipping states: "markAsShipped" (발송 완료), "markAsDelivered" (배송 완료)
- Added missing required keys for products, inventory, orders, taxRegions, and promotions
- All i18n validations now pass

## Test plan
- [x] Run `yarn i18n:validate ko.json` - passes validation
- [x] Verify translations are contextually appropriate for e-commerce
- [x] Ensure consistency across all admin interface sections

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-authored-by: William Bouchard <46496014+willbouch@users.noreply.github.com>
2025-09-11 19:31:08 +00:00
Grzegorz Leoniec
b8b9b3ac74 fix(dashboard): german translation issues (#13482)
I fixed those bad translations in German, as they were nearly unbearable. 🙈

Co-authored-by: William Bouchard <46496014+willbouch@users.noreply.github.com>
2025-09-11 18:45:42 +00:00
Frane Polić
ecf368e2bd fix(dashboard): edit rules clear and reset (#13423)
CLOSES CORE-1105
2025-09-09 18:26:01 +00:00
SteelRazor47
ccff121691 fix(dashboard): disable broken autofocus in SO cond. price form (#11944)
* fix(dashboard): disable broken autofocus in SO cond. price form

* changeset

---------

Co-authored-by: William Bouchard <46496014+willbouch@users.noreply.github.com>
2025-09-09 13:46:17 -04:00
Amirkhon
1b681a79da feat(dashboard,currency): added Tajikistani somoni currency (#13178)
* added Tajikistani somoni currency

* updated currencies.ts

* changeset

* updated changeset

---------

Co-authored-by: William Bouchard <46496014+willbouch@users.noreply.github.com>
2025-09-09 13:03:39 -04:00
Radek Napora
cda659ab17 fix(dashboard) update and add missing polish translations (#13445)
* update Polish translations

* add changeset
2025-09-09 08:29:54 -04:00
lemonteeea
963a613d1d fix(dashboard): fix pagination when adding products to price list (#13075)
* fix(dashboard): fix pagination when adding products to price list

* chore: add changeset

---------

Co-authored-by: Adrien de Peretti <adrien.deperetti@gmail.com>
Co-authored-by: William Bouchard <46496014+willbouch@users.noreply.github.com>
2025-09-08 21:18:31 +02:00
Galdámez
88170a6239 fix(dashboard): add missing translations to spanish file (#13426)
* fix(i18n): add missing translation keys to spanish file

* docs(dashboard): add changeset

* fix: changeset

* fix: change changeset type to patch

---------

Co-authored-by: Oli Juhl <59018053+olivermrbl@users.noreply.github.com>
Co-authored-by: William Bouchard <46496014+willbouch@users.noreply.github.com>
Co-authored-by: Adrien de Peretti <adrien.deperetti@gmail.com>
2025-09-08 21:17:15 +02:00
William Bouchard
9b3831d258 fix(dashboard): support more decimals for tx rates (#13407)
* Percentage formatter set maximum digits to 4

* Modify Tax Region Forms to allow 4 digits tax rates

* Add changeset

* Revert placeholder value to use only 2 decimals

* fix(dashboard): support more decimals for tx rates

* changeset

* bypass scale

* refactor

* fix removal of deprecated input

* cleanup deprecated percentage input

* small mistake in onchange

* add deprecated percentage input back

* import

* remove file extension

* frane comment

---------

Co-authored-by: AmbroziuBaban <ambroziubaban@gmail.com>
2025-09-05 13:02:44 +02:00
Frane Polić
e67974ffe5 fix(dashboard): customer has_acccount flag (#13414) 2025-09-05 08:01:29 +02:00
Frane Polić
b7fef5b7ef fix(dashboard): promotion decimal value definition (#13371)
* fix(dashboard): pormotion decimal value definition

* fix: typo

* fix: fixed value decimals

* fix: translation
2025-09-04 16:07:29 +02:00
Frane Polić
f69088998c fix(dashboard, ui): ensure radix deps version (#13392) 2025-09-04 08:42:51 +02:00
William Bouchard
2f6edf367a feat(dashboard,cart,types,utils): refine order details summary (#13313)
* feat(dashboard,types,utils): refine order details summary

* fix tests

* changeset

* ui corrections

* tests again

* weird tests failing

* revert update to subtotal

* revert http tests too

* comments

* move credit lines so it makes more sense

* remove currency codes and add bold prices

* add new properties in default for storefront

* minor to patch

* remove bold on things that should be

* olis comment about taxes

* remove bold from shipping
2025-09-02 20:50:37 +02:00
Pepijn
753e8081c4 fix(dashboard): promotion expired status check when limit is null (#13373)
* Fix promotion expired status

* Update .changeset/bright-spoons-float.md

Co-authored-by: Oli Juhl <59018053+olivermrbl@users.noreply.github.com>

---------

Co-authored-by: Oli Juhl <59018053+olivermrbl@users.noreply.github.com>
2025-09-02 11:46:32 +02:00
Sebastian Rindom
c717535ca2 feat(admin): add configurable order views (#13211)
Adds support for configurable order views.

https://github.com/user-attachments/assets/ed4a5f61-1667-4ed7-9478-423894f3eba6
2025-09-01 17:04:18 +00:00
Sebastian Rindom
5a46372afd Feat/datatable core enhancements (#13193)
**What**

This PR adds core DataTable enhancements to support view configurations in the admin dashboard. This is part of a set of stacked PRs to add the feature to Medusa.

- Puts handlers in place to update the visible columns in a table and the order in which they appear.
- Adds a ViewPills component for displaying and switching between saved view configurations
- Integrated view configuration hooks (useViewConfigurations) with the DataTable

Note: Column drag-and-drop reordering and the column visibility UI controls are not included in this PR as they require additional UI library updates - which will come in the next PR.

Example of what this looks like with the feature flag turned on - note the view pills with "default" in the top. This will expand when the data table behavior adds configuration.
<img width="2492" height="758" alt="CleanShot 2025-08-13 at 2  31 35@2x" src="https://github.com/user-attachments/assets/ee770f1c-dae1-49da-b255-1a6d615789de" />
2025-09-01 10:30:05 +00:00
Sebastian Rindom
fa10c78ed3 feat(admin): add view configuration client infrastructure (#13186)
This is part of stacked PRs to add a view configuration feature which will allow users to customize the columns seen in tables in the Medusa Admin dashboard.

**What**
- Adds client providers, sdk methods and hooks for interacting with the views api.
2025-09-01 09:20:37 +00:00
Riqwan Thamir
ca038ff583 feat(promotion): Allow buyget promotion to apply multiple times on cart (#13305)
what:

Introduces 2 new features to promotion module:

1. Introduce max quantity limit to promotion application - This will limit the application of the promotion based on the quantity of the target products in the cart. 
2. When applying buy get promotions, we will now apply buyget promotion until eligible items are exhausted or max quantity is reached. 

```
- Buy 2 t-shirts, Get 1 sweater
- Max quantity -> 1

This means you can add two t-shirts, and get 1 sweaters for free. However, if you add four t-shirts, you only get one sweater for free.
```

```
- Buy 2 t-shirts, Get 1 sweater
- Max quantity -> 3

This means you can add six t-shirts, and get three sweaters for free. However, if you add eight t-shirts, you only get three sweaters for free
```

```
- Buy 4 t-shirts, Get 2 sweater
- Max quantity -> 1

This should throw on creation, as the max quantity should as a minimum be the same value as the target rule quantity
```

RESOLVES SUP-2357 / https://github.com/medusajs/medusa/issues/13265
2025-08-31 13:35:36 +00:00
Frane Polić
f53f027ce6 fix(dashboard): rules form operator change (#13324)
**What**
- fix condition rules form sometimes rendering multi and single selects unrelated to the attribute operator selected
- reset rule value when operator is changed
- disable selecting rule values untill operator is selected
- translate labels
2025-08-29 15:53:00 +00:00
github-actions[bot]
6dca59d0a5 chore: Version Packages (#13338)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-08-28 22:58:13 +02:00
github-actions[bot]
08ec3ed9f2 chore: Version Packages (#13209)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-08-28 17:25:32 +02:00
William Bouchard
65dfcf9be4 chore(dashboard): move shipping option type page (#13323)
* chore(dashboard): move shipping option type page

* small issue with the toast for edit
2025-08-28 15:31:51 +02:00
Frane Polić
87a61baf8f fix(dashboard): handle large resource count in tax rule override edit form (#13297)
* fix(dashboard): handle larege resource count in tax rule override edit form

* fix: typo

* fix: rm log
2025-08-26 10:45:27 +02:00
William Bouchard
486621383a feat(dashboard,core,modules): free shipping promotion in dashboard (#13263)
* feat(dashboard,core,modules): free shipping promotion in dashboard

* self-review

* adapt for edit to work

* changeset

* integration tests

* across for each

* remove only from tests

* remove console log

* revert to across

* update wording for shipping promotions

* modify changeset

* suggestion frane

* fix i18n schema
2025-08-22 16:30:30 -04:00
Patryk Spychalski
36c20ed188 fix(dashboard): fix translations for polish (#13266)
* remove unused translations

* add missing translations

* Revert "remove unused translations"

This reverts commit 99eaeb4d199c6ececdeed127b1a237f1ff140151.

* changeset
2025-08-22 10:52:15 +02:00
Kasper Fabricius Kristensen
7f5b9fc5fa feat(medusa,dashboard): Add metadata UI to product tags domain + retrieve metadata by default (#13272) 2025-08-22 07:50:59 +02:00
Frane Polić
2d62e28913 fix(dashboard): show fulfilment option on SO edit (#13269)
* fix(dashboard): show fulfilment option on SO edit

* fix: validation
2025-08-21 22:34:26 +02:00
Lars Decker
e7b45f5fde chore: Improve German Admin Translations (de.json) (#13219)
* Change some german translations

* Update some german translations

* Add changeset

* Change the changeset

---------

Co-authored-by: William Bouchard <46496014+willbouch@users.noreply.github.com>
2025-08-21 15:58:54 +02:00
Frane Polić
319a941d99 fix(dashboard): zero in float currency inputs (#13267)
CLOSES AI-38
2025-08-21 11:07:10 +00:00
Frane Polić
492e018957 feat(dashboard, core-flows, js-sdk, types, medusa): listing order's shipping options (#13242)
* feat(dashboard, core-flows,js-sdk,types,medusa): listing order's shipping option

* fix: typo

* chore: migrate claim form

* fix: cleanup rule logic

* feat: add test case, rm params

* fix: expand location name
2025-08-21 13:01:27 +02:00
Frane Polić
9b38b750de feat(dashboard): shipping option tax rate overrides UI (#13260)
* feat(dashboard): shipping option tax rate overrides UI

* feat: add location filter

* feat: show service zone in SO table

* feat: display location in the SO table
2025-08-21 12:06:36 +02:00
Frane Polić
5b7a041246 chore(ui): move toast to top right (#13092)
* chore(ui): display toast in top right corner

* fix: error as well

* refactor: feedback

* chore: move the rest of the modal controls to footer

---------

Co-authored-by: William Bouchard <46496014+willbouch@users.noreply.github.com>
2025-08-20 08:39:45 +02:00
Frane Polić
2f594291ad fix(core-flows, dashboard, types): improve allocation flows on Admin (#12572)
**What**
- handle single inventory items with `required_quantity > 1` correctly in the allocate UI flow
- display correct availability amount in the create fulullment form for inventory kit items
- fix check in the create fulfillment flow that would allow negative reservation because `required_quantity` wasn't included in the check
- show the most recent reservations first in the reservations table
- display an error in the allocation form if a reservation is not created for some inventory items 
- display inventory kit in the order summary if the product has multiple same inventory items

---

CLOSES SUP-1655
2025-08-19 18:48:24 +00:00
William Bouchard
67d3660abf feat(dashboard, core-flows): associate shipping option to type (#13226)
* feat(dashboard, core-flows): allow associating shipping option type to a shipping option

* edit as well

* fix translation schema

* fix some tests

* changeset

* add new test to update shipping option type

* add new test to create shipping option with shipping option type

* pr comments

* pr comments

* rename variable

* make zod great again
2025-08-19 11:02:36 -04:00