@salla.sa/twilight-components 2.14.595 → 2.14.597

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 (542) hide show
  1. package/dist/cjs/{filepond-BmX7bEQk.js → filepond-Dw1N5qBB.js} +1 -1
  2. package/dist/cjs/{filepond-plugin-file-poster-Cs6e85Vn.js → filepond-plugin-file-poster-C1ipzdpz.js} +1 -1
  3. package/dist/cjs/{filepond-plugin-file-validate-size-CSk66JAo.js → filepond-plugin-file-validate-size-DbTJ1H8k.js} +1 -1
  4. package/dist/cjs/{filepond-plugin-file-validate-type-Piu3p2Um.js → filepond-plugin-file-validate-type-CDOD2WKz.js} +1 -1
  5. package/dist/cjs/{filepond-plugin-image-edit-Ba9FBal4.js → filepond-plugin-image-edit-CP7JkpKx.js} +1 -1
  6. package/dist/cjs/{filepond-plugin-image-exif-orientation-zwtgHyrT.js → filepond-plugin-image-exif-orientation-Bm5i6zMO.js} +1 -1
  7. package/dist/cjs/{filepond-plugin-image-preview-BmGjui8n.js → filepond-plugin-image-preview-INllb63L.js} +1 -1
  8. package/dist/cjs/{index-DkrDtx6i.js → index-DIEWuq3M.js} +2 -2
  9. package/dist/cjs/{intlTelInput-Bty1-N7J.js → intlTelInput-bnpl10H7.js} +1 -1
  10. package/dist/cjs/loader.cjs.js +2 -2
  11. package/dist/cjs/salla-accordion-body_2.cjs.entry.js +1 -1
  12. package/dist/cjs/salla-accordion_6.cjs.entry.js +10 -18
  13. package/dist/cjs/salla-add-product-button_5.cjs.entry.js +37 -15
  14. package/dist/cjs/salla-advertisement.cjs.entry.js +1 -1
  15. package/dist/cjs/salla-alert_2.cjs.entry.js +26 -20
  16. package/dist/cjs/salla-app-install-alert.cjs.entry.js +1 -1
  17. package/dist/cjs/salla-applied-filters.cjs.entry.js +1 -1
  18. package/dist/cjs/salla-apps-icons.cjs.entry.js +7 -2
  19. package/dist/cjs/salla-attachment-view_9.cjs.entry.js +79 -40
  20. package/dist/cjs/salla-badge.cjs.entry.js +1 -1
  21. package/dist/cjs/salla-basket-gap.cjs.entry.js +1 -1
  22. package/dist/cjs/salla-bullet-delivery_3.cjs.entry.js +2 -2
  23. package/dist/cjs/salla-cart-coupons.cjs.entry.js +1 -1
  24. package/dist/cjs/salla-cart-item-offers_2.cjs.entry.js +12 -5
  25. package/dist/cjs/salla-cart-summary-card.cjs.entry.js +1 -1
  26. package/dist/cjs/salla-cashback-banner.cjs.entry.js +1 -1
  27. package/dist/cjs/salla-comment-factors.cjs.entry.js +1 -1
  28. package/dist/cjs/salla-comment-form_9.cjs.entry.js +67 -25
  29. package/dist/cjs/salla-conditional-offer.cjs.entry.js +1 -1
  30. package/dist/cjs/salla-contacts.cjs.entry.js +10 -3
  31. package/dist/cjs/salla-cookies-bar.cjs.entry.js +1 -1
  32. package/dist/cjs/salla-count-down.cjs.entry.js +17 -12
  33. package/dist/cjs/salla-custom-fields.cjs.entry.js +1 -1
  34. package/dist/cjs/salla-delivery-promise.cjs.entry.js +1 -1
  35. package/dist/cjs/salla-edit-order-button.cjs.entry.js +1 -1
  36. package/dist/cjs/salla-filters-widget.cjs.entry.js +7 -4
  37. package/dist/cjs/salla-filters.cjs.entry.js +10 -5
  38. package/dist/cjs/salla-fulfillment-methods.cjs.entry.js +1 -1
  39. package/dist/cjs/salla-gift-card-redeem_2.cjs.entry.js +1 -1
  40. package/dist/cjs/salla-gifting.cjs.entry.js +12 -7
  41. package/dist/cjs/salla-hook.cjs.entry.js +2 -2
  42. package/dist/cjs/salla-infinite-scroll.cjs.entry.js +7 -2
  43. package/dist/cjs/salla-installment.cjs.entry.js +1 -1
  44. package/dist/cjs/salla-list-tile.cjs.entry.js +1 -1
  45. package/dist/cjs/salla-localization-modal.cjs.entry.js +14 -2
  46. package/dist/cjs/salla-login-modal.cjs.entry.js +1 -1
  47. package/dist/cjs/salla-loyalty-banner_10.cjs.entry.js +1 -1
  48. package/dist/cjs/salla-loyalty-exchange-product-card.cjs.entry.js +1 -1
  49. package/dist/cjs/salla-loyalty-points-banner.cjs.entry.js +1 -1
  50. package/dist/cjs/salla-loyalty-points-history.cjs.entry.js +1 -1
  51. package/dist/cjs/salla-loyalty-prize-item.cjs.entry.js +1 -1
  52. package/dist/cjs/salla-loyalty.cjs.entry.js +12 -5
  53. package/dist/cjs/salla-maintenance-alert.cjs.entry.js +1 -1
  54. package/dist/cjs/salla-map_3.cjs.entry.js +39 -15
  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 +1 -1
  58. package/dist/cjs/salla-multiple-bundle-product-options-modal_2.cjs.entry.js +1 -1
  59. package/dist/cjs/salla-multiple-bundle-product.cjs.entry.js +1 -1
  60. package/dist/cjs/salla-next-order-coupon.cjs.entry.js +1 -1
  61. package/dist/cjs/salla-notification-item_2.cjs.entry.js +7 -2
  62. package/dist/cjs/salla-offer-modal.cjs.entry.js +14 -7
  63. package/dist/cjs/salla-offer.cjs.entry.js +14 -9
  64. package/dist/cjs/salla-order-branch.cjs.entry.js +42 -4
  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 +1 -1
  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 +1 -1
  71. package/dist/cjs/salla-order-edit.cjs.entry.js +1 -1
  72. package/dist/cjs/salla-order-options-modal.cjs.entry.js +1 -1
  73. package/dist/cjs/salla-order-shipments.cjs.entry.js +1 -1
  74. package/dist/cjs/salla-order-summary.cjs.entry.js +7 -4
  75. package/dist/cjs/salla-order-totals-card.cjs.entry.js +2 -2
  76. package/dist/cjs/salla-orders.cjs.entry.js +10 -6
  77. package/dist/cjs/salla-payments.cjs.entry.js +1 -1
  78. package/dist/cjs/salla-placeholder.cjs.entry.js +10 -3
  79. package/dist/cjs/salla-price-range.cjs.entry.js +7 -4
  80. package/dist/cjs/salla-product-card-embed.cjs.entry.js +1 -1
  81. package/dist/cjs/salla-product-card.cjs.entry.js +14 -9
  82. package/dist/cjs/salla-product-size-guide.cjs.entry.js +9 -4
  83. package/dist/cjs/salla-products-list.cjs.entry.js +5 -4
  84. package/dist/cjs/salla-products-slider.cjs.entry.js +1 -1
  85. package/dist/cjs/salla-quick-order.cjs.entry.js +7 -2
  86. package/dist/cjs/salla-rating-modal-v2.cjs.entry.js +1 -1
  87. package/dist/cjs/salla-rating-modal.cjs.entry.js +9 -3
  88. package/dist/cjs/salla-review-factors-tags.cjs.entry.js +1 -1
  89. package/dist/cjs/salla-review-order-item.cjs.entry.js +1 -1
  90. package/dist/cjs/salla-scopes.cjs.entry.js +9 -2
  91. package/dist/cjs/salla-search-product-card.cjs.entry.js +1 -1
  92. package/dist/cjs/salla-search.cjs.entry.js +1 -1
  93. package/dist/cjs/salla-skeleton.cjs.entry.js +8 -8
  94. package/dist/cjs/salla-social-share.cjs.entry.js +1 -1
  95. package/dist/cjs/salla-social.cjs.entry.js +8 -3
  96. package/dist/cjs/salla-tab-content_3.cjs.entry.js +4 -4
  97. package/dist/cjs/salla-tiered-offer.cjs.entry.js +7 -2
  98. package/dist/cjs/salla-trust-badges.cjs.entry.js +8 -4
  99. package/dist/cjs/salla-user-menu.cjs.entry.js +7 -1
  100. package/dist/cjs/salla-user-profile.cjs.entry.js +7 -3
  101. package/dist/cjs/salla-user-settings.cjs.entry.js +8 -3
  102. package/dist/cjs/salla-verify.cjs.entry.js +13 -6
  103. package/dist/cjs/salla-wallet.cjs.entry.js +1 -1
  104. package/dist/cjs/salla-wishlist-actions.cjs.entry.js +1 -1
  105. package/dist/cjs/salla-wishlist-summary.cjs.entry.js +1 -1
  106. package/dist/cjs/translate-Cvomt6Jh.js +58 -0
  107. package/dist/cjs/twilight.cjs.js +2 -2
  108. package/dist/cjs/{vanilla-picker-DgPfWupN.js → vanilla-picker-BaSDLxjI.js} +1 -1
  109. package/dist/collection/Helpers/translate.js +36 -0
  110. package/dist/collection/components/salla-add-product-button/salla-add-product-button.js +7 -2
  111. package/dist/collection/components/salla-alert/salla-alert.js +5 -5
  112. package/dist/collection/components/salla-apps-icons/salla-apps-icons.js +6 -1
  113. package/dist/collection/components/salla-booking-field/salla-booking-field.js +10 -4
  114. package/dist/collection/components/salla-bottom-alert/salla-bottom-alert.js +23 -17
  115. package/dist/collection/components/salla-bullet-delivery/salla-bullet-delivery.css +2 -0
  116. package/dist/collection/components/salla-button/salla-button.js +19 -27
  117. package/dist/collection/components/salla-cart-item-offers/salla-cart-item-offers.js +10 -3
  118. package/dist/collection/components/salla-cart-summary/salla-cart-summary.js +2 -2
  119. package/dist/collection/components/salla-comment-form/salla-comment-form.js +10 -5
  120. package/dist/collection/components/salla-comments/salla-comment-item.js +8 -2
  121. package/dist/collection/components/salla-comments/salla-comments.js +32 -5
  122. package/dist/collection/components/salla-contacts/salla-contacts.js +9 -2
  123. package/dist/collection/components/salla-count-down/salla-count-down.js +23 -18
  124. package/dist/collection/components/salla-custom-fields/salla-custom-fields.js +4 -0
  125. package/dist/collection/components/salla-file-upload/salla-file-upload.css +3 -0
  126. package/dist/collection/components/salla-file-upload/salla-file-upload.js +36 -7
  127. package/dist/collection/components/salla-filters/salla-filters.js +10 -5
  128. package/dist/collection/components/salla-filters-widget/salla-filters-widget.js +6 -3
  129. package/dist/collection/components/salla-gifting/salla-gifting.js +11 -6
  130. package/dist/collection/components/salla-hook/salla-hook.js +5 -1
  131. package/dist/collection/components/salla-infinite-scroll/salla-infinite-scroll.js +6 -1
  132. package/dist/collection/components/salla-localization-modal/salla-localization-modal.js +15 -2
  133. package/dist/collection/components/salla-loyalty/salla-loyalty.js +12 -5
  134. package/dist/collection/components/salla-map/salla-map.js +12 -7
  135. package/dist/collection/components/salla-notifications/salla-notifications.js +6 -1
  136. package/dist/collection/components/salla-offer/salla-offer.js +12 -7
  137. package/dist/collection/components/salla-offer-modal/salla-offer-modal.js +13 -6
  138. package/dist/collection/components/salla-order-branch/salla-order-branch.css +35 -0
  139. package/dist/collection/components/salla-order-branch/salla-order-branch.js +40 -2
  140. package/dist/collection/components/salla-order-summary/salla-order-summary.js +6 -3
  141. package/dist/collection/components/salla-order-totals-card/salla-order-totals-card.js +1 -1
  142. package/dist/collection/components/salla-orders/salla-orders.js +9 -5
  143. package/dist/collection/components/salla-placeholder/salla-placeholder.js +10 -3
  144. package/dist/collection/components/salla-price-range/salla-price-range.js +6 -3
  145. package/dist/collection/components/salla-product-availability/salla-product-availability.js +16 -7
  146. package/dist/collection/components/salla-product-card/salla-product-card.js +22 -17
  147. package/dist/collection/components/salla-product-options/salla-product-options.js +9 -6
  148. package/dist/collection/components/salla-product-size-guide/salla-product-size-guide.js +8 -3
  149. package/dist/collection/components/salla-products-list/salla-products-list.js +4 -3
  150. package/dist/collection/components/salla-progress-bar/salla-progress-bar.js +20 -4
  151. package/dist/collection/components/salla-quick-buy/salla-quick-buy.js +6 -1
  152. package/dist/collection/components/salla-quick-order/salla-quick-order.js +6 -1
  153. package/dist/collection/components/salla-rating-modal/salla-rating-modal.js +8 -2
  154. package/dist/collection/components/salla-rating-stars/salla-rating-stars.js +16 -16
  155. package/dist/collection/components/salla-review-card/salla-review-card.js +5 -1
  156. package/dist/collection/components/salla-reviews/salla-reviews.js +6 -1
  157. package/dist/collection/components/salla-scopes/salla-scopes.js +9 -2
  158. package/dist/collection/components/salla-skeleton/salla-skeleton.js +10 -10
  159. package/dist/collection/components/salla-slider/salla-slider.js +6 -3
  160. package/dist/collection/components/salla-social/salla-social.js +7 -2
  161. package/dist/collection/components/salla-tabs/salla-tab-header.js +3 -3
  162. package/dist/collection/components/salla-tel-input/salla-tel-input.js +24 -19
  163. package/dist/collection/components/salla-tiered-offer/salla-tiered-offer.js +6 -1
  164. package/dist/collection/components/salla-trust-badges/salla-trust-badges.js +7 -3
  165. package/dist/collection/components/salla-user-menu/salla-user-menu.js +6 -0
  166. package/dist/collection/components/salla-user-profile/salla-user-profile.js +6 -2
  167. package/dist/collection/components/salla-user-settings/salla-user-settings.js +7 -2
  168. package/dist/collection/components/salla-verify/salla-verify.js +13 -6
  169. package/dist/components/index.js +2 -2
  170. package/dist/components/salla-add-product-button2.js +7 -2
  171. package/dist/components/salla-alert.js +2 -2
  172. package/dist/components/salla-apps-icons.js +6 -1
  173. package/dist/components/salla-booking-field2.js +10 -4
  174. package/dist/components/salla-bottom-alert.js +23 -17
  175. package/dist/components/salla-bullet-delivery.js +1 -1
  176. package/dist/components/salla-button2.js +9 -17
  177. package/dist/components/salla-cart-item-offers.js +10 -3
  178. package/dist/components/salla-cart-summary.js +1 -1
  179. package/dist/components/salla-comment-form2.js +10 -5
  180. package/dist/components/salla-comment-item2.js +8 -2
  181. package/dist/components/salla-comments.js +32 -5
  182. package/dist/components/salla-contacts.js +9 -2
  183. package/dist/components/salla-count-down2.js +16 -11
  184. package/dist/components/salla-file-upload2.js +37 -8
  185. package/dist/components/salla-filters-widget2.js +6 -3
  186. package/dist/components/salla-filters.js +9 -4
  187. package/dist/components/salla-gifting.js +11 -6
  188. package/dist/components/salla-hook.js +1 -1
  189. package/dist/components/salla-infinite-scroll.js +6 -1
  190. package/dist/components/salla-localization-modal.js +15 -2
  191. package/dist/components/salla-loyalty.js +12 -5
  192. package/dist/components/salla-map2.js +12 -7
  193. package/dist/components/salla-notifications.js +6 -1
  194. package/dist/components/salla-offer-modal.js +13 -6
  195. package/dist/components/salla-offer.js +12 -7
  196. package/dist/components/salla-order-branch.js +41 -3
  197. package/dist/components/salla-order-summary.js +6 -3
  198. package/dist/components/salla-order-totals-card.js +1 -1
  199. package/dist/components/salla-orders.js +9 -5
  200. package/dist/components/salla-placeholder2.js +10 -3
  201. package/dist/components/salla-price-range2.js +6 -3
  202. package/dist/components/salla-product-availability2.js +16 -7
  203. package/dist/components/salla-product-card2.js +13 -8
  204. package/dist/components/salla-product-options2.js +9 -6
  205. package/dist/components/salla-product-size-guide.js +8 -3
  206. package/dist/components/salla-products-list2.js +4 -3
  207. package/dist/components/salla-progress-bar2.js +20 -4
  208. package/dist/components/salla-quick-buy2.js +6 -1
  209. package/dist/components/salla-quick-order.js +6 -1
  210. package/dist/components/salla-rating-modal2.js +8 -2
  211. package/dist/components/salla-rating-stars2.js +10 -10
  212. package/dist/components/salla-review-card2.js +1 -1
  213. package/dist/components/salla-reviews.js +6 -1
  214. package/dist/components/salla-scopes.js +9 -2
  215. package/dist/components/salla-skeleton2.js +7 -7
  216. package/dist/components/salla-slider2.js +6 -3
  217. package/dist/components/salla-social.js +7 -2
  218. package/dist/components/salla-tab-header2.js +3 -3
  219. package/dist/components/salla-tel-input2.js +24 -19
  220. package/dist/components/salla-tiered-offer.js +6 -1
  221. package/dist/components/salla-trust-badges.js +7 -3
  222. package/dist/components/salla-user-menu.js +6 -0
  223. package/dist/components/salla-user-profile.js +6 -2
  224. package/dist/components/salla-user-settings.js +7 -2
  225. package/dist/components/salla-verify.js +13 -6
  226. package/dist/components/translate.js +37 -1
  227. package/dist/docs.json +44 -44
  228. package/dist/esm/{filepond-DF26o67L.js → filepond-DfLkIBAw.js} +1 -1
  229. package/dist/esm/{filepond-plugin-file-poster-B4epzDDH.js → filepond-plugin-file-poster-D3ie06bz.js} +1 -1
  230. package/dist/esm/{filepond-plugin-file-validate-size-DILJc03j.js → filepond-plugin-file-validate-size-C_S_eFQe.js} +1 -1
  231. package/dist/esm/{filepond-plugin-file-validate-type-Bic7dGts.js → filepond-plugin-file-validate-type-BE7nqQRE.js} +1 -1
  232. package/dist/esm/{filepond-plugin-image-edit-DHfCLKK0.js → filepond-plugin-image-edit-C6jDcMnX.js} +1 -1
  233. package/dist/esm/{filepond-plugin-image-exif-orientation-C7y59Hrn.js → filepond-plugin-image-exif-orientation-nKXdF-ae.js} +1 -1
  234. package/dist/esm/{filepond-plugin-image-preview-C-ZqWLeC.js → filepond-plugin-image-preview-Dzl44GI1.js} +1 -1
  235. package/dist/esm/{index-HRJpfiBN.js → index-BmRQjBRH.js} +2 -2
  236. package/dist/esm/{intlTelInput-DOVRUqFb.js → intlTelInput-dGrU4Iu9.js} +1 -1
  237. package/dist/esm/loader.js +3 -3
  238. package/dist/esm/salla-accordion-body_2.entry.js +1 -1
  239. package/dist/esm/salla-accordion_6.entry.js +10 -18
  240. package/dist/esm/salla-add-product-button_5.entry.js +37 -15
  241. package/dist/esm/salla-advertisement.entry.js +1 -1
  242. package/dist/esm/salla-alert_2.entry.js +26 -20
  243. package/dist/esm/salla-app-install-alert.entry.js +1 -1
  244. package/dist/esm/salla-applied-filters.entry.js +1 -1
  245. package/dist/esm/salla-apps-icons.entry.js +7 -2
  246. package/dist/esm/salla-attachment-view_9.entry.js +79 -40
  247. package/dist/esm/salla-badge.entry.js +1 -1
  248. package/dist/esm/salla-basket-gap.entry.js +1 -1
  249. package/dist/esm/salla-bullet-delivery_3.entry.js +2 -2
  250. package/dist/esm/salla-cart-coupons.entry.js +1 -1
  251. package/dist/esm/salla-cart-item-offers_2.entry.js +12 -5
  252. package/dist/esm/salla-cart-summary-card.entry.js +1 -1
  253. package/dist/esm/salla-cashback-banner.entry.js +1 -1
  254. package/dist/esm/salla-comment-factors.entry.js +1 -1
  255. package/dist/esm/salla-comment-form_9.entry.js +67 -25
  256. package/dist/esm/salla-conditional-offer.entry.js +1 -1
  257. package/dist/esm/salla-contacts.entry.js +10 -3
  258. package/dist/esm/salla-cookies-bar.entry.js +1 -1
  259. package/dist/esm/salla-count-down.entry.js +17 -12
  260. package/dist/esm/salla-custom-fields.entry.js +1 -1
  261. package/dist/esm/salla-delivery-promise.entry.js +1 -1
  262. package/dist/esm/salla-edit-order-button.entry.js +1 -1
  263. package/dist/esm/salla-filters-widget.entry.js +7 -4
  264. package/dist/esm/salla-filters.entry.js +10 -5
  265. package/dist/esm/salla-fulfillment-methods.entry.js +1 -1
  266. package/dist/esm/salla-gift-card-redeem_2.entry.js +1 -1
  267. package/dist/esm/salla-gifting.entry.js +12 -7
  268. package/dist/esm/salla-hook.entry.js +2 -2
  269. package/dist/esm/salla-infinite-scroll.entry.js +7 -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 +14 -2
  273. package/dist/esm/salla-login-modal.entry.js +1 -1
  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 +12 -5
  280. package/dist/esm/salla-maintenance-alert.entry.js +1 -1
  281. package/dist/esm/salla-map_3.entry.js +39 -15
  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-multiple-bundle-product-cart_2.entry.js +1 -1
  285. package/dist/esm/salla-multiple-bundle-product-options-modal_2.entry.js +1 -1
  286. package/dist/esm/salla-multiple-bundle-product.entry.js +1 -1
  287. package/dist/esm/salla-next-order-coupon.entry.js +1 -1
  288. package/dist/esm/salla-notification-item_2.entry.js +7 -2
  289. package/dist/esm/salla-offer-modal.entry.js +14 -7
  290. package/dist/esm/salla-offer.entry.js +14 -9
  291. package/dist/esm/salla-order-branch.entry.js +42 -4
  292. package/dist/esm/salla-order-cancel.entry.js +1 -1
  293. package/dist/esm/salla-order-details-multiple-bundle-product.entry.js +1 -1
  294. package/dist/esm/salla-order-details-options.entry.js +1 -1
  295. package/dist/esm/salla-order-details.entry.js +1 -1
  296. package/dist/esm/salla-order-edit-item.entry.js +1 -1
  297. package/dist/esm/salla-order-edit-product-card.entry.js +1 -1
  298. package/dist/esm/salla-order-edit.entry.js +1 -1
  299. package/dist/esm/salla-order-options-modal.entry.js +1 -1
  300. package/dist/esm/salla-order-shipments.entry.js +1 -1
  301. package/dist/esm/salla-order-summary.entry.js +7 -4
  302. package/dist/esm/salla-order-totals-card.entry.js +2 -2
  303. package/dist/esm/salla-orders.entry.js +10 -6
  304. package/dist/esm/salla-payments.entry.js +1 -1
  305. package/dist/esm/salla-placeholder.entry.js +10 -3
  306. package/dist/esm/salla-price-range.entry.js +7 -4
  307. package/dist/esm/salla-product-card-embed.entry.js +1 -1
  308. package/dist/esm/salla-product-card.entry.js +14 -9
  309. package/dist/esm/salla-product-size-guide.entry.js +9 -4
  310. package/dist/esm/salla-products-list.entry.js +5 -4
  311. package/dist/esm/salla-products-slider.entry.js +1 -1
  312. package/dist/esm/salla-quick-order.entry.js +7 -2
  313. package/dist/esm/salla-rating-modal-v2.entry.js +1 -1
  314. package/dist/esm/salla-rating-modal.entry.js +9 -3
  315. package/dist/esm/salla-review-factors-tags.entry.js +1 -1
  316. package/dist/esm/salla-review-order-item.entry.js +1 -1
  317. package/dist/esm/salla-scopes.entry.js +9 -2
  318. package/dist/esm/salla-search-product-card.entry.js +1 -1
  319. package/dist/esm/salla-search.entry.js +1 -1
  320. package/dist/esm/salla-skeleton.entry.js +8 -8
  321. package/dist/esm/salla-social-share.entry.js +1 -1
  322. package/dist/esm/salla-social.entry.js +8 -3
  323. package/dist/esm/salla-tab-content_3.entry.js +4 -4
  324. package/dist/esm/salla-tiered-offer.entry.js +7 -2
  325. package/dist/esm/salla-trust-badges.entry.js +8 -4
  326. package/dist/esm/salla-user-menu.entry.js +7 -1
  327. package/dist/esm/salla-user-profile.entry.js +7 -3
  328. package/dist/esm/salla-user-settings.entry.js +8 -3
  329. package/dist/esm/salla-verify.entry.js +13 -6
  330. package/dist/esm/salla-wallet.entry.js +1 -1
  331. package/dist/esm/salla-wishlist-actions.entry.js +1 -1
  332. package/dist/esm/salla-wishlist-summary.entry.js +1 -1
  333. package/dist/esm/translate-CxrJQ3Jf.js +54 -0
  334. package/dist/esm/twilight.js +3 -3
  335. package/dist/esm/{vanilla-picker-DQKehCLa.js → vanilla-picker-DRghK0RD.js} +1 -1
  336. package/dist/twilight/p-00e1f5fd.entry.js +4 -0
  337. package/dist/twilight/{p-078e5ef8.entry.js → p-12338d19.entry.js} +1 -1
  338. package/dist/twilight/p-1557d0ca.entry.js +4 -0
  339. package/dist/twilight/{p-ef09a761.entry.js → p-15ab81d6.entry.js} +1 -1
  340. package/dist/twilight/p-182d7bab.entry.js +4 -0
  341. package/dist/twilight/p-1908ab44.entry.js +4 -0
  342. package/dist/twilight/p-19592be3.entry.js +4 -0
  343. package/dist/twilight/{p-75ed7d4e.entry.js → p-1a8c7481.entry.js} +1 -1
  344. package/dist/twilight/p-1c8bf883.entry.js +4 -0
  345. package/dist/twilight/{p-119aa7c1.entry.js → p-1c8dde1a.entry.js} +1 -1
  346. package/dist/twilight/p-1f2844db.entry.js +4 -0
  347. package/dist/twilight/{p-b66c664b.entry.js → p-2cf7eb3b.entry.js} +1 -1
  348. package/dist/twilight/p-2de4c351.entry.js +4 -0
  349. package/dist/twilight/{p-7f38cf0c.entry.js → p-2de666d8.entry.js} +1 -1
  350. package/dist/twilight/p-33e769b3.entry.js +4 -0
  351. package/dist/twilight/{p-84c56f4d.entry.js → p-3745be6d.entry.js} +1 -1
  352. package/dist/twilight/p-39a16468.entry.js +4 -0
  353. package/dist/twilight/{p-76f49fd8.entry.js → p-3a996401.entry.js} +1 -1
  354. package/dist/twilight/{p-6feb378a.entry.js → p-3bf933f6.entry.js} +1 -1
  355. package/dist/twilight/p-3d1842e4.entry.js +4 -0
  356. package/dist/twilight/p-3f373f1e.entry.js +4 -0
  357. package/dist/twilight/{p-8f0b6a64.entry.js → p-3f66f717.entry.js} +1 -1
  358. package/dist/twilight/p-3fdaf198.entry.js +4 -0
  359. package/dist/twilight/p-41248f5f.entry.js +4 -0
  360. package/dist/twilight/{p-c919171b.entry.js → p-4235b3c2.entry.js} +1 -1
  361. package/dist/twilight/{p-3c0be6b1.entry.js → p-4aa07eca.entry.js} +1 -1
  362. package/dist/twilight/{p-4e74c79f.entry.js → p-4b111d7a.entry.js} +1 -1
  363. package/dist/twilight/{p-2c13b5e8.entry.js → p-51694dd2.entry.js} +1 -1
  364. package/dist/twilight/{p-c8d4b211.entry.js → p-55b5158c.entry.js} +1 -1
  365. package/dist/twilight/{p-9a4a84b8.entry.js → p-5617656f.entry.js} +1 -1
  366. package/dist/twilight/{p-25ea21a6.entry.js → p-58dcc966.entry.js} +1 -1
  367. package/dist/twilight/p-5f35b46a.entry.js +4 -0
  368. package/dist/twilight/{p-a3009d00.entry.js → p-60e1fb1a.entry.js} +1 -1
  369. package/dist/twilight/{p-5134faef.entry.js → p-61956814.entry.js} +1 -1
  370. package/dist/twilight/p-6854e982.entry.js +4 -0
  371. package/dist/twilight/{p-1a684490.entry.js → p-68919916.entry.js} +1 -1
  372. package/dist/twilight/p-6b0d6b9b.entry.js +4 -0
  373. package/dist/twilight/p-71cbf7a4.entry.js +4 -0
  374. package/dist/twilight/{p-313dbe67.entry.js → p-730101ff.entry.js} +1 -1
  375. package/dist/twilight/p-737b93c2.entry.js +4 -0
  376. package/dist/twilight/p-74ccf675.entry.js +4 -0
  377. package/dist/twilight/{p-83edd1a1.entry.js → p-7aa15258.entry.js} +1 -1
  378. package/dist/twilight/{p-5b617110.entry.js → p-7c7648d7.entry.js} +1 -1
  379. package/dist/twilight/p-7dfe99e6.entry.js +4 -0
  380. package/dist/twilight/{p-07e1822a.entry.js → p-7e724019.entry.js} +1 -1
  381. package/dist/twilight/p-8248cecd.entry.js +4 -0
  382. package/dist/twilight/p-844ebeb6.entry.js +4 -0
  383. package/dist/twilight/{p-2413d450.entry.js → p-87cedb04.entry.js} +1 -1
  384. package/dist/twilight/p-8b21158b.entry.js +4 -0
  385. package/dist/twilight/{p-1b0da3b9.entry.js → p-8c10cb85.entry.js} +1 -1
  386. package/dist/twilight/p-8e2488fe.entry.js +4 -0
  387. package/dist/twilight/{p-33a64882.entry.js → p-9108e712.entry.js} +1 -1
  388. package/dist/twilight/p-91326a74.entry.js +4 -0
  389. package/dist/twilight/{p-100260a2.entry.js → p-96f9eb1f.entry.js} +1 -1
  390. package/dist/twilight/p-99463d58.entry.js +4 -0
  391. package/dist/twilight/p-9e196eb0.entry.js +4 -0
  392. package/dist/twilight/{p-BFMu9w68.js → p-B4fbRnFh.js} +1 -1
  393. package/dist/twilight/{p-BGUXYEQf.js → p-BIToxPOg.js} +1 -1
  394. package/dist/twilight/{p-HRJpfiBN.js → p-BmRQjBRH.js} +1 -1
  395. package/dist/twilight/{p-CliIfO7G.js → p-C1XjCBHg.js} +1 -1
  396. package/dist/twilight/{p-BdaR2plD.js → p-C48Rktr4.js} +1 -1
  397. package/dist/twilight/{p-O5jKs1Zb.js → p-CWismw4I.js} +1 -1
  398. package/dist/twilight/p-CxrJQ3Jf.js +4 -0
  399. package/dist/twilight/{p-DlxVucku.js → p-DYEGhE1O.js} +1 -1
  400. package/dist/twilight/{p-CSRWBUvd.js → p-DnZfyhH5.js} +1 -1
  401. package/dist/twilight/{p-BCFB-lfz.js → p-OCGvfvVA.js} +1 -1
  402. package/dist/twilight/{p-9a723216.entry.js → p-a80acba3.entry.js} +1 -1
  403. package/dist/twilight/{p-61c8e3c6.entry.js → p-ab1d320f.entry.js} +1 -1
  404. package/dist/twilight/{p-5f0eca54.entry.js → p-ac7d45b6.entry.js} +1 -1
  405. package/dist/twilight/{p-fe72290f.entry.js → p-aeafb519.entry.js} +1 -1
  406. package/dist/twilight/p-b5499627.entry.js +4 -0
  407. package/dist/twilight/{p-f5e46494.entry.js → p-b5829615.entry.js} +1 -1
  408. package/dist/twilight/p-b6c5435e.entry.js +4 -0
  409. package/dist/twilight/{p-02d79968.entry.js → p-baaa3e72.entry.js} +1 -1
  410. package/dist/twilight/{p-7f58cf36.entry.js → p-bfdde3db.entry.js} +1 -1
  411. package/dist/twilight/p-c22ea75b.entry.js +4 -0
  412. package/dist/twilight/{p-768f5c26.entry.js → p-c3d33aee.entry.js} +1 -1
  413. package/dist/twilight/{p-943f3e5a.entry.js → p-c5d4f71c.entry.js} +1 -1
  414. package/dist/twilight/{p-ee8d13fd.entry.js → p-cc46f297.entry.js} +1 -1
  415. package/dist/twilight/p-cca10a34.entry.js +4 -0
  416. package/dist/twilight/p-cdbb6758.entry.js +4 -0
  417. package/dist/twilight/{p-96560ca2.entry.js → p-cf1cc0d1.entry.js} +1 -1
  418. package/dist/twilight/{p-73b8ed51.entry.js → p-d034a3ba.entry.js} +1 -1
  419. package/dist/twilight/{p-155f1fed.entry.js → p-d307d40a.entry.js} +1 -1
  420. package/dist/twilight/p-d37e6c2f.entry.js +4 -0
  421. package/dist/twilight/{p-eb6f86fb.entry.js → p-d3be7885.entry.js} +1 -1
  422. package/dist/twilight/{p-87d34b7c.entry.js → p-d542e647.entry.js} +1 -1
  423. package/dist/twilight/{p-c3afee2f.entry.js → p-db9994c2.entry.js} +1 -1
  424. package/dist/twilight/p-dd4bcce0.entry.js +4 -0
  425. package/dist/twilight/{p-c89d7291.entry.js → p-de3c5f91.entry.js} +1 -1
  426. package/dist/twilight/{p-df8c51c2.entry.js → p-e2d1d888.entry.js} +1 -1
  427. package/dist/twilight/{p-0e430b25.entry.js → p-e6bc3cf4.entry.js} +1 -1
  428. package/dist/twilight/{p-e4d76bce.entry.js → p-e8d94147.entry.js} +1 -1
  429. package/dist/twilight/{p-4e0dcb5c.entry.js → p-e9319448.entry.js} +1 -1
  430. package/dist/twilight/{p-ee23fbba.entry.js → p-ec1589cf.entry.js} +1 -1
  431. package/dist/twilight/{p-d8181149.entry.js → p-ece1fecd.entry.js} +1 -1
  432. package/dist/twilight/{p-231d4bf2.entry.js → p-f0180034.entry.js} +1 -1
  433. package/dist/twilight/{p-49e2f73d.entry.js → p-f348601d.entry.js} +1 -1
  434. package/dist/twilight/{p-6e8cb8fb.entry.js → p-f5afeed8.entry.js} +1 -1
  435. package/dist/twilight/p-f70fa2e9.entry.js +4 -0
  436. package/dist/twilight/{p-a2cbbc56.entry.js → p-f76349b3.entry.js} +1 -1
  437. package/dist/twilight/{p-49d6d82e.entry.js → p-fa600113.entry.js} +1 -1
  438. package/dist/twilight/p-fde4cf31.entry.js +4 -0
  439. package/dist/twilight/{p-14b78c6e.entry.js → p-fe3645b0.entry.js} +1 -1
  440. package/dist/twilight/{p-4cee6b43.entry.js → p-feb068a2.entry.js} +1 -1
  441. package/dist/twilight/{p-D1oXS6KY.js → p-imI5he7m.js} +1 -1
  442. package/dist/twilight/twilight.esm.js +1 -1
  443. package/dist/types/Helpers/translate.d.ts +17 -0
  444. package/dist/types/components/salla-add-product-button/salla-add-product-button.d.ts +2 -1
  445. package/dist/types/components/salla-alert/salla-alert.d.ts +3 -3
  446. package/dist/types/components/salla-apps-icons/salla-apps-icons.d.ts +3 -0
  447. package/dist/types/components/salla-booking-field/salla-booking-field.d.ts +3 -0
  448. package/dist/types/components/salla-bottom-alert/salla-bottom-alert.d.ts +3 -1
  449. package/dist/types/components/salla-button/salla-button.d.ts +10 -18
  450. package/dist/types/components/salla-cart-item-offers/salla-cart-item-offers.d.ts +3 -0
  451. package/dist/types/components/salla-cart-summary/salla-cart-summary.d.ts +2 -2
  452. package/dist/types/components/salla-comment-form/salla-comment-form.d.ts +3 -0
  453. package/dist/types/components/salla-comments/salla-comment-item.d.ts +3 -1
  454. package/dist/types/components/salla-comments/salla-comments.d.ts +6 -0
  455. package/dist/types/components/salla-contacts/salla-contacts.d.ts +4 -0
  456. package/dist/types/components/salla-count-down/salla-count-down.d.ts +17 -14
  457. package/dist/types/components/salla-custom-fields/salla-custom-fields.d.ts +4 -0
  458. package/dist/types/components/salla-file-upload/salla-file-upload.d.ts +3 -0
  459. package/dist/types/components/salla-filters/salla-filters.d.ts +4 -1
  460. package/dist/types/components/salla-filters-widget/salla-filters-widget.d.ts +2 -0
  461. package/dist/types/components/salla-gifting/salla-gifting.d.ts +3 -0
  462. package/dist/types/components/salla-hook/salla-hook.d.ts +4 -0
  463. package/dist/types/components/salla-infinite-scroll/salla-infinite-scroll.d.ts +3 -0
  464. package/dist/types/components/salla-localization-modal/salla-localization-modal.d.ts +4 -0
  465. package/dist/types/components/salla-loyalty/salla-loyalty.d.ts +3 -0
  466. package/dist/types/components/salla-map/salla-map.d.ts +3 -0
  467. package/dist/types/components/salla-notifications/salla-notifications.d.ts +3 -1
  468. package/dist/types/components/salla-offer/salla-offer.d.ts +3 -0
  469. package/dist/types/components/salla-offer-modal/salla-offer-modal.d.ts +3 -0
  470. package/dist/types/components/salla-order-branch/interfaces.d.ts +1 -0
  471. package/dist/types/components/salla-order-branch/salla-order-branch.d.ts +10 -1
  472. package/dist/types/components/salla-order-summary/salla-order-summary.d.ts +2 -0
  473. package/dist/types/components/salla-order-totals-card/interfaces.d.ts +1 -0
  474. package/dist/types/components/salla-orders/salla-orders.d.ts +3 -1
  475. package/dist/types/components/salla-placeholder/salla-placeholder.d.ts +3 -1
  476. package/dist/types/components/salla-price-range/salla-price-range.d.ts +2 -0
  477. package/dist/types/components/salla-product-availability/salla-product-availability.d.ts +4 -0
  478. package/dist/types/components/salla-product-card/salla-product-card.d.ts +12 -9
  479. package/dist/types/components/salla-product-options/salla-product-options.d.ts +2 -0
  480. package/dist/types/components/salla-product-size-guide/salla-product-size-guide.d.ts +3 -0
  481. package/dist/types/components/salla-products-list/salla-products-list.d.ts +1 -0
  482. package/dist/types/components/salla-progress-bar/salla-progress-bar.d.ts +5 -0
  483. package/dist/types/components/salla-quick-buy/salla-quick-buy.d.ts +3 -1
  484. package/dist/types/components/salla-quick-order/salla-quick-order.d.ts +3 -0
  485. package/dist/types/components/salla-rating-modal/salla-rating-modal.d.ts +3 -0
  486. package/dist/types/components/salla-rating-stars/salla-rating-stars.d.ts +14 -14
  487. package/dist/types/components/salla-review-card/salla-review-card.d.ts +4 -0
  488. package/dist/types/components/salla-reviews/salla-reviews.d.ts +3 -0
  489. package/dist/types/components/salla-scopes/salla-scopes.d.ts +3 -0
  490. package/dist/types/components/salla-skeleton/salla-skeleton.d.ts +6 -6
  491. package/dist/types/components/salla-slider/salla-slider.d.ts +2 -0
  492. package/dist/types/components/salla-social/salla-social.d.ts +3 -0
  493. package/dist/types/components/salla-tabs/salla-tab-header.d.ts +2 -2
  494. package/dist/types/components/salla-tel-input/salla-tel-input.d.ts +3 -1
  495. package/dist/types/components/salla-tiered-offer/salla-tiered-offer.d.ts +3 -1
  496. package/dist/types/components/salla-trust-badges/salla-trust-badges.d.ts +3 -1
  497. package/dist/types/components/salla-user-menu/salla-user-menu.d.ts +3 -0
  498. package/dist/types/components/salla-user-profile/salla-user-profile.d.ts +3 -1
  499. package/dist/types/components/salla-user-settings/salla-user-settings.d.ts +3 -0
  500. package/dist/types/components/salla-verify/salla-verify.d.ts +3 -0
  501. package/dist/types/components.d.ts +128 -80
  502. package/package.json +5 -5
  503. package/dist/cjs/translate-BeU1QX_r.js +0 -20
  504. package/dist/esm/translate-CrSV-tno.js +0 -18
  505. package/dist/twilight/p-117c8823.entry.js +0 -4
  506. package/dist/twilight/p-16b45c19.entry.js +0 -4
  507. package/dist/twilight/p-20d5665b.entry.js +0 -4
  508. package/dist/twilight/p-235f40b0.entry.js +0 -4
  509. package/dist/twilight/p-2f96a72f.entry.js +0 -4
  510. package/dist/twilight/p-312d231b.entry.js +0 -4
  511. package/dist/twilight/p-334fc442.entry.js +0 -4
  512. package/dist/twilight/p-3e232b09.entry.js +0 -4
  513. package/dist/twilight/p-3f376a9d.entry.js +0 -4
  514. package/dist/twilight/p-46ad2b0e.entry.js +0 -4
  515. package/dist/twilight/p-4e3a3c55.entry.js +0 -4
  516. package/dist/twilight/p-4f9da81b.entry.js +0 -4
  517. package/dist/twilight/p-5bc3f956.entry.js +0 -4
  518. package/dist/twilight/p-5fae444a.entry.js +0 -4
  519. package/dist/twilight/p-70c45a90.entry.js +0 -4
  520. package/dist/twilight/p-761e273c.entry.js +0 -4
  521. package/dist/twilight/p-7960e489.entry.js +0 -4
  522. package/dist/twilight/p-845e4790.entry.js +0 -4
  523. package/dist/twilight/p-8688c21f.entry.js +0 -4
  524. package/dist/twilight/p-8be3fa1c.entry.js +0 -4
  525. package/dist/twilight/p-8dc7ae26.entry.js +0 -4
  526. package/dist/twilight/p-8e0a33dd.entry.js +0 -4
  527. package/dist/twilight/p-8eabd62f.entry.js +0 -4
  528. package/dist/twilight/p-8fc42a50.entry.js +0 -4
  529. package/dist/twilight/p-96317fc8.entry.js +0 -4
  530. package/dist/twilight/p-97b51153.entry.js +0 -4
  531. package/dist/twilight/p-9c1bf3fb.entry.js +0 -4
  532. package/dist/twilight/p-CrSV-tno.js +0 -4
  533. package/dist/twilight/p-b202c2d3.entry.js +0 -4
  534. package/dist/twilight/p-b2b896d1.entry.js +0 -4
  535. package/dist/twilight/p-c327bc95.entry.js +0 -4
  536. package/dist/twilight/p-c699207a.entry.js +0 -4
  537. package/dist/twilight/p-d565b168.entry.js +0 -4
  538. package/dist/twilight/p-d7a70a29.entry.js +0 -4
  539. package/dist/twilight/p-d8a5198b.entry.js +0 -4
  540. package/dist/twilight/p-db27df13.entry.js +0 -4
  541. package/dist/twilight/p-f9abcf4f.entry.js +0 -4
  542. package/dist/twilight/p-fd0d136d.entry.js +0 -4
@@ -1,4 +0,0 @@
1
- /*!
2
- * Crafted with ❤ by Salla
3
- */
4
- import{r as t,c as i,h as o,H as e,a,e as s}from"./p-HRJpfiBN.js";import{C as r}from"./p-gFG8By9O.js";import{H as n}from"./p-Brgf4SAC.js";import{e as l,a as c,r as p,b as d}from"./p-BS2iQKah.js";import{a as u}from"./p-DIAyA5MP.js";import{B as h}from"./p-D3mWkc-3.js";import{D as m}from"./p-CoQJOPRz.js";import{i as g}from"./p-BsXh13x8.js";import{C as y}from"./p-C6jIkM-X.js";import"./p-CgtvEd63.js";var b='\x3c!-- Generated by IcoMoon.io --\x3e\n<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 32 32">\n<title>full-wallet</title>\n<path d="M29 12h-26c-0.668-0.008-1.284-0.226-1.787-0.59l0.009 0.006c-0.744-0.552-1.222-1.428-1.222-2.416 0-1.657 1.343-3 2.999-3h6c0.552 0 1 0.448 1 1s-0.448 1-1 1v0h-6c-0.552 0-1 0.448-1 1 0 0.326 0.156 0.616 0.397 0.798l0.002 0.002c0.167 0.12 0.374 0.194 0.599 0.2l0.001 0h26c0.552 0 1 0.448 1 1s-0.448 1-1 1v0zM27 12c-0.552 0-1-0.448-1-1v0-3h-3c-0.552 0-1-0.448-1-1s0.448-1 1-1v0h4c0.552 0 1 0.448 1 1v0 4c0 0.552-0.448 1-1 1v0zM29 30h-26c-1.657 0-3-1.343-3-3v0-18c0-0.552 0.448-1 1-1s1 0.448 1 1v0 18c0 0.552 0.448 1 1 1v0h25v-5c0-0.552 0.448-1 1-1s1 0.448 1 1v0 6c0 0.552-0.448 1-1 1v0zM29 18c-0.552 0-1-0.448-1-1v0-6c0-0.552 0.448-1 1-1s1 0.448 1 1v0 6c0 0.552-0.448 1-1 1v0zM31 24h-7c-2.209 0-4-1.791-4-4s1.791-4 4-4v0h7c0.552 0 1 0.448 1 1v0 6c0 0.552-0.448 1-1 1v0zM24 18c-1.105 0-2 0.895-2 2s0.895 2 2 2v0h6v-4zM25 12c-0.001 0-0.001 0-0.002 0-0.389 0-0.726-0.222-0.891-0.546l-0.003-0.006-3.552-7.106-2.306 1.152c-0.13 0.066-0.284 0.105-0.447 0.105-0.552 0-1-0.448-1-1 0-0.39 0.223-0.727 0.548-0.892l0.006-0.003 3.2-1.6c0.13-0.067 0.284-0.106 0.447-0.106 0.39 0 0.727 0.223 0.892 0.548l0.003 0.006 4 8c0.067 0.13 0.106 0.285 0.106 0.448 0 0.552-0.448 1-1 1v0zM21 12c-0.001 0-0.001 0-0.002 0-0.389 0-0.726-0.222-0.891-0.546l-0.003-0.006-3.552-7.106-15.104 7.552c-0.13 0.066-0.284 0.105-0.447 0.105-0.552 0-1-0.448-1-1 0-0.39 0.223-0.727 0.548-0.892l0.006-0.003 16-8c0.13-0.067 0.284-0.106 0.447-0.106 0.39 0 0.727 0.223 0.892 0.548l0.003 0.006 4 8c0.067 0.13 0.106 0.285 0.106 0.448 0 0.552-0.448 1-1 1-0.001 0-0.001 0-0.002 0h0z"></path>\n</svg>\n';const w="apple-pay-sdk";let f=null;function v(){return salla?.config?.get?.("store.settings.buy_now.merchant_identifier")||null}function k(){return!0===salla?.config?.get?.("store.settings.buy_now.hostedRedirect")}function x(){return"undefined"==typeof document?Promise.resolve():f||(document.getElementById(w)?(f=Promise.resolve(),f):(f=new Promise((t=>{const i=document.createElement("script");i.src="https://applepay.cdn-apple.com/jsapi/1.latest/apple-pay-sdk.js",i.setAttribute("id",w),i.async=!0,i.onload=()=>t(),i.onerror=()=>t(),document.body.appendChild(i)})),f))}function _(t){return i=null==t?salla?.config?.get?.("store.settings.buy_now.supportedNetworks")||salla?.config?.get?.("store.settings.buy_now.networks"):t,Array.isArray(i)?[...i]:i&&"object"==typeof i?Object.values(i):[];var i}async function S(t="SAR",i=null){const o=_(i);if(!o.length)return!1;try{if(window.ApplePaySession?.canMakePayments?.())return!0}catch(t){}if("undefined"==typeof window||!window.PaymentRequest)return!1;if(!v())return!1;await x();try{const i=new PaymentRequest(function({version:t,merchantIdentifier:i,supportedNetworks:o,countryCode:e}){return[{supportedMethods:"https://apple.com/apple-pay",data:{version:t,merchantIdentifier:i,merchantCapabilities:["supports3DS"],supportedNetworks:o,countryCode:e}}]}({version:3,merchantIdentifier:v(),supportedNetworks:o,countryCode:salla?.config?.get?.("store.store_country")||"SA"}),{total:{label:"Salla",amount:{currency:t||"SAR",value:"0.00"}}});return await i.canMakePayment()}catch(t){return!1}}function P(t,i){if(!t||!i?.length)return;const o="function"==typeof t.set,e=i=>o?t.get?.(i):t[i],a=(i,e)=>{o?t.set(i,e):t[i]=e},s=i=>{o?t.delete?.(i):delete t[i]},r=e("id"),n=e("quantity")||"1";r&&(s("id"),s("quantity"),a("products[0][id]",String(r)),a("products[0][quantity]",String(n))),i.forEach(((t,i)=>{const o=r?i+1:i;a(`products[${o}][id]`,String(t.productId)),a(`products[${o}][quantity]`,String(t.quantity)),Object.entries(t.options).forEach((([t,i])=>{a(`products[${o}][options][${t}]`,String(i))}))}))}class C{constructor(t,i){this.host=t,this.productId=i,this.collected=!1,this.livePrice=0}static attach(t,i){const o=t.querySelector("salla-mini-checkout-widget");if(!o)return!1;const e=new C(t,String(i));return salla.product?.event?.onPriceUpdated?.((t=>{e.livePrice=Number(t?.data?.price)||e.livePrice})),o.addEventListener("click",(t=>e.handleWidgetClick(t,o)),!0),!0}getSelectedQuantity(){try{const t=document.querySelector("form.product-form"),i=t?.getElementSallaData?.(),o=Number(i instanceof FormData?i.get("quantity"):i?.quantity);if(Number.isFinite(o)&&o>0)return o}catch{}return Number(this.host.getAttribute("quantity"))||1}async handleWidgetClick(t,i){if(this.collected)return void(this.collected=!1);if(t.preventDefault(),t.stopImmediatePropagation(),!await this.validatePdpOptions())return;if(salla.config.isGuest())return void salla.api.auth.requireLoginThen("salla-add-product-button::oo.after-login",(()=>this.handleWidgetClick(t,i)));let o;i.classList.add("s-add-product-button-busy");try{o=await salla.api.withoutNotifier((()=>salla.product.api.getOrderOptions([{id:this.productId,quantity:this.getSelectedQuantity()}])))}catch(t){return salla?.logger?.warn?.("order-options: fetch failed",t),i.classList.remove("s-add-product-button-busy"),void this.resumeWidget(i)}i.classList.remove("s-add-product-button-busy");const e=o?.data?.order_options||[],a=o?.data?.advance_free_product,s=(Array.isArray(a)?a:[]).filter((t=>Array.isArray(t?.options)&&t.options.length));if(!e.length&&!s.length)return void this.resumeWidget(i);const r=this.livePrice>0?this.livePrice:Number(o?.data?.products?.[0]?.price?.amount)||0,n=this.ensureModal();try{const t=await n.open({orderOptions:e,freeProducts:s,basePrice:r});this.injectIntoMini(t?.orderOptions||[],t?.freeProducts||[]),this.resumeWidget(i)}catch{}}async validatePdpOptions(){const t=document.querySelector(`salla-product-options[product-id="${this.productId}"]`);return!t||("function"==typeof t.validateAndScroll?await t.validateAndScroll():"function"!=typeof t.reportValidity||await t.reportValidity())}injectIntoMini(t,i){if(!t.length&&!i.length)return;const o=this.productId,e=a=>{if(String(a?.id)===String(o))try{const o=a?.payload;t.length&&o?.set?.("order_options",t),P(o,i)}finally{salla.event.off("cart::before.add.item",e)}};salla.event.on("cart::before.add.item",e)}ensureModal(){let t=document.querySelector("salla-order-options-modal");return t||(t=document.createElement("salla-order-options-modal"),document.body.appendChild(t)),t}resumeWidget(t){this.collected=!0;const i=t.shadowRoot?.querySelector?.(".s-fast-checkout-button");i?i.click():"function"==typeof t.click&&t.click()}}class I{constructor(){this.resuming=!1,this.resumeToken=0}static attach(t){if(!t.querySelector("salla-mini-checkout-widget"))return!1;const i=new I;return t.addEventListener("click",(t=>i.handleClick(t)),!0),!0}handleClick(t){if(this.resuming)return void(this.resuming=!1);const i=("function"==typeof t.composedPath?t.composedPath():[]).find((t=>"SALLA-MINI-CHECKOUT-WIDGET"===t?.tagName));i&&(t.preventDefault(),t.stopImmediatePropagation(),this.gate(i,++this.resumeToken))}async gate(t,i){if(await salla.cart.event.beforeStartFastCheckout(),i!==this.resumeToken)return;this.resuming=!0;const o=t.shadowRoot?.querySelector?.(".s-fast-checkout-button");o?o.click():"function"==typeof t.click?t.click():this.resuming=!1}}const O=class{constructor(o){t(this,o),this.success=i(this,"success"),this.failed=i(this,"failed"),this.hostAttributes={},this.buyNowBusy=!1,this.buyNowToken=0,this.buyNowLastClick=0,this.buyNowLivePrice=0,this.hasPreOrder=!1,this.productStatus="sale",this.productType="product",this.selectedOptions=[],this.buyNowText=salla.lang.get("pages.products.buy_now"),this.buyNowLoading=!1,this.isDesktopViewport="undefined"==typeof window||window.matchMedia("(min-width: 768px)").matches,this.viewportMediaQuery=null,this.orderOptionsGateAttached=!1,this.fastCheckoutGateAttached=!1,this.onBuyNowPriceUpdated=t=>{this.buyNowLivePrice=Number(t?.data?.price)||this.buyNowLivePrice},this.onViewportChange=t=>{this.isDesktopViewport=t.matches,this.btn?.setText(t.matches&&this.passedLabel?this.passedLabel:this.getLabel())},salla.lang.onLoaded((()=>{this.buyNowText=salla.lang.get("pages.products.buy_now")}))}get isIconOnlyLabel(){return"sale"===this.productStatus&&this.supportStickyBar&&!this.isDesktopViewport&&this.showQuickBuy&&this.isApplePayActive}get addToCartLabel(){return salla.lang.get("pages.cart.add_to_cart")}getLabel(){return this.isIconOnlyLabel?`${r}<span class="s-add-product-button-sr-only">${this.addToCartLabel}</span>`:this.hasPreOrder?salla.lang.get("pages.products.pre_order_now"):"sale"===this.productStatus&&"booking"===this.productType?salla.lang.get("pages.cart.book_now"):"sale"===this.productStatus?this.addToCartLabel:"donating"!==this.productType?salla.lang.get("pages.products.out_of_stock"):salla.lang.get("pages.products.donation_exceed")}addProductToCart(t){if("booking"===this.productType)return t.preventDefault(),this.addBookingProduct();if("submit"===this.hostAttributes.type)return!1;t.preventDefault(),this.btn?.disable();const i=document.querySelector(`salla-product-options[product-id="${this.productId}"]`);return i&&"function"==typeof i.validateAndScroll?i.validateAndScroll().then((async t=>{const i={isValid:t,component:this};if(await salla.hooks.call("salla-add-product-button","validate",i),i.isValid)return this._proceedAddToCart();this.btn?.enable()})).catch((()=>{this.btn?.enable()})):this._proceedAddToCart()}async _proceedAddToCart(){const t=this.host.closest("salla-products-list, salla-products-slider")??this.host.closest("salla-product-card, custom-salla-product-card"),i=Object.entries({id:this.productId,donation_amount:this.donatingAmount,quantity:this.quantity,endpoint:"quickAdd",source:n.getProductsSource(t?.getAttribute("source"))}).reduce(((t,[i,o])=>o?(t[i]=o,t):t),{});return salla.cart.addItem(i).then((async t=>(this.selectedOptions=[],this.btn?.enable(),this.success.emit(t),t))).catch((t=>{this.failed.emit(t),this.btn?.enable()}))}addBookingProduct(){return salla.config.isGuest()?(salla.auth.api.setAfterLoginEvent("booking::add",this.productId),void salla.event.dispatch("login::open")):salla.booking.add(this.productId).then((t=>this.success.emit(t))).catch((t=>this.failed.emit(t)))}getBtnAttributes(){for(let t=0;t<this.host.attributes.length;t++)["id","class"].includes(this.host.attributes[t].name)||(this.hostAttributes[this.host.attributes[t].name]=this.host.attributes[t].value);return this.hostAttributes}get notifyChannels(){return this.channels||salla.api.product.getAvailabilityChannels?.()||n.availabilityChannels()}getQuickBuyBtnAttributes(){return{...this.getBtnAttributes(),type:this.supportStickyBar&&!this.isDesktopViewport?"plain":"donating"==this.productType?"donate":"buy"}}get redirectsToCheckout(){return!0===salla.config.get("store.settings.buy_now.redirect_to_checkout")}get showsBuyNowButton(){return this.showQuickBuy&&!!document.getElementById("fast-checkout-js")&&!["financial_support","donating"].includes(this.productType)&&this.redirectsToCheckout}buyNowButton(){return o("div",{class:"s-add-product-button-mini-checkout s-mini-checkout hide-scroll s-add-product-button-buy-now"},o("button",{type:"button",class:"s-fast-checkout-button outline "+("ar"==salla.lang.locale?"rtl":"ltr"),disabled:this.buyNowLoading,onClick:()=>this.buyNowRedirect()},o("div",{class:"s-add-product-button-mini-checkout-content"},o("span",{innerHTML:b}),this.buyNowText)))}async buyNowRedirect(){const t=Date.now();if(this.buyNowBusy||t-this.buyNowLastClick<500)return;this.buyNowLastClick=t;const i=++this.buyNowToken,o=document.querySelector(`salla-product-options[product-id="${this.productId}"]`);if(o?.validateAndScroll&&!await o.validateAndScroll())return;if(await salla.cart.event.beforeStartFastCheckout(),i!==this.buyNowToken||this.buyNowBusy)return;this.buyNowBusy=!0;let e=!1;try{this.buyNowLoading=!0;const t=document.querySelector("form.product-form"),i=t?new FormData(t):new FormData;if(i.set("id",String(this.productId)),i.set("source","buy_now"),!await this.collectOrderOptions(i))return;const o=await salla.api.request("checkout/mini",i,"post");o.data?.url?e=this.openCheckout(o.data.url):"login"===o.data?.to&&salla.event.dispatch("login::open")}catch(t){this.failed.emit(t)}finally{e||(this.buyNowBusy=!1,this.buyNowLoading=!1)}}async collectOrderOptions(t){let i;try{i=await salla.api.withoutNotifier((()=>salla.product.api.getOrderOptions([{id:this.productId,quantity:Number(t.get("quantity"))||1}])))}catch(t){return salla?.logger?.warn?.("order-options: fetch failed",t),!0}const o=i?.data?.order_options||[],e=(Array.isArray(i?.data?.advance_free_product)?i.data.advance_free_product:[]).filter((t=>Array.isArray(t?.options)&&t.options.length));if(!o.length&&!e.length)return!0;try{const a=await l().open({orderOptions:o,freeProducts:e,basePrice:this.buyNowLivePrice||Number(i?.data?.products?.[0]?.price?.amount)||0});return c(t,a?.orderOptions||[]),P(t,a?.freeProducts||[]),!0}catch{return!1}}openCheckout(t){return salla.mobile?.isSpaWebview?.()&&salla.mobile.openCheckout?(salla.mobile.openCheckout(t),!1):(window.location.href=t,!0)}miniCheckoutWidget(){let t=salla.config.get("store.id");if(t)return o("salla-mini-checkout-widget",{language:salla.lang.locale,"store-id":t,config:{user:salla.config.get("user"),failure_url:window.location.href},products:[this.productId],api:salla.config.get("store.api"),outline:!0,"form-selector":"form.product-form",class:"s-add-product-button-mini-checkout"},o("div",{slot:"widget-label",class:"s-add-product-button-mini-checkout-content"},o("span",{innerHTML:b}),this.buyNowText))}componentWillLoad(){return salla.onReady().then((async()=>{if(document.documentElement.classList.add("hydrated"),this.showQuickBuy=this.quickBuy&&salla.config.get("store.settings.buy_now")&&"sale"==this.productStatus&&"booking"!==this.productType,this.isApplePayActive=salla.config.get("store.settings.payments")?.includes("apple_pay")&&salla.config.get("store.settings.is_salla_gateway",!1)&&!k()&&await S(),this.passedLabel=this.host.innerHTML.replace("\x3c!----\x3e","").trim(),this.passedLabel&&this.isDesktopViewport)return this.btn?.setText(this.passedLabel);"submit"===this.host.getAttribute("type")&&this.supportStickyBar&&(this.viewportMediaQuery=window.matchMedia("(min-width: 768px)"),this.viewportMediaQuery.addEventListener("change",this.onViewportChange))}))}render(){return this.host.closest(".swiper-slide")?.classList.contains("swiper-slide-duplicate")?"":this.hasSubscribedOptions?o(e,null,o("salla-product-availability",{...this.getBtnAttributes(),"is-subscribed":!0},o("span",{class:"s-hidden"},o("slot",null)))):"out-and-notify"===this.productStatus&&this.notifyChannels||this.hasOutOfStockOption?o(e,null,o("salla-product-availability",{...this.getBtnAttributes()},o("span",{class:"s-hidden"},o("slot",null)))):o(e,{class:{"s-add-product-button-with-quick-buy":this.showQuickBuy,"s-add-product-button-with-sticky-bar":this.supportStickyBar,"s-add-product-button-with-apple-pay":this.showQuickBuy&&this.isApplePayActive}},o("div",{class:{"s-add-product-button-main":this.showQuickBuy,"w-full":!document.getElementById("fast-checkout-js")||["financial_support","donating"].includes(this.productType)}},o("salla-button",{color:"sale"===this.productStatus?"primary":"light",type:"button",fill:"sale"===this.productStatus?"solid":"outline",ref:t=>this.btn=t,onClick:t=>this.addProductToCart(t),disabled:"sale"!==this.productStatus,"aria-label":this.isIconOnlyLabel?this.addToCartLabel:void 0,...this.getBtnAttributes(),"loader-position":"center"},o("slot",null)),this.showQuickBuy&&document.getElementById("fast-checkout-js")&&!["financial_support","donating"].includes(this.productType)?this.redirectsToCheckout?this.buyNowButton():this.miniCheckoutWidget():""),this.showQuickBuy&&this.isApplePayActive?o("salla-quick-buy",{...this.getQuickBuyBtnAttributes()}):"")}async componentDidLoad(){await Salla.hooks.registerComponent("salla-add-product-button",this),this.showsBuyNowButton&&salla.product?.event?.onPriceUpdated?.(this.onBuyNowPriceUpdated),this.notifyOptionsAvailability&&salla.event.on("product-options::change",(async t=>{if(!["thumbnail","color","single-option"].includes(t.option.type))return;this.hasSubscribedOptions=!1,this.selectedOptions=await(document.querySelector(`salla-product-options[product-id="${this.productId}"]`)?.getSelectedOptions()),this.hasOutOfStockOption=await(document.querySelector(`salla-product-options[product-id="${this.productId}"]`)?.hasOutOfStockOption());let i=salla.storage.get(`product-${this.productId}-subscribed-options`);if((i||this.subscribedOptions)&&this.hasOutOfStockOption)if(salla.config.isGuest()){const t=i?i.map((t=>t.split(",").map((t=>parseInt(t))))):[];this.hasSubscribedOptions=t.length>0&&t.some((t=>t.every((t=>this.selectedOptions.some((i=>i.id===t))))))}else this.hasSubscribedOptions=!(!this.subscribedOptions||"null"===this.subscribedOptions||"[]"===this.subscribedOptions)&&JSON.parse(this.subscribedOptions).some((t=>t.every((t=>this.selectedOptions.some((i=>i.id===t))))))}))}componentDidRender(){!this.orderOptionsGateAttached&&this.productId&&C.attach(this.host,this.productId)&&(this.orderOptionsGateAttached=!0),!this.fastCheckoutGateAttached&&I.attach(this.host)&&(this.fastCheckoutGateAttached=!0),!this.passedLabel||this.supportStickyBar&&!this.isDesktopViewport?(this.btn?.setText(this.getLabel()),salla.lang.onLoaded((()=>this.btn?.setText(this.getLabel())))):this.btn?.setText(this.passedLabel)}disconnectedCallback(){this.viewportMediaQuery?.removeEventListener("change",this.onViewportChange),salla.product?.event?.offPriceUpdated?.(this.onBuyNowPriceUpdated)}get host(){return a(this)}};O.style='/*!twlt*/:host{display:block}salla-add-product-button[width=wide]{width:100%}.s-add-product-button-buy-now{display:block;font-family:\'PingARLT\';font-weight:normal}.s-add-product-button-buy-now .s-fast-checkout-button{display:flex;align-items:center;justify-content:center;height:var(--salla-fast-checkout-button-height, 2.5rem);width:var(--salla-fast-checkout-button-width, 100%);border-radius:var(--salla-fast-checkout-button-border-radius, 0.375rem);font-size:0.875rem;font-weight:bold;text-transform:uppercase;cursor:pointer;transition:all 0.3s ease-in-out;border:none;font-family:\'PingARLT\';gap:5px;direction:ltr;border-width:1px;border-color:var(--color-primary);background-color:var(--color-primary);color:var(--color-primary-reverse);padding:1px 6px;line-height:normal;letter-spacing:normal;outline:none}.s-add-product-button-buy-now .s-fast-checkout-button:focus-visible{outline:auto}.s-add-product-button-buy-now .s-fast-checkout-button:hover{background-color:var(--color-primary)}.s-add-product-button-buy-now .s-fast-checkout-button.outline{background-color:transparent;border:1px solid var(--color-primary);color:var(--color-primary)}.s-add-product-button-buy-now .s-fast-checkout-button.rtl{flex-direction:row-reverse}.s-add-product-button-buy-now .s-fast-checkout-button:disabled{cursor:progress;opacity:0.7}.sticky{position:sticky}.hidden{display:none}.w-full{width:100%}.outline{outline-style:solid}.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}.btn{display:inline-flex;flex:1 1 0%;align-items:center;justify-content:center;white-space:nowrap;border-radius:0.375rem;padding-left:1.5rem;padding-right:1.5rem;padding-bottom:0.625rem;padding-top:0.5rem;font-size:0.875rem;line-height:1.25rem;font-weight:700;transition-property:color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:300ms}.btn:hover{opacity:0.8}.s-hidden{display:none}.s-add-product-button-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0}.s-add-product-button-with-quick-buy{display:flex}@media (min-width: 640px){.s-add-product-button-with-quick-buy{flex-direction:column}}.s-add-product-button-with-quick-buy:not(.s-add-product-button-with-sticky-bar){flex-direction:column !important}.s-add-product-button-main{display:flex;width:66.666667%;column-gap:0.375rem}@media (min-width: 640px){.s-add-product-button-main{width:100%;column-gap:0.625rem}}.s-add-product-button-with-sticky-bar salla-quick-buy{width:33.333333%}@media (min-width: 640px){.s-add-product-button-with-sticky-bar salla-quick-buy{width:100%}}.s-add-product-button-with-quick-buy:not(.s-add-product-button-with-sticky-bar) .s-add-product-button-main{width:100%}.s-add-product-button-with-quick-buy:not(.s-add-product-button-with-apple-pay) .s-add-product-button-main{width:100%}.s-add-product-button-main:not(.w-full)>salla-button{width:50% !important}.s-add-product-button-main .s-add-product-button-mini-checkout{--salla-fast-checkout-button-border-radius:.75rem;width:50%}.s-add-product-button-with-sticky-bar{width:100% !important}@media (min-width: 640px){.s-add-product-button-with-sticky-bar{width:auto}}.s-add-product-button-with-apple-pay{column-gap:0.375rem}@media (min-width: 640px){.s-add-product-button-with-apple-pay{column-gap:unset}}.s-add-product-button-with-apple-pay:not(.s-add-product-button-with-sticky-bar) salla-quick-buy apple-pay-button{margin-top:0.625rem}.s-add-product-button-with-sticky-bar salla-quick-buy .s-quick-buy-button .s-button-text span{display:none}@media (min-width: 768px){.s-add-product-button-with-sticky-bar salla-quick-buy .s-quick-buy-button .s-button-text span{display:block}}.s-add-product-button-mini-checkout-content{display:flex;flex-shrink:0;align-items:center;white-space:nowrap;font-size:.8rem}@media (min-width: 640px){.s-add-product-button-mini-checkout-content{font-size:0.875rem;line-height:1.25rem}}.s-add-product-button-mini-checkout-content:where([dir="rtl"],[dir="rtl"] *){flex-direction:row-reverse}.s-add-product-button-mini-checkout-content svg{margin-right:0.375rem;height:1rem;width:1rem;fill:currentColor}.s-add-product-button-mini-checkout-content svg:where([dir="rtl"],[dir="rtl"] *){margin-right:0px;margin-left:0.375rem}.s-add-product-button-busy{pointer-events:none;position:relative}.s-add-product-button-busy::after{position:absolute;top:50%;left:50%;z-index:10;height:1rem;width:1rem;--tw-translate-x:-50%;content:var(--tw-content);--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))}@keyframes spin{to{content:var(--tw-content);transform:rotate(360deg)}}.s-add-product-button-busy::after{animation:spin 1s linear infinite;border-radius:9999px;border-width:2px;border-style:solid;border-top-color:var(--color-primary);border-left-color:var(--color-primary);border-bottom-color:rgb(243 244 246 / var(--tw-border-opacity, 1));--tw-border-opacity:1;border-right-color:rgb(243 244 246 / var(--tw-border-opacity, 1));--tw-content:\'\';content:var(--tw-content)}';const q=class{constructor(i){t(this,i),this.limit=3,this.recommendations=[],this.selectedIds=new Set,this.isLoading=!0,this.canRender=!0,this.isAdding=!1,this.title=salla.lang.get("pages.products.bought_together_title"),this.subtitle=salla.lang.get("pages.products.bought_together_subtitle"),this.buyTogetherFor=salla.lang.get("pages.products.buy_together_for"),this.resolvedProductId=0,this.listViewTracked=!1,this.requestId=null,salla.lang.onLoaded((()=>{this.title=salla.lang.get("pages.products.bought_together_title"),this.subtitle=salla.lang.get("pages.products.bought_together_subtitle"),this.buyTogetherFor=salla.lang.get("pages.products.buy_together_for")}))}componentWillLoad(){salla.onReady().then((()=>{if(!salla.config.get("store.settings.product.bought_together"))return void(this.canRender=!1);const t=salla.config.get("page.id");if(t)return this.resolvedProductId=t,u(String(t));this.canRender=!1})).then((t=>{if(!t?.length)return void(this.canRender=!1);this.requestId=t._requestId||null;const i=[String(this.resolvedProductId),...t.slice(0,this.limit)];return salla.product.fetch({source:"selected",source_value:i})})).then((t=>{if(!t)return;const i=t?.data??[];if(!i.length)return void(this.canRender=!1);const o=i.find((t=>String(t.id)===String(this.resolvedProductId))),e=i.filter((t=>String(t.id)!==String(this.resolvedProductId)));e.length?(this.recommendations=o?[o,...e]:e,this.selectedIds=new Set(this.recommendations.map((t=>t.id)))):this.canRender=!1})).catch((()=>{this.canRender=!1})).finally((()=>{this.isLoading=!1}))}componentDidRender(){!this.recommendations.length||this.listViewTracked||this.intersectionObserver||(this.intersectionObserver=new IntersectionObserver((t=>{t.some((t=>t.isIntersecting))&&(this.listViewTracked=!0,this.intersectionObserver?.disconnect(),this.intersectionObserver=void 0,this.emitListViewed())}),{threshold:.1}),this.intersectionObserver.observe(this.el))}disconnectedCallback(){this.intersectionObserver?.disconnect(),this.intersectionObserver=void 0}emitListViewed(){const t=this.recommendations.filter((t=>!this.isMainProduct(t.id)));salla.event.emit("salla-bought-together::list.viewed",{products:t,source:"pdp_fbt",request_id:this.requestId})}isMainProduct(t){return String(t)===String(this.resolvedProductId)}recommendedPosition(t){const i=this.recommendations.filter((t=>!this.isMainProduct(t.id))).findIndex((i=>String(i.id)===String(t)));return-1===i?-1:i+1}emitProductClicked(t,i){salla.event.emit("salla-bought-together::product.clicked",[{product:t,position:i,source:"pdp_fbt",request_id:this.requestId}])}toggleProduct(t){const i=new Set(this.selectedIds);i.has(t)?i.delete(t):i.add(t),this.selectedIds=i}get totalPrice(){const t=this.recommendations.filter((t=>this.selectedIds.has(t.id))).reduce(((t,i)=>t+(i.price??0)),0),i=salla.config.get("store.currency.decimals")??2,o=Math.pow(10,i);return salla.money(Math.round(t*o)/o)}async addSelectedToCart(){if(this.isAdding||!this.selectedIds.size)return;this.isAdding=!0;let t=!1;try{for(const i of Array.from(this.selectedIds))try{salla.cart?.api&&(salla.cart.api.addToCartSource="pdp_fbt");const t=await salla.cart.addItem({id:i,endpoint:"quickAdd",source:"pdp_fbt"}),o=this.recommendations.find((t=>t.id===i));if(o){const e=this.isMainProduct(i)?0:this.recommendedPosition(i),a=t?.data?.items?.find((t=>String(t.product_id)===String(o.id)))??t?.data?.items?.slice(-1)[0];salla.event.emit("salla-bought-together::product.added",[{product:o,position:e,cartItem:a,cartId:t?.data?.id,request_id:this.requestId}])}}catch(i){salla.log(i),t=!0}t&&salla.error(salla.lang.get("common.messages.error"))}finally{this.isAdding=!1}}getSkeletonView(){return o(e,{class:"s-bought-together-entry"},o("div",{class:"s-bought-together-skeleton"},o("div",{class:"s-bought-together-skeleton-header"},o("salla-skeleton",{height:"16px",width:"35%"}),o("salla-skeleton",{height:"10px",width:"60%"})),Array(4).fill(null).map(((t,i)=>o("div",{key:i,class:"s-bought-together-skeleton-item"},o("salla-skeleton",{height:"22px",width:"22px"}),o("salla-skeleton",{height:"48px",width:"48px"}),o("div",{class:"s-bought-together-skeleton-info"},o("salla-skeleton",{height:"12px",width:"55%",style:{marginBottom:"3px"}}),o("salla-skeleton",{height:"10px",width:"25%"}))))),o("salla-skeleton",{height:"44px",width:"100%"})))}render(){return this.canRender?this.isLoading?this.getSkeletonView():this.recommendations.length?o(e,{class:"s-bought-together-entry"},o("div",{class:"s-bought-together-header"},o("h3",{class:"s-bought-together-title"},this.title),o("p",{class:"s-bought-together-subtitle"},this.subtitle)),o("div",{class:"s-bought-together-list"},this.recommendations.map((t=>o("div",{key:t.id,class:"s-bought-together-item"+(this.selectedIds.has(t.id)?"":" s-bought-together-item--unchecked")},o("label",{class:"s-bought-together-checkbox-label"},o("input",{type:"checkbox",class:"s-bought-together-checkbox",checked:this.selectedIds.has(t.id),onChange:()=>this.toggleProduct(t.id)}),o("span",{class:"s-bought-together-checkmark"})),o("a",{class:"s-bought-together-item-link",href:t.url,onClick:()=>!this.isMainProduct(t.id)&&this.emitProductClicked(t,this.recommendedPosition(t.id))},o("img",{class:"s-bought-together-item-img",src:t.image?.url||salla.url.cdn("images/s-empty.png"),alt:t.image?.alt||t.name,loading:"lazy",decoding:"async",onError:t=>{t.currentTarget.onerror=null,t.currentTarget.src=salla.url.cdn("images/s-empty.png")}}),o("span",{class:"s-bought-together-item-name"},t.name)),o("span",{class:"s-bought-together-item-price",innerHTML:null!=t.price?salla.money(t.price):""}))))),o("salla-button",{class:"s-bought-together-btn",disabled:!this.selectedIds.size||this.isAdding,loading:this.isAdding,onClick:()=>this.addSelectedToCart()},o("span",{innerHTML:`${this.buyTogetherFor} ${this.totalPrice}`}))):null:null}get el(){return a(this)}};q.style='/*!twlt*/:host{display:block}.s-bought-together-checkbox:checked~.s-bought-together-checkmark{background-color:var(--color-primary, #2ECC71);border-color:var(--color-primary, #2ECC71)}.s-bought-together-checkbox:checked~.s-bought-together-checkmark::after{content:"";display:block;width:5px;height:9px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg);margin-top:-2px}.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-bought-together-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-bought-together-header{margin-bottom:1rem}.s-bought-together-title{margin-bottom:0.25rem;font-size:1.125rem;line-height:1.75rem;font-weight:700;--tw-text-opacity:1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.s-bought-together-subtitle{margin:0px;font-size:0.875rem;line-height:1.25rem;--tw-text-opacity:1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.s-bought-together-list{margin-bottom:1rem;display:flex;flex-direction:column}.s-bought-together-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-bought-together-item{display:flex;align-items:center;gap:0.75rem;padding-top:0.75rem;padding-bottom:0.75rem;transition-property:opacity;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:200ms}.s-bought-together-item--unchecked{opacity:0.4}.s-bought-together-checkbox-label{position:relative;display:flex;flex-shrink:0;cursor:pointer;align-items:center}.s-bought-together-checkbox{position:absolute;height:0px;width:0px;opacity:0}.s-bought-together-checkmark{display:flex;height:22px;width:22px;flex-shrink:0;align-items:center;justify-content:center;border-radius:0.375rem;border-width:2px;--tw-border-opacity:1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1));--tw-bg-opacity:1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));transition-property:all;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms}.s-bought-together-item-link{display:contents;color:inherit;text-decoration-line:none}.s-bought-together-item-img{height:3rem;width:3rem;flex-shrink:0;border-radius:0.375rem;object-fit:cover}.s-bought-together-item-name{flex:1 1 0%;font-size:0.875rem;line-height:1.25rem;line-height:1.375}.s-bought-together-item-price{flex-shrink:0;white-space:nowrap;font-size:0.875rem;line-height:1.25rem;font-weight:600}.s-bought-together-btn{width:100%}.s-bought-together-skeleton{display:flex;flex-direction:column;gap:0.75rem}.s-bought-together-skeleton-header{margin-bottom:0.5rem;display:flex;flex-direction:column;gap:0.5rem}.s-bought-together-skeleton-item{display:flex;align-items:center;gap:0.75rem;padding-top:0.5rem;padding-bottom:0.5rem}.s-bought-together-skeleton-info{display:flex;flex:1 1 0%;flex-direction:column;gap:0.25rem}';const A=class{constructor(i){t(this,i),this.isUser=salla.config.isUser(),this.translationLoaded=!1,this.notifyOptionsAvailability=!1,this.isSubscribed=!1,this.handleSubmitOptions=async()=>{let t={id:this.productId};if(!this.notifyOptionsAvailability)return t;let i=document.querySelector(`salla-product-options[product-id="${this.productId}"]`),o=Object.values(await(i?.getSelectedOptionsData())||{});if(o.length&&!await(i?.reportValidity())){let t=salla.lang.get("common.messages.required_fields");throw salla.error(t),t}return t.options=[],o.forEach((i=>{i&&!isNaN(i)&&t.options.push(Number(i))})),t},this.typing=t=>{const i=t.target.nextElementSibling;t.target.classList.remove("s-has-error"),i?.classList.contains("s-product-availability-error-msg")&&(i.innerText=""),13===t.keyCode&&this.submit()},salla.lang.onLoaded((()=>{this.translationLoaded=!0,this.title_=this.host.title||salla.lang.get("pages.products.notify_availability_title"),this.modal?.setTitle(this.title_)})),this.productId||(this.productId=salla.config.get("page.id")),this.isUser||(this.channelsWatcher(this.channels),this.title_=this.host.title||salla.lang.get("pages.products.notify_availability_title"),this.host.removeAttribute("title"))}channelsWatcher(t){let i=t||salla.api.product.getAvailabilityChannels?.()||n.availabilityChannels();this.channels_=i?i.split(","):[]}get isSubscribedToProduct(){return this.isSubscribed||!this.notifyOptionsAvailability&&(!!salla.api.product.isSubscribedToAvailability?.(this.productId)||!!salla.storage.get(`product-${this.productId}-subscribed`))}openModel(){this.handleSubmitOptions().then((t=>t?this.modal.open():null))}async submit(){let t=await this.handleSubmitOptions();if(this.isUser)return salla.api.product.availabilitySubscribe(t).then((()=>this.isSubscribed=!0));if(this.channels_.includes("sms")||this.channels_.includes("whatsapp")){let{phone:i,countryCode:o}=await this.mobileInput.getValues();t.country_code=o,t.phone=i}return this.channels_.includes("email")&&""!==this.email.value&&(t.email=this.email.value),await this.validateform(),this.btn.load().then((()=>this.btn.disable())).then((()=>salla.api.product.availabilitySubscribe(t))).then((()=>{if(this.notifyOptionsAvailability){if(t.options.length){let i=salla.storage.get(`product-${this.productId}-subscribed-options`)||[],o=t.options.join(",");i.includes(o)?salla.log("already subscribed to this options"):(i.push(o),salla.storage.set(`product-${this.productId}-subscribed-options`,i),this.isSubscribed=!0)}}else this.isSubscribed=!0})).then((()=>this.btn.stop())).then((()=>this.modal.close())).catch((()=>this.btn.stop()&&this.btn.enable()))}async validateform(){try{if(this.channels_.includes("email")){const t=n.isValidEmail(this.email.value);if(t)return;!t&&this.validateField(this.email,salla.lang.get("common.elements.email_is_valid"))}if((this.channels_.includes("sms")||this.channels_.includes("whatsapp"))&&await this.mobileInput.isValid())return}catch(t){throw"Please insert required fields"}}validateField(t,i){t.classList.add("s-has-error"),t.nextElementSibling.innerText="* "+i}render(){return o(e,{key:"ba2423b2f12f2c6b3870c55b12157bbcf42407e8",class:"s-product-availability-wrap"},this.isSubscribedToProduct?o("div",{class:"s-product-availability-subscribed"},o("span",{innerHTML:h,class:"s-product-availability-subs-icon"}),salla.lang.get("pages.products.notify_availability_success")):o("salla-button",{width:"wide",onClick:()=>this.isUser?this.submit():this.openModel()},salla.lang.get("pages.products.notify_availability")),this.isUser||this.isSubscribedToProduct?"":this.renderModal())}renderModal(){return o("salla-modal",{ref:t=>this.modal=t,"modal-title":this.title_,subTitle:salla.lang.get("pages.products.notify_availability_subtitle"),width:"sm"},o("span",{slot:"icon",class:"s-product-availability-header-icon",innerHTML:h}),o("div",{class:"s-product-availability-body"},this.channels_.includes("email")?[o("label",{class:"s-product-availability-label"},salla.lang.get("common.elements.email")),o("input",{class:"s-product-availability-input",onKeyDown:t=>this.typing(t),placeholder:salla.lang.get("common.elements.email_placeholder")||"your@email.com",ref:t=>this.email=t,type:"email"}),o("span",{class:"s-product-availability-error-msg"})]:"",this.channels_.includes("sms")||this.channels_.includes("whatsapp")?[o("label",{class:"s-product-availability-label"},salla.lang.get("common.elements.mobile")),o("salla-tel-input",{ref:t=>this.mobileInput=t,onKeyDown:t=>this.typing(t)})]:""),o("div",{slot:"footer",class:"s-product-availability-footer"},o("salla-button",{class:"modal-cancel-btn",width:"wide",color:"light",fill:"outline",onClick:()=>this.modal.close()},salla.lang.get("common.elements.cancel")),o("salla-button",{class:"submit-btn","loader-position":"center",width:"wide",ref:t=>this.btn=t,onClick:()=>this.submit()},salla.lang.get("common.elements.submit"))))}get host(){return a(this)}static get watchers(){return{channels:["channelsWatcher"]}}};var N,z,M;A.style='/*!twlt*/.outline{outline-style:solid}.s-has-error{--tw-border-opacity:1;border-color:rgb(248 113 113 / var(--tw-border-opacity, 1))}.s-has-error:focus{--tw-border-opacity:1;border-color:rgb(239 68 68 / var(--tw-border-opacity, 1))}.btn{display:inline-flex;flex:1 1 0%;align-items:center;justify-content:center;white-space:nowrap;border-radius:0.375rem;padding-left:1.5rem;padding-right:1.5rem;padding-bottom:0.625rem;padding-top:0.5rem;font-size:0.875rem;line-height:1.25rem;font-weight:700;transition-property:color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:300ms}.btn:hover{opacity:0.8}.s-has-error{--tw-border-opacity:1 !important;border-color:rgb(239 68 68 / var(--tw-border-opacity, 1)) !important;--tw-text-opacity:1 !important;color:rgb(239 68 68 / var(--tw-text-opacity, 1)) !important}.s-product-availability-wrap{width:100%}.s-product-availability-subscribed{display:flex;width:100%;align-items:center;justify-content:center;border-radius:0.375rem;--tw-bg-opacity:1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1));padding-left:1.5rem;padding-right:1.5rem;padding-top:0.75rem;padding-bottom:0.75rem;font-size:0.875rem;line-height:1.25rem;font-weight:700;--tw-text-opacity:1;color:rgb(34 197 94 / var(--tw-text-opacity, 1))}.s-product-availability-subs-icon svg{margin-left:0.5rem;margin-right:0.5rem;width:1.25rem;fill:#22c55e}.s-product-availability-body{position:relative;z-index:50}.s-product-availability-header-icon{display:inline-flex;height:3rem;width:3rem;align-items:center;justify-content:center;border-radius:9999px;border-width:1px;border-style:solid;--tw-border-opacity:1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1))}@media (min-width: 640px){.s-product-availability-header-icon{margin-left:auto;margin-right:auto;margin-bottom:1rem;height:5rem;width:5rem}}.s-product-availability-header-icon:where([dir="ltr"],[dir="ltr"] *){margin-right:0.5rem}@media (min-width: 640px){.s-product-availability-header-icon:where([dir="ltr"],[dir="ltr"] *){margin-right:0px}}.s-product-availability-header-icon:where([dir="rtl"],[dir="rtl"] *){margin-left:0.5rem}@media (min-width: 640px){.s-product-availability-header-icon:where([dir="rtl"],[dir="rtl"] *){margin-left:0px}}.s-product-availability-header-icon svg{height:1.25rem;width:1.25rem;flex-shrink:0;fill:#9ca3af}.s-product-availability-label{margin-bottom:0.625rem;display:block;font-size:0.875rem;line-height:1.25rem;font-weight:700;--tw-text-opacity:1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.s-product-availability-label:where([dir="ltr"],[dir="ltr"] *){text-align:left}.s-product-availability-label:where([dir="rtl"],[dir="rtl"] *){text-align:right}.s-product-availability-input{height:2.5rem;width:100%;border-radius:0.375rem;border-width:1px;--tw-border-opacity:1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));padding-left:0.75rem;padding-right:0.75rem;font-size:0.875rem;line-height:1.25rem;transition-property:color, background-color, border-color, text-decoration-color, fill, stroke;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms}.s-product-availability-input:focus{border-color:var(--color-primary)}.s-product-availability-input:is(.dark *){--tw-border-opacity:1;border-color:rgb(75 85 99 / var(--tw-border-opacity, 1));--tw-bg-opacity:1;background-color:rgb(75 85 99 / var(--tw-bg-opacity, 1))}.s-product-availability-footer{margin-top:1rem;display:flex;justify-content:space-between}.s-product-availability-footer>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-right:calc(1rem * var(--tw-space-x-reverse));margin-left:calc(1rem * calc(1 - var(--tw-space-x-reverse)))}.s-product-availability-footer:where([dir="rtl"],[dir="rtl"] *)>:not([hidden])~:not([hidden]){--tw-space-x-reverse:1}.s-product-availability-footer-btn{width:100%}.s-product-availability-error-msg{display:block;height:1.75rem;padding-top:0.25rem;font-size:0.75rem;line-height:1rem;--tw-border-opacity:1;border-color:rgb(248 113 113 / var(--tw-border-opacity, 1))}.s-product-availability-error-msg:focus{--tw-border-opacity:1;border-color:rgb(239 68 68 / var(--tw-border-opacity, 1))}.s-product-availability-error-msg{--tw-border-opacity:1 !important;border-color:rgb(239 68 68 / var(--tw-border-opacity, 1)) !important;--tw-text-opacity:1 !important;color:rgb(239 68 68 / var(--tw-text-opacity, 1)) !important}',function(t){t[t.INIT=1]="INIT",t[t.IDLE=2]="IDLE",t[t.PROCESSING_QUEUED=9]="PROCESSING_QUEUED",t[t.PROCESSING=3]="PROCESSING",t[t.PROCESSING_COMPLETE=5]="PROCESSING_COMPLETE",t[t.PROCESSING_ERROR=6]="PROCESSING_ERROR",t[t.PROCESSING_REVERT_ERROR=10]="PROCESSING_REVERT_ERROR",t[t.LOADING=7]="LOADING",t[t.LOAD_ERROR=8]="LOAD_ERROR"}(N||(N={})),function(t){t[t.EMPTY=0]="EMPTY",t[t.IDLE=1]="IDLE",t[t.ERROR=2]="ERROR",t[t.BUSY=3]="BUSY",t[t.READY=4]="READY"}(z||(z={})),function(t){t[t.INPUT=1]="INPUT",t[t.LIMBO=2]="LIMBO",t[t.LOCAL=3]="LOCAL"}(M||(M={}));const L=class{constructor(e){if(t(this,e),this.changed=i(this,"changed"),this.fileTypes={pdf:"application/pdf",png:"image/png",jpg:"image/jpeg",word:"application/doc,application/ms-doc,application/msword,application/vnd.openxmlformats-officedocument.wordprocessingml.document",exl:"application/excel,application/vnd.ms-excel,application/x-excel,application/x-msexcel,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",txt:"text/plain"},this.outOfStockText="",this.donationAmount=salla.lang.get("pages.products.donation_amount"),this.selectDonationAmount=salla.lang.getWithDefault("pages.products.select_donation_amount","تحديد مبلغ التبرع"),this.selectAmount=salla.lang.getWithDefault("pages.products.select_amount","اختر المبلغ"),this.isCustomDonation=!1,this.selectedOptions=[],this.canDisabled=!1,this.disableCardValue=!0,this.availableDigitalCardValues=[],this.userInitiatedValidation=!1,this.isCartMode=!1,this.availabilityMap={},this.productAvailable=!1,this.outSkus=[],this.ignoreDefaultCardValue=!1,this.productId=salla.config.get("page.id"),this.noPadding=!1,this.handleDonationOptions=(t,i,o)=>{if("custom"===i&&"input"===o){const i=t.target;return salla.helpers.inputDigitsOnly(i),salla.event.emit("product-options::donation-changed",{id:this.productId,price:i.value}),void i.dispatchEvent(new window.Event("change",{bubbles:!0}))}const e="option"===o?String(t.target?.value??""):"";if("option"===o&&"custom"===i&&(t.preventDefault(),t.stopPropagation(),t.stopImmediatePropagation()),this.isCustomDonation="custom"===e,this.donationInput){if("custom"===e?(this.donationInput.value="",this.donationInput.focus()):this.donationInput.value=e,"custom"===i)return;salla.event.emit("product-options::donation-changed",{id:this.productId,price:e})}},this.hideLabel=t=>!(t.type!==m.DONATION||!t.donation||t.donation.can_donate),this.getExpireDonationMessage=t=>{if(!t.donation)return;const i=t.donation.target_amount<=t.donation.collected_amount;return o("div",{class:{"s-product-options-donation-message":!0,"s-product-options-donation-completed":i,"s-product-options-donation-expired":!i}},o("p",null,t.donation.target_message),o("span",{innerHTML:i?salla.money(t.donation.target_amount):""}))},salla.lang.onLoaded((()=>{this.outOfStockText=salla.lang.get("pages.products.out_of_stock"),this.donationAmount=salla.lang.get("pages.products.donation_amount"),this.selectDonationAmount=salla.lang.getWithDefault("pages.products.select_donation_amount","تحديد مبلغ التبرع"),this.selectAmount=salla.lang.getWithDefault("pages.products.select_amount","اختر المبلغ")})),this.options)try{return void this.setOptionsData(Array.isArray(this.options)?this.options:JSON.parse(this.options))}catch(t){salla.log("Bad json passed via options prop")}Array.isArray(this.optionsData)||(salla.log("Options is not an array[] ---\x3e ",this.optionsData),this.setOptionsData([])),this.productId&&!salla.url.is_page("cart")&&salla.api.product.getDetails(this.productId,["options"]).then((t=>{this.productAvailable=!t.data.is_out_of_stock,this.setOptionsData(t.data.options)}))}async setOptionsData(t){this.optionsData=t,this.outSkus=[],this.optionsData[0]?.details?.forEach((t=>{Object.entries(t.skus_availability||{}).filter((([,t])=>!t)).forEach((([t])=>this.outSkus.push(Number(t))))})),this.fillSelectedOptions(),this.computeAvailability()}async getOptionsData(){return this.optionsData}async getSelectedOptionsData(){const t={},i=this.host.getElementSallaData(),o=void 0!==this.bundleContext?this.bundleContext:null;return i.forEach(((i,e)=>{if(o){if(e.startsWith("bundle[")&&e.includes("[options][")){const o=e.split("[options][")[1].replace("]","");t[o]=i}}else e.startsWith("options[")&&(t[e.replace("options[","").replace("]","")]=i)})),t}async reportValidity(){const t=this.host.querySelectorAll("[required]");let i=!0;for(let o=0;o<t.length;o++){const e=t[o];if(e.disabled||e.closest(".hidden"))continue;const a=e.closest("salla-map");a&&"function"==typeof a.reportValidity?await a.reportValidity()||(i=!1):"reportValidity"in e&&!e.reportValidity()&&(i=!1)}return i}async hasOutOfStockOption(){return this.selectedOptions.some((t=>t.is_out))||this.selectedSkus?.length&&this.selectedSkus?.every((t=>this.outSkus.includes(t)))}async getSelectedOptions(){return this.selectedOptions}async getOption(t){return this.optionsData.find((i=>i.id===t))}invalidHandler(t,i){const o=t.target.closest(".s-product-options-option");o.classList.contains("s-product-options-option-error")||o.classList.add("s-product-options-option-error"),!this.userInitiatedValidation&&!salla.helpers.isIOSDevice()||salla.url.is_page("cart")||this.host.querySelector(".s-product-options-option-error")===o&&this.scrollToElement(o)}scrollToElement(t){t&&t.scrollIntoView({behavior:"smooth",block:"center"})}changedHandler(t,i,o=!0){const e={event:t,option:i,detail:null,productId:this.productId};if(i.details){const o=i.details.find((i=>Number(i.id)===Number(t.target.value)));e.detail=o}"country"===i.type&&this.handleCountryOptionChange(t,e.detail);const a=t.target.closest(".s-product-options-option");(t.target.value||(i.type===m.FILE||i.type===m.IMAGE)&&"added"===t.type||i.type===m.MAP&&"selected"===t.type&&Number.isFinite(Number(t.target.lat))&&Number.isFinite(Number(t.target.lng)))&&setTimeout((()=>{a.classList.remove("s-product-options-option-error")}),200),i.type===m.DONATION&&salla.event.emit("product-options::donation-changed",{id:this.productId,price:t.target.value}),this.setSelectedSkus(),this.handleRequiredMultipleOptions(i);const s=this.selectedOptions.findIndex((t=>t.option_id===e.option.id));if(e.option.type===m.MULTIPLE_OPTIONS){const t=this.selectedOptions.findIndex((t=>t.option_id===e.option.id&&t?.id===e.detail?.id));t>-1?this.selectedOptions.splice(t,1):this.selectedOptions.push({...e.detail,option_id:e.option.id})}else e.detail&&0!==Object.keys(e.detail).length?s>-1?this.selectedOptions[s]={...e.detail,option_id:e.option.id}:this.selectedOptions.push({...e.detail,option_id:e.option.id}):s>-1&&this.selectedOptions.splice(s,1);this.optionsData=this.optionsData.map((t=>t.id===e.option.id?{...t,details:t.details.map((t=>({...t,is_selected:e.option.type===m.MULTIPLE_OPTIONS?this.selectedOptions.some((i=>i.id===t.id)):Number(t.id)===Number(e.detail?.id),value:e.detail?.value})))}:t)),this.pruneInvisibleConditionalSelections(),this.setSelectedSkus(),requestAnimationFrame((()=>{this.optionsData?.filter((t=>t.type===m.MULTIPLE_OPTIONS&&t.required)).forEach((t=>this.handleRequiredMultipleOptions(t)))})),o&&(this.changed.emit(e),salla.event.emit("product-options::change",e))}setSelectedSkus(){this.selectedSkus=this.selectedOptions.map((t=>Object.keys(t.skus_availability||{}))).reduce(((t,i)=>t.filter((t=>i.includes(t)))),[]).map((t=>Number(t))),this.computeAvailability()}handleRequiredMultipleOptions(t){if(t.type!==m.MULTIPLE_OPTIONS||!t.required)return;const i=this.host.querySelector(`[data-option-id="${t.id}"]`);if(!i)return;const o=i.querySelectorAll("input:checked").length;i.querySelectorAll("input").forEach((t=>t.toggleAttribute("required",!o)))}pruneInvisibleConditionalSelections(){const t=Math.max(1,this.optionsData.length);for(let i=0;i<t;i++){let t=!1;for(const i of this.optionsData){const o=i.visibility_condition;if(!o)continue;const e=this.selectedOptions.filter((t=>t.option_id===o.option)).map((t=>String(t.id))).includes(String(o.value));("="===o.operator?e:!e)||this.clearStaleOption(i.id)&&(t=!0)}if(!t)break}}clearStaleOption(t){const i=this.optionsData.find((i=>i.id===t));if(!i)return!1;const o=this.selectedOptions.length;this.selectedOptions=this.selectedOptions.filter((i=>i.option_id!==t));const e=this.selectedOptions.length!==o,a=null!=i.value&&String(i.value).length>0,s=i.details?.some((t=>t.is_selected))??!1;return!!(e||a||s)&&(this.optionsData=this.optionsData.map((i=>i.id!==t?i:{...i,value:void 0,details:i.details?.map((t=>({...t,is_selected:!1})))??i.details})),!0)}getLatLng(t,i){if("string"!=typeof t||!t.trim())return;const o=t.split(",")["lat"===i?0:1];if(null==o)return;const e=o.trim();if(""===e)return;const a=Number(e);return Number.isFinite(a)?a:void 0}getDisplayForType(t){return this[`${t.type}Option`]?this[`${t.type}Option`](t):t.type===m.COLOR_PICKER?this.colorPickerOption(t):t.type===m.MULTIPLE_OPTIONS?this.multipleOptions(t):t.type===m.SINGLE_OPTION?this.singleOption(t):t.type===m.RADIO?this.radioOption(t):t.type===m.DIGITAL_CARD_VALUE?this.digitalCardValuesOption(t):t.type===m.COUNTRY?this.countryOption(t):t.type===m.BOOKING&&salla.url.is_page("cart")?o("salla-booking-field",{onInvalidInput:i=>this.invalidHandler(i,t),option:t,productId:t.value}):(salla.log(`Couldn't find options type(${t.type})😢`),"")}getOptionShownWhen(t){return t.visibility_condition?{"data-show-when":`options[${t.visibility_condition.option}] ${t.visibility_condition.operator} ${t.visibility_condition.value}`}:{}}getAvailableDigitalCardSKUs(t){const i=this.optionsData.find((({type:t})=>"digital-code-value"===t));if(!i)throw new Error("product-options:: No digital card options found");const o=Object.keys(t.skus_availability).filter((i=>!1===t.skus_availability[i]));this.availableDigitalCardValues=i.details.filter((t=>!Object.keys(t.skus_availability).filter((t=>o.includes(t))).length))}handleCountryOptionChange(t,i){t.stopImmediatePropagation(),this.ignoreDefaultCardValue=!0;const o=this.host.querySelector("input[data-code-value]:checked");if(o&&(o.checked=!1),!this.optionsData.find((({type:t})=>"digital-code-value"===t)))throw new Error("product-options:: No digital card options found");this.getAvailableDigitalCardSKUs(i)}getSelectedDigitalCardOptions(t){const i=t.details.find((t=>t.is_selected)),o=t.details.find((t=>!!t.is_default))||t.details[0];if(["digital-code-value","country"].includes(t.type))return i||o}async componentWillLoad(){if(salla.url.is_page("cart")&&(this.disableCardValue=!1,this.fillSelectedOptions()),this.config)try{this.optionConfig="string"==typeof this.config?JSON.parse(this.config):this.config}catch(t){console.error("Failed to parse JSON in config prop:",t)}if(this.optionsData.filter((({type:t})=>["country","digital-card-value"].includes(t))).length>0&&salla.url.is_page("cart")){const t=this.optionsData.find((t=>"country"===t.type)),i=t&&this.getSelectedDigitalCardOptions(t);i&&this.getAvailableDigitalCardSKUs(i)}return this.outOfStockText=salla.lang.get("pages.products.out_of_stock"),this.computeAvailability(),await salla.onReady(),this.canDisabled=!salla.config.get("store.settings.product.notify_options_availability")||salla.url.is_page("cart"),this.pasteHandler=this.handlePaste.bind(this),document.addEventListener("paste",this.pasteHandler),!salla.storage.get("cart.id")&&this.optionsData.some((t=>["file","image"].includes(t.type)))?salla.api.cart.getCurrentCartId(!1,"salla-product-options"):null}disconnectedCallback(){this.pasteHandler&&document.removeEventListener("paste",this.pasteHandler)}handlePaste(t){const i=t.target;if(!(Salla.helpers.isAppleDevice()&&(i instanceof HTMLInputElement||i instanceof HTMLTextAreaElement)&&i.classList.contains("s-form-control")&&this.host.contains(i)))return;t.preventDefault();const o=t.clipboardData?.getData("text")||"",e=i.selectionStart,a=i.selectionEnd,s=i.value.slice(0,e)+o+i.value.slice(a);i.value=s,i.setSelectionRange(e+o.length,e+o.length);try{i.dispatchEvent(new window.Event("change",{bubbles:!0}))}catch(t){Salla.log("Error on change")}}hideDigitalCardsOptions(t){return this.disableCardValue&&t.type===m.DIGITAL_CARD_VALUE&&!salla.url.is_page("cart")}render(){if(0!==this.optionsData?.length)return o(e,{class:{"s-product-options-wrapper":!0,"s-product-options-no-padding":this.noPadding}},o("salla-conditional-fields",null,this.optionsData.map((t=>o("div",{key:t.id,class:"s-product-options-option-container"+(t.visibility_condition||this.hideDigitalCardsOptions(t)?" hidden":""),"data-option-id":t.id,...this.getOptionShownWhen(t)},"splitter"===t.name?this.splitterOption():o("div",{class:{"s-product-options-option":!0,"s-product-options-option-booking":t.type===m.BOOKING&&salla.url.is_page("cart")},"data-option-type":t.type,"data-option-required":`${t.required}`},o("label",{htmlFor:this.generateInputId(t.id),class:"s-product-options-option-label "+(this.hideLabel(t)?"s-product-options-option-label-hidden":"")},o("b",null,t.name,t.required&&o("span",null," * ")," "),o("small",null,t.placeholder)),o("div",{class:"s-product-options-option-content "+(this.hideLabel(t)||t.type===m.BOOKING&&salla.url.is_page("cart")?"s-product-options-option-content-full-width":"")},this.getDisplayForType(t))))))))}generateUniqueKey(t){const i=this.bundleContext;let o=this.uniqueKey?`${t}-${this.uniqueKey}`:t;if(i)try{const t="string"==typeof i?JSON.parse(i):i,{sectionId:e,productId:a}=t;o=`${o}-bundle-${e}-${a}`}catch(t){}return o}generateInputId(t){return this.generateUniqueKey(`option-${t}`)}generateInputName(t){const i=this.bundleContext,o=t.toString();if(i)try{const t="string"==typeof i?JSON.parse(i):i,{sectionId:e,productId:a}=t;return`bundle[${e}][${a}][options][${o}]`}catch(t){return`options[${o}]`}return`options[${o}]`}fillSelectedOptions(){this.selectedOptions=this.optionsData.reduce(((t,i)=>{const o=(i.details??[]).filter((t=>t.is_selected)).map((t=>({...t,option_id:i.id})));return t.concat(o)}),[])}async seedSelectedOptions(){this.fillSelectedOptions(),requestAnimationFrame((()=>{this.optionsData?.filter((t=>t.type===m.MULTIPLE_OPTIONS&&t.required)).forEach((t=>this.handleRequiredMultipleOptions(t)))}))}async componentDidLoad(){if(!this.optionsData?.length)return;await Salla.hooks.registerComponent("salla-product-options",this);const t=this.optionsData.find((t=>t.type===m.DONATION))?.details?.find((t=>t.is_selected));if(t&&setTimeout((()=>{salla.event.emit("product-options::donation-changed",{id:this.productId,price:t.additional_price})}),1e3),!salla.url.is_page("cart")&&!this.isCartMode){const t=[m.SINGLE_OPTION,m.MULTIPLE_OPTIONS,m.COLOR,m.THUMBNAIL,m.DONATION,m.DIGITAL_CARD_VALUE,m.COUNTRY];this.optionsData.some((i=>t.includes(i.type)&&i.details?.some((t=>t.is_selected))))&&requestAnimationFrame((()=>{try{const t=this.host.closest("form");if(!t)return;const i=new FormData(t),o=i.get("id")||i.get("product_id");if(o&&String(o)!==String(this.productId))return;salla.product.getPrice(i)}catch(t){salla.log("Error updating price for pre-selected options:",t)}}))}}async enterCartMode(){this.isCartMode=!0,this.disableCardValue=!1,this.canDisabled=!0,this.fillSelectedOptions(),this.computeAvailability()}async enableUserInitiatedValidation(){this.userInitiatedValidation=!0}async validateAndScroll(){return await this.enableUserInitiatedValidation(),this.reportValidity()}donationOption(t,i){return o("div",{class:"s-product-options-donation-wrapper"},t.donation?.can_donate?[t.donation?o("div",{key:t.id,class:"s-product-options-donation-progress"},o("salla-progress-bar",{donation:t.donation})):"",t.details.length?[o("h4",{key:t.id},this.selectAmount),o("div",{key:t.id,class:"s-product-options-donation-options"},t.details.map(((i,e)=>o("div",{key:t.id,class:"s-product-options-donation-options-item"},o("input",{id:this.generateUniqueKey(`donation-option-${e}`),type:"radio",name:"donating_option",checked:i.is_selected,value:i.additional_price,onChange:o=>this.handleDonationOptions(o,i,"option",t)}),o("label",{htmlFor:this.generateUniqueKey(`donation-option-${e}`)},o("span",{innerHTML:salla.money(i.name)}))))),t.donation?.custom_amount_enabled?o("div",{class:"s-product-options-donation-options-item"},o("input",{id:this.generateUniqueKey("donation-option-custom"),type:"radio",name:"donating_option",value:"custom",onChange:i=>this.handleDonationOptions(i,"custom","option",t)}),o("label",{htmlFor:this.generateUniqueKey("donation-option-custom")},o("span",null," ",this.selectDonationAmount," "))):"")]:"",o("div",{key:t.id,class:{"s-product-options-donation-input-group":!0,shown:!t.details.length||t.details.length&&this.isCustomDonation}},o("input",{type:"text",id:"donating-amount",name:"donation_amount",class:"s-form-control",ref:t=>{this.donationInput=t},value:t.details.length&&t.details.some((t=>t.is_selected))?t.details.find((t=>t.is_selected)).additional_price:t.value,placeholder:t.placeholder,onInput:i=>this.handleDonationOptions(i,"custom","input",t),onBlur:i=>this.changedHandler(i,t),onInvalid:i=>this.invalidHandler(i,t)}),o("span",{class:"s-product-options-donation-amount-currency"},salla.config.currency(salla.config.get("user.currency_code")).symbol))]:this.getExpireDonationMessage(t))}fileUploader(t,i=null){return o("salla-file-upload",{...i||{},"payload-name":"file",value:t.value,"instant-upload":!0,name:this.generateInputName(t.id),required:!t.visibility_condition&&t.required,height:"120px",onAdded:i=>{this.changedHandler(i,t,!(i.detail?.file?.origin===M.LOCAL))},url:salla.cart.api.getUploadImageEndpoint(),"form-data":{cart_item_id:this.productId,product_id:this.productId},onInvalidInput:i=>this.invalidHandler(i,t),class:{"s-product-options-image-input":!0,required:t.required}},o("div",{class:"s-product-options-filepond-placeholder"},o("span",{class:"s-product-options-filepond-placeholder-icon",innerHTML:i.accept?.split(",").every((t=>t.includes("image")))?y:'\x3c!-- Generated by IcoMoon.io --\x3e\n<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 32 32">\n<title>file-upload</title>\n<path d="M21.333 24c0.341 0 0.683-0.131 0.943-0.391 0.521-0.521 0.521-1.364 0-1.885l-5.333-5.333c-0.123-0.123-0.271-0.22-0.433-0.288-0.327-0.135-0.693-0.135-1.019 0-0.163 0.068-0.311 0.165-0.433 0.288l-5.333 5.333c-0.521 0.521-0.521 1.364 0 1.885s1.364 0.521 1.885 0l3.057-3.057v10.115c0 0.736 0.597 1.333 1.333 1.333s1.333-0.597 1.333-1.333v-10.115l3.057 3.057c0.26 0.26 0.601 0.391 0.943 0.391zM28.943 9.724l-9.333-9.333c-0.249-0.251-0.589-0.391-0.943-0.391h-12c-2.205 0-4 1.795-4 4v24c0 2.205 1.795 4 4 4h4c0.736 0 1.333-0.597 1.333-1.333s-0.597-1.333-1.333-1.333h-4c-0.735 0-1.333-0.599-1.333-1.333v-24c0-0.735 0.599-1.333 1.333-1.333h11.448l8.552 8.552v16.781c0 0.735-0.599 1.333-1.333 1.333h-4c-0.736 0-1.333 0.597-1.333 1.333s0.597 1.333 1.333 1.333h4c2.205 0 4-1.795 4-4v-17.333c0-0.353-0.14-0.693-0.391-0.943z"></path>\n</svg>\n'}),o("p",{class:"s-product-options-filepond-placeholder-text"},salla.lang.get("common.uploader.drag_and_drop")),o("span",{class:"filepond--label-action"},salla.lang.get("common.uploader.browse"))))}imageOption(t){return this.fileUploader(t,{accept:"image/png,image/jpeg,image/jpg,image/gif"})}fileOption(t){const i=t.details.map((t=>this.fileTypes[t.name])).filter(Boolean);return i?.length?this.fileUploader(t,{accept:i.join(",")}):"File types not selected."}numberOption(t){return o("input",{type:"text",value:t.value,class:"s-form-control",required:!t.visibility_condition&&t.required,id:this.generateInputId(t.id),name:this.generateInputName(t.id),placeholder:t.placeholder,onBlur:i=>this.changedHandler(i,t),onInvalid:i=>this.invalidHandler(i,t),onInput:t=>salla.helpers.inputDigitsOnly(t.target)})}splitterOption(){return o("div",{class:"s-product-options-splitter"})}textOption(t){return o("div",{class:"s-product-options-text"},o("input",{type:"text",value:t.value,maxLength:t?.length,class:"s-form-control",required:!t.visibility_condition&&t.required,id:this.generateInputId(t.id),name:this.generateInputName(t.id),placeholder:t.placeholder,onInvalid:i=>this.invalidHandler(i,t),onChange:i=>this.changedHandler(i,t)}))}textareaOption(t){return o("div",{class:"s-product-options-textarea"},o("div",{class:"mt-1"},o("textarea",{rows:4,value:t.value,maxLength:t?.length,class:"s-form-control",required:!t.visibility_condition&&t.required,id:this.generateInputId(t.id),name:this.generateInputName(t.id),placeholder:t.placeholder,onInvalid:i=>this.invalidHandler(i,t),onChange:i=>this.changedHandler(i,t)})))}mapOption(t){return o("salla-map",{zoom:15,lat:this.getLatLng(t.value,"lat"),lng:this.getLatLng(t.value,"lng"),name:this.generateInputName(t.id),searchable:!0,required:!t.visibility_condition&&t.required,onInvalidInput:i=>this.invalidHandler(i,t),onSelected:i=>this.changedHandler(i,t)})}colorPickerOption(t){return o("salla-color-picker",{onSubmitted:i=>this.changedHandler(i,t),name:this.generateInputName(t.id),required:!t.visibility_condition&&t.required,onInvalidInput:i=>this.invalidHandler(i,t),color:t.value})}timeOption(t){return o("salla-datetime-picker",{noCalendar:!0,enableTime:!0,dateFormat:"h:i K",value:t.value,placeholder:t.name,required:!t.visibility_condition&&t.required,name:this.generateInputName(t.id),class:"s-product-options-time-element",onInvalidInput:i=>this.invalidHandler(i,t),onPicked:i=>this.changedHandler(i,t)})}dateOption(t){return o("div",{class:"s-product-options-date-element"},o("salla-datetime-picker",{value:t.value,placeholder:t.name,required:!t.visibility_condition&&t.required,minDate:new Date,name:this.generateInputName(t.id),onInvalidInput:i=>this.invalidHandler(i,t),onPicked:i=>this.changedHandler(i,t)}))}datetimeOption(t){return o("div",{class:"s-product-options-datetime-element"},o("salla-datetime-picker",{enableTime:!0,value:t.value,dateFormat:"Y-m-d G:i:K",placeholder:t.name,required:!t.visibility_condition&&t.required,name:this.generateInputName(t.id),maxDate:t.to_date_time,minDate:t.from_date_time,onInvalidInput:i=>this.invalidHandler(i,t),onPicked:i=>this.changedHandler(i,t)}))}getOptionDetailName(t,i=!0,o,e){let a;if(o&&o===m.COLOR&&(a=t.name+(i&&this.isOptionDetailOut(t)&&!salla.url.is_page("cart")&&!this.hideOutLabel?` <br/> <p> ${this.outOfStockText} </p>`:"")+(t.additional_price?` <p> (${salla.money(t.additional_price,!1)}) </p>`:"")),!a){const o=(i&&this.isOptionDetailOut(t)&&!salla.url.is_page("cart")&&!this.hideOutLabel?` - ${this.outOfStockText}`:"")+(t.additional_price?` (${salla.money(t.additional_price,!1)})`:"");if("price"===e){const i=t.name.replace(/<[^>]*>/g,""),e=salla.helpers.digitsOnly(i),a=Number(e);return e&&Number.isFinite(a)?salla.money(a,!0)+o:o}a=t.name+o}return a.replace("<i class=sicon-sar></i>",salla.config.currency()?.symbol||"ر.س")}computeAvailability(){this.availabilityMap=function(t,i,o=!0){const e={};if(!t?.length)return e;const a=t.filter((t=>t.details?.some((t=>t.skus_availability&&Object.keys(t.skus_availability).length>0)))),s=a.length<=1,r=new Set(t.filter((t=>!1===t.is_advance)).map((t=>t.id)));if(0===a.length){for(const i of t)for(const t of i.details)e[t.id]=t.is_out?"out_of_stock":"available";return e}const n=a.some((t=>t.details?.some((t=>t.skus_availability&&Object.values(t.skus_availability).some(Boolean))))),l=o&&!n;for(const t of a){const o=i.filter((i=>i.option_id!==t.id));for(const i of t.details){const t=i.skus_availability;if(!t||!Object.keys(t).length){e[i.id]=i.is_out?"out_of_stock":"available";continue}const a=Object.keys(t).map(Number),n=a.some((i=>t[i]));if(s||0===o.length){e[i.id]=!n&&l||n?"available":"out_of_stock";continue}let c=a;for(const t of o){if(r.has(t.option_id))continue;const i=new Set(Object.keys(t.skus_availability||{}).map(Number));c=c.filter((t=>i.has(t)))}if(!c.length){e[i.id]=l?"available":"impossible";continue}const p=c.some((i=>t[i]));e[i.id]=!p&&l||p?"available":"out_of_stock"}}return e}(this.optionsData||[],this.selectedOptions||[],this.productAvailable)}isOptionDetailOut(t){const i=this.availabilityMap[t.id];return void 0!==i?"available"!==i:!!t.is_out}renderInput(t,i,e,a,s,r){const n=this.generateUniqueKey(`${t}-${e.id}-${i.id}`),l=this.isOptionDetailOut(i),c=this.getOptionDetailName(i,!0,e.type,e.format),p={"s-product-options-grid-mode-span":r,"s-product-options-disabled":this.canDisabled&&l};return o("label",{class:{"s-product-options-disabled":this.canDisabled&&l,"s-product-options-option-stock-out":l}},o("input",{id:n,type:t,name:s,value:i.id,disabled:this.canDisabled&&l,required:a,checked:i.is_selected,onInvalid:t=>this.invalidHandler(t,e),onChange:t=>this.changedHandler(t,e)}),"price"===e.format?o("div",{class:p,innerHTML:c}):o("div",{class:p},c))}renderOptionDetails(t,i,o,e=!1){const a=this.generateInputName(i.id),s="radio"===t?a:`${a}[]`;return i?.details.map((a=>this.renderInput(t,a,i,o,s,e)))}renderSelect(t){return o("div",null,o("select",{id:this.generateInputId(t.id),name:this.generateInputName(t.id),required:!t.visibility_condition&&t.required,class:"s-form-control",onInvalid:i=>this.invalidHandler(i,t),onChange:i=>this.changedHandler(i,t)},o("option",{value:""},t.placeholder),t?.details.map((t=>o("option",{key:t.id,value:t.id,disabled:this.canDisabled&&this.isOptionDetailOut(t),selected:t.is_selected},this.getOptionDetailName(t))))))}renderButtonStyle(t,i,e){return o("div",{class:"s-product-options-grid-mode"},this.renderOptionDetails(t,i,e,!0))}singleOption(t){return"button"===this.optionConfig?.["single-option"]?.type||t.type===m.SINGLE_OPTION&&"price"===t.format?this.renderButtonStyle("radio",t,!t.visibility_condition&&t.required):this.renderSelect(t)}multipleOptions(t){const i="button"===this.optionConfig?.["multiple-option"]?.type,e=t.required&&!t.details.some((t=>t.is_selected))&&!t.visibility_condition;return i?this.renderButtonStyle("checkbox",t,e):o("div",{class:{"s-product-options-multiple-options-wrapper":!0,required:t.required}},this.renderOptionDetails("checkbox",t,e))}radioOption(t){return this.singleOption(t)}colorOption(t){return o("fieldset",{class:"s-product-options-colors-wrapper"},t?.details.map((i=>{const e=this.isOptionDetailOut(i);return o("div",{class:{"s-product-options-colors-item":!0,"s-product-options-option-stock-out":e},key:i.id},o("input",{type:"radio",value:i.id,required:!t.visibility_condition&&t.required,checked:i.is_selected,name:this.generateInputName(t.id),disabled:this.canDisabled&&e,id:this.generateUniqueKey(`color-${this.productId}-${t.id}-${i.id}`),onInvalid:i=>this.invalidHandler(i,t),onChange:i=>this.changedHandler(i,t),"data-img-id":i.option_value}),o("label",{htmlFor:this.generateUniqueKey(`color-${this.productId}-${t.id}-${i.id}`),"data-img-id":i.option_value},o("span",{style:{backgroundColor:i.color}}),o("div",{innerHTML:this.getOptionDetailName(i,!0,t.type)})))})))}thumbnailOption(t){return o("div",{class:"s-product-options-thumbnails-wrapper"},t.details.map((i=>{const e=this.isOptionDetailOut(i);return o("div",{key:i.id,class:{"s-product-options-option-stock-out":e}},o("input",{type:"radio",value:i.id,"data-itemid":i.id,required:!t.visibility_condition&&t.required,checked:i.is_selected,name:this.generateInputName(t.id),"data-img-id":i.option_value,disabled:this.canDisabled&&e,id:this.generateUniqueKey(`option_${this.productId}-${t.id}_${i.id}`),onInvalid:i=>this.invalidHandler(i,t),onChange:i=>this.changedHandler(i,t)}),o("label",{htmlFor:this.generateUniqueKey(`option_${this.productId}-${t.id}_${i.id}`),"data-img-id":i.option_value,class:"go-to-slide"},o("img",{"data-src":i.image,src:i.image,title:i.name,alt:i.name}),o("span",{innerHTML:g,class:"s-product-options-thumbnails-icon"}),e?[o("small",{key:`badge-${i.id}`,class:"s-product-options-thumbnails-stock-badge"},this.outOfStockText),this.canDisabled?o("div",{key:`overlay-${i.id}`,class:"s-product-options-thumbnails-badge-overlay"}):""]:""),o("p",null,this.getOptionDetailName(i,!1)," "))})))}digitalCardValuesOption(t){return o("div",{class:"s-product-options-digital-card-wrapper"},this.availableDigitalCardValues.length>0?this.availableDigitalCardValues.map((i=>{const e=String(i.id);return o("label",{htmlFor:this.generateUniqueKey(e.toString()),key:e,class:"s-product-options-digital-card-option"},o("input",{type:"radio","data-code-value":!0,class:"s-form-control s-product-options-digital-card-input",value:i.id,name:this.generateInputName(t.id),id:this.generateUniqueKey(e.toString()),required:!t.visibility_condition&&t.required,onInvalid:i=>this.invalidHandler(i,t),...this.ignoreDefaultCardValue?{}:{defaultChecked:this.getSelectedDigitalCardOptions(t)?.id===i.id}}),o("span",null,i.name," ",salla.config?.currency()?.symbol))})):o("div",{class:"s-product-options-digital-card-out-of-stock"}))}countryOption(t){return o("div",{class:"s-product-options-digital-card-wrapper"},t.details.map((i=>{const e=this.isOptionDetailOut(i);return o("label",{htmlFor:this.generateUniqueKey(i.id.toString()),key:i.id,class:{"s-product-options-digital-card-option":!0,"s-product-options-digital-card-option-stock-out":e,"s-product-options-option-stock-out":e}},o("input",{id:this.generateUniqueKey(i.id.toString()),type:"radio",class:"s-form-control s-product-options-digital-card-input",value:i.id,name:this.generateInputName(t.id),disabled:this.canDisabled&&e,required:!t.visibility_condition&&t.required,onInvalid:i=>this.invalidHandler(i,t),onChange:i=>this.changedHandler(i,t),onClick:()=>{this.disableCardValue=!1},...salla.url.is_page("cart")?{defaultChecked:this.getSelectedDigitalCardOptions(t)?.id===i.id}:{}}),o("img",{loading:"lazy",alt:i.code,height:24,width:24,class:"s-product-options-country-flag",src:`https://cdn.assets.salla.network/prod/admin/cp/assets/flags/1x1/${String(i.code).toLocaleLowerCase()}.svg`,onError:t=>{t.currentTarget.onerror=null,t.currentTarget.src=salla.url.cdn("images/globe.svg")}}),o("span",null,i.name))})))}get host(){return a(this)}};function j(){s.defaults.headers.common.currency=salla?.config?.get?.("user.currency_code")}L.style='/*!twlt*/.mt-1{margin-top:0.25rem}.block{display:block}.inline{display:inline}.grid{display:grid}.hidden{display:none}.rounded{border-radius:var(--s-radius, 0.25rem)}.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)}.has-error .s-form-control,.has-error .s-tel-input-control,.has-error .s-datetime-picker-input{border-color:#ff443a;color:#ff443a}.s-form-control{display:block;width:100%;border-radius:var(--s-radius, 0.25rem);border-width:1px;--tw-border-opacity:1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1));--tw-bg-opacity:1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));padding:0.5rem;font-size:0.875rem;line-height:1.25rem;--tw-text-opacity:1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.s-form-control:focus{border-color:var(--color-primary);--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000)}.s-product-options-wrapper{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-product-options-no-padding{padding:0px !important}.s-product-options-option-container{margin-bottom:1.25rem}.s-product-options-option-container:last-child{margin-bottom:0px}.s-product-options-option{transition-property:all;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:300ms}@media (min-width: 640px){.s-product-options-option{display:grid;grid-template-columns:repeat(3, minmax(0, 1fr));align-items:flex-start;gap:1rem}}.s-product-options-option-error .s-product-options-option-label{--tw-text-opacity:1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.s-product-options-option-content{margin-top:0.25rem;min-width:0px;overflow:auto;overflow-wrap:break-word}@media (min-width: 640px){.s-product-options-option-content{grid-column:span 2 / span 2;margin-top:0px}.s-product-options-option-content-full-width{grid-column:span 3 / span 3}}.s-product-options-option-label{margin-bottom:0.625rem;display:block;font-size:0.875rem;line-height:1.25rem;font-weight:700;--tw-text-opacity:1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}@media (min-width: 640px){.s-product-options-option-label{margin-top:1px}}@media (min-width: 768px){.s-product-options-option-label{margin-bottom:0px}}.s-product-options-option-label-hidden{display:none !important}.s-product-options-donation-message{display:flex;align-items:center;justify-content:space-between}.s-product-options-donation-message p{font-size:1rem;line-height:1.5rem;font-weight:600;--tw-text-opacity:1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.s-product-options-donation-message span{font-size:1rem;line-height:1.5rem;font-weight:600;--tw-text-opacity:1;color:rgb(0 0 0 / var(--tw-text-opacity, 1))}.s-product-options-option-label b{display:block}.s-product-options-option-label b span{--tw-text-opacity:1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.s-product-options-option-label small{--tw-text-opacity:1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.s-product-options-colors-wrapper .s-product-options-colors-item{margin-right:2rem;margin-bottom:1.25rem;display:inline-block;width:2.5rem;white-space:nowrap;text-align:center}.s-product-options-colors-wrapper .s-product-options-colors-item:where([dir="rtl"],[dir="rtl"] *){margin-right:0px;margin-left:2rem}.s-product-options-colors-wrapper input[type=radio]{pointer-events:none;position:absolute;opacity:0}.s-product-options-colors-wrapper input[type=radio]+label{display:flex;cursor:pointer;flex-direction:column;align-items:center}.s-product-options-colors-wrapper input[type=radio]+label div{font-size:0.875rem;line-height:1.25rem;--tw-text-opacity:1;color:rgb(31 41 55 / var(--tw-text-opacity, 1))}.s-product-options-colors-wrapper input[type=radio]+label div p{font-size:0.75rem;line-height:1rem;--tw-text-opacity:1;color:rgb(31 41 55 / var(--tw-text-opacity, 1))}.s-product-options-colors-wrapper input[type=radio]+label span{margin-bottom:0.5rem;display:inline-flex;height:30px;width:30px;cursor:pointer;align-items:center;justify-content:center;border-radius:0.375rem;border-radius:9999px;border-width:2px;--tw-border-opacity:1;border-color:rgb(255 255 255 / var(--tw-border-opacity, 1));--tw-bg-opacity:1;background-color:rgb(156 163 175 / var(--tw-bg-opacity, 1));background-position:center;background-repeat:no-repeat;text-align:center;line-height:2.5rem;--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-product-options-colors-wrapper input[type=radio]+label span:after{height:14px;width:14px;--tw-scale-x:.5;--tw-scale-y:.5;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));border-radius:9999px;--tw-bg-opacity:1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1));opacity:0;transition-property:all;transition-duration:300ms;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);--tw-content:\'\';content:var(--tw-content)}.s-product-options-colors-wrapper input[type=radio]:checked+label span:after{--tw-scale-x:1;--tw-scale-y:1;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));opacity:1}.s-product-options-colors-wrapper input[type=radio]:disabled+label{opacity:0.4}.s-product-options-field-required{--tw-text-opacity:1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.s-product-options-donation-progress{margin-bottom:0.625rem;width:100%}.s-product-options-donation-progress-target-text{margin-bottom:0.375rem;font-size:0.875rem;line-height:1.25rem;--tw-text-opacity:1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.s-product-options-donation-progress-amount{margin-bottom:0.625rem;display:flex;justify-content:space-between;font-size:0.875rem;line-height:1.25rem}.s-product-options-donation-progress-wrapper{height:1rem;width:100%;border-radius:9999px;--tw-bg-opacity:1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.s-product-options-donation-progress-wrapper:is(.dark *){--tw-bg-opacity:1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1))}.s-product-options-donation-progress-bar{position:relative;display:flex;height:1rem;justify-content:flex-end;border-radius:9999px;background-color:var(--color-primary);transition-property:all;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:500ms}.s-product-options-donation-progress-target-data{margin-top:0.625rem;margin-bottom:0.625rem;display:block;font-size:0.75rem;line-height:1rem;--tw-text-opacity:1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.s-product-options-donation-progress-target-message{font-size:0.875rem;line-height:1.25rem;--tw-text-opacity:1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.s-product-options-donation-wrapper{position:relative;margin-top:1.25rem;margin-bottom:0.625rem;align-items:center;justify-content:space-between;border-top-width:1px;--tw-border-opacity:1;border-color:rgb(243 244 246 / var(--tw-border-opacity, 1));padding-top:1.25rem}.s-product-options-donation-wrapper:only-child{margin-top:0px;border-style:none;padding-top:0px}@media (min-width: 640px){.s-product-options-donation-wrapper{margin-bottom:0px}}.s-product-options-donation-wrapper h4{margin-top:1.25rem;margin-bottom:0.75rem;font-weight:700}.s-product-options-donation-amount-label{margin-bottom:0.625rem;display:block;flex:1 1 0%;font-size:0.875rem;line-height:1.25rem}.s-product-options-donation-amount-input-container{position:relative;flex:1 1 0%}.s-product-options-donation-amount-input{margin-bottom:0.625rem;display:block;height:3rem;width:100%;border-radius:0.375rem;--tw-border-opacity:1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1));padding-left:0.625rem;padding-right:0.625rem;--tw-shadow:0 1px 2px 0 rgb(0 0 0 / 0.05);--tw-shadow-colored:0 1px 2px 0 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-product-options-donation-amount-input:focus{--tw-border-opacity:1;border-color:rgb(99 102 241 / var(--tw-border-opacity, 1));--tw-ring-opacity:1;--tw-ring-color:rgb(99 102 241 / var(--tw-ring-opacity, 1))}@media (min-width: 640px){.s-product-options-donation-amount-input{font-size:0.875rem;line-height:1.25rem}}.s-product-options-donation-amount-curruncy{position:absolute;--tw-text-opacity:1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.s-product-options-multiple-options-wrapper{flex-wrap:wrap;align-items:center}@media (min-width: 768px){.s-product-options-multiple-options-wrapper{display:flex}}.s-product-options-multiple-options-wrapper label{position:relative;margin-bottom:1rem;display:flex;align-items:center;gap:0.75rem}@media (min-width: 768px){.s-product-options-multiple-options-wrapper label{width:50%}}.s-product-options-multiple-options-wrapper input{height:1.5rem;width:1.5rem;cursor:pointer;border-radius:0.375rem;--tw-border-opacity:1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));color:var(--color-primary)}.s-product-options-multiple-options-wrapper input:focus{--tw-ring-color:transparent}.s-product-options-multiple-options-wrapper span{margin-left:0.5rem;cursor:pointer;padding-right:0.75rem;font-size:0.875rem;line-height:1.25rem;font-weight:500;--tw-text-opacity:1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.s-product-options-multiple-options-wrapper span:where([dir="rtl"],[dir="rtl"] *){margin-left:0px;margin-right:0.5rem;padding-right:0px;padding-left:0.75rem}.s-product-options-splitter{border-width:2px;border-bottom-width:1px;--tw-border-opacity:1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1))}.s-product-options-thumbnails-wrapper{display:grid;grid-template-columns:repeat(4, minmax(0, 1fr));gap:0.75rem}.s-product-options-thumbnails-wrapper label{margin-bottom:0.125rem;display:inline-block;height:6rem;width:100%;cursor:pointer;overflow:hidden;border-radius:0.375rem}@media (min-width: 768px){.s-product-options-thumbnails-wrapper label{height:5rem}}.s-product-options-thumbnails-wrapper>div{position:relative;display:inline-block;width:100%;text-align:center}.s-product-options-thumbnails-stock-badge{position:absolute;bottom:10px;left:50%;z-index:0;display:block;--tw-translate-x:-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));white-space:nowrap;border-radius:9999px;--tw-bg-opacity:1;background-color:rgb(248 113 113 / var(--tw-bg-opacity, 1));padding-left:0.375rem;padding-right:0.375rem;--tw-text-opacity:1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.s-product-options-thumbnails-badge-overlay{position:absolute;top:0px;height:100%;width:100%;cursor:not-allowed;--tw-bg-opacity:1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));opacity:0.5}.s-product-options-thumbnails-icon{position:absolute;left:35%;top:35%;z-index:10;--tw-scale-x:.5;--tw-scale-y:.5;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));border-radius:9999px;--tw-bg-opacity:1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));padding:2px;opacity:0;transition-property:all;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:300ms}.s-product-options-thumbnails-icon svg{height:1rem;width:1rem}.s-product-options-thumbnails-wrapper div input[type=radio]:checked+label span{--tw-scale-x:1;--tw-scale-y:1;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));opacity:1}.s-product-options-thumbnails-wrapper div input[type=radio]{pointer-events:none;position:absolute;display:block;opacity:0}.s-product-options-thumbnails-wrapper div input[type=radio]+label{position:relative}.s-product-options-thumbnails-wrapper div input[type=radio]+label img{height:100%;width:100%;object-fit:cover}.s-product-options-thumbnails-wrapper div label::before{position:absolute;inset:0px;--tw-bg-opacity:1;background-color:rgb(0 0 0 / var(--tw-bg-opacity, 1));opacity:0;transition-property:opacity;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);content:var(--tw-content);transition-duration:300ms}.s-product-options-thumbnails-wrapper div input[type=radio]:checked+label::before{content:var(--tw-content);opacity:0.3}.s-product-options-thumbnails-wrapper div input[type=radio]:disabled+label{opacity:0.4}.s-product-options-thumbnails-wrapper div p{font-size:0.875rem;line-height:1.25rem;--tw-text-opacity:1;color:rgb(31 41 55 / var(--tw-text-opacity, 1))}.s-product-options-image-input .s-file-upload-wrapper{min-height:120px}.s-product-options-image-input .filepond--list-scroller{overflow-y:inherit !important}.s-product-options-image-input .filepond--drop-label{min-height:120px !important;cursor:pointer;border-radius:0.375rem;border-width:1px;border-style:dashed;--tw-border-opacity:1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));--tw-bg-opacity:1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.s-product-options-filepond-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center}.s-product-options-filepond-placeholder-icon{margin-bottom:0.25rem}.s-product-options-filepond-placeholder-icon svg{height:1.5rem;width:1.5rem;fill:#7c8082}.s-product-options-donation-amount-currency{position:absolute;top:0.25rem;right:1rem;--tw-text-opacity:1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.s-product-options-donation-amount-currency:where([dir="rtl"],[dir="rtl"] *){right:unset;left:1rem}.s-product-options-donation-input-group{position:relative;height:0px;overflow:hidden;opacity:0;transition-property:all;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:500ms}.s-product-options-donation-input-group.shown{height:auto;opacity:1;transition-property:all;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:500ms}.s-product-options-donation-options{margin-bottom:1.25rem;display:flex;flex-wrap:wrap;gap:0.75rem}.s-product-options-donation-options-item{min-width:20%;flex-grow:1}.s-product-options-donation-options-item:last-child{min-width:25%}.s-product-options-donation-options-item label{display:flex;cursor:pointer;flex-direction:column;align-items:center;border-radius:0.375rem;border-width:1px;--tw-border-opacity:1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));padding-left:0.5rem;padding-right:0.5rem;padding-top:0.625rem;padding-bottom:0.625rem;font-size:0.875rem;line-height:1.25rem}.s-product-options-donation-options-item input{display:none}.s-product-options-donation-options-item input:checked+label{border-color:var(--color-primary);background-color:var(--color-primary);color:var(--color-primary-reverse)}.s-product-options-textarea textarea{resize:none}.s-product-options-digital-card-wrapper{display:flex;flex-wrap:wrap;gap:1rem}.s-product-options-digital-card-option{display:flex;height:fit-content;min-height:40px;min-width:100px;max-width:calc((100% - 1rem) / 3);cursor:pointer;user-select:none;align-items:center;justify-content:center;gap:0.5rem;border-radius:0.375rem;padding:0.5rem;font-size:0.75rem;line-height:1rem;outline-style:solid;outline-width:1px;outline-color:#e5e7eb}.s-product-options-digital-card-option:has(input:checked){color:var(--color-primary-dark);outline-style:solid;outline-width:1px;outline-color:var(--color-primary)}.s-product-options-country-flag{height:24px;width:24px;border-radius:9999px}.s-product-options-digital-card-out-of-stock{height:2.5rem}.s-product-options-digital-card-option input{all:unset}.s-product-options-digital-card-option input:checked{all:unset}.s-product-options-digital-card-option input:invalid{all:unset}@media (min-width: 640px){.s-product-options-option-booking .s-product-options-option-content{margin-top:-2.5rem}}.s-product-options-digital-card-option-stock-out{opacity:0.4}.s-product-options-grid-mode{margin-bottom:1.25rem;display:flex;flex-wrap:wrap;justify-items:center;gap:0.5rem}.s-product-options-grid-mode-span{position:relative;display:flex;min-height:36px;min-width:45px;cursor:pointer;align-items:center;justify-content:center;border-radius:0.5rem;border-width:1px;--tw-border-opacity:1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1));--tw-bg-opacity:1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));padding:0.5rem;text-align:center;font-size:0.75rem;line-height:1rem;font-weight:700;transition-property:all;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms}.s-product-options-grid-mode-span:hover{--tw-bg-opacity:1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.s-product-options-grid-mode-span-checkbox{position:relative;display:flex;align-items:center;justify-content:center;padding:0.5rem;text-align:center;font-size:0.875rem;font-weight:700;line-height:1.25rem}.s-product-options-grid-mode input:checked+div{border-color:var(--color-primary);background-color:rgba(var(--color-primary-rgb),0.1);color:var(--color-primary)}.s-product-options-grid-mode input[type=checkbox]{pointer-events:none;position:absolute;opacity:0}.s-product-options-grid-mode input[type=radio]{pointer-events:none;position:absolute;opacity:0}.s-product-options-disabled{cursor:not-allowed;opacity:0.5}.s-product-options-option-stock-out{opacity:0.5}';var T={request:(t,i,o,e=null,a=null)=>(j(),s.request({url:i,data:o,method:t.toLowerCase(),responseType:"json"}).then(e).catch(a)),get:(t,i=null,o=null,e)=>(j(),s.get(t,{params:e}).then(i).catch(o)),post(t,i,o=null,e=null){return this.request("post",t,i,o,e)},put(t,i,o=null,e=null){return this.request("put",t,i,o,e)},delete(t,i,o=null,e=null){return this.request("delete",t,i,o,e)},requestWithSupportAjax(t,i,o="post"){return new Promise(((e,a)=>{if(!window?.isLegacyTheme)return this.request(o,t,i,(({data:t})=>e(t)),(({response:t})=>a(t)));j(),$.ajax({url:t,method:o.toUpperCase(),data:i,headers:{currency:s.defaults.headers.common.currency},async:!1,success:function({data:t}){return e(t)},error:function({response:t}){return a(t)}})}))}},E={options:[],header:"undefined"!=typeof navigator&&"undefined"!=typeof window?[navigator.platform,navigator.userAgent,navigator.appVersion,navigator.vendor,window.opera]:[],dataos:[{name:"Windows Phone",value:"Windows Phone",version:"OS"},{name:"Windows",value:"Win",version:"NT"},{name:"iPhone",value:"iPhone",version:"OS"},{name:"iPad",value:"iPad",version:"OS"},{name:"Kindle",value:"Silk",version:"Silk"},{name:"Android",value:"Android",version:"Android"},{name:"PlayBook",value:"PlayBook",version:"OS"},{name:"BlackBerry",value:"BlackBerry",version:"/"},{name:"Macintosh",value:"Mac",version:"OS X"},{name:"Linux",value:"Linux",version:"rv"},{name:"Palm",value:"Palm",version:"PalmOS"}],databrowser:[{name:"Chrome",value:"Chrome",version:"Chrome"},{name:"Firefox",value:"Firefox",version:"Firefox"},{name:"Safari",value:"Safari",version:"Version"},{name:"Internet Explorer",value:"MSIE",version:"MSIE"},{name:"Opera",value:"Opera",version:"Opera"},{name:"BlackBerry",value:"CLDC",version:"CLDC"},{name:"Mozilla",value:"Mozilla",version:"Mozilla"}],init:function(){var t=this.header.join(" ");return{os:this.matchItem(t,this.dataos),browser:this.matchItem(t,this.databrowser)}},matchItem:function(t,i){var o,e,a,s=0,r=0;for(s=0;s<i.length;s+=1)if(new RegExp(i[s].value,"i").test(t)){if(o=new RegExp(i[s].version+"[- /:;]([\\d._]+)","i"),a="",(e=t.match(o))&&e[1]&&(e=e[1]),e)for(e=e.split(/[._]+/),r=0;r<e.length;r+=1)a+=0===r?e[r]+".":e[r];else a="0";return{name:i[s].name,version:parseFloat(a)}}return{name:"unknown",version:0}}};async function F(t,i,o=!1){if(salla.logger.log("🍏 Pay: mutateShippingContact called",i,o),t.detail.requiredShippingContactFields&&0!=t.detail.requiredShippingContactFields.length)if(o){if(salla.config.isGuest()&&salla.config.get("store.features").includes("guest-checkout")){if(!(i.emailAddress&&i.givenName&&i.familyName&&i.phoneNumber)){salla.logger.warn("🍏 Pay: Guest contact fields are required",i);const o=[];return i.emailAddress||o.push(new window.ApplePayError("shippingContactInvalid","emailAddress","Email address is required")),i.phoneNumber||o.push(new window.ApplePayError("shippingContactInvalid","phoneNumber","Phone number is required")),i.givenName&&i.familyName||o.push(new window.ApplePayError("shippingContactInvalid","name","Name is required")),void t.session.completePayment({status:t.session.STATUS_INVALID_SHIPPING_CONTACT,errors:o})}await async function(t,i){return salla.logger.log("🍏 Pay: Updating guest contact",i),new Promise(((o,e)=>{T.post(t.detail.guestContactSelected.url.replace("{id}",t.id),{email:i.emailAddress||null,first_name:i.givenName||null,last_name:i.familyName||null,phone_number:i.phoneNumber||null,country_code:i.countryCode||null},(async({data:i})=>{"function"==typeof t.detail.guestContactSelected?.onSuccess&&t.detail.guestContactSelected.onSuccess(i),o(i)}),(({response:i})=>{salla.logger.warn("🍏 Pay: Failed to update guest contact via api",i),"function"==typeof t.detail.guestContactSelected?.onFailed&&t.detail.guestContactSelected.onFailed(i),e({response:i})}))}))}(t,i)}}else if(t.detail.requiredShippingContactFields.includes("postalAddress"))return T.post(t.detail.shippingContactSelected.url.replace("{id}",t.id),{country:i.country,city:i.locality,local:i.subLocality||i.administrativeArea||i.locality,description:i.subAdministrativeArea,street:i.addressLines?.join(", ")||i.administrativeArea,country_code:i.countryCode,postal_code:i.postalCode},(async({data:i})=>{if("function"==typeof t.detail.shippingContactSelected.onSuccess&&t.detail.shippingContactSelected.onSuccess(i),t.address_id=i.data.address_id,t.shipping_methods=i.data.shipping_methods,!t.shipping_methods||t.shipping_methods&&!t.shipping_methods.length)return salla.logger.warn("🍏 Pay: We dont found any supported methods",i),void t.session.completeShippingContactSelection({status:t.session.STATUS_INVALID_SHIPPING_POSTAL_ADDRESS,errors:[new window.ApplePayError("addressUnserviceable")]});try{await t.selectApplePayShippingMethod(t.shipping_methods[0])}catch(i){return salla.logger.warn("Failed set the shipping details to api",i),void t.session.completeShippingContactSelection({status:t.session.STATUS_INVALID_SHIPPING_POSTAL_ADDRESS,errors:[new window.ApplePayError("addressUnserviceable")]})}try{await t.recalculateTotal()}catch(i){return salla.logger.warn("🍏 Pay: Failed recalculate total",i),void t.session.completeShippingContactSelection({status:t.session.STATUS_INVALID_SHIPPING_POSTAL_ADDRESS,errors:[new window.ApplePayError("addressUnserviceable")]})}const o={newTotal:t.prepareTotal(),newLineItems:t.prepareLineItems(),newShippingMethods:t.mappingShippingMethods(t.shipping_methods)};salla.logger.log("🍏 Pay: completeShippingContactSelection",o),t.session.completeShippingContactSelection(o)}),(({response:i})=>{salla.logger.warn("🍏 Pay: Failed add address via api",i),"function"==typeof t.detail.shippingContactSelected.onFailed&&t.detail.shippingContactSelected.onFailed(i);let o=i?.data?.error?.fields,e=function(t){return Object.entries(t).filter((([t,i])=>i&&i.length>0)).map((([t,i])=>new window.ApplePayError("shippingContactInvalid",t,i[0])))}({countryCode:o?.country_code&&o.country_code.length>0?o.country_code[0]:null,locality:o?.city&&o.city.length>0?o.city[0]:null,country:o?.country&&o.country.length>0?o.country[0]:null});0===e.length&&i?.data?.error?.message&&e.push(new window.ApplePayError("shippingContactInvalid","locality",i?.data?.error?.message)),t.session.completeShippingContactSelection({newTotal:t.prepareTotal(),newLineItems:t.prepareLineItems(),status:t.session.STATUS_INVALID_SHIPPING_POSTAL_ADDRESS,errors:e})}))}"undefined"!=typeof window&&(window.Salla=window.Salla||{},window.Salla.Payments=window.Salla.Payments||{});const R="undefined"!=typeof window&&!!window.ApplePaySession,D="pages.checkout.apple_pay_no_supported_network",B="undefined"!=typeof window?{session:null,detail:null,address_id:null,shipping_methods:[],total:void 0,request:void 0,id:void 0,countryCode:null,totals:[],shippingCompany:null,canceled:!1,init:function(){document.removeEventListener("payments::apple-pay.start-transaction",B.startSession),Salla.event.addEventListener("payments::apple-pay.start-transaction",B.startSession)},initDefault:function(){B.detail.onError||(B.detail.onError=function(t){salla.notify.error(t)}),B.detail.authorized.onFailed||(B.detail.authorized.onFailed=t=>{salla.logger.log(JSON.stringify(t)),salla.api.handleErrorResponse(t),B.onCancel({},t.data.error.message)}),B.detail.validateMerchant.onFailed||(B.detail.validateMerchant.onFailed=t=>{salla.logger.log(JSON.stringify(t)),salla.api.handleErrorResponse({response:t}),B.onCancel({},t.data.error.message)}),B.detail.authorized.onSuccess||(B.detail.authorized.onSuccess=t=>{salla.logger.log(JSON.stringify(t)),salla.api.handleAfterResponseActions(t)})},prepareLineItems:function(){return B.detail?.items?.length||(B.detail.items=[{label:salla.lang.get("pages.cart.items_total"),amount:parseFloat(B.detail.amount).toString()}]),B.detail.items},prepareTotal:function(){return{label:window.location.hostname||"Salla",amount:parseFloat(B.detail.amount).toString()}},isPhysical:()=>B.detail?.requiredShippingContactFields?.includes("postalAddress"),canUseNative:function(){if(!R)return!1;try{return ApplePaySession.canMakePayments()}catch(t){return!1}},getMerchantIdentifier:function(){return B.detail&&B.detail.merchantIdentifier||null},startSession:async function(t){return B.detail=t.detail||t,B.canceled=!1,B._submittedTracked=!1,B._failureTracked=!1,B._succeededTracked=!1,B.id=B.detail?.cartId||null,salla.log("🍏 Pay: payments::apple-pay.start-transaction",B.detail),B.initDefault(),B.canUseNative()?B.startNativeSession(t):B.startPaymentRequestSession(t)},startNativeSession:async function(t){let i,o=B.getApplePaySessionVersion(),e=_(B.detail.supportedNetworks);if(!e.length)return B.abandonNoSupportedNetwork();if(B.request={countryCode:B.detail.countryCode||"SA",supportsCouponCode:!0,couponCode:"",currencyCode:B.detail.currency||"SAR",requiredShippingContactFields:B.detail.requiredShippingContactFields?B.detail.requiredShippingContactFields:[],merchantCapabilities:["supports3DS"],supportedNetworks:e,supportedCountries:B.detail.supportedCountries||["SA"],total:B.prepareTotal(),shippingContact:B.detail.shippingContact?B.detail.shippingContact:{},shippingMethods:B.detail.shippingMethods&&B.detail.shippingMethods.length?B.mappingShippingMethods(t.detail.shippingMethods):[],lineItems:B.prepareLineItems()},salla.log("🍏 Pay: init ",B.request),B.session=new ApplePaySession(o,B.request),B.session.onshippingcontactselected=B.onShippingContactSelected,B.session.onshippingmethodselected=B.onShippingMethodSelected,B.session.onvalidatemerchant=B.onValidateMerchant,B.session.onpaymentauthorized=B.onPaymentAuthorized,B.session.oncancel=B.onCancel,B.session.oncouponcodechanged=B.onCouponCodeChanged,B.session.onpaymentmethodselected=B.onPaymentMethodSelected,"function"==typeof B.detail.onStartedSession&&(i=B.detail.onStartedSession(B.session)),!i)try{B.session.begin()}catch(t){salla.logger.error("🍏 Pay: session.begin() failed",t),B.trackPaymentFailed("client","APPLE_PAY_PRESENTATION_FAILED",t?.message||""),B.detail.onError(salla.lang.get("pages.checkout.payment_failed")),Salla.event.createAndDispatch("payments::apple-pay.canceled",{})}},onPaymentMethodSelected:async t=>{if(salla.logger.log("🍏 Pay: onPaymentMethodSelected",t),B.isPhysical())salla.logger.log("🍏 Pay: completePaymentMethodSelection",{newTotal:B.prepareTotal(),newLineItems:B.prepareLineItems()}),B.session.completePaymentMethodSelection({newTotal:B.prepareTotal(),newLineItems:B.prepareLineItems()});else try{await B.recalculateTotal();const t={newTotal:B.prepareTotal(),newLineItems:B.prepareLineItems()};salla.logger.log("🍏 Pay: completePaymentMethodSelection",t),B.session.completePaymentMethodSelection(t)}catch(t){salla.logger.warn("🍏 Pay: Failed recalculate total",t),B.session.completePaymentMethodSelection({newTotal:B.prepareTotal(),newLineItems:B.prepareLineItems(),status:B.session.STATUS_FAILURE,errors:[new window.ApplePayError("unknown",void 0,t?.response?.data?.error?.message||t?.response?.data?.error?.code||"Failed to recalculate total")]})}},onCouponCodeChanged:t=>(Salla.event.dispatch("payments::apple-pay.coupon.change",t),T.post(B.detail.onCouponCodeChanged.url.replace("{id}",B.id),{coupon:t.couponCode,payment_method:"apple_pay"},(async({data:t})=>{"function"==typeof B.detail.onCouponCodeChanged.onSuccess&&B.detail.onCouponCodeChanged.onSuccess(t),salla.log("🍏 Pay: Coupon applied success"),await B.recalculateTotal(),B.session.completeCouponCodeChange({newTotal:B.prepareTotal(),newLineItems:B.prepareLineItems()})}),(async t=>{let i=t?.response;Salla.event.dispatch("payments::apple-pay.coupon.failed",i),"function"==typeof B.detail.onCouponCodeChanged.onFailed&&B.detail.onCouponCodeChanged.onFailed(i),await B.recalculateTotal(),B.session.completeCouponCodeChange({newTotal:B.prepareTotal(),newLineItems:B.prepareLineItems(),errors:[new window.ApplePayError("couponCodeInvalid")]})}))),abandonNoSupportedNetwork:()=>{salla.logger.error("🍏 Pay: no supported network for this shopper — Apple Pay not offered");const t=salla?.lang?.get?.(D),i=t&&t!==D?t:salla?.lang?.get?.("pages.checkout.payment_failed");B.onCancel({},i||null)},onCancel:(t={},i=null)=>{B.canceled=!0,B.trackPaymentFailed("client","APPLE_PAY_SESSION_CANCELED",i||""),B.detail.onError(i||salla.lang.get("pages.checkout.payment_failed")),Salla.event.createAndDispatch("payments::apple-pay.canceled",t)},onPaymentAuthorized:async t=>{salla.logger.log("🍏 Pay: onPaymentAuthorized",t.payment);try{await F(B,t.payment.shippingContact,!0)}catch(t){salla.logger.error("🍏 Pay: Failed to update guest contact details",t);const i=t?.response||t,o=i?.data?.error?.fields||{},e=[];return o?.email&&o.email.length>0&&e.push(new window.ApplePayError("shippingContactInvalid","emailAddress",o.email[0])),o?.phone&&o.phone.length>0&&e.push(new window.ApplePayError("shippingContactInvalid","phoneNumber",o.phone[0])),o?.first_name&&o.first_name.length>0?e.push(new window.ApplePayError("shippingContactInvalid","name",o.first_name[0])):o?.last_name&&o.last_name.length>0&&e.push(new window.ApplePayError("shippingContactInvalid","name",o.last_name[0])),0===e.length&&e.push(new window.ApplePayError("shippingContactInvalid","name",i?.data?.error?.message||i?.data?.error?.code||"Invalid shipping contact details")),Salla.event.dispatch("payments::apple-pay.authorized.failed",i),"function"==typeof B.detail.authorized.onFailed&&B.detail.authorized.onFailed(i),void B.session.completePayment({status:ApplePaySession.STATUS_INVALID_SHIPPING_CONTACT,errors:e})}Salla.event.dispatch("payments::apple-pay.authorized.init",t),B.trackPaymentSubmitted(),T.post(B.detail.authorized.url.replace("{id}",B.id),{payment_method:"apple_pay",applepay_token:JSON.stringify(t.payment)},(({data:t})=>{Salla.event.dispatch("payments::apple-pay.authorized.success",t),B.trackPaymentSucceeded(t),"function"==typeof B.detail.authorized.onSuccess&&B.detail.authorized.onSuccess(t),B.session.completePayment(ApplePaySession.STATUS_SUCCESS)}),(t=>{let i=t?.response;Salla.event.dispatch("payments::apple-pay.authorized.failed",i),B.trackPaymentFailed("server",i?.data?.error?.code||"APPLE_PAY_FAILED",i?.data?.error?.message||""),"function"==typeof B.detail.authorized.onFailed&&B.detail.authorized.onFailed(i),B.session.completePayment({status:ApplePaySession.STATUS_FAILURE,errors:[new window.ApplePayError("unknown",void 0,i?.data?.error?.message||i?.data?.error?.code||"Failed to parse authorized response")]})}))},onValidateMerchant:async t=>{try{Salla.event.dispatch("payments::apple-pay.validate-merchant.init",t);const{data:i}=await T.post(B.detail.validateMerchant.url.replace("{id}",B.id),{validation_url:t.validationURL});Salla.event.dispatch("payments::apple-pay.validate-merchant.success",i);const o=t=>{B.session.completeMerchantValidation(t)};if("function"==typeof B.detail.validateMerchant.onSuccess){const t=await B.detail.validateMerchant.onSuccess(i);if(t?.redirect)return window.location=t.redirect,B.abortValidateMerchant(t)}o(i.data)}catch(t){console.error(t),B.abortValidateMerchant(t?.response)}},abortValidateMerchant:(t=null)=>{B.abortSession(),Salla.event.dispatch("payments::apple-pay.validate-merchant.failed",t),"function"==typeof B.detail.validateMerchant.onFailed&&B.detail.validateMerchant.onFailed(t)},onShippingContactSelected:async t=>{salla.logger.log("🍏 Pay: onShippingContactSelected",t.shippingContact),await F(B,t.shippingContact)},onShippingMethodSelected:async t=>{let i=t.shippingMethod.identifier.split(","),o={ship_id:i[0],private_ship_id:void 0===i[1]?null:i[1],type:void 0===i[2]?null:i[2],route_id:void 0===i[3]?null:i[3]};if(salla.logger.log("🍏 Pay: onShippingMethodSelected",{event:t,previous:B.shippingCompany,current:o}),B.shouldUpdateShippingCompany(o))try{await B.selectApplePayShippingMethod(o),await B.recalculateTotal()}catch(t){return salla.logger.warn("🍏 Pay: Failed set the shipping details to api",t),void B.session.completeShippingMethodSelection({newTotal:B.prepareTotal(),newLineItems:B.prepareLineItems(),status:B.session.STATUS_INVALID_SHIPPING_POSTAL_ADDRESS,errors:[new window.ApplePayError("addressUnserviceable")]})}salla.logger.log("🍏 Pay: completeShippingMethodSelection",{newTotal:B.prepareTotal(),newLineItems:B.prepareLineItems()}),B.session.completeShippingMethodSelection({newTotal:B.prepareTotal(),newLineItems:B.prepareLineItems()})},abortSession:()=>{B.session&&B.session.abort()},paymentRequest:null,paymentResponse:null,getCurrency:()=>B.detail.currency||"SAR",prAmount:t=>({currency:B.getCurrency(),value:String(t)}),prTotal:()=>{const t=B.prepareTotal();return{label:t.label,amount:B.prAmount(t.amount)}},prDisplayItems:()=>B.prepareLineItems().map((t=>({label:t.label,amount:B.prAmount(t.amount)}))),prShippingOptions:(t=null)=>B.mappingShippingMethods(B.shipping_methods||[]).map(((i,o)=>({id:i.identifier,label:i.label,amount:B.prAmount(i.amount),selected:t?i.identifier===t:0===o}))),prContactOptions:()=>{const t=B.detail.requiredShippingContactFields||[];return{requestPayerName:t.includes("name"),requestPayerEmail:t.includes("email"),requestPayerPhone:t.includes("phone"),requestShipping:t.includes("postalAddress"),shippingType:"shipping"}},startPaymentRequestSession:async function(){const t=B.getMerchantIdentifier();if(!t)return void salla.logger.error("🍏 Pay: missing merchant identifier — skipping QR Apple Pay");const i=B.getApplePaySessionVersion(),o=_(B.detail.supportedNetworks);if(!o.length)return B.abandonNoSupportedNetwork();const e=[{supportedMethods:"https://apple.com/apple-pay",data:{version:i,merchantIdentifier:t,merchantCapabilities:["supports3DS"],supportedNetworks:o,countryCode:B.detail.countryCode||"SA"}}],a=B.isPhysical(),s={total:B.prTotal(),displayItems:B.prDisplayItems()};let r;a&&(s.shippingOptions=B.prShippingOptions());try{r=new PaymentRequest(e,s,B.prContactOptions())}catch(t){return salla.logger.error("🍏 Pay: Failed to create PaymentRequest",t),void B.detail.onError(salla.lang.get("pages.checkout.payment_failed"))}B.paymentRequest=r,r.onmerchantvalidation=t=>{t.complete(B.prValidateMerchant(t))},a&&(r.onshippingaddresschange=t=>{t.updateWith(B.prShippingAddressChange(r))},r.onshippingoptionchange=t=>{t.updateWith(B.prShippingOptionChange(r))});const n=async()=>{Salla.event.dispatch("payments::apple-pay.sheet-opened");try{const t=await r.show();B.paymentResponse=t,await B.prPaymentAuthorized(t)}catch(t){salla.logger.log("🍏 Pay: PaymentRequest closed",t),"AbortError"!==t?.name||B.canceled||B.onCancel({})}finally{B.paymentRequest=null,B.paymentResponse=null,Salla.event.dispatch("payments::apple-pay.sheet-closed")}};let l;"function"==typeof B.detail.onStartedSession&&(l=B.detail.onStartedSession({begin:n})),l||await n()},prValidateMerchant:async function(t){Salla.event.dispatch("payments::apple-pay.validate-merchant.init",t);try{const{data:i}=await T.post(B.detail.validateMerchant.url.replace("{id}",B.id),{validation_url:t.validationURL});if(!i?.data?.merchantSessionIdentifier){salla.logger.error("🍏 Pay: merchant validation failed",i?.statusMessage||i),Salla.event.dispatch("payments::apple-pay.validate-merchant.failed",{data:i}),B.onCancel({}),setTimeout((()=>{try{B.paymentRequest?.abort()}catch(t){}}),0);const t=new Error("Apple Pay merchant validation failed");throw t.handled=!0,t}if(Salla.event.dispatch("payments::apple-pay.validate-merchant.success",i),"function"==typeof B.detail.validateMerchant.onSuccess){const t=await B.detail.validateMerchant.onSuccess(i);t?.redirect&&(window.location=t.redirect)}return i.data}catch(t){if(!t?.handled){const i=t?.response;Salla.event.dispatch("payments::apple-pay.validate-merchant.failed",i),"function"==typeof B.detail.validateMerchant.onFailed&&B.detail.validateMerchant.onFailed(i)}throw t}},prCountryName:t=>{if(!t)return t;try{const i=salla?.config?.get?.("user.language_code")||"en";return new Intl.DisplayNames([i],{type:"region"}).of(t)||t}catch(i){return t}},prShippingAddressChange:async function(t){const i=t.shippingAddress,o={total:B.prTotal(),displayItems:B.prDisplayItems(),shippingOptions:[]};if(!i)return o;try{const{data:t}=await T.post(B.detail.shippingContactSelected.url.replace("{id}",B.id),{country:B.prCountryName(i.country),city:i.city,local:i.dependentLocality||i.region||i.city,description:i.region,street:(i.addressLine||[]).join(", ")||i.region,country_code:i.country,postal_code:i.postalCode});return B.address_id=t.data.address_id,B.shipping_methods=t.data.shipping_methods,B.shipping_methods?.length?(await B.selectApplePayShippingMethod(B.shipping_methods[0]),await B.recalculateTotal(),{total:B.prTotal(),displayItems:B.prDisplayItems(),shippingOptions:B.prShippingOptions()}):{...o,error:salla.lang.get("pages.checkout.payment_failed")}}catch(t){return salla.logger.warn("🍏 Pay: PR shipping address change failed",t),{...o,error:salla.lang.get("pages.checkout.payment_failed")}}},prShippingOptionChange:async function(t){const i=t.shippingOption;if(!i)return{total:B.prTotal(),displayItems:B.prDisplayItems(),shippingOptions:B.prShippingOptions()};const o=i.split(","),e={ship_id:o[0],private_ship_id:void 0===o[1]?null:o[1],type:void 0===o[2]?null:o[2],route_id:void 0===o[3]?null:o[3]};try{return B.shouldUpdateShippingCompany(e)&&(await B.selectApplePayShippingMethod(e),await B.recalculateTotal()),{total:B.prTotal(),displayItems:B.prDisplayItems(),shippingOptions:B.prShippingOptions(i)}}catch(t){return salla.logger.warn("🍏 Pay: PR shipping option change failed",t),{total:B.prTotal(),displayItems:B.prDisplayItems(),shippingOptions:B.prShippingOptions(i),error:salla.lang.get("pages.checkout.payment_failed")}}},prContactFromResponse:t=>{const i=(t.payerName||"").trim(),o=i.indexOf(" ");return{givenName:o>-1?i.slice(0,o):i,familyName:o>-1?i.slice(o+1):"",emailAddress:t.payerEmail||null,phoneNumber:t.payerPhone||null,countryCode:t.shippingAddress?.country||B.detail.countryCode||null}},track:function(t,i={}){const o=B.id?String(B.id):null;try{salla.analytics?.track(t,{payment_method:"apple_pay",gateway:"apple_pay",cart_id:o,checkout_id:o,session_id:salla.config?.get?.("jitsu.session_id")||null,...i,checkout_type:i.checkout_type||B.detail?.checkout_type||"applepay_checkout"})}catch(i){salla.logger.error("🍏 Pay: failed to track "+t,i)}},trackPaymentSubmitted:function(){B._submittedTracked||(B._submittedTracked=!0,B.track("Payment Submitted",{}))},trackPaymentFailed:function(t,i,o=""){B._submittedTracked&&!B._failureTracked&&(B._failureTracked=!0,B.track("Payment Failed",{error_type:t,error_code:i,error_message:o||""}))},trackPaymentSucceeded:function(t){if(B._succeededTracked)return;B._succeededTracked=!0;const i=t?.data||t||{};B.track("Payment Succeeded",{order_id:i.order_id||null,cart_total:i.total||B.detail?.amount||null,response_status:"success",has_redirect:!1,redirect_url:null})},prPaymentAuthorized:async function(t){if(B.detail.guestContactSelected){const i=B.prContactFromResponse(t);if(!(i.emailAddress&&i.givenName&&i.familyName&&i.phoneNumber))return await t.complete("fail"),void B.detail.onError(salla.lang.get("common.messages.required_fields"));try{await T.post(B.detail.guestContactSelected.url.replace("{id}",B.id),{email:i.emailAddress,first_name:i.givenName,last_name:i.familyName,phone_number:i.phoneNumber,country_code:i.countryCode})}catch(i){return await t.complete("fail"),void B.detail.onError(i?.response?.data?.error?.message||salla.lang.get("pages.checkout.payment_failed"))}}let i;Salla.event.dispatch("payments::apple-pay.authorized.init",t),B.trackPaymentSubmitted();try{const{data:o}=await T.post(B.detail.authorized.url.replace("{id}",B.id),{payment_method:"apple_pay",applepay_token:JSON.stringify(t.details)});i=o,Salla.event.dispatch("payments::apple-pay.authorized.success",o),B.trackPaymentSucceeded(o),await t.complete("success")}catch(i){const o=i?.response;return Salla.event.dispatch("payments::apple-pay.authorized.failed",o),B.trackPaymentFailed("server",o?.data?.error?.code||"APPLE_PAY_FAILED",o?.data?.error?.message||""),await t.complete("fail"),void("function"==typeof B.detail.authorized.onFailed&&B.detail.authorized.onFailed(o))}"function"==typeof B.detail.authorized.onSuccess&&B.detail.authorized.onSuccess(i)},shouldUpdateShippingCompany:t=>B.shippingCompany?.ship_id!=t?.ship_id||B.shippingCompany?.private_ship_id!=t?.private_ship_id,getApplePaySessionVersion:()=>{if("sallapp"===(navigator.userAgent||navigator.vendor||window.opera))return 5;let t=E.init(),i=parseFloat(t.os.version);if("Macintosh"===t.os.name){if(i<10.142)return 1}else if(i<12.11)return 1;return 5},recalculateTotal:()=>(salla.logger.log("🍏 Pay: recalculate total"),T.get(B.detail.recalculateTotal.url.replace("{id}",B.id),(({data:t})=>{salla.logger.log("🍏 Pay: recalculate total success",t);let i=t.data.initial_data?.cart||t.data.cart,o=t.data.initial_data?.payments||t.data.payments;salla.logger.log("🍏 Pay: recalculate total success",{cart:i,payments:o}),null!=o?.gateways?.applePay?.amount?(B.detail.amount=o.gateways.applePay.amount,B.detail.currency=o.gateways.applePay.currency??B.detail.currency):B.detail.amount=o?.gateways?.applePay?.supportedMultiCurrency?i.total_in_customer_currency:i.total,B.detail.items=(i.totals||i.items).map((t=>({label:t.title,amount:"مجاني"===t.amount||"Free"===t.amount?0:t.amount.toString().replace("+","")}))),B.detail.items.pop(),B.totals=B.detail.items}),(t=>(salla.logger.warn("🍏 Pay: recalculate total failed",t),t?.response?.data?.message)))),selectApplePayShippingMethod:t=>{salla.logger.log("🍏 Pay: select shipping method ",t),B.shippingCompany=t;const i={address_id:B.address_id,company_id:t.ship_id,private_company_id:t.private_ship_id,type:t.type||void 0,route_id:t.route_id||void 0,payment_method:"apple_pay"};return T.post(B.detail.shippingMethodSelected.url.replace("{id}",B.id),i,(({data:t})=>("function"==typeof B.detail.shippingMethodSelected.onSuccess&&B.detail.shippingMethodSelected.onSuccess(t),!0)),(t=>{salla.logger.warn("🍏 Pay: Set shipping method failed",t),"function"==typeof B.detail.shippingMethodSelected.onFailed&&B.detail.shippingMethodSelected.onFailed(t);let i=t?.response?.data?.error;return i?.data?.fields?.address_id?i?.data?.fields?.address_id[0]:i?.data?.message}))},mappingShippingMethods:t=>t.map((t=>({label:t.shipping_title,amount:t.enable_free_shipping?0:t.ship_cost,detail:"",identifier:t.ship_id.toString()+(t.private_ship_id?","+t.private_ship_id.toString():"")+(t.type?","+t.type:"")+(t.route_id?","+t.route_id:"")})))}:{};"undefined"!=typeof window&&(window.SallaApplePay=B),"undefined"!=typeof window&&(B.canUseNative()||window.PaymentRequest)?B.init():"undefined"!=typeof document&&document.querySelectorAll("data-show-if-apple-pay-supported").forEach((t=>t.style.display="none"));const H=class{constructor(o){t(this,o),this.validationFailed=i(this,"validationFailed"),this.requireLogin=i(this,"requireLogin"),this.type="buy",this.productType="product",this.options={},this.collectedOrderOptions=[],this.collectedFreeProducts=[],this.optionsResolved=!1,this.applePayAmount=0,this.pendingApplePaySession=null,this.quickBuy=salla.lang.get("pages.products.buy_now"),this.handleApplePaySessionStarted=t=>!this.optionsResolved&&(this.optionsResolved=!0,this.pendingApplePaySession=t,p({productId:this.productId,amount:Number(this.amount),quantity:this.getSelectedQuantity(),beginPendingSession:()=>{try{this.pendingApplePaySession?.begin()}catch(t){salla.logger.error("🍏 Pay: deferred session.begin() failed",t),window.SallaApplePay?.trackPaymentFailed?.("client","APPLE_PAY_PRESENTATION_FAILED",t?.message||""),window.SallaApplePay?.detail?.onError?.(salla.lang.get("pages.checkout.payment_failed")),salla.event.createAndDispatch("payments::apple-pay.canceled",{})}this.pendingApplePaySession=null},discardPendingSession:()=>{this.pendingApplePaySession=null},onSubmit:(t,i,o)=>{this.collectedOrderOptions=t,this.collectedFreeProducts=o||[],this.applePayAmount=i,this.settlePayment()}}),!0),salla.lang.onLoaded((()=>{this.quickBuy=salla.lang.get("pages.products.buy_now")}))}quickBuyHandler(){if(salla.config.isGuest()&&!this.isGuestCheckout())return this.requireLogin.emit({productId:this.productId}),void salla.api.auth.requireLoginThen("salla-quick-buy::user.logged-in",(()=>this.quickBuyHandler()));this.validatePdpOptionsSync()&&(this.optionsResolved=!1,this.collectedOrderOptions=[],this.collectedFreeProducts=[],this.applePayAmount=0,this.settlePayment())}validatePdpOptionsSync(){return!!d(this.productId)||(this.validationFailed.emit({productId:this.productId}),salla.error(salla.lang.get("common.messages.required_fields")),!1)}getSelectedQuantity(){try{const t=this.host.getElementSallaData?.(),i=Number(t instanceof FormData?t.get("quantity"):t?.quantity);return Number.isFinite(i)&&i>0?i:1}catch{return 1}}resolveCheckoutType(){return this.applePayOnly&&!this.productId?"mini_checkout":"buy_now"}resolveSupportedNetworks(){return _(this.supportedNetworks)}async settlePayment(){let t=this.host.getElementSallaData();if(c(t,this.collectedOrderOptions),"set"in t?(t.set("id",this.productId),t.set("source","buy_now")):(t.id=this.productId,t.source="buy_now"),P(t,this.collectedFreeProducts),!this.isApplePayActive)return salla.api.request("checkout/mini",t,"post").catch((i=>this.legacyQuickPurchaseFallback(i,t))).then((t=>{const i=t.data?.url||t.data?.redirect;return i?window.location.href=i:"login"===t.data?.to&&salla.event.dispatch("login::open"),t}));t.is_applepay=!0,"append"in t&&t.append("is_applepay",!0),salla.event.dispatch("payments::apple-pay.start-transaction",{amount:this.applePayAmount>0?this.applePayAmount:this.amount,currency:this.currency||salla.config.get("store.settings.buy_now.currency")||"SAR",requiredShippingContactFields:this.getRequiredShippingContactFields(),shippingMethods:this.isRequireShipping?[]:void 0,supportedNetworks:this.resolveSupportedNetworks(),supportedCountries:Array.isArray(this.supportedCountries)&&this.supportedCountries.length?this.supportedCountries:salla.config.get("store.settings.buy_now.supportedCountries"),countryCode:salla.config.get("store.store_country")||"SA",merchantIdentifier:v(),checkout_type:this.resolveCheckoutType(),cartId:this.applePayOnly&&!this.productId?this.cartId:null,onStartedSession:this.handleApplePaySessionStarted,validateMerchant:{url:this.validateHost?`${this.validateHost}/checkout/applepay/validate`:salla.url.get("checkout/applepay/validate"),onSuccess:i=>this.applePayOnly&&!this.productId?this.cartId?(window.SallaApplePay.id=this.cartId,salla.log("🍏 Pay: create checkout success: with id #"+this.cartId),Promise.resolve(i)):(salla.logger.warn("🍏 Pay: trying to create applePay transaction without cartId/ProductId !"),Promise.resolve(i)):salla.api.request("checkout/mini","object"==typeof t?t:void 0,"post",{}).catch((i=>this.legacyQuickPurchaseFallback(i,"object"==typeof t?t:void 0))).then((t=>{const i=t?.data?.id||t?.data?.url?.split("/checkout/")[1]?.split(/[/?#]/)[0];if(i)return window.SallaApplePay.id=i,salla.log("🍏 Pay: create checkout success: with id #"+window.SallaApplePay.id),salla.analytics?.track("Checkout Started",{checkout_id:String(i),cart_id:String(i),payment_method:"apple_pay",gateway:"apple_pay",checkout_type:this.resolveCheckoutType(),session_id:salla.config.get("jitsu.session_id")||null,value:this.applePayAmount>0?this.applePayAmount:this.amount,currency:this.currency||salla.config.get("store.settings.buy_now.currency")||"SAR"}),t;const o=t?.data?.url||t?.data?.redirect?.url||t?.data?.redirect;return o?(salla.log("🍏 Pay: create checkout success: redirect exits, go to checkout page"),window.location.href=o,t):(salla.logger.warn("🍏 Pay: create checkout success: No id, or redirect"),t)}))},authorized:{url:salla.url.get("checkout/{id}/payments/submit"),onFailed:t=>{window.SallaApplePay.onCancel({},t?.data?.error?.message||t?.data?.error?.code||salla.lang.get("pages.checkout.payment_failed"))},onSuccess:t=>{window.location.href=t.redirect.url,salla.log("🍏 Pay: authorized Success:: redirect to thank you page, order placed")}},shippingMethodSelected:this.isRequireShipping?{url:salla.url.get("checkout/{id}/shipping/details")}:void 0,shippingContactSelected:this.isRequireShipping?{url:salla.url.get("checkout/{id}/address/add")}:void 0,guestContactSelected:this.isGuestCheckout()?{url:salla.url.get("checkout/{id}/customer")}:void 0,onCouponCodeChanged:{url:salla.url.get("checkout/{id}/coupons")},recalculateTotal:{url:salla.url.get("checkout/{id}/payments/recalculate?payment_method=apple_pay")},onError:function(t){salla.log(t),salla.notify.error(t)}})}legacyQuickPurchaseFallback(t,i){if("token_not_provided"!==t?.response?.data?.error?.code)throw t;return salla.logger.warn("quick-buy: falling back to quick-purchase because of token_not_provided"),salla.api.request("checkout/quick-purchase/"+this.productId,i,"post")}isGuestCheckout(){return salla.config.isGuest()&&salla.config.get("store.features").includes("guest-checkout")&&this.isPhysicalProduct()}getRequiredShippingContactFields(){let t=[];return this.isRequireShipping&&t.push("postalAddress"),this.isGuestCheckout()&&t.push("email","phone","name"),t}applyBaseCurrencyPrice(t){const i=t?.base_currency_price;null!=i?.amount?(this.amount=i.amount,i?.currency&&(this.currency=i.currency)):null!=t?.price&&(this.amount=t.price,this.currency=salla.config.get("user.currency_code")||this.currency||"SAR")}componentWillLoad(){console.log("🍏 Pay: Quick Buy Component Loaded");const t="undefined"!=typeof window&&!!window.ApplePaySession?.canMakePayments?.(),i=salla?.config?.get?.("store.settings.payments")?.includes?.("apple_pay")??!0,o=salla?.config?.get?.("store.settings.is_salla_gateway",!1)??!0,e=k();this.isApplePayActive=t&&i&&o&&!e&&!!this.resolveSupportedNetworks().length;const a=async()=>{if(!this.productId&&salla?.config?.get&&salla.url?.is_page&&(this.productId=salla.config.get("page.id")),!this.applePayOnly&&!this.productId)return void salla?.logger?.warn?.("🍏 Pay: Failed load the quick buy, the product id is missing");this.amount&&this.isRequireShipping||!this.productId||!salla?.product?.getDetails||await salla.product.getDetails(this.productId,[]).then((t=>{this.applyBaseCurrencyPrice(t?.data),this.isRequireShipping=t?.data?.is_require_shipping||!1})).catch((t=>{salla?.logger?.warn?.("🍏 Pay: Failed load the quick buy, get the product details failed: ",t)})),"donate"===this.type&&salla?.event?.on?salla.event.on("product-options::donation-changed",(t=>{String(t.id)===String(this.productId)&&this.applyBaseCurrencyPrice(t)})):salla?.url?.is_page?.("product.single")&&salla?.product?.event?.onPriceUpdated&&salla.product.event.onPriceUpdated((t=>{this.applyBaseCurrencyPrice(t?.data)}));const t=(salla?.config?.get?.("store.settings.payments")?.includes?.("apple_pay")??i)&&(salla?.config?.get?.("store.settings.is_salla_gateway",!1)??o)&&!k();t&&x(),this.isApplePayActive=t&&await S(this.currency,this.resolveSupportedNetworks())};return new Promise((t=>{"function"==typeof salla?.onReady?salla.onReady((()=>a().then((()=>t(!0))))):a().then((()=>t(!0)))}))}render(){return k()?o(e,null):o(e,null,this.quickBuyButton())}quickBuyButton(){return o("apple-pay-button",{locale:salla?.config?.get?.("user.language_code")||"ar",onClick:()=>this.quickBuyHandler(),"data-quick-purchase":"applepay",class:"s-quick-buy-apple-pay","data-is-applepay":"1",buttonstyle:"black",type:this.type})}isPhysicalProduct(){return"product"===this.productType||"group_products"===this.productType||"food"===this.productType}get host(){return a(this)}};H.style='/*!twlt*/.s-quick-buy-button .s-button-text{display:flex}apple-pay-button{--apple-pay-button-width:100%;--apple-pay-button-height:40px;--apple-pay-button-border-radius:.75rem;--apple-pay-button-box-sizing:content-box}.s-add-product-button-with-sticky-bar salla-quick-buy .s-quick-buy-button .s-button-text span{display:none}@media (min-width: 768px){.s-add-product-button-with-sticky-bar salla-quick-buy .s-quick-buy-button .s-button-text span{display:block}}.s-quick-buy-button svg{margin-right:0.375rem;height:1rem;width:1rem}.s-quick-buy-button svg:where([dir="rtl"],[dir="rtl"] *){margin-right:0px;margin-left:0.375rem}.s-quick-buy-apple-pay{display:block;width:100%}@media (min-width: 640px){.s-quick-buy-apple-pay{margin-top:0.625rem}}.s-quick-buy-apple-pay .apple-pay-btn-wrapper .apple-pay-btn{width:auto !important;border-radius:var(--s-radius, 0.25rem) !important}';export{O as salla_add_product_button,q as salla_bought_together,A as salla_product_availability,L as salla_product_options,H as salla_quick_buy}
@@ -1,4 +0,0 @@
1
- /*!
2
- * Crafted with ❤ by Salla
3
- */
4
- import{r as t,h as e,H as s,a}from"./p-HRJpfiBN.js";import{S as r}from"./p-Ctkfc4K-.js";import{l as i}from"./p-BChI23pG.js";import{T as o}from"./p-CJUR4sUM.js";import{A as c}from"./p-DCZbpt2a.js";import{C as n}from"./p-gFG8By9O.js";import{a as l}from"./p-CgtvEd63.js";const f=class{constructor(e){t(this,e),this.internalOffers=[],this.showAll=!1,this.freeLabel="",this.receivedOffer="",this.discountAmountLabel="",this.showMoreOffers="",this.icons={DiscountCouponIcon:'\x3c!-- Generated by IcoMoon.io --\x3e\n<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 32 32">\n<title>discount-coupon</title>\n<path d="M27 28h-22c-0.552 0-1-0.448-1-1v0c0-1.657-1.343-3-3-3v0c-0.552 0-1-0.448-1-1v0-12c0-0.552 0.448-1 1-1v0c1.657 0 3-1.343 3-3v0c0-0.552 0.448-1 1-1v0h22c0.552 0 1 0.448 1 1v0c0 1.657 1.343 3 3 3v0c0.552 0 1 0.448 1 1v0 12c0 0.552-0.448 1-1 1v0c-1.657 0-3 1.343-3 3v0c0 0.552-0.448 1-1 1v0zM5.9 26h20.2c0.415-1.964 1.936-3.485 3.867-3.894l0.033-0.006v-10.2c-1.964-0.415-3.485-1.936-3.894-3.867l-0.006-0.033h-20.2c-0.415 1.964-1.936 3.485-3.867 3.894l-0.033 0.006v10.2c1.964 0.415 3.485 1.936 3.894 3.867l0.006 0.033zM20 7h2v3h-2v-3zM20 12h2v4h-2v-4zM20 18h2v4h-2v-4zM20 24h2v3h-2v-3zM9 16c-1.657 0-3-1.343-3-3s1.343-3 3-3c1.657 0 3 1.343 3 3v0c0 1.657-1.343 3-3 3v0zM9 12c-0.552 0-1 0.448-1 1s0.448 1 1 1c0.552 0 1-0.448 1-1v0c0-0.552-0.448-1-1-1v0zM15 24c-1.657 0-3-1.343-3-3s1.343-3 3-3c1.657 0 3 1.343 3 3v0c0 1.657-1.343 3-3 3v0zM15 20c-0.552 0-1 0.448-1 1s0.448 1 1 1c0.552 0 1-0.448 1-1v0c0-0.552-0.448-1-1-1v0zM7 24c-0.552-0-1-0.448-1-1 0-0.244 0.088-0.468 0.233-0.642l-0.001 0.002 10-12c0.185-0.221 0.461-0.36 0.769-0.36 0.553 0 1.001 0.448 1.001 1.001 0 0.245-0.088 0.469-0.233 0.643l0.001-0.002-10 12c-0.185 0.22-0.46 0.358-0.767 0.358-0.001 0-0.002 0-0.003 0h0z"></path>\n</svg>\n',GiftIcon:i,FireIcon:'\x3c!-- Generated by IcoMoon.io --\x3e\n<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 32 32">\n<title>fire</title>\n<path d="M21.56 3.009c-0.052-0.047-0.116-0.065-0.173-0.103-0.073-0.048-0.143-0.1-0.223-0.132-0.083-0.033-0.165-0.047-0.252-0.063-0.081-0.016-0.16-0.035-0.243-0.035-0.089 0-0.172 0.020-0.26 0.037-0.080 0.016-0.159 0.028-0.236 0.059-0.084 0.035-0.157 0.088-0.235 0.14-0.053 0.036-0.115 0.053-0.165 0.097-0.049 0.044-0.988 0.895-2.288 2.255-2.364-2.839-4.476-4.815-4.576-4.908-0.056-0.052-0.127-0.075-0.188-0.115-0.075-0.049-0.143-0.105-0.224-0.137-0.080-0.032-0.163-0.041-0.245-0.057-0.085-0.016-0.167-0.040-0.252-0.040-0.084 0-0.163 0.023-0.245 0.039-0.087 0.016-0.172 0.025-0.253 0.059-0.080 0.032-0.147 0.087-0.22 0.135-0.063 0.041-0.133 0.064-0.189 0.116-0.453 0.423-11.092 10.408-11.092 18.095 0 7.977 4.935 13.549 12 13.549h8.667c6.673 0 11.333-5.115 11.333-12.439 0-7.052-10.013-16.167-10.44-16.552zM20.667 29.333h-7.777c-2.924 0-4.889-2.044-4.889-5.084 0-2.317 2.816-6.441 4.888-8.887 0.76 0.909 2.755 3.397 3.969 5.869 0.212 0.431 0.639 0.715 1.117 0.743 0.489 0.031 0.937-0.203 1.197-0.605 0.552-0.849 1.109-1.596 1.497-2.093 1.491 1.897 3.331 4.78 3.331 6.399 0 2.188-1.34 3.659-3.333 3.659zM26.537 27.052c0.081-0.44 0.129-0.899 0.129-1.377 0-3.269-3.713-7.847-4.46-8.735l-0.523-0.617c-0.507-0.599-1.528-0.599-2.035 0l-0.531 0.627c-0.147 0.175-0.495 0.599-0.936 1.187-1.595-2.597-3.495-4.776-3.595-4.889l-0.697-0.793c-0.507-0.577-1.499-0.577-2.004 0l-0.697 0.795c-0.6 0.684-5.856 6.803-5.856 11.001 0 0.881 0.127 1.712 0.356 2.484-1.896-1.933-3.023-4.821-3.023-8.283 0-4.915 6.073-11.997 9.329-15.255 1.001 1.008 2.692 2.789 4.368 4.927 0.243 0.309 0.609 0.496 1.001 0.509h0.048c0.376 0 0.735-0.159 0.988-0.439 0.889-0.981 1.693-1.795 2.269-2.359 3.051 2.965 8.663 9.323 8.663 13.727 0 3.171-1.031 5.769-2.796 7.491z"></path>\n</svg>\n',SpecialDiscountIcon:r,TagMoneyIcon:o},this.visibleOffersCount=3,this.handleCartItemUpdated=t=>{const e=t.data?.cart?.items?.find((t=>String(t.id)===String(this.itemId)));e&&(this.internalQuantity=e.quantity,this.internalOffers=e.detailed_offers||[],this.internalProductPrice=e.product_price)},this.toggleShowAll=()=>{this.showAll=!this.showAll}}async componentWillLoad(){await Salla.onReady(),await salla.lang.onLoaded((()=>{this.freeLabel=salla.lang.get("common.elements.freeExclam"),this.receivedOffer=salla.lang.get("pages.cart.received_offer"),this.discountAmountLabel=salla.lang.get("pages.cart.discount_amount"),this.showMoreOffers=salla.lang.get("pages.cart.show_more_offers")})),this.internalQuantity=this.quantity,this.internalOffers=this.parseOffers(this.offers),this.internalProductPrice=this.productPrice}componentDidLoad(){Salla.cart.event.onLatestFetched(this.handleCartItemUpdated),Salla.cart.event.onItemUpdated(this.handleCartItemUpdated),Salla.cart.event.onCouponAdded(this.handleCartItemUpdated),Salla.cart.event.onCouponDeleted(this.handleCartItemUpdated)}parseOffers(t){try{if("string"!=typeof t)return console.warn("Offers is not a string. Returning as-is.",t),Array.isArray(t)?t:[];const e=JSON.parse(t||"[]");return Array.isArray(e)?e:[]}catch(t){return console.error("Failed to parse offers",t),[]}}get visibleOffers(){return this.internalOffers.slice(0,this.visibleOffersCount)}get hiddenOffers(){return this.internalOffers.slice(this.visibleOffersCount)}getPaidQty(t,e){return t-e.free_quantity}renderOffer(t,s){const a=this.getPaidQty(t,s);return e("div",{class:"s-cart-item-offers-box"},s.free_quantity>0&&a>0&&e("div",{class:"s-cart-item-offers-paid-free"},e("div",{class:"s-cart-item-offers-line"},salla.helpers.number(a)," × ",e("span",{innerHTML:salla.money(this.internalProductPrice)})),e("div",{class:"s-cart-item-offers-line"},salla.helpers.number(s.free_quantity)," ×",e("span",{class:"s-cart-item-offers-regular-price",innerHTML:salla.money(this.internalProductPrice)}),e("span",{class:"s-cart-item-offers-free-label"},this.freeLabel))),e("div",{class:"s-cart-item-offers-details"},e("span",{class:"s-cart-item-offers-icon",innerHTML:this.icons[s.discount_icon]||""}),e("div",null,e("p",{class:"s-cart-item-offers-title"},this.receivedOffer.replace(":offer",s.offer_name)),e("p",{class:"s-cart-item-offers-discount"},e("span",{innerHTML:this.discountAmountLabel.replace(":amount",salla.money(s.discount_amount.toFixed(2)))})))))}render(){return this.internalOffers?.length?e("div",{class:"s-cart-item-offers-container",id:`offers_list_${this.itemId}`},this.visibleOffers.map((t=>this.renderOffer(this.internalQuantity,t))),this.internalOffers?.length>this.visibleOffersCount&&e("div",{class:"s-cart-item-offers-show-more"},e("button",{class:"s-cart-item-offers-show-more-btn",onClick:this.toggleShowAll,type:"button"},e("span",{class:"s-cart-item-offers-show-more-label"},"+",this.hiddenOffers.length," ",this.showMoreOffers,e("span",{innerHTML:c,class:{"s-cart-item-offers-arrow-icon":!0,"s-cart-item-offers-arrow-open":this.showAll}})))),this.showAll&&e("div",{class:"s-cart-item-offers-collapsed",id:`offers_${this.itemId}`},this.hiddenOffers.map((t=>this.renderOffer(this.internalQuantity,t))))):null}};f.style="/*!twlt*/:host{display:block}.s-cart-item-offers-box{margin-bottom:0.75rem}.s-cart-item-offers-container{margin-top:1.25rem}.s-cart-item-offers-paid-free{margin-bottom:0.75rem}.s-cart-item-offers-paid-free>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(0.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0.25rem * var(--tw-space-y-reverse))}.s-cart-item-offers-paid-free{font-weight:500}.s-cart-item-offers-line{text-align:start}.s-cart-item-offers-regular-price{font-size:0.875rem;line-height:1.25rem;--tw-text-opacity:1;color:rgb(107 114 128 / var(--tw-text-opacity, 1));text-decoration-line:line-through}.s-cart-item-offers-free-label{margin-left:0.5rem;margin-right:0.5rem;display:inline-block;font-size:0.875rem;line-height:1.25rem;--tw-text-opacity:1;color:rgb(153 27 27 / var(--tw-text-opacity, 1))}.s-cart-item-offers-details{display:flex;align-items:flex-start;gap:0.625rem;--tw-text-opacity:1;color:rgb(22 163 74 / var(--tw-text-opacity, 1))}.s-cart-item-offers-icon{--tw-translate-y:-3px;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-size:1.125rem;line-height:1.75rem;font-weight:700;--tw-text-opacity:1;color:rgb(22 163 74 / var(--tw-text-opacity, 1))}.s-cart-item-offers-icon svg{width:18px;fill:currentColor}.s-cart-item-offers-title{margin-bottom:0.5rem;font-weight:500}.s-cart-item-offers-message{font-size:0.875rem;line-height:1.25rem}.s-cart-item-offers-discount{margin-top:0px;font-size:0.75rem;line-height:1rem;--tw-text-opacity:1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.s-cart-item-offers-show-more-btn{display:flex;align-items:center;justify-content:flex-start !important;background-color:transparent !important;padding-left:0px !important;padding-right:0px !important;font-size:0.875rem;line-height:1.25rem}.s-cart-item-offers-show-more-btn:hover{--tw-text-opacity:1;color:rgb(24 24 27 / var(--tw-text-opacity, 1))}.s-cart-item-offers-arrow-icon{margin-left:0.125rem;margin-right:0.125rem;transition-property:transform;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:300ms}.s-cart-item-offers-arrow-open{--tw-rotate:-180deg;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.s-cart-item-offers-show-more-btn svg{width:18px}.s-cart-item-offers-show-more-label{display:flex;align-items:center}.s-cart-item-offers-collapsed{margin-top:0.5rem}";const m=class{constructor(e){t(this,e),this.cartSummaryCount=salla.storage.get("cart.summary.count")||0,this.cartSummaryTotal=salla.storage.get("cart.summary.total")||0,this.cartLabel="ar"===salla.config.get("user.language_code")?"السلة":"Cart",this.handleCheckoutClick=t=>{salla.mobile?.isSpaWebview?.()&&salla.mobile.openCheckout&&(t.preventDefault(),salla.mobile.openCheckout(this.getCartLink()))},salla.cart.event.onUpdated((t=>{this.cartSummaryCount=t.count||0,this.cartSummaryTotal=t.total||0}))}async animateToCart(t){if(document.querySelectorAll(".s-cart-thumb").forEach((t=>t.remove())),!t?.src)return void salla.log("Failed to get the img element");let e=this.host.querySelector("#s-cart-icon"),s=e.getBoundingClientRect(),a=s.top+window.scrollY,r=s.left+window.scrollX,i=t.getBoundingClientRect(),o=t.offsetWidth+"px",c=t.offsetHeight+"px",n=i.top,f=i.left,m=document.createElement("img");m.src=t.getAttribute("src"),m.className="s-cart-thumb",m.setAttribute("style","object-fit:cover; width:"+o+"; height:"+c+"; top:"+n+"px; left:"+f+"px;z-index:99999999; "),document.body.append(m);let h=document.querySelector(".s-cart-thumb");e.classList.remove("animated","rubberBand"),(new l.timeline).add({targets:h,width:[150,30],height:[150,30],top:[n,window.scrollY>0?a-window.scrollY-40:a-40],left:[f,r],borderRadius:["20%","50%"],easing:"easeOutExpo",duration:1200},"+=200").add({targets:h,width:[30,0],height:[30,0],opacity:[1,0],easing:"easeOutExpo",top:[window.scrollY>0?a-window.scrollY-40:a-40,window.scrollY>0?a-window.scrollY+10:a+10],left:[r,r+10]},"-=500").add({complete:function(){e.classList.add("animated","rubberBand"),h.remove()}},"-=1700")}componentWillLoad(){return new Promise((t=>salla.onReady(t)))}getCartLink(){let t=salla.url.get("cart");const e=salla.storage.get("scope")||salla.config.get("store.scope");if(e&&e.id)try{const s=new URL(t);return s.searchParams.set("scope",e.id),e.allocation_type&&s.searchParams.set("allocation_type",e.allocation_type),e.allocation_id&&s.searchParams.set("allocation_id",e.allocation_id),s.toString()}catch(s){const a=t.includes("?")?"&":"?",r=new URLSearchParams;return r.set("scope",String(e.id)),e.allocation_type&&r.set("allocation_type",e.allocation_type),e.allocation_id&&r.set("allocation_id",e.allocation_id),`${t}${a}${r.toString()}`}return t}render(){return e(s,{key:"80544f74203447490842d9ef9519ba3013fe0d02"},e("a",{key:"d769586f49b37a079653587d990871cb3ffe6542",class:"s-cart-summary-wrapper",href:this.getCartLink(),onClick:this.handleCheckoutClick},e("div",{key:"ad1833c7562138c211def82a365a89216157db20",id:"s-cart-icon"},e("slot",{key:"a5d60463eb9f023ffed29586a94d3b5feaf586c8",name:"icon"},e("i",{key:"64a0c861706a05edc9057b1692d33945306958c0",class:"s-cart-summary-icon",innerHTML:n}))),e("span",{key:"6781086462fdb3e9910d9d32bd53014345c7148b",class:"s-cart-summary-count"},salla.helpers.number(this.cartSummaryCount)),e("p",{key:"04dd5019a64ac99153b843ec2cff9103cf247c6a",class:"s-cart-summary-content"},this.showCartLabel&&e("span",{key:"2625556cc87729a72eb9ab455e3274a24c1738fa",class:"s-cart-summary-label"},this.cartLabel),e("b",{key:"97a1a1911d6e18f9dde89437bd8749553ce8d35c",class:"s-cart-summary-total",innerHTML:salla.money(this.cartSummaryTotal)}))))}get host(){return a(this)}};m.style='/*!twlt*/.block{display:block}.s-cart-summary-wrapper{text-decoration:none;color:var(--color-text);transition:all .5s cubic-bezier(0.2, 1, 0.3, 1);align-items:center;font-weight:bolder;position:relative;display:inline-flex}.s-cart-thumb{position:fixed;transition:all 0.3s cubic-bezier(0.2, 1, 0.3, 1)}.s-cart-summary-icon svg{height:1.25rem;width:1.25rem;fill:var(--color-text)}.s-cart-summary-count{position:absolute;top:-8px;left:-15px;display:inline-flex;height:1.25rem;width:1.25rem;align-items:center;justify-content:center;border-radius:9999px;--tw-bg-opacity:1;background-color:rgb(248 113 113 / var(--tw-bg-opacity, 1));padding:0.25rem;font-size:0.75rem;line-height:1.25rem;--tw-text-opacity:1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.s-cart-summary-count:where([dir="rtl"],[dir="rtl"] *){left:unset;right:-15px}';export{f as salla_cart_item_offers,m as salla_cart_summary}
@@ -1,4 +0,0 @@
1
- /*!
2
- * Crafted with ❤ by Salla
3
- */
4
- import{r as t,h as r}from"./p-HRJpfiBN.js";import{H as e}from"./p-Brgf4SAC.js";import"./p-CgtvEd63.js";const o="waiting",s="tab",i={"pages.orders.filter_all":{ar:"الكل",en:"All"},"pages.orders.filter_archived":{ar:"الطلبات المؤرشفة",en:"Archived orders"},"pages.orders.filter_awaiting_review":{ar:"بانتظار تقييمك",en:"Awaiting your review"},"pages.orders.leave_review":{ar:"أضف تقييمك",en:"Add review"},"pages.orders.no_unrated_orders":{ar:"لا توجد طلبات غير مقيَّمة",en:"No unrated orders"},"pages.orders.no_archived_orders":{ar:"لا توجد طلبات مؤرشفة",en:"No archived orders"},"pages.orders.review_banner":{ar:"لديك طلبات بانتظار تقييمك. شارك رأيك وساعدنا على تحسين تجربتك.",en:"You have orders awaiting your review. Share your feedback and help us improve your experience."},"pages.orders.review_banner_with_points":{ar:"لديك طلبات بانتظار تقييمك. قيِّمها واحصل على ما يصل إلى {{points}} نقطة ولاء.",en:"You have orders awaiting your review. Rate them and earn up to {{points}} loyalty points."}},a=class{constructor(r){t(this,r),this.orderNumberText=salla.lang.get("pages.thank_you.order_id"),this.totalOrderText=salla.lang.get("pages.orders.total"),this.orderDateText=salla.lang.get("pages.orders.date"),this.orderStatusText=salla.lang.get("pages.orders.status"),this.noOrderText=salla.lang.get("pages.orders.non_orders"),this.load_more_text_trans=salla.lang.get("common.elements.load_more"),this.languageCode=salla.lang.locale,this.filterAllText=salla.lang.getWithDefault("pages.orders.filter_all","الكل"),this.filterArchivedText=salla.lang.getWithDefault("pages.orders.filter_archived","الطلبات المؤرشفة"),this.filterAwaitingReviewText=salla.lang.getWithDefault("pages.orders.filter_awaiting_review","بانتظار تقييمك"),this.leaveReviewText=salla.lang.getWithDefault("pages.orders.leave_review","شارك تقييمك"),this.noUnratedOrdersText=salla.lang.getWithDefault("pages.orders.no_unrated_orders","لا توجد طلبات غير مقيَّمة"),this.noArchivedOrdersText=salla.lang.getWithDefault("pages.orders.no_archived_orders","لا توجد طلبات مؤرشفة"),this.orders=[],this.nextPage=null,this.activeFilter=function(){const t=new URLSearchParams(window.location.search).get(s);return"waiting"===t||"archived"===t?t:"all"}(),this.pendingReviewCount=0,this.emptyFilterResult=!1,this.isFetching=!1,this.reviewPoints=0,this.filterGeneration=0,this.showExternalOrders=!1,salla.lang.onLoaded((()=>{this.languageCode=salla.lang.locale,this.orderNumberText=salla.lang.get("pages.thank_you.order_id"),this.totalOrderText=salla.lang.get("pages.orders.total"),this.orderDateText=salla.lang.get("pages.orders.date"),this.orderStatusText=salla.lang.get("pages.orders.status"),this.noOrderText=salla.lang.get("pages.orders.non_orders"),this.load_more_text_trans=salla.lang.get("common.elements.load_more")}))}setLoadMoreLoading(t=!0){const r=this.status?.querySelector(".s-button-text");r&&this.btnLoader&&(e.toggleElementClassIf(r,"s-button-hide","s-button-show",(()=>t)),this.btnLoader.style.display=t?"inherit":"none")}refreshReviewLabels(){this.filterAllText=salla.lang.getWithDefault("pages.orders.filter_all","الكل"),this.filterArchivedText=salla.lang.getWithDefault("pages.orders.filter_archived","الطلبات المؤرشفة"),this.filterAwaitingReviewText=salla.lang.getWithDefault("pages.orders.filter_awaiting_review","بانتظار تقييمك"),this.leaveReviewText=salla.lang.getWithDefault("pages.orders.leave_review","شارك تقييمك"),this.noUnratedOrdersText=salla.lang.getWithDefault("pages.orders.no_unrated_orders","لا توجد طلبات غير مقيَّمة"),this.noArchivedOrdersText=salla.lang.getWithDefault("pages.orders.no_archived_orders","لا توجد طلبات مؤرشفة")}setupLoyalty(){const t=!!salla.config.get("store.settings.rating.can_rate_product"),r=!!salla.config.get("store.settings.rating.can_rate_shipping"),e=!!salla.config.get("store.settings.rating.can_rate_store"),o=!!salla.config.get("store.settings.rating.allow_attach_images")||!!salla.config.get("store.settings.rating.allow_attach_videos"),s=Number(salla.config.get("store.settings.rating.rating_product_points"))||0,i=Number(salla.config.get("store.settings.rating.rating_product_with_image_points"))||0,a=Number(salla.config.get("store.settings.rating.rating_shipping_company_points"))||0,n=Number(salla.config.get("store.settings.rating.rating_store_points"))||0;this.reviewPoints=0,t&&(this.reviewPoints+=s),r&&(this.reviewPoints+=a),e&&(this.reviewPoints+=n),o&&(this.reviewPoints+=i)}formatNumber(t){return salla.helpers?.number?salla.helpers.number(t):String(t)}getBannerText(){const t=this.reviewPoints>0,r="pages.orders.review_banner"+(t?"_with_points":"");let e=salla.lang.getWithDefault(r,i[r]?.ar||"");return t&&(e=e.replace("{{points}}",this.formatNumber(this.reviewPoints))),e}isEligibleForReview(t){return!t.is_rated&&!1!==t.can_rate}async openReviewModal(t){this.ratingModal&&t&&(await this.ratingModal.setOrder(t),await this.ratingModal.open())}switchFilter(t){this.isFetching||this.activeFilter===t||(this.activeFilter=t,this.syncFilterToSearchParams(t),this.fetchOrders(t))}syncFilterToSearchParams(t){const r=new URL(window.location.href);"all"===t?r.searchParams.delete(s):r.searchParams.set(s,t),window.history.replaceState(window.history.state,"",r)}initiateInfiniteScroll(){if(!this.hasInfiniteScroll)return;if(!this.ordersTableBody)return void salla.logger.error("Orders table body is undefined. Cannot initiate infinite scroll.");const t=this.filterGeneration;this.infiniteScroll=salla.infiniteScroll.initiate(this.ordersTableBody,this.ordersTableBody,{path:()=>this.nextPage,history:!1,nextPage:this.nextPage,scrollThreshold:!1},!0),this.infiniteScroll?.on("request",(()=>{this.setLoadMoreLoading()})),this.infiniteScroll?.on("load",(r=>{if(t===this.filterGeneration){this.setLoadMoreLoading(!1),this.pagination=r.pagination,this.nextPage=r.pagination?.links?.next||null;for(const t of this.createOrderRows(r.data))this.ordersTableBody.append(t);this.orders=[...this.orders,...r.data],e.animateItems(this.ordersTableBody.querySelectorAll(".s-orders-table-tbody-tr:not(.animated)"))}})),this.infiniteScroll?.on("error",(t=>{salla.logger.error("Error loading more comments:",t)}))}async loadMore(){this.infiniteScroll.loadNextPage()}createOrderRows(t){return t.map((t=>this.getSingleOrderItem(t)))}async loadPendingReviewCount(){try{const t=await salla.order.api.fetch({...this.params,format:"light",types:[""],feedback_status:o,per_page:1});this.pendingReviewCount=t.pagination?.count??0}catch(t){this.pendingReviewCount=0,salla.logger.error(t)}}populateOrdersTableIfEmpty(){if(this.ordersTableBody&&this.orders.length&&!this.ordersTableBody.children.length){for(const t of this.createOrderRows(this.orders))this.ordersTableBody.append(t);this.infiniteScroll||this.initiateInfiniteScroll(),e.animateItems(this.ordersTableBody.querySelectorAll(".s-orders-table-tbody-tr:not(.animated)"))}}async fetchOrders(t){if(this.isFetching)return;this.setLoadMoreLoading(!1),this.isFetching=!0,this.ordersTableBody&&(this.ordersTableBody.innerHTML=""),this.filterGeneration++;const r="waiting"===t?o:null;try{const e=await salla.order.api.fetch({...this.params,format:"light",types:[""],feedback_status:r,..."archived"===t?{external_orders:1}:{}});if(this.orders=e.data,this.hasInfiniteScroll=!!e.pagination?.links.next,this.pagination=e.pagination,this.total=e.pagination?.count,this.nextPage=e.pagination?.links?.next||null,this.infiniteScroll?.destroy?.(),this.infiniteScroll=null,"waiting"===t&&(this.pendingReviewCount=e.pagination?.count??0),!this.orders.length)return this.setLoadMoreLoading(!1),this.emptyFilterResult="all"!==t,void(this.showPlaceholder="all"===t);this.showPlaceholder=!1,this.emptyFilterResult=!1,this.ordersTableBody&&(this.ordersTableBody.innerHTML="")}catch(t){this.showPlaceholder=!0,this.setLoadMoreLoading(!1),salla.logger.error(t)}finally{this.isFetching=!1}}getSingleOrderItem(t){const r=String(("archived"===this.activeFilter?t.external_order_id:t.reference_id)??""),o=/^\d+$/.test(r)?`#${r}`:r,s=document.createElement("tr");s.classList.add("s-orders-table-tbody-tr","s-orders-table-tbody-tr-shadow");const i=document.createElement("td");i.classList.add("s-orders-table-tbody-tr-td");const a=document.createElement("div");a.classList.add("s-orders-table-tbody-tr-td-content");const n=document.createElement("span");n.classList.add("s-orders-mobile-title"),n.textContent=`${this.orderNumberText}:`;const l=document.createElement("span");if(l.classList.add("s-orders-reference-id"),l.textContent=o,a.appendChild(n),a.appendChild(l),"buy_as_gift"===t.source){const t=document.createElement("i");t.classList.add("sicon-gift-sharing","s-orders-buy-as-gift-icon"),a.appendChild(t)}const d=document.createElement("a");t.url&&(d.href=t.url),a.appendChild(d);const c=document.createElement("div");c.classList.add("s-orders-copy-to-clipboard-button");const h=document.createElement("salla-button");h.classList.add("relative"),h.setAttribute("color","dark"),h.setAttribute("shape","link"),h.dataset.content=r,h.addEventListener("click",(t=>{e.copyToClipboard(t),e.toggleElementClassIf(h,"copied","code-to-copy",(()=>!0)),setTimeout((()=>{e.toggleElementClassIf(h,"code-to-copy","copied",(()=>!0))}),1e3)}));const p=document.createElement("span");p.textContent=o;const b=document.createElement("i");b.classList.add("sicon-swap-stroke","s-orders-copy-to-clipboard-button-icon");let m=salla.config.get("theme.is_rtl",!0);m?(h.appendChild(b),h.appendChild(p)):(h.appendChild(p),h.appendChild(b)),c.appendChild(h),a.appendChild(c),i.appendChild(a),s.appendChild(i);const g=document.createElement("td");g.classList.add("s-orders-table-tbody-tr-td");const w=document.createElement("div");w.classList.add("s-orders-table-tbody-tr-td-content");const u=document.createElement("span");u.classList.add("s-orders-mobile-title"),u.textContent=`${this.orderStatusText}:`;const y=document.createElement("span");if(y.classList.add("s-orders-status-container"),t.status?.color&&(y.style.color=t.status.color),t.status?.icon){const r=document.createElement("i");r.classList.add(t.status.icon),y.appendChild(r)}const f=document.createElement("span");f.textContent=t.status?.name??"",y.appendChild(f),w.appendChild(u),w.appendChild(y);const v=document.createElement("a");t.url&&(v.href=t.url),w.appendChild(v),g.appendChild(w),s.appendChild(g);const x=document.createElement("td");x.classList.add("s-orders-table-tbody-tr-td");const k=document.createElement("div");k.classList.add("s-orders-table-tbody-tr-td-content");const _=document.createElement("span");_.classList.add("s-orders-mobile-title"),_.textContent=`${this.totalOrderText}:`;const C=document.createElement("div");C.innerHTML=salla.money(t.total);const z=document.createElement("a");t.url&&(z.href=t.url),k.appendChild(_),k.appendChild(C),k.appendChild(z),x.appendChild(k),s.appendChild(x);const j=document.createElement("td");j.classList.add("s-orders-table-tbody-tr-td");const L=document.createElement("div");L.classList.add("s-orders-table-tbody-tr-td-content");const R=document.createElement("span");R.classList.add("s-orders-mobile-title"),R.textContent=`${this.orderDateText}:`;const H=document.createElement("div");H.textContent=e.formatDateFromString(t.created_at?.date??"",salla.helpers.number,this.languageCode);const S=document.createElement("a");t.url&&(S.href=t.url),L.appendChild(R),L.appendChild(H),L.appendChild(S),j.appendChild(L),s.appendChild(j);const N=document.createElement("td");N.classList.add("s-orders-table-tbody-tr-td");const A=document.createElement("div");if(A.classList.add("s-orders-table-tbody-tr-td-content","s-orders-action-cell"),t.is_rated){const t=document.createElement("i");A.appendChild(t)}else if(this.isEligibleForReview(t)){const r=document.createElement("salla-button");r.classList.add("relative","s-orders-leave-review-btn"),r.setAttribute("color","primary"),r.setAttribute("fill","outline"),r.setAttribute("size","small");const e=document.createElement("i");e.classList.add("sicon-star-o","s-orders-review-star-icon");const o=document.createElement("span");o.textContent=this.leaveReviewText,m?(r.appendChild(e),r.appendChild(o)):(r.appendChild(o),r.appendChild(e)),r.addEventListener("click",(r=>{r.preventDefault(),r.stopPropagation(),this.openReviewModal(t.id)})),A.appendChild(r)}return N.appendChild(A),s.appendChild(N),s}renderTableHead(){return r("thead",{class:"s-orders-table-head"},r("tr",{class:"s-orders-table-head-tr"},r("th",{class:"s-orders-table-head-tr-th",scope:"col"},this.orderNumberText),r("th",{class:"s-orders-table-head-tr-th",scope:"col"},this.orderStatusText),r("th",{class:"s-orders-table-head-tr-th",scope:"col"},this.totalOrderText),r("th",{class:"s-orders-table-head-tr-th",scope:"col"},this.orderDateText),r("th",{class:"s-orders-table-head-tr-th",scope:"col"})))}renderSkeletonRow(t){return r("tr",{class:"s-orders-table-tbody-tr s-orders-table-tbody-tr-skeleton",key:`skeleton-${t}`},r("td",{class:"s-orders-table-tbody-tr-td"},r("div",{class:"s-orders-table-tbody-tr-td-content"},r("salla-skeleton",{height:"14px",width:"90px"}))),r("td",{class:"s-orders-table-tbody-tr-td"},r("div",{class:"s-orders-table-tbody-tr-td-content"},r("salla-skeleton",{height:"14px",width:"70px"}))),r("td",{class:"s-orders-table-tbody-tr-td"},r("div",{class:"s-orders-table-tbody-tr-td-content"},r("salla-skeleton",{height:"14px",width:"60px"}))),r("td",{class:"s-orders-table-tbody-tr-td"},r("div",{class:"s-orders-table-tbody-tr-td-content"},r("salla-skeleton",{height:"14px",width:"80px"}))),r("td",{class:"s-orders-table-tbody-tr-td"},r("div",{class:"s-orders-table-tbody-tr-td-content s-orders-action-cell"},r("salla-skeleton",{height:"32px",width:"90px"}))))}renderSkeletonRows(t=5){return Array.from({length:t},((t,r)=>this.renderSkeletonRow(r)))}getEmptyFilterText(){return"archived"===this.activeFilter?this.noArchivedOrdersText:this.noUnratedOrdersText}renderFilters(){return r("div",{class:"s-orders-filters"},r("salla-button",{size:"small",color:"all"===this.activeFilter?"primary":"light",fill:"outline",onClick:()=>this.switchFilter("all"),enableLoader:!1},this.filterAllText),this.showExternalOrders&&r("salla-button",{size:"small",color:"archived"===this.activeFilter?"primary":"light",fill:"outline",onClick:()=>this.switchFilter("archived"),enableLoader:!1},this.filterArchivedText),r("salla-button",{size:"small",color:"waiting"===this.activeFilter?"primary":"light",fill:"outline",onClick:()=>this.switchFilter("waiting"),enableLoader:!1},this.filterAwaitingReviewText))}renderBanner(){return this.pendingReviewCount?r("div",{class:"s-orders-banner"},r("span",{class:"s-orders-banner-icon"},r("svg",{width:"17",height:"17",viewBox:"0 0 17 17",fill:"none",xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true"},r("path",{d:"M10 0C13.6819 0 16.6667 2.98477 16.6667 6.66664C16.6667 9.37047 15.057 11.6984 12.7437 12.7444C11.6978 15.0575 9.3701 16.6666 6.66668 16.6666C2.98477 16.6666 0 13.6819 0 9.99998C0 7.29656 1.60918 4.96894 3.92195 3.92276C4.96827 1.60964 7.29618 0 10 0ZM6.66668 5C3.90524 5 1.66667 7.23856 1.66667 9.99998C1.66667 12.7614 3.90524 15 6.66668 15C9.4281 15 11.6667 12.7614 11.6667 9.99998C11.6667 7.23856 9.4281 5 6.66668 5ZM7.50002 5.83333V6.66664H9.16668V8.33331H5.83333C5.60322 8.33331 5.41667 8.51989 5.41667 8.74998C5.41667 8.95456 5.56407 9.12464 5.75844 9.15998L5.83333 9.16664H7.50002C8.6506 9.16664 9.58335 10.0994 9.58335 11.25C9.58335 12.4006 8.6506 13.3333 7.50002 13.3333V14.1666H5.83333V13.3333H4.16667V11.6666H7.50002C7.7301 11.6666 7.91668 11.4801 7.91668 11.25C7.91668 11.0455 7.76927 10.8753 7.57493 10.8401L7.50002 10.8333H5.83333C4.68274 10.8333 3.75 9.90056 3.75 8.74998C3.75 7.59939 4.68274 6.66664 5.83333 6.66664V5.83333H7.50002ZM10 1.66667C8.51377 1.66667 7.17893 2.31513 6.26313 3.34457C6.39704 3.33736 6.53138 3.33333 6.66668 3.33333C10.3486 3.33333 13.3333 6.3181 13.3333 9.99998C13.3333 10.1356 13.3293 10.2702 13.3213 10.4037C14.3513 9.48814 15 8.15314 15 6.66664C15 3.90524 12.7614 1.66667 10 1.66667Z",fill:"#008C56"}))),r("p",{class:"s-orders-banner-text"},this.getBannerText())):null}render(){return this.showPlaceholder?r("div",{class:"s-orders-no-content"},r("i",{class:"sicon-packed-box icon"}),r("p",null,this.noOrderText)):r("div",{class:"s-orders-wrapper"},this.renderBanner(),this.renderFilters(),r("div",{class:"s-orders-list-wrapper"},this.isFetching?r("table",{class:"s-orders-table s-orders-table-skeleton"},this.renderTableHead(),r("tbody",{class:"s-orders-table-tbody"},this.renderSkeletonRows())):this.emptyFilterResult?r("div",{class:"s-orders-no-content"},r("i",{class:"sicon-packed-box icon"}),r("p",null,this.getEmptyFilterText())):r("table",{class:"s-orders-table"},this.renderTableHead(),r("tbody",{class:"s-orders-table-tbody",ref:t=>this.ordersTableBody=t}))),this.nextPage&&!this.emptyFilterResult&&r("div",{class:"s-infinite-scroll-wrapper",ref:t=>this.status=t},r("button",{type:"button",onClick:()=>this.loadMore(),class:"s-infinite-scroll-btn s-button-btn s-button-primary"},r("span",{class:"s-button-text s-infinite-scroll-btn-text"},this.loadMoreText??this.load_more_text_trans),r("span",{class:"s-button-loader s-button-loader-center s-infinite-scroll-btn-loader",ref:t=>this.btnLoader=t,style:{display:"none"}}))),r("salla-rating-modal",{ref:t=>this.ratingModal=t}))}componentDidRender(){this.populateOrdersTableIfEmpty()}componentWillLoad(){return salla.lang.onLoaded((()=>{salla.lang.addBulk(i),this.refreshReviewLabels()})),salla.onReady().then((()=>{this.setupLoyalty(),this.showExternalOrders=salla.config.get("store.features",[]).includes("show-external-orders"),"archived"!==this.activeFilter||this.showExternalOrders||(this.activeFilter="all",this.syncFilterToSearchParams("all"));const t=[this.fetchOrders(this.activeFilter)];return"waiting"!==this.activeFilter&&t.push(this.loadPendingReviewCount()),Promise.all(t)}))}};a.style='/*!twlt*/:host{display:block}.s-orders-banner{display:flex;align-items:center;gap:0.625rem;width:100%;margin-top:1.5rem;margin-bottom:0.75rem;padding:0.75rem;border-radius:0.5rem;background-color:#E6F4EA}.s-orders-banner-icon{display:flex;flex-shrink:0;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;color:#1B7F5C}.s-orders-banner-icon svg{width:1.5rem;height:1.5rem;fill:currentColor}.s-orders-banner-text{flex:1;margin:0;font-size:0.875rem;line-height:1.25rem;color:#1f2937}.s-orders-action-cell.s-orders-action-cell{display:flex;align-items:center;justify-content:flex-end}.s-orders-leave-review-btn .s-button-text{display:flex;align-items:center;gap:0.375rem}.s-orders-action-cell .s-orders-status-rated{margin-inline-start:auto}.relative{position:relative}.table{display:table}.outline{outline-style:solid}.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-button-btn{position:relative;display:inline-flex;flex:1 1 0%;user-select:none;flex-direction:row-reverse;align-items:center;justify-content:center;white-space:nowrap;border-radius:var(--s-radius, 0.25rem);border-style:solid;padding-left:1.5rem;padding-right:1.5rem;padding-bottom:0.625rem;padding-top:0.5rem;font-size:0.875rem;line-height:1.25rem;font-weight:700;transition-property:color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:300ms}.s-button-btn:hover{opacity:0.8}.s-button-primary{border-width:1px;border-color:var(--color-primary);background-color:var(--color-primary);color:var(--color-primary-reverse)}.s-button-primary:hover{background-color:var(--color-primary-dark)}.s-button-text{pointer-events:none;align-items:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition-property:opacity;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:300ms}.s-button-loader{margin-left:0.5rem;margin-right:0.5rem;display:flex;align-items:center;justify-content:center;transition-property:color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms}.s-button-loader::before{display:inline-block;height:1rem;content:var(--tw-content);width:1rem}@keyframes spin{to{content:var(--tw-content);transform:rotate(360deg)}}.s-button-loader::before{animation:spin 1s linear infinite;border-radius:9999px;border-width:2px;border-style:solid;border-top-color:var(--color-primary);border-left-color:var(--color-primary);border-bottom-color:rgb(243 244 246 / var(--tw-border-opacity, 1));--tw-border-opacity:1;border-right-color:rgb(243 244 246 / var(--tw-border-opacity, 1));--tw-content:\'\';content:var(--tw-content)}.s-button-loader-center .s-button-loader{position:absolute;top:50%;left:50%;margin:0px !important;--tw-translate-y:-50%;--tw-translate-x:-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))}.s-comments-item-like-btn .s-button-text{display:flex;flex-direction:row-reverse;gap:0.5rem}.s-orders-container>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(0.625rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0.625rem * var(--tw-space-y-reverse))}@media (min-width: 768px){.s-orders-container>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.25rem * var(--tw-space-y-reverse))}}.s-orders-mobile-title{display:inline-block;width:8rem;font-weight:400;--tw-text-opacity:1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}@media (min-width: 768px){.s-orders-mobile-title{display:none}}.s-orders-reference-id{display:none}@media (min-width: 768px){.s-orders-reference-id{display:inline-block}}.s-orders-buy-as-gift-icon{margin-left:0.25rem;margin-right:0.25rem;display:inline-block;color:var(--color-primary)}.s-orders-copy-to-clipboard-button{display:flex;align-items:center}@media (min-width: 768px){.s-orders-copy-to-clipboard-button{display:none}}.s-orders-copy-to-clipboard-button salla-button{position:relative}.s-orders-copy-to-clipboard-button-icon{pointer-events:none;font-size:0.75rem;line-height:1rem}.s-orders-copy-to-clipboard-button-icon:where([dir="ltr"],[dir="ltr"] *){margin-left:0.25rem}.s-orders-copy-to-clipboard-button-icon:where([dir="rtl"],[dir="rtl"] *){margin-right:0.25rem}@media (min-width: 768px){.s-orders-status-container{margin-left:0px;margin-right:0px}}.s-orders-status-container:where([dir="ltr"],[dir="ltr"] *){margin-left:auto}.s-orders-status-container:where([dir="rtl"],[dir="rtl"] *){margin-right:auto}.s-orders-status-container i{margin-top:0.25rem}.s-orders-status-container i:where([dir="ltr"],[dir="ltr"] *){margin-right:0.25rem}.s-orders-status-container i:where([dir="rtl"],[dir="rtl"] *){margin-left:0.25rem}.s-orders-status-rated{font-size:1.125rem;line-height:1.75rem}.s-orders-status-rated:where([dir="ltr"],[dir="ltr"] *){margin-left:1rem}.s-orders-status-rated:where([dir="rtl"],[dir="rtl"] *){margin-right:1rem}.s-orders-rated-text{--tw-text-opacity:1;color:rgb(251 191 36 / var(--tw-text-opacity, 1))}.s-orders-unrated-text{--tw-text-opacity:1;color:rgb(229 231 235 / var(--tw-text-opacity, 1))}.s-orders-leave-review-btn{display:inline-flex;flex-shrink:0;align-items:center;gap:0.25rem;font-weight:700;color:var(--color-primary);transition-property:color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:300ms}.s-orders-leave-review-btn:hover{opacity:0.7}.s-orders-leave-review-btn:where([dir="ltr"],[dir="ltr"] *){margin-left:1rem}.s-orders-leave-review-btn:where([dir="rtl"],[dir="rtl"] *){margin-right:1rem}.s-orders-review-star-icon{font-size:1.125rem;line-height:1.75rem}.s-orders-no-content{display:flex;height:100%;flex-direction:column;align-items:center;justify-content:center;padding-top:2.5rem;padding-bottom:5rem;--tw-text-opacity:1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.s-orders-no-content .icon{margin-bottom:1rem;display:flex;height:8rem;width:8rem;align-items:center;justify-content:center;border-radius:9999px;--tw-bg-opacity:1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1));font-size:3rem;line-height:1;--tw-text-opacity:1;color:rgb(209 213 219 / var(--tw-text-opacity, 1))}.s-orders-no-content p{margin-bottom:1rem;font-size:1rem;line-height:1.5rem;--tw-text-opacity:1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.s-orders-filters{margin-bottom:1rem;display:flex;flex-wrap:wrap;align-items:center;gap:0.5rem}.s-orders-list-wrapper{position:relative}.s-orders-list-loading{position:absolute;inset:0px;z-index:10;display:flex;align-items:center;justify-content:center;background-color:rgb(0 0 0 / var(--tw-bg-opacity, 1));--tw-bg-opacity:0.1}.s-orders-table{min-width:100%;border-collapse:separate}@media (min-width: 768px){.s-orders-table{margin-bottom:-0.75rem;--tw-border-spacing-y:1.25rem;border-spacing:var(--tw-border-spacing-x) var(--tw-border-spacing-y)}}.s-orders-table-fetching{pointer-events:none;opacity:0.4;transition-property:opacity;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:200ms}.s-orders-table-head{margin-bottom:1.25rem;display:none;--tw-bg-opacity:1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}@media (min-width: 768px){.s-orders-table-head{display:table-header-group}}.s-orders-table-head-tr-th{padding-left:1.5rem;padding-right:1.5rem;text-align:start;font-size:0.875rem;line-height:1.25rem;font-weight:500;text-transform:uppercase;letter-spacing:0.05em}.s-orders-table-head-tr-th:where([dir="ltr"],[dir="ltr"] *){text-align:left}.s-orders-table-head-tr-th:last-child:where([dir="ltr"],[dir="ltr"] *){text-align:right}.s-orders-table-head-tr-th:where([dir="rtl"],[dir="rtl"] *){text-align:right}.s-orders-table-head-tr-th:last-child:where([dir="rtl"],[dir="rtl"] *){text-align:left}.s-orders-table-tbody-tr{position:relative;display:flex;flex-direction:row;flex-wrap:wrap;overflow:hidden;border-radius:var(--s-radius, 0.25rem);border-bottom-width:8px;border-top-width:8px;--tw-border-opacity:1;border-color:rgb(249 250 251 / var(--tw-border-opacity, 1));--tw-bg-opacity:1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));padding:0.5rem;transition-property:box-shadow;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:500ms}@media (min-width: 768px){.s-orders-table-tbody-tr{display:table-row;flex-direction:row;flex-wrap:nowrap;padding:0px}}.s-orders-table-tbody-tr-shadow:hover{box-shadow:5px 10px 30px #2b2d340d}.s-orders-table-tbody-tr-td{width:100%;white-space:nowrap;font-size:0.875rem;line-height:1.25rem}.s-orders-table-tbody-tr-td:first-child{font-weight:700}@media (min-width: 768px){.s-orders-table-tbody-tr-td{height:5rem;width:auto}.s-orders-table-tbody-tr-td:last-child{text-align:end}.s-orders-table-tbody-tr-td:first-child:where([dir="ltr"],[dir="ltr"] *){border-top-left-radius:0.375rem;border-bottom-left-radius:0.375rem}.s-orders-table-tbody-tr-td:first-child:where([dir="rtl"],[dir="rtl"] *){border-top-right-radius:0.375rem;border-bottom-right-radius:0.375rem}}.s-orders-table-tbody-tr-td:first-child{font-weight:700}.s-orders-table-tbody-tr-td-content{position:relative;display:flex;align-items:center;justify-content:space-between;padding-left:0.5rem;padding-right:0.5rem;padding-top:0.25rem;padding-bottom:0.25rem}@media (min-width: 768px){.s-orders-table-tbody-tr-td-content{padding-left:1.5rem;padding-right:1.5rem;padding-top:1.5rem;padding-bottom:1.5rem}}.s-orders-table-tbody-tr a{position:absolute;top:0px;bottom:0px;display:block;width:100%}.s-orders-table-tbody-tr a:where([dir="ltr"],[dir="ltr"] *){left:0px}.s-orders-table-tbody-tr a:where([dir="rtl"],[dir="rtl"] *){right:0px}/*!twlt*/.s-button-btn{position:relative;display:inline-flex;flex:1 1 0%;user-select:none;flex-direction:row-reverse;align-items:center;justify-content:center;white-space:nowrap;border-radius:var(--s-radius, 0.25rem);border-style:solid;padding-left:1.5rem;padding-right:1.5rem;padding-bottom:0.625rem;padding-top:0.5rem;font-size:0.875rem;line-height:1.25rem;font-weight:700;transition-property:color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:300ms}.s-button-btn:hover{opacity:0.8}.s-button-primary{border-width:1px;border-color:var(--color-primary);background-color:var(--color-primary);color:var(--color-primary-reverse)}.s-button-primary:hover{background-color:var(--color-primary-dark)}.s-button-text{pointer-events:none;align-items:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition-property:opacity;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:300ms}.s-button-loader{margin-left:0.5rem;margin-right:0.5rem;display:flex;align-items:center;justify-content:center;transition-property:color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms}.s-button-loader::before{display:inline-block;height:1rem;content:var(--tw-content);width:1rem}@keyframes spin{to{content:var(--tw-content);transform:rotate(360deg)}}.s-button-loader::before{animation:spin 1s linear infinite;border-radius:9999px;border-width:2px;border-style:solid;border-top-color:var(--color-primary);border-left-color:var(--color-primary);border-bottom-color:rgb(243 244 246 / var(--tw-border-opacity, 1));--tw-border-opacity:1;border-right-color:rgb(243 244 246 / var(--tw-border-opacity, 1));--tw-content:\'\';content:var(--tw-content)}.s-button-loader-center .s-button-loader{position:absolute;top:50%;left:50%;margin:0px !important;--tw-translate-y:-50%;--tw-translate-x:-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))}.s-comments-item-like-btn .s-button-text{display:flex;flex-direction:row-reverse;gap:0.5rem}.s-infinite-scroll-wrapper{margin-top:1rem;text-align:center}.s-infinite-scroll-last{margin:0px;text-align:center}.s-infinite-scroll-error{margin:0px;text-align:center}';export{a as salla_orders}
@@ -1,4 +0,0 @@
1
- /*!
2
- * Crafted with ❤ by Salla
3
- */
4
- import{r as t,c as r,h as i,H as e,a as s}from"./p-HRJpfiBN.js";import{M as o}from"./p-DmgxDvXL.js";const a=class{constructor(i){t(this,i),this.verified=r(this,"verified"),this.translationLoaded=!1,this.display="modal",this.type="mobile",this.autoReload=!0,this.supportWebAuth=!0,this.resendAfter=30,this.isProfileVerify=!1,salla.lang.onLoaded((()=>{this.translationLoaded=!0,this.title=salla.lang.get("pages.profile.verify_title")+salla.lang.get("common.elements."+this.type),this.modal?.setTitle(this.title)})),"inline"!=this.display?(salla.event.on("profile::verification",(t=>{let r=Array.isArray(t)?t[0]:t;"delete_account"===r?.request_type||document.getElementById("salla-user-settings-delete-modal")?.hasAttribute("visible")||(this.isProfileVerify=!0,this.open(r),this.title=salla.lang.get("pages.profile.verify_title")+salla.lang.get("common.elements."+r.type),this.modal?.setTitle(this.title))})),salla.event.on("modalClosed",(()=>{this.resendAfter=0,this.timer.innerHTML="30 : 00"}))):this.modal={open:()=>"",close:()=>"",setTitle:()=>""}}splitNumber(t){this.resetError();let r=t.data||t.target.value;r&&1!==r.length&&this.modifyNext(t.target,r)}modifyNext(t,r){t.value=r[0],r=r.substring(1),t.nextElementSibling&&r.length?this.modifyNext(t.nextElementSibling,r):t.nextElementSibling||0!==r.length?t.nextElementSibling&&0===r.length&&t.nextElementSibling.focus():t.focus()}checkAllInputs(){let t=!0;for(let r=0;r<this.otpInputs.length;r++)""===this.otpInputs[r].value&&(t=!1);return t}handleKeyUp(t){if(this.resetError(),["Alt","Shift","Control","AltGraph","Ctrl"].includes(t.key))return;let r=t.keyCode||t.charCode;t.target.value?(t.target.nextElementSibling?.focus(),t.target.nextElementSibling?.select()):[8,46].includes(r)&&(t.target.previousElementSibling?.focus(),t.target.previousElementSibling?.select()),t.target.value.length>1&&this.splitNumber(t)}handlePaste(t){this.resetError();let r=(salla.helpers.number(t.clipboardData.getData("text"))||"").replace(/[^0-9]/g,"");r=r.substring(0,this.otpInputs.length),this.otpInputs.forEach((t=>t.value="")),this.modifyNext(this.otpInputs[0],r)}handleInput(t){this.resetError(),salla.helpers.inputDigitsOnly(t.target),this.checkAllInputs()&&setTimeout((()=>{this.toggleOTPSubmit()}),100)}resetError(){this.hasError=!1,this.errorMessage=""}handleFocus(t){t.target!==this.firstOtpInput&&(""==this.firstOtpInput?.value&&this.firstOtpInput.focus(),""==t.target.previousElementSibling.value&&t.target.previousElementSibling.focus())}async getCode(){return this.code.value}async open(t){this.data=t,this.data.type=this.data.type||this.type,this.type=this.data.type,this.resendTimer(),this.otpInputs=this.body.querySelectorAll(".s-verify-input"),this.firstOtpInput=this.body.querySelector("#otp-1"),this.reset(),this.resetError(),"modal"==this.display&&this.modal?.setTitle(this.title),this.modal.open(),this.firstOtpInput?.addEventListener("input",(t=>this.splitNumber(t))),setTimeout((()=>this.otpInputs[0].focus()),100)}toggleOTPSubmit(){let t=[];if(this.otpInputs.forEach((r=>r.value&&t.push(r.value))),this.code.value=t.join(""),4===t.length)return this.btn.disable(),void this.btn.click();this.btn.enable()}reset(){this.otpInputs.forEach((t=>t.value="")),this.code.value="",this.otpInputs[0].focus()}resendTimer(){this.resendMessage.style.display="block",this.resend.style.display="none",this.resendAfter=30;let t=setInterval((()=>{this.resendAfter<=0?(clearInterval(t),this.resend.style.display="block",this.resendMessage.style.display="none"):(this.timer.innerHTML=`${this.resendAfter>=10?this.resendAfter:"0"+this.resendAfter} : 00`,this.resendAfter--)}),1e3)}resendCode(){return this.btn.stop().then((()=>this.btn.disable())).then((()=>{this.otpInputs.forEach((t=>t.value="")),this.otpInputs[0].focus()})).then((()=>salla.api.auth.resend(this.data))).finally((()=>this.resendTimer()))}submit(){if(this.code.value.length<4)return this.otpInputs[this.code.value.length].focus(),void salla.log("Trying to submit without 4 digits!");let t={code:this.code.value,...this.data};return this.btn.load().then((()=>this.btn.disable())).then((()=>this.isProfileVerify?salla.profile.verify(t):salla.auth.verify(t,this.supportWebAuth))).then((t=>this.verified.emit(t))).then((()=>this.btn.stop()&&this.btn.disable())).then((()=>this.modal.close())).then((()=>this.autoReload&&window.location.reload())).catch((t=>{this.hasError=!0,this.errorMessage=t.response?.data?.error?.message||salla.lang.get("common.errors.error_occurred"),t.response?salla.logger.error(t):console.log("Unexpected error",t),this.btn.stop()&&this.btn.enable()&&this.reset()}))}render(){return"inline"==this.display?i(e,null,this.myBody()):i("salla-modal",{width:"xs",class:"s-verify",ref:t=>this.modal=t,"modal-title":this.title},i("span",{slot:"icon",class:"s-verify-header-icon",innerHTML:"mobile"==this.type?'\x3c!-- Generated by IcoMoon.io --\x3e\n<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 32 32">\n<title>android-phone</title>\n<path d="M22.667 0h-13.333c-2.941 0-5.333 2.392-5.333 5.333v21.333c0 2.941 2.392 5.333 5.333 5.333h13.333c2.941 0 5.333-2.392 5.333-5.333v-21.333c0-2.941-2.392-5.333-5.333-5.333zM25.333 26.667c0 1.471-1.196 2.667-2.667 2.667h-13.333c-1.471 0-2.667-1.196-2.667-2.667v-2.667h18.667zM25.333 21.333h-18.667v-16c0-1.471 1.196-2.667 2.667-2.667h13.333c1.471 0 2.667 1.196 2.667 2.667zM13.333 28h5.333c0.736 0 1.333-0.597 1.333-1.333s-0.597-1.333-1.333-1.333h-5.333c-0.736 0-1.333 0.597-1.333 1.333s0.597 1.333 1.333 1.333z"></path>\n</svg>\n':o}),this.myBody())}myBody(){return i("div",{class:"s-verify-body",ref:t=>this.body=t},i("div",{class:"s-verify-message",innerHTML:salla.lang.get("pages.profile.verify_message")}),i("slot",{name:"mobile"}),i("slot",{name:"email"}),i("input",{type:"hidden",name:"code",maxlength:"4",required:!0,ref:t=>this.code=t}),i("div",{class:{"s-verify-codes":!0,"has-error":this.hasError},dir:"ltr"},[1,2,3,4].map((t=>i("input",{type:"number",autocomplete:"one-time-code",pattern:"[0-9]*",inputmode:"numeric",maxlength:"1",value:"",id:`otp-${t}`,class:{"s-verify-input":!0,"s-has-error":this.hasError},onInput:t=>this.handleInput(t),onPaste:t=>this.handlePaste(t),onKeyUp:t=>this.handleKeyUp(t),onFocus:t=>this.handleFocus(t),required:!0})))),this.hasError&&this.errorMessage?i("span",{class:"s-verify-error-message"},this.errorMessage):"",i("div",{slot:"footer",class:"s-verify-footer"},i("salla-button",{class:"s-verify-submit","loader-position":"center",disabled:!0,onClick:()=>this.submit(),ref:t=>this.btn=t},salla.lang.get("pages.profile.verify")),i("p",{class:"s-verify-resend-message",ref:t=>this.resendMessage=t},salla.lang.get("blocks.header.resend_after"),i("b",{class:"s-verify-timer",ref:t=>this.timer=t})),i("a",{href:"#",class:"s-verify-resend",onClick:()=>this.resendCode(),ref:t=>this.resend=t},salla.lang.get("blocks.comments.submit"))),i("slot",{name:"after-footer"}))}get host(){return s(this)}};a.style='/*!twlt*/salla-verify{display:block}.s-verify-input{}.s-verify-input::-webkit-outer-spin-button,.s-verify-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.s-verify-input[type=number]{-moz-appearance:textfield}.visible{visibility:visible}.block{display:block}.inline{display:inline}.hidden{display:none}.s-has-error{--tw-border-opacity:1;border-color:rgb(248 113 113 / var(--tw-border-opacity, 1))}.s-has-error:focus{--tw-border-opacity:1;border-color:rgb(239 68 68 / var(--tw-border-opacity, 1))}.btn{display:inline-flex;flex:1 1 0%;align-items:center;justify-content:center;white-space:nowrap;border-radius:0.375rem;padding-left:1.5rem;padding-right:1.5rem;padding-bottom:0.625rem;padding-top:0.5rem;font-size:0.875rem;line-height:1.25rem;font-weight:700;transition-property:color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:300ms}.btn:hover{opacity:0.8}.has-error .s-form-label{color:#ff443a}.has-error .s-form-control,.has-error .s-tel-input-control,.has-error .s-datetime-picker-input{border-color:#ff443a;color:#ff443a}.s-has-error{--tw-border-opacity:1 !important;border-color:rgb(239 68 68 / var(--tw-border-opacity, 1)) !important;--tw-text-opacity:1 !important;color:rgb(239 68 68 / var(--tw-text-opacity, 1)) !important}.s-verify-message{text-align:center;font-size:0.875rem;line-height:1.25rem;--tw-text-opacity:1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.s-verify-label{margin-bottom:1rem;display:block;text-align:center;font-size:0.875rem;line-height:1.25rem}.s-verify-codes{margin-left:-0.25rem;margin-right:-0.25rem;margin-bottom:1.25rem;display:flex;justify-content:space-between}.s-verify-codes.has-error{margin-bottom:0px}.s-verify-input{margin-left:0.25rem;margin-right:0.25rem;height:2.5rem;width:100%;border-radius:var(--s-radius, 0.25rem);border-width:1px;--tw-border-opacity:1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));padding-left:0.5rem;padding-right:0.5rem;text-align:center;font-size:1.125rem;line-height:1.75rem;font-weight:700;transition-property:color, background-color, border-color, text-decoration-color, fill, stroke;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms}.s-verify-input:focus{border-color:var(--color-primary)}.s-verify-input:is(.dark *){--tw-border-opacity:1;border-color:rgb(75 85 99 / var(--tw-border-opacity, 1));--tw-bg-opacity:1;background-color:rgb(75 85 99 / var(--tw-bg-opacity, 1))}.s-verify-footer{text-align:center}.s-verify-submit{margin-bottom:1.25rem;width:100%}.s-verify-header-icon{display:inline-flex;height:3rem;width:3rem;align-items:center;justify-content:center;border-radius:9999px;border-width:1px;border-style:solid;--tw-border-opacity:1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1))}@media (min-width: 640px){.s-verify-header-icon{margin-left:auto;margin-right:auto;margin-bottom:1rem;height:5rem;width:5rem}}.s-verify-header-icon:where([dir="ltr"],[dir="ltr"] *){margin-right:0.5rem}@media (min-width: 640px){.s-verify-header-icon:where([dir="ltr"],[dir="ltr"] *){margin-right:0px}}.s-verify-header-icon:where([dir="rtl"],[dir="rtl"] *){margin-left:0.5rem}@media (min-width: 640px){.s-verify-header-icon:where([dir="rtl"],[dir="rtl"] *){margin-left:0px}}.s-verify-resend-message{font-size:0.875rem;line-height:1.25rem;--tw-text-opacity:1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.s-verify-error-message{margin-bottom:1.25rem;display:block;height:1.75rem;padding-top:0.75rem;text-align:center;font-size:0.75rem;line-height:1rem;--tw-border-opacity:1;border-color:rgb(248 113 113 / var(--tw-border-opacity, 1))}.s-verify-error-message:focus{--tw-border-opacity:1;border-color:rgb(239 68 68 / var(--tw-border-opacity, 1))}.s-verify-error-message{--tw-border-opacity:1 !important;border-color:rgb(239 68 68 / var(--tw-border-opacity, 1)) !important;--tw-text-opacity:1 !important;color:rgb(239 68 68 / var(--tw-text-opacity, 1)) !important}.s-verify-timer{margin-left:0.25rem;margin-right:0.25rem;--tw-text-opacity:1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.s-verify-resend{text-align:center;font-size:0.875rem;line-height:1.25rem;color:var(--color-primary)}.s-verify-back{position:absolute;left:10px;top:10px;display:flex;height:2rem;width:2rem;align-items:center;justify-content:center;border-radius:9999px;--tw-bg-opacity:1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1));font-size:1.125rem;line-height:1.75rem;--tw-text-opacity:1;color:rgb(75 85 99 / var(--tw-text-opacity, 1));transition-property:color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms}.s-verify-back:hover{--tw-bg-opacity:1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.s-verify-back:where([dir="rtl"],[dir="rtl"] *){left:unset;right:10px}.s-verify-back svg{height:18px;width:18px}[dir=\'ltr\'] .s-verify-back{transform:scale(-1)}';export{a as salla_verify}
@@ -1,4 +0,0 @@
1
- /*!
2
- * Crafted with ❤ by Salla
3
- */
4
- import{r as t,c as i,h as e,H as s,a as r}from"./p-HRJpfiBN.js";import{F as a,H as o}from"./p-Brgf4SAC.js";import"./p-CgtvEd63.js";const n=class{constructor(e){t(this,e),this.changed=i(this,"changed"),this.initialItemCount=10,this.expandedItemCount=15,this.calculatedInitialHeight=0,this.calculatedExpandedHeight=0,this.isOpen=!0,this.isShowMore=!1,this.showMoreLabel="عرض المزيد",this.showLessLabel="عرض أقل",this.page=salla.config.get("page"),this.searchQuery="",this.filteredCount=0}connectedCallback(){this.withLoadMore="price"!=this.option.key&&Array.isArray(this.option.values)&&this.option.values.length>this.initialItemCount,salla.onReady((()=>{this.page=salla.config.get("page")})),salla.lang.onLoaded((()=>{this.showMoreLabel=salla.lang.getWithDefault("common.titles.more",this.showMoreLabel),this.showLessLabel=salla.lang.getWithDefault("common.elements.show_less",this.showLessLabel)}))}componentDidLoad(){const t=this.widgetValues.querySelectorAll(".s-filters-label");if(t.length>0){const i=Math.min(this.initialItemCount,t.length);this.calculatedInitialHeight=35*this.initialItemCount,this.calculatedExpandedHeight=t.length>this.initialItemCount?35*this.expandedItemCount:35*i}this.widgetValues.scrollHeight<this.calculatedInitialHeight&&(this.withLoadMore=!1),this.withLoadMore&&this.widgetValues&&(this.widgetValues.style.maxHeight=`${this.calculatedInitialHeight}px`),this.widgetContent.style.height=`${this.widgetContent.scrollHeight}px`}async setWidgetHeight(t=250){this.widgetContent.removeAttribute("style"),setTimeout((()=>{this.widgetContent.style.height=this.widgetContent.scrollHeight+"px"}),t)}async reset(){this.option.type===a.RANGE&&this.priceRange.reset(),Array.from(this.host.querySelectorAll("input")).forEach((t=>t.checked=!1))}async showMore(){this.isShowMore=!this.isShowMore,this.widgetContent.style.height="auto",this.isShowMore||(this.widgetValues.scrollTop=0);const t=this.isShowMore?this.calculatedExpandedHeight:this.calculatedInitialHeight,i=this.searchQuery?this.filteredCount:Array.isArray(this.option.values)?this.option.values.length:0;this.widgetValues.style.maxHeight=`${t}px`,this.widgetValues.style.overflowY=this.isShowMore&&i>this.expandedItemCount?"auto":"hidden",setTimeout((()=>{this.widgetContent.style.height=`${this.widgetContent.scrollHeight}px`}),400)}async toggleWidget(){this.isOpen=!this.isOpen,o.toggleElementClassIf(this.widgetContent,"s-filters-widget-opened","s-filters-widget-closed",(()=>this.isOpen))}renderFilterOption(t){if(![a.VALUES,a.MINIMUM,a.VARIANTS].includes(t.type))return"";const i=t.values.filter((t=>{if(!this.searchQuery)return!0;const i="number"==typeof t?String(t):t?.value||t?.key||"";return String(i).toLowerCase().includes(this.searchQuery.toLowerCase())}));return this.filteredCount=i.length,0===i.length?e("div",{class:"s-filters-widget-empty-state"},salla.lang.get("common.elements.no_options")||"لا توجد نتائج"):i.map((i=>{let s="number"==typeof i?i:i.key||i.value;return e("label",{class:"s-filters-label",htmlFor:`${t.key}-option-${s}`,key:`${t.key}-option-${s}`},e("input",{id:`${t.key}-option-${s}`,name:t.key,type:t.type===a.VALUES?"checkbox":"radio",checked:this.isSelectedOption(t,s),class:t.type===a.VALUES?"s-filters-checkbox":"s-filters-radio",onChange:i=>this.changed.emit({event:i,option:t,value:s})}),this.getOptionLabel(t,i))}))}isSelectedOption(t,i){if(t.type===a.MINIMUM)return this.filtersData[t.key]==i;if(t.type===a.VARIANTS)return this.filtersData[t.type]&&this.filtersData[t.type][t.key]==i;if(t.type===a.RANGE)return this.filtersData[t.key]&&this.filtersData[t.key].min==i.min&&this.filtersData[t.key].max==i.max;if(t.type===a.VALUES){const e=this.filtersData[t.key];return Array.isArray(e)?e.some((t=>Number(t)===Number(i))):null!=e&&Number(e)===Number(i)}return!1}getOptionLabel(t,i){if("rating"==t.key)return e("salla-rating-stars",{size:"small",value:i});let s=i.value||"null";return null!=i.count&&(s+=` (${salla.helpers.number(i.count)})`),e("span",{class:"s-filters-option-name"},s)}render(){return e(s,{key:"d3d9731c163a78609bb1a2f4b01ef6c3db4fc7dc",class:"s-filters-widget-container"},e("h3",{key:"bf1c5a033860416035ad7c74f4d9082f4c8de282",class:"s-filters-widget-title",onClick:()=>this.toggleWidget()},e("span",{key:"2a94d9a6500b3137900136fd052c731f63b0acae"},this.option.label),e("span",{key:"69b28fcad8ebc564dbbe907a4eb4044a0ee9d6ad",class:"s-filters-widget-plusminus "+(this.isOpen?"s-filters-widget-plusminus-active":"")})),e("div",{key:"fa20429b6b3399275eecbcac390d8895c3b01350",class:"s-filters-widget-content",ref:t=>this.widgetContent=t},Array.isArray(this.option.values)&&this.option.values.length>5&&e("div",{key:"98c869541f0a1d61725048296af6296e603cfa2c",class:"s-filters-widget-search-wrapper",style:{padding:"8px 0",marginBottom:"8px"}},e("input",{key:"f5310cfdad6980e5d991bd03934d5c1a4a014f10",type:"text",class:"s-filters-widget-search-input",placeholder:salla.lang.get("blocks.header.search_placeholder")||"بحث...",value:this.searchQuery,onInput:t=>this.searchQuery=t.target.value})),e("div",{key:"317bb4bcfae88596f8a8737b2454f5f2ecae5b0d",class:"s-filters-widget-values",ref:t=>this.widgetValues=t},e("slot",{key:"8620064a3526e686b95a0c21e39f5b15a8ea3133"}),this.option.type!==a.RANGE?this.renderFilterOption(this.option):e("salla-price-range",{onChanged:t=>{this.changed.emit(t.detail)},ref:t=>this.priceRange=t,filtersData:this.filtersData,option:this.option})),this.withLoadMore&&(!this.searchQuery||this.filteredCount>this.initialItemCount)&&e("a",{key:"8c9c93c3579578f1da4fe676d4758c0bbb5b4e21",class:"s-filters-widget-more",onClick:()=>this.showMore()},this.isShowMore?this.showLessLabel:this.showMoreLabel)))}get host(){return r(this)}};n.style="/*!twlt*/:host{display:block}.collapse{visibility:collapse}.fixed{position:fixed}.hidden{display:none}.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)}.duration-300{transition-duration:300ms}.s-filters-widget-container{display:block;overflow:hidden;border-radius:var(--s-radius, 0.25rem);--tw-bg-opacity:1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));padding-left:1rem;padding-right:1rem;padding-top:1.25rem;padding-bottom:0.5rem}@media (min-width: 768px){.s-filters-widget-container{margin-bottom:1.25rem;padding-bottom:1.25rem;padding-top:1.25rem}}.s-filters-widget-content{transition-property:all;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:300ms}.s-filters-widget-opened{visibility:visible;opacity:1}.s-filters-widget-closed{visibility:hidden;height:0px !important;padding:0px;opacity:0}.s-filters-widget-title{display:flex;cursor:pointer;align-items:center;justify-content:space-between;font-size:1rem;line-height:1.5rem;font-weight:700}.s-filters-widget-arrow{font-size:1.25rem;line-height:1.75rem;--tw-text-opacity:1;color:rgb(156 163 175 / var(--tw-text-opacity, 1));transition-property:color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:300ms}.s-filters-widget-arrow svg{height:1.25rem;width:1.25rem}.s-filters-widget-active-arrow{--tw-rotate:90deg;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));--tw-text-opacity:1;color:rgb(31 41 55 / var(--tw-text-opacity, 1))}.s-filters-widget-values{overflow:hidden;padding-top:1rem;transition-property:all;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:300ms}.s-filters-widget-more{margin-top:0.5rem;display:block;cursor:pointer;font-size:0.875rem;line-height:1.25rem;color:var(--color-primary)}.s-filters-widget-plusminus{position:relative;height:0.75rem;width:0.75rem;--tw-rotate:90deg;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.s-filters-widget-plusminus::before{position:absolute;left:0px;top:50%;display:block;height:0.125rem;width:100%;--tw-bg-opacity:1;background-color:rgb(153 153 153 / var(--tw-bg-opacity, 1));transition-property:0.35s;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms;--tw-content:'';content:var(--tw-content)}.s-filters-widget-plusminus::after{position:absolute;left:0px;top:50%;display:block;height:0.125rem;width:100%;--tw-bg-opacity:1;background-color:rgb(153 153 153 / var(--tw-bg-opacity, 1));transition-property:0.35s;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms;--tw-content:'';content:var(--tw-content)}.s-filters-widget-plusminus-active:before{transform:translatey(-50%) rotate(-90deg);opacity:0}.s-filters-widget-plusminus-active:after{transform:translatey(-50%) rotate(0);background-color:var(--color-primary)}.s-filters-widget-plusminus:before{transform:translatey(-50%)}.s-filters-widget-plusminus:after{transform:translatey(-50%) rotate(90deg)}.s-filters-widget-search-input{width:100%;border-radius:0.375rem;border-width:1px;--tw-border-opacity:1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1));padding:0.5rem}.s-filters-widget-search-input:focus{border-color:var(--color-primary);outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);--tw-ring-color:var(--color-primary)}.s-filters-widget-empty-state{padding:0.5rem;text-align:center;font-size:1.125rem;line-height:1.75rem;--tw-text-opacity:1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}";export{n as salla_filters_widget}
@@ -1,4 +0,0 @@
1
- /*!
2
- * Crafted with ❤ by Salla
3
- */
4
- import{r as a,h as e,a as i}from"./p-HRJpfiBN.js";const l=class{constructor(e){a(this,e),this.languageNames={ar:"العربية",en:"English",sq:"shqip",hy:"հայերէն",bg:"български",zh:"汉语",hr:"hrvatski",cs:"čeština",da:"dansk",nl:"dutch",et:"eesti keel",fi:"suomen kieli",fr:"Français",de:"Deutsch",el:"Ελληνικά",hi:"हिन्दी",hu:"magyar",ind:"bahasa Indonesia",ga:"Gaeilge",it:"Italiano",ja:"日本語",ko:"한국어",lv:"latviešu",mt:"Maltese",fa:"فارسی",pl:"Polish",pt:"português",ro:"română",ru:"русский",sl:"slovenščina",es:"Español",sv:"svenska",tl:"Tagalog (Filipino)",tr:"Türkçe",uk:"украї́нська",ur:"اُردُو",ms:"Bahasa Malaysia"},this.currenciesList={SAR:{en:"Saudi Riyal",ar:"ريال سعودي",symbol:"ر.س"},USD:{en:"US Dollar",ar:"دولار أمريكي",symbol:"$"},EUR:{en:"Euro",ar:"يورو",symbol:"€"},AED:{en:"UAE Dirham",ar:"درهم اماراتي",symbol:"د.إ"},KWD:{en:"Kuwaiti Dinar",ar:"دينار كويتي",symbol:"د.ك"},BHD:{en:"Bahraini Dinar",ar:"دينار بحريني",symbol:"د.ب"},QAR:{en:"Qatari Riyal",ar:"ريال قطري",symbol:"ر.ق"},OMR:{en:"Omani Rial",ar:"ريال عماني",symbol:"ر.ع"},AUD:{en:"Australian Dollar",ar:"دولار استرالي",symbol:"$"},CAD:{en:"Canadian Dollar",ar:"دولار كندي",symbol:"$"},CNY:{en:"Renminbi",ar:"رنمينبي",symbol:"¥"},EGP:{en:"Egyptian Pound",ar:"جنيه مصري",symbol:"ج.م"},GBP:{en:"Pound Sterling",ar:"جنيه استرليني",symbol:"£"},IDR:{en:"Indonesian Rupiah",ar:"روبية إندونيسية",symbol:"Rp"},INR:{en:"Indian Rupee",ar:"روبية هندية",symbol:"₹"},JPY:{en:"Japanese Yen",ar:"ين ياباني",symbol:"¥"},MYR:{en:"Malaysian Ringgit",ar:"رينغيت ماليزي",symbol:"RM"},PKR:{en:"Pakistani Rupee",ar:"روبية باكستانية",symbol:"Rs."},SEK:{en:"Swedish Krona",ar:"كرونة سويدية",symbol:"kr"},SGD:{en:"Singapore Dollar",ar:"دولار سنغافوري",symbol:"$"},TRY:{en:"Turkish Lira",ar:"ليرة تركية",symbol:"₺"},IQD:{en:"Iraqi Dinar",ar:"دينار عراقي",symbol:"د.ع"},LBP:{en:"Lebanese Pound",ar:"ليرة لبنانية",symbol:"ل.ل"},MRO:{en:"Mauritanian Ouguiya",ar:"أوقية موريتانية",symbol:"UM"},SDG:{en:"Sudanese Pound",ar:"جنيه سوداني",symbol:"SDG"},SYP:{en:"Syrian Pound",ar:"ليرة سورية",symbol:"ل.س"},TND:{en:"Tunisian Dinar",ar:"دينار تونسي",symbol:"د.ت"},JOD:{en:"Jordanian Dinar",ar:"دينار أردني",symbol:"JOD"},DZD:{en:"Algerian Dinar",ar:"دينار جزائري",symbol:"دج"},MAD:{en:"Moroccan Dirham",ar:"درهم مغربي",symbol:"د.م."},LYD:{en:"Libyan Dinar",ar:"دينار ليبي",symbol:"LD"},YER:{en:"Yemeni Riyal",ar:"ريال يمني",symbol:"ر.ي"},ILS:{en:"New Shekel",ar:"شيكل جديد",symbol:"₪"}},this.arabicCurrencies=["SAR","AED","KWD","BHD","QAR","OMR","EGP","IQD","LBP","SYP","TND","DZD","MAD","YER"],this.languages=[],this.currencies=[],this.hasError=!1,this.showTrigger=!1,this.languageSlot=this.host.querySelector('[slot="language"]')?.innerHTML||'<label class="s-localization-modal-label" for="lang-{code}"><span>{name}</span></label>',this.currencySlot=this.host.querySelector('[slot="currency"]')?.innerHTML||'<label class="s-localization-modal-label" for="currency-{code}"><span>{name}</span><small class="s-localization-modal-currency">{symbol}</small></label>'}async componentWillLoad(){await Salla.onReady(),await Salla.lang.onLoaded(),Salla.event.on("localization::open",(()=>this.open())),Salla.event.on("currency::open",(()=>this.openUnlessNative())),Salla.event.on("language::open",(()=>this.openUnlessNative())),this.language||(this.language=Salla.config.get("user.language_code")),this.currency||(this.currency=Salla.config.get("user.currency_code")),Salla.api.withoutNotifier((()=>this.getCurrencies())).catch((()=>null))}openUnlessNative(){Salla.config.isMobileApp()||this.open()}async open(){return this.modal.open(),await Salla.api.withoutNotifier((()=>this.getLanguages())).then((()=>this.getCurrencies())).then((()=>{this.languages.length<2&&this.currencies.length<2&&this.modal.close()})).catch((a=>{console.log(a),this.hasError=!0,this.errorMessage=a.response?.data?.error?.message||a.response?.data})).finally((()=>this.modal.stopLoading()))}async close(){return this.modal.close()}getCurrency(a){const e=a||this.currency;if(this.currenciesList[e])return this.currenciesList[e];const i=this.currencies.find((a=>a.code===e));if(i){const a=this.escapeHtml(String(i.name||e));return{en:a,ar:a,symbol:this.escapeHtml(String((i.symbol||"").trim()||e))}}return{en:"Saudi Riyal",ar:"ريال سعودي",symbol:"ر.س"}}getLanguageName(){return this.languageNames[this.language]||this.language||""}getCurrencySymbol(a){return"SAR"===(a=a||this.currency)?'<i class="sicon-sar"></i>':"ar"!==this.language&&this.arabicCurrencies.includes(a)?a:this.getCurrency(a).symbol}getCurrencyName(a){return"ar"===this.language?this.getCurrency(a).ar:this.getCurrency(a).en}escapeHtml(a){return a.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#39;")}async getLanguages(){return this.languages.length>1?null:await Salla.config.languages().then((a=>this.languages=a))}async getCurrencies(){return this.currencies.length>1?null:await Salla.config.currencies().then((a=>this.currencies=Object.values(a||{})))}onChangeCurrency(a){this.currency=a.target.value}onChangeLanguage(a){this.language=a.target.value}async submit(){let a;this.btn.load().then((()=>{if(this.currency){if(this.currency!==Salla.config.get("user.currency_code","SAR"))return a=window.location.href,Salla.currency.api.change(this.currency)}else Salla.log("There is no currency!")})).then((()=>{this.language!==Salla.config.get("user.language_code","ar")&&(a=Salla.helpers.addParamToUrl("lang",this.language))})).then((()=>{Salla.cookie.set("s-lang",this.language),Salla.cookie.set("s-curr",this.currency)})).then((()=>this.btn.stop())).then((()=>this.close())).then((()=>{a&&(window.location.href=a.replace(`/${Salla.config.get("user.language_code")}/`,`/${this.language}/`))}))}render(){return[this.showTrigger?e("button",{type:"button",onClick:()=>this.open(),class:"s-localization-modal-trigger-btn"},e("span",null,this.getLanguageName()),e("span",{class:"s-localization-modal-trigger-separator"},"|")," ",e("span",{innerHTML:this.getCurrencySymbol()})):"",e("salla-modal",{key:"1400a13aa9490e0f5f96259bea6bfcf3f98ee829",isLoading:!0,class:"s-hidden",ref:a=>this.modal=a,width:"xs"},e("div",{key:"b31041e8d245ce30f41d4221418856e886200848",slot:"loading"},e("div",{key:"5531d672f7c5e8fb8a6b06fa5ae5328f4efcf3fe",class:"s-localization-modal-skeleton"},e("salla-skeleton",{key:"61b8fa69733a4e970e1f72ef5b09e773781e45ae",width:"25%",height:"15px"}),e("div",{key:"20dd0f3444f0a6e05730266bf964b74f307e9aab",class:"s-localization-modal-skeleton-content"},[...Array(4)].map((()=>e("div",{class:"s-localization-modal-skeleton-item"},e("div",{class:"s-localization-modal-skeleton-item-flex"},e("salla-skeleton",{type:"circle",height:"16px",width:"16px"}),e("salla-skeleton",{height:"10px",width:"100px"})),e("salla-skeleton",{height:"15px",width:"20px"}))))),e("salla-skeleton",{key:"5b8b4b760f741e0cd56c07ff341205e9ec7fe4d3",width:"25%",height:"15px"}),e("div",{key:"0a3f5dbfca2d6cd81effef5d873e03c9aef57d0b",class:"s-localization-modal-skeleton-content"},[...Array(4)].map((()=>e("div",{class:"s-localization-modal-skeleton-item"},e("div",{class:"s-localization-modal-skeleton-item-flex"},e("salla-skeleton",{type:"circle",height:"16px",width:"16px"}),e("salla-skeleton",{height:"10px",width:"100px"})),e("salla-skeleton",{height:"15px",width:"20px"}))))),e("salla-skeleton",{key:"b068f327b3335b3f9154ac20f7f6de95864dde9a",height:"40px",width:"100%"}))),this.hasError?e("salla-placeholder",{alignment:"center"},e("span",{slot:"description"},this.errorMessage)):e("div",{class:"s-localization-modal-inner"},this.languages.length>1?e("div",{class:"s-localization-modal-section"},e("label",{class:"s-localization-modal-title"},Salla.lang.get("common.titles.language")),e("div",{class:"s-localization-modal-section-inner"},this.languages.length<6?this.languages.map((a=>e("div",{class:"s-localization-modal-item"},e("input",{class:"s-localization-modal-input",type:"radio",checked:this.language==a.iso_code,onChange:()=>this.language=a.iso_code,name:"language",id:"lang-"+a.code.toLowerCase(),value:a.code}),e("div",{class:"s-localization-modal-label-slot",id:"language-slot",innerHTML:this.languageSlot.replace(/\{name\}/g,a.name).replace(/\{code\}/g,a.code).replace(/\{country_code\}/g,a.country_code)})))):e("select",{class:"s-localization-modal-select",name:"language",onChange:a=>this.onChangeLanguage(a)},this.languages.map((a=>e("option",{value:a.code,selected:this.language==a.code},a.name)))))):"",this.currencies.length>1?e("div",{class:"s-localization-modal-section"},e("label",{class:"s-localization-modal-title"},Salla.lang.get("common.titles.currency")),e("div",{class:"s-localization-modal-section-inner"},this.currencies.length<6?this.currencies.map((a=>e("div",{class:"s-localization-modal-item"},e("input",{class:"s-localization-modal-input",type:"radio",name:"currency",checked:this.currency==a.code,onChange:()=>this.currency=a.code,id:"currency-"+a.code,value:a.code}),e("div",{class:"s-localization-modal-label-slot",id:"currency-slot",innerHTML:this.currencySlot.replace(/\{name\}/g,this.getCurrencyName(a.code)).replace(/\{code\}/g,a.code).replace(/\{symbol\}/g,this.getCurrencySymbol(a.code)).replace(/\{country_code\}/g,a.country_code)})))):e("select",{class:"s-localization-modal-select",name:"currency",onChange:a=>this.onChangeCurrency(a)},this.currencies.map((a=>e("option",{value:a.code,selected:this.currency==a.code},a.name)))))):"",e("salla-button",{width:"wide",ref:a=>this.btn=a,onClick:()=>this.submit()},Salla.lang.get("common.elements.ok"))))]}componentDidRender(){this.host.querySelectorAll("#currency-slot").forEach((a=>a.replaceWith(a.firstChild))),this.host.querySelectorAll("#language-slot").forEach((a=>a.replaceWith(a.firstChild)))}get host(){return i(this)}};l.style='/*!twlt*/.s-hidden{display:none}.btn{display:inline-flex;flex:1 1 0%;align-items:center;justify-content:center;white-space:nowrap;border-radius:0.375rem;padding-left:1.5rem;padding-right:1.5rem;padding-bottom:0.625rem;padding-top:0.5rem;font-size:0.875rem;line-height:1.25rem;font-weight:700;transition-property:color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:300ms}.btn:hover{opacity:0.8}.s-hidden{display:none}.s-localization-modal-trigger-btn{display:inline-flex;width:100%;flex-grow:0;flex-basis:0px;align-items:center;justify-content:center;white-space:nowrap;border-radius:9999px;background-color:rgb(229 231 235 / 0.5);padding-left:0.875rem;padding-right:0.875rem;padding-top:0.5rem;padding-bottom:0.5rem;font-size:0.875rem;line-height:1.25rem;font-weight:500;transition-property:color, background-color, border-color, text-decoration-color, fill, stroke;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms}.s-localization-modal-trigger-btn:hover{background-color:rgb(229 231 235 / 0.7)}.s-localization-modal-trigger-separator{margin-left:0.375rem;margin-right:0.375rem}.s-localization-modal-title{font-size:1rem;line-height:1.5rem;font-weight:500;--tw-text-opacity:1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.s-localization-modal-section{margin-bottom:2rem}.s-localization-modal-label-slot{flex-grow:1}.s-localization-modal-inner{width:100%}.s-localization-modal-section-inner{margin-top:1rem}.s-localization-modal-section-inner>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.s-localization-modal-item{display:flex;align-items:center}.s-localization-modal-input{height:1rem;width:1rem;--tw-border-opacity:1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1));color:var(--color-primary)}.s-localization-modal-input:focus{--tw-ring-color:var(--color-primary)}.s-localization-modal-label{display:flex;flex-grow:1;cursor:pointer;align-items:center;justify-content:space-between;font-weight:500;--tw-text-opacity:1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.s-localization-modal-label:where([dir="ltr"],[dir="ltr"] *){margin-left:0.75rem}.s-localization-modal-label:where([dir="rtl"],[dir="rtl"] *){margin-right:0.75rem}.s-localization-modal-flag{border-radius:0.125rem}.s-localization-modal-currency{--tw-text-opacity:1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.s-localization-modal-select{height:2.5rem;width:100%;appearance:none;border-radius:0.375rem;border-width:1px;--tw-border-opacity:1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));background-position:right;background-repeat:no-repeat;padding-left:1rem;padding-right:1rem;font-size:0.875rem;line-height:1.25rem;--tw-text-opacity:1;color:rgb(107 114 128 / var(--tw-text-opacity, 1));transition-property:color, background-color, border-color, text-decoration-color, fill, stroke;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:300ms}.s-localization-modal-select:focus{border-color:var(--color-primary)}.s-localization-modal-select:where([dir="rtl"],[dir="rtl"] *){background-position:left}.s-localization-modal-skeleton-content{margin-top:2rem;margin-bottom:2rem;display:flex;flex-direction:column}.s-localization-modal-skeleton-content>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.s-localization-modal-skeleton-item{display:flex;align-items:center;justify-content:space-between}.s-localization-modal-skeleton-item-flex{display:flex;align-items:center}.s-localization-modal-skeleton-item-flex salla-skeleton:nth-child(1){margin-right:0.75rem}.s-localization-modal-skeleton-item-flex salla-skeleton:nth-child(1):where([dir="rtl"],[dir="rtl"] *){margin-right:0px;margin-left:0.75rem}';export{l as salla_localization_modal}