@mercurjs/admin 2.0.0-canary.100

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 (447) hide show
  1. package/dist/add-campaign-promotions-CQDZBX3V.js +266 -0
  2. package/dist/adjust-inventory-3GPDYI3V.js +266 -0
  3. package/dist/api-key-management-create-GUNLFGNT.js +283 -0
  4. package/dist/api-key-management-detail-4IL3BQJW.js +87 -0
  5. package/dist/api-key-management-edit-SIXXFLNP.js +107 -0
  6. package/dist/api-key-management-list-XLRD4ASE.js +34 -0
  7. package/dist/api-key-management-sales-channels-GCUMV6YA.js +202 -0
  8. package/dist/campaign-budget-edit-GAP5KUI3.js +148 -0
  9. package/dist/campaign-configuration-LTHPZGYC.js +155 -0
  10. package/dist/campaign-create-TRNE6L26.js +30 -0
  11. package/dist/campaign-detail-GYMMDRUV.js +106 -0
  12. package/dist/campaign-edit-CRQCVEFT.js +207 -0
  13. package/dist/campaign-list-WEKSY62X.js +32 -0
  14. package/dist/categories-metadata-GESU3DEU.js +87 -0
  15. package/dist/category-create-PSAN6SA2.js +23 -0
  16. package/dist/category-detail-67ZTYE5M.js +106 -0
  17. package/dist/category-edit-QYKE3GAC.js +221 -0
  18. package/dist/category-list-ZRDWHPEI.js +33 -0
  19. package/dist/category-organize-D26G234L.js +112 -0
  20. package/dist/category-products-XMIZ2KRR.js +285 -0
  21. package/dist/chunk-25DQRKFS.js +102 -0
  22. package/dist/chunk-25LYVP3C.js +37 -0
  23. package/dist/chunk-26OOAKQ6.js +18 -0
  24. package/dist/chunk-2TDFXWGC.js +742 -0
  25. package/dist/chunk-2Y3WMGN6.js +39 -0
  26. package/dist/chunk-2ZFELO2L.js +13 -0
  27. package/dist/chunk-33XUAKRP.js +6 -0
  28. package/dist/chunk-35NDMIYZ.js +8 -0
  29. package/dist/chunk-3B6MTW5G.js +64 -0
  30. package/dist/chunk-3CKTAFTR.js +143 -0
  31. package/dist/chunk-3EF54XFY.js +64 -0
  32. package/dist/chunk-3GCRM6UM.js +1155 -0
  33. package/dist/chunk-3KOTDGC2.js +18 -0
  34. package/dist/chunk-3QSRE5LS.js +161 -0
  35. package/dist/chunk-3XPXUIK3.js +34 -0
  36. package/dist/chunk-4F5GP7J7.js +45 -0
  37. package/dist/chunk-4GPAS5GW.js +36 -0
  38. package/dist/chunk-4JYZU65L.js +2144 -0
  39. package/dist/chunk-4ZIQGDNH.js +184 -0
  40. package/dist/chunk-54EPH67T.js +34 -0
  41. package/dist/chunk-54RTJBYO.js +153 -0
  42. package/dist/chunk-54TMLQH3.js +9 -0
  43. package/dist/chunk-5A4JNOK3.js +109 -0
  44. package/dist/chunk-5HZT54X7.js +374 -0
  45. package/dist/chunk-5LI2P5VT.js +433 -0
  46. package/dist/chunk-5N24A4CX.js +296 -0
  47. package/dist/chunk-64B6RWZI.js +159 -0
  48. package/dist/chunk-64XMEZ5A.js +50 -0
  49. package/dist/chunk-6ERRELWD.js +3892 -0
  50. package/dist/chunk-6HJINLUB.js +94 -0
  51. package/dist/chunk-6IJMSVC6.js +16 -0
  52. package/dist/chunk-6S72GJRI.js +142 -0
  53. package/dist/chunk-77R2QD4O.js +337 -0
  54. package/dist/chunk-7AV5EJJ5.js +29 -0
  55. package/dist/chunk-7H2I3TA2.js +420 -0
  56. package/dist/chunk-7ITJ4725.js +185 -0
  57. package/dist/chunk-7JZMCLD3.js +165 -0
  58. package/dist/chunk-7KMDLRLG.js +248 -0
  59. package/dist/chunk-7NNA33IY.js +600 -0
  60. package/dist/chunk-7OSCNHHQ.js +69 -0
  61. package/dist/chunk-7RPRNVBS.js +45 -0
  62. package/dist/chunk-7SQW55FI.js +470 -0
  63. package/dist/chunk-7SVLKK6Q.js +31 -0
  64. package/dist/chunk-A2F5MDPU.js +79 -0
  65. package/dist/chunk-AEFDAU3Y.js +110 -0
  66. package/dist/chunk-AFQS6E4N.js +61 -0
  67. package/dist/chunk-AJQ6EVLE.js +501 -0
  68. package/dist/chunk-AW77UWCZ.js +363 -0
  69. package/dist/chunk-AYVH6Q5O.js +31 -0
  70. package/dist/chunk-AZVAL5E5.js +303 -0
  71. package/dist/chunk-BBZ6YISG.js +371 -0
  72. package/dist/chunk-BDGZ4EQO.js +86 -0
  73. package/dist/chunk-BLHFWBK3.js +199 -0
  74. package/dist/chunk-BPTVQM72.js +9496 -0
  75. package/dist/chunk-BYKTBURG.js +250 -0
  76. package/dist/chunk-C6OVKRMH.js +294 -0
  77. package/dist/chunk-C6SUTRP2.js +13 -0
  78. package/dist/chunk-CARSKIPW.js +87 -0
  79. package/dist/chunk-CJQRZEZU.js +614 -0
  80. package/dist/chunk-CMHI2RPL.js +20 -0
  81. package/dist/chunk-CP5IL4P6.js +98 -0
  82. package/dist/chunk-DB6ANJBO.js +35 -0
  83. package/dist/chunk-DBYUB2YI.js +174 -0
  84. package/dist/chunk-DPH3FG5H.js +528 -0
  85. package/dist/chunk-DY3XQPHC.js +31 -0
  86. package/dist/chunk-EEOEIXDA.js +112 -0
  87. package/dist/chunk-EF47ASFU.js +39 -0
  88. package/dist/chunk-EJY35WBK.js +60 -0
  89. package/dist/chunk-EOZUAYQL.js +6 -0
  90. package/dist/chunk-EWFOFSF7.js +78 -0
  91. package/dist/chunk-FD7OJEGQ.js +345 -0
  92. package/dist/chunk-FI474ADU.js +0 -0
  93. package/dist/chunk-FIVW6L2I.js +269 -0
  94. package/dist/chunk-FIYO3KTR.js +710 -0
  95. package/dist/chunk-FMFVTERD.js +0 -0
  96. package/dist/chunk-FQERBIVS.js +0 -0
  97. package/dist/chunk-FWPGOIFA.js +22 -0
  98. package/dist/chunk-G2N27VIE.js +164 -0
  99. package/dist/chunk-G4MIA23Y.js +100 -0
  100. package/dist/chunk-G5OVX555.js +26 -0
  101. package/dist/chunk-GCEOEV6P.js +241 -0
  102. package/dist/chunk-GR6JUIRU.js +32 -0
  103. package/dist/chunk-GVXAFQDF.js +170 -0
  104. package/dist/chunk-GYRTURN7.js +29 -0
  105. package/dist/chunk-HC25LNX7.js +45 -0
  106. package/dist/chunk-HDUVTTOW.js +396 -0
  107. package/dist/chunk-HGHJRKUC.js +223 -0
  108. package/dist/chunk-HINXQTCW.js +97 -0
  109. package/dist/chunk-HLL6GLZO.js +109 -0
  110. package/dist/chunk-HPQG3PEA.js +67 -0
  111. package/dist/chunk-I5LLMPI2.js +108 -0
  112. package/dist/chunk-I6GNV6QA.js +175 -0
  113. package/dist/chunk-IGTRIAUC.js +84 -0
  114. package/dist/chunk-INNFZYX2.js +183 -0
  115. package/dist/chunk-IQPN4PZJ.js +749 -0
  116. package/dist/chunk-IUB4C2WJ.js +420 -0
  117. package/dist/chunk-J54BZXZX.js +83 -0
  118. package/dist/chunk-J5SOBS7K.js +298 -0
  119. package/dist/chunk-JAJMMPOF.js +1260 -0
  120. package/dist/chunk-JHIMVLB2.js +42 -0
  121. package/dist/chunk-JI7HMGMO.js +79 -0
  122. package/dist/chunk-JJ4XUGHZ.js +312 -0
  123. package/dist/chunk-JOX3ZSRT.js +50 -0
  124. package/dist/chunk-JQV7CXEC.js +37 -0
  125. package/dist/chunk-JRTZWK77.js +1764 -0
  126. package/dist/chunk-K6RZE3F7.js +39 -0
  127. package/dist/chunk-KAZ5BYTQ.js +132 -0
  128. package/dist/chunk-KBYZLKI4.js +1093 -0
  129. package/dist/chunk-KHXRL3BH.js +85 -0
  130. package/dist/chunk-KWW4RDRS.js +199 -0
  131. package/dist/chunk-L74EVHCU.js +176 -0
  132. package/dist/chunk-L7DIEO5B.js +33 -0
  133. package/dist/chunk-LAVHRER2.js +17 -0
  134. package/dist/chunk-LFKTHNWI.js +83 -0
  135. package/dist/chunk-LGVVX4I6.js +422 -0
  136. package/dist/chunk-LQAAVRET.js +88 -0
  137. package/dist/chunk-LTBX54CI.js +11 -0
  138. package/dist/chunk-LXSBG6LK.js +18 -0
  139. package/dist/chunk-LXZXXOJ3.js +64 -0
  140. package/dist/chunk-LZO7MWH7.js +102 -0
  141. package/dist/chunk-MAEP2UCK.js +110 -0
  142. package/dist/chunk-MG4GKUJW.js +31 -0
  143. package/dist/chunk-MMDRMNPE.js +424 -0
  144. package/dist/chunk-MO7TNIVQ.js +23 -0
  145. package/dist/chunk-MZCJZRR6.js +381 -0
  146. package/dist/chunk-N2TQXB44.js +1280 -0
  147. package/dist/chunk-N3WRPCPT.js +94 -0
  148. package/dist/chunk-N5IUYCUZ.js +31 -0
  149. package/dist/chunk-N5XVXV47.js +530 -0
  150. package/dist/chunk-NBMM2TZK.js +33 -0
  151. package/dist/chunk-NCMUZ6BQ.js +0 -0
  152. package/dist/chunk-NCYTM57J.js +160 -0
  153. package/dist/chunk-NHGR2OFE.js +292 -0
  154. package/dist/chunk-NOWUEJ74.js +44 -0
  155. package/dist/chunk-NQ2RDSI3.js +43 -0
  156. package/dist/chunk-NXDFDEKP.js +0 -0
  157. package/dist/chunk-NYWESQ6J.js +86705 -0
  158. package/dist/chunk-NZN7PFPB.js +169 -0
  159. package/dist/chunk-O4LSCHTC.js +245 -0
  160. package/dist/chunk-O5VKW5FL.js +41 -0
  161. package/dist/chunk-O5ZOACVV.js +593 -0
  162. package/dist/chunk-OEDISQ2O.js +98 -0
  163. package/dist/chunk-OJI3SRZ3.js +373 -0
  164. package/dist/chunk-OSI3M4M2.js +473 -0
  165. package/dist/chunk-OT5X3VOQ.js +42 -0
  166. package/dist/chunk-OZMCKYJL.js +204 -0
  167. package/dist/chunk-P52JGPUG.js +135 -0
  168. package/dist/chunk-PHOCVOZ5.js +9 -0
  169. package/dist/chunk-PJTR2MBS.js +459 -0
  170. package/dist/chunk-PUQSQBZW.js +49 -0
  171. package/dist/chunk-PVZBDWLK.js +41 -0
  172. package/dist/chunk-PWMB7ITO.js +344 -0
  173. package/dist/chunk-PXYDR7WQ.js +48 -0
  174. package/dist/chunk-PYF5EER5.js +32 -0
  175. package/dist/chunk-Q6GUA5VE.js +92 -0
  176. package/dist/chunk-QDIPFZLV.js +113 -0
  177. package/dist/chunk-QDPLZDMX.js +17 -0
  178. package/dist/chunk-QG6PLWNH.js +106 -0
  179. package/dist/chunk-QLTN2DIY.js +119 -0
  180. package/dist/chunk-QSGR43JM.js +30 -0
  181. package/dist/chunk-QUNCQMFH.js +219 -0
  182. package/dist/chunk-QUTZUW55.js +163 -0
  183. package/dist/chunk-QVLL4MKH.js +245 -0
  184. package/dist/chunk-R325CPYC.js +88 -0
  185. package/dist/chunk-R4O667NT.js +80 -0
  186. package/dist/chunk-R55Q5LAH.js +47 -0
  187. package/dist/chunk-RF7BE47J.js +685 -0
  188. package/dist/chunk-RHKRREUU.js +15 -0
  189. package/dist/chunk-RHYS2TFP.js +266 -0
  190. package/dist/chunk-RK5N3XIX.js +56 -0
  191. package/dist/chunk-RQQ53CQJ.js +87 -0
  192. package/dist/chunk-RSBZREKG.js +144 -0
  193. package/dist/chunk-RXM4B6HR.js +8 -0
  194. package/dist/chunk-S2WEYEQR.js +14 -0
  195. package/dist/chunk-S3L6CIN2.js +459 -0
  196. package/dist/chunk-S4SVK5DE.js +39 -0
  197. package/dist/chunk-SBH4E5NY.js +129 -0
  198. package/dist/chunk-SDNGZDNK.js +170 -0
  199. package/dist/chunk-SJQ4QAFK.js +471 -0
  200. package/dist/chunk-SMQT3ZNO.js +8 -0
  201. package/dist/chunk-STSW4GDV.js +325 -0
  202. package/dist/chunk-SWL7ZCP3.js +11 -0
  203. package/dist/chunk-THHRRYRS.js +16 -0
  204. package/dist/chunk-THYWJQI4.js +635 -0
  205. package/dist/chunk-TK3XKN2P.js +357 -0
  206. package/dist/chunk-TKEAOWBZ.js +178 -0
  207. package/dist/chunk-TKFMOTJK.js +297 -0
  208. package/dist/chunk-TKGWSUEI.js +0 -0
  209. package/dist/chunk-TKSKCH3S.js +199 -0
  210. package/dist/chunk-TLE6YHGH.js +26 -0
  211. package/dist/chunk-TN4TIT7O.js +116 -0
  212. package/dist/chunk-TOUMBTYI.js +41 -0
  213. package/dist/chunk-TP7M43SI.js +189 -0
  214. package/dist/chunk-TUJIAA5O.js +101 -0
  215. package/dist/chunk-TZSOL34K.js +106 -0
  216. package/dist/chunk-U2EI2ZLM.js +32 -0
  217. package/dist/chunk-U2L77ZDR.js +17 -0
  218. package/dist/chunk-U2ZFCAPX.js +34 -0
  219. package/dist/chunk-U3OWJE7V.js +4113 -0
  220. package/dist/chunk-U5MJIHLY.js +87 -0
  221. package/dist/chunk-U5QDMLTR.js +294 -0
  222. package/dist/chunk-UI2BJVP5.js +170 -0
  223. package/dist/chunk-ULJ3OMWU.js +467 -0
  224. package/dist/chunk-UM7ZR3VU.js +14 -0
  225. package/dist/chunk-UQITHKTH.js +342 -0
  226. package/dist/chunk-UXD3VNBO.js +53 -0
  227. package/dist/chunk-UZWFZMOX.js +40 -0
  228. package/dist/chunk-V5J73NPW.js +117 -0
  229. package/dist/chunk-V6LO4BXB.js +460 -0
  230. package/dist/chunk-V74Y5NIV.js +49 -0
  231. package/dist/chunk-V7Y7WBGF.js +112 -0
  232. package/dist/chunk-VEW7PQ3X.js +209 -0
  233. package/dist/chunk-VHCDSNXF.js +89 -0
  234. package/dist/chunk-VKOE5J66.js +31 -0
  235. package/dist/chunk-VOHEQ7B5.js +31 -0
  236. package/dist/chunk-VRGXUUPH.js +772 -0
  237. package/dist/chunk-VVWB3GIK.js +70 -0
  238. package/dist/chunk-VW56KWO2.js +9 -0
  239. package/dist/chunk-VXW3BCN2.js +171 -0
  240. package/dist/chunk-VZEMURY7.js +35 -0
  241. package/dist/chunk-W6Y3PPU5.js +73 -0
  242. package/dist/chunk-WBNGBRBK.js +482 -0
  243. package/dist/chunk-WCEMRNW4.js +6 -0
  244. package/dist/chunk-WEVK4TBV.js +257 -0
  245. package/dist/chunk-WIYFXWRI.js +30 -0
  246. package/dist/chunk-WMA3WTCM.js +117 -0
  247. package/dist/chunk-WW7VLWKJ.js +360 -0
  248. package/dist/chunk-X6HEEFUW.js +1104 -0
  249. package/dist/chunk-XBFWFGZH.js +249 -0
  250. package/dist/chunk-XFKRBJLK.js +104 -0
  251. package/dist/chunk-XFR5JLNF.js +44 -0
  252. package/dist/chunk-XIZLPYEE.js +261 -0
  253. package/dist/chunk-XQNVC4Q7.js +212 -0
  254. package/dist/chunk-XR2UEF6U.js +433 -0
  255. package/dist/chunk-XSEF6KRY.js +335 -0
  256. package/dist/chunk-XSX255FK.js +12 -0
  257. package/dist/chunk-Y2M536WR.js +67 -0
  258. package/dist/chunk-Y456KVIN.js +116 -0
  259. package/dist/chunk-Y7QKP6QU.js +35 -0
  260. package/dist/chunk-YAMNPEPW.js +345 -0
  261. package/dist/chunk-YBZWO4ZV.js +57 -0
  262. package/dist/chunk-YDAJI7WF.js +389 -0
  263. package/dist/chunk-YMKZS2HK.js +82 -0
  264. package/dist/chunk-YQYGAFCS.js +119 -0
  265. package/dist/chunk-YVCBMOJG.js +50 -0
  266. package/dist/chunk-YWWUOGJA.js +62 -0
  267. package/dist/chunk-YXFG3M2D.js +792 -0
  268. package/dist/chunk-ZA2KFUFR.js +19 -0
  269. package/dist/chunk-ZGEMSYN7.js +61 -0
  270. package/dist/chunk-ZJO4DDOP.js +454 -0
  271. package/dist/chunk-ZNA2XOGX.js +675 -0
  272. package/dist/chunk-ZQZHFMD7.js +19 -0
  273. package/dist/collection-add-products-4TTEF6QV.js +288 -0
  274. package/dist/collection-create-SD4GKHFC.js +134 -0
  275. package/dist/collection-detail-64YVMLBU.js +97 -0
  276. package/dist/collection-edit-Z474HXCJ.js +122 -0
  277. package/dist/collection-list-OTSGOEBC.js +79 -0
  278. package/dist/collection-metadata-FFHA6CQ3.js +84 -0
  279. package/dist/commission-rate-create-7BBUGS2I.js +779 -0
  280. package/dist/commission-rate-detail-FORKXXJY.js +83 -0
  281. package/dist/commission-rate-edit-SAX2DAND.js +762 -0
  282. package/dist/commission-rate-list-EESTCCRP.js +28 -0
  283. package/dist/constants-CAwtRicB.d.ts +42 -0
  284. package/dist/customer-create-WA4GYGVD.js +184 -0
  285. package/dist/customer-create-address-YBI4KWWH.js +300 -0
  286. package/dist/customer-detail-SDE4TDZD.js +107 -0
  287. package/dist/customer-edit-TFR6PVJJ.js +193 -0
  288. package/dist/customer-group-add-customers-77BVWLTN.js +247 -0
  289. package/dist/customer-group-create-32UIUO46.js +114 -0
  290. package/dist/customer-group-detail-QRY6BHGI.js +106 -0
  291. package/dist/customer-group-edit-HFL7LZZZ.js +109 -0
  292. package/dist/customer-group-list-Q3T72VH2.js +57 -0
  293. package/dist/customer-group-metadata-FXI3J6DB.js +85 -0
  294. package/dist/customer-list-CXTUBLCK.js +33 -0
  295. package/dist/customer-metadata-BV4CHHWI.js +85 -0
  296. package/dist/customers-add-customer-group-SUE2KKJR.js +312 -0
  297. package/dist/edit-inventory-item-DDRUGVSK.js +156 -0
  298. package/dist/edit-inventory-item-attributes-MDL7FSLR.js +327 -0
  299. package/dist/edit-reservation-JWABBNJ6.js +247 -0
  300. package/dist/edit-rules-ECNFIPUC.js +320 -0
  301. package/dist/home-I3OILW5Z.js +16 -0
  302. package/dist/index.css +6 -0
  303. package/dist/index.d.ts +255 -0
  304. package/dist/index.js +4989 -0
  305. package/dist/inventory-create-S6CB4JYN.js +56 -0
  306. package/dist/inventory-detail-OIKNOS5A.js +107 -0
  307. package/dist/inventory-list-XSHWCPO4.js +30 -0
  308. package/dist/inventory-metadata-MHGDNLXT.js +87 -0
  309. package/dist/inventory-stock-JG5CZWZA.js +292 -0
  310. package/dist/invite-25CGHT4W.js +373 -0
  311. package/dist/location-create-G3MNWQWB.js +239 -0
  312. package/dist/location-detail-5CGAZMBR.js +100 -0
  313. package/dist/location-edit-UI6AWCZS.js +254 -0
  314. package/dist/location-fulfillment-providers-BA2VMZHX.js +293 -0
  315. package/dist/location-list-656DEW7L.js +53 -0
  316. package/dist/location-sales-channels-WXBK4EJO.js +216 -0
  317. package/dist/location-service-zone-create-647O67PU.js +174 -0
  318. package/dist/location-service-zone-edit-BUY6HNZM.js +135 -0
  319. package/dist/location-service-zone-manage-areas-X2ZGRHHA.js +155 -0
  320. package/dist/location-service-zone-shipping-option-create-IASFWJ2Z.js +57 -0
  321. package/dist/location-service-zone-shipping-option-edit-IJDU5PTW.js +363 -0
  322. package/dist/location-service-zone-shipping-option-pricing-3T7HLKJC.js +363 -0
  323. package/dist/login-WU5VB5LW.js +264 -0
  324. package/dist/manage-locations-IJIPCYAY.js +250 -0
  325. package/dist/marketplace-add-currencies-RXLEQ6MZ.js +305 -0
  326. package/dist/marketplace-detail-23KSAJVI.js +75 -0
  327. package/dist/marketplace-edit-XPIEDQYD.js +247 -0
  328. package/dist/marketplace-metadata-5GEWGH2M.js +89 -0
  329. package/dist/no-match-JLVLPCRH.js +33 -0
  330. package/dist/order-allocate-items-GYGER65Z.js +559 -0
  331. package/dist/order-create-claim-RNUFU2MP.js +2207 -0
  332. package/dist/order-create-edit-DLH76B2Q.js +936 -0
  333. package/dist/order-create-exchange-FA27FZU7.js +2194 -0
  334. package/dist/order-create-fulfillment-4F5JAUOX.js +625 -0
  335. package/dist/order-create-refund-3LCTQXFD.js +407 -0
  336. package/dist/order-create-return-EO2C5RAA.js +1293 -0
  337. package/dist/order-create-shipment-PIQ43ZSG.js +212 -0
  338. package/dist/order-detail-2U26JNU2.js +123 -0
  339. package/dist/order-edit-billing-address-PRXCLUNR.js +404 -0
  340. package/dist/order-edit-email-GVKVQESG.js +175 -0
  341. package/dist/order-edit-shipping-address-UDNHXO2V.js +401 -0
  342. package/dist/order-list-U2HL7VBX.js +49 -0
  343. package/dist/order-metadata-HPXIR6KI.js +86 -0
  344. package/dist/order-receive-return-FMM74XYM.js +553 -0
  345. package/dist/order-request-transfer-SI5PSOKA.js +575 -0
  346. package/dist/pages/index.d.ts +3165 -0
  347. package/dist/pages/index.js +447 -0
  348. package/dist/payout-detail-L4VYAP53.js +52 -0
  349. package/dist/payout-list-4S6MAU4R.js +30 -0
  350. package/dist/price-list-configuration-F2BZC6QX.js +357 -0
  351. package/dist/price-list-create-ZJTDGJSS.js +76 -0
  352. package/dist/price-list-detail-IUJXNM6Y.js +103 -0
  353. package/dist/price-list-edit-CERYYMC5.js +228 -0
  354. package/dist/price-list-list-RBD2MEZ5.js +36 -0
  355. package/dist/price-list-prices-add-AJJ76VMY.js +71 -0
  356. package/dist/price-list-prices-edit-2NYN6WVJ.js +332 -0
  357. package/dist/product-attributes-EUDG25XA.js +362 -0
  358. package/dist/product-create-XA7UOISW.js +68 -0
  359. package/dist/product-create-option-BG2ZKSFN.js +148 -0
  360. package/dist/product-create-variant-4Z6HSHRE.js +54 -0
  361. package/dist/product-detail-F67SLUIA.js +103 -0
  362. package/dist/product-edit-HFWSBQQI.js +401 -0
  363. package/dist/product-edit-option-Y46SNVHN.js +156 -0
  364. package/dist/product-export-ABNA6ZTY.js +132 -0
  365. package/dist/product-import-SQSXBPK5.js +265 -0
  366. package/dist/product-list-NWHRQHVJ.js +86 -0
  367. package/dist/product-media-YIQCVDCC.js +883 -0
  368. package/dist/product-metadata-2Z5DIXJH.js +87 -0
  369. package/dist/product-organization-L666C2EQ.js +316 -0
  370. package/dist/product-prices-DPGO4KHT.js +267 -0
  371. package/dist/product-sales-channels-6IS6T3EC.js +161 -0
  372. package/dist/product-shipping-profile-LMLRMJ36.js +150 -0
  373. package/dist/product-stock-AQKD6EQO.js +542 -0
  374. package/dist/product-tag-create-5CF7JLN5.js +126 -0
  375. package/dist/product-tag-detail-2RJNUUT7.js +136 -0
  376. package/dist/product-tag-edit-KGT54WP5.js +138 -0
  377. package/dist/product-tag-list-PJG7ICZE.js +130 -0
  378. package/dist/product-tag-metadata-WU7DVJUM.js +84 -0
  379. package/dist/product-type-create-WHYGTCYX.js +102 -0
  380. package/dist/product-type-detail-MZ3MAV2B.js +98 -0
  381. package/dist/product-type-edit-A4IE6BSF.js +114 -0
  382. package/dist/product-type-list-ND2IIR6O.js +35 -0
  383. package/dist/product-type-metadata-KX4ETP3Y.js +84 -0
  384. package/dist/product-variant-detail-USZXPSVX.js +112 -0
  385. package/dist/product-variant-edit-5L2GWAHB.js +545 -0
  386. package/dist/product-variant-manage-inventory-items-54V2HTA6.js +341 -0
  387. package/dist/product-variant-metadata-SBYZTEIH.js +90 -0
  388. package/dist/profile-detail-OAQD5VJC.js +18 -0
  389. package/dist/profile-edit-DSZCGRY7.js +177 -0
  390. package/dist/promotion-add-campaign-JC4B53LS.js +44 -0
  391. package/dist/promotion-create-A6FMNECA.js +54 -0
  392. package/dist/promotion-detail-XOQTYXTV.js +88 -0
  393. package/dist/promotion-edit-details-KFZ2VVVQ.js +513 -0
  394. package/dist/promotion-list-EH7CW4JZ.js +58 -0
  395. package/dist/refund-reason-create-EMGCAW5S.js +196 -0
  396. package/dist/refund-reason-edit-3D25LGKM.js +196 -0
  397. package/dist/refund-reason-list-V7HDVFS2.js +102 -0
  398. package/dist/region-add-countries-ZAQBBXIL.js +227 -0
  399. package/dist/region-create-IMSMEASB.js +508 -0
  400. package/dist/region-detail-RASFBR5O.js +74 -0
  401. package/dist/region-edit-HGSLB3RU.js +381 -0
  402. package/dist/region-list-WEILXVMS.js +35 -0
  403. package/dist/region-metadata-4COKDRZH.js +87 -0
  404. package/dist/reservation-create-CIYW3ZKU.js +310 -0
  405. package/dist/reservation-detail-2ARWTBE6.js +83 -0
  406. package/dist/reservation-list-W6IOXQZK.js +31 -0
  407. package/dist/reservation-metadata-3ZJ2C5BM.js +87 -0
  408. package/dist/reset-password-YQ6HMFFZ.js +458 -0
  409. package/dist/return-reason-create-HHZ3EMCC.js +166 -0
  410. package/dist/return-reason-edit-5P43JRYC.js +169 -0
  411. package/dist/return-reason-list-32MCIQMK.js +81 -0
  412. package/dist/sales-channel-add-products-U2UTBUKE.js +278 -0
  413. package/dist/sales-channel-create-TMRTMLIX.js +155 -0
  414. package/dist/sales-channel-detail-FRBKGP4X.js +98 -0
  415. package/dist/sales-channel-edit-4LE2N6EV.js +164 -0
  416. package/dist/sales-channel-list-36UHU63C.js +50 -0
  417. package/dist/sales-channel-metadata-OKKVLC7G.js +92 -0
  418. package/dist/seller-address-edit-VH4X5OIO.js +223 -0
  419. package/dist/seller-details-52PG56BK.js +104 -0
  420. package/dist/seller-edit-TU72D5QS.js +331 -0
  421. package/dist/seller-list-CYNCPXYT.js +80 -0
  422. package/dist/settings-AVE3VCCM.js +19 -0
  423. package/dist/shipping-option-type-create-ZHRADP5E.js +199 -0
  424. package/dist/shipping-option-type-detail-ZDEEU3P5.js +82 -0
  425. package/dist/shipping-option-type-edit-2FCNVHNE.js +195 -0
  426. package/dist/shipping-option-type-list-OCCZ4DNS.js +60 -0
  427. package/dist/shipping-profile-create-WLHDFQ4Q.js +124 -0
  428. package/dist/shipping-profile-detail-AUWRGYYL.js +57 -0
  429. package/dist/shipping-profile-metadata-W7CND3IQ.js +88 -0
  430. package/dist/shipping-profiles-list-RZT6HIZV.js +27 -0
  431. package/dist/tax-region-create-U5JWJUX4.js +304 -0
  432. package/dist/tax-region-detail-UNGDO64V.js +68 -0
  433. package/dist/tax-region-edit-5DOYTPEF.js +166 -0
  434. package/dist/tax-region-list-MRQ63BL3.js +27 -0
  435. package/dist/tax-region-metadata-WN3XSWGA.js +87 -0
  436. package/dist/tax-region-province-create-3GZUYVBY.js +316 -0
  437. package/dist/tax-region-province-detail-QTBP47GV.js +99 -0
  438. package/dist/tax-region-tax-override-create-PRZ3DEZE.js +688 -0
  439. package/dist/tax-region-tax-override-edit-YAA6TB6A.js +797 -0
  440. package/dist/tax-region-tax-rate-create-KHNADBCN.js +194 -0
  441. package/dist/tax-region-tax-rate-edit-JR5262VW.js +193 -0
  442. package/dist/user-detail-I66RREWP.js +55 -0
  443. package/dist/user-edit-LBJOZ4LG.js +116 -0
  444. package/dist/user-invite-EUNVBT5W.js +398 -0
  445. package/dist/user-list-BDJJI33F.js +28 -0
  446. package/dist/user-metadata-4RXAMVDT.js +87 -0
  447. package/package.json +87 -0
@@ -0,0 +1,593 @@
1
+ import {
2
+ usePromotionTableColumns,
3
+ usePromotionTableQuery
4
+ } from "./chunk-N3WRPCPT.js";
5
+ import {
6
+ DateRangeDisplay
7
+ } from "./chunk-RK5N3XIX.js";
8
+ import {
9
+ TwoColumnPage
10
+ } from "./chunk-V5J73NPW.js";
11
+ import {
12
+ _DataTable,
13
+ useDataTable
14
+ } from "./chunk-ULJ3OMWU.js";
15
+ import {
16
+ currencies
17
+ } from "./chunk-IQPN4PZJ.js";
18
+ import {
19
+ TwoColumnPageSkeleton
20
+ } from "./chunk-INNFZYX2.js";
21
+ import {
22
+ ActionMenu
23
+ } from "./chunk-BDGZ4EQO.js";
24
+ import {
25
+ usePromotionTableFilters
26
+ } from "./chunk-S2WEYEQR.js";
27
+ import {
28
+ useAddOrRemoveCampaignPromotions,
29
+ useCampaign,
30
+ useDeleteCampaign,
31
+ usePromotions
32
+ } from "./chunk-GCEOEV6P.js";
33
+
34
+ // src/pages/campaigns/campaign-detail/campaign-detail.tsx
35
+ import { Children } from "react";
36
+ import { useLoaderData, useParams } from "react-router-dom";
37
+
38
+ // src/pages/campaigns/campaign-detail/components/campaign-budget/campaign-budget.tsx
39
+ import { ChartPie, PencilSquare } from "@medusajs/icons";
40
+ import { Container, Heading, Text } from "@medusajs/ui";
41
+ import { Trans, useTranslation } from "react-i18next";
42
+ import { jsx, jsxs } from "react/jsx-runtime";
43
+ var CampaignBudget = ({ campaign }) => {
44
+ const { t } = useTranslation();
45
+ return /* @__PURE__ */ jsxs(Container, { className: "flex flex-col gap-y-4 px-6 py-4", "data-testid": "campaign-budget-container", children: [
46
+ /* @__PURE__ */ jsxs("div", { className: "flex justify-between", "data-testid": "campaign-budget-header", children: [
47
+ /* @__PURE__ */ jsxs("div", { className: "flex-grow", children: [
48
+ /* @__PURE__ */ jsx("div", { className: "bg-ui-bg-base shadow-borders-base float-start flex size-7 items-center justify-center rounded-md", "data-testid": "campaign-budget-icon-container", children: /* @__PURE__ */ jsx("div", { className: "bg-ui-bg-component flex size-6 items-center justify-center rounded-[4px]", children: /* @__PURE__ */ jsx(ChartPie, { className: "text-ui-fg-subtle" }) }) }),
49
+ /* @__PURE__ */ jsx(
50
+ Heading,
51
+ {
52
+ className: "text-ui-fg-subtle ms-10 mt-[1.5px] font-normal",
53
+ level: "h3",
54
+ "data-testid": "campaign-budget-heading",
55
+ children: campaign.budget?.type === "use_by_attribute" ? t("campaigns.budget.fields.totalUsedByAttribute", {
56
+ attribute: campaign.budget?.attribute
57
+ }) : t("campaigns.fields.budget_limit")
58
+ }
59
+ )
60
+ ] }),
61
+ /* @__PURE__ */ jsx(
62
+ ActionMenu,
63
+ {
64
+ groups: [
65
+ {
66
+ actions: [
67
+ {
68
+ icon: /* @__PURE__ */ jsx(PencilSquare, {}),
69
+ label: t("actions.edit"),
70
+ to: `edit-budget`
71
+ }
72
+ ]
73
+ }
74
+ ],
75
+ "data-testid": "campaign-budget-action-menu"
76
+ }
77
+ )
78
+ ] }),
79
+ /* @__PURE__ */ jsx("div", { "data-testid": "campaign-budget-limit", children: /* @__PURE__ */ jsx(
80
+ Text,
81
+ {
82
+ className: "text-ui-fg-subtle border-ui-border-strong border-l-4 ps-3",
83
+ size: "small",
84
+ leading: "compact",
85
+ "data-testid": "campaign-budget-limit-text",
86
+ children: /* @__PURE__ */ jsx(
87
+ Trans,
88
+ {
89
+ i18nKey: "campaigns.totalSpend",
90
+ values: {
91
+ amount: campaign?.budget?.limit || "no limit",
92
+ currency: campaign?.budget?.type === "spend" && campaign?.budget.limit ? campaign.budget?.currency_code : ""
93
+ },
94
+ components: [
95
+ /* @__PURE__ */ jsx(
96
+ "span",
97
+ {
98
+ className: "text-ui-fg-base txt-compact-medium-plus text-lg",
99
+ "data-testid": "campaign-budget-limit-amount"
100
+ },
101
+ "amount"
102
+ ),
103
+ /* @__PURE__ */ jsx(
104
+ "span",
105
+ {
106
+ className: "text-ui-fg-base txt-compact-medium-plus text-lg",
107
+ "data-testid": "campaign-budget-limit-currency"
108
+ },
109
+ "currency"
110
+ )
111
+ ]
112
+ }
113
+ )
114
+ }
115
+ ) })
116
+ ] });
117
+ };
118
+
119
+ // src/pages/campaigns/campaign-detail/components/campaign-configuration-section/campaign-configuration-section.tsx
120
+ import { Container as Container2, Heading as Heading2 } from "@medusajs/ui";
121
+ import { PencilSquare as PencilSquare2 } from "@medusajs/icons";
122
+ import { useTranslation as useTranslation2 } from "react-i18next";
123
+ import { jsx as jsx2, jsxs as jsxs2 } from "react/jsx-runtime";
124
+ var CampaignConfigurationSection = ({
125
+ campaign
126
+ }) => {
127
+ const { t } = useTranslation2();
128
+ return /* @__PURE__ */ jsxs2(Container2, { className: "flex flex-col gap-y-4", "data-testid": "campaign-configuration-section-container", children: [
129
+ /* @__PURE__ */ jsxs2("div", { className: "flex items-center justify-between", "data-testid": "campaign-configuration-section-header", children: [
130
+ /* @__PURE__ */ jsx2(Heading2, { level: "h2", "data-testid": "campaign-configuration-section-heading", children: t("campaigns.configuration.header") }),
131
+ /* @__PURE__ */ jsx2(
132
+ ActionMenu,
133
+ {
134
+ groups: [
135
+ {
136
+ actions: [
137
+ {
138
+ label: t("actions.edit"),
139
+ icon: /* @__PURE__ */ jsx2(PencilSquare2, {}),
140
+ to: "configuration"
141
+ }
142
+ ]
143
+ }
144
+ ],
145
+ "data-testid": "campaign-configuration-section-action-menu"
146
+ }
147
+ )
148
+ ] }),
149
+ /* @__PURE__ */ jsx2(
150
+ DateRangeDisplay,
151
+ {
152
+ startsAt: campaign.starts_at,
153
+ endsAt: campaign.ends_at,
154
+ showTime: true,
155
+ "data-testid": "campaign-configuration-section-date-range"
156
+ }
157
+ )
158
+ ] });
159
+ };
160
+
161
+ // src/pages/campaigns/campaign-detail/components/campaign-general-section/campaign-general-section.tsx
162
+ import { PencilSquare as PencilSquare3, Trash } from "@medusajs/icons";
163
+ import {
164
+ Badge,
165
+ Container as Container3,
166
+ Heading as Heading3,
167
+ StatusBadge,
168
+ Text as Text2,
169
+ toast,
170
+ usePrompt
171
+ } from "@medusajs/ui";
172
+ import { useTranslation as useTranslation3 } from "react-i18next";
173
+ import { useNavigate } from "react-router-dom";
174
+
175
+ // src/pages/campaigns/common/utils/campaign-status.ts
176
+ import { isAfter, isBefore } from "date-fns";
177
+ function campaignStatus(campaign) {
178
+ if (campaign.ends_at) {
179
+ if (isBefore(new Date(campaign.ends_at), /* @__PURE__ */ new Date())) {
180
+ return "expired";
181
+ }
182
+ }
183
+ if (campaign.starts_at) {
184
+ if (isAfter(new Date(campaign.starts_at), /* @__PURE__ */ new Date())) {
185
+ return "scheduled";
186
+ }
187
+ }
188
+ return "active";
189
+ }
190
+ var statusColor = (status) => {
191
+ switch (status) {
192
+ case "expired":
193
+ return "red";
194
+ case "scheduled":
195
+ return "orange";
196
+ case "active":
197
+ return "green";
198
+ default:
199
+ return "grey";
200
+ }
201
+ };
202
+
203
+ // src/pages/campaigns/campaign-detail/components/campaign-general-section/campaign-general-section.tsx
204
+ import { jsx as jsx3, jsxs as jsxs3 } from "react/jsx-runtime";
205
+ var CampaignGeneralSection = ({
206
+ campaign
207
+ }) => {
208
+ const { t } = useTranslation3();
209
+ const prompt = usePrompt();
210
+ const navigate = useNavigate();
211
+ const { mutateAsync } = useDeleteCampaign(campaign.id);
212
+ const handleDelete = async () => {
213
+ const res = await prompt({
214
+ title: t("campaigns.delete.title"),
215
+ description: t("campaigns.delete.description", {
216
+ name: campaign.name
217
+ }),
218
+ confirmText: t("actions.delete"),
219
+ cancelText: t("actions.cancel")
220
+ });
221
+ if (!res) {
222
+ return;
223
+ }
224
+ await mutateAsync(void 0, {
225
+ onSuccess: () => {
226
+ toast.success(
227
+ t("campaigns.delete.successToast", {
228
+ name: campaign.name
229
+ })
230
+ );
231
+ navigate("/campaigns", { replace: true });
232
+ },
233
+ onError: (error) => {
234
+ toast.error(error.message);
235
+ }
236
+ });
237
+ };
238
+ const status = campaignStatus(campaign);
239
+ return /* @__PURE__ */ jsxs3(Container3, { className: "divide-y p-0", "data-testid": "campaign-general-section-container", children: [
240
+ /* @__PURE__ */ jsxs3("div", { className: "flex items-center justify-between px-6 py-4", "data-testid": "campaign-general-section-header", children: [
241
+ /* @__PURE__ */ jsx3(Heading3, { "data-testid": "campaign-general-section-name", children: campaign.name }),
242
+ /* @__PURE__ */ jsxs3("div", { className: "flex items-center gap-x-4", children: [
243
+ /* @__PURE__ */ jsx3(StatusBadge, { color: statusColor(status), "data-testid": "campaign-general-section-status", children: t(`campaigns.status.${status}`) }),
244
+ /* @__PURE__ */ jsx3(
245
+ ActionMenu,
246
+ {
247
+ groups: [
248
+ {
249
+ actions: [
250
+ {
251
+ icon: /* @__PURE__ */ jsx3(PencilSquare3, {}),
252
+ label: t("actions.edit"),
253
+ to: `/campaigns/${campaign.id}/edit`
254
+ }
255
+ ]
256
+ },
257
+ {
258
+ actions: [
259
+ {
260
+ icon: /* @__PURE__ */ jsx3(Trash, {}),
261
+ label: t("actions.delete"),
262
+ onClick: handleDelete
263
+ }
264
+ ]
265
+ }
266
+ ],
267
+ "data-testid": "campaign-general-section-action-menu"
268
+ }
269
+ )
270
+ ] })
271
+ ] }),
272
+ /* @__PURE__ */ jsxs3("div", { className: "text-ui-fg-subtle grid grid-cols-2 items-center px-6 py-4", "data-testid": "campaign-general-section-identifier", children: [
273
+ /* @__PURE__ */ jsx3(Text2, { size: "small", leading: "compact", weight: "plus", "data-testid": "campaign-general-section-identifier-label", children: t("campaigns.fields.identifier") }),
274
+ /* @__PURE__ */ jsx3(Text2, { size: "small", leading: "compact", "data-testid": "campaign-general-section-identifier-value", children: campaign.campaign_identifier })
275
+ ] }),
276
+ /* @__PURE__ */ jsxs3("div", { className: "text-ui-fg-subtle grid grid-cols-2 items-center px-6 py-4", "data-testid": "campaign-general-section-description", children: [
277
+ /* @__PURE__ */ jsx3(Text2, { size: "small", leading: "compact", weight: "plus", "data-testid": "campaign-general-section-description-label", children: t("fields.description") }),
278
+ /* @__PURE__ */ jsx3(Text2, { size: "small", leading: "compact", "data-testid": "campaign-general-section-description-value", children: campaign.description || "-" })
279
+ ] }),
280
+ campaign?.budget && campaign.budget.type === "spend" && /* @__PURE__ */ jsxs3("div", { className: "text-ui-fg-subtle grid grid-cols-2 items-center px-6 py-4", "data-testid": "campaign-general-section-currency", children: [
281
+ /* @__PURE__ */ jsx3(Text2, { size: "small", leading: "compact", weight: "plus", "data-testid": "campaign-general-section-currency-label", children: t("fields.currency") }),
282
+ /* @__PURE__ */ jsxs3("div", { "data-testid": "campaign-general-section-currency-value", children: [
283
+ /* @__PURE__ */ jsx3(Badge, { size: "xsmall", "data-testid": "campaign-general-section-currency-badge", children: campaign?.budget.currency_code }),
284
+ /* @__PURE__ */ jsx3(Text2, { className: "inline pl-3", size: "small", leading: "compact", "data-testid": "campaign-general-section-currency-name", children: currencies[campaign?.budget.currency_code?.toUpperCase()]?.name })
285
+ ] })
286
+ ] })
287
+ ] });
288
+ };
289
+
290
+ // src/pages/campaigns/campaign-detail/components/campaign-promotion-section/campaign-promotion-section.tsx
291
+ import { PencilSquare as PencilSquare4, Trash as Trash2 } from "@medusajs/icons";
292
+ import { Button, Checkbox, Container as Container4, Heading as Heading4, usePrompt as usePrompt2 } from "@medusajs/ui";
293
+ import { createColumnHelper } from "@tanstack/react-table";
294
+ import { useMemo, useState } from "react";
295
+ import { useTranslation as useTranslation4 } from "react-i18next";
296
+ import { Link } from "react-router-dom";
297
+ import { jsx as jsx4, jsxs as jsxs4 } from "react/jsx-runtime";
298
+ var PAGE_SIZE = 10;
299
+ var CampaignPromotionSection = ({
300
+ campaign
301
+ }) => {
302
+ const [rowSelection, setRowSelection] = useState({});
303
+ const { t } = useTranslation4();
304
+ const prompt = usePrompt2();
305
+ const columns = useColumns();
306
+ const filters = usePromotionTableFilters();
307
+ const { searchParams, raw } = usePromotionTableQuery({ pageSize: PAGE_SIZE });
308
+ const { promotions, count, isLoading, isError, error } = usePromotions({
309
+ ...searchParams,
310
+ campaign_id: campaign.id
311
+ });
312
+ const { table } = useDataTable({
313
+ data: promotions ?? [],
314
+ columns,
315
+ count,
316
+ getRowId: (row) => row.id,
317
+ enablePagination: true,
318
+ enableRowSelection: true,
319
+ pageSize: PAGE_SIZE,
320
+ rowSelection: {
321
+ state: rowSelection,
322
+ updater: setRowSelection
323
+ },
324
+ meta: { campaignId: campaign.id }
325
+ });
326
+ if (isError) {
327
+ throw error;
328
+ }
329
+ const { mutateAsync } = useAddOrRemoveCampaignPromotions(campaign.id);
330
+ const handleRemove = async () => {
331
+ const keys = Object.keys(rowSelection);
332
+ const res = await prompt({
333
+ title: t("campaigns.promotions.remove.title", { count: keys.length }),
334
+ description: t("campaigns.promotions.remove.description", {
335
+ count: keys.length
336
+ }),
337
+ confirmText: t("actions.continue"),
338
+ cancelText: t("actions.cancel")
339
+ });
340
+ if (!res) {
341
+ return;
342
+ }
343
+ await mutateAsync(
344
+ { remove: keys },
345
+ { onSuccess: () => setRowSelection({}) }
346
+ );
347
+ };
348
+ return /* @__PURE__ */ jsxs4(Container4, { className: "divide-y p-0", "data-testid": "campaign-promotion-section-container", children: [
349
+ /* @__PURE__ */ jsxs4("div", { className: "flex items-center justify-between px-6 py-4", "data-testid": "campaign-promotion-section-header", children: [
350
+ /* @__PURE__ */ jsx4(Heading4, { level: "h2", "data-testid": "campaign-promotion-section-heading", children: t("promotions.domain") }),
351
+ /* @__PURE__ */ jsx4(Link, { to: `/campaigns/${campaign.id}/add-promotions`, children: /* @__PURE__ */ jsx4(Button, { variant: "secondary", size: "small", "data-testid": "campaign-promotion-section-add-button", children: t("general.add") }) })
352
+ ] }),
353
+ /* @__PURE__ */ jsx4(
354
+ _DataTable,
355
+ {
356
+ table,
357
+ columns,
358
+ pageSize: PAGE_SIZE,
359
+ isLoading,
360
+ count,
361
+ navigateTo: (row) => `/promotions/${row.id}`,
362
+ filters,
363
+ search: true,
364
+ pagination: true,
365
+ orderBy: [
366
+ { key: "code", label: t("fields.code") },
367
+ { key: "type", label: t("fields.type") },
368
+ { key: "created_at", label: t("fields.createdAt") },
369
+ { key: "updated_at", label: t("fields.updatedAt") }
370
+ ],
371
+ queryObject: raw,
372
+ commands: [
373
+ {
374
+ action: handleRemove,
375
+ label: t("actions.remove"),
376
+ shortcut: "r"
377
+ }
378
+ ],
379
+ noRecords: {
380
+ message: t("campaigns.promotions.list.noRecordsMessage")
381
+ },
382
+ "data-testid": "campaign-promotion-section-table"
383
+ }
384
+ )
385
+ ] });
386
+ };
387
+ var PromotionActions = ({
388
+ promotion,
389
+ campaignId
390
+ }) => {
391
+ const { t } = useTranslation4();
392
+ const { mutateAsync } = useAddOrRemoveCampaignPromotions(campaignId);
393
+ const prompt = usePrompt2();
394
+ const handleRemove = async () => {
395
+ const res = await prompt({
396
+ title: t("campaigns.promotions.remove.title", {
397
+ count: 1
398
+ }),
399
+ description: t("campaigns.promotions.remove.description", {
400
+ count: 1
401
+ }),
402
+ confirmText: t("actions.continue"),
403
+ cancelText: t("actions.cancel")
404
+ });
405
+ if (!res) {
406
+ return;
407
+ }
408
+ await mutateAsync({
409
+ remove: [promotion.id]
410
+ });
411
+ };
412
+ return /* @__PURE__ */ jsx4(
413
+ ActionMenu,
414
+ {
415
+ groups: [
416
+ {
417
+ actions: [
418
+ {
419
+ icon: /* @__PURE__ */ jsx4(PencilSquare4, {}),
420
+ label: t("actions.edit"),
421
+ to: `/promotions/${promotion.id}/edit`
422
+ }
423
+ ]
424
+ },
425
+ {
426
+ actions: [
427
+ {
428
+ icon: /* @__PURE__ */ jsx4(Trash2, {}),
429
+ label: t("actions.remove"),
430
+ onClick: handleRemove
431
+ }
432
+ ]
433
+ }
434
+ ],
435
+ "data-testid": `campaign-promotion-section-action-menu-${promotion.id}`
436
+ }
437
+ );
438
+ };
439
+ var columnHelper = createColumnHelper();
440
+ var useColumns = () => {
441
+ const columns = usePromotionTableColumns();
442
+ return useMemo(
443
+ () => [
444
+ columnHelper.display({
445
+ id: "select",
446
+ header: ({ table }) => {
447
+ return /* @__PURE__ */ jsx4(
448
+ Checkbox,
449
+ {
450
+ checked: table.getIsSomePageRowsSelected() ? "indeterminate" : table.getIsAllPageRowsSelected(),
451
+ onCheckedChange: (value) => table.toggleAllPageRowsSelected(!!value),
452
+ "data-testid": "campaign-promotion-section-select-all-checkbox"
453
+ }
454
+ );
455
+ },
456
+ cell: ({ row }) => {
457
+ return /* @__PURE__ */ jsx4(
458
+ Checkbox,
459
+ {
460
+ checked: row.getIsSelected(),
461
+ onCheckedChange: (value) => row.toggleSelected(!!value),
462
+ onClick: (e) => {
463
+ e.stopPropagation();
464
+ },
465
+ "data-testid": `campaign-promotion-section-select-checkbox-${row.original.id}`
466
+ }
467
+ );
468
+ }
469
+ }),
470
+ ...columns,
471
+ columnHelper.display({
472
+ id: "actions",
473
+ cell: ({ row, table }) => {
474
+ const { campaignId } = table.options.meta;
475
+ return /* @__PURE__ */ jsx4(
476
+ PromotionActions,
477
+ {
478
+ promotion: row.original,
479
+ campaignId
480
+ }
481
+ );
482
+ }
483
+ })
484
+ ],
485
+ [columns]
486
+ );
487
+ };
488
+
489
+ // src/pages/campaigns/campaign-detail/components/campaign-spend/campaign-spend.tsx
490
+ import { CurrencyDollar } from "@medusajs/icons";
491
+ import { Container as Container5, Heading as Heading5, Text as Text3 } from "@medusajs/ui";
492
+ import { Trans as Trans2, useTranslation as useTranslation5 } from "react-i18next";
493
+ import { jsx as jsx5, jsxs as jsxs5 } from "react/jsx-runtime";
494
+ var CampaignSpend = ({ campaign }) => {
495
+ const { t } = useTranslation5();
496
+ return /* @__PURE__ */ jsxs5(Container5, { className: "flex flex-col gap-y-4 px-6 py-4", "data-testid": "campaign-spend-container", children: [
497
+ /* @__PURE__ */ jsxs5("div", { className: "mb-2 grid grid-cols-[28px_1fr] items-center gap-x-3", "data-testid": "campaign-spend-header", children: [
498
+ /* @__PURE__ */ jsx5("div", { className: "bg-ui-bg-base shadow-borders-base flex size-7 items-center justify-center rounded-md", "data-testid": "campaign-spend-icon-container", children: /* @__PURE__ */ jsx5("div", { className: "bg-ui-bg-component flex size-6 items-center justify-center rounded-[4px]", children: /* @__PURE__ */ jsx5(CurrencyDollar, { className: "text-ui-fg-subtle" }) }) }),
499
+ /* @__PURE__ */ jsx5(Heading5, { level: "h3", className: "text-ui-fg-subtle font-normal", "data-testid": "campaign-spend-heading", children: campaign.budget?.type === "use_by_attribute" ? t("campaigns.fields.totalUsedByAttribute") : campaign.budget?.type === "spend" ? t("campaigns.fields.total_spend") : t("campaigns.fields.total_used") })
500
+ ] }),
501
+ /* @__PURE__ */ jsx5("div", { "data-testid": "campaign-spend-value", children: /* @__PURE__ */ jsx5(
502
+ Text3,
503
+ {
504
+ className: "text-ui-fg-subtle border-ui-border-strong border-l-4 pl-3",
505
+ size: "small",
506
+ leading: "compact",
507
+ "data-testid": "campaign-spend-value-text",
508
+ children: /* @__PURE__ */ jsx5(
509
+ Trans2,
510
+ {
511
+ i18nKey: "campaigns.totalSpend",
512
+ values: {
513
+ amount: campaign?.budget?.used || 0,
514
+ currency: campaign?.budget?.type === "spend" ? campaign?.budget?.currency_code : ""
515
+ },
516
+ components: [
517
+ /* @__PURE__ */ jsx5(
518
+ "span",
519
+ {
520
+ className: "text-ui-fg-base txt-compact-medium-plus text-lg",
521
+ "data-testid": "campaign-spend-value-amount"
522
+ },
523
+ "amount"
524
+ ),
525
+ /* @__PURE__ */ jsx5(
526
+ "span",
527
+ {
528
+ className: "text-ui-fg-base txt-compact-medium-plus text-lg",
529
+ "data-testid": "campaign-spend-value-currency"
530
+ },
531
+ "currency"
532
+ )
533
+ ]
534
+ }
535
+ )
536
+ }
537
+ ) })
538
+ ] });
539
+ };
540
+
541
+ // src/pages/campaigns/campaign-detail/constants.ts
542
+ var CAMPAIGN_DETAIL_FIELDS = "+promotions.id";
543
+
544
+ // src/pages/campaigns/campaign-detail/campaign-detail.tsx
545
+ import { jsx as jsx6, jsxs as jsxs6 } from "react/jsx-runtime";
546
+ var Root = ({ children }) => {
547
+ const initialData = useLoaderData();
548
+ const { id } = useParams();
549
+ const { campaign, isLoading, isError, error } = useCampaign(
550
+ id,
551
+ { fields: CAMPAIGN_DETAIL_FIELDS },
552
+ { initialData }
553
+ );
554
+ if (isLoading || !campaign) {
555
+ return /* @__PURE__ */ jsx6(
556
+ TwoColumnPageSkeleton,
557
+ {
558
+ mainSections: 2,
559
+ sidebarSections: 3,
560
+ showJSON: true,
561
+ showMetadata: true
562
+ }
563
+ );
564
+ }
565
+ if (isError) {
566
+ throw error;
567
+ }
568
+ return Children.count(children) > 0 ? /* @__PURE__ */ jsx6(TwoColumnPage, { hasOutlet: true, showJSON: true, showMetadata: true, data: campaign, "data-testid": "campaign-detail-page", children }) : /* @__PURE__ */ jsxs6(TwoColumnPage, { hasOutlet: true, showJSON: true, showMetadata: true, data: campaign, "data-testid": "campaign-detail-page", children: [
569
+ /* @__PURE__ */ jsxs6(TwoColumnPage.Main, { children: [
570
+ /* @__PURE__ */ jsx6(CampaignGeneralSection, { campaign }),
571
+ /* @__PURE__ */ jsx6(CampaignPromotionSection, { campaign })
572
+ ] }),
573
+ /* @__PURE__ */ jsxs6(TwoColumnPage.Sidebar, { children: [
574
+ /* @__PURE__ */ jsx6(CampaignConfigurationSection, { campaign }),
575
+ /* @__PURE__ */ jsx6(CampaignSpend, { campaign }),
576
+ /* @__PURE__ */ jsx6(CampaignBudget, { campaign })
577
+ ] })
578
+ ] });
579
+ };
580
+ var CampaignDetailPage = Object.assign(Root, {
581
+ Main: TwoColumnPage.Main,
582
+ Sidebar: TwoColumnPage.Sidebar,
583
+ MainGeneralSection: CampaignGeneralSection,
584
+ MainPromotionSection: CampaignPromotionSection,
585
+ SidebarConfigurationSection: CampaignConfigurationSection,
586
+ SidebarSpendSection: CampaignSpend,
587
+ SidebarBudgetSection: CampaignBudget
588
+ });
589
+
590
+ export {
591
+ CAMPAIGN_DETAIL_FIELDS,
592
+ CampaignDetailPage
593
+ };
@@ -0,0 +1,98 @@
1
+ import {
2
+ productsQueryKeys
3
+ } from "./chunk-WBNGBRBK.js";
4
+ import {
5
+ queryClient
6
+ } from "./chunk-RHKRREUU.js";
7
+ import {
8
+ queryKeysFactory
9
+ } from "./chunk-ZA2KFUFR.js";
10
+ import {
11
+ sdk
12
+ } from "./chunk-LXZXXOJ3.js";
13
+
14
+ // src/hooks/api/collections.tsx
15
+ import {
16
+ useMutation,
17
+ useQuery
18
+ } from "@tanstack/react-query";
19
+ var COLLECTION_QUERY_KEY = "collections";
20
+ var collectionsQueryKeys = queryKeysFactory(COLLECTION_QUERY_KEY);
21
+ var useCollection = (id, query, options) => {
22
+ const { data, ...rest } = useQuery({
23
+ queryKey: collectionsQueryKeys.detail(id),
24
+ queryFn: () => sdk.admin.collections.$id.query({ $id: id, ...query }),
25
+ ...options
26
+ });
27
+ return { ...data, ...rest };
28
+ };
29
+ var useCollections = (query, options) => {
30
+ const { data, ...rest } = useQuery({
31
+ queryKey: collectionsQueryKeys.list(query),
32
+ queryFn: () => sdk.admin.collections.query({ ...query }),
33
+ ...options
34
+ });
35
+ return { ...data, ...rest };
36
+ };
37
+ var useUpdateCollection = (id, options) => {
38
+ return useMutation({
39
+ mutationFn: (payload) => sdk.admin.collections.$id.mutate({ $id: id, ...payload }),
40
+ onSuccess: (data, variables, context) => {
41
+ queryClient.invalidateQueries({ queryKey: collectionsQueryKeys.lists() });
42
+ queryClient.invalidateQueries({
43
+ queryKey: collectionsQueryKeys.detail(id)
44
+ });
45
+ options?.onSuccess?.(data, variables, context);
46
+ },
47
+ ...options
48
+ });
49
+ };
50
+ var useUpdateCollectionProducts = (id, options) => {
51
+ return useMutation({
52
+ mutationFn: (payload) => sdk.admin.collections.$id.products.mutate({ $id: id, ...payload }),
53
+ onSuccess: (data, variables, context) => {
54
+ queryClient.invalidateQueries({ queryKey: collectionsQueryKeys.lists() });
55
+ queryClient.invalidateQueries({
56
+ queryKey: collectionsQueryKeys.detail(id)
57
+ });
58
+ queryClient.invalidateQueries({
59
+ queryKey: productsQueryKeys.lists()
60
+ });
61
+ options?.onSuccess?.(data, variables, context);
62
+ },
63
+ ...options
64
+ });
65
+ };
66
+ var useCreateCollection = (options) => {
67
+ return useMutation({
68
+ mutationFn: (payload) => sdk.admin.collections.mutate(payload),
69
+ onSuccess: (data, variables, context) => {
70
+ queryClient.invalidateQueries({ queryKey: collectionsQueryKeys.lists() });
71
+ options?.onSuccess?.(data, variables, context);
72
+ },
73
+ ...options
74
+ });
75
+ };
76
+ var useDeleteCollection = (id, options) => {
77
+ return useMutation({
78
+ mutationFn: () => sdk.admin.collections.$id.delete({ $id: id }),
79
+ onSuccess: (data, variables, context) => {
80
+ queryClient.invalidateQueries({ queryKey: collectionsQueryKeys.lists() });
81
+ queryClient.invalidateQueries({
82
+ queryKey: collectionsQueryKeys.detail(id)
83
+ });
84
+ options?.onSuccess?.(data, variables, context);
85
+ },
86
+ ...options
87
+ });
88
+ };
89
+
90
+ export {
91
+ collectionsQueryKeys,
92
+ useCollection,
93
+ useCollections,
94
+ useUpdateCollection,
95
+ useUpdateCollectionProducts,
96
+ useCreateCollection,
97
+ useDeleteCollection
98
+ };