@medusajs/dashboard 3.0.0-preview-20250211091350 → 3.0.0-preview-20250406180144
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.
- package/dist/{add-campaign-promotions-YQ6JJK6I.mjs → add-campaign-promotions-EYK2OY7B.mjs} +19 -18
- package/dist/{adjust-inventory-42AT6TIZ.mjs → adjust-inventory-WYNH75F7.mjs} +10 -9
- package/dist/{api-key-management-create-FCTZ6A46.mjs → api-key-management-create-HWBQGG6O.mjs} +10 -9
- package/dist/{api-key-management-detail-V6UELD25.mjs → api-key-management-detail-2TXLKXOT.mjs} +42 -44
- package/dist/{api-key-management-edit-WTS63YJS.mjs → api-key-management-edit-UX47FHWV.mjs} +11 -10
- package/dist/{api-key-management-list-MKVE46ZE.mjs → api-key-management-list-DGPEFCW2.mjs} +17 -19
- package/dist/{api-key-management-sales-channels-SHHZXVPP.mjs → api-key-management-sales-channels-SYEJXQLU.mjs} +19 -18
- package/dist/app.css +44 -30
- package/dist/app.js +64876 -57524
- package/dist/app.mjs +56 -4597
- package/dist/{campaign-budget-edit-7MSDQ3MH.mjs → campaign-budget-edit-57NSOYJ3.mjs} +9 -8
- package/dist/{campaign-configuration-XITAHVHN.mjs → campaign-configuration-QV3OHWBZ.mjs} +9 -8
- package/dist/{campaign-create-WKVDJFQC.mjs → campaign-create-NYJ4HILG.mjs} +8 -7
- package/dist/{campaign-detail-PGM2SOEA.mjs → campaign-detail-BMKKY4FI.mjs} +43 -45
- package/dist/{campaign-edit-NRN4EBJC.mjs → campaign-edit-3D5WFWCT.mjs} +9 -8
- package/dist/{campaign-list-6TW2SO7C.mjs → campaign-list-OADDBYVB.mjs} +17 -19
- package/dist/{categories-metadata-D3EM5VK2.mjs → categories-metadata-TE7B2OJY.mjs} +35 -35
- package/dist/{category-create-ULKTNF7N.mjs → category-create-NVRG7B6E.mjs} +10 -9
- package/dist/{category-detail-Z6GWCJUW.mjs → category-detail-MTVNR43M.mjs} +44 -46
- package/dist/{category-edit-HTC6237J.mjs → category-edit-JBZQKNL7.mjs} +10 -9
- package/dist/{category-list-6WTV4T7D.mjs → category-list-2XIIEFBU.mjs} +16 -18
- package/dist/{category-organize-OPDZY4YR.mjs → category-organize-HUXXVJAB.mjs} +7 -6
- package/dist/{category-products-ND7PSI4Q.mjs → category-products-F3I4B7TM.mjs} +44 -43
- package/dist/{chunk-NRUKBT5S.mjs → chunk-2MPQMCLO.mjs} +4 -4
- package/dist/{chunk-ZYBB636P.mjs → chunk-2VTICXJR.mjs} +1 -1
- package/dist/{chunk-IPEN5VX6.mjs → chunk-2WQFRVK5.mjs} +3 -3
- package/dist/{chunk-ZMMQPAR2.mjs → chunk-2ZKVRTBW.mjs} +1 -1
- package/dist/{chunk-QDC5CTTV.mjs → chunk-32IQRUVY.mjs} +1 -1
- package/dist/{chunk-YXEAWUSX.mjs → chunk-3KLERXD7.mjs} +15 -1
- package/dist/{chunk-NDQ77BA4.mjs → chunk-3OHH43G6.mjs} +2 -2
- package/dist/{chunk-GT4RPCDE.mjs → chunk-4GJJIXM6.mjs} +2 -2
- package/dist/{chunk-EI45S6ZK.mjs → chunk-4HLCNNIC.mjs} +1 -1
- package/dist/{chunk-5ZZZZK7A.mjs → chunk-6I62UDJA.mjs} +4 -1
- package/dist/{chunk-AODKPQIG.mjs → chunk-6LA2RGO4.mjs} +3 -3
- package/dist/{chunk-77TK23EH.mjs → chunk-7I5DQGWY.mjs} +1 -0
- package/dist/{chunk-YJPZZD5Z.mjs → chunk-7MM5L2ZM.mjs} +1 -1
- package/dist/{chunk-HVUHNRLX.mjs → chunk-A2UMBW3V.mjs} +1 -1
- package/dist/{chunk-QX7ANQDG.mjs → chunk-AL4WDQTN.mjs} +23 -17
- package/dist/{chunk-S4HBRQEC.mjs → chunk-B4GODIOW.mjs} +1 -1
- package/dist/{chunk-5EJJE3NE.mjs → chunk-BC3M3N6P.mjs} +2 -2
- package/dist/{chunk-OCNMY23F.mjs → chunk-C5LYZZZ5.mjs} +1 -1
- package/dist/chunk-C5P5PL3E.mjs +31 -0
- package/dist/chunk-CDQY5XPE.mjs +5241 -0
- package/dist/{chunk-JXBMQ4SZ.mjs → chunk-CF64SRBE.mjs} +6 -6
- package/dist/{chunk-QE3BG56P.mjs → chunk-CLRTJ6DI.mjs} +2 -2
- package/dist/{chunk-CBJWO6K6.mjs → chunk-D7H6ZNK4.mjs} +12 -5
- package/dist/{chunk-LM3FXIYT.mjs → chunk-DDV2HJEV.mjs} +2 -2
- package/dist/chunk-DEQUVHHE.mjs +17 -0
- package/dist/{chunk-EMNHBSFU.mjs → chunk-DFA6WGYO.mjs} +34 -0
- package/dist/{chunk-S5X4EFD4.mjs → chunk-DRAV7IQC.mjs} +6 -6
- package/dist/{chunk-AFDSZWCS.mjs → chunk-DXOEDXLQ.mjs} +5 -5
- package/dist/{chunk-MAWEQJDF.mjs → chunk-EAX5QFXH.mjs} +1 -1
- package/dist/{chunk-WX2SMNCD.mjs → chunk-EMIHDNB7.mjs} +4 -3
- package/dist/{chunk-GVRV2SOJ.mjs → chunk-ENV6YVOM.mjs} +3 -3
- package/dist/{chunk-N6PBCMOV.mjs → chunk-EYMDU2JD.mjs} +9 -9
- package/dist/{chunk-6SDR2EUC.mjs → chunk-F6IJV2I2.mjs} +2 -2
- package/dist/{chunk-S3MWIWV4.mjs → chunk-F6PXCY3N.mjs} +34 -1
- package/dist/{chunk-BOR5HF2M.mjs → chunk-FP5F2XCU.mjs} +2 -2
- package/dist/{chunk-KLXXECPX.mjs → chunk-FVC7M755.mjs} +2 -2
- package/dist/{chunk-MRJ6KQAL.mjs → chunk-FVK4ZYYM.mjs} +2 -2
- package/dist/{chunk-ZVVQK46Y.mjs → chunk-FZANNV6G.mjs} +1 -1
- package/dist/{chunk-SWYL3QGB.mjs → chunk-G2H6MAK7.mjs} +1 -14
- package/dist/{chunk-RAKBTSZ7.mjs → chunk-GIQRSI5I.mjs} +2 -2
- package/dist/{chunk-BF3VCHXD.mjs → chunk-GRT22PE5.mjs} +2 -2
- package/dist/{chunk-IC72XMDJ.mjs → chunk-GXXQ33F7.mjs} +1 -1
- package/dist/{chunk-W6N53UNG.mjs → chunk-GZBFGV7Y.mjs} +14 -1
- package/dist/{chunk-HP4JZCP4.mjs → chunk-HDSWPQLG.mjs} +11 -12
- package/dist/{chunk-QWU4TCQ7.mjs → chunk-HGKRB5AS.mjs} +8 -8
- package/dist/{chunk-ODVOHYAS.mjs → chunk-HGUTDEW5.mjs} +26 -28
- package/dist/{chunk-QFAUOMG6.mjs → chunk-HUGE7T5V.mjs} +3 -3
- package/dist/{chunk-A2MEYV4D.mjs → chunk-ICR3D7SB.mjs} +2 -2
- package/dist/{chunk-DJPQV344.mjs → chunk-IVB3LUGL.mjs} +1 -1
- package/dist/{chunk-TKREK46F.mjs → chunk-IXQKZGD4.mjs} +1 -1
- package/dist/{chunk-3OJ4LCJL.mjs → chunk-KHN4RXLS.mjs} +1 -1
- package/dist/{chunk-TXPNGFWJ.mjs → chunk-KOSCMAIC.mjs} +1 -1
- package/dist/{chunk-VJRTPNEA.mjs → chunk-LDJKJLBJ.mjs} +1 -1
- package/dist/{chunk-CJ3L6MQZ.mjs → chunk-LIWT6YHM.mjs} +1 -1
- package/dist/{chunk-FX3ZJWB6.mjs → chunk-LTC6LGS4.mjs} +1 -1
- package/dist/{chunk-IQ2LC4FN.mjs → chunk-NGEWNLV7.mjs} +41 -54
- package/dist/{chunk-FPVDKY3X.mjs → chunk-NLC6AFB4.mjs} +23 -24
- package/dist/{chunk-WAYDNCEG.mjs → chunk-OBQI23QM.mjs} +1 -16
- package/dist/{chunk-4M3ZY7KA.mjs → chunk-PCFUZKDS.mjs} +3 -1
- package/dist/{chunk-JKKJMCX3.mjs → chunk-PEGJVODH.mjs} +1 -1
- package/dist/{chunk-JGKUKVRC.mjs → chunk-PFTU26LC.mjs} +1 -1
- package/dist/{chunk-O3US4QMC.mjs → chunk-PIR2H25N.mjs} +1 -1
- package/dist/{chunk-UQUJ5W2Q.mjs → chunk-PNU5HPGY.mjs} +2 -2
- package/dist/{chunk-B4FQDBC3.mjs → chunk-PW2G3HGL.mjs} +9 -10
- package/dist/{chunk-HYULYW73.mjs → chunk-QL4XKIVL.mjs} +1 -1
- package/dist/{chunk-SFPKA7H3.mjs → chunk-QTCZFYFH.mjs} +1 -1
- package/dist/{chunk-SY6HAFQV.mjs → chunk-QZ6PT4QV.mjs} +2 -2
- package/dist/{chunk-NAC6TXKN.mjs → chunk-RLY2SL5E.mjs} +1 -1
- package/dist/{chunk-IUIZA5UF.mjs → chunk-RWU2ZKWZ.mjs} +3 -3
- package/dist/{chunk-CLOHNZKZ.mjs → chunk-RZD5DU5K.mjs} +2 -2
- package/dist/{chunk-6FJ2PJHE.mjs → chunk-S22NYSST.mjs} +7 -4
- package/dist/{chunk-6XTDCUWJ.mjs → chunk-SKR2YX52.mjs} +2 -2
- package/dist/{chunk-UGE5SYTC.mjs → chunk-TDDYKNA2.mjs} +4 -4
- package/dist/{chunk-F7H5DLUU.mjs → chunk-TP7N4YBP.mjs} +1 -1
- package/dist/{chunk-5OOAHPXU.mjs → chunk-UAZEQNCO.mjs} +2 -2
- package/dist/{chunk-UT3IS7J3.mjs → chunk-URDECN5D.mjs} +43597 -37277
- package/dist/{chunk-23LLRBGF.mjs → chunk-V2LANK5S.mjs} +2 -2
- package/dist/{chunk-AS54JDUL.mjs → chunk-W7KW2VOI.mjs} +27 -27
- package/dist/{chunk-BKWQ2FHJ.mjs → chunk-WL7NJCWV.mjs} +1 -1
- package/dist/{chunk-JHNHXN7U.mjs → chunk-X2Y4KNQI.mjs} +2 -2
- package/dist/{chunk-YYGNAECV.mjs → chunk-X66KDK4I.mjs} +1 -1
- package/dist/{chunk-NOL65OUL.mjs → chunk-XM6J2DWV.mjs} +1 -1
- package/dist/{chunk-6CNRNROJ.mjs → chunk-YIZSVS2R.mjs} +6 -4
- package/dist/{chunk-JJ3UWAUO.mjs → chunk-YS65UGPC.mjs} +3 -3
- package/dist/{chunk-AYRG2MQL.mjs → chunk-ZCO6EK4W.mjs} +24 -7
- package/dist/{chunk-6TVXQXDC.mjs → chunk-ZIHOMEGZ.mjs} +2 -2
- package/dist/{chunk-WHZIEWSQ.mjs → chunk-ZJ3OFMHB.mjs} +2 -2
- package/dist/{collection-add-products-KGBBZFCE.mjs → collection-add-products-BAX6JOLN.mjs} +44 -43
- package/dist/{collection-create-NLRAIKZP.mjs → collection-create-PXO6DJS3.mjs} +9 -8
- package/dist/{collection-detail-AZZ2NT4L.mjs → collection-detail-YE42DHWS.mjs} +43 -45
- package/dist/{collection-edit-WO54XZLV.mjs → collection-edit-D7OGD4MC.mjs} +10 -9
- package/dist/{collection-list-2AFD2BXW.mjs → collection-list-KTS4LVM2.mjs} +54 -58
- package/dist/collection-metadata-244B7424.mjs +69 -0
- package/dist/{customer-create-AJYD5CIA.mjs → customer-create-TKKVS4LF.mjs} +8 -7
- package/dist/customer-create-address-P4YQFUI5.mjs +291 -0
- package/dist/{customer-detail-MWT2NNQK.mjs → customer-detail-HJPJLMMO.mjs} +246 -129
- package/dist/{customer-edit-566R4FAT.mjs → customer-edit-I4K3LK66.mjs} +12 -11
- package/dist/{customer-group-add-customers-6IANRPQ6.mjs → customer-group-add-customers-U3ENH6JX.mjs} +19 -18
- package/dist/{customer-group-create-XTXMFKFX.mjs → customer-group-create-5EILGGLH.mjs} +8 -7
- package/dist/{customer-group-detail-ULS2F7OQ.mjs → customer-group-detail-JRPGZBVS.mjs} +44 -46
- package/dist/{customer-group-edit-KVEBH5N2.mjs → customer-group-edit-NBVNSBMX.mjs} +9 -8
- package/dist/{customer-group-list-LZSSOYBR.mjs → customer-group-list-643IECH3.mjs} +38 -40
- package/dist/{customer-group-metadata-MTAZJYBH.mjs → customer-group-metadata-IRTI56TA.mjs} +7 -7
- package/dist/{customer-list-JAKCVGFG.mjs → customer-list-544N5LA5.mjs} +18 -20
- package/dist/{customer-metadata-RO5DVFXZ.mjs → customer-metadata-TPIFKFIQ.mjs} +7 -7
- package/dist/{customers-add-customer-group-6TEWBPIE.mjs → customers-add-customer-group-CTBHD33Y.mjs} +43 -42
- package/dist/{edit-inventory-item-N6JQUIYO.mjs → edit-inventory-item-KQUKSOGO.mjs} +6 -5
- package/dist/{edit-inventory-item-attributes-D5SSHDVI.mjs → edit-inventory-item-attributes-I55BRBWC.mjs} +23 -6
- package/dist/{edit-reservation-E6JRXRAL.mjs → edit-reservation-GEJHV6OI.mjs} +13 -12
- package/dist/{edit-rules-6XNJL6AE.mjs → edit-rules-7MMNZKEQ.mjs} +15 -13
- package/dist/index.d.ts +4 -4
- package/dist/{inventory-create-KYURNZS6.mjs → inventory-create-NZ67QMNB.mjs} +38 -36
- package/dist/{inventory-detail-S56TNEU5.mjs → inventory-detail-GO2QWKV7.mjs} +47 -48
- package/dist/{inventory-list-P2ZZH6EN.mjs → inventory-list-X7BACFKE.mjs} +15 -17
- package/dist/{inventory-metadata-IDMV4XVV.mjs → inventory-metadata-AG5IVFBR.mjs} +33 -33
- package/dist/{inventory-stock-4R73ZT3V.mjs → inventory-stock-XZWLARFE.mjs} +34 -33
- package/dist/{invite-W2J3H5L6.mjs → invite-3KXZ7ZZI.mjs} +9 -8
- package/dist/{location-create-3FROOIXF.mjs → location-create-G3CYBYOF.mjs} +9 -8
- package/dist/{location-detail-IEGCZTAI.mjs → location-detail-GHY3DXRP.mjs} +48 -42
- package/dist/{location-edit-AQUHRPQ6.mjs → location-edit-IMBG32Z4.mjs} +10 -9
- package/dist/{location-fulfillment-providers-37FS5TYU.mjs → location-fulfillment-providers-IFPDR2YN.mjs} +44 -43
- package/dist/{location-list-ITU5AOC7.mjs → location-list-5UJ6CSA7.mjs} +13 -15
- package/dist/{location-sales-channels-TSOI2JYI.mjs → location-sales-channels-HERXGXG2.mjs} +18 -17
- package/dist/{location-service-zone-create-2JT4IKFH.mjs → location-service-zone-create-DXKD3F26.mjs} +22 -24
- package/dist/{location-service-zone-edit-LKYVVXDR.mjs → location-service-zone-edit-W3G7XOC7.mjs} +13 -15
- package/dist/{location-service-zone-manage-areas-PT4R2I3K.mjs → location-service-zone-manage-areas-IFT2GCAD.mjs} +21 -20
- package/dist/{location-service-zone-shipping-option-create-KXZIUIZQ.mjs → location-service-zone-shipping-option-create-7KOH5VVW.mjs} +89 -57
- package/dist/{location-service-zone-shipping-option-edit-SC4HD6LU.mjs → location-service-zone-shipping-option-edit-ODUEKZON.mjs} +25 -16
- package/dist/{location-service-zone-shipping-option-pricing-FOET7XJC.mjs → location-service-zone-shipping-option-pricing-SKUSE5YE.mjs} +20 -19
- package/dist/{login-TN5VDDLW.mjs → login-OYY6LIPR.mjs} +37 -37
- package/dist/{manage-locations-PSPBWN5X.mjs → manage-locations-E7YAZVH2.mjs} +7 -6
- package/dist/{order-allocate-items-6HPR2T5L.mjs → order-allocate-items-TMQ5M7TG.mjs} +16 -15
- package/dist/{order-create-claim-FFWV762A.mjs → order-create-claim-AHFF4YNW.mjs} +95 -82
- package/dist/{order-create-edit-LS3ARJDM.mjs → order-create-edit-NLXEFK77.mjs} +52 -51
- package/dist/{order-create-exchange-3OVNNNW3.mjs → order-create-exchange-33STYVYU.mjs} +96 -83
- package/dist/{order-create-fulfillment-K5DFAWHB.mjs → order-create-fulfillment-62OZHL3L.mjs} +53 -51
- package/dist/{order-create-refund-2D46DG3T.mjs → order-create-refund-FXUURAS7.mjs} +60 -64
- package/dist/{order-create-return-PJ3LFXDG.mjs → order-create-return-PONHUZVN.mjs} +41 -37
- package/dist/{order-create-shipment-CCH6V3U6.mjs → order-create-shipment-REC24C7Y.mjs} +35 -34
- package/dist/{order-detail-YYP4INKH.mjs → order-detail-SYXNI7WK.mjs} +72 -85
- package/dist/{order-edit-billing-address-3PYGDUWT.mjs → order-edit-billing-address-XDNORAHG.mjs} +37 -36
- package/dist/{order-edit-email-C5AMYZDN.mjs → order-edit-email-V4DC4GJV.mjs} +36 -35
- package/dist/{order-edit-shipping-address-T6I4D234.mjs → order-edit-shipping-address-NWT5LDKC.mjs} +37 -36
- package/dist/{order-list-IMVPWMTQ.mjs → order-list-X6ETGR3A.mjs} +23 -25
- package/dist/order-metadata-4YNV2NWH.mjs +69 -0
- package/dist/{order-receive-return-2NBMNVBR.mjs → order-receive-return-AXAZNUIB.mjs} +43 -42
- package/dist/{order-request-transfer-U5OYJEI6.mjs → order-request-transfer-OZNQQL3N.mjs} +38 -36
- package/dist/{price-list-configuration-6OHKVV2W.mjs → price-list-configuration-C7QXYPBJ.mjs} +22 -21
- package/dist/{price-list-create-QKTF4G3M.mjs → price-list-create-2VI6JXLQ.mjs} +49 -48
- package/dist/{price-list-detail-G5Y3VVRK.mjs → price-list-detail-2HRWG7KP.mjs} +47 -49
- package/dist/{price-list-edit-OFFEMUHG.mjs → price-list-edit-TMZCXEFR.mjs} +11 -10
- package/dist/{price-list-list-XPNVK6IC.mjs → price-list-list-DDQYCK4O.mjs} +18 -20
- package/dist/{price-list-prices-add-NIFFLI7Y.mjs → price-list-prices-add-IQZO6P4N.mjs} +46 -45
- package/dist/{price-list-prices-edit-KAEE6YLB.mjs → price-list-prices-edit-JUS5FBBN.mjs} +16 -15
- package/dist/{product-attributes-WLWSFTCO.mjs → product-attributes-OT373EPY.mjs} +50 -11
- package/dist/{product-create-P7U26TXX.mjs → product-create-2TKUBQEH.mjs} +77 -72
- package/dist/{product-create-option-ISAGA5KO.mjs → product-create-option-E2GRTBWP.mjs} +6 -5
- package/dist/{product-create-variant-ZQKPGLQQ.mjs → product-create-variant-3B32EC76.mjs} +42 -40
- package/dist/{product-detail-6LXT2IIU.mjs → product-detail-HZBEXKBU.mjs} +105 -66
- package/dist/{product-edit-IDL5IGVQ.mjs → product-edit-V4XTHXKI.mjs} +51 -11
- package/dist/{product-edit-option-6ZGZKU5G.mjs → product-edit-option-RHMF3YKT.mjs} +6 -5
- package/dist/{product-export-JGH4CULP.mjs → product-export-EWO37XJF.mjs} +37 -51
- package/dist/{product-import-YY2EXFLI.mjs → product-import-JCEJKM3F.mjs} +35 -34
- package/dist/{product-list-XOFUYF5S.mjs → product-list-YW3UTPME.mjs} +51 -48
- package/dist/{product-media-RSCMACQU.mjs → product-media-JLPIJRET.mjs} +6 -5
- package/dist/product-metadata-PQQ7XV63.mjs +67 -0
- package/dist/{product-organization-6N7JBWH5.mjs → product-organization-D5AK5F5W.mjs} +53 -14
- package/dist/{product-prices-NPJIYAIK.mjs → product-prices-BBTCM3XR.mjs} +16 -17
- package/dist/{product-sales-channels-MKWZD4NM.mjs → product-sales-channels-7Y3D3C7Q.mjs} +14 -13
- package/dist/{product-shipping-profile-EK6G3NTZ.mjs → product-shipping-profile-3NVF3DW2.mjs} +58 -10
- package/dist/{product-stock-L3FRYPQS.mjs → product-stock-TZS75EG7.mjs} +42 -41
- package/dist/{product-tag-create-CLWQPP7D.mjs → product-tag-create-LE4MZ5BW.mjs} +34 -33
- package/dist/{product-tag-detail-NDZJLI2Q.mjs → product-tag-detail-3EOHF4Z7.mjs} +63 -66
- package/dist/{product-tag-edit-QHHZYHCG.mjs → product-tag-edit-E6WEFNFQ.mjs} +35 -34
- package/dist/{product-tag-list-A73PYQRI.mjs → product-tag-list-RUTJQUCX.mjs} +63 -66
- package/dist/product-type-create-GU5IYXQB.mjs +101 -0
- package/dist/{product-type-detail-AQ5SUXFF.mjs → product-type-detail-3X5ME5WA.mjs} +48 -47
- package/dist/{product-type-edit-5ETUUK7N.mjs → product-type-edit-S53VUBU3.mjs} +9 -8
- package/dist/{product-type-list-TUHBNIIB.mjs → product-type-list-IJI5WEYY.mjs} +22 -21
- package/dist/{product-variant-detail-3XZBP2QJ.mjs → product-variant-detail-UN6GESYO.mjs} +37 -39
- package/dist/{product-variant-edit-7FZ7PQ6U.mjs → product-variant-edit-G6AM27AT.mjs} +36 -34
- package/dist/{product-variant-manage-inventory-items-PRFQHHZD.mjs → product-variant-manage-inventory-items-BKFYUODS.mjs} +9 -7
- package/dist/{product-variant-metadata-PY76KWCU.mjs → product-variant-metadata-2V27ZMDS.mjs} +33 -33
- package/dist/{profile-detail-EYSOSXIU.mjs → profile-detail-YLKHVSGO.mjs} +7 -9
- package/dist/{profile-edit-KZGW3D7V.mjs → profile-edit-EGWJGTXV.mjs} +12 -11
- package/dist/{promotion-add-campaign-YG4T32AU.mjs → promotion-add-campaign-4VNRQF52.mjs} +11 -10
- package/dist/{promotion-create-DUY3VRR7.mjs → promotion-create-PLDWDZMZ.mjs} +17 -15
- package/dist/{promotion-detail-KUVY3KBM.mjs → promotion-detail-BRQXNXUL.mjs} +39 -41
- package/dist/{promotion-edit-details-6BZF724F.mjs → promotion-edit-details-D6M646E6.mjs} +9 -8
- package/dist/{promotion-list-6PKG7DBB.mjs → promotion-list-BSYPXZNW.mjs} +16 -18
- package/dist/{region-add-countries-5VS6OSZW.mjs → region-add-countries-D6N7ISOZ.mjs} +17 -16
- package/dist/{region-create-3UVS7VHZ.mjs → region-create-EOZTZIP5.mjs} +28 -27
- package/dist/{region-detail-SGGN2NPK.mjs → region-detail-HL4UQGTJ.mjs} +13 -15
- package/dist/{region-edit-GPMEIHUM.mjs → region-edit-PXIMLBFB.mjs} +19 -18
- package/dist/{region-list-ETVUX5R3.mjs → region-list-A7Z5XJUW.mjs} +17 -19
- package/dist/{region-metadata-J4QDEISD.mjs → region-metadata-4S6FEUXA.mjs} +35 -35
- package/dist/{reservation-create-O3ALBX5F.mjs → reservation-create-INUIVD55.mjs} +13 -12
- package/dist/{reservation-detail-X46PRDBS.mjs → reservation-detail-I4DM7TQ4.mjs} +32 -34
- package/dist/{reservation-list-HF5TGB2X.mjs → reservation-list-NID2SFUF.mjs} +17 -19
- package/dist/{reservation-metadata-GBTOI33G.mjs → reservation-metadata-5ZABNMJP.mjs} +35 -35
- package/dist/{reset-password-CXIAZ6KT.mjs → reset-password-XTYYQVM4.mjs} +7 -6
- package/dist/{return-reason-create-7DOM36PA.mjs → return-reason-create-YANSYS43.mjs} +8 -7
- package/dist/{return-reason-edit-U2DRNMRP.mjs → return-reason-edit-4FSM4H3M.mjs} +9 -8
- package/dist/{return-reason-list-R2B2M5F3.mjs → return-reason-list-PHUB3SD5.mjs} +37 -40
- package/dist/{sales-channel-add-products-XX6XXL67.mjs → sales-channel-add-products-OJR2UYTQ.mjs} +44 -43
- package/dist/{sales-channel-create-5NVNETJO.mjs → sales-channel-create-HVZPII6E.mjs} +9 -8
- package/dist/{sales-channel-detail-A5LWMTIW.mjs → sales-channel-detail-ZTX3GVHN.mjs} +43 -45
- package/dist/{sales-channel-edit-ZHU2WG4C.mjs → sales-channel-edit-BK7O3ZFI.mjs} +10 -9
- package/dist/{sales-channel-list-WIDZSTDW.mjs → sales-channel-list-HOPPCB5U.mjs} +38 -40
- package/dist/{sales-channel-metadata-EU2OLGZU.mjs → sales-channel-metadata-UH4QYASI.mjs} +35 -35
- package/dist/{shipping-profile-create-A5NGBX2U.mjs → shipping-profile-create-PBDONCGJ.mjs} +8 -7
- package/dist/{shipping-profile-detail-E2ZVCQB5.mjs → shipping-profile-detail-EORJZ7NX.mjs} +6 -8
- package/dist/{shipping-profile-metadata-B3XD5644.mjs → shipping-profile-metadata-UB73OBPJ.mjs} +33 -33
- package/dist/{shipping-profiles-list-QF6YVBB6.mjs → shipping-profiles-list-WRKLRQR7.mjs} +14 -16
- package/dist/{store-add-currencies-SSEOM5WZ.mjs → store-add-currencies-CPWMKSFB.mjs} +19 -18
- package/dist/{store-detail-RK42OQIJ.mjs → store-detail-WLC4RF2Y.mjs} +136 -138
- package/dist/{store-edit-VP2ZK6DB.mjs → store-edit-JNSWFWIG.mjs} +12 -10
- package/dist/store-metadata-GLAZZPP6.mjs +68 -0
- package/dist/{tax-region-create-OLUBBICW.mjs → tax-region-create-EW5USMNY.mjs} +35 -34
- package/dist/{tax-region-detail-MUS2Q44R.mjs → tax-region-detail-MVSV7BWW.mjs} +45 -47
- package/dist/{tax-region-list-OAH2FFY2.mjs → tax-region-list-FNVPRMTQ.mjs} +13 -15
- package/dist/{tax-region-province-create-TAQQLOAS.mjs → tax-region-province-create-LQ5SPSXW.mjs} +10 -9
- package/dist/{tax-region-province-detail-WENPM2PD.mjs → tax-region-province-detail-4G2WUUBB.mjs} +40 -42
- package/dist/{tax-region-tax-override-create-VANMBRAP.mjs → tax-region-tax-override-create-TMMFKM7B.mjs} +67 -67
- package/dist/{tax-region-tax-override-edit-IY5SXK2S.mjs → tax-region-tax-override-edit-R2G2M4PQ.mjs} +72 -72
- package/dist/{tax-region-tax-rate-create-GU7QEL3V.mjs → tax-region-tax-rate-create-7GNLSDJ2.mjs} +12 -11
- package/dist/{tax-region-tax-rate-edit-JZO6CSAX.mjs → tax-region-tax-rate-edit-6U2BQMIE.mjs} +11 -10
- package/dist/{user-detail-I53MPAAS.mjs → user-detail-X2Z2IYNI.mjs} +7 -9
- package/dist/{user-edit-5OL3L6IX.mjs → user-edit-HFSJM4QT.mjs} +9 -8
- package/dist/{user-invite-HKO52FHN.mjs → user-invite-5S2HHL2P.mjs} +23 -22
- package/dist/{user-list-6DWTXQUP.mjs → user-list-LI27NZLQ.mjs} +12 -14
- package/dist/user-metadata-GJ6PIXLU.mjs +70 -0
- package/dist/{workflow-execution-detail-ERZLGDON.mjs → workflow-execution-detail-D26MDYFC.mjs} +32 -34
- package/dist/{workflow-execution-list-VEHTWIZD.mjs → workflow-execution-list-4QDXZ3N5.mjs} +12 -14
- package/package.json +11 -12
- package/src/app.tsx +19 -14
- package/src/components/common/empty-table-content/empty-table-content.tsx +5 -2
- package/src/components/common/infinite-list/infinite-list.tsx +18 -8
- package/src/components/common/listicle/index.ts +1 -0
- package/src/components/common/listicle/listicle.tsx +34 -0
- package/src/components/common/sidebar-link/sidebar-link.tsx +2 -2
- package/src/components/common/switch-box/switch-box.tsx +15 -11
- package/src/components/data-table/data-table.tsx +19 -17
- package/src/components/forms/metadata-form/metadata-form.tsx +19 -8
- package/src/components/inputs/combobox/combobox.tsx +15 -1
- package/src/components/layout/main-layout/main-layout.tsx +3 -3
- package/src/components/layout/nav-item/nav-item.tsx +1 -1
- package/src/components/layout/notifications/notifications.tsx +1 -0
- package/src/components/layout/settings-layout/settings-layout.tsx +2 -3
- package/src/components/modals/hooks/use-state-aware-to.tsx +26 -0
- package/src/components/modals/route-drawer/route-drawer.tsx +7 -4
- package/src/components/modals/route-focus-modal/route-focus-modal.tsx +7 -4
- package/src/components/modals/route-modal-provider/route-provider.tsx +2 -2
- package/src/components/table/table-cells/common/date-cell/date-cell.tsx +10 -12
- package/src/{extensions/dashboard-extension-manager/dashboard-extension-manager.tsx → dashboard-app/dashboard-app.tsx} +168 -58
- package/src/{extensions → dashboard-app}/forms/form-extension-zone/form-extension-zone.tsx +5 -3
- package/src/{extensions → dashboard-app}/index.ts +1 -2
- package/src/dashboard-app/routes/get-route.map.tsx +1742 -0
- package/src/dashboard-app/routes/utils.ts +221 -0
- package/src/{extensions → dashboard-app}/types.ts +15 -0
- package/src/hooks/api/auth.tsx +1 -1
- package/src/hooks/api/customers.tsx +113 -0
- package/src/hooks/api/inventory.tsx +3 -0
- package/src/hooks/api/order-edits.tsx +1 -1
- package/src/hooks/table/query/use-product-table-query.tsx +4 -0
- package/src/hooks/use-combobox-data.tsx +6 -2
- package/src/i18n/languages.ts +15 -1
- package/src/i18n/translations/$schema.json +149 -5
- package/src/i18n/translations/__tests__/validate-translations.spec.ts +1 -0
- package/src/i18n/translations/bg.json +2983 -0
- package/src/i18n/translations/en.json +64 -25
- package/src/i18n/translations/index.ts +8 -0
- package/src/i18n/translations/lt.json +3003 -0
- package/src/i18n/translations/pl.json +359 -74
- package/src/index.ts +2 -0
- package/src/lib/payment.ts +8 -6
- package/src/providers/extension-provider/extension-context.tsx +8 -0
- package/src/providers/extension-provider/extension-provider.tsx +18 -0
- package/src/providers/extension-provider/index.ts +2 -0
- package/src/providers/extension-provider/use-extension.tsx +10 -0
- package/src/providers/providers.tsx +5 -7
- package/src/routes/api-key-management/api-key-management-detail/api-key-management-detail.tsx +2 -2
- package/src/routes/api-key-management/api-key-management-detail/components/api-key-general-section/api-key-general-section.tsx +3 -1
- package/src/routes/api-key-management/api-key-management-list/api-key-management-list.tsx +2 -2
- package/src/routes/campaigns/campaign-detail/campaign-detail.tsx +2 -2
- package/src/routes/campaigns/campaign-list/campaign-list.tsx +2 -2
- package/src/routes/categories/category-detail/category-detail.tsx +2 -2
- package/src/routes/categories/category-list/category-list.tsx +2 -2
- package/src/routes/collections/collection-detail/collection-detail.tsx +2 -2
- package/src/routes/collections/collection-list/collection-list.tsx +2 -2
- package/src/routes/customer-groups/customer-group-detail/customer-group-detail.tsx +2 -2
- package/src/routes/customer-groups/customer-group-list/components/customer-group-list-table/customer-group-list-table.tsx +8 -8
- package/src/routes/customer-groups/customer-group-list/customer-group-list.tsx +2 -2
- package/src/routes/customers/customer-create-address/components/create-customer-address-form/create-customer-address-form.tsx +282 -0
- package/src/routes/customers/customer-create-address/components/create-customer-address-form/index.ts +1 -0
- package/src/routes/customers/customer-create-address/customer-create-address.tsx +10 -0
- package/src/routes/customers/customer-create-address/index.ts +1 -0
- package/src/routes/customers/customer-detail/components/customer-address-section/customer-address-section.tsx +104 -0
- package/src/routes/customers/customer-detail/components/customer-address-section/index.ts +1 -0
- package/src/routes/customers/customer-detail/customer-detail.tsx +21 -11
- package/src/routes/customers/customer-detail/loader.ts +4 -1
- package/src/routes/customers/customer-list/customer-list.tsx +2 -2
- package/src/routes/inventory/inventory-detail/components/adjust-inventory/adjust-inventory-drawer.tsx +1 -1
- package/src/routes/inventory/inventory-detail/components/edit-inventory-item-attributes/components/edit-item-attributes-form.tsx +17 -0
- package/src/routes/inventory/inventory-detail/components/inventory-item-attributes/attributes-section.tsx +1 -0
- package/src/routes/inventory/inventory-detail/inventory-detail.tsx +2 -2
- package/src/routes/inventory/inventory-list/inventory-list.tsx +2 -2
- package/src/routes/locations/location-detail/components/location-general-section/location-general-section.tsx +13 -3
- package/src/routes/locations/location-detail/location-detail.tsx +2 -2
- package/src/routes/locations/location-list/location-list.tsx +10 -12
- package/src/routes/locations/location-service-zone-create/components/create-service-zone-form/create-service-zone-form.tsx +2 -3
- package/src/routes/locations/location-service-zone-edit/components/edit-region-form/edit-service-zone-form.tsx +4 -3
- package/src/routes/locations/location-service-zone-shipping-option-create/components/create-shipping-options-form/create-shipping-option-details-form.tsx +54 -46
- package/src/routes/locations/location-service-zone-shipping-option-create/components/create-shipping-options-form/create-shipping-options-form.tsx +8 -2
- package/src/routes/locations/location-service-zone-shipping-option-create/components/create-shipping-options-form/create-shipping-options-prices-form.tsx +27 -2
- package/src/routes/locations/location-service-zone-shipping-option-create/location-service-zone-shipping-option-create.tsx +14 -3
- package/src/routes/locations/location-service-zone-shipping-option-edit/components/edit-region-form/edit-shipping-option-form.tsx +50 -42
- package/src/routes/locations/location-service-zone-shipping-option-edit/location-service-zone-shipping-option-edit.tsx +15 -1
- package/src/routes/login/login.tsx +2 -2
- package/src/routes/orders/order-create-claim/components/claim-create-form/claim-create-form.tsx +22 -18
- package/src/routes/orders/order-create-claim/components/claim-create-form/claim-outbound-section.tsx +29 -16
- package/src/routes/orders/order-create-exchange/components/exchange-create-form/exchange-inbound-section.tsx +20 -15
- package/src/routes/orders/order-create-exchange/components/exchange-create-form/exchange-outbound-section.tsx +30 -17
- package/src/routes/orders/order-create-fulfillment/components/order-create-fulfillment-form/order-create-fulfillment-form.tsx +25 -18
- package/src/routes/orders/order-create-refund/components/create-refund-form/create-refund-form.tsx +22 -25
- package/src/routes/orders/order-create-return/components/return-create-form/return-create-form.tsx +9 -7
- package/src/routes/orders/order-detail/components/order-fulfillment-section/order-fulfillment-section.tsx +27 -5
- package/src/routes/orders/order-detail/components/order-summary-section/order-summary-section.tsx +21 -28
- package/src/routes/orders/order-detail/constants.ts +1 -0
- package/src/routes/orders/order-detail/order-detail.tsx +2 -2
- package/src/routes/orders/order-list/order-list.tsx +2 -2
- package/src/routes/orders/order-receive-return/components/order-receive-return-form/order-receive-return-form.tsx +2 -2
- package/src/routes/price-lists/price-list-detail/components/price-list-configuration-section/price-list-configuration-section.tsx +1 -1
- package/src/routes/price-lists/price-list-detail/price-list-detail.tsx +2 -2
- package/src/routes/price-lists/price-list-list/price-list-list.tsx +2 -2
- package/src/routes/product-tags/product-tag-detail/product-tag-detail.tsx +2 -2
- package/src/routes/product-tags/product-tag-list/product-tag-list.tsx +2 -2
- package/src/routes/product-types/common/hooks/use-delete-product-type-action.tsx +7 -3
- package/src/routes/product-types/product-type-create/components/create-product-type-form/create-product-type-form.tsx +20 -23
- package/src/routes/product-types/product-type-detail/components/product-type-general-section/product-type-general-section.tsx +4 -1
- package/src/routes/product-types/product-type-detail/product-type-detail.tsx +2 -2
- package/src/routes/product-types/product-type-list/components/product-type-list-table/product-table-row-actions.tsx +4 -1
- package/src/routes/product-types/product-type-list/product-type-list.tsx +2 -2
- package/src/routes/product-variants/product-variant-detail/product-variant-detail.tsx +2 -2
- package/src/routes/product-variants/product-variant-manage-inventory-items/components/manage-variant-inventory-items-form/manage-variant-inventory-items-form.tsx +1 -1
- package/src/routes/products/product-attributes/components/product-attributes-form/product-attributes-form.tsx +3 -3
- package/src/routes/products/product-create/components/product-create-details-form/components/product-create-details-variant-section/product-create-details-variant-section.tsx +2 -2
- package/src/routes/products/product-create/components/product-create-details-form/product-create-details-form.tsx +3 -5
- package/src/routes/products/product-create/components/product-create-form/product-create-form.tsx +10 -14
- package/src/routes/products/product-create/components/product-create-inventory-kit-form/components/product-create-inventory-kit-section/product-create-inventory-kit-section.tsx +1 -1
- package/src/routes/products/product-create/components/product-create-organize-form/components/product-create-organize-section/product-create-details-organize-section.tsx +3 -1
- package/src/routes/products/product-create/components/product-create-organize-form/product-create-organize-form.tsx +3 -5
- package/src/routes/products/product-create/constants.ts +4 -4
- package/src/routes/products/product-create/utils.ts +6 -6
- package/src/routes/products/product-detail/components/product-attribute-section/product-attribute-section.tsx +2 -2
- package/src/routes/products/product-detail/components/product-general-section/product-general-section.tsx +2 -2
- package/src/routes/products/product-detail/components/product-organization-section/product-organization-section.tsx +2 -2
- package/src/routes/products/product-detail/components/product-variant-section/product-variant-section.tsx +53 -16
- package/src/routes/products/product-detail/constants.ts +1 -1
- package/src/routes/products/product-detail/product-detail.tsx +2 -2
- package/src/routes/products/product-edit/components/edit-product-form/edit-product-form.tsx +4 -6
- package/src/routes/products/product-export/product-export.tsx +1 -3
- package/src/routes/products/product-list/components/product-list-table/product-list-table.tsx +1 -0
- package/src/routes/products/product-list/loader.ts +7 -2
- package/src/routes/products/product-list/product-list.tsx +2 -2
- package/src/routes/products/product-organization/components/product-organization-form/product-organization-form.tsx +3 -3
- package/src/routes/products/product-prices/product-prices.tsx +1 -3
- package/src/routes/products/product-shipping-profile/components/product-organization-form/product-shipping-profile-form.tsx +13 -2
- package/src/routes/products/product-stock/components/product-stock-form/product-stock-form.tsx +2 -2
- package/src/routes/profile/profile-detail/profile-detail.tsx +2 -2
- package/src/routes/promotions/common/edit-rules/components/rule-value-form-field/rule-value-form-field.tsx +30 -54
- package/src/routes/promotions/promotion-detail/promotion-detail.tsx +2 -2
- package/src/routes/promotions/promotion-list/promotions-list.tsx +2 -2
- package/src/routes/regions/region-detail/region-detail.tsx +2 -2
- package/src/routes/regions/region-list/region-list.tsx +2 -2
- package/src/routes/reservations/reservation-detail/reservation-detail.tsx +3 -3
- package/src/routes/reservations/reservation-list/reservation-list.tsx +2 -2
- package/src/routes/return-reasons/return-reason-list/return-reason-list.tsx +2 -2
- package/src/routes/sales-channels/sales-channel-detail/sales-channel-detail.tsx +2 -2
- package/src/routes/sales-channels/sales-channel-list/sales-channel-list.tsx +2 -2
- package/src/routes/shipping-profiles/shipping-profile-detail/shipping-profile-detail.tsx +2 -2
- package/src/routes/shipping-profiles/shipping-profiles-list/shipping-profile-list.tsx +2 -2
- package/src/routes/store/store-detail/components/store-currency-section/{store-currencies-section.tsx/store-currency-section.tsx → store-currency-section.tsx} +9 -9
- package/src/routes/store/store-detail/store-detail.tsx +8 -8
- package/src/routes/tax-regions/tax-region-detail/tax-region-detail.tsx +2 -2
- package/src/routes/tax-regions/tax-region-list/tax-region-list.tsx +2 -2
- package/src/routes/tax-regions/tax-region-province-detail/tax-region-detail.tsx +2 -2
- package/src/routes/users/user-detail/user-detail.tsx +2 -2
- package/src/routes/users/user-list/user-list.tsx +2 -2
- package/src/routes/workflow-executions/workflow-execution-detail/workflow-detail.tsx +2 -2
- package/src/routes/workflow-executions/workflow-execution-list/workflow-execution-list.tsx +2 -2
- package/src/vite-env.d.ts +3 -0
- package/dist/chunk-53IEL2PE.mjs +0 -46
- package/dist/chunk-VIJAVLIU.mjs +0 -551
- package/dist/chunk-XWO5BP42.mjs +0 -37
- package/dist/collection-metadata-XSJPOGIP.mjs +0 -69
- package/dist/order-metadata-DRR355QQ.mjs +0 -69
- package/dist/product-metadata-EW6JGOKL.mjs +0 -67
- package/dist/product-type-create-5AWIC2HY.mjs +0 -107
- package/dist/store-metadata-Z2PO4TKS.mjs +0 -68
- package/dist/user-metadata-ISZ5VACI.mjs +0 -70
- package/index.html +0 -13
- package/src/components/common/inline-tip/index.ts +0 -1
- package/src/components/common/inline-tip/inline-tip.tsx +0 -60
- package/src/extensions/dashboard-extension-manager/index.ts +0 -2
- package/src/extensions/dashboard-extension-provider/dashboard-extension-context.tsx +0 -7
- package/src/extensions/dashboard-extension-provider/dashboard-extension-provider.tsx +0 -18
- package/src/extensions/dashboard-extension-provider/index.ts +0 -2
- package/src/extensions/dashboard-extension-provider/use-dashboard-extension.tsx +0 -12
- package/src/extensions/routes/utils.ts +0 -71
- package/src/providers/router-provider/index.ts +0 -1
- package/src/providers/router-provider/route-extensions.tsx +0 -12
- package/src/providers/router-provider/route-map.tsx +0 -1688
- package/src/providers/router-provider/router-provider.tsx +0 -14
- package/src/providers/router-provider/settings-extensions.tsx +0 -12
- package/dist/{chunk-RNCCSLPH.mjs → chunk-LBIOZZPA.mjs} +1 -1
- /package/src/{extensions → dashboard-app}/forms/form-extension-zone/index.ts +0 -0
- /package/src/{extensions → dashboard-app}/forms/form-extension-zone/types.ts +0 -0
- /package/src/{extensions → dashboard-app}/forms/form-extension-zone/utils.ts +0 -0
- /package/src/{extensions → dashboard-app}/forms/hooks.tsx +0 -0
- /package/src/{extensions → dashboard-app}/forms/index.ts +0 -0
- /package/src/{extensions → dashboard-app}/links/utils.ts +0 -0
- /package/src/routes/store/store-detail/components/store-currency-section/{store-currencies-section.tsx/index.ts → index.ts} +0 -0
@@ -1,12 +1,13 @@
|
|
1
1
|
import { Drawer, clx } from "@medusajs/ui"
|
2
2
|
import { PropsWithChildren, useEffect, useState } from "react"
|
3
|
-
import { useNavigate } from "react-router-dom"
|
3
|
+
import { Path, useNavigate } from "react-router-dom"
|
4
|
+
import { useStateAwareTo } from "../hooks/use-state-aware-to"
|
4
5
|
import { RouteModalForm } from "../route-modal-form"
|
5
6
|
import { RouteModalProvider } from "../route-modal-provider/route-provider"
|
6
7
|
import { StackedModalProvider } from "../stacked-modal-provider"
|
7
8
|
|
8
9
|
type RouteDrawerProps = PropsWithChildren<{
|
9
|
-
prev?: string
|
10
|
+
prev?: string | Partial<Path>
|
10
11
|
}>
|
11
12
|
|
12
13
|
const Root = ({ prev = "..", children }: RouteDrawerProps) => {
|
@@ -14,6 +15,8 @@ const Root = ({ prev = "..", children }: RouteDrawerProps) => {
|
|
14
15
|
const [open, setOpen] = useState(false)
|
15
16
|
const [stackedModalOpen, onStackedModalOpen] = useState(false)
|
16
17
|
|
18
|
+
const to = useStateAwareTo(prev)
|
19
|
+
|
17
20
|
/**
|
18
21
|
* Open the modal when the component mounts. This
|
19
22
|
* ensures that the entry animation is played.
|
@@ -30,7 +33,7 @@ const Root = ({ prev = "..", children }: RouteDrawerProps) => {
|
|
30
33
|
const handleOpenChange = (open: boolean) => {
|
31
34
|
if (!open) {
|
32
35
|
document.body.style.pointerEvents = "auto"
|
33
|
-
navigate(
|
36
|
+
navigate(to, { replace: true })
|
34
37
|
return
|
35
38
|
}
|
36
39
|
|
@@ -39,7 +42,7 @@ const Root = ({ prev = "..", children }: RouteDrawerProps) => {
|
|
39
42
|
|
40
43
|
return (
|
41
44
|
<Drawer open={open} onOpenChange={handleOpenChange}>
|
42
|
-
<RouteModalProvider prev={
|
45
|
+
<RouteModalProvider prev={to}>
|
43
46
|
<StackedModalProvider onOpenChange={onStackedModalOpen}>
|
44
47
|
<Drawer.Content
|
45
48
|
aria-describedby={undefined}
|
@@ -1,13 +1,14 @@
|
|
1
1
|
import { FocusModal, clx } from "@medusajs/ui"
|
2
2
|
import { PropsWithChildren, useEffect, useState } from "react"
|
3
|
-
import { useNavigate } from "react-router-dom"
|
3
|
+
import { Path, useNavigate } from "react-router-dom"
|
4
|
+
import { useStateAwareTo } from "../hooks/use-state-aware-to"
|
4
5
|
import { RouteModalForm } from "../route-modal-form"
|
5
6
|
import { useRouteModal } from "../route-modal-provider"
|
6
7
|
import { RouteModalProvider } from "../route-modal-provider/route-provider"
|
7
8
|
import { StackedModalProvider } from "../stacked-modal-provider"
|
8
9
|
|
9
10
|
type RouteFocusModalProps = PropsWithChildren<{
|
10
|
-
prev?: string
|
11
|
+
prev?: string | Partial<Path>
|
11
12
|
}>
|
12
13
|
|
13
14
|
const Root = ({ prev = "..", children }: RouteFocusModalProps) => {
|
@@ -15,6 +16,8 @@ const Root = ({ prev = "..", children }: RouteFocusModalProps) => {
|
|
15
16
|
const [open, setOpen] = useState(false)
|
16
17
|
const [stackedModalOpen, onStackedModalOpen] = useState(false)
|
17
18
|
|
19
|
+
const to = useStateAwareTo(prev)
|
20
|
+
|
18
21
|
/**
|
19
22
|
* Open the modal when the component mounts. This
|
20
23
|
* ensures that the entry animation is played.
|
@@ -31,7 +34,7 @@ const Root = ({ prev = "..", children }: RouteFocusModalProps) => {
|
|
31
34
|
const handleOpenChange = (open: boolean) => {
|
32
35
|
if (!open) {
|
33
36
|
document.body.style.pointerEvents = "auto"
|
34
|
-
navigate(
|
37
|
+
navigate(to, { replace: true })
|
35
38
|
return
|
36
39
|
}
|
37
40
|
|
@@ -40,7 +43,7 @@ const Root = ({ prev = "..", children }: RouteFocusModalProps) => {
|
|
40
43
|
|
41
44
|
return (
|
42
45
|
<FocusModal open={open} onOpenChange={handleOpenChange}>
|
43
|
-
<RouteModalProvider prev={
|
46
|
+
<RouteModalProvider prev={to}>
|
44
47
|
<StackedModalProvider onOpenChange={onStackedModalOpen}>
|
45
48
|
<Content stackedModalOpen={stackedModalOpen}>{children}</Content>
|
46
49
|
</StackedModalProvider>
|
@@ -1,9 +1,9 @@
|
|
1
1
|
import { PropsWithChildren, useCallback, useMemo, useState } from "react"
|
2
|
-
import { useNavigate } from "react-router-dom"
|
2
|
+
import { Path, useNavigate } from "react-router-dom"
|
3
3
|
import { RouteModalProviderContext } from "./route-modal-context"
|
4
4
|
|
5
5
|
type RouteModalProviderProps = PropsWithChildren<{
|
6
|
-
prev: string
|
6
|
+
prev: string | Partial<Path>
|
7
7
|
}>
|
8
8
|
|
9
9
|
export const RouteModalProvider = ({
|
@@ -1,35 +1,33 @@
|
|
1
1
|
import { Tooltip } from "@medusajs/ui"
|
2
|
-
import { format } from "date-fns/format"
|
3
2
|
import { useTranslation } from "react-i18next"
|
4
3
|
import { PlaceholderCell } from "../placeholder-cell"
|
4
|
+
import { useDate } from "../../../../../hooks/use-date"
|
5
5
|
|
6
6
|
type DateCellProps = {
|
7
7
|
date?: Date | string | null
|
8
8
|
}
|
9
9
|
|
10
10
|
export const DateCell = ({ date }: DateCellProps) => {
|
11
|
+
const { getFullDate } = useDate()
|
12
|
+
|
11
13
|
if (!date) {
|
12
14
|
return <PlaceholderCell />
|
13
15
|
}
|
14
16
|
|
15
|
-
const value = new Date(date)
|
16
|
-
value.setMinutes(value.getMinutes() - value.getTimezoneOffset())
|
17
|
-
|
18
|
-
const hour12 = Intl.DateTimeFormat().resolvedOptions().hour12
|
19
|
-
const timestampFormat = hour12 ? "dd MMM yyyy hh:MM a" : "dd MMM yyyy HH:MM"
|
20
|
-
|
21
17
|
return (
|
22
18
|
<div className="flex h-full w-full items-center overflow-hidden">
|
23
19
|
<Tooltip
|
24
20
|
className="z-10"
|
25
21
|
content={
|
26
|
-
<span className="text-pretty">{`${
|
27
|
-
|
28
|
-
|
29
|
-
)}`}</span>
|
22
|
+
<span className="text-pretty">{`${getFullDate({
|
23
|
+
date,
|
24
|
+
includeTime: true,
|
25
|
+
})}`}</span>
|
30
26
|
}
|
31
27
|
>
|
32
|
-
<span className="truncate">
|
28
|
+
<span className="truncate">
|
29
|
+
{getFullDate({ date, includeTime: false })}
|
30
|
+
</span>
|
33
31
|
</Tooltip>
|
34
32
|
</div>
|
35
33
|
)
|
@@ -7,87 +7,123 @@ import {
|
|
7
7
|
NESTED_ROUTE_POSITIONS,
|
8
8
|
} from "@medusajs/admin-shared"
|
9
9
|
import * as React from "react"
|
10
|
-
import {
|
10
|
+
import {
|
11
|
+
createBrowserRouter,
|
12
|
+
RouteObject,
|
13
|
+
RouterProvider,
|
14
|
+
} from "react-router-dom"
|
15
|
+
import { INavItem } from "../components/layout/nav-item"
|
16
|
+
import { Providers } from "../providers"
|
17
|
+
import { getRouteMap } from "./routes/get-route.map"
|
18
|
+
import { createRouteMap, getRouteExtensions } from "./routes/utils"
|
11
19
|
import {
|
12
20
|
ConfigExtension,
|
13
21
|
ConfigField,
|
14
22
|
ConfigFieldMap,
|
23
|
+
DashboardPlugin,
|
15
24
|
DisplayExtension,
|
16
25
|
DisplayMap,
|
17
|
-
DisplayModule,
|
18
26
|
FormExtension,
|
19
27
|
FormField,
|
20
28
|
FormFieldExtension,
|
21
29
|
FormFieldMap,
|
22
|
-
FormModule,
|
23
30
|
FormZoneMap,
|
24
31
|
MenuItemExtension,
|
25
32
|
MenuItemKey,
|
26
|
-
|
27
|
-
|
28
|
-
WidgetModule,
|
33
|
+
MenuMap,
|
34
|
+
WidgetMap,
|
29
35
|
ZoneStructure,
|
30
|
-
} from "
|
36
|
+
} from "./types"
|
31
37
|
|
32
|
-
|
33
|
-
|
34
|
-
displayModule: DisplayModule
|
35
|
-
menuItemModule: MenuItemModule
|
36
|
-
widgetModule: WidgetModule
|
38
|
+
type DashboardAppProps = {
|
39
|
+
plugins: DashboardPlugin[]
|
37
40
|
}
|
38
41
|
|
39
|
-
export class
|
40
|
-
private widgets:
|
41
|
-
private menus:
|
42
|
+
export class DashboardApp {
|
43
|
+
private widgets: WidgetMap
|
44
|
+
private menus: MenuMap
|
42
45
|
private fields: FormFieldMap
|
43
46
|
private configs: ConfigFieldMap
|
44
47
|
private displays: DisplayMap
|
48
|
+
private coreRoutes: RouteObject[]
|
49
|
+
private settingsRoutes: RouteObject[]
|
50
|
+
|
51
|
+
constructor({ plugins }: DashboardAppProps) {
|
52
|
+
this.widgets = this.populateWidgets(plugins)
|
53
|
+
this.menus = this.populateMenus(plugins)
|
45
54
|
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
displayModule,
|
50
|
-
formModule,
|
51
|
-
}: DashboardExtensionManagerProps) {
|
52
|
-
this.widgets = this.populateWidgets(widgetModule.widgets)
|
53
|
-
this.menus = this.populateMenus(menuItemModule.menuItems)
|
55
|
+
const { coreRoutes, settingsRoutes } = this.populateRoutes(plugins)
|
56
|
+
this.coreRoutes = coreRoutes
|
57
|
+
this.settingsRoutes = settingsRoutes
|
54
58
|
|
55
|
-
const { fields, configs } = this.populateForm(
|
59
|
+
const { fields, configs } = this.populateForm(plugins)
|
56
60
|
this.fields = fields
|
57
61
|
this.configs = configs
|
58
|
-
this.displays = this.populateDisplays(
|
62
|
+
this.displays = this.populateDisplays(plugins)
|
59
63
|
}
|
60
64
|
|
61
|
-
private
|
62
|
-
const
|
65
|
+
private populateRoutes(plugins: DashboardPlugin[]) {
|
66
|
+
const coreRoutes: RouteObject[] = []
|
67
|
+
const settingsRoutes: RouteObject[] = []
|
63
68
|
|
64
|
-
|
65
|
-
|
69
|
+
for (const plugin of plugins) {
|
70
|
+
const filteredCoreRoutes = getRouteExtensions(plugin.routeModule, "core")
|
71
|
+
const filteredSettingsRoutes = getRouteExtensions(
|
72
|
+
plugin.routeModule,
|
73
|
+
"settings"
|
74
|
+
)
|
75
|
+
|
76
|
+
const coreRoutesMap = createRouteMap(filteredCoreRoutes)
|
77
|
+
const settingsRoutesMap = createRouteMap(filteredSettingsRoutes)
|
78
|
+
|
79
|
+
coreRoutes.push(...coreRoutesMap)
|
80
|
+
settingsRoutes.push(...settingsRoutesMap)
|
66
81
|
}
|
67
82
|
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
83
|
+
return { coreRoutes, settingsRoutes }
|
84
|
+
}
|
85
|
+
|
86
|
+
private populateWidgets(plugins: DashboardPlugin[]) {
|
87
|
+
const registry = new Map<InjectionZone, React.ComponentType[]>()
|
88
|
+
|
89
|
+
plugins.forEach((plugin) => {
|
90
|
+
const widgets = plugin.widgetModule.widgets
|
91
|
+
if (!widgets) {
|
92
|
+
return
|
93
|
+
}
|
94
|
+
|
95
|
+
widgets.forEach((widget) => {
|
96
|
+
widget.zone.forEach((zone) => {
|
97
|
+
if (!registry.has(zone)) {
|
98
|
+
registry.set(zone, [])
|
99
|
+
}
|
100
|
+
registry.get(zone)!.push(widget.Component)
|
101
|
+
})
|
74
102
|
})
|
75
103
|
})
|
76
104
|
|
77
105
|
return registry
|
78
106
|
}
|
79
107
|
|
80
|
-
private populateMenus(
|
108
|
+
private populateMenus(plugins: DashboardPlugin[]) {
|
81
109
|
const registry = new Map<MenuItemKey, INavItem[]>()
|
82
110
|
const tempRegistry: Record<string, INavItem> = {}
|
83
111
|
|
84
|
-
|
112
|
+
// Collect all menu items from all plugins
|
113
|
+
const allMenuItems: MenuItemExtension[] = []
|
114
|
+
plugins.forEach((plugin) => {
|
115
|
+
if (plugin.menuItemModule.menuItems) {
|
116
|
+
allMenuItems.push(...plugin.menuItemModule.menuItems)
|
117
|
+
}
|
118
|
+
})
|
119
|
+
|
120
|
+
if (allMenuItems.length === 0) {
|
85
121
|
return registry
|
86
122
|
}
|
87
123
|
|
88
|
-
|
124
|
+
allMenuItems.sort((a, b) => a.path.length - b.path.length)
|
89
125
|
|
90
|
-
|
126
|
+
allMenuItems.forEach((item) => {
|
91
127
|
if (item.path.includes("/:")) {
|
92
128
|
if (process.env.NODE_ENV === "development") {
|
93
129
|
console.warn(
|
@@ -114,7 +150,7 @@ export class DashboardExtensionManager {
|
|
114
150
|
}
|
115
151
|
|
116
152
|
// Find the parent item if it exists
|
117
|
-
const parentItem =
|
153
|
+
const parentItem = allMenuItems.find(
|
118
154
|
(menuItem) => menuItem.path === parentPath
|
119
155
|
)
|
120
156
|
|
@@ -158,25 +194,62 @@ export class DashboardExtensionManager {
|
|
158
194
|
return registry
|
159
195
|
}
|
160
196
|
|
161
|
-
private populateForm(
|
197
|
+
private populateForm(plugins: DashboardPlugin[]): {
|
162
198
|
fields: FormFieldMap
|
163
199
|
configs: ConfigFieldMap
|
164
200
|
} {
|
165
201
|
const fields: FormFieldMap = new Map()
|
166
202
|
const configs: ConfigFieldMap = new Map()
|
167
203
|
|
168
|
-
|
169
|
-
(
|
170
|
-
|
171
|
-
|
172
|
-
|
173
|
-
|
174
|
-
|
175
|
-
model as CustomFieldModel
|
176
|
-
|
177
|
-
|
178
|
-
|
179
|
-
|
204
|
+
plugins.forEach((plugin) => {
|
205
|
+
Object.entries(plugin.formModule.customFields).forEach(
|
206
|
+
([model, customization]) => {
|
207
|
+
// Initialize maps if they don't exist for this model
|
208
|
+
if (!fields.has(model as CustomFieldModel)) {
|
209
|
+
fields.set(model as CustomFieldModel, new Map())
|
210
|
+
}
|
211
|
+
if (!configs.has(model as CustomFieldModel)) {
|
212
|
+
configs.set(model as CustomFieldModel, new Map())
|
213
|
+
}
|
214
|
+
|
215
|
+
// Process forms
|
216
|
+
const modelFields = this.processFields(customization.forms)
|
217
|
+
const existingModelFields = fields.get(model as CustomFieldModel)!
|
218
|
+
|
219
|
+
// Merge the maps
|
220
|
+
modelFields.forEach((zoneStructure, zone) => {
|
221
|
+
if (!existingModelFields.has(zone)) {
|
222
|
+
existingModelFields.set(zone, { components: [], tabs: new Map() })
|
223
|
+
}
|
224
|
+
|
225
|
+
const existingZoneStructure = existingModelFields.get(zone)!
|
226
|
+
|
227
|
+
// Merge components
|
228
|
+
existingZoneStructure.components.push(...zoneStructure.components)
|
229
|
+
|
230
|
+
// Merge tabs
|
231
|
+
zoneStructure.tabs.forEach((fields, tab) => {
|
232
|
+
if (!existingZoneStructure.tabs.has(tab)) {
|
233
|
+
existingZoneStructure.tabs.set(tab, [])
|
234
|
+
}
|
235
|
+
existingZoneStructure.tabs.get(tab)!.push(...fields)
|
236
|
+
})
|
237
|
+
})
|
238
|
+
|
239
|
+
// Process configs
|
240
|
+
const modelConfigs = this.processConfigs(customization.configs)
|
241
|
+
const existingModelConfigs = configs.get(model as CustomFieldModel)!
|
242
|
+
|
243
|
+
// Merge the config maps
|
244
|
+
modelConfigs.forEach((configFields, zone) => {
|
245
|
+
if (!existingModelConfigs.has(zone)) {
|
246
|
+
existingModelConfigs.set(zone, [])
|
247
|
+
}
|
248
|
+
existingModelConfigs.get(zone)!.push(...configFields)
|
249
|
+
})
|
250
|
+
}
|
251
|
+
)
|
252
|
+
})
|
180
253
|
|
181
254
|
return { fields, configs }
|
182
255
|
}
|
@@ -269,16 +342,36 @@ export class DashboardExtensionManager {
|
|
269
342
|
}
|
270
343
|
}
|
271
344
|
|
272
|
-
private populateDisplays(
|
345
|
+
private populateDisplays(plugins: DashboardPlugin[]): DisplayMap {
|
273
346
|
const displays = new Map<
|
274
347
|
CustomFieldModel,
|
275
348
|
Map<CustomFieldContainerZone, React.ComponentType<{ data: any }>[]>
|
276
349
|
>()
|
277
350
|
|
278
|
-
|
279
|
-
displays.
|
280
|
-
model
|
281
|
-
|
351
|
+
plugins.forEach((plugin) => {
|
352
|
+
Object.entries(plugin.displayModule.displays).forEach(
|
353
|
+
([model, customization]) => {
|
354
|
+
if (!displays.has(model as CustomFieldModel)) {
|
355
|
+
displays.set(
|
356
|
+
model as CustomFieldModel,
|
357
|
+
new Map<
|
358
|
+
CustomFieldContainerZone,
|
359
|
+
React.ComponentType<{ data: any }>[]
|
360
|
+
>()
|
361
|
+
)
|
362
|
+
}
|
363
|
+
|
364
|
+
const modelDisplays = displays.get(model as CustomFieldModel)!
|
365
|
+
const processedDisplays = this.processDisplays(customization)
|
366
|
+
|
367
|
+
// Merge the displays
|
368
|
+
processedDisplays.forEach((components, zone) => {
|
369
|
+
if (!modelDisplays.has(zone)) {
|
370
|
+
modelDisplays.set(zone, [])
|
371
|
+
}
|
372
|
+
modelDisplays.get(zone)!.push(...components)
|
373
|
+
})
|
374
|
+
}
|
282
375
|
)
|
283
376
|
})
|
284
377
|
|
@@ -347,4 +440,21 @@ export class DashboardExtensionManager {
|
|
347
440
|
getDisplays: this.getDisplays.bind(this),
|
348
441
|
}
|
349
442
|
}
|
443
|
+
|
444
|
+
render() {
|
445
|
+
const routes = getRouteMap({
|
446
|
+
settingsRoutes: this.settingsRoutes,
|
447
|
+
coreRoutes: this.coreRoutes,
|
448
|
+
})
|
449
|
+
|
450
|
+
const router = createBrowserRouter(routes, {
|
451
|
+
basename: __BASE__ || "/",
|
452
|
+
})
|
453
|
+
|
454
|
+
return (
|
455
|
+
<Providers api={this.api}>
|
456
|
+
<RouterProvider router={router} />
|
457
|
+
</Providers>
|
458
|
+
)
|
459
|
+
}
|
350
460
|
}
|
@@ -1,8 +1,8 @@
|
|
1
|
-
import { Input, Switch } from "@medusajs/ui"
|
1
|
+
import { InlineTip, Input, Switch } from "@medusajs/ui"
|
2
2
|
import { ComponentType } from "react"
|
3
3
|
import { ControllerRenderProps, UseFormReturn } from "react-hook-form"
|
4
|
+
import { useTranslation } from "react-i18next"
|
4
5
|
import { Form } from "../../../components/common/form"
|
5
|
-
import { InlineTip } from "../../../components/common/inline-tip"
|
6
6
|
import { FormField } from "../../types"
|
7
7
|
import { FormFieldType } from "./types"
|
8
8
|
import { getFieldType } from "./utils"
|
@@ -86,6 +86,8 @@ const FormExtensionFieldComponent = ({
|
|
86
86
|
component,
|
87
87
|
placeholder,
|
88
88
|
}: FormExtensionFieldComponentProps) => {
|
89
|
+
const { t } = useTranslation()
|
90
|
+
|
89
91
|
if (component) {
|
90
92
|
const Component = component
|
91
93
|
|
@@ -104,7 +106,7 @@ const FormExtensionFieldComponent = ({
|
|
104
106
|
}
|
105
107
|
default: {
|
106
108
|
return (
|
107
|
-
<InlineTip variant="warning">
|
109
|
+
<InlineTip variant="warning" label={t("general.warning")}>
|
108
110
|
The field type does not support rendering a fallback component. Please
|
109
111
|
provide a component prop.
|
110
112
|
</InlineTip>
|