@salla.sa/twilight-theme-engine 1.0.62 → 1.0.64

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 (270) hide show
  1. package/dist/{AddToCartForm-HC24EPIH.js → AddToCartForm-QDOLIEJQ.js} +3 -3
  2. package/dist/{AddToCartForm-HC24EPIH.js.map → AddToCartForm-QDOLIEJQ.js.map} +1 -1
  3. package/dist/{BlogAuthorPage-BYPC2H3B.js → BlogAuthorPage-3PXTTKD2.js} +11 -11
  4. package/dist/{BlogAuthorPage-BYPC2H3B.js.map → BlogAuthorPage-3PXTTKD2.js.map} +1 -1
  5. package/dist/{BlogCategoryPage-SDOHIF4O.js → BlogCategoryPage-ELIZ66NZ.js} +11 -11
  6. package/dist/{BlogCategoryPage-SDOHIF4O.js.map → BlogCategoryPage-ELIZ66NZ.js.map} +1 -1
  7. package/dist/{BlogPage-WMFITGI7.js → BlogPage-QP5FYB6W.js} +9 -9
  8. package/dist/{BlogPage-WMFITGI7.js.map → BlogPage-QP5FYB6W.js.map} +1 -1
  9. package/dist/{BlogSinglePage-32GR3ARO.js → BlogSinglePage-WML62TEH.js} +9 -9
  10. package/dist/{BlogSinglePage-32GR3ARO.js.map → BlogSinglePage-WML62TEH.js.map} +1 -1
  11. package/dist/{BlogTagPage-FMH7YMYW.js → BlogTagPage-UYB62N2A.js} +11 -11
  12. package/dist/{BlogTagPage-FMH7YMYW.js.map → BlogTagPage-UYB62N2A.js.map} +1 -1
  13. package/dist/{BrandsPage-QLO4XO5V.js → BrandsPage-I7TW2URN.js} +10 -10
  14. package/dist/{BrandsPage-QLO4XO5V.js.map → BrandsPage-I7TW2URN.js.map} +1 -1
  15. package/dist/{Breadcrumb-6I4ZXJP6.js → Breadcrumb-EH55PVNJ.js} +9 -9
  16. package/dist/{Breadcrumb-6I4ZXJP6.js.map → Breadcrumb-EH55PVNJ.js.map} +1 -1
  17. package/dist/{CartItem-FLPJREOC.js → CartItem-N4XSKQTB.js} +9 -9
  18. package/dist/{CartItem-FLPJREOC.js.map → CartItem-N4XSKQTB.js.map} +1 -1
  19. package/dist/{CartSummary-4LVQXTO2.js → CartSummary-OM4X2NLC.js} +9 -9
  20. package/dist/{CartSummary-4LVQXTO2.js.map → CartSummary-OM4X2NLC.js.map} +1 -1
  21. package/dist/{Copyright-DHXKJXS3.js → Copyright-XE5XNMYG.js} +3 -3
  22. package/dist/{Copyright-DHXKJXS3.js.map → Copyright-XE5XNMYG.js.map} +1 -1
  23. package/dist/{CustomerLayout-RIJ2KLKV.js → CustomerLayout-HQAWJ4CV.js} +27 -11
  24. package/dist/CustomerLayout-HQAWJ4CV.js.map +1 -0
  25. package/dist/{Footer-OAUEPXMT.js → Footer-4KM2TX4Q.js} +9 -9
  26. package/dist/{Footer-OAUEPXMT.js.map → Footer-4KM2TX4Q.js.map} +1 -1
  27. package/dist/{Header-SLIN3ZSS.js → Header-NNACXS5F.js} +6 -6
  28. package/dist/{Header-SLIN3ZSS.js.map → Header-NNACXS5F.js.map} +1 -1
  29. package/dist/LoyaltyPage-DIU7FAEL.js +61 -0
  30. package/dist/LoyaltyPage-DIU7FAEL.js.map +1 -0
  31. package/dist/LoyaltyPointsPage-EMJEFBLA.js +16 -0
  32. package/dist/LoyaltyPointsPage-EMJEFBLA.js.map +1 -0
  33. package/dist/{MainMenu-EHFPPGYJ.js → MainMenu-7W5ENSPK.js} +3 -3
  34. package/dist/{MainMenu-EHFPPGYJ.js.map → MainMenu-7W5ENSPK.js.map} +1 -1
  35. package/dist/{MasterLayout-K737DLVH.js → MasterLayout-QCCMRBYA.js} +9 -9
  36. package/dist/{MasterLayout-K737DLVH.js.map → MasterLayout-QCCMRBYA.js.map} +1 -1
  37. package/dist/{MobileMenu-S5CBPTOC.js → MobileMenu-QFOL5UPI.js} +9 -9
  38. package/dist/{MobileMenu-S5CBPTOC.js.map → MobileMenu-QFOL5UPI.js.map} +1 -1
  39. package/dist/{NotificationsPage-W2N5QD5U.js → NotificationsPage-VOUFKNUQ.js} +9 -9
  40. package/dist/{NotificationsPage-W2N5QD5U.js.map → NotificationsPage-VOUFKNUQ.js.map} +1 -1
  41. package/dist/OrderSinglePage-WYNWGJ6N.js +719 -0
  42. package/dist/OrderSinglePage-WYNWGJ6N.js.map +1 -0
  43. package/dist/OrdersPage-BAPUFN4I.js +68 -0
  44. package/dist/OrdersPage-BAPUFN4I.js.map +1 -0
  45. package/dist/{PageSingle-6HBQPKK5.js → PageSingle-WPU4OJF4.js} +4 -4
  46. package/dist/{PageSingle-6HBQPKK5.js.map → PageSingle-WPU4OJF4.js.map} +1 -1
  47. package/dist/{ProductDetails-HLSACRJJ.js → ProductDetails-NKNCR5QX.js} +10 -3
  48. package/dist/ProductDetails-NKNCR5QX.js.map +1 -0
  49. package/dist/{ProfilePage-Z3CXGXWV.js → ProfilePage-ENSVDCJI.js} +9 -9
  50. package/dist/{ProfilePage-Z3CXGXWV.js.map → ProfilePage-ENSVDCJI.js.map} +1 -1
  51. package/dist/{SeoCartWidget-SUXBLTDW.js → SeoCartWidget-H7IY2ZR4.js} +12 -12
  52. package/dist/SeoCartWidget-H7IY2ZR4.js.map +1 -0
  53. package/dist/{SettingsPage-BNELVWPX.js → SettingsPage-HEWBMFUI.js} +9 -9
  54. package/dist/{SettingsPage-BNELVWPX.js.map → SettingsPage-HEWBMFUI.js.map} +1 -1
  55. package/dist/{StoreClosedNotification-PLPV6EJS.js → StoreClosedNotification-VIS7RAEH.js} +10 -10
  56. package/dist/{StoreClosedNotification-PLPV6EJS.js.map → StoreClosedNotification-VIS7RAEH.js.map} +1 -1
  57. package/dist/{TestimonialsPage-LRITI3DU.js → TestimonialsPage-TNL7CM6X.js} +4 -4
  58. package/dist/{TestimonialsPage-LRITI3DU.js.map → TestimonialsPage-TNL7CM6X.js.map} +1 -1
  59. package/dist/{ThankYouPage-IR2ZJJ47.js → ThankYouPage-VFVXLL6Q.js} +13 -12
  60. package/dist/ThankYouPage-VFVXLL6Q.js.map +1 -0
  61. package/dist/{WalletPage-RDG4DJ75.js → WalletPage-CINZCGTU.js} +9 -9
  62. package/dist/{WalletPage-RDG4DJ75.js.map → WalletPage-CINZCGTU.js.map} +1 -1
  63. package/dist/{WishlistPage-TCI3MFCX.js → WishlistPage-M37MPJBY.js} +149 -26
  64. package/dist/WishlistPage-M37MPJBY.js.map +1 -0
  65. package/dist/api/brands.js +3 -3
  66. package/dist/api/cart.d.ts +7 -6
  67. package/dist/api/cart.d.ts.map +1 -1
  68. package/dist/api/cart.js +3 -3
  69. package/dist/api/category.js +3 -3
  70. package/dist/api/loyalty.js +3 -3
  71. package/dist/api/order.d.ts +22 -0
  72. package/dist/api/order.d.ts.map +1 -1
  73. package/dist/api/order.js +3 -3
  74. package/dist/api/page.js +3 -3
  75. package/dist/api/product.js +3 -3
  76. package/dist/api/store.d.ts +12 -0
  77. package/dist/api/store.d.ts.map +1 -1
  78. package/dist/api/store.js +1 -1
  79. package/dist/api/wishlist.js +4 -4
  80. package/dist/{chunk-2SDIXR52.js → chunk-3A4ZJP5S.js} +4 -4
  81. package/dist/{chunk-2SDIXR52.js.map → chunk-3A4ZJP5S.js.map} +1 -1
  82. package/dist/{chunk-DPWX5WRB.js → chunk-6J33ZJB6.js} +12 -10
  83. package/dist/chunk-6J33ZJB6.js.map +1 -0
  84. package/dist/{chunk-QVLEF2GR.js → chunk-7ZYIBWZM.js} +16 -12
  85. package/dist/chunk-7ZYIBWZM.js.map +1 -0
  86. package/dist/{chunk-6HJLG7KF.js → chunk-ABOMCRUW.js} +6 -6
  87. package/dist/{chunk-6HJLG7KF.js.map → chunk-ABOMCRUW.js.map} +1 -1
  88. package/dist/{chunk-OET4G4XC.js → chunk-BE3JDKE2.js} +19 -3
  89. package/dist/chunk-BE3JDKE2.js.map +1 -0
  90. package/dist/chunk-EHEXX43T.js +21 -0
  91. package/dist/chunk-EHEXX43T.js.map +1 -0
  92. package/dist/{chunk-7OIP65ER.js → chunk-EQ32CL4D.js} +7 -4
  93. package/dist/chunk-EQ32CL4D.js.map +1 -0
  94. package/dist/{chunk-PK7EU5TM.js → chunk-GD26FI4J.js} +2 -2
  95. package/dist/chunk-GD26FI4J.js.map +1 -0
  96. package/dist/{chunk-YMVLYYLU.js → chunk-GOPUP26T.js} +4 -4
  97. package/dist/chunk-GOPUP26T.js.map +1 -0
  98. package/dist/{chunk-WH225GEC.js → chunk-I62RENKM.js} +3 -3
  99. package/dist/{chunk-WH225GEC.js.map → chunk-I62RENKM.js.map} +1 -1
  100. package/dist/{chunk-TDZSHACC.js → chunk-IC7YN4OQ.js} +3 -3
  101. package/dist/{chunk-TDZSHACC.js.map → chunk-IC7YN4OQ.js.map} +1 -1
  102. package/dist/{chunk-4DHLIY6V.js → chunk-IIYK56TI.js} +4 -3
  103. package/dist/chunk-IIYK56TI.js.map +1 -0
  104. package/dist/{chunk-W2B5P54C.js → chunk-KHRIGLYL.js} +3 -3
  105. package/dist/{chunk-W2B5P54C.js.map → chunk-KHRIGLYL.js.map} +1 -1
  106. package/dist/{chunk-ZQGMVUPE.js → chunk-KWHCKGLL.js} +3 -3
  107. package/dist/{chunk-ZQGMVUPE.js.map → chunk-KWHCKGLL.js.map} +1 -1
  108. package/dist/{chunk-J3WIGP64.js → chunk-LJ525OCU.js} +4 -4
  109. package/dist/{chunk-J3WIGP64.js.map → chunk-LJ525OCU.js.map} +1 -1
  110. package/dist/{chunk-VJHDE6UT.js → chunk-N6TNEM5G.js} +12 -3
  111. package/dist/chunk-N6TNEM5G.js.map +1 -0
  112. package/dist/{chunk-YH4O3H4R.js → chunk-NPEI4SAZ.js} +3 -3
  113. package/dist/{chunk-YH4O3H4R.js.map → chunk-NPEI4SAZ.js.map} +1 -1
  114. package/dist/{chunk-Y7EOX2OE.js → chunk-PDDMAWWF.js} +3 -3
  115. package/dist/{chunk-Y7EOX2OE.js.map → chunk-PDDMAWWF.js.map} +1 -1
  116. package/dist/{chunk-JVGZDLFP.js → chunk-PE3LLBNR.js} +3 -3
  117. package/dist/{chunk-JVGZDLFP.js.map → chunk-PE3LLBNR.js.map} +1 -1
  118. package/dist/{chunk-3U26OMNO.js → chunk-PWBMSGMU.js} +24 -17
  119. package/dist/chunk-PWBMSGMU.js.map +1 -0
  120. package/dist/{chunk-VSJLPWFI.js → chunk-Q5UYV2EN.js} +3 -3
  121. package/dist/{chunk-VSJLPWFI.js.map → chunk-Q5UYV2EN.js.map} +1 -1
  122. package/dist/{chunk-GUGZ4CEG.js → chunk-S3CC2YGF.js} +3 -3
  123. package/dist/{chunk-GUGZ4CEG.js.map → chunk-S3CC2YGF.js.map} +1 -1
  124. package/dist/{chunk-E2JXP2PP.js → chunk-T6YSHLAI.js} +6 -6
  125. package/dist/{chunk-E2JXP2PP.js.map → chunk-T6YSHLAI.js.map} +1 -1
  126. package/dist/{chunk-H5CFMW4M.js → chunk-VKY5OTIN.js} +4 -4
  127. package/dist/{chunk-H5CFMW4M.js.map → chunk-VKY5OTIN.js.map} +1 -1
  128. package/dist/{chunk-3ITQB3PY.js → chunk-VLBQPVHM.js} +3 -3
  129. package/dist/{chunk-3ITQB3PY.js.map → chunk-VLBQPVHM.js.map} +1 -1
  130. package/dist/{chunk-TLO2M5TJ.js → chunk-W66OHTSM.js} +3 -3
  131. package/dist/{chunk-TLO2M5TJ.js.map → chunk-W66OHTSM.js.map} +1 -1
  132. package/dist/{chunk-OIH4XW47.js → chunk-XCS3HZNM.js} +49 -56
  133. package/dist/chunk-XCS3HZNM.js.map +1 -0
  134. package/dist/chunk-YZHHK5IP.js +14 -0
  135. package/dist/{chunk-JSV64SPM.js.map → chunk-YZHHK5IP.js.map} +1 -1
  136. package/dist/{chunk-TFB3QXYH.js → chunk-ZGHRSRDO.js} +3 -2
  137. package/dist/chunk-ZGHRSRDO.js.map +1 -0
  138. package/dist/{chunk-MSMFH6BM.js → chunk-ZJ5KWIEB.js} +5 -5
  139. package/dist/{chunk-MSMFH6BM.js.map → chunk-ZJ5KWIEB.js.map} +1 -1
  140. package/dist/components/cart/index.js +1 -1
  141. package/dist/components/common/index.js +1 -1
  142. package/dist/components/drawer/index.js +7 -7
  143. package/dist/components/home/index.js +10 -10
  144. package/dist/components/layout/CustomerLayout.d.ts.map +1 -1
  145. package/dist/components/layout/index.js +1 -18
  146. package/dist/components/layout/index.js.map +1 -1
  147. package/dist/components/product/ProductDetails.d.ts.map +1 -1
  148. package/dist/components/product/index.js +8 -8
  149. package/dist/components/store/index.js +9 -9
  150. package/dist/{document-class-5KOR5KVY.js → document-class-37KI2E52.js} +9 -9
  151. package/dist/{document-class-5KOR5KVY.js.map → document-class-37KI2E52.js.map} +1 -1
  152. package/dist/hooks/index.js +7 -7
  153. package/dist/hooks/useComments.js +1 -1
  154. package/dist/hooks/useGtm.js +7 -7
  155. package/dist/hooks/useMoney.d.ts +3 -3
  156. package/dist/hooks/useMoney.d.ts.map +1 -1
  157. package/dist/hooks/useMoney.js +7 -7
  158. package/dist/hooks/useProduct.d.ts.map +1 -1
  159. package/dist/hooks/useProduct.js +1 -1
  160. package/dist/hooks/useStore.js +7 -7
  161. package/dist/index.js +7 -7
  162. package/dist/{navigation-QMBOIYJI.js → navigation-ESPAHRXM.js} +5 -5
  163. package/dist/{navigation-QMBOIYJI.js.map → navigation-ESPAHRXM.js.map} +1 -1
  164. package/dist/{navigation-XZJCQXY3.js → navigation-YKRXGGSL.js} +4 -4
  165. package/dist/{navigation-XZJCQXY3.js.map → navigation-YKRXGGSL.js.map} +1 -1
  166. package/dist/{not-found-ZJXJJYD3.js → not-found-UXBV4766.js} +10 -10
  167. package/dist/{not-found-ZJXJJYD3.js.map → not-found-UXBV4766.js.map} +1 -1
  168. package/dist/providers/TwilightProvider.d.ts.map +1 -1
  169. package/dist/providers/index.js +7 -7
  170. package/dist/providers/twilight-init.d.ts.map +1 -1
  171. package/dist/router/route-ids.d.ts +1 -0
  172. package/dist/router/route-ids.d.ts.map +1 -1
  173. package/dist/routes/account/orders/OrderSinglePage.d.ts +7 -1
  174. package/dist/routes/account/orders/OrderSinglePage.d.ts.map +1 -1
  175. package/dist/routes/account/orders/OrdersPage.d.ts +2 -1
  176. package/dist/routes/account/orders/OrdersPage.d.ts.map +1 -1
  177. package/dist/routes/account/orders/loader.d.ts.map +1 -1
  178. package/dist/routes/account/orders/single/OrderActions.d.ts +7 -0
  179. package/dist/routes/account/orders/single/OrderActions.d.ts.map +1 -0
  180. package/dist/routes/account/orders/single/OrderHeader.d.ts +8 -0
  181. package/dist/routes/account/orders/single/OrderHeader.d.ts.map +1 -0
  182. package/dist/routes/account/orders/single/OrderItemRow.d.ts +9 -0
  183. package/dist/routes/account/orders/single/OrderItemRow.d.ts.map +1 -0
  184. package/dist/routes/account/orders/single/OrderSections.d.ts +23 -0
  185. package/dist/routes/account/orders/single/OrderSections.d.ts.map +1 -0
  186. package/dist/routes/account/orders/single/types.d.ts +53 -0
  187. package/dist/routes/account/orders/single/types.d.ts.map +1 -0
  188. package/dist/routes/account/orders/types.d.ts +3 -0
  189. package/dist/routes/account/orders/types.d.ts.map +1 -1
  190. package/dist/routes/account/orders.js +4 -4
  191. package/dist/routes/account/wishlist/WishlistPage.d.ts +1 -1
  192. package/dist/routes/account/wishlist/WishlistPage.d.ts.map +1 -1
  193. package/dist/routes/account/wishlist/WishlistShare.d.ts +1 -0
  194. package/dist/routes/account/wishlist/WishlistShare.d.ts.map +1 -1
  195. package/dist/routes/account.js +11 -11
  196. package/dist/routes/blog.js +8 -8
  197. package/dist/routes/brands.js +4 -4
  198. package/dist/routes/cart/CartPage.d.ts.map +1 -1
  199. package/dist/routes/cart.js +16 -16
  200. package/dist/routes/cart.js.map +1 -1
  201. package/dist/routes/home.js +11 -11
  202. package/dist/routes/index.d.ts +1 -1
  203. package/dist/routes/index.d.ts.map +1 -1
  204. package/dist/routes/index.js +3 -3
  205. package/dist/routes/loyalty/LoyaltyPage.d.ts +1 -1
  206. package/dist/routes/loyalty/LoyaltyPage.d.ts.map +1 -1
  207. package/dist/routes/loyalty/LoyaltyPointsPage.d.ts +3 -0
  208. package/dist/routes/loyalty/LoyaltyPointsPage.d.ts.map +1 -0
  209. package/dist/routes/loyalty/index.d.ts +15 -3
  210. package/dist/routes/loyalty/index.d.ts.map +1 -1
  211. package/dist/routes/loyalty/loader.d.ts +2 -1
  212. package/dist/routes/loyalty/loader.d.ts.map +1 -1
  213. package/dist/routes/loyalty/types.d.ts +3 -0
  214. package/dist/routes/loyalty/types.d.ts.map +1 -1
  215. package/dist/routes/loyalty.js +62 -11
  216. package/dist/routes/loyalty.js.map +1 -1
  217. package/dist/routes/page.js +4 -4
  218. package/dist/routes/product/index.d.ts.map +1 -1
  219. package/dist/routes/product-listing/index.d.ts.map +1 -1
  220. package/dist/routes/product-listing.js +22 -19
  221. package/dist/routes/product-listing.js.map +1 -1
  222. package/dist/routes/product.js +15 -13
  223. package/dist/routes/product.js.map +1 -1
  224. package/dist/routes/seo-redirects.js +3 -3
  225. package/dist/routes/testimonials.js +2 -2
  226. package/dist/routes/thank-you/ThankYouPage.d.ts.map +1 -1
  227. package/dist/routes/thank-you.js +4 -4
  228. package/dist/skeleton.js +11 -11
  229. package/dist/tanstack/document-class.d.ts.map +1 -1
  230. package/dist/tanstack/head.d.ts +1 -4
  231. package/dist/tanstack/head.d.ts.map +1 -1
  232. package/dist/tanstack/router.d.ts.map +1 -1
  233. package/dist/tanstack/templates/locale-wrapper.d.ts.map +1 -1
  234. package/dist/tanstack.js +10 -10
  235. package/dist/types/index.d.ts +1 -0
  236. package/dist/types/index.d.ts.map +1 -1
  237. package/dist/utils/head.d.ts +3 -0
  238. package/dist/utils/head.d.ts.map +1 -1
  239. package/dist/utils/head.js +1 -1
  240. package/dist/utils/index.js +1 -1
  241. package/dist/vite/adapters/tanstack.adapter.d.ts.map +1 -1
  242. package/dist/vite/index.js +88 -11
  243. package/dist/vite/index.js.map +1 -1
  244. package/dist/vite/plugins/best-practices/hooks-registry.d.ts.map +1 -1
  245. package/dist/vite/plugins/component-deps.d.ts +5 -0
  246. package/dist/vite/plugins/component-deps.d.ts.map +1 -0
  247. package/package.json +1 -1
  248. package/dist/CustomerLayout-RIJ2KLKV.js.map +0 -1
  249. package/dist/LoyaltyPage-BQB7BDUO.js +0 -195
  250. package/dist/LoyaltyPage-BQB7BDUO.js.map +0 -1
  251. package/dist/OrderSinglePage-GOGNRVPM.js +0 -502
  252. package/dist/OrderSinglePage-GOGNRVPM.js.map +0 -1
  253. package/dist/OrdersPage-YB7WU5QV.js +0 -252
  254. package/dist/OrdersPage-YB7WU5QV.js.map +0 -1
  255. package/dist/ProductDetails-HLSACRJJ.js.map +0 -1
  256. package/dist/SeoCartWidget-SUXBLTDW.js.map +0 -1
  257. package/dist/ThankYouPage-IR2ZJJ47.js.map +0 -1
  258. package/dist/WishlistPage-TCI3MFCX.js.map +0 -1
  259. package/dist/chunk-3U26OMNO.js.map +0 -1
  260. package/dist/chunk-4DHLIY6V.js.map +0 -1
  261. package/dist/chunk-7OIP65ER.js.map +0 -1
  262. package/dist/chunk-DPWX5WRB.js.map +0 -1
  263. package/dist/chunk-JSV64SPM.js +0 -14
  264. package/dist/chunk-OET4G4XC.js.map +0 -1
  265. package/dist/chunk-OIH4XW47.js.map +0 -1
  266. package/dist/chunk-PK7EU5TM.js.map +0 -1
  267. package/dist/chunk-QVLEF2GR.js.map +0 -1
  268. package/dist/chunk-TFB3QXYH.js.map +0 -1
  269. package/dist/chunk-VJHDE6UT.js.map +0 -1
  270. package/dist/chunk-YMVLYYLU.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"hooks-registry.d.ts","sourceRoot":"","sources":["../../../../src/vite/plugins/best-practices/hooks-registry.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC;CACrC;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,YAAY,EAAE,CAAC;CAC/B;AAED;;;GAGG;AACH,eAAO,MAAM,cAAc,EAAE,cAAc,EAuM1C,CAAC;AAEF;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,YAAY,EAAE,GAAG,IAAI,CAOxE"}
1
+ {"version":3,"file":"hooks-registry.d.ts","sourceRoot":"","sources":["../../../../src/vite/plugins/best-practices/hooks-registry.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC;CACrC;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,YAAY,EAAE,CAAC;CAC/B;AAED;;;GAGG;AACH,eAAO,MAAM,cAAc,EAAE,cAAc,EAgN1C,CAAC;AAEF;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,YAAY,EAAE,GAAG,IAAI,CAOxE"}
@@ -0,0 +1,5 @@
1
+ /** Every `@salla.sa/twilight-components-react/<subpath>` imported by the source files under `dirs`. */
2
+ export declare function collectComponentWrapperImports(dirs: string[]): string[];
3
+ /** The engine's own code: `src/` in the monorepo, `dist/` in a registry install. */
4
+ export declare function engineSourceDir(startDir?: string): string | null;
5
+ //# sourceMappingURL=component-deps.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"component-deps.d.ts","sourceRoot":"","sources":["../../../src/vite/plugins/component-deps.ts"],"names":[],"mappings":"AAgBA,uGAAuG;AACvG,wBAAgB,8BAA8B,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAgBvE;AAED,oFAAoF;AACpF,wBAAgB,eAAe,CAAC,QAAQ,SAA0C,GAAG,MAAM,GAAG,IAAI,CAajG"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@salla.sa/twilight-theme-engine",
3
- "version": "1.0.62",
3
+ "version": "1.0.64",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/components/layout/CustomerLayout.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAYO,SAAS,cAAA,CAAe,EAAE,QAAA,EAAU,IAAA,EAAK,EAAwB;AACtE,EAAA,MAAM,EAAE,IAAA,EAAM,IAAA,EAAK,GAAI,OAAA,EAAQ;AAI/B,EAAA,gBAAA,CAAiB,EAAE,IAAA,EAAM,EAAE,KAAA,EAAO,UAAA,IAAc,CAAA;AAEhD,EAAA,uBACE,IAAA,CAAA,QAAA,EAAA,EACE,QAAA,EAAA;AAAA,oBAAA,GAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,4BAAA,EACb,QAAA,kBAAA,GAAA,CAAC,SAAI,SAAA,EAAU,6DAAA,EACZ,QAAA,EAAA,IAAA,oBAAQ,GAAA,CAAC,cAAA,EAAA,EAAW,IAAA,EAAY,SAAA,EAAU,oCAAA,EAAqC,GAClF,CAAA,EACF,CAAA;AAAA,wBAGC,KAAA,EAAA,EAAI,SAAA,EAAU,sBACb,QAAA,kBAAA,IAAA,CAAC,KAAA,EAAA,EAAI,WAAU,sDAAA,EACb,QAAA,EAAA;AAAA,sBAAA,IAAA;AAAA,QAAC,KAAA;AAAA,QAAA;AAAA,UACC,YAAA,EAAW,SAAA;AAAA,UACX,SAAA,EAAU,yJAAA;AAAA,UAET,QAAA,EAAA;AAAA,YAAA,IAAA,EAAM,IAAA,KAAS,SAAA,oBACd,GAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,qBAAA,EACb,QAAA,kBAAA,GAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,uEAAA,EACb,QAAA,kBAAA,GAAA,CAAC,eAAA,EAAA,EAAgB,YAAA,EAAY,IAAA,EAAC,KAAA,EAAO,IAAA,EAAM,MAAA,EACzC,QAAA,kBAAA,GAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAU,4EAAA,EACd,QAAA,kBAAA,GAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAU,mCAAA,EAAoC,CAAA,EACtD,CAAA,EACF,CAAA,EACF,CAAA,EACF,CAAA;AAAA,4BAGF,GAAA,CAAC,SAAI,SAAA,EAAU,iBAAA,EACb,8BAAC,aAAA,EAAA,EAAc,MAAA,EAAM,MAAC,CAAA,EACxB;AAAA;AAAA;AAAA,OACF;AAAA,sBAEA,IAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,+CAAA,EACZ,QAAA,EAAA;AAAA,QAAA,IAAA,EAAM,yBACL,GAAA,CAAC,IAAA,EAAA,EAAG,SAAA,EAAU,uEAAA,EACX,eAAK,KAAA,EACR,CAAA;AAAA,QAED;AAAA,OAAA,EACH;AAAA,KAAA,EACF,CAAA,EACF;AAAA,GAAA,EACF,CAAA;AAEJ","file":"CustomerLayout-RIJ2KLKV.js","sourcesContent":["import { useUser } from '../../hooks';\nimport { useDocumentClass } from '../../hooks/useDocumentClass';\nimport { SallaFileUpload } from '@salla.sa/twilight-components-react/file-upload';\nimport { SallaUserMenu } from '@salla.sa/twilight-components-react/user-menu';\nimport { Breadcrumb } from '../common';\nimport type { LayoutProps } from './types';\nimport type { Page } from '../../types';\n\ninterface CustomerLayoutProps extends LayoutProps {\n page?: Page;\n}\n\nexport function CustomerLayout({ children, page }: CustomerLayoutProps) {\n const { data: user } = useUser();\n\n // Marks every customer/account page so a theme can scope styles to them\n // (route classes vary per page; this one is shared).\n useDocumentClass({ body: { class: 'customer' } });\n\n return (\n <>\n <div className=\"profile-header gradient-bg\">\n <div className=\"container relative flex justify-between h-full items-center\">\n {page && <Breadcrumb page={page} className=\"breadcrumbs w-full py-5 self-start\" />}\n </div>\n </div>\n\n {/* Main content area */}\n <div className=\"container lg:mb-24\">\n <div className=\"flex items-start flex-col lg:flex-row justify-center\">\n <nav\n aria-label=\"Sidebar\"\n className=\"shrink-0 lg:sticky top-24 lg:-mt-28 lg:shadow-default rounded-md lg:bg-white w-full lg:w-72 rtl:lg:ml-8 ltr:lg:mr-8 lg:pt-8 lg:pb-11 sidebar space-y-px\"\n >\n {page?.slug === 'profile' && (\n <div className=\"text-center md:mb-9\">\n <div className=\"h-20 w-20 m-auto avatar-wrap bg-gray-100 rounded-full overflow-hidden\">\n <SallaFileUpload profileImage value={user?.avatar}>\n <span className=\"avatar-placeholder flex justify-center items-center flex-col w-full h-full\">\n <span className=\"sicon-user text-2xl text-gray-400\"></span>\n </span>\n </SallaFileUpload>\n </div>\n </div>\n )}\n\n <div className=\"hidden lg:block\">\n <SallaUserMenu inline />\n </div>\n </nav>\n\n <div className=\"main-content w-full flex-1 lg:pt-10 max-w-3xl\">\n {page?.title && (\n <h1 className=\"font-bold text-lg text-center sm:rtl:text-right sm:ltr:text-left mb-2\">\n {page.title}\n </h1>\n )}\n {children}\n </div>\n </div>\n </div>\n </>\n );\n}\n"]}
@@ -1,195 +0,0 @@
1
- import { loyalty } from './chunk-YH4O3H4R.js';
2
- import './chunk-OIH4XW47.js';
3
- import './chunk-6HJLG7KF.js';
4
- import './chunk-JKIRRMBU.js';
5
- import './chunk-2JV6WZ6O.js';
6
- import './chunk-UIOLSYKV.js';
7
- import './chunk-VVZNW5CB.js';
8
- import './chunk-2XGQSJKH.js';
9
- import './chunk-WH225GEC.js';
10
- import './chunk-TFB3QXYH.js';
11
- import './chunk-YMVLYYLU.js';
12
- import './chunk-C5X6CVXC.js';
13
- import { useUser } from './chunk-UZKTK6YV.js';
14
- import './chunk-5X2UFNKY.js';
15
- import './chunk-P3OPJL6I.js';
16
- import './chunk-WY4IYO3G.js';
17
- import './chunk-TYLKNVQA.js';
18
- import './chunk-SR4OTLTJ.js';
19
- import './chunk-N2S25NXP.js';
20
- import './chunk-TP3LCGE7.js';
21
- import './chunk-Z653O7MX.js';
22
- import './chunk-ZCH7W7DZ.js';
23
- import './chunk-3U26OMNO.js';
24
- import './chunk-JWXJPJBO.js';
25
- import './chunk-CW625T2E.js';
26
- import './chunk-7V36I5GT.js';
27
- import './chunk-BVSJPBJ6.js';
28
- import './chunk-GBWCXUPD.js';
29
- import './chunk-OAMIDZKW.js';
30
- import { useTranslation } from './chunk-TYNZ5B2B.js';
31
- import './chunk-T72DAX7R.js';
32
- import './chunk-RJPPO3ET.js';
33
- import './chunk-Q7VWURUR.js';
34
- import './chunk-GU2KUQVD.js';
35
- import { LazyBreadcrumb, Image } from './chunk-Y7EOX2OE.js';
36
- import { Link } from './chunk-AXW67SY7.js';
37
- import './chunk-BYMOPN2S.js';
38
- import './chunk-SKLEJJ6M.js';
39
- import './chunk-6BZ5TKEV.js';
40
- import './chunk-FZKRSGLP.js';
41
- import './chunk-CUG6VOLM.js';
42
- import './chunk-HX3YKS5W.js';
43
- import './chunk-OBSAH7K6.js';
44
- import './chunk-DF6FBKDN.js';
45
- import './chunk-DGUM43GV.js';
46
- import { useCopyToClipboard } from '@uidotdev/usehooks';
47
- import { SallaLoyalty } from '@salla.sa/twilight-components-react/loyalty';
48
- import { SallaButton } from '@salla.sa/twilight-components-react/button';
49
- import { SallaSlider } from '@salla.sa/twilight-components-react/slider';
50
- import { useQuery } from '@tanstack/react-query';
51
- import { jsxs, Fragment, jsx } from 'react/jsx-runtime';
52
-
53
- function LoyaltyPage({ loyalty: loyaltyData, page }) {
54
- const { data: user } = useUser();
55
- const { t } = useTranslation();
56
- const [, copyToClipboard] = useCopyToClipboard();
57
- const { data: customerPoints } = useQuery(loyalty.queries.points());
58
- return /* @__PURE__ */ jsxs(Fragment, { children: [
59
- /* @__PURE__ */ jsx(
60
- "div",
61
- {
62
- className: "h-62 -mb-52 w-full bg-primary rtl:right-0 ltr:left-0 relative -z-1 bg-cover bg-no-repeat bg-center",
63
- style: { backgroundImage: loyaltyData.image ? `url(${loyaltyData.image})` : void 0 },
64
- children: /* @__PURE__ */ jsx("div", { className: "overlay h-full w-full bg-black opacity-50 absolute top-0 left-0" })
65
- }
66
- ),
67
- /* @__PURE__ */ jsxs("div", { className: "container space-y-8 lg:space-y-16", children: [
68
- /* @__PURE__ */ jsx(LazyBreadcrumb, { page }),
69
- /* @__PURE__ */ jsxs("div", { className: "loyalty__banner", children: [
70
- /* @__PURE__ */ jsxs("div", { className: "loyalty__banner-inner", children: [
71
- /* @__PURE__ */ jsx("i", { className: "sicon-star2 star-anime text-amber-400 text-7xl" }),
72
- /* @__PURE__ */ jsxs("div", { className: "loyalty__banner-content", children: [
73
- /* @__PURE__ */ jsxs("div", { className: "info", children: [
74
- /* @__PURE__ */ jsx("h1", { children: loyaltyData.name }),
75
- /* @__PURE__ */ jsx("p", { children: loyaltyData.description }),
76
- customerPoints != null && /* @__PURE__ */ jsxs("div", { className: "loyalty-points", children: [
77
- t("pages.loyalty_program.you_have"),
78
- " ",
79
- /* @__PURE__ */ jsx("span", { className: "count-number count-anime", children: customerPoints }),
80
- " ",
81
- t("pages.loyalty_program.point")
82
- ] })
83
- ] }),
84
- /* @__PURE__ */ jsx(SallaLoyalty, { customerPoints: customerPoints ?? void 0, children: /* @__PURE__ */ jsx("span", { slot: "widget", children: /* @__PURE__ */ jsx(
85
- SallaButton,
86
- {
87
- onClick: () => document.querySelector("salla-loyalty")?.open(),
88
- children: t("pages.loyalty_program.exchange_points")
89
- }
90
- ) }) })
91
- ] })
92
- ] }),
93
- /* @__PURE__ */ jsx("div", { className: "loyalty-star loyalty-star--first", children: /* @__PURE__ */ jsx("i", { className: "sicon-star2" }) }),
94
- /* @__PURE__ */ jsx("div", { className: "loyalty-star loyalty-star--second", children: /* @__PURE__ */ jsx("i", { className: "sicon-star2" }) })
95
- ] }),
96
- /* @__PURE__ */ jsxs("section", { className: "points-ways pt-6", children: [
97
- /* @__PURE__ */ jsx("div", { className: "s-block__title", children: /* @__PURE__ */ jsx("h2", { children: t("pages.loyalty_program.ways_to_get_points") }) }),
98
- /* @__PURE__ */ jsx("div", { className: "points-ways__list", children: loyaltyData.points.map((point) => /* @__PURE__ */ jsxs("div", { className: "way-item", children: [
99
- /* @__PURE__ */ jsxs("div", { className: "flex rtl:space-x-reverse space-x-4", children: [
100
- /* @__PURE__ */ jsx(
101
- "span",
102
- {
103
- className: `way-item__icon ${point.icon || "sicon-star"}`,
104
- style: { color: point.color },
105
- children: /* @__PURE__ */ jsx("span", { style: { backgroundColor: point.color } })
106
- }
107
- ),
108
- /* @__PURE__ */ jsxs("div", { className: "way-item__content", children: [
109
- /* @__PURE__ */ jsxs("h3", { style: { color: point.color }, children: [
110
- point.points,
111
- " ",
112
- t("pages.loyalty_program.point")
113
- ] }),
114
- /* @__PURE__ */ jsx("p", { children: point.description })
115
- ] })
116
- ] }),
117
- user?.type === "user" && /* @__PURE__ */ jsx("div", { className: "way-item__action", children: point.type === "share" && point.url ? /* @__PURE__ */ jsxs("div", { className: "border relative border-primary rounded-3xl h-[34px] text-center pr-14 pl-5", children: [
118
- /* @__PURE__ */ jsx(
119
- SallaButton,
120
- {
121
- onClick: () => point.url && copyToClipboard(point.url),
122
- shape: "link",
123
- className: "absolute w-12 top-0 right-0 h-full px-3 !pt-1 border-l border-primary hover:opacity-80",
124
- ariaLabel: t("pages.loyalty_program.copy_link"),
125
- children: /* @__PURE__ */ jsx("i", { className: "copy-icon sicon-swap-fill" })
126
- }
127
- ),
128
- /* @__PURE__ */ jsx(
129
- "h3",
130
- {
131
- className: "font-bold text-sm leading-8 whitespace-nowrap text-ellipsis overflow-hidden text-primary",
132
- dir: "ltr",
133
- children: point.url
134
- }
135
- )
136
- ] }) : point.type === "profile" ? /* @__PURE__ */ jsxs("div", { className: "text-green-500 text-center border relative border-green-300 rounded-3xl bg-green-50 min-h-[34px] w-full pt-1 px-4", children: [
137
- /* @__PURE__ */ jsx("i", { className: "sicon-check-circle d-inline-block" }),
138
- /* @__PURE__ */ jsx("span", { className: "break-all", children: t("pages.loyalty_program.completed") })
139
- ] }) : /* @__PURE__ */ jsx(
140
- SallaButton,
141
- {
142
- fill: "outline",
143
- width: "wide",
144
- href: point.url,
145
- className: "!rounded-3xl text-sm !py-1.5",
146
- children: point.name
147
- }
148
- ) })
149
- ] }, point.id ?? point.key ?? point.name)) })
150
- ] }),
151
- loyaltyData.prizes.map((prizeGroup) => /* @__PURE__ */ jsx("div", { children: /* @__PURE__ */ jsx(
152
- SallaSlider,
153
- {
154
- type: "carousel",
155
- loop: prizeGroup.items.length < 4 ? false : true,
156
- blockTitle: prizeGroup.title,
157
- id: `loyalty-slider-${prizeGroup.type}`,
158
- sliderConfig: { watchOverflow: true },
159
- children: /* @__PURE__ */ jsx("div", { slot: "items", children: prizeGroup.items.map((prize) => /* @__PURE__ */ jsx("div", { className: "slide--one-fourth", children: /* @__PURE__ */ jsxs("div", { className: "product-entry flex-col", children: [
160
- prize.url ? /* @__PURE__ */ jsx(Link, { to: prize.url, className: "product-entry__image h-40", children: /* @__PURE__ */ jsx(
161
- Image,
162
- {
163
- className: "sm:h-full w-full object-cover rounded-t-md",
164
- src: prize.image,
165
- alt: prize.name,
166
- aspectRatio: "1/1"
167
- }
168
- ) }) : /* @__PURE__ */ jsx(
169
- Image,
170
- {
171
- className: "sm:h-full w-full object-cover rounded-t-md",
172
- src: prize.image,
173
- alt: prize.name,
174
- aspectRatio: "1/1"
175
- }
176
- ),
177
- /* @__PURE__ */ jsxs("div", { className: "flex-1 p-5", children: [
178
- /* @__PURE__ */ jsx("h3", { className: "product-entry__title leading-6 mb-2.5", children: prize.url ? /* @__PURE__ */ jsx(Link, { to: prize.url, children: prize.name }) : prize.name }),
179
- prize.description && /* @__PURE__ */ jsx("p", { className: "text-sm leading-6", children: prize.description })
180
- ] }),
181
- user?.type === "user" && /* @__PURE__ */ jsxs("div", { className: "font-bold text-primary p-4 text-center border-t", children: [
182
- prize.cost_points,
183
- " ",
184
- t("pages.loyalty_program.point")
185
- ] })
186
- ] }) }, prize.id)) })
187
- }
188
- ) }, `${prizeGroup.type}:${prizeGroup.title}`))
189
- ] })
190
- ] });
191
- }
192
-
193
- export { LoyaltyPage };
194
- //# sourceMappingURL=LoyaltyPage-BQB7BDUO.js.map
195
- //# sourceMappingURL=LoyaltyPage-BQB7BDUO.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/routes/loyalty/LoyaltyPage.tsx"],"names":[],"mappings":"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","file":"LoyaltyPage-BQB7BDUO.js","sourcesContent":["import { useCopyToClipboard } from '@uidotdev/usehooks';\nimport { SallaLoyalty } from '@salla.sa/twilight-components-react/loyalty';\nimport { SallaButton } from '@salla.sa/twilight-components-react/button';\nimport { SallaSlider } from '@salla.sa/twilight-components-react/slider';\nimport type { LoyaltyPageProps } from './types';\nimport { Breadcrumb, Link, Image } from '../../components/common';\nimport { useTranslation } from '../../providers/I18nProvider';\nimport { useUser } from '../../hooks';\nimport { useQuery } from '@tanstack/react-query';\nimport { loyalty } from '../../api/loyalty';\n\nexport function LoyaltyPage({ loyalty: loyaltyData, page }: LoyaltyPageProps) {\n const { data: user } = useUser();\n const { t } = useTranslation();\n const [, copyToClipboard] = useCopyToClipboard();\n const { data: customerPoints } = useQuery(loyalty.queries.points());\n\n return (\n <>\n <div\n className=\"h-62 -mb-52 w-full bg-primary rtl:right-0 ltr:left-0 relative -z-1 bg-cover bg-no-repeat bg-center\"\n style={{ backgroundImage: loyaltyData.image ? `url(${loyaltyData.image})` : undefined }}\n >\n <div className=\"overlay h-full w-full bg-black opacity-50 absolute top-0 left-0\"></div>\n </div>\n\n <div className=\"container space-y-8 lg:space-y-16\">\n <Breadcrumb page={page} />\n\n {/* Loyalty Banner */}\n <div className=\"loyalty__banner\">\n <div className=\"loyalty__banner-inner\">\n <i className=\"sicon-star2 star-anime text-amber-400 text-7xl\"></i>\n <div className=\"loyalty__banner-content\">\n <div className=\"info\">\n <h1>{loyaltyData.name}</h1>\n <p>{loyaltyData.description}</p>\n {customerPoints != null && (\n <div className=\"loyalty-points\">\n {t('pages.loyalty_program.you_have')}{' '}\n <span className=\"count-number count-anime\">{customerPoints}</span>{' '}\n {t('pages.loyalty_program.point')}\n </div>\n )}\n </div>\n\n <SallaLoyalty customerPoints={customerPoints ?? undefined}>\n <span slot=\"widget\">\n <SallaButton\n onClick={() =>\n (\n document.querySelector('salla-loyalty') as HTMLElement & {\n open: () => void;\n }\n )?.open()\n }\n >\n {t('pages.loyalty_program.exchange_points')}\n </SallaButton>\n </span>\n </SallaLoyalty>\n </div>\n </div>\n\n {/* Background stars */}\n <div className=\"loyalty-star loyalty-star--first\">\n <i className=\"sicon-star2\"></i>\n </div>\n <div className=\"loyalty-star loyalty-star--second\">\n <i className=\"sicon-star2\"></i>\n </div>\n </div>\n\n {/* Ways to get points */}\n <section className=\"points-ways pt-6\">\n <div className=\"s-block__title\">\n <h2>{t('pages.loyalty_program.ways_to_get_points')}</h2>\n </div>\n <div className=\"points-ways__list\">\n {loyaltyData.points.map((point) => (\n <div key={point.id ?? point.key ?? point.name} className=\"way-item\">\n <div className=\"flex rtl:space-x-reverse space-x-4\">\n <span\n className={`way-item__icon ${point.icon || 'sicon-star'}`}\n style={{ color: point.color }}\n >\n <span style={{ backgroundColor: point.color }}></span>\n </span>\n <div className=\"way-item__content\">\n <h3 style={{ color: point.color }}>\n {point.points} {t('pages.loyalty_program.point')}\n </h3>\n <p>{point.description}</p>\n </div>\n </div>\n\n {user?.type === 'user' && (\n <div className=\"way-item__action\">\n {point.type === 'share' && point.url ? (\n <div className=\"border relative border-primary rounded-3xl h-[34px] text-center pr-14 pl-5\">\n <SallaButton\n onClick={() => point.url && copyToClipboard(point.url)}\n shape=\"link\"\n className=\"absolute w-12 top-0 right-0 h-full px-3 !pt-1 border-l border-primary hover:opacity-80\"\n ariaLabel={t('pages.loyalty_program.copy_link')}\n >\n <i className=\"copy-icon sicon-swap-fill\"></i>\n </SallaButton>\n <h3\n className=\"font-bold text-sm leading-8 whitespace-nowrap text-ellipsis overflow-hidden text-primary\"\n dir=\"ltr\"\n >\n {point.url}\n </h3>\n </div>\n ) : point.type === 'profile' ? (\n <div className=\"text-green-500 text-center border relative border-green-300 rounded-3xl bg-green-50 min-h-[34px] w-full pt-1 px-4\">\n <i className=\"sicon-check-circle d-inline-block\"></i>\n <span className=\"break-all\">{t('pages.loyalty_program.completed')}</span>\n </div>\n ) : (\n <SallaButton\n fill=\"outline\"\n width=\"wide\"\n href={point.url}\n className=\"!rounded-3xl text-sm !py-1.5\"\n >\n {point.name}\n </SallaButton>\n )}\n </div>\n )}\n </div>\n ))}\n </div>\n </section>\n\n {/* Prizes */}\n {loyaltyData.prizes.map((prizeGroup) => (\n <div key={`${prizeGroup.type}:${prizeGroup.title}`}>\n <SallaSlider\n type=\"carousel\"\n loop={prizeGroup.items.length < 4 ? false : true}\n blockTitle={prizeGroup.title}\n id={`loyalty-slider-${prizeGroup.type}`}\n sliderConfig={{ watchOverflow: true }}\n >\n <div slot=\"items\">\n {prizeGroup.items.map((prize) => (\n <div key={prize.id} className=\"slide--one-fourth\">\n <div className=\"product-entry flex-col\">\n {prize.url ? (\n <Link to={prize.url} className=\"product-entry__image h-40\">\n <Image\n className=\"sm:h-full w-full object-cover rounded-t-md\"\n src={prize.image}\n alt={prize.name}\n aspectRatio=\"1/1\"\n />\n </Link>\n ) : (\n <Image\n className=\"sm:h-full w-full object-cover rounded-t-md\"\n src={prize.image}\n alt={prize.name}\n aspectRatio=\"1/1\"\n />\n )}\n <div className=\"flex-1 p-5\">\n <h3 className=\"product-entry__title leading-6 mb-2.5\">\n {prize.url ? <Link to={prize.url}>{prize.name}</Link> : prize.name}\n </h3>\n {prize.description && (\n <p className=\"text-sm leading-6\">{prize.description}</p>\n )}\n </div>\n {user?.type === 'user' && (\n <div className=\"font-bold text-primary p-4 text-center border-t\">\n {prize.cost_points} {t('pages.loyalty_program.point')}\n </div>\n )}\n </div>\n </div>\n ))}\n </div>\n </SallaSlider>\n </div>\n ))}\n </div>\n </>\n );\n}\n"]}