@salla.sa/twilight-theme-engine 1.0.129 → 1.0.130
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-I2SZGGZK.js → AddToCartForm-ZJIIU4I4.js} +3 -3
- package/dist/{AddToCartForm-I2SZGGZK.js.map → AddToCartForm-ZJIIU4I4.js.map} +1 -1
- package/dist/{BlogAuthorPage-JHZHLSIA.js → BlogAuthorPage-DNZSR42D.js} +18 -17
- package/dist/BlogAuthorPage-DNZSR42D.js.map +1 -0
- package/dist/{BlogCategoryPage-F4264MQG.js → BlogCategoryPage-AC4DDQ7N.js} +18 -17
- package/dist/BlogCategoryPage-AC4DDQ7N.js.map +1 -0
- package/dist/{BlogPage-3TELFUFM.js → BlogPage-F5OY24RP.js} +16 -15
- package/dist/BlogPage-F5OY24RP.js.map +1 -0
- package/dist/{BlogSinglePage-QBADHXXZ.js → BlogSinglePage-YXC5WU3N.js} +16 -15
- package/dist/BlogSinglePage-YXC5WU3N.js.map +1 -0
- package/dist/{BlogTagPage-WEP37KDY.js → BlogTagPage-6QQ2CF2B.js} +18 -17
- package/dist/BlogTagPage-6QQ2CF2B.js.map +1 -0
- package/dist/{BrandsPage-EENWKAIY.js → BrandsPage-UXWNTTT3.js} +17 -16
- package/dist/BrandsPage-UXWNTTT3.js.map +1 -0
- package/dist/{Breadcrumb-A2CNX5VU.js → Breadcrumb-TUXEVRZZ.js} +16 -15
- package/dist/Breadcrumb-TUXEVRZZ.js.map +1 -0
- package/dist/{CartItem-X7UB2GZG.js → CartItem-B7AYUFGZ.js} +16 -15
- package/dist/CartItem-B7AYUFGZ.js.map +1 -0
- package/dist/{CartSummary-EEJ3JO6E.js → CartSummary-LSFD7QUY.js} +16 -15
- package/dist/CartSummary-LSFD7QUY.js.map +1 -0
- package/dist/{Copyright-VGOFMMIR.js → Copyright-HH2S2KDM.js} +3 -3
- package/dist/{Copyright-VGOFMMIR.js.map → Copyright-HH2S2KDM.js.map} +1 -1
- package/dist/{CustomerLayout-2E6ENXOH.js → CustomerLayout-2NVQ6G72.js} +16 -15
- package/dist/CustomerLayout-2NVQ6G72.js.map +1 -0
- package/dist/{Footer-5L3YKKPB.js → Footer-4LQIBAHJ.js} +4 -4
- package/dist/{Footer-5L3YKKPB.js.map → Footer-4LQIBAHJ.js.map} +1 -1
- package/dist/{Header-KMURB263.js → Header-VQTPIQPS.js} +8 -8
- package/dist/{Header-KMURB263.js.map → Header-VQTPIQPS.js.map} +1 -1
- package/dist/{LoyaltyPage-WI2SL6SR.js → LoyaltyPage-NSHSLS4O.js} +16 -15
- package/dist/LoyaltyPage-NSHSLS4O.js.map +1 -0
- package/dist/{LoyaltyPointsPage-RKGFGLL4.js → LoyaltyPointsPage-7CUUKDLR.js} +6 -6
- package/dist/{LoyaltyPointsPage-RKGFGLL4.js.map → LoyaltyPointsPage-7CUUKDLR.js.map} +1 -1
- package/dist/{MainMenu-VFI4SRRS.js → MainMenu-NTSSUK6R.js} +5 -5
- package/dist/{MainMenu-VFI4SRRS.js.map → MainMenu-NTSSUK6R.js.map} +1 -1
- package/dist/MaintenancePage-A7CNHM7B.js +7 -0
- package/dist/{MaintenancePage-7Y4QA5LD.js.map → MaintenancePage-A7CNHM7B.js.map} +1 -1
- package/dist/{MasterLayout-AZSOVNPR.js → MasterLayout-ZOT7XICQ.js} +16 -15
- package/dist/{MasterLayout-AZSOVNPR.js.map → MasterLayout-ZOT7XICQ.js.map} +1 -1
- package/dist/{MobileMenu-PRND3T3Z.js → MobileMenu-RBTT3KLS.js} +17 -16
- package/dist/MobileMenu-RBTT3KLS.js.map +1 -0
- package/dist/{NotificationsPage-VPCF5TNJ.js → NotificationsPage-T775PMFX.js} +16 -15
- package/dist/NotificationsPage-T775PMFX.js.map +1 -0
- package/dist/{OrderSinglePage-BIPGDSSI.js → OrderSinglePage-T5SKWUNW.js} +17 -16
- package/dist/OrderSinglePage-T5SKWUNW.js.map +1 -0
- package/dist/{OrdersPage-DTI5CYHH.js → OrdersPage-PGAD6DDY.js} +16 -15
- package/dist/OrdersPage-PGAD6DDY.js.map +1 -0
- package/dist/{PageSingle-VUKTKJKB.js → PageSingle-6W7U5YLG.js} +3 -3
- package/dist/{PageSingle-VUKTKJKB.js.map → PageSingle-6W7U5YLG.js.map} +1 -1
- package/dist/{ProductDetails-CUSUV3YF.js → ProductDetails-JFOFLMLV.js} +4 -4
- package/dist/{ProductDetails-CUSUV3YF.js.map → ProductDetails-JFOFLMLV.js.map} +1 -1
- package/dist/{ProfilePage-APTF4ZI3.js → ProfilePage-2HZYDJBM.js} +16 -15
- package/dist/ProfilePage-2HZYDJBM.js.map +1 -0
- package/dist/{ReviewsPage-Q5UUELM5.js → ReviewsPage-FYAZU7FT.js} +3 -3
- package/dist/{ReviewsPage-Q5UUELM5.js.map → ReviewsPage-FYAZU7FT.js.map} +1 -1
- package/dist/{SeoCartWidget-7BLWJVZ7.js → SeoCartWidget-7SUVC6MT.js} +16 -15
- package/dist/SeoCartWidget-7SUVC6MT.js.map +1 -0
- package/dist/{SettingsPage-I6STBZ2M.js → SettingsPage-IBWVB4ZJ.js} +16 -15
- package/dist/SettingsPage-IBWVB4ZJ.js.map +1 -0
- package/dist/{StoreClosedNotification-PNOFS2B5.js → StoreClosedNotification-CMOHA4LU.js} +17 -16
- package/dist/{StoreClosedNotification-PNOFS2B5.js.map → StoreClosedNotification-CMOHA4LU.js.map} +1 -1
- package/dist/{TestimonialsPage-S64KZKPY.js → TestimonialsPage-WJMIDBRM.js} +3 -3
- package/dist/{TestimonialsPage-S64KZKPY.js.map → TestimonialsPage-WJMIDBRM.js.map} +1 -1
- package/dist/{ThankYouPage-VGNCUZTV.js → ThankYouPage-NILOPG4H.js} +16 -15
- package/dist/ThankYouPage-NILOPG4H.js.map +1 -0
- package/dist/{WalletPage-MIXW2MTQ.js → WalletPage-5O553SIT.js} +17 -16
- package/dist/WalletPage-5O553SIT.js.map +1 -0
- package/dist/{WishlistPage-RVWSOXRC.js → WishlistPage-JPLKEMDX.js} +18 -17
- package/dist/WishlistPage-JPLKEMDX.js.map +1 -0
- package/dist/api/advertisement.js +2 -2
- package/dist/api/apps.js +2 -2
- package/dist/api/blog.js +3 -3
- package/dist/api/brands.js +3 -3
- package/dist/api/cart.js +3 -3
- package/dist/api/category.js +3 -3
- package/dist/api/client.js +1 -1
- package/dist/api/home.js +2 -2
- package/dist/api/loyalty.js +3 -3
- package/dist/api/menu.js +2 -2
- package/dist/api/notification.js +2 -2
- package/dist/api/order.js +3 -3
- package/dist/api/page.js +3 -3
- package/dist/api/product.js +3 -3
- package/dist/api/profile.js +1 -1
- package/dist/api/store.d.ts +8 -0
- package/dist/api/store.d.ts.map +1 -1
- package/dist/api/store.js +3 -2
- package/dist/api/translations.js +2 -2
- package/dist/api/user.js +2 -2
- package/dist/api/wallet.js +2 -2
- package/dist/api/wishlist.js +4 -4
- package/dist/chunk-2A2NODLC.js +14 -0
- package/dist/{chunk-DEZVFNN2.js.map → chunk-2A2NODLC.js.map} +1 -1
- package/dist/{chunk-IWBUTY3D.js → chunk-2UQKQTPB.js} +4 -4
- package/dist/{chunk-IWBUTY3D.js.map → chunk-2UQKQTPB.js.map} +1 -1
- package/dist/{chunk-KQEBYXYB.js → chunk-3CNXPHJE.js} +4 -69
- package/dist/chunk-3CNXPHJE.js.map +1 -0
- package/dist/{chunk-6I2J6V3S.js → chunk-4FYLW5WS.js} +3 -3
- package/dist/{chunk-6I2J6V3S.js.map → chunk-4FYLW5WS.js.map} +1 -1
- package/dist/{chunk-NOVJ3US5.js → chunk-4SMWY54W.js} +3 -3
- package/dist/{chunk-NOVJ3US5.js.map → chunk-4SMWY54W.js.map} +1 -1
- package/dist/{chunk-PTSJOV2E.js → chunk-52MZ4V5T.js} +4 -4
- package/dist/{chunk-PTSJOV2E.js.map → chunk-52MZ4V5T.js.map} +1 -1
- package/dist/{chunk-QRFYOEZY.js → chunk-54FS47CL.js} +3 -3
- package/dist/{chunk-QRFYOEZY.js.map → chunk-54FS47CL.js.map} +1 -1
- package/dist/{chunk-EPTYC5H3.js → chunk-5DVSAKNY.js} +4 -4
- package/dist/{chunk-EPTYC5H3.js.map → chunk-5DVSAKNY.js.map} +1 -1
- package/dist/{chunk-3TKG3ORJ.js → chunk-5JN6P5L5.js} +6 -6
- package/dist/{chunk-3TKG3ORJ.js.map → chunk-5JN6P5L5.js.map} +1 -1
- package/dist/{chunk-FFIONN5M.js → chunk-672DTSG4.js} +7 -7
- package/dist/{chunk-FFIONN5M.js.map → chunk-672DTSG4.js.map} +1 -1
- package/dist/{chunk-ZWOD67SV.js → chunk-AIPIJWOC.js} +3 -3
- package/dist/{chunk-ZWOD67SV.js.map → chunk-AIPIJWOC.js.map} +1 -1
- package/dist/{chunk-XX4L34QI.js → chunk-AN2PETFM.js} +6 -6
- package/dist/{chunk-XX4L34QI.js.map → chunk-AN2PETFM.js.map} +1 -1
- package/dist/{chunk-GJFWNFMU.js → chunk-AXPZEXJN.js} +3 -3
- package/dist/{chunk-GJFWNFMU.js.map → chunk-AXPZEXJN.js.map} +1 -1
- package/dist/{chunk-OQTBHL5T.js → chunk-BSGHOYMT.js} +3 -3
- package/dist/{chunk-OQTBHL5T.js.map → chunk-BSGHOYMT.js.map} +1 -1
- package/dist/{chunk-FBOWKMPX.js → chunk-CGDUSBLK.js} +17 -16
- package/dist/chunk-CGDUSBLK.js.map +1 -0
- package/dist/{chunk-J5DGBS7Q.js → chunk-CKH6WBMA.js} +71 -7
- package/dist/chunk-CKH6WBMA.js.map +1 -0
- package/dist/{chunk-763YWRXT.js → chunk-D423MW2M.js} +3 -3
- package/dist/{chunk-763YWRXT.js.map → chunk-D423MW2M.js.map} +1 -1
- package/dist/{chunk-6VBXPDXM.js → chunk-EDCRELH3.js} +3 -3
- package/dist/{chunk-6VBXPDXM.js.map → chunk-EDCRELH3.js.map} +1 -1
- package/dist/{chunk-VWZG5QKQ.js → chunk-ELARAFMR.js} +3 -3
- package/dist/{chunk-VWZG5QKQ.js.map → chunk-ELARAFMR.js.map} +1 -1
- package/dist/{chunk-OJ7YQEW7.js → chunk-EZP2KOEL.js} +4 -4
- package/dist/{chunk-OJ7YQEW7.js.map → chunk-EZP2KOEL.js.map} +1 -1
- package/dist/chunk-FID76MUV.js +73 -0
- package/dist/chunk-FID76MUV.js.map +1 -0
- package/dist/{chunk-ECY5POOK.js → chunk-GSI42HHP.js} +3 -3
- package/dist/{chunk-ECY5POOK.js.map → chunk-GSI42HHP.js.map} +1 -1
- package/dist/{chunk-747V3UL5.js → chunk-HH7WFQLN.js} +3 -3
- package/dist/{chunk-747V3UL5.js.map → chunk-HH7WFQLN.js.map} +1 -1
- package/dist/{chunk-V4HOZSIW.js → chunk-I5XU5BQH.js} +3 -3
- package/dist/{chunk-V4HOZSIW.js.map → chunk-I5XU5BQH.js.map} +1 -1
- package/dist/{chunk-L75KAYY5.js → chunk-ITMXD75H.js} +12 -11
- package/dist/chunk-ITMXD75H.js.map +1 -0
- package/dist/{chunk-AT3IL55G.js → chunk-IUEYRDEI.js} +3 -3
- package/dist/{chunk-AT3IL55G.js.map → chunk-IUEYRDEI.js.map} +1 -1
- package/dist/{chunk-ASTCQSK6.js → chunk-JLBDDH4N.js} +3 -3
- package/dist/{chunk-ASTCQSK6.js.map → chunk-JLBDDH4N.js.map} +1 -1
- package/dist/{chunk-RPRZYRPX.js → chunk-K3PQSDGA.js} +4 -4
- package/dist/{chunk-RPRZYRPX.js.map → chunk-K3PQSDGA.js.map} +1 -1
- package/dist/{chunk-DEDX3AIO.js → chunk-KME6DTES.js} +7 -7
- package/dist/{chunk-DEDX3AIO.js.map → chunk-KME6DTES.js.map} +1 -1
- package/dist/{chunk-2M5BICJK.js → chunk-NITRRCQV.js} +4 -4
- package/dist/{chunk-2M5BICJK.js.map → chunk-NITRRCQV.js.map} +1 -1
- package/dist/{chunk-2SCIGF3L.js → chunk-NLT6YWUD.js} +4 -4
- package/dist/{chunk-2SCIGF3L.js.map → chunk-NLT6YWUD.js.map} +1 -1
- package/dist/{chunk-RDMEIF2O.js → chunk-OR6HPFZT.js} +4 -4
- package/dist/{chunk-RDMEIF2O.js.map → chunk-OR6HPFZT.js.map} +1 -1
- package/dist/{chunk-F5H7QF2T.js → chunk-ORBMN52O.js} +4 -4
- package/dist/{chunk-F5H7QF2T.js.map → chunk-ORBMN52O.js.map} +1 -1
- package/dist/{chunk-EMOLTV77.js → chunk-QYHNS2KS.js} +4 -4
- package/dist/{chunk-EMOLTV77.js.map → chunk-QYHNS2KS.js.map} +1 -1
- package/dist/{chunk-OOSLYT2L.js → chunk-RQ72QOIC.js} +7 -7
- package/dist/{chunk-OOSLYT2L.js.map → chunk-RQ72QOIC.js.map} +1 -1
- package/dist/{chunk-D7IP4MVJ.js → chunk-RXWWNPCR.js} +5 -5
- package/dist/{chunk-D7IP4MVJ.js.map → chunk-RXWWNPCR.js.map} +1 -1
- package/dist/{chunk-WQJT663R.js → chunk-SCM4P6QG.js} +3 -3
- package/dist/{chunk-WQJT663R.js.map → chunk-SCM4P6QG.js.map} +1 -1
- package/dist/{chunk-G74DWDSJ.js → chunk-T55LMU5R.js} +3 -3
- package/dist/{chunk-G74DWDSJ.js.map → chunk-T55LMU5R.js.map} +1 -1
- package/dist/{chunk-QPKK4LPK.js → chunk-WYWI77EA.js} +23 -4
- package/dist/chunk-WYWI77EA.js.map +1 -0
- package/dist/{chunk-CLZRX5TX.js → chunk-X4A3D5O4.js} +3 -3
- package/dist/{chunk-CLZRX5TX.js.map → chunk-X4A3D5O4.js.map} +1 -1
- package/dist/{chunk-OYPE6432.js → chunk-YGCPRUT6.js} +5 -3
- package/dist/chunk-YGCPRUT6.js.map +1 -0
- package/dist/{chunk-WOMGFBX5.js → chunk-YSSJ2CQC.js} +4 -4
- package/dist/{chunk-WOMGFBX5.js.map → chunk-YSSJ2CQC.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 +14 -13
- package/dist/components/home/index.js +18 -17
- package/dist/components/layout/index.js +4 -4
- package/dist/components/product/index.js +15 -14
- package/dist/components/store/MaintenancePage.d.ts +3 -2
- package/dist/components/store/MaintenancePage.d.ts.map +1 -1
- package/dist/components/store/index.js +16 -15
- package/dist/dev/editor/index.js +1 -1
- package/dist/dev/index.js +1 -1
- package/dist/{document-class-7JZLKPFE.js → document-class-2SKG4YZE.js} +13 -12
- package/dist/{document-class-7JZLKPFE.js.map → document-class-2SKG4YZE.js.map} +1 -1
- package/dist/hooks/index.js +14 -13
- package/dist/hooks/useGtm.js +14 -13
- package/dist/hooks/useMoney.js +14 -13
- package/dist/hooks/useStore.js +14 -13
- package/dist/hooks/useUser.js +3 -3
- package/dist/index.js +14 -13
- package/dist/index.js.map +1 -1
- package/dist/{navigation-L77QYQHZ.js → navigation-7HBHI524.js} +4 -4
- package/dist/{navigation-L77QYQHZ.js.map → navigation-7HBHI524.js.map} +1 -1
- package/dist/{navigation-IUHYIHIQ.js → navigation-WVVYQOOZ.js} +5 -5
- package/dist/{navigation-IUHYIHIQ.js.map → navigation-WVVYQOOZ.js.map} +1 -1
- package/dist/{not-found-YVGX5ST2.js → not-found-ZN7HOUO4.js} +17 -16
- package/dist/not-found-ZN7HOUO4.js.map +1 -0
- package/dist/providers/NavigationProvider.d.ts +2 -0
- package/dist/providers/NavigationProvider.d.ts.map +1 -1
- package/dist/providers/index.js +14 -13
- package/dist/routes/account/orders.js +4 -4
- package/dist/routes/account.js +13 -13
- package/dist/routes/blog.js +8 -8
- package/dist/routes/brands.js +4 -4
- package/dist/routes/cart.js +22 -21
- package/dist/routes/cart.js.map +1 -1
- package/dist/routes/home.js +19 -18
- package/dist/routes/index.js +3 -3
- package/dist/routes/loyalty.js +5 -5
- package/dist/routes/page.js +4 -4
- package/dist/routes/product-listing.js +20 -19
- package/dist/routes/product-listing.js.map +1 -1
- package/dist/routes/product.js +18 -17
- 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.js +4 -4
- package/dist/skeleton.js +19 -18
- package/dist/{store-lookup-F66OF7JS.js → store-lookup-KSHMPOFT.js} +8 -8
- package/dist/{store-lookup-F66OF7JS.js.map → store-lookup-KSHMPOFT.js.map} +1 -1
- package/dist/tanstack.js +13 -12
- package/dist/tanstack.js.map +1 -1
- package/dist/types/twilight.d.ts +4 -2
- package/dist/types/twilight.d.ts.map +1 -1
- package/dist/utils/index.js +2 -2
- package/dist/utils/maintenance.d.ts +13 -0
- package/dist/utils/maintenance.d.ts.map +1 -1
- package/package.json +1 -1
- package/tailwind/components/store/MaintenancePage.tsx.txt +116 -6
- package/dist/BlogAuthorPage-JHZHLSIA.js.map +0 -1
- package/dist/BlogCategoryPage-F4264MQG.js.map +0 -1
- package/dist/BlogPage-3TELFUFM.js.map +0 -1
- package/dist/BlogSinglePage-QBADHXXZ.js.map +0 -1
- package/dist/BlogTagPage-WEP37KDY.js.map +0 -1
- package/dist/BrandsPage-EENWKAIY.js.map +0 -1
- package/dist/Breadcrumb-A2CNX5VU.js.map +0 -1
- package/dist/CartItem-X7UB2GZG.js.map +0 -1
- package/dist/CartSummary-EEJ3JO6E.js.map +0 -1
- package/dist/CustomerLayout-2E6ENXOH.js.map +0 -1
- package/dist/LoyaltyPage-WI2SL6SR.js.map +0 -1
- package/dist/MaintenancePage-7Y4QA5LD.js +0 -7
- package/dist/MobileMenu-PRND3T3Z.js.map +0 -1
- package/dist/NotificationsPage-VPCF5TNJ.js.map +0 -1
- package/dist/OrderSinglePage-BIPGDSSI.js.map +0 -1
- package/dist/OrdersPage-DTI5CYHH.js.map +0 -1
- package/dist/ProfilePage-APTF4ZI3.js.map +0 -1
- package/dist/SeoCartWidget-7BLWJVZ7.js.map +0 -1
- package/dist/SettingsPage-I6STBZ2M.js.map +0 -1
- package/dist/ThankYouPage-VGNCUZTV.js.map +0 -1
- package/dist/WalletPage-MIXW2MTQ.js.map +0 -1
- package/dist/WishlistPage-RVWSOXRC.js.map +0 -1
- package/dist/chunk-DEZVFNN2.js +0 -14
- package/dist/chunk-FBOWKMPX.js.map +0 -1
- package/dist/chunk-J5DGBS7Q.js.map +0 -1
- package/dist/chunk-KQEBYXYB.js.map +0 -1
- package/dist/chunk-L75KAYY5.js.map +0 -1
- package/dist/chunk-OYPE6432.js.map +0 -1
- package/dist/chunk-QPKK4LPK.js.map +0 -1
- package/dist/not-found-YVGX5ST2.js.map +0 -1
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/Component.tsx","../src/components/useComponent.ts","../src/components/defineComponent.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../src/components/Component.tsx","../src/components/useComponent.ts","../src/components/defineComponent.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AASO,SAAS,UAAU,EAAE,IAAA,EAAM,WAAW,IAAA,EAAM,GAAG,OAAM,EAAoC;AAC9F,EAAA,MAAM,iBAAA,GAAoB,QAAA,CAAS,OAAA,CAAQ,IAAI,CAAA;AAE/C,EAAA,IAAI,CAAC,iBAAA,EAAmB;AACtB,IAAA,IAAI,OAAA,CAAQ,GAAA,CAAI,QAAA,KAAa,aAAA,EAAe;AAC1C,MAAA,MAAA,CAAO,KAAA,EAAO,MAAA,EAAQ,IAAA,CAAK,CAAA,YAAA,EAAe,IAAI,CAAA,uBAAA,CAAyB,CAAA;AAAA,IACzE;AACA,IAAA,OAAO,QAAA;AAAA,EACT;AAEA,EAAA,uBAAO,GAAA,CAAC,iBAAA,EAAA,EAAmB,GAAG,KAAA,EAAO,CAAA;AACvC;;;ACjBO,SAAS,aAA0C,IAAA,EAAuC;AAC/F,EAAA,OAAO,QAAA,CAAS,QAAW,IAAI,CAAA;AACjC;AAEO,SAAS,qBACd,IAAA,EACyB;AACzB,EAAA,OAAO,QAAA,CAAS,YAAe,IAAI,CAAA;AACrC;;;ACFO,SAAS,gBACd,MAAA,EACkB;AAClB,EAAA,IAAI,OAAO,QAAA,EAAU;AACnB,IAAA,QAAA,CAAS,QAAA,CAAS,MAAA,CAAO,IAAA,EAAM,MAAA,CAAO,SAAS,CAAA;AAAA,EACjD,CAAA,MAAO;AACL,IAAA,QAAA,CAAS,QAAA,CAAS,MAAA,CAAO,IAAA,EAAM,MAAA,CAAO,SAAS,CAAA;AAAA,EACjD;AAEA,EAAA,OAAO,MAAA,CAAO,SAAA;AAChB;AAEO,SAAS,mBAAmB,UAAA,EAAiD;AAClF,EAAA,KAAA,MAAW,CAAC,IAAA,EAAM,SAAS,KAAK,MAAA,CAAO,OAAA,CAAQ,UAAU,CAAA,EAAG;AAC1D,IAAA,QAAA,CAAS,QAAA,CAAS,MAAM,SAAS,CAAA;AAAA,EACnC;AACF;AAEO,SAAS,mBAAmB,UAAA,EAAiD;AAClF,EAAA,KAAA,MAAW,CAAC,IAAA,EAAM,SAAS,KAAK,MAAA,CAAO,OAAA,CAAQ,UAAU,CAAA,EAAG;AAC1D,IAAA,QAAA,CAAS,QAAA,CAAS,MAAM,SAAS,CAAA;AAAA,EACnC;AACF","file":"index.js","sourcesContent":["import React from 'react';\nimport { registry } from './ComponentRegistry';\n\nexport interface ComponentProps {\n name: string;\n fallback?: React.ReactNode;\n [key: string]: unknown;\n}\n\nexport function Component({ name, fallback = null, ...props }: ComponentProps): React.ReactNode {\n const ResolvedComponent = registry.resolve(name);\n\n if (!ResolvedComponent) {\n if (process.env.NODE_ENV === 'development') {\n window.salla?.logger?.warn(`Component::\"${name}\" not found in registry`);\n }\n return fallback;\n }\n\n return <ResolvedComponent {...props} />;\n}\n","import { registry } from './ComponentRegistry';\nimport type { ComponentType } from '../types';\n\nexport function useComponent<P = Record<string, unknown>>(name: string): ComponentType<P> | null {\n return registry.resolve<P>(name);\n}\n\nexport function useOriginalComponent<P = Record<string, unknown>>(\n name: string\n): ComponentType<P> | null {\n return registry.getOriginal<P>(name);\n}\n","import { registry } from './ComponentRegistry';\nimport type { ComponentType } from '../types';\n\ninterface DefineComponentConfig<P = Record<string, unknown>> {\n name: string;\n component: ComponentType<P>;\n override?: boolean;\n}\n\nexport function defineComponent<P = Record<string, unknown>>(\n config: DefineComponentConfig<P>\n): ComponentType<P> {\n if (config.override) {\n registry.override(config.name, config.component);\n } else {\n registry.register(config.name, config.component);\n }\n\n return config.component;\n}\n\nexport function registerComponents(components: Record<string, ComponentType>): void {\n for (const [name, component] of Object.entries(components)) {\n registry.register(name, component);\n }\n}\n\nexport function overrideComponents(components: Record<string, ComponentType>): void {\n for (const [name, component] of Object.entries(components)) {\n registry.override(name, component);\n }\n}\n"]}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { NextJsLinkAdapter } from './chunk-HTGBIA7K.js';
|
|
2
|
-
import { NavigationProvider, defaultNavigate } from './chunk-
|
|
2
|
+
import { NavigationProvider, defaultNavigate } from './chunk-WYWI77EA.js';
|
|
3
3
|
import './chunk-OUW6WESU.js';
|
|
4
|
-
import './chunk-
|
|
4
|
+
import './chunk-BSGHOYMT.js';
|
|
5
5
|
import './chunk-Z5M4YYWT.js';
|
|
6
6
|
import { LinkProvider } from './chunk-BYMOPN2S.js';
|
|
7
7
|
import './chunk-2TLIULJZ.js';
|
|
@@ -18,5 +18,5 @@ function NavigationSetup({ children }) {
|
|
|
18
18
|
}
|
|
19
19
|
|
|
20
20
|
export { NavigationSetup };
|
|
21
|
-
//# sourceMappingURL=navigation-
|
|
22
|
-
//# sourceMappingURL=navigation-
|
|
21
|
+
//# sourceMappingURL=navigation-7HBHI524.js.map
|
|
22
|
+
//# sourceMappingURL=navigation-7HBHI524.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/nextjs/navigation.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;AASO,SAAS,eAAA,CAAgB,EAAE,QAAA,EAAS,EAA4B;AACrE,EAAA,uBACE,GAAA,CAAC,sBAAmB,QAAA,EAAU,eAAA,EAC5B,8BAAC,YAAA,EAAA,EAAa,OAAA,EAAS,iBAAA,EAAoB,QAAA,EAAS,CAAA,EACtD,CAAA;AAEJ","file":"navigation-
|
|
1
|
+
{"version":3,"sources":["../src/nextjs/navigation.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;AASO,SAAS,eAAA,CAAgB,EAAE,QAAA,EAAS,EAA4B;AACrE,EAAA,uBACE,GAAA,CAAC,sBAAmB,QAAA,EAAU,eAAA,EAC5B,8BAAC,YAAA,EAAA,EAAa,OAAA,EAAS,iBAAA,EAAoB,QAAA,EAAS,CAAA,EACtD,CAAA;AAEJ","file":"navigation-7HBHI524.js","sourcesContent":["import { NavigationProvider, defaultNavigate } from '../providers/NavigationProvider';\nimport { LinkProvider } from '../providers/LinkProvider';\nimport { NextJsLinkAdapter } from './link';\nimport type { ReactNode } from 'react';\n\n/**\n * Next.js navigation setup - wraps children with NavigationProvider and LinkProvider.\n * Called by TwilightProvider when client.framework === 'nextjs'.\n */\nexport function NavigationSetup({ children }: { children: ReactNode }) {\n return (\n <NavigationProvider navigate={defaultNavigate}>\n <LinkProvider adapter={NextJsLinkAdapter}>{children}</LinkProvider>\n </NavigationProvider>\n );\n}\n"]}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
export { NavigationSetup, TanStackNavigationProvider } from './chunk-
|
|
2
|
-
import './chunk-
|
|
1
|
+
export { NavigationSetup, TanStackNavigationProvider } from './chunk-EDCRELH3.js';
|
|
2
|
+
import './chunk-WYWI77EA.js';
|
|
3
3
|
import './chunk-OUW6WESU.js';
|
|
4
|
-
import './chunk-
|
|
4
|
+
import './chunk-BSGHOYMT.js';
|
|
5
5
|
import './chunk-Z5M4YYWT.js';
|
|
6
6
|
import './chunk-BYMOPN2S.js';
|
|
7
7
|
import './chunk-2TLIULJZ.js';
|
|
@@ -11,5 +11,5 @@ import './chunk-7VNVCHID.js';
|
|
|
11
11
|
import './chunk-T72DAX7R.js';
|
|
12
12
|
import './chunk-DF6FBKDN.js';
|
|
13
13
|
import './chunk-DGUM43GV.js';
|
|
14
|
-
//# sourceMappingURL=navigation-
|
|
15
|
-
//# sourceMappingURL=navigation-
|
|
14
|
+
//# sourceMappingURL=navigation-WVVYQOOZ.js.map
|
|
15
|
+
//# sourceMappingURL=navigation-WVVYQOOZ.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[],"names":[],"mappings":"","file":"navigation-
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"navigation-WVVYQOOZ.js"}
|
|
@@ -1,23 +1,24 @@
|
|
|
1
|
-
import { product } from './chunk-
|
|
2
|
-
import './chunk-
|
|
1
|
+
import { product } from './chunk-K3PQSDGA.js';
|
|
2
|
+
import './chunk-CGDUSBLK.js';
|
|
3
3
|
import './chunk-FHAHE46U.js';
|
|
4
|
-
import './chunk-
|
|
5
|
-
import './chunk-
|
|
6
|
-
import './chunk-
|
|
4
|
+
import './chunk-672DTSG4.js';
|
|
5
|
+
import './chunk-HH7WFQLN.js';
|
|
6
|
+
import './chunk-3CNXPHJE.js';
|
|
7
7
|
import './chunk-JYV25VNZ.js';
|
|
8
|
-
import './chunk-
|
|
8
|
+
import './chunk-SCM4P6QG.js';
|
|
9
9
|
import './chunk-OXMUPNMH.js';
|
|
10
|
-
import './chunk-
|
|
10
|
+
import './chunk-AXPZEXJN.js';
|
|
11
11
|
import './chunk-VVZNW5CB.js';
|
|
12
12
|
import './chunk-5FJFN3IW.js';
|
|
13
13
|
import './chunk-GD26FI4J.js';
|
|
14
|
+
import './chunk-FID76MUV.js';
|
|
14
15
|
import './chunk-OM2GRPDH.js';
|
|
15
|
-
import { useLocation, useNavigate } from './chunk-
|
|
16
|
+
import { useLocation, useNavigate } from './chunk-WYWI77EA.js';
|
|
16
17
|
import './chunk-OUW6WESU.js';
|
|
17
18
|
import './chunk-BK5TBUGG.js';
|
|
18
19
|
import './chunk-HI5V5X3S.js';
|
|
19
|
-
import './chunk-
|
|
20
|
-
import './chunk-
|
|
20
|
+
import './chunk-GSI42HHP.js';
|
|
21
|
+
import './chunk-ELARAFMR.js';
|
|
21
22
|
import './chunk-MVT5AF2A.js';
|
|
22
23
|
import './chunk-Z653O7MX.js';
|
|
23
24
|
import './chunk-ZCH7W7DZ.js';
|
|
@@ -28,16 +29,16 @@ import './chunk-7V36I5GT.js';
|
|
|
28
29
|
import './chunk-6WI7R2BD.js';
|
|
29
30
|
import './chunk-JGVEGQHJ.js';
|
|
30
31
|
import './chunk-OAMIDZKW.js';
|
|
31
|
-
import './chunk-
|
|
32
|
+
import './chunk-D423MW2M.js';
|
|
32
33
|
import './chunk-OQIIJRAS.js';
|
|
33
34
|
import './chunk-V2ZDTY6H.js';
|
|
34
|
-
import './chunk-
|
|
35
|
+
import './chunk-54FS47CL.js';
|
|
35
36
|
import { HookSlot } from './chunk-5XDPAKF5.js';
|
|
36
37
|
import './chunk-GCPEMNSU.js';
|
|
37
|
-
import './chunk-
|
|
38
|
+
import './chunk-BSGHOYMT.js';
|
|
38
39
|
import './chunk-Z5M4YYWT.js';
|
|
39
40
|
import { useTranslation } from './chunk-TYNZ5B2B.js';
|
|
40
|
-
import { LazyErrorPage } from './chunk-
|
|
41
|
+
import { LazyErrorPage } from './chunk-IUEYRDEI.js';
|
|
41
42
|
import './chunk-AXW67SY7.js';
|
|
42
43
|
import './chunk-BYMOPN2S.js';
|
|
43
44
|
import './chunk-SKLEJJ6M.js';
|
|
@@ -154,5 +155,5 @@ function NotFoundPage(props = {}) {
|
|
|
154
155
|
}
|
|
155
156
|
|
|
156
157
|
export { NotFoundPage };
|
|
157
|
-
//# sourceMappingURL=not-found-
|
|
158
|
-
//# sourceMappingURL=not-found-
|
|
158
|
+
//# sourceMappingURL=not-found-ZN7HOUO4.js.map
|
|
159
|
+
//# sourceMappingURL=not-found-ZN7HOUO4.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/routes/product-short-link.ts","../src/routes/not-found.tsx"],"names":[],"mappings":"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","file":"not-found-ZN7HOUO4.js","sourcesContent":["import { useEffect, useState } from 'react';\nimport { product } from '../api/product';\nimport { isLocale } from '../providers/locale-constants';\nimport { useLocation, useNavigate } from '../providers/NavigationProvider';\n\n/** Short codes are 5-10 letters/digits (e.g. `lvXvzln`). */\nconst SHORT_CODE = /^[A-Za-z0-9]{5,10}$/;\n\n/**\n * The product short code in a path shaped `/{locale}/{code}` or `/{code}` (the\n * store base is already stripped from the router's location), plus the locale\n * segment to keep when redirecting. `null` for any other path.\n */\nexport function parseShortLinkPath(pathname: string): { code: string; locale?: string } | null {\n const segments = pathname.split('/').filter(Boolean);\n if (segments.length === 2 && isLocale(segments[0]) && SHORT_CODE.test(segments[1])) {\n return { code: segments[1], locale: segments[0] };\n }\n if (segments.length === 1 && !isLocale(segments[0]) && SHORT_CODE.test(segments[0])) {\n return { code: segments[0] };\n }\n return null;\n}\n\n/** A product URL in the stores' \"new URLs\" format: `{sku}-{name}`, or `p{id}-{name}` without a SKU. */\nconst PRODUCT_KEY = /^([0-9A-Za-z]+)-./;\n\n/** The `{sku}` or `p{id}` key of `/{locale}/{sku}-{name}` or `/{sku}-{name}`, with that locale. */\nexport function parseProductKeyPath(pathname: string): { key: string; locale?: string } | null {\n const segments = pathname.split('/').filter(Boolean);\n const hasLocale = segments.length === 2 && isLocale(segments[0]);\n if (!hasLocale && (segments.length !== 1 || isLocale(segments[0]))) return null;\n const key = segments[segments.length - 1].match(PRODUCT_KEY)?.[1];\n if (!key) return null;\n return hasLocale ? { key, locale: segments[0] } : { key };\n}\n\nfunction productKeyOf(url: string | undefined): string | undefined {\n try {\n const last = new URL(url ?? '').pathname.split('/').filter(Boolean).pop() ?? '';\n return last.match(PRODUCT_KEY)?.[1];\n } catch {\n return undefined;\n }\n}\n\n/** Like Laravel: `p{id}` is the id; anything else is a SKU, which only search can find. */\nasync function findByProductKey(key: string): Promise<number | null> {\n const id = key.match(/^p(\\d+)$/)?.[1];\n if (id) return Number(id);\n const { items } = await product.list({ source: 'search', keyword: key, perPage: 50 });\n const found = items.find((item) => productKeyOf(item.url) === key);\n return found ? Number(found.id) : null;\n}\n\n/** The SEO slug from a product URL (`…/{slug}/p{id}`), `-` when it has none. */\nexport function slugFromProductUrl(url: string | undefined): string {\n try {\n const segments = new URL(url ?? '').pathname.split('/').filter(Boolean);\n const last = segments[segments.length - 1] ?? '';\n return /^p\\d+$/.test(last) && segments.length > 1 ? segments[segments.length - 2] : '-';\n } catch {\n return '-';\n }\n}\n\n/**\n * Resolves a product URL that matched no route, a short link (`/ar/lvXvzln`) or\n * a \"new URLs\" one (`/ar/1213asa-chocolate`), and replaces the URL with the\n * product's page. Returns `true` while a lookup is in flight (so the 404 isn't\n * flashed); settles to `false` when the path is neither or doesn't resolve.\n */\nexport function useProductShortLink(): boolean {\n const { pathname } = useLocation();\n const navigate = useNavigate();\n const shortLink = parseShortLinkPath(pathname);\n const productKey = parseProductKeyPath(pathname);\n const lookup = shortLink?.code ?? productKey?.key;\n const locale = shortLink?.locale ?? productKey?.locale;\n const isShortLink = !!shortLink;\n const [failed, setFailed] = useState<string | null>(null);\n\n useEffect(() => {\n if (!lookup) return;\n let cancelled = false;\n const productPath = isShortLink\n ? product\n .find(lookup)\n .then((found) => (found?.id ? `${slugFromProductUrl(found.url)}/p${found.id}` : null))\n : findByProductKey(lookup).then((id) => (id ? `-/p${id}` : null));\n productPath\n .then((path) => {\n if (cancelled) return;\n if (!path) return setFailed(lookup);\n navigate(`${locale ? `/${locale}` : ''}/${path}`, { replace: true });\n })\n .catch(() => !cancelled && setFailed(lookup));\n return () => {\n cancelled = true;\n };\n }, [lookup, isShortLink, locale, navigate]);\n\n return !!lookup && failed !== lookup;\n}\n","import type { ComponentType, ReactNode } from 'react';\nimport { HookSlot } from '../hooks';\nimport { useTranslation } from '../providers/I18nProvider';\nimport { ErrorPage } from '../components/common';\nimport { useProductShortLink } from './product-short-link';\n\nexport interface NotFoundPageProps {\n title?: string;\n message?: string;\n showHomeLink?: boolean;\n homeLinkText?: string;\n LinkComponent?: ComponentType<{\n to: string;\n className?: string;\n style?: React.CSSProperties;\n children: ReactNode;\n }>;\n}\n\nexport function NotFoundPage(props: NotFoundPageProps = {}) {\n const { t } = useTranslation();\n // A product short link (`/ar/lvXvzln`) or \"new URLs\" link (`/ar/1213asa-name`) matches no route; resolve it instead of 404ing.\n const resolvingShortLink = useProductShortLink();\n\n const {\n title = t('common.errors.404') || 'Page Not Found',\n message = t('common.errors.error_occurred') ||\n 'The page you are looking for does not exist or has been moved.',\n showHomeLink = true,\n homeLinkText = t('common.elements.back_home') || 'Back to Home',\n LinkComponent,\n } = props;\n\n if (resolvingShortLink) return null;\n\n return (\n <ErrorPage\n code={404}\n title={title}\n message={message}\n showAction={showHomeLink}\n actionText={homeLinkText}\n LinkComponent={LinkComponent}\n >\n <HookSlot name=\"notfound:start\" />\n <HookSlot name=\"notfound:content\" />\n <HookSlot name=\"notfound:end\" />\n </ErrorPage>\n );\n}\n"]}
|
|
@@ -201,6 +201,8 @@ export declare function NavigationInterceptor(): null;
|
|
|
201
201
|
* @returns The relative path string, or null if the URL is external
|
|
202
202
|
*/
|
|
203
203
|
export declare function resolveRelativePath(href: string, storeUrl: string, username?: string | null): string | null;
|
|
204
|
+
/** Whether a store-relative path (`/ar/cart/booking/1?x`) is one of the app's pages. */
|
|
205
|
+
export declare function isAppPath(path: string): boolean;
|
|
204
206
|
/**
|
|
205
207
|
* shouldIntercept - Determine if an anchor click should be intercepted by SPA router
|
|
206
208
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NavigationProvider.d.ts","sourceRoot":"","sources":["../../src/providers/NavigationProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAQL,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAEf,OAAO,EAAyC,KAAK,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"NavigationProvider.d.ts","sourceRoot":"","sources":["../../src/providers/NavigationProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAQL,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAEf,OAAO,EAAyC,KAAK,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AASnG,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,YAAY,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAGvD,YAAY,EAAE,gBAAgB,IAAI,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAExE,MAAM,MAAM,eAAe,GAAG;IAAE,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC;AACpD,MAAM,MAAM,UAAU,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,eAAe,KAAK,IAAI,CAAC;AAEtE,oDAAoD;AACpD,qBAAa,aAAc,SAAQ,KAAK;IAE7B,IAAI,EAAE,MAAM;IACZ,OAAO;gBADP,IAAI,EAAE,MAAM,EACZ,OAAO,UAAQ;CAKzB;AAED,6CAA6C;AAC7C,qBAAa,aAAc,SAAQ,KAAK;gBAC1B,OAAO,CAAC,EAAE,MAAM;CAI7B;AAED,iDAAiD;AACjD,qBAAa,iBAAkB,SAAQ,KAAK;gBAC9B,OAAO,CAAC,EAAE,MAAM;CAI7B;AAED,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,eAAO,MAAM,eAAe,EAAE,UAG7B,CAAC;AAEF,MAAM,WAAW,eAAe;IAC9B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,iGAAiG;IACjG,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,kFAAkF;AAClF,eAAO,MAAM,eAAe,GAAI,MAAM,MAAM,EAAE,OAAO,eAAe,KAAG,KAUtE,CAAC;AAEF,8CAA8C;AAC9C,eAAO,MAAM,eAAe,GAAI,UAAU,MAAM,KAAG,KAElD,CAAC;AAEF,kDAAkD;AAClD,eAAO,MAAM,mBAAmB,GAAI,UAAU,MAAM,KAAG,KAEtD,CAAC;AAoBF;;;;;;;;;;;GAWG;AACH,wBAAgB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,KAAK,CAEhD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,YAAY,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,KAAK,CAEpD;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,eAAe,GAAG,KAAK,CAEpE;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE;IAC1C,QAAQ,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,KAAK,KAAK,CAAC;IACvC,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,eAAe,KAAK,KAAK,CAAC;IAC3D,YAAY,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,MAAM,KAAK,KAAK,CAAC;CAC7C,GAAG,IAAI,CAIP;AAID;;;;;;;;;GASG;AACH,wBAAsB,OAAO,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAQhE;AAED,0DAA0D;AAC1D,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAGnE;AAED,kEAAkE;AAClE,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAGzD;AAED;;;;;;;;GAQG;AACH,wBAAsB,cAAc,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAUvE;AAID,UAAU,sBAAsB;IAC9B,QAAQ,EAAE,UAAU,CAAC;CACtB;AAMD,wBAAgB,kBAAkB,CAAC,EACjC,QAAQ,EACR,QAAQ,GACT,EAAE;IACD,QAAQ,EAAE,UAAU,CAAC;IACrB,QAAQ,EAAE,SAAS,CAAC;CACrB,mGAEA;AAID;;;;;;;;;;;;GAYG;AACH,wBAAgB,WAAW,IAAI,UAAU,CAExC;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,UAAU,IAAI,MAAM,CAMnC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,WAAW,CAAC,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,gBAAgB,CAAC,OAAO,CAAC,CAG1F;AAID;uCACuC;AACvC,wBAAgB,SAAS,IAAI,OAAO,CAEnC;AAED,8CAA8C;AAC9C,wBAAgB,YAAY,IAAI,OAAO,CAEtC;AAED,oCAAoC;AACpC,wBAAgB,SAAS,IAAI,OAAO,CAEnC;AAED,gDAAgD;AAChD,wBAAgB,aAAa,IAAI,OAAO,CAEvC;AAED,4CAA4C;AAC5C,wBAAgB,SAAS,IAAI,OAAO,CAGnC;AAED,8CAA8C;AAC9C,wBAAgB,WAAW,IAAI,OAAO,CAGrC;AAED,sCAAsC;AACtC,wBAAgB,WAAW,IAAI,OAAO,CAErC;AAID;;;;;GAKG;AACH,wBAAgB,qBAAqB,IAAI,IAAI,CAK5C;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,GACvB,MAAM,GAAG,IAAI,CAaf;AAqBD,wFAAwF;AACxF,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAU/C;AAOD;;;;;;;;;GASG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,iBAAiB,EAAE,KAAK,EAAE,UAAU,GAAG,OAAO,CAwBrF;AAED;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAgBnD;AAED;;;;;;;GAOG;AACH,wBAAgB,WAAW,CACzB,MAAM,EAAE,iBAAiB,EACzB,KAAK,EAAE,UAAU,EACjB,QAAQ,EAAE,MAAM,GAAG,SAAS,GAC3B,OAAO,CAgBT;AAiBD;;;GAGG;AACH,wBAAgB,wBAAwB,CACtC,QAAQ,EAAE,UAAU,EACpB,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,QAAQ,CAAC,EAAE,MAAM,GAChB,IAAI,CA+HN;AAID,MAAM,WAAW,SAAS;IACxB,+EAA+E;IAC/E,SAAS,CAAC,EAAE,UAAU,GAAG,QAAQ,CAAC;IAClC;;;;OAIG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B"}
|
package/dist/providers/index.js
CHANGED
|
@@ -1,22 +1,23 @@
|
|
|
1
|
-
export { TwilightProvider, registerDocumentSync, routeDocumentSyncs } from '../chunk-
|
|
1
|
+
export { TwilightProvider, registerDocumentSync, routeDocumentSyncs } from '../chunk-CGDUSBLK.js';
|
|
2
2
|
import '../chunk-FHAHE46U.js';
|
|
3
|
-
import '../chunk-
|
|
4
|
-
import '../chunk-
|
|
5
|
-
import '../chunk-
|
|
3
|
+
import '../chunk-672DTSG4.js';
|
|
4
|
+
import '../chunk-HH7WFQLN.js';
|
|
5
|
+
import '../chunk-3CNXPHJE.js';
|
|
6
6
|
import '../chunk-JYV25VNZ.js';
|
|
7
|
-
import '../chunk-
|
|
7
|
+
import '../chunk-SCM4P6QG.js';
|
|
8
8
|
import '../chunk-OXMUPNMH.js';
|
|
9
|
-
import '../chunk-
|
|
9
|
+
import '../chunk-AXPZEXJN.js';
|
|
10
10
|
import '../chunk-VVZNW5CB.js';
|
|
11
11
|
import '../chunk-5FJFN3IW.js';
|
|
12
12
|
import '../chunk-GD26FI4J.js';
|
|
13
|
+
import '../chunk-FID76MUV.js';
|
|
13
14
|
import '../chunk-OM2GRPDH.js';
|
|
14
|
-
export { NavigationInterceptor, NavigationProvider, NotFoundError, RedirectError, UnauthorizedError, configureNavigation, notFound, orThrow, orUnauthorized, redirect, unauthorized, useIsBlog, useIsBrands, useIsCart, useIsCustomer, useIsHome, useIsProduct, useIsSearch, useLocation, useNavigate, useRouteId } from '../chunk-
|
|
15
|
+
export { NavigationInterceptor, NavigationProvider, NotFoundError, RedirectError, UnauthorizedError, configureNavigation, notFound, orThrow, orUnauthorized, redirect, unauthorized, useIsBlog, useIsBrands, useIsCart, useIsCustomer, useIsHome, useIsProduct, useIsSearch, useLocation, useNavigate, useRouteId } from '../chunk-WYWI77EA.js';
|
|
15
16
|
export { RouteId } from '../chunk-OUW6WESU.js';
|
|
16
17
|
import '../chunk-BK5TBUGG.js';
|
|
17
18
|
import '../chunk-HI5V5X3S.js';
|
|
18
|
-
import '../chunk-
|
|
19
|
-
import '../chunk-
|
|
19
|
+
import '../chunk-GSI42HHP.js';
|
|
20
|
+
import '../chunk-ELARAFMR.js';
|
|
20
21
|
import '../chunk-MVT5AF2A.js';
|
|
21
22
|
import '../chunk-Z653O7MX.js';
|
|
22
23
|
import '../chunk-ZCH7W7DZ.js';
|
|
@@ -27,16 +28,16 @@ import '../chunk-7V36I5GT.js';
|
|
|
27
28
|
import '../chunk-6WI7R2BD.js';
|
|
28
29
|
import '../chunk-JGVEGQHJ.js';
|
|
29
30
|
import '../chunk-OAMIDZKW.js';
|
|
30
|
-
import '../chunk-
|
|
31
|
+
import '../chunk-D423MW2M.js';
|
|
31
32
|
import '../chunk-OQIIJRAS.js';
|
|
32
33
|
import '../chunk-V2ZDTY6H.js';
|
|
33
|
-
import '../chunk-
|
|
34
|
+
import '../chunk-54FS47CL.js';
|
|
34
35
|
import '../chunk-5XDPAKF5.js';
|
|
35
36
|
import '../chunk-GCPEMNSU.js';
|
|
36
|
-
import '../chunk-
|
|
37
|
+
import '../chunk-BSGHOYMT.js';
|
|
37
38
|
import '../chunk-Z5M4YYWT.js';
|
|
38
39
|
import '../chunk-TYNZ5B2B.js';
|
|
39
|
-
import '../chunk-
|
|
40
|
+
import '../chunk-IUEYRDEI.js';
|
|
40
41
|
import '../chunk-AXW67SY7.js';
|
|
41
42
|
export { LinkProvider, LinkProviderError, createLinkWithAdapter, useLinkAdapter } from '../chunk-BYMOPN2S.js';
|
|
42
43
|
import '../chunk-SKLEJJ6M.js';
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
export { OrderSingle, OrderSinglePage, Orders, OrdersPage, orderSingleLoader, ordersLoader } from '../../chunk-
|
|
2
|
-
import '../../chunk-
|
|
1
|
+
export { OrderSingle, OrderSinglePage, Orders, OrdersPage, orderSingleLoader, ordersLoader } from '../../chunk-RQ72QOIC.js';
|
|
2
|
+
import '../../chunk-2UQKQTPB.js';
|
|
3
3
|
import '../../chunk-OM2GRPDH.js';
|
|
4
|
-
import '../../chunk-
|
|
4
|
+
import '../../chunk-WYWI77EA.js';
|
|
5
5
|
import '../../chunk-OUW6WESU.js';
|
|
6
|
-
import '../../chunk-
|
|
6
|
+
import '../../chunk-BSGHOYMT.js';
|
|
7
7
|
import '../../chunk-Z5M4YYWT.js';
|
|
8
8
|
import '../../chunk-2TLIULJZ.js';
|
|
9
9
|
import '../../chunk-GYXUYHKO.js';
|
package/dist/routes/account.js
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import { wallet } from '../chunk-
|
|
2
|
-
export { OrderSingle, OrderSinglePage, Orders, OrdersPage, orderSingleLoader, ordersLoader } from '../chunk-
|
|
3
|
-
import '../chunk-
|
|
4
|
-
import { notification } from '../chunk-
|
|
5
|
-
import { wishlist } from '../chunk-
|
|
6
|
-
import '../chunk-
|
|
1
|
+
import { wallet } from '../chunk-X4A3D5O4.js';
|
|
2
|
+
export { OrderSingle, OrderSinglePage, Orders, OrdersPage, orderSingleLoader, ordersLoader } from '../chunk-RQ72QOIC.js';
|
|
3
|
+
import '../chunk-2UQKQTPB.js';
|
|
4
|
+
import { notification } from '../chunk-I5XU5BQH.js';
|
|
5
|
+
import { wishlist } from '../chunk-NLT6YWUD.js';
|
|
6
|
+
import '../chunk-K3PQSDGA.js';
|
|
7
7
|
import { buildHreflangAlternates } from '../chunk-OM2GRPDH.js';
|
|
8
|
-
import { unauthorized, orUnauthorized } from '../chunk-
|
|
8
|
+
import { unauthorized, orUnauthorized } from '../chunk-WYWI77EA.js';
|
|
9
9
|
import { RouteId } from '../chunk-OUW6WESU.js';
|
|
10
|
-
import { getAuthToken } from '../chunk-
|
|
10
|
+
import { getAuthToken } from '../chunk-BSGHOYMT.js';
|
|
11
11
|
import '../chunk-Z5M4YYWT.js';
|
|
12
12
|
import '../chunk-2TLIULJZ.js';
|
|
13
13
|
import '../chunk-GYXUYHKO.js';
|
|
@@ -32,7 +32,7 @@ async function profileLoader(_ctx) {
|
|
|
32
32
|
|
|
33
33
|
// src/routes/account/profile/index.tsx
|
|
34
34
|
var LazyProfilePage = lazy(
|
|
35
|
-
() => import('../ProfilePage-
|
|
35
|
+
() => import('../ProfilePage-2HZYDJBM.js').then((m) => ({ default: m.ProfilePage }))
|
|
36
36
|
);
|
|
37
37
|
var ProfilePage = LazyProfilePage;
|
|
38
38
|
var Profile = {
|
|
@@ -74,7 +74,7 @@ async function wishlistLoader(ctx) {
|
|
|
74
74
|
|
|
75
75
|
// src/routes/account/wishlist/index.tsx
|
|
76
76
|
var LazyWishlistPage = lazy(
|
|
77
|
-
() => import('../WishlistPage-
|
|
77
|
+
() => import('../WishlistPage-JPLKEMDX.js').then((m) => ({ default: m.WishlistPage }))
|
|
78
78
|
);
|
|
79
79
|
var WishlistPage = LazyWishlistPage;
|
|
80
80
|
var Wishlist = {
|
|
@@ -116,7 +116,7 @@ async function walletLoader(ctx) {
|
|
|
116
116
|
}
|
|
117
117
|
|
|
118
118
|
// src/routes/account/wallet/index.tsx
|
|
119
|
-
var LazyWalletPage = lazy(() => import('../WalletPage-
|
|
119
|
+
var LazyWalletPage = lazy(() => import('../WalletPage-5O553SIT.js').then((m) => ({ default: m.WalletPage })));
|
|
120
120
|
var WalletPage = LazyWalletPage;
|
|
121
121
|
var Wallet = {
|
|
122
122
|
id: RouteId.CUSTOMER_WALLET,
|
|
@@ -152,7 +152,7 @@ async function notificationsLoader(_ctx) {
|
|
|
152
152
|
|
|
153
153
|
// src/routes/account/notifications/index.tsx
|
|
154
154
|
var LazyNotificationsPage = lazy(
|
|
155
|
-
() => import('../NotificationsPage-
|
|
155
|
+
() => import('../NotificationsPage-T775PMFX.js').then((m) => ({ default: m.NotificationsPage }))
|
|
156
156
|
);
|
|
157
157
|
var NotificationsPage = LazyNotificationsPage;
|
|
158
158
|
var Notifications = {
|
|
@@ -185,7 +185,7 @@ async function settingsLoader(_ctx) {
|
|
|
185
185
|
|
|
186
186
|
// src/routes/account/settings/index.tsx
|
|
187
187
|
var LazySettingsPage = lazy(
|
|
188
|
-
() => import('../SettingsPage-
|
|
188
|
+
() => import('../SettingsPage-IBWVB4ZJ.js').then((m) => ({ default: m.SettingsPage }))
|
|
189
189
|
);
|
|
190
190
|
var SettingsPage = LazySettingsPage;
|
|
191
191
|
var Settings = {
|
package/dist/routes/blog.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { blog } from '../chunk-
|
|
1
|
+
import { blog } from '../chunk-QYHNS2KS.js';
|
|
2
2
|
import { buildHreflangAlternates } from '../chunk-OM2GRPDH.js';
|
|
3
|
-
import { notFound, orThrow } from '../chunk-
|
|
3
|
+
import { notFound, orThrow } from '../chunk-WYWI77EA.js';
|
|
4
4
|
import { RouteId } from '../chunk-OUW6WESU.js';
|
|
5
|
-
import '../chunk-
|
|
5
|
+
import '../chunk-BSGHOYMT.js';
|
|
6
6
|
import '../chunk-Z5M4YYWT.js';
|
|
7
7
|
import '../chunk-2TLIULJZ.js';
|
|
8
8
|
import '../chunk-GYXUYHKO.js';
|
|
@@ -146,18 +146,18 @@ async function blogTagLoader({
|
|
|
146
146
|
}
|
|
147
147
|
|
|
148
148
|
// src/routes/blog/index.tsx
|
|
149
|
-
var LazyBlogPage = lazy(() => import('../BlogPage-
|
|
149
|
+
var LazyBlogPage = lazy(() => import('../BlogPage-F5OY24RP.js').then((m) => ({ default: m.BlogPage })));
|
|
150
150
|
var LazyBlogSinglePage = lazy(
|
|
151
|
-
() => import('../BlogSinglePage-
|
|
151
|
+
() => import('../BlogSinglePage-YXC5WU3N.js').then((m) => ({ default: m.BlogSinglePage }))
|
|
152
152
|
);
|
|
153
153
|
var LazyBlogAuthorPage = lazy(
|
|
154
|
-
() => import('../BlogAuthorPage-
|
|
154
|
+
() => import('../BlogAuthorPage-DNZSR42D.js').then((m) => ({ default: m.BlogAuthorPage }))
|
|
155
155
|
);
|
|
156
156
|
var LazyBlogCategoryPage = lazy(
|
|
157
|
-
() => import('../BlogCategoryPage-
|
|
157
|
+
() => import('../BlogCategoryPage-AC4DDQ7N.js').then((m) => ({ default: m.BlogCategoryPage }))
|
|
158
158
|
);
|
|
159
159
|
var LazyBlogTagPage = lazy(
|
|
160
|
-
() => import('../BlogTagPage-
|
|
160
|
+
() => import('../BlogTagPage-6QQ2CF2B.js').then((m) => ({ default: m.BlogTagPage }))
|
|
161
161
|
);
|
|
162
162
|
var BlogPage = LazyBlogPage;
|
|
163
163
|
var BlogSinglePage = LazyBlogSinglePage;
|
package/dist/routes/brands.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { brand } from '../chunk-
|
|
1
|
+
import { brand } from '../chunk-EZP2KOEL.js';
|
|
2
2
|
import { buildHreflangAlternates } from '../chunk-OM2GRPDH.js';
|
|
3
|
-
import '../chunk-
|
|
3
|
+
import '../chunk-WYWI77EA.js';
|
|
4
4
|
import { RouteId } from '../chunk-OUW6WESU.js';
|
|
5
|
-
import '../chunk-
|
|
5
|
+
import '../chunk-BSGHOYMT.js';
|
|
6
6
|
import '../chunk-Z5M4YYWT.js';
|
|
7
7
|
import '../chunk-2TLIULJZ.js';
|
|
8
8
|
import '../chunk-GYXUYHKO.js';
|
|
@@ -25,7 +25,7 @@ async function brandsLoader() {
|
|
|
25
25
|
}
|
|
26
26
|
|
|
27
27
|
// src/routes/brands/index.tsx
|
|
28
|
-
var LazyBrandsPage = lazy(() => import('../BrandsPage-
|
|
28
|
+
var LazyBrandsPage = lazy(() => import('../BrandsPage-UXWNTTT3.js').then((m) => ({ default: m.BrandsPage })));
|
|
29
29
|
var BrandsPage = LazyBrandsPage;
|
|
30
30
|
async function brandsLoaderWithExtend(_ctx, extend) {
|
|
31
31
|
const data = await brandsLoader();
|
package/dist/routes/cart.js
CHANGED
|
@@ -1,32 +1,33 @@
|
|
|
1
|
-
import { cart } from '../chunk-
|
|
2
|
-
import { loyalty } from '../chunk-
|
|
1
|
+
import { cart } from '../chunk-NITRRCQV.js';
|
|
2
|
+
import { loyalty } from '../chunk-ORBMN52O.js';
|
|
3
3
|
import { CartSkeleton } from '../chunk-N7CCSGZF.js';
|
|
4
|
-
import '../chunk-
|
|
5
|
-
import '../chunk-
|
|
6
|
-
import '../chunk-
|
|
7
|
-
import '../chunk-
|
|
8
|
-
import { LazySeoCartWidget, LazyCartItem, LazyCartSummary } from '../chunk-
|
|
9
|
-
import '../chunk-
|
|
4
|
+
import '../chunk-RXWWNPCR.js';
|
|
5
|
+
import '../chunk-AN2PETFM.js';
|
|
6
|
+
import '../chunk-T55LMU5R.js';
|
|
7
|
+
import '../chunk-K3PQSDGA.js';
|
|
8
|
+
import { LazySeoCartWidget, LazyCartItem, LazyCartSummary } from '../chunk-2A2NODLC.js';
|
|
9
|
+
import '../chunk-5JN6P5L5.js';
|
|
10
10
|
import '../chunk-Y32RHCOH.js';
|
|
11
|
-
import '../chunk-
|
|
11
|
+
import '../chunk-CGDUSBLK.js';
|
|
12
12
|
import '../chunk-FHAHE46U.js';
|
|
13
|
-
import '../chunk-
|
|
14
|
-
import '../chunk-
|
|
15
|
-
import '../chunk-
|
|
13
|
+
import '../chunk-672DTSG4.js';
|
|
14
|
+
import '../chunk-HH7WFQLN.js';
|
|
15
|
+
import '../chunk-3CNXPHJE.js';
|
|
16
16
|
import '../chunk-JYV25VNZ.js';
|
|
17
|
-
import '../chunk-
|
|
17
|
+
import '../chunk-SCM4P6QG.js';
|
|
18
18
|
import '../chunk-OXMUPNMH.js';
|
|
19
|
-
import '../chunk-
|
|
19
|
+
import '../chunk-AXPZEXJN.js';
|
|
20
20
|
import '../chunk-VVZNW5CB.js';
|
|
21
21
|
import '../chunk-5FJFN3IW.js';
|
|
22
22
|
import '../chunk-GD26FI4J.js';
|
|
23
|
+
import '../chunk-FID76MUV.js';
|
|
23
24
|
import { buildHreflangAlternates } from '../chunk-OM2GRPDH.js';
|
|
24
|
-
import '../chunk-
|
|
25
|
+
import '../chunk-WYWI77EA.js';
|
|
25
26
|
import { RouteId } from '../chunk-OUW6WESU.js';
|
|
26
27
|
import '../chunk-BK5TBUGG.js';
|
|
27
28
|
import '../chunk-HI5V5X3S.js';
|
|
28
|
-
import '../chunk-
|
|
29
|
-
import '../chunk-
|
|
29
|
+
import '../chunk-GSI42HHP.js';
|
|
30
|
+
import '../chunk-ELARAFMR.js';
|
|
30
31
|
import '../chunk-MVT5AF2A.js';
|
|
31
32
|
import '../chunk-Z653O7MX.js';
|
|
32
33
|
import '../chunk-ZCH7W7DZ.js';
|
|
@@ -37,16 +38,16 @@ import '../chunk-7V36I5GT.js';
|
|
|
37
38
|
import '../chunk-6WI7R2BD.js';
|
|
38
39
|
import '../chunk-JGVEGQHJ.js';
|
|
39
40
|
import '../chunk-OAMIDZKW.js';
|
|
40
|
-
import '../chunk-
|
|
41
|
+
import '../chunk-D423MW2M.js';
|
|
41
42
|
import '../chunk-OQIIJRAS.js';
|
|
42
43
|
import '../chunk-V2ZDTY6H.js';
|
|
43
|
-
import '../chunk-
|
|
44
|
+
import '../chunk-54FS47CL.js';
|
|
44
45
|
import { HookSlot } from '../chunk-5XDPAKF5.js';
|
|
45
46
|
import '../chunk-GCPEMNSU.js';
|
|
46
|
-
import '../chunk-
|
|
47
|
+
import '../chunk-BSGHOYMT.js';
|
|
47
48
|
import '../chunk-Z5M4YYWT.js';
|
|
48
49
|
import { useTranslation } from '../chunk-TYNZ5B2B.js';
|
|
49
|
-
import { LazyBreadcrumb, LazyNoContent } from '../chunk-
|
|
50
|
+
import { LazyBreadcrumb, LazyNoContent } from '../chunk-IUEYRDEI.js';
|
|
50
51
|
import '../chunk-AXW67SY7.js';
|
|
51
52
|
import '../chunk-BYMOPN2S.js';
|
|
52
53
|
import '../chunk-SKLEJJ6M.js';
|
package/dist/routes/cart.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/routes/cart/CartPage.tsx","../../src/routes/cart/loader.ts","../../src/routes/cart/index.tsx"],"names":[],"mappings":"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","file":"cart.js","sourcesContent":["import { useQuery } from '@tanstack/react-query';\nimport { SallaConditionalOffer } from '@salla.sa/twilight-components-react/conditional-offer';\nimport { SallaOffer } from '@salla.sa/twilight-components-react/offer';\nimport { SallaProductOptions } from '@salla.sa/twilight-components-react/product-options';\nimport { HookSlot } from '../../hooks';\nimport { useTranslation } from '../../providers/I18nProvider';\nimport type { CartPageProps } from './types';\nimport { Breadcrumb, NoContent } from '../../components/common';\nimport { CartItem, CartSummary, SeoCartWidget } from '../../components/cart';\nimport { useTwilight } from '../../providers/twilight-context';\nimport { CartSkeleton } from '../../skeleton';\nimport { loyalty } from '../../api/loyalty';\nimport { cart } from '../../api/cart';\n\nfunction CartPageContent({ page }: CartPageProps) {\n const { store } = useTwilight();\n const { t } = useTranslation();\n const { data: loyaltyPoints } = useQuery(loyalty.queries.points());\n\n const { data: cartId } = useQuery(cart.queries.currentId());\n\n const { data: cartData } = useQuery({\n ...cart.queries.detail(cartId!),\n enabled: !!cartId,\n });\n\n const isLoading = cartId == null || cartData === undefined;\n\n if (isLoading) {\n return <CartSkeleton />;\n }\n\n // No cart: it was already turned into an order, shown empty like Twig.\n if (!cartData || cartData.items.length === 0) {\n return (\n <div className=\"container\">\n <Breadcrumb page={page} />\n <NoContent\n icon=\"sicon-shopping-bag\"\n message={t('pages.cart.empty_cart', 'Your cart is empty')}\n actionLabel={t('common.elements.back_home', 'Back to Home')}\n actionUrl=\"/\"\n />\n </div>\n );\n }\n\n return (\n <div className=\"container\">\n {/* Analytics — no visible UI, fires GTM checkout events */}\n <SeoCartWidget cart={cartData} />\n\n <Breadcrumb page={page} />\n <h1 className=\"sr-only\">{t('common.titles.cart', 'Cart')}</h1>\n <SallaConditionalOffer />\n\n <HookSlot name=\"cart:start\" />\n\n <div className=\"pt-5 flex flex-col items-start lg:flex-row pb-6 lg:pb-20\">\n <div className=\"main-content w-full lg:w-[calc(100%-384px)]\">\n <HookSlot name=\"cart:items.start\" context={{ cartItems: cartData.items }} />\n\n {cartData.items.map((item, index) => (\n <CartItem key={item.id} item={item} isFirst={index === 0} />\n ))}\n\n {cartData.options?.length > 0 && (\n <div className=\"cart-options\">\n {cartData.options.map((option) => (\n <form\n key={option.id}\n className=\"first:pt-5 relative\"\n onChange={(e) => window.salla?.form.onChange('cart.updateItem', e)}\n id={`item-${option.id}`}\n >\n <input type=\"hidden\" name=\"id\" value={option.id} />\n <input type=\"hidden\" name=\"quantity\" value={option.quantity} />\n {/* Twig: {% include 'pages.partials.product.options' with {product:product_option} %} */}\n {option.options && option.options.length > 0 && (\n <SallaProductOptions\n options={JSON.stringify(option.options)}\n productId={option.id}\n />\n )}\n </form>\n ))}\n </div>\n )}\n\n <SallaOffer />\n <HookSlot name=\"cart:items.end\" />\n </div>\n\n <CartSummary\n cart={cartData}\n applyCouponEnabled={store.settings?.cart?.apply_coupon_enabled}\n taxAmount={cartData.tax_amount}\n key={cartData.id}\n loyalty={cartData.loyalty}\n gift={cartData.gift}\n loyaltyPoints={loyaltyPoints ?? undefined}\n />\n </div>\n\n <HookSlot name=\"cart:end\" />\n </div>\n );\n}\n\nexport function CartPage(props: CartPageProps) {\n return <CartPageContent {...props} />;\n}\n","import type { CartPageProps } from './types';\nimport { getTwilightContext } from '../../twilight/context';\nimport { RouteId } from '../../router/route-ids';\n\n/**\n * SSR-safe loader that returns only page metadata.\n * Cart data is fetched client-side via React Query since the cart ID\n * lives in localStorage (unavailable during SSR).\n */\nexport function cartLoader(): CartPageProps {\n const i18n = getTwilightContext().i18n;\n return {\n page: { slug: RouteId.CART, title: i18n.t('common.titles.cart') || 'Cart' },\n } as CartPageProps;\n}\n","import type { HeadDescriptor } from '../../utils/head';\nimport { buildHreflangAlternates } from '../../utils/baseHead';\nimport { CartPage } from './CartPage';\nimport { cartLoader } from './loader';\nimport type { CartPageProps } from './types';\nimport type { TwilightContext } from '../../twilight/context';\nimport { RouteId } from '../../router/route-ids';\n\nexport { CartPage } from './CartPage';\nexport { cartLoader } from './loader';\nexport type { CartPageProps } from './types';\n\nasync function loader(\n _ctx?: { locale?: string },\n extend?: (\n data: CartPageProps,\n ctx: { params: Record<string, never> }\n ) => Promise<Record<string, unknown>> | Record<string, unknown>\n): Promise<CartPageProps> {\n const data = cartLoader();\n\n if (extend) {\n const extra = extend(data, { params: {} });\n return { ...data, ...(extra instanceof Promise ? {} : extra) } as CartPageProps;\n }\n return data;\n}\n\nfunction head(ctx: TwilightContext, data: CartPageProps): HeadDescriptor {\n const base: HeadDescriptor = {\n title: data.page.title,\n description: data.page.description,\n alternateLanguages: buildHreflangAlternates(ctx.settings, ctx.location.pathname),\n };\n\n return base;\n}\n\nexport const Cart = { id: RouteId.CART, loader, head, Component: CartPage } as const;\n"]}
|
|
1
|
+
{"version":3,"sources":["../../src/routes/cart/CartPage.tsx","../../src/routes/cart/loader.ts","../../src/routes/cart/index.tsx"],"names":[],"mappings":"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","file":"cart.js","sourcesContent":["import { useQuery } from '@tanstack/react-query';\nimport { SallaConditionalOffer } from '@salla.sa/twilight-components-react/conditional-offer';\nimport { SallaOffer } from '@salla.sa/twilight-components-react/offer';\nimport { SallaProductOptions } from '@salla.sa/twilight-components-react/product-options';\nimport { HookSlot } from '../../hooks';\nimport { useTranslation } from '../../providers/I18nProvider';\nimport type { CartPageProps } from './types';\nimport { Breadcrumb, NoContent } from '../../components/common';\nimport { CartItem, CartSummary, SeoCartWidget } from '../../components/cart';\nimport { useTwilight } from '../../providers/twilight-context';\nimport { CartSkeleton } from '../../skeleton';\nimport { loyalty } from '../../api/loyalty';\nimport { cart } from '../../api/cart';\n\nfunction CartPageContent({ page }: CartPageProps) {\n const { store } = useTwilight();\n const { t } = useTranslation();\n const { data: loyaltyPoints } = useQuery(loyalty.queries.points());\n\n const { data: cartId } = useQuery(cart.queries.currentId());\n\n const { data: cartData } = useQuery({\n ...cart.queries.detail(cartId!),\n enabled: !!cartId,\n });\n\n const isLoading = cartId == null || cartData === undefined;\n\n if (isLoading) {\n return <CartSkeleton />;\n }\n\n // No cart: it was already turned into an order, shown empty like Twig.\n if (!cartData || cartData.items.length === 0) {\n return (\n <div className=\"container\">\n <Breadcrumb page={page} />\n <NoContent\n icon=\"sicon-shopping-bag\"\n message={t('pages.cart.empty_cart', 'Your cart is empty')}\n actionLabel={t('common.elements.back_home', 'Back to Home')}\n actionUrl=\"/\"\n />\n </div>\n );\n }\n\n return (\n <div className=\"container\">\n {/* Analytics — no visible UI, fires GTM checkout events */}\n <SeoCartWidget cart={cartData} />\n\n <Breadcrumb page={page} />\n <h1 className=\"sr-only\">{t('common.titles.cart', 'Cart')}</h1>\n <SallaConditionalOffer />\n\n <HookSlot name=\"cart:start\" />\n\n <div className=\"pt-5 flex flex-col items-start lg:flex-row pb-6 lg:pb-20\">\n <div className=\"main-content w-full lg:w-[calc(100%-384px)]\">\n <HookSlot name=\"cart:items.start\" context={{ cartItems: cartData.items }} />\n\n {cartData.items.map((item, index) => (\n <CartItem key={item.id} item={item} isFirst={index === 0} />\n ))}\n\n {cartData.options?.length > 0 && (\n <div className=\"cart-options\">\n {cartData.options.map((option) => (\n <form\n key={option.id}\n className=\"first:pt-5 relative\"\n onChange={(e) => window.salla?.form.onChange('cart.updateItem', e)}\n id={`item-${option.id}`}\n >\n <input type=\"hidden\" name=\"id\" value={option.id} />\n <input type=\"hidden\" name=\"quantity\" value={option.quantity} />\n {/* Twig: {% include 'pages.partials.product.options' with {product:product_option} %} */}\n {option.options && option.options.length > 0 && (\n <SallaProductOptions\n options={JSON.stringify(option.options)}\n productId={option.id}\n />\n )}\n </form>\n ))}\n </div>\n )}\n\n <SallaOffer />\n <HookSlot name=\"cart:items.end\" />\n </div>\n\n <CartSummary\n cart={cartData}\n applyCouponEnabled={store.settings?.cart?.apply_coupon_enabled}\n taxAmount={cartData.tax_amount}\n key={cartData.id}\n loyalty={cartData.loyalty}\n gift={cartData.gift}\n loyaltyPoints={loyaltyPoints ?? undefined}\n />\n </div>\n\n <HookSlot name=\"cart:end\" />\n </div>\n );\n}\n\nexport function CartPage(props: CartPageProps) {\n return <CartPageContent {...props} />;\n}\n","import type { CartPageProps } from './types';\nimport { getTwilightContext } from '../../twilight/context';\nimport { RouteId } from '../../router/route-ids';\n\n/**\n * SSR-safe loader that returns only page metadata.\n * Cart data is fetched client-side via React Query since the cart ID\n * lives in localStorage (unavailable during SSR).\n */\nexport function cartLoader(): CartPageProps {\n const i18n = getTwilightContext().i18n;\n return {\n page: { slug: RouteId.CART, title: i18n.t('common.titles.cart') || 'Cart' },\n } as CartPageProps;\n}\n","import type { HeadDescriptor } from '../../utils/head';\nimport { buildHreflangAlternates } from '../../utils/baseHead';\nimport { CartPage } from './CartPage';\nimport { cartLoader } from './loader';\nimport type { CartPageProps } from './types';\nimport type { TwilightContext } from '../../twilight/context';\nimport { RouteId } from '../../router/route-ids';\n\nexport { CartPage } from './CartPage';\nexport { cartLoader } from './loader';\nexport type { CartPageProps } from './types';\n\nasync function loader(\n _ctx?: { locale?: string },\n extend?: (\n data: CartPageProps,\n ctx: { params: Record<string, never> }\n ) => Promise<Record<string, unknown>> | Record<string, unknown>\n): Promise<CartPageProps> {\n const data = cartLoader();\n\n if (extend) {\n const extra = extend(data, { params: {} });\n return { ...data, ...(extra instanceof Promise ? {} : extra) } as CartPageProps;\n }\n return data;\n}\n\nfunction head(ctx: TwilightContext, data: CartPageProps): HeadDescriptor {\n const base: HeadDescriptor = {\n title: data.page.title,\n description: data.page.description,\n alternateLanguages: buildHreflangAlternates(ctx.settings, ctx.location.pathname),\n };\n\n return base;\n}\n\nexport const Cart = { id: RouteId.CART, loader, head, Component: CartPage } as const;\n"]}
|
package/dist/routes/home.js
CHANGED
|
@@ -1,28 +1,29 @@
|
|
|
1
|
-
export { Home, HomeSkeleton, homeLoader } from '../chunk-
|
|
2
|
-
export { DefaultHomeComponents, registerHomeComponentConfig, registerHomeComponents } from '../chunk-
|
|
3
|
-
import '../chunk-
|
|
4
|
-
import '../chunk-
|
|
5
|
-
import '../chunk-
|
|
1
|
+
export { Home, HomeSkeleton, homeLoader } from '../chunk-RXWWNPCR.js';
|
|
2
|
+
export { DefaultHomeComponents, registerHomeComponentConfig, registerHomeComponents } from '../chunk-AN2PETFM.js';
|
|
3
|
+
import '../chunk-T55LMU5R.js';
|
|
4
|
+
import '../chunk-K3PQSDGA.js';
|
|
5
|
+
import '../chunk-5JN6P5L5.js';
|
|
6
6
|
import '../chunk-Y32RHCOH.js';
|
|
7
|
-
import '../chunk-
|
|
7
|
+
import '../chunk-CGDUSBLK.js';
|
|
8
8
|
import '../chunk-FHAHE46U.js';
|
|
9
|
-
import '../chunk-
|
|
10
|
-
import '../chunk-
|
|
11
|
-
import '../chunk-
|
|
9
|
+
import '../chunk-672DTSG4.js';
|
|
10
|
+
import '../chunk-HH7WFQLN.js';
|
|
11
|
+
import '../chunk-3CNXPHJE.js';
|
|
12
12
|
import '../chunk-JYV25VNZ.js';
|
|
13
|
-
import '../chunk-
|
|
13
|
+
import '../chunk-SCM4P6QG.js';
|
|
14
14
|
import '../chunk-OXMUPNMH.js';
|
|
15
|
-
import '../chunk-
|
|
15
|
+
import '../chunk-AXPZEXJN.js';
|
|
16
16
|
import '../chunk-VVZNW5CB.js';
|
|
17
17
|
import '../chunk-5FJFN3IW.js';
|
|
18
18
|
import '../chunk-GD26FI4J.js';
|
|
19
|
+
import '../chunk-FID76MUV.js';
|
|
19
20
|
import '../chunk-OM2GRPDH.js';
|
|
20
|
-
import '../chunk-
|
|
21
|
+
import '../chunk-WYWI77EA.js';
|
|
21
22
|
import '../chunk-OUW6WESU.js';
|
|
22
23
|
import '../chunk-BK5TBUGG.js';
|
|
23
24
|
import '../chunk-HI5V5X3S.js';
|
|
24
|
-
import '../chunk-
|
|
25
|
-
import '../chunk-
|
|
25
|
+
import '../chunk-GSI42HHP.js';
|
|
26
|
+
import '../chunk-ELARAFMR.js';
|
|
26
27
|
import '../chunk-MVT5AF2A.js';
|
|
27
28
|
import '../chunk-Z653O7MX.js';
|
|
28
29
|
import '../chunk-ZCH7W7DZ.js';
|
|
@@ -33,16 +34,16 @@ import '../chunk-7V36I5GT.js';
|
|
|
33
34
|
import '../chunk-6WI7R2BD.js';
|
|
34
35
|
import '../chunk-JGVEGQHJ.js';
|
|
35
36
|
import '../chunk-OAMIDZKW.js';
|
|
36
|
-
import '../chunk-
|
|
37
|
+
import '../chunk-D423MW2M.js';
|
|
37
38
|
import '../chunk-OQIIJRAS.js';
|
|
38
39
|
import '../chunk-V2ZDTY6H.js';
|
|
39
|
-
import '../chunk-
|
|
40
|
+
import '../chunk-54FS47CL.js';
|
|
40
41
|
import '../chunk-5XDPAKF5.js';
|
|
41
42
|
import '../chunk-GCPEMNSU.js';
|
|
42
|
-
import '../chunk-
|
|
43
|
+
import '../chunk-BSGHOYMT.js';
|
|
43
44
|
import '../chunk-Z5M4YYWT.js';
|
|
44
45
|
import '../chunk-TYNZ5B2B.js';
|
|
45
|
-
import '../chunk-
|
|
46
|
+
import '../chunk-IUEYRDEI.js';
|
|
46
47
|
import '../chunk-AXW67SY7.js';
|
|
47
48
|
import '../chunk-BYMOPN2S.js';
|
|
48
49
|
import '../chunk-SKLEJJ6M.js';
|
package/dist/routes/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
export { slugBrandRedirectLoader } from '../chunk-
|
|
2
|
-
import '../chunk-
|
|
1
|
+
export { slugBrandRedirectLoader } from '../chunk-4SMWY54W.js';
|
|
2
|
+
import '../chunk-WYWI77EA.js';
|
|
3
3
|
import '../chunk-OUW6WESU.js';
|
|
4
|
-
import '../chunk-
|
|
4
|
+
import '../chunk-BSGHOYMT.js';
|
|
5
5
|
import '../chunk-Z5M4YYWT.js';
|
|
6
6
|
import '../chunk-TYNZ5B2B.js';
|
|
7
7
|
import '../chunk-2TLIULJZ.js';
|
package/dist/routes/loyalty.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { loyalty } from '../chunk-
|
|
1
|
+
import { loyalty } from '../chunk-ORBMN52O.js';
|
|
2
2
|
import { buildHreflangAlternates } from '../chunk-OM2GRPDH.js';
|
|
3
|
-
import { unauthorized, orUnauthorized, redirect } from '../chunk-
|
|
3
|
+
import { unauthorized, orUnauthorized, redirect } from '../chunk-WYWI77EA.js';
|
|
4
4
|
import { RouteId } from '../chunk-OUW6WESU.js';
|
|
5
|
-
import { getAuthToken } from '../chunk-
|
|
5
|
+
import { getAuthToken } from '../chunk-BSGHOYMT.js';
|
|
6
6
|
import '../chunk-Z5M4YYWT.js';
|
|
7
7
|
import '../chunk-2TLIULJZ.js';
|
|
8
8
|
import '../chunk-GYXUYHKO.js';
|
|
@@ -59,10 +59,10 @@ async function loyaltyPointsLoader(locale) {
|
|
|
59
59
|
|
|
60
60
|
// src/routes/loyalty/index.tsx
|
|
61
61
|
var LazyLoyaltyPage = lazy(
|
|
62
|
-
() => import('../LoyaltyPage-
|
|
62
|
+
() => import('../LoyaltyPage-NSHSLS4O.js').then((m) => ({ default: m.LoyaltyPage }))
|
|
63
63
|
);
|
|
64
64
|
var LazyLoyaltyPointsPage = lazy(
|
|
65
|
-
() => import('../LoyaltyPointsPage-
|
|
65
|
+
() => import('../LoyaltyPointsPage-7CUUKDLR.js').then((m) => ({ default: m.LoyaltyPointsPage }))
|
|
66
66
|
);
|
|
67
67
|
var LoyaltyPage = LazyLoyaltyPage;
|
|
68
68
|
var LoyaltyPointsPage = LazyLoyaltyPointsPage;
|