@salla.sa/twilight-theme-engine 1.0.23 → 1.0.25

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 (265) hide show
  1. package/dist/{AddToCartForm-5P2QQGOG.js → AddToCartForm-WPIPBUQL.js} +3 -3
  2. package/dist/{AddToCartForm-5P2QQGOG.js.map → AddToCartForm-WPIPBUQL.js.map} +1 -1
  3. package/dist/{BlogAuthorPage-QJLGMSK3.js → BlogAuthorPage-2BNMHWWQ.js} +15 -13
  4. package/dist/BlogAuthorPage-2BNMHWWQ.js.map +1 -0
  5. package/dist/{BlogCategoryPage-H7VYN7OV.js → BlogCategoryPage-EW4BRQ6M.js} +15 -13
  6. package/dist/BlogCategoryPage-EW4BRQ6M.js.map +1 -0
  7. package/dist/{BlogPage-LWAQ6ZVO.js → BlogPage-CMBLRPXE.js} +13 -11
  8. package/dist/BlogPage-CMBLRPXE.js.map +1 -0
  9. package/dist/{BlogSinglePage-DMAMK26P.js → BlogSinglePage-RQ426KJV.js} +13 -11
  10. package/dist/BlogSinglePage-RQ426KJV.js.map +1 -0
  11. package/dist/{BlogTagPage-6URVT6AD.js → BlogTagPage-PR2PCR3G.js} +15 -13
  12. package/dist/BlogTagPage-PR2PCR3G.js.map +1 -0
  13. package/dist/{BrandsPage-AANQU2O3.js → BrandsPage-OML3YEZW.js} +13 -11
  14. package/dist/BrandsPage-OML3YEZW.js.map +1 -0
  15. package/dist/{Breadcrumb-UAMFZYT6.js → Breadcrumb-VZTVPMBA.js} +13 -11
  16. package/dist/Breadcrumb-VZTVPMBA.js.map +1 -0
  17. package/dist/{CartItem-3677CNHU.js → CartItem-R6CX4WWE.js} +13 -11
  18. package/dist/CartItem-R6CX4WWE.js.map +1 -0
  19. package/dist/{CartSummary-BJJNE6C5.js → CartSummary-SF7ZVGB5.js} +13 -11
  20. package/dist/CartSummary-SF7ZVGB5.js.map +1 -0
  21. package/dist/{Copyright-DHEUTAZQ.js → Copyright-WY4ULIVM.js} +3 -3
  22. package/dist/{Copyright-DHEUTAZQ.js.map → Copyright-WY4ULIVM.js.map} +1 -1
  23. package/dist/{CustomerLayout-SG2CUIJU.js → CustomerLayout-ZMGTIPRX.js} +13 -11
  24. package/dist/CustomerLayout-ZMGTIPRX.js.map +1 -0
  25. package/dist/{Footer-OHHHBUAR.js → Footer-LY6XFRXY.js} +13 -11
  26. package/dist/{Footer-OHHHBUAR.js.map → Footer-LY6XFRXY.js.map} +1 -1
  27. package/dist/{Header-NIEPJXYE.js → Header-5Y7JZ3L2.js} +6 -6
  28. package/dist/{Header-NIEPJXYE.js.map → Header-5Y7JZ3L2.js.map} +1 -1
  29. package/dist/{LoyaltyPage-YBVHG57L.js → LoyaltyPage-HZNW4DKC.js} +14 -12
  30. package/dist/LoyaltyPage-HZNW4DKC.js.map +1 -0
  31. package/dist/{MainMenu-U6WGGXHK.js → MainMenu-LNNQ7UJP.js} +7 -7
  32. package/dist/{MainMenu-U6WGGXHK.js.map → MainMenu-LNNQ7UJP.js.map} +1 -1
  33. package/dist/{MasterLayout-YOBUFJNN.js → MasterLayout-UX5OGXUM.js} +13 -11
  34. package/dist/{MasterLayout-YOBUFJNN.js.map → MasterLayout-UX5OGXUM.js.map} +1 -1
  35. package/dist/{MobileMenu-DNMUVXPY.js → MobileMenu-P42OPEOC.js} +14 -12
  36. package/dist/MobileMenu-P42OPEOC.js.map +1 -0
  37. package/dist/{NotificationsPage-X7PIHUNY.js → NotificationsPage-U2FJRK6D.js} +13 -11
  38. package/dist/NotificationsPage-U2FJRK6D.js.map +1 -0
  39. package/dist/{OrderSinglePage-E7SXRGRF.js → OrderSinglePage-HCP2JVON.js} +14 -12
  40. package/dist/OrderSinglePage-HCP2JVON.js.map +1 -0
  41. package/dist/{OrdersPage-G6HBVJKI.js → OrdersPage-XBDTYHXF.js} +14 -12
  42. package/dist/OrdersPage-XBDTYHXF.js.map +1 -0
  43. package/dist/{PageSingle-PVGXNR42.js → PageSingle-RT7X3DYA.js} +3 -3
  44. package/dist/{PageSingle-PVGXNR42.js.map → PageSingle-RT7X3DYA.js.map} +1 -1
  45. package/dist/{ProductDetails-XG26QCTN.js → ProductDetails-ICIVXSUS.js} +3 -3
  46. package/dist/{ProductDetails-XG26QCTN.js.map → ProductDetails-ICIVXSUS.js.map} +1 -1
  47. package/dist/{ProfilePage-6QDPXYNR.js → ProfilePage-LUSVWS2Z.js} +13 -11
  48. package/dist/ProfilePage-LUSVWS2Z.js.map +1 -0
  49. package/dist/{SeoCartWidget-GR6PYXDP.js → SeoCartWidget-DJ3NGKCD.js} +13 -11
  50. package/dist/SeoCartWidget-DJ3NGKCD.js.map +1 -0
  51. package/dist/{SettingsPage-2OVEIVCT.js → SettingsPage-JGHLXCSF.js} +13 -11
  52. package/dist/SettingsPage-JGHLXCSF.js.map +1 -0
  53. package/dist/{StoreClosedNotification-NU5QC2TG.js → StoreClosedNotification-RZ77HAKH.js} +14 -12
  54. package/dist/{StoreClosedNotification-NU5QC2TG.js.map → StoreClosedNotification-RZ77HAKH.js.map} +1 -1
  55. package/dist/{TestimonialsPage-4UJWE4X4.js → TestimonialsPage-QOKYHLYM.js} +3 -3
  56. package/dist/{TestimonialsPage-4UJWE4X4.js.map → TestimonialsPage-QOKYHLYM.js.map} +1 -1
  57. package/dist/{ThankYouPage-5IDWYLTL.js → ThankYouPage-TXVYZFWX.js} +13 -11
  58. package/dist/ThankYouPage-TXVYZFWX.js.map +1 -0
  59. package/dist/{WalletPage-MQR4UAMN.js → WalletPage-LUSVCXGA.js} +14 -12
  60. package/dist/WalletPage-LUSVCXGA.js.map +1 -0
  61. package/dist/{WishlistPage-4YADKHYB.js → WishlistPage-ZFRSOB43.js} +14 -12
  62. package/dist/WishlistPage-ZFRSOB43.js.map +1 -0
  63. package/dist/api/apps.d.ts +40 -10
  64. package/dist/api/apps.d.ts.map +1 -1
  65. package/dist/api/apps.js +4 -22
  66. package/dist/api/apps.js.map +1 -1
  67. package/dist/api/brands.js +5 -5
  68. package/dist/api/cart.js +5 -5
  69. package/dist/api/category.js +5 -5
  70. package/dist/api/client.d.ts +6 -0
  71. package/dist/api/client.d.ts.map +1 -1
  72. package/dist/api/client.js +3 -3
  73. package/dist/api/home.js +4 -4
  74. package/dist/api/loyalty.js +5 -5
  75. package/dist/api/menu.js +4 -4
  76. package/dist/api/notification.js +4 -4
  77. package/dist/api/order.js +5 -5
  78. package/dist/api/page.js +5 -5
  79. package/dist/api/product.js +5 -5
  80. package/dist/api/profile.js +3 -3
  81. package/dist/api/store.js +4 -4
  82. package/dist/api/translations.js +4 -4
  83. package/dist/api/user.js +4 -4
  84. package/dist/api/wishlist.js +4 -4
  85. package/dist/{chunk-QQGFEBYP.js → chunk-2FDMBW2G.js} +3 -3
  86. package/dist/{chunk-QQGFEBYP.js.map → chunk-2FDMBW2G.js.map} +1 -1
  87. package/dist/{chunk-A5XHG5DY.js → chunk-2JHVZBQ7.js} +3 -3
  88. package/dist/{chunk-A5XHG5DY.js.map → chunk-2JHVZBQ7.js.map} +1 -1
  89. package/dist/{chunk-FUH74TV3.js → chunk-2WNYE75P.js} +39 -4
  90. package/dist/chunk-2WNYE75P.js.map +1 -0
  91. package/dist/{chunk-ODXQLAF4.js → chunk-4BIYLPIT.js} +5 -5
  92. package/dist/{chunk-ODXQLAF4.js.map → chunk-4BIYLPIT.js.map} +1 -1
  93. package/dist/{chunk-PASKA2UT.js → chunk-4EHNAFYR.js} +4 -4
  94. package/dist/{chunk-PASKA2UT.js.map → chunk-4EHNAFYR.js.map} +1 -1
  95. package/dist/{chunk-OY3VMBTA.js → chunk-53AXOEUK.js} +4 -4
  96. package/dist/{chunk-OY3VMBTA.js.map → chunk-53AXOEUK.js.map} +1 -1
  97. package/dist/{chunk-VOTDCMG3.js → chunk-AY6KRPHL.js} +3 -3
  98. package/dist/{chunk-VOTDCMG3.js.map → chunk-AY6KRPHL.js.map} +1 -1
  99. package/dist/{chunk-R5VMDBV2.js → chunk-BR26I5WV.js} +4 -4
  100. package/dist/{chunk-R5VMDBV2.js.map → chunk-BR26I5WV.js.map} +1 -1
  101. package/dist/{chunk-UXCLRJ3Q.js → chunk-DBFD6F25.js} +6 -6
  102. package/dist/{chunk-UXCLRJ3Q.js.map → chunk-DBFD6F25.js.map} +1 -1
  103. package/dist/chunk-E2FO6OSL.js +136 -0
  104. package/dist/chunk-E2FO6OSL.js.map +1 -0
  105. package/dist/{chunk-MD35JQVL.js → chunk-EGXKYLBD.js} +4 -4
  106. package/dist/{chunk-MD35JQVL.js.map → chunk-EGXKYLBD.js.map} +1 -1
  107. package/dist/{chunk-HPR6QACC.js → chunk-EXYGVSRB.js} +3 -3
  108. package/dist/{chunk-HPR6QACC.js.map → chunk-EXYGVSRB.js.map} +1 -1
  109. package/dist/{chunk-KOVPH7TW.js → chunk-F7TFLW56.js} +5 -4
  110. package/dist/chunk-F7TFLW56.js.map +1 -0
  111. package/dist/{chunk-Y73ZOE3I.js → chunk-FALZ7SZO.js} +4 -4
  112. package/dist/{chunk-Y73ZOE3I.js.map → chunk-FALZ7SZO.js.map} +1 -1
  113. package/dist/{chunk-POU6ARSQ.js → chunk-FHLQQE23.js} +4 -4
  114. package/dist/{chunk-POU6ARSQ.js.map → chunk-FHLQQE23.js.map} +1 -1
  115. package/dist/{chunk-IIQKLIII.js → chunk-GIQETPP2.js} +247 -156
  116. package/dist/chunk-GIQETPP2.js.map +1 -0
  117. package/dist/{chunk-2PWN27HQ.js → chunk-GVMWHNQ5.js} +4 -4
  118. package/dist/{chunk-2PWN27HQ.js.map → chunk-GVMWHNQ5.js.map} +1 -1
  119. package/dist/{chunk-X4Z6MIBG.js → chunk-IWPQF6VZ.js} +6 -6
  120. package/dist/{chunk-X4Z6MIBG.js.map → chunk-IWPQF6VZ.js.map} +1 -1
  121. package/dist/{chunk-RW2WZ4BN.js → chunk-LP3IE6UV.js} +4 -4
  122. package/dist/{chunk-RW2WZ4BN.js.map → chunk-LP3IE6UV.js.map} +1 -1
  123. package/dist/{chunk-2WBVZR4E.js → chunk-LUFVVUWZ.js} +4 -4
  124. package/dist/{chunk-2WBVZR4E.js.map → chunk-LUFVVUWZ.js.map} +1 -1
  125. package/dist/{chunk-BH6NMIAK.js → chunk-M75FIT2Y.js} +116 -13
  126. package/dist/chunk-M75FIT2Y.js.map +1 -0
  127. package/dist/{chunk-DFIZHPDP.js → chunk-NUPOX7ID.js} +4 -4
  128. package/dist/{chunk-DFIZHPDP.js.map → chunk-NUPOX7ID.js.map} +1 -1
  129. package/dist/{chunk-DA43QUYK.js → chunk-ONGTNGTR.js} +3 -3
  130. package/dist/{chunk-DA43QUYK.js.map → chunk-ONGTNGTR.js.map} +1 -1
  131. package/dist/{chunk-WI7TR7RK.js → chunk-OPKTJIZQ.js} +10 -2
  132. package/dist/chunk-OPKTJIZQ.js.map +1 -0
  133. package/dist/{chunk-ZBTCQZVO.js → chunk-PQNPO2J3.js} +3 -3
  134. package/dist/{chunk-ZBTCQZVO.js.map → chunk-PQNPO2J3.js.map} +1 -1
  135. package/dist/{chunk-DIKZRWOS.js → chunk-PSYBJK2L.js} +4 -4
  136. package/dist/{chunk-DIKZRWOS.js.map → chunk-PSYBJK2L.js.map} +1 -1
  137. package/dist/{chunk-2CRMGVH6.js → chunk-Q5DFI4WQ.js} +3 -3
  138. package/dist/{chunk-2CRMGVH6.js.map → chunk-Q5DFI4WQ.js.map} +1 -1
  139. package/dist/{chunk-EEYZYG36.js → chunk-QMT3KQ3V.js} +4 -4
  140. package/dist/{chunk-EEYZYG36.js.map → chunk-QMT3KQ3V.js.map} +1 -1
  141. package/dist/{chunk-4BH3L5ZI.js → chunk-SBDHJUNI.js} +3 -3
  142. package/dist/{chunk-4BH3L5ZI.js.map → chunk-SBDHJUNI.js.map} +1 -1
  143. package/dist/{chunk-FXXATUWJ.js → chunk-T5WDJAVS.js} +5 -5
  144. package/dist/{chunk-FXXATUWJ.js.map → chunk-T5WDJAVS.js.map} +1 -1
  145. package/dist/{chunk-TFDN2SKC.js → chunk-U3S6RFYL.js} +3 -3
  146. package/dist/{chunk-TFDN2SKC.js.map → chunk-U3S6RFYL.js.map} +1 -1
  147. package/dist/chunk-ULAPZSHY.js +44 -0
  148. package/dist/chunk-ULAPZSHY.js.map +1 -0
  149. package/dist/{chunk-KN6YUQ6L.js → chunk-UNGQL6AB.js} +3 -3
  150. package/dist/{chunk-KN6YUQ6L.js.map → chunk-UNGQL6AB.js.map} +1 -1
  151. package/dist/{chunk-7P3CT2PM.js → chunk-UQ2MAJXN.js} +14 -4
  152. package/dist/chunk-UQ2MAJXN.js.map +1 -0
  153. package/dist/{chunk-QHDMWYJO.js → chunk-URH4CDTN.js} +4 -4
  154. package/dist/{chunk-QHDMWYJO.js.map → chunk-URH4CDTN.js.map} +1 -1
  155. package/dist/{chunk-H3QMQIKP.js → chunk-VIRPVAK3.js} +3 -3
  156. package/dist/{chunk-H3QMQIKP.js.map → chunk-VIRPVAK3.js.map} +1 -1
  157. package/dist/{chunk-MSBPOHMV.js → chunk-WPX5U2PA.js} +7 -7
  158. package/dist/{chunk-MSBPOHMV.js.map → chunk-WPX5U2PA.js.map} +1 -1
  159. package/dist/chunk-ZC6SZKXH.js +14 -0
  160. package/dist/{chunk-W64WJKTH.js.map → chunk-ZC6SZKXH.js.map} +1 -1
  161. package/dist/components/cart/index.js +1 -1
  162. package/dist/components/common/index.js +1 -1
  163. package/dist/components/drawer/index.js +11 -9
  164. package/dist/components/home/index.js +14 -12
  165. package/dist/components/layout/index.js +5 -5
  166. package/dist/components/product/index.js +12 -10
  167. package/dist/components/snippets/AppsSnippets.d.ts +18 -0
  168. package/dist/components/snippets/AppsSnippets.d.ts.map +1 -0
  169. package/dist/components/snippets/index.d.ts +2 -0
  170. package/dist/components/snippets/index.d.ts.map +1 -0
  171. package/dist/components/store/index.js +13 -11
  172. package/dist/components/store/index.js.map +1 -1
  173. package/dist/document-class-3RZJGYJF.js +23 -0
  174. package/dist/{document-class-224GXQZQ.js.map → document-class-3RZJGYJF.js.map} +1 -1
  175. package/dist/hooks/index.js +11 -9
  176. package/dist/hooks/useGtm.js +11 -9
  177. package/dist/hooks/useMoney.js +11 -9
  178. package/dist/hooks/useStore.js +11 -9
  179. package/dist/hooks/useUser.js +5 -5
  180. package/dist/index.js +11 -9
  181. package/dist/index.js.map +1 -1
  182. package/dist/{navigation-SXCM653S.js → navigation-WMJ77B6H.js} +4 -4
  183. package/dist/{navigation-SXCM653S.js.map → navigation-WMJ77B6H.js.map} +1 -1
  184. package/dist/{navigation-B6FATNWM.js → navigation-WXELHHVJ.js} +5 -5
  185. package/dist/{navigation-B6FATNWM.js.map → navigation-WXELHHVJ.js.map} +1 -1
  186. package/dist/{not-found-EMPUSRN4.js → not-found-Z6DJND5N.js} +13 -11
  187. package/dist/not-found-Z6DJND5N.js.map +1 -0
  188. package/dist/providers/TwilightProvider.d.ts.map +1 -1
  189. package/dist/providers/index.js +11 -9
  190. package/dist/routes/account/orders.js +6 -6
  191. package/dist/routes/account.js +14 -14
  192. package/dist/routes/blog.js +10 -10
  193. package/dist/routes/brands.js +6 -6
  194. package/dist/routes/cart.js +19 -17
  195. package/dist/routes/cart.js.map +1 -1
  196. package/dist/routes/home.js +16 -14
  197. package/dist/routes/index.js +3 -3
  198. package/dist/routes/loyalty.js +6 -6
  199. package/dist/routes/page.js +6 -6
  200. package/dist/routes/product-listing.js +16 -14
  201. package/dist/routes/product-listing.js.map +1 -1
  202. package/dist/routes/product.js +14 -12
  203. package/dist/routes/product.js.map +1 -1
  204. package/dist/routes/root/beforeLoad.d.ts +7 -0
  205. package/dist/routes/root/beforeLoad.d.ts.map +1 -1
  206. package/dist/routes/root/head.d.ts +14 -0
  207. package/dist/routes/root/head.d.ts.map +1 -1
  208. package/dist/routes/seo-redirects.js +3 -3
  209. package/dist/routes/testimonials.js +2 -2
  210. package/dist/routes/thank-you.js +6 -6
  211. package/dist/skeleton.js +16 -14
  212. package/dist/tanstack/router.d.ts.map +1 -1
  213. package/dist/tanstack.js +14 -12
  214. package/dist/tanstack.js.map +1 -1
  215. package/dist/twilight/context.d.ts +7 -0
  216. package/dist/twilight/context.d.ts.map +1 -1
  217. package/dist/twilight/ensure-context.d.ts.map +1 -1
  218. package/dist/types/salla-sdk.d.ts +15 -0
  219. package/dist/types/salla-sdk.d.ts.map +1 -1
  220. package/dist/utils/app-scope.d.ts +46 -0
  221. package/dist/utils/app-scope.d.ts.map +1 -0
  222. package/dist/utils/index.d.ts +2 -0
  223. package/dist/utils/index.d.ts.map +1 -1
  224. package/dist/utils/index.js +4 -3
  225. package/dist/utils/index.js.map +1 -1
  226. package/dist/utils/inline-script.d.ts +8 -0
  227. package/dist/utils/inline-script.d.ts.map +1 -0
  228. package/dist/utils/runtime-env.d.ts +34 -0
  229. package/dist/utils/runtime-env.d.ts.map +1 -0
  230. package/dist/utils/sdk-helpers.d.ts +4 -2
  231. package/dist/utils/sdk-helpers.d.ts.map +1 -1
  232. package/dist/utils/theme-hook-slots.d.ts +36 -0
  233. package/dist/utils/theme-hook-slots.d.ts.map +1 -0
  234. package/dist/vite/index.js +2 -2
  235. package/package.json +2 -2
  236. package/dist/BlogAuthorPage-QJLGMSK3.js.map +0 -1
  237. package/dist/BlogCategoryPage-H7VYN7OV.js.map +0 -1
  238. package/dist/BlogPage-LWAQ6ZVO.js.map +0 -1
  239. package/dist/BlogSinglePage-DMAMK26P.js.map +0 -1
  240. package/dist/BlogTagPage-6URVT6AD.js.map +0 -1
  241. package/dist/BrandsPage-AANQU2O3.js.map +0 -1
  242. package/dist/Breadcrumb-UAMFZYT6.js.map +0 -1
  243. package/dist/CartItem-3677CNHU.js.map +0 -1
  244. package/dist/CartSummary-BJJNE6C5.js.map +0 -1
  245. package/dist/CustomerLayout-SG2CUIJU.js.map +0 -1
  246. package/dist/LoyaltyPage-YBVHG57L.js.map +0 -1
  247. package/dist/MobileMenu-DNMUVXPY.js.map +0 -1
  248. package/dist/NotificationsPage-X7PIHUNY.js.map +0 -1
  249. package/dist/OrderSinglePage-E7SXRGRF.js.map +0 -1
  250. package/dist/OrdersPage-G6HBVJKI.js.map +0 -1
  251. package/dist/ProfilePage-6QDPXYNR.js.map +0 -1
  252. package/dist/SeoCartWidget-GR6PYXDP.js.map +0 -1
  253. package/dist/SettingsPage-2OVEIVCT.js.map +0 -1
  254. package/dist/ThankYouPage-5IDWYLTL.js.map +0 -1
  255. package/dist/WalletPage-MQR4UAMN.js.map +0 -1
  256. package/dist/WishlistPage-4YADKHYB.js.map +0 -1
  257. package/dist/chunk-7P3CT2PM.js.map +0 -1
  258. package/dist/chunk-BH6NMIAK.js.map +0 -1
  259. package/dist/chunk-FUH74TV3.js.map +0 -1
  260. package/dist/chunk-IIQKLIII.js.map +0 -1
  261. package/dist/chunk-KOVPH7TW.js.map +0 -1
  262. package/dist/chunk-W64WJKTH.js +0 -14
  263. package/dist/chunk-WI7TR7RK.js.map +0 -1
  264. package/dist/document-class-224GXQZQ.js +0 -21
  265. package/dist/not-found-EMPUSRN4.js.map +0 -1
package/dist/api/menu.js CHANGED
@@ -1,7 +1,7 @@
1
- export { menu } from '../chunk-OY3VMBTA.js';
2
- import '../chunk-KOVPH7TW.js';
3
- import '../chunk-FUH74TV3.js';
4
- import '../chunk-WI7TR7RK.js';
1
+ export { menu } from '../chunk-53AXOEUK.js';
2
+ import '../chunk-F7TFLW56.js';
3
+ import '../chunk-2WNYE75P.js';
4
+ import '../chunk-OPKTJIZQ.js';
5
5
  import '../chunk-T72DAX7R.js';
6
6
  import '../chunk-DGUM43GV.js';
7
7
  //# sourceMappingURL=menu.js.map
@@ -1,7 +1,7 @@
1
- export { notification } from '../chunk-TFDN2SKC.js';
2
- import '../chunk-KOVPH7TW.js';
3
- import '../chunk-FUH74TV3.js';
4
- import '../chunk-WI7TR7RK.js';
1
+ export { notification } from '../chunk-U3S6RFYL.js';
2
+ import '../chunk-F7TFLW56.js';
3
+ import '../chunk-2WNYE75P.js';
4
+ import '../chunk-OPKTJIZQ.js';
5
5
  import '../chunk-T72DAX7R.js';
6
6
  import '../chunk-DGUM43GV.js';
7
7
  //# sourceMappingURL=notification.js.map
package/dist/api/order.js CHANGED
@@ -1,9 +1,9 @@
1
- export { order } from '../chunk-2PWN27HQ.js';
2
- import '../chunk-ZBTCQZVO.js';
1
+ export { order } from '../chunk-GVMWHNQ5.js';
2
+ import '../chunk-PQNPO2J3.js';
3
3
  import '../chunk-MTONGOJD.js';
4
- import '../chunk-KOVPH7TW.js';
5
- import '../chunk-FUH74TV3.js';
6
- import '../chunk-WI7TR7RK.js';
4
+ import '../chunk-F7TFLW56.js';
5
+ import '../chunk-2WNYE75P.js';
6
+ import '../chunk-OPKTJIZQ.js';
7
7
  import '../chunk-T72DAX7R.js';
8
8
  import '../chunk-DF6FBKDN.js';
9
9
  import '../chunk-DGUM43GV.js';
package/dist/api/page.js CHANGED
@@ -1,9 +1,9 @@
1
- export { page } from '../chunk-QHDMWYJO.js';
2
- import '../chunk-ZBTCQZVO.js';
1
+ export { page } from '../chunk-URH4CDTN.js';
2
+ import '../chunk-PQNPO2J3.js';
3
3
  import '../chunk-MTONGOJD.js';
4
- import '../chunk-KOVPH7TW.js';
5
- import '../chunk-FUH74TV3.js';
6
- import '../chunk-WI7TR7RK.js';
4
+ import '../chunk-F7TFLW56.js';
5
+ import '../chunk-2WNYE75P.js';
6
+ import '../chunk-OPKTJIZQ.js';
7
7
  import '../chunk-T72DAX7R.js';
8
8
  import '../chunk-DF6FBKDN.js';
9
9
  import '../chunk-DGUM43GV.js';
@@ -1,9 +1,9 @@
1
- export { product } from '../chunk-Y73ZOE3I.js';
2
- import '../chunk-ZBTCQZVO.js';
1
+ export { product } from '../chunk-FALZ7SZO.js';
2
+ import '../chunk-PQNPO2J3.js';
3
3
  import '../chunk-MTONGOJD.js';
4
- import '../chunk-KOVPH7TW.js';
5
- import '../chunk-FUH74TV3.js';
6
- import '../chunk-WI7TR7RK.js';
4
+ import '../chunk-F7TFLW56.js';
5
+ import '../chunk-2WNYE75P.js';
6
+ import '../chunk-OPKTJIZQ.js';
7
7
  import '../chunk-T72DAX7R.js';
8
8
  import '../chunk-DF6FBKDN.js';
9
9
  import '../chunk-DGUM43GV.js';
@@ -1,6 +1,6 @@
1
- import { api } from '../chunk-KOVPH7TW.js';
2
- import '../chunk-FUH74TV3.js';
3
- import '../chunk-WI7TR7RK.js';
1
+ import { api } from '../chunk-F7TFLW56.js';
2
+ import '../chunk-2WNYE75P.js';
3
+ import '../chunk-OPKTJIZQ.js';
4
4
  import '../chunk-T72DAX7R.js';
5
5
  import '../chunk-DGUM43GV.js';
6
6
 
package/dist/api/store.js CHANGED
@@ -1,7 +1,7 @@
1
- export { resolveStoreIdentifier, store } from '../chunk-RW2WZ4BN.js';
2
- import '../chunk-KOVPH7TW.js';
3
- import '../chunk-FUH74TV3.js';
4
- import '../chunk-WI7TR7RK.js';
1
+ export { resolveStoreIdentifier, store } from '../chunk-LP3IE6UV.js';
2
+ import '../chunk-F7TFLW56.js';
3
+ import '../chunk-2WNYE75P.js';
4
+ import '../chunk-OPKTJIZQ.js';
5
5
  import '../chunk-T72DAX7R.js';
6
6
  import '../chunk-DGUM43GV.js';
7
7
  //# sourceMappingURL=store.js.map
@@ -1,7 +1,7 @@
1
- export { translations } from '../chunk-HPR6QACC.js';
2
- import '../chunk-KOVPH7TW.js';
3
- import '../chunk-FUH74TV3.js';
4
- import '../chunk-WI7TR7RK.js';
1
+ export { translations } from '../chunk-EXYGVSRB.js';
2
+ import '../chunk-F7TFLW56.js';
3
+ import '../chunk-2WNYE75P.js';
4
+ import '../chunk-OPKTJIZQ.js';
5
5
  import '../chunk-T72DAX7R.js';
6
6
  import '../chunk-DGUM43GV.js';
7
7
  //# sourceMappingURL=translations.js.map
package/dist/api/user.js CHANGED
@@ -1,7 +1,7 @@
1
- export { user } from '../chunk-A5XHG5DY.js';
2
- import '../chunk-KOVPH7TW.js';
3
- import '../chunk-FUH74TV3.js';
4
- import '../chunk-WI7TR7RK.js';
1
+ export { user } from '../chunk-2JHVZBQ7.js';
2
+ import '../chunk-F7TFLW56.js';
3
+ import '../chunk-2WNYE75P.js';
4
+ import '../chunk-OPKTJIZQ.js';
5
5
  import '../chunk-T72DAX7R.js';
6
6
  import '../chunk-DGUM43GV.js';
7
7
  //# sourceMappingURL=user.js.map
@@ -1,7 +1,7 @@
1
- export { wishlist } from '../chunk-4BH3L5ZI.js';
2
- import '../chunk-KOVPH7TW.js';
3
- import '../chunk-FUH74TV3.js';
4
- import '../chunk-WI7TR7RK.js';
1
+ export { wishlist } from '../chunk-SBDHJUNI.js';
2
+ import '../chunk-F7TFLW56.js';
3
+ import '../chunk-2WNYE75P.js';
4
+ import '../chunk-OPKTJIZQ.js';
5
5
  import '../chunk-T72DAX7R.js';
6
6
  import '../chunk-DGUM43GV.js';
7
7
  //# sourceMappingURL=wishlist.js.map
@@ -1,4 +1,4 @@
1
- import { api } from './chunk-KOVPH7TW.js';
1
+ import { api } from './chunk-F7TFLW56.js';
2
2
  import { queryOptions } from '@tanstack/react-query';
3
3
 
4
4
  var home = {
@@ -15,5 +15,5 @@ var home = {
15
15
  };
16
16
 
17
17
  export { home };
18
- //# sourceMappingURL=chunk-QQGFEBYP.js.map
19
- //# sourceMappingURL=chunk-QQGFEBYP.js.map
18
+ //# sourceMappingURL=chunk-2FDMBW2G.js.map
19
+ //# sourceMappingURL=chunk-2FDMBW2G.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/api/home.ts"],"names":[],"mappings":";;;AAIO,IAAM,IAAA,GAAO;AAAA,EAClB,YAAY,YAA0C;AACpD,IAAA,MAAM,EAAE,MAAK,GAAI,MAAM,IAAI,GAAA,CAAI,gBAAgB,EAAE,IAAA,EAAoC;AACrF,IAAA,OAAO,QAAQ,EAAC;AAAA,EAClB,CAAA;AAAA,EAEA,OAAA,EAAS;AAAA,IACP,UAAA,EAAY,MACV,YAAA,CAAa;AAAA,MACX,QAAA,EAAU,CAAC,MAAA,EAAQ,YAAY,CAAA;AAAA,MAC/B,OAAA,EAAS,MAAM,IAAA,CAAK,UAAA;AAAW,KAChC;AAAA;AAEP","file":"chunk-QQGFEBYP.js","sourcesContent":["import { queryOptions } from '@tanstack/react-query';\nimport { api } from './client';\nimport type { HomeComponentData } from '../types';\n\nexport const home = {\n components: async (): Promise<HomeComponentData[]> => {\n const { data } = await api.get('component/list').json<{ data: HomeComponentData[] }>();\n return data ?? [];\n },\n\n queries: {\n components: () =>\n queryOptions({\n queryKey: ['home', 'components'],\n queryFn: () => home.components(),\n }),\n },\n};\n"]}
1
+ {"version":3,"sources":["../src/api/home.ts"],"names":[],"mappings":";;;AAIO,IAAM,IAAA,GAAO;AAAA,EAClB,YAAY,YAA0C;AACpD,IAAA,MAAM,EAAE,MAAK,GAAI,MAAM,IAAI,GAAA,CAAI,gBAAgB,EAAE,IAAA,EAAoC;AACrF,IAAA,OAAO,QAAQ,EAAC;AAAA,EAClB,CAAA;AAAA,EAEA,OAAA,EAAS;AAAA,IACP,UAAA,EAAY,MACV,YAAA,CAAa;AAAA,MACX,QAAA,EAAU,CAAC,MAAA,EAAQ,YAAY,CAAA;AAAA,MAC/B,OAAA,EAAS,MAAM,IAAA,CAAK,UAAA;AAAW,KAChC;AAAA;AAEP","file":"chunk-2FDMBW2G.js","sourcesContent":["import { queryOptions } from '@tanstack/react-query';\nimport { api } from './client';\nimport type { HomeComponentData } from '../types';\n\nexport const home = {\n components: async (): Promise<HomeComponentData[]> => {\n const { data } = await api.get('component/list').json<{ data: HomeComponentData[] }>();\n return data ?? [];\n },\n\n queries: {\n components: () =>\n queryOptions({\n queryKey: ['home', 'components'],\n queryFn: () => home.components(),\n }),\n },\n};\n"]}
@@ -1,4 +1,4 @@
1
- import { api } from './chunk-KOVPH7TW.js';
1
+ import { api } from './chunk-F7TFLW56.js';
2
2
  import { queryOptions } from '@tanstack/react-query';
3
3
 
4
4
  var user = {
@@ -19,5 +19,5 @@ var user = {
19
19
  };
20
20
 
21
21
  export { user };
22
- //# sourceMappingURL=chunk-A5XHG5DY.js.map
23
- //# sourceMappingURL=chunk-A5XHG5DY.js.map
22
+ //# sourceMappingURL=chunk-2JHVZBQ7.js.map
23
+ //# sourceMappingURL=chunk-2JHVZBQ7.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/api/user.ts"],"names":[],"mappings":";;;AAIO,IAAM,IAAA,GAAO;AAAA,EAClB,KAAK,YAAkC;AACrC,IAAA,IAAI;AACF,MAAA,OAAO,MAAM,GAAA,CACV,GAAA,CAAI,WAAW,CAAA,CACf,MAAmC,CACnC,IAAA,CAAK,CAAC,CAAA,MAAO,EAAE,GAAG,CAAA,CAAE,IAAA,EAAM,IAAA,EAAM,QAAgB,CAAE,CAAA;AAAA,IACvD,SAAS,KAAA,EAAO;AACd,MAAA,OAAA,CAAQ,KAAA,CAAM,sBAAsB,KAAK,CAAA;AACzC,MAAA,OAAO,IAAA;AAAA,IACT;AAAA,EACF,CAAA;AAAA,EAEA,OAAA,EAAS;AAAA,IACP,OAAA,EAAS,MACP,YAAA,CAA0B;AAAA,MACxB,QAAA,EAAU,CAAC,MAAA,EAAQ,SAAS,CAAA;AAAA,MAC5B,SAAS,IAAA,CAAK;AAAA,KACf;AAAA;AAEP","file":"chunk-A5XHG5DY.js","sourcesContent":["import { queryOptions } from '@tanstack/react-query';\nimport { api } from './client';\nimport type { User } from '../types';\n\nexport const user = {\n get: async (): Promise<User | null> => {\n try {\n return await api\n .get('auth/user')\n .json<{ data: Omit<User, 'type'> }>()\n .then((r) => ({ ...r.data, type: 'user' as const }));\n } catch (error) {\n console.debug('[user.get] Failed:', error);\n return null;\n }\n },\n\n queries: {\n current: () =>\n queryOptions<User | null>({\n queryKey: ['user', 'current'],\n queryFn: user.get,\n }),\n },\n};\n"]}
1
+ {"version":3,"sources":["../src/api/user.ts"],"names":[],"mappings":";;;AAIO,IAAM,IAAA,GAAO;AAAA,EAClB,KAAK,YAAkC;AACrC,IAAA,IAAI;AACF,MAAA,OAAO,MAAM,GAAA,CACV,GAAA,CAAI,WAAW,CAAA,CACf,MAAmC,CACnC,IAAA,CAAK,CAAC,CAAA,MAAO,EAAE,GAAG,CAAA,CAAE,IAAA,EAAM,IAAA,EAAM,QAAgB,CAAE,CAAA;AAAA,IACvD,SAAS,KAAA,EAAO;AACd,MAAA,OAAA,CAAQ,KAAA,CAAM,sBAAsB,KAAK,CAAA;AACzC,MAAA,OAAO,IAAA;AAAA,IACT;AAAA,EACF,CAAA;AAAA,EAEA,OAAA,EAAS;AAAA,IACP,OAAA,EAAS,MACP,YAAA,CAA0B;AAAA,MACxB,QAAA,EAAU,CAAC,MAAA,EAAQ,SAAS,CAAA;AAAA,MAC5B,SAAS,IAAA,CAAK;AAAA,KACf;AAAA;AAEP","file":"chunk-2JHVZBQ7.js","sourcesContent":["import { queryOptions } from '@tanstack/react-query';\nimport { api } from './client';\nimport type { User } from '../types';\n\nexport const user = {\n get: async (): Promise<User | null> => {\n try {\n return await api\n .get('auth/user')\n .json<{ data: Omit<User, 'type'> }>()\n .then((r) => ({ ...r.data, type: 'user' as const }));\n } catch (error) {\n console.debug('[user.get] Failed:', error);\n return null;\n }\n },\n\n queries: {\n current: () =>\n queryOptions<User | null>({\n queryKey: ['user', 'current'],\n queryFn: user.get,\n }),\n },\n};\n"]}
@@ -61,6 +61,39 @@ function syncScopeCookie() {
61
61
  return scopeId === void 0 ? false : writeScopeCookie(scopeId);
62
62
  }
63
63
 
64
+ // src/utils/inline-script.ts
65
+ function escapeForInlineScript(value) {
66
+ return value.replace(/</g, "\\u003c").replace(/>/g, "\\u003e").replace(/&/g, "\\u0026").replace(/\u2028/g, "\\u2028").replace(/\u2029/g, "\\u2029");
67
+ }
68
+
69
+ // src/utils/runtime-env.ts
70
+ var RUNTIME_ENV_KEY = "__SALLA_RUNTIME_ENV__";
71
+ function readEnv(key) {
72
+ try {
73
+ const vite = import.meta.env?.[key];
74
+ if (vite) return vite;
75
+ } catch {
76
+ }
77
+ return typeof process !== "undefined" ? process.env?.[key] : void 0;
78
+ }
79
+ function resolveRuntimeEnv() {
80
+ const injected = getInjectedRuntimeEnv();
81
+ return {
82
+ apiBase: injected.apiBase || readEnv("VITE_API_URL"),
83
+ storeIdentifier: injected.storeIdentifier || readEnv("VITE_STORE_DOMAIN")
84
+ };
85
+ }
86
+ function getInjectedRuntimeEnv() {
87
+ const holder = globalThis;
88
+ return holder[RUNTIME_ENV_KEY] ?? {};
89
+ }
90
+ function renderRuntimeEnvScript(env = resolveRuntimeEnv()) {
91
+ const set = Object.entries(env).filter(([, value]) => Boolean(value));
92
+ if (!set.length) return null;
93
+ const json = escapeForInlineScript(JSON.stringify(Object.fromEntries(set)));
94
+ return `window.${RUNTIME_ENV_KEY}=${json};`;
95
+ }
96
+
64
97
  // src/utils/sdk-helpers.ts
65
98
  var isBrowser = typeof window !== "undefined";
66
99
  function getStoreIdentifier(explicit) {
@@ -70,8 +103,10 @@ function getStoreIdentifier(explicit) {
70
103
  if (viteEnv) return viteEnv;
71
104
  } catch {
72
105
  }
106
+ const injected = getInjectedRuntimeEnv().storeIdentifier;
107
+ if (injected) return injected;
73
108
  if (isBrowser) return window.location.host;
74
- return typeof process !== "undefined" && process.env?.STORE_DOMAIN || "";
109
+ return typeof process !== "undefined" && (process.env?.VITE_STORE_DOMAIN || process.env?.STORE_DOMAIN) || "";
75
110
  }
76
111
  function getSallaSDK() {
77
112
  if (!isBrowser) return void 0;
@@ -88,6 +123,6 @@ function syncSdkLocale(locale) {
88
123
  }
89
124
  }
90
125
 
91
- export { AUTH_TOKEN_COOKIE_NAME, clearAuthTokenCookie, extractScopeIdFromCookies, extractTokenFromCookies, getSallaSDK, getStoreIdentifier, readSdkScopeId, syncScopeCookie, syncSdkLocale };
92
- //# sourceMappingURL=chunk-FUH74TV3.js.map
93
- //# sourceMappingURL=chunk-FUH74TV3.js.map
126
+ export { AUTH_TOKEN_COOKIE_NAME, clearAuthTokenCookie, escapeForInlineScript, extractScopeIdFromCookies, extractTokenFromCookies, getSallaSDK, getStoreIdentifier, readEnv, readSdkScopeId, renderRuntimeEnvScript, syncScopeCookie, syncSdkLocale };
127
+ //# sourceMappingURL=chunk-2WNYE75P.js.map
128
+ //# sourceMappingURL=chunk-2WNYE75P.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/utils/cookies.ts","../src/utils/inline-script.ts","../src/utils/runtime-env.ts","../src/utils/sdk-helpers.ts"],"names":[],"mappings":"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","file":"chunk-2WNYE75P.js","sourcesContent":["export const AUTH_TOKEN_COOKIE_NAME = 'token';\nexport const SCOPE_COOKIE_NAME = 'scope';\n\n/**\n * Deletes the auth `token` cookie. This cookie is written client-side by the theme\n * (TwilightProvider), not by the SDK — `salla.cookie.clearAll()` only clears its own\n * allowlist and leaves `token` behind — so logout must clear it here. Client-only.\n */\nexport function clearAuthTokenCookie(): void {\n if (typeof document === 'undefined') return;\n document.cookie = `${AUTH_TOKEN_COOKIE_NAME}=; expires=Thu, 01 Jan 1970 00:00:00 GMT; path=/`;\n}\n\nexport function extractTokenFromCookies(\n cookieHeader: string | null,\n cookieName: string\n): string | null {\n if (!cookieHeader) return null;\n\n const prefix = `${cookieName}=`;\n let start = 0;\n\n while (start < cookieHeader.length) {\n const idx = cookieHeader.indexOf(prefix, start);\n if (idx === -1) return null;\n\n const prevChar = idx > 0 ? cookieHeader[idx - 1] : '';\n if (prevChar === '' || prevChar === ';' || prevChar === ' ') {\n let end = cookieHeader.indexOf(';', idx);\n if (end === -1) end = cookieHeader.length;\n\n const value = cookieHeader.slice(idx + prefix.length, end).trim();\n try {\n return decodeURIComponent(value) || null;\n } catch {\n return value || null;\n }\n }\n\n start = idx + prefix.length;\n }\n\n return null;\n}\n\n/**\n * Reads the active scope id from the `scope` cookie, which Salla persists as a\n * JSON object (e.g. `{\"id\":123,\"type\":\"branch\"}`). Returns null when the cookie\n * is missing or unparseable. Used server-side, where `salla.storage` is absent.\n */\nexport function extractScopeIdFromCookies(cookieHeader: string | null): string | null {\n const raw = extractTokenFromCookies(cookieHeader, SCOPE_COOKIE_NAME);\n if (!raw) return null;\n try {\n const scope = JSON.parse(raw) as { id?: number | string | null };\n return scope?.id != null ? String(scope.id) : null;\n } catch {\n return null;\n }\n}\n\n/**\n * The branch the Salla SDK persisted in its storage (`salla.storage.get('scope')`),\n * which it stores either as `{ id, type }` or as a bare id.\n *\n * Returns `undefined` when the SDK storage API isn't ready yet — deliberately\n * distinct from `null` (\"no branch selected\"), so callers can't mistake a\n * not-yet-hydrated SDK for a cleared selection. Client-only.\n */\nexport function readSdkScopeId(): string | null | undefined {\n const storage = typeof window !== 'undefined' ? window.salla?.storage : undefined;\n if (typeof storage?.get !== 'function') return undefined;\n\n const scope = storage.get(SCOPE_COOKIE_NAME) as\n | { id?: number | string | null }\n | number\n | string\n | null;\n const id = typeof scope === 'object' && scope !== null ? scope.id : scope;\n return id != null ? String(id) : null;\n}\n\n/** One year — the SDK keeps the selected branch in localStorage indefinitely. */\nconst SCOPE_COOKIE_MAX_AGE = 60 * 60 * 24 * 365;\n\n/**\n * Mirrors the branch the Salla SDK selected into the `scope` cookie so the SERVER\n * can see it. The SDK persists the selection in localStorage ONLY and writes no\n * cookie, so without this the server computes scope=null for every visitor who\n * picked a branch while the client computes the branch id — the dehydrated settings\n * query key never matches and the client refetches store settings on every page\n * load (SAL-122).\n *\n * Written in the SDK's own JSON shape so {@link extractScopeIdFromCookies} parses it.\n * Returns true when the cookie was (re)written. Client-only; no-op on the server.\n */\nexport function writeScopeCookie(scopeId: string | null): boolean {\n if (typeof document === 'undefined') return false;\n if (extractScopeIdFromCookies(document.cookie) === scopeId) return false;\n\n if (scopeId == null) {\n document.cookie = `${SCOPE_COOKIE_NAME}=; expires=Thu, 01 Jan 1970 00:00:00 GMT; path=/`;\n return true;\n }\n\n const value = encodeURIComponent(JSON.stringify({ id: scopeId }));\n document.cookie = `${SCOPE_COOKIE_NAME}=${value}; path=/; max-age=${SCOPE_COOKIE_MAX_AGE}; samesite=lax`;\n return true;\n}\n\n/**\n * Keeps the `scope` cookie in step with the SDK's selected branch. Call on every\n * client navigation; it no-ops while the SDK storage API is still hydrating so a\n * late-loading SDK can't wipe a valid cookie.\n */\nexport function syncScopeCookie(): boolean {\n const scopeId = readSdkScopeId();\n return scopeId === undefined ? false : writeScopeCookie(scopeId);\n}\n","/**\n * Escape a JSON-stringified value for safe embedding inside an inline `<script>` body.\n *\n * The head injects script bodies raw, so a `</script>` inside partner-set data would break out\n * of the tag; U+2028/U+2029 are line terminators in JS but not in JSON, so they must go too.\n */\nexport function escapeForInlineScript(value: string): string {\n return value\n .replace(/</g, '\\\\u003c')\n .replace(/>/g, '\\\\u003e')\n .replace(/&/g, '\\\\u0026')\n .replace(/\\u2028/g, '\\\\u2028')\n .replace(/\\u2029/g, '\\\\u2029');\n}\n","import { escapeForInlineScript } from './inline-script';\n\n/** Where `rootHead` publishes the SSR-resolved env for the browser bundle to read. */\nconst RUNTIME_ENV_KEY = '__SALLA_RUNTIME_ENV__';\n\n/** The env values that must agree between the SSR render and the hydrated client. */\nexport interface RuntimeEnv {\n /** Store API base — `VITE_API_URL`. */\n apiBase?: string;\n /** Store identifier — `VITE_STORE_DOMAIN`. */\n storeIdentifier?: string;\n}\n\n/**\n * A build-time `import.meta.env` var, falling back to the worker's runtime `process.env`\n * (wrangler `vars`, exposed via the `nodejs_compat_populate_process_env` flag).\n */\nexport function readEnv(key: string): string | undefined {\n try {\n const vite = (import.meta as unknown as { env?: Record<string, string | undefined> }).env?.[\n key\n ];\n if (vite) return vite;\n } catch {\n /* import.meta.env not available in all environments */\n }\n return typeof process !== 'undefined' ? process.env?.[key] : undefined;\n}\n\n/**\n * What this runtime resolves from its own env — server-side that includes the worker vars.\n * Prefers what the server already published, so re-rendering the head during hydration yields\n * the same script instead of dropping it.\n */\nexport function resolveRuntimeEnv(): RuntimeEnv {\n const injected = getInjectedRuntimeEnv();\n return {\n apiBase: injected.apiBase || readEnv('VITE_API_URL'),\n storeIdentifier: injected.storeIdentifier || readEnv('VITE_STORE_DOMAIN'),\n };\n}\n\n/**\n * The env the SSR worker resolved, as handed to the browser by `rootHead`. Empty on the server\n * and on a client whose head carried nothing.\n *\n * Worker `vars` are *runtime* env: they live in `process.env` on the server only, while\n * `import.meta.env` is substituted at build time. A bundle built without those vars therefore\n * sees `undefined` in the browser and silently falls back to the production defaults — SSR\n * would render off the configured backend while every post-hydration fetch hits another one.\n */\nexport function getInjectedRuntimeEnv(): RuntimeEnv {\n const holder = globalThis as typeof globalThis & { [RUNTIME_ENV_KEY]?: RuntimeEnv };\n return holder[RUNTIME_ENV_KEY] ?? {};\n}\n\n/**\n * Inline head `<script>` body publishing the server-resolved env, or null when there is nothing\n * to publish (no overrides configured — the defaults already agree on both sides).\n */\nexport function renderRuntimeEnvScript(env: RuntimeEnv = resolveRuntimeEnv()): string | null {\n const set = Object.entries(env).filter(([, value]) => Boolean(value));\n if (!set.length) return null;\n const json = escapeForInlineScript(JSON.stringify(Object.fromEntries(set)));\n return `window.${RUNTIME_ENV_KEY}=${json};`;\n}\n","export type { StoreContext } from '../api/store';\nimport { getInjectedRuntimeEnv } from './runtime-env';\n\nconst isBrowser = typeof window !== 'undefined';\n\n/**\n * Get the store identifier. Priority: explicit > VITE_STORE_DOMAIN (build-time) > the identifier\n * the SSR worker resolved (published into the head — wrangler `vars` are server-only, so\n * without this the browser would fall back to its own host and request a different store than\n * the one that was rendered) > window.location.host > runtime env (process.env).\n */\nexport function getStoreIdentifier(explicit?: string): string {\n if (explicit) return explicit;\n try {\n const viteEnv = (import.meta as any).env?.VITE_STORE_DOMAIN;\n if (viteEnv) return viteEnv;\n } catch {\n /* import.meta not available in all environments */\n }\n const injected = getInjectedRuntimeEnv().storeIdentifier;\n if (injected) return injected;\n if (isBrowser) return window.location.host;\n return (\n (typeof process !== 'undefined' &&\n (process.env?.VITE_STORE_DOMAIN || process.env?.STORE_DOMAIN)) ||\n ''\n );\n}\n\n/**\n * Get Salla SDK instance if available\n */\nexport function getSallaSDK(): typeof window.salla | undefined {\n if (!isBrowser) return undefined;\n return window.salla;\n}\n\n/**\n * Push the active route locale onto the Salla SDK.\n *\n * Why this is needed (and why it must run on every navigation):\n * - The SDK seeds its locale from `navigator.language` — the theme sets no `s-lang`\n * cookie or `window.locale` — so an English browser starts the SDK in `en` even on\n * an `/ar` store.\n * - The SDK fixes its axios `accept-language` header ONCE, at init. `salla.lang.setLocale`\n * only swaps UI translations (it never touches the header), and `salla.init()` is a\n * no-op after `Salla.status === 'ready'`, so the header never refreshes on its own.\n * - `profile::info.fetched` (login / profile refresh on navigation) overrides the header\n * to the *account's* language.\n *\n * Net result without this: `salla.api.*` calls (cart/product details) return data in the\n * wrong locale — e.g. English cart item names on `/ar/cart` — intermittently, depending on\n * load order and whether a profile fetch ran. Re-asserting the URL locale here keeps the\n * header correct. No-op on the server and until the SDK exposes the methods.\n */\nexport function syncSdkLocale(locale: string): void {\n const sdk = getSallaSDK();\n if (!sdk || !locale) return;\n try {\n sdk.lang?.setLocale?.(locale);\n sdk.api?.setHeader?.('accept-language', locale);\n // The localization modal swaps `/${user.language_code}/` in the URL on submit;\n // the SDK never sets this locally, so without it the switch reloads the same page.\n sdk.config?.set?.('user.language_code', locale);\n } catch {\n // SDK partially loaded — the header is re-asserted on the next navigation.\n }\n}\n"]}
@@ -1,8 +1,8 @@
1
- import { product } from './chunk-Y73ZOE3I.js';
2
- import { ProductCard } from './chunk-X4Z6MIBG.js';
1
+ import { product } from './chunk-FALZ7SZO.js';
2
+ import { ProductCard } from './chunk-IWPQF6VZ.js';
3
3
  import { registry } from './chunk-G7ALL4BC.js';
4
4
  import { useTranslation } from './chunk-TYNZ5B2B.js';
5
- import { Image, LazyRenderWhenVisible } from './chunk-DA43QUYK.js';
5
+ import { Image, LazyRenderWhenVisible } from './chunk-ONGTNGTR.js';
6
6
  import { Link } from './chunk-AXW67SY7.js';
7
7
  import { TwilightContext } from './chunk-DF6FBKDN.js';
8
8
  import { memo, useState, useCallback, createElement, useEffect, lazy, Component, useRef, useMemo, Suspense } from 'react';
@@ -691,5 +691,5 @@ var HomeComponentRenderer = memo(function HomeComponentRenderer2({
691
691
  });
692
692
 
693
693
  export { BundleComponent, ComponentErrorBoundary, DefaultHomeComponents, FeaturedProductsStyle1, FeaturedProductsStyle2, FeaturedProductsStyle3, FixedBanner, FixedProducts, HomeComponentRenderer, LazyTestimonials, ParallaxBackground, PhotosSlider, ProductsSlider, SquarePhotos, StoreFeatures, Youtube, registerHomeComponentConfig, registerHomeComponents };
694
- //# sourceMappingURL=chunk-ODXQLAF4.js.map
695
- //# sourceMappingURL=chunk-ODXQLAF4.js.map
694
+ //# sourceMappingURL=chunk-4BIYLPIT.js.map
695
+ //# sourceMappingURL=chunk-4BIYLPIT.js.map