@salla.sa/twilight-components 2.14.402 → 2.14.404

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 (524) hide show
  1. package/dist/cjs/calendar-D-PUoCDH.js +13 -0
  2. package/dist/cjs/{cancel-De6vslRA.js → cancel-B5SbMYEk.js} +2 -2
  3. package/dist/cjs/cart2-B98PSAFN.js +13 -0
  4. package/dist/cjs/{check-x3w3-gpj.js → check-BnVBPQNp.js} +2 -2
  5. package/dist/cjs/{filepond-PWJcd3M3.js → filepond-BGeIVPOk.js} +1 -1
  6. package/dist/cjs/{filepond-plugin-file-poster-Bt4qeA2f.js → filepond-plugin-file-poster-Dj0y59Ov.js} +1 -1
  7. package/dist/cjs/{filepond-plugin-file-validate-size-C-9PDDsS.js → filepond-plugin-file-validate-size-B8XJT5tN.js} +1 -1
  8. package/dist/cjs/{filepond-plugin-file-validate-type-tA2SP9JO.js → filepond-plugin-file-validate-type-wrMrxOn7.js} +1 -1
  9. package/dist/cjs/{filepond-plugin-image-edit-jcfxLe8v.js → filepond-plugin-image-edit-D3Iapkhv.js} +1 -1
  10. package/dist/cjs/{filepond-plugin-image-exif-orientation-DVDjcytZ.js → filepond-plugin-image-exif-orientation-BbEM_vMd.js} +1 -1
  11. package/dist/cjs/{filepond-plugin-image-preview-CenIamTW.js → filepond-plugin-image-preview-Bz-ITSEo.js} +1 -1
  12. package/dist/cjs/functions-DVMonIet.js +74 -0
  13. package/dist/{esm/gift-BChI23pG.js → cjs/gift-DbNivqYO.js} +4 -2
  14. package/dist/cjs/gift-sharing-BE0uszUm.js +13 -0
  15. package/dist/cjs/{index-Cuq57q32.js → index-B3JuQExz.js} +61 -26
  16. package/dist/cjs/{index-ZlRhYmjA.js → index-B587wk8w.js} +1 -1
  17. package/dist/cjs/iphone-x-qC21wCLj.js +13 -0
  18. package/dist/cjs/loader.cjs.js +2 -2
  19. package/dist/cjs/{mail-CO8cFZH7.js → mail-Bgvt2hc9.js} +2 -2
  20. package/dist/cjs/percentage-Fs83gq6Q.js +21 -0
  21. package/dist/cjs/salla-accordion-body_2.cjs.entry.js +1 -1
  22. package/dist/cjs/salla-accordion_6.cjs.entry.js +5 -5
  23. package/dist/cjs/salla-add-product-button_4.cjs.entry.js +5 -5
  24. package/dist/cjs/salla-advertisement.cjs.entry.js +1 -1
  25. package/dist/cjs/salla-alert_2.cjs.entry.js +3 -3
  26. package/dist/cjs/salla-app-install-alert.cjs.entry.js +1 -1
  27. package/dist/cjs/salla-apps-icons.cjs.entry.js +1 -1
  28. package/dist/cjs/salla-badge.cjs.entry.js +95 -0
  29. package/dist/cjs/salla-booking-field_7.cjs.entry.js +20 -26
  30. package/dist/cjs/salla-bullet-delivery.cjs.entry.js +2 -2
  31. package/dist/cjs/salla-cart-coupons.cjs.entry.js +2 -2
  32. package/dist/cjs/salla-cart-item-offers_2.cjs.entry.js +4 -4
  33. package/dist/cjs/salla-comment-form_8.cjs.entry.js +11 -11
  34. package/dist/cjs/salla-conditional-offer.cjs.entry.js +1 -1
  35. package/dist/cjs/salla-contacts.cjs.entry.js +3 -3
  36. package/dist/cjs/salla-cookies-bar.cjs.entry.js +1 -1
  37. package/dist/cjs/salla-count-down.cjs.entry.js +2 -2
  38. package/dist/cjs/salla-custom-fields.cjs.entry.js +1 -1
  39. package/dist/cjs/salla-delivery-promise.cjs.entry.js +1 -1
  40. package/dist/cjs/salla-edit-order-button.cjs.entry.js +65 -0
  41. package/dist/cjs/salla-filters-widget.cjs.entry.js +3 -3
  42. package/dist/cjs/salla-filters.cjs.entry.js +2 -2
  43. package/dist/cjs/salla-fulfillment-methods.cjs.entry.js +1 -1
  44. package/dist/cjs/salla-gifting.cjs.entry.js +7 -13
  45. package/dist/cjs/salla-hook.cjs.entry.js +2 -2
  46. package/dist/cjs/salla-infinite-scroll.cjs.entry.js +1 -1
  47. package/dist/cjs/salla-installment.cjs.entry.js +1 -1
  48. package/dist/cjs/salla-list-tile.cjs.entry.js +2 -2
  49. package/dist/cjs/salla-localization-modal.cjs.entry.js +2 -2
  50. package/dist/cjs/salla-login-modal.cjs.entry.js +1 -1
  51. package/dist/cjs/salla-loyalty-banner.cjs.entry.js +69 -0
  52. package/dist/cjs/salla-loyalty-hero_2.cjs.entry.js +239 -0
  53. package/dist/cjs/salla-loyalty-panel.cjs.entry.js +103 -0
  54. package/dist/cjs/salla-loyalty-prize-item.cjs.entry.js +2 -2
  55. package/dist/cjs/salla-loyalty-program.cjs.entry.js +108 -64
  56. package/dist/cjs/salla-loyalty-reward.cjs.entry.js +54 -0
  57. package/dist/cjs/salla-loyalty.cjs.entry.js +3 -3
  58. package/dist/cjs/salla-maintenance-alert.cjs.entry.js +3 -3
  59. package/dist/cjs/salla-map.cjs.entry.js +4 -4
  60. package/dist/cjs/salla-menu.cjs.entry.js +1 -1
  61. package/dist/cjs/salla-metadata.cjs.entry.js +1 -1
  62. package/dist/cjs/salla-multiple-bundle-product-cart_2.cjs.entry.js +4 -4
  63. package/dist/cjs/salla-multiple-bundle-product-options-modal_2.cjs.entry.js +6 -6
  64. package/dist/cjs/salla-multiple-bundle-product.cjs.entry.js +2 -2
  65. package/dist/cjs/salla-notification-item.cjs.entry.js +2 -2
  66. package/dist/cjs/salla-notifications.cjs.entry.js +1 -1
  67. package/dist/cjs/salla-offer-modal.cjs.entry.js +5 -16
  68. package/dist/cjs/salla-offer.cjs.entry.js +1 -1
  69. package/dist/cjs/salla-order-details-multiple-bundle-product.cjs.entry.js +1 -1
  70. package/dist/cjs/salla-order-details-options.cjs.entry.js +1 -1
  71. package/dist/cjs/salla-order-details.cjs.entry.js +2 -2
  72. package/dist/cjs/salla-order-edit-item.cjs.entry.js +1 -1
  73. package/dist/cjs/salla-order-edit.cjs.entry.js +1 -1
  74. package/dist/cjs/salla-order-summary.cjs.entry.js +4 -4
  75. package/dist/cjs/salla-order-totals-card.cjs.entry.js +1 -1
  76. package/dist/cjs/salla-orders.cjs.entry.js +1 -1
  77. package/dist/cjs/salla-payments.cjs.entry.js +3 -3
  78. package/dist/cjs/salla-placeholder.cjs.entry.js +2 -2
  79. package/dist/cjs/salla-price-range.cjs.entry.js +3 -3
  80. package/dist/cjs/{salla-product-card.cjs.entry.js → salla-product-card_2.cjs.entry.js} +120 -6
  81. package/dist/cjs/salla-product-size-guide.cjs.entry.js +3 -3
  82. package/dist/cjs/salla-products-list.cjs.entry.js +1 -1
  83. package/dist/cjs/salla-progress-bar.cjs.entry.js +1 -1
  84. package/dist/cjs/salla-quick-order.cjs.entry.js +6 -12
  85. package/dist/cjs/salla-rating-modal.cjs.entry.js +3 -3
  86. package/dist/cjs/salla-reward-action_4.cjs.entry.js +243 -0
  87. package/dist/cjs/salla-scopes.cjs.entry.js +2 -2
  88. package/dist/cjs/salla-search.cjs.entry.js +6 -6
  89. package/dist/cjs/salla-skeleton.cjs.entry.js +2 -2
  90. package/dist/cjs/salla-slider.cjs.entry.js +1 -1
  91. package/dist/cjs/salla-social-share.cjs.entry.js +5 -5
  92. package/dist/cjs/salla-social.cjs.entry.js +2 -2
  93. package/dist/cjs/salla-tab-content_3.cjs.entry.js +4 -4
  94. package/dist/cjs/salla-tiered-offer.cjs.entry.js +1 -1
  95. package/dist/cjs/salla-tooltip.cjs.entry.js +2 -2
  96. package/dist/cjs/salla-trust-badges.cjs.entry.js +1 -1
  97. package/dist/cjs/salla-user-menu.cjs.entry.js +7 -6
  98. package/dist/cjs/salla-user-profile.cjs.entry.js +1 -1
  99. package/dist/cjs/salla-user-settings.cjs.entry.js +2 -2
  100. package/dist/cjs/salla-verify.cjs.entry.js +3 -3
  101. package/dist/cjs/salla-wallet.cjs.entry.js +1 -1
  102. package/dist/cjs/shipping-CPYcgyCL.js +13 -0
  103. package/dist/cjs/tag-D-PcUR33.js +12 -0
  104. package/dist/cjs/tracked-promise-Ef3pfQOZ.js +31 -0
  105. package/dist/cjs/translations-DMwpLvqi.js +294 -0
  106. package/dist/cjs/twilight.cjs.js +2 -2
  107. package/dist/cjs/user-add-BCGrddZS.js +13 -0
  108. package/dist/cjs/{vanilla-picker-C8OtoDdM.js → vanilla-picker-BgPOS3MC.js} +1 -1
  109. package/dist/collection/assets/images/prize-image.svg +1 -0
  110. package/dist/collection/collection-manifest.json +11 -0
  111. package/dist/collection/components/salla-badge/salla-badge.css +0 -0
  112. package/dist/collection/components/salla-badge/salla-badge.js +117 -0
  113. package/dist/collection/components/salla-booking-field/salla-booking-field.js +1 -1
  114. package/dist/collection/components/salla-bottom-alert/salla-bottom-alert.js +2 -2
  115. package/dist/collection/components/salla-bullet-delivery/salla-bullet-delivery.js +1 -1
  116. package/dist/collection/components/salla-cart-coupons/salla-cart-coupons.js +1 -1
  117. package/dist/collection/components/salla-cart-summary/salla-cart-summary.js +1 -1
  118. package/dist/collection/components/salla-color-picker/salla-color-picker.js +1 -1
  119. package/dist/collection/components/salla-comment-form/salla-comment-form.js +1 -1
  120. package/dist/collection/components/salla-comments/salla-comment-item.js +3 -3
  121. package/dist/collection/components/salla-conditional-fields/salla-conditional-fields.js +1 -1
  122. package/dist/collection/components/salla-count-down/salla-count-down.js +1 -1
  123. package/dist/collection/components/salla-datetime-picker/salla-datetime-picker.js +1 -1
  124. package/dist/collection/components/salla-edit-order-button/salla-edit-order-button.css +3 -0
  125. package/dist/collection/components/salla-edit-order-button/salla-edit-order-button.js +99 -0
  126. package/dist/collection/components/salla-file-upload/salla-file-upload.js +2 -2
  127. package/dist/collection/components/salla-filters/salla-filters.js +1 -1
  128. package/dist/collection/components/salla-filters-widget/salla-filters-widget.js +2 -2
  129. package/dist/collection/components/salla-gifting/salla-gifting.js +2 -2
  130. package/dist/collection/components/salla-hook/salla-hook.js +1 -1
  131. package/dist/collection/components/salla-list-tile/salla-list-tile.js +1 -1
  132. package/dist/collection/components/salla-loading/salla-loading.js +1 -1
  133. package/dist/collection/components/salla-localization-modal/salla-localization-modal.js +1 -1
  134. package/dist/collection/components/salla-loyalty/salla-loyalty-prize-item.js +1 -1
  135. package/dist/collection/components/salla-loyalty-program/functions.js +53 -0
  136. package/dist/collection/components/salla-loyalty-program/interfaces.js +8 -1
  137. package/dist/collection/components/salla-loyalty-program/salla-loyalty-banner.js +69 -0
  138. package/dist/collection/components/salla-loyalty-program/salla-loyalty-hero.js +87 -0
  139. package/dist/collection/components/salla-loyalty-program/salla-loyalty-panel.js +171 -0
  140. package/dist/collection/components/salla-loyalty-program/salla-loyalty-point.js +219 -0
  141. package/dist/collection/components/salla-loyalty-program/salla-loyalty-program.js +104 -65
  142. package/dist/collection/components/salla-loyalty-program/salla-loyalty-reward.js +166 -0
  143. package/dist/collection/components/salla-loyalty-program/salla-reward-action.js +93 -0
  144. package/dist/collection/components/salla-loyalty-program/salla-reward-card.js +92 -0
  145. package/dist/collection/components/salla-loyalty-program/salla-reward-details.js +206 -0
  146. package/dist/collection/components/salla-loyalty-program/salla-reward-exchange.js +109 -0
  147. package/dist/collection/components/salla-loyalty-program/translations.js +290 -0
  148. package/dist/collection/components/salla-maintenance-alert/salla-maintenance-alert.js +1 -1
  149. package/dist/collection/components/salla-map/salla-map.js +3 -3
  150. package/dist/collection/components/salla-multiple-bundle-product/components/salla-multiple-bundle-product-cart.js +1 -1
  151. package/dist/collection/components/salla-multiple-bundle-product/components/salla-multiple-bundle-product-details.js +2 -2
  152. package/dist/collection/components/salla-multiple-bundle-product/components/salla-multiple-bundle-product-options-modal.js +4 -4
  153. package/dist/collection/components/salla-multiple-bundle-product/components/salla-multiple-bundle-product-slider.js +1 -1
  154. package/dist/collection/components/salla-multiple-bundle-product/salla-multiple-bundle-product.js +1 -1
  155. package/dist/collection/components/salla-notifications/salla-notification-item.js +1 -1
  156. package/dist/collection/components/salla-offer-modal/salla-offer-modal.js +1 -1
  157. package/dist/collection/components/salla-order-details/salla-order-details.js +1 -1
  158. package/dist/collection/components/salla-order-summary/salla-order-summary.js +1 -1
  159. package/dist/collection/components/salla-payments/salla-payments.js +2 -2
  160. package/dist/collection/components/salla-placeholder/salla-placeholder.js +1 -1
  161. package/dist/collection/components/salla-price-range/salla-price-range.js +2 -2
  162. package/dist/collection/components/salla-product-availability/salla-product-availability.js +1 -1
  163. package/dist/collection/components/salla-product-card/salla-product-card.js +5 -5
  164. package/dist/collection/components/salla-product-size-guide/salla-product-size-guide.js +2 -2
  165. package/dist/collection/components/salla-quantity-input/salla-quantity-input.js +1 -1
  166. package/dist/collection/components/salla-quick-buy/salla-quick-buy.js +1 -1
  167. package/dist/collection/components/salla-review-card/salla-review-card.js +1 -1
  168. package/dist/collection/components/salla-reviews/salla-reviews.js +1 -1
  169. package/dist/collection/components/salla-reviews-page/salla-reviews-page.js +1 -1
  170. package/dist/collection/components/salla-scopes/salla-scopes.js +1 -1
  171. package/dist/collection/components/salla-search/salla-search.js +5 -5
  172. package/dist/collection/components/salla-skeleton/salla-skeleton.js +1 -1
  173. package/dist/collection/components/salla-social/salla-social.js +1 -1
  174. package/dist/collection/components/salla-social-share/salla-social-share.js +1 -1
  175. package/dist/collection/components/salla-tabs/salla-tab-content.js +1 -1
  176. package/dist/collection/components/salla-tabs/salla-tab-header.js +1 -1
  177. package/dist/collection/components/salla-tabs/salla-tabs.js +1 -1
  178. package/dist/collection/components/salla-tel-input/salla-tel-input.js +1 -1
  179. package/dist/collection/components/salla-tooltip/salla-tooltip.js +1 -1
  180. package/dist/collection/components/salla-user-menu/salla-user-menu.js +2 -1
  181. package/dist/collection/components/salla-user-settings/salla-user-settings.js +1 -1
  182. package/dist/components/calendar.js +11 -0
  183. package/dist/components/cart2.js +11 -0
  184. package/dist/components/functions.js +68 -0
  185. package/dist/components/gift-sharing.js +11 -0
  186. package/dist/components/index.js +2 -2
  187. package/dist/components/iphone-x.js +11 -0
  188. package/dist/components/percentage.js +18 -0
  189. package/dist/components/salla-badge.d.ts +11 -0
  190. package/dist/components/salla-badge.js +9 -0
  191. package/dist/components/salla-badge2.js +112 -0
  192. package/dist/components/salla-booking-field2.js +3 -9
  193. package/dist/components/salla-bottom-alert.js +2 -2
  194. package/dist/components/salla-bullet-delivery.js +1 -1
  195. package/dist/components/salla-cart-coupons.js +1 -1
  196. package/dist/components/salla-cart-summary.js +1 -1
  197. package/dist/components/salla-color-picker2.js +1 -1
  198. package/dist/components/salla-comment-form2.js +1 -1
  199. package/dist/components/salla-comment-item2.js +3 -3
  200. package/dist/components/salla-conditional-fields2.js +1 -1
  201. package/dist/components/salla-count-down2.js +1 -1
  202. package/dist/components/salla-datetime-picker2.js +1 -1
  203. package/dist/components/salla-edit-order-button.d.ts +11 -0
  204. package/dist/components/salla-edit-order-button.js +99 -0
  205. package/dist/components/salla-file-upload2.js +2 -2
  206. package/dist/components/salla-filters-widget2.js +2 -2
  207. package/dist/components/salla-filters.js +1 -1
  208. package/dist/components/salla-gifting.js +4 -10
  209. package/dist/components/salla-hook.js +1 -1
  210. package/dist/components/salla-list-tile2.js +1 -1
  211. package/dist/components/salla-loading2.js +1 -1
  212. package/dist/components/salla-localization-modal.js +1 -1
  213. package/dist/components/salla-loyalty-banner.d.ts +11 -0
  214. package/dist/components/salla-loyalty-banner.js +103 -0
  215. package/dist/components/salla-loyalty-hero.d.ts +11 -0
  216. package/dist/components/salla-loyalty-hero.js +9 -0
  217. package/dist/components/salla-loyalty-hero2.js +43 -0
  218. package/dist/components/salla-loyalty-panel.d.ts +11 -0
  219. package/dist/components/salla-loyalty-panel.js +250 -0
  220. package/dist/components/salla-loyalty-point.d.ts +11 -0
  221. package/dist/components/salla-loyalty-point.js +9 -0
  222. package/dist/components/salla-loyalty-point2.js +259 -0
  223. package/dist/components/salla-loyalty-prize-item.js +1 -1
  224. package/dist/components/salla-loyalty-program.js +233 -70
  225. package/dist/components/salla-loyalty-reward.d.ts +11 -0
  226. package/dist/components/salla-loyalty-reward.js +80 -0
  227. package/dist/components/salla-maintenance-alert.js +1 -1
  228. package/dist/components/salla-map2.js +3 -3
  229. package/dist/components/salla-multiple-bundle-product-cart2.js +1 -1
  230. package/dist/components/salla-multiple-bundle-product-details2.js +2 -2
  231. package/dist/components/salla-multiple-bundle-product-options-modal2.js +4 -4
  232. package/dist/components/salla-multiple-bundle-product-slider2.js +1 -1
  233. package/dist/components/salla-multiple-bundle-product.js +1 -1
  234. package/dist/components/salla-notification-item2.js +1 -1
  235. package/dist/components/salla-offer-modal.js +3 -14
  236. package/dist/components/salla-order-details.js +1 -1
  237. package/dist/components/salla-order-summary.js +1 -1
  238. package/dist/components/salla-payments.js +2 -2
  239. package/dist/components/salla-placeholder2.js +1 -1
  240. package/dist/components/salla-price-range2.js +2 -2
  241. package/dist/components/salla-product-availability2.js +1 -1
  242. package/dist/components/salla-product-card2.js +5 -5
  243. package/dist/components/salla-product-size-guide.js +2 -2
  244. package/dist/components/salla-quantity-input2.js +1 -1
  245. package/dist/components/salla-quick-buy2.js +1 -1
  246. package/dist/components/salla-quick-order.js +1 -7
  247. package/dist/components/salla-review-card2.js +1 -1
  248. package/dist/components/salla-reviews-page.js +1 -1
  249. package/dist/components/salla-reviews.js +1 -1
  250. package/dist/components/salla-reward-action.d.ts +11 -0
  251. package/dist/components/salla-reward-action.js +9 -0
  252. package/dist/components/salla-reward-action2.js +56 -0
  253. package/dist/components/salla-reward-card.d.ts +11 -0
  254. package/dist/components/salla-reward-card.js +9 -0
  255. package/dist/components/salla-reward-card2.js +44 -0
  256. package/dist/components/salla-reward-details.d.ts +11 -0
  257. package/dist/components/salla-reward-details.js +9 -0
  258. package/dist/components/salla-reward-details2.js +266 -0
  259. package/dist/components/salla-reward-exchange.d.ts +11 -0
  260. package/dist/components/salla-reward-exchange.js +9 -0
  261. package/dist/components/salla-reward-exchange2.js +81 -0
  262. package/dist/components/salla-scopes.js +1 -1
  263. package/dist/components/salla-search.js +5 -5
  264. package/dist/components/salla-skeleton2.js +1 -1
  265. package/dist/components/salla-social-share.js +1 -1
  266. package/dist/components/salla-social.js +1 -1
  267. package/dist/components/salla-tab-content2.js +1 -1
  268. package/dist/components/salla-tab-header2.js +1 -1
  269. package/dist/components/salla-tabs2.js +1 -1
  270. package/dist/components/salla-tel-input2.js +1 -1
  271. package/dist/components/salla-tooltip2.js +1 -1
  272. package/dist/components/salla-user-menu.js +2 -1
  273. package/dist/components/salla-user-settings.js +1 -1
  274. package/dist/components/shipping.js +11 -0
  275. package/dist/components/tag.js +10 -0
  276. package/dist/components/tracked-promise.js +29 -0
  277. package/dist/components/translations.js +292 -0
  278. package/dist/esm/calendar-BkmanTR_.js +11 -0
  279. package/dist/esm/{cancel-BsLF_HK7.js → cancel-8Tsmrwno.js} +2 -2
  280. package/dist/esm/cart2-D1s2kXqL.js +11 -0
  281. package/dist/esm/{check-BsXh13x8.js → check-BZp0rKEO.js} +2 -2
  282. package/dist/esm/{filepond-kua7JWt0.js → filepond-TQwRQEj7.js} +1 -1
  283. package/dist/esm/{filepond-plugin-file-poster-D9ZjwPcg.js → filepond-plugin-file-poster-D6Scyf7M.js} +1 -1
  284. package/dist/esm/{filepond-plugin-file-validate-size-BVMhUXTI.js → filepond-plugin-file-validate-size-DmV95X-a.js} +1 -1
  285. package/dist/esm/{filepond-plugin-file-validate-type-CkwmRCJd.js → filepond-plugin-file-validate-type-BxcIYCpF.js} +1 -1
  286. package/dist/esm/{filepond-plugin-image-edit-YEt9I2Ff.js → filepond-plugin-image-edit-C_dhSLv3.js} +1 -1
  287. package/dist/esm/{filepond-plugin-image-exif-orientation-B5Q7AlDn.js → filepond-plugin-image-exif-orientation-C0v1CD3U.js} +1 -1
  288. package/dist/esm/{filepond-plugin-image-preview-B3J-p8BK.js → filepond-plugin-image-preview-DjsC29px.js} +1 -1
  289. package/dist/esm/functions-CsHz6jUn.js +68 -0
  290. package/dist/{cjs/gift-CJ-3Yw_x.js → esm/gift-CXRKXFgT.js} +2 -4
  291. package/dist/esm/gift-sharing-0-eTJXSD.js +11 -0
  292. package/dist/esm/{index-Qfjn4tFb.js → index-C_WMBvxX.js} +1 -1
  293. package/dist/esm/{index-BYCfehfD.js → index-aDXaoBqI.js} +61 -27
  294. package/dist/esm/iphone-x-CciN5Q_x.js +11 -0
  295. package/dist/esm/loader.js +3 -3
  296. package/dist/esm/{mail-DmgxDvXL.js → mail-DLNIOD9t.js} +2 -2
  297. package/dist/esm/percentage-Bs6JxDkg.js +18 -0
  298. package/dist/esm/salla-accordion-body_2.entry.js +1 -1
  299. package/dist/esm/salla-accordion_6.entry.js +5 -5
  300. package/dist/esm/salla-add-product-button_4.entry.js +5 -5
  301. package/dist/esm/salla-advertisement.entry.js +1 -1
  302. package/dist/esm/salla-alert_2.entry.js +3 -3
  303. package/dist/esm/salla-app-install-alert.entry.js +1 -1
  304. package/dist/esm/salla-apps-icons.entry.js +1 -1
  305. package/dist/esm/salla-badge.entry.js +93 -0
  306. package/dist/esm/salla-booking-field_7.entry.js +20 -26
  307. package/dist/esm/salla-bullet-delivery.entry.js +2 -2
  308. package/dist/esm/salla-cart-coupons.entry.js +2 -2
  309. package/dist/esm/salla-cart-item-offers_2.entry.js +4 -4
  310. package/dist/esm/salla-comment-form_8.entry.js +11 -11
  311. package/dist/esm/salla-conditional-offer.entry.js +1 -1
  312. package/dist/esm/salla-contacts.entry.js +3 -3
  313. package/dist/esm/salla-cookies-bar.entry.js +1 -1
  314. package/dist/esm/salla-count-down.entry.js +2 -2
  315. package/dist/esm/salla-custom-fields.entry.js +1 -1
  316. package/dist/esm/salla-delivery-promise.entry.js +1 -1
  317. package/dist/esm/salla-edit-order-button.entry.js +63 -0
  318. package/dist/esm/salla-filters-widget.entry.js +3 -3
  319. package/dist/esm/salla-filters.entry.js +2 -2
  320. package/dist/esm/salla-fulfillment-methods.entry.js +1 -1
  321. package/dist/esm/salla-gifting.entry.js +7 -13
  322. package/dist/esm/salla-hook.entry.js +2 -2
  323. package/dist/esm/salla-infinite-scroll.entry.js +1 -1
  324. package/dist/esm/salla-installment.entry.js +1 -1
  325. package/dist/esm/salla-list-tile.entry.js +2 -2
  326. package/dist/esm/salla-localization-modal.entry.js +2 -2
  327. package/dist/esm/salla-login-modal.entry.js +1 -1
  328. package/dist/esm/salla-loyalty-banner.entry.js +67 -0
  329. package/dist/esm/salla-loyalty-hero_2.entry.js +236 -0
  330. package/dist/esm/salla-loyalty-panel.entry.js +101 -0
  331. package/dist/esm/salla-loyalty-prize-item.entry.js +2 -2
  332. package/dist/esm/salla-loyalty-program.entry.js +108 -64
  333. package/dist/esm/salla-loyalty-reward.entry.js +52 -0
  334. package/dist/esm/salla-loyalty.entry.js +3 -3
  335. package/dist/esm/salla-maintenance-alert.entry.js +3 -3
  336. package/dist/esm/salla-map.entry.js +4 -4
  337. package/dist/esm/salla-menu.entry.js +1 -1
  338. package/dist/esm/salla-metadata.entry.js +1 -1
  339. package/dist/esm/salla-multiple-bundle-product-cart_2.entry.js +4 -4
  340. package/dist/esm/salla-multiple-bundle-product-options-modal_2.entry.js +6 -6
  341. package/dist/esm/salla-multiple-bundle-product.entry.js +2 -2
  342. package/dist/esm/salla-notification-item.entry.js +2 -2
  343. package/dist/esm/salla-notifications.entry.js +1 -1
  344. package/dist/esm/salla-offer-modal.entry.js +5 -16
  345. package/dist/esm/salla-offer.entry.js +1 -1
  346. package/dist/esm/salla-order-details-multiple-bundle-product.entry.js +1 -1
  347. package/dist/esm/salla-order-details-options.entry.js +1 -1
  348. package/dist/esm/salla-order-details.entry.js +2 -2
  349. package/dist/esm/salla-order-edit-item.entry.js +1 -1
  350. package/dist/esm/salla-order-edit.entry.js +1 -1
  351. package/dist/esm/salla-order-summary.entry.js +4 -4
  352. package/dist/esm/salla-order-totals-card.entry.js +1 -1
  353. package/dist/esm/salla-orders.entry.js +1 -1
  354. package/dist/esm/salla-payments.entry.js +3 -3
  355. package/dist/esm/salla-placeholder.entry.js +2 -2
  356. package/dist/esm/salla-price-range.entry.js +3 -3
  357. package/dist/esm/{salla-product-card.entry.js → salla-product-card_2.entry.js} +120 -7
  358. package/dist/esm/salla-product-size-guide.entry.js +3 -3
  359. package/dist/esm/salla-products-list.entry.js +1 -1
  360. package/dist/esm/salla-progress-bar.entry.js +1 -1
  361. package/dist/esm/salla-quick-order.entry.js +6 -12
  362. package/dist/esm/salla-rating-modal.entry.js +3 -3
  363. package/dist/esm/salla-reward-action_4.entry.js +238 -0
  364. package/dist/esm/salla-scopes.entry.js +2 -2
  365. package/dist/esm/salla-search.entry.js +6 -6
  366. package/dist/esm/salla-skeleton.entry.js +2 -2
  367. package/dist/esm/salla-slider.entry.js +1 -1
  368. package/dist/esm/salla-social-share.entry.js +5 -5
  369. package/dist/esm/salla-social.entry.js +2 -2
  370. package/dist/esm/salla-tab-content_3.entry.js +4 -4
  371. package/dist/esm/salla-tiered-offer.entry.js +1 -1
  372. package/dist/esm/salla-tooltip.entry.js +2 -2
  373. package/dist/esm/salla-trust-badges.entry.js +1 -1
  374. package/dist/esm/salla-user-menu.entry.js +7 -6
  375. package/dist/esm/salla-user-profile.entry.js +1 -1
  376. package/dist/esm/salla-user-settings.entry.js +2 -2
  377. package/dist/esm/salla-verify.entry.js +3 -3
  378. package/dist/esm/salla-wallet.entry.js +1 -1
  379. package/dist/esm/shipping-CZRcMGA9.js +11 -0
  380. package/dist/esm/tag-cgSL_BIo.js +10 -0
  381. package/dist/esm/tracked-promise-DftQnHNU.js +29 -0
  382. package/dist/esm/translations-B-Rj6b9M.js +292 -0
  383. package/dist/esm/twilight.js +3 -3
  384. package/dist/esm/user-add-QpH8MU22.js +11 -0
  385. package/dist/esm/{vanilla-picker-B4glVCCp.js → vanilla-picker-D_u7k2C7.js} +1 -1
  386. package/dist/twilight/p-0-eTJXSD.js +4 -0
  387. package/dist/twilight/{p-5381a86d.entry.js → p-00a64a38.entry.js} +1 -1
  388. package/dist/twilight/p-0930f5b4.entry.js +4 -0
  389. package/dist/twilight/p-0d660e1f.entry.js +4 -0
  390. package/dist/twilight/p-14210f63.entry.js +4 -0
  391. package/dist/twilight/{p-65928570.entry.js → p-18e842b3.entry.js} +1 -1
  392. package/dist/twilight/p-196754b9.entry.js +4 -0
  393. package/dist/twilight/p-19801f8a.entry.js +4 -0
  394. package/dist/twilight/{p-90045f50.entry.js → p-19b2712e.entry.js} +1 -1
  395. package/dist/twilight/{p-d9b8aa69.entry.js → p-1d9285ce.entry.js} +1 -1
  396. package/dist/twilight/{p-f8527980.entry.js → p-1ef01404.entry.js} +1 -1
  397. package/dist/twilight/{p-6cf0e5f0.entry.js → p-205a52b1.entry.js} +1 -1
  398. package/dist/twilight/p-20b32fe8.entry.js +4 -0
  399. package/dist/twilight/{p-0cfd333a.entry.js → p-225fe66e.entry.js} +1 -1
  400. package/dist/twilight/p-24b05b1a.entry.js +4 -0
  401. package/dist/twilight/{p-62b949f1.entry.js → p-25b36736.entry.js} +1 -1
  402. package/dist/twilight/{p-5871fc28.entry.js → p-27d8eddd.entry.js} +1 -1
  403. package/dist/twilight/{p-64fe6c2f.entry.js → p-29bc5464.entry.js} +1 -1
  404. package/dist/twilight/{p-ac973857.entry.js → p-36e9a803.entry.js} +1 -1
  405. package/dist/twilight/{p-6f0a262a.entry.js → p-3b0558c4.entry.js} +1 -1
  406. package/dist/twilight/{p-ebb782d3.entry.js → p-41df3651.entry.js} +1 -1
  407. package/dist/twilight/{p-5ca700cd.entry.js → p-44369f67.entry.js} +1 -1
  408. package/dist/twilight/{p-30695c34.entry.js → p-444a8a35.entry.js} +1 -1
  409. package/dist/twilight/{p-15d44ede.entry.js → p-4d27be11.entry.js} +1 -1
  410. package/dist/twilight/{p-60aa25f0.entry.js → p-4f25c507.entry.js} +1 -1
  411. package/dist/twilight/{p-af6a34af.entry.js → p-4feac98b.entry.js} +1 -1
  412. package/dist/twilight/{p-97aad44a.entry.js → p-5863784a.entry.js} +1 -1
  413. package/dist/twilight/p-59e8585a.entry.js +4 -0
  414. package/dist/twilight/{p-3df24aaf.entry.js → p-59eab6b7.entry.js} +1 -1
  415. package/dist/twilight/p-5aabe849.entry.js +4 -0
  416. package/dist/twilight/{p-d112b260.entry.js → p-5e24d043.entry.js} +1 -1
  417. package/dist/twilight/p-61358d11.entry.js +4 -0
  418. package/dist/twilight/{p-ee14a23d.entry.js → p-63d277c4.entry.js} +1 -1
  419. package/dist/twilight/{p-f68e2787.entry.js → p-6752ef5e.entry.js} +1 -1
  420. package/dist/twilight/p-6c573616.entry.js +4 -0
  421. package/dist/twilight/{p-f4060b10.entry.js → p-6d0a0866.entry.js} +1 -1
  422. package/dist/twilight/{p-ea0c19be.entry.js → p-6dfb4b36.entry.js} +1 -1
  423. package/dist/twilight/{p-164ae46f.entry.js → p-7ab5a0a3.entry.js} +1 -1
  424. package/dist/twilight/{p-d130f149.entry.js → p-7bcced89.entry.js} +1 -1
  425. package/dist/twilight/{p-4797dab5.entry.js → p-7e04b708.entry.js} +1 -1
  426. package/dist/twilight/{p-3ed67200.entry.js → p-7ee3d2ce.entry.js} +1 -1
  427. package/dist/twilight/{p-ec873193.entry.js → p-7f5d2abb.entry.js} +1 -1
  428. package/dist/twilight/{p-e5ccdc1d.entry.js → p-81b539fc.entry.js} +1 -1
  429. package/dist/twilight/{p-2a19f553.entry.js → p-8237cece.entry.js} +1 -1
  430. package/dist/twilight/{p-887c9a29.entry.js → p-83880a8d.entry.js} +1 -1
  431. package/dist/twilight/{p-BsLF_HK7.js → p-8Tsmrwno.js} +1 -1
  432. package/dist/twilight/p-8a55874d.entry.js +4 -0
  433. package/dist/twilight/{p-b80c87f3.entry.js → p-8bc3feef.entry.js} +1 -1
  434. package/dist/twilight/{p-011ff091.entry.js → p-8c8c7d88.entry.js} +1 -1
  435. package/dist/twilight/{p-f8183098.entry.js → p-8e5c7dad.entry.js} +1 -1
  436. package/dist/twilight/{p-2edec63c.entry.js → p-913dfdeb.entry.js} +1 -1
  437. package/dist/twilight/{p-9XUl8eNt.js → p-9VcxoAaz.js} +1 -1
  438. package/dist/twilight/p-B-Rj6b9M.js +4 -0
  439. package/dist/twilight/{p-DtXQ785R.js → p-BAAK-Wog.js} +1 -1
  440. package/dist/twilight/{p-Dx9FGzIq.js → p-BVp3vitI.js} +1 -1
  441. package/dist/twilight/{p-BsXh13x8.js → p-BZp0rKEO.js} +1 -1
  442. package/dist/twilight/{p-DPak7cFa.js → p-BaM5mo9g.js} +1 -1
  443. package/dist/twilight/{p-D2bKqo2L.js → p-BhnvZDje.js} +1 -1
  444. package/dist/twilight/p-BkmanTR_.js +4 -0
  445. package/dist/twilight/p-Bs6JxDkg.js +4 -0
  446. package/dist/twilight/{p-a8mIwFp8.js → p-BvzXDYao.js} +1 -1
  447. package/dist/twilight/{p-CVG84YNJ.js → p-Bzuww4Jp.js} +1 -1
  448. package/dist/twilight/p-CVVRdz9l.js +4 -0
  449. package/dist/twilight/{p-BChI23pG.js → p-CXRKXFgT.js} +1 -1
  450. package/dist/twilight/p-CZRcMGA9.js +4 -0
  451. package/dist/twilight/p-CciN5Q_x.js +4 -0
  452. package/dist/twilight/p-D1s2kXqL.js +4 -0
  453. package/dist/twilight/{p-DmgxDvXL.js → p-DLNIOD9t.js} +1 -1
  454. package/dist/twilight/{p-C45ROGL4.js → p-DboJwcoy.js} +1 -1
  455. package/dist/twilight/{p-Wts3eSQu.js → p-Jii8QiXD.js} +1 -1
  456. package/dist/twilight/p-QpH8MU22.js +4 -0
  457. package/dist/twilight/p-UAJe1KFk.js +4 -0
  458. package/dist/twilight/{p-BYCfehfD.js → p-aDXaoBqI.js} +2 -2
  459. package/dist/twilight/{p-1819894b.entry.js → p-ae8d11a1.entry.js} +1 -1
  460. package/dist/twilight/p-b955177d.entry.js +4 -0
  461. package/dist/twilight/{p-f4c6434f.entry.js → p-bb588e20.entry.js} +1 -1
  462. package/dist/twilight/{p-7c78c1a5.entry.js → p-bbb92919.entry.js} +1 -1
  463. package/dist/twilight/{p-4e941f6a.entry.js → p-bd7963b8.entry.js} +1 -1
  464. package/dist/twilight/p-beb851a0.entry.js +4 -0
  465. package/dist/twilight/{p-32a21d3e.entry.js → p-c5ca258f.entry.js} +1 -1
  466. package/dist/twilight/{p-8d9b1865.entry.js → p-c5ff4012.entry.js} +1 -1
  467. package/dist/twilight/p-c84796ed.entry.js +4 -0
  468. package/dist/twilight/{p-28fba512.entry.js → p-ccde5f93.entry.js} +1 -1
  469. package/dist/twilight/{p-e23cc9c1.entry.js → p-cf65581e.entry.js} +1 -1
  470. package/dist/twilight/{p-99aa0a59.entry.js → p-cfa7e6f8.entry.js} +1 -1
  471. package/dist/twilight/p-cgSL_BIo.js +4 -0
  472. package/dist/twilight/{p-0b265c17.entry.js → p-d19423c8.entry.js} +1 -1
  473. package/dist/twilight/{p-c5a12dde.entry.js → p-d1b2e25d.entry.js} +1 -1
  474. package/dist/twilight/p-d39a4239.entry.js +4 -0
  475. package/dist/twilight/{p-156660b7.entry.js → p-d5d04465.entry.js} +1 -1
  476. package/dist/twilight/p-d79993a2.entry.js +4 -0
  477. package/dist/twilight/{p-67f20b74.entry.js → p-dd732fd5.entry.js} +1 -1
  478. package/dist/twilight/{p-140f5001.entry.js → p-e0da92db.entry.js} +1 -1
  479. package/dist/twilight/{p-63778992.entry.js → p-eadcfa35.entry.js} +1 -1
  480. package/dist/twilight/p-eb4c87d2.entry.js +4 -0
  481. package/dist/twilight/{p-d93e90fb.entry.js → p-ec130506.entry.js} +1 -1
  482. package/dist/twilight/{p-ba128435.entry.js → p-ee7d1c8c.entry.js} +1 -1
  483. package/dist/twilight/{p-c5ab5c1b.entry.js → p-f180a4d2.entry.js} +1 -1
  484. package/dist/twilight/{p-955aab42.entry.js → p-f32d462e.entry.js} +1 -1
  485. package/dist/twilight/{p-5fe6bb62.entry.js → p-f414c3e8.entry.js} +1 -1
  486. package/dist/twilight/{p-72487957.entry.js → p-f5a225fb.entry.js} +1 -1
  487. package/dist/twilight/{p-24b86104.entry.js → p-f6f154f2.entry.js} +1 -1
  488. package/dist/twilight/{p-2f060d69.entry.js → p-f6f860d3.entry.js} +1 -1
  489. package/dist/twilight/{p-09fcfe8f.entry.js → p-fd486a62.entry.js} +1 -1
  490. package/dist/twilight/{p-cd9f175a.entry.js → p-fdebb964.entry.js} +1 -1
  491. package/dist/twilight/{p-f136e41b.entry.js → p-fe008cc5.entry.js} +1 -1
  492. package/dist/twilight/twilight.esm.js +1 -1
  493. package/dist/types/components/salla-badge/salla-badge.d.ts +15 -0
  494. package/dist/types/components/salla-edit-order-button/salla-edit-order-button.d.ts +25 -0
  495. package/dist/types/components/salla-loyalty-program/functions.d.ts +67 -0
  496. package/dist/types/components/salla-loyalty-program/interfaces.d.ts +125 -0
  497. package/dist/types/components/salla-loyalty-program/salla-loyalty-banner.d.ts +20 -0
  498. package/dist/types/components/salla-loyalty-program/salla-loyalty-hero.d.ts +15 -0
  499. package/dist/types/components/salla-loyalty-program/salla-loyalty-panel.d.ts +45 -0
  500. package/dist/types/components/salla-loyalty-program/salla-loyalty-point.d.ts +11 -0
  501. package/dist/types/components/salla-loyalty-program/salla-loyalty-program.d.ts +25 -8
  502. package/dist/types/components/salla-loyalty-program/salla-loyalty-reward.d.ts +13 -0
  503. package/dist/types/components/salla-loyalty-program/salla-reward-action.d.ts +9 -0
  504. package/dist/types/components/salla-loyalty-program/salla-reward-card.d.ts +17 -0
  505. package/dist/types/components/salla-loyalty-program/salla-reward-details.d.ts +22 -0
  506. package/dist/types/components/salla-loyalty-program/salla-reward-exchange.d.ts +11 -0
  507. package/dist/types/components/salla-loyalty-program/translations.d.ts +1 -0
  508. package/dist/types/components/salla-user-menu/salla-user-menu.d.ts +1 -1
  509. package/dist/types/components.d.ts +341 -0
  510. package/package.json +6 -5
  511. package/dist/cjs/salla-products-slider.cjs.entry.js +0 -121
  512. package/dist/esm/salla-products-slider.entry.js +0 -119
  513. package/dist/twilight/p-078c884b.entry.js +0 -4
  514. package/dist/twilight/p-336f0f06.entry.js +0 -4
  515. package/dist/twilight/p-39ad489e.entry.js +0 -4
  516. package/dist/twilight/p-470433cb.entry.js +0 -4
  517. package/dist/twilight/p-52192d08.entry.js +0 -4
  518. package/dist/twilight/p-54c7e570.entry.js +0 -4
  519. package/dist/twilight/p-a0171740.entry.js +0 -4
  520. package/dist/twilight/p-c65832b1.entry.js +0 -4
  521. package/dist/twilight/p-d3a119aa.entry.js +0 -4
  522. package/dist/twilight/p-d4f3797c.entry.js +0 -4
  523. package/dist/twilight/p-fa3ceb7c.entry.js +0 -4
  524. package/dist/twilight/p-fa44f874.entry.js +0 -4
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * Crafted with ❤ by Salla
3
3
  */
4
- import{r as t,h as i,H as e}from"./p-BYCfehfD.js";var s,a;!function(t){t.PERCENTAGE="percentage",t.FIXED="fixed",t.FREE_PRODUCT="free_product"}(s||(s={})),function(t){t.PRODUCT_COUNT="products_count",t.PRODUCT_PURCHASE="order_amount"}(a||(a={}));const l=class{constructor(i){t(this,i),this.offer=null,this.products={},this.isLoading=!1,this.canRender=!0}componentWillLoad(){salla.onReady().then((()=>{if(!salla.config.get("store.features")?.includes("conditional-offer")||""!==salla.storage.get("cart")&&!salla.storage.get("cart")?.summary?.count)throw new Error("feature or cart object does not existed")})).then((()=>salla.api.cart.offers())).then((({data:t})=>{if(this.offer=t.find((t=>"conditional"===t.type)),this.offer)return this.isLoading=!0,this.offer.details.discounts.unshift({value:0,min_spend:0}),this.updateInitialOfferValue();this.canRender=!1})).then((()=>{if(this.offer)return this.getProducts()})).then((()=>{this.offer&&salla.event.on("cart::updated",(t=>this.updateOfferValues(t)))})).catch((t=>{this.canRender=!1,salla.logger.warn("salla-conditional-offer:: ",t)})).finally((()=>{this.isLoading=!1}))}getProducts(){const t=this.offer.details.discounts.filter((({type:t})=>t===s.FREE_PRODUCT)).map((({value:t})=>t)).filter(Boolean);if(t.length>0)return salla.product.fetch({source:"selected",source_value:t}).then((t=>{const i=t?.data;if(i&&Array.isArray(i)){const t={...this.products};i.forEach((({id:i,url:e,image:s,name:a,price:l})=>{i&&a&&s?.url&&e&&void 0!==l&&(t[i]={url:e,image:s,name:a,price:l})})),this.products=t}}))}updateInitialOfferValue(){return salla.api.cart.details().then((({data:{cart:t}})=>this.updateOfferValues(t)))}updateOfferValues({items:t,sub_total:i}){const e=this.offer.details.based_on===a.PRODUCT_COUNT?t?.reduce(((t,{quantity:i})=>t+i),0)??0:i;return this.offer={...this.offer,details:{...this.offer?.details,current_value:e}},this.offer}renderTooltip(t){const e=t.value,s=this.products[e];return s?i("salla-tooltip",{class:"absolute left-0 -top-2",targetId:`avatar-product-${e}`,theme:"dark"},i("div",{class:"flex gap-3 text-start"},s?.image?.url&&i("img",{src:s.image.url,alt:s?.image?.alt||s.name||"",class:"w-12 h-12 object-cover rounded-lg flex-shrink-0",loading:"lazy",decoding:"async"}),i("div",{class:"flex-1"},i("div",{class:"leading-tight mb-1"},s.name),i("div",{class:"text-xs text-gray-300",innerHTML:salla.money(s.price)})))):(salla.logger.error(`salla-conditional-offer:: there is no product with id (${t.value})!`),null)}getCheckpointContent(t){if(t.type===s.PERCENTAGE)return`${t.value}%`;if(t.type===s.FIXED)return i("span",{innerHTML:salla.money(t.value)});if(t.type!==s.FREE_PRODUCT)return salla.logger.error(`salla-conditional-offer:: unexpected type (${t.type})!`),"";const e=this.products[t.value];return e?i("a",{class:"s-conditional-offer-product-link",href:e.url},i("img",{class:"s-conditional-offer-checkpoint-image-content",loading:"lazy",decoding:"async",alt:e?.image?.alt||"",src:e?.image?.url})):(salla.logger.error(`salla-conditional-offer:: there is no product with id (${t.value})!`),"")}getOfferType(t){const i=this.offer.details?.based_on;return i===a.PRODUCT_COUNT?salla.lang.choice("blocks.header.products_count",t.min_spend):i===a.PRODUCT_PURCHASE?salla.money(t.min_spend):(salla.logger.warn(`salla-conditional-offer:: Unexpected offer detail's based_on value: ${i}`),`${t.min_spend}`)}clamp(t,i,e){return Math.max(i,Math.min(t,e))}mapValueRanges(t,i,e,s,a){const l=(t-i)*(a-s)/(e-i)+s;return l===Number.POSITIVE_INFINITY?100:l===Number.NEGATIVE_INFINITY?0:this.clamp(l,0,100)}getCheckPointView(t,e){const a=this.offer.details.discounts.findIndex((({min_spend:i})=>i===t.min_spend)),l=this.mapValueRanges(this.offer.details.current_value,this.offer.details.discounts[a-1]?.min_spend??0,t.min_spend,0,100),n=t.min_spend<=this.offer.details.current_value;return i("div",{class:"s-conditional-offer-checkpoint-container"},e>0?[i("div",{key:"progress-line",class:"s-conditional-offer-progress-line-container"},i("div",{class:"s-conditional-offer-progress-line-inactive"}),i("div",{class:"s-conditional-offer-progress-line-active",style:{width:`${l}%`}})),i("div",{key:"checkpoint",class:"s-conditional-offer-checkpoint "+(n?"s-conditional-offer-active-checkpoint":"")},i("div",{class:"s-conditional-offer-item-avatar-content "+(n?"active":""),id:t.type===s.FREE_PRODUCT?`avatar-product-${t.value}`:`avatar-${t.value??e}`},this.products&&this.getCheckpointContent(t)),this.products&&t.type===s.FREE_PRODUCT&&this.renderTooltip(t),i("div",{class:"s-conditional-offer-checkpoint-label "+(n?"active":""),innerHTML:this.getOfferType(t)}))]:i("div",{key:"label",class:{"s-conditional-offer-checkpoint-label":!0,"first-checkpoint":0===e,active:n},innerHTML:this.getOfferType(t)}))}getLoadingSkeletonView(){return i(e,{class:"s-conditional-offer-container"},i("div",{class:"s-conditional-offer-skeleton-inner-container"},i("div",{class:"s-conditional-offer-skeleton-subtitle"},i("salla-skeleton",{height:"16px",width:"30%"})),i("div",{class:"s-conditional-offer-skeleton-subtitle"},i("salla-skeleton",{height:"16px",width:"35%"})),i("div",{class:"s-conditional-offer-skeleton-checkpoints-wrapper"},Array(3).fill(null).map((()=>[i("salla-skeleton",{key:"checkpoint-line",height:"8px"}),i("div",{key:"checkpoint"},i("salla-skeleton",{height:"60px",width:"60px",type:"circle"}))])))))}render(){return this.canRender?this.isLoading?this.getLoadingSkeletonView():this.offer?i(e,{class:"s-conditional-offer-container"},i("div",{class:"s-conditional-offer-title-wrapper"},i("div",{class:"s-conditional-offer-title"},this.offer.title),this.offer.description?i("div",{class:"s-conditional-offer-subtitle"},this.offer.description," ",i("i",{class:"sicon-information"})):null),i("div",{class:"s-conditional-offer-progress-container"},this.offer.details.discounts.map(((t,e)=>i("div",{class:{"flex-1":e>0},key:t.min_spend},this.getCheckPointView(t,e)))))):null:null}};l.style=":host{display:block}";export{l as salla_conditional_offer}
4
+ import{r as t,h as i,H as e}from"./p-aDXaoBqI.js";var s,a;!function(t){t.PERCENTAGE="percentage",t.FIXED="fixed",t.FREE_PRODUCT="free_product"}(s||(s={})),function(t){t.PRODUCT_COUNT="products_count",t.PRODUCT_PURCHASE="order_amount"}(a||(a={}));const o=class{constructor(i){t(this,i),this.offer=null,this.products={},this.isLoading=!1,this.canRender=!0}componentWillLoad(){salla.onReady().then((()=>{if(!salla.config.get("store.features")?.includes("conditional-offer")||""!==salla.storage.get("cart")&&!salla.storage.get("cart")?.summary?.count)throw new Error("feature or cart object does not existed")})).then((()=>salla.api.cart.offers())).then((({data:t})=>{if(this.offer=t.find((t=>"conditional"===t.type)),this.offer)return this.isLoading=!0,this.offer.details.discounts.unshift({value:0,min_spend:0}),this.updateInitialOfferValue();this.canRender=!1})).then((()=>{if(this.offer)return this.getProducts()})).then((()=>{this.offer&&salla.event.on("cart::updated",(t=>this.updateOfferValues(t)))})).catch((t=>{this.canRender=!1,salla.logger.warn("salla-conditional-offer:: ",t)})).finally((()=>{this.isLoading=!1}))}getProducts(){const t=this.offer.details.discounts.filter((({type:t})=>t===s.FREE_PRODUCT)).map((({value:t})=>t)).filter(Boolean);if(t.length>0)return salla.product.fetch({source:"selected",source_value:t}).then((t=>{const i=t?.data;if(i&&Array.isArray(i)){const t={...this.products};i.forEach((({id:i,url:e,image:s,name:a,price:o})=>{i&&a&&s?.url&&e&&void 0!==o&&(t[i]={url:e,image:s,name:a,price:o})})),this.products=t}}))}updateInitialOfferValue(){return salla.api.cart.details().then((({data:{cart:t}})=>this.updateOfferValues(t)))}updateOfferValues({items:t,sub_total:i}){const e=this.offer.details.based_on===a.PRODUCT_COUNT?t?.reduce(((t,{quantity:i})=>t+i),0)??0:i;return this.offer={...this.offer,details:{...this.offer?.details,current_value:e}},this.offer}renderTooltip(t){const e=t.value,s=this.products[e];return s?i("salla-tooltip",{class:"absolute left-0 -top-2",targetId:`avatar-product-${e}`,theme:"dark"},i("div",{class:"flex gap-3 text-start"},s?.image?.url&&i("img",{src:s.image.url,alt:s?.image?.alt||s.name||"",class:"w-12 h-12 object-cover rounded-lg flex-shrink-0",loading:"lazy",decoding:"async"}),i("div",{class:"flex-1"},i("div",{class:"leading-tight mb-1"},s.name),i("div",{class:"text-xs text-gray-300",innerHTML:salla.money(s.price)})))):(salla.logger.error(`salla-conditional-offer:: there is no product with id (${t.value})!`),null)}getCheckpointContent(t){if(t.type===s.PERCENTAGE)return`${t.value}%`;if(t.type===s.FIXED)return i("span",{innerHTML:salla.money(t.value)});if(t.type!==s.FREE_PRODUCT)return salla.logger.error(`salla-conditional-offer:: unexpected type (${t.type})!`),"";const e=this.products[t.value];return e?i("a",{class:"s-conditional-offer-product-link",href:e.url},i("img",{class:"s-conditional-offer-checkpoint-image-content",loading:"lazy",decoding:"async",alt:e?.image?.alt||"",src:e?.image?.url})):(salla.logger.error(`salla-conditional-offer:: there is no product with id (${t.value})!`),"")}getOfferType(t){const i=this.offer.details?.based_on;return i===a.PRODUCT_COUNT?salla.lang.choice("blocks.header.products_count",t.min_spend):i===a.PRODUCT_PURCHASE?salla.money(t.min_spend):(salla.logger.warn(`salla-conditional-offer:: Unexpected offer detail's based_on value: ${i}`),`${t.min_spend}`)}clamp(t,i,e){return Math.max(i,Math.min(t,e))}mapValueRanges(t,i,e,s,a){const o=(t-i)*(a-s)/(e-i)+s;return o===Number.POSITIVE_INFINITY?100:o===Number.NEGATIVE_INFINITY?0:this.clamp(o,0,100)}getCheckPointView(t,e){const a=this.offer.details.discounts.findIndex((({min_spend:i})=>i===t.min_spend)),o=this.mapValueRanges(this.offer.details.current_value,this.offer.details.discounts[a-1]?.min_spend??0,t.min_spend,0,100),l=t.min_spend<=this.offer.details.current_value;return i("div",{class:"s-conditional-offer-checkpoint-container"},e>0?[i("div",{key:"progress-line",class:"s-conditional-offer-progress-line-container"},i("div",{class:"s-conditional-offer-progress-line-inactive"}),i("div",{class:"s-conditional-offer-progress-line-active",style:{width:`${o}%`}})),i("div",{key:"checkpoint",class:"s-conditional-offer-checkpoint "+(l?"s-conditional-offer-active-checkpoint":"")},i("div",{class:"s-conditional-offer-item-avatar-content "+(l?"active":""),id:t.type===s.FREE_PRODUCT?`avatar-product-${t.value}`:`avatar-${t.value??e}`},this.products&&this.getCheckpointContent(t)),this.products&&t.type===s.FREE_PRODUCT&&this.renderTooltip(t),i("div",{class:"s-conditional-offer-checkpoint-label "+(l?"active":""),innerHTML:this.getOfferType(t)}))]:i("div",{key:"label",class:{"s-conditional-offer-checkpoint-label":!0,"first-checkpoint":0===e,active:l},innerHTML:this.getOfferType(t)}))}getLoadingSkeletonView(){return i(e,{class:"s-conditional-offer-container"},i("div",{class:"s-conditional-offer-skeleton-inner-container"},i("div",{class:"s-conditional-offer-skeleton-subtitle"},i("salla-skeleton",{height:"16px",width:"30%"})),i("div",{class:"s-conditional-offer-skeleton-subtitle"},i("salla-skeleton",{height:"16px",width:"35%"})),i("div",{class:"s-conditional-offer-skeleton-checkpoints-wrapper"},Array(3).fill(null).map((()=>[i("salla-skeleton",{key:"checkpoint-line",height:"8px"}),i("div",{key:"checkpoint"},i("salla-skeleton",{height:"60px",width:"60px",type:"circle"}))])))))}render(){return this.canRender?this.isLoading?this.getLoadingSkeletonView():this.offer?i(e,{class:"s-conditional-offer-container"},i("div",{class:"s-conditional-offer-title-wrapper"},i("div",{class:"s-conditional-offer-title"},this.offer.title),this.offer.description?i("div",{class:"s-conditional-offer-subtitle"},this.offer.description," ",i("i",{class:"sicon-information"})):null),i("div",{class:"s-conditional-offer-progress-container"},this.offer.details.discounts.map(((t,e)=>i("div",{class:{"flex-1":e>0},key:t.min_spend},this.getCheckPointView(t,e)))))):null:null}};o.style=":host{display:block}";export{o as salla_conditional_offer}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * Crafted with ❤ by Salla
3
3
  */
4
- import{r as s,h as t,H as i,a as n}from"./p-BYCfehfD.js";import{H as l}from"./p-CHf8XdiS.js";import"./p-CgtvEd63.js";const e=class{constructor(t){s(this,t),this.nextPage="",this.autoload=!1,this.container="salla-infinite-scroll",this.item="salla-infinite-scroll > *",this.status=document.createElement("div"),this.status.className="s-infinite-scroll-wrapper",this.status.innerHTML=`<div class="s-infinite-scroll-status" style="display:none">\n <p class="s-infinite-scroll-last infinite-scroll-last"></p>\n <p class="s-infinite-scroll-error infinite-scroll-error"></p>\n </div>\n <a href="${this.nextPage}" class="s-infinite-scroll-btn s-button-btn s-button-primary">\n <span class="s-button-text s-infinite-scroll-btn-text">${this.loadMoreText?this.loadMoreText:salla.lang.get("common.elements.load_more")}</span>\n <span class="s-button-loader s-button-loader-center s-infinite-scroll-btn-loader" style="display: none"></span>\n </a>`,this.btnLoader=this.status.querySelector(".s-button-loader"),salla.lang.onLoaded((()=>{this.status.querySelector(".s-button-text").innerHTML=this.loadMoreText?this.loadMoreText:salla.lang.get("common.elements.load_more"),this.status.querySelector(".s-infinite-scroll-last").innerHTML=salla.lang.get("common.elements.end_of_content"),this.status.querySelector(".s-infinite-scroll-error").innerHTML=salla.lang.get("common.elements.failed_to_load_more")}))}loading(s=!0){let t=this.status.querySelector(".s-button-text");l.toggleElementClassIf(t,"s-button-hide","s-button-show",(()=>s)),this.btnLoader.style.display=s?"inherit":"none"}render(){return this.nextPage.length>1?t(i,{class:"s-infinite-scroll-container"},t("slot",null)):""}componentDidLoad(){if(0===this.nextPage.length)return;this.host.insertAdjacentElement("afterend",this.status);let s=this,t=salla.infiniteScroll.initiate(this.container,{history:!!this.autoload&&"push",scrollThreshold:!!this.autoload&&400,nextPage:this.nextPage,checkLastPage:'salla-infinite-scroll[next-page*=":"],salla-infinite-scroll[next-page*="."]',status:".s-infinite-scroll-status",button:this.status.querySelector(".s-button-btn"),append:this.item,path:function(){return s.nextPage.replace(/page\=(\d)/g,"page="+(this.loadCount+2))}}).on("request",(()=>this.loading())).on("load",(()=>{this.loading(!1),2==t.pageIndex&&t.option({loadOnScroll:!1}),3==t.pageIndex&&t.option({loadOnScroll:!0})})).on("error",(()=>this.loading(!1)))}get host(){return n(this)}};e.style="";export{e as salla_infinite_scroll}
4
+ import{r as s,h as t,H as i,a as n}from"./p-aDXaoBqI.js";import{H as l}from"./p-CHf8XdiS.js";import"./p-CgtvEd63.js";const e=class{constructor(t){s(this,t),this.nextPage="",this.autoload=!1,this.container="salla-infinite-scroll",this.item="salla-infinite-scroll > *",this.status=document.createElement("div"),this.status.className="s-infinite-scroll-wrapper",this.status.innerHTML=`<div class="s-infinite-scroll-status" style="display:none">\n <p class="s-infinite-scroll-last infinite-scroll-last"></p>\n <p class="s-infinite-scroll-error infinite-scroll-error"></p>\n </div>\n <a href="${this.nextPage}" class="s-infinite-scroll-btn s-button-btn s-button-primary">\n <span class="s-button-text s-infinite-scroll-btn-text">${this.loadMoreText?this.loadMoreText:salla.lang.get("common.elements.load_more")}</span>\n <span class="s-button-loader s-button-loader-center s-infinite-scroll-btn-loader" style="display: none"></span>\n </a>`,this.btnLoader=this.status.querySelector(".s-button-loader"),salla.lang.onLoaded((()=>{this.status.querySelector(".s-button-text").innerHTML=this.loadMoreText?this.loadMoreText:salla.lang.get("common.elements.load_more"),this.status.querySelector(".s-infinite-scroll-last").innerHTML=salla.lang.get("common.elements.end_of_content"),this.status.querySelector(".s-infinite-scroll-error").innerHTML=salla.lang.get("common.elements.failed_to_load_more")}))}loading(s=!0){let t=this.status.querySelector(".s-button-text");l.toggleElementClassIf(t,"s-button-hide","s-button-show",(()=>s)),this.btnLoader.style.display=s?"inherit":"none"}render(){return this.nextPage.length>1?t(i,{class:"s-infinite-scroll-container"},t("slot",null)):""}componentDidLoad(){if(0===this.nextPage.length)return;this.host.insertAdjacentElement("afterend",this.status);let s=this,t=salla.infiniteScroll.initiate(this.container,{history:!!this.autoload&&"push",scrollThreshold:!!this.autoload&&400,nextPage:this.nextPage,checkLastPage:'salla-infinite-scroll[next-page*=":"],salla-infinite-scroll[next-page*="."]',status:".s-infinite-scroll-status",button:this.status.querySelector(".s-button-btn"),append:this.item,path:function(){return s.nextPage.replace(/page\=(\d)/g,"page="+(this.loadCount+2))}}).on("request",(()=>this.loading())).on("load",(()=>{this.loading(!1),2==t.pageIndex&&t.option({loadOnScroll:!1}),3==t.pageIndex&&t.option({loadOnScroll:!0})})).on("error",(()=>this.loading(!1)))}get host(){return n(this)}};e.style="";export{e as salla_infinite_scroll}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * Crafted with ❤ by Salla
3
3
  */
4
- import{r as c,h as l,H as t,a as s}from"./p-BYCfehfD.js";import{f as e,t as i}from"./p-CO-PeZ27.js";const o=class{constructor(l){c(this,l),this.links=salla.config.get("store.social"),this.iconsList={instagram:'\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>instagram</title>\n<path d="M23 32h-14c-4.971 0-9-4.029-9-9v0-14c0-4.971 4.029-9 9-9v0h14c4.971 0 9 4.029 9 9v0 14c0 4.971-4.029 9-9 9v0zM9 2c-3.866 0-7 3.134-7 7v0 14c0 3.866 3.134 7 7 7v0h14c3.866 0 7-3.134 7-7v0-14c0-3.866-3.134-7-7-7v0zM16 24c-4.418 0-8-3.582-8-8s3.582-8 8-8c4.418 0 8 3.582 8 8v0c0 4.418-3.582 8-8 8v0zM16 10c-3.314 0-6 2.686-6 6s2.686 6 6 6c3.314 0 6-2.686 6-6v0c0-3.314-2.686-6-6-6v0zM25 9c-1.105 0-2-0.895-2-2s0.895-2 2-2c1.105 0 2 0.895 2 2v0c0 1.105-0.895 2-2 2v0zM25 7v0z"></path>\n</svg>\n',twitter:i,facebook:e,youtube:'\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>youtube</title>\n<path d="M16 28c-3.666 0-8.376-0.056-10.29-0.162-0.113 0.010-0.244 0.016-0.376 0.016-1.676 0-3.139-0.91-3.922-2.264l-0.012-0.022c-0.97-1.6-1.4-4.248-1.4-8.558s0.436-6.962 1.412-8.6c0.782-1.36 2.227-2.262 3.883-2.262 0.148 0 0.293 0.007 0.437 0.021l-0.018-0.001c1.872-0.124 6.544-0.168 10.286-0.168s8.4 0.044 10.292 0.168c0.124-0.012 0.267-0.019 0.412-0.019 1.656 0 3.101 0.905 3.866 2.247l0.012 0.022c0.982 1.624 1.418 4.27 1.418 8.582 0 4.338-0.438 6.982-1.422 8.6-0.789 1.364-2.241 2.268-3.904 2.268-0.133 0-0.265-0.006-0.395-0.017l0.017 0.001c-1.926 0.092-6.632 0.148-10.296 0.148zM16 8c-3.712 0-8.334 0.042-10.168 0.164-1.688 0.094-2.14 0.306-2.702 1.268-0.756 1.81-1.195 3.913-1.195 6.119 0 0.51 0.024 1.015 0.069 1.513l-0.005-0.064c-0.042 0.435-0.065 0.941-0.065 1.453 0 2.198 0.438 4.294 1.231 6.205l-0.039-0.107c0.566 0.968 1.022 1.184 2.708 1.296 3.29 0.184 17.022 0.184 20.34 0 1.678-0.11 2.132-0.326 2.684-1.28 0.764-1.803 1.208-3.899 1.208-6.1 0-0.513-0.024-1.020-0.071-1.52l0.005 0.064c0.042-0.436 0.065-0.943 0.065-1.455 0-2.203-0.439-4.303-1.235-6.218l0.040 0.107v-0.016c-0.554-0.958-1-1.17-2.684-1.264-1.862-0.122-6.644-0.164-10.186-0.164zM13 23c-0.552 0-1-0.448-1-1v0-10c0 0 0 0 0 0 0-0.552 0.448-1 1-1 0.196 0 0.38 0.057 0.534 0.154l-0.004-0.002 8 5c0.284 0.18 0.47 0.492 0.47 0.848s-0.186 0.668-0.466 0.846l-0.004 0.002-8 5c-0.15 0.095-0.334 0.152-0.53 0.152 0 0 0 0 0 0v0zM14 13.8v6.4l5.114-3.2z"></path>\n</svg>\n',snapchat:'\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>snapchat</title>\n<path d="M16.186 30h-0.266c-1.843-0.023-3.525-0.693-4.834-1.792l0.012 0.010c-0.476-0.405-1.043-0.72-1.665-0.909l-0.033-0.009c-0.287-0.044-0.617-0.069-0.954-0.069-0.492 0-0.972 0.053-1.434 0.155l0.044-0.008c-0.261 0.061-0.564 0.102-0.875 0.114l-0.009 0c-0.017 0.001-0.036 0.001-0.056 0.001-0.811 0-1.495-0.545-1.705-1.288l-0.003-0.012c-0.076-0.26-0.132-0.506-0.186-0.746-0.961-0.157-1.822-0.412-2.633-0.76l0.073 0.028c-0.667-0.259-1.199-0.745-1.509-1.362l-0.007-0.016c-0.082-0.189-0.135-0.409-0.146-0.64l-0-0.004c-0.002-0.031-0.003-0.067-0.003-0.103 0-0.841 0.614-1.538 1.417-1.668l0.010-0.001c0.822-0.141 1.555-0.438 2.198-0.859l-0.022 0.013c0.611-0.405 1.138-0.872 1.591-1.404l0.009-0.010c0.526-0.595 0.98-1.273 1.337-2.007l0.023-0.053c0.060-0.102 0.107-0.22 0.135-0.346l0.001-0.008c-0.092-0.020-0.73-0.222-0.972-0.298s-0.374-0.12-0.506-0.17c-0.546-0.205-1.016-0.487-1.424-0.839l0.006 0.005c-0.471-0.388-0.768-0.971-0.768-1.624 0-0.126 0.011-0.249 0.032-0.369l-0.002 0.013c0.143-0.644 0.551-1.172 1.1-1.474l0.011-0.006c0.389-0.241 0.861-0.384 1.366-0.384 0.347 0 0.678 0.067 0.982 0.19l-0.018-0.006c0.128 0.060 0.242 0.106 0.344 0.142-0.082-0.573-0.129-1.235-0.129-1.908 0-1.482 0.227-2.91 0.648-4.253l-0.027 0.101c0.512-1.142 1.207-2.114 2.056-2.925l0.004-0.003c0.7-0.664 1.516-1.214 2.413-1.616l0.055-0.022c1.128-0.5 2.444-0.794 3.828-0.8h0.592c1.386 0.007 2.701 0.301 3.893 0.825l-0.063-0.025c0.956 0.42 1.777 0.967 2.485 1.632l-0.005-0.004c0.855 0.815 1.55 1.789 2.039 2.876l0.023 0.058c0.396 1.237 0.625 2.659 0.625 4.135 0 0.658-0.045 1.304-0.133 1.938l0.008-0.073 0.172-0.076c0.303-0.16 0.661-0.253 1.042-0.253 0.374 0 0.728 0.091 1.039 0.251l-0.013-0.006c0.886 0.274 1.528 1.063 1.582 2.008l0 0.006c-0.001 0.602-0.25 1.146-0.65 1.536l-0 0c-0.429 0.408-0.945 0.73-1.516 0.935l-0.030 0.009c-0.144 0.056-0.316 0.112-0.504 0.17-0.367 0.103-0.686 0.235-0.984 0.398l0.024-0.012c0.018 0.030 0.042 0.094 0.086 0.18 0.963 2.174 2.834 3.796 5.118 4.4l0.054 0.012c0.814 0.133 1.427 0.83 1.427 1.671 0 0.036-0.001 0.072-0.003 0.108l0-0.005c-0.012 0.241-0.070 0.465-0.165 0.669l0.005-0.011c-0.319 0.624-0.847 1.103-1.489 1.352l-0.019 0.006c-0.739 0.323-1.6 0.578-2.497 0.724l-0.063 0.008c-0.056 0.264-0.112 0.496-0.186 0.742-0.215 0.747-0.893 1.284-1.696 1.284-0.011 0-0.021-0-0.032-0l0.002 0c-0.328-0.004-0.644-0.042-0.949-0.11l0.031 0.006c-0.404-0.090-0.869-0.142-1.345-0.142-0.353 0-0.7 0.029-1.038 0.083l0.037-0.005c-0.653 0.195-1.218 0.508-1.699 0.917l0.007-0.005c-1.275 1.065-2.916 1.731-4.71 1.788l-0.012 0zM8.444 25.218c0.457 0.001 0.904 0.041 1.339 0.117l-0.047-0.007c0.966 0.232 1.808 0.664 2.516 1.252l-0.010-0.008c0.96 0.829 2.199 1.357 3.56 1.427l0.014 0.001h0.37c1.373-0.070 2.61-0.597 3.576-1.43l-0.008 0.006c0.701-0.583 1.546-1.016 2.474-1.239l0.042-0.009c0.394-0.063 0.849-0.1 1.312-0.1 0.615 0 1.216 0.064 1.795 0.186l-0.057-0.010c0.105 0.023 0.238 0.045 0.372 0.059l0.016 0.001c0.042-0.162 0.076-0.314 0.11-0.47 0.059-0.339 0.156-0.641 0.287-0.924l-0.009 0.023 0.234-0.44 0.492-0.078c0.99-0.119 1.892-0.359 2.738-0.705l-0.070 0.025c0.086-0.040 0.158-0.076 0.216-0.11-2.748-0.86-4.933-2.816-6.081-5.342l-0.025-0.062c-0.184-0.31-0.294-0.684-0.294-1.083 0-0.27 0.050-0.528 0.14-0.765l-0.005 0.015c0.492-0.783 1.284-1.339 2.212-1.507l0.020-0.003c0.14-0.044 0.27-0.084 0.376-0.126 0.327-0.108 0.609-0.272 0.849-0.482l-0.003 0.002c0.074-0.106 0-0.2-0.216-0.284-0.094-0.041-0.203-0.065-0.318-0.066h-0c-0.529 0.242-1.142 0.411-1.786 0.474l-0.024 0.002c-0.313-0-0.612-0.064-0.883-0.18l0.015 0.006-0.628-0.28 0.072-1.272c0.093-0.623 0.146-1.342 0.146-2.074 0-1.269-0.16-2.501-0.46-3.677l0.022 0.103c-0.396-0.896-0.936-1.659-1.598-2.296l-0.002-0.002c-0.541-0.508-1.172-0.928-1.865-1.233l-0.043-0.017c-0.895-0.396-1.939-0.629-3.036-0.634h-0.002l-0.218-1v1h-0.348c-1.105 0.003-2.155 0.237-3.106 0.656l0.050-0.020c-0.733 0.322-1.361 0.742-1.903 1.253l0.003-0.003c-0.663 0.638-1.203 1.398-1.582 2.247l-0.018 0.045c-0.279 1.065-0.44 2.287-0.44 3.547 0 0.704 0.050 1.395 0.147 2.072l-0.009-0.078 0.080 1.372-0.618 0.284c-0.31 0.108-0.666 0.17-1.038 0.17-0.6 0-1.163-0.163-1.645-0.446l0.015 0.008c-0.019-0.001-0.041-0.002-0.064-0.002-0.154 0-0.299 0.039-0.425 0.109l0.005-0.002c-0.063 0.032-0.115 0.078-0.153 0.135l-0.001 0.001c0.258 0.244 0.567 0.435 0.91 0.556l0.018 0.006c0.094 0.036 0.2 0.070 0.32 0.108 0.971 0.167 1.784 0.732 2.282 1.516l0.008 0.014c0.087 0.225 0.137 0.486 0.137 0.758 0 0.403-0.11 0.781-0.303 1.104l0.005-0.010c-0.459 0.983-1.016 1.829-1.677 2.582l0.011-0.012c-0.588 0.687-1.26 1.279-2.004 1.768l-0.036 0.022c-0.689 0.451-1.49 0.805-2.346 1.017l-0.054 0.011c0.060 0.034 0.132 0.072 0.218 0.112 0.776 0.322 1.678 0.561 2.618 0.675l0.050 0.005 0.498 0.078 0.234 0.446c0.116 0.255 0.209 0.553 0.265 0.863l0.003 0.023c0.038 0.164 0.072 0.328 0.118 0.496 0.12-0.014 0.242-0.042 0.378-0.068 0.528-0.12 1.138-0.192 1.762-0.2l0.006-0zM30.244 22.892v0z"></path>\n</svg>\n',tiktok:'\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>tiktok</title>\n<path d="M29.046 7.029c-3.359 0-6.092-2.733-6.092-6.092 0-0.518-0.42-0.938-0.938-0.938h-5.021c-0.518 0-0.938 0.42-0.938 0.938v20.585c0 1.975-1.606 3.581-3.581 3.581s-3.581-1.606-3.581-3.581c0-1.975 1.606-3.581 3.581-3.581 0.518 0 0.938-0.42 0.938-0.938v-5.021c0-0.518-0.42-0.938-0.938-0.938-5.777 0-10.477 4.7-10.477 10.477s4.7 10.477 10.477 10.477c5.777 0 10.477-4.7 10.477-10.477v-9.112c1.866 0.995 3.942 1.514 6.092 1.514 0.518 0 0.938-0.42 0.938-0.938v-5.021c0-0.518-0.42-0.938-0.938-0.938zM28.108 12.011c-2.001-0.166-3.902-0.866-5.544-2.047-0.285-0.206-0.662-0.234-0.975-0.073s-0.51 0.482-0.51 0.834v10.798c0 4.743-3.859 8.602-8.602 8.602s-8.602-3.859-8.602-8.602c0-4.427 3.361-8.083 7.665-8.552v3.176c-2.563 0.446-4.519 2.687-4.519 5.376 0 3.009 2.447 5.456 5.456 5.456s5.456-2.448 5.456-5.456v-19.648h3.201c0.429 3.645 3.329 6.545 6.974 6.974z"></path>\n</svg>\n'},this.socialSlot=this.host.querySelector('[slot="social-item"]')?.innerHTML||'<a href={link} rel="noopener" target="_blank" title={type} aria-label={type}><span class="s-social-icon">{icon}</span></a>',salla.lang.onLoaded((()=>{this.links=salla.config.get("store.social")}))}getLinksArray(){return this.links?Object.entries(this.links).filter((([c,l])=>!!l&&"whatsapp"!==c)).map((([c,l])=>({type:c,value:l}))):[]}componentWillLoad(){return new Promise((c=>salla.onReady(c)))}render(){const c=this.getLinksArray();return l(t,{key:"68bd517787b0ebddf10cc44d9dd8b21c4185ca24"},l("ul",{key:"77fcfb2b61014f53880bd8f833780eaaac9db5d7",class:"s-social-list"},c.map((c=>l("li",{class:"s-social-link"},l("div",{id:"social-slot",innerHTML:this.socialSlot.replace(/\{icon\}/g,this.iconsList[c.type]).replace(/\{type\}/g,c.type).replace(/\{link\}/g,c.value.toString())}))))))}componentDidRender(){this.host.querySelectorAll("#social-slot").forEach((c=>c.replaceWith(c.firstChild))),this.host.querySelector('[slot="social-item"]')?.remove()}get host(){return s(this)}};o.style=":host{display:block}";export{o as salla_social}
4
+ import{r as c,h as l,H as t,a as s}from"./p-aDXaoBqI.js";import{f as e,t as i}from"./p-CO-PeZ27.js";const o=class{constructor(l){c(this,l),this.links=salla.config.get("store.social"),this.iconsList={instagram:'\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>instagram</title>\n<path d="M23 32h-14c-4.971 0-9-4.029-9-9v0-14c0-4.971 4.029-9 9-9v0h14c4.971 0 9 4.029 9 9v0 14c0 4.971-4.029 9-9 9v0zM9 2c-3.866 0-7 3.134-7 7v0 14c0 3.866 3.134 7 7 7v0h14c3.866 0 7-3.134 7-7v0-14c0-3.866-3.134-7-7-7v0zM16 24c-4.418 0-8-3.582-8-8s3.582-8 8-8c4.418 0 8 3.582 8 8v0c0 4.418-3.582 8-8 8v0zM16 10c-3.314 0-6 2.686-6 6s2.686 6 6 6c3.314 0 6-2.686 6-6v0c0-3.314-2.686-6-6-6v0zM25 9c-1.105 0-2-0.895-2-2s0.895-2 2-2c1.105 0 2 0.895 2 2v0c0 1.105-0.895 2-2 2v0zM25 7v0z"></path>\n</svg>\n',twitter:i,facebook:e,youtube:'\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>youtube</title>\n<path d="M16 28c-3.666 0-8.376-0.056-10.29-0.162-0.113 0.010-0.244 0.016-0.376 0.016-1.676 0-3.139-0.91-3.922-2.264l-0.012-0.022c-0.97-1.6-1.4-4.248-1.4-8.558s0.436-6.962 1.412-8.6c0.782-1.36 2.227-2.262 3.883-2.262 0.148 0 0.293 0.007 0.437 0.021l-0.018-0.001c1.872-0.124 6.544-0.168 10.286-0.168s8.4 0.044 10.292 0.168c0.124-0.012 0.267-0.019 0.412-0.019 1.656 0 3.101 0.905 3.866 2.247l0.012 0.022c0.982 1.624 1.418 4.27 1.418 8.582 0 4.338-0.438 6.982-1.422 8.6-0.789 1.364-2.241 2.268-3.904 2.268-0.133 0-0.265-0.006-0.395-0.017l0.017 0.001c-1.926 0.092-6.632 0.148-10.296 0.148zM16 8c-3.712 0-8.334 0.042-10.168 0.164-1.688 0.094-2.14 0.306-2.702 1.268-0.756 1.81-1.195 3.913-1.195 6.119 0 0.51 0.024 1.015 0.069 1.513l-0.005-0.064c-0.042 0.435-0.065 0.941-0.065 1.453 0 2.198 0.438 4.294 1.231 6.205l-0.039-0.107c0.566 0.968 1.022 1.184 2.708 1.296 3.29 0.184 17.022 0.184 20.34 0 1.678-0.11 2.132-0.326 2.684-1.28 0.764-1.803 1.208-3.899 1.208-6.1 0-0.513-0.024-1.020-0.071-1.52l0.005 0.064c0.042-0.436 0.065-0.943 0.065-1.455 0-2.203-0.439-4.303-1.235-6.218l0.040 0.107v-0.016c-0.554-0.958-1-1.17-2.684-1.264-1.862-0.122-6.644-0.164-10.186-0.164zM13 23c-0.552 0-1-0.448-1-1v0-10c0 0 0 0 0 0 0-0.552 0.448-1 1-1 0.196 0 0.38 0.057 0.534 0.154l-0.004-0.002 8 5c0.284 0.18 0.47 0.492 0.47 0.848s-0.186 0.668-0.466 0.846l-0.004 0.002-8 5c-0.15 0.095-0.334 0.152-0.53 0.152 0 0 0 0 0 0v0zM14 13.8v6.4l5.114-3.2z"></path>\n</svg>\n',snapchat:'\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>snapchat</title>\n<path d="M16.186 30h-0.266c-1.843-0.023-3.525-0.693-4.834-1.792l0.012 0.010c-0.476-0.405-1.043-0.72-1.665-0.909l-0.033-0.009c-0.287-0.044-0.617-0.069-0.954-0.069-0.492 0-0.972 0.053-1.434 0.155l0.044-0.008c-0.261 0.061-0.564 0.102-0.875 0.114l-0.009 0c-0.017 0.001-0.036 0.001-0.056 0.001-0.811 0-1.495-0.545-1.705-1.288l-0.003-0.012c-0.076-0.26-0.132-0.506-0.186-0.746-0.961-0.157-1.822-0.412-2.633-0.76l0.073 0.028c-0.667-0.259-1.199-0.745-1.509-1.362l-0.007-0.016c-0.082-0.189-0.135-0.409-0.146-0.64l-0-0.004c-0.002-0.031-0.003-0.067-0.003-0.103 0-0.841 0.614-1.538 1.417-1.668l0.010-0.001c0.822-0.141 1.555-0.438 2.198-0.859l-0.022 0.013c0.611-0.405 1.138-0.872 1.591-1.404l0.009-0.010c0.526-0.595 0.98-1.273 1.337-2.007l0.023-0.053c0.060-0.102 0.107-0.22 0.135-0.346l0.001-0.008c-0.092-0.020-0.73-0.222-0.972-0.298s-0.374-0.12-0.506-0.17c-0.546-0.205-1.016-0.487-1.424-0.839l0.006 0.005c-0.471-0.388-0.768-0.971-0.768-1.624 0-0.126 0.011-0.249 0.032-0.369l-0.002 0.013c0.143-0.644 0.551-1.172 1.1-1.474l0.011-0.006c0.389-0.241 0.861-0.384 1.366-0.384 0.347 0 0.678 0.067 0.982 0.19l-0.018-0.006c0.128 0.060 0.242 0.106 0.344 0.142-0.082-0.573-0.129-1.235-0.129-1.908 0-1.482 0.227-2.91 0.648-4.253l-0.027 0.101c0.512-1.142 1.207-2.114 2.056-2.925l0.004-0.003c0.7-0.664 1.516-1.214 2.413-1.616l0.055-0.022c1.128-0.5 2.444-0.794 3.828-0.8h0.592c1.386 0.007 2.701 0.301 3.893 0.825l-0.063-0.025c0.956 0.42 1.777 0.967 2.485 1.632l-0.005-0.004c0.855 0.815 1.55 1.789 2.039 2.876l0.023 0.058c0.396 1.237 0.625 2.659 0.625 4.135 0 0.658-0.045 1.304-0.133 1.938l0.008-0.073 0.172-0.076c0.303-0.16 0.661-0.253 1.042-0.253 0.374 0 0.728 0.091 1.039 0.251l-0.013-0.006c0.886 0.274 1.528 1.063 1.582 2.008l0 0.006c-0.001 0.602-0.25 1.146-0.65 1.536l-0 0c-0.429 0.408-0.945 0.73-1.516 0.935l-0.030 0.009c-0.144 0.056-0.316 0.112-0.504 0.17-0.367 0.103-0.686 0.235-0.984 0.398l0.024-0.012c0.018 0.030 0.042 0.094 0.086 0.18 0.963 2.174 2.834 3.796 5.118 4.4l0.054 0.012c0.814 0.133 1.427 0.83 1.427 1.671 0 0.036-0.001 0.072-0.003 0.108l0-0.005c-0.012 0.241-0.070 0.465-0.165 0.669l0.005-0.011c-0.319 0.624-0.847 1.103-1.489 1.352l-0.019 0.006c-0.739 0.323-1.6 0.578-2.497 0.724l-0.063 0.008c-0.056 0.264-0.112 0.496-0.186 0.742-0.215 0.747-0.893 1.284-1.696 1.284-0.011 0-0.021-0-0.032-0l0.002 0c-0.328-0.004-0.644-0.042-0.949-0.11l0.031 0.006c-0.404-0.090-0.869-0.142-1.345-0.142-0.353 0-0.7 0.029-1.038 0.083l0.037-0.005c-0.653 0.195-1.218 0.508-1.699 0.917l0.007-0.005c-1.275 1.065-2.916 1.731-4.71 1.788l-0.012 0zM8.444 25.218c0.457 0.001 0.904 0.041 1.339 0.117l-0.047-0.007c0.966 0.232 1.808 0.664 2.516 1.252l-0.010-0.008c0.96 0.829 2.199 1.357 3.56 1.427l0.014 0.001h0.37c1.373-0.070 2.61-0.597 3.576-1.43l-0.008 0.006c0.701-0.583 1.546-1.016 2.474-1.239l0.042-0.009c0.394-0.063 0.849-0.1 1.312-0.1 0.615 0 1.216 0.064 1.795 0.186l-0.057-0.010c0.105 0.023 0.238 0.045 0.372 0.059l0.016 0.001c0.042-0.162 0.076-0.314 0.11-0.47 0.059-0.339 0.156-0.641 0.287-0.924l-0.009 0.023 0.234-0.44 0.492-0.078c0.99-0.119 1.892-0.359 2.738-0.705l-0.070 0.025c0.086-0.040 0.158-0.076 0.216-0.11-2.748-0.86-4.933-2.816-6.081-5.342l-0.025-0.062c-0.184-0.31-0.294-0.684-0.294-1.083 0-0.27 0.050-0.528 0.14-0.765l-0.005 0.015c0.492-0.783 1.284-1.339 2.212-1.507l0.020-0.003c0.14-0.044 0.27-0.084 0.376-0.126 0.327-0.108 0.609-0.272 0.849-0.482l-0.003 0.002c0.074-0.106 0-0.2-0.216-0.284-0.094-0.041-0.203-0.065-0.318-0.066h-0c-0.529 0.242-1.142 0.411-1.786 0.474l-0.024 0.002c-0.313-0-0.612-0.064-0.883-0.18l0.015 0.006-0.628-0.28 0.072-1.272c0.093-0.623 0.146-1.342 0.146-2.074 0-1.269-0.16-2.501-0.46-3.677l0.022 0.103c-0.396-0.896-0.936-1.659-1.598-2.296l-0.002-0.002c-0.541-0.508-1.172-0.928-1.865-1.233l-0.043-0.017c-0.895-0.396-1.939-0.629-3.036-0.634h-0.002l-0.218-1v1h-0.348c-1.105 0.003-2.155 0.237-3.106 0.656l0.050-0.020c-0.733 0.322-1.361 0.742-1.903 1.253l0.003-0.003c-0.663 0.638-1.203 1.398-1.582 2.247l-0.018 0.045c-0.279 1.065-0.44 2.287-0.44 3.547 0 0.704 0.050 1.395 0.147 2.072l-0.009-0.078 0.080 1.372-0.618 0.284c-0.31 0.108-0.666 0.17-1.038 0.17-0.6 0-1.163-0.163-1.645-0.446l0.015 0.008c-0.019-0.001-0.041-0.002-0.064-0.002-0.154 0-0.299 0.039-0.425 0.109l0.005-0.002c-0.063 0.032-0.115 0.078-0.153 0.135l-0.001 0.001c0.258 0.244 0.567 0.435 0.91 0.556l0.018 0.006c0.094 0.036 0.2 0.070 0.32 0.108 0.971 0.167 1.784 0.732 2.282 1.516l0.008 0.014c0.087 0.225 0.137 0.486 0.137 0.758 0 0.403-0.11 0.781-0.303 1.104l0.005-0.010c-0.459 0.983-1.016 1.829-1.677 2.582l0.011-0.012c-0.588 0.687-1.26 1.279-2.004 1.768l-0.036 0.022c-0.689 0.451-1.49 0.805-2.346 1.017l-0.054 0.011c0.060 0.034 0.132 0.072 0.218 0.112 0.776 0.322 1.678 0.561 2.618 0.675l0.050 0.005 0.498 0.078 0.234 0.446c0.116 0.255 0.209 0.553 0.265 0.863l0.003 0.023c0.038 0.164 0.072 0.328 0.118 0.496 0.12-0.014 0.242-0.042 0.378-0.068 0.528-0.12 1.138-0.192 1.762-0.2l0.006-0zM30.244 22.892v0z"></path>\n</svg>\n',tiktok:'\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>tiktok</title>\n<path d="M29.046 7.029c-3.359 0-6.092-2.733-6.092-6.092 0-0.518-0.42-0.938-0.938-0.938h-5.021c-0.518 0-0.938 0.42-0.938 0.938v20.585c0 1.975-1.606 3.581-3.581 3.581s-3.581-1.606-3.581-3.581c0-1.975 1.606-3.581 3.581-3.581 0.518 0 0.938-0.42 0.938-0.938v-5.021c0-0.518-0.42-0.938-0.938-0.938-5.777 0-10.477 4.7-10.477 10.477s4.7 10.477 10.477 10.477c5.777 0 10.477-4.7 10.477-10.477v-9.112c1.866 0.995 3.942 1.514 6.092 1.514 0.518 0 0.938-0.42 0.938-0.938v-5.021c0-0.518-0.42-0.938-0.938-0.938zM28.108 12.011c-2.001-0.166-3.902-0.866-5.544-2.047-0.285-0.206-0.662-0.234-0.975-0.073s-0.51 0.482-0.51 0.834v10.798c0 4.743-3.859 8.602-8.602 8.602s-8.602-3.859-8.602-8.602c0-4.427 3.361-8.083 7.665-8.552v3.176c-2.563 0.446-4.519 2.687-4.519 5.376 0 3.009 2.447 5.456 5.456 5.456s5.456-2.448 5.456-5.456v-19.648h3.201c0.429 3.645 3.329 6.545 6.974 6.974z"></path>\n</svg>\n'},this.socialSlot=this.host.querySelector('[slot="social-item"]')?.innerHTML||'<a href={link} rel="noopener" target="_blank" title={type} aria-label={type}><span class="s-social-icon">{icon}</span></a>',salla.lang.onLoaded((()=>{this.links=salla.config.get("store.social")}))}getLinksArray(){return this.links?Object.entries(this.links).filter((([c,l])=>!!l&&"whatsapp"!==c)).map((([c,l])=>({type:c,value:l}))):[]}componentWillLoad(){return new Promise((c=>salla.onReady(c)))}render(){const c=this.getLinksArray();return l(t,{key:"a0b31aa06db07b8b4018b8d178dc27726eddb43e"},l("ul",{key:"b758199092ddf7c0e0b384f3f118d00c239104dd",class:"s-social-list"},c.map((c=>l("li",{class:"s-social-link"},l("div",{id:"social-slot",innerHTML:this.socialSlot.replace(/\{icon\}/g,this.iconsList[c.type]).replace(/\{type\}/g,c.type).replace(/\{link\}/g,c.value.toString())}))))))}componentDidRender(){this.host.querySelectorAll("#social-slot").forEach((c=>c.replaceWith(c.firstChild))),this.host.querySelector('[slot="social-item"]')?.remove()}get host(){return s(this)}};o.style=":host{display:block}";export{o as salla_social}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * Crafted with ❤ by Salla
3
3
  */
4
- import{r as e,h as s,H as a}from"./p-BYCfehfD.js";const t=class{constructor(s){e(this,s),this.dark=!1,this.commercialRegisterLabel="",this.freelanceLabel=""}componentWillLoad(){this.initializeTranslations()}initializeTranslations(){salla.lang.onLoaded((()=>{const e=(e,s,a)=>{salla.helpers.setNested(salla.lang.messages[e],s,a)};e("ar.trans","blocks.footer.commercial_register","السجل التجاري"),e("en.trans","blocks.footer.commercial_register","Commercial Register"),e("ar.trans","blocks.footer.freelance","وثيقة العمل الحر"),e("en.trans","blocks.footer.freelance","Freelance Certificate"),this.commercialRegisterLabel=salla.lang.getWithDefault("blocks.footer.commercial_register","السجل التجاري"),this.freelanceLabel=salla.lang.getWithDefault("blocks.footer.freelance","وثيقة العمل الحر")}))}getBadgeData(){const e=salla.config.get("store.settings.commercial_number"),s=salla.config.get("store.settings.freelance_number");return e?{number:e,label:this.commercialRegisterLabel||"السجل التجاري",imageUrl:salla.url.cdn("images/commercial-register.png",70,70),type:"commercial"}:s?{number:s,label:this.freelanceLabel||"وثيقة العمل الحر",imageUrl:this.dark?salla.url.cdn("images/freelance-white.png"):salla.url.cdn("images/freelance.png"),type:"freelance"}:null}render(){const e=this.getBadgeData();return e?s(a,{class:"s-trust-badges-wrapper "+(this.dark?"dark":"")},s("img",{class:"s-trust-badges-image",width:"55",height:"55",src:e.imageUrl,alt:e.label}),s("div",{class:"s-trust-badges-content"},s("p",{class:"s-trust-badges-label"},e.label),s("b",{class:"s-trust-badges-number"},e.number))):null}};t.style="";export{t as salla_trust_badges}
4
+ import{r as e,h as s,H as a}from"./p-aDXaoBqI.js";const t=class{constructor(s){e(this,s),this.dark=!1,this.commercialRegisterLabel="",this.freelanceLabel=""}componentWillLoad(){this.initializeTranslations()}initializeTranslations(){salla.lang.onLoaded((()=>{const e=(e,s,a)=>{salla.helpers.setNested(salla.lang.messages[e],s,a)};e("ar.trans","blocks.footer.commercial_register","السجل التجاري"),e("en.trans","blocks.footer.commercial_register","Commercial Register"),e("ar.trans","blocks.footer.freelance","وثيقة العمل الحر"),e("en.trans","blocks.footer.freelance","Freelance Certificate"),this.commercialRegisterLabel=salla.lang.getWithDefault("blocks.footer.commercial_register","السجل التجاري"),this.freelanceLabel=salla.lang.getWithDefault("blocks.footer.freelance","وثيقة العمل الحر")}))}getBadgeData(){const e=salla.config.get("store.settings.commercial_number"),s=salla.config.get("store.settings.freelance_number");return e?{number:e,label:this.commercialRegisterLabel||"السجل التجاري",imageUrl:salla.url.cdn("images/commercial-register.png",70,70),type:"commercial"}:s?{number:s,label:this.freelanceLabel||"وثيقة العمل الحر",imageUrl:this.dark?salla.url.cdn("images/freelance-white.png"):salla.url.cdn("images/freelance.png"),type:"freelance"}:null}render(){const e=this.getBadgeData();return e?s(a,{class:"s-trust-badges-wrapper "+(this.dark?"dark":"")},s("img",{class:"s-trust-badges-image",width:"55",height:"55",src:e.imageUrl,alt:e.label}),s("div",{class:"s-trust-badges-content"},s("p",{class:"s-trust-badges-label"},e.label),s("b",{class:"s-trust-badges-number"},e.number))):null}};t.style="";export{t as salla_trust_badges}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * Crafted with ❤ by Salla
3
3
  */
4
- import{r as a,h as t,H as s,a as e}from"./p-BYCfehfD.js";const i=class{constructor(t){if(a(this,t),this.entity="product",this.specs=[],this.download=salla.lang.get("pages.thank_you.download"),this.entityId)try{return void(this.entityId=Array.isArray(this.entityId)?this.entityId:JSON.parse(this.entityId))}catch(a){salla.log("Bad json passed via entityId prop")}}getValue(a){if("file"===a.type)return`<a href="${a.value}" class="text-primary" target="_blank"><span class="sicon-download"></span> ${this.download}</a>`;if("url"===a.type)return`<a href="${a.value}" class="text-blue-700 underline" target="_blank">${a.value}</a>`;if("date"===a.type){const t=new Date(a.value);return`${String(t.getDate()).padStart(2,"0")}/${String(t.getMonth()+1).padStart(2,"0")}/${t.getFullYear()}`}return a.value}async componentWillLoad(){if(await salla.onReady(),!salla.config.get("store.features")?.includes("custom-fields"))return salla.logger.error("feature custom-fields is not activated");if(this.entityId||!salla.url.is_page("product.single")&&!salla.url.is_page("product.showNewUrls")||(this.entityId=salla.config.get("page.id")),!this.entityId)return salla.logger.error("can't render salla-metadata without enity-id prop!");await salla.lang.onLoaded(),this.download=salla.lang.get("pages.thank_you.download");const a=await Salla.api.metadata.fetchValues(this.entity,this.entityId);this.specs=a.data[0]?.sections}render(){if(this.specs.length)return t(s,{class:"s-metadata-wrapper"},this.specs.map((a=>t("div",{class:"s-metadata-box"},t("div",{class:"s-metadata-box-header"},t("i",{class:"sicon-list"}),a.name),a.fields.map((a=>t("div",{class:"s-metadata-row"},t("p",{class:"s-metadata-row-name"},a.name),t("p",{class:"s-metadata-row-value",innerHTML:this.getValue(a)}))))))))}get host(){return e(this)}};i.style="";export{i as salla_metadata}
4
+ import{r as a,h as t,H as s,a as e}from"./p-aDXaoBqI.js";const i=class{constructor(t){if(a(this,t),this.entity="product",this.specs=[],this.download=salla.lang.get("pages.thank_you.download"),this.entityId)try{return void(this.entityId=Array.isArray(this.entityId)?this.entityId:JSON.parse(this.entityId))}catch(a){salla.log("Bad json passed via entityId prop")}}getValue(a){if("file"===a.type)return`<a href="${a.value}" class="text-primary" target="_blank"><span class="sicon-download"></span> ${this.download}</a>`;if("url"===a.type)return`<a href="${a.value}" class="text-blue-700 underline" target="_blank">${a.value}</a>`;if("date"===a.type){const t=new Date(a.value);return`${String(t.getDate()).padStart(2,"0")}/${String(t.getMonth()+1).padStart(2,"0")}/${t.getFullYear()}`}return a.value}async componentWillLoad(){if(await salla.onReady(),!salla.config.get("store.features")?.includes("custom-fields"))return salla.logger.error("feature custom-fields is not activated");if(this.entityId||!salla.url.is_page("product.single")&&!salla.url.is_page("product.showNewUrls")||(this.entityId=salla.config.get("page.id")),!this.entityId)return salla.logger.error("can't render salla-metadata without enity-id prop!");await salla.lang.onLoaded(),this.download=salla.lang.get("pages.thank_you.download");const a=await Salla.api.metadata.fetchValues(this.entity,this.entityId);this.specs=a.data[0]?.sections}render(){if(this.specs.length)return t(s,{class:"s-metadata-wrapper"},this.specs.map((a=>t("div",{class:"s-metadata-box"},t("div",{class:"s-metadata-box-header"},t("i",{class:"sicon-list"}),a.name),a.fields.map((a=>t("div",{class:"s-metadata-row"},t("p",{class:"s-metadata-row-name"},a.name),t("p",{class:"s-metadata-row-value",innerHTML:this.getValue(a)}))))))))}get host(){return e(this)}};i.style="";export{i as salla_metadata}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * Crafted with ❤ by Salla
3
3
  */
4
- import{r as t,c as s,h as e,H as i}from"./p-BYCfehfD.js";import{S as l}from"./p-BscTeWDc.js";import{L as a}from"./p-BO5AoBAP.js";import{a as n,A as r}from"./p-Vqpj4CWE.js";const h="BulletDeliveryAPI",o=t=>{const s=null==t?Number.NaN:Number(t);return!Number.isNaN(s)&&0!==s};async function d(t,s,e){try{return await t()}catch(t){return console.error(`${h}: ${e}`,t),s}}const c=t=>"SA"===String(t).toUpperCase(),u={getCountries:async(t=!1)=>d((async()=>((await salla.api.request("shipping/countries",{params:{for_branch:t?1:0}}))?.data??[]).map((t=>({id:t.id,code:t.code,name:t.name,has_regions:c(t.code)})))),[],"Error getting countries"),getRegions:async t=>o(t)?d((async()=>((await salla.api.request(`shipping/countries/${t}/regions`))?.data??[]).map((s=>({id:s.id,name:s.name,code:s.code,country_id:Number(t)})))),[],"Error fetching regions"):(console.warn(`${h}: getRegions called without valid country_id`),[]),getCities:async(t,s)=>o(t)?d((async()=>{const e={for_branch:0,country_id:t};return s&&(e.region_id=s),((await salla.api.request("shipping/cities",{params:e}))?.data??[]).map((s=>({id:s.id,name:s.name,country_id:t,...null!=s.region_id&&{region_id:s.region_id}})))}),[],"Error fetching cities"):(console.warn(`${h}: getCities called without valid country_id`),[]),getDistricts:async t=>o(t)?d((async()=>{const s=(await salla.api.request("shipping/districts",{params:{for_branch:0,city_id:t}}))?.data;return(Array.isArray(s)?s:Array.isArray(s?.districts)?s.districts:[]).map((s=>({id:s.id,name:s.name,name_en:s.name_en,city_id:t})))}),[],"Error fetching districts"):(console.warn(`${h}: getDistricts called without valid city_id`),[]),getSavedAddresses:async()=>d((async()=>{const t=(await salla.api.request("address"))?.data;return Array.isArray(t)?t:[]}),[],"Error fetching user addresses"),getBranches:async({query:t,lat:s,lng:e,country_id:i,per_page:l=20}={})=>d((async()=>{const a={per_page:l};t?.trim().length>=2&&(a.query=t),s&&(a.lat=s),e&&(a.lng=e),i&&(a.country_id=i);const n=await salla.api.request("branches",{params:a});return Array.isArray(n?.data)?n.data:[]}),[],"Error fetching branches"),saveAddressLocation:async t=>d((async()=>{const s=await salla.api.request("address/location",{...t,for_allocation:!0},"post"),e=s?.data??s;return{success:!0,address:"object"==typeof e&&null!=e&&"id"in e?e:void 0}}),{success:!1},"Error saving address/location"),setDeliveryScope:async t=>d((async()=>(await salla.scope.change({id:t}),salla.storage.set("scope",{...salla.storage.get("scope")||{},id:t}),!0)),!1,"Error setting delivery scope"),async allocateScope(t){try{const s=await salla.api.request("scopes/allocation",t,"post");return{success:!0,data:s?.data??s}}catch(t){console.error(`${h}: Error allocating scope`,t);const e=t;return{success:!1,error:null!=e?.response?.data?(s=e.response.data,s?.error?.message??s?.message??"Failed to allocate scope"):e?.message??"Unknown error"}}var s}},b=t=>t*(Math.PI/180);function y(t,s,e,i){const l=b(e-t),a=b(i-s),n=Math.sin(l/2)**2+Math.cos(b(t))*Math.cos(b(e))*Math.sin(a/2)**2;return 12742*Math.atan2(Math.sqrt(n),Math.sqrt(1-n))}function p(t,s){const[e,i]=String(t).trim().split(":").map(Number);return Number.isNaN(e)||Number.isNaN(i)?t:new Date(2e3,0,1,e,i).toLocaleTimeString(s,{hour:"numeric",minute:"2-digit",hour12:!0})}const v=(t,s,e)=>{if("branch"===t.type){const s=t.branch_details?.city??t.branch_details?.name;return s?`${e} ${s}`.trim():""}if("address"===t.type&&t.address_details){const e=[t.address_details.district?.name,t.address_details.city?.name,t.address_details.country?.name].filter(Boolean).join("، ")||t.address_details.short_address||"";return e?`${s} ${e}`.trim():""}return""},g=t=>null!=t?Number(t):void 0,m=t=>g(t?.address_details?.country?.id),f=t=>t?.country_code??t?.address_details?.country?.code??"",_=t=>g(t?.address_details?.region?.id),C=t=>g(t?.address_details?.city?.id),k=t=>g(t?.address_details?.district?.id),S=t=>t?.branch_details?.id,w=t=>t?.branch_details?.latitude,x=t=>t?.branch_details?.longitude,M=t=>{if(!t||"address"!==t.type||t.address_id)return!1;const s=m(t),e=C(t),i=k(t),l=f(t),a=null!=i&&0!==Number(i),n=Boolean(t.address_details?.district?.name?.trim()),r=!c(l)||a||n;return!!(s&&e&&r)},A=(t,s,e)=>!t||!c(t)||null!=s&&0!==Number(s)&&null!=e&&("number"==typeof e?0!==e:String(e).trim().length>0),B={[GeolocationPositionError.PERMISSION_DENIED]:"Location permission denied",[GeolocationPositionError.POSITION_UNAVAILABLE]:"Location unavailable",[GeolocationPositionError.TIMEOUT]:"Location timeout"};var L='<svg width="15" height="14" viewBox="0 0 15 14" fill="none" xmlns="http://www.w3.org/2000/svg">\n <path\n d="M1.14453 5.83032L1.14453 9.16486C1.14453 11.0511 1.14453 11.9943 1.73032 12.5803C2.3161 13.1663 3.25891 13.1663 5.14453 13.1663L9.14453 13.1663C11.0301 13.1663 11.9729 13.1663 12.5587 12.5803C13.1445 11.9943 13.1445 11.0511 13.1445 9.16486V5.83032"\n stroke="currentcolor" stroke-linecap="round" />\n <path\n d="M9.14453 10.1619C8.68846 10.5667 7.9624 10.8285 7.14453 10.8285C6.32666 10.8285 5.60059 10.5667 5.14453 10.1619"\n stroke="currentcolor" stroke-linecap="round" />\n <path\n d="M5.90256 4.44533C5.71455 5.12426 5.03086 6.29542 3.73185 6.46516C2.58488 6.61502 1.71497 6.11437 1.49277 5.90504C1.24779 5.7353 0.689441 5.19216 0.552703 4.85269C0.415966 4.51322 0.575492 3.77771 0.689441 3.47785L1.14495 2.15892C1.25615 1.82765 1.51646 1.04411 1.78334 0.779094C2.05022 0.514073 2.59054 0.502543 2.81294 0.502543L7.48329 0.502543C8.68543 0.519525 11.3139 0.491824 11.8335 0.502545C12.3532 0.513266 12.6654 0.948828 12.7565 1.13553C13.5318 3.01341 13.8333 4.08889 13.8333 4.54717C13.7321 5.03605 13.3133 5.95787 11.8335 6.36332C10.2956 6.7847 9.42363 5.96509 9.15007 5.65043M5.27015 5.65044C5.48665 5.91635 6.16578 6.45158 7.15029 6.46516C8.1348 6.47873 8.98485 5.79188 9.28681 5.44676C9.37227 5.34492 9.55687 5.04279 9.7483 4.44533"\n stroke="currentcolor" stroke-linecap="round" stroke-linejoin="round" />\n</svg>\n ';const N=class{constructor(e){t(this,e),this.bulletDeliveryConfirmed=s(this,"bulletDeliveryConfirmed"),this.bulletDeliveryClosed=s(this,"bulletDeliveryClosed"),this.addressCreated=s(this,"addressCreated"),this.headerContextUpdate=s(this,"headerContextUpdate"),this.confirming=!1,this.pendingCartSubmitResolver=null,this.pendingCartSubmitPromise=null,this.cartSubmitConfirmationPending=!1,this.branchSearchDebounceTimer=null,this.componentReady=!1,this.pendingOpen=!1,this.tabChanging=!1,this.intentStorageKey="bullet_delivery_intent",this.sessionShownKey="bullet_delivery_shown",this.incompleteIntentPromptKey="bullet_delivery_incomplete_intent_prompted",this.cartItemAddedEvent="cart::item.added",this.cartItemAddedHandler=null,this.cartSubmittingHandler=null,this.useCartEventApi=!1,this.authLoggedInHandler=null,this.authLoggedOutHandler=null,this.loginClosedHandler=null,this.hasExplicitPreselectedIdsForOpen=!1,this.bulletDeliveryOpenHandler=t=>{this.preselectedAddressId=t?.preselected_address_id,this.preselectedBranchId=t?.preselected_branch_id,this.hasExplicitPreselectedIdsForOpen=null!=t?.preselected_address_id||null!=t?.preselected_branch_id,this.open()},this.closeHandler=null,this.savedAddressesLoaded=!1,this.loading=!0,this.activeTab="address",this.isLoggedIn=!1,this.viewMode="main",this.countries=[],this.regions=[],this.cities=[],this.districts=[],this.loadingRegions=!1,this.selectedCountry=null,this.selectedRegion=null,this.selectedCity=null,this.selectedDistrict=null,this.districtName="",this.savedAddresses=[],this.selectedSavedAddress=null,this.selectedSessionAddress=!1,this.branches=[],this.filteredBranches=[],this.selectedBranch=null,this.branchSearchQuery="",this.loadingCities=!1,this.loadingDistricts=!1,this.loadingBranches=!1,this.loadingNearestBranch=!1,this.locationError="",this.savingAddress=!1,this.loadingSavedAddresses=!1,this.showCartWillBeClearedBanner=!1,this.allocationOutOfCoverageMessage=null,this.newAddressForm={...N.INITIAL_ADDRESS_FORM},this.handleSubmitAddAddress=async t=>{if(t.preventDefault(),!this.savingAddress&&this.selectedCountry&&this.selectedCity&&A(this.selectedCountry?.code,this.selectedRegion?.id,this.selectedDistrict?.id??(this.districtName?.trim()||null))){this.savingAddress=!0;try{const t=this.buildAddressLocationPayload(),{success:s,address:e}=await u.saveAddressLocation(t);if(s){await this.loadSavedAddresses();const t=e??this.savedAddresses[0]??null;t?.is_in_coverage&&(this.selectedSessionAddress=!1,this.selectedSavedAddress=t),this.addressCreated.emit({address:t}),this.viewMode="main",this.districtName=""}else Salla.notify?.error(Salla.lang.get("common.errors.error_occurred"))}catch(t){console.error("SallaBulletDelivery: Error saving address",t),Salla.notify?.error(Salla.lang.get("common.errors.error_occurred"))}finally{this.savingAddress=!1}}}}get supportsPickup(){return!!Salla.config.get("store.settings.bullet_delivery.supports_pickup")}get openingType(){return Salla.config.get("store.settings.bullet_delivery.settings.type")}get isRequired(){return!!Salla.config.get("store.settings.bullet_delivery.settings.is_required")}async open(){if(this.componentReady&&this.modal){this.resetState(),this.loading=!0,this.modal.open();try{this.isLoggedIn=!this.isGuestUser();const t=this.cleanStaleGuestAddressIdIfNeeded(this.getStoredIntent());this.applyPreselectedIdsFromIntent(t);const s=!this.isLoggedIn&&"address"===t?.type&&null!=m(t)&&null!=C(t);if(this.activeTab=this.supportsPickup&&t?.type&&("address"===t.type||"branch"===t.type)?t.type:"address",await Promise.all([this.loadCountries(s),this.isLoggedIn&&"address"===this.activeTab?this.loadSavedAddresses().then((()=>{this.savedAddressesLoaded=!0})):Promise.resolve()]),this.isLoggedIn&&this.preselectedAddressId){const t=this.savedAddresses.find((t=>t.id===this.preselectedAddressId));t&&(this.selectedSessionAddress=!1,this.selectedSavedAddress=t)}if("branch"===this.activeTab){const s=w(t),e=x(t);if(null!=s&&null!=e?await this.loadBranchesWithLocation(s,e):await this.loadBranches(),this.preselectedBranchId){const t=this.branches.find((t=>t.id===this.preselectedBranchId));t&&(this.selectedBranch=t)}}await this.prefillFromSessionStorage()}catch(t){console.error("SallaBulletDelivery: Error loading data",t)}finally{this.loading=!1,this.modal?.stopLoading(),this.overrideScopeSwitchUI()}}else this.pendingOpen=!0}async close(){if(!this.shouldForceNonClosable()||this.confirming)return this.cartSubmitConfirmationPending&&!this.confirming&&this.resolvePendingCartSubmit(),this.bulletDeliveryClosed.emit(),this.modal?.close()}resetState(){this.viewMode="main",this.selectedCountry=null,this.selectedRegion=null,this.selectedCity=null,this.selectedDistrict=null,this.districtName="",this.selectedSavedAddress=null,this.selectedSessionAddress=!1,this.selectedBranch=null,this.branchSearchQuery="",this.regions=[],this.cities=[],this.districts=[],this.branches=[],this.filteredBranches=[],this.newAddressForm={...N.INITIAL_ADDRESS_FORM},this.showCartWillBeClearedBanner=!1,this.allocationOutOfCoverageMessage=null,this.locationError="",this.savedAddressesLoaded=!1,this.loadingSavedAddresses=!1}getIntentStorage(){const t=Boolean(Salla.config.get("store.settings.bullet_delivery.settings.remember_last_session"));return Salla.storage[t?"store":"session"]}getShownStorage(){return Salla.storage.session}getStoredIntent(){return this.getIntentStorage().get(this.intentStorageKey)}isGuestUser(){return"guest"===String(Salla.config.get("user.type")??"guest")}cleanStaleGuestAddressIdIfNeeded(t){if(!this.isGuestUser()||"address"!==t?.type||!t.address_id)return t;const s={...t,address_id:void 0};return this.setStoredIntent(s),s}applyPreselectedIdsFromIntent(t){this.hasExplicitPreselectedIdsForOpen?this.hasExplicitPreselectedIdsForOpen=!1:(this.preselectedAddressId=void 0,this.preselectedBranchId=void 0,this.isGuestUser()?"branch"===t?.type&&t.branch_id&&(this.preselectedBranchId=t.branch_id):"address"===t?.type&&t.address_id?this.preselectedAddressId=t.address_id:"branch"===t?.type&&t.branch_id&&(this.preselectedBranchId=t.branch_id))}hasIncompleteUserAddressIntent(){if(this.isGuestUser())return!1;const t=this.getStoredIntent();return!(!t||"address"!==t.type||t.address_id||!t.address_details)&&M(t)}hasCompleteIntentForLoggedInUser(){if(this.isGuestUser())return!1;const t=this.getStoredIntent();return!!t&&("address"===t.type?!!t.address_id:"branch"===t.type&&!!t.branch_id)}shouldForceNonClosable(){return!this.isGuestUser()&&!!Salla.url.is_page("cart")&&!this.hasCompleteIntentForLoggedInUser()}shouldPromptIncompleteIntentThisSession(){const t=this.getShownStorage();return this.hasIncompleteUserAddressIntent()&&!0!==t.get(this.incompleteIntentPromptKey)}markIncompleteIntentPrompted(){this.getShownStorage().set(this.incompleteIntentPromptKey,!0)}setStoredIntent(t){this.getIntentStorage().set(this.intentStorageKey,t),this.overrideScopeSwitchUI()}clearBulletDeliveryStoredData(){Salla.storage.session.remove(this.intentStorageKey),Salla.storage.store.remove(this.intentStorageKey),Salla.storage.session.remove(this.sessionShownKey),Salla.storage.session.remove(this.incompleteIntentPromptKey),this.overrideScopeSwitchUI()}async prefillAddressFromStoredIntent(){const t=this.getStoredIntent();if(!t||"address"!==t.type||null==C(t))return;const s=m(t);if(!s)return;const e=this.countries.find((t=>String(t.id)===String(s)));if(!e)return;this.selectedCountry=e,this.updateNewAddressForm({country_id:Number(e.id)});const i=c(e.code),l=C(t),a=_(t),n=k(t),r=t.address_details?.district?.name,[h,o,d]=await Promise.all([i?u.getRegions(e.id):Promise.resolve([]),u.getCities(e.id,i&&null!=a?a:void 0),null!=l?u.getDistricts(Number(l)):Promise.resolve([])]);if(i&&(this.regions=h),this.cities=o,this.districts=d,this.loadingCities=!1,this.loadingRegions=!1,this.loadingDistricts=!1,i&&null!=a){const t=this.regions.find((t=>String(t.id)===String(a)));t&&(this.selectedRegion=t,this.updateNewAddressForm({region_id:t.id}))}if(null!=l&&this.cities.length>0){const t=this.cities.find((t=>String(t.id)===String(l)));t&&(this.selectedCity=t,this.updateNewAddressForm({city_id:t.id,city:t}))}if(this.districts.length>0){const t=this.findPrefillDistrict(n,r);t&&(this.updateNewAddressForm({district_id:t.id,district:t}),this.selectedDistrict=t)}!this.selectedDistrict&&r&&(this.districtName=r)}updateNewAddressForm(t){this.newAddressForm={...this.newAddressForm,...t}}hasBeenShownThisSession(){return!0===this.getShownStorage().get(this.sessionShownKey)}markShownThisSession(){this.getShownStorage().set(this.sessionShownKey,!0)}async loadCountries(t=!1){const s="branch"===this.activeTab;this.countries=await u.getCountries(s);const e=Salla.config.get("store.settings.bullet_delivery.customer_location.country"),i=e&&this.countries.length>0?this.countries.find((t=>String(t.code).toUpperCase()===String(e).toUpperCase())):null;i&&(this.selectedCountry=i,this.updateNewAddressForm({country_id:Number(this.selectedCountry.id)}),t||(c(this.selectedCountry.code)?await this.loadRegions(this.selectedCountry.id):await this.loadCities(this.selectedCountry.id)))}async loadCities(t,s){this.loadingCities=!0,this.cities=[],this.districts=[],this.selectedCity=null,this.selectedDistrict=null,this.districtName="";try{this.cities=await u.getCities(t,s)}finally{this.loadingCities=!1}}async loadDistricts(t){this.loadingDistricts=!0,this.districts=[],this.selectedDistrict=null,this.districtName="";try{this.districts=await u.getDistricts(t)}finally{this.loadingDistricts=!1}}findPrefillDistrict(t,s){if(0===this.districts.length)return;if(null!=t){const s=this.districts.find((s=>String(s.id)===String(t)));if(s)return s}const e=s?.trim().toLowerCase();return e?this.districts.find((t=>{const s=t.name?.trim().toLowerCase(),i=t.name_en?.trim().toLowerCase();return s===e||i===e})):void 0}async loadBranches(){this.loadingBranches=!0;try{this.branches=await u.getBranches({country_id:this.selectedCountry?.id}),this.filterBranches()}finally{this.loadingBranches=!1}}filterBranches(){this.filteredBranches=((t,s)=>{if(!s)return t;const e=s.toLowerCase();return t.filter((t=>t.name.toLowerCase().includes(e)||t.city?.name?.toLowerCase().includes(e)))})(this.branches,this.branchSearchQuery)}async prefillFromSessionStorage(){try{const t=this.getStoredIntent();if(!t)return;if("address"!==this.activeTab||"address"!==t.type||this.isLoggedIn||await this.prefillAddressFromStoredIntent(),"branch"===this.activeTab&&"branch"===t.type){const s=m(t);if(null!=s){const e=this.countries.find((t=>String(t.id)===String(s)));if(e){this.selectedCountry=e,this.updateNewAddressForm({country_id:Number(e.id)});const s=S(t);if(null!=s&&this.branches.length>0){const t=this.branches.find((t=>t.id===s));t&&(this.selectedBranch=t)}}}}}catch(t){console.error("[BulletDelivery] Error prefilling from session storage:",t)}}async loadSavedAddresses(){this.savedAddresses=await u.getSavedAddresses();const t=this.getStoredIntent();if(M(t))this.selectedSessionAddress=!0,this.selectedSavedAddress=null;else{const t=this.savedAddresses.find((t=>t.is_default&&!1!==t.is_in_coverage));if(t)this.selectedSavedAddress=t;else{const t=this.savedAddresses.find((t=>!1!==t.is_in_coverage));t&&(this.selectedSavedAddress=t)}}}applyCountryChange(t){this.selectedCountry=t,this.selectedRegion=null,this.regions=[],this.cities=[],this.districts=[],this.selectedCity=null,this.selectedDistrict=null,this.districtName="",this.allocationOutOfCoverageMessage=null,this.selectedCountry&&(this.updateNewAddressForm({country_id:Number(this.selectedCountry.id),region_id:void 0,city_id:void 0,district_id:void 0,city:void 0,district:void 0}),"branch"===this.activeTab?this.loadBranches():c(this.selectedCountry.code)?this.loadRegions(this.selectedCountry.id):this.loadCities(this.selectedCountry.id))}async loadRegions(t){this.loadingRegions=!0,this.regions=[],this.selectedRegion=null,this.cities=[],this.districts=[],this.selectedCity=null,this.selectedDistrict=null,this.districtName="";try{this.regions=await u.getRegions(t)}finally{this.loadingRegions=!1}}emitHeaderContextUpdate(t,s,e){let i="";"address"===t.type?s?i=s.district?.name&&s.city?.name?`${s.district.name}، ${s.city.name}`:s.city?.name??"":this.selectedCity?i=this.selectedDistrict?`${this.selectedDistrict.name}، ${this.selectedCity.name}`:this.selectedCity.name:t.address_details&&(i=[t.address_details.district?.name,t.address_details.city.name,t.address_details.country.name].filter(Boolean).join("، ")||t.address_details.short_address||""):e?i=e.name:t.branch_details&&(i=t.branch_details.city??t.branch_details.name);const l="address"===t.type?Salla.lang.get("mobile_app.strings.delivery"):Salla.lang.get("mobile_app.strings.pickup");this.headerContextUpdate.emit({type:t.type,display_text:i?`${l}: ${i}`:"",country_code:t.country_code,city:this.selectedCity?.name??t.address_details?.city?.name,district:this.selectedDistrict?.name??t.address_details?.district?.name,branch_name:e?.name??t.branch_details?.name})}handleBranchSearch(t){const s=t.target.value;if(this.branchSearchQuery=s,this.branchSearchDebounceTimer&&clearTimeout(this.branchSearchDebounceTimer),!s?.trim())return this.branchSearchQuery="",void this.loadBranches();this.branchSearchDebounceTimer=setTimeout((async()=>{if(!(s.trim().length<2)){this.loadingBranches=!0;try{this.branches=await u.getBranches({country_id:this.selectedCountry?.id,query:s}),this.filterBranches()}finally{this.loadingBranches=!1}}}),1e3)}async loadBranchesWithLocation(t,s){this.loadingBranches=!0;try{if(this.branches=await u.getBranches({country_id:this.selectedCountry?.id,lat:t,lng:s}),this.filterBranches(),!this.selectedCountry&&this.branches.length>0){const t=this.branches[0];if(t.country){const s=this.countries.find((s=>s.id===t.country.id));s&&(this.selectedCountry=s,this.updateNewAddressForm({country_id:Number(s.id)}))}}}finally{this.loadingBranches=!1}}async handleFindNearestBranch(){if(navigator.geolocation){this.loadingNearestBranch=!0,this.locationError="";try{const t=await new Promise(((t,s)=>{navigator.geolocation.getCurrentPosition(t,s,{enableHighAccuracy:!0,timeout:1e4,maximumAge:0})})),{latitude:s,longitude:e}=t.coords;await this.loadBranchesWithLocation(s,e);const i=function(t,s,e){let i=null,l=Number.POSITIVE_INFINITY;for(const a of t){const t=null!=a.location?.lat?Number(a.location.lat):Number.NaN,n=null!=a.location?.lng?Number(a.location.lng):Number.NaN;if(Number.isNaN(t)||Number.isNaN(n)||!1===a.is_open)continue;const r=y(s,e,t,n);r<l&&(l=r,i=a)}return i}(this.branches,s,e);i&&(this.selectedBranch=i,this.branchSearchQuery="",this.filterBranches())}catch(t){const s=t;this.locationError=B["number"==typeof s?.code?s.code:-1]??"An error occurred while detecting location"}finally{this.loadingNearestBranch=!1}}else this.locationError=Salla.lang.get("pages.checkout.current_location_not_supported")}handleBranchSelect(t){this.selectedBranch=t}handleSavedAddressSelect(t){!1!==t.is_in_coverage?(this.selectedSavedAddress=t,this.selectedSessionAddress=!1):Salla.notify?.error(Salla.lang.get("pages.checkout.shipping_not_available"))}handleSessionAddressSelect(){this.selectedSessionAddress=!0,this.selectedSavedAddress=null}async handleAddNewAddress(){this.viewMode="add-address";const t=this.getStoredIntent(),s=m(t);if(s&&this.countries.length>0){const t=this.countries.find((t=>t.id===s));t&&(this.selectedCountry=t,this.updateNewAddressForm({country_id:Number(t.id)}),c(t.code)?await this.loadRegions(t.id):await this.loadCities(t.id))}}handleBackToAddressList(){this.viewMode="main"}buildAddressLocationPayload(){const t=this.selectedDistrict?.name??this.districtName?.trim()??"";return function(t){const{countryId:s,countryCode:e,regionId:i,cityId:l,districtId:a,description:n=""}=t,r=n||"";return{country_id:Number(s)||void 0,region_id:null!=i?Number(i):void 0,city_id:null!=l?Number(l):void 0,district_id:null!=a?Number(a):void 0,description:r,...e&&c(e)&&{local:r}}}({countryId:this.selectedCountry?.id??0,countryCode:this.selectedCountry?.code,regionId:this.selectedRegion?.id,cityId:this.selectedCity?.id,districtId:this.selectedDistrict?.id,description:t})}async handleTabChange(t){if(!this.tabChanging){this.tabChanging=!0;try{this.activeTab=t,this.showCartWillBeClearedBanner=!1,this.allocationOutOfCoverageMessage=null;const s="branch"===t;this.countries=await u.getCountries(s);const e=this.selectedCountry?.id;if(null!=e&&(this.selectedCountry=this.countries.find((t=>t.id===e))||null),this.selectedCountry)if("branch"===t){const t=this.getStoredIntent(),s=w(t),e=x(t);null!=s&&null!=e?await this.loadBranchesWithLocation(s,e):await this.loadBranches();const i=S(t);if(null!=i&&this.branches.length>0){const t=this.branches.find((t=>t.id===i));t&&(this.selectedBranch=t)}}else if("address"===t){if(this.isLoggedIn&&!this.savedAddressesLoaded){this.loadingSavedAddresses=!0;try{await this.loadSavedAddresses(),this.savedAddressesLoaded=!0}finally{this.loadingSavedAddresses=!1}}if(!this.isLoggedIn){const t=this.getStoredIntent();t&&C(t)&&await this.prefillAddressFromStoredIntent()}}}finally{this.tabChanging=!1}}}isConfirmDisabled(){return"branch"===this.activeTab?!this.selectedBranch:!("address"!==this.activeTab||this.isLoggedIn&&this.selectedSessionAddress||(this.isLoggedIn&&this.selectedSavedAddress?!1!==this.selectedSavedAddress.is_in_coverage:this.selectedCountry&&this.selectedCity&&A(this.selectedCountry?.code,this.selectedRegion?.id,this.selectedDistrict?.id??(this.districtName?.trim()||null))))}handleLogin(){Salla.auth.setCanRedirect(!1),Salla.event.dispatch("bullet-delivery::close"),Salla.event.dispatch("login::open",Salla.url.is_page("cart")?{withoutReload:!0,source:"cart-submit"}:{withoutReload:!0,source:"bullet-delivery"})}resolvePendingCartSubmit(){if(!this.pendingCartSubmitResolver)return;const t=this.pendingCartSubmitResolver;this.pendingCartSubmitResolver=null,this.pendingCartSubmitPromise=null,this.cartSubmitConfirmationPending=!1,t()}buildIntentAddress(){if("address"!==this.activeTab||!this.selectedCountry||!this.selectedCity)return;const t={id:this.selectedCountry.id,name:this.selectedCountry.name,code:this.selectedCountry.code},s={id:this.selectedCity.id,name:this.selectedCity.name},e=this.selectedRegion?{id:this.selectedRegion.id,name:this.selectedRegion.name,code:this.selectedRegion.code}:void 0,i=this.selectedDistrict?{id:this.selectedDistrict.id,name:this.selectedDistrict.name}:this.districtName?{id:0,name:this.districtName}:void 0,l=this.selectedSavedAddress?.short_address;return{country:t,region:e,city:s,district:i,short_address:l}}buildIntentAddressFromSaved(t){return{country:{id:t.country?.id??t.country_id??0,name:t.country?.name??"",code:t.country?.code},region:t.region?{id:t.region.id,name:t.region.name,code:t.region.code}:void 0,city:{id:t.city?.id??t.city_id??0,name:t.city?.name??""},district:t.district?{id:t.district.id,name:t.district.name}:void 0,short_address:t.short_address}}buildIntentBranch(){if("branch"!==this.activeTab||!this.selectedBranch)return;const t=this.selectedBranch,s=null!=t.location?.lat?Number(t.location.lat):void 0,e=null!=t.location?.lng?Number(t.location.lng):void 0;return{id:t.id,name:t.name,city:t.city?.name,latitude:s,longitude:e}}async handleConfirm(){if(this.isConfirmDisabled()||this.confirming)return;this.confirming=!0,this.confirmBtn?.load();let t=!1;try{const s={type:this.activeTab,country_id:Number(this.selectedCountry?.id)||0,country_code:this.selectedCountry?.code||""};let e,i,l;if("address"===this.activeTab)if(this.isLoggedIn&&this.selectedSessionAddress){const t=await this.saveSessionAddressToProfile();if(!t)return Salla.notify?.error(Salla.lang.get("common.errors.error_occurred")),void this.confirmBtn?.stop();s.address_id=t.id,e=t,this.selectedSessionAddress=!1,this.selectedSavedAddress=t,s.address_details=this.buildIntentAddressFromSaved(t)}else this.isLoggedIn&&this.selectedSavedAddress?(s.address_id=this.selectedSavedAddress.id,e=this.selectedSavedAddress,s.address_details=this.buildIntentAddressFromSaved(this.selectedSavedAddress)):s.address_details=this.buildIntentAddress();else s.branch_details=this.buildIntentBranch(),s.branch_id=this.selectedBranch?.id,i=this.selectedBranch||void 0;"address"===this.activeTab?this.isLoggedIn&&this.selectedSavedAddress?l={type:"address",address_id:String(this.selectedSavedAddress.id)}:(l={type:"address",country_id:String(this.selectedCountry?.id||0),city_id:String(this.selectedCity?.id||"")},c(this.selectedCountry?.code??"")&&(this.selectedRegion?.id&&(l.region_id=String(this.selectedRegion.id)),l.district_id=String(this.selectedDistrict?.id||""))):l={type:"branch",branch_id:String(this.selectedBranch?.id||"")};const a=await u.allocateScope(l);if(!a.success){console.error("BulletDelivery: Scope allocation failed",a.error);const t=a.error||("address"===this.activeTab?Salla.lang.get("pages.checkout.address_out_of_coverage"):Salla.lang.get("pages.checkout.failed_to_set_pickup"));return Salla.notify?.error(t),this.allocationOutOfCoverageMessage=t,this.confirmBtn?.stop(),void(this.confirming=!1)}let n;if(a.data){const t=a.data;n=t.id;const e=t?.allocation?.type,i=t?.allocation?.branch_id;e&&Salla.api.setHeader("s-scope-allocation-type",e),i&&Salla.api.setHeader("s-scope-allocation-id",String(i));const l=Salla.config.get("store.scope",Salla.storage.get("scope"))||{};Salla.storage.set("scope",{...l,id:n,allocation_type:e,allocation_id:i?String(i):void 0}),s.allocation_headers={"s-scope-allocation-type":e,"s-scope-allocation-id":i?String(i):void 0}}this.markShownThisSession(),this.setStoredIntent(s),n&&await u.setDeliveryScope(n),this.bulletDeliveryConfirmed.emit({...s,address:e,branch:i}),this.emitHeaderContextUpdate(s,e,i),t=!0,setTimeout((()=>{if(this.confirmBtn?.stop(),this.close(),this.confirming=!1,this.cartSubmitConfirmationPending)this.resolvePendingCartSubmit();else if(n){const t=Salla.storage.get("scope")||{};let s=Salla.helpers.addParamToUrl("scope",n);t.allocation_id&&(s=Salla.helpers.addParamToUrl("allocation_id",t.allocation_id,s)),t.allocation_type&&(s=Salla.helpers.addParamToUrl("allocation_type",t.allocation_type,s)),window.location.replace(s)}else window.location.reload()}),500)}finally{t||(this.confirming=!1)}}getCartViewConfig(t){if(!t||!Salla.url.is_page("cart"))return null;const s="branch"===t.type,e="address"===t.type;return s&&!this.supportsPickup||!s&&!e?null:{title:s?Salla.lang.get("pages.checkout.pickup_option"):Salla.lang.get("pages.checkout.delivery_option"),subtitle:v(t,Salla.lang.get("common.elements.to"),""),buttonText:Salla.lang.get("common.elements.edit"),isAddress:e,intent:t}}createCartViewElement(){const t=this.getStoredIntent(),s=this.getCartViewConfig(t);if(!s)return null;const{title:e,subtitle:i,buttonText:l,intent:n}=s,r="branch"===n.type?{preselected_branch_id:S(n)}:{preselected_address_id:n.address_id},h=document.createElement("span");h.className="s-bullet-delivery-cart-view-icon s-bullet-delivery-tab-icon",h.setAttribute("aria-hidden","true"),h.innerHTML=a;const o=document.createElement("span");o.className="s-bullet-delivery-cart-view-title",o.textContent=e;const d=document.createElement("span");d.className="s-bullet-delivery-cart-view-subtitle",d.textContent=i;const c=document.createElement("div");c.className="s-bullet-delivery-cart-view-text",c.append(o,d);const u=document.createElement("div");u.className="s-bullet-delivery-cart-view-info",u.append(h,c);const b=document.createElement("salla-button");b.className="s-bullet-delivery-cart-view-button",b.setAttribute("fill","outline"),b.setAttribute("color","primary"),b.textContent=l,b.addEventListener("click",(()=>Salla.event.emit("bullet-delivery::open",r)));const y=document.createElement("div");return y.className="s-bullet-delivery-cart-view",y.append(u,b),y}renderSkeleton(){return e("div",{slot:"loading",class:"s-bullet-delivery-skeleton"},e("div",{class:"s-bullet-delivery-skeleton-header"},e("salla-skeleton",{class:"s-bullet-delivery-skeleton-title",height:"28px",width:"68%"}),e("salla-skeleton",{class:"s-bullet-delivery-skeleton-subtitle",height:"18px",width:"84%"})),e("div",{class:{"s-bullet-delivery-skeleton-tabs":!0,"s-bullet-delivery-skeleton-tabs--single":!this.supportsPickup}},e("div",{class:"s-bullet-delivery-skeleton-tab"},e("salla-skeleton",{class:"s-bullet-delivery-skeleton-tab-icon",height:"32px",width:"32px"}),e("salla-skeleton",{class:"s-bullet-delivery-skeleton-tab-label",height:"18px",width:"92px"})),this.supportsPickup&&e("div",{class:"s-bullet-delivery-skeleton-tab"},e("salla-skeleton",{class:"s-bullet-delivery-skeleton-tab-icon",height:"32px",width:"32px"}),e("salla-skeleton",{class:"s-bullet-delivery-skeleton-tab-label",height:"18px",width:"84px"}))),e("div",{class:"s-bullet-delivery-skeleton-content"},e("div",{class:"s-bullet-delivery-skeleton-field"},e("salla-skeleton",{class:"s-bullet-delivery-skeleton-field-label",height:"16px",width:"96px"}),e("salla-skeleton",{class:"s-bullet-delivery-skeleton-field-control",height:"56px",width:"100%"})),e("div",{class:"s-bullet-delivery-skeleton-field"},e("salla-skeleton",{class:"s-bullet-delivery-skeleton-field-label",height:"16px",width:"104px"}),e("salla-skeleton",{class:"s-bullet-delivery-skeleton-field-control",height:"56px",width:"100%"})),e("div",{class:"s-bullet-delivery-skeleton-field"},e("salla-skeleton",{class:"s-bullet-delivery-skeleton-field-label",height:"16px",width:"88px"}),e("salla-skeleton",{class:"s-bullet-delivery-skeleton-field-control",height:"56px",width:"100%"}))),e("div",{class:"s-bullet-delivery-skeleton-footer"},e("salla-skeleton",{height:"52px",width:"100%"})))}renderTabs(){return this.supportsPickup?e("div",{class:"s-bullet-delivery-tabs"},e("button",{type:"button",class:{"s-bullet-delivery-tab":!0,"s-bullet-delivery-tab--active":"address"===this.activeTab},onClick:()=>this.handleTabChange("address")},e("span",{class:"s-bullet-delivery-tab-icon",innerHTML:a,"aria-hidden":"true"}),e("span",null,Salla.lang.get("mobile_app.strings.delivery"))),e("button",{type:"button",class:{"s-bullet-delivery-tab":!0,"s-bullet-delivery-tab--active":"branch"===this.activeTab},onClick:()=>this.handleTabChange("branch")},e("span",{class:"s-bullet-delivery-tab-icon",innerHTML:L,"aria-hidden":"true"}),e("span",null,Salla.lang.get("mobile_app.strings.pickup")))):null}renderAlert(t){return e("div",{class:"s-bullet-delivery-allocation-out-of-coverage",role:"alert"},e("span",{class:"s-bullet-delivery-allocation-out-of-coverage-icon","aria-hidden":"true"},e("svg",{width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",xmlns:"http://www.w3.org/2000/svg",role:"img","aria-hidden":"true"},e("title",null,"Information"),e("circle",{cx:"10",cy:"10",r:"9",stroke:"currentColor","stroke-width":"1.5",fill:"currentColor"}),e("text",{x:"10",y:"14","text-anchor":"middle",fill:"white","font-size":"12","font-weight":"bold"},"i"))),e("span",{class:"s-bullet-delivery-allocation-out-of-coverage-text"},t))}renderAllocationOutOfCoverageAlert(){const t=this.allocationOutOfCoverageMessage||Salla.lang.get("pages.checkout.shipping_not_available");return this.renderAlert(t)}renderCountrySelect(){return e("div",{class:"s-bullet-delivery-field"},e("label",{class:"s-bullet-delivery-label",htmlFor:"bullet-delivery-country"},Salla.lang.get("blocks.buy_as_gift.receiver_country"),e("span",{class:"text-red-500"}," *")),e("select",{id:"bullet-delivery-country",class:"form-input",onChange:t=>{const s=Number.parseInt(t.target.value),e=this.countries.find((t=>t.id===s));this.showCartWillBeClearedBanner=!(!this.selectedCountry||!e||this.selectedCountry.code===e.code),this.applyCountryChange(e||null)}},e("option",{value:"",disabled:!0,selected:!this.selectedCountry},Salla.lang.get("pages.checkout.select_country")),this.countries.map((t=>e("option",{key:t.id,value:t.id,selected:this.selectedCountry?.id===t.id},t.name)))))}renderSelectLoader(){return e("span",{class:"s-bullet-delivery-select-loader","aria-hidden":"true"},e("salla-skeleton",{height:"16px",width:"16px"}))}renderLoadingLabel(t,s,i=!1,l=!0){return e("label",{class:"s-bullet-delivery-label",htmlFor:s},e("span",{class:"s-bullet-delivery-label-content"},e("span",null,t,l&&e("span",{class:"text-red-500"}," *")),i&&this.renderSelectLoader()))}renderRegionSelect(){return c(this.selectedCountry?.code??"")&&this.selectedCountry?e("div",{class:"s-bullet-delivery-field"},this.renderLoadingLabel(Salla.lang.get("pages.checkout.region_field"),"bullet-delivery-region",this.loadingRegions),e("select",{id:"bullet-delivery-region",class:"form-input",disabled:this.loadingRegions||0===this.regions.length,onChange:t=>{const s=Number.parseInt(t.target.value),e=this.regions.find((t=>t.id===s));this.selectedRegion=e||null,this.updateNewAddressForm({region_id:e?.id,city_id:void 0,district_id:void 0,city:void 0,district:void 0}),e&&this.selectedCountry&&this.loadCities(this.selectedCountry.id,e.id)}},e("option",{value:"",disabled:!0,selected:!this.selectedRegion},Salla.lang.get("pages.checkout.select_region")),this.regions.map((t=>e("option",{key:t.id,value:t.id,selected:this.selectedRegion?.id===t.id},t.name))))):null}renderCityDistrictSelects(){const t=c(this.selectedCountry?.code??""),s=t,i=s&&this.selectedCity&&!this.loadingDistricts&&0===this.districts.length,l=!this.selectedCountry||t&&!this.selectedRegion||this.loadingCities||0===this.cities.length,a=!this.selectedCountry||t&&!this.selectedRegion||!this.selectedCity||this.loadingDistricts;return e("div",{class:"s-bullet-delivery-field-row"},e("div",{class:"s-bullet-delivery-field"},this.renderLoadingLabel(Salla.lang.get("blocks.buy_as_gift.receiver_city"),"bullet-delivery-city",this.loadingCities),e("select",{id:"bullet-delivery-city",class:"form-input",disabled:l,onChange:t=>{const e=Number.parseInt(t.target.value),i=this.cities.find((t=>t.id===e));this.selectedCity=i||null,this.selectedDistrict=null,this.districtName="",i&&(this.updateNewAddressForm({city:i,district:void 0}),s&&this.loadDistricts(i.id))}},e("option",{value:"",disabled:!0,selected:!this.selectedCity},Salla.lang.get("pages.checkout.select_city")),this.cities.map((t=>e("option",{key:t.id,value:t.id,selected:this.selectedCity?.id===t.id},t.name))))),s&&e("div",{class:"s-bullet-delivery-field"},this.renderLoadingLabel(Salla.lang.get("pages.checkout.district_field"),"bullet-delivery-district",this.loadingDistricts&&!i),i?e("input",{id:"bullet-delivery-district",type:"text",class:"form-input",placeholder:Salla.lang.get("pages.checkout.select_district"),value:this.districtName,disabled:a,onInput:t=>{this.districtName=t.target.value,this.updateNewAddressForm({district:void 0})}}):e("select",{id:"bullet-delivery-district",class:"form-input",disabled:a||0===this.districts.length,onChange:t=>{const s=Number.parseInt(t.target.value),e=this.districts.find((t=>t.id===s));this.selectedDistrict=e||null,this.districtName="",e&&this.updateNewAddressForm({district:e})}},e("option",{value:"",disabled:!0,selected:!this.selectedDistrict},Salla.lang.get("pages.checkout.select_district")),this.districts.map((t=>{const s="ar"===Salla.config.get("user.language_code")?t.name:t.name_en??t.name;return e("option",{key:t.id,value:t.id,selected:this.selectedDistrict?.id===t.id},s)})))))}renderSavedAddressesEmptyState(){return e("div",{class:"s-bullet-delivery-saved-addresses-empty"},e("div",{class:"s-bullet-delivery-saved-addresses-empty-icon","aria-hidden":"true"},e("svg",{width:"28",height:"28",viewBox:"0 0 28 29",fill:"none",xmlns:"http://www.w3.org/2000/svg"},e("title",null,"No Saved Adresses"),e("path",{d:"M20.16 0C21.4613 0 22.6773 0.341333 23.808 1.024C24.9387 1.70667 25.8347 2.61333 26.496 3.744C27.1787 4.91733 27.52 6.18667 27.52 7.552C27.52 9.45067 26.8267 11.232 25.44 12.896C24.4587 14.0907 23.0827 15.2427 21.312 16.352H21.28C20.9387 16.5653 20.5653 16.672 20.16 16.672C19.7547 16.672 19.3813 16.5653 19.04 16.352H19.008C17.2373 15.2213 15.8613 14.0693 14.88 12.896C13.4933 11.232 12.8 9.45067 12.8 7.552C12.8 6.18667 13.1413 4.91733 13.824 3.744C14.4853 2.61333 15.3813 1.70667 16.512 1.024C17.6427 0.341333 18.8587 0 20.16 0ZM11.488 1.984C9.67467 2.368 8.04267 3.14667 6.592 4.32C5.14133 5.49333 4.01067 6.92267 3.2 8.608C2.34667 10.3573 1.92 12.224 1.92 14.208C1.92 14.72 1.952 15.2427 2.016 15.776L2.08 15.744C2.57067 15.488 2.94933 15.3067 3.216 15.2C3.48267 15.0933 3.73867 15.0933 3.984 15.2C4.22933 15.3067 4.4 15.488 4.496 15.744C4.592 16 4.58667 16.256 4.48 16.512C4.37333 16.768 4.19733 16.9493 3.952 17.056C3.70667 17.1627 3.36 17.3227 2.912 17.536L2.656 17.664C2.57067 17.7067 2.48533 17.7387 2.4 17.76C2.89067 19.4667 3.70133 20.9973 4.832 22.352C5.96267 23.7067 7.296 24.7573 8.832 25.504C10.432 26.272 12.1173 26.656 13.888 26.656C15.4667 26.656 16.9813 26.3467 18.432 25.728C19.8187 25.1307 21.0667 24.288 22.176 23.2C21.92 23.0507 21.7653 22.8373 21.712 22.56C21.6587 22.2827 21.7013 22.0267 21.84 21.792C21.9787 21.5573 22.176 21.408 22.432 21.344C22.8373 21.2587 23.2 21.12 23.52 20.928C23.6907 20.8427 23.8613 20.8 24.032 20.8C24.8 19.5413 25.3333 18.176 25.632 16.704C25.6747 16.4267 25.808 16.2133 26.032 16.064C26.256 15.9147 26.496 15.8667 26.752 15.92C27.008 15.9733 27.2107 16.1173 27.36 16.352C27.5093 16.5867 27.552 16.832 27.488 17.088C27.0613 19.2853 26.1973 21.264 24.896 23.024C23.5947 24.784 22.0053 26.1547 20.128 27.136C18.1653 28.16 16.0853 28.672 13.888 28.672C11.3707 28.672 9.03467 28.0107 6.88 26.688C4.78933 25.408 3.12533 23.68 1.888 21.504C0.629333 19.264 0 16.832 0 14.208C0 11.904 0.490667 9.73867 1.472 7.712C2.41067 5.74933 3.728 4.09067 5.424 2.736C7.12 1.38133 9.01333 0.48 11.104 0.032C11.36 -0.032 11.6 0.0106667 11.824 0.16C12.048 0.309333 12.1867 0.522667 12.24 0.8C12.2933 1.07733 12.2453 1.328 12.096 1.552C11.9467 1.776 11.744 1.92 11.488 1.984ZM14.72 7.552C14.72 8.96 15.2533 10.304 16.32 11.584C17.1733 12.5867 18.3893 13.6 19.968 14.624C20.032 14.6453 20.096 14.656 20.16 14.656C20.224 14.656 20.288 14.6453 20.352 14.624C21.9307 13.6213 23.1467 12.608 24 11.584C25.0667 10.304 25.6 8.96 25.6 7.552C25.6 6.57067 25.3547 5.65333 24.864 4.8C24.3733 3.94667 23.7067 3.26933 22.864 2.768C22.0213 2.26667 21.12 2.016 20.16 2.016C19.2 2.016 18.2987 2.26667 17.456 2.768C16.6133 3.26933 15.9467 3.94667 15.456 4.8C14.9653 5.65333 14.72 6.57067 14.72 7.552ZM17.28 7.68C17.28 6.848 17.5627 6.13867 18.128 5.552C18.6933 4.96533 19.3707 4.672 20.16 4.672C20.9493 4.672 21.6267 4.96533 22.192 5.552C22.7573 6.13867 23.04 6.848 23.04 7.68C23.04 8.512 22.7573 9.216 22.192 9.792C21.6267 10.368 20.9493 10.656 20.16 10.656C19.3707 10.656 18.6933 10.368 18.128 9.792C17.5627 9.216 17.28 8.512 17.28 7.68ZM6.752 14.688C7.62667 14.7733 8.53333 15.0293 9.472 15.456C9.70667 15.5627 9.87733 15.744 9.984 16C10.0907 16.256 10.0907 16.512 9.984 16.768C9.87733 17.024 9.70133 17.2 9.456 17.296C9.21067 17.392 8.97067 17.3867 8.736 17.28C7.94667 16.9387 7.22133 16.736 6.56 16.672C6.28267 16.6293 6.064 16.5013 5.904 16.288C5.744 16.0747 5.68 15.8293 5.712 15.552C5.744 15.2747 5.86133 15.0507 6.064 14.88C6.26667 14.7093 6.496 14.6453 6.752 14.688ZM17.6 20.544C18.304 20.864 18.976 21.0987 19.616 21.248C19.872 21.312 20.0693 21.4613 20.208 21.696C20.3467 21.9307 20.3893 22.1813 20.336 22.448C20.2827 22.7147 20.144 22.9227 19.92 23.072C19.696 23.2213 19.4453 23.264 19.168 23.2C18.4213 23.0293 17.632 22.752 16.8 22.368C16.5653 22.2613 16.4 22.08 16.304 21.824C16.208 21.568 16.2133 21.312 16.32 21.056C16.4267 20.8 16.6027 20.624 16.848 20.528C17.0933 20.432 17.344 20.4373 17.6 20.544ZM12.832 17.44C13.0027 17.568 13.248 17.7493 13.568 17.984L14.496 18.688C14.7093 18.8587 14.8373 19.0773 14.88 19.344C14.9227 19.6107 14.8693 19.856 14.72 20.08C14.5707 20.304 14.368 20.4427 14.112 20.496C13.856 20.5493 13.6107 20.5013 13.376 20.352L11.744 19.072C11.5307 18.9227 11.4027 18.7093 11.36 18.432C11.3173 18.1547 11.3707 17.904 11.52 17.68C11.6693 17.456 11.872 17.3227 12.128 17.28C12.384 17.2373 12.6187 17.2907 12.832 17.44ZM20.16 8.672C20.416 8.672 20.64 8.576 20.832 8.384C21.024 8.192 21.12 7.95733 21.12 7.68C21.12 7.40267 21.024 7.16267 20.832 6.96C20.64 6.75733 20.416 6.656 20.16 6.656C19.904 6.656 19.68 6.75733 19.488 6.96C19.296 7.16267 19.2 7.40267 19.2 7.68C19.2 7.95733 19.296 8.192 19.488 8.384C19.68 8.576 19.904 8.672 20.16 8.672Z",fill:"#666666"}))),e("p",{class:"s-bullet-delivery-saved-addresses-empty-title"},Salla.lang.get("pages.checkout.no_saved_addresses")),e("p",{class:"s-bullet-delivery-saved-addresses-empty-desc"},Salla.lang.get("pages.checkout.add_address_simplify_shipping")),e("salla-button",{onClick:()=>this.handleAddNewAddress(),onKeyUp:()=>this.handleAddNewAddress()},Salla.lang.get("pages.checkout.add_new_address")))}async saveSessionAddressToProfile(){const t=this.getStoredIntent(),s=m(t),e=C(t),i=k(t);if(!t||"address"!==t.type||!s||!e)return null;const l=f(t);if(c(l)&&!i)return null;const a=c(l),n=t.address_details?.district?.name??"",r={country_id:s,region_id:_(t),city_id:e,district_id:i,description:n};a&&(r.local=n);try{const{success:t,address:s}=await u.saveAddressLocation(r);if(!t)return null;const e=s??null;return e&&this.addressCreated.emit({address:e}),e}catch(t){return console.error("SallaBulletDelivery: Error saving session address",t),null}}renderSavedAddresses(){if(!this.isLoggedIn)return null;if(this.loadingSavedAddresses)return e("div",{class:"s-bullet-delivery-addresses-list s-scrollbar"},[1,2,3].map((t=>e("div",{key:t,class:"s-bullet-delivery-address-item s-bullet-delivery-address-item--skeleton"},e("salla-skeleton",{class:"s-bullet-delivery-skel-radio",height:"18px",width:"18px"}),e("salla-skeleton",{class:"s-bullet-delivery-skel-map",height:"36px",width:"36px"}),e("div",{class:"s-bullet-delivery-address-content"},e("div",{class:"s-bullet-delivery-address-lines"},e("salla-skeleton",{height:"18px",width:"72%"}),e("salla-skeleton",{height:"16px",width:"56%"})))))));const t=this.getStoredIntent(),s=M(t),i=s&&t?.address_details&&[t.address_details.city?.name,t.address_details.country?.name].filter(Boolean).join("، ")||"",l=s&&t?.address_details?(t.address_details.district?.name??"").trim():"";return 0!==this.savedAddresses.length||s?e("div",{class:"s-bullet-delivery-addresses-list s-scrollbar"},s&&this.renderAddressRow({key:"session-address",line1:i,line2:l,selected:this.selectedSessionAddress,onClick:()=>this.handleSessionAddressSelect()}),this.savedAddresses.map((t=>{const s=[t.building_number,t.street].filter(Boolean).join("، ")||t.formatted?.address_one||t.short_address||"",e=[t.district?.name,t.city?.name,t.country?.name].filter(Boolean).join("، "),i=(t.formatted?.address_two||e)??"",l=!1!==t.is_in_coverage;return this.renderAddressRow({key:String(t.id),line1:s,line2:i,selected:this.selectedSavedAddress?.id===t.id,disabled:!l,onClick:()=>l&&this.handleSavedAddressSelect(t)})}))):this.renderSavedAddressesEmptyState()}renderAddressRow(t){const{key:s,line1:i,line2:l,selected:a,disabled:n=!1,onClick:r}=t;return e("button",{key:s,class:{"s-bullet-delivery-address-item":!0,"s-bullet-delivery-address-item--selected":a,"s-bullet-delivery-address-item--disabled":n},type:"button",onClick:n?void 0:r,onKeyDown:t=>{"Enter"!==t.key&&" "!==t.key||(t.preventDefault(),n||r())}},e("input",{type:"radio",name:"saved_address",class:"s-bullet-delivery-radio",checked:a,disabled:n,onClick:t=>t.stopPropagation()}),e("span",{class:"s-bullet-delivery-address-map-icon",innerHTML:'<svg width="35" height="35" viewBox="0 0 35 35" fill="none" xmlns="http://www.w3.org/2000/svg">\n <g filter="url(#filter0_d_24181_220540)">\n <mask id="mask0_24181_220540" style="mask-type:alpha" maskUnits="userSpaceOnUse" x="1" y="0" width="33" height="32">\n <rect x="1.90958" y="0.576577" width="30.8468" height="30.8468" rx="9.22523" fill="#D9D9D9" stroke="white" stroke-width="1.15315"/>\n </mask>\n <g mask="url(#mask0_24181_220540)">\n <rect x="1.90958" y="0.576577" width="30.8468" height="30.8468" rx="9.22523" fill="#E8E8E8" stroke="white" stroke-width="1.15315"/>\n <path d="M17.9096 6.77445L28.7204 5.33301H32.4681L32.7564 11.8195V23.6393L10.4141 23.9276V10.8105L17.9096 6.77445Z" fill="#97E7C8"/>\n <path d="M-2.70303 10.6664H10.2699M41.6934 5.47722C38.378 5.47722 34.7744 5.47722 27.8555 5.47722C20.9366 5.47722 18.4862 6.63037 15.4591 8.64839C12.4321 10.6664 10.2699 10.6664 10.2699 10.6664M10.2699 34.4502V23.6394M10.2699 10.6664V23.6394M-6.16249 23.6394H10.2699M10.2699 23.6394H21.0807M38.8105 23.6394H21.0807M21.0807 23.6394V34.4502" stroke="white" stroke-width="2.30631"/>\n <rect x="2.34202" y="1.00901" width="29.982" height="29.982" rx="8.79279" stroke="white" stroke-width="2.01802"/>\n </g>\n <g clip-path="url(#clip0_24181_220540)">\n <path fill-rule="evenodd" clip-rule="evenodd" d="M18.069 19.8621C19.4995 18.6902 22.171 16.0948 22.171 13.0548C22.171 11.7333 21.6461 10.466 20.7117 9.5316C19.7773 8.5972 18.51 8.07227 17.1885 8.07227C15.8671 8.07227 14.5998 8.5972 13.6654 9.5316C12.731 10.466 12.2061 11.7333 12.2061 13.0548C12.2061 16.0948 14.8776 18.6902 16.3081 19.8621C16.5553 20.0679 16.8669 20.1806 17.1885 20.1806C17.5102 20.1806 17.8218 20.0679 18.069 19.8621ZM17.1885 14.1618C17.517 14.1618 17.838 14.0644 18.1111 13.8819C18.3842 13.6995 18.597 13.4401 18.7227 13.1367C18.8484 12.8333 18.8812 12.4994 18.8172 12.1773C18.7531 11.8552 18.595 11.5593 18.3627 11.3271C18.1305 11.0948 17.8346 10.9367 17.5125 10.8726C17.1904 10.8085 16.8565 10.8414 16.5531 10.9671C16.2497 11.0928 15.9903 11.3056 15.8079 11.5787C15.6254 11.8518 15.528 12.1728 15.528 12.5012C15.528 12.9416 15.703 13.364 16.0144 13.6754C16.3258 13.9868 16.7481 14.1618 17.1885 14.1618Z" fill="#55575D"/>\n </g>\n </g>\n <defs>\n <filter id="filter0_d_24181_220540" x="-0.000325561" y="0" width="34.6667" height="34.6667" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">\n <feFlood flood-opacity="0" result="BackgroundImageFix"/>\n <feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha"/>\n <feOffset dy="1.33333"/>\n <feGaussianBlur stdDeviation="0.666667"/>\n <feColorMatrix type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.04 0"/>\n <feBlend mode="normal" in2="BackgroundImageFix" result="effect1_dropShadow_24181_220540"/>\n <feBlend mode="normal" in="SourceGraphic" in2="effect1_dropShadow_24181_220540" result="shape"/>\n </filter>\n <clipPath id="clip0_24181_220540">\n <rect width="12.1081" height="12.1081" fill="white" transform="translate(11.1338 8.07227)"/>\n </clipPath>\n </defs>\n </svg>\n ',"aria-hidden":"true"}),e("div",{class:"s-bullet-delivery-address-content"},e("div",{class:"s-bullet-delivery-address-lines"},e("span",{class:"s-bullet-delivery-address-line1"},i),e("span",{class:"s-bullet-delivery-address-line2"},l))))}renderGuestDeliveryForm(){const t=c(this.selectedCountry?.code??"");return[this.renderCountrySelect(),t?this.renderRegionSelect():null,this.renderCityDistrictSelects()]}renderDeliveryTab(){return e("div",{class:{"s-bullet-delivery-content":!0,"s-bullet-delivery-content--active":"address"===this.activeTab,"s-hidden":"address"!==this.activeTab}},this.isLoggedIn?this.renderSavedAddresses():this.renderGuestDeliveryForm())}renderBranchSearch(){return e("div",{class:"s-bullet-delivery-branch-search"},e("div",{class:"s-bullet-delivery-search-row"},e("div",{class:"s-bullet-delivery-search s-bullet-delivery-branch-search-wrap"},e("span",{class:"s-bullet-delivery-search-icon s-bullet-delivery-branch-search-icon",innerHTML:l,"aria-hidden":"true"}),e("input",{type:"text",class:"s-bullet-delivery-branch-search-input form-input",placeholder:Salla.lang.get("pages.checkout.search_for_city_or_branch"),value:this.branchSearchQuery,onInput:t=>this.handleBranchSearch(t),autocomplete:"off"})),e("button",{type:"button",class:{"s-bullet-delivery-location-btn":!0,"s-bullet-delivery-location-btn--full":!0,"s-bullet-delivery-location-btn--loading":this.loadingNearestBranch},onClick:()=>this.handleFindNearestBranch(),disabled:this.loadingNearestBranch},this.loadingNearestBranch?e("span",{class:"s-bullet-delivery-location-icon","aria-hidden":"true"},e("salla-skeleton",{height:"18px",width:"18px"})):e("span",{class:"s-bullet-delivery-location-icon",innerHTML:'<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">\n <path\n d="M13.3258 7.65006C13.3258 10.7797 10.7888 13.3167 7.65916 13.3167C4.52955 13.3167 1.99249 10.7797 1.99249 7.65006C1.99249 4.52045 4.52955 1.9834 7.65916 1.9834C10.7888 1.9834 13.3258 4.52045 13.3258 7.65006Z"\n stroke="#555555" stroke-width="1.3" />\n <path d="M14.65 7.65039H13.3167" stroke="#555555" stroke-width="1.3" stroke-linecap="round"\n stroke-linejoin="round" />\n <path d="M1.98336 7.65039L0.650024 7.65039" stroke="#555555" stroke-width="1.3"\n stroke-linecap="round" stroke-linejoin="round" />\n <path d="M7.65002 0.650065L7.65002 1.9834" stroke="#555555" stroke-width="1.3"\n stroke-linecap="round" stroke-linejoin="round" />\n <path d="M7.65002 13.3171L7.65002 14.6504" stroke="#555555" stroke-width="1.3"\n stroke-linecap="round" stroke-linejoin="round" />\n <path\n d="M9.64999 7.65039C9.64999 8.75496 8.75456 9.65039 7.64999 9.65039C6.54542 9.65039 5.64999 8.75496 5.64999 7.65039C5.64999 6.54582 6.54542 5.65039 7.64999 5.65039C8.75456 5.65039 9.64999 6.54582 9.64999 7.65039Z"\n stroke="#555555" stroke-width="1.3" />\n</svg>\n ',"aria-hidden":"true"}),e("span",null,Salla.lang.get("pages.checkout.nearest_to_my_location")))),this.locationError&&"branch"===this.activeTab&&e("span",{class:"s-bullet-delivery-error"},this.locationError))}renderBranchList(){return this.loadingBranches?e("div",{class:"s-bullet-delivery-branches-wrap"},e("div",{class:"s-bullet-delivery-branches-loading"},[1,2,3,4].map((t=>e("div",{key:t,class:"s-bullet-delivery-branch-skeleton"},e("salla-skeleton",{class:"s-bullet-delivery-branch-skeleton-radio",type:"circle",height:"16px",width:"16px"}),e("div",{class:"s-bullet-delivery-branch-skeleton-icon"},e("salla-skeleton",{height:"34px",width:"34px"})),e("div",{class:"s-bullet-delivery-branch-skeleton-content"},e("salla-skeleton",{class:"s-bullet-delivery-branch-skeleton-title",height:"12px",width:"124px"})),e("salla-skeleton",{class:"s-bullet-delivery-branch-skeleton-time",height:"12px",width:"88px"}),e("div",{class:"s-bullet-delivery-branch-skeleton-map"},e("salla-skeleton",{height:"32px",width:"32px"}))))))):0===this.filteredBranches.length?e("salla-placeholder",{alignment:"center",class:"s-bullet-delivery-placeholder"},e("span",{slot:"title"},Salla.lang.get("pages.checkout.no_pickup_branches_found"))):e("div",{class:"s-bullet-delivery-branches-wrap"},e("ul",{class:"s-bullet-delivery-branches-list s-scrollbar"},this.filteredBranches.map((t=>e("li",{key:t.id,class:{"s-bullet-delivery-branch-item":!0,"s-bullet-delivery-branch-item--selected":this.selectedBranch?.id===t.id,"s-bullet-delivery-branch-item--disabled":!1===t.is_open},tabIndex:!1===t.is_open?-1:0,role:"option","aria-disabled":!1===t.is_open,onClick:()=>!1!==t.is_open&&this.handleBranchSelect(t),onKeyDown:s=>{"Enter"!==s.key&&" "!==s.key||(s.preventDefault(),!1!==t.is_open&&this.handleBranchSelect(t))}},e("input",{type:"radio",name:"branch",class:"s-bullet-delivery-radio",checked:this.selectedBranch?.id===t.id,disabled:!1===t.is_open}),e("span",{class:"s-bullet-delivery-branch-icon","aria-hidden":"true"},e("span",{innerHTML:L})),e("div",{class:"s-bullet-delivery-branch-info"},e("span",{class:"s-bullet-delivery-branch-name"},t.name),t.preparation_time?e("span",{class:"s-bullet-delivery-branch-prep"},`${Salla.lang.get("pages.checkout.processing_time")}: ${t.preparation_time}`):null),(()=>{const s=(i=t.working_hours,i?.[0]?.times?.[0]??null);var i;return s?e("span",{class:"s-bullet-delivery-branch-time"},function(t,s,e,i){const l=String(t).trim(),a=String(s).trim();return l&&a?"00:00"===l?`${i} ${p(a,e)}`:`${p(l,e)} - ${p(a,e)}`:""}(s.from,s.to,Salla.config.get("user.language_code")||"ar",Salla.lang.get("pages.checkout.until"))):null})(),null!=t.location?.lat&&null!=t.location?.lng&&e("a",{href:`https://www.google.com/maps?q=${t.location.lat},${t.location.lng}`,target:"_blank",rel:"noopener noreferrer",class:"s-bullet-delivery-branch-map-link",title:Salla.lang.get("common.elements.open_in_google_maps"),onClick:t=>t.stopPropagation()},e("span",{class:"s-bullet-delivery-branch-map-link-icon",innerHTML:'<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">\n <path\n d="M7.94798 3.19336C11.1309 2.1083 12.7223 1.56578 13.5783 2.42174C14.4342 3.27771 13.8917 4.86914 12.8066 8.05201L12.0678 10.2195C11.2344 12.6639 10.8178 13.8861 10.131 13.9872C9.94631 14.0144 9.75517 13.9981 9.57248 13.9394C8.89297 13.7212 8.53377 12.4326 7.81538 9.8553C7.65604 9.28364 7.57637 8.99781 7.39494 8.7795C7.34228 8.71614 7.28386 8.65772 7.2205 8.60506C7.00219 8.42363 6.71636 8.34396 6.1447 8.18462C3.56741 7.46623 2.27876 7.10703 2.0606 6.42752C2.00195 6.24483 1.98558 6.05369 2.01277 5.86903C2.11392 5.18221 3.33613 4.76556 5.78054 3.93225L7.94798 3.19336Z"\n stroke="#555555" stroke-width="1.2" />\n</svg>\n '.replace(/mask0_25437_34440/g,`mask0_branch_${t.id}`),"aria-hidden":"true"}),e("span",{class:"sr-only"},Salla.lang.get("common.elements.open_in_google_maps"))))))))}renderPickupTab(){return e("div",{class:{"s-bullet-delivery-content":!0,"s-bullet-delivery-content--active":"branch"===this.activeTab,"s-hidden":"branch"!==this.activeTab}},this.renderCountrySelect(),this.renderBranchSearch(),this.renderBranchList())}renderAddAddressForm(){const t=Salla.lang.get("pages.checkout.add_new_address"),s=c(this.selectedCountry?.code??""),i=this.selectedCountry&&this.selectedCity&&(!s||this.selectedRegion)&&(!s||!!this.selectedDistrict||!!(this.districtName&&this.districtName.trim().length>0)),l=this.savingAddress?Salla.lang.get("pages.checkout.loading"):Salla.lang.get("pages.checkout.confirm_address");return e("div",{class:"s-bullet-delivery-add-address"},e("div",{class:"s-bullet-delivery-add-address-header"},e("button",{type:"button",class:"s-bullet-delivery-add-address-title",onClick:()=>this.handleBackToAddressList(),onKeyDown:t=>"Enter"===t.key&&this.handleBackToAddressList()},e("span",{innerHTML:this.isRTL?n:r,"aria-hidden":"true"}),e("span",{class:"s-bullet-delivery-add-address-title-text"},t))),e("form",{class:"s-bullet-delivery-add-address-form",onSubmit:t=>this.handleSubmitAddAddress(t)},this.renderGuestDeliveryForm(),e("div",{class:"s-bullet-delivery-form-actions s-bullet-delivery-form-actions--single"},e("salla-button",{type:"submit",loading:this.savingAddress,disabled:!i||this.savingAddress,class:"s-bullet-delivery-add-address-submit"},l))))}renderFooter(){const t="address"===this.activeTab&&this.isLoggedIn;return e("div",{class:"s-bullet-delivery-footer"},e("salla-button",{ref:t=>{this.confirmBtn=t},disabled:this.isConfirmDisabled(),onClick:()=>this.handleConfirm(),"loader-position":"center",width:"wide"},"branch"===this.activeTab?Salla.lang.get("pages.checkout.confirm_receipt_from_the_branch"):Salla.lang.get("pages.checkout.confirm_address")),t&&e("salla-button",{onClick:()=>this.handleAddNewAddress(),width:"wide",shape:"link"},Salla.lang.get("pages.checkout.add_new_address")),!this.isLoggedIn&&e("salla-button",{shape:"link",onClick:this.handleLogin},Salla.lang.get("pages.checkout.login_to_use_saved_addresses")))}renderMainView(){const t=this.isLoggedIn&&"address"===this.activeTab&&0===this.savedAddresses.length&&!M(this.getStoredIntent()),s="branch"===this.activeTab&&this.supportsPickup?this.renderPickupTab():this.renderDeliveryTab();return e("div",null,e("div",{class:"s-bullet-delivery-header"},e("h2",{class:"s-bullet-delivery-title"},"address"===this.activeTab?Salla.lang.get("blocks.home.add_address_for_order_delivery"):Salla.lang.get("blocks.home.how_prefer_to_receive_order")),e("p",{class:"s-bullet-delivery-subtitle"},"address"===this.activeTab?Salla.lang.get("blocks.home.products_available_for_delivery_shown_while_shopping"):Salla.lang.get("blocks.home.products_available_for_delivery_or_pickup_shown_while_shopping"))),this.renderTabs(),this.showCartWillBeClearedBanner&&this.renderAlert(Salla.lang.get("blocks.scope.empty_cart_warning")),this.allocationOutOfCoverageMessage&&this.renderAllocationOutOfCoverageAlert(),s,!t&&this.renderFooter())}handleAfterAddToCart(){if("after_add_to_cart"!==this.openingType)return;const t=this.shouldPromptIncompleteIntentThisSession();this.hasBeenShownThisSession()&&!t||this.modal?.hasAttribute?.("visible")||(t&&this.markIncompleteIntentPrompted(),this.open())}overrideScopeSwitchUI(){const t=this.getStoredIntent(),s=document.querySelector('[onclick*="scopes"]');if(!s)return;if(!t||"address"!==t.type&&"branch"!==t.type)return s.style.display="none",void(s.onclick=()=>this.open());const e=(t,s)=>t&&t.length>s?`${t.slice(0,s)}...`:t??"",i="branch"===t.type?`${Salla.lang.get("mobile_app.strings.pickup")} ${Salla.lang.get("common.elements.from")} ${e(t.branch_details?.name,20)}`:`${Salla.lang.get("mobile_app.strings.delivery")} ${Salla.lang.get("common.elements.to")} ${e(t.address_details?.city?.name,10)}`;s.style.display="inline-flex",s.onclick=()=>this.open();const l=s.querySelector('span:not([class*="sicon"]):not([class*="icon"])');if(l)l.textContent=i;else{const t=Array.from(s.childNodes).find((t=>t.nodeType===Node.TEXT_NODE&&t.textContent?.trim()));t&&(t.textContent=` ${i}`)}}async componentWillLoad(){await Salla.onReady();try{this.overrideScopeSwitchUI(),this.cartSubmittingHandler=async()=>{this.pendingCartSubmitPromise?await this.pendingCartSubmitPromise:this.hasCompleteIntentForLoggedInUser()||(this.cartSubmitConfirmationPending=!0,this.pendingCartSubmitPromise=new Promise((t=>{if(this.pendingCartSubmitResolver=t,this.isGuestUser())return Salla.auth.setCanRedirect(!1),void Salla.event.dispatch("login::open",{withoutReload:!0,source:"cart-submit"});this.open()})),await this.pendingCartSubmitPromise)},Salla.cart.event.onSubmitting(this.cartSubmittingHandler)}catch(t){console.warn("SallaBulletDelivery: overrideScopeSwitchUI failed",t)}Salla.event.on("bullet-delivery::open",this.bulletDeliveryOpenHandler),this.closeHandler=this.close.bind(this),Salla.event.on("bullet-delivery::close",this.closeHandler),this.isRTL=Salla.config.get("theme.is_rtl"),this.authLoggedInHandler=()=>{if(this.cartSubmitConfirmationPending)return Salla.event.dispatch("login::close"),this.hasCompleteIntentForLoggedInUser()?void this.resolvePendingCartSubmit():void(this.modal?.hasAttribute?.("visible")||this.open());this.hasIncompleteUserAddressIntent()&&(this.modal?.hasAttribute?.("visible")||this.open())},Salla.event.on("auth::logged.in",this.authLoggedInHandler),this.authLoggedOutHandler=()=>{this.clearBulletDeliveryStoredData()},Salla.event.on("auth::logged.out",this.authLoggedOutHandler),this.loginClosedHandler=()=>{this.cartSubmitConfirmationPending&&this.isGuestUser()&&(this.hasCompleteIntentForLoggedInUser()||this.resolvePendingCartSubmit())},Salla.event.on("salla-login::closed",this.loginClosedHandler),this.cartItemAddedHandler=()=>this.handleAfterAddToCart(),"function"==typeof Salla.cart?.event?.onItemAdded?(this.useCartEventApi=!0,Salla.cart.event.onItemAdded(this.cartItemAddedHandler)):Salla.event.on(this.cartItemAddedEvent,this.cartItemAddedHandler)}render(){return e(i,{key:"d394b11d70bea07946e29d6d61222f8cd75baa15",class:"s-bullet-delivery"},e("salla-modal",{key:"63b559f49babc32958bb191b3ebfed13a1b7a7ad",ref:t=>{this.modal=t},isClosable:!this.isRequired&&!this.shouldForceNonClosable(),class:"s-bullet-delivery-modal",isLoading:this.loading,width:"sm"},this.loading?this.renderSkeleton():e("div",{class:"s-bullet-delivery-inner"},"main"===this.viewMode&&this.renderMainView(),"add-address"===this.viewMode&&this.renderAddAddressForm())))}componentDidLoad(){if(this.componentReady=!0,this.pendingOpen)return this.pendingOpen=!1,void this.open();switch(this.openingType){case"first_visit":this.hasBeenShownThisSession()?this.shouldPromptIncompleteIntentThisSession()&&(this.markIncompleteIntentPrompted(),this.open()):this.open();break;case"on_cart_click":Salla.url.is_page("cart")&&(!0===this.getShownStorage().get(this.sessionShownKey)?this.shouldPromptIncompleteIntentThisSession()&&(this.markIncompleteIntentPrompted(),this.open()):this.open())}const t=this.createCartViewElement();t&&"function"==typeof salla?.hooks?.mount&&Salla.hooks.mount("cart:items.start",t).catch((()=>{}))}disconnectedCallback(){this.componentReady=!1,Salla.event.off("bullet-delivery::open",this.bulletDeliveryOpenHandler),this.closeHandler&&(Salla.event.off("bullet-delivery::close",this.closeHandler),this.closeHandler=null),this.cartItemAddedHandler&&(this.useCartEventApi&&"function"==typeof Salla.cart?.event?.offItemAdded?Salla.cart.event.offItemAdded(this.cartItemAddedHandler):Salla.event.off(this.cartItemAddedEvent,this.cartItemAddedHandler),this.cartItemAddedHandler=null),this.cartSubmittingHandler&&("function"==typeof Salla.cart?.event?.offSubmitting?Salla.cart.event.offSubmitting(this.cartSubmittingHandler):Salla.event.off("cart::submitting",this.cartSubmittingHandler),this.cartSubmittingHandler=null),this.authLoggedInHandler&&(Salla.event.off("auth::logged.in",this.authLoggedInHandler),this.authLoggedInHandler=null),this.authLoggedOutHandler&&(Salla.event.off("auth::logged.out",this.authLoggedOutHandler),this.authLoggedOutHandler=null),this.loginClosedHandler&&(Salla.event.off("salla-login::closed",this.loginClosedHandler),this.loginClosedHandler=null)}};N.INITIAL_ADDRESS_FORM={country_id:0,is_default:!1,city_id:void 0,district_id:void 0,street:void 0,building_number:void 0,additional_number:void 0,postal_code:void 0,description:void 0},N.style="@supports (interpolate-size: allow-keywords) and (block-size: calc-size(auto, size)) {\n .s-bullet-delivery .s-bullet-delivery-modal .s-modal-body, .s-bullet-delivery-inner {\n @apply [interpolate-size:allow-keywords];\n }\n .s-bullet-delivery .s-bullet-delivery-modal .s-modal-body {\n @apply [overflow:clip] [transition:block-size_500ms_ease];\n }\n .s-bullet-delivery-inner {\n @apply [overflow:clip] [transition:block-size_500ms_ease];\n block-size: calc-size(auto, size);\n }\n}\n\n@keyframes s-bullet-delivery-fade-in {\n from {\n opacity: 0;\n transform: translateY(6px);\n }\n to {\n opacity: 1;\n transform: translateY(0);\n }\n}";export{N as salla_bullet_delivery}
4
+ import{r as t,c as s,h as e,H as i}from"./p-aDXaoBqI.js";import{S as l}from"./p-BscTeWDc.js";import{L as a}from"./p-BO5AoBAP.js";import{a as n,A as r}from"./p-Vqpj4CWE.js";const h="BulletDeliveryAPI",o=t=>{const s=null==t?Number.NaN:Number(t);return!Number.isNaN(s)&&0!==s};async function d(t,s,e){try{return await t()}catch(t){return console.error(`${h}: ${e}`,t),s}}const c=t=>"SA"===String(t).toUpperCase(),u={getCountries:async(t=!1)=>d((async()=>((await salla.api.request("shipping/countries",{params:{for_branch:t?1:0}}))?.data??[]).map((t=>({id:t.id,code:t.code,name:t.name,has_regions:c(t.code)})))),[],"Error getting countries"),getRegions:async t=>o(t)?d((async()=>((await salla.api.request(`shipping/countries/${t}/regions`))?.data??[]).map((s=>({id:s.id,name:s.name,code:s.code,country_id:Number(t)})))),[],"Error fetching regions"):(console.warn(`${h}: getRegions called without valid country_id`),[]),getCities:async(t,s)=>o(t)?d((async()=>{const e={for_branch:0,country_id:t};return s&&(e.region_id=s),((await salla.api.request("shipping/cities",{params:e}))?.data??[]).map((s=>({id:s.id,name:s.name,country_id:t,...null!=s.region_id&&{region_id:s.region_id}})))}),[],"Error fetching cities"):(console.warn(`${h}: getCities called without valid country_id`),[]),getDistricts:async t=>o(t)?d((async()=>{const s=(await salla.api.request("shipping/districts",{params:{for_branch:0,city_id:t}}))?.data;return(Array.isArray(s)?s:Array.isArray(s?.districts)?s.districts:[]).map((s=>({id:s.id,name:s.name,name_en:s.name_en,city_id:t})))}),[],"Error fetching districts"):(console.warn(`${h}: getDistricts called without valid city_id`),[]),getSavedAddresses:async()=>d((async()=>{const t=(await salla.api.request("address"))?.data;return Array.isArray(t)?t:[]}),[],"Error fetching user addresses"),getBranches:async({query:t,lat:s,lng:e,country_id:i,per_page:l=20}={})=>d((async()=>{const a={per_page:l};t?.trim().length>=2&&(a.query=t),s&&(a.lat=s),e&&(a.lng=e),i&&(a.country_id=i);const n=await salla.api.request("branches",{params:a});return Array.isArray(n?.data)?n.data:[]}),[],"Error fetching branches"),saveAddressLocation:async t=>d((async()=>{const s=await salla.api.request("address/location",{...t,for_allocation:!0},"post"),e=s?.data??s;return{success:!0,address:"object"==typeof e&&null!=e&&"id"in e?e:void 0}}),{success:!1},"Error saving address/location"),setDeliveryScope:async t=>d((async()=>(await salla.scope.change({id:t}),salla.storage.set("scope",{...salla.storage.get("scope")||{},id:t}),!0)),!1,"Error setting delivery scope"),async allocateScope(t){try{const s=await salla.api.request("scopes/allocation",t,"post");return{success:!0,data:s?.data??s}}catch(t){console.error(`${h}: Error allocating scope`,t);const e=t;return{success:!1,error:null!=e?.response?.data?(s=e.response.data,s?.error?.message??s?.message??"Failed to allocate scope"):e?.message??"Unknown error"}}var s}},y=t=>t*(Math.PI/180);function b(t,s,e,i){const l=y(e-t),a=y(i-s),n=Math.sin(l/2)**2+Math.cos(y(t))*Math.cos(y(e))*Math.sin(a/2)**2;return 12742*Math.atan2(Math.sqrt(n),Math.sqrt(1-n))}function p(t,s){const[e,i]=String(t).trim().split(":").map(Number);return Number.isNaN(e)||Number.isNaN(i)?t:new Date(2e3,0,1,e,i).toLocaleTimeString(s,{hour:"numeric",minute:"2-digit",hour12:!0})}const v=(t,s,e)=>{if("branch"===t.type){const s=t.branch_details?.city??t.branch_details?.name;return s?`${e} ${s}`.trim():""}if("address"===t.type&&t.address_details){const e=[t.address_details.district?.name,t.address_details.city?.name,t.address_details.country?.name].filter(Boolean).join("، ")||t.address_details.short_address||"";return e?`${s} ${e}`.trim():""}return""},g=t=>null!=t?Number(t):void 0,m=t=>g(t?.address_details?.country?.id),f=t=>t?.country_code??t?.address_details?.country?.code??"",_=t=>g(t?.address_details?.region?.id),C=t=>g(t?.address_details?.city?.id),k=t=>g(t?.address_details?.district?.id),S=t=>t?.branch_details?.id,w=t=>t?.branch_details?.latitude,x=t=>t?.branch_details?.longitude,M=t=>{if(!t||"address"!==t.type||t.address_id)return!1;const s=m(t),e=C(t),i=k(t),l=f(t),a=null!=i&&0!==Number(i),n=Boolean(t.address_details?.district?.name?.trim()),r=!c(l)||a||n;return!!(s&&e&&r)},A=(t,s,e)=>!t||!c(t)||null!=s&&0!==Number(s)&&null!=e&&("number"==typeof e?0!==e:String(e).trim().length>0),B={[GeolocationPositionError.PERMISSION_DENIED]:"Location permission denied",[GeolocationPositionError.POSITION_UNAVAILABLE]:"Location unavailable",[GeolocationPositionError.TIMEOUT]:"Location timeout"};var L='<svg width="15" height="14" viewBox="0 0 15 14" fill="none" xmlns="http://www.w3.org/2000/svg">\n <path\n d="M1.14453 5.83032L1.14453 9.16486C1.14453 11.0511 1.14453 11.9943 1.73032 12.5803C2.3161 13.1663 3.25891 13.1663 5.14453 13.1663L9.14453 13.1663C11.0301 13.1663 11.9729 13.1663 12.5587 12.5803C13.1445 11.9943 13.1445 11.0511 13.1445 9.16486V5.83032"\n stroke="currentcolor" stroke-linecap="round" />\n <path\n d="M9.14453 10.1619C8.68846 10.5667 7.9624 10.8285 7.14453 10.8285C6.32666 10.8285 5.60059 10.5667 5.14453 10.1619"\n stroke="currentcolor" stroke-linecap="round" />\n <path\n d="M5.90256 4.44533C5.71455 5.12426 5.03086 6.29542 3.73185 6.46516C2.58488 6.61502 1.71497 6.11437 1.49277 5.90504C1.24779 5.7353 0.689441 5.19216 0.552703 4.85269C0.415966 4.51322 0.575492 3.77771 0.689441 3.47785L1.14495 2.15892C1.25615 1.82765 1.51646 1.04411 1.78334 0.779094C2.05022 0.514073 2.59054 0.502543 2.81294 0.502543L7.48329 0.502543C8.68543 0.519525 11.3139 0.491824 11.8335 0.502545C12.3532 0.513266 12.6654 0.948828 12.7565 1.13553C13.5318 3.01341 13.8333 4.08889 13.8333 4.54717C13.7321 5.03605 13.3133 5.95787 11.8335 6.36332C10.2956 6.7847 9.42363 5.96509 9.15007 5.65043M5.27015 5.65044C5.48665 5.91635 6.16578 6.45158 7.15029 6.46516C8.1348 6.47873 8.98485 5.79188 9.28681 5.44676C9.37227 5.34492 9.55687 5.04279 9.7483 4.44533"\n stroke="currentcolor" stroke-linecap="round" stroke-linejoin="round" />\n</svg>\n ';const N=class{constructor(e){t(this,e),this.bulletDeliveryConfirmed=s(this,"bulletDeliveryConfirmed"),this.bulletDeliveryClosed=s(this,"bulletDeliveryClosed"),this.addressCreated=s(this,"addressCreated"),this.headerContextUpdate=s(this,"headerContextUpdate"),this.confirming=!1,this.pendingCartSubmitResolver=null,this.pendingCartSubmitPromise=null,this.cartSubmitConfirmationPending=!1,this.branchSearchDebounceTimer=null,this.componentReady=!1,this.pendingOpen=!1,this.tabChanging=!1,this.intentStorageKey="bullet_delivery_intent",this.sessionShownKey="bullet_delivery_shown",this.incompleteIntentPromptKey="bullet_delivery_incomplete_intent_prompted",this.cartItemAddedEvent="cart::item.added",this.cartItemAddedHandler=null,this.cartSubmittingHandler=null,this.useCartEventApi=!1,this.authLoggedInHandler=null,this.authLoggedOutHandler=null,this.loginClosedHandler=null,this.hasExplicitPreselectedIdsForOpen=!1,this.bulletDeliveryOpenHandler=t=>{this.preselectedAddressId=t?.preselected_address_id,this.preselectedBranchId=t?.preselected_branch_id,this.hasExplicitPreselectedIdsForOpen=null!=t?.preselected_address_id||null!=t?.preselected_branch_id,this.open()},this.closeHandler=null,this.savedAddressesLoaded=!1,this.loading=!0,this.activeTab="address",this.isLoggedIn=!1,this.viewMode="main",this.countries=[],this.regions=[],this.cities=[],this.districts=[],this.loadingRegions=!1,this.selectedCountry=null,this.selectedRegion=null,this.selectedCity=null,this.selectedDistrict=null,this.districtName="",this.savedAddresses=[],this.selectedSavedAddress=null,this.selectedSessionAddress=!1,this.branches=[],this.filteredBranches=[],this.selectedBranch=null,this.branchSearchQuery="",this.loadingCities=!1,this.loadingDistricts=!1,this.loadingBranches=!1,this.loadingNearestBranch=!1,this.locationError="",this.savingAddress=!1,this.loadingSavedAddresses=!1,this.showCartWillBeClearedBanner=!1,this.allocationOutOfCoverageMessage=null,this.newAddressForm={...N.INITIAL_ADDRESS_FORM},this.handleSubmitAddAddress=async t=>{if(t.preventDefault(),!this.savingAddress&&this.selectedCountry&&this.selectedCity&&A(this.selectedCountry?.code,this.selectedRegion?.id,this.selectedDistrict?.id??(this.districtName?.trim()||null))){this.savingAddress=!0;try{const t=this.buildAddressLocationPayload(),{success:s,address:e}=await u.saveAddressLocation(t);if(s){await this.loadSavedAddresses();const t=e??this.savedAddresses[0]??null;t?.is_in_coverage&&(this.selectedSessionAddress=!1,this.selectedSavedAddress=t),this.addressCreated.emit({address:t}),this.viewMode="main",this.districtName=""}else Salla.notify?.error(Salla.lang.get("common.errors.error_occurred"))}catch(t){console.error("SallaBulletDelivery: Error saving address",t),Salla.notify?.error(Salla.lang.get("common.errors.error_occurred"))}finally{this.savingAddress=!1}}}}get supportsPickup(){return!!Salla.config.get("store.settings.bullet_delivery.supports_pickup")}get openingType(){return Salla.config.get("store.settings.bullet_delivery.settings.type")}get isRequired(){return!!Salla.config.get("store.settings.bullet_delivery.settings.is_required")}async open(){if(this.componentReady&&this.modal){this.resetState(),this.loading=!0,this.modal.open();try{this.isLoggedIn=!this.isGuestUser();const t=this.cleanStaleGuestAddressIdIfNeeded(this.getStoredIntent());this.applyPreselectedIdsFromIntent(t);const s=!this.isLoggedIn&&"address"===t?.type&&null!=m(t)&&null!=C(t);if(this.activeTab=this.supportsPickup&&t?.type&&("address"===t.type||"branch"===t.type)?t.type:"address",await Promise.all([this.loadCountries(s),this.isLoggedIn&&"address"===this.activeTab?this.loadSavedAddresses().then((()=>{this.savedAddressesLoaded=!0})):Promise.resolve()]),this.isLoggedIn&&this.preselectedAddressId){const t=this.savedAddresses.find((t=>t.id===this.preselectedAddressId));t&&(this.selectedSessionAddress=!1,this.selectedSavedAddress=t)}if("branch"===this.activeTab){const s=w(t),e=x(t);if(null!=s&&null!=e?await this.loadBranchesWithLocation(s,e):await this.loadBranches(),this.preselectedBranchId){const t=this.branches.find((t=>t.id===this.preselectedBranchId));t&&(this.selectedBranch=t)}}await this.prefillFromSessionStorage()}catch(t){console.error("SallaBulletDelivery: Error loading data",t)}finally{this.loading=!1,this.modal?.stopLoading(),this.overrideScopeSwitchUI()}}else this.pendingOpen=!0}async close(){if(!this.shouldForceNonClosable()||this.confirming)return this.cartSubmitConfirmationPending&&!this.confirming&&this.resolvePendingCartSubmit(),this.bulletDeliveryClosed.emit(),this.modal?.close()}resetState(){this.viewMode="main",this.selectedCountry=null,this.selectedRegion=null,this.selectedCity=null,this.selectedDistrict=null,this.districtName="",this.selectedSavedAddress=null,this.selectedSessionAddress=!1,this.selectedBranch=null,this.branchSearchQuery="",this.regions=[],this.cities=[],this.districts=[],this.branches=[],this.filteredBranches=[],this.newAddressForm={...N.INITIAL_ADDRESS_FORM},this.showCartWillBeClearedBanner=!1,this.allocationOutOfCoverageMessage=null,this.locationError="",this.savedAddressesLoaded=!1,this.loadingSavedAddresses=!1}getIntentStorage(){const t=Boolean(Salla.config.get("store.settings.bullet_delivery.settings.remember_last_session"));return Salla.storage[t?"store":"session"]}getShownStorage(){return Salla.storage.session}getStoredIntent(){return this.getIntentStorage().get(this.intentStorageKey)}isGuestUser(){return"guest"===String(Salla.config.get("user.type")??"guest")}cleanStaleGuestAddressIdIfNeeded(t){if(!this.isGuestUser()||"address"!==t?.type||!t.address_id)return t;const s={...t,address_id:void 0};return this.setStoredIntent(s),s}applyPreselectedIdsFromIntent(t){this.hasExplicitPreselectedIdsForOpen?this.hasExplicitPreselectedIdsForOpen=!1:(this.preselectedAddressId=void 0,this.preselectedBranchId=void 0,this.isGuestUser()?"branch"===t?.type&&t.branch_id&&(this.preselectedBranchId=t.branch_id):"address"===t?.type&&t.address_id?this.preselectedAddressId=t.address_id:"branch"===t?.type&&t.branch_id&&(this.preselectedBranchId=t.branch_id))}hasIncompleteUserAddressIntent(){if(this.isGuestUser())return!1;const t=this.getStoredIntent();return!(!t||"address"!==t.type||t.address_id||!t.address_details)&&M(t)}hasCompleteIntentForLoggedInUser(){if(this.isGuestUser())return!1;const t=this.getStoredIntent();return!!t&&("address"===t.type?!!t.address_id:"branch"===t.type&&!!t.branch_id)}shouldForceNonClosable(){return!this.isGuestUser()&&!!Salla.url.is_page("cart")&&!this.hasCompleteIntentForLoggedInUser()}shouldPromptIncompleteIntentThisSession(){const t=this.getShownStorage();return this.hasIncompleteUserAddressIntent()&&!0!==t.get(this.incompleteIntentPromptKey)}markIncompleteIntentPrompted(){this.getShownStorage().set(this.incompleteIntentPromptKey,!0)}setStoredIntent(t){this.getIntentStorage().set(this.intentStorageKey,t),this.overrideScopeSwitchUI()}clearBulletDeliveryStoredData(){Salla.storage.session.remove(this.intentStorageKey),Salla.storage.store.remove(this.intentStorageKey),Salla.storage.session.remove(this.sessionShownKey),Salla.storage.session.remove(this.incompleteIntentPromptKey),this.overrideScopeSwitchUI()}async prefillAddressFromStoredIntent(){const t=this.getStoredIntent();if(!t||"address"!==t.type||null==C(t))return;const s=m(t);if(!s)return;const e=this.countries.find((t=>String(t.id)===String(s)));if(!e)return;this.selectedCountry=e,this.updateNewAddressForm({country_id:Number(e.id)});const i=c(e.code),l=C(t),a=_(t),n=k(t),r=t.address_details?.district?.name,[h,o,d]=await Promise.all([i?u.getRegions(e.id):Promise.resolve([]),u.getCities(e.id,i&&null!=a?a:void 0),null!=l?u.getDistricts(Number(l)):Promise.resolve([])]);if(i&&(this.regions=h),this.cities=o,this.districts=d,this.loadingCities=!1,this.loadingRegions=!1,this.loadingDistricts=!1,i&&null!=a){const t=this.regions.find((t=>String(t.id)===String(a)));t&&(this.selectedRegion=t,this.updateNewAddressForm({region_id:t.id}))}if(null!=l&&this.cities.length>0){const t=this.cities.find((t=>String(t.id)===String(l)));t&&(this.selectedCity=t,this.updateNewAddressForm({city_id:t.id,city:t}))}if(this.districts.length>0){const t=this.findPrefillDistrict(n,r);t&&(this.updateNewAddressForm({district_id:t.id,district:t}),this.selectedDistrict=t)}!this.selectedDistrict&&r&&(this.districtName=r)}updateNewAddressForm(t){this.newAddressForm={...this.newAddressForm,...t}}hasBeenShownThisSession(){return!0===this.getShownStorage().get(this.sessionShownKey)}markShownThisSession(){this.getShownStorage().set(this.sessionShownKey,!0)}async loadCountries(t=!1){const s="branch"===this.activeTab;this.countries=await u.getCountries(s);const e=Salla.config.get("store.settings.bullet_delivery.customer_location.country"),i=e&&this.countries.length>0?this.countries.find((t=>String(t.code).toUpperCase()===String(e).toUpperCase())):null;i&&(this.selectedCountry=i,this.updateNewAddressForm({country_id:Number(this.selectedCountry.id)}),t||(c(this.selectedCountry.code)?await this.loadRegions(this.selectedCountry.id):await this.loadCities(this.selectedCountry.id)))}async loadCities(t,s){this.loadingCities=!0,this.cities=[],this.districts=[],this.selectedCity=null,this.selectedDistrict=null,this.districtName="";try{this.cities=await u.getCities(t,s)}finally{this.loadingCities=!1}}async loadDistricts(t){this.loadingDistricts=!0,this.districts=[],this.selectedDistrict=null,this.districtName="";try{this.districts=await u.getDistricts(t)}finally{this.loadingDistricts=!1}}findPrefillDistrict(t,s){if(0===this.districts.length)return;if(null!=t){const s=this.districts.find((s=>String(s.id)===String(t)));if(s)return s}const e=s?.trim().toLowerCase();return e?this.districts.find((t=>{const s=t.name?.trim().toLowerCase(),i=t.name_en?.trim().toLowerCase();return s===e||i===e})):void 0}async loadBranches(){this.loadingBranches=!0;try{this.branches=await u.getBranches({country_id:this.selectedCountry?.id}),this.filterBranches()}finally{this.loadingBranches=!1}}filterBranches(){this.filteredBranches=((t,s)=>{if(!s)return t;const e=s.toLowerCase();return t.filter((t=>t.name.toLowerCase().includes(e)||t.city?.name?.toLowerCase().includes(e)))})(this.branches,this.branchSearchQuery)}async prefillFromSessionStorage(){try{const t=this.getStoredIntent();if(!t)return;if("address"!==this.activeTab||"address"!==t.type||this.isLoggedIn||await this.prefillAddressFromStoredIntent(),"branch"===this.activeTab&&"branch"===t.type){const s=m(t);if(null!=s){const e=this.countries.find((t=>String(t.id)===String(s)));if(e){this.selectedCountry=e,this.updateNewAddressForm({country_id:Number(e.id)});const s=S(t);if(null!=s&&this.branches.length>0){const t=this.branches.find((t=>t.id===s));t&&(this.selectedBranch=t)}}}}}catch(t){console.error("[BulletDelivery] Error prefilling from session storage:",t)}}async loadSavedAddresses(){this.savedAddresses=await u.getSavedAddresses();const t=this.getStoredIntent();if(M(t))this.selectedSessionAddress=!0,this.selectedSavedAddress=null;else{const t=this.savedAddresses.find((t=>t.is_default&&!1!==t.is_in_coverage));if(t)this.selectedSavedAddress=t;else{const t=this.savedAddresses.find((t=>!1!==t.is_in_coverage));t&&(this.selectedSavedAddress=t)}}}applyCountryChange(t){this.selectedCountry=t,this.selectedRegion=null,this.regions=[],this.cities=[],this.districts=[],this.selectedCity=null,this.selectedDistrict=null,this.districtName="",this.allocationOutOfCoverageMessage=null,this.selectedCountry&&(this.updateNewAddressForm({country_id:Number(this.selectedCountry.id),region_id:void 0,city_id:void 0,district_id:void 0,city:void 0,district:void 0}),"branch"===this.activeTab?this.loadBranches():c(this.selectedCountry.code)?this.loadRegions(this.selectedCountry.id):this.loadCities(this.selectedCountry.id))}async loadRegions(t){this.loadingRegions=!0,this.regions=[],this.selectedRegion=null,this.cities=[],this.districts=[],this.selectedCity=null,this.selectedDistrict=null,this.districtName="";try{this.regions=await u.getRegions(t)}finally{this.loadingRegions=!1}}emitHeaderContextUpdate(t,s,e){let i="";"address"===t.type?s?i=s.district?.name&&s.city?.name?`${s.district.name}، ${s.city.name}`:s.city?.name??"":this.selectedCity?i=this.selectedDistrict?`${this.selectedDistrict.name}، ${this.selectedCity.name}`:this.selectedCity.name:t.address_details&&(i=[t.address_details.district?.name,t.address_details.city.name,t.address_details.country.name].filter(Boolean).join("، ")||t.address_details.short_address||""):e?i=e.name:t.branch_details&&(i=t.branch_details.city??t.branch_details.name);const l="address"===t.type?Salla.lang.get("mobile_app.strings.delivery"):Salla.lang.get("mobile_app.strings.pickup");this.headerContextUpdate.emit({type:t.type,display_text:i?`${l}: ${i}`:"",country_code:t.country_code,city:this.selectedCity?.name??t.address_details?.city?.name,district:this.selectedDistrict?.name??t.address_details?.district?.name,branch_name:e?.name??t.branch_details?.name})}handleBranchSearch(t){const s=t.target.value;if(this.branchSearchQuery=s,this.branchSearchDebounceTimer&&clearTimeout(this.branchSearchDebounceTimer),!s?.trim())return this.branchSearchQuery="",void this.loadBranches();this.branchSearchDebounceTimer=setTimeout((async()=>{if(!(s.trim().length<2)){this.loadingBranches=!0;try{this.branches=await u.getBranches({country_id:this.selectedCountry?.id,query:s}),this.filterBranches()}finally{this.loadingBranches=!1}}}),1e3)}async loadBranchesWithLocation(t,s){this.loadingBranches=!0;try{if(this.branches=await u.getBranches({country_id:this.selectedCountry?.id,lat:t,lng:s}),this.filterBranches(),!this.selectedCountry&&this.branches.length>0){const t=this.branches[0];if(t.country){const s=this.countries.find((s=>s.id===t.country.id));s&&(this.selectedCountry=s,this.updateNewAddressForm({country_id:Number(s.id)}))}}}finally{this.loadingBranches=!1}}async handleFindNearestBranch(){if(navigator.geolocation){this.loadingNearestBranch=!0,this.locationError="";try{const t=await new Promise(((t,s)=>{navigator.geolocation.getCurrentPosition(t,s,{enableHighAccuracy:!0,timeout:1e4,maximumAge:0})})),{latitude:s,longitude:e}=t.coords;await this.loadBranchesWithLocation(s,e);const i=function(t,s,e){let i=null,l=Number.POSITIVE_INFINITY;for(const a of t){const t=null!=a.location?.lat?Number(a.location.lat):Number.NaN,n=null!=a.location?.lng?Number(a.location.lng):Number.NaN;if(Number.isNaN(t)||Number.isNaN(n)||!1===a.is_open)continue;const r=b(s,e,t,n);r<l&&(l=r,i=a)}return i}(this.branches,s,e);i&&(this.selectedBranch=i,this.branchSearchQuery="",this.filterBranches())}catch(t){const s=t;this.locationError=B["number"==typeof s?.code?s.code:-1]??"An error occurred while detecting location"}finally{this.loadingNearestBranch=!1}}else this.locationError=Salla.lang.get("pages.checkout.current_location_not_supported")}handleBranchSelect(t){this.selectedBranch=t}handleSavedAddressSelect(t){!1!==t.is_in_coverage?(this.selectedSavedAddress=t,this.selectedSessionAddress=!1):Salla.notify?.error(Salla.lang.get("pages.checkout.shipping_not_available"))}handleSessionAddressSelect(){this.selectedSessionAddress=!0,this.selectedSavedAddress=null}async handleAddNewAddress(){this.viewMode="add-address";const t=this.getStoredIntent(),s=m(t);if(s&&this.countries.length>0){const t=this.countries.find((t=>t.id===s));t&&(this.selectedCountry=t,this.updateNewAddressForm({country_id:Number(t.id)}),c(t.code)?await this.loadRegions(t.id):await this.loadCities(t.id))}}handleBackToAddressList(){this.viewMode="main"}buildAddressLocationPayload(){const t=this.selectedDistrict?.name??this.districtName?.trim()??"";return function(t){const{countryId:s,countryCode:e,regionId:i,cityId:l,districtId:a,description:n=""}=t,r=n||"";return{country_id:Number(s)||void 0,region_id:null!=i?Number(i):void 0,city_id:null!=l?Number(l):void 0,district_id:null!=a?Number(a):void 0,description:r,...e&&c(e)&&{local:r}}}({countryId:this.selectedCountry?.id??0,countryCode:this.selectedCountry?.code,regionId:this.selectedRegion?.id,cityId:this.selectedCity?.id,districtId:this.selectedDistrict?.id,description:t})}async handleTabChange(t){if(!this.tabChanging){this.tabChanging=!0;try{this.activeTab=t,this.showCartWillBeClearedBanner=!1,this.allocationOutOfCoverageMessage=null;const s="branch"===t;this.countries=await u.getCountries(s);const e=this.selectedCountry?.id;if(null!=e&&(this.selectedCountry=this.countries.find((t=>t.id===e))||null),this.selectedCountry)if("branch"===t){const t=this.getStoredIntent(),s=w(t),e=x(t);null!=s&&null!=e?await this.loadBranchesWithLocation(s,e):await this.loadBranches();const i=S(t);if(null!=i&&this.branches.length>0){const t=this.branches.find((t=>t.id===i));t&&(this.selectedBranch=t)}}else if("address"===t){if(this.isLoggedIn&&!this.savedAddressesLoaded){this.loadingSavedAddresses=!0;try{await this.loadSavedAddresses(),this.savedAddressesLoaded=!0}finally{this.loadingSavedAddresses=!1}}if(!this.isLoggedIn){const t=this.getStoredIntent();t&&C(t)&&await this.prefillAddressFromStoredIntent()}}}finally{this.tabChanging=!1}}}isConfirmDisabled(){return"branch"===this.activeTab?!this.selectedBranch:!("address"!==this.activeTab||this.isLoggedIn&&this.selectedSessionAddress||(this.isLoggedIn&&this.selectedSavedAddress?!1!==this.selectedSavedAddress.is_in_coverage:this.selectedCountry&&this.selectedCity&&A(this.selectedCountry?.code,this.selectedRegion?.id,this.selectedDistrict?.id??(this.districtName?.trim()||null))))}handleLogin(){Salla.auth.setCanRedirect(!1),Salla.event.dispatch("bullet-delivery::close"),Salla.event.dispatch("login::open",Salla.url.is_page("cart")?{withoutReload:!0,source:"cart-submit"}:{withoutReload:!0,source:"bullet-delivery"})}resolvePendingCartSubmit(){if(!this.pendingCartSubmitResolver)return;const t=this.pendingCartSubmitResolver;this.pendingCartSubmitResolver=null,this.pendingCartSubmitPromise=null,this.cartSubmitConfirmationPending=!1,t()}buildIntentAddress(){if("address"!==this.activeTab||!this.selectedCountry||!this.selectedCity)return;const t={id:this.selectedCountry.id,name:this.selectedCountry.name,code:this.selectedCountry.code},s={id:this.selectedCity.id,name:this.selectedCity.name},e=this.selectedRegion?{id:this.selectedRegion.id,name:this.selectedRegion.name,code:this.selectedRegion.code}:void 0,i=this.selectedDistrict?{id:this.selectedDistrict.id,name:this.selectedDistrict.name}:this.districtName?{id:0,name:this.districtName}:void 0,l=this.selectedSavedAddress?.short_address;return{country:t,region:e,city:s,district:i,short_address:l}}buildIntentAddressFromSaved(t){return{country:{id:t.country?.id??t.country_id??0,name:t.country?.name??"",code:t.country?.code},region:t.region?{id:t.region.id,name:t.region.name,code:t.region.code}:void 0,city:{id:t.city?.id??t.city_id??0,name:t.city?.name??""},district:t.district?{id:t.district.id,name:t.district.name}:void 0,short_address:t.short_address}}buildIntentBranch(){if("branch"!==this.activeTab||!this.selectedBranch)return;const t=this.selectedBranch,s=null!=t.location?.lat?Number(t.location.lat):void 0,e=null!=t.location?.lng?Number(t.location.lng):void 0;return{id:t.id,name:t.name,city:t.city?.name,latitude:s,longitude:e}}async handleConfirm(){if(this.isConfirmDisabled()||this.confirming)return;this.confirming=!0,this.confirmBtn?.load();let t=!1;try{const s={type:this.activeTab,country_id:Number(this.selectedCountry?.id)||0,country_code:this.selectedCountry?.code||""};let e,i,l;if("address"===this.activeTab)if(this.isLoggedIn&&this.selectedSessionAddress){const t=await this.saveSessionAddressToProfile();if(!t)return Salla.notify?.error(Salla.lang.get("common.errors.error_occurred")),void this.confirmBtn?.stop();s.address_id=t.id,e=t,this.selectedSessionAddress=!1,this.selectedSavedAddress=t,s.address_details=this.buildIntentAddressFromSaved(t)}else this.isLoggedIn&&this.selectedSavedAddress?(s.address_id=this.selectedSavedAddress.id,e=this.selectedSavedAddress,s.address_details=this.buildIntentAddressFromSaved(this.selectedSavedAddress)):s.address_details=this.buildIntentAddress();else s.branch_details=this.buildIntentBranch(),s.branch_id=this.selectedBranch?.id,i=this.selectedBranch||void 0;"address"===this.activeTab?this.isLoggedIn&&this.selectedSavedAddress?l={type:"address",address_id:String(this.selectedSavedAddress.id)}:(l={type:"address",country_id:String(this.selectedCountry?.id||0),city_id:String(this.selectedCity?.id||"")},c(this.selectedCountry?.code??"")&&(this.selectedRegion?.id&&(l.region_id=String(this.selectedRegion.id)),l.district_id=String(this.selectedDistrict?.id||""))):l={type:"branch",branch_id:String(this.selectedBranch?.id||"")};const a=await u.allocateScope(l);if(!a.success){console.error("BulletDelivery: Scope allocation failed",a.error);const t=a.error||("address"===this.activeTab?Salla.lang.get("pages.checkout.address_out_of_coverage"):Salla.lang.get("pages.checkout.failed_to_set_pickup"));return Salla.notify?.error(t),this.allocationOutOfCoverageMessage=t,this.confirmBtn?.stop(),void(this.confirming=!1)}let n;if(a.data){const t=a.data;n=t.id;const e=t?.allocation?.type,i=t?.allocation?.branch_id;e&&Salla.api.setHeader("s-scope-allocation-type",e),i&&Salla.api.setHeader("s-scope-allocation-id",String(i));const l=Salla.config.get("store.scope",Salla.storage.get("scope"))||{};Salla.storage.set("scope",{...l,id:n,allocation_type:e,allocation_id:i?String(i):void 0}),s.allocation_headers={"s-scope-allocation-type":e,"s-scope-allocation-id":i?String(i):void 0}}this.markShownThisSession(),this.setStoredIntent(s),n&&await u.setDeliveryScope(n),this.bulletDeliveryConfirmed.emit({...s,address:e,branch:i}),this.emitHeaderContextUpdate(s,e,i),t=!0,setTimeout((()=>{if(this.confirmBtn?.stop(),this.close(),this.confirming=!1,this.cartSubmitConfirmationPending)this.resolvePendingCartSubmit();else if(n){const t=Salla.storage.get("scope")||{};let s=Salla.helpers.addParamToUrl("scope",n);t.allocation_id&&(s=Salla.helpers.addParamToUrl("allocation_id",t.allocation_id,s)),t.allocation_type&&(s=Salla.helpers.addParamToUrl("allocation_type",t.allocation_type,s)),window.location.replace(s)}else window.location.reload()}),500)}finally{t||(this.confirming=!1)}}getCartViewConfig(t){if(!t||!Salla.url.is_page("cart"))return null;const s="branch"===t.type,e="address"===t.type;return s&&!this.supportsPickup||!s&&!e?null:{title:s?Salla.lang.get("pages.checkout.pickup_option"):Salla.lang.get("pages.checkout.delivery_option"),subtitle:v(t,Salla.lang.get("common.elements.to"),""),buttonText:Salla.lang.get("common.elements.edit"),isAddress:e,intent:t}}createCartViewElement(){const t=this.getStoredIntent(),s=this.getCartViewConfig(t);if(!s)return null;const{title:e,subtitle:i,buttonText:l,intent:n}=s,r="branch"===n.type?{preselected_branch_id:S(n)}:{preselected_address_id:n.address_id},h=document.createElement("span");h.className="s-bullet-delivery-cart-view-icon s-bullet-delivery-tab-icon",h.setAttribute("aria-hidden","true"),h.innerHTML=a;const o=document.createElement("span");o.className="s-bullet-delivery-cart-view-title",o.textContent=e;const d=document.createElement("span");d.className="s-bullet-delivery-cart-view-subtitle",d.textContent=i;const c=document.createElement("div");c.className="s-bullet-delivery-cart-view-text",c.append(o,d);const u=document.createElement("div");u.className="s-bullet-delivery-cart-view-info",u.append(h,c);const y=document.createElement("salla-button");y.className="s-bullet-delivery-cart-view-button",y.setAttribute("fill","outline"),y.setAttribute("color","primary"),y.textContent=l,y.addEventListener("click",(()=>Salla.event.emit("bullet-delivery::open",r)));const b=document.createElement("div");return b.className="s-bullet-delivery-cart-view",b.append(u,y),b}renderSkeleton(){return e("div",{slot:"loading",class:"s-bullet-delivery-skeleton"},e("div",{class:"s-bullet-delivery-skeleton-header"},e("salla-skeleton",{class:"s-bullet-delivery-skeleton-title",height:"28px",width:"68%"}),e("salla-skeleton",{class:"s-bullet-delivery-skeleton-subtitle",height:"18px",width:"84%"})),e("div",{class:{"s-bullet-delivery-skeleton-tabs":!0,"s-bullet-delivery-skeleton-tabs--single":!this.supportsPickup}},e("div",{class:"s-bullet-delivery-skeleton-tab"},e("salla-skeleton",{class:"s-bullet-delivery-skeleton-tab-icon",height:"32px",width:"32px"}),e("salla-skeleton",{class:"s-bullet-delivery-skeleton-tab-label",height:"18px",width:"92px"})),this.supportsPickup&&e("div",{class:"s-bullet-delivery-skeleton-tab"},e("salla-skeleton",{class:"s-bullet-delivery-skeleton-tab-icon",height:"32px",width:"32px"}),e("salla-skeleton",{class:"s-bullet-delivery-skeleton-tab-label",height:"18px",width:"84px"}))),e("div",{class:"s-bullet-delivery-skeleton-content"},e("div",{class:"s-bullet-delivery-skeleton-field"},e("salla-skeleton",{class:"s-bullet-delivery-skeleton-field-label",height:"16px",width:"96px"}),e("salla-skeleton",{class:"s-bullet-delivery-skeleton-field-control",height:"56px",width:"100%"})),e("div",{class:"s-bullet-delivery-skeleton-field"},e("salla-skeleton",{class:"s-bullet-delivery-skeleton-field-label",height:"16px",width:"104px"}),e("salla-skeleton",{class:"s-bullet-delivery-skeleton-field-control",height:"56px",width:"100%"})),e("div",{class:"s-bullet-delivery-skeleton-field"},e("salla-skeleton",{class:"s-bullet-delivery-skeleton-field-label",height:"16px",width:"88px"}),e("salla-skeleton",{class:"s-bullet-delivery-skeleton-field-control",height:"56px",width:"100%"}))),e("div",{class:"s-bullet-delivery-skeleton-footer"},e("salla-skeleton",{height:"52px",width:"100%"})))}renderTabs(){return this.supportsPickup?e("div",{class:"s-bullet-delivery-tabs"},e("button",{type:"button",class:{"s-bullet-delivery-tab":!0,"s-bullet-delivery-tab--active":"address"===this.activeTab},onClick:()=>this.handleTabChange("address")},e("span",{class:"s-bullet-delivery-tab-icon",innerHTML:a,"aria-hidden":"true"}),e("span",null,Salla.lang.get("mobile_app.strings.delivery"))),e("button",{type:"button",class:{"s-bullet-delivery-tab":!0,"s-bullet-delivery-tab--active":"branch"===this.activeTab},onClick:()=>this.handleTabChange("branch")},e("span",{class:"s-bullet-delivery-tab-icon",innerHTML:L,"aria-hidden":"true"}),e("span",null,Salla.lang.get("mobile_app.strings.pickup")))):null}renderAlert(t){return e("div",{class:"s-bullet-delivery-allocation-out-of-coverage",role:"alert"},e("span",{class:"s-bullet-delivery-allocation-out-of-coverage-icon","aria-hidden":"true"},e("svg",{width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",xmlns:"http://www.w3.org/2000/svg",role:"img","aria-hidden":"true"},e("title",null,"Information"),e("circle",{cx:"10",cy:"10",r:"9",stroke:"currentColor","stroke-width":"1.5",fill:"currentColor"}),e("text",{x:"10",y:"14","text-anchor":"middle",fill:"white","font-size":"12","font-weight":"bold"},"i"))),e("span",{class:"s-bullet-delivery-allocation-out-of-coverage-text"},t))}renderAllocationOutOfCoverageAlert(){const t=this.allocationOutOfCoverageMessage||Salla.lang.get("pages.checkout.shipping_not_available");return this.renderAlert(t)}renderCountrySelect(){return e("div",{class:"s-bullet-delivery-field"},e("label",{class:"s-bullet-delivery-label",htmlFor:"bullet-delivery-country"},Salla.lang.get("blocks.buy_as_gift.receiver_country"),e("span",{class:"text-red-500"}," *")),e("select",{id:"bullet-delivery-country",class:"form-input",onChange:t=>{const s=Number.parseInt(t.target.value),e=this.countries.find((t=>t.id===s));this.showCartWillBeClearedBanner=!(!this.selectedCountry||!e||this.selectedCountry.code===e.code),this.applyCountryChange(e||null)}},e("option",{value:"",disabled:!0,selected:!this.selectedCountry},Salla.lang.get("pages.checkout.select_country")),this.countries.map((t=>e("option",{key:t.id,value:t.id,selected:this.selectedCountry?.id===t.id},t.name)))))}renderSelectLoader(){return e("span",{class:"s-bullet-delivery-select-loader","aria-hidden":"true"},e("salla-skeleton",{height:"16px",width:"16px"}))}renderLoadingLabel(t,s,i=!1,l=!0){return e("label",{class:"s-bullet-delivery-label",htmlFor:s},e("span",{class:"s-bullet-delivery-label-content"},e("span",null,t,l&&e("span",{class:"text-red-500"}," *")),i&&this.renderSelectLoader()))}renderRegionSelect(){return c(this.selectedCountry?.code??"")&&this.selectedCountry?e("div",{class:"s-bullet-delivery-field"},this.renderLoadingLabel(Salla.lang.get("pages.checkout.region_field"),"bullet-delivery-region",this.loadingRegions),e("select",{id:"bullet-delivery-region",class:"form-input",disabled:this.loadingRegions||0===this.regions.length,onChange:t=>{const s=Number.parseInt(t.target.value),e=this.regions.find((t=>t.id===s));this.selectedRegion=e||null,this.updateNewAddressForm({region_id:e?.id,city_id:void 0,district_id:void 0,city:void 0,district:void 0}),e&&this.selectedCountry&&this.loadCities(this.selectedCountry.id,e.id)}},e("option",{value:"",disabled:!0,selected:!this.selectedRegion},Salla.lang.get("pages.checkout.select_region")),this.regions.map((t=>e("option",{key:t.id,value:t.id,selected:this.selectedRegion?.id===t.id},t.name))))):null}renderCityDistrictSelects(){const t=c(this.selectedCountry?.code??""),s=t,i=s&&this.selectedCity&&!this.loadingDistricts&&0===this.districts.length,l=!this.selectedCountry||t&&!this.selectedRegion||this.loadingCities||0===this.cities.length,a=!this.selectedCountry||t&&!this.selectedRegion||!this.selectedCity||this.loadingDistricts;return e("div",{class:"s-bullet-delivery-field-row"},e("div",{class:"s-bullet-delivery-field"},this.renderLoadingLabel(Salla.lang.get("blocks.buy_as_gift.receiver_city"),"bullet-delivery-city",this.loadingCities),e("select",{id:"bullet-delivery-city",class:"form-input",disabled:l,onChange:t=>{const e=Number.parseInt(t.target.value),i=this.cities.find((t=>t.id===e));this.selectedCity=i||null,this.selectedDistrict=null,this.districtName="",i&&(this.updateNewAddressForm({city:i,district:void 0}),s&&this.loadDistricts(i.id))}},e("option",{value:"",disabled:!0,selected:!this.selectedCity},Salla.lang.get("pages.checkout.select_city")),this.cities.map((t=>e("option",{key:t.id,value:t.id,selected:this.selectedCity?.id===t.id},t.name))))),s&&e("div",{class:"s-bullet-delivery-field"},this.renderLoadingLabel(Salla.lang.get("pages.checkout.district_field"),"bullet-delivery-district",this.loadingDistricts&&!i),i?e("input",{id:"bullet-delivery-district",type:"text",class:"form-input",placeholder:Salla.lang.get("pages.checkout.select_district"),value:this.districtName,disabled:a,onInput:t=>{this.districtName=t.target.value,this.updateNewAddressForm({district:void 0})}}):e("select",{id:"bullet-delivery-district",class:"form-input",disabled:a||0===this.districts.length,onChange:t=>{const s=Number.parseInt(t.target.value),e=this.districts.find((t=>t.id===s));this.selectedDistrict=e||null,this.districtName="",e&&this.updateNewAddressForm({district:e})}},e("option",{value:"",disabled:!0,selected:!this.selectedDistrict},Salla.lang.get("pages.checkout.select_district")),this.districts.map((t=>{const s="ar"===Salla.config.get("user.language_code")?t.name:t.name_en??t.name;return e("option",{key:t.id,value:t.id,selected:this.selectedDistrict?.id===t.id},s)})))))}renderSavedAddressesEmptyState(){return e("div",{class:"s-bullet-delivery-saved-addresses-empty"},e("div",{class:"s-bullet-delivery-saved-addresses-empty-icon","aria-hidden":"true"},e("svg",{width:"28",height:"28",viewBox:"0 0 28 29",fill:"none",xmlns:"http://www.w3.org/2000/svg"},e("title",null,"No Saved Adresses"),e("path",{d:"M20.16 0C21.4613 0 22.6773 0.341333 23.808 1.024C24.9387 1.70667 25.8347 2.61333 26.496 3.744C27.1787 4.91733 27.52 6.18667 27.52 7.552C27.52 9.45067 26.8267 11.232 25.44 12.896C24.4587 14.0907 23.0827 15.2427 21.312 16.352H21.28C20.9387 16.5653 20.5653 16.672 20.16 16.672C19.7547 16.672 19.3813 16.5653 19.04 16.352H19.008C17.2373 15.2213 15.8613 14.0693 14.88 12.896C13.4933 11.232 12.8 9.45067 12.8 7.552C12.8 6.18667 13.1413 4.91733 13.824 3.744C14.4853 2.61333 15.3813 1.70667 16.512 1.024C17.6427 0.341333 18.8587 0 20.16 0ZM11.488 1.984C9.67467 2.368 8.04267 3.14667 6.592 4.32C5.14133 5.49333 4.01067 6.92267 3.2 8.608C2.34667 10.3573 1.92 12.224 1.92 14.208C1.92 14.72 1.952 15.2427 2.016 15.776L2.08 15.744C2.57067 15.488 2.94933 15.3067 3.216 15.2C3.48267 15.0933 3.73867 15.0933 3.984 15.2C4.22933 15.3067 4.4 15.488 4.496 15.744C4.592 16 4.58667 16.256 4.48 16.512C4.37333 16.768 4.19733 16.9493 3.952 17.056C3.70667 17.1627 3.36 17.3227 2.912 17.536L2.656 17.664C2.57067 17.7067 2.48533 17.7387 2.4 17.76C2.89067 19.4667 3.70133 20.9973 4.832 22.352C5.96267 23.7067 7.296 24.7573 8.832 25.504C10.432 26.272 12.1173 26.656 13.888 26.656C15.4667 26.656 16.9813 26.3467 18.432 25.728C19.8187 25.1307 21.0667 24.288 22.176 23.2C21.92 23.0507 21.7653 22.8373 21.712 22.56C21.6587 22.2827 21.7013 22.0267 21.84 21.792C21.9787 21.5573 22.176 21.408 22.432 21.344C22.8373 21.2587 23.2 21.12 23.52 20.928C23.6907 20.8427 23.8613 20.8 24.032 20.8C24.8 19.5413 25.3333 18.176 25.632 16.704C25.6747 16.4267 25.808 16.2133 26.032 16.064C26.256 15.9147 26.496 15.8667 26.752 15.92C27.008 15.9733 27.2107 16.1173 27.36 16.352C27.5093 16.5867 27.552 16.832 27.488 17.088C27.0613 19.2853 26.1973 21.264 24.896 23.024C23.5947 24.784 22.0053 26.1547 20.128 27.136C18.1653 28.16 16.0853 28.672 13.888 28.672C11.3707 28.672 9.03467 28.0107 6.88 26.688C4.78933 25.408 3.12533 23.68 1.888 21.504C0.629333 19.264 0 16.832 0 14.208C0 11.904 0.490667 9.73867 1.472 7.712C2.41067 5.74933 3.728 4.09067 5.424 2.736C7.12 1.38133 9.01333 0.48 11.104 0.032C11.36 -0.032 11.6 0.0106667 11.824 0.16C12.048 0.309333 12.1867 0.522667 12.24 0.8C12.2933 1.07733 12.2453 1.328 12.096 1.552C11.9467 1.776 11.744 1.92 11.488 1.984ZM14.72 7.552C14.72 8.96 15.2533 10.304 16.32 11.584C17.1733 12.5867 18.3893 13.6 19.968 14.624C20.032 14.6453 20.096 14.656 20.16 14.656C20.224 14.656 20.288 14.6453 20.352 14.624C21.9307 13.6213 23.1467 12.608 24 11.584C25.0667 10.304 25.6 8.96 25.6 7.552C25.6 6.57067 25.3547 5.65333 24.864 4.8C24.3733 3.94667 23.7067 3.26933 22.864 2.768C22.0213 2.26667 21.12 2.016 20.16 2.016C19.2 2.016 18.2987 2.26667 17.456 2.768C16.6133 3.26933 15.9467 3.94667 15.456 4.8C14.9653 5.65333 14.72 6.57067 14.72 7.552ZM17.28 7.68C17.28 6.848 17.5627 6.13867 18.128 5.552C18.6933 4.96533 19.3707 4.672 20.16 4.672C20.9493 4.672 21.6267 4.96533 22.192 5.552C22.7573 6.13867 23.04 6.848 23.04 7.68C23.04 8.512 22.7573 9.216 22.192 9.792C21.6267 10.368 20.9493 10.656 20.16 10.656C19.3707 10.656 18.6933 10.368 18.128 9.792C17.5627 9.216 17.28 8.512 17.28 7.68ZM6.752 14.688C7.62667 14.7733 8.53333 15.0293 9.472 15.456C9.70667 15.5627 9.87733 15.744 9.984 16C10.0907 16.256 10.0907 16.512 9.984 16.768C9.87733 17.024 9.70133 17.2 9.456 17.296C9.21067 17.392 8.97067 17.3867 8.736 17.28C7.94667 16.9387 7.22133 16.736 6.56 16.672C6.28267 16.6293 6.064 16.5013 5.904 16.288C5.744 16.0747 5.68 15.8293 5.712 15.552C5.744 15.2747 5.86133 15.0507 6.064 14.88C6.26667 14.7093 6.496 14.6453 6.752 14.688ZM17.6 20.544C18.304 20.864 18.976 21.0987 19.616 21.248C19.872 21.312 20.0693 21.4613 20.208 21.696C20.3467 21.9307 20.3893 22.1813 20.336 22.448C20.2827 22.7147 20.144 22.9227 19.92 23.072C19.696 23.2213 19.4453 23.264 19.168 23.2C18.4213 23.0293 17.632 22.752 16.8 22.368C16.5653 22.2613 16.4 22.08 16.304 21.824C16.208 21.568 16.2133 21.312 16.32 21.056C16.4267 20.8 16.6027 20.624 16.848 20.528C17.0933 20.432 17.344 20.4373 17.6 20.544ZM12.832 17.44C13.0027 17.568 13.248 17.7493 13.568 17.984L14.496 18.688C14.7093 18.8587 14.8373 19.0773 14.88 19.344C14.9227 19.6107 14.8693 19.856 14.72 20.08C14.5707 20.304 14.368 20.4427 14.112 20.496C13.856 20.5493 13.6107 20.5013 13.376 20.352L11.744 19.072C11.5307 18.9227 11.4027 18.7093 11.36 18.432C11.3173 18.1547 11.3707 17.904 11.52 17.68C11.6693 17.456 11.872 17.3227 12.128 17.28C12.384 17.2373 12.6187 17.2907 12.832 17.44ZM20.16 8.672C20.416 8.672 20.64 8.576 20.832 8.384C21.024 8.192 21.12 7.95733 21.12 7.68C21.12 7.40267 21.024 7.16267 20.832 6.96C20.64 6.75733 20.416 6.656 20.16 6.656C19.904 6.656 19.68 6.75733 19.488 6.96C19.296 7.16267 19.2 7.40267 19.2 7.68C19.2 7.95733 19.296 8.192 19.488 8.384C19.68 8.576 19.904 8.672 20.16 8.672Z",fill:"#666666"}))),e("p",{class:"s-bullet-delivery-saved-addresses-empty-title"},Salla.lang.get("pages.checkout.no_saved_addresses")),e("p",{class:"s-bullet-delivery-saved-addresses-empty-desc"},Salla.lang.get("pages.checkout.add_address_simplify_shipping")),e("salla-button",{onClick:()=>this.handleAddNewAddress(),onKeyUp:()=>this.handleAddNewAddress()},Salla.lang.get("pages.checkout.add_new_address")))}async saveSessionAddressToProfile(){const t=this.getStoredIntent(),s=m(t),e=C(t),i=k(t);if(!t||"address"!==t.type||!s||!e)return null;const l=f(t);if(c(l)&&!i)return null;const a=c(l),n=t.address_details?.district?.name??"",r={country_id:s,region_id:_(t),city_id:e,district_id:i,description:n};a&&(r.local=n);try{const{success:t,address:s}=await u.saveAddressLocation(r);if(!t)return null;const e=s??null;return e&&this.addressCreated.emit({address:e}),e}catch(t){return console.error("SallaBulletDelivery: Error saving session address",t),null}}renderSavedAddresses(){if(!this.isLoggedIn)return null;if(this.loadingSavedAddresses)return e("div",{class:"s-bullet-delivery-addresses-list s-scrollbar"},[1,2,3].map((t=>e("div",{key:t,class:"s-bullet-delivery-address-item s-bullet-delivery-address-item--skeleton"},e("salla-skeleton",{class:"s-bullet-delivery-skel-radio",height:"18px",width:"18px"}),e("salla-skeleton",{class:"s-bullet-delivery-skel-map",height:"36px",width:"36px"}),e("div",{class:"s-bullet-delivery-address-content"},e("div",{class:"s-bullet-delivery-address-lines"},e("salla-skeleton",{height:"18px",width:"72%"}),e("salla-skeleton",{height:"16px",width:"56%"})))))));const t=this.getStoredIntent(),s=M(t),i=s&&t?.address_details&&[t.address_details.city?.name,t.address_details.country?.name].filter(Boolean).join("، ")||"",l=s&&t?.address_details?(t.address_details.district?.name??"").trim():"";return 0!==this.savedAddresses.length||s?e("div",{class:"s-bullet-delivery-addresses-list s-scrollbar"},s&&this.renderAddressRow({key:"session-address",line1:i,line2:l,selected:this.selectedSessionAddress,onClick:()=>this.handleSessionAddressSelect()}),this.savedAddresses.map((t=>{const s=[t.building_number,t.street].filter(Boolean).join("، ")||t.formatted?.address_one||t.short_address||"",e=[t.district?.name,t.city?.name,t.country?.name].filter(Boolean).join("، "),i=(t.formatted?.address_two||e)??"",l=!1!==t.is_in_coverage;return this.renderAddressRow({key:String(t.id),line1:s,line2:i,selected:this.selectedSavedAddress?.id===t.id,disabled:!l,onClick:()=>l&&this.handleSavedAddressSelect(t)})}))):this.renderSavedAddressesEmptyState()}renderAddressRow(t){const{key:s,line1:i,line2:l,selected:a,disabled:n=!1,onClick:r}=t;return e("button",{key:s,class:{"s-bullet-delivery-address-item":!0,"s-bullet-delivery-address-item--selected":a,"s-bullet-delivery-address-item--disabled":n},type:"button",onClick:n?void 0:r,onKeyDown:t=>{"Enter"!==t.key&&" "!==t.key||(t.preventDefault(),n||r())}},e("input",{type:"radio",name:"saved_address",class:"s-bullet-delivery-radio",checked:a,disabled:n,onClick:t=>t.stopPropagation()}),e("span",{class:"s-bullet-delivery-address-map-icon",innerHTML:'<svg width="35" height="35" viewBox="0 0 35 35" fill="none" xmlns="http://www.w3.org/2000/svg">\n <g filter="url(#filter0_d_24181_220540)">\n <mask id="mask0_24181_220540" style="mask-type:alpha" maskUnits="userSpaceOnUse" x="1" y="0" width="33" height="32">\n <rect x="1.90958" y="0.576577" width="30.8468" height="30.8468" rx="9.22523" fill="#D9D9D9" stroke="white" stroke-width="1.15315"/>\n </mask>\n <g mask="url(#mask0_24181_220540)">\n <rect x="1.90958" y="0.576577" width="30.8468" height="30.8468" rx="9.22523" fill="#E8E8E8" stroke="white" stroke-width="1.15315"/>\n <path d="M17.9096 6.77445L28.7204 5.33301H32.4681L32.7564 11.8195V23.6393L10.4141 23.9276V10.8105L17.9096 6.77445Z" fill="#97E7C8"/>\n <path d="M-2.70303 10.6664H10.2699M41.6934 5.47722C38.378 5.47722 34.7744 5.47722 27.8555 5.47722C20.9366 5.47722 18.4862 6.63037 15.4591 8.64839C12.4321 10.6664 10.2699 10.6664 10.2699 10.6664M10.2699 34.4502V23.6394M10.2699 10.6664V23.6394M-6.16249 23.6394H10.2699M10.2699 23.6394H21.0807M38.8105 23.6394H21.0807M21.0807 23.6394V34.4502" stroke="white" stroke-width="2.30631"/>\n <rect x="2.34202" y="1.00901" width="29.982" height="29.982" rx="8.79279" stroke="white" stroke-width="2.01802"/>\n </g>\n <g clip-path="url(#clip0_24181_220540)">\n <path fill-rule="evenodd" clip-rule="evenodd" d="M18.069 19.8621C19.4995 18.6902 22.171 16.0948 22.171 13.0548C22.171 11.7333 21.6461 10.466 20.7117 9.5316C19.7773 8.5972 18.51 8.07227 17.1885 8.07227C15.8671 8.07227 14.5998 8.5972 13.6654 9.5316C12.731 10.466 12.2061 11.7333 12.2061 13.0548C12.2061 16.0948 14.8776 18.6902 16.3081 19.8621C16.5553 20.0679 16.8669 20.1806 17.1885 20.1806C17.5102 20.1806 17.8218 20.0679 18.069 19.8621ZM17.1885 14.1618C17.517 14.1618 17.838 14.0644 18.1111 13.8819C18.3842 13.6995 18.597 13.4401 18.7227 13.1367C18.8484 12.8333 18.8812 12.4994 18.8172 12.1773C18.7531 11.8552 18.595 11.5593 18.3627 11.3271C18.1305 11.0948 17.8346 10.9367 17.5125 10.8726C17.1904 10.8085 16.8565 10.8414 16.5531 10.9671C16.2497 11.0928 15.9903 11.3056 15.8079 11.5787C15.6254 11.8518 15.528 12.1728 15.528 12.5012C15.528 12.9416 15.703 13.364 16.0144 13.6754C16.3258 13.9868 16.7481 14.1618 17.1885 14.1618Z" fill="#55575D"/>\n </g>\n </g>\n <defs>\n <filter id="filter0_d_24181_220540" x="-0.000325561" y="0" width="34.6667" height="34.6667" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">\n <feFlood flood-opacity="0" result="BackgroundImageFix"/>\n <feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha"/>\n <feOffset dy="1.33333"/>\n <feGaussianBlur stdDeviation="0.666667"/>\n <feColorMatrix type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.04 0"/>\n <feBlend mode="normal" in2="BackgroundImageFix" result="effect1_dropShadow_24181_220540"/>\n <feBlend mode="normal" in="SourceGraphic" in2="effect1_dropShadow_24181_220540" result="shape"/>\n </filter>\n <clipPath id="clip0_24181_220540">\n <rect width="12.1081" height="12.1081" fill="white" transform="translate(11.1338 8.07227)"/>\n </clipPath>\n </defs>\n </svg>\n ',"aria-hidden":"true"}),e("div",{class:"s-bullet-delivery-address-content"},e("div",{class:"s-bullet-delivery-address-lines"},e("span",{class:"s-bullet-delivery-address-line1"},i),e("span",{class:"s-bullet-delivery-address-line2"},l))))}renderGuestDeliveryForm(){const t=c(this.selectedCountry?.code??"");return[this.renderCountrySelect(),t?this.renderRegionSelect():null,this.renderCityDistrictSelects()]}renderDeliveryTab(){return e("div",{class:{"s-bullet-delivery-content":!0,"s-bullet-delivery-content--active":"address"===this.activeTab,"s-hidden":"address"!==this.activeTab}},this.isLoggedIn?this.renderSavedAddresses():this.renderGuestDeliveryForm())}renderBranchSearch(){return e("div",{class:"s-bullet-delivery-branch-search"},e("div",{class:"s-bullet-delivery-search-row"},e("div",{class:"s-bullet-delivery-search s-bullet-delivery-branch-search-wrap"},e("span",{class:"s-bullet-delivery-search-icon s-bullet-delivery-branch-search-icon",innerHTML:l,"aria-hidden":"true"}),e("input",{type:"text",class:"s-bullet-delivery-branch-search-input form-input",placeholder:Salla.lang.get("pages.checkout.search_for_city_or_branch"),value:this.branchSearchQuery,onInput:t=>this.handleBranchSearch(t),autocomplete:"off"})),e("button",{type:"button",class:{"s-bullet-delivery-location-btn":!0,"s-bullet-delivery-location-btn--full":!0,"s-bullet-delivery-location-btn--loading":this.loadingNearestBranch},onClick:()=>this.handleFindNearestBranch(),disabled:this.loadingNearestBranch},this.loadingNearestBranch?e("span",{class:"s-bullet-delivery-location-icon","aria-hidden":"true"},e("salla-skeleton",{height:"18px",width:"18px"})):e("span",{class:"s-bullet-delivery-location-icon",innerHTML:'<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">\n <path\n d="M13.3258 7.65006C13.3258 10.7797 10.7888 13.3167 7.65916 13.3167C4.52955 13.3167 1.99249 10.7797 1.99249 7.65006C1.99249 4.52045 4.52955 1.9834 7.65916 1.9834C10.7888 1.9834 13.3258 4.52045 13.3258 7.65006Z"\n stroke="#555555" stroke-width="1.3" />\n <path d="M14.65 7.65039H13.3167" stroke="#555555" stroke-width="1.3" stroke-linecap="round"\n stroke-linejoin="round" />\n <path d="M1.98336 7.65039L0.650024 7.65039" stroke="#555555" stroke-width="1.3"\n stroke-linecap="round" stroke-linejoin="round" />\n <path d="M7.65002 0.650065L7.65002 1.9834" stroke="#555555" stroke-width="1.3"\n stroke-linecap="round" stroke-linejoin="round" />\n <path d="M7.65002 13.3171L7.65002 14.6504" stroke="#555555" stroke-width="1.3"\n stroke-linecap="round" stroke-linejoin="round" />\n <path\n d="M9.64999 7.65039C9.64999 8.75496 8.75456 9.65039 7.64999 9.65039C6.54542 9.65039 5.64999 8.75496 5.64999 7.65039C5.64999 6.54582 6.54542 5.65039 7.64999 5.65039C8.75456 5.65039 9.64999 6.54582 9.64999 7.65039Z"\n stroke="#555555" stroke-width="1.3" />\n</svg>\n ',"aria-hidden":"true"}),e("span",null,Salla.lang.get("pages.checkout.nearest_to_my_location")))),this.locationError&&"branch"===this.activeTab&&e("span",{class:"s-bullet-delivery-error"},this.locationError))}renderBranchList(){return this.loadingBranches?e("div",{class:"s-bullet-delivery-branches-wrap"},e("div",{class:"s-bullet-delivery-branches-loading"},[1,2,3,4].map((t=>e("div",{key:t,class:"s-bullet-delivery-branch-skeleton"},e("salla-skeleton",{class:"s-bullet-delivery-branch-skeleton-radio",type:"circle",height:"16px",width:"16px"}),e("div",{class:"s-bullet-delivery-branch-skeleton-icon"},e("salla-skeleton",{height:"34px",width:"34px"})),e("div",{class:"s-bullet-delivery-branch-skeleton-content"},e("salla-skeleton",{class:"s-bullet-delivery-branch-skeleton-title",height:"12px",width:"124px"})),e("salla-skeleton",{class:"s-bullet-delivery-branch-skeleton-time",height:"12px",width:"88px"}),e("div",{class:"s-bullet-delivery-branch-skeleton-map"},e("salla-skeleton",{height:"32px",width:"32px"}))))))):0===this.filteredBranches.length?e("salla-placeholder",{alignment:"center",class:"s-bullet-delivery-placeholder"},e("span",{slot:"title"},Salla.lang.get("pages.checkout.no_pickup_branches_found"))):e("div",{class:"s-bullet-delivery-branches-wrap"},e("ul",{class:"s-bullet-delivery-branches-list s-scrollbar"},this.filteredBranches.map((t=>e("li",{key:t.id,class:{"s-bullet-delivery-branch-item":!0,"s-bullet-delivery-branch-item--selected":this.selectedBranch?.id===t.id,"s-bullet-delivery-branch-item--disabled":!1===t.is_open},tabIndex:!1===t.is_open?-1:0,role:"option","aria-disabled":!1===t.is_open,onClick:()=>!1!==t.is_open&&this.handleBranchSelect(t),onKeyDown:s=>{"Enter"!==s.key&&" "!==s.key||(s.preventDefault(),!1!==t.is_open&&this.handleBranchSelect(t))}},e("input",{type:"radio",name:"branch",class:"s-bullet-delivery-radio",checked:this.selectedBranch?.id===t.id,disabled:!1===t.is_open}),e("span",{class:"s-bullet-delivery-branch-icon","aria-hidden":"true"},e("span",{innerHTML:L})),e("div",{class:"s-bullet-delivery-branch-info"},e("span",{class:"s-bullet-delivery-branch-name"},t.name),t.preparation_time?e("span",{class:"s-bullet-delivery-branch-prep"},`${Salla.lang.get("pages.checkout.processing_time")}: ${t.preparation_time}`):null),(()=>{const s=(i=t.working_hours,i?.[0]?.times?.[0]??null);var i;return s?e("span",{class:"s-bullet-delivery-branch-time"},function(t,s,e,i){const l=String(t).trim(),a=String(s).trim();return l&&a?"00:00"===l?`${i} ${p(a,e)}`:`${p(l,e)} - ${p(a,e)}`:""}(s.from,s.to,Salla.config.get("user.language_code")||"ar",Salla.lang.get("pages.checkout.until"))):null})(),null!=t.location?.lat&&null!=t.location?.lng&&e("a",{href:`https://www.google.com/maps?q=${t.location.lat},${t.location.lng}`,target:"_blank",rel:"noopener noreferrer",class:"s-bullet-delivery-branch-map-link",title:Salla.lang.get("common.elements.open_in_google_maps"),onClick:t=>t.stopPropagation()},e("span",{class:"s-bullet-delivery-branch-map-link-icon",innerHTML:'<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">\n <path\n d="M7.94798 3.19336C11.1309 2.1083 12.7223 1.56578 13.5783 2.42174C14.4342 3.27771 13.8917 4.86914 12.8066 8.05201L12.0678 10.2195C11.2344 12.6639 10.8178 13.8861 10.131 13.9872C9.94631 14.0144 9.75517 13.9981 9.57248 13.9394C8.89297 13.7212 8.53377 12.4326 7.81538 9.8553C7.65604 9.28364 7.57637 8.99781 7.39494 8.7795C7.34228 8.71614 7.28386 8.65772 7.2205 8.60506C7.00219 8.42363 6.71636 8.34396 6.1447 8.18462C3.56741 7.46623 2.27876 7.10703 2.0606 6.42752C2.00195 6.24483 1.98558 6.05369 2.01277 5.86903C2.11392 5.18221 3.33613 4.76556 5.78054 3.93225L7.94798 3.19336Z"\n stroke="#555555" stroke-width="1.2" />\n</svg>\n '.replace(/mask0_25437_34440/g,`mask0_branch_${t.id}`),"aria-hidden":"true"}),e("span",{class:"sr-only"},Salla.lang.get("common.elements.open_in_google_maps"))))))))}renderPickupTab(){return e("div",{class:{"s-bullet-delivery-content":!0,"s-bullet-delivery-content--active":"branch"===this.activeTab,"s-hidden":"branch"!==this.activeTab}},this.renderCountrySelect(),this.renderBranchSearch(),this.renderBranchList())}renderAddAddressForm(){const t=Salla.lang.get("pages.checkout.add_new_address"),s=c(this.selectedCountry?.code??""),i=this.selectedCountry&&this.selectedCity&&(!s||this.selectedRegion)&&(!s||!!this.selectedDistrict||!!(this.districtName&&this.districtName.trim().length>0)),l=this.savingAddress?Salla.lang.get("pages.checkout.loading"):Salla.lang.get("pages.checkout.confirm_address");return e("div",{class:"s-bullet-delivery-add-address"},e("div",{class:"s-bullet-delivery-add-address-header"},e("button",{type:"button",class:"s-bullet-delivery-add-address-title",onClick:()=>this.handleBackToAddressList(),onKeyDown:t=>"Enter"===t.key&&this.handleBackToAddressList()},e("span",{innerHTML:this.isRTL?n:r,"aria-hidden":"true"}),e("span",{class:"s-bullet-delivery-add-address-title-text"},t))),e("form",{class:"s-bullet-delivery-add-address-form",onSubmit:t=>this.handleSubmitAddAddress(t)},this.renderGuestDeliveryForm(),e("div",{class:"s-bullet-delivery-form-actions s-bullet-delivery-form-actions--single"},e("salla-button",{type:"submit",loading:this.savingAddress,disabled:!i||this.savingAddress,class:"s-bullet-delivery-add-address-submit"},l))))}renderFooter(){const t="address"===this.activeTab&&this.isLoggedIn;return e("div",{class:"s-bullet-delivery-footer"},e("salla-button",{ref:t=>{this.confirmBtn=t},disabled:this.isConfirmDisabled(),onClick:()=>this.handleConfirm(),"loader-position":"center",width:"wide"},"branch"===this.activeTab?Salla.lang.get("pages.checkout.confirm_receipt_from_the_branch"):Salla.lang.get("pages.checkout.confirm_address")),t&&e("salla-button",{onClick:()=>this.handleAddNewAddress(),width:"wide",shape:"link"},Salla.lang.get("pages.checkout.add_new_address")),!this.isLoggedIn&&e("salla-button",{shape:"link",onClick:this.handleLogin},Salla.lang.get("pages.checkout.login_to_use_saved_addresses")))}renderMainView(){const t=this.isLoggedIn&&"address"===this.activeTab&&0===this.savedAddresses.length&&!M(this.getStoredIntent()),s="branch"===this.activeTab&&this.supportsPickup?this.renderPickupTab():this.renderDeliveryTab();return e("div",null,e("div",{class:"s-bullet-delivery-header"},e("h2",{class:"s-bullet-delivery-title"},"address"===this.activeTab?Salla.lang.get("blocks.home.add_address_for_order_delivery"):Salla.lang.get("blocks.home.how_prefer_to_receive_order")),e("p",{class:"s-bullet-delivery-subtitle"},"address"===this.activeTab?Salla.lang.get("blocks.home.products_available_for_delivery_shown_while_shopping"):Salla.lang.get("blocks.home.products_available_for_delivery_or_pickup_shown_while_shopping"))),this.renderTabs(),this.showCartWillBeClearedBanner&&this.renderAlert(Salla.lang.get("blocks.scope.empty_cart_warning")),this.allocationOutOfCoverageMessage&&this.renderAllocationOutOfCoverageAlert(),s,!t&&this.renderFooter())}handleAfterAddToCart(){if("after_add_to_cart"!==this.openingType)return;const t=this.shouldPromptIncompleteIntentThisSession();this.hasBeenShownThisSession()&&!t||this.modal?.hasAttribute?.("visible")||(t&&this.markIncompleteIntentPrompted(),this.open())}overrideScopeSwitchUI(){const t=this.getStoredIntent(),s=document.querySelector('[onclick*="scopes"]');if(!s)return;if(!t||"address"!==t.type&&"branch"!==t.type)return s.style.display="none",void(s.onclick=()=>this.open());const e=(t,s)=>t&&t.length>s?`${t.slice(0,s)}...`:t??"",i="branch"===t.type?`${Salla.lang.get("mobile_app.strings.pickup")} ${Salla.lang.get("common.elements.from")} ${e(t.branch_details?.name,20)}`:`${Salla.lang.get("mobile_app.strings.delivery")} ${Salla.lang.get("common.elements.to")} ${e(t.address_details?.city?.name,10)}`;s.style.display="inline-flex",s.onclick=()=>this.open();const l=s.querySelector('span:not([class*="sicon"]):not([class*="icon"])');if(l)l.textContent=i;else{const t=Array.from(s.childNodes).find((t=>t.nodeType===Node.TEXT_NODE&&t.textContent?.trim()));t&&(t.textContent=` ${i}`)}}async componentWillLoad(){await Salla.onReady();try{this.overrideScopeSwitchUI(),this.cartSubmittingHandler=async()=>{this.pendingCartSubmitPromise?await this.pendingCartSubmitPromise:this.hasCompleteIntentForLoggedInUser()||(this.cartSubmitConfirmationPending=!0,this.pendingCartSubmitPromise=new Promise((t=>{if(this.pendingCartSubmitResolver=t,this.isGuestUser())return Salla.auth.setCanRedirect(!1),void Salla.event.dispatch("login::open",{withoutReload:!0,source:"cart-submit"});this.open()})),await this.pendingCartSubmitPromise)},Salla.cart.event.onSubmitting(this.cartSubmittingHandler)}catch(t){console.warn("SallaBulletDelivery: overrideScopeSwitchUI failed",t)}Salla.event.on("bullet-delivery::open",this.bulletDeliveryOpenHandler),this.closeHandler=this.close.bind(this),Salla.event.on("bullet-delivery::close",this.closeHandler),this.isRTL=Salla.config.get("theme.is_rtl"),this.authLoggedInHandler=()=>{if(this.cartSubmitConfirmationPending)return Salla.event.dispatch("login::close"),this.hasCompleteIntentForLoggedInUser()?void this.resolvePendingCartSubmit():void(this.modal?.hasAttribute?.("visible")||this.open());this.hasIncompleteUserAddressIntent()&&(this.modal?.hasAttribute?.("visible")||this.open())},Salla.event.on("auth::logged.in",this.authLoggedInHandler),this.authLoggedOutHandler=()=>{this.clearBulletDeliveryStoredData()},Salla.event.on("auth::logged.out",this.authLoggedOutHandler),this.loginClosedHandler=()=>{this.cartSubmitConfirmationPending&&this.isGuestUser()&&(this.hasCompleteIntentForLoggedInUser()||this.resolvePendingCartSubmit())},Salla.event.on("salla-login::closed",this.loginClosedHandler),this.cartItemAddedHandler=()=>this.handleAfterAddToCart(),"function"==typeof Salla.cart?.event?.onItemAdded?(this.useCartEventApi=!0,Salla.cart.event.onItemAdded(this.cartItemAddedHandler)):Salla.event.on(this.cartItemAddedEvent,this.cartItemAddedHandler)}render(){return e(i,{key:"cf0925eb55a712125e446547e211224815a00efe",class:"s-bullet-delivery"},e("salla-modal",{key:"5f9a14196b4f15cf6a6ed738253cb1e0f52d6dee",ref:t=>{this.modal=t},isClosable:!this.isRequired&&!this.shouldForceNonClosable(),class:"s-bullet-delivery-modal",isLoading:this.loading,width:"sm"},this.loading?this.renderSkeleton():e("div",{class:"s-bullet-delivery-inner"},"main"===this.viewMode&&this.renderMainView(),"add-address"===this.viewMode&&this.renderAddAddressForm())))}componentDidLoad(){if(this.componentReady=!0,this.pendingOpen)return this.pendingOpen=!1,void this.open();switch(this.openingType){case"first_visit":this.hasBeenShownThisSession()?this.shouldPromptIncompleteIntentThisSession()&&(this.markIncompleteIntentPrompted(),this.open()):this.open();break;case"on_cart_click":Salla.url.is_page("cart")&&(!0===this.getShownStorage().get(this.sessionShownKey)?this.shouldPromptIncompleteIntentThisSession()&&(this.markIncompleteIntentPrompted(),this.open()):this.open())}const t=this.createCartViewElement();t&&"function"==typeof salla?.hooks?.mount&&Salla.hooks.mount("cart:items.start",t).catch((()=>{}))}disconnectedCallback(){this.componentReady=!1,Salla.event.off("bullet-delivery::open",this.bulletDeliveryOpenHandler),this.closeHandler&&(Salla.event.off("bullet-delivery::close",this.closeHandler),this.closeHandler=null),this.cartItemAddedHandler&&(this.useCartEventApi&&"function"==typeof Salla.cart?.event?.offItemAdded?Salla.cart.event.offItemAdded(this.cartItemAddedHandler):Salla.event.off(this.cartItemAddedEvent,this.cartItemAddedHandler),this.cartItemAddedHandler=null),this.cartSubmittingHandler&&("function"==typeof Salla.cart?.event?.offSubmitting?Salla.cart.event.offSubmitting(this.cartSubmittingHandler):Salla.event.off("cart::submitting",this.cartSubmittingHandler),this.cartSubmittingHandler=null),this.authLoggedInHandler&&(Salla.event.off("auth::logged.in",this.authLoggedInHandler),this.authLoggedInHandler=null),this.authLoggedOutHandler&&(Salla.event.off("auth::logged.out",this.authLoggedOutHandler),this.authLoggedOutHandler=null),this.loginClosedHandler&&(Salla.event.off("salla-login::closed",this.loginClosedHandler),this.loginClosedHandler=null)}};N.INITIAL_ADDRESS_FORM={country_id:0,is_default:!1,city_id:void 0,district_id:void 0,street:void 0,building_number:void 0,additional_number:void 0,postal_code:void 0,description:void 0},N.style="@supports (interpolate-size: allow-keywords) and (block-size: calc-size(auto, size)) {\n .s-bullet-delivery .s-bullet-delivery-modal .s-modal-body, .s-bullet-delivery-inner {\n @apply [interpolate-size:allow-keywords];\n }\n .s-bullet-delivery .s-bullet-delivery-modal .s-modal-body {\n @apply [overflow:clip] [transition:block-size_500ms_ease];\n }\n .s-bullet-delivery-inner {\n @apply [overflow:clip] [transition:block-size_500ms_ease];\n block-size: calc-size(auto, size);\n }\n}\n\n@keyframes s-bullet-delivery-fade-in {\n from {\n opacity: 0;\n transform: translateY(6px);\n }\n to {\n opacity: 1;\n transform: translateY(0);\n }\n}";export{N as salla_bullet_delivery}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * Crafted with ❤ by Salla
3
3
  */
4
- import{r as s,h as i,H as e,a as t}from"./p-BYCfehfD.js";const l=class{constructor(i){s(this,i),this.cities=[],this.filteredCities=[],this.selectedCity=null,this.deliveryMessage=null,this.isLoadingCities=!1,this.isLoadingPromises=!1,this.isDropdownOpen=!1,this.searchQuery="",this.hasError=!1,this.errorMessage="",this.labels={deliveryTo:"توصيل إلى",pickupFromBranch:"الاستلام من فرع",searchPlaceholder:"بحث...",noResults:"لا توجد نتائج",selectCity:"اختر المدينة"},this.canRender=!1,this.requiresShipping=!1,this.productId=void 0,this.onClickOutside=s=>{this.host.contains(s.target)||(this.isDropdownOpen=!1,window.removeEventListener("click",this.onClickOutside))}}setLabels(){this.labels={deliveryTo:salla.lang.getWithDefault("pages.products.promise_deliver_to","توصيل إلى"),pickupFromBranch:salla.lang.getWithDefault("pages.products.promise_pickup_from_branch","الاستلام من فرع"),searchPlaceholder:salla.lang.getWithDefault("blocks.header.search_placeholder","بحث..."),noResults:salla.lang.getWithDefault("common.elements.no_options","لا توجد نتائج"),selectCity:salla.lang.getWithDefault("common.elements.select_city","اختر المدينة")}}logger(s,i){localStorage.getItem("salla-delivery-promise-debug")&&(i?console.log(s,i):console.log(s))}async componentDidLoad(){if(await salla.onReady(),await salla.lang.onLoaded(),this.setLabels(),this.requiresShipping=salla.url.is_page("product.single")&&salla.config.get("store.features",[]).includes("delivery-promises"),!this.requiresShipping)return this.canRender=!1,void this.logger("not requiresShipping",{is_product_single:salla.url.is_page("product.single"),includesDeliveryPromises:salla.config.get("store.features",[]).includes("delivery-promises")});this.logger("requiresShipping",this.requiresShipping),this.productId=salla.config.get("page.id"),this.logger("productId",this.productId),await this.fetchCities()}async fetchCities(){this.logger("start startfetchCities"),this.isLoadingCities=!0,this.hasError=!1;try{const s=await salla.api.request(salla.url.api(`products/${this.productId}/delivery-promises/cities`));if(s.success&&Array.isArray(s.data)&&s.data.length>0){this.logger("fetchCities success",{cities:s.data}),this.cities=this.sortCities(s.data),this.filteredCities=[...this.cities];let i=this.cities.find((s=>s.is_selected));i?(this.logger("selectedCity",i),this.selectedCity=i,await this.fetchDeliveryMessage(i.id)):this.logger("no selectedCity from API response"),this.canRender=!0}else this.logger("no data returned from fetchCities",{response:s}),this.canRender=!1}catch(s){this.logger("fetchCities error",{error:s.message}),this.hasError=!0,this.errorMessage=s.message||"Failed to load cities",this.canRender=!1}finally{this.isLoadingCities=!1}}async fetchDeliveryMessage(s){this.logger("start fetchDeliveryMessage",{cityId:s}),this.isLoadingPromises=!0,this.hasError=!1,this.deliveryMessage=null;try{const i=await salla.api.withoutNotifier((()=>salla.api.request(salla.url.api(`products/${this.productId}/delivery-promises?city_id=${s}`))));if(i.success&&i.data?.message){const s=i.data.message.trim();this.logger("fetchDeliveryMessage success",{message:s}),this.deliveryMessage=s||null}else this.logger("deliveryMessage not valid",{response:i})}catch(s){this.logger("fetchDeliveryMessage error",{error:s.message}),this.hasError=!0,this.errorMessage=s.message||"Failed to load delivery message"}finally{this.isLoadingPromises=!1}}toggleDropdown(s){s?.stopPropagation(),this.isDropdownOpen=!this.isDropdownOpen,this.isDropdownOpen?(window.addEventListener("click",this.onClickOutside),this.searchInputRef&&setTimeout((()=>this.searchInputRef.focus()),100)):window.removeEventListener("click",this.onClickOutside)}disconnectedCallback(){window.removeEventListener("click",this.onClickOutside)}sortCities(s){return[...s].sort(((s,i)=>-1===s.id?1:-1===i.id?-1:0))}handleSearch(s){const i=s.target.value.toLowerCase();this.searchQuery=i,this.filteredCities=i.length>0?this.cities.filter((s=>s.name.toLowerCase()?.includes(i)||(s.name_en||"").toLowerCase()?.includes(i))):[...this.cities]}async selectCity(s){this.logger("selectCity",{city:s}),this.selectedCity=s,this.isDropdownOpen=!1,window.removeEventListener("click",this.onClickOutside),this.searchQuery="",this.filteredCities=[...this.cities],await this.fetchDeliveryMessage(s.id)}renderDropdown(){return i("div",{class:"s-delivery-promise-dropdown"},i("div",{class:"s-delivery-promise-dropdown-search"},i("i",{class:"sicon-search"}),i("input",{type:"text",placeholder:this.labels.searchPlaceholder,value:this.searchQuery,onInput:s=>this.handleSearch(s),ref:s=>this.searchInputRef=s})),i("div",{class:"s-delivery-promise-dropdown-list"},0===this.filteredCities.length?i("div",{class:"s-delivery-promise-dropdown-empty"},this.labels.noResults):this.filteredCities.map((s=>i("div",{key:s.id,class:"s-delivery-promise-dropdown-item "+(this.selectedCity?.id===s.id?"selected":""),onClick:()=>this.selectCity(s)},i("span",{class:"s-delivery-promise-city-name"},s.name),this.selectedCity?.id===s.id&&i("i",{class:"sicon-check"}))))))}renderInitialLoadingSkeleton(){return i(e,{class:"s-delivery-promise-wrapper s-delivery-promise-skeleton"},i("div",{class:"s-delivery-promise-container"},i("div",{class:"s-delivery-promise-header s-delivery-promise-header-skeleton"},i("div",{class:"s-delivery-promise-location"},i("salla-skeleton",{height:"14px",width:"180px"})),i("salla-skeleton",{height:"18px",width:"18px"})),i("div",{class:"s-delivery-promise-loading"},i("salla-skeleton",{height:"20px",width:"80%"}))))}renderDeliveryMessage(){return this.isLoadingPromises?i("div",{class:"s-delivery-promise-loading"},i("salla-skeleton",{height:"20px",width:"80%"})):this.deliveryMessage?i("div",{class:"s-delivery-promise-message"},this.deliveryMessage):null}render(){return this.requiresShipping?this.isLoadingCities?this.renderInitialLoadingSkeleton():this.canRender&&0!==this.cities.length?i(e,{class:"s-delivery-promise-wrapper"},i("div",{class:"s-delivery-promise-container"},i("div",{class:"s-delivery-promise-header",onClick:s=>this.toggleDropdown(s)},i("div",{class:"s-delivery-promise-location"},i("span",{class:"s-delivery-promise-title"},this.labels.deliveryTo," ",this.selectedCity?.name||this.labels.selectCity)),i("i",{class:"sicon-keyboard_arrow_down s-delivery-promise-arrow "+(this.isDropdownOpen?"open":"")})),this.hasError&&i("div",{class:"s-delivery-promise-error"},this.errorMessage),this.isDropdownOpen&&this.renderDropdown(),!this.hasError&&this.renderDeliveryMessage())):null:null}get host(){return t(this)}};export{l as salla_delivery_promise}
4
+ import{r as s,h as i,H as e,a as t}from"./p-aDXaoBqI.js";const l=class{constructor(i){s(this,i),this.cities=[],this.filteredCities=[],this.selectedCity=null,this.deliveryMessage=null,this.isLoadingCities=!1,this.isLoadingPromises=!1,this.isDropdownOpen=!1,this.searchQuery="",this.hasError=!1,this.errorMessage="",this.labels={deliveryTo:"توصيل إلى",pickupFromBranch:"الاستلام من فرع",searchPlaceholder:"بحث...",noResults:"لا توجد نتائج",selectCity:"اختر المدينة"},this.canRender=!1,this.requiresShipping=!1,this.productId=void 0,this.onClickOutside=s=>{this.host.contains(s.target)||(this.isDropdownOpen=!1,window.removeEventListener("click",this.onClickOutside))}}setLabels(){this.labels={deliveryTo:salla.lang.getWithDefault("pages.products.promise_deliver_to","توصيل إلى"),pickupFromBranch:salla.lang.getWithDefault("pages.products.promise_pickup_from_branch","الاستلام من فرع"),searchPlaceholder:salla.lang.getWithDefault("blocks.header.search_placeholder","بحث..."),noResults:salla.lang.getWithDefault("common.elements.no_options","لا توجد نتائج"),selectCity:salla.lang.getWithDefault("common.elements.select_city","اختر المدينة")}}logger(s,i){localStorage.getItem("salla-delivery-promise-debug")&&(i?console.log(s,i):console.log(s))}async componentDidLoad(){if(await salla.onReady(),await salla.lang.onLoaded(),this.setLabels(),this.requiresShipping=salla.url.is_page("product.single")&&salla.config.get("store.features",[]).includes("delivery-promises"),!this.requiresShipping)return this.canRender=!1,void this.logger("not requiresShipping",{is_product_single:salla.url.is_page("product.single"),includesDeliveryPromises:salla.config.get("store.features",[]).includes("delivery-promises")});this.logger("requiresShipping",this.requiresShipping),this.productId=salla.config.get("page.id"),this.logger("productId",this.productId),await this.fetchCities()}async fetchCities(){this.logger("start startfetchCities"),this.isLoadingCities=!0,this.hasError=!1;try{const s=await salla.api.request(salla.url.api(`products/${this.productId}/delivery-promises/cities`));if(s.success&&Array.isArray(s.data)&&s.data.length>0){this.logger("fetchCities success",{cities:s.data}),this.cities=this.sortCities(s.data),this.filteredCities=[...this.cities];let i=this.cities.find((s=>s.is_selected));i?(this.logger("selectedCity",i),this.selectedCity=i,await this.fetchDeliveryMessage(i.id)):this.logger("no selectedCity from API response"),this.canRender=!0}else this.logger("no data returned from fetchCities",{response:s}),this.canRender=!1}catch(s){this.logger("fetchCities error",{error:s.message}),this.hasError=!0,this.errorMessage=s.message||"Failed to load cities",this.canRender=!1}finally{this.isLoadingCities=!1}}async fetchDeliveryMessage(s){this.logger("start fetchDeliveryMessage",{cityId:s}),this.isLoadingPromises=!0,this.hasError=!1,this.deliveryMessage=null;try{const i=await salla.api.withoutNotifier((()=>salla.api.request(salla.url.api(`products/${this.productId}/delivery-promises?city_id=${s}`))));if(i.success&&i.data?.message){const s=i.data.message.trim();this.logger("fetchDeliveryMessage success",{message:s}),this.deliveryMessage=s||null}else this.logger("deliveryMessage not valid",{response:i})}catch(s){this.logger("fetchDeliveryMessage error",{error:s.message}),this.hasError=!0,this.errorMessage=s.message||"Failed to load delivery message"}finally{this.isLoadingPromises=!1}}toggleDropdown(s){s?.stopPropagation(),this.isDropdownOpen=!this.isDropdownOpen,this.isDropdownOpen?(window.addEventListener("click",this.onClickOutside),this.searchInputRef&&setTimeout((()=>this.searchInputRef.focus()),100)):window.removeEventListener("click",this.onClickOutside)}disconnectedCallback(){window.removeEventListener("click",this.onClickOutside)}sortCities(s){return[...s].sort(((s,i)=>-1===s.id?1:-1===i.id?-1:0))}handleSearch(s){const i=s.target.value.toLowerCase();this.searchQuery=i,this.filteredCities=i.length>0?this.cities.filter((s=>s.name.toLowerCase()?.includes(i)||(s.name_en||"").toLowerCase()?.includes(i))):[...this.cities]}async selectCity(s){this.logger("selectCity",{city:s}),this.selectedCity=s,this.isDropdownOpen=!1,window.removeEventListener("click",this.onClickOutside),this.searchQuery="",this.filteredCities=[...this.cities],await this.fetchDeliveryMessage(s.id)}renderDropdown(){return i("div",{class:"s-delivery-promise-dropdown"},i("div",{class:"s-delivery-promise-dropdown-search"},i("i",{class:"sicon-search"}),i("input",{type:"text",placeholder:this.labels.searchPlaceholder,value:this.searchQuery,onInput:s=>this.handleSearch(s),ref:s=>this.searchInputRef=s})),i("div",{class:"s-delivery-promise-dropdown-list"},0===this.filteredCities.length?i("div",{class:"s-delivery-promise-dropdown-empty"},this.labels.noResults):this.filteredCities.map((s=>i("div",{key:s.id,class:"s-delivery-promise-dropdown-item "+(this.selectedCity?.id===s.id?"selected":""),onClick:()=>this.selectCity(s)},i("span",{class:"s-delivery-promise-city-name"},s.name),this.selectedCity?.id===s.id&&i("i",{class:"sicon-check"}))))))}renderInitialLoadingSkeleton(){return i(e,{class:"s-delivery-promise-wrapper s-delivery-promise-skeleton"},i("div",{class:"s-delivery-promise-container"},i("div",{class:"s-delivery-promise-header s-delivery-promise-header-skeleton"},i("div",{class:"s-delivery-promise-location"},i("salla-skeleton",{height:"14px",width:"180px"})),i("salla-skeleton",{height:"18px",width:"18px"})),i("div",{class:"s-delivery-promise-loading"},i("salla-skeleton",{height:"20px",width:"80%"}))))}renderDeliveryMessage(){return this.isLoadingPromises?i("div",{class:"s-delivery-promise-loading"},i("salla-skeleton",{height:"20px",width:"80%"})):this.deliveryMessage?i("div",{class:"s-delivery-promise-message"},this.deliveryMessage):null}render(){return this.requiresShipping?this.isLoadingCities?this.renderInitialLoadingSkeleton():this.canRender&&0!==this.cities.length?i(e,{class:"s-delivery-promise-wrapper"},i("div",{class:"s-delivery-promise-container"},i("div",{class:"s-delivery-promise-header",onClick:s=>this.toggleDropdown(s)},i("div",{class:"s-delivery-promise-location"},i("span",{class:"s-delivery-promise-title"},this.labels.deliveryTo," ",this.selectedCity?.name||this.labels.selectCity)),i("i",{class:"sicon-keyboard_arrow_down s-delivery-promise-arrow "+(this.isDropdownOpen?"open":"")})),this.hasError&&i("div",{class:"s-delivery-promise-error"},this.errorMessage),this.isDropdownOpen&&this.renderDropdown(),!this.hasError&&this.renderDeliveryMessage())):null:null}get host(){return t(this)}};export{l as salla_delivery_promise}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * Crafted with ❤ by Salla
3
3
  */
4
- import{r as a,h as s,H as o,a as t}from"./p-BYCfehfD.js";const n=class{constructor(s){a(this,s)}async mount(a){this.host.before(a)}render(){return s(o,{key:"618467f6911198a5cbf4270694544575e585af27"})}async componentDidLoad(){await Salla.hooks.registerComponent("salla-hook",this)}get host(){return t(this)}};n.style=":host {\n all: unset;\n display: none; /* marker only */\n }";export{n as salla_hook}
4
+ import{r as a,h as s,H as o,a as t}from"./p-aDXaoBqI.js";const n=class{constructor(s){a(this,s)}async mount(a){this.host.before(a)}render(){return s(o,{key:"2aa8c92dee7e62785fa0f45d967912ae8d6f96c0"})}async componentDidLoad(){await Salla.hooks.registerComponent("salla-hook",this)}get host(){return t(this)}};n.style=":host {\n all: unset;\n display: none; /* marker only */\n }";export{n as salla_hook}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * Crafted with ❤ by Salla
3
3
  */
4
- import{r as s,h as t}from"./p-BYCfehfD.js";import{i as a}from"./p-BsXh13x8.js";const e=class{constructor(t){s(this,t),this.codeCopied=null,this.noItemFound=!0,this.order_items=[],this.isDigitalCard=s=>"codes"===s.product.type,this.isDigitalProduct=s=>"digital"===s.product.type}async componentWillLoad(){return salla.lang.onLoaded((()=>{this.codes_text=salla.lang.get("pages.thank_you.codes"),this.copy_text=salla.lang.get("common.elements.copy"),this.files_text=salla.lang.get("pages.thank_you.files"),this.download_text=salla.lang.get("pages.thank_you.download")})),await this.getOrderItems()}copyToClipboardHandler(s){if(navigator&&"clipboard"in navigator)try{navigator.clipboard.writeText(s).then((()=>{this.codeCopied=s,this.copyCodeButtonTimeout=setTimeout((()=>{this.codeCopied=null}),3e3)}))}catch(s){salla.loggers.error("copy functionality is not supported by the browser")}}async getOrderItems(){const s=this.orderId||salla.config.get("page.id"),t="Failed to fetch order items";if(!s)throw salla.logger.error(t),new Error(t);try{const{data:{items:t=[]}}=await salla.api.request(`orders/${s}`);t.some((s=>this.isDigitalCard(s)||this.isDigitalProduct(s)))&&(this.order_items=t,this.noItemFound=!1)}catch(s){salla.logger.error(t)}}disconnectedCallback(){this.copyCodeButtonTimeout&&clearTimeout(this.copyCodeButtonTimeout)}render(){return t("ul",{key:"bb16ccab71851d8853fae1b08b66c9c3bb590766",class:"s-order-summary-wrapper"},this.noItemFound?t("salla-placeholder",{alignment:"center"},t("span",{slot:"title"})):this.order_items.map((s=>this.isDigitalCard(s)?t("li",{key:s.product.id,class:"s-order-summary-item"},t("h2",{class:"s-order-summary-item-title"},this.codes_text," (",s.name,")"),s.codes.map((s=>t("div",{key:s.code,class:"s-order-summary-code-item-wrapper"},t("p",null,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>debit-card-back</title>\n<path d="M30 28h-28c-1.105 0-2-0.895-2-2v0-18c0-1.105 0.895-2 2-2v0h28c1.105 0 2 0.895 2 2v0 18c0 1.105-0.895 2-2 2v0zM30 26v0zM2 8v18h28v-18zM31 14h-30c-0.552 0-1-0.448-1-1s0.448-1 1-1v0h30c0.552 0 1 0.448 1 1s-0.448 1-1 1v0zM11 22h-6c-0.552 0-1-0.448-1-1s0.448-1 1-1v0h6c0.552 0 1 0.448 1 1s-0.448 1-1 1v0zM24 24c-2.209 0-4-1.791-4-4s1.791-4 4-4c2.209 0 4 1.791 4 4v0c0 2.209-1.791 4-4 4v0zM24 18c-1.105 0-2 0.895-2 2s0.895 2 2 2c1.105 0 2-0.895 2-2v0c0-1.105-0.895-2-2-2v0zM20 24c-2.209 0-4-1.791-4-4s1.791-4 4-4v0c0.002 0 0.005 0 0.007 0 1.032 0 1.972 0.398 2.673 1.048l-0.003-0.002c0.191 0.183 0.311 0.439 0.311 0.724 0 0.552-0.448 1-1 1-0.257 0-0.492-0.097-0.669-0.257l0.001 0.001c-0.345-0.319-0.807-0.514-1.315-0.514-0.002 0-0.003 0-0.005 0h0c-1.105 0-2 0.895-2 2s0.895 2 2 2v0c0.002 0 0.004 0 0.007 0 0.508 0 0.971-0.195 1.317-0.515l-0.001 0.001c0.179-0.171 0.422-0.276 0.689-0.276 0.552 0 1 0.448 1 1 0 0.295-0.128 0.56-0.331 0.743l-0.001 0.001c-0.699 0.648-1.638 1.046-2.671 1.046-0.003 0-0.007 0-0.010 0h0.001z"></path>\n</svg>\n'}),t("span",null,s.code)),t("salla-button",{class:"s-order-summary-item-copy-button "+(this.codeCopied===s.code?"copied":""),onClick:()=>this.copyToClipboardHandler(s.code),shape:"link"},t("span",{innerHTML:this.codeCopied===s.code?a:'\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>swap-stroke</title>\n<path d="M6.667 18.667h-2.667c-0.736 0-1.333-0.597-1.333-1.333v-13.333c0-0.736 0.597-1.333 1.333-1.333h13.333c0.736 0 1.333 0.597 1.333 1.333v2.667c0 0.737 0.596 1.333 1.333 1.333s1.333-0.596 1.333-1.333v-2.667c0-2.205-1.795-4-4-4h-13.333c-2.205 0-4 1.795-4 4v13.333c0 2.205 1.795 4 4 4h2.667c0.737 0 1.333-0.596 1.333-1.333s-0.596-1.333-1.333-1.333zM28 10.667h-13.333c-2.205 0-4 1.795-4 4v13.333c0 2.205 1.795 4 4 4h13.333c2.205 0 4-1.795 4-4v-13.333c0-2.205-1.795-4-4-4zM29.333 28c0 0.736-0.597 1.333-1.333 1.333h-13.333c-0.736 0-1.333-0.597-1.333-1.333v-13.333c0-0.736 0.597-1.333 1.333-1.333h13.333c0.736 0 1.333 0.597 1.333 1.333z"></path>\n</svg>\n'}),t("span",null,this.copy_text)))))):this.isDigitalProduct(s)?t("li",{key:s.product.id,class:"s-order-summary-item"},t("h2",{class:"s-order-summary-item-title"},this.files_text," (",s.name,")"),t("ul",null,s.files.map((s=>t("li",{class:"s-order-summary-digital-item-wrapper"},t("div",null,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>file-archive</title>\n<path d="M17.333 16h-5.333c-0.737 0-1.333 0.597-1.333 1.333v2.667c0 2.205 1.795 4 4 4s4-1.795 4-4v-2.667c0-0.736-0.596-1.333-1.333-1.333zM16 20c0 0.735-0.597 1.333-1.333 1.333s-1.333-0.599-1.333-1.333v-1.333h2.667zM17.333 12h-5.333c-0.737 0-1.333 0.597-1.333 1.333s0.596 1.333 1.333 1.333h5.333c0.737 0 1.333-0.597 1.333-1.333s-0.596-1.333-1.333-1.333zM28.943 8.391l-8-8c-0.249-0.251-0.588-0.391-0.943-0.391h-13.333c-2.205 0-4 1.795-4 4v24c0 2.205 1.795 4 4 4h18.667c2.205 0 4-1.795 4-4v-18.667c0-0.353-0.14-0.693-0.391-0.943zM26.667 28c0 0.735-0.597 1.333-1.333 1.333h-18.667c-0.736 0-1.333-0.599-1.333-1.333v-24c0-0.735 0.597-1.333 1.333-1.333h12.781l7.219 7.219zM17.333 8h-5.333c-0.737 0-1.333 0.597-1.333 1.333s0.596 1.333 1.333 1.333h5.333c0.737 0 1.333-0.597 1.333-1.333s-0.596-1.333-1.333-1.333zM17.333 4h-5.333c-0.737 0-1.333 0.597-1.333 1.333s0.596 1.333 1.333 1.333h5.333c0.737 0 1.333-0.597 1.333-1.333s-0.596-1.333-1.333-1.333z"></path>\n</svg>\n'}),t("span",null,s.name)),t("a",{href:s.url,target:"_blank",class:"s-order-summary-item-download"},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>download</title>\n<path d="M15.056 20.941c0.123 0.124 0.271 0.221 0.435 0.289 0.163 0.067 0.336 0.103 0.509 0.103s0.347-0.036 0.509-0.103c0.164-0.068 0.311-0.165 0.435-0.289l5.332-5.332c0.521-0.521 0.521-1.364 0-1.885s-1.364-0.521-1.885 0l-3.057 3.057v-12.781c0-0.737-0.597-1.333-1.333-1.333s-1.333 0.596-1.333 1.333v12.781l-3.057-3.057c-0.521-0.521-1.364-0.521-1.885 0s-0.521 1.364 0 1.885zM25.333 26.667h-18.667c-0.736 0-1.333 0.596-1.333 1.333s0.597 1.333 1.333 1.333h18.667c0.736 0 1.333-0.596 1.333-1.333s-0.597-1.333-1.333-1.333z"></path>\n</svg>\n'}),t("span",null,this.download_text))))))):null)))}};e.style=":host{display:block}";export{e as salla_order_summary}
4
+ import{r as s,h as t}from"./p-aDXaoBqI.js";import{S as a}from"./p-BZp0rKEO.js";const e=class{constructor(t){s(this,t),this.codeCopied=null,this.noItemFound=!0,this.order_items=[],this.isDigitalCard=s=>"codes"===s.product.type,this.isDigitalProduct=s=>"digital"===s.product.type}async componentWillLoad(){return salla.lang.onLoaded((()=>{this.codes_text=salla.lang.get("pages.thank_you.codes"),this.copy_text=salla.lang.get("common.elements.copy"),this.files_text=salla.lang.get("pages.thank_you.files"),this.download_text=salla.lang.get("pages.thank_you.download")})),await this.getOrderItems()}copyToClipboardHandler(s){if(navigator&&"clipboard"in navigator)try{navigator.clipboard.writeText(s).then((()=>{this.codeCopied=s,this.copyCodeButtonTimeout=setTimeout((()=>{this.codeCopied=null}),3e3)}))}catch(s){salla.loggers.error("copy functionality is not supported by the browser")}}async getOrderItems(){const s=this.orderId||salla.config.get("page.id"),t="Failed to fetch order items";if(!s)throw salla.logger.error(t),new Error(t);try{const{data:{items:t=[]}}=await salla.api.request(`orders/${s}`);t.some((s=>this.isDigitalCard(s)||this.isDigitalProduct(s)))&&(this.order_items=t,this.noItemFound=!1)}catch(s){salla.logger.error(t)}}disconnectedCallback(){this.copyCodeButtonTimeout&&clearTimeout(this.copyCodeButtonTimeout)}render(){return t("ul",{key:"bb8c8e2c3a44f0922012789efc9a73d71fd213d5",class:"s-order-summary-wrapper"},this.noItemFound?t("salla-placeholder",{alignment:"center"},t("span",{slot:"title"})):this.order_items.map((s=>this.isDigitalCard(s)?t("li",{key:s.product.id,class:"s-order-summary-item"},t("h2",{class:"s-order-summary-item-title"},this.codes_text," (",s.name,")"),s.codes.map((s=>t("div",{key:s.code,class:"s-order-summary-code-item-wrapper"},t("p",null,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>debit-card-back</title>\n<path d="M30 28h-28c-1.105 0-2-0.895-2-2v0-18c0-1.105 0.895-2 2-2v0h28c1.105 0 2 0.895 2 2v0 18c0 1.105-0.895 2-2 2v0zM30 26v0zM2 8v18h28v-18zM31 14h-30c-0.552 0-1-0.448-1-1s0.448-1 1-1v0h30c0.552 0 1 0.448 1 1s-0.448 1-1 1v0zM11 22h-6c-0.552 0-1-0.448-1-1s0.448-1 1-1v0h6c0.552 0 1 0.448 1 1s-0.448 1-1 1v0zM24 24c-2.209 0-4-1.791-4-4s1.791-4 4-4c2.209 0 4 1.791 4 4v0c0 2.209-1.791 4-4 4v0zM24 18c-1.105 0-2 0.895-2 2s0.895 2 2 2c1.105 0 2-0.895 2-2v0c0-1.105-0.895-2-2-2v0zM20 24c-2.209 0-4-1.791-4-4s1.791-4 4-4v0c0.002 0 0.005 0 0.007 0 1.032 0 1.972 0.398 2.673 1.048l-0.003-0.002c0.191 0.183 0.311 0.439 0.311 0.724 0 0.552-0.448 1-1 1-0.257 0-0.492-0.097-0.669-0.257l0.001 0.001c-0.345-0.319-0.807-0.514-1.315-0.514-0.002 0-0.003 0-0.005 0h0c-1.105 0-2 0.895-2 2s0.895 2 2 2v0c0.002 0 0.004 0 0.007 0 0.508 0 0.971-0.195 1.317-0.515l-0.001 0.001c0.179-0.171 0.422-0.276 0.689-0.276 0.552 0 1 0.448 1 1 0 0.295-0.128 0.56-0.331 0.743l-0.001 0.001c-0.699 0.648-1.638 1.046-2.671 1.046-0.003 0-0.007 0-0.010 0h0.001z"></path>\n</svg>\n'}),t("span",null,s.code)),t("salla-button",{class:"s-order-summary-item-copy-button "+(this.codeCopied===s.code?"copied":""),onClick:()=>this.copyToClipboardHandler(s.code),shape:"link"},t("span",{innerHTML:this.codeCopied===s.code?a:'\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>swap-stroke</title>\n<path d="M6.667 18.667h-2.667c-0.736 0-1.333-0.597-1.333-1.333v-13.333c0-0.736 0.597-1.333 1.333-1.333h13.333c0.736 0 1.333 0.597 1.333 1.333v2.667c0 0.737 0.596 1.333 1.333 1.333s1.333-0.596 1.333-1.333v-2.667c0-2.205-1.795-4-4-4h-13.333c-2.205 0-4 1.795-4 4v13.333c0 2.205 1.795 4 4 4h2.667c0.737 0 1.333-0.596 1.333-1.333s-0.596-1.333-1.333-1.333zM28 10.667h-13.333c-2.205 0-4 1.795-4 4v13.333c0 2.205 1.795 4 4 4h13.333c2.205 0 4-1.795 4-4v-13.333c0-2.205-1.795-4-4-4zM29.333 28c0 0.736-0.597 1.333-1.333 1.333h-13.333c-0.736 0-1.333-0.597-1.333-1.333v-13.333c0-0.736 0.597-1.333 1.333-1.333h13.333c0.736 0 1.333 0.597 1.333 1.333z"></path>\n</svg>\n'}),t("span",null,this.copy_text)))))):this.isDigitalProduct(s)?t("li",{key:s.product.id,class:"s-order-summary-item"},t("h2",{class:"s-order-summary-item-title"},this.files_text," (",s.name,")"),t("ul",null,s.files.map((s=>t("li",{class:"s-order-summary-digital-item-wrapper"},t("div",null,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>file-archive</title>\n<path d="M17.333 16h-5.333c-0.737 0-1.333 0.597-1.333 1.333v2.667c0 2.205 1.795 4 4 4s4-1.795 4-4v-2.667c0-0.736-0.596-1.333-1.333-1.333zM16 20c0 0.735-0.597 1.333-1.333 1.333s-1.333-0.599-1.333-1.333v-1.333h2.667zM17.333 12h-5.333c-0.737 0-1.333 0.597-1.333 1.333s0.596 1.333 1.333 1.333h5.333c0.737 0 1.333-0.597 1.333-1.333s-0.596-1.333-1.333-1.333zM28.943 8.391l-8-8c-0.249-0.251-0.588-0.391-0.943-0.391h-13.333c-2.205 0-4 1.795-4 4v24c0 2.205 1.795 4 4 4h18.667c2.205 0 4-1.795 4-4v-18.667c0-0.353-0.14-0.693-0.391-0.943zM26.667 28c0 0.735-0.597 1.333-1.333 1.333h-18.667c-0.736 0-1.333-0.599-1.333-1.333v-24c0-0.735 0.597-1.333 1.333-1.333h12.781l7.219 7.219zM17.333 8h-5.333c-0.737 0-1.333 0.597-1.333 1.333s0.596 1.333 1.333 1.333h5.333c0.737 0 1.333-0.597 1.333-1.333s-0.596-1.333-1.333-1.333zM17.333 4h-5.333c-0.737 0-1.333 0.597-1.333 1.333s0.596 1.333 1.333 1.333h5.333c0.737 0 1.333-0.597 1.333-1.333s-0.596-1.333-1.333-1.333z"></path>\n</svg>\n'}),t("span",null,s.name)),t("a",{href:s.url,target:"_blank",class:"s-order-summary-item-download"},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>download</title>\n<path d="M15.056 20.941c0.123 0.124 0.271 0.221 0.435 0.289 0.163 0.067 0.336 0.103 0.509 0.103s0.347-0.036 0.509-0.103c0.164-0.068 0.311-0.165 0.435-0.289l5.332-5.332c0.521-0.521 0.521-1.364 0-1.885s-1.364-0.521-1.885 0l-3.057 3.057v-12.781c0-0.737-0.597-1.333-1.333-1.333s-1.333 0.596-1.333 1.333v12.781l-3.057-3.057c-0.521-0.521-1.364-0.521-1.885 0s-0.521 1.364 0 1.885zM25.333 26.667h-18.667c-0.736 0-1.333 0.596-1.333 1.333s0.597 1.333 1.333 1.333h18.667c0.736 0 1.333-0.596 1.333-1.333s-0.597-1.333-1.333-1.333z"></path>\n</svg>\n'}),t("span",null,this.download_text))))))):null)))}};e.style=":host{display:block}";export{e as salla_order_summary}