@salla.sa/twilight-theme-engine 1.0.151 → 1.0.152

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 (226) hide show
  1. package/dist/{AddToCartForm-O6TPONV2.js → AddToCartForm-HOBSTMWX.js} +3 -3
  2. package/dist/{AddToCartForm-O6TPONV2.js.map → AddToCartForm-HOBSTMWX.js.map} +1 -1
  3. package/dist/{BlogAuthorPage-H6LRQ5YW.js → BlogAuthorPage-56OY5GCN.js} +16 -16
  4. package/dist/{BlogAuthorPage-H6LRQ5YW.js.map → BlogAuthorPage-56OY5GCN.js.map} +1 -1
  5. package/dist/{BlogCategoryPage-NORT43JE.js → BlogCategoryPage-HW7A6RNL.js} +16 -16
  6. package/dist/{BlogCategoryPage-NORT43JE.js.map → BlogCategoryPage-HW7A6RNL.js.map} +1 -1
  7. package/dist/{BlogPage-ZGTRTQT6.js → BlogPage-RRHKP3GP.js} +14 -14
  8. package/dist/{BlogPage-ZGTRTQT6.js.map → BlogPage-RRHKP3GP.js.map} +1 -1
  9. package/dist/{BlogSinglePage-G7TUMA4L.js → BlogSinglePage-STNMFQHX.js} +14 -14
  10. package/dist/{BlogSinglePage-G7TUMA4L.js.map → BlogSinglePage-STNMFQHX.js.map} +1 -1
  11. package/dist/{BlogTagPage-3LFUVXP3.js → BlogTagPage-YD3EPTQY.js} +16 -16
  12. package/dist/{BlogTagPage-3LFUVXP3.js.map → BlogTagPage-YD3EPTQY.js.map} +1 -1
  13. package/dist/{BrandsPage-NA5BVFVS.js → BrandsPage-KJFB4QBN.js} +15 -15
  14. package/dist/{BrandsPage-NA5BVFVS.js.map → BrandsPage-KJFB4QBN.js.map} +1 -1
  15. package/dist/{Breadcrumb-MNSFVYUT.js → Breadcrumb-QKHYTTFB.js} +14 -14
  16. package/dist/{Breadcrumb-MNSFVYUT.js.map → Breadcrumb-QKHYTTFB.js.map} +1 -1
  17. package/dist/{CartItem-N6OPII7B.js → CartItem-DCCYGMRI.js} +14 -14
  18. package/dist/{CartItem-N6OPII7B.js.map → CartItem-DCCYGMRI.js.map} +1 -1
  19. package/dist/{CartSummary-LGYAIG7C.js → CartSummary-DAAYDRFS.js} +14 -14
  20. package/dist/{CartSummary-LGYAIG7C.js.map → CartSummary-DAAYDRFS.js.map} +1 -1
  21. package/dist/{Copyright-YXWJNV5Q.js → Copyright-GL5Q4FTN.js} +3 -3
  22. package/dist/{Copyright-YXWJNV5Q.js.map → Copyright-GL5Q4FTN.js.map} +1 -1
  23. package/dist/{CustomerLayout-YU7TKV2Q.js → CustomerLayout-D7HC4G7V.js} +14 -14
  24. package/dist/{CustomerLayout-YU7TKV2Q.js.map → CustomerLayout-D7HC4G7V.js.map} +1 -1
  25. package/dist/{Footer-4QV4H67O.js → Footer-3NQWLPAA.js} +4 -4
  26. package/dist/{Footer-4QV4H67O.js.map → Footer-3NQWLPAA.js.map} +1 -1
  27. package/dist/{Header-DEUDDAWD.js → Header-SCR46P4B.js} +8 -8
  28. package/dist/{Header-DEUDDAWD.js.map → Header-SCR46P4B.js.map} +1 -1
  29. package/dist/{LatestProducts-KA54KWOQ.js → LatestProducts-4UML6BNG.js} +16 -16
  30. package/dist/{LatestProducts-KA54KWOQ.js.map → LatestProducts-4UML6BNG.js.map} +1 -1
  31. package/dist/{LoyaltyPage-7FJROQFU.js → LoyaltyPage-CQIUT7MD.js} +14 -14
  32. package/dist/{LoyaltyPage-7FJROQFU.js.map → LoyaltyPage-CQIUT7MD.js.map} +1 -1
  33. package/dist/{LoyaltyPointsPage-JXT65P5U.js → LoyaltyPointsPage-ZOZFDRZT.js} +6 -6
  34. package/dist/{LoyaltyPointsPage-JXT65P5U.js.map → LoyaltyPointsPage-ZOZFDRZT.js.map} +1 -1
  35. package/dist/{MainMenu-UOAPVNJH.js → MainMenu-YLCB4MT7.js} +5 -5
  36. package/dist/{MainMenu-UOAPVNJH.js.map → MainMenu-YLCB4MT7.js.map} +1 -1
  37. package/dist/{MasterLayout-Z45QJW3M.js → MasterLayout-BDDKPLS6.js} +14 -14
  38. package/dist/{MasterLayout-Z45QJW3M.js.map → MasterLayout-BDDKPLS6.js.map} +1 -1
  39. package/dist/{MobileMenu-A4QIBBYN.js → MobileMenu-S5LB622I.js} +15 -15
  40. package/dist/{MobileMenu-A4QIBBYN.js.map → MobileMenu-S5LB622I.js.map} +1 -1
  41. package/dist/{NotificationsPage-XU5IBNPR.js → NotificationsPage-FPF7UU3Q.js} +14 -14
  42. package/dist/{NotificationsPage-XU5IBNPR.js.map → NotificationsPage-FPF7UU3Q.js.map} +1 -1
  43. package/dist/{OrderSinglePage-5ANTMCBP.js → OrderSinglePage-M37ROUBX.js} +15 -15
  44. package/dist/{OrderSinglePage-5ANTMCBP.js.map → OrderSinglePage-M37ROUBX.js.map} +1 -1
  45. package/dist/{OrdersPage-LZLPSDZR.js → OrdersPage-GIZFTPQ7.js} +14 -14
  46. package/dist/{OrdersPage-LZLPSDZR.js.map → OrdersPage-GIZFTPQ7.js.map} +1 -1
  47. package/dist/{PageSingle-PMLCSRMC.js → PageSingle-EQD5Y3L5.js} +3 -3
  48. package/dist/{PageSingle-PMLCSRMC.js.map → PageSingle-EQD5Y3L5.js.map} +1 -1
  49. package/dist/{ProductDetails-ECPCGZLO.js → ProductDetails-53BXVF37.js} +4 -4
  50. package/dist/{ProductDetails-ECPCGZLO.js.map → ProductDetails-53BXVF37.js.map} +1 -1
  51. package/dist/{ProfilePage-XVWB4ZOO.js → ProfilePage-6GJXTBFN.js} +14 -14
  52. package/dist/{ProfilePage-XVWB4ZOO.js.map → ProfilePage-6GJXTBFN.js.map} +1 -1
  53. package/dist/{ReviewsPage-6EOSOIU4.js → ReviewsPage-SCHVMKXV.js} +3 -3
  54. package/dist/{ReviewsPage-6EOSOIU4.js.map → ReviewsPage-SCHVMKXV.js.map} +1 -1
  55. package/dist/{SeoCartWidget-TYNXS4UD.js → SeoCartWidget-IUXLYOTC.js} +14 -14
  56. package/dist/{SeoCartWidget-TYNXS4UD.js.map → SeoCartWidget-IUXLYOTC.js.map} +1 -1
  57. package/dist/{SettingsPage-BHW3CJC6.js → SettingsPage-2TKL2COF.js} +14 -14
  58. package/dist/{SettingsPage-BHW3CJC6.js.map → SettingsPage-2TKL2COF.js.map} +1 -1
  59. package/dist/{StoreClosedNotification-7YHL4XTT.js → StoreClosedNotification-HHOQXT6N.js} +15 -15
  60. package/dist/{StoreClosedNotification-7YHL4XTT.js.map → StoreClosedNotification-HHOQXT6N.js.map} +1 -1
  61. package/dist/{TestimonialsPage-ZY2U4QDN.js → TestimonialsPage-GJJT7F5G.js} +3 -3
  62. package/dist/{TestimonialsPage-ZY2U4QDN.js.map → TestimonialsPage-GJJT7F5G.js.map} +1 -1
  63. package/dist/{ThankYouPage-MINROTEH.js → ThankYouPage-ZAEZWSUK.js} +14 -14
  64. package/dist/{ThankYouPage-MINROTEH.js.map → ThankYouPage-ZAEZWSUK.js.map} +1 -1
  65. package/dist/{WalletPage-4VFAGWIE.js → WalletPage-74LAUONG.js} +15 -15
  66. package/dist/{WalletPage-4VFAGWIE.js.map → WalletPage-74LAUONG.js.map} +1 -1
  67. package/dist/{WebMcpTools-F42SFWVP.js → WebMcpTools-J6HCO5B6.js} +5 -5
  68. package/dist/{WebMcpTools-F42SFWVP.js.map → WebMcpTools-J6HCO5B6.js.map} +1 -1
  69. package/dist/{WishlistPage-VMM4YDMX.js → WishlistPage-SV55V5CP.js} +16 -16
  70. package/dist/{WishlistPage-VMM4YDMX.js.map → WishlistPage-SV55V5CP.js.map} +1 -1
  71. package/dist/api/advertisement.js +2 -2
  72. package/dist/api/apps.js +2 -2
  73. package/dist/api/blog.js +3 -3
  74. package/dist/api/brands.js +3 -3
  75. package/dist/api/cart.js +3 -3
  76. package/dist/api/category.js +3 -3
  77. package/dist/api/client.js +1 -1
  78. package/dist/api/home.js +2 -2
  79. package/dist/api/loyalty.js +3 -3
  80. package/dist/api/menu.js +2 -2
  81. package/dist/api/notification.js +2 -2
  82. package/dist/api/order.js +3 -3
  83. package/dist/api/page.js +3 -3
  84. package/dist/api/product.js +3 -3
  85. package/dist/api/profile.js +1 -1
  86. package/dist/api/store.js +2 -2
  87. package/dist/api/translations.js +2 -2
  88. package/dist/api/user.js +2 -2
  89. package/dist/api/wallet.js +2 -2
  90. package/dist/api/wishlist.js +4 -4
  91. package/dist/{chunk-WZAJS44F.js → chunk-4SZNUX4K.js} +11 -11
  92. package/dist/{chunk-WZAJS44F.js.map → chunk-4SZNUX4K.js.map} +1 -1
  93. package/dist/{chunk-N2Y5VSHM.js → chunk-5VTVPQQB.js} +4 -4
  94. package/dist/{chunk-N2Y5VSHM.js.map → chunk-5VTVPQQB.js.map} +1 -1
  95. package/dist/{chunk-DGPSZUI3.js → chunk-64RDACOS.js} +4 -4
  96. package/dist/{chunk-DGPSZUI3.js.map → chunk-64RDACOS.js.map} +1 -1
  97. package/dist/{chunk-R6Z6JQIB.js → chunk-677OXNGV.js} +3 -3
  98. package/dist/{chunk-R6Z6JQIB.js.map → chunk-677OXNGV.js.map} +1 -1
  99. package/dist/{chunk-OGEG4QHV.js → chunk-A2SS3TNE.js} +3 -3
  100. package/dist/{chunk-OGEG4QHV.js.map → chunk-A2SS3TNE.js.map} +1 -1
  101. package/dist/{chunk-R4QBCQ4K.js → chunk-AFFBCOH6.js} +3 -3
  102. package/dist/{chunk-R4QBCQ4K.js.map → chunk-AFFBCOH6.js.map} +1 -1
  103. package/dist/{chunk-SF2POPJW.js → chunk-AU2XMLTH.js} +3 -3
  104. package/dist/{chunk-SF2POPJW.js.map → chunk-AU2XMLTH.js.map} +1 -1
  105. package/dist/{chunk-F6MYOPZB.js → chunk-BIVBSVWR.js} +4 -4
  106. package/dist/{chunk-F6MYOPZB.js.map → chunk-BIVBSVWR.js.map} +1 -1
  107. package/dist/{chunk-CEIXIUJ7.js → chunk-BWKHA4ZD.js} +4 -4
  108. package/dist/{chunk-CEIXIUJ7.js.map → chunk-BWKHA4ZD.js.map} +1 -1
  109. package/dist/{chunk-DXQUURZX.js → chunk-BY4DQTOG.js} +7 -7
  110. package/dist/{chunk-DXQUURZX.js.map → chunk-BY4DQTOG.js.map} +1 -1
  111. package/dist/{chunk-6R2AUQMP.js → chunk-CV32FSEL.js} +3 -3
  112. package/dist/{chunk-6R2AUQMP.js.map → chunk-CV32FSEL.js.map} +1 -1
  113. package/dist/{chunk-77SZTUQE.js → chunk-EAQAPYYU.js} +7 -7
  114. package/dist/{chunk-77SZTUQE.js.map → chunk-EAQAPYYU.js.map} +1 -1
  115. package/dist/{chunk-PHWFTUTE.js → chunk-EFKVEYML.js} +5 -5
  116. package/dist/{chunk-PHWFTUTE.js.map → chunk-EFKVEYML.js.map} +1 -1
  117. package/dist/{chunk-A7E6XFZC.js → chunk-F5RU2UCE.js} +15 -15
  118. package/dist/{chunk-A7E6XFZC.js.map → chunk-F5RU2UCE.js.map} +1 -1
  119. package/dist/{chunk-YQ365K65.js → chunk-FCFIG4M3.js} +3 -3
  120. package/dist/{chunk-YQ365K65.js.map → chunk-FCFIG4M3.js.map} +1 -1
  121. package/dist/{chunk-MQU6G2ZE.js → chunk-HSJCVD3P.js} +4 -4
  122. package/dist/{chunk-MQU6G2ZE.js.map → chunk-HSJCVD3P.js.map} +1 -1
  123. package/dist/{chunk-DKIU6ZOP.js → chunk-I3KAWUPG.js} +4 -4
  124. package/dist/{chunk-DKIU6ZOP.js.map → chunk-I3KAWUPG.js.map} +1 -1
  125. package/dist/{chunk-QNGA2NAC.js → chunk-I5GFTVR2.js} +4 -4
  126. package/dist/{chunk-QNGA2NAC.js.map → chunk-I5GFTVR2.js.map} +1 -1
  127. package/dist/{chunk-KBWIXAHN.js → chunk-IO4CVUL5.js} +3 -3
  128. package/dist/{chunk-KBWIXAHN.js.map → chunk-IO4CVUL5.js.map} +1 -1
  129. package/dist/{chunk-MVSOSNNB.js → chunk-JWYZLXJZ.js} +5 -5
  130. package/dist/{chunk-MVSOSNNB.js.map → chunk-JWYZLXJZ.js.map} +1 -1
  131. package/dist/{chunk-ULGRYCUV.js → chunk-KNY2ZZ5M.js} +3 -3
  132. package/dist/{chunk-ULGRYCUV.js.map → chunk-KNY2ZZ5M.js.map} +1 -1
  133. package/dist/{chunk-LRQ75MWP.js → chunk-LAO3MSKN.js} +7 -7
  134. package/dist/{chunk-LRQ75MWP.js.map → chunk-LAO3MSKN.js.map} +1 -1
  135. package/dist/{chunk-K577255O.js → chunk-LJXWCGBH.js} +7 -7
  136. package/dist/{chunk-K577255O.js.map → chunk-LJXWCGBH.js.map} +1 -1
  137. package/dist/{chunk-O7PJBTH3.js → chunk-LPF6YURL.js} +3 -3
  138. package/dist/{chunk-O7PJBTH3.js.map → chunk-LPF6YURL.js.map} +1 -1
  139. package/dist/{chunk-CATEET2N.js → chunk-MJQ3HFLJ.js} +3 -3
  140. package/dist/{chunk-CATEET2N.js.map → chunk-MJQ3HFLJ.js.map} +1 -1
  141. package/dist/{chunk-3JJQCRXD.js → chunk-N2RAPPQ3.js} +4 -4
  142. package/dist/{chunk-3JJQCRXD.js.map → chunk-N2RAPPQ3.js.map} +1 -1
  143. package/dist/{chunk-Q76O67KK.js → chunk-O76H6TDP.js} +3 -3
  144. package/dist/{chunk-Q76O67KK.js.map → chunk-O76H6TDP.js.map} +1 -1
  145. package/dist/{chunk-DKPM4T4C.js → chunk-OZRGUVHQ.js} +4 -4
  146. package/dist/{chunk-DKPM4T4C.js.map → chunk-OZRGUVHQ.js.map} +1 -1
  147. package/dist/{chunk-GZUBV5S3.js → chunk-R4LA6IMS.js} +3 -3
  148. package/dist/{chunk-GZUBV5S3.js.map → chunk-R4LA6IMS.js.map} +1 -1
  149. package/dist/{chunk-OJ4PJK27.js → chunk-S5KE6KPV.js} +4 -4
  150. package/dist/{chunk-OJ4PJK27.js.map → chunk-S5KE6KPV.js.map} +1 -1
  151. package/dist/{chunk-3ULBL56H.js → chunk-SIYINCXL.js} +3 -3
  152. package/dist/{chunk-3ULBL56H.js.map → chunk-SIYINCXL.js.map} +1 -1
  153. package/dist/{chunk-SBZWX6II.js → chunk-SXJEZEGN.js} +3 -3
  154. package/dist/{chunk-SBZWX6II.js.map → chunk-SXJEZEGN.js.map} +1 -1
  155. package/dist/{chunk-T7H5KE5Y.js → chunk-UBRG55VM.js} +4 -4
  156. package/dist/{chunk-T7H5KE5Y.js.map → chunk-UBRG55VM.js.map} +1 -1
  157. package/dist/{chunk-5CXBBDJB.js → chunk-UG44HSCN.js} +4 -4
  158. package/dist/{chunk-5CXBBDJB.js.map → chunk-UG44HSCN.js.map} +1 -1
  159. package/dist/{chunk-LDXVGQA2.js → chunk-UL2DRYH3.js} +3 -3
  160. package/dist/{chunk-LDXVGQA2.js.map → chunk-UL2DRYH3.js.map} +1 -1
  161. package/dist/{chunk-Z4BOATCC.js → chunk-URBOD4MX.js} +3 -3
  162. package/dist/{chunk-Z4BOATCC.js.map → chunk-URBOD4MX.js.map} +1 -1
  163. package/dist/{chunk-CH6BNMS6.js → chunk-VBAFSMNX.js} +3 -3
  164. package/dist/{chunk-CH6BNMS6.js.map → chunk-VBAFSMNX.js.map} +1 -1
  165. package/dist/{chunk-RRDKYXHU.js → chunk-XEHOZTER.js} +3 -3
  166. package/dist/{chunk-RRDKYXHU.js.map → chunk-XEHOZTER.js.map} +1 -1
  167. package/dist/{chunk-GYJJX4EI.js → chunk-XTBFIIAR.js} +4 -4
  168. package/dist/{chunk-GYJJX4EI.js.map → chunk-XTBFIIAR.js.map} +1 -1
  169. package/dist/{chunk-H7A7LOQJ.js → chunk-ZBGMIDDO.js} +3 -3
  170. package/dist/{chunk-H7A7LOQJ.js.map → chunk-ZBGMIDDO.js.map} +1 -1
  171. package/dist/{chunk-WJCDY35D.js → chunk-ZC4O472R.js} +5 -5
  172. package/dist/{chunk-WJCDY35D.js.map → chunk-ZC4O472R.js.map} +1 -1
  173. package/dist/components/cart/index.js +1 -1
  174. package/dist/components/common/index.js +1 -1
  175. package/dist/components/drawer/index.js +12 -12
  176. package/dist/components/home/index.js +17 -17
  177. package/dist/components/layout/index.js +4 -4
  178. package/dist/components/product/index.js +14 -14
  179. package/dist/components/store/index.js +13 -13
  180. package/dist/dev/editor/index.js +1 -1
  181. package/dist/dev/index.js +1 -1
  182. package/dist/{document-class-QZXX5ZEE.js → document-class-XYBFXCE7.js} +12 -12
  183. package/dist/{document-class-QZXX5ZEE.js.map → document-class-XYBFXCE7.js.map} +1 -1
  184. package/dist/hooks/index.js +12 -12
  185. package/dist/hooks/useGtm.js +12 -12
  186. package/dist/hooks/useMoney.js +12 -12
  187. package/dist/hooks/useStore.js +12 -12
  188. package/dist/hooks/useUser.js +3 -3
  189. package/dist/index.js +12 -12
  190. package/dist/{navigation-FKU75TCE.js → navigation-QDTYXINL.js} +4 -4
  191. package/dist/{navigation-FKU75TCE.js.map → navigation-QDTYXINL.js.map} +1 -1
  192. package/dist/{navigation-DF4JEVKE.js → navigation-SHFUWYCA.js} +5 -5
  193. package/dist/{navigation-DF4JEVKE.js.map → navigation-SHFUWYCA.js.map} +1 -1
  194. package/dist/{not-found-E72Z34CJ.js → not-found-IFD562WC.js} +15 -15
  195. package/dist/{not-found-E72Z34CJ.js.map → not-found-IFD562WC.js.map} +1 -1
  196. package/dist/providers/index.js +12 -12
  197. package/dist/routes/account/orders.js +4 -4
  198. package/dist/routes/account.js +13 -13
  199. package/dist/routes/blog.js +8 -8
  200. package/dist/routes/brands.js +4 -4
  201. package/dist/routes/cart.js +21 -21
  202. package/dist/routes/home.js +18 -18
  203. package/dist/routes/index.js +3 -3
  204. package/dist/routes/loyalty.js +5 -5
  205. package/dist/routes/page/loader.d.ts.map +1 -1
  206. package/dist/routes/page.js +5 -4
  207. package/dist/routes/page.js.map +1 -1
  208. package/dist/routes/product/loader.d.ts.map +1 -1
  209. package/dist/routes/product-listing.js +22 -22
  210. package/dist/routes/product.js +18 -17
  211. package/dist/routes/product.js.map +1 -1
  212. package/dist/routes/seo-redirects.js +3 -3
  213. package/dist/routes/testimonials.js +2 -2
  214. package/dist/routes/thank-you.js +4 -4
  215. package/dist/skeleton.js +18 -18
  216. package/dist/{store-lookup-LPXG5JSB.js → store-lookup-AJT3ZHTS.js} +8 -8
  217. package/dist/{store-lookup-LPXG5JSB.js.map → store-lookup-AJT3ZHTS.js.map} +1 -1
  218. package/dist/tanstack/templates/locale-wrapper.d.ts +3 -1
  219. package/dist/tanstack/templates/locale-wrapper.d.ts.map +1 -1
  220. package/dist/tanstack.js +12 -12
  221. package/dist/utils/index.js +2 -2
  222. package/dist/vite/index.js +29 -11
  223. package/dist/vite/index.js.map +1 -1
  224. package/package.json +1 -1
  225. package/tailwind/routes/page/loader.ts.txt +4 -0
  226. package/tailwind/routes/product/loader.ts.txt +5 -0
@@ -2,24 +2,24 @@ import { lazyComponent } from './chunk-VYGA5AT5.js';
2
2
 
3
3
  // src/components/layout/lazy.ts
4
4
  var LazyHeader = lazyComponent(
5
- () => import('./Header-DEUDDAWD.js').then((m) => ({ default: m.Header }))
5
+ () => import('./Header-SCR46P4B.js').then((m) => ({ default: m.Header }))
6
6
  );
7
7
  var LazyFooter = lazyComponent(
8
- () => import('./Footer-4QV4H67O.js').then((m) => ({ default: m.Footer }))
8
+ () => import('./Footer-3NQWLPAA.js').then((m) => ({ default: m.Footer }))
9
9
  );
10
10
  var LazyCopyright = lazyComponent(
11
- () => import('./Copyright-YXWJNV5Q.js').then((m) => ({ default: m.Copyright }))
11
+ () => import('./Copyright-GL5Q4FTN.js').then((m) => ({ default: m.Copyright }))
12
12
  );
13
13
  var LazyMasterLayout = lazyComponent(
14
- () => import('./MasterLayout-Z45QJW3M.js').then((m) => ({ default: m.MasterLayout }))
14
+ () => import('./MasterLayout-BDDKPLS6.js').then((m) => ({ default: m.MasterLayout }))
15
15
  );
16
16
  var LazyWidgetHead = lazyComponent(
17
17
  () => import('./WidgetHead-BCRIXIJQ.js').then((m) => ({ default: m.WidgetHead }))
18
18
  );
19
19
  var LazyCustomerLayout = lazyComponent(
20
- () => import('./CustomerLayout-YU7TKV2Q.js').then((m) => ({ default: m.CustomerLayout }))
20
+ () => import('./CustomerLayout-D7HC4G7V.js').then((m) => ({ default: m.CustomerLayout }))
21
21
  );
22
22
 
23
23
  export { LazyCopyright, LazyCustomerLayout, LazyFooter, LazyHeader, LazyMasterLayout, LazyWidgetHead };
24
- //# sourceMappingURL=chunk-77SZTUQE.js.map
25
- //# sourceMappingURL=chunk-77SZTUQE.js.map
24
+ //# sourceMappingURL=chunk-EAQAPYYU.js.map
25
+ //# sourceMappingURL=chunk-EAQAPYYU.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/components/layout/lazy.ts"],"names":[],"mappings":";;;AAMO,IAAM,UAAA,GAAa,aAAA;AAAA,EAAc,MACtC,OAAO,sBAAU,CAAA,CAAE,IAAA,CAAK,CAAC,CAAA,MAAO,EAAE,OAAA,EAAS,CAAA,CAAE,MAAA,EAAO,CAAE;AACxD;AAEO,IAAM,UAAA,GAAa,aAAA;AAAA,EAAc,MACtC,OAAO,sBAAU,CAAA,CAAE,IAAA,CAAK,CAAC,CAAA,MAAO,EAAE,OAAA,EAAS,CAAA,CAAE,MAAA,EAAO,CAAE;AACxD;AAEO,IAAM,aAAA,GAAgB,aAAA;AAAA,EAAc,MACzC,OAAO,yBAAa,CAAA,CAAE,IAAA,CAAK,CAAC,CAAA,MAAO,EAAE,OAAA,EAAS,CAAA,CAAE,SAAA,EAAU,CAAE;AAC9D;AAEO,IAAM,gBAAA,GAAmB,aAAA;AAAA,EAAc,MAC5C,OAAO,4BAAgB,CAAA,CAAE,IAAA,CAAK,CAAC,CAAA,MAAO,EAAE,OAAA,EAAS,CAAA,CAAE,YAAA,EAAa,CAAE;AACpE;AAEO,IAAM,cAAA,GAAiB,aAAA;AAAA,EAAc,MAC1C,OAAO,0BAAc,CAAA,CAAE,IAAA,CAAK,CAAC,CAAA,MAAO,EAAE,OAAA,EAAS,CAAA,CAAE,UAAA,EAAW,CAAE;AAChE;AAEO,IAAM,kBAAA,GAAqB,aAAA;AAAA,EAAc,MAC9C,OAAO,8BAAkB,CAAA,CAAE,IAAA,CAAK,CAAC,CAAA,MAAO,EAAE,OAAA,EAAS,CAAA,CAAE,cAAA,EAAe,CAAE;AACxE","file":"chunk-77SZTUQE.js","sourcesContent":["import { lazyComponent } from '../../utils/lazy-component';\n\n/**\n * Lazy-loaded layout components\n * Use these for code-splitting layout sections\n */\nexport const LazyHeader = lazyComponent(() =>\n import('./Header').then((m) => ({ default: m.Header }))\n);\n\nexport const LazyFooter = lazyComponent(() =>\n import('./Footer').then((m) => ({ default: m.Footer }))\n);\n\nexport const LazyCopyright = lazyComponent(() =>\n import('./Copyright').then((m) => ({ default: m.Copyright }))\n);\n\nexport const LazyMasterLayout = lazyComponent(() =>\n import('./MasterLayout').then((m) => ({ default: m.MasterLayout }))\n);\n\nexport const LazyWidgetHead = lazyComponent(() =>\n import('./WidgetHead').then((m) => ({ default: m.WidgetHead }))\n);\n\nexport const LazyCustomerLayout = lazyComponent(() =>\n import('./CustomerLayout').then((m) => ({ default: m.CustomerLayout }))\n);\n"]}
1
+ {"version":3,"sources":["../src/components/layout/lazy.ts"],"names":[],"mappings":";;;AAMO,IAAM,UAAA,GAAa,aAAA;AAAA,EAAc,MACtC,OAAO,sBAAU,CAAA,CAAE,IAAA,CAAK,CAAC,CAAA,MAAO,EAAE,OAAA,EAAS,CAAA,CAAE,MAAA,EAAO,CAAE;AACxD;AAEO,IAAM,UAAA,GAAa,aAAA;AAAA,EAAc,MACtC,OAAO,sBAAU,CAAA,CAAE,IAAA,CAAK,CAAC,CAAA,MAAO,EAAE,OAAA,EAAS,CAAA,CAAE,MAAA,EAAO,CAAE;AACxD;AAEO,IAAM,aAAA,GAAgB,aAAA;AAAA,EAAc,MACzC,OAAO,yBAAa,CAAA,CAAE,IAAA,CAAK,CAAC,CAAA,MAAO,EAAE,OAAA,EAAS,CAAA,CAAE,SAAA,EAAU,CAAE;AAC9D;AAEO,IAAM,gBAAA,GAAmB,aAAA;AAAA,EAAc,MAC5C,OAAO,4BAAgB,CAAA,CAAE,IAAA,CAAK,CAAC,CAAA,MAAO,EAAE,OAAA,EAAS,CAAA,CAAE,YAAA,EAAa,CAAE;AACpE;AAEO,IAAM,cAAA,GAAiB,aAAA;AAAA,EAAc,MAC1C,OAAO,0BAAc,CAAA,CAAE,IAAA,CAAK,CAAC,CAAA,MAAO,EAAE,OAAA,EAAS,CAAA,CAAE,UAAA,EAAW,CAAE;AAChE;AAEO,IAAM,kBAAA,GAAqB,aAAA;AAAA,EAAc,MAC9C,OAAO,8BAAkB,CAAA,CAAE,IAAA,CAAK,CAAC,CAAA,MAAO,EAAE,OAAA,EAAS,CAAA,CAAE,cAAA,EAAe,CAAE;AACxE","file":"chunk-EAQAPYYU.js","sourcesContent":["import { lazyComponent } from '../../utils/lazy-component';\n\n/**\n * Lazy-loaded layout components\n * Use these for code-splitting layout sections\n */\nexport const LazyHeader = lazyComponent(() =>\n import('./Header').then((m) => ({ default: m.Header }))\n);\n\nexport const LazyFooter = lazyComponent(() =>\n import('./Footer').then((m) => ({ default: m.Footer }))\n);\n\nexport const LazyCopyright = lazyComponent(() =>\n import('./Copyright').then((m) => ({ default: m.Copyright }))\n);\n\nexport const LazyMasterLayout = lazyComponent(() =>\n import('./MasterLayout').then((m) => ({ default: m.MasterLayout }))\n);\n\nexport const LazyWidgetHead = lazyComponent(() =>\n import('./WidgetHead').then((m) => ({ default: m.WidgetHead }))\n);\n\nexport const LazyCustomerLayout = lazyComponent(() =>\n import('./CustomerLayout').then((m) => ({ default: m.CustomerLayout }))\n);\n"]}
@@ -1,7 +1,7 @@
1
1
  import { reorder, useLiveBlockMoves } from './chunk-IXHM24Z4.js';
2
- import { HomeComponentRenderer, ReorderProducts } from './chunk-LRQ75MWP.js';
3
- import { home } from './chunk-R4QBCQ4K.js';
4
- import { useDevHomeBlocks } from './chunk-CATEET2N.js';
2
+ import { HomeComponentRenderer, ReorderProducts } from './chunk-LAO3MSKN.js';
3
+ import { home } from './chunk-AFFBCOH6.js';
4
+ import { useDevHomeBlocks } from './chunk-MJQ3HFLJ.js';
5
5
  import { storePageUrl, buildHreflangAlternates } from './chunk-M2MJKUQF.js';
6
6
  import { RouteId } from './chunk-OUW6WESU.js';
7
7
  import { HookSlot } from './chunk-5XDPAKF5.js';
@@ -104,5 +104,5 @@ function head(ctx) {
104
104
  var Home = { id: RouteId.INDEX, loader, head, Component: HomePage };
105
105
 
106
106
  export { Home, HomeSkeleton, homeLoader };
107
- //# sourceMappingURL=chunk-PHWFTUTE.js.map
108
- //# sourceMappingURL=chunk-PHWFTUTE.js.map
107
+ //# sourceMappingURL=chunk-EFKVEYML.js.map
108
+ //# sourceMappingURL=chunk-EFKVEYML.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/routes/home/loader.ts","../src/routes/home/HomePage.tsx","../src/routes/home/index.tsx"],"names":["HomeSkeleton","HomePage"],"mappings":"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","file":"chunk-PHWFTUTE.js","sourcesContent":["import { getTwilightContext } from '../../twilight/context';\nimport { home } from '../../api/home';\nimport type { HomeComponentData } from '../../types';\nimport { RouteId } from '../../router/route-ids';\n\nexport interface HomeLoaderData {\n locale: string;\n components: HomeComponentData[];\n page: { slug: string };\n}\n\nexport async function homeLoader(ctx?: { locale?: string }): Promise<HomeLoaderData> {\n const { queryClient } = getTwilightContext();\n const components = await queryClient.ensureQueryData(home.queries.components());\n const result = {\n locale: ctx?.locale || 'ar',\n components: components.map((comp) => ({\n ...comp,\n path: comp.path?.replace('home.', '') || comp.path,\n })),\n page: { slug: RouteId.INDEX },\n };\n return result;\n}\n","import { memo, useCallback, useState } from 'react';\nimport { useDevHomeBlocks } from '../../dev/dev-settings-store';\nimport { HookSlot } from '../../hooks';\nimport { HomeComponentRenderer, ReorderProducts } from '../../components/home';\nimport { reorder, useLiveBlockMoves } from '../../components/live-editor/moves';\nimport type { HomePageProps } from './types';\nimport type { HomeComponentData } from '../../types';\nimport { Pulse } from '@salla.sa/twilight-components-react';\n\nexport const HomeSkeleton = memo(function HomeSkeleton() {\n return (\n <>\n <div className=\"s-block container skeleton-block-hero\">\n <Pulse className=\"h-64 sm:h-80 rounded-md\" />\n </div>\n <div className=\"s-block container skeleton-block-products\">\n <Pulse className=\"h-10 w-48 mb-4\" />\n <div className=\"grid grid-cols-2 sm:grid-cols-4 gap-4\">\n {[1, 2, 3, 4].map((i) => (\n <Pulse key={i} className=\"h-56\" />\n ))}\n </div>\n </div>\n <div className=\"s-block container skeleton-block-products\">\n <Pulse className=\"h-10 w-48 mb-4\" />\n <div className=\"grid grid-cols-2 sm:grid-cols-4 gap-4\">\n {[1, 2, 3, 4].map((i) => (\n <Pulse key={i} className=\"h-56\" />\n ))}\n </div>\n </div>\n </>\n );\n});\n\n/** As on Twig, a home page with no blocks lists the store's latest products instead. */\nconst LATEST_PRODUCTS: HomeComponentData = { path: 'latest-products' };\n\n/** The blocks' places in the store's order: 0, 1, 2… */\nconst storeOrder = (blocks: readonly unknown[]) => Array.from(blocks, (_, at) => at);\n\nexport const HomePage = memo(function HomePage({ components = [] }: HomePageProps) {\n // Dev-mode only: the dev editor's layout replaces the store's blocks while it\n // is on. No-op passthrough in production builds.\n const renderedComponents = useDevHomeBlocks(components);\n // The theme editor's preview moves blocks in place while the editor saves the\n // order; blocks from the server (a new page, a reload) start over from theirs.\n const [moved, setMoved] = useState<{ source: HomeComponentData[]; order: number[] } | null>(null);\n const order = moved?.source === renderedComponents ? moved.order : null;\n const onMove = useCallback(\n (from: number, to: number) =>\n setMoved((prev) => ({\n source: renderedComponents,\n order: reorder(\n prev?.source === renderedComponents ? prev.order : storeOrder(renderedComponents),\n from,\n to\n ),\n })),\n [renderedComponents]\n );\n useLiveBlockMoves(onMove);\n const placed = order ?? storeOrder(renderedComponents);\n\n return (\n <>\n <HookSlot name=\"home:start\" />\n <HookSlot name=\"home:content\" />\n {placed.map((at, index) => {\n const data = renderedComponents[at];\n // `data.key` is the twilight.json catalog id, shared by every placement\n // of that block. Platform blocks send null. The block's place in the\n // store's order is unique and stays with it when the preview moves it, so\n // a move keeps its state; a dev layout block keeps its own id.\n return <HomeComponentRenderer key={data.__dev_id ?? at} data={data} index={index} />;\n })}\n {!renderedComponents.length && (\n <HomeComponentRenderer data={LATEST_PRODUCTS} index={0} editable={false} />\n )}\n <HookSlot name=\"home:end\" />\n <ReorderProducts />\n </>\n );\n});\n\nexport { HomePage as default };\n","import type { HeadDescriptor } from '../../utils/head';\nimport { buildHreflangAlternates, storePageUrl } from '../../utils/baseHead';\nimport type { HomeLoaderData } from './loader';\nimport { homeLoader } from './loader';\nimport type { TwilightContext } from '../../twilight/context';\nimport { HomePage } from './HomePage';\nimport { RouteId } from '../../router/route-ids';\n\nexport { HomeSkeleton } from './HomePage';\nexport { registerHomeComponents, DefaultHomeComponents } from '../../components/home/register';\nexport { registerHomeComponentConfig } from '../../components/home';\nexport type { HomePageProps } from './types';\nexport type { HomeLoaderData } from './loader';\nexport type {\n HomeComponentsProps,\n AnyHomeComponent,\n HomeComponentConfig,\n} from '../../components/home';\n\nfunction loader(_ctx?: { locale?: string }): Promise<HomeLoaderData> {\n return homeLoader({ locale: _ctx?.locale });\n}\n\nfunction head(ctx: TwilightContext): HeadDescriptor {\n const store = ctx.settings?.store;\n if (!store) return {};\n\n const title = store.meta?.title ?? store.name;\n const description = store.meta?.description ?? store.description;\n const keywords = store.meta?.keywords;\n // `/ar`, like Twig, where store.url reads `/ar/`.\n const url = storePageUrl(ctx.settings, ctx.location.pathname) ?? store.url;\n\n return {\n title,\n description,\n keywords,\n canonical: url,\n openGraph: {\n type: 'website',\n title,\n description,\n images: store.logo,\n url,\n },\n twitter: {\n card: 'summary_large_image',\n title,\n description,\n images: store.logo,\n },\n alternateLanguages: buildHreflangAlternates(ctx.settings, ctx.location.pathname),\n };\n}\n\nexport const Home = { id: RouteId.INDEX, loader, head, Component: HomePage } as const;\n\nexport { homeLoader };\n"]}
1
+ {"version":3,"sources":["../src/routes/home/loader.ts","../src/routes/home/HomePage.tsx","../src/routes/home/index.tsx"],"names":["HomeSkeleton","HomePage"],"mappings":"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","file":"chunk-EFKVEYML.js","sourcesContent":["import { getTwilightContext } from '../../twilight/context';\nimport { home } from '../../api/home';\nimport type { HomeComponentData } from '../../types';\nimport { RouteId } from '../../router/route-ids';\n\nexport interface HomeLoaderData {\n locale: string;\n components: HomeComponentData[];\n page: { slug: string };\n}\n\nexport async function homeLoader(ctx?: { locale?: string }): Promise<HomeLoaderData> {\n const { queryClient } = getTwilightContext();\n const components = await queryClient.ensureQueryData(home.queries.components());\n const result = {\n locale: ctx?.locale || 'ar',\n components: components.map((comp) => ({\n ...comp,\n path: comp.path?.replace('home.', '') || comp.path,\n })),\n page: { slug: RouteId.INDEX },\n };\n return result;\n}\n","import { memo, useCallback, useState } from 'react';\nimport { useDevHomeBlocks } from '../../dev/dev-settings-store';\nimport { HookSlot } from '../../hooks';\nimport { HomeComponentRenderer, ReorderProducts } from '../../components/home';\nimport { reorder, useLiveBlockMoves } from '../../components/live-editor/moves';\nimport type { HomePageProps } from './types';\nimport type { HomeComponentData } from '../../types';\nimport { Pulse } from '@salla.sa/twilight-components-react';\n\nexport const HomeSkeleton = memo(function HomeSkeleton() {\n return (\n <>\n <div className=\"s-block container skeleton-block-hero\">\n <Pulse className=\"h-64 sm:h-80 rounded-md\" />\n </div>\n <div className=\"s-block container skeleton-block-products\">\n <Pulse className=\"h-10 w-48 mb-4\" />\n <div className=\"grid grid-cols-2 sm:grid-cols-4 gap-4\">\n {[1, 2, 3, 4].map((i) => (\n <Pulse key={i} className=\"h-56\" />\n ))}\n </div>\n </div>\n <div className=\"s-block container skeleton-block-products\">\n <Pulse className=\"h-10 w-48 mb-4\" />\n <div className=\"grid grid-cols-2 sm:grid-cols-4 gap-4\">\n {[1, 2, 3, 4].map((i) => (\n <Pulse key={i} className=\"h-56\" />\n ))}\n </div>\n </div>\n </>\n );\n});\n\n/** As on Twig, a home page with no blocks lists the store's latest products instead. */\nconst LATEST_PRODUCTS: HomeComponentData = { path: 'latest-products' };\n\n/** The blocks' places in the store's order: 0, 1, 2… */\nconst storeOrder = (blocks: readonly unknown[]) => Array.from(blocks, (_, at) => at);\n\nexport const HomePage = memo(function HomePage({ components = [] }: HomePageProps) {\n // Dev-mode only: the dev editor's layout replaces the store's blocks while it\n // is on. No-op passthrough in production builds.\n const renderedComponents = useDevHomeBlocks(components);\n // The theme editor's preview moves blocks in place while the editor saves the\n // order; blocks from the server (a new page, a reload) start over from theirs.\n const [moved, setMoved] = useState<{ source: HomeComponentData[]; order: number[] } | null>(null);\n const order = moved?.source === renderedComponents ? moved.order : null;\n const onMove = useCallback(\n (from: number, to: number) =>\n setMoved((prev) => ({\n source: renderedComponents,\n order: reorder(\n prev?.source === renderedComponents ? prev.order : storeOrder(renderedComponents),\n from,\n to\n ),\n })),\n [renderedComponents]\n );\n useLiveBlockMoves(onMove);\n const placed = order ?? storeOrder(renderedComponents);\n\n return (\n <>\n <HookSlot name=\"home:start\" />\n <HookSlot name=\"home:content\" />\n {placed.map((at, index) => {\n const data = renderedComponents[at];\n // `data.key` is the twilight.json catalog id, shared by every placement\n // of that block. Platform blocks send null. The block's place in the\n // store's order is unique and stays with it when the preview moves it, so\n // a move keeps its state; a dev layout block keeps its own id.\n return <HomeComponentRenderer key={data.__dev_id ?? at} data={data} index={index} />;\n })}\n {!renderedComponents.length && (\n <HomeComponentRenderer data={LATEST_PRODUCTS} index={0} editable={false} />\n )}\n <HookSlot name=\"home:end\" />\n <ReorderProducts />\n </>\n );\n});\n\nexport { HomePage as default };\n","import type { HeadDescriptor } from '../../utils/head';\nimport { buildHreflangAlternates, storePageUrl } from '../../utils/baseHead';\nimport type { HomeLoaderData } from './loader';\nimport { homeLoader } from './loader';\nimport type { TwilightContext } from '../../twilight/context';\nimport { HomePage } from './HomePage';\nimport { RouteId } from '../../router/route-ids';\n\nexport { HomeSkeleton } from './HomePage';\nexport { registerHomeComponents, DefaultHomeComponents } from '../../components/home/register';\nexport { registerHomeComponentConfig } from '../../components/home';\nexport type { HomePageProps } from './types';\nexport type { HomeLoaderData } from './loader';\nexport type {\n HomeComponentsProps,\n AnyHomeComponent,\n HomeComponentConfig,\n} from '../../components/home';\n\nfunction loader(_ctx?: { locale?: string }): Promise<HomeLoaderData> {\n return homeLoader({ locale: _ctx?.locale });\n}\n\nfunction head(ctx: TwilightContext): HeadDescriptor {\n const store = ctx.settings?.store;\n if (!store) return {};\n\n const title = store.meta?.title ?? store.name;\n const description = store.meta?.description ?? store.description;\n const keywords = store.meta?.keywords;\n // `/ar`, like Twig, where store.url reads `/ar/`.\n const url = storePageUrl(ctx.settings, ctx.location.pathname) ?? store.url;\n\n return {\n title,\n description,\n keywords,\n canonical: url,\n openGraph: {\n type: 'website',\n title,\n description,\n images: store.logo,\n url,\n },\n twitter: {\n card: 'summary_large_image',\n title,\n description,\n images: store.logo,\n },\n alternateLanguages: buildHreflangAlternates(ctx.settings, ctx.location.pathname),\n };\n}\n\nexport const Home = { id: RouteId.INDEX, loader, head, Component: HomePage } as const;\n\nexport { homeLoader };\n"]}
@@ -1,20 +1,20 @@
1
1
  import { getModelContext } from './chunk-Q77J3D2W.js';
2
- import { Header } from './chunk-DXQUURZX.js';
3
- import { Footer } from './chunk-CH6BNMS6.js';
2
+ import { Header } from './chunk-BY4DQTOG.js';
3
+ import { Footer } from './chunk-VBAFSMNX.js';
4
4
  import { resolveTwilightSdkUrl, TICKETING_SCRIPT_URL, setSnippetPageTargets } from './chunk-GMXNVBCD.js';
5
5
  import { editorFrame, previewTheme, postToEditor, FRAME_LOADED_ACTION } from './chunk-YL6X3ZMG.js';
6
- import { useDevSettingsOverrides, useDevReportSettingsFetchedAt } from './chunk-CATEET2N.js';
7
- import { apps } from './chunk-6R2AUQMP.js';
6
+ import { useDevSettingsOverrides, useDevReportSettingsFetchedAt } from './chunk-MJQ3HFLJ.js';
7
+ import { apps } from './chunk-CV32FSEL.js';
8
8
  import { color } from './chunk-VVZNW5CB.js';
9
9
  import { applyThemeHookSlots, installAppScope } from './chunk-VDPMCOHX.js';
10
10
  import { withOwnerMaintenanceButton, withoutMaintenanceOnPreviewHost } from './chunk-BRIRWS2Q.js';
11
- import { useLocation, useIsHome, NavigationInterceptor } from './chunk-H7A7LOQJ.js';
12
- import { useUser } from './chunk-RRDKYXHU.js';
11
+ import { useLocation, useIsHome, NavigationInterceptor } from './chunk-ZBGMIDDO.js';
12
+ import { useUser } from './chunk-XEHOZTER.js';
13
13
  import { DocumentClassProvider, useDocumentClass } from './chunk-JWXJPJBO.js';
14
14
  import { WidgetHead } from './chunk-V2ZDTY6H.js';
15
15
  import { HookSlot } from './chunk-5XDPAKF5.js';
16
16
  import { hookRegistry } from './chunk-GCPEMNSU.js';
17
- import { getActiveCurrency, ENGINE_VERSION } from './chunk-YQ365K65.js';
17
+ import { getActiveCurrency, ENGINE_VERSION } from './chunk-FCFIG4M3.js';
18
18
  import { useTranslation, I18nProvider } from './chunk-TYNZ5B2B.js';
19
19
  import { Toaster } from './chunk-REBJQRQF.js';
20
20
  import { isNativeApp } from './chunk-IURXJAIK.js';
@@ -352,16 +352,16 @@ function useWebMcpSupported() {
352
352
  }
353
353
  var navigationSetups = {
354
354
  tanstack: lazyComponent(
355
- () => import('./navigation-DF4JEVKE.js').then((m) => ({ default: m.NavigationSetup }))
355
+ () => import('./navigation-SHFUWYCA.js').then((m) => ({ default: m.NavigationSetup }))
356
356
  ),
357
357
  // Not preloaded with the rest: a TanStack worker would load Next.js code it never runs.
358
- nextjs: lazy(() => import('./navigation-FKU75TCE.js').then((m) => ({ default: m.NavigationSetup })))
358
+ nextjs: lazy(() => import('./navigation-QDTYXINL.js').then((m) => ({ default: m.NavigationSetup })))
359
359
  };
360
360
 
361
361
  // src/providers/DocumentSyncRegistry.ts
362
362
  var routeDocumentSyncs = {
363
363
  tanstack: lazyComponent(
364
- () => import('./document-class-QZXX5ZEE.js').then((m) => ({
364
+ () => import('./document-class-XYBFXCE7.js').then((m) => ({
365
365
  default: m.TanStackDocumentSync
366
366
  }))
367
367
  )
@@ -883,7 +883,7 @@ var LazySiftSnippet = lazyComponent(
883
883
  () => import('./SiftSnippet-5FCU6TR6.js').then((m) => ({ default: m.SiftSnippet }))
884
884
  );
885
885
  var LazyStoreClosedNotification = lazyComponent(
886
- () => import('./StoreClosedNotification-7YHL4XTT.js').then((m) => ({
886
+ () => import('./StoreClosedNotification-HHOQXT6N.js').then((m) => ({
887
887
  default: m.StoreClosedNotification
888
888
  }))
889
889
  );
@@ -1130,7 +1130,7 @@ function SallaSdkScripts({ settings }) {
1130
1130
 
1131
1131
  // src/components/store/lazy.ts
1132
1132
  var LazyStoreClosedNotification2 = lazyComponent(
1133
- () => import('./StoreClosedNotification-7YHL4XTT.js').then((m) => ({
1133
+ () => import('./StoreClosedNotification-HHOQXT6N.js').then((m) => ({
1134
1134
  default: m.StoreClosedNotification
1135
1135
  }))
1136
1136
  );
@@ -1200,7 +1200,7 @@ function LiveEditor() {
1200
1200
  if (!frame) return null;
1201
1201
  return /* @__PURE__ */ jsx(Suspense, { fallback: null, children: /* @__PURE__ */ jsx(LazyLiveEditorBar, { origin: frame.origin, dev: frame.dev }) });
1202
1202
  }
1203
- var LazyWebMcpTools = React2.lazy(() => import('./WebMcpTools-F42SFWVP.js'));
1203
+ var LazyWebMcpTools = React2.lazy(() => import('./WebMcpTools-J6HCO5B6.js'));
1204
1204
  var getSalla2 = () => typeof window !== "undefined" ? window.salla : void 0;
1205
1205
  var TWILIGHT_LOG_STYLES = {
1206
1206
  header: "background: linear-gradient(90deg, #7c3aed, #6366f1); color: white; padding: 4px 8px; border-radius: 4px; font-weight: bold;",
@@ -1489,5 +1489,5 @@ function useStore() {
1489
1489
  }
1490
1490
 
1491
1491
  export { LazyMaintenancePage, LazyStoreClosedNotification2 as LazyStoreClosedNotification, MasterLayout, TwilightProvider, fastCheckoutScript, registerDefaultHooks, registerDocumentSync, routeDocumentSyncs, useBreadcrumbs, useDate, useGtm, useMoney, useNumber, useOpeningHours, usePageConfig, useStore };
1492
- //# sourceMappingURL=chunk-A7E6XFZC.js.map
1493
- //# sourceMappingURL=chunk-A7E6XFZC.js.map
1492
+ //# sourceMappingURL=chunk-F5RU2UCE.js.map
1493
+ //# sourceMappingURL=chunk-F5RU2UCE.js.map