@salla.sa/twilight-theme-engine 1.0.73 → 1.0.75

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 (349) hide show
  1. package/dist/{AddToCartForm-G2HK5QB3.js → AddToCartForm-WVHFHEWG.js} +8 -6
  2. package/dist/AddToCartForm-WVHFHEWG.js.map +1 -0
  3. package/dist/{BlogAuthorPage-BU2LVISS.js → BlogAuthorPage-GBT4WZHM.js} +21 -22
  4. package/dist/BlogAuthorPage-GBT4WZHM.js.map +1 -0
  5. package/dist/{BlogCategoryPage-UR4MPDLE.js → BlogCategoryPage-IHXISMB2.js} +21 -22
  6. package/dist/BlogCategoryPage-IHXISMB2.js.map +1 -0
  7. package/dist/{BlogPage-E2XZGFOP.js → BlogPage-NSICXETX.js} +19 -20
  8. package/dist/BlogPage-NSICXETX.js.map +1 -0
  9. package/dist/{BlogSinglePage-ZK2K6WEU.js → BlogSinglePage-7XINXQYI.js} +19 -20
  10. package/dist/BlogSinglePage-7XINXQYI.js.map +1 -0
  11. package/dist/{BlogTagPage-5N4VTPDN.js → BlogTagPage-APMDE5GK.js} +21 -22
  12. package/dist/BlogTagPage-APMDE5GK.js.map +1 -0
  13. package/dist/{BrandsPage-XE7RYGXA.js → BrandsPage-S4DMAHMG.js} +20 -21
  14. package/dist/BrandsPage-S4DMAHMG.js.map +1 -0
  15. package/dist/{Breadcrumb-NX6BUSOA.js → Breadcrumb-6VP2HOUT.js} +19 -20
  16. package/dist/Breadcrumb-6VP2HOUT.js.map +1 -0
  17. package/dist/{CartItem-SO34G6GZ.js → CartItem-WGQIMDM2.js} +19 -20
  18. package/dist/CartItem-WGQIMDM2.js.map +1 -0
  19. package/dist/{CartSummary-SDTY2CR2.js → CartSummary-MI5BNX25.js} +19 -20
  20. package/dist/CartSummary-MI5BNX25.js.map +1 -0
  21. package/dist/{Copyright-C426OB5D.js → Copyright-PNRLMJ4P.js} +3 -3
  22. package/dist/{Copyright-C426OB5D.js.map → Copyright-PNRLMJ4P.js.map} +1 -1
  23. package/dist/{CustomerLayout-UXX5KJWR.js → CustomerLayout-PI2XG5GK.js} +19 -20
  24. package/dist/CustomerLayout-PI2XG5GK.js.map +1 -0
  25. package/dist/{Footer-M5QEXJ4Z.js → Footer-S7WC4G4Z.js} +19 -20
  26. package/dist/{Footer-M5QEXJ4Z.js.map → Footer-S7WC4G4Z.js.map} +1 -1
  27. package/dist/{Header-CUJ4SYDF.js → Header-NYYH3YQ3.js} +8 -7
  28. package/dist/{Header-CUJ4SYDF.js.map → Header-NYYH3YQ3.js.map} +1 -1
  29. package/dist/{LoyaltyPage-UMQ2ZWA6.js → LoyaltyPage-KR526VEL.js} +19 -20
  30. package/dist/LoyaltyPage-KR526VEL.js.map +1 -0
  31. package/dist/{LoyaltyPointsPage-5YHEQSLT.js → LoyaltyPointsPage-TYYB6ZGC.js} +3 -3
  32. package/dist/{LoyaltyPointsPage-5YHEQSLT.js.map → LoyaltyPointsPage-TYYB6ZGC.js.map} +1 -1
  33. package/dist/{MainMenu-OFQDXUGW.js → MainMenu-LBDNR3RQ.js} +6 -7
  34. package/dist/MainMenu-LBDNR3RQ.js.map +1 -0
  35. package/dist/{MasterLayout-TSHKSJ7U.js → MasterLayout-CWNZSOY3.js} +19 -20
  36. package/dist/{MasterLayout-TSHKSJ7U.js.map → MasterLayout-CWNZSOY3.js.map} +1 -1
  37. package/dist/{MobileMenu-7EKUQ4MU.js → MobileMenu-7YCDXYRB.js} +20 -21
  38. package/dist/MobileMenu-7YCDXYRB.js.map +1 -0
  39. package/dist/{NotificationsPage-TBDOI7YB.js → NotificationsPage-ZF5KLMY6.js} +19 -20
  40. package/dist/NotificationsPage-ZF5KLMY6.js.map +1 -0
  41. package/dist/{OrderSinglePage-7A37FKJE.js → OrderSinglePage-2CY447QH.js} +27 -23
  42. package/dist/OrderSinglePage-2CY447QH.js.map +1 -0
  43. package/dist/{OrdersPage-NJ3JH6SG.js → OrdersPage-ZQ574GRT.js} +19 -20
  44. package/dist/OrdersPage-ZQ574GRT.js.map +1 -0
  45. package/dist/{PageSingle-UKA2U3E5.js → PageSingle-UEWTOGK4.js} +5 -6
  46. package/dist/PageSingle-UEWTOGK4.js.map +1 -0
  47. package/dist/{ProductDetails-XDNE62ZZ.js → ProductDetails-VBABSD5L.js} +14 -7
  48. package/dist/ProductDetails-VBABSD5L.js.map +1 -0
  49. package/dist/{ProfilePage-WPJYGKYR.js → ProfilePage-MU4SS3TT.js} +19 -20
  50. package/dist/ProfilePage-MU4SS3TT.js.map +1 -0
  51. package/dist/ReviewsPage-GZVEGFYE.js +18 -0
  52. package/dist/ReviewsPage-GZVEGFYE.js.map +1 -0
  53. package/dist/{SeoCartWidget-G7NAANUN.js → SeoCartWidget-R7AGEQBX.js} +19 -20
  54. package/dist/SeoCartWidget-R7AGEQBX.js.map +1 -0
  55. package/dist/{SettingsPage-X7GPCBJL.js → SettingsPage-D2YWUYH7.js} +19 -20
  56. package/dist/SettingsPage-D2YWUYH7.js.map +1 -0
  57. package/dist/{StoreClosedNotification-NKRYCLKX.js → StoreClosedNotification-GIBLCR4I.js} +20 -21
  58. package/dist/{StoreClosedNotification-NKRYCLKX.js.map → StoreClosedNotification-GIBLCR4I.js.map} +1 -1
  59. package/dist/{TestimonialsPage-JTUWHKPU.js → TestimonialsPage-RTEHCAWG.js} +5 -6
  60. package/dist/TestimonialsPage-RTEHCAWG.js.map +1 -0
  61. package/dist/{ThankYouPage-MCMBGHO2.js → ThankYouPage-OXZGYHCQ.js} +19 -20
  62. package/dist/ThankYouPage-OXZGYHCQ.js.map +1 -0
  63. package/dist/{WalletPage-JJI6WPNT.js → WalletPage-U2IW7IMG.js} +20 -21
  64. package/dist/WalletPage-U2IW7IMG.js.map +1 -0
  65. package/dist/{WishlistPage-HAOYS7NV.js → WishlistPage-W6D7TR2M.js} +21 -22
  66. package/dist/WishlistPage-W6D7TR2M.js.map +1 -0
  67. package/dist/api/apps.js +3 -4
  68. package/dist/api/blog.js +5 -6
  69. package/dist/api/brands.js +5 -6
  70. package/dist/api/cart.d.ts +1 -1
  71. package/dist/api/cart.d.ts.map +1 -1
  72. package/dist/api/cart.js +5 -6
  73. package/dist/api/category.js +5 -6
  74. package/dist/api/client.d.ts +6 -0
  75. package/dist/api/client.d.ts.map +1 -1
  76. package/dist/api/client.js +2 -3
  77. package/dist/api/home.js +3 -4
  78. package/dist/api/loyalty.js +5 -6
  79. package/dist/api/menu.js +3 -4
  80. package/dist/api/notification.js +3 -4
  81. package/dist/api/order.js +5 -6
  82. package/dist/api/page.js +5 -6
  83. package/dist/api/product.d.ts +20 -0
  84. package/dist/api/product.d.ts.map +1 -1
  85. package/dist/api/product.js +5 -6
  86. package/dist/api/profile.js +2 -3
  87. package/dist/api/profile.js.map +1 -1
  88. package/dist/api/store.d.ts +3 -1
  89. package/dist/api/store.d.ts.map +1 -1
  90. package/dist/api/store.js +3 -4
  91. package/dist/api/translations.js +3 -4
  92. package/dist/api/user.js +3 -4
  93. package/dist/api/wallet.js +3 -4
  94. package/dist/api/wishlist.js +6 -7
  95. package/dist/{chunk-U53LIN2F.js → chunk-2AFTZGJY.js} +58 -9
  96. package/dist/chunk-2AFTZGJY.js.map +1 -0
  97. package/dist/chunk-2APQP7KK.js +40 -0
  98. package/dist/chunk-2APQP7KK.js.map +1 -0
  99. package/dist/{chunk-5DPR7GWH.js → chunk-3GZ5OOAK.js} +3 -3
  100. package/dist/{chunk-5DPR7GWH.js.map → chunk-3GZ5OOAK.js.map} +1 -1
  101. package/dist/{chunk-3EE62REP.js → chunk-3UMHUKMJ.js} +3 -3
  102. package/dist/{chunk-3EE62REP.js.map → chunk-3UMHUKMJ.js.map} +1 -1
  103. package/dist/chunk-4A5IAMNL.js +402 -0
  104. package/dist/chunk-4A5IAMNL.js.map +1 -0
  105. package/dist/{chunk-WLDDKFSZ.js → chunk-52JLMGZK.js} +4 -4
  106. package/dist/{chunk-WLDDKFSZ.js.map → chunk-52JLMGZK.js.map} +1 -1
  107. package/dist/{chunk-CMD3ARR2.js → chunk-575U6BIW.js} +58 -28
  108. package/dist/chunk-575U6BIW.js.map +1 -0
  109. package/dist/{chunk-BVSJPBJ6.js → chunk-6WI7R2BD.js} +14 -3
  110. package/dist/chunk-6WI7R2BD.js.map +1 -0
  111. package/dist/{chunk-OGVUFMLX.js → chunk-7FDT2IFI.js} +3 -3
  112. package/dist/{chunk-OGVUFMLX.js.map → chunk-7FDT2IFI.js.map} +1 -1
  113. package/dist/{chunk-2ALN2BPM.js → chunk-7HWX2PEO.js} +3 -3
  114. package/dist/{chunk-2ALN2BPM.js.map → chunk-7HWX2PEO.js.map} +1 -1
  115. package/dist/{chunk-EXBH6RGD.js → chunk-BP6LUZXJ.js} +25 -6
  116. package/dist/chunk-BP6LUZXJ.js.map +1 -0
  117. package/dist/{chunk-3YAR2SXQ.js → chunk-BSXVOHE2.js} +78 -18
  118. package/dist/chunk-BSXVOHE2.js.map +1 -0
  119. package/dist/{chunk-WYW7USLQ.js → chunk-DC7ZWXH4.js} +4 -4
  120. package/dist/{chunk-WYW7USLQ.js.map → chunk-DC7ZWXH4.js.map} +1 -1
  121. package/dist/{chunk-52ETYODY.js → chunk-EUWKQJNI.js} +4 -4
  122. package/dist/{chunk-52ETYODY.js.map → chunk-EUWKQJNI.js.map} +1 -1
  123. package/dist/{chunk-OYP5CGHU.js → chunk-F2YLRVPH.js} +3 -3
  124. package/dist/{chunk-OYP5CGHU.js.map → chunk-F2YLRVPH.js.map} +1 -1
  125. package/dist/{chunk-3IHFA2X5.js → chunk-F4FCETQT.js} +3 -3
  126. package/dist/{chunk-3IHFA2X5.js.map → chunk-F4FCETQT.js.map} +1 -1
  127. package/dist/{chunk-VFYT2VWC.js → chunk-FSCIJ55A.js} +13 -4
  128. package/dist/chunk-FSCIJ55A.js.map +1 -0
  129. package/dist/{chunk-YKFGUVF7.js → chunk-HZYFU3PZ.js} +5 -4
  130. package/dist/chunk-HZYFU3PZ.js.map +1 -0
  131. package/dist/{chunk-KOMV5SEF.js → chunk-IJYJ23SB.js} +7 -6
  132. package/dist/chunk-IJYJ23SB.js.map +1 -0
  133. package/dist/{chunk-RO6KBURF.js → chunk-J2VJGXIX.js} +7 -6
  134. package/dist/chunk-J2VJGXIX.js.map +1 -0
  135. package/dist/{chunk-HBTIZWT2.js → chunk-LCDSHSP7.js} +3 -3
  136. package/dist/{chunk-HBTIZWT2.js.map → chunk-LCDSHSP7.js.map} +1 -1
  137. package/dist/{chunk-B5FDWE4U.js → chunk-LL3X2N7L.js} +4 -4
  138. package/dist/{chunk-B5FDWE4U.js.map → chunk-LL3X2N7L.js.map} +1 -1
  139. package/dist/{chunk-RSVAPXXI.js → chunk-LLQE4JAW.js} +23 -15
  140. package/dist/chunk-LLQE4JAW.js.map +1 -0
  141. package/dist/{chunk-54XX3YPP.js → chunk-LQGSMR3X.js} +8 -8
  142. package/dist/{chunk-54XX3YPP.js.map → chunk-LQGSMR3X.js.map} +1 -1
  143. package/dist/{chunk-L3X2H2RP.js → chunk-MFYX3DFH.js} +7 -7
  144. package/dist/{chunk-L3X2H2RP.js.map → chunk-MFYX3DFH.js.map} +1 -1
  145. package/dist/{chunk-YLSG4MEK.js → chunk-MHVR2OUR.js} +4 -4
  146. package/dist/{chunk-YLSG4MEK.js.map → chunk-MHVR2OUR.js.map} +1 -1
  147. package/dist/{chunk-DIVEHHMD.js → chunk-MOANE2YM.js} +3 -3
  148. package/dist/{chunk-DIVEHHMD.js.map → chunk-MOANE2YM.js.map} +1 -1
  149. package/dist/{chunk-XVNXXF67.js → chunk-MYJL5MGW.js} +3 -3
  150. package/dist/{chunk-XVNXXF67.js.map → chunk-MYJL5MGW.js.map} +1 -1
  151. package/dist/{chunk-IXUY5RMV.js → chunk-NJQC4Z73.js} +3 -3
  152. package/dist/{chunk-IXUY5RMV.js.map → chunk-NJQC4Z73.js.map} +1 -1
  153. package/dist/{chunk-25FWAL3O.js → chunk-NJWKVTQD.js} +4 -4
  154. package/dist/{chunk-25FWAL3O.js.map → chunk-NJWKVTQD.js.map} +1 -1
  155. package/dist/{chunk-UAY6LTWB.js → chunk-O6L3BZBB.js} +4 -4
  156. package/dist/{chunk-UAY6LTWB.js.map → chunk-O6L3BZBB.js.map} +1 -1
  157. package/dist/{chunk-JZ7BOB4G.js → chunk-ODF4CAF4.js} +4 -4
  158. package/dist/{chunk-JZ7BOB4G.js.map → chunk-ODF4CAF4.js.map} +1 -1
  159. package/dist/{chunk-ZGHRSRDO.js → chunk-OUW6WESU.js} +3 -2
  160. package/dist/chunk-OUW6WESU.js.map +1 -0
  161. package/dist/{chunk-R5MZV6KW.js → chunk-RYFIWQ6L.js} +4 -4
  162. package/dist/{chunk-R5MZV6KW.js.map → chunk-RYFIWQ6L.js.map} +1 -1
  163. package/dist/{chunk-5AFTFN72.js → chunk-SLXGP6KF.js} +3 -3
  164. package/dist/{chunk-5AFTFN72.js.map → chunk-SLXGP6KF.js.map} +1 -1
  165. package/dist/chunk-SP2OVEOB.js +14 -0
  166. package/dist/{chunk-4LVBS3VI.js.map → chunk-SP2OVEOB.js.map} +1 -1
  167. package/dist/{chunk-L2QUP6J3.js → chunk-UJKJROMG.js} +6 -6
  168. package/dist/{chunk-L2QUP6J3.js.map → chunk-UJKJROMG.js.map} +1 -1
  169. package/dist/{chunk-MISI3T6V.js → chunk-VPNKJFT7.js} +3 -3
  170. package/dist/{chunk-MISI3T6V.js.map → chunk-VPNKJFT7.js.map} +1 -1
  171. package/dist/{chunk-SDIQHTDG.js → chunk-VPPSRRGK.js} +19 -5
  172. package/dist/chunk-VPPSRRGK.js.map +1 -0
  173. package/dist/{chunk-3CYIB6BL.js → chunk-W3LADQOR.js} +3 -3
  174. package/dist/{chunk-3CYIB6BL.js.map → chunk-W3LADQOR.js.map} +1 -1
  175. package/dist/{chunk-HFISEQPK.js → chunk-WU5DIIHB.js} +8 -8
  176. package/dist/{chunk-HFISEQPK.js.map → chunk-WU5DIIHB.js.map} +1 -1
  177. package/dist/{chunk-WSXRUOI2.js → chunk-WV3B2FOG.js} +4 -4
  178. package/dist/{chunk-WSXRUOI2.js.map → chunk-WV3B2FOG.js.map} +1 -1
  179. package/dist/{chunk-L5K7VBOH.js → chunk-XON5AXAP.js} +3 -3
  180. package/dist/{chunk-L5K7VBOH.js.map → chunk-XON5AXAP.js.map} +1 -1
  181. package/dist/{chunk-J427UFSZ.js → chunk-YJAMQRFS.js} +5 -6
  182. package/dist/chunk-YJAMQRFS.js.map +1 -0
  183. package/dist/components/cart/index.js +1 -1
  184. package/dist/components/common/index.js +1 -1
  185. package/dist/components/drawer/index.js +17 -18
  186. package/dist/components/home/ReorderProducts.d.ts +7 -0
  187. package/dist/components/home/ReorderProducts.d.ts.map +1 -0
  188. package/dist/components/home/SquarePhotos.d.ts +2 -1
  189. package/dist/components/home/SquarePhotos.d.ts.map +1 -1
  190. package/dist/components/home/index.d.ts +2 -0
  191. package/dist/components/home/index.d.ts.map +1 -1
  192. package/dist/components/home/index.js +21 -22
  193. package/dist/components/home/reorder-hooks.d.ts +6 -0
  194. package/dist/components/home/reorder-hooks.d.ts.map +1 -0
  195. package/dist/components/layout/index.js +1 -1
  196. package/dist/components/product/AddToCartForm.d.ts.map +1 -1
  197. package/dist/components/product/ProductDetails.d.ts.map +1 -1
  198. package/dist/components/product/index.js +18 -19
  199. package/dist/components/snippets/AppsSnippets.d.ts +2 -0
  200. package/dist/components/snippets/AppsSnippets.d.ts.map +1 -1
  201. package/dist/components/store/index.js +19 -20
  202. package/dist/components/store/index.js.map +1 -1
  203. package/dist/components/toast/index.js +3 -4
  204. package/dist/components/toast/index.js.map +1 -1
  205. package/dist/document-class-SA4RND4Z.js +24 -0
  206. package/dist/{document-class-DOQDO2DN.js.map → document-class-SA4RND4Z.js.map} +1 -1
  207. package/dist/hooks/index.js +17 -18
  208. package/dist/hooks/useComments.js +2 -3
  209. package/dist/hooks/useCoupon.d.ts +0 -41
  210. package/dist/hooks/useCoupon.d.ts.map +1 -1
  211. package/dist/hooks/useCoupon.js +3 -1
  212. package/dist/hooks/useGtm.js +17 -18
  213. package/dist/hooks/useMoney.js +17 -18
  214. package/dist/hooks/useProduct.js +2 -3
  215. package/dist/hooks/useStore.js +17 -18
  216. package/dist/hooks/useUser.js +4 -5
  217. package/dist/hooks/useWishlist.d.ts.map +1 -1
  218. package/dist/hooks/useWishlist.js +3 -1
  219. package/dist/index.js +17 -18
  220. package/dist/index.js.map +1 -1
  221. package/dist/native-app/index.js +2 -3
  222. package/dist/navigation-KMDVLHXU.js +13 -0
  223. package/dist/{navigation-P3GZOWUU.js.map → navigation-KMDVLHXU.js.map} +1 -1
  224. package/dist/{navigation-TA3I3XEC.js → navigation-WEV6XJJT.js} +6 -5
  225. package/dist/navigation-WEV6XJJT.js.map +1 -0
  226. package/dist/{not-found-6B6QSJYA.js → not-found-LB6HMAJ5.js} +58 -33
  227. package/dist/not-found-LB6HMAJ5.js.map +1 -0
  228. package/dist/providers/NavigationProvider.d.ts +9 -0
  229. package/dist/providers/NavigationProvider.d.ts.map +1 -1
  230. package/dist/providers/index.js +17 -18
  231. package/dist/providers/twilight-init.d.ts.map +1 -1
  232. package/dist/router/route-ids.d.ts +1 -0
  233. package/dist/router/route-ids.d.ts.map +1 -1
  234. package/dist/routes/account/orders/single/OrderHeader.d.ts.map +1 -1
  235. package/dist/routes/account/orders.js +6 -7
  236. package/dist/routes/account.js +15 -16
  237. package/dist/routes/account.js.map +1 -1
  238. package/dist/routes/blog.js +10 -11
  239. package/dist/routes/blog.js.map +1 -1
  240. package/dist/routes/brands.js +6 -7
  241. package/dist/routes/brands.js.map +1 -1
  242. package/dist/routes/cart.js +25 -26
  243. package/dist/routes/cart.js.map +1 -1
  244. package/dist/routes/home/HomePage.d.ts.map +1 -1
  245. package/dist/routes/home.js +22 -23
  246. package/dist/routes/index.d.ts +1 -1
  247. package/dist/routes/index.d.ts.map +1 -1
  248. package/dist/routes/index.js +5 -4
  249. package/dist/routes/loyalty.js +7 -8
  250. package/dist/routes/loyalty.js.map +1 -1
  251. package/dist/routes/page.js +6 -7
  252. package/dist/routes/page.js.map +1 -1
  253. package/dist/routes/product/index.d.ts.map +1 -1
  254. package/dist/routes/product-listing/ProductListPage.d.ts.map +1 -1
  255. package/dist/routes/product-listing/loader.d.ts.map +1 -1
  256. package/dist/routes/product-listing/types.d.ts +1 -1
  257. package/dist/routes/product-listing/types.d.ts.map +1 -1
  258. package/dist/routes/product-listing.js +203 -183
  259. package/dist/routes/product-listing.js.map +1 -1
  260. package/dist/routes/product-short-link.d.ts +9 -5
  261. package/dist/routes/product-short-link.d.ts.map +1 -1
  262. package/dist/routes/product.js +22 -23
  263. package/dist/routes/product.js.map +1 -1
  264. package/dist/routes/root/beforeLoad.d.ts +28 -0
  265. package/dist/routes/root/beforeLoad.d.ts.map +1 -1
  266. package/dist/routes/seo-redirects.js +5 -4
  267. package/dist/routes/testimonials/ReviewsPage.d.ts +3 -0
  268. package/dist/routes/testimonials/ReviewsPage.d.ts.map +1 -0
  269. package/dist/routes/testimonials/index.d.ts +15 -3
  270. package/dist/routes/testimonials/index.d.ts.map +1 -1
  271. package/dist/routes/testimonials/loader.d.ts +3 -1
  272. package/dist/routes/testimonials/loader.d.ts.map +1 -1
  273. package/dist/routes/testimonials/types.d.ts +3 -0
  274. package/dist/routes/testimonials/types.d.ts.map +1 -1
  275. package/dist/routes/testimonials.js +38 -3
  276. package/dist/routes/testimonials.js.map +1 -1
  277. package/dist/routes/thank-you.js +6 -7
  278. package/dist/routes/thank-you.js.map +1 -1
  279. package/dist/skeleton.js +22 -23
  280. package/dist/tanstack/document-class.d.ts.map +1 -1
  281. package/dist/tanstack/middleware/twilight.d.ts.map +1 -1
  282. package/dist/tanstack/router.d.ts.map +1 -1
  283. package/dist/tanstack.js +16 -17
  284. package/dist/tanstack.js.map +1 -1
  285. package/dist/types/index.d.ts +3 -1
  286. package/dist/types/index.d.ts.map +1 -1
  287. package/dist/types/salla-sdk.d.ts +4 -0
  288. package/dist/types/salla-sdk.d.ts.map +1 -1
  289. package/dist/utils/cookies.d.ts +31 -0
  290. package/dist/utils/cookies.d.ts.map +1 -1
  291. package/dist/utils/index.js +4 -4
  292. package/dist/utils/sdk-events.d.ts +6 -0
  293. package/dist/utils/sdk-events.d.ts.map +1 -1
  294. package/dist/utils/theme-version.d.ts +0 -29
  295. package/dist/utils/theme-version.d.ts.map +1 -1
  296. package/dist/vite/adapters/tanstack.adapter.d.ts.map +1 -1
  297. package/dist/vite/index.js +60 -1
  298. package/dist/vite/index.js.map +1 -1
  299. package/package.json +1 -1
  300. package/dist/AddToCartForm-G2HK5QB3.js.map +0 -1
  301. package/dist/BlogAuthorPage-BU2LVISS.js.map +0 -1
  302. package/dist/BlogCategoryPage-UR4MPDLE.js.map +0 -1
  303. package/dist/BlogPage-E2XZGFOP.js.map +0 -1
  304. package/dist/BlogSinglePage-ZK2K6WEU.js.map +0 -1
  305. package/dist/BlogTagPage-5N4VTPDN.js.map +0 -1
  306. package/dist/BrandsPage-XE7RYGXA.js.map +0 -1
  307. package/dist/Breadcrumb-NX6BUSOA.js.map +0 -1
  308. package/dist/CartItem-SO34G6GZ.js.map +0 -1
  309. package/dist/CartSummary-SDTY2CR2.js.map +0 -1
  310. package/dist/CustomerLayout-UXX5KJWR.js.map +0 -1
  311. package/dist/LoyaltyPage-UMQ2ZWA6.js.map +0 -1
  312. package/dist/MainMenu-OFQDXUGW.js.map +0 -1
  313. package/dist/MobileMenu-7EKUQ4MU.js.map +0 -1
  314. package/dist/NotificationsPage-TBDOI7YB.js.map +0 -1
  315. package/dist/OrderSinglePage-7A37FKJE.js.map +0 -1
  316. package/dist/OrdersPage-NJ3JH6SG.js.map +0 -1
  317. package/dist/PageSingle-UKA2U3E5.js.map +0 -1
  318. package/dist/ProductDetails-XDNE62ZZ.js.map +0 -1
  319. package/dist/ProfilePage-WPJYGKYR.js.map +0 -1
  320. package/dist/SeoCartWidget-G7NAANUN.js.map +0 -1
  321. package/dist/SettingsPage-X7GPCBJL.js.map +0 -1
  322. package/dist/TestimonialsPage-JTUWHKPU.js.map +0 -1
  323. package/dist/ThankYouPage-MCMBGHO2.js.map +0 -1
  324. package/dist/WalletPage-JJI6WPNT.js.map +0 -1
  325. package/dist/WishlistPage-HAOYS7NV.js.map +0 -1
  326. package/dist/chunk-3YAR2SXQ.js.map +0 -1
  327. package/dist/chunk-4LVBS3VI.js +0 -14
  328. package/dist/chunk-5ZR2HKZ7.js +0 -14
  329. package/dist/chunk-5ZR2HKZ7.js.map +0 -1
  330. package/dist/chunk-BVSJPBJ6.js.map +0 -1
  331. package/dist/chunk-CMD3ARR2.js.map +0 -1
  332. package/dist/chunk-EXBH6RGD.js.map +0 -1
  333. package/dist/chunk-J427UFSZ.js.map +0 -1
  334. package/dist/chunk-KOMV5SEF.js.map +0 -1
  335. package/dist/chunk-LPQFTXBB.js +0 -203
  336. package/dist/chunk-LPQFTXBB.js.map +0 -1
  337. package/dist/chunk-QVJDYSCT.js +0 -166
  338. package/dist/chunk-QVJDYSCT.js.map +0 -1
  339. package/dist/chunk-RO6KBURF.js.map +0 -1
  340. package/dist/chunk-RSVAPXXI.js.map +0 -1
  341. package/dist/chunk-SDIQHTDG.js.map +0 -1
  342. package/dist/chunk-U53LIN2F.js.map +0 -1
  343. package/dist/chunk-VFYT2VWC.js.map +0 -1
  344. package/dist/chunk-YKFGUVF7.js.map +0 -1
  345. package/dist/chunk-ZGHRSRDO.js.map +0 -1
  346. package/dist/document-class-DOQDO2DN.js +0 -25
  347. package/dist/navigation-P3GZOWUU.js +0 -13
  348. package/dist/navigation-TA3I3XEC.js.map +0 -1
  349. package/dist/not-found-6B6QSJYA.js.map +0 -1
@@ -1,5 +1,6 @@
1
1
  export declare const AUTH_TOKEN_COOKIE_NAME = "token";
2
2
  export declare const SCOPE_COOKIE_NAME = "scope";
3
+ export declare const CURRENCY_COOKIE_NAME = "s-curr";
3
4
  /**
4
5
  * Which store this request is for, when the hostname does not say.
5
6
  *
@@ -217,6 +218,10 @@ export interface ActiveScope {
217
218
  * `salla.storage` is absent.
218
219
  */
219
220
  export declare function extractScopeFromCookies(cookieHeader: string | null): ActiveScope | null;
221
+ /** `value` when it is a currency code, else null: the cookie's value goes into a request header. */
222
+ export declare function toCurrencyCode(value: string | null | undefined): string | null;
223
+ /** The currency the visitor chose (`s-curr`, written by the SDK), or null for the store's own. */
224
+ export declare function extractCurrencyFromCookies(cookieHeader: string | null): string | null;
220
225
  /** {@link extractScopeFromCookies} reduced to the id. */
221
226
  export declare function extractScopeIdFromCookies(cookieHeader: string | null): string | null;
222
227
  /**
@@ -225,10 +230,36 @@ export declare function extractScopeIdFromCookies(cookieHeader: string | null):
225
230
  * Returns `undefined` when the SDK storage API isn't ready yet — deliberately
226
231
  * distinct from `null` ("no branch selected"), so callers can't mistake a
227
232
  * not-yet-hydrated SDK for a cleared selection. Client-only.
233
+ *
234
+ * Storage the SDK has loaded but not yet initialised counts as not ready: it is
235
+ * what the previous visit left, and `init` replaces it with the scope the page
236
+ * was rendered for and the one `?scope=` names. Read before that, it would
237
+ * outvote the `scope` cookie the server wrote for this page.
228
238
  */
229
239
  export declare function readSdkScope(): ActiveScope | null | undefined;
240
+ /**
241
+ * The scope a page URL names, the way Twig storefronts switch market: the SDK's
242
+ * scopes modal reloads the page with `?scope=<id>`, and a branch picked for it
243
+ * travels as `allocation_type` / `allocation_id`. Null when the URL names none
244
+ * or names it malformed; an allocation is kept only when both halves are valid.
245
+ */
246
+ export declare function extractScopeFromUrl(url: string): ActiveScope | null;
247
+ /**
248
+ * The scope a request is for: the one its URL names, else the `scope` cookie.
249
+ *
250
+ * The URL wins because it is the newer choice: it is how a market is switched,
251
+ * and the cookie still holds the one switched from. Merged with that cookie only
252
+ * when both name the same scope; a different scope does not inherit the previous
253
+ * one's branch. The type is store-wide, so it comes from the cookie, or is the
254
+ * multi-market one when there is no cookie yet — the settings answer corrects it
255
+ * for a store that browses by branch or city (see `rootBeforeLoad`).
256
+ */
257
+ export declare function resolveRequestScope(url: string, cookieHeader: string | null): ActiveScope | null;
230
258
  /** {@link readSdkScope} reduced to the id; keeps the not-ready/none distinction. */
231
259
  export declare function readSdkScopeId(): string | null | undefined;
260
+ /** One year — the SDK keeps the selected branch in localStorage indefinitely. */
261
+ export declare const SCOPE_COOKIE_MAX_AGE: number;
262
+ export declare const sameScope: (a: ActiveScope | null, b: ActiveScope | null) => boolean;
232
263
  /**
233
264
  * Mirrors the scope the Salla SDK selected into the `scope` cookie so the SERVER
234
265
  * can see it. The SDK persists the selection in localStorage ONLY and writes no
@@ -1 +1 @@
1
- {"version":3,"file":"cookies.d.ts","sourceRoot":"","sources":["../../src/utils/cookies.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cookies.d.ts","sourceRoot":"","sources":["../../src/utils/cookies.ts"],"names":[],"mappings":"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"}
@@ -1,15 +1,15 @@
1
1
  export { stripUnsafeHtml } from '../chunk-RUHSV4Z6.js';
2
2
  export { formatSallaPlural } from '../chunk-BT6HEEAP.js';
3
- export { dispatchRouteChanged } from '../chunk-5ZR2HKZ7.js';
3
+ export { dispatchRouteChanged } from '../chunk-2APQP7KK.js';
4
4
  export { mergeHead, resolveHead, setHeadAdapter } from '../chunk-GD26FI4J.js';
5
5
  export { sortOptions } from '../chunk-6Z4MOC4S.js';
6
6
  export { buildBaseHead, buildHreflangAlternates, localeToOgLocale } from '../chunk-TZ3E5BN4.js';
7
7
  export { color } from '../chunk-VVZNW5CB.js';
8
- export { applyAppScopeMocks, registerThemeHookSlots } from '../chunk-HBTIZWT2.js';
8
+ export { applyAppScopeMocks, registerThemeHookSlots } from '../chunk-LCDSHSP7.js';
9
+ import '../chunk-BP6LUZXJ.js';
9
10
  export { asset, cdn, isPlaceholder } from '../chunk-ZCH7W7DZ.js';
10
11
  export { mergeDocumentDescriptors, mergeElementAttrs, normalizeClasses, syncAttrsToElement, toReactProps } from '../chunk-CW625T2E.js';
11
- export { getSallaSDK, getStoreIdentifier, onSallaEvent, whenSallaLoaded, whenSallaReady } from '../chunk-QVJDYSCT.js';
12
- export { AUTH_TOKEN_COOKIE_NAME, clearAuthTokenCookie, extractTokenFromCookies } from '../chunk-LPQFTXBB.js';
12
+ export { AUTH_TOKEN_COOKIE_NAME, clearAuthTokenCookie, extractTokenFromCookies, getSallaSDK, getStoreIdentifier, onSallaEvent, whenSallaLoaded, whenSallaReady } from '../chunk-4A5IAMNL.js';
13
13
  import '../chunk-N2S25NXP.js';
14
14
  import '../chunk-T72DAX7R.js';
15
15
  import '../chunk-DGUM43GV.js';
@@ -1,4 +1,5 @@
1
1
  import type { PageContext } from '../twilight/context';
2
+ import type { Product } from '../types';
2
3
  /**
3
4
  * Payload dispatched via `salla.event.dispatch('route::changed', payload)`
4
5
  * after each client-side navigation completes.
@@ -22,4 +23,9 @@ export type RouteChangedEvent = PageContext;
22
23
  * Each adapter should call this after navigation resolves.
23
24
  */
24
25
  export declare function dispatchRouteChanged(): void;
26
+ /**
27
+ * Dispatch `Product Viewed`, which Twig's product page hands the SDK through `salla.init`'s
28
+ * `events`: store analytics, pixels and apps that remember viewed products listen for it.
29
+ */
30
+ export declare function dispatchProductViewed(product: Product): void;
25
31
  //# sourceMappingURL=sdk-events.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sdk-events.d.ts","sourceRoot":"","sources":["../../src/utils/sdk-events.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAEvD;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,iBAAiB,GAAG,WAAW,CAAC;AAE5C;;;;;;GAMG;AACH,wBAAgB,oBAAoB,IAAI,IAAI,CAQ3C"}
1
+ {"version":3,"file":"sdk-events.d.ts","sourceRoot":"","sources":["../../src/utils/sdk-events.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAIxC;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,iBAAiB,GAAG,WAAW,CAAC;AAE5C;;;;;;GAMG;AACH,wBAAgB,oBAAoB,IAAI,IAAI,CAQ3C;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAwB5D"}
@@ -13,34 +13,5 @@
13
13
  * once the dispatcher has stripped `?versionId=` from the URL.
14
14
  */
15
15
  export declare function requestedThemeVersionId(): string | null;
16
- /**
17
- * The version every Salla API call is answered with — what goes in `s-version-id`.
18
- *
19
- * The requested version outranks the settings, because a request that named one
20
- * is the only reason this is ever anything but the live version: falling back to
21
- * the settings there would let the first answer overwrite the question.
22
- *
23
- * The settings' own `theme.profile.id` stays as the fallback, unchanged. It is
24
- * what this header has always carried, and on an ordinary storefront it still
25
- * is — it keeps the rest of a page's calls pinned to the version the settings
26
- * call resolved, rather than letting a version go live mid-render.
27
- *
28
- * That pin is only good for the scope the settings were requested with. Each
29
- * market (scope) has its own version, and the API lets a named version outrank
30
- * the market's: once the shopper switches market, the loaded settings still
31
- * describe the previous one, and replaying their version — on the settings call
32
- * for the new market first of all — gets the previous market's theme back, for
33
- * good. So the version is replayed only while the active scope is the one
34
- * `store.settings` stamped on them (`requestedScopeId`); otherwise nothing is
35
- * sent and the API picks the version of the scope on the request. That covers a
36
- * market selected, switched, or cleared.
37
- *
38
- * `activeScopeId` is passed in by the caller that already resolved the scope for
39
- * its `s-scope-*` headers.
40
- *
41
- * Reading the settings is guarded because `getTwilightContext().settings` throws
42
- * a `SettingsError` when they have not loaded — which is the normal state on the
43
- * very first call, the settings call itself.
44
- */
45
16
  export declare function resolveThemeVersionId(activeScopeId?: string | null): string | null;
46
17
  //# sourceMappingURL=theme-version.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"theme-version.d.ts","sourceRoot":"","sources":["../../src/utils/theme-version.ts"],"names":[],"mappings":"AAsBA;;;;;;;;;;;;;GAaG;AACH,wBAAgB,uBAAuB,IAAI,MAAM,GAAG,IAAI,CAKvD;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAgB,qBAAqB,CAAC,aAAa,GAAE,MAAM,GAAG,IAAW,GAAG,MAAM,GAAG,IAAI,CAaxF"}
1
+ {"version":3,"file":"theme-version.d.ts","sourceRoot":"","sources":["../../src/utils/theme-version.ts"],"names":[],"mappings":"AAuBA;;;;;;;;;;;;;GAaG;AACH,wBAAgB,uBAAuB,IAAI,MAAM,GAAG,IAAI,CAKvD;AA0CD,wBAAgB,qBAAqB,CAAC,aAAa,GAAE,MAAM,GAAG,IAAW,GAAG,MAAM,GAAG,IAAI,CAaxF"}
@@ -1 +1 @@
1
- {"version":3,"file":"tanstack.adapter.d.ts","sourceRoot":"","sources":["../../../src/vite/adapters/tanstack.adapter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiEG;AAWH,OAAO,KAAK,EACV,gBAAgB,EAGhB,aAAa,EACd,MAAM,UAAU,CAAC;AAkBlB,eAAO,MAAM,mBAAmB,EAAE,aAAa,EAyP9C,CAAC;AA+zBF,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,aAAa,EAAE,EACvB,aAAa,EAAE,MAAM,EACrB,SAAS,EAAE,MAAM,GAChB,OAAO,CAwCT;AAED,eAAO,MAAM,eAAe,EAAE,gBA+N7B,CAAC"}
1
+ {"version":3,"file":"tanstack.adapter.d.ts","sourceRoot":"","sources":["../../../src/vite/adapters/tanstack.adapter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiEG;AAWH,OAAO,KAAK,EACV,gBAAgB,EAGhB,aAAa,EACd,MAAM,UAAU,CAAC;AAkBlB,eAAO,MAAM,mBAAmB,EAAE,aAAa,EAuQ9C,CAAC;AA82BF,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,aAAa,EAAE,EACvB,aAAa,EAAE,MAAM,EACrB,SAAS,EAAE,MAAM,GAChB,OAAO,CAwCT;AAED,eAAO,MAAM,eAAe,EAAE,gBA+N7B,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import { tanstackHeadAdapter } from '../chunk-BE3JDKE2.js';
2
2
  import { nextjsHeadAdapter } from '../chunk-HOSHJBPS.js';
3
3
  import { setHeadAdapter } from '../chunk-GD26FI4J.js';
4
- import { RouteId } from '../chunk-ZGHRSRDO.js';
4
+ import { RouteId } from '../chunk-OUW6WESU.js';
5
5
  import '../chunk-N2S25NXP.js';
6
6
  import '../chunk-T72DAX7R.js';
7
7
  import '../chunk-DGUM43GV.js';
@@ -1641,6 +1641,13 @@ var DEFAULT_BASE_ROUTES = [
1641
1641
  factory: "createOffersRouteConfig",
1642
1642
  id: RouteId.PRODUCT_INDEX_OFFERS
1643
1643
  },
1644
+ {
1645
+ // Twig's products page, `?source=` picking the list (the home's "order again" links to `reorder`).
1646
+ path: "/products",
1647
+ file: "products.tsx",
1648
+ factory: "createProductsRouteConfig",
1649
+ id: RouteId.PRODUCT_INDEX
1650
+ },
1644
1651
  // Blog routes
1645
1652
  { path: "/blog", file: "blog.tsx", factory: "createBlogRouteConfig", id: RouteId.BLOG_INDEX },
1646
1653
  {
@@ -1815,6 +1822,13 @@ var DEFAULT_BASE_ROUTES = [
1815
1822
  factory: "createTestimonialsRouteConfig",
1816
1823
  id: RouteId.TESTIMONIALS
1817
1824
  },
1825
+ {
1826
+ // Twig's product reviews page, which store menus link to.
1827
+ path: "/reviews",
1828
+ file: "reviews.tsx",
1829
+ factory: "createReviewsRouteConfig",
1830
+ id: RouteId.REVIEWS
1831
+ },
1818
1832
  {
1819
1833
  // Salla's platform redirects post-payment to /{locale}/thankyou/{orderId} (legacy, no hyphen).
1820
1834
  path: "/thankyou/$orderId",
@@ -1916,6 +1930,7 @@ var FACTORY_TO_MODULE = {
1916
1930
  createLatestProductsRouteConfig: "ProductListing",
1917
1931
  createMostSalesProductsRouteConfig: "ProductListing",
1918
1932
  createOffersRouteConfig: "ProductListing",
1933
+ createProductsRouteConfig: "ProductListing",
1919
1934
  createSlugCategoryRouteConfig: "ProductListing",
1920
1935
  createSlugTagRouteConfig: "ProductListing",
1921
1936
  createTagRouteConfig: "ProductListing",
@@ -1937,6 +1952,7 @@ var FACTORY_TO_MODULE = {
1937
1952
  createLoyaltyRouteConfig: "Loyalty",
1938
1953
  createLoyaltyPointsRouteConfig: "LoyaltyPoints",
1939
1954
  createTestimonialsRouteConfig: "Testimonials",
1955
+ createReviewsRouteConfig: "Reviews",
1940
1956
  createThankYouRouteConfig: "ThankYou",
1941
1957
  // Other routes
1942
1958
  createSlugProductRouteConfig: "Product",
@@ -1979,6 +1995,7 @@ var MODULE_SUBPATH = {
1979
1995
  LoyaltyPoints: "loyalty",
1980
1996
  PageSingle: "page",
1981
1997
  Testimonials: "testimonials",
1998
+ Reviews: "testimonials",
1982
1999
  ThankYou: "thank-you",
1983
2000
  Product: "product",
1984
2001
  slugBrandRedirect: "seo-redirects",
@@ -2009,6 +2026,7 @@ var MODULE_LOADER_TYPE = {
2009
2026
  LoyaltyPoints: "LoyaltyPointsPageProps",
2010
2027
  PageSingle: "PageSingleProps",
2011
2028
  Testimonials: "TestimonialsPageProps",
2029
+ Reviews: "ReviewsPageProps",
2012
2030
  ThankYou: "ThankYouPageProps",
2013
2031
  Product: "ProductPageProps"
2014
2032
  };
@@ -2223,6 +2241,47 @@ export const Route = createFileRoute('${tanstackRoutePath}')({
2223
2241
  * following React best practices for data fetching in route components.
2224
2242
  */
2225
2243
  ${componentFn2}
2244
+ `;
2245
+ }
2246
+ if (route.factory === "createProductsRouteConfig") {
2247
+ return `// @auto-generated
2248
+ import { createFileRoute } from '@tanstack/react-router';
2249
+ import { ${importName} } from '${moduleImport}';${typeImport}${extraTypeImport}
2250
+ import { withHead } from '${baseImport.replace("/routes", "")}/tanstack';
2251
+
2252
+ const SOURCES = ['latest', 'sales', 'offers', 'reorder'] as const;
2253
+ type Source = (typeof SOURCES)[number];
2254
+
2255
+ /**
2256
+ * Products route configuration: \`?source=\` picks the list, the latest products by default.
2257
+ */
2258
+ export const Route = createFileRoute('${tanstackRoutePath}')({
2259
+ validateSearch: (search: Record<string, unknown>) => {
2260
+ const page = Number(search.page) || 1;
2261
+ const sort = (search.sort as string) || undefined;
2262
+ const source = SOURCES.find((s) => s === search.source) ?? 'latest';
2263
+ return { source: source as Source, ...(page > 1 ? { page } : {}), ...(sort ? { sort } : {}) };
2264
+ },
2265
+ loaderDeps: ({ search }) => ({ source: search.source, page: search.page, sort: search.sort }),
2266
+ loader: ({ deps, params }): Promise<${loaderType}> =>
2267
+ ${importName}.loader({
2268
+ params: { source: deps.source },
2269
+ search: { page: deps.page, sort: deps.sort },
2270
+ locale: params.locale,
2271
+ }),
2272
+ head: withHead(${importName}),
2273
+ component: ${importName}Component,
2274
+ });
2275
+
2276
+ /**
2277
+ * Products page component.
2278
+ * Uses Route.useLoaderData() to access the data loaded by the route loader,
2279
+ * following React best practices for data fetching in route components.
2280
+ */
2281
+ function ${importName}Component() {
2282
+ const data: ${loaderType} = Route.useLoaderData();
2283
+ return <${importName}.Component {...data} />;
2284
+ }
2226
2285
  `;
2227
2286
  }
2228
2287
  const isDeferred = DEFERRED_ROUTES.has(moduleName);