@medusajs/dashboard 2.10.4-snapshot-20250922195925 → 2.10.4-snapshot-20250925172615

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (324) hide show
  1. package/dist/{add-campaign-promotions-PLZXWFNV.mjs → add-campaign-promotions-3BB3BLFD.mjs} +7 -6
  2. package/dist/{adjust-inventory-WBEBMJN7.mjs → adjust-inventory-OIJTAKHP.mjs} +1 -1
  3. package/dist/{api-key-management-create-VXPZX2Q5.mjs → api-key-management-create-XDQHUNWK.mjs} +3 -3
  4. package/dist/{api-key-management-detail-ZQFNZNWW.mjs → api-key-management-detail-MM673US3.mjs} +16 -15
  5. package/dist/{api-key-management-edit-7CGMSHAY.mjs → api-key-management-edit-2SUSKI7T.mjs} +3 -3
  6. package/dist/{api-key-management-list-5DI3L4DV.mjs → api-key-management-list-C2WM4PHC.mjs} +8 -7
  7. package/dist/{api-key-management-sales-channels-WL5L5XWM.mjs → api-key-management-sales-channels-MVHVMPF6.mjs} +6 -5
  8. package/dist/app.css +89 -34
  9. package/dist/app.js +5093 -4715
  10. package/dist/app.mjs +18 -16
  11. package/dist/{campaign-budget-edit-OXNTSPGE.mjs → campaign-budget-edit-UWGCET5Z.mjs} +1 -1
  12. package/dist/{campaign-configuration-Z5HA2DG3.mjs → campaign-configuration-WWCCFNYQ.mjs} +1 -1
  13. package/dist/{campaign-create-AVBNHFC2.mjs → campaign-create-CQ3XBHSY.mjs} +4 -3
  14. package/dist/{campaign-detail-VTCCVWKS.mjs → campaign-detail-G2VM7CRL.mjs} +23 -22
  15. package/dist/{campaign-edit-3TDW52BO.mjs → campaign-edit-R43GXNET.mjs} +1 -1
  16. package/dist/{campaign-list-G4MD3RPU.mjs → campaign-list-CDO5PRTL.mjs} +7 -6
  17. package/dist/{categories-metadata-FTFYPASQ.mjs → categories-metadata-M4PAATNV.mjs} +14 -13
  18. package/dist/{category-create-FOVB5MJ4.mjs → category-create-GMFWRFT7.mjs} +38 -16
  19. package/dist/{category-detail-QHU2CLYA.mjs → category-detail-MTLPW4MR.mjs} +20 -19
  20. package/dist/{category-edit-O4ZSANE5.mjs → category-edit-HCHER73V.mjs} +36 -16
  21. package/dist/{category-list-UI6W5KF5.mjs → category-list-IXW2NWWJ.mjs} +8 -7
  22. package/dist/{category-organize-BW3YOPUS.mjs → category-organize-LRQKM4LA.mjs} +2 -2
  23. package/dist/{category-products-YGTL7GXQ.mjs → category-products-DGWKONYE.mjs} +16 -15
  24. package/dist/{chunk-2HKRIUW4.mjs → chunk-2PGNKUXS.mjs} +1 -1
  25. package/dist/{chunk-X4X5KUGQ.mjs → chunk-4QUHWHBD.mjs} +3 -0
  26. package/dist/{chunk-R2NWOCML.mjs → chunk-5FAWKUSU.mjs} +8 -2
  27. package/dist/{chunk-YZJ3W776.mjs → chunk-5U3FFMC7.mjs} +6 -9
  28. package/dist/{chunk-UNM3LPTG.mjs → chunk-7GBCLBMX.mjs} +25 -12
  29. package/dist/{chunk-6V6KATTW.mjs → chunk-7JJTWGHU.mjs} +29 -18
  30. package/dist/{chunk-VE7JFMAN.mjs → chunk-A4GWVZB4.mjs} +3 -3
  31. package/dist/{chunk-2YP2ZNKR.mjs → chunk-AN5IILM2.mjs} +1 -1
  32. package/dist/{chunk-YWNHMIEQ.mjs → chunk-AXXGAOQL.mjs} +2 -2
  33. package/dist/{chunk-2PMSBTXI.mjs → chunk-CD7VQIPA.mjs} +11 -11
  34. package/dist/{chunk-WYDDFRYM.mjs → chunk-CGEJJR5K.mjs} +595 -686
  35. package/dist/{chunk-J5E7MQSS.mjs → chunk-CY33DS7K.mjs} +6 -0
  36. package/dist/{chunk-PPI7PTY6.mjs → chunk-DKOCYXB5.mjs} +10 -4
  37. package/dist/{chunk-ZCZL3STK.mjs → chunk-EA5GGT2Q.mjs} +1 -1
  38. package/dist/{chunk-BSBCIU6C.mjs → chunk-EILZIUOP.mjs} +1 -1
  39. package/dist/{chunk-7VJK6HNE.mjs → chunk-EYL2JACT.mjs} +4 -4
  40. package/dist/{chunk-BFNH5UWD.mjs → chunk-EYTETK3W.mjs} +1 -1
  41. package/dist/{chunk-74K7HGNI.mjs → chunk-FXG2Z3QT.mjs} +3 -2
  42. package/dist/{chunk-SMHXCFRS.mjs → chunk-G3VGLFVH.mjs} +54 -41
  43. package/dist/{chunk-2RQLKDBF.mjs → chunk-GIZFNLKK.mjs} +103 -96
  44. package/dist/{chunk-CU5EFQSB.mjs → chunk-HOERC634.mjs} +1 -1
  45. package/dist/{chunk-AOFGTNG6.mjs → chunk-HQKGZADC.mjs} +6 -1
  46. package/dist/{chunk-LBIOZZPA.mjs → chunk-HWKLNKOY.mjs} +1 -1
  47. package/dist/{chunk-YPDTZXV6.mjs → chunk-I2QEZTVU.mjs} +2 -2
  48. package/dist/{chunk-S2UEWRDA.mjs → chunk-IL5IMREK.mjs} +59 -49
  49. package/dist/{chunk-FTVAORQM.mjs → chunk-IP2QPPWC.mjs} +1 -1
  50. package/dist/{chunk-SCBXRJPV.mjs → chunk-IRO6DO7J.mjs} +1 -1
  51. package/dist/{chunk-YI4CZGTU.mjs → chunk-ITJEYJNB.mjs} +1 -1
  52. package/dist/{chunk-T7G2CURS.mjs → chunk-IVZ6BMDB.mjs} +1 -0
  53. package/dist/{chunk-BM5ZIV5V.mjs → chunk-IXMPYDY2.mjs} +1 -1
  54. package/dist/{chunk-XGJ5DXXG.mjs → chunk-K2HM7KXJ.mjs} +12 -12
  55. package/dist/{chunk-2LPGQWPV.mjs → chunk-KTL6E2WT.mjs} +1 -1
  56. package/dist/{chunk-OHSRRFGN.mjs → chunk-LKVQ5YC6.mjs} +1 -1
  57. package/dist/{chunk-QGCKTVQX.mjs → chunk-LMRZMI7O.mjs} +1 -1
  58. package/dist/{chunk-PHXKD2LR.mjs → chunk-MAKOUE5W.mjs} +1 -1
  59. package/dist/{chunk-Q5DI5VYN.mjs → chunk-MLNUGLGT.mjs} +1 -1
  60. package/dist/{chunk-5M5ZVAWU.mjs → chunk-MSOFJHH3.mjs} +2 -2
  61. package/dist/{chunk-5CE3JPWD.mjs → chunk-NFQXNOP7.mjs} +1 -1
  62. package/dist/{chunk-UWJBDOQD.mjs → chunk-NKVMOKZA.mjs} +41 -29
  63. package/dist/{chunk-NCR5UWRI.mjs → chunk-NY6I2FYO.mjs} +1 -1
  64. package/dist/{chunk-3NJTXRIY.mjs → chunk-OZPB6JBL.mjs} +5 -1
  65. package/dist/{chunk-FPJBF7VS.mjs → chunk-P2O6XTD4.mjs} +1 -1
  66. package/dist/{chunk-EFA7S5L3.mjs → chunk-PGTXMCSV.mjs} +1 -1
  67. package/dist/{chunk-D7H6ZNK4.mjs → chunk-PRLQLEEQ.mjs} +2 -0
  68. package/dist/{chunk-ZODJNBAV.mjs → chunk-R2G2B47Y.mjs} +1 -0
  69. package/dist/{chunk-HUX22ZHT.mjs → chunk-RF75BZNF.mjs} +3 -3
  70. package/dist/{chunk-4RG7UJCT.mjs → chunk-RGP3IXX4.mjs} +1 -1
  71. package/dist/chunk-S4DMV3ZT.mjs +35 -0
  72. package/dist/{chunk-5NQ3X2JI.mjs → chunk-SNDSWB6B.mjs} +1 -1
  73. package/dist/{chunk-EE7SOCEQ.mjs → chunk-SQFZWNYA.mjs} +4 -4
  74. package/dist/{chunk-O74UDEWT.mjs → chunk-TKZK3YPU.mjs} +1 -1
  75. package/dist/{chunk-KSRI5LOF.mjs → chunk-U25RCIX2.mjs} +2 -2
  76. package/dist/{chunk-XTNS2NRD.mjs → chunk-U4R5MBF2.mjs} +1 -1
  77. package/dist/{chunk-CK3VFTZM.mjs → chunk-UKX2FFFV.mjs} +2 -2
  78. package/dist/{chunk-JO6QASTJ.mjs → chunk-V6JXTITD.mjs} +1 -1
  79. package/dist/chunk-VLOA5XAC.mjs +113 -0
  80. package/dist/{chunk-4Q4LIFFO.mjs → chunk-XP3BY6G6.mjs} +1 -1
  81. package/dist/{chunk-6IZUCU7K.mjs → chunk-YSFTQA6Y.mjs} +2 -2
  82. package/dist/{chunk-XKXNQ2KV.mjs → chunk-ZCARHA6C.mjs} +1 -1
  83. package/dist/{chunk-RMEITCLS.mjs → chunk-ZSDEVTFT.mjs} +1 -1
  84. package/dist/{collection-add-products-OJ2EZLC7.mjs → collection-add-products-KEB3ESAK.mjs} +16 -15
  85. package/dist/{collection-create-75ZI5NDG.mjs → collection-create-PTOF33H2.mjs} +2 -2
  86. package/dist/{collection-detail-RMZK523E.mjs → collection-detail-V24IDEZQ.mjs} +18 -17
  87. package/dist/{collection-edit-RD6BDDDI.mjs → collection-edit-WM57WXJ2.mjs} +2 -2
  88. package/dist/{collection-list-BJ3VNZAA.mjs → collection-list-GD2IJYOP.mjs} +19 -18
  89. package/dist/{collection-metadata-R3DI65D3.mjs → collection-metadata-Z2JMXTHW.mjs} +14 -13
  90. package/dist/{customer-create-address-TPSDYZBN.mjs → customer-create-address-JOYBIPPN.mjs} +1 -1
  91. package/dist/{customer-detail-G7G6PYOO.mjs → customer-detail-E7LPLLML.mjs} +18 -17
  92. package/dist/{customer-group-add-customers-ULPWTALS.mjs → customer-group-add-customers-YF2T323Z.mjs} +3 -2
  93. package/dist/{customer-group-detail-XQ32DPQ3.mjs → customer-group-detail-5ZWHOJOD.mjs} +17 -16
  94. package/dist/{customer-group-list-CARES5CM.mjs → customer-group-list-N22GDJVL.mjs} +16 -15
  95. package/dist/{customer-group-metadata-UPAPULMF.mjs → customer-group-metadata-YQCOIVQG.mjs} +2 -1
  96. package/dist/{customer-list-SINCBCOZ.mjs → customer-list-5IWEXYSW.mjs} +5 -4
  97. package/dist/{customer-metadata-5NPUMPZ2.mjs → customer-metadata-JZEJBH4V.mjs} +2 -1
  98. package/dist/{customers-add-customer-group-NLPVKARS.mjs → customers-add-customer-group-LFEUVS5G.mjs} +15 -14
  99. package/dist/{edit-inventory-item-ZPE4MMC4.mjs → edit-inventory-item-UV2Z7SYL.mjs} +1 -1
  100. package/dist/{edit-inventory-item-attributes-KT7BSPZ7.mjs → edit-inventory-item-attributes-BRC3KBYT.mjs} +2 -2
  101. package/dist/{edit-reservation-EKH4RIAX.mjs → edit-reservation-NYGQBFBO.mjs} +7 -2
  102. package/dist/{edit-rules-JRLCVE26.mjs → edit-rules-BCGRJ4FJ.mjs} +15 -14
  103. package/dist/{inventory-create-ZC6HV2FY.mjs → inventory-create-OPYAZF3M.mjs} +20 -15
  104. package/dist/{inventory-detail-WVI4FTTH.mjs → inventory-detail-PAVP7J2W.mjs} +26 -19
  105. package/dist/{inventory-list-YMYF7QVP.mjs → inventory-list-J5VZGQ2M.mjs} +6 -5
  106. package/dist/{inventory-metadata-BLIJBNQS.mjs → inventory-metadata-PMQLZCHW.mjs} +14 -13
  107. package/dist/{inventory-stock-ZCTXWRK6.mjs → inventory-stock-7QXMAX45.mjs} +15 -14
  108. package/dist/{location-create-LUP363ZB.mjs → location-create-22H74MFP.mjs} +1 -1
  109. package/dist/{location-detail-GV3POY4C.mjs → location-detail-IXHZ7DZS.mjs} +15 -14
  110. package/dist/{location-edit-26K26G23.mjs → location-edit-X6JBEWIF.mjs} +2 -2
  111. package/dist/{location-fulfillment-providers-INUQXJYU.mjs → location-fulfillment-providers-3KPC4HQT.mjs} +17 -16
  112. package/dist/location-list-VNEYHAKV.mjs +323 -0
  113. package/dist/{location-sales-channels-2BOIPBBG.mjs → location-sales-channels-66ZE3ZMI.mjs} +5 -4
  114. package/dist/{location-service-zone-create-RPFLBVV4.mjs → location-service-zone-create-D5QSFS3M.mjs} +4 -3
  115. package/dist/{location-service-zone-manage-areas-VEUUGPKF.mjs → location-service-zone-manage-areas-HKCALG4Q.mjs} +4 -3
  116. package/dist/{location-service-zone-shipping-option-create-6KO3QDMQ.mjs → location-service-zone-shipping-option-create-PVQ66CXW.mjs} +24 -16
  117. package/dist/{location-service-zone-shipping-option-edit-TMXNX4VX.mjs → location-service-zone-shipping-option-edit-JYM6GHTA.mjs} +40 -28
  118. package/dist/{location-service-zone-shipping-option-pricing-U2SDK5DE.mjs → location-service-zone-shipping-option-pricing-FLB63UKY.mjs} +3 -2
  119. package/dist/{login-57FIKGXA.mjs → login-DVYOEF5F.mjs} +12 -12
  120. package/dist/manage-locations-RPHTPGRE.mjs +247 -0
  121. package/dist/{order-allocate-items-J3ZHGC22.mjs → order-allocate-items-2RYXQRVK.mjs} +26 -14
  122. package/dist/{order-create-claim-LXKBCAWN.mjs → order-create-claim-FK4LIPAE.mjs} +21 -19
  123. package/dist/{order-create-edit-264PTIEI.mjs → order-create-edit-VGIWYKBB.mjs} +19 -17
  124. package/dist/{order-create-exchange-ZMUVPYM3.mjs → order-create-exchange-BMRCMN5G.mjs} +21 -19
  125. package/dist/{order-create-fulfillment-LE6O3SA5.mjs → order-create-fulfillment-NLGPRK4J.mjs} +20 -13
  126. package/dist/{order-create-refund-B7BO2EJL.mjs → order-create-refund-TEMK6IEQ.mjs} +51 -15
  127. package/dist/{order-create-return-GVA6M2RY.mjs → order-create-return-6FHAU3OZ.mjs} +11 -9
  128. package/dist/{order-create-shipment-UOPCS5N7.mjs → order-create-shipment-WCEZXWM6.mjs} +14 -12
  129. package/dist/{order-detail-SG7AXBRS.mjs → order-detail-QABTBPGX.mjs} +50 -41
  130. package/dist/{order-edit-billing-address-RPPJ4Z36.mjs → order-edit-billing-address-MWF3L6GK.mjs} +13 -13
  131. package/dist/{order-edit-email-A7D5HTU6.mjs → order-edit-email-UDJOGYPP.mjs} +12 -12
  132. package/dist/{order-edit-shipping-address-LXKC5CJE.mjs → order-edit-shipping-address-O46U65WM.mjs} +13 -13
  133. package/dist/{order-list-ZCMNSZYB.mjs → order-list-VDUUHTSU.mjs} +11 -10
  134. package/dist/{order-metadata-KS47UOEE.mjs → order-metadata-SHCFZWCA.mjs} +14 -13
  135. package/dist/{order-receive-return-PDU2YVLT.mjs → order-receive-return-MC4DIRK3.mjs} +15 -14
  136. package/dist/{order-request-transfer-WMQKDLDF.mjs → order-request-transfer-MELQKMC4.mjs} +13 -13
  137. package/dist/{price-list-configuration-435QDWB2.mjs → price-list-configuration-VACKCKJF.mjs} +6 -5
  138. package/dist/{price-list-create-QZSB4W5Z.mjs → price-list-create-TZUDGP2J.mjs} +40 -25
  139. package/dist/{price-list-detail-2FMINPFT.mjs → price-list-detail-DX74DH6G.mjs} +19 -18
  140. package/dist/{price-list-edit-ZGBOZYSC.mjs → price-list-edit-G73ZIU2Y.mjs} +51 -31
  141. package/dist/{price-list-list-C6NEB2R4.mjs → price-list-list-QYZSJNF5.mjs} +8 -7
  142. package/dist/{price-list-prices-add-WYK2QBAI.mjs → price-list-prices-add-IHMS7HIH.mjs} +29 -21
  143. package/dist/{price-list-prices-edit-ENB4GJZT.mjs → price-list-prices-edit-R53ITSDD.mjs} +5 -4
  144. package/dist/{product-attributes-KDXI2RNP.mjs → product-attributes-AULEVQ5C.mjs} +20 -18
  145. package/dist/{product-create-TVYPK4VC.mjs → product-create-2RPJZR2Q.mjs} +28 -22
  146. package/dist/{product-create-option-3JR35UZ5.mjs → product-create-option-OW2LMVST.mjs} +1 -1
  147. package/dist/{product-create-variant-6YWLDA2X.mjs → product-create-variant-NKU6J7NG.mjs} +32 -19
  148. package/dist/{product-detail-RFKXMYE5.mjs → product-detail-NNTUGXU5.mjs} +22 -20
  149. package/dist/{product-edit-5FNY7HG4.mjs → product-edit-6WRMNGPM.mjs} +42 -29
  150. package/dist/{product-edit-option-VNDGZ37A.mjs → product-edit-option-OM56DLU6.mjs} +1 -1
  151. package/dist/{product-export-BEAUMFAZ.mjs → product-export-W6KP2RGO.mjs} +14 -14
  152. package/dist/{product-import-SOX4UJPM.mjs → product-import-P76MITMC.mjs} +15 -14
  153. package/dist/{product-list-ZVXATJRE.mjs → product-list-7H64APWI.mjs} +20 -19
  154. package/dist/{product-media-JPU23SPH.mjs → product-media-TRKQTA4G.mjs} +5 -5
  155. package/dist/{product-metadata-QRRCHZZB.mjs → product-metadata-2G6DWHWG.mjs} +14 -13
  156. package/dist/{product-organization-QTWB7VMB.mjs → product-organization-43YS5OUI.mjs} +21 -19
  157. package/dist/{product-prices-PCBMYYGV.mjs → product-prices-XLY5TUSJ.mjs} +3 -2
  158. package/dist/{product-sales-channels-UGPAXFAV.mjs → product-sales-channels-KSIHPDJG.mjs} +5 -4
  159. package/dist/{product-shipping-profile-Q6UX6ZNJ.mjs → product-shipping-profile-SFU2PVR4.mjs} +20 -18
  160. package/dist/{product-stock-TSAIHVY6.mjs → product-stock-GAWLELSE.mjs} +17 -15
  161. package/dist/{product-tag-create-5NZJS2D2.mjs → product-tag-create-FVU5JRL3.mjs} +12 -12
  162. package/dist/{product-tag-detail-3XHUROBO.mjs → product-tag-detail-VMVPWMZK.mjs} +22 -21
  163. package/dist/{product-tag-edit-YYOOHKGG.mjs → product-tag-edit-OWI3OFVF.mjs} +12 -12
  164. package/dist/{product-tag-list-5XTTMNOA.mjs → product-tag-list-YPIZII2D.mjs} +22 -21
  165. package/dist/{product-tag-metadata-YAD3MPWF.mjs → product-tag-metadata-B4YBSHOH.mjs} +14 -13
  166. package/dist/{product-type-detail-MNTAHQKJ.mjs → product-type-detail-243HFRBD.mjs} +18 -17
  167. package/dist/{product-type-list-6ZIWPIUH.mjs → product-type-list-MJLAGQYC.mjs} +5 -4
  168. package/dist/{product-type-metadata-HWR3WBGT.mjs → product-type-metadata-4YE4UEOF.mjs} +14 -13
  169. package/dist/{product-variant-detail-DKFAG3KO.mjs → product-variant-detail-LJE3IFNE.mjs} +17 -16
  170. package/dist/{product-variant-edit-EZENYVAN.mjs → product-variant-edit-IGJIWVQQ.mjs} +18 -14
  171. package/dist/{product-variant-manage-inventory-items-TM3VAHBJ.mjs → product-variant-manage-inventory-items-2M2KTPNK.mjs} +2 -2
  172. package/dist/{product-variant-metadata-S7QENSUG.mjs → product-variant-metadata-F6BGFMMS.mjs} +14 -13
  173. package/dist/{profile-detail-ROG22HHL.mjs → profile-detail-XYAQ2G36.mjs} +3 -2
  174. package/dist/{profile-edit-HSUQIQQH.mjs → profile-edit-7WD4FTRH.mjs} +31 -19
  175. package/dist/{promotion-add-campaign-7R26KU2U.mjs → promotion-add-campaign-YREHV6TQ.mjs} +9 -21
  176. package/dist/{promotion-create-O3KUSPIU.mjs → promotion-create-YGHBTAFC.mjs} +30 -18
  177. package/dist/{promotion-detail-5DU6ULJG.mjs → promotion-detail-BIC23HFR.mjs} +127 -77
  178. package/dist/{promotion-edit-details-HQLYX4X4.mjs → promotion-edit-details-A2UUSAZA.mjs} +10 -2
  179. package/dist/{promotion-list-Q2FOGORE.mjs → promotion-list-WDHOSD55.mjs} +9 -8
  180. package/dist/{refund-reason-create-NSZFGXWI.mjs → refund-reason-create-YCWLRRBW.mjs} +12 -12
  181. package/dist/{refund-reason-edit-RKUSPQCL.mjs → refund-reason-edit-E2HDAQZI.mjs} +1 -1
  182. package/dist/{refund-reason-list-2F5PFERT.mjs → refund-reason-list-7GANH7KL.mjs} +107 -134
  183. package/dist/{region-add-countries-Y4YAHDUZ.mjs → region-add-countries-6GSF4CKJ.mjs} +3 -2
  184. package/dist/{region-create-5Y3GIQBV.mjs → region-create-AFZTSM3N.mjs} +34 -18
  185. package/dist/{region-detail-CWRFM6P3.mjs → region-detail-PB7EUSTD.mjs} +5 -4
  186. package/dist/{region-edit-JWQWCLM3.mjs → region-edit-DSYIUI7W.mjs} +25 -9
  187. package/dist/{region-list-FQNI7F37.mjs → region-list-52LF5S4S.mjs} +5 -4
  188. package/dist/{region-metadata-G3JH5ZN6.mjs → region-metadata-L5K6YENH.mjs} +14 -13
  189. package/dist/{reservation-create-7RFXWDXB.mjs → reservation-create-FV7QXGL3.mjs} +3 -3
  190. package/dist/{reservation-detail-PJXS67UM.mjs → reservation-detail-USDAVGWH.mjs} +16 -15
  191. package/dist/{reservation-list-UOC7RNRZ.mjs → reservation-list-NOWJUMXV.mjs} +7 -6
  192. package/dist/{reservation-metadata-UCKQB66O.mjs → reservation-metadata-47C6RWYS.mjs} +14 -13
  193. package/dist/{reset-password-5KIEBJHN.mjs → reset-password-LCVV4NOA.mjs} +1 -1
  194. package/dist/{return-reason-list-OGFYWMC5.mjs → return-reason-list-FW7OYUOW.mjs} +7 -6
  195. package/dist/{sales-channel-add-products-CSMNFGHD.mjs → sales-channel-add-products-NGPN4IRB.mjs} +16 -15
  196. package/dist/{sales-channel-create-3MPOMVPD.mjs → sales-channel-create-NODWGJDD.mjs} +4 -2
  197. package/dist/{sales-channel-detail-ZSA3HNWW.mjs → sales-channel-detail-IWWRX2Y3.mjs} +18 -17
  198. package/dist/{sales-channel-edit-LSLAM7A4.mjs → sales-channel-edit-ALIRERVH.mjs} +4 -2
  199. package/dist/{sales-channel-list-X5ADP34V.mjs → sales-channel-list-LCPDOQK3.mjs} +16 -15
  200. package/dist/{sales-channel-metadata-ABWIDI3B.mjs → sales-channel-metadata-VZ4TINYG.mjs} +14 -13
  201. package/dist/{shipping-option-type-create-Q2X5OMJS.mjs → shipping-option-type-create-NOMFII5B.mjs} +12 -12
  202. package/dist/{shipping-option-type-detail-VT3Y5QQ4.mjs → shipping-option-type-detail-6XIJRVZ5.mjs} +16 -15
  203. package/dist/{shipping-option-type-edit-IA3EER2N.mjs → shipping-option-type-edit-PEDYL6JQ.mjs} +12 -12
  204. package/dist/{shipping-option-type-list-JZPKAL3H.mjs → shipping-option-type-list-GI5GBLIS.mjs} +18 -17
  205. package/dist/{shipping-profile-detail-FDUPDSH4.mjs → shipping-profile-detail-FS46IJZP.mjs} +3 -2
  206. package/dist/{shipping-profile-metadata-EYXBWBF2.mjs → shipping-profile-metadata-ZOR7MQFF.mjs} +14 -13
  207. package/dist/{shipping-profiles-list-ZHJEUIKJ.mjs → shipping-profiles-list-QFOG5IDH.mjs} +5 -4
  208. package/dist/{store-add-currencies-R26SVHT5.mjs → store-add-currencies-W4MWOALR.mjs} +5 -2
  209. package/dist/{store-detail-LI72QMUZ.mjs → store-detail-MZAKRCTC.mjs} +17 -16
  210. package/dist/{store-edit-EU55TNFU.mjs → store-edit-3DU5MC25.mjs} +24 -12
  211. package/dist/{store-metadata-ZITLAS5H.mjs → store-metadata-GO4TXB3W.mjs} +14 -13
  212. package/dist/{tax-region-create-IU2R5VIY.mjs → tax-region-create-KDCNQGPC.mjs} +15 -15
  213. package/dist/{tax-region-detail-6FHD35LB.mjs → tax-region-detail-O6U6ZVDB.mjs} +19 -18
  214. package/dist/{tax-region-edit-O2WJXYIE.mjs → tax-region-edit-T4B5DM55.mjs} +13 -13
  215. package/dist/{tax-region-list-NMM3LBPN.mjs → tax-region-list-SQQE2GUU.mjs} +6 -5
  216. package/dist/{tax-region-province-create-GIIU2G7K.mjs → tax-region-province-create-SBRFGWN3.mjs} +2 -2
  217. package/dist/{tax-region-province-detail-YDBU4CUU.mjs → tax-region-province-detail-XH45ZAOJ.mjs} +18 -17
  218. package/dist/{tax-region-tax-override-create-EF3LLZWM.mjs → tax-region-tax-override-create-MSL7HEM6.mjs} +25 -20
  219. package/dist/{tax-region-tax-override-edit-2DG3J6CO.mjs → tax-region-tax-override-edit-AO6CYS62.mjs} +25 -20
  220. package/dist/{tax-region-tax-rate-create-Z43M3JTQ.mjs → tax-region-tax-rate-create-JIV5FXUD.mjs} +1 -1
  221. package/dist/{tax-region-tax-rate-edit-RBF5D2MK.mjs → tax-region-tax-rate-edit-WU2ZQLZQ.mjs} +1 -1
  222. package/dist/{user-detail-VIVFFLOW.mjs → user-detail-ZFW3YF3M.mjs} +4 -3
  223. package/dist/{user-invite-W26LOOW7.mjs → user-invite-KUH4AI2L.mjs} +4 -3
  224. package/dist/{user-list-3YFYZFSK.mjs → user-list-G4H2RSDX.mjs} +4 -3
  225. package/dist/{user-metadata-QUIFIM5G.mjs → user-metadata-2CR2AK3U.mjs} +14 -13
  226. package/dist/{workflow-execution-detail-PVSQ2VGE.mjs → workflow-execution-detail-ZD7OVL4W.mjs} +18 -14
  227. package/dist/{workflow-execution-list-5J3DQQRD.mjs → workflow-execution-list-5WL4L464.mjs} +4 -3
  228. package/package.json +9 -9
  229. package/src/components/common/action-menu/action-menu.tsx +3 -1
  230. package/src/components/common/customer-info/customer-info.tsx +1 -1
  231. package/src/components/common/json-view-section/json-view-section.tsx +4 -1
  232. package/src/components/common/sidebar-link/sidebar-link.tsx +1 -1
  233. package/src/components/common/switch-box/switch-box.tsx +2 -0
  234. package/src/components/data-grid/components/data-grid-root.tsx +9 -3
  235. package/src/components/data-grid/components/data-grid-toggleable-number-cell.tsx +2 -1
  236. package/src/components/data-table/data-table.tsx +64 -46
  237. package/src/components/filtering/filter-group/filter-group.tsx +5 -1
  238. package/src/components/filtering/order-by/order-by.tsx +4 -1
  239. package/src/components/forms/address-form/address-form.tsx +7 -2
  240. package/src/components/forms/metadata-form/metadata-form.tsx +6 -3
  241. package/src/components/inputs/combobox/combobox.tsx +11 -11
  242. package/src/components/inputs/country-select/country-select.tsx +1 -1
  243. package/src/components/inputs/province-select/province-select.tsx +1 -1
  244. package/src/components/layout/main-layout/main-layout.tsx +7 -5
  245. package/src/components/layout/shell/shell.tsx +6 -6
  246. package/src/components/layout/user-menu/user-menu.tsx +12 -10
  247. package/src/components/search/search.tsx +5 -3
  248. package/src/components/table/data-table/data-table-order-by/data-table-order-by.tsx +4 -1
  249. package/src/components/table/data-table/data-table-root/data-table-root.tsx +3 -3
  250. package/src/dashboard-app/forms/form-extension-zone/form-extension-zone.tsx +1 -1
  251. package/src/hooks/api/campaigns.tsx +1 -0
  252. package/src/hooks/api/inventory.tsx +3 -0
  253. package/src/hooks/api/refund-reasons.tsx +7 -16
  254. package/src/hooks/table/columns/use-refund-reason-table-columns.tsx +20 -16
  255. package/src/hooks/use-document-direction.tsx +54 -0
  256. package/src/i18n/translations/$schema.json +27 -2
  257. package/src/i18n/translations/en.json +10 -4
  258. package/src/providers/i18n-provider/i18n-provider.tsx +9 -4
  259. package/src/routes/campaigns/campaign-detail/components/campaign-budget/campaign-budget.tsx +3 -3
  260. package/src/routes/campaigns/common/components/create-campaign-form-fields/create-campaign-form-fields.tsx +4 -1
  261. package/src/routes/categories/category-create/components/create-category-form/create-category-details.tsx +12 -3
  262. package/src/routes/categories/category-create/components/create-category-form/create-category-form.tsx +4 -3
  263. package/src/routes/categories/category-detail/components/category-organize-section/category-organize-section.tsx +1 -1
  264. package/src/routes/categories/category-edit/components/edit-category-form/edit-category-form.tsx +12 -3
  265. package/src/routes/inventory/inventory-create/components/inventory-create-form/inventory-create-form.tsx +3 -1
  266. package/src/routes/inventory/inventory-detail/components/inventory-item-variants/variants-section.tsx +1 -1
  267. package/src/routes/inventory/inventory-detail/components/location-levels-table/use-location-list-table-columns.tsx +7 -0
  268. package/src/routes/inventory/inventory-detail/components/manage-locations/components/location-item.tsx +2 -2
  269. package/src/routes/inventory/inventory-detail/components/manage-locations/components/location-search-input.tsx +34 -0
  270. package/src/routes/inventory/inventory-detail/components/manage-locations/components/manage-locations-form.tsx +127 -140
  271. package/src/routes/locations/location-edit/components/edit-location-form/edit-location-form.tsx +1 -1
  272. package/src/routes/locations/location-list/index.ts +0 -1
  273. package/src/routes/locations/location-list/location-list.tsx +52 -14
  274. package/src/routes/locations/location-list/use-location-list-table-columns.tsx +185 -0
  275. package/src/routes/locations/location-list/use-location-list-table-query.tsx +22 -0
  276. package/src/routes/locations/location-service-zone-shipping-option-create/components/create-shipping-options-form/create-shipping-option-details-form.tsx +4 -1
  277. package/src/routes/locations/location-service-zone-shipping-option-create/components/create-shipping-options-form/create-shipping-options-form.tsx +3 -1
  278. package/src/routes/locations/location-service-zone-shipping-option-edit/components/edit-region-form/edit-shipping-option-form.tsx +7 -2
  279. package/src/routes/orders/order-allocate-items/components/order-create-fulfillment-form/order-allocate-items-form.tsx +7 -2
  280. package/src/routes/orders/order-create-claim/components/claim-create-form/claim-create-form.tsx +2 -1
  281. package/src/routes/orders/order-create-edit/components/order-edit-create-form/order-edit-create-form.tsx +2 -1
  282. package/src/routes/orders/order-create-exchange/components/exchange-create-form/exchange-create-form.tsx +2 -1
  283. package/src/routes/orders/order-create-fulfillment/components/order-create-fulfillment-form/order-create-fulfillment-form.tsx +5 -1
  284. package/src/routes/orders/order-create-refund/components/create-refund-form/create-refund-form.tsx +42 -1
  285. package/src/routes/orders/order-create-return/components/return-create-form/return-create-form.tsx +2 -1
  286. package/src/routes/orders/order-create-shipment/components/order-create-shipment-form/order-create-shipment-form.tsx +2 -0
  287. package/src/routes/orders/order-detail/components/order-activity-section/order-timeline.tsx +13 -5
  288. package/src/routes/orders/order-receive-return/components/order-receive-return-form/order-receive-return-form.tsx +2 -1
  289. package/src/routes/price-lists/price-list-create/components/price-list-create-form/price-list-create-form.tsx +3 -1
  290. package/src/routes/price-lists/price-list-create/components/price-list-create-form/price-list-details-form.tsx +8 -2
  291. package/src/routes/price-lists/price-list-edit/components/price-list-edit-form/edit-price-list-form.tsx +12 -3
  292. package/src/routes/price-lists/price-list-prices-add/components/price-list-prices-add-form/price-list-prices-add-form.tsx +10 -5
  293. package/src/routes/product-variants/product-variant-edit/components/product-edit-variant-form/product-edit-variant-form.tsx +4 -0
  294. package/src/routes/products/common/components/category-combobox/category-combobox.tsx +11 -11
  295. package/src/routes/products/product-create/components/product-create-form/product-create-form.tsx +3 -1
  296. package/src/routes/products/product-create-variant/components/create-product-variant-form/create-product-variant-form.tsx +10 -5
  297. package/src/routes/products/product-create-variant/components/create-product-variant-form/details-tab.tsx +6 -1
  298. package/src/routes/products/product-edit/components/edit-product-form/edit-product-form.tsx +7 -2
  299. package/src/routes/products/product-media/components/product-media-gallery/product-media-gallery.tsx +2 -2
  300. package/src/routes/products/product-stock/hooks/use-product-stock-columns.tsx +2 -1
  301. package/src/routes/profile/profile-edit/components/edit-profile-form/edit-profile-form.tsx +9 -3
  302. package/src/routes/promotions/common/edit-rules/components/rules-form-field/rules-form-field.tsx +4 -0
  303. package/src/routes/promotions/promotion-add-campaign/components/add-campaign-promotion-form/add-campaign-promotion-form.tsx +48 -49
  304. package/src/routes/promotions/promotion-add-campaign/promotion-add-campaign.tsx +4 -21
  305. package/src/routes/promotions/promotion-create/components/create-promotion-form/create-promotion-form.tsx +12 -3
  306. package/src/routes/promotions/promotion-edit-details/components/edit-promotion-form/edit-promotion-details-form.tsx +6 -1
  307. package/src/routes/refund-reasons/refund-reason-list/components/refund-reason-list-table/refund-reason-list-table.tsx +85 -78
  308. package/src/routes/regions/region-create/components/create-region-form/create-region-form.tsx +11 -2
  309. package/src/routes/regions/region-edit/components/edit-region-form/edit-region-form.tsx +11 -2
  310. package/src/routes/reservations/reservation-detail/components/edit-reservation/components/edit-reservation-form.tsx +3 -1
  311. package/src/routes/sales-channels/sales-channel-create/components/create-sales-channel-form/create-sales-channel-form.tsx +2 -0
  312. package/src/routes/sales-channels/sales-channel-edit/components/edit-sales-channel-form/edit-sales-channel-form.tsx +2 -0
  313. package/src/routes/store/store-add-currencies/components/add-currencies-form/add-currencies-form.tsx +2 -0
  314. package/src/routes/store/store-edit/components/edit-store-form/edit-store-form.tsx +7 -2
  315. package/src/routes/tax-regions/tax-region-tax-override-create/components/tax-region-override-create-form/tax-region-tax-override-create.tsx +3 -1
  316. package/src/routes/tax-regions/tax-region-tax-override-edit/components/tax-region-tax-override-edit-form/tax-region-tax-override-edit-form.tsx +3 -1
  317. package/src/routes/workflow-executions/workflow-execution-detail/components/workflow-execution-timeline-section/workflow-execution-timeline-section.tsx +3 -2
  318. package/dist/chunk-BKJC5BGQ.mjs +0 -53
  319. package/dist/location-list-BKK2PAKF.mjs +0 -297
  320. package/dist/manage-locations-3TBIUSHP.mjs +0 -236
  321. package/src/routes/locations/location-list/components/location-list-header/index.ts +0 -1
  322. package/src/routes/locations/location-list/components/location-list-header/location-list-header.tsx +0 -21
  323. package/src/routes/locations/location-list/loader.ts +0 -36
  324. package/src/routes/refund-reasons/common/hooks/use-delete-refund-reason-action.tsx +0 -34
@@ -251,7 +251,7 @@ const ComboboxImpl = <T extends Value = string>(
251
251
  e.preventDefault()
252
252
  handleValueChange(isArrayValue ? ([] as unknown as T) : undefined)
253
253
  }}
254
- className="bg-ui-bg-base hover:bg-ui-bg-base-hover txt-compact-small-plus text-ui-fg-subtle focus-within:border-ui-fg-interactive transition-fg absolute left-0.5 top-0.5 z-[1] flex h-[28px] items-center rounded-[4px] border py-[3px] pl-1.5 pr-1 outline-none"
254
+ className="bg-ui-bg-base hover:bg-ui-bg-base-hover txt-compact-small-plus text-ui-fg-subtle focus-within:border-ui-fg-interactive transition-fg absolute start-0.5 top-0.5 z-[1] flex h-[28px] items-center rounded-[4px] border py-[3px] ps-1.5 pe-1 outline-none"
255
255
  >
256
256
  <span className="tabular-nums">{selectedValues.length}</span>
257
257
  <XMarkMini className="text-ui-fg-muted" />
@@ -263,8 +263,8 @@ const ComboboxImpl = <T extends Value = string>(
263
263
  className={clx(
264
264
  "pointer-events-none absolute inset-y-0 flex size-full items-center",
265
265
  {
266
- "left-[calc(var(--tag-width)+8px)]": showTag,
267
- "left-2": !showTag,
266
+ "start-[calc(var(--tag-width)+8px)]": showTag,
267
+ "start-2": !showTag,
268
268
  }
269
269
  )}
270
270
  >
@@ -278,8 +278,8 @@ const ComboboxImpl = <T extends Value = string>(
278
278
  className={clx(
279
279
  "pointer-events-none absolute inset-y-0 flex size-full items-center overflow-hidden",
280
280
  {
281
- "left-[calc(var(--tag-width)+8px)]": showTag,
282
- "left-2": !showTag,
281
+ "start-[calc(var(--tag-width)+8px)]": showTag,
282
+ "start-2": !showTag,
283
283
  }
284
284
  )}
285
285
  >
@@ -293,12 +293,12 @@ const ComboboxImpl = <T extends Value = string>(
293
293
  ref={comboboxRef}
294
294
  onFocus={() => setOpen(true)}
295
295
  className={clx(
296
- "txt-compact-small text-ui-fg-base !placeholder:text-ui-fg-muted transition-fg size-full cursor-pointer bg-transparent pl-2 pr-8 outline-none focus:cursor-text",
296
+ "txt-compact-small text-ui-fg-base !placeholder:text-ui-fg-muted transition-fg size-full cursor-pointer bg-transparent ps-2 pe-8 outline-none focus:cursor-text",
297
297
  "hover:bg-ui-bg-field-hover",
298
298
  {
299
299
  "opacity-0": hideInput,
300
- "pl-2": !showTag,
301
- "pl-[calc(var(--tag-width)+8px)]": showTag,
300
+ "ps-2": !showTag,
301
+ "ps-[calc(var(--tag-width)+8px)]": showTag,
302
302
  }
303
303
  )}
304
304
  placeholder={hidePlaceholder ? undefined : placeholder}
@@ -312,7 +312,7 @@ const ComboboxImpl = <T extends Value = string>(
312
312
  e.preventDefault()
313
313
  handleValueChange(undefined)
314
314
  }}
315
- className="bg-ui-bg-base hover:bg-ui-bg-base-hover txt-compact-small-plus text-ui-fg-subtle focus-within:border-ui-fg-interactive transition-fg absolute right-[28px] top-0.5 z-[1] flex h-[28px] items-center rounded-[4px] border px-1.5 py-[2px] outline-none"
315
+ className="bg-ui-bg-base hover:bg-ui-bg-base-hover txt-compact-small-plus text-ui-fg-subtle focus-within:border-ui-fg-interactive transition-fg absolute end-[28px] top-0.5 z-[1] flex h-[28px] items-center rounded-[4px] border px-1.5 py-[2px] outline-none"
316
316
  >
317
317
  <XMarkMini className="text-ui-fg-muted" />
318
318
  </button>
@@ -323,7 +323,7 @@ const ComboboxImpl = <T extends Value = string>(
323
323
  <button
324
324
  {...props}
325
325
  type="button"
326
- className="text-ui-fg-muted transition-fg hover:bg-ui-bg-field-hover absolute right-0 flex size-8 items-center justify-center rounded-r outline-none"
326
+ className="text-ui-fg-muted transition-fg hover:bg-ui-bg-field-hover absolute end-0 flex size-8 items-center justify-center rounded-r outline-none"
327
327
  >
328
328
  <TrianglesMini />
329
329
  </button>
@@ -341,7 +341,7 @@ const ComboboxImpl = <T extends Value = string>(
341
341
  "max-h-[200px] overflow-y-auto",
342
342
  "data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95",
343
343
  "data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95",
344
- "data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2"
344
+ "data-[side=bottom]:slide-in-from-top-2 data-[side=start]:slide-in-from-end-2 data-[side=end]:slide-in-from-start-2 data-[side=top]:slide-in-from-bottom-2"
345
345
  )}
346
346
  style={{
347
347
  pointerEvents: open ? "auto" : "none",
@@ -33,7 +33,7 @@ export const CountrySelect = forwardRef<
33
33
  <div className="relative">
34
34
  <TrianglesMini
35
35
  className={clx(
36
- "text-ui-fg-muted transition-fg pointer-events-none absolute right-2 top-1/2 -translate-y-1/2",
36
+ "text-ui-fg-muted transition-fg pointer-events-none absolute end-2 top-1/2 -translate-y-1/2",
37
37
  {
38
38
  "text-ui-fg-disabled": disabled,
39
39
  }
@@ -76,7 +76,7 @@ export const ProvinceSelect = forwardRef<
76
76
  <div className="relative">
77
77
  <TrianglesMini
78
78
  className={clx(
79
- "text-ui-fg-muted transition-fg pointer-events-none absolute right-2 top-1/2 -translate-y-1/2",
79
+ "text-ui-fg-muted transition-fg pointer-events-none absolute end-2 top-1/2 -translate-y-1/2",
80
80
  {
81
81
  "text-ui-fg-disabled": disabled,
82
82
  }
@@ -29,6 +29,7 @@ import { queryClient } from "../../../lib/query-client"
29
29
  import { useExtension } from "../../../providers/extension-provider"
30
30
  import { useSearch } from "../../../providers/search-provider"
31
31
  import { UserMenu } from "../user-menu"
32
+ import { useDocumentDirection } from "../../../hooks/use-document-direction"
32
33
 
33
34
  export const MainLayout = () => {
34
35
  return (
@@ -94,7 +95,7 @@ const Logout = () => {
94
95
  const Header = () => {
95
96
  const { t } = useTranslation()
96
97
  const { store, isPending, isError, error } = useStore()
97
-
98
+ const direction = useDocumentDirection()
98
99
  const name = store?.name
99
100
  const fallback = store?.name?.slice(0, 1).toUpperCase()
100
101
 
@@ -106,11 +107,12 @@ const Header = () => {
106
107
 
107
108
  return (
108
109
  <div className="w-full p-3">
109
- <DropdownMenu>
110
+ <DropdownMenu
111
+ dir={direction}>
110
112
  <DropdownMenu.Trigger
111
113
  disabled={!isLoaded}
112
114
  className={clx(
113
- "bg-ui-bg-subtle transition-fg grid w-full grid-cols-[24px_1fr_15px] items-center gap-x-3 rounded-md p-0.5 pr-2 outline-none",
115
+ "bg-ui-bg-subtle transition-fg grid w-full grid-cols-[24px_1fr_15px] items-center gap-x-3 rounded-md p-0.5 pe-2 outline-none",
114
116
  "hover:bg-ui-bg-subtle-hover",
115
117
  "data-[state=open]:bg-ui-bg-subtle-hover",
116
118
  "focus-visible:shadow-borders-focus"
@@ -121,7 +123,7 @@ const Header = () => {
121
123
  ) : (
122
124
  <Skeleton className="h-6 w-6 rounded-md" />
123
125
  )}
124
- <div className="block overflow-hidden text-left">
126
+ <div className="block overflow-hidden text-start">
125
127
  {name ? (
126
128
  <Text
127
129
  size="small"
@@ -267,7 +269,7 @@ const Searchbar = () => {
267
269
  )}
268
270
  >
269
271
  <MagnifyingGlass />
270
- <div className="flex-1 text-left">
272
+ <div className="flex-1 text-start">
271
273
  <Text size="small" leading="compact" weight="plus">
272
274
  {t("app.search.label")}
273
275
  </Text>
@@ -156,7 +156,7 @@ const Breadcrumbs = () => {
156
156
  )}
157
157
  {!isLast && (
158
158
  <span className="mx-2">
159
- <TriangleRightMini />
159
+ <TriangleRightMini className="rtl:rotate-180" />
160
160
  </span>
161
161
  )}
162
162
  </li>
@@ -177,7 +177,7 @@ const ToggleSidebar = () => {
177
177
  onClick={() => toggle("desktop")}
178
178
  size="small"
179
179
  >
180
- <SidebarLeft className="text-ui-fg-muted" />
180
+ <SidebarLeft className="text-ui-fg-muted rtl:rotate-180" />
181
181
  </IconButton>
182
182
  <IconButton
183
183
  className="hidden max-lg:flex"
@@ -185,7 +185,7 @@ const ToggleSidebar = () => {
185
185
  onClick={() => toggle("mobile")}
186
186
  size="small"
187
187
  >
188
- <SidebarLeft className="text-ui-fg-muted" />
188
+ <SidebarLeft className="text-ui-fg-muted rtl:rotate-180" />
189
189
  </IconButton>
190
190
  </div>
191
191
  )
@@ -210,7 +210,7 @@ const DesktopSidebarContainer = ({ children }: PropsWithChildren) => {
210
210
 
211
211
  return (
212
212
  <div
213
- className={clx("hidden h-screen w-[220px] border-r", {
213
+ className={clx("hidden h-screen w-[220px] border-e", {
214
214
  "lg:flex": desktop,
215
215
  })}
216
216
  >
@@ -234,8 +234,8 @@ const MobileSidebarContainer = ({ children }: PropsWithChildren) => {
234
234
  />
235
235
  <RadixDialog.Content
236
236
  className={clx(
237
- "bg-ui-bg-subtle shadow-elevation-modal fixed inset-y-2 left-2 flex w-full max-w-[304px] flex-col overflow-hidden rounded-lg border-r",
238
- "data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:slide-out-to-left-1/2 data-[state=open]:slide-in-from-left-1/2 duration-200"
237
+ "bg-ui-bg-subtle shadow-elevation-modal fixed inset-y-2 start-2 flex w-full max-w-[304px] flex-col overflow-hidden rounded-lg border-r",
238
+ "data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:slide-out-to-start-1/2 data-[state=open]:slide-in-from-start-1/2 duration-200"
239
239
  )}
240
240
  >
241
241
  <div className="p-3">
@@ -29,10 +29,12 @@ import { useLogout, useMe } from "../../../hooks/api"
29
29
  import { queryClient } from "../../../lib/query-client"
30
30
  import { useGlobalShortcuts } from "../../../providers/keybind-provider/hooks"
31
31
  import { useTheme } from "../../../providers/theme-provider"
32
+ import { useDocumentDirection } from "../../../hooks/use-document-direction"
32
33
 
33
34
  export const UserMenu = () => {
34
35
  const { t } = useTranslation()
35
36
  const location = useLocation()
37
+ const direction = useDocumentDirection()
36
38
 
37
39
  const [openMenu, setOpenMenu] = useState(false)
38
40
  const [openModal, setOpenModal] = useState(false)
@@ -44,33 +46,33 @@ export const UserMenu = () => {
44
46
 
45
47
  return (
46
48
  <div>
47
- <DropdownMenu open={openMenu} onOpenChange={setOpenMenu}>
49
+ <DropdownMenu dir={direction} open={openMenu} onOpenChange={setOpenMenu}>
48
50
  <UserBadge />
49
51
  <DropdownMenu.Content className="min-w-[var(--radix-dropdown-menu-trigger-width)] max-w-[var(--radix-dropdown-menu-trigger-width)]">
50
52
  <UserItem />
51
53
  <DropdownMenu.Separator />
52
54
  <DropdownMenu.Item asChild>
53
55
  <Link to="/settings/profile" state={{ from: location.pathname }}>
54
- <UserIcon className="text-ui-fg-subtle mr-2" />
56
+ <UserIcon className="text-ui-fg-subtle me-2" />
55
57
  {t("app.menus.user.profileSettings")}
56
58
  </Link>
57
59
  </DropdownMenu.Item>
58
60
  <DropdownMenu.Separator />
59
61
  <DropdownMenu.Item asChild>
60
62
  <Link to="https://docs.medusajs.com" target="_blank">
61
- <BookOpen className="text-ui-fg-subtle mr-2" />
63
+ <BookOpen className="text-ui-fg-subtle me-2" />
62
64
  {t("app.menus.user.documentation")}
63
65
  </Link>
64
66
  </DropdownMenu.Item>
65
67
  <DropdownMenu.Item asChild>
66
68
  <Link to="https://medusajs.com/changelog/" target="_blank">
67
- <TimelineVertical className="text-ui-fg-subtle mr-2" />
69
+ <TimelineVertical className="text-ui-fg-subtle me-2" />
68
70
  {t("app.menus.user.changelog")}
69
71
  </Link>
70
72
  </DropdownMenu.Item>
71
73
  <DropdownMenu.Separator />
72
74
  <DropdownMenu.Item onClick={toggleModal}>
73
- <Keyboard className="text-ui-fg-subtle mr-2" />
75
+ <Keyboard className="text-ui-fg-subtle me-2" />
74
76
  {t("app.menus.user.shortcuts")}
75
77
  </DropdownMenu.Item>
76
78
  <ThemeToggle />
@@ -93,7 +95,7 @@ const UserBadge = () => {
93
95
 
94
96
  if (isPending) {
95
97
  return (
96
- <button className="shadow-borders-base flex max-w-[192px] select-none items-center gap-x-2 overflow-hidden text-ellipsis whitespace-nowrap rounded-full py-1 pl-1 pr-2.5">
98
+ <button className="shadow-borders-base flex max-w-[192px] select-none items-center gap-x-2 overflow-hidden text-ellipsis whitespace-nowrap rounded-full py-1 ps-1 pe-2.5">
97
99
  <Skeleton className="h-5 w-5 rounded-full" />
98
100
  <Skeleton className="h-[9px] w-[70px]" />
99
101
  </button>
@@ -109,7 +111,7 @@ const UserBadge = () => {
109
111
  <DropdownMenu.Trigger
110
112
  disabled={!user}
111
113
  className={clx(
112
- "bg-ui-bg-subtle grid w-full cursor-pointer grid-cols-[24px_1fr_15px] items-center gap-2 rounded-md py-1 pl-0.5 pr-2 outline-none",
114
+ "bg-ui-bg-subtle grid w-full cursor-pointer grid-cols-[24px_1fr_15px] items-center gap-2 rounded-md py-1 ps-0.5 pe-2 outline-none",
113
115
  "hover:bg-ui-bg-subtle-hover",
114
116
  "data-[state=open]:bg-ui-bg-subtle-hover",
115
117
  "focus-visible:shadow-borders-focus"
@@ -148,9 +150,9 @@ const ThemeToggle = () => {
148
150
 
149
151
  return (
150
152
  <DropdownMenu.SubMenu>
151
- <DropdownMenu.SubMenuTrigger className="rounded-md">
152
- <CircleHalfSolid className="text-ui-fg-subtle mr-2" />
153
- {t("app.menus.user.theme.label")}
153
+ <DropdownMenu.SubMenuTrigger dir="ltr" className="rounded-md rtl:rotate-180">
154
+ <CircleHalfSolid className="text-ui-fg-subtle me-2" />
155
+ <span className="rtl:rotate-180">{t("app.menus.user.theme.label")}</span>
154
156
  </DropdownMenu.SubMenuTrigger>
155
157
  <DropdownMenu.SubMenuContent>
156
158
  <DropdownMenu.RadioGroup value={theme}>
@@ -44,6 +44,7 @@ import {
44
44
  } from "./constants"
45
45
  import { SearchArea } from "./types"
46
46
  import { useSearchResults } from "./use-search-results"
47
+ import { useDocumentDirection } from "../../hooks/use-document-direction"
47
48
 
48
49
  export const Search = () => {
49
50
  const [area, setArea] = useState<SearchArea>("all")
@@ -54,6 +55,7 @@ export const Search = () => {
54
55
  const { t } = useTranslation()
55
56
  const navigate = useNavigate()
56
57
 
58
+
57
59
  const inputRef = useRef<HTMLInputElement>(null)
58
60
  const listRef = useRef<HTMLDivElement>(null)
59
61
 
@@ -367,7 +369,7 @@ const CommandInput = forwardRef<
367
369
  ) => {
368
370
  const { t } = useTranslation()
369
371
  const innerRef = useRef<HTMLInputElement>(null)
370
-
372
+ const direction = useDocumentDirection()
371
373
  useImperativeHandle<HTMLInputElement | null, HTMLInputElement | null>(
372
374
  ref,
373
375
  () => innerRef.current
@@ -376,7 +378,7 @@ const CommandInput = forwardRef<
376
378
  return (
377
379
  <div className="flex flex-col border-b">
378
380
  <div className="px-4 pt-4">
379
- <DropdownMenu>
381
+ <DropdownMenu dir={direction}>
380
382
  <DropdownMenu.Trigger asChild>
381
383
  <Badge
382
384
  size="2xsmall"
@@ -432,7 +434,7 @@ const CommandInput = forwardRef<
432
434
  )}
433
435
  {...props}
434
436
  />
435
- <div className="absolute right-4 top-1/2 flex -translate-y-1/2 items-center justify-end gap-x-2">
437
+ <div className="absolute end-4 top-1/2 flex -translate-y-1/2 items-center justify-end gap-x-2">
436
438
  {isFetching && (
437
439
  <Spinner className="text-ui-fg-muted animate-spin" />
438
440
  )}
@@ -4,6 +4,8 @@ import { useState } from "react"
4
4
  import { useTranslation } from "react-i18next"
5
5
  import { useSearchParams } from "react-router-dom"
6
6
 
7
+ import { useDocumentDirection } from "../../../../hooks/use-document-direction"
8
+
7
9
  export type DataTableOrderByKey<TData> = {
8
10
  key: keyof TData
9
11
  label: string
@@ -54,6 +56,7 @@ export const DataTableOrderBy = <TData,>({
54
56
  }>(initState(searchParams, prefix))
55
57
  const param = prefix ? `${prefix}_order` : "order"
56
58
  const { t } = useTranslation()
59
+ const direction = useDocumentDirection()
57
60
 
58
61
  const handleDirChange = (dir: string) => {
59
62
  setState((prev) => ({
@@ -97,7 +100,7 @@ export const DataTableOrderBy = <TData,>({
97
100
  }
98
101
 
99
102
  return (
100
- <DropdownMenu>
103
+ <DropdownMenu dir={direction}>
101
104
  <DropdownMenu.Trigger asChild>
102
105
  <IconButton size="small">
103
106
  <DescendingSorting />
@@ -262,7 +262,7 @@ export const DataTableRoot = <TData,>({
262
262
  <Table.Cell
263
263
  key={cell.id}
264
264
  className={clx({
265
- "!pl-0 !pr-0": shouldRenderAsLink,
265
+ "!ps-0 !pe-0": shouldRenderAsLink,
266
266
  "bg-ui-bg-base group-data-[selected=true]/row:bg-ui-bg-highlight group-data-[selected=true]/row:group-hover/row:bg-ui-bg-highlight-hover group-hover/row:bg-ui-bg-base-hover transition-fg group-has-[[data-row-link]:focus-visible]:bg-ui-bg-base-hover sticky left-0 after:absolute after:inset-y-0 after:right-0 after:h-full after:w-px after:bg-transparent after:content-['']":
267
267
  isStickyCell,
268
268
  "bg-ui-bg-subtle group-hover/row:bg-ui-bg-subtle-hover":
@@ -288,9 +288,9 @@ export const DataTableRoot = <TData,>({
288
288
  >
289
289
  <div
290
290
  className={clx(
291
- "flex size-full items-center pr-6",
291
+ "flex size-full items-center pe-6",
292
292
  {
293
- "pl-6": isTabableLink && !hasLeftOffset,
293
+ "ps-6": isTabableLink && !hasLeftOffset,
294
294
  }
295
295
  )}
296
296
  >
@@ -102,7 +102,7 @@ const FormExtensionFieldComponent = ({
102
102
  return <Input {...field} placeholder={placeholder} type="number" />
103
103
  }
104
104
  case "boolean": {
105
- return <Switch {...field} />
105
+ return <Switch className="rtl:rotate-180" dir="ltr" {...field} />
106
106
  }
107
107
  default: {
108
108
  return (
@@ -130,6 +130,7 @@ export const useAddOrRemoveCampaignPromotions = (
130
130
  onSuccess: (data, variables, context) => {
131
131
  queryClient.invalidateQueries({ queryKey: campaignsQueryKeys.details() })
132
132
  queryClient.invalidateQueries({ queryKey: promotionsQueryKeys.lists() })
133
+ queryClient.invalidateQueries({ queryKey: promotionsQueryKeys.details() })
133
134
  options?.onSuccess?.(data, variables, context)
134
135
  },
135
136
  ...options,
@@ -241,6 +241,9 @@ export const useBatchInventoryItemLocationLevels = (
241
241
  queryClient.invalidateQueries({
242
242
  queryKey: inventoryItemLevelsQueryKeys.detail(inventoryItemId),
243
243
  })
244
+ queryClient.invalidateQueries({
245
+ queryKey: inventoryItemLevelsQueryKeys.list({ inventoryItemId }),
246
+ })
244
247
  options?.onSuccess?.(data, variables, context)
245
248
  },
246
249
  ...options,
@@ -1,6 +1,5 @@
1
1
  import { HttpTypes } from "@medusajs/types"
2
2
  import {
3
- QueryKey,
4
3
  useMutation,
5
4
  UseMutationOptions,
6
5
  useQuery,
@@ -21,8 +20,7 @@ export const useRefundReasons = (
21
20
  UseQueryOptions<
22
21
  HttpTypes.AdminRefundReasonListResponse,
23
22
  FetchError,
24
- HttpTypes.AdminRefundReasonListResponse,
25
- QueryKey
23
+ HttpTypes.AdminRefundReasonListResponse
26
24
  >,
27
25
  "queryFn" | "queryKey"
28
26
  >
@@ -43,8 +41,7 @@ export const useRefundReason = (
43
41
  UseQueryOptions<
44
42
  HttpTypes.AdminRefundReasonResponse,
45
43
  FetchError,
46
- HttpTypes.AdminRefundReasonResponse,
47
- QueryKey
44
+ HttpTypes.AdminRefundReasonResponse
48
45
  >,
49
46
  "queryFn" | "queryKey"
50
47
  >
@@ -81,7 +78,6 @@ export const useCreateRefundReason = (
81
78
 
82
79
  export const useUpdateRefundReason = (
83
80
  id: string,
84
- query?: HttpTypes.AdminRefundReasonParams,
85
81
  options?: UseMutationOptions<
86
82
  HttpTypes.AdminRefundReasonResponse,
87
83
  FetchError,
@@ -89,13 +85,13 @@ export const useUpdateRefundReason = (
89
85
  >
90
86
  ) => {
91
87
  return useMutation({
92
- mutationFn: async (data) => sdk.admin.refundReason.update(id, data, query),
88
+ mutationFn: async (data) => sdk.admin.refundReason.update(id, data),
93
89
  onSuccess: (data, variables, context) => {
94
90
  queryClient.invalidateQueries({
95
91
  queryKey: refundReasonsQueryKeys.lists(),
96
92
  })
97
93
  queryClient.invalidateQueries({
98
- queryKey: refundReasonsQueryKeys.detail(data.refund_reason.id, query),
94
+ queryKey: refundReasonsQueryKeys.detail(data.refund_reason.id),
99
95
  })
100
96
 
101
97
  options?.onSuccess?.(data, variables, context)
@@ -104,24 +100,19 @@ export const useUpdateRefundReason = (
104
100
  })
105
101
  }
106
102
 
107
- export const useDeleteRefundReason = (
108
- id: string,
103
+ export const useDeleteRefundReasonLazy = (
109
104
  options?: UseMutationOptions<
110
105
  HttpTypes.AdminRefundReasonDeleteResponse,
111
106
  FetchError,
112
- void
107
+ string
113
108
  >
114
109
  ) => {
115
110
  return useMutation({
116
- mutationFn: () => sdk.admin.refundReason.delete(id),
111
+ mutationFn: (id: string) => sdk.admin.refundReason.delete(id),
117
112
  onSuccess: (data, variables, context) => {
118
113
  queryClient.invalidateQueries({
119
114
  queryKey: refundReasonsQueryKeys.lists(),
120
115
  })
121
- queryClient.invalidateQueries({
122
- queryKey: refundReasonsQueryKeys.detail(id),
123
- })
124
-
125
116
  queryClient.invalidateQueries({
126
117
  queryKey: refundReasonsQueryKeys.details(),
127
118
  })
@@ -1,28 +1,32 @@
1
1
  import { HttpTypes } from "@medusajs/types"
2
- import { createColumnHelper } from "@tanstack/react-table"
3
2
  import { useMemo } from "react"
3
+ import { useTranslation } from "react-i18next"
4
+ import { createDataTableColumnHelper } from "@medusajs/ui"
5
+ import { DescriptionCell } from "../../../components/table/table-cells/sales-channel/description-cell"
4
6
 
5
- const columnHelper = createColumnHelper<HttpTypes.AdminRefundReason>()
7
+ const columnHelper = createDataTableColumnHelper<HttpTypes.AdminRefundReason>()
6
8
 
7
9
  export const useRefundReasonTableColumns = () => {
10
+ const { t } = useTranslation()
11
+
8
12
  return useMemo(
9
13
  () => [
10
14
  columnHelper.accessor("label", {
11
- cell: ({ row }) => {
12
- const { label, description } = row.original
13
- return (
14
- <div className=" py-4">
15
- <div className="flex h-full w-full flex-col justify-center">
16
- <span className="truncate font-medium">{label}</span>
17
- <span className="truncate">
18
- {description ? description : "-"}
19
- </span>
20
- </div>
21
- </div>
22
- )
23
- },
15
+ header: () => t("fields.label"),
16
+ enableSorting: true,
17
+ sortLabel: t("fields.label"),
18
+ sortAscLabel: t("filters.sorting.alphabeticallyAsc"),
19
+ sortDescLabel: t("filters.sorting.alphabeticallyDesc"),
20
+ }),
21
+ columnHelper.accessor("description", {
22
+ header: () => t("fields.description"),
23
+ cell: ({ getValue }) => <DescriptionCell description={getValue()} />,
24
+ enableSorting: true,
25
+ sortLabel: t("fields.description"),
26
+ sortAscLabel: t("filters.sorting.alphabeticallyAsc"),
27
+ sortDescLabel: t("filters.sorting.alphabeticallyDesc"),
24
28
  }),
25
29
  ],
26
- []
30
+ [t]
27
31
  )
28
32
  }
@@ -0,0 +1,54 @@
1
+ import { useEffect, useState } from "react"
2
+
3
+ /**
4
+ * Hook to get the current document direction (ltr/rtl) and listen for changes
5
+ * @returns The current document direction as "ltr" | "rtl" | undefined
6
+ */
7
+ export const useDocumentDirection = (): "ltr" | "rtl" | undefined => {
8
+ const [direction, setDirection] = useState<"ltr" | "rtl" | undefined>(() => {
9
+ // Initialize with current value
10
+ if (typeof document !== "undefined") {
11
+ return (
12
+ (document.documentElement.getAttribute("dir") as "ltr" | "rtl") ||
13
+ undefined
14
+ )
15
+ }
16
+ return undefined
17
+ })
18
+
19
+ useEffect(() => {
20
+ // Only run on client side
21
+ if (typeof document === "undefined") {
22
+ return
23
+ }
24
+
25
+ // Create a MutationObserver to watch for changes to the dir attribute
26
+ const observer = new MutationObserver((mutations) => {
27
+ mutations.forEach((mutation) => {
28
+ if (
29
+ mutation.type === "attributes" &&
30
+ mutation.attributeName === "dir" &&
31
+ mutation.target === document.documentElement
32
+ ) {
33
+ const newDirection = document.documentElement.getAttribute("dir") as
34
+ | "ltr"
35
+ | "rtl"
36
+ setDirection(newDirection || undefined)
37
+ }
38
+ })
39
+ })
40
+
41
+ // Start observing the document element for attribute changes
42
+ observer.observe(document.documentElement, {
43
+ attributes: true,
44
+ attributeFilter: ["dir"],
45
+ })
46
+
47
+ // Cleanup observer on unmount
48
+ return () => {
49
+ observer.disconnect()
50
+ }
51
+ }, [])
52
+
53
+ return direction
54
+ }
@@ -161,6 +161,9 @@
161
161
  "noRecordsMessage": {
162
162
  "type": "string"
163
163
  },
164
+ "noRecordsMessageFiltered": {
165
+ "type": "string"
166
+ },
164
167
  "unsavedChangesTitle": {
165
168
  "type": "string"
166
169
  },
@@ -229,6 +232,7 @@
229
232
  "noSearchResultsFor",
230
233
  "noRecordsTitle",
231
234
  "noRecordsMessage",
235
+ "noRecordsMessageFiltered",
232
236
  "unsavedChangesTitle",
233
237
  "unsavedChangesDescription",
234
238
  "includesTaxTooltip",
@@ -3107,6 +3111,9 @@
3107
3111
  "quantityAcrossLocations": {
3108
3112
  "type": "string"
3109
3113
  },
3114
+ "levelDeleted": {
3115
+ "type": "string"
3116
+ },
3110
3117
  "create": {
3111
3118
  "type": "object",
3112
3119
  "properties": {
@@ -3323,6 +3330,7 @@
3323
3330
  "deleteWarning",
3324
3331
  "editItemDetails",
3325
3332
  "quantityAcrossLocations",
3333
+ "levelDeleted",
3326
3334
  "create",
3327
3335
  "reservation",
3328
3336
  "adjustInventory",
@@ -5830,9 +5838,23 @@
5830
5838
  "properties": {
5831
5839
  "description": {
5832
5840
  "type": "string"
5841
+ },
5842
+ "noRecordsMessage": {
5843
+ "type": "string"
5844
+ },
5845
+ "noRecordsMessageEmpty": {
5846
+ "type": "string"
5847
+ },
5848
+ "noRecordsMessageFiltered": {
5849
+ "type": "string"
5833
5850
  }
5834
5851
  },
5835
- "required": ["description"],
5852
+ "required": [
5853
+ "description",
5854
+ "noRecordsMessage",
5855
+ "noRecordsMessageEmpty",
5856
+ "noRecordsMessageFiltered"
5857
+ ],
5836
5858
  "additionalProperties": false
5837
5859
  },
5838
5860
  "create": {
@@ -5872,9 +5894,12 @@
5872
5894
  "properties": {
5873
5895
  "confirmation": {
5874
5896
  "type": "string"
5897
+ },
5898
+ "successToast": {
5899
+ "type": "string"
5875
5900
  }
5876
5901
  },
5877
- "required": ["confirmation"],
5902
+ "required": ["confirmation", "successToast"],
5878
5903
  "additionalProperties": false
5879
5904
  },
5880
5905
  "fulfillmentProviders": {