@salla.sa/twilight-components 2.14.564 → 2.14.565

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 (473) hide show
  1. package/dist/cjs/{apple-pay-order-options-DVyeUqBh.js → apple-pay-order-options-B036Wu4O.js} +15 -6
  2. package/dist/cjs/{filepond-BNOYd8EE.js → filepond-BOtBFq7k.js} +1 -1
  3. package/dist/cjs/{filepond-plugin-file-poster-Bvm29Y0w.js → filepond-plugin-file-poster-DWqXLSRO.js} +1 -1
  4. package/dist/cjs/{filepond-plugin-file-validate-size-nYKqDcSE.js → filepond-plugin-file-validate-size-TkDVc9ih.js} +1 -1
  5. package/dist/cjs/{filepond-plugin-file-validate-type-C-YYy0Df.js → filepond-plugin-file-validate-type-B1TuLFJS.js} +1 -1
  6. package/dist/cjs/{filepond-plugin-image-edit-B72V6d0t.js → filepond-plugin-image-edit-BtLH803a.js} +1 -1
  7. package/dist/cjs/{filepond-plugin-image-exif-orientation-BH37qNAY.js → filepond-plugin-image-exif-orientation-BJvccc13.js} +1 -1
  8. package/dist/cjs/{filepond-plugin-image-preview-BIZNCf2q.js → filepond-plugin-image-preview-DPgKIIC8.js} +1 -1
  9. package/dist/cjs/{index-Di0mG8nk.js → index-BZ_aKmCD.js} +6 -6
  10. package/dist/cjs/{intlTelInput-DQ4Z6sxG.js → intlTelInput-CKLiJAA1.js} +1 -1
  11. package/dist/cjs/loader.cjs.js +2 -2
  12. package/dist/cjs/salla-accordion-body_2.cjs.entry.js +4 -4
  13. package/dist/cjs/salla-accordion_6.cjs.entry.js +3 -3
  14. package/dist/cjs/salla-add-product-button_5.cjs.entry.js +98 -18
  15. package/dist/cjs/salla-advertisement.cjs.entry.js +1 -1
  16. package/dist/cjs/salla-alert_2.cjs.entry.js +4 -4
  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 +18 -18
  21. package/dist/cjs/salla-badge.cjs.entry.js +2 -2
  22. package/dist/cjs/salla-basket-gap.cjs.entry.js +1 -1
  23. package/dist/cjs/salla-bullet-delivery_3.cjs.entry.js +46 -18
  24. package/dist/cjs/salla-cart-coupons.cjs.entry.js +3 -3
  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_2.cjs.entry.js +231 -42
  34. package/dist/cjs/salla-custom-fields.cjs.entry.js +1 -1
  35. package/dist/cjs/salla-delivery-promise.cjs.entry.js +1 -1
  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-gifting.cjs.entry.js +4 -4
  41. package/dist/cjs/salla-hook.cjs.entry.js +2 -2
  42. package/dist/cjs/salla-infinite-scroll.cjs.entry.js +1 -1
  43. package/dist/cjs/salla-installment.cjs.entry.js +1 -1
  44. package/dist/cjs/salla-list-tile.cjs.entry.js +2 -2
  45. package/dist/cjs/salla-localization-modal.cjs.entry.js +2 -2
  46. package/dist/cjs/salla-login-modal.cjs.entry.js +1 -1
  47. package/dist/cjs/salla-loyalty-banner_10.cjs.entry.js +15 -15
  48. package/dist/cjs/salla-loyalty-exchange-product-card.cjs.entry.js +3 -3
  49. package/dist/cjs/salla-loyalty-points-banner.cjs.entry.js +1 -1
  50. package/dist/cjs/salla-loyalty-points-history.cjs.entry.js +2 -2
  51. package/dist/cjs/salla-loyalty-prize-item.cjs.entry.js +2 -2
  52. package/dist/cjs/salla-loyalty.cjs.entry.js +1 -1
  53. package/dist/cjs/salla-maintenance-alert.cjs.entry.js +2 -2
  54. package/dist/cjs/salla-map_3.cjs.entry.js +4 -4
  55. package/dist/cjs/salla-menu.cjs.entry.js +1 -1
  56. package/dist/cjs/salla-metadata.cjs.entry.js +1 -1
  57. package/dist/cjs/salla-multiple-bundle-product-cart_2.cjs.entry.js +4 -4
  58. package/dist/cjs/salla-multiple-bundle-product-options-modal_2.cjs.entry.js +6 -6
  59. package/dist/cjs/salla-multiple-bundle-product.cjs.entry.js +2 -2
  60. package/dist/cjs/salla-next-order-coupon.cjs.entry.js +1 -1
  61. package/dist/cjs/salla-notification-item_2.cjs.entry.js +2 -2
  62. package/dist/cjs/salla-offer-modal.cjs.entry.js +2 -2
  63. package/dist/cjs/salla-offer.cjs.entry.js +1 -1
  64. package/dist/cjs/salla-order-branch.cjs.entry.js +1 -1
  65. package/dist/cjs/salla-order-cancel.cjs.entry.js +1 -1
  66. package/dist/cjs/salla-order-details-multiple-bundle-product.cjs.entry.js +1 -1
  67. package/dist/cjs/salla-order-details-options.cjs.entry.js +1 -1
  68. package/dist/cjs/salla-order-details.cjs.entry.js +2 -2
  69. package/dist/cjs/salla-order-edit-item.cjs.entry.js +1 -1
  70. package/dist/cjs/salla-order-edit-product-card.cjs.entry.js +2 -2
  71. package/dist/cjs/salla-order-edit.cjs.entry.js +1 -1
  72. package/dist/cjs/salla-order-shipments.cjs.entry.js +1 -1
  73. package/dist/cjs/salla-order-summary.cjs.entry.js +2 -2
  74. package/dist/cjs/salla-order-totals-card.cjs.entry.js +1 -1
  75. package/dist/cjs/salla-orders.cjs.entry.js +1 -1
  76. package/dist/cjs/salla-payments.cjs.entry.js +3 -3
  77. package/dist/cjs/salla-placeholder.cjs.entry.js +2 -2
  78. package/dist/cjs/salla-price-range.cjs.entry.js +3 -3
  79. package/dist/cjs/salla-product-card-embed.cjs.entry.js +2 -2
  80. package/dist/cjs/salla-product-card.cjs.entry.js +6 -6
  81. package/dist/cjs/salla-product-size-guide.cjs.entry.js +3 -3
  82. package/dist/cjs/salla-products-list.cjs.entry.js +1 -1
  83. package/dist/cjs/salla-products-slider.cjs.entry.js +1 -1
  84. package/dist/cjs/salla-quick-order.cjs.entry.js +1 -1
  85. package/dist/cjs/salla-rating-modal-v2.cjs.entry.js +1 -1
  86. package/dist/cjs/salla-rating-modal.cjs.entry.js +1 -1
  87. package/dist/cjs/salla-review-factors-tags.cjs.entry.js +2 -2
  88. package/dist/cjs/salla-review-order-item.cjs.entry.js +1 -1
  89. package/dist/cjs/salla-scopes.cjs.entry.js +1 -1
  90. package/dist/cjs/salla-search.cjs.entry.js +1 -1
  91. package/dist/cjs/salla-skeleton.cjs.entry.js +2 -2
  92. package/dist/cjs/salla-social-share.cjs.entry.js +2 -2
  93. package/dist/cjs/salla-social.cjs.entry.js +2 -2
  94. package/dist/cjs/salla-tab-content_3.cjs.entry.js +4 -4
  95. package/dist/cjs/salla-tiered-offer.cjs.entry.js +1 -1
  96. package/dist/cjs/salla-tooltip.cjs.entry.js +2 -2
  97. package/dist/cjs/salla-trust-badges.cjs.entry.js +1 -1
  98. package/dist/cjs/salla-user-menu.cjs.entry.js +1 -1
  99. package/dist/cjs/salla-user-profile.cjs.entry.js +1 -1
  100. package/dist/cjs/salla-user-settings.cjs.entry.js +2 -2
  101. package/dist/cjs/salla-verify.cjs.entry.js +1 -1
  102. package/dist/cjs/salla-wallet.cjs.entry.js +1 -1
  103. package/dist/cjs/salla-wishlist-actions.cjs.entry.js +2 -2
  104. package/dist/cjs/twilight.cjs.js +2 -2
  105. package/dist/cjs/{vanilla-picker-D0dyZrxD.js → vanilla-picker-C7y_2HXu.js} +1 -1
  106. package/dist/collection/components/salla-accordion/salla-accordion-body.js +1 -1
  107. package/dist/collection/components/salla-accordion/salla-accordion-head.js +2 -2
  108. package/dist/collection/components/salla-accordion/salla-accordion.js +1 -1
  109. package/dist/collection/components/salla-add-product-button/salla-add-product-button.js +2 -2
  110. package/dist/collection/components/salla-alert/salla-alert.js +1 -1
  111. package/dist/collection/components/salla-badge/salla-badge.js +1 -1
  112. package/dist/collection/components/salla-booking-field/salla-booking-field.js +1 -1
  113. package/dist/collection/components/salla-bottom-alert/salla-bottom-alert.js +2 -2
  114. package/dist/collection/components/salla-bullet-delivery/salla-bullet-delivery.css +7 -0
  115. package/dist/collection/components/salla-bullet-delivery/salla-bullet-delivery.js +40 -12
  116. package/dist/collection/components/salla-cart-coupons/salla-cart-coupons.js +2 -2
  117. package/dist/collection/components/salla-cart-summary/salla-cart-summary.js +1 -1
  118. package/dist/collection/components/salla-color-picker/salla-color-picker.js +1 -1
  119. package/dist/collection/components/salla-comment-form/salla-comment-form.js +1 -1
  120. package/dist/collection/components/salla-conditional-fields/salla-conditional-fields.js +1 -1
  121. package/dist/collection/components/salla-count-down/salla-count-down.js +1 -1
  122. package/dist/collection/components/salla-datetime-picker/salla-datetime-picker.js +1 -1
  123. package/dist/collection/components/salla-file-upload/salla-file-upload.js +2 -2
  124. package/dist/collection/components/salla-filters/salla-filters.js +1 -1
  125. package/dist/collection/components/salla-filters-widget/salla-filters-widget.js +2 -2
  126. package/dist/collection/components/salla-gifting/salla-gifting.js +2 -2
  127. package/dist/collection/components/salla-hook/salla-hook.js +1 -1
  128. package/dist/collection/components/salla-list-tile/salla-list-tile.js +1 -1
  129. package/dist/collection/components/salla-loading/salla-loading.js +1 -1
  130. package/dist/collection/components/salla-localization-modal/salla-localization-modal.js +1 -1
  131. package/dist/collection/components/salla-loyalty/salla-loyalty-prize-item.js +1 -1
  132. package/dist/collection/components/salla-loyalty-points-history/salla-loyalty-points-history.js +1 -1
  133. package/dist/collection/components/salla-loyalty-program/salla-loyalty-exchange-product-card.js +2 -2
  134. package/dist/collection/components/salla-loyalty-program/salla-loyalty-hero.js +3 -3
  135. package/dist/collection/components/salla-loyalty-program/salla-loyalty-point.js +4 -4
  136. package/dist/collection/components/salla-loyalty-program/salla-loyalty-reward.js +2 -2
  137. package/dist/collection/components/salla-loyalty-program/salla-reward-card.js +1 -1
  138. package/dist/collection/components/salla-loyalty-program/salla-reward-details.js +3 -3
  139. package/dist/collection/components/salla-loyalty-program/salla-reward-exchange.js +1 -1
  140. package/dist/collection/components/salla-maintenance-alert/salla-maintenance-alert.js +1 -1
  141. package/dist/collection/components/salla-map/salla-map.js +3 -3
  142. package/dist/collection/components/salla-multiple-bundle-product/components/salla-multiple-bundle-product-cart.js +1 -1
  143. package/dist/collection/components/salla-multiple-bundle-product/components/salla-multiple-bundle-product-details.js +2 -2
  144. package/dist/collection/components/salla-multiple-bundle-product/components/salla-multiple-bundle-product-options-modal.js +4 -4
  145. package/dist/collection/components/salla-multiple-bundle-product/components/salla-multiple-bundle-product-slider.js +1 -1
  146. package/dist/collection/components/salla-multiple-bundle-product/salla-multiple-bundle-product.js +1 -1
  147. package/dist/collection/components/salla-notifications/salla-notification-item.js +1 -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-options-modal/apple-pay-order-options.js +15 -6
  152. package/dist/collection/components/salla-order-options-modal/free-product-payload.js +49 -0
  153. package/dist/collection/components/salla-order-options-modal/order-options-gate.js +33 -8
  154. package/dist/collection/components/salla-order-options-modal/salla-order-options-modal.css +192 -15
  155. package/dist/collection/components/salla-order-options-modal/salla-order-options-modal.js +260 -48
  156. package/dist/collection/components/salla-order-summary/salla-order-summary.js +1 -1
  157. package/dist/collection/components/salla-payments/salla-payments.js +2 -2
  158. package/dist/collection/components/salla-placeholder/salla-placeholder.js +1 -1
  159. package/dist/collection/components/salla-price-range/salla-price-range.js +2 -2
  160. package/dist/collection/components/salla-product-availability/salla-product-availability.js +1 -1
  161. package/dist/collection/components/salla-product-card/salla-product-card.js +5 -5
  162. package/dist/collection/components/salla-product-card-embed/salla-product-card-embed.js +1 -1
  163. package/dist/collection/components/salla-product-size-guide/salla-product-size-guide.js +2 -2
  164. package/dist/collection/components/salla-quantity-input/salla-quantity-input.js +1 -1
  165. package/dist/collection/components/salla-quick-buy/salla-quick-buy.js +15 -5
  166. package/dist/collection/components/salla-review-card/salla-review-card.js +1 -1
  167. package/dist/collection/components/salla-review-factors-tags/salla-review-factors-tags.js +1 -1
  168. package/dist/collection/components/salla-reviews-page/salla-reviews-page.js +1 -1
  169. package/dist/collection/components/salla-searchable-dropdown/salla-searchable-dropdown.js +4 -4
  170. package/dist/collection/components/salla-skeleton/salla-skeleton.js +1 -1
  171. package/dist/collection/components/salla-social/salla-social.js +1 -1
  172. package/dist/collection/components/salla-social-share/salla-social-share.js +1 -1
  173. package/dist/collection/components/salla-tabs/salla-tab-content.js +1 -1
  174. package/dist/collection/components/salla-tabs/salla-tab-header.js +1 -1
  175. package/dist/collection/components/salla-tabs/salla-tabs.js +1 -1
  176. package/dist/collection/components/salla-tel-input/salla-tel-input.js +1 -1
  177. package/dist/collection/components/salla-tooltip/salla-tooltip.js +1 -1
  178. package/dist/collection/components/salla-user-settings/salla-user-settings.js +1 -1
  179. package/dist/collection/components/salla-wishlist-actions/salla-wishlist-actions.js +1 -1
  180. package/dist/components/apple-pay-order-options.js +15 -6
  181. package/dist/components/index.js +2 -2
  182. package/dist/components/salla-accordion-body2.js +1 -1
  183. package/dist/components/salla-accordion-head2.js +2 -2
  184. package/dist/components/salla-accordion2.js +1 -1
  185. package/dist/components/salla-add-product-button2.js +35 -11
  186. package/dist/components/salla-alert.js +1 -1
  187. package/dist/components/salla-badge2.js +1 -1
  188. package/dist/components/salla-booking-field2.js +1 -1
  189. package/dist/components/salla-bottom-alert.js +2 -2
  190. package/dist/components/salla-bullet-delivery.js +41 -13
  191. package/dist/components/salla-cart-coupons.js +2 -2
  192. package/dist/components/salla-cart-summary.js +1 -1
  193. package/dist/components/salla-color-picker2.js +1 -1
  194. package/dist/components/salla-comment-form2.js +1 -1
  195. package/dist/components/salla-conditional-fields2.js +1 -1
  196. package/dist/components/salla-count-down2.js +1 -1
  197. package/dist/components/salla-datetime-picker2.js +1 -1
  198. package/dist/components/salla-file-upload2.js +2 -2
  199. package/dist/components/salla-filters-widget2.js +2 -2
  200. package/dist/components/salla-filters.js +1 -1
  201. package/dist/components/salla-gifting.js +2 -2
  202. package/dist/components/salla-hook.js +1 -1
  203. package/dist/components/salla-list-tile2.js +1 -1
  204. package/dist/components/salla-loading2.js +1 -1
  205. package/dist/components/salla-localization-modal.js +1 -1
  206. package/dist/components/salla-loyalty-exchange-product-card2.js +2 -2
  207. package/dist/components/salla-loyalty-hero2.js +3 -3
  208. package/dist/components/salla-loyalty-point2.js +4 -4
  209. package/dist/components/salla-loyalty-points-history.js +1 -1
  210. package/dist/components/salla-loyalty-prize-item.js +1 -1
  211. package/dist/components/salla-loyalty-reward.js +2 -2
  212. package/dist/components/salla-maintenance-alert.js +1 -1
  213. package/dist/components/salla-map2.js +3 -3
  214. package/dist/components/salla-multiple-bundle-product-cart2.js +1 -1
  215. package/dist/components/salla-multiple-bundle-product-details2.js +2 -2
  216. package/dist/components/salla-multiple-bundle-product-options-modal2.js +4 -4
  217. package/dist/components/salla-multiple-bundle-product-slider2.js +1 -1
  218. package/dist/components/salla-multiple-bundle-product.js +1 -1
  219. package/dist/components/salla-notification-item2.js +1 -1
  220. package/dist/components/salla-offer-modal.js +1 -1
  221. package/dist/components/salla-order-details.js +1 -1
  222. package/dist/components/salla-order-edit-product-card.js +1 -1
  223. package/dist/components/salla-order-options-modal2.js +234 -40
  224. package/dist/components/salla-order-summary.js +1 -1
  225. package/dist/components/salla-payments.js +2 -2
  226. package/dist/components/salla-placeholder2.js +1 -1
  227. package/dist/components/salla-price-range2.js +2 -2
  228. package/dist/components/salla-product-availability2.js +1 -1
  229. package/dist/components/salla-product-card-embed.js +1 -1
  230. package/dist/components/salla-product-card2.js +5 -5
  231. package/dist/components/salla-product-size-guide.js +2 -2
  232. package/dist/components/salla-quantity-input2.js +1 -1
  233. package/dist/components/salla-quick-buy2.js +62 -6
  234. package/dist/components/salla-review-card2.js +1 -1
  235. package/dist/components/salla-review-factors-tags2.js +1 -1
  236. package/dist/components/salla-reviews-page.js +1 -1
  237. package/dist/components/salla-reward-card2.js +1 -1
  238. package/dist/components/salla-reward-details2.js +3 -3
  239. package/dist/components/salla-reward-exchange2.js +1 -1
  240. package/dist/components/salla-searchable-dropdown2.js +4 -4
  241. package/dist/components/salla-skeleton2.js +1 -1
  242. package/dist/components/salla-social-share2.js +1 -1
  243. package/dist/components/salla-social.js +1 -1
  244. package/dist/components/salla-tab-content2.js +1 -1
  245. package/dist/components/salla-tab-header2.js +1 -1
  246. package/dist/components/salla-tabs2.js +1 -1
  247. package/dist/components/salla-tel-input2.js +1 -1
  248. package/dist/components/salla-tooltip2.js +1 -1
  249. package/dist/components/salla-user-settings.js +1 -1
  250. package/dist/components/salla-wishlist-actions.js +1 -1
  251. package/dist/esm/{apple-pay-order-options-Bg2HuLRr.js → apple-pay-order-options-s0kn7yr8.js} +15 -6
  252. package/dist/esm/{filepond-DGYIRZjn.js → filepond-UQa5G279.js} +1 -1
  253. package/dist/esm/{filepond-plugin-file-poster-que4aL4t.js → filepond-plugin-file-poster-DuTq7hGp.js} +1 -1
  254. package/dist/esm/{filepond-plugin-file-validate-size-DUa2Ha9F.js → filepond-plugin-file-validate-size-CmrW5aIv.js} +1 -1
  255. package/dist/esm/{filepond-plugin-file-validate-type-CsE-FZ5e.js → filepond-plugin-file-validate-type-C4wrsR8y.js} +1 -1
  256. package/dist/esm/{filepond-plugin-image-edit-CCEkPzwH.js → filepond-plugin-image-edit-CFUxRm-l.js} +1 -1
  257. package/dist/esm/{filepond-plugin-image-exif-orientation-C6ooGIlL.js → filepond-plugin-image-exif-orientation-eHT2qXpP.js} +1 -1
  258. package/dist/esm/{filepond-plugin-image-preview-C1ziopep.js → filepond-plugin-image-preview-CX0Er_bj.js} +1 -1
  259. package/dist/esm/{index-DXda9rxP.js → index-BC0OSCdw.js} +6 -6
  260. package/dist/esm/{intlTelInput-DhSUIkQX.js → intlTelInput-DnPEdiN8.js} +1 -1
  261. package/dist/esm/loader.js +3 -3
  262. package/dist/esm/salla-accordion-body_2.entry.js +4 -4
  263. package/dist/esm/salla-accordion_6.entry.js +3 -3
  264. package/dist/esm/salla-add-product-button_5.entry.js +98 -18
  265. package/dist/esm/salla-advertisement.entry.js +1 -1
  266. package/dist/esm/salla-alert_2.entry.js +4 -4
  267. package/dist/esm/salla-app-install-alert.entry.js +1 -1
  268. package/dist/esm/salla-applied-filters.entry.js +1 -1
  269. package/dist/esm/salla-apps-icons.entry.js +1 -1
  270. package/dist/esm/salla-attachment-view_9.entry.js +18 -18
  271. package/dist/esm/salla-badge.entry.js +2 -2
  272. package/dist/esm/salla-basket-gap.entry.js +1 -1
  273. package/dist/esm/salla-bullet-delivery_3.entry.js +46 -18
  274. package/dist/esm/salla-cart-coupons.entry.js +3 -3
  275. package/dist/esm/salla-cart-item-offers_2.entry.js +2 -2
  276. package/dist/esm/salla-cart-summary-card.entry.js +1 -1
  277. package/dist/esm/salla-cashback-banner.entry.js +1 -1
  278. package/dist/esm/salla-comment-factors.entry.js +1 -1
  279. package/dist/esm/salla-comment-form_9.entry.js +4 -4
  280. package/dist/esm/salla-conditional-offer.entry.js +1 -1
  281. package/dist/esm/salla-contacts.entry.js +1 -1
  282. package/dist/esm/salla-cookies-bar.entry.js +1 -1
  283. package/dist/esm/salla-count-down_2.entry.js +231 -42
  284. package/dist/esm/salla-custom-fields.entry.js +1 -1
  285. package/dist/esm/salla-delivery-promise.entry.js +1 -1
  286. package/dist/esm/salla-edit-order-button.entry.js +1 -1
  287. package/dist/esm/salla-filters-widget.entry.js +3 -3
  288. package/dist/esm/salla-filters.entry.js +2 -2
  289. package/dist/esm/salla-fulfillment-methods.entry.js +1 -1
  290. package/dist/esm/salla-gifting.entry.js +4 -4
  291. package/dist/esm/salla-hook.entry.js +2 -2
  292. package/dist/esm/salla-infinite-scroll.entry.js +1 -1
  293. package/dist/esm/salla-installment.entry.js +1 -1
  294. package/dist/esm/salla-list-tile.entry.js +2 -2
  295. package/dist/esm/salla-localization-modal.entry.js +2 -2
  296. package/dist/esm/salla-login-modal.entry.js +1 -1
  297. package/dist/esm/salla-loyalty-banner_10.entry.js +15 -15
  298. package/dist/esm/salla-loyalty-exchange-product-card.entry.js +3 -3
  299. package/dist/esm/salla-loyalty-points-banner.entry.js +1 -1
  300. package/dist/esm/salla-loyalty-points-history.entry.js +2 -2
  301. package/dist/esm/salla-loyalty-prize-item.entry.js +2 -2
  302. package/dist/esm/salla-loyalty.entry.js +1 -1
  303. package/dist/esm/salla-maintenance-alert.entry.js +2 -2
  304. package/dist/esm/salla-map_3.entry.js +4 -4
  305. package/dist/esm/salla-menu.entry.js +1 -1
  306. package/dist/esm/salla-metadata.entry.js +1 -1
  307. package/dist/esm/salla-multiple-bundle-product-cart_2.entry.js +4 -4
  308. package/dist/esm/salla-multiple-bundle-product-options-modal_2.entry.js +6 -6
  309. package/dist/esm/salla-multiple-bundle-product.entry.js +2 -2
  310. package/dist/esm/salla-next-order-coupon.entry.js +1 -1
  311. package/dist/esm/salla-notification-item_2.entry.js +2 -2
  312. package/dist/esm/salla-offer-modal.entry.js +2 -2
  313. package/dist/esm/salla-offer.entry.js +1 -1
  314. package/dist/esm/salla-order-branch.entry.js +1 -1
  315. package/dist/esm/salla-order-cancel.entry.js +1 -1
  316. package/dist/esm/salla-order-details-multiple-bundle-product.entry.js +1 -1
  317. package/dist/esm/salla-order-details-options.entry.js +1 -1
  318. package/dist/esm/salla-order-details.entry.js +2 -2
  319. package/dist/esm/salla-order-edit-item.entry.js +1 -1
  320. package/dist/esm/salla-order-edit-product-card.entry.js +2 -2
  321. package/dist/esm/salla-order-edit.entry.js +1 -1
  322. package/dist/esm/salla-order-shipments.entry.js +1 -1
  323. package/dist/esm/salla-order-summary.entry.js +2 -2
  324. package/dist/esm/salla-order-totals-card.entry.js +1 -1
  325. package/dist/esm/salla-orders.entry.js +1 -1
  326. package/dist/esm/salla-payments.entry.js +3 -3
  327. package/dist/esm/salla-placeholder.entry.js +2 -2
  328. package/dist/esm/salla-price-range.entry.js +3 -3
  329. package/dist/esm/salla-product-card-embed.entry.js +2 -2
  330. package/dist/esm/salla-product-card.entry.js +6 -6
  331. package/dist/esm/salla-product-size-guide.entry.js +3 -3
  332. package/dist/esm/salla-products-list.entry.js +1 -1
  333. package/dist/esm/salla-products-slider.entry.js +1 -1
  334. package/dist/esm/salla-quick-order.entry.js +1 -1
  335. package/dist/esm/salla-rating-modal-v2.entry.js +1 -1
  336. package/dist/esm/salla-rating-modal.entry.js +1 -1
  337. package/dist/esm/salla-review-factors-tags.entry.js +2 -2
  338. package/dist/esm/salla-review-order-item.entry.js +1 -1
  339. package/dist/esm/salla-scopes.entry.js +1 -1
  340. package/dist/esm/salla-search.entry.js +1 -1
  341. package/dist/esm/salla-skeleton.entry.js +2 -2
  342. package/dist/esm/salla-social-share.entry.js +2 -2
  343. package/dist/esm/salla-social.entry.js +2 -2
  344. package/dist/esm/salla-tab-content_3.entry.js +4 -4
  345. package/dist/esm/salla-tiered-offer.entry.js +1 -1
  346. package/dist/esm/salla-tooltip.entry.js +2 -2
  347. package/dist/esm/salla-trust-badges.entry.js +1 -1
  348. package/dist/esm/salla-user-menu.entry.js +1 -1
  349. package/dist/esm/salla-user-profile.entry.js +1 -1
  350. package/dist/esm/salla-user-settings.entry.js +2 -2
  351. package/dist/esm/salla-verify.entry.js +1 -1
  352. package/dist/esm/salla-wallet.entry.js +1 -1
  353. package/dist/esm/salla-wishlist-actions.entry.js +2 -2
  354. package/dist/esm/twilight.js +3 -3
  355. package/dist/esm/{vanilla-picker-udlectbY.js → vanilla-picker-BCMDEwEz.js} +1 -1
  356. package/dist/twilight/{p-27bd4595.entry.js → p-00ade9ab.entry.js} +1 -1
  357. package/dist/twilight/{p-d5569734.entry.js → p-02b4c53f.entry.js} +1 -1
  358. package/dist/twilight/{p-c110b53d.entry.js → p-040a60fa.entry.js} +1 -1
  359. package/dist/twilight/{p-ffad3361.entry.js → p-077bba56.entry.js} +1 -1
  360. package/dist/twilight/p-08283d58.entry.js +4 -0
  361. package/dist/twilight/{p-35d7d846.entry.js → p-092e3574.entry.js} +1 -1
  362. package/dist/twilight/{p-7990ce68.entry.js → p-0ce7ec43.entry.js} +1 -1
  363. package/dist/twilight/{p-e92f48e4.entry.js → p-0cff28ab.entry.js} +1 -1
  364. package/dist/twilight/{p-51d05d98.entry.js → p-128c99f8.entry.js} +1 -1
  365. package/dist/twilight/{p-95d0541d.entry.js → p-12d5856d.entry.js} +1 -1
  366. package/dist/twilight/{p-14f8cac1.entry.js → p-1678e509.entry.js} +1 -1
  367. package/dist/twilight/{p-6d73e7a6.entry.js → p-1b61fdb7.entry.js} +1 -1
  368. package/dist/twilight/{p-bc18aeb4.entry.js → p-1c5df94c.entry.js} +1 -1
  369. package/dist/twilight/{p-d1a4f83d.entry.js → p-1e3f96f6.entry.js} +1 -1
  370. package/dist/twilight/{p-f3282946.entry.js → p-217e8d6b.entry.js} +1 -1
  371. package/dist/twilight/{p-d1b36139.entry.js → p-22454aab.entry.js} +1 -1
  372. package/dist/twilight/{p-a369942e.entry.js → p-28cadf49.entry.js} +1 -1
  373. package/dist/twilight/{p-09ae59b1.entry.js → p-29683d1e.entry.js} +1 -1
  374. package/dist/twilight/{p-CCYJtFjS.js → p-2LY0VWl8.js} +1 -1
  375. package/dist/twilight/{p-b2599a06.entry.js → p-2ade195d.entry.js} +1 -1
  376. package/dist/twilight/{p-a9f688de.entry.js → p-2c3bd065.entry.js} +1 -1
  377. package/dist/twilight/{p-b383c367.entry.js → p-2ddf12c9.entry.js} +1 -1
  378. package/dist/twilight/{p-0c831653.entry.js → p-2e68382e.entry.js} +1 -1
  379. package/dist/twilight/{p-aced78e3.entry.js → p-39df1337.entry.js} +1 -1
  380. package/dist/twilight/{p-60e22c9f.entry.js → p-3cae6c0b.entry.js} +1 -1
  381. package/dist/twilight/{p-8a504c71.entry.js → p-3ccaf56b.entry.js} +1 -1
  382. package/dist/twilight/{p-3b4177b3.entry.js → p-477fbe60.entry.js} +1 -1
  383. package/dist/twilight/{p-3e5f2344.entry.js → p-4e53c800.entry.js} +1 -1
  384. package/dist/twilight/{p-0ae6220d.entry.js → p-4ec4c29d.entry.js} +1 -1
  385. package/dist/twilight/p-4f9e25a2.entry.js +4 -0
  386. package/dist/twilight/{p-47e2e8e9.entry.js → p-4fe6b957.entry.js} +1 -1
  387. package/dist/twilight/{p-c4d21bf1.entry.js → p-512dffba.entry.js} +1 -1
  388. package/dist/twilight/{p-c99455cb.entry.js → p-5258eb5b.entry.js} +1 -1
  389. package/dist/twilight/{p-4187ecdc.entry.js → p-52abc216.entry.js} +1 -1
  390. package/dist/twilight/{p-c98741e6.entry.js → p-55c0c4d5.entry.js} +1 -1
  391. package/dist/twilight/{p-cd9d31d0.entry.js → p-55ecefaf.entry.js} +1 -1
  392. package/dist/twilight/{p-f8aee2bb.entry.js → p-5912c685.entry.js} +1 -1
  393. package/dist/twilight/{p-58861477.entry.js → p-596695cb.entry.js} +1 -1
  394. package/dist/twilight/{p-3a9d92aa.entry.js → p-59a7515b.entry.js} +1 -1
  395. package/dist/twilight/{p-a0320551.entry.js → p-5aff8807.entry.js} +1 -1
  396. package/dist/twilight/p-5de36f11.entry.js +4 -0
  397. package/dist/twilight/{p-759da507.entry.js → p-60f4c8b0.entry.js} +1 -1
  398. package/dist/twilight/{p-13435c91.entry.js → p-66460e90.entry.js} +1 -1
  399. package/dist/twilight/{p-96e50b68.entry.js → p-6ef17286.entry.js} +1 -1
  400. package/dist/twilight/{p-5dc298b5.entry.js → p-6fe42bfe.entry.js} +1 -1
  401. package/dist/twilight/{p-09eb8f1c.entry.js → p-717258c4.entry.js} +1 -1
  402. package/dist/twilight/{p-8d8a30d2.entry.js → p-73795f51.entry.js} +1 -1
  403. package/dist/twilight/{p-aab0f1d2.entry.js → p-77540bba.entry.js} +1 -1
  404. package/dist/twilight/{p-6329be65.entry.js → p-7785635d.entry.js} +1 -1
  405. package/dist/twilight/{p-2b8c9426.entry.js → p-77a708f4.entry.js} +1 -1
  406. package/dist/twilight/{p-725e95f8.entry.js → p-7a7b9917.entry.js} +1 -1
  407. package/dist/twilight/{p-afbd2ee2.entry.js → p-810fca9f.entry.js} +1 -1
  408. package/dist/twilight/{p-383a27f9.entry.js → p-84aa1f0f.entry.js} +1 -1
  409. package/dist/twilight/{p-7aecccea.entry.js → p-85df7952.entry.js} +1 -1
  410. package/dist/twilight/{p-18ad8678.entry.js → p-8628e5d7.entry.js} +1 -1
  411. package/dist/twilight/{p-a5dd48f9.entry.js → p-87638789.entry.js} +1 -1
  412. package/dist/twilight/{p-2cff009d.entry.js → p-8872ae84.entry.js} +1 -1
  413. package/dist/twilight/p-8b6d7dbc.entry.js +4 -0
  414. package/dist/twilight/{p-bd7a187b.entry.js → p-8bd738dd.entry.js} +1 -1
  415. package/dist/twilight/{p-e03fb8ac.entry.js → p-8e3ceb05.entry.js} +1 -1
  416. package/dist/twilight/{p-5b167270.entry.js → p-8ea86806.entry.js} +1 -1
  417. package/dist/twilight/{p-9c9a704d.entry.js → p-913f0e67.entry.js} +1 -1
  418. package/dist/twilight/{p-4b2378e8.entry.js → p-928bdd13.entry.js} +1 -1
  419. package/dist/twilight/{p-ab5584df.entry.js → p-94bab301.entry.js} +1 -1
  420. package/dist/twilight/{p-a99c5099.entry.js → p-9549fe7d.entry.js} +1 -1
  421. package/dist/twilight/{p-OiLV6a-C.js → p-B4qhqpMO.js} +1 -1
  422. package/dist/twilight/{p-DXda9rxP.js → p-BC0OSCdw.js} +1 -1
  423. package/dist/twilight/{p-Bye5nKth.js → p-BQ2uPuvt.js} +1 -1
  424. package/dist/twilight/{p-DAbrkC6H.js → p-BqsrYTv0.js} +1 -1
  425. package/dist/twilight/{p-iokZGmGz.js → p-CJ9itb04.js} +1 -1
  426. package/dist/twilight/{p-C83L8L5O.js → p-CbE9Aa2n.js} +1 -1
  427. package/dist/twilight/{p-DszU5yJL.js → p-Cfn7Ybxi.js} +1 -1
  428. package/dist/twilight/{p-C3FesFcg.js → p-DdkjVgyM.js} +1 -1
  429. package/dist/twilight/{p-CZemiB_f.js → p-Dz1PaIS6.js} +1 -1
  430. package/dist/twilight/{p-bab0d2fe.entry.js → p-a4bea3d2.entry.js} +1 -1
  431. package/dist/twilight/{p-041823c4.entry.js → p-a72038c1.entry.js} +1 -1
  432. package/dist/twilight/{p-de5faf0c.entry.js → p-a7340ba8.entry.js} +1 -1
  433. package/dist/twilight/{p-885e3acd.entry.js → p-a94e4fc8.entry.js} +1 -1
  434. package/dist/twilight/{p-c0d863ac.entry.js → p-ad92b347.entry.js} +1 -1
  435. package/dist/twilight/{p-fa924a5c.entry.js → p-b65a15cb.entry.js} +1 -1
  436. package/dist/twilight/p-b92eb535.entry.js +4 -0
  437. package/dist/twilight/{p-493d0982.entry.js → p-bb8f6167.entry.js} +1 -1
  438. package/dist/twilight/{p-dfb539d9.entry.js → p-bbfd1991.entry.js} +1 -1
  439. package/dist/twilight/{p-9357db15.entry.js → p-beb9023e.entry.js} +1 -1
  440. package/dist/twilight/{p-cc9c88ba.entry.js → p-ca540632.entry.js} +1 -1
  441. package/dist/twilight/{p-50b7f8c5.entry.js → p-d32ba4d6.entry.js} +1 -1
  442. package/dist/twilight/{p-77d328bb.entry.js → p-dbe87ffe.entry.js} +1 -1
  443. package/dist/twilight/{p-1e69337d.entry.js → p-dd4e8765.entry.js} +1 -1
  444. package/dist/twilight/{p-72268480.entry.js → p-de3cd06e.entry.js} +1 -1
  445. package/dist/twilight/{p-6351de41.entry.js → p-e0600f10.entry.js} +1 -1
  446. package/dist/twilight/{p-bd138449.entry.js → p-e0a3937a.entry.js} +1 -1
  447. package/dist/twilight/{p-490d5cf2.entry.js → p-e5ae8c3b.entry.js} +1 -1
  448. package/dist/twilight/{p-ca2cb7e6.entry.js → p-e67ba69c.entry.js} +1 -1
  449. package/dist/twilight/p-e77d4dbc.entry.js +4 -0
  450. package/dist/twilight/{p-51d3e25b.entry.js → p-eb5d5edc.entry.js} +1 -1
  451. package/dist/twilight/{p-12ef8d71.entry.js → p-ed39f8fd.entry.js} +1 -1
  452. package/dist/twilight/{p-63d4e082.entry.js → p-f1b8972a.entry.js} +1 -1
  453. package/dist/twilight/{p-eba2649a.entry.js → p-f66a6f43.entry.js} +1 -1
  454. package/dist/twilight/{p-9e4da911.entry.js → p-f9aa9b5b.entry.js} +1 -1
  455. package/dist/twilight/{p-118b88d0.entry.js → p-f9d778ec.entry.js} +1 -1
  456. package/dist/twilight/{p-841aa8c8.entry.js → p-fcf32a4c.entry.js} +24 -24
  457. package/dist/twilight/{p-7efec4d0.entry.js → p-fd38337e.entry.js} +1 -1
  458. package/dist/twilight/p-s0kn7yr8.js +4 -0
  459. package/dist/twilight/twilight.esm.js +1 -1
  460. package/dist/types/components/salla-order-options-modal/apple-pay-order-options.d.ts +9 -4
  461. package/dist/types/components/salla-order-options-modal/free-product-payload.d.ts +19 -0
  462. package/dist/types/components/salla-order-options-modal/order-options-gate.d.ts +11 -1
  463. package/dist/types/components/salla-order-options-modal/salla-order-options-modal.d.ts +76 -21
  464. package/dist/types/components/salla-quick-buy/salla-quick-buy.d.ts +2 -0
  465. package/dist/types/components.d.ts +59 -22
  466. package/package.json +5 -5
  467. package/dist/twilight/p-1069f299.entry.js +0 -4
  468. package/dist/twilight/p-2796cee2.entry.js +0 -4
  469. package/dist/twilight/p-3d466e85.entry.js +0 -4
  470. package/dist/twilight/p-5287c01f.entry.js +0 -4
  471. package/dist/twilight/p-5ab972ac.entry.js +0 -4
  472. package/dist/twilight/p-6f42cb42.entry.js +0 -4
  473. package/dist/twilight/p-Bg2HuLRr.js +0 -4
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * Crafted with ❤ by Salla
3
3
  */
4
- import { r as registerInstance, h, H as Host, a as getElement } from './index-DXda9rxP.js';
4
+ import { r as registerInstance, h, H as Host, a as getElement } from './index-BC0OSCdw.js';
5
5
 
6
6
  const sallaCountDownCss = "/*!twlt*/.s-count-down-horizontal{background-color:rgba(0, 0, 0, 0.06);background-color:color-mix(in srgb, var(--color-primary) 10%, transparent)}.text-sm{font-size:0.875rem;line-height:1.25rem}.s-basket-gap-card-offer .s-count-down-list{margin-left:-0px !important;margin-right:-0px !important;margin-bottom:0px !important;margin-top:0px !important;display:inline-flex;flex-wrap:nowrap;align-items:center;justify-content:flex-start !important;column-gap:0px;--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.s-basket-gap-card-offer .s-count-down-list:where([dir=\"ltr\"],[dir=\"ltr\"] *){flex-direction:row-reverse !important}.s-basket-gap-card-offer .s-count-down-list:where([dir=\"rtl\"],[dir=\"rtl\"] *){flex-direction:row !important}.s-basket-gap-card-offer .s-count-down-item{position:relative !important;margin-left:0px !important;margin-right:0px !important;display:inline-flex !important;width:auto !important;flex:none !important;flex-grow:0 !important;flex-direction:row !important;align-items:center !important;justify-content:center !important;padding-top:0px !important;padding-bottom:0px !important;padding-left:0px !important;padding-right:0px !important;font-size:12px !important;font-weight:700 !important;line-height:1 !important;--tw-text-opacity:1 !important;color:rgb(21 128 61 / var(--tw-text-opacity, 1)) !important}.s-basket-gap-card-offer .s-count-down-item-value{display:inline-block !important;width:2ch !important;min-width:2ch !important;text-align:center;--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction);line-height:1}.s-basket-gap-card-offer .s-count-down-item-label{display:none}.s-basket-gap-entry .s-basket-gap-card-offer.s-basket-gap-card-offer .s-count-down-item::before{content:none !important}.s-basket-gap-entry .s-basket-gap-card-offer.s-basket-gap-card-offer .s-count-down-item::after{content:none !important;position:static;left:auto;right:auto;transform:none}[dir='rtl'] .s-basket-gap-entry .s-basket-gap-card-offer.s-basket-gap-card-offer .s-count-down-item:not(:last-child)::after{content:':' !important;position:static;left:auto;right:auto;transform:none;margin-left:0.15rem;margin-right:0.15rem;color:#15803d;font-size:12px;font-weight:700;line-height:1}[dir='ltr'] .s-basket-gap-entry .s-basket-gap-card-offer.s-basket-gap-card-offer .s-count-down-item:not(:first-child)::after{content:':' !important;position:static;left:auto;right:auto;transform:none;margin-left:0.15rem;margin-right:0.15rem;color:#15803d;font-size:12px;font-weight:700;line-height:1}.s-count-down-wrapper{position:relative}.s-count-down-list{margin-left:-0.25rem;margin-right:-0.25rem;margin-bottom:1.25rem;margin-top:0.625rem;display:flex;align-items:center;justify-content:space-between}.s-count-down-list:where([dir=\"ltr\"],[dir=\"ltr\"] *){flex-direction:row-reverse}.s-count-down-list:where([dir=\"rtl\"],[dir=\"rtl\"] *){flex-direction:row}.s-count-down-item{position:relative;margin-left:0.25rem;margin-right:0.25rem;display:flex;flex:1 1 0%;flex-direction:column;align-items:center;justify-content:center;padding-top:0.5rem;padding-bottom:0.5rem;font-family:var(--font-main);font-weight:700}.s-count-down-item::after{position:absolute;left:-2px;font-family:inherit;--tw-content:':';content:var(--tw-content)}.s-count-down-item:last-child::after{--tw-content:'';content:var(--tw-content)}.s-count-down-item-label{margin-top:0.25rem;display:block;font-size:0.875rem;line-height:1.25rem;--tw-text-opacity:1;color:rgb(31 41 55 / var(--tw-text-opacity, 1));opacity:0.4}.s-count-down-boxed .s-count-down-item{border-radius:var(--s-radius, 0.25rem);--tw-bg-opacity:1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.s-count-down-boxed .s-count-down-item::after{--tw-content:'';content:var(--tw-content)}.s-count-down-sm .s-count-down-item{font-size:1rem;line-height:1.5rem;font-weight:400}.s-count-down-sm .s-count-down-item::after{content:var(--tw-content);font-size:1rem;line-height:1.5rem}.s-count-down-sm+.s-count-down-end-text{font-size:1rem;line-height:1.5rem;font-weight:400}.s-count-down-md .s-count-down-item{font-size:1.125rem;line-height:1.75rem;font-weight:500}.s-count-down-md .s-count-down-item::after{content:var(--tw-content);font-size:1.125rem;line-height:1.75rem}.s-count-down-md+.s-count-down-end-text{font-size:1.125rem;line-height:1.75rem;font-weight:500}.s-count-down-lg .s-count-down-item{font-size:1.875rem;line-height:2.25rem;font-weight:700}.s-count-down-lg .s-count-down-item::after{content:var(--tw-content);font-size:1.875rem;line-height:2.25rem}.s-count-down-lg+.s-count-down-end-text{font-size:1.5rem;line-height:2rem;font-weight:700}.s-count-down-light .s-count-down-item{--tw-text-opacity:1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.s-count-down-light .s-count-down-item::after{content:var(--tw-content);--tw-text-opacity:1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.s-count-down-dark .s-count-down-item{--tw-text-opacity:1;color:rgb(31 41 55 / var(--tw-text-opacity, 1))}.s-count-down-dark .s-count-down-item::after{content:var(--tw-content);--tw-text-opacity:1;color:rgb(31 41 55 / var(--tw-text-opacity, 1))}.s-count-down-primary .s-count-down-item{color:var(--color-primary)}.s-count-down-primary .s-count-down-item::after{content:var(--tw-content);color:var(--color-primary)}.s-count-down-ended .s-count-down-item{--tw-text-opacity:1;color:rgb(156 163 175 / var(--tw-text-opacity, 1));opacity:0.1}.s-count-down-ended .s-count-down-item::after{content:var(--tw-content);--tw-text-opacity:1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.s-count-down-end-text{position:absolute;top:50%;left:50%;--tw-translate-x:-50%;--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));font-family:var(--font-main);--tw-text-opacity:1;color:rgb(234 84 85 / var(--tw-text-opacity, 1))}.s-count-down-text-center{text-align:center}.s-count-down-info-message{display:flex;gap:0.5rem;padding-top:0.625rem;padding-bottom:0.625rem;font-size:0.875rem;line-height:1.25rem;--tw-text-opacity:1;color:rgb(37 99 235 / var(--tw-text-opacity, 1))}.s-count-down-pre-order{display:flex;flex:1 1 0%;flex-direction:column;align-items:center;gap:0.5rem}@media (min-width: 1024px){.s-count-down-pre-order{flex-direction:row}}.s-count-down-pre-order .s-count-down-item{position:relative;display:flex;height:2.7rem;width:2.25rem;flex-direction:column;align-items:center;justify-content:center;border-radius:2px}.s-count-down-pre-order .s-count-down-item::after{left:-7px;--tw-content:':';content:var(--tw-content)}.s-count-down-pre-order .s-count-down-item:last-child::after{--tw-content:'';content:var(--tw-content)}.s-count-down-pre-order-container{margin-bottom:1.25rem;margin-top:0.625rem;display:flex;flex-direction:column;align-items:center;gap:0.5rem}@media (min-width: 1024px){.s-count-down-pre-order-container{flex-direction:row}}.s-count-down-pre-order-container .s-count-down-list{margin:0px;padding:0px}.s-count-down-pre-order .s-count-down-item-value{font-size:1rem;line-height:1.5rem;font-weight:700;line-height:1}.s-count-down-pre-order .s-count-down-item-label{margin-top:0px;font-size:0.6rem;opacity:1}.s-count-down-horizontal{display:inline-flex;flex-direction:row;align-items:center;gap:0.75rem;border-radius:0.75rem;padding-left:1rem;padding-right:1rem;padding-top:0.75rem;padding-bottom:0.75rem;--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction);line-height:1}.s-count-down-horizontal.s-count-down-ended{opacity:0.5}.s-count-down-horizontal .s-count-down-list{margin:0px;width:auto;justify-content:flex-start;padding-left:0px;padding-right:0px}.s-count-down-horizontal .s-count-down-list .s-count-down-item{margin-left:0.25rem;margin-right:0.25rem;height:1.75rem;min-width:2rem;flex:none;border-radius:0.375rem;background-color:var(--color-primary);padding-top:0px;padding-bottom:0px;padding-left:0.5rem;padding-right:0.5rem;font-size:0.875rem;line-height:1.25rem;font-weight:600;line-height:1.5;color:var(--color-primary-reverse)}.s-count-down-horizontal .s-count-down-list .s-count-down-item::after{font-weight:600;content:var(--tw-content);color:var(--color-primary)}.s-count-down-horizontal .s-count-down-item-label{margin-top:0.125rem;font-size:0.625rem;line-height:1;--tw-text-opacity:1;color:rgb(107 114 128 / var(--tw-text-opacity, 1));opacity:0.7}.s-count-down-with-button{display:inline-flex;align-items:center;column-gap:0.75rem}.s-count-down-with-button button .s-button-text{display:flex;align-items:center;column-gap:0.5rem}.s-count-down-with-button button .s-button-text:where([dir=\"ltr\"],[dir=\"ltr\"] *){flex-direction:row-reverse}.s-count-down-with-button button .s-button-text:where([dir=\"rtl\"],[dir=\"rtl\"] *){flex-direction:row}.s-count-down-prefix-text{font-size:0.875rem;line-height:1.25rem;font-weight:700;color:var(--color-primary)}";
7
7
 
@@ -233,12 +233,12 @@ const SallaCountDown = class {
233
233
  return this.renderCountDown();
234
234
  }
235
235
  render() {
236
- return (h(Host, { key: 'e2805e528a52b71ad71f4f1f16a473947dafb5bc', 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()));
236
+ 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()));
237
237
  }
238
238
  };
239
239
  SallaCountDown.style = sallaCountDownCss;
240
240
 
241
- const sallaOrderOptionsModalCss = "/*!twlt*/.s-order-options-modal-host .s-modal-header-inner,.s-order-options-modal-host .s-modal-header-content,.s-order-options-modal-host .s-modal-title{text-align:start !important}.s-order-options-modal-apple-pay{display:block;width:100%;--apple-pay-button-width:100%;--apple-pay-button-height:44px;--apple-pay-button-border-radius:0.75rem}.s-order-options-modal-apple-pay-wrap{display:flex;flex-direction:column;gap:0.75rem;width:100%}.s-order-options-modal-apple-pay-total{display:flex;align-items:center;justify-content:space-between;gap:0.5rem}.s-order-options-modal-apple-pay-label,.s-order-options-modal-apple-pay-amount{font-size:1.125rem;line-height:1.5rem;font-weight:700;color:#111827}.static{position:static}.block{display:block}.hidden{display:none}.shadow{--tw-shadow:0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}.s-order-options-modal-body{display:block}.s-order-options-modal-subtitle{margin-bottom:1rem;font-size:0.875rem;line-height:1.5rem;--tw-text-opacity:1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.s-order-options-modal-fields{display:flex;flex-direction:column;gap:1rem}.s-order-options-modal-item{display:block}.s-order-options-modal-footer{display:flex;width:100%;align-items:center}.s-order-options-modal-cta-content{display:flex;align-items:center;gap:0.25rem}.s-order-options-modal-cta-text{font-weight:700}.s-order-options-modal-cta-total{font-weight:700}";
241
+ const sallaOrderOptionsModalCss = "/*!twlt*/@charset \"UTF-8\";.s-order-options-modal-host .s-modal-header-inner,.s-order-options-modal-host .s-modal-header-content,.s-order-options-modal-host .s-modal-title{text-align:start !important}.s-order-options-modal-host.s-oom-wizard-modal .s-modal-title{display:none}.s-order-options-modal-host.s-oom-wizard-modal .s-modal-header-inner{flex:1;min-width:0}.s-order-options-modal-host.s-oom-wizard-modal .s-modal-header-content{display:none}.s-oom-steps{display:flex;align-items:center;justify-content:flex-start;gap:0.5rem;width:100%;padding:0}.s-oom-step{display:inline-flex;align-items:center;gap:0.375rem;padding:0.375rem 0.75rem 0.375rem 0.625rem;border-radius:9999px;font-size:0.8125rem;font-weight:600;line-height:1;white-space:nowrap;color:#9ca3af;background:transparent;border:1.5px solid #e5e7eb;transition:background 0.2s, color 0.2s, border-color 0.2s}.s-oom-step.active{background:#1a2533;color:#ffffff;border-color:#1a2533}.s-oom-step.active .s-oom-step-num{background:rgba(255, 255, 255, 0.2);color:#ffffff}.s-oom-step.done{color:#6b7280;border-color:#d1d5db}.s-oom-step-num{display:inline-flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;border-radius:50%;font-size:0.6875rem;font-weight:700;background:#e5e7eb;color:#6b7280;flex-shrink:0}.s-oom-step-label{font-size:0.8125rem}.s-oom-connector{flex:1;max-width:3rem;height:0;border-top:1.5px dashed #d1d5db}.s-oom-free-product-card{display:flex;align-items:center;gap:0.75rem;padding:0.75rem 1rem;margin-bottom:1rem;border:1px solid #e5e7eb;border-radius:0.75rem;background:#f9fafb;}.s-oom-free-product-info{display:flex;flex-direction:column;gap:0.25rem;min-width:0;flex:1}.s-oom-free-product-tags{display:flex;flex-wrap:wrap;align-items:center;gap:0.375rem}.s-oom-free-product-name{font-size:0.9375rem;font-weight:700;color:#111827;line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.s-oom-free-badge{display:inline-block;padding:0.125rem 0.5rem;border-radius:9999px;font-size:0.6875rem;font-weight:600;color:#059669;background:#d1fae5;align-self:flex-start}.s-oom-free-offer-name{display:inline-block;padding:0.125rem 0.5rem;border-radius:9999px;font-size:0.6875rem;font-weight:500;color:#6b7280;background:#f3f4f6;align-self:flex-start}.s-oom-free-product-thumb{width:3.5rem;height:3.5rem;object-fit:cover;border-radius:0.5rem;flex-shrink:0;border:1px solid #e5e7eb}.s-order-options-modal-body{padding-top:0.25rem;max-height:60vh;overflow-y:auto;overscroll-behavior:contain}.s-order-options-modal-subtitle{font-size:0.875rem;color:#6b7280;margin-bottom:1rem;text-align:start}.s-order-options-modal-cta-content{display:flex;align-items:center;justify-content:center;gap:0.5rem;width:100%}.s-order-options-modal-cta-text{flex:1;text-align:center}.s-order-options-modal-apple-pay{display:block;width:100%;--apple-pay-button-width:100%;--apple-pay-button-height:44px;--apple-pay-button-border-radius:0.75rem}.s-order-options-modal-apple-pay-wrap{display:flex;flex-direction:column;gap:0.75rem;width:100%}.s-order-options-modal-apple-pay-total{display:flex;align-items:center;justify-content:space-between;gap:0.5rem}.s-order-options-modal-apple-pay-label,.s-order-options-modal-apple-pay-amount{font-size:1.125rem;line-height:1.5rem;font-weight:700;color:#111827}.s-oom-cta-arrow{font-size:0.875rem;flex-shrink:0}.static{position:static}.hidden{display:none}.shadow{--tw-shadow:0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}.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)}.s-order-options-modal-body{display:block;max-height:60vh;overflow-y:auto;overscroll-behavior:contain}.s-order-options-modal-subtitle{margin-bottom:1rem;font-size:0.875rem;line-height:1.5rem;--tw-text-opacity:1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.s-order-options-modal-fields{display:flex;flex-direction:column;gap:1rem}.s-order-options-modal-item{display:block}.s-order-options-modal-footer{display:flex;width:100%;align-items:center}.s-order-options-modal-cta-content{display:flex;align-items:center;gap:0.25rem}.s-order-options-modal-cta-text{font-weight:700}.s-order-options-modal-cta-total{font-weight:700}";
242
242
 
243
243
  const SallaOrderOptionsModal = class {
244
244
  constructor(hostRef) {
@@ -247,20 +247,48 @@ const SallaOrderOptionsModal = class {
247
247
  this.rejectFn = null;
248
248
  this.optionsRefs = new Map();
249
249
  this.changeHandler = null;
250
- /** Sync hook for callers that need to act under the submit user gesture (Apple Pay). */
251
250
  this.submitCallback = null;
251
+ /** Wizard bookkeeping — not @State, only used for logic */
252
+ this._realOrderOptions = [];
253
+ this._collectedFreeOptions = [];
254
+ this._isWizard = false;
255
+ /** Pending free-product steps and where we are in them. */
256
+ this._freeQueue = [];
257
+ this._freeIndex = 0;
258
+ this._collectedFreeProducts = [];
259
+ /**
260
+ * The product's own price, held across the wizard. Gift steps show a 0 base (the gift is
261
+ * free), so without this the final total — which Apple Pay charges — would omit the product.
262
+ */
263
+ this._orderBasePrice = 0;
264
+ /** Surcharges picked on gift steps already left behind, folded into the final total. */
265
+ this._accumulatedExtra = 0;
266
+ /** @State — all rendering decisions are driven by these */
252
267
  this.orderOptions = [];
253
268
  this.basePrice = 0;
254
269
  this.liveTotal = 0;
255
270
  this.isSubmitting = false;
256
- /** Bumped each open() so the inner <salla-product-options> remounts. */
257
271
  this.sessionId = 0;
258
272
  this.paymentMode = 'default';
273
+ /** Card data for the free product being configured right now (null on the final step). */
274
+ this.freeProduct = null;
275
+ /**
276
+ * True while a free-product step is active. Tracked separately from `freeProduct` so an
277
+ * entry that arrives without card data still runs as its own step instead of silently
278
+ * rendering as the order-options step.
279
+ */
280
+ this.inFreeStep = false;
259
281
  this.title = '';
260
282
  this.subtitle = '';
261
283
  this.submitLabel = '';
262
284
  this.totalLabel = '';
263
285
  this.requiredMessage = '';
286
+ // Hardcode Arabic defaults — salla.lang.get() returns the key string itself when a key is
287
+ // missing, so `|| fallback` never fires. Defaults here guarantee correct text even before
288
+ // translations load or when the keys don't exist in the store's language file yet.
289
+ this.freeProductTitle = 'خيارات المنتج المجاني';
290
+ this.freeProductSubtitle = 'اختر ما يناسبك من خيارات المنتج';
291
+ this.freeProductContinueLabel = 'تابع واحصل على هديتك الان';
264
292
  this.handleClose = () => {
265
293
  if (this.isSubmitting)
266
294
  return;
@@ -275,41 +303,109 @@ const SallaOrderOptionsModal = class {
275
303
  componentWillLoad() {
276
304
  this.loadTranslations();
277
305
  }
306
+ /** True when the page reads right-to-left, so directional icons can mirror. */
307
+ isRtl() {
308
+ return document?.documentElement?.getAttribute('dir') === 'rtl';
309
+ }
310
+ /** Returns the translated value only when the key actually resolves (not the key string itself). */
311
+ t(key, fallback) {
312
+ const val = salla.lang.get(key);
313
+ return val && val !== key ? val : fallback;
314
+ }
278
315
  loadTranslations() {
279
316
  this.title = salla.lang.get('blocks.order_options.title');
280
317
  this.subtitle = salla.lang.get('blocks.order_options.subtitle');
281
318
  this.submitLabel = salla.lang.get('blocks.order_options.continue');
282
319
  this.totalLabel = salla.lang.get('blocks.order_options.total');
283
320
  this.requiredMessage = salla.lang.get('blocks.order_options.required_message');
321
+ this.freeProductTitle = this.t('pages.products.free_product_options_title', 'خيارات المنتج المجاني');
322
+ this.freeProductSubtitle = this.t('pages.products.free_product_options_subtitle', 'اختر ما يناسبك من خيارات المنتج');
323
+ this.freeProductContinueLabel = this.t('pages.products.free_product_cta', 'تابع واحصل على هديتك الان');
284
324
  }
285
- /**
286
- * Open the modal. Resolves with selections on submit; rejects on dismiss.
287
- * `onSubmit` fires sync in the submit click (for Apple Pay user-gesture).
288
- * `paymentMode: 'apple-pay'` swaps the footer button for <apple-pay-button>.
289
- */
290
325
  async open(payload) {
291
- // Normalize here, not in the shared salla-product-options: text/number order options ship no
292
- // `details`, which product-options dereferences unguarded.
293
- this.orderOptions = (Array.isArray(payload.orderOptions) ? payload.orderOptions : [])
326
+ const normalize = (arr) => (Array.isArray(arr) ? arr : [])
294
327
  .map((o) => ({ ...o, details: o.details ?? [] }));
295
- this.basePrice = Number(payload.basePrice) || 0;
296
- this.liveTotal = this.basePrice + this.seedOptionsPrice(this.orderOptions);
328
+ const realOrderOptions = normalize(payload.orderOptions);
329
+ const freeQueue = this.buildFreeQueue(payload, normalize);
330
+ this._realOrderOptions = realOrderOptions;
331
+ this._collectedFreeOptions = [];
332
+ this._collectedFreeProducts = [];
333
+ this._freeQueue = freeQueue;
334
+ this._freeIndex = 0;
335
+ this._orderBasePrice = Number(payload.basePrice) || 0;
336
+ this._accumulatedExtra = 0;
337
+ // The step bar appears whenever there is more than one step to walk — N gifts alone
338
+ // still needs it, not just the gift + order-options pairing.
339
+ this._isWizard = (freeQueue.length + (realOrderOptions.length > 0 ? 1 : 0)) > 1;
297
340
  this.isSubmitting = false;
298
- this.sessionId++;
299
341
  this.optionsRefs.clear();
300
342
  this.submitCallback = payload.onSubmit ?? null;
301
343
  this.paymentMode = payload.paymentMode ?? 'default';
344
+ if (freeQueue.length > 0) {
345
+ this.loadFreeStep(0);
346
+ }
347
+ else {
348
+ // Single step: store order options
349
+ this.sessionId++;
350
+ this.inFreeStep = false;
351
+ this.orderOptions = realOrderOptions;
352
+ this.freeProduct = null;
353
+ this.basePrice = Number(payload.basePrice) || 0;
354
+ this.liveTotal = this.basePrice + this.seedOptionsPrice(this.orderOptions);
355
+ }
302
356
  await this.modal?.open();
357
+ // salla-modal reads modal-title once in its constructor (@State, not @Prop) so it
358
+ // won't react to attribute changes. Push the correct title imperatively after open().
359
+ this.modal?.setTitle(this.inFreeStep ? this.freeProductTitle : this.title);
303
360
  this.attachChangeListener();
304
361
  return new Promise((resolve, reject) => {
305
362
  this.resolveFn = resolve;
306
363
  this.rejectFn = reject;
307
364
  });
308
365
  }
366
+ /**
367
+ * Normalize `freeProducts` (and the legacy single-gift pair) into the step queue.
368
+ * Entries without options are dropped — there is nothing to ask, and the offer still
369
+ * auto-adds that product with its defaults.
370
+ */
371
+ buildFreeQueue(payload, normalize) {
372
+ const queue = [];
373
+ (Array.isArray(payload.freeProducts) ? payload.freeProducts : []).forEach((entry) => {
374
+ const options = normalize(entry?.options);
375
+ if (!options.length)
376
+ return;
377
+ queue.push({
378
+ product: entry?.product
379
+ ? { ...entry.product, offer_name: entry.offer_name ?? entry.product.offer_name ?? null }
380
+ : null,
381
+ options,
382
+ // The offer decides how many of Y are granted.
383
+ quantity: Number(entry?.quantity) > 0 ? Number(entry.quantity) : 1,
384
+ });
385
+ });
386
+ if (queue.length)
387
+ return queue;
388
+ const legacyOptions = normalize(payload.freeProductOptions);
389
+ if (legacyOptions.length) {
390
+ queue.push({ product: payload.freeProduct ?? null, options: legacyOptions, quantity: 1 });
391
+ }
392
+ return queue;
393
+ }
394
+ /** Swap the modal onto free-product step `index`. */
395
+ loadFreeStep(index) {
396
+ const step = this._freeQueue[index];
397
+ this._freeIndex = index;
398
+ this.optionsRefs.clear();
399
+ this.inFreeStep = true;
400
+ this.orderOptions = step.options;
401
+ this.freeProduct = step.product;
402
+ this.basePrice = 0;
403
+ this.liveTotal = this.seedOptionsPrice(step.options);
404
+ this.sessionId++;
405
+ }
309
406
  async close() {
310
407
  await this.modal?.close();
311
408
  }
312
- /** Sync walk of inputs — avoids `await` through the @Method that would consume the AP user gesture. */
313
409
  collectOrderOptionsSync() {
314
410
  const result = [];
315
411
  for (const [, el] of this.optionsRefs) {
@@ -317,9 +413,8 @@ const SallaOrderOptionsModal = class {
317
413
  continue;
318
414
  const inputs = el.querySelectorAll('[name^="options["],[name*="[options]["]');
319
415
  inputs.forEach((input) => {
320
- if (input instanceof HTMLInputElement && (input.type === 'radio' || input.type === 'checkbox') && !input.checked) {
416
+ if (input instanceof HTMLInputElement && (input.type === 'radio' || input.type === 'checkbox') && !input.checked)
321
417
  return;
322
- }
323
418
  const match = input.name.match(/(?:^|\[)options\]?\[(\d+)\]/);
324
419
  if (!match)
325
420
  return;
@@ -335,7 +430,6 @@ const SallaOrderOptionsModal = class {
335
430
  }
336
431
  return result;
337
432
  }
338
- /** Sync native validity — keeps the AP user gesture intact. */
339
433
  validateSync() {
340
434
  let pass = true;
341
435
  for (const [, el] of this.optionsRefs) {
@@ -343,8 +437,6 @@ const SallaOrderOptionsModal = class {
343
437
  continue;
344
438
  const requiredInputs = el.querySelectorAll('[required]');
345
439
  requiredInputs.forEach((input) => {
346
- // Mirror salla-product-options.reportValidity(): skip hidden/disabled inputs so a
347
- // required field in a `.hidden` conditional container can't silently block submit.
348
440
  if (input.disabled || input.closest('.hidden'))
349
441
  return;
350
442
  if ('reportValidity' in input && !input.reportValidity())
@@ -353,11 +445,6 @@ const SallaOrderOptionsModal = class {
353
445
  }
354
446
  return pass;
355
447
  }
356
- /**
357
- * Sum the per-quantity fee (total_price = additional_price × qty) of any pre-selected details.
358
- * Uses total_price so the total scales with product quantity; falls back to the per-unit
359
- * additional_price only when total_price is absent. (CHOD-13172)
360
- */
361
448
  seedOptionsPrice(orderOptions) {
362
449
  let sum = 0;
363
450
  orderOptions.forEach((opt) => {
@@ -368,7 +455,6 @@ const SallaOrderOptionsModal = class {
368
455
  });
369
456
  return sum;
370
457
  }
371
- /** salla.event.on is global — attach per open, detach on close to avoid stacking. */
372
458
  attachChangeListener() {
373
459
  this.detachChangeListener();
374
460
  this.changeHandler = () => this.recomputeTotal();
@@ -389,7 +475,6 @@ const SallaOrderOptionsModal = class {
389
475
  ? await el.getSelectedOptions()
390
476
  : [];
391
477
  (selected || []).forEach((s) => {
392
- // total_price already includes the product-quantity multiplier (CHOD-13172).
393
478
  selectedPrice += Number(s.total_price ?? s.additional_price) || 0;
394
479
  });
395
480
  }
@@ -402,44 +487,148 @@ const SallaOrderOptionsModal = class {
402
487
  salla.notify?.error?.(this.requiredMessage);
403
488
  return;
404
489
  }
490
+ if (this.inFreeStep) {
491
+ const step = this._freeQueue[this._freeIndex];
492
+ const selected = this.collectOrderOptionsSync();
493
+ // Legacy single-gift callers still read the flat list off the first gift.
494
+ if (this._freeIndex === 0)
495
+ this._collectedFreeOptions = selected;
496
+ // A step left entirely empty is not forced into products[] — the offer still
497
+ // auto-adds that gift with its defaults.
498
+ if (selected.length && step?.product?.id) {
499
+ const options = {};
500
+ selected.forEach(({ id, value }) => { options[id] = value; });
501
+ this._collectedFreeProducts.push({
502
+ productId: step.product.id,
503
+ quantity: step.quantity,
504
+ options,
505
+ });
506
+ }
507
+ // Bank this step's surcharges — the gift's own base is 0, so liveTotal is pure surcharge.
508
+ this._accumulatedExtra += Math.max(0, this.liveTotal - this.basePrice);
509
+ // More gifts to configure — advance to the next one.
510
+ const next = this._freeIndex + 1;
511
+ if (next < this._freeQueue.length) {
512
+ this.loadFreeStep(next);
513
+ this.modal?.setTitle(this.freeProductTitle);
514
+ return;
515
+ }
516
+ if (this._realOrderOptions.length) {
517
+ // Gifts done — advance to the store order-options step.
518
+ this.optionsRefs.clear();
519
+ this.inFreeStep = false;
520
+ this.freeProduct = null; // @State → re-render to the final step
521
+ this.orderOptions = this._realOrderOptions; // @State → swaps to store order options
522
+ // Restore the product's price: this step's total is what the shopper pays, and in
523
+ // apple-pay mode it becomes the sheet amount.
524
+ this.basePrice = this._orderBasePrice;
525
+ this.liveTotal = this._orderBasePrice + this.seedOptionsPrice(this._realOrderOptions);
526
+ this.sessionId++; // forces salla-product-options remount
527
+ this.modal?.setTitle(this.title); // update header: "خيارات الطلب"
528
+ return;
529
+ }
530
+ // Gifts only, no store order options — this was the last step, so fire the submit hook
531
+ // (Apple Pay starts its session in there) before resolving.
532
+ this.isSubmitting = true;
533
+ // This step's surcharge is already banked above, so swap liveTotal for the product price
534
+ // rather than adding it — otherwise the surcharge is counted twice.
535
+ this.liveTotal = this._orderBasePrice;
536
+ this.fireSubmitCallback([]);
537
+ this.resolveAndClose([]);
538
+ this.isSubmitting = false;
539
+ return;
540
+ }
541
+ // Step 2 (or single step) — resolve
405
542
  this.isSubmitting = true;
406
543
  const orderOptions = this.collectOrderOptionsSync();
407
- const total = Math.round(this.liveTotal * 100) / 100;
408
- // Fire onSubmit BEFORE any await — Apple Pay needs the user gesture.
544
+ this.fireSubmitCallback(orderOptions);
545
+ this.resolveAndClose(orderOptions);
546
+ this.isSubmitting = false;
547
+ }
548
+ /** Product price + every surcharge picked across the wizard. This is what Apple Pay charges. */
549
+ finalTotal() {
550
+ return Math.round((this.liveTotal + this._accumulatedExtra) * 100) / 100;
551
+ }
552
+ /** Fire the sync submit hook — Apple Pay opens its session inside this call, so never await. */
553
+ fireSubmitCallback(orderOptions) {
409
554
  try {
410
- this.submitCallback?.(orderOptions, total);
555
+ this.submitCallback?.(orderOptions, this.finalTotal(), this._collectedFreeProducts);
411
556
  }
412
557
  catch (err) {
413
558
  salla?.logger?.warn?.('order-options modal onSubmit threw', err);
414
559
  }
415
- this.resolveFn?.({ orderOptions });
560
+ }
561
+ /** Hand the collected selections back to the caller and tear the modal down. */
562
+ resolveAndClose(orderOptions) {
563
+ this.resolveFn?.({
564
+ orderOptions,
565
+ freeProductOptions: this._collectedFreeOptions,
566
+ freeProducts: this._collectedFreeProducts,
567
+ });
416
568
  this.resolveFn = null;
417
569
  this.rejectFn = null;
418
570
  this.submitCallback = null;
419
571
  this.detachChangeListener();
420
572
  this.modal?.close().then(() => this.reset());
421
- this.isSubmitting = false;
422
573
  }
423
- /** Clear options on close so the inner <salla-product-options> unmounts. */
424
574
  reset() {
425
575
  this.orderOptions = [];
576
+ this.freeProduct = null;
577
+ this.inFreeStep = false;
426
578
  this.optionsRefs.clear();
427
579
  this.liveTotal = 0;
580
+ this._realOrderOptions = [];
581
+ this._collectedFreeOptions = [];
582
+ this._collectedFreeProducts = [];
583
+ this._freeQueue = [];
584
+ this._freeIndex = 0;
585
+ this._isWizard = false;
428
586
  }
429
587
  render() {
430
- // salla.money returns HTML (sicon-sar icon) → render via innerHTML. Round
431
- // first so floating-point sum doesn't show as 1174.3799999999999.
432
588
  const totalHtml = salla.money(Math.round(this.liveTotal * 100) / 100);
433
- return (h("salla-modal", { key: 'e84a40e1a27447d58ca5651a7ed76cbcf886495c', ref: el => (this.modal = el), class: "s-order-options-modal-host", width: "md", "modal-title": this.title, onModalVisibilityChanged: (e) => {
589
+ const isStep1 = this.inFreeStep;
590
+ const productIdAttr = isStep1
591
+ ? String(this.freeProduct?.id || `free-prod-${this.orderOptions[0]?.id}`)
592
+ : `order-options-${this.orderOptions[0]?.id}`;
593
+ // Distinct per gift so consecutive steps can't share a stale options ref.
594
+ const uniqueKey = isStep1 ? `free-product-options-${this._freeIndex}` : 'order-options';
595
+ // One chip per gift, then one for the store order options. `current` is the index of
596
+ // the step on screen; anything before it is done.
597
+ const stepLabels = [
598
+ ...this._freeQueue.map(() => this.freeProductTitle),
599
+ ...(this._realOrderOptions.length ? [this.title] : []),
600
+ ];
601
+ const current = isStep1 ? this._freeIndex : this._freeQueue.length;
602
+ // Apple Pay must be offered on whichever step is genuinely last. With gifts but no store
603
+ // order options the last step IS a gift step, and gating on `!isStep1` would leave the
604
+ // shopper on a plain Continue button that never opens the payment sheet.
605
+ const isLastStep = current === Math.max(0, stepLabels.length - 1);
606
+ const showApplePay = this.paymentMode === 'apple-pay' && isLastStep;
607
+ // In wizard mode the step chips live in the modal header (slot="icon") so they appear
608
+ // next to the close button. A non-breaking space triggers salla-modal to render the
609
+ // header-inner container; the empty title div is hidden via .s-oom-wizard-modal CSS.
610
+ // In single-step mode the header shows the relevant title text directly.
611
+ const modalTitle = this._isWizard ? ' ' : (isStep1 ? this.freeProductTitle : this.title);
612
+ return (h("salla-modal", { key: '60e626bb49f8592c952182c182e6d73ddcaadeed', ref: el => (this.modal = el), class: `s-order-options-modal-host${this._isWizard ? ' s-oom-wizard-modal' : ''}`, width: "md", "modal-title": modalTitle, onModalVisibilityChanged: (e) => {
434
613
  if (!e.detail)
435
614
  this.handleClose();
436
- } }, h("div", { key: 'fafa3cdeb22787d4a02f3fc8afb70770e1c3b4b5', class: "s-order-options-modal-body" }, h("p", { key: 'c563c24e1b8744f3248328ec16a18c5a668e7949', class: "s-order-options-modal-subtitle" }, this.subtitle), h("div", { key: '475599cc47435b077d2321573328321888e60aa6', class: "s-order-options-modal-fields" }, this.orderOptions.length > 0 && (h("salla-product-options", { key: this.sessionId, ref: el => {
615
+ } }, this._isWizard && (h("div", { key: 'a842b5d1566c8bb0bd68d5986fb092c14f8a01d6', slot: "icon", class: "s-oom-steps" }, stepLabels.map((label, index) => [
616
+ index > 0 && h("div", { class: "s-oom-connector" }),
617
+ h("div", { class: `s-oom-step ${index === current ? 'active' : (index < current ? 'done' : '')}` }, h("span", { class: "s-oom-step-num" }, index + 1), h("span", { class: "s-oom-step-label" }, label)),
618
+ ]))), h("div", { key: '1f61a756dcf824bf4d8be71ccbd9a0c2742851d2', class: "s-order-options-modal-body" }, isStep1 && this.freeProduct && (h("div", { key: '667841475dff0deda06d8d04e0a2841f33ec54b6', class: "s-oom-free-product-card" }, this.freeProduct.thumbnail && (h("img", { key: '129b99226216f0c1ca59fccbc0ba35d5af8cdee7', class: "s-oom-free-product-thumb", src: this.freeProduct.thumbnail, alt: this.freeProduct.name })), h("div", { key: 'ae385e2d4fb967144743d67eadd50f31c23332ec', class: "s-oom-free-product-info" }, h("span", { key: '4f48a3fd0af91435060a0d303a6d0f77f5afd1bc', class: "s-oom-free-product-name" }, this.freeProduct.name), h("div", { key: 'de62961aba2246c1d52d411461d6a45aed620eab', class: "s-oom-free-product-tags" }, h("span", { key: 'db1af48cc1a7583a7f2d026159ff01f03ad216bf', class: "s-oom-free-badge" }, this.t('common.elements.free', 'مجاني')), this.freeProduct.offer_name && (h("span", { key: 'ce595bccd755e908deb1c566758ca3629171962b', class: "s-oom-free-offer-name" }, this.freeProduct.offer_name)))))), h("p", { key: '161740bddbf25369392f362f9613f2e9c6a94fc1', class: "s-order-options-modal-subtitle" }, isStep1 ? this.freeProductSubtitle : this.subtitle), h("div", { key: '20d3f92f0f3782d599ec5ce923c2dad93f7c7608', class: "s-order-options-modal-fields" }, this.orderOptions.length > 0 && (h("salla-product-options", { key: this.sessionId, ref: el => {
437
619
  if (!el)
438
620
  return;
439
- this.optionsRefs.set('order-options', el);
440
- // Without seeding, first multi-select toggle wipes pre-selected defaults.
621
+ this.optionsRefs.set(uniqueKey, el);
441
622
  el.seedSelectedOptions?.();
442
- }, "product-id": `order-options-${this.orderOptions[0]?.id}`, "unique-key": "order-options", options: JSON.stringify(this.orderOptions), "hide-out-label": "1", "no-padding": true })))), h("div", { key: 'e00641853937f745c8cc798c7f9e15b389faf540', slot: "footer", class: "s-order-options-modal-footer" }, this.paymentMode === 'apple-pay' ? (h("div", { class: "s-order-options-modal-apple-pay-wrap" }, h("div", { class: "s-order-options-modal-apple-pay-total" }, h("span", { class: "s-order-options-modal-apple-pay-label" }, this.totalLabel), h("span", { class: "s-order-options-modal-apple-pay-amount", innerHTML: totalHtml })), h("apple-pay-button", { locale: salla?.config?.get?.('user.language_code') || 'ar', buttonstyle: "black", type: "buy", class: "s-order-options-modal-apple-pay", onClick: () => this.handleSubmit() }))) : (h("salla-button", { type: "button", color: "primary", fill: "solid", width: "wide", loading: this.isSubmitting, onClick: () => this.handleSubmit() }, h("span", { class: "s-order-options-modal-cta-content" }, h("span", { class: "s-order-options-modal-cta-text" }, this.submitLabel), h("span", { class: "s-order-options-modal-cta-total", innerHTML: totalHtml })))))));
623
+ }, "product-id": productIdAttr, "unique-key": uniqueKey, options: JSON.stringify(this.orderOptions), "hide-out-label": "1", "no-padding": true })))), h("div", { key: 'c80a0c1f1b32e5396483171196879bc43713c2f4', slot: "footer", class: "s-order-options-modal-footer" }, showApplePay ? (h("div", { class: "s-order-options-modal-apple-pay-wrap" }, h("div", { class: "s-order-options-modal-apple-pay-total" }, h("span", { class: "s-order-options-modal-apple-pay-label" }, this.totalLabel), h("span", { class: "s-order-options-modal-apple-pay-amount", innerHTML: totalHtml })), h("apple-pay-button", { locale: salla?.config?.get?.('user.language_code') || 'ar', buttonstyle: "black", type: "buy", class: "s-order-options-modal-apple-pay", onClick: () => this.handleSubmit() }))) : (h("salla-button", { type: "button", color: "primary", fill: "solid", width: "wide", loading: this.isSubmitting, onClick: () => this.handleSubmit() }, h("span", { class: "s-order-options-modal-cta-content" }, h("span", { class: "s-order-options-modal-cta-text" }, isStep1 ? this.freeProductContinueLabel : this.submitLabel), isStep1
624
+ ? h("i", { class: {
625
+ 's-oom-cta-arrow': true,
626
+ // "Forward" is left in RTL and right in LTR; hardcoding arrow-left made
627
+ // English stores show a back-pointing arrow (CP-3813).
628
+ 'sicon-arrow-left': this.isRtl(),
629
+ 'sicon-arrow-right': !this.isRtl(),
630
+ } })
631
+ : h("span", { class: "s-order-options-modal-cta-total", innerHTML: totalHtml })))))));
443
632
  }
444
633
  get host() { return getElement(this); }
445
634
  };
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * Crafted with ❤ by Salla
3
3
  */
4
- import { r as registerInstance, c as createEvent, h } from './index-DXda9rxP.js';
4
+ import { r as registerInstance, c as createEvent, h } from './index-BC0OSCdw.js';
5
5
  import { C as CameraIcon } from './camera-C6jIkM-X.js';
6
6
  import { F as FormFieldTypes } from './interfaces-OF8QcbMM.js';
7
7
 
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * Crafted with ❤ by Salla
3
3
  */
4
- import { r as registerInstance, h, H as Host, a as getElement } from './index-DXda9rxP.js';
4
+ import { r as registerInstance, h, H as Host, a as getElement } from './index-BC0OSCdw.js';
5
5
  import { i as isMapOriginIntent } from './helpers-CV6uPJEJ.js';
6
6
 
7
7
  const DEBUG_KEY = 'salla-delivery-promise-debug';
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * Crafted with ❤ by Salla
3
3
  */
4
- import { r as registerInstance, h, H as Host } from './index-DXda9rxP.js';
4
+ import { r as registerInstance, h, H as Host } from './index-BC0OSCdw.js';
5
5
 
6
6
  const sallaEditOrderButtonCss = "/*!twlt*/:host{display:block}";
7
7
 
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * Crafted with ❤ by Salla
3
3
  */
4
- import { r as registerInstance, c as createEvent, h, H as Host, a as getElement } from './index-DXda9rxP.js';
4
+ import { r as registerInstance, c as createEvent, h, H as Host, a as getElement } from './index-BC0OSCdw.js';
5
5
  import { F as FilterOptionTypes, H as Helper } from './Helper-Cql-WbqR.js';
6
6
  import './anime.es-CgtvEd63.js';
7
7
 
@@ -175,12 +175,12 @@ const SallaFiltersWidget = class {
175
175
  return h("span", { class: "s-filters-option-name" }, label);
176
176
  }
177
177
  render() {
178
- return (h(Host, { key: '831f7655b903634e0eb3abc7338ea3296883cbbf', class: "s-filters-widget-container" }, h("h3", { key: '72a31fb2c9adab3df37550e930d5be981aafd8f6', class: "s-filters-widget-title", onClick: () => this.toggleWidget() }, h("span", { key: '7512914e8a7348d146384d67f117c8b06507def0' }, this.option.label), h("span", { key: '50d62723255618a2a51512722388ff686c92bdab', class: `s-filters-widget-plusminus ${this.isOpen ? 's-filters-widget-plusminus-active' : ''}` })), h("div", { key: '76792390d33c2051082541e18e9b354b2b63c644', class: "s-filters-widget-content", ref: (el) => this.widgetContent = el }, Array.isArray(this.option.values) && this.option.values.length > 5 && (h("div", { key: 'b39462721ff4572b3572c0ed6171c07fa53b57a9', class: "s-filters-widget-search-wrapper", style: { padding: '8px 0', marginBottom: '8px' } }, h("input", { key: '759b2ab6b80d0fd0bb03fcd3746414d9e4b80c7d', 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: 'db918c4a43bebc35c23810dc97736584504d0e47', class: "s-filters-widget-values", ref: (el) => this.widgetValues = el }, h("slot", { key: '92dc440b79ed0929a39db7a4a96a1981f3b49974' }), this.option.type !== FilterOptionTypes.RANGE
178
+ 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
179
179
  ? this.renderFilterOption(this.option)
180
180
  : h("salla-price-range", { onChanged: (event) => {
181
181
  this.changed.emit(event.detail);
182
182
  }, ref: price => this.priceRange = price, filtersData: this.filtersData, option: this.option })), this.withLoadMore && (!this.searchQuery || this.filteredCount > this.initialItemCount) &&
183
- h("a", { key: '885668e717441581cd1b92494ebc3927cd70daf1', class: "s-filters-widget-more", onClick: () => this.showMore() }, !this.isShowMore ? this.showMoreLabel : this.showLessLabel))));
183
+ h("a", { key: '29a3578886c0c88b6af2dc529004f9f4ab663986', class: "s-filters-widget-more", onClick: () => this.showMore() }, !this.isShowMore ? this.showMoreLabel : this.showLessLabel))));
184
184
  }
185
185
  get host() { return getElement(this); }
186
186
  };
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * Crafted with ❤ by Salla
3
3
  */
4
- import { r as registerInstance, c as createEvent, h, H as Host, a as getElement } from './index-DXda9rxP.js';
4
+ import { r as registerInstance, c as createEvent, h, H as Host, a as getElement } from './index-BC0OSCdw.js';
5
5
  import { H as Helper, F as FilterOptionTypes } from './Helper-Cql-WbqR.js';
6
6
  import './anime.es-CgtvEd63.js';
7
7
 
@@ -216,7 +216,7 @@ const SallaFilters = class {
216
216
  this.applyFilters();
217
217
  }
218
218
  render() {
219
- return h(Host, { key: '32ede23f7fb3d9c7fbcd136ad2773e3212c2f5b8' }, this.filters?.map(option => h("salla-filters-widget", { option: option, filtersData: this.filtersData, onChanged: ({ detail: { event, option, value } }) => {
219
+ return h(Host, { key: 'd72b6ce577e47864d9095922f9c2d88068c2a2c4' }, this.filters?.map(option => h("salla-filters-widget", { option: option, filtersData: this.filtersData, onChanged: ({ detail: { event, option, value } }) => {
220
220
  this.handleOptionChange(event, option, value);
221
221
  } })));
222
222
  }
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * Crafted with ❤ by Salla
3
3
  */
4
- import { r as registerInstance, h, H as Host, a as getElement } from './index-DXda9rxP.js';
4
+ import { r as registerInstance, h, H as Host, a as getElement } from './index-BC0OSCdw.js';
5
5
 
6
6
  const sallaFulfillmentMethodsCss = "/*!twlt*/:host{display:block}.s-fulfillment-methods{font-family:inherit}.s-fulfillment-methods-list{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:12px;margin-top:12px}:host-context([dir=rtl]) .s-fulfillment-methods-content{flex-direction:row-reverse}:host-context([dir=ltr]) .s-fulfillment-methods-content{flex-direction:row}.s-fulfillment-methods-card{flex:1;min-width:0;border:1px solid var(--color-border, #e5e7eb);border-radius:12px;padding:16px}.s-fulfillment-methods-content{display:flex;align-items:center;gap:12px}.s-fulfillment-methods-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.s-fulfillment-methods-title{font-weight:700;font-size:14px;line-height:1.3;color:var(--color-text-primary, #2b2d34)}.s-fulfillment-methods-subtitle{font-size:12px;line-height:1.4;color:var(--color-text-secondary, #6b7280)}.s-fulfillment-methods-icon-wrap{flex-shrink:0;width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:var(--color-surface-secondary, #f3f4f6);border-radius:10px}.s-fulfillment-methods-icon{font-size:22px;color:var(--color-text-secondary, #6b7280);line-height:1}.hidden{display:none}.shadow{--tw-shadow:0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}.s-fulfillment-methods-list{margin-bottom:0.75rem;margin-top:0.75rem;display:flex;flex-wrap:wrap;gap:1rem}.s-fulfillment-methods-card{min-width:0px;flex:1 1 0%;border-radius:0.75rem;border-width:1px;--tw-border-opacity:1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));padding:1rem}.s-fulfillment-methods-content{display:flex;flex-direction:row;align-items:center;gap:0.75rem}.s-fulfillment-methods-content:where([dir=\"rtl\"],[dir=\"rtl\"] *){flex-direction:row-reverse}.s-fulfillment-methods-text{display:flex;min-width:0px;flex:1 1 0%;flex-direction:column;gap:0.25rem}.s-fulfillment-methods-title{font-size:0.875rem;line-height:1.25rem;font-weight:700;line-height:1.375;color:var(--color-text-primary,#2b2d34)}.s-fulfillment-methods-subtitle{font-size:0.75rem;line-height:1rem;line-height:1.4;color:var(--color-text-secondary,#6b7280)}.s-fulfillment-methods-icon-wrap{display:flex;height:2.75rem;width:2.75rem;flex-shrink:0;align-items:center;justify-content:center;border-radius:10px;background-color:var(--color-surface-secondary,#f3f4f6)}.s-fulfillment-methods-icon{font-size:22px;line-height:1;color:var(--color-text-secondary,#6b7280)}";
7
7
 
@@ -1,12 +1,12 @@
1
1
  /*!
2
2
  * Crafted with ❤ by Salla
3
3
  */
4
- import { r as registerInstance, h } from './index-DXda9rxP.js';
4
+ import { r as registerInstance, h } from './index-BC0OSCdw.js';
5
5
  import { a as anime } from './anime.es-CgtvEd63.js';
6
6
  import { a as arrowLeft } from './arrow-left-BedNk7k1.js';
7
7
  import { C as Cancel } from './cancel-BsLF_HK7.js';
8
8
  import { G as GiftSharing } from './gift-sharing-DxkgAGoT.js';
9
- import { a as appendOrderOptionsToPayload } from './apple-pay-order-options-Bg2HuLRr.js';
9
+ import { a as appendOrderOptionsToPayload } from './apple-pay-order-options-s0kn7yr8.js';
10
10
 
11
11
  var Images = `<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 32 32">
12
12
  <title>images</title>
@@ -864,7 +864,7 @@ const SallaGifting = class {
864
864
  }
865
865
  render() {
866
866
  return [
867
- h("div", { key: 'fd15533a1dbb57c0bbf31d66046b7051b63221d7' }, h("salla-list-tile", { key: 'b6f298371176e3fc829a8f0a7de775adbc70f903', class: this.generateClass() }, h("div", { key: '46c0dfc5d7d89576d411b5765d92a72b3dd289ba', slot: "title" }, this.vertical ? h("span", { innerHTML: GiftSharing }) : '', h("h3", { key: 'd0b9bbd243458f9ea25aa7a970d3084d16ca56a8' }, !!this.widgetTitle ? this.widgetTitle : this.sectionTitle)), h("div", { key: '0ac470d3daa813ca8177e9f92c9c0eec402784b0', slot: "subtitle" }, h("div", { key: 'a783624dfe67959544cd70b3a087ccd004fb517f' }, !!this.widgetSubtitle ? this.widgetSubtitle : this.sectionSubtitle)), h("div", { key: 'd76689c03fdff0aa9ff50323227a191e8aa7aa11', slot: "action" }, h("salla-button", { key: '1516f29ca50b92f78a8f7e5a07daa9e70740dae9', color: "primary", fill: "outline", width: "wide", class: "s-gifting-widget-action", onClick: () => this.handleGiftButtonClick() }, h("slot", { key: '9d9b070b98e7a60736ca87347b0982a3034681a2', name: "widget-btn-content" }, h("div", { key: '4813d5f3bf85c3f5a0eefb5bd5478a009b6aceb2', class: "s-gifting-widget-action-content" }, h("span", { key: '738760ee256892c2f654ebae06877ca6cdaf0bec', innerHTML: GiftSharing }), " \u00A0", h("span", { key: 'bb181feda8126bd541517dabe107c44ab4da177a' }, this.sectionBtnText)))))), h("salla-modal", { key: '0d4478c6d9cf6bd1e75e81dca234c05af9303e0e', id: this.hostId, isLoading: true, class: "s-gifting-modal", width: "sm", ref: modal => this.modal = modal }, h("div", { key: 'cea9b69f0af18a825f1cf4ac979fb571cc4b497f', slot: "loading" }, h("div", { key: '8190baa4b26d4de58ea98a4bd3662a54ca024e3a', class: "s-gifting-skeleton" }, h("div", { key: '6271ba338d1e85c5337f9b4956b2b0eb1c610669', class: "s-gifting-modal-header" }, h("salla-skeleton", { key: '77fb7f73e5dd748b69c9ed7263e3cefc9b24d643', type: 'circle', height: '5rem', width: '5rem' }), h("h2", { key: '4e436f8ad10aad25ffb84632973376855c0d803d', class: "s-gifting-modal-title" }, h("div", { key: '98c17840dd15e6d8495bd709a76d257001a3c2f3', class: "s-gifting-modal-badge-wrapper" }, h("salla-skeleton", { key: '9582b325011b36f5dbb7bf70a044554e339af05a', height: '15px', width: '150px' })))), h("div", { key: 'd95d5c41fb226a654e62c183fcababcf1a1af9b5', class: "s-gifting-skeleton-content" }, h("salla-skeleton", { key: '73ee2dd11f30ad370261a9b88324f40a52607973', height: '10px', width: '150px' }), h("salla-skeleton", { key: '8b07be46818f49401a5c7aae8a19de0445e9785e', height: '230px' }), h("salla-skeleton", { key: '6a7a9ff47ad18efdfc51d2c70dba6cf89c572974', height: '10px', width: '150px' }), h("salla-skeleton", { key: 'f033c20b65077bfa99fb302415e10ff55f2d112d', height: '30px' }), h("salla-skeleton", { key: '60bf4740d16b9cf852536315b62d1abafc14e4d5', height: '40px' })))), h("slot", { key: 'eac7b126556b6895457fdd0c87f15b872975947f', name: "header" }), !!this.hasError ?
867
+ h("div", { key: 'eb77c96ecc39291dc3def641cea481cc90b3e267' }, h("salla-list-tile", { key: 'a9e8e946a5a06c6fe380073a068612fadeb0fc20', class: this.generateClass() }, h("div", { key: 'eebf210be6fe5e1672e695d47c9bde11320883c8', slot: "title" }, this.vertical ? h("span", { innerHTML: GiftSharing }) : '', 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: GiftSharing }), " \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 ?
868
868
  h("salla-placeholder", { alignment: "center" }, h("span", { slot: "title" }, this.errorMessage || salla.lang.get('common.errors.empty_results')), h("span", { slot: "description" }, " "))
869
869
  :
870
870
  [
@@ -887,7 +887,7 @@ const SallaGifting = class {
887
887
  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'] ?
888
888
  h("span", { class: "s-gifting-error" }, this.errors['receiver.city_id']) : ''), this.isPhysical() && this.cityNoticeText() &&
889
889
  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: arrowLeft, onClick: (e) => this.goToStep1(e) }), h("salla-button", { onClick: () => this.submitForm(), color: "primary", width: 'wide' }, h("span", null, this.sendGift)))))
890
- ], h("slot", { key: '8f516d4a4275f867f0564ef7aa187fb2bcc1e32f', name: "footer" })))
890
+ ], h("slot", { key: 'c83487720cc77c14ccc08e8b2872b5f4fbd0bfa3', name: "footer" })))
891
891
  ];
892
892
  }
893
893
  };
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * Crafted with ❤ by Salla
3
3
  */
4
- import { r as registerInstance, h, H as Host, a as getElement } from './index-DXda9rxP.js';
4
+ import { r as registerInstance, h, H as Host, a as getElement } from './index-BC0OSCdw.js';
5
5
 
6
6
  const SallaHook = class {
7
7
  constructor(hostRef) {
@@ -15,7 +15,7 @@ const SallaHook = class {
15
15
  this.host.before(element);
16
16
  }
17
17
  render() {
18
- return h(Host, { key: '1acc6e7c4e3e9695576a820cbc68c539e81fa36e' });
18
+ return h(Host, { key: 'e9402928843fe4612c514c4a0f6374b2d1f02736' });
19
19
  }
20
20
  async componentDidLoad() {
21
21
  // Register this component for hooks system, already on it logic to run componentDidLoad trigger
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * Crafted with ❤ by Salla
3
3
  */
4
- import { r as registerInstance, h, H as Host, a as getElement } from './index-DXda9rxP.js';
4
+ import { r as registerInstance, h, H as Host, a as getElement } from './index-BC0OSCdw.js';
5
5
  import { H as Helper } from './Helper-Cql-WbqR.js';
6
6
  import './anime.es-CgtvEd63.js';
7
7