@salla.sa/twilight-components 2.14.486 → 2.14.488

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 (353) hide show
  1. package/dist/cjs/{Helper-DvyEpCgx.js → Helper-B2B-kxAI.js} +7 -2
  2. package/dist/cjs/{filepond-BtDP9OW9.js → filepond-05NO31dc.js} +1 -1
  3. package/dist/cjs/{filepond-plugin-file-poster-CTf1Ej_n.js → filepond-plugin-file-poster-BSzyn1DL.js} +1 -1
  4. package/dist/cjs/{filepond-plugin-file-validate-size-_wVJpYXF.js → filepond-plugin-file-validate-size-DJKsosMa.js} +1 -1
  5. package/dist/cjs/{filepond-plugin-file-validate-type-DWoo5Lcs.js → filepond-plugin-file-validate-type-C0xLud1P.js} +1 -1
  6. package/dist/cjs/{filepond-plugin-image-edit-DBb_5aN9.js → filepond-plugin-image-edit-Dq1zXDYS.js} +1 -1
  7. package/dist/cjs/{filepond-plugin-image-exif-orientation-Nnwt-m9k.js → filepond-plugin-image-exif-orientation-B84Q7JSN.js} +1 -1
  8. package/dist/cjs/{filepond-plugin-image-preview-CjBwZm3E.js → filepond-plugin-image-preview-BaE9P79l.js} +1 -1
  9. package/dist/cjs/{functions-DkS9Jmao.js → functions-B-_Pnqnt.js} +1 -1
  10. package/dist/cjs/{index-C0yFagl6.js → index-BsvV4QQg.js} +1 -1
  11. package/dist/cjs/{index-C_WIlgE2.js → index-f6loD1zL.js} +10 -2
  12. package/dist/cjs/loader.cjs.js +2 -2
  13. package/dist/cjs/salla-accordion-body_2.cjs.entry.js +1 -1
  14. package/dist/cjs/salla-accordion_6.cjs.entry.js +4 -3
  15. package/dist/cjs/salla-add-product-button_5.cjs.entry.js +2 -2
  16. package/dist/cjs/salla-advertisement.cjs.entry.js +1 -1
  17. package/dist/cjs/salla-alert_2.cjs.entry.js +1 -1
  18. package/dist/cjs/salla-app-install-alert.cjs.entry.js +1 -1
  19. package/dist/cjs/salla-apps-icons.cjs.entry.js +1 -1
  20. package/dist/cjs/salla-badge.cjs.entry.js +1 -1
  21. package/dist/cjs/salla-booking-field_7.cjs.entry.js +11 -11
  22. package/dist/cjs/salla-bullet-delivery_2.cjs.entry.js +21 -13
  23. package/dist/cjs/salla-cart-coupons.cjs.entry.js +1 -1
  24. package/dist/cjs/salla-cart-item-offers_2.cjs.entry.js +1 -1
  25. package/dist/cjs/salla-cart-summary-card.cjs.entry.js +349 -0
  26. package/dist/cjs/salla-cashback-banner.cjs.entry.js +1 -1
  27. package/dist/cjs/salla-comment-form_8.cjs.entry.js +2 -2
  28. package/dist/cjs/salla-conditional-offer.cjs.entry.js +1 -1
  29. package/dist/cjs/salla-contacts.cjs.entry.js +1 -1
  30. package/dist/cjs/salla-cookies-bar.cjs.entry.js +1 -1
  31. package/dist/cjs/salla-count-down.cjs.entry.js +1 -1
  32. package/dist/cjs/salla-custom-fields.cjs.entry.js +1 -1
  33. package/dist/cjs/salla-delivery-promise.cjs.entry.js +1 -1
  34. package/dist/cjs/salla-edit-order-button.cjs.entry.js +1 -1
  35. package/dist/cjs/salla-filters-widget.cjs.entry.js +15 -8
  36. package/dist/cjs/salla-filters.cjs.entry.js +101 -13
  37. package/dist/cjs/salla-fulfillment-methods.cjs.entry.js +1 -1
  38. package/dist/cjs/salla-gifting.cjs.entry.js +1 -1
  39. package/dist/cjs/salla-hook.cjs.entry.js +1 -1
  40. package/dist/cjs/salla-infinite-scroll.cjs.entry.js +2 -2
  41. package/dist/cjs/salla-installment.cjs.entry.js +1 -1
  42. package/dist/cjs/salla-list-tile.cjs.entry.js +1 -1
  43. package/dist/cjs/salla-localization-modal.cjs.entry.js +1 -1
  44. package/dist/cjs/salla-login-modal.cjs.entry.js +1 -1
  45. package/dist/cjs/salla-loyalty-banner.cjs.entry.js +2 -2
  46. package/dist/cjs/salla-loyalty-hero_2.cjs.entry.js +2 -2
  47. package/dist/cjs/salla-loyalty-panel.cjs.entry.js +3 -3
  48. package/dist/cjs/salla-loyalty-points-banner.cjs.entry.js +1 -1
  49. package/dist/cjs/salla-loyalty-points-history.cjs.entry.js +1 -1
  50. package/dist/cjs/salla-loyalty-prize-item.cjs.entry.js +1 -1
  51. package/dist/cjs/salla-loyalty-program.cjs.entry.js +3 -3
  52. package/dist/cjs/salla-loyalty-reward.cjs.entry.js +2 -2
  53. package/dist/cjs/salla-loyalty.cjs.entry.js +1 -1
  54. package/dist/cjs/salla-maintenance-alert.cjs.entry.js +1 -1
  55. package/dist/cjs/salla-map_2.cjs.entry.js +1 -1
  56. package/dist/cjs/salla-menu.cjs.entry.js +1 -1
  57. package/dist/cjs/salla-metadata.cjs.entry.js +1 -1
  58. package/dist/cjs/salla-multiple-bundle-product-cart_2.cjs.entry.js +1 -1
  59. package/dist/cjs/salla-multiple-bundle-product-options-modal_2.cjs.entry.js +1 -1
  60. package/dist/cjs/salla-multiple-bundle-product.cjs.entry.js +1 -1
  61. package/dist/cjs/salla-next-order-coupon.cjs.entry.js +1 -1
  62. package/dist/cjs/salla-notification-item.cjs.entry.js +1 -1
  63. package/dist/cjs/salla-notifications.cjs.entry.js +2 -2
  64. package/dist/cjs/salla-offer-modal.cjs.entry.js +1 -1
  65. package/dist/cjs/salla-offer.cjs.entry.js +1 -1
  66. package/dist/cjs/salla-order-branch.cjs.entry.js +1 -1
  67. package/dist/cjs/salla-order-cancel.cjs.entry.js +296 -0
  68. package/dist/cjs/salla-order-details-multiple-bundle-product.cjs.entry.js +1 -1
  69. package/dist/cjs/salla-order-details-options.cjs.entry.js +1 -1
  70. package/dist/cjs/salla-order-details.cjs.entry.js +1 -1
  71. package/dist/cjs/salla-order-edit-item.cjs.entry.js +1 -1
  72. package/dist/cjs/salla-order-edit-product-card.cjs.entry.js +1 -1
  73. package/dist/cjs/salla-order-edit.cjs.entry.js +1 -1
  74. package/dist/cjs/salla-order-options-modal_3.cjs.entry.js +2 -2
  75. package/dist/cjs/salla-order-summary.cjs.entry.js +1 -1
  76. package/dist/cjs/salla-order-totals-card.cjs.entry.js +1 -1
  77. package/dist/cjs/salla-orders.cjs.entry.js +2 -2
  78. package/dist/cjs/salla-payments.cjs.entry.js +1 -1
  79. package/dist/cjs/salla-placeholder.cjs.entry.js +1 -1
  80. package/dist/cjs/salla-price-range.cjs.entry.js +1 -1
  81. package/dist/cjs/salla-product-card-embed.cjs.entry.js +1 -1
  82. package/dist/cjs/salla-product-size-guide.cjs.entry.js +1 -1
  83. package/dist/cjs/salla-products-list.cjs.entry.js +21 -9
  84. package/dist/cjs/salla-quick-order.cjs.entry.js +1 -1
  85. package/dist/cjs/salla-rating-modal.cjs.entry.js +2 -2
  86. package/dist/cjs/salla-reward-action_4.cjs.entry.js +3 -3
  87. package/dist/cjs/salla-scopes.cjs.entry.js +1 -1
  88. package/dist/cjs/salla-search.cjs.entry.js +2 -2
  89. package/dist/cjs/salla-skeleton.cjs.entry.js +1 -1
  90. package/dist/cjs/salla-slider.cjs.entry.js +1 -1
  91. package/dist/cjs/salla-social-share.cjs.entry.js +1 -1
  92. package/dist/cjs/salla-social.cjs.entry.js +1 -1
  93. package/dist/cjs/salla-tab-content_3.cjs.entry.js +1 -1
  94. package/dist/cjs/salla-tiered-offer.cjs.entry.js +1 -1
  95. package/dist/cjs/salla-tooltip.cjs.entry.js +1 -1
  96. package/dist/cjs/salla-trust-badges.cjs.entry.js +1 -1
  97. package/dist/cjs/salla-user-menu.cjs.entry.js +5 -2
  98. package/dist/cjs/salla-user-profile.cjs.entry.js +1 -1
  99. package/dist/cjs/salla-user-settings.cjs.entry.js +1 -1
  100. package/dist/cjs/salla-verify.cjs.entry.js +1 -1
  101. package/dist/cjs/salla-wallet.cjs.entry.js +1 -1
  102. package/dist/cjs/salla-wishlist-actions.cjs.entry.js +1 -1
  103. package/dist/cjs/{tracked-promise-TyxTPR6e.js → tracked-promise-We1h_qB4.js} +1 -1
  104. package/dist/cjs/twilight.cjs.js +2 -2
  105. package/dist/cjs/{vanilla-picker-DyJFw96R.js → vanilla-picker-Ck8OFt14.js} +1 -1
  106. package/dist/collection/Helpers/Helper.js +7 -2
  107. package/dist/collection/collection-manifest.json +2 -0
  108. package/dist/collection/components/salla-breadcrumb/salla-breadcrumb.js +2 -1
  109. package/dist/collection/components/salla-bullet-delivery/salla-bullet-delivery.js +20 -12
  110. package/dist/collection/components/salla-cart-summary-card/salla-cart-summary-card.js +401 -0
  111. package/dist/collection/components/salla-filters/salla-filters.css +5 -0
  112. package/dist/collection/components/salla-filters/salla-filters.js +101 -11
  113. package/dist/collection/components/salla-filters-widget/salla-filters-widget.js +13 -6
  114. package/dist/collection/components/salla-order-cancel/interfaces.js +1 -0
  115. package/dist/collection/components/salla-order-cancel/salla-order-cancel.css +17 -0
  116. package/dist/collection/components/salla-order-cancel/salla-order-cancel.js +366 -0
  117. package/dist/collection/components/salla-products-list/salla-products-list.js +19 -7
  118. package/dist/collection/components/salla-user-menu/salla-user-menu.js +4 -1
  119. package/dist/components/Helper.js +7 -2
  120. package/dist/components/index.js +2 -2
  121. package/dist/components/salla-breadcrumb.js +2 -1
  122. package/dist/components/salla-bullet-delivery.js +20 -12
  123. package/dist/components/salla-cart-summary-card.d.ts +11 -0
  124. package/dist/components/salla-cart-summary-card.js +404 -0
  125. package/dist/components/salla-filters-widget2.js +13 -6
  126. package/dist/components/salla-filters.js +101 -11
  127. package/dist/components/salla-order-cancel.d.ts +11 -0
  128. package/dist/components/salla-order-cancel.js +347 -0
  129. package/dist/components/salla-products-list2.js +19 -7
  130. package/dist/components/salla-user-menu.js +4 -1
  131. package/dist/esm/{Helper-CD8d-Brd.js → Helper-BQ9mvrt9.js} +7 -2
  132. package/dist/esm/{filepond-ZiatSU0Y.js → filepond-2lHD_yVt.js} +1 -1
  133. package/dist/esm/{filepond-plugin-file-poster-2WAWdRm2.js → filepond-plugin-file-poster-DIjVVIwh.js} +1 -1
  134. package/dist/esm/{filepond-plugin-file-validate-size-DhLjP7aF.js → filepond-plugin-file-validate-size-CfcICNJA.js} +1 -1
  135. package/dist/esm/{filepond-plugin-file-validate-type-HH8AZXAq.js → filepond-plugin-file-validate-type-DsvYMiJr.js} +1 -1
  136. package/dist/esm/{filepond-plugin-image-edit-BWBtBfk1.js → filepond-plugin-image-edit-B7K5Ib7q.js} +1 -1
  137. package/dist/esm/{filepond-plugin-image-exif-orientation-CQyPB3lV.js → filepond-plugin-image-exif-orientation-9iz6i-up.js} +1 -1
  138. package/dist/esm/{filepond-plugin-image-preview-D6MiVWr1.js → filepond-plugin-image-preview-C89IBH1s.js} +1 -1
  139. package/dist/esm/{functions-DflaFDbL.js → functions-CJdqLH4P.js} +1 -1
  140. package/dist/esm/{index-Co2lT5R8.js → index-D1YskPUH.js} +1 -1
  141. package/dist/esm/{index-BF901xIc.js → index-K0OclOPO.js} +10 -2
  142. package/dist/esm/loader.js +3 -3
  143. package/dist/esm/salla-accordion-body_2.entry.js +1 -1
  144. package/dist/esm/salla-accordion_6.entry.js +4 -3
  145. package/dist/esm/salla-add-product-button_5.entry.js +2 -2
  146. package/dist/esm/salla-advertisement.entry.js +1 -1
  147. package/dist/esm/salla-alert_2.entry.js +1 -1
  148. package/dist/esm/salla-app-install-alert.entry.js +1 -1
  149. package/dist/esm/salla-apps-icons.entry.js +1 -1
  150. package/dist/esm/salla-badge.entry.js +1 -1
  151. package/dist/esm/salla-booking-field_7.entry.js +11 -11
  152. package/dist/esm/salla-bullet-delivery_2.entry.js +21 -13
  153. package/dist/esm/salla-cart-coupons.entry.js +1 -1
  154. package/dist/esm/salla-cart-item-offers_2.entry.js +1 -1
  155. package/dist/esm/salla-cart-summary-card.entry.js +347 -0
  156. package/dist/esm/salla-cashback-banner.entry.js +1 -1
  157. package/dist/esm/salla-comment-form_8.entry.js +2 -2
  158. package/dist/esm/salla-conditional-offer.entry.js +1 -1
  159. package/dist/esm/salla-contacts.entry.js +1 -1
  160. package/dist/esm/salla-cookies-bar.entry.js +1 -1
  161. package/dist/esm/salla-count-down.entry.js +1 -1
  162. package/dist/esm/salla-custom-fields.entry.js +1 -1
  163. package/dist/esm/salla-delivery-promise.entry.js +1 -1
  164. package/dist/esm/salla-edit-order-button.entry.js +1 -1
  165. package/dist/esm/salla-filters-widget.entry.js +15 -8
  166. package/dist/esm/salla-filters.entry.js +101 -13
  167. package/dist/esm/salla-fulfillment-methods.entry.js +1 -1
  168. package/dist/esm/salla-gifting.entry.js +1 -1
  169. package/dist/esm/salla-hook.entry.js +1 -1
  170. package/dist/esm/salla-infinite-scroll.entry.js +2 -2
  171. package/dist/esm/salla-installment.entry.js +1 -1
  172. package/dist/esm/salla-list-tile.entry.js +1 -1
  173. package/dist/esm/salla-localization-modal.entry.js +1 -1
  174. package/dist/esm/salla-login-modal.entry.js +1 -1
  175. package/dist/esm/salla-loyalty-banner.entry.js +2 -2
  176. package/dist/esm/salla-loyalty-hero_2.entry.js +2 -2
  177. package/dist/esm/salla-loyalty-panel.entry.js +3 -3
  178. package/dist/esm/salla-loyalty-points-banner.entry.js +1 -1
  179. package/dist/esm/salla-loyalty-points-history.entry.js +1 -1
  180. package/dist/esm/salla-loyalty-prize-item.entry.js +1 -1
  181. package/dist/esm/salla-loyalty-program.entry.js +3 -3
  182. package/dist/esm/salla-loyalty-reward.entry.js +2 -2
  183. package/dist/esm/salla-loyalty.entry.js +1 -1
  184. package/dist/esm/salla-maintenance-alert.entry.js +1 -1
  185. package/dist/esm/salla-map_2.entry.js +1 -1
  186. package/dist/esm/salla-menu.entry.js +1 -1
  187. package/dist/esm/salla-metadata.entry.js +1 -1
  188. package/dist/esm/salla-multiple-bundle-product-cart_2.entry.js +1 -1
  189. package/dist/esm/salla-multiple-bundle-product-options-modal_2.entry.js +1 -1
  190. package/dist/esm/salla-multiple-bundle-product.entry.js +1 -1
  191. package/dist/esm/salla-next-order-coupon.entry.js +1 -1
  192. package/dist/esm/salla-notification-item.entry.js +1 -1
  193. package/dist/esm/salla-notifications.entry.js +2 -2
  194. package/dist/esm/salla-offer-modal.entry.js +1 -1
  195. package/dist/esm/salla-offer.entry.js +1 -1
  196. package/dist/esm/salla-order-branch.entry.js +1 -1
  197. package/dist/esm/salla-order-cancel.entry.js +294 -0
  198. package/dist/esm/salla-order-details-multiple-bundle-product.entry.js +1 -1
  199. package/dist/esm/salla-order-details-options.entry.js +1 -1
  200. package/dist/esm/salla-order-details.entry.js +1 -1
  201. package/dist/esm/salla-order-edit-item.entry.js +1 -1
  202. package/dist/esm/salla-order-edit-product-card.entry.js +1 -1
  203. package/dist/esm/salla-order-edit.entry.js +1 -1
  204. package/dist/esm/salla-order-options-modal_3.entry.js +2 -2
  205. package/dist/esm/salla-order-summary.entry.js +1 -1
  206. package/dist/esm/salla-order-totals-card.entry.js +1 -1
  207. package/dist/esm/salla-orders.entry.js +2 -2
  208. package/dist/esm/salla-payments.entry.js +1 -1
  209. package/dist/esm/salla-placeholder.entry.js +1 -1
  210. package/dist/esm/salla-price-range.entry.js +1 -1
  211. package/dist/esm/salla-product-card-embed.entry.js +1 -1
  212. package/dist/esm/salla-product-size-guide.entry.js +1 -1
  213. package/dist/esm/salla-products-list.entry.js +21 -9
  214. package/dist/esm/salla-quick-order.entry.js +1 -1
  215. package/dist/esm/salla-rating-modal.entry.js +2 -2
  216. package/dist/esm/salla-reward-action_4.entry.js +3 -3
  217. package/dist/esm/salla-scopes.entry.js +1 -1
  218. package/dist/esm/salla-search.entry.js +2 -2
  219. package/dist/esm/salla-skeleton.entry.js +1 -1
  220. package/dist/esm/salla-slider.entry.js +1 -1
  221. package/dist/esm/salla-social-share.entry.js +1 -1
  222. package/dist/esm/salla-social.entry.js +1 -1
  223. package/dist/esm/salla-tab-content_3.entry.js +1 -1
  224. package/dist/esm/salla-tiered-offer.entry.js +1 -1
  225. package/dist/esm/salla-tooltip.entry.js +1 -1
  226. package/dist/esm/salla-trust-badges.entry.js +1 -1
  227. package/dist/esm/salla-user-menu.entry.js +5 -2
  228. package/dist/esm/salla-user-profile.entry.js +1 -1
  229. package/dist/esm/salla-user-settings.entry.js +1 -1
  230. package/dist/esm/salla-verify.entry.js +1 -1
  231. package/dist/esm/salla-wallet.entry.js +1 -1
  232. package/dist/esm/salla-wishlist-actions.entry.js +1 -1
  233. package/dist/esm/{tracked-promise-CNdO8SSl.js → tracked-promise-yWzlErXb.js} +1 -1
  234. package/dist/esm/twilight.js +3 -3
  235. package/dist/esm/{vanilla-picker-YVpipuL-.js → vanilla-picker-Bwq5IBwq.js} +1 -1
  236. package/dist/twilight/{p-6976c445.entry.js → p-04612ed4.entry.js} +1 -1
  237. package/dist/twilight/{p-7ce2c5ca.entry.js → p-0be72b27.entry.js} +1 -1
  238. package/dist/twilight/{p-e692322c.entry.js → p-0f6a9e5e.entry.js} +1 -1
  239. package/dist/twilight/{p-9f6a0804.entry.js → p-12d485db.entry.js} +1 -1
  240. package/dist/twilight/{p-4b0aa371.entry.js → p-168bfefc.entry.js} +1 -1
  241. package/dist/twilight/{p-f4564fdc.entry.js → p-1695dd23.entry.js} +1 -1
  242. package/dist/twilight/p-18c99d79.entry.js +4 -0
  243. package/dist/twilight/{p-d4eeed4b.entry.js → p-1abccd80.entry.js} +1 -1
  244. package/dist/twilight/{p-fe69512c.entry.js → p-1ec309ad.entry.js} +1 -1
  245. package/dist/twilight/{p-f5e943bb.entry.js → p-2368ab21.entry.js} +1 -1
  246. package/dist/twilight/{p-b7b29da3.entry.js → p-24eb59ac.entry.js} +1 -1
  247. package/dist/twilight/{p-9b2f674f.entry.js → p-283b7a09.entry.js} +1 -1
  248. package/dist/twilight/{p-c5050e10.entry.js → p-28eea468.entry.js} +1 -1
  249. package/dist/twilight/{p-cd4b2301.entry.js → p-2ea6c5c6.entry.js} +1 -1
  250. package/dist/twilight/{p-f71a7a24.entry.js → p-30796ada.entry.js} +1 -1
  251. package/dist/twilight/{p-18ad7499.entry.js → p-327d33c2.entry.js} +1 -1
  252. package/dist/twilight/{p-0c36ee7c.entry.js → p-363417b6.entry.js} +1 -1
  253. package/dist/twilight/{p-bd0075c9.entry.js → p-387e06ce.entry.js} +1 -1
  254. package/dist/twilight/{p-67b225d5.entry.js → p-38c82b5b.entry.js} +1 -1
  255. package/dist/twilight/{p-DwHaUky6.js → p-3Yh5uCQZ.js} +1 -1
  256. package/dist/twilight/{p-02350ded.entry.js → p-3cee41e1.entry.js} +1 -1
  257. package/dist/twilight/p-3e9bba4f.entry.js +4 -0
  258. package/dist/twilight/{p-3eb54d75.entry.js → p-3f1913e0.entry.js} +1 -1
  259. package/dist/twilight/{p-a853a50f.entry.js → p-416e7ea9.entry.js} +1 -1
  260. package/dist/twilight/{p-beb2df03.entry.js → p-44819d23.entry.js} +1 -1
  261. package/dist/twilight/{p-a4107435.entry.js → p-44ed9315.entry.js} +1 -1
  262. package/dist/twilight/{p-DVM0Orh8.js → p-4Xs3NevL.js} +1 -1
  263. package/dist/twilight/{p-0e2a2a9a.entry.js → p-4bdd0eab.entry.js} +1 -1
  264. package/dist/twilight/{p-77b6fbf2.entry.js → p-4df90b34.entry.js} +1 -1
  265. package/dist/twilight/{p-ce8571e3.entry.js → p-4e16be16.entry.js} +1 -1
  266. package/dist/twilight/{p-134988db.entry.js → p-507e04b3.entry.js} +1 -1
  267. package/dist/twilight/{p-4544ca7d.entry.js → p-52df99a3.entry.js} +1 -1
  268. package/dist/twilight/{p-0fcc3b26.entry.js → p-54047fdd.entry.js} +1 -1
  269. package/dist/twilight/p-5dbdf0e7.entry.js +4 -0
  270. package/dist/twilight/{p-a7d99355.entry.js → p-5dc0f3c0.entry.js} +1 -1
  271. package/dist/twilight/{p-22405eaa.entry.js → p-5effd85b.entry.js} +2 -2
  272. package/dist/twilight/{p-8f9e0a7a.entry.js → p-62e99802.entry.js} +1 -1
  273. package/dist/twilight/{p-c590dcf0.entry.js → p-680e0dca.entry.js} +1 -1
  274. package/dist/twilight/{p-f32df318.entry.js → p-6e6f4879.entry.js} +1 -1
  275. package/dist/twilight/{p-KNG8mGcV.js → p-6iwUgroX.js} +1 -1
  276. package/dist/twilight/{p-f5e55c13.entry.js → p-72bc40b3.entry.js} +1 -1
  277. package/dist/twilight/{p-d3f904d0.entry.js → p-75345728.entry.js} +1 -1
  278. package/dist/twilight/{p-d2cc8587.entry.js → p-76f06b0a.entry.js} +1 -1
  279. package/dist/twilight/{p-43ab561c.entry.js → p-7a738892.entry.js} +1 -1
  280. package/dist/twilight/{p-e304cb5e.entry.js → p-7ab11977.entry.js} +1 -1
  281. package/dist/twilight/p-7cfe5dbf.entry.js +4 -0
  282. package/dist/twilight/{p-1d3efd00.entry.js → p-868b6dcc.entry.js} +1 -1
  283. package/dist/twilight/{p-a6afc8ab.entry.js → p-8878ec9e.entry.js} +1 -1
  284. package/dist/twilight/{p-9db7e318.entry.js → p-8a274920.entry.js} +1 -1
  285. package/dist/twilight/{p-2192d7c2.entry.js → p-8b2fb172.entry.js} +1 -1
  286. package/dist/twilight/{p-368d3b26.entry.js → p-8b45c13a.entry.js} +1 -1
  287. package/dist/twilight/{p-d1048676.entry.js → p-8ba7b32d.entry.js} +1 -1
  288. package/dist/twilight/{p-6b9780be.entry.js → p-8f204414.entry.js} +1 -1
  289. package/dist/twilight/{p-bcfe04fa.entry.js → p-906dfda7.entry.js} +1 -1
  290. package/dist/twilight/{p-4427e994.entry.js → p-90976775.entry.js} +1 -1
  291. package/dist/twilight/{p-4288893b.entry.js → p-917bae25.entry.js} +1 -1
  292. package/dist/twilight/{p-b8d180fe.entry.js → p-95c6ca83.entry.js} +1 -1
  293. package/dist/twilight/{p-b32e5ad7.entry.js → p-997a1fdf.entry.js} +1 -1
  294. package/dist/twilight/{p-dc093d27.entry.js → p-9cb07624.entry.js} +1 -1
  295. package/dist/twilight/{p-d6da8710.entry.js → p-9d51f43d.entry.js} +1 -1
  296. package/dist/twilight/{p-aa928350.entry.js → p-9dc6f28e.entry.js} +1 -1
  297. package/dist/twilight/{p-c01e3f1d.entry.js → p-9efc4b59.entry.js} +1 -1
  298. package/dist/twilight/{p-CMmiX5T8.js → p-BF7QVpUp.js} +1 -1
  299. package/dist/twilight/{p-gacShRe2.js → p-BHY6Sj5y.js} +1 -1
  300. package/dist/twilight/{p-BPGtYFVu.js → p-BZ24UYWJ.js} +1 -1
  301. package/dist/twilight/{p-BuOjsqYX.js → p-BgI56yKL.js} +1 -1
  302. package/dist/twilight/{p-CwLXCdYY.js → p-Bnnviqjp.js} +1 -1
  303. package/dist/twilight/{p-BrcsejOr.js → p-CJRTPVPy.js} +1 -1
  304. package/dist/twilight/{p-BEb9UIZ7.js → p-DTwxTvVu.js} +1 -1
  305. package/dist/twilight/{p-Bmy5YF6e.js → p-DZu6rifA.js} +1 -1
  306. package/dist/twilight/{p-BF901xIc.js → p-K0OclOPO.js} +1 -1
  307. package/dist/twilight/p-XnA1YTjA.js +4 -0
  308. package/dist/twilight/{p-1a8525af.entry.js → p-b2a12062.entry.js} +1 -1
  309. package/dist/twilight/{p-4b558e37.entry.js → p-b69cc47d.entry.js} +1 -1
  310. package/dist/twilight/{p-be632d40.entry.js → p-bb7d240f.entry.js} +1 -1
  311. package/dist/twilight/{p-5476bd33.entry.js → p-bd50d1c4.entry.js} +1 -1
  312. package/dist/twilight/{p-1c4e7c18.entry.js → p-c01100d0.entry.js} +1 -1
  313. package/dist/twilight/{p-04f5d67b.entry.js → p-c19cdf96.entry.js} +1 -1
  314. package/dist/twilight/{p-a5895e0f.entry.js → p-c1b56f08.entry.js} +1 -1
  315. package/dist/twilight/{p-2eb78125.entry.js → p-c1e7fe98.entry.js} +1 -1
  316. package/dist/twilight/{p-ce633fa0.entry.js → p-c497fa37.entry.js} +1 -1
  317. package/dist/twilight/p-c6026f2e.entry.js +4 -0
  318. package/dist/twilight/{p-4e2f144a.entry.js → p-cb475d27.entry.js} +1 -1
  319. package/dist/twilight/{p-ed1e0c2e.entry.js → p-cb9501dc.entry.js} +1 -1
  320. package/dist/twilight/{p-5c37420e.entry.js → p-ccbf4eea.entry.js} +1 -1
  321. package/dist/twilight/{p-a445225d.entry.js → p-cd11cafc.entry.js} +1 -1
  322. package/dist/twilight/{p-f3b24cce.entry.js → p-cdfe32c9.entry.js} +1 -1
  323. package/dist/twilight/{p-d92a7d91.entry.js → p-d1b3e98b.entry.js} +1 -1
  324. package/dist/twilight/{p-8f006eca.entry.js → p-d5bbdd47.entry.js} +1 -1
  325. package/dist/twilight/{p-518bab79.entry.js → p-d6ace1e8.entry.js} +1 -1
  326. package/dist/twilight/{p-85b235dc.entry.js → p-db3da75c.entry.js} +1 -1
  327. package/dist/twilight/p-df6739de.entry.js +4 -0
  328. package/dist/twilight/{p-ad5c8d34.entry.js → p-e10eed6e.entry.js} +1 -1
  329. package/dist/twilight/{p-2b58b700.entry.js → p-e30f415c.entry.js} +1 -1
  330. package/dist/twilight/{p-b2a11170.entry.js → p-e52bbc5f.entry.js} +1 -1
  331. package/dist/twilight/{p-a047ed06.entry.js → p-e9439252.entry.js} +1 -1
  332. package/dist/twilight/p-eeb0e354.entry.js +4 -0
  333. package/dist/twilight/{p-0d94f890.entry.js → p-f4b040f0.entry.js} +1 -1
  334. package/dist/twilight/{p-90c58cc5.entry.js → p-f5242092.entry.js} +1 -1
  335. package/dist/twilight/{p-506a2720.entry.js → p-f6c20f25.entry.js} +1 -1
  336. package/dist/twilight/{p-2e4fe427.entry.js → p-f97717b9.entry.js} +1 -1
  337. package/dist/twilight/{p-ce38e5a1.entry.js → p-fb9f7001.entry.js} +1 -1
  338. package/dist/twilight/{p-c92915e0.entry.js → p-fe6e676c.entry.js} +1 -1
  339. package/dist/twilight/twilight.esm.js +1 -1
  340. package/dist/types/components/salla-cart-summary-card/salla-cart-summary-card.d.ts +67 -0
  341. package/dist/types/components/salla-filters/salla-filters.d.ts +14 -0
  342. package/dist/types/components/salla-order-cancel/interfaces.d.ts +20 -0
  343. package/dist/types/components/salla-order-cancel/salla-order-cancel.d.ts +42 -0
  344. package/dist/types/components/salla-products-list/salla-products-list.d.ts +1 -0
  345. package/dist/types/components/salla-user-menu/salla-user-menu.d.ts +1 -0
  346. package/dist/types/components.d.ts +68 -0
  347. package/package.json +5 -5
  348. package/dist/twilight/p-2cc32d1f.entry.js +0 -4
  349. package/dist/twilight/p-3d732135.entry.js +0 -4
  350. package/dist/twilight/p-632766e3.entry.js +0 -4
  351. package/dist/twilight/p-C-3GuKNW.js +0 -4
  352. package/dist/twilight/p-a3a1bf15.entry.js +0 -4
  353. package/dist/twilight/p-d2cdd923.entry.js +0 -4
@@ -0,0 +1,296 @@
1
+ /*!
2
+ * Crafted with ❤ by Salla
3
+ */
4
+ 'use strict';
5
+
6
+ var index = require('./index-f6loD1zL.js');
7
+
8
+ const sallaOrderCancelCss = ".s-order-cancel-reason .s-order-cancel-radio::before,.s-order-cancel-reason .s-radio::before{content:\"\";width:10px;height:10px;border-radius:50%;transform:scale(0);transition:120ms transform ease-in-out;background-color:#fff;box-shadow:inset 1em 1em #fff}.s-order-cancel-reason .s-order-cancel-radio:checked::before,.s-order-cancel-reason .s-radio:checked::before{transform:scale(1);background-color:var(--color-primary);box-shadow:inset 1em 1em var(--color-primary)}";
9
+
10
+ const MAX_NOTE = 250;
11
+ const ORDER_WAIT_MS = 2500;
12
+ const DATE_HEADER = 'td.single-order-header-item:not(.flex)';
13
+ const CANCELLED_MARKER = '[data-salla-order-cancelled-reason]';
14
+ const CANCELLED_BY_LABELS = {
15
+ customer: 'أُلغي الطلب من قِبل العميل',
16
+ merchant: 'أُلغي الطلب من قِبل المتجر',
17
+ };
18
+ const LANG_PAIRS = [
19
+ ['pages.orders.cancel_modal_title', 'إلغاء الطلب', 'Cancel order'],
20
+ ['pages.orders.cancel_reason_title', 'لماذا ترغب في إلغاء الطلب؟', 'Why do you want to cancel this order?'],
21
+ ['pages.orders.cancel_reason_subtitle', 'ساعدنا نعرف السبب لتحسين تجربتك.', 'Help us understand why to improve your experience.'],
22
+ ['pages.orders.cancel_reason_confirm', 'تأكيد إلغاء الطلب', 'Confirm order cancellation'],
23
+ ['pages.orders.cancel_reason_back', 'تراجع', 'Go back'],
24
+ ['pages.orders.cancel_reason_note_placeholder', 'اذكر السبب', 'Mention the reason'],
25
+ ['pages.orders.cancelled_by_customer', CANCELLED_BY_LABELS.customer, 'Order cancelled by the customer'],
26
+ ['pages.orders.cancelled_by_merchant', CANCELLED_BY_LABELS.merchant, 'Order cancelled by the merchant'],
27
+ ['pages.orders.cancel_reason_char_limit', 'يتجاوز النص حد الأحرف المسموح', 'Text exceeds the allowed character limit'],
28
+ ];
29
+ const parseJson = (value) => {
30
+ if (!value)
31
+ return null;
32
+ try {
33
+ const data = typeof value === 'string' ? JSON.parse(value) : value;
34
+ return data && typeof data === 'object' ? data : null;
35
+ }
36
+ catch {
37
+ return null;
38
+ }
39
+ };
40
+ const parseCancelledReason = (raw) => {
41
+ const data = parseJson(raw);
42
+ const reasons = Array.isArray(data?.reasons)
43
+ ? data.reasons.filter((r) => typeof r === 'string' && r.length > 0)
44
+ : [];
45
+ if (!reasons.length)
46
+ return null;
47
+ return { cancelled_by: data?.cancelled_by === 'merchant' ? 'merchant' : 'customer', reasons };
48
+ };
49
+ const normalizeReasons = (reasons) => reasons.filter(r => r.is_active !== false).sort((a, b) => (a.sort ?? 0) - (b.sort ?? 0));
50
+ const parseReasonsProp = (value) => {
51
+ if (value == null || value === '')
52
+ return null;
53
+ const parsed = typeof value === 'string' ? parseJson(value) : value;
54
+ return Array.isArray(parsed) && parsed.length ? parsed : null;
55
+ };
56
+ const SallaOrderCancel = class {
57
+ constructor(hostRef) {
58
+ index.registerInstance(this, hostRef);
59
+ this.reasons = [];
60
+ this.selectedReasonId = null;
61
+ this.reasonNote = '';
62
+ this.confirmLoading = false;
63
+ this.loading = true;
64
+ this.modalTitleLabel = '';
65
+ this.questionLabel = '';
66
+ this.subtitleLabel = '';
67
+ this.confirmLabel = '';
68
+ this.backLabel = '';
69
+ this.notePlaceholder = '';
70
+ this.charLimitLabel = '';
71
+ salla.lang.onLoaded(() => {
72
+ const ar = salla.lang.messages?.['ar.trans'];
73
+ const en = salla.lang.messages?.['en.trans'];
74
+ if (ar && en && salla.helpers?.setNested) {
75
+ for (const [key, arText, enText] of LANG_PAIRS) {
76
+ salla.helpers.setNested(ar, key, arText);
77
+ salla.helpers.setNested(en, key, enText);
78
+ }
79
+ }
80
+ this.refreshLabels();
81
+ });
82
+ }
83
+ onCancellationReasonsChange() {
84
+ void this.load();
85
+ }
86
+ async componentWillLoad() {
87
+ await salla.onReady();
88
+ this.refreshLabels();
89
+ await this.load();
90
+ }
91
+ refreshLabels() {
92
+ const t = (key, fb) => salla.lang.getWithDefault(key, fb);
93
+ this.modalTitleLabel = t('pages.orders.cancel_modal_title', 'إلغاء الطلب');
94
+ this.questionLabel = t('pages.orders.cancel_reason_title', 'لماذا ترغب في إلغاء الطلب؟');
95
+ this.subtitleLabel = t('pages.orders.cancel_reason_subtitle', 'ساعدنا نعرف السبب لتحسين تجربتك.');
96
+ this.confirmLabel = t('pages.orders.cancel_reason_confirm', 'تأكيد إلغاء الطلب');
97
+ this.backLabel = t('pages.orders.cancel_reason_back', 'تراجع');
98
+ this.notePlaceholder = t('pages.orders.cancel_reason_note_placeholder', 'اذكر السبب');
99
+ this.charLimitLabel = t('pages.orders.cancel_reason_char_limit', 'يتجاوز النص حد الأحرف المسموح');
100
+ }
101
+ get resolvedOrderId() {
102
+ const id = this.orderId ?? this.pageOrder?.id ?? salla.config.get('page.id');
103
+ const n = Number(id);
104
+ return Number.isFinite(n) ? n : id;
105
+ }
106
+ readPageOrder() {
107
+ const el = document.querySelector('salla-order-totals-card');
108
+ return el ? parseJson(el.order ?? el.getAttribute('order')) : null;
109
+ }
110
+ waitForPageOrder() {
111
+ const order = this.readPageOrder();
112
+ if (order)
113
+ return Promise.resolve(order);
114
+ if (typeof MutationObserver === 'undefined') {
115
+ // ponytail: jsdom has no MutationObserver; one microtask retry for spec DOM
116
+ return Promise.resolve().then(() => this.readPageOrder());
117
+ }
118
+ return new Promise(resolve => {
119
+ let settled = false;
120
+ const finish = () => {
121
+ if (settled)
122
+ return;
123
+ settled = true;
124
+ observer.disconnect();
125
+ clearTimeout(timer);
126
+ resolve(this.readPageOrder());
127
+ };
128
+ const card = document.querySelector('salla-order-totals-card');
129
+ const observer = new MutationObserver(finish);
130
+ observer.observe(card ?? document.documentElement, card
131
+ ? { attributes: true, attributeFilter: ['order'] }
132
+ : { childList: true, subtree: true, attributes: true, attributeFilter: ['order'] });
133
+ const timer = setTimeout(finish, ORDER_WAIT_MS);
134
+ });
135
+ }
136
+ cancelledByLabel(by) {
137
+ return salla.lang.getWithDefault(`pages.orders.cancelled_by_${by}`, CANCELLED_BY_LABELS[by]);
138
+ }
139
+ mountCancelledHeader(attempt = 0) {
140
+ const cancelled = this.orderCancelledReason;
141
+ const reason = cancelled?.reasons[0];
142
+ if (!reason || document.querySelector(CANCELLED_MARKER))
143
+ return;
144
+ const anchor = document.querySelector(DATE_HEADER);
145
+ if (!anchor) {
146
+ // ponytail: hook mounts before header table in single.twig; retry until anchor exists
147
+ if (attempt < 20)
148
+ requestAnimationFrame(() => this.mountCancelledHeader(attempt + 1));
149
+ return;
150
+ }
151
+ const cell = document.createElement('td');
152
+ cell.className = 's-order-cancel-cancelled-header-item';
153
+ cell.setAttribute('data-salla-order-cancelled-reason', '');
154
+ const label = document.createElement('div');
155
+ label.className = 's-order-cancel-cancelled-header-label';
156
+ label.textContent = this.cancelledByLabel(cancelled.cancelled_by);
157
+ const value = document.createElement('b');
158
+ value.className = 's-order-cancel-cancelled-header-reason';
159
+ value.textContent = reason;
160
+ value.title = reason;
161
+ cell.append(label, value);
162
+ anchor.insertAdjacentElement('afterend', cell);
163
+ }
164
+ purgeLegacyModal() {
165
+ if (!this.reasons.length)
166
+ return;
167
+ for (const el of document.querySelectorAll('salla-modal#modal-order-cancel:not([data-salla-order-cancel])')) {
168
+ el.remove();
169
+ }
170
+ }
171
+ applyPageOrder(order) {
172
+ this.pageOrder = order;
173
+ this.orderCancelledReason = parseCancelledReason(order.order_cancelled_reason) ?? undefined;
174
+ }
175
+ async load() {
176
+ this.loading = true;
177
+ try {
178
+ const fromProp = parseReasonsProp(this.cancellationReasons);
179
+ if (!this.pageOrder) {
180
+ const order = this.readPageOrder();
181
+ if (order)
182
+ this.applyPageOrder(order);
183
+ }
184
+ if (!this.pageOrder && !fromProp) {
185
+ const order = await this.waitForPageOrder();
186
+ if (order)
187
+ this.applyPageOrder(order);
188
+ }
189
+ else if (!this.pageOrder) {
190
+ void this.waitForPageOrder().then(order => {
191
+ if (order) {
192
+ this.applyPageOrder(order);
193
+ this.mountCancelledHeader();
194
+ }
195
+ });
196
+ }
197
+ const order = this.pageOrder;
198
+ this.reasons = fromProp
199
+ ? normalizeReasons(fromProp)
200
+ : order
201
+ ? normalizeReasons(Array.isArray(order.cancellation_reasons) ? order.cancellation_reasons : [])
202
+ : [];
203
+ }
204
+ finally {
205
+ this.loading = false;
206
+ this.purgeLegacyModal();
207
+ this.mountCancelledHeader();
208
+ }
209
+ }
210
+ reasonLabel(reason) {
211
+ const locale = salla.lang.getLocale?.() || 'ar';
212
+ return reason.translations?.[locale]?.name || reason.name;
213
+ }
214
+ get hasOtherSelected() {
215
+ return this.selectedReasonId !== null && this.reasons.some(r => r.id === this.selectedReasonId && r.slug === 'other');
216
+ }
217
+ get canConfirm() {
218
+ if (this.selectedReasonId === null)
219
+ return false;
220
+ if (!this.hasOtherSelected)
221
+ return true;
222
+ const len = this.reasonNote.trim().length;
223
+ return len > 0 && len <= MAX_NOTE;
224
+ }
225
+ selectReason(id) {
226
+ if (this.selectedReasonId === id) {
227
+ if (this.reasons.find(r => r.id === id)?.slug === 'other')
228
+ this.reasonNote = '';
229
+ this.selectedReasonId = null;
230
+ return;
231
+ }
232
+ if (this.reasons.find(r => r.id === this.selectedReasonId)?.slug === 'other') {
233
+ this.reasonNote = '';
234
+ }
235
+ this.selectedReasonId = id;
236
+ if (this.reasons.length && this.reasons[this.reasons.length - 1].id === id) {
237
+ const timer = setTimeout(() => {
238
+ requestAnimationFrame(() => {
239
+ document.getElementById(`s-order-cancel-reason-${id}`)?.scrollIntoView({ block: 'start', behavior: 'smooth' });
240
+ const textarea = document.querySelector('.s-order-cancel-textarea');
241
+ textarea?.focus();
242
+ clearTimeout(timer);
243
+ });
244
+ }, 200);
245
+ }
246
+ }
247
+ resetForm() {
248
+ this.selectedReasonId = null;
249
+ this.reasonNote = '';
250
+ this.confirmLoading = false;
251
+ }
252
+ setReasonNote(event) {
253
+ this.reasonNote = event.target.value;
254
+ }
255
+ onKeyActivate(event, action) {
256
+ if (event.key === 'Enter' || event.key === ' ')
257
+ action();
258
+ }
259
+ async confirmCancel() {
260
+ if (!this.canConfirm || this.confirmLoading)
261
+ return;
262
+ this.confirmLoading = true;
263
+ try {
264
+ const note = this.hasOtherSelected ? this.reasonNote.trim() : '';
265
+ const payload = {
266
+ reasons: [String(this.selectedReasonId)],
267
+ ...(note && { reason_note: note }),
268
+ };
269
+ await salla.order.api.cancel(this.resolvedOrderId, payload);
270
+ window.location.reload();
271
+ }
272
+ catch {
273
+ this.confirmLoading = false;
274
+ }
275
+ }
276
+ render() {
277
+ if (this.loading || !this.reasons.length)
278
+ return index.h(index.Host, { class: "s-order-cancel-wrapper" });
279
+ return (index.h(index.Host, { class: "s-order-cancel-wrapper" }, index.h("salla-modal", { id: "modal-order-cancel", class: "s-order-cancel-modal", "data-salla-order-cancel": "", ref: el => {
280
+ this.modal = el;
281
+ void el?.setTitle?.(this.modalTitleLabel);
282
+ }, width: "sm", onModalVisibilityChanged: e => !e.detail && this.resetForm() }, index.h("div", { class: "s-order-cancel-content" }, index.h("div", { class: "s-order-cancel-intro" }, index.h("p", { class: "s-order-cancel-heading" }, this.questionLabel), index.h("p", { class: "s-order-cancel-subtitle" }, this.subtitleLabel)), index.h("div", { class: "s-order-cancel-reasons s-scrollbar" }, this.reasons.map(reason => {
283
+ const id = `s-order-cancel-reason-${reason.id}`;
284
+ return (index.h("label", { key: reason.id, class: "s-order-cancel-reason", htmlFor: id }, index.h("input", { type: "radio", name: "cancellation_reason", id: id, class: "s-order-cancel-radio s-radio", checked: this.selectedReasonId === reason.id, onChange: () => this.selectReason(reason.id) }), index.h("span", { class: "s-order-cancel-reason-label" }, this.reasonLabel(reason))));
285
+ })), this.hasOtherSelected && (index.h("div", { class: "s-order-cancel-other-field" }, index.h("textarea", { class: "s-order-cancel-textarea", placeholder: this.notePlaceholder, value: this.reasonNote, onInput: e => this.setReasonNote(e) }), index.h("p", { class: {
286
+ 's-order-cancel-counter': true,
287
+ 's-order-cancel-counter--limit': this.reasonNote.length >= MAX_NOTE,
288
+ } }, this.reasonNote.length >= MAX_NOTE && `${this.charLimitLabel} `, MAX_NOTE, "/", this.reasonNote.length))), index.h("div", { class: "s-order-cancel-actions" }, index.h("salla-button", { color: "primary", class: "w-full", width: "wide", disabled: !this.canConfirm, loading: this.confirmLoading, onClick: () => this.confirmCancel(), onKeyDown: e => this.onKeyActivate(e, () => this.confirmCancel()) }, this.confirmLabel), index.h("salla-button", { class: "w-full", width: "wide", fill: "outline", color: "gray", onClick: () => this.modal?.close(), onKeyDown: e => this.onKeyActivate(e, () => this.modal?.close()) }, this.backLabel))))));
289
+ }
290
+ static get watchers() { return {
291
+ "cancellationReasons": ["onCancellationReasonsChange"]
292
+ }; }
293
+ };
294
+ SallaOrderCancel.style = sallaOrderCancelCss;
295
+
296
+ exports.salla_order_cancel = SallaOrderCancel;
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-C_WIlgE2.js');
6
+ var index = require('./index-f6loD1zL.js');
7
7
 
8
8
  const sallaOrderDetailsMultipleBundleProductCss = "";
9
9
 
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-C_WIlgE2.js');
6
+ var index = require('./index-f6loD1zL.js');
7
7
 
8
8
  var copyIcon = `<!-- Generated by IcoMoon.io -->
9
9
  <svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 32 32">
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-C_WIlgE2.js');
6
+ var index = require('./index-f6loD1zL.js');
7
7
 
8
8
  const sallaOrderDetailsCss = "";
9
9
 
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-C_WIlgE2.js');
6
+ var index = require('./index-f6loD1zL.js');
7
7
  var helpers = require('./helpers-BJ2rnhxz.js');
8
8
  require('./interfaces-Bh7W0bEU.js');
9
9
 
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-C_WIlgE2.js');
6
+ var index = require('./index-f6loD1zL.js');
7
7
 
8
8
  const sallaOrderEditProductCardCss = ":host{display:block;min-width:0}";
9
9
 
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-C_WIlgE2.js');
6
+ var index = require('./index-f6loD1zL.js');
7
7
  var helpers = require('./helpers-BJ2rnhxz.js');
8
8
  require('./interfaces-Bh7W0bEU.js');
9
9
 
@@ -3,9 +3,9 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-C_WIlgE2.js');
6
+ var index = require('./index-f6loD1zL.js');
7
7
  var star2 = require('./star2-R146a27p.js');
8
- var Helper = require('./Helper-DvyEpCgx.js');
8
+ var Helper = require('./Helper-B2B-kxAI.js');
9
9
  require('./anime.es-BqW8JHZi.js');
10
10
 
11
11
  const sallaOrderOptionsModalCss = ".s-order-options-modal-host .s-modal-header-inner,.s-order-options-modal-host .s-modal-header-content,.s-order-options-modal-host .s-modal-title{text-align:start !important}.s-order-options-modal-apple-pay{display:block;width:100%;--apple-pay-button-width:100%;--apple-pay-button-height:44px;--apple-pay-button-border-radius:0.75rem}.s-order-options-modal-apple-pay-wrap{display:flex;flex-direction:column;gap:0.75rem;width:100%}.s-order-options-modal-apple-pay-total{display:flex;align-items:center;justify-content:space-between;gap:0.5rem}.s-order-options-modal-apple-pay-label,.s-order-options-modal-apple-pay-amount{font-size:1.125rem;line-height:1.5rem;font-weight:700;color:#111827}";
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-C_WIlgE2.js');
6
+ var index = require('./index-f6loD1zL.js');
7
7
  var swapStroke = require('./swap-stroke-CYGxjKIS.js');
8
8
  var check = require('./check-BnVBPQNp.js');
9
9
 
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-C_WIlgE2.js');
6
+ var index = require('./index-f6loD1zL.js');
7
7
 
8
8
  const sallaOrderTotalsCardCss = ":host{display:block}";
9
9
 
@@ -3,8 +3,8 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-C_WIlgE2.js');
7
- var Helper = require('./Helper-DvyEpCgx.js');
6
+ var index = require('./index-f6loD1zL.js');
7
+ var Helper = require('./Helper-B2B-kxAI.js');
8
8
  require('./anime.es-BqW8JHZi.js');
9
9
 
10
10
  const sallaOrdersCss = ":host{display:block}";
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-C_WIlgE2.js');
6
+ var index = require('./index-f6loD1zL.js');
7
7
 
8
8
  const sallaPaymentsCss = ":host{display:block}";
9
9
 
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-C_WIlgE2.js');
6
+ var index = require('./index-f6loD1zL.js');
7
7
 
8
8
  var Inbox = `<!-- Generated by IcoMoon.io -->
9
9
  <svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 32 32">
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-C_WIlgE2.js');
6
+ var index = require('./index-f6loD1zL.js');
7
7
  var arrowLeft = require('./arrow-left-xSEmRpp6.js');
8
8
 
9
9
  var arrowRight = `<!-- Generated by IcoMoon.io -->
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-C_WIlgE2.js');
6
+ var index = require('./index-f6loD1zL.js');
7
7
 
8
8
  const sallaProductCardEmbedCss = "@charset \"UTF-8\";:host{display:inline-block;vertical-align:top;max-width:12rem}:host([align=left]){float:inline-start;margin-block-end:1em;margin-inline-end:1em;shape-outside:margin-box}:host([align=right]){float:inline-end;margin-block-end:1em;margin-inline-start:1em;shape-outside:margin-box}:host([align=center]){display:block;clear:both;margin-block:1em;margin-inline:auto}.s-product-card-embed-card{display:block}";
9
9
 
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-C_WIlgE2.js');
6
+ var index = require('./index-f6loD1zL.js');
7
7
 
8
8
  var PencilRuler = `<!-- Generated by IcoMoon.io -->
9
9
  <svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 32 32">
@@ -3,10 +3,10 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-C_WIlgE2.js');
6
+ var index = require('./index-f6loD1zL.js');
7
7
  var anime_es = require('./anime.es-BqW8JHZi.js');
8
8
  var shoppingBag = require('./shopping-bag-C1gvTVHr.js');
9
- var Helper = require('./Helper-DvyEpCgx.js');
9
+ var Helper = require('./Helper-B2B-kxAI.js');
10
10
 
11
11
  const sallaProductsListCss = ".s-products-list-selectable-item{position:relative;border-radius:0.5rem;transition:box-shadow 0.15s ease-in-out}.s-products-list-item-selected{box-shadow:0 0 0 2px var(--color-primary)}.s-products-list-select-control{position:absolute;top:10px;inset-inline-start:10px;z-index:5;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.s-products-list-select-checkbox{appearance:none;-webkit-appearance:none;-moz-appearance:none;position:relative;width:22px;height:22px;margin:0;cursor:pointer;color:var(--color-primary);border:1px solid rgba(0, 0, 0, 0.15);border-radius:6px;background-color:#fff;box-shadow:0 1px 3px rgba(0, 0, 0, 0.2);transition:background-color 0.15s ease-in-out, border-color 0.15s ease-in-out}.s-products-list-select-checkbox:hover{border-color:var(--color-primary)}.s-products-list-select-checkbox:focus,.s-products-list-select-checkbox:focus-visible{outline:none;border-color:var(--color-primary);box-shadow:0 1px 3px rgba(0, 0, 0, 0.2), 0 0 0 3px color-mix(in srgb, var(--color-primary) 30%, transparent)}.s-products-list-select-checkbox:checked,.s-products-list-select-checkbox:checked:hover,.s-products-list-select-checkbox:checked:focus{background-color:var(--color-primary);border-color:var(--color-primary)}.s-products-list-select-checkbox:checked::after{content:\"\";position:absolute;top:50%;left:50%;width:5px;height:10px;border:solid #fff;border-width:0 2px 2px 0;transform:translate(-50%, -60%) rotate(45deg)}.s-products-list-row-cards .s-products-list-select-control{top:50%;inset-inline-start:14px;transform:translateY(-50%)}.s-products-list-row-cards .s-products-list-selectable-item>:not(.s-products-list-select-control){padding-inline-start:2.75rem}";
12
12
 
@@ -142,10 +142,11 @@ const SallaProductsList = class {
142
142
  window.scrollTo({ top: 0, behavior: 'smooth' });
143
143
  // Create a deep copy of the filters object to avoid mutating the original object
144
144
  this.parsedFilters = JSON.parse(JSON.stringify(filters));
145
- if (this.currentPage?.slug == 'product.index' &&
146
- this.parsedFilters &&
147
- this.parsedFilters.category_id) {
148
- this.currentCategoryIdFilter = [this.parsedFilters.category_id];
145
+ if (this.currentPage?.slug == 'product.index') {
146
+ // clear when category_id disappears, otherwise getSourceValue() keeps filtering by the removed category
147
+ this.currentCategoryIdFilter = this.parsedFilters?.category_id
148
+ ? this.toCategoryIdFilter(this.parsedFilters.category_id)
149
+ : null;
149
150
  }
150
151
  return this.reload();
151
152
  }
@@ -608,6 +609,14 @@ const SallaProductsList = class {
608
609
  isAuxiliaryProductsListSource() {
609
610
  return ['json', 'selected', 'related', 'landing-page', 'recently'].includes(this.getSource());
610
611
  }
612
+ // Normalize a category_id filter (array, legacy {0:,1:} object, or scalar) into a flat list of ids
613
+ toCategoryIdFilter(catId) {
614
+ if (Array.isArray(catId))
615
+ return catId;
616
+ if (catId && typeof catId === 'object')
617
+ return Object.values(catId);
618
+ return [catId];
619
+ }
611
620
  getSourceValue() {
612
621
  if (this.getSource() === 'wishlist') {
613
622
  const searchParams = new URLSearchParams(window.location.search);
@@ -912,7 +921,7 @@ const SallaProductsList = class {
912
921
  this.sortBy = this.sortBy || searchParams.get('sort') || searchParams.get('by');
913
922
  this.parsedFilters = Helper.Helper.extractFiltersFromUrl(searchParams);
914
923
  if (this.parsedFilters && this.parsedFilters.category_id) {
915
- this.currentCategoryIdFilter = [this.parsedFilters.category_id];
924
+ this.currentCategoryIdFilter = this.toCategoryIdFilter(this.parsedFilters.category_id);
916
925
  }
917
926
  }
918
927
  catch (e) {
@@ -1033,12 +1042,15 @@ const SallaProductsList = class {
1033
1042
  title = salla.lang.get('common.elements.search_about', { word: this.getSourceValue() });
1034
1043
  }
1035
1044
  else if (!title) {
1036
- let catId = this.parsedFilters.category_id || this.getSourceValue()[0];
1045
+ // with user-applied filters a category name in the title is misleading — show count only;
1046
+ // the unfiltered base state keeps the page category's name
1047
+ let catId = Object.keys(this.parsedFilters || {}).length ? null : this.getSourceValue()[0];
1037
1048
  // get the first filter that its key is category_id, then get the value when filter.value.*.key==catId
1038
1049
  title =
1039
1050
  response.filters
1040
1051
  ?.find(filter => filter.key === 'category_id')
1041
- ?.values?.find(cat => cat.key === catId)?.value ?? '';
1052
+ // loose == : catId may be a number (auto-appended page.id) while API keys are strings
1053
+ ?.values?.find(cat => cat.key == catId)?.value ?? '';
1042
1054
  }
1043
1055
  title +=
1044
1056
  (title ? ' - ' : '') +
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-C_WIlgE2.js');
6
+ var index = require('./index-f6loD1zL.js');
7
7
  var iphoneX = require('./iphone-x-qC21wCLj.js');
8
8
  var mail = require('./mail-C9D8MHae.js');
9
9
  var cancel = require('./cancel-B5SbMYEk.js');
@@ -3,10 +3,10 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-C_WIlgE2.js');
6
+ var index = require('./index-f6loD1zL.js');
7
7
  var star = require('./star-DGcH7Yso.js');
8
8
  var checkCircle2 = require('./check-circle2-BDvlT4_n.js');
9
- var Helper = require('./Helper-DvyEpCgx.js');
9
+ var Helper = require('./Helper-B2B-kxAI.js');
10
10
  var image = require('./image-BoZ6Hums.js');
11
11
  var whatsapp2 = require('./whatsapp2-BdMd5Gx1.js');
12
12
  var mail = require('./mail-C9D8MHae.js');
@@ -3,13 +3,13 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-C_WIlgE2.js');
7
- var functions = require('./functions-DkS9Jmao.js');
6
+ var index = require('./index-f6loD1zL.js');
7
+ var functions = require('./functions-B-_Pnqnt.js');
8
8
  var gift = require('./gift-DbNivqYO.js');
9
9
  var tag = require('./tag-D-PcUR33.js');
10
10
  var check = require('./check-BnVBPQNp.js');
11
11
  var cancel = require('./cancel-B5SbMYEk.js');
12
- var trackedPromise = require('./tracked-promise-TyxTPR6e.js');
12
+ var trackedPromise = require('./tracked-promise-We1h_qB4.js');
13
13
 
14
14
  const sallaLoyaltyProgramCss$3 = "";
15
15
 
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-C_WIlgE2.js');
6
+ var index = require('./index-f6loD1zL.js');
7
7
  var search = require('./search-c7Aa7lM9.js');
8
8
 
9
9
  var StoreAlt = `<!-- Generated by IcoMoon.io -->
@@ -3,9 +3,9 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-C_WIlgE2.js');
6
+ var index = require('./index-f6loD1zL.js');
7
7
  var search = require('./search-c7Aa7lM9.js');
8
- var Helper = require('./Helper-DvyEpCgx.js');
8
+ var Helper = require('./Helper-B2B-kxAI.js');
9
9
  require('./anime.es-BqW8JHZi.js');
10
10
 
11
11
  const sallaSearchCss = ".s-search-placeholder-wrapper{position:relative;display:inline-block}.s-search-input-wrapper{position:relative}.s-search-placeholder-trigger{cursor:pointer;appearance:none;text-align:start}";
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-C_WIlgE2.js');
6
+ var index = require('./index-f6loD1zL.js');
7
7
 
8
8
  const sallaSkeletonCss = ":host{display:block}";
9
9
 
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-C_WIlgE2.js');
6
+ var index = require('./index-f6loD1zL.js');
7
7
  var keyboard_arrow_right = require('./keyboard_arrow_right-BayM_Il2.js');
8
8
 
9
9
  /**
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-C_WIlgE2.js');
6
+ var index = require('./index-f6loD1zL.js');
7
7
  var anime_es = require('./anime.es-BqW8JHZi.js');
8
8
  var facebook = require('./facebook-DbXua6B9.js');
9
9
  var mail = require('./mail-C9D8MHae.js');
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-C_WIlgE2.js');
6
+ var index = require('./index-f6loD1zL.js');
7
7
  var facebook = require('./facebook-DbXua6B9.js');
8
8
 
9
9
  var instagram = `<!-- Generated by IcoMoon.io -->
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-C_WIlgE2.js');
6
+ var index = require('./index-f6loD1zL.js');
7
7
 
8
8
  const sallaTabContentCss = "";
9
9