@salla.sa/twilight-theme-engine 1.0.135 → 1.0.137

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 (357) hide show
  1. package/dist/{AddToCartForm-ODVZPTKN.js → AddToCartForm-NKY5PPUO.js} +4 -3
  2. package/dist/AddToCartForm-NKY5PPUO.js.map +1 -0
  3. package/dist/{BlogAuthorPage-BU23SINI.js → BlogAuthorPage-BEFTTLZP.js} +19 -18
  4. package/dist/BlogAuthorPage-BEFTTLZP.js.map +1 -0
  5. package/dist/{BlogCategoryPage-ZVITUHP4.js → BlogCategoryPage-ZHI4BOOC.js} +19 -18
  6. package/dist/BlogCategoryPage-ZHI4BOOC.js.map +1 -0
  7. package/dist/{BlogPage-IN3V7FYK.js → BlogPage-YYZFF5TI.js} +17 -16
  8. package/dist/BlogPage-YYZFF5TI.js.map +1 -0
  9. package/dist/{BlogSinglePage-UJG7YPYZ.js → BlogSinglePage-B7LWBOTP.js} +17 -16
  10. package/dist/BlogSinglePage-B7LWBOTP.js.map +1 -0
  11. package/dist/{BlogTagPage-XDETNKGR.js → BlogTagPage-MRHYZNWV.js} +19 -18
  12. package/dist/BlogTagPage-MRHYZNWV.js.map +1 -0
  13. package/dist/{BrandsPage-CBU7JFSX.js → BrandsPage-EBQRAGCH.js} +18 -17
  14. package/dist/BrandsPage-EBQRAGCH.js.map +1 -0
  15. package/dist/{Breadcrumb-EA2XETAM.js → Breadcrumb-LXOPBBN4.js} +17 -16
  16. package/dist/Breadcrumb-LXOPBBN4.js.map +1 -0
  17. package/dist/{CartItem-2TW36QTW.js → CartItem-7MMLNUN4.js} +17 -16
  18. package/dist/CartItem-7MMLNUN4.js.map +1 -0
  19. package/dist/{CartSummary-TW2CAX57.js → CartSummary-G547ABBP.js} +17 -16
  20. package/dist/CartSummary-G547ABBP.js.map +1 -0
  21. package/dist/{Copyright-57XPE75X.js → Copyright-73W4NHW7.js} +4 -3
  22. package/dist/Copyright-73W4NHW7.js.map +1 -0
  23. package/dist/{CustomerLayout-A2M7IY34.js → CustomerLayout-JTKY24VZ.js} +17 -16
  24. package/dist/CustomerLayout-JTKY24VZ.js.map +1 -0
  25. package/dist/{Footer-L5BIYCZ2.js → Footer-E2KUIBSW.js} +6 -5
  26. package/dist/{Footer-L5BIYCZ2.js.map → Footer-E2KUIBSW.js.map} +1 -1
  27. package/dist/{Header-NLBDW4MR.js → Header-FVSR2NSQ.js} +9 -8
  28. package/dist/{Header-NLBDW4MR.js.map → Header-FVSR2NSQ.js.map} +1 -1
  29. package/dist/{LoyaltyPage-BVTDPSP3.js → LoyaltyPage-MTUCGVJ5.js} +17 -16
  30. package/dist/LoyaltyPage-MTUCGVJ5.js.map +1 -0
  31. package/dist/{LoyaltyPointsPage-HZYPCO7C.js → LoyaltyPointsPage-CF2X3ZHW.js} +7 -6
  32. package/dist/LoyaltyPointsPage-CF2X3ZHW.js.map +1 -0
  33. package/dist/{MainMenu-3HP3YJDH.js → MainMenu-IDJXM45R.js} +6 -5
  34. package/dist/MainMenu-IDJXM45R.js.map +1 -0
  35. package/dist/{MasterLayout-KD3GLYYX.js → MasterLayout-44QYYOSX.js} +17 -16
  36. package/dist/{MasterLayout-KD3GLYYX.js.map → MasterLayout-44QYYOSX.js.map} +1 -1
  37. package/dist/{MobileMenu-3UEQTURY.js → MobileMenu-TLDDRK6H.js} +18 -17
  38. package/dist/MobileMenu-TLDDRK6H.js.map +1 -0
  39. package/dist/{NotificationsPage-C6LNYZTB.js → NotificationsPage-6MJCAI6D.js} +17 -16
  40. package/dist/NotificationsPage-6MJCAI6D.js.map +1 -0
  41. package/dist/{OrderSinglePage-LXKINOXP.js → OrderSinglePage-ZRKP4PJX.js} +18 -17
  42. package/dist/OrderSinglePage-ZRKP4PJX.js.map +1 -0
  43. package/dist/{OrdersPage-VBF3P3JH.js → OrdersPage-U3GHFHDO.js} +17 -16
  44. package/dist/OrdersPage-U3GHFHDO.js.map +1 -0
  45. package/dist/{PageSingle-E7DTNIY7.js → PageSingle-TOJXQ5LW.js} +4 -3
  46. package/dist/PageSingle-TOJXQ5LW.js.map +1 -0
  47. package/dist/{ProductDetails-ZQLQWU7S.js → ProductDetails-WX5LQXLW.js} +5 -4
  48. package/dist/ProductDetails-WX5LQXLW.js.map +1 -0
  49. package/dist/{ProfilePage-7LAIDEHS.js → ProfilePage-EVVDBLYL.js} +17 -16
  50. package/dist/ProfilePage-EVVDBLYL.js.map +1 -0
  51. package/dist/{ReviewsPage-FA3V745S.js → ReviewsPage-B2K3VNYU.js} +4 -3
  52. package/dist/ReviewsPage-B2K3VNYU.js.map +1 -0
  53. package/dist/{SeoCartWidget-4456ASOT.js → SeoCartWidget-R5ZCOT4Q.js} +17 -16
  54. package/dist/SeoCartWidget-R5ZCOT4Q.js.map +1 -0
  55. package/dist/{SettingsPage-IVOHCXVY.js → SettingsPage-WGBMWUTX.js} +17 -16
  56. package/dist/SettingsPage-WGBMWUTX.js.map +1 -0
  57. package/dist/{StoreClosedNotification-DIF6SKBX.js → StoreClosedNotification-2ZEUFOMA.js} +18 -17
  58. package/dist/{StoreClosedNotification-DIF6SKBX.js.map → StoreClosedNotification-2ZEUFOMA.js.map} +1 -1
  59. package/dist/{TestimonialsPage-JY7MF5NW.js → TestimonialsPage-UVUX2PE3.js} +4 -3
  60. package/dist/TestimonialsPage-UVUX2PE3.js.map +1 -0
  61. package/dist/{ThankYouPage-KNHHBFPZ.js → ThankYouPage-EIQ57UHN.js} +17 -16
  62. package/dist/ThankYouPage-EIQ57UHN.js.map +1 -0
  63. package/dist/{WalletPage-HH72DHOC.js → WalletPage-HQAM2ZXP.js} +18 -17
  64. package/dist/WalletPage-HQAM2ZXP.js.map +1 -0
  65. package/dist/{WishlistPage-5BR63SMU.js → WishlistPage-2IOAOQGS.js} +19 -18
  66. package/dist/WishlistPage-2IOAOQGS.js.map +1 -0
  67. package/dist/api/advertisement.js +2 -2
  68. package/dist/api/apps.js +2 -2
  69. package/dist/api/blog.js +3 -3
  70. package/dist/api/brands.js +3 -3
  71. package/dist/api/cart.js +3 -3
  72. package/dist/api/category.js +3 -3
  73. package/dist/api/client.js +1 -1
  74. package/dist/api/home.js +2 -2
  75. package/dist/api/loyalty.js +3 -3
  76. package/dist/api/menu.js +2 -2
  77. package/dist/api/notification.js +2 -2
  78. package/dist/api/order.js +3 -3
  79. package/dist/api/page.js +3 -3
  80. package/dist/api/product.js +3 -3
  81. package/dist/api/profile.js +1 -1
  82. package/dist/api/store.js +2 -2
  83. package/dist/api/translations.js +2 -2
  84. package/dist/api/user.js +2 -2
  85. package/dist/api/wallet.js +2 -2
  86. package/dist/api/wishlist.js +4 -4
  87. package/dist/{chunk-P3D67RVR.js → chunk-2WEGBUAG.js} +12 -10
  88. package/dist/chunk-2WEGBUAG.js.map +1 -0
  89. package/dist/{chunk-D53M5ASN.js → chunk-3PHBJ3TA.js} +3 -3
  90. package/dist/{chunk-D53M5ASN.js.map → chunk-3PHBJ3TA.js.map} +1 -1
  91. package/dist/{chunk-UHGDQIIF.js → chunk-5MIP3DUG.js} +4 -4
  92. package/dist/{chunk-UHGDQIIF.js.map → chunk-5MIP3DUG.js.map} +1 -1
  93. package/dist/{chunk-WVSGVFMM.js → chunk-5Y4NL57B.js} +3 -3
  94. package/dist/{chunk-WVSGVFMM.js.map → chunk-5Y4NL57B.js.map} +1 -1
  95. package/dist/{chunk-P6TJCCM3.js → chunk-67J4DMB3.js} +4 -4
  96. package/dist/{chunk-P6TJCCM3.js.map → chunk-67J4DMB3.js.map} +1 -1
  97. package/dist/{chunk-SGB7HCXF.js → chunk-7GBVI6SK.js} +4 -4
  98. package/dist/{chunk-SGB7HCXF.js.map → chunk-7GBVI6SK.js.map} +1 -1
  99. package/dist/{chunk-ZRJXN766.js → chunk-7IQX4GHT.js} +4 -4
  100. package/dist/{chunk-ZRJXN766.js.map → chunk-7IQX4GHT.js.map} +1 -1
  101. package/dist/{chunk-A5AU64GV.js → chunk-7VYVQMYE.js} +4 -4
  102. package/dist/{chunk-A5AU64GV.js.map → chunk-7VYVQMYE.js.map} +1 -1
  103. package/dist/{chunk-5A37NING.js → chunk-BPCSMALD.js} +3 -3
  104. package/dist/{chunk-5A37NING.js.map → chunk-BPCSMALD.js.map} +1 -1
  105. package/dist/{chunk-LUPDYN4T.js → chunk-BYP72WXK.js} +4 -4
  106. package/dist/{chunk-LUPDYN4T.js.map → chunk-BYP72WXK.js.map} +1 -1
  107. package/dist/{chunk-YKNDXZAD.js → chunk-COSCD4AH.js} +36 -29
  108. package/dist/chunk-COSCD4AH.js.map +1 -0
  109. package/dist/{chunk-WEKO2DAN.js → chunk-CYDQFZRF.js} +3 -3
  110. package/dist/{chunk-WEKO2DAN.js.map → chunk-CYDQFZRF.js.map} +1 -1
  111. package/dist/{chunk-25UDBM27.js → chunk-DKYNZHZN.js} +3 -3
  112. package/dist/{chunk-25UDBM27.js.map → chunk-DKYNZHZN.js.map} +1 -1
  113. package/dist/{chunk-KWJUCI7M.js → chunk-E74WBS5R.js} +3 -3
  114. package/dist/{chunk-KWJUCI7M.js.map → chunk-E74WBS5R.js.map} +1 -1
  115. package/dist/{chunk-XHWBJYJL.js → chunk-GHM37DUT.js} +3 -3
  116. package/dist/{chunk-XHWBJYJL.js.map → chunk-GHM37DUT.js.map} +1 -1
  117. package/dist/{chunk-WHFKJ3AS.js → chunk-GKM24XYF.js} +4 -4
  118. package/dist/{chunk-WHFKJ3AS.js.map → chunk-GKM24XYF.js.map} +1 -1
  119. package/dist/{chunk-4CM6JIQF.js → chunk-HFWQRV3W.js} +4 -4
  120. package/dist/{chunk-4CM6JIQF.js.map → chunk-HFWQRV3W.js.map} +1 -1
  121. package/dist/{chunk-VZPEPWDF.js → chunk-HJGBOABY.js} +11 -9
  122. package/dist/chunk-HJGBOABY.js.map +1 -0
  123. package/dist/{chunk-X5QZBD5V.js → chunk-IC6Z6BB2.js} +13 -9
  124. package/dist/chunk-IC6Z6BB2.js.map +1 -0
  125. package/dist/{chunk-VNDUKDZG.js → chunk-JK7WLO72.js} +9 -8
  126. package/dist/chunk-JK7WLO72.js.map +1 -0
  127. package/dist/{chunk-5AOW2SQW.js → chunk-K356POFX.js} +3 -3
  128. package/dist/{chunk-5AOW2SQW.js.map → chunk-K356POFX.js.map} +1 -1
  129. package/dist/{chunk-E5DP3MHE.js → chunk-K7BDIB3L.js} +3 -3
  130. package/dist/{chunk-E5DP3MHE.js.map → chunk-K7BDIB3L.js.map} +1 -1
  131. package/dist/chunk-KYMWEUN2.js +10 -0
  132. package/dist/chunk-KYMWEUN2.js.map +1 -0
  133. package/dist/{chunk-YBIL64R7.js → chunk-L22FKPMY.js} +3 -3
  134. package/dist/{chunk-YBIL64R7.js.map → chunk-L22FKPMY.js.map} +1 -1
  135. package/dist/{chunk-6VYW7CVL.js → chunk-LQBDOXLO.js} +4 -4
  136. package/dist/{chunk-6VYW7CVL.js.map → chunk-LQBDOXLO.js.map} +1 -1
  137. package/dist/{chunk-4SCGS2CM.js → chunk-MT7DVK2V.js} +3 -3
  138. package/dist/{chunk-4SCGS2CM.js.map → chunk-MT7DVK2V.js.map} +1 -1
  139. package/dist/{chunk-SXI2XBCC.js → chunk-N6ZE6HUX.js} +199 -3
  140. package/dist/chunk-N6ZE6HUX.js.map +1 -0
  141. package/dist/{chunk-TTLRRVM2.js → chunk-NPN23RYM.js} +5 -5
  142. package/dist/{chunk-TTLRRVM2.js.map → chunk-NPN23RYM.js.map} +1 -1
  143. package/dist/{chunk-OJKTKMWS.js → chunk-NZX2ZEF7.js} +4 -4
  144. package/dist/{chunk-OJKTKMWS.js.map → chunk-NZX2ZEF7.js.map} +1 -1
  145. package/dist/chunk-O47T67E3.js +16 -0
  146. package/dist/chunk-O47T67E3.js.map +1 -0
  147. package/dist/{chunk-HDSY5DWF.js → chunk-OXUIG3H3.js} +3 -3
  148. package/dist/{chunk-HDSY5DWF.js.map → chunk-OXUIG3H3.js.map} +1 -1
  149. package/dist/chunk-OYD6FP42.js +25 -0
  150. package/dist/chunk-OYD6FP42.js.map +1 -0
  151. package/dist/{chunk-RLJLG4EN.js → chunk-PEENIBSF.js} +3 -3
  152. package/dist/{chunk-RLJLG4EN.js.map → chunk-PEENIBSF.js.map} +1 -1
  153. package/dist/{chunk-MWG734P7.js → chunk-PYDHLM3Y.js} +11 -9
  154. package/dist/chunk-PYDHLM3Y.js.map +1 -0
  155. package/dist/{chunk-HIOYW3CS.js → chunk-QG2ORHKD.js} +3 -3
  156. package/dist/{chunk-HIOYW3CS.js.map → chunk-QG2ORHKD.js.map} +1 -1
  157. package/dist/{chunk-4NZKBANW.js → chunk-QU5J4QXM.js} +3 -3
  158. package/dist/{chunk-4NZKBANW.js.map → chunk-QU5J4QXM.js.map} +1 -1
  159. package/dist/{chunk-RBXGVURD.js → chunk-SLAP5YVD.js} +4 -4
  160. package/dist/{chunk-RBXGVURD.js.map → chunk-SLAP5YVD.js.map} +1 -1
  161. package/dist/{chunk-IOLNWPRO.js → chunk-T2WCFT6J.js} +4 -4
  162. package/dist/{chunk-IOLNWPRO.js.map → chunk-T2WCFT6J.js.map} +1 -1
  163. package/dist/{chunk-YJWJPS25.js → chunk-V7RDFLP6.js} +59 -13
  164. package/dist/chunk-V7RDFLP6.js.map +1 -0
  165. package/dist/{chunk-AXWX5SJC.js → chunk-VT4HELNA.js} +3 -3
  166. package/dist/{chunk-AXWX5SJC.js.map → chunk-VT4HELNA.js.map} +1 -1
  167. package/dist/chunk-VYGA5AT5.js +27 -0
  168. package/dist/chunk-VYGA5AT5.js.map +1 -0
  169. package/dist/{chunk-7U5OLKOS.js → chunk-W6BDJU4X.js} +3 -3
  170. package/dist/{chunk-7U5OLKOS.js.map → chunk-W6BDJU4X.js.map} +1 -1
  171. package/dist/components/cart/index.js +2 -1
  172. package/dist/components/cart/lazy.d.ts +3 -3
  173. package/dist/components/cart/lazy.d.ts.map +1 -1
  174. package/dist/components/common/index.js +2 -1
  175. package/dist/components/common/lazy.d.ts +5 -5
  176. package/dist/components/common/lazy.d.ts.map +1 -1
  177. package/dist/components/drawer/index.js +15 -14
  178. package/dist/components/home/index.js +19 -18
  179. package/dist/components/home/lazy.d.ts +1 -1
  180. package/dist/components/home/lazy.d.ts.map +1 -1
  181. package/dist/components/layout/MasterLayout.d.ts.map +1 -1
  182. package/dist/components/layout/index.js +5 -4
  183. package/dist/components/layout/lazy.d.ts +6 -6
  184. package/dist/components/layout/lazy.d.ts.map +1 -1
  185. package/dist/components/live-editor/index.d.ts.map +1 -1
  186. package/dist/components/modal/index.js +2 -1
  187. package/dist/components/modal/lazy.d.ts +1 -1
  188. package/dist/components/modal/lazy.d.ts.map +1 -1
  189. package/dist/components/navigation/lazy.d.ts +2 -2
  190. package/dist/components/navigation/lazy.d.ts.map +1 -1
  191. package/dist/components/product/index.js +16 -15
  192. package/dist/components/product/lazy.d.ts +2 -2
  193. package/dist/components/product/lazy.d.ts.map +1 -1
  194. package/dist/components/snippets/AppsSnippets.d.ts.map +1 -1
  195. package/dist/components/store/index.js +16 -15
  196. package/dist/components/store/lazy.d.ts +2 -2
  197. package/dist/components/store/lazy.d.ts.map +1 -1
  198. package/dist/components/tracking/index.js +4 -3
  199. package/dist/components/tracking/index.js.map +1 -1
  200. package/dist/components/tracking/lazy.d.ts +2 -2
  201. package/dist/components/tracking/lazy.d.ts.map +1 -1
  202. package/dist/dev/editor/index.js +1 -1
  203. package/dist/dev/index.js +1 -1
  204. package/dist/{document-class-3GOSUA4H.js → document-class-TCFZKDMC.js} +13 -12
  205. package/dist/{document-class-3GOSUA4H.js.map → document-class-TCFZKDMC.js.map} +1 -1
  206. package/dist/hooks/index.js +15 -14
  207. package/dist/hooks/registerDefaultHooks.d.ts.map +1 -1
  208. package/dist/hooks/useGtm.js +15 -14
  209. package/dist/hooks/useMoney.js +15 -14
  210. package/dist/hooks/useStore.js +15 -14
  211. package/dist/hooks/useUser.js +3 -3
  212. package/dist/index.js +15 -14
  213. package/dist/index.js.map +1 -1
  214. package/dist/{navigation-ZV4TGIAA.js → navigation-7F6D5AI5.js} +5 -5
  215. package/dist/{navigation-ZV4TGIAA.js.map → navigation-7F6D5AI5.js.map} +1 -1
  216. package/dist/{navigation-SN2ZTS4V.js → navigation-OID45FWX.js} +4 -4
  217. package/dist/{navigation-SN2ZTS4V.js.map → navigation-OID45FWX.js.map} +1 -1
  218. package/dist/{not-found-J3UJVHNJ.js → not-found-377JUHOW.js} +18 -17
  219. package/dist/not-found-377JUHOW.js.map +1 -0
  220. package/dist/providers/DocumentSyncRegistry.d.ts +3 -3
  221. package/dist/providers/DocumentSyncRegistry.d.ts.map +1 -1
  222. package/dist/providers/index.js +15 -14
  223. package/dist/providers/navigation-setups.d.ts +3 -3
  224. package/dist/providers/navigation-setups.d.ts.map +1 -1
  225. package/dist/routes/account/notifications/index.d.ts +2 -2
  226. package/dist/routes/account/notifications/index.d.ts.map +1 -1
  227. package/dist/routes/account/orders/index.d.ts +4 -4
  228. package/dist/routes/account/orders/index.d.ts.map +1 -1
  229. package/dist/routes/account/orders.js +5 -4
  230. package/dist/routes/account/profile/index.d.ts +2 -2
  231. package/dist/routes/account/profile/index.d.ts.map +1 -1
  232. package/dist/routes/account/settings/index.d.ts +2 -2
  233. package/dist/routes/account/settings/index.d.ts.map +1 -1
  234. package/dist/routes/account/wallet/index.d.ts +2 -2
  235. package/dist/routes/account/wallet/index.d.ts.map +1 -1
  236. package/dist/routes/account/wishlist/index.d.ts +2 -2
  237. package/dist/routes/account/wishlist/index.d.ts.map +1 -1
  238. package/dist/routes/account.js +20 -18
  239. package/dist/routes/account.js.map +1 -1
  240. package/dist/routes/blog/index.d.ts +10 -10
  241. package/dist/routes/blog/index.d.ts.map +1 -1
  242. package/dist/routes/blog.js +15 -13
  243. package/dist/routes/blog.js.map +1 -1
  244. package/dist/routes/brands/index.d.ts +2 -2
  245. package/dist/routes/brands/index.d.ts.map +1 -1
  246. package/dist/routes/brands.js +7 -5
  247. package/dist/routes/brands.js.map +1 -1
  248. package/dist/routes/cart.js +23 -22
  249. package/dist/routes/cart.js.map +1 -1
  250. package/dist/routes/home.js +20 -19
  251. package/dist/routes/index.js +3 -3
  252. package/dist/routes/lazy.d.ts +22 -22
  253. package/dist/routes/lazy.d.ts.map +1 -1
  254. package/dist/routes/loyalty/index.d.ts +4 -4
  255. package/dist/routes/loyalty/index.d.ts.map +1 -1
  256. package/dist/routes/loyalty.js +8 -8
  257. package/dist/routes/loyalty.js.map +1 -1
  258. package/dist/routes/page/index.d.ts +2 -2
  259. package/dist/routes/page/index.d.ts.map +1 -1
  260. package/dist/routes/page.js +7 -5
  261. package/dist/routes/page.js.map +1 -1
  262. package/dist/routes/product-listing.js +21 -20
  263. package/dist/routes/product-listing.js.map +1 -1
  264. package/dist/routes/product.js +19 -18
  265. package/dist/routes/product.js.map +1 -1
  266. package/dist/routes/root/beforeLoad.d.ts.map +1 -1
  267. package/dist/routes/seo-redirects.js +3 -3
  268. package/dist/routes/testimonials/index.d.ts +4 -4
  269. package/dist/routes/testimonials/index.d.ts.map +1 -1
  270. package/dist/routes/testimonials.js +5 -5
  271. package/dist/routes/testimonials.js.map +1 -1
  272. package/dist/routes/thank-you/index.d.ts +2 -2
  273. package/dist/routes/thank-you/index.d.ts.map +1 -1
  274. package/dist/routes/thank-you.js +6 -6
  275. package/dist/routes/thank-you.js.map +1 -1
  276. package/dist/skeleton.js +20 -19
  277. package/dist/{store-lookup-U6TJNLZM.js → store-lookup-FNWIAJLT.js} +8 -8
  278. package/dist/{store-lookup-U6TJNLZM.js.map → store-lookup-FNWIAJLT.js.map} +1 -1
  279. package/dist/tanstack/router.d.ts.map +1 -1
  280. package/dist/tanstack.js +13 -12
  281. package/dist/tanstack.js.map +1 -1
  282. package/dist/utils/index.js +2 -2
  283. package/dist/utils/lazy-component.d.ts +26 -0
  284. package/dist/utils/lazy-component.d.ts.map +1 -0
  285. package/dist/utils/snippet-page-compat.d.ts +45 -0
  286. package/dist/utils/snippet-page-compat.d.ts.map +1 -0
  287. package/package.json +1 -1
  288. package/tailwind/components/cart/lazy.ts.txt +6 -4
  289. package/tailwind/components/common/lazy.ts.txt +6 -6
  290. package/tailwind/components/home/lazy.ts.txt +2 -2
  291. package/tailwind/components/layout/MasterLayout.tsx.txt +5 -4
  292. package/tailwind/components/layout/lazy.ts.txt +11 -7
  293. package/tailwind/components/live-editor/index.tsx.txt +3 -2
  294. package/tailwind/components/modal/lazy.ts.txt +2 -2
  295. package/tailwind/components/navigation/lazy.ts.txt +5 -3
  296. package/tailwind/components/product/lazy.ts.txt +3 -3
  297. package/tailwind/components/snippets/AppsSnippets.tsx.txt +4 -0
  298. package/tailwind/components/store/lazy.ts.txt +3 -3
  299. package/tailwind/components/tracking/lazy.ts.txt +3 -3
  300. package/tailwind/routes/account/notifications/index.tsx.txt +3 -2
  301. package/tailwind/routes/account/orders/index.tsx.txt +6 -3
  302. package/tailwind/routes/account/profile/index.tsx.txt +3 -2
  303. package/tailwind/routes/account/settings/index.tsx.txt +3 -2
  304. package/tailwind/routes/account/wallet/index.tsx.txt +5 -2
  305. package/tailwind/routes/account/wishlist/index.tsx.txt +3 -2
  306. package/tailwind/routes/blog/index.tsx.txt +9 -6
  307. package/tailwind/routes/brands/index.tsx.txt +5 -2
  308. package/tailwind/routes/lazy.ts.txt +23 -23
  309. package/tailwind/routes/loyalty/index.tsx.txt +4 -3
  310. package/tailwind/routes/page/index.tsx.txt +5 -2
  311. package/tailwind/routes/root/beforeLoad.ts.txt +6 -0
  312. package/tailwind/routes/testimonials/index.tsx.txt +4 -3
  313. package/tailwind/routes/thank-you/index.tsx.txt +3 -2
  314. package/dist/AddToCartForm-ODVZPTKN.js.map +0 -1
  315. package/dist/BlogAuthorPage-BU23SINI.js.map +0 -1
  316. package/dist/BlogCategoryPage-ZVITUHP4.js.map +0 -1
  317. package/dist/BlogPage-IN3V7FYK.js.map +0 -1
  318. package/dist/BlogSinglePage-UJG7YPYZ.js.map +0 -1
  319. package/dist/BlogTagPage-XDETNKGR.js.map +0 -1
  320. package/dist/BrandsPage-CBU7JFSX.js.map +0 -1
  321. package/dist/Breadcrumb-EA2XETAM.js.map +0 -1
  322. package/dist/CartItem-2TW36QTW.js.map +0 -1
  323. package/dist/CartSummary-TW2CAX57.js.map +0 -1
  324. package/dist/Copyright-57XPE75X.js.map +0 -1
  325. package/dist/CustomerLayout-A2M7IY34.js.map +0 -1
  326. package/dist/LoyaltyPage-BVTDPSP3.js.map +0 -1
  327. package/dist/LoyaltyPointsPage-HZYPCO7C.js.map +0 -1
  328. package/dist/MainMenu-3HP3YJDH.js.map +0 -1
  329. package/dist/MobileMenu-3UEQTURY.js.map +0 -1
  330. package/dist/NotificationsPage-C6LNYZTB.js.map +0 -1
  331. package/dist/OrderSinglePage-LXKINOXP.js.map +0 -1
  332. package/dist/OrdersPage-VBF3P3JH.js.map +0 -1
  333. package/dist/PageSingle-E7DTNIY7.js.map +0 -1
  334. package/dist/ProductDetails-ZQLQWU7S.js.map +0 -1
  335. package/dist/ProfilePage-7LAIDEHS.js.map +0 -1
  336. package/dist/ReviewsPage-FA3V745S.js.map +0 -1
  337. package/dist/SeoCartWidget-4456ASOT.js.map +0 -1
  338. package/dist/SettingsPage-IVOHCXVY.js.map +0 -1
  339. package/dist/TestimonialsPage-JY7MF5NW.js.map +0 -1
  340. package/dist/ThankYouPage-KNHHBFPZ.js.map +0 -1
  341. package/dist/WalletPage-HH72DHOC.js.map +0 -1
  342. package/dist/WishlistPage-5BR63SMU.js.map +0 -1
  343. package/dist/chunk-2GSYVPQS.js +0 -21
  344. package/dist/chunk-2GSYVPQS.js.map +0 -1
  345. package/dist/chunk-7V5HOZW4.js +0 -10
  346. package/dist/chunk-7V5HOZW4.js.map +0 -1
  347. package/dist/chunk-MWG734P7.js.map +0 -1
  348. package/dist/chunk-OKKS2RA4.js +0 -14
  349. package/dist/chunk-OKKS2RA4.js.map +0 -1
  350. package/dist/chunk-P3D67RVR.js.map +0 -1
  351. package/dist/chunk-SXI2XBCC.js.map +0 -1
  352. package/dist/chunk-VNDUKDZG.js.map +0 -1
  353. package/dist/chunk-VZPEPWDF.js.map +0 -1
  354. package/dist/chunk-X5QZBD5V.js.map +0 -1
  355. package/dist/chunk-YJWJPS25.js.map +0 -1
  356. package/dist/chunk-YKNDXZAD.js.map +0 -1
  357. package/dist/not-found-J3UJVHNJ.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/routes/cart/CartPage.tsx","../../src/routes/cart/loader.ts","../../src/routes/cart/index.tsx"],"names":[],"mappings":"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","file":"cart.js","sourcesContent":["import { useQuery } from '@tanstack/react-query';\nimport { SallaConditionalOffer } from '@salla.sa/twilight-components-react/conditional-offer';\nimport { SallaOffer } from '@salla.sa/twilight-components-react/offer';\nimport { SallaProductOptions } from '@salla.sa/twilight-components-react/product-options';\nimport { HookSlot } from '../../hooks';\nimport { useTranslation } from '../../providers/I18nProvider';\nimport type { CartPageProps } from './types';\nimport { Breadcrumb, NoContent } from '../../components/common';\nimport { CartItem, CartSummary, SeoCartWidget } from '../../components/cart';\nimport { useTwilight } from '../../providers/twilight-context';\nimport { CartSkeleton } from '../../skeleton';\nimport { loyalty } from '../../api/loyalty';\nimport { cart } from '../../api/cart';\n\nfunction CartPageContent({ page }: CartPageProps) {\n const { store } = useTwilight();\n const { t } = useTranslation();\n const { data: loyaltyPoints } = useQuery(loyalty.queries.points());\n\n const { data: cartId } = useQuery(cart.queries.currentId());\n\n const { data: cartData } = useQuery({\n ...cart.queries.detail(cartId!),\n enabled: !!cartId,\n });\n\n const isLoading = cartId == null || cartData === undefined;\n\n if (isLoading) {\n return <CartSkeleton />;\n }\n\n // No cart: it was already turned into an order, shown empty like Twig.\n if (!cartData || cartData.items.length === 0) {\n return (\n <div className=\"container\">\n <Breadcrumb page={page} />\n <NoContent\n icon=\"sicon-shopping-bag\"\n message={t('pages.cart.empty_cart', 'Your cart is empty')}\n actionLabel={t('common.elements.back_home', 'Back to Home')}\n actionUrl=\"/\"\n />\n </div>\n );\n }\n\n return (\n <div className=\"container\">\n {/* Analytics — no visible UI, fires GTM checkout events */}\n <SeoCartWidget cart={cartData} />\n\n <Breadcrumb page={page} />\n <h1 className=\"sr-only\">{t('common.titles.cart', 'Cart')}</h1>\n <SallaConditionalOffer />\n\n <HookSlot name=\"cart:start\" />\n\n <div className=\"pt-5 flex flex-col items-start lg:flex-row pb-6 lg:pb-20\">\n <div className=\"main-content w-full lg:w-[calc(100%-384px)]\">\n <HookSlot name=\"cart:items.start\" context={{ cartItems: cartData.items }} />\n\n {cartData.items.map((item, index) => (\n <CartItem key={item.id} item={item} isFirst={index === 0} />\n ))}\n\n {cartData.options?.length > 0 && (\n <div className=\"cart-options\">\n {cartData.options.map((option) => (\n <form\n key={option.id}\n className=\"first:pt-5 relative\"\n onChange={(e) => window.salla?.form.onChange('cart.updateItem', e)}\n id={`item-${option.id}`}\n >\n <input type=\"hidden\" name=\"id\" value={option.id} />\n <input type=\"hidden\" name=\"quantity\" value={option.quantity} />\n {/* Twig: {% include 'pages.partials.product.options' with {product:product_option} %} */}\n {option.options && option.options.length > 0 && (\n <SallaProductOptions\n options={JSON.stringify(option.options)}\n productId={option.id}\n />\n )}\n </form>\n ))}\n </div>\n )}\n\n <SallaOffer />\n <HookSlot name=\"cart:items.end\" />\n </div>\n\n <CartSummary\n cart={cartData}\n applyCouponEnabled={store.settings?.cart?.apply_coupon_enabled}\n taxAmount={cartData.tax_amount}\n key={cartData.id}\n loyalty={cartData.loyalty}\n gift={cartData.gift}\n loyaltyPoints={loyaltyPoints ?? undefined}\n />\n </div>\n\n <HookSlot name=\"cart:end\" />\n </div>\n );\n}\n\nexport function CartPage(props: CartPageProps) {\n return <CartPageContent {...props} />;\n}\n","import type { CartPageProps } from './types';\nimport { getTwilightContext } from '../../twilight/context';\nimport { RouteId } from '../../router/route-ids';\n\n/**\n * SSR-safe loader that returns only page metadata.\n * Cart data is fetched client-side via React Query since the cart ID\n * lives in localStorage (unavailable during SSR).\n */\nexport function cartLoader(): CartPageProps {\n const i18n = getTwilightContext().i18n;\n return {\n page: { slug: RouteId.CART, title: i18n.t('common.titles.cart') || 'Cart' },\n } as CartPageProps;\n}\n","import type { HeadDescriptor } from '../../utils/head';\nimport { buildHreflangAlternates } from '../../utils/baseHead';\nimport { CartPage } from './CartPage';\nimport { cartLoader } from './loader';\nimport type { CartPageProps } from './types';\nimport type { TwilightContext } from '../../twilight/context';\nimport { RouteId } from '../../router/route-ids';\n\nexport { CartPage } from './CartPage';\nexport { cartLoader } from './loader';\nexport type { CartPageProps } from './types';\n\nasync function loader(\n _ctx?: { locale?: string },\n extend?: (\n data: CartPageProps,\n ctx: { params: Record<string, never> }\n ) => Promise<Record<string, unknown>> | Record<string, unknown>\n): Promise<CartPageProps> {\n const data = cartLoader();\n\n if (extend) {\n const extra = extend(data, { params: {} });\n return { ...data, ...(extra instanceof Promise ? {} : extra) } as CartPageProps;\n }\n return data;\n}\n\nfunction head(ctx: TwilightContext, data: CartPageProps): HeadDescriptor {\n const base: HeadDescriptor = {\n title: data.page.title,\n description: data.page.description,\n alternateLanguages: buildHreflangAlternates(ctx.settings, ctx.location.pathname),\n };\n\n return base;\n}\n\nexport const Cart = { id: RouteId.CART, loader, head, Component: CartPage } as const;\n"]}
1
+ {"version":3,"sources":["../../src/routes/cart/CartPage.tsx","../../src/routes/cart/loader.ts","../../src/routes/cart/index.tsx"],"names":[],"mappings":"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","file":"cart.js","sourcesContent":["import { useQuery } from '@tanstack/react-query';\nimport { SallaConditionalOffer } from '@salla.sa/twilight-components-react/conditional-offer';\nimport { SallaOffer } from '@salla.sa/twilight-components-react/offer';\nimport { SallaProductOptions } from '@salla.sa/twilight-components-react/product-options';\nimport { HookSlot } from '../../hooks';\nimport { useTranslation } from '../../providers/I18nProvider';\nimport type { CartPageProps } from './types';\nimport { Breadcrumb, NoContent } from '../../components/common';\nimport { CartItem, CartSummary, SeoCartWidget } from '../../components/cart';\nimport { useTwilight } from '../../providers/twilight-context';\nimport { CartSkeleton } from '../../skeleton';\nimport { loyalty } from '../../api/loyalty';\nimport { cart } from '../../api/cart';\n\nfunction CartPageContent({ page }: CartPageProps) {\n const { store } = useTwilight();\n const { t } = useTranslation();\n const { data: loyaltyPoints } = useQuery(loyalty.queries.points());\n\n const { data: cartId } = useQuery(cart.queries.currentId());\n\n const { data: cartData } = useQuery({\n ...cart.queries.detail(cartId!),\n enabled: !!cartId,\n });\n\n const isLoading = cartId == null || cartData === undefined;\n\n if (isLoading) {\n return <CartSkeleton />;\n }\n\n // No cart: it was already turned into an order, shown empty like Twig.\n if (!cartData || cartData.items.length === 0) {\n return (\n <div className=\"container\">\n <Breadcrumb page={page} />\n <NoContent\n icon=\"sicon-shopping-bag\"\n message={t('pages.cart.empty_cart', 'Your cart is empty')}\n actionLabel={t('common.elements.back_home', 'Back to Home')}\n actionUrl=\"/\"\n />\n </div>\n );\n }\n\n return (\n <div className=\"container\">\n {/* Analytics — no visible UI, fires GTM checkout events */}\n <SeoCartWidget cart={cartData} />\n\n <Breadcrumb page={page} />\n <h1 className=\"sr-only\">{t('common.titles.cart', 'Cart')}</h1>\n <SallaConditionalOffer />\n\n <HookSlot name=\"cart:start\" />\n\n <div className=\"pt-5 flex flex-col items-start lg:flex-row pb-6 lg:pb-20\">\n <div className=\"main-content w-full lg:w-[calc(100%-384px)]\">\n <HookSlot name=\"cart:items.start\" context={{ cartItems: cartData.items }} />\n\n {cartData.items.map((item, index) => (\n <CartItem key={item.id} item={item} isFirst={index === 0} />\n ))}\n\n {cartData.options?.length > 0 && (\n <div className=\"cart-options\">\n {cartData.options.map((option) => (\n <form\n key={option.id}\n className=\"first:pt-5 relative\"\n onChange={(e) => window.salla?.form.onChange('cart.updateItem', e)}\n id={`item-${option.id}`}\n >\n <input type=\"hidden\" name=\"id\" value={option.id} />\n <input type=\"hidden\" name=\"quantity\" value={option.quantity} />\n {/* Twig: {% include 'pages.partials.product.options' with {product:product_option} %} */}\n {option.options && option.options.length > 0 && (\n <SallaProductOptions\n options={JSON.stringify(option.options)}\n productId={option.id}\n />\n )}\n </form>\n ))}\n </div>\n )}\n\n <SallaOffer />\n <HookSlot name=\"cart:items.end\" />\n </div>\n\n <CartSummary\n cart={cartData}\n applyCouponEnabled={store.settings?.cart?.apply_coupon_enabled}\n taxAmount={cartData.tax_amount}\n key={cartData.id}\n loyalty={cartData.loyalty}\n gift={cartData.gift}\n loyaltyPoints={loyaltyPoints ?? undefined}\n />\n </div>\n\n <HookSlot name=\"cart:end\" />\n </div>\n );\n}\n\nexport function CartPage(props: CartPageProps) {\n return <CartPageContent {...props} />;\n}\n","import type { CartPageProps } from './types';\nimport { getTwilightContext } from '../../twilight/context';\nimport { RouteId } from '../../router/route-ids';\n\n/**\n * SSR-safe loader that returns only page metadata.\n * Cart data is fetched client-side via React Query since the cart ID\n * lives in localStorage (unavailable during SSR).\n */\nexport function cartLoader(): CartPageProps {\n const i18n = getTwilightContext().i18n;\n return {\n page: { slug: RouteId.CART, title: i18n.t('common.titles.cart') || 'Cart' },\n } as CartPageProps;\n}\n","import type { HeadDescriptor } from '../../utils/head';\nimport { buildHreflangAlternates } from '../../utils/baseHead';\nimport { CartPage } from './CartPage';\nimport { cartLoader } from './loader';\nimport type { CartPageProps } from './types';\nimport type { TwilightContext } from '../../twilight/context';\nimport { RouteId } from '../../router/route-ids';\n\nexport { CartPage } from './CartPage';\nexport { cartLoader } from './loader';\nexport type { CartPageProps } from './types';\n\nasync function loader(\n _ctx?: { locale?: string },\n extend?: (\n data: CartPageProps,\n ctx: { params: Record<string, never> }\n ) => Promise<Record<string, unknown>> | Record<string, unknown>\n): Promise<CartPageProps> {\n const data = cartLoader();\n\n if (extend) {\n const extra = extend(data, { params: {} });\n return { ...data, ...(extra instanceof Promise ? {} : extra) } as CartPageProps;\n }\n return data;\n}\n\nfunction head(ctx: TwilightContext, data: CartPageProps): HeadDescriptor {\n const base: HeadDescriptor = {\n title: data.page.title,\n description: data.page.description,\n alternateLanguages: buildHreflangAlternates(ctx.settings, ctx.location.pathname),\n };\n\n return base;\n}\n\nexport const Cart = { id: RouteId.CART, loader, head, Component: CartPage } as const;\n"]}
@@ -1,30 +1,30 @@
1
- export { Home, HomeSkeleton, homeLoader } from '../chunk-TTLRRVM2.js';
1
+ export { Home, HomeSkeleton, homeLoader } from '../chunk-NPN23RYM.js';
2
2
  import '../chunk-IXHM24Z4.js';
3
- export { DefaultHomeComponents, registerHomeComponentConfig, registerHomeComponents } from '../chunk-VNDUKDZG.js';
4
- import '../chunk-YBIL64R7.js';
5
- import '../chunk-LUPDYN4T.js';
6
- import '../chunk-P3D67RVR.js';
3
+ export { DefaultHomeComponents, registerHomeComponentConfig, registerHomeComponents } from '../chunk-JK7WLO72.js';
4
+ import '../chunk-L22FKPMY.js';
5
+ import '../chunk-BYP72WXK.js';
6
+ import '../chunk-2WEGBUAG.js';
7
7
  import '../chunk-Y32RHCOH.js';
8
- import '../chunk-YKNDXZAD.js';
8
+ import '../chunk-COSCD4AH.js';
9
9
  import '../chunk-H2QBHOF2.js';
10
- import '../chunk-X5QZBD5V.js';
11
- import '../chunk-4CM6JIQF.js';
12
- import '../chunk-SXI2XBCC.js';
10
+ import '../chunk-IC6Z6BB2.js';
11
+ import '../chunk-HFWQRV3W.js';
12
+ import '../chunk-N6ZE6HUX.js';
13
13
  import '../chunk-X55R4VVK.js';
14
- import '../chunk-25UDBM27.js';
14
+ import '../chunk-DKYNZHZN.js';
15
15
  import '../chunk-OXMUPNMH.js';
16
- import '../chunk-7U5OLKOS.js';
16
+ import '../chunk-W6BDJU4X.js';
17
17
  import '../chunk-VVZNW5CB.js';
18
18
  import '../chunk-WQPG22DY.js';
19
19
  import '../chunk-GD26FI4J.js';
20
20
  import '../chunk-Q7E4TNN7.js';
21
21
  import '../chunk-RYGEIQWO.js';
22
- import '../chunk-RLJLG4EN.js';
22
+ import '../chunk-PEENIBSF.js';
23
23
  import '../chunk-OUW6WESU.js';
24
24
  import '../chunk-HOJ5E2PG.js';
25
25
  import '../chunk-HI5V5X3S.js';
26
- import '../chunk-WVSGVFMM.js';
27
- import '../chunk-XHWBJYJL.js';
26
+ import '../chunk-5Y4NL57B.js';
27
+ import '../chunk-GHM37DUT.js';
28
28
  import '../chunk-MVT5AF2A.js';
29
29
  import '../chunk-Z653O7MX.js';
30
30
  import '../chunk-ZCH7W7DZ.js';
@@ -35,22 +35,22 @@ import '../chunk-7V36I5GT.js';
35
35
  import '../chunk-6WI7R2BD.js';
36
36
  import '../chunk-LFHYQ6AN.js';
37
37
  import '../chunk-OAMIDZKW.js';
38
- import '../chunk-WEKO2DAN.js';
38
+ import '../chunk-CYDQFZRF.js';
39
39
  import '../chunk-OQIIJRAS.js';
40
40
  import '../chunk-V2ZDTY6H.js';
41
- import '../chunk-5A37NING.js';
41
+ import '../chunk-BPCSMALD.js';
42
42
  import '../chunk-5XDPAKF5.js';
43
43
  import '../chunk-GCPEMNSU.js';
44
- import '../chunk-E5DP3MHE.js';
44
+ import '../chunk-K7BDIB3L.js';
45
45
  import '../chunk-Z5M4YYWT.js';
46
46
  import '../chunk-TYNZ5B2B.js';
47
- import '../chunk-MWG734P7.js';
47
+ import '../chunk-PYDHLM3Y.js';
48
48
  import '../chunk-AXW67SY7.js';
49
49
  import '../chunk-BYMOPN2S.js';
50
50
  import '../chunk-SKLEJJ6M.js';
51
51
  import '../chunk-6BZ5TKEV.js';
52
52
  import '../chunk-FZKRSGLP.js';
53
- import '../chunk-7V5HOZW4.js';
53
+ import '../chunk-KYMWEUN2.js';
54
54
  import '../chunk-YA6ABQB7.js';
55
55
  import '../chunk-MWYKP7CI.js';
56
56
  import '../chunk-3E3ABCPC.js';
@@ -59,6 +59,7 @@ import '../chunk-FXVII733.js';
59
59
  import '../chunk-6K34BCUP.js';
60
60
  import '../chunk-T72DAX7R.js';
61
61
  import '../chunk-DF6FBKDN.js';
62
+ import '../chunk-VYGA5AT5.js';
62
63
  import '../chunk-DGUM43GV.js';
63
64
  //# sourceMappingURL=home.js.map
64
65
  //# sourceMappingURL=home.js.map
@@ -1,7 +1,7 @@
1
- export { slugBrandRedirectLoader } from '../chunk-HIOYW3CS.js';
2
- import '../chunk-RLJLG4EN.js';
1
+ export { slugBrandRedirectLoader } from '../chunk-QG2ORHKD.js';
2
+ import '../chunk-PEENIBSF.js';
3
3
  import '../chunk-OUW6WESU.js';
4
- import '../chunk-E5DP3MHE.js';
4
+ import '../chunk-K7BDIB3L.js';
5
5
  import '../chunk-Z5M4YYWT.js';
6
6
  import '../chunk-TYNZ5B2B.js';
7
7
  import '../chunk-3E3ABCPC.js';
@@ -1,23 +1,23 @@
1
- export declare const LazyHomePage: import("react").LazyExoticComponent<import("react").MemoExoticComponent<({ components }: import("./home").HomePageProps) => import("react").JSX.Element>>;
2
- export declare const LazyCartPage: import("react").LazyExoticComponent<typeof import("./cart").CartPage>;
3
- export declare const LazyProductPage: import("react").LazyExoticComponent<typeof import("./product/ProductPage").ProductPage>;
4
- export declare const LazyProductListingPage: import("react").LazyExoticComponent<typeof import("./product-listing").ProductListPage>;
5
- export declare const LazyBlogPage: import("react").LazyExoticComponent<typeof import("./blog/BlogPage").BlogPage>;
6
- export declare const LazyBlogSinglePage: import("react").LazyExoticComponent<typeof import("./blog/BlogSinglePage").BlogSinglePage>;
7
- export declare const LazyBlogAuthorPage: import("react").LazyExoticComponent<typeof import("./blog/BlogAuthorPage").BlogAuthorPage>;
8
- export declare const LazyBlogCategoryPage: import("react").LazyExoticComponent<typeof import("./blog/BlogCategoryPage").BlogCategoryPage>;
9
- export declare const LazyBlogTagPage: import("react").LazyExoticComponent<typeof import("./blog/BlogTagPage").BlogTagPage>;
10
- export declare const LazyBrandsPage: import("react").LazyExoticComponent<import("react").MemoExoticComponent<({ page, brands, pagination }: import("./brands").BrandsPageProps) => import("react").JSX.Element>>;
11
- export declare const LazyProfilePage: import("react").LazyExoticComponent<typeof import("./account/profile/ProfilePage").ProfilePage>;
12
- export declare const LazyWishlistPage: import("react").LazyExoticComponent<typeof import("./account/wishlist/WishlistPage").WishlistPage>;
13
- export declare const LazyWalletPage: import("react").LazyExoticComponent<typeof import("./account/wallet/WalletPage").WalletPage>;
14
- export declare const LazyNotificationsPage: import("react").LazyExoticComponent<typeof import("./account/notifications/NotificationsPage").NotificationsPage>;
15
- export declare const LazySettingsPage: import("react").LazyExoticComponent<typeof import("./account/settings/SettingsPage").SettingsPage>;
16
- export declare const LazyOrdersPage: import("react").LazyExoticComponent<typeof import("./account/orders/OrdersPage").OrdersPage>;
17
- export declare const LazyOrderSinglePage: import("react").LazyExoticComponent<typeof import("./account/orders/OrderSinglePage").OrderSinglePage>;
18
- export declare const LazyLoyaltyPage: import("react").LazyExoticComponent<typeof import("./loyalty/LoyaltyPage").LoyaltyPage>;
19
- export declare const LazyPageSingle: import("react").LazyExoticComponent<typeof import("./page/PageSingle").PageSingle>;
20
- export declare const LazyTestimonialsPage: import("react").LazyExoticComponent<typeof import("./testimonials/TestimonialsPage").TestimonialsPage>;
21
- export declare const LazyThankYouPage: import("react").LazyExoticComponent<typeof import("./thank-you/ThankYouPage").ThankYouPage>;
22
- export declare const LazyNotFoundPage: import("react").LazyExoticComponent<typeof import("./not-found").NotFoundPage>;
1
+ export declare const LazyHomePage: import("../utils/lazy-component").LazyComponent<import("react").MemoExoticComponent<({ components }: import("./home").HomePageProps) => import("react").JSX.Element>>;
2
+ export declare const LazyCartPage: import("../utils/lazy-component").LazyComponent<typeof import("./cart").CartPage>;
3
+ export declare const LazyProductPage: import("../utils/lazy-component").LazyComponent<typeof import("./product/ProductPage").ProductPage>;
4
+ export declare const LazyProductListingPage: import("../utils/lazy-component").LazyComponent<typeof import("./product-listing").ProductListPage>;
5
+ export declare const LazyBlogPage: import("../utils/lazy-component").LazyComponent<typeof import("./blog/BlogPage").BlogPage>;
6
+ export declare const LazyBlogSinglePage: import("../utils/lazy-component").LazyComponent<typeof import("./blog/BlogSinglePage").BlogSinglePage>;
7
+ export declare const LazyBlogAuthorPage: import("../utils/lazy-component").LazyComponent<typeof import("./blog/BlogAuthorPage").BlogAuthorPage>;
8
+ export declare const LazyBlogCategoryPage: import("../utils/lazy-component").LazyComponent<typeof import("./blog/BlogCategoryPage").BlogCategoryPage>;
9
+ export declare const LazyBlogTagPage: import("../utils/lazy-component").LazyComponent<typeof import("./blog/BlogTagPage").BlogTagPage>;
10
+ export declare const LazyBrandsPage: import("../utils/lazy-component").LazyComponent<import("react").MemoExoticComponent<({ page, brands, pagination }: import("./brands").BrandsPageProps) => import("react").JSX.Element>>;
11
+ export declare const LazyProfilePage: import("../utils/lazy-component").LazyComponent<typeof import("./account/profile/ProfilePage").ProfilePage>;
12
+ export declare const LazyWishlistPage: import("../utils/lazy-component").LazyComponent<typeof import("./account/wishlist/WishlistPage").WishlistPage>;
13
+ export declare const LazyWalletPage: import("../utils/lazy-component").LazyComponent<typeof import("./account/wallet/WalletPage").WalletPage>;
14
+ export declare const LazyNotificationsPage: import("../utils/lazy-component").LazyComponent<typeof import("./account/notifications/NotificationsPage").NotificationsPage>;
15
+ export declare const LazySettingsPage: import("../utils/lazy-component").LazyComponent<typeof import("./account/settings/SettingsPage").SettingsPage>;
16
+ export declare const LazyOrdersPage: import("../utils/lazy-component").LazyComponent<typeof import("./account/orders/OrdersPage").OrdersPage>;
17
+ export declare const LazyOrderSinglePage: import("../utils/lazy-component").LazyComponent<typeof import("./account/orders/OrderSinglePage").OrderSinglePage>;
18
+ export declare const LazyLoyaltyPage: import("../utils/lazy-component").LazyComponent<typeof import("./loyalty/LoyaltyPage").LoyaltyPage>;
19
+ export declare const LazyPageSingle: import("../utils/lazy-component").LazyComponent<typeof import("./page/PageSingle").PageSingle>;
20
+ export declare const LazyTestimonialsPage: import("../utils/lazy-component").LazyComponent<typeof import("./testimonials/TestimonialsPage").TestimonialsPage>;
21
+ export declare const LazyThankYouPage: import("../utils/lazy-component").LazyComponent<typeof import("./thank-you/ThankYouPage").ThankYouPage>;
22
+ export declare const LazyNotFoundPage: import("../utils/lazy-component").LazyComponent<typeof import("./not-found").NotFoundPage>;
23
23
  //# sourceMappingURL=lazy.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"lazy.d.ts","sourceRoot":"","sources":["../../src/routes/lazy.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,YAAY,2JAExB,CAAC;AAGF,eAAO,MAAM,YAAY,uEAExB,CAAC;AAGF,eAAO,MAAM,eAAe,yFAE3B,CAAC;AAGF,eAAO,MAAM,sBAAsB,yFAElC,CAAC;AAGF,eAAO,MAAM,YAAY,gFAExB,CAAC;AAEF,eAAO,MAAM,kBAAkB,4FAE9B,CAAC;AAEF,eAAO,MAAM,kBAAkB,4FAE9B,CAAC;AAEF,eAAO,MAAM,oBAAoB,gGAEhC,CAAC;AAEF,eAAO,MAAM,eAAe,sFAE3B,CAAC;AAGF,eAAO,MAAM,cAAc,6KAE1B,CAAC;AAKF,eAAO,MAAM,eAAe,iGAE3B,CAAC;AAEF,eAAO,MAAM,gBAAgB,oGAE5B,CAAC;AAEF,eAAO,MAAM,cAAc,8FAE1B,CAAC;AAEF,eAAO,MAAM,qBAAqB,mHAIjC,CAAC;AAEF,eAAO,MAAM,gBAAgB,oGAE5B,CAAC;AAEF,eAAO,MAAM,cAAc,8FAE1B,CAAC;AAEF,eAAO,MAAM,mBAAmB,wGAE/B,CAAC;AAGF,eAAO,MAAM,eAAe,yFAE3B,CAAC;AAGF,eAAO,MAAM,cAAc,oFAE1B,CAAC;AAGF,eAAO,MAAM,oBAAoB,wGAEhC,CAAC;AAGF,eAAO,MAAM,gBAAgB,6FAE5B,CAAC;AAGF,eAAO,MAAM,gBAAgB,gFAE5B,CAAC"}
1
+ {"version":3,"file":"lazy.d.ts","sourceRoot":"","sources":["../../src/routes/lazy.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,YAAY,uKAExB,CAAC;AAGF,eAAO,MAAM,YAAY,mFAExB,CAAC;AAGF,eAAO,MAAM,eAAe,qGAE3B,CAAC;AAGF,eAAO,MAAM,sBAAsB,qGAElC,CAAC;AAGF,eAAO,MAAM,YAAY,4FAExB,CAAC;AAEF,eAAO,MAAM,kBAAkB,wGAE9B,CAAC;AAEF,eAAO,MAAM,kBAAkB,wGAE9B,CAAC;AAEF,eAAO,MAAM,oBAAoB,4GAEhC,CAAC;AAEF,eAAO,MAAM,eAAe,kGAE3B,CAAC;AAGF,eAAO,MAAM,cAAc,yLAE1B,CAAC;AAKF,eAAO,MAAM,eAAe,6GAE3B,CAAC;AAEF,eAAO,MAAM,gBAAgB,gHAE5B,CAAC;AAEF,eAAO,MAAM,cAAc,0GAE1B,CAAC;AAEF,eAAO,MAAM,qBAAqB,+HAIjC,CAAC;AAEF,eAAO,MAAM,gBAAgB,gHAE5B,CAAC;AAEF,eAAO,MAAM,cAAc,0GAE1B,CAAC;AAEF,eAAO,MAAM,mBAAmB,oHAE/B,CAAC;AAGF,eAAO,MAAM,eAAe,qGAE3B,CAAC;AAGF,eAAO,MAAM,cAAc,gGAE1B,CAAC;AAGF,eAAO,MAAM,oBAAoB,oHAEhC,CAAC;AAGF,eAAO,MAAM,gBAAgB,yGAE5B,CAAC;AAGF,eAAO,MAAM,gBAAgB,4FAE5B,CAAC"}
@@ -1,8 +1,8 @@
1
1
  import type { HeadDescriptor } from '../../utils/head';
2
2
  import type { LoyaltyPageProps, LoyaltyPointsPageProps } from './types';
3
3
  import type { TwilightContext } from '../../twilight/context';
4
- export declare const LoyaltyPage: import("react").LazyExoticComponent<typeof import("./LoyaltyPage").LoyaltyPage>;
5
- export declare const LoyaltyPointsPage: import("react").LazyExoticComponent<typeof import("./LoyaltyPointsPage").LoyaltyPointsPage>;
4
+ export declare const LoyaltyPage: import("../../utils/lazy-component").LazyComponent<typeof import("./LoyaltyPage").LoyaltyPage>;
5
+ export declare const LoyaltyPointsPage: import("../../utils/lazy-component").LazyComponent<typeof import("./LoyaltyPointsPage").LoyaltyPointsPage>;
6
6
  export { loyaltyLoader, loyaltyPointsLoader } from './loader';
7
7
  export type { LoyaltyPageProps, LoyaltyPointsPageProps, LoyaltyPoint, LoyaltyPrize, LoyaltyPrizeItem, } from './types';
8
8
  declare function loader(ctx?: {
@@ -15,7 +15,7 @@ export declare const Loyalty: {
15
15
  readonly id: "loyalty";
16
16
  readonly loader: typeof loader;
17
17
  readonly head: typeof head;
18
- readonly Component: import("react").LazyExoticComponent<typeof import("./LoyaltyPage").LoyaltyPage>;
18
+ readonly Component: import("../../utils/lazy-component").LazyComponent<typeof import("./LoyaltyPage").LoyaltyPage>;
19
19
  };
20
20
  declare function pointsLoader(ctx?: {
21
21
  locale?: string;
@@ -26,6 +26,6 @@ export declare const LoyaltyPoints: {
26
26
  readonly id: "customer.loyalty_points";
27
27
  readonly loader: typeof pointsLoader;
28
28
  readonly head: (ctx: TwilightContext, data: LoyaltyPointsPageProps) => HeadDescriptor;
29
- readonly Component: import("react").LazyExoticComponent<typeof import("./LoyaltyPointsPage").LoyaltyPointsPage>;
29
+ readonly Component: import("../../utils/lazy-component").LazyComponent<typeof import("./LoyaltyPointsPage").LoyaltyPointsPage>;
30
30
  };
31
31
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/routes/loyalty/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAIvD,OAAO,KAAK,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAC;AACxE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAY9D,eAAO,MAAM,WAAW,iFAAkB,CAAC;AAC3C,eAAO,MAAM,iBAAiB,6FAAwB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAC9D,YAAY,EACV,gBAAgB,EAChB,sBAAsB,EACtB,YAAY,EACZ,YAAY,EACZ,gBAAgB,GACjB,MAAM,SAAS,CAAC;AAEjB,iBAAe,MAAM,CACnB,GAAG,CAAC,EAAE;IAAE,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,EACzB,MAAM,CAAC,EAAE,CACP,IAAI,EAAE,gBAAgB,EACtB,GAAG,EAAE;IAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;CAAE,KACnC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC9D,OAAO,CAAC,gBAAgB,CAAC,CAQ3B;AAED,iBAAS,IAAI,CAAC,GAAG,EAAE,eAAe,EAAE,IAAI,EAAE,gBAAgB,GAAG,cAAc,CAQ1E;AAED,eAAO,MAAM,OAAO;;;;;CAA6E,CAAC;AAElG,iBAAe,YAAY,CACzB,GAAG,CAAC,EAAE;IAAE,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,EACzB,MAAM,CAAC,EAAE,CACP,IAAI,EAAE,sBAAsB,EAC5B,GAAG,EAAE;IAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;CAAE,KACnC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC9D,OAAO,CAAC,sBAAsB,CAAC,CAQjC;AAED,eAAO,MAAM,aAAa;;;yBAGZ,eAAe,QAAQ,sBAAsB,KAAG,cAAc;;CAKlE,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/routes/loyalty/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAIvD,OAAO,KAAK,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAC;AACxE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAY9D,eAAO,MAAM,WAAW,gGAAkB,CAAC;AAC3C,eAAO,MAAM,iBAAiB,4GAAwB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAC9D,YAAY,EACV,gBAAgB,EAChB,sBAAsB,EACtB,YAAY,EACZ,YAAY,EACZ,gBAAgB,GACjB,MAAM,SAAS,CAAC;AAGjB,iBAAe,MAAM,CACnB,GAAG,CAAC,EAAE;IAAE,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,EACzB,MAAM,CAAC,EAAE,CACP,IAAI,EAAE,gBAAgB,EACtB,GAAG,EAAE;IAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;CAAE,KACnC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC9D,OAAO,CAAC,gBAAgB,CAAC,CAQ3B;AAED,iBAAS,IAAI,CAAC,GAAG,EAAE,eAAe,EAAE,IAAI,EAAE,gBAAgB,GAAG,cAAc,CAQ1E;AAED,eAAO,MAAM,OAAO;;;;;CAA6E,CAAC;AAElG,iBAAe,YAAY,CACzB,GAAG,CAAC,EAAE;IAAE,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,EACzB,MAAM,CAAC,EAAE,CACP,IAAI,EAAE,sBAAsB,EAC5B,GAAG,EAAE;IAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;CAAE,KACnC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC9D,OAAO,CAAC,sBAAsB,CAAC,CAQjC;AAED,eAAO,MAAM,aAAa;;;yBAGZ,eAAe,QAAQ,sBAAsB,KAAG,cAAc;;CAKlE,CAAC"}
@@ -1,8 +1,8 @@
1
- import { loyalty } from '../chunk-OJKTKMWS.js';
1
+ import { loyalty } from '../chunk-NZX2ZEF7.js';
2
2
  import { buildHreflangAlternates } from '../chunk-RYGEIQWO.js';
3
- import { unauthorized, orUnauthorized, redirect } from '../chunk-RLJLG4EN.js';
3
+ import { unauthorized, orUnauthorized, redirect } from '../chunk-PEENIBSF.js';
4
4
  import { RouteId } from '../chunk-OUW6WESU.js';
5
- import { getAuthToken } from '../chunk-E5DP3MHE.js';
5
+ import { getAuthToken } from '../chunk-K7BDIB3L.js';
6
6
  import '../chunk-Z5M4YYWT.js';
7
7
  import '../chunk-3E3ABCPC.js';
8
8
  import '../chunk-NHA4SBKG.js';
@@ -10,8 +10,8 @@ import '../chunk-FXVII733.js';
10
10
  import { getTwilightContext } from '../chunk-6K34BCUP.js';
11
11
  import { FALLBACK_LOCALE } from '../chunk-T72DAX7R.js';
12
12
  import '../chunk-DF6FBKDN.js';
13
+ import { lazyComponent } from '../chunk-VYGA5AT5.js';
13
14
  import '../chunk-DGUM43GV.js';
14
- import { lazy } from 'react';
15
15
 
16
16
  // src/routes/loyalty/loader.ts
17
17
  async function getProgramOrGoHome(locale) {
@@ -58,11 +58,11 @@ async function loyaltyPointsLoader(locale) {
58
58
  }
59
59
 
60
60
  // src/routes/loyalty/index.tsx
61
- var LazyLoyaltyPage = lazy(
62
- () => import('../LoyaltyPage-BVTDPSP3.js').then((m) => ({ default: m.LoyaltyPage }))
61
+ var LazyLoyaltyPage = lazyComponent(
62
+ () => import('../LoyaltyPage-MTUCGVJ5.js').then((m) => ({ default: m.LoyaltyPage }))
63
63
  );
64
- var LazyLoyaltyPointsPage = lazy(
65
- () => import('../LoyaltyPointsPage-HZYPCO7C.js').then((m) => ({ default: m.LoyaltyPointsPage }))
64
+ var LazyLoyaltyPointsPage = lazyComponent(
65
+ () => import('../LoyaltyPointsPage-CF2X3ZHW.js').then((m) => ({ default: m.LoyaltyPointsPage }))
66
66
  );
67
67
  var LoyaltyPage = LazyLoyaltyPage;
68
68
  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":"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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';\n\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 = lazyComponent(() =>\n import('./LoyaltyPage').then((m) => ({ default: m.LoyaltyPage }))\n);\n\nconst LazyLoyaltyPointsPage = lazyComponent(() =>\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';\nimport { lazyComponent } from '../../utils/lazy-component';\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"]}
@@ -2,7 +2,7 @@ import type { HeadDescriptor } from '../../utils/head';
2
2
  import type { PageSingleProps } from './types';
3
3
  import type { IdParams } from '../types';
4
4
  import type { TwilightContext } from '../../twilight/context';
5
- export declare const PageSingleLazy: import("react").LazyExoticComponent<typeof import("./PageSingle").PageSingle>;
5
+ export declare const PageSingleLazy: import("../../utils/lazy-component").LazyComponent<typeof import("./PageSingle").PageSingle>;
6
6
  export { pageSingleLoader } from './loader';
7
7
  export type { PageSingleProps, StaticPage } from './types';
8
8
  declare function loader(ctx: {
@@ -16,6 +16,6 @@ export declare const PageSingle: {
16
16
  readonly id: "page-single";
17
17
  readonly loader: typeof loader;
18
18
  readonly head: typeof head;
19
- readonly Component: import("react").LazyExoticComponent<typeof import("./PageSingle").PageSingle>;
19
+ readonly Component: import("../../utils/lazy-component").LazyComponent<typeof import("./PageSingle").PageSingle>;
20
20
  };
21
21
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/routes/page/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAIvD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAC/C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAM9D,eAAO,MAAM,cAAc,+EAAiB,CAAC;AAC7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAC5C,YAAY,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAE3D,iBAAe,MAAM,CACnB,GAAG,EAAE;IAAE,MAAM,EAAE,QAAQ,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,EAC1C,MAAM,CAAC,EAAE,CACP,IAAI,EAAE,eAAe,EACrB,GAAG,EAAE;IAAE,MAAM,EAAE,QAAQ,CAAA;CAAE,KACtB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC9D,OAAO,CAAC,eAAe,CAAC,CAQ1B;AAED,iBAAS,IAAI,CAAC,GAAG,EAAE,eAAe,EAAE,IAAI,EAAE,eAAe,GAAG,cAAc,CAoBzE;AAED,eAAO,MAAM,UAAU;;;;;CAKb,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/routes/page/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAIvD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAC/C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAS9D,eAAO,MAAM,cAAc,8FAAiB,CAAC;AAC7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAC5C,YAAY,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAE3D,iBAAe,MAAM,CACnB,GAAG,EAAE;IAAE,MAAM,EAAE,QAAQ,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,EAC1C,MAAM,CAAC,EAAE,CACP,IAAI,EAAE,eAAe,EACrB,GAAG,EAAE;IAAE,MAAM,EAAE,QAAQ,CAAA;CAAE,KACtB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC9D,OAAO,CAAC,eAAe,CAAC,CAQ1B;AAED,iBAAS,IAAI,CAAC,GAAG,EAAE,eAAe,EAAE,IAAI,EAAE,eAAe,GAAG,cAAc,CAoBzE;AAED,eAAO,MAAM,UAAU;;;;;CAKb,CAAC"}
@@ -1,8 +1,8 @@
1
- import { page } from '../chunk-RBXGVURD.js';
1
+ import { page } from '../chunk-SLAP5YVD.js';
2
2
  import { buildHreflangAlternates } from '../chunk-RYGEIQWO.js';
3
- import '../chunk-RLJLG4EN.js';
3
+ import '../chunk-PEENIBSF.js';
4
4
  import { RouteId } from '../chunk-OUW6WESU.js';
5
- import '../chunk-E5DP3MHE.js';
5
+ import '../chunk-K7BDIB3L.js';
6
6
  import '../chunk-Z5M4YYWT.js';
7
7
  import '../chunk-3E3ABCPC.js';
8
8
  import '../chunk-NHA4SBKG.js';
@@ -10,8 +10,8 @@ import '../chunk-FXVII733.js';
10
10
  import '../chunk-6K34BCUP.js';
11
11
  import '../chunk-T72DAX7R.js';
12
12
  import '../chunk-DF6FBKDN.js';
13
+ import { lazyComponent } from '../chunk-VYGA5AT5.js';
13
14
  import '../chunk-DGUM43GV.js';
14
- import { lazy } from 'react';
15
15
 
16
16
  // src/routes/page/loader.ts
17
17
  async function pageSingleLoader({ params }) {
@@ -30,7 +30,9 @@ async function pageSingleLoader({ params }) {
30
30
  }
31
31
 
32
32
  // src/routes/page/index.tsx
33
- var LazyPageSingle = lazy(() => import('../PageSingle-E7DTNIY7.js').then((m) => ({ default: m.PageSingle })));
33
+ var LazyPageSingle = lazyComponent(
34
+ () => import('../PageSingle-TOJXQ5LW.js').then((m) => ({ default: m.PageSingle }))
35
+ );
34
36
  var PageSingleLazy = LazyPageSingle;
35
37
  async function loader(ctx, extend) {
36
38
  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;;;ACPA,IAAM,cAAA,GAAiB,aAAA;AAAA,EAAc,MACnC,OAAO,2BAAc,CAAA,CAAE,IAAA,CAAK,CAAC,CAAA,MAAO,EAAE,OAAA,EAAS,CAAA,CAAE,UAAA,EAAW,CAAE;AAChE,CAAA;AAEO,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';\n\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';\nimport { lazyComponent } from '../../utils/lazy-component';\n\n// Lazy-load component for code-splitting\nconst LazyPageSingle = lazyComponent(() =>\n import('./PageSingle').then((m) => ({ default: m.PageSingle }))\n);\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,32 +1,32 @@
1
1
  import { SORT_IDS, availableSortIds, sortOptions } from '../chunk-3LZJXKVO.js';
2
- import { category } from '../chunk-P6TJCCM3.js';
3
- import { brand } from '../chunk-IOLNWPRO.js';
4
- import { useReorderButtons, LazyTestimonials } from '../chunk-VNDUKDZG.js';
5
- import '../chunk-YBIL64R7.js';
6
- import { product, parseNextPageToken } from '../chunk-LUPDYN4T.js';
2
+ import { category } from '../chunk-67J4DMB3.js';
3
+ import { brand } from '../chunk-T2WCFT6J.js';
4
+ import { useReorderButtons, LazyTestimonials } from '../chunk-JK7WLO72.js';
5
+ import '../chunk-L22FKPMY.js';
6
+ import { product, parseNextPageToken } from '../chunk-BYP72WXK.js';
7
7
  import { Drawer } from '../chunk-6TKIUG5C.js';
8
- import { ProductCard } from '../chunk-P3D67RVR.js';
8
+ import { ProductCard } from '../chunk-2WEGBUAG.js';
9
9
  import { registry, COMPONENT_KEYS } from '../chunk-Y32RHCOH.js';
10
- import { useStore } from '../chunk-YKNDXZAD.js';
10
+ import { useStore } from '../chunk-COSCD4AH.js';
11
11
  import '../chunk-H2QBHOF2.js';
12
- import '../chunk-X5QZBD5V.js';
13
- import '../chunk-4CM6JIQF.js';
14
- import '../chunk-SXI2XBCC.js';
12
+ import '../chunk-IC6Z6BB2.js';
13
+ import '../chunk-HFWQRV3W.js';
14
+ import '../chunk-N6ZE6HUX.js';
15
15
  import '../chunk-X55R4VVK.js';
16
- import '../chunk-25UDBM27.js';
16
+ import '../chunk-DKYNZHZN.js';
17
17
  import '../chunk-OXMUPNMH.js';
18
- import '../chunk-7U5OLKOS.js';
18
+ import '../chunk-W6BDJU4X.js';
19
19
  import '../chunk-VVZNW5CB.js';
20
20
  import '../chunk-WQPG22DY.js';
21
21
  import '../chunk-GD26FI4J.js';
22
22
  import '../chunk-Q7E4TNN7.js';
23
23
  import { buildHreflangAlternates, storePageUrl } from '../chunk-RYGEIQWO.js';
24
- import { unauthorized, notFound, orThrow, useNavigate, useLocation } from '../chunk-RLJLG4EN.js';
24
+ import { unauthorized, notFound, orThrow, useNavigate, useLocation } from '../chunk-PEENIBSF.js';
25
25
  import { RouteId } from '../chunk-OUW6WESU.js';
26
26
  import '../chunk-HOJ5E2PG.js';
27
27
  import '../chunk-HI5V5X3S.js';
28
- import '../chunk-WVSGVFMM.js';
29
- import '../chunk-XHWBJYJL.js';
28
+ import '../chunk-5Y4NL57B.js';
29
+ import '../chunk-GHM37DUT.js';
30
30
  import '../chunk-MVT5AF2A.js';
31
31
  import '../chunk-Z653O7MX.js';
32
32
  import '../chunk-ZCH7W7DZ.js';
@@ -37,22 +37,22 @@ import '../chunk-7V36I5GT.js';
37
37
  import '../chunk-6WI7R2BD.js';
38
38
  import '../chunk-LFHYQ6AN.js';
39
39
  import '../chunk-OAMIDZKW.js';
40
- import '../chunk-WEKO2DAN.js';
40
+ import '../chunk-CYDQFZRF.js';
41
41
  import '../chunk-OQIIJRAS.js';
42
42
  import '../chunk-V2ZDTY6H.js';
43
- import '../chunk-5A37NING.js';
43
+ import '../chunk-BPCSMALD.js';
44
44
  import { HookSlot } from '../chunk-5XDPAKF5.js';
45
45
  import '../chunk-GCPEMNSU.js';
46
- import { getAuthToken } from '../chunk-E5DP3MHE.js';
46
+ import { getAuthToken } from '../chunk-K7BDIB3L.js';
47
47
  import '../chunk-Z5M4YYWT.js';
48
48
  import { useTranslation } from '../chunk-TYNZ5B2B.js';
49
- import { LazyBreadcrumb, Image, LazyNoContent, ProductCardSkeleton, LazyRenderWhenVisible } from '../chunk-MWG734P7.js';
49
+ import { LazyBreadcrumb, Image, LazyNoContent, ProductCardSkeleton, LazyRenderWhenVisible } from '../chunk-PYDHLM3Y.js';
50
50
  import '../chunk-AXW67SY7.js';
51
51
  import '../chunk-BYMOPN2S.js';
52
52
  import '../chunk-SKLEJJ6M.js';
53
53
  import '../chunk-6BZ5TKEV.js';
54
54
  import '../chunk-FZKRSGLP.js';
55
- import '../chunk-7V5HOZW4.js';
55
+ import '../chunk-KYMWEUN2.js';
56
56
  import '../chunk-YA6ABQB7.js';
57
57
  import '../chunk-MWYKP7CI.js';
58
58
  import '../chunk-3E3ABCPC.js';
@@ -61,6 +61,7 @@ import '../chunk-FXVII733.js';
61
61
  import { getTwilightContext } from '../chunk-6K34BCUP.js';
62
62
  import '../chunk-T72DAX7R.js';
63
63
  import { useTwilight } from '../chunk-DF6FBKDN.js';
64
+ import '../chunk-VYGA5AT5.js';
64
65
  import '../chunk-DGUM43GV.js';
65
66
  import { PageSkeleton } from '@salla.sa/twilight-components-react/skeletons';
66
67
  import { useState, useEffect, useCallback, useMemo, useRef } from 'react';