@salla.sa/twilight-theme-engine 1.0.132 → 1.0.134

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 (272) hide show
  1. package/dist/{AddToCartForm-LUVIZGH5.js → AddToCartForm-D7AQIX7K.js} +3 -3
  2. package/dist/{AddToCartForm-LUVIZGH5.js.map → AddToCartForm-D7AQIX7K.js.map} +1 -1
  3. package/dist/{BlogAuthorPage-UC5JFBRH.js → BlogAuthorPage-P2TVMO5O.js} +29 -29
  4. package/dist/{BlogAuthorPage-UC5JFBRH.js.map → BlogAuthorPage-P2TVMO5O.js.map} +1 -1
  5. package/dist/{BlogCategoryPage-YZ6BN4QV.js → BlogCategoryPage-A2BS6T3I.js} +29 -29
  6. package/dist/{BlogCategoryPage-YZ6BN4QV.js.map → BlogCategoryPage-A2BS6T3I.js.map} +1 -1
  7. package/dist/{BlogPage-ERPCNHQV.js → BlogPage-ZOIVZQ5W.js} +27 -27
  8. package/dist/{BlogPage-ERPCNHQV.js.map → BlogPage-ZOIVZQ5W.js.map} +1 -1
  9. package/dist/{BlogSinglePage-TNVS5VCF.js → BlogSinglePage-X57JXKQ6.js} +27 -27
  10. package/dist/{BlogSinglePage-TNVS5VCF.js.map → BlogSinglePage-X57JXKQ6.js.map} +1 -1
  11. package/dist/{BlogTagPage-DKWJM6GQ.js → BlogTagPage-WXLEEA63.js} +29 -29
  12. package/dist/{BlogTagPage-DKWJM6GQ.js.map → BlogTagPage-WXLEEA63.js.map} +1 -1
  13. package/dist/{BrandsPage-ALLXOEZ7.js → BrandsPage-6ZMEF4EQ.js} +28 -28
  14. package/dist/{BrandsPage-ALLXOEZ7.js.map → BrandsPage-6ZMEF4EQ.js.map} +1 -1
  15. package/dist/{Breadcrumb-2TWWY76F.js → Breadcrumb-FYA3KNAY.js} +27 -27
  16. package/dist/{Breadcrumb-2TWWY76F.js.map → Breadcrumb-FYA3KNAY.js.map} +1 -1
  17. package/dist/{CartItem-XNCZZQ4X.js → CartItem-XGDV4EZ4.js} +27 -27
  18. package/dist/{CartItem-XNCZZQ4X.js.map → CartItem-XGDV4EZ4.js.map} +1 -1
  19. package/dist/{CartSummary-ROELC4AF.js → CartSummary-BP6BJ7BB.js} +27 -27
  20. package/dist/{CartSummary-ROELC4AF.js.map → CartSummary-BP6BJ7BB.js.map} +1 -1
  21. package/dist/{Copyright-UPGI2I5D.js → Copyright-H4CYJQR3.js} +3 -3
  22. package/dist/{Copyright-UPGI2I5D.js.map → Copyright-H4CYJQR3.js.map} +1 -1
  23. package/dist/{CustomerLayout-YXTOHATN.js → CustomerLayout-YLMMDLXA.js} +27 -27
  24. package/dist/{CustomerLayout-YXTOHATN.js.map → CustomerLayout-YLMMDLXA.js.map} +1 -1
  25. package/dist/{Footer-J4V5UUCF.js → Footer-ADZZF3NE.js} +4 -4
  26. package/dist/{Footer-J4V5UUCF.js.map → Footer-ADZZF3NE.js.map} +1 -1
  27. package/dist/Header-OMEW5PF4.js +23 -0
  28. package/dist/{Header-5ENK5VKP.js.map → Header-OMEW5PF4.js.map} +1 -1
  29. package/dist/{LoyaltyPage-J6GSLDVZ.js → LoyaltyPage-EGTJAFY3.js} +27 -27
  30. package/dist/{LoyaltyPage-J6GSLDVZ.js.map → LoyaltyPage-EGTJAFY3.js.map} +1 -1
  31. package/dist/{LoyaltyPointsPage-XP2RCLZA.js → LoyaltyPointsPage-RSPBAI73.js} +9 -9
  32. package/dist/{LoyaltyPointsPage-XP2RCLZA.js.map → LoyaltyPointsPage-RSPBAI73.js.map} +1 -1
  33. package/dist/{MainMenu-RMM6ZJWZ.js → MainMenu-R7RNOTPO.js} +8 -8
  34. package/dist/{MainMenu-RMM6ZJWZ.js.map → MainMenu-R7RNOTPO.js.map} +1 -1
  35. package/dist/MaintenancePage-U5P43D52.js +7 -0
  36. package/dist/{MaintenancePage-A7CNHM7B.js.map → MaintenancePage-U5P43D52.js.map} +1 -1
  37. package/dist/{MasterLayout-BIAXVZNR.js → MasterLayout-LLKACZ7T.js} +27 -27
  38. package/dist/{MasterLayout-BIAXVZNR.js.map → MasterLayout-LLKACZ7T.js.map} +1 -1
  39. package/dist/{MobileMenu-HYKQCDTC.js → MobileMenu-4F4DBTWU.js} +28 -28
  40. package/dist/{MobileMenu-HYKQCDTC.js.map → MobileMenu-4F4DBTWU.js.map} +1 -1
  41. package/dist/{NotificationsPage-Q6EDPEQX.js → NotificationsPage-AWKZRH7H.js} +27 -27
  42. package/dist/{NotificationsPage-Q6EDPEQX.js.map → NotificationsPage-AWKZRH7H.js.map} +1 -1
  43. package/dist/{OrderSinglePage-HGEECI7Q.js → OrderSinglePage-2RTLHMMO.js} +28 -28
  44. package/dist/{OrderSinglePage-HGEECI7Q.js.map → OrderSinglePage-2RTLHMMO.js.map} +1 -1
  45. package/dist/{OrdersPage-CBHLD5XG.js → OrdersPage-57MRSJTB.js} +27 -27
  46. package/dist/{OrdersPage-CBHLD5XG.js.map → OrdersPage-57MRSJTB.js.map} +1 -1
  47. package/dist/{PageSingle-S6IRM4Q5.js → PageSingle-YTXFQHHC.js} +7 -7
  48. package/dist/{PageSingle-S6IRM4Q5.js.map → PageSingle-YTXFQHHC.js.map} +1 -1
  49. package/dist/{ProductDetails-DHY35UDT.js → ProductDetails-6LWZSW7R.js} +8 -8
  50. package/dist/{ProductDetails-DHY35UDT.js.map → ProductDetails-6LWZSW7R.js.map} +1 -1
  51. package/dist/{ProfilePage-3ES62QH7.js → ProfilePage-JKDLNAKB.js} +27 -27
  52. package/dist/{ProfilePage-3ES62QH7.js.map → ProfilePage-JKDLNAKB.js.map} +1 -1
  53. package/dist/{ReviewsPage-RFEOWEVU.js → ReviewsPage-OST5SGH5.js} +3 -3
  54. package/dist/{ReviewsPage-RFEOWEVU.js.map → ReviewsPage-OST5SGH5.js.map} +1 -1
  55. package/dist/{SeoCartWidget-WJCQ76TI.js → SeoCartWidget-7L2B25DP.js} +27 -27
  56. package/dist/{SeoCartWidget-WJCQ76TI.js.map → SeoCartWidget-7L2B25DP.js.map} +1 -1
  57. package/dist/{SettingsPage-BHIVN22T.js → SettingsPage-IFYFZ2SP.js} +27 -27
  58. package/dist/{SettingsPage-BHIVN22T.js.map → SettingsPage-IFYFZ2SP.js.map} +1 -1
  59. package/dist/StoreClosedNotification-COURDUGE.js +58 -0
  60. package/dist/{StoreClosedNotification-IYVXVJJO.js.map → StoreClosedNotification-COURDUGE.js.map} +1 -1
  61. package/dist/{TestimonialsPage-E7IKEHCT.js → TestimonialsPage-2RWGM5OP.js} +7 -7
  62. package/dist/{TestimonialsPage-E7IKEHCT.js.map → TestimonialsPage-2RWGM5OP.js.map} +1 -1
  63. package/dist/{ThankYouPage-DAZOZH6Y.js → ThankYouPage-OJLIJPLR.js} +27 -27
  64. package/dist/{ThankYouPage-DAZOZH6Y.js.map → ThankYouPage-OJLIJPLR.js.map} +1 -1
  65. package/dist/{WalletPage-ZBCGMDSP.js → WalletPage-FBOYCP2F.js} +28 -28
  66. package/dist/{WalletPage-ZBCGMDSP.js.map → WalletPage-FBOYCP2F.js.map} +1 -1
  67. package/dist/{WishlistPage-HAUJQL2G.js → WishlistPage-YWTH5YAO.js} +29 -29
  68. package/dist/{WishlistPage-HAUJQL2G.js.map → WishlistPage-YWTH5YAO.js.map} +1 -1
  69. package/dist/api/advertisement.js +5 -5
  70. package/dist/api/apps.js +5 -5
  71. package/dist/api/blog.js +7 -7
  72. package/dist/api/brands.js +7 -7
  73. package/dist/api/cart.js +7 -7
  74. package/dist/api/category.js +7 -7
  75. package/dist/api/client.js +4 -4
  76. package/dist/api/home.js +5 -5
  77. package/dist/api/loyalty.js +7 -7
  78. package/dist/api/menu.js +5 -5
  79. package/dist/api/notification.js +5 -5
  80. package/dist/api/order.js +7 -7
  81. package/dist/api/page.js +7 -7
  82. package/dist/api/product.d.ts +3 -0
  83. package/dist/api/product.d.ts.map +1 -1
  84. package/dist/api/product.js +7 -7
  85. package/dist/api/profile.js +4 -4
  86. package/dist/api/store.js +6 -6
  87. package/dist/api/translations.js +5 -5
  88. package/dist/api/user.js +5 -5
  89. package/dist/api/wallet.js +5 -5
  90. package/dist/api/wishlist.js +8 -8
  91. package/dist/{chunk-5NN4OICC.js → chunk-2EF2HHHL.js} +3 -3
  92. package/dist/{chunk-5NN4OICC.js.map → chunk-2EF2HHHL.js.map} +1 -1
  93. package/dist/{chunk-Z4N3WJ6R.js → chunk-2ZJAQBFV.js} +3 -3
  94. package/dist/{chunk-Z4N3WJ6R.js.map → chunk-2ZJAQBFV.js.map} +1 -1
  95. package/dist/{chunk-CGAKEPEC.js → chunk-352YYRKV.js} +3 -3
  96. package/dist/{chunk-CGAKEPEC.js.map → chunk-352YYRKV.js.map} +1 -1
  97. package/dist/{chunk-2TLIULJZ.js → chunk-3E3ABCPC.js} +3 -3
  98. package/dist/{chunk-2TLIULJZ.js.map → chunk-3E3ABCPC.js.map} +1 -1
  99. package/dist/{chunk-7E7CA72E.js → chunk-3OWCF54L.js} +4 -4
  100. package/dist/{chunk-7E7CA72E.js.map → chunk-3OWCF54L.js.map} +1 -1
  101. package/dist/{chunk-D5SYOOE2.js → chunk-4EAYVEJO.js} +4 -4
  102. package/dist/{chunk-D5SYOOE2.js.map → chunk-4EAYVEJO.js.map} +1 -1
  103. package/dist/{chunk-KLSRARPU.js → chunk-5EDFGGY4.js} +4 -4
  104. package/dist/{chunk-KLSRARPU.js.map → chunk-5EDFGGY4.js.map} +1 -1
  105. package/dist/{chunk-F5NB3H5P.js → chunk-5RWIVHYS.js} +6 -6
  106. package/dist/{chunk-F5NB3H5P.js.map → chunk-5RWIVHYS.js.map} +1 -1
  107. package/dist/{chunk-EHTLXK5F.js → chunk-5UWRPWK2.js} +5 -5
  108. package/dist/{chunk-EHTLXK5F.js.map → chunk-5UWRPWK2.js.map} +1 -1
  109. package/dist/{chunk-7VNVCHID.js → chunk-6K34BCUP.js} +2 -2
  110. package/dist/{chunk-7VNVCHID.js.map → chunk-6K34BCUP.js.map} +1 -1
  111. package/dist/{chunk-MPQ5NACW.js → chunk-6PMG5J4Z.js} +4 -4
  112. package/dist/{chunk-MPQ5NACW.js.map → chunk-6PMG5J4Z.js.map} +1 -1
  113. package/dist/{chunk-TTZKDTD5.js → chunk-6S43HHJM.js} +3 -3
  114. package/dist/{chunk-TTZKDTD5.js.map → chunk-6S43HHJM.js.map} +1 -1
  115. package/dist/{chunk-JB5XMO4D.js → chunk-BQ5SELOL.js} +4 -4
  116. package/dist/{chunk-JB5XMO4D.js.map → chunk-BQ5SELOL.js.map} +1 -1
  117. package/dist/{chunk-CKH6WBMA.js → chunk-CZ6VJPCG.js} +3 -3
  118. package/dist/{chunk-CKH6WBMA.js.map → chunk-CZ6VJPCG.js.map} +1 -1
  119. package/dist/{chunk-GLDGDTVU.js → chunk-DGK2HVSR.js} +6 -6
  120. package/dist/{chunk-GLDGDTVU.js.map → chunk-DGK2HVSR.js.map} +1 -1
  121. package/dist/{chunk-GY6G7S3N.js → chunk-DRDQQNIW.js} +29 -8
  122. package/dist/chunk-DRDQQNIW.js.map +1 -0
  123. package/dist/{chunk-PGXRNW3Y.js → chunk-DRX6L472.js} +3 -3
  124. package/dist/{chunk-PGXRNW3Y.js.map → chunk-DRX6L472.js.map} +1 -1
  125. package/dist/{chunk-YZDL2P6T.js → chunk-EISZVMJY.js} +4 -4
  126. package/dist/{chunk-YZDL2P6T.js.map → chunk-EISZVMJY.js.map} +1 -1
  127. package/dist/{chunk-BAS4BPSB.js → chunk-FOBC4W73.js} +3 -3
  128. package/dist/{chunk-BAS4BPSB.js.map → chunk-FOBC4W73.js.map} +1 -1
  129. package/dist/{chunk-FHU2MXZA.js → chunk-FXVII733.js} +18 -8
  130. package/dist/chunk-FXVII733.js.map +1 -0
  131. package/dist/{chunk-HHHDPYMO.js → chunk-HIF6PP7C.js} +4 -4
  132. package/dist/{chunk-HHHDPYMO.js.map → chunk-HIF6PP7C.js.map} +1 -1
  133. package/dist/{chunk-BK5TBUGG.js → chunk-HOJ5E2PG.js} +3 -3
  134. package/dist/{chunk-BK5TBUGG.js.map → chunk-HOJ5E2PG.js.map} +1 -1
  135. package/dist/{chunk-DCPQ4Z7N.js → chunk-IJX2MCPN.js} +4 -4
  136. package/dist/{chunk-DCPQ4Z7N.js.map → chunk-IJX2MCPN.js.map} +1 -1
  137. package/dist/{chunk-5RUFKW7T.js → chunk-IYAXNDJI.js} +4 -4
  138. package/dist/{chunk-5RUFKW7T.js.map → chunk-IYAXNDJI.js.map} +1 -1
  139. package/dist/{chunk-EANN5L2E.js → chunk-JPG5XSTP.js} +8 -8
  140. package/dist/{chunk-EANN5L2E.js.map → chunk-JPG5XSTP.js.map} +1 -1
  141. package/dist/{chunk-YMXOKWNO.js → chunk-KJG4BPY2.js} +4 -4
  142. package/dist/{chunk-YMXOKWNO.js.map → chunk-KJG4BPY2.js.map} +1 -1
  143. package/dist/{chunk-TI3Q2B3H.js → chunk-LA7B3TTK.js} +9 -9
  144. package/dist/{chunk-TI3Q2B3H.js.map → chunk-LA7B3TTK.js.map} +1 -1
  145. package/dist/{chunk-JGVEGQHJ.js → chunk-LFHYQ6AN.js} +3 -3
  146. package/dist/{chunk-JGVEGQHJ.js.map → chunk-LFHYQ6AN.js.map} +1 -1
  147. package/dist/{chunk-BL6DCALA.js → chunk-LVEIDCW2.js} +7 -7
  148. package/dist/{chunk-BL6DCALA.js.map → chunk-LVEIDCW2.js.map} +1 -1
  149. package/dist/{chunk-DROQER6S.js → chunk-M75BIUMZ.js} +3 -3
  150. package/dist/{chunk-DROQER6S.js.map → chunk-M75BIUMZ.js.map} +1 -1
  151. package/dist/{chunk-V2M5YNZQ.js → chunk-MWYKP7CI.js} +3 -3
  152. package/dist/{chunk-V2M5YNZQ.js.map → chunk-MWYKP7CI.js.map} +1 -1
  153. package/dist/{chunk-GYXUYHKO.js → chunk-NHA4SBKG.js} +4 -4
  154. package/dist/{chunk-GYXUYHKO.js.map → chunk-NHA4SBKG.js.map} +1 -1
  155. package/dist/{chunk-CQY64PLJ.js → chunk-NVPG5X2H.js} +4 -4
  156. package/dist/{chunk-CQY64PLJ.js.map → chunk-NVPG5X2H.js.map} +1 -1
  157. package/dist/{chunk-ZVZPCDEU.js → chunk-OO2JMMCL.js} +4 -4
  158. package/dist/{chunk-ZVZPCDEU.js.map → chunk-OO2JMMCL.js.map} +1 -1
  159. package/dist/{chunk-YQELP5ND.js → chunk-PXH5TZGZ.js} +5 -5
  160. package/dist/{chunk-YQELP5ND.js.map → chunk-PXH5TZGZ.js.map} +1 -1
  161. package/dist/{chunk-FID76MUV.js → chunk-Q7E4TNN7.js} +10 -6
  162. package/dist/chunk-Q7E4TNN7.js.map +1 -0
  163. package/dist/{chunk-CHMWAYVU.js → chunk-QC4XQO6D.js} +4 -4
  164. package/dist/{chunk-CHMWAYVU.js.map → chunk-QC4XQO6D.js.map} +1 -1
  165. package/dist/{chunk-TBTQQM45.js → chunk-R7DPH75N.js} +5 -5
  166. package/dist/{chunk-TBTQQM45.js.map → chunk-R7DPH75N.js.map} +1 -1
  167. package/dist/{chunk-EJIMEI36.js → chunk-RFDP66ID.js} +7 -7
  168. package/dist/{chunk-EJIMEI36.js.map → chunk-RFDP66ID.js.map} +1 -1
  169. package/dist/{chunk-OM2GRPDH.js → chunk-RYGEIQWO.js} +3 -3
  170. package/dist/{chunk-OM2GRPDH.js.map → chunk-RYGEIQWO.js.map} +1 -1
  171. package/dist/{chunk-PCEKL6S3.js → chunk-SXI2XBCC.js} +7 -7
  172. package/dist/{chunk-PCEKL6S3.js.map → chunk-SXI2XBCC.js.map} +1 -1
  173. package/dist/{chunk-L4TQBWR7.js → chunk-TF6HFXTW.js} +3 -3
  174. package/dist/{chunk-L4TQBWR7.js.map → chunk-TF6HFXTW.js.map} +1 -1
  175. package/dist/{chunk-E7YBFA3H.js → chunk-TL2RV5KC.js} +5 -5
  176. package/dist/{chunk-E7YBFA3H.js.map → chunk-TL2RV5KC.js.map} +1 -1
  177. package/dist/{chunk-6LMS7IYL.js → chunk-UII3OBWQ.js} +7 -7
  178. package/dist/{chunk-6LMS7IYL.js.map → chunk-UII3OBWQ.js.map} +1 -1
  179. package/dist/{chunk-THQDHZ4K.js → chunk-UJIE7IEJ.js} +4 -4
  180. package/dist/{chunk-THQDHZ4K.js.map → chunk-UJIE7IEJ.js.map} +1 -1
  181. package/dist/{chunk-5FJFN3IW.js → chunk-WQPG22DY.js} +3 -3
  182. package/dist/{chunk-5FJFN3IW.js.map → chunk-WQPG22DY.js.map} +1 -1
  183. package/dist/{chunk-2MUBQOS5.js → chunk-WSPMY4BC.js} +8 -8
  184. package/dist/{chunk-2MUBQOS5.js.map → chunk-WSPMY4BC.js.map} +1 -1
  185. package/dist/{chunk-NXJ4KAJQ.js → chunk-WUDGMLUX.js} +4 -4
  186. package/dist/{chunk-NXJ4KAJQ.js.map → chunk-WUDGMLUX.js.map} +1 -1
  187. package/dist/{chunk-EJV3NYBP.js → chunk-WVQBEAYO.js} +24 -24
  188. package/dist/chunk-WVQBEAYO.js.map +1 -0
  189. package/dist/{chunk-JYV25VNZ.js → chunk-X55R4VVK.js} +3 -3
  190. package/dist/{chunk-JYV25VNZ.js.map → chunk-X55R4VVK.js.map} +1 -1
  191. package/dist/chunk-XRULXQBR.js +14 -0
  192. package/dist/{chunk-DOTKJOVG.js.map → chunk-XRULXQBR.js.map} +1 -1
  193. package/dist/{chunk-RSKVPOMJ.js → chunk-XUJJIH5C.js} +17 -17
  194. package/dist/chunk-XUJJIH5C.js.map +1 -0
  195. package/dist/{chunk-5DOMRYLF.js → chunk-YDXBRST4.js} +7 -7
  196. package/dist/{chunk-5DOMRYLF.js.map → chunk-YDXBRST4.js.map} +1 -1
  197. package/dist/{chunk-TOJM4ZIF.js → chunk-ZKHMZF36.js} +7 -7
  198. package/dist/{chunk-TOJM4ZIF.js.map → chunk-ZKHMZF36.js.map} +1 -1
  199. package/dist/components/cart/index.js +1 -1
  200. package/dist/components/common/index.js +1 -1
  201. package/dist/components/drawer/index.js +25 -25
  202. package/dist/components/home/index.js +29 -29
  203. package/dist/components/layout/index.js +7 -7
  204. package/dist/components/product/index.js +26 -26
  205. package/dist/components/store/index.js +27 -27
  206. package/dist/components/toast/index.js +5 -5
  207. package/dist/dev/editor/index.js +3 -3
  208. package/dist/dev/index.js +3 -3
  209. package/dist/document-class-R26LC5C2.js +31 -0
  210. package/dist/{document-class-G5XELNQN.js.map → document-class-R26LC5C2.js.map} +1 -1
  211. package/dist/hooks/index.js +25 -25
  212. package/dist/hooks/useComments.js +4 -4
  213. package/dist/hooks/useGtm.js +25 -25
  214. package/dist/hooks/useMoney.js +25 -25
  215. package/dist/hooks/useProduct.js +4 -4
  216. package/dist/hooks/useStore.js +25 -25
  217. package/dist/hooks/useUser.js +6 -6
  218. package/dist/hooks/useWishlist.js +4 -4
  219. package/dist/index.js +25 -25
  220. package/dist/native-app/index.js +4 -4
  221. package/dist/{navigation-ZPJHUO4Z.js → navigation-2UNFQOOQ.js} +8 -8
  222. package/dist/{navigation-ZPJHUO4Z.js.map → navigation-2UNFQOOQ.js.map} +1 -1
  223. package/dist/navigation-5ZAI4SPZ.js +15 -0
  224. package/dist/{navigation-S6ZL2WSI.js.map → navigation-5ZAI4SPZ.js.map} +1 -1
  225. package/dist/{not-found-KME662CU.js → not-found-LGTTNZ4Y.js} +28 -28
  226. package/dist/{not-found-KME662CU.js.map → not-found-LGTTNZ4Y.js.map} +1 -1
  227. package/dist/providers/index.js +25 -25
  228. package/dist/providers/twilight-init.d.ts.map +1 -1
  229. package/dist/routes/account/orders.js +9 -9
  230. package/dist/routes/account.js +18 -18
  231. package/dist/routes/blog.js +13 -13
  232. package/dist/routes/brands.js +9 -9
  233. package/dist/routes/cart.js +33 -33
  234. package/dist/routes/home.js +30 -30
  235. package/dist/routes/index.js +7 -7
  236. package/dist/routes/loyalty.js +10 -10
  237. package/dist/routes/page.js +9 -9
  238. package/dist/routes/product-listing.js +31 -31
  239. package/dist/routes/product.js +29 -29
  240. package/dist/routes/root/beforeLoad.d.ts +6 -0
  241. package/dist/routes/root/beforeLoad.d.ts.map +1 -1
  242. package/dist/routes/seo-redirects.js +7 -7
  243. package/dist/routes/testimonials.js +5 -5
  244. package/dist/routes/thank-you.js +9 -9
  245. package/dist/skeleton.js +30 -30
  246. package/dist/{store-lookup-R5KJS7Z3.js → store-lookup-DQECZUBL.js} +12 -12
  247. package/dist/{store-lookup-R5KJS7Z3.js.map → store-lookup-DQECZUBL.js.map} +1 -1
  248. package/dist/tanstack.js +22 -22
  249. package/dist/twilight/context.d.ts +3 -2
  250. package/dist/twilight/context.d.ts.map +1 -1
  251. package/dist/utils/baseHead.js +3 -3
  252. package/dist/utils/cookies.d.ts +15 -1
  253. package/dist/utils/cookies.d.ts.map +1 -1
  254. package/dist/utils/index.js +7 -7
  255. package/dist/utils/maintenance.d.ts +37 -5
  256. package/dist/utils/maintenance.d.ts.map +1 -1
  257. package/dist/utils/store-identity.d.ts +10 -0
  258. package/dist/utils/store-identity.d.ts.map +1 -1
  259. package/dist/vite/index.js +5 -5
  260. package/package.json +1 -1
  261. package/tailwind/routes/root/beforeLoad.ts.txt +8 -1
  262. package/dist/Header-5ENK5VKP.js +0 -23
  263. package/dist/MaintenancePage-A7CNHM7B.js +0 -7
  264. package/dist/StoreClosedNotification-IYVXVJJO.js +0 -58
  265. package/dist/chunk-DOTKJOVG.js +0 -14
  266. package/dist/chunk-EJV3NYBP.js.map +0 -1
  267. package/dist/chunk-FHU2MXZA.js.map +0 -1
  268. package/dist/chunk-FID76MUV.js.map +0 -1
  269. package/dist/chunk-GY6G7S3N.js.map +0 -1
  270. package/dist/chunk-RSKVPOMJ.js.map +0 -1
  271. package/dist/document-class-G5XELNQN.js +0 -31
  272. package/dist/navigation-S6ZL2WSI.js +0 -15
package/dist/skeleton.js CHANGED
@@ -1,51 +1,51 @@
1
1
  export { BlogSkeleton, BreadcrumbSkeleton, CartSkeleton, CustomerLayoutSkeleton, CustomerPageSkeleton, PageSkeleton, ProductCardSkeleton, ProductDetailSkeleton, ProductGridSkeleton, SkeletonPulse } from './chunk-N7CCSGZF.js';
2
- export { HomeSkeleton } from './chunk-6LMS7IYL.js';
2
+ export { HomeSkeleton } from './chunk-UII3OBWQ.js';
3
3
  import './chunk-IXHM24Z4.js';
4
- import './chunk-EANN5L2E.js';
5
- import './chunk-DROQER6S.js';
6
- import './chunk-GY6G7S3N.js';
7
- import './chunk-2MUBQOS5.js';
4
+ import './chunk-JPG5XSTP.js';
5
+ import './chunk-M75BIUMZ.js';
6
+ import './chunk-DRDQQNIW.js';
7
+ import './chunk-WSPMY4BC.js';
8
8
  import './chunk-Y32RHCOH.js';
9
- import './chunk-EJV3NYBP.js';
9
+ import './chunk-WVQBEAYO.js';
10
10
  import './chunk-H2QBHOF2.js';
11
- import './chunk-EJIMEI36.js';
12
- import './chunk-BAS4BPSB.js';
13
- import './chunk-PCEKL6S3.js';
14
- import './chunk-JYV25VNZ.js';
15
- import './chunk-ZVZPCDEU.js';
11
+ import './chunk-RFDP66ID.js';
12
+ import './chunk-FOBC4W73.js';
13
+ import './chunk-SXI2XBCC.js';
14
+ import './chunk-X55R4VVK.js';
15
+ import './chunk-OO2JMMCL.js';
16
16
  import './chunk-OXMUPNMH.js';
17
- import './chunk-5NN4OICC.js';
17
+ import './chunk-2EF2HHHL.js';
18
18
  import './chunk-VVZNW5CB.js';
19
- import './chunk-5FJFN3IW.js';
19
+ import './chunk-WQPG22DY.js';
20
20
  import './chunk-GD26FI4J.js';
21
- import './chunk-FID76MUV.js';
22
- import './chunk-OM2GRPDH.js';
23
- import './chunk-GLDGDTVU.js';
21
+ import './chunk-Q7E4TNN7.js';
22
+ import './chunk-RYGEIQWO.js';
23
+ import './chunk-DGK2HVSR.js';
24
24
  import './chunk-OUW6WESU.js';
25
- import './chunk-BK5TBUGG.js';
25
+ import './chunk-HOJ5E2PG.js';
26
26
  import './chunk-HI5V5X3S.js';
27
- import './chunk-YZDL2P6T.js';
28
- import './chunk-TTZKDTD5.js';
27
+ import './chunk-EISZVMJY.js';
28
+ import './chunk-6S43HHJM.js';
29
29
  import './chunk-MVT5AF2A.js';
30
30
  import './chunk-Z653O7MX.js';
31
31
  import './chunk-ZCH7W7DZ.js';
32
- import './chunk-L4TQBWR7.js';
32
+ import './chunk-TF6HFXTW.js';
33
33
  import './chunk-JWXJPJBO.js';
34
34
  import './chunk-CW625T2E.js';
35
35
  import './chunk-7V36I5GT.js';
36
36
  import './chunk-6WI7R2BD.js';
37
- import './chunk-JGVEGQHJ.js';
37
+ import './chunk-LFHYQ6AN.js';
38
38
  import './chunk-OAMIDZKW.js';
39
- import './chunk-E7YBFA3H.js';
39
+ import './chunk-TL2RV5KC.js';
40
40
  import './chunk-OQIIJRAS.js';
41
41
  import './chunk-V2ZDTY6H.js';
42
- import './chunk-D5SYOOE2.js';
42
+ import './chunk-4EAYVEJO.js';
43
43
  import './chunk-5XDPAKF5.js';
44
44
  import './chunk-GCPEMNSU.js';
45
- import './chunk-F5NB3H5P.js';
45
+ import './chunk-5RWIVHYS.js';
46
46
  import './chunk-Z5M4YYWT.js';
47
47
  import './chunk-TYNZ5B2B.js';
48
- import './chunk-PGXRNW3Y.js';
48
+ import './chunk-DRX6L472.js';
49
49
  import './chunk-AXW67SY7.js';
50
50
  import './chunk-BYMOPN2S.js';
51
51
  import './chunk-SKLEJJ6M.js';
@@ -53,11 +53,11 @@ import './chunk-6BZ5TKEV.js';
53
53
  import './chunk-FZKRSGLP.js';
54
54
  import './chunk-7V5HOZW4.js';
55
55
  import './chunk-YA6ABQB7.js';
56
- import './chunk-V2M5YNZQ.js';
57
- import './chunk-2TLIULJZ.js';
58
- import './chunk-GYXUYHKO.js';
59
- import './chunk-FHU2MXZA.js';
60
- import './chunk-7VNVCHID.js';
56
+ import './chunk-MWYKP7CI.js';
57
+ import './chunk-3E3ABCPC.js';
58
+ import './chunk-NHA4SBKG.js';
59
+ import './chunk-FXVII733.js';
60
+ import './chunk-6K34BCUP.js';
61
61
  import './chunk-T72DAX7R.js';
62
62
  import './chunk-DF6FBKDN.js';
63
63
  import './chunk-DGUM43GV.js';
@@ -1,16 +1,16 @@
1
- import { category } from './chunk-5RUFKW7T.js';
2
- import { blog } from './chunk-NXJ4KAJQ.js';
3
- import { brand } from './chunk-YMXOKWNO.js';
4
- import { product } from './chunk-GY6G7S3N.js';
1
+ import { category } from './chunk-IYAXNDJI.js';
2
+ import { blog } from './chunk-WUDGMLUX.js';
3
+ import { brand } from './chunk-KJG4BPY2.js';
4
+ import { product } from './chunk-DRDQQNIW.js';
5
5
  import { DEV_LOOKUP_BUDGET_MS } from './chunk-OXMUPNMH.js';
6
- import './chunk-GLDGDTVU.js';
6
+ import './chunk-DGK2HVSR.js';
7
7
  import './chunk-OUW6WESU.js';
8
- import './chunk-F5NB3H5P.js';
8
+ import './chunk-5RWIVHYS.js';
9
9
  import './chunk-Z5M4YYWT.js';
10
- import './chunk-2TLIULJZ.js';
11
- import './chunk-GYXUYHKO.js';
12
- import './chunk-FHU2MXZA.js';
13
- import './chunk-7VNVCHID.js';
10
+ import './chunk-3E3ABCPC.js';
11
+ import './chunk-NHA4SBKG.js';
12
+ import './chunk-FXVII733.js';
13
+ import './chunk-6K34BCUP.js';
14
14
  import './chunk-T72DAX7R.js';
15
15
  import './chunk-DF6FBKDN.js';
16
16
  import './chunk-DGUM43GV.js';
@@ -111,5 +111,5 @@ function lookupInStore(source, query) {
111
111
  }
112
112
 
113
113
  export { lookupInStore };
114
- //# sourceMappingURL=store-lookup-R5KJS7Z3.js.map
115
- //# sourceMappingURL=store-lookup-R5KJS7Z3.js.map
114
+ //# sourceMappingURL=store-lookup-DQECZUBL.js.map
115
+ //# sourceMappingURL=store-lookup-DQECZUBL.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/dev/store-lookup.ts"],"names":["categories"],"mappings":"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","file":"store-lookup-R5KJS7Z3.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-DQECZUBL.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"]}
package/dist/tanstack.js CHANGED
@@ -1,34 +1,34 @@
1
- export { tanstackDocumentAdapter as attrs, createRouter, createTwilightRootRoute, useTanstackDocumentAttrs as useAttrs } from './chunk-RSKVPOMJ.js';
2
- import { requestHostOf } from './chunk-BL6DCALA.js';
3
- export { TanStackLinkAdapter, TanStackNavigationProvider, createTanStackLinkAdapter } from './chunk-BL6DCALA.js';
1
+ export { tanstackDocumentAdapter as attrs, createRouter, createTwilightRootRoute, useTanstackDocumentAttrs as useAttrs } from './chunk-XUJJIH5C.js';
2
+ import { requestHostOf } from './chunk-LVEIDCW2.js';
3
+ export { TanStackLinkAdapter, TanStackNavigationProvider, createTanStackLinkAdapter } from './chunk-LVEIDCW2.js';
4
4
  import './chunk-Z4Y55HWX.js';
5
- export { tanstackHeadAdapter as head, withHead } from './chunk-EHTLXK5F.js';
5
+ export { tanstackHeadAdapter as head, withHead } from './chunk-5UWRPWK2.js';
6
6
  import { CRITICAL_STYLE_HREF } from './chunk-4FJGZQD3.js';
7
- import './chunk-YQELP5ND.js';
8
- import { readNativeAppHeaders } from './chunk-5DOMRYLF.js';
9
- import './chunk-7E7CA72E.js';
10
- import './chunk-GY6G7S3N.js';
11
- import { rootHead } from './chunk-PCEKL6S3.js';
12
- import './chunk-JYV25VNZ.js';
13
- import './chunk-5NN4OICC.js';
14
- import './chunk-5FJFN3IW.js';
7
+ import './chunk-PXH5TZGZ.js';
8
+ import { readNativeAppHeaders } from './chunk-YDXBRST4.js';
9
+ import './chunk-3OWCF54L.js';
10
+ import './chunk-DRDQQNIW.js';
11
+ import { rootHead } from './chunk-SXI2XBCC.js';
12
+ import './chunk-X55R4VVK.js';
13
+ import './chunk-2EF2HHHL.js';
14
+ import './chunk-WQPG22DY.js';
15
15
  import './chunk-GD26FI4J.js';
16
- import { maintenanceEvidence, MAINTENANCE_EVIDENCE_HEADER, maintenanceEvidenceHeader } from './chunk-FID76MUV.js';
17
- import './chunk-OM2GRPDH.js';
18
- import './chunk-GLDGDTVU.js';
16
+ import { maintenanceEvidence, MAINTENANCE_EVIDENCE_HEADER, maintenanceEvidenceHeader } from './chunk-Q7E4TNN7.js';
17
+ import './chunk-RYGEIQWO.js';
18
+ import './chunk-DGK2HVSR.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-D5SYOOE2.js';
23
- import './chunk-F5NB3H5P.js';
22
+ import './chunk-4EAYVEJO.js';
23
+ import './chunk-5RWIVHYS.js';
24
24
  import './chunk-Z5M4YYWT.js';
25
25
  import './chunk-TYNZ5B2B.js';
26
26
  import './chunk-BYMOPN2S.js';
27
- import './chunk-2TLIULJZ.js';
28
- import './chunk-GYXUYHKO.js';
29
- import { AUTH_TOKEN_COOKIE_NAME, extractTokenFromCookies, resolveRequestScope, resolveAddressedStore, STORE_BASE_HEADER, resolveRequestVersionId, legacyLocaleRedirectHref } from './chunk-FHU2MXZA.js';
30
- import { runWithTwilightContext, getTwilightContext } from './chunk-7VNVCHID.js';
31
- export { getTwilightContext, runWithTwilightContext, updateTwilightContext } from './chunk-7VNVCHID.js';
27
+ import './chunk-3E3ABCPC.js';
28
+ import './chunk-NHA4SBKG.js';
29
+ import { AUTH_TOKEN_COOKIE_NAME, extractTokenFromCookies, resolveRequestScope, resolveAddressedStore, STORE_BASE_HEADER, resolveRequestVersionId, legacyLocaleRedirectHref } from './chunk-FXVII733.js';
30
+ import { runWithTwilightContext, getTwilightContext } from './chunk-6K34BCUP.js';
31
+ export { getTwilightContext, runWithTwilightContext, updateTwilightContext } from './chunk-6K34BCUP.js';
32
32
  import './chunk-T72DAX7R.js';
33
33
  import './chunk-DF6FBKDN.js';
34
34
  import './chunk-DGUM43GV.js';
@@ -78,8 +78,9 @@ export interface TwilightContext {
78
78
  * The host this request arrived on, captured server-side.
79
79
  *
80
80
  * A theme worker is deployed with no vars and no bindings, so the request is
81
- * the only thing that knows which storefront it is serving. On the client this
82
- * is `window.location.host`; on the server nothing else has it.
81
+ * the only thing that knows which storefront it is serving. Null in the browser,
82
+ * where nothing sets it: read {@link currentHost}, which falls back to
83
+ * `window.location.host`, rather than this.
83
84
  */
84
85
  requestHost: string | null;
85
86
  /** The native app's `s-app-*` headers when the request came from its webview; see {@link readNativeAppHeaders}. */
@@ -1 +1 @@
1
- {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/twilight/context.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/twilight/context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AACpC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAK3D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAMpD,MAAM,WAAW,gBAAgB,CAAC,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IACjE,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,OAAO,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE;QAAE,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IACnE,WAAW,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;CAC/C;AAED,MAAM,WAAW,eAAe;IAC9B,WAAW,EAAE,WAAW,CAAC;IACzB,QAAQ,EAAE,YAAY,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB;;;;OAIG;IACH,KAAK,EAAE,WAAW,GAAG,IAAI,CAAC;IAC1B,8DAA8D;IAC9D,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB;;;;;;OAMG;IACH,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB;;;;;;;OAOG;IACH,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB;;;;OAIG;IACH,sBAAsB,EAAE,OAAO,CAAC;IAChC;;;;;;;;OAQG;IACH,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB;;;;;;;OAOG;IACH,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,mHAAmH;IACnH,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAAC;IAChD,IAAI,EAAE,IAAI,CAAC;IACX,GAAG,EAAE,KAAK,GAAG,KAAK,CAAC;IACnB,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB;qGACiG;IACjG,YAAY,CAAC,EAAE,UAAU,EAAE,CAAC;IAC5B;oGACgG;IAChG,YAAY,CAAC,EAAE,WAAW,CAAC;IAC3B;;;OAGG;IACH,WAAW,EAAE,OAAO,CAAC;IACrB;;;OAGG;IACH,aAAa,EAAE,OAAO,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAClC;AA+KD,wBAAgB,sBAAsB,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,eAAe,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,CAS3F;AAMD,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI,CAKlE;AAED,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,IAAI,CAM7E;AAED;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,IAAI,OAAO,CAM7C;AAED,0DAA0D;AAC1D,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,sBAAsB,EAAE,OAAO,CAAC;IAChC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5B;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,eAAe,IAAI,iBAAiB,CAmBnD;AAED,wBAAgB,kBAAkB,IAAI,eAAe,CAiFpD;AAED,wCAAwC;AACxC,wBAAgB,eAAe,IAAI,IAAI,CAEtC"}
@@ -1,6 +1,6 @@
1
- export { buildBaseHead, buildHreflangAlternates, localeToOgLocale, storePageUrl } from '../chunk-OM2GRPDH.js';
2
- import '../chunk-FHU2MXZA.js';
3
- import '../chunk-7VNVCHID.js';
1
+ export { buildBaseHead, buildHreflangAlternates, localeToOgLocale, storePageUrl } from '../chunk-RYGEIQWO.js';
2
+ import '../chunk-FXVII733.js';
3
+ import '../chunk-6K34BCUP.js';
4
4
  import '../chunk-T72DAX7R.js';
5
5
  import '../chunk-DGUM43GV.js';
6
6
  //# sourceMappingURL=baseHead.js.map
@@ -75,11 +75,25 @@ export declare function extractVersionIdFromCookies(cookieHeader: string | null)
75
75
  * cannot identify one from its name. That is the preview host, where every theme
76
76
  * under review answers on the same address, and local development.
77
77
  *
78
- * Adding an entry grants that host the ability to render any store on request.
78
+ * Adding an entry grants that host the ability to render any store on request,
79
+ * **and** stops that host showing a closed or not-yet-launched store's maintenance
80
+ * page to anyone (see {@link isPreviewHost}): the preview host is where the theme
81
+ * editor frames a theme, and it has to render whatever it is customising. A host
82
+ * that serves many stores is not enough reason to add one here. If a merchant's
83
+ * customers can reach it, a closed store would stop showing them the page.
79
84
  * Add nothing that a merchant's traffic reaches.
80
85
  */
81
86
  export declare const STORE_ID_HOSTS: readonly string[];
82
87
  export declare function isLoopback(hostname: string): boolean;
88
+ /**
89
+ * Whether this host is the hosted preview host: the one address the dashboard's
90
+ * theme editor and every theme under review answer on. Loopback is not it.
91
+ *
92
+ * Reads {@link STORE_ID_HOSTS} rather than keeping a second list, for the reason
93
+ * {@link allowsRequestStoreId} gives: two lists of "the preview host" is how they
94
+ * come to disagree. Exact hostnames only, so no suffix can admit another host.
95
+ */
96
+ export declare function isPreviewHost(host: string | null | undefined): boolean;
83
97
  /**
84
98
  * Whether this host is allowed to let the request choose a store.
85
99
  *
@@ -1 +1 @@
1
- {"version":3,"file":"cookies.d.ts","sourceRoot":"","sources":["../../src/utils/cookies.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cookies.d.ts","sourceRoot":"","sources":["../../src/utils/cookies.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,sBAAsB,UAAU,CAAC;AAC9C,eAAO,MAAM,iBAAiB,UAAU,CAAC;AACzC,eAAO,MAAM,oBAAoB,WAAW,CAAC;AAC7C,iHAAiH;AACjH,eAAO,MAAM,oBAAoB,WAAW,CAAC;AAC7C,mFAAmF;AACnF,eAAO,MAAM,cAAc,SAAS,CAAC;AACrC,mFAAmF;AACnF,eAAO,MAAM,uBAAuB,QAAqB,CAAC;AAE1D;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,oBAAoB,cAAc,CAAC;AAEhD,6EAA6E;AAC7E,eAAO,MAAM,cAAc,YAAY,CAAC;AAExC;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,sBAAsB,cAAc,CAAC;AAElD,iFAAiF;AACjF,eAAO,MAAM,gBAAgB,cAAc,CAAC;AAmB5C,oEAAoE;AACpE,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAE1E;AAED,qFAAqF;AACrF,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAE5E;AAED,wFAAwF;AACxF,wBAAgB,yBAAyB,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,GAAG,IAAI,CAEpF;AAED,0FAA0F;AAC1F,wBAAgB,2BAA2B,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,GAAG,IAAI,CAEtF;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,eAAO,MAAM,cAAc,EAAE,SAAS,MAAM,EAA6B,CAAC;AAW1E,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAOpD;AAED;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,CAGtE;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,CAG7E;AAED;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,CAE5E;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,qBAAqB,CACnC,GAAG,EAAE,MAAM,EACX,YAAY,EAAE,MAAM,GAAG,IAAI,EAC3B,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAC9B,MAAM,GAAG,IAAI,CAEf;AAgBD;;;;;;;;;;;GAWG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,KAAK,IAAI,MAAM,CAOpF;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,uBAAuB,CACrC,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAC9B,MAAM,GAAG,IAAI,CAaf;AAED,+EAA+E;AAC/E,MAAM,WAAW,YAAY;IAC3B,6DAA6D;IAC7D,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,8CAA8C;IAC9C,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CACjC,GAAG,EAAE,MAAM,EACX,YAAY,EAAE,MAAM,GAAG,IAAI,EAC3B,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAC9B,YAAY,CAMd;AAED;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,iBAAiB,uBAAuB,CAAC;AAEtD,2EAA2E;AAC3E,MAAM,WAAW,cAAe,SAAQ,YAAY;IAClD;;;;OAIG;IACH,sBAAsB,EAAE,OAAO,CAAC;CACjC;AAED;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CACnC,GAAG,EAAE,MAAM,EACX,YAAY,EAAE,MAAM,GAAG,IAAI,EAC3B,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAC/B,mBAAmB,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAC7C,cAAc,CAKhB;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,uBAAuB,CACrC,GAAG,EAAE,MAAM,EACX,YAAY,EAAE,MAAM,GAAG,IAAI,EAC3B,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAC9B,MAAM,GAAG,IAAI,CAEf;AA2BD;;;;GAIG;AACH;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,IAAI,CAI/E;AAED,wBAAgB,oBAAoB,IAAI,IAAI,CAG3C;AAED,wBAAgB,uBAAuB,CACrC,YAAY,EAAE,MAAM,GAAG,IAAI,EAC3B,UAAU,EAAE,MAAM,GACjB,MAAM,GAAG,IAAI,CA2Bf;AAED;;;;;;GAMG;AACH,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAeD;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,GAAG,WAAW,GAAG,IAAI,CAQvF;AAED,oGAAoG;AACpG,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAE9E;AAED,kGAAkG;AAClG,wBAAgB,0BAA0B,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,GAAG,IAAI,CAErF;AAED,yDAAyD;AACzD,wBAAgB,yBAAyB,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,GAAG,IAAI,CAEpF;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,YAAY,IAAI,WAAW,GAAG,IAAI,GAAG,SAAS,CAO7D;AAUD;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,WAAW,GAAG,IAAI,CAuBnE;AAED;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,IAAI,GAAG,WAAW,GAAG,IAAI,CAMhG;AAED,oFAAoF;AACpF,wBAAgB,cAAc,IAAI,MAAM,GAAG,IAAI,GAAG,SAAS,CAG1D;AAED,iFAAiF;AACjF,eAAO,MAAM,oBAAoB,QAAqB,CAAC;AAEvD,eAAO,MAAM,SAAS,GAAI,GAAG,WAAW,GAAG,IAAI,EAAE,GAAG,WAAW,GAAG,IAAI,KAAG,OAChC,CAAC;AAE1C;;;;;;;;;;;;GAYG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI,GAAG,OAAO,CAYnE;AAED;;;;GAIG;AACH,wBAAgB,eAAe,IAAI,OAAO,CAGzC"}
@@ -1,18 +1,18 @@
1
1
  export { stripUnsafeHtml } from '../chunk-RUHSV4Z6.js';
2
2
  export { formatSallaPlural } from '../chunk-BT6HEEAP.js';
3
- export { dispatchRouteChanged } from '../chunk-YQELP5ND.js';
3
+ export { dispatchRouteChanged } from '../chunk-PXH5TZGZ.js';
4
4
  export { sortOptions } from '../chunk-3LZJXKVO.js';
5
5
  export { color } from '../chunk-VVZNW5CB.js';
6
- export { applyAppScopeMocks, registerThemeHookSlots } from '../chunk-5FJFN3IW.js';
6
+ export { applyAppScopeMocks, registerThemeHookSlots } from '../chunk-WQPG22DY.js';
7
7
  export { mergeHead, resolveHead, setHeadAdapter } from '../chunk-GD26FI4J.js';
8
- export { buildBaseHead, buildHreflangAlternates, localeToOgLocale } from '../chunk-OM2GRPDH.js';
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-F5NB3H5P.js';
11
+ import '../chunk-5RWIVHYS.js';
12
12
  import '../chunk-Z5M4YYWT.js';
13
- export { getSallaSDK, getStoreIdentifier, onSallaEvent, whenSallaLoaded, whenSallaReady } from '../chunk-GYXUYHKO.js';
14
- export { AUTH_TOKEN_COOKIE_NAME, clearAuthTokenCookie, extractTokenFromCookies } from '../chunk-FHU2MXZA.js';
15
- import '../chunk-7VNVCHID.js';
13
+ export { getSallaSDK, getStoreIdentifier, onSallaEvent, whenSallaLoaded, whenSallaReady } from '../chunk-NHA4SBKG.js';
14
+ export { AUTH_TOKEN_COOKIE_NAME, clearAuthTokenCookie, extractTokenFromCookies } from '../chunk-FXVII733.js';
15
+ import '../chunk-6K34BCUP.js';
16
16
  import '../chunk-T72DAX7R.js';
17
17
  import '../chunk-DGUM43GV.js';
18
18
 
@@ -25,10 +25,40 @@ export declare function ownerCookieMatches(cookieHeader: string | null, settings
25
25
  * Whether this visitor gets the maintenance page instead of the store.
26
26
  *
27
27
  * True only when the settings say the store is closed and nothing lets the visitor
28
- * through: neither an owner view (the link or the cookie) nor the theme editor's
29
- * preview, which the backend also always lets in.
28
+ * through: neither an owner view (the link or the cookie), nor a session the
29
+ * backend marks `theme.mode === 'preview'`, nor the hosted preview host.
30
+ *
31
+ * The host is what lets the dashboard's theme editor through. The editor frames
32
+ * this storefront on the preview host, and that request has none of the other
33
+ * three: its URL carries no owner link, the owner cookie is `SameSite=Lax` and a
34
+ * cross-site frame neither stores nor sends it, and `theme.mode` is only ever
35
+ * `preview` from a PHP session, which the worker's sessionless API call has not got.
36
+ * The Twig storefront exempts its preview hosts the same way (`CheckStoreStatus`
37
+ * skips `hasCustomDomain()`), and for the same reasons: a merchant customising a
38
+ * store that is closed, or not launched yet, still has to see what they are
39
+ * customising. A merchant's own domain is never a preview host, so a customer of a
40
+ * closed store still gets the page.
41
+ *
42
+ * Loopback is not exempt: on a dev server a closed store shows the maintenance page
43
+ * on purpose, so a theme author can see and test it (see `MaintenanceDevBar`).
44
+ *
45
+ * @param host - the host the request arrived on; see {@link isPreviewHost}. Required
46
+ * rather than optional: a caller that forgot it would quietly bring the editor bug back.
47
+ */
48
+ export declare function showsMaintenancePage(settings: StoreContext | null | undefined, viewAsOwner: boolean, host: string | null | undefined): boolean;
49
+ /**
50
+ * The settings the Salla SDK is initialised with, told the store is open when the
51
+ * page is on the preview host.
52
+ *
53
+ * {@link showsMaintenancePage} lets the preview host render a closed store, but the
54
+ * settings still say `maintenance: true`, and the SDK reads that to draw its
55
+ * merchant maintenance bar. In the theme editor that bar would sit over the very
56
+ * page being customised, offering a "turn off maintenance" button to everyone who
57
+ * looks at the preview, a reviewer included. Twig's editor shows no bar either:
58
+ * `CheckStoreStatus` returns before it adds one. The bar is all the SDK uses the flag
59
+ * for, and the maintenance page is decided elsewhere, so nothing else changes.
30
60
  */
31
- export declare function showsMaintenancePage(settings: StoreContext | null | undefined, viewAsOwner: boolean): boolean;
61
+ export declare function withoutMaintenanceOnPreviewHost<T extends Pick<StoreContext, 'maintenance'>>(settings: T, host: string | null | undefined): T;
32
62
  /**
33
63
  * The response header a maintenance 503 carries saying which settings decided it.
34
64
  *
@@ -65,8 +95,10 @@ export declare function isNotLaunchedNotice(details: MaintenanceDetails | null |
65
95
  * fields only inside Twig's owner session, which the engine's settings request has
66
96
  * none of, so the SDK, handed the settings as they are, draws an empty button. The
67
97
  * SDK renders only in the store view, so `maintenance: true` there means the owner
68
- * (or the preview, where the SDK mounts no bar): the three fields get what Twig's
69
- * owner branch gives them. The merchant's own title and message stay as they are.
98
+ * (or a session the backend marks `theme.mode === 'preview'`, where the SDK mounts
99
+ * no bar; the preview host never gets here, see {@link withoutMaintenanceOnPreviewHost}):
100
+ * the three fields get what Twig's owner branch gives them. The merchant's own title
101
+ * and message stay as they are.
70
102
  */
71
103
  export declare function withOwnerMaintenanceButton<T extends Pick<StoreContext, 'maintenance' | 'maintenance_details'>>(settings: T, buttonTitle: string): T;
72
104
  //# sourceMappingURL=maintenance.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"maintenance.d.ts","sourceRoot":"","sources":["../../src/utils/maintenance.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAGnD;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,yBAAyB,kBAAkB,CAAC;AAUzD;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,YAAY,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,CAWjG;AAED,gEAAgE;AAChE,wBAAgB,kBAAkB,CAChC,YAAY,EAAE,MAAM,GAAG,IAAI,EAC3B,QAAQ,EAAE,YAAY,GAAG,IAAI,GAAG,SAAS,GACxC,OAAO,CAGT;AAED;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,YAAY,GAAG,IAAI,GAAG,SAAS,EACzC,WAAW,EAAE,OAAO,GACnB,OAAO,CAET;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,2BAA2B,2BAA2B,CAAC;AAEpE;;;GAGG;AACH,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,YAAY,GAAG,IAAI,GAAG,SAAS,GACxC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAQxB;AAaD,sFAAsF;AACtF,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,CAIlF;AAOD,iGAAiG;AACjG,eAAO,MAAM,wBAAwB,kEAAgE,CAAC;AAEtG;;;;;;;;;;GAUG;AAEH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,kBAAkB,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,CAE3F;AAED;;;;;;;GAOG;AACH,wBAAgB,0BAA0B,CACxC,CAAC,SAAS,IAAI,CAAC,YAAY,EAAE,aAAa,GAAG,qBAAqB,CAAC,EACnE,QAAQ,EAAE,CAAC,EAAE,WAAW,EAAE,MAAM,GAAG,CAAC,CAYrC"}
1
+ {"version":3,"file":"maintenance.d.ts","sourceRoot":"","sources":["../../src/utils/maintenance.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAGnD;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,yBAAyB,kBAAkB,CAAC;AAUzD;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,YAAY,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,CAWjG;AAED,gEAAgE;AAChE,wBAAgB,kBAAkB,CAChC,YAAY,EAAE,MAAM,GAAG,IAAI,EAC3B,QAAQ,EAAE,YAAY,GAAG,IAAI,GAAG,SAAS,GACxC,OAAO,CAGT;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,YAAY,GAAG,IAAI,GAAG,SAAS,EACzC,WAAW,EAAE,OAAO,EACpB,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAC9B,OAAO,CAOT;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,+BAA+B,CAAC,CAAC,SAAS,IAAI,CAAC,YAAY,EAAE,aAAa,CAAC,EACzF,QAAQ,EAAE,CAAC,EACX,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAC9B,CAAC,CAGH;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,2BAA2B,2BAA2B,CAAC;AAEpE;;;GAGG;AACH,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,YAAY,GAAG,IAAI,GAAG,SAAS,GACxC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAQxB;AAaD,sFAAsF;AACtF,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,CAIlF;AAOD,iGAAiG;AACjG,eAAO,MAAM,wBAAwB,kEAAgE,CAAC;AAEtG;;;;;;;;;;GAUG;AAEH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,kBAAkB,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,CAE3F;AAED;;;;;;;;;GASG;AACH,wBAAgB,0BAA0B,CACxC,CAAC,SAAS,IAAI,CAAC,YAAY,EAAE,aAAa,GAAG,qBAAqB,CAAC,EACnE,QAAQ,EAAE,CAAC,EAAE,WAAW,EAAE,MAAM,GAAG,CAAC,CAYrC"}
@@ -57,6 +57,16 @@ export declare function resolveStoreBase(): string | null;
57
57
  * request on the server, what SSR published in the browser.
58
58
  */
59
59
  export declare function resolveStoreBaseFollowsLocale(): boolean;
60
+ /**
61
+ * The host this page was asked for: the request's on the server, the browser's own in
62
+ * the browser.
63
+ *
64
+ * The middleware captures `requestHost` from the request and nothing sets it in the
65
+ * browser, so the browser reads `window.location.host`. Both sides then name the same
66
+ * host for the same page, which is what keeps a decision made from it (the store base,
67
+ * the maintenance page) from flipping between the server render and hydration.
68
+ */
69
+ export declare function currentHost(): string | null;
60
70
  /**
61
71
  * The address this page should be loaded from instead, when the store is the root
62
72
  * of every URL on this host and this request did not use it; null otherwise.
@@ -1 +1 @@
1
- {"version":3,"file":"store-identity.d.ts","sourceRoot":"","sources":["../../src/utils/store-identity.ts"],"names":[],"mappings":"AAwBA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,wBAAgB,sBAAsB,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAoBhE;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,GAAG,IAAI,CAUhD;AAED;;;;;;;GAOG;AACH,wBAAgB,6BAA6B,IAAI,OAAO,CAOvD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,wBAAwB,CACtC,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EACnC,IAAI,EAAE,MAAM,GACX,MAAM,GAAG,IAAI,CAIf"}
1
+ {"version":3,"file":"store-identity.d.ts","sourceRoot":"","sources":["../../src/utils/store-identity.ts"],"names":[],"mappings":"AAwBA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,wBAAgB,sBAAsB,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAoBhE;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,GAAG,IAAI,CAUhD;AAED;;;;;;;GAOG;AACH,wBAAgB,6BAA6B,IAAI,OAAO,CAOvD;AAED;;;;;;;;GAQG;AACH,wBAAgB,WAAW,IAAI,MAAM,GAAG,IAAI,CAI3C;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,wBAAwB,CACtC,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EACnC,IAAI,EAAE,MAAM,GACX,MAAM,GAAG,IAAI,CAOf"}
@@ -1,14 +1,14 @@
1
1
  import { validateTwilightManifest } from '../chunk-X5NK4TZH.js';
2
2
  export { REACT_THEME_TYPE, describeThemeTypeIssue, getThemeType, isReactThemeManifest, validateTwilightManifest } from '../chunk-X5NK4TZH.js';
3
- import { tanstackHeadAdapter } from '../chunk-EHTLXK5F.js';
3
+ import { tanstackHeadAdapter } from '../chunk-5UWRPWK2.js';
4
4
  import { nextjsHeadAdapter } from '../chunk-HOSHJBPS.js';
5
- import '../chunk-JYV25VNZ.js';
5
+ import '../chunk-X55R4VVK.js';
6
6
  import { EMPTY_DEV_SCHEMA, DEV_PREVIEW_GLOBAL, DEV_PREVIEW_ENDPOINT, normalizePreviewState, DEV_PREVIEW_EVENT, DEV_EDITOR_PATH, DEV_PREVIEW_IMAGE_ENDPOINT, DEV_PREVIEW_IMAGE_MAX_BYTES } from '../chunk-OXMUPNMH.js';
7
7
  import { setHeadAdapter } from '../chunk-GD26FI4J.js';
8
- import '../chunk-OM2GRPDH.js';
8
+ import '../chunk-RYGEIQWO.js';
9
9
  import { RouteId } from '../chunk-OUW6WESU.js';
10
- import '../chunk-FHU2MXZA.js';
11
- import '../chunk-7VNVCHID.js';
10
+ import '../chunk-FXVII733.js';
11
+ import '../chunk-6K34BCUP.js';
12
12
  import '../chunk-T72DAX7R.js';
13
13
  import '../chunk-DGUM43GV.js';
14
14
  import { readFile, readdir, writeFile, mkdir } from 'fs/promises';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@salla.sa/twilight-theme-engine",
3
- "version": "1.0.132",
3
+ "version": "1.0.134",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
@@ -31,6 +31,7 @@ import {
31
31
  import { syncSdkLocale, syncSdkThemeVersion } from '../../utils/sdk-helpers';
32
32
  import { SettingsError } from '../../utils/errors';
33
33
  import {
34
+ currentHost,
34
35
  resolveStoreBase,
35
36
  resolveStoreBaseFollowsLocale,
36
37
  resolveStoreBaseRedirect,
@@ -174,13 +175,19 @@ const rememberOwnerView = createIsomorphicFn()
174
175
  * session. Here the link grants a session cookie, and the cookie or the link is the
175
176
  * owner view. A customer gets the maintenance page, and `twilightMiddleware` turns the
176
177
  * render into a 503 (see `withMaintenanceStatus`).
178
+ *
179
+ * The preview host is let through whoever is looking, so the dashboard's theme editor
180
+ * renders a closed or not-yet-launched store; see {@link showsMaintenancePage}. The host
181
+ * is the request's on the server and the browser's own in the browser, so a navigation
182
+ * inside the editor's frame, which carries no owner link, is decided the same way as the
183
+ * first load.
177
184
  */
178
185
  export function resolveMaintenance(href: string, settings: StoreContext): boolean {
179
186
  const fromLink = ownerLinkMatches(href, settings);
180
187
  const storeId = settings.store?.id;
181
188
  if (fromLink && storeId != null) rememberOwnerView(String(storeId));
182
189
  const viewAsOwner = fromLink || ownerCookieMatches(requestCookies(), settings);
183
- return showsMaintenancePage(settings, viewAsOwner);
190
+ return showsMaintenancePage(settings, viewAsOwner, currentHost());
184
191
  }
185
192
 
186
193
  /** On the server, once the settings are in: {@link alignRequestScopeType}, then {@link persistRequestScope}. */
@@ -1,23 +0,0 @@
1
- export { Header } from './chunk-EJIMEI36.js';
2
- import './chunk-GLDGDTVU.js';
3
- import './chunk-OUW6WESU.js';
4
- import './chunk-E7YBFA3H.js';
5
- import './chunk-D5SYOOE2.js';
6
- import './chunk-5XDPAKF5.js';
7
- import './chunk-GCPEMNSU.js';
8
- import './chunk-F5NB3H5P.js';
9
- import './chunk-Z5M4YYWT.js';
10
- import './chunk-TYNZ5B2B.js';
11
- import './chunk-PGXRNW3Y.js';
12
- import './chunk-AXW67SY7.js';
13
- import './chunk-BYMOPN2S.js';
14
- import './chunk-SKLEJJ6M.js';
15
- import './chunk-2TLIULJZ.js';
16
- import './chunk-GYXUYHKO.js';
17
- import './chunk-FHU2MXZA.js';
18
- import './chunk-7VNVCHID.js';
19
- import './chunk-T72DAX7R.js';
20
- import './chunk-DF6FBKDN.js';
21
- import './chunk-DGUM43GV.js';
22
- //# sourceMappingURL=Header-5ENK5VKP.js.map
23
- //# sourceMappingURL=Header-5ENK5VKP.js.map
@@ -1,7 +0,0 @@
1
- export { MaintenancePage } from './chunk-CKH6WBMA.js';
2
- import './chunk-TYNZ5B2B.js';
3
- import './chunk-7VNVCHID.js';
4
- import './chunk-T72DAX7R.js';
5
- import './chunk-DGUM43GV.js';
6
- //# sourceMappingURL=MaintenancePage-A7CNHM7B.js.map
7
- //# sourceMappingURL=MaintenancePage-A7CNHM7B.js.map
@@ -1,58 +0,0 @@
1
- export { StoreClosedNotification } from './chunk-CHMWAYVU.js';
2
- import './chunk-EJV3NYBP.js';
3
- import './chunk-H2QBHOF2.js';
4
- import './chunk-EJIMEI36.js';
5
- import './chunk-BAS4BPSB.js';
6
- import './chunk-PCEKL6S3.js';
7
- import './chunk-JYV25VNZ.js';
8
- import './chunk-ZVZPCDEU.js';
9
- import './chunk-OXMUPNMH.js';
10
- import './chunk-5NN4OICC.js';
11
- import './chunk-VVZNW5CB.js';
12
- import './chunk-5FJFN3IW.js';
13
- import './chunk-GD26FI4J.js';
14
- import './chunk-FID76MUV.js';
15
- import './chunk-OM2GRPDH.js';
16
- import './chunk-GLDGDTVU.js';
17
- import './chunk-OUW6WESU.js';
18
- import './chunk-BK5TBUGG.js';
19
- import './chunk-HI5V5X3S.js';
20
- import './chunk-YZDL2P6T.js';
21
- import './chunk-TTZKDTD5.js';
22
- import './chunk-MVT5AF2A.js';
23
- import './chunk-Z653O7MX.js';
24
- import './chunk-ZCH7W7DZ.js';
25
- import './chunk-L4TQBWR7.js';
26
- import './chunk-JWXJPJBO.js';
27
- import './chunk-CW625T2E.js';
28
- import './chunk-7V36I5GT.js';
29
- import './chunk-6WI7R2BD.js';
30
- import './chunk-JGVEGQHJ.js';
31
- import './chunk-OAMIDZKW.js';
32
- import './chunk-E7YBFA3H.js';
33
- import './chunk-OQIIJRAS.js';
34
- import './chunk-V2ZDTY6H.js';
35
- import './chunk-D5SYOOE2.js';
36
- import './chunk-5XDPAKF5.js';
37
- import './chunk-GCPEMNSU.js';
38
- import './chunk-F5NB3H5P.js';
39
- import './chunk-Z5M4YYWT.js';
40
- import './chunk-TYNZ5B2B.js';
41
- import './chunk-PGXRNW3Y.js';
42
- import './chunk-AXW67SY7.js';
43
- import './chunk-BYMOPN2S.js';
44
- import './chunk-SKLEJJ6M.js';
45
- import './chunk-6BZ5TKEV.js';
46
- import './chunk-FZKRSGLP.js';
47
- import './chunk-7V5HOZW4.js';
48
- import './chunk-YA6ABQB7.js';
49
- import './chunk-V2M5YNZQ.js';
50
- import './chunk-2TLIULJZ.js';
51
- import './chunk-GYXUYHKO.js';
52
- import './chunk-FHU2MXZA.js';
53
- import './chunk-7VNVCHID.js';
54
- import './chunk-T72DAX7R.js';
55
- import './chunk-DF6FBKDN.js';
56
- import './chunk-DGUM43GV.js';
57
- //# sourceMappingURL=StoreClosedNotification-IYVXVJJO.js.map
58
- //# sourceMappingURL=StoreClosedNotification-IYVXVJJO.js.map
@@ -1,14 +0,0 @@
1
- import { lazy } from 'react';
2
-
3
- // src/components/cart/lazy.ts
4
- var LazyCartItem = lazy(() => import('./CartItem-XNCZZQ4X.js').then((m) => ({ default: m.CartItem })));
5
- var LazyCartSummary = lazy(
6
- () => import('./CartSummary-ROELC4AF.js').then((m) => ({ default: m.CartSummary }))
7
- );
8
- var LazySeoCartWidget = lazy(
9
- () => import('./SeoCartWidget-WJCQ76TI.js').then((m) => ({ default: m.SeoCartWidget }))
10
- );
11
-
12
- export { LazyCartItem, LazyCartSummary, LazySeoCartWidget };
13
- //# sourceMappingURL=chunk-DOTKJOVG.js.map
14
- //# sourceMappingURL=chunk-DOTKJOVG.js.map