@medusajs/dashboard 2.10.4-snapshot-20250923121159 → 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 (332) hide show
  1. package/dist/{add-campaign-promotions-JOVLXLS4.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-I7T67TXF.mjs → api-key-management-detail-MM673US3.mjs} +16 -14
  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-6GN6RVZ2.mjs → api-key-management-sales-channels-MVHVMPF6.mjs} +6 -5
  8. package/dist/app.css +89 -31
  9. package/dist/app.js +7050 -5968
  10. package/dist/app.mjs +18 -15
  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-NRZHGINV.mjs → campaign-detail-G2VM7CRL.mjs} +23 -21
  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-GXWJ3HOG.mjs → categories-metadata-M4PAATNV.mjs} +14 -12
  18. package/dist/{category-create-FOVB5MJ4.mjs → category-create-GMFWRFT7.mjs} +38 -16
  19. package/dist/{category-detail-ENUI5EFL.mjs → category-detail-MTLPW4MR.mjs} +20 -18
  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-ZG5QDWSW.mjs → category-products-DGWKONYE.mjs} +16 -14
  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-5U3FFMC7.mjs +84 -0
  28. package/dist/{chunk-YM4QJC6Y.mjs → chunk-7GBCLBMX.mjs} +1 -1
  29. package/dist/{chunk-JHXKKOHO.mjs → chunk-7JJTWGHU.mjs} +49 -15
  30. package/dist/{chunk-6AGMMT5H.mjs → chunk-A4GWVZB4.mjs} +4 -4
  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-RVOPC44F.mjs → chunk-CGEJJR5K.mjs} +623 -682
  35. package/dist/{chunk-J5E7MQSS.mjs → chunk-CY33DS7K.mjs} +6 -0
  36. package/dist/{chunk-ZJA7VBUR.mjs → chunk-DKOCYXB5.mjs} +34 -1
  37. package/dist/{chunk-ZCZL3STK.mjs → chunk-EA5GGT2Q.mjs} +1 -1
  38. package/dist/{chunk-OGHQ6VJI.mjs → chunk-EILZIUOP.mjs} +1 -6
  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-NRBOPOMS.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-Y4YXZY7R.mjs → chunk-I2QEZTVU.mjs} +2 -2
  48. package/dist/{chunk-S2UEWRDA.mjs → chunk-IL5IMREK.mjs} +59 -49
  49. package/dist/{chunk-JIQQKKLO.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-5WKYR6PY.mjs → chunk-IXMPYDY2.mjs} +1 -1
  54. package/dist/{chunk-XGJ5DXXG.mjs → chunk-K2HM7KXJ.mjs} +12 -12
  55. package/dist/{chunk-OKMF4YI7.mjs → chunk-K3OMOMRB.mjs} +25 -0
  56. package/dist/{chunk-2LPGQWPV.mjs → chunk-KTL6E2WT.mjs} +1 -1
  57. package/dist/{chunk-OHSRRFGN.mjs → chunk-LKVQ5YC6.mjs} +1 -1
  58. package/dist/{chunk-QGCKTVQX.mjs → chunk-LMRZMI7O.mjs} +1 -1
  59. package/dist/{chunk-OLUNPPBR.mjs → chunk-MAKOUE5W.mjs} +1 -1
  60. package/dist/{chunk-Q5DI5VYN.mjs → chunk-MLNUGLGT.mjs} +1 -1
  61. package/dist/{chunk-5M5ZVAWU.mjs → chunk-MSOFJHH3.mjs} +2 -2
  62. package/dist/{chunk-JMQ6V54O.mjs → chunk-NFQXNOP7.mjs} +1 -1
  63. package/dist/{chunk-UWJBDOQD.mjs → chunk-NKVMOKZA.mjs} +41 -29
  64. package/dist/{chunk-NCR5UWRI.mjs → chunk-NY6I2FYO.mjs} +1 -1
  65. package/dist/{chunk-3NJTXRIY.mjs → chunk-OZPB6JBL.mjs} +5 -1
  66. package/dist/{chunk-FPJBF7VS.mjs → chunk-P2O6XTD4.mjs} +1 -1
  67. package/dist/{chunk-EFA7S5L3.mjs → chunk-PGTXMCSV.mjs} +1 -1
  68. package/dist/{chunk-D7H6ZNK4.mjs → chunk-PRLQLEEQ.mjs} +2 -0
  69. package/dist/{chunk-ZODJNBAV.mjs → chunk-R2G2B47Y.mjs} +1 -0
  70. package/dist/{chunk-HUX22ZHT.mjs → chunk-RF75BZNF.mjs} +3 -3
  71. package/dist/{chunk-4RG7UJCT.mjs → chunk-RGP3IXX4.mjs} +1 -1
  72. package/dist/chunk-S4DMV3ZT.mjs +35 -0
  73. package/dist/{chunk-5NQ3X2JI.mjs → chunk-SNDSWB6B.mjs} +1 -1
  74. package/dist/{chunk-EE7SOCEQ.mjs → chunk-SQFZWNYA.mjs} +4 -4
  75. package/dist/{chunk-O74UDEWT.mjs → chunk-TKZK3YPU.mjs} +1 -1
  76. package/dist/{chunk-KSRI5LOF.mjs → chunk-U25RCIX2.mjs} +2 -2
  77. package/dist/{chunk-BHZAQZYP.mjs → chunk-U4R5MBF2.mjs} +1 -1
  78. package/dist/{chunk-CK3VFTZM.mjs → chunk-UKX2FFFV.mjs} +2 -2
  79. package/dist/{chunk-37UXEJF2.mjs → chunk-V6JXTITD.mjs} +1 -1
  80. package/dist/chunk-VLOA5XAC.mjs +113 -0
  81. package/dist/{chunk-4Q4LIFFO.mjs → chunk-XP3BY6G6.mjs} +1 -1
  82. package/dist/{chunk-6IZUCU7K.mjs → chunk-YSFTQA6Y.mjs} +2 -2
  83. package/dist/{chunk-XKXNQ2KV.mjs → chunk-ZCARHA6C.mjs} +1 -1
  84. package/dist/{chunk-RMEITCLS.mjs → chunk-ZSDEVTFT.mjs} +1 -1
  85. package/dist/{collection-add-products-2ISNNIHD.mjs → collection-add-products-KEB3ESAK.mjs} +16 -14
  86. package/dist/{collection-create-75ZI5NDG.mjs → collection-create-PTOF33H2.mjs} +2 -2
  87. package/dist/{collection-detail-OSX6NHNQ.mjs → collection-detail-V24IDEZQ.mjs} +18 -16
  88. package/dist/{collection-edit-RD6BDDDI.mjs → collection-edit-WM57WXJ2.mjs} +2 -2
  89. package/dist/{collection-list-MPIYSHQJ.mjs → collection-list-GD2IJYOP.mjs} +20 -18
  90. package/dist/{collection-metadata-EOFYXEQI.mjs → collection-metadata-Z2JMXTHW.mjs} +14 -12
  91. package/dist/{customer-create-address-TPSDYZBN.mjs → customer-create-address-JOYBIPPN.mjs} +1 -1
  92. package/dist/{customer-detail-FCNRRZSW.mjs → customer-detail-E7LPLLML.mjs} +18 -16
  93. package/dist/{customer-group-add-customers-ULPWTALS.mjs → customer-group-add-customers-YF2T323Z.mjs} +3 -2
  94. package/dist/{customer-group-detail-QI3QLJJL.mjs → customer-group-detail-5ZWHOJOD.mjs} +17 -15
  95. package/dist/{customer-group-list-D26UKQMR.mjs → customer-group-list-N22GDJVL.mjs} +16 -14
  96. package/dist/{customer-group-metadata-UPAPULMF.mjs → customer-group-metadata-YQCOIVQG.mjs} +2 -1
  97. package/dist/{customer-list-SINCBCOZ.mjs → customer-list-5IWEXYSW.mjs} +5 -4
  98. package/dist/{customer-metadata-5NPUMPZ2.mjs → customer-metadata-JZEJBH4V.mjs} +2 -1
  99. package/dist/{customers-add-customer-group-5TFTVDB6.mjs → customers-add-customer-group-LFEUVS5G.mjs} +15 -13
  100. package/dist/{edit-inventory-item-ZPE4MMC4.mjs → edit-inventory-item-UV2Z7SYL.mjs} +1 -1
  101. package/dist/{edit-inventory-item-attributes-KT7BSPZ7.mjs → edit-inventory-item-attributes-BRC3KBYT.mjs} +2 -2
  102. package/dist/{edit-reservation-EKH4RIAX.mjs → edit-reservation-NYGQBFBO.mjs} +7 -2
  103. package/dist/{edit-rules-63NG4QVR.mjs → edit-rules-BCGRJ4FJ.mjs} +15 -13
  104. package/dist/{inventory-create-RIVJFJJQ.mjs → inventory-create-OPYAZF3M.mjs} +20 -14
  105. package/dist/{inventory-detail-QHL7TJFZ.mjs → inventory-detail-PAVP7J2W.mjs} +26 -18
  106. package/dist/{inventory-list-YMYF7QVP.mjs → inventory-list-J5VZGQ2M.mjs} +6 -5
  107. package/dist/{inventory-metadata-FH4CHJBA.mjs → inventory-metadata-PMQLZCHW.mjs} +14 -12
  108. package/dist/{inventory-stock-D6E4LQRK.mjs → inventory-stock-7QXMAX45.mjs} +15 -13
  109. package/dist/{location-create-LUP363ZB.mjs → location-create-22H74MFP.mjs} +1 -1
  110. package/dist/{location-detail-Z6ZDX6RY.mjs → location-detail-IXHZ7DZS.mjs} +15 -13
  111. package/dist/{location-edit-26K26G23.mjs → location-edit-X6JBEWIF.mjs} +2 -2
  112. package/dist/{location-fulfillment-providers-45VXZMZI.mjs → location-fulfillment-providers-3KPC4HQT.mjs} +17 -15
  113. package/dist/{location-list-62KBWY4T.mjs → location-list-VNEYHAKV.mjs} +15 -8
  114. package/dist/{location-sales-channels-O5XLIPAR.mjs → location-sales-channels-66ZE3ZMI.mjs} +5 -4
  115. package/dist/{location-service-zone-create-RPFLBVV4.mjs → location-service-zone-create-D5QSFS3M.mjs} +4 -3
  116. package/dist/{location-service-zone-manage-areas-VEUUGPKF.mjs → location-service-zone-manage-areas-HKCALG4Q.mjs} +4 -3
  117. package/dist/{location-service-zone-shipping-option-create-NO3665DC.mjs → location-service-zone-shipping-option-create-PVQ66CXW.mjs} +24 -15
  118. package/dist/{location-service-zone-shipping-option-edit-TMXNX4VX.mjs → location-service-zone-shipping-option-edit-JYM6GHTA.mjs} +40 -28
  119. package/dist/{location-service-zone-shipping-option-pricing-U2SDK5DE.mjs → location-service-zone-shipping-option-pricing-FLB63UKY.mjs} +3 -2
  120. package/dist/{login-DSPNELTI.mjs → login-DVYOEF5F.mjs} +12 -11
  121. package/dist/manage-locations-RPHTPGRE.mjs +247 -0
  122. package/dist/{order-allocate-items-J3ZHGC22.mjs → order-allocate-items-2RYXQRVK.mjs} +26 -14
  123. package/dist/{order-create-claim-V63BWLB5.mjs → order-create-claim-FK4LIPAE.mjs} +21 -18
  124. package/dist/{order-create-edit-NPF4UZ4D.mjs → order-create-edit-VGIWYKBB.mjs} +19 -16
  125. package/dist/{order-create-exchange-RHIPPSKU.mjs → order-create-exchange-BMRCMN5G.mjs} +21 -18
  126. package/dist/{order-create-fulfillment-4SSUHQ75.mjs → order-create-fulfillment-NLGPRK4J.mjs} +20 -12
  127. package/dist/{order-create-refund-QVQC5ZP5.mjs → order-create-refund-TEMK6IEQ.mjs} +51 -14
  128. package/dist/{order-create-return-GVA6M2RY.mjs → order-create-return-6FHAU3OZ.mjs} +11 -9
  129. package/dist/{order-create-shipment-TJAARKWA.mjs → order-create-shipment-WCEZXWM6.mjs} +14 -11
  130. package/dist/{order-detail-2MIN6B2I.mjs → order-detail-QABTBPGX.mjs} +50 -40
  131. package/dist/{order-edit-billing-address-QP2I5F3E.mjs → order-edit-billing-address-MWF3L6GK.mjs} +13 -12
  132. package/dist/{order-edit-email-7WT7XTHB.mjs → order-edit-email-UDJOGYPP.mjs} +12 -11
  133. package/dist/{order-edit-shipping-address-3QFMQP4I.mjs → order-edit-shipping-address-O46U65WM.mjs} +13 -12
  134. package/dist/{order-list-73DBATIK.mjs → order-list-VDUUHTSU.mjs} +11 -10
  135. package/dist/{order-metadata-YJS26DHK.mjs → order-metadata-SHCFZWCA.mjs} +14 -12
  136. package/dist/{order-receive-return-PZMMMUB2.mjs → order-receive-return-MC4DIRK3.mjs} +15 -13
  137. package/dist/{order-request-transfer-QBIZD36E.mjs → order-request-transfer-MELQKMC4.mjs} +13 -12
  138. package/dist/{price-list-configuration-435QDWB2.mjs → price-list-configuration-VACKCKJF.mjs} +6 -5
  139. package/dist/{price-list-create-RXDH5CXF.mjs → price-list-create-TZUDGP2J.mjs} +40 -24
  140. package/dist/{price-list-detail-PKIKOJ4H.mjs → price-list-detail-DX74DH6G.mjs} +19 -17
  141. package/dist/{price-list-edit-ZGBOZYSC.mjs → price-list-edit-G73ZIU2Y.mjs} +51 -31
  142. package/dist/{price-list-list-C6NEB2R4.mjs → price-list-list-QYZSJNF5.mjs} +8 -7
  143. package/dist/{price-list-prices-add-2CDPUSYA.mjs → price-list-prices-add-IHMS7HIH.mjs} +29 -20
  144. package/dist/{price-list-prices-edit-ENB4GJZT.mjs → price-list-prices-edit-R53ITSDD.mjs} +5 -4
  145. package/dist/{product-attributes-FQDJCNUB.mjs → product-attributes-AULEVQ5C.mjs} +20 -17
  146. package/dist/{product-create-W37RQLON.mjs → product-create-2RPJZR2Q.mjs} +28 -21
  147. package/dist/{product-create-option-3JR35UZ5.mjs → product-create-option-OW2LMVST.mjs} +1 -1
  148. package/dist/{product-create-variant-KJKQ6ROY.mjs → product-create-variant-NKU6J7NG.mjs} +32 -18
  149. package/dist/{product-detail-TANIKAEK.mjs → product-detail-NNTUGXU5.mjs} +22 -19
  150. package/dist/{product-edit-DO76GHBI.mjs → product-edit-6WRMNGPM.mjs} +42 -28
  151. package/dist/{product-edit-option-VNDGZ37A.mjs → product-edit-option-OM56DLU6.mjs} +1 -1
  152. package/dist/{product-export-XERWEI5H.mjs → product-export-W6KP2RGO.mjs} +14 -13
  153. package/dist/{product-import-AGFJMSVK.mjs → product-import-P76MITMC.mjs} +15 -13
  154. package/dist/{product-list-KJ3HXPLB.mjs → product-list-7H64APWI.mjs} +20 -18
  155. package/dist/{product-media-VG4YM2W6.mjs → product-media-TRKQTA4G.mjs} +5 -5
  156. package/dist/{product-metadata-NZ3HKO67.mjs → product-metadata-2G6DWHWG.mjs} +14 -12
  157. package/dist/{product-organization-OOVUGXNP.mjs → product-organization-43YS5OUI.mjs} +21 -18
  158. package/dist/{product-prices-PCBMYYGV.mjs → product-prices-XLY5TUSJ.mjs} +3 -2
  159. package/dist/{product-sales-channels-QEJRSCAU.mjs → product-sales-channels-KSIHPDJG.mjs} +5 -4
  160. package/dist/{product-shipping-profile-FFMKOF6B.mjs → product-shipping-profile-SFU2PVR4.mjs} +20 -17
  161. package/dist/{product-stock-SUVEQZML.mjs → product-stock-GAWLELSE.mjs} +17 -14
  162. package/dist/{product-tag-create-T6HVAQKN.mjs → product-tag-create-FVU5JRL3.mjs} +12 -11
  163. package/dist/{product-tag-detail-HOWUZC3P.mjs → product-tag-detail-VMVPWMZK.mjs} +23 -21
  164. package/dist/{product-tag-edit-WWQDNDRC.mjs → product-tag-edit-OWI3OFVF.mjs} +12 -11
  165. package/dist/{product-tag-list-FAKSLONF.mjs → product-tag-list-YPIZII2D.mjs} +23 -21
  166. package/dist/{product-tag-metadata-6B56VEZU.mjs → product-tag-metadata-B4YBSHOH.mjs} +14 -12
  167. package/dist/{product-type-detail-KN64HYUV.mjs → product-type-detail-243HFRBD.mjs} +18 -16
  168. package/dist/{product-type-list-6ZIWPIUH.mjs → product-type-list-MJLAGQYC.mjs} +5 -4
  169. package/dist/{product-type-metadata-F3FTI6OG.mjs → product-type-metadata-4YE4UEOF.mjs} +14 -12
  170. package/dist/{product-variant-detail-OUHBUY4J.mjs → product-variant-detail-LJE3IFNE.mjs} +17 -15
  171. package/dist/{product-variant-edit-NBYHDUJ5.mjs → product-variant-edit-IGJIWVQQ.mjs} +18 -13
  172. package/dist/{product-variant-manage-inventory-items-TM3VAHBJ.mjs → product-variant-manage-inventory-items-2M2KTPNK.mjs} +2 -2
  173. package/dist/{product-variant-metadata-XDVLJYGQ.mjs → product-variant-metadata-F6BGFMMS.mjs} +14 -12
  174. package/dist/{profile-detail-ROG22HHL.mjs → profile-detail-XYAQ2G36.mjs} +3 -2
  175. package/dist/{profile-edit-HSUQIQQH.mjs → profile-edit-7WD4FTRH.mjs} +31 -19
  176. package/dist/{promotion-add-campaign-7R26KU2U.mjs → promotion-add-campaign-YREHV6TQ.mjs} +9 -21
  177. package/dist/{promotion-create-UUOG52D5.mjs → promotion-create-YGHBTAFC.mjs} +30 -17
  178. package/dist/{promotion-detail-GONXLJZ2.mjs → promotion-detail-BIC23HFR.mjs} +17 -15
  179. package/dist/{promotion-edit-details-HQLYX4X4.mjs → promotion-edit-details-A2UUSAZA.mjs} +10 -2
  180. package/dist/{promotion-list-NNEMVJ6I.mjs → promotion-list-WDHOSD55.mjs} +9 -8
  181. package/dist/refund-reason-create-YCWLRRBW.mjs +158 -0
  182. package/dist/refund-reason-edit-E2HDAQZI.mjs +144 -0
  183. package/dist/refund-reason-list-7GANH7KL.mjs +246 -0
  184. package/dist/{region-add-countries-Y4YAHDUZ.mjs → region-add-countries-6GSF4CKJ.mjs} +3 -2
  185. package/dist/{region-create-5Y3GIQBV.mjs → region-create-AFZTSM3N.mjs} +34 -18
  186. package/dist/{region-detail-CWRFM6P3.mjs → region-detail-PB7EUSTD.mjs} +5 -4
  187. package/dist/{region-edit-JWQWCLM3.mjs → region-edit-DSYIUI7W.mjs} +25 -9
  188. package/dist/{region-list-FQNI7F37.mjs → region-list-52LF5S4S.mjs} +5 -4
  189. package/dist/{region-metadata-IQVB4ERU.mjs → region-metadata-L5K6YENH.mjs} +14 -12
  190. package/dist/{reservation-create-7RFXWDXB.mjs → reservation-create-FV7QXGL3.mjs} +3 -3
  191. package/dist/{reservation-detail-RTGHD35L.mjs → reservation-detail-USDAVGWH.mjs} +16 -14
  192. package/dist/{reservation-list-UOC7RNRZ.mjs → reservation-list-NOWJUMXV.mjs} +7 -6
  193. package/dist/{reservation-metadata-WKJXBRLQ.mjs → reservation-metadata-47C6RWYS.mjs} +14 -12
  194. package/dist/{reset-password-ANJHGYUE.mjs → reset-password-LCVV4NOA.mjs} +1 -1
  195. package/dist/{return-reason-list-MOP7YWMZ.mjs → return-reason-list-FW7OYUOW.mjs} +8 -7
  196. package/dist/{sales-channel-add-products-OKVZJ6FI.mjs → sales-channel-add-products-NGPN4IRB.mjs} +16 -14
  197. package/dist/{sales-channel-create-3MPOMVPD.mjs → sales-channel-create-NODWGJDD.mjs} +4 -2
  198. package/dist/{sales-channel-detail-WESBK6Q7.mjs → sales-channel-detail-IWWRX2Y3.mjs} +18 -16
  199. package/dist/{sales-channel-edit-LSLAM7A4.mjs → sales-channel-edit-ALIRERVH.mjs} +4 -2
  200. package/dist/{sales-channel-list-LKVHXUXW.mjs → sales-channel-list-LCPDOQK3.mjs} +16 -14
  201. package/dist/{sales-channel-metadata-2OQAHYB4.mjs → sales-channel-metadata-VZ4TINYG.mjs} +14 -12
  202. package/dist/{shipping-option-type-create-3CGPGDYJ.mjs → shipping-option-type-create-NOMFII5B.mjs} +12 -11
  203. package/dist/{shipping-option-type-detail-S23H2OGW.mjs → shipping-option-type-detail-6XIJRVZ5.mjs} +16 -14
  204. package/dist/{shipping-option-type-edit-IHE7XM6M.mjs → shipping-option-type-edit-PEDYL6JQ.mjs} +12 -11
  205. package/dist/{shipping-option-type-list-47GRJ6EC.mjs → shipping-option-type-list-GI5GBLIS.mjs} +18 -16
  206. package/dist/{shipping-profile-detail-FDUPDSH4.mjs → shipping-profile-detail-FS46IJZP.mjs} +3 -2
  207. package/dist/{shipping-profile-metadata-OXWOXAAR.mjs → shipping-profile-metadata-ZOR7MQFF.mjs} +14 -12
  208. package/dist/{shipping-profiles-list-ZHJEUIKJ.mjs → shipping-profiles-list-QFOG5IDH.mjs} +5 -4
  209. package/dist/{store-add-currencies-R26SVHT5.mjs → store-add-currencies-W4MWOALR.mjs} +5 -2
  210. package/dist/{store-detail-4K7TW2TP.mjs → store-detail-MZAKRCTC.mjs} +17 -15
  211. package/dist/{store-edit-EU55TNFU.mjs → store-edit-3DU5MC25.mjs} +24 -12
  212. package/dist/{store-metadata-JP2CI7EF.mjs → store-metadata-GO4TXB3W.mjs} +14 -12
  213. package/dist/{tax-region-create-IWM4755I.mjs → tax-region-create-KDCNQGPC.mjs} +15 -14
  214. package/dist/{tax-region-detail-V2F2DONN.mjs → tax-region-detail-O6U6ZVDB.mjs} +19 -17
  215. package/dist/{tax-region-edit-CJPMYTBF.mjs → tax-region-edit-T4B5DM55.mjs} +13 -12
  216. package/dist/{tax-region-list-NMM3LBPN.mjs → tax-region-list-SQQE2GUU.mjs} +6 -5
  217. package/dist/{tax-region-province-create-GIIU2G7K.mjs → tax-region-province-create-SBRFGWN3.mjs} +2 -2
  218. package/dist/{tax-region-province-detail-4PUQ5ADW.mjs → tax-region-province-detail-XH45ZAOJ.mjs} +18 -16
  219. package/dist/{tax-region-tax-override-create-3SCIOK4P.mjs → tax-region-tax-override-create-MSL7HEM6.mjs} +26 -20
  220. package/dist/{tax-region-tax-override-edit-P3QJKET3.mjs → tax-region-tax-override-edit-AO6CYS62.mjs} +26 -20
  221. package/dist/{tax-region-tax-rate-create-Z43M3JTQ.mjs → tax-region-tax-rate-create-JIV5FXUD.mjs} +1 -1
  222. package/dist/{tax-region-tax-rate-edit-RBF5D2MK.mjs → tax-region-tax-rate-edit-WU2ZQLZQ.mjs} +1 -1
  223. package/dist/{user-detail-VIVFFLOW.mjs → user-detail-ZFW3YF3M.mjs} +4 -3
  224. package/dist/{user-invite-W26LOOW7.mjs → user-invite-KUH4AI2L.mjs} +4 -3
  225. package/dist/{user-list-MKJLB5CQ.mjs → user-list-G4H2RSDX.mjs} +4 -3
  226. package/dist/{user-metadata-ZURLDLGC.mjs → user-metadata-2CR2AK3U.mjs} +14 -12
  227. package/dist/{workflow-execution-detail-4R6AFFHV.mjs → workflow-execution-detail-ZD7OVL4W.mjs} +18 -13
  228. package/dist/{workflow-execution-list-5J3DQQRD.mjs → workflow-execution-list-5WL4L464.mjs} +4 -3
  229. package/package.json +9 -9
  230. package/src/components/common/action-menu/action-menu.tsx +3 -1
  231. package/src/components/common/customer-info/customer-info.tsx +1 -1
  232. package/src/components/common/json-view-section/json-view-section.tsx +4 -1
  233. package/src/components/common/sidebar-link/sidebar-link.tsx +1 -1
  234. package/src/components/common/switch-box/switch-box.tsx +2 -0
  235. package/src/components/data-grid/components/data-grid-root.tsx +9 -3
  236. package/src/components/data-grid/components/data-grid-toggleable-number-cell.tsx +2 -1
  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/settings-layout/settings-layout.tsx +4 -0
  246. package/src/components/layout/shell/shell.tsx +6 -6
  247. package/src/components/layout/user-menu/user-menu.tsx +12 -10
  248. package/src/components/search/search.tsx +5 -3
  249. package/src/components/table/data-table/data-table-order-by/data-table-order-by.tsx +4 -1
  250. package/src/components/table/data-table/data-table-root/data-table-root.tsx +3 -3
  251. package/src/dashboard-app/forms/form-extension-zone/form-extension-zone.tsx +1 -1
  252. package/src/dashboard-app/routes/get-route.map.tsx +36 -0
  253. package/src/hooks/api/campaigns.tsx +1 -0
  254. package/src/hooks/api/inventory.tsx +3 -0
  255. package/src/hooks/api/refund-reasons.tsx +105 -10
  256. package/src/hooks/table/columns/index.ts +1 -0
  257. package/src/hooks/table/columns/use-refund-reason-table-columns.tsx +32 -0
  258. package/src/hooks/table/query/index.ts +1 -0
  259. package/src/hooks/table/query/use-refund-reason-table-query.tsx +32 -0
  260. package/src/hooks/use-document-direction.tsx +54 -0
  261. package/src/i18n/translations/$schema.json +118 -0
  262. package/src/i18n/translations/en.json +34 -1
  263. package/src/providers/i18n-provider/i18n-provider.tsx +9 -4
  264. package/src/routes/campaigns/campaign-detail/components/campaign-budget/campaign-budget.tsx +3 -3
  265. package/src/routes/campaigns/common/components/create-campaign-form-fields/create-campaign-form-fields.tsx +4 -1
  266. package/src/routes/categories/category-create/components/create-category-form/create-category-details.tsx +12 -3
  267. package/src/routes/categories/category-create/components/create-category-form/create-category-form.tsx +4 -3
  268. package/src/routes/categories/category-detail/components/category-organize-section/category-organize-section.tsx +1 -1
  269. package/src/routes/categories/category-edit/components/edit-category-form/edit-category-form.tsx +12 -3
  270. package/src/routes/inventory/inventory-create/components/inventory-create-form/inventory-create-form.tsx +3 -1
  271. package/src/routes/inventory/inventory-detail/components/inventory-item-variants/variants-section.tsx +1 -1
  272. package/src/routes/inventory/inventory-detail/components/location-levels-table/use-location-list-table-columns.tsx +7 -0
  273. package/src/routes/inventory/inventory-detail/components/manage-locations/components/location-item.tsx +2 -2
  274. package/src/routes/inventory/inventory-detail/components/manage-locations/components/location-search-input.tsx +34 -0
  275. package/src/routes/inventory/inventory-detail/components/manage-locations/components/manage-locations-form.tsx +127 -140
  276. package/src/routes/locations/location-edit/components/edit-location-form/edit-location-form.tsx +1 -1
  277. package/src/routes/locations/location-list/location-list.tsx +10 -4
  278. package/src/routes/locations/location-service-zone-shipping-option-create/components/create-shipping-options-form/create-shipping-option-details-form.tsx +4 -1
  279. package/src/routes/locations/location-service-zone-shipping-option-create/components/create-shipping-options-form/create-shipping-options-form.tsx +3 -1
  280. package/src/routes/locations/location-service-zone-shipping-option-edit/components/edit-region-form/edit-shipping-option-form.tsx +7 -2
  281. package/src/routes/orders/order-allocate-items/components/order-create-fulfillment-form/order-allocate-items-form.tsx +7 -2
  282. package/src/routes/orders/order-create-claim/components/claim-create-form/claim-create-form.tsx +2 -1
  283. package/src/routes/orders/order-create-edit/components/order-edit-create-form/order-edit-create-form.tsx +2 -1
  284. package/src/routes/orders/order-create-exchange/components/exchange-create-form/exchange-create-form.tsx +2 -1
  285. package/src/routes/orders/order-create-fulfillment/components/order-create-fulfillment-form/order-create-fulfillment-form.tsx +5 -1
  286. package/src/routes/orders/order-create-refund/components/create-refund-form/create-refund-form.tsx +42 -1
  287. package/src/routes/orders/order-create-return/components/return-create-form/return-create-form.tsx +2 -1
  288. package/src/routes/orders/order-create-shipment/components/order-create-shipment-form/order-create-shipment-form.tsx +2 -0
  289. package/src/routes/orders/order-detail/components/order-activity-section/order-timeline.tsx +13 -5
  290. package/src/routes/orders/order-receive-return/components/order-receive-return-form/order-receive-return-form.tsx +2 -1
  291. package/src/routes/price-lists/price-list-create/components/price-list-create-form/price-list-create-form.tsx +3 -1
  292. package/src/routes/price-lists/price-list-create/components/price-list-create-form/price-list-details-form.tsx +8 -2
  293. package/src/routes/price-lists/price-list-edit/components/price-list-edit-form/edit-price-list-form.tsx +12 -3
  294. package/src/routes/price-lists/price-list-prices-add/components/price-list-prices-add-form/price-list-prices-add-form.tsx +10 -5
  295. package/src/routes/product-variants/product-variant-edit/components/product-edit-variant-form/product-edit-variant-form.tsx +4 -0
  296. package/src/routes/products/common/components/category-combobox/category-combobox.tsx +11 -11
  297. package/src/routes/products/product-create/components/product-create-form/product-create-form.tsx +3 -1
  298. package/src/routes/products/product-create-variant/components/create-product-variant-form/create-product-variant-form.tsx +10 -5
  299. package/src/routes/products/product-create-variant/components/create-product-variant-form/details-tab.tsx +6 -1
  300. package/src/routes/products/product-edit/components/edit-product-form/edit-product-form.tsx +7 -2
  301. package/src/routes/products/product-media/components/product-media-gallery/product-media-gallery.tsx +2 -2
  302. package/src/routes/products/product-stock/hooks/use-product-stock-columns.tsx +2 -1
  303. package/src/routes/profile/profile-edit/components/edit-profile-form/edit-profile-form.tsx +9 -3
  304. package/src/routes/promotions/common/edit-rules/components/rules-form-field/rules-form-field.tsx +4 -0
  305. package/src/routes/promotions/promotion-add-campaign/components/add-campaign-promotion-form/add-campaign-promotion-form.tsx +48 -49
  306. package/src/routes/promotions/promotion-add-campaign/promotion-add-campaign.tsx +4 -21
  307. package/src/routes/promotions/promotion-create/components/create-promotion-form/create-promotion-form.tsx +12 -3
  308. package/src/routes/promotions/promotion-edit-details/components/edit-promotion-form/edit-promotion-details-form.tsx +6 -1
  309. package/src/routes/refund-reasons/refund-reason-create/components/refund-reason-create-form/index.ts +1 -0
  310. package/src/routes/refund-reasons/refund-reason-create/components/refund-reason-create-form/refund-reason-create-form.tsx +131 -0
  311. package/src/routes/refund-reasons/refund-reason-create/index.ts +1 -0
  312. package/src/routes/refund-reasons/refund-reason-create/refund-reason-create.tsx +10 -0
  313. package/src/routes/refund-reasons/refund-reason-edit/components/refund-reason-edit-form/index.ts +1 -0
  314. package/src/routes/refund-reasons/refund-reason-edit/components/refund-reason-edit-form/refund-reason-edit-form.tsx +119 -0
  315. package/src/routes/refund-reasons/refund-reason-edit/index.ts +1 -0
  316. package/src/routes/refund-reasons/refund-reason-edit/refund-reason-edit.tsx +33 -0
  317. package/src/routes/refund-reasons/refund-reason-list/components/refund-reason-list-table/index.ts +1 -0
  318. package/src/routes/refund-reasons/refund-reason-list/components/refund-reason-list-table/refund-reason-list-table.tsx +138 -0
  319. package/src/routes/refund-reasons/refund-reason-list/index.ts +2 -0
  320. package/src/routes/refund-reasons/refund-reason-list/loader.ts +16 -0
  321. package/src/routes/refund-reasons/refund-reason-list/refund-reason-list.tsx +21 -0
  322. package/src/routes/regions/region-create/components/create-region-form/create-region-form.tsx +11 -2
  323. package/src/routes/regions/region-edit/components/edit-region-form/edit-region-form.tsx +11 -2
  324. package/src/routes/reservations/reservation-detail/components/edit-reservation/components/edit-reservation-form.tsx +3 -1
  325. package/src/routes/sales-channels/sales-channel-create/components/create-sales-channel-form/create-sales-channel-form.tsx +2 -0
  326. package/src/routes/sales-channels/sales-channel-edit/components/edit-sales-channel-form/edit-sales-channel-form.tsx +2 -0
  327. package/src/routes/store/store-add-currencies/components/add-currencies-form/add-currencies-form.tsx +2 -0
  328. package/src/routes/store/store-edit/components/edit-store-form/edit-store-form.tsx +7 -2
  329. package/src/routes/tax-regions/tax-region-tax-override-create/components/tax-region-override-create-form/tax-region-tax-override-create.tsx +3 -1
  330. 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
  331. package/src/routes/workflow-executions/workflow-execution-detail/components/workflow-execution-timeline-section/workflow-execution-timeline-section.tsx +3 -2
  332. package/dist/manage-locations-3TBIUSHP.mjs +0 -236
@@ -6,6 +6,7 @@ export * from "./use-order-table-query"
6
6
  export * from "./use-product-table-query"
7
7
  export * from "./use-product-tag-table-query"
8
8
  export * from "./use-product-type-table-query"
9
+ export * from "./use-refund-reason-table-query"
9
10
  export * from "./use-region-table-query"
10
11
  export * from "./use-return-reason-table-query"
11
12
  export * from "./use-shipping-option-table-query"
@@ -0,0 +1,32 @@
1
+ import { HttpTypes } from "@medusajs/types"
2
+ import { useQueryParams } from "../../use-query-params"
3
+
4
+ type UseRefundReasonTableQueryProps = {
5
+ prefix?: string
6
+ pageSize?: number
7
+ }
8
+
9
+ export const useRefundReasonTableQuery = ({
10
+ prefix,
11
+ pageSize = 20,
12
+ }: UseRefundReasonTableQueryProps) => {
13
+ const queryObject = useQueryParams(
14
+ ["offset", "q", "order", "created_at", "updated_at"],
15
+ prefix
16
+ )
17
+
18
+ const { offset, q, order, created_at, updated_at } = queryObject
19
+ const searchParams: HttpTypes.AdminRefundReasonListParams = {
20
+ limit: pageSize,
21
+ offset: offset ? Number(offset) : 0,
22
+ order,
23
+ created_at: created_at ? JSON.parse(created_at) : undefined,
24
+ updated_at: updated_at ? JSON.parse(updated_at) : undefined,
25
+ q,
26
+ }
27
+
28
+ return {
29
+ searchParams,
30
+ raw: queryObject,
31
+ }
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",
@@ -10219,6 +10227,115 @@
10219
10227
  ],
10220
10228
  "additionalProperties": false
10221
10229
  },
10230
+ "refundReasons": {
10231
+ "type": "object",
10232
+ "properties": {
10233
+ "domain": {
10234
+ "type": "string"
10235
+ },
10236
+ "subtitle": {
10237
+ "type": "string"
10238
+ },
10239
+ "calloutHint": {
10240
+ "type": "string"
10241
+ },
10242
+ "editReason": {
10243
+ "type": "string"
10244
+ },
10245
+ "create": {
10246
+ "type": "object",
10247
+ "properties": {
10248
+ "header": {
10249
+ "type": "string"
10250
+ },
10251
+ "subtitle": {
10252
+ "type": "string"
10253
+ },
10254
+ "hint": {
10255
+ "type": "string"
10256
+ },
10257
+ "successToast": {
10258
+ "type": "string"
10259
+ }
10260
+ },
10261
+ "required": ["header", "subtitle", "hint", "successToast"],
10262
+ "additionalProperties": false
10263
+ },
10264
+ "edit": {
10265
+ "type": "object",
10266
+ "properties": {
10267
+ "header": {
10268
+ "type": "string"
10269
+ },
10270
+ "subtitle": {
10271
+ "type": "string"
10272
+ },
10273
+ "successToast": {
10274
+ "type": "string"
10275
+ }
10276
+ },
10277
+ "required": ["header", "subtitle", "successToast"],
10278
+ "additionalProperties": false
10279
+ },
10280
+ "delete": {
10281
+ "type": "object",
10282
+ "properties": {
10283
+ "confirmation": {
10284
+ "type": "string"
10285
+ },
10286
+ "successToast": {
10287
+ "type": "string"
10288
+ }
10289
+ },
10290
+ "required": ["confirmation", "successToast"],
10291
+ "additionalProperties": false
10292
+ },
10293
+ "fields": {
10294
+ "type": "object",
10295
+ "properties": {
10296
+ "label": {
10297
+ "type": "object",
10298
+ "properties": {
10299
+ "label": {
10300
+ "type": "string"
10301
+ },
10302
+ "placeholder": {
10303
+ "type": "string"
10304
+ }
10305
+ },
10306
+ "required": ["label", "placeholder"],
10307
+ "additionalProperties": false
10308
+ },
10309
+ "description": {
10310
+ "type": "object",
10311
+ "properties": {
10312
+ "label": {
10313
+ "type": "string"
10314
+ },
10315
+ "placeholder": {
10316
+ "type": "string"
10317
+ }
10318
+ },
10319
+ "required": ["label", "placeholder"],
10320
+ "additionalProperties": false
10321
+ }
10322
+ },
10323
+ "required": ["label", "description"],
10324
+ "additionalProperties": false
10325
+ }
10326
+ },
10327
+ "required": [
10328
+ "domain",
10329
+ "subtitle",
10330
+ "calloutHint",
10331
+ "editReason",
10332
+ "create",
10333
+ "edit",
10334
+ "delete",
10335
+ "fields"
10336
+ ],
10337
+ "additionalProperties": false
10338
+ },
10222
10339
  "login": {
10223
10340
  "type": "object",
10224
10341
  "properties": {
@@ -11747,6 +11864,7 @@
11747
11864
  "salesChannels",
11748
11865
  "apiKeyManagement",
11749
11866
  "returnReasons",
11867
+ "refundReasons",
11750
11868
  "login",
11751
11869
  "invite",
11752
11870
  "resetPassword",
@@ -52,6 +52,7 @@
52
52
  "noSearchResultsFor": "No search results for <0>'{{query}}'</0>",
53
53
  "noRecordsTitle": "No records",
54
54
  "noRecordsMessage": "There are no records to show",
55
+ "noRecordsMessageFiltered": "There are no records to show matching the filters",
55
56
  "unsavedChangesTitle": "Are you sure you want to leave this form?",
56
57
  "unsavedChangesDescription": "You have unsaved changes that will be lost if you exit this form.",
57
58
  "includesTaxTooltip": "Prices in this column are tax inclusive.",
@@ -831,6 +832,7 @@
831
832
  "deleteWarning": "You are about to delete an inventory item. This action cannot be undone.",
832
833
  "editItemDetails": "Edit item details",
833
834
  "quantityAcrossLocations": "{{quantity}} across {{locations}} locations",
835
+ "levelDeleted": "Inventory level deleted successfully.",
834
836
  "create": {
835
837
  "title": "Create Inventory Item",
836
838
  "details": "Details",
@@ -2233,7 +2235,7 @@
2233
2235
  "total_used": "Budget used",
2234
2236
  "budget_limit": "Budget limit",
2235
2237
  "campaign_id": {
2236
- "hint": "Only campaigns with the same currency code as the promotion are shown in this list."
2238
+ "hint": "Disabled campaigns have budget in a different currency than the promotion."
2237
2239
  }
2238
2240
  },
2239
2241
  "budget": {
@@ -2744,6 +2746,37 @@
2744
2746
  }
2745
2747
  }
2746
2748
  },
2749
+ "refundReasons": {
2750
+ "domain": "Refund Reasons",
2751
+ "subtitle": "Manage reasons for issuing refunds.",
2752
+ "calloutHint": "Manage the reasons to categorize refunds.",
2753
+ "editReason": "Edit Refund Reason",
2754
+ "create": {
2755
+ "header": "Add Refund Reason",
2756
+ "subtitle": "Specify the most common reasons for refunds.",
2757
+ "hint": "Create a new refund reason to categorize refunds.",
2758
+ "successToast": "Refund reason {{label}} was successfully created."
2759
+ },
2760
+ "edit": {
2761
+ "header": "Edit Refund Reason",
2762
+ "subtitle": "Edit the value of the refund reason.",
2763
+ "successToast": "Refund reason {{label}} was successfully updated."
2764
+ },
2765
+ "delete": {
2766
+ "confirmation": "You are about to delete the refund reason \"{{label}}\". This action cannot be undone.",
2767
+ "successToast": "Refund reason was successfully deleted."
2768
+ },
2769
+ "fields": {
2770
+ "label": {
2771
+ "label": "Label",
2772
+ "placeholder": "Gesture of goodwill"
2773
+ },
2774
+ "description": {
2775
+ "label": "Description",
2776
+ "placeholder": "Customer had a bad shopping experience"
2777
+ }
2778
+ }
2779
+ },
2747
2780
  "login": {
2748
2781
  "forgotPassword": "Forgot password? - <0>Reset</0>",
2749
2782
  "title": "Welcome to Medusa",
@@ -1,5 +1,5 @@
1
1
  import { I18nProvider as Provider } from "@medusajs/ui"
2
- import { PropsWithChildren } from "react"
2
+ import { PropsWithChildren, useEffect } from "react"
3
3
  import { useTranslation } from "react-i18next"
4
4
  import { languages } from "../../i18n/languages"
5
5
 
@@ -12,9 +12,14 @@ const formatLocaleCode = (code: string) => {
12
12
  export const I18nProvider = ({ children }: I18nProviderProps) => {
13
13
  const { i18n } = useTranslation()
14
14
 
15
- const locale =
16
- languages.find((lan) => lan.code === i18n.language)?.code ||
17
- languages[0].code
15
+ const currentLanguage =
16
+ languages.find((lan) => lan.code === i18n.language) || languages[0]
17
+ const locale = currentLanguage.code
18
+ const direction = currentLanguage.ltr ? "ltr" : "rtl"
19
+
20
+ useEffect(() => {
21
+ document.documentElement.setAttribute("dir", direction)
22
+ }, [direction])
18
23
 
19
24
  return <Provider locale={formatLocaleCode(locale)}>{children}</Provider>
20
25
  }
@@ -15,14 +15,14 @@ export const CampaignBudget = ({ campaign }: CampaignBudgetProps) => {
15
15
  <Container className="flex flex-col gap-y-4 px-6 py-4">
16
16
  <div className="flex justify-between">
17
17
  <div className="flex-grow">
18
- <div className="bg-ui-bg-base shadow-borders-base float-left flex size-7 items-center justify-center rounded-md">
18
+ <div className="bg-ui-bg-base shadow-borders-base float-start flex size-7 items-center justify-center rounded-md">
19
19
  <div className="bg-ui-bg-component flex size-6 items-center justify-center rounded-[4px]">
20
20
  <ChartPie className="text-ui-fg-subtle" />
21
21
  </div>
22
22
  </div>
23
23
 
24
24
  <Heading
25
- className="text-ui-fg-subtle ml-10 mt-[1.5px] font-normal"
25
+ className="text-ui-fg-subtle ms-10 mt-[1.5px] font-normal"
26
26
  level="h3"
27
27
  >
28
28
  {t("campaigns.fields.budget_limit")}
@@ -46,7 +46,7 @@ export const CampaignBudget = ({ campaign }: CampaignBudgetProps) => {
46
46
 
47
47
  <div>
48
48
  <Text
49
- className="text-ui-fg-subtle border-ui-border-strong border-l-4 pl-3"
49
+ className="text-ui-fg-subtle border-ui-border-strong border-l-4 ps-3"
50
50
  size="small"
51
51
  leading="compact"
52
52
  >
@@ -14,6 +14,7 @@ import { useTranslation } from "react-i18next"
14
14
 
15
15
  import { Form } from "../../../../../components/common/form"
16
16
  import { useStore } from "../../../../../hooks/api/store"
17
+ import { useDocumentDirection } from "../../../../../hooks/use-document-direction"
17
18
  import {
18
19
  currencies,
19
20
  getCurrencySymbol,
@@ -22,7 +23,7 @@ import {
22
23
  export const CreateCampaignFormFields = ({ form, fieldScope = "" }) => {
23
24
  const { t } = useTranslation()
24
25
  const { store } = useStore()
25
-
26
+ const direction = useDocumentDirection()
26
27
  const watchValueType = useWatch({
27
28
  control: form.control,
28
29
  name: `${fieldScope}budget.type`,
@@ -207,6 +208,7 @@ export const CreateCampaignFormFields = ({ form, fieldScope = "" }) => {
207
208
 
208
209
  <Form.Control>
209
210
  <RadioGroup
211
+ dir={direction}
210
212
  className="flex gap-y-3"
211
213
  {...field}
212
214
  onValueChange={field.onChange}
@@ -250,6 +252,7 @@ export const CreateCampaignFormFields = ({ form, fieldScope = "" }) => {
250
252
  </Form.Label>
251
253
  <Form.Control>
252
254
  <Select
255
+ dir={direction}
253
256
  {...field}
254
257
  onValueChange={onChange}
255
258
  disabled={!!fieldScope.length}
@@ -4,6 +4,7 @@ import { useTranslation } from "react-i18next"
4
4
 
5
5
  import { Form } from "../../../../../components/common/form"
6
6
  import { HandleInput } from "../../../../../components/inputs/handle-input"
7
+ import { useDocumentDirection } from "../../../../../hooks/use-document-direction"
7
8
  import { CreateCategorySchema } from "./schema"
8
9
 
9
10
  type CreateCategoryDetailsProps = {
@@ -12,7 +13,7 @@ type CreateCategoryDetailsProps = {
12
13
 
13
14
  export const CreateCategoryDetails = ({ form }: CreateCategoryDetailsProps) => {
14
15
  const { t } = useTranslation()
15
-
16
+ const direction = useDocumentDirection()
16
17
  return (
17
18
  <div className="flex flex-col items-center p-16">
18
19
  <div className="flex w-full max-w-[720px] flex-col gap-y-8">
@@ -80,7 +81,11 @@ export const CreateCategoryDetails = ({ form }: CreateCategoryDetailsProps) => {
80
81
  <Form.Item>
81
82
  <Form.Label>{t("categories.fields.status.label")}</Form.Label>
82
83
  <Form.Control>
83
- <Select {...field} onValueChange={onChange}>
84
+ <Select
85
+ dir={direction}
86
+ {...field}
87
+ onValueChange={onChange}
88
+ >
84
89
  <Select.Trigger ref={ref}>
85
90
  <Select.Value />
86
91
  </Select.Trigger>
@@ -109,7 +114,11 @@ export const CreateCategoryDetails = ({ form }: CreateCategoryDetailsProps) => {
109
114
  {t("categories.fields.visibility.label")}
110
115
  </Form.Label>
111
116
  <Form.Control>
112
- <Select {...field} onValueChange={onChange}>
117
+ <Select
118
+ dir={direction}
119
+ {...field}
120
+ onValueChange={onChange}
121
+ >
113
122
  <Select.Trigger ref={ref}>
114
123
  <Select.Value />
115
124
  </Select.Trigger>
@@ -14,6 +14,7 @@ import { transformNullableFormData } from "../../../../../lib/form-helpers"
14
14
  import { CreateCategoryDetails } from "./create-category-details"
15
15
  import { CreateCategoryNesting } from "./create-category-nesting"
16
16
  import { CreateCategoryDetailsSchema, CreateCategorySchema } from "./schema"
17
+ import { useDocumentDirection } from "../../../../../hooks/use-document-direction"
17
18
 
18
19
  type CreateCategoryFormProps = {
19
20
  parentCategoryId: string | null
@@ -29,7 +30,7 @@ export const CreateCategoryForm = ({
29
30
  }: CreateCategoryFormProps) => {
30
31
  const { t } = useTranslation()
31
32
  const { handleSuccess } = useRouteModal()
32
-
33
+ const direction = useDocumentDirection()
33
34
  const [activeTab, setActiveTab] = useState<Tab>(Tab.DETAILS)
34
35
  const [validDetails, setValidDetails] = useState(false)
35
36
  const [shouldFreeze, setShouldFreeze] = useState(false)
@@ -129,8 +130,8 @@ export const CreateCategoryForm = ({
129
130
  onSubmit={handleSubmit}
130
131
  className="flex size-full flex-col overflow-hidden"
131
132
  >
132
- <ProgressTabs
133
- value={activeTab}
133
+ <ProgressTabs
134
+ dir={direction}value={activeTab}
134
135
  onValueChange={(tab) => handleTabChange(tab as Tab)}
135
136
  className="flex size-full flex-col"
136
137
  >
@@ -111,7 +111,7 @@ const PathDisplay = ({
111
111
  </button>
112
112
  </Tooltip>
113
113
  <div className="flex size-[15px] shrink-0 items-center justify-center">
114
- <TriangleRightMini />
114
+ <TriangleRightMini className="rtl:rotate-180" />
115
115
  </div>
116
116
  <Text
117
117
  size="xsmall"
@@ -10,6 +10,7 @@ import { HandleInput } from "../../../../../components/inputs/handle-input"
10
10
  import { RouteDrawer, useRouteModal } from "../../../../../components/modals"
11
11
  import { KeyboundForm } from "../../../../../components/utilities/keybound-form"
12
12
  import { useUpdateProductCategory } from "../../../../../hooks/api/categories"
13
+ import { useDocumentDirection } from "../../../../../hooks/use-document-direction"
13
14
 
14
15
  const EditCategorySchema = z.object({
15
16
  name: z.string().min(1),
@@ -26,7 +27,7 @@ type EditCategoryFormProps = {
26
27
  export const EditCategoryForm = ({ category }: EditCategoryFormProps) => {
27
28
  const { t } = useTranslation()
28
29
  const { handleSuccess } = useRouteModal()
29
-
30
+ const direction = useDocumentDirection()
30
31
  const form = useForm<z.infer<typeof EditCategorySchema>>({
31
32
  defaultValues: {
32
33
  name: category.name,
@@ -126,7 +127,11 @@ export const EditCategoryForm = ({ category }: EditCategoryFormProps) => {
126
127
  {t("categories.fields.status.label")}
127
128
  </Form.Label>
128
129
  <Form.Control>
129
- <Select {...field} onValueChange={onChange}>
130
+ <Select
131
+ dir={direction}
132
+ {...field}
133
+ onValueChange={onChange}
134
+ >
130
135
  <Select.Trigger ref={ref}>
131
136
  <Select.Value />
132
137
  </Select.Trigger>
@@ -155,7 +160,11 @@ export const EditCategoryForm = ({ category }: EditCategoryFormProps) => {
155
160
  {t("categories.fields.visibility.label")}
156
161
  </Form.Label>
157
162
  <Form.Control>
158
- <Select {...field} onValueChange={onChange}>
163
+ <Select
164
+ dir={direction}
165
+ {...field}
166
+ onValueChange={onChange}
167
+ >
159
168
  <Select.Trigger ref={ref}>
160
169
  <Select.Value />
161
170
  </Select.Trigger>
@@ -36,6 +36,7 @@ import {
36
36
  import { queryClient } from "../../../../../lib/query-client"
37
37
  import { InventoryAvailabilityForm } from "./inventory-availability-form"
38
38
  import { CreateInventoryItemSchema } from "./schema"
39
+ import { useDocumentDirection } from "../../../../../hooks/use-document-direction"
39
40
 
40
41
  enum Tab {
41
42
  DETAILS = "details",
@@ -54,7 +55,7 @@ export function InventoryCreateForm({ locations }: InventoryCreateFormProps) {
54
55
  const { t } = useTranslation()
55
56
  const { handleSuccess } = useRouteModal()
56
57
  const [tab, setTab] = useState<Tab>(Tab.DETAILS)
57
-
58
+ const direction = useDocumentDirection()
58
59
  const form = useForm<CreateInventoryItemSchema>({
59
60
  defaultValues: {
60
61
  title: "",
@@ -201,6 +202,7 @@ export function InventoryCreateForm({ locations }: InventoryCreateFormProps) {
201
202
  return (
202
203
  <RouteFocusModal.Form form={form}>
203
204
  <ProgressTabs
205
+ dir={direction}
204
206
  value={tab}
205
207
  className="h-full"
206
208
  onValueChange={(tab) => onTabChange(tab as Tab)}
@@ -46,7 +46,7 @@ export const InventoryItemVariantsSection = ({
46
46
  </span>
47
47
  </div>
48
48
  <div className="size-7 flex items-center justify-center">
49
- <TriangleRightMini className="text-ui-fg-muted" />
49
+ <TriangleRightMini className="text-ui-fg-muted rtl:rotate-180" />
50
50
  </div>
51
51
  </div>
52
52
  </div>
@@ -49,9 +49,16 @@ export const useLocationListTableColumns = () => {
49
49
  level.location_id
50
50
  )
51
51
 
52
+ toast.success(t("inventory.levelDeleted"))
53
+
52
54
  queryClient.invalidateQueries({
53
55
  queryKey: inventoryItemsQueryKeys.lists(),
54
56
  })
57
+ queryClient.invalidateQueries({
58
+ queryKey: inventoryItemLevelsQueryKeys.list({
59
+ inventoryItemId: level.inventory_item_id,
60
+ }),
61
+ })
55
62
  queryClient.invalidateQueries({
56
63
  queryKey: inventoryItemsQueryKeys.detail(level.inventory_item_id),
57
64
  })
@@ -1,11 +1,11 @@
1
1
  import { Checkbox, Text, clx } from "@medusajs/ui"
2
2
 
3
- import { StockLocationDTO } from "@medusajs/types"
3
+ import { HttpTypes } from "@medusajs/types"
4
4
 
5
5
  type LocationItemProps = {
6
6
  selected: boolean
7
7
  onSelect: (selected: boolean) => void
8
- location: StockLocationDTO
8
+ location: HttpTypes.AdminStockLocation
9
9
  }
10
10
 
11
11
  export const LocationItem = ({
@@ -0,0 +1,34 @@
1
+ import { Input } from "@medusajs/ui"
2
+ import { useTranslation } from "react-i18next"
3
+ import { useState, useEffect } from "react"
4
+
5
+ type LocationSearchInputProps = {
6
+ onSearchChange: (search: string) => void
7
+ placeholder?: string
8
+ }
9
+
10
+ export const LocationSearchInput = ({
11
+ onSearchChange,
12
+ placeholder,
13
+ }: LocationSearchInputProps) => {
14
+ const { t } = useTranslation()
15
+ const [searchValue, setSearchValue] = useState("")
16
+
17
+ useEffect(() => {
18
+ const timer = setTimeout(() => {
19
+ onSearchChange(searchValue)
20
+ }, 300)
21
+
22
+ return () => clearTimeout(timer)
23
+ }, [searchValue, onSearchChange])
24
+
25
+ return (
26
+ <Input
27
+ type="text"
28
+ placeholder={placeholder || t("general.search")}
29
+ value={searchValue}
30
+ onChange={(e) => setSearchValue(e.target.value)}
31
+ className="w-full"
32
+ />
33
+ )
34
+ }