@salla.sa/twilight-components 2.14.466 → 2.14.468

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 (361) hide show
  1. package/dist/cjs/{filepond-ChLzVjJY.js → filepond-C1SAyrFq.js} +1 -1
  2. package/dist/cjs/{filepond-plugin-file-poster-CsFmGjnc.js → filepond-plugin-file-poster-DAhQ7rGa.js} +1 -1
  3. package/dist/cjs/{filepond-plugin-file-validate-size-CHsUG4Ey.js → filepond-plugin-file-validate-size-qfwxpApK.js} +1 -1
  4. package/dist/cjs/{filepond-plugin-file-validate-type-BcOZG5x6.js → filepond-plugin-file-validate-type-BbYanfPf.js} +1 -1
  5. package/dist/cjs/{filepond-plugin-image-edit-Cq0bUS7X.js → filepond-plugin-image-edit-lWdFhMNt.js} +1 -1
  6. package/dist/cjs/{filepond-plugin-image-exif-orientation-D6e7ezt-.js → filepond-plugin-image-exif-orientation-C2wUYBSb.js} +1 -1
  7. package/dist/cjs/{filepond-plugin-image-preview-B0fvWDqM.js → filepond-plugin-image-preview-B1ukjrjT.js} +1 -1
  8. package/dist/cjs/{functions-DQkYfvtq.js → functions-DCSgyun2.js} +1 -1
  9. package/dist/cjs/{index-DTSWXcbN.js → index-CXr_39D8.js} +9 -5
  10. package/dist/cjs/{index-MaPhQdOr.js → index-D3oJJZKW.js} +1 -1
  11. package/dist/cjs/loader.cjs.js +2 -2
  12. package/dist/cjs/{mail-Bgvt2hc9.js → mail-C9D8MHae.js} +2 -2
  13. package/dist/cjs/salla-accordion-body_2.cjs.entry.js +1 -1
  14. package/dist/cjs/salla-accordion_6.cjs.entry.js +1 -1
  15. package/dist/cjs/salla-add-product-button_5.cjs.entry.js +29 -84
  16. package/dist/cjs/salla-advertisement.cjs.entry.js +1 -1
  17. package/dist/cjs/salla-alert_2.cjs.entry.js +1 -1
  18. package/dist/cjs/salla-app-install-alert.cjs.entry.js +1 -1
  19. package/dist/cjs/salla-apps-icons.cjs.entry.js +1 -1
  20. package/dist/cjs/salla-badge.cjs.entry.js +1 -1
  21. package/dist/cjs/salla-booking-field_7.cjs.entry.js +11 -11
  22. package/dist/cjs/salla-bullet-delivery_2.cjs.entry.js +91 -7
  23. package/dist/cjs/salla-cart-coupons.cjs.entry.js +1 -1
  24. package/dist/cjs/salla-cart-item-offers_2.cjs.entry.js +1 -1
  25. package/dist/cjs/salla-cashback-banner.cjs.entry.js +1 -1
  26. package/dist/cjs/salla-comment-form_8.cjs.entry.js +1 -1
  27. package/dist/cjs/salla-conditional-offer.cjs.entry.js +1 -1
  28. package/dist/cjs/salla-contacts.cjs.entry.js +3 -3
  29. package/dist/cjs/salla-cookies-bar.cjs.entry.js +1 -1
  30. package/dist/cjs/salla-count-down.cjs.entry.js +1 -1
  31. package/dist/cjs/salla-custom-fields.cjs.entry.js +1 -1
  32. package/dist/cjs/salla-delivery-promise.cjs.entry.js +1 -1
  33. package/dist/cjs/salla-edit-order-button.cjs.entry.js +1 -1
  34. package/dist/cjs/salla-filters-widget.cjs.entry.js +1 -1
  35. package/dist/cjs/salla-filters.cjs.entry.js +1 -1
  36. package/dist/cjs/salla-fulfillment-methods.cjs.entry.js +1 -1
  37. package/dist/cjs/salla-gifting.cjs.entry.js +63 -28
  38. package/dist/cjs/salla-hook.cjs.entry.js +1 -1
  39. package/dist/cjs/salla-infinite-scroll.cjs.entry.js +1 -1
  40. package/dist/cjs/salla-installment.cjs.entry.js +1 -1
  41. package/dist/cjs/salla-list-tile.cjs.entry.js +1 -1
  42. package/dist/cjs/salla-localization-modal.cjs.entry.js +1 -1
  43. package/dist/cjs/salla-login-modal.cjs.entry.js +32 -2
  44. package/dist/cjs/salla-loyalty-banner.cjs.entry.js +2 -2
  45. package/dist/cjs/salla-loyalty-hero_2.cjs.entry.js +4 -4
  46. package/dist/cjs/salla-loyalty-panel.cjs.entry.js +3 -3
  47. package/dist/cjs/salla-loyalty-points-banner.cjs.entry.js +1 -1
  48. package/dist/cjs/salla-loyalty-points-history.cjs.entry.js +1 -1
  49. package/dist/cjs/salla-loyalty-prize-item.cjs.entry.js +1 -1
  50. package/dist/cjs/salla-loyalty-program.cjs.entry.js +3 -3
  51. package/dist/cjs/salla-loyalty-reward.cjs.entry.js +2 -2
  52. package/dist/cjs/salla-loyalty.cjs.entry.js +1 -1
  53. package/dist/cjs/salla-maintenance-alert.cjs.entry.js +1 -1
  54. package/dist/cjs/salla-map.cjs.entry.js +1 -1
  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.cjs.entry.js +1 -1
  62. package/dist/cjs/salla-notifications.cjs.entry.js +1 -1
  63. package/dist/cjs/salla-offer-modal.cjs.entry.js +1 -1
  64. package/dist/cjs/salla-offer.cjs.entry.js +1 -1
  65. package/dist/cjs/salla-order-branch.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-summary.cjs.entry.js +1 -1
  73. package/dist/cjs/salla-order-totals-card.cjs.entry.js +1 -1
  74. package/dist/cjs/salla-orders.cjs.entry.js +1 -1
  75. package/dist/cjs/salla-payments.cjs.entry.js +1 -1
  76. package/dist/cjs/salla-placeholder.cjs.entry.js +1 -1
  77. package/dist/cjs/salla-price-range.cjs.entry.js +1 -1
  78. package/dist/cjs/salla-product-card-embed.cjs.entry.js +1 -1
  79. package/dist/cjs/salla-product-card_2.cjs.entry.js +1 -1
  80. package/dist/cjs/salla-product-size-guide.cjs.entry.js +1 -1
  81. package/dist/cjs/salla-products-list.cjs.entry.js +259 -64
  82. package/dist/cjs/salla-progress-bar.cjs.entry.js +1 -1
  83. package/dist/cjs/salla-quick-order.cjs.entry.js +3 -3
  84. package/dist/cjs/salla-rating-modal.cjs.entry.js +3 -3
  85. package/dist/cjs/salla-reward-action_4.cjs.entry.js +3 -3
  86. package/dist/cjs/salla-scopes.cjs.entry.js +1 -1
  87. package/dist/cjs/salla-search.cjs.entry.js +1 -1
  88. package/dist/cjs/salla-skeleton.cjs.entry.js +1 -1
  89. package/dist/cjs/salla-slider.cjs.entry.js +1 -1
  90. package/dist/cjs/salla-social-share.cjs.entry.js +252 -32
  91. package/dist/cjs/salla-social.cjs.entry.js +1 -1
  92. package/dist/cjs/salla-tab-content_3.cjs.entry.js +4 -4
  93. package/dist/cjs/salla-tiered-offer.cjs.entry.js +1 -1
  94. package/dist/cjs/salla-tooltip.cjs.entry.js +2 -2
  95. package/dist/cjs/salla-trust-badges.cjs.entry.js +1 -1
  96. package/dist/cjs/salla-user-menu.cjs.entry.js +1 -1
  97. package/dist/cjs/salla-user-profile.cjs.entry.js +1 -1
  98. package/dist/cjs/salla-user-settings.cjs.entry.js +2 -2
  99. package/dist/cjs/salla-verify.cjs.entry.js +3 -3
  100. package/dist/cjs/salla-wallet.cjs.entry.js +1 -1
  101. package/dist/cjs/salla-wishlist-actions.cjs.entry.js +329 -0
  102. package/dist/cjs/{tracked-promise-ePwPYqjc.js → tracked-promise-BsYRgTGD.js} +1 -1
  103. package/dist/cjs/twilight.cjs.js +2 -2
  104. package/dist/cjs/{vanilla-picker-l24zONcP.js → vanilla-picker-DkdzTjSC.js} +1 -1
  105. package/dist/collection/collection-manifest.json +2 -1
  106. package/dist/collection/components/salla-bullet-delivery/salla-bullet-delivery.js +90 -6
  107. package/dist/collection/components/salla-gifting/salla-gifting.js +69 -29
  108. package/dist/collection/components/salla-login-modal/salla-login-modal.js +31 -1
  109. package/dist/collection/components/salla-product-options/salla-product-options.css +0 -3
  110. package/dist/collection/components/salla-product-options/salla-product-options.js +28 -84
  111. package/dist/collection/components/salla-products-list/salla-products-list.css +76 -0
  112. package/dist/collection/components/salla-products-list/salla-products-list.js +387 -65
  113. package/dist/collection/components/salla-social-share/salla-social-share.css +161 -0
  114. package/dist/collection/components/salla-social-share/salla-social-share.js +316 -50
  115. package/dist/collection/components/salla-tabs/salla-tab-content.js +1 -1
  116. package/dist/collection/components/salla-tabs/salla-tab-header.js +1 -1
  117. package/dist/collection/components/salla-tabs/salla-tabs.js +1 -1
  118. package/dist/collection/components/salla-tel-input/salla-tel-input.js +1 -1
  119. package/dist/collection/components/salla-tooltip/salla-tooltip.js +1 -1
  120. package/dist/collection/components/salla-user-settings/salla-user-settings.js +1 -1
  121. package/dist/collection/components/salla-wishlist-actions/salla-wishlist-actions.css +65 -0
  122. package/dist/collection/components/salla-wishlist-actions/salla-wishlist-actions.js +432 -0
  123. package/dist/components/index.js +5 -5
  124. package/dist/components/salla-bullet-delivery.js +90 -6
  125. package/dist/components/salla-gifting.js +63 -27
  126. package/dist/components/salla-login-modal2.js +31 -1
  127. package/dist/components/salla-product-options2.js +28 -84
  128. package/dist/components/salla-products-list2.js +266 -64
  129. package/dist/components/salla-social-share.js +1 -189
  130. package/dist/components/salla-social-share2.js +420 -0
  131. package/dist/components/salla-tab-content2.js +1 -1
  132. package/dist/components/salla-tab-header2.js +1 -1
  133. package/dist/components/salla-tabs2.js +1 -1
  134. package/dist/components/salla-tel-input2.js +1 -1
  135. package/dist/components/salla-tooltip2.js +1 -1
  136. package/dist/components/salla-user-settings.js +1 -1
  137. package/dist/components/salla-wishlist-actions.d.ts +11 -0
  138. package/dist/components/salla-wishlist-actions.js +375 -0
  139. package/dist/esm/{filepond-C8Bwo-02.js → filepond-C4pZr9nR.js} +1 -1
  140. package/dist/esm/{filepond-plugin-file-poster-Bx3Pf2Jt.js → filepond-plugin-file-poster-CXpAGxT4.js} +1 -1
  141. package/dist/esm/{filepond-plugin-file-validate-size-B855u7Nl.js → filepond-plugin-file-validate-size-Dk4M6ge1.js} +1 -1
  142. package/dist/esm/{filepond-plugin-file-validate-type-Bi5ftj6I.js → filepond-plugin-file-validate-type-DD7qvRsg.js} +1 -1
  143. package/dist/esm/{filepond-plugin-image-edit-BDsvflVi.js → filepond-plugin-image-edit-DMllAEkg.js} +1 -1
  144. package/dist/esm/{filepond-plugin-image-exif-orientation-CIBvl9lW.js → filepond-plugin-image-exif-orientation-BRCbcu_E.js} +1 -1
  145. package/dist/esm/{filepond-plugin-image-preview-iKOdvH4g.js → filepond-plugin-image-preview-DgeylrwN.js} +1 -1
  146. package/dist/esm/{functions-Bc7BItqP.js → functions-DrS7by6t.js} +1 -1
  147. package/dist/esm/{index-TDIoPT-F.js → index-9SnsJoYO.js} +1 -1
  148. package/dist/esm/{index-B4SEH_Fg.js → index-D2yBy7Jh.js} +9 -5
  149. package/dist/esm/loader.js +3 -3
  150. package/dist/esm/{mail-DLNIOD9t.js → mail-DzAIgzdz.js} +2 -2
  151. package/dist/esm/salla-accordion-body_2.entry.js +1 -1
  152. package/dist/esm/salla-accordion_6.entry.js +1 -1
  153. package/dist/esm/salla-add-product-button_5.entry.js +29 -84
  154. package/dist/esm/salla-advertisement.entry.js +1 -1
  155. package/dist/esm/salla-alert_2.entry.js +1 -1
  156. package/dist/esm/salla-app-install-alert.entry.js +1 -1
  157. package/dist/esm/salla-apps-icons.entry.js +1 -1
  158. package/dist/esm/salla-badge.entry.js +1 -1
  159. package/dist/esm/salla-booking-field_7.entry.js +11 -11
  160. package/dist/esm/salla-bullet-delivery_2.entry.js +91 -7
  161. package/dist/esm/salla-cart-coupons.entry.js +1 -1
  162. package/dist/esm/salla-cart-item-offers_2.entry.js +1 -1
  163. package/dist/esm/salla-cashback-banner.entry.js +1 -1
  164. package/dist/esm/salla-comment-form_8.entry.js +1 -1
  165. package/dist/esm/salla-conditional-offer.entry.js +1 -1
  166. package/dist/esm/salla-contacts.entry.js +3 -3
  167. package/dist/esm/salla-cookies-bar.entry.js +1 -1
  168. package/dist/esm/salla-count-down.entry.js +1 -1
  169. package/dist/esm/salla-custom-fields.entry.js +1 -1
  170. package/dist/esm/salla-delivery-promise.entry.js +1 -1
  171. package/dist/esm/salla-edit-order-button.entry.js +1 -1
  172. package/dist/esm/salla-filters-widget.entry.js +1 -1
  173. package/dist/esm/salla-filters.entry.js +1 -1
  174. package/dist/esm/salla-fulfillment-methods.entry.js +1 -1
  175. package/dist/esm/salla-gifting.entry.js +63 -28
  176. package/dist/esm/salla-hook.entry.js +1 -1
  177. package/dist/esm/salla-infinite-scroll.entry.js +1 -1
  178. package/dist/esm/salla-installment.entry.js +1 -1
  179. package/dist/esm/salla-list-tile.entry.js +1 -1
  180. package/dist/esm/salla-localization-modal.entry.js +1 -1
  181. package/dist/esm/salla-login-modal.entry.js +32 -2
  182. package/dist/esm/salla-loyalty-banner.entry.js +2 -2
  183. package/dist/esm/salla-loyalty-hero_2.entry.js +4 -4
  184. package/dist/esm/salla-loyalty-panel.entry.js +3 -3
  185. package/dist/esm/salla-loyalty-points-banner.entry.js +1 -1
  186. package/dist/esm/salla-loyalty-points-history.entry.js +1 -1
  187. package/dist/esm/salla-loyalty-prize-item.entry.js +1 -1
  188. package/dist/esm/salla-loyalty-program.entry.js +3 -3
  189. package/dist/esm/salla-loyalty-reward.entry.js +2 -2
  190. package/dist/esm/salla-loyalty.entry.js +1 -1
  191. package/dist/esm/salla-maintenance-alert.entry.js +1 -1
  192. package/dist/esm/salla-map.entry.js +1 -1
  193. package/dist/esm/salla-menu.entry.js +1 -1
  194. package/dist/esm/salla-metadata.entry.js +1 -1
  195. package/dist/esm/salla-multiple-bundle-product-cart_2.entry.js +1 -1
  196. package/dist/esm/salla-multiple-bundle-product-options-modal_2.entry.js +1 -1
  197. package/dist/esm/salla-multiple-bundle-product.entry.js +1 -1
  198. package/dist/esm/salla-next-order-coupon.entry.js +1 -1
  199. package/dist/esm/salla-notification-item.entry.js +1 -1
  200. package/dist/esm/salla-notifications.entry.js +1 -1
  201. package/dist/esm/salla-offer-modal.entry.js +1 -1
  202. package/dist/esm/salla-offer.entry.js +1 -1
  203. package/dist/esm/salla-order-branch.entry.js +1 -1
  204. package/dist/esm/salla-order-details-multiple-bundle-product.entry.js +1 -1
  205. package/dist/esm/salla-order-details-options.entry.js +1 -1
  206. package/dist/esm/salla-order-details.entry.js +1 -1
  207. package/dist/esm/salla-order-edit-item.entry.js +1 -1
  208. package/dist/esm/salla-order-edit-product-card.entry.js +1 -1
  209. package/dist/esm/salla-order-edit.entry.js +1 -1
  210. package/dist/esm/salla-order-summary.entry.js +1 -1
  211. package/dist/esm/salla-order-totals-card.entry.js +1 -1
  212. package/dist/esm/salla-orders.entry.js +1 -1
  213. package/dist/esm/salla-payments.entry.js +1 -1
  214. package/dist/esm/salla-placeholder.entry.js +1 -1
  215. package/dist/esm/salla-price-range.entry.js +1 -1
  216. package/dist/esm/salla-product-card-embed.entry.js +1 -1
  217. package/dist/esm/salla-product-card_2.entry.js +1 -1
  218. package/dist/esm/salla-product-size-guide.entry.js +1 -1
  219. package/dist/esm/salla-products-list.entry.js +259 -64
  220. package/dist/esm/salla-progress-bar.entry.js +1 -1
  221. package/dist/esm/salla-quick-order.entry.js +3 -3
  222. package/dist/esm/salla-rating-modal.entry.js +3 -3
  223. package/dist/esm/salla-reward-action_4.entry.js +3 -3
  224. package/dist/esm/salla-scopes.entry.js +1 -1
  225. package/dist/esm/salla-search.entry.js +1 -1
  226. package/dist/esm/salla-skeleton.entry.js +1 -1
  227. package/dist/esm/salla-slider.entry.js +1 -1
  228. package/dist/esm/salla-social-share.entry.js +252 -32
  229. package/dist/esm/salla-social.entry.js +1 -1
  230. package/dist/esm/salla-tab-content_3.entry.js +4 -4
  231. package/dist/esm/salla-tiered-offer.entry.js +1 -1
  232. package/dist/esm/salla-tooltip.entry.js +2 -2
  233. package/dist/esm/salla-trust-badges.entry.js +1 -1
  234. package/dist/esm/salla-user-menu.entry.js +1 -1
  235. package/dist/esm/salla-user-profile.entry.js +1 -1
  236. package/dist/esm/salla-user-settings.entry.js +2 -2
  237. package/dist/esm/salla-verify.entry.js +3 -3
  238. package/dist/esm/salla-wallet.entry.js +1 -1
  239. package/dist/esm/salla-wishlist-actions.entry.js +327 -0
  240. package/dist/esm/{tracked-promise-DJMfgq3q.js → tracked-promise-CTcAqNfZ.js} +1 -1
  241. package/dist/esm/twilight.js +3 -3
  242. package/dist/esm/{vanilla-picker-BZ3Kpnm6.js → vanilla-picker-DfeK45Yv.js} +1 -1
  243. package/dist/twilight/{p-7a144cce.entry.js → p-07af3286.entry.js} +1 -1
  244. package/dist/twilight/{p-08fa3250.entry.js → p-08337b2b.entry.js} +1 -1
  245. package/dist/twilight/{p-c4a2f0c4.entry.js → p-08771dff.entry.js} +1 -1
  246. package/dist/twilight/{p-63b6ff19.entry.js → p-0e1bab4f.entry.js} +1 -1
  247. package/dist/twilight/{p-a94c8805.entry.js → p-0eadca17.entry.js} +1 -1
  248. package/dist/twilight/{p-92ecbfb3.entry.js → p-12ccc1ab.entry.js} +1 -1
  249. package/dist/twilight/{p-d1be0cf0.entry.js → p-1574176e.entry.js} +1 -1
  250. package/dist/twilight/{p-b1c9125f.entry.js → p-17015f9c.entry.js} +1 -1
  251. package/dist/twilight/{p-f4326883.entry.js → p-1920b702.entry.js} +1 -1
  252. package/dist/twilight/{p-65cc4abf.entry.js → p-1a1cebfa.entry.js} +1 -1
  253. package/dist/twilight/{p-b22966df.entry.js → p-1a844fda.entry.js} +1 -1
  254. package/dist/twilight/{p-1beccaa5.entry.js → p-1b7ebf47.entry.js} +1 -1
  255. package/dist/twilight/{p-999abe04.entry.js → p-223d7ceb.entry.js} +1 -1
  256. package/dist/twilight/{p-b99ecd2c.entry.js → p-255f5d2a.entry.js} +1 -1
  257. package/dist/twilight/{p-077c5ae5.entry.js → p-266f57de.entry.js} +1 -1
  258. package/dist/twilight/p-28bdf8ec.entry.js +4 -0
  259. package/dist/twilight/{p-089507be.entry.js → p-2c7086ec.entry.js} +1 -1
  260. package/dist/twilight/{p-fe6a634f.entry.js → p-2c7f524a.entry.js} +1 -1
  261. package/dist/twilight/{p-ac91aa4f.entry.js → p-30ea9a82.entry.js} +1 -1
  262. package/dist/twilight/{p-0beaf6f8.entry.js → p-313d38cd.entry.js} +1 -1
  263. package/dist/twilight/{p-70658c1a.entry.js → p-315ce27b.entry.js} +1 -1
  264. package/dist/twilight/p-378d45e2.entry.js +4 -0
  265. package/dist/twilight/{p-96489529.entry.js → p-3c2fe8cd.entry.js} +1 -1
  266. package/dist/twilight/{p-3b416cdd.entry.js → p-3d1e7982.entry.js} +1 -1
  267. package/dist/twilight/{p-7e0bfa67.entry.js → p-3d7c0ac6.entry.js} +1 -1
  268. package/dist/twilight/{p-3e9fb046.entry.js → p-3d8d289e.entry.js} +1 -1
  269. package/dist/twilight/{p-c5b5162c.entry.js → p-4144c908.entry.js} +1 -1
  270. package/dist/twilight/{p-f4a5521e.entry.js → p-453a7bb2.entry.js} +1 -1
  271. package/dist/twilight/{p-7a238d37.entry.js → p-4c457ba5.entry.js} +1 -1
  272. package/dist/twilight/{p-d33fe4fe.entry.js → p-4d3bcacd.entry.js} +1 -1
  273. package/dist/twilight/{p-53c1a65f.entry.js → p-4dedb514.entry.js} +1 -1
  274. package/dist/twilight/{p-eebe55bd.entry.js → p-50dfec0a.entry.js} +1 -1
  275. package/dist/twilight/{p-72627a5b.entry.js → p-53f83426.entry.js} +1 -1
  276. package/dist/twilight/{p-20bed966.entry.js → p-54e9ac89.entry.js} +1 -1
  277. package/dist/twilight/{p-20b24e22.entry.js → p-571b8e00.entry.js} +1 -1
  278. package/dist/twilight/{p-7e0f8832.entry.js → p-5a5057a8.entry.js} +1 -1
  279. package/dist/twilight/{p-5817d5db.entry.js → p-5a9b94f8.entry.js} +1 -1
  280. package/dist/twilight/{p-ac2979bf.entry.js → p-5c1c520a.entry.js} +1 -1
  281. package/dist/twilight/{p-649cca57.entry.js → p-5d06fe77.entry.js} +1 -1
  282. package/dist/twilight/{p-eb7e08dd.entry.js → p-5e433652.entry.js} +1 -1
  283. package/dist/twilight/{p-c605f897.entry.js → p-6046666d.entry.js} +1 -1
  284. package/dist/twilight/{p-ace778dd.entry.js → p-67e23040.entry.js} +1 -1
  285. package/dist/twilight/{p-0c721c37.entry.js → p-6c777951.entry.js} +1 -1
  286. package/dist/twilight/{p-aaf77847.entry.js → p-749dbf27.entry.js} +1 -1
  287. package/dist/twilight/p-7bd464f3.entry.js +4 -0
  288. package/dist/twilight/{p-88a26183.entry.js → p-7ffc1711.entry.js} +1 -1
  289. package/dist/twilight/{p-173638ad.entry.js → p-83b6c374.entry.js} +1 -1
  290. package/dist/twilight/{p-83f3fe92.entry.js → p-8b5d26d3.entry.js} +1 -1
  291. package/dist/twilight/{p-46efd843.entry.js → p-9a0514dd.entry.js} +1 -1
  292. package/dist/twilight/{p-a8a43d8f.entry.js → p-9ba953ab.entry.js} +1 -1
  293. package/dist/twilight/{p-BhwNzoAX.js → p-BGpAIcg-.js} +1 -1
  294. package/dist/twilight/{p-DqcHIrMk.js → p-BHkz1ssL.js} +1 -1
  295. package/dist/twilight/{p-DCiLQw-U.js → p-BZhp8a87.js} +1 -1
  296. package/dist/twilight/{p-1GhsZ-y0.js → p-Bo1nXenO.js} +1 -1
  297. package/dist/twilight/{p-B8tpOftS.js → p-BojnM4VS.js} +1 -1
  298. package/dist/twilight/{p-CzKuXgcx.js → p-CBU9I-zy.js} +1 -1
  299. package/dist/twilight/{p-BPrbqbi4.js → p-CGd7EQZr.js} +1 -1
  300. package/dist/twilight/p-D01LipFK.js +9 -0
  301. package/dist/twilight/{p-B4SEH_Fg.js → p-D2yBy7Jh.js} +2 -2
  302. package/dist/twilight/{p-Bol9M57m.js → p-DSgSJMud.js} +2 -2
  303. package/dist/twilight/{p-DLNIOD9t.js → p-DzAIgzdz.js} +1 -1
  304. package/dist/twilight/{p-26ff2da1.entry.js → p-a0d88c4d.entry.js} +1 -1
  305. package/dist/twilight/{p-7f8b4a78.entry.js → p-a2b53a52.entry.js} +1 -1
  306. package/dist/twilight/{p-c360bc76.entry.js → p-a3e1fafc.entry.js} +1 -1
  307. package/dist/twilight/{p-204b9c34.entry.js → p-a463d567.entry.js} +1 -1
  308. package/dist/twilight/{p-39e531f4.entry.js → p-a6a9e398.entry.js} +1 -1
  309. package/dist/twilight/{p-5a8e7bb9.entry.js → p-a79f60e6.entry.js} +1 -1
  310. package/dist/twilight/{p-36528e88.entry.js → p-aadfd70e.entry.js} +1 -1
  311. package/dist/twilight/{p-7dc4a6ce.entry.js → p-ad0a27e2.entry.js} +1 -1
  312. package/dist/twilight/{p-2a1c12f9.entry.js → p-ae8bd2e7.entry.js} +1 -1
  313. package/dist/twilight/{p-50b92803.entry.js → p-af121bbf.entry.js} +1 -1
  314. package/dist/twilight/p-b0f28806.entry.js +4 -0
  315. package/dist/twilight/{p-7c46d055.entry.js → p-b3f6b725.entry.js} +1 -1
  316. package/dist/twilight/{p-e0e8b5ee.entry.js → p-b7e720e8.entry.js} +1 -1
  317. package/dist/twilight/{p-19748525.entry.js → p-b80016c8.entry.js} +1 -1
  318. package/dist/twilight/{p-19afb593.entry.js → p-c0f40eea.entry.js} +1 -1
  319. package/dist/twilight/p-c4bc10c1.entry.js +4 -0
  320. package/dist/twilight/{p-6bf44c4f.entry.js → p-c637b6bb.entry.js} +1 -1
  321. package/dist/twilight/{p-afb4ffe9.entry.js → p-c6e18746.entry.js} +1 -1
  322. package/dist/twilight/{p-a0433089.entry.js → p-cb855cb3.entry.js} +1 -1
  323. package/dist/twilight/{p-88c110ae.entry.js → p-cbc44b3e.entry.js} +1 -1
  324. package/dist/twilight/{p-d98c3e96.entry.js → p-cbf547f0.entry.js} +1 -1
  325. package/dist/twilight/{p-78cc1984.entry.js → p-cebad615.entry.js} +1 -1
  326. package/dist/twilight/{p-0abda719.entry.js → p-cfd910a8.entry.js} +1 -1
  327. package/dist/twilight/{p-a366dff0.entry.js → p-d0a8b9be.entry.js} +1 -1
  328. package/dist/twilight/{p-921b23fc.entry.js → p-d0cae7da.entry.js} +1 -1
  329. package/dist/twilight/{p-47df8f81.entry.js → p-d861eea6.entry.js} +1 -1
  330. package/dist/twilight/p-daa9c0b3.entry.js +4 -0
  331. package/dist/twilight/{p-7310af57.entry.js → p-db43fa93.entry.js} +1 -1
  332. package/dist/twilight/{p-83beb2f7.entry.js → p-e06a7e19.entry.js} +1 -1
  333. package/dist/twilight/{p-6fb05a50.entry.js → p-e34f68e0.entry.js} +1 -1
  334. package/dist/twilight/{p-5647ab30.entry.js → p-e4cac2a9.entry.js} +1 -1
  335. package/dist/twilight/{p-9f817867.entry.js → p-e5de1833.entry.js} +1 -1
  336. package/dist/twilight/{p-61bbcb2e.entry.js → p-e80ee5b0.entry.js} +2 -2
  337. package/dist/twilight/{p-42523f08.entry.js → p-e8ffc069.entry.js} +1 -1
  338. package/dist/twilight/{p-1027f1df.entry.js → p-ee8c7a5a.entry.js} +1 -1
  339. package/dist/twilight/{p-6667d7e9.entry.js → p-f0dedf42.entry.js} +1 -1
  340. package/dist/twilight/{p-fc2c74e3.entry.js → p-f3a01895.entry.js} +1 -1
  341. package/dist/twilight/{p-e0bafef7.entry.js → p-fb56a444.entry.js} +1 -1
  342. package/dist/twilight/{p-02dac67d.entry.js → p-fe1bced4.entry.js} +1 -1
  343. package/dist/twilight/{p-Cip0ZIcP.js → p-paiaALkJ.js} +1 -1
  344. package/dist/twilight/{p-BNurXH-d.js → p-xz8gqXL9.js} +1 -1
  345. package/dist/twilight/twilight.esm.js +1 -1
  346. package/dist/types/components/salla-bullet-delivery/salla-bullet-delivery.d.ts +16 -0
  347. package/dist/types/components/salla-gifting/gift-schema.d.ts +4 -0
  348. package/dist/types/components/salla-gifting/salla-gifting.d.ts +4 -1
  349. package/dist/types/components/salla-login-modal/salla-login-modal.d.ts +2 -0
  350. package/dist/types/components/salla-product-options/salla-product-options.d.ts +0 -11
  351. package/dist/types/components/salla-products-list/salla-products-list.d.ts +60 -6
  352. package/dist/types/components/salla-social-share/salla-social-share.d.ts +39 -2
  353. package/dist/types/components/salla-wishlist-actions/salla-wishlist-actions.d.ts +93 -0
  354. package/dist/types/components.d.ts +172 -18
  355. package/package.json +5 -5
  356. package/dist/twilight/p-6020ddec.entry.js +0 -4
  357. package/dist/twilight/p-645254eb.entry.js +0 -4
  358. package/dist/twilight/p-99a57ad1.entry.js +0 -4
  359. package/dist/twilight/p-BnjD0Cne.js +0 -9
  360. package/dist/twilight/p-b3456579.entry.js +0 -4
  361. package/dist/twilight/p-d19c0be3.entry.js +0 -4
@@ -0,0 +1,93 @@
1
+ /**
2
+ * Actions header (panel) rendered on top of the wishlist `salla-products-list`.
3
+ *
4
+ * It exposes a "Share" dropdown with two options:
5
+ * - Share all items: shares the whole wishlist right away via `salla-social-share`.
6
+ * - Share specific items: enables multi-selection on the sibling
7
+ * `salla-products-list` and shows a panel to share the selected products.
8
+ *
9
+ * Selection is enabled on the products list at runtime, so no theme markup
10
+ * changes are required and it works for every theme exposing the
11
+ * `customer:wishlist.items.start` hook.
12
+ */
13
+ export declare class SallaWishlistActions {
14
+ host: HTMLElement;
15
+ menuOpen: boolean;
16
+ hasProducts: boolean;
17
+ /** Whether the "share specific items" selection mode is active. */
18
+ specificMode: boolean;
19
+ selectedIds: Array<string | number>;
20
+ loadedProductCount: number;
21
+ isSharing: boolean;
22
+ shareUrl: string;
23
+ shareLabel: string;
24
+ shareAllLabel: string;
25
+ shareSpecificLabel: string;
26
+ selectAllLabel: string;
27
+ cancelLabel: string;
28
+ shareModalTitle: string;
29
+ private productsList?;
30
+ private socialShare?;
31
+ private productsObserver?;
32
+ private selectAllCheckbox?;
33
+ private pageTitle?;
34
+ private pageTitleObserver?;
35
+ private pageTitleRetryTimeout?;
36
+ /** Ignore transient empty DOM while the products list reloads after toggling selection. */
37
+ private isListSyncPaused;
38
+ private static readonly pageTitleClass;
39
+ /**
40
+ * Bilingual defaults for the translation keys introduced by this feature.
41
+ * Registered via `Salla.lang.addBulk` only when missing, so store/central
42
+ * translations always take precedence.
43
+ */
44
+ private readonly translationDefaults;
45
+ private readonly onSelectionChanged;
46
+ private readonly onDocumentClick;
47
+ private readonly onProductsFetched;
48
+ componentWillLoad(): Promise<void>;
49
+ componentDidLoad(): void;
50
+ disconnectedCallback(): void;
51
+ /**
52
+ * The wishlist page title (`h1`) lives in theme markup outside this component.
53
+ * Alignment is handled by `h1.s-wishlist-actions-page-title` in the component stylesheet.
54
+ */
55
+ private initPageTitleAlignment;
56
+ private findPageTitle;
57
+ private syncPageTitleAlignment;
58
+ private resetPageTitleAlignment;
59
+ /**
60
+ * Register bilingual (ar/en) defaults for our keys, without overriding any
61
+ * translation that already exists in the store/central translations.
62
+ */
63
+ private registerTranslationDefaults;
64
+ private loadTranslations;
65
+ private get selectedCount();
66
+ private get isAllSelected();
67
+ private get isPartiallySelected();
68
+ private syncLoadedProductCount;
69
+ private syncSelectAllCheckboxState;
70
+ componentDidRender(): void;
71
+ private pauseListSync;
72
+ private syncHasProducts;
73
+ private toggleMenu;
74
+ private toggleSelectAll;
75
+ /**
76
+ * Enter "share specific items" mode: enable selection on the products list.
77
+ */
78
+ shareSpecific(): Promise<void>;
79
+ /**
80
+ * Exit "share specific items" mode: disable selection and clear it.
81
+ */
82
+ cancelSpecific(): Promise<void>;
83
+ /**
84
+ * Share all wishlist products.
85
+ */
86
+ shareAll(): Promise<void>;
87
+ /**
88
+ * Share the currently selected wishlist products.
89
+ */
90
+ shareSelected(): Promise<void>;
91
+ private processShare;
92
+ render(): any;
93
+ }
@@ -1318,7 +1318,7 @@ export namespace Components {
1318
1318
  /**
1319
1319
  * Go to the step 2
1320
1320
  */
1321
- "goToStep2": () => Promise<void>;
1321
+ "goToStep2": (withValidation?: boolean) => Promise<void>;
1322
1322
  /**
1323
1323
  * Show / Open the gifting modal window
1324
1324
  */
@@ -2236,6 +2236,10 @@ export namespace Components {
2236
2236
  * @default false
2237
2237
  */
2238
2238
  "autoload": boolean;
2239
+ /**
2240
+ * Clear the current selection.
2241
+ */
2242
+ "clearSelection": () => Promise<void>;
2239
2243
  /**
2240
2244
  * Compact cards for drawer/list layouts
2241
2245
  */
@@ -2244,6 +2248,14 @@ export namespace Components {
2244
2248
  * should listen to filters events `salla-filters::changed` and re-render
2245
2249
  */
2246
2250
  "filtersResults": boolean;
2251
+ /**
2252
+ * Get all products currently rendered in the list (works whether selection is enabled or not). Useful to gather ids for "share all".
2253
+ */
2254
+ "getLoadedProducts": () => Promise<Product[]>;
2255
+ /**
2256
+ * Get the currently selected products.
2257
+ */
2258
+ "getSelected": () => Promise<{ ids: Array<string | number>; products: Product[]; }>;
2247
2259
  /**
2248
2260
  * Horizontal cards
2249
2261
  */
@@ -2278,6 +2290,15 @@ export namespace Components {
2278
2290
  * Row cards
2279
2291
  */
2280
2292
  "rowCards": boolean;
2293
+ /**
2294
+ * Select all currently rendered products.
2295
+ */
2296
+ "selectAll": () => Promise<void>;
2297
+ /**
2298
+ * Enables multi-selection of products. When enabled, a checkbox overlay is rendered on top of each product card and the selected products are exposed via the `selectionChanged` event, the `salla-products-list::selection.changed` global event and the `getSelected()` method. This is source-agnostic (works for any `source`) and defaults to `false`. On the wishlist page the `salla-wishlist-actions` panel turns it on at runtime (when the customer chooses "share specific items"), so no theme markup changes are required.
2299
+ * @default false
2300
+ */
2301
+ "selectable": boolean;
2281
2302
  /**
2282
2303
  * Set parsed filters data from URI
2283
2304
  * @param filters
@@ -2286,12 +2307,31 @@ export namespace Components {
2286
2307
  /**
2287
2308
  * Sorting the list of products
2288
2309
  */
2289
- "sortBy"?: string | 'ourSuggest' | 'bestSell' | 'topRated' | 'priceFromTopToLow' | 'priceFromLowToTop';
2310
+ "sortBy"?: | string
2311
+ | 'ourSuggest'
2312
+ | 'bestSell'
2313
+ | 'topRated'
2314
+ | 'priceFromTopToLow'
2315
+ | 'priceFromLowToTop';
2290
2316
  /**
2291
2317
  * The source of the products list
2292
2318
  * @type {string}
2293
2319
  */
2294
- "source": 'categories' | 'latest' | 'related' | 'brands' | 'json' | 'search' | 'tags' | 'selected' | 'offers' | 'landing-page' | 'sales' | 'wishlist' | 'top-rated' | 'reorder' | 'recently';
2320
+ "source": | 'categories'
2321
+ | 'latest'
2322
+ | 'related'
2323
+ | 'brands'
2324
+ | 'json'
2325
+ | 'search'
2326
+ | 'tags'
2327
+ | 'selected'
2328
+ | 'offers'
2329
+ | 'landing-page'
2330
+ | 'sales'
2331
+ | 'wishlist'
2332
+ | 'top-rated'
2333
+ | 'reorder'
2334
+ | 'recently';
2295
2335
  /**
2296
2336
  * The source value, cloud be different values as following: - array of ids when `source` in ['categories', 'brands', 'tags', 'selected'] - keyword when `source` = 'search' - products payload when `source` = 'json' - product_id when `source` = 'related'
2297
2337
  * @type {string}
@@ -3012,7 +3052,21 @@ export namespace Components {
3012
3052
  }
3013
3053
  interface SallaSocialShare {
3014
3054
  /**
3015
- * Activate or open the share menu.
3055
+ * Close the share menu.
3056
+ */
3057
+ "close": () => Promise<void>;
3058
+ /**
3059
+ * Optional title for the modal variant header. Defaults to a localized "Share".
3060
+ * @default ''
3061
+ */
3062
+ "modalTitle": string;
3063
+ /**
3064
+ * Share UI variant: `default` dropdown menu or centered `modal` dialog.
3065
+ * @default 'default'
3066
+ */
3067
+ "mode": 'modal' | 'default';
3068
+ /**
3069
+ * Open the share menu.
3016
3070
  */
3017
3071
  "open": () => Promise<void>;
3018
3072
  /**
@@ -3020,23 +3074,15 @@ export namespace Components {
3020
3074
  * @default 'facebook,twitter,whatsapp,email,copy_link'
3021
3075
  */
3022
3076
  "platforms": string;
3023
- /**
3024
- * Asynchronously initializes the "AddToAny" (a2a) social sharing tool on the current page. If the global object `window.a2a` is available, it initializes the tool with the 'page' mode. The 'page' mode is typically used to enable sharing of the current webpage.
3025
- * @remarks This function is designed to be used in scenarios where dynamic loading or refreshing of social sharing tools is needed. Ensure that the AddToAny script is properly included in the HTML document before calling this function.
3026
- * @example // Call the refresh function to initialize AddToAny on the page. await refresh();
3027
- * @throws {Error} Throws an error if the AddToAny script is not properly included or if there are issues during initialization.
3028
- * @async
3029
- * @returns A promise that resolves once the initialization is complete.
3030
- */
3031
3077
  "refresh": () => Promise<void>;
3032
3078
  /**
3033
3079
  * page url that will be shared custom | current page url
3034
- * @default ""
3080
+ * @default ''
3035
3081
  */
3036
3082
  "url": string;
3037
3083
  /**
3038
3084
  * page url name that will be shared custom | current page url
3039
- * @default ""
3085
+ * @default ''
3040
3086
  */
3041
3087
  "urlName": string;
3042
3088
  }
@@ -3232,6 +3278,34 @@ export namespace Components {
3232
3278
  }
3233
3279
  interface SallaWallet {
3234
3280
  }
3281
+ /**
3282
+ * Actions header (panel) rendered on top of the wishlist `salla-products-list`.
3283
+ * It exposes a "Share" dropdown with two options:
3284
+ * - Share all items: shares the whole wishlist right away via `salla-social-share`.
3285
+ * - Share specific items: enables multi-selection on the sibling
3286
+ * `salla-products-list` and shows a panel to share the selected products.
3287
+ * Selection is enabled on the products list at runtime, so no theme markup
3288
+ * changes are required and it works for every theme exposing the
3289
+ * `customer:wishlist.items.start` hook.
3290
+ */
3291
+ interface SallaWishlistActions {
3292
+ /**
3293
+ * Exit "share specific items" mode: disable selection and clear it.
3294
+ */
3295
+ "cancelSpecific": () => Promise<void>;
3296
+ /**
3297
+ * Share all wishlist products.
3298
+ */
3299
+ "shareAll": () => Promise<void>;
3300
+ /**
3301
+ * Share the currently selected wishlist products.
3302
+ */
3303
+ "shareSelected": () => Promise<void>;
3304
+ /**
3305
+ * Enter "share specific items" mode: enable selection on the products list.
3306
+ */
3307
+ "shareSpecific": () => Promise<void>;
3308
+ }
3235
3309
  }
3236
3310
  export interface SallaAccordionHeadCustomEvent<T> extends CustomEvent<T> {
3237
3311
  detail: T;
@@ -4297,6 +4371,7 @@ declare global {
4297
4371
  };
4298
4372
  interface HTMLSallaProductsListElementEventMap {
4299
4373
  "productsFetched": any;
4374
+ "selectionChanged": any;
4300
4375
  }
4301
4376
  interface HTMLSallaProductsListElement extends Components.SallaProductsList, HTMLStencilElement {
4302
4377
  addEventListener<K extends keyof HTMLSallaProductsListElementEventMap>(type: K, listener: (this: HTMLSallaProductsListElement, ev: SallaProductsListCustomEvent<HTMLSallaProductsListElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
@@ -4662,6 +4737,22 @@ declare global {
4662
4737
  prototype: HTMLSallaWalletElement;
4663
4738
  new (): HTMLSallaWalletElement;
4664
4739
  };
4740
+ /**
4741
+ * Actions header (panel) rendered on top of the wishlist `salla-products-list`.
4742
+ * It exposes a "Share" dropdown with two options:
4743
+ * - Share all items: shares the whole wishlist right away via `salla-social-share`.
4744
+ * - Share specific items: enables multi-selection on the sibling
4745
+ * `salla-products-list` and shows a panel to share the selected products.
4746
+ * Selection is enabled on the products list at runtime, so no theme markup
4747
+ * changes are required and it works for every theme exposing the
4748
+ * `customer:wishlist.items.start` hook.
4749
+ */
4750
+ interface HTMLSallaWishlistActionsElement extends Components.SallaWishlistActions, HTMLStencilElement {
4751
+ }
4752
+ var HTMLSallaWishlistActionsElement: {
4753
+ prototype: HTMLSallaWishlistActionsElement;
4754
+ new (): HTMLSallaWishlistActionsElement;
4755
+ };
4665
4756
  interface HTMLElementTagNameMap {
4666
4757
  "salla-accordion": HTMLSallaAccordionElement;
4667
4758
  "salla-accordion-body": HTMLSallaAccordionBodyElement;
@@ -4786,6 +4877,7 @@ declare global {
4786
4877
  "salla-user-settings": HTMLSallaUserSettingsElement;
4787
4878
  "salla-verify": HTMLSallaVerifyElement;
4788
4879
  "salla-wallet": HTMLSallaWalletElement;
4880
+ "salla-wishlist-actions": HTMLSallaWishlistActionsElement;
4789
4881
  }
4790
4882
  }
4791
4883
  declare namespace LocalJSX {
@@ -6892,6 +6984,10 @@ declare namespace LocalJSX {
6892
6984
  * Custom event fired when the the products fetched.
6893
6985
  */
6894
6986
  "onProductsFetched"?: (event: SallaProductsListCustomEvent<any>) => void;
6987
+ /**
6988
+ * Custom event fired when the selection changes (only when `selectable` is enabled). Detail: `{ ids: Array<string|number>, products: Product[], count: number }`.
6989
+ */
6990
+ "onSelectionChanged"?: (event: SallaProductsListCustomEvent<any>) => void;
6895
6991
  /**
6896
6992
  * Custom Card Component for the Salla Products List. This component allows you to customize the appearance of individual product cards within a Salla Products List.
6897
6993
  * @example <salla-products-list product-card-component="my-custom-card-style1" ... <salla-products-list product-card-component="my-custom-card-style2" ...
@@ -6902,15 +6998,39 @@ declare namespace LocalJSX {
6902
6998
  * Row cards
6903
6999
  */
6904
7000
  "rowCards"?: boolean;
7001
+ /**
7002
+ * Enables multi-selection of products. When enabled, a checkbox overlay is rendered on top of each product card and the selected products are exposed via the `selectionChanged` event, the `salla-products-list::selection.changed` global event and the `getSelected()` method. This is source-agnostic (works for any `source`) and defaults to `false`. On the wishlist page the `salla-wishlist-actions` panel turns it on at runtime (when the customer chooses "share specific items"), so no theme markup changes are required.
7003
+ * @default false
7004
+ */
7005
+ "selectable"?: boolean;
6905
7006
  /**
6906
7007
  * Sorting the list of products
6907
7008
  */
6908
- "sortBy"?: string | 'ourSuggest' | 'bestSell' | 'topRated' | 'priceFromTopToLow' | 'priceFromLowToTop';
7009
+ "sortBy"?: | string
7010
+ | 'ourSuggest'
7011
+ | 'bestSell'
7012
+ | 'topRated'
7013
+ | 'priceFromTopToLow'
7014
+ | 'priceFromLowToTop';
6909
7015
  /**
6910
7016
  * The source of the products list
6911
7017
  * @type {string}
6912
7018
  */
6913
- "source"?: 'categories' | 'latest' | 'related' | 'brands' | 'json' | 'search' | 'tags' | 'selected' | 'offers' | 'landing-page' | 'sales' | 'wishlist' | 'top-rated' | 'reorder' | 'recently';
7019
+ "source"?: | 'categories'
7020
+ | 'latest'
7021
+ | 'related'
7022
+ | 'brands'
7023
+ | 'json'
7024
+ | 'search'
7025
+ | 'tags'
7026
+ | 'selected'
7027
+ | 'offers'
7028
+ | 'landing-page'
7029
+ | 'sales'
7030
+ | 'wishlist'
7031
+ | 'top-rated'
7032
+ | 'reorder'
7033
+ | 'recently';
6914
7034
  /**
6915
7035
  * The source value, cloud be different values as following: - array of ids when `source` in ['categories', 'brands', 'tags', 'selected'] - keyword when `source` = 'search' - products payload when `source` = 'json' - product_id when `source` = 'related'
6916
7036
  * @type {string}
@@ -7568,6 +7688,16 @@ declare namespace LocalJSX {
7568
7688
  interface SallaSocial {
7569
7689
  }
7570
7690
  interface SallaSocialShare {
7691
+ /**
7692
+ * Optional title for the modal variant header. Defaults to a localized "Share".
7693
+ * @default ''
7694
+ */
7695
+ "modalTitle"?: string;
7696
+ /**
7697
+ * Share UI variant: `default` dropdown menu or centered `modal` dialog.
7698
+ * @default 'default'
7699
+ */
7700
+ "mode"?: 'modal' | 'default';
7571
7701
  /**
7572
7702
  * selected platforms to share | all platforms
7573
7703
  * @default 'facebook,twitter,whatsapp,email,copy_link'
@@ -7575,12 +7705,12 @@ declare namespace LocalJSX {
7575
7705
  "platforms"?: string;
7576
7706
  /**
7577
7707
  * page url that will be shared custom | current page url
7578
- * @default ""
7708
+ * @default ''
7579
7709
  */
7580
7710
  "url"?: string;
7581
7711
  /**
7582
7712
  * page url name that will be shared custom | current page url
7583
- * @default ""
7713
+ * @default ''
7584
7714
  */
7585
7715
  "urlName"?: string;
7586
7716
  }
@@ -7760,6 +7890,18 @@ declare namespace LocalJSX {
7760
7890
  }
7761
7891
  interface SallaWallet {
7762
7892
  }
7893
+ /**
7894
+ * Actions header (panel) rendered on top of the wishlist `salla-products-list`.
7895
+ * It exposes a "Share" dropdown with two options:
7896
+ * - Share all items: shares the whole wishlist right away via `salla-social-share`.
7897
+ * - Share specific items: enables multi-selection on the sibling
7898
+ * `salla-products-list` and shows a panel to share the selected products.
7899
+ * Selection is enabled on the products list at runtime, so no theme markup
7900
+ * changes are required and it works for every theme exposing the
7901
+ * `customer:wishlist.items.start` hook.
7902
+ */
7903
+ interface SallaWishlistActions {
7904
+ }
7763
7905
  interface IntrinsicElements {
7764
7906
  "salla-accordion": SallaAccordion;
7765
7907
  "salla-accordion-body": SallaAccordionBody;
@@ -7884,6 +8026,7 @@ declare namespace LocalJSX {
7884
8026
  "salla-user-settings": SallaUserSettings;
7885
8027
  "salla-verify": SallaVerify;
7886
8028
  "salla-wallet": SallaWallet;
8029
+ "salla-wishlist-actions": SallaWishlistActions;
7887
8030
  }
7888
8031
  }
7889
8032
  export { LocalJSX as JSX };
@@ -8130,6 +8273,17 @@ declare module "@stencil/core" {
8130
8273
  "salla-user-settings": LocalJSX.SallaUserSettings & JSXBase.HTMLAttributes<HTMLSallaUserSettingsElement>;
8131
8274
  "salla-verify": LocalJSX.SallaVerify & JSXBase.HTMLAttributes<HTMLSallaVerifyElement>;
8132
8275
  "salla-wallet": LocalJSX.SallaWallet & JSXBase.HTMLAttributes<HTMLSallaWalletElement>;
8276
+ /**
8277
+ * Actions header (panel) rendered on top of the wishlist `salla-products-list`.
8278
+ * It exposes a "Share" dropdown with two options:
8279
+ * - Share all items: shares the whole wishlist right away via `salla-social-share`.
8280
+ * - Share specific items: enables multi-selection on the sibling
8281
+ * `salla-products-list` and shows a panel to share the selected products.
8282
+ * Selection is enabled on the products list at runtime, so no theme markup
8283
+ * changes are required and it works for every theme exposing the
8284
+ * `customer:wishlist.items.start` hook.
8285
+ */
8286
+ "salla-wishlist-actions": LocalJSX.SallaWishlistActions & JSXBase.HTMLAttributes<HTMLSallaWishlistActionsElement>;
8133
8287
  }
8134
8288
  }
8135
8289
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@salla.sa/twilight-components",
3
- "version": "2.14.466",
3
+ "version": "2.14.468",
4
4
  "license": "GPL-3.0",
5
5
  "author": "Salla Team <support@salla.dev> (https://salla.dev)",
6
6
  "bugs": {
@@ -81,9 +81,9 @@
81
81
  },
82
82
  "dependencies": {
83
83
  "@googlemaps/markerclusterer": "2.6.2",
84
- "@salla.sa/applepay": "2.14.466",
85
- "@salla.sa/twilight": "2.14.466",
86
- "@salla.sa/twilight-tailwind-theme": "2.14.466",
84
+ "@salla.sa/applepay": "2.14.468",
85
+ "@salla.sa/twilight": "2.14.468",
86
+ "@salla.sa/twilight-tailwind-theme": "2.14.468",
87
87
  "@salla.sa/ui-address-autocomplete-widget": "1.2.1",
88
88
  "@salla.sa/ui-google-map-render": "1.2.1",
89
89
  "@types/node": "^20.4.8",
@@ -104,5 +104,5 @@
104
104
  "vanilla-lazyload": "^17.8.5",
105
105
  "vanilla-picker": "^2.12.2"
106
106
  },
107
- "gitHead": "122ab1589b1e7b4f9d43ef9a13ab8247703e2a32"
107
+ "gitHead": "5dc45f2bf6fbc8ec8933059df6cd1d501e90f9af"
108
108
  }
@@ -1,4 +0,0 @@
1
- /*!
2
- * Crafted with ❤ by Salla
3
- */
4
- import{r as t,c as s,h as i,H as e,a}from"./p-B4SEH_Fg.js";import{a as r}from"./p-CgtvEd63.js";import{S as o}from"./p-DiKTtDW5.js";import{H as h}from"./p-BcbKK1Xp.js";const l=class{constructor(i){t(this,i),this.productsFetched=s(this,"productsFetched"),this.autoload=!1,this.productCardComponent="custom-salla-product-card",this.page=1,this.placeholderText=salla.lang.get("pages.categories.no_products"),this.endOfText=salla.lang.get("common.elements.end_of_content"),this.failedLoadMore=salla.lang.get("common.elements.failed_to_load_more"),this.currentPage=salla.config.get("page"),this.filtersSnapshot=[],this.lastViewedProductKey="lastViewedProductId",this.filtersKey="filters",this.infiniteScrollStateKey="infiniteScrollState",this.prevCategoryIdKey="prevCategoryId",this.isProcessing=!1,this.scrollTimeout=null,this.boundScrollToLastViewedProduct=()=>this.scrollToLastViewedProduct(),this.boundHandleScroll=()=>this.handleScroll(),this.specialPagesWithoutIds={"product.index.latest":"latest","product.index.offers":"offers","product.index.search":"search","product.index.sales":"sales"},this.includes=h.parseJson(this.includes||this.host.getAttribute("includes")),Array.isArray(this.includes)||(this.includes=null),h.setIncludes(this.includes),salla.lang.onLoaded((()=>{this.placeholderText=salla.lang.get("pages.categories.no_products"),this.endOfText=salla.lang.get("common.elements.end_of_content"),this.failedLoadMore=salla.lang.get("common.elements.failed_to_load_more"),this.currentPage=salla.config.get("page")}))}connectedCallback(){"scrollRestoration"in history&&(history.scrollRestoration="manual"),window.addEventListener("DOMContentLoaded",this.boundScrollToLastViewedProduct),salla.event.on("salla-filters::changed",(t=>this.setFilters(t)))}disconnectedCallback(){window.removeEventListener("DOMContentLoaded",this.boundScrollToLastViewedProduct),window.removeEventListener("scroll",this.boundHandleScroll)}async setFilters(t){if(t&&JSON.stringify(t)!==JSON.stringify(this.parsedFilters))return window.scrollTo({top:0,behavior:"smooth"}),this.parsedFilters=JSON.parse(JSON.stringify(t)),"product.index"==this.currentPage?.slug&&this.parsedFilters&&this.parsedFilters.category_id&&(this.currentCategoryIdFilter=[this.parsedFilters.category_id]),this.reload()}async reload(){!this.autoload&&this.loadMoreWrapper&&(this.loadMoreWrapper.style.display="none"),this.hasInfiniteScroll&&salla.infiniteScroll.destroy(this.infiniteScroll),await this.buildNextPageUrl(),this.wrapper.innerHTML="",this.hasInfiniteScroll?this.init():this.getInitialData(),this.showPlaceholder&&(this.showPlaceholder=!1,this.placeholderLoader=document.createElement("div"),this.placeholderLoader.classList.add("s-products-list-loading-wrapper"),this.placeholderLoader.style.display="inherit",this.placeholderLoader.innerHTML='<span class="s-button-loader s-button-loader-center s-infinite-scroll-btn-loader"></span>',this.host.insertAdjacentElement("afterend",this.placeholderLoader))}isFilterable(){return salla.config.get("store.settings.product.filters")&&this.filtersResults}getCachedFilters(){return Array.isArray(this.filtersSnapshot)&&this.filtersSnapshot.length?JSON.parse(JSON.stringify(this.filtersSnapshot)):null}emitFilters(t){if(!this.isFilterable())return;if(t.filters)return this.filtersResults=!0,this.filtersSnapshot=JSON.parse(JSON.stringify(t.filters)),void salla.event.emit("filters::fetched",{filters:t.filters});const s=t.cursor?.current>1?this.getCachedFilters():null;if(s)return this.filtersResults=!0,void salla.event.emit("filters::fetched",{filters:s});this.filtersSnapshot=[],salla.event.emit("filters::hidden")}isSourceWithoutValue(){return["offers","latest","sales","wishlist","top-rated","reorder"].includes(this.getSource())}animateItems(){r({targets:"salla-products-list salla-product-card",opacity:[0,1],duration:1200,translateY:[20,0],delay:function(t,s){return 100*s}})}async initBaseNextPageUrl(t){this.nextPage=salla.url.api(`products?source=${t}`),this.includes?.length&&(this.nextPage+=`&includes[]=${this.includes.join("&includes[]=")}`),this.limit&&(this.nextPage+=`&per_page=${this.limit>32?32:this.limit}`),this.sortBy&&(this.nextPage+=`&sort=${this.sortBy}`),"preview"===salla.config.get("theme.mode")&&(this.nextPage+="&use_username_url=1"),this.nextPage+="&filterable=1";for(const[t,s]of Object.entries(this.parsedFilters||{}))if(["string","number"].includes(typeof s))this.nextPage+=`&filters[${encodeURIComponent(t)}]=${encodeURIComponent(s)}`;else if(Array.isArray(s))s.forEach((s=>this.nextPage+=`&filters[${encodeURIComponent(t)}][]=${encodeURIComponent(s)}`));else if("object"==typeof s)for(const[i,e]of Object.entries(s))this.nextPage+=`&filters[${encodeURIComponent(t)}][${encodeURIComponent(i)}]=${encodeURIComponent(e)}`;this.nextPage=await this.applyBeforeBuildListUrl(this.nextPage)}async buildNextPageUrl(){let t=this.getSource();if("json"===t)return;const s=sessionStorage.getItem(this.infiniteScrollStateKey);if(s){const{nextPage:t}=JSON.parse(s);if(!t)return}if(await this.initBaseNextPageUrl(t),!this.isSourceWithoutValue())if(["search","related","landing-page"].includes(t))this.nextPage+=`&source_value=${this.getSourceValue()}`;else try{this.nextPage+=`&source_value[]=${this.getSourceValue().join("&source_value[]=")}`}catch(s){salla.logger.warn(`source-value prop should be array of ids ex source-value="[1,2,3]" for the source [${t}]`),this.sourceValueIsValid=!1}}loading(t=!0,s=!1){if(t){let t=s&&!this.autoload?this.btnLoader:this.loader;t&&(t.style.display="inherit")}else this.autoload||this.btnLoader&&(this.btnLoader.style.display="none"),this.loader&&(this.loader.style.display="none")}getItemHTML(t){"landing-page"===this.getSource()&&(t.url="");const s=document.createElement(this.hasCustomComponent?this.productCardComponent:"salla-product-card");return s.product=t,this.compactCards&&(s.compact=!0,s.toggleAttribute("compact",!0)),this.applyLandingPageStyles(s),this.applyHorizontalCardStyles(s),s.addEventListener("click",(s=>{s.target.closest("a")&&(h.saveProductSource(this.getSource()),this.hasInfiniteScroll&&(this.takeStateSnapshot(),sessionStorage.setItem(this.lastViewedProductKey,t.id)))})),s}applyLandingPageStyles(t){"landing-page"!==this.getSource()||this.hasCustomComponent||(t.toggleAttribute("hide-add-btn",!0),t.classList.add("s-product-card-fit-height"))}applyHorizontalCardStyles(t){this.horizontalCards&&(t.toggleAttribute("horizontal",!0),this.hasCustomComponent||t.toggleAttribute("shadow-on-hover",!0))}waitForResizing(t){let s=null;return new Promise((i=>{const e=new ResizeObserver((()=>{clearTimeout(s),s=setTimeout((()=>{e.disconnect(),i(null)}),160)}));e.observe(t)}))}waitForLayoutStable(t){let s=null;return new Promise((i=>{const e=new MutationObserver((()=>{clearTimeout(s),s=setTimeout((()=>{e.disconnect(),i(null)}),160)}));e.observe(t,{childList:!0,subtree:!0,attributes:!0})}))}async waitForStableLayout(t){return await Promise.allSettled([this.waitForResizing(t),this.waitForLayoutStable(t)])}scrollToLastViewedProduct(){const t=sessionStorage.getItem(this.lastViewedProductKey);t&&!salla.url.is_page("product.single")&&this.isElementLoaded(`[id*="${t}"]`).then((()=>{const s=this.wrapper?.querySelector(`[id*="${t}"]`);if(!s)return;const i=()=>{const t=()=>{s.scrollIntoView({block:"start",behavior:"instant"});const t=matchMedia("(max-width: 1024px)").matches?"header .inner":"ul.main-menu",i=window?.header_is_sticky?document.querySelector(t)?.getBoundingClientRect()?.height??56:0,e=parseInt(getComputedStyle(this.wrapper).rowGap)??16;scrollBy({top:-1*(i+e),behavior:"instant"})};requestAnimationFrame(t),s.querySelectorAll("img.lazy").forEach((s=>{const i=s,e=()=>{requestAnimationFrame(t),i.onload=i.onerror=null};i.onload=e,i.onerror=e})),this.removeScrollRestorationSession()};this.waitForStableLayout(this.host).then((()=>requestAnimationFrame(i)))}))}isElementLoaded(t){return new Promise((s=>{const i=setInterval((()=>{if(document.querySelector(t))return clearInterval(i),s(document.querySelector(t))}),50)}))}takeStateSnapshot(){const t=[];for(let s=0;s<this.wrapper.children.length;s++){const i=this.wrapper.children?.[s];t.push(i.product)}const s={pageIndex:Math.max((this.infiniteScroll?.pageIndex??1)-1,1),nextPage:this.nextPage,currentPageData:t};if(this.isFilterable()){const t=sessionStorage.getItem(this.filtersKey);sessionStorage.setItem(this.filtersKey,t||JSON.stringify(this.filtersSnapshot))}sessionStorage.setItem(this.infiniteScrollStateKey,JSON.stringify(s));let i=salla.config.get("page.id");const e=Object.keys(this.specialPagesWithoutIds).find((t=>salla.url.is_page(t)));e?i=this.specialPagesWithoutIds[e]:null!==i&&(i=String(i)),sessionStorage.setItem(this.prevCategoryIdKey,i)}removeScrollRestorationSession(){this.isFilterable()||sessionStorage.removeItem(this.filtersKey),sessionStorage.removeItem(this.infiniteScrollStateKey),sessionStorage.removeItem(this.lastViewedProductKey),sessionStorage.removeItem(this.prevCategoryIdKey)}loadStoredScrollState(){const t=sessionStorage.getItem(this.infiniteScrollStateKey),s=sessionStorage.getItem(this.filtersKey),i=sessionStorage.getItem(this.prevCategoryIdKey),e=this.specialPagesWithoutIds[salla.config.get("page.slug")]||null,a=salla.config.get("page.id"),r=salla.url.is_page("index"),o=salla.url.is_page("product.single"),h=e?i!==e:i!==String(a);if(i&&h&&!r&&!o||r&&!this.hasInfiniteScroll)return this.removeScrollRestorationSession(),this.switchToNormalBehavior=!0,!1;if(o)return this.switchToNormalBehavior=!0,!1;if(t)try{const{pageIndex:i,nextPage:e,currentPageData:a}=JSON.parse(t);if(s&&"undefined"!==s){const t=JSON.parse(s);this.filtersSnapshot=JSON.parse(JSON.stringify(t)),salla.event.emit("filters::fetched",{filters:t})}this.page=i,this.nextPage=e;for(let t=0;t<a.length;t++)this.wrapper.append(this.getItemHTML(a?.[t]));return!0}catch(t){console.error("Failed to load stored scroll state:",t),this.removeScrollRestorationSession()}return!1}getSource(){return h.getProductsSource(this.source)}isAuxiliaryProductsListSource(){return["json","selected","related","landing-page","recently"].includes(this.getSource())}getSourceValue(){return this.currentCategoryIdFilter?this.currentCategoryIdFilter:h.getProductsSourceValue(this.source,this.sourceValue)}logFetchError(t,s,i,e,a){try{const r=a&&"object"==typeof a?a:null,o=this.getSourceValue();salla.analytics?.log("salla::products.list.fetch.error",{errorPhase:t,source:this.getSource(),sourceValue:"string"==typeof o&&o.length>200?`${o.slice(0,200)}…`:Array.isArray(o)?{length:o.length}:o,pageIndex:this.infiniteScroll?.pageIndex,fetchPath:i,httpStatus:e?.status,httpStatusText:e?.statusText,responseUrl:e?.url,...r&&{dataCount:Array.isArray(r.data)?r.data.length:void 0,responseKeys:Object.keys(r).slice(0,15),filtersCount:Array.isArray(r.filters)?r.filters.length:void 0},errorMessage:s instanceof Error?s.message:String(s),..."processing"===t&&s instanceof Error&&s.stack?{errorStack:s.stack.slice(0,500)}:{}})}catch{}}appendDataLayer(t){"object"==typeof dataLayer&&Array.isArray(dataLayer)&&dataLayer.push({event:"impressions",ecommerce:{currencyCode:salla.config.currency().code,impressions:t.map(((t,s)=>({id:t.id,name:t.name,price:t.price,brand:t.brand?.name||"",quantity:t.quantity,categories:[{name:t.category?.name||salla.config.get("page.title"),id:salla.config.get("page.id")}],category:t.category?.name||salla.config.get("page.title"),position:s+1})))}})}initiateInfiniteScroll(){if(!this.hasInfiniteScroll)return;const t=this.autoload&&this.includes&&this.includes.length>0;this.infiniteScroll=salla.infiniteScroll.initiate(this.wrapper,this.wrapper,{path:()=>this.nextPage,history:!1,nextPage:this.nextPage,scrollThreshold:!t&&!!this.autoload&&100,loadOnScroll:!t&&this.autoload},!0),this.infiniteScroll.pageIndex=this.page,this.infiniteScroll?.on("request",(()=>{this.loading(!0,!this.autoload)})),t&&window.addEventListener("scroll",this.boundHandleScroll),this.infiniteScroll?.on("load",(async(t,s,i)=>{if(!this.isProcessing){this.isProcessing=!0;try{if(!t.data?.length&&2===this.infiniteScroll.pageIndex)return this.showPlaceholder=!0,salla.infiniteScroll.destroy(this.infiniteScroll),this.loading(!1),void(this.placeholderLoader&&this.placeholderLoader.remove());this.includes&&await this.injectAndProcessData(t);const s=await this.handleResponse(t);this.infiniteScroll.appendItems(s),2===this.infiniteScroll.pageIndex&&(!this.autoload&&this.nextPage&&(this.loadMoreWrapper.style.display="block"),this.animateItems())}catch(e){console.error("Error during load:",e),this.logFetchError("processing",e,"string"==typeof s?s:void 0,i,t)}finally{this.isProcessing=!1}}})),this.infiniteScroll?.on("error",((t,s,i)=>{const e=i;this.status.querySelector(".s-infinite-scroll-error").classList.remove("s-hidden"),this.placeholderLoader&&this.placeholderLoader.remove(),this.loading(!1),this.isProcessing=!1,this.logFetchError("fetch",t,s,e)})),salla.onReady((()=>{sessionStorage.getItem(this.infiniteScrollStateKey)||this.manualLoadNextPage()}))}handleScroll(){this.isProcessing||this.scrollTimeout||(this.scrollTimeout=setTimeout((()=>{this.scrollTimeout=null,requestAnimationFrame((()=>{const t=this.wrapper.getBoundingClientRect(),s=window.innerHeight;t.bottom-s<=200&&!this.isProcessing&&this.nextPage&&this.manualLoadNextPage()}))}),200))}manualLoadNextPage(){this.nextPage&&this.infiniteScroll.loadNextPage()}async applyBeforeBuildListUrl(t){try{const s={component:this,url:t};return await salla.hooks.call("salla-products-list","beforeBuildListUrl",s),s.url}catch(s){return salla.logger.warn("beforeBuildListUrl hook failed",s?.message),t}}async resolveNextPageFromCursor(t){return t.cursor?t.cursor.next?await this.applyBeforeBuildListUrl(t.cursor.next):t.cursor.next:this.nextPage}async injectAndProcessData(t){try{await h.injectExtraFieldsToResponse(t)}catch(t){console.error("Error injecting data:",t)}}getInitialData(){return this.loading(),salla.api.withoutNotifier((()=>salla.product.api.fetch({source:h.getApiSource(this.getSource()),source_value:this.getSourceValue(),limit:this.limit}).then((async t=>t.data.length?(await h.injectExtraFieldsToResponse(t),this.firstPageResponse?void(await this.handleResponse(t)).forEach((t=>this.wrapper.append(t))):(this.firstPageResponse=t,void(this.nextPage=await this.resolveNextPageFromCursor(t)))):(this.showPlaceholder=!0,this.placeholderLoader&&this.placeholderLoader.remove(),void this.loading(!1))))))}async loadMore(){this.infiniteScroll?.loadNextPage()}componentWillLoad(){return salla.onReady().then((async()=>{this.hasCustomComponent=!!customElements.get(this.productCardComponent),this.sourceValueIsValid=!(!this.getSourceValue()&&!this.isSourceWithoutValue()),this.hasInfiniteScroll=!this.isAuxiliaryProductsListSource()&&!this.limit;let t=new URLSearchParams(window.location.search);try{this.sortBy=this.sortBy||t.get("sort")||t.get("by"),this.parsedFilters=h.extractFiltersFromUrl(t),this.parsedFilters&&this.parsedFilters.category_id&&(this.currentCategoryIdFilter=[this.parsedFilters.category_id])}catch(t){salla.logger.warn("failed to get filters from url",t.message)}if(await this.buildNextPageUrl(),this.isReady=!0,!sessionStorage.getItem(this.infiniteScrollStateKey))if(this.sourceValueIsValid){if(!this.hasInfiniteScroll){if("json"===this.getSource())return this.getSourceValue().length?void setTimeout((()=>{this.getSourceValue().map((t=>this.wrapper.append(this.getItemHTML(t))))})):void(this.showPlaceholder=!0);if("selected"!==this.getSource()||this.getSourceValue().length)return this.getInitialData();this.showPlaceholder=!0}}else salla.logger.warn(`source-value prop is required for source [${this.getSource()}]`)}))}async componentDidLoad(){this.hasInfiniteScroll&&this.init(),await Salla.hooks.registerComponent("salla-products-list",this),this.loadStoredScrollState()?(this.autoload?!this.nextPage&&this.loading(!1):this.nextPage?this.loadMoreWrapper&&(this.loadMoreWrapper.style.display="block"):(this.loadMoreWrapper&&(this.loadMoreWrapper.style.display="none"),this.status.querySelector(".s-infinite-scroll-last").classList.remove("s-hidden")),this.scrollToLastViewedProduct()):!this.firstPageResponse&&this.switchToNormalBehavior?this.getInitialData().then((async()=>{this.firstPageResponse?((await this.handleResponse(this.firstPageResponse,!1)).forEach((t=>{this.wrapper.append(t)})),setTimeout((()=>{if(!this.autoload&&this.nextPage&&1==this.infiniteScroll.pageIndex){const t=this.host.querySelector(".s-infinite-scroll-wrapper");t&&(t.style.display="block")}}))):console.error("No response received after getInitialData.")})).catch((t=>{console.error("Error during initial data fetch:",t)})):this.firstPageResponse&&(await this.handleResponse(this.firstPageResponse,!1)).forEach((t=>this.wrapper.append(t)))}canRender(){return this.sourceValueIsValid&&this.isReady}render(){return this.canRender()?this.showPlaceholder?i("div",{class:"s-products-list-placeholder"},i("span",{innerHTML:o}),i("p",null,this.placeholderText)):i(e,{class:"s-products-list"},i("div",{class:{"s-products-list-wrapper":!0,"s-products-list-horizontal-cards":this.horizontalCards&&!this.filtersResults,"s-products-list-vertical-cards":!this.horizontalCards&&!this.rowCards&&!this.filtersResults,"s-products-list-row-cards":this.rowCards,"s-products-list-compact-cards":this.compactCards,"s-products-list-filters-results":this.filtersResults},ref:t=>this.wrapper=t}),i("div",{class:"s-infinite-scroll-status",ref:t=>this.status=t},i("p",{class:"s-infinite-scroll-last infinite-scroll-last s-hidden"},this.endOfText),i("p",{class:"s-infinite-scroll-error infinite-scroll-error s-hidden"},this.failedLoadMore)),this.autoload&&i("div",{class:"s-products-list-loading-wrapper",style:{display:"none"},ref:t=>this.loader=t},i("span",{class:"s-button-loader s-button-loader-center s-infinite-scroll-btn-loader"})),this.hasInfiniteScroll&&this.nextPage&&!this.autoload?i("div",{class:"s-infinite-scroll-wrapper",style:{display:"none"},ref:t=>this.loadMoreWrapper=t},i("button",{onClick:()=>this.loadMore(),class:"s-infinite-scroll-btn s-button-btn s-button-primary"},i("span",{class:"s-button-text s-infinite-scroll-btn-text"},this.loadMoreText?this.loadMoreText:salla.lang.get("common.elements.load_more")),i("span",{class:"s-button-loader s-button-loader-center s-infinite-scroll-btn-loader",ref:t=>this.btnLoader=t,style:{display:"none"}}))):""):""}init(){this.initiateInfiniteScroll(),this.loading()}async handleResponse(t,s=!0){if(!t)return[];let i=this.getSource();if(1===t.cursor?.current){if(!this.isAuxiliaryProductsListSource()){let s=h.getPageTitleForSource(i);try{if("search"===this.getSource())s=salla.lang.get("common.elements.search_about",{word:this.getSourceValue()});else if(!s){let i=this.parsedFilters.category_id||this.getSourceValue()[0];s=t.filters?.find((t=>"category_id"===t.key))?.values?.find((t=>t.key===i))?.value??""}s+=(s?" - ":"")+salla.lang.choice("blocks.header.products_count",t.data?.length),15===t.data.length&&(s=s.replace(t.data.length,salla.lang.get("common.elements.more_than")+" "+t.data.length)),t.title=s}catch(t){salla.logger.error("Error::falid to handle response",t)}}h.generateProductSchema(t.data)}this.appendDataLayer(t.data),t.nextPage=this.nextPage,t.source=this.getSource(),t.sourceValue=this.getSourceValue(),salla.event.emit("salla-products-list::products.fetched",t),this.productsFetched.emit(t),this.emitFilters(t),s&&(this.nextPage=await this.resolveNextPageFromCursor(t)),this.loading(!1),this.placeholderLoader&&this.placeholderLoader.remove(),this.hasInfiniteScroll&&!this.nextPage&&(this.infiniteScroll.option({scrollThreshold:!1,loadOnScroll:!1}),this.status.querySelector(".s-infinite-scroll-last").classList.remove("s-hidden"));const e=[];for(let s=0;s<t.data.length;s++)e.push(this.getItemHTML(t.data?.[s]));return e}get host(){return a(this)}};l.style="";export{l as salla_products_list}
@@ -1,4 +0,0 @@
1
- /*!
2
- * Crafted with ❤ by Salla
3
- */
4
- import{r as s,h as t}from"./p-B4SEH_Fg.js";import{a as i}from"./p-CgtvEd63.js";import{a as e}from"./p-BedNk7k1.js";import{S as a}from"./p-8Tsmrwno.js";import{S as l}from"./p-0-eTJXSD.js";const h=class{constructor(t){s(this,t),this.defaultEvent="gifting:open",this.selectImageForYourGift=salla.lang.get("blocks.buy_as_gift.select_image_or_upload"),this.currentStep=1,this.showCalendar=!1,this.showGiftText=!1,this.currentLang="",this.parentClass="is-current-step-1",this.errors={},this.gift=void 0,this.selectedGiftTextOption=void 0,this.selectedCountryId=void 0,this.selectedCountryCode=void 0,this.loadingCities=!1,this.loadingRegions=!1,this.regions=[],this.selectedRegionId=void 0,this.isKSA=!1,this.selectedCountry=null,this.selectedRegion=null,this.displayedCities=[],this.selectedCity=null,this.searchingCities=!1,this.enableCityAjaxSearch=!1,this.citySearchQuery="",this.step2Animated=!1,this.citySearchTimer=null,this.citySearchCounter=0,this.locationRequestCounter=0,this.showTextArea=!1,this.selectedImage=void 0,this.uploadedImage=void 0,this.selectedText=void 0,this.hasError=!1,this.timeZone=null,this.receiverCountryCode=salla.config.get("store.scope.countries")?.[0]||salla.config.get("store.store_country")||"SA",this.hostId=`salla-gifting-${Math.random().toString(36).slice(2,10)}`,this.formSelector="form.product-form, form.form--product-options",this.handleCitySearch=s=>{if(this.citySearchQuery=s,!this.enableCityAjaxSearch)return;this.citySearchTimer&&clearTimeout(this.citySearchTimer);const t=++this.citySearchCounter;this.citySearchTimer=setTimeout((async()=>{this.searchingCities=!0;try{const i=await this.fetchCities(s);t===this.citySearchCounter&&(this.displayedCities=i)}catch(s){t===this.citySearchCounter&&(this.displayedCities=[])}finally{t===this.citySearchCounter&&(this.searchingCities=!1)}}),h.CITY_SEARCH_DEBOUNCE_MS)},this.handleCitySelected=s=>{this.selectedCity=s,this.receiverCity=String(s.id),this.clearError("receiver.city_id")},this.handleCityDropdownClosed=()=>{this.citySearchQuery="",this.citySearchTimer&&(clearTimeout(this.citySearchTimer),this.citySearchTimer=null),++this.citySearchCounter,this.displayedCities=this.gift?.cities??[],this.searchingCities=!1},this.handleCountryDropdownClosed=()=>{},this.handleRegionDropdownClosed=()=>{},salla.lang.onLoaded((()=>{this.selectImageOrUpload=salla.lang.get("blocks.buy_as_gift.select_image_or_upload"),this.selectImageForYourGift=salla.lang.get("blocks.buy_as_gift.select_image_for_your_gift"),this.sectionTitle=salla.lang.get("blocks.buy_as_gift.gift_the_one_you_love"),this.sectionSubtitle=salla.lang.get("blocks.buy_as_gift.gift_the_one_you_love_message"),this.sectionBtnText=salla.lang.get("blocks.buy_as_gift.send_as_a_gift"),this.giftDetails=salla.lang.get("blocks.buy_as_gift.gift_details"),this.selectGiftMessage=salla.lang.get("blocks.buy_as_gift.select_gift_message"),this.giftCustomText=salla.lang.get("blocks.buy_as_gift.gift_custom_text"),this.textId=salla.lang.get("blocks.buy_as_gift.text_id"),this.incorrectGiftText=salla.lang.get("blocks.buy_as_gift.incorrect_gift_text"),this.nextStep=salla.lang.get("blocks.buy_as_gift.next_step"),this.senderNameLabel=salla.lang.get("blocks.buy_as_gift.sender_name"),this.receiverNameFieldLabel=salla.lang.get("blocks.buy_as_gift.receiver_name"),this.receiverMobileFieldLabel=salla.lang.get("blocks.buy_as_gift.receiver_mobile"),this.receiverCountryFieldLabel=salla.lang.get("blocks.buy_as_gift.receiver_country"),this.ksa=salla.lang.get("pages.checkout.ksa"),this.selectCity=salla.lang.get("pages.checkout.select_city"),this.selectCountry=salla.lang.get("pages.checkout.select_country"),this.selectCityInfo=salla.lang.get("blocks.buy_as_gift.city_info"),this.receiverCityFieldLabel=salla.lang.get("blocks.buy_as_gift.receiver_city"),this.receiverRegionFieldLabel=salla.lang.get("blocks.buy_as_gift.receiver_region")||salla.lang.get("pages.checkout.region"),this.selectRegion=salla.lang.get("pages.checkout.select_region"),this.receiverEmailFieldLabel=salla.lang.get("blocks.buy_as_gift.receiver_email"),this.emailPlaceholder=salla.lang.get("common.elements.email_placeholder"),this.sendLater=salla.lang.get("blocks.buy_as_gift.send_later"),this.selectSendDateAndTime=salla.lang.get("blocks.buy_as_gift.select_send_date_and_time"),this.canNotEditOrderAfterSelectDate=salla.lang.get("blocks.buy_as_gift.can_not_edit_order_after_select_date"),this.sendGift=salla.lang.get("blocks.buy_as_gift.send_gift"),this.donationRequired=salla.lang.get("pages.products.donation_amount_required"),this.currentLang=salla.lang.locale})),salla.event.on(this.defaultEvent,(()=>{this.open()}))}isPhysical(){return this.physicalProducts||this.physical}componentDidLoad(){salla.event.product.onPriceUpdated((()=>{const s=document.querySelector(".s-quantity-input-input");this.quantity=s?.value}))}getFormDataFromForm(){if(!this.formSelector)return null;const s=document.querySelector(this.formSelector);return s?new FormData(s):null}mergeObjectToFormData(s,t,i){for(let e in s){if(!s.hasOwnProperty(e)||null==s[e])continue;const a=i?`${i}[${e}]`:e;"object"!=typeof s[e]||null===s[e]||s[e]instanceof File?t.set(a,s[e]):this.mergeObjectToFormData(s[e],t,a)}return t}async open(){if(salla.config.isGuest())return salla.api.auth.setAfterLoginEvent(this.defaultEvent),void salla.event.dispatch("login::open",{withoutReload:!0});await this.modal.open();const s=this.productId?()=>salla.product.getGiftProductDetails(this.productId):()=>salla.cart.getGiftCartDetails();return await salla.api.withoutNotifier(s).then((s=>{this.gift=s.data,this.senderName=this.gift.sender_name})).catch((s=>{this.hasError=!0,this.errorMessage=s.response?.data?.error?.message||s.response?.data})).finally((()=>this.modal.stopLoading()))}async close(){return this.modal.close()}async setWrapperHeight(s=1,t=250,i=0,e=0){let a=document.querySelector(`#${this.hostId} .gift-step-${s}`);const l=()=>{this.stepsWrapper.style.height=e?`${e}px`:a.offsetHeight+i+"px"};this.step2Animated&&2===s?requestAnimationFrame(l):setTimeout(l,t)}toggleCalendar(){this.showCalendar=!this.showCalendar,this.setWrapperHeight(2,150,0)}toggleGiftText(s){this.textSelect?.classList.remove("s-form-has-error");let t=s.target.children[s.target.selectedIndex].getAttribute("data-id"),i="custom"==t;this.showGiftText=i,t?(this.selectedGiftTextOption=t,this.selectedText=i?void 0:s.target.value,this.setWrapperHeight(1,150,5)):(this.textArea.value="",this.selectedText=void 0,this.selectedGiftTextOption=void 0,this.setWrapperHeight(1,150,-15))}async goToStep2(){return this.selectedGiftTextOption?"custom"!=this.selectedGiftTextOption||this.selectedText?(this.textSelect.classList.remove("s-form-has-error"),this.customTextArea.classList.remove("s-form-has-error"),this.setWrapperHeight(2,600,0),(new i.timeline).add({targets:this.step1Elems.querySelectorAll(`#${this.hostId} .anime-item`),opacity:[1,0],translateX:[0,50],delay:i.stagger(70),duration:1200}).add({targets:".gift-step-2",translateX:["-110%",0],opacity:[0,1]},"-=1800").add({targets:this.step2Elems.querySelectorAll(`#${this.hostId} .anime-item`),opacity:[0,1],translateX:[-50,0],delay:i.stagger(70),duration:1200,complete:()=>{this.step2Elems.querySelectorAll(`#${this.hostId} .anime-item`).forEach((s=>{s.classList.remove("opacity-0"),s.removeAttribute("style")})),this.step2Animated=!0}},"-=1200"),this.currentStep=2,void(this.parentClass=`is-current-step-${this.currentStep}`)):(this.textSelect.classList.remove("s-form-has-error"),void this.customTextArea.classList.add("s-form-has-error")):(this.textSelect.classList.add("s-form-has-error"),void this.customTextArea.classList.remove("s-form-has-error"))}goToStep1(s){s.preventDefault();let t=new i.timeline({autoplay:!1});t.add({targets:this.step2Elems.querySelectorAll(`#${this.hostId} .anime-item`),opacity:[1,0],translateX:[0,-50],delay:i.stagger(70),duration:1200}).add({targets:".gift-step-1",translateX:["110%",0],opacity:[0,1]},"-=1800").add({targets:this.step1Elems.querySelectorAll(`#${this.hostId} .anime-item`),opacity:[0,1],translateX:[50,0],delay:i.stagger(70),duration:1200,complete:()=>{this.step1Elems.querySelectorAll(`#${this.hostId} .anime-item`).forEach((s=>{s.classList.remove("opacity-0"),s.removeAttribute("style")}))}},"-=1200"),t.play(),this.step2Animated=!1,this.setWrapperHeight(1,600,0),this.currentStep=1,this.parentClass=`is-current-step-${this.currentStep}`}getFilepondPlaceholder(){return`<div class="s-gifting-filepond-placeholder"><span class="s-gifting-filepond-placeholder-icon"><svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 32 32">\n<title>images</title>\n<path d="M22.667 29.333h-13.333c-3.676 0-6.667-2.991-6.667-6.667v-13.333c0-0.737-0.597-1.333-1.333-1.333s-1.333 0.596-1.333 1.333v13.333c0 5.145 4.187 9.333 9.333 9.333h13.333c0.736 0 1.333-0.596 1.333-1.333s-0.597-1.333-1.333-1.333zM22.667 5.333c-2.205 0-4 1.795-4 4s1.795 4 4 4 4-1.795 4-4-1.795-4-4-4zM22.667 10.667c-0.735 0-1.333-0.597-1.333-1.333s0.599-1.333 1.333-1.333 1.333 0.597 1.333 1.333-0.599 1.333-1.333 1.333zM25.333 0h-13.333c-3.676 0-6.667 2.991-6.667 6.667v13.333c0 1.055 0.268 2.040 0.707 2.927 0.039 0.099 0.088 0.188 0.151 0.277 1.137 2.053 3.301 3.463 5.809 3.463h13.333c3.676 0 6.667-2.991 6.667-6.667v-13.333c0-3.676-2.991-6.667-6.667-6.667zM12 24c-1.244 0-2.344-0.583-3.077-1.476l5.721-7.047 6.629 8.523zM29.333 20c0 2.205-1.795 4-4 4h-0.68l-8.933-11.485c-0.251-0.32-0.633-0.511-1.039-0.515h-0.015c-0.401 0-0.781 0.181-1.035 0.492l-5.632 6.935v-12.76c0-2.205 1.795-4 4-4h13.333c2.205 0 4 1.795 4 4z"></path>\n</svg>\n</span><p class="s-gifting-filepond-placeholder-text">${this.selectImageOrUpload?this.selectImageOrUpload:""}</p></div>`}setPreview(s){this.uploader?.classList.add("has-bg");var t=document.querySelector(`#${this.hostId}.filepond-bg`)?document.querySelector(`#${this.hostId} .filepond-bg`):document.createElement("div");t.classList.add("filepond-bg"),t.classList.remove("s-hidden"),t.style.backgroundImage="url('"+s.url+"')",this.uploader?.querySelector(".filepond--root")?.appendChild(t),this.uploadedImage=s.url,this.gift&&this.gift.gift_images.length&&this.setWrapperHeight(1,150,0)}removePreview(){this.uploader.classList.remove("has-bg");let s=document.querySelector(`#${this.hostId} .filepond-bg`);s.removeAttribute("style"),s.classList.add("s-hidden"),this.handleRemoveImage()}handleTextAreaChange(s){this.selectedText=s.target.value,this.customTextArea.classList.remove("s-form-has-error")}clearError(s){if(this.errors?.[s]){const{[s]:t,...i}=this.errors;this.errors=i}}handleSenderName(s){this.senderName=s.target.value,this.clearError("sender_name")}handleReceiverName(s){this.receiverName=s.target.value,this.clearError("receiver.name")}resetCityState(){this.citySearchTimer&&(clearTimeout(this.citySearchTimer),this.citySearchTimer=null),++this.citySearchCounter,this.gift={...this.gift,cities:[]},this.displayedCities=[],this.receiverCity=void 0,this.selectedCity=null,this.citySearchQuery="",this.searchingCities=!1,this.enableCityAjaxSearch=!1}setInitialCities(s){this.gift={...this.gift,cities:s},this.displayedCities=s,this.enableCityAjaxSearch=s.length>=h.CITY_AJAX_THRESHOLD}async fetchCities(s=""){if(!this.selectedCountryId)return[];if(this.isKSA&&!this.selectedRegionId)return[];const t=["for_branch=0",`country_id=${this.selectedCountryId}`];this.isKSA&&this.selectedRegionId&&t.push(`region_id=${this.selectedRegionId}`),s?.trim()&&t.push(`query=${encodeURIComponent(s.trim())}`);const i=await salla.api.request(`shipping/cities?${t.join("&")}`);return i?.data??[]}async handleCountrySelected(s){const t=s?.id;this.selectedCountry=s??null,this.selectedCountryId=t,this.selectedCountryCode=s?.country_code,this.isKSA="SA"===s?.country_code,this.clearError("receiver.country"),this.regions=[],this.selectedRegionId=void 0,this.selectedRegion=null,this.resetCityState();const i=++this.locationRequestCounter;if(!t)return this.selectedCountryCode=void 0,this.isKSA=!1,void this.setWrapperHeight(2,0,0);if(this.isKSA){this.loadingRegions=!0,this.setWrapperHeight(2,0,0);try{const s=await salla.api.request(`shipping/countries/${t}/regions`);if(i!==this.locationRequestCounter)return;s&&s.data&&(this.regions=s.data)}catch(s){if(i!==this.locationRequestCounter)return;console.error("Error fetching regions:",s)}finally{i===this.locationRequestCounter&&(this.loadingRegions=!1,this.setWrapperHeight(2,0,0))}}else{this.loadingCities=!0,this.setWrapperHeight(2,0,0);try{const s=await this.fetchCities();if(i!==this.locationRequestCounter)return;this.setInitialCities(s)}catch(s){if(i!==this.locationRequestCounter)return;console.error("Error fetching cities:",s)}finally{i===this.locationRequestCounter&&(this.loadingCities=!1)}}}async handleRegionSelected(s){const t=s?.id;this.selectedRegion=s??null,this.selectedRegionId=t,this.clearError("receiver.region"),this.resetCityState();const i=++this.locationRequestCounter;if(t){this.loadingCities=!0;try{const s=await this.fetchCities();if(i!==this.locationRequestCounter)return;this.setInitialCities(s)}catch(s){if(i!==this.locationRequestCounter)return;console.error("Error fetching cities:",s)}finally{i===this.locationRequestCounter&&(this.loadingCities=!1,this.setWrapperHeight(2,0,0))}}}handleUploadImage(s){this.uploadedImage=s,this.gift&&this.gift.gift_images.length&&this.setWrapperHeight(1,150,0)}handleRemoveImage(){this.uploadedImage="",this.gift&&this.gift.gift_images.length&&this.setWrapperHeight(1,150,0)}handlePhoneInputChange(s){let t=s.detail;this.receiverMobile=t.number,this.receiverCountryCode=t.country_code,this.clearError("receiver.mobile")}handleDateTimePicker(s){this.deliveryDate=s.detail}getCalendarClasses(){return{"s-form-group":!0,"anime-item":!0,"s-gifting-calendar":!0,shown:this.showCalendar,hide:!this.showCalendar,"s-form-has-error":!!this.errors&&this.errors.deliver_at}}async submitForm(){const s=document.querySelector("#donating-amount")?.value;if(this.calendarFormGroup.classList.remove("s-form-has-error"),this.errors&&(this.errors={},this.setWrapperHeight(2,150,0)),this.showCalendar&&!this.deliveryDate)return void this.calendarFormGroup.classList.add("s-form-has-error");const t=[{key:"sender_name",value:this.senderName,label:this.senderNameLabel},{key:"receiver.name",value:this.receiverName,label:this.receiverNameFieldLabel},{key:"receiver.mobile",value:this.receiverMobile,label:this.receiverMobileFieldLabel},...this.isPhysical()?[{key:"receiver.country",value:this.selectedCountryId,label:this.receiverCountryFieldLabel},...this.isKSA?[{key:"receiver.region",value:this.selectedRegionId,label:this.receiverRegionFieldLabel}]:[],{key:"receiver.city_id",value:this.receiverCity,label:this.receiverCityFieldLabel}]:[]],i={};if(t.forEach((({key:s,value:t,label:e})=>{t||(i[s]=salla.lang.get("common.errors.field_required",{attribute:e}))})),Object.keys(i).length)return this.errors=i,void this.setWrapperHeight(2,150,0);const e={text:this.selectedText,sender_name:this.senderName,quantity:this.quantity,deliver_at:this.showCalendar?this.deliveryDate:null,image_url:this.uploadedImage??this.selectedImage,donation_amount:s||null,receiver:{name:this.receiverName,mobile_country_code:this.receiverCountryCode,mobile:this.receiverMobile,...this.isPhysical()&&this.selectedCountryCode?{country_code:this.selectedCountryCode}:{},...this.isPhysical()&&this.selectedRegionId?{region_id:this.selectedRegionId}:{},...this.receiverCity&&this.isPhysical()?{city_id:this.receiverCity}:{}},has_apple_pay:salla.helpers.hasApplePay()};let a;this.productId&&this.formSelector&&(a=this.getFormDataFromForm()||new FormData,a=this.mergeObjectToFormData(e,a));const l=this.productId?()=>salla.product.addProductGiftToCart(this.productId,a,!0):()=>salla.cart.addCartGiftToCart(e,!0);return await l().then((()=>this.modal.close())).catch((s=>{s.response&&422==s.response.status?this.errors=s.response.data.error.fields:console.log(s),this.setWrapperHeight(2,150,0)}))}step2ItemClass(s=""){const t="anime-item"+(this.step2Animated?"":" opacity-0");return s?`${s} ${t}`:t}generateClass(){return{"s-gifting-widget":!0,"s-gifting-widget-vertical":!!this.vertical,"s-gifting-widget-horizontal":!this.vertical}}async handleGiftButtonClick(){if(this.productId&&this.formSelector){const s=document.querySelector(this.formSelector);if(!s)return void console.error("SallaGifting:: Form not found in the document!");if(!(s instanceof HTMLFormElement))return void console.error("SallaGifting:: The specified selector does not correspond to a form tag!");if(!s.reportValidity())return console.error("SallaGifting:: Form is not valid!"),void salla.error(salla.lang.get("common.messages.required_fields"))}const s=document.querySelector(`salla-product-options[product-id="${this.productId}"]`);!s||await s.reportValidity()?this.open():salla.error(salla.lang.get("common.messages.required_fields"))}render(){return[t("div",{key:"db700f9ec96a6974f3b815bb017ebe97ae8fe5c0"},t("salla-list-tile",{key:"1e2fd1c0b375c85fcd4af1ea071c36879e6913c5",class:this.generateClass()},t("div",{key:"a9d02c933bc13bf8765e7e91ce08b2c9495954e5",slot:"title"},this.vertical?t("span",{innerHTML:l}):"",t("h3",{key:"56bd850368806c6ed5770ea5f6b0339749a77dfa"},this.widgetTitle?this.widgetTitle:this.sectionTitle)),t("div",{key:"fbb4940fd3e3578f2f5a479d9d44be8dfbda7e43",slot:"subtitle"},t("div",{key:"fb7e8532984fbfc6fd61c55a6d44d7cdbb4bc9a2"},this.widgetSubtitle?this.widgetSubtitle:this.sectionSubtitle)),t("div",{key:"04f27f1ddbfa0b06be111b6c3176fbda5ea6d43a",slot:"action"},t("salla-button",{key:"fe71a1a773e5275ede7d1b3ea535c330688028b7",color:"primary",fill:"outline",width:"wide",class:"s-gifting-widget-action",onClick:()=>this.handleGiftButtonClick()},t("slot",{key:"d62127d30254df2d8add55e0e1dbcfefb686e359",name:"widget-btn-content"},t("div",{key:"5ddbb695af142baf3bb6986627f97a7a7607eb31",class:"s-gifting-widget-action-content"},t("span",{key:"7820fb6abd9d7a9c1035c0f80191a3ff2a4c5fe8",innerHTML:l}),"  ",t("span",{key:"2cfc69862d3d087375efaed3bcec0ff0c1587989"},this.sectionBtnText)))))),t("salla-modal",{key:"32c19391248ba6186f43fea59493171079e7bf07",id:this.hostId,isLoading:!0,class:"s-gifting-modal",width:"sm",ref:s=>this.modal=s},t("div",{key:"e4b5829416314f25793158dae0c530b8057b4085",slot:"loading"},t("div",{key:"6ee873add5868f105b7ec7291c2a8c8fc033c588",class:"s-gifting-skeleton"},t("div",{key:"40aae38f8b2d62b434394811a3ef6d8bc00f6f32",class:"s-gifting-modal-header"},t("salla-skeleton",{key:"a652cd74a16d0db662ea4a518ebfab366a3c3899",type:"circle",height:"5rem",width:"5rem"}),t("h2",{key:"edb4a1477893246e98207aeba7bfb5af686f20b9",class:"s-gifting-modal-title"},t("div",{key:"83ef942b15450cc59ad32d8c5b3ba43a32bcb29c",class:"s-gifting-modal-badge-wrapper"},t("salla-skeleton",{key:"d9041c777a2fa0aa7ffc752958c7441916a02f85",height:"15px",width:"150px"})))),t("div",{key:"fe3bb9dad01becba87486c4886037fd67b059919",class:"s-gifting-skeleton-content"},t("salla-skeleton",{key:"08bd8304b66264b70f6df68e64da3560a1f75461",height:"10px",width:"150px"}),t("salla-skeleton",{key:"bbea0d7ff0c846897af2ef5d3696b252a2f4e662",height:"230px"}),t("salla-skeleton",{key:"8cb1fde02e31a1accabd2e26409983e7ba56eeb1",height:"10px",width:"150px"}),t("salla-skeleton",{key:"f80a986b953278bac41505506adf8d611566a167",height:"30px"}),t("salla-skeleton",{key:"f7eccce69b619de385872642e1fb62b2cf6c3082",height:"40px"})))),t("slot",{key:"d299e46040193b441f8171d05e0048849e3df8d5",name:"header"}),this.hasError?t("salla-placeholder",{alignment:"center"},t("span",{slot:"title"},this.errorMessage||salla.lang.get("common.errors.empty_results")),t("span",{slot:"description"}," ")):[t("div",{class:"s-gifting-modal-header"},t("span",{class:"s-gifting-modal-icon"},t("span",{innerHTML:l})),t("h2",{class:"s-gifting-modal-title"},t("div",{class:"s-gifting-modal-badge-wrapper"},t("div",{class:"s-gifting-modal-badge"},t("span",null,t("span",null,this.currentStep),"/2")),t("span",null,this.giftDetails)))),t("div",{class:"s-gifting-steps-wrapper "+this.parentClass,ref:s=>this.stepsWrapper=s},t("div",{class:"s-gifting-step-one gift-step-1",ref:s=>this.step1Elems=s},t("div",{class:"s-gifting-modal-uploader-title anime-item"},this.selectImageForYourGift),t("div",{class:"s-gifting-modal-uploader anime-item",ref:s=>this.uploader=s},t("span",{class:"s-gifting-remove-preview",onClick:()=>this.removePreview(),innerHTML:a}),this.selectImageOrUpload&&t("salla-file-upload",{"instant-upload":!0,name:"image_url",url:salla.url.api(salla.product.api.getUrl("giftImage")),onUploaded:s=>this.handleUploadImage(s.detail),labelIdle:this.getFilepondPlaceholder(),onRemoved:()=>this.handleRemoveImage()})),t("div",{class:"anime-item"},!this.uploadedImage&&this.gift&&this.gift.gift_images&&this.gift.gift_images.length>0?t("salla-slider",{id:"gifting-slider",loop:!1,"controls-outer":!0,class:"s-gifting-slider",type:"carousel"},t("div",{slot:"items"},this.gift&&this.gift.gift_images?this.gift?.gift_images.map((s=>t("a",{class:"s-gifting-clickable s-gifting-image",onClick:()=>this.setPreview(s)},t("img",{style:{width:"120px"},src:s.url,alt:`${s.id}`})))):"")):""),t("div",{class:"anime-item"},t("div",{class:"s-form-group s-gifting-selectText",ref:s=>this.textSelect=s},t("select",{id:"gift-text-selection",name:"gift-text-selection",class:"s-form-control s-gifting-select",onChange:s=>this.toggleGiftText(s)},t("option",{"data-id":null,selected:!0},this.selectGiftMessage),this.gift&&this.gift.gift_texts?this.gift?.gift_texts.map((s=>t("option",{"data-id":s.id,value:s.text,key:s.id},s.text))):"",t("option",{"data-id":"custom"},this.giftCustomText))),t("div",{class:this.showGiftText?"s-form-group s-gifting-textarea shown":"s-form-group s-gifting-textarea hide",ref:s=>this.customTextArea=s},t("label",{htmlFor:"gift-custom-text",class:"s-form-label"},this.giftCustomText),t("div",{class:"mt-1"},t("textarea",{onInput:s=>this.handleTextAreaChange(s),rows:4,ref:s=>this.textArea=s,name:"gift-custom-text",id:"gift-custom-text",class:"s-form-control"})))),t("div",{class:"anime-item"},t("salla-button",{color:"primary",width:"wide",onClick:()=>this.goToStep2()},t("span",null,this.nextStep)))),t("div",{class:"s-gifting-step-two gift-step-2",ref:s=>this.step2Elems=s},t("div",{class:this.step2ItemClass(this.errors?.sender_name?"s-form-group s-form-has-error":"s-form-group")},t("label",{htmlFor:"sender_name",class:"s-form-label"},this.senderNameLabel),t("input",{type:"text",class:"s-form-control",name:"sender_name",id:"sender_name",value:this.senderName,onInput:s=>this.handleSenderName(s),placeholder:""}),this.errors&&this.errors.sender_name?t("span",{class:"s-gifting-error"},this.errors.sender_name):""),t("div",{class:this.step2ItemClass(this.errors?.["receiver.name"]?"s-form-group s-form-has-error":"s-form-group")},t("label",{htmlFor:"receiver_name",class:"s-form-label"},this.receiverNameFieldLabel),t("input",{type:"text",class:"s-form-control",name:"receiver_name",id:"receiver_name",value:"",onInput:s=>this.handleReceiverName(s),placeholder:""}),this.errors&&this.errors["receiver.name"]?t("span",{class:"s-gifting-error"},this.errors["receiver.name"]):""),t("div",{class:this.step2ItemClass(this.errors?.["receiver.mobile"]?"s-form-group s-form-has-error":"s-form-group")},t("label",{class:"s-form-label"},this.receiverMobileFieldLabel),t("salla-tel-input",{class:"s-gifting-tel-input",phone:this.receiverMobile,countryCode:this.receiverCountryCode,onPhoneEntered:s=>this.handlePhoneInputChange(s)}),this.errors&&this.errors["receiver.mobile"]?t("span",{class:"s-gifting-error"},this.errors["receiver.mobile"]):""),this.isPhysical()&&t("div",{class:this.step2ItemClass(this.errors?.["receiver.country"]?"s-form-group s-form-has-error":"s-form-group")},t("label",{class:"s-form-label",htmlFor:`${this.hostId}-country`},this.receiverCountryFieldLabel),t("salla-searchable-dropdown",{placeholder:this.selectCountry,items:this.gift?.countries??[],selectedItem:this.selectedCountry,disabled:!this.gift?.countries?.length,required:!0,inputId:`${this.hostId}-country`,searchable:!1,keepParentScroll:!0,onItemSelected:s=>this.handleCountrySelected(s.detail),onDropdownClosed:()=>this.handleCountryDropdownClosed()}),this.errors&&this.errors["receiver.country"]?t("span",{class:"s-gifting-error"},this.errors["receiver.country"]):""),this.isPhysical()&&this.isKSA&&t("div",{class:this.step2ItemClass(this.errors?.["receiver.region"]?"s-form-group s-form-has-error":"s-form-group")},t("label",{class:"s-form-label",htmlFor:`${this.hostId}-region`},this.receiverRegionFieldLabel),t("salla-searchable-dropdown",{placeholder:this.selectRegion,items:this.regions??[],selectedItem:this.selectedRegion,loading:this.loadingRegions,disabled:this.loadingRegions||!this.regions?.length,required:!0,inputId:`${this.hostId}-region`,searchable:!1,keepParentScroll:!0,onItemSelected:s=>this.handleRegionSelected(s.detail),onDropdownClosed:()=>this.handleRegionDropdownClosed()}),this.errors&&this.errors["receiver.region"]?t("span",{class:"s-gifting-error"},this.errors["receiver.region"]):""),this.isPhysical()&&t("div",{class:this.step2ItemClass(this.errors?.["receiver.city_id"]?"s-form-group s-form-has-error":"s-form-group")},t("label",{class:"s-form-label",htmlFor:`${this.hostId}-city`},this.receiverCityFieldLabel),t("salla-searchable-dropdown",{placeholder:this.selectCity,items:this.displayedCities,selectedItem:this.selectedCity,loading:this.loadingCities,searching:this.searchingCities,disabled:this.loadingCities||this.isKSA&&!this.selectedRegionId,required:!0,inputId:`${this.hostId}-city`,searchQuery:this.citySearchQuery,clientSearch:!this.enableCityAjaxSearch,dropUp:!0,keepParentScroll:!0,onItemSelected:s=>this.handleCitySelected(s.detail),onSearchInput:s=>this.handleCitySearch(s.detail),onDropdownClosed:()=>this.handleCityDropdownClosed()}),this.errors&&this.errors["receiver.city_id"]?t("span",{class:"s-gifting-error"},this.errors["receiver.city_id"]):""),this.isPhysical()&&t("div",{class:this.step2ItemClass("s-gifting-info")},t("span",{innerHTML:'\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>alert</title>\n<path d="M16 13.333c-0.736 0-1.333 0.597-1.333 1.333v8c0 0.736 0.597 1.333 1.333 1.333s1.333-0.597 1.333-1.333v-8c0-0.736-0.597-1.333-1.333-1.333zM16 9.327c-0.736 0-1.333 0.604-1.333 1.34s0.597 1.333 1.333 1.333 1.333-0.597 1.333-1.333v-0.013c0-0.736-0.597-1.327-1.333-1.327zM27.313 4.687c-6.237-6.237-16.389-6.239-22.628 0-6.237 6.239-6.237 16.389 0 22.628 3.119 3.119 7.216 4.679 11.313 4.679s8.195-1.559 11.313-4.679c6.24-6.239 6.24-16.391 0.001-22.628zM25.428 25.428c-5.199 5.197-13.657 5.197-18.857 0-5.197-5.199-5.197-13.659 0-18.857 5.199-5.197 13.659-5.197 18.857 0 5.199 5.2 5.199 13.659 0 18.857z"></path>\n</svg>\n'}),t("span",null,this.selectCityInfo)),!this.isPhysical()&&t("div",{class:this.step2ItemClass()},t("label",{class:"s-gifting-schedule s-gifting-clickable",htmlFor:`schedule-${this.hostId}`},t("input",{type:"checkbox",name:"schedule",id:`schedule-${this.hostId}`,onChange:()=>this.toggleCalendar(),class:"s-checkbox"}),t("span",{class:"s-form-label"}," ",this.sendLater," "))),t("div",{class:this.getCalendarClasses(),ref:s=>this.calendarFormGroup=s},t("label",{class:"s-form-label"},this.selectSendDateAndTime),t("salla-datetime-picker",{value:this.deliveryDate,placeholder:this.selectSendDateAndTime,"enable-time":!0,"date-format":"Y-m-d h:i K",onPicked:s=>this.handleDateTimePicker(s)}),t("span",{class:"s-gifting-calendar-hint"},this.canNotEditOrderAfterSelectDate)),t("div",{class:this.step2ItemClass("s-gifting-step-two-footer")},t("a",{href:"#!",innerHTML:e,onClick:s=>this.goToStep1(s)}),t("salla-button",{onClick:()=>this.submitForm(),color:"primary",width:"wide"},t("span",null,this.sendGift)))))],t("slot",{key:"bd8cd1628ed4282b177f0ddcd5fb93289c47b4d6",name:"footer"})))]}};h.CITY_AJAX_THRESHOLD=400,h.CITY_SEARCH_DEBOUNCE_MS=100,h.style=".s-gifting-steps-wrapper{transition:0.2s cubic-bezier(0.55, 0, 0.1, 1) 0s}.s-gifting-select{background-image:url(\"data:image/svg+xml;utf8,<svg version='1.1' fill='gray' xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32'><title>keyboard_arrow_down</title><path d='M9.875 11.104l6.125 6.125 6.125-6.125 1.875 1.875-8 8-8-8z'></path></svg>\");background-size:24px;background-repeat:no-repeat;background-position:99%;appearance:none}[dir=rtl] .s-gifting-select{background-position:5px}.s-gifting-widget-vertical .s-list-tile-item [slot=title]{display:flex;align-items:center;gap:1.5rem}.s-gifting-widget-vertical .s-list-tile-item-content{width:100%}.s-gifting-modal .s-searchable-dropdown-trigger{border-color:#d1d5db}.s-gifting-modal .s-searchable-dropdown-trigger:hover:not(.s-searchable-dropdown-trigger--disabled){border-color:#d1d5db}.s-gifting-modal .s-searchable-dropdown-trigger--open,.s-gifting-modal .s-searchable-dropdown-trigger:focus{border-color:var(--color-primary, #00897b);box-shadow:0 0 0 1px var(--color-primary, #00897b)}.s-gifting-modal .s-searchable-dropdown-trigger-placeholder{color:#000}";export{h as salla_gifting}
@@ -1,4 +0,0 @@
1
- /*!
2
- * Crafted with ❤ by Salla
3
- */
4
- import{r as a,h as s,a as t}from"./p-B4SEH_Fg.js";import{a as c}from"./p-CgtvEd63.js";import{f as e,t as l}from"./p-CO-PeZ27.js";import{S as i}from"./p-DLNIOD9t.js";import{S as n}from"./p-8Tsmrwno.js";var o;!function(a){a.FACEBOOK="facebook",a.TWITTER="twitter",a.WHATSAPP="whatsapp",a.EMAIL="email",a.COPY_LINK="copy_link"}(o||(o={}));const r=class{constructor(s){a(this,s),this.opened=!1,this.allPlatforms=[o.WHATSAPP,o.FACEBOOK,o.TWITTER,o.EMAIL,o.COPY_LINK],this.platformIcons=[{icon:'\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>whatsapp</title>\n<path d="M16 32c-0.008 0-0.018 0-0.028 0-3.1 0-5.993-0.887-8.439-2.421l0.066 0.039-7.2 2.3 2.336-6.964c-1.713-2.492-2.736-5.575-2.736-8.897 0-0.020 0-0.040 0-0.060v0.003c0.009-8.833 7.167-15.991 15.999-16h0.001c8.837 0 16 7.163 16 16s-7.163 16-16 16v0zM7.906 27.424l0.4 0.264c2.169 1.449 4.837 2.312 7.707 2.312 7.732 0 14-6.268 14-14s-6.268-14-14-14c-0.004 0-0.009 0-0.013 0h0.001c-7.729 0.008-13.992 6.271-14 13.999v0.001c-0 0.010-0 0.021-0 0.032 0 3.072 1 5.909 2.693 8.206l-0.027-0.038 0.304 0.416-1.4 4.2zM20.716 24.958c-1.684-0.131-3.237-0.574-4.641-1.271l0.073 0.033c-3.098-1.456-5.634-3.668-7.438-6.405l-0.042-0.067c-1.102-1.357-1.819-3.067-1.962-4.938l-0.002-0.030c-0.001-0.036-0.001-0.078-0.001-0.12 0-1.575 0.66-2.995 1.719-4l0.002-0.002c0.547-0.52 1.289-0.839 2.105-0.839 0.033 0 0.066 0.001 0.099 0.002l-0.005-0c0.2 0 0.378 0 0.542 0.018 0.016-0.001 0.035-0.001 0.054-0.001 0.815 0 1.502 0.549 1.711 1.298l0.003 0.012 0.324 0.782c0.376 0.906 0.858 2.068 0.942 2.244 0.144 0.251 0.23 0.552 0.23 0.873 0 0.286-0.068 0.557-0.188 0.797l0.005-0.010c-0.149 0.307-0.332 0.57-0.55 0.802l0.002-0.002c-0.148 0.168-0.248 0.274-0.346 0.378s-0.172 0.18-0.26 0.284c0.575 0.92 1.237 1.713 1.992 2.406l0.008 0.008c0.829 0.758 1.802 1.373 2.872 1.8l0.064 0.022c0.369-0.266 0.672-0.6 0.896-0.985l0.008-0.015 0.174-0.232c0.328-0.484 0.875-0.798 1.495-0.798 0.249 0 0.487 0.051 0.703 0.142l-0.012-0.004c0.492 0.168 2.922 1.372 2.946 1.384l0.228 0.11c0.415 0.149 0.758 0.417 0.996 0.763l0.004 0.007c0.107 0.349 0.169 0.75 0.169 1.166 0 0.591-0.125 1.153-0.349 1.661l0.010-0.026c-0.702 1.368-1.983 2.353-3.511 2.637l-0.031 0.005c-0.309 0.071-0.663 0.112-1.028 0.112-0.004 0-0.007 0-0.011 0h0.001zM10.632 9.318c-0.028-0.002-0.062-0.004-0.095-0.004-0.245 0-0.472 0.076-0.659 0.206l0.004-0.002c-0.726 0.651-1.18 1.591-1.18 2.638 0 0.044 0.001 0.087 0.002 0.13l-0-0.006c0.122 1.404 0.662 2.662 1.495 3.671l-0.009-0.011 0.12 0.168c1.627 2.491 3.865 4.46 6.504 5.723l0.096 0.041c3.136 1.288 3.916 1.124 4.426 1.014 0.87-0.159 1.601-0.656 2.067-1.347l0.007-0.011c0.12-0.316 0.204-0.682 0.237-1.063l0.001-0.015-0.040-0.018-0.256-0.124c-0.8-0.4-2.46-1.2-2.734-1.292l-0.058 0.184c-0.346 0.501-0.684 0.934-1.045 1.347l0.015-0.017c-0.344 0.349-0.821 0.565-1.349 0.565-0.28 0-0.546-0.061-0.785-0.17l0.012 0.005c-1.403-0.547-2.609-1.301-3.646-2.239l0.010 0.009c-0.975-0.891-1.81-1.912-2.486-3.039l-0.034-0.061c-0.152-0.244-0.242-0.54-0.242-0.857 0-0.463 0.191-0.88 0.499-1.178l0-0c0.13-0.162 0.264-0.302 0.4-0.444l0.236-0.256c0.091-0.096 0.177-0.201 0.254-0.311l0.006-0.009c-0.158-0.36-0.622-1.472-0.988-2.352l-0.322-0.772-0.038-0.086c-0.188-0.010-0.302-0.016-0.426-0.016zM12.462 12.442v0.012z"></path>\n</svg>\n',name:o.WHATSAPP},{icon:e,name:o.FACEBOOK},{icon:l,name:o.TWITTER},{icon:i,name:o.EMAIL},{icon:'\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>link</title>\n<path d="M19.247 23.019l-4.189 4.189c-2.831 2.831-7.435 2.831-10.265 0-1.371-1.372-2.125-3.193-2.125-5.132s0.755-3.761 2.125-5.133l4.189-4.191c0.521-0.521 0.521-1.364 0-1.885s-1.364-0.521-1.885 0l-4.189 4.191c-1.875 1.875-2.907 4.367-2.907 7.019s1.032 5.143 2.907 7.017 4.368 2.907 7.019 2.907 5.143-1.032 7.017-2.908l4.189-4.189c0.521-0.521 0.521-1.364 0-1.885s-1.364-0.52-1.885 0.001zM22.276 9.724c-0.521-0.521-1.364-0.521-1.885 0l-10.667 10.667c-0.521 0.521-0.521 1.364 0 1.885 0.26 0.26 0.601 0.391 0.943 0.391s0.683-0.131 0.943-0.391l10.667-10.667c0.521-0.521 0.521-1.364 0-1.885zM29.093 2.908c-1.875-1.876-4.368-2.908-7.019-2.908s-5.143 1.032-7.017 2.908l-4.189 4.188c-0.521 0.521-0.521 1.364 0 1.885s1.364 0.521 1.885 0l4.189-4.189c2.831-2.831 7.435-2.831 10.265 0 1.371 1.372 2.125 3.193 2.125 5.132s-0.755 3.761-2.125 5.133l-4.189 4.191c-0.521 0.521-0.521 1.364 0 1.885 0.26 0.26 0.601 0.391 0.943 0.391s0.683-0.131 0.943-0.391l4.189-4.191c1.875-1.875 2.907-4.367 2.907-7.019s-1.032-5.143-2.907-7.016z"></path>\n</svg>\n',name:o.COPY_LINK}],this.convertedPlatforms=[],this.url="",this.urlName="",this.platforms="facebook,twitter,whatsapp,email,copy_link"}componentWillLoad(){if(this.host.hasAttribute("aria-label")&&this.host.removeAttribute("aria-label"),document.getElementById("a2a-script"))return;const a=document.createElement("script");a.src="https://static.addtoany.com/menu/page.js",a.setAttribute("id","a2a-script"),a.async=!0,a.onload=function(){window.a2a_config.locale=salla.config.get("user.language_code",salla.lang.getLocale()),window.a2a_config.callbacks=window.a2a_config.callbacks||[],window.a2a_config.callbacks.push({share:a=>{const s={share_via:a.service.toLowerCase(),url:a.url,title:a.title};salla.event.emit("share-element",s)}})},document.body.appendChild(a)}async open(){const a=(new c.timeline).add({targets:this.shareMenu,translateY:[-50,0],opacity:[0,1],duration:300,podding:"0",easing:"easeInOutSine"});a.add({targets:this.shareMenu.children,translateZ:0,translateY:[-30,0],scaleY:[0,1],opacity:[0,1],duration:1400,delay:c.stagger(100)},"-=200"),this.opened=!this.opened,this.opened?this.shareMenu.classList.add("opened"):(a.pause(),a.seek(0),this.shareMenu.classList.remove("opened"))}async refresh(){window.a2a?.init("page")}render(){return s("div",{key:"e45420682a1b9bf686cbb9d3beff5a208505e1c7",class:"s-social-share-wrapper"},s("slot",{key:"265102d26da7ce2d297969e1941b9a5785da3971",name:"widget"},s("salla-button",{key:"9f36a44dc9487f4956c1d8b73f0fcc41cf8a01b8","aria-label":"Share",onClick:()=>this.open(),class:"s-social-share-btn",shape:"icon",fill:"outline",color:"light"},s("span",{key:"b34ed78cd6549bff733de5c542a42ca9aaf805d0",innerHTML:this.opened?n:'\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>share-alt</title>\n<path d="M26.667 21.333c-1.699 0-3.196 0.812-4.173 2.052l-11.912-5.211c0.044-0.276 0.085-0.553 0.085-0.841 0-0.472-0.081-0.923-0.197-1.359l12.361-6.952c0.971 1.009 2.328 1.644 3.836 1.644 2.941 0 5.333-2.392 5.333-5.333s-2.392-5.333-5.333-5.333-5.333 2.392-5.333 5.333c0 0.472 0.081 0.923 0.197 1.359l-12.361 6.952c-0.971-1.009-2.328-1.644-3.836-1.644-2.941 0-5.333 2.392-5.333 5.333s2.392 5.333 5.333 5.333c1.699 0 3.196-0.812 4.173-2.052l11.912 5.211c-0.044 0.276-0.085 0.553-0.085 0.841 0 2.941 2.392 5.333 5.333 5.333s5.333-2.392 5.333-5.333-2.392-5.333-5.333-5.333zM26.667 2.667c1.471 0 2.667 1.196 2.667 2.667s-1.196 2.667-2.667 2.667-2.667-1.196-2.667-2.667 1.196-2.667 2.667-2.667zM5.333 20c-1.471 0-2.667-1.196-2.667-2.667s1.196-2.667 2.667-2.667 2.667 1.196 2.667 2.667-1.196 2.667-2.667 2.667zM26.667 29.333c-1.471 0-2.667-1.196-2.667-2.667s1.196-2.667 2.667-2.667 2.667 1.196 2.667 2.667-1.196 2.667-2.667 2.667z"></path>\n</svg>\n'}))),s("ul",{key:"f8eb408030d409880391b7d13b5a701226b0d42a",ref:a=>this.shareMenu=a,class:"s-social-share-list a2a_kit share","data-a2a-url":this.url?this.url:window.location.href,"data-a2a-title":this.urlName?this.urlName:document.title},this.platforms.split(",").map((a=>s("li",null,s("a",{class:`a2a_button_${a}`,"aria-label":`Share Via ${a}`},this.platformIcons.map((t=>{if(t.name===a)return s("span",{class:"s-social-share-icon",innerHTML:t.icon})}))))))))}get host(){return t(this)}};r.style="";export{r as salla_social_share}
@@ -1,9 +0,0 @@
1
- /*!
2
- * Crafted with ❤ by Salla
3
- */
4
- import{d as e}from"./p-B4SEH_Fg.js";function t(e,t){return t.forEach((function(t){t&&"string"!=typeof t&&!Array.isArray(t)&&Object.keys(t).forEach((function(n){if("default"!==n&&!(n in e)){var E=Object.getOwnPropertyDescriptor(t,n);Object.defineProperty(e,n,E.get?E:{enumerable:!0,get:function(){return t[n]}})}}))})),Object.freeze(e)}var n,E,i={exports:{}},r=n?i.exports:(n=1,i.exports=(E=function(e){var t=e.addFilter,n=e.utils,E=n.Type,i=n.isString,r=n.replaceInString,T=n.guesstimateMimeType,u=n.getExtensionFromFilename,_=n.getFilenameFromURL,o=function(e,t){return e.some((function(e){return/\*$/.test(e)?(n=e,(/^[^/]+/.exec(t)||[]).pop()===n.slice(0,-2)):e===t;var n}))},a=function(e,t,n){if(0===t.length)return!0;var E=function(e){var t="";if(i(e)){var n=_(e),E=u(n);E&&(t=T(E))}else t=e.type;return t}(e);return n?new Promise((function(i,r){n(e,E).then((function(e){o(t,e)?i():r()})).catch(r)})):o(t,E)};return t("SET_ATTRIBUTE_TO_OPTION_MAP",(function(e){return Object.assign(e,{accept:"acceptedFileTypes"})})),t("ALLOW_HOPPER_ITEM",(function(e,t){var n=t.query;return!n("GET_ALLOW_FILE_TYPE_VALIDATION")||a(e,n("GET_ACCEPTED_FILE_TYPES"))})),t("LOAD_FILE",(function(e,t){var n=t.query;return new Promise((function(t,E){if(n("GET_ALLOW_FILE_TYPE_VALIDATION")){var i=n("GET_ACCEPTED_FILE_TYPES"),T=n("GET_FILE_VALIDATE_TYPE_DETECT_TYPE"),u=a(e,i,T),_=function(){var e,t=i.map((e=n("GET_FILE_VALIDATE_TYPE_LABEL_EXPECTED_TYPES_MAP"),function(t){return null!==e[t]&&(e[t]||t)})).filter((function(e){return!1!==e})),T=t.filter((function(e,n){return t.indexOf(e)===n}));E({status:{main:n("GET_LABEL_FILE_TYPE_NOT_ALLOWED"),sub:r(n("GET_FILE_VALIDATE_TYPE_LABEL_EXPECTED_TYPES"),{allTypes:T.join(", "),allButLastType:T.slice(0,-1).join(", "),lastType:T[T.length-1]})}})};if("boolean"==typeof u)return u?t(e):_();u.then((function(){t(e)})).catch(_)}else t(e)}))})),{options:{allowFileTypeValidation:[!0,E.BOOLEAN],acceptedFileTypes:[[],E.ARRAY],labelFileTypeNotAllowed:["File is of invalid type",E.STRING],fileValidateTypeLabelExpectedTypes:["Expects {allButLastType} or {lastType}",E.STRING],fileValidateTypeLabelExpectedTypesMap:[{},E.OBJECT],fileValidateTypeDetectType:[null,E.FUNCTION]}}},"undefined"!=typeof window&&void 0!==window.document&&document.dispatchEvent(new CustomEvent("FilePond:pluginloaded",{detail:E})),E)),T=t({__proto__:null,default:e(r)},[r]);
5
- /*!
6
- * FilePondPluginFileValidateType 1.2.9
7
- * Licensed under MIT, https://opensource.org/licenses/MIT/
8
- * Please visit https://pqina.nl/filepond/ for details.
9
- */export{T as f}