@salla.sa/twilight-components 2.14.447 → 2.14.448

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 (306) hide show
  1. package/dist/cjs/{filepond-plugin-file-poster-z_Pgx1za.js → filepond-plugin-file-poster-eC1dn4xl.js} +1 -1
  2. package/dist/cjs/{filepond-plugin-file-validate-size-BgbBSmud.js → filepond-plugin-file-validate-size-_2IuCCff.js} +1 -1
  3. package/dist/cjs/{filepond-plugin-file-validate-type-D2zmv3Bc.js → filepond-plugin-file-validate-type-BL0DbAnh.js} +1 -1
  4. package/dist/cjs/{filepond-plugin-image-edit-B74CXTZm.js → filepond-plugin-image-edit-CgKir2xD.js} +1 -1
  5. package/dist/cjs/{filepond-plugin-image-exif-orientation-DyaNWpnA.js → filepond-plugin-image-exif-orientation-syoj1Juw.js} +1 -1
  6. package/dist/cjs/{filepond-plugin-image-preview-C0XDHIb0.js → filepond-plugin-image-preview-B3kAVSrA.js} +1 -1
  7. package/dist/cjs/{filepond-H0V09y77.js → filepond-xdMsJQmk.js} +1 -1
  8. package/dist/cjs/{functions-Bs97hO7_.js → functions-B2luUM6v.js} +1 -1
  9. package/dist/cjs/{index-B5-Obq5h.js → index-BMR8pPXK.js} +1 -1
  10. package/dist/cjs/{index-CBTkKuC2.js → index-uoA36zqH.js} +2 -2
  11. package/dist/cjs/loader.cjs.js +1 -1
  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-cashback-banner.cjs.entry.js +1 -1
  25. package/dist/cjs/salla-comment-form_8.cjs.entry.js +1 -1
  26. package/dist/cjs/salla-conditional-offer.cjs.entry.js +1 -1
  27. package/dist/cjs/salla-contacts.cjs.entry.js +1 -1
  28. package/dist/cjs/salla-cookies-bar.cjs.entry.js +1 -1
  29. package/dist/cjs/salla-count-down.cjs.entry.js +1 -1
  30. package/dist/cjs/salla-custom-fields.cjs.entry.js +1 -1
  31. package/dist/cjs/salla-delivery-promise.cjs.entry.js +1 -1
  32. package/dist/cjs/salla-edit-order-button.cjs.entry.js +1 -1
  33. package/dist/cjs/salla-filters-widget.cjs.entry.js +1 -1
  34. package/dist/cjs/salla-filters.cjs.entry.js +1 -1
  35. package/dist/cjs/salla-fulfillment-methods.cjs.entry.js +1 -1
  36. package/dist/cjs/salla-gifting.cjs.entry.js +1 -1
  37. package/dist/cjs/salla-hook.cjs.entry.js +1 -1
  38. package/dist/cjs/salla-infinite-scroll.cjs.entry.js +1 -1
  39. package/dist/cjs/salla-installment.cjs.entry.js +1 -1
  40. package/dist/cjs/salla-list-tile.cjs.entry.js +1 -1
  41. package/dist/cjs/salla-localization-modal.cjs.entry.js +1 -1
  42. package/dist/cjs/salla-login-modal.cjs.entry.js +1 -1
  43. package/dist/cjs/salla-loyalty-banner.cjs.entry.js +2 -2
  44. package/dist/cjs/salla-loyalty-hero_2.cjs.entry.js +2 -2
  45. package/dist/cjs/salla-loyalty-panel.cjs.entry.js +3 -3
  46. package/dist/cjs/salla-loyalty-points-banner.cjs.entry.js +1 -1
  47. package/dist/cjs/salla-loyalty-prize-item.cjs.entry.js +1 -1
  48. package/dist/cjs/salla-loyalty-program.cjs.entry.js +3 -3
  49. package/dist/cjs/salla-loyalty-reward.cjs.entry.js +2 -2
  50. package/dist/cjs/salla-loyalty.cjs.entry.js +1 -1
  51. package/dist/cjs/salla-maintenance-alert.cjs.entry.js +1 -1
  52. package/dist/cjs/salla-map.cjs.entry.js +1 -1
  53. package/dist/cjs/salla-menu.cjs.entry.js +1 -1
  54. package/dist/cjs/salla-metadata.cjs.entry.js +1 -1
  55. package/dist/cjs/salla-multiple-bundle-product-cart_2.cjs.entry.js +1 -1
  56. package/dist/cjs/salla-multiple-bundle-product-options-modal_2.cjs.entry.js +1 -1
  57. package/dist/cjs/salla-multiple-bundle-product.cjs.entry.js +1 -1
  58. package/dist/cjs/salla-next-order-coupon.cjs.entry.js +1 -1
  59. package/dist/cjs/salla-notification-item.cjs.entry.js +1 -1
  60. package/dist/cjs/salla-notifications.cjs.entry.js +1 -1
  61. package/dist/cjs/salla-offer-modal.cjs.entry.js +1 -1
  62. package/dist/cjs/salla-offer.cjs.entry.js +1 -1
  63. package/dist/cjs/salla-order-details-multiple-bundle-product.cjs.entry.js +1 -1
  64. package/dist/cjs/salla-order-details-options.cjs.entry.js +1 -1
  65. package/dist/cjs/salla-order-details.cjs.entry.js +1 -1
  66. package/dist/cjs/salla-order-edit-item.cjs.entry.js +1 -1
  67. package/dist/cjs/salla-order-edit-product-card.cjs.entry.js +1 -1
  68. package/dist/cjs/salla-order-edit.cjs.entry.js +1 -1
  69. package/dist/cjs/salla-order-summary.cjs.entry.js +1 -1
  70. package/dist/cjs/salla-order-totals-card.cjs.entry.js +1 -1
  71. package/dist/cjs/salla-orders.cjs.entry.js +1 -1
  72. package/dist/cjs/salla-payments.cjs.entry.js +1 -1
  73. package/dist/cjs/salla-placeholder.cjs.entry.js +1 -1
  74. package/dist/cjs/salla-price-range.cjs.entry.js +1 -1
  75. package/dist/cjs/salla-product-card-embed.cjs.entry.js +1 -1
  76. package/dist/cjs/salla-product-card_2.cjs.entry.js +1 -1
  77. package/dist/cjs/salla-product-size-guide.cjs.entry.js +1 -1
  78. package/dist/cjs/salla-products-list.cjs.entry.js +1 -1
  79. package/dist/cjs/salla-progress-bar.cjs.entry.js +1 -1
  80. package/dist/cjs/salla-quick-order.cjs.entry.js +1 -1
  81. package/dist/cjs/salla-rating-modal.cjs.entry.js +1 -1
  82. package/dist/cjs/salla-reward-action_4.cjs.entry.js +3 -3
  83. package/dist/cjs/salla-scopes.cjs.entry.js +1 -1
  84. package/dist/cjs/salla-search.cjs.entry.js +1 -1
  85. package/dist/cjs/salla-skeleton.cjs.entry.js +1 -1
  86. package/dist/cjs/salla-slider.cjs.entry.js +1 -1
  87. package/dist/cjs/salla-social-share.cjs.entry.js +1 -1
  88. package/dist/cjs/salla-social.cjs.entry.js +1 -1
  89. package/dist/cjs/salla-tab-content_3.cjs.entry.js +1 -1
  90. package/dist/cjs/salla-tiered-offer.cjs.entry.js +48 -31
  91. package/dist/cjs/salla-tooltip.cjs.entry.js +1 -1
  92. package/dist/cjs/salla-trust-badges.cjs.entry.js +1 -1
  93. package/dist/cjs/salla-user-menu.cjs.entry.js +1 -1
  94. package/dist/cjs/salla-user-profile.cjs.entry.js +1 -1
  95. package/dist/cjs/salla-user-settings.cjs.entry.js +1 -1
  96. package/dist/cjs/salla-verify.cjs.entry.js +1 -1
  97. package/dist/cjs/salla-wallet.cjs.entry.js +1 -1
  98. package/dist/cjs/{tracked-promise-CyZ6P0Ww.js → tracked-promise-CVeKKQ0b.js} +1 -1
  99. package/dist/cjs/twilight.cjs.js +1 -1
  100. package/dist/cjs/{vanilla-picker-Bd-KMT3o.js → vanilla-picker-jTWa07cO.js} +1 -1
  101. package/dist/collection/components/salla-tiered-offer/salla-tiered-offer.js +47 -30
  102. package/dist/components/index.js +2 -2
  103. package/dist/components/salla-tiered-offer.js +47 -30
  104. package/dist/esm/{filepond-DO_Qk3JK.js → filepond-BbuLIuP0.js} +1 -1
  105. package/dist/esm/{filepond-plugin-file-poster-Btb31Xcs.js → filepond-plugin-file-poster-DlDdJpXD.js} +1 -1
  106. package/dist/esm/{filepond-plugin-file-validate-size-Bs8yCeGp.js → filepond-plugin-file-validate-size-BYkUUSGJ.js} +1 -1
  107. package/dist/esm/{filepond-plugin-file-validate-type-B5rUPm_4.js → filepond-plugin-file-validate-type-Cz9XrV5V.js} +1 -1
  108. package/dist/esm/{filepond-plugin-image-edit-XOXQA_f1.js → filepond-plugin-image-edit-CpEK0C8_.js} +1 -1
  109. package/dist/esm/{filepond-plugin-image-exif-orientation-DUyferIn.js → filepond-plugin-image-exif-orientation-D6RHOJuD.js} +1 -1
  110. package/dist/esm/{filepond-plugin-image-preview-BHVQ0frN.js → filepond-plugin-image-preview-D6ZgXCUp.js} +1 -1
  111. package/dist/esm/{functions-CHwbDaMQ.js → functions-BwIeBNND.js} +1 -1
  112. package/dist/esm/{index-DtunYVY8.js → index-BHYtfMwX.js} +2 -2
  113. package/dist/esm/{index-DECtOcJg.js → index-CETV5IHH.js} +1 -1
  114. package/dist/esm/loader.js +2 -2
  115. package/dist/esm/salla-accordion-body_2.entry.js +1 -1
  116. package/dist/esm/salla-accordion_6.entry.js +1 -1
  117. package/dist/esm/salla-add-product-button_5.entry.js +1 -1
  118. package/dist/esm/salla-advertisement.entry.js +1 -1
  119. package/dist/esm/salla-alert_2.entry.js +1 -1
  120. package/dist/esm/salla-app-install-alert.entry.js +1 -1
  121. package/dist/esm/salla-apps-icons.entry.js +1 -1
  122. package/dist/esm/salla-badge.entry.js +1 -1
  123. package/dist/esm/salla-booking-field_7.entry.js +10 -10
  124. package/dist/esm/salla-bullet-delivery_2.entry.js +1 -1
  125. package/dist/esm/salla-cart-coupons.entry.js +1 -1
  126. package/dist/esm/salla-cart-item-offers_2.entry.js +1 -1
  127. package/dist/esm/salla-cashback-banner.entry.js +1 -1
  128. package/dist/esm/salla-comment-form_8.entry.js +1 -1
  129. package/dist/esm/salla-conditional-offer.entry.js +1 -1
  130. package/dist/esm/salla-contacts.entry.js +1 -1
  131. package/dist/esm/salla-cookies-bar.entry.js +1 -1
  132. package/dist/esm/salla-count-down.entry.js +1 -1
  133. package/dist/esm/salla-custom-fields.entry.js +1 -1
  134. package/dist/esm/salla-delivery-promise.entry.js +1 -1
  135. package/dist/esm/salla-edit-order-button.entry.js +1 -1
  136. package/dist/esm/salla-filters-widget.entry.js +1 -1
  137. package/dist/esm/salla-filters.entry.js +1 -1
  138. package/dist/esm/salla-fulfillment-methods.entry.js +1 -1
  139. package/dist/esm/salla-gifting.entry.js +1 -1
  140. package/dist/esm/salla-hook.entry.js +1 -1
  141. package/dist/esm/salla-infinite-scroll.entry.js +1 -1
  142. package/dist/esm/salla-installment.entry.js +1 -1
  143. package/dist/esm/salla-list-tile.entry.js +1 -1
  144. package/dist/esm/salla-localization-modal.entry.js +1 -1
  145. package/dist/esm/salla-login-modal.entry.js +1 -1
  146. package/dist/esm/salla-loyalty-banner.entry.js +2 -2
  147. package/dist/esm/salla-loyalty-hero_2.entry.js +2 -2
  148. package/dist/esm/salla-loyalty-panel.entry.js +3 -3
  149. package/dist/esm/salla-loyalty-points-banner.entry.js +1 -1
  150. package/dist/esm/salla-loyalty-prize-item.entry.js +1 -1
  151. package/dist/esm/salla-loyalty-program.entry.js +3 -3
  152. package/dist/esm/salla-loyalty-reward.entry.js +2 -2
  153. package/dist/esm/salla-loyalty.entry.js +1 -1
  154. package/dist/esm/salla-maintenance-alert.entry.js +1 -1
  155. package/dist/esm/salla-map.entry.js +1 -1
  156. package/dist/esm/salla-menu.entry.js +1 -1
  157. package/dist/esm/salla-metadata.entry.js +1 -1
  158. package/dist/esm/salla-multiple-bundle-product-cart_2.entry.js +1 -1
  159. package/dist/esm/salla-multiple-bundle-product-options-modal_2.entry.js +1 -1
  160. package/dist/esm/salla-multiple-bundle-product.entry.js +1 -1
  161. package/dist/esm/salla-next-order-coupon.entry.js +1 -1
  162. package/dist/esm/salla-notification-item.entry.js +1 -1
  163. package/dist/esm/salla-notifications.entry.js +1 -1
  164. package/dist/esm/salla-offer-modal.entry.js +1 -1
  165. package/dist/esm/salla-offer.entry.js +1 -1
  166. package/dist/esm/salla-order-details-multiple-bundle-product.entry.js +1 -1
  167. package/dist/esm/salla-order-details-options.entry.js +1 -1
  168. package/dist/esm/salla-order-details.entry.js +1 -1
  169. package/dist/esm/salla-order-edit-item.entry.js +1 -1
  170. package/dist/esm/salla-order-edit-product-card.entry.js +1 -1
  171. package/dist/esm/salla-order-edit.entry.js +1 -1
  172. package/dist/esm/salla-order-summary.entry.js +1 -1
  173. package/dist/esm/salla-order-totals-card.entry.js +1 -1
  174. package/dist/esm/salla-orders.entry.js +1 -1
  175. package/dist/esm/salla-payments.entry.js +1 -1
  176. package/dist/esm/salla-placeholder.entry.js +1 -1
  177. package/dist/esm/salla-price-range.entry.js +1 -1
  178. package/dist/esm/salla-product-card-embed.entry.js +1 -1
  179. package/dist/esm/salla-product-card_2.entry.js +1 -1
  180. package/dist/esm/salla-product-size-guide.entry.js +1 -1
  181. package/dist/esm/salla-products-list.entry.js +1 -1
  182. package/dist/esm/salla-progress-bar.entry.js +1 -1
  183. package/dist/esm/salla-quick-order.entry.js +1 -1
  184. package/dist/esm/salla-rating-modal.entry.js +1 -1
  185. package/dist/esm/salla-reward-action_4.entry.js +3 -3
  186. package/dist/esm/salla-scopes.entry.js +1 -1
  187. package/dist/esm/salla-search.entry.js +1 -1
  188. package/dist/esm/salla-skeleton.entry.js +1 -1
  189. package/dist/esm/salla-slider.entry.js +1 -1
  190. package/dist/esm/salla-social-share.entry.js +1 -1
  191. package/dist/esm/salla-social.entry.js +1 -1
  192. package/dist/esm/salla-tab-content_3.entry.js +1 -1
  193. package/dist/esm/salla-tiered-offer.entry.js +48 -31
  194. package/dist/esm/salla-tooltip.entry.js +1 -1
  195. package/dist/esm/salla-trust-badges.entry.js +1 -1
  196. package/dist/esm/salla-user-menu.entry.js +1 -1
  197. package/dist/esm/salla-user-profile.entry.js +1 -1
  198. package/dist/esm/salla-user-settings.entry.js +1 -1
  199. package/dist/esm/salla-verify.entry.js +1 -1
  200. package/dist/esm/salla-wallet.entry.js +1 -1
  201. package/dist/esm/{tracked-promise-BcnHGy9I.js → tracked-promise-p8K_AJAQ.js} +1 -1
  202. package/dist/esm/twilight.js +2 -2
  203. package/dist/esm/{vanilla-picker-CKYy2jA4.js → vanilla-picker-CwN-g5m_.js} +1 -1
  204. package/dist/twilight/{p-6b65c0d5.entry.js → p-002505b9.entry.js} +1 -1
  205. package/dist/twilight/{p-76c1ba40.entry.js → p-017e3198.entry.js} +1 -1
  206. package/dist/twilight/{p-23ef52d4.entry.js → p-02af1d80.entry.js} +1 -1
  207. package/dist/twilight/{p-4f8ea699.entry.js → p-02de8869.entry.js} +1 -1
  208. package/dist/twilight/{p-ce81c02d.entry.js → p-06642c76.entry.js} +1 -1
  209. package/dist/twilight/{p-452601b5.entry.js → p-0a1a41e9.entry.js} +1 -1
  210. package/dist/twilight/{p-1431bedb.entry.js → p-0ad04ca2.entry.js} +1 -1
  211. package/dist/twilight/{p-c351436d.entry.js → p-0b271cf4.entry.js} +1 -1
  212. package/dist/twilight/{p-3a8af7f6.entry.js → p-0b3ca129.entry.js} +1 -1
  213. package/dist/twilight/{p-75f8c604.entry.js → p-0b8706e7.entry.js} +1 -1
  214. package/dist/twilight/{p-7f7d1bf1.entry.js → p-0f70ef8d.entry.js} +1 -1
  215. package/dist/twilight/{p-664fb7b8.entry.js → p-10b11447.entry.js} +1 -1
  216. package/dist/twilight/{p-814a9889.entry.js → p-1276ce95.entry.js} +1 -1
  217. package/dist/twilight/{p-493258d1.entry.js → p-13168745.entry.js} +1 -1
  218. package/dist/twilight/{p-3f2201f2.entry.js → p-131ffbcc.entry.js} +1 -1
  219. package/dist/twilight/{p-041fe75d.entry.js → p-1786ed83.entry.js} +1 -1
  220. package/dist/twilight/{p-e1e75d50.entry.js → p-1d25ae1c.entry.js} +1 -1
  221. package/dist/twilight/{p-5571c0bb.entry.js → p-1d5459db.entry.js} +1 -1
  222. package/dist/twilight/{p-d9a9ab0e.entry.js → p-202fcfc6.entry.js} +1 -1
  223. package/dist/twilight/{p-98dc6f0f.entry.js → p-20e1f5b9.entry.js} +1 -1
  224. package/dist/twilight/p-23aabd1c.entry.js +4 -0
  225. package/dist/twilight/{p-38069747.entry.js → p-2503c3ac.entry.js} +1 -1
  226. package/dist/twilight/{p-d7f22d4e.entry.js → p-2ccb281b.entry.js} +1 -1
  227. package/dist/twilight/{p-DpPRVQAV.js → p-2x5YwExe.js} +1 -1
  228. package/dist/twilight/{p-f92bd80a.entry.js → p-3c19f975.entry.js} +1 -1
  229. package/dist/twilight/{p-f2b78b99.entry.js → p-3ce5738a.entry.js} +1 -1
  230. package/dist/twilight/{p-e8551517.entry.js → p-3eab400d.entry.js} +1 -1
  231. package/dist/twilight/{p-39c65bfc.entry.js → p-404ac2a7.entry.js} +1 -1
  232. package/dist/twilight/{p-33968d21.entry.js → p-44215d1e.entry.js} +1 -1
  233. package/dist/twilight/{p-ca674d67.entry.js → p-47b4f13c.entry.js} +1 -1
  234. package/dist/twilight/{p-360e32b5.entry.js → p-4bca0fab.entry.js} +1 -1
  235. package/dist/twilight/{p-7749da52.entry.js → p-4cf98844.entry.js} +1 -1
  236. package/dist/twilight/{p-d5d4347d.entry.js → p-5031ae92.entry.js} +1 -1
  237. package/dist/twilight/{p-99804fec.entry.js → p-56916095.entry.js} +1 -1
  238. package/dist/twilight/{p-df88d27a.entry.js → p-5c009bd1.entry.js} +1 -1
  239. package/dist/twilight/{p-8116827d.entry.js → p-6346f1bd.entry.js} +1 -1
  240. package/dist/twilight/{p-2460406e.entry.js → p-64cc4267.entry.js} +1 -1
  241. package/dist/twilight/{p-2c04d113.entry.js → p-6d000a1b.entry.js} +1 -1
  242. package/dist/twilight/{p-2934beff.entry.js → p-6f3cce79.entry.js} +1 -1
  243. package/dist/twilight/{p-5648016f.entry.js → p-727b2a97.entry.js} +1 -1
  244. package/dist/twilight/{p-b6e37661.entry.js → p-734ff28a.entry.js} +1 -1
  245. package/dist/twilight/{p-429c2869.entry.js → p-752a8211.entry.js} +1 -1
  246. package/dist/twilight/{p-1e8c6aca.entry.js → p-76cf66ad.entry.js} +1 -1
  247. package/dist/twilight/{p-8d335191.entry.js → p-788d2dea.entry.js} +1 -1
  248. package/dist/twilight/{p-8c78f5b7.entry.js → p-79371f48.entry.js} +1 -1
  249. package/dist/twilight/{p-44b9b2ac.entry.js → p-7b448d5b.entry.js} +1 -1
  250. package/dist/twilight/{p-84ec609c.entry.js → p-7c348484.entry.js} +1 -1
  251. package/dist/twilight/{p-9396295d.entry.js → p-7cfef393.entry.js} +1 -1
  252. package/dist/twilight/{p-a7c81e63.entry.js → p-8581c249.entry.js} +1 -1
  253. package/dist/twilight/{p-62f3f1f7.entry.js → p-86dd66bc.entry.js} +1 -1
  254. package/dist/twilight/{p-bfe9f635.entry.js → p-87063cf0.entry.js} +1 -1
  255. package/dist/twilight/{p-8815596b.entry.js → p-8eaa609b.entry.js} +1 -1
  256. package/dist/twilight/{p-a5205495.entry.js → p-8ece10ce.entry.js} +1 -1
  257. package/dist/twilight/{p-49077075.entry.js → p-96c5dcd0.entry.js} +1 -1
  258. package/dist/twilight/{p-36df6391.entry.js → p-9fc822b7.entry.js} +1 -1
  259. package/dist/twilight/{p-DtunYVY8.js → p-BHYtfMwX.js} +1 -1
  260. package/dist/twilight/{p-Cdkh5eMM.js → p-BNaQSz6t.js} +1 -1
  261. package/dist/twilight/{p-BBI8lVBK.js → p-BW6_yrjl.js} +1 -1
  262. package/dist/twilight/{p-DInJVX-i.js → p-BvqPxWPn.js} +1 -1
  263. package/dist/twilight/{p-BOSt2xT-.js → p-Bvw0Axx9.js} +1 -1
  264. package/dist/twilight/{p-Be4qhkKw.js → p-CTAPbMR3.js} +1 -1
  265. package/dist/twilight/{p-BkdZznAG.js → p-Cl7SIRPD.js} +1 -1
  266. package/dist/twilight/{p-AGKwl7ld.js → p-D8Vw7Lrc.js} +1 -1
  267. package/dist/twilight/{p-DY_H4fO3.js → p-DZivnLbg.js} +1 -1
  268. package/dist/twilight/{p-8MUZ2pqK.js → p-Dvaa0hYf.js} +1 -1
  269. package/dist/twilight/{p-c2b5570d.entry.js → p-a1c7f1b1.entry.js} +1 -1
  270. package/dist/twilight/{p-83807c54.entry.js → p-a52dd6b4.entry.js} +1 -1
  271. package/dist/twilight/{p-f95d2671.entry.js → p-a8ce09a0.entry.js} +1 -1
  272. package/dist/twilight/{p-7d5cff28.entry.js → p-acc76fc8.entry.js} +1 -1
  273. package/dist/twilight/{p-b9965792.entry.js → p-adebf2ac.entry.js} +1 -1
  274. package/dist/twilight/{p-1d86e9f5.entry.js → p-aeaad4b5.entry.js} +1 -1
  275. package/dist/twilight/{p-afe87123.entry.js → p-b678e909.entry.js} +1 -1
  276. package/dist/twilight/{p-0c3c496e.entry.js → p-b6f3083c.entry.js} +1 -1
  277. package/dist/twilight/{p-6272d023.entry.js → p-b9126729.entry.js} +1 -1
  278. package/dist/twilight/{p-54a3559b.entry.js → p-ba28e996.entry.js} +1 -1
  279. package/dist/twilight/{p-cc9246b7.entry.js → p-bcab43fc.entry.js} +1 -1
  280. package/dist/twilight/{p-2733190a.entry.js → p-be186489.entry.js} +1 -1
  281. package/dist/twilight/{p-d2617fba.entry.js → p-be8ac1a3.entry.js} +1 -1
  282. package/dist/twilight/{p-5374824f.entry.js → p-c1fa4ddb.entry.js} +1 -1
  283. package/dist/twilight/{p-c987d08e.entry.js → p-c3466964.entry.js} +1 -1
  284. package/dist/twilight/{p-51e35559.entry.js → p-c3703ca3.entry.js} +1 -1
  285. package/dist/twilight/{p-f6a86eab.entry.js → p-c651f264.entry.js} +1 -1
  286. package/dist/twilight/{p-86c39145.entry.js → p-c6fe271a.entry.js} +1 -1
  287. package/dist/twilight/{p-ce2e72a2.entry.js → p-cc618f38.entry.js} +1 -1
  288. package/dist/twilight/{p-50dd7bd2.entry.js → p-cd2c961c.entry.js} +1 -1
  289. package/dist/twilight/{p-6c788e1e.entry.js → p-cd48d7aa.entry.js} +1 -1
  290. package/dist/twilight/{p-0e1a6208.entry.js → p-d03f8ab0.entry.js} +1 -1
  291. package/dist/twilight/{p-1c54fe1c.entry.js → p-d25cd2ed.entry.js} +1 -1
  292. package/dist/twilight/{p-70b75d07.entry.js → p-d26e0eae.entry.js} +1 -1
  293. package/dist/twilight/{p-8e0ee5ac.entry.js → p-d2a76aa4.entry.js} +1 -1
  294. package/dist/twilight/{p-e701a5e1.entry.js → p-df48debf.entry.js} +1 -1
  295. package/dist/twilight/{p-e6f940d8.entry.js → p-e4d102f5.entry.js} +1 -1
  296. package/dist/twilight/{p-951e437f.entry.js → p-ed91eae0.entry.js} +1 -1
  297. package/dist/twilight/{p-2e9679fb.entry.js → p-f06bd0b0.entry.js} +1 -1
  298. package/dist/twilight/{p-158c0fd9.entry.js → p-f67dd591.entry.js} +1 -1
  299. package/dist/twilight/{p-a6cbb062.entry.js → p-f8369073.entry.js} +1 -1
  300. package/dist/twilight/{p-22eac711.entry.js → p-fb6fea7a.entry.js} +1 -1
  301. package/dist/twilight/{p-C6iDVPJi.js → p-lbjqzRH2.js} +1 -1
  302. package/dist/twilight/twilight.esm.js +1 -1
  303. package/dist/types/components/salla-tiered-offer/interfaces.d.ts +1 -0
  304. package/dist/types/components/salla-tiered-offer/salla-tiered-offer.d.ts +3 -0
  305. package/package.json +5 -5
  306. package/dist/twilight/p-071f9c31.entry.js +0 -4
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-CBTkKuC2.js');
6
+ var index = require('./index-uoA36zqH.js');
7
7
 
8
8
  var copyIcon = `<!-- Generated by IcoMoon.io -->
9
9
  <svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 32 32">
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-CBTkKuC2.js');
6
+ var index = require('./index-uoA36zqH.js');
7
7
 
8
8
  const sallaOrderDetailsCss = "";
9
9
 
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-CBTkKuC2.js');
6
+ var index = require('./index-uoA36zqH.js');
7
7
  var helpers = require('./helpers-BJ2rnhxz.js');
8
8
  require('./interfaces-Bh7W0bEU.js');
9
9
 
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-CBTkKuC2.js');
6
+ var index = require('./index-uoA36zqH.js');
7
7
 
8
8
  const sallaOrderEditProductCardCss = ":host{display:block;min-width:0}";
9
9
 
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-CBTkKuC2.js');
6
+ var index = require('./index-uoA36zqH.js');
7
7
  var helpers = require('./helpers-BJ2rnhxz.js');
8
8
  require('./interfaces-Bh7W0bEU.js');
9
9
 
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-CBTkKuC2.js');
6
+ var index = require('./index-uoA36zqH.js');
7
7
  var swapStroke = require('./swap-stroke-CYGxjKIS.js');
8
8
  var check = require('./check-BnVBPQNp.js');
9
9
 
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-CBTkKuC2.js');
6
+ var index = require('./index-uoA36zqH.js');
7
7
 
8
8
  const sallaOrderTotalsCardCss = ":host{display:block}";
9
9
 
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-CBTkKuC2.js');
6
+ var index = require('./index-uoA36zqH.js');
7
7
  var Helper = require('./Helper-CU4Xuiki.js');
8
8
  require('./anime.es-BqW8JHZi.js');
9
9
 
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-CBTkKuC2.js');
6
+ var index = require('./index-uoA36zqH.js');
7
7
 
8
8
  const sallaPaymentsCss = ":host{display:block}";
9
9
 
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-CBTkKuC2.js');
6
+ var index = require('./index-uoA36zqH.js');
7
7
 
8
8
  var Inbox = `<!-- Generated by IcoMoon.io -->
9
9
  <svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 32 32">
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-CBTkKuC2.js');
6
+ var index = require('./index-uoA36zqH.js');
7
7
  var arrowLeft = require('./arrow-left-xSEmRpp6.js');
8
8
 
9
9
  var arrowRight = `<!-- Generated by IcoMoon.io -->
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-CBTkKuC2.js');
6
+ var index = require('./index-uoA36zqH.js');
7
7
 
8
8
  const sallaProductCardEmbedCss = "@charset \"UTF-8\";:host{display:inline-block;vertical-align:top;max-width:12rem}:host([align=left]){float:inline-start;margin-block-end:1em;margin-inline-end:1em;shape-outside:margin-box}:host([align=right]){float:inline-end;margin-block-end:1em;margin-inline-start:1em;shape-outside:margin-box}:host([align=center]){display:block;clear:both;margin-block:1em;margin-inline:auto}.s-product-card-embed-card{display:block}";
9
9
 
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-CBTkKuC2.js');
6
+ var index = require('./index-uoA36zqH.js');
7
7
  var star2 = require('./star2-R146a27p.js');
8
8
  var Helper = require('./Helper-CU4Xuiki.js');
9
9
  require('./anime.es-BqW8JHZi.js');
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-CBTkKuC2.js');
6
+ var index = require('./index-uoA36zqH.js');
7
7
 
8
8
  var PencilRuler = `<!-- Generated by IcoMoon.io -->
9
9
  <svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 32 32">
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-CBTkKuC2.js');
6
+ var index = require('./index-uoA36zqH.js');
7
7
  var anime_es = require('./anime.es-BqW8JHZi.js');
8
8
  var shoppingBag = require('./shopping-bag-C1gvTVHr.js');
9
9
  var Helper = require('./Helper-CU4Xuiki.js');
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-CBTkKuC2.js');
6
+ var index = require('./index-uoA36zqH.js');
7
7
 
8
8
  const sallaProgressBarCss = "";
9
9
 
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-CBTkKuC2.js');
6
+ var index = require('./index-uoA36zqH.js');
7
7
  var iphoneX = require('./iphone-x-qC21wCLj.js');
8
8
  var mail = require('./mail-Bgvt2hc9.js');
9
9
  var cancel = require('./cancel-B5SbMYEk.js');
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-CBTkKuC2.js');
6
+ var index = require('./index-uoA36zqH.js');
7
7
  var star = require('./star-DGcH7Yso.js');
8
8
  var checkCircle2 = require('./check-circle2-BDvlT4_n.js');
9
9
  var Helper = require('./Helper-CU4Xuiki.js');
@@ -3,13 +3,13 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-CBTkKuC2.js');
7
- var functions = require('./functions-Bs97hO7_.js');
6
+ var index = require('./index-uoA36zqH.js');
7
+ var functions = require('./functions-B2luUM6v.js');
8
8
  var gift = require('./gift-DbNivqYO.js');
9
9
  var tag = require('./tag-D-PcUR33.js');
10
10
  var check = require('./check-BnVBPQNp.js');
11
11
  var cancel = require('./cancel-B5SbMYEk.js');
12
- var trackedPromise = require('./tracked-promise-CyZ6P0Ww.js');
12
+ var trackedPromise = require('./tracked-promise-CVeKKQ0b.js');
13
13
 
14
14
  const sallaLoyaltyProgramCss$3 = "";
15
15
 
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-CBTkKuC2.js');
6
+ var index = require('./index-uoA36zqH.js');
7
7
  var search = require('./search-c7Aa7lM9.js');
8
8
 
9
9
  var StoreAlt = `<!-- Generated by IcoMoon.io -->
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-CBTkKuC2.js');
6
+ var index = require('./index-uoA36zqH.js');
7
7
  var search = require('./search-c7Aa7lM9.js');
8
8
  var Helper = require('./Helper-CU4Xuiki.js');
9
9
  require('./anime.es-BqW8JHZi.js');
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-CBTkKuC2.js');
6
+ var index = require('./index-uoA36zqH.js');
7
7
 
8
8
  const sallaSkeletonCss = ":host{display:block}";
9
9
 
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-CBTkKuC2.js');
6
+ var index = require('./index-uoA36zqH.js');
7
7
  var keyboard_arrow_right = require('./keyboard_arrow_right-BayM_Il2.js');
8
8
 
9
9
  /**
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-CBTkKuC2.js');
6
+ var index = require('./index-uoA36zqH.js');
7
7
  var anime_es = require('./anime.es-BqW8JHZi.js');
8
8
  var facebook = require('./facebook-DbXua6B9.js');
9
9
  var mail = require('./mail-Bgvt2hc9.js');
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-CBTkKuC2.js');
6
+ var index = require('./index-uoA36zqH.js');
7
7
  var facebook = require('./facebook-DbXua6B9.js');
8
8
 
9
9
  var instagram = `<!-- Generated by IcoMoon.io -->
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-CBTkKuC2.js');
6
+ var index = require('./index-uoA36zqH.js');
7
7
 
8
8
  const sallaTabContentCss = "";
9
9
 
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-CBTkKuC2.js');
6
+ var index = require('./index-uoA36zqH.js');
7
7
 
8
8
  var DiscountType;
9
9
  (function (DiscountType) {
@@ -124,6 +124,15 @@ const SallaTieredOffer = class {
124
124
  // If coupon is applied but offer doesn't support coupons, widget should be hidden
125
125
  return !(cartCoupon && !offerData.details?.applied_with_coupon);
126
126
  }
127
+ shouldHideForGuest() {
128
+ return salla.config.isGuest();
129
+ }
130
+ shouldHideUntilThreshold(details, tierIndex) {
131
+ return !!(details?.hide_until_threshold && tierIndex === 0);
132
+ }
133
+ resolveTierName(tiers, index) {
134
+ return TierUtils.getTierNameByIndex(tiers, index) || '';
135
+ }
127
136
  async fetchTieredOfferData() {
128
137
  try {
129
138
  const { data } = await salla.api.cart.offers();
@@ -150,14 +159,20 @@ const SallaTieredOffer = class {
150
159
  // Find current tier index based on current_value from API
151
160
  const currentValue = this.apiOfferData.details?.current_value || 0;
152
161
  const currentTierIndex = this.findCurrentTierIndex(currentValue);
153
- // Only render if user has reached at least the first tier
154
- if (currentTierIndex === 0) {
162
+ // Hide entire widget for unauthenticated users
163
+ if (this.shouldHideForGuest()) {
164
+ this.canRender = false;
165
+ return;
166
+ }
167
+ // Only hide until threshold for merchants with the flag enabled (e.g. Arabian Oud)
168
+ if (this.shouldHideUntilThreshold(this.apiOfferData.details, currentTierIndex)) {
155
169
  this.canRender = false;
156
170
  return;
157
171
  }
158
172
  this.currentTierIndex = currentTierIndex;
159
- this.currentTier = TierUtils.getTierNameByIndex(this.tieredOfferData.tiers, currentTierIndex);
160
- this.activeTabTier = this.currentTier;
173
+ this.currentTier = this.resolveTierName(this.tieredOfferData.tiers, currentTierIndex);
174
+ // Default to first tab so tabs always have visible content
175
+ this.activeTabTier = this.currentTier || this.tieredOfferData.tiers[0]?.tier_name;
161
176
  this.canRender = true;
162
177
  }
163
178
  componentDidLoad() {
@@ -192,44 +207,46 @@ const SallaTieredOffer = class {
192
207
  if (!freshOfferData || !this.tieredOfferData) {
193
208
  return;
194
209
  }
210
+ if (!freshOfferData.details?.discounts?.length) {
211
+ this.canRender = false;
212
+ return;
213
+ }
195
214
  // Check coupon compatibility
196
215
  if (!this.validateCouponCompatibility(freshOfferData, updatedCart.coupon)) {
197
216
  this.canRender = false;
198
217
  return;
199
218
  }
200
- // If no coupon conflict, show widget
201
- this.canRender = true;
202
- // Check if this offer should update with cart changes
203
- if (freshOfferData.details?.with_current_cart === false) {
219
+ // Hide entire widget for unauthenticated users
220
+ if (this.shouldHideForGuest()) {
221
+ this.canRender = false;
204
222
  return;
205
223
  }
206
- // Update current_value in API offer data
207
- // const currentValue = updatedCart.sub_total;
208
- // console.log('currentValue #####3', currentValue);
209
- // this.apiOfferData = {
210
- // ...this.apiOfferData,
211
- // details: {
212
- // ...this.apiOfferData.details,
213
- // current_value: currentValue
214
- // }
215
- // };
216
- // Use current_value from fresh API data instead of cart sub_total
224
+ // Build fresh tier map so index computation uses up-to-date thresholds
225
+ const freshTieredData = this.mapApiDataToTiers(freshOfferData);
217
226
  const currentValue = freshOfferData.details?.current_value || 0;
218
- this.apiOfferData = freshOfferData;
219
- // Update current tier based on new value
220
- const newTierIndex = this.findCurrentTierIndex(currentValue);
221
- // Check if user qualifies for any tier
222
- if (newTierIndex === 0) {
227
+ const newTierIndex = this.findCurrentTierIndex(currentValue, freshTieredData.tiers);
228
+ // Only hide until threshold for merchants with the flag enabled (e.g. Arabian Oud)
229
+ if (this.shouldHideUntilThreshold(freshOfferData.details, newTierIndex)) {
223
230
  this.canRender = false;
224
231
  return;
225
232
  }
226
- // user qualifies show widget
233
+ // Offer progress is based on historical purchases only — skip state update on cart changes
234
+ // Use strict === false to avoid treating an omitted flag as false
235
+ if (freshOfferData.details?.with_current_cart === false) {
236
+ this.canRender = true;
237
+ return;
238
+ }
239
+ // All guards passed — update state atomically
240
+ this.apiOfferData = freshOfferData;
241
+ this.tieredOfferData = freshTieredData;
227
242
  this.canRender = true;
228
243
  this.currentTierIndex = newTierIndex;
229
- this.currentTier = TierUtils.getTierNameByIndex(this.tieredOfferData.tiers, newTierIndex);
230
- // Update active tab if needed
231
- if (this.activeTabTier !== this.currentTier) {
232
- this.activeTabTier = this.currentTier;
244
+ // Tiers are 1-based; fall back to first tier when no tier has been reached yet
245
+ this.currentTier = this.resolveTierName(freshTieredData.tiers, newTierIndex);
246
+ // Update active tab if needed; default to first tab when no tier reached
247
+ const resolvedTab = this.currentTier || freshTieredData.tiers[0]?.tier_name;
248
+ if (this.activeTabTier !== resolvedTab) {
249
+ this.activeTabTier = resolvedTab;
233
250
  }
234
251
  }
235
252
  getLoadingSkeletonView() {
@@ -327,7 +344,7 @@ const SallaTieredOffer = class {
327
344
  return null;
328
345
  }
329
346
  const currentTierData = this.getCurrentTierData();
330
- return (index.h(index.Host, null, index.h("div", { class: "s-tiered-offer-container" }, index.h("div", { class: "s-tiered-offer-header" }, index.h("div", { class: "s-tiered-offer-header-content" }, index.h("p", { class: "s-tiered-offer-program-title" }, this.loyaltyProgramText), index.h("div", { class: "s-tiered-offer-current-tier-name-wrapper" }, index.h("h2", { class: "s-tiered-offer-current-tier" }, this.currentTierText, " ", index.h("span", { class: "s-tiered-offer-tier-name" }, currentTierData.name)), index.h("span", { innerHTML: currentTierData.icon })))), this.renderProgressBar(), this.renderTabs())));
347
+ return (index.h(index.Host, null, index.h("div", { class: "s-tiered-offer-container" }, index.h("div", { class: "s-tiered-offer-header" }, index.h("div", { class: "s-tiered-offer-header-content" }, index.h("p", { class: "s-tiered-offer-program-title" }, this.loyaltyProgramText), this.currentTier && (index.h("div", { class: "s-tiered-offer-current-tier-name-wrapper" }, index.h("h2", { class: "s-tiered-offer-current-tier" }, this.currentTierText, " ", index.h("span", { class: "s-tiered-offer-tier-name" }, currentTierData.name)), index.h("span", { innerHTML: currentTierData.icon }))))), this.renderProgressBar(), this.renderTabs())));
331
348
  }
332
349
  };
333
350
  SallaTieredOffer.style = sallaTieredOfferCss;
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-CBTkKuC2.js');
6
+ var index = require('./index-uoA36zqH.js');
7
7
 
8
8
  const sallaTooltipCss = ".s-tooltip-container{position:relative;display:inline-block}.s-tooltip-item{position:absolute;transform:translateX(-63%) translateY(-50%);background-color:var(--color-primary);color:var(--color-primary-reverse);bottom:100%;left:50%;text-align:center;border-radius:5px;z-index:1;white-space:nowrap;opacity:0;transition:opacity 0.3s;pointer-events:none;margin:0 0 16px 8px;padding:12px;max-width:150px;width:190px;white-space:normal;opacity:1}.s-tooltip-item::after{content:\"\";position:absolute;bottom:-10px;left:50%;margin-left:-5px;border-width:5px;border-style:solid;border-color:var(--color-primary) transparent transparent transparent}.s-tooltip-item:dir(ltr){transform:translateX(-72%)}.s-tooltip-item--dark{background-color:#555555;color:white;padding:5px 15px;border-radius:8px;font-size:12px;font-weight:normal;max-width:330px;width:max-content}.s-tooltip-item--dark::after{border-color:#555555 transparent transparent transparent}";
9
9
 
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-CBTkKuC2.js');
6
+ var index = require('./index-uoA36zqH.js');
7
7
 
8
8
  const sallaTrustBadgesCss = "";
9
9
 
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-CBTkKuC2.js');
6
+ var index = require('./index-uoA36zqH.js');
7
7
  var keyboard_arrow_down = require('./keyboard_arrow_down-DHJ3FFZq.js');
8
8
  var bellRing = require('./bell-ring-BfKPinNo.js');
9
9
  var cart = require('./cart-s-x1Fshk.js');
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-CBTkKuC2.js');
6
+ var index = require('./index-uoA36zqH.js');
7
7
  var interfaces = require('./interfaces-CRqrf5RX.js');
8
8
 
9
9
  const sallaUserProfileCss = ":host{display:block}";
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-CBTkKuC2.js');
6
+ var index = require('./index-uoA36zqH.js');
7
7
 
8
8
  var Bullhorn = `<!-- Generated by IcoMoon.io -->
9
9
  <svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 32 32">
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-CBTkKuC2.js');
6
+ var index = require('./index-uoA36zqH.js');
7
7
  var mail = require('./mail-Bgvt2hc9.js');
8
8
 
9
9
  var AndroidPhoneIcon = `<!-- Generated by IcoMoon.io -->
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-CBTkKuC2.js');
6
+ var index = require('./index-uoA36zqH.js');
7
7
 
8
8
  const sallaWalletCss = ".s-wallet-table{min-width:100%}.s-wallet-table-balance-container{display:flex !important;align-items:center !important;justify-content:flex-start !important;gap:1rem}.s-wallet-table-balance-icon{border-radius:50%;width:52px;height:52px;font-size:25px;padding:16px 13px;background:var(--color-primary-reverse);color:var(--color-primary)}.s-wallet-table-empty-state{display:flex;flex-direction:column;align-items:center}.s-wallet-table-empty-state i{font-size:80px;margin:4rem 0 2rem;color:var(--infinte-color)}.s-wallet-table-transaction-status{padding:6px 19px !important;border-radius:20px;width:max-content;display:flex;align-items:center}.s-wallet-table-transaction-status-default{background:#fff6eb;color:#a46f29}.s-wallet-table-transaction-status-cashback{background:#effbf6;color:#00af6c}.s-wallet-table-transaction-status-refund{background:#ecf3fe;color:#5196f3}.s-wallet-table-transaction-status-purchase{background:#feecec;color:#f55157}.s-wallet-table-transaction-status-icons-success{color:#00af6c}";
9
9
 
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-CBTkKuC2.js');
6
+ var index = require('./index-uoA36zqH.js');
7
7
 
8
8
  function TrackedPromise(fn, options = {}) {
9
9
  options = Object.assign({ initialData: undefined, initialStatus: 'idle' }, options);
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-CBTkKuC2.js');
6
+ var index = require('./index-uoA36zqH.js');
7
7
 
8
8
  var _documentCurrentScript = typeof document !== 'undefined' ? document.currentScript : null;
9
9
  /*
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-CBTkKuC2.js');
6
+ var index = require('./index-uoA36zqH.js');
7
7
 
8
8
  function _mergeNamespaces(n, m) {
9
9
  m.forEach(function (e) {
@@ -54,6 +54,15 @@ export class SallaTieredOffer {
54
54
  // If coupon is applied but offer doesn't support coupons, widget should be hidden
55
55
  return !(cartCoupon && !offerData.details?.applied_with_coupon);
56
56
  }
57
+ shouldHideForGuest() {
58
+ return salla.config.isGuest();
59
+ }
60
+ shouldHideUntilThreshold(details, tierIndex) {
61
+ return !!(details?.hide_until_threshold && tierIndex === 0);
62
+ }
63
+ resolveTierName(tiers, index) {
64
+ return TierUtils.getTierNameByIndex(tiers, index) || '';
65
+ }
57
66
  async fetchTieredOfferData() {
58
67
  try {
59
68
  const { data } = await salla.api.cart.offers();
@@ -80,14 +89,20 @@ export class SallaTieredOffer {
80
89
  // Find current tier index based on current_value from API
81
90
  const currentValue = this.apiOfferData.details?.current_value || 0;
82
91
  const currentTierIndex = this.findCurrentTierIndex(currentValue);
83
- // Only render if user has reached at least the first tier
84
- if (currentTierIndex === 0) {
92
+ // Hide entire widget for unauthenticated users
93
+ if (this.shouldHideForGuest()) {
94
+ this.canRender = false;
95
+ return;
96
+ }
97
+ // Only hide until threshold for merchants with the flag enabled (e.g. Arabian Oud)
98
+ if (this.shouldHideUntilThreshold(this.apiOfferData.details, currentTierIndex)) {
85
99
  this.canRender = false;
86
100
  return;
87
101
  }
88
102
  this.currentTierIndex = currentTierIndex;
89
- this.currentTier = TierUtils.getTierNameByIndex(this.tieredOfferData.tiers, currentTierIndex);
90
- this.activeTabTier = this.currentTier;
103
+ this.currentTier = this.resolveTierName(this.tieredOfferData.tiers, currentTierIndex);
104
+ // Default to first tab so tabs always have visible content
105
+ this.activeTabTier = this.currentTier || this.tieredOfferData.tiers[0]?.tier_name;
91
106
  this.canRender = true;
92
107
  }
93
108
  componentDidLoad() {
@@ -122,44 +137,46 @@ export class SallaTieredOffer {
122
137
  if (!freshOfferData || !this.tieredOfferData) {
123
138
  return;
124
139
  }
140
+ if (!freshOfferData.details?.discounts?.length) {
141
+ this.canRender = false;
142
+ return;
143
+ }
125
144
  // Check coupon compatibility
126
145
  if (!this.validateCouponCompatibility(freshOfferData, updatedCart.coupon)) {
127
146
  this.canRender = false;
128
147
  return;
129
148
  }
130
- // If no coupon conflict, show widget
131
- this.canRender = true;
132
- // Check if this offer should update with cart changes
133
- if (freshOfferData.details?.with_current_cart === false) {
149
+ // Hide entire widget for unauthenticated users
150
+ if (this.shouldHideForGuest()) {
151
+ this.canRender = false;
134
152
  return;
135
153
  }
136
- // Update current_value in API offer data
137
- // const currentValue = updatedCart.sub_total;
138
- // console.log('currentValue #####3', currentValue);
139
- // this.apiOfferData = {
140
- // ...this.apiOfferData,
141
- // details: {
142
- // ...this.apiOfferData.details,
143
- // current_value: currentValue
144
- // }
145
- // };
146
- // Use current_value from fresh API data instead of cart sub_total
154
+ // Build fresh tier map so index computation uses up-to-date thresholds
155
+ const freshTieredData = this.mapApiDataToTiers(freshOfferData);
147
156
  const currentValue = freshOfferData.details?.current_value || 0;
148
- this.apiOfferData = freshOfferData;
149
- // Update current tier based on new value
150
- const newTierIndex = this.findCurrentTierIndex(currentValue);
151
- // Check if user qualifies for any tier
152
- if (newTierIndex === 0) {
157
+ const newTierIndex = this.findCurrentTierIndex(currentValue, freshTieredData.tiers);
158
+ // Only hide until threshold for merchants with the flag enabled (e.g. Arabian Oud)
159
+ if (this.shouldHideUntilThreshold(freshOfferData.details, newTierIndex)) {
153
160
  this.canRender = false;
154
161
  return;
155
162
  }
156
- // user qualifies show widget
163
+ // Offer progress is based on historical purchases only — skip state update on cart changes
164
+ // Use strict === false to avoid treating an omitted flag as false
165
+ if (freshOfferData.details?.with_current_cart === false) {
166
+ this.canRender = true;
167
+ return;
168
+ }
169
+ // All guards passed — update state atomically
170
+ this.apiOfferData = freshOfferData;
171
+ this.tieredOfferData = freshTieredData;
157
172
  this.canRender = true;
158
173
  this.currentTierIndex = newTierIndex;
159
- this.currentTier = TierUtils.getTierNameByIndex(this.tieredOfferData.tiers, newTierIndex);
160
- // Update active tab if needed
161
- if (this.activeTabTier !== this.currentTier) {
162
- this.activeTabTier = this.currentTier;
174
+ // Tiers are 1-based; fall back to first tier when no tier has been reached yet
175
+ this.currentTier = this.resolveTierName(freshTieredData.tiers, newTierIndex);
176
+ // Update active tab if needed; default to first tab when no tier reached
177
+ const resolvedTab = this.currentTier || freshTieredData.tiers[0]?.tier_name;
178
+ if (this.activeTabTier !== resolvedTab) {
179
+ this.activeTabTier = resolvedTab;
163
180
  }
164
181
  }
165
182
  getLoadingSkeletonView() {
@@ -257,7 +274,7 @@ export class SallaTieredOffer {
257
274
  return null;
258
275
  }
259
276
  const currentTierData = this.getCurrentTierData();
260
- return (h(Host, null, h("div", { class: "s-tiered-offer-container" }, h("div", { class: "s-tiered-offer-header" }, h("div", { class: "s-tiered-offer-header-content" }, h("p", { class: "s-tiered-offer-program-title" }, this.loyaltyProgramText), h("div", { class: "s-tiered-offer-current-tier-name-wrapper" }, h("h2", { class: "s-tiered-offer-current-tier" }, this.currentTierText, " ", h("span", { class: "s-tiered-offer-tier-name" }, currentTierData.name)), h("span", { innerHTML: currentTierData.icon })))), this.renderProgressBar(), this.renderTabs())));
277
+ return (h(Host, null, h("div", { class: "s-tiered-offer-container" }, h("div", { class: "s-tiered-offer-header" }, h("div", { class: "s-tiered-offer-header-content" }, h("p", { class: "s-tiered-offer-program-title" }, this.loyaltyProgramText), this.currentTier && (h("div", { class: "s-tiered-offer-current-tier-name-wrapper" }, h("h2", { class: "s-tiered-offer-current-tier" }, this.currentTierText, " ", h("span", { class: "s-tiered-offer-tier-name" }, currentTierData.name)), h("span", { innerHTML: currentTierData.icon }))))), this.renderProgressBar(), this.renderTabs())));
261
278
  }
262
279
  static get is() { return "salla-tiered-offer"; }
263
280
  static get originalStyleUrls() {