@salla.sa/twilight-theme-engine 1.0.62 → 1.0.64
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/{AddToCartForm-HC24EPIH.js → AddToCartForm-QDOLIEJQ.js} +3 -3
- package/dist/{AddToCartForm-HC24EPIH.js.map → AddToCartForm-QDOLIEJQ.js.map} +1 -1
- package/dist/{BlogAuthorPage-BYPC2H3B.js → BlogAuthorPage-3PXTTKD2.js} +11 -11
- package/dist/{BlogAuthorPage-BYPC2H3B.js.map → BlogAuthorPage-3PXTTKD2.js.map} +1 -1
- package/dist/{BlogCategoryPage-SDOHIF4O.js → BlogCategoryPage-ELIZ66NZ.js} +11 -11
- package/dist/{BlogCategoryPage-SDOHIF4O.js.map → BlogCategoryPage-ELIZ66NZ.js.map} +1 -1
- package/dist/{BlogPage-WMFITGI7.js → BlogPage-QP5FYB6W.js} +9 -9
- package/dist/{BlogPage-WMFITGI7.js.map → BlogPage-QP5FYB6W.js.map} +1 -1
- package/dist/{BlogSinglePage-32GR3ARO.js → BlogSinglePage-WML62TEH.js} +9 -9
- package/dist/{BlogSinglePage-32GR3ARO.js.map → BlogSinglePage-WML62TEH.js.map} +1 -1
- package/dist/{BlogTagPage-FMH7YMYW.js → BlogTagPage-UYB62N2A.js} +11 -11
- package/dist/{BlogTagPage-FMH7YMYW.js.map → BlogTagPage-UYB62N2A.js.map} +1 -1
- package/dist/{BrandsPage-QLO4XO5V.js → BrandsPage-I7TW2URN.js} +10 -10
- package/dist/{BrandsPage-QLO4XO5V.js.map → BrandsPage-I7TW2URN.js.map} +1 -1
- package/dist/{Breadcrumb-6I4ZXJP6.js → Breadcrumb-EH55PVNJ.js} +9 -9
- package/dist/{Breadcrumb-6I4ZXJP6.js.map → Breadcrumb-EH55PVNJ.js.map} +1 -1
- package/dist/{CartItem-FLPJREOC.js → CartItem-N4XSKQTB.js} +9 -9
- package/dist/{CartItem-FLPJREOC.js.map → CartItem-N4XSKQTB.js.map} +1 -1
- package/dist/{CartSummary-4LVQXTO2.js → CartSummary-OM4X2NLC.js} +9 -9
- package/dist/{CartSummary-4LVQXTO2.js.map → CartSummary-OM4X2NLC.js.map} +1 -1
- package/dist/{Copyright-DHXKJXS3.js → Copyright-XE5XNMYG.js} +3 -3
- package/dist/{Copyright-DHXKJXS3.js.map → Copyright-XE5XNMYG.js.map} +1 -1
- package/dist/{CustomerLayout-RIJ2KLKV.js → CustomerLayout-HQAWJ4CV.js} +27 -11
- package/dist/CustomerLayout-HQAWJ4CV.js.map +1 -0
- package/dist/{Footer-OAUEPXMT.js → Footer-4KM2TX4Q.js} +9 -9
- package/dist/{Footer-OAUEPXMT.js.map → Footer-4KM2TX4Q.js.map} +1 -1
- package/dist/{Header-SLIN3ZSS.js → Header-NNACXS5F.js} +6 -6
- package/dist/{Header-SLIN3ZSS.js.map → Header-NNACXS5F.js.map} +1 -1
- package/dist/LoyaltyPage-DIU7FAEL.js +61 -0
- package/dist/LoyaltyPage-DIU7FAEL.js.map +1 -0
- package/dist/LoyaltyPointsPage-EMJEFBLA.js +16 -0
- package/dist/LoyaltyPointsPage-EMJEFBLA.js.map +1 -0
- package/dist/{MainMenu-EHFPPGYJ.js → MainMenu-7W5ENSPK.js} +3 -3
- package/dist/{MainMenu-EHFPPGYJ.js.map → MainMenu-7W5ENSPK.js.map} +1 -1
- package/dist/{MasterLayout-K737DLVH.js → MasterLayout-QCCMRBYA.js} +9 -9
- package/dist/{MasterLayout-K737DLVH.js.map → MasterLayout-QCCMRBYA.js.map} +1 -1
- package/dist/{MobileMenu-S5CBPTOC.js → MobileMenu-QFOL5UPI.js} +9 -9
- package/dist/{MobileMenu-S5CBPTOC.js.map → MobileMenu-QFOL5UPI.js.map} +1 -1
- package/dist/{NotificationsPage-W2N5QD5U.js → NotificationsPage-VOUFKNUQ.js} +9 -9
- package/dist/{NotificationsPage-W2N5QD5U.js.map → NotificationsPage-VOUFKNUQ.js.map} +1 -1
- package/dist/OrderSinglePage-WYNWGJ6N.js +719 -0
- package/dist/OrderSinglePage-WYNWGJ6N.js.map +1 -0
- package/dist/OrdersPage-BAPUFN4I.js +68 -0
- package/dist/OrdersPage-BAPUFN4I.js.map +1 -0
- package/dist/{PageSingle-6HBQPKK5.js → PageSingle-WPU4OJF4.js} +4 -4
- package/dist/{PageSingle-6HBQPKK5.js.map → PageSingle-WPU4OJF4.js.map} +1 -1
- package/dist/{ProductDetails-HLSACRJJ.js → ProductDetails-NKNCR5QX.js} +10 -3
- package/dist/ProductDetails-NKNCR5QX.js.map +1 -0
- package/dist/{ProfilePage-Z3CXGXWV.js → ProfilePage-ENSVDCJI.js} +9 -9
- package/dist/{ProfilePage-Z3CXGXWV.js.map → ProfilePage-ENSVDCJI.js.map} +1 -1
- package/dist/{SeoCartWidget-SUXBLTDW.js → SeoCartWidget-H7IY2ZR4.js} +12 -12
- package/dist/SeoCartWidget-H7IY2ZR4.js.map +1 -0
- package/dist/{SettingsPage-BNELVWPX.js → SettingsPage-HEWBMFUI.js} +9 -9
- package/dist/{SettingsPage-BNELVWPX.js.map → SettingsPage-HEWBMFUI.js.map} +1 -1
- package/dist/{StoreClosedNotification-PLPV6EJS.js → StoreClosedNotification-VIS7RAEH.js} +10 -10
- package/dist/{StoreClosedNotification-PLPV6EJS.js.map → StoreClosedNotification-VIS7RAEH.js.map} +1 -1
- package/dist/{TestimonialsPage-LRITI3DU.js → TestimonialsPage-TNL7CM6X.js} +4 -4
- package/dist/{TestimonialsPage-LRITI3DU.js.map → TestimonialsPage-TNL7CM6X.js.map} +1 -1
- package/dist/{ThankYouPage-IR2ZJJ47.js → ThankYouPage-VFVXLL6Q.js} +13 -12
- package/dist/ThankYouPage-VFVXLL6Q.js.map +1 -0
- package/dist/{WalletPage-RDG4DJ75.js → WalletPage-CINZCGTU.js} +9 -9
- package/dist/{WalletPage-RDG4DJ75.js.map → WalletPage-CINZCGTU.js.map} +1 -1
- package/dist/{WishlistPage-TCI3MFCX.js → WishlistPage-M37MPJBY.js} +149 -26
- package/dist/WishlistPage-M37MPJBY.js.map +1 -0
- package/dist/api/brands.js +3 -3
- package/dist/api/cart.d.ts +7 -6
- package/dist/api/cart.d.ts.map +1 -1
- package/dist/api/cart.js +3 -3
- package/dist/api/category.js +3 -3
- package/dist/api/loyalty.js +3 -3
- package/dist/api/order.d.ts +22 -0
- package/dist/api/order.d.ts.map +1 -1
- package/dist/api/order.js +3 -3
- package/dist/api/page.js +3 -3
- package/dist/api/product.js +3 -3
- package/dist/api/store.d.ts +12 -0
- package/dist/api/store.d.ts.map +1 -1
- package/dist/api/store.js +1 -1
- package/dist/api/wishlist.js +4 -4
- package/dist/{chunk-2SDIXR52.js → chunk-3A4ZJP5S.js} +4 -4
- package/dist/{chunk-2SDIXR52.js.map → chunk-3A4ZJP5S.js.map} +1 -1
- package/dist/{chunk-DPWX5WRB.js → chunk-6J33ZJB6.js} +12 -10
- package/dist/chunk-6J33ZJB6.js.map +1 -0
- package/dist/{chunk-QVLEF2GR.js → chunk-7ZYIBWZM.js} +16 -12
- package/dist/chunk-7ZYIBWZM.js.map +1 -0
- package/dist/{chunk-6HJLG7KF.js → chunk-ABOMCRUW.js} +6 -6
- package/dist/{chunk-6HJLG7KF.js.map → chunk-ABOMCRUW.js.map} +1 -1
- package/dist/{chunk-OET4G4XC.js → chunk-BE3JDKE2.js} +19 -3
- package/dist/chunk-BE3JDKE2.js.map +1 -0
- package/dist/chunk-EHEXX43T.js +21 -0
- package/dist/chunk-EHEXX43T.js.map +1 -0
- package/dist/{chunk-7OIP65ER.js → chunk-EQ32CL4D.js} +7 -4
- package/dist/chunk-EQ32CL4D.js.map +1 -0
- package/dist/{chunk-PK7EU5TM.js → chunk-GD26FI4J.js} +2 -2
- package/dist/chunk-GD26FI4J.js.map +1 -0
- package/dist/{chunk-YMVLYYLU.js → chunk-GOPUP26T.js} +4 -4
- package/dist/chunk-GOPUP26T.js.map +1 -0
- package/dist/{chunk-WH225GEC.js → chunk-I62RENKM.js} +3 -3
- package/dist/{chunk-WH225GEC.js.map → chunk-I62RENKM.js.map} +1 -1
- package/dist/{chunk-TDZSHACC.js → chunk-IC7YN4OQ.js} +3 -3
- package/dist/{chunk-TDZSHACC.js.map → chunk-IC7YN4OQ.js.map} +1 -1
- package/dist/{chunk-4DHLIY6V.js → chunk-IIYK56TI.js} +4 -3
- package/dist/chunk-IIYK56TI.js.map +1 -0
- package/dist/{chunk-W2B5P54C.js → chunk-KHRIGLYL.js} +3 -3
- package/dist/{chunk-W2B5P54C.js.map → chunk-KHRIGLYL.js.map} +1 -1
- package/dist/{chunk-ZQGMVUPE.js → chunk-KWHCKGLL.js} +3 -3
- package/dist/{chunk-ZQGMVUPE.js.map → chunk-KWHCKGLL.js.map} +1 -1
- package/dist/{chunk-J3WIGP64.js → chunk-LJ525OCU.js} +4 -4
- package/dist/{chunk-J3WIGP64.js.map → chunk-LJ525OCU.js.map} +1 -1
- package/dist/{chunk-VJHDE6UT.js → chunk-N6TNEM5G.js} +12 -3
- package/dist/chunk-N6TNEM5G.js.map +1 -0
- package/dist/{chunk-YH4O3H4R.js → chunk-NPEI4SAZ.js} +3 -3
- package/dist/{chunk-YH4O3H4R.js.map → chunk-NPEI4SAZ.js.map} +1 -1
- package/dist/{chunk-Y7EOX2OE.js → chunk-PDDMAWWF.js} +3 -3
- package/dist/{chunk-Y7EOX2OE.js.map → chunk-PDDMAWWF.js.map} +1 -1
- package/dist/{chunk-JVGZDLFP.js → chunk-PE3LLBNR.js} +3 -3
- package/dist/{chunk-JVGZDLFP.js.map → chunk-PE3LLBNR.js.map} +1 -1
- package/dist/{chunk-3U26OMNO.js → chunk-PWBMSGMU.js} +24 -17
- package/dist/chunk-PWBMSGMU.js.map +1 -0
- package/dist/{chunk-VSJLPWFI.js → chunk-Q5UYV2EN.js} +3 -3
- package/dist/{chunk-VSJLPWFI.js.map → chunk-Q5UYV2EN.js.map} +1 -1
- package/dist/{chunk-GUGZ4CEG.js → chunk-S3CC2YGF.js} +3 -3
- package/dist/{chunk-GUGZ4CEG.js.map → chunk-S3CC2YGF.js.map} +1 -1
- package/dist/{chunk-E2JXP2PP.js → chunk-T6YSHLAI.js} +6 -6
- package/dist/{chunk-E2JXP2PP.js.map → chunk-T6YSHLAI.js.map} +1 -1
- package/dist/{chunk-H5CFMW4M.js → chunk-VKY5OTIN.js} +4 -4
- package/dist/{chunk-H5CFMW4M.js.map → chunk-VKY5OTIN.js.map} +1 -1
- package/dist/{chunk-3ITQB3PY.js → chunk-VLBQPVHM.js} +3 -3
- package/dist/{chunk-3ITQB3PY.js.map → chunk-VLBQPVHM.js.map} +1 -1
- package/dist/{chunk-TLO2M5TJ.js → chunk-W66OHTSM.js} +3 -3
- package/dist/{chunk-TLO2M5TJ.js.map → chunk-W66OHTSM.js.map} +1 -1
- package/dist/{chunk-OIH4XW47.js → chunk-XCS3HZNM.js} +49 -56
- package/dist/chunk-XCS3HZNM.js.map +1 -0
- package/dist/chunk-YZHHK5IP.js +14 -0
- package/dist/{chunk-JSV64SPM.js.map → chunk-YZHHK5IP.js.map} +1 -1
- package/dist/{chunk-TFB3QXYH.js → chunk-ZGHRSRDO.js} +3 -2
- package/dist/chunk-ZGHRSRDO.js.map +1 -0
- package/dist/{chunk-MSMFH6BM.js → chunk-ZJ5KWIEB.js} +5 -5
- package/dist/{chunk-MSMFH6BM.js.map → chunk-ZJ5KWIEB.js.map} +1 -1
- package/dist/components/cart/index.js +1 -1
- package/dist/components/common/index.js +1 -1
- package/dist/components/drawer/index.js +7 -7
- package/dist/components/home/index.js +10 -10
- package/dist/components/layout/CustomerLayout.d.ts.map +1 -1
- package/dist/components/layout/index.js +1 -18
- package/dist/components/layout/index.js.map +1 -1
- package/dist/components/product/ProductDetails.d.ts.map +1 -1
- package/dist/components/product/index.js +8 -8
- package/dist/components/store/index.js +9 -9
- package/dist/{document-class-5KOR5KVY.js → document-class-37KI2E52.js} +9 -9
- package/dist/{document-class-5KOR5KVY.js.map → document-class-37KI2E52.js.map} +1 -1
- package/dist/hooks/index.js +7 -7
- package/dist/hooks/useComments.js +1 -1
- package/dist/hooks/useGtm.js +7 -7
- package/dist/hooks/useMoney.d.ts +3 -3
- package/dist/hooks/useMoney.d.ts.map +1 -1
- package/dist/hooks/useMoney.js +7 -7
- package/dist/hooks/useProduct.d.ts.map +1 -1
- package/dist/hooks/useProduct.js +1 -1
- package/dist/hooks/useStore.js +7 -7
- package/dist/index.js +7 -7
- package/dist/{navigation-QMBOIYJI.js → navigation-ESPAHRXM.js} +5 -5
- package/dist/{navigation-QMBOIYJI.js.map → navigation-ESPAHRXM.js.map} +1 -1
- package/dist/{navigation-XZJCQXY3.js → navigation-YKRXGGSL.js} +4 -4
- package/dist/{navigation-XZJCQXY3.js.map → navigation-YKRXGGSL.js.map} +1 -1
- package/dist/{not-found-ZJXJJYD3.js → not-found-UXBV4766.js} +10 -10
- package/dist/{not-found-ZJXJJYD3.js.map → not-found-UXBV4766.js.map} +1 -1
- package/dist/providers/TwilightProvider.d.ts.map +1 -1
- package/dist/providers/index.js +7 -7
- package/dist/providers/twilight-init.d.ts.map +1 -1
- package/dist/router/route-ids.d.ts +1 -0
- package/dist/router/route-ids.d.ts.map +1 -1
- package/dist/routes/account/orders/OrderSinglePage.d.ts +7 -1
- package/dist/routes/account/orders/OrderSinglePage.d.ts.map +1 -1
- package/dist/routes/account/orders/OrdersPage.d.ts +2 -1
- package/dist/routes/account/orders/OrdersPage.d.ts.map +1 -1
- package/dist/routes/account/orders/loader.d.ts.map +1 -1
- package/dist/routes/account/orders/single/OrderActions.d.ts +7 -0
- package/dist/routes/account/orders/single/OrderActions.d.ts.map +1 -0
- package/dist/routes/account/orders/single/OrderHeader.d.ts +8 -0
- package/dist/routes/account/orders/single/OrderHeader.d.ts.map +1 -0
- package/dist/routes/account/orders/single/OrderItemRow.d.ts +9 -0
- package/dist/routes/account/orders/single/OrderItemRow.d.ts.map +1 -0
- package/dist/routes/account/orders/single/OrderSections.d.ts +23 -0
- package/dist/routes/account/orders/single/OrderSections.d.ts.map +1 -0
- package/dist/routes/account/orders/single/types.d.ts +53 -0
- package/dist/routes/account/orders/single/types.d.ts.map +1 -0
- package/dist/routes/account/orders/types.d.ts +3 -0
- package/dist/routes/account/orders/types.d.ts.map +1 -1
- package/dist/routes/account/orders.js +4 -4
- package/dist/routes/account/wishlist/WishlistPage.d.ts +1 -1
- package/dist/routes/account/wishlist/WishlistPage.d.ts.map +1 -1
- package/dist/routes/account/wishlist/WishlistShare.d.ts +1 -0
- package/dist/routes/account/wishlist/WishlistShare.d.ts.map +1 -1
- package/dist/routes/account.js +11 -11
- package/dist/routes/blog.js +8 -8
- package/dist/routes/brands.js +4 -4
- package/dist/routes/cart/CartPage.d.ts.map +1 -1
- package/dist/routes/cart.js +16 -16
- package/dist/routes/cart.js.map +1 -1
- package/dist/routes/home.js +11 -11
- package/dist/routes/index.d.ts +1 -1
- package/dist/routes/index.d.ts.map +1 -1
- package/dist/routes/index.js +3 -3
- package/dist/routes/loyalty/LoyaltyPage.d.ts +1 -1
- package/dist/routes/loyalty/LoyaltyPage.d.ts.map +1 -1
- package/dist/routes/loyalty/LoyaltyPointsPage.d.ts +3 -0
- package/dist/routes/loyalty/LoyaltyPointsPage.d.ts.map +1 -0
- package/dist/routes/loyalty/index.d.ts +15 -3
- package/dist/routes/loyalty/index.d.ts.map +1 -1
- package/dist/routes/loyalty/loader.d.ts +2 -1
- package/dist/routes/loyalty/loader.d.ts.map +1 -1
- package/dist/routes/loyalty/types.d.ts +3 -0
- package/dist/routes/loyalty/types.d.ts.map +1 -1
- package/dist/routes/loyalty.js +62 -11
- package/dist/routes/loyalty.js.map +1 -1
- package/dist/routes/page.js +4 -4
- package/dist/routes/product/index.d.ts.map +1 -1
- package/dist/routes/product-listing/index.d.ts.map +1 -1
- package/dist/routes/product-listing.js +22 -19
- package/dist/routes/product-listing.js.map +1 -1
- package/dist/routes/product.js +15 -13
- package/dist/routes/product.js.map +1 -1
- package/dist/routes/seo-redirects.js +3 -3
- package/dist/routes/testimonials.js +2 -2
- package/dist/routes/thank-you/ThankYouPage.d.ts.map +1 -1
- package/dist/routes/thank-you.js +4 -4
- package/dist/skeleton.js +11 -11
- package/dist/tanstack/document-class.d.ts.map +1 -1
- package/dist/tanstack/head.d.ts +1 -4
- package/dist/tanstack/head.d.ts.map +1 -1
- package/dist/tanstack/router.d.ts.map +1 -1
- package/dist/tanstack/templates/locale-wrapper.d.ts.map +1 -1
- package/dist/tanstack.js +10 -10
- package/dist/types/index.d.ts +1 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/utils/head.d.ts +3 -0
- package/dist/utils/head.d.ts.map +1 -1
- package/dist/utils/head.js +1 -1
- package/dist/utils/index.js +1 -1
- package/dist/vite/adapters/tanstack.adapter.d.ts.map +1 -1
- package/dist/vite/index.js +88 -11
- package/dist/vite/index.js.map +1 -1
- package/dist/vite/plugins/best-practices/hooks-registry.d.ts.map +1 -1
- package/dist/vite/plugins/component-deps.d.ts +5 -0
- package/dist/vite/plugins/component-deps.d.ts.map +1 -0
- package/package.json +1 -1
- package/dist/CustomerLayout-RIJ2KLKV.js.map +0 -1
- package/dist/LoyaltyPage-BQB7BDUO.js +0 -195
- package/dist/LoyaltyPage-BQB7BDUO.js.map +0 -1
- package/dist/OrderSinglePage-GOGNRVPM.js +0 -502
- package/dist/OrderSinglePage-GOGNRVPM.js.map +0 -1
- package/dist/OrdersPage-YB7WU5QV.js +0 -252
- package/dist/OrdersPage-YB7WU5QV.js.map +0 -1
- package/dist/ProductDetails-HLSACRJJ.js.map +0 -1
- package/dist/SeoCartWidget-SUXBLTDW.js.map +0 -1
- package/dist/ThankYouPage-IR2ZJJ47.js.map +0 -1
- package/dist/WishlistPage-TCI3MFCX.js.map +0 -1
- package/dist/chunk-3U26OMNO.js.map +0 -1
- package/dist/chunk-4DHLIY6V.js.map +0 -1
- package/dist/chunk-7OIP65ER.js.map +0 -1
- package/dist/chunk-DPWX5WRB.js.map +0 -1
- package/dist/chunk-JSV64SPM.js +0 -14
- package/dist/chunk-OET4G4XC.js.map +0 -1
- package/dist/chunk-OIH4XW47.js.map +0 -1
- package/dist/chunk-PK7EU5TM.js.map +0 -1
- package/dist/chunk-QVLEF2GR.js.map +0 -1
- package/dist/chunk-TFB3QXYH.js.map +0 -1
- package/dist/chunk-VJHDE6UT.js.map +0 -1
- package/dist/chunk-YMVLYYLU.js.map +0 -1
|
@@ -1,502 +0,0 @@
|
|
|
1
|
-
import { order } from './chunk-VJHDE6UT.js';
|
|
2
|
-
import { usePageConfig, useDate, useMoney } from './chunk-OIH4XW47.js';
|
|
3
|
-
import './chunk-6HJLG7KF.js';
|
|
4
|
-
import './chunk-JKIRRMBU.js';
|
|
5
|
-
import './chunk-2JV6WZ6O.js';
|
|
6
|
-
import './chunk-UIOLSYKV.js';
|
|
7
|
-
import './chunk-VVZNW5CB.js';
|
|
8
|
-
import './chunk-2XGQSJKH.js';
|
|
9
|
-
import { useNavigate, useLocation } from './chunk-WH225GEC.js';
|
|
10
|
-
import './chunk-TFB3QXYH.js';
|
|
11
|
-
import './chunk-YMVLYYLU.js';
|
|
12
|
-
import './chunk-C5X6CVXC.js';
|
|
13
|
-
import { useUser } from './chunk-UZKTK6YV.js';
|
|
14
|
-
import './chunk-5X2UFNKY.js';
|
|
15
|
-
import './chunk-P3OPJL6I.js';
|
|
16
|
-
import './chunk-WY4IYO3G.js';
|
|
17
|
-
import './chunk-TYLKNVQA.js';
|
|
18
|
-
import './chunk-SR4OTLTJ.js';
|
|
19
|
-
import './chunk-N2S25NXP.js';
|
|
20
|
-
import './chunk-TP3LCGE7.js';
|
|
21
|
-
import './chunk-Z653O7MX.js';
|
|
22
|
-
import './chunk-ZCH7W7DZ.js';
|
|
23
|
-
import './chunk-3U26OMNO.js';
|
|
24
|
-
import './chunk-JWXJPJBO.js';
|
|
25
|
-
import './chunk-CW625T2E.js';
|
|
26
|
-
import './chunk-7V36I5GT.js';
|
|
27
|
-
import './chunk-BVSJPBJ6.js';
|
|
28
|
-
import './chunk-GBWCXUPD.js';
|
|
29
|
-
import './chunk-OAMIDZKW.js';
|
|
30
|
-
import { useTranslation } from './chunk-TYNZ5B2B.js';
|
|
31
|
-
import './chunk-T72DAX7R.js';
|
|
32
|
-
import './chunk-RJPPO3ET.js';
|
|
33
|
-
import { HookSlot } from './chunk-Q7VWURUR.js';
|
|
34
|
-
import './chunk-GU2KUQVD.js';
|
|
35
|
-
import { Image } from './chunk-Y7EOX2OE.js';
|
|
36
|
-
import { Link } from './chunk-AXW67SY7.js';
|
|
37
|
-
import './chunk-BYMOPN2S.js';
|
|
38
|
-
import './chunk-SKLEJJ6M.js';
|
|
39
|
-
import { useAsyncFn } from './chunk-6BZ5TKEV.js';
|
|
40
|
-
import './chunk-FZKRSGLP.js';
|
|
41
|
-
import './chunk-CUG6VOLM.js';
|
|
42
|
-
import './chunk-HX3YKS5W.js';
|
|
43
|
-
import './chunk-OBSAH7K6.js';
|
|
44
|
-
import { useTwilight } from './chunk-DF6FBKDN.js';
|
|
45
|
-
import './chunk-DGUM43GV.js';
|
|
46
|
-
import { memo, useState } from 'react';
|
|
47
|
-
import { useQuery } from '@tanstack/react-query';
|
|
48
|
-
import { SallaButton } from '@salla.sa/twilight-components-react/button';
|
|
49
|
-
import { SallaOrderDetails } from '@salla.sa/twilight-components-react/order-details';
|
|
50
|
-
import { SallaRatingStars } from '@salla.sa/twilight-components-react/rating-stars';
|
|
51
|
-
import { SallaRatingModal } from '@salla.sa/twilight-components-react/rating-modal';
|
|
52
|
-
import { SallaModal } from '@salla.sa/twilight-components-react/modal';
|
|
53
|
-
import { SallaEditOrderButton } from '@salla.sa/twilight-components-react/edit-order-button';
|
|
54
|
-
import { SallaOrderBranch } from '@salla.sa/twilight-components-react/order-branch';
|
|
55
|
-
import { SallaOrderTotalsCard } from '@salla.sa/twilight-components-react/order-totals-card';
|
|
56
|
-
import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
|
|
57
|
-
|
|
58
|
-
var ContentSkeleton = memo(function ContentSkeleton2() {
|
|
59
|
-
return /* @__PURE__ */ jsxs("div", { className: "animate-pulse bg-white rounded-md p-5 space-y-3", children: [
|
|
60
|
-
/* @__PURE__ */ jsx("div", { className: "h-4 bg-gray-200 rounded w-1/3" }),
|
|
61
|
-
/* @__PURE__ */ jsx("div", { className: "h-4 bg-gray-200 rounded w-2/3" }),
|
|
62
|
-
/* @__PURE__ */ jsx("div", { className: "h-4 bg-gray-200 rounded w-1/2" })
|
|
63
|
-
] });
|
|
64
|
-
});
|
|
65
|
-
function OrderSinglePage({ order: order2, page }) {
|
|
66
|
-
const { t, direction } = useTranslation();
|
|
67
|
-
usePageConfig(page);
|
|
68
|
-
const { store } = useTwilight();
|
|
69
|
-
const { data: user } = useUser();
|
|
70
|
-
const navigate = useNavigate();
|
|
71
|
-
const location = useLocation();
|
|
72
|
-
const { format: formatDate } = useDate();
|
|
73
|
-
const { format } = useMoney();
|
|
74
|
-
const [showReorderModal, setShowReorderModal] = useState(false);
|
|
75
|
-
const [showCancelModal, setShowCancelModal] = useState(false);
|
|
76
|
-
const { data: shipments, isLoading: isLoadingShipments } = useQuery({
|
|
77
|
-
...order.queries.shipments(String(order2.id)),
|
|
78
|
-
enabled: order2.features.shippable
|
|
79
|
-
});
|
|
80
|
-
const { data: ratings, isLoading: isLoadingRatings } = useQuery({
|
|
81
|
-
...order.queries.ratings(String(order2.id)),
|
|
82
|
-
enabled: order2.actions.rateable
|
|
83
|
-
});
|
|
84
|
-
const [reorderState, handleReorder] = useAsyncFn(async () => {
|
|
85
|
-
await window.salla?.order.createCartFromOrder(Number(order2.id));
|
|
86
|
-
setShowReorderModal(false);
|
|
87
|
-
navigate("/cart");
|
|
88
|
-
}, [navigate, order2.id]);
|
|
89
|
-
const [cancelState, handleCancel] = useAsyncFn(async () => {
|
|
90
|
-
await window.salla?.order.cancel(Number(order2.id));
|
|
91
|
-
setShowCancelModal(false);
|
|
92
|
-
navigate(location.pathname, { replace: true });
|
|
93
|
-
}, [navigate, order2.id, location.pathname]);
|
|
94
|
-
return /* @__PURE__ */ jsxs("div", { className: "space-y-4", children: [
|
|
95
|
-
/* @__PURE__ */ jsx(HookSlot, { name: "customer:orders.single.details.start" }),
|
|
96
|
-
/* @__PURE__ */ jsxs("div", { className: "flex items-center justify-between gap-3 flex-wrap", children: [
|
|
97
|
-
order2.type === "buy_as_gift" || order2.source?.type === "buy_as_gift" ? /* @__PURE__ */ jsxs("span", { className: "inline-block text-primary", children: [
|
|
98
|
-
/* @__PURE__ */ jsx("i", { className: "sicon-gift-sharing" }),
|
|
99
|
-
"\xA0",
|
|
100
|
-
t("pages.orders.gift_tag", "Gift order")
|
|
101
|
-
] }) : /* @__PURE__ */ jsx("span", {}),
|
|
102
|
-
/* @__PURE__ */ jsx(SallaEditOrderButton, { orderId: String(order2.id) })
|
|
103
|
-
] }),
|
|
104
|
-
/* @__PURE__ */ jsx("table", { className: "min-w-full rounded-md overflow-hidden", children: /* @__PURE__ */ jsx("tbody", { children: /* @__PURE__ */ jsxs("tr", { className: "bg-white overflow-hidden flex md:table-row flex-row md:flex-row flex-wrap md:flex-no-wrap py-1.5 md:py-0", children: [
|
|
105
|
-
/* @__PURE__ */ jsxs("td", { className: "single-order-header-item w-full md:w-auto px-3 md:px-6 py-2 md:py-4 md:h-20 whitespace-nowrap text-sm", children: [
|
|
106
|
-
/* @__PURE__ */ jsx("div", { className: "rtl:ml-2 ltr:mr-2 font-normal text-gray-400", children: t("pages.orders.date") }),
|
|
107
|
-
/* @__PURE__ */ jsx("b", { children: formatDate(order2.created_at.date) })
|
|
108
|
-
] }),
|
|
109
|
-
/* @__PURE__ */ jsxs("td", { className: "single-order-header-item flex justify-between items-center w-full md:w-auto px-3 md:px-6 py-2 md:py-4 md:h-20 whitespace-nowrap text-sm", children: [
|
|
110
|
-
/* @__PURE__ */ jsxs(
|
|
111
|
-
"span",
|
|
112
|
-
{
|
|
113
|
-
className: "text-primary inline-flex items-center rtl:space-x-reverse space-x-1",
|
|
114
|
-
style: { color: order2.status.color },
|
|
115
|
-
children: [
|
|
116
|
-
order2.status.icon && /* @__PURE__ */ jsx("i", { className: `mt-1 ${order2.status.icon}` }),
|
|
117
|
-
/* @__PURE__ */ jsx("span", { children: order2.status.name })
|
|
118
|
-
]
|
|
119
|
-
}
|
|
120
|
-
),
|
|
121
|
-
/* @__PURE__ */ jsxs("div", { className: "flex items-center justify-between", children: [
|
|
122
|
-
order2.type === "quote" && /* @__PURE__ */ jsx("span", { className: "text-red-500 ml-4", children: t("pages.orders.your_order_is_under_review") }),
|
|
123
|
-
/* @__PURE__ */ jsxs("div", { className: "flex space-x-2 rtl:space-x-reverse text-start flex-none px-2", children: [
|
|
124
|
-
order2.urls.digital_content && /* @__PURE__ */ jsx(
|
|
125
|
-
"a",
|
|
126
|
-
{
|
|
127
|
-
href: order2.urls.digital_content,
|
|
128
|
-
target: "_blank",
|
|
129
|
-
rel: "noopener noreferrer",
|
|
130
|
-
className: "salla-button salla-button--small",
|
|
131
|
-
children: /* @__PURE__ */ jsxs("span", { className: "salla-button-text", children: [
|
|
132
|
-
t("pages.orders.digital"),
|
|
133
|
-
/* @__PURE__ */ jsx(
|
|
134
|
-
"i",
|
|
135
|
-
{
|
|
136
|
-
className: user && direction === "rtl" ? "sicon-arrow-up-left" : "sicon-arrow-up-right"
|
|
137
|
-
}
|
|
138
|
-
)
|
|
139
|
-
] })
|
|
140
|
-
}
|
|
141
|
-
),
|
|
142
|
-
order2.urls.tracking?.map((trackingUrl) => /* @__PURE__ */ jsx(
|
|
143
|
-
"a",
|
|
144
|
-
{
|
|
145
|
-
href: trackingUrl,
|
|
146
|
-
target: "_blank",
|
|
147
|
-
rel: "noopener noreferrer",
|
|
148
|
-
className: "salla-button salla-button--small",
|
|
149
|
-
children: /* @__PURE__ */ jsxs("span", { className: "salla-button-text", children: [
|
|
150
|
-
t("pages.orders.tracking"),
|
|
151
|
-
/* @__PURE__ */ jsx(
|
|
152
|
-
"i",
|
|
153
|
-
{
|
|
154
|
-
className: user && direction === "rtl" ? "sicon-arrow-up-left" : "sicon-arrow-up-right"
|
|
155
|
-
}
|
|
156
|
-
)
|
|
157
|
-
] })
|
|
158
|
-
},
|
|
159
|
-
trackingUrl
|
|
160
|
-
))
|
|
161
|
-
] }),
|
|
162
|
-
order2.urls.receipt && /* @__PURE__ */ jsxs(
|
|
163
|
-
SallaButton,
|
|
164
|
-
{
|
|
165
|
-
fill: "outline",
|
|
166
|
-
size: "small",
|
|
167
|
-
onClick: () => window.open(
|
|
168
|
-
order2.urls.receipt,
|
|
169
|
-
"_blank",
|
|
170
|
-
"toolbar=yes, scrollbars=yes, resizable=yes, width=900, height=700"
|
|
171
|
-
),
|
|
172
|
-
children: [
|
|
173
|
-
/* @__PURE__ */ jsx("i", { className: "sicon-printer2 v-align" }),
|
|
174
|
-
t("pages.orders.print")
|
|
175
|
-
]
|
|
176
|
-
}
|
|
177
|
-
)
|
|
178
|
-
] })
|
|
179
|
-
] })
|
|
180
|
-
] }) }) }),
|
|
181
|
-
/* @__PURE__ */ jsx(SallaOrderBranch, { stackCards: true }),
|
|
182
|
-
order2.refund_message && /* @__PURE__ */ jsx("div", { className: "min-w-full rounded-md overflow-hidden", children: /* @__PURE__ */ jsxs("div", { className: "bg-white flex items-center gap-1 rounded-md px-3 py-5 md:px-5", children: [
|
|
183
|
-
/* @__PURE__ */ jsx("i", { className: "sicon-refund h-6 w-6" }),
|
|
184
|
-
/* @__PURE__ */ jsx(
|
|
185
|
-
"p",
|
|
186
|
-
{
|
|
187
|
-
className: "font-medium text-base",
|
|
188
|
-
dangerouslySetInnerHTML: { __html: order2.refund_message }
|
|
189
|
-
}
|
|
190
|
-
)
|
|
191
|
-
] }) }),
|
|
192
|
-
order2.actions.rateable && /* @__PURE__ */ jsxs("div", { className: "rating-header gradient-bg center-between", children: [
|
|
193
|
-
/* @__PURE__ */ jsxs("div", { children: [
|
|
194
|
-
/* @__PURE__ */ jsx("h2", { className: "font-bold mb-1", children: t("pages.order.order_rating_title") }),
|
|
195
|
-
/* @__PURE__ */ jsx("p", { className: "text-sm", children: t("pages.order.order_rating_message") })
|
|
196
|
-
] }),
|
|
197
|
-
/* @__PURE__ */ jsx(
|
|
198
|
-
SallaButton,
|
|
199
|
-
{
|
|
200
|
-
color: "light",
|
|
201
|
-
className: "btn--rounded-full !text-primary",
|
|
202
|
-
onClick: () => window.salla?.event.dispatch("rating::open"),
|
|
203
|
-
children: t("pages.rating.rate")
|
|
204
|
-
}
|
|
205
|
-
)
|
|
206
|
-
] }),
|
|
207
|
-
store.settings?.rating?.allow_update && ratings && ratings.length > 0 && /* @__PURE__ */ jsxs("div", { className: "flex items-start gap-2 bg-blue-50 border border-blue-200 text-blue-500 px-2 py-3 rounded-md text-sm", children: [
|
|
208
|
-
/* @__PURE__ */ jsx("i", { className: "sicon-info" }),
|
|
209
|
-
/* @__PURE__ */ jsxs("p", { children: [
|
|
210
|
-
t("pages.order.can_edit_or_delete_your_review_within"),
|
|
211
|
-
" ",
|
|
212
|
-
store.settings?.rating?.update_period,
|
|
213
|
-
" ",
|
|
214
|
-
t("pages.order.days_since_added"),
|
|
215
|
-
"."
|
|
216
|
-
] })
|
|
217
|
-
] }),
|
|
218
|
-
order2.features.shippable && (isLoadingShipments ? /* @__PURE__ */ jsx(ContentSkeleton, {}) : shipments?.map((shipment) => /* @__PURE__ */ jsx("div", { className: "shipping-orders", children: /* @__PURE__ */ jsxs("div", { className: "flex flex-col md:flex-row justify-between md:items-center bg-white px-5 py-3 border-b border-gray-100 rounded-t-md text-sm space-y-4 md:space-y-0", children: [
|
|
219
|
-
/* @__PURE__ */ jsxs("div", { className: "flex items-center space-x-2 rtl:space-x-reverse", children: [
|
|
220
|
-
/* @__PURE__ */ jsx(
|
|
221
|
-
Image,
|
|
222
|
-
{
|
|
223
|
-
src: shipment.logo,
|
|
224
|
-
className: "max-w-16 max-h-8",
|
|
225
|
-
alt: shipment.name,
|
|
226
|
-
aspectRatio: "2/1"
|
|
227
|
-
}
|
|
228
|
-
),
|
|
229
|
-
/* @__PURE__ */ jsx("span", { children: shipment.name })
|
|
230
|
-
] }),
|
|
231
|
-
/* @__PURE__ */ jsxs("div", { className: "flex space-x-5 rtl:space-x-reverse", children: [
|
|
232
|
-
shipment.number && /* @__PURE__ */ jsxs("span", { children: [
|
|
233
|
-
t("pages.orders.shipment_no"),
|
|
234
|
-
":",
|
|
235
|
-
" ",
|
|
236
|
-
/* @__PURE__ */ jsx("span", { className: "font-bold", children: shipment.number })
|
|
237
|
-
] }),
|
|
238
|
-
shipment.tracking_url && /* @__PURE__ */ jsxs(
|
|
239
|
-
"a",
|
|
240
|
-
{
|
|
241
|
-
href: shipment.tracking_url,
|
|
242
|
-
target: "_blank",
|
|
243
|
-
rel: "noopener noreferrer",
|
|
244
|
-
className: "salla-button salla-button--link",
|
|
245
|
-
children: [
|
|
246
|
-
/* @__PURE__ */ jsx("span", { className: "sicon-shipping rtl:ml-1 ltr:mr-1" }),
|
|
247
|
-
t("pages.orders.tracking_url")
|
|
248
|
-
]
|
|
249
|
-
}
|
|
250
|
-
)
|
|
251
|
-
] })
|
|
252
|
-
] }) }, shipment.id))),
|
|
253
|
-
order2.items.map((item) => /* @__PURE__ */ jsxs(
|
|
254
|
-
"div",
|
|
255
|
-
{
|
|
256
|
-
"data-order-item-id": item.id,
|
|
257
|
-
"data-order-item-product-id": item.product?.id,
|
|
258
|
-
className: "order-item bg-white p-5 border-b border-gray-100 first:rounded-t-md last:rounded-b-md last:border-none",
|
|
259
|
-
children: [
|
|
260
|
-
/* @__PURE__ */ jsxs("div", { className: "mb-5 last:mb-0", children: [
|
|
261
|
-
item.product ? /* @__PURE__ */ jsxs("div", { className: "flex rtl:space-x-reverse space-x-5 mb-4", children: [
|
|
262
|
-
/* @__PURE__ */ jsx(Link, { to: item.product.url, className: "shrink-0", children: /* @__PURE__ */ jsx(
|
|
263
|
-
Image,
|
|
264
|
-
{
|
|
265
|
-
src: item.image || "/images/placeholder.png",
|
|
266
|
-
alt: item.name,
|
|
267
|
-
className: `w-18 h-14 object-${item.image ? "cover" : "contain"} rounded-md`
|
|
268
|
-
}
|
|
269
|
-
) }),
|
|
270
|
-
/* @__PURE__ */ jsxs("div", { children: [
|
|
271
|
-
/* @__PURE__ */ jsx(
|
|
272
|
-
Link,
|
|
273
|
-
{
|
|
274
|
-
to: item.product.url,
|
|
275
|
-
className: "block leading-5 mb-1.5 md:text-base font-semibold transition-colors text-gray-500 hover:text-primary",
|
|
276
|
-
children: item.name
|
|
277
|
-
}
|
|
278
|
-
),
|
|
279
|
-
/* @__PURE__ */ jsx("b", { children: format(item.amounts.amount?.amount, {
|
|
280
|
-
currency: item.amounts.amount?.currency
|
|
281
|
-
}) })
|
|
282
|
-
] })
|
|
283
|
-
] }) : /* @__PURE__ */ jsxs("div", { className: "w-full flex justify-between text-sm py-2.5", children: [
|
|
284
|
-
/* @__PURE__ */ jsx("span", { className: "w-40 inline-block font-normal", children: item.name }),
|
|
285
|
-
/* @__PURE__ */ jsx("b", { children: format(item.amounts.amount?.amount, { currency: item.amounts.amount?.currency }) })
|
|
286
|
-
] }),
|
|
287
|
-
/* @__PURE__ */ jsxs("div", { className: "w-full flex justify-between text-sm py-2.5", children: [
|
|
288
|
-
/* @__PURE__ */ jsx("span", { className: "w-40 inline-block font-normal", children: t("pages.products.quantity", "Quantity") }),
|
|
289
|
-
/* @__PURE__ */ jsx("b", { children: item.quantity })
|
|
290
|
-
] }),
|
|
291
|
-
/* @__PURE__ */ jsxs("div", { className: "flex justify-between text-sm py-2.5", children: [
|
|
292
|
-
/* @__PURE__ */ jsx("span", { className: "w-40 inline-block font-normal", children: t("pages.products.price", "Price") }),
|
|
293
|
-
/* @__PURE__ */ jsx("b", { children: format(item.amounts.cost?.amount, { currency: item.amounts.cost?.currency }) })
|
|
294
|
-
] }),
|
|
295
|
-
/* @__PURE__ */ jsxs("div", { className: "flex justify-between text-sm py-2.5", children: [
|
|
296
|
-
/* @__PURE__ */ jsx("span", { className: "w-40 inline-block font-normal", children: t("pages.cart.total", "Total") }),
|
|
297
|
-
/* @__PURE__ */ jsx("b", { children: format(item.amounts.total?.amount, { currency: item.amounts.total?.currency }) })
|
|
298
|
-
] })
|
|
299
|
-
] }),
|
|
300
|
-
item.availability_date && /* @__PURE__ */ jsxs("div", { className: "flex gap-2 text-sm py-2.5 text-blue-500", children: [
|
|
301
|
-
/* @__PURE__ */ jsx("i", { className: "sicon-info" }),
|
|
302
|
-
/* @__PURE__ */ jsxs("span", { children: [
|
|
303
|
-
t("pages.products.expected_to_be"),
|
|
304
|
-
": ",
|
|
305
|
-
/* @__PURE__ */ jsx("b", { children: item.availability_date })
|
|
306
|
-
] })
|
|
307
|
-
] }),
|
|
308
|
-
item.product?.type === "booking" && item.product_reservations && item.product_reservations.length > 0 && /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
309
|
-
item.booking_location && /* @__PURE__ */ jsx("ul", { className: "font-medium text-xs text-gray-600", children: /* @__PURE__ */ jsxs("li", { className: "py-1 flex justify-between items-baseline", children: [
|
|
310
|
-
/* @__PURE__ */ jsx("span", { className: "mt-5 mb-3.5 text-sm font-bold", children: t("common.elements.location") }),
|
|
311
|
-
/* @__PURE__ */ jsx("span", { className: "text-unicode", children: item.booking_location })
|
|
312
|
-
] }) }),
|
|
313
|
-
/* @__PURE__ */ jsx("h3", { className: "mt-5 mb-3.5 text-sm font-bold", children: item.product_reservations.length > 1 ? t("pages.cart.reservations") : t("pages.cart.item_options") }),
|
|
314
|
-
/* @__PURE__ */ jsx("div", { className: "rounded-md p-4 border border-gray-200 mb-2", children: /* @__PURE__ */ jsx(SallaOrderDetails, { orderDetails: JSON.stringify(item) }) })
|
|
315
|
-
] }),
|
|
316
|
-
!(item.product?.type === "booking" && item.product_reservations && item.product_reservations.length > 0) && /* @__PURE__ */ jsx(SallaOrderDetails, { orderDetails: JSON.stringify(item) }),
|
|
317
|
-
item.options && item.options.length > 0 && /* @__PURE__ */ jsxs("div", { className: "mt-3", children: [
|
|
318
|
-
/* @__PURE__ */ jsx("h3", { className: "mb-2 text-sm font-bold", children: t("pages.cart.item_options", "Product Options") }),
|
|
319
|
-
/* @__PURE__ */ jsx("div", { className: "rounded-md border border-gray-200 divide-y divide-gray-200", children: item.options.map((option) => /* @__PURE__ */ jsxs(
|
|
320
|
-
"div",
|
|
321
|
-
{
|
|
322
|
-
className: "flex items-center justify-between gap-4 px-4 py-2.5 text-sm",
|
|
323
|
-
children: [
|
|
324
|
-
/* @__PURE__ */ jsx("span", { className: "font-normal text-gray-500", children: option.name }),
|
|
325
|
-
option.is_image ? /* @__PURE__ */ jsx(
|
|
326
|
-
Image,
|
|
327
|
-
{
|
|
328
|
-
src: option.value,
|
|
329
|
-
alt: option.name,
|
|
330
|
-
className: "h-7 w-7 rounded-md object-cover"
|
|
331
|
-
}
|
|
332
|
-
) : option.color ? /* @__PURE__ */ jsxs("span", { className: "inline-flex items-center gap-2", children: [
|
|
333
|
-
/* @__PURE__ */ jsx(
|
|
334
|
-
"span",
|
|
335
|
-
{
|
|
336
|
-
className: "h-4 w-4 rounded-full border border-gray-200",
|
|
337
|
-
style: { backgroundColor: option.color }
|
|
338
|
-
}
|
|
339
|
-
),
|
|
340
|
-
/* @__PURE__ */ jsx("b", { children: option.value })
|
|
341
|
-
] }) : /* @__PURE__ */ jsx("b", { children: option.value })
|
|
342
|
-
]
|
|
343
|
-
},
|
|
344
|
-
option.name
|
|
345
|
-
)) })
|
|
346
|
-
] }),
|
|
347
|
-
item.note && /* @__PURE__ */ jsxs("p", { className: "mt-3 text-sm text-gray-500", children: [
|
|
348
|
-
/* @__PURE__ */ jsxs("span", { children: [
|
|
349
|
-
t("common.elements.note", "Note"),
|
|
350
|
-
": "
|
|
351
|
-
] }),
|
|
352
|
-
item.note
|
|
353
|
-
] }),
|
|
354
|
-
item.attachments && item.attachments.length > 0 && /* @__PURE__ */ jsx("div", { className: "flow-root rounded-md px-4 border border-gray-200", children: /* @__PURE__ */ jsx("dl", { className: "text-sm text-dark divide-y divide-border-color", children: item.attachments.map((attachment) => /* @__PURE__ */ jsxs(
|
|
355
|
-
"div",
|
|
356
|
-
{
|
|
357
|
-
className: "py-3.5 md:flex items-center justify-between",
|
|
358
|
-
children: [
|
|
359
|
-
/* @__PURE__ */ jsx("dt", { className: "mb-2 md:mb-0", children: t("pages.products.attachments") }),
|
|
360
|
-
/* @__PURE__ */ jsx(
|
|
361
|
-
"dd",
|
|
362
|
-
{
|
|
363
|
-
className: `font-medium ${attachment.type === "image" ? "text-gray-900" : "text-xs"}`,
|
|
364
|
-
children: attachment.type === "image" && attachment.url ? /* @__PURE__ */ jsx("div", { className: "flex rtl:space-x-reverse space-x-2.5", children: /* @__PURE__ */ jsx("a", { href: attachment.url, target: "_blank", rel: "noopener noreferrer", children: /* @__PURE__ */ jsx(
|
|
365
|
-
Image,
|
|
366
|
-
{
|
|
367
|
-
className: "h-7 w-7 object-cover rounded-md",
|
|
368
|
-
src: attachment.url,
|
|
369
|
-
alt: item.name
|
|
370
|
-
}
|
|
371
|
-
) }) }) : /* @__PURE__ */ jsx("a", { href: attachment.url, children: t("pages.orders.file_url") })
|
|
372
|
-
}
|
|
373
|
-
)
|
|
374
|
-
]
|
|
375
|
-
},
|
|
376
|
-
`${attachment.type}:${attachment.url}`
|
|
377
|
-
)) }) })
|
|
378
|
-
]
|
|
379
|
-
},
|
|
380
|
-
item.id
|
|
381
|
-
)),
|
|
382
|
-
/* @__PURE__ */ jsx(SallaOrderTotalsCard, { amounts: JSON.stringify(order2.amounts), ...{} }),
|
|
383
|
-
(order2.actions.reorderable || order2.actions.cancellable || order2.actions.payable) && /* @__PURE__ */ jsxs("div", { className: "bg-white rounded-md p-5 divide-y divide-border-color space-y-4", children: [
|
|
384
|
-
(order2.actions.reorderable || order2.actions.payable) && /* @__PURE__ */ jsx("div", { className: order2.actions.payable ? "flex-center" : "center-between", children: order2.actions.payable ? (order2.payment?.pending_payment_ends_at ?? 0) === 0 ? /* @__PURE__ */ jsx("span", { className: "text-red-500", children: t("pages.orders.pending_payment_expired") }) : order2.urls.checkout ? /* @__PURE__ */ jsxs(SallaButton, { width: "wide", href: order2.urls.checkout, children: [
|
|
385
|
-
/* @__PURE__ */ jsx("i", { className: "sicon sicon-wallet rtl:ml-2 ltr:mr-2" }),
|
|
386
|
-
/* @__PURE__ */ jsx("span", { children: t("pages.orders.finish_payment") })
|
|
387
|
-
] }) : /* @__PURE__ */ jsx("span", { className: "text-red-500", children: t("pages.orders.pending_payment_expired") }) : user ? /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
388
|
-
/* @__PURE__ */ jsxs("div", { className: "text-sm", children: [
|
|
389
|
-
/* @__PURE__ */ jsx("h3", { className: "font-bold text-lg leading-none mb-1", children: t("pages.orders.reorder") }),
|
|
390
|
-
/* @__PURE__ */ jsx("p", { className: "text-gray-500", children: t("pages.orders.reorder_description") })
|
|
391
|
-
] }),
|
|
392
|
-
/* @__PURE__ */ jsxs(SallaButton, { onClick: () => setShowReorderModal(true), children: [
|
|
393
|
-
/* @__PURE__ */ jsx("i", { className: "sicon sicon-rotate rtl:ml-2 ltr:mr-2" }),
|
|
394
|
-
/* @__PURE__ */ jsx("span", { children: t("pages.orders.reorder") })
|
|
395
|
-
] })
|
|
396
|
-
] }) : null }),
|
|
397
|
-
order2.actions.cancellable && /* @__PURE__ */ jsxs("div", { className: "center-between pt-4", children: [
|
|
398
|
-
/* @__PURE__ */ jsxs("div", { className: "text-sm", children: [
|
|
399
|
-
/* @__PURE__ */ jsx("h3", { className: "font-bold text-lg leading-none mb-1", children: t("pages.orders.cancel") }),
|
|
400
|
-
/* @__PURE__ */ jsx("p", { className: "text-gray-500", children: t("pages.order.order_cancelation_desc") })
|
|
401
|
-
] }),
|
|
402
|
-
/* @__PURE__ */ jsxs(SallaButton, { shape: "link", color: "danger", onClick: () => setShowCancelModal(true), children: [
|
|
403
|
-
/* @__PURE__ */ jsx("i", { className: "sicon sicon-cancel-circle rtl:ml-2 ltr:mr-2" }),
|
|
404
|
-
/* @__PURE__ */ jsx("span", { children: t("pages.orders.cancel") })
|
|
405
|
-
] })
|
|
406
|
-
] })
|
|
407
|
-
] }),
|
|
408
|
-
isLoadingRatings ? /* @__PURE__ */ jsx(ContentSkeleton, {}) : /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
409
|
-
ratings?.map(
|
|
410
|
-
(rating) => rating.type === "rating" && /* @__PURE__ */ jsx(
|
|
411
|
-
"section",
|
|
412
|
-
{
|
|
413
|
-
className: "flex justify-between items-start bg-white p-5 rounded-md",
|
|
414
|
-
children: /* @__PURE__ */ jsxs("div", { children: [
|
|
415
|
-
/* @__PURE__ */ jsx("p", { className: "mb-2", children: rating.content }),
|
|
416
|
-
/* @__PURE__ */ jsx(SallaRatingStars, { withLabel: true, size: "small", value: rating.rating }),
|
|
417
|
-
rating.images?.map(
|
|
418
|
-
(img) => img && /* @__PURE__ */ jsx(
|
|
419
|
-
Image,
|
|
420
|
-
{
|
|
421
|
-
className: "w-20 h-20 object-cover rounded-md mt-2 mr-2 inline-block",
|
|
422
|
-
src: img,
|
|
423
|
-
alt: ""
|
|
424
|
-
},
|
|
425
|
-
img
|
|
426
|
-
)
|
|
427
|
-
)
|
|
428
|
-
] })
|
|
429
|
-
},
|
|
430
|
-
rating.id
|
|
431
|
-
)
|
|
432
|
-
),
|
|
433
|
-
(() => {
|
|
434
|
-
const shippingRating = ratings?.find((r) => r.type === "shipping");
|
|
435
|
-
return shippingRating && /* @__PURE__ */ jsx("section", { className: "flex justify-between items-start bg-white p-5 rounded-md", children: /* @__PURE__ */ jsxs("div", { children: [
|
|
436
|
-
/* @__PURE__ */ jsx("h2", { className: "text-lg font-bold mb-5", children: t("pages.rating.rate_shipping") }),
|
|
437
|
-
/* @__PURE__ */ jsx("p", { className: "mb-2", children: shippingRating.content }),
|
|
438
|
-
/* @__PURE__ */ jsx(SallaRatingStars, { withLabel: true, value: shippingRating.rating })
|
|
439
|
-
] }) });
|
|
440
|
-
})(),
|
|
441
|
-
(() => {
|
|
442
|
-
const testimonialRating = ratings?.find((r) => r.type === "testimonial");
|
|
443
|
-
return testimonialRating && /* @__PURE__ */ jsx("section", { className: "flex justify-between items-start bg-white p-5 rounded-md", children: /* @__PURE__ */ jsxs("div", { children: [
|
|
444
|
-
/* @__PURE__ */ jsx("h2", { className: "text-lg font-bold mb-5", children: t("pages.rating.rate_the_store") }),
|
|
445
|
-
/* @__PURE__ */ jsx("p", { className: "mb-2", children: testimonialRating.content }),
|
|
446
|
-
/* @__PURE__ */ jsx(SallaRatingStars, { withLabel: true, value: testimonialRating.rating })
|
|
447
|
-
] }) });
|
|
448
|
-
})()
|
|
449
|
-
] }),
|
|
450
|
-
/* @__PURE__ */ jsx(HookSlot, { name: "customer:orders.single.details.end" }),
|
|
451
|
-
order2.actions.rateable && /* @__PURE__ */ jsx(SallaRatingModal, {}),
|
|
452
|
-
user && order2.actions.reorderable && showReorderModal && /* @__PURE__ */ jsx(
|
|
453
|
-
SallaModal,
|
|
454
|
-
{
|
|
455
|
-
width: "sm",
|
|
456
|
-
subTitle: t("pages.orders.reorder_confirmation"),
|
|
457
|
-
iconStyle: "success",
|
|
458
|
-
children: /* @__PURE__ */ jsxs("div", { slot: "footer", className: "grid grid-cols-2 gap-3", children: [
|
|
459
|
-
/* @__PURE__ */ jsx(SallaButton, { width: "wide", onClick: handleReorder, disabled: reorderState.loading, children: reorderState.loading ? /* @__PURE__ */ jsx("span", { className: "loader loader--small" }) : t("common.elements.ok") }),
|
|
460
|
-
/* @__PURE__ */ jsx(
|
|
461
|
-
SallaButton,
|
|
462
|
-
{
|
|
463
|
-
className: "w-full",
|
|
464
|
-
fill: "outline",
|
|
465
|
-
color: "light",
|
|
466
|
-
onClick: () => setShowReorderModal(false),
|
|
467
|
-
disabled: reorderState.loading,
|
|
468
|
-
children: t("common.elements.cancel")
|
|
469
|
-
}
|
|
470
|
-
)
|
|
471
|
-
] })
|
|
472
|
-
}
|
|
473
|
-
),
|
|
474
|
-
order2.actions.cancellable && showCancelModal && /* @__PURE__ */ jsx(SallaModal, { width: "sm", subTitle: t("pages.orders.cancel_confirmation"), iconStyle: "error", children: /* @__PURE__ */ jsxs("div", { slot: "footer", className: "grid grid-cols-2 gap-3", children: [
|
|
475
|
-
/* @__PURE__ */ jsx(
|
|
476
|
-
SallaButton,
|
|
477
|
-
{
|
|
478
|
-
color: "danger",
|
|
479
|
-
className: "w-full cursor-pointer",
|
|
480
|
-
onClick: handleCancel,
|
|
481
|
-
disabled: cancelState.loading,
|
|
482
|
-
children: cancelState.loading ? /* @__PURE__ */ jsx("span", { className: "loader loader--small" }) : t("common.elements.ok")
|
|
483
|
-
}
|
|
484
|
-
),
|
|
485
|
-
/* @__PURE__ */ jsx(
|
|
486
|
-
SallaButton,
|
|
487
|
-
{
|
|
488
|
-
className: "w-full",
|
|
489
|
-
fill: "outline",
|
|
490
|
-
color: "light",
|
|
491
|
-
onClick: () => setShowCancelModal(false),
|
|
492
|
-
disabled: cancelState.loading,
|
|
493
|
-
children: t("common.elements.cancel")
|
|
494
|
-
}
|
|
495
|
-
)
|
|
496
|
-
] }) })
|
|
497
|
-
] });
|
|
498
|
-
}
|
|
499
|
-
|
|
500
|
-
export { OrderSinglePage };
|
|
501
|
-
//# sourceMappingURL=OrderSinglePage-GOGNRVPM.js.map
|
|
502
|
-
//# sourceMappingURL=OrderSinglePage-GOGNRVPM.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/routes/account/orders/OrderSinglePage.tsx"],"names":["ContentSkeleton","order"],"mappings":"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","file":"OrderSinglePage-GOGNRVPM.js","sourcesContent":["import { useState, memo } from 'react';\nimport { useQuery } from '@tanstack/react-query';\nimport { SallaButton } from '@salla.sa/twilight-components-react/button';\nimport { SallaOrderDetails } from '@salla.sa/twilight-components-react/order-details';\nimport { SallaRatingStars } from '@salla.sa/twilight-components-react/rating-stars';\nimport { SallaRatingModal } from '@salla.sa/twilight-components-react/rating-modal';\nimport { SallaModal } from '@salla.sa/twilight-components-react/modal';\nimport { SallaEditOrderButton } from '@salla.sa/twilight-components-react/edit-order-button';\nimport { SallaOrderBranch } from '@salla.sa/twilight-components-react/order-branch';\nimport { SallaOrderTotalsCard } from '@salla.sa/twilight-components-react/order-totals-card';\nimport { HookSlot, useUser, useDate, usePageConfig } from '../../../hooks';\nimport { useAsyncFn } from '../../../hooks/useAsyncFn';\nimport { useMoney } from '../../../hooks/useMoney';\nimport type { OrderSinglePageProps } from '../types';\nimport { useTwilight } from '../../../providers/twilight-context';\nimport { useNavigate, useLocation } from '../../../providers/NavigationProvider';\n\nimport { Link, Image } from '../../../components/common';\nimport { useTranslation } from '../../../providers/I18nProvider';\nimport { order as orderApi } from '../../../api/order';\n\nconst ContentSkeleton = memo(function ContentSkeleton() {\n return (\n <div className=\"animate-pulse bg-white rounded-md p-5 space-y-3\">\n <div className=\"h-4 bg-gray-200 rounded w-1/3\" />\n <div className=\"h-4 bg-gray-200 rounded w-2/3\" />\n <div className=\"h-4 bg-gray-200 rounded w-1/2\" />\n </div>\n );\n});\n\nexport function OrderSinglePage({ order, page }: OrderSinglePageProps) {\n const { t, direction } = useTranslation();\n // `<salla-order-branch>` reads the order id from `salla.config.page.id`, which the router\n // only sets on client-side navigations — seed it so a direct load works too.\n usePageConfig(page);\n const { store } = useTwilight();\n const { data: user } = useUser();\n const navigate = useNavigate();\n const location = useLocation();\n const { format: formatDate } = useDate();\n const { format } = useMoney();\n const [showReorderModal, setShowReorderModal] = useState(false);\n const [showCancelModal, setShowCancelModal] = useState(false);\n\n const { data: shipments, isLoading: isLoadingShipments } = useQuery({\n ...orderApi.queries.shipments(String(order.id)),\n enabled: order.features.shippable,\n });\n const { data: ratings, isLoading: isLoadingRatings } = useQuery({\n ...orderApi.queries.ratings(String(order.id)),\n enabled: order.actions.rateable,\n });\n\n const [reorderState, handleReorder] = useAsyncFn(async () => {\n // Pass the order id explicitly: salla.js falls back to `salla.config.get('page.id')`,\n // which this SSR theme never sets, so a bare call would hit `reorder/undefined`.\n await window.salla?.order.createCartFromOrder(Number(order.id));\n setShowReorderModal(false);\n navigate('/cart');\n }, [navigate, order.id]);\n\n const [cancelState, handleCancel] = useAsyncFn(async () => {\n await window.salla?.order.cancel(Number(order.id));\n setShowCancelModal(false);\n // Invalidate current route to refetch order data. The router's own location,\n // not `window.location`: on a host where the store is the root, the address bar\n // carries the store segment and `navigate` would add it a second time.\n navigate(location.pathname, { replace: true });\n }, [navigate, order.id, location.pathname]);\n\n return (\n <div className=\"space-y-4\">\n <HookSlot name=\"customer:orders.single.details.start\" />\n\n {/* Gift orders are tagged; the edit button gates itself (edit window / order state). */}\n <div className=\"flex items-center justify-between gap-3 flex-wrap\">\n {order.type === 'buy_as_gift' || order.source?.type === 'buy_as_gift' ? (\n <span className=\"inline-block text-primary\">\n <i className=\"sicon-gift-sharing\"></i> {t('pages.orders.gift_tag', 'Gift order')}\n </span>\n ) : (\n <span />\n )}\n <SallaEditOrderButton orderId={String(order.id)} />\n </div>\n\n {/* Order Details Table */}\n <table className=\"min-w-full rounded-md overflow-hidden\">\n <tbody>\n <tr className=\"bg-white overflow-hidden flex md:table-row flex-row md:flex-row flex-wrap md:flex-no-wrap py-1.5 md:py-0\">\n <td className=\"single-order-header-item w-full md:w-auto px-3 md:px-6 py-2 md:py-4 md:h-20 whitespace-nowrap text-sm\">\n <div className=\"rtl:ml-2 ltr:mr-2 font-normal text-gray-400\">\n {t('pages.orders.date')}\n </div>\n <b>{formatDate(order.created_at.date)}</b>\n </td>\n\n <td className=\"single-order-header-item flex justify-between items-center w-full md:w-auto px-3 md:px-6 py-2 md:py-4 md:h-20 whitespace-nowrap text-sm\">\n <span\n className=\"text-primary inline-flex items-center rtl:space-x-reverse space-x-1\"\n style={{ color: order.status.color }}\n >\n {order.status.icon && <i className={`mt-1 ${order.status.icon}`}></i>}\n <span>{order.status.name}</span>\n </span>\n\n <div className=\"flex items-center justify-between\">\n {order.type === 'quote' && (\n <span className=\"text-red-500 ml-4\">\n {t('pages.orders.your_order_is_under_review')}\n </span>\n )}\n\n <div className=\"flex space-x-2 rtl:space-x-reverse text-start flex-none px-2\">\n {order.urls.digital_content && (\n <a\n href={order.urls.digital_content}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n className=\"salla-button salla-button--small\"\n >\n <span className=\"salla-button-text\">\n {t('pages.orders.digital')}\n <i\n className={\n user && direction === 'rtl'\n ? 'sicon-arrow-up-left'\n : 'sicon-arrow-up-right'\n }\n ></i>\n </span>\n </a>\n )}\n {order.urls.tracking?.map((trackingUrl) => (\n <a\n key={trackingUrl}\n href={trackingUrl}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n className=\"salla-button salla-button--small\"\n >\n <span className=\"salla-button-text\">\n {t('pages.orders.tracking')}\n <i\n className={\n user && direction === 'rtl'\n ? 'sicon-arrow-up-left'\n : 'sicon-arrow-up-right'\n }\n ></i>\n </span>\n </a>\n ))}\n </div>\n\n {order.urls.receipt && (\n <SallaButton\n fill=\"outline\"\n size=\"small\"\n onClick={() =>\n window.open(\n order.urls.receipt,\n '_blank',\n 'toolbar=yes, scrollbars=yes, resizable=yes, width=900, height=700'\n )\n }\n >\n <i className=\"sicon-printer2 v-align\"></i>\n {t('pages.orders.print')}\n </SallaButton>\n )}\n </div>\n </td>\n </tr>\n </tbody>\n </table>\n\n {/* Pickup branch details — renders nothing for orders that aren't pickable */}\n <SallaOrderBranch stackCards />\n\n {/* Refund Message */}\n {order.refund_message && (\n <div className=\"min-w-full rounded-md overflow-hidden\">\n <div className=\"bg-white flex items-center gap-1 rounded-md px-3 py-5 md:px-5\">\n <i className=\"sicon-refund h-6 w-6\"></i>\n <p\n className=\"font-medium text-base\"\n dangerouslySetInnerHTML={{ __html: order.refund_message }}\n />\n </div>\n </div>\n )}\n\n {/* Rating Message */}\n {order.actions.rateable && (\n <div className=\"rating-header gradient-bg center-between\">\n <div>\n <h2 className=\"font-bold mb-1\">{t('pages.order.order_rating_title')}</h2>\n <p className=\"text-sm\">{t('pages.order.order_rating_message')}</p>\n </div>\n <SallaButton\n color=\"light\"\n className=\"btn--rounded-full !text-primary\"\n onClick={() => window.salla?.event.dispatch('rating::open')}\n >\n {t('pages.rating.rate')}\n </SallaButton>\n </div>\n )}\n\n {/* Rating Update Info Banner */}\n {store.settings?.rating?.allow_update && ratings && ratings.length > 0 && (\n <div className=\"flex items-start gap-2 bg-blue-50 border border-blue-200 text-blue-500 px-2 py-3 rounded-md text-sm\">\n <i className=\"sicon-info\"></i>\n <p>\n {t('pages.order.can_edit_or_delete_your_review_within')}{' '}\n {store.settings?.rating?.update_period} {t('pages.order.days_since_added')}.\n </p>\n </div>\n )}\n\n {/* Order Shipments */}\n {order.features.shippable &&\n (isLoadingShipments ? (\n <ContentSkeleton />\n ) : (\n shipments?.map((shipment) => (\n <div key={shipment.id} className=\"shipping-orders\">\n <div className=\"flex flex-col md:flex-row justify-between md:items-center bg-white px-5 py-3 border-b border-gray-100 rounded-t-md text-sm space-y-4 md:space-y-0\">\n <div className=\"flex items-center space-x-2 rtl:space-x-reverse\">\n <Image\n src={shipment.logo}\n className=\"max-w-16 max-h-8\"\n alt={shipment.name}\n aspectRatio=\"2/1\"\n />\n <span>{shipment.name}</span>\n </div>\n <div className=\"flex space-x-5 rtl:space-x-reverse\">\n {shipment.number && (\n <span>\n {t('pages.orders.shipment_no')}:{' '}\n <span className=\"font-bold\">{shipment.number}</span>\n </span>\n )}\n {shipment.tracking_url && (\n <a\n href={shipment.tracking_url}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n className=\"salla-button salla-button--link\"\n >\n <span className=\"sicon-shipping rtl:ml-1 ltr:mr-1\"></span>\n {t('pages.orders.tracking_url')}\n </a>\n )}\n </div>\n </div>\n </div>\n ))\n ))}\n\n {/* Order Items */}\n {order.items.map((item) => (\n <div\n key={item.id}\n data-order-item-id={item.id}\n data-order-item-product-id={item.product?.id}\n className=\"order-item bg-white p-5 border-b border-gray-100 first:rounded-t-md last:rounded-b-md last:border-none\"\n >\n <div className=\"mb-5 last:mb-0\">\n {item.product ? (\n <div className=\"flex rtl:space-x-reverse space-x-5 mb-4\">\n <Link to={item.product.url} className=\"shrink-0\">\n <Image\n src={item.image || '/images/placeholder.png'}\n alt={item.name}\n className={`w-18 h-14 object-${item.image ? 'cover' : 'contain'} rounded-md`}\n />\n </Link>\n <div>\n <Link\n to={item.product.url}\n className=\"block leading-5 mb-1.5 md:text-base font-semibold transition-colors text-gray-500 hover:text-primary\"\n >\n {item.name}\n </Link>\n <b>\n {format(item.amounts.amount?.amount, {\n currency: item.amounts.amount?.currency,\n })}\n </b>\n </div>\n </div>\n ) : (\n <div className=\"w-full flex justify-between text-sm py-2.5\">\n <span className=\"w-40 inline-block font-normal\">{item.name}</span>\n <b>\n {format(item.amounts.amount?.amount, { currency: item.amounts.amount?.currency })}\n </b>\n </div>\n )}\n\n <div className=\"w-full flex justify-between text-sm py-2.5\">\n <span className=\"w-40 inline-block font-normal\">\n {t('pages.products.quantity', 'Quantity')}\n </span>\n <b>{item.quantity}</b>\n </div>\n <div className=\"flex justify-between text-sm py-2.5\">\n <span className=\"w-40 inline-block font-normal\">\n {t('pages.products.price', 'Price')}\n </span>\n <b>{format(item.amounts.cost?.amount, { currency: item.amounts.cost?.currency })}</b>\n </div>\n <div className=\"flex justify-between text-sm py-2.5\">\n <span className=\"w-40 inline-block font-normal\">\n {t('pages.cart.total', 'Total')}\n </span>\n <b>\n {format(item.amounts.total?.amount, { currency: item.amounts.total?.currency })}\n </b>\n </div>\n </div>\n\n {/* Availability Date */}\n {item.availability_date && (\n <div className=\"flex gap-2 text-sm py-2.5 text-blue-500\">\n <i className=\"sicon-info\"></i>\n <span>\n {t('pages.products.expected_to_be')}: <b>{item.availability_date}</b>\n </span>\n </div>\n )}\n\n {/* Booking / Reservations */}\n {item.product?.type === 'booking' &&\n item.product_reservations &&\n (item.product_reservations as unknown[]).length > 0 && (\n <>\n {item.booking_location && (\n <ul className=\"font-medium text-xs text-gray-600\">\n <li className=\"py-1 flex justify-between items-baseline\">\n <span className=\"mt-5 mb-3.5 text-sm font-bold\">\n {t('common.elements.location')}\n </span>\n <span className=\"text-unicode\">{item.booking_location}</span>\n </li>\n </ul>\n )}\n <h3 className=\"mt-5 mb-3.5 text-sm font-bold\">\n {(item.product_reservations as unknown[]).length > 1\n ? t('pages.cart.reservations')\n : t('pages.cart.item_options')}\n </h3>\n <div className=\"rounded-md p-4 border border-gray-200 mb-2\">\n <SallaOrderDetails orderDetails={JSON.stringify(item)} />\n </div>\n </>\n )}\n\n {/* Order details (sub-products / options) — for non-booking items */}\n {!(\n item.product?.type === 'booking' &&\n item.product_reservations &&\n (item.product_reservations as unknown[]).length > 0\n ) && <SallaOrderDetails orderDetails={JSON.stringify(item)} />}\n\n {/* Product options (e.g. custom fields the merchant added to the\n product) — item.options exists on the API response but nothing\n rendered it; SallaOrderDetails above doesn't cover this data. */}\n {item.options && item.options.length > 0 && (\n <div className=\"mt-3\">\n <h3 className=\"mb-2 text-sm font-bold\">\n {t('pages.cart.item_options', 'Product Options')}\n </h3>\n <div className=\"rounded-md border border-gray-200 divide-y divide-gray-200\">\n {item.options.map((option) => (\n <div\n key={option.name}\n className=\"flex items-center justify-between gap-4 px-4 py-2.5 text-sm\"\n >\n <span className=\"font-normal text-gray-500\">{option.name}</span>\n {option.is_image ? (\n <Image\n src={option.value}\n alt={option.name}\n className=\"h-7 w-7 rounded-md object-cover\"\n />\n ) : option.color ? (\n <span className=\"inline-flex items-center gap-2\">\n <span\n className=\"h-4 w-4 rounded-full border border-gray-200\"\n style={{ backgroundColor: option.color }}\n />\n <b>{option.value}</b>\n </span>\n ) : (\n <b>{option.value}</b>\n )}\n </div>\n ))}\n </div>\n </div>\n )}\n\n {item.note && (\n <p className=\"mt-3 text-sm text-gray-500\">\n <span>{t('common.elements.note', 'Note')}: </span>\n {item.note}\n </p>\n )}\n\n {/* Attachments */}\n {item.attachments && item.attachments.length > 0 && (\n <div className=\"flow-root rounded-md px-4 border border-gray-200\">\n <dl className=\"text-sm text-dark divide-y divide-border-color\">\n {item.attachments.map((attachment) => (\n <div\n key={`${attachment.type}:${attachment.url}`}\n className=\"py-3.5 md:flex items-center justify-between\"\n >\n <dt className=\"mb-2 md:mb-0\">{t('pages.products.attachments')}</dt>\n <dd\n className={`font-medium ${attachment.type === 'image' ? 'text-gray-900' : 'text-xs'}`}\n >\n {attachment.type === 'image' && attachment.url ? (\n <div className=\"flex rtl:space-x-reverse space-x-2.5\">\n <a href={attachment.url} target=\"_blank\" rel=\"noopener noreferrer\">\n <Image\n className=\"h-7 w-7 object-cover rounded-md\"\n src={attachment.url}\n alt={item.name}\n />\n </a>\n </div>\n ) : (\n <a href={attachment.url}>{t('pages.orders.file_url')}</a>\n )}\n </dd>\n </div>\n ))}\n </dl>\n </div>\n )}\n </div>\n ))}\n\n {/* Order Totals */}\n <SallaOrderTotalsCard amounts={JSON.stringify(order.amounts)} {...({} as any)} />\n\n {/* Reorder & Cancel Actions */}\n {(order.actions.reorderable || order.actions.cancellable || order.actions.payable) && (\n <div className=\"bg-white rounded-md p-5 divide-y divide-border-color space-y-4\">\n {(order.actions.reorderable || order.actions.payable) && (\n <div className={order.actions.payable ? 'flex-center' : 'center-between'}>\n {order.actions.payable ? (\n (order.payment?.pending_payment_ends_at ?? 0) === 0 ? (\n <span className=\"text-red-500\">{t('pages.orders.pending_payment_expired')}</span>\n ) : order.urls.checkout ? (\n <SallaButton width=\"wide\" href={order.urls.checkout}>\n <i className=\"sicon sicon-wallet rtl:ml-2 ltr:mr-2\"></i>\n <span>{t('pages.orders.finish_payment')}</span>\n </SallaButton>\n ) : (\n <span className=\"text-red-500\">{t('pages.orders.pending_payment_expired')}</span>\n )\n ) : user ? (\n <>\n <div className=\"text-sm\">\n <h3 className=\"font-bold text-lg leading-none mb-1\">\n {t('pages.orders.reorder')}\n </h3>\n <p className=\"text-gray-500\">{t('pages.orders.reorder_description')}</p>\n </div>\n <SallaButton onClick={() => setShowReorderModal(true)}>\n <i className=\"sicon sicon-rotate rtl:ml-2 ltr:mr-2\"></i>\n <span>{t('pages.orders.reorder')}</span>\n </SallaButton>\n </>\n ) : null}\n </div>\n )}\n\n {order.actions.cancellable && (\n <div className=\"center-between pt-4\">\n <div className=\"text-sm\">\n <h3 className=\"font-bold text-lg leading-none mb-1\">{t('pages.orders.cancel')}</h3>\n <p className=\"text-gray-500\">{t('pages.order.order_cancelation_desc')}</p>\n </div>\n <SallaButton shape=\"link\" color=\"danger\" onClick={() => setShowCancelModal(true)}>\n <i className=\"sicon sicon-cancel-circle rtl:ml-2 ltr:mr-2\"></i>\n <span>{t('pages.orders.cancel')}</span>\n </SallaButton>\n </div>\n )}\n </div>\n )}\n\n {/* Ratings */}\n {isLoadingRatings ? (\n <ContentSkeleton />\n ) : (\n <>\n {/* Product Ratings (type: \"rating\") */}\n {ratings?.map(\n (rating) =>\n rating.type === 'rating' && (\n <section\n key={rating.id}\n className=\"flex justify-between items-start bg-white p-5 rounded-md\"\n >\n <div>\n <p className=\"mb-2\">{rating.content}</p>\n <SallaRatingStars withLabel size=\"small\" value={rating.rating} />\n {rating.images?.map(\n (img) =>\n img && (\n <Image\n key={img}\n className=\"w-20 h-20 object-cover rounded-md mt-2 mr-2 inline-block\"\n src={img}\n alt=\"\"\n />\n )\n )}\n </div>\n </section>\n )\n )}\n\n {(() => {\n const shippingRating = ratings?.find((r) => r.type === 'shipping');\n return (\n shippingRating && (\n <section className=\"flex justify-between items-start bg-white p-5 rounded-md\">\n <div>\n <h2 className=\"text-lg font-bold mb-5\">{t('pages.rating.rate_shipping')}</h2>\n <p className=\"mb-2\">{shippingRating.content}</p>\n <SallaRatingStars withLabel value={shippingRating.rating} />\n </div>\n </section>\n )\n );\n })()}\n\n {(() => {\n const testimonialRating = ratings?.find((r) => r.type === 'testimonial');\n return (\n testimonialRating && (\n <section className=\"flex justify-between items-start bg-white p-5 rounded-md\">\n <div>\n <h2 className=\"text-lg font-bold mb-5\">{t('pages.rating.rate_the_store')}</h2>\n <p className=\"mb-2\">{testimonialRating.content}</p>\n <SallaRatingStars withLabel value={testimonialRating.rating} />\n </div>\n </section>\n )\n );\n })()}\n </>\n )}\n\n <HookSlot name=\"customer:orders.single.details.end\" />\n\n {order.actions.rateable && <SallaRatingModal />}\n\n {/* Reorder Modal */}\n {user && order.actions.reorderable && showReorderModal && (\n <SallaModal\n width=\"sm\"\n subTitle={t('pages.orders.reorder_confirmation')}\n iconStyle=\"success\"\n >\n <div slot=\"footer\" className=\"grid grid-cols-2 gap-3\">\n <SallaButton width=\"wide\" onClick={handleReorder} disabled={reorderState.loading}>\n {reorderState.loading ? (\n <span className=\"loader loader--small\"></span>\n ) : (\n t('common.elements.ok')\n )}\n </SallaButton>\n <SallaButton\n className=\"w-full\"\n fill=\"outline\"\n color=\"light\"\n onClick={() => setShowReorderModal(false)}\n disabled={reorderState.loading}\n >\n {t('common.elements.cancel')}\n </SallaButton>\n </div>\n </SallaModal>\n )}\n\n {/* Cancel Modal */}\n {order.actions.cancellable && showCancelModal && (\n <SallaModal width=\"sm\" subTitle={t('pages.orders.cancel_confirmation')} iconStyle=\"error\">\n <div slot=\"footer\" className=\"grid grid-cols-2 gap-3\">\n <SallaButton\n color=\"danger\"\n className=\"w-full cursor-pointer\"\n onClick={handleCancel}\n disabled={cancelState.loading}\n >\n {cancelState.loading ? (\n <span className=\"loader loader--small\"></span>\n ) : (\n t('common.elements.ok')\n )}\n </SallaButton>\n <SallaButton\n className=\"w-full\"\n fill=\"outline\"\n color=\"light\"\n onClick={() => setShowCancelModal(false)}\n disabled={cancelState.loading}\n >\n {t('common.elements.cancel')}\n </SallaButton>\n </div>\n </SallaModal>\n )}\n </div>\n );\n}\n"]}
|