@medusajs/dashboard 3.0.0-snapshot-20251208164410 → 3.0.0-snapshot-20251211180009

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 (380) hide show
  1. package/dist/{add-campaign-promotions-I7HDYMBX.mjs → add-campaign-promotions-PHAHMGXP.mjs} +2 -1
  2. package/dist/{adjust-inventory-ZB3AVET7.mjs → adjust-inventory-I5VYMAI4.mjs} +5 -3
  3. package/dist/{api-key-management-create-U6VGZK7R.mjs → api-key-management-create-CVRFY4PL.mjs} +5 -4
  4. package/dist/{api-key-management-detail-OEAWWV5O.mjs → api-key-management-detail-G7O7TDPW.mjs} +12 -12
  5. package/dist/{api-key-management-edit-TJM737A7.mjs → api-key-management-edit-JMU3WEPX.mjs} +7 -5
  6. package/dist/{api-key-management-list-ZRYMMTF5.mjs → api-key-management-list-RGLZMUCB.mjs} +3 -3
  7. package/dist/{api-key-management-sales-channels-D2RAHI7W.mjs → api-key-management-sales-channels-4OU5VGIG.mjs} +8 -7
  8. package/dist/app.css +41 -3
  9. package/dist/app.js +18101 -17658
  10. package/dist/app.mjs +11 -11
  11. package/dist/{campaign-budget-edit-H2KQKD7B.mjs → campaign-budget-edit-B5MSE26J.mjs} +4 -2
  12. package/dist/{campaign-configuration-A452A22M.mjs → campaign-configuration-QOE3D2BE.mjs} +4 -2
  13. package/dist/{campaign-create-IXOWJQ4L.mjs → campaign-create-FJOECKGT.mjs} +5 -4
  14. package/dist/{campaign-detail-TFQCDDIN.mjs → campaign-detail-I2N5WUEC.mjs} +9 -9
  15. package/dist/{campaign-edit-LZV56AYF.mjs → campaign-edit-K2POQH7M.mjs} +4 -2
  16. package/dist/{categories-metadata-7JFVYYUN.mjs → categories-metadata-DNVBNWAJ.mjs} +12 -11
  17. package/dist/{category-create-BTMZYQ5R.mjs → category-create-L2KJCHPO.mjs} +7 -6
  18. package/dist/{category-detail-UUEMLEVJ.mjs → category-detail-XEFMQSZG.mjs} +32 -16
  19. package/dist/{category-edit-Q3KEELHO.mjs → category-edit-U6SLZSAX.mjs} +6 -4
  20. package/dist/{category-list-Z6HS6N75.mjs → category-list-W7JW4PWA.mjs} +21 -6
  21. package/dist/{category-organize-45NPSRNG.mjs → category-organize-LLSVAO3U.mjs} +4 -3
  22. package/dist/{category-products-KW6X3JDW.mjs → category-products-LF7P7MBF.mjs} +15 -14
  23. package/dist/{chunk-O5DGX2NZ.mjs → chunk-34KFHPN6.mjs} +1 -1
  24. package/dist/{chunk-PNPT4W2F.mjs → chunk-3BJLNORD.mjs} +1 -1
  25. package/dist/{chunk-NFEW5CVI.mjs → chunk-3C6WQ7NH.mjs} +3 -37
  26. package/dist/{chunk-NTYLG6Y3.mjs → chunk-3ESSTIV2.mjs} +200 -11
  27. package/dist/{chunk-RNYL6AXZ.mjs → chunk-4VNR7DND.mjs} +2 -2
  28. package/dist/chunk-4Y2NYEXF.mjs +0 -0
  29. package/dist/{chunk-67RC6SEX.mjs → chunk-5LGRZSEH.mjs} +1 -1
  30. package/dist/{chunk-Q6MSICBU.mjs → chunk-6GLZIACV.mjs} +1 -1
  31. package/dist/{chunk-5N33TBBX.mjs → chunk-7AX6R6G6.mjs} +1 -1
  32. package/dist/{chunk-35G7IXTE.mjs → chunk-7GJ5T4R3.mjs} +21 -18
  33. package/dist/{chunk-YGLRZQ4C.mjs → chunk-7R743WZ6.mjs} +18 -7
  34. package/dist/{chunk-EFRTOOI5.mjs → chunk-AFXODJBA.mjs} +1 -1
  35. package/dist/{chunk-FJHAGJ5G.mjs → chunk-AH4DORIW.mjs} +1 -1
  36. package/dist/{chunk-OMRGW7JS.mjs → chunk-BZKI5J2M.mjs} +4 -4
  37. package/dist/{chunk-UM4OIJZ3.mjs → chunk-CFQNWTZV.mjs} +1 -1
  38. package/dist/{chunk-AERWK3TJ.mjs → chunk-D6UW7URG.mjs} +67 -218
  39. package/dist/{chunk-D55WNQYO.mjs → chunk-DCYB22MH.mjs} +1 -1
  40. package/dist/{chunk-3RRA56WC.mjs → chunk-DODQ3KJT.mjs} +3 -8
  41. package/dist/{chunk-PMJJI6GO.mjs → chunk-DS5IRNJY.mjs} +2 -2
  42. package/dist/{chunk-MB7M5THW.mjs → chunk-EQBVGH3N.mjs} +1 -1
  43. package/dist/{chunk-EQTBJSBZ.mjs → chunk-F5I264Q3.mjs} +3 -0
  44. package/dist/{chunk-W7SLPIO2.mjs → chunk-FEB3ZGTL.mjs} +214 -17
  45. package/dist/{chunk-HRSO6H4F.mjs → chunk-FIFVOKTK.mjs} +3 -3
  46. package/dist/{chunk-4YAPXPLM.mjs → chunk-FPBKWWSI.mjs} +1 -1
  47. package/dist/{chunk-GHBURGZC.mjs → chunk-FQDPOKEK.mjs} +1 -1
  48. package/dist/{chunk-M32MJOJN.mjs → chunk-G4BWCU5P.mjs} +6 -3
  49. package/dist/{chunk-3ZJ55SFA.mjs → chunk-GN6OCHP4.mjs} +2 -2
  50. package/dist/{chunk-2QH2TBJ2.mjs → chunk-HPPR6PXK.mjs} +4 -4
  51. package/dist/{chunk-HWKLNKOY.mjs → chunk-I6C52ARQ.mjs} +1 -1
  52. package/dist/{chunk-S3MMZPMX.mjs → chunk-JJGE3EV6.mjs} +2 -2
  53. package/dist/chunk-JQBWAJQZ.mjs +0 -0
  54. package/dist/{chunk-TBEGSDLQ.mjs → chunk-KCWP7RF5.mjs} +1 -1
  55. package/dist/{chunk-T57MRRCF.mjs → chunk-LCEKY54O.mjs} +4 -2
  56. package/dist/{chunk-QW4SQVMT.mjs → chunk-LEJUZW3P.mjs} +53 -110
  57. package/dist/{chunk-FNQ227BC.mjs → chunk-N3FCYZV6.mjs} +1 -1
  58. package/dist/{chunk-6VRDTPH2.mjs → chunk-N3SAXQVR.mjs} +4 -2
  59. package/dist/{chunk-MOGV3UZD.mjs → chunk-N4O5FAUC.mjs} +1 -1
  60. package/dist/{chunk-7H6DB666.mjs → chunk-NHDFPGQ3.mjs} +1 -1
  61. package/dist/{chunk-SAZHCRHS.mjs → chunk-NT6C7CHT.mjs} +1 -1
  62. package/dist/{chunk-7DXVXBSA.mjs → chunk-NTEWUH4C.mjs} +1 -1
  63. package/dist/{chunk-5AM254NB.mjs → chunk-OFN7DIZA.mjs} +3 -83
  64. package/dist/{chunk-42TMWI76.mjs → chunk-OXPE5TAY.mjs} +1 -1
  65. package/dist/{chunk-HEYM67GY.mjs → chunk-PS5T2R6J.mjs} +5 -3
  66. package/dist/{chunk-PPRHEG37.mjs → chunk-R2EBIESZ.mjs} +2 -2
  67. package/dist/{chunk-PCFUZKDS.mjs → chunk-R65S6ZZV.mjs} +4 -1
  68. package/dist/{chunk-25UWYEJX.mjs → chunk-RKUXD6IZ.mjs} +1 -1
  69. package/dist/{chunk-NKGKWMUU.mjs → chunk-UEJOY5PF.mjs} +14 -15
  70. package/dist/{chunk-VSQK3AWP.mjs → chunk-VX2HE7O5.mjs} +20 -16
  71. package/dist/{chunk-3I6G3NRU.mjs → chunk-WG7UTTKY.mjs} +2 -2
  72. package/dist/chunk-WVA4O7QS.mjs +182 -0
  73. package/dist/{chunk-YGEJFHC3.mjs → chunk-XIVBRONM.mjs} +1 -1
  74. package/dist/chunk-XNIVMZHA.mjs +50 -0
  75. package/dist/{chunk-2WLOIS3L.mjs → chunk-Y5UO73CH.mjs} +18 -2
  76. package/dist/{chunk-P23S5LDK.mjs → chunk-YIOBBZUB.mjs} +6 -4
  77. package/dist/{chunk-AGBHQZZT.mjs → chunk-ZADXDNB3.mjs} +343 -356
  78. package/dist/{collection-add-products-YSTEEHMF.mjs → collection-add-products-EM7SAFEH.mjs} +16 -15
  79. package/dist/{collection-create-RIGJHEX5.mjs → collection-create-4JX4YE47.mjs} +4 -3
  80. package/dist/{collection-detail-P5JWWFHH.mjs → collection-detail-UQXMMKRW.mjs} +30 -15
  81. package/dist/{collection-edit-WX5G3FHR.mjs → collection-edit-MXL35GQQ.mjs} +6 -4
  82. package/dist/{collection-list-PU6SWYVL.mjs → collection-list-EO56ZH4Q.mjs} +39 -25
  83. package/dist/{collection-metadata-R55DUZSX.mjs → collection-metadata-UXEYXJY4.mjs} +13 -12
  84. package/dist/{customer-create-VL6SIRZ2.mjs → customer-create-IA56MXE6.mjs} +2 -1
  85. package/dist/{customer-create-address-V5C6M52P.mjs → customer-create-address-27M25HTO.mjs} +2 -1
  86. package/dist/{customer-detail-HVGU3DRM.mjs → customer-detail-OD5I5YWW.mjs} +16 -16
  87. package/dist/{customer-edit-WTBPVWOF.mjs → customer-edit-XQ5NWIVX.mjs} +4 -2
  88. package/dist/{customer-group-add-customers-2Y2GVCDV.mjs → customer-group-add-customers-FRJP6RCY.mjs} +5 -4
  89. package/dist/{customer-group-create-A3CB3Z4K.mjs → customer-group-create-RY4FVEIW.mjs} +2 -1
  90. package/dist/{customer-group-detail-QKFWIFYH.mjs → customer-group-detail-SOWUWFJ4.mjs} +12 -12
  91. package/dist/{customer-group-edit-7KV2PNLE.mjs → customer-group-edit-MQWARIQZ.mjs} +4 -2
  92. package/dist/{customer-group-list-WLG2ZMBD.mjs → customer-group-list-A5LER6CN.mjs} +13 -13
  93. package/dist/{customer-group-metadata-4F2SZF4M.mjs → customer-group-metadata-JQJRLLXG.mjs} +3 -2
  94. package/dist/{customer-metadata-LZ3TAXCV.mjs → customer-metadata-HN2DYD5I.mjs} +3 -2
  95. package/dist/{customers-add-customer-group-KL5UXXOR.mjs → customers-add-customer-group-75EEIDW6.mjs} +14 -13
  96. package/dist/{edit-inventory-item-O6JLGZE4.mjs → edit-inventory-item-RATTNP2Y.mjs} +5 -3
  97. package/dist/{edit-inventory-item-attributes-AUVR3GYY.mjs → edit-inventory-item-attributes-JHH5GSNL.mjs} +5 -3
  98. package/dist/{edit-reservation-GQ6R6GVA.mjs → edit-reservation-UZCSNLHY.mjs} +6 -4
  99. package/dist/{edit-rules-PJWEWMM7.mjs → edit-rules-IKV4MGHV.mjs} +15 -13
  100. package/dist/en.json +22 -49
  101. package/dist/{inventory-create-P3WYAGQZ.mjs → inventory-create-DBD7EA7N.mjs} +12 -11
  102. package/dist/{inventory-detail-C2NU7GTA.mjs → inventory-detail-Q2HAUD2Y.mjs} +11 -11
  103. package/dist/{inventory-list-ADJQDNX5.mjs → inventory-list-BQPHK3FV.mjs} +1 -1
  104. package/dist/{inventory-metadata-V2N3HOPG.mjs → inventory-metadata-NQXJBGAQ.mjs} +12 -11
  105. package/dist/{inventory-stock-5DCIGKBI.mjs → inventory-stock-WAZ7CXTY.mjs} +13 -12
  106. package/dist/{invite-VKHAAF4Z.mjs → invite-WISVECE2.mjs} +3 -2
  107. package/dist/{location-create-GDOHM4T3.mjs → location-create-WZ43K3W7.mjs} +2 -1
  108. package/dist/{location-detail-2CJWVT5M.mjs → location-detail-2LKEMZ3X.mjs} +18 -16
  109. package/dist/{location-edit-4SEMGQXA.mjs → location-edit-VCS7GVWQ.mjs} +4 -2
  110. package/dist/{location-fulfillment-providers-PYPUR74W.mjs → location-fulfillment-providers-6WNUCXQL.mjs} +15 -15
  111. package/dist/{location-list-ZJMZZ6T3.mjs → location-list-UK3WRDL5.mjs} +6 -5
  112. package/dist/{location-sales-channels-JPH5BTUY.mjs → location-sales-channels-NKNM5TQK.mjs} +7 -6
  113. package/dist/{location-service-zone-create-35TTX636.mjs → location-service-zone-create-3FWF3DG5.mjs} +5 -3
  114. package/dist/{location-service-zone-edit-RWZS2XYW.mjs → location-service-zone-edit-KHHMSPXD.mjs} +4 -2
  115. package/dist/{location-service-zone-manage-areas-RGMM5Y6C.mjs → location-service-zone-manage-areas-YFEAZUUN.mjs} +5 -3
  116. package/dist/{location-service-zone-shipping-option-create-HLZLP422.mjs → location-service-zone-shipping-option-create-DSLYSNY4.mjs} +16 -14
  117. package/dist/{location-service-zone-shipping-option-edit-OYTEZGGC.mjs → location-service-zone-shipping-option-edit-QCURIIGL.mjs} +20 -8
  118. package/dist/{location-service-zone-shipping-option-pricing-NQRIEGTX.mjs → location-service-zone-shipping-option-pricing-Z5IFOLFJ.mjs} +6 -4
  119. package/dist/{login-AKO3BIQT.mjs → login-2DAZRDSC.mjs} +12 -11
  120. package/dist/{manage-locations-ATCDVTSR.mjs → manage-locations-MLNMPQ5I.mjs} +5 -3
  121. package/dist/{order-allocate-items-2H25GRTK.mjs → order-allocate-items-I5KMPZY5.mjs} +5 -4
  122. package/dist/{order-create-claim-CWGDAFFU.mjs → order-create-claim-E543W2TJ.mjs} +24 -22
  123. package/dist/{order-create-edit-KJODOQXN.mjs → order-create-edit-HDWLEUKF.mjs} +14 -12
  124. package/dist/{order-create-exchange-TM4FQLKM.mjs → order-create-exchange-HBQWTMXR.mjs} +30 -28
  125. package/dist/{order-create-fulfillment-2WJZPAWX.mjs → order-create-fulfillment-PN3HLLB2.mjs} +15 -14
  126. package/dist/{order-create-refund-A6WKCHX7.mjs → order-create-refund-EC7XRI5O.mjs} +18 -16
  127. package/dist/{order-create-return-NDKTI4E5.mjs → order-create-return-LTGYASZZ.mjs} +13 -11
  128. package/dist/{order-create-shipment-3AVEAGAY.mjs → order-create-shipment-CPEAPIJU.mjs} +11 -10
  129. package/dist/{order-detail-7HXZEBWJ.mjs → order-detail-MPNBAUUI.mjs} +27 -27
  130. package/dist/{order-edit-billing-address-DPK7HTLM.mjs → order-edit-billing-address-KMV6RJ6F.mjs} +13 -11
  131. package/dist/{order-edit-email-UJ2OUKHJ.mjs → order-edit-email-377D6O22.mjs} +13 -11
  132. package/dist/{order-edit-shipping-address-5ZCGHHZE.mjs → order-edit-shipping-address-HEFMKAJP.mjs} +13 -11
  133. package/dist/{order-list-5C4TVJRH.mjs → order-list-QOYJFYD5.mjs} +11 -12
  134. package/dist/{order-metadata-UKTGLYWR.mjs → order-metadata-QABOWLXK.mjs} +12 -11
  135. package/dist/{order-receive-return-N7VLM2GX.mjs → order-receive-return-4WFBZ2T7.mjs} +14 -12
  136. package/dist/{order-request-transfer-5ENT7IOT.mjs → order-request-transfer-ISZSSGKO.mjs} +14 -12
  137. package/dist/{price-list-configuration-SS2VMD4N.mjs → price-list-configuration-WZFAJ7ZM.mjs} +8 -6
  138. package/dist/{price-list-create-FF4F6M2A.mjs → price-list-create-DQFXQ247.mjs} +27 -23
  139. package/dist/{price-list-detail-HQF4ZR2U.mjs → price-list-detail-WWJPFIT2.mjs} +27 -20
  140. package/dist/{price-list-edit-VRI5T4W3.mjs → price-list-edit-I5QNCWJP.mjs} +6 -4
  141. package/dist/{price-list-list-S2HWTXKV.mjs → price-list-list-AZOGEZAS.mjs} +34 -18
  142. package/dist/{price-list-prices-add-JYZAHKAQ.mjs → price-list-prices-add-6BCDF4DE.mjs} +22 -18
  143. package/dist/{price-list-prices-edit-TRCLLGU4.mjs → price-list-prices-edit-Z4YJ4YBY.mjs} +11 -7
  144. package/dist/{product-attributes-NEXVST24.mjs → product-attributes-RKEXUYKR.mjs} +17 -17
  145. package/dist/{product-create-WU4YFCMM.mjs → product-create-S7YVI2MR.mjs} +560 -381
  146. package/dist/product-create-option-UMZKRNTC.mjs +150 -0
  147. package/dist/{product-create-variant-RDEE4IX7.mjs → product-create-variant-JRKDSU6D.mjs} +19 -14
  148. package/dist/{product-detail-J4JYWH2M.mjs → product-detail-G7ZVDV46.mjs} +108 -44
  149. package/dist/{product-edit-ZF2WYHPB.mjs → product-edit-CMHKUDQP.mjs} +17 -17
  150. package/dist/product-edit-option-ZMTSLRG5.mjs +155 -0
  151. package/dist/{product-export-QDX6343F.mjs → product-export-H7KYYMGI.mjs} +26 -25
  152. package/dist/{product-image-variants-edit-5L5J32SO.mjs → product-image-variants-edit-HU6NVV6T.mjs} +17 -12
  153. package/dist/{product-import-6TEVSKGQ.mjs → product-import-5PKTI7YC.mjs} +13 -11
  154. package/dist/{product-list-BHGGJX6B.mjs → product-list-ABFSFWKV.mjs} +33 -21
  155. package/dist/{product-media-EKXMOSO4.mjs → product-media-ULNJ7JJY.mjs} +8 -4
  156. package/dist/{product-metadata-BCJJNWAC.mjs → product-metadata-GHL5HV37.mjs} +16 -12
  157. package/dist/{product-organization-IG54OB75.mjs → product-organization-Z7SXABDX.mjs} +19 -19
  158. package/dist/{product-prices-UMEIS5AZ.mjs → product-prices-5WCCQDS6.mjs} +8 -4
  159. package/dist/{product-sales-channels-2SALTLTF.mjs → product-sales-channels-2PN4L7II.mjs} +11 -7
  160. package/dist/{product-shipping-profile-VPHZLKDT.mjs → product-shipping-profile-45XXB7FM.mjs} +8 -52
  161. package/dist/{product-stock-3ILUPCVN.mjs → product-stock-NHC7WD6Z.mjs} +13 -12
  162. package/dist/{product-tag-create-OOUTLHHD.mjs → product-tag-create-MQ6AUCQM.mjs} +11 -10
  163. package/dist/{product-tag-detail-YVKJEAKT.mjs → product-tag-detail-CGURSGJE.mjs} +45 -31
  164. package/dist/{product-tag-edit-RV5WITSN.mjs → product-tag-edit-TOJYTW4H.mjs} +13 -11
  165. package/dist/{product-tag-list-ZSPFYZIL.mjs → product-tag-list-2U4CIGK5.mjs} +44 -30
  166. package/dist/{product-tag-metadata-S5YL3FUL.mjs → product-tag-metadata-JMFWGTR3.mjs} +12 -11
  167. package/dist/{product-type-create-Y752WGBV.mjs → product-type-create-KHSNCQCV.mjs} +2 -1
  168. package/dist/{product-type-detail-EFVZRETM.mjs → product-type-detail-UY6Y3T3G.mjs} +29 -14
  169. package/dist/{product-type-edit-SMPJ5ZEF.mjs → product-type-edit-3LRBWZ3S.mjs} +4 -2
  170. package/dist/{product-type-list-7WQ5D2KV.mjs → product-type-list-XU6DADMO.mjs} +19 -4
  171. package/dist/{product-type-metadata-TNAASDKX.mjs → product-type-metadata-EGMTZ622.mjs} +12 -11
  172. package/dist/{product-variant-detail-CLP5FJP6.mjs → product-variant-detail-5EKVJXUT.mjs} +27 -11
  173. package/dist/{product-variant-edit-REMB77V7.mjs → product-variant-edit-KKLHPWXO.mjs} +16 -13
  174. package/dist/{product-variant-manage-inventory-items-IGDCLZQE.mjs → product-variant-manage-inventory-items-OGM64KYP.mjs} +4 -3
  175. package/dist/{product-variant-media-EKI4BTEV.mjs → product-variant-media-C3KCFODU.mjs} +3 -2
  176. package/dist/{product-variant-metadata-5JIY5KLN.mjs → product-variant-metadata-LBOIYBBF.mjs} +12 -11
  177. package/dist/{profile-edit-NFVR5Y4I.mjs → profile-edit-YZCUGEXF.mjs} +4 -2
  178. package/dist/{promotion-add-campaign-DOALJUKJ.mjs → promotion-add-campaign-DO67QK6M.mjs} +5 -4
  179. package/dist/{promotion-create-2PTB6NQI.mjs → promotion-create-U6CJPBYU.mjs} +19 -18
  180. package/dist/{promotion-detail-RGXCA2XS.mjs → promotion-detail-BYXN4YXZ.mjs} +9 -9
  181. package/dist/{promotion-edit-details-AKKNOCLM.mjs → promotion-edit-details-6BSOOWQN.mjs} +4 -2
  182. package/dist/{refund-reason-create-AGEFXEIZ.mjs → refund-reason-create-TFC4T4GK.mjs} +11 -10
  183. package/dist/{refund-reason-edit-DL56EKBY.mjs → refund-reason-edit-WTM7WR5V.mjs} +13 -11
  184. package/dist/{refund-reason-list-RL2ZG7IJ.mjs → refund-reason-list-7Q6WDYH6.mjs} +18 -18
  185. package/dist/{region-add-countries-6GB2QDJK.mjs → region-add-countries-7U4J5RW6.mjs} +2 -1
  186. package/dist/{region-create-UVJICJRX.mjs → region-create-IUGX33M5.mjs} +5 -3
  187. package/dist/{region-edit-3NVXQECN.mjs → region-edit-WAU347DP.mjs} +5 -3
  188. package/dist/{region-metadata-2HO3SAPM.mjs → region-metadata-EGOMWMMB.mjs} +12 -11
  189. package/dist/{reservation-create-Z7TWUE2L.mjs → reservation-create-C6HTEF3R.mjs} +5 -4
  190. package/dist/{reservation-detail-2AOBK5EY.mjs → reservation-detail-FYS6LFU6.mjs} +9 -9
  191. package/dist/{reservation-list-MN22JYAW.mjs → reservation-list-SOJRN5RI.mjs} +2 -2
  192. package/dist/{reservation-metadata-BFPJTXK6.mjs → reservation-metadata-LZJV35OW.mjs} +12 -11
  193. package/dist/{reset-password-5TAYQEUV.mjs → reset-password-XKX43KUT.mjs} +3 -2
  194. package/dist/{return-reason-create-PLQNC4KW.mjs → return-reason-create-HM54WRJY.mjs} +2 -1
  195. package/dist/{return-reason-edit-XJCPMZ6U.mjs → return-reason-edit-VSIRHVQ6.mjs} +4 -2
  196. package/dist/{return-reason-list-ATE2XU4H.mjs → return-reason-list-IFFIDA5O.mjs} +7 -7
  197. package/dist/{sales-channel-add-products-4LNP2TUM.mjs → sales-channel-add-products-XPS4JTBL.mjs} +15 -14
  198. package/dist/{sales-channel-create-UFFXX5HK.mjs → sales-channel-create-4XLJDVJO.mjs} +4 -3
  199. package/dist/{sales-channel-detail-UMYMS2JA.mjs → sales-channel-detail-5YUELAQ5.mjs} +13 -13
  200. package/dist/{sales-channel-edit-SP2HF4E3.mjs → sales-channel-edit-UZGSXD5X.mjs} +6 -4
  201. package/dist/{sales-channel-list-CV4V6R7H.mjs → sales-channel-list-N3KDOVBS.mjs} +12 -12
  202. package/dist/{sales-channel-metadata-REOQHHUT.mjs → sales-channel-metadata-MU4BVKOJ.mjs} +12 -11
  203. package/dist/{shipping-option-type-create-XAWQO66M.mjs → shipping-option-type-create-AS4AVWZV.mjs} +11 -10
  204. package/dist/{shipping-option-type-detail-G4WLGIAA.mjs → shipping-option-type-detail-MCFL4BJE.mjs} +10 -10
  205. package/dist/{shipping-option-type-edit-OI6TBKGG.mjs → shipping-option-type-edit-PJOD3TA4.mjs} +13 -11
  206. package/dist/{shipping-option-type-list-6GNCKAFB.mjs → shipping-option-type-list-VD567MQD.mjs} +10 -10
  207. package/dist/{shipping-profile-create-NKFUOBVZ.mjs → shipping-profile-create-26R64I3Z.mjs} +2 -1
  208. package/dist/{shipping-profile-metadata-MANQ7ZEI.mjs → shipping-profile-metadata-6MHI75CB.mjs} +12 -11
  209. package/dist/{store-add-currencies-QVG2SI26.mjs → store-add-currencies-ZFS3WZHG.mjs} +2 -1
  210. package/dist/store-add-locales-ERJXWD4L.mjs +264 -0
  211. package/dist/{store-detail-N2CP3MTB.mjs → store-detail-EGDXIVWC.mjs} +280 -14
  212. package/dist/store-edit-AB5CDUTK.mjs +288 -0
  213. package/dist/{store-metadata-U22TVWK2.mjs → store-metadata-ZBUQ62YT.mjs} +12 -11
  214. package/dist/{tax-region-create-JZB7NFIG.mjs → tax-region-create-N4YVNQKV.mjs} +12 -11
  215. package/dist/{tax-region-detail-CBZ3ZJN2.mjs → tax-region-detail-UJASYH57.mjs} +37 -36
  216. package/dist/{tax-region-edit-E56XVHW2.mjs → tax-region-edit-W3B5EUCJ.mjs} +14 -12
  217. package/dist/{tax-region-list-BXZBUXRJ.mjs → tax-region-list-4MQMCMKY.mjs} +4 -3
  218. package/dist/{tax-region-province-create-T2LKEDTK.mjs → tax-region-province-create-GKJ7WMRS.mjs} +2 -1
  219. package/dist/{tax-region-province-detail-2DC2U4EN.mjs → tax-region-province-detail-K4PDPHXP.mjs} +36 -35
  220. package/dist/{tax-region-tax-override-create-JWGWGYB4.mjs → tax-region-tax-override-create-NUI4Z76X.mjs} +34 -33
  221. package/dist/{tax-region-tax-override-edit-7DCU55AS.mjs → tax-region-tax-override-edit-Q4GJHUMJ.mjs} +31 -31
  222. package/dist/{tax-region-tax-rate-create-UEOU5QRU.mjs → tax-region-tax-rate-create-MECFGVPL.mjs} +2 -1
  223. package/dist/{tax-region-tax-rate-edit-ILCDNXHV.mjs → tax-region-tax-rate-edit-7DYSPYOD.mjs} +4 -2
  224. package/dist/translation-list-5ZOAGLCT.mjs +146 -0
  225. package/dist/translations-edit-QPJLE55N.mjs +390 -0
  226. package/dist/{user-detail-K5UMPO2L.mjs → user-detail-KEDJ7N3Q.mjs} +1 -1
  227. package/dist/{user-edit-25HD3BYT.mjs → user-edit-ZBB4RMTP.mjs} +4 -2
  228. package/dist/{user-invite-CRQTVEYA.mjs → user-invite-XB635N26.mjs} +2 -1
  229. package/dist/{user-list-KPI3BTOA.mjs → user-list-YYUOQKQY.mjs} +4 -4
  230. package/dist/{user-metadata-EX5WDGCR.mjs → user-metadata-2FTA4EB3.mjs} +12 -11
  231. package/dist/{workflow-execution-detail-GBPFVG3O.mjs → workflow-execution-detail-MGIZSKVA.mjs} +9 -9
  232. package/package.json +9 -9
  233. package/src/components/common/icon-avatar/icon-avatar.tsx +4 -0
  234. package/src/components/data-grid/components/data-grid-textarea-modal-cell.tsx +233 -0
  235. package/src/components/data-grid/components/index.ts +1 -0
  236. package/src/components/data-grid/data-grid.tsx +2 -0
  237. package/src/components/inputs/combobox/combobox.tsx +92 -173
  238. package/src/components/layout/main-layout/main-layout.tsx +4 -7
  239. package/src/components/layout/settings-layout/settings-layout.tsx +11 -1
  240. package/src/components/modals/route-focus-modal/route-focus-modal.tsx +8 -3
  241. package/src/components/modals/route-modal-form/route-modal-form.tsx +6 -1
  242. package/src/components/modals/route-modal-provider/route-provider.tsx +16 -4
  243. package/src/components/search/use-search-results.tsx +3 -1
  244. package/src/components/table/table-cells/order/total-cell/total-cell.tsx +3 -2
  245. package/src/dashboard-app/routes/get-route.map.tsx +36 -64
  246. package/src/hooks/api/feature-flags.tsx +9 -5
  247. package/src/hooks/api/index.ts +2 -1
  248. package/src/hooks/api/locales.tsx +52 -0
  249. package/src/hooks/api/price-lists.tsx +28 -1
  250. package/src/hooks/api/product-variants.tsx +7 -1
  251. package/src/hooks/api/products.tsx +71 -27
  252. package/src/hooks/api/translations.tsx +254 -0
  253. package/src/hooks/table/columns/use-order-table-columns.tsx +18 -4
  254. package/src/hooks/table/filters/index.ts +0 -1
  255. package/src/hooks/table/query/use-product-table-query.tsx +2 -1
  256. package/src/i18n/translations/$schema.json +68 -171
  257. package/src/i18n/translations/en.json +22 -49
  258. package/src/i18n/translations/es.json +19 -0
  259. package/src/lib/order-helpers.ts +1 -1
  260. package/src/lib/table/cell-renderers.tsx +102 -83
  261. package/src/routes/categories/category-detail/components/category-general-section/category-general-section.tsx +16 -1
  262. package/src/routes/categories/category-list/components/category-list-table/category-list-table.tsx +16 -1
  263. package/src/routes/collections/collection-detail/components/collection-general-section/collection-general-section.tsx +16 -1
  264. package/src/routes/collections/collection-list/components/collection-list-table/collection-row-actions.tsx +16 -1
  265. package/src/routes/orders/order-create-claim/components/claim-create-form/claim-create-form.tsx +11 -4
  266. package/src/routes/orders/order-create-exchange/components/exchange-create-form/exchange-create-form.tsx +11 -4
  267. package/src/routes/orders/order-create-return/components/return-create-form/return-create-form.tsx +11 -4
  268. package/src/routes/orders/order-list/const.ts +1 -1
  269. package/src/routes/price-lists/price-list-create/components/price-list-create-form/price-list-prices-form.tsx +3 -1
  270. package/src/routes/price-lists/price-list-create/components/price-list-create-form/price-list-products-form.tsx +1 -0
  271. package/src/routes/price-lists/price-list-detail/components/price-list-general-section/price-list-general-section.tsx +13 -5
  272. package/src/routes/price-lists/price-list-list/components/price-list-list-table/price-count-cell.tsx +19 -0
  273. package/src/routes/price-lists/price-list-list/components/price-list-list-table/use-pricing-table-columns.tsx +5 -6
  274. package/src/routes/price-lists/price-list-prices-add/components/price-list-prices-add-form/price-list-prices-add-prices-form.tsx +3 -1
  275. package/src/routes/price-lists/price-list-prices-add/price-list-prices-add.tsx +4 -1
  276. package/src/routes/price-lists/price-list-prices-edit/price-list-prices-edit.tsx +6 -2
  277. package/src/routes/product-tags/product-tag-detail/components/product-tag-general-section/product-tag-general-section.tsx +16 -1
  278. package/src/routes/product-tags/product-tag-list/components/product-tag-list-table/product-tag-list-table.tsx +16 -1
  279. package/src/routes/product-types/product-type-detail/components/product-type-general-section/product-type-general-section.tsx +16 -1
  280. package/src/routes/product-types/product-type-list/components/product-type-list-table/product-table-row-actions.tsx +16 -1
  281. package/src/routes/product-variants/product-variant-detail/components/variant-general-section/variant-general-section.tsx +16 -1
  282. package/src/routes/product-variants/product-variant-edit/product-variant-edit.tsx +2 -1
  283. package/src/routes/products/product-attributes/product-attributes.tsx +3 -2
  284. package/src/routes/products/product-create/components/product-create-details-form/components/product-create-details-general-section/product-create-general-section.tsx +4 -16
  285. package/src/routes/products/product-create/components/product-create-details-form/components/product-create-details-variant-section/product-create-details-variant-section.tsx +198 -220
  286. package/src/routes/products/product-create/components/product-create-form/product-create-form.tsx +7 -4
  287. package/src/routes/products/product-create/constants.ts +0 -2
  288. package/src/routes/products/product-create/utils.ts +1 -6
  289. package/src/routes/products/product-create-option/components/create-product-option-form/create-product-option-form.tsx +122 -0
  290. package/src/routes/products/product-create-option/components/create-product-option-form/index.ts +1 -0
  291. package/src/routes/products/product-create-option/index.ts +1 -0
  292. package/src/routes/products/product-create-option/product-create-option.tsx +30 -0
  293. package/src/routes/products/product-create-variant/product-create-variant.tsx +4 -1
  294. package/src/routes/products/product-detail/breadcrumb.tsx +3 -2
  295. package/src/routes/products/product-detail/components/product-general-section/product-general-section.tsx +16 -1
  296. package/src/routes/products/product-detail/components/product-option-section/product-option-section.tsx +49 -31
  297. package/src/routes/products/product-detail/components/product-variant-section/product-variant-section.tsx +32 -1
  298. package/src/routes/products/product-edit/product-edit.tsx +3 -2
  299. package/src/routes/products/product-edit-option/components/edit-product-option-form/edit-product-option-form.tsx +123 -0
  300. package/src/routes/products/product-edit-option/components/edit-product-option-form/index.ts +1 -0
  301. package/src/routes/products/product-edit-option/index.ts +1 -0
  302. package/src/routes/products/product-edit-option/product-edit-option.tsx +35 -0
  303. package/src/routes/products/product-image-variants-edit/product-image-variants-edit.tsx +5 -1
  304. package/src/routes/products/product-list/components/product-list-table/product-list-table.tsx +15 -1
  305. package/src/routes/products/product-media/product-media.tsx +4 -1
  306. package/src/routes/products/product-metadata/product-metadata.tsx +5 -1
  307. package/src/routes/products/product-organization/product-organization.tsx +2 -2
  308. package/src/routes/products/product-prices/product-prices.tsx +4 -1
  309. package/src/routes/products/product-sales-channels/product-sales-channels.tsx +4 -1
  310. package/src/routes/products/product-shipping-profile/product-shipping-profile.tsx +3 -2
  311. package/src/routes/store/common/hooks/use-locales-table-columns.tsx +29 -0
  312. package/src/routes/store/common/hooks/use-locales-table-query.tsx +21 -0
  313. package/src/routes/store/store-add-locales/components/add-locales-form/add-locales-form.tsx +240 -0
  314. package/src/routes/store/store-add-locales/index.ts +1 -0
  315. package/src/routes/store/store-add-locales/store-add-locales.tsx +29 -0
  316. package/src/routes/store/store-detail/components/store-general-section/store-general-section.tsx +24 -0
  317. package/src/routes/store/store-detail/components/store-locale-section/index.ts +1 -0
  318. package/src/routes/store/store-detail/components/store-locale-section/store-locale-section.tsx +290 -0
  319. package/src/routes/store/store-detail/store-detail.tsx +4 -0
  320. package/src/routes/store/store-edit/components/edit-store-form/edit-store-form.tsx +50 -3
  321. package/src/routes/tax-regions/common/components/target-item/target-item.tsx +5 -1
  322. package/src/routes/tax-regions/common/components/tax-override-card/tax-override-card.tsx +10 -10
  323. package/src/routes/translations/translation-list/index.tsx +1 -0
  324. package/src/routes/translations/translation-list/translation-list.tsx +131 -0
  325. package/src/routes/translations/translations-edit/components/translations-edit-form/index.ts +1 -0
  326. package/src/routes/translations/translations-edit/components/translations-edit-form/translations-edit-form.tsx +423 -0
  327. package/src/routes/translations/translations-edit/index.ts +1 -0
  328. package/src/routes/translations/translations-edit/translations-edit.tsx +67 -0
  329. package/src/routes/translations/translations-edit/utils/index.ts +1 -0
  330. package/src/routes/translations/translations-edit/utils/reference-label-map.ts +10 -0
  331. package/dist/chunk-6CPMXY5N.mjs +0 -18
  332. package/dist/chunk-BWU3ZE4W.mjs +0 -13
  333. package/dist/chunk-ZHH3W7CN.mjs +0 -171
  334. package/dist/product-option-create-3Z73MSHD.mjs +0 -336
  335. package/dist/product-option-detail-4VRUA7KT.mjs +0 -322
  336. package/dist/product-option-edit-YIKFL6OY.mjs +0 -324
  337. package/dist/product-option-list-CR7NCCMH.mjs +0 -267
  338. package/dist/product-option-metadata-7CSZUQ7M.mjs +0 -71
  339. package/dist/product-options-manage-QOMXMPGW.mjs +0 -304
  340. package/dist/store-edit-Q25HCMCQ.mjs +0 -238
  341. package/src/hooks/api/product-options.tsx +0 -151
  342. package/src/hooks/table/columns/use-product-option-table-columns.tsx +0 -44
  343. package/src/hooks/table/filters/use-product-option-table-filters.tsx +0 -33
  344. package/src/hooks/table/query/use-product-option-table-query.tsx +0 -34
  345. package/src/routes/product-options/common/hooks/use-delete-product-option-action.tsx +0 -41
  346. package/src/routes/product-options/product-option-create/components/create-product-option-form/create-product-option-details.tsx +0 -71
  347. package/src/routes/product-options/product-option-create/components/create-product-option-form/create-product-option-form.tsx +0 -192
  348. package/src/routes/product-options/product-option-create/components/create-product-option-form/create-product-option-organize.tsx +0 -77
  349. package/src/routes/product-options/product-option-create/components/create-product-option-form/index.ts +0 -1
  350. package/src/routes/product-options/product-option-create/components/create-product-option-form/schema.ts +0 -15
  351. package/src/routes/product-options/product-option-create/index.ts +0 -1
  352. package/src/routes/product-options/product-option-create/product-option-create.tsx +0 -10
  353. package/src/routes/product-options/product-option-detail/breadcrumb.tsx +0 -14
  354. package/src/routes/product-options/product-option-detail/components/product-option-general-section/index.ts +0 -1
  355. package/src/routes/product-options/product-option-detail/components/product-option-general-section/product-option-general-section.tsx +0 -81
  356. package/src/routes/product-options/product-option-detail/components/product-option-product-section/index.ts +0 -1
  357. package/src/routes/product-options/product-option-detail/components/product-option-product-section/product-option-product-section.tsx +0 -74
  358. package/src/routes/product-options/product-option-detail/index.ts +0 -3
  359. package/src/routes/product-options/product-option-detail/loader.ts +0 -17
  360. package/src/routes/product-options/product-option-detail/product-option-detail.tsx +0 -50
  361. package/src/routes/product-options/product-option-edit/components/edit-product-option-form/edit-product-option-details.tsx +0 -94
  362. package/src/routes/product-options/product-option-edit/components/edit-product-option-form/edit-product-option-form.tsx +0 -116
  363. package/src/routes/product-options/product-option-edit/components/edit-product-option-form/edit-product-option-organize.tsx +0 -77
  364. package/src/routes/product-options/product-option-edit/components/edit-product-option-form/index.ts +0 -1
  365. package/src/routes/product-options/product-option-edit/components/edit-product-option-form/schema.ts +0 -13
  366. package/src/routes/product-options/product-option-edit/index.ts +0 -1
  367. package/src/routes/product-options/product-option-edit/product-option-edit.tsx +0 -34
  368. package/src/routes/product-options/product-option-list/components/product-option-list-table/index.ts +0 -1
  369. package/src/routes/product-options/product-option-list/components/product-option-list-table/product-option-list-table.tsx +0 -140
  370. package/src/routes/product-options/product-option-list/index.ts +0 -1
  371. package/src/routes/product-options/product-option-list/product-option-list.tsx +0 -19
  372. package/src/routes/product-options/product-option-metadata/index.ts +0 -1
  373. package/src/routes/product-options/product-option-metadata/product-option-metadata.tsx +0 -27
  374. package/src/routes/products/product-options-manage/components/product-options-manage-form/index.ts +0 -1
  375. package/src/routes/products/product-options-manage/components/product-options-manage-form/product-options-manage-form.tsx +0 -284
  376. package/src/routes/products/product-options-manage/index.ts +0 -1
  377. package/src/routes/products/product-options-manage/product-options-manage.tsx +0 -35
  378. package/dist/{chunk-6WKBBTKM.mjs → chunk-CTUJXJYA.mjs} +0 -0
  379. package/dist/{customer-list-TG4D4QOT.mjs → customer-list-ZXCGIXJC.mjs} +3 -3
  380. package/dist/{region-list-JAQXIBYD.mjs → region-list-XQRIBDMF.mjs} +3 -3
@@ -13,7 +13,10 @@ import { DisplayIdCell } from "../../components/table/table-cells/order/display-
13
13
  import { TotalCell } from "../../components/table/table-cells/order/total-cell"
14
14
  import { MoneyAmountCell } from "../../components/table/table-cells/common/money-amount-cell"
15
15
  import { TFunction } from "i18next"
16
- import { toCamelCase } from "../common"
16
+ import {
17
+ getOrderPaymentStatus,
18
+ getOrderFulfillmentStatus,
19
+ } from "../order-helpers"
17
20
 
18
21
  export type CellRenderer<TData = any> = (
19
22
  value: any,
@@ -27,96 +30,104 @@ export type RendererRegistry = Map<string, CellRenderer>
27
30
  const cellRenderers: RendererRegistry = new Map()
28
31
 
29
32
  const getNestedValue = (obj: any, path: string) => {
30
- return path.split('.').reduce((current, key) => current?.[key], obj)
33
+ return path.split(".").reduce((current, key) => current?.[key], obj)
31
34
  }
32
35
 
33
36
  const TextRenderer: CellRenderer = (value, _row, _column, _t) => {
34
- if (value === null || value === undefined) return '-'
37
+ if (value === null || value === undefined) return "-"
35
38
  return String(value)
36
39
  }
37
40
 
38
41
  const CountRenderer: CellRenderer = (value, _row, _column, t) => {
39
42
  const items = value || []
40
43
  const count = Array.isArray(items) ? items.length : 0
41
- return t('general.items', { count })
44
+ return t("general.items", { count })
42
45
  }
43
46
 
44
47
  const StatusRenderer: CellRenderer = (value, row, column, t) => {
45
- if (!value) return '-'
48
+ if (!value) return "-"
46
49
 
47
- if (column.field === 'status' && row.status && (row.handle || row.is_giftcard !== undefined)) {
50
+ if (
51
+ column.field === "status" &&
52
+ row.status &&
53
+ (row.handle || row.is_giftcard !== undefined)
54
+ ) {
48
55
  return <ProductStatusCell status={row.status} />
49
56
  }
50
57
 
51
- // Generic status badge
58
+ if (column.context === "payment" && t) {
59
+ const { label, color } = getOrderPaymentStatus(t, value)
60
+ return <StatusBadge color={color}>{label}</StatusBadge>
61
+ }
62
+
63
+ if (column.context === "fulfillment" && t) {
64
+ const { label, color } = getOrderFulfillmentStatus(t, value)
65
+ return <StatusBadge color={color}>{label}</StatusBadge>
66
+ }
67
+
68
+ // Generic status badge for other status types
52
69
  const getStatusColor = (status: string) => {
53
70
  switch (status?.toLowerCase()) {
54
- case 'active':
55
- case 'published':
56
- case 'fulfilled':
57
- case 'paid':
58
- return 'green'
59
- case 'pending':
60
- case 'proposed':
61
- case 'processing':
62
- return 'orange'
63
- case 'draft':
64
- return 'grey'
65
- case 'rejected':
66
- case 'failed':
67
- case 'canceled':
68
- return 'red'
71
+ case "active":
72
+ case "published":
73
+ case "fulfilled":
74
+ case "paid":
75
+ return "green"
76
+ case "pending":
77
+ case "proposed":
78
+ case "processing":
79
+ return "orange"
80
+ case "draft":
81
+ return "grey"
82
+ case "rejected":
83
+ case "failed":
84
+ case "canceled":
85
+ return "red"
69
86
  default:
70
- return 'grey'
87
+ return "grey"
71
88
  }
72
89
  }
73
90
 
74
91
  // Use existing translation keys where available
75
- const getTranslatedStatus = (status: string, column: HttpTypes.AdminColumn): string => {
92
+ const getTranslatedStatus = (status: string): string => {
76
93
  if (!t) return status
77
94
 
78
95
  const lowerStatus = status.toLowerCase()
79
- const camelCaseStatus = toCamelCase(lowerStatus)
80
96
  switch (lowerStatus) {
81
- case 'active':
82
- return t('general.active', 'Active') as string
83
- case 'published':
84
- return t('products.productStatus.published', 'Published') as string
85
- case 'draft':
86
- return t('orders.status.draft', 'Draft') as string
87
- case 'pending':
88
- return t('orders.status.pending', 'Pending') as string
89
- case 'canceled':
90
- return t('orders.status.canceled', 'Canceled') as string
97
+ case "active":
98
+ return t("general.active", "Active") as string
99
+ case "published":
100
+ return t("products.productStatus.published", "Published") as string
101
+ case "draft":
102
+ return t("orders.status.draft", "Draft") as string
103
+ case "pending":
104
+ return t("orders.status.pending", "Pending") as string
105
+ case "canceled":
106
+ return t("orders.status.canceled", "Canceled") as string
91
107
  default:
92
- if (column.context === 'payment') {
93
- return t(`orders.payment.status.${camelCaseStatus}`, status) as string
94
- }
95
- if (column.context === 'fulfillment') {
96
- return t(`orders.fulfillment.status.${camelCaseStatus}`, status) as string
97
- }
98
108
  // Try generic status translation with fallback
99
109
  return t(`status.${lowerStatus}`, status) as string
100
110
  }
101
111
  }
102
112
 
103
- const translatedValue = getTranslatedStatus(value, column)
113
+ const translatedValue = getTranslatedStatus(value)
104
114
 
105
115
  return (
106
- <StatusBadge color={getStatusColor(value)}>
107
- {translatedValue}
108
- </StatusBadge>
116
+ <StatusBadge color={getStatusColor(value)}>{translatedValue}</StatusBadge>
109
117
  )
110
118
  }
111
119
 
112
120
  const BadgeListRenderer: CellRenderer = (value, row, column, t) => {
113
121
  // For sales channels
114
- if (column.field === 'sales_channels_display' || column.field === 'sales_channels') {
122
+ if (
123
+ column.field === "sales_channels_display" ||
124
+ column.field === "sales_channels"
125
+ ) {
115
126
  return <SalesChannelsCell salesChannels={row.sales_channels} />
116
127
  }
117
128
 
118
129
  // Generic badge list
119
- if (!Array.isArray(value)) return '-'
130
+ if (!Array.isArray(value)) return "-"
120
131
 
121
132
  const items = value.slice(0, 2)
122
133
  const remaining = value.length - 2
@@ -125,12 +136,16 @@ const BadgeListRenderer: CellRenderer = (value, row, column, t) => {
125
136
  <div className="flex gap-1">
126
137
  {items.map((item, index) => (
127
138
  <Badge key={index} size="xsmall">
128
- {typeof item === 'string' ? item : item.name || item.title || '-'}
139
+ {typeof item === "string" ? item : item.name || item.title || "-"}
129
140
  </Badge>
130
141
  ))}
131
142
  {remaining > 0 && (
132
143
  <Badge size="xsmall" color="grey">
133
- {t ? t('general.plusCountMore', '+ {{count}} more', { count: remaining }) : `+${remaining}`}
144
+ {t
145
+ ? t("general.plusCountMore", "+ {{count}} more", {
146
+ count: remaining,
147
+ })
148
+ : `+${remaining}`}
134
149
  </Badge>
135
150
  )}
136
151
  </div>
@@ -152,7 +167,9 @@ const VariantsRenderer: CellRenderer = (_, row, _column, _t) => {
152
167
  // Order-specific renderers
153
168
  const CustomerNameRenderer: CellRenderer = (_, row, _column, t) => {
154
169
  if (row.customer?.first_name || row.customer?.last_name) {
155
- const fullName = `${row.customer.first_name || ''} ${row.customer.last_name || ''}`.trim()
170
+ const fullName = `${row.customer.first_name || ""} ${
171
+ row.customer.last_name || ""
172
+ }`.trim()
156
173
  if (fullName) return fullName
157
174
  }
158
175
 
@@ -166,20 +183,20 @@ const CustomerNameRenderer: CellRenderer = (_, row, _column, t) => {
166
183
  return row.customer.phone
167
184
  }
168
185
 
169
- return t ? t('customers.guest', 'Guest') : 'Guest'
186
+ return t ? t("customers.guest", "Guest") : "Guest"
170
187
  }
171
188
 
172
189
  const AddressSummaryRenderer: CellRenderer = (_, row, column, _t) => {
173
190
  let address = null
174
- if (column.field === 'shipping_address_display') {
191
+ if (column.field === "shipping_address_display") {
175
192
  address = row.shipping_address
176
- } else if (column.field === 'billing_address_display') {
193
+ } else if (column.field === "billing_address_display") {
177
194
  address = row.billing_address
178
195
  } else {
179
196
  address = row.shipping_address || row.billing_address
180
197
  }
181
198
 
182
- if (!address) return '-'
199
+ if (!address) return "-"
183
200
 
184
201
  const parts = []
185
202
 
@@ -193,14 +210,14 @@ const AddressSummaryRenderer: CellRenderer = (_, row, column, _t) => {
193
210
  if (address.postal_code) locationParts.push(address.postal_code)
194
211
 
195
212
  if (locationParts.length > 0) {
196
- parts.push(locationParts.join(', '))
213
+ parts.push(locationParts.join(", "))
197
214
  }
198
215
 
199
216
  if (address.country_code) {
200
217
  parts.push(address.country_code.toUpperCase())
201
218
  }
202
219
 
203
- return parts.join('') || '-'
220
+ return parts.join("") || "-"
204
221
  }
205
222
 
206
223
  const CountryCodeRenderer: CellRenderer = (_, row, _column, _t) => {
@@ -239,36 +256,38 @@ const DisplayIdRenderer: CellRenderer = (value, _row, _column, _t) => {
239
256
  }
240
257
 
241
258
  const CurrencyRenderer: CellRenderer = (value, row, _column, _t) => {
242
- const currencyCode = row.currency_code || 'USD'
243
- return <MoneyAmountCell currencyCode={currencyCode} amount={value} align="right" />
259
+ const currencyCode = row.currency_code || "USD"
260
+ return (
261
+ <MoneyAmountCell currencyCode={currencyCode} amount={value} align="right" />
262
+ )
244
263
  }
245
264
 
246
265
  const TotalRenderer: CellRenderer = (value, row, _column, _t) => {
247
- const currencyCode = row.currency_code || 'USD'
266
+ const currencyCode = row.currency_code || "USD"
248
267
  return <TotalCell currencyCode={currencyCode} total={value} />
249
268
  }
250
269
 
251
270
  // Register built-in renderers
252
- cellRenderers.set('text', TextRenderer)
253
- cellRenderers.set('count', CountRenderer)
254
- cellRenderers.set('status', StatusRenderer)
255
- cellRenderers.set('badge_list', BadgeListRenderer)
256
- cellRenderers.set('date', DateRenderer)
257
- cellRenderers.set('timestamp', DateRenderer)
258
- cellRenderers.set('currency', CurrencyRenderer)
259
- cellRenderers.set('total', TotalRenderer)
271
+ cellRenderers.set("text", TextRenderer)
272
+ cellRenderers.set("count", CountRenderer)
273
+ cellRenderers.set("status", StatusRenderer)
274
+ cellRenderers.set("badge_list", BadgeListRenderer)
275
+ cellRenderers.set("date", DateRenderer)
276
+ cellRenderers.set("timestamp", DateRenderer)
277
+ cellRenderers.set("currency", CurrencyRenderer)
278
+ cellRenderers.set("total", TotalRenderer)
260
279
 
261
280
  // Register product-specific renderers
262
- cellRenderers.set('product_info', ProductInfoRenderer)
263
- cellRenderers.set('collection', CollectionRenderer)
264
- cellRenderers.set('variants', VariantsRenderer)
265
- cellRenderers.set('sales_channels_list', BadgeListRenderer)
281
+ cellRenderers.set("product_info", ProductInfoRenderer)
282
+ cellRenderers.set("collection", CollectionRenderer)
283
+ cellRenderers.set("variants", VariantsRenderer)
284
+ cellRenderers.set("sales_channels_list", BadgeListRenderer)
266
285
 
267
286
  // Register order-specific renderers
268
- cellRenderers.set('customer_name', CustomerNameRenderer)
269
- cellRenderers.set('address_summary', AddressSummaryRenderer)
270
- cellRenderers.set('country_code', CountryCodeRenderer)
271
- cellRenderers.set('display_id', DisplayIdRenderer)
287
+ cellRenderers.set("customer_name", CustomerNameRenderer)
288
+ cellRenderers.set("address_summary", AddressSummaryRenderer)
289
+ cellRenderers.set("country_code", CountryCodeRenderer)
290
+ cellRenderers.set("display_id", DisplayIdRenderer)
272
291
 
273
292
  export function getCellRenderer(
274
293
  renderType?: string,
@@ -279,21 +298,21 @@ export function getCellRenderer(
279
298
  }
280
299
 
281
300
  switch (dataType) {
282
- case 'number':
283
- case 'string':
301
+ case "number":
302
+ case "string":
284
303
  return TextRenderer
285
- case 'date':
304
+ case "date":
286
305
  return DateRenderer
287
- case 'boolean':
306
+ case "boolean":
288
307
  return (value, _row, _column, t) => {
289
308
  if (t) {
290
- return value ? t('fields.yes', 'Yes') : t('fields.no', 'No')
309
+ return value ? t("fields.yes", "Yes") : t("fields.no", "No")
291
310
  }
292
- return value ? 'Yes' : 'No'
311
+ return value ? "Yes" : "No"
293
312
  }
294
- case 'enum':
313
+ case "enum":
295
314
  return StatusRenderer
296
- case 'currency':
315
+ case "currency":
297
316
  return CurrencyRenderer
298
317
  default:
299
318
  return TextRenderer
@@ -1,10 +1,11 @@
1
- import { PencilSquare, Trash } from "@medusajs/icons"
1
+ import { GlobeEurope, PencilSquare, Trash } from "@medusajs/icons"
2
2
  import { HttpTypes } from "@medusajs/types"
3
3
  import { Container, Heading, StatusBadge, Text } from "@medusajs/ui"
4
4
  import { useTranslation } from "react-i18next"
5
5
  import { ActionMenu } from "../../../../../components/common/action-menu"
6
6
  import { useDeleteProductCategoryAction } from "../../../common/hooks/use-delete-product-category-action"
7
7
  import { getIsActiveProps, getIsInternalProps } from "../../../common/utils"
8
+ import { useFeatureFlag } from "../../../../../providers/feature-flag-provider"
8
9
 
9
10
  type CategoryGeneralSectionProps = {
10
11
  category: HttpTypes.AdminProductCategory
@@ -14,6 +15,7 @@ export const CategoryGeneralSection = ({
14
15
  category,
15
16
  }: CategoryGeneralSectionProps) => {
16
17
  const { t } = useTranslation()
18
+ const isTranslationsEnabled = useFeatureFlag("translation")
17
19
 
18
20
  const activeProps = getIsActiveProps(category.is_active, t)
19
21
  const internalProps = getIsInternalProps(category.is_internal, t)
@@ -44,6 +46,19 @@ export const CategoryGeneralSection = ({
44
46
  },
45
47
  ],
46
48
  },
49
+ ...(isTranslationsEnabled
50
+ ? [
51
+ {
52
+ actions: [
53
+ {
54
+ label: t("translations.actions.manage"),
55
+ to: `/settings/translations/edit?reference=product_category&reference_id=${category.id}`,
56
+ icon: <GlobeEurope />,
57
+ },
58
+ ],
59
+ },
60
+ ]
61
+ : []),
47
62
  {
48
63
  actions: [
49
64
  {
@@ -1,4 +1,4 @@
1
- import { PencilSquare, Trash } from "@medusajs/icons"
1
+ import { GlobeEurope, PencilSquare, Trash } from "@medusajs/icons"
2
2
  import { AdminProductCategoryResponse } from "@medusajs/types"
3
3
  import { Button, Container, Heading, Text } from "@medusajs/ui"
4
4
  import { keepPreviousData } from "@tanstack/react-query"
@@ -14,6 +14,7 @@ import { useDataTable } from "../../../../../hooks/use-data-table"
14
14
  import { useDeleteProductCategoryAction } from "../../../common/hooks/use-delete-product-category-action"
15
15
  import { useCategoryTableColumns } from "./use-category-table-columns"
16
16
  import { useCategoryTableQuery } from "./use-category-table-query"
17
+ import { useFeatureFlag } from "../../../../../providers/feature-flag-provider"
17
18
 
18
19
  const PAGE_SIZE = 20
19
20
 
@@ -105,6 +106,7 @@ const CategoryRowActions = ({
105
106
  category: AdminProductCategoryResponse["product_category"]
106
107
  }) => {
107
108
  const { t } = useTranslation()
109
+ const isTranslationsEnabled = useFeatureFlag("translation")
108
110
  const handleDelete = useDeleteProductCategoryAction(category)
109
111
 
110
112
  return (
@@ -119,6 +121,19 @@ const CategoryRowActions = ({
119
121
  },
120
122
  ],
121
123
  },
124
+ ...(isTranslationsEnabled
125
+ ? [
126
+ {
127
+ actions: [
128
+ {
129
+ icon: <GlobeEurope />,
130
+ label: t("translations.actions.manage"),
131
+ to: `/settings/translations/edit?reference=product_category&reference_id=${category.id}`,
132
+ },
133
+ ],
134
+ },
135
+ ]
136
+ : []),
122
137
  {
123
138
  actions: [
124
139
  {
@@ -1,10 +1,11 @@
1
- import { PencilSquare, Trash } from "@medusajs/icons"
1
+ import { GlobeEurope, PencilSquare, Trash } from "@medusajs/icons"
2
2
  import { HttpTypes } from "@medusajs/types"
3
3
  import { Container, Heading, Text, usePrompt } from "@medusajs/ui"
4
4
  import { useTranslation } from "react-i18next"
5
5
  import { ActionMenu } from "../../../../../components/common/action-menu"
6
6
  import { useDeleteCollection } from "../../../../../hooks/api/collections"
7
7
  import { useNavigate } from "react-router-dom"
8
+ import { useFeatureFlag } from "../../../../../providers/feature-flag-provider"
8
9
 
9
10
  type CollectionGeneralSectionProps = {
10
11
  collection: HttpTypes.AdminCollection
@@ -16,6 +17,7 @@ export const CollectionGeneralSection = ({
16
17
  const { t } = useTranslation()
17
18
  const prompt = usePrompt()
18
19
  const navigate = useNavigate()
20
+ const isTranslationsEnabled = useFeatureFlag("translation")
19
21
 
20
22
  const { mutateAsync } = useDeleteCollection(collection.id!)
21
23
 
@@ -52,6 +54,19 @@ export const CollectionGeneralSection = ({
52
54
  },
53
55
  ],
54
56
  },
57
+ ...(isTranslationsEnabled
58
+ ? [
59
+ {
60
+ actions: [
61
+ {
62
+ label: t("translations.actions.manage"),
63
+ to: `/settings/translations/edit?reference=product_collection&reference_id=${collection.id}`,
64
+ icon: <GlobeEurope />,
65
+ },
66
+ ],
67
+ },
68
+ ]
69
+ : []),
55
70
  {
56
71
  actions: [
57
72
  {
@@ -1,10 +1,11 @@
1
- import { PencilSquare, Trash } from "@medusajs/icons"
1
+ import { GlobeEurope, PencilSquare, Trash } from "@medusajs/icons"
2
2
  import { HttpTypes } from "@medusajs/types"
3
3
  import { usePrompt } from "@medusajs/ui"
4
4
  import { useTranslation } from "react-i18next"
5
5
 
6
6
  import { ActionMenu } from "../../../../../components/common/action-menu"
7
7
  import { useDeleteCollection } from "../../../../../hooks/api/collections"
8
+ import { useFeatureFlag } from "../../../../../providers/feature-flag-provider"
8
9
 
9
10
  export const CollectionRowActions = ({
10
11
  collection,
@@ -13,6 +14,7 @@ export const CollectionRowActions = ({
13
14
  }) => {
14
15
  const { t } = useTranslation()
15
16
  const prompt = usePrompt()
17
+ const isTranslationsEnabled = useFeatureFlag("translation")
16
18
 
17
19
  const { mutateAsync } = useDeleteCollection(collection.id!)
18
20
 
@@ -47,6 +49,19 @@ export const CollectionRowActions = ({
47
49
  },
48
50
  ],
49
51
  },
52
+ ...(isTranslationsEnabled
53
+ ? [
54
+ {
55
+ actions: [
56
+ {
57
+ icon: <GlobeEurope />,
58
+ label: t("translations.actions.manage"),
59
+ to: `/settings/translations/edit?reference=product_collection&reference_id=${collection.id}`,
60
+ },
61
+ ],
62
+ },
63
+ ]
64
+ : []),
50
65
  {
51
66
  actions: [
52
67
  {
@@ -568,6 +568,16 @@ export const ClaimCreateForm = ({
568
568
  }
569
569
  }, [])
570
570
 
571
+ /**
572
+ * For estimated difference show pending difference and subtract the total of inbound items (assume all items will be returned correctly)
573
+ * We don't include inbound total in the pending difference because it will be considered returned when the receive flow is completed
574
+ */
575
+ const estimatedDifference =
576
+ preview.summary.pending_difference -
577
+ inboundPreviewItems.reduce((acc, item) => {
578
+ return acc + item.total
579
+ }, 0)
580
+
571
581
  const inboundShippingTotal = useMemo(() => {
572
582
  const method = preview.shipping_methods.find(
573
583
  (sm) =>
@@ -1010,10 +1020,7 @@ export const ClaimCreateForm = ({
1010
1020
  {t("orders.claims.refundAmount")}
1011
1021
  </span>
1012
1022
  <span className="txt-small font-medium">
1013
- {getStylizedAmount(
1014
- preview.summary.pending_difference,
1015
- order.currency_code
1016
- )}
1023
+ {getStylizedAmount(estimatedDifference, order.currency_code)}
1017
1024
  </span>
1018
1025
  </div>
1019
1026
  </div>
@@ -272,6 +272,16 @@ export const ExchangeCreateForm = ({
272
272
  }
273
273
  }, [])
274
274
 
275
+ /**
276
+ * For estimated difference show pending difference and subtract the total of inbound items (assume all items will be returned correctly)
277
+ * We don't include inbound total in the pending difference because it will be considered returned when the receive flow is completed
278
+ */
279
+ const estimatedDifference =
280
+ preview.summary.pending_difference -
281
+ inboundPreviewItems.reduce((acc, item) => {
282
+ return acc + item.total
283
+ }, 0)
284
+
275
285
  const inboundShippingTotal = useMemo(() => {
276
286
  const method = preview.shipping_methods.find(
277
287
  (sm) =>
@@ -516,10 +526,7 @@ export const ExchangeCreateForm = ({
516
526
  {t("orders.exchanges.refundAmount")}
517
527
  </span>
518
528
  <span className="txt-small font-medium">
519
- {getStylizedAmount(
520
- preview.summary.pending_difference,
521
- order.currency_code
522
- )}
529
+ {getStylizedAmount(estimatedDifference, order.currency_code)}
523
530
  </span>
524
531
  </div>
525
532
  </div>
@@ -402,6 +402,16 @@ export const ReturnCreateForm = ({
402
402
  return method?.total || 0
403
403
  }, [preview.shipping_methods])
404
404
 
405
+ /**
406
+ * For estimated difference show pending difference and subtract the total of inbound items (assume all items will be returned correctly)
407
+ * We don't include inbound total in the pending difference because it will be considered returned when the receive flow is completed
408
+ */
409
+ const estimatedDifference =
410
+ preview.summary.pending_difference -
411
+ previewItems.reduce((acc, item) => {
412
+ return acc + item.total
413
+ }, 0)
414
+
405
415
  return (
406
416
  <RouteFocusModal.Form
407
417
  form={form}
@@ -707,10 +717,7 @@ export const ReturnCreateForm = ({
707
717
  {t("orders.returns.estDifference")}
708
718
  </span>
709
719
  <span className="txt-small font-medium">
710
- {getStylizedAmount(
711
- preview.summary.pending_difference,
712
- order.currency_code
713
- )}
720
+ {getStylizedAmount(estimatedDifference, order.currency_code)}
714
721
  </span>
715
722
  </div>
716
723
  </div>
@@ -11,7 +11,7 @@ export const DEFAULT_PROPERTIES = [
11
11
  "currency_code",
12
12
  ]
13
13
 
14
- export const DEFAULT_RELATIONS = ["*customer", "*sales_channel"]
14
+ export const DEFAULT_RELATIONS = ["*customer", "*sales_channel", "*payment_collections"]
15
15
 
16
16
  export const DEFAULT_FIELDS = `${DEFAULT_PROPERTIES.join(
17
17
  ","
@@ -35,7 +35,9 @@ export const PriceListPricesForm = ({
35
35
  const { products, isLoading, isError, error } = useProducts({
36
36
  id: ids.map((id) => id.id),
37
37
  limit: ids.length,
38
- fields: "title,thumbnail,*variants",
38
+ // TODO: Remove exclusion once we avoid including unnecessary relations by default in the query config
39
+ fields:
40
+ "title,thumbnail,*variants,-type,-collection,-options,-tags,-images,-sales_channels",
39
41
  })
40
42
 
41
43
  const { setCloseOnEscape } = useRouteModal()
@@ -109,6 +109,7 @@ export const PriceListProductsForm = ({ form }: PriceListProductsFormProps) => {
109
109
  updater,
110
110
  },
111
111
  pageSize: PAGE_SIZE,
112
+ prefix: PREFIX,
112
113
  })
113
114
 
114
115
  if (isError) {
@@ -6,6 +6,7 @@ import { useTranslation } from "react-i18next"
6
6
  import { ActionMenu } from "../../../../../components/common/action-menu"
7
7
  import { useDeletePriceListAction } from "../../../common/hooks/use-delete-price-list-action"
8
8
  import { getPriceListStatus } from "../../../common/utils"
9
+ import { usePriceListPrices } from "../../../../../hooks/api"
9
10
 
10
11
  type PriceListGeneralSectionProps = {
11
12
  priceList: HttpTypes.AdminPriceList
@@ -15,8 +16,13 @@ export const PriceListGeneralSection = ({
15
16
  priceList,
16
17
  }: PriceListGeneralSectionProps) => {
17
18
  const { t } = useTranslation()
18
-
19
- const overrideCount = priceList.prices?.length || 0
19
+ const {
20
+ count: overrideCount,
21
+ isLoading,
22
+ error,
23
+ } = usePriceListPrices(priceList.id, {
24
+ limit: 1,
25
+ })
20
26
 
21
27
  const { color, text } = getPriceListStatus(t, priceList)
22
28
 
@@ -77,9 +83,11 @@ export const PriceListGeneralSection = ({
77
83
  <Text leading="compact" size="small" weight="plus">
78
84
  {t("priceLists.fields.priceOverrides.label")}
79
85
  </Text>
80
- <Text size="small" className="text-pretty">
81
- {overrideCount || "-"}
82
- </Text>
86
+ {!isLoading && !error && (
87
+ <Text size="small" className="text-pretty">
88
+ {overrideCount || "-"}
89
+ </Text>
90
+ )}
83
91
  </div>
84
92
  </Container>
85
93
  )