@mercurjs/admin 2.2.0-canary.36 → 2.2.0-canary.38

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 (158) hide show
  1. package/dist/{add-campaign-promotions-OTLO4M5C.js → add-campaign-promotions-FWYK3JCR.js} +4 -4
  2. package/dist/{api-key-management-list-RLATJRDL.js → api-key-management-list-SXHZJUJB.js} +2 -2
  3. package/dist/{attribute-detail-G6APXXFT.js → attribute-detail-7EBAQ26V.js} +1 -1
  4. package/dist/{attribute-list-42GDF2PV.js → attribute-list-G73VHMFA.js} +2 -2
  5. package/dist/{campaign-detail-GZV2HK2G.js → campaign-detail-I6KGCHUL.js} +5 -5
  6. package/dist/{campaign-list-W2YZAPUI.js → campaign-list-FFGRXEVJ.js} +2 -2
  7. package/dist/{category-create-7UTOSFO5.js → category-create-AIS2MG7E.js} +2 -2
  8. package/dist/{category-detail-AYVW7LRB.js → category-detail-ZEOXQF7F.js} +3 -3
  9. package/dist/{category-icon-edit-FMVPTC27.js → category-icon-edit-W2TPCSDC.js} +1 -1
  10. package/dist/{category-list-B6B3ZANX.js → category-list-7ILXI55P.js} +3 -3
  11. package/dist/{category-media-4SLUTBZS.js → category-media-PC4V7YU4.js} +1 -1
  12. package/dist/{category-products-IF33PO5Y.js → category-products-UFKHB7YL.js} +2 -1
  13. package/dist/{chunk-QM343PBJ.js → chunk-23OLYWMR.js} +1 -1
  14. package/dist/{chunk-E6VCLJNF.js → chunk-2DSCC2VR.js} +1 -1
  15. package/dist/{chunk-BW5MMF6W.js → chunk-2S2SBRZP.js} +3 -3
  16. package/dist/{chunk-L4KT5CLI.js → chunk-2YAVXVET.js} +1 -1
  17. package/dist/{chunk-PPMWEQP3.js → chunk-3OD3YOA3.js} +71 -34
  18. package/dist/{chunk-XQCG2ORD.js → chunk-45O5MFCT.js} +1 -1
  19. package/dist/{chunk-C4N5EJAD.js → chunk-4BCUGMOR.js} +0 -13
  20. package/dist/{chunk-P4GIBTTG.js → chunk-5BSSIDW6.js} +1 -1
  21. package/dist/{chunk-BWRQJXHB.js → chunk-5DQED4UT.js} +1 -1
  22. package/dist/{chunk-U725ING6.js → chunk-5NC6SI6J.js} +1 -1
  23. package/dist/{chunk-OLAOEVZE.js → chunk-6FNIEKSN.js} +4 -4
  24. package/dist/{chunk-CA4K6JDJ.js → chunk-72SDBLWQ.js} +1 -1
  25. package/dist/{chunk-57MFJ2HE.js → chunk-74WEDBZ7.js} +1 -1
  26. package/dist/{chunk-57GNGL6K.js → chunk-7RWFRMQG.js} +1 -1
  27. package/dist/{chunk-TRXFVQXD.js → chunk-BLR3NTU6.js} +1 -1
  28. package/dist/{chunk-FU3QYH6H.js → chunk-CB7DBYH4.js} +1 -13
  29. package/dist/{chunk-6YEU2ZAD.js → chunk-CE2WRTS7.js} +1 -1
  30. package/dist/{chunk-TYXSRH47.js → chunk-CIKPTKSX.js} +14 -4
  31. package/dist/{chunk-R3YD5UOZ.js → chunk-CU4UVEHX.js} +36 -1
  32. package/dist/{chunk-HLUWC7C3.js → chunk-CY263OE4.js} +1 -1
  33. package/dist/{chunk-YAOYZQDK.js → chunk-CYACZXMQ.js} +2 -2
  34. package/dist/{chunk-YAJDG3W7.js → chunk-DI2KBXVH.js} +1 -1
  35. package/dist/{chunk-YLQCULOV.js → chunk-DISTPZNS.js} +1 -1
  36. package/dist/{chunk-V7YJ53P5.js → chunk-EJYLSQVT.js} +1 -1
  37. package/dist/{chunk-GQUGCSJV.js → chunk-F6NPDZHW.js} +1 -1
  38. package/dist/{chunk-N5H2J6HE.js → chunk-FBDAKD4B.js} +1 -1
  39. package/dist/{chunk-WEWBHUEB.js → chunk-GUDWUAMT.js} +2 -2
  40. package/dist/{chunk-SJHBNENS.js → chunk-HSL5IICN.js} +15 -6
  41. package/dist/{chunk-MHCIHDGF.js → chunk-HWWET5ZP.js} +1 -1
  42. package/dist/{chunk-5YWQDIVG.js → chunk-I3ARNGRC.js} +1 -1
  43. package/dist/{chunk-EMW5WXXR.js → chunk-IQDZZ5EQ.js} +1 -1
  44. package/dist/{chunk-HMKXCYCJ.js → chunk-IRX6RBTE.js} +7 -2
  45. package/dist/{chunk-YRGPQ2C4.js → chunk-JUMT5GX7.js} +1 -1
  46. package/dist/{chunk-HHW4PPNH.js → chunk-JXSXBSV6.js} +8 -1
  47. package/dist/{chunk-AQIW7R4Y.js → chunk-KC4J2WOM.js} +1 -1
  48. package/dist/{chunk-WMVLWFFU.js → chunk-KRECA22N.js} +59 -52
  49. package/dist/{chunk-DP3OBKUP.js → chunk-LRJNSCMR.js} +2 -2
  50. package/dist/{chunk-U5MDOZS7.js → chunk-MANRAV52.js} +1 -1
  51. package/dist/{chunk-4NE4EIHO.js → chunk-MYJJMHR5.js} +1 -1
  52. package/dist/{chunk-3OZRK7TN.js → chunk-NEGOGYEO.js} +1 -1
  53. package/dist/{chunk-MIKJRLQI.js → chunk-NKV5XPNS.js} +1 -1
  54. package/dist/{chunk-ENSI7NL7.js → chunk-O5MW4WPZ.js} +1 -1
  55. package/dist/{chunk-RZ43M34Q.js → chunk-PNZI5C5A.js} +2 -2
  56. package/dist/{chunk-4X4MNAXL.js → chunk-PWLDTJJX.js} +1 -1
  57. package/dist/{chunk-NX3YQW2B.js → chunk-Q4R2O7XF.js} +2 -2
  58. package/dist/{chunk-GJB4UQZI.js → chunk-QAWWIM4I.js} +2 -2
  59. package/dist/{chunk-AHUVAYZD.js → chunk-QH34LF36.js} +1 -1
  60. package/dist/{chunk-LECZPR6R.js → chunk-QJCUPZZQ.js} +4 -2
  61. package/dist/{chunk-GML7DINQ.js → chunk-RDUSAVT3.js} +1 -1
  62. package/dist/{chunk-LRKN7IQH.js → chunk-RNDDYLHV.js} +1 -1
  63. package/dist/{chunk-EA3XMVOS.js → chunk-S22SK4KO.js} +1 -1
  64. package/dist/{chunk-PQAQM6SB.js → chunk-SIOKPEVN.js} +1 -1
  65. package/dist/{chunk-QEXIOKNZ.js → chunk-SLKOHWKT.js} +1 -1
  66. package/dist/{chunk-AIEPAHO5.js → chunk-TAM24IMD.js} +1 -1
  67. package/dist/{chunk-T2WVIET2.js → chunk-VM56ZITS.js} +4 -2
  68. package/dist/{chunk-IHERG3JP.js → chunk-VPPUFVFJ.js} +21 -20
  69. package/dist/{chunk-GCYUOP4W.js → chunk-VSKHV5QF.js} +1 -1
  70. package/dist/{chunk-DUVTXDNA.js → chunk-XFKDDRB6.js} +1 -1
  71. package/dist/{chunk-ZMSQW2M3.js → chunk-Y5JQAKX7.js} +90 -43
  72. package/dist/{chunk-R6DVBI5F.js → chunk-Y62TJJ3P.js} +2 -2
  73. package/dist/{chunk-CDVQK7JZ.js → chunk-YNK25LVO.js} +1 -1
  74. package/dist/{chunk-MTOPGOKU.js → chunk-ZHT3Y47H.js} +2 -2
  75. package/dist/{chunk-OB5RWOGA.js → chunk-ZPEMWHUW.js} +1 -1
  76. package/dist/{collection-add-products-2G37ZL2J.js → collection-add-products-MJYMPNLP.js} +1 -1
  77. package/dist/{collection-create-T6HBO4LU.js → collection-create-5IGFVQKE.js} +1 -1
  78. package/dist/{collection-detail-PMSYCWE3.js → collection-detail-C4ZCH55B.js} +3 -3
  79. package/dist/{collection-icon-edit-VZP3W6AZ.js → collection-icon-edit-WCSKUDXE.js} +1 -1
  80. package/dist/{collection-list-EK2TBM3J.js → collection-list-4UX2LLQV.js} +5 -5
  81. package/dist/{collection-media-3Z2RJDVG.js → collection-media-YIV5BV3Y.js} +1 -1
  82. package/dist/{commission-rule-commission-edit-6675TZCZ.js → commission-rule-commission-edit-EXLLNUKM.js} +19 -4
  83. package/dist/{commission-rule-create-PEYCFGCW.js → commission-rule-create-3MCNOSWN.js} +9 -28
  84. package/dist/{commission-rule-edit-GCI67KZU.js → commission-rule-edit-X45EQ6BK.js} +24 -1
  85. package/dist/{commissions-list-KQ2TUJAW.js → commissions-list-MZY7KOP5.js} +2 -2
  86. package/dist/{customer-detail-ZYJDB47Y.js → customer-detail-FRGVVWTZ.js} +3 -3
  87. package/dist/{customer-group-add-customers-GSEUGBTJ.js → customer-group-add-customers-QBRVKXGO.js} +1 -1
  88. package/dist/{customer-group-detail-5VSUJTR3.js → customer-group-detail-KIC2TWZ3.js} +2 -2
  89. package/dist/{customer-group-list-BRQRKORR.js → customer-group-list-BRH6SWRD.js} +2 -2
  90. package/dist/{customer-list-6PRFTWMO.js → customer-list-276YPXTE.js} +2 -2
  91. package/dist/{customers-add-customer-group-56GS7TR7.js → customers-add-customer-group-C4Y6P45C.js} +1 -1
  92. package/dist/{global-commission-edit-AOZ6XLH7.js → global-commission-edit-7ZMMIV7B.js} +19 -12
  93. package/dist/index.css +5184 -3
  94. package/dist/index.d.ts +7 -1
  95. package/dist/index.js +111 -111
  96. package/dist/{inventory-create-HOQVSL2G.js → inventory-create-M3YBQVNG.js} +2 -2
  97. package/dist/{inventory-detail-QY56I2KX.js → inventory-detail-6PAVKSOK.js} +2 -2
  98. package/dist/{inventory-list-AB4OHYMU.js → inventory-list-U4W4AP4E.js} +2 -2
  99. package/dist/{inventory-stock-E4U2SS3Z.js → inventory-stock-XQWWFVQ3.js} +1 -1
  100. package/dist/{location-fulfillment-providers-VVJGPYJI.js → location-fulfillment-providers-Z3PR4MQI.js} +2 -2
  101. package/dist/{location-service-zone-create-WPSYG3NX.js → location-service-zone-create-U77V3ROT.js} +2 -2
  102. package/dist/{location-service-zone-manage-areas-ZH2ICSC7.js → location-service-zone-manage-areas-FUUAAIDJ.js} +2 -2
  103. package/dist/{location-service-zone-shipping-option-create-K6USZASG.js → location-service-zone-shipping-option-create-NFKZT2HM.js} +3 -3
  104. package/dist/{location-service-zone-shipping-option-pricing-ZENGURN3.js → location-service-zone-shipping-option-pricing-UZ577SNK.js} +2 -2
  105. package/dist/{marketplace-add-currencies-FPDYEYCL.js → marketplace-add-currencies-KDNMN57C.js} +1 -1
  106. package/dist/{marketplace-detail-7WGPHRQM.js → marketplace-detail-X5AQWO7P.js} +2 -2
  107. package/dist/{offer-detail-page-3RAFKFK4.js → offer-detail-page-4GNU35AH.js} +2 -2
  108. package/dist/{offer-variant-detail-page-5FS6D46I.js → offer-variant-detail-page-FFPV7N7Y.js} +2 -2
  109. package/dist/{offers-T4ARWA47.js → offers-3HP7SICL.js} +1 -1
  110. package/dist/{order-create-claim-GOP565XH.js → order-create-claim-MEXSDGHW.js} +1 -1
  111. package/dist/{order-create-edit-DK4QG2CR.js → order-create-edit-M2F6CG3M.js} +1 -1
  112. package/dist/{order-create-exchange-ZHJ3T5QJ.js → order-create-exchange-HTWFKJOM.js} +1 -1
  113. package/dist/{order-create-return-63X5PUTT.js → order-create-return-DDOYLDT7.js} +1 -1
  114. package/dist/{order-detail-6UAWPZI2.js → order-detail-QYZGM7OO.js} +2 -2
  115. package/dist/{order-edit-billing-address-WQYQSLDB.js → order-edit-billing-address-JHJ7PCPC.js} +1 -1
  116. package/dist/{order-list-FFPY5OGR.js → order-list-5PVFAFJT.js} +3 -3
  117. package/dist/pages/index.js +59 -59
  118. package/dist/{payout-list-A2KQTZMZ.js → payout-list-SOWVPSFQ.js} +2 -2
  119. package/dist/{price-list-configuration-2NFE4MNW.js → price-list-configuration-BIHWXMYS.js} +2 -2
  120. package/dist/{price-list-create-QEDMB4A6.js → price-list-create-XV6OY4A2.js} +5 -5
  121. package/dist/{price-list-detail-7ANY3XOC.js → price-list-detail-IUZU5OA7.js} +2 -2
  122. package/dist/{price-list-list-6II3XYUA.js → price-list-list-A42VGE3L.js} +2 -2
  123. package/dist/{price-list-prices-add-GVOZDWKE.js → price-list-prices-add-KUBO4DCC.js} +4 -4
  124. package/dist/{price-list-prices-edit-LNSUSN4V.js → price-list-prices-edit-PJ4CPB5I.js} +2 -2
  125. package/dist/{product-bulk-edit-34KKEPJQ.js → product-bulk-edit-TRI2KKHW.js} +1 -1
  126. package/dist/{product-create-STXNKMAV.js → product-create-EGL6UJKX.js} +4 -4
  127. package/dist/{product-detail-T4FOYZK7.js → product-detail-SNS2DQ6Q.js} +2 -2
  128. package/dist/{product-list-SIQDX4AT.js → product-list-LGS3O2OJ.js} +2 -2
  129. package/dist/{product-media-JFLRNBPR.js → product-media-JKUDYI32.js} +2 -2
  130. package/dist/{product-organization-SGLOMAKK.js → product-organization-AIM3LNQ6.js} +1 -1
  131. package/dist/{product-tag-detail-ZV7V7UW3.js → product-tag-detail-MI7B2MPH.js} +5 -5
  132. package/dist/{product-tag-list-SZHBD5FA.js → product-tag-list-7CE4KJ3G.js} +5 -5
  133. package/dist/{product-type-detail-WSHUE56F.js → product-type-detail-O2WGGFRT.js} +2 -2
  134. package/dist/{product-type-list-EP2YCYLK.js → product-type-list-XTVTT7ZA.js} +2 -2
  135. package/dist/{promotion-detail-AWVF7JHY.js → promotion-detail-WFB2ZFPH.js} +3 -3
  136. package/dist/{promotion-list-INBZ3OG3.js → promotion-list-VLCRCI2K.js} +5 -5
  137. package/dist/{refund-reason-list-UCZC5ASP.js → refund-reason-list-XMDZO34F.js} +2 -2
  138. package/dist/{region-add-countries-NFJYG4JA.js → region-add-countries-IIHNNE76.js} +1 -1
  139. package/dist/{region-create-RW42MXKY.js → region-create-PHZNUCJR.js} +1 -1
  140. package/dist/{region-detail-S7GNXX5B.js → region-detail-AECQQ62I.js} +2 -2
  141. package/dist/{region-list-ZP7QIWQ3.js → region-list-IBQW5J3R.js} +2 -2
  142. package/dist/{reservation-list-UGXB2P7K.js → reservation-list-IUYMT4U6.js} +2 -2
  143. package/dist/{reset-password-ZJW3AHYT.js → reset-password-OL6EA5F2.js} +1 -1
  144. package/dist/{return-reason-list-AJ4E3A56.js → return-reason-list-FRHFRNKK.js} +4 -4
  145. package/dist/{sales-channel-add-products-LRANEISZ.js → sales-channel-add-products-ZZPVF5CH.js} +1 -1
  146. package/dist/{sales-channel-detail-5XXO3BXP.js → sales-channel-detail-DNZXUBSN.js} +2 -2
  147. package/dist/{shipping-option-type-list-UCTCZPAM.js → shipping-option-type-list-AW2ZA4V5.js} +2 -2
  148. package/dist/{shipping-profiles-list-CBTZYI33.js → shipping-profiles-list-4VHKTKIL.js} +2 -2
  149. package/dist/{store-bulk-edit-5DZ7RZS3.js → store-bulk-edit-SZ3UEDWJ.js} +1 -1
  150. package/dist/{store-details-XNBFIWDL.js → store-details-4XVEWNIX.js} +3 -3
  151. package/dist/{store-edit-6KKEQZRH.js → store-edit-KJTO3ZUP.js} +2 -2
  152. package/dist/{store-list-RVZG3UD3.js → store-list-LSADPRI2.js} +3 -3
  153. package/dist/{tax-region-create-GAXLHDV5.js → tax-region-create-MPKY5KXL.js} +1 -1
  154. package/dist/{tax-region-tax-override-create-XOBU6DOL.js → tax-region-tax-override-create-X3WQVHYV.js} +5 -5
  155. package/dist/{tax-region-tax-override-edit-PEQJFCOU.js → tax-region-tax-override-edit-SYK2O5BK.js} +5 -5
  156. package/dist/{user-invite-WIHSREOW.js → user-invite-UN6NCCII.js} +1 -1
  157. package/dist/{user-list-3C6GRWMJ.js → user-list-27ZKEJXN.js} +2 -2
  158. package/package.json +9 -6
@@ -1,15 +1,15 @@
1
1
  import {
2
2
  CollectionListPage
3
- } from "./chunk-YAOYZQDK.js";
4
- import "./chunk-P4GIBTTG.js";
3
+ } from "./chunk-CYACZXMQ.js";
4
+ import "./chunk-5BSSIDW6.js";
5
5
  import "./chunk-KOURHC2N.js";
6
6
  import "./chunk-2ZFELO2L.js";
7
7
  import "./chunk-26OOAKQ6.js";
8
8
  import "./chunk-ZQZHFMD7.js";
9
- import "./chunk-C4N5EJAD.js";
9
+ import "./chunk-4BCUGMOR.js";
10
10
  import "./chunk-OI4DJXUL.js";
11
11
  import "./chunk-HGTPUAHD.js";
12
- import "./chunk-T2WVIET2.js";
12
+ import "./chunk-VM56ZITS.js";
13
13
  import "./chunk-S2WEYEQR.js";
14
14
  import "./chunk-WKTRJNOK.js";
15
15
  import "./chunk-MG4GKUJW.js";
@@ -32,7 +32,7 @@ import "./chunk-VSLHL2AZ.js";
32
32
  import "./chunk-E74OUNA3.js";
33
33
  import "./chunk-WIYFXWRI.js";
34
34
  import "./chunk-FQERBIVS.js";
35
- import "./chunk-SJHBNENS.js";
35
+ import "./chunk-HSL5IICN.js";
36
36
  import "./chunk-YN3FGNJM.js";
37
37
  import "./chunk-ZAOEFQ6K.js";
38
38
  import "./chunk-PAYQJPGK.js";
@@ -2,7 +2,7 @@ import {
2
2
  COLLECTION_IMAGE_FORMATS,
3
3
  getCollectionGallery,
4
4
  uploadCollectionImages
5
- } from "./chunk-T2WVIET2.js";
5
+ } from "./chunk-VM56ZITS.js";
6
6
  import {
7
7
  FileUpload
8
8
  } from "./chunk-VSLHL2AZ.js";
@@ -1,7 +1,9 @@
1
1
  import {
2
2
  CommissionValueFields,
3
+ addCommissionValueIssues,
4
+ optionalAmount,
3
5
  useStoreCurrencies
4
- } from "./chunk-R3YD5UOZ.js";
6
+ } from "./chunk-CU4UVEHX.js";
5
7
  import {
6
8
  buildValuesPayload,
7
9
  fixedValuesFromRate
@@ -39,6 +41,7 @@ import "./chunk-NBMM2TZK.js";
39
41
  // src/pages/commissions/commission-rule-commission-edit/commission-rule-commission-edit.tsx
40
42
  import { zodResolver } from "@hookform/resolvers/zod";
41
43
  import { Button, Heading, toast } from "@medusajs/ui";
44
+ import { useMemo } from "react";
42
45
  import { useForm } from "react-hook-form";
43
46
  import { useTranslation } from "react-i18next";
44
47
  import { useParams } from "react-router-dom";
@@ -46,11 +49,19 @@ import * as zod from "zod";
46
49
  import { jsx, jsxs } from "react/jsx-runtime";
47
50
  var EditCommissionSchema = zod.object({
48
51
  type: zod.enum(["percentage", "fixed"]),
49
- value: zod.coerce.number().min(0),
50
- fixed_values: zod.record(zod.string(), zod.coerce.number()).optional(),
52
+ value: optionalAmount,
53
+ fixed_values: zod.record(zod.string(), optionalAmount).optional(),
51
54
  include_tax: zod.boolean(),
52
55
  include_shipping: zod.boolean()
53
56
  });
57
+ var createEditCommissionSchema = (currencies) => EditCommissionSchema.superRefine((data, ctx) => {
58
+ addCommissionValueIssues(ctx, {
59
+ type: data.type,
60
+ value: data.value,
61
+ fixedValues: data.fixed_values,
62
+ currencies
63
+ });
64
+ });
54
65
  var EditCommissionForm = ({ rule }) => {
55
66
  const { t } = useTranslation();
56
67
  const { handleSuccess } = useRouteModal();
@@ -59,6 +70,10 @@ var EditCommissionForm = ({ rule }) => {
59
70
  { value: "percentage", label: t("commissions.fields.type.percentage") },
60
71
  { value: "fixed", label: t("commissions.fields.type.fixed") }
61
72
  ];
73
+ const resolver = useMemo(
74
+ () => zodResolver(createEditCommissionSchema(currencies)),
75
+ [currencies]
76
+ );
62
77
  const form = useForm({
63
78
  defaultValues: {
64
79
  type: rule.type,
@@ -67,7 +82,7 @@ var EditCommissionForm = ({ rule }) => {
67
82
  include_tax: rule.include_tax,
68
83
  include_shipping: rule.include_shipping
69
84
  },
70
- resolver: zodResolver(EditCommissionSchema)
85
+ resolver
71
86
  });
72
87
  const { mutateAsync, isPending } = useUpdateCommissionRule(rule.id);
73
88
  const handleSubmit = form.handleSubmit(async (values) => {
@@ -1,7 +1,9 @@
1
1
  import {
2
2
  CommissionValueFields,
3
+ addCommissionValueIssues,
4
+ optionalAmount,
3
5
  useStoreCurrencies
4
- } from "./chunk-R3YD5UOZ.js";
6
+ } from "./chunk-CU4UVEHX.js";
5
7
  import "./chunk-QR3GYYX6.js";
6
8
  import {
7
9
  SCOPE_TYPE_DIMENSIONS,
@@ -323,13 +325,6 @@ CreateCommissionRuleDetails._tabMeta = defineTabMeta(
323
325
  // src/pages/commissions/commission-rule-create/components/create-commission-rule-form/schema.ts
324
326
  import i18n from "i18next";
325
327
  import * as zod from "zod";
326
- var optionalAmount = zod.preprocess((val) => {
327
- if (val === "" || val === null || val === void 0) {
328
- return void 0;
329
- }
330
- const parsed = typeof val === "number" ? val : Number(val);
331
- return Number.isNaN(parsed) ? void 0 : parsed;
332
- }, zod.number().optional());
333
328
  var baseCommissionRuleSchema = zod.object({
334
329
  title: zod.string().min(1, { message: i18n.t("commissions.validation.titleRequired") }),
335
330
  code: zod.string().min(1, { message: i18n.t("commissions.validation.codeRequired") }),
@@ -372,26 +367,12 @@ var createCommissionRuleSchema = (currencies = []) => baseCommissionRuleSchema.s
372
367
  message: i18n.t("commissions.validation.categoriesRequired")
373
368
  });
374
369
  }
375
- if (data.commissionType === "percentage") {
376
- if (data.value === void 0 || Number.isNaN(data.value)) {
377
- ctx.addIssue({
378
- code: zod.ZodIssueCode.custom,
379
- path: ["value"],
380
- message: i18n.t("commissions.validation.value")
381
- });
382
- }
383
- } else {
384
- currencies.forEach((code) => {
385
- const amount = data.fixed_values?.[code];
386
- if (amount === void 0 || Number.isNaN(amount)) {
387
- ctx.addIssue({
388
- code: zod.ZodIssueCode.custom,
389
- path: ["fixed_values", code],
390
- message: i18n.t("commissions.validation.value")
391
- });
392
- }
393
- });
394
- }
370
+ addCommissionValueIssues(ctx, {
371
+ type: data.commissionType,
372
+ value: data.value,
373
+ fixedValues: data.fixed_values,
374
+ currencies
375
+ });
395
376
  });
396
377
 
397
378
  // src/pages/commissions/commission-rule-create/components/create-commission-rule-form/create-commission-rule-form.tsx
@@ -49,7 +49,7 @@ import * as zod from "zod";
49
49
  import { jsx, jsxs } from "react/jsx-runtime";
50
50
  var EditCommissionRuleSchema = zod.object({
51
51
  status: zod.enum(["active", "inactive"]),
52
- name: zod.string().min(1),
52
+ name: zod.string().min(1, { message: i18n.t("commissions.validation.titleRequired") }),
53
53
  code: zod.string().min(1, { message: i18n.t("commissions.validation.codeRequired") }),
54
54
  scopeType: zod.enum([
55
55
  "store",
@@ -61,6 +61,29 @@ var EditCommissionRuleSchema = zod.object({
61
61
  stores: zod.array(zod.string()),
62
62
  productTypes: zod.array(zod.string()),
63
63
  categories: zod.array(zod.string())
64
+ }).superRefine((data, ctx) => {
65
+ const dimensions = SCOPE_TYPE_DIMENSIONS[data.scopeType];
66
+ if (dimensions.includes("seller") && data.stores.length === 0) {
67
+ ctx.addIssue({
68
+ code: zod.ZodIssueCode.custom,
69
+ path: ["stores"],
70
+ message: i18n.t("commissions.validation.storesRequired")
71
+ });
72
+ }
73
+ if (dimensions.includes("product_type") && data.productTypes.length === 0) {
74
+ ctx.addIssue({
75
+ code: zod.ZodIssueCode.custom,
76
+ path: ["productTypes"],
77
+ message: i18n.t("commissions.validation.productTypesRequired")
78
+ });
79
+ }
80
+ if (dimensions.includes("product_category") && data.categories.length === 0) {
81
+ ctx.addIssue({
82
+ code: zod.ZodIssueCode.custom,
83
+ path: ["categories"],
84
+ message: i18n.t("commissions.validation.categoriesRequired")
85
+ });
86
+ }
64
87
  });
65
88
  var EditCommissionRuleForm = ({ rule }) => {
66
89
  const { t } = useTranslation();
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  CommissionsPage
3
- } from "./chunk-N5H2J6HE.js";
3
+ } from "./chunk-FBDAKD4B.js";
4
4
  import "./chunk-7DHSWPU2.js";
5
5
  import "./chunk-CGIVQ7D2.js";
6
6
  import "./chunk-JHIMVLB2.js";
@@ -10,7 +10,7 @@ import "./chunk-FI474ADU.js";
10
10
  import "./chunk-3XPXUIK3.js";
11
11
  import "./chunk-E74OUNA3.js";
12
12
  import "./chunk-FQERBIVS.js";
13
- import "./chunk-SJHBNENS.js";
13
+ import "./chunk-HSL5IICN.js";
14
14
  import "./chunk-YN3FGNJM.js";
15
15
  import "./chunk-ZAOEFQ6K.js";
16
16
  import "./chunk-PAYQJPGK.js";
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  CustomerDetailPage
3
- } from "./chunk-HMKXCYCJ.js";
3
+ } from "./chunk-IRX6RBTE.js";
4
4
  import "./chunk-54EPH67T.js";
5
5
  import "./chunk-OI4DJXUL.js";
6
- import "./chunk-FU3QYH6H.js";
6
+ import "./chunk-CB7DBYH4.js";
7
7
  import "./chunk-QUHSHIAC.js";
8
8
  import "./chunk-3XOE4NV5.js";
9
9
  import "./chunk-TZSOL34K.js";
@@ -15,7 +15,7 @@ import "./chunk-PHOCVOZ5.js";
15
15
  import "./chunk-IQPN4PZJ.js";
16
16
  import "./chunk-E74OUNA3.js";
17
17
  import "./chunk-FQERBIVS.js";
18
- import "./chunk-SJHBNENS.js";
18
+ import "./chunk-HSL5IICN.js";
19
19
  import "./chunk-YN3FGNJM.js";
20
20
  import "./chunk-ZAOEFQ6K.js";
21
21
  import "./chunk-PAYQJPGK.js";
@@ -23,7 +23,7 @@ import "./chunk-FQERBIVS.js";
23
23
  import {
24
24
  _DataTable,
25
25
  useDataTable
26
- } from "./chunk-SJHBNENS.js";
26
+ } from "./chunk-HSL5IICN.js";
27
27
  import "./chunk-YN3FGNJM.js";
28
28
  import "./chunk-ZAOEFQ6K.js";
29
29
  import "./chunk-PAYQJPGK.js";
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  CUSTOMER_GROUP_DETAIL_FIELDS,
3
3
  CustomerGroupDetailPage
4
- } from "./chunk-EMW5WXXR.js";
4
+ } from "./chunk-IQDZZ5EQ.js";
5
5
  import "./chunk-QG6PLWNH.js";
6
6
  import "./chunk-HGTPUAHD.js";
7
7
  import "./chunk-GRH7C3QN.js";
@@ -10,7 +10,7 @@ import "./chunk-DB6ANJBO.js";
10
10
  import "./chunk-PHOCVOZ5.js";
11
11
  import "./chunk-E74OUNA3.js";
12
12
  import "./chunk-FQERBIVS.js";
13
- import "./chunk-SJHBNENS.js";
13
+ import "./chunk-HSL5IICN.js";
14
14
  import "./chunk-YN3FGNJM.js";
15
15
  import "./chunk-ZAOEFQ6K.js";
16
16
  import "./chunk-PAYQJPGK.js";
@@ -1,11 +1,11 @@
1
1
  import {
2
2
  CustomerGroupListPage
3
- } from "./chunk-V7YJ53P5.js";
3
+ } from "./chunk-EJYLSQVT.js";
4
4
  import "./chunk-OI4DJXUL.js";
5
5
  import "./chunk-3XOE4NV5.js";
6
6
  import "./chunk-E74OUNA3.js";
7
7
  import "./chunk-FQERBIVS.js";
8
- import "./chunk-SJHBNENS.js";
8
+ import "./chunk-HSL5IICN.js";
9
9
  import "./chunk-YN3FGNJM.js";
10
10
  import "./chunk-ZAOEFQ6K.js";
11
11
  import "./chunk-PAYQJPGK.js";
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  CustomerListPage
3
- } from "./chunk-5YWQDIVG.js";
3
+ } from "./chunk-I3ARNGRC.js";
4
4
  import "./chunk-QG6PLWNH.js";
5
5
  import "./chunk-HGTPUAHD.js";
6
6
  import "./chunk-GRH7C3QN.js";
@@ -9,7 +9,7 @@ import "./chunk-DB6ANJBO.js";
9
9
  import "./chunk-PHOCVOZ5.js";
10
10
  import "./chunk-E74OUNA3.js";
11
11
  import "./chunk-FQERBIVS.js";
12
- import "./chunk-SJHBNENS.js";
12
+ import "./chunk-HSL5IICN.js";
13
13
  import "./chunk-YN3FGNJM.js";
14
14
  import "./chunk-ZAOEFQ6K.js";
15
15
  import "./chunk-PAYQJPGK.js";
@@ -22,7 +22,7 @@ import "./chunk-FQERBIVS.js";
22
22
  import {
23
23
  _DataTable,
24
24
  useDataTable
25
- } from "./chunk-SJHBNENS.js";
25
+ } from "./chunk-HSL5IICN.js";
26
26
  import "./chunk-YN3FGNJM.js";
27
27
  import "./chunk-ZAOEFQ6K.js";
28
28
  import "./chunk-PAYQJPGK.js";
@@ -1,7 +1,9 @@
1
1
  import {
2
2
  CommissionValueFields,
3
+ addCommissionValueIssues,
4
+ optionalAmount,
3
5
  useStoreCurrencies
4
- } from "./chunk-R3YD5UOZ.js";
6
+ } from "./chunk-CU4UVEHX.js";
5
7
  import {
6
8
  buildValuesPayload,
7
9
  fixedValuesFromRate
@@ -40,6 +42,7 @@ import "./chunk-NBMM2TZK.js";
40
42
  import { zodResolver } from "@hookform/resolvers/zod";
41
43
  import { Button, Heading, Input, toast } from "@medusajs/ui";
42
44
  import i18n from "i18next";
45
+ import { useMemo } from "react";
43
46
  import { useForm } from "react-hook-form";
44
47
  import { useTranslation } from "react-i18next";
45
48
  import * as zod from "zod";
@@ -47,18 +50,18 @@ import { jsx, jsxs } from "react/jsx-runtime";
47
50
  var EditGlobalCommissionSchema = zod.object({
48
51
  code: zod.string().min(1, { message: i18n.t("commissions.validation.codeRequired") }),
49
52
  type: zod.enum(["percentage", "fixed"]),
50
- value: zod.coerce.number().optional(),
51
- fixed_values: zod.record(zod.string(), zod.coerce.number()).optional(),
53
+ value: optionalAmount,
54
+ fixed_values: zod.record(zod.string(), optionalAmount).optional(),
52
55
  include_tax: zod.boolean(),
53
56
  include_shipping: zod.boolean()
54
- }).superRefine((data, ctx) => {
55
- if (data.type === "percentage" && (data.value === void 0 || Number.isNaN(data.value))) {
56
- ctx.addIssue({
57
- code: zod.ZodIssueCode.custom,
58
- path: ["value"],
59
- message: i18n.t("commissions.validation.valueRequired")
60
- });
61
- }
57
+ });
58
+ var createEditGlobalCommissionSchema = (currencies) => EditGlobalCommissionSchema.superRefine((data, ctx) => {
59
+ addCommissionValueIssues(ctx, {
60
+ type: data.type,
61
+ value: data.value,
62
+ fixedValues: data.fixed_values,
63
+ currencies
64
+ });
62
65
  });
63
66
  var EditGlobalCommissionForm = ({ rate }) => {
64
67
  const { t } = useTranslation();
@@ -68,6 +71,10 @@ var EditGlobalCommissionForm = ({ rate }) => {
68
71
  { value: "percentage", label: t("commissions.fields.type.percentage") },
69
72
  { value: "fixed", label: t("commissions.fields.type.fixed") }
70
73
  ];
74
+ const resolver = useMemo(
75
+ () => zodResolver(createEditGlobalCommissionSchema(currencies)),
76
+ [currencies]
77
+ );
71
78
  const form = useForm({
72
79
  defaultValues: {
73
80
  code: rate.code,
@@ -77,7 +84,7 @@ var EditGlobalCommissionForm = ({ rate }) => {
77
84
  include_tax: rate.include_tax,
78
85
  include_shipping: rate.include_shipping
79
86
  },
80
- resolver: zodResolver(EditGlobalCommissionSchema)
87
+ resolver
81
88
  });
82
89
  const { mutateAsync, isPending } = useUpdateCommissionRule(rate.id);
83
90
  const handleSubmit = form.handleSubmit(async (values) => {