@salla.sa/twilight-components 2.14.493 → 2.14.495

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 (369) hide show
  1. package/dist/cjs/{filepond-DqhwRQm7.js → filepond-DXx41R2y.js} +1 -1
  2. package/dist/cjs/{filepond-plugin-file-poster-D19muTiF.js → filepond-plugin-file-poster-CwwiKG-i.js} +1 -1
  3. package/dist/cjs/{filepond-plugin-file-validate-size-DbAdnWu5.js → filepond-plugin-file-validate-size-CeCrtqy9.js} +1 -1
  4. package/dist/cjs/{filepond-plugin-file-validate-type-avp8hUs1.js → filepond-plugin-file-validate-type-Ch0TrXhi.js} +1 -1
  5. package/dist/cjs/{filepond-plugin-image-edit-Y4pS7CAo.js → filepond-plugin-image-edit-JX_9deVo.js} +1 -1
  6. package/dist/cjs/{filepond-plugin-image-exif-orientation-C5ctyI6s.js → filepond-plugin-image-exif-orientation-DTCbWfw1.js} +1 -1
  7. package/dist/cjs/{filepond-plugin-image-preview-C9Cy8UAv.js → filepond-plugin-image-preview-DC9e7eeA.js} +1 -1
  8. package/dist/cjs/{functions-D4bL1wnj.js → functions-BNQzf0OA.js} +1 -1
  9. package/dist/cjs/{index-C_qxP6pD.js → index-D5rto5Fh.js} +14 -14
  10. package/dist/cjs/{index-CyG4y8gY.js → index-qIYSQcOD.js} +1 -1
  11. package/dist/cjs/loader.cjs.js +2 -2
  12. package/dist/cjs/salla-accordion-body_2.cjs.entry.js +1 -1
  13. package/dist/cjs/salla-accordion_6.cjs.entry.js +1 -1
  14. package/dist/cjs/salla-add-product-button_5.cjs.entry.js +1 -1
  15. package/dist/cjs/salla-advertisement.cjs.entry.js +1 -1
  16. package/dist/cjs/salla-alert_2.cjs.entry.js +1 -1
  17. package/dist/cjs/salla-app-install-alert.cjs.entry.js +1 -1
  18. package/dist/cjs/salla-apps-icons.cjs.entry.js +1 -1
  19. package/dist/cjs/salla-badge.cjs.entry.js +1 -1
  20. package/dist/cjs/salla-booking-field_7.cjs.entry.js +10 -10
  21. package/dist/cjs/salla-bullet-delivery_2.cjs.entry.js +1 -1
  22. package/dist/cjs/salla-cart-coupons.cjs.entry.js +1 -1
  23. package/dist/cjs/salla-cart-item-offers_2.cjs.entry.js +1 -1
  24. package/dist/cjs/salla-cart-summary-card.cjs.entry.js +1 -1
  25. package/dist/cjs/salla-cashback-banner.cjs.entry.js +1 -1
  26. package/dist/cjs/salla-comment-factors.cjs.entry.js +1 -1
  27. package/dist/cjs/salla-comment-form_8.cjs.entry.js +1 -1
  28. package/dist/cjs/salla-conditional-offer.cjs.entry.js +1 -1
  29. package/dist/cjs/salla-contacts.cjs.entry.js +1 -1
  30. package/dist/cjs/salla-cookies-bar.cjs.entry.js +1 -1
  31. package/dist/cjs/{salla-count-down.cjs.entry.js → salla-count-down_2.cjs.entry.js} +204 -1
  32. package/dist/cjs/salla-custom-fields.cjs.entry.js +1 -1
  33. package/dist/cjs/salla-delivery-promise.cjs.entry.js +1 -1
  34. package/dist/cjs/salla-edit-order-button.cjs.entry.js +1 -1
  35. package/dist/cjs/salla-filters-widget.cjs.entry.js +1 -1
  36. package/dist/cjs/salla-filters.cjs.entry.js +1 -1
  37. package/dist/cjs/salla-fulfillment-methods.cjs.entry.js +1 -1
  38. package/dist/cjs/salla-gifting.cjs.entry.js +1 -1
  39. package/dist/cjs/salla-hook.cjs.entry.js +1 -1
  40. package/dist/cjs/salla-infinite-scroll.cjs.entry.js +1 -1
  41. package/dist/cjs/salla-installment.cjs.entry.js +1 -1
  42. package/dist/cjs/salla-list-tile.cjs.entry.js +1 -1
  43. package/dist/cjs/salla-localization-modal.cjs.entry.js +1 -1
  44. package/dist/cjs/salla-login-modal.cjs.entry.js +1 -1
  45. package/dist/cjs/salla-loyalty-banner.cjs.entry.js +3 -3
  46. package/dist/cjs/{salla-reward-action_4.cjs.entry.js → salla-loyalty-exchange-product-card_5.cjs.entry.js} +63 -21
  47. package/dist/cjs/salla-loyalty-hero_2.cjs.entry.js +11 -11
  48. package/dist/cjs/salla-loyalty-panel.cjs.entry.js +6 -5
  49. package/dist/cjs/salla-loyalty-points-banner.cjs.entry.js +1 -1
  50. package/dist/cjs/salla-loyalty-points-history.cjs.entry.js +1 -1
  51. package/dist/cjs/salla-loyalty-prize-item.cjs.entry.js +1 -1
  52. package/dist/cjs/salla-loyalty-program.cjs.entry.js +6 -5
  53. package/dist/cjs/salla-loyalty-reward.cjs.entry.js +5 -5
  54. package/dist/cjs/salla-loyalty.cjs.entry.js +1 -1
  55. package/dist/cjs/salla-maintenance-alert.cjs.entry.js +1 -1
  56. package/dist/cjs/salla-map_2.cjs.entry.js +1 -1
  57. package/dist/cjs/salla-menu.cjs.entry.js +1 -1
  58. package/dist/cjs/salla-metadata.cjs.entry.js +1 -1
  59. package/dist/cjs/salla-multiple-bundle-product-cart_2.cjs.entry.js +1 -1
  60. package/dist/cjs/salla-multiple-bundle-product-options-modal_2.cjs.entry.js +1 -1
  61. package/dist/cjs/salla-multiple-bundle-product.cjs.entry.js +1 -1
  62. package/dist/cjs/salla-next-order-coupon.cjs.entry.js +1 -1
  63. package/dist/cjs/salla-notification-item.cjs.entry.js +1 -1
  64. package/dist/cjs/salla-notifications.cjs.entry.js +1 -1
  65. package/dist/cjs/salla-offer-modal.cjs.entry.js +1 -1
  66. package/dist/cjs/salla-offer.cjs.entry.js +1 -1
  67. package/dist/cjs/salla-order-branch.cjs.entry.js +1 -1
  68. package/dist/cjs/salla-order-cancel.cjs.entry.js +1 -1
  69. package/dist/cjs/salla-order-details-multiple-bundle-product.cjs.entry.js +1 -1
  70. package/dist/cjs/salla-order-details-options.cjs.entry.js +1 -1
  71. package/dist/cjs/salla-order-details.cjs.entry.js +1 -1
  72. package/dist/cjs/salla-order-edit-item.cjs.entry.js +1 -1
  73. package/dist/cjs/salla-order-edit-product-card.cjs.entry.js +1 -1
  74. package/dist/cjs/salla-order-edit.cjs.entry.js +1 -1
  75. package/dist/cjs/salla-order-summary.cjs.entry.js +1 -1
  76. package/dist/cjs/salla-order-totals-card.cjs.entry.js +1 -1
  77. package/dist/cjs/salla-orders.cjs.entry.js +1 -1
  78. package/dist/cjs/salla-payments.cjs.entry.js +1 -1
  79. package/dist/cjs/salla-placeholder.cjs.entry.js +1 -1
  80. package/dist/cjs/salla-price-range.cjs.entry.js +1 -1
  81. package/dist/cjs/salla-product-card-embed.cjs.entry.js +1 -1
  82. package/dist/cjs/{salla-order-options-modal_3.cjs.entry.js → salla-product-card_2.cjs.entry.js} +1 -204
  83. package/dist/cjs/salla-product-size-guide.cjs.entry.js +1 -1
  84. package/dist/cjs/salla-products-list.cjs.entry.js +1 -1
  85. package/dist/cjs/salla-quick-order.cjs.entry.js +1 -1
  86. package/dist/cjs/salla-rating-modal-v2.cjs.entry.js +34 -4
  87. package/dist/cjs/salla-rating-modal.cjs.entry.js +34 -9
  88. package/dist/cjs/salla-review-factors-tags.cjs.entry.js +1 -1
  89. package/dist/cjs/salla-scopes.cjs.entry.js +1 -1
  90. package/dist/cjs/salla-search.cjs.entry.js +1 -1
  91. package/dist/cjs/salla-skeleton.cjs.entry.js +1 -1
  92. package/dist/cjs/salla-slider.cjs.entry.js +1 -1
  93. package/dist/cjs/salla-social-share.cjs.entry.js +1 -1
  94. package/dist/cjs/salla-social.cjs.entry.js +1 -1
  95. package/dist/cjs/salla-tab-content_3.cjs.entry.js +1 -1
  96. package/dist/cjs/salla-tiered-offer.cjs.entry.js +1 -1
  97. package/dist/cjs/salla-tooltip.cjs.entry.js +1 -1
  98. package/dist/cjs/salla-trust-badges.cjs.entry.js +1 -1
  99. package/dist/cjs/salla-user-menu.cjs.entry.js +1 -1
  100. package/dist/cjs/salla-user-profile.cjs.entry.js +1 -1
  101. package/dist/cjs/salla-user-settings.cjs.entry.js +1 -1
  102. package/dist/cjs/salla-verify.cjs.entry.js +1 -1
  103. package/dist/cjs/salla-wallet.cjs.entry.js +1 -1
  104. package/dist/cjs/salla-wishlist-actions.cjs.entry.js +1 -1
  105. package/dist/cjs/{tracked-promise-B35EnX6x.js → tracked-promise-BIhk39hN.js} +1 -1
  106. package/dist/cjs/twilight.cjs.js +2 -2
  107. package/dist/cjs/{vanilla-picker-BofbsHQq.js → vanilla-picker-DjtnMq2y.js} +1 -1
  108. package/dist/collection/collection-manifest.json +1 -0
  109. package/dist/collection/components/salla-loyalty-program/salla-loyalty-exchange-product-card.js +72 -0
  110. package/dist/collection/components/salla-loyalty-program/salla-loyalty-hero.js +3 -3
  111. package/dist/collection/components/salla-loyalty-program/salla-loyalty-panel.js +4 -2
  112. package/dist/collection/components/salla-loyalty-program/salla-loyalty-point.js +4 -4
  113. package/dist/collection/components/salla-loyalty-program/salla-loyalty-program.css +48 -0
  114. package/dist/collection/components/salla-loyalty-program/salla-loyalty-program.js +3 -1
  115. package/dist/collection/components/salla-loyalty-program/salla-loyalty-reward.js +2 -2
  116. package/dist/collection/components/salla-loyalty-program/salla-reward-action.js +1 -4
  117. package/dist/collection/components/salla-loyalty-program/salla-reward-card.js +1 -1
  118. package/dist/collection/components/salla-loyalty-program/salla-reward-details.js +58 -5
  119. package/dist/collection/components/salla-loyalty-program/salla-reward-exchange.js +1 -5
  120. package/dist/collection/components/salla-rating-modal/salla-rating-modal-v2.js +34 -3
  121. package/dist/collection/components/salla-rating-modal/salla-rating-modal.css +32 -0
  122. package/dist/collection/components/salla-rating-modal/salla-rating-modal.js +33 -7
  123. package/dist/components/index.js +2 -2
  124. package/dist/components/salla-loyalty-banner.js +8 -2
  125. package/dist/components/salla-loyalty-exchange-product-card.d.ts +11 -0
  126. package/dist/components/salla-loyalty-exchange-product-card.js +9 -0
  127. package/dist/components/salla-loyalty-exchange-product-card2.js +151 -0
  128. package/dist/components/salla-loyalty-hero2.js +4 -4
  129. package/dist/components/salla-loyalty-panel.js +33 -25
  130. package/dist/components/salla-loyalty-point2.js +5 -5
  131. package/dist/components/salla-loyalty-program.js +30 -22
  132. package/dist/components/salla-loyalty-reward.js +3 -3
  133. package/dist/components/salla-rating-modal-v22.js +34 -3
  134. package/dist/components/salla-rating-modal.js +34 -8
  135. package/dist/components/salla-reward-action2.js +9 -6
  136. package/dist/components/salla-reward-card2.js +2 -2
  137. package/dist/components/salla-reward-details2.js +63 -27
  138. package/dist/components/salla-reward-exchange2.js +5 -9
  139. package/dist/esm/{filepond-Coz90MV8.js → filepond-C3XP8jm1.js} +1 -1
  140. package/dist/esm/{filepond-plugin-file-poster-CiMXS6O6.js → filepond-plugin-file-poster-CDER34Vh.js} +1 -1
  141. package/dist/esm/{filepond-plugin-file-validate-size-DycwNhLB.js → filepond-plugin-file-validate-size-B8vg8-uq.js} +1 -1
  142. package/dist/esm/{filepond-plugin-file-validate-type-BTWmt4Mh.js → filepond-plugin-file-validate-type-CQtYu4Am.js} +1 -1
  143. package/dist/esm/{filepond-plugin-image-edit-DY5Ti-2K.js → filepond-plugin-image-edit-Dde4YKRv.js} +1 -1
  144. package/dist/esm/{filepond-plugin-image-exif-orientation-BxxwFT1Z.js → filepond-plugin-image-exif-orientation-CUBiG0lK.js} +1 -1
  145. package/dist/esm/{filepond-plugin-image-preview-CjBmoCCR.js → filepond-plugin-image-preview-B1GpYhTn.js} +1 -1
  146. package/dist/esm/{functions-DhhgGPcx.js → functions-B2dJX7jB.js} +1 -1
  147. package/dist/esm/{index-DGH40_w6.js → index-BPOLfGlq.js} +14 -14
  148. package/dist/esm/{index-9AaLpeq_.js → index-Ya4_ataG.js} +1 -1
  149. package/dist/esm/loader.js +3 -3
  150. package/dist/esm/salla-accordion-body_2.entry.js +1 -1
  151. package/dist/esm/salla-accordion_6.entry.js +1 -1
  152. package/dist/esm/salla-add-product-button_5.entry.js +1 -1
  153. package/dist/esm/salla-advertisement.entry.js +1 -1
  154. package/dist/esm/salla-alert_2.entry.js +1 -1
  155. package/dist/esm/salla-app-install-alert.entry.js +1 -1
  156. package/dist/esm/salla-apps-icons.entry.js +1 -1
  157. package/dist/esm/salla-badge.entry.js +1 -1
  158. package/dist/esm/salla-booking-field_7.entry.js +10 -10
  159. package/dist/esm/salla-bullet-delivery_2.entry.js +1 -1
  160. package/dist/esm/salla-cart-coupons.entry.js +1 -1
  161. package/dist/esm/salla-cart-item-offers_2.entry.js +1 -1
  162. package/dist/esm/salla-cart-summary-card.entry.js +1 -1
  163. package/dist/esm/salla-cashback-banner.entry.js +1 -1
  164. package/dist/esm/salla-comment-factors.entry.js +1 -1
  165. package/dist/esm/salla-comment-form_8.entry.js +1 -1
  166. package/dist/esm/salla-conditional-offer.entry.js +1 -1
  167. package/dist/esm/salla-contacts.entry.js +1 -1
  168. package/dist/esm/salla-cookies-bar.entry.js +1 -1
  169. package/dist/esm/{salla-count-down.entry.js → salla-count-down_2.entry.js} +204 -2
  170. package/dist/esm/salla-custom-fields.entry.js +1 -1
  171. package/dist/esm/salla-delivery-promise.entry.js +1 -1
  172. package/dist/esm/salla-edit-order-button.entry.js +1 -1
  173. package/dist/esm/salla-filters-widget.entry.js +1 -1
  174. package/dist/esm/salla-filters.entry.js +1 -1
  175. package/dist/esm/salla-fulfillment-methods.entry.js +1 -1
  176. package/dist/esm/salla-gifting.entry.js +1 -1
  177. package/dist/esm/salla-hook.entry.js +1 -1
  178. package/dist/esm/salla-infinite-scroll.entry.js +1 -1
  179. package/dist/esm/salla-installment.entry.js +1 -1
  180. package/dist/esm/salla-list-tile.entry.js +1 -1
  181. package/dist/esm/salla-localization-modal.entry.js +1 -1
  182. package/dist/esm/salla-login-modal.entry.js +1 -1
  183. package/dist/esm/salla-loyalty-banner.entry.js +3 -3
  184. package/dist/esm/{salla-reward-action_4.entry.js → salla-loyalty-exchange-product-card_5.entry.js} +63 -22
  185. package/dist/esm/salla-loyalty-hero_2.entry.js +11 -11
  186. package/dist/esm/salla-loyalty-panel.entry.js +6 -5
  187. package/dist/esm/salla-loyalty-points-banner.entry.js +1 -1
  188. package/dist/esm/salla-loyalty-points-history.entry.js +1 -1
  189. package/dist/esm/salla-loyalty-prize-item.entry.js +1 -1
  190. package/dist/esm/salla-loyalty-program.entry.js +6 -5
  191. package/dist/esm/salla-loyalty-reward.entry.js +5 -5
  192. package/dist/esm/salla-loyalty.entry.js +1 -1
  193. package/dist/esm/salla-maintenance-alert.entry.js +1 -1
  194. package/dist/esm/salla-map_2.entry.js +1 -1
  195. package/dist/esm/salla-menu.entry.js +1 -1
  196. package/dist/esm/salla-metadata.entry.js +1 -1
  197. package/dist/esm/salla-multiple-bundle-product-cart_2.entry.js +1 -1
  198. package/dist/esm/salla-multiple-bundle-product-options-modal_2.entry.js +1 -1
  199. package/dist/esm/salla-multiple-bundle-product.entry.js +1 -1
  200. package/dist/esm/salla-next-order-coupon.entry.js +1 -1
  201. package/dist/esm/salla-notification-item.entry.js +1 -1
  202. package/dist/esm/salla-notifications.entry.js +1 -1
  203. package/dist/esm/salla-offer-modal.entry.js +1 -1
  204. package/dist/esm/salla-offer.entry.js +1 -1
  205. package/dist/esm/salla-order-branch.entry.js +1 -1
  206. package/dist/esm/salla-order-cancel.entry.js +1 -1
  207. package/dist/esm/salla-order-details-multiple-bundle-product.entry.js +1 -1
  208. package/dist/esm/salla-order-details-options.entry.js +1 -1
  209. package/dist/esm/salla-order-details.entry.js +1 -1
  210. package/dist/esm/salla-order-edit-item.entry.js +1 -1
  211. package/dist/esm/salla-order-edit-product-card.entry.js +1 -1
  212. package/dist/esm/salla-order-edit.entry.js +1 -1
  213. package/dist/esm/salla-order-summary.entry.js +1 -1
  214. package/dist/esm/salla-order-totals-card.entry.js +1 -1
  215. package/dist/esm/salla-orders.entry.js +1 -1
  216. package/dist/esm/salla-payments.entry.js +1 -1
  217. package/dist/esm/salla-placeholder.entry.js +1 -1
  218. package/dist/esm/salla-price-range.entry.js +1 -1
  219. package/dist/esm/salla-product-card-embed.entry.js +1 -1
  220. package/dist/esm/{salla-order-options-modal_3.entry.js → salla-product-card_2.entry.js} +2 -204
  221. package/dist/esm/salla-product-size-guide.entry.js +1 -1
  222. package/dist/esm/salla-products-list.entry.js +1 -1
  223. package/dist/esm/salla-quick-order.entry.js +1 -1
  224. package/dist/esm/salla-rating-modal-v2.entry.js +34 -4
  225. package/dist/esm/salla-rating-modal.entry.js +34 -9
  226. package/dist/esm/salla-review-factors-tags.entry.js +1 -1
  227. package/dist/esm/salla-scopes.entry.js +1 -1
  228. package/dist/esm/salla-search.entry.js +1 -1
  229. package/dist/esm/salla-skeleton.entry.js +1 -1
  230. package/dist/esm/salla-slider.entry.js +1 -1
  231. package/dist/esm/salla-social-share.entry.js +1 -1
  232. package/dist/esm/salla-social.entry.js +1 -1
  233. package/dist/esm/salla-tab-content_3.entry.js +1 -1
  234. package/dist/esm/salla-tiered-offer.entry.js +1 -1
  235. package/dist/esm/salla-tooltip.entry.js +1 -1
  236. package/dist/esm/salla-trust-badges.entry.js +1 -1
  237. package/dist/esm/salla-user-menu.entry.js +1 -1
  238. package/dist/esm/salla-user-profile.entry.js +1 -1
  239. package/dist/esm/salla-user-settings.entry.js +1 -1
  240. package/dist/esm/salla-verify.entry.js +1 -1
  241. package/dist/esm/salla-wallet.entry.js +1 -1
  242. package/dist/esm/salla-wishlist-actions.entry.js +1 -1
  243. package/dist/esm/{tracked-promise-ILCl5q9c.js → tracked-promise-CfALRKPO.js} +1 -1
  244. package/dist/esm/twilight.js +3 -3
  245. package/dist/esm/{vanilla-picker-CXWkB9Rj.js → vanilla-picker-E0YuxtRq.js} +1 -1
  246. package/dist/twilight/{p-0ab66850.entry.js → p-111b12b2.entry.js} +1 -1
  247. package/dist/twilight/{p-280b577d.entry.js → p-11d16ea6.entry.js} +1 -1
  248. package/dist/twilight/{p-6c9462be.entry.js → p-15d6eb3d.entry.js} +1 -1
  249. package/dist/twilight/p-172d2910.entry.js +4 -0
  250. package/dist/twilight/{p-d2706f82.entry.js → p-1b2d51ff.entry.js} +1 -1
  251. package/dist/twilight/{p-67a110ca.entry.js → p-1b807a9e.entry.js} +1 -1
  252. package/dist/twilight/{p-a65070ba.entry.js → p-1cecee41.entry.js} +1 -1
  253. package/dist/twilight/{p-be77d488.entry.js → p-20a9fa11.entry.js} +1 -1
  254. package/dist/twilight/{p-835a102e.entry.js → p-23a0f9d3.entry.js} +1 -1
  255. package/dist/twilight/{p-7225f304.entry.js → p-27010b1e.entry.js} +1 -1
  256. package/dist/twilight/{p-c3c0eafb.entry.js → p-2929495e.entry.js} +1 -1
  257. package/dist/twilight/{p-204f6275.entry.js → p-2af31dd1.entry.js} +1 -1
  258. package/dist/twilight/{p-a30673d8.entry.js → p-310b4a53.entry.js} +1 -1
  259. package/dist/twilight/{p-ff572f0c.entry.js → p-317ac575.entry.js} +1 -1
  260. package/dist/twilight/{p-67636846.entry.js → p-31ed558a.entry.js} +1 -1
  261. package/dist/twilight/p-32392cf3.entry.js +4 -0
  262. package/dist/twilight/{p-0a1e3675.entry.js → p-33dd5133.entry.js} +1 -1
  263. package/dist/twilight/{p-e0096a71.entry.js → p-381676b5.entry.js} +1 -1
  264. package/dist/twilight/{p-246ff1db.entry.js → p-397e0798.entry.js} +1 -1
  265. package/dist/twilight/{p-6f89ecd5.entry.js → p-39d11d60.entry.js} +1 -1
  266. package/dist/twilight/{p-f49f7906.entry.js → p-3b0a60fa.entry.js} +1 -1
  267. package/dist/twilight/{p-9ae8d5cc.entry.js → p-3bd795f0.entry.js} +1 -1
  268. package/dist/twilight/{p-051cf8e8.entry.js → p-3d4b0d93.entry.js} +1 -1
  269. package/dist/twilight/{p-fe2dc707.entry.js → p-3e726a15.entry.js} +1 -1
  270. package/dist/twilight/{p-cd3a98b4.entry.js → p-4204adb8.entry.js} +1 -1
  271. package/dist/twilight/{p-6a3e5797.entry.js → p-45948907.entry.js} +1 -1
  272. package/dist/twilight/p-4f2e7ce7.entry.js +4 -0
  273. package/dist/twilight/{p-5d642891.entry.js → p-5671f508.entry.js} +1 -1
  274. package/dist/twilight/{p-f0483d2f.entry.js → p-5ceefb15.entry.js} +1 -1
  275. package/dist/twilight/{p-2b8d6b5c.entry.js → p-5d818495.entry.js} +1 -1
  276. package/dist/twilight/{p-0d012154.entry.js → p-5e23e49c.entry.js} +1 -1
  277. package/dist/twilight/{p-e7ba206e.entry.js → p-61d3bbc8.entry.js} +1 -1
  278. package/dist/twilight/{p-b291c768.entry.js → p-62fb7e9a.entry.js} +1 -1
  279. package/dist/twilight/{p-f888055e.entry.js → p-633a5ed7.entry.js} +1 -1
  280. package/dist/twilight/{p-fb460b15.entry.js → p-63908cf5.entry.js} +1 -1
  281. package/dist/twilight/{p-5eeda026.entry.js → p-6981573a.entry.js} +1 -1
  282. package/dist/twilight/{p-8b775260.entry.js → p-6a44a9db.entry.js} +1 -1
  283. package/dist/twilight/{p-55150c7f.entry.js → p-6d15b4ec.entry.js} +1 -1
  284. package/dist/twilight/{p-acd71b9c.entry.js → p-74386e55.entry.js} +1 -1
  285. package/dist/twilight/{p-03e5d981.entry.js → p-76f8b335.entry.js} +1 -1
  286. package/dist/twilight/p-79b67593.entry.js +4 -0
  287. package/dist/twilight/{p-daff5fee.entry.js → p-7bef3130.entry.js} +1 -1
  288. package/dist/twilight/{p-f3832e61.entry.js → p-847fcbbf.entry.js} +1 -1
  289. package/dist/twilight/{p-8f9578ea.entry.js → p-84986142.entry.js} +1 -1
  290. package/dist/twilight/{p-94e082e5.entry.js → p-88bcb450.entry.js} +1 -1
  291. package/dist/twilight/{p-811f7253.entry.js → p-896b5880.entry.js} +1 -1
  292. package/dist/twilight/{p-0d3f0c5e.entry.js → p-8b1c2efb.entry.js} +1 -1
  293. package/dist/twilight/{p-a971eb6e.entry.js → p-91ed85fa.entry.js} +1 -1
  294. package/dist/twilight/{p-060cb433.entry.js → p-93f0117b.entry.js} +1 -1
  295. package/dist/twilight/{p-f0ba85ef.entry.js → p-940265b8.entry.js} +1 -1
  296. package/dist/twilight/{p-cfc04f03.entry.js → p-94dd1c95.entry.js} +1 -1
  297. package/dist/twilight/{p-3c315245.entry.js → p-99bc3057.entry.js} +1 -1
  298. package/dist/twilight/{p-cc85cbb6.entry.js → p-9a3de1d3.entry.js} +1 -1
  299. package/dist/twilight/p-9b10bc50.entry.js +4 -0
  300. package/dist/twilight/{p-DGH40_w6.js → p-BPOLfGlq.js} +1 -1
  301. package/dist/twilight/{p-Z-0FpgUH.js → p-C2mMQUaR.js} +2 -2
  302. package/dist/twilight/{p-hlvyyBTt.js → p-CTVX-G0K.js} +1 -1
  303. package/dist/twilight/{p-CRL06FLf.js → p-Cm855HOG.js} +1 -1
  304. package/dist/twilight/{p-CswSlMMW.js → p-CqJ_OQmC.js} +1 -1
  305. package/dist/twilight/{p-ulwdkVD6.js → p-CrMqpxVf.js} +1 -1
  306. package/dist/twilight/{p-CRJyselG.js → p-Dag1-FEn.js} +1 -1
  307. package/dist/twilight/{p-D_66TtzK.js → p-DbXwwuth.js} +1 -1
  308. package/dist/twilight/{p-DxUIn207.js → p-Dmvcz29r.js} +1 -1
  309. package/dist/twilight/{p-CXgH1qPi.js → p-KcsFKraQ.js} +1 -1
  310. package/dist/twilight/{p-DMPBYOzv.js → p-_iz5Z_GI.js} +1 -1
  311. package/dist/twilight/{p-d642b334.entry.js → p-a1dc71b9.entry.js} +1 -1
  312. package/dist/twilight/{p-8ec5ca1a.entry.js → p-a731b254.entry.js} +1 -1
  313. package/dist/twilight/{p-d132c3a1.entry.js → p-ac0dedbd.entry.js} +1 -1
  314. package/dist/twilight/{p-2ede3e52.entry.js → p-ad8bb012.entry.js} +1 -1
  315. package/dist/twilight/{p-19bc5aa0.entry.js → p-afd586a0.entry.js} +1 -1
  316. package/dist/twilight/{p-befbb594.entry.js → p-b17f3ab5.entry.js} +1 -1
  317. package/dist/twilight/p-b1c8aea6.entry.js +4 -0
  318. package/dist/twilight/{p-58fd42b9.entry.js → p-b3899e53.entry.js} +1 -1
  319. package/dist/twilight/{p-1a299dab.entry.js → p-b46df798.entry.js} +1 -1
  320. package/dist/twilight/{p-8509e67b.entry.js → p-bc03c4dd.entry.js} +1 -1
  321. package/dist/twilight/{p-a397eadf.entry.js → p-bc4e3609.entry.js} +1 -1
  322. package/dist/twilight/{p-902bab33.entry.js → p-c1290a97.entry.js} +1 -1
  323. package/dist/twilight/{p-04d25025.entry.js → p-c8080b3e.entry.js} +1 -1
  324. package/dist/twilight/{p-8e87f47b.entry.js → p-c915af20.entry.js} +1 -1
  325. package/dist/twilight/{p-3b962591.entry.js → p-ca2435c0.entry.js} +1 -1
  326. package/dist/twilight/{p-e36a05c8.entry.js → p-d26db462.entry.js} +1 -1
  327. package/dist/twilight/{p-843c1499.entry.js → p-d433feae.entry.js} +1 -1
  328. package/dist/twilight/{p-3996a786.entry.js → p-d495c11f.entry.js} +1 -1
  329. package/dist/twilight/p-d72ea99d.entry.js +4 -0
  330. package/dist/twilight/p-d79de49b.entry.js +4 -0
  331. package/dist/twilight/{p-2bd896e8.entry.js → p-dcc21c13.entry.js} +1 -1
  332. package/dist/twilight/{p-206a4605.entry.js → p-e0b5c304.entry.js} +1 -1
  333. package/dist/twilight/{p-9d00311a.entry.js → p-e1ade50f.entry.js} +1 -1
  334. package/dist/twilight/{p-b7ad635b.entry.js → p-e3d8ca11.entry.js} +1 -1
  335. package/dist/twilight/{p-d4bfca23.entry.js → p-e5d401e6.entry.js} +1 -1
  336. package/dist/twilight/{p-7bf35ca7.entry.js → p-e70e2d64.entry.js} +1 -1
  337. package/dist/twilight/{p-38b57477.entry.js → p-ea3ca9b8.entry.js} +1 -1
  338. package/dist/twilight/p-eafcd660.entry.js +4 -0
  339. package/dist/twilight/{p-420cd3bc.entry.js → p-eb06d1c3.entry.js} +1 -1
  340. package/dist/twilight/{p-59d4fd28.entry.js → p-ec6c198d.entry.js} +1 -1
  341. package/dist/twilight/{p-85d51539.entry.js → p-ed19a207.entry.js} +1 -1
  342. package/dist/twilight/{p-7fc61c4c.entry.js → p-f28e7f54.entry.js} +1 -1
  343. package/dist/twilight/p-f319047e.entry.js +4 -0
  344. package/dist/twilight/{p-546c9f58.entry.js → p-f6a45b26.entry.js} +1 -1
  345. package/dist/twilight/{p-dad28a17.entry.js → p-f98986f7.entry.js} +1 -1
  346. package/dist/twilight/{p-5b2d05b7.entry.js → p-fb5ff81c.entry.js} +1 -1
  347. package/dist/twilight/{p-09d7aa92.entry.js → p-fb61b829.entry.js} +1 -1
  348. package/dist/twilight/{p-ffe0dc1e.entry.js → p-fda54504.entry.js} +1 -1
  349. package/dist/twilight/{p-6d17cc72.entry.js → p-fe130150.entry.js} +1 -1
  350. package/dist/twilight/{p-DqVd28X3.js → p-xxhuj_Ip.js} +1 -1
  351. package/dist/twilight/twilight.esm.js +1 -1
  352. package/dist/types/components/salla-loyalty-program/salla-loyalty-exchange-product-card.d.ts +10 -0
  353. package/dist/types/components/salla-loyalty-program/salla-loyalty-panel.d.ts +1 -0
  354. package/dist/types/components/salla-loyalty-program/salla-loyalty-program.d.ts +1 -0
  355. package/dist/types/components/salla-loyalty-program/salla-reward-details.d.ts +9 -0
  356. package/dist/types/components/salla-rating-modal/salla-rating-modal-v2.d.ts +4 -0
  357. package/dist/types/components/salla-rating-modal/salla-rating-modal.d.ts +4 -0
  358. package/dist/types/components.d.ts +33 -0
  359. package/package.json +5 -5
  360. package/dist/twilight/p-180f51ef.entry.js +0 -4
  361. package/dist/twilight/p-55ef75cb.entry.js +0 -4
  362. package/dist/twilight/p-8e84cce0.entry.js +0 -4
  363. package/dist/twilight/p-a2a5a087.entry.js +0 -4
  364. package/dist/twilight/p-ad33426d.entry.js +0 -4
  365. package/dist/twilight/p-bc46608a.entry.js +0 -4
  366. package/dist/twilight/p-bdc874b8.entry.js +0 -4
  367. package/dist/twilight/p-e8e5906a.entry.js +0 -4
  368. package/dist/twilight/p-ee53cba1.entry.js +0 -4
  369. package/dist/twilight/p-f9a495bf.entry.js +0 -4
@@ -23,7 +23,7 @@ var ShippingFast = `<!-- Generated by IcoMoon.io -->
23
23
  </svg>
24
24
  `;
25
25
 
26
- const sallaRatingModalCss = ".s-rating-modal-product-details{padding-bottom:0.5rem}.s-rating-modal-comment{margin-top:0.35rem}.s-rating-modal-product{margin-bottom:1rem}.s-rating-modal-product-img{display:block;width:100%;height:100%;object-fit:cover}.s-rating-modal-product-title{font-size:0.95rem;font-weight:600;line-height:1.5;margin:0}.s-rating-modal-stars-product{margin-top:0.5rem}.s-rating-modal-product-details-main{display:flex;align-items:center;margin-bottom:0.5rem;padding-bottom:0;border-bottom:0}.s-rating-modal-product-info-row{display:flex;align-items:center;gap:0.6rem;margin-bottom:0.5rem;padding-bottom:0;border-bottom:0}.s-rating-modal-product-main-review{width:100%;text-align:right}.s-rating-modal-product-rating-rows{display:grid;gap:0.45rem;margin:0.2rem 0 0.7rem}.s-rating-modal-product-rating-row{display:flex;align-items:center;justify-content:space-between;gap:0.75rem;min-height:2rem}.s-rating-modal-product-rating-row salla-rating-stars{flex-shrink:0}.s-rating-modal-product-rating-row .s-rating-stars-wrapper{align-items:center;min-height:1.75rem}.s-rating-modal-product-rating-row .s-rating-stars-label,.s-rating-modal-product-rating-row .s-rating-stars-label-without-tag{min-width:auto;min-height:1.25rem;line-height:1.25rem;font-size:0.8rem;color:#5b6470;white-space:nowrap;text-align:end;transition:opacity 0.15s ease}.s-rating-modal-product-rating-row .s-rating-stars-label--empty,.s-rating-modal-product-rating-row .s-rating-stars-label-without-tag--empty{opacity:0}.s-rating-modal-product-rating-row-main{margin-bottom:0.35rem;padding:0.5rem 0.6rem;border:1px solid #d1d5db;border-radius:0.45rem;background:transparent}.s-rating-modal-product-factor-name{color:#5b6470;font-size:0.9rem;line-height:1.25}.s-rating-modal-product-rating-row-main .s-rating-modal-product-factor-name{font-size:1rem;color:#5b6470}.s-rating-modal-product-factor-required{color:#f87171;margin-inline-start:0.2rem}.s-rating-modal-product-img-wrap{width:5rem;min-width:5rem;height:3.5rem;flex-shrink:0;overflow:hidden;border-radius:0.375rem;background:#f3f4f6}.s-rating-modal-uploader.is-opened{height:auto !important;opacity:1 !important;overflow:visible !important;pointer-events:auto !important;margin-bottom:1rem}";
26
+ const sallaRatingModalCss = ".s-rating-modal-product-details{padding-bottom:0.5rem}.s-rating-modal-comment{margin-top:0.35rem}.s-rating-modal-product{margin-bottom:1rem}.s-rating-modal-product-img{display:block;width:100%;height:100%;object-fit:cover}.s-rating-modal-product-title{font-size:0.95rem;font-weight:600;line-height:1.5;margin:0}.s-rating-modal-stars-product{margin-top:0.5rem}.s-rating-modal-loyalty-points-note-container{display:flex;align-items:center;gap:0.625rem;width:100%;margin-top:1.5rem;margin-bottom:0.75rem;padding:0.75rem;border-radius:0.5rem;background-color:#E6F4EA}.s-rating-modal-loyalty-points-note-icon{display:flex;flex-shrink:0;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;color:#1B7F5C}.s-rating-modal-loyalty-points-note-icon svg{width:1.5rem;height:1.5rem;fill:currentColor}.s-rating-modal-loyalty-points-note-text{flex:1;margin:0;font-size:0.875rem;line-height:1.25rem;color:#1f2937}.s-rating-modal-product-details-main{display:flex;align-items:center;margin-bottom:0.5rem;padding-bottom:0;border-bottom:0}.s-rating-modal-product-info-row{display:flex;align-items:center;gap:0.6rem;margin-bottom:0.5rem;padding-bottom:0;border-bottom:0}.s-rating-modal-product-main-review{width:100%;text-align:right}.s-rating-modal-product-rating-rows{display:grid;gap:0.45rem;margin:0.2rem 0 0.7rem}.s-rating-modal-product-rating-row{display:flex;align-items:center;justify-content:space-between;gap:0.75rem;min-height:2rem}.s-rating-modal-product-rating-row salla-rating-stars{flex-shrink:0}.s-rating-modal-product-rating-row .s-rating-stars-wrapper{align-items:center;min-height:1.75rem}.s-rating-modal-product-rating-row .s-rating-stars-label,.s-rating-modal-product-rating-row .s-rating-stars-label-without-tag{min-width:auto;min-height:1.25rem;line-height:1.25rem;font-size:0.8rem;color:#5b6470;white-space:nowrap;text-align:end;transition:opacity 0.15s ease}.s-rating-modal-product-rating-row .s-rating-stars-label--empty,.s-rating-modal-product-rating-row .s-rating-stars-label-without-tag--empty{opacity:0}.s-rating-modal-product-rating-row-main{margin-bottom:0.35rem;padding:0.5rem 0.6rem;border:1px solid #d1d5db;border-radius:0.45rem;background:transparent}.s-rating-modal-product-factor-name{color:#5b6470;font-size:0.9rem;line-height:1.25}.s-rating-modal-product-rating-row-main .s-rating-modal-product-factor-name{font-size:1rem;color:#5b6470}.s-rating-modal-product-factor-required{color:#f87171;margin-inline-start:0.2rem}.s-rating-modal-product-img-wrap{width:5rem;min-width:5rem;height:3.5rem;flex-shrink:0;overflow:hidden;border-radius:0.375rem;background:#f3f4f6}.s-rating-modal-uploader.is-opened{height:auto !important;opacity:1 !important;overflow:visible !important;pointer-events:auto !important;margin-bottom:1rem}";
27
27
 
28
28
  const SallaRatingModalV2 = /*@__PURE__*/ proxyCustomElement(class SallaRatingModalV2 extends HTMLElement {
29
29
  constructor() {
@@ -46,6 +46,7 @@ const SallaRatingModalV2 = /*@__PURE__*/ proxyCustomElement(class SallaRatingMod
46
46
  this.editItem = null;
47
47
  this.allowAttachImages = false;
48
48
  this.allowContactSupport = false;
49
+ this.loyaltyImageRatingPoints = 0;
49
50
  this.dragAndDropFilesLabel = salla.lang.get('common.uploader.drag_and_drop_files');
50
51
  this.contactSubjectLabel = salla.lang.get('pages.rating.contact_subject');
51
52
  this.editReviewLabel = salla.lang.get('pages.rating.edit_review');
@@ -60,6 +61,9 @@ const SallaRatingModalV2 = /*@__PURE__*/ proxyCustomElement(class SallaRatingMod
60
61
  this.contactUsLabel = salla.lang.get('blocks.footer.social');
61
62
  this.requiredFactorsLabel = salla.lang.get('pages.rating.rate_required_factors');
62
63
  this.overallProductRatingLabel = salla.lang.get('pages.rating.overall_product_rating');
64
+ this.loyaltyPointsForImagesLabel = salla.lang.get('pages.rating.loyalty_points_for_images', {
65
+ points: ':points',
66
+ });
63
67
  this.contentRefs = [];
64
68
  this.hiddenInputs = [];
65
69
  this.userFilledFactorKeys = {};
@@ -107,6 +111,8 @@ const SallaRatingModalV2 = /*@__PURE__*/ proxyCustomElement(class SallaRatingMod
107
111
  await setNestedAsync('en.trans', 'pages.rating.rate_required_factors', 'Please rate all required factors to complete your review.');
108
112
  await setNestedAsync('ar.trans', 'pages.rating.overall_product_rating', 'التقييم العام للمنتج');
109
113
  await setNestedAsync('en.trans', 'pages.rating.overall_product_rating', 'Overall product rating');
114
+ await setNestedAsync('ar.trans', 'pages.rating.loyalty_points_for_images', 'اكسب :points نقطة ولاء عند إضافة صور لتقييمك!');
115
+ await setNestedAsync('en.trans', 'pages.rating.loyalty_points_for_images', 'Earn :points loyalty points when adding photos to your review!');
110
116
  this.dragAndDropFilesLabel = salla.lang.get('common.uploader.drag_and_drop_files');
111
117
  this.allowedImagesTypesLabel = salla.lang.get('common.uploader.allowed_images_types');
112
118
  this.threeImagesMax = salla.lang.get('common.uploader.max_three_images');
@@ -120,6 +126,9 @@ const SallaRatingModalV2 = /*@__PURE__*/ proxyCustomElement(class SallaRatingMod
120
126
  this.confirmDeleteBtn = salla.lang.get('common.elements.confirm_delete');
121
127
  this.requiredFactorsLabel = salla.lang.get('pages.rating.rate_required_factors');
122
128
  this.overallProductRatingLabel = salla.lang.get('pages.rating.overall_product_rating');
129
+ this.loyaltyPointsForImagesLabel = salla.lang.get('pages.rating.loyalty_points_for_images', {
130
+ points: ':points',
131
+ });
123
132
  this.contact_body = (store, id, customer) => salla.lang.get('pages.rating.contact_body', { store, id, customer });
124
133
  };
125
134
  setTranslations();
@@ -287,6 +296,7 @@ const SallaRatingModalV2 = /*@__PURE__*/ proxyCustomElement(class SallaRatingMod
287
296
  this.order = res.data;
288
297
  this.productReviewFactors = await this.fetchAllProductReviewFactors(res.data);
289
298
  }))
299
+ .then(() => this.readyUpLoyaltyPoints())
290
300
  .then(() => this.modal.setTitle(`${salla.lang.get('pages.rating.rate_order')} <span class="unicode">(#${this.order.id})</span>`))
291
301
  .then(() => {
292
302
  // Initialize productImages for all products
@@ -317,6 +327,7 @@ const SallaRatingModalV2 = /*@__PURE__*/ proxyCustomElement(class SallaRatingMod
317
327
  this.editFeedbackId = params.feedback_id;
318
328
  try {
319
329
  await this.fetchEditItem(params.feedback_id);
330
+ await this.readyUpLoyaltyPoints();
320
331
  if (this.editType === 'product' && this.editItem?.product?.id) {
321
332
  await this.loadCustomerOrderForEdit();
322
333
  await this.ensureProductFactorsLoaded(this.editItem.product.id);
@@ -643,6 +654,24 @@ const SallaRatingModalV2 = /*@__PURE__*/ proxyCustomElement(class SallaRatingMod
643
654
  let lasName = salla.config.get('user.last_name') || salla.storage.get('user.last_name') || '';
644
655
  return `${firstName} ${lasName}`;
645
656
  }
657
+ async readyUpLoyaltyPoints() {
658
+ const featureEnabled = salla.loyalty?.isFeatureEnabled?.();
659
+ if (!featureEnabled) {
660
+ this.loyaltyImageRatingPoints = 0;
661
+ return;
662
+ }
663
+ const rating_product_points = salla.config.get('store.settings.rating.rating_product_points') || 0;
664
+ const rating_product_with_image_points = salla.config.get('store.settings.rating.rating_product_with_image_points') || 0;
665
+ this.loyaltyImageRatingPoints =
666
+ Number(rating_product_with_image_points) + Number(rating_product_points);
667
+ }
668
+ loyaltyPointsNote() {
669
+ if (!this.loyaltyImageRatingPoints || !this.loyaltyPointsForImagesLabel) {
670
+ return null;
671
+ }
672
+ const svgIcon = (h("svg", { width: "17", height: "17", viewBox: "0 0 17 17", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { d: "M10 0C13.6819 0 16.6667 2.98477 16.6667 6.66664C16.6667 9.37047 15.057 11.6984 12.7437 12.7444C11.6978 15.0575 9.3701 16.6666 6.66668 16.6666C2.98477 16.6666 0 13.6819 0 9.99998C0 7.29656 1.60918 4.96894 3.92195 3.92276C4.96827 1.60964 7.29618 0 10 0ZM6.66668 5C3.90524 5 1.66667 7.23856 1.66667 9.99998C1.66667 12.7614 3.90524 15 6.66668 15C9.4281 15 11.6667 12.7614 11.6667 9.99998C11.6667 7.23856 9.4281 5 6.66668 5ZM7.50002 5.83333V6.66664H9.16668V8.33331H5.83333C5.60322 8.33331 5.41667 8.51989 5.41667 8.74998C5.41667 8.95456 5.56407 9.12464 5.75844 9.15998L5.83333 9.16664H7.50002C8.6506 9.16664 9.58335 10.0994 9.58335 11.25C9.58335 12.4006 8.6506 13.3333 7.50002 13.3333V14.1666H5.83333V13.3333H4.16667V11.6666H7.50002C7.7301 11.6666 7.91668 11.4801 7.91668 11.25C7.91668 11.0455 7.76927 10.8753 7.57493 10.8401L7.50002 10.8333H5.83333C4.68274 10.8333 3.75 9.90056 3.75 8.74998C3.75 7.59939 4.68274 6.66664 5.83333 6.66664V5.83333H7.50002ZM10 1.66667C8.51377 1.66667 7.17893 2.31513 6.26313 3.34457C6.39704 3.33736 6.53138 3.33333 6.66668 3.33333C10.3486 3.33333 13.3333 6.3181 13.3333 9.99998C13.3333 10.1356 13.3293 10.2702 13.3213 10.4037C14.3513 9.48814 15 8.15314 15 6.66664C15 3.90524 12.7614 1.66667 10 1.66667Z", fill: "#008C56" })));
673
+ return (h("div", { class: "s-rating-modal-loyalty-points-note-container" }, h("span", { class: "s-rating-modal-loyalty-points-note-icon" }, svgIcon), h("p", { class: "s-rating-modal-loyalty-points-note-text" }, this.loyaltyPointsForImagesLabel.replace(':points', String(this.loyaltyImageRatingPoints)))));
674
+ }
646
675
  normalizeReviewFactorsPayload(payload) {
647
676
  const data = payload?.data ?? payload?.factors;
648
677
  if (!Array.isArray(data)) {
@@ -921,7 +950,7 @@ const SallaRatingModalV2 = /*@__PURE__*/ proxyCustomElement(class SallaRatingMod
921
950
  }, {});
922
951
  }
923
952
  renderProductStep(item, index) {
924
- return (h("section", { class: "s-rating-modal-step s-rating-modal-hidden", "data-type": "products", "data-product-id": item.product.id, key: item.product.id }, h("div", { class: "s-rating-modal-product" }, h("div", { class: "rating-outer-form", "data-stars-error": salla.lang.get('pages.rating.rate_product_stars') }, h("div", { class: "s-rating-modal-product-details" }, h("div", { class: "s-rating-modal-product-info-row" }, h("div", { class: "s-rating-modal-product-img-wrap" }, h("img", { src: item.product.thumbnail, alt: item.product.name, class: "s-rating-modal-product-img" })), h("h3", { class: "s-rating-modal-product-title" }, item.product.name)), this.renderProductReviewFactors(item.product.id, 0, { fieldPrefix: '' }), h("input", { type: "hidden", name: "product_id", value: item.product.id }), h("textarea", { placeholder: salla.lang.get('pages.rating.write_product_rate'), name: "comment", class: "s-rating-modal-comment" }), h("small", { class: "s-rating-modal-validation-msg" }))), this.allowAttachImages && (h("div", { class: "s-rating-modal-uploader is-opened", ref: el => (this.contentRefs[index] = el) }, h("salla-file-upload", { name: "image", maxFilesCount: this.MAX_UPLOAD_LIMIT, imagePreviewHeight: 117, "instant-upload": true, type: "feedback", payloadName: "files[]", id: `file-${item.product.id}`, title: item.product.name, allowMultiple: true, instantUpload: true, accept: "image/png, image/jpeg, image/jpg", url: salla.url.api('upload'), onUploaded: e => {
953
+ return (h("section", { class: "s-rating-modal-step s-rating-modal-hidden", "data-type": "products", "data-product-id": item.product.id, key: item.product.id }, h("div", { class: "s-rating-modal-product" }, this.allowAttachImages && this.loyaltyPointsNote(), h("div", { class: "rating-outer-form", "data-stars-error": salla.lang.get('pages.rating.rate_product_stars') }, h("div", { class: "s-rating-modal-product-details" }, h("div", { class: "s-rating-modal-product-info-row" }, h("div", { class: "s-rating-modal-product-img-wrap" }, h("img", { src: item.product.thumbnail, alt: item.product.name, class: "s-rating-modal-product-img" })), h("h3", { class: "s-rating-modal-product-title" }, item.product.name)), this.renderProductReviewFactors(item.product.id, 0, { fieldPrefix: '' }), h("input", { type: "hidden", name: "product_id", value: item.product.id }), h("textarea", { placeholder: salla.lang.get('pages.rating.write_product_rate'), name: "comment", class: "s-rating-modal-comment" }), h("small", { class: "s-rating-modal-validation-msg" }))), this.allowAttachImages && (h("div", { class: "s-rating-modal-uploader is-opened", ref: el => (this.contentRefs[index] = el) }, h("salla-file-upload", { name: "image", maxFilesCount: this.MAX_UPLOAD_LIMIT, imagePreviewHeight: 117, "instant-upload": true, type: "feedback", payloadName: "files[]", id: `file-${item.product.id}`, title: item.product.name, allowMultiple: true, instantUpload: true, accept: "image/png, image/jpeg, image/jpg", url: salla.url.api('upload'), onUploaded: e => {
925
954
  this.productImages = {
926
955
  ...this.productImages,
927
956
  [item.product.id]: [...(this.productImages[item.product.id] || []), e.detail],
@@ -997,6 +1026,7 @@ const SallaRatingModalV2 = /*@__PURE__*/ proxyCustomElement(class SallaRatingMod
997
1026
  this.currentIndex = 0;
998
1027
  this.submitted = [];
999
1028
  this.scheduleWizardSetup = false;
1029
+ this.loyaltyImageRatingPoints = 0;
1000
1030
  }
1001
1031
  getDeleteModal() {
1002
1032
  return (h("salla-modal", { ref: modal => (this.deleteModal = modal), width: "xs", onModalVisibilityChanged: isOpen => this.resetData(isOpen) }, h("div", { class: "s-rating-modal-delete-wrapper", ref: el => (this.body = el) }, h("h3", null, this.confirmDeletionLabel), h("p", null, this.areYouSureLabel), h("div", { class: "s-rating-modal-delete-actions" }, h("salla-button", { loaderPosition: "center", onClick: () => this.deleteReview() }, this.confirmDeleteBtn), h("salla-button", { color: "danger", fill: "outline", onClick: () => this.deleteModal.close() }, this.cancelLabel)))));
@@ -1012,7 +1042,7 @@ const SallaRatingModalV2 = /*@__PURE__*/ proxyCustomElement(class SallaRatingMod
1012
1042
  })));
1013
1043
  }
1014
1044
  getEditModal() {
1015
- return (h("salla-modal", { ref: modal => (this.editModal = modal), width: "md", onModalVisibilityChanged: isOpen => this.resetData(isOpen) }, h("div", { class: "s-rating-modal-edit-wrapper", ref: el => (this.body = el) }, this.editType === 'store' && this.editItem ? (h("div", { class: "rating-outer-form s-rating-modal-step-wrap s-rating-modal-step", "data-type": "store", ref: currentTab => (this.currentTab = currentTab) }, h("div", { class: "s-rating-modal-rounded-icon" }, h("img", { src: salla.config.get('store.logo', 'https://assets.salla.sa/cp/assets/images/logo-new.png'), alt: "store name", class: "s-rating-modal-store-logo" })), h("h2", { class: "s-rating-modal-title" }, salla.lang.get('pages.rating.rate_the_store')), h("div", { class: "s-rating-modal-stars-company" }, h("salla-rating-stars", { withLabel: true, size: "large", editable: true, value: this.editItem.stars })), h("textarea", { name: "content", value: this.editItem.content, class: "s-rating-modal-comment", placeholder: salla.lang.get('pages.rating.write_store_rate') }), h("small", { class: "s-rating-modal-validation-msg" }))) : null, this.editType === 'shipping' && this.editItem ? (h("div", { class: "rating-outer-form s-rating-modal-step-wrap s-rating-modal-step", "data-type": "shipping", ref: currentTab => (this.currentTab = currentTab) }, this.editItem.shipping.logo ? (h("div", { class: "s-rating-modal-rounded-icon" }, h("img", { src: this.editItem.shipping.logo, class: "s-rating-modal-shipping-logo", alt: this.editItem.shipping.name }))) : (h("span", { class: "s-rating-modal-icon", innerHTML: ShippingFast })), h("div", { class: "s-rating-modal-title" }, ' ', `${salla.lang.get('pages.rating.rate_shipping')} ${this.editItem.shipping.name}`), h("div", { class: "s-rating-modal-stars-company" }, h("salla-rating-stars", { withLabel: true, size: "large", editable: true, value: this.editItem.stars })), h("textarea", { name: "content", class: "s-rating-modal-comment", value: this.editItem.content, placeholder: salla.lang.get('pages.rating.write_shipping_rate') }), h("small", { class: "s-rating-modal-validation-msg" }))) : null, this.editType == 'product' && this.editItem ? (h("section", { class: "s-rating-modal-step", "data-type": "products", ref: currentTab => (this.currentTab = currentTab) }, h("div", { class: "s-rating-modal-product" }, h("div", { class: "rating-outer-form", "data-stars-error": salla.lang.get('pages.rating.rate_product_stars') }, h("div", { class: "s-rating-modal-product-details" }, h("div", { class: "s-rating-modal-product-info-row" }, h("div", { class: "s-rating-modal-product-img-wrap" }, h("img", { src: this.editItem.product.image.url, alt: this.editItem.product.name, class: "s-rating-modal-product-img" })), h("h3", { class: "s-rating-modal-product-title" }, this.editItem.product.name)), this.renderProductReviewFactors(this.editItem.product.id, 0, {
1045
+ return (h("salla-modal", { ref: modal => (this.editModal = modal), width: "md", onModalVisibilityChanged: isOpen => this.resetData(isOpen) }, h("div", { class: "s-rating-modal-edit-wrapper", ref: el => (this.body = el) }, this.editType === 'store' && this.editItem ? (h("div", { class: "rating-outer-form s-rating-modal-step-wrap s-rating-modal-step", "data-type": "store", ref: currentTab => (this.currentTab = currentTab) }, h("div", { class: "s-rating-modal-rounded-icon" }, h("img", { src: salla.config.get('store.logo', 'https://assets.salla.sa/cp/assets/images/logo-new.png'), alt: "store name", class: "s-rating-modal-store-logo" })), h("h2", { class: "s-rating-modal-title" }, salla.lang.get('pages.rating.rate_the_store')), h("div", { class: "s-rating-modal-stars-company" }, h("salla-rating-stars", { withLabel: true, size: "large", editable: true, value: this.editItem.stars })), h("textarea", { name: "content", value: this.editItem.content, class: "s-rating-modal-comment", placeholder: salla.lang.get('pages.rating.write_store_rate') }), h("small", { class: "s-rating-modal-validation-msg" }))) : null, this.editType === 'shipping' && this.editItem ? (h("div", { class: "rating-outer-form s-rating-modal-step-wrap s-rating-modal-step", "data-type": "shipping", ref: currentTab => (this.currentTab = currentTab) }, this.editItem.shipping.logo ? (h("div", { class: "s-rating-modal-rounded-icon" }, h("img", { src: this.editItem.shipping.logo, class: "s-rating-modal-shipping-logo", alt: this.editItem.shipping.name }))) : (h("span", { class: "s-rating-modal-icon", innerHTML: ShippingFast })), h("div", { class: "s-rating-modal-title" }, ' ', `${salla.lang.get('pages.rating.rate_shipping')} ${this.editItem.shipping.name}`), h("div", { class: "s-rating-modal-stars-company" }, h("salla-rating-stars", { withLabel: true, size: "large", editable: true, value: this.editItem.stars })), h("textarea", { name: "content", class: "s-rating-modal-comment", value: this.editItem.content, placeholder: salla.lang.get('pages.rating.write_shipping_rate') }), h("small", { class: "s-rating-modal-validation-msg" }))) : null, this.editType == 'product' && this.editItem ? (h("section", { class: "s-rating-modal-step", "data-type": "products", ref: currentTab => (this.currentTab = currentTab) }, h("div", { class: "s-rating-modal-product" }, this.allowAttachImages && this.loyaltyPointsNote(), h("div", { class: "rating-outer-form", "data-stars-error": salla.lang.get('pages.rating.rate_product_stars') }, h("div", { class: "s-rating-modal-product-details" }, h("div", { class: "s-rating-modal-product-info-row" }, h("div", { class: "s-rating-modal-product-img-wrap" }, h("img", { src: this.editItem.product.image.url, alt: this.editItem.product.name, class: "s-rating-modal-product-img" })), h("h3", { class: "s-rating-modal-product-title" }, this.editItem.product.name)), this.renderProductReviewFactors(this.editItem.product.id, 0, {
1016
1046
  fieldPrefix: '',
1017
1047
  mainRating: this.editMainRating ?? Number(this.editItem.stars ?? this.editItem.rating),
1018
1048
  factorRatings: this.editFactorRatings,
@@ -1091,6 +1121,7 @@ const SallaRatingModalV2 = /*@__PURE__*/ proxyCustomElement(class SallaRatingMod
1091
1121
  "editItem": [32],
1092
1122
  "allowAttachImages": [32],
1093
1123
  "allowContactSupport": [32],
1124
+ "loyaltyImageRatingPoints": [32],
1094
1125
  "open": [64],
1095
1126
  "openEditModal": [64],
1096
1127
  "openDeleteModal": [64],
@@ -2,14 +2,14 @@
2
2
  * Crafted with ❤ by Salla
3
3
  */
4
4
  import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal/client';
5
- import { W as WishListIcon } from './star.js';
6
- import { d as defineCustomElement$4, S as ShippingFast } from './salla-rating-modal-v22.js';
5
+ import { a as anime } from './anime.es.js';
7
6
  import { C as CheckCircle2 } from './check-circle2.js';
8
- import { H as Helper } from './Helper.js';
9
7
  import { I as ImageIcon } from './image.js';
10
- import { W as WhatsappIcon } from './whatsapp2.js';
11
8
  import { M as MailIcon } from './mail.js';
12
- import { a as anime } from './anime.es.js';
9
+ import { d as defineCustomElement$4, S as ShippingFast } from './salla-rating-modal-v22.js';
10
+ import { W as WishListIcon } from './star.js';
11
+ import { W as WhatsappIcon } from './whatsapp2.js';
12
+ import { H as Helper } from './Helper.js';
13
13
  import { d as defineCustomElement$9 } from './salla-button2.js';
14
14
  import { d as defineCustomElement$8 } from './salla-file-upload2.js';
15
15
  import { d as defineCustomElement$7 } from './salla-loading2.js';
@@ -18,7 +18,7 @@ import { d as defineCustomElement$5 } from './salla-placeholder2.js';
18
18
  import { d as defineCustomElement$3 } from './salla-rating-stars2.js';
19
19
  import { d as defineCustomElement$2 } from './salla-skeleton2.js';
20
20
 
21
- const sallaRatingModalCss = ".s-rating-modal-product-details{padding-bottom:0.5rem}.s-rating-modal-comment{margin-top:0.35rem}.s-rating-modal-product{margin-bottom:1rem}.s-rating-modal-product-img{display:block;width:100%;height:100%;object-fit:cover}.s-rating-modal-product-title{font-size:0.95rem;font-weight:600;line-height:1.5;margin:0}.s-rating-modal-stars-product{margin-top:0.5rem}.s-rating-modal-product-details-main{display:flex;align-items:center;margin-bottom:0.5rem;padding-bottom:0;border-bottom:0}.s-rating-modal-product-info-row{display:flex;align-items:center;gap:0.6rem;margin-bottom:0.5rem;padding-bottom:0;border-bottom:0}.s-rating-modal-product-main-review{width:100%;text-align:right}.s-rating-modal-product-rating-rows{display:grid;gap:0.45rem;margin:0.2rem 0 0.7rem}.s-rating-modal-product-rating-row{display:flex;align-items:center;justify-content:space-between;gap:0.75rem;min-height:2rem}.s-rating-modal-product-rating-row salla-rating-stars{flex-shrink:0}.s-rating-modal-product-rating-row .s-rating-stars-wrapper{align-items:center;min-height:1.75rem}.s-rating-modal-product-rating-row .s-rating-stars-label,.s-rating-modal-product-rating-row .s-rating-stars-label-without-tag{min-width:auto;min-height:1.25rem;line-height:1.25rem;font-size:0.8rem;color:#5b6470;white-space:nowrap;text-align:end;transition:opacity 0.15s ease}.s-rating-modal-product-rating-row .s-rating-stars-label--empty,.s-rating-modal-product-rating-row .s-rating-stars-label-without-tag--empty{opacity:0}.s-rating-modal-product-rating-row-main{margin-bottom:0.35rem;padding:0.5rem 0.6rem;border:1px solid #d1d5db;border-radius:0.45rem;background:transparent}.s-rating-modal-product-factor-name{color:#5b6470;font-size:0.9rem;line-height:1.25}.s-rating-modal-product-rating-row-main .s-rating-modal-product-factor-name{font-size:1rem;color:#5b6470}.s-rating-modal-product-factor-required{color:#f87171;margin-inline-start:0.2rem}.s-rating-modal-product-img-wrap{width:5rem;min-width:5rem;height:3.5rem;flex-shrink:0;overflow:hidden;border-radius:0.375rem;background:#f3f4f6}.s-rating-modal-uploader.is-opened{height:auto !important;opacity:1 !important;overflow:visible !important;pointer-events:auto !important;margin-bottom:1rem}";
21
+ const sallaRatingModalCss = ".s-rating-modal-product-details{padding-bottom:0.5rem}.s-rating-modal-comment{margin-top:0.35rem}.s-rating-modal-product{margin-bottom:1rem}.s-rating-modal-product-img{display:block;width:100%;height:100%;object-fit:cover}.s-rating-modal-product-title{font-size:0.95rem;font-weight:600;line-height:1.5;margin:0}.s-rating-modal-stars-product{margin-top:0.5rem}.s-rating-modal-loyalty-points-note-container{display:flex;align-items:center;gap:0.625rem;width:100%;margin-top:1.5rem;margin-bottom:0.75rem;padding:0.75rem;border-radius:0.5rem;background-color:#E6F4EA}.s-rating-modal-loyalty-points-note-icon{display:flex;flex-shrink:0;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;color:#1B7F5C}.s-rating-modal-loyalty-points-note-icon svg{width:1.5rem;height:1.5rem;fill:currentColor}.s-rating-modal-loyalty-points-note-text{flex:1;margin:0;font-size:0.875rem;line-height:1.25rem;color:#1f2937}.s-rating-modal-product-details-main{display:flex;align-items:center;margin-bottom:0.5rem;padding-bottom:0;border-bottom:0}.s-rating-modal-product-info-row{display:flex;align-items:center;gap:0.6rem;margin-bottom:0.5rem;padding-bottom:0;border-bottom:0}.s-rating-modal-product-main-review{width:100%;text-align:right}.s-rating-modal-product-rating-rows{display:grid;gap:0.45rem;margin:0.2rem 0 0.7rem}.s-rating-modal-product-rating-row{display:flex;align-items:center;justify-content:space-between;gap:0.75rem;min-height:2rem}.s-rating-modal-product-rating-row salla-rating-stars{flex-shrink:0}.s-rating-modal-product-rating-row .s-rating-stars-wrapper{align-items:center;min-height:1.75rem}.s-rating-modal-product-rating-row .s-rating-stars-label,.s-rating-modal-product-rating-row .s-rating-stars-label-without-tag{min-width:auto;min-height:1.25rem;line-height:1.25rem;font-size:0.8rem;color:#5b6470;white-space:nowrap;text-align:end;transition:opacity 0.15s ease}.s-rating-modal-product-rating-row .s-rating-stars-label--empty,.s-rating-modal-product-rating-row .s-rating-stars-label-without-tag--empty{opacity:0}.s-rating-modal-product-rating-row-main{margin-bottom:0.35rem;padding:0.5rem 0.6rem;border:1px solid #d1d5db;border-radius:0.45rem;background:transparent}.s-rating-modal-product-factor-name{color:#5b6470;font-size:0.9rem;line-height:1.25}.s-rating-modal-product-rating-row-main .s-rating-modal-product-factor-name{font-size:1rem;color:#5b6470}.s-rating-modal-product-factor-required{color:#f87171;margin-inline-start:0.2rem}.s-rating-modal-product-img-wrap{width:5rem;min-width:5rem;height:3.5rem;flex-shrink:0;overflow:hidden;border-radius:0.375rem;background:#f3f4f6}.s-rating-modal-uploader.is-opened{height:auto !important;opacity:1 !important;overflow:visible !important;pointer-events:auto !important;margin-bottom:1rem}";
22
22
 
23
23
  const SallaRatingModal$1 = /*@__PURE__*/ proxyCustomElement(class SallaRatingModal extends HTMLElement {
24
24
  constructor() {
@@ -35,6 +35,7 @@ const SallaRatingModal$1 = /*@__PURE__*/ proxyCustomElement(class SallaRatingMod
35
35
  this.deleteMode = false;
36
36
  this.shouldOpenDeleteModal = false;
37
37
  this.editItem = null;
38
+ this.loyaltyImageRatingPoints = 0;
38
39
  this.enableNewPopUp = false;
39
40
  this.dragAndDropFilesLabel = salla.lang.get('common.uploader.drag_and_drop_files');
40
41
  this.contactSubjectLabel = salla.lang.get('pages.rating.contact_subject');
@@ -50,6 +51,7 @@ const SallaRatingModal$1 = /*@__PURE__*/ proxyCustomElement(class SallaRatingMod
50
51
  this.updatedSuccessfullyLabel = salla.lang.get("pages.rating.review_updated_successfully");
51
52
  this.deletedSuccessfullyLabel = salla.lang.get("pages.rating.review_deleted_successfully");
52
53
  this.contactUsLabel = salla.lang.get('blocks.footer.social');
54
+ this.loyaltyPointsForImagesLabel = salla.lang.get('pages.rating.loyalty_points_for_images', { points: ':points' });
53
55
  this.allowAttachImages = salla.config.get('store.settings.rating.allow_attach_images');
54
56
  this.allowContactSupport = salla.config.get('store.settings.rating.allow_contact_support');
55
57
  this.contentRefs = [];
@@ -124,6 +126,8 @@ const SallaRatingModal$1 = /*@__PURE__*/ proxyCustomElement(class SallaRatingMod
124
126
  await setNestedAsync('en.trans', 'pages.rating.review_deleted_successfully', 'The review has been successfully deleted.');
125
127
  await setNestedAsync('ar.trans', 'pages.rating.images_count', 'الصور ( :current من أصل :total )');
126
128
  await setNestedAsync('en.trans', 'pages.rating.images_count', 'Images ( :current of :total )');
129
+ await setNestedAsync('ar.trans', 'pages.rating.loyalty_points_for_images', 'اكسب :points نقطة ولاء عند إضافة صور لتقييمك!');
130
+ await setNestedAsync('en.trans', 'pages.rating.loyalty_points_for_images', 'Earn :points loyalty points when adding photos to your review!');
127
131
  await setNestedAsync('ar.trans', 'common.uploader.max_three_images', `.أضف ${this.MAX_UPLOAD_LIMIT} صور كحد أقصى`);
128
132
  await setNestedAsync('en.trans', 'common.uploader.max_three_images', `Add up to ${this.MAX_UPLOAD_LIMIT} images maximum.`);
129
133
  await setNestedAsync('ar.trans', 'common.elements.confirm_delete', 'تأكيد الحذف');
@@ -141,6 +145,7 @@ const SallaRatingModal$1 = /*@__PURE__*/ proxyCustomElement(class SallaRatingMod
141
145
  this.updatedSuccessfullyLabel = salla.lang.get("pages.rating.review_updated_successfully");
142
146
  this.deletedSuccessfullyLabel = salla.lang.get("pages.rating.review_deleted_successfully");
143
147
  this.confirmDeleteBtn = salla.lang.get("common.elements.confirm_delete");
148
+ this.loyaltyPointsForImagesLabel = salla.lang.get('pages.rating.loyalty_points_for_images', { points: ':points' });
144
149
  this.contact_body = (store, id, customer) => salla.lang.get('pages.rating.contact_body', { store, id, customer });
145
150
  };
146
151
  setTranslations();
@@ -165,6 +170,7 @@ const SallaRatingModal$1 = /*@__PURE__*/ proxyCustomElement(class SallaRatingMod
165
170
  return new Promise((resolve) => {
166
171
  setTimeout(() => {
167
172
  this.modal.open().then(() => this.order || salla.api.withoutNotifier(() => salla.rating.api.order(this.orderId ? this.orderId : salla.config.get('page.id'))).then(res => this.order = res.data))
173
+ .then(() => this.readyUpLoyaltyPoints())
168
174
  .then(() => this.modal.setTitle(`${salla.lang.get('pages.rating.rate_order')} <span class="unicode">(#${this.order.id})</span>`))
169
175
  .then(() => {
170
176
  // Initialize productImages for all products
@@ -201,6 +207,7 @@ const SallaRatingModal$1 = /*@__PURE__*/ proxyCustomElement(class SallaRatingMod
201
207
  this.editFeedbackId = params.feedback_id;
202
208
  try {
203
209
  await this.fetchEditItem(params.feedback_id);
210
+ await this.readyUpLoyaltyPoints();
204
211
  this.editModal.open();
205
212
  }
206
213
  catch (e) {
@@ -405,6 +412,24 @@ const SallaRatingModal$1 = /*@__PURE__*/ proxyCustomElement(class SallaRatingMod
405
412
  this.editMode = false;
406
413
  this.deleteMode = false;
407
414
  this.defaultMode = false;
415
+ this.loyaltyImageRatingPoints = 0;
416
+ }
417
+ async readyUpLoyaltyPoints() {
418
+ const featureEnabled = salla.loyalty?.isFeatureEnabled?.();
419
+ if (!featureEnabled) {
420
+ this.loyaltyImageRatingPoints = 0;
421
+ return;
422
+ }
423
+ const rating_product_points = salla.config.get('store.settings.rating.rating_product_points') || 0;
424
+ const rating_product_with_image_points = salla.config.get('store.settings.rating.rating_product_with_image_points') || 0;
425
+ this.loyaltyImageRatingPoints = Number(rating_product_with_image_points) + Number(rating_product_points);
426
+ }
427
+ loyaltyPointsNote() {
428
+ if (!this.loyaltyImageRatingPoints || !this.loyaltyPointsForImagesLabel) {
429
+ return null;
430
+ }
431
+ const svgIcon = (h("svg", { width: "17", height: "17", viewBox: "0 0 17 17", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { d: "M10 0C13.6819 0 16.6667 2.98477 16.6667 6.66664C16.6667 9.37047 15.057 11.6984 12.7437 12.7444C11.6978 15.0575 9.3701 16.6666 6.66668 16.6666C2.98477 16.6666 0 13.6819 0 9.99998C0 7.29656 1.60918 4.96894 3.92195 3.92276C4.96827 1.60964 7.29618 0 10 0ZM6.66668 5C3.90524 5 1.66667 7.23856 1.66667 9.99998C1.66667 12.7614 3.90524 15 6.66668 15C9.4281 15 11.6667 12.7614 11.6667 9.99998C11.6667 7.23856 9.4281 5 6.66668 5ZM7.50002 5.83333V6.66664H9.16668V8.33331H5.83333C5.60322 8.33331 5.41667 8.51989 5.41667 8.74998C5.41667 8.95456 5.56407 9.12464 5.75844 9.15998L5.83333 9.16664H7.50002C8.6506 9.16664 9.58335 10.0994 9.58335 11.25C9.58335 12.4006 8.6506 13.3333 7.50002 13.3333V14.1666H5.83333V13.3333H4.16667V11.6666H7.50002C7.7301 11.6666 7.91668 11.4801 7.91668 11.25C7.91668 11.0455 7.76927 10.8753 7.57493 10.8401L7.50002 10.8333H5.83333C4.68274 10.8333 3.75 9.90056 3.75 8.74998C3.75 7.59939 4.68274 6.66664 5.83333 6.66664V5.83333H7.50002ZM10 1.66667C8.51377 1.66667 7.17893 2.31513 6.26313 3.34457C6.39704 3.33736 6.53138 3.33333 6.66668 3.33333C10.3486 3.33333 13.3333 6.3181 13.3333 9.99998C13.3333 10.1356 13.3293 10.2702 13.3213 10.4037C14.3513 9.48814 15 8.15314 15 6.66664C15 3.90524 12.7614 1.66667 10 1.66667Z", fill: "#008C56" })));
432
+ return (h("div", { class: "s-rating-modal-loyalty-points-note-container" }, h("span", { class: "s-rating-modal-loyalty-points-note-icon" }, svgIcon), h("p", { class: "s-rating-modal-loyalty-points-note-text" }, this.loyaltyPointsForImagesLabel.replace(':points', String(this.loyaltyImageRatingPoints)))));
408
433
  }
409
434
  getDeleteModal() {
410
435
  return (h("salla-modal", { ref: modal => this.deleteModal = modal, width: "xs", onModalVisibilityChanged: (isOpen) => this.resetData(isOpen) }, h("div", { class: "s-rating-modal-delete-wrapper", ref: el => this.body = el }, h("h3", null, this.confirmDeletionLabel), h("p", null, this.areYouSureLabel), h("div", { class: "s-rating-modal-delete-actions" }, h("salla-button", { loaderPosition: 'center', onClick: () => this.deleteReview() }, this.confirmDeleteBtn), h("salla-button", { color: 'danger', fill: 'outline', onClick: () => this.deleteModal.close() }, this.cancelLabel)))));
@@ -417,7 +442,7 @@ const SallaRatingModal$1 = /*@__PURE__*/ proxyCustomElement(class SallaRatingMod
417
442
  getEditModal() {
418
443
  return (h("salla-modal", { ref: modal => this.editModal = modal, width: "md", onModalVisibilityChanged: (isOpen) => this.resetData(isOpen) }, h("div", { class: "s-rating-modal-edit-wrapper", ref: el => this.body = el }, this.editType === "store" && this.editItem ? (h("div", { class: "rating-outer-form s-rating-modal-step-wrap s-rating-modal-step", "data-type": "store", ref: currentTab => this.currentTab = currentTab }, h("div", { class: "s-rating-modal-rounded-icon" }, h("img", { src: salla.config.get('store.logo', 'https://assets.salla.sa/cp/assets/images/logo-new.png'), alt: "store name", class: "s-rating-modal-store-logo" })), h("h2", { class: "s-rating-modal-title" }, salla.lang.get('pages.rating.rate_the_store')), h("div", { class: "s-rating-modal-stars-company" }, h("salla-rating-stars", { withLabel: true, size: "large", editable: true, value: this.editItem.stars })), h("textarea", { name: "content", value: this.editItem.content, class: "s-rating-modal-comment", placeholder: salla.lang.get('pages.rating.write_store_rate') }), h("small", { class: "s-rating-modal-validation-msg" }))) : null, this.editType === "shipping" && this.editItem ? (h("div", { class: "rating-outer-form s-rating-modal-step-wrap s-rating-modal-step", "data-type": "shipping", ref: currentTab => this.currentTab = currentTab }, this.editItem.shipping.logo
419
444
  ? h("div", { class: "s-rating-modal-rounded-icon" }, h("img", { src: this.editItem.shipping.logo, class: "s-rating-modal-shipping-logo", alt: this.editItem.shipping.name }))
420
- : h("span", { class: "s-rating-modal-icon", innerHTML: ShippingFast }), h("div", { class: "s-rating-modal-title" }, " ", `${salla.lang.get('pages.rating.rate_shipping')} ${this.editItem.shipping.name}`), h("div", { class: "s-rating-modal-stars-company" }, h("salla-rating-stars", { withLabel: true, size: "large", editable: true, value: this.editItem.stars })), h("textarea", { name: "content", class: "s-rating-modal-comment", value: this.editItem.content, placeholder: salla.lang.get('pages.rating.write_shipping_rate') }), h("small", { class: "s-rating-modal-validation-msg" }))) : null, this.editType == "product" && this.editItem ? h("section", { class: "s-rating-modal-step", "data-type": "products", ref: currentTab => this.currentTab = currentTab }, h("div", { class: "s-rating-modal-product" }, h("div", { class: "rating-outer-form", "data-stars-error": salla.lang.get('pages.rating.rate_product_stars') }, h("div", { class: "s-rating-modal-product-img-wrap" }, h("img", { src: this.editItem.product.image.url, alt: this.editItem.product.name, class: "s-rating-modal-product-img" })), h("div", { class: "s-rating-modal-product-details" }, h("div", { class: "s-rating-modal-product-details-main" }, h("div", null, h("h3", { class: "s-rating-modal-product-title" }, " ", this.editItem.product.name), h("div", { class: "s-rating-modal-stars-product" }, h("salla-rating-stars", { withLabel: true, size: "small", editable: true, value: this.editItem.stars }))), this.allowAttachImages && h("salla-button", { class: "s-comments-item-like-btn mt-0", loaderPosition: 'center', fill: 'outline', size: 'small', onClick: () => this.toggleUploader(1) }, h("span", null, this.editItemImages.length ? this.editImagesLabel : this.addImagesLabel), h("span", { innerHTML: ImageIcon }))), h("textarea", { value: this.editItem.content, placeholder: salla.lang.get('pages.rating.write_product_rate'), name: "content", class: "s-rating-modal-comment" }), h("small", { class: "s-rating-modal-validation-msg" }))), this.allowAttachImages && (h("div", { class: "s-rating-modal-uploader is-closed", ref: (el) => (this.contentRefs[1] = el) }, h("salla-file-upload", { name: "images", allowMultiple: true, maxFilesCount: this.MAX_UPLOAD_LIMIT, imagePreviewHeight: 117, filePosterHeight: 117, "instant-upload": true, type: "feedback", files: JSON.stringify(this.editItemImages), payloadName: "files[]", id: `file-${this.editItem.product.id}`, title: this.editItem.product.name, instantUpload: true, accept: "image/png, image/jpeg, image/jpg", url: salla.url.api('upload'), onUploaded: (e) => {
445
+ : h("span", { class: "s-rating-modal-icon", innerHTML: ShippingFast }), h("div", { class: "s-rating-modal-title" }, " ", `${salla.lang.get('pages.rating.rate_shipping')} ${this.editItem.shipping.name}`), h("div", { class: "s-rating-modal-stars-company" }, h("salla-rating-stars", { withLabel: true, size: "large", editable: true, value: this.editItem.stars })), h("textarea", { name: "content", class: "s-rating-modal-comment", value: this.editItem.content, placeholder: salla.lang.get('pages.rating.write_shipping_rate') }), h("small", { class: "s-rating-modal-validation-msg" }))) : null, this.editType == "product" && this.editItem ? h("section", { class: "s-rating-modal-step", "data-type": "products", ref: currentTab => this.currentTab = currentTab }, h("div", { class: "s-rating-modal-product" }, this.allowAttachImages && this.loyaltyPointsNote(), h("div", { class: "rating-outer-form", "data-stars-error": salla.lang.get('pages.rating.rate_product_stars') }, h("div", { class: "s-rating-modal-product-img-wrap" }, h("img", { src: this.editItem.product.image.url, alt: this.editItem.product.name, class: "s-rating-modal-product-img" })), h("div", { class: "s-rating-modal-product-details" }, h("div", { class: "s-rating-modal-product-details-main" }, h("div", null, h("h3", { class: "s-rating-modal-product-title" }, " ", this.editItem.product.name), h("div", { class: "s-rating-modal-stars-product" }, h("salla-rating-stars", { withLabel: true, size: "small", editable: true, value: this.editItem.stars }))), this.allowAttachImages && h("salla-button", { class: "s-comments-item-like-btn mt-0", loaderPosition: 'center', fill: 'outline', size: 'small', onClick: () => this.toggleUploader(1) }, h("span", null, this.editItemImages.length ? this.editImagesLabel : this.addImagesLabel), h("span", { innerHTML: ImageIcon }))), h("textarea", { value: this.editItem.content, placeholder: salla.lang.get('pages.rating.write_product_rate'), name: "content", class: "s-rating-modal-comment" }), h("small", { class: "s-rating-modal-validation-msg" }))), this.allowAttachImages && (h("div", { class: "s-rating-modal-uploader is-closed", ref: (el) => (this.contentRefs[1] = el) }, h("salla-file-upload", { name: "images", allowMultiple: true, maxFilesCount: this.MAX_UPLOAD_LIMIT, imagePreviewHeight: 117, filePosterHeight: 117, "instant-upload": true, type: "feedback", files: JSON.stringify(this.editItemImages), payloadName: "files[]", id: `file-${this.editItem.product.id}`, title: this.editItem.product.name, instantUpload: true, accept: "image/png, image/jpeg, image/jpg", url: salla.url.api('upload'), onUploaded: (e) => {
421
446
  this.editItemImages = [...this.editItemImages, e.detail];
422
447
  this.hiddenInputs[1].value = this.editItemImages.map(img => img.url).join();
423
448
  }, onRemoved: (e) => {
@@ -444,7 +469,7 @@ const SallaRatingModal$1 = /*@__PURE__*/ proxyCustomElement(class SallaRatingMod
444
469
  ? [h("div", { class: "s-rating-modal-wrapper", ref: el => this.body = el }, this.order?.testimonials_enabled ?
445
470
  h("div", { class: "rating-outer-form s-rating-modal-step-wrap s-rating-modal-step s-rating-modal-hidden", "data-type": "store" }, h("div", { class: "s-rating-modal-rounded-icon" }, h("img", { src: salla.config.get('store.logo', 'https://assets.salla.sa/cp/assets/images/logo-new.png'), alt: "store name", class: "s-rating-modal-store-logo" })), h("h2", { class: "s-rating-modal-title" }, salla.lang.get('pages.rating.rate_the_store')), h("div", { class: "s-rating-modal-stars-company" }, h("salla-rating-stars", { withLabel: true, size: "large" })), h("textarea", { name: "comment", class: "s-rating-modal-comment", placeholder: salla.lang.get('pages.rating.write_store_rate') }), h("small", { class: "s-rating-modal-validation-msg" }))
446
471
  : '', this.order.products_enabled
447
- ? h("section", { class: "s-rating-modal-step s-rating-modal-hidden", "data-type": "products" }, this.order.products.map((item, index) => h("div", { class: "s-rating-modal-product", key: index }, h("div", { class: "rating-outer-form", "data-stars-error": salla.lang.get('pages.rating.rate_product_stars') }, h("div", { class: "s-rating-modal-product-img-wrap" }, h("img", { src: item.product.thumbnail, alt: item.product.name, class: "s-rating-modal-product-img" })), h("div", { class: "s-rating-modal-product-details" }, h("div", { class: "s-rating-modal-product-details-main" }, h("div", null, h("h3", { class: "s-rating-modal-product-title" }, " ", item.product.name), h("div", { class: "s-rating-modal-stars-product" }, h("salla-rating-stars", { withLabel: true, size: "small", name: `products[${index}][rating]` }))), this.allowAttachImages && h("salla-button", { class: "s-comments-item-like-btn mt-0", loaderPosition: 'center', fill: 'outline', size: 'small', onClick: () => this.toggleUploader(index) }, h("span", null, this.addImagesLabel), h("span", { innerHTML: ImageIcon }))), h("input", { type: "hidden", name: `products[${index}][product_id]`, value: item.product.id }), h("textarea", { placeholder: salla.lang.get('pages.rating.write_product_rate'), name: `products[${index}][comment]`, class: "s-rating-modal-comment" }), h("small", { class: "s-rating-modal-validation-msg" }))), this.allowAttachImages && (h("div", { class: "s-rating-modal-uploader is-closed", ref: (el) => (this.contentRefs[index] = el) }, h("salla-file-upload", { name: "image", maxFilesCount: this.MAX_UPLOAD_LIMIT, imagePreviewHeight: 117, "instant-upload": true, type: "feedback", payloadName: "files[]", id: `file-${item.product.id}`, title: item.product.name, allowMultiple: true, instantUpload: true, accept: "image/png, image/jpeg, image/jpg", url: salla.url.api('upload'), onUploaded: (e) => {
472
+ ? h("section", { class: "s-rating-modal-step s-rating-modal-hidden", "data-type": "products" }, this.allowAttachImages && this.loyaltyPointsNote(), this.order.products.map((item, index) => h("div", { class: "s-rating-modal-product", key: index }, h("div", { class: "rating-outer-form", "data-stars-error": salla.lang.get('pages.rating.rate_product_stars') }, h("div", { class: "s-rating-modal-product-img-wrap" }, h("img", { src: item.product.thumbnail, alt: item.product.name, class: "s-rating-modal-product-img" })), h("div", { class: "s-rating-modal-product-details" }, h("div", { class: "s-rating-modal-product-details-main" }, h("div", null, h("h3", { class: "s-rating-modal-product-title" }, " ", item.product.name), h("div", { class: "s-rating-modal-stars-product" }, h("salla-rating-stars", { withLabel: true, size: "small", name: `products[${index}][rating]` }))), this.allowAttachImages && h("salla-button", { class: "s-comments-item-like-btn mt-0", loaderPosition: 'center', fill: 'outline', size: 'small', onClick: () => this.toggleUploader(index) }, h("span", null, this.addImagesLabel), h("span", { innerHTML: ImageIcon }))), h("input", { type: "hidden", name: `products[${index}][product_id]`, value: item.product.id }), h("textarea", { placeholder: salla.lang.get('pages.rating.write_product_rate'), name: `products[${index}][comment]`, class: "s-rating-modal-comment" }), h("small", { class: "s-rating-modal-validation-msg" }))), this.allowAttachImages && (h("div", { class: "s-rating-modal-uploader is-closed", ref: (el) => (this.contentRefs[index] = el) }, h("salla-file-upload", { name: "image", maxFilesCount: this.MAX_UPLOAD_LIMIT, imagePreviewHeight: 117, "instant-upload": true, type: "feedback", payloadName: "files[]", id: `file-${item.product.id}`, title: item.product.name, allowMultiple: true, instantUpload: true, accept: "image/png, image/jpeg, image/jpg", url: salla.url.api('upload'), onUploaded: (e) => {
448
473
  this.productImages = {
449
474
  ...this.productImages,
450
475
  [item.product.id]: [...(this.productImages[item.product.id] || []), e.detail]
@@ -498,6 +523,7 @@ const SallaRatingModal$1 = /*@__PURE__*/ proxyCustomElement(class SallaRatingMod
498
523
  "editFeedbackId": [32],
499
524
  "deleteFeedbackId": [32],
500
525
  "editItem": [32],
526
+ "loyaltyImageRatingPoints": [32],
501
527
  "enableNewPopUp": [32],
502
528
  "open": [64],
503
529
  "close": [64]
@@ -3,8 +3,9 @@
3
3
  */
4
4
  import { proxyCustomElement, HTMLElement, createEvent, h } from '@stencil/core/internal/client';
5
5
  import { c as closeModals } from './functions.js';
6
+ import { d as defineCustomElement$1 } from './salla-button2.js';
6
7
 
7
- const sallaLoyaltyProgramCss = "";
8
+ const sallaLoyaltyProgramCss = "@media (max-width: 639px){.s-loyalty-program-modal .s-modal-body{position:relative !important;left:unset !important;bottom:unset !important;max-height:100dvh;overflow-y:auto !important}}.s-loyalty-exchange-card salla-product-card .s-product-card-image,.s-loyalty-exchange-card custom-salla-product-card .s-product-card-image{flex:none;aspect-ratio:1;overflow:hidden}.s-loyalty-exchange-card-btn{padding:0 1.25rem 1.25rem;margin-top:0.75rem}.s-loyalty-program-reward-details-products-grid{display:flex;flex-wrap:wrap;gap:1rem;margin-top:0.75rem}.s-loyalty-program-reward-details-products-grid>*{flex:1 1 100%;min-width:0;touch-action:pan-y}@media (min-width: 640px){.s-loyalty-program-reward-details-products-grid>*{flex-basis:calc((100% - 1rem) / 2)}}@media (min-width: 768px){.s-loyalty-program-reward-details-products-grid>*{flex-basis:calc((100% - 2rem) / 3)}}.s-loyalty-program-reward-details-products-grid>*:only-child{max-width:320px;margin-inline:auto}.s-loyalty-program-reward-details-products-grid:has(>*:nth-child(3))>*{flex-grow:0}";
8
9
 
9
10
  const SallaRewardAction = /*@__PURE__*/ proxyCustomElement(class SallaRewardAction extends HTMLElement {
10
11
  constructor() {
@@ -32,10 +33,7 @@ const SallaRewardAction = /*@__PURE__*/ proxyCustomElement(class SallaRewardActi
32
33
  if (!this.isClickable(this.prize)) {
33
34
  return null;
34
35
  }
35
- return (h("div", { class: "s-loyalty-program-rewards-modal-action" }, this.isShopNow(this.prize) ? (h("a", { href: this.prize.prize_url || salla.url.get(''), class: {
36
- 's-loyalty-program-rewards-action-base': true,
37
- 's-loyalty-program-rewards-action-on': true,
38
- } }, salla.lang.get('pages.loyalty_program.shop_now'))) : (h("button", { onClick: this.handleClick, class: {
36
+ return (h("div", { class: "s-loyalty-program-rewards-modal-action" }, this.isShopNow(this.prize) ? (h("salla-button", { fill: "outline", color: "light", class: "s-loyalty-program-rewards-action-base", onClick: () => closeModals() }, salla.lang.get('common.elements.cancel'))) : (h("button", { onClick: this.handleClick, class: {
39
37
  's-loyalty-program-rewards-action-base': true,
40
38
  's-loyalty-program-rewards-action-on': true,
41
39
  } }, salla.lang.get('pages.loyalty_program.redeem_reward')))));
@@ -48,13 +46,18 @@ function defineCustomElement() {
48
46
  if (typeof customElements === "undefined") {
49
47
  return;
50
48
  }
51
- const components = ["salla-reward-action"];
49
+ const components = ["salla-reward-action", "salla-button"];
52
50
  components.forEach(tagName => { switch (tagName) {
53
51
  case "salla-reward-action":
54
52
  if (!customElements.get(tagName)) {
55
53
  customElements.define(tagName, SallaRewardAction);
56
54
  }
57
55
  break;
56
+ case "salla-button":
57
+ if (!customElements.get(tagName)) {
58
+ defineCustomElement$1();
59
+ }
60
+ break;
58
61
  } });
59
62
  }
60
63
  defineCustomElement();
@@ -5,7 +5,7 @@ import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/
5
5
  import { l as loyaltyProgramIcon } from './gift.js';
6
6
  import { d as defineCustomElement$1 } from './salla-badge2.js';
7
7
 
8
- const sallaLoyaltyProgramCss = "";
8
+ const sallaLoyaltyProgramCss = "@media (max-width: 639px){.s-loyalty-program-modal .s-modal-body{position:relative !important;left:unset !important;bottom:unset !important;max-height:100dvh;overflow-y:auto !important}}.s-loyalty-exchange-card salla-product-card .s-product-card-image,.s-loyalty-exchange-card custom-salla-product-card .s-product-card-image{flex:none;aspect-ratio:1;overflow:hidden}.s-loyalty-exchange-card-btn{padding:0 1.25rem 1.25rem;margin-top:0.75rem}.s-loyalty-program-reward-details-products-grid{display:flex;flex-wrap:wrap;gap:1rem;margin-top:0.75rem}.s-loyalty-program-reward-details-products-grid>*{flex:1 1 100%;min-width:0;touch-action:pan-y}@media (min-width: 640px){.s-loyalty-program-reward-details-products-grid>*{flex-basis:calc((100% - 1rem) / 2)}}@media (min-width: 768px){.s-loyalty-program-reward-details-products-grid>*{flex-basis:calc((100% - 2rem) / 3)}}.s-loyalty-program-reward-details-products-grid>*:only-child{max-width:320px;margin-inline:auto}.s-loyalty-program-reward-details-products-grid:has(>*:nth-child(3))>*{flex-grow:0}";
9
9
 
10
10
  const SallaRewardCard = /*@__PURE__*/ proxyCustomElement(class SallaRewardCard extends HTMLElement {
11
11
  constructor() {
@@ -15,7 +15,7 @@ const SallaRewardCard = /*@__PURE__*/ proxyCustomElement(class SallaRewardCard e
15
15
  this.actionClick = createEvent(this, "actionClick", 7);
16
16
  }
17
17
  render() {
18
- return (h(Host, { key: 'b27c707b6ac03d037d2f019131a654bcda65dd6e', class: "s-loyalty-program-reward-host" }, h("div", { key: '9606c3ad2ea7ead1f4ab2db8e148a90d43c69902', class: "s-loyalty-program-reward-container" }, h("div", { key: 'f7b6f60847b86dbb6f2b05209ab2db8eabbbd931', onClick: (e) => this.areaClick.emit(e), role: "button" }, h("div", { key: '6cd912d2c6b5c2b12ab5b4ba431ca0c965d0518b', class: "s-loyalty-program-reward-img" }, h("img", { key: 'b4f844fe1064b8ca6f5666765d92a7924fe2ad74', alt: "", src: this.prize.image || salla.url.cdn('images/s-empty.png'), class: "s-loyalty-program-rewards-img" })), h("div", { key: 'fd61d1ff64f2097fe2f696dacbb57f6c84db5339', class: "s-loyalty-program-reward-content" }, h("div", { key: 'fa1d404d5b02fe0027cef018f2eeb6e0bd109c2c', class: "s-loyalty-program-reward-points" }, h("salla-badge", { key: '29dad65f9b1f41a1698da49d113a0f9b0086210e', size: "xs" }, h("span", { key: '99526fabe82feef8ef777bfbcde868399c44e2db', innerHTML: loyaltyProgramIcon }), h("span", { key: '94a3ed106aad1b14438227d8914695b1a18e8f64', class: "s-loyalty-program-rewards-points", innerHTML: salla.lang.choice('pages.loyalty_program.points', this.prize.cost_points) }))), h("div", { key: '1e8e12541bfd7acd303f89008f2e48c9f183c83a', class: "s-loyalty-program-reward-title" }, h("span", { key: '746377627b01443a712a52f1016c29b41eaa1ad5' }, this.prize.group_title)), h("div", { key: '1f09736c18b0be21b67e1713a44f94722bbdb09d', class: "s-loyalty-program-reward-name" }, h("div", { key: '18c26f3fe19b4e6ff28bda4d18cdb253f795792b', class: "s-loyalty-program-rewards-name", id: `prize-${this.prize.id}` }, this.prize.name, this.prize.description ? `: ${this.prize.description}` : '')))), h("div", { key: '7a814db57ae3bfad6aaba12cdab17b0e900e9080', class: "p-4" }, h("slot", { key: '0ce627f221262d54f4cda4d1a50cb2d1a6197d06', name: "action" }, h("button", { key: '10f0e39d0ecc79d84674efb0a7389430da979160', onClick: (e) => this.actionClick.emit(e.detail), class: "s-loyalty-program-rewards-action-base s-loyalty-program-rewards-action-on" }, salla.lang.get('pages.loyalty_program.show_reward')))))));
18
+ return (h(Host, { key: '9b1eecb431ab26fc6bfbd89d511294a230dd2aa9', class: "s-loyalty-program-reward-host" }, h("div", { key: '0793104978291566c136eb0e5b841224f97f25b6', class: "s-loyalty-program-reward-container" }, h("div", { key: 'f4572e5480d51f041af3e3b95bdfcc3a952c395e', onClick: (e) => this.areaClick.emit(e), role: "button" }, h("div", { key: 'ba3e6d1583219bfba80903d8b45a02c6f862efd2', class: "s-loyalty-program-reward-img" }, h("img", { key: '36e26b8fcf8d2f094b0ab990ad96c3722e23d4fd', alt: "", src: this.prize.image || salla.url.cdn('images/s-empty.png'), class: "s-loyalty-program-rewards-img" })), h("div", { key: 'b7f042b124044e8ca7eee15341d08ef175013b18', class: "s-loyalty-program-reward-content" }, h("div", { key: 'd3274d9bf3f53dfdc87e4f11cddd2abae5288333', class: "s-loyalty-program-reward-points" }, h("salla-badge", { key: '4db76994541536d16e11a7e34bce9e06ce9aff4b', size: "xs" }, h("span", { key: 'a565b786c683bc5b076036c81494137ccaef0c18', innerHTML: loyaltyProgramIcon }), h("span", { key: '481a4016c7ccea49a860df2a7b3a322302a2e5ad', class: "s-loyalty-program-rewards-points", innerHTML: salla.lang.choice('pages.loyalty_program.points', this.prize.cost_points) }))), h("div", { key: '5820431c80d0eee99da2592ef29685710b73a048', class: "s-loyalty-program-reward-title" }, h("span", { key: '82b99ec1244890b19930686c228ca56ecee7191b' }, this.prize.group_title)), h("div", { key: '08bc6a5f88365c23e07a20b858b4cda5430eb363', class: "s-loyalty-program-reward-name" }, h("div", { key: 'dd4ce5ed0097a746b91c74cdab38ca557c55194d', class: "s-loyalty-program-rewards-name", id: `prize-${this.prize.id}` }, this.prize.name, this.prize.description ? `: ${this.prize.description}` : '')))), h("div", { key: 'ae7cd30ae6794f0957db6cfca3a69403b5996183', class: "p-4" }, h("slot", { key: '41a4cce4cb28d91d038754f69ea42b25fda6427a', name: "action" }, h("button", { key: '353da11c1197ed3dafd85282cd3343c21f55c80b', onClick: (e) => this.actionClick.emit(e.detail), class: "s-loyalty-program-rewards-action-base s-loyalty-program-rewards-action-on" }, salla.lang.get('pages.loyalty_program.show_reward')))))));
19
19
  }
20
20
  static get style() { return sallaLoyaltyProgramCss; }
21
21
  }, [4, "salla-reward-card", {
@@ -8,16 +8,17 @@ import { T as Tag } from './tag.js';
8
8
  import { I as IconVerified } from './check.js';
9
9
  import { C as Cancel } from './cancel.js';
10
10
  import { T as TrackedPromise } from './tracked-promise.js';
11
- import { d as defineCustomElement$p } from './salla-add-product-button2.js';
12
- import { d as defineCustomElement$o } from './salla-badge2.js';
13
- import { d as defineCustomElement$n } from './salla-booking-field2.js';
14
- import { d as defineCustomElement$m } from './salla-button2.js';
15
- import { d as defineCustomElement$l } from './salla-color-picker2.js';
16
- import { d as defineCustomElement$k } from './salla-conditional-fields2.js';
17
- import { d as defineCustomElement$j } from './salla-count-down2.js';
18
- import { d as defineCustomElement$i } from './salla-datetime-picker2.js';
19
- import { d as defineCustomElement$h } from './salla-file-upload2.js';
20
- import { d as defineCustomElement$g } from './salla-loading2.js';
11
+ import { d as defineCustomElement$q } from './salla-add-product-button2.js';
12
+ import { d as defineCustomElement$p } from './salla-badge2.js';
13
+ import { d as defineCustomElement$o } from './salla-booking-field2.js';
14
+ import { d as defineCustomElement$n } from './salla-button2.js';
15
+ import { d as defineCustomElement$m } from './salla-color-picker2.js';
16
+ import { d as defineCustomElement$l } from './salla-conditional-fields2.js';
17
+ import { d as defineCustomElement$k } from './salla-count-down2.js';
18
+ import { d as defineCustomElement$j } from './salla-datetime-picker2.js';
19
+ import { d as defineCustomElement$i } from './salla-file-upload2.js';
20
+ import { d as defineCustomElement$h } from './salla-loading2.js';
21
+ import { d as defineCustomElement$g } from './salla-loyalty-exchange-product-card2.js';
21
22
  import { d as defineCustomElement$f } from './salla-map2.js';
22
23
  import { d as defineCustomElement$e } from './salla-modal2.js';
23
24
  import { d as defineCustomElement$d } from './salla-order-options-modal2.js';
@@ -34,7 +35,7 @@ import { d as defineCustomElement$3 } from './salla-tab-header2.js';
34
35
  import { d as defineCustomElement$2 } from './salla-tabs2.js';
35
36
  import { d as defineCustomElement$1 } from './salla-tel-input2.js';
36
37
 
37
- const sallaLoyaltyProgramCss = "";
38
+ const sallaLoyaltyProgramCss = "@media (max-width: 639px){.s-loyalty-program-modal .s-modal-body{position:relative !important;left:unset !important;bottom:unset !important;max-height:100dvh;overflow-y:auto !important}}.s-loyalty-exchange-card salla-product-card .s-product-card-image,.s-loyalty-exchange-card custom-salla-product-card .s-product-card-image{flex:none;aspect-ratio:1;overflow:hidden}.s-loyalty-exchange-card-btn{padding:0 1.25rem 1.25rem;margin-top:0.75rem}.s-loyalty-program-reward-details-products-grid{display:flex;flex-wrap:wrap;gap:1rem;margin-top:0.75rem}.s-loyalty-program-reward-details-products-grid>*{flex:1 1 100%;min-width:0;touch-action:pan-y}@media (min-width: 640px){.s-loyalty-program-reward-details-products-grid>*{flex-basis:calc((100% - 1rem) / 2)}}@media (min-width: 768px){.s-loyalty-program-reward-details-products-grid>*{flex-basis:calc((100% - 2rem) / 3)}}.s-loyalty-program-reward-details-products-grid>*:only-child{max-width:320px;margin-inline:auto}.s-loyalty-program-reward-details-products-grid:has(>*:nth-child(3))>*{flex-grow:0}";
38
39
 
39
40
  var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
40
41
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
@@ -52,10 +53,16 @@ const SallaRewardDetails = /*@__PURE__*/ proxyCustomElement(class SallaRewardDet
52
53
  super();
53
54
  this.__registerHost();
54
55
  this.actionClick = createEvent(this, "actionClick", 7);
56
+ this.productActionClick = createEvent(this, "productActionClick", 7);
55
57
  this.refreshKey = Date.now();
58
+ this.includedProductsData = [];
59
+ }
60
+ handleProductExchange(e) {
61
+ this.productActionClick.emit({ productId: e.detail.productId });
56
62
  }
57
63
  handlePrizeChange() {
58
64
  this.refreshKey = Date.now();
65
+ this.fetchIncludedProducts();
59
66
  }
60
67
  componentWillLoad() {
61
68
  if (this.category.status === 'idle') {
@@ -64,6 +71,23 @@ const SallaRewardDetails = /*@__PURE__*/ proxyCustomElement(class SallaRewardDet
64
71
  if (this.brand.status === 'idle') {
65
72
  this.brand();
66
73
  }
74
+ this.fetchIncludedProducts();
75
+ }
76
+ async fetchIncludedProducts() {
77
+ this.includedProductsData = [];
78
+ const ids = this.prize?.included_product_ids;
79
+ if (!ids?.length)
80
+ return;
81
+ const requestedPrize = this.prize;
82
+ try {
83
+ const response = await salla.api.withoutNotifier(() => salla.product.api.fetch({ source: 'selected', source_value: ids }));
84
+ if (this.prize === requestedPrize) {
85
+ this.includedProductsData = response.data || [];
86
+ }
87
+ }
88
+ catch {
89
+ this.includedProductsData = [];
90
+ }
67
91
  }
68
92
  getTermsAndConditions() {
69
93
  const minimumAmount = Number((this.prize.order_minimum_amount || '0').split('.')[0]) || 0;
@@ -142,23 +166,29 @@ const SallaRewardDetails = /*@__PURE__*/ proxyCustomElement(class SallaRewardDet
142
166
  getProductsJsx(items, title) {
143
167
  return !items?.length ? '' : h("div", { class: "s-loyalty-program-reward-details-items-products s-loyalty-program-slider-arrows-edges" }, h("h2", null, title), h("salla-products-slider", { source: "selected", sourceValue: JSON.stringify(items), "slider-config": '{"loop":false,"slidesPerView":"auto","freeMode":true,"spaceBetween":0,"breakpoints":{"768":{"slidesPerView":3,"freeMode":false,"speed":300}}}' }));
144
168
  }
169
+ getIncludedProductsJsx(title) {
170
+ const products = this.includedProductsData;
171
+ if (!products?.length)
172
+ return '';
173
+ return (h("div", { class: c('reward-details-items-products') }, h("h2", null, title), h("div", { class: c('reward-details-products-grid') }, products.map(product => h("salla-loyalty-exchange-product-card", { product: product })))));
174
+ }
145
175
  render() {
146
176
  const termsAndConditions = this.getTermsAndConditions();
147
- return (h("div", { key: 'b448be9380e1b0226e0e1bf4f2383190769de152', class: "s-loyalty-program-reward-modal" }, h("div", { key: '16087a27ea5cef2738f07745ac2b830ea07ab4ce', class: "s-loyalty-program-points-modal-header" }, h("h1", { key: 'f03dde8a72339ce561298cf27b524f9a69a1fd3c', class: "s-loyalty-program-points-modal-info" }, !salla.url.is_page('cart') ? ''
177
+ return (h("div", { key: 'e75387a83bdf558f087bfda4f8c7db15bf97ac5d', class: "s-loyalty-program-reward-modal" }, h("div", { key: '89caf02d9b28996177b5bc23a711986ad9da9208', class: "s-loyalty-program-points-modal-header" }, h("h1", { key: '455d0a2e6f5c08dbbdf063c1f243e7e041deb788', class: "s-loyalty-program-points-modal-info" }, !salla.url.is_page('cart') ? ''
148
178
  : h("button", { class: "s-loyalty-program-back-btn", onClick: () => closeModals(() => salla.event.dispatch('modal::open', 'loyalty-rewards-modal')) }, h("span", { class: {
149
179
  'sicon-arrow-right': document.documentElement.getAttribute('dir') === 'rtl',
150
180
  'sicon-arrow-left': document.documentElement.getAttribute('dir') === 'ltr',
151
- } })), this.prize.name)), h("div", { key: '94e4c042eda800d4127e98af05399aefd8cf162c', class: "s-loyalty-program-modal-scrollable-content" }, h("div", { key: '5e847cbfd2aefe88baaddd991ac9a3c9d5be4318', class: "s-loyalty-program-reward-details-header" }, h("div", { key: '67fa2b255a10ada08cd780f204d8bc958b2562df', class: "s-loyalty-program-aspect-container" }, h("img", { key: '06298fbe666f161ace6f8bd70ead43ff4647f912', src: this.prize.image, alt: this.prize.name })), h("salla-badge", { key: '2d5fb82811dfced1eb558baa01ddb83bf8271312', size: "sm", bg: "light" }, h("span", { key: 'bb9d7cf72ea6bc88eaed97e62465c85b3628de0d', innerHTML: loyaltyProgramIcon }), h("span", { key: '87bd5622040b555ab70de43ffb7a6fa06cb4b45a', class: "s-loyalty-program-points-badge-points" }, formattedPointsJsx(this.prize.cost_points)))), !termsAndConditions.length ? '' : h("div", { class: "s-loyalty-program-terms-and-conditions" }, h("h1", { class: "s-loyalty-program-terms-and-conditions-heading" }, salla.lang.get('pages.loyalty_program.terms_and_conditions')), h("ul", { class: "s-loyalty-program-terms-and-conditions-list" }, termsAndConditions.map(([title, points]) => (h("li", { class: "s-loyalty-program-terms-and-conditions-item" }, h("span", { class: "s-loyalty-program-terms-and-conditions-content" }, title), h("span", { class: "s-loyalty-program-terms-and-conditions-content" }, points)))))), h("div", { key: '8b9ae2745e2134b41c8bc1c9bce8bc449774fd48', class: "s-loyalty-program-reward-info-message" }, h("h1", { key: 'd5e6f1f591a09144d9d15bf32457ca22f8438b82', class: "s-loyalty-program-reward-info-message-heading" }, salla.lang.get('pages.loyalty_program.how_to_benefit_from_this_reward')), h("p", { key: '00c63a4b0dafecd45141b2627f3cf00df9b77e83', class: "s-loyalty-program-reward-info-message-content" }, this.getItemsMarkersText())), (this.prize.key === 'FREE_SHIPPING' || this.getItemsMarkers('both') === '000000') ? '' : h("div", { class: "s-loyalty-program-reward-details" }, h("salla-tabs", { key: this.refreshKey }, this.getItemsMarkers('included') === '000' ? '' : [
181
+ } })), this.prize.name)), h("div", { key: '1e65d03e52071802ec396cc4838bdaf135303494', class: "s-loyalty-program-modal-scrollable-content" }, h("div", { key: 'f6869249b21464296725644acd9a593fb6c5ea30', class: "s-loyalty-program-reward-details-header" }, h("div", { key: 'c93dfe4c362421f7f7d5938a86d043e6ee0f2369', class: "s-loyalty-program-aspect-container" }, h("img", { key: '0c86bde982fd627939e47b9cf1eed02285a041f1', src: this.prize.image, alt: this.prize.name })), h("salla-badge", { key: '2be3695ee888ef65e0fec106e4b7845abc25491b', size: "sm", bg: "light" }, h("span", { key: '193ce34305780ecc2fd78d4e2d8572da06a0ebda', innerHTML: loyaltyProgramIcon }), h("span", { key: 'aee708c7b484afa29392fe25768ae48051c8b211', class: "s-loyalty-program-points-badge-points" }, formattedPointsJsx(this.prize.cost_points)))), !termsAndConditions.length ? '' : h("div", { class: "s-loyalty-program-terms-and-conditions" }, h("h1", { class: "s-loyalty-program-terms-and-conditions-heading" }, salla.lang.get('pages.loyalty_program.terms_and_conditions')), h("ul", { class: "s-loyalty-program-terms-and-conditions-list" }, termsAndConditions.map(([title, points]) => (h("li", { class: "s-loyalty-program-terms-and-conditions-item" }, h("span", { class: "s-loyalty-program-terms-and-conditions-content" }, title), h("span", { class: "s-loyalty-program-terms-and-conditions-content" }, points)))))), h("div", { key: 'add5d8a427511f9554f5d13a88bc5a4994021477', class: "s-loyalty-program-reward-info-message" }, h("h1", { key: '723dd37428176057e6d9e315e2a29528df9b8b1f', class: "s-loyalty-program-reward-info-message-heading" }, salla.lang.get('pages.loyalty_program.how_to_benefit_from_this_reward')), h("p", { key: 'ef1d7ea6af657ff4810c257d378aac35c106de66', class: "s-loyalty-program-reward-info-message-content" }, this.getItemsMarkersText())), (this.prize.key === 'FREE_SHIPPING' || this.getItemsMarkers('both') === '000000') ? '' : h("div", { class: "s-loyalty-program-reward-details" }, h("salla-tabs", { key: this.refreshKey }, this.getItemsMarkers('included') === '000' ? '' : [
152
182
  h("salla-tab-header", { slot: "header", name: "included", style: {
153
183
  display: this.getItemsMarkers('excluded') === '000' ? 'none' : 'block',
154
184
  } }, h("span", { class: "s-loyalty-program-reward-details-tab-icon", innerHTML: IconVerified }), h("span", null, salla.lang.get(`pages.loyalty_program.included`))),
155
- h("salla-tab-content", { slot: "content", name: "included" }, h("div", { class: "s-loyalty-program-reward-details-items-wrapper" }, this.getCategoriesJsx(this.getIncludedItems(this.prize.categories, this.prize.included_category_ids), salla.lang.get('pages.loyalty_program.included_categories')), this.getBrandsJsx(this.getIncludedItems(this.prize.brands, this.prize.included_brand_ids), salla.lang.get('pages.loyalty_program.included_brands')), this.getProductsJsx(this.getProductIds(this.prize.included_product_ids), salla.lang.get('pages.loyalty_program.included_products')))),
185
+ h("salla-tab-content", { slot: "content", name: "included" }, h("div", { class: "s-loyalty-program-reward-details-items-wrapper" }, this.getCategoriesJsx(this.getIncludedItems(this.prize.categories, this.prize.included_category_ids), salla.lang.get('pages.loyalty_program.included_categories')), this.getBrandsJsx(this.getIncludedItems(this.prize.brands, this.prize.included_brand_ids), salla.lang.get('pages.loyalty_program.included_brands')), this.getIncludedProductsJsx(salla.lang.get('pages.loyalty_program.included_products')))),
156
186
  ], this.getItemsMarkers('excluded') === '000' ? '' : [
157
187
  h("salla-tab-header", { slot: "header", name: "excluded", style: {
158
188
  display: this.getItemsMarkers('included') === '000' ? 'none' : 'block',
159
189
  } }, h("span", { class: "s-loyalty-program-reward-details-tab-icon", innerHTML: Cancel }), h("span", null, salla.lang.get(`pages.loyalty_program.excluded`))),
160
190
  h("salla-tab-content", { slot: "content", name: "excluded" }, h("div", { class: "s-loyalty-program-reward-details-items-wrapper" }, this.getCategoriesJsx(this.getIncludedItems(this.prize.excludedCategories, this.prize.excluded_category_ids), salla.lang.get('pages.loyalty_program.excluded_categories')), this.getBrandsJsx(this.getIncludedItems(this.prize.excludedBrands, this.prize.excluded_brand_ids), salla.lang.get('pages.loyalty_program.excluded_brands')), this.getProductsJsx(this.getProductIds(this.prize.excluded_product_ids), salla.lang.get('pages.loyalty_program.excluded_products')))),
161
- ]))), h("salla-reward-action", { key: 'd4ccecb2463fd6c06957f40e7865b1d12158b4bd', onActionClick: e => this.actionClick.emit(e.detail), prize: this.prize })));
191
+ ]))), h("salla-reward-action", { key: 'd1a0304c5229958d4a135affae27bb62c7419cd8', onActionClick: e => this.actionClick.emit(e.detail), prize: this.prize })));
162
192
  }
163
193
  static get watchers() { return {
164
194
  "prize": ["handlePrizeChange"]
@@ -166,8 +196,9 @@ const SallaRewardDetails = /*@__PURE__*/ proxyCustomElement(class SallaRewardDet
166
196
  static get style() { return sallaLoyaltyProgramCss; }
167
197
  }, [0, "salla-reward-details", {
168
198
  "prize": [16],
169
- "refreshKey": [32]
170
- }, undefined, {
199
+ "refreshKey": [32],
200
+ "includedProductsData": [32]
201
+ }, [[0, "loyaltyProductExchange", "handleProductExchange"]], {
171
202
  "prize": ["handlePrizeChange"]
172
203
  }]);
173
204
  __decorate([
@@ -184,7 +215,7 @@ function defineCustomElement() {
184
215
  if (typeof customElements === "undefined") {
185
216
  return;
186
217
  }
187
- const components = ["salla-reward-details", "salla-add-product-button", "salla-badge", "salla-booking-field", "salla-button", "salla-color-picker", "salla-conditional-fields", "salla-count-down", "salla-datetime-picker", "salla-file-upload", "salla-loading", "salla-map", "salla-modal", "salla-order-options-modal", "salla-product-availability", "salla-product-card", "salla-product-options", "salla-products-slider", "salla-progress-bar", "salla-quick-buy", "salla-reward-action", "salla-slider", "salla-tab-content", "salla-tab-header", "salla-tabs", "salla-tel-input"];
218
+ const components = ["salla-reward-details", "salla-add-product-button", "salla-badge", "salla-booking-field", "salla-button", "salla-color-picker", "salla-conditional-fields", "salla-count-down", "salla-datetime-picker", "salla-file-upload", "salla-loading", "salla-loyalty-exchange-product-card", "salla-map", "salla-modal", "salla-order-options-modal", "salla-product-availability", "salla-product-card", "salla-product-options", "salla-products-slider", "salla-progress-bar", "salla-quick-buy", "salla-reward-action", "salla-slider", "salla-tab-content", "salla-tab-header", "salla-tabs", "salla-tel-input"];
188
219
  components.forEach(tagName => { switch (tagName) {
189
220
  case "salla-reward-details":
190
221
  if (!customElements.get(tagName)) {
@@ -193,50 +224,55 @@ function defineCustomElement() {
193
224
  break;
194
225
  case "salla-add-product-button":
195
226
  if (!customElements.get(tagName)) {
196
- defineCustomElement$p();
227
+ defineCustomElement$q();
197
228
  }
198
229
  break;
199
230
  case "salla-badge":
200
231
  if (!customElements.get(tagName)) {
201
- defineCustomElement$o();
232
+ defineCustomElement$p();
202
233
  }
203
234
  break;
204
235
  case "salla-booking-field":
205
236
  if (!customElements.get(tagName)) {
206
- defineCustomElement$n();
237
+ defineCustomElement$o();
207
238
  }
208
239
  break;
209
240
  case "salla-button":
210
241
  if (!customElements.get(tagName)) {
211
- defineCustomElement$m();
242
+ defineCustomElement$n();
212
243
  }
213
244
  break;
214
245
  case "salla-color-picker":
215
246
  if (!customElements.get(tagName)) {
216
- defineCustomElement$l();
247
+ defineCustomElement$m();
217
248
  }
218
249
  break;
219
250
  case "salla-conditional-fields":
220
251
  if (!customElements.get(tagName)) {
221
- defineCustomElement$k();
252
+ defineCustomElement$l();
222
253
  }
223
254
  break;
224
255
  case "salla-count-down":
225
256
  if (!customElements.get(tagName)) {
226
- defineCustomElement$j();
257
+ defineCustomElement$k();
227
258
  }
228
259
  break;
229
260
  case "salla-datetime-picker":
230
261
  if (!customElements.get(tagName)) {
231
- defineCustomElement$i();
262
+ defineCustomElement$j();
232
263
  }
233
264
  break;
234
265
  case "salla-file-upload":
235
266
  if (!customElements.get(tagName)) {
236
- defineCustomElement$h();
267
+ defineCustomElement$i();
237
268
  }
238
269
  break;
239
270
  case "salla-loading":
271
+ if (!customElements.get(tagName)) {
272
+ defineCustomElement$h();
273
+ }
274
+ break;
275
+ case "salla-loyalty-exchange-product-card":
240
276
  if (!customElements.get(tagName)) {
241
277
  defineCustomElement$g();
242
278
  }