@salla.sa/twilight-components 3.0.18 → 3.0.20

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 (481) hide show
  1. package/dist/cjs/{Helper-D2VNt6eb.js → Helper-C3MBaLHQ.js} +1 -1
  2. package/dist/cjs/delivery-promise-intent-5WTKLkFZ.js +71 -0
  3. package/dist/cjs/{filepond-DkCudLhG.js → filepond-DGt10gCq.js} +1 -1
  4. package/dist/cjs/{filepond-plugin-file-poster-C-uxFWfW.js → filepond-plugin-file-poster-NSV7ClY6.js} +1 -1
  5. package/dist/cjs/{filepond-plugin-file-validate-size-BikXTQW2.js → filepond-plugin-file-validate-size-C08-fDj7.js} +1 -1
  6. package/dist/cjs/{filepond-plugin-file-validate-type-Drs7PouU.js → filepond-plugin-file-validate-type-CbbTh4qd.js} +1 -1
  7. package/dist/cjs/{filepond-plugin-image-edit-hxr0h9kt.js → filepond-plugin-image-edit-CqqtsmjD.js} +1 -1
  8. package/dist/cjs/{filepond-plugin-image-exif-orientation-CVZmWU_4.js → filepond-plugin-image-exif-orientation-D60HJIiL.js} +1 -1
  9. package/dist/cjs/{filepond-plugin-image-preview-CBjPKx-d.js → filepond-plugin-image-preview-B7bWOXFm.js} +1 -1
  10. package/dist/cjs/helpers-wRMwEkLy.js +627 -0
  11. package/dist/cjs/{index-CTYg2zC6.js → index-U-OadFju.js} +14 -10
  12. package/dist/cjs/{intlTelInput-C9X0hKXV.js → intlTelInput-Cp6WJvPO.js} +1 -1
  13. package/dist/cjs/loader.cjs.js +2 -2
  14. package/dist/cjs/salla-accordion-body_2.cjs.entry.js +1 -1
  15. package/dist/cjs/salla-accordion_6.cjs.entry.js +2 -2
  16. package/dist/cjs/salla-add-product-button_5.cjs.entry.js +164 -7
  17. package/dist/cjs/salla-advertisement.cjs.entry.js +1 -1
  18. package/dist/cjs/salla-alert_2.cjs.entry.js +1 -1
  19. package/dist/cjs/salla-app-install-alert.cjs.entry.js +1 -1
  20. package/dist/cjs/salla-applied-filters.cjs.entry.js +2 -2
  21. package/dist/cjs/salla-apps-icons.cjs.entry.js +1 -1
  22. package/dist/cjs/salla-attachment-view_9.cjs.entry.js +13 -13
  23. package/dist/cjs/salla-badge.cjs.entry.js +1 -1
  24. package/dist/cjs/salla-basket-gap.cjs.entry.js +1 -1
  25. package/dist/cjs/salla-bullet-delivery_3.cjs.entry.js +435 -134
  26. package/dist/cjs/salla-cart-coupons.cjs.entry.js +1 -1
  27. package/dist/cjs/salla-cart-item-offers_2.cjs.entry.js +1 -1
  28. package/dist/cjs/salla-cart-summary-card.cjs.entry.js +1 -1
  29. package/dist/cjs/salla-cashback-banner.cjs.entry.js +1 -1
  30. package/dist/cjs/salla-comment-factors.cjs.entry.js +1 -1
  31. package/dist/cjs/salla-comment-form_9.cjs.entry.js +4 -4
  32. package/dist/cjs/salla-conditional-offer.cjs.entry.js +1 -1
  33. package/dist/cjs/salla-contacts.cjs.entry.js +1 -1
  34. package/dist/cjs/salla-cookies-bar.cjs.entry.js +1 -1
  35. package/dist/cjs/salla-count-down.cjs.entry.js +1 -1
  36. package/dist/cjs/salla-custom-fields.cjs.entry.js +1 -1
  37. package/dist/cjs/salla-delivery-promise.cjs.entry.js +5 -65
  38. package/dist/cjs/salla-edit-order-button.cjs.entry.js +1 -1
  39. package/dist/cjs/salla-filters-widget.cjs.entry.js +2 -2
  40. package/dist/cjs/salla-filters.cjs.entry.js +2 -2
  41. package/dist/cjs/salla-free-shipping-banner.cjs.entry.js +1 -1
  42. package/dist/cjs/salla-free-shipping-tag.cjs.entry.js +1 -1
  43. package/dist/cjs/salla-fulfillment-methods.cjs.entry.js +1 -1
  44. package/dist/cjs/salla-gift-card-redeem_2.cjs.entry.js +2 -2
  45. package/dist/cjs/salla-gifting.cjs.entry.js +1 -1
  46. package/dist/cjs/salla-hook.cjs.entry.js +1 -1
  47. package/dist/cjs/salla-infinite-scroll.cjs.entry.js +2 -2
  48. package/dist/cjs/salla-installment.cjs.entry.js +1 -1
  49. package/dist/cjs/salla-list-tile.cjs.entry.js +1 -1
  50. package/dist/cjs/salla-localization-modal.cjs.entry.js +1 -1
  51. package/dist/cjs/salla-login-modal.cjs.entry.js +7 -2
  52. package/dist/cjs/salla-loyalty-banner_10.cjs.entry.js +1 -1
  53. package/dist/cjs/salla-loyalty-exchange-product-card.cjs.entry.js +1 -1
  54. package/dist/cjs/salla-loyalty-points-banner.cjs.entry.js +1 -1
  55. package/dist/cjs/salla-loyalty-points-history.cjs.entry.js +1 -1
  56. package/dist/cjs/salla-loyalty-prize-item.cjs.entry.js +1 -1
  57. package/dist/cjs/salla-loyalty.cjs.entry.js +1 -1
  58. package/dist/cjs/salla-maintenance-alert.cjs.entry.js +1 -1
  59. package/dist/cjs/salla-map_3.cjs.entry.js +1 -1
  60. package/dist/cjs/salla-menu.cjs.entry.js +1 -1
  61. package/dist/cjs/salla-metadata.cjs.entry.js +1 -1
  62. package/dist/cjs/salla-mobile-update-modal.cjs.entry.js +188 -0
  63. package/dist/cjs/salla-multiple-bundle-product-cart_2.cjs.entry.js +4 -4
  64. package/dist/cjs/salla-multiple-bundle-product-options-modal_2.cjs.entry.js +6 -6
  65. package/dist/cjs/salla-multiple-bundle-product.cjs.entry.js +2 -2
  66. package/dist/cjs/salla-next-order-coupon.cjs.entry.js +1 -1
  67. package/dist/cjs/salla-notification-item_2.cjs.entry.js +3 -3
  68. package/dist/cjs/salla-offer-modal.cjs.entry.js +2 -2
  69. package/dist/cjs/salla-offer.cjs.entry.js +1 -1
  70. package/dist/cjs/salla-order-branch.cjs.entry.js +1 -1
  71. package/dist/cjs/salla-order-cancel.cjs.entry.js +1 -1
  72. package/dist/cjs/salla-order-details-multiple-bundle-product.cjs.entry.js +1 -1
  73. package/dist/cjs/salla-order-details-options.cjs.entry.js +1 -1
  74. package/dist/cjs/salla-order-details.cjs.entry.js +2 -2
  75. package/dist/cjs/salla-order-edit-item.cjs.entry.js +1 -1
  76. package/dist/cjs/salla-order-edit-product-card.cjs.entry.js +2 -2
  77. package/dist/cjs/salla-order-edit.cjs.entry.js +1 -1
  78. package/dist/cjs/salla-order-items.cjs.entry.js +2 -2
  79. package/dist/cjs/salla-order-options-modal.cjs.entry.js +1 -1
  80. package/dist/cjs/salla-order-payment.cjs.entry.js +2 -2
  81. package/dist/cjs/salla-order-rewards.cjs.entry.js +2 -2
  82. package/dist/cjs/salla-order-shipments.cjs.entry.js +1 -1
  83. package/dist/cjs/salla-order-summary.cjs.entry.js +2 -2
  84. package/dist/cjs/salla-order-totals-card.cjs.entry.js +1 -1
  85. package/dist/cjs/salla-orders.cjs.entry.js +2 -2
  86. package/dist/cjs/salla-payments.cjs.entry.js +3 -3
  87. package/dist/cjs/salla-placeholder.cjs.entry.js +2 -2
  88. package/dist/cjs/salla-price-range.cjs.entry.js +1 -1
  89. package/dist/cjs/salla-product-card-embed.cjs.entry.js +2 -2
  90. package/dist/cjs/salla-product-card.cjs.entry.js +1 -1
  91. package/dist/cjs/salla-product-size-guide.cjs.entry.js +3 -3
  92. package/dist/cjs/salla-products-list.cjs.entry.js +9 -2
  93. package/dist/cjs/salla-products-slider.cjs.entry.js +2 -2
  94. package/dist/cjs/salla-quick-order.cjs.entry.js +1 -1
  95. package/dist/cjs/salla-rating-modal-v2.cjs.entry.js +33 -7
  96. package/dist/cjs/salla-rating-modal.cjs.entry.js +2 -2
  97. package/dist/cjs/salla-review-factors-tags.cjs.entry.js +2 -2
  98. package/dist/cjs/salla-review-order-item.cjs.entry.js +1 -1
  99. package/dist/cjs/salla-scopes.cjs.entry.js +1 -1
  100. package/dist/cjs/salla-search-product-card.cjs.entry.js +3 -3
  101. package/dist/cjs/salla-search.cjs.entry.js +2 -2
  102. package/dist/cjs/salla-skeleton.cjs.entry.js +2 -2
  103. package/dist/cjs/salla-social-share.cjs.entry.js +2 -2
  104. package/dist/cjs/salla-social.cjs.entry.js +2 -2
  105. package/dist/cjs/salla-tab-content_3.cjs.entry.js +4 -4
  106. package/dist/cjs/salla-thank-you-header.cjs.entry.js +2 -2
  107. package/dist/cjs/salla-thank-you-page.cjs.entry.js +2 -2
  108. package/dist/cjs/salla-tiered-offer.cjs.entry.js +1 -1
  109. package/dist/cjs/salla-trust-badges.cjs.entry.js +1 -1
  110. package/dist/cjs/salla-user-menu.cjs.entry.js +1 -1
  111. package/dist/cjs/salla-user-profile.cjs.entry.js +1 -1
  112. package/dist/cjs/salla-user-settings.cjs.entry.js +2 -2
  113. package/dist/cjs/salla-verify.cjs.entry.js +3 -3
  114. package/dist/cjs/salla-wallet.cjs.entry.js +1 -1
  115. package/dist/cjs/salla-wishlist-actions.cjs.entry.js +2 -2
  116. package/dist/cjs/salla-wishlist-summary.cjs.entry.js +2 -2
  117. package/dist/cjs/twilight.cjs.js +2 -2
  118. package/dist/cjs/{vanilla-picker-BsLm8rHT.js → vanilla-picker-C-rN_NiT.js} +1 -1
  119. package/dist/collection/collection-manifest.json +1 -0
  120. package/dist/collection/components/salla-bullet-delivery/api-service.js +156 -25
  121. package/dist/collection/components/salla-bullet-delivery/helpers.js +166 -15
  122. package/dist/collection/components/salla-bullet-delivery/icons.js +17 -0
  123. package/dist/collection/components/salla-bullet-delivery/salla-bullet-delivery.css +490 -52
  124. package/dist/collection/components/salla-bullet-delivery/salla-bullet-delivery.js +423 -101
  125. package/dist/collection/components/salla-login-modal/salla-login-modal.js +6 -1
  126. package/dist/collection/components/salla-mobile-update-modal/salla-mobile-update-modal.css +43 -0
  127. package/dist/collection/components/salla-mobile-update-modal/salla-mobile-update-modal.js +235 -0
  128. package/dist/collection/components/salla-multiple-bundle-product/components/salla-multiple-bundle-product-cart.js +1 -1
  129. package/dist/collection/components/salla-multiple-bundle-product/components/salla-multiple-bundle-product-details.js +2 -2
  130. package/dist/collection/components/salla-multiple-bundle-product/components/salla-multiple-bundle-product-options-modal.js +4 -4
  131. package/dist/collection/components/salla-multiple-bundle-product/components/salla-multiple-bundle-product-slider.js +1 -1
  132. package/dist/collection/components/salla-multiple-bundle-product/salla-multiple-bundle-product.js +1 -1
  133. package/dist/collection/components/salla-notifications/salla-notification-item.js +1 -1
  134. package/dist/collection/components/salla-offer-modal/salla-offer-modal.js +1 -1
  135. package/dist/collection/components/salla-order-details/salla-order-details.js +1 -1
  136. package/dist/collection/components/salla-order-edit/salla-order-edit-product-card.js +1 -1
  137. package/dist/collection/components/salla-order-items/salla-order-items.js +1 -1
  138. package/dist/collection/components/salla-order-payment/salla-order-payment.js +1 -1
  139. package/dist/collection/components/salla-order-rewards/salla-order-rewards.js +1 -1
  140. package/dist/collection/components/salla-order-summary/salla-order-summary.js +1 -1
  141. package/dist/collection/components/salla-payments/salla-payments.js +2 -2
  142. package/dist/collection/components/salla-placeholder/salla-placeholder.js +1 -1
  143. package/dist/collection/components/salla-product-availability/salla-product-availability.js +1 -1
  144. package/dist/collection/components/salla-product-card-embed/salla-product-card-embed.js +1 -1
  145. package/dist/collection/components/salla-product-size-guide/salla-product-size-guide.js +2 -2
  146. package/dist/collection/components/salla-products-list/salla-products-list.js +7 -0
  147. package/dist/collection/components/salla-quantity-input/salla-quantity-input.js +1 -1
  148. package/dist/collection/components/salla-quick-buy/salla-quick-buy.js +91 -2
  149. package/dist/collection/components/salla-rating-modal/salla-rating-modal-v2.js +31 -5
  150. package/dist/collection/components/salla-review-card/salla-review-card.js +1 -1
  151. package/dist/collection/components/salla-review-factors-tags/salla-review-factors-tags.js +1 -1
  152. package/dist/collection/components/salla-reviews-page/salla-reviews-page.js +1 -1
  153. package/dist/collection/components/salla-search-product-card/salla-search-product-card.js +2 -2
  154. package/dist/collection/components/salla-searchable-dropdown/salla-searchable-dropdown.js +4 -4
  155. package/dist/collection/components/salla-skeleton/salla-skeleton.js +1 -1
  156. package/dist/collection/components/salla-social/salla-social.js +1 -1
  157. package/dist/collection/components/salla-social-share/salla-social-share.js +1 -1
  158. package/dist/collection/components/salla-tabs/salla-tab-content.js +1 -1
  159. package/dist/collection/components/salla-tabs/salla-tab-header.js +1 -1
  160. package/dist/collection/components/salla-tabs/salla-tabs.js +1 -1
  161. package/dist/collection/components/salla-tel-input/salla-tel-input.js +1 -1
  162. package/dist/collection/components/salla-thank-you-header/salla-thank-you-header.js +1 -1
  163. package/dist/collection/components/salla-thank-you-page/salla-thank-you-page.js +1 -1
  164. package/dist/collection/components/salla-tooltip/salla-tooltip.js +1 -1
  165. package/dist/collection/components/salla-user-settings/salla-user-settings.js +1 -1
  166. package/dist/collection/components/salla-verify/salla-verify.js +48 -2
  167. package/dist/collection/components/salla-wishlist-actions/salla-wishlist-actions.js +1 -1
  168. package/dist/components/delivery-promise-intent.js +67 -0
  169. package/dist/components/helpers.js +322 -40
  170. package/dist/components/index.js +2 -2
  171. package/dist/components/mail.js +2 -2
  172. package/dist/components/salla-bullet-delivery.js +436 -129
  173. package/dist/components/salla-contacts.js +2 -2
  174. package/dist/components/salla-delivery-promise.js +1 -62
  175. package/dist/components/salla-login-modal2.js +6 -1
  176. package/dist/components/salla-loyalty-point2.js +2 -2
  177. package/dist/components/salla-mobile-update-modal.d.ts +11 -0
  178. package/dist/components/salla-mobile-update-modal.js +241 -0
  179. package/dist/components/salla-multiple-bundle-product-cart2.js +1 -1
  180. package/dist/components/salla-multiple-bundle-product-details2.js +2 -2
  181. package/dist/components/salla-multiple-bundle-product-options-modal2.js +4 -4
  182. package/dist/components/salla-multiple-bundle-product-slider2.js +1 -1
  183. package/dist/components/salla-multiple-bundle-product.js +1 -1
  184. package/dist/components/salla-notification-item2.js +1 -1
  185. package/dist/components/salla-offer-modal.js +1 -1
  186. package/dist/components/salla-order-details.js +1 -1
  187. package/dist/components/salla-order-edit-product-card.js +1 -1
  188. package/dist/components/salla-order-items2.js +1 -1
  189. package/dist/components/salla-order-payment.js +1 -1
  190. package/dist/components/salla-order-rewards.js +1 -1
  191. package/dist/components/salla-order-summary.js +1 -1
  192. package/dist/components/salla-payments.js +2 -2
  193. package/dist/components/salla-placeholder2.js +1 -1
  194. package/dist/components/salla-product-availability2.js +1 -1
  195. package/dist/components/salla-product-card-embed.js +1 -1
  196. package/dist/components/salla-product-size-guide.js +2 -2
  197. package/dist/components/salla-products-list2.js +7 -0
  198. package/dist/components/salla-quantity-input2.js +1 -1
  199. package/dist/components/salla-quick-buy2.js +161 -4
  200. package/dist/components/salla-quick-order.js +2 -2
  201. package/dist/components/salla-rating-modal-v22.js +33 -7
  202. package/dist/components/salla-rating-modal2.js +2 -2
  203. package/dist/components/salla-review-card2.js +1 -1
  204. package/dist/components/salla-review-factors-tags2.js +1 -1
  205. package/dist/components/salla-reviews-page.js +1 -1
  206. package/dist/components/salla-search-product-card2.js +2 -2
  207. package/dist/components/salla-searchable-dropdown2.js +4 -4
  208. package/dist/components/salla-skeleton2.js +1 -1
  209. package/dist/components/salla-social-share2.js +4 -4
  210. package/dist/components/salla-social.js +1 -1
  211. package/dist/components/salla-tab-content2.js +1 -1
  212. package/dist/components/salla-tab-header2.js +1 -1
  213. package/dist/components/salla-tabs2.js +1 -1
  214. package/dist/components/salla-tel-input2.js +1 -1
  215. package/dist/components/salla-thank-you-header.js +1 -1
  216. package/dist/components/salla-thank-you-page.js +1 -1
  217. package/dist/components/salla-tooltip2.js +1 -1
  218. package/dist/components/salla-user-settings.js +1 -1
  219. package/dist/components/salla-verify.js +1 -321
  220. package/dist/components/salla-verify2.js +328 -0
  221. package/dist/components/salla-wishlist-actions.js +1 -1
  222. package/dist/docs.json +158 -2
  223. package/dist/esm/{Helper-C1T-oD4J.js → Helper-BKruFMBN.js} +1 -1
  224. package/dist/esm/delivery-promise-intent-C6pZjRut.js +67 -0
  225. package/dist/esm/{filepond-BoWJzHeN.js → filepond-Vl6a--vT.js} +1 -1
  226. package/dist/esm/{filepond-plugin-file-poster-B6MkMtuC.js → filepond-plugin-file-poster-CrQqmzd5.js} +1 -1
  227. package/dist/esm/{filepond-plugin-file-validate-size-Dds_462B.js → filepond-plugin-file-validate-size-BrHjddJa.js} +1 -1
  228. package/dist/esm/{filepond-plugin-file-validate-type-DrfGXNay.js → filepond-plugin-file-validate-type-BeMZq9Fl.js} +1 -1
  229. package/dist/esm/{filepond-plugin-image-edit-CN7eGg-7.js → filepond-plugin-image-edit-DW6JzY39.js} +1 -1
  230. package/dist/esm/{filepond-plugin-image-exif-orientation-CyhxK_6R.js → filepond-plugin-image-exif-orientation-gzIIB75B.js} +1 -1
  231. package/dist/esm/{filepond-plugin-image-preview-DdKqAzT9.js → filepond-plugin-image-preview-BwbtnJIU.js} +1 -1
  232. package/dist/esm/helpers-BVaKfTMx.js +591 -0
  233. package/dist/esm/{index-DgUQRYr2.js → index-CrXKQnBu.js} +14 -10
  234. package/dist/esm/{intlTelInput-SwlavcFB.js → intlTelInput-BkjSbnO6.js} +1 -1
  235. package/dist/esm/loader.js +3 -3
  236. package/dist/esm/salla-accordion-body_2.entry.js +1 -1
  237. package/dist/esm/salla-accordion_6.entry.js +2 -2
  238. package/dist/esm/salla-add-product-button_5.entry.js +164 -7
  239. package/dist/esm/salla-advertisement.entry.js +1 -1
  240. package/dist/esm/salla-alert_2.entry.js +1 -1
  241. package/dist/esm/salla-app-install-alert.entry.js +1 -1
  242. package/dist/esm/salla-applied-filters.entry.js +2 -2
  243. package/dist/esm/salla-apps-icons.entry.js +1 -1
  244. package/dist/esm/salla-attachment-view_9.entry.js +13 -13
  245. package/dist/esm/salla-badge.entry.js +1 -1
  246. package/dist/esm/salla-basket-gap.entry.js +1 -1
  247. package/dist/esm/salla-bullet-delivery_3.entry.js +435 -134
  248. package/dist/esm/salla-cart-coupons.entry.js +1 -1
  249. package/dist/esm/salla-cart-item-offers_2.entry.js +1 -1
  250. package/dist/esm/salla-cart-summary-card.entry.js +1 -1
  251. package/dist/esm/salla-cashback-banner.entry.js +1 -1
  252. package/dist/esm/salla-comment-factors.entry.js +1 -1
  253. package/dist/esm/salla-comment-form_9.entry.js +4 -4
  254. package/dist/esm/salla-conditional-offer.entry.js +1 -1
  255. package/dist/esm/salla-contacts.entry.js +1 -1
  256. package/dist/esm/salla-cookies-bar.entry.js +1 -1
  257. package/dist/esm/salla-count-down.entry.js +1 -1
  258. package/dist/esm/salla-custom-fields.entry.js +1 -1
  259. package/dist/esm/salla-delivery-promise.entry.js +3 -63
  260. package/dist/esm/salla-edit-order-button.entry.js +1 -1
  261. package/dist/esm/salla-filters-widget.entry.js +2 -2
  262. package/dist/esm/salla-filters.entry.js +2 -2
  263. package/dist/esm/salla-free-shipping-banner.entry.js +1 -1
  264. package/dist/esm/salla-free-shipping-tag.entry.js +1 -1
  265. package/dist/esm/salla-fulfillment-methods.entry.js +1 -1
  266. package/dist/esm/salla-gift-card-redeem_2.entry.js +2 -2
  267. package/dist/esm/salla-gifting.entry.js +1 -1
  268. package/dist/esm/salla-hook.entry.js +1 -1
  269. package/dist/esm/salla-infinite-scroll.entry.js +2 -2
  270. package/dist/esm/salla-installment.entry.js +1 -1
  271. package/dist/esm/salla-list-tile.entry.js +1 -1
  272. package/dist/esm/salla-localization-modal.entry.js +1 -1
  273. package/dist/esm/salla-login-modal.entry.js +7 -2
  274. package/dist/esm/salla-loyalty-banner_10.entry.js +1 -1
  275. package/dist/esm/salla-loyalty-exchange-product-card.entry.js +1 -1
  276. package/dist/esm/salla-loyalty-points-banner.entry.js +1 -1
  277. package/dist/esm/salla-loyalty-points-history.entry.js +1 -1
  278. package/dist/esm/salla-loyalty-prize-item.entry.js +1 -1
  279. package/dist/esm/salla-loyalty.entry.js +1 -1
  280. package/dist/esm/salla-maintenance-alert.entry.js +1 -1
  281. package/dist/esm/salla-map_3.entry.js +1 -1
  282. package/dist/esm/salla-menu.entry.js +1 -1
  283. package/dist/esm/salla-metadata.entry.js +1 -1
  284. package/dist/esm/salla-mobile-update-modal.entry.js +186 -0
  285. package/dist/esm/salla-multiple-bundle-product-cart_2.entry.js +4 -4
  286. package/dist/esm/salla-multiple-bundle-product-options-modal_2.entry.js +6 -6
  287. package/dist/esm/salla-multiple-bundle-product.entry.js +2 -2
  288. package/dist/esm/salla-next-order-coupon.entry.js +1 -1
  289. package/dist/esm/salla-notification-item_2.entry.js +3 -3
  290. package/dist/esm/salla-offer-modal.entry.js +2 -2
  291. package/dist/esm/salla-offer.entry.js +1 -1
  292. package/dist/esm/salla-order-branch.entry.js +1 -1
  293. package/dist/esm/salla-order-cancel.entry.js +1 -1
  294. package/dist/esm/salla-order-details-multiple-bundle-product.entry.js +1 -1
  295. package/dist/esm/salla-order-details-options.entry.js +1 -1
  296. package/dist/esm/salla-order-details.entry.js +2 -2
  297. package/dist/esm/salla-order-edit-item.entry.js +1 -1
  298. package/dist/esm/salla-order-edit-product-card.entry.js +2 -2
  299. package/dist/esm/salla-order-edit.entry.js +1 -1
  300. package/dist/esm/salla-order-items.entry.js +2 -2
  301. package/dist/esm/salla-order-options-modal.entry.js +1 -1
  302. package/dist/esm/salla-order-payment.entry.js +2 -2
  303. package/dist/esm/salla-order-rewards.entry.js +2 -2
  304. package/dist/esm/salla-order-shipments.entry.js +1 -1
  305. package/dist/esm/salla-order-summary.entry.js +2 -2
  306. package/dist/esm/salla-order-totals-card.entry.js +1 -1
  307. package/dist/esm/salla-orders.entry.js +2 -2
  308. package/dist/esm/salla-payments.entry.js +3 -3
  309. package/dist/esm/salla-placeholder.entry.js +2 -2
  310. package/dist/esm/salla-price-range.entry.js +1 -1
  311. package/dist/esm/salla-product-card-embed.entry.js +2 -2
  312. package/dist/esm/salla-product-card.entry.js +1 -1
  313. package/dist/esm/salla-product-size-guide.entry.js +3 -3
  314. package/dist/esm/salla-products-list.entry.js +9 -2
  315. package/dist/esm/salla-products-slider.entry.js +2 -2
  316. package/dist/esm/salla-quick-order.entry.js +1 -1
  317. package/dist/esm/salla-rating-modal-v2.entry.js +33 -7
  318. package/dist/esm/salla-rating-modal.entry.js +2 -2
  319. package/dist/esm/salla-review-factors-tags.entry.js +2 -2
  320. package/dist/esm/salla-review-order-item.entry.js +1 -1
  321. package/dist/esm/salla-scopes.entry.js +1 -1
  322. package/dist/esm/salla-search-product-card.entry.js +3 -3
  323. package/dist/esm/salla-search.entry.js +2 -2
  324. package/dist/esm/salla-skeleton.entry.js +2 -2
  325. package/dist/esm/salla-social-share.entry.js +2 -2
  326. package/dist/esm/salla-social.entry.js +2 -2
  327. package/dist/esm/salla-tab-content_3.entry.js +4 -4
  328. package/dist/esm/salla-thank-you-header.entry.js +2 -2
  329. package/dist/esm/salla-thank-you-page.entry.js +2 -2
  330. package/dist/esm/salla-tiered-offer.entry.js +1 -1
  331. package/dist/esm/salla-trust-badges.entry.js +1 -1
  332. package/dist/esm/salla-user-menu.entry.js +1 -1
  333. package/dist/esm/salla-user-profile.entry.js +1 -1
  334. package/dist/esm/salla-user-settings.entry.js +2 -2
  335. package/dist/esm/salla-verify.entry.js +3 -3
  336. package/dist/esm/salla-wallet.entry.js +1 -1
  337. package/dist/esm/salla-wishlist-actions.entry.js +2 -2
  338. package/dist/esm/salla-wishlist-summary.entry.js +2 -2
  339. package/dist/esm/twilight.js +3 -3
  340. package/dist/esm/{vanilla-picker-Buy50D7t.js → vanilla-picker-eSagUASw.js} +1 -1
  341. package/dist/twilight/p-0050dd2a.entry.js +4 -0
  342. package/dist/twilight/{p-3d8b77f7.entry.js → p-012ff05c.entry.js} +1 -1
  343. package/dist/twilight/{p-08a15c81.entry.js → p-02ce2139.entry.js} +1 -1
  344. package/dist/twilight/{p-b0d2e31f.entry.js → p-059aa8a9.entry.js} +1 -1
  345. package/dist/twilight/{p-0d795b58.entry.js → p-09798a10.entry.js} +1 -1
  346. package/dist/twilight/p-0af7555c.entry.js +4 -0
  347. package/dist/twilight/{p-bed68e52.entry.js → p-11075f15.entry.js} +1 -1
  348. package/dist/twilight/{p-6e52b649.entry.js → p-12b2b553.entry.js} +1 -1
  349. package/dist/twilight/{p-8c1d14f0.entry.js → p-14fb124b.entry.js} +1 -1
  350. package/dist/twilight/{p-9e0a9a5a.entry.js → p-1ca3525d.entry.js} +1 -1
  351. package/dist/twilight/{p-7f97335a.entry.js → p-1f54638c.entry.js} +1 -1
  352. package/dist/twilight/{p-5694edf1.entry.js → p-201c816d.entry.js} +1 -1
  353. package/dist/twilight/{p-92fd20a0.entry.js → p-203b2723.entry.js} +1 -1
  354. package/dist/twilight/{p-1af9db24.entry.js → p-224c35e6.entry.js} +1 -1
  355. package/dist/twilight/{p-6dccd40f.entry.js → p-22bd8281.entry.js} +1 -1
  356. package/dist/twilight/{p-d4fb9921.entry.js → p-25ac8744.entry.js} +1 -1
  357. package/dist/twilight/{p-0ba159db.entry.js → p-25b964c0.entry.js} +1 -1
  358. package/dist/twilight/{p-da0df10b.entry.js → p-2a469c80.entry.js} +1 -1
  359. package/dist/twilight/{p-26d2b28a.entry.js → p-2a6f93a8.entry.js} +1 -1
  360. package/dist/twilight/{p-7fd9dc36.entry.js → p-2b0f98fc.entry.js} +1 -1
  361. package/dist/twilight/{p-259c995a.entry.js → p-2e66576c.entry.js} +1 -1
  362. package/dist/twilight/{p-be6f8551.entry.js → p-2e8e7cf2.entry.js} +1 -1
  363. package/dist/twilight/{p-ee479819.entry.js → p-2f05393f.entry.js} +1 -1
  364. package/dist/twilight/{p-1960020c.entry.js → p-3054e1c1.entry.js} +1 -1
  365. package/dist/twilight/{p-70dfb2b4.entry.js → p-3295390b.entry.js} +1 -1
  366. package/dist/twilight/{p-a95b0dc1.entry.js → p-33678067.entry.js} +1 -1
  367. package/dist/twilight/{p-c4cf0b4d.entry.js → p-33c05de2.entry.js} +1 -1
  368. package/dist/twilight/{p-d0ff9a3e.entry.js → p-381a9e70.entry.js} +1 -1
  369. package/dist/twilight/{p-f9e5ed10.entry.js → p-38270121.entry.js} +1 -1
  370. package/dist/twilight/{p-027cbda6.entry.js → p-385bf37d.entry.js} +1 -1
  371. package/dist/twilight/{p-d0aeeb7f.entry.js → p-40ee2ca3.entry.js} +1 -1
  372. package/dist/twilight/{p-cb48a5ef.entry.js → p-43a3401b.entry.js} +1 -1
  373. package/dist/twilight/{p-9d15f22d.entry.js → p-4616033a.entry.js} +1 -1
  374. package/dist/twilight/p-484af8cc.entry.js +4 -0
  375. package/dist/twilight/{p-516e4edc.entry.js → p-4b6627f5.entry.js} +1 -1
  376. package/dist/twilight/p-4ed8ae08.entry.js +4 -0
  377. package/dist/twilight/{p-6af8a7b6.entry.js → p-4fb442c2.entry.js} +1 -1
  378. package/dist/twilight/{p-4b70e6c4.entry.js → p-516f9b83.entry.js} +1 -1
  379. package/dist/twilight/{p-d1204965.entry.js → p-56aebb36.entry.js} +1 -1
  380. package/dist/twilight/{p-6b5de500.entry.js → p-56fbe5ff.entry.js} +1 -1
  381. package/dist/twilight/{p-66ad7a30.entry.js → p-58af47e4.entry.js} +1 -1
  382. package/dist/twilight/{p-3f842f32.entry.js → p-616e6781.entry.js} +1 -1
  383. package/dist/twilight/{p-254cff9a.entry.js → p-62077080.entry.js} +1 -1
  384. package/dist/twilight/p-6427664a.entry.js +4 -0
  385. package/dist/twilight/{p-bb8b2c85.entry.js → p-65253725.entry.js} +1 -1
  386. package/dist/twilight/{p-fcb1009f.entry.js → p-6a05f69c.entry.js} +1 -1
  387. package/dist/twilight/{p-ac736b30.entry.js → p-6afa5aa8.entry.js} +1 -1
  388. package/dist/twilight/{p-f7a58656.entry.js → p-6ff116eb.entry.js} +1 -1
  389. package/dist/twilight/{p-f9587127.entry.js → p-710b19d2.entry.js} +1 -1
  390. package/dist/twilight/{p-84b0e7a9.entry.js → p-71297800.entry.js} +1 -1
  391. package/dist/twilight/{p-53735934.entry.js → p-7234a066.entry.js} +1 -1
  392. package/dist/twilight/{p-b1f808f5.entry.js → p-73af6a02.entry.js} +1 -1
  393. package/dist/twilight/{p-4ab5ee99.entry.js → p-7428deca.entry.js} +1 -1
  394. package/dist/twilight/{p-b5a45f87.entry.js → p-75b509cd.entry.js} +1 -1
  395. package/dist/twilight/{p-071aa0e7.entry.js → p-79e446b2.entry.js} +1 -1
  396. package/dist/twilight/{p-eaf0c514.entry.js → p-7a8c9411.entry.js} +1 -1
  397. package/dist/twilight/{p-5f6fee0e.entry.js → p-86533832.entry.js} +1 -1
  398. package/dist/twilight/p-8a4af12c.entry.js +4 -0
  399. package/dist/twilight/{p-9cf1cfd4.entry.js → p-8ddf6933.entry.js} +1 -1
  400. package/dist/twilight/{p-7b5f97e7.entry.js → p-93fe31b9.entry.js} +1 -1
  401. package/dist/twilight/{p-4891c565.entry.js → p-9c96a9e7.entry.js} +1 -1
  402. package/dist/twilight/{p-CBLWEyM9.js → p-BNr49RmW.js} +1 -1
  403. package/dist/twilight/{p-DMvhNbgN.js → p-BUzdlb7Q.js} +1 -1
  404. package/dist/twilight/p-BVaKfTMx.js +4 -0
  405. package/dist/twilight/{p-BK9YeXWp.js → p-BYWjrTuB.js} +1 -1
  406. package/dist/twilight/{p-CCwsxMbZ.js → p-Bo_J3Do4.js} +1 -1
  407. package/dist/twilight/{p-CgNJWeaK.js → p-ChxhrML8.js} +1 -1
  408. package/dist/twilight/p-CrXKQnBu.js +5 -0
  409. package/dist/twilight/{p-Y2ZIN9Ok.js → p-D1oKTNWQ.js} +1 -1
  410. package/dist/twilight/{p-De1tLqQF.js → p-DUNRPrqt.js} +1 -1
  411. package/dist/twilight/{p-BxQMWsr9.js → p-DUuRpwsl.js} +1 -1
  412. package/dist/twilight/{p-NqQdbGu6.js → p-DZR3BP63.js} +1 -1
  413. package/dist/twilight/{p-12a25415.entry.js → p-a52a3664.entry.js} +1 -1
  414. package/dist/twilight/{p-d346dabd.entry.js → p-a7114995.entry.js} +1 -1
  415. package/dist/twilight/{p-8c40278d.entry.js → p-aa7494cd.entry.js} +1 -1
  416. package/dist/twilight/{p-34148827.entry.js → p-ae5d26da.entry.js} +1 -1
  417. package/dist/twilight/{p-d1121b3f.entry.js → p-b5434bcc.entry.js} +1 -1
  418. package/dist/twilight/p-b9fabd92.entry.js +4 -0
  419. package/dist/twilight/{p-bed54154.entry.js → p-bac38ed2.entry.js} +1 -1
  420. package/dist/twilight/{p-cdeb9bcc.entry.js → p-bbcfcdb0.entry.js} +1 -1
  421. package/dist/twilight/{p-f7ab5825.entry.js → p-c097cfa1.entry.js} +1 -1
  422. package/dist/twilight/p-c13e7efb.entry.js +4 -0
  423. package/dist/twilight/{p-bfd5e263.entry.js → p-d0ea4c3a.entry.js} +1 -1
  424. package/dist/twilight/{p-a44670a9.entry.js → p-d0ec7ca7.entry.js} +1 -1
  425. package/dist/twilight/{p-fddf1997.entry.js → p-d31fbdea.entry.js} +1 -1
  426. package/dist/twilight/{p-37192614.entry.js → p-d482d43e.entry.js} +1 -1
  427. package/dist/twilight/{p-b3ada3d0.entry.js → p-d5368882.entry.js} +1 -1
  428. package/dist/twilight/{p-4a3fa153.entry.js → p-d5a2a231.entry.js} +1 -1
  429. package/dist/twilight/{p-e457e68f.entry.js → p-d6705759.entry.js} +1 -1
  430. package/dist/twilight/p-d7f2a028.entry.js +4 -0
  431. package/dist/twilight/{p-0418c2df.entry.js → p-d84dedaf.entry.js} +1 -1
  432. package/dist/twilight/{p-419d6d71.entry.js → p-d8d9ff09.entry.js} +1 -1
  433. package/dist/twilight/{p-361f6033.entry.js → p-d902ad13.entry.js} +1 -1
  434. package/dist/twilight/{p-481f52b1.entry.js → p-d941dc58.entry.js} +1 -1
  435. package/dist/twilight/{p-8766e236.entry.js → p-dd046bbd.entry.js} +1 -1
  436. package/dist/twilight/{p-23772523.entry.js → p-dd21db09.entry.js} +1 -1
  437. package/dist/twilight/{p-3a632c69.entry.js → p-dd83b424.entry.js} +1 -1
  438. package/dist/twilight/{p-aa35cf98.entry.js → p-e04fb844.entry.js} +1 -1
  439. package/dist/twilight/{p-6c3084c9.entry.js → p-e60d784c.entry.js} +1 -1
  440. package/dist/twilight/{p-d8955835.entry.js → p-e6cc7742.entry.js} +1 -1
  441. package/dist/twilight/{p-5e8d019e.entry.js → p-e853ac07.entry.js} +1 -1
  442. package/dist/twilight/{p-0f25fedd.entry.js → p-e9ecae21.entry.js} +1 -1
  443. package/dist/twilight/{p-6ba3808a.entry.js → p-ebe3d316.entry.js} +1 -1
  444. package/dist/twilight/{p-5bbf17dd.entry.js → p-ec2a45fb.entry.js} +1 -1
  445. package/dist/twilight/{p-a5b732b3.entry.js → p-ef216c0a.entry.js} +1 -1
  446. package/dist/twilight/{p-78a56dc6.entry.js → p-f3306980.entry.js} +1 -1
  447. package/dist/twilight/{p-d9a1bf08.entry.js → p-f65205d5.entry.js} +1 -1
  448. package/dist/twilight/{p-e9b03e9c.entry.js → p-f6e5cd28.entry.js} +1 -1
  449. package/dist/twilight/{p-af49191f.entry.js → p-f8cfc9f7.entry.js} +1 -1
  450. package/dist/twilight/{p-9e65451e.entry.js → p-faa0b9aa.entry.js} +1 -1
  451. package/dist/twilight/{p-9e042cce.entry.js → p-fb10df18.entry.js} +1 -1
  452. package/dist/twilight/{p-e38a6793.entry.js → p-fcb1cff7.entry.js} +1 -1
  453. package/dist/twilight/{p-487b4411.entry.js → p-ff3cb99b.entry.js} +1 -1
  454. package/dist/twilight/{p-ee65c489.entry.js → p-ff4680ea.entry.js} +1 -1
  455. package/dist/twilight/p-oL7bxwey.js +9 -0
  456. package/dist/twilight/p-q5NJ0uS-.js +4 -0
  457. package/dist/twilight/twilight.esm.js +1 -1
  458. package/dist/types/components/salla-bullet-delivery/api-service.d.ts +23 -7
  459. package/dist/types/components/salla-bullet-delivery/helpers.d.ts +68 -6
  460. package/dist/types/components/salla-bullet-delivery/icons.d.ts +14 -0
  461. package/dist/types/components/salla-bullet-delivery/interfaces.d.ts +40 -1
  462. package/dist/types/components/salla-bullet-delivery/salla-bullet-delivery.d.ts +73 -4
  463. package/dist/types/components/salla-mobile-update-modal/salla-mobile-update-modal.d.ts +44 -0
  464. package/dist/types/components/salla-quick-buy/salla-quick-buy.d.ts +18 -0
  465. package/dist/types/components/salla-rating-modal/salla-rating-modal-v2.d.ts +4 -0
  466. package/dist/types/components/salla-verify/salla-verify.d.ts +8 -0
  467. package/dist/types/components.d.ts +50 -0
  468. package/package.json +5 -5
  469. package/dist/cjs/helpers-8bMfm_mm.js +0 -329
  470. package/dist/esm/helpers-DqzaeXrL.js +0 -309
  471. package/dist/twilight/p-76584a5b.entry.js +0 -4
  472. package/dist/twilight/p-79822d99.entry.js +0 -4
  473. package/dist/twilight/p-Ca_SZn0u.js +0 -9
  474. package/dist/twilight/p-DgUQRYr2.js +0 -5
  475. package/dist/twilight/p-DqzaeXrL.js +0 -4
  476. package/dist/twilight/p-b9d67694.entry.js +0 -4
  477. package/dist/twilight/p-ba6dd59c.entry.js +0 -4
  478. package/dist/twilight/p-bac25e34.entry.js +0 -4
  479. package/dist/twilight/p-d1093a59.entry.js +0 -4
  480. package/dist/twilight/p-e24fbbb4.entry.js +0 -4
  481. package/dist/twilight/p-eefced26.entry.js +0 -4
@@ -1,9 +1,9 @@
1
1
  /*!
2
2
  * Crafted with ❤ by Salla
3
3
  */
4
- import { r as registerInstance, c as createEvent, f as forceUpdate, h, H as Host, a as getElement, e as axios } from './index-DgUQRYr2.js';
4
+ import { r as registerInstance, c as createEvent, f as forceUpdate, h, H as Host, a as getElement, e as axios } from './index-CrXKQnBu.js';
5
5
  import { C as Cart } from './cart-gFG8By9O.js';
6
- import { H as Helper } from './Helper-C1T-oD4J.js';
6
+ import { H as Helper } from './Helper-BKruFMBN.js';
7
7
  import { e as ensureOrderOptionsModal, a as appendOrderOptionsToPayload, r as resolveApplePayOrderOptions, b as reportProductOptionsValiditySync } from './apple-pay-order-options-BS2iQKah.js';
8
8
  import { a as fetchProductBoughtTogether } from './catalog-recommendations-DIAyA5MP.js';
9
9
  import { B as BellRing } from './bell-ring-D3mWkc-3.js';
@@ -11,6 +11,8 @@ import { D as DisplayType } from './interfaces-CoQJOPRz.js';
11
11
  import { g as getOptionIdFromFieldName, a as getInvisibleConditionalOptionIds, o as omitInvisibleOptionFields } from './conditional-utils-Dsr5Iw7l.js';
12
12
  import { S as SuccessIcon } from './check-BpzvJ73s.js';
13
13
  import { C as CameraIcon } from './camera-C6jIkM-X.js';
14
+ import { g as getStoredIntent } from './delivery-promise-intent-C6pZjRut.js';
15
+ import { I as isIntentAddressComplete } from './helpers-BVaKfTMx.js';
14
16
 
15
17
  var WalletIcon = `<!-- Generated by IcoMoon.io -->
16
18
  <svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 32 32">
@@ -1232,7 +1234,7 @@ const SallaProductAvailability = class {
1232
1234
  field.nextElementSibling['innerText'] = '* ' + errorMsg;
1233
1235
  }
1234
1236
  render() {
1235
- return (h(Host, { key: '1ff9ac8f5ca9b90bc9a2c0e4451b4e4214d0b68c', class: "s-product-availability-wrap" }, this.isSubscribedToProduct
1237
+ return (h(Host, { key: '8d535fe3ebb0446c6a40d6ec1edececb5b783434', class: "s-product-availability-wrap" }, this.isSubscribedToProduct
1236
1238
  ? h("div", { class: "s-product-availability-subscribed" }, h("span", { innerHTML: BellRing, class: "s-product-availability-subs-icon" }), salla.lang.get('pages.products.notify_availability_success'))
1237
1239
  :
1238
1240
  h("salla-button", { width: "wide", onClick: () => this.isUser ? this.submit() : this.openModel() }, salla.lang.get('pages.products.notify_availability')), this.isUser || this.isSubscribedToProduct ? '' : this.renderModal()));
@@ -2983,6 +2985,17 @@ const SallaApplePay = typeof window !== 'undefined' ? {
2983
2985
 
2984
2986
  SallaApplePay.initDefault();
2985
2987
 
2988
+ // A saved delivery address goes to the checkout directly, so the native sheet doesn't ask
2989
+ // Apple for one. The QR (PaymentRequest) sheet always asks, so it keeps the default flow.
2990
+ if (SallaApplePay.detail.savedAddress?.address_id) {
2991
+ if (SallaApplePay.canUseNative()) {
2992
+ SallaApplePay.detail.requiredShippingContactFields = (SallaApplePay.detail.requiredShippingContactFields || [])
2993
+ .filter((field) => field !== 'postalAddress');
2994
+ } else {
2995
+ SallaApplePay.detail.savedAddress = null;
2996
+ }
2997
+ }
2998
+
2986
2999
  // Native (Safari / Apple devices) → classic ApplePaySession. Otherwise
2987
3000
  // (non-Safari / non-Apple device) → Payment Request API, which renders
2988
3001
  // Apple's "Scan Code with iPhone" QR sheet.
@@ -3054,9 +3067,14 @@ const SallaApplePay = typeof window !== 'undefined' ? {
3054
3067
  onPaymentMethodSelected: async (event) => {
3055
3068
  salla.logger.log('🍏 Pay: onPaymentMethodSelected', event);
3056
3069
 
3057
- // perform recalculate here only if digital product
3070
+ // A saved address skips Apple's address step (postalAddress is removed), so isPhysical() is
3071
+ // false for it even though the product ships: it takes this path to refresh the total and
3072
+ // offer the carriers, since there is no shipping-contact step to do it.
3073
+ const usesSavedAddress = !!SallaApplePay.detail.savedAddress?.address_id;
3074
+
3075
+ // perform recalculate here only if digital product or a saved address
3058
3076
  // if physical recalculate performed with shipping company
3059
- if (!SallaApplePay.isPhysical()) {
3077
+ if (!SallaApplePay.isPhysical() || usesSavedAddress) {
3060
3078
  try {
3061
3079
  await SallaApplePay.recalculateTotal();
3062
3080
 
@@ -3064,7 +3082,13 @@ const SallaApplePay = typeof window !== 'undefined' ? {
3064
3082
  newTotal: SallaApplePay.prepareTotal(),
3065
3083
  newLineItems: SallaApplePay.prepareLineItems()
3066
3084
  };
3067
-
3085
+
3086
+ // A saved address skips Apple's address step, which is where the shipping methods
3087
+ // are normally offered, so offer them here with the selected one first.
3088
+ if (usesSavedAddress && SallaApplePay.shipping_methods?.length) {
3089
+ updatedPaymentDetails.newShippingMethods = SallaApplePay.savedAddressShippingMethods();
3090
+ }
3091
+
3068
3092
  salla.logger.log('🍏 Pay: completePaymentMethodSelection', updatedPaymentDetails);
3069
3093
 
3070
3094
  SallaApplePay.session.completePaymentMethodSelection(updatedPaymentDetails);
@@ -3286,6 +3310,12 @@ const SallaApplePay = typeof window !== 'undefined' ? {
3286
3310
  return SallaApplePay.abortValidateMerchant(response);
3287
3311
  }
3288
3312
  }
3313
+
3314
+ // The cart exists now, so the saved address can be set on it before the sheet opens.
3315
+ if (SallaApplePay.detail.savedAddress?.address_id) {
3316
+ await SallaApplePay.applySavedAddress();
3317
+ }
3318
+
3289
3319
  completeMerchantValidation(data.data);
3290
3320
  } catch (error) {
3291
3321
  // Handle errors
@@ -3851,6 +3881,16 @@ const SallaApplePay = typeof window !== 'undefined' ? {
3851
3881
  }
3852
3882
  },
3853
3883
 
3884
+ /** Shipping options for the sheet with the currently selected one first, so Apple keeps it selected. */
3885
+ savedAddressShippingMethods() {
3886
+ const methods = SallaApplePay.shipping_methods || [];
3887
+ const current = SallaApplePay.shippingCompany;
3888
+ const selected = methods.find((method) => method.ship_id == current?.ship_id && method.private_ship_id == current?.private_ship_id);
3889
+ const ordered = selected ? [selected, ...methods.filter((method) => method !== selected)] : methods;
3890
+
3891
+ return SallaApplePay.mappingShippingMethods(ordered);
3892
+ },
3893
+
3854
3894
  shouldUpdateShippingCompany(shippingCompany) {
3855
3895
  return SallaApplePay.shippingCompany?.ship_id != shippingCompany?.ship_id || SallaApplePay.shippingCompany?.private_ship_id != shippingCompany?.private_ship_id
3856
3896
  },
@@ -3960,6 +4000,36 @@ const SallaApplePay = typeof window !== 'undefined' ? {
3960
4000
  return response?.data?.message;
3961
4001
  });
3962
4002
  },
4003
+ /**
4004
+ * Sets the saved delivery address on the cart by its address_id (no address from Apple), then
4005
+ * picks its first shipping method, as the Apple address flow does. Throws an axios-shaped error
4006
+ * so onValidateMerchant's catch can show it through validateMerchant.onFailed.
4007
+ */
4008
+ applySavedAddress: async () => {
4009
+ const { address_id, shippingMethods } = SallaApplePay.detail.savedAddress;
4010
+ const fail = (message) => Object.assign(new Error(message), { response: { data: { error: { message } } } });
4011
+ const outOfCoverage = () => salla.lang.get('pages.checkout.address_out_of_coverage');
4012
+
4013
+ let companies;
4014
+ try {
4015
+ const { data } = await http.get(shippingMethods.url.replace('{id}', SallaApplePay.id), null, null, { address_id });
4016
+ companies = data?.data?.companies;
4017
+ } catch (error) {
4018
+ throw fail(error?.response?.data?.error?.message || outOfCoverage());
4019
+ }
4020
+
4021
+ if (!companies?.length) {
4022
+ throw fail(outOfCoverage());
4023
+ }
4024
+
4025
+ SallaApplePay.address_id = address_id;
4026
+ SallaApplePay.shipping_methods = companies;
4027
+
4028
+ const selected = await SallaApplePay.selectApplePayShippingMethod(companies[0]);
4029
+ if (selected !== true) {
4030
+ throw fail((typeof selected === 'string' && selected) || outOfCoverage());
4031
+ }
4032
+ },
3963
4033
  mappingShippingMethods: methods => methods.map(method => ({
3964
4034
  'label': method.shipping_title,
3965
4035
  'amount': method.enable_free_shipping ? 0 : method.ship_cost,
@@ -4030,6 +4100,9 @@ const SallaQuickBuy = class {
4030
4100
  /** Session from the initial gesture; begun later when there are no order options. */
4031
4101
  this.pendingApplePaySession = null;
4032
4102
  this.quickBuy = salla.lang.get('pages.products.buy_now');
4103
+ /** The guest picked "continue as guest" on the login step, so don't ask again. */
4104
+ this.choseGuest = false;
4105
+ this.cancelLoginAsk = null;
4033
4106
  /** Apple Pay onStartedSession: first call defers begin() to run the OO check; second (resolved) begins. */
4034
4107
  this.handleApplePaySessionStarted = (session) => {
4035
4108
  // Previously gated on `order_options.mandatory`, which is unrelated to CP-2836: a store with
@@ -4097,6 +4170,7 @@ const SallaQuickBuy = class {
4097
4170
  salla?.event?.off?.('product-options::donation-changed', this.donationChangedListener);
4098
4171
  salla?.product?.event?.offPriceUpdated?.(this.priceUpdatedListener);
4099
4172
  this.langUnsubscribe?.();
4173
+ this.cancelLoginAsk?.();
4100
4174
  }
4101
4175
  quickBuyHandler() {
4102
4176
  if (salla.config.isGuest() && !this.isGuestCheckout()) {
@@ -4104,6 +4178,10 @@ const SallaQuickBuy = class {
4104
4178
  salla.api.auth.requireLoginThen('salla-quick-buy::user.logged-in', () => this.quickBuyHandler());
4105
4179
  return;
4106
4180
  }
4181
+ if (this.shouldAskLoginFirst()) {
4182
+ this.askLoginFirst();
4183
+ return;
4184
+ }
4107
4185
  // Sync validate — AP needs the gesture preserved for new ApplePaySession().
4108
4186
  if (!this.validatePdpOptionsSync())
4109
4187
  return;
@@ -4171,7 +4249,10 @@ const SallaQuickBuy = class {
4171
4249
  injectFreeProductsIntoPayload(data, this.collectedFreeProducts);
4172
4250
  // if the store doesn't have Apple Pay , just create a cart and then redirect to check out page
4173
4251
  if (!this.isApplePayActive) {
4174
- return salla.api.request('checkout/mini', data, 'post')
4252
+ // tells checkout the guest already chose guest, so it opens on the guest form —
4253
+ // re-check isGuest(): a login since the choice must not send guest params authenticated
4254
+ const options = this.choseGuest && salla.config.isGuest() ? { params: { guest_checkout: 1, chose_guest: 1 } } : {};
4255
+ return salla.api.request('checkout/mini', data, 'post', options)
4175
4256
  .catch(err => this.legacyQuickPurchaseFallback(err, data))
4176
4257
  .then(resp => {
4177
4258
  // mini-checkout answers {to, url}; legacy quick-purchase answered {redirect}
@@ -4196,6 +4277,7 @@ const SallaQuickBuy = class {
4196
4277
  amount: this.applePayAmount > 0 ? this.applePayAmount : this.amount,
4197
4278
  currency: this.currency || salla.config.get('store.settings.buy_now.currency') || 'SAR', // SAR
4198
4279
  requiredShippingContactFields: this.getRequiredShippingContactFields(),
4280
+ savedAddress: this.getSavedAddressForApplePay(),
4199
4281
  shippingMethods: this.isRequireShipping ? [] : undefined,
4200
4282
  supportedNetworks: this.resolveSupportedNetworks(),
4201
4283
  supportedCountries: (Array.isArray(this.supportedCountries) && this.supportedCountries.length)
@@ -4296,6 +4378,38 @@ const SallaQuickBuy = class {
4296
4378
  salla.logger.warn('quick-buy: falling back to quick-purchase because of token_not_provided');
4297
4379
  return salla.api.request('checkout/quick-purchase/' + this.productId, data, 'post');
4298
4380
  }
4381
+ /** login-before-checkout variant: offer login or guest before buy now. Not for Apple Pay, which must open on the tap. */
4382
+ shouldAskLoginFirst() {
4383
+ return salla.config.isGuest()
4384
+ && !this.choseGuest
4385
+ && !this.isApplePayActive
4386
+ && salla.cart.loginBeforeCheckoutGroup?.() === 'variant';
4387
+ }
4388
+ askLoginFirst() {
4389
+ // a second click before the popup settles must replace the pending ask, not stack a listener
4390
+ this.cancelLoginAsk?.();
4391
+ const stop = () => {
4392
+ salla.event.off('salla-login::guest-chosen', onGuest);
4393
+ salla.event.off('salla-login::dismissed', stop);
4394
+ this.cancelLoginAsk = null;
4395
+ };
4396
+ this.cancelLoginAsk = stop;
4397
+ const onGuest = (detail) => {
4398
+ if (detail?.source !== 'buy-now')
4399
+ return;
4400
+ stop();
4401
+ this.choseGuest = true;
4402
+ this.quickBuyHandler();
4403
+ };
4404
+ salla.event.on('salla-login::guest-chosen', onGuest);
4405
+ salla.event.on('salla-login::dismissed', stop);
4406
+ this.requireLogin.emit({ productId: this.productId });
4407
+ salla.api.auth.requireLoginThen('salla-quick-buy::user.logged-in', () => {
4408
+ stop();
4409
+ this.choseGuest = false;
4410
+ this.quickBuyHandler();
4411
+ }, null, 'buy-now');
4412
+ }
4299
4413
  isGuestCheckout() {
4300
4414
  return salla.config.isGuest() && this.isGuestCheckoutAllowed() && this.isPhysicalProduct();
4301
4415
  }
@@ -4317,6 +4431,28 @@ const SallaQuickBuy = class {
4317
4431
  }
4318
4432
  return fields;
4319
4433
  }
4434
+ /**
4435
+ * The saved address the shopper confirmed in Bullet Delivery, for the checkout to use directly
4436
+ * instead of the address Apple Pay would ask for (SHPD-11082). Undefined keeps the default
4437
+ * Apple Pay address flow: no Bullet Delivery, no confirmed saved address, or a guest.
4438
+ */
4439
+ getSavedAddressForApplePay() {
4440
+ // The mini-checkout already has the shopper's address and carrier on the cart, so it keeps
4441
+ // Apple Pay's default flow; only the product's own Quick Buy uses the Bullet Delivery address.
4442
+ if (!this.isRequireShipping || salla.config.isGuest() || this.resolveCheckoutType() !== 'buy_now')
4443
+ return undefined;
4444
+ const intent = getStoredIntent();
4445
+ if (intent?.type !== 'address' || intent.scope_allocated !== true || !intent.address_id)
4446
+ return undefined;
4447
+ // A country/city-only address would place the order without a street or district and skip
4448
+ // Apple's own address step; keep the default Apple Pay address flow for it.
4449
+ if (!isIntentAddressComplete(intent))
4450
+ return undefined;
4451
+ return {
4452
+ address_id: intent.address_id,
4453
+ shippingMethods: { url: salla.url.get('checkout/{id}/shipping') },
4454
+ };
4455
+ }
4320
4456
  /** Set Apple Pay amount + currency from a price payload, always keeping the pair in one currency. */
4321
4457
  applyBaseCurrencyPrice(data) {
4322
4458
  const base = data?.base_currency_price;
@@ -4332,6 +4468,27 @@ const SallaQuickBuy = class {
4332
4468
  this.amount = data.price;
4333
4469
  this.currency = salla.config.get('user.currency_code') || this.currency || 'SAR';
4334
4470
  }
4471
+ this.applyApplePayProperties(data?.apple_pay);
4472
+ }
4473
+ /**
4474
+ * Networks/countries travel with price responses so the next sheet matches the new total
4475
+ * (the low-amount network rules depend on it; the page config is a cached render snapshot).
4476
+ * A payload without the key (product details, older backend) leaves the current source as-is.
4477
+ */
4478
+ applyApplePayProperties(applePay) {
4479
+ if (!applePay)
4480
+ return;
4481
+ if (applePay.supported_networks != null) {
4482
+ this.supportedNetworks = normalizeApplePayNetworks(applePay.supported_networks);
4483
+ }
4484
+ if (applePay.supported_countries != null) {
4485
+ this.supportedCountries = normalizeApplePayNetworks(applePay.supported_countries);
4486
+ }
4487
+ // Crossing the high-risk amount threshold can empty the list; never open a sheet with
4488
+ // nothing to charge — fall back to the generic buy-now instead.
4489
+ if (this.isApplePayActive && !this.resolveSupportedNetworks().length) {
4490
+ this.isApplePayActive = false;
4491
+ }
4335
4492
  }
4336
4493
  componentWillLoad() {
4337
4494
  console.log('🍏 Pay: Quick Buy Component Loaded');
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * Crafted with ❤ by Salla
3
3
  */
4
- import { r as registerInstance, h, a as getElement } from './index-DgUQRYr2.js';
4
+ import { r as registerInstance, h, a as getElement } from './index-CrXKQnBu.js';
5
5
 
6
6
  const sallaAdvertisementCss = "/*!twlt*/:host{display:block}.s-advertisement-animate-in{animation:s-advertisement-in 300ms cubic-bezier(0.45, 0, 0.55, 1) both}.s-advertisement-animate-out{animation:s-advertisement-out 300ms cubic-bezier(0.45, 0, 0.55, 1) both}@keyframes s-advertisement-in{from{height:0;opacity:0}to{height:var(--s-advertisement-height);opacity:1}}@keyframes s-advertisement-out{from{height:var(--s-advertisement-height);opacity:1}to{height:0;opacity:0}}.visible{visibility:visible}.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-hidden{display:none}.s-advertisement-content{width:100%;margin-right:auto;margin-left:auto;padding-right:10px;padding-left:10px}@media (min-width: 1280px){.s-advertisement-content{max-width:1280px}}.s-advertisement-content{display:flex;align-items:center;justify-content:space-between;padding-top:0.625rem;padding-bottom:0.625rem}.s-advertisement-content-main{flex:1 1 0%;text-align:center;font-size:0.875rem;line-height:1.25rem;font-weight:700}.s-advertisement-content-icon{display:inline-block;vertical-align:middle;font-size:1rem;line-height:1.5rem}.s-advertisement-content-icon:where([dir=\"ltr\"],[dir=\"ltr\"] *){margin-right:0.5rem}.s-advertisement-content-icon:where([dir=\"rtl\"],[dir=\"rtl\"] *){margin-left:0.5rem}.s-advertisement-action{padding-left:0.25rem;padding-right:0.25rem}";
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-DgUQRYr2.js';
4
+ import { r as registerInstance, h, H as Host, a as getElement } from './index-CrXKQnBu.js';
5
5
  import { C as Cart } from './cart-gFG8By9O.js';
6
6
  import { I as ImageIcon } from './image-C-tzSDxw.js';
7
7
  import { s as setTranslationDefault } from './translate-CxrJQ3Jf.js';
@@ -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-DgUQRYr2.js';
4
+ import { r as registerInstance, h, H as Host, a as getElement } from './index-CrXKQnBu.js';
5
5
 
6
6
  const sallaAppInstallAlertCss = "/*!twlt*/:host{display:block}.s-app-install-alert-wrapper{display:none;flex-direction:row;align-items:center;position:fixed;left:0;right:0;width:95%;margin-top:1rem;margin-bottom:1rem;margin-left:auto;margin-right:auto;z-index:999;border-radius:0.375rem;padding:0.75rem;gap:0.5rem;background-color:color-mix(in srgb, var(--color-primary) 15%, white);filter:drop-shadow(0 4px 3px rgba(0, 0, 0, 0.07)) drop-shadow(0 2px 2px rgba(0, 0, 0, 0.06))}.s-app-install-alert-wrapper.open[position=top]{display:flex;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))}@keyframes slideDownFromTop{0%{transform:translateY(-100%);opacity:0}100%{transform:translateY(-0%);opacity:1}}.s-app-install-alert-wrapper.open[position=top]{animation:slideDownFromTop .6s linear;transition-duration:500ms}.s-app-install-alert-wrapper:not(.open){display:none}.s-app-install-alert-content{width:100%}.s-app-install-alert-wrapper[position=top]{top:0px}.s-app-install-alert-wrapper.open[position=bottom]{display:flex}@keyframes slideUpFromBottom{0%{transform:translateY(100%);opacity:0}100%{transform:translateY(0%);opacity:1}}.s-app-install-alert-wrapper.open[position=bottom]{animation:slideUpFromBottom .6s linear}.s-app-install-alert-wrapper[position=bottom]{bottom:0px}@keyframes slideUPFromTop{0%{transform:translateY(-0%);opacity:1}100%{transform:translateY(-100%);opacity:0}}.s-app-install-alert-wrapper[position=top].closing{animation:slideUPFromTop .6s linear}@keyframes slideDownFromBottom{0%{transform:translateY(0%);opacity:1}100%{transform:translateY(100%);opacity:0}}.s-app-install-alert-wrapper[position=bottom].closing{animation:slideDownFromBottom .6s linear}.s-app-install-alert-wrapper.closing{animation-fill-mode:forwards}.s-app-install-alert-title{max-width:95%;font-size:1rem;line-height:1.5rem;font-weight:700;color:var(--color-primary)}.s-app-install-alert-sub-title{max-width:95%;font-size:0.875rem;line-height:1.25rem;font-weight:400}.s-app-install-alert-cta{color:var(--color-primary);text-decoration-line:underline}.s-app-install-alert-cancel-button{position:absolute;top:0.5rem}.s-app-install-alert-cancel-button:where([dir=\"ltr\"],[dir=\"ltr\"] *){right:0.75rem}.s-app-install-alert-cancel-button:where([dir=\"rtl\"],[dir=\"rtl\"] *){left:0.75rem}";
7
7
 
@@ -1,8 +1,8 @@
1
1
  /*!
2
2
  * Crafted with ❤ by Salla
3
3
  */
4
- import { r as registerInstance, h, H as Host } from './index-DgUQRYr2.js';
5
- import { H as Helper, F as FilterOptionTypes } from './Helper-C1T-oD4J.js';
4
+ import { r as registerInstance, h, H as Host } from './index-CrXKQnBu.js';
5
+ import { H as Helper, F as FilterOptionTypes } from './Helper-BKruFMBN.js';
6
6
 
7
7
  const sallaAppliedFiltersCss = "/*!twlt*/:host{display:block}.s-applied-filters-tags{display:flex;flex-wrap:wrap;align-items:center;gap:0.5rem;margin-bottom:1rem}.s-applied-filters-tag{display:inline-flex;align-items:center;gap:0.4rem;border-radius:999px;border:1px solid #e8e8e8;background:rgba(255, 255, 255, 0.3);color:var(--main-text-color);font-size:0.85rem;line-height:1;padding:0.4rem 0.65rem}.s-applied-filters-tag-remove{display:inline-flex;align-items:center;justify-content:center;border:0;padding:0;background:transparent;color:inherit;font-size:0.75rem;cursor:pointer}.s-applied-filters-clear-tag{display:inline-flex;align-items:center;gap:0.4rem;border-radius:999px;border:1px solid var(--color-danger, #dc3545);background:transparent;color:var(--color-danger, #dc3545);font-size:0.85rem;line-height:1;padding:0.4rem 0.65rem;cursor:pointer}.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-applied-filters-wrapper{display:block}.s-applied-filters-tags{margin-bottom:1rem;display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;gap:0.5rem}.s-applied-filters-tag{display:inline-flex;align-items:center;gap:0.375rem;border-radius:9999px;border-width:1px;--tw-border-opacity:1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));background-color:rgb(255 255 255 / 0.3);padding-top:0.375rem;padding-bottom:0.375rem;padding-left:0.625rem;padding-right:0.625rem;font-size:0.875rem;line-height:1.25rem;color:var(--main-text-color)}.s-applied-filters-tag-name{color:inherit}.s-applied-filters-tag-remove{display:inline-flex;cursor:pointer;align-items:center;justify-content:center;border-width:0px;background-color:transparent;padding:0px;font-size:0.75rem;line-height:1rem;color:inherit}.s-applied-filters-clear-tag{display:inline-flex;cursor:pointer;align-items:center;gap:0.375rem;border-radius:9999px;border-width:1px;--tw-border-opacity:1;border-color:rgb(248 113 113 / var(--tw-border-opacity, 1));background-color:transparent;padding-top:0.375rem;padding-bottom:0.375rem;padding-left:0.625rem;padding-right:0.625rem;font-size:0.875rem;line-height:1.25rem;--tw-text-opacity:1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}";
8
8
 
@@ -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-DgUQRYr2.js';
4
+ import { r as registerInstance, h, H as Host, a as getElement } from './index-CrXKQnBu.js';
5
5
  import { i as isSallaSdkAvailable } from './ssr-helpers-DgheRYLY.js';
6
6
 
7
7
  const sallaAppsIconsCss = "/*!twlt*/:host{display:block}.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-apps-icons-list{display:flex;gap:1rem}.s-apps-icons-list.vertical{flex-direction:column}.s-apps-icons-item{line-height:1}.s-apps-icons-item:hover{color:var(--color-primary)}";
@@ -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, c as createEvent } from './index-DgUQRYr2.js';
4
+ import { r as registerInstance, h, H as Host, a as getElement, c as createEvent } from './index-CrXKQnBu.js';
5
5
  import { i as isVideoMimeType, a as isImageMimeType, u as usesSplitCountLimits, g as getMaxImagesCount, c as getMaxVideosCount, d as getTotalMaxFiles, p as parseSizeToBytes, e as getFilePondMaxFileSize, f as getUploadErrorMessage, h as formatBytesAsSize, j as formatDuration, s as shouldCountGalleryFile, k as shouldCountGalleryLimit } from './upload-limits-DrXX8XG8.js';
6
6
  import { S as SICalendar } from './calendar-BkmanTR_.js';
7
7
  import { s as setTranslationDefault } from './translate-CxrJQ3Jf.js';
@@ -10,7 +10,7 @@ import { i as isSallaSdkAvailable, b as getSdkValueOrFallbackAsync, g as getSdkV
10
10
  import { m as matchesTextCondition } from './conditional-utils-Dsr5Iw7l.js';
11
11
  import { C as Cancel } from './cancel-BsLF_HK7.js';
12
12
  import { p as plusIcon, m as minusIcon } from './minus-DfeagqF1.js';
13
- import { H as Helper } from './Helper-C1T-oD4J.js';
13
+ import { H as Helper } from './Helper-BKruFMBN.js';
14
14
  import './interfaces-CoQJOPRz.js';
15
15
 
16
16
  var PlayIcon = `<!-- Generated by IcoMoon.io -->
@@ -792,7 +792,7 @@ const SallaColorPicker = class {
792
792
  }
793
793
  }
794
794
  initColorPicker() {
795
- this.pickerReady = import('./vanilla-picker-Buy50D7t.js').then(function (n) { return n.v; }).then(mod => {
795
+ this.pickerReady = import('./vanilla-picker-eSagUASw.js').then(function (n) { return n.v; }).then(mod => {
796
796
  const Picker = mod.default;
797
797
  const picker = new Picker({
798
798
  parent: this.host,
@@ -1257,13 +1257,13 @@ const SallaFileUpload = class {
1257
1257
  return;
1258
1258
  try {
1259
1259
  const [FilePondModule, FilePondPluginFileValidateSize, FilePondPluginImageExifOrientation, FilePondPluginImagePreview, FilePondPluginImageEdit, FilePondPluginFileValidateType, FilePondPluginFilePoster] = await Promise.all([
1260
- import('./filepond-BoWJzHeN.js').then(function (n) { return n.f; }),
1261
- import('./filepond-plugin-file-validate-size-Dds_462B.js').then(function (n) { return n.f; }),
1262
- import('./filepond-plugin-image-exif-orientation-CyhxK_6R.js').then(function (n) { return n.f; }),
1263
- import('./filepond-plugin-image-preview-DdKqAzT9.js').then(function (n) { return n.f; }),
1264
- import('./filepond-plugin-image-edit-CN7eGg-7.js').then(function (n) { return n.f; }),
1265
- import('./filepond-plugin-file-validate-type-DrfGXNay.js').then(function (n) { return n.f; }),
1266
- import('./filepond-plugin-file-poster-B6MkMtuC.js').then(function (n) { return n.f; })
1260
+ import('./filepond-Vl6a--vT.js').then(function (n) { return n.f; }),
1261
+ import('./filepond-plugin-file-validate-size-BrHjddJa.js').then(function (n) { return n.f; }),
1262
+ import('./filepond-plugin-image-exif-orientation-gzIIB75B.js').then(function (n) { return n.f; }),
1263
+ import('./filepond-plugin-image-preview-BwbtnJIU.js').then(function (n) { return n.f; }),
1264
+ import('./filepond-plugin-image-edit-DW6JzY39.js').then(function (n) { return n.f; }),
1265
+ import('./filepond-plugin-file-validate-type-BeMZq9Fl.js').then(function (n) { return n.f; }),
1266
+ import('./filepond-plugin-file-poster-CrQqmzd5.js').then(function (n) { return n.f; })
1267
1267
  ]);
1268
1268
  this.FilePond = FilePondModule;
1269
1269
  // Register plugins
@@ -2570,7 +2570,7 @@ const SallaQuantityInput = class {
2570
2570
  if (!inputAttributes['aria-label'] && !inputAttributes['aria-labelledby']) {
2571
2571
  inputAttributes['aria-label'] = getSdkValueOrFallback(undefined, () => salla.lang.getWithDefault('common.elements.quantity', 'Quantity'), 'Quantity');
2572
2572
  }
2573
- return (h(Host, { key: 'e5bc3cde1c4f6eda2d515a83f227bde3c92bbecb', class: "s-quantity-input" }, h("div", { key: 'b7a80aa9d3d1b37ba7a57b36a18c230c30e92f2f', class: "s-quantity-input-container" }, h("button", { key: 'b9c60559d7adea97f15e6cfc5ed83d244af0a291', onClick: () => this.increase(), class: "s-quantity-input-increase-button s-quantity-input-button", type: "button", "aria-label": getSdkValueOrFallback(undefined, () => salla.lang.getWithDefault('common.elements.increase_quantity', 'Increase quantity'), 'Increase quantity') }, !this.hasIncrementSlot ? h("span", { innerHTML: plusIcon }) : '', h("slot", { key: '9096d5bd9d412499e6a76e420a3385301b3b97c3', name: "increment-button" })), h("input", { key: '587e8a3d6e7c76b9a28f663d7d88667b46b8e002', class: "s-quantity-input-input", ...inputAttributes, ref: (el) => this.textInput = el, onInput: (event) => this.setValue(event.target.value), inputMode: "numeric", pattern: "[0-9]*", min: "1", readOnly: this.disableInput, value: this.quantity }), h("button", { key: '2087a1aacfb62ae93718cf3f553211997480dad8', class: "s-quantity-input-decrease-button s-quantity-input-button", onClick: () => this.decrease(), type: "button", "aria-label": getSdkValueOrFallback(undefined, () => salla.lang.getWithDefault('common.elements.decrease_quantity', 'Decrease quantity'), 'Decrease quantity') }, !this.hasDecrementSlot ? h("span", { innerHTML: minusIcon }) : '', h("slot", { key: '5c639d8537ba1d0cc385ba25a8e680022b446028', name: "decrement-button" })))));
2573
+ return (h(Host, { key: '6740abf0724452cb0931889f40eb03318c04c4f2', class: "s-quantity-input" }, h("div", { key: 'fd49dd951d1ed0eed508665ef23718fef775cfa8', class: "s-quantity-input-container" }, h("button", { key: 'e8216ee643766ec8ddd7938fc5143dc76db479df', onClick: () => this.increase(), class: "s-quantity-input-increase-button s-quantity-input-button", type: "button", "aria-label": getSdkValueOrFallback(undefined, () => salla.lang.getWithDefault('common.elements.increase_quantity', 'Increase quantity'), 'Increase quantity') }, !this.hasIncrementSlot ? h("span", { innerHTML: plusIcon }) : '', h("slot", { key: '6795b630592a04fa8edada9ff31108915cb5c6b9', name: "increment-button" })), h("input", { key: 'd43559ee2c1930664d9c813570412aec8035f4ca', class: "s-quantity-input-input", ...inputAttributes, ref: (el) => this.textInput = el, onInput: (event) => this.setValue(event.target.value), inputMode: "numeric", pattern: "[0-9]*", min: "1", readOnly: this.disableInput, value: this.quantity }), h("button", { key: 'dd9346b8c71513571a4388700d640f37266ebbd5', class: "s-quantity-input-decrease-button s-quantity-input-button", onClick: () => this.decrease(), type: "button", "aria-label": getSdkValueOrFallback(undefined, () => salla.lang.getWithDefault('common.elements.decrease_quantity', 'Decrease quantity'), 'Decrease quantity') }, !this.hasDecrementSlot ? h("span", { innerHTML: minusIcon }) : '', h("slot", { key: '7b905f3a8708a75b81a8478fd63c1f20744d9c87', name: "decrement-button" })))));
2574
2574
  }
2575
2575
  get host() { return getElement(this); }
2576
2576
  static get watchers() { return {
@@ -2613,7 +2613,7 @@ const SallaTelInput = class {
2613
2613
  if (this.TelInput)
2614
2614
  return;
2615
2615
  try {
2616
- const telInputModule = await import('./intlTelInput-SwlavcFB.js').then(function (n) { return n.i; });
2616
+ const telInputModule = await import('./intlTelInput-BkjSbnO6.js').then(function (n) { return n.i; });
2617
2617
  this.TelInput = telInputModule.default;
2618
2618
  }
2619
2619
  catch (error) {
@@ -2724,7 +2724,7 @@ const SallaTelInput = class {
2724
2724
  }
2725
2725
  }
2726
2726
  render() {
2727
- return (h(Host, { key: '7616b0d80100d5032a8fc0c8c57880463764277e', class: "s-tel-input" }, h("input", { key: '321cf9386c2fa477f7f8286330e95003e114cfa2', type: "tel", disabled: this.disabled, name: this.name, value: this.phone, onChange: (event) => this.handleCountryInput(event), ref: el => this.phoneInput = el, enterkeyhint: "next", autocomplete: "tel", class: "s-tel-input-control tel-input s-ltr" }), h("span", { key: '8166effadc8d574feb279fcb23fd779678bbbc8a', class: "s-tel-input-error-msg", ref: el => this.errorMsg = el }), h("input", { key: '9fecbe3307f3da9524424a7db4ea1d6e65adabaf', type: "hidden", name: "country_code", value: this.countryCode, ref: el => this.countryCodeInput = el, class: "country_code" })));
2727
+ return (h(Host, { key: '1ac7260480017f583ad9a85e3184e91aed10c44f', class: "s-tel-input" }, h("input", { key: 'b67e55b6cc4154d4743dee20be5d9fb5b000e698', type: "tel", disabled: this.disabled, name: this.name, value: this.phone, onChange: (event) => this.handleCountryInput(event), ref: el => this.phoneInput = el, enterkeyhint: "next", autocomplete: "tel", class: "s-tel-input-control tel-input s-ltr" }), h("span", { key: '2533925768fe0265fbea2552540734d5cac0b9aa', class: "s-tel-input-error-msg", ref: el => this.errorMsg = el }), h("input", { key: '0bb28963824dbc6e12ececc76f9e756e1a0e150e', type: "hidden", name: "country_code", value: this.countryCode, ref: el => this.countryCodeInput = el, class: "country_code" })));
2728
2728
  }
2729
2729
  componentDidLoad() {
2730
2730
  this.initPromise = this.initTelInput();
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * Crafted with ❤ by Salla
3
3
  */
4
- import { r as registerInstance, h } from './index-DgUQRYr2.js';
4
+ import { r as registerInstance, h } from './index-CrXKQnBu.js';
5
5
 
6
6
  function r(e){var t,f,n="";if("string"==typeof e||"number"==typeof e)n+=e;else if("object"==typeof e)if(Array.isArray(e))for(t=0;t<e.length;t++)e[t]&&(f=r(e[t]))&&(n&&(n+=" "),n+=f);else for(t in e)e[t]&&(n&&(n+=" "),n+=t);return n}function clsx(){for(var e,t,f=0,n="";f<arguments.length;)(e=arguments[f++])&&(t=r(e))&&(n&&(n+=" "),n+=t);return n}
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-DgUQRYr2.js';
4
+ import { r as registerInstance, h, H as Host, a as getElement } from './index-CrXKQnBu.js';
5
5
  import { f as fetchCartBoughtTogether } from './catalog-recommendations-DIAyA5MP.js';
6
6
 
7
7
  const sallaBasketGapCss = "/*!twlt*/:host{display:block}.block{display:block}.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-basket-gap-entry{margin-top:1.25rem;margin-bottom:1.25rem;display:block;border-radius:0.375rem;--tw-bg-opacity:1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));padding:1.25rem}.s-basket-gap-title{margin-bottom:1rem;font-size:1.125rem;line-height:1.75rem;font-weight:700}.s-basket-gap-list{display:flex;flex-direction:column}.s-basket-gap-list>:not([hidden])~:not([hidden]){--tw-divide-y-reverse:0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse));--tw-divide-opacity:1;border-color:rgb(243 244 246 / var(--tw-divide-opacity, 1))}.s-basket-gap-card{display:flex;flex-wrap:wrap;align-items:center;column-gap:0.75rem;row-gap:0.625rem;padding-top:1rem;padding-bottom:1rem}.s-basket-gap-card-image{height:4rem;width:4rem;flex-shrink:0;overflow:hidden;border-radius:0.375rem;border-width:1px;--tw-border-opacity:1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1))}.s-basket-gap-card-image img{height:100%;width:100%;object-fit:cover}.s-basket-gap-card-info{display:flex;min-width:0px;flex:1 1 0%;flex-direction:column;gap:0.25rem}.s-basket-gap-card-actions{display:flex;width:100%;align-items:center;justify-content:flex-end;gap:0.5rem}@media (min-width: 640px){.s-basket-gap-card-actions{width:auto}}.s-basket-gap-card-name{font-size:0.875rem;line-height:1.25rem;font-weight:600;line-height:1.25;--tw-text-opacity:1;color:rgb(31 41 55 / var(--tw-text-opacity, 1))}.s-basket-gap-card-name a:hover{color:var(--color-primary)}.s-basket-gap-card-price{font-size:0.875rem;line-height:1.25rem;--tw-text-opacity:1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.s-basket-gap-card-sale-price{display:flex;align-items:center;gap:0.5rem}.s-basket-gap-card-sale-price span{font-size:0.875rem;line-height:1.25rem;font-weight:700;--tw-text-opacity:1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.s-basket-gap-card-sale-price del{font-size:0.75rem;line-height:1rem;--tw-text-opacity:1;color:rgb(156 163 175 / var(--tw-text-opacity, 1));text-decoration-line:line-through}.s-basket-gap-card-weight{font-size:0.75rem;line-height:1rem;--tw-text-opacity:1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.s-basket-gap-card-offer{display:flex;flex-shrink:0;align-items:center;gap:0.25rem;border-radius:0.375rem;--tw-bg-opacity:1;background-color:rgb(240 253 244 / var(--tw-bg-opacity, 1));padding-left:9px;padding-right:9px;padding-top:3px;padding-bottom:3px;font-size:11px;font-weight:500;--tw-text-opacity:1;color:rgb(21 128 61 / var(--tw-text-opacity, 1))}.s-basket-gap-card-offer i{font-size:0.75rem;line-height:1rem}.s-basket-gap-card-offer span{font-weight:700;--tw-text-opacity:1 !important;color:rgb(31 41 55 / var(--tw-text-opacity, 1)) !important}.s-basket-gap-card-offer salla-count-down{flex-shrink:0}.s-basket-gap-card-offer salla-count-down:where([dir=\"ltr\"],[dir=\"ltr\"] *){margin-inline-start:0.25rem}.s-basket-gap-card-offer salla-count-down:where([dir=\"rtl\"],[dir=\"rtl\"] *){margin-inline-end:0.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-basket-gap-card-btn{flex-shrink:0}.s-basket-gap-card-btn salla-button .s-button-btn{border-radius:var(--s-radius, 0.25rem);border-width:1px !important;border-color:var(--color-primary) !important;background-color:transparent !important;color:var(--color-primary) !important}.s-basket-gap-card-btn salla-button .s-button-btn:hover{background-color:var(--color-primary) !important;--tw-text-opacity:1 !important;color:rgb(255 255 255 / var(--tw-text-opacity, 1)) !important}.s-basket-gap-card-btn salla-button .s-button-loader:before{border-top-color:var(--color-primary) !important;border-left-color:var(--color-primary) !important;border-bottom-color:rgb(243 244 246 / var(--tw-border-opacity, 1)) !important;--tw-border-opacity:1 !important;border-right-color:rgb(243 244 246 / var(--tw-border-opacity, 1)) !important}.s-basket-gap-skeleton{display:flex;flex-direction:column;gap:0.75rem}.s-basket-gap-skeleton-card{display:flex;align-items:center;gap:0.75rem;padding-top:0.75rem;padding-bottom:0.75rem}.s-basket-gap-skeleton-info{display:flex;flex:1 1 0%;flex-direction:column;gap:0.5rem}";