@salla.sa/twilight-theme-engine 1.0.0-beta.4 → 1.0.0-beta.6

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 (212) hide show
  1. package/dist/{AddToCartForm-HOWNKCKX.js → AddToCartForm-KIIP7WPE.js} +5 -5
  2. package/dist/{AddToCartForm-HOWNKCKX.js.map → AddToCartForm-KIIP7WPE.js.map} +1 -1
  3. package/dist/{BlogAuthorPage-W3BZIJHJ.js → BlogAuthorPage-MFG3IQPU.js} +13 -13
  4. package/dist/{BlogAuthorPage-W3BZIJHJ.js.map → BlogAuthorPage-MFG3IQPU.js.map} +1 -1
  5. package/dist/{BlogCategoryPage-AIAJ5JBR.js → BlogCategoryPage-UVGE3GHP.js} +13 -13
  6. package/dist/{BlogCategoryPage-AIAJ5JBR.js.map → BlogCategoryPage-UVGE3GHP.js.map} +1 -1
  7. package/dist/{BlogPage-4BYF2EQW.js → BlogPage-UHS6PGXG.js} +11 -11
  8. package/dist/{BlogPage-4BYF2EQW.js.map → BlogPage-UHS6PGXG.js.map} +1 -1
  9. package/dist/{BlogSinglePage-AMNAUMWW.js → BlogSinglePage-EKHG3EEB.js} +11 -11
  10. package/dist/{BlogSinglePage-AMNAUMWW.js.map → BlogSinglePage-EKHG3EEB.js.map} +1 -1
  11. package/dist/{BlogTagPage-ELG2H5N5.js → BlogTagPage-YS7XJXCP.js} +13 -13
  12. package/dist/{BlogTagPage-ELG2H5N5.js.map → BlogTagPage-YS7XJXCP.js.map} +1 -1
  13. package/dist/{BrandsPage-ZSO3PYAV.js → BrandsPage-IR6BCOOA.js} +11 -11
  14. package/dist/{BrandsPage-ZSO3PYAV.js.map → BrandsPage-IR6BCOOA.js.map} +1 -1
  15. package/dist/{Breadcrumb-N32QFMVK.js → Breadcrumb-ZC2CFR3R.js} +11 -11
  16. package/dist/{Breadcrumb-N32QFMVK.js.map → Breadcrumb-ZC2CFR3R.js.map} +1 -1
  17. package/dist/{CartItem-SGTGOTEC.js → CartItem-3F7WSPBH.js} +11 -11
  18. package/dist/{CartItem-SGTGOTEC.js.map → CartItem-3F7WSPBH.js.map} +1 -1
  19. package/dist/{CartSummary-OKDGVSX2.js → CartSummary-CWNETS3X.js} +11 -11
  20. package/dist/{CartSummary-OKDGVSX2.js.map → CartSummary-CWNETS3X.js.map} +1 -1
  21. package/dist/Copyright-NDRRFPDN.js +9 -0
  22. package/dist/{Copyright-F3HLYXFJ.js.map → Copyright-NDRRFPDN.js.map} +1 -1
  23. package/dist/{CustomerLayout-LB4E2LHT.js → CustomerLayout-D57CJOKS.js} +11 -11
  24. package/dist/{CustomerLayout-LB4E2LHT.js.map → CustomerLayout-D57CJOKS.js.map} +1 -1
  25. package/dist/{Footer-UVCSKTW3.js → Footer-D7ZEGC6L.js} +11 -11
  26. package/dist/{Footer-UVCSKTW3.js.map → Footer-D7ZEGC6L.js.map} +1 -1
  27. package/dist/GoogleTag-HBGKI3VH.js +4 -0
  28. package/dist/GoogleTag-HBGKI3VH.js.map +1 -0
  29. package/dist/Header-HF73ZIFG.js +15 -0
  30. package/dist/{Header-BF6SPZJC.js.map → Header-HF73ZIFG.js.map} +1 -1
  31. package/dist/{LoyaltyPage-X4PHPUFC.js → LoyaltyPage-P7IAFKNS.js} +12 -12
  32. package/dist/{LoyaltyPage-X4PHPUFC.js.map → LoyaltyPage-P7IAFKNS.js.map} +1 -1
  33. package/dist/{MainMenu-R3EWTNNC.js → MainMenu-B7AP2G53.js} +11 -11
  34. package/dist/{MainMenu-R3EWTNNC.js.map → MainMenu-B7AP2G53.js.map} +1 -1
  35. package/dist/{MasterLayout-5JLM7IMW.js → MasterLayout-2A2JGJOW.js} +11 -11
  36. package/dist/{MasterLayout-5JLM7IMW.js.map → MasterLayout-2A2JGJOW.js.map} +1 -1
  37. package/dist/{MobileMenu-QXESUQXC.js → MobileMenu-NWBLBWXG.js} +11 -11
  38. package/dist/{MobileMenu-QXESUQXC.js.map → MobileMenu-NWBLBWXG.js.map} +1 -1
  39. package/dist/{NoContent-PBGESHBJ.js → NoContent-63TMCPGY.js} +4 -4
  40. package/dist/{NoContent-PBGESHBJ.js.map → NoContent-63TMCPGY.js.map} +1 -1
  41. package/dist/{NotificationsPage-V6UIPDJD.js → NotificationsPage-RYSVKPHN.js} +11 -11
  42. package/dist/{NotificationsPage-V6UIPDJD.js.map → NotificationsPage-RYSVKPHN.js.map} +1 -1
  43. package/dist/{OrderSinglePage-ZMEKPLE3.js → OrderSinglePage-Y4CWIQZG.js} +12 -12
  44. package/dist/{OrderSinglePage-ZMEKPLE3.js.map → OrderSinglePage-Y4CWIQZG.js.map} +1 -1
  45. package/dist/{OrdersPage-EAATVPYK.js → OrdersPage-ERZOMNEJ.js} +12 -12
  46. package/dist/{OrdersPage-EAATVPYK.js.map → OrdersPage-ERZOMNEJ.js.map} +1 -1
  47. package/dist/{PageSingle-Y6ARZ5LS.js → PageSingle-2FJRQTTK.js} +5 -5
  48. package/dist/{PageSingle-Y6ARZ5LS.js.map → PageSingle-2FJRQTTK.js.map} +1 -1
  49. package/dist/{ProductDetails-KTY4ZSFM.js → ProductDetails-GJXX7FBT.js} +6 -6
  50. package/dist/{ProductDetails-KTY4ZSFM.js.map → ProductDetails-GJXX7FBT.js.map} +1 -1
  51. package/dist/{ProfilePage-6SK34MDJ.js → ProfilePage-7XAPVC5W.js} +11 -11
  52. package/dist/{ProfilePage-6SK34MDJ.js.map → ProfilePage-7XAPVC5W.js.map} +1 -1
  53. package/dist/{SeoCartWidget-XF4GEJK7.js → SeoCartWidget-ZSMB4PZR.js} +11 -11
  54. package/dist/{SeoCartWidget-XF4GEJK7.js.map → SeoCartWidget-ZSMB4PZR.js.map} +1 -1
  55. package/dist/{SettingsPage-DPYARBPO.js → SettingsPage-K4KPFS23.js} +11 -11
  56. package/dist/{SettingsPage-DPYARBPO.js.map → SettingsPage-K4KPFS23.js.map} +1 -1
  57. package/dist/SiftSnippet-5FCU6TR6.js +4 -0
  58. package/dist/SiftSnippet-5FCU6TR6.js.map +1 -0
  59. package/dist/StoreClosedNotification-FM7OGUVZ.js +40 -0
  60. package/dist/StoreClosedNotification-FM7OGUVZ.js.map +1 -0
  61. package/dist/{TestimonialsPage-4OFS5Z4V.js → TestimonialsPage-K5XGI4UL.js} +5 -5
  62. package/dist/{TestimonialsPage-4OFS5Z4V.js.map → TestimonialsPage-K5XGI4UL.js.map} +1 -1
  63. package/dist/{ThankYouPage-C7PA3RJP.js → ThankYouPage-2LFEJXD5.js} +11 -11
  64. package/dist/{ThankYouPage-C7PA3RJP.js.map → ThankYouPage-2LFEJXD5.js.map} +1 -1
  65. package/dist/TwilightBundles-G6GHWBID.js +4 -0
  66. package/dist/TwilightBundles-G6GHWBID.js.map +1 -0
  67. package/dist/{WalletPage-66XGZKO7.js → WalletPage-5T432FV5.js} +11 -11
  68. package/dist/{WalletPage-66XGZKO7.js.map → WalletPage-5T432FV5.js.map} +1 -1
  69. package/dist/{WishlistPage-7ZZYHBSZ.js → WishlistPage-3KRCEEJ2.js} +12 -12
  70. package/dist/{WishlistPage-7ZZYHBSZ.js.map → WishlistPage-3KRCEEJ2.js.map} +1 -1
  71. package/dist/api/brands.js +10 -10
  72. package/dist/api/cart.js +10 -10
  73. package/dist/api/category.js +10 -10
  74. package/dist/api/loyalty.js +10 -10
  75. package/dist/api/notification.js +8 -0
  76. package/dist/api/notification.js.map +1 -0
  77. package/dist/api/order.js +10 -10
  78. package/dist/api/page.js +10 -10
  79. package/dist/api/product.js +10 -10
  80. package/dist/api/wishlist.js +8 -0
  81. package/dist/api/wishlist.js.map +1 -0
  82. package/dist/{StoreClosedNotification-KSB2GPEZ.js → chunk-4YQJ27IO.js} +4 -37
  83. package/dist/chunk-4YQJ27IO.js.map +1 -0
  84. package/dist/chunk-6D7SF3YR.js +28 -0
  85. package/dist/chunk-6D7SF3YR.js.map +1 -0
  86. package/dist/{chunk-RH32IGQD.js → chunk-77PLWFVT.js} +6 -6
  87. package/dist/{chunk-RH32IGQD.js.map → chunk-77PLWFVT.js.map} +1 -1
  88. package/dist/{chunk-N5RSKJP4.js → chunk-7KY4RVH4.js} +3 -3
  89. package/dist/{chunk-N5RSKJP4.js.map → chunk-7KY4RVH4.js.map} +1 -1
  90. package/dist/{chunk-SYHTMNYF.js → chunk-7ZAP64PR.js} +3 -3
  91. package/dist/{chunk-SYHTMNYF.js.map → chunk-7ZAP64PR.js.map} +1 -1
  92. package/dist/{SiftSnippet-X74S5KDO.js → chunk-AQANJRBD.js} +3 -3
  93. package/dist/chunk-AQANJRBD.js.map +1 -0
  94. package/dist/{chunk-TZ4YD5CU.js → chunk-AXW67SY7.js} +3 -3
  95. package/dist/{chunk-TZ4YD5CU.js.map → chunk-AXW67SY7.js.map} +1 -1
  96. package/dist/chunk-BGF4LMSE.js +14 -0
  97. package/dist/{chunk-TRUQDEMI.js.map → chunk-BGF4LMSE.js.map} +1 -1
  98. package/dist/{chunk-XUI3TRXF.js → chunk-BYMOPN2S.js} +8 -3
  99. package/dist/chunk-BYMOPN2S.js.map +1 -0
  100. package/dist/{GoogleTag-4LHWC365.js → chunk-DNCQIT6S.js} +3 -3
  101. package/dist/chunk-DNCQIT6S.js.map +1 -0
  102. package/dist/{chunk-O2UOV5RK.js → chunk-EHKTHLXK.js} +2 -2
  103. package/dist/{chunk-O2UOV5RK.js.map → chunk-EHKTHLXK.js.map} +1 -1
  104. package/dist/{chunk-4EQEYRZ7.js → chunk-ERQIOVSF.js} +5 -5
  105. package/dist/{chunk-4EQEYRZ7.js.map → chunk-ERQIOVSF.js.map} +1 -1
  106. package/dist/{chunk-562ZMVI3.js → chunk-EX5U2RKM.js} +26 -7
  107. package/dist/chunk-EX5U2RKM.js.map +1 -0
  108. package/dist/{chunk-DFMO5KBU.js → chunk-F5B7KCTV.js} +3 -3
  109. package/dist/{chunk-DFMO5KBU.js.map → chunk-F5B7KCTV.js.map} +1 -1
  110. package/dist/{chunk-6YX4RS55.js → chunk-F7MTREKM.js} +3 -3
  111. package/dist/{chunk-6YX4RS55.js.map → chunk-F7MTREKM.js.map} +1 -1
  112. package/dist/{chunk-GLM3RPCP.js → chunk-FUUWI2B6.js} +17 -14
  113. package/dist/chunk-FUUWI2B6.js.map +1 -0
  114. package/dist/{chunk-NSX6XPDU.js → chunk-FWZZL6LO.js} +6 -6
  115. package/dist/{chunk-NSX6XPDU.js.map → chunk-FWZZL6LO.js.map} +1 -1
  116. package/dist/{chunk-LBUMC5PB.js → chunk-GOYYO4NI.js} +2 -2
  117. package/dist/{chunk-LBUMC5PB.js.map → chunk-GOYYO4NI.js.map} +1 -1
  118. package/dist/{chunk-GO34DE35.js → chunk-H6J7FTB6.js} +4 -4
  119. package/dist/{chunk-GO34DE35.js.map → chunk-H6J7FTB6.js.map} +1 -1
  120. package/dist/{chunk-GN34LCTG.js → chunk-JWXJPJBO.js} +25 -5
  121. package/dist/chunk-JWXJPJBO.js.map +1 -0
  122. package/dist/{chunk-6B6VCCMC.js → chunk-KIOJB7HI.js} +3 -3
  123. package/dist/{chunk-6B6VCCMC.js.map → chunk-KIOJB7HI.js.map} +1 -1
  124. package/dist/{chunk-U7HAK5U7.js → chunk-KN7CD7ZL.js} +6 -6
  125. package/dist/{chunk-U7HAK5U7.js.map → chunk-KN7CD7ZL.js.map} +1 -1
  126. package/dist/{chunk-OZTGUF7K.js → chunk-KRX225QA.js} +3 -3
  127. package/dist/{chunk-OZTGUF7K.js.map → chunk-KRX225QA.js.map} +1 -1
  128. package/dist/{chunk-Q3VACSSR.js → chunk-KXI7DU7Y.js} +3 -3
  129. package/dist/{chunk-Q3VACSSR.js.map → chunk-KXI7DU7Y.js.map} +1 -1
  130. package/dist/{chunk-2KF5JJU6.js → chunk-OZEQVDBM.js} +4 -4
  131. package/dist/{chunk-2KF5JJU6.js.map → chunk-OZEQVDBM.js.map} +1 -1
  132. package/dist/{chunk-YCYTBRYB.js → chunk-PDLXJYO3.js} +3 -3
  133. package/dist/{chunk-YCYTBRYB.js.map → chunk-PDLXJYO3.js.map} +1 -1
  134. package/dist/{TwilightBundles-5F2H75VV.js → chunk-RBEYMAKM.js} +3 -3
  135. package/dist/chunk-RBEYMAKM.js.map +1 -0
  136. package/dist/{chunk-EQ5ZGAVR.js → chunk-SFR5V2QH.js} +4 -4
  137. package/dist/{chunk-EQ5ZGAVR.js.map → chunk-SFR5V2QH.js.map} +1 -1
  138. package/dist/{chunk-5Q6PFLDN.js → chunk-TFZ2RT6P.js} +3 -3
  139. package/dist/{chunk-5Q6PFLDN.js.map → chunk-TFZ2RT6P.js.map} +1 -1
  140. package/dist/{chunk-QTDGM2SO.js → chunk-TLB7XC4D.js} +6 -6
  141. package/dist/{chunk-QTDGM2SO.js.map → chunk-TLB7XC4D.js.map} +1 -1
  142. package/dist/{chunk-SBIXBX6J.js → chunk-XUUID4XZ.js} +3 -3
  143. package/dist/{chunk-SBIXBX6J.js.map → chunk-XUUID4XZ.js.map} +1 -1
  144. package/dist/{chunk-A5ZRUAMT.js → chunk-YOAEGGXM.js} +3 -3
  145. package/dist/{chunk-A5ZRUAMT.js.map → chunk-YOAEGGXM.js.map} +1 -1
  146. package/dist/components/cart/index.js +1 -1
  147. package/dist/components/common/index.js +3 -3
  148. package/dist/components/drawer/index.js +9 -9
  149. package/dist/components/home/index.js +12 -12
  150. package/dist/components/layout/index.js +5 -5
  151. package/dist/components/product/index.js +10 -10
  152. package/dist/components/store/index.js +49 -0
  153. package/dist/components/store/index.js.map +1 -0
  154. package/dist/components/tracking/index.js +16 -0
  155. package/dist/components/tracking/index.js.map +1 -0
  156. package/dist/contexts/index.js +30 -0
  157. package/dist/contexts/index.js.map +1 -0
  158. package/dist/{document-class-PLK3HUM6.js → document-class-NEP4TMDL.js} +5 -5
  159. package/dist/{document-class-PLK3HUM6.js.map → document-class-NEP4TMDL.js.map} +1 -1
  160. package/dist/hooks/index.js +9 -9
  161. package/dist/hooks/useDocumentClass.js +1 -1
  162. package/dist/hooks/useGtm.js +39 -0
  163. package/dist/hooks/useGtm.js.map +1 -0
  164. package/dist/hooks/useMoney.js +9 -9
  165. package/dist/hooks/useStore.js +9 -9
  166. package/dist/index.js +9 -9
  167. package/dist/{navigation-N4H65RUN.js → navigation-BXQW7Z4X.js} +4 -4
  168. package/dist/{navigation-N4H65RUN.js.map → navigation-BXQW7Z4X.js.map} +1 -1
  169. package/dist/{navigation-YCYHW4MK.js → navigation-MAZHULIR.js} +5 -5
  170. package/dist/{navigation-YCYHW4MK.js.map → navigation-MAZHULIR.js.map} +1 -1
  171. package/dist/{not-found-BJ3VK5VJ.js → not-found-VAZJJIEX.js} +11 -11
  172. package/dist/{not-found-BJ3VK5VJ.js.map → not-found-VAZJJIEX.js.map} +1 -1
  173. package/dist/providers/index.js +39 -0
  174. package/dist/providers/index.js.map +1 -0
  175. package/dist/routes/account/orders.js +11 -11
  176. package/dist/routes/account.js +19 -40
  177. package/dist/routes/account.js.map +1 -1
  178. package/dist/routes/blog.js +15 -15
  179. package/dist/routes/brands.js +11 -11
  180. package/dist/routes/cart.js +16 -16
  181. package/dist/routes/home.js +13 -13
  182. package/dist/routes/index.js +10 -10
  183. package/dist/routes/loyalty.js +11 -11
  184. package/dist/routes/page.js +11 -11
  185. package/dist/routes/product-listing.js +14 -14
  186. package/dist/routes/product.js +12 -12
  187. package/dist/routes/root/head.d.ts +2 -0
  188. package/dist/routes/root/head.d.ts.map +1 -1
  189. package/dist/routes/seo-redirects.js +10 -10
  190. package/dist/routes/testimonials.js +1 -1
  191. package/dist/routes/thank-you.js +11 -11
  192. package/dist/skeleton.js +13 -13
  193. package/dist/tanstack.js +6 -6
  194. package/dist/types/hooks.js +4 -0
  195. package/dist/types/hooks.js.map +1 -0
  196. package/dist/types/index.d.ts +4 -0
  197. package/dist/types/index.d.ts.map +1 -1
  198. package/dist/types/index.js +1 -1
  199. package/dist/vite/index.js +89 -89
  200. package/dist/vite/index.js.map +1 -1
  201. package/package.json +24 -24
  202. package/dist/Copyright-F3HLYXFJ.js +0 -9
  203. package/dist/GoogleTag-4LHWC365.js.map +0 -1
  204. package/dist/Header-BF6SPZJC.js +0 -15
  205. package/dist/SiftSnippet-X74S5KDO.js.map +0 -1
  206. package/dist/StoreClosedNotification-KSB2GPEZ.js.map +0 -1
  207. package/dist/TwilightBundles-5F2H75VV.js.map +0 -1
  208. package/dist/chunk-562ZMVI3.js.map +0 -1
  209. package/dist/chunk-GLM3RPCP.js.map +0 -1
  210. package/dist/chunk-GN34LCTG.js.map +0 -1
  211. package/dist/chunk-TRUQDEMI.js +0 -14
  212. package/dist/chunk-XUI3TRXF.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/providers/DocumentClassProvider.tsx","../src/hooks/useDocumentClass.ts"],"names":["useRef","useMemo","useEffect"],"mappings":"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","file":"chunk-GN34LCTG.js","sourcesContent":["import {\n createContext,\n useContext,\n useRef,\n useMemo,\n useEffect,\n useSyncExternalStore,\n type ReactNode,\n} from 'react';\nimport {\n mergeElementAttrs,\n syncAttrsToElement,\n toReactProps,\n type DocumentElementDescriptor,\n} from '../utils/document-class';\n\n// ============================================================================\n// Internal store (framework-agnostic, works in SSR and CSR)\n// ============================================================================\n\ninterface DocumentElementStore {\n subscribe: (listener: () => void) => () => void;\n getSnapshot: () => Readonly<Map<string, DocumentElementDescriptor>>;\n getServerSnapshot: () => Readonly<Map<string, DocumentElementDescriptor>>;\n register: (id: string, descriptor: DocumentElementDescriptor) => void;\n unregister: (id: string) => void;\n}\n\nfunction createDocumentElementStore(): DocumentElementStore {\n const map = new Map<string, DocumentElementDescriptor>();\n const listeners = new Set<() => void>();\n // Snapshot reference replaced on every mutation so useSyncExternalStore\n // detects the change via reference equality.\n let snapshot: Readonly<Map<string, DocumentElementDescriptor>> = new Map(map);\n\n const notify = () => {\n snapshot = new Map(map);\n for (const l of listeners) l();\n };\n\n return {\n subscribe: (listener) => {\n listeners.add(listener);\n return () => listeners.delete(listener);\n },\n getSnapshot: () => snapshot,\n getServerSnapshot: () => snapshot,\n register: (id, descriptor) => {\n map.set(id, descriptor);\n notify();\n },\n unregister: (id) => {\n if (map.delete(id)) notify();\n },\n };\n}\n\n// ============================================================================\n// Context\n// ============================================================================\n\ninterface DocumentClassContextValue {\n store: DocumentElementStore;\n}\n\nconst DocumentClassContext = createContext<DocumentClassContextValue | null>(null);\n\nexport function useDocumentClassContext(): DocumentClassContextValue | null {\n return useContext(DocumentClassContext);\n}\n\n// ============================================================================\n// Provider\n// ============================================================================\n\nexport interface DocumentClassProviderProps {\n children: ReactNode;\n}\n\nexport function DocumentClassProvider({ children }: DocumentClassProviderProps) {\n const storeRef = useRef<DocumentElementStore | null>(null);\n if (!storeRef.current) {\n storeRef.current = createDocumentElementStore();\n }\n\n const value = useMemo(() => ({ store: storeRef.current! }), []);\n\n return (\n <DocumentClassContext.Provider value={value}>\n {children}\n <DocumentElementDOMSync store={storeRef.current} />\n </DocumentClassContext.Provider>\n );\n}\n\n// ============================================================================\n// DOM Sync — client only, separate component so it doesn't affect SSR output\n// ============================================================================\n\nfunction DocumentElementDOMSync({ store }: { store: DocumentElementStore }) {\n const registrations = useSyncExternalStore(\n store.subscribe,\n store.getSnapshot,\n store.getServerSnapshot\n );\n\n useEffect(() => {\n if (typeof document === 'undefined') return;\n\n const bodyAttrs = mergeElementAttrs([...registrations.values()].map((d) => d.body ?? {}));\n const htmlAttrs = mergeElementAttrs([...registrations.values()].map((d) => d.html ?? {}));\n\n syncAttrsToElement(document.body, bodyAttrs);\n syncAttrsToElement(document.documentElement, htmlAttrs);\n }, [registrations]);\n\n return null;\n}\n\n// ============================================================================\n// useDocumentClassOutput — for root layouts (SSR + CSR)\n// ============================================================================\n\n/**\n * Returns computed React prop objects for `<body>` and `<html>` built from all\n * active `useDocumentClass` registrations.\n *\n * Spread the returned objects directly onto JSX elements in your root layout so\n * SSR-rendered HTML already contains all attributes before hydration.\n *\n * @example TanStack Start `__root.tsx`\n * ```tsx\n * function RootDocument() {\n * const { bodyAttrs, htmlAttrs } = useDocumentClassOutput();\n * return (\n * <html {...htmlAttrs}>\n * <body {...bodyAttrs}>\n * <Outlet />\n * </body>\n * </html>\n * );\n * }\n * ```\n *\n * @example Next.js `layout.tsx`\n * ```tsx\n * export default function RootLayout({ children }) {\n * const { bodyAttrs, htmlAttrs } = useDocumentClassOutput();\n * return (\n * <html {...htmlAttrs}>\n * <body {...bodyAttrs}>{children}</body>\n * </html>\n * );\n * }\n * ```\n */\nexport function useDocumentClassOutput(): {\n bodyAttrs: Record<string, string>;\n htmlAttrs: Record<string, string>;\n} {\n const ctx = useDocumentClassContext();\n\n const registrations = useSyncExternalStore(\n ctx?.store.subscribe ?? noopSubscribe,\n ctx?.store.getSnapshot ?? emptySnapshot,\n ctx?.store.getServerSnapshot ?? emptySnapshot\n );\n\n return useMemo(() => {\n const bodyAttrs = mergeElementAttrs([...registrations.values()].map((d) => d.body ?? {}));\n const htmlAttrs = mergeElementAttrs([...registrations.values()].map((d) => d.html ?? {}));\n return {\n bodyAttrs: toReactProps(bodyAttrs),\n htmlAttrs: toReactProps(htmlAttrs),\n };\n }, [registrations]);\n}\n\n// ============================================================================\n// Helpers\n// ============================================================================\n\nconst emptyMap: Readonly<Map<string, DocumentElementDescriptor>> = new Map();\nconst emptySnapshot = () => emptyMap;\nconst noopSubscribe = (_: () => void) => () => {};\n","import { useId, useEffect, useRef, useMemo } from 'react';\nimport { useDocumentClassContext } from '../providers/DocumentClassProvider';\nimport {\n syncAttrsToElement,\n mergeElementAttrs,\n type DocumentElementDescriptor,\n} from '../utils/document-class';\n\n/**\n * useDocumentClass - Hook for managing HTML and body element attributes\n *\n * Registers attributes for the `<html>` and `<body>` elements that are\n * automatically applied on mount and cleaned up on unmount. Supports\n * both SSR (via DocumentClassProvider) and client-side-only environments.\n *\n * @param descriptor - Object with html and/or body properties containing\n * attribute objects (class names, data attributes, etc.)\n *\n * @example Static per-route attrs\n * ```tsx\n * function ProductPage() {\n * useDocumentClass({\n * body: { class: 'page-product', 'data-page': 'product' },\n * html: { 'data-layout': 'detail' },\n * });\n * return <div>...</div>;\n * }\n * ```\n *\n * @example Dynamic attrs\n * ```tsx\n * function Layout({ isRtl }) {\n * useDocumentClass({\n * html: { dir: isRtl ? 'rtl' : 'ltr', lang: isRtl ? 'ar' : 'en' },\n * });\n * return <Outlet />;\n * }\n * ```\n *\n * @example Multiple classes + data attributes\n * ```tsx\n * useDocumentClass({\n * body: { class: ['page-blog', 'has-sidebar'], 'data-theme': 'light' },\n * html: { class: 'blog-layout', lang: 'en' },\n * });\n * ```\n */\nexport function useDocumentClass(descriptor: DocumentElementDescriptor): void {\n const id = useId();\n const ctx = useDocumentClassContext();\n const descriptorRef = useRef(descriptor);\n descriptorRef.current = descriptor;\n\n // Stable serialised key — causes the effect to re-run only when the\n // descriptor content actually changes, not on every render.\n\n const descriptorKey = useMemo(\n () => JSON.stringify(descriptor),\n [\n JSON.stringify(descriptor), // intentional: content-based comparison\n ]\n );\n\n useEffect(() => {\n if (ctx) {\n // Register after render — avoids triggering state updates in sibling\n // components during the render phase (React \"setState during render\" warning).\n ctx.store.register(id, descriptorRef.current);\n return () => ctx.store.unregister(id);\n }\n\n // Fallback: direct DOM manipulation when no provider is present\n if (typeof document === 'undefined') return;\n\n const bodyAttrs = mergeElementAttrs([descriptorRef.current.body ?? {}]);\n const htmlAttrs = mergeElementAttrs([descriptorRef.current.html ?? {}]);\n\n syncAttrsToElement(document.body, bodyAttrs);\n syncAttrsToElement(document.documentElement, htmlAttrs);\n\n return () => {\n syncAttrsToElement(document.body, {});\n syncAttrsToElement(document.documentElement, {});\n };\n // descriptorKey drives re-registration when content changes; id/ctx handle\n // mount/provider changes.\n }, [id, ctx, descriptorKey]);\n}\n"]}
@@ -1,14 +0,0 @@
1
- import { lazy } from 'react';
2
-
3
- // src/components/cart/lazy.ts
4
- var LazyCartItem = lazy(() => import('./CartItem-SGTGOTEC.js').then((m) => ({ default: m.CartItem })));
5
- var LazyCartSummary = lazy(
6
- () => import('./CartSummary-OKDGVSX2.js').then((m) => ({ default: m.CartSummary }))
7
- );
8
- var LazySeoCartWidget = lazy(
9
- () => import('./SeoCartWidget-XF4GEJK7.js').then((m) => ({ default: m.SeoCartWidget }))
10
- );
11
-
12
- export { LazyCartItem, LazyCartSummary, LazySeoCartWidget };
13
- //# sourceMappingURL=chunk-TRUQDEMI.js.map
14
- //# sourceMappingURL=chunk-TRUQDEMI.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/providers/LinkProvider.tsx"],"names":[],"mappings":";;;AAgBA,IAAM,WAAA,GAAc,cAAuC,IAAI,CAAA;AAKxD,IAAM,iBAAA,GAAN,cAAgC,KAAA,CAAM;AAAA,EAC3C,WAAA,GAAc;AACZ,IAAA,KAAA;AAAA,MACE;AAAA,KAEF;AACA,IAAA,IAAA,CAAK,IAAA,GAAO,mBAAA;AAAA,EACd;AACF,CAAA;AAMO,SAAS,cAAA,GAA8B;AAC5C,EAAA,MAAM,OAAA,GAAU,WAAW,WAAW,CAAA;AACtC,EAAA,IAAI,CAAC,OAAA,EAAS;AACZ,IAAA,MAAM,IAAI,iBAAA,EAAkB;AAAA,EAC9B;AACA,EAAA,OAAO,OAAA,CAAQ,OAAA;AACjB;AAMO,SAAS,YAAA,CAAa,EAAE,OAAA,EAAS,QAAA,EAAS,EAAkD;AACjG,EAAA,OAAO,aAAA,CAAc,YAAY,QAAA,EAAU,EAAE,OAAO,EAAE,OAAA,EAAQ,EAAE,EAAG,QAAQ,CAAA;AAC7E","file":"chunk-XUI3TRXF.js","sourcesContent":["import {\n createContext,\n useContext,\n createElement,\n type ReactNode,\n type ComponentType,\n} from 'react';\nimport type { BaseLinkProps, LinkAdapter } from '../components/common/Link.types';\n\n/**\n * LinkContext value\n */\ninterface LinkContextValue {\n adapter: LinkAdapter;\n}\n\nconst LinkContext = createContext<LinkContextValue | null>(null);\n\n/**\n * Error thrown when Link is used outside of LinkProvider\n */\nexport class LinkProviderError extends Error {\n constructor() {\n super(\n 'Link component must be used within LinkProvider. ' +\n 'Ensure TwilightProvider is configured with client.framework option.'\n );\n this.name = 'LinkProviderError';\n }\n}\n\n/**\n * Hook to access the Link adapter from context.\n * Throws if used outside LinkProvider.\n */\nexport function useLinkAdapter(): LinkAdapter {\n const context = useContext(LinkContext);\n if (!context) {\n throw new LinkProviderError();\n }\n return context.adapter;\n}\n\n/**\n * Provider that configures the framework-specific Link adapter.\n * Used internally by TwilightProvider based on client.framework setting.\n */\nexport function LinkProvider({ adapter, children }: { adapter: LinkAdapter; children: ReactNode }) {\n return createElement(LinkContext.Provider, { value: { adapter } }, children);\n}\n\n/**\n * Higher-order function to create a Link component bound to a specific adapter.\n * Useful for framework-specific exports.\n */\nexport function createLinkWithAdapter(adapter: LinkAdapter): ComponentType<BaseLinkProps> {\n return function LinkWithAdapter(props: BaseLinkProps) {\n return createElement(adapter, props);\n };\n}\n"]}