@medusajs/dashboard 3.0.0-snapshot-20251216145629 → 3.0.0-snapshot-20260102134455
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-locales-2OZXZCT5.mjs +81 -0
- package/dist/{adjust-inventory-26YXAXQL.mjs → adjust-inventory-47KGDWME.mjs} +2 -2
- package/dist/{api-key-management-create-EMP32G2D.mjs → api-key-management-create-EFPPZPZ7.mjs} +4 -4
- package/dist/{api-key-management-detail-6RCDH73M.mjs → api-key-management-detail-4IFED7SF.mjs} +15 -15
- package/dist/{api-key-management-edit-IBM3ZXHK.mjs → api-key-management-edit-QGVBNLUL.mjs} +4 -4
- package/dist/{api-key-management-list-KC5GOWAU.mjs → api-key-management-list-ROIJIIPQ.mjs} +4 -4
- package/dist/{api-key-management-sales-channels-LUB5G6RC.mjs → api-key-management-sales-channels-7P5L45AT.mjs} +6 -6
- package/dist/app.css +33 -3
- package/dist/app.js +18467 -16698
- package/dist/app.mjs +13 -13
- package/dist/{campaign-create-FJOECKGT.mjs → campaign-create-EZGZ4SBQ.mjs} +3 -3
- package/dist/{campaign-detail-5Q4BYCPX.mjs → campaign-detail-NFKLFPY4.mjs} +12 -12
- package/dist/{categories-metadata-J7M3XWI7.mjs → categories-metadata-G7BACZ26.mjs} +12 -12
- package/dist/{category-create-KHJZSC7G.mjs → category-create-7MV25HYX.mjs} +6 -6
- package/dist/{category-detail-S5IPXMHX.mjs → category-detail-XJQQ7UU4.mjs} +14 -14
- package/dist/{category-edit-CTA2EPDG.mjs → category-edit-LV7EARAB.mjs} +3 -3
- package/dist/{category-list-QBYJ4T3R.mjs → category-list-NIVLV5S3.mjs} +6 -6
- package/dist/{category-organize-SXP33XET.mjs → category-organize-SCRGWKDG.mjs} +3 -3
- package/dist/{category-products-KPW6BA5J.mjs → category-products-FXFSMCR6.mjs} +13 -13
- package/dist/{chunk-OXPE5TAY.mjs → chunk-24C2YVFU.mjs} +1 -1
- package/dist/{chunk-4JQR6QNW.mjs → chunk-333HK6Y6.mjs} +2 -2
- package/dist/{chunk-DODQ3KJT.mjs → chunk-3RRA56WC.mjs} +8 -3
- package/dist/{chunk-5LGRZSEH.mjs → chunk-3YPZ3R4U.mjs} +1 -1
- package/dist/chunk-5BUFAGKR.mjs +13 -0
- package/dist/{chunk-2DULKOPN.mjs → chunk-5ISRTMYH.mjs} +1 -1
- package/dist/{chunk-PHLCT2HA.mjs → chunk-5ZPKY5XP.mjs} +1 -1
- package/dist/{chunk-U6G4M5LP.mjs → chunk-6EXKKRZY.mjs} +1 -1
- package/dist/{chunk-GRZSG4EP.mjs → chunk-74WPAWMW.mjs} +127 -226
- package/dist/{chunk-UULAOAFM.mjs → chunk-772OR7OQ.mjs} +358 -242
- package/dist/chunk-7AXHHXCX.mjs +4 -0
- package/dist/{chunk-BMS2QLJY.mjs → chunk-BMJ5RYIO.mjs} +1 -1
- package/dist/{chunk-Y2YVTIJI.mjs → chunk-CW5PQUJ6.mjs} +1 -1
- package/dist/{chunk-IAV7IKJ6.mjs → chunk-DN5BRKVN.mjs} +1 -1
- package/dist/{chunk-RS7DWLEP.mjs → chunk-DQUXK4WW.mjs} +1 -1
- package/dist/{chunk-2XTBDCGE.mjs → chunk-DWH2OQFK.mjs} +1 -1
- package/dist/{chunk-CCQD65EY.mjs → chunk-FKNW5MLZ.mjs} +360 -288
- package/dist/{chunk-HTCYX4VD.mjs → chunk-G35UUG2P.mjs} +1 -1
- package/dist/{chunk-QKALAT7P.mjs → chunk-GGONMC2N.mjs} +1 -1
- package/dist/{chunk-FYWHE3W5.mjs → chunk-GJN5SXGZ.mjs} +1 -1
- package/dist/{chunk-CVHJAKLQ.mjs → chunk-HDO2UCKF.mjs} +1 -1
- package/dist/{chunk-3C6WQ7NH.mjs → chunk-IWNNQ6HA.mjs} +37 -3
- package/dist/{chunk-OL24RDYM.mjs → chunk-KHJL6MUQ.mjs} +8 -8
- package/dist/{chunk-6P4Q4AAP.mjs → chunk-KPI4WFJU.mjs} +3 -3
- package/dist/{chunk-AHZLMCZF.mjs → chunk-KSDXSKJ7.mjs} +1 -1
- package/dist/{chunk-BZKI5J2M.mjs → chunk-L7A2JIQY.mjs} +3 -3
- package/dist/{chunk-XY7A7GZJ.mjs → chunk-LEAMWI5H.mjs} +1 -1
- package/dist/{chunk-A4XYK3MY.mjs → chunk-LG5B2BVB.mjs} +2 -2
- package/dist/{chunk-23GTCEOV.mjs → chunk-ML7BA2NY.mjs} +1 -1
- package/dist/{chunk-OFN7DIZA.mjs → chunk-OYHFHBNL.mjs} +94 -7
- package/dist/{chunk-OSHH5GAS.mjs → chunk-Q34TRFIW.mjs} +1 -13
- package/dist/{chunk-UJ2TMPV4.mjs → chunk-QBIQEVTU.mjs} +0 -12
- package/dist/{chunk-YYOPBKME.mjs → chunk-QHRAWZGA.mjs} +3 -3
- package/dist/{chunk-A2WBKOXJ.mjs → chunk-SO2DE6MM.mjs} +2 -2
- package/dist/{chunk-EHU67PIM.mjs → chunk-TOCMU7UV.mjs} +7 -3
- package/dist/{chunk-YIOBBZUB.mjs → chunk-U7KANQ5A.mjs} +2 -2
- package/dist/{chunk-Z6BFNHEO.mjs → chunk-UCYUWNJL.mjs} +109 -62
- package/dist/{chunk-WYATCUOM.mjs → chunk-V2RGYIAG.mjs} +10 -10
- package/dist/{chunk-UWY5ZV66.mjs → chunk-VQ73B7ZZ.mjs} +1 -13
- package/dist/chunk-XD72PXRS.mjs +329 -0
- package/dist/{store-add-locales-VJ4RJ7UI.mjs → chunk-YFXI6CWD.mjs} +2 -67
- package/dist/{chunk-AWRCV3ME.mjs → chunk-YM4XGCHB.mjs} +1 -1
- package/dist/{chunk-ZMG5B4FG.mjs → chunk-ZGV5NOTE.mjs} +1 -1
- package/dist/{collection-add-products-FU2BS3D3.mjs → collection-add-products-YDMBU2JY.mjs} +13 -13
- package/dist/{collection-create-GWKWVT7B.mjs → collection-create-RXHEXU6T.mjs} +3 -3
- package/dist/{collection-detail-VJE7XHLV.mjs → collection-detail-75XPGVOX.mjs} +13 -13
- package/dist/{collection-edit-EZIO2BR5.mjs → collection-edit-CGF47VIN.mjs} +3 -3
- package/dist/{collection-list-IGA6SCNF.mjs → collection-list-75N5NYXQ.mjs} +18 -17
- package/dist/{collection-metadata-QK7MI3D2.mjs → collection-metadata-TGGC6HM2.mjs} +12 -12
- package/dist/{customer-detail-MOV2T3LF.mjs → customer-detail-KDLZ23B3.mjs} +17 -16
- package/dist/{customer-group-detail-6T7OXGQD.mjs → customer-group-detail-ZIAVMOYS.mjs} +12 -12
- package/dist/{customer-group-list-AJEAF5D2.mjs → customer-group-list-BDDC5VVZ.mjs} +15 -15
- package/dist/{customers-add-customer-group-QVTVSQYM.mjs → customers-add-customer-group-B3ASQGP6.mjs} +12 -12
- package/dist/{edit-inventory-item-H7DAZWIT.mjs → edit-inventory-item-OKAXQRJ5.mjs} +2 -2
- package/dist/{edit-inventory-item-attributes-7HTXXPGZ.mjs → edit-inventory-item-attributes-FVWDV6O5.mjs} +2 -2
- package/dist/{edit-reservation-OVTRZHJR.mjs → edit-reservation-3PU6YSNJ.mjs} +3 -3
- package/dist/{edit-rules-SMVRTCUP.mjs → edit-rules-LOJ3P4YB.mjs} +14 -14
- package/dist/en.json +73 -5
- package/dist/{inventory-create-ANYUM4P5.mjs → inventory-create-C2WWS7QR.mjs} +13 -13
- package/dist/{inventory-detail-ZPSEMYI2.mjs → inventory-detail-AKOZ4T3Z.mjs} +12 -12
- package/dist/{inventory-list-RXJPSVZE.mjs → inventory-list-DRFJIU2O.mjs} +2 -2
- package/dist/{inventory-metadata-FNEJ3RAT.mjs → inventory-metadata-N6CJZEWD.mjs} +12 -12
- package/dist/{inventory-stock-FD4ZM4BB.mjs → inventory-stock-IJ2N7LKC.mjs} +14 -14
- package/dist/{location-detail-N3GUZSY7.mjs → location-detail-PL4Y43RS.mjs} +16 -16
- package/dist/{location-fulfillment-providers-7ZUJAGNY.mjs → location-fulfillment-providers-2PLOVSXC.mjs} +17 -16
- package/dist/{location-sales-channels-P3QJTFDT.mjs → location-sales-channels-SZARSLWT.mjs} +5 -5
- package/dist/{location-service-zone-shipping-option-create-ZJ4GIBTJ.mjs → location-service-zone-shipping-option-create-CUNSAP24.mjs} +15 -15
- package/dist/{location-service-zone-shipping-option-edit-4CGPQ3VT.mjs → location-service-zone-shipping-option-edit-OJ462SVM.mjs} +1 -1
- package/dist/{location-service-zone-shipping-option-pricing-CR4BVYG3.mjs → location-service-zone-shipping-option-pricing-5HN2Z5RB.mjs} +2 -2
- package/dist/login-VBUNWZHI.mjs +301 -0
- package/dist/{manage-locations-7HH6R4UP.mjs → manage-locations-JPCSBA5D.mjs} +2 -2
- package/dist/{order-allocate-items-HZGGYJ42.mjs → order-allocate-items-6QHQASQJ.mjs} +4 -4
- package/dist/{order-create-claim-SCDJGM46.mjs → order-create-claim-ECVSH5GC.mjs} +22 -22
- package/dist/{order-create-edit-JIE3HDHP.mjs → order-create-edit-EVIOJIXE.mjs} +14 -13
- package/dist/{order-create-exchange-LQU4YN7F.mjs → order-create-exchange-ZVYYOGI3.mjs} +22 -22
- package/dist/{order-create-fulfillment-OWUVTZXW.mjs → order-create-fulfillment-FDIFEV6X.mjs} +16 -16
- package/dist/{order-create-refund-Q6HQY42R.mjs → order-create-refund-TNPGKR5P.mjs} +17 -17
- package/dist/{order-create-return-52GHGW5Z.mjs → order-create-return-NR6XQLDD.mjs} +9 -9
- package/dist/{order-create-shipment-WAGGEPRW.mjs → order-create-shipment-UP3WGRWB.mjs} +12 -12
- package/dist/{order-detail-PVPGEWGY.mjs → order-detail-F6D5DV74.mjs} +28 -28
- package/dist/{order-edit-billing-address-UM76J4KX.mjs → order-edit-billing-address-D4AJ6Z5Q.mjs} +44 -12
- package/dist/{order-edit-email-CL3KNOCM.mjs → order-edit-email-MXYA5BII.mjs} +12 -12
- package/dist/{order-edit-shipping-address-PIESTGVL.mjs → order-edit-shipping-address-GKW2ZPGR.mjs} +42 -12
- package/dist/{order-export-LE363ZLB.mjs → order-export-KQUI2TK7.mjs} +14 -14
- package/dist/{order-list-GRLQWN4L.mjs → order-list-7A5UKGXR.mjs} +11 -11
- package/dist/{order-metadata-FHBB7MTG.mjs → order-metadata-2IXELA7C.mjs} +12 -12
- package/dist/{order-receive-return-PRVKP6J2.mjs → order-receive-return-XXHOXGDC.mjs} +13 -13
- package/dist/{order-request-transfer-XSAGRUMT.mjs → order-request-transfer-2ENR64VR.mjs} +13 -13
- package/dist/{price-list-configuration-6S3MLNXQ.mjs → price-list-configuration-BZ3ZH5FY.mjs} +3 -3
- package/dist/{price-list-create-MFRUQADC.mjs → price-list-create-GFGNP6OS.mjs} +16 -16
- package/dist/{price-list-detail-Q5VG5VGW.mjs → price-list-detail-SNNOR5N7.mjs} +17 -17
- package/dist/{price-list-edit-53UW35L3.mjs → price-list-edit-YW5BXBF2.mjs} +3 -3
- package/dist/{price-list-list-DG5YEZ44.mjs → price-list-list-OF562HME.mjs} +4 -4
- package/dist/{price-list-prices-add-SDU5YZAT.mjs → price-list-prices-add-F7A2EV7L.mjs} +15 -15
- package/dist/{price-list-prices-edit-5USQR4D4.mjs → price-list-prices-edit-PQ26MOJE.mjs} +5 -5
- package/dist/{product-attributes-K4FGFORS.mjs → product-attributes-HO2B4OHP.mjs} +13 -13
- package/dist/{product-create-7YTRHZQQ.mjs → product-create-UEVW5JO4.mjs} +485 -561
- package/dist/{product-create-variant-ERKHTEJZ.mjs → product-create-variant-PLZ5Q2R6.mjs} +14 -14
- package/dist/{product-detail-32ZXNWOP.mjs → product-detail-Z7K5TGZY.mjs} +45 -66
- package/dist/{product-edit-FBAKONMR.mjs → product-edit-6I6JG4GP.mjs} +13 -13
- package/dist/{product-export-5AD7NELI.mjs → product-export-UMMROQ7T.mjs} +18 -17
- package/dist/{product-image-variants-edit-M6QF2RLE.mjs → product-image-variants-edit-VRG3AJID.mjs} +12 -12
- package/dist/{product-import-V3KQN4TV.mjs → product-import-EPS4KDID.mjs} +12 -12
- package/dist/{product-list-EUWZIFTM.mjs → product-list-37O7VB2L.mjs} +20 -20
- package/dist/{product-media-3VJ7KENL.mjs → product-media-IV5NUSLW.mjs} +3 -3
- package/dist/{product-metadata-GL2MVPDI.mjs → product-metadata-KTVRI7B3.mjs} +12 -12
- package/dist/product-option-create-C5BPN6P6.mjs +268 -0
- package/dist/product-option-detail-VVK3YBCE.mjs +331 -0
- package/dist/product-option-edit-7FQSKI2R.mjs +325 -0
- package/dist/product-option-list-YHGRI7OJ.mjs +268 -0
- package/dist/product-option-metadata-P2DHDGYR.mjs +73 -0
- package/dist/product-options-manage-B4N54NCR.mjs +358 -0
- package/dist/{product-organization-IUSVX22S.mjs → product-organization-L23V4JA7.mjs} +15 -15
- package/dist/{product-prices-4C36AG4R.mjs → product-prices-GUO3KM2U.mjs} +3 -3
- package/dist/{product-sales-channels-PPXUG4KT.mjs → product-sales-channels-BOZD3AC3.mjs} +5 -5
- package/dist/{product-shipping-profile-ETQFZ7DC.mjs → product-shipping-profile-FNFRDY47.mjs} +3 -3
- package/dist/{product-stock-VEGE6SUZ.mjs → product-stock-2DNYG73L.mjs} +14 -14
- package/dist/{product-tag-create-PQMDDKWH.mjs → product-tag-create-CW7GUCZW.mjs} +12 -12
- package/dist/{product-tag-detail-I3MBZX7U.mjs → product-tag-detail-IB5VIZ3K.mjs} +26 -25
- package/dist/{product-tag-edit-K3BBQLJR.mjs → product-tag-edit-ZSXD3DOC.mjs} +12 -12
- package/dist/{product-tag-list-JUWSOMB7.mjs → product-tag-list-MJO5PURP.mjs} +24 -23
- package/dist/{product-tag-metadata-MJH5LH7E.mjs → product-tag-metadata-DAKCXWZF.mjs} +12 -12
- package/dist/{product-type-create-DRFXTL5O.mjs → product-type-create-NRLNMABQ.mjs} +2 -2
- package/dist/{product-type-detail-RKHT5NBL.mjs → product-type-detail-J2IMAZW6.mjs} +14 -14
- package/dist/{product-type-edit-SRHCZDK7.mjs → product-type-edit-BHTPMMVI.mjs} +2 -2
- package/dist/{product-type-list-QQKAHBJ3.mjs → product-type-list-MQ2PW2IE.mjs} +3 -3
- package/dist/{product-type-metadata-CDJDFFGQ.mjs → product-type-metadata-BCZMUG3K.mjs} +12 -12
- package/dist/{product-variant-detail-XAYG5CKE.mjs → product-variant-detail-4L6DHT3K.mjs} +12 -12
- package/dist/{product-variant-edit-DEZEY2H2.mjs → product-variant-edit-PZU4P65H.mjs} +13 -13
- package/dist/{product-variant-manage-inventory-items-Y2VEOHP7.mjs → product-variant-manage-inventory-items-E3GPBPEZ.mjs} +3 -3
- package/dist/{product-variant-media-2WLVNGI4.mjs → product-variant-media-BSNCO642.mjs} +2 -2
- package/dist/{product-variant-metadata-VTZDNWUT.mjs → product-variant-metadata-FHGGZGPV.mjs} +12 -12
- package/dist/{promotion-add-campaign-DO67QK6M.mjs → promotion-add-campaign-NQSIFI33.mjs} +3 -3
- package/dist/{promotion-create-HWFNUQXG.mjs → promotion-create-GBZWJVAI.mjs} +24 -21
- package/dist/{promotion-detail-QC36KXB3.mjs → promotion-detail-W2OGUESO.mjs} +12 -12
- package/dist/{refund-reason-create-YHCDEHGQ.mjs → refund-reason-create-DLVRT5OU.mjs} +12 -12
- package/dist/{refund-reason-edit-CZ5QZ2SZ.mjs → refund-reason-edit-XCSU7RMH.mjs} +12 -12
- package/dist/{refund-reason-list-OJYYEYJE.mjs → refund-reason-list-G6UNVGPG.mjs} +18 -18
- package/dist/{region-create-NA7Y2LN4.mjs → region-create-2CRTF7HJ.mjs} +1 -1
- package/dist/{region-edit-WAU347DP.mjs → region-edit-IB3PJE7V.mjs} +1 -1
- package/dist/{region-metadata-H6XXUQ4S.mjs → region-metadata-WBEUKOI6.mjs} +12 -12
- package/dist/{reservation-create-ZCIYM6JI.mjs → reservation-create-ERFJUBME.mjs} +4 -4
- package/dist/{reservation-detail-LZAQL4XA.mjs → reservation-detail-Y6UZRZXY.mjs} +12 -12
- package/dist/{reservation-list-B47DXTA7.mjs → reservation-list-LEDZB7KL.mjs} +3 -3
- package/dist/{reservation-metadata-5HZSDDOK.mjs → reservation-metadata-7KH4EXMN.mjs} +12 -12
- package/dist/{return-reason-list-SCBGTOEI.mjs → return-reason-list-UUQAL464.mjs} +6 -6
- package/dist/{sales-channel-add-products-F7YV4MO5.mjs → sales-channel-add-products-GSPG7OTK.mjs} +14 -14
- package/dist/{sales-channel-create-MI7HHZYE.mjs → sales-channel-create-MM237EBQ.mjs} +3 -3
- package/dist/{sales-channel-detail-MXIPZCGA.mjs → sales-channel-detail-65ZFV2OI.mjs} +14 -14
- package/dist/{sales-channel-edit-VSHOIR37.mjs → sales-channel-edit-AC2J4N3M.mjs} +3 -3
- package/dist/{sales-channel-list-RLGL7FM3.mjs → sales-channel-list-LXLW7X3U.mjs} +14 -14
- package/dist/{sales-channel-metadata-M364R4RJ.mjs → sales-channel-metadata-QUAL2RH6.mjs} +13 -13
- package/dist/{shipping-option-type-create-C5WUWON7.mjs → shipping-option-type-create-EU75JC2Q.mjs} +12 -12
- package/dist/{shipping-option-type-detail-PENS2K73.mjs → shipping-option-type-detail-5GYEWATD.mjs} +13 -13
- package/dist/{shipping-option-type-edit-CIU5EHRP.mjs → shipping-option-type-edit-YR4JXT5M.mjs} +12 -12
- package/dist/{shipping-option-type-list-DIOX7VG7.mjs → shipping-option-type-list-BLC4Z5QW.mjs} +13 -13
- package/dist/{shipping-profile-metadata-75G2NNMA.mjs → shipping-profile-metadata-64YRWPDA.mjs} +12 -12
- package/dist/store-add-locales-TSMLNFZP.mjs +81 -0
- package/dist/{store-detail-JSNPOB2F.mjs → store-detail-3SS53LZR.mjs} +13 -13
- package/dist/{store-edit-5ZS562ZO.mjs → store-edit-SMEWFETF.mjs} +1 -1
- package/dist/{store-metadata-CYXTVJUE.mjs → store-metadata-IJGVDDA6.mjs} +12 -12
- package/dist/{tax-region-create-DWGL4EUT.mjs → tax-region-create-XLYIS5XX.mjs} +13 -13
- package/dist/{tax-region-detail-2AE2EFI3.mjs → tax-region-detail-66FKEGFB.mjs} +29 -28
- package/dist/{tax-region-edit-EEVEEU2Q.mjs → tax-region-edit-GBR4EDW7.mjs} +13 -13
- package/dist/{tax-region-province-detail-4ERSEQFF.mjs → tax-region-province-detail-OBA7Q7MQ.mjs} +29 -28
- package/dist/{tax-region-tax-override-create-PHCGEF7V.mjs → tax-region-tax-override-create-34WYD2QZ.mjs} +28 -27
- package/dist/{tax-region-tax-override-edit-SMRPSILC.mjs → tax-region-tax-override-edit-6WJVOGWA.mjs} +27 -26
- package/dist/translation-list-J65VNNAX.mjs +527 -0
- package/dist/{translations-edit-KECSHYZY.mjs → translations-edit-6P3KC4MO.mjs} +280 -304
- package/dist/{user-detail-BJUXLZZQ.mjs → user-detail-VMOJFHIJ.mjs} +2 -2
- package/dist/{user-metadata-2WPJOEJA.mjs → user-metadata-UOPVFX2L.mjs} +12 -12
- package/dist/{workflow-execution-detail-H2AKEZJX.mjs → workflow-execution-detail-WAQ7IG4T.mjs} +12 -12
- package/package.json +9 -9
- package/src/components/data-grid/components/data-grid-cell-container.tsx +7 -10
- package/src/components/data-grid/components/data-grid-multiline-cell.tsx +103 -0
- package/src/components/data-grid/components/data-grid-readonly-cell.tsx +1 -4
- package/src/components/data-grid/components/data-grid-root.tsx +68 -51
- package/src/components/data-grid/components/data-grid-text-cell.tsx +6 -76
- package/src/components/data-grid/components/index.ts +1 -0
- package/src/components/data-grid/data-grid.tsx +2 -0
- package/src/components/data-grid/hooks/use-data-grid-cell.tsx +12 -0
- package/src/components/data-grid/hooks/use-data-grid-form-handlers.tsx +1 -0
- package/src/components/data-grid/hooks/use-data-grid-keydown-event.tsx +65 -7
- package/src/components/data-grid/types.ts +1 -0
- package/src/components/inputs/combobox/combobox.tsx +185 -95
- package/src/components/layout/main-layout/main-layout.tsx +7 -4
- package/src/components/table/table-cells/order/country-cell/country-cell.tsx +5 -1
- package/src/dashboard-app/routes/get-route.map.tsx +68 -12
- package/src/hooks/api/cloud.tsx +41 -0
- package/src/hooks/api/index.ts +3 -1
- package/src/hooks/api/product-options.tsx +151 -0
- package/src/hooks/api/products.tsx +26 -66
- package/src/hooks/api/translations.tsx +103 -191
- package/src/hooks/table/columns/use-order-table-columns.tsx +5 -3
- package/src/hooks/table/columns/use-product-option-table-columns.tsx +44 -0
- package/src/hooks/table/filters/index.ts +1 -0
- package/src/hooks/table/filters/use-product-option-table-filters.tsx +33 -0
- package/src/hooks/table/query/use-product-option-table-query.tsx +34 -0
- package/src/i18n/translations/$schema.json +290 -32
- package/src/i18n/translations/en.json +73 -5
- package/src/i18n/translations/es.json +9 -1
- package/src/routes/customers/customer-detail/components/customer-order-section/customer-order-section.tsx +1 -1
- package/src/routes/login/components/cloud-auth-login.tsx +114 -0
- package/src/routes/login/login.tsx +9 -1
- package/src/routes/orders/order-create-edit/components/order-edit-create-form/order-edit-item.tsx +1 -0
- package/src/routes/orders/order-edit-billing-address/components/edit-order-billing-address-form/edit-order-billing-address-form.tsx +34 -0
- package/src/routes/orders/order-edit-shipping-address/components/edit-order-shipping-address-form/edit-order-shipping-address-form.tsx +32 -0
- package/src/routes/product-options/common/hooks/use-delete-product-option-action.tsx +41 -0
- package/src/routes/product-options/product-option-create/components/create-product-option-form/create-product-option-details.tsx +71 -0
- package/src/routes/product-options/product-option-create/components/create-product-option-form/create-product-option-form.tsx +97 -0
- package/src/routes/product-options/product-option-create/components/create-product-option-form/create-product-option-organize.tsx +92 -0
- package/src/routes/product-options/product-option-create/components/create-product-option-form/index.ts +1 -0
- package/src/routes/product-options/product-option-create/components/create-product-option-form/schema.ts +15 -0
- package/src/routes/product-options/product-option-create/index.ts +1 -0
- package/src/routes/product-options/product-option-create/product-option-create.tsx +10 -0
- package/src/routes/product-options/product-option-detail/breadcrumb.tsx +14 -0
- package/src/routes/product-options/product-option-detail/components/product-option-general-section/index.ts +1 -0
- package/src/routes/product-options/product-option-detail/components/product-option-general-section/product-option-general-section.tsx +84 -0
- package/src/routes/product-options/product-option-detail/components/product-option-product-section/index.ts +1 -0
- package/src/routes/product-options/product-option-detail/components/product-option-product-section/product-option-product-section.tsx +82 -0
- package/src/routes/product-options/product-option-detail/index.ts +3 -0
- package/src/routes/product-options/product-option-detail/loader.ts +18 -0
- package/src/routes/product-options/product-option-detail/product-option-detail.tsx +50 -0
- package/src/routes/product-options/product-option-edit/components/edit-product-option-form/edit-product-option-details.tsx +94 -0
- package/src/routes/product-options/product-option-edit/components/edit-product-option-form/edit-product-option-form.tsx +116 -0
- package/src/routes/product-options/product-option-edit/components/edit-product-option-form/edit-product-option-organize.tsx +77 -0
- package/src/routes/product-options/product-option-edit/components/edit-product-option-form/index.ts +1 -0
- package/src/routes/product-options/product-option-edit/components/edit-product-option-form/schema.ts +13 -0
- package/src/routes/product-options/product-option-edit/index.ts +1 -0
- package/src/routes/product-options/product-option-edit/product-option-edit.tsx +34 -0
- package/src/routes/product-options/product-option-list/components/product-option-list-table/index.ts +1 -0
- package/src/routes/product-options/product-option-list/components/product-option-list-table/product-option-list-table.tsx +140 -0
- package/src/routes/product-options/product-option-list/index.ts +1 -0
- package/src/routes/product-options/product-option-list/product-option-list.tsx +19 -0
- package/src/routes/product-options/product-option-metadata/index.ts +1 -0
- package/src/routes/product-options/product-option-metadata/product-option-metadata.tsx +27 -0
- package/src/routes/products/product-create/components/product-create-details-form/components/product-create-details-general-section/product-create-general-section.tsx +16 -4
- package/src/routes/products/product-create/components/product-create-details-form/components/product-create-details-variant-section/product-create-details-variant-section.tsx +327 -194
- package/src/routes/products/product-create/components/product-create-form/product-create-form.tsx +4 -7
- package/src/routes/products/product-create/constants.ts +2 -0
- package/src/routes/products/product-create/utils.ts +6 -1
- package/src/routes/products/product-detail/components/product-option-section/product-option-section.tsx +33 -51
- package/src/routes/products/product-options-manage/components/product-options-manage-form/index.ts +1 -0
- package/src/routes/products/product-options-manage/components/product-options-manage-form/product-options-manage-form.tsx +328 -0
- package/src/routes/products/product-options-manage/index.ts +1 -0
- package/src/routes/products/product-options-manage/product-options-manage.tsx +35 -0
- package/src/routes/promotions/promotion-create/components/create-promotion-form/create-promotion-form.tsx +6 -0
- package/src/routes/translations/add-locales/add-locales.tsx +29 -0
- package/src/routes/translations/add-locales/index.tsx +1 -0
- package/src/routes/translations/translation-list/components/active-locales-section/active-locales-section.tsx +42 -17
- package/src/routes/translations/translation-list/components/translation-list-section/translation-list-section.tsx +5 -1
- package/src/routes/translations/translation-list/components/translations-completion-section/translations-completion-section.tsx +182 -121
- package/src/routes/translations/translations-edit/components/translations-edit-form/translations-edit-form.tsx +330 -361
- package/src/routes/translations/translations-edit/translations-edit.tsx +8 -13
- package/dist/chunk-HGRIOEAR.mjs +0 -32
- package/dist/chunk-XDJ7OMBR.mjs +0 -160
- package/dist/login-VNOLI5YG.mjs +0 -201
- package/dist/product-create-option-7AOXAA4S.mjs +0 -151
- package/dist/product-edit-option-LWJT3CYJ.mjs +0 -156
- package/dist/translation-list-UF7FLXOW.mjs +0 -441
- package/src/routes/products/product-create-option/components/create-product-option-form/create-product-option-form.tsx +0 -122
- package/src/routes/products/product-create-option/components/create-product-option-form/index.ts +0 -1
- package/src/routes/products/product-create-option/index.ts +0 -1
- package/src/routes/products/product-create-option/product-create-option.tsx +0 -30
- package/src/routes/products/product-edit-option/components/edit-product-option-form/edit-product-option-form.tsx +0 -123
- package/src/routes/products/product-edit-option/components/edit-product-option-form/index.ts +0 -1
- package/src/routes/products/product-edit-option/index.ts +0 -1
- package/src/routes/products/product-edit-option/product-edit-option.tsx +0 -35
- package/dist/{chunk-FBYTX6K7.mjs → chunk-ORWRXJJT.mjs} +4 -4
- package/dist/{location-list-KVBA6J47.mjs → location-list-3WP65J3E.mjs} +1 -1
- package/dist/{user-list-YTZQNYSO.mjs → user-list-3EAKK4XC.mjs} +3 -3
|
@@ -213,6 +213,7 @@ var useDataGridCell = ({
|
|
|
213
213
|
case "number":
|
|
214
214
|
return numberCharacterRegex.test(key);
|
|
215
215
|
case "text":
|
|
216
|
+
case "multiline-text":
|
|
216
217
|
return textCharacterRegex.test(key);
|
|
217
218
|
default:
|
|
218
219
|
return false;
|
|
@@ -251,6 +252,15 @@ var useDataGridCell = ({
|
|
|
251
252
|
nativeInputValueSetter?.call(inputRef.current, e.key);
|
|
252
253
|
const event = new Event("input", { bubbles: true });
|
|
253
254
|
inputRef.current.dispatchEvent(event);
|
|
255
|
+
} else if (inputRef.current instanceof HTMLTextAreaElement) {
|
|
256
|
+
inputRef.current.value = "";
|
|
257
|
+
const nativeTextAreaValueSetter = Object.getOwnPropertyDescriptor(
|
|
258
|
+
window.HTMLTextAreaElement.prototype,
|
|
259
|
+
"value"
|
|
260
|
+
)?.set;
|
|
261
|
+
nativeTextAreaValueSetter?.call(inputRef.current, e.key);
|
|
262
|
+
const event = new Event("input", { bubbles: true });
|
|
263
|
+
inputRef.current.dispatchEvent(event);
|
|
254
264
|
}
|
|
255
265
|
e.stopPropagation();
|
|
256
266
|
e.preventDefault();
|
|
@@ -1316,6 +1326,7 @@ function convertArrayToPrimitive(values, type) {
|
|
|
1316
1326
|
case "boolean":
|
|
1317
1327
|
return values.map(convertToBoolean);
|
|
1318
1328
|
case "text":
|
|
1329
|
+
case "multiline-text":
|
|
1319
1330
|
return values.map(covertToString);
|
|
1320
1331
|
default:
|
|
1321
1332
|
throw new Error(`Unsupported target type "${type}".`);
|
|
@@ -1437,7 +1448,19 @@ var useDataGridKeydownEvent = ({
|
|
|
1437
1448
|
},
|
|
1438
1449
|
[rangeEnd, matrix, getSelectionValues, setSelectionValues, execute]
|
|
1439
1450
|
);
|
|
1440
|
-
const
|
|
1451
|
+
const handleSpaceKeyText = useCallback9(
|
|
1452
|
+
(anchor2) => {
|
|
1453
|
+
const field = matrix.getCellField(anchor2);
|
|
1454
|
+
const input = queryTool?.getInput(anchor2);
|
|
1455
|
+
if (!field || !input) {
|
|
1456
|
+
return;
|
|
1457
|
+
}
|
|
1458
|
+
createSnapshot(anchor2);
|
|
1459
|
+
input.focus();
|
|
1460
|
+
},
|
|
1461
|
+
[matrix, queryTool, createSnapshot]
|
|
1462
|
+
);
|
|
1463
|
+
const handleSpaceKeyNumber = useCallback9(
|
|
1441
1464
|
(anchor2) => {
|
|
1442
1465
|
const field = matrix.getCellField(anchor2);
|
|
1443
1466
|
const input = queryTool?.getInput(anchor2);
|
|
@@ -1508,9 +1531,12 @@ var useDataGridKeydownEvent = ({
|
|
|
1508
1531
|
case "togglable-number":
|
|
1509
1532
|
handleSpaceKeyTogglableNumber(anchor);
|
|
1510
1533
|
break;
|
|
1511
|
-
case "number":
|
|
1512
1534
|
case "text":
|
|
1513
|
-
|
|
1535
|
+
case "multiline-text":
|
|
1536
|
+
handleSpaceKeyText(anchor);
|
|
1537
|
+
break;
|
|
1538
|
+
case "number":
|
|
1539
|
+
handleSpaceKeyNumber(anchor);
|
|
1514
1540
|
break;
|
|
1515
1541
|
}
|
|
1516
1542
|
},
|
|
@@ -1519,7 +1545,8 @@ var useDataGridKeydownEvent = ({
|
|
|
1519
1545
|
isEditing,
|
|
1520
1546
|
matrix,
|
|
1521
1547
|
handleSpaceKeyBoolean,
|
|
1522
|
-
|
|
1548
|
+
handleSpaceKeyText,
|
|
1549
|
+
handleSpaceKeyNumber,
|
|
1523
1550
|
handleSpaceKeyTogglableNumber
|
|
1524
1551
|
]
|
|
1525
1552
|
);
|
|
@@ -1570,6 +1597,19 @@ var useDataGridKeydownEvent = ({
|
|
|
1570
1597
|
},
|
|
1571
1598
|
[handleMoveOnEnter, handleEditOnEnter, isEditing]
|
|
1572
1599
|
);
|
|
1600
|
+
const handleEnterKeyMultilineText = useCallback9(
|
|
1601
|
+
(e, anchor2) => {
|
|
1602
|
+
if (isEditing) {
|
|
1603
|
+
if (e.shiftKey) {
|
|
1604
|
+
return;
|
|
1605
|
+
}
|
|
1606
|
+
handleMoveOnEnter(e, anchor2);
|
|
1607
|
+
return;
|
|
1608
|
+
}
|
|
1609
|
+
handleEditOnEnter(anchor2);
|
|
1610
|
+
},
|
|
1611
|
+
[handleMoveOnEnter, handleEditOnEnter, isEditing]
|
|
1612
|
+
);
|
|
1573
1613
|
const handleEnterKeyBoolean = useCallback9(
|
|
1574
1614
|
(e, anchor2) => {
|
|
1575
1615
|
const field = matrix.getCellField(anchor2);
|
|
@@ -1603,9 +1643,15 @@ var useDataGridKeydownEvent = ({
|
|
|
1603
1643
|
if (!anchor) {
|
|
1604
1644
|
return;
|
|
1605
1645
|
}
|
|
1606
|
-
e.preventDefault();
|
|
1607
1646
|
const type = matrix.getCellType(anchor);
|
|
1647
|
+
if (type === "multiline-text" && isEditing && e.shiftKey) {
|
|
1648
|
+
return;
|
|
1649
|
+
}
|
|
1650
|
+
e.preventDefault();
|
|
1608
1651
|
switch (type) {
|
|
1652
|
+
case "multiline-text":
|
|
1653
|
+
handleEnterKeyMultilineText(e, anchor);
|
|
1654
|
+
break;
|
|
1609
1655
|
case "togglable-number":
|
|
1610
1656
|
case "text":
|
|
1611
1657
|
case "number":
|
|
@@ -1617,7 +1663,14 @@ var useDataGridKeydownEvent = ({
|
|
|
1617
1663
|
}
|
|
1618
1664
|
}
|
|
1619
1665
|
},
|
|
1620
|
-
[
|
|
1666
|
+
[
|
|
1667
|
+
anchor,
|
|
1668
|
+
matrix,
|
|
1669
|
+
isEditing,
|
|
1670
|
+
handleEnterKeyTextOrNumber,
|
|
1671
|
+
handleEnterKeyBoolean,
|
|
1672
|
+
handleEnterKeyMultilineText
|
|
1673
|
+
]
|
|
1621
1674
|
);
|
|
1622
1675
|
const handleDeleteKeyTogglableNumber = useCallback9(
|
|
1623
1676
|
(anchor2, rangeEnd2) => {
|
|
@@ -1680,6 +1733,7 @@ var useDataGridKeydownEvent = ({
|
|
|
1680
1733
|
}
|
|
1681
1734
|
switch (type) {
|
|
1682
1735
|
case "text":
|
|
1736
|
+
case "multiline-text":
|
|
1683
1737
|
case "number":
|
|
1684
1738
|
handleDeleteKeyTextOrNumber(anchor, rangeEnd);
|
|
1685
1739
|
break;
|
|
@@ -2020,66 +2074,58 @@ var DataGridCellContainer = ({
|
|
|
2020
2074
|
}) => {
|
|
2021
2075
|
const error = get2(errors, field);
|
|
2022
2076
|
const hasError = !!error;
|
|
2023
|
-
return /* @__PURE__ */ jsxs3(
|
|
2024
|
-
|
|
2025
|
-
|
|
2026
|
-
|
|
2027
|
-
|
|
2028
|
-
|
|
2029
|
-
children: [
|
|
2030
|
-
/* @__PURE__ */ jsxs3(
|
|
2031
|
-
"div",
|
|
2077
|
+
return /* @__PURE__ */ jsxs3("div", { className: clx("group/container relative h-full w-full"), children: [
|
|
2078
|
+
/* @__PURE__ */ jsxs3(
|
|
2079
|
+
"div",
|
|
2080
|
+
{
|
|
2081
|
+
className: clx(
|
|
2082
|
+
"bg-ui-bg-base group/cell relative flex h-full w-full gap-x-2 px-4 py-2.5 outline-none",
|
|
2032
2083
|
{
|
|
2033
|
-
|
|
2034
|
-
|
|
2035
|
-
|
|
2036
|
-
|
|
2037
|
-
|
|
2038
|
-
|
|
2039
|
-
"ring-ui-bg-interactive ring-2 ring-inset": isAnchor,
|
|
2040
|
-
"bg-ui-bg-highlight [&:has([data-field]:focus)]:bg-ui-bg-base": isSelected || isAnchor,
|
|
2041
|
-
"bg-ui-bg-subtle": isDragSelected && !isAnchor
|
|
2042
|
-
}
|
|
2043
|
-
),
|
|
2044
|
-
tabIndex: -1,
|
|
2045
|
-
...innerProps,
|
|
2046
|
-
children: [
|
|
2047
|
-
/* @__PURE__ */ jsx3(
|
|
2048
|
-
ErrorMessage,
|
|
2049
|
-
{
|
|
2050
|
-
name: field,
|
|
2051
|
-
errors,
|
|
2052
|
-
render: ({ message }) => {
|
|
2053
|
-
return /* @__PURE__ */ jsx3("div", { className: "flex items-center justify-center", children: /* @__PURE__ */ jsx3(Tooltip2, { content: message, delayDuration: 0, children: /* @__PURE__ */ jsx3(ExclamationCircle, { className: "text-ui-tag-red-icon z-[3]" }) }) });
|
|
2054
|
-
}
|
|
2055
|
-
}
|
|
2056
|
-
),
|
|
2057
|
-
/* @__PURE__ */ jsx3(
|
|
2058
|
-
"div",
|
|
2059
|
-
{
|
|
2060
|
-
className: clx("relative z-[1] flex w-full", {
|
|
2061
|
-
"h-full items-center justify-center": !isMultiLine,
|
|
2062
|
-
"items-start": isMultiLine
|
|
2063
|
-
}),
|
|
2064
|
-
children: /* @__PURE__ */ jsx3(RenderChildren, { isAnchor, placeholder, children })
|
|
2065
|
-
}
|
|
2066
|
-
),
|
|
2067
|
-
/* @__PURE__ */ jsx3(DataGridRowErrorIndicator, { rowErrors }),
|
|
2068
|
-
showOverlay && /* @__PURE__ */ jsx3(
|
|
2069
|
-
"div",
|
|
2070
|
-
{
|
|
2071
|
-
...overlayProps,
|
|
2072
|
-
"data-cell-overlay": "true",
|
|
2073
|
-
className: "absolute inset-0 z-[2]"
|
|
2074
|
-
}
|
|
2075
|
-
)
|
|
2076
|
-
]
|
|
2084
|
+
"items-center": !isMultiLine,
|
|
2085
|
+
"items-start": isMultiLine,
|
|
2086
|
+
"bg-ui-tag-red-bg text-ui-tag-red-text": hasError && !isAnchor && !isSelected && !isDragSelected,
|
|
2087
|
+
"ring-ui-bg-interactive ring-2 ring-inset": isAnchor,
|
|
2088
|
+
"bg-ui-bg-highlight [&:has([data-field]:focus)]:bg-ui-bg-base": isSelected || isAnchor,
|
|
2089
|
+
"bg-ui-bg-subtle": isDragSelected && !isAnchor
|
|
2077
2090
|
}
|
|
2078
2091
|
),
|
|
2079
|
-
|
|
2080
|
-
|
|
2081
|
-
|
|
2082
|
-
|
|
2092
|
+
tabIndex: -1,
|
|
2093
|
+
...innerProps,
|
|
2094
|
+
children: [
|
|
2095
|
+
/* @__PURE__ */ jsx3(
|
|
2096
|
+
ErrorMessage,
|
|
2097
|
+
{
|
|
2098
|
+
name: field,
|
|
2099
|
+
errors,
|
|
2100
|
+
render: ({ message }) => {
|
|
2101
|
+
return /* @__PURE__ */ jsx3("div", { className: "flex items-center justify-center", children: /* @__PURE__ */ jsx3(Tooltip2, { content: message, delayDuration: 0, children: /* @__PURE__ */ jsx3(ExclamationCircle, { className: "text-ui-tag-red-icon z-[3]" }) }) });
|
|
2102
|
+
}
|
|
2103
|
+
}
|
|
2104
|
+
),
|
|
2105
|
+
/* @__PURE__ */ jsx3(
|
|
2106
|
+
"div",
|
|
2107
|
+
{
|
|
2108
|
+
className: clx("relative z-[1] flex h-full w-full", {
|
|
2109
|
+
"items-center justify-center": !isMultiLine,
|
|
2110
|
+
"items-start": isMultiLine
|
|
2111
|
+
}),
|
|
2112
|
+
children: /* @__PURE__ */ jsx3(RenderChildren, { isAnchor, placeholder, children })
|
|
2113
|
+
}
|
|
2114
|
+
),
|
|
2115
|
+
/* @__PURE__ */ jsx3(DataGridRowErrorIndicator, { rowErrors }),
|
|
2116
|
+
showOverlay && /* @__PURE__ */ jsx3(
|
|
2117
|
+
"div",
|
|
2118
|
+
{
|
|
2119
|
+
...overlayProps,
|
|
2120
|
+
"data-cell-overlay": "true",
|
|
2121
|
+
className: "absolute inset-0 z-[2]"
|
|
2122
|
+
}
|
|
2123
|
+
)
|
|
2124
|
+
]
|
|
2125
|
+
}
|
|
2126
|
+
),
|
|
2127
|
+
outerComponent
|
|
2128
|
+
] });
|
|
2083
2129
|
};
|
|
2084
2130
|
var RenderChildren = ({
|
|
2085
2131
|
isAnchor,
|
|
@@ -2250,14 +2296,13 @@ var Inner2 = ({
|
|
|
2250
2296
|
] });
|
|
2251
2297
|
};
|
|
2252
2298
|
|
|
2253
|
-
// src/components/data-grid/components/data-grid-
|
|
2299
|
+
// src/components/data-grid/components/data-grid-multiline-cell.tsx
|
|
2254
2300
|
import { clx as clx2 } from "@medusajs/ui";
|
|
2255
|
-
import { useEffect as useEffect4, useState as useState5 } from "react";
|
|
2301
|
+
import { useCallback as useCallback13, useEffect as useEffect4, useRef as useRef3, useState as useState5 } from "react";
|
|
2256
2302
|
import { Controller as Controller3 } from "react-hook-form";
|
|
2257
2303
|
import { jsx as jsx6 } from "react/jsx-runtime";
|
|
2258
|
-
var
|
|
2259
|
-
context
|
|
2260
|
-
...rest
|
|
2304
|
+
var DataGridMultilineCell = ({
|
|
2305
|
+
context
|
|
2261
2306
|
}) => {
|
|
2262
2307
|
const { field, control, renderProps } = useDataGridCell({
|
|
2263
2308
|
context
|
|
@@ -2270,12 +2315,92 @@ var DataGridNumberCell = ({
|
|
|
2270
2315
|
control,
|
|
2271
2316
|
name: field,
|
|
2272
2317
|
render: ({ field: field2 }) => {
|
|
2273
|
-
return /* @__PURE__ */ jsx6(DataGridCellContainer, { ...container, ...errorProps, children: /* @__PURE__ */ jsx6(Inner3, { field: field2, inputProps: input
|
|
2318
|
+
return /* @__PURE__ */ jsx6(DataGridCellContainer, { ...container, ...errorProps, isMultiLine: true, children: /* @__PURE__ */ jsx6(Inner3, { field: field2, inputProps: input }) });
|
|
2274
2319
|
}
|
|
2275
2320
|
}
|
|
2276
2321
|
);
|
|
2277
2322
|
};
|
|
2278
2323
|
var Inner3 = ({
|
|
2324
|
+
field,
|
|
2325
|
+
inputProps
|
|
2326
|
+
}) => {
|
|
2327
|
+
const { onChange: _, onBlur, ref, value, ...rest } = field;
|
|
2328
|
+
const { ref: inputRef, onBlur: onInputBlur, onChange, ...input } = inputProps;
|
|
2329
|
+
const [localValue, setLocalValue] = useState5(value);
|
|
2330
|
+
const textareaRef = useRef3(null);
|
|
2331
|
+
useEffect4(() => {
|
|
2332
|
+
setLocalValue(value);
|
|
2333
|
+
}, [value]);
|
|
2334
|
+
const combinedRefs = useCombinedRefs(inputRef, ref, textareaRef);
|
|
2335
|
+
const adjustTextareaHeight = useCallback13(() => {
|
|
2336
|
+
const textarea = textareaRef.current;
|
|
2337
|
+
if (textarea) {
|
|
2338
|
+
textarea.style.height = "0px";
|
|
2339
|
+
const newHeight = Math.max(textarea.scrollHeight, 24);
|
|
2340
|
+
textarea.style.height = `${newHeight}px`;
|
|
2341
|
+
}
|
|
2342
|
+
}, []);
|
|
2343
|
+
useEffect4(() => {
|
|
2344
|
+
adjustTextareaHeight();
|
|
2345
|
+
}, [localValue, adjustTextareaHeight]);
|
|
2346
|
+
useEffect4(() => {
|
|
2347
|
+
adjustTextareaHeight();
|
|
2348
|
+
const timeoutId = setTimeout(adjustTextareaHeight, 50);
|
|
2349
|
+
return () => clearTimeout(timeoutId);
|
|
2350
|
+
}, [adjustTextareaHeight]);
|
|
2351
|
+
return /* @__PURE__ */ jsx6(
|
|
2352
|
+
"textarea",
|
|
2353
|
+
{
|
|
2354
|
+
className: clx2(
|
|
2355
|
+
"txt-compact-small text-ui-fg-subtle flex w-full cursor-pointer bg-transparent outline-none",
|
|
2356
|
+
"focus:cursor-text",
|
|
2357
|
+
"resize-none overflow-hidden py-2"
|
|
2358
|
+
),
|
|
2359
|
+
autoComplete: "off",
|
|
2360
|
+
tabIndex: -1,
|
|
2361
|
+
value: localValue ?? "",
|
|
2362
|
+
onChange: (e) => {
|
|
2363
|
+
setLocalValue(e.target.value);
|
|
2364
|
+
adjustTextareaHeight();
|
|
2365
|
+
},
|
|
2366
|
+
ref: combinedRefs,
|
|
2367
|
+
onBlur: () => {
|
|
2368
|
+
onBlur();
|
|
2369
|
+
onInputBlur();
|
|
2370
|
+
onChange(localValue, value);
|
|
2371
|
+
},
|
|
2372
|
+
...input,
|
|
2373
|
+
...rest
|
|
2374
|
+
}
|
|
2375
|
+
);
|
|
2376
|
+
};
|
|
2377
|
+
|
|
2378
|
+
// src/components/data-grid/components/data-grid-number-cell.tsx
|
|
2379
|
+
import { clx as clx3 } from "@medusajs/ui";
|
|
2380
|
+
import { useEffect as useEffect5, useState as useState6 } from "react";
|
|
2381
|
+
import { Controller as Controller4 } from "react-hook-form";
|
|
2382
|
+
import { jsx as jsx7 } from "react/jsx-runtime";
|
|
2383
|
+
var DataGridNumberCell = ({
|
|
2384
|
+
context,
|
|
2385
|
+
...rest
|
|
2386
|
+
}) => {
|
|
2387
|
+
const { field, control, renderProps } = useDataGridCell({
|
|
2388
|
+
context
|
|
2389
|
+
});
|
|
2390
|
+
const errorProps = useDataGridCellError({ context });
|
|
2391
|
+
const { container, input } = renderProps;
|
|
2392
|
+
return /* @__PURE__ */ jsx7(
|
|
2393
|
+
Controller4,
|
|
2394
|
+
{
|
|
2395
|
+
control,
|
|
2396
|
+
name: field,
|
|
2397
|
+
render: ({ field: field2 }) => {
|
|
2398
|
+
return /* @__PURE__ */ jsx7(DataGridCellContainer, { ...container, ...errorProps, children: /* @__PURE__ */ jsx7(Inner4, { field: field2, inputProps: input, ...rest }) });
|
|
2399
|
+
}
|
|
2400
|
+
}
|
|
2401
|
+
);
|
|
2402
|
+
};
|
|
2403
|
+
var Inner4 = ({
|
|
2279
2404
|
field,
|
|
2280
2405
|
inputProps,
|
|
2281
2406
|
...props
|
|
@@ -2288,12 +2413,12 @@ var Inner3 = ({
|
|
|
2288
2413
|
onFocus,
|
|
2289
2414
|
...attributes
|
|
2290
2415
|
} = inputProps;
|
|
2291
|
-
const [localValue, setLocalValue] =
|
|
2292
|
-
|
|
2416
|
+
const [localValue, setLocalValue] = useState6(value);
|
|
2417
|
+
useEffect5(() => {
|
|
2293
2418
|
setLocalValue(value);
|
|
2294
2419
|
}, [value]);
|
|
2295
2420
|
const combinedRefs = useCombinedRefs(inputRef, ref);
|
|
2296
|
-
return /* @__PURE__ */
|
|
2421
|
+
return /* @__PURE__ */ jsx7("div", { className: "size-full", children: /* @__PURE__ */ jsx7(
|
|
2297
2422
|
"input",
|
|
2298
2423
|
{
|
|
2299
2424
|
ref: combinedRefs,
|
|
@@ -2307,7 +2432,7 @@ var Inner3 = ({
|
|
|
2307
2432
|
onFocus,
|
|
2308
2433
|
type: "number",
|
|
2309
2434
|
inputMode: "decimal",
|
|
2310
|
-
className:
|
|
2435
|
+
className: clx3(
|
|
2311
2436
|
"txt-compact-small size-full bg-transparent outline-none",
|
|
2312
2437
|
"placeholder:text-ui-fg-muted"
|
|
2313
2438
|
),
|
|
@@ -2320,8 +2445,8 @@ var Inner3 = ({
|
|
|
2320
2445
|
};
|
|
2321
2446
|
|
|
2322
2447
|
// src/components/data-grid/components/data-grid-readonly-cell.tsx
|
|
2323
|
-
import { clx as
|
|
2324
|
-
import { jsx as
|
|
2448
|
+
import { clx as clx4 } from "@medusajs/ui";
|
|
2449
|
+
import { jsx as jsx8, jsxs as jsxs5 } from "react/jsx-runtime";
|
|
2325
2450
|
var DataGridReadonlyCell = ({
|
|
2326
2451
|
context,
|
|
2327
2452
|
color = "muted",
|
|
@@ -2332,27 +2457,24 @@ var DataGridReadonlyCell = ({
|
|
|
2332
2457
|
return /* @__PURE__ */ jsxs5(
|
|
2333
2458
|
"div",
|
|
2334
2459
|
{
|
|
2335
|
-
className:
|
|
2460
|
+
className: clx4(
|
|
2336
2461
|
"txt-compact-small text-ui-fg-subtle flex w-full cursor-not-allowed justify-between overflow-hidden px-4 py-2.5 outline-none",
|
|
2337
2462
|
color === "muted" && "bg-ui-bg-subtle",
|
|
2338
2463
|
color === "normal" && "bg-ui-bg-base",
|
|
2339
|
-
|
|
2340
|
-
"h-full items-center": !isMultiLine,
|
|
2341
|
-
"items-start": isMultiLine
|
|
2342
|
-
}
|
|
2464
|
+
"h-full items-center"
|
|
2343
2465
|
),
|
|
2344
2466
|
children: [
|
|
2345
|
-
/* @__PURE__ */
|
|
2467
|
+
/* @__PURE__ */ jsx8(
|
|
2346
2468
|
"div",
|
|
2347
2469
|
{
|
|
2348
|
-
className:
|
|
2470
|
+
className: clx4("flex-1", {
|
|
2349
2471
|
truncate: !isMultiLine,
|
|
2350
2472
|
"whitespace-pre-wrap break-words": isMultiLine
|
|
2351
2473
|
}),
|
|
2352
2474
|
children
|
|
2353
2475
|
}
|
|
2354
2476
|
),
|
|
2355
|
-
/* @__PURE__ */
|
|
2477
|
+
/* @__PURE__ */ jsx8(DataGridRowErrorIndicator, { rowErrors })
|
|
2356
2478
|
]
|
|
2357
2479
|
}
|
|
2358
2480
|
);
|
|
@@ -2364,7 +2486,7 @@ import {
|
|
|
2364
2486
|
AdjustmentsDone,
|
|
2365
2487
|
ExclamationCircle as ExclamationCircle2
|
|
2366
2488
|
} from "@medusajs/icons";
|
|
2367
|
-
import { Button as Button2, DropdownMenu, clx as
|
|
2489
|
+
import { Button as Button2, DropdownMenu, clx as clx6 } from "@medusajs/ui";
|
|
2368
2490
|
import {
|
|
2369
2491
|
flexRender,
|
|
2370
2492
|
getCoreRowModel,
|
|
@@ -2374,22 +2496,22 @@ import {
|
|
|
2374
2496
|
useVirtualizer
|
|
2375
2497
|
} from "@tanstack/react-virtual";
|
|
2376
2498
|
import {
|
|
2377
|
-
useCallback as
|
|
2378
|
-
useEffect as
|
|
2499
|
+
useCallback as useCallback15,
|
|
2500
|
+
useEffect as useEffect6,
|
|
2379
2501
|
useMemo as useMemo5,
|
|
2380
|
-
useRef as
|
|
2381
|
-
useState as
|
|
2502
|
+
useRef as useRef4,
|
|
2503
|
+
useState as useState9
|
|
2382
2504
|
} from "react";
|
|
2383
2505
|
import { useTranslation as useTranslation3 } from "react-i18next";
|
|
2384
2506
|
|
|
2385
2507
|
// src/hooks/use-command-history.tsx
|
|
2386
|
-
import { useCallback as
|
|
2508
|
+
import { useCallback as useCallback14, useState as useState7 } from "react";
|
|
2387
2509
|
var useCommandHistory = (maxHistory = 20) => {
|
|
2388
|
-
const [past, setPast] =
|
|
2389
|
-
const [future, setFuture] =
|
|
2510
|
+
const [past, setPast] = useState7([]);
|
|
2511
|
+
const [future, setFuture] = useState7([]);
|
|
2390
2512
|
const canUndo = past.length > 0;
|
|
2391
2513
|
const canRedo = future.length > 0;
|
|
2392
|
-
const undo =
|
|
2514
|
+
const undo = useCallback14(() => {
|
|
2393
2515
|
if (!canUndo) {
|
|
2394
2516
|
return;
|
|
2395
2517
|
}
|
|
@@ -2399,7 +2521,7 @@ var useCommandHistory = (maxHistory = 20) => {
|
|
|
2399
2521
|
setPast(newPast);
|
|
2400
2522
|
setFuture([previous, ...future.slice(0, maxHistory - 1)]);
|
|
2401
2523
|
}, [canUndo, future, past, maxHistory]);
|
|
2402
|
-
const redo =
|
|
2524
|
+
const redo = useCallback14(() => {
|
|
2403
2525
|
if (!canRedo) {
|
|
2404
2526
|
return;
|
|
2405
2527
|
}
|
|
@@ -2409,7 +2531,7 @@ var useCommandHistory = (maxHistory = 20) => {
|
|
|
2409
2531
|
setPast([...past, next].slice(0, maxHistory - 1));
|
|
2410
2532
|
setFuture(newFuture);
|
|
2411
2533
|
}, [canRedo, future, past, maxHistory]);
|
|
2412
|
-
const execute =
|
|
2534
|
+
const execute = useCallback14(
|
|
2413
2535
|
(command) => {
|
|
2414
2536
|
command.execute();
|
|
2415
2537
|
setPast((past2) => [...past2, command].slice(0, maxHistory - 1));
|
|
@@ -2430,7 +2552,7 @@ var useCommandHistory = (maxHistory = 20) => {
|
|
|
2430
2552
|
import { XMark } from "@medusajs/icons";
|
|
2431
2553
|
import {
|
|
2432
2554
|
Button,
|
|
2433
|
-
clx as
|
|
2555
|
+
clx as clx5,
|
|
2434
2556
|
Heading,
|
|
2435
2557
|
IconButton,
|
|
2436
2558
|
Input,
|
|
@@ -2438,9 +2560,9 @@ import {
|
|
|
2438
2560
|
Text
|
|
2439
2561
|
} from "@medusajs/ui";
|
|
2440
2562
|
import { Dialog as RadixDialog } from "radix-ui";
|
|
2441
|
-
import { useMemo as useMemo4, useState as
|
|
2563
|
+
import { useMemo as useMemo4, useState as useState8 } from "react";
|
|
2442
2564
|
import { useTranslation as useTranslation2 } from "react-i18next";
|
|
2443
|
-
import { jsx as
|
|
2565
|
+
import { jsx as jsx9, jsxs as jsxs6 } from "react/jsx-runtime";
|
|
2444
2566
|
var useDataGridShortcuts = () => {
|
|
2445
2567
|
const { t } = useTranslation2();
|
|
2446
2568
|
const shortcuts = useMemo4(
|
|
@@ -2588,7 +2710,7 @@ var DataGridKeyboardShortcutModal = ({
|
|
|
2588
2710
|
onOpenChange
|
|
2589
2711
|
}) => {
|
|
2590
2712
|
const { t } = useTranslation2();
|
|
2591
|
-
const [searchValue, onSearchValueChange] =
|
|
2713
|
+
const [searchValue, onSearchValueChange] = useState8("");
|
|
2592
2714
|
const shortcuts = useDataGridShortcuts();
|
|
2593
2715
|
const searchResults = useMemo4(() => {
|
|
2594
2716
|
return shortcuts.filter(
|
|
@@ -2596,12 +2718,12 @@ var DataGridKeyboardShortcutModal = ({
|
|
|
2596
2718
|
);
|
|
2597
2719
|
}, [searchValue, shortcuts]);
|
|
2598
2720
|
return /* @__PURE__ */ jsxs6(RadixDialog.Root, { open, onOpenChange, children: [
|
|
2599
|
-
/* @__PURE__ */
|
|
2721
|
+
/* @__PURE__ */ jsx9(RadixDialog.Trigger, { asChild: true, children: /* @__PURE__ */ jsx9(Button, { size: "small", variant: "secondary", children: t("dataGrid.shortcuts.label") }) }),
|
|
2600
2722
|
/* @__PURE__ */ jsxs6(RadixDialog.Portal, { children: [
|
|
2601
|
-
/* @__PURE__ */
|
|
2723
|
+
/* @__PURE__ */ jsx9(
|
|
2602
2724
|
RadixDialog.Overlay,
|
|
2603
2725
|
{
|
|
2604
|
-
className:
|
|
2726
|
+
className: clx5(
|
|
2605
2727
|
"bg-ui-bg-overlay fixed inset-0",
|
|
2606
2728
|
"data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0"
|
|
2607
2729
|
)
|
|
@@ -2611,15 +2733,15 @@ var DataGridKeyboardShortcutModal = ({
|
|
|
2611
2733
|
/* @__PURE__ */ jsxs6("div", { className: "flex flex-col gap-y-3 px-6 py-4", children: [
|
|
2612
2734
|
/* @__PURE__ */ jsxs6("div", { className: "flex items-center justify-between", children: [
|
|
2613
2735
|
/* @__PURE__ */ jsxs6("div", { children: [
|
|
2614
|
-
/* @__PURE__ */
|
|
2615
|
-
/* @__PURE__ */
|
|
2736
|
+
/* @__PURE__ */ jsx9(RadixDialog.Title, { asChild: true, children: /* @__PURE__ */ jsx9(Heading, { children: t("app.menus.user.shortcuts") }) }),
|
|
2737
|
+
/* @__PURE__ */ jsx9(RadixDialog.Description, { className: "sr-only" })
|
|
2616
2738
|
] }),
|
|
2617
2739
|
/* @__PURE__ */ jsxs6("div", { className: "flex items-center gap-x-2", children: [
|
|
2618
|
-
/* @__PURE__ */
|
|
2619
|
-
/* @__PURE__ */
|
|
2740
|
+
/* @__PURE__ */ jsx9(Kbd, { children: "esc" }),
|
|
2741
|
+
/* @__PURE__ */ jsx9(RadixDialog.Close, { asChild: true, children: /* @__PURE__ */ jsx9(IconButton, { variant: "transparent", size: "small", children: /* @__PURE__ */ jsx9(XMark, {}) }) })
|
|
2620
2742
|
] })
|
|
2621
2743
|
] }),
|
|
2622
|
-
/* @__PURE__ */
|
|
2744
|
+
/* @__PURE__ */ jsx9("div", { children: /* @__PURE__ */ jsx9(
|
|
2623
2745
|
Input,
|
|
2624
2746
|
{
|
|
2625
2747
|
type: "search",
|
|
@@ -2629,15 +2751,15 @@ var DataGridKeyboardShortcutModal = ({
|
|
|
2629
2751
|
}
|
|
2630
2752
|
) })
|
|
2631
2753
|
] }),
|
|
2632
|
-
/* @__PURE__ */
|
|
2754
|
+
/* @__PURE__ */ jsx9("div", { className: "flex flex-col divide-y overflow-y-auto", children: searchResults.map((shortcut, index) => {
|
|
2633
2755
|
return /* @__PURE__ */ jsxs6(
|
|
2634
2756
|
"div",
|
|
2635
2757
|
{
|
|
2636
2758
|
className: "text-ui-fg-subtle flex items-center justify-between px-6 py-3",
|
|
2637
2759
|
children: [
|
|
2638
|
-
/* @__PURE__ */
|
|
2639
|
-
/* @__PURE__ */
|
|
2640
|
-
return /* @__PURE__ */
|
|
2760
|
+
/* @__PURE__ */ jsx9(Text, { size: "small", children: shortcut.label }),
|
|
2761
|
+
/* @__PURE__ */ jsx9("div", { className: "flex items-center gap-x-1", children: shortcut.keys.Mac?.map((key, index2) => {
|
|
2762
|
+
return /* @__PURE__ */ jsx9("div", { className: "flex items-center gap-x-1", children: /* @__PURE__ */ jsx9(Kbd, { children: key }) }, index2);
|
|
2641
2763
|
}) })
|
|
2642
2764
|
]
|
|
2643
2765
|
},
|
|
@@ -2650,7 +2772,7 @@ var DataGridKeyboardShortcutModal = ({
|
|
|
2650
2772
|
};
|
|
2651
2773
|
|
|
2652
2774
|
// src/components/data-grid/components/data-grid-root.tsx
|
|
2653
|
-
import { jsx as
|
|
2775
|
+
import { jsx as jsx10, jsxs as jsxs7 } from "react/jsx-runtime";
|
|
2654
2776
|
var ROW_HEIGHT = 40;
|
|
2655
2777
|
var getCommonPinningStyles = (column) => {
|
|
2656
2778
|
const isPinned = column.getIsPinned();
|
|
@@ -2674,13 +2796,15 @@ var DataGridRoot = ({
|
|
|
2674
2796
|
onEditingChange,
|
|
2675
2797
|
disableInteractions,
|
|
2676
2798
|
multiColumnSelection = false,
|
|
2799
|
+
showColumnsDropdown = true,
|
|
2677
2800
|
totalRowCount,
|
|
2678
2801
|
onFetchMore,
|
|
2679
2802
|
isFetchingMore,
|
|
2680
|
-
hasNextPage
|
|
2803
|
+
hasNextPage,
|
|
2804
|
+
headerContent
|
|
2681
2805
|
}) => {
|
|
2682
2806
|
const isLazyMode = totalRowCount !== void 0;
|
|
2683
|
-
const containerRef =
|
|
2807
|
+
const containerRef = useRef4(null);
|
|
2684
2808
|
const { redo, undo, execute } = useCommandHistory();
|
|
2685
2809
|
const {
|
|
2686
2810
|
register,
|
|
@@ -2689,16 +2813,16 @@ var DataGridRoot = ({
|
|
|
2689
2813
|
setValue: setValue2,
|
|
2690
2814
|
formState: { errors }
|
|
2691
2815
|
} = state;
|
|
2692
|
-
const [internalTrapActive, setTrapActive] =
|
|
2816
|
+
const [internalTrapActive, setTrapActive] = useState9(true);
|
|
2693
2817
|
const trapActive = !disableInteractions && internalTrapActive;
|
|
2694
|
-
const [anchor, setAnchor] =
|
|
2695
|
-
const [rangeEnd, setRangeEnd] =
|
|
2696
|
-
const [dragEnd, setDragEnd] =
|
|
2697
|
-
const [isSelecting, setIsSelecting] =
|
|
2698
|
-
const [isDragging, setIsDragging] =
|
|
2699
|
-
const [isEditing, setIsEditing] =
|
|
2700
|
-
const [columnVisibility, setColumnVisibility] =
|
|
2701
|
-
const [rowVisibility, setRowVisibility] =
|
|
2818
|
+
const [anchor, setAnchor] = useState9(null);
|
|
2819
|
+
const [rangeEnd, setRangeEnd] = useState9(null);
|
|
2820
|
+
const [dragEnd, setDragEnd] = useState9(null);
|
|
2821
|
+
const [isSelecting, setIsSelecting] = useState9(false);
|
|
2822
|
+
const [isDragging, setIsDragging] = useState9(false);
|
|
2823
|
+
const [isEditing, setIsEditing] = useState9(false);
|
|
2824
|
+
const [columnVisibility, setColumnVisibility] = useState9({});
|
|
2825
|
+
const [rowVisibility, setRowVisibility] = useState9({});
|
|
2702
2826
|
const grid = useReactTable({
|
|
2703
2827
|
data,
|
|
2704
2828
|
columns,
|
|
@@ -2750,13 +2874,13 @@ var DataGridRoot = ({
|
|
|
2750
2874
|
}
|
|
2751
2875
|
});
|
|
2752
2876
|
const virtualRows = rowVirtualizer.getVirtualItems();
|
|
2753
|
-
const lazyLoadingRefs =
|
|
2877
|
+
const lazyLoadingRefs = useRef4({
|
|
2754
2878
|
onFetchMore,
|
|
2755
2879
|
hasNextPage,
|
|
2756
2880
|
isFetchingMore,
|
|
2757
2881
|
loadedRowCount: visibleRows.length
|
|
2758
2882
|
});
|
|
2759
|
-
|
|
2883
|
+
useEffect6(() => {
|
|
2760
2884
|
lazyLoadingRefs.current = {
|
|
2761
2885
|
onFetchMore,
|
|
2762
2886
|
hasNextPage,
|
|
@@ -2765,7 +2889,7 @@ var DataGridRoot = ({
|
|
|
2765
2889
|
};
|
|
2766
2890
|
}, [onFetchMore, hasNextPage, isFetchingMore, visibleRows.length]);
|
|
2767
2891
|
const hasData = visibleRows.length > 0;
|
|
2768
|
-
const handleScroll =
|
|
2892
|
+
const handleScroll = useCallback15(() => {
|
|
2769
2893
|
const { onFetchMore: onFetchMore2, hasNextPage: hasNextPage2, isFetchingMore: isFetchingMore2, loadedRowCount } = lazyLoadingRefs.current;
|
|
2770
2894
|
if (!onFetchMore2 || !hasNextPage2 || isFetchingMore2) {
|
|
2771
2895
|
return;
|
|
@@ -2779,7 +2903,7 @@ var DataGridRoot = ({
|
|
|
2779
2903
|
onFetchMore2();
|
|
2780
2904
|
}
|
|
2781
2905
|
}, [lazyLoadingRefs, containerRef]);
|
|
2782
|
-
|
|
2906
|
+
useEffect6(() => {
|
|
2783
2907
|
if (!isLazyMode || !hasData) {
|
|
2784
2908
|
return;
|
|
2785
2909
|
}
|
|
@@ -2841,7 +2965,7 @@ var DataGridRoot = ({
|
|
|
2841
2965
|
[flatRows, columns, multiColumnSelection]
|
|
2842
2966
|
);
|
|
2843
2967
|
const queryTool = useDataGridQueryTool(containerRef);
|
|
2844
|
-
const setSingleRange =
|
|
2968
|
+
const setSingleRange = useCallback15(
|
|
2845
2969
|
(coordinates) => {
|
|
2846
2970
|
setAnchor(coordinates);
|
|
2847
2971
|
setRangeEnd(coordinates);
|
|
@@ -2849,7 +2973,7 @@ var DataGridRoot = ({
|
|
|
2849
2973
|
[]
|
|
2850
2974
|
);
|
|
2851
2975
|
const { errorCount, isHighlighted, toggleErrorHighlighting } = useDataGridErrorHighlighting(matrix, grid, errors);
|
|
2852
|
-
const handleToggleErrorHighlighting =
|
|
2976
|
+
const handleToggleErrorHighlighting = useCallback15(() => {
|
|
2853
2977
|
toggleErrorHighlighting(
|
|
2854
2978
|
rowVisibility,
|
|
2855
2979
|
columnVisibility,
|
|
@@ -2863,7 +2987,7 @@ var DataGridRoot = ({
|
|
|
2863
2987
|
handleResetColumns,
|
|
2864
2988
|
isDisabled: isColumsDisabled
|
|
2865
2989
|
} = useDataGridColumnVisibility(grid, matrix);
|
|
2866
|
-
const handleToggleColumnVisibility =
|
|
2990
|
+
const handleToggleColumnVisibility = useCallback15(
|
|
2867
2991
|
(index) => {
|
|
2868
2992
|
return handleToggleColumn(index);
|
|
2869
2993
|
},
|
|
@@ -2885,7 +3009,7 @@ var DataGridRoot = ({
|
|
|
2885
3009
|
matrix,
|
|
2886
3010
|
form: state
|
|
2887
3011
|
});
|
|
2888
|
-
const onEditingChangeHandler =
|
|
3012
|
+
const onEditingChangeHandler = useCallback15(
|
|
2889
3013
|
(value) => {
|
|
2890
3014
|
if (onEditingChange) {
|
|
2891
3015
|
onEditingChange(value);
|
|
@@ -2973,7 +3097,7 @@ var DataGridRoot = ({
|
|
|
2973
3097
|
const { getCellErrorMetadata, getCellMetadata } = useDataGridCellMetadata({
|
|
2974
3098
|
matrix
|
|
2975
3099
|
});
|
|
2976
|
-
|
|
3100
|
+
useEffect6(() => {
|
|
2977
3101
|
if (!trapActive) {
|
|
2978
3102
|
return;
|
|
2979
3103
|
}
|
|
@@ -2994,7 +3118,7 @@ var DataGridRoot = ({
|
|
|
2994
3118
|
handleCopyEvent,
|
|
2995
3119
|
handlePasteEvent
|
|
2996
3120
|
]);
|
|
2997
|
-
|
|
3121
|
+
useEffect6(() => {
|
|
2998
3122
|
const specialFocusHandler = (e) => {
|
|
2999
3123
|
if (isSpecialFocusKey(e)) {
|
|
3000
3124
|
handleSpecialFocusKeys(e);
|
|
@@ -3006,12 +3130,12 @@ var DataGridRoot = ({
|
|
|
3006
3130
|
window.removeEventListener("keydown", specialFocusHandler);
|
|
3007
3131
|
};
|
|
3008
3132
|
}, [handleSpecialFocusKeys]);
|
|
3009
|
-
const handleHeaderInteractionChange =
|
|
3133
|
+
const handleHeaderInteractionChange = useCallback15((isActive) => {
|
|
3010
3134
|
if (isActive) {
|
|
3011
3135
|
setTrapActive(false);
|
|
3012
3136
|
}
|
|
3013
3137
|
}, []);
|
|
3014
|
-
|
|
3138
|
+
useEffect6(() => {
|
|
3015
3139
|
if (!anchor) {
|
|
3016
3140
|
return;
|
|
3017
3141
|
}
|
|
@@ -3020,7 +3144,7 @@ var DataGridRoot = ({
|
|
|
3020
3144
|
}
|
|
3021
3145
|
setRangeEnd(anchor);
|
|
3022
3146
|
}, [anchor, rangeEnd]);
|
|
3023
|
-
|
|
3147
|
+
useEffect6(() => {
|
|
3024
3148
|
if (!anchor && matrix) {
|
|
3025
3149
|
const coords = matrix.getFirstNavigableCell();
|
|
3026
3150
|
if (coords) {
|
|
@@ -3072,7 +3196,7 @@ var DataGridRoot = ({
|
|
|
3072
3196
|
navigateToField
|
|
3073
3197
|
]
|
|
3074
3198
|
);
|
|
3075
|
-
const handleRestoreGridFocus =
|
|
3199
|
+
const handleRestoreGridFocus = useCallback15(() => {
|
|
3076
3200
|
if (anchor && !trapActive) {
|
|
3077
3201
|
setTrapActive(true);
|
|
3078
3202
|
setSingleRange(anchor);
|
|
@@ -3082,10 +3206,11 @@ var DataGridRoot = ({
|
|
|
3082
3206
|
});
|
|
3083
3207
|
}
|
|
3084
3208
|
}, [anchor, trapActive, setSingleRange, scrollToCoordinates, queryTool]);
|
|
3085
|
-
return /* @__PURE__ */
|
|
3086
|
-
/* @__PURE__ */
|
|
3209
|
+
return /* @__PURE__ */ jsx10(DataGridContext.Provider, { value: values, children: /* @__PURE__ */ jsxs7("div", { className: "bg-ui-bg-subtle flex size-full flex-col", children: [
|
|
3210
|
+
/* @__PURE__ */ jsx10(
|
|
3087
3211
|
DataGridHeader,
|
|
3088
3212
|
{
|
|
3213
|
+
showColumnsDropdown,
|
|
3089
3214
|
columnOptions,
|
|
3090
3215
|
isDisabled: isColumsDisabled,
|
|
3091
3216
|
onToggleColumn: handleToggleColumnVisibility,
|
|
@@ -3093,10 +3218,11 @@ var DataGridRoot = ({
|
|
|
3093
3218
|
onToggleErrorHighlighting: handleToggleErrorHighlighting,
|
|
3094
3219
|
onResetColumns: handleResetColumns,
|
|
3095
3220
|
isHighlighted,
|
|
3096
|
-
onHeaderInteractionChange: handleHeaderInteractionChange
|
|
3221
|
+
onHeaderInteractionChange: handleHeaderInteractionChange,
|
|
3222
|
+
headerContent
|
|
3097
3223
|
}
|
|
3098
3224
|
),
|
|
3099
|
-
/* @__PURE__ */
|
|
3225
|
+
/* @__PURE__ */ jsx10("div", { className: "size-full overflow-hidden", children: /* @__PURE__ */ jsx10(
|
|
3100
3226
|
"div",
|
|
3101
3227
|
{
|
|
3102
3228
|
ref: containerRef,
|
|
@@ -3108,7 +3234,7 @@ var DataGridRoot = ({
|
|
|
3108
3234
|
"data-container": true,
|
|
3109
3235
|
role: "application",
|
|
3110
3236
|
children: /* @__PURE__ */ jsxs7("div", { role: "grid", className: "text-ui-fg-subtle grid", children: [
|
|
3111
|
-
/* @__PURE__ */
|
|
3237
|
+
/* @__PURE__ */ jsx10(
|
|
3112
3238
|
"div",
|
|
3113
3239
|
{
|
|
3114
3240
|
role: "rowgroup",
|
|
@@ -3119,7 +3245,7 @@ var DataGridRoot = ({
|
|
|
3119
3245
|
role: "row",
|
|
3120
3246
|
className: "flex h-10 w-full",
|
|
3121
3247
|
children: [
|
|
3122
|
-
virtualPaddingLeft ? /* @__PURE__ */
|
|
3248
|
+
virtualPaddingLeft ? /* @__PURE__ */ jsx10(
|
|
3123
3249
|
"div",
|
|
3124
3250
|
{
|
|
3125
3251
|
role: "presentation",
|
|
@@ -3131,7 +3257,7 @@ var DataGridRoot = ({
|
|
|
3131
3257
|
const previousVC = array[index - 1];
|
|
3132
3258
|
if (previousVC && vc.index !== previousVC.index + 1) {
|
|
3133
3259
|
acc.push(
|
|
3134
|
-
/* @__PURE__ */
|
|
3260
|
+
/* @__PURE__ */ jsx10(
|
|
3135
3261
|
"div",
|
|
3136
3262
|
{
|
|
3137
3263
|
role: "presentation",
|
|
@@ -3145,7 +3271,7 @@ var DataGridRoot = ({
|
|
|
3145
3271
|
);
|
|
3146
3272
|
}
|
|
3147
3273
|
acc.push(
|
|
3148
|
-
/* @__PURE__ */
|
|
3274
|
+
/* @__PURE__ */ jsx10(
|
|
3149
3275
|
"div",
|
|
3150
3276
|
{
|
|
3151
3277
|
role: "columnheader",
|
|
@@ -3165,7 +3291,7 @@ var DataGridRoot = ({
|
|
|
3165
3291
|
);
|
|
3166
3292
|
return acc;
|
|
3167
3293
|
}, []),
|
|
3168
|
-
virtualPaddingRight ? /* @__PURE__ */
|
|
3294
|
+
virtualPaddingRight ? /* @__PURE__ */ jsx10(
|
|
3169
3295
|
"div",
|
|
3170
3296
|
{
|
|
3171
3297
|
role: "presentation",
|
|
@@ -3181,7 +3307,7 @@ var DataGridRoot = ({
|
|
|
3181
3307
|
))
|
|
3182
3308
|
}
|
|
3183
3309
|
),
|
|
3184
|
-
/* @__PURE__ */
|
|
3310
|
+
/* @__PURE__ */ jsx10(
|
|
3185
3311
|
"div",
|
|
3186
3312
|
{
|
|
3187
3313
|
role: "rowgroup",
|
|
@@ -3192,7 +3318,7 @@ var DataGridRoot = ({
|
|
|
3192
3318
|
children: virtualRows.map((virtualRow) => {
|
|
3193
3319
|
const row = visibleRows[virtualRow.index];
|
|
3194
3320
|
if (!row) {
|
|
3195
|
-
return /* @__PURE__ */
|
|
3321
|
+
return /* @__PURE__ */ jsx10(
|
|
3196
3322
|
DataGridRowSkeleton,
|
|
3197
3323
|
{
|
|
3198
3324
|
virtualRow,
|
|
@@ -3204,7 +3330,7 @@ var DataGridRoot = ({
|
|
|
3204
3330
|
);
|
|
3205
3331
|
}
|
|
3206
3332
|
const rowIndex = flatRows.findIndex((r) => r.id === row.id);
|
|
3207
|
-
return /* @__PURE__ */
|
|
3333
|
+
return /* @__PURE__ */ jsx10(
|
|
3208
3334
|
DataGridRow,
|
|
3209
3335
|
{
|
|
3210
3336
|
row,
|
|
@@ -3237,10 +3363,12 @@ var DataGridHeader = ({
|
|
|
3237
3363
|
isHighlighted,
|
|
3238
3364
|
errorCount,
|
|
3239
3365
|
onToggleErrorHighlighting,
|
|
3240
|
-
onHeaderInteractionChange
|
|
3366
|
+
onHeaderInteractionChange,
|
|
3367
|
+
showColumnsDropdown,
|
|
3368
|
+
headerContent
|
|
3241
3369
|
}) => {
|
|
3242
|
-
const [shortcutsOpen, setShortcutsOpen] =
|
|
3243
|
-
const [columnsOpen, setColumnsOpen] =
|
|
3370
|
+
const [shortcutsOpen, setShortcutsOpen] = useState9(false);
|
|
3371
|
+
const [columnsOpen, setColumnsOpen] = useState9(false);
|
|
3244
3372
|
const { t } = useTranslation3();
|
|
3245
3373
|
const direction = useDocumentDirection();
|
|
3246
3374
|
const hasChanged = columnOptions.some((column) => !column.checked);
|
|
@@ -3253,7 +3381,7 @@ var DataGridHeader = ({
|
|
|
3253
3381
|
setColumnsOpen(value);
|
|
3254
3382
|
};
|
|
3255
3383
|
return /* @__PURE__ */ jsxs7("div", { className: "bg-ui-bg-base flex items-center justify-between border-b p-4", children: [
|
|
3256
|
-
/* @__PURE__ */ jsxs7("div", { className: "flex items-center gap-x-2", children: [
|
|
3384
|
+
showColumnsDropdown && /* @__PURE__ */ jsxs7("div", { className: "flex items-center gap-x-2", children: [
|
|
3257
3385
|
/* @__PURE__ */ jsxs7(
|
|
3258
3386
|
DropdownMenu,
|
|
3259
3387
|
{
|
|
@@ -3261,23 +3389,23 @@ var DataGridHeader = ({
|
|
|
3261
3389
|
open: columnsOpen,
|
|
3262
3390
|
onOpenChange: handleColumnsOpenChange,
|
|
3263
3391
|
children: [
|
|
3264
|
-
/* @__PURE__ */
|
|
3392
|
+
/* @__PURE__ */ jsx10(
|
|
3265
3393
|
ConditionalTooltip,
|
|
3266
3394
|
{
|
|
3267
3395
|
showTooltip: isDisabled,
|
|
3268
3396
|
content: t("dataGrid.columns.disabled"),
|
|
3269
|
-
children: /* @__PURE__ */
|
|
3270
|
-
hasChanged ? /* @__PURE__ */
|
|
3397
|
+
children: /* @__PURE__ */ jsx10(DropdownMenu.Trigger, { asChild: true, disabled: isDisabled, children: /* @__PURE__ */ jsxs7(Button2, { size: "small", variant: "secondary", children: [
|
|
3398
|
+
hasChanged ? /* @__PURE__ */ jsx10(AdjustmentsDone, {}) : /* @__PURE__ */ jsx10(Adjustments, {}),
|
|
3271
3399
|
t("dataGrid.columns.view")
|
|
3272
3400
|
] }) })
|
|
3273
3401
|
}
|
|
3274
3402
|
),
|
|
3275
|
-
/* @__PURE__ */
|
|
3403
|
+
/* @__PURE__ */ jsx10(DropdownMenu.Content, { children: columnOptions.map((column, index) => {
|
|
3276
3404
|
const { checked, disabled, id, name } = column;
|
|
3277
3405
|
if (disabled) {
|
|
3278
3406
|
return null;
|
|
3279
3407
|
}
|
|
3280
|
-
return /* @__PURE__ */
|
|
3408
|
+
return /* @__PURE__ */ jsx10(
|
|
3281
3409
|
DropdownMenu.CheckboxItem,
|
|
3282
3410
|
{
|
|
3283
3411
|
checked,
|
|
@@ -3291,7 +3419,7 @@ var DataGridHeader = ({
|
|
|
3291
3419
|
]
|
|
3292
3420
|
}
|
|
3293
3421
|
),
|
|
3294
|
-
hasChanged && /* @__PURE__ */
|
|
3422
|
+
hasChanged && /* @__PURE__ */ jsx10(
|
|
3295
3423
|
Button2,
|
|
3296
3424
|
{
|
|
3297
3425
|
size: "small",
|
|
@@ -3304,7 +3432,8 @@ var DataGridHeader = ({
|
|
|
3304
3432
|
}
|
|
3305
3433
|
)
|
|
3306
3434
|
] }),
|
|
3307
|
-
|
|
3435
|
+
headerContent,
|
|
3436
|
+
/* @__PURE__ */ jsxs7("div", { className: "ml-auto flex items-center gap-x-2", children: [
|
|
3308
3437
|
errorCount > 0 && /* @__PURE__ */ jsxs7(
|
|
3309
3438
|
Button2,
|
|
3310
3439
|
{
|
|
@@ -3312,18 +3441,18 @@ var DataGridHeader = ({
|
|
|
3312
3441
|
variant: "secondary",
|
|
3313
3442
|
type: "button",
|
|
3314
3443
|
onClick: onToggleErrorHighlighting,
|
|
3315
|
-
className:
|
|
3444
|
+
className: clx6({
|
|
3316
3445
|
"bg-ui-button-neutral-pressed": isHighlighted
|
|
3317
3446
|
}),
|
|
3318
3447
|
children: [
|
|
3319
|
-
/* @__PURE__ */
|
|
3320
|
-
/* @__PURE__ */
|
|
3448
|
+
/* @__PURE__ */ jsx10(ExclamationCircle2, { className: "text-ui-fg-subtle" }),
|
|
3449
|
+
/* @__PURE__ */ jsx10("span", { children: t("dataGrid.errors.count", {
|
|
3321
3450
|
count: errorCount
|
|
3322
3451
|
}) })
|
|
3323
3452
|
]
|
|
3324
3453
|
}
|
|
3325
3454
|
),
|
|
3326
|
-
/* @__PURE__ */
|
|
3455
|
+
/* @__PURE__ */ jsx10(
|
|
3327
3456
|
DataGridKeyboardShortcutModal,
|
|
3328
3457
|
{
|
|
3329
3458
|
open: shortcutsOpen,
|
|
@@ -3346,7 +3475,7 @@ var DataGridCell = ({
|
|
|
3346
3475
|
col: columnIndex
|
|
3347
3476
|
};
|
|
3348
3477
|
const isAnchor = isCellMatch(coords, anchor);
|
|
3349
|
-
return /* @__PURE__ */
|
|
3478
|
+
return /* @__PURE__ */ jsx10(
|
|
3350
3479
|
"div",
|
|
3351
3480
|
{
|
|
3352
3481
|
role: "gridcell",
|
|
@@ -3358,7 +3487,7 @@ var DataGridCell = ({
|
|
|
3358
3487
|
},
|
|
3359
3488
|
"data-row-index": rowIndex,
|
|
3360
3489
|
"data-column-index": columnIndex,
|
|
3361
|
-
className:
|
|
3490
|
+
className: clx6(
|
|
3362
3491
|
"relative flex items-stretch border-b border-r p-0 outline-none"
|
|
3363
3492
|
),
|
|
3364
3493
|
tabIndex: -1,
|
|
@@ -3368,11 +3497,11 @@ var DataGridCell = ({
|
|
|
3368
3497
|
columnIndex,
|
|
3369
3498
|
rowIndex
|
|
3370
3499
|
}),
|
|
3371
|
-
isAnchor && /* @__PURE__ */
|
|
3500
|
+
isAnchor && /* @__PURE__ */ jsx10(
|
|
3372
3501
|
"div",
|
|
3373
3502
|
{
|
|
3374
3503
|
onMouseDown: onDragToFillStart,
|
|
3375
|
-
className:
|
|
3504
|
+
className: clx6(
|
|
3376
3505
|
"bg-ui-fg-interactive absolute bottom-0 right-0 z-[3] size-1.5 cursor-ns-resize",
|
|
3377
3506
|
{
|
|
3378
3507
|
"cursor-nwse-resize": multiColumnSelection
|
|
@@ -3410,7 +3539,7 @@ var DataGridRow = ({
|
|
|
3410
3539
|
},
|
|
3411
3540
|
className: "bg-ui-bg-subtle txt-compact-small absolute flex min-h-10 w-full",
|
|
3412
3541
|
children: [
|
|
3413
|
-
virtualPaddingLeft ? /* @__PURE__ */
|
|
3542
|
+
virtualPaddingLeft ? /* @__PURE__ */ jsx10(
|
|
3414
3543
|
"div",
|
|
3415
3544
|
{
|
|
3416
3545
|
role: "presentation",
|
|
@@ -3424,7 +3553,7 @@ var DataGridRow = ({
|
|
|
3424
3553
|
const previousVC = array[index - 1];
|
|
3425
3554
|
if (previousVC && vc.index !== previousVC.index + 1) {
|
|
3426
3555
|
acc.push(
|
|
3427
|
-
/* @__PURE__ */
|
|
3556
|
+
/* @__PURE__ */ jsx10(
|
|
3428
3557
|
"div",
|
|
3429
3558
|
{
|
|
3430
3559
|
role: "presentation",
|
|
@@ -3438,7 +3567,7 @@ var DataGridRow = ({
|
|
|
3438
3567
|
);
|
|
3439
3568
|
}
|
|
3440
3569
|
acc.push(
|
|
3441
|
-
/* @__PURE__ */
|
|
3570
|
+
/* @__PURE__ */ jsx10(
|
|
3442
3571
|
DataGridCell,
|
|
3443
3572
|
{
|
|
3444
3573
|
cell,
|
|
@@ -3453,7 +3582,7 @@ var DataGridRow = ({
|
|
|
3453
3582
|
);
|
|
3454
3583
|
return acc;
|
|
3455
3584
|
}, []),
|
|
3456
|
-
virtualPaddingRight ? /* @__PURE__ */
|
|
3585
|
+
virtualPaddingRight ? /* @__PURE__ */ jsx10(
|
|
3457
3586
|
"div",
|
|
3458
3587
|
{
|
|
3459
3588
|
role: "presentation",
|
|
@@ -3480,7 +3609,7 @@ var DataGridRowSkeleton = ({
|
|
|
3480
3609
|
},
|
|
3481
3610
|
className: "bg-ui-bg-subtle txt-compact-small absolute flex h-10 w-full",
|
|
3482
3611
|
children: [
|
|
3483
|
-
virtualPaddingLeft ? /* @__PURE__ */
|
|
3612
|
+
virtualPaddingLeft ? /* @__PURE__ */ jsx10(
|
|
3484
3613
|
"div",
|
|
3485
3614
|
{
|
|
3486
3615
|
role: "presentation",
|
|
@@ -3492,7 +3621,7 @@ var DataGridRowSkeleton = ({
|
|
|
3492
3621
|
const elements = [];
|
|
3493
3622
|
if (previousVC && vc.index !== previousVC.index + 1) {
|
|
3494
3623
|
elements.push(
|
|
3495
|
-
/* @__PURE__ */
|
|
3624
|
+
/* @__PURE__ */ jsx10(
|
|
3496
3625
|
"div",
|
|
3497
3626
|
{
|
|
3498
3627
|
role: "presentation",
|
|
@@ -3506,20 +3635,20 @@ var DataGridRowSkeleton = ({
|
|
|
3506
3635
|
);
|
|
3507
3636
|
}
|
|
3508
3637
|
elements.push(
|
|
3509
|
-
/* @__PURE__ */
|
|
3638
|
+
/* @__PURE__ */ jsx10(
|
|
3510
3639
|
"div",
|
|
3511
3640
|
{
|
|
3512
3641
|
role: "gridcell",
|
|
3513
3642
|
style: { width: vc.size },
|
|
3514
3643
|
className: "relative flex items-center border-b border-r p-0 outline-none",
|
|
3515
|
-
children: /* @__PURE__ */
|
|
3644
|
+
children: /* @__PURE__ */ jsx10("div", { className: "flex h-full w-full items-center px-4", children: /* @__PURE__ */ jsx10("div", { className: "bg-ui-bg-component h-4 w-3/4 animate-pulse rounded" }) })
|
|
3516
3645
|
},
|
|
3517
3646
|
`skeleton-cell-${vc.index}`
|
|
3518
3647
|
)
|
|
3519
3648
|
);
|
|
3520
3649
|
return elements;
|
|
3521
3650
|
}),
|
|
3522
|
-
virtualPaddingRight ? /* @__PURE__ */
|
|
3651
|
+
virtualPaddingRight ? /* @__PURE__ */ jsx10(
|
|
3523
3652
|
"div",
|
|
3524
3653
|
{
|
|
3525
3654
|
role: "presentation",
|
|
@@ -3532,103 +3661,45 @@ var DataGridRowSkeleton = ({
|
|
|
3532
3661
|
};
|
|
3533
3662
|
|
|
3534
3663
|
// src/components/data-grid/components/data-grid-text-cell.tsx
|
|
3535
|
-
import { clx as
|
|
3536
|
-
import {
|
|
3537
|
-
import { Controller as
|
|
3538
|
-
import { jsx as
|
|
3664
|
+
import { clx as clx7 } from "@medusajs/ui";
|
|
3665
|
+
import { useEffect as useEffect7, useRef as useRef5, useState as useState10 } from "react";
|
|
3666
|
+
import { Controller as Controller5 } from "react-hook-form";
|
|
3667
|
+
import { jsx as jsx11 } from "react/jsx-runtime";
|
|
3539
3668
|
var DataGridTextCell = ({
|
|
3540
|
-
context
|
|
3541
|
-
isMultiLine = false
|
|
3669
|
+
context
|
|
3542
3670
|
}) => {
|
|
3543
3671
|
const { field, control, renderProps } = useDataGridCell({
|
|
3544
3672
|
context
|
|
3545
3673
|
});
|
|
3546
3674
|
const errorProps = useDataGridCellError({ context });
|
|
3547
3675
|
const { container, input } = renderProps;
|
|
3548
|
-
return /* @__PURE__ */
|
|
3549
|
-
|
|
3676
|
+
return /* @__PURE__ */ jsx11(
|
|
3677
|
+
Controller5,
|
|
3550
3678
|
{
|
|
3551
3679
|
control,
|
|
3552
3680
|
name: field,
|
|
3553
3681
|
render: ({ field: field2 }) => {
|
|
3554
|
-
return /* @__PURE__ */
|
|
3555
|
-
DataGridCellContainer,
|
|
3556
|
-
{
|
|
3557
|
-
...container,
|
|
3558
|
-
...errorProps,
|
|
3559
|
-
isMultiLine,
|
|
3560
|
-
children: /* @__PURE__ */ jsx10(Inner4, { field: field2, inputProps: input, isMultiLine })
|
|
3561
|
-
}
|
|
3562
|
-
);
|
|
3682
|
+
return /* @__PURE__ */ jsx11(DataGridCellContainer, { ...container, ...errorProps, children: /* @__PURE__ */ jsx11(Inner5, { field: field2, inputProps: input }) });
|
|
3563
3683
|
}
|
|
3564
3684
|
}
|
|
3565
3685
|
);
|
|
3566
3686
|
};
|
|
3567
|
-
var
|
|
3687
|
+
var Inner5 = ({
|
|
3568
3688
|
field,
|
|
3569
|
-
inputProps
|
|
3570
|
-
isMultiLine
|
|
3689
|
+
inputProps
|
|
3571
3690
|
}) => {
|
|
3572
3691
|
const { onChange: _, onBlur, ref, value, ...rest } = field;
|
|
3573
3692
|
const { ref: inputRef, onBlur: onInputBlur, onChange, ...input } = inputProps;
|
|
3574
|
-
const [localValue, setLocalValue] =
|
|
3575
|
-
const
|
|
3576
|
-
|
|
3693
|
+
const [localValue, setLocalValue] = useState10(value);
|
|
3694
|
+
const inputElRef = useRef5(null);
|
|
3695
|
+
useEffect7(() => {
|
|
3577
3696
|
setLocalValue(value);
|
|
3578
3697
|
}, [value]);
|
|
3579
|
-
const combinedRefs = useCombinedRefs(inputRef, ref);
|
|
3580
|
-
|
|
3581
|
-
const adjustTextareaHeight = useCallback15(() => {
|
|
3582
|
-
const textarea = textareaRef.current;
|
|
3583
|
-
if (textarea) {
|
|
3584
|
-
textarea.style.height = "0px";
|
|
3585
|
-
const newHeight = Math.max(textarea.scrollHeight, 24);
|
|
3586
|
-
textarea.style.height = `${newHeight}px`;
|
|
3587
|
-
}
|
|
3588
|
-
}, []);
|
|
3589
|
-
useEffect6(() => {
|
|
3590
|
-
if (isMultiLine) {
|
|
3591
|
-
adjustTextareaHeight();
|
|
3592
|
-
}
|
|
3593
|
-
}, [localValue, isMultiLine, adjustTextareaHeight]);
|
|
3594
|
-
useEffect6(() => {
|
|
3595
|
-
if (isMultiLine) {
|
|
3596
|
-
adjustTextareaHeight();
|
|
3597
|
-
const timeoutId = setTimeout(adjustTextareaHeight, 50);
|
|
3598
|
-
return () => clearTimeout(timeoutId);
|
|
3599
|
-
}
|
|
3600
|
-
}, [isMultiLine, adjustTextareaHeight]);
|
|
3601
|
-
if (isMultiLine) {
|
|
3602
|
-
return /* @__PURE__ */ jsx10(
|
|
3603
|
-
"textarea",
|
|
3604
|
-
{
|
|
3605
|
-
className: clx6(
|
|
3606
|
-
"txt-compact-small text-ui-fg-subtle flex w-full cursor-pointer bg-transparent outline-none",
|
|
3607
|
-
"focus:cursor-text",
|
|
3608
|
-
"resize-none overflow-hidden py-2"
|
|
3609
|
-
),
|
|
3610
|
-
autoComplete: "off",
|
|
3611
|
-
tabIndex: -1,
|
|
3612
|
-
value: localValue ?? "",
|
|
3613
|
-
onChange: (e) => {
|
|
3614
|
-
setLocalValue(e.target.value);
|
|
3615
|
-
adjustTextareaHeight();
|
|
3616
|
-
},
|
|
3617
|
-
ref: textareaCombinedRefs,
|
|
3618
|
-
onBlur: () => {
|
|
3619
|
-
onBlur();
|
|
3620
|
-
onInputBlur();
|
|
3621
|
-
onChange(localValue, value);
|
|
3622
|
-
},
|
|
3623
|
-
...input,
|
|
3624
|
-
...rest
|
|
3625
|
-
}
|
|
3626
|
-
);
|
|
3627
|
-
}
|
|
3628
|
-
return /* @__PURE__ */ jsx10(
|
|
3698
|
+
const combinedRefs = useCombinedRefs(inputRef, ref, inputElRef);
|
|
3699
|
+
return /* @__PURE__ */ jsx11(
|
|
3629
3700
|
"input",
|
|
3630
3701
|
{
|
|
3631
|
-
className:
|
|
3702
|
+
className: clx7(
|
|
3632
3703
|
"txt-compact-small text-ui-fg-subtle flex size-full cursor-pointer bg-transparent outline-none",
|
|
3633
3704
|
"focus:cursor-text",
|
|
3634
3705
|
"items-center justify-center"
|
|
@@ -3650,11 +3721,11 @@ var Inner4 = ({
|
|
|
3650
3721
|
};
|
|
3651
3722
|
|
|
3652
3723
|
// src/components/data-grid/components/data-grid-textarea-modal-cell.tsx
|
|
3653
|
-
import { clx as
|
|
3724
|
+
import { clx as clx8, Textarea } from "@medusajs/ui";
|
|
3654
3725
|
import { Popover as RadixPopover } from "radix-ui";
|
|
3655
|
-
import { useCallback as useCallback16, useEffect as
|
|
3656
|
-
import { Controller as
|
|
3657
|
-
import { jsx as
|
|
3726
|
+
import { useCallback as useCallback16, useEffect as useEffect8, useRef as useRef6, useState as useState11 } from "react";
|
|
3727
|
+
import { Controller as Controller6 } from "react-hook-form";
|
|
3728
|
+
import { jsx as jsx12, jsxs as jsxs8 } from "react/jsx-runtime";
|
|
3658
3729
|
var DataGridExpandableTextCell = ({
|
|
3659
3730
|
context,
|
|
3660
3731
|
fieldLabel
|
|
@@ -3664,14 +3735,14 @@ var DataGridExpandableTextCell = ({
|
|
|
3664
3735
|
});
|
|
3665
3736
|
const errorProps = useDataGridCellError({ context });
|
|
3666
3737
|
const { container, input } = renderProps;
|
|
3667
|
-
return /* @__PURE__ */
|
|
3668
|
-
|
|
3738
|
+
return /* @__PURE__ */ jsx12(
|
|
3739
|
+
Controller6,
|
|
3669
3740
|
{
|
|
3670
3741
|
control,
|
|
3671
3742
|
name: field,
|
|
3672
3743
|
render: ({ field: field2 }) => {
|
|
3673
|
-
return /* @__PURE__ */
|
|
3674
|
-
|
|
3744
|
+
return /* @__PURE__ */ jsx12(
|
|
3745
|
+
Inner6,
|
|
3675
3746
|
{
|
|
3676
3747
|
field: field2,
|
|
3677
3748
|
inputProps: input,
|
|
@@ -3684,7 +3755,7 @@ var DataGridExpandableTextCell = ({
|
|
|
3684
3755
|
}
|
|
3685
3756
|
);
|
|
3686
3757
|
};
|
|
3687
|
-
var
|
|
3758
|
+
var Inner6 = ({
|
|
3688
3759
|
field,
|
|
3689
3760
|
inputProps,
|
|
3690
3761
|
fieldLabel: _fieldLabel,
|
|
@@ -3695,19 +3766,19 @@ var Inner5 = ({
|
|
|
3695
3766
|
const { ref: inputRef, onBlur: onInputBlur, onChange, ...input } = inputProps;
|
|
3696
3767
|
const { setSingleRange, anchor } = useDataGridContext();
|
|
3697
3768
|
const { row, col } = anchor || { row: 0, col: 0 };
|
|
3698
|
-
const [localValue, setLocalValue] =
|
|
3699
|
-
const [isPopoverOpen, setIsPopoverOpen] =
|
|
3700
|
-
const [popoverValue, setPopoverValue] =
|
|
3701
|
-
const popoverContentRef =
|
|
3702
|
-
|
|
3769
|
+
const [localValue, setLocalValue] = useState11(value || "");
|
|
3770
|
+
const [isPopoverOpen, setIsPopoverOpen] = useState11(false);
|
|
3771
|
+
const [popoverValue, setPopoverValue] = useState11(value || "");
|
|
3772
|
+
const popoverContentRef = useRef6(null);
|
|
3773
|
+
useEffect8(() => {
|
|
3703
3774
|
setLocalValue(value || "");
|
|
3704
3775
|
}, [value]);
|
|
3705
|
-
|
|
3776
|
+
useEffect8(() => {
|
|
3706
3777
|
if (isPopoverOpen) {
|
|
3707
3778
|
setPopoverValue(value || "");
|
|
3708
3779
|
}
|
|
3709
3780
|
}, [isPopoverOpen, value]);
|
|
3710
|
-
|
|
3781
|
+
useEffect8(() => {
|
|
3711
3782
|
if (!isPopoverOpen || !popoverContentRef.current) {
|
|
3712
3783
|
return;
|
|
3713
3784
|
}
|
|
@@ -3785,17 +3856,17 @@ var Inner5 = ({
|
|
|
3785
3856
|
},
|
|
3786
3857
|
children: [
|
|
3787
3858
|
/* @__PURE__ */ jsxs8(DataGridCellContainer, { ...customContainer, ...errorProps, children: [
|
|
3788
|
-
/* @__PURE__ */
|
|
3859
|
+
/* @__PURE__ */ jsx12(RadixPopover.Anchor, { asChild: true, children: /* @__PURE__ */ jsx12(
|
|
3789
3860
|
"div",
|
|
3790
3861
|
{
|
|
3791
|
-
className:
|
|
3862
|
+
className: clx8(
|
|
3792
3863
|
"txt-compact-small text-ui-fg-subtle flex size-full cursor-pointer items-center justify-center bg-transparent outline-none",
|
|
3793
3864
|
"focus:cursor-text"
|
|
3794
3865
|
),
|
|
3795
|
-
children: /* @__PURE__ */
|
|
3866
|
+
children: /* @__PURE__ */ jsx12("span", { className: "w-full truncate text-center", children: truncatedValue })
|
|
3796
3867
|
}
|
|
3797
3868
|
) }),
|
|
3798
|
-
/* @__PURE__ */
|
|
3869
|
+
/* @__PURE__ */ jsx12(
|
|
3799
3870
|
"input",
|
|
3800
3871
|
{
|
|
3801
3872
|
className: "sr-only",
|
|
@@ -3814,10 +3885,10 @@ var Inner5 = ({
|
|
|
3814
3885
|
}
|
|
3815
3886
|
)
|
|
3816
3887
|
] }),
|
|
3817
|
-
/* @__PURE__ */
|
|
3888
|
+
/* @__PURE__ */ jsx12(RadixPopover.Portal, { children: /* @__PURE__ */ jsx12(
|
|
3818
3889
|
RadixPopover.Content,
|
|
3819
3890
|
{
|
|
3820
|
-
className:
|
|
3891
|
+
className: clx8(
|
|
3821
3892
|
"bg-ui-bg-base shadow-elevation-flyout flex max-h-[80vh] w-[600px] overflow-hidden p-0 outline-none"
|
|
3822
3893
|
),
|
|
3823
3894
|
align: "start",
|
|
@@ -3827,7 +3898,7 @@ var Inner5 = ({
|
|
|
3827
3898
|
collisionPadding: 24,
|
|
3828
3899
|
onEscapeKeyDown: handlePopoverSave,
|
|
3829
3900
|
onKeyDown: handlePopoverKeyDown,
|
|
3830
|
-
children: /* @__PURE__ */
|
|
3901
|
+
children: /* @__PURE__ */ jsx12("div", { ref: popoverContentRef, className: "h-full w-full", children: /* @__PURE__ */ jsx12(
|
|
3831
3902
|
Textarea,
|
|
3832
3903
|
{
|
|
3833
3904
|
value: popoverValue,
|
|
@@ -3846,7 +3917,7 @@ var Inner5 = ({
|
|
|
3846
3917
|
};
|
|
3847
3918
|
|
|
3848
3919
|
// src/components/data-grid/data-grid.tsx
|
|
3849
|
-
import { jsx as
|
|
3920
|
+
import { jsx as jsx13 } from "react/jsx-runtime";
|
|
3850
3921
|
var _DataGrid = ({
|
|
3851
3922
|
isLoading,
|
|
3852
3923
|
// Lazy loading props - passed through to DataGridRoot
|
|
@@ -3856,13 +3927,13 @@ var _DataGrid = ({
|
|
|
3856
3927
|
hasNextPage,
|
|
3857
3928
|
...props
|
|
3858
3929
|
}) => {
|
|
3859
|
-
return isLoading ? /* @__PURE__ */
|
|
3930
|
+
return isLoading ? /* @__PURE__ */ jsx13(
|
|
3860
3931
|
DataGridSkeleton,
|
|
3861
3932
|
{
|
|
3862
3933
|
columns: props.columns,
|
|
3863
3934
|
rows: props.data?.length && props.data.length > 0 ? props.data.length : 10
|
|
3864
3935
|
}
|
|
3865
|
-
) : /* @__PURE__ */
|
|
3936
|
+
) : /* @__PURE__ */ jsx13(
|
|
3866
3937
|
DataGridRoot,
|
|
3867
3938
|
{
|
|
3868
3939
|
...props,
|
|
@@ -3876,6 +3947,7 @@ var _DataGrid = ({
|
|
|
3876
3947
|
var DataGrid = Object.assign(_DataGrid, {
|
|
3877
3948
|
BooleanCell: DataGridBooleanCell,
|
|
3878
3949
|
TextCell: DataGridTextCell,
|
|
3950
|
+
MultilineCell: DataGridMultilineCell,
|
|
3879
3951
|
ExpandableTextCell: DataGridExpandableTextCell,
|
|
3880
3952
|
NumberCell: DataGridNumberCell,
|
|
3881
3953
|
CurrencyCell: DataGridCurrencyCell,
|
|
@@ -3921,23 +3993,23 @@ function createDataGridHelper() {
|
|
|
3921
3993
|
import { TaxExclusive, TaxInclusive } from "@medusajs/icons";
|
|
3922
3994
|
import { Tooltip as Tooltip3 } from "@medusajs/ui";
|
|
3923
3995
|
import { useTranslation as useTranslation4 } from "react-i18next";
|
|
3924
|
-
import { jsx as
|
|
3996
|
+
import { jsx as jsx14 } from "react/jsx-runtime";
|
|
3925
3997
|
var IncludesTaxTooltip = ({
|
|
3926
3998
|
includesTax
|
|
3927
3999
|
}) => {
|
|
3928
4000
|
const { t } = useTranslation4();
|
|
3929
|
-
return /* @__PURE__ */
|
|
4001
|
+
return /* @__PURE__ */ jsx14(
|
|
3930
4002
|
Tooltip3,
|
|
3931
4003
|
{
|
|
3932
4004
|
maxWidth: 999,
|
|
3933
4005
|
content: includesTax ? t("general.includesTaxTooltip") : t("general.excludesTaxTooltip"),
|
|
3934
|
-
children: includesTax ? /* @__PURE__ */
|
|
4006
|
+
children: includesTax ? /* @__PURE__ */ jsx14(TaxInclusive, { className: "text-ui-fg-muted shrink-0" }) : /* @__PURE__ */ jsx14(TaxExclusive, { className: "text-ui-fg-muted shrink-0" })
|
|
3935
4007
|
}
|
|
3936
4008
|
);
|
|
3937
4009
|
};
|
|
3938
4010
|
|
|
3939
4011
|
// src/components/data-grid/helpers/create-data-grid-price-columns.tsx
|
|
3940
|
-
import { jsx as
|
|
4012
|
+
import { jsx as jsx15, jsxs as jsxs9 } from "react/jsx-runtime";
|
|
3941
4013
|
var createDataGridPriceColumns = ({
|
|
3942
4014
|
currencies: currencies2,
|
|
3943
4015
|
regions,
|
|
@@ -3969,14 +4041,14 @@ var createDataGridPriceColumns = ({
|
|
|
3969
4041
|
},
|
|
3970
4042
|
type: "number",
|
|
3971
4043
|
header: () => /* @__PURE__ */ jsxs9("div", { className: "flex w-full items-center justify-between gap-3", children: [
|
|
3972
|
-
/* @__PURE__ */
|
|
3973
|
-
/* @__PURE__ */
|
|
4044
|
+
/* @__PURE__ */ jsx15("span", { className: "truncate", title: translatedCurrencyName, children: translatedCurrencyName }),
|
|
4045
|
+
/* @__PURE__ */ jsx15(IncludesTaxTooltip, { includesTax: preference?.is_tax_inclusive })
|
|
3974
4046
|
] }),
|
|
3975
4047
|
cell: (context) => {
|
|
3976
4048
|
if (isReadyOnly?.(context)) {
|
|
3977
|
-
return /* @__PURE__ */
|
|
4049
|
+
return /* @__PURE__ */ jsx15(DataGridReadonlyCell, { context });
|
|
3978
4050
|
}
|
|
3979
|
-
return /* @__PURE__ */
|
|
4051
|
+
return /* @__PURE__ */ jsx15(DataGridCurrencyCell, { code: currency, context });
|
|
3980
4052
|
}
|
|
3981
4053
|
});
|
|
3982
4054
|
}) ?? [],
|
|
@@ -4001,18 +4073,18 @@ var createDataGridPriceColumns = ({
|
|
|
4001
4073
|
},
|
|
4002
4074
|
type: "number",
|
|
4003
4075
|
header: () => /* @__PURE__ */ jsxs9("div", { className: "flex w-full items-center justify-between gap-3", children: [
|
|
4004
|
-
/* @__PURE__ */
|
|
4005
|
-
/* @__PURE__ */
|
|
4076
|
+
/* @__PURE__ */ jsx15("span", { className: "truncate", title: translatedRegionName, children: translatedRegionName }),
|
|
4077
|
+
/* @__PURE__ */ jsx15(IncludesTaxTooltip, { includesTax: preference?.is_tax_inclusive })
|
|
4006
4078
|
] }),
|
|
4007
4079
|
cell: (context) => {
|
|
4008
4080
|
if (isReadyOnly?.(context)) {
|
|
4009
|
-
return /* @__PURE__ */
|
|
4081
|
+
return /* @__PURE__ */ jsx15(DataGridReadonlyCell, { context });
|
|
4010
4082
|
}
|
|
4011
4083
|
const currency = currencies2?.find((c) => c === region.currency_code);
|
|
4012
4084
|
if (!currency) {
|
|
4013
4085
|
return null;
|
|
4014
4086
|
}
|
|
4015
|
-
return /* @__PURE__ */
|
|
4087
|
+
return /* @__PURE__ */ jsx15(
|
|
4016
4088
|
DataGridCurrencyCell,
|
|
4017
4089
|
{
|
|
4018
4090
|
code: region.currency_code,
|