@salla.sa/twilight-theme-engine 1.0.94 → 1.0.96

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.
Files changed (353) hide show
  1. package/dist/{AddToCartForm-MASXVJOI.js → AddToCartForm-DASRXMY7.js} +3 -3
  2. package/dist/{AddToCartForm-MASXVJOI.js.map → AddToCartForm-DASRXMY7.js.map} +1 -1
  3. package/dist/{BlogAuthorPage-KRT7MRTC.js → BlogAuthorPage-WFZGYSUB.js} +26 -24
  4. package/dist/BlogAuthorPage-WFZGYSUB.js.map +1 -0
  5. package/dist/{BlogCategoryPage-OP3ETAMT.js → BlogCategoryPage-23PFOVVP.js} +26 -24
  6. package/dist/BlogCategoryPage-23PFOVVP.js.map +1 -0
  7. package/dist/{BlogPage-RGAQVUDI.js → BlogPage-4RFI56TW.js} +24 -22
  8. package/dist/BlogPage-4RFI56TW.js.map +1 -0
  9. package/dist/{BlogSinglePage-VG4UXBTL.js → BlogSinglePage-KMGBQUG5.js} +24 -22
  10. package/dist/BlogSinglePage-KMGBQUG5.js.map +1 -0
  11. package/dist/{BlogTagPage-G4IVHJD5.js → BlogTagPage-ZPQJKPBO.js} +26 -24
  12. package/dist/BlogTagPage-ZPQJKPBO.js.map +1 -0
  13. package/dist/{BrandsPage-2JMPPOOU.js → BrandsPage-FIHOZYMB.js} +25 -23
  14. package/dist/BrandsPage-FIHOZYMB.js.map +1 -0
  15. package/dist/{Breadcrumb-I3ZOGG2Y.js → Breadcrumb-2IXFQL6L.js} +24 -22
  16. package/dist/Breadcrumb-2IXFQL6L.js.map +1 -0
  17. package/dist/{CartItem-YTPYETW6.js → CartItem-GRFH5BED.js} +24 -22
  18. package/dist/CartItem-GRFH5BED.js.map +1 -0
  19. package/dist/{CartSummary-DND7BO26.js → CartSummary-IOCZJL26.js} +24 -22
  20. package/dist/CartSummary-IOCZJL26.js.map +1 -0
  21. package/dist/{Copyright-RWML3BQV.js → Copyright-MDKYCKML.js} +3 -3
  22. package/dist/{Copyright-RWML3BQV.js.map → Copyright-MDKYCKML.js.map} +1 -1
  23. package/dist/{CustomerLayout-HCYVBODI.js → CustomerLayout-4737YCAK.js} +24 -22
  24. package/dist/CustomerLayout-4737YCAK.js.map +1 -0
  25. package/dist/{Footer-3GEKWEQD.js → Footer-2F652QDB.js} +4 -4
  26. package/dist/{Footer-3GEKWEQD.js.map → Footer-2F652QDB.js.map} +1 -1
  27. package/dist/Header-4OATF4LX.js +22 -0
  28. package/dist/{Header-QG4UO3MF.js.map → Header-4OATF4LX.js.map} +1 -1
  29. package/dist/{LoyaltyPage-ZMFYQMQY.js → LoyaltyPage-POFUTIPB.js} +24 -22
  30. package/dist/LoyaltyPage-POFUTIPB.js.map +1 -0
  31. package/dist/{LoyaltyPointsPage-5PB6IFLY.js → LoyaltyPointsPage-L4S4NZA2.js} +8 -7
  32. package/dist/LoyaltyPointsPage-L4S4NZA2.js.map +1 -0
  33. package/dist/{MainMenu-SAUMNMBF.js → MainMenu-ROGX37TG.js} +7 -6
  34. package/dist/MainMenu-ROGX37TG.js.map +1 -0
  35. package/dist/{MasterLayout-TY223YR7.js → MasterLayout-PGL5YU2B.js} +24 -22
  36. package/dist/{MasterLayout-TY223YR7.js.map → MasterLayout-PGL5YU2B.js.map} +1 -1
  37. package/dist/{MobileMenu-2WOWOFQB.js → MobileMenu-VGXWJHEF.js} +25 -23
  38. package/dist/MobileMenu-VGXWJHEF.js.map +1 -0
  39. package/dist/{NotificationsPage-6FX4SOZU.js → NotificationsPage-PZAEKKJO.js} +24 -22
  40. package/dist/NotificationsPage-PZAEKKJO.js.map +1 -0
  41. package/dist/{OrderSinglePage-RUMSJIFD.js → OrderSinglePage-KTKLXTUX.js} +25 -23
  42. package/dist/OrderSinglePage-KTKLXTUX.js.map +1 -0
  43. package/dist/{OrdersPage-B4Q4QIEM.js → OrdersPage-BY6LYV5M.js} +24 -22
  44. package/dist/OrdersPage-BY6LYV5M.js.map +1 -0
  45. package/dist/{PageSingle-F4TDNKUM.js → PageSingle-CJRT3HJZ.js} +6 -5
  46. package/dist/PageSingle-CJRT3HJZ.js.map +1 -0
  47. package/dist/{ProductDetails-BNVVUDBH.js → ProductDetails-O2VJVIZC.js} +7 -6
  48. package/dist/ProductDetails-O2VJVIZC.js.map +1 -0
  49. package/dist/{ProfilePage-OJSAXSC2.js → ProfilePage-TB7PBODI.js} +24 -22
  50. package/dist/ProfilePage-TB7PBODI.js.map +1 -0
  51. package/dist/{RenderWhenVisible-F44J5MMG.js → RenderWhenVisible-KWAXEJOJ.js} +8 -5
  52. package/dist/RenderWhenVisible-KWAXEJOJ.js.map +1 -0
  53. package/dist/{ReviewsPage-3IJKJKTY.js → ReviewsPage-5KGCKLFR.js} +3 -3
  54. package/dist/{ReviewsPage-3IJKJKTY.js.map → ReviewsPage-5KGCKLFR.js.map} +1 -1
  55. package/dist/{SeoCartWidget-4PN2DW54.js → SeoCartWidget-6BU7WCTP.js} +24 -22
  56. package/dist/SeoCartWidget-6BU7WCTP.js.map +1 -0
  57. package/dist/{SettingsPage-BCRNV4GU.js → SettingsPage-G55AM2KS.js} +24 -22
  58. package/dist/SettingsPage-G55AM2KS.js.map +1 -0
  59. package/dist/{StoreClosedNotification-IRUTRLIH.js → StoreClosedNotification-C3BBFGAA.js} +25 -23
  60. package/dist/{StoreClosedNotification-IRUTRLIH.js.map → StoreClosedNotification-C3BBFGAA.js.map} +1 -1
  61. package/dist/{TestimonialsPage-YU4PLOLR.js → TestimonialsPage-EA4PSO7E.js} +6 -5
  62. package/dist/TestimonialsPage-EA4PSO7E.js.map +1 -0
  63. package/dist/{ThankYouPage-MUDELEIQ.js → ThankYouPage-R2OEK7ZZ.js} +24 -22
  64. package/dist/ThankYouPage-R2OEK7ZZ.js.map +1 -0
  65. package/dist/{WalletPage-2I4KTR5E.js → WalletPage-MEWHIHUE.js} +25 -23
  66. package/dist/WalletPage-MEWHIHUE.js.map +1 -0
  67. package/dist/{WishlistPage-7AYL3RUD.js → WishlistPage-YFKG7CXU.js} +26 -24
  68. package/dist/WishlistPage-YFKG7CXU.js.map +1 -0
  69. package/dist/ambient/virtual-modules.d.ts +43 -1
  70. package/dist/api/advertisement.js +4 -3
  71. package/dist/api/apps.js +4 -3
  72. package/dist/api/blog.js +6 -5
  73. package/dist/api/brands.js +6 -5
  74. package/dist/api/cart.js +6 -5
  75. package/dist/api/category.js +6 -5
  76. package/dist/api/client.js +3 -2
  77. package/dist/api/home.js +4 -3
  78. package/dist/api/loyalty.js +6 -5
  79. package/dist/api/menu.js +4 -3
  80. package/dist/api/notification.js +4 -3
  81. package/dist/api/order.js +6 -5
  82. package/dist/api/page.js +6 -5
  83. package/dist/api/product.js +6 -5
  84. package/dist/api/profile.js +3 -2
  85. package/dist/api/profile.js.map +1 -1
  86. package/dist/api/store.js +4 -3
  87. package/dist/api/translations.js +4 -3
  88. package/dist/api/user.js +4 -3
  89. package/dist/api/wallet.js +4 -3
  90. package/dist/api/wishlist.js +7 -6
  91. package/dist/{chunk-LA7KZ2XY.js → chunk-2D5TFSVG.js} +8 -8
  92. package/dist/{chunk-LA7KZ2XY.js.map → chunk-2D5TFSVG.js.map} +1 -1
  93. package/dist/{chunk-HQAFPDJK.js → chunk-2FDLEB5J.js} +3 -3
  94. package/dist/{chunk-HQAFPDJK.js.map → chunk-2FDLEB5J.js.map} +1 -1
  95. package/dist/chunk-2FKZAAV7.js +90 -0
  96. package/dist/chunk-2FKZAAV7.js.map +1 -0
  97. package/dist/{chunk-YDFOJBEY.js → chunk-3GW3VFR6.js} +3 -3
  98. package/dist/{chunk-YDFOJBEY.js.map → chunk-3GW3VFR6.js.map} +1 -1
  99. package/dist/{chunk-CEYT3JER.js → chunk-56T47K7P.js} +4 -4
  100. package/dist/{chunk-CEYT3JER.js.map → chunk-56T47K7P.js.map} +1 -1
  101. package/dist/{chunk-LPQ5FUMJ.js → chunk-5SDCUGYR.js} +4 -4
  102. package/dist/{chunk-LPQ5FUMJ.js.map → chunk-5SDCUGYR.js.map} +1 -1
  103. package/dist/{chunk-QGOPTVV5.js → chunk-6EQ7G3SZ.js} +4 -3
  104. package/dist/chunk-6EQ7G3SZ.js.map +1 -0
  105. package/dist/{chunk-H7CVJFTK.js → chunk-6RHU4TEF.js} +7 -7
  106. package/dist/{chunk-H7CVJFTK.js.map → chunk-6RHU4TEF.js.map} +1 -1
  107. package/dist/{chunk-FZYR4BA2.js → chunk-7WTUA4WY.js} +3 -3
  108. package/dist/{chunk-FZYR4BA2.js.map → chunk-7WTUA4WY.js.map} +1 -1
  109. package/dist/{chunk-3PXONLUK.js → chunk-BH7YNCYB.js} +3 -3
  110. package/dist/{chunk-3PXONLUK.js.map → chunk-BH7YNCYB.js.map} +1 -1
  111. package/dist/{chunk-DBW7XXNE.js → chunk-BPL5H33B.js} +4 -4
  112. package/dist/{chunk-DBW7XXNE.js.map → chunk-BPL5H33B.js.map} +1 -1
  113. package/dist/{chunk-66K5P5ZX.js → chunk-CNUBL24W.js} +3 -3
  114. package/dist/{chunk-66K5P5ZX.js.map → chunk-CNUBL24W.js.map} +1 -1
  115. package/dist/chunk-COJH52VR.js +443 -0
  116. package/dist/chunk-COJH52VR.js.map +1 -0
  117. package/dist/{chunk-6OOTDFC7.js → chunk-D56TVNOG.js} +3 -3
  118. package/dist/{chunk-6OOTDFC7.js.map → chunk-D56TVNOG.js.map} +1 -1
  119. package/dist/{chunk-Y7XVWQXG.js → chunk-DNPQ2JBM.js} +4 -4
  120. package/dist/{chunk-Y7XVWQXG.js.map → chunk-DNPQ2JBM.js.map} +1 -1
  121. package/dist/{chunk-JJARU7YP.js → chunk-EWLVLDRP.js} +3 -3
  122. package/dist/{chunk-JJARU7YP.js.map → chunk-EWLVLDRP.js.map} +1 -1
  123. package/dist/{chunk-Y357MBJI.js → chunk-FNHZEBA5.js} +9 -8
  124. package/dist/chunk-FNHZEBA5.js.map +1 -0
  125. package/dist/{chunk-HSWRYXC7.js → chunk-FO4WVGUQ.js} +3 -88
  126. package/dist/chunk-FO4WVGUQ.js.map +1 -0
  127. package/dist/{chunk-BNI6SKFL.js → chunk-G3UTLICK.js} +4 -4
  128. package/dist/{chunk-BNI6SKFL.js.map → chunk-G3UTLICK.js.map} +1 -1
  129. package/dist/{chunk-C4RXPVDF.js → chunk-GMXI6V2D.js} +6 -5
  130. package/dist/chunk-GMXI6V2D.js.map +1 -0
  131. package/dist/{chunk-RKQH63G2.js → chunk-GXHJXZBG.js} +4 -4
  132. package/dist/{chunk-RKQH63G2.js.map → chunk-GXHJXZBG.js.map} +1 -1
  133. package/dist/{chunk-43D2CG4F.js → chunk-IBSQO6LW.js} +4 -4
  134. package/dist/{chunk-43D2CG4F.js.map → chunk-IBSQO6LW.js.map} +1 -1
  135. package/dist/{chunk-ZVZGLEZ6.js → chunk-IU4KTCS3.js} +3 -3
  136. package/dist/{chunk-ZVZGLEZ6.js.map → chunk-IU4KTCS3.js.map} +1 -1
  137. package/dist/{chunk-ZFNLX3F7.js → chunk-J3G4ZD76.js} +13 -12
  138. package/dist/chunk-J3G4ZD76.js.map +1 -0
  139. package/dist/{chunk-ENJ3CM5M.js → chunk-J5X4LXNM.js} +3 -3
  140. package/dist/{chunk-ENJ3CM5M.js.map → chunk-J5X4LXNM.js.map} +1 -1
  141. package/dist/{chunk-TJF6YZ5I.js → chunk-JKBLG344.js} +8 -7
  142. package/dist/chunk-JKBLG344.js.map +1 -0
  143. package/dist/{chunk-RPDMNNRW.js → chunk-JVIPOD6M.js} +20 -19
  144. package/dist/chunk-JVIPOD6M.js.map +1 -0
  145. package/dist/{chunk-4WAUITU2.js → chunk-KNIGLCRV.js} +3 -3
  146. package/dist/{chunk-4WAUITU2.js.map → chunk-KNIGLCRV.js.map} +1 -1
  147. package/dist/{chunk-OMKLPCBA.js → chunk-KQW6I5CD.js} +4 -4
  148. package/dist/{chunk-OMKLPCBA.js.map → chunk-KQW6I5CD.js.map} +1 -1
  149. package/dist/{chunk-HR3QJ3LW.js → chunk-LXNS6CMT.js} +4 -4
  150. package/dist/{chunk-HR3QJ3LW.js.map → chunk-LXNS6CMT.js.map} +1 -1
  151. package/dist/chunk-MGDCJQ5P.js +14 -0
  152. package/dist/{chunk-KZM7HXJ3.js.map → chunk-MGDCJQ5P.js.map} +1 -1
  153. package/dist/chunk-N45X7D55.js +63 -0
  154. package/dist/chunk-N45X7D55.js.map +1 -0
  155. package/dist/{chunk-OH2L4U2C.js → chunk-NZRJOAA7.js} +3 -3
  156. package/dist/{chunk-OH2L4U2C.js.map → chunk-NZRJOAA7.js.map} +1 -1
  157. package/dist/{chunk-TEOVJ6WU.js → chunk-O7B5JL6H.js} +4 -4
  158. package/dist/{chunk-TEOVJ6WU.js.map → chunk-O7B5JL6H.js.map} +1 -1
  159. package/dist/{chunk-UURVAJ42.js → chunk-OZP2FID7.js} +4 -4
  160. package/dist/{chunk-UURVAJ42.js.map → chunk-OZP2FID7.js.map} +1 -1
  161. package/dist/{chunk-HCA2TE4G.js → chunk-PGUKRWOY.js} +5 -5
  162. package/dist/{chunk-HCA2TE4G.js.map → chunk-PGUKRWOY.js.map} +1 -1
  163. package/dist/{chunk-3MIFT4VQ.js → chunk-Q62YEBIA.js} +4 -4
  164. package/dist/{chunk-3MIFT4VQ.js.map → chunk-Q62YEBIA.js.map} +1 -1
  165. package/dist/{chunk-6DMNJPLW.js → chunk-QS4EDTEX.js} +3 -3
  166. package/dist/{chunk-6DMNJPLW.js.map → chunk-QS4EDTEX.js.map} +1 -1
  167. package/dist/{chunk-SAGXF3MU.js → chunk-QZEQOVA5.js} +3 -3
  168. package/dist/{chunk-SAGXF3MU.js.map → chunk-QZEQOVA5.js.map} +1 -1
  169. package/dist/{chunk-JTOVO3ZU.js → chunk-RWBTMHLR.js} +5 -5
  170. package/dist/{chunk-JTOVO3ZU.js.map → chunk-RWBTMHLR.js.map} +1 -1
  171. package/dist/{chunk-DV6SJHL5.js → chunk-S34G5DL4.js} +4 -4
  172. package/dist/{chunk-DV6SJHL5.js.map → chunk-S34G5DL4.js.map} +1 -1
  173. package/dist/{chunk-MKVCFBVF.js → chunk-TIPR4JUO.js} +4 -4
  174. package/dist/{chunk-MKVCFBVF.js.map → chunk-TIPR4JUO.js.map} +1 -1
  175. package/dist/{chunk-WHJZP3QJ.js → chunk-ULMSO2XZ.js} +7 -7
  176. package/dist/{chunk-WHJZP3QJ.js.map → chunk-ULMSO2XZ.js.map} +1 -1
  177. package/dist/{chunk-IVBOLREE.js → chunk-VWVCSD3N.js} +3 -3
  178. package/dist/{chunk-IVBOLREE.js.map → chunk-VWVCSD3N.js.map} +1 -1
  179. package/dist/{chunk-5G7NYNX6.js → chunk-W2LNKEBF.js} +3 -3
  180. package/dist/{chunk-5G7NYNX6.js.map → chunk-W2LNKEBF.js.map} +1 -1
  181. package/dist/{chunk-AV6AAVNU.js → chunk-XGNML7XM.js} +7 -7
  182. package/dist/{chunk-AV6AAVNU.js.map → chunk-XGNML7XM.js.map} +1 -1
  183. package/dist/{chunk-46NBPXAI.js → chunk-XT6CLGF5.js} +3 -3
  184. package/dist/{chunk-46NBPXAI.js.map → chunk-XT6CLGF5.js.map} +1 -1
  185. package/dist/{chunk-SFZ7IIWL.js → chunk-ZEGNYJOR.js} +4 -4
  186. package/dist/{chunk-SFZ7IIWL.js.map → chunk-ZEGNYJOR.js.map} +1 -1
  187. package/dist/{chunk-OM26SAHA.js → chunk-ZPVLBXDY.js} +4 -4
  188. package/dist/{chunk-OM26SAHA.js.map → chunk-ZPVLBXDY.js.map} +1 -1
  189. package/dist/components/cart/index.js +1 -1
  190. package/dist/components/common/RenderWhenVisible.d.ts +3 -1
  191. package/dist/components/common/RenderWhenVisible.d.ts.map +1 -1
  192. package/dist/components/common/index.js +1 -1
  193. package/dist/components/common/lazy.d.ts +1 -1
  194. package/dist/components/common/lazy.d.ts.map +1 -1
  195. package/dist/components/drawer/index.js +22 -20
  196. package/dist/components/home/HomePageRenderer.d.ts.map +1 -1
  197. package/dist/components/home/index.js +26 -24
  198. package/dist/components/layout/index.js +6 -5
  199. package/dist/components/product/index.js +23 -21
  200. package/dist/components/store/index.js +24 -22
  201. package/dist/components/store/index.js.map +1 -1
  202. package/dist/components/toast/index.js +4 -3
  203. package/dist/components/toast/index.js.map +1 -1
  204. package/dist/components/tracking/index.js +1 -1
  205. package/dist/dev/DevSettingsWidget.d.ts +6 -7
  206. package/dist/dev/DevSettingsWidget.d.ts.map +1 -1
  207. package/dist/dev/dev-settings-store.d.ts +89 -46
  208. package/dist/dev/dev-settings-store.d.ts.map +1 -1
  209. package/dist/dev/editor/AddElementDrawer.d.ts +17 -0
  210. package/dist/dev/editor/AddElementDrawer.d.ts.map +1 -0
  211. package/dist/dev/editor/BuilderPanel.d.ts +23 -0
  212. package/dist/dev/editor/BuilderPanel.d.ts.map +1 -0
  213. package/dist/dev/editor/SettingsPanel.d.ts +9 -0
  214. package/dist/dev/editor/SettingsPanel.d.ts.map +1 -0
  215. package/dist/dev/editor/ThemeEditor.d.ts +20 -0
  216. package/dist/dev/editor/ThemeEditor.d.ts.map +1 -0
  217. package/dist/dev/editor/catalog.d.ts +10 -0
  218. package/dist/dev/editor/catalog.d.ts.map +1 -0
  219. package/dist/dev/editor/fields.d.ts +18 -0
  220. package/dist/dev/editor/fields.d.ts.map +1 -0
  221. package/dist/dev/editor/i18n.d.ts +72 -0
  222. package/dist/dev/editor/i18n.d.ts.map +1 -0
  223. package/dist/dev/editor/icons.d.ts +21 -0
  224. package/dist/dev/editor/icons.d.ts.map +1 -0
  225. package/dist/dev/editor/index.d.ts +8 -0
  226. package/dist/dev/editor/index.d.ts.map +1 -0
  227. package/dist/dev/editor/index.js +2059 -0
  228. package/dist/dev/editor/index.js.map +1 -0
  229. package/dist/dev/editor/lookup.d.ts +22 -0
  230. package/dist/dev/editor/lookup.d.ts.map +1 -0
  231. package/dist/dev/editor/mount.d.ts +4 -0
  232. package/dist/dev/editor/mount.d.ts.map +1 -0
  233. package/dist/dev/editor/paths.d.ts +44 -0
  234. package/dist/dev/editor/paths.d.ts.map +1 -0
  235. package/dist/dev/editor/pickers.d.ts +12 -0
  236. package/dist/dev/editor/pickers.d.ts.map +1 -0
  237. package/dist/dev/editor/styles.d.ts +8 -0
  238. package/dist/dev/editor/styles.d.ts.map +1 -0
  239. package/dist/dev/index.d.ts +1 -1
  240. package/dist/dev/index.d.ts.map +1 -1
  241. package/dist/dev/index.js +35 -309
  242. package/dist/dev/index.js.map +1 -1
  243. package/dist/dev/schema-types.d.ts +124 -4
  244. package/dist/dev/schema-types.d.ts.map +1 -1
  245. package/dist/dev/store-lookup.d.ts +13 -0
  246. package/dist/dev/store-lookup.d.ts.map +1 -0
  247. package/dist/document-class-2RROXH4K.js +29 -0
  248. package/dist/{document-class-AJGI7GKJ.js.map → document-class-2RROXH4K.js.map} +1 -1
  249. package/dist/hooks/index.js +22 -20
  250. package/dist/hooks/useComments.js +3 -2
  251. package/dist/hooks/useGtm.js +22 -20
  252. package/dist/hooks/useMoney.js +22 -20
  253. package/dist/hooks/useProduct.js +3 -2
  254. package/dist/hooks/useStore.js +22 -20
  255. package/dist/hooks/useUser.js +5 -4
  256. package/dist/hooks/useWishlist.js +3 -2
  257. package/dist/index.js +22 -20
  258. package/dist/index.js.map +1 -1
  259. package/dist/native-app/index.js +3 -2
  260. package/dist/{navigation-KTFJWOWI.js → navigation-JB2CJXBF.js} +7 -6
  261. package/dist/navigation-JB2CJXBF.js.map +1 -0
  262. package/dist/navigation-KTMLD4VB.js +14 -0
  263. package/dist/{navigation-BARZWXJZ.js.map → navigation-KTMLD4VB.js.map} +1 -1
  264. package/dist/{not-found-NK6ZFJ7H.js → not-found-ZM6VIELR.js} +25 -23
  265. package/dist/not-found-ZM6VIELR.js.map +1 -0
  266. package/dist/providers/index.js +22 -20
  267. package/dist/routes/account/orders.js +7 -6
  268. package/dist/routes/account.js +16 -15
  269. package/dist/routes/account.js.map +1 -1
  270. package/dist/routes/blog.js +11 -10
  271. package/dist/routes/blog.js.map +1 -1
  272. package/dist/routes/brands.js +7 -6
  273. package/dist/routes/brands.js.map +1 -1
  274. package/dist/routes/cart.js +30 -28
  275. package/dist/routes/cart.js.map +1 -1
  276. package/dist/routes/home/HomePage.d.ts.map +1 -1
  277. package/dist/routes/home.js +27 -25
  278. package/dist/routes/index.js +6 -5
  279. package/dist/routes/loyalty.js +8 -7
  280. package/dist/routes/loyalty.js.map +1 -1
  281. package/dist/routes/page.js +7 -6
  282. package/dist/routes/page.js.map +1 -1
  283. package/dist/routes/product-listing/index.d.ts +27 -0
  284. package/dist/routes/product-listing/index.d.ts.map +1 -1
  285. package/dist/routes/product-listing.js +52 -27
  286. package/dist/routes/product-listing.js.map +1 -1
  287. package/dist/routes/product.js +26 -24
  288. package/dist/routes/product.js.map +1 -1
  289. package/dist/routes/seo-redirects.js +6 -5
  290. package/dist/routes/testimonials.js +2 -2
  291. package/dist/routes/thank-you.js +7 -6
  292. package/dist/routes/thank-you.js.map +1 -1
  293. package/dist/skeleton.js +27 -25
  294. package/dist/store-lookup-T4TK7CKA.js +114 -0
  295. package/dist/store-lookup-T4TK7CKA.js.map +1 -0
  296. package/dist/tanstack.js +17 -16
  297. package/dist/tanstack.js.map +1 -1
  298. package/dist/utils/index.js +6 -5
  299. package/dist/utils/index.js.map +1 -1
  300. package/dist/vite/adapters/tanstack.adapter.d.ts.map +1 -1
  301. package/dist/vite/index.js +424 -47
  302. package/dist/vite/index.js.map +1 -1
  303. package/dist/vite/plugins/twilight-schema.d.ts +7 -2
  304. package/dist/vite/plugins/twilight-schema.d.ts.map +1 -1
  305. package/dist/vite/plugins/twilight-schema.plugin.d.ts +26 -0
  306. package/dist/vite/plugins/twilight-schema.plugin.d.ts.map +1 -1
  307. package/package.json +5 -1
  308. package/tailwind/components/common/RenderWhenVisible.tsx.txt +9 -2
  309. package/tailwind/components/home/HomePageRenderer.tsx.txt +2 -0
  310. package/tailwind/routes/home/HomePage.tsx.txt +7 -6
  311. package/tailwind/routes/product-listing/index.tsx.txt +42 -0
  312. package/dist/BlogAuthorPage-KRT7MRTC.js.map +0 -1
  313. package/dist/BlogCategoryPage-OP3ETAMT.js.map +0 -1
  314. package/dist/BlogPage-RGAQVUDI.js.map +0 -1
  315. package/dist/BlogSinglePage-VG4UXBTL.js.map +0 -1
  316. package/dist/BlogTagPage-G4IVHJD5.js.map +0 -1
  317. package/dist/BrandsPage-2JMPPOOU.js.map +0 -1
  318. package/dist/Breadcrumb-I3ZOGG2Y.js.map +0 -1
  319. package/dist/CartItem-YTPYETW6.js.map +0 -1
  320. package/dist/CartSummary-DND7BO26.js.map +0 -1
  321. package/dist/CustomerLayout-HCYVBODI.js.map +0 -1
  322. package/dist/Header-QG4UO3MF.js +0 -21
  323. package/dist/LoyaltyPage-ZMFYQMQY.js.map +0 -1
  324. package/dist/LoyaltyPointsPage-5PB6IFLY.js.map +0 -1
  325. package/dist/MainMenu-SAUMNMBF.js.map +0 -1
  326. package/dist/MobileMenu-2WOWOFQB.js.map +0 -1
  327. package/dist/NotificationsPage-6FX4SOZU.js.map +0 -1
  328. package/dist/OrderSinglePage-RUMSJIFD.js.map +0 -1
  329. package/dist/OrdersPage-B4Q4QIEM.js.map +0 -1
  330. package/dist/PageSingle-F4TDNKUM.js.map +0 -1
  331. package/dist/ProductDetails-BNVVUDBH.js.map +0 -1
  332. package/dist/ProfilePage-OJSAXSC2.js.map +0 -1
  333. package/dist/RenderWhenVisible-F44J5MMG.js.map +0 -1
  334. package/dist/SeoCartWidget-4PN2DW54.js.map +0 -1
  335. package/dist/SettingsPage-BCRNV4GU.js.map +0 -1
  336. package/dist/TestimonialsPage-YU4PLOLR.js.map +0 -1
  337. package/dist/ThankYouPage-MUDELEIQ.js.map +0 -1
  338. package/dist/WalletPage-2I4KTR5E.js.map +0 -1
  339. package/dist/WishlistPage-7AYL3RUD.js.map +0 -1
  340. package/dist/chunk-2JV6WZ6O.js +0 -136
  341. package/dist/chunk-2JV6WZ6O.js.map +0 -1
  342. package/dist/chunk-C4RXPVDF.js.map +0 -1
  343. package/dist/chunk-HSWRYXC7.js.map +0 -1
  344. package/dist/chunk-KZM7HXJ3.js +0 -14
  345. package/dist/chunk-QGOPTVV5.js.map +0 -1
  346. package/dist/chunk-RPDMNNRW.js.map +0 -1
  347. package/dist/chunk-TJF6YZ5I.js.map +0 -1
  348. package/dist/chunk-Y357MBJI.js.map +0 -1
  349. package/dist/chunk-ZFNLX3F7.js.map +0 -1
  350. package/dist/document-class-AJGI7GKJ.js +0 -28
  351. package/dist/navigation-BARZWXJZ.js +0 -13
  352. package/dist/navigation-KTFJWOWI.js.map +0 -1
  353. package/dist/not-found-NK6ZFJ7H.js.map +0 -1
@@ -1,44 +1,45 @@
1
- export { Home, HomeSkeleton, homeLoader } from '../chunk-Y357MBJI.js';
2
- export { DefaultHomeComponents, registerHomeComponentConfig, registerHomeComponents } from '../chunk-TJF6YZ5I.js';
3
- import '../chunk-FZYR4BA2.js';
4
- import '../chunk-CEYT3JER.js';
5
- import '../chunk-LA7KZ2XY.js';
1
+ export { Home, HomeSkeleton, homeLoader } from '../chunk-FNHZEBA5.js';
2
+ export { DefaultHomeComponents, registerHomeComponentConfig, registerHomeComponents } from '../chunk-JKBLG344.js';
3
+ import '../chunk-7WTUA4WY.js';
4
+ import '../chunk-56T47K7P.js';
5
+ import '../chunk-2D5TFSVG.js';
6
6
  import '../chunk-Y32RHCOH.js';
7
- import '../chunk-RPDMNNRW.js';
8
- import '../chunk-WHJZP3QJ.js';
9
- import '../chunk-YDFOJBEY.js';
10
- import '../chunk-SFZ7IIWL.js';
11
- import '../chunk-2JV6WZ6O.js';
7
+ import '../chunk-JVIPOD6M.js';
8
+ import '../chunk-ULMSO2XZ.js';
9
+ import '../chunk-3GW3VFR6.js';
10
+ import '../chunk-ZEGNYJOR.js';
12
11
  import '../chunk-RV54D2D7.js';
13
- import '../chunk-ZVZGLEZ6.js';
12
+ import '../chunk-COJH52VR.js';
13
+ import '../chunk-N45X7D55.js';
14
+ import '../chunk-IU4KTCS3.js';
14
15
  import '../chunk-VVZNW5CB.js';
15
- import '../chunk-5G7NYNX6.js';
16
+ import '../chunk-W2LNKEBF.js';
16
17
  import '../chunk-GD26FI4J.js';
17
18
  import '../chunk-4SZZPXM2.js';
18
- import '../chunk-JTOVO3ZU.js';
19
+ import '../chunk-RWBTMHLR.js';
19
20
  import '../chunk-OUW6WESU.js';
20
- import '../chunk-SAGXF3MU.js';
21
+ import '../chunk-QZEQOVA5.js';
21
22
  import '../chunk-HI5V5X3S.js';
22
- import '../chunk-66K5P5ZX.js';
23
- import '../chunk-ENJ3CM5M.js';
23
+ import '../chunk-CNUBL24W.js';
24
+ import '../chunk-J5X4LXNM.js';
24
25
  import '../chunk-MVT5AF2A.js';
25
26
  import '../chunk-Z653O7MX.js';
26
27
  import '../chunk-ZCH7W7DZ.js';
27
- import '../chunk-46NBPXAI.js';
28
+ import '../chunk-XT6CLGF5.js';
28
29
  import '../chunk-JWXJPJBO.js';
29
30
  import '../chunk-CW625T2E.js';
30
31
  import '../chunk-7V36I5GT.js';
31
32
  import '../chunk-6WI7R2BD.js';
32
- import '../chunk-4WAUITU2.js';
33
+ import '../chunk-KNIGLCRV.js';
33
34
  import '../chunk-OAMIDZKW.js';
34
- import '../chunk-DBW7XXNE.js';
35
+ import '../chunk-BPL5H33B.js';
35
36
  import '../chunk-V2ZDTY6H.js';
36
- import '../chunk-IVBOLREE.js';
37
+ import '../chunk-VWVCSD3N.js';
37
38
  import '../chunk-5XDPAKF5.js';
38
39
  import '../chunk-GCPEMNSU.js';
39
- import '../chunk-QGOPTVV5.js';
40
+ import '../chunk-6EQ7G3SZ.js';
40
41
  import '../chunk-TYNZ5B2B.js';
41
- import '../chunk-OMKLPCBA.js';
42
+ import '../chunk-KQW6I5CD.js';
42
43
  import '../chunk-AXW67SY7.js';
43
44
  import '../chunk-BYMOPN2S.js';
44
45
  import '../chunk-SKLEJJ6M.js';
@@ -46,9 +47,10 @@ import '../chunk-6BZ5TKEV.js';
46
47
  import '../chunk-FZKRSGLP.js';
47
48
  import '../chunk-7V5HOZW4.js';
48
49
  import '../chunk-YA6ABQB7.js';
49
- import '../chunk-3PXONLUK.js';
50
- import '../chunk-JJARU7YP.js';
51
- import '../chunk-HSWRYXC7.js';
50
+ import '../chunk-BH7YNCYB.js';
51
+ import '../chunk-EWLVLDRP.js';
52
+ import '../chunk-2FKZAAV7.js';
53
+ import '../chunk-FO4WVGUQ.js';
52
54
  import '../chunk-N2S25NXP.js';
53
55
  import '../chunk-T72DAX7R.js';
54
56
  import '../chunk-DF6FBKDN.js';
@@ -1,10 +1,11 @@
1
- export { slugBrandRedirectLoader } from '../chunk-RKQH63G2.js';
2
- import '../chunk-JTOVO3ZU.js';
1
+ export { slugBrandRedirectLoader } from '../chunk-GXHJXZBG.js';
2
+ import '../chunk-RWBTMHLR.js';
3
3
  import '../chunk-OUW6WESU.js';
4
- import '../chunk-QGOPTVV5.js';
4
+ import '../chunk-6EQ7G3SZ.js';
5
5
  import '../chunk-TYNZ5B2B.js';
6
- import '../chunk-JJARU7YP.js';
7
- import '../chunk-HSWRYXC7.js';
6
+ import '../chunk-EWLVLDRP.js';
7
+ import '../chunk-2FKZAAV7.js';
8
+ import '../chunk-FO4WVGUQ.js';
8
9
  import '../chunk-N2S25NXP.js';
9
10
  export { FALLBACK_LOCALE, SUPPORTED_LOCALES, getLanguageInfo, isLocale } from '../chunk-T72DAX7R.js';
10
11
  import '../chunk-DF6FBKDN.js';
@@ -1,10 +1,11 @@
1
- import { loyalty } from '../chunk-3MIFT4VQ.js';
1
+ import { loyalty } from '../chunk-Q62YEBIA.js';
2
2
  import { buildHreflangAlternates } from '../chunk-4SZZPXM2.js';
3
- import { unauthorized, orUnauthorized, redirect } from '../chunk-JTOVO3ZU.js';
3
+ import { unauthorized, orUnauthorized, redirect } from '../chunk-RWBTMHLR.js';
4
4
  import { RouteId } from '../chunk-OUW6WESU.js';
5
- import { getAuthToken } from '../chunk-QGOPTVV5.js';
6
- import '../chunk-JJARU7YP.js';
7
- import '../chunk-HSWRYXC7.js';
5
+ import { getAuthToken } from '../chunk-6EQ7G3SZ.js';
6
+ import '../chunk-EWLVLDRP.js';
7
+ import '../chunk-2FKZAAV7.js';
8
+ import '../chunk-FO4WVGUQ.js';
8
9
  import { getTwilightContext } from '../chunk-N2S25NXP.js';
9
10
  import { FALLBACK_LOCALE } from '../chunk-T72DAX7R.js';
10
11
  import '../chunk-DF6FBKDN.js';
@@ -57,10 +58,10 @@ async function loyaltyPointsLoader(locale) {
57
58
 
58
59
  // src/routes/loyalty/index.tsx
59
60
  var LazyLoyaltyPage = lazy(
60
- () => import('../LoyaltyPage-ZMFYQMQY.js').then((m) => ({ default: m.LoyaltyPage }))
61
+ () => import('../LoyaltyPage-POFUTIPB.js').then((m) => ({ default: m.LoyaltyPage }))
61
62
  );
62
63
  var LazyLoyaltyPointsPage = lazy(
63
- () => import('../LoyaltyPointsPage-5PB6IFLY.js').then((m) => ({ default: m.LoyaltyPointsPage }))
64
+ () => import('../LoyaltyPointsPage-L4S4NZA2.js').then((m) => ({ default: m.LoyaltyPointsPage }))
64
65
  );
65
66
  var LoyaltyPage = LazyLoyaltyPage;
66
67
  var LoyaltyPointsPage = LazyLoyaltyPointsPage;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/routes/loyalty/loader.ts","../../src/routes/loyalty/index.tsx"],"names":[],"mappings":"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","file":"loyalty.js","sourcesContent":["import { loyalty } from '../../api/loyalty';\nimport type { Loyalty, LoyaltyPageProps, LoyaltyPointsPageProps } from './types';\nimport { RouteId } from '../../router/route-ids';\nimport { orUnauthorized, redirect, unauthorized } from '../../providers/NavigationProvider';\nimport { FALLBACK_LOCALE } from '../../providers/locale-constants';\nimport { getTwilightContext } from '../../twilight/context';\nimport { getAuthToken } from '../../api/client';\n\nasync function getProgramOrGoHome(locale?: string): Promise<Loyalty> {\n try {\n return await loyalty.get();\n } catch (error) {\n // The API answers 400 when the store's loyalty program is off; like the Twig storefront, go home.\n if ((error as { response?: { status?: number } })?.response?.status === 400) {\n throw redirect(`/${locale || FALLBACK_LOCALE}`);\n }\n throw error;\n }\n}\n\nexport async function loyaltyLoader(locale?: string): Promise<LoyaltyPageProps> {\n const data = await getProgramOrGoHome(locale);\n const { i18n } = getTwilightContext();\n return {\n page: {\n slug: RouteId.LOYALTY,\n title: data.name,\n breadcrumbs: [\n { name: i18n.t('common.titles.home'), url: '/' },\n { name: i18n.t('common.titles.loyalty_program'), url: '/loyalty' },\n ],\n },\n loyalty: data,\n };\n}\n\nexport async function loyaltyPointsLoader(locale?: string): Promise<LoyaltyPointsPageProps> {\n if (!getAuthToken()) throw unauthorized();\n await orUnauthorized(getProgramOrGoHome(locale));\n const { i18n } = getTwilightContext();\n const title = i18n.t('pages.loyalty_program.loyalty_points');\n return {\n page: {\n slug: RouteId.CUSTOMER_LOYALTY_POINTS,\n title,\n breadcrumbs: [\n { name: i18n.t('common.titles.home'), url: '/' },\n { name: i18n.t('common.titles.profile'), url: '/account/profile' },\n { name: title, url: '/loyalty_points' },\n ],\n },\n };\n}\n","import type { HeadDescriptor } from '../../utils/head';\nimport { buildHreflangAlternates } from '../../utils/baseHead';\nimport { lazy } from 'react';\nimport { loyaltyLoader, loyaltyPointsLoader } from './loader';\nimport type { LoyaltyPageProps, LoyaltyPointsPageProps } from './types';\nimport type { TwilightContext } from '../../twilight/context';\nimport { RouteId } from '../../router/route-ids';\n\n// Lazy-load component for code-splitting\nconst LazyLoyaltyPage = lazy(() =>\n import('./LoyaltyPage').then((m) => ({ default: m.LoyaltyPage }))\n);\n\nconst LazyLoyaltyPointsPage = lazy(() =>\n import('./LoyaltyPointsPage').then((m) => ({ default: m.LoyaltyPointsPage }))\n);\n\nexport const LoyaltyPage = LazyLoyaltyPage;\nexport const LoyaltyPointsPage = LazyLoyaltyPointsPage;\nexport { loyaltyLoader, loyaltyPointsLoader } from './loader';\nexport type {\n LoyaltyPageProps,\n LoyaltyPointsPageProps,\n LoyaltyPoint,\n LoyaltyPrize,\n LoyaltyPrizeItem,\n} from './types';\n\nasync function loader(\n ctx?: { locale?: string },\n extend?: (\n data: LoyaltyPageProps,\n ctx: { params: Record<string, never> }\n ) => Promise<Record<string, unknown>> | Record<string, unknown>\n): Promise<LoyaltyPageProps> {\n const data = await loyaltyLoader(ctx?.locale);\n\n if (extend) {\n const extra = await extend(data, { params: {} });\n return { ...data, ...extra } as LoyaltyPageProps;\n }\n return data;\n}\n\nfunction head(ctx: TwilightContext, data: LoyaltyPageProps): 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 Loyalty = { id: RouteId.LOYALTY, loader, head, Component: LazyLoyaltyPage } as const;\n\nasync function pointsLoader(\n ctx?: { locale?: string },\n extend?: (\n data: LoyaltyPointsPageProps,\n ctx: { params: Record<string, never> }\n ) => Promise<Record<string, unknown>> | Record<string, unknown>\n): Promise<LoyaltyPointsPageProps> {\n const data = await loyaltyPointsLoader(ctx?.locale);\n\n if (extend) {\n const extra = await extend(data, { params: {} });\n return { ...data, ...extra } as LoyaltyPointsPageProps;\n }\n return data;\n}\n\nexport const LoyaltyPoints = {\n id: RouteId.CUSTOMER_LOYALTY_POINTS,\n loader: pointsLoader,\n head: (ctx: TwilightContext, data: LoyaltyPointsPageProps): HeadDescriptor => ({\n title: data.page.title,\n alternateLanguages: buildHreflangAlternates(ctx.settings, ctx.location.pathname),\n }),\n Component: LazyLoyaltyPointsPage,\n} as const;\n"]}
1
+ {"version":3,"sources":["../../src/routes/loyalty/loader.ts","../../src/routes/loyalty/index.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;AAQA,eAAe,mBAAmB,MAAA,EAAmC;AACnE,EAAA,IAAI;AACF,IAAA,OAAO,MAAM,QAAQ,GAAA,EAAI;AAAA,EAC3B,SAAS,KAAA,EAAO;AAEd,IAAA,IAAK,KAAA,EAA8C,QAAA,EAAU,MAAA,KAAW,GAAA,EAAK;AAC3E,MAAA,MAAM,QAAA,CAAS,CAAA,CAAA,EAAI,MAAA,IAAU,eAAe,CAAA,CAAE,CAAA;AAAA,IAChD;AACA,IAAA,MAAM,KAAA;AAAA,EACR;AACF;AAEA,eAAsB,cAAc,MAAA,EAA4C;AAC9E,EAAA,MAAM,IAAA,GAAO,MAAM,kBAAA,CAAmB,MAAM,CAAA;AAC5C,EAAA,MAAM,EAAE,IAAA,EAAK,GAAI,kBAAA,EAAmB;AACpC,EAAA,OAAO;AAAA,IACL,IAAA,EAAM;AAAA,MACJ,MAAM,OAAA,CAAQ,OAAA;AAAA,MACd,OAAO,IAAA,CAAK,IAAA;AAAA,MACZ,WAAA,EAAa;AAAA,QACX,EAAE,IAAA,EAAM,IAAA,CAAK,EAAE,oBAAoB,CAAA,EAAG,KAAK,GAAA,EAAI;AAAA,QAC/C,EAAE,IAAA,EAAM,IAAA,CAAK,EAAE,+BAA+B,CAAA,EAAG,KAAK,UAAA;AAAW;AACnE,KACF;AAAA,IACA,OAAA,EAAS;AAAA,GACX;AACF;AAEA,eAAsB,oBAAoB,MAAA,EAAkD;AAC1F,EAAA,IAAI,CAAC,YAAA,EAAa,EAAG,MAAM,YAAA,EAAa;AACxC,EAAA,MAAM,cAAA,CAAe,kBAAA,CAAmB,MAAM,CAAC,CAAA;AAC/C,EAAA,MAAM,EAAE,IAAA,EAAK,GAAI,kBAAA,EAAmB;AACpC,EAAA,MAAM,KAAA,GAAQ,IAAA,CAAK,CAAA,CAAE,sCAAsC,CAAA;AAC3D,EAAA,OAAO;AAAA,IACL,IAAA,EAAM;AAAA,MACJ,MAAM,OAAA,CAAQ,uBAAA;AAAA,MACd,KAAA;AAAA,MACA,WAAA,EAAa;AAAA,QACX,EAAE,IAAA,EAAM,IAAA,CAAK,EAAE,oBAAoB,CAAA,EAAG,KAAK,GAAA,EAAI;AAAA,QAC/C,EAAE,IAAA,EAAM,IAAA,CAAK,EAAE,uBAAuB,CAAA,EAAG,KAAK,kBAAA,EAAmB;AAAA,QACjE,EAAE,IAAA,EAAM,KAAA,EAAO,GAAA,EAAK,iBAAA;AAAkB;AACxC;AACF,GACF;AACF;;;AC3CA,IAAM,eAAA,GAAkB,IAAA;AAAA,EAAK,MAC3B,OAAO,4BAAe,CAAA,CAAE,IAAA,CAAK,CAAC,CAAA,MAAO,EAAE,OAAA,EAAS,CAAA,CAAE,WAAA,EAAY,CAAE;AAClE,CAAA;AAEA,IAAM,qBAAA,GAAwB,IAAA;AAAA,EAAK,MACjC,OAAO,kCAAqB,CAAA,CAAE,IAAA,CAAK,CAAC,CAAA,MAAO,EAAE,OAAA,EAAS,CAAA,CAAE,iBAAA,EAAkB,CAAE;AAC9E,CAAA;AAEO,IAAM,WAAA,GAAc;AACpB,IAAM,iBAAA,GAAoB;AAUjC,eAAe,MAAA,CACb,KACA,MAAA,EAI2B;AAC3B,EAAA,MAAM,IAAA,GAAO,MAAM,aAAA,CAAc,GAAA,EAAK,MAAM,CAAA;AAE5C,EAAA,IAAI,MAAA,EAAQ;AACV,IAAA,MAAM,KAAA,GAAQ,MAAM,MAAA,CAAO,IAAA,EAAM,EAAE,MAAA,EAAQ,IAAI,CAAA;AAC/C,IAAA,OAAO,EAAE,GAAG,IAAA,EAAM,GAAG,KAAA,EAAM;AAAA,EAC7B;AACA,EAAA,OAAO,IAAA;AACT;AAEA,SAAS,IAAA,CAAK,KAAsB,IAAA,EAAwC;AAC1E,EAAA,MAAM,IAAA,GAAuB;AAAA,IAC3B,KAAA,EAAO,KAAK,IAAA,CAAK,KAAA;AAAA,IACjB,WAAA,EAAa,KAAK,IAAA,CAAK,WAAA;AAAA,IACvB,oBAAoB,uBAAA,CAAwB,GAAA,CAAI,QAAA,EAAU,GAAA,CAAI,SAAS,QAAQ;AAAA,GACjF;AAEA,EAAA,OAAO,IAAA;AACT;AAEO,IAAM,OAAA,GAAU,EAAE,EAAA,EAAI,OAAA,CAAQ,SAAS,MAAA,EAAQ,IAAA,EAAM,WAAW,eAAA;AAEvE,eAAe,YAAA,CACb,KACA,MAAA,EAIiC;AACjC,EAAA,MAAM,IAAA,GAAO,MAAM,mBAAA,CAAoB,GAAA,EAAK,MAAM,CAAA;AAElD,EAAA,IAAI,MAAA,EAAQ;AACV,IAAA,MAAM,KAAA,GAAQ,MAAM,MAAA,CAAO,IAAA,EAAM,EAAE,MAAA,EAAQ,IAAI,CAAA;AAC/C,IAAA,OAAO,EAAE,GAAG,IAAA,EAAM,GAAG,KAAA,EAAM;AAAA,EAC7B;AACA,EAAA,OAAO,IAAA;AACT;AAEO,IAAM,aAAA,GAAgB;AAAA,EAC3B,IAAI,OAAA,CAAQ,uBAAA;AAAA,EACZ,MAAA,EAAQ,YAAA;AAAA,EACR,IAAA,EAAM,CAAC,GAAA,EAAsB,IAAA,MAAkD;AAAA,IAC7E,KAAA,EAAO,KAAK,IAAA,CAAK,KAAA;AAAA,IACjB,oBAAoB,uBAAA,CAAwB,GAAA,CAAI,QAAA,EAAU,GAAA,CAAI,SAAS,QAAQ;AAAA,GACjF,CAAA;AAAA,EACA,SAAA,EAAW;AACb","file":"loyalty.js","sourcesContent":["import { loyalty } from '../../api/loyalty';\nimport type { Loyalty, LoyaltyPageProps, LoyaltyPointsPageProps } from './types';\nimport { RouteId } from '../../router/route-ids';\nimport { orUnauthorized, redirect, unauthorized } from '../../providers/NavigationProvider';\nimport { FALLBACK_LOCALE } from '../../providers/locale-constants';\nimport { getTwilightContext } from '../../twilight/context';\nimport { getAuthToken } from '../../api/client';\n\nasync function getProgramOrGoHome(locale?: string): Promise<Loyalty> {\n try {\n return await loyalty.get();\n } catch (error) {\n // The API answers 400 when the store's loyalty program is off; like the Twig storefront, go home.\n if ((error as { response?: { status?: number } })?.response?.status === 400) {\n throw redirect(`/${locale || FALLBACK_LOCALE}`);\n }\n throw error;\n }\n}\n\nexport async function loyaltyLoader(locale?: string): Promise<LoyaltyPageProps> {\n const data = await getProgramOrGoHome(locale);\n const { i18n } = getTwilightContext();\n return {\n page: {\n slug: RouteId.LOYALTY,\n title: data.name,\n breadcrumbs: [\n { name: i18n.t('common.titles.home'), url: '/' },\n { name: i18n.t('common.titles.loyalty_program'), url: '/loyalty' },\n ],\n },\n loyalty: data,\n };\n}\n\nexport async function loyaltyPointsLoader(locale?: string): Promise<LoyaltyPointsPageProps> {\n if (!getAuthToken()) throw unauthorized();\n await orUnauthorized(getProgramOrGoHome(locale));\n const { i18n } = getTwilightContext();\n const title = i18n.t('pages.loyalty_program.loyalty_points');\n return {\n page: {\n slug: RouteId.CUSTOMER_LOYALTY_POINTS,\n title,\n breadcrumbs: [\n { name: i18n.t('common.titles.home'), url: '/' },\n { name: i18n.t('common.titles.profile'), url: '/account/profile' },\n { name: title, url: '/loyalty_points' },\n ],\n },\n };\n}\n","import type { HeadDescriptor } from '../../utils/head';\nimport { buildHreflangAlternates } from '../../utils/baseHead';\nimport { lazy } from 'react';\nimport { loyaltyLoader, loyaltyPointsLoader } from './loader';\nimport type { LoyaltyPageProps, LoyaltyPointsPageProps } from './types';\nimport type { TwilightContext } from '../../twilight/context';\nimport { RouteId } from '../../router/route-ids';\n\n// Lazy-load component for code-splitting\nconst LazyLoyaltyPage = lazy(() =>\n import('./LoyaltyPage').then((m) => ({ default: m.LoyaltyPage }))\n);\n\nconst LazyLoyaltyPointsPage = lazy(() =>\n import('./LoyaltyPointsPage').then((m) => ({ default: m.LoyaltyPointsPage }))\n);\n\nexport const LoyaltyPage = LazyLoyaltyPage;\nexport const LoyaltyPointsPage = LazyLoyaltyPointsPage;\nexport { loyaltyLoader, loyaltyPointsLoader } from './loader';\nexport type {\n LoyaltyPageProps,\n LoyaltyPointsPageProps,\n LoyaltyPoint,\n LoyaltyPrize,\n LoyaltyPrizeItem,\n} from './types';\n\nasync function loader(\n ctx?: { locale?: string },\n extend?: (\n data: LoyaltyPageProps,\n ctx: { params: Record<string, never> }\n ) => Promise<Record<string, unknown>> | Record<string, unknown>\n): Promise<LoyaltyPageProps> {\n const data = await loyaltyLoader(ctx?.locale);\n\n if (extend) {\n const extra = await extend(data, { params: {} });\n return { ...data, ...extra } as LoyaltyPageProps;\n }\n return data;\n}\n\nfunction head(ctx: TwilightContext, data: LoyaltyPageProps): 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 Loyalty = { id: RouteId.LOYALTY, loader, head, Component: LazyLoyaltyPage } as const;\n\nasync function pointsLoader(\n ctx?: { locale?: string },\n extend?: (\n data: LoyaltyPointsPageProps,\n ctx: { params: Record<string, never> }\n ) => Promise<Record<string, unknown>> | Record<string, unknown>\n): Promise<LoyaltyPointsPageProps> {\n const data = await loyaltyPointsLoader(ctx?.locale);\n\n if (extend) {\n const extra = await extend(data, { params: {} });\n return { ...data, ...extra } as LoyaltyPointsPageProps;\n }\n return data;\n}\n\nexport const LoyaltyPoints = {\n id: RouteId.CUSTOMER_LOYALTY_POINTS,\n loader: pointsLoader,\n head: (ctx: TwilightContext, data: LoyaltyPointsPageProps): HeadDescriptor => ({\n title: data.page.title,\n alternateLanguages: buildHreflangAlternates(ctx.settings, ctx.location.pathname),\n }),\n Component: LazyLoyaltyPointsPage,\n} as const;\n"]}
@@ -1,10 +1,11 @@
1
- import { page } from '../chunk-Y7XVWQXG.js';
1
+ import { page } from '../chunk-DNPQ2JBM.js';
2
2
  import { buildHreflangAlternates } from '../chunk-4SZZPXM2.js';
3
- import '../chunk-JTOVO3ZU.js';
3
+ import '../chunk-RWBTMHLR.js';
4
4
  import { RouteId } from '../chunk-OUW6WESU.js';
5
- import '../chunk-QGOPTVV5.js';
6
- import '../chunk-JJARU7YP.js';
7
- import '../chunk-HSWRYXC7.js';
5
+ import '../chunk-6EQ7G3SZ.js';
6
+ import '../chunk-EWLVLDRP.js';
7
+ import '../chunk-2FKZAAV7.js';
8
+ import '../chunk-FO4WVGUQ.js';
8
9
  import '../chunk-N2S25NXP.js';
9
10
  import '../chunk-T72DAX7R.js';
10
11
  import '../chunk-DF6FBKDN.js';
@@ -28,7 +29,7 @@ async function pageSingleLoader({ params }) {
28
29
  }
29
30
 
30
31
  // src/routes/page/index.tsx
31
- var LazyPageSingle = lazy(() => import('../PageSingle-F4TDNKUM.js').then((m) => ({ default: m.PageSingle })));
32
+ var LazyPageSingle = lazy(() => import('../PageSingle-CJRT3HJZ.js').then((m) => ({ default: m.PageSingle })));
32
33
  var PageSingleLazy = LazyPageSingle;
33
34
  async function loader(ctx, extend) {
34
35
  const data = await pageSingleLoader({ params: ctx.params });
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/routes/page/loader.ts","../../src/routes/page/index.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;AAKA,eAAsB,gBAAA,CAAiB,EAAE,MAAA,EAAO,EAAmD;AACjG,EAAA,MAAM,IAAA,GAAO,MAAM,IAAA,CAAK,WAAA,CAAY,OAAO,EAAE,CAAA;AAC7C,EAAA,OAAO;AAAA,IACL,IAAA,EAAM;AAAA,MACJ,MAAM,OAAA,CAAQ,WAAA;AAAA,MACd,IAAI,IAAA,CAAK,EAAA;AAAA,MACT,OAAO,IAAA,CAAK,IAAA;AAAA,MACZ,KAAK,IAAA,CAAK,GAAA;AAAA,MACV,SAAS,IAAA,CAAK,OAAA;AAAA,MACd,UAAU,IAAA,CAAK,QAAA;AAAA,MACf,YAAY,IAAA,CAAK;AAAA;AACnB,GACF;AACF;;;ACRA,IAAM,cAAA,GAAiB,IAAA,CAAK,MAAM,OAAO,2BAAc,CAAA,CAAE,IAAA,CAAK,CAAC,CAAA,MAAO,EAAE,OAAA,EAAS,CAAA,CAAE,UAAA,GAAa,CAAC,CAAA;AAE1F,IAAM,cAAA,GAAiB;AAI9B,eAAe,MAAA,CACb,KACA,MAAA,EAI0B;AAC1B,EAAA,MAAM,OAAO,MAAM,gBAAA,CAAiB,EAAE,MAAA,EAAQ,GAAA,CAAI,QAAQ,CAAA;AAE1D,EAAA,IAAI,MAAA,EAAQ;AACV,IAAA,MAAM,KAAA,GAAQ,MAAM,MAAA,CAAO,IAAA,EAAM,GAAG,CAAA;AACpC,IAAA,OAAO,EAAE,GAAG,IAAA,EAAM,GAAG,KAAA,EAAM;AAAA,EAC7B;AACA,EAAA,OAAO,IAAA;AACT;AAEA,SAAS,IAAA,CAAK,KAAsB,IAAA,EAAuC;AACzE,EAAA,MAAM,KAAA,GAAQ,KAAK,IAAA,CAAK,KAAA;AACxB,EAAA,MAAM,cAAc,IAAA,CAAK,IAAA,CAAK,OAAA,EAAS,OAAA,CAAQ,YAAY,EAAE,CAAA;AAE7D,EAAA,MAAM,IAAA,GAAuB;AAAA,IAC3B,KAAA;AAAA,IACA,WAAA;AAAA,IACA,SAAA,EAAW,KAAK,IAAA,CAAK,GAAA;AAAA,IACrB,SAAA,EAAW;AAAA,MACT,IAAA,EAAM,SAAA;AAAA,MACN,KAAA;AAAA,MACA,WAAA;AAAA,MACA,GAAA,EAAK,KAAK,IAAA,CAAK,GAAA;AAAA,MACf,aAAA,EAAe,IAAA,CAAK,IAAA,CAAK,UAAA,EAAY,cAAA;AAAA,MACrC,YAAA,EAAc,IAAA,CAAK,IAAA,CAAK,UAAA,EAAY;AAAA,KACtC;AAAA,IACA,oBAAoB,uBAAA,CAAwB,GAAA,CAAI,QAAA,EAAU,GAAA,CAAI,SAAS,QAAQ;AAAA,GACjF;AAEA,EAAA,OAAO,IAAA;AACT;AAEO,IAAM,UAAA,GAAa;AAAA,EACxB,IAAI,OAAA,CAAQ,WAAA;AAAA,EACZ,MAAA;AAAA,EACA,IAAA;AAAA,EACA,SAAA,EAAW;AACb","file":"page.js","sourcesContent":["import type { PageSingleProps } from './types';\nimport type { IdParams } from '../types';\nimport { page } from '../../api/page';\nimport { RouteId } from '../../router/route-ids';\n\nexport async function pageSingleLoader({ params }: { params: IdParams }): Promise<PageSingleProps> {\n const data = await page.findOrThrow(params.id);\n return {\n page: {\n slug: RouteId.PAGE_SINGLE,\n id: data.id,\n title: data.name,\n url: data.url,\n content: data.content,\n metadata: data.metadata,\n created_at: data.created_at,\n },\n };\n}\n","import type { HeadDescriptor } from '../../utils/head';\nimport { buildHreflangAlternates } from '../../utils/baseHead';\nimport { lazy } from 'react';\nimport { pageSingleLoader } from './loader';\nimport type { PageSingleProps } from './types';\nimport type { IdParams } from '../types';\nimport type { TwilightContext } from '../../twilight/context';\nimport { RouteId } from '../../router/route-ids';\n\n// Lazy-load component for code-splitting\nconst LazyPageSingle = lazy(() => import('./PageSingle').then((m) => ({ default: m.PageSingle })));\n\nexport const PageSingleLazy = LazyPageSingle;\nexport { pageSingleLoader } from './loader';\nexport type { PageSingleProps, StaticPage } from './types';\n\nasync function loader(\n ctx: { params: IdParams; locale?: string },\n extend?: (\n data: PageSingleProps,\n ctx: { params: IdParams }\n ) => Promise<Record<string, unknown>> | Record<string, unknown>\n): Promise<PageSingleProps> {\n const data = await pageSingleLoader({ params: ctx.params });\n\n if (extend) {\n const extra = await extend(data, ctx);\n return { ...data, ...extra } as PageSingleProps;\n }\n return data;\n}\n\nfunction head(ctx: TwilightContext, data: PageSingleProps): HeadDescriptor {\n const title = data.page.title;\n const description = data.page.content?.replace(/<[^>]+>/g, '');\n\n const base: HeadDescriptor = {\n title,\n description,\n canonical: data.page.url,\n openGraph: {\n type: 'article',\n title,\n description,\n url: data.page.url,\n publishedTime: data.page.created_at?.published_time,\n modifiedTime: data.page.created_at?.modified_time,\n },\n alternateLanguages: buildHreflangAlternates(ctx.settings, ctx.location.pathname),\n };\n\n return base;\n}\n\nexport const PageSingle = {\n id: RouteId.PAGE_SINGLE,\n loader,\n head,\n Component: LazyPageSingle,\n} as const;\n"]}
1
+ {"version":3,"sources":["../../src/routes/page/loader.ts","../../src/routes/page/index.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;AAKA,eAAsB,gBAAA,CAAiB,EAAE,MAAA,EAAO,EAAmD;AACjG,EAAA,MAAM,IAAA,GAAO,MAAM,IAAA,CAAK,WAAA,CAAY,OAAO,EAAE,CAAA;AAC7C,EAAA,OAAO;AAAA,IACL,IAAA,EAAM;AAAA,MACJ,MAAM,OAAA,CAAQ,WAAA;AAAA,MACd,IAAI,IAAA,CAAK,EAAA;AAAA,MACT,OAAO,IAAA,CAAK,IAAA;AAAA,MACZ,KAAK,IAAA,CAAK,GAAA;AAAA,MACV,SAAS,IAAA,CAAK,OAAA;AAAA,MACd,UAAU,IAAA,CAAK,QAAA;AAAA,MACf,YAAY,IAAA,CAAK;AAAA;AACnB,GACF;AACF;;;ACRA,IAAM,cAAA,GAAiB,IAAA,CAAK,MAAM,OAAO,2BAAc,CAAA,CAAE,IAAA,CAAK,CAAC,CAAA,MAAO,EAAE,OAAA,EAAS,CAAA,CAAE,UAAA,GAAa,CAAC,CAAA;AAE1F,IAAM,cAAA,GAAiB;AAI9B,eAAe,MAAA,CACb,KACA,MAAA,EAI0B;AAC1B,EAAA,MAAM,OAAO,MAAM,gBAAA,CAAiB,EAAE,MAAA,EAAQ,GAAA,CAAI,QAAQ,CAAA;AAE1D,EAAA,IAAI,MAAA,EAAQ;AACV,IAAA,MAAM,KAAA,GAAQ,MAAM,MAAA,CAAO,IAAA,EAAM,GAAG,CAAA;AACpC,IAAA,OAAO,EAAE,GAAG,IAAA,EAAM,GAAG,KAAA,EAAM;AAAA,EAC7B;AACA,EAAA,OAAO,IAAA;AACT;AAEA,SAAS,IAAA,CAAK,KAAsB,IAAA,EAAuC;AACzE,EAAA,MAAM,KAAA,GAAQ,KAAK,IAAA,CAAK,KAAA;AACxB,EAAA,MAAM,cAAc,IAAA,CAAK,IAAA,CAAK,OAAA,EAAS,OAAA,CAAQ,YAAY,EAAE,CAAA;AAE7D,EAAA,MAAM,IAAA,GAAuB;AAAA,IAC3B,KAAA;AAAA,IACA,WAAA;AAAA,IACA,SAAA,EAAW,KAAK,IAAA,CAAK,GAAA;AAAA,IACrB,SAAA,EAAW;AAAA,MACT,IAAA,EAAM,SAAA;AAAA,MACN,KAAA;AAAA,MACA,WAAA;AAAA,MACA,GAAA,EAAK,KAAK,IAAA,CAAK,GAAA;AAAA,MACf,aAAA,EAAe,IAAA,CAAK,IAAA,CAAK,UAAA,EAAY,cAAA;AAAA,MACrC,YAAA,EAAc,IAAA,CAAK,IAAA,CAAK,UAAA,EAAY;AAAA,KACtC;AAAA,IACA,oBAAoB,uBAAA,CAAwB,GAAA,CAAI,QAAA,EAAU,GAAA,CAAI,SAAS,QAAQ;AAAA,GACjF;AAEA,EAAA,OAAO,IAAA;AACT;AAEO,IAAM,UAAA,GAAa;AAAA,EACxB,IAAI,OAAA,CAAQ,WAAA;AAAA,EACZ,MAAA;AAAA,EACA,IAAA;AAAA,EACA,SAAA,EAAW;AACb","file":"page.js","sourcesContent":["import type { PageSingleProps } from './types';\nimport type { IdParams } from '../types';\nimport { page } from '../../api/page';\nimport { RouteId } from '../../router/route-ids';\n\nexport async function pageSingleLoader({ params }: { params: IdParams }): Promise<PageSingleProps> {\n const data = await page.findOrThrow(params.id);\n return {\n page: {\n slug: RouteId.PAGE_SINGLE,\n id: data.id,\n title: data.name,\n url: data.url,\n content: data.content,\n metadata: data.metadata,\n created_at: data.created_at,\n },\n };\n}\n","import type { HeadDescriptor } from '../../utils/head';\nimport { buildHreflangAlternates } from '../../utils/baseHead';\nimport { lazy } from 'react';\nimport { pageSingleLoader } from './loader';\nimport type { PageSingleProps } from './types';\nimport type { IdParams } from '../types';\nimport type { TwilightContext } from '../../twilight/context';\nimport { RouteId } from '../../router/route-ids';\n\n// Lazy-load component for code-splitting\nconst LazyPageSingle = lazy(() => import('./PageSingle').then((m) => ({ default: m.PageSingle })));\n\nexport const PageSingleLazy = LazyPageSingle;\nexport { pageSingleLoader } from './loader';\nexport type { PageSingleProps, StaticPage } from './types';\n\nasync function loader(\n ctx: { params: IdParams; locale?: string },\n extend?: (\n data: PageSingleProps,\n ctx: { params: IdParams }\n ) => Promise<Record<string, unknown>> | Record<string, unknown>\n): Promise<PageSingleProps> {\n const data = await pageSingleLoader({ params: ctx.params });\n\n if (extend) {\n const extra = await extend(data, ctx);\n return { ...data, ...extra } as PageSingleProps;\n }\n return data;\n}\n\nfunction head(ctx: TwilightContext, data: PageSingleProps): HeadDescriptor {\n const title = data.page.title;\n const description = data.page.content?.replace(/<[^>]+>/g, '');\n\n const base: HeadDescriptor = {\n title,\n description,\n canonical: data.page.url,\n openGraph: {\n type: 'article',\n title,\n description,\n url: data.page.url,\n publishedTime: data.page.created_at?.published_time,\n modifiedTime: data.page.created_at?.modified_time,\n },\n alternateLanguages: buildHreflangAlternates(ctx.settings, ctx.location.pathname),\n };\n\n return base;\n}\n\nexport const PageSingle = {\n id: RouteId.PAGE_SINGLE,\n loader,\n head,\n Component: LazyPageSingle,\n} as const;\n"]}
@@ -16,6 +16,33 @@ export declare const ProductListing: {
16
16
  readonly Component: typeof ProductListingPage;
17
17
  readonly Pending: typeof ProductListingPending;
18
18
  };
19
+ /** The URL params a sortable listing route forwards to its loader. */
20
+ export interface ListingSearch {
21
+ page?: number;
22
+ sort?: string;
23
+ }
24
+ /** {@link ListingSearch} plus the search route's query. */
25
+ export interface SearchListingSearch extends ListingSearch {
26
+ q: string;
27
+ }
28
+ /**
29
+ * `validateSearch` + `loaderDeps` of the generated listing routes. A theme that takes over one
30
+ * spreads them into its `createFileRoute` options and passes `search: deps` to the loader, so
31
+ * `?page=` and `?sort=` keep reaching it.
32
+ */
33
+ export declare const listingSearch: {
34
+ validateSearch: (search: Record<string, unknown>) => ListingSearch;
35
+ loaderDeps: ({ search }: {
36
+ search: ListingSearch;
37
+ }) => ListingSearch;
38
+ };
39
+ /** {@link listingSearch} for the search route, which also keeps `?q=`. */
40
+ export declare const searchListingSearch: {
41
+ validateSearch: (search: Record<string, unknown>) => SearchListingSearch;
42
+ loaderDeps: ({ search }: {
43
+ search: SearchListingSearch;
44
+ }) => SearchListingSearch;
45
+ };
19
46
  export { ProductListPage };
20
47
  export { productListLoader };
21
48
  export { useAppliedFilters, parseFiltersFromSearch } from './useAppliedFilters';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/routes/product-listing/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,KAAK,EAAE,qBAAqB,EAA4B,MAAM,SAAS,CAAC;AAC/E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAG9D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAIpD,wBAAgB,IAAI,CAAC,GAAG,EAAE,eAAe,EAAE,IAAI,EAAE,qBAAqB,GAAG,cAAc,CA+CtF;AAED,MAAM,WAAW,wBAAwB;IACvC,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,iBAAS,kBAAkB,CAAC,KAAK,EAAE,qBAAqB,+BAIvD;AAED,iBAAS,qBAAqB,CAAC,EAAE,WAAW,EAAE,EAAE,wBAAwB,+BAGvE;AAED,eAAO,MAAM,cAAc;;;;;;CAMjB,CAAC;AAEX,OAAO,EAAE,eAAe,EAAE,CAAC;AAC3B,OAAO,EAAE,iBAAiB,EAAE,CAAC;AAC7B,OAAO,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAChF,YAAY,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAEhE,YAAY,EACV,qBAAqB,EACrB,uBAAuB,EACvB,wBAAwB,EACxB,iBAAiB,EACjB,cAAc,EACd,iBAAiB,EACjB,mBAAmB,EACnB,uBAAuB,EACvB,gBAAgB,EAChB,iBAAiB,GAClB,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/routes/product-listing/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,KAAK,EAAE,qBAAqB,EAA4B,MAAM,SAAS,CAAC;AAC/E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAG9D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAIpD,wBAAgB,IAAI,CAAC,GAAG,EAAE,eAAe,EAAE,IAAI,EAAE,qBAAqB,GAAG,cAAc,CA+CtF;AAED,MAAM,WAAW,wBAAwB;IACvC,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,iBAAS,kBAAkB,CAAC,KAAK,EAAE,qBAAqB,+BAIvD;AAED,iBAAS,qBAAqB,CAAC,EAAE,WAAW,EAAE,EAAE,wBAAwB,+BAGvE;AAED,eAAO,MAAM,cAAc;;;;;;CAMjB,CAAC;AAEX,sEAAsE;AACtE,MAAM,WAAW,aAAa;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,2DAA2D;AAC3D,MAAM,WAAW,mBAAoB,SAAQ,aAAa;IACxD,CAAC,EAAE,MAAM,CAAC;CACX;AAED;;;;GAIG;AACH,eAAO,MAAM,aAAa;6BACC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAG,aAAa;6BAKvC;QAAE,MAAM,EAAE,aAAa,CAAA;KAAE,KAAG,aAAa;CAInE,CAAC;AAEF,0EAA0E;AAC1E,eAAO,MAAM,mBAAmB;6BACL,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAG,mBAAmB;6BAK7C;QAAE,MAAM,EAAE,mBAAmB,CAAA;KAAE,KAAG,mBAAmB;CAK/E,CAAC;AAEF,OAAO,EAAE,eAAe,EAAE,CAAC;AAC3B,OAAO,EAAE,iBAAiB,EAAE,CAAC;AAC7B,OAAO,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAChF,YAAY,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAEhE,YAAY,EACV,qBAAqB,EACrB,uBAAuB,EACvB,wBAAwB,EACxB,iBAAiB,EACjB,cAAc,EACd,iBAAiB,EACjB,mBAAmB,EACnB,uBAAuB,EACvB,gBAAgB,EAChB,iBAAiB,GAClB,MAAM,SAAS,CAAC"}
@@ -1,47 +1,48 @@
1
1
  import { SORT_IDS, availableSortIds, sortOptions } from '../chunk-3LZJXKVO.js';
2
- import { category } from '../chunk-43D2CG4F.js';
3
- import { brand } from '../chunk-LPQ5FUMJ.js';
4
- import { useReorderButtons, LazyTestimonials } from '../chunk-TJF6YZ5I.js';
5
- import '../chunk-FZYR4BA2.js';
6
- import { product, parseNextPageToken } from '../chunk-CEYT3JER.js';
2
+ import { category } from '../chunk-IBSQO6LW.js';
3
+ import { brand } from '../chunk-5SDCUGYR.js';
4
+ import { useReorderButtons, LazyTestimonials } from '../chunk-JKBLG344.js';
5
+ import '../chunk-7WTUA4WY.js';
6
+ import { product, parseNextPageToken } from '../chunk-56T47K7P.js';
7
7
  import { Drawer } from '../chunk-6TKIUG5C.js';
8
- import { ProductCard } from '../chunk-LA7KZ2XY.js';
8
+ import { ProductCard } from '../chunk-2D5TFSVG.js';
9
9
  import { registry, COMPONENT_KEYS } from '../chunk-Y32RHCOH.js';
10
- import { useStore } from '../chunk-RPDMNNRW.js';
11
- import '../chunk-WHJZP3QJ.js';
12
- import '../chunk-YDFOJBEY.js';
13
- import '../chunk-SFZ7IIWL.js';
14
- import '../chunk-2JV6WZ6O.js';
10
+ import { useStore } from '../chunk-JVIPOD6M.js';
11
+ import '../chunk-ULMSO2XZ.js';
12
+ import '../chunk-3GW3VFR6.js';
13
+ import '../chunk-ZEGNYJOR.js';
15
14
  import '../chunk-RV54D2D7.js';
16
- import '../chunk-ZVZGLEZ6.js';
15
+ import '../chunk-COJH52VR.js';
16
+ import '../chunk-N45X7D55.js';
17
+ import '../chunk-IU4KTCS3.js';
17
18
  import '../chunk-VVZNW5CB.js';
18
- import '../chunk-5G7NYNX6.js';
19
+ import '../chunk-W2LNKEBF.js';
19
20
  import '../chunk-GD26FI4J.js';
20
21
  import { buildHreflangAlternates, storePageUrl } from '../chunk-4SZZPXM2.js';
21
- import { unauthorized, notFound, orThrow, useNavigate, useLocation } from '../chunk-JTOVO3ZU.js';
22
+ import { unauthorized, notFound, orThrow, useNavigate, useLocation } from '../chunk-RWBTMHLR.js';
22
23
  import { RouteId } from '../chunk-OUW6WESU.js';
23
- import '../chunk-SAGXF3MU.js';
24
+ import '../chunk-QZEQOVA5.js';
24
25
  import '../chunk-HI5V5X3S.js';
25
- import '../chunk-66K5P5ZX.js';
26
- import '../chunk-ENJ3CM5M.js';
26
+ import '../chunk-CNUBL24W.js';
27
+ import '../chunk-J5X4LXNM.js';
27
28
  import '../chunk-MVT5AF2A.js';
28
29
  import '../chunk-Z653O7MX.js';
29
30
  import '../chunk-ZCH7W7DZ.js';
30
- import '../chunk-46NBPXAI.js';
31
+ import '../chunk-XT6CLGF5.js';
31
32
  import '../chunk-JWXJPJBO.js';
32
33
  import '../chunk-CW625T2E.js';
33
34
  import '../chunk-7V36I5GT.js';
34
35
  import '../chunk-6WI7R2BD.js';
35
- import '../chunk-4WAUITU2.js';
36
+ import '../chunk-KNIGLCRV.js';
36
37
  import '../chunk-OAMIDZKW.js';
37
- import '../chunk-DBW7XXNE.js';
38
+ import '../chunk-BPL5H33B.js';
38
39
  import '../chunk-V2ZDTY6H.js';
39
- import '../chunk-IVBOLREE.js';
40
+ import '../chunk-VWVCSD3N.js';
40
41
  import { HookSlot } from '../chunk-5XDPAKF5.js';
41
42
  import '../chunk-GCPEMNSU.js';
42
- import { getAuthToken } from '../chunk-QGOPTVV5.js';
43
+ import { getAuthToken } from '../chunk-6EQ7G3SZ.js';
43
44
  import { useTranslation } from '../chunk-TYNZ5B2B.js';
44
- import { LazyBreadcrumb, Image, LazyNoContent, ProductCardSkeleton, LazyRenderWhenVisible } from '../chunk-OMKLPCBA.js';
45
+ import { LazyBreadcrumb, Image, LazyNoContent, ProductCardSkeleton, LazyRenderWhenVisible } from '../chunk-KQW6I5CD.js';
45
46
  import '../chunk-AXW67SY7.js';
46
47
  import '../chunk-BYMOPN2S.js';
47
48
  import '../chunk-SKLEJJ6M.js';
@@ -49,9 +50,10 @@ import '../chunk-6BZ5TKEV.js';
49
50
  import '../chunk-FZKRSGLP.js';
50
51
  import '../chunk-7V5HOZW4.js';
51
52
  import '../chunk-YA6ABQB7.js';
52
- import '../chunk-3PXONLUK.js';
53
- import '../chunk-JJARU7YP.js';
54
- import { onSallaEvent } from '../chunk-HSWRYXC7.js';
53
+ import '../chunk-BH7YNCYB.js';
54
+ import '../chunk-EWLVLDRP.js';
55
+ import { onSallaEvent } from '../chunk-2FKZAAV7.js';
56
+ import '../chunk-FO4WVGUQ.js';
55
57
  import { getTwilightContext } from '../chunk-N2S25NXP.js';
56
58
  import '../chunk-T72DAX7R.js';
57
59
  import { useTwilight } from '../chunk-DF6FBKDN.js';
@@ -665,7 +667,30 @@ var ProductListing = {
665
667
  Component: ProductListingPage,
666
668
  Pending: ProductListingPending
667
669
  };
670
+ var listingSearch = {
671
+ validateSearch: (search) => {
672
+ const page = Number(search.page) || 1;
673
+ const sort = search.sort ? String(search.sort) : void 0;
674
+ return { ...page > 1 ? { page } : {}, ...sort ? { sort } : {} };
675
+ },
676
+ loaderDeps: ({ search }) => ({
677
+ page: search.page,
678
+ sort: search.sort
679
+ })
680
+ };
681
+ var searchListingSearch = {
682
+ validateSearch: (search) => ({
683
+ // TanStack parses `?q=123` as a number.
684
+ q: search.q == null ? "" : String(search.q),
685
+ ...listingSearch.validateSearch(search)
686
+ }),
687
+ loaderDeps: ({ search }) => ({
688
+ q: search.q,
689
+ page: search.page,
690
+ sort: search.sort
691
+ })
692
+ };
668
693
 
669
- export { ProductListPage, ProductListing, head, parseFiltersFromSearch, productListLoader, useAppliedFilters };
694
+ export { ProductListPage, ProductListing, head, listingSearch, parseFiltersFromSearch, productListLoader, searchListingSearch, useAppliedFilters };
670
695
  //# sourceMappingURL=product-listing.js.map
671
696
  //# sourceMappingURL=product-listing.js.map