@salla.sa/twilight-components 2.14.575 → 2.14.577

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 (478) hide show
  1. package/dist/cjs/{filepond-NMq4bM2q.js → filepond-iflxa4A5.js} +1 -1
  2. package/dist/cjs/{filepond-plugin-file-poster-TEelNjjG.js → filepond-plugin-file-poster-NZ84xlKh.js} +1 -1
  3. package/dist/cjs/{filepond-plugin-file-validate-size-DRVxzFUc.js → filepond-plugin-file-validate-size-m8Z_JlZX.js} +1 -1
  4. package/dist/cjs/{filepond-plugin-file-validate-type-75J1mHEB.js → filepond-plugin-file-validate-type-BfF6LYAT.js} +1 -1
  5. package/dist/cjs/{filepond-plugin-image-edit-CvC-CZjk.js → filepond-plugin-image-edit-DfRJ3iRj.js} +1 -1
  6. package/dist/cjs/{filepond-plugin-image-exif-orientation-D7mJeHKx.js → filepond-plugin-image-exif-orientation-BZxYZai-.js} +1 -1
  7. package/dist/cjs/{filepond-plugin-image-preview-QxURSuZ4.js → filepond-plugin-image-preview-BQ7HvH2d.js} +1 -1
  8. package/dist/cjs/{helpers-Dm4BirHO.js → helpers-DBynEhOO.js} +0 -15
  9. package/dist/cjs/{index-Bt8A6pnr.js → index-CSe-ijAV.js} +2 -2
  10. package/dist/cjs/{intlTelInput-Dq8y3YHO.js → intlTelInput-DHfYz8vv.js} +1 -1
  11. package/dist/cjs/loader.cjs.js +2 -2
  12. package/dist/cjs/salla-accordion-body_2.cjs.entry.js +3 -3
  13. package/dist/cjs/salla-accordion_6.cjs.entry.js +2 -2
  14. package/dist/cjs/salla-add-product-button_5.cjs.entry.js +3 -3
  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-applied-filters.cjs.entry.js +1 -1
  19. package/dist/cjs/salla-apps-icons.cjs.entry.js +1 -1
  20. package/dist/cjs/salla-attachment-view_9.cjs.entry.js +17 -17
  21. package/dist/cjs/salla-badge.cjs.entry.js +1 -1
  22. package/dist/cjs/salla-basket-gap.cjs.entry.js +1 -1
  23. package/dist/cjs/salla-bullet-delivery_3.cjs.entry.js +179 -187
  24. package/dist/cjs/salla-cart-coupons.cjs.entry.js +160 -7
  25. package/dist/cjs/salla-cart-item-offers_2.cjs.entry.js +2 -2
  26. package/dist/cjs/salla-cart-summary-card.cjs.entry.js +1 -1
  27. package/dist/cjs/salla-cashback-banner.cjs.entry.js +1 -1
  28. package/dist/cjs/salla-comment-factors.cjs.entry.js +1 -1
  29. package/dist/cjs/salla-comment-form_9.cjs.entry.js +4 -4
  30. package/dist/cjs/salla-conditional-offer.cjs.entry.js +1 -1
  31. package/dist/cjs/salla-contacts.cjs.entry.js +1 -1
  32. package/dist/cjs/salla-cookies-bar.cjs.entry.js +1 -1
  33. package/dist/cjs/salla-count-down.cjs.entry.js +2 -2
  34. package/dist/cjs/salla-custom-fields.cjs.entry.js +1 -1
  35. package/dist/cjs/salla-delivery-promise.cjs.entry.js +2 -2
  36. package/dist/cjs/salla-edit-order-button.cjs.entry.js +1 -1
  37. package/dist/cjs/salla-filters-widget.cjs.entry.js +3 -3
  38. package/dist/cjs/salla-filters.cjs.entry.js +2 -2
  39. package/dist/cjs/salla-fulfillment-methods.cjs.entry.js +1 -1
  40. package/dist/cjs/salla-gift-card-redeem.cjs.entry.js +1 -1
  41. package/dist/cjs/salla-gifting.cjs.entry.js +3 -3
  42. package/dist/cjs/salla-hook.cjs.entry.js +2 -2
  43. package/dist/cjs/salla-infinite-scroll.cjs.entry.js +1 -1
  44. package/dist/cjs/salla-installment.cjs.entry.js +1 -1
  45. package/dist/cjs/salla-list-tile.cjs.entry.js +2 -2
  46. package/dist/cjs/salla-localization-modal.cjs.entry.js +2 -2
  47. package/dist/cjs/salla-login-modal.cjs.entry.js +1 -1
  48. package/dist/cjs/salla-loyalty-banner_10.cjs.entry.js +15 -15
  49. package/dist/cjs/salla-loyalty-exchange-product-card.cjs.entry.js +3 -3
  50. package/dist/cjs/salla-loyalty-points-banner.cjs.entry.js +1 -1
  51. package/dist/cjs/salla-loyalty-points-history.cjs.entry.js +2 -2
  52. package/dist/cjs/salla-loyalty-prize-item.cjs.entry.js +2 -2
  53. package/dist/cjs/salla-loyalty.cjs.entry.js +1 -1
  54. package/dist/cjs/salla-maintenance-alert.cjs.entry.js +2 -2
  55. package/dist/cjs/salla-map_3.cjs.entry.js +4 -4
  56. package/dist/cjs/salla-menu.cjs.entry.js +1 -1
  57. package/dist/cjs/salla-metadata.cjs.entry.js +1 -1
  58. package/dist/cjs/salla-multiple-bundle-product-cart_2.cjs.entry.js +4 -4
  59. package/dist/cjs/salla-multiple-bundle-product-options-modal_2.cjs.entry.js +6 -6
  60. package/dist/cjs/salla-multiple-bundle-product.cjs.entry.js +2 -2
  61. package/dist/cjs/salla-next-order-coupon.cjs.entry.js +1 -1
  62. package/dist/cjs/salla-notification-item_2.cjs.entry.js +2 -2
  63. package/dist/cjs/salla-offer-modal.cjs.entry.js +2 -2
  64. package/dist/cjs/salla-offer.cjs.entry.js +18 -2
  65. package/dist/cjs/salla-order-branch.cjs.entry.js +1 -1
  66. package/dist/cjs/salla-order-cancel.cjs.entry.js +1 -1
  67. package/dist/cjs/salla-order-details-multiple-bundle-product.cjs.entry.js +1 -1
  68. package/dist/cjs/salla-order-details-options.cjs.entry.js +1 -1
  69. package/dist/cjs/salla-order-details.cjs.entry.js +2 -2
  70. package/dist/cjs/salla-order-edit-item.cjs.entry.js +1 -1
  71. package/dist/cjs/salla-order-edit-product-card.cjs.entry.js +2 -2
  72. package/dist/cjs/salla-order-edit.cjs.entry.js +1 -1
  73. package/dist/cjs/salla-order-options-modal.cjs.entry.js +1 -1
  74. package/dist/cjs/salla-order-shipments.cjs.entry.js +1 -1
  75. package/dist/cjs/salla-order-summary.cjs.entry.js +2 -2
  76. package/dist/cjs/salla-order-totals-card.cjs.entry.js +1 -1
  77. package/dist/cjs/salla-orders.cjs.entry.js +38 -13
  78. package/dist/cjs/salla-payments.cjs.entry.js +3 -3
  79. package/dist/cjs/salla-placeholder.cjs.entry.js +2 -2
  80. package/dist/cjs/salla-price-range.cjs.entry.js +3 -3
  81. package/dist/cjs/salla-product-card-embed.cjs.entry.js +2 -2
  82. package/dist/cjs/salla-product-card.cjs.entry.js +6 -6
  83. package/dist/cjs/salla-product-size-guide.cjs.entry.js +3 -3
  84. package/dist/cjs/salla-products-list.cjs.entry.js +1 -1
  85. package/dist/cjs/salla-products-slider.cjs.entry.js +1 -1
  86. package/dist/cjs/salla-quick-order.cjs.entry.js +1 -1
  87. package/dist/cjs/salla-rating-modal-v2.cjs.entry.js +1 -1
  88. package/dist/cjs/salla-rating-modal.cjs.entry.js +1 -1
  89. package/dist/cjs/salla-review-factors-tags.cjs.entry.js +2 -2
  90. package/dist/cjs/salla-review-order-item.cjs.entry.js +1 -1
  91. package/dist/cjs/salla-scopes.cjs.entry.js +1 -1
  92. package/dist/cjs/salla-search-product-card.cjs.entry.js +3 -3
  93. package/dist/cjs/salla-search.cjs.entry.js +1 -1
  94. package/dist/cjs/salla-skeleton.cjs.entry.js +2 -2
  95. package/dist/cjs/salla-social-share.cjs.entry.js +2 -2
  96. package/dist/cjs/salla-social.cjs.entry.js +2 -2
  97. package/dist/cjs/salla-tab-content_3.cjs.entry.js +4 -4
  98. package/dist/cjs/salla-tiered-offer.cjs.entry.js +1 -1
  99. package/dist/cjs/salla-tooltip.cjs.entry.js +2 -2
  100. package/dist/cjs/salla-trust-badges.cjs.entry.js +1 -1
  101. package/dist/cjs/salla-user-menu.cjs.entry.js +1 -1
  102. package/dist/cjs/salla-user-profile.cjs.entry.js +1 -1
  103. package/dist/cjs/salla-user-settings.cjs.entry.js +2 -2
  104. package/dist/cjs/salla-verify.cjs.entry.js +1 -1
  105. package/dist/cjs/salla-wallet.cjs.entry.js +1 -1
  106. package/dist/cjs/salla-wishlist-actions.cjs.entry.js +2 -2
  107. package/dist/cjs/salla-wishlist-summary.cjs.entry.js +1 -1
  108. package/dist/cjs/twilight.cjs.js +2 -2
  109. package/dist/cjs/{vanilla-picker-BkJyQVMl.js → vanilla-picker-Brk9Mb54.js} +1 -1
  110. package/dist/collection/assets/svg/mini-map.svg +6 -30
  111. package/dist/collection/components/salla-accordion/salla-accordion-head.js +2 -2
  112. package/dist/collection/components/salla-bullet-delivery/salla-bullet-delivery.css +241 -238
  113. package/dist/collection/components/salla-bullet-delivery/salla-bullet-delivery.js +175 -146
  114. package/dist/collection/components/salla-cart-coupons/salla-cart-coupons.css +154 -92
  115. package/dist/collection/components/salla-cart-coupons/salla-cart-coupons.js +160 -5
  116. package/dist/collection/components/salla-cart-summary/salla-cart-summary.js +1 -1
  117. package/dist/collection/components/salla-color-picker/salla-color-picker.js +1 -1
  118. package/dist/collection/components/salla-comment-form/salla-comment-form.js +1 -1
  119. package/dist/collection/components/salla-conditional-fields/salla-conditional-fields.js +1 -1
  120. package/dist/collection/components/salla-count-down/salla-count-down.js +1 -1
  121. package/dist/collection/components/salla-datetime-picker/salla-datetime-picker.js +1 -1
  122. package/dist/collection/components/salla-file-upload/salla-file-upload.js +2 -2
  123. package/dist/collection/components/salla-filters/salla-filters.js +1 -1
  124. package/dist/collection/components/salla-filters-widget/salla-filters-widget.js +2 -2
  125. package/dist/collection/components/salla-gifting/salla-gifting.js +2 -2
  126. package/dist/collection/components/salla-hook/salla-hook.js +1 -1
  127. package/dist/collection/components/salla-list-tile/salla-list-tile.js +1 -1
  128. package/dist/collection/components/salla-loading/salla-loading.js +1 -1
  129. package/dist/collection/components/salla-localization-modal/salla-localization-modal.js +1 -1
  130. package/dist/collection/components/salla-loyalty/salla-loyalty-prize-item.js +1 -1
  131. package/dist/collection/components/salla-loyalty-points-history/salla-loyalty-points-history.js +1 -1
  132. package/dist/collection/components/salla-loyalty-program/salla-loyalty-exchange-product-card.js +2 -2
  133. package/dist/collection/components/salla-loyalty-program/salla-loyalty-hero.js +3 -3
  134. package/dist/collection/components/salla-loyalty-program/salla-loyalty-point.js +4 -4
  135. package/dist/collection/components/salla-loyalty-program/salla-loyalty-reward.js +2 -2
  136. package/dist/collection/components/salla-loyalty-program/salla-reward-card.js +1 -1
  137. package/dist/collection/components/salla-loyalty-program/salla-reward-details.js +3 -3
  138. package/dist/collection/components/salla-loyalty-program/salla-reward-exchange.js +1 -1
  139. package/dist/collection/components/salla-maintenance-alert/salla-maintenance-alert.js +1 -1
  140. package/dist/collection/components/salla-map/salla-map.js +3 -3
  141. package/dist/collection/components/salla-multiple-bundle-product/components/salla-multiple-bundle-product-cart.js +1 -1
  142. package/dist/collection/components/salla-multiple-bundle-product/components/salla-multiple-bundle-product-details.js +2 -2
  143. package/dist/collection/components/salla-multiple-bundle-product/components/salla-multiple-bundle-product-options-modal.js +4 -4
  144. package/dist/collection/components/salla-multiple-bundle-product/components/salla-multiple-bundle-product-slider.js +1 -1
  145. package/dist/collection/components/salla-multiple-bundle-product/salla-multiple-bundle-product.js +1 -1
  146. package/dist/collection/components/salla-notifications/salla-notification-item.js +1 -1
  147. package/dist/collection/components/salla-offer/salla-offer.js +17 -1
  148. package/dist/collection/components/salla-offer-modal/salla-offer-modal.js +1 -1
  149. package/dist/collection/components/salla-order-details/salla-order-details.js +1 -1
  150. package/dist/collection/components/salla-order-edit/salla-order-edit-product-card.js +1 -1
  151. package/dist/collection/components/salla-order-summary/salla-order-summary.js +1 -1
  152. package/dist/collection/components/salla-orders/salla-orders.js +39 -12
  153. package/dist/collection/components/salla-payments/salla-payments.js +2 -2
  154. package/dist/collection/components/salla-placeholder/salla-placeholder.js +1 -1
  155. package/dist/collection/components/salla-price-range/salla-price-range.js +2 -2
  156. package/dist/collection/components/salla-product-availability/salla-product-availability.js +1 -1
  157. package/dist/collection/components/salla-product-card/salla-product-card.js +5 -5
  158. package/dist/collection/components/salla-product-card-embed/salla-product-card-embed.js +1 -1
  159. package/dist/collection/components/salla-product-size-guide/salla-product-size-guide.js +2 -2
  160. package/dist/collection/components/salla-quantity-input/salla-quantity-input.js +1 -1
  161. package/dist/collection/components/salla-quick-buy/salla-quick-buy.js +1 -1
  162. package/dist/collection/components/salla-review-card/salla-review-card.js +1 -1
  163. package/dist/collection/components/salla-review-factors-tags/salla-review-factors-tags.js +1 -1
  164. package/dist/collection/components/salla-reviews-page/salla-reviews-page.js +1 -1
  165. package/dist/collection/components/salla-search-product-card/salla-search-product-card.js +2 -2
  166. package/dist/collection/components/salla-searchable-dropdown/salla-searchable-dropdown.js +4 -4
  167. package/dist/collection/components/salla-skeleton/salla-skeleton.js +1 -1
  168. package/dist/collection/components/salla-social/salla-social.js +1 -1
  169. package/dist/collection/components/salla-social-share/salla-social-share.js +1 -1
  170. package/dist/collection/components/salla-tabs/salla-tab-content.js +1 -1
  171. package/dist/collection/components/salla-tabs/salla-tab-header.js +1 -1
  172. package/dist/collection/components/salla-tabs/salla-tabs.js +1 -1
  173. package/dist/collection/components/salla-tel-input/salla-tel-input.js +1 -1
  174. package/dist/collection/components/salla-tooltip/salla-tooltip.js +1 -1
  175. package/dist/collection/components/salla-user-settings/salla-user-settings.js +1 -1
  176. package/dist/collection/components/salla-wishlist-actions/salla-wishlist-actions.js +1 -1
  177. package/dist/components/helpers.js +1 -15
  178. package/dist/components/index.js +2 -2
  179. package/dist/components/salla-accordion-head2.js +2 -2
  180. package/dist/components/salla-bullet-delivery.js +175 -184
  181. package/dist/components/salla-cart-coupons.js +161 -6
  182. package/dist/components/salla-cart-summary.js +1 -1
  183. package/dist/components/salla-color-picker2.js +1 -1
  184. package/dist/components/salla-comment-form2.js +1 -1
  185. package/dist/components/salla-conditional-fields2.js +1 -1
  186. package/dist/components/salla-count-down2.js +1 -1
  187. package/dist/components/salla-datetime-picker2.js +1 -1
  188. package/dist/components/salla-delivery-promise.js +1 -1
  189. package/dist/components/salla-file-upload2.js +2 -2
  190. package/dist/components/salla-filters-widget2.js +2 -2
  191. package/dist/components/salla-filters.js +1 -1
  192. package/dist/components/salla-gifting.js +2 -2
  193. package/dist/components/salla-hook.js +1 -1
  194. package/dist/components/salla-list-tile2.js +1 -1
  195. package/dist/components/salla-loading2.js +1 -1
  196. package/dist/components/salla-localization-modal.js +1 -1
  197. package/dist/components/salla-loyalty-exchange-product-card2.js +2 -2
  198. package/dist/components/salla-loyalty-hero2.js +3 -3
  199. package/dist/components/salla-loyalty-point2.js +4 -4
  200. package/dist/components/salla-loyalty-points-history.js +1 -1
  201. package/dist/components/salla-loyalty-prize-item.js +1 -1
  202. package/dist/components/salla-loyalty-reward.js +2 -2
  203. package/dist/components/salla-maintenance-alert.js +1 -1
  204. package/dist/components/salla-map2.js +3 -3
  205. package/dist/components/salla-multiple-bundle-product-cart2.js +1 -1
  206. package/dist/components/salla-multiple-bundle-product-details2.js +2 -2
  207. package/dist/components/salla-multiple-bundle-product-options-modal2.js +4 -4
  208. package/dist/components/salla-multiple-bundle-product-slider2.js +1 -1
  209. package/dist/components/salla-multiple-bundle-product.js +1 -1
  210. package/dist/components/salla-notification-item2.js +1 -1
  211. package/dist/components/salla-offer-modal.js +1 -1
  212. package/dist/components/salla-offer.js +17 -1
  213. package/dist/components/salla-order-details.js +1 -1
  214. package/dist/components/salla-order-edit-product-card.js +1 -1
  215. package/dist/components/salla-order-summary.js +1 -1
  216. package/dist/components/salla-orders.js +39 -12
  217. package/dist/components/salla-payments.js +2 -2
  218. package/dist/components/salla-placeholder2.js +1 -1
  219. package/dist/components/salla-price-range2.js +2 -2
  220. package/dist/components/salla-product-availability2.js +1 -1
  221. package/dist/components/salla-product-card-embed.js +1 -1
  222. package/dist/components/salla-product-card2.js +5 -5
  223. package/dist/components/salla-product-size-guide.js +2 -2
  224. package/dist/components/salla-quantity-input2.js +1 -1
  225. package/dist/components/salla-quick-buy2.js +1 -1
  226. package/dist/components/salla-review-card2.js +1 -1
  227. package/dist/components/salla-review-factors-tags2.js +1 -1
  228. package/dist/components/salla-reviews-page.js +1 -1
  229. package/dist/components/salla-reward-card2.js +1 -1
  230. package/dist/components/salla-reward-details2.js +3 -3
  231. package/dist/components/salla-reward-exchange2.js +1 -1
  232. package/dist/components/salla-search-product-card2.js +2 -2
  233. package/dist/components/salla-searchable-dropdown2.js +4 -4
  234. package/dist/components/salla-skeleton2.js +1 -1
  235. package/dist/components/salla-social-share2.js +1 -1
  236. package/dist/components/salla-social.js +1 -1
  237. package/dist/components/salla-tab-content2.js +1 -1
  238. package/dist/components/salla-tab-header2.js +1 -1
  239. package/dist/components/salla-tabs2.js +1 -1
  240. package/dist/components/salla-tel-input2.js +1 -1
  241. package/dist/components/salla-tooltip2.js +1 -1
  242. package/dist/components/salla-user-settings.js +1 -1
  243. package/dist/components/salla-wishlist-actions.js +1 -1
  244. package/dist/esm/{filepond-kmpJTY5p.js → filepond-Qm94dFPs.js} +1 -1
  245. package/dist/esm/{filepond-plugin-file-poster-8M0TsTUo.js → filepond-plugin-file-poster-CHpnwHYe.js} +1 -1
  246. package/dist/esm/{filepond-plugin-file-validate-size-CPVDzrMj.js → filepond-plugin-file-validate-size-BwHBxxMg.js} +1 -1
  247. package/dist/esm/{filepond-plugin-file-validate-type-D0qUdWNB.js → filepond-plugin-file-validate-type-BD-yTEPO.js} +1 -1
  248. package/dist/esm/{filepond-plugin-image-edit-K8nFORG9.js → filepond-plugin-image-edit-DKc0Yw10.js} +1 -1
  249. package/dist/esm/{filepond-plugin-image-exif-orientation-BSvnwKAw.js → filepond-plugin-image-exif-orientation-CepmNFGF.js} +1 -1
  250. package/dist/esm/{filepond-plugin-image-preview-hArDoD8N.js → filepond-plugin-image-preview-FhnzagMd.js} +1 -1
  251. package/dist/esm/{helpers-CV6uPJEJ.js → helpers-BJxBnTgv.js} +1 -15
  252. package/dist/esm/{index-a6lSRQK4.js → index-BAXTlrSC.js} +2 -2
  253. package/dist/esm/{intlTelInput-CC5xRRkd.js → intlTelInput-BJlOPJYY.js} +1 -1
  254. package/dist/esm/loader.js +3 -3
  255. package/dist/esm/salla-accordion-body_2.entry.js +3 -3
  256. package/dist/esm/salla-accordion_6.entry.js +2 -2
  257. package/dist/esm/salla-add-product-button_5.entry.js +3 -3
  258. package/dist/esm/salla-advertisement.entry.js +1 -1
  259. package/dist/esm/salla-alert_2.entry.js +1 -1
  260. package/dist/esm/salla-app-install-alert.entry.js +1 -1
  261. package/dist/esm/salla-applied-filters.entry.js +1 -1
  262. package/dist/esm/salla-apps-icons.entry.js +1 -1
  263. package/dist/esm/salla-attachment-view_9.entry.js +17 -17
  264. package/dist/esm/salla-badge.entry.js +1 -1
  265. package/dist/esm/salla-basket-gap.entry.js +1 -1
  266. package/dist/esm/salla-bullet-delivery_3.entry.js +179 -187
  267. package/dist/esm/salla-cart-coupons.entry.js +160 -7
  268. package/dist/esm/salla-cart-item-offers_2.entry.js +2 -2
  269. package/dist/esm/salla-cart-summary-card.entry.js +1 -1
  270. package/dist/esm/salla-cashback-banner.entry.js +1 -1
  271. package/dist/esm/salla-comment-factors.entry.js +1 -1
  272. package/dist/esm/salla-comment-form_9.entry.js +4 -4
  273. package/dist/esm/salla-conditional-offer.entry.js +1 -1
  274. package/dist/esm/salla-contacts.entry.js +1 -1
  275. package/dist/esm/salla-cookies-bar.entry.js +1 -1
  276. package/dist/esm/salla-count-down.entry.js +2 -2
  277. package/dist/esm/salla-custom-fields.entry.js +1 -1
  278. package/dist/esm/salla-delivery-promise.entry.js +2 -2
  279. package/dist/esm/salla-edit-order-button.entry.js +1 -1
  280. package/dist/esm/salla-filters-widget.entry.js +3 -3
  281. package/dist/esm/salla-filters.entry.js +2 -2
  282. package/dist/esm/salla-fulfillment-methods.entry.js +1 -1
  283. package/dist/esm/salla-gift-card-redeem.entry.js +1 -1
  284. package/dist/esm/salla-gifting.entry.js +3 -3
  285. package/dist/esm/salla-hook.entry.js +2 -2
  286. package/dist/esm/salla-infinite-scroll.entry.js +1 -1
  287. package/dist/esm/salla-installment.entry.js +1 -1
  288. package/dist/esm/salla-list-tile.entry.js +2 -2
  289. package/dist/esm/salla-localization-modal.entry.js +2 -2
  290. package/dist/esm/salla-login-modal.entry.js +1 -1
  291. package/dist/esm/salla-loyalty-banner_10.entry.js +15 -15
  292. package/dist/esm/salla-loyalty-exchange-product-card.entry.js +3 -3
  293. package/dist/esm/salla-loyalty-points-banner.entry.js +1 -1
  294. package/dist/esm/salla-loyalty-points-history.entry.js +2 -2
  295. package/dist/esm/salla-loyalty-prize-item.entry.js +2 -2
  296. package/dist/esm/salla-loyalty.entry.js +1 -1
  297. package/dist/esm/salla-maintenance-alert.entry.js +2 -2
  298. package/dist/esm/salla-map_3.entry.js +4 -4
  299. package/dist/esm/salla-menu.entry.js +1 -1
  300. package/dist/esm/salla-metadata.entry.js +1 -1
  301. package/dist/esm/salla-multiple-bundle-product-cart_2.entry.js +4 -4
  302. package/dist/esm/salla-multiple-bundle-product-options-modal_2.entry.js +6 -6
  303. package/dist/esm/salla-multiple-bundle-product.entry.js +2 -2
  304. package/dist/esm/salla-next-order-coupon.entry.js +1 -1
  305. package/dist/esm/salla-notification-item_2.entry.js +2 -2
  306. package/dist/esm/salla-offer-modal.entry.js +2 -2
  307. package/dist/esm/salla-offer.entry.js +18 -2
  308. package/dist/esm/salla-order-branch.entry.js +1 -1
  309. package/dist/esm/salla-order-cancel.entry.js +1 -1
  310. package/dist/esm/salla-order-details-multiple-bundle-product.entry.js +1 -1
  311. package/dist/esm/salla-order-details-options.entry.js +1 -1
  312. package/dist/esm/salla-order-details.entry.js +2 -2
  313. package/dist/esm/salla-order-edit-item.entry.js +1 -1
  314. package/dist/esm/salla-order-edit-product-card.entry.js +2 -2
  315. package/dist/esm/salla-order-edit.entry.js +1 -1
  316. package/dist/esm/salla-order-options-modal.entry.js +1 -1
  317. package/dist/esm/salla-order-shipments.entry.js +1 -1
  318. package/dist/esm/salla-order-summary.entry.js +2 -2
  319. package/dist/esm/salla-order-totals-card.entry.js +1 -1
  320. package/dist/esm/salla-orders.entry.js +38 -13
  321. package/dist/esm/salla-payments.entry.js +3 -3
  322. package/dist/esm/salla-placeholder.entry.js +2 -2
  323. package/dist/esm/salla-price-range.entry.js +3 -3
  324. package/dist/esm/salla-product-card-embed.entry.js +2 -2
  325. package/dist/esm/salla-product-card.entry.js +6 -6
  326. package/dist/esm/salla-product-size-guide.entry.js +3 -3
  327. package/dist/esm/salla-products-list.entry.js +1 -1
  328. package/dist/esm/salla-products-slider.entry.js +1 -1
  329. package/dist/esm/salla-quick-order.entry.js +1 -1
  330. package/dist/esm/salla-rating-modal-v2.entry.js +1 -1
  331. package/dist/esm/salla-rating-modal.entry.js +1 -1
  332. package/dist/esm/salla-review-factors-tags.entry.js +2 -2
  333. package/dist/esm/salla-review-order-item.entry.js +1 -1
  334. package/dist/esm/salla-scopes.entry.js +1 -1
  335. package/dist/esm/salla-search-product-card.entry.js +3 -3
  336. package/dist/esm/salla-search.entry.js +1 -1
  337. package/dist/esm/salla-skeleton.entry.js +2 -2
  338. package/dist/esm/salla-social-share.entry.js +2 -2
  339. package/dist/esm/salla-social.entry.js +2 -2
  340. package/dist/esm/salla-tab-content_3.entry.js +4 -4
  341. package/dist/esm/salla-tiered-offer.entry.js +1 -1
  342. package/dist/esm/salla-tooltip.entry.js +2 -2
  343. package/dist/esm/salla-trust-badges.entry.js +1 -1
  344. package/dist/esm/salla-user-menu.entry.js +1 -1
  345. package/dist/esm/salla-user-profile.entry.js +1 -1
  346. package/dist/esm/salla-user-settings.entry.js +2 -2
  347. package/dist/esm/salla-verify.entry.js +1 -1
  348. package/dist/esm/salla-wallet.entry.js +1 -1
  349. package/dist/esm/salla-wishlist-actions.entry.js +2 -2
  350. package/dist/esm/salla-wishlist-summary.entry.js +1 -1
  351. package/dist/esm/twilight.js +3 -3
  352. package/dist/esm/{vanilla-picker-CDhGfTst.js → vanilla-picker-C_cY41gl.js} +1 -1
  353. package/dist/twilight/{p-cc15290b.entry.js → p-00a727c3.entry.js} +1 -1
  354. package/dist/twilight/{p-fc13e706.entry.js → p-0227316e.entry.js} +1 -1
  355. package/dist/twilight/{p-aee0c658.entry.js → p-03c959bb.entry.js} +1 -1
  356. package/dist/twilight/{p-a177b13f.entry.js → p-072ee78f.entry.js} +1 -1
  357. package/dist/twilight/{p-f2f6f502.entry.js → p-073e1363.entry.js} +1 -1
  358. package/dist/twilight/{p-4a60be6d.entry.js → p-0806da7e.entry.js} +1 -1
  359. package/dist/twilight/{p-5134aae8.entry.js → p-08cedab0.entry.js} +1 -1
  360. package/dist/twilight/{p-69594ced.entry.js → p-0bcca7f8.entry.js} +1 -1
  361. package/dist/twilight/{p-9b04ed7f.entry.js → p-10a68a21.entry.js} +1 -1
  362. package/dist/twilight/{p-00e68964.entry.js → p-13abf9ca.entry.js} +1 -1
  363. package/dist/twilight/{p-742f2c15.entry.js → p-13c35685.entry.js} +1 -1
  364. package/dist/twilight/{p-540138a1.entry.js → p-162fa48e.entry.js} +1 -1
  365. package/dist/twilight/{p-e0b5a06d.entry.js → p-1762fd86.entry.js} +1 -1
  366. package/dist/twilight/{p-2af75479.entry.js → p-18c41e9a.entry.js} +1 -1
  367. package/dist/twilight/{p-d6803c56.entry.js → p-1fbb0b22.entry.js} +1 -1
  368. package/dist/twilight/{p-109472c5.entry.js → p-1fd6a10e.entry.js} +1 -1
  369. package/dist/twilight/p-28cdaf6b.entry.js +4 -0
  370. package/dist/twilight/{p-ebd9a6c2.entry.js → p-292a0b4a.entry.js} +1 -1
  371. package/dist/twilight/{p-d0fce326.entry.js → p-2ba4956f.entry.js} +1 -1
  372. package/dist/twilight/{p-6f371a84.entry.js → p-2c543420.entry.js} +1 -1
  373. package/dist/twilight/{p-b7624eb6.entry.js → p-2e3a56de.entry.js} +1 -1
  374. package/dist/twilight/p-2e4064eb.entry.js +4 -0
  375. package/dist/twilight/{p-d56cb23a.entry.js → p-3153f560.entry.js} +1 -1
  376. package/dist/twilight/{p-977e3e76.entry.js → p-3a3815a2.entry.js} +1 -1
  377. package/dist/twilight/{p-0a38d353.entry.js → p-3cef6be2.entry.js} +1 -1
  378. package/dist/twilight/{p-3500065c.entry.js → p-3dd612a6.entry.js} +1 -1
  379. package/dist/twilight/{p-312e8678.entry.js → p-411c1ab0.entry.js} +1 -1
  380. package/dist/twilight/p-423d852d.entry.js +4 -0
  381. package/dist/twilight/{p-c500e5fe.entry.js → p-44a6598e.entry.js} +1 -1
  382. package/dist/twilight/{p-7f69cf5d.entry.js → p-51d83216.entry.js} +1 -1
  383. package/dist/twilight/{p-6a7eacbd.entry.js → p-51fb8841.entry.js} +1 -1
  384. package/dist/twilight/{p-2541db96.entry.js → p-56609a91.entry.js} +1 -1
  385. package/dist/twilight/{p-2591eead.entry.js → p-58c1bf51.entry.js} +1 -1
  386. package/dist/twilight/{p-6051a92c.entry.js → p-59a7ca2e.entry.js} +1 -1
  387. package/dist/twilight/{p-426acd77.entry.js → p-5a77257c.entry.js} +1 -1
  388. package/dist/twilight/{p-9e53d7a6.entry.js → p-5c4e2ed3.entry.js} +1 -1
  389. package/dist/twilight/{p-a0d39b81.entry.js → p-5f464161.entry.js} +1 -1
  390. package/dist/twilight/{p-d1a0bd97.entry.js → p-637670fa.entry.js} +1 -1
  391. package/dist/twilight/{p-81c88f97.entry.js → p-6605f258.entry.js} +1 -1
  392. package/dist/twilight/{p-3bd153c1.entry.js → p-665bc308.entry.js} +1 -1
  393. package/dist/twilight/{p-7cc8b82b.entry.js → p-6bfe12d5.entry.js} +1 -1
  394. package/dist/twilight/{p-cbcbc9f8.entry.js → p-6de608eb.entry.js} +1 -1
  395. package/dist/twilight/{p-e9d73e7d.entry.js → p-6f9bc285.entry.js} +1 -1
  396. package/dist/twilight/{p-6958e848.entry.js → p-70451662.entry.js} +1 -1
  397. package/dist/twilight/{p-45b97699.entry.js → p-7b0cf8a1.entry.js} +1 -1
  398. package/dist/twilight/{p-6f741b21.entry.js → p-7d08dcfb.entry.js} +1 -1
  399. package/dist/twilight/{p-01cae03e.entry.js → p-7d37b650.entry.js} +1 -1
  400. package/dist/twilight/{p-254e6e0c.entry.js → p-7f3e110c.entry.js} +1 -1
  401. package/dist/twilight/{p-5fe0908b.entry.js → p-80302c52.entry.js} +1 -1
  402. package/dist/twilight/{p-583a63e5.entry.js → p-806083b4.entry.js} +1 -1
  403. package/dist/twilight/{p-50816838.entry.js → p-84cff600.entry.js} +1 -1
  404. package/dist/twilight/{p-c9779211.entry.js → p-884104a3.entry.js} +1 -1
  405. package/dist/twilight/{p-34d33337.entry.js → p-898ce93b.entry.js} +1 -1
  406. package/dist/twilight/{p-dc86737c.entry.js → p-8a865d37.entry.js} +1 -1
  407. package/dist/twilight/{p-bc54fc8b.entry.js → p-8c750736.entry.js} +1 -1
  408. package/dist/twilight/{p-7f861ac0.entry.js → p-8fc2eb01.entry.js} +1 -1
  409. package/dist/twilight/{p-2af98444.entry.js → p-97fee81d.entry.js} +1 -1
  410. package/dist/twilight/{p-c9ba30cd.entry.js → p-9920bbad.entry.js} +1 -1
  411. package/dist/twilight/{p-24bd13b8.entry.js → p-99b9bf66.entry.js} +1 -1
  412. package/dist/twilight/{p-b0c86557.entry.js → p-9b4a0dd3.entry.js} +1 -1
  413. package/dist/twilight/{p-0f1981ee.entry.js → p-9e054110.entry.js} +1 -1
  414. package/dist/twilight/{p-a6lSRQK4.js → p-BAXTlrSC.js} +1 -1
  415. package/dist/twilight/p-BJxBnTgv.js +4 -0
  416. package/dist/twilight/{p-BokV7EHy.js → p-BWpg3MwW.js} +1 -1
  417. package/dist/twilight/{p-DNjWzZsK.js → p-C6WaobtY.js} +1 -1
  418. package/dist/twilight/{p-wx2L9ZB0.js → p-CvebbG3m.js} +1 -1
  419. package/dist/twilight/{p-CSuif4Xw.js → p-D5lNzFgl.js} +1 -1
  420. package/dist/twilight/{p-CfhebjBE.js → p-DGzNHmGp.js} +1 -1
  421. package/dist/twilight/{p-BG1dHHdm.js → p-DnrvXyI6.js} +1 -1
  422. package/dist/twilight/{p-DOF2UkI4.js → p-DpI1J-G1.js} +1 -1
  423. package/dist/twilight/{p-DWPp9ZjN.js → p-SguJQlDo.js} +1 -1
  424. package/dist/twilight/{p-DZHubgN5.js → p-_f6GlygH.js} +1 -1
  425. package/dist/twilight/{p-5d72b7d7.entry.js → p-a2d07dba.entry.js} +1 -1
  426. package/dist/twilight/{p-8271e127.entry.js → p-a73a785d.entry.js} +1 -1
  427. package/dist/twilight/{p-e155a1a6.entry.js → p-a79c04a2.entry.js} +1 -1
  428. package/dist/twilight/{p-3a113599.entry.js → p-a9fcdac5.entry.js} +1 -1
  429. package/dist/twilight/{p-f1a3cf9e.entry.js → p-ab3ad37f.entry.js} +1 -1
  430. package/dist/twilight/{p-10968d1c.entry.js → p-abc3e5d5.entry.js} +1 -1
  431. package/dist/twilight/{p-0f9bfeeb.entry.js → p-b356f3f6.entry.js} +1 -1
  432. package/dist/twilight/{p-2bf8f0ed.entry.js → p-b55fb51b.entry.js} +1 -1
  433. package/dist/twilight/{p-28875055.entry.js → p-bb35af04.entry.js} +1 -1
  434. package/dist/twilight/{p-3ff2b8b6.entry.js → p-bf845ea7.entry.js} +1 -1
  435. package/dist/twilight/{p-5b1a0560.entry.js → p-c2e871ae.entry.js} +1 -1
  436. package/dist/twilight/{p-004584f5.entry.js → p-c38fb150.entry.js} +1 -1
  437. package/dist/twilight/{p-7b373051.entry.js → p-c63ff8ef.entry.js} +1 -1
  438. package/dist/twilight/{p-63a315e1.entry.js → p-c90600b1.entry.js} +1 -1
  439. package/dist/twilight/{p-2c480419.entry.js → p-cc1b3318.entry.js} +1 -1
  440. package/dist/twilight/{p-44b8d453.entry.js → p-ce1d3ad9.entry.js} +1 -1
  441. package/dist/twilight/{p-ea1c06ab.entry.js → p-ce80fb8f.entry.js} +1 -1
  442. package/dist/twilight/{p-d7e5b860.entry.js → p-d3556d1f.entry.js} +1 -1
  443. package/dist/twilight/{p-ef037207.entry.js → p-d3cf9f8a.entry.js} +1 -1
  444. package/dist/twilight/{p-af99726d.entry.js → p-dd18ac5c.entry.js} +1 -1
  445. package/dist/twilight/p-dda4d231.entry.js +4 -0
  446. package/dist/twilight/{p-86ad5af2.entry.js → p-e0d834a7.entry.js} +1 -1
  447. package/dist/twilight/{p-71ecb477.entry.js → p-e4ff7a77.entry.js} +1 -1
  448. package/dist/twilight/{p-5ddd9aa0.entry.js → p-e66856c5.entry.js} +1 -1
  449. package/dist/twilight/{p-a47b910f.entry.js → p-e7c4d4cc.entry.js} +1 -1
  450. package/dist/twilight/{p-12ab7c1a.entry.js → p-e944f02a.entry.js} +1 -1
  451. package/dist/twilight/{p-21e6b2e7.entry.js → p-e95fd91e.entry.js} +1 -1
  452. package/dist/twilight/{p-55e0745e.entry.js → p-ea7846fd.entry.js} +1 -1
  453. package/dist/twilight/p-f0ca37fc.entry.js +4 -0
  454. package/dist/twilight/{p-96cac80e.entry.js → p-f2e13d28.entry.js} +1 -1
  455. package/dist/twilight/p-f514b9f5.entry.js +4 -0
  456. package/dist/twilight/p-fa6f2b27.entry.js +4 -0
  457. package/dist/twilight/{p-84599aa5.entry.js → p-faadae59.entry.js} +1 -1
  458. package/dist/twilight/{p-4bf58226.entry.js → p-fc500047.entry.js} +1 -1
  459. package/dist/twilight/p-fdc97278.entry.js +4 -0
  460. package/dist/twilight/twilight.esm.js +1 -1
  461. package/dist/types/components/salla-bullet-delivery/interfaces.d.ts +6 -0
  462. package/dist/types/components/salla-bullet-delivery/salla-bullet-delivery.d.ts +25 -12
  463. package/dist/types/components/salla-cart-coupons/interfaces.d.ts +20 -0
  464. package/dist/types/components/salla-cart-coupons/salla-cart-coupons.d.ts +49 -1
  465. package/dist/types/components/salla-offer/salla-offer.d.ts +10 -0
  466. package/dist/types/components/salla-orders/interface.d.ts +2 -0
  467. package/dist/types/components/salla-orders/salla-orders.d.ts +5 -1
  468. package/dist/types/components.d.ts +2 -2
  469. package/package.json +5 -5
  470. package/dist/twilight/p-127f0000.entry.js +0 -4
  471. package/dist/twilight/p-25a4633f.entry.js +0 -4
  472. package/dist/twilight/p-3357d33a.entry.js +0 -4
  473. package/dist/twilight/p-338f727b.entry.js +0 -4
  474. package/dist/twilight/p-7a19ef45.entry.js +0 -4
  475. package/dist/twilight/p-8d30dbac.entry.js +0 -4
  476. package/dist/twilight/p-CV6uPJEJ.js +0 -4
  477. package/dist/twilight/p-a391b31d.entry.js +0 -4
  478. package/dist/twilight/p-eb11b8be.entry.js +0 -4
@@ -5,7 +5,7 @@ import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal
5
5
  import { d as defineCustomElement$3 } from './salla-button2.js';
6
6
  import { d as defineCustomElement$2 } from './salla-slider2.js';
7
7
 
8
- const sallaCartCouponsCss = "/*!twlt*/.s-cart-coupons-applied-list{display:flex;flex-direction:column;gap:8px;margin-top:12px}.s-cart-coupons-applied-item{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px;background:#fff;border:1px solid #e5e7eb;border-radius:10px;border-inline-start:3px solid #10b981}.s-cart-coupons-applied-code{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:700;color:#111827}.s-cart-coupons-applied-code::before{content:\"\";width:7px;height:7px;border-radius:9999px;background:#10b981}.s-cart-coupons-applied-remove{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;color:#ef4444;background:transparent;border:0;border-radius:9999px;cursor:pointer;transition:background-color 0.15s ease, color 0.15s ease}.s-cart-coupons-applied-remove:hover{background:#fef2f2}.s-cart-coupons-applied-remove:disabled{opacity:0.5;cursor:not-allowed}.visible{visibility:visible}.fixed{position:fixed}.shrink{flex-shrink:1}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.form-input{height:2.5rem;width:100%;border-radius:0.375rem;--tw-border-opacity:1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));transition-property:color, background-color, border-color, text-decoration-color, fill, stroke;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:300ms}.form-input:focus{border-color:var(--color-primary);--tw-ring-color:transparent}.form-input:is(.dark *){--tw-border-opacity:1;border-color:rgb(75 85 99 / var(--tw-border-opacity, 1));--tw-bg-opacity:1;background-color:rgb(75 85 99 / var(--tw-bg-opacity, 1))}.form-input:focus:is(.dark *){border-color:var(--color-primary)}@media (min-width: 640px){.form-input{font-size:0.875rem;line-height:1.25rem}}.s-cart-coupons-wrapper{display:block;width:100%;padding-top:1.25rem;padding-bottom:1.25rem}.s-cart-coupons-input-section{margin-bottom:0.625rem}.s-cart-coupons-coupon-label{margin-bottom:0.625rem;display:block;font-size:0.875rem;line-height:1.25rem;--tw-text-opacity:1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.s-cart-coupons-coupon-input-container{position:relative;display:flex;align-items:stretch}.s-cart-coupons-coupon-input-container .form-input{height:auto;flex:1 1 0%}.s-cart-coupons-coupon-input-container .form-input:where([dir=\"ltr\"],[dir=\"ltr\"] *){border-top-left-radius:0.5rem;border-bottom-left-radius:0.5rem;border-top-right-radius:0px !important;border-bottom-right-radius:0px !important;border-right-width:0px}.s-cart-coupons-coupon-input-container .form-input:where([dir=\"rtl\"],[dir=\"rtl\"] *){border-top-right-radius:0.5rem;border-bottom-right-radius:0.5rem;border-top-left-radius:0px !important;border-bottom-left-radius:0px !important;border-left-width:0px}.s-cart-coupons-coupon-input-container .form-input:focus{position:relative;z-index:10}.s-cart-coupons-coupon-button:where([dir=\"ltr\"],[dir=\"ltr\"] *){border-top-right-radius:0.5rem;border-bottom-right-radius:0.5rem;border-top-left-radius:0px;border-bottom-left-radius:0px}.s-cart-coupons-coupon-button:where([dir=\"rtl\"],[dir=\"rtl\"] *){border-top-left-radius:0.5rem;border-bottom-left-radius:0.5rem;border-top-right-radius:0px;border-bottom-right-radius:0px}.s-cart-coupons-coupon-button-remove:where([dir=\"ltr\"],[dir=\"ltr\"] *){border-top-right-radius:0.5rem;border-bottom-right-radius:0.5rem;border-top-left-radius:0px !important;border-bottom-left-radius:0px !important}.s-cart-coupons-coupon-button-remove:where([dir=\"rtl\"],[dir=\"rtl\"] *){border-top-left-radius:0.5rem;border-bottom-left-radius:0.5rem;border-top-right-radius:0px !important;border-bottom-right-radius:0px !important}.s-cart-coupons-coupon-button-apply:where([dir=\"ltr\"],[dir=\"ltr\"] *){border-top-right-radius:0.5rem !important;border-bottom-right-radius:0.5rem !important;border-top-left-radius:0px !important;border-bottom-left-radius:0px !important}.s-cart-coupons-coupon-button-apply:where([dir=\"rtl\"],[dir=\"rtl\"] *){border-top-left-radius:0.5rem !important;border-bottom-left-radius:0.5rem !important;border-top-right-radius:0px !important;border-bottom-right-radius:0px !important}.s-cart-coupons-coupon-error{margin-top:0.5rem;display:block;font-size:10px;line-height:1rem;--tw-text-opacity:1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.s-cart-coupons-slider{width:100%;overflow:hidden;padding-left:0.375rem;padding-right:0.375rem}.s-cart-coupons-card{position:relative;cursor:pointer;overflow:hidden;--tw-bg-opacity:1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));transition-property:all;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:300ms}.s-cart-coupons-card:is(.dark *){--tw-bg-opacity:1;background-color:rgb(31 41 55 / var(--tw-bg-opacity, 1))}.s-cart-coupons-card:hover{--tw-translate-y:-0.125rem;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.s-cart-coupons-disabled{cursor:not-allowed;opacity:0.5}.s-cart-coupons-disabled:hover{transform:none;--tw-border-opacity:1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}.s-cart-coupons-top-section{display:flex;height:60px;flex-direction:row;align-items:center;justify-content:space-between;border-top-left-radius:0.75rem;border-top-right-radius:0.75rem;border-width:1px;border-bottom-width:0px;--tw-border-opacity:1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));padding-top:1rem;padding-bottom:1rem;padding-left:0.75rem;padding-right:0.75rem}.s-cart-coupons-discount-values{display:flex;flex-direction:column;align-items:flex-start}.s-cart-coupons-discount-values .s-cart-coupons-main-amount{display:flex;align-items:center;gap:0.25rem;white-space:nowrap;font-size:1.25rem;line-height:1.75rem;font-weight:900;line-height:1;--tw-text-opacity:1;color:rgb(0 0 0 / var(--tw-text-opacity, 1))}.s-cart-coupons-discount-values .s-cart-coupons-secondary-info{margin:0px;font-size:10px;line-height:1rem}.s-cart-coupons-code{font-size:10px;font-weight:700;--tw-text-opacity:1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.s-cart-coupons-divider{position:relative;z-index:10;margin:0px;border-bottom-width:1px;--tw-border-opacity:1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1))}.s-cart-coupons-bottom-section{display:flex;min-height:44px;flex-direction:row;align-items:center;justify-content:space-between;border-bottom-right-radius:0.75rem;border-bottom-left-radius:0.75rem;border-width:1px;border-top-width:0px;--tw-border-opacity:1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));--tw-bg-opacity:1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1));padding-top:0.25rem;padding-bottom:0.25rem;padding-left:0.75rem;padding-right:0.75rem}.s-cart-coupons-terms{display:flex;flex-direction:column;align-items:flex-start}.s-cart-coupons-terms .s-cart-coupons-expiry{margin:0px;font-size:10px;line-height:16px;--tw-text-opacity:1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.s-cart-coupons-terms .s-cart-coupons-minimum{margin:0px;font-size:10px;line-height:16px;--tw-text-opacity:1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.s-cart-coupons-terms .s-cart-coupons-expiry.s-cart-coupons-expiry-warning{font-weight:500;--tw-text-opacity:1;color:rgb(220 38 38 / var(--tw-text-opacity, 1))}.s-cart-coupons-action{cursor:pointer;white-space:nowrap;border-width:0px;background-color:transparent;padding:0px;font-size:9px;font-weight:700;--tw-text-opacity:1;color:rgb(17 24 39 / var(--tw-text-opacity, 1));transition-property:color, background-color, border-color, text-decoration-color, fill, stroke;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms}.s-cart-coupons-action:hover{--tw-text-opacity:1;color:rgb(59 130 246 / var(--tw-text-opacity, 1))}.s-cart-coupons-slide-one-fourth{width:calc(75% - 10px);min-width:200px !important;padding-left:5px !important;padding-right:5px !important;padding-top:2px !important}@media (min-width: 1024px){.s-cart-coupons-slide-one-fourth{width:calc(40% - 10px) !important}}.s-cart-coupons-card:before{pointer-events:none;position:absolute;right:-10px;top:60px;z-index:20;height:1.25rem;width:1.25rem;--tw-translate-y:-50%;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));border-radius:9999px;border-width:1px;--tw-border-opacity:1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));--tw-bg-opacity:1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));--tw-content:'';content:var(--tw-content)}.s-cart-coupons-card:is(.dark *):before{--tw-bg-opacity:1;background-color:rgb(31 41 55 / var(--tw-bg-opacity, 1))}.s-cart-coupons-card:after{pointer-events:none;position:absolute;left:-10px;top:60px;z-index:20;height:1.25rem;width:1.25rem;--tw-translate-y:-50%;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));border-radius:9999px;border-width:1px;--tw-border-opacity:1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));--tw-bg-opacity:1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));--tw-content:'';content:var(--tw-content)}.s-cart-coupons-card:is(.dark *):after{--tw-bg-opacity:1;background-color:rgb(31 41 55 / var(--tw-bg-opacity, 1))}.s-cart-coupons-coupon-input-container .form-input.s-coupon-input-error{--tw-shadow:0 0 0 3px rgba(239,68,68,0.1) !important;--tw-shadow-colored:0 0 0 3px var(--tw-shadow-color) !important;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow) !important}";
8
+ const sallaCartCouponsCss = "/*!twlt*/@charset \"UTF-8\";.s-cart-coupons-card--applied{cursor:default}.s-cart-coupons-card--applied:hover{transform:none}.s-cart-coupons-card--applied .s-cart-coupons-top-section,.s-cart-coupons-card--applied .s-cart-coupons-bottom-section,.s-cart-coupons-card--applied .s-cart-coupons-divider{border-color:#d1d5db;border-color:color-mix(in srgb, var(--color-primary, #004d5a) 40%, transparent)}.s-cart-coupons-card--applied .s-cart-coupons-bottom-section{background:rgba(0, 0, 0, 0.04);background:color-mix(in srgb, var(--color-primary, #004d5a) 8%, transparent)}.s-cart-coupons-card--applied::before,.s-cart-coupons-card--applied::after{border-color:#d1d5db;border-color:color-mix(in srgb, var(--color-primary, #004d5a) 40%, transparent)}.s-cart-coupons-card--applied .s-cart-coupons-action{display:inline-flex;align-items:center;gap:10px}.s-cart-coupons-card--applied .s-cart-coupons-action{font-size:10px;font-weight:600;color:#4b5563}.s-cart-coupons-card-applied-label{color:#4b5563;color:var(--color-primary-dark, var(--color-primary, #4b5563))}.s-cart-coupons-card--applied .s-cart-coupons-action{min-width:0;max-width:100%}.s-cart-coupons-card-applied-label,.s-cart-coupons-card-remove{overflow:hidden;text-overflow:ellipsis}.s-cart-coupons-card--applied .s-cart-coupons-action,.s-cart-coupons-card--applied .s-cart-coupons-card-remove{pointer-events:auto}.s-cart-coupons-card-remove{flex:none;font-size:inherit;font-weight:inherit;color:#6b7280;background:transparent;border:0;padding:0;cursor:pointer;transition:color 0.15s ease}.s-cart-coupons-card-remove:hover{color:var(--color-danger, #ef4444)}.s-cart-coupons-card-remove:disabled{opacity:0.5;cursor:not-allowed}.s-cart-coupons-card--minimal .s-cart-coupons-bottom-section{justify-content:flex-end}.visible{visibility:visible}.fixed{position:fixed}.shrink{flex-shrink:1}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.form-input{height:2.5rem;width:100%;border-radius:0.375rem;--tw-border-opacity:1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));transition-property:color, background-color, border-color, text-decoration-color, fill, stroke;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:300ms}.form-input:focus{border-color:var(--color-primary);--tw-ring-color:transparent}.form-input:is(.dark *){--tw-border-opacity:1;border-color:rgb(75 85 99 / var(--tw-border-opacity, 1));--tw-bg-opacity:1;background-color:rgb(75 85 99 / var(--tw-bg-opacity, 1))}.form-input:focus:is(.dark *){border-color:var(--color-primary)}@media (min-width: 640px){.form-input{font-size:0.875rem;line-height:1.25rem}}.s-cart-coupons-wrapper{display:block;width:100%;padding-top:1.25rem;padding-bottom:1.25rem}.s-cart-coupons-input-section{margin-bottom:0.625rem}.s-cart-coupons-coupon-label{margin-bottom:0.625rem;display:block;font-size:0.875rem;line-height:1.25rem;--tw-text-opacity:1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.s-cart-coupons-coupon-input-container{position:relative;display:flex;align-items:stretch}.s-cart-coupons-coupon-input-container .form-input{height:auto;flex:1 1 0%}.s-cart-coupons-coupon-input-container .form-input:where([dir=\"ltr\"],[dir=\"ltr\"] *){border-top-left-radius:0.5rem;border-bottom-left-radius:0.5rem;border-top-right-radius:0px !important;border-bottom-right-radius:0px !important;border-right-width:0px}.s-cart-coupons-coupon-input-container .form-input:where([dir=\"rtl\"],[dir=\"rtl\"] *){border-top-right-radius:0.5rem;border-bottom-right-radius:0.5rem;border-top-left-radius:0px !important;border-bottom-left-radius:0px !important;border-left-width:0px}.s-cart-coupons-coupon-input-container .form-input:focus{position:relative;z-index:10}.s-cart-coupons-coupon-button:where([dir=\"ltr\"],[dir=\"ltr\"] *){border-top-right-radius:0.5rem;border-bottom-right-radius:0.5rem;border-top-left-radius:0px;border-bottom-left-radius:0px}.s-cart-coupons-coupon-button:where([dir=\"rtl\"],[dir=\"rtl\"] *){border-top-left-radius:0.5rem;border-bottom-left-radius:0.5rem;border-top-right-radius:0px;border-bottom-right-radius:0px}.s-cart-coupons-coupon-button-remove:where([dir=\"ltr\"],[dir=\"ltr\"] *){border-top-right-radius:0.5rem;border-bottom-right-radius:0.5rem;border-top-left-radius:0px !important;border-bottom-left-radius:0px !important}.s-cart-coupons-coupon-button-remove:where([dir=\"rtl\"],[dir=\"rtl\"] *){border-top-left-radius:0.5rem;border-bottom-left-radius:0.5rem;border-top-right-radius:0px !important;border-bottom-right-radius:0px !important}.s-cart-coupons-coupon-button-apply:where([dir=\"ltr\"],[dir=\"ltr\"] *){border-top-right-radius:0.5rem !important;border-bottom-right-radius:0.5rem !important;border-top-left-radius:0px !important;border-bottom-left-radius:0px !important}.s-cart-coupons-coupon-button-apply:where([dir=\"rtl\"],[dir=\"rtl\"] *){border-top-left-radius:0.5rem !important;border-bottom-left-radius:0.5rem !important;border-top-right-radius:0px !important;border-bottom-right-radius:0px !important}.s-cart-coupons-coupon-error{margin-top:0.5rem;display:block;font-size:10px;line-height:1rem;--tw-text-opacity:1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.s-cart-coupons-slider{width:100%;overflow:hidden;padding-left:0.375rem;padding-right:0.375rem}.s-cart-coupons-card{position:relative;cursor:pointer;overflow:hidden;--tw-bg-opacity:1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));transition-property:all;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:300ms}.s-cart-coupons-card:is(.dark *){--tw-bg-opacity:1;background-color:rgb(31 41 55 / var(--tw-bg-opacity, 1))}.s-cart-coupons-card:hover{--tw-translate-y:-0.125rem;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.s-cart-coupons-disabled{cursor:not-allowed;opacity:0.5}.s-cart-coupons-disabled:hover{transform:none;--tw-border-opacity:1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}.s-cart-coupons-top-section{display:flex;height:60px;flex-direction:row;align-items:center;justify-content:space-between;border-top-left-radius:0.75rem;border-top-right-radius:0.75rem;border-width:1px;border-bottom-width:0px;--tw-border-opacity:1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));padding-top:1rem;padding-bottom:1rem;padding-left:0.75rem;padding-right:0.75rem}.s-cart-coupons-discount-values{display:flex;flex-direction:column;align-items:flex-start}.s-cart-coupons-discount-values .s-cart-coupons-main-amount{display:flex;align-items:center;gap:0.25rem;white-space:nowrap;font-size:1.25rem;line-height:1.75rem;font-weight:900;line-height:1;--tw-text-opacity:1;color:rgb(0 0 0 / var(--tw-text-opacity, 1))}.s-cart-coupons-discount-values .s-cart-coupons-secondary-info{margin:0px;font-size:10px;line-height:1rem}.s-cart-coupons-code{font-size:10px;font-weight:700;--tw-text-opacity:1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.s-cart-coupons-divider{position:relative;z-index:10;margin:0px;border-bottom-width:1px;--tw-border-opacity:1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1))}.s-cart-coupons-bottom-section{display:flex;min-height:44px;flex-direction:row;align-items:center;justify-content:space-between;border-bottom-right-radius:0.75rem;border-bottom-left-radius:0.75rem;border-width:1px;border-top-width:0px;--tw-border-opacity:1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));--tw-bg-opacity:1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1));padding-top:0.25rem;padding-bottom:0.25rem;padding-left:0.75rem;padding-right:0.75rem}.s-cart-coupons-terms{display:flex;flex-direction:column;align-items:flex-start}.s-cart-coupons-terms .s-cart-coupons-expiry{margin:0px;font-size:10px;line-height:16px;--tw-text-opacity:1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.s-cart-coupons-terms .s-cart-coupons-minimum{margin:0px;font-size:10px;line-height:16px;--tw-text-opacity:1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.s-cart-coupons-terms .s-cart-coupons-expiry.s-cart-coupons-expiry-warning{font-weight:500;--tw-text-opacity:1;color:rgb(220 38 38 / var(--tw-text-opacity, 1))}.s-cart-coupons-action{cursor:pointer;white-space:nowrap;border-width:0px;background-color:transparent;padding:0px;font-size:9px;font-weight:700;--tw-text-opacity:1;color:rgb(17 24 39 / var(--tw-text-opacity, 1));transition-property:color, background-color, border-color, text-decoration-color, fill, stroke;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms}.s-cart-coupons-action:hover{--tw-text-opacity:1;color:rgb(59 130 246 / var(--tw-text-opacity, 1))}.s-cart-coupons-slide-one-fourth{width:calc(75% - 10px);min-width:200px !important;padding-left:5px !important;padding-right:5px !important;padding-top:2px !important}@media (min-width: 1024px){.s-cart-coupons-slide-one-fourth{width:calc(40% - 10px) !important}}.s-cart-coupons-card:before{pointer-events:none;position:absolute;right:-10px;top:60px;z-index:20;height:1.25rem;width:1.25rem;--tw-translate-y:-50%;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));border-radius:9999px;border-width:1px;--tw-border-opacity:1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));--tw-bg-opacity:1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));--tw-content:'';content:var(--tw-content)}.s-cart-coupons-card:is(.dark *):before{--tw-bg-opacity:1;background-color:rgb(31 41 55 / var(--tw-bg-opacity, 1))}.s-cart-coupons-card:after{pointer-events:none;position:absolute;left:-10px;top:60px;z-index:20;height:1.25rem;width:1.25rem;--tw-translate-y:-50%;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));border-radius:9999px;border-width:1px;--tw-border-opacity:1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));--tw-bg-opacity:1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));--tw-content:'';content:var(--tw-content)}.s-cart-coupons-card:is(.dark *):after{--tw-bg-opacity:1;background-color:rgb(31 41 55 / var(--tw-bg-opacity, 1))}.s-cart-coupons-coupon-input-container .form-input.s-coupon-input-error{--tw-shadow:0 0 0 3px rgba(239,68,68,0.1) !important;--tw-shadow-colored:0 0 0 3px var(--tw-shadow-color) !important;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow) !important}";
9
9
 
10
10
  const SallaCartCoupons$1 = /*@__PURE__*/ proxyCustomElement(class SallaCartCoupons extends HTMLElement {
11
11
  constructor() {
@@ -24,6 +24,20 @@ const SallaCartCoupons$1 = /*@__PURE__*/ proxyCustomElement(class SallaCartCoupo
24
24
  // - Multi-coupon (features::multi_coupon on): holds every applied code,
25
25
  // sourced from the cart's `coupons` array so it survives a page refresh.
26
26
  this.appliedCoupons = [];
27
+ // CP-3695: the unified list actually rendered — applied coupons and checkout coupons joined
28
+ // on `code`, so a coupon that is both no longer appears twice (once as a chip, once as a card).
29
+ // Derived from appliedCoupons + availableCoupons by buildMergedCoupons(); never fetched.
30
+ this.mergedCoupons = [];
31
+ // CP-3695: card data for the APPLIED coupons, straight off the cart payload
32
+ // (`applied_coupons`). It covers the ones the checkout-coupons endpoint never returns — a
33
+ // manually typed code, or one with show_checkout_coupon = 0 — which would otherwise have no
34
+ // amount, expiry or minimum and could only be drawn as a bare code. Absent on an older
35
+ // backend, in which case those coupons keep falling back to the code-only card.
36
+ this.appliedCouponCards = [];
37
+ // False until the shopper acts on the list. While false, buildMergedCoupons() is free to sort
38
+ // applied-first — that is how the row settles on load and after a reload. Once true the order
39
+ // is held, so tapping a card never shifts its neighbours.
40
+ this.orderLocked = false;
27
41
  // Whether the store has multi-coupon enabled. Read ONCE from the store config
28
42
  // (Salla.config.get('store.settings.cart.multi_coupon')) — a stable store-level setting,
29
43
  // exactly like cart.apply_coupon_enabled — not from the per-cart payload or localStorage.
@@ -158,6 +172,8 @@ const SallaCartCoupons$1 = /*@__PURE__*/ proxyCustomElement(class SallaCartCoupo
158
172
  // No coupons available on error
159
173
  this.availableCoupons = [];
160
174
  }
175
+ // Half the unified list just arrived — rejoin it against whatever the cart already gave us.
176
+ this.buildMergedCoupons();
161
177
  }
162
178
  async loadCartTotal() {
163
179
  // seedFromStorage() already gave the first paint an instant (possibly stale) total, so a
@@ -246,6 +262,13 @@ const SallaCartCoupons$1 = /*@__PURE__*/ proxyCustomElement(class SallaCartCoupo
246
262
  this.appliedCoupons = Array.isArray(cart?.coupons)
247
263
  ? cart.coupons.filter(Boolean)
248
264
  : (this.currentCoupon ? [this.currentCoupon] : []);
265
+ // The payload sends `applied_coupons` keyed BY CODE, which is the useful shape for a
266
+ // lookup; a plain list is accepted too so neither side depends on the other's choice.
267
+ const cards = cart?.applied_coupons;
268
+ this.appliedCouponCards = Array.isArray(cards)
269
+ ? cards.filter(Boolean)
270
+ : (cards && typeof cards === 'object' ? Object.values(cards).filter(Boolean) : []);
271
+ this.buildMergedCoupons();
249
272
  return;
250
273
  }
251
274
  // Single-coupon (flag off): mirror the applied code into the (disabled) input, matching the
@@ -253,6 +276,75 @@ const SallaCartCoupons$1 = /*@__PURE__*/ proxyCustomElement(class SallaCartCoupo
253
276
  // keystroke, so it won't clobber what the user is typing.
254
277
  this.couponInputValue = this.currentCoupon;
255
278
  this.appliedCoupons = this.currentCoupon ? [this.currentCoupon] : [];
279
+ this.buildMergedCoupons();
280
+ }
281
+ /**
282
+ * CP-3695: rebuild the unified list from the two sources we already have in memory.
283
+ *
284
+ * Applied coupons come first, in the order the server sent them — `cart.coupons` is already
285
+ * sorted by source tier in `Cart::getCouponCodes()`, so we preserve it rather than re-sort.
286
+ * Unapplied checkout coupons follow in endpoint order.
287
+ *
288
+ * Pure and cheap: a Map build plus one pass over at most 15 coupons (the endpoint's LIMIT),
289
+ * with no network call of its own — both datasets are already loaded for the old two-list UI.
290
+ */
291
+ buildMergedCoupons() {
292
+ // Single-coupon (flag off) renders the original disabled-input + red-X UX from
293
+ // currentCoupon and never reads this list. Keep it empty so the flag-off path is untouched.
294
+ if (!this.multiCoupon) {
295
+ this.mergedCoupons = [];
296
+ return;
297
+ }
298
+ const applied = this.appliedCoupons.filter(Boolean);
299
+ const appliedSet = new Set(applied);
300
+ // OFFERED is the checkout-coupon list alone — what the shopper can still apply. Liveness
301
+ // and the "what else is there" tail both key off this, never off the metadata map below.
302
+ const offered = new Map(this.availableCoupons.map(coupon => [coupon.code, coupon]));
303
+ // Metadata for drawing a card: the offers, plus the payload's card data for applied coupons
304
+ // that are NOT offers. Deliberately kept separate from `offered` — folding these in would
305
+ // leave a removed coupon sitting in the row as something to apply, which it is not.
306
+ const byCode = new Map(offered);
307
+ this.appliedCouponCards.forEach(coupon => {
308
+ if (coupon?.code && !byCode.has(coupon.code)) {
309
+ byCode.set(coupon.code, coupon);
310
+ }
311
+ });
312
+ // Live codes: everything still worth a card. An applied code that is not an offer is live
313
+ // only while it IS applied — once removed there is nothing behind it, so its card goes away.
314
+ const isLive = (code) => appliedSet.has(code) || offered.has(code);
315
+ const order = this.orderLocked
316
+ ? this.mergeIntoLockedOrder(applied, offered, isLive)
317
+ : [
318
+ ...applied,
319
+ ...this.availableCoupons.map(coupon => coupon.code).filter(code => !appliedSet.has(code)),
320
+ ];
321
+ this.mergedCoupons = order.map(code => ({
322
+ code,
323
+ coupon: byCode.get(code) ?? null,
324
+ applied: appliedSet.has(code),
325
+ }));
326
+ }
327
+ /**
328
+ * Keep the positions the shopper is looking at, and fold in whatever changed:
329
+ * newly applied codes join at the FRONT (they were typed into the input, so no card the
330
+ * shopper could be reaching for moves), late-loading checkout coupons join at the BACK, and
331
+ * codes that went dead drop out.
332
+ */
333
+ mergeIntoLockedOrder(applied, byCode, isLive) {
334
+ const held = this.mergedCoupons.map(entry => entry.code).filter(isLive);
335
+ const seen = new Set(held);
336
+ const arrivedApplied = applied.filter(code => !seen.has(code));
337
+ arrivedApplied.forEach(code => seen.add(code));
338
+ const arrivedAvailable = [...byCode.keys()].filter(code => !seen.has(code));
339
+ return [...arrivedApplied, ...held, ...arrivedAvailable];
340
+ }
341
+ /**
342
+ * Freeze the current card order. Called the moment the shopper acts on the list, so applying
343
+ * or removing recolours a card in place instead of sliding the row out from under them.
344
+ * Reset on every mount, which is where applied-first ordering is (re)established.
345
+ */
346
+ lockOrder() {
347
+ this.orderLocked = true;
256
348
  }
257
349
  async handleApplyClick() {
258
350
  if (this.isApplying) {
@@ -263,6 +355,7 @@ const SallaCartCoupons$1 = /*@__PURE__*/ proxyCustomElement(class SallaCartCoupo
263
355
  this.showCouponError(salla.lang.get('pages.cart.enter_coupon_code'));
264
356
  return;
265
357
  }
358
+ this.lockOrder();
266
359
  this.isApplying = true;
267
360
  this.isHandlingInternalError = true;
268
361
  try {
@@ -324,6 +417,7 @@ const SallaCartCoupons$1 = /*@__PURE__*/ proxyCustomElement(class SallaCartCoupo
324
417
  if (this.isApplying) {
325
418
  return;
326
419
  }
420
+ this.lockOrder();
327
421
  this.isApplying = true;
328
422
  this.isHandlingInternalError = true;
329
423
  try {
@@ -364,6 +458,7 @@ const SallaCartCoupons$1 = /*@__PURE__*/ proxyCustomElement(class SallaCartCoupo
364
458
  return; // Silent return for card clicks when operation is already in progress
365
459
  }
366
460
  }
461
+ this.lockOrder();
367
462
  // Update the input field with the coupon code
368
463
  this.couponInputValue = couponCode;
369
464
  // Clear any existing errors
@@ -423,15 +518,64 @@ const SallaCartCoupons$1 = /*@__PURE__*/ proxyCustomElement(class SallaCartCoupo
423
518
  }
424
519
  return this.cartTotal >= parseFloat(coupon.minimum_amount.amount);
425
520
  }
426
- renderCouponCard(coupon) {
521
+ /**
522
+ * CP-3695: one card for one entry in the unified list — a checkout coupon, an applied coupon,
523
+ * or both. An applied card is not click-to-apply; only its إلغاء button acts on it.
524
+ */
525
+ renderCouponCard(entry) {
526
+ const { coupon, applied, code } = entry;
527
+ // An applied code the backend sent without card metadata has nothing to fill a card with.
528
+ if (!coupon) {
529
+ return this.renderMinimalCard(code);
530
+ }
427
531
  const isEligible = this.isEligible(coupon);
532
+ const isDisabled = !applied && (!isEligible || this.isApplying);
428
533
  // Note: Card notches (ticket-style pseudo-elements) match card background, not page background - this is intentional design
429
- return (h("div", { class: "s-cart-coupons-slide-one-fourth swiper-slide" }, h("div", { class: `s-cart-coupons-card ${!isEligible || this.isApplying ? 's-cart-coupons-disabled' : ''}`, onClick: () => isEligible && !this.isApplying && this.handleCouponClick(coupon) }, h("div", { class: "s-cart-coupons-top-section" }, h("div", { class: "s-cart-coupons-discount-values" }, h("div", { class: "s-cart-coupons-main-amount" }, this.formatMainAmount(coupon)), coupon.free_shipping ? (h("div", { class: "s-cart-coupons-secondary-info" }, "+ ", salla.lang.get('pages.cart.free_shipping'))) : coupon.maximum_amount && (h("div", { class: "s-cart-coupons-secondary-info" }, salla.lang.get('pages.cart.up_to'), " ", h("span", { innerHTML: salla.money(coupon.maximum_amount.amount, coupon.maximum_amount.currency) })))), h("div", { class: "s-cart-coupons-code" }, coupon.code)), h("div", { class: "s-cart-coupons-divider" }), h("div", { class: "s-cart-coupons-bottom-section" }, h("div", { class: "s-cart-coupons-terms" }, coupon.remaining_days !== undefined && coupon.remaining_days !== null && (h("div", { class: `s-cart-coupons-expiry ${coupon.remaining_days <= 3 ? 's-cart-coupons-expiry-warning' : ''}` }, coupon.remaining_days === 0
534
+ return (h("div", { class: "s-cart-coupons-slide-one-fourth swiper-slide" }, h("div", { class: `s-cart-coupons-card ${applied ? 's-cart-coupons-card--applied' : ''} ${isDisabled ? 's-cart-coupons-disabled' : ''}`, onClick: () => !applied && isEligible && !this.isApplying && this.handleCouponClick(coupon) }, h("div", { class: "s-cart-coupons-top-section" }, h("div", { class: "s-cart-coupons-discount-values" }, h("div", { class: "s-cart-coupons-main-amount" }, this.formatMainAmount(coupon)), coupon.free_shipping ? (h("div", { class: "s-cart-coupons-secondary-info" }, "+ ", salla.lang.get('pages.cart.free_shipping'))) : coupon.maximum_amount && (h("div", { class: "s-cart-coupons-secondary-info" }, salla.lang.get('pages.cart.up_to'), " ", h("span", { innerHTML: salla.money(coupon.maximum_amount.amount, coupon.maximum_amount.currency) })))), h("div", { class: "s-cart-coupons-code" }, coupon.code)), h("div", { class: "s-cart-coupons-divider" }), h("div", { class: "s-cart-coupons-bottom-section" }, h("div", { class: "s-cart-coupons-terms" }, coupon.remaining_days !== undefined && coupon.remaining_days !== null && (h("div", { class: `s-cart-coupons-expiry ${coupon.remaining_days <= 3 ? 's-cart-coupons-expiry-warning' : ''}` }, coupon.remaining_days === 0
430
535
  ? salla.lang.get('pages.cart.expires_today')
431
- : `${salla.lang.get('pages.cart.expires_after')} ${coupon.remaining_days} ${salla.lang.get('pages.cart.day')}`)), coupon.minimum_amount && parseFloat(coupon.minimum_amount.amount) > 0 && (h("div", { class: "s-cart-coupons-minimum" }, salla.lang.get('pages.cart.minimum'), " ", h("span", { innerHTML: salla.money(coupon.minimum_amount.amount, coupon.minimum_amount.currency) })))), h("div", { class: "s-cart-coupons-action" }, isEligible ? salla.lang.get('pages.cart.save_coupon') : salla.lang.get('pages.cart.coupon_not_compatible'))))));
536
+ : `${salla.lang.get('pages.cart.expires_after')} ${coupon.remaining_days} ${salla.lang.get('pages.cart.day')}`)), coupon.minimum_amount && parseFloat(coupon.minimum_amount.amount) > 0 && (h("div", { class: "s-cart-coupons-minimum" }, salla.lang.get('pages.cart.minimum'), " ", h("span", { innerHTML: salla.money(coupon.minimum_amount.amount, coupon.minimum_amount.currency) })))), h("div", { class: "s-cart-coupons-action" }, applied
537
+ ? this.renderAppliedAction(code)
538
+ : (isEligible ? salla.lang.get('pages.cart.save_coupon') : salla.lang.get('pages.cart.coupon_not_compatible')))))));
539
+ }
540
+ /**
541
+ * The applied footer: a "مُطبق" state label plus the إلغاء control that replaces the old
542
+ * chip's X. stopPropagation keeps the click off the card, which would otherwise re-apply.
543
+ */
544
+ renderAppliedAction(code) {
545
+ return [
546
+ h("span", { class: "s-cart-coupons-card-applied-label" }, salla.lang.get('pages.cart.coupon_applied')),
547
+ h("button", { type: "button", class: "s-cart-coupons-card-remove", "aria-label": `${salla.lang.get('pages.cart.delete_coupon')} ${code}`, disabled: this.isApplying, onClick: event => {
548
+ event.stopPropagation();
549
+ this.removeCoupon(code);
550
+ } }, salla.lang.get('pages.cart.cancel')),
551
+ ];
552
+ }
553
+ /**
554
+ * Card for an applied code with no metadata (typed by hand, or show_checkout_coupon = 0):
555
+ * the code and the remove control, nothing invented. Always applied — an unapplied code
556
+ * with no offer behind it has nothing to show, so buildMergedCoupons drops it.
557
+ */
558
+ renderMinimalCard(code) {
559
+ return (h("div", { class: "s-cart-coupons-slide-one-fourth swiper-slide" }, h("div", { class: "s-cart-coupons-card s-cart-coupons-card--applied s-cart-coupons-card--minimal" }, h("div", { class: "s-cart-coupons-top-section" }, h("div", { class: "s-cart-coupons-code s-cart-coupons-code--only" }, code)), h("div", { class: "s-cart-coupons-divider" }), h("div", { class: "s-cart-coupons-bottom-section" }, h("div", { class: "s-cart-coupons-action" }, this.renderAppliedAction(code))))));
560
+ }
561
+ /**
562
+ * What the card row renders. Multi-coupon reads the unified list; single-coupon keeps its
563
+ * original behaviour by wrapping the raw checkout coupons as never-applied entries, so that
564
+ * path renders exactly the markup it did before CP-3695.
565
+ */
566
+ couponRow() {
567
+ if (this.multiCoupon) {
568
+ return this.mergedCoupons;
569
+ }
570
+ return (this.availableCoupons || []).map(coupon => ({
571
+ code: coupon.code,
572
+ coupon,
573
+ applied: false,
574
+ }));
432
575
  }
433
576
  render() {
434
- return (h(Host, { key: 'ae2c4c3ba1388a68e71bc726a0b7f10e388ebed1' }, h("div", { key: 'f61f0515559bcaed657b1ca8fc2a09ac626ab044', class: "s-cart-coupons-wrapper" }, h("div", { key: '63597fdac231194d008b0fb88387b7a1ed73f222', class: "s-cart-coupons-input-section" }, h("label", { key: '507be0d9124d78c147bffcf300effbda787fed14', htmlFor: "coupon-input", class: "s-cart-coupons-coupon-label" }, salla.lang.get('pages.cart.have_coupon')), h("div", { key: 'e44dffa8477b85c407bb77930261be5a5282ddbc', class: "s-cart-coupons-coupon-input-container" }, this.multiCoupon ? [
577
+ const couponRow = this.couponRow();
578
+ return (h(Host, { key: 'e756434a2f77235e870891ce7e0b672a69429e49' }, h("div", { key: 'ca86866dc7275c98f72c2bc4c95684826e2a94d0', class: "s-cart-coupons-wrapper" }, h("div", { key: '8c37273ea0e40cad320ac148d82eeea2774ba18d', class: "s-cart-coupons-input-section" }, h("label", { key: '8495bff14cae70f530c648e49cac76bd57ec4429', htmlFor: "coupon-input", class: "s-cart-coupons-coupon-label" }, salla.lang.get('pages.cart.have_coupon')), h("div", { key: '5e6d10ab653561c33e73829f9259fe3037eab8e7', class: "s-cart-coupons-coupon-input-container" }, this.multiCoupon ? [
435
579
  // Multi-coupon: input stays active to append more codes; applied coupons render
436
580
  // as removable chips below.
437
581
  h("input", { type: "text", id: "coupon-input", name: "coupon", class: `form-input ${this.couponError ? 's-coupon-input-error' : ''}`, placeholder: salla.lang.get('pages.cart.coupon_placeholder'), value: this.couponInputValue, disabled: this.isApplying, onInput: this.onInput, onKeyUp: this.onKeyUp, "aria-label": salla.lang.get('pages.cart.apply_coupon'), key: "coupon-input" }),
@@ -442,7 +586,16 @@ const SallaCartCoupons$1 = /*@__PURE__*/ proxyCustomElement(class SallaCartCoupo
442
586
  // a new code can only be entered after removing. Reuses the existing master classes.
443
587
  h("input", { type: "text", id: "coupon-input", name: "coupon", class: `form-input ${this.couponError ? 's-coupon-input-error' : ''}`, placeholder: salla.lang.get('pages.cart.coupon_placeholder'), value: this.couponInputValue, disabled: !!this.currentCoupon || this.isApplying, onInput: this.onInput, onKeyUp: this.onKeyUp, "aria-label": salla.lang.get('pages.cart.apply_coupon'), key: "coupon-input" }),
444
588
  h("salla-button", { ref: el => this.couponButtonRef = el, class: `s-cart-coupons-coupon-button ${this.currentCoupon ? 's-cart-coupons-coupon-button-remove' : 's-cart-coupons-coupon-button-apply'}`, color: this.currentCoupon ? 'danger' : 'primary', loading: this.isApplying, "loader-position": "center", onClick: () => this.handleCouponButtonClick(), key: "apply-button" }, this.currentCoupon ? (h("i", { class: "sicon-cancel" })) : (h("span", null, salla.lang.get('pages.cart.save_coupon')))),
445
- ]), this.couponError && (h("span", { key: 'bed4fe6cce4f3d0c6b6aec663959bc83cf874b9d', class: "s-cart-coupons-coupon-error" }, this.couponError)), this.multiCoupon && this.appliedCoupons.length > 0 && (h("div", { key: 'c9c09a07c764c330063935126292d2c838fab650', class: "s-cart-coupons-applied-list" }, this.appliedCoupons.map(code => (h("div", { class: "s-cart-coupons-applied-item", key: code }, h("span", { class: "s-cart-coupons-applied-code" }, code), h("button", { type: "button", class: "s-cart-coupons-applied-remove", "aria-label": `${salla.lang.get('pages.cart.delete')} ${code}`, disabled: this.isApplying, onClick: () => this.removeCoupon(code) }, h("i", { class: "sicon-cancel" })))))))), this.availableCoupons && this.availableCoupons.length > 0 && (h("salla-slider", { key: '8dfed1f7f2df408f822d5d2795877a97bd64e1f1', type: "carousel", showControls: false, class: "s-cart-coupons-slider" }, h("div", { key: 'c76e054a894042557482f06d0bed8c9166ad2eaa', slot: "items" }, this.availableCoupons.map(coupon => this.renderCouponCard(coupon))))))));
589
+ ]), this.couponError && (h("span", { key: '5f7ff489d561f440e643c62c0d238a059f94ff2e', class: "s-cart-coupons-coupon-error" }, this.couponError))), couponRow.length > 0 && (h("salla-slider", { type: "carousel", showControls: false, class: "s-cart-coupons-slider",
590
+ /* salla-slider hands its slot children to Swiper, which MOVES them out of the
591
+ `slot="items"` div into its own .swiper-wrapper. Stencil then patches against a
592
+ tree that no longer exists where it expects, so a slide added to a list that
593
+ grew (e.g. applying a coupon the endpoint never returned) is appended to the
594
+ detached parent and never reaches the page — the component's own docs warn
595
+ against dynamic custom components inside it. Keying on the exact code list
596
+ makes Stencil discard and remount the slider whenever the set changes, so
597
+ Swiper re-initialises over the full, correct set of slides. */
598
+ key: couponRow.map(entry => entry.code).join('|') }, h("div", { key: '5b811515254595fcde9a364b113b60d38048e2c0', slot: "items" }, couponRow.map(entry => this.renderCouponCard(entry))))))));
446
599
  }
447
600
  get host() { return this; }
448
601
  static get style() { return sallaCartCouponsCss; }
@@ -455,6 +608,8 @@ const SallaCartCoupons$1 = /*@__PURE__*/ proxyCustomElement(class SallaCartCoupo
455
608
  "couponError": [32],
456
609
  "isApplying": [32],
457
610
  "appliedCoupons": [32],
611
+ "mergedCoupons": [32],
612
+ "appliedCouponCards": [32],
458
613
  "multiCoupon": [32],
459
614
  "selectCoupon": [64]
460
615
  }]);
@@ -123,7 +123,7 @@ const SallaCartSummary$1 = /*@__PURE__*/ proxyCustomElement(class SallaCartSumma
123
123
  return cartUrl;
124
124
  }
125
125
  render() {
126
- return (h(Host, { key: '46871f78da79e4ef5e80ab6b840972fedea6b032' }, h("a", { key: 'c3736429c17efab127aa1546eab87af22987ac1b', class: "s-cart-summary-wrapper", href: this.getCartLink(), onClick: this.handleCheckoutClick }, h("div", { key: 'ee82c1ff2176f9d04574c63aaad2db6c59799f0d', id: "s-cart-icon" }, h("slot", { key: '483cfc04976a7ced4222bcaad065e370a72a8061', name: "icon" }, h("i", { key: '0fa8e99e5fea7e88056784e0e0472ff4e927d4ef', class: "s-cart-summary-icon", innerHTML: PendingOrdersIcon }))), h("span", { key: '2091f2ef2aed4c1b34011890c7b0f1fe78813ce4', class: "s-cart-summary-count" }, salla.helpers.number(this.cartSummaryCount)), h("p", { key: 'c2f6277c2742a9ca339ca39652a6a9119b260eee', class: "s-cart-summary-content" }, this.showCartLabel && h("span", { key: '7d2416455c34c1a4625d1131d99ab94e681f202a', class: "s-cart-summary-label" }, this.cartLabel), h("b", { key: 'e6546fda5426fbae3b7b7a96217cf15a45e662c9', class: "s-cart-summary-total", innerHTML: salla.money(this.cartSummaryTotal) })))));
126
+ return (h(Host, { key: '80544f74203447490842d9ef9519ba3013fe0d02' }, h("a", { key: 'd769586f49b37a079653587d990871cb3ffe6542', class: "s-cart-summary-wrapper", href: this.getCartLink(), onClick: this.handleCheckoutClick }, h("div", { key: 'ad1833c7562138c211def82a365a89216157db20', id: "s-cart-icon" }, h("slot", { key: 'a5d60463eb9f023ffed29586a94d3b5feaf586c8', name: "icon" }, h("i", { key: '64a0c861706a05edc9057b1692d33945306958c0', class: "s-cart-summary-icon", innerHTML: PendingOrdersIcon }))), h("span", { key: '6781086462fdb3e9910d9d32bd53014345c7148b', class: "s-cart-summary-count" }, salla.helpers.number(this.cartSummaryCount)), h("p", { key: '04dd5019a64ac99153b843ec2cff9103cf247c6a', class: "s-cart-summary-content" }, this.showCartLabel && h("span", { key: '2625556cc87729a72eb9ab455e3274a24c1738fa', class: "s-cart-summary-label" }, this.cartLabel), h("b", { key: '97a1a1911d6e18f9dde89437bd8749553ce8d35c', class: "s-cart-summary-total", innerHTML: salla.money(this.cartSummaryTotal) })))));
127
127
  }
128
128
  get host() { return this; }
129
129
  static get style() { return sallaCartSummaryCss; }
@@ -208,7 +208,7 @@ const SallaColorPicker = /*@__PURE__*/ proxyCustomElement(class SallaColorPicker
208
208
  });
209
209
  }
210
210
  render() {
211
- return (h(Host, { key: 'acb6aaa4e5a53c81e4f603e2d6bf3000961bcb88', class: "s-color-picker-main" }, h("slot", { key: 'b924c02b25d3b306e4a162c029d41f94282f8313', name: "widget" }, h("div", { key: '0f525e98176b4ca0c0c54e0fe68bb86ac4ceae7c', class: "s-color-picker-widget" }, h("div", { key: '8860d1ea0a223b7839fd9629eaa5a7fb6a394fd3', class: "s-color-picker-widget-canvas", ref: dv => (this.canvas = dv) }), h("span", { key: '62c01df67c954a68a15f55b1f127cda50640958c', innerHTML: ArrowDown }))), h("input", { key: '257d51b2d8d635761b1a9ecb5545cd0f66de18af', class: "s-hidden", name: this.name, required: this.required, value: this.color, ref: color => (this.colorInput = color) })));
211
+ return (h(Host, { key: 'b0ddc9c457300b40e5e64a54aa13e38f46106dd8', class: "s-color-picker-main" }, h("slot", { key: '409622ef888a6fda18a44406b28bdb1a37abced7', name: "widget" }, h("div", { key: '53f2a7135429a3aea05efc69bb66b4dde470b8e0', class: "s-color-picker-widget" }, h("div", { key: '715cdf2d6a310f7d2add7f155a6db932a2e670c8', class: "s-color-picker-widget-canvas", ref: dv => (this.canvas = dv) }), h("span", { key: '95ea57b71b1352c1d3801efcf60475d17157056a', innerHTML: ArrowDown }))), h("input", { key: 'e25c80f98c10d9006d16c28af9d799896a1b5e07', class: "s-hidden", name: this.name, required: this.required, value: this.color, ref: color => (this.colorInput = color) })));
212
212
  }
213
213
  componentDidLoad() {
214
214
  if (this.canvas)
@@ -45,7 +45,7 @@ const SallaCommentForm = /*@__PURE__*/ proxyCustomElement(class SallaCommentForm
45
45
  .finally(() => this.submitBtn.stop());
46
46
  }
47
47
  render() {
48
- return (h(Host, { key: 'b3cb09ddf083b075a78981e40911913a5fb63d33' }, !!this.canComment ? h("form", { ref: frm => this.commentForm = frm }, h("div", { class: "s-comment-form-wrapper" }, this.showAvatar ?
48
+ return (h(Host, { key: '16f5113a8345c31dce2f8302bcb5a5fba62e91c3' }, !!this.canComment ? h("form", { ref: frm => this.commentForm = frm }, h("div", { class: "s-comment-form-wrapper" }, this.showAvatar ?
49
49
  h("img", { class: "s-comment-form-avatar", src: salla.config.get('user.avatar'), alt: "user avatar" }) : '', h("div", { class: "s-comment-form-content" }, h("textarea", { cols: 30, rows: 5, minlength: "4", maxlength: "500", ref: field => this.commentField = field, placeholder: this.placeholder, class: "s-comment-form-input", required: true }), h("br", null), h("div", { class: "s-comment-form-action" }, h("salla-button", { ref: btn => this.submitBtn = btn, "loader-position": 'center', onClick: () => this.submit() }, this.submitText))))) : ''));
50
50
  }
51
51
  static get style() { return sallaCommentFormCss; }
@@ -130,7 +130,7 @@ const SallaConditionalFields = /*@__PURE__*/ proxyCustomElement(class SallaCondi
130
130
  });
131
131
  }
132
132
  render() {
133
- return (h(Host, { key: 'b26437717cccf1d61e1fa16541794c8e55817730' }, h("slot", { key: '898c850d6d7c5c081dc5a65a6f8f8a984547af9f' })));
133
+ return (h(Host, { key: '86fa0b22ebc38b3f214e6f9b95fdfca2138a52b6' }, h("slot", { key: '5f128ba45c9c8029ae9c8f6163f7afa277f4f185' })));
134
134
  }
135
135
  get host() { return this; }
136
136
  }, [4, "salla-conditional-fields", undefined, [[0, "change", "changeHandler"], [0, "input", "changeHandler"]]]);
@@ -235,7 +235,7 @@ const SallaCountDown = /*@__PURE__*/ proxyCustomElement(class SallaCountDown ext
235
235
  return this.renderCountDown();
236
236
  }
237
237
  render() {
238
- return (h(Host, { key: '7f3e240f25c715b3faaac4e85c48f017e54c7907', class: `s-count-down-wrapper ${this.preOrder && this.isValidDate(this.date) ? 's-count-down-pre-order' : ''} ${this.horizontal ? 's-count-down-horizontal' : ''} ${this.withButton ? 's-count-down-with-button' : ''} ${this.offerEnded ? 's-count-down-ended' : ''}` }, this.renderPrefixText(), this.renderContent(), this.offerEnded && this.renderOfferEnded(), this.renderButton()));
238
+ return (h(Host, { key: 'a16b6dc8c000eea39b990588995b07d6361231b2', class: `s-count-down-wrapper ${this.preOrder && this.isValidDate(this.date) ? 's-count-down-pre-order' : ''} ${this.horizontal ? 's-count-down-horizontal' : ''} ${this.withButton ? 's-count-down-with-button' : ''} ${this.offerEnded ? 's-count-down-ended' : ''}` }, this.renderPrefixText(), this.renderContent(), this.offerEnded && this.renderOfferEnded(), this.renderButton()));
239
239
  }
240
240
  static get style() { return sallaCountDownCss; }
241
241
  }, [0, "salla-count-down", {
@@ -211,7 +211,7 @@ const SallaDatetimePicker = /*@__PURE__*/ proxyCustomElement(class SallaDatetime
211
211
  }
212
212
  }
213
213
  render() {
214
- return h("div", { key: '2e14070685e9a876e6d5d16baef06006a15c2a53', class: "s-datetime-picker" }, h("input", { key: '777a487061a0509de86df589bcdfa9b32cdd5572', type: "datetime", name: this.name, value: this.value, required: this.required, disabled: this.disabled, placeholder: this.placeholder, class: "s-datetime-picker-input", ref: (el) => this.dateInput = el }));
214
+ return h("div", { key: '64b648c87a1395cc19db863b2ce0cfbabf647561', class: "s-datetime-picker" }, h("input", { key: '87bfdfff27591a2ad83a4edad089420701f11452', type: "datetime", name: this.name, value: this.value, required: this.required, disabled: this.disabled, placeholder: this.placeholder, class: "s-datetime-picker-input", ref: (el) => this.dateInput = el }));
215
215
  }
216
216
  async componentDidLoad() {
217
217
  // Load flatpickr before initializing
@@ -2,7 +2,7 @@
2
2
  * Crafted with ❤ by Salla
3
3
  */
4
4
  import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal/client';
5
- import { q as isMapOriginIntent } from './helpers.js';
5
+ import { p as isMapOriginIntent } from './helpers.js';
6
6
  import { d as defineCustomElement$6 } from './salla-button2.js';
7
7
  import { d as defineCustomElement$5 } from './salla-loading2.js';
8
8
  import { d as defineCustomElement$4 } from './salla-modal2.js';
@@ -892,12 +892,12 @@ const SallaFileUpload = /*@__PURE__*/ proxyCustomElement(class SallaFileUpload e
892
892
  this.revokeAllPreviewObjectUrls();
893
893
  }
894
894
  render() {
895
- return (h(Host, { key: '4e2eaa6ea15e69930a1caac393575a98da537505', class: {
895
+ return (h(Host, { key: '851d41cc6012f516488a99f56f9937c14f79bc85', class: {
896
896
  "s-file-upload": true,
897
897
  "s-file-upload-profile-image": this.profileImage,
898
898
  "s-file-upload-multiple": this.allowMultiple,
899
899
  "s-file-upload-has-gallery": this.usesGalleryPreview(),
900
- } }, h("input", { key: 'a2e82319893d3cc05316b66d4cf8afdc62fed9ad', type: "file", name: this.name, ref: ele => this.fileUploader = ele, required: this.required, class: "s-file-upload-wrapper s-file-upload-input", accept: this.accept }), this.allowMultiple && this.showMaxCountHint ? h("div", { class: "s-file-upload-hint s-hidden" }, this.max_count_hint(this.getTotalMaxFiles())) : '', h("input", { key: '8fd655d5318ef96a32d5f5238677068a14f4bb2e', class: "s-hidden", name: 'hidden-' + this.name, required: this.required, value: this.getHiddenInputValue(), ref: input => this.hiddenInput = input }), this.renderPreviewGallery()));
900
+ } }, h("input", { key: '05902420c0ea6863d8fc010c5a54f40aedeac77b', type: "file", name: this.name, ref: ele => this.fileUploader = ele, required: this.required, class: "s-file-upload-wrapper s-file-upload-input", accept: this.accept }), this.allowMultiple && this.showMaxCountHint ? h("div", { class: "s-file-upload-hint s-hidden" }, this.max_count_hint(this.getTotalMaxFiles())) : '', h("input", { key: '00b556281810005ea609a7d1cb7d514277453bee', class: "s-hidden", name: 'hidden-' + this.name, required: this.required, value: this.getHiddenInputValue(), ref: input => this.hiddenInput = input }), this.renderPreviewGallery()));
901
901
  }
902
902
  async componentDidLoad() {
903
903
  await Salla.onReady();
@@ -178,12 +178,12 @@ const SallaFiltersWidget = /*@__PURE__*/ proxyCustomElement(class SallaFiltersWi
178
178
  return h("span", { class: "s-filters-option-name" }, label);
179
179
  }
180
180
  render() {
181
- return (h(Host, { key: 'af3f05601697115a001949d5c23d8925f6c68135', class: "s-filters-widget-container" }, h("h3", { key: '689046ac453166e29fdb4e3ad10568a989446bfb', class: "s-filters-widget-title", onClick: () => this.toggleWidget() }, h("span", { key: '00d65abda360e88e26a08016bb1bd23eceee9f4b' }, this.option.label), h("span", { key: '1915aaec2e1ea66235071f0b4f872bd6d9717a21', class: `s-filters-widget-plusminus ${this.isOpen ? 's-filters-widget-plusminus-active' : ''}` })), h("div", { key: 'd94f99643aa914391f131acebfb71d4183263df5', class: "s-filters-widget-content", ref: (el) => this.widgetContent = el }, Array.isArray(this.option.values) && this.option.values.length > 5 && (h("div", { key: '0b67486012b38ce82a377b0f3cb6465892d718ae', class: "s-filters-widget-search-wrapper", style: { padding: '8px 0', marginBottom: '8px' } }, h("input", { key: '00bf03c96c9fa7199872f1444c4484bf23049dd4', type: "text", class: "s-filters-widget-search-input", placeholder: salla.lang.get('blocks.header.search_placeholder') || 'بحث...', value: this.searchQuery, onInput: (e) => this.searchQuery = e.target.value }))), h("div", { key: '79b29b30854583559ee8b0082210ad2f34e31e1a', class: "s-filters-widget-values", ref: (el) => this.widgetValues = el }, h("slot", { key: '0e657a77d5e62ee04cf2d3bd30982bb6addf06ef' }), this.option.type !== FilterOptionTypes.RANGE
181
+ return (h(Host, { key: 'd3d9731c163a78609bb1a2f4b01ef6c3db4fc7dc', class: "s-filters-widget-container" }, h("h3", { key: 'bf1c5a033860416035ad7c74f4d9082f4c8de282', class: "s-filters-widget-title", onClick: () => this.toggleWidget() }, h("span", { key: '2a94d9a6500b3137900136fd052c731f63b0acae' }, this.option.label), h("span", { key: '69b28fcad8ebc564dbbe907a4eb4044a0ee9d6ad', class: `s-filters-widget-plusminus ${this.isOpen ? 's-filters-widget-plusminus-active' : ''}` })), h("div", { key: 'fa20429b6b3399275eecbcac390d8895c3b01350', class: "s-filters-widget-content", ref: (el) => this.widgetContent = el }, Array.isArray(this.option.values) && this.option.values.length > 5 && (h("div", { key: '98c869541f0a1d61725048296af6296e603cfa2c', class: "s-filters-widget-search-wrapper", style: { padding: '8px 0', marginBottom: '8px' } }, h("input", { key: 'f5310cfdad6980e5d991bd03934d5c1a4a014f10', type: "text", class: "s-filters-widget-search-input", placeholder: salla.lang.get('blocks.header.search_placeholder') || 'بحث...', value: this.searchQuery, onInput: (e) => this.searchQuery = e.target.value }))), h("div", { key: '317bb4bcfae88596f8a8737b2454f5f2ecae5b0d', class: "s-filters-widget-values", ref: (el) => this.widgetValues = el }, h("slot", { key: '8620064a3526e686b95a0c21e39f5b15a8ea3133' }), this.option.type !== FilterOptionTypes.RANGE
182
182
  ? this.renderFilterOption(this.option)
183
183
  : h("salla-price-range", { onChanged: (event) => {
184
184
  this.changed.emit(event.detail);
185
185
  }, ref: price => this.priceRange = price, filtersData: this.filtersData, option: this.option })), this.withLoadMore && (!this.searchQuery || this.filteredCount > this.initialItemCount) &&
186
- h("a", { key: '29a3578886c0c88b6af2dc529004f9f4ab663986', class: "s-filters-widget-more", onClick: () => this.showMore() }, !this.isShowMore ? this.showMoreLabel : this.showLessLabel))));
186
+ h("a", { key: '8c9c93c3579578f1da4fe676d4758c0bbb5b4e21', class: "s-filters-widget-more", onClick: () => this.showMore() }, !this.isShowMore ? this.showMoreLabel : this.showLessLabel))));
187
187
  }
188
188
  get host() { return this; }
189
189
  static get style() { return sallaFiltersWidgetCss; }
@@ -220,7 +220,7 @@ const SallaFilters$1 = /*@__PURE__*/ proxyCustomElement(class SallaFilters exten
220
220
  this.applyFilters();
221
221
  }
222
222
  render() {
223
- return h(Host, { key: 'd72b6ce577e47864d9095922f9c2d88068c2a2c4' }, this.filters?.map(option => h("salla-filters-widget", { option: option, filtersData: this.filtersData, onChanged: ({ detail: { event, option, value } }) => {
223
+ return h(Host, { key: 'ef7f2cf7241193cb8b2fe24fdb0713d8c92c04c9' }, this.filters?.map(option => h("salla-filters-widget", { option: option, filtersData: this.filtersData, onChanged: ({ detail: { event, option, value } }) => {
224
224
  this.handleOptionChange(event, option, value);
225
225
  } })));
226
226
  }
@@ -884,7 +884,7 @@ const SallaGifting$1 = /*@__PURE__*/ proxyCustomElement(class SallaGifting exten
884
884
  }
885
885
  render() {
886
886
  return [
887
- h("div", { key: 'eb77c96ecc39291dc3def641cea481cc90b3e267' }, h("salla-list-tile", { key: 'a9e8e946a5a06c6fe380073a068612fadeb0fc20', class: this.generateClass() }, h("div", { key: 'eebf210be6fe5e1672e695d47c9bde11320883c8', slot: "title" }, this.vertical ? h("span", { innerHTML: SIGiftSharing }) : '', h("h3", { key: 'f0e8320f7b29878ec7a96c201c47c5f60f4d9b21' }, !!this.widgetTitle ? this.widgetTitle : this.sectionTitle)), h("div", { key: '446c7e990c11838a3356acce58730392822bec93', slot: "subtitle" }, h("div", { key: '9a70815ad3c56c0360f7f5df1863c5aba5bc896e' }, !!this.widgetSubtitle ? this.widgetSubtitle : this.sectionSubtitle)), h("div", { key: '952b4ba1b1c864f7700ad907661b0d8962f04ab8', slot: "action" }, h("salla-button", { key: 'fb226574b5780e51da64cba8b664845f9fc9eb34', color: "primary", fill: "outline", width: "wide", class: "s-gifting-widget-action", onClick: () => this.handleGiftButtonClick() }, h("slot", { key: '6d15b2311b8fa8971438fe413e195f0d8b45b14d', name: "widget-btn-content" }, h("div", { key: 'ac5118ea07ad9048f4302397f59620cc20707f2f', class: "s-gifting-widget-action-content" }, h("span", { key: 'ecd29618212e32d4c9a9630e1041757175050a7e', innerHTML: SIGiftSharing }), " \u00A0", h("span", { key: 'b0ea950ea255e38b8070adc258f6fe95257f4ee6' }, this.sectionBtnText)))))), h("salla-modal", { key: 'a5c2f373772e75fb2d4317a4870e9d164ee1c11c', id: this.hostId, isLoading: true, class: "s-gifting-modal", width: "sm", ref: modal => this.modal = modal }, h("div", { key: '23b4f5e5184ac45553c064b82534935b69f4971c', slot: "loading" }, h("div", { key: 'ba556012198ceec99b547b4bb81c498a684b582e', class: "s-gifting-skeleton" }, h("div", { key: '6440590d61dd8e0fc43228bbdc474aab6fe5cebc', class: "s-gifting-modal-header" }, h("salla-skeleton", { key: '4a7b1911383367aa4d8dec04f28ac82df21a5d73', type: 'circle', height: '5rem', width: '5rem' }), h("h2", { key: '22105ca62fcf60145e40bcf03eccafa562288cd9', class: "s-gifting-modal-title" }, h("div", { key: 'dd1b90825ebc0d7dbd676d3862fb50ee20455b89', class: "s-gifting-modal-badge-wrapper" }, h("salla-skeleton", { key: '6554734da468f07ebe5e8b78aff926c3b0235a07', height: '15px', width: '150px' })))), h("div", { key: '9bbad16d73fb651480312cc1920b7a08cca91fd2', class: "s-gifting-skeleton-content" }, h("salla-skeleton", { key: '18fa7ea81b582e3ae6f47efb56197b06ce66651e', height: '10px', width: '150px' }), h("salla-skeleton", { key: '2af61d925bb04c9713a7792b21ecd354f0516f67', height: '230px' }), h("salla-skeleton", { key: '8f7d2007c374b89ea252782d54e111fcd8e6f0c0', height: '10px', width: '150px' }), h("salla-skeleton", { key: 'ad2241ce42187cab3d5e487577f984571191476f', height: '30px' }), h("salla-skeleton", { key: 'f5923597280a309f81edf21960c1a1a0ffcee30f', height: '40px' })))), h("slot", { key: '607f49b24ad953ace7a49aae0198150c29842350', name: "header" }), !!this.hasError ?
887
+ h("div", { key: '02f095cd71654941cc3d11f9c9be13e019247992' }, h("salla-list-tile", { key: '5dfefabc5e6fcb2f0193bf11dcd324c517b0e649', class: this.generateClass() }, h("div", { key: '35b5b8cbf54ccbf9368cdc95d2e0505ca317a555', slot: "title" }, this.vertical ? h("span", { innerHTML: SIGiftSharing }) : '', h("h3", { key: '2399e07a06a808b396cf57a5233be97938e7b9b5' }, !!this.widgetTitle ? this.widgetTitle : this.sectionTitle)), h("div", { key: '12f460ce1df5e294e77b25e07d00d85370b2b939', slot: "subtitle" }, h("div", { key: '28fd4125c6f18fb976bc271ffc7c731683757bfb' }, !!this.widgetSubtitle ? this.widgetSubtitle : this.sectionSubtitle)), h("div", { key: '2ccb5745341390a9aeb80c56b4d7bb171cc2940e', slot: "action" }, h("salla-button", { key: '4e74313bd4020ae32a1c2ba30b0133da0aaf410a', color: "primary", fill: "outline", width: "wide", class: "s-gifting-widget-action", onClick: () => this.handleGiftButtonClick() }, h("slot", { key: '85ef811160f391d2fc456b13a89120407d6e4c36', name: "widget-btn-content" }, h("div", { key: '6d4d1162f7147488f8ce11d7da1bf7b82bc407b0', class: "s-gifting-widget-action-content" }, h("span", { key: 'e7aa877309bc7346fe56227365ad75c0d7c1a8dc', innerHTML: SIGiftSharing }), " \u00A0", h("span", { key: '5c7f1a43fa84e8e5ba74a449063fc89576626db2' }, this.sectionBtnText)))))), h("salla-modal", { key: '1de82b1f9a7fc49321eb766b1451eacd2d210480', id: this.hostId, isLoading: true, class: "s-gifting-modal", width: "sm", ref: modal => this.modal = modal }, h("div", { key: 'f3a97db3aa3a2591a1d391af61efa15ab76f1c8c', slot: "loading" }, h("div", { key: '67fb44c701b3f2771e041b91a2a438a0419ed4dd', class: "s-gifting-skeleton" }, h("div", { key: '70b2841fbafff80879cf2d68550cc9659da140a2', class: "s-gifting-modal-header" }, h("salla-skeleton", { key: '8d337e1bfe29aea80e93ed2d1e172fa4fe23e1db', type: 'circle', height: '5rem', width: '5rem' }), h("h2", { key: 'b8586d28a3dda5abbdbc341830560c157efb566c', class: "s-gifting-modal-title" }, h("div", { key: '956ec550fd7ddeb6b11f174b92d0133408f95165', class: "s-gifting-modal-badge-wrapper" }, h("salla-skeleton", { key: 'f495e7ec761c8499efb7a6e7025bd205dca49f2c', height: '15px', width: '150px' })))), h("div", { key: '28e5ad1386cebcd93a5f9307bd812dca77a66188', class: "s-gifting-skeleton-content" }, h("salla-skeleton", { key: '951dbed5a03ab246d661dfd2a59ae099b468fa89', height: '10px', width: '150px' }), h("salla-skeleton", { key: 'f200d5a5a4a258fb0755b6adb48e25606ab93bb7', height: '230px' }), h("salla-skeleton", { key: '1b4f69321a13d1ddea4ad038bfad22385b3b51ed', height: '10px', width: '150px' }), h("salla-skeleton", { key: '5d9219d3826de28b8e585bada604bff60dfc80f8', height: '30px' }), h("salla-skeleton", { key: 'a248552e288bea2e9839f381ec2d96bdb0e53cdf', height: '40px' })))), h("slot", { key: '3c8f9965766d7ce17fb20b4df72a3e46c273b23a', name: "header" }), !!this.hasError ?
888
888
  h("salla-placeholder", { alignment: "center" }, h("span", { slot: "title" }, this.errorMessage || salla.lang.get('common.errors.empty_results')), h("span", { slot: "description" }, " "))
889
889
  :
890
890
  [
@@ -907,7 +907,7 @@ const SallaGifting$1 = /*@__PURE__*/ proxyCustomElement(class SallaGifting exten
907
907
  h("div", { class: this.step2ItemClass(this.errors?.['receiver.city_id'] ? 's-form-group s-form-has-error' : 's-form-group') }, h("label", { class: "s-form-label", htmlFor: `${this.hostId}-city` }, this.receiverCityFieldLabel), h("salla-searchable-dropdown", { placeholder: this.selectCity, items: this.displayedCities, selectedItem: this.selectedCity, loading: this.loadingCities, searching: this.searchingCities, disabled: this.loadingCities || (this.isKSA && !this.selectedRegionId), required: true, inputId: `${this.hostId}-city`, searchQuery: this.citySearchQuery, clientSearch: !this.enableCityAjaxSearch, dropUp: true, keepParentScroll: true, onItemSelected: (e) => this.handleCitySelected(e.detail), onSearchInput: (e) => this.handleCitySearch(e.detail), onDropdownClosed: () => this.handleCityDropdownClosed() }), this.errors && this.errors['receiver.city_id'] ?
908
908
  h("span", { class: "s-gifting-error" }, this.errors['receiver.city_id']) : ''), this.isPhysical() && this.cityNoticeText() &&
909
909
  h("div", { class: this.step2ItemClass('s-gifting-info') }, h("span", { innerHTML: Alert }), h("span", null, this.cityNoticeText())), !this.isPhysical() && h("div", { class: this.step2ItemClass() }, h("label", { class: "s-gifting-schedule s-gifting-clickable", htmlFor: `schedule-${this.hostId}` }, h("input", { type: "checkbox", name: 'schedule', id: `schedule-${this.hostId}`, onChange: () => this.toggleCalendar(), class: "s-checkbox" }), h("span", { class: "s-form-label" }, " ", this.sendLater, " "))), h("div", { class: this.getCalendarClasses(), ref: (el) => this.calendarFormGroup = el }, h("label", { class: "s-form-label" }, this.selectSendDateAndTime), h("salla-datetime-picker", { value: this.deliveryDate, placeholder: this.selectSendDateAndTime, "enable-time": true, "date-format": "Y-m-d h:i K", onPicked: (event) => this.handleDateTimePicker(event) }), h("span", { class: "s-gifting-calendar-hint" }, this.canNotEditOrderAfterSelectDate)), h("div", { class: this.step2ItemClass('s-gifting-step-two-footer') }, !this.skipStep1() && h("a", { href: "#!", innerHTML: IconArrowLeft, onClick: (e) => this.goToStep1(e) }), h("salla-button", { onClick: () => this.submitForm(), color: "primary", width: 'wide' }, h("span", null, this.sendGift)))))
910
- ], h("slot", { key: 'c83487720cc77c14ccc08e8b2872b5f4fbd0bfa3', name: "footer" })))
910
+ ], h("slot", { key: '688de0af2e48acc0d91d128a321856197861eb16', name: "footer" })))
911
911
  ];
912
912
  }
913
913
  static get style() { return sallaGiftingCss; }
@@ -17,7 +17,7 @@ const SallaHook$1 = /*@__PURE__*/ proxyCustomElement(class SallaHook extends HTM
17
17
  this.host.before(element);
18
18
  }
19
19
  render() {
20
- return h(Host, { key: 'e9402928843fe4612c514c4a0f6374b2d1f02736' });
20
+ return h(Host, { key: '579b0abf0784c9396f636da50b1fed156e5a0600' });
21
21
  }
22
22
  async componentDidLoad() {
23
23
  // Register this component for hooks system, already on it logic to run componentDidLoad trigger
@@ -25,7 +25,7 @@ const SallaListTile = /*@__PURE__*/ proxyCustomElement(class SallaListTile exten
25
25
  };
26
26
  }
27
27
  render() {
28
- return (h(Host, { key: '9706d1824aad1128cbdc3f46af1494fa6e66dae2' }, h("a", { key: '85a7f3aacb7c35ea954408a66018b8b0037b01be', class: this.generateClass(), href: this.href || "#", target: this.target, "aria-label": "List Tile Link" }, h("div", { key: '82bb422660690dd5fd1c677c979b7a80bcdf5bb1', class: "s-list-tile-item-icon" }, h("slot", { key: '6d823058b55ece833dda9aea3d62c4f8912da6d6', name: 'icon' })), h("div", { key: '3795a83ecbe93fbe3e9209ae36667dfeb06e5a3f', class: "s-list-tile-item-content" }, h("div", { key: '292a6ef5c02b74d2a72ed870025527045585b578', class: "s-list-tile-item-title" }, h("slot", { key: '9312aab9b50837ad23065979c40a57deb03eb738', name: 'title' })), h("div", { key: 'b23b96fd91e159edad15daeb4eb6d680854a327b', class: "s-list-tile-item-subtitle" }, h("slot", { key: '4932dcb47f174c750680aef2da36a42dd0a4e742', name: "subtitle" }))), h("div", { key: '1613517864d14b909ab9fad0f93f3ffa47392794', class: "s-list-tile-item-action" }, h("slot", { key: 'e61f359a00a60c28aa0d48b95afdb0c52efdd3e9', name: 'action' })))));
28
+ return (h(Host, { key: '859bfbc8049ae8391ac35db575f9eac29651d45d' }, h("a", { key: '94cfc3500071ef1b45d5120cc0b3f2234978d089', class: this.generateClass(), href: this.href || "#", target: this.target, "aria-label": "List Tile Link" }, h("div", { key: 'dcf0437211174d449ef381f96103e3661a0373ae', class: "s-list-tile-item-icon" }, h("slot", { key: 'e446499ef938c4c6017c57ebf6df800d0324aee0', name: 'icon' })), h("div", { key: '87403147cde0cab458181c36d797f85ee9390d8a', class: "s-list-tile-item-content" }, h("div", { key: 'b585f7f0f23d83cb8b128d7a225d6561430bf81e', class: "s-list-tile-item-title" }, h("slot", { key: '756b1d8edbc9272a4aae4fa1e63c8531ca8851f5', name: 'title' })), h("div", { key: '1ce5eae34219802f67eea914efb1d2300ea7e896', class: "s-list-tile-item-subtitle" }, h("slot", { key: '8bac18580d009d7d910f4e92b798ff3338ce6632', name: "subtitle" }))), h("div", { key: '2477624cd43d6c0292d40395e38a0a4fe6d07be4', class: "s-list-tile-item-action" }, h("slot", { key: 'b51e25e3f127e39289dd4d8949fc72d1b9cbd044', name: 'action' })))));
29
29
  }
30
30
  static get style() { return sallaListTileCss; }
31
31
  }, [4, "salla-list-tile", {
@@ -27,7 +27,7 @@ const SallaLoading = /*@__PURE__*/ proxyCustomElement(class SallaLoading extends
27
27
  this.bgColor = "#e5e7eb";
28
28
  }
29
29
  render() {
30
- return (h(Host, { key: '253ecd20b6ff9beff53db9372c679da63b9394f9', class: "s-loading-container" }, h("svg", { key: 'fb47f4c89cc2084f32b6bfb1e585bfe360961401', "aria-hidden": "true", style: { width: `${this.size}px`, height: `${this.size}px`, fill: this.color, color: this.bgColor }, class: "s-loading", viewBox: "0 0 100 101", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: '7420a3e8bce0cbc79b060b5fb512d970429cdfac', d: "M100 50.5908C100 78.2051 77.6142 100.591 50 100.591C22.3858 100.591 0 78.2051 0 50.5908C0 22.9766 22.3858 0.59082 50 0.59082C77.6142 0.59082 100 22.9766 100 50.5908ZM9.08144 50.5908C9.08144 73.1895 27.4013 91.5094 50 91.5094C72.5987 91.5094 90.9186 73.1895 90.9186 50.5908C90.9186 27.9921 72.5987 9.67226 50 9.67226C27.4013 9.67226 9.08144 27.9921 9.08144 50.5908Z", fill: "currentColor" }), h("path", { key: 'd51ce4b5442429ca6874d1ef850a775437c4f0d5', d: "M93.9676 39.0409C96.393 38.4038 97.8624 35.9116 97.0079 33.5539C95.2932 28.8227 92.871 24.3692 89.8167 20.348C85.8452 15.1192 80.8826 10.7238 75.2124 7.41289C69.5422 4.10194 63.2754 1.94025 56.7698 1.05124C51.7666 0.367541 46.6976 0.446843 41.7345 1.27873C39.2613 1.69328 37.813 4.19778 38.4501 6.62326C39.0873 9.04874 41.5694 10.4717 44.0505 10.1071C47.8511 9.54855 51.7191 9.52689 55.5402 10.0491C60.8642 10.7766 65.9928 12.5457 70.6331 15.2552C75.2735 17.9648 79.3347 21.5619 82.5849 25.841C84.9175 28.9121 86.7997 32.2913 88.1811 35.8758C89.083 38.2158 91.5421 39.6781 93.9676 39.0409Z", fill: "currentFill" }))));
30
+ return (h(Host, { key: '3bc71183fdd705edff5c1f9cb25a7633898e8146', class: "s-loading-container" }, h("svg", { key: '1af3b702b1e5882c125f1d889337e7636973df68', "aria-hidden": "true", style: { width: `${this.size}px`, height: `${this.size}px`, fill: this.color, color: this.bgColor }, class: "s-loading", viewBox: "0 0 100 101", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: 'b34b2b5ddb7760c52ccaaba9995a73f2aa28522c', d: "M100 50.5908C100 78.2051 77.6142 100.591 50 100.591C22.3858 100.591 0 78.2051 0 50.5908C0 22.9766 22.3858 0.59082 50 0.59082C77.6142 0.59082 100 22.9766 100 50.5908ZM9.08144 50.5908C9.08144 73.1895 27.4013 91.5094 50 91.5094C72.5987 91.5094 90.9186 73.1895 90.9186 50.5908C90.9186 27.9921 72.5987 9.67226 50 9.67226C27.4013 9.67226 9.08144 27.9921 9.08144 50.5908Z", fill: "currentColor" }), h("path", { key: '27cf21f3dd2b33e9dbbd73711e9be825a8ec6575', d: "M93.9676 39.0409C96.393 38.4038 97.8624 35.9116 97.0079 33.5539C95.2932 28.8227 92.871 24.3692 89.8167 20.348C85.8452 15.1192 80.8826 10.7238 75.2124 7.41289C69.5422 4.10194 63.2754 1.94025 56.7698 1.05124C51.7666 0.367541 46.6976 0.446843 41.7345 1.27873C39.2613 1.69328 37.813 4.19778 38.4501 6.62326C39.0873 9.04874 41.5694 10.4717 44.0505 10.1071C47.8511 9.54855 51.7191 9.52689 55.5402 10.0491C60.8642 10.7766 65.9928 12.5457 70.6331 15.2552C75.2735 17.9648 79.3347 21.5619 82.5849 25.841C84.9175 28.9121 86.7997 32.2913 88.1811 35.8758C89.083 38.2158 91.5421 39.6781 93.9676 39.0409Z", fill: "currentFill" }))));
31
31
  }
32
32
  static get style() { return sallaLoadingCss; }
33
33
  }, [0, "salla-loading", {
@@ -248,7 +248,7 @@ const SallaLocalizationModal$1 = /*@__PURE__*/ proxyCustomElement(class SallaLoc
248
248
  this.showTrigger
249
249
  ? h("button", { type: "button", onClick: () => this.open(), class: "s-localization-modal-trigger-btn" }, h("span", null, this.getLanguageName()), h("span", { class: "s-localization-modal-trigger-separator" }, "|"), " ", h("span", { innerHTML: this.getCurrencySymbol() }))
250
250
  : '',
251
- h("salla-modal", { key: 'a0918db3935959e8317651b254ff85435bf0fea5', isLoading: true, class: "s-hidden", ref: modal => this.modal = modal, width: "xs" }, h("div", { key: 'd1a35e23c564ea2caee46c386188d7ef64ff54c8', slot: 'loading' }, h("div", { key: '9ca0533b73f1cd11f9101232b6faee1971f9f741', class: "s-localization-modal-skeleton" }, h("salla-skeleton", { key: '03ee2d71e09d2f5d8714932309c1af1788feda8e', width: '25%', height: '15px' }), h("div", { key: '0595dd8f7cb572d12a7a2e61ac806d2588810b37', class: "s-localization-modal-skeleton-content" }, [...Array(4)].map(() => h("div", { class: "s-localization-modal-skeleton-item" }, h("div", { class: "s-localization-modal-skeleton-item-flex" }, h("salla-skeleton", { type: 'circle', height: '16px', width: '16px' }), h("salla-skeleton", { height: '10px', width: '100px' })), h("salla-skeleton", { height: '15px', width: '20px' })))), h("salla-skeleton", { key: '56760a616f68588b2d9de3557e9c0c7085ba1956', width: '25%', height: '15px' }), h("div", { key: 'f6e6c362b14c4d3087a1675d50e3714fe40ce89e', class: "s-localization-modal-skeleton-content" }, [...Array(4)].map(() => h("div", { class: "s-localization-modal-skeleton-item" }, h("div", { class: "s-localization-modal-skeleton-item-flex" }, h("salla-skeleton", { type: 'circle', height: '16px', width: '16px' }), h("salla-skeleton", { height: '10px', width: '100px' })), h("salla-skeleton", { height: '15px', width: '20px' })))), h("salla-skeleton", { key: '8c563227cad9ce3bc28727fe5db4fda223c0abd3', height: '40px', width: '100%' }))), !!this.hasError ?
251
+ h("salla-modal", { key: '1400a13aa9490e0f5f96259bea6bfcf3f98ee829', isLoading: true, class: "s-hidden", ref: modal => this.modal = modal, width: "xs" }, h("div", { key: 'b31041e8d245ce30f41d4221418856e886200848', slot: 'loading' }, h("div", { key: '5531d672f7c5e8fb8a6b06fa5ae5328f4efcf3fe', class: "s-localization-modal-skeleton" }, h("salla-skeleton", { key: '61b8fa69733a4e970e1f72ef5b09e773781e45ae', width: '25%', height: '15px' }), h("div", { key: '20dd0f3444f0a6e05730266bf964b74f307e9aab', class: "s-localization-modal-skeleton-content" }, [...Array(4)].map(() => h("div", { class: "s-localization-modal-skeleton-item" }, h("div", { class: "s-localization-modal-skeleton-item-flex" }, h("salla-skeleton", { type: 'circle', height: '16px', width: '16px' }), h("salla-skeleton", { height: '10px', width: '100px' })), h("salla-skeleton", { height: '15px', width: '20px' })))), h("salla-skeleton", { key: '5b8b4b760f741e0cd56c07ff341205e9ec7fe4d3', width: '25%', height: '15px' }), h("div", { key: '0a3f5dbfca2d6cd81effef5d873e03c9aef57d0b', class: "s-localization-modal-skeleton-content" }, [...Array(4)].map(() => h("div", { class: "s-localization-modal-skeleton-item" }, h("div", { class: "s-localization-modal-skeleton-item-flex" }, h("salla-skeleton", { type: 'circle', height: '16px', width: '16px' }), h("salla-skeleton", { height: '10px', width: '100px' })), h("salla-skeleton", { height: '15px', width: '20px' })))), h("salla-skeleton", { key: 'b068f327b3335b3f9154ac20f7f6de95864dde9a', height: '40px', width: '100%' }))), !!this.hasError ?
252
252
  h("salla-placeholder", { alignment: "center" }, h("span", { slot: "description" }, this.errorMessage)) :
253
253
  h("div", { class: "s-localization-modal-inner" }, this.languages.length > 1 ?
254
254
  h("div", { class: "s-localization-modal-section" }, h("label", { class: "s-localization-modal-title" }, Salla.lang.get('common.titles.language')), h("div", { class: "s-localization-modal-section-inner" }, this.languages.length < 6 ?
@@ -36,9 +36,9 @@ const SallaLoyaltyExchangeProductCard = /*@__PURE__*/ proxyCustomElement(class S
36
36
  }
37
37
  render() {
38
38
  const product = typeof this.product === 'string' ? JSON.parse(this.product) : this.product;
39
- return (h("div", { key: '82c40d26f2d49dab0e7f34e28490f7726881f4fc', class: "s-loyalty-exchange-card" }, this.hasCustomCard
39
+ return (h("div", { key: '8523e4b67448013553d333dc999a6cf74bfaaabe', class: "s-loyalty-exchange-card" }, this.hasCustomCard
40
40
  ? h("custom-salla-product-card", { product: product, hideAddBtn: true })
41
- : h("salla-product-card", { "hide-add-btn": true, product: product }), h("div", { key: '961cfd9e7e604fe202a2af0ae36368ac21171b69', class: "s-loyalty-exchange-card-btn" }, h("salla-button", { key: 'be81982e0cea2316df74070c6cf8712e6809947b', fill: "outline", width: "wide", onClick: () => this.loyaltyProductExchange.emit({ productId: product.id }) }, salla.lang.get('pages.loyalty_program.redeem_reward')))));
41
+ : h("salla-product-card", { "hide-add-btn": true, product: product }), h("div", { key: '1a3ab033f84662a6e6c24dff0bda9f6994380207', class: "s-loyalty-exchange-card-btn" }, h("salla-button", { key: 'ba2645c3636b2c39a013c3e4df0f8dbbc2bff982', fill: "outline", width: "wide", onClick: () => this.loyaltyProductExchange.emit({ productId: product.id }) }, salla.lang.get('pages.loyalty_program.redeem_reward')))));
42
42
  }
43
43
  static get style() { return sallaLoyaltyProgramCss; }
44
44
  }, [0, "salla-loyalty-exchange-product-card", {
@@ -11,13 +11,13 @@ const SallaLoyaltyHero = /*@__PURE__*/ proxyCustomElement(class SallaLoyaltyHero
11
11
  this.__registerHost();
12
12
  }
13
13
  render() {
14
- return (h(Host, { key: '8f6344543cf371ebcca43af88ae2d79978168555' }, h("section", { key: '57bad9c2a755147cfe1f01f53111092b8df891b5', class: "s-loyalty-program-hero-container" }, h("div", { key: '32f92f987b8d8ad13300fb877772b0793f0fc411', class: "s-loyalty-program-hero-background", style: {
14
+ return (h(Host, { key: '3e4a7654b7bf26354b520f2cd776294747d8a360' }, h("section", { key: 'e9e696da574b93690a5602ef8af7199f7066beae', class: "s-loyalty-program-hero-container" }, h("div", { key: '86ef6bf3c5baf8f2ed4e1f4bbda031ce76d0b8ff', class: "s-loyalty-program-hero-background", style: {
15
15
  backgroundImage: `url(${this.image})`,
16
- } }, this.image ? h("div", { class: "s-loyalty-program-hero-overlay" }) : '', h("div", { key: 'b05742b463426bca3ce8b60587d9b9af57efe86f', class: {
16
+ } }, this.image ? h("div", { class: "s-loyalty-program-hero-overlay" }) : '', h("div", { key: '8e1770b8dfb7d4e243a792ca9591acfc3de95800', class: {
17
17
  's-loyalty-program-hero-content': true,
18
18
  's-loyalty-program-hero-white': !!this.image,
19
19
  's-loyalty-program-hero-gray': !this.image,
20
- } }, h("div", { key: 'e06544e9ea8176cb99bf28ef97e4949b81172236' }, h("h1", { key: 'c598a4918c042535cf8064f83846ddd8d0b537bb', class: "s-loyalty-program-hero-title" }, this.name || h("span", { key: 'd9becc3ea9dc57cd172a694fa6c255b2bd58dee0', style: { color: 'transparent', backgroundColor: '#666', borderRadius: '12px' } }, "name")), h("p", { key: '83ccb14d430582b64092ced19546d2f938a3b21a', class: "s-loyalty-program-hero-description" }, this.description || h("span", { key: 'cb56bce19e0c5592cc4eab6523c300163c5519cd', style: { color: 'transparent', backgroundColor: '#666', borderRadius: '12px' } }, "description"))), h("slot", { key: 'bcbb41afae86d318d5cbbbd3294db80f7277edad', name: "action" }))), h("div", { key: '97a9e7f6a0f10bfeeee73c13d16e0522479eec64', class: "s-loyalty-program-hero-footer" }, h("div", { key: '363d6b94f2ae2795d956ccea62f41bdeebdce227', class: "s-loyalty-program-hero-slot-container" }, h("slot", { key: '599d85e8b59b0c4e96d26b0bac9ed58e8212756a', name: "crosspoint" }))))));
20
+ } }, h("div", { key: '569ef54a6c67d9cf17b1b98bc22d17b8c30b9a56' }, h("h1", { key: '225c7c594cb1942a56a6966ab8289a4dfb7f0d71', class: "s-loyalty-program-hero-title" }, this.name || h("span", { key: 'b5879e2ffbdceece5b74cf49195e243fa12ad7ce', style: { color: 'transparent', backgroundColor: '#666', borderRadius: '12px' } }, "name")), h("p", { key: '4f93ddbab54a688899d7a125a15e925e79604247', class: "s-loyalty-program-hero-description" }, this.description || h("span", { key: 'fcf66d6a7e2ff1b5e19bd82e183f23a87c8d9a8e', style: { color: 'transparent', backgroundColor: '#666', borderRadius: '12px' } }, "description"))), h("slot", { key: '072a07637ed4d10d16298ac39ad5868e2f1285bc', name: "action" }))), h("div", { key: '52afdf232182caab2bd18e8498ab7688cc5b8356', class: "s-loyalty-program-hero-footer" }, h("div", { key: '57bf7ce60ee179abb33eed320f5911e62b468581', class: "s-loyalty-program-hero-slot-container" }, h("slot", { key: 'e78a53828eb424afef9502c66625d35c9b844af7', name: "crosspoint" }))))));
21
21
  }
22
22
  static get style() { return sallaLoyaltyProgramCss; }
23
23
  }, [4, "salla-loyalty-hero", {