@salla.sa/twilight-theme-engine 1.0.139 → 1.0.140

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 (220) hide show
  1. package/dist/{AddToCartForm-QGJ2XVCZ.js → AddToCartForm-EPTN5O3X.js} +3 -3
  2. package/dist/{AddToCartForm-QGJ2XVCZ.js.map → AddToCartForm-EPTN5O3X.js.map} +1 -1
  3. package/dist/{BlogAuthorPage-5QGP4RDK.js → BlogAuthorPage-PGFINJSP.js} +16 -16
  4. package/dist/{BlogAuthorPage-5QGP4RDK.js.map → BlogAuthorPage-PGFINJSP.js.map} +1 -1
  5. package/dist/{BlogCategoryPage-FH7ASETM.js → BlogCategoryPage-ZVRRHTKJ.js} +16 -16
  6. package/dist/{BlogCategoryPage-FH7ASETM.js.map → BlogCategoryPage-ZVRRHTKJ.js.map} +1 -1
  7. package/dist/{BlogPage-HNNR2Q4U.js → BlogPage-5SRGR7NK.js} +14 -14
  8. package/dist/{BlogPage-HNNR2Q4U.js.map → BlogPage-5SRGR7NK.js.map} +1 -1
  9. package/dist/{BlogSinglePage-OYXJCOJ2.js → BlogSinglePage-6A5J2BKK.js} +14 -14
  10. package/dist/{BlogSinglePage-OYXJCOJ2.js.map → BlogSinglePage-6A5J2BKK.js.map} +1 -1
  11. package/dist/{BlogTagPage-XEHXO4PE.js → BlogTagPage-DAA3ZO76.js} +16 -16
  12. package/dist/{BlogTagPage-XEHXO4PE.js.map → BlogTagPage-DAA3ZO76.js.map} +1 -1
  13. package/dist/{BrandsPage-QSTJTEAA.js → BrandsPage-JABKRWP2.js} +15 -15
  14. package/dist/{BrandsPage-QSTJTEAA.js.map → BrandsPage-JABKRWP2.js.map} +1 -1
  15. package/dist/{Breadcrumb-7QGTM5S5.js → Breadcrumb-SCJZW4RO.js} +14 -14
  16. package/dist/{Breadcrumb-7QGTM5S5.js.map → Breadcrumb-SCJZW4RO.js.map} +1 -1
  17. package/dist/{CartItem-7FNRMTQS.js → CartItem-3KFTPQVF.js} +14 -14
  18. package/dist/{CartItem-7FNRMTQS.js.map → CartItem-3KFTPQVF.js.map} +1 -1
  19. package/dist/{CartSummary-A32524GZ.js → CartSummary-I64SD4QX.js} +14 -14
  20. package/dist/{CartSummary-A32524GZ.js.map → CartSummary-I64SD4QX.js.map} +1 -1
  21. package/dist/{Copyright-PVSTODJF.js → Copyright-3TREUCAK.js} +3 -3
  22. package/dist/{Copyright-PVSTODJF.js.map → Copyright-3TREUCAK.js.map} +1 -1
  23. package/dist/{CustomerLayout-NOHKTFXG.js → CustomerLayout-BH74QWRI.js} +14 -14
  24. package/dist/{CustomerLayout-NOHKTFXG.js.map → CustomerLayout-BH74QWRI.js.map} +1 -1
  25. package/dist/{Footer-RDRSICZP.js → Footer-DSSOB3ZW.js} +4 -4
  26. package/dist/{Footer-RDRSICZP.js.map → Footer-DSSOB3ZW.js.map} +1 -1
  27. package/dist/{Header-YCS4HJCH.js → Header-UWUS34D6.js} +8 -8
  28. package/dist/{Header-YCS4HJCH.js.map → Header-UWUS34D6.js.map} +1 -1
  29. package/dist/{LatestProducts-JEOWAHON.js → LatestProducts-VLSTOKEB.js} +16 -16
  30. package/dist/{LatestProducts-JEOWAHON.js.map → LatestProducts-VLSTOKEB.js.map} +1 -1
  31. package/dist/{LoyaltyPage-TE5E3OJC.js → LoyaltyPage-3FAD5MJ6.js} +14 -14
  32. package/dist/{LoyaltyPage-TE5E3OJC.js.map → LoyaltyPage-3FAD5MJ6.js.map} +1 -1
  33. package/dist/{LoyaltyPointsPage-GI3EQOLY.js → LoyaltyPointsPage-A4CTI55P.js} +6 -6
  34. package/dist/{LoyaltyPointsPage-GI3EQOLY.js.map → LoyaltyPointsPage-A4CTI55P.js.map} +1 -1
  35. package/dist/{MainMenu-46II2DJE.js → MainMenu-C7TWXVL5.js} +6 -6
  36. package/dist/MainMenu-C7TWXVL5.js.map +1 -0
  37. package/dist/{MasterLayout-ZYWD2XZO.js → MasterLayout-MZY44RTA.js} +14 -14
  38. package/dist/{MasterLayout-ZYWD2XZO.js.map → MasterLayout-MZY44RTA.js.map} +1 -1
  39. package/dist/{MobileMenu-O7354R4E.js → MobileMenu-KNDN34HO.js} +15 -15
  40. package/dist/{MobileMenu-O7354R4E.js.map → MobileMenu-KNDN34HO.js.map} +1 -1
  41. package/dist/{NotificationsPage-OZKKZ2CC.js → NotificationsPage-LKUTYWPR.js} +14 -14
  42. package/dist/{NotificationsPage-OZKKZ2CC.js.map → NotificationsPage-LKUTYWPR.js.map} +1 -1
  43. package/dist/{OrderSinglePage-IVOIE2YE.js → OrderSinglePage-VDALCKJL.js} +15 -15
  44. package/dist/{OrderSinglePage-IVOIE2YE.js.map → OrderSinglePage-VDALCKJL.js.map} +1 -1
  45. package/dist/{OrdersPage-PMLHIHDV.js → OrdersPage-TOSCY6ML.js} +14 -14
  46. package/dist/{OrdersPage-PMLHIHDV.js.map → OrdersPage-TOSCY6ML.js.map} +1 -1
  47. package/dist/{PageSingle-C3NBFFHR.js → PageSingle-56SRDA4Q.js} +3 -3
  48. package/dist/{PageSingle-C3NBFFHR.js.map → PageSingle-56SRDA4Q.js.map} +1 -1
  49. package/dist/{ProductDetails-R7SFKXNC.js → ProductDetails-YYU7TJSU.js} +4 -4
  50. package/dist/{ProductDetails-R7SFKXNC.js.map → ProductDetails-YYU7TJSU.js.map} +1 -1
  51. package/dist/{ProfilePage-5FU4N6O7.js → ProfilePage-CTGBAD2A.js} +14 -14
  52. package/dist/{ProfilePage-5FU4N6O7.js.map → ProfilePage-CTGBAD2A.js.map} +1 -1
  53. package/dist/{ReviewsPage-M7QHDNCJ.js → ReviewsPage-RJ5VQVB2.js} +3 -3
  54. package/dist/{ReviewsPage-M7QHDNCJ.js.map → ReviewsPage-RJ5VQVB2.js.map} +1 -1
  55. package/dist/{SeoCartWidget-T6PF34G4.js → SeoCartWidget-VL5TD2FU.js} +14 -14
  56. package/dist/{SeoCartWidget-T6PF34G4.js.map → SeoCartWidget-VL5TD2FU.js.map} +1 -1
  57. package/dist/{SettingsPage-HBREYY5Q.js → SettingsPage-ZHDB3YZS.js} +14 -14
  58. package/dist/{SettingsPage-HBREYY5Q.js.map → SettingsPage-ZHDB3YZS.js.map} +1 -1
  59. package/dist/{StoreClosedNotification-QTKW4PQ2.js → StoreClosedNotification-VP2ACWD6.js} +15 -15
  60. package/dist/{StoreClosedNotification-QTKW4PQ2.js.map → StoreClosedNotification-VP2ACWD6.js.map} +1 -1
  61. package/dist/{TestimonialsPage-ESB4CQRS.js → TestimonialsPage-V2RWUVZD.js} +3 -3
  62. package/dist/{TestimonialsPage-ESB4CQRS.js.map → TestimonialsPage-V2RWUVZD.js.map} +1 -1
  63. package/dist/{ThankYouPage-BLYIJQNV.js → ThankYouPage-NJKASZ2R.js} +14 -14
  64. package/dist/{ThankYouPage-BLYIJQNV.js.map → ThankYouPage-NJKASZ2R.js.map} +1 -1
  65. package/dist/{WalletPage-7YOOVSXO.js → WalletPage-N4FDKDK3.js} +15 -15
  66. package/dist/{WalletPage-7YOOVSXO.js.map → WalletPage-N4FDKDK3.js.map} +1 -1
  67. package/dist/{WishlistPage-MXVTTJD6.js → WishlistPage-JCOG3KOV.js} +16 -16
  68. package/dist/{WishlistPage-MXVTTJD6.js.map → WishlistPage-JCOG3KOV.js.map} +1 -1
  69. package/dist/api/advertisement.js +2 -2
  70. package/dist/api/apps.js +2 -2
  71. package/dist/api/blog.js +3 -3
  72. package/dist/api/brands.js +3 -3
  73. package/dist/api/cart.js +3 -3
  74. package/dist/api/category.js +3 -3
  75. package/dist/api/client.js +1 -1
  76. package/dist/api/home.js +2 -2
  77. package/dist/api/loyalty.js +3 -3
  78. package/dist/api/menu.js +2 -2
  79. package/dist/api/notification.js +2 -2
  80. package/dist/api/order.js +3 -3
  81. package/dist/api/page.js +3 -3
  82. package/dist/api/product.js +3 -3
  83. package/dist/api/profile.js +1 -1
  84. package/dist/api/store.js +2 -2
  85. package/dist/api/translations.js +2 -2
  86. package/dist/api/user.js +2 -2
  87. package/dist/api/wallet.js +2 -2
  88. package/dist/api/wishlist.js +4 -4
  89. package/dist/{chunk-ZU7TSTT7.js → chunk-2AS6KREO.js} +3 -3
  90. package/dist/{chunk-ZU7TSTT7.js.map → chunk-2AS6KREO.js.map} +1 -1
  91. package/dist/{chunk-YF3U4WYG.js → chunk-33R2PXOK.js} +4 -4
  92. package/dist/{chunk-YF3U4WYG.js.map → chunk-33R2PXOK.js.map} +1 -1
  93. package/dist/{chunk-WWGGQY6N.js → chunk-3CKMMFUF.js} +4 -4
  94. package/dist/{chunk-WWGGQY6N.js.map → chunk-3CKMMFUF.js.map} +1 -1
  95. package/dist/{chunk-HGNR4XBD.js → chunk-444GCMTZ.js} +7 -7
  96. package/dist/{chunk-HGNR4XBD.js.map → chunk-444GCMTZ.js.map} +1 -1
  97. package/dist/{chunk-JI6ZNE7R.js → chunk-5NTD7WXX.js} +3 -3
  98. package/dist/{chunk-JI6ZNE7R.js.map → chunk-5NTD7WXX.js.map} +1 -1
  99. package/dist/{chunk-HUJARQI7.js → chunk-7DRXAR76.js} +3 -3
  100. package/dist/{chunk-HUJARQI7.js.map → chunk-7DRXAR76.js.map} +1 -1
  101. package/dist/{chunk-ISDSQORB.js → chunk-7PFJOTZS.js} +4 -4
  102. package/dist/{chunk-ISDSQORB.js.map → chunk-7PFJOTZS.js.map} +1 -1
  103. package/dist/{chunk-5KKQUH72.js → chunk-ABVHWJPY.js} +10 -3
  104. package/dist/chunk-ABVHWJPY.js.map +1 -0
  105. package/dist/{chunk-FG2B552D.js → chunk-AEM5UEH6.js} +3 -3
  106. package/dist/{chunk-FG2B552D.js.map → chunk-AEM5UEH6.js.map} +1 -1
  107. package/dist/{chunk-J4GUGMPX.js → chunk-ATL7CYF2.js} +3 -3
  108. package/dist/{chunk-J4GUGMPX.js.map → chunk-ATL7CYF2.js.map} +1 -1
  109. package/dist/{chunk-ONPV2TED.js → chunk-AZT4TALZ.js} +5 -5
  110. package/dist/{chunk-ONPV2TED.js.map → chunk-AZT4TALZ.js.map} +1 -1
  111. package/dist/{chunk-XETMTAZC.js → chunk-BPM6LSOV.js} +4 -4
  112. package/dist/{chunk-XETMTAZC.js.map → chunk-BPM6LSOV.js.map} +1 -1
  113. package/dist/{chunk-E7TU4RW4.js → chunk-CU2DV3Z4.js} +3 -3
  114. package/dist/{chunk-E7TU4RW4.js.map → chunk-CU2DV3Z4.js.map} +1 -1
  115. package/dist/{chunk-EPMM5ZWB.js → chunk-F3SXHQU4.js} +5 -5
  116. package/dist/{chunk-EPMM5ZWB.js.map → chunk-F3SXHQU4.js.map} +1 -1
  117. package/dist/{chunk-ECMDQQO2.js → chunk-GIYRCRS6.js} +3 -3
  118. package/dist/{chunk-ECMDQQO2.js.map → chunk-GIYRCRS6.js.map} +1 -1
  119. package/dist/{chunk-5J3HVOTR.js → chunk-IK7CQSEA.js} +3 -3
  120. package/dist/{chunk-5J3HVOTR.js.map → chunk-IK7CQSEA.js.map} +1 -1
  121. package/dist/{chunk-P4UZRDTR.js → chunk-J4EFCWMM.js} +14 -14
  122. package/dist/{chunk-P4UZRDTR.js.map → chunk-J4EFCWMM.js.map} +1 -1
  123. package/dist/{chunk-VZ342V4W.js → chunk-LB4U7GI3.js} +4 -4
  124. package/dist/{chunk-VZ342V4W.js.map → chunk-LB4U7GI3.js.map} +1 -1
  125. package/dist/{chunk-7CGTHJ6S.js → chunk-LCRHHSBP.js} +5 -5
  126. package/dist/{chunk-7CGTHJ6S.js.map → chunk-LCRHHSBP.js.map} +1 -1
  127. package/dist/{chunk-GCZ46XF6.js → chunk-LGXEXLX3.js} +12 -12
  128. package/dist/chunk-LGXEXLX3.js.map +1 -0
  129. package/dist/{chunk-XRX6VFSO.js → chunk-MBU4LSRZ.js} +4 -4
  130. package/dist/{chunk-XRX6VFSO.js.map → chunk-MBU4LSRZ.js.map} +1 -1
  131. package/dist/{chunk-JRWBBN3M.js → chunk-MJ3DLAC3.js} +4 -4
  132. package/dist/{chunk-JRWBBN3M.js.map → chunk-MJ3DLAC3.js.map} +1 -1
  133. package/dist/{chunk-N63CWDNI.js → chunk-MOAMYULW.js} +4 -4
  134. package/dist/{chunk-N63CWDNI.js.map → chunk-MOAMYULW.js.map} +1 -1
  135. package/dist/{chunk-NVPOH3CU.js → chunk-N36TVQP2.js} +4 -4
  136. package/dist/{chunk-NVPOH3CU.js.map → chunk-N36TVQP2.js.map} +1 -1
  137. package/dist/{chunk-ECFDJBTE.js → chunk-NRPYHHRQ.js} +7 -7
  138. package/dist/{chunk-ECFDJBTE.js.map → chunk-NRPYHHRQ.js.map} +1 -1
  139. package/dist/{chunk-TZCTCRGB.js → chunk-NUTURBAK.js} +3 -3
  140. package/dist/{chunk-TZCTCRGB.js.map → chunk-NUTURBAK.js.map} +1 -1
  141. package/dist/{chunk-XNBCPEH6.js → chunk-O2RXB3P3.js} +7 -7
  142. package/dist/{chunk-XNBCPEH6.js.map → chunk-O2RXB3P3.js.map} +1 -1
  143. package/dist/{chunk-FN4I3UDJ.js → chunk-OEM2SFJE.js} +3 -3
  144. package/dist/{chunk-FN4I3UDJ.js.map → chunk-OEM2SFJE.js.map} +1 -1
  145. package/dist/{chunk-2IGIQA2S.js → chunk-OJMG3NAF.js} +3 -3
  146. package/dist/{chunk-2IGIQA2S.js.map → chunk-OJMG3NAF.js.map} +1 -1
  147. package/dist/{chunk-Y6X3TVOI.js → chunk-QQWJNRSI.js} +3 -3
  148. package/dist/{chunk-Y6X3TVOI.js.map → chunk-QQWJNRSI.js.map} +1 -1
  149. package/dist/{chunk-RSHQ43OI.js → chunk-RUUQ5OVU.js} +3 -3
  150. package/dist/{chunk-RSHQ43OI.js.map → chunk-RUUQ5OVU.js.map} +1 -1
  151. package/dist/{chunk-C5UK27T6.js → chunk-SCBSKIBA.js} +4 -4
  152. package/dist/{chunk-C5UK27T6.js.map → chunk-SCBSKIBA.js.map} +1 -1
  153. package/dist/{chunk-PLPIAVLJ.js → chunk-SOLUKKTW.js} +3 -3
  154. package/dist/{chunk-PLPIAVLJ.js.map → chunk-SOLUKKTW.js.map} +1 -1
  155. package/dist/{chunk-BBMRL2QU.js → chunk-TDIENKPW.js} +3 -3
  156. package/dist/{chunk-BBMRL2QU.js.map → chunk-TDIENKPW.js.map} +1 -1
  157. package/dist/{chunk-J5OJ7JM2.js → chunk-UXJAZ5JP.js} +3 -3
  158. package/dist/{chunk-J5OJ7JM2.js.map → chunk-UXJAZ5JP.js.map} +1 -1
  159. package/dist/{chunk-LQ2PXFR4.js → chunk-VNZ6VI2O.js} +3 -3
  160. package/dist/{chunk-LQ2PXFR4.js.map → chunk-VNZ6VI2O.js.map} +1 -1
  161. package/dist/{chunk-ELQFU3RH.js → chunk-VXMWMGBQ.js} +4 -4
  162. package/dist/{chunk-ELQFU3RH.js.map → chunk-VXMWMGBQ.js.map} +1 -1
  163. package/dist/{chunk-AORRIQPD.js → chunk-XMSZSSTZ.js} +4 -4
  164. package/dist/{chunk-AORRIQPD.js.map → chunk-XMSZSSTZ.js.map} +1 -1
  165. package/dist/{chunk-ICQIH7F6.js → chunk-YRIMECFU.js} +3 -3
  166. package/dist/{chunk-ICQIH7F6.js.map → chunk-YRIMECFU.js.map} +1 -1
  167. package/dist/{chunk-62FNNS7U.js → chunk-ZNA3SWRP.js} +7 -7
  168. package/dist/{chunk-62FNNS7U.js.map → chunk-ZNA3SWRP.js.map} +1 -1
  169. package/dist/components/cart/index.js +1 -1
  170. package/dist/components/common/index.js +1 -1
  171. package/dist/components/drawer/index.js +12 -12
  172. package/dist/components/home/index.js +17 -17
  173. package/dist/components/layout/index.js +4 -4
  174. package/dist/components/navigation/MainMenu.d.ts.map +1 -1
  175. package/dist/components/product/index.js +14 -14
  176. package/dist/components/store/index.js +13 -13
  177. package/dist/dev/editor/index.js +1 -1
  178. package/dist/dev/index.js +1 -1
  179. package/dist/{document-class-LR4X2CH5.js → document-class-B4WBGWSA.js} +11 -11
  180. package/dist/{document-class-LR4X2CH5.js.map → document-class-B4WBGWSA.js.map} +1 -1
  181. package/dist/hooks/index.js +12 -12
  182. package/dist/hooks/useGtm.js +12 -12
  183. package/dist/hooks/useMoney.js +12 -12
  184. package/dist/hooks/useStore.js +12 -12
  185. package/dist/hooks/useUser.js +3 -3
  186. package/dist/index.js +12 -12
  187. package/dist/{navigation-OQ2ZT3ID.js → navigation-MBQKDV5V.js} +5 -5
  188. package/dist/{navigation-OQ2ZT3ID.js.map → navigation-MBQKDV5V.js.map} +1 -1
  189. package/dist/{navigation-5PCMFALH.js → navigation-VPRCR725.js} +4 -4
  190. package/dist/{navigation-5PCMFALH.js.map → navigation-VPRCR725.js.map} +1 -1
  191. package/dist/{not-found-YHQVBI7H.js → not-found-OIZGDR7G.js} +15 -15
  192. package/dist/{not-found-YHQVBI7H.js.map → not-found-OIZGDR7G.js.map} +1 -1
  193. package/dist/providers/index.js +12 -12
  194. package/dist/routes/account/orders.js +4 -4
  195. package/dist/routes/account.js +13 -13
  196. package/dist/routes/blog.js +8 -8
  197. package/dist/routes/brands.js +4 -4
  198. package/dist/routes/cart.js +21 -21
  199. package/dist/routes/home.js +18 -18
  200. package/dist/routes/index.js +3 -3
  201. package/dist/routes/loyalty.js +5 -5
  202. package/dist/routes/page.js +4 -4
  203. package/dist/routes/product-listing.js +19 -19
  204. package/dist/routes/product.js +17 -17
  205. package/dist/routes/root/beforeLoad.d.ts.map +1 -1
  206. package/dist/routes/seo-redirects.js +3 -3
  207. package/dist/routes/testimonials.js +2 -2
  208. package/dist/routes/thank-you.js +4 -4
  209. package/dist/skeleton.js +18 -18
  210. package/dist/{store-lookup-NJCTSPFL.js → store-lookup-HMU7QMSC.js} +8 -8
  211. package/dist/{store-lookup-NJCTSPFL.js.map → store-lookup-HMU7QMSC.js.map} +1 -1
  212. package/dist/tanstack/link.d.ts.map +1 -1
  213. package/dist/tanstack.js +11 -11
  214. package/dist/utils/index.js +2 -2
  215. package/package.json +1 -1
  216. package/tailwind/components/navigation/MainMenu.tsx.txt +2 -1
  217. package/tailwind/routes/root/beforeLoad.ts.txt +4 -2
  218. package/dist/MainMenu-46II2DJE.js.map +0 -1
  219. package/dist/chunk-5KKQUH72.js.map +0 -1
  220. package/dist/chunk-GCZ46XF6.js.map +0 -1
@@ -1,31 +1,31 @@
1
- export { Home, HomeSkeleton, homeLoader } from '../chunk-7CGTHJ6S.js';
1
+ export { Home, HomeSkeleton, homeLoader } from '../chunk-LCRHHSBP.js';
2
2
  import '../chunk-IXHM24Z4.js';
3
- export { DefaultHomeComponents, registerHomeComponentConfig, registerHomeComponents } from '../chunk-HGNR4XBD.js';
4
- import '../chunk-FN4I3UDJ.js';
5
- import '../chunk-ISDSQORB.js';
6
- import '../chunk-EPMM5ZWB.js';
7
- import '../chunk-NVPOH3CU.js';
3
+ export { DefaultHomeComponents, registerHomeComponentConfig, registerHomeComponents } from '../chunk-444GCMTZ.js';
4
+ import '../chunk-OEM2SFJE.js';
5
+ import '../chunk-7PFJOTZS.js';
6
+ import '../chunk-F3SXHQU4.js';
7
+ import '../chunk-N36TVQP2.js';
8
8
  import '../chunk-Y32RHCOH.js';
9
- import '../chunk-P4UZRDTR.js';
9
+ import '../chunk-J4EFCWMM.js';
10
10
  import '../chunk-H2QBHOF2.js';
11
- import '../chunk-ECFDJBTE.js';
12
- import '../chunk-LQ2PXFR4.js';
11
+ import '../chunk-NRPYHHRQ.js';
12
+ import '../chunk-VNZ6VI2O.js';
13
13
  import '../chunk-N6ZE6HUX.js';
14
14
  import '../chunk-X55R4VVK.js';
15
- import '../chunk-FG2B552D.js';
15
+ import '../chunk-AEM5UEH6.js';
16
16
  import '../chunk-OXMUPNMH.js';
17
- import '../chunk-J4GUGMPX.js';
17
+ import '../chunk-ATL7CYF2.js';
18
18
  import '../chunk-VVZNW5CB.js';
19
19
  import '../chunk-WQPG22DY.js';
20
20
  import '../chunk-GD26FI4J.js';
21
21
  import '../chunk-Q7E4TNN7.js';
22
22
  import '../chunk-RYGEIQWO.js';
23
- import '../chunk-PLPIAVLJ.js';
23
+ import '../chunk-SOLUKKTW.js';
24
24
  import '../chunk-OUW6WESU.js';
25
25
  import '../chunk-HOJ5E2PG.js';
26
26
  import '../chunk-HI5V5X3S.js';
27
- import '../chunk-5J3HVOTR.js';
28
- import '../chunk-Y6X3TVOI.js';
27
+ import '../chunk-IK7CQSEA.js';
28
+ import '../chunk-QQWJNRSI.js';
29
29
  import '../chunk-MVT5AF2A.js';
30
30
  import '../chunk-Z653O7MX.js';
31
31
  import '../chunk-ZCH7W7DZ.js';
@@ -36,16 +36,16 @@ import '../chunk-7V36I5GT.js';
36
36
  import '../chunk-6WI7R2BD.js';
37
37
  import '../chunk-LFHYQ6AN.js';
38
38
  import '../chunk-OAMIDZKW.js';
39
- import '../chunk-JI6ZNE7R.js';
39
+ import '../chunk-5NTD7WXX.js';
40
40
  import '../chunk-OQIIJRAS.js';
41
41
  import '../chunk-V2ZDTY6H.js';
42
- import '../chunk-ZU7TSTT7.js';
42
+ import '../chunk-2AS6KREO.js';
43
43
  import '../chunk-5XDPAKF5.js';
44
44
  import '../chunk-GCPEMNSU.js';
45
- import '../chunk-J5OJ7JM2.js';
45
+ import '../chunk-UXJAZ5JP.js';
46
46
  import '../chunk-Z5M4YYWT.js';
47
47
  import '../chunk-TYNZ5B2B.js';
48
- import '../chunk-BBMRL2QU.js';
48
+ import '../chunk-TDIENKPW.js';
49
49
  import '../chunk-AXW67SY7.js';
50
50
  import '../chunk-BYMOPN2S.js';
51
51
  import '../chunk-SKLEJJ6M.js';
@@ -1,7 +1,7 @@
1
- export { slugBrandRedirectLoader } from '../chunk-ICQIH7F6.js';
2
- import '../chunk-PLPIAVLJ.js';
1
+ export { slugBrandRedirectLoader } from '../chunk-YRIMECFU.js';
2
+ import '../chunk-SOLUKKTW.js';
3
3
  import '../chunk-OUW6WESU.js';
4
- import '../chunk-J5OJ7JM2.js';
4
+ import '../chunk-UXJAZ5JP.js';
5
5
  import '../chunk-Z5M4YYWT.js';
6
6
  import '../chunk-TYNZ5B2B.js';
7
7
  import '../chunk-3E3ABCPC.js';
@@ -1,8 +1,8 @@
1
- import { loyalty } from '../chunk-JRWBBN3M.js';
1
+ import { loyalty } from '../chunk-MJ3DLAC3.js';
2
2
  import { buildHreflangAlternates } from '../chunk-RYGEIQWO.js';
3
- import { unauthorized, orUnauthorized, redirect } from '../chunk-PLPIAVLJ.js';
3
+ import { unauthorized, orUnauthorized, redirect } from '../chunk-SOLUKKTW.js';
4
4
  import { RouteId } from '../chunk-OUW6WESU.js';
5
- import { getAuthToken } from '../chunk-J5OJ7JM2.js';
5
+ import { getAuthToken } from '../chunk-UXJAZ5JP.js';
6
6
  import '../chunk-Z5M4YYWT.js';
7
7
  import '../chunk-3E3ABCPC.js';
8
8
  import '../chunk-NHA4SBKG.js';
@@ -59,10 +59,10 @@ async function loyaltyPointsLoader(locale) {
59
59
 
60
60
  // src/routes/loyalty/index.tsx
61
61
  var LazyLoyaltyPage = lazyComponent(
62
- () => import('../LoyaltyPage-TE5E3OJC.js').then((m) => ({ default: m.LoyaltyPage }))
62
+ () => import('../LoyaltyPage-3FAD5MJ6.js').then((m) => ({ default: m.LoyaltyPage }))
63
63
  );
64
64
  var LazyLoyaltyPointsPage = lazyComponent(
65
- () => import('../LoyaltyPointsPage-GI3EQOLY.js').then((m) => ({ default: m.LoyaltyPointsPage }))
65
+ () => import('../LoyaltyPointsPage-A4CTI55P.js').then((m) => ({ default: m.LoyaltyPointsPage }))
66
66
  );
67
67
  var LoyaltyPage = LazyLoyaltyPage;
68
68
  var LoyaltyPointsPage = LazyLoyaltyPointsPage;
@@ -1,8 +1,8 @@
1
- import { page } from '../chunk-YF3U4WYG.js';
1
+ import { page } from '../chunk-33R2PXOK.js';
2
2
  import { buildHreflangAlternates } from '../chunk-RYGEIQWO.js';
3
- import '../chunk-PLPIAVLJ.js';
3
+ import '../chunk-SOLUKKTW.js';
4
4
  import { RouteId } from '../chunk-OUW6WESU.js';
5
- import '../chunk-J5OJ7JM2.js';
5
+ import '../chunk-UXJAZ5JP.js';
6
6
  import '../chunk-Z5M4YYWT.js';
7
7
  import '../chunk-3E3ABCPC.js';
8
8
  import '../chunk-NHA4SBKG.js';
@@ -31,7 +31,7 @@ async function pageSingleLoader({ params }) {
31
31
 
32
32
  // src/routes/page/index.tsx
33
33
  var LazyPageSingle = lazyComponent(
34
- () => import('../PageSingle-C3NBFFHR.js').then((m) => ({ default: m.PageSingle }))
34
+ () => import('../PageSingle-56SRDA4Q.js').then((m) => ({ default: m.PageSingle }))
35
35
  );
36
36
  var PageSingleLazy = LazyPageSingle;
37
37
  async function loader(ctx, extend) {
@@ -1,33 +1,33 @@
1
1
  import { SORT_IDS, availableSortIds, sortOptions } from '../chunk-3LZJXKVO.js';
2
- import { category } from '../chunk-XETMTAZC.js';
3
- import { brand } from '../chunk-ELQFU3RH.js';
4
- import { useReorderButtons, LazyTestimonials } from '../chunk-HGNR4XBD.js';
5
- import '../chunk-FN4I3UDJ.js';
6
- import { product, parseNextPageToken } from '../chunk-ISDSQORB.js';
2
+ import { category } from '../chunk-BPM6LSOV.js';
3
+ import { brand } from '../chunk-VXMWMGBQ.js';
4
+ import { useReorderButtons, LazyTestimonials } from '../chunk-444GCMTZ.js';
5
+ import '../chunk-OEM2SFJE.js';
6
+ import { product, parseNextPageToken } from '../chunk-7PFJOTZS.js';
7
7
  import { Drawer } from '../chunk-6TKIUG5C.js';
8
- import '../chunk-EPMM5ZWB.js';
9
- import { ProductCard } from '../chunk-NVPOH3CU.js';
8
+ import '../chunk-F3SXHQU4.js';
9
+ import { ProductCard } from '../chunk-N36TVQP2.js';
10
10
  import { registry, COMPONENT_KEYS } from '../chunk-Y32RHCOH.js';
11
- import { useStore } from '../chunk-P4UZRDTR.js';
11
+ import { useStore } from '../chunk-J4EFCWMM.js';
12
12
  import '../chunk-H2QBHOF2.js';
13
- import '../chunk-ECFDJBTE.js';
14
- import '../chunk-LQ2PXFR4.js';
13
+ import '../chunk-NRPYHHRQ.js';
14
+ import '../chunk-VNZ6VI2O.js';
15
15
  import '../chunk-N6ZE6HUX.js';
16
16
  import '../chunk-X55R4VVK.js';
17
- import '../chunk-FG2B552D.js';
17
+ import '../chunk-AEM5UEH6.js';
18
18
  import '../chunk-OXMUPNMH.js';
19
- import '../chunk-J4GUGMPX.js';
19
+ import '../chunk-ATL7CYF2.js';
20
20
  import '../chunk-VVZNW5CB.js';
21
21
  import '../chunk-WQPG22DY.js';
22
22
  import '../chunk-GD26FI4J.js';
23
23
  import '../chunk-Q7E4TNN7.js';
24
24
  import { buildHreflangAlternates, storePageUrl } from '../chunk-RYGEIQWO.js';
25
- import { unauthorized, notFound, orThrow, useNavigate, useLocation } from '../chunk-PLPIAVLJ.js';
25
+ import { unauthorized, notFound, orThrow, useNavigate, useLocation } from '../chunk-SOLUKKTW.js';
26
26
  import { RouteId } from '../chunk-OUW6WESU.js';
27
27
  import '../chunk-HOJ5E2PG.js';
28
28
  import '../chunk-HI5V5X3S.js';
29
- import '../chunk-5J3HVOTR.js';
30
- import '../chunk-Y6X3TVOI.js';
29
+ import '../chunk-IK7CQSEA.js';
30
+ import '../chunk-QQWJNRSI.js';
31
31
  import '../chunk-MVT5AF2A.js';
32
32
  import '../chunk-Z653O7MX.js';
33
33
  import '../chunk-ZCH7W7DZ.js';
@@ -38,16 +38,16 @@ import '../chunk-7V36I5GT.js';
38
38
  import '../chunk-6WI7R2BD.js';
39
39
  import '../chunk-LFHYQ6AN.js';
40
40
  import '../chunk-OAMIDZKW.js';
41
- import '../chunk-JI6ZNE7R.js';
41
+ import '../chunk-5NTD7WXX.js';
42
42
  import '../chunk-OQIIJRAS.js';
43
43
  import '../chunk-V2ZDTY6H.js';
44
- import '../chunk-ZU7TSTT7.js';
44
+ import '../chunk-2AS6KREO.js';
45
45
  import { HookSlot } from '../chunk-5XDPAKF5.js';
46
46
  import '../chunk-GCPEMNSU.js';
47
- import { getAuthToken } from '../chunk-J5OJ7JM2.js';
47
+ import { getAuthToken } from '../chunk-UXJAZ5JP.js';
48
48
  import '../chunk-Z5M4YYWT.js';
49
49
  import { useTranslation } from '../chunk-TYNZ5B2B.js';
50
- import { LazyBreadcrumb, Image, LazyNoContent, ProductCardSkeleton, LazyRenderWhenVisible } from '../chunk-BBMRL2QU.js';
50
+ import { LazyBreadcrumb, Image, LazyNoContent, ProductCardSkeleton, LazyRenderWhenVisible } from '../chunk-TDIENKPW.js';
51
51
  import '../chunk-AXW67SY7.js';
52
52
  import '../chunk-BYMOPN2S.js';
53
53
  import '../chunk-SKLEJJ6M.js';
@@ -1,29 +1,29 @@
1
- import { ProductsSlider, LazyTestimonials } from '../chunk-HGNR4XBD.js';
2
- import '../chunk-FN4I3UDJ.js';
3
- import { product } from '../chunk-ISDSQORB.js';
4
- import { ProductGallery, LazyProductDetails, LazyAddToCartForm } from '../chunk-EPMM5ZWB.js';
5
- import '../chunk-NVPOH3CU.js';
1
+ import { ProductsSlider, LazyTestimonials } from '../chunk-444GCMTZ.js';
2
+ import '../chunk-OEM2SFJE.js';
3
+ import { product } from '../chunk-7PFJOTZS.js';
4
+ import { ProductGallery, LazyProductDetails, LazyAddToCartForm } from '../chunk-F3SXHQU4.js';
5
+ import '../chunk-N36TVQP2.js';
6
6
  import '../chunk-Y32RHCOH.js';
7
- import { fastCheckoutScript } from '../chunk-P4UZRDTR.js';
7
+ import { fastCheckoutScript } from '../chunk-J4EFCWMM.js';
8
8
  import '../chunk-H2QBHOF2.js';
9
- import '../chunk-ECFDJBTE.js';
10
- import '../chunk-LQ2PXFR4.js';
9
+ import '../chunk-NRPYHHRQ.js';
10
+ import '../chunk-VNZ6VI2O.js';
11
11
  import '../chunk-N6ZE6HUX.js';
12
12
  import '../chunk-X55R4VVK.js';
13
- import '../chunk-FG2B552D.js';
13
+ import '../chunk-AEM5UEH6.js';
14
14
  import '../chunk-OXMUPNMH.js';
15
- import '../chunk-J4GUGMPX.js';
15
+ import '../chunk-ATL7CYF2.js';
16
16
  import '../chunk-VVZNW5CB.js';
17
17
  import '../chunk-WQPG22DY.js';
18
18
  import '../chunk-GD26FI4J.js';
19
19
  import '../chunk-Q7E4TNN7.js';
20
20
  import { buildHreflangAlternates } from '../chunk-RYGEIQWO.js';
21
- import '../chunk-PLPIAVLJ.js';
21
+ import '../chunk-SOLUKKTW.js';
22
22
  import { RouteId } from '../chunk-OUW6WESU.js';
23
23
  import { useComments } from '../chunk-HOJ5E2PG.js';
24
24
  import '../chunk-HI5V5X3S.js';
25
- import '../chunk-5J3HVOTR.js';
26
- import '../chunk-Y6X3TVOI.js';
25
+ import '../chunk-IK7CQSEA.js';
26
+ import '../chunk-QQWJNRSI.js';
27
27
  import '../chunk-MVT5AF2A.js';
28
28
  import '../chunk-Z653O7MX.js';
29
29
  import '../chunk-ZCH7W7DZ.js';
@@ -34,16 +34,16 @@ import '../chunk-7V36I5GT.js';
34
34
  import '../chunk-6WI7R2BD.js';
35
35
  import '../chunk-LFHYQ6AN.js';
36
36
  import '../chunk-OAMIDZKW.js';
37
- import '../chunk-JI6ZNE7R.js';
37
+ import '../chunk-5NTD7WXX.js';
38
38
  import '../chunk-OQIIJRAS.js';
39
39
  import '../chunk-V2ZDTY6H.js';
40
- import '../chunk-ZU7TSTT7.js';
40
+ import '../chunk-2AS6KREO.js';
41
41
  import { HookSlot } from '../chunk-5XDPAKF5.js';
42
42
  import '../chunk-GCPEMNSU.js';
43
- import { getActiveCurrency } from '../chunk-J5OJ7JM2.js';
43
+ import { getActiveCurrency } from '../chunk-UXJAZ5JP.js';
44
44
  import '../chunk-Z5M4YYWT.js';
45
45
  import { useTranslation } from '../chunk-TYNZ5B2B.js';
46
- import { LazyBreadcrumb, LazyRenderWhenVisible } from '../chunk-BBMRL2QU.js';
46
+ import { LazyBreadcrumb, LazyRenderWhenVisible } from '../chunk-TDIENKPW.js';
47
47
  import '../chunk-AXW67SY7.js';
48
48
  import '../chunk-BYMOPN2S.js';
49
49
  import '../chunk-SKLEJJ6M.js';
@@ -1 +1 @@
1
- {"version":3,"file":"beforeLoad.d.ts","sourceRoot":"","sources":["../../../src/routes/root/beforeLoad.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AASzD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAEpD,OAAO,EAAQ,KAAK,UAAU,EAAE,KAAK,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAKzE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE/D,OAAO,EAUL,KAAK,WAAW,EACjB,MAAM,qBAAqB,CAAC;AAoC7B;;;;;;;;;;;GAWG;AACH,wBAAgB,eAAe,CAC7B,GAAG,EAAE,MAAM,EACX,SAAS,EAAE,WAAW,GAAG,IAAI,EAC7B,QAAQ,EAAE,YAAY,GACrB,WAAW,GAAG,IAAI,CAMpB;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,iBAAiB,CAC/B,GAAG,EAAE,MAAM,EACX,YAAY,EAAE,MAAM,GAAG,IAAI,EAC3B,QAAQ,EAAE,YAAY,GACrB,WAAW,GAAG,IAAI,CASpB;AASD;;;;;;;;;GASG;AACH,wBAAgB,iBAAiB,CAC/B,WAAW,EAAE,WAAW,EACxB,QAAQ,EAAE,YAAY,EACtB,GAAG,CAAC,EAAE,MAAM,GACX,IAAI,CAoBN;AAED;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,oFAoBP,CAAC;AA0B1B;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,YAAY,GAAG,OAAO,CAMhF;AAsDD,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,YAAY,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf;;;;OAIG;IACH,sBAAsB,EAAE,OAAO,CAAC;IAChC,GAAG,EAAE,KAAK,GAAG,KAAK,CAAC;IACnB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB;mGAC+F;IAC/F,YAAY,CAAC,EAAE,UAAU,EAAE,CAAC;IAC5B;2DACuD;IACvD,YAAY,CAAC,EAAE,WAAW,CAAC;IAC3B,6FAA6F;IAC7F,WAAW,EAAE,OAAO,CAAC;CACtB;AA0DD,wBAAsB,cAAc,CAAC,GAAG,EAAE;IACxC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,OAAO,EAAE;QACP,WAAW,EAAE,WAAW,CAAC;QACzB,WAAW,CAAC,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC;KAC7D,CAAC;IACF,aAAa,CAAC,EAAE;QACd,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;KAC3B,CAAC;CACH,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAsK5B"}
1
+ {"version":3,"file":"beforeLoad.d.ts","sourceRoot":"","sources":["../../../src/routes/root/beforeLoad.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AASzD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAEpD,OAAO,EAAQ,KAAK,UAAU,EAAE,KAAK,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAKzE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE/D,OAAO,EAUL,KAAK,WAAW,EACjB,MAAM,qBAAqB,CAAC;AAoC7B;;;;;;;;;;;GAWG;AACH,wBAAgB,eAAe,CAC7B,GAAG,EAAE,MAAM,EACX,SAAS,EAAE,WAAW,GAAG,IAAI,EAC7B,QAAQ,EAAE,YAAY,GACrB,WAAW,GAAG,IAAI,CAMpB;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,iBAAiB,CAC/B,GAAG,EAAE,MAAM,EACX,YAAY,EAAE,MAAM,GAAG,IAAI,EAC3B,QAAQ,EAAE,YAAY,GACrB,WAAW,GAAG,IAAI,CASpB;AASD;;;;;;;;;GASG;AACH,wBAAgB,iBAAiB,CAC/B,WAAW,EAAE,WAAW,EACxB,QAAQ,EAAE,YAAY,EACtB,GAAG,CAAC,EAAE,MAAM,GACX,IAAI,CAoBN;AAED;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,oFAoBP,CAAC;AA0B1B;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,YAAY,GAAG,OAAO,CAMhF;AAsDD,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,YAAY,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf;;;;OAIG;IACH,sBAAsB,EAAE,OAAO,CAAC;IAChC,GAAG,EAAE,KAAK,GAAG,KAAK,CAAC;IACnB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB;mGAC+F;IAC/F,YAAY,CAAC,EAAE,UAAU,EAAE,CAAC;IAC5B;2DACuD;IACvD,YAAY,CAAC,EAAE,WAAW,CAAC;IAC3B,6FAA6F;IAC7F,WAAW,EAAE,OAAO,CAAC;CACtB;AA0DD,wBAAsB,cAAc,CAAC,GAAG,EAAE;IACxC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,OAAO,EAAE;QACP,WAAW,EAAE,WAAW,CAAC;QACzB,WAAW,CAAC,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC;KAC7D,CAAC;IACF,aAAa,CAAC,EAAE;QACd,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;KAC3B,CAAC;CACH,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAwK5B"}
@@ -1,7 +1,7 @@
1
- export { LogoutRedirect, accountRedirectLoader, pendingOrdersRedirectLoader, productsSourceRedirectLoader, ratingRedirectLoader, slugBrandRedirectLoader } from '../chunk-ICQIH7F6.js';
2
- import '../chunk-PLPIAVLJ.js';
1
+ export { LogoutRedirect, accountRedirectLoader, pendingOrdersRedirectLoader, productsSourceRedirectLoader, ratingRedirectLoader, slugBrandRedirectLoader } from '../chunk-YRIMECFU.js';
2
+ import '../chunk-SOLUKKTW.js';
3
3
  import '../chunk-OUW6WESU.js';
4
- import '../chunk-J5OJ7JM2.js';
4
+ import '../chunk-UXJAZ5JP.js';
5
5
  import '../chunk-Z5M4YYWT.js';
6
6
  import '../chunk-3E3ABCPC.js';
7
7
  import '../chunk-NHA4SBKG.js';
@@ -33,10 +33,10 @@ async function reviewsLoader() {
33
33
 
34
34
  // src/routes/testimonials/index.tsx
35
35
  var LazyTestimonialsPage = lazyComponent(
36
- () => import('../TestimonialsPage-ESB4CQRS.js').then((m) => ({ default: m.TestimonialsPage }))
36
+ () => import('../TestimonialsPage-V2RWUVZD.js').then((m) => ({ default: m.TestimonialsPage }))
37
37
  );
38
38
  var LazyReviewsPage = lazyComponent(
39
- () => import('../ReviewsPage-M7QHDNCJ.js').then((m) => ({ default: m.ReviewsPage }))
39
+ () => import('../ReviewsPage-RJ5VQVB2.js').then((m) => ({ default: m.ReviewsPage }))
40
40
  );
41
41
  var TestimonialsPage = LazyTestimonialsPage;
42
42
  var ReviewsPage = LazyReviewsPage;
@@ -1,8 +1,8 @@
1
- import { order } from '../chunk-XRX6VFSO.js';
1
+ import { order } from '../chunk-MBU4LSRZ.js';
2
2
  import { buildHreflangAlternates } from '../chunk-RYGEIQWO.js';
3
- import '../chunk-PLPIAVLJ.js';
3
+ import '../chunk-SOLUKKTW.js';
4
4
  import { RouteId } from '../chunk-OUW6WESU.js';
5
- import '../chunk-J5OJ7JM2.js';
5
+ import '../chunk-UXJAZ5JP.js';
6
6
  import '../chunk-Z5M4YYWT.js';
7
7
  import '../chunk-3E3ABCPC.js';
8
8
  import '../chunk-NHA4SBKG.js';
@@ -41,7 +41,7 @@ async function thankYouLoader({
41
41
 
42
42
  // src/routes/thank-you/index.tsx
43
43
  var LazyThankYouPage = lazyComponent(
44
- () => import('../ThankYouPage-BLYIJQNV.js').then((m) => ({ default: m.ThankYouPage }))
44
+ () => import('../ThankYouPage-NJKASZ2R.js').then((m) => ({ default: m.ThankYouPage }))
45
45
  );
46
46
  var ThankYouPage = LazyThankYouPage;
47
47
  async function loader(ctx, extend) {
package/dist/skeleton.js CHANGED
@@ -1,32 +1,32 @@
1
1
  export { BlogSkeleton, BreadcrumbSkeleton, CartSkeleton, CustomerLayoutSkeleton, CustomerPageSkeleton, PageSkeleton, ProductCardSkeleton, ProductDetailSkeleton, ProductGridSkeleton, SkeletonPulse } from './chunk-N7CCSGZF.js';
2
- export { HomeSkeleton } from './chunk-7CGTHJ6S.js';
2
+ export { HomeSkeleton } from './chunk-LCRHHSBP.js';
3
3
  import './chunk-IXHM24Z4.js';
4
- import './chunk-HGNR4XBD.js';
5
- import './chunk-FN4I3UDJ.js';
6
- import './chunk-ISDSQORB.js';
7
- import './chunk-EPMM5ZWB.js';
8
- import './chunk-NVPOH3CU.js';
4
+ import './chunk-444GCMTZ.js';
5
+ import './chunk-OEM2SFJE.js';
6
+ import './chunk-7PFJOTZS.js';
7
+ import './chunk-F3SXHQU4.js';
8
+ import './chunk-N36TVQP2.js';
9
9
  import './chunk-Y32RHCOH.js';
10
- import './chunk-P4UZRDTR.js';
10
+ import './chunk-J4EFCWMM.js';
11
11
  import './chunk-H2QBHOF2.js';
12
- import './chunk-ECFDJBTE.js';
13
- import './chunk-LQ2PXFR4.js';
12
+ import './chunk-NRPYHHRQ.js';
13
+ import './chunk-VNZ6VI2O.js';
14
14
  import './chunk-N6ZE6HUX.js';
15
15
  import './chunk-X55R4VVK.js';
16
- import './chunk-FG2B552D.js';
16
+ import './chunk-AEM5UEH6.js';
17
17
  import './chunk-OXMUPNMH.js';
18
- import './chunk-J4GUGMPX.js';
18
+ import './chunk-ATL7CYF2.js';
19
19
  import './chunk-VVZNW5CB.js';
20
20
  import './chunk-WQPG22DY.js';
21
21
  import './chunk-GD26FI4J.js';
22
22
  import './chunk-Q7E4TNN7.js';
23
23
  import './chunk-RYGEIQWO.js';
24
- import './chunk-PLPIAVLJ.js';
24
+ import './chunk-SOLUKKTW.js';
25
25
  import './chunk-OUW6WESU.js';
26
26
  import './chunk-HOJ5E2PG.js';
27
27
  import './chunk-HI5V5X3S.js';
28
- import './chunk-5J3HVOTR.js';
29
- import './chunk-Y6X3TVOI.js';
28
+ import './chunk-IK7CQSEA.js';
29
+ import './chunk-QQWJNRSI.js';
30
30
  import './chunk-MVT5AF2A.js';
31
31
  import './chunk-Z653O7MX.js';
32
32
  import './chunk-ZCH7W7DZ.js';
@@ -37,16 +37,16 @@ import './chunk-7V36I5GT.js';
37
37
  import './chunk-6WI7R2BD.js';
38
38
  import './chunk-LFHYQ6AN.js';
39
39
  import './chunk-OAMIDZKW.js';
40
- import './chunk-JI6ZNE7R.js';
40
+ import './chunk-5NTD7WXX.js';
41
41
  import './chunk-OQIIJRAS.js';
42
42
  import './chunk-V2ZDTY6H.js';
43
- import './chunk-ZU7TSTT7.js';
43
+ import './chunk-2AS6KREO.js';
44
44
  import './chunk-5XDPAKF5.js';
45
45
  import './chunk-GCPEMNSU.js';
46
- import './chunk-J5OJ7JM2.js';
46
+ import './chunk-UXJAZ5JP.js';
47
47
  import './chunk-Z5M4YYWT.js';
48
48
  import './chunk-TYNZ5B2B.js';
49
- import './chunk-BBMRL2QU.js';
49
+ import './chunk-TDIENKPW.js';
50
50
  import './chunk-AXW67SY7.js';
51
51
  import './chunk-BYMOPN2S.js';
52
52
  import './chunk-SKLEJJ6M.js';
@@ -1,11 +1,11 @@
1
- import { category } from './chunk-XETMTAZC.js';
2
- import { blog } from './chunk-WWGGQY6N.js';
3
- import { brand } from './chunk-ELQFU3RH.js';
4
- import { product } from './chunk-ISDSQORB.js';
1
+ import { category } from './chunk-BPM6LSOV.js';
2
+ import { blog } from './chunk-3CKMMFUF.js';
3
+ import { brand } from './chunk-VXMWMGBQ.js';
4
+ import { product } from './chunk-7PFJOTZS.js';
5
5
  import { DEV_LOOKUP_BUDGET_MS } from './chunk-OXMUPNMH.js';
6
- import './chunk-PLPIAVLJ.js';
6
+ import './chunk-SOLUKKTW.js';
7
7
  import './chunk-OUW6WESU.js';
8
- import './chunk-J5OJ7JM2.js';
8
+ import './chunk-UXJAZ5JP.js';
9
9
  import './chunk-Z5M4YYWT.js';
10
10
  import './chunk-3E3ABCPC.js';
11
11
  import './chunk-NHA4SBKG.js';
@@ -111,5 +111,5 @@ function lookupInStore(source, query) {
111
111
  }
112
112
 
113
113
  export { lookupInStore };
114
- //# sourceMappingURL=store-lookup-NJCTSPFL.js.map
115
- //# sourceMappingURL=store-lookup-NJCTSPFL.js.map
114
+ //# sourceMappingURL=store-lookup-HMU7QMSC.js.map
115
+ //# sourceMappingURL=store-lookup-HMU7QMSC.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/dev/store-lookup.ts"],"names":["categories"],"mappings":";;;;;;;;;;;;;;;;;;AAmBA,IAAM,QAAA,GAAW,EAAA;AAEjB,IAAM,SAAA,GAAY,EAAA;AAalB,eAAe,OAAA,CACb,WACA,IAAA,EACc;AACd,EAAA,MAAM,QAAA,GAAW,IAAA,CAAK,GAAA,EAAI,GAAI,oBAAA;AAC9B,EAAA,MAAM,QAAa,EAAC;AACpB,EAAA,IAAI,MAAA,GAAwB,IAAA;AAC5B,EAAA,KAAA,IAAS,IAAA,GAAO,CAAA,EAAG,IAAA,IAAQ,SAAA,EAAW,QAAQ,CAAA,EAAG;AAC/C,IAAA,MAAM,EAAE,KAAA,EAAO,IAAA,KAAS,MAAM,SAAA,CAAU,MAAM,MAAM,CAAA;AACpD,IAAA,KAAA,CAAM,IAAA,CAAK,GAAG,KAAA,CAAM,MAAA,CAAO,IAAI,CAAC,CAAA;AAChC,IAAA,IAAI,KAAA,CAAM,UAAU,QAAA,IAAY,CAAC,QAAQ,IAAA,CAAK,GAAA,MAAS,QAAA,EAAU;AACjE,IAAA,MAAA,GAAS,IAAA;AAAA,EACX;AACA,EAAA,OAAO,KAAA,CAAM,KAAA,CAAM,CAAA,EAAG,QAAQ,CAAA;AAChC;AAEA,SAAS,OAAA,CAAQ,MAAc,KAAA,EAAwB;AACrD,EAAA,OAAO,CAAC,SAAS,IAAA,CAAK,WAAA,GAAc,QAAA,CAAS,KAAA,CAAM,aAAa,CAAA;AAClE;AAGA,SAAS,QAAQA,WAAAA,EAAoC;AACnD,EAAA,OAAOA,WAAAA,CAAW,OAAA,CAAQ,CAAC,CAAA,KAAM,CAAC,CAAA,EAAG,GAAG,OAAA,CAAQ,CAAA,CAAE,cAAA,IAAkB,EAAE,CAAC,CAAC,CAAA;AAC1E;AAEA,eAAe,SAAS,KAAA,EAAyC;AAC/D,EAAA,MAAM,EAAE,KAAA,EAAM,GAAI,MAAM,QAAQ,IAAA,CAAK;AAAA,IACnC,MAAA,EAAQ,QAAQ,QAAA,GAAW,QAAA;AAAA,IAC3B,GAAI,KAAA,GAAQ,EAAE,OAAA,EAAS,KAAA,KAAU,EAAC;AAAA,IAClC,OAAA,EAAS;AAAA,GACV,CAAA;AAED,EAAA,OAAO,KAAA,CAAM,GAAA,CAAI,CAAC,CAAA,MAAO;AAAA,IACvB,EAAA,EAAI,MAAA,CAAO,CAAA,CAAE,EAAE,CAAA;AAAA,IACf,MAAM,CAAA,CAAE,IAAA;AAAA,IACR,KAAA,EAAO,EAAE,KAAA,EAAO,GAAA;AAAA,IAChB,KAAK,CAAA,CAAE,GAAA;AAAA,IACP,MAAM,EAAE,EAAA,EAAI,MAAA,CAAO,CAAA,CAAE,EAAE,CAAA,EAAG,IAAA,EAAM,CAAA,CAAE,IAAA,EAAM,KAAK,CAAA,CAAE,GAAA,EAAK,OAAO,CAAA,CAAE,KAAA,EAAO,OAAO,IAAA;AAAK,GAClF,CAAE,CAAA;AACJ;AAEA,eAAe,WAAW,KAAA,EAAyC;AACjE,EAAA,OAAO,OAAA,CAAQ,MAAM,QAAA,CAAS,IAAA,EAAM,CAAA,CACjC,MAAA,CAAO,CAAC,CAAA,KAAM,OAAA,CAAQ,EAAE,IAAA,EAAM,KAAK,CAAC,CAAA,CACpC,KAAA,CAAM,GAAG,QAAQ,CAAA,CACjB,GAAA,CAAI,CAAC,CAAA,MAAO;AAAA,IACX,IAAI,CAAA,CAAE,EAAA;AAAA,IACN,MAAM,CAAA,CAAE,IAAA;AAAA,IACR,KAAA,EAAO,EAAE,KAAA,IAAS,MAAA;AAAA,IAClB,KAAK,CAAA,CAAE,GAAA;AAAA,IACP,MAAM,EAAE,EAAA,EAAI,EAAE,EAAA,EAAI,IAAA,EAAM,EAAE,IAAA,EAAM,GAAA,EAAK,CAAA,CAAE,GAAA,EAAK,OAAO,CAAA,CAAE,KAAA,IAAS,MAAM,IAAA,EAAM,CAAA,CAAE,QAAQ,IAAA;AAAK,GAC3F,CAAE,CAAA;AACN;AAEA,eAAe,OAAO,KAAA,EAAyC;AAC7D,EAAA,MAAM,QAAQ,MAAM,OAAA;AAAA,IAClB,CAAC,IAAA,KAAS,KAAA,CAAM,IAAA,CAAK,IAAI,CAAA;AAAA,IACzB,CAAC,CAAA,KAAM,OAAA,CAAQ,CAAA,CAAE,MAAM,KAAK;AAAA,GAC9B;AACA,EAAA,OAAO,KAAA,CAAM,GAAA,CAAI,CAAC,CAAA,MAAO;AAAA,IACvB,IAAI,CAAA,CAAE,EAAA;AAAA,IACN,MAAM,CAAA,CAAE,IAAA;AAAA,IACR,OAAO,CAAA,CAAE,IAAA;AAAA,IACT,KAAK,CAAA,CAAE,GAAA;AAAA,IACP,MAAM,EAAE,EAAA,EAAI,CAAA,CAAE,EAAA,EAAI,MAAM,CAAA,CAAE,IAAA,EAAM,GAAA,EAAK,CAAA,CAAE,KAAK,IAAA,EAAM,CAAA,CAAE,MAAM,MAAA,EAAQ,CAAA,CAAE,UAAU,IAAA;AAAK,GACrF,CAAE,CAAA;AACJ;AAEA,eAAe,aAAa,KAAA,EAAyC;AACnE,EAAA,MAAM,QAAQ,MAAM,OAAA;AAAA,IAClB,OAAO,OAAO,MAAA,KAAW;AACvB,MAAA,MAAM,EAAE,IAAA,EAAM,MAAA,EAAQ,KAAA,EAAM,GAAI,MAAM,IAAA,CAAK,QAAA,CAAS,IAAA,CAAK,MAAA,GAAS,EAAE,MAAA,KAAW,MAAS,CAAA;AACxF,MAAA,OAAO,EAAE,KAAA,EAAO,IAAA,EAAM,IAAA,EAAM,KAAA,EAAO,QAAQ,IAAA,EAAK;AAAA,IAClD,CAAA;AAAA,IACA,CAAC,CAAA,KAAM,OAAA,CAAQ,CAAA,CAAE,MAAM,KAAK;AAAA,GAC9B;AACA,EAAA,OAAO,KAAA,CAAM,GAAA,CAAI,CAAC,CAAA,MAAO;AAAA,IACvB,IAAI,CAAA,CAAE,EAAA;AAAA,IACN,MAAM,CAAA,CAAE,IAAA;AAAA,IACR,OAAO,CAAA,CAAE,KAAA;AAAA,IACT,KAAK,CAAA,CAAE,GAAA;AAAA,IACP,IAAA,EAAM,EAAE,EAAA,EAAI,CAAA,CAAE,EAAA,EAAI,MAAM,CAAA,CAAE,IAAA,EAAM,GAAA,EAAK,CAAA,CAAE,GAAA;AAAI,GAC7C,CAAE,CAAA;AACJ;AAEA,eAAe,eAAe,KAAA,EAAyC;AACrE,EAAA,MAAM,EAAE,UAAA,EAAY,IAAA,EAAK,GAAI,MAAM,KAAK,GAAA,EAAI;AAC5C,EAAA,OAAO,KACJ,MAAA,CAAO,CAAC,CAAA,KAAM,OAAA,CAAQ,EAAE,IAAA,EAAM,KAAK,CAAC,CAAA,CACpC,MAAM,CAAA,EAAG,QAAQ,CAAA,CACjB,GAAA,CAAI,CAAC,CAAA,MAAO;AAAA,IACX,IAAI,CAAA,CAAE,EAAA;AAAA,IACN,MAAM,CAAA,CAAE,IAAA;AAAA,IACR,KAAK,CAAA,CAAE,GAAA;AAAA,IACP,IAAA,EAAM,EAAE,EAAA,EAAI,CAAA,CAAE,EAAA,EAAI,MAAM,CAAA,CAAE,IAAA,EAAM,GAAA,EAAK,CAAA,CAAE,GAAA;AAAI,GAC7C,CAAE,CAAA;AACN;AAEA,IAAM,OAAA,GAAgF;AAAA,EACpF,QAAA;AAAA,EACA,UAAA;AAAA,EACA,MAAA;AAAA,EACA,aAAA,EAAe,YAAA;AAAA,EACf,eAAA,EAAiB;AACnB,CAAA;AAEO,SAAS,aAAA,CAAc,QAAyB,KAAA,EAAyC;AAC9F,EAAA,MAAM,MAAA,GAAS,QAAQ,MAAM,CAAA;AAC7B,EAAA,IAAI,CAAC,MAAA,EAAQ,OAAO,OAAA,CAAQ,MAAA,CAAO,IAAI,KAAA,CAAM,CAAA,cAAA,EAAiB,MAAM,CAAA,CAAE,CAAC,CAAA;AACvE,EAAA,OAAO,MAAA,CAAO,KAAA,CAAM,IAAA,EAAM,CAAA;AAC5B","file":"store-lookup-NJCTSPFL.js","sourcesContent":["/**\n * Runs in the editor's frame (the storefront), which has the engine's API\n * client set up for the dev store: answers the editor's pickers with the real\n * store's products, categories, brands and blog. Loaded with `import()` on the\n * first lookup, so a storefront never carries it.\n *\n * Each item's `data` is what a block receives for it, in the API's shape: a\n * product block reads only the ids and fetches the rest, while categories and\n * brands are drawn from what is saved.\n */\n\nimport { product } from '../api/product';\nimport { category } from '../api/category';\nimport { brand } from '../api/brands';\nimport { blog } from '../api/blog';\nimport type { Category } from '../types';\nimport { DEV_LOOKUP_BUDGET_MS, type DevLookupItem, type DevLookupSource } from './schema-types';\n\n/** Enough to choose from; a search narrows it further. */\nconst PER_PAGE = 20;\n/** How far a paged list is searched before giving up, so a big store can't stall the picker. */\nconst MAX_PAGES = 10;\n\ninterface Page<T> {\n items: T[];\n next: string | null;\n}\n\n/**\n * The matching items of a paged list, read page after page until there are\n * enough, the pages run out, or the time budget is spent: a brand or article on\n * page three is still found, and what was found so far always reaches the\n * editor before it stops waiting (`DEV_LOOKUP_BUDGET_MS` < its timeout).\n */\nasync function collect<T>(\n fetchPage: (page: number, cursor: string | null) => Promise<Page<T>>,\n keep: (item: T) => boolean\n): Promise<T[]> {\n const deadline = Date.now() + DEV_LOOKUP_BUDGET_MS;\n const found: T[] = [];\n let cursor: string | null = null;\n for (let page = 1; page <= MAX_PAGES; page += 1) {\n const { items, next } = await fetchPage(page, cursor);\n found.push(...items.filter(keep));\n if (found.length >= PER_PAGE || !next || Date.now() >= deadline) break;\n cursor = next;\n }\n return found.slice(0, PER_PAGE);\n}\n\nfunction matches(name: string, query: string): boolean {\n return !query || name.toLowerCase().includes(query.toLowerCase());\n}\n\n/** Categories with their subcategories, flattened, parents first. */\nfunction flatten(categories: Category[]): Category[] {\n return categories.flatMap((c) => [c, ...flatten(c.sub_categories ?? [])]);\n}\n\nasync function products(query: string): Promise<DevLookupItem[]> {\n const { items } = await product.list({\n source: query ? 'search' : 'latest',\n ...(query ? { keyword: query } : {}),\n perPage: PER_PAGE,\n });\n // List responses send the id as a numeric string; the block reads a number. Use it for both.\n return items.map((p) => ({\n id: Number(p.id),\n name: p.name,\n image: p.image?.url,\n url: p.url,\n data: { id: Number(p.id), name: p.name, url: p.url, image: p.image?.url ?? null },\n }));\n}\n\nasync function categories(query: string): Promise<DevLookupItem[]> {\n return flatten(await category.list())\n .filter((c) => matches(c.name, query))\n .slice(0, PER_PAGE)\n .map((c) => ({\n id: c.id,\n name: c.name,\n image: c.image ?? undefined,\n url: c.url,\n data: { id: c.id, name: c.name, url: c.url, image: c.image ?? null, icon: c.icon ?? null },\n }));\n}\n\nasync function brands(query: string): Promise<DevLookupItem[]> {\n const found = await collect(\n (page) => brand.list(page),\n (b) => matches(b.name, query)\n );\n return found.map((b) => ({\n id: b.id,\n name: b.name,\n image: b.logo,\n url: b.url,\n data: { id: b.id, name: b.name, url: b.url, logo: b.logo, banner: b.banner ?? null },\n }));\n}\n\nasync function blogArticles(query: string): Promise<DevLookupItem[]> {\n const found = await collect(\n async (_page, cursor) => {\n const { data, cursor: pages } = await blog.articles.list(cursor ? { cursor } : undefined);\n return { items: data, next: pages?.next ?? null };\n },\n (a) => matches(a.name, query)\n );\n return found.map((a) => ({\n id: a.id,\n name: a.name,\n image: a.image,\n url: a.url,\n data: { id: a.id, name: a.name, url: a.url },\n }));\n}\n\nasync function blogCategories(query: string): Promise<DevLookupItem[]> {\n const { categories: list } = await blog.get();\n return list\n .filter((c) => matches(c.name, query))\n .slice(0, PER_PAGE)\n .map((c) => ({\n id: c.id,\n name: c.name,\n url: c.url,\n data: { id: c.id, name: c.name, url: c.url },\n }));\n}\n\nconst LOOKUPS: Record<DevLookupSource, (query: string) => Promise<DevLookupItem[]>> = {\n products,\n categories,\n brands,\n blog_articles: blogArticles,\n blog_categories: blogCategories,\n};\n\nexport function lookupInStore(source: DevLookupSource, query: string): Promise<DevLookupItem[]> {\n const lookup = LOOKUPS[source];\n if (!lookup) return Promise.reject(new Error(`no lookup for ${source}`));\n return lookup(query.trim());\n}\n"]}
1
+ {"version":3,"sources":["../src/dev/store-lookup.ts"],"names":["categories"],"mappings":"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","file":"store-lookup-HMU7QMSC.js","sourcesContent":["/**\n * Runs in the editor's frame (the storefront), which has the engine's API\n * client set up for the dev store: answers the editor's pickers with the real\n * store's products, categories, brands and blog. Loaded with `import()` on the\n * first lookup, so a storefront never carries it.\n *\n * Each item's `data` is what a block receives for it, in the API's shape: a\n * product block reads only the ids and fetches the rest, while categories and\n * brands are drawn from what is saved.\n */\n\nimport { product } from '../api/product';\nimport { category } from '../api/category';\nimport { brand } from '../api/brands';\nimport { blog } from '../api/blog';\nimport type { Category } from '../types';\nimport { DEV_LOOKUP_BUDGET_MS, type DevLookupItem, type DevLookupSource } from './schema-types';\n\n/** Enough to choose from; a search narrows it further. */\nconst PER_PAGE = 20;\n/** How far a paged list is searched before giving up, so a big store can't stall the picker. */\nconst MAX_PAGES = 10;\n\ninterface Page<T> {\n items: T[];\n next: string | null;\n}\n\n/**\n * The matching items of a paged list, read page after page until there are\n * enough, the pages run out, or the time budget is spent: a brand or article on\n * page three is still found, and what was found so far always reaches the\n * editor before it stops waiting (`DEV_LOOKUP_BUDGET_MS` < its timeout).\n */\nasync function collect<T>(\n fetchPage: (page: number, cursor: string | null) => Promise<Page<T>>,\n keep: (item: T) => boolean\n): Promise<T[]> {\n const deadline = Date.now() + DEV_LOOKUP_BUDGET_MS;\n const found: T[] = [];\n let cursor: string | null = null;\n for (let page = 1; page <= MAX_PAGES; page += 1) {\n const { items, next } = await fetchPage(page, cursor);\n found.push(...items.filter(keep));\n if (found.length >= PER_PAGE || !next || Date.now() >= deadline) break;\n cursor = next;\n }\n return found.slice(0, PER_PAGE);\n}\n\nfunction matches(name: string, query: string): boolean {\n return !query || name.toLowerCase().includes(query.toLowerCase());\n}\n\n/** Categories with their subcategories, flattened, parents first. */\nfunction flatten(categories: Category[]): Category[] {\n return categories.flatMap((c) => [c, ...flatten(c.sub_categories ?? [])]);\n}\n\nasync function products(query: string): Promise<DevLookupItem[]> {\n const { items } = await product.list({\n source: query ? 'search' : 'latest',\n ...(query ? { keyword: query } : {}),\n perPage: PER_PAGE,\n });\n // List responses send the id as a numeric string; the block reads a number. Use it for both.\n return items.map((p) => ({\n id: Number(p.id),\n name: p.name,\n image: p.image?.url,\n url: p.url,\n data: { id: Number(p.id), name: p.name, url: p.url, image: p.image?.url ?? null },\n }));\n}\n\nasync function categories(query: string): Promise<DevLookupItem[]> {\n return flatten(await category.list())\n .filter((c) => matches(c.name, query))\n .slice(0, PER_PAGE)\n .map((c) => ({\n id: c.id,\n name: c.name,\n image: c.image ?? undefined,\n url: c.url,\n data: { id: c.id, name: c.name, url: c.url, image: c.image ?? null, icon: c.icon ?? null },\n }));\n}\n\nasync function brands(query: string): Promise<DevLookupItem[]> {\n const found = await collect(\n (page) => brand.list(page),\n (b) => matches(b.name, query)\n );\n return found.map((b) => ({\n id: b.id,\n name: b.name,\n image: b.logo,\n url: b.url,\n data: { id: b.id, name: b.name, url: b.url, logo: b.logo, banner: b.banner ?? null },\n }));\n}\n\nasync function blogArticles(query: string): Promise<DevLookupItem[]> {\n const found = await collect(\n async (_page, cursor) => {\n const { data, cursor: pages } = await blog.articles.list(cursor ? { cursor } : undefined);\n return { items: data, next: pages?.next ?? null };\n },\n (a) => matches(a.name, query)\n );\n return found.map((a) => ({\n id: a.id,\n name: a.name,\n image: a.image,\n url: a.url,\n data: { id: a.id, name: a.name, url: a.url },\n }));\n}\n\nasync function blogCategories(query: string): Promise<DevLookupItem[]> {\n const { categories: list } = await blog.get();\n return list\n .filter((c) => matches(c.name, query))\n .slice(0, PER_PAGE)\n .map((c) => ({\n id: c.id,\n name: c.name,\n url: c.url,\n data: { id: c.id, name: c.name, url: c.url },\n }));\n}\n\nconst LOOKUPS: Record<DevLookupSource, (query: string) => Promise<DevLookupItem[]>> = {\n products,\n categories,\n brands,\n blog_articles: blogArticles,\n blog_categories: blogCategories,\n};\n\nexport function lookupInStore(source: DevLookupSource, query: string): Promise<DevLookupItem[]> {\n const lookup = LOOKUPS[source];\n if (!lookup) return Promise.reject(new Error(`no lookup for ${source}`));\n return lookup(query.trim());\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"link.d.ts","sourceRoot":"","sources":["../../src/tanstack/link.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAErE;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,UAKvE;AAED;;;GAGG;AACH,eAAO,MAAM,mBAAmB,0HAyC/B,CAAC;AAIF;;GAEG;AACH,wBAAgB,yBAAyB,6HAExC"}
1
+ {"version":3,"file":"link.d.ts","sourceRoot":"","sources":["../../src/tanstack/link.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAErE;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,UAKvE;AAED;;;GAGG;AACH,eAAO,MAAM,mBAAmB,0HAmD/B,CAAC;AAIF;;GAEG;AACH,wBAAgB,yBAAyB,6HAExC"}
package/dist/tanstack.js CHANGED
@@ -1,26 +1,26 @@
1
- export { tanstackDocumentAdapter as attrs, createRouter, createTwilightRootRoute, useTanstackDocumentAttrs as useAttrs } from './chunk-GCZ46XF6.js';
2
- import { requestHostOf } from './chunk-5KKQUH72.js';
3
- export { TanStackLinkAdapter, TanStackNavigationProvider, createTanStackLinkAdapter } from './chunk-5KKQUH72.js';
1
+ export { tanstackDocumentAdapter as attrs, createRouter, createTwilightRootRoute, useTanstackDocumentAttrs as useAttrs } from './chunk-LGXEXLX3.js';
2
+ import { requestHostOf } from './chunk-ABVHWJPY.js';
3
+ export { TanStackLinkAdapter, TanStackNavigationProvider, createTanStackLinkAdapter } from './chunk-ABVHWJPY.js';
4
4
  import './chunk-Z4Y55HWX.js';
5
5
  export { tanstackHeadAdapter as head, withHead } from './chunk-5UWRPWK2.js';
6
6
  import { CRITICAL_STYLE_HREF } from './chunk-4FJGZQD3.js';
7
- import './chunk-TZCTCRGB.js';
8
- import { readNativeAppHeaders } from './chunk-2IGIQA2S.js';
9
- import './chunk-HUJARQI7.js';
10
- import './chunk-ISDSQORB.js';
7
+ import './chunk-NUTURBAK.js';
8
+ import { readNativeAppHeaders } from './chunk-OJMG3NAF.js';
9
+ import './chunk-7DRXAR76.js';
10
+ import './chunk-7PFJOTZS.js';
11
11
  import { rootHead } from './chunk-N6ZE6HUX.js';
12
12
  import './chunk-X55R4VVK.js';
13
- import './chunk-J4GUGMPX.js';
13
+ import './chunk-ATL7CYF2.js';
14
14
  import './chunk-WQPG22DY.js';
15
15
  import './chunk-GD26FI4J.js';
16
16
  import { maintenanceEvidence, MAINTENANCE_EVIDENCE_HEADER, maintenanceEvidenceHeader } from './chunk-Q7E4TNN7.js';
17
17
  import './chunk-RYGEIQWO.js';
18
- import './chunk-PLPIAVLJ.js';
18
+ import './chunk-SOLUKKTW.js';
19
19
  import './chunk-OUW6WESU.js';
20
20
  import './chunk-JWXJPJBO.js';
21
21
  export { mergeDocumentDescriptors as mergeAttrs } from './chunk-CW625T2E.js';
22
- import './chunk-ZU7TSTT7.js';
23
- import './chunk-J5OJ7JM2.js';
22
+ import './chunk-2AS6KREO.js';
23
+ import './chunk-UXJAZ5JP.js';
24
24
  import './chunk-Z5M4YYWT.js';
25
25
  import './chunk-TYNZ5B2B.js';
26
26
  import './chunk-BYMOPN2S.js';
@@ -1,6 +1,6 @@
1
1
  export { stripUnsafeHtml } from '../chunk-RUHSV4Z6.js';
2
2
  export { formatSallaPlural } from '../chunk-BT6HEEAP.js';
3
- export { dispatchRouteChanged } from '../chunk-TZCTCRGB.js';
3
+ export { dispatchRouteChanged } from '../chunk-NUTURBAK.js';
4
4
  export { sortOptions } from '../chunk-3LZJXKVO.js';
5
5
  export { color } from '../chunk-VVZNW5CB.js';
6
6
  export { applyAppScopeMocks, registerThemeHookSlots } from '../chunk-WQPG22DY.js';
@@ -8,7 +8,7 @@ export { mergeHead, resolveHead, setHeadAdapter } from '../chunk-GD26FI4J.js';
8
8
  export { buildBaseHead, buildHreflangAlternates, localeToOgLocale } from '../chunk-RYGEIQWO.js';
9
9
  export { asset, cdn, isPlaceholder } from '../chunk-ZCH7W7DZ.js';
10
10
  export { mergeDocumentDescriptors, mergeElementAttrs, normalizeClasses, syncAttrsToElement, toReactProps } from '../chunk-CW625T2E.js';
11
- import '../chunk-J5OJ7JM2.js';
11
+ import '../chunk-UXJAZ5JP.js';
12
12
  import '../chunk-Z5M4YYWT.js';
13
13
  export { getSallaSDK, getStoreIdentifier, onSallaEvent, whenSallaLoaded, whenSallaReady } from '../chunk-NHA4SBKG.js';
14
14
  export { AUTH_TOKEN_COOKIE_NAME, clearAuthTokenCookie, extractTokenFromCookies } from '../chunk-FXVII733.js';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@salla.sa/twilight-theme-engine",
3
- "version": "1.0.139",
3
+ "version": "1.0.140",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
@@ -80,7 +80,8 @@ export function MainMenu() {
80
80
  {visibleMenus.map((item) => renderItem(item))}
81
81
  {hiddenMenus.length > 0 && (
82
82
  <li id="more-menu-dropdown" className="!hidden lg:!block root-level has-children">
83
- <Link to="#">
83
+ {/* No destination, so no href: the tab index keeps it reachable by keyboard. */}
84
+ <Link to="#" {...{ tabIndex: 0 }}>
84
85
  <span>{t('common.titles.more', 'More')}</span>
85
86
  </Link>
86
87
  <div className="sub-menu w-56">
@@ -12,7 +12,7 @@ import { store as storeApi } from '../../api/store';
12
12
  import { apps, type AppSnippet, type AppSettings } from '../../api/apps';
13
13
  import { translations } from '../../api/translations';
14
14
  import { advertisement } from '../../api/advertisement';
15
- import { FALLBACK_LOCALE, getLanguageInfo } from '../../providers/locale-constants';
15
+ import { FALLBACK_LOCALE, getLanguageInfo, isLocale } from '../../providers/locale-constants';
16
16
  import { createI18nInstance } from '../../providers/i18n-factory';
17
17
  import type { TwilightLocation } from '../../twilight/context';
18
18
  import { getTwilightContext, updateTwilightContext } from '../../twilight/context';
@@ -375,7 +375,9 @@ export async function rootBeforeLoad(ctx: {
375
375
  authToken?: string | null;
376
376
  };
377
377
  }): Promise<BeforeLoadResult> {
378
- const locale = ctx.params.locale || FALLBACK_LOCALE;
378
+ // Not every value here is a language. A link with `to="#"` on a page with no language in its
379
+ // path resolves to `/#`, and hovering it preloads this route with `#` as the locale.
380
+ const locale = isLocale(ctx.params.locale) ? ctx.params.locale : FALLBACK_LOCALE;
379
381
  const { dir } = getLanguageInfo(locale);
380
382
 
381
383
  if (ctx.context.setLocation) {
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/navigation/MainMenu.tsx"],"names":["MainMenuSkeleton"],"mappings":"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","file":"MainMenu-46II2DJE.js","sourcesContent":["import { useMemo, memo } from 'react';\nimport { useQuery } from '@tanstack/react-query';\nimport { useTwilight } from '../../providers/twilight-context';\nimport { useTranslation } from '../../providers/I18nProvider';\nimport { Link } from '../common';\nimport { menu } from '../../api/menu';\nimport type { MenuItem } from '../../types';\n\nconst SKELETON_ITEMS = [\n { id: 'first', width: 'w-16' },\n { id: 'second', width: 'w-20' },\n { id: 'third', width: 'w-24' },\n { id: 'fourth', width: 'w-16' },\n { id: 'fifth', width: 'w-20' },\n];\n\nconst MainMenuSkeleton = memo(function MainMenuSkeleton() {\n return (\n <nav>\n <ul className=\"main-menu\">\n {SKELETON_ITEMS.map(({ id, width }) => (\n <li key={id} className=\"!hidden lg:!block root-level\">\n <Link to=\"#\">\n <span className={`inline-block animate-pulse rounded bg-gray-200 h-4 ${width}`} />\n </Link>\n </li>\n ))}\n </ul>\n </nav>\n );\n});\n\nexport function MainMenu() {\n const { theme } = useTwilight();\n const { data: menus = [], isLoading } = useQuery(menu.queries.header());\n const { t } = useTranslation();\n\n const { visibleMenus, hiddenMenus } = useMemo(() => {\n const enableMore = theme?.settings?.is_more_button_enabled;\n const visibleCount = 7;\n\n if (enableMore && menus.length > visibleCount) {\n return {\n visibleMenus: menus.slice(0, visibleCount),\n hiddenMenus: menus.slice(visibleCount),\n };\n }\n\n return { visibleMenus: menus, hiddenMenus: [] };\n }, [menus, theme?.settings?.enable_more_menu, theme?.settings?.is_more_button_enabled]);\n\n if (isLoading) {\n return <MainMenuSkeleton />;\n }\n\n const renderItem = (item: MenuItem, isChild = false, inMoreMenu = false) => {\n const hasChildren = item.has_children && item.children && item.children.length > 0;\n const showDropdown = hasChildren && !inMoreMenu;\n\n return (\n <li\n key={item.id}\n className={`${isChild ? 'relative' : '!hidden lg:!block root-level'} ${hasChildren ? 'has-children' : ''}`}\n >\n <Link to={item.url}>\n <span>{item.title}</span>\n </Link>\n {showDropdown && (\n <div className=\"sub-menu w-56\">\n <ul>{item?.children?.map((child: MenuItem) => renderItem(child, true))}</ul>\n </div>\n )}\n </li>\n );\n };\n\n return (\n <nav>\n <ul className=\"main-menu\">\n {visibleMenus.map((item) => renderItem(item))}\n {hiddenMenus.length > 0 && (\n <li id=\"more-menu-dropdown\" className=\"!hidden lg:!block root-level has-children\">\n <Link to=\"#\">\n <span>{t('common.titles.more', 'More')}</span>\n </Link>\n <div className=\"sub-menu w-56\">\n <ul>{hiddenMenus.map((item) => renderItem(item, true, true))}</ul>\n </div>\n </li>\n )}\n </ul>\n </nav>\n );\n}\n"]}