@salla.sa/twilight-theme-engine 1.0.151 → 1.0.153
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-O6TPONV2.js → AddToCartForm-SOC5GBBM.js} +3 -3
- package/dist/{AddToCartForm-O6TPONV2.js.map → AddToCartForm-SOC5GBBM.js.map} +1 -1
- package/dist/{BlogAuthorPage-H6LRQ5YW.js → BlogAuthorPage-TTL4SIQA.js} +16 -16
- package/dist/{BlogAuthorPage-H6LRQ5YW.js.map → BlogAuthorPage-TTL4SIQA.js.map} +1 -1
- package/dist/{BlogCategoryPage-NORT43JE.js → BlogCategoryPage-RQ3VXFKP.js} +16 -16
- package/dist/{BlogCategoryPage-NORT43JE.js.map → BlogCategoryPage-RQ3VXFKP.js.map} +1 -1
- package/dist/{BlogPage-ZGTRTQT6.js → BlogPage-TAGSF4PK.js} +14 -14
- package/dist/{BlogPage-ZGTRTQT6.js.map → BlogPage-TAGSF4PK.js.map} +1 -1
- package/dist/{BlogSinglePage-G7TUMA4L.js → BlogSinglePage-WFECBPGR.js} +14 -14
- package/dist/{BlogSinglePage-G7TUMA4L.js.map → BlogSinglePage-WFECBPGR.js.map} +1 -1
- package/dist/{BlogTagPage-3LFUVXP3.js → BlogTagPage-LEUUDNOX.js} +16 -16
- package/dist/{BlogTagPage-3LFUVXP3.js.map → BlogTagPage-LEUUDNOX.js.map} +1 -1
- package/dist/{BrandsPage-NA5BVFVS.js → BrandsPage-3DKJL2UC.js} +15 -15
- package/dist/{BrandsPage-NA5BVFVS.js.map → BrandsPage-3DKJL2UC.js.map} +1 -1
- package/dist/{Breadcrumb-MNSFVYUT.js → Breadcrumb-CZUWG3RH.js} +14 -14
- package/dist/{Breadcrumb-MNSFVYUT.js.map → Breadcrumb-CZUWG3RH.js.map} +1 -1
- package/dist/{CartItem-N6OPII7B.js → CartItem-ZZZ34FK2.js} +14 -14
- package/dist/{CartItem-N6OPII7B.js.map → CartItem-ZZZ34FK2.js.map} +1 -1
- package/dist/{CartSummary-LGYAIG7C.js → CartSummary-YICFP2HG.js} +14 -14
- package/dist/{CartSummary-LGYAIG7C.js.map → CartSummary-YICFP2HG.js.map} +1 -1
- package/dist/{Copyright-YXWJNV5Q.js → Copyright-N7AWWM6R.js} +3 -3
- package/dist/{Copyright-YXWJNV5Q.js.map → Copyright-N7AWWM6R.js.map} +1 -1
- package/dist/{CustomerLayout-YU7TKV2Q.js → CustomerLayout-CDARXLTX.js} +14 -14
- package/dist/{CustomerLayout-YU7TKV2Q.js.map → CustomerLayout-CDARXLTX.js.map} +1 -1
- package/dist/{Footer-4QV4H67O.js → Footer-UAEQ5SBA.js} +4 -4
- package/dist/{Footer-4QV4H67O.js.map → Footer-UAEQ5SBA.js.map} +1 -1
- package/dist/{Header-DEUDDAWD.js → Header-TNV53WAC.js} +8 -8
- package/dist/{Header-DEUDDAWD.js.map → Header-TNV53WAC.js.map} +1 -1
- package/dist/{LatestProducts-KA54KWOQ.js → LatestProducts-CPULMFWH.js} +16 -16
- package/dist/{LatestProducts-KA54KWOQ.js.map → LatestProducts-CPULMFWH.js.map} +1 -1
- package/dist/{LoyaltyPage-7FJROQFU.js → LoyaltyPage-YYYXZOYO.js} +14 -14
- package/dist/{LoyaltyPage-7FJROQFU.js.map → LoyaltyPage-YYYXZOYO.js.map} +1 -1
- package/dist/{LoyaltyPointsPage-JXT65P5U.js → LoyaltyPointsPage-66N76CP7.js} +6 -6
- package/dist/{LoyaltyPointsPage-JXT65P5U.js.map → LoyaltyPointsPage-66N76CP7.js.map} +1 -1
- package/dist/{MainMenu-UOAPVNJH.js → MainMenu-7WKMQYJE.js} +5 -5
- package/dist/{MainMenu-UOAPVNJH.js.map → MainMenu-7WKMQYJE.js.map} +1 -1
- package/dist/{MasterLayout-Z45QJW3M.js → MasterLayout-NXS4567C.js} +14 -14
- package/dist/{MasterLayout-Z45QJW3M.js.map → MasterLayout-NXS4567C.js.map} +1 -1
- package/dist/{MobileMenu-A4QIBBYN.js → MobileMenu-2ISSFTOL.js} +15 -15
- package/dist/{MobileMenu-A4QIBBYN.js.map → MobileMenu-2ISSFTOL.js.map} +1 -1
- package/dist/{NotificationsPage-XU5IBNPR.js → NotificationsPage-GRLVJK4Q.js} +14 -14
- package/dist/{NotificationsPage-XU5IBNPR.js.map → NotificationsPage-GRLVJK4Q.js.map} +1 -1
- package/dist/{OrderSinglePage-5ANTMCBP.js → OrderSinglePage-XEX3ZDU4.js} +15 -15
- package/dist/{OrderSinglePage-5ANTMCBP.js.map → OrderSinglePage-XEX3ZDU4.js.map} +1 -1
- package/dist/{OrdersPage-LZLPSDZR.js → OrdersPage-7H5NZQYQ.js} +14 -14
- package/dist/{OrdersPage-LZLPSDZR.js.map → OrdersPage-7H5NZQYQ.js.map} +1 -1
- package/dist/{PageSingle-PMLCSRMC.js → PageSingle-Q6RGRZEC.js} +3 -3
- package/dist/{PageSingle-PMLCSRMC.js.map → PageSingle-Q6RGRZEC.js.map} +1 -1
- package/dist/{ProductDetails-ECPCGZLO.js → ProductDetails-6W6YIGUS.js} +4 -4
- package/dist/{ProductDetails-ECPCGZLO.js.map → ProductDetails-6W6YIGUS.js.map} +1 -1
- package/dist/{ProfilePage-XVWB4ZOO.js → ProfilePage-P5NHML4X.js} +14 -14
- package/dist/{ProfilePage-XVWB4ZOO.js.map → ProfilePage-P5NHML4X.js.map} +1 -1
- package/dist/{ReviewsPage-6EOSOIU4.js → ReviewsPage-D2EPXJJZ.js} +3 -3
- package/dist/{ReviewsPage-6EOSOIU4.js.map → ReviewsPage-D2EPXJJZ.js.map} +1 -1
- package/dist/{SeoCartWidget-TYNXS4UD.js → SeoCartWidget-VMNWM3FM.js} +14 -14
- package/dist/{SeoCartWidget-TYNXS4UD.js.map → SeoCartWidget-VMNWM3FM.js.map} +1 -1
- package/dist/{SettingsPage-BHW3CJC6.js → SettingsPage-JYEI7C4T.js} +14 -14
- package/dist/{SettingsPage-BHW3CJC6.js.map → SettingsPage-JYEI7C4T.js.map} +1 -1
- package/dist/{StoreClosedNotification-7YHL4XTT.js → StoreClosedNotification-U36UX33X.js} +15 -15
- package/dist/{StoreClosedNotification-7YHL4XTT.js.map → StoreClosedNotification-U36UX33X.js.map} +1 -1
- package/dist/{TestimonialsPage-ZY2U4QDN.js → TestimonialsPage-O2FN7CPT.js} +3 -3
- package/dist/{TestimonialsPage-ZY2U4QDN.js.map → TestimonialsPage-O2FN7CPT.js.map} +1 -1
- package/dist/{ThankYouPage-MINROTEH.js → ThankYouPage-UEHR5653.js} +14 -14
- package/dist/{ThankYouPage-MINROTEH.js.map → ThankYouPage-UEHR5653.js.map} +1 -1
- package/dist/{WalletPage-4VFAGWIE.js → WalletPage-5X37XHOU.js} +15 -15
- package/dist/{WalletPage-4VFAGWIE.js.map → WalletPage-5X37XHOU.js.map} +1 -1
- package/dist/{WebMcpTools-F42SFWVP.js → WebMcpTools-6ZN6KROP.js} +5 -5
- package/dist/{WebMcpTools-F42SFWVP.js.map → WebMcpTools-6ZN6KROP.js.map} +1 -1
- package/dist/{WishlistPage-VMM4YDMX.js → WishlistPage-2JCIUJEP.js} +16 -16
- package/dist/{WishlistPage-VMM4YDMX.js.map → WishlistPage-2JCIUJEP.js.map} +1 -1
- 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.js +2 -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-LDXVGQA2.js → chunk-2BRLDR24.js} +3 -3
- package/dist/{chunk-LDXVGQA2.js.map → chunk-2BRLDR24.js.map} +1 -1
- package/dist/{chunk-CATEET2N.js → chunk-3YMCWKFT.js} +3 -3
- package/dist/{chunk-CATEET2N.js.map → chunk-3YMCWKFT.js.map} +1 -1
- package/dist/{chunk-CH6BNMS6.js → chunk-46CWPZSI.js} +3 -3
- package/dist/{chunk-CH6BNMS6.js.map → chunk-46CWPZSI.js.map} +1 -1
- package/dist/{chunk-DGPSZUI3.js → chunk-4FPHFWEU.js} +4 -4
- package/dist/{chunk-DGPSZUI3.js.map → chunk-4FPHFWEU.js.map} +1 -1
- package/dist/{chunk-DKIU6ZOP.js → chunk-4UPADKLB.js} +4 -4
- package/dist/{chunk-DKIU6ZOP.js.map → chunk-4UPADKLB.js.map} +1 -1
- package/dist/{chunk-OGEG4QHV.js → chunk-4XT63VFN.js} +3 -3
- package/dist/{chunk-OGEG4QHV.js.map → chunk-4XT63VFN.js.map} +1 -1
- package/dist/{chunk-77SZTUQE.js → chunk-53ULTYEF.js} +7 -7
- package/dist/{chunk-77SZTUQE.js.map → chunk-53ULTYEF.js.map} +1 -1
- package/dist/{chunk-RRDKYXHU.js → chunk-5WVJYMDS.js} +3 -3
- package/dist/{chunk-RRDKYXHU.js.map → chunk-5WVJYMDS.js.map} +1 -1
- package/dist/{chunk-A7E6XFZC.js → chunk-6REUUGFM.js} +15 -15
- package/dist/{chunk-A7E6XFZC.js.map → chunk-6REUUGFM.js.map} +1 -1
- package/dist/{chunk-GZUBV5S3.js → chunk-6VBQ6HJO.js} +3 -3
- package/dist/{chunk-GZUBV5S3.js.map → chunk-6VBQ6HJO.js.map} +1 -1
- package/dist/{chunk-DKPM4T4C.js → chunk-7RM7W4G7.js} +4 -4
- package/dist/{chunk-DKPM4T4C.js.map → chunk-7RM7W4G7.js.map} +1 -1
- package/dist/{chunk-LRQ75MWP.js → chunk-7TEJBYGD.js} +7 -7
- package/dist/{chunk-LRQ75MWP.js.map → chunk-7TEJBYGD.js.map} +1 -1
- package/dist/{chunk-K577255O.js → chunk-A5QIBUZ5.js} +7 -7
- package/dist/{chunk-K577255O.js.map → chunk-A5QIBUZ5.js.map} +1 -1
- package/dist/{chunk-T7H5KE5Y.js → chunk-AME4LBNH.js} +4 -4
- package/dist/{chunk-T7H5KE5Y.js.map → chunk-AME4LBNH.js.map} +1 -1
- package/dist/{chunk-OJ4PJK27.js → chunk-ASLHSLMC.js} +4 -4
- package/dist/{chunk-OJ4PJK27.js.map → chunk-ASLHSLMC.js.map} +1 -1
- package/dist/{chunk-F6MYOPZB.js → chunk-BBTYM4OY.js} +4 -4
- package/dist/{chunk-F6MYOPZB.js.map → chunk-BBTYM4OY.js.map} +1 -1
- package/dist/{chunk-H7A7LOQJ.js → chunk-DWWPRLD3.js} +3 -3
- package/dist/{chunk-H7A7LOQJ.js.map → chunk-DWWPRLD3.js.map} +1 -1
- package/dist/{chunk-YQ365K65.js → chunk-EMGVOEZZ.js} +3 -3
- package/dist/{chunk-YQ365K65.js.map → chunk-EMGVOEZZ.js.map} +1 -1
- package/dist/{chunk-GYJJX4EI.js → chunk-G4DDINNW.js} +4 -4
- package/dist/{chunk-GYJJX4EI.js.map → chunk-G4DDINNW.js.map} +1 -1
- package/dist/{chunk-5CXBBDJB.js → chunk-JIFM6LXR.js} +4 -4
- package/dist/{chunk-5CXBBDJB.js.map → chunk-JIFM6LXR.js.map} +1 -1
- package/dist/{chunk-KBWIXAHN.js → chunk-KAIASXU7.js} +6 -4
- package/dist/chunk-KAIASXU7.js.map +1 -0
- package/dist/{chunk-CEIXIUJ7.js → chunk-LDDZ7TUR.js} +4 -4
- package/dist/{chunk-CEIXIUJ7.js.map → chunk-LDDZ7TUR.js.map} +1 -1
- package/dist/{chunk-6R2AUQMP.js → chunk-LYKDZ74X.js} +3 -3
- package/dist/{chunk-6R2AUQMP.js.map → chunk-LYKDZ74X.js.map} +1 -1
- package/dist/{chunk-MVSOSNNB.js → chunk-MO2NP3WX.js} +5 -5
- package/dist/{chunk-MVSOSNNB.js.map → chunk-MO2NP3WX.js.map} +1 -1
- package/dist/{chunk-3JJQCRXD.js → chunk-O6O2PDH5.js} +4 -4
- package/dist/{chunk-3JJQCRXD.js.map → chunk-O6O2PDH5.js.map} +1 -1
- package/dist/{chunk-SF2POPJW.js → chunk-ONBDJMLJ.js} +3 -3
- package/dist/{chunk-SF2POPJW.js.map → chunk-ONBDJMLJ.js.map} +1 -1
- package/dist/{chunk-ULGRYCUV.js → chunk-P7RERWEY.js} +3 -3
- package/dist/{chunk-ULGRYCUV.js.map → chunk-P7RERWEY.js.map} +1 -1
- package/dist/{chunk-MQU6G2ZE.js → chunk-PBTIZ7UF.js} +4 -4
- package/dist/{chunk-MQU6G2ZE.js.map → chunk-PBTIZ7UF.js.map} +1 -1
- package/dist/{chunk-R6Z6JQIB.js → chunk-PSWUFTNS.js} +3 -3
- package/dist/{chunk-R6Z6JQIB.js.map → chunk-PSWUFTNS.js.map} +1 -1
- package/dist/{chunk-R4QBCQ4K.js → chunk-QEE2A7O2.js} +3 -3
- package/dist/{chunk-R4QBCQ4K.js.map → chunk-QEE2A7O2.js.map} +1 -1
- package/dist/{chunk-N2Y5VSHM.js → chunk-QJR5FRIA.js} +4 -4
- package/dist/{chunk-N2Y5VSHM.js.map → chunk-QJR5FRIA.js.map} +1 -1
- package/dist/chunk-T3GORIJL.js +69 -0
- package/dist/chunk-T3GORIJL.js.map +1 -0
- package/dist/{chunk-PHWFTUTE.js → chunk-T3UUH7YX.js} +5 -5
- package/dist/{chunk-PHWFTUTE.js.map → chunk-T3UUH7YX.js.map} +1 -1
- package/dist/{chunk-O7PJBTH3.js → chunk-TK2ZIYF6.js} +3 -3
- package/dist/{chunk-O7PJBTH3.js.map → chunk-TK2ZIYF6.js.map} +1 -1
- package/dist/{chunk-DXQUURZX.js → chunk-U7ZHPOGI.js} +7 -7
- package/dist/{chunk-DXQUURZX.js.map → chunk-U7ZHPOGI.js.map} +1 -1
- package/dist/{chunk-Z4BOATCC.js → chunk-WYMDZDEZ.js} +3 -3
- package/dist/{chunk-Z4BOATCC.js.map → chunk-WYMDZDEZ.js.map} +1 -1
- package/dist/{chunk-WZAJS44F.js → chunk-YBWXK2OT.js} +11 -11
- package/dist/{chunk-WZAJS44F.js.map → chunk-YBWXK2OT.js.map} +1 -1
- package/dist/{chunk-WJCDY35D.js → chunk-YY74QOIL.js} +5 -5
- package/dist/{chunk-WJCDY35D.js.map → chunk-YY74QOIL.js.map} +1 -1
- package/dist/{chunk-Q76O67KK.js → chunk-YZPHKPYI.js} +3 -3
- package/dist/{chunk-Q76O67KK.js.map → chunk-YZPHKPYI.js.map} +1 -1
- package/dist/{chunk-QNGA2NAC.js → chunk-ZHBZ6YMB.js} +4 -4
- package/dist/{chunk-QNGA2NAC.js.map → chunk-ZHBZ6YMB.js.map} +1 -1
- package/dist/{chunk-SBZWX6II.js → chunk-ZKTSLYTT.js} +3 -3
- package/dist/{chunk-SBZWX6II.js.map → chunk-ZKTSLYTT.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 +12 -12
- package/dist/components/home/index.js +17 -17
- package/dist/components/layout/index.js +4 -4
- package/dist/components/product/index.js +14 -14
- package/dist/components/store/index.js +13 -13
- package/dist/dev/editor/index.js +1 -1
- package/dist/dev/index.js +1 -1
- package/dist/{document-class-QZXX5ZEE.js → document-class-YJDZSSZA.js} +12 -12
- package/dist/{document-class-QZXX5ZEE.js.map → document-class-YJDZSSZA.js.map} +1 -1
- package/dist/hooks/index.js +12 -12
- package/dist/hooks/useGtm.js +12 -12
- package/dist/hooks/useMoney.js +12 -12
- package/dist/hooks/useStore.js +12 -12
- package/dist/hooks/useUser.js +3 -3
- package/dist/index.js +12 -12
- package/dist/{navigation-DF4JEVKE.js → navigation-W43IKI56.js} +5 -5
- package/dist/{navigation-DF4JEVKE.js.map → navigation-W43IKI56.js.map} +1 -1
- package/dist/{navigation-FKU75TCE.js → navigation-XQLKHMIZ.js} +4 -4
- package/dist/{navigation-FKU75TCE.js.map → navigation-XQLKHMIZ.js.map} +1 -1
- package/dist/{not-found-E72Z34CJ.js → not-found-LE7TH53E.js} +15 -15
- package/dist/{not-found-E72Z34CJ.js.map → not-found-LE7TH53E.js.map} +1 -1
- package/dist/providers/index.js +12 -12
- 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 +21 -21
- package/dist/routes/home.js +18 -18
- package/dist/routes/index.js +3 -3
- package/dist/routes/loyalty.js +5 -5
- package/dist/routes/page/loader.d.ts.map +1 -1
- package/dist/routes/page.js +5 -4
- package/dist/routes/page.js.map +1 -1
- package/dist/routes/product/loader.d.ts.map +1 -1
- package/dist/routes/product-listing.js +22 -22
- package/dist/routes/product.js +18 -17
- package/dist/routes/product.js.map +1 -1
- package/dist/routes/seo-redirects.d.ts +12 -0
- package/dist/routes/seo-redirects.d.ts.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 +18 -18
- package/dist/{store-lookup-LPXG5JSB.js → store-lookup-FL54XOJB.js} +8 -8
- package/dist/{store-lookup-LPXG5JSB.js.map → store-lookup-FL54XOJB.js.map} +1 -1
- package/dist/tanstack/link.d.ts.map +1 -1
- package/dist/tanstack/templates/locale-wrapper.d.ts +3 -1
- package/dist/tanstack/templates/locale-wrapper.d.ts.map +1 -1
- package/dist/tanstack.js +12 -12
- package/dist/utils/index.js +2 -2
- package/dist/vite/index.js +31 -11
- package/dist/vite/index.js.map +1 -1
- package/package.json +1 -1
- package/tailwind/routes/page/loader.ts.txt +4 -0
- package/tailwind/routes/product/loader.ts.txt +5 -0
- package/tailwind/routes/seo-redirects.ts.txt +52 -2
- package/dist/chunk-3ULBL56H.js +0 -41
- package/dist/chunk-3ULBL56H.js.map +0 -1
- package/dist/chunk-KBWIXAHN.js.map +0 -1
|
@@ -33,6 +33,18 @@ export declare function productsSourceRedirectLoader(ctx: {
|
|
|
33
33
|
source: 'latest' | 'sales' | 'offers';
|
|
34
34
|
search?: string;
|
|
35
35
|
}): Promise<never>;
|
|
36
|
+
/** The page the router matched, as the locale layout's `beforeLoad` sees it. */
|
|
37
|
+
export interface MatchedPage {
|
|
38
|
+
routeId: string;
|
|
39
|
+
params: Record<string, string | undefined>;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Twig's product and category URLs (`/p{id}`, `/p{id}-{name}`, `/category/{hash}`, each with or
|
|
43
|
+
* without a locale) sent to the page that has them now. Run by the locale layout's `beforeLoad`,
|
|
44
|
+
* only for an address no page answers: the router binds `/ar/p1` to `$slug/p{$id}` (slug `ar`)
|
|
45
|
+
* and `/p1` to the locale. A product or category that is gone stays the not-found page.
|
|
46
|
+
*/
|
|
47
|
+
export declare function twigUrlRedirect(pathname: string, search: string, page: MatchedPage | undefined): Promise<void>;
|
|
36
48
|
/**
|
|
37
49
|
* `/logout` — where the SDK sends the browser once `salla.auth.logout()` has run
|
|
38
50
|
* (`salla.url.get('logout?from=…')`). The Twig storefront serves that URL server-side. Here
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"seo-redirects.d.ts","sourceRoot":"","sources":["../../src/routes/seo-redirects.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,eAAe;IAC9B,yEAAyE;IACzE,IAAI,EAAE,MAAM,CAAC;IACb,uCAAuC;IACvC,EAAE,EAAE,MAAM,CAAC;IACX,6EAA6E;IAC7E,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,wBAAsB,uBAAuB,CAAC,GAAG,EAAE;IAAE,MAAM,EAAE,eAAe,CAAA;CAAE,GAAG,OAAO,CAAC,KAAK,CAAC,CAG9F;AAED,MAAM,WAAW,2BAA2B;IAC1C,6EAA6E;IAC7E,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,wBAAsB,2BAA2B,CAC/C,GAAG,GAAE;IAAE,MAAM,EAAE,2BAA2B,CAAA;CAAmB,GAC5D,OAAO,CAAC,KAAK,CAAC,CAGhB;AAED,4HAA4H;AAC5H,wBAAsB,oBAAoB,CACxC,GAAG,GAAE;IAAE,MAAM,EAAE,2BAA2B,CAAA;CAAmB,GAC5D,OAAO,CAAC,KAAK,CAAC,CAGhB;AAED,4FAA4F;AAC5F,wBAAsB,qBAAqB,CAAC,GAAG,EAAE;IAC/C,MAAM,EAAE,2BAA2B,CAAC;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,+EAA+E;IAC/E,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,GAAG,OAAO,CAAC,KAAK,CAAC,CAIjB;AAED,gGAAgG;AAChG,wBAAsB,4BAA4B,CAAC,GAAG,EAAE;IACtD,MAAM,EAAE,2BAA2B,CAAC;IACpC,MAAM,EAAE,QAAQ,GAAG,OAAO,GAAG,QAAQ,CAAC;IACtC,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,GAAG,OAAO,CAAC,KAAK,CAAC,CAQjB;AAED;;;;;;;GAOG;AACH,wBAAgB,cAAc,IAAI,IAAI,CAOrC"}
|
|
1
|
+
{"version":3,"file":"seo-redirects.d.ts","sourceRoot":"","sources":["../../src/routes/seo-redirects.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,eAAe;IAC9B,yEAAyE;IACzE,IAAI,EAAE,MAAM,CAAC;IACb,uCAAuC;IACvC,EAAE,EAAE,MAAM,CAAC;IACX,6EAA6E;IAC7E,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,wBAAsB,uBAAuB,CAAC,GAAG,EAAE;IAAE,MAAM,EAAE,eAAe,CAAA;CAAE,GAAG,OAAO,CAAC,KAAK,CAAC,CAG9F;AAED,MAAM,WAAW,2BAA2B;IAC1C,6EAA6E;IAC7E,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,wBAAsB,2BAA2B,CAC/C,GAAG,GAAE;IAAE,MAAM,EAAE,2BAA2B,CAAA;CAAmB,GAC5D,OAAO,CAAC,KAAK,CAAC,CAGhB;AAED,4HAA4H;AAC5H,wBAAsB,oBAAoB,CACxC,GAAG,GAAE;IAAE,MAAM,EAAE,2BAA2B,CAAA;CAAmB,GAC5D,OAAO,CAAC,KAAK,CAAC,CAGhB;AAED,4FAA4F;AAC5F,wBAAsB,qBAAqB,CAAC,GAAG,EAAE;IAC/C,MAAM,EAAE,2BAA2B,CAAC;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,+EAA+E;IAC/E,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,GAAG,OAAO,CAAC,KAAK,CAAC,CAIjB;AAED,gGAAgG;AAChG,wBAAsB,4BAA4B,CAAC,GAAG,EAAE;IACtD,MAAM,EAAE,2BAA2B,CAAC;IACpC,MAAM,EAAE,QAAQ,GAAG,OAAO,GAAG,QAAQ,CAAC;IACtC,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,GAAG,OAAO,CAAC,KAAK,CAAC,CAQjB;AAKD,gFAAgF;AAChF,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;CAC5C;AASD;;;;;GAKG;AACH,wBAAsB,eAAe,CACnC,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,WAAW,GAAG,SAAS,GAC5B,OAAO,CAAC,IAAI,CAAC,CAsBf;AAED;;;;;;;GAOG;AACH,wBAAgB,cAAc,IAAI,IAAI,CAOrC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
export { LogoutRedirect, accountRedirectLoader, pendingOrdersRedirectLoader, productsSourceRedirectLoader, ratingRedirectLoader, slugBrandRedirectLoader } from '../chunk-
|
|
2
|
-
import '../chunk-
|
|
1
|
+
export { LogoutRedirect, accountRedirectLoader, pendingOrdersRedirectLoader, productsSourceRedirectLoader, ratingRedirectLoader, slugBrandRedirectLoader, twigUrlRedirect } from '../chunk-T3GORIJL.js';
|
|
2
|
+
import '../chunk-DWWPRLD3.js';
|
|
3
3
|
import '../chunk-OUW6WESU.js';
|
|
4
|
-
import '../chunk-
|
|
4
|
+
import '../chunk-EMGVOEZZ.js';
|
|
5
5
|
import '../chunk-Z5M4YYWT.js';
|
|
6
6
|
import '../chunk-IURXJAIK.js';
|
|
7
7
|
import '../chunk-7IVHY4OR.js';
|
|
@@ -33,10 +33,10 @@ async function reviewsLoader() {
|
|
|
33
33
|
|
|
34
34
|
// src/routes/testimonials/index.tsx
|
|
35
35
|
var LazyTestimonialsPage = lazyComponent(
|
|
36
|
-
() => import('../TestimonialsPage-
|
|
36
|
+
() => import('../TestimonialsPage-O2FN7CPT.js').then((m) => ({ default: m.TestimonialsPage }))
|
|
37
37
|
);
|
|
38
38
|
var LazyReviewsPage = lazyComponent(
|
|
39
|
-
() => import('../ReviewsPage-
|
|
39
|
+
() => import('../ReviewsPage-D2EPXJJZ.js').then((m) => ({ default: m.ReviewsPage }))
|
|
40
40
|
);
|
|
41
41
|
var TestimonialsPage = LazyTestimonialsPage;
|
|
42
42
|
var ReviewsPage = LazyReviewsPage;
|
package/dist/routes/thank-you.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { order } from '../chunk-
|
|
1
|
+
import { order } from '../chunk-O6O2PDH5.js';
|
|
2
2
|
import { buildHreflangAlternates, storePageUrl } from '../chunk-M2MJKUQF.js';
|
|
3
|
-
import '../chunk-
|
|
3
|
+
import '../chunk-DWWPRLD3.js';
|
|
4
4
|
import { RouteId } from '../chunk-OUW6WESU.js';
|
|
5
|
-
import { getAuthToken, api } from '../chunk-
|
|
5
|
+
import { getAuthToken, api } from '../chunk-EMGVOEZZ.js';
|
|
6
6
|
import '../chunk-Z5M4YYWT.js';
|
|
7
7
|
import '../chunk-IURXJAIK.js';
|
|
8
8
|
import '../chunk-7IVHY4OR.js';
|
|
@@ -105,7 +105,7 @@ async function thankYouLoader({
|
|
|
105
105
|
|
|
106
106
|
// src/routes/thank-you/index.tsx
|
|
107
107
|
var LazyThankYouPage = lazyComponent(
|
|
108
|
-
() => import('../ThankYouPage-
|
|
108
|
+
() => import('../ThankYouPage-UEHR5653.js').then((m) => ({ default: m.ThankYouPage }))
|
|
109
109
|
);
|
|
110
110
|
var ThankYouPage = LazyThankYouPage;
|
|
111
111
|
async function loader(ctx, extend) {
|
package/dist/skeleton.js
CHANGED
|
@@ -1,33 +1,33 @@
|
|
|
1
1
|
export { BlogSkeleton, BreadcrumbSkeleton, CartSkeleton, CustomerLayoutSkeleton, CustomerPageSkeleton, PageSkeleton, ProductCardSkeleton, ProductDetailSkeleton, ProductGridSkeleton, SkeletonPulse } from './chunk-N7CCSGZF.js';
|
|
2
|
-
export { HomeSkeleton } from './chunk-
|
|
2
|
+
export { HomeSkeleton } from './chunk-T3UUH7YX.js';
|
|
3
3
|
import './chunk-IXHM24Z4.js';
|
|
4
|
-
import './chunk-
|
|
5
|
-
import './chunk-
|
|
6
|
-
import './chunk-
|
|
7
|
-
import './chunk-
|
|
8
|
-
import './chunk-
|
|
4
|
+
import './chunk-7TEJBYGD.js';
|
|
5
|
+
import './chunk-QEE2A7O2.js';
|
|
6
|
+
import './chunk-LDDZ7TUR.js';
|
|
7
|
+
import './chunk-YY74QOIL.js';
|
|
8
|
+
import './chunk-4FPHFWEU.js';
|
|
9
9
|
import './chunk-Y32RHCOH.js';
|
|
10
|
-
import './chunk-
|
|
10
|
+
import './chunk-6REUUGFM.js';
|
|
11
11
|
import './chunk-Q77J3D2W.js';
|
|
12
|
-
import './chunk-
|
|
13
|
-
import './chunk-
|
|
12
|
+
import './chunk-U7ZHPOGI.js';
|
|
13
|
+
import './chunk-46CWPZSI.js';
|
|
14
14
|
import './chunk-GMXNVBCD.js';
|
|
15
15
|
import './chunk-X55R4VVK.js';
|
|
16
16
|
import './chunk-YL6X3ZMG.js';
|
|
17
|
-
import './chunk-
|
|
17
|
+
import './chunk-3YMCWKFT.js';
|
|
18
18
|
import './chunk-OXMUPNMH.js';
|
|
19
|
-
import './chunk-
|
|
19
|
+
import './chunk-LYKDZ74X.js';
|
|
20
20
|
import './chunk-VVZNW5CB.js';
|
|
21
21
|
import './chunk-VDPMCOHX.js';
|
|
22
22
|
import './chunk-GD26FI4J.js';
|
|
23
23
|
import './chunk-BRIRWS2Q.js';
|
|
24
24
|
import './chunk-M2MJKUQF.js';
|
|
25
|
-
import './chunk-
|
|
25
|
+
import './chunk-DWWPRLD3.js';
|
|
26
26
|
import './chunk-OUW6WESU.js';
|
|
27
27
|
import './chunk-PPUV27YN.js';
|
|
28
28
|
import './chunk-HI5V5X3S.js';
|
|
29
|
-
import './chunk-
|
|
30
|
-
import './chunk-
|
|
29
|
+
import './chunk-5WVJYMDS.js';
|
|
30
|
+
import './chunk-PSWUFTNS.js';
|
|
31
31
|
import './chunk-6T55LXJL.js';
|
|
32
32
|
import './chunk-Z653O7MX.js';
|
|
33
33
|
import './chunk-ZCH7W7DZ.js';
|
|
@@ -38,16 +38,16 @@ import './chunk-7V36I5GT.js';
|
|
|
38
38
|
import './chunk-6WI7R2BD.js';
|
|
39
39
|
import './chunk-LFMCUQQ3.js';
|
|
40
40
|
import './chunk-OAMIDZKW.js';
|
|
41
|
-
import './chunk-
|
|
41
|
+
import './chunk-2BRLDR24.js';
|
|
42
42
|
import './chunk-OQIIJRAS.js';
|
|
43
43
|
import './chunk-V2ZDTY6H.js';
|
|
44
|
-
import './chunk-
|
|
44
|
+
import './chunk-WYMDZDEZ.js';
|
|
45
45
|
import './chunk-5XDPAKF5.js';
|
|
46
46
|
import './chunk-GCPEMNSU.js';
|
|
47
|
-
import './chunk-
|
|
47
|
+
import './chunk-EMGVOEZZ.js';
|
|
48
48
|
import './chunk-Z5M4YYWT.js';
|
|
49
49
|
import './chunk-TYNZ5B2B.js';
|
|
50
|
-
import './chunk-
|
|
50
|
+
import './chunk-ONBDJMLJ.js';
|
|
51
51
|
import './chunk-AXW67SY7.js';
|
|
52
52
|
import './chunk-BYMOPN2S.js';
|
|
53
53
|
import './chunk-SKLEJJ6M.js';
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { category } from './chunk-
|
|
2
|
-
import { blog } from './chunk-
|
|
3
|
-
import { brand } from './chunk-
|
|
4
|
-
import { product } from './chunk-
|
|
1
|
+
import { category } from './chunk-BBTYM4OY.js';
|
|
2
|
+
import { blog } from './chunk-ZHBZ6YMB.js';
|
|
3
|
+
import { brand } from './chunk-QJR5FRIA.js';
|
|
4
|
+
import { product } from './chunk-LDDZ7TUR.js';
|
|
5
5
|
import { DEV_LOOKUP_BUDGET_MS } from './chunk-OXMUPNMH.js';
|
|
6
|
-
import './chunk-
|
|
6
|
+
import './chunk-DWWPRLD3.js';
|
|
7
7
|
import './chunk-OUW6WESU.js';
|
|
8
|
-
import './chunk-
|
|
8
|
+
import './chunk-EMGVOEZZ.js';
|
|
9
9
|
import './chunk-Z5M4YYWT.js';
|
|
10
10
|
import './chunk-IURXJAIK.js';
|
|
11
11
|
import './chunk-7IVHY4OR.js';
|
|
@@ -111,5 +111,5 @@ function lookupInStore(source, query) {
|
|
|
111
111
|
}
|
|
112
112
|
|
|
113
113
|
export { lookupInStore };
|
|
114
|
-
//# sourceMappingURL=store-lookup-
|
|
115
|
-
//# sourceMappingURL=store-lookup-
|
|
114
|
+
//# sourceMappingURL=store-lookup-FL54XOJB.js.map
|
|
115
|
+
//# sourceMappingURL=store-lookup-FL54XOJB.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/dev/store-lookup.ts"],"names":["categories"],"mappings":";;;;;;;;;;;;;;;;;;AAmBA,IAAM,QAAA,GAAW,EAAA;AAEjB,IAAM,SAAA,GAAY,EAAA;AAalB,eAAe,OAAA,CACb,WACA,IAAA,EACc;AACd,EAAA,MAAM,QAAA,GAAW,IAAA,CAAK,GAAA,EAAI,GAAI,oBAAA;AAC9B,EAAA,MAAM,QAAa,EAAC;AACpB,EAAA,IAAI,MAAA,GAAwB,IAAA;AAC5B,EAAA,KAAA,IAAS,IAAA,GAAO,CAAA,EAAG,IAAA,IAAQ,SAAA,EAAW,QAAQ,CAAA,EAAG;AAC/C,IAAA,MAAM,EAAE,KAAA,EAAO,IAAA,KAAS,MAAM,SAAA,CAAU,MAAM,MAAM,CAAA;AACpD,IAAA,KAAA,CAAM,IAAA,CAAK,GAAG,KAAA,CAAM,MAAA,CAAO,IAAI,CAAC,CAAA;AAChC,IAAA,IAAI,KAAA,CAAM,UAAU,QAAA,IAAY,CAAC,QAAQ,IAAA,CAAK,GAAA,MAAS,QAAA,EAAU;AACjE,IAAA,MAAA,GAAS,IAAA;AAAA,EACX;AACA,EAAA,OAAO,KAAA,CAAM,KAAA,CAAM,CAAA,EAAG,QAAQ,CAAA;AAChC;AAEA,SAAS,OAAA,CAAQ,MAAc,KAAA,EAAwB;AACrD,EAAA,OAAO,CAAC,SAAS,IAAA,CAAK,WAAA,GAAc,QAAA,CAAS,KAAA,CAAM,aAAa,CAAA;AAClE;AAGA,SAAS,QAAQA,WAAAA,EAAoC;AACnD,EAAA,OAAOA,WAAAA,CAAW,OAAA,CAAQ,CAAC,CAAA,KAAM,CAAC,CAAA,EAAG,GAAG,OAAA,CAAQ,CAAA,CAAE,cAAA,IAAkB,EAAE,CAAC,CAAC,CAAA;AAC1E;AAEA,eAAe,SAAS,KAAA,EAAyC;AAC/D,EAAA,MAAM,EAAE,KAAA,EAAM,GAAI,MAAM,QAAQ,IAAA,CAAK;AAAA,IACnC,MAAA,EAAQ,QAAQ,QAAA,GAAW,QAAA;AAAA,IAC3B,GAAI,KAAA,GAAQ,EAAE,OAAA,EAAS,KAAA,KAAU,EAAC;AAAA,IAClC,OAAA,EAAS;AAAA,GACV,CAAA;AAED,EAAA,OAAO,KAAA,CAAM,GAAA,CAAI,CAAC,CAAA,MAAO;AAAA,IACvB,EAAA,EAAI,MAAA,CAAO,CAAA,CAAE,EAAE,CAAA;AAAA,IACf,MAAM,CAAA,CAAE,IAAA;AAAA,IACR,KAAA,EAAO,EAAE,KAAA,EAAO,GAAA;AAAA,IAChB,KAAK,CAAA,CAAE,GAAA;AAAA,IACP,MAAM,EAAE,EAAA,EAAI,MAAA,CAAO,CAAA,CAAE,EAAE,CAAA,EAAG,IAAA,EAAM,CAAA,CAAE,IAAA,EAAM,KAAK,CAAA,CAAE,GAAA,EAAK,OAAO,CAAA,CAAE,KAAA,EAAO,OAAO,IAAA;AAAK,GAClF,CAAE,CAAA;AACJ;AAEA,eAAe,WAAW,KAAA,EAAyC;AACjE,EAAA,OAAO,OAAA,CAAQ,MAAM,QAAA,CAAS,IAAA,EAAM,CAAA,CACjC,MAAA,CAAO,CAAC,CAAA,KAAM,OAAA,CAAQ,EAAE,IAAA,EAAM,KAAK,CAAC,CAAA,CACpC,KAAA,CAAM,GAAG,QAAQ,CAAA,CACjB,GAAA,CAAI,CAAC,CAAA,MAAO;AAAA,IACX,IAAI,CAAA,CAAE,EAAA;AAAA,IACN,MAAM,CAAA,CAAE,IAAA;AAAA,IACR,KAAA,EAAO,EAAE,KAAA,IAAS,MAAA;AAAA,IAClB,KAAK,CAAA,CAAE,GAAA;AAAA,IACP,MAAM,EAAE,EAAA,EAAI,EAAE,EAAA,EAAI,IAAA,EAAM,EAAE,IAAA,EAAM,GAAA,EAAK,CAAA,CAAE,GAAA,EAAK,OAAO,CAAA,CAAE,KAAA,IAAS,MAAM,IAAA,EAAM,CAAA,CAAE,QAAQ,IAAA;AAAK,GAC3F,CAAE,CAAA;AACN;AAEA,eAAe,OAAO,KAAA,EAAyC;AAC7D,EAAA,MAAM,QAAQ,MAAM,OAAA;AAAA,IAClB,CAAC,IAAA,KAAS,KAAA,CAAM,IAAA,CAAK,IAAI,CAAA;AAAA,IACzB,CAAC,CAAA,KAAM,OAAA,CAAQ,CAAA,CAAE,MAAM,KAAK;AAAA,GAC9B;AACA,EAAA,OAAO,KAAA,CAAM,GAAA,CAAI,CAAC,CAAA,MAAO;AAAA,IACvB,IAAI,CAAA,CAAE,EAAA;AAAA,IACN,MAAM,CAAA,CAAE,IAAA;AAAA,IACR,OAAO,CAAA,CAAE,IAAA;AAAA,IACT,KAAK,CAAA,CAAE,GAAA;AAAA,IACP,MAAM,EAAE,EAAA,EAAI,CAAA,CAAE,EAAA,EAAI,MAAM,CAAA,CAAE,IAAA,EAAM,GAAA,EAAK,CAAA,CAAE,KAAK,IAAA,EAAM,CAAA,CAAE,MAAM,MAAA,EAAQ,CAAA,CAAE,UAAU,IAAA;AAAK,GACrF,CAAE,CAAA;AACJ;AAEA,eAAe,aAAa,KAAA,EAAyC;AACnE,EAAA,MAAM,QAAQ,MAAM,OAAA;AAAA,IAClB,OAAO,OAAO,MAAA,KAAW;AACvB,MAAA,MAAM,EAAE,IAAA,EAAM,MAAA,EAAQ,KAAA,EAAM,GAAI,MAAM,IAAA,CAAK,QAAA,CAAS,IAAA,CAAK,MAAA,GAAS,EAAE,MAAA,KAAW,MAAS,CAAA;AACxF,MAAA,OAAO,EAAE,KAAA,EAAO,IAAA,EAAM,IAAA,EAAM,KAAA,EAAO,QAAQ,IAAA,EAAK;AAAA,IAClD,CAAA;AAAA,IACA,CAAC,CAAA,KAAM,OAAA,CAAQ,CAAA,CAAE,MAAM,KAAK;AAAA,GAC9B;AACA,EAAA,OAAO,KAAA,CAAM,GAAA,CAAI,CAAC,CAAA,MAAO;AAAA,IACvB,IAAI,CAAA,CAAE,EAAA;AAAA,IACN,MAAM,CAAA,CAAE,IAAA;AAAA,IACR,OAAO,CAAA,CAAE,KAAA;AAAA,IACT,KAAK,CAAA,CAAE,GAAA;AAAA,IACP,IAAA,EAAM,EAAE,EAAA,EAAI,CAAA,CAAE,EAAA,EAAI,MAAM,CAAA,CAAE,IAAA,EAAM,GAAA,EAAK,CAAA,CAAE,GAAA;AAAI,GAC7C,CAAE,CAAA;AACJ;AAEA,eAAe,eAAe,KAAA,EAAyC;AACrE,EAAA,MAAM,EAAE,UAAA,EAAY,IAAA,EAAK,GAAI,MAAM,KAAK,GAAA,EAAI;AAC5C,EAAA,OAAO,KACJ,MAAA,CAAO,CAAC,CAAA,KAAM,OAAA,CAAQ,EAAE,IAAA,EAAM,KAAK,CAAC,CAAA,CACpC,MAAM,CAAA,EAAG,QAAQ,CAAA,CACjB,GAAA,CAAI,CAAC,CAAA,MAAO;AAAA,IACX,IAAI,CAAA,CAAE,EAAA;AAAA,IACN,MAAM,CAAA,CAAE,IAAA;AAAA,IACR,KAAK,CAAA,CAAE,GAAA;AAAA,IACP,IAAA,EAAM,EAAE,EAAA,EAAI,CAAA,CAAE,EAAA,EAAI,MAAM,CAAA,CAAE,IAAA,EAAM,GAAA,EAAK,CAAA,CAAE,GAAA;AAAI,GAC7C,CAAE,CAAA;AACN;AAEA,IAAM,OAAA,GAAgF;AAAA,EACpF,QAAA;AAAA,EACA,UAAA;AAAA,EACA,MAAA;AAAA,EACA,aAAA,EAAe,YAAA;AAAA,EACf,eAAA,EAAiB;AACnB,CAAA;AAEO,SAAS,aAAA,CAAc,QAAyB,KAAA,EAAyC;AAC9F,EAAA,MAAM,MAAA,GAAS,QAAQ,MAAM,CAAA;AAC7B,EAAA,IAAI,CAAC,MAAA,EAAQ,OAAO,OAAA,CAAQ,MAAA,CAAO,IAAI,KAAA,CAAM,CAAA,cAAA,EAAiB,MAAM,CAAA,CAAE,CAAC,CAAA;AACvE,EAAA,OAAO,MAAA,CAAO,KAAA,CAAM,IAAA,EAAM,CAAA;AAC5B","file":"store-lookup-
|
|
1
|
+
{"version":3,"sources":["../src/dev/store-lookup.ts"],"names":["categories"],"mappings":"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","file":"store-lookup-FL54XOJB.js","sourcesContent":["/**\n * Runs in the editor's frame (the storefront), which has the engine's API\n * client set up for the dev store: answers the editor's pickers with the real\n * store's products, categories, brands and blog. Loaded with `import()` on the\n * first lookup, so a storefront never carries it.\n *\n * Each item's `data` is what a block receives for it, in the API's shape: a\n * product block reads only the ids and fetches the rest, while categories and\n * brands are drawn from what is saved.\n */\n\nimport { product } from '../api/product';\nimport { category } from '../api/category';\nimport { brand } from '../api/brands';\nimport { blog } from '../api/blog';\nimport type { Category } from '../types';\nimport { DEV_LOOKUP_BUDGET_MS, type DevLookupItem, type DevLookupSource } from './schema-types';\n\n/** Enough to choose from; a search narrows it further. */\nconst PER_PAGE = 20;\n/** How far a paged list is searched before giving up, so a big store can't stall the picker. */\nconst MAX_PAGES = 10;\n\ninterface Page<T> {\n items: T[];\n next: string | null;\n}\n\n/**\n * The matching items of a paged list, read page after page until there are\n * enough, the pages run out, or the time budget is spent: a brand or article on\n * page three is still found, and what was found so far always reaches the\n * editor before it stops waiting (`DEV_LOOKUP_BUDGET_MS` < its timeout).\n */\nasync function collect<T>(\n fetchPage: (page: number, cursor: string | null) => Promise<Page<T>>,\n keep: (item: T) => boolean\n): Promise<T[]> {\n const deadline = Date.now() + DEV_LOOKUP_BUDGET_MS;\n const found: T[] = [];\n let cursor: string | null = null;\n for (let page = 1; page <= MAX_PAGES; page += 1) {\n const { items, next } = await fetchPage(page, cursor);\n found.push(...items.filter(keep));\n if (found.length >= PER_PAGE || !next || Date.now() >= deadline) break;\n cursor = next;\n }\n return found.slice(0, PER_PAGE);\n}\n\nfunction matches(name: string, query: string): boolean {\n return !query || name.toLowerCase().includes(query.toLowerCase());\n}\n\n/** Categories with their subcategories, flattened, parents first. */\nfunction flatten(categories: Category[]): Category[] {\n return categories.flatMap((c) => [c, ...flatten(c.sub_categories ?? [])]);\n}\n\nasync function products(query: string): Promise<DevLookupItem[]> {\n const { items } = await product.list({\n source: query ? 'search' : 'latest',\n ...(query ? { keyword: query } : {}),\n perPage: PER_PAGE,\n });\n // List responses send the id as a numeric string; the block reads a number. Use it for both.\n return items.map((p) => ({\n id: Number(p.id),\n name: p.name,\n image: p.image?.url,\n url: p.url,\n data: { id: Number(p.id), name: p.name, url: p.url, image: p.image?.url ?? null },\n }));\n}\n\nasync function categories(query: string): Promise<DevLookupItem[]> {\n return flatten(await category.list())\n .filter((c) => matches(c.name, query))\n .slice(0, PER_PAGE)\n .map((c) => ({\n id: c.id,\n name: c.name,\n image: c.image ?? undefined,\n url: c.url,\n data: { id: c.id, name: c.name, url: c.url, image: c.image ?? null, icon: c.icon ?? null },\n }));\n}\n\nasync function brands(query: string): Promise<DevLookupItem[]> {\n const found = await collect(\n (page) => brand.list(page),\n (b) => matches(b.name, query)\n );\n return found.map((b) => ({\n id: b.id,\n name: b.name,\n image: b.logo,\n url: b.url,\n data: { id: b.id, name: b.name, url: b.url, logo: b.logo, banner: b.banner ?? null },\n }));\n}\n\nasync function blogArticles(query: string): Promise<DevLookupItem[]> {\n const found = await collect(\n async (_page, cursor) => {\n const { data, cursor: pages } = await blog.articles.list(cursor ? { cursor } : undefined);\n return { items: data, next: pages?.next ?? null };\n },\n (a) => matches(a.name, query)\n );\n return found.map((a) => ({\n id: a.id,\n name: a.name,\n image: a.image,\n url: a.url,\n data: { id: a.id, name: a.name, url: a.url },\n }));\n}\n\nasync function blogCategories(query: string): Promise<DevLookupItem[]> {\n const { categories: list } = await blog.get();\n return list\n .filter((c) => matches(c.name, query))\n .slice(0, PER_PAGE)\n .map((c) => ({\n id: c.id,\n name: c.name,\n url: c.url,\n data: { id: c.id, name: c.name, url: c.url },\n }));\n}\n\nconst LOOKUPS: Record<DevLookupSource, (query: string) => Promise<DevLookupItem[]>> = {\n products,\n categories,\n brands,\n blog_articles: blogArticles,\n blog_categories: blogCategories,\n};\n\nexport function lookupInStore(source: DevLookupSource, query: string): Promise<DevLookupItem[]> {\n const lookup = LOOKUPS[source];\n if (!lookup) return Promise.reject(new Error(`no lookup for ${source}`));\n return lookup(query.trim());\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"link.d.ts","sourceRoot":"","sources":["../../src/tanstack/link.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAErE;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"link.d.ts","sourceRoot":"","sources":["../../src/tanstack/link.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAErE;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,UAQvE;AAED;;;GAGG;AACH,eAAO,MAAM,mBAAmB,0HAmD/B,CAAC;AAIF;;GAEG;AACH,wBAAgB,yBAAyB,6HAExC"}
|
|
@@ -5,7 +5,9 @@
|
|
|
5
5
|
* Uses TanStack Router's optional path parameter syntax /{-$locale}:
|
|
6
6
|
* - /{-$locale}/cart matches both /cart and /ar/cart
|
|
7
7
|
*
|
|
8
|
-
* beforeLoad: validates the locale format when present.
|
|
8
|
+
* beforeLoad: validates the locale format when present. A first segment that is not a locale
|
|
9
|
+
* gets the fallback locale, except on a store whose addresses carry none: there it is a page
|
|
10
|
+
* no route has, and the loader would strip the locale straight off again.
|
|
9
11
|
* loader: checks store.settings.is_multilingual (and the number of languages) and redirects
|
|
10
12
|
* accordingly. On a Salla shared host the address has no locale, so it redirects nothing.
|
|
11
13
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"locale-wrapper.d.ts","sourceRoot":"","sources":["../../../src/tanstack/templates/locale-wrapper.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"locale-wrapper.d.ts","sourceRoot":"","sources":["../../../src/tanstack/templates/locale-wrapper.ts"],"names":[],"mappings":"AAkBA;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,wBAAwB,CAAC,gBAAgB,EAAE,MAAM,GAAG,MAAM,CAgGzE"}
|
package/dist/tanstack.js
CHANGED
|
@@ -1,27 +1,27 @@
|
|
|
1
|
-
export { tanstackDocumentAdapter as attrs, createRouter, createTwilightRootRoute, useTanstackDocumentAttrs as useAttrs } from './chunk-
|
|
2
|
-
import { requestHostOf } from './chunk-
|
|
3
|
-
export { TanStackLinkAdapter, TanStackNavigationProvider, createTanStackLinkAdapter } from './chunk-
|
|
1
|
+
export { tanstackDocumentAdapter as attrs, createRouter, createTwilightRootRoute, useTanstackDocumentAttrs as useAttrs } from './chunk-YBWXK2OT.js';
|
|
2
|
+
import { requestHostOf } from './chunk-KAIASXU7.js';
|
|
3
|
+
export { TanStackLinkAdapter, TanStackNavigationProvider, createTanStackLinkAdapter } from './chunk-KAIASXU7.js';
|
|
4
4
|
import './chunk-Z4Y55HWX.js';
|
|
5
5
|
export { tanstackHeadAdapter as head, withHead } from './chunk-CIJVNUNZ.js';
|
|
6
6
|
import { CRITICAL_STYLE_HREF } from './chunk-4FJGZQD3.js';
|
|
7
|
-
import { readNativeAppHeaders } from './chunk-
|
|
8
|
-
import './chunk-
|
|
9
|
-
import './chunk-
|
|
10
|
-
import './chunk-
|
|
11
|
-
import './chunk-
|
|
7
|
+
import { readNativeAppHeaders } from './chunk-YZPHKPYI.js';
|
|
8
|
+
import './chunk-ZKTSLYTT.js';
|
|
9
|
+
import './chunk-4UPADKLB.js';
|
|
10
|
+
import './chunk-P7RERWEY.js';
|
|
11
|
+
import './chunk-LDDZ7TUR.js';
|
|
12
12
|
import { rootHead } from './chunk-GMXNVBCD.js';
|
|
13
13
|
import './chunk-X55R4VVK.js';
|
|
14
|
-
import './chunk-
|
|
14
|
+
import './chunk-LYKDZ74X.js';
|
|
15
15
|
import './chunk-VDPMCOHX.js';
|
|
16
16
|
import './chunk-GD26FI4J.js';
|
|
17
17
|
import { maintenanceEvidence, MAINTENANCE_EVIDENCE_HEADER, maintenanceEvidenceHeader } from './chunk-BRIRWS2Q.js';
|
|
18
18
|
import './chunk-M2MJKUQF.js';
|
|
19
|
-
import './chunk-
|
|
19
|
+
import './chunk-DWWPRLD3.js';
|
|
20
20
|
import './chunk-OUW6WESU.js';
|
|
21
21
|
import './chunk-JWXJPJBO.js';
|
|
22
22
|
export { mergeDocumentDescriptors as mergeAttrs } from './chunk-CW625T2E.js';
|
|
23
|
-
import './chunk-
|
|
24
|
-
import './chunk-
|
|
23
|
+
import './chunk-WYMDZDEZ.js';
|
|
24
|
+
import './chunk-EMGVOEZZ.js';
|
|
25
25
|
import './chunk-Z5M4YYWT.js';
|
|
26
26
|
import './chunk-TYNZ5B2B.js';
|
|
27
27
|
import './chunk-BYMOPN2S.js';
|
package/dist/utils/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export { stripUnsafeHtml } from '../chunk-RUHSV4Z6.js';
|
|
2
2
|
export { formatSallaPlural } from '../chunk-BT6HEEAP.js';
|
|
3
|
-
export { dispatchRouteChanged } from '../chunk-
|
|
3
|
+
export { dispatchRouteChanged } from '../chunk-P7RERWEY.js';
|
|
4
4
|
export { sortOptions } from '../chunk-3LZJXKVO.js';
|
|
5
5
|
export { color } from '../chunk-VVZNW5CB.js';
|
|
6
6
|
export { applyAppScopeMocks, registerThemeHookSlots } from '../chunk-VDPMCOHX.js';
|
|
@@ -8,7 +8,7 @@ export { mergeHead, resolveHead, setHeadAdapter } from '../chunk-GD26FI4J.js';
|
|
|
8
8
|
export { buildBaseHead, buildHreflangAlternates, localeToOgLocale } from '../chunk-M2MJKUQF.js';
|
|
9
9
|
export { asset, cdn, isPlaceholder } from '../chunk-ZCH7W7DZ.js';
|
|
10
10
|
export { mergeDocumentDescriptors, mergeElementAttrs, normalizeClasses, syncAttrsToElement, toReactProps } from '../chunk-CW625T2E.js';
|
|
11
|
-
import '../chunk-
|
|
11
|
+
import '../chunk-EMGVOEZZ.js';
|
|
12
12
|
import '../chunk-Z5M4YYWT.js';
|
|
13
13
|
export { getSallaSDK, getStoreIdentifier, onSallaEvent, whenSallaLoaded, whenSallaReady } from '../chunk-7IVHY4OR.js';
|
|
14
14
|
export { AUTH_TOKEN_COOKIE_NAME, clearAuthTokenCookie, extractTokenFromCookies } from '../chunk-EEL6OYAQ.js';
|
package/dist/vite/index.js
CHANGED
|
@@ -1852,19 +1852,48 @@ function resolveWorkerConfigPath(projectRoot, options = {}) {
|
|
|
1852
1852
|
}
|
|
1853
1853
|
|
|
1854
1854
|
// src/tanstack/templates/locale-wrapper.ts
|
|
1855
|
+
var ADDRESS_LANGUAGE = `/**
|
|
1856
|
+
* Which language the store's addresses carry. Single-language when the merchant says so, or
|
|
1857
|
+
* when the store lists fewer than two languages. A page with no locale is read as
|
|
1858
|
+
* FALLBACK_LOCALE (\`rootBeforeLoad\`), so a single-language store in another language keeps
|
|
1859
|
+
* its segment instead: it is what the page is addressed and read by. Without it an
|
|
1860
|
+
* English-only store would render in Arabic.
|
|
1861
|
+
*/
|
|
1862
|
+
function addressLanguage(settings) {
|
|
1863
|
+
const listed = settings?.languages;
|
|
1864
|
+
const soleEntry = listed?.length === 1 ? listed[0] : undefined;
|
|
1865
|
+
const soleLang = soleEntry ? (soleEntry.iso_code ?? soleEntry.code)?.toLowerCase() : undefined;
|
|
1866
|
+
const single =
|
|
1867
|
+
settings?.store?.settings?.is_multilingual === false || (listed != null && listed.length < 2);
|
|
1868
|
+
const segment = single && isLocale(soleLang) && soleLang !== FALLBACK_LOCALE ? soleLang : null;
|
|
1869
|
+
return { single, segment };
|
|
1870
|
+
}`;
|
|
1855
1871
|
function getLocaleWrapperTemplate(baseRoutesImport) {
|
|
1856
1872
|
const mainPkg = baseRoutesImport.replace(/\/routes$/, "");
|
|
1857
1873
|
return `// @auto-generated
|
|
1858
1874
|
// @ts-nocheck \u2014 params types are generated by TanStack Router on pnpm dev
|
|
1859
1875
|
import { createFileRoute, notFound, Outlet, redirect } from '@tanstack/react-router';
|
|
1860
1876
|
import { FALLBACK_LOCALE, isLocale } from '${baseRoutesImport}';
|
|
1877
|
+
import { twigUrlRedirect } from '${baseRoutesImport}/seo-redirects';
|
|
1861
1878
|
import { store } from '${mainPkg}/api/store';
|
|
1862
1879
|
|
|
1880
|
+
${ADDRESS_LANGUAGE}
|
|
1881
|
+
|
|
1863
1882
|
export const Route = createFileRoute('/{-$locale}')({
|
|
1864
|
-
beforeLoad: ({ params, location }) => {
|
|
1883
|
+
beforeLoad: async ({ params, location, context, matches }) => {
|
|
1884
|
+
await twigUrlRedirect(location.pathname, location.searchStr, matches.at(-1));
|
|
1865
1885
|
const { locale } = params;
|
|
1866
1886
|
if (!locale) return;
|
|
1867
1887
|
if (!isLocale(locale)) {
|
|
1888
|
+
// A first segment that is not a language is a page no route has: \`/nothing-here\` binds
|
|
1889
|
+
// \`{-$locale}\` to \`nothing-here\`. On a store whose addresses carry no language the
|
|
1890
|
+
// loader strips the locale this would add, and the two redirects sent the page back
|
|
1891
|
+
// and forth forever (\`/x\` \u2192 \`/ar/x\` \u2192 \`/x\`), so there it is the not-found page.
|
|
1892
|
+
if (!context.storeBaseFollowsLocale) {
|
|
1893
|
+
const settings = await context.queryClient.ensureQueryData(store.queries.settings());
|
|
1894
|
+
const { single, segment } = addressLanguage(settings);
|
|
1895
|
+
if (single && !segment) throw notFound();
|
|
1896
|
+
}
|
|
1868
1897
|
throw redirect({
|
|
1869
1898
|
to: \`/\${FALLBACK_LOCALE}\${location.pathname}\`,
|
|
1870
1899
|
search: location.search,
|
|
@@ -1880,16 +1909,7 @@ export const Route = createFileRoute('/{-$locale}')({
|
|
|
1880
1909
|
if (context.storeBaseFollowsLocale) return;
|
|
1881
1910
|
|
|
1882
1911
|
const settings = await context.queryClient.ensureQueryData(store.queries.settings());
|
|
1883
|
-
|
|
1884
|
-
// languages. A page with no locale is read as FALLBACK_LOCALE (\`rootBeforeLoad\`), so a
|
|
1885
|
-
// single-language store in another language keeps its segment instead: it is what the
|
|
1886
|
-
// page is addressed and read by. Without it an English-only store would render in Arabic.
|
|
1887
|
-
const listed = settings?.languages;
|
|
1888
|
-
const soleEntry = listed?.length === 1 ? listed[0] : undefined;
|
|
1889
|
-
const soleLang = soleEntry ? (soleEntry.iso_code ?? soleEntry.code)?.toLowerCase() : undefined;
|
|
1890
|
-
const single =
|
|
1891
|
-
settings?.store?.settings?.is_multilingual === false || (listed != null && listed.length < 2);
|
|
1892
|
-
const segment = single && isLocale(soleLang) && soleLang !== FALLBACK_LOCALE ? soleLang : null;
|
|
1912
|
+
const { single, segment } = addressLanguage(settings);
|
|
1893
1913
|
const isMultilingual = !single;
|
|
1894
1914
|
const pathWithoutLocale = params.locale
|
|
1895
1915
|
? location.pathname.slice(params.locale.length + 1) || '/'
|