@salla.sa/twilight-components 3.0.25 → 3.0.26

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 (368) hide show
  1. package/dist/cjs/{Helper-BSFw7uVh.js → Helper-Di1G8EnP.js} +1 -1
  2. package/dist/cjs/{filepond-DzJcpvBM.js → filepond-DU_-t59i.js} +1 -1
  3. package/dist/cjs/{filepond-plugin-file-poster-BILkbyw_.js → filepond-plugin-file-poster-CYpSqb6i.js} +1 -1
  4. package/dist/cjs/{filepond-plugin-file-validate-size-DIJUAZji.js → filepond-plugin-file-validate-size-a_tUhUBx.js} +1 -1
  5. package/dist/cjs/{filepond-plugin-file-validate-type-4lpOf3hf.js → filepond-plugin-file-validate-type-D_X7irXu.js} +1 -1
  6. package/dist/cjs/{filepond-plugin-image-edit-DtE3Wj_4.js → filepond-plugin-image-edit-BRP3GZ31.js} +1 -1
  7. package/dist/cjs/{filepond-plugin-image-exif-orientation-Dc_jwifJ.js → filepond-plugin-image-exif-orientation-CiHIpg-4.js} +1 -1
  8. package/dist/cjs/{filepond-plugin-image-preview-D_8qt0dd.js → filepond-plugin-image-preview-CKT6x8T1.js} +1 -1
  9. package/dist/cjs/{index-D0d25H-r.js → index-BLPUgwXq.js} +6 -6
  10. package/dist/cjs/info-Do5bVPmK.js +13 -0
  11. package/dist/cjs/{intlTelInput-DqmuleM6.js → intlTelInput-CyL5UDfU.js} +1 -1
  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 +2 -2
  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 +3 -9
  18. package/dist/cjs/salla-app-install-alert.cjs.entry.js +1 -1
  19. package/dist/cjs/salla-applied-filters.cjs.entry.js +2 -2
  20. package/dist/cjs/salla-apps-icons.cjs.entry.js +1 -1
  21. package/dist/cjs/salla-attachment-view_9.cjs.entry.js +11 -11
  22. package/dist/cjs/salla-badge.cjs.entry.js +1 -1
  23. package/dist/cjs/salla-basket-gap.cjs.entry.js +1 -1
  24. package/dist/cjs/salla-bullet-delivery_3.cjs.entry.js +1 -1
  25. package/dist/cjs/salla-cart-coupons.cjs.entry.js +1 -1
  26. package/dist/cjs/salla-cart-item-offers_2.cjs.entry.js +1 -1
  27. package/dist/cjs/salla-cart-summary-card.cjs.entry.js +120 -5
  28. package/dist/cjs/salla-cashback-banner.cjs.entry.js +1 -1
  29. package/dist/cjs/salla-comment-factors.cjs.entry.js +1 -1
  30. package/dist/cjs/salla-comment-form_9.cjs.entry.js +2 -2
  31. package/dist/cjs/salla-conditional-offer.cjs.entry.js +1 -1
  32. package/dist/cjs/salla-contacts.cjs.entry.js +1 -1
  33. package/dist/cjs/salla-cookies-bar.cjs.entry.js +1 -1
  34. package/dist/cjs/salla-count-down.cjs.entry.js +1 -1
  35. package/dist/cjs/salla-custom-fields.cjs.entry.js +1 -1
  36. package/dist/cjs/salla-delivery-promise.cjs.entry.js +1 -1
  37. package/dist/cjs/salla-edit-order-button.cjs.entry.js +1 -1
  38. package/dist/cjs/salla-filters-widget.cjs.entry.js +2 -2
  39. package/dist/cjs/salla-filters.cjs.entry.js +2 -2
  40. package/dist/cjs/salla-free-shipping-banner.cjs.entry.js +1 -1
  41. package/dist/cjs/salla-free-shipping-tag.cjs.entry.js +1 -1
  42. package/dist/cjs/salla-fulfillment-methods.cjs.entry.js +1 -1
  43. package/dist/cjs/salla-gift-card-redeem_2.cjs.entry.js +1 -1
  44. package/dist/cjs/salla-gifting.cjs.entry.js +1 -1
  45. package/dist/cjs/salla-hook.cjs.entry.js +1 -1
  46. package/dist/cjs/salla-infinite-scroll.cjs.entry.js +2 -2
  47. package/dist/cjs/salla-installment.cjs.entry.js +1 -1
  48. package/dist/cjs/salla-list-tile.cjs.entry.js +1 -1
  49. package/dist/cjs/salla-localization-modal.cjs.entry.js +1 -1
  50. package/dist/cjs/salla-login-modal.cjs.entry.js +1 -1
  51. package/dist/cjs/salla-loyalty-banner_10.cjs.entry.js +1 -1
  52. package/dist/cjs/salla-loyalty-exchange-product-card.cjs.entry.js +1 -1
  53. package/dist/cjs/salla-loyalty-points-banner.cjs.entry.js +1 -1
  54. package/dist/cjs/salla-loyalty-points-history.cjs.entry.js +1 -1
  55. package/dist/cjs/salla-loyalty-prize-item.cjs.entry.js +1 -1
  56. package/dist/cjs/salla-loyalty.cjs.entry.js +1 -1
  57. package/dist/cjs/salla-maintenance-alert.cjs.entry.js +1 -1
  58. package/dist/cjs/salla-map_3.cjs.entry.js +1 -1
  59. package/dist/cjs/salla-menu.cjs.entry.js +1 -1
  60. package/dist/cjs/salla-metadata.cjs.entry.js +1 -1
  61. package/dist/cjs/salla-mobile-update-modal.cjs.entry.js +1 -1
  62. package/dist/cjs/salla-multiple-bundle-product-cart_2.cjs.entry.js +1 -1
  63. package/dist/cjs/salla-multiple-bundle-product-options-modal_2.cjs.entry.js +1 -1
  64. package/dist/cjs/salla-multiple-bundle-product.cjs.entry.js +1 -1
  65. package/dist/cjs/salla-next-order-coupon.cjs.entry.js +1 -1
  66. package/dist/cjs/salla-notification-item_2.cjs.entry.js +2 -2
  67. package/dist/cjs/salla-offer-modal.cjs.entry.js +1 -1
  68. package/dist/cjs/salla-offer.cjs.entry.js +1 -1
  69. package/dist/cjs/salla-order-branch.cjs.entry.js +1 -1
  70. package/dist/cjs/salla-order-cancel.cjs.entry.js +1 -1
  71. package/dist/cjs/salla-order-details-multiple-bundle-product.cjs.entry.js +1 -1
  72. package/dist/cjs/salla-order-details-options.cjs.entry.js +1 -1
  73. package/dist/cjs/salla-order-details.cjs.entry.js +1 -1
  74. package/dist/cjs/salla-order-edit-item.cjs.entry.js +1 -1
  75. package/dist/cjs/salla-order-edit-product-card.cjs.entry.js +1 -1
  76. package/dist/cjs/salla-order-edit.cjs.entry.js +1 -1
  77. package/dist/cjs/salla-order-items.cjs.entry.js +1 -1
  78. package/dist/cjs/salla-order-options-modal.cjs.entry.js +1 -1
  79. package/dist/cjs/salla-order-payment.cjs.entry.js +1 -1
  80. package/dist/cjs/salla-order-rewards.cjs.entry.js +1 -1
  81. package/dist/cjs/salla-order-shipments.cjs.entry.js +1 -1
  82. package/dist/cjs/salla-order-summary.cjs.entry.js +1 -1
  83. package/dist/cjs/salla-order-totals-card.cjs.entry.js +27 -6
  84. package/dist/cjs/salla-orders.cjs.entry.js +2 -2
  85. package/dist/cjs/salla-payments.cjs.entry.js +1 -1
  86. package/dist/cjs/salla-placeholder.cjs.entry.js +1 -1
  87. package/dist/cjs/salla-price-range.cjs.entry.js +1 -1
  88. package/dist/cjs/salla-product-card-embed.cjs.entry.js +1 -1
  89. package/dist/cjs/salla-product-card.cjs.entry.js +1 -1
  90. package/dist/cjs/salla-product-size-guide.cjs.entry.js +1 -1
  91. package/dist/cjs/salla-products-list.cjs.entry.js +2 -2
  92. package/dist/cjs/salla-products-slider.cjs.entry.js +2 -2
  93. package/dist/cjs/salla-quick-order.cjs.entry.js +1 -1
  94. package/dist/cjs/salla-rating-modal-v2.cjs.entry.js +2 -2
  95. package/dist/cjs/salla-rating-modal.cjs.entry.js +2 -2
  96. package/dist/cjs/salla-review-factors-tags.cjs.entry.js +1 -1
  97. package/dist/cjs/salla-review-order-item.cjs.entry.js +1 -1
  98. package/dist/cjs/salla-scopes.cjs.entry.js +1 -1
  99. package/dist/cjs/salla-search-product-card.cjs.entry.js +1 -1
  100. package/dist/cjs/salla-search.cjs.entry.js +2 -2
  101. package/dist/cjs/salla-skeleton.cjs.entry.js +1 -1
  102. package/dist/cjs/salla-social-share.cjs.entry.js +1 -1
  103. package/dist/cjs/salla-social.cjs.entry.js +1 -1
  104. package/dist/cjs/salla-tab-content_3.cjs.entry.js +1 -1
  105. package/dist/cjs/salla-thank-you-header.cjs.entry.js +1 -1
  106. package/dist/cjs/salla-thank-you-page.cjs.entry.js +1 -1
  107. package/dist/cjs/salla-tiered-offer.cjs.entry.js +1 -1
  108. package/dist/cjs/salla-trust-badges.cjs.entry.js +1 -1
  109. package/dist/cjs/salla-user-menu.cjs.entry.js +1 -1
  110. package/dist/cjs/salla-user-profile.cjs.entry.js +1 -1
  111. package/dist/cjs/salla-user-settings.cjs.entry.js +1 -1
  112. package/dist/cjs/salla-verify.cjs.entry.js +1 -1
  113. package/dist/cjs/salla-wallet.cjs.entry.js +1 -1
  114. package/dist/cjs/salla-wishlist-actions.cjs.entry.js +1 -1
  115. package/dist/cjs/salla-wishlist-summary.cjs.entry.js +2 -2
  116. package/dist/cjs/twilight.cjs.js +2 -2
  117. package/dist/cjs/{vanilla-picker-DP9Hy8IR.js → vanilla-picker-C9AVuYe1.js} +1 -1
  118. package/dist/collection/components/salla-cart-summary-card/salla-cart-summary-card.css +152 -59
  119. package/dist/collection/components/salla-cart-summary-card/salla-cart-summary-card.js +123 -4
  120. package/dist/collection/components/salla-order-totals-card/salla-order-totals-card.css +3 -0
  121. package/dist/collection/components/salla-order-totals-card/salla-order-totals-card.js +25 -4
  122. package/dist/components/index.js +2 -2
  123. package/dist/components/info.js +11 -0
  124. package/dist/components/salla-bottom-alert.js +2 -8
  125. package/dist/components/salla-cart-summary-card.js +124 -5
  126. package/dist/components/salla-order-totals-card.js +26 -5
  127. package/dist/docs.json +3 -3
  128. package/dist/esm/{Helper-DmnUAusv.js → Helper-CFEqaSN-.js} +1 -1
  129. package/dist/esm/{filepond-DZbzdjkK.js → filepond-BfW_OXid.js} +1 -1
  130. package/dist/esm/{filepond-plugin-file-poster-D9cjvoj-.js → filepond-plugin-file-poster-CsMiL-wZ.js} +1 -1
  131. package/dist/esm/{filepond-plugin-file-validate-size-D-kjllC-.js → filepond-plugin-file-validate-size-BuxVUFKn.js} +1 -1
  132. package/dist/esm/{filepond-plugin-file-validate-type-D9hsNaJl.js → filepond-plugin-file-validate-type-Dq94isoe.js} +1 -1
  133. package/dist/esm/{filepond-plugin-image-edit-CDHAxJY8.js → filepond-plugin-image-edit-CEVstXlA.js} +1 -1
  134. package/dist/esm/{filepond-plugin-image-exif-orientation-BGKiclwK.js → filepond-plugin-image-exif-orientation-BhViRs-X.js} +1 -1
  135. package/dist/esm/{filepond-plugin-image-preview-BUjvnt8G.js → filepond-plugin-image-preview-BrscXNqJ.js} +1 -1
  136. package/dist/esm/{index-ze9e0dxM.js → index-g-_4am8C.js} +6 -6
  137. package/dist/esm/info-OdOOjQZO.js +11 -0
  138. package/dist/esm/{intlTelInput-BkYRB6km.js → intlTelInput-PsSXBr__.js} +1 -1
  139. package/dist/esm/loader.js +3 -3
  140. package/dist/esm/salla-accordion-body_2.entry.js +1 -1
  141. package/dist/esm/salla-accordion_6.entry.js +2 -2
  142. package/dist/esm/salla-add-product-button_5.entry.js +2 -2
  143. package/dist/esm/salla-advertisement.entry.js +1 -1
  144. package/dist/esm/salla-alert_2.entry.js +3 -9
  145. package/dist/esm/salla-app-install-alert.entry.js +1 -1
  146. package/dist/esm/salla-applied-filters.entry.js +2 -2
  147. package/dist/esm/salla-apps-icons.entry.js +1 -1
  148. package/dist/esm/salla-attachment-view_9.entry.js +11 -11
  149. package/dist/esm/salla-badge.entry.js +1 -1
  150. package/dist/esm/salla-basket-gap.entry.js +1 -1
  151. package/dist/esm/salla-bullet-delivery_3.entry.js +1 -1
  152. package/dist/esm/salla-cart-coupons.entry.js +1 -1
  153. package/dist/esm/salla-cart-item-offers_2.entry.js +1 -1
  154. package/dist/esm/salla-cart-summary-card.entry.js +120 -5
  155. package/dist/esm/salla-cashback-banner.entry.js +1 -1
  156. package/dist/esm/salla-comment-factors.entry.js +1 -1
  157. package/dist/esm/salla-comment-form_9.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 +2 -2
  166. package/dist/esm/salla-filters.entry.js +2 -2
  167. package/dist/esm/salla-free-shipping-banner.entry.js +1 -1
  168. package/dist/esm/salla-free-shipping-tag.entry.js +1 -1
  169. package/dist/esm/salla-fulfillment-methods.entry.js +1 -1
  170. package/dist/esm/salla-gift-card-redeem_2.entry.js +1 -1
  171. package/dist/esm/salla-gifting.entry.js +1 -1
  172. package/dist/esm/salla-hook.entry.js +1 -1
  173. package/dist/esm/salla-infinite-scroll.entry.js +2 -2
  174. package/dist/esm/salla-installment.entry.js +1 -1
  175. package/dist/esm/salla-list-tile.entry.js +1 -1
  176. package/dist/esm/salla-localization-modal.entry.js +1 -1
  177. package/dist/esm/salla-login-modal.entry.js +1 -1
  178. package/dist/esm/salla-loyalty-banner_10.entry.js +1 -1
  179. package/dist/esm/salla-loyalty-exchange-product-card.entry.js +1 -1
  180. package/dist/esm/salla-loyalty-points-banner.entry.js +1 -1
  181. package/dist/esm/salla-loyalty-points-history.entry.js +1 -1
  182. package/dist/esm/salla-loyalty-prize-item.entry.js +1 -1
  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_3.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-mobile-update-modal.entry.js +1 -1
  189. package/dist/esm/salla-multiple-bundle-product-cart_2.entry.js +1 -1
  190. package/dist/esm/salla-multiple-bundle-product-options-modal_2.entry.js +1 -1
  191. package/dist/esm/salla-multiple-bundle-product.entry.js +1 -1
  192. package/dist/esm/salla-next-order-coupon.entry.js +1 -1
  193. package/dist/esm/salla-notification-item_2.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 +1 -1
  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-items.entry.js +1 -1
  205. package/dist/esm/salla-order-options-modal.entry.js +1 -1
  206. package/dist/esm/salla-order-payment.entry.js +1 -1
  207. package/dist/esm/salla-order-rewards.entry.js +1 -1
  208. package/dist/esm/salla-order-shipments.entry.js +1 -1
  209. package/dist/esm/salla-order-summary.entry.js +1 -1
  210. package/dist/esm/salla-order-totals-card.entry.js +27 -6
  211. package/dist/esm/salla-orders.entry.js +2 -2
  212. package/dist/esm/salla-payments.entry.js +1 -1
  213. package/dist/esm/salla-placeholder.entry.js +1 -1
  214. package/dist/esm/salla-price-range.entry.js +1 -1
  215. package/dist/esm/salla-product-card-embed.entry.js +1 -1
  216. package/dist/esm/salla-product-card.entry.js +1 -1
  217. package/dist/esm/salla-product-size-guide.entry.js +1 -1
  218. package/dist/esm/salla-products-list.entry.js +2 -2
  219. package/dist/esm/salla-products-slider.entry.js +2 -2
  220. package/dist/esm/salla-quick-order.entry.js +1 -1
  221. package/dist/esm/salla-rating-modal-v2.entry.js +2 -2
  222. package/dist/esm/salla-rating-modal.entry.js +2 -2
  223. package/dist/esm/salla-review-factors-tags.entry.js +1 -1
  224. package/dist/esm/salla-review-order-item.entry.js +1 -1
  225. package/dist/esm/salla-scopes.entry.js +1 -1
  226. package/dist/esm/salla-search-product-card.entry.js +1 -1
  227. package/dist/esm/salla-search.entry.js +2 -2
  228. package/dist/esm/salla-skeleton.entry.js +1 -1
  229. package/dist/esm/salla-social-share.entry.js +1 -1
  230. package/dist/esm/salla-social.entry.js +1 -1
  231. package/dist/esm/salla-tab-content_3.entry.js +1 -1
  232. package/dist/esm/salla-thank-you-header.entry.js +1 -1
  233. package/dist/esm/salla-thank-you-page.entry.js +1 -1
  234. package/dist/esm/salla-tiered-offer.entry.js +1 -1
  235. package/dist/esm/salla-trust-badges.entry.js +1 -1
  236. package/dist/esm/salla-user-menu.entry.js +1 -1
  237. package/dist/esm/salla-user-profile.entry.js +1 -1
  238. package/dist/esm/salla-user-settings.entry.js +1 -1
  239. package/dist/esm/salla-verify.entry.js +1 -1
  240. package/dist/esm/salla-wallet.entry.js +1 -1
  241. package/dist/esm/salla-wishlist-actions.entry.js +1 -1
  242. package/dist/esm/salla-wishlist-summary.entry.js +2 -2
  243. package/dist/esm/twilight.js +3 -3
  244. package/dist/esm/{vanilla-picker-CxhuwWDi.js → vanilla-picker-D3lgt9go.js} +1 -1
  245. package/dist/twilight/{p-2dcd24fe.entry.js → p-02006b3a.entry.js} +1 -1
  246. package/dist/twilight/{p-67cf7454.entry.js → p-0207dae4.entry.js} +1 -1
  247. package/dist/twilight/{p-75f7f1d8.entry.js → p-025e30c7.entry.js} +1 -1
  248. package/dist/twilight/{p-97c5b11d.entry.js → p-058e4be3.entry.js} +1 -1
  249. package/dist/twilight/{p-dfde387f.entry.js → p-0ce6514e.entry.js} +1 -1
  250. package/dist/twilight/{p-474d882c.entry.js → p-0d94c90e.entry.js} +1 -1
  251. package/dist/twilight/{p-5b118b5b.entry.js → p-0e423424.entry.js} +1 -1
  252. package/dist/twilight/{p-a7566af2.entry.js → p-0f7db4a1.entry.js} +1 -1
  253. package/dist/twilight/{p-57fafaba.entry.js → p-12038aef.entry.js} +1 -1
  254. package/dist/twilight/{p-770142fe.entry.js → p-12dcb9a0.entry.js} +1 -1
  255. package/dist/twilight/{p-024ecda2.entry.js → p-14311053.entry.js} +1 -1
  256. package/dist/twilight/{p-e3dd9502.entry.js → p-151df172.entry.js} +1 -1
  257. package/dist/twilight/{p-8077d8b6.entry.js → p-152ac425.entry.js} +1 -1
  258. package/dist/twilight/{p-11eb8675.entry.js → p-1b6d84a8.entry.js} +1 -1
  259. package/dist/twilight/{p-78c04993.entry.js → p-1d31b983.entry.js} +1 -1
  260. package/dist/twilight/{p-7fffa509.entry.js → p-1dcbbbbf.entry.js} +1 -1
  261. package/dist/twilight/{p-ed96c703.entry.js → p-1df3fe4a.entry.js} +1 -1
  262. package/dist/twilight/{p-73649c81.entry.js → p-22271248.entry.js} +1 -1
  263. package/dist/twilight/{p-b6098938.entry.js → p-2834a4d3.entry.js} +1 -1
  264. package/dist/twilight/{p-9fe5c0f5.entry.js → p-2907057d.entry.js} +1 -1
  265. package/dist/twilight/{p-455a4702.entry.js → p-2d3b29d9.entry.js} +1 -1
  266. package/dist/twilight/{p-fb955257.entry.js → p-2db9ee05.entry.js} +1 -1
  267. package/dist/twilight/{p-2aa9147c.entry.js → p-2e4ce75b.entry.js} +1 -1
  268. package/dist/twilight/{p-bf5b5f52.entry.js → p-329b7cc2.entry.js} +1 -1
  269. package/dist/twilight/{p-7a985fe3.entry.js → p-3c2e7bef.entry.js} +1 -1
  270. package/dist/twilight/{p-9acfe389.entry.js → p-3fedd652.entry.js} +1 -1
  271. package/dist/twilight/{p-446e3f38.entry.js → p-4247db1a.entry.js} +1 -1
  272. package/dist/twilight/{p-d89328d7.entry.js → p-496f950b.entry.js} +1 -1
  273. package/dist/twilight/{p-0fd15433.entry.js → p-49cd89d1.entry.js} +1 -1
  274. package/dist/twilight/p-4b8bb969.entry.js +4 -0
  275. package/dist/twilight/{p-97fa91db.entry.js → p-5166cd84.entry.js} +1 -1
  276. package/dist/twilight/{p-dbb4db25.entry.js → p-5350ba07.entry.js} +1 -1
  277. package/dist/twilight/{p-c122e9c1.entry.js → p-54eec74a.entry.js} +1 -1
  278. package/dist/twilight/{p-93571975.entry.js → p-55861492.entry.js} +1 -1
  279. package/dist/twilight/{p-6d6b99fe.entry.js → p-6070b995.entry.js} +1 -1
  280. package/dist/twilight/{p-4c191ab4.entry.js → p-62a3394a.entry.js} +1 -1
  281. package/dist/twilight/{p-d300a117.entry.js → p-63c982e1.entry.js} +1 -1
  282. package/dist/twilight/{p-08be494e.entry.js → p-6432401e.entry.js} +1 -1
  283. package/dist/twilight/{p-e23b84bf.entry.js → p-64ae09b4.entry.js} +1 -1
  284. package/dist/twilight/{p-c6f09614.entry.js → p-685a61fa.entry.js} +1 -1
  285. package/dist/twilight/{p-7731e280.entry.js → p-710a42d2.entry.js} +1 -1
  286. package/dist/twilight/{p-d089ac6d.entry.js → p-72e13a12.entry.js} +1 -1
  287. package/dist/twilight/{p-d2396143.entry.js → p-73612f04.entry.js} +1 -1
  288. package/dist/twilight/{p-f054cf8e.entry.js → p-74602eb0.entry.js} +1 -1
  289. package/dist/twilight/{p-7790a9a1.entry.js → p-76e238b3.entry.js} +1 -1
  290. package/dist/twilight/{p-5ceda3d5.entry.js → p-78240cb3.entry.js} +1 -1
  291. package/dist/twilight/{p-331003bc.entry.js → p-78a7b46e.entry.js} +1 -1
  292. package/dist/twilight/{p-3a2ff4d6.entry.js → p-79f9403a.entry.js} +1 -1
  293. package/dist/twilight/{p-bd06c200.entry.js → p-7f4f300a.entry.js} +1 -1
  294. package/dist/twilight/{p-a865995d.entry.js → p-7fc9a0bf.entry.js} +1 -1
  295. package/dist/twilight/{p-e849f5ef.entry.js → p-8016f122.entry.js} +1 -1
  296. package/dist/twilight/{p-5e0f85ae.entry.js → p-801eb7d8.entry.js} +1 -1
  297. package/dist/twilight/{p-5d8937c5.entry.js → p-81ec67d8.entry.js} +1 -1
  298. package/dist/twilight/{p-89598ad3.entry.js → p-83a1123b.entry.js} +1 -1
  299. package/dist/twilight/{p-776f9492.entry.js → p-84b9416e.entry.js} +1 -1
  300. package/dist/twilight/{p-b297fe2e.entry.js → p-8783aa81.entry.js} +1 -1
  301. package/dist/twilight/{p-02b7dfcc.entry.js → p-87ba0ca2.entry.js} +1 -1
  302. package/dist/twilight/{p-bb137dbb.entry.js → p-8cbbe961.entry.js} +1 -1
  303. package/dist/twilight/{p-75ad7f14.entry.js → p-8ec7866e.entry.js} +1 -1
  304. package/dist/twilight/{p-45a7d444.entry.js → p-92cbac49.entry.js} +1 -1
  305. package/dist/twilight/{p-1ca39f1c.entry.js → p-93a85463.entry.js} +1 -1
  306. package/dist/twilight/{p-0c022fbd.entry.js → p-95f8caa0.entry.js} +1 -1
  307. package/dist/twilight/{p-ffc7f526.entry.js → p-965c3ee8.entry.js} +1 -1
  308. package/dist/twilight/{p-519cf4c2.entry.js → p-98b24f1d.entry.js} +1 -1
  309. package/dist/twilight/{p-BpJsOjKP.js → p-9h9-vkr9.js} +1 -1
  310. package/dist/twilight/{p-CNQaYCUJ.js → p-B6WlUws-.js} +1 -1
  311. package/dist/twilight/{p-C9ldyQUq.js → p-ByR59DTl.js} +2 -2
  312. package/dist/twilight/{p-DOUAavek.js → p-CB552NRi.js} +1 -1
  313. package/dist/twilight/{p-CICtuB_u.js → p-CWi90iJ1.js} +1 -1
  314. package/dist/twilight/{p-BjUh9YCs.js → p-DjCyIWR1.js} +1 -1
  315. package/dist/twilight/{p-wYYV5ykR.js → p-EXd4paYi.js} +1 -1
  316. package/dist/twilight/{p-BlPdaFn2.js → p-MEqjtc_i.js} +1 -1
  317. package/dist/twilight/p-OdOOjQZO.js +4 -0
  318. package/dist/twilight/{p-cykIAOlk.js → p-WsiD2WP-.js} +1 -1
  319. package/dist/twilight/{p-B8nGVDvQ.js → p-_ulhlUUw.js} +1 -1
  320. package/dist/twilight/{p-47c79c49.entry.js → p-a185d836.entry.js} +1 -1
  321. package/dist/twilight/p-a2147ef3.entry.js +4 -0
  322. package/dist/twilight/{p-71ce8e4f.entry.js → p-a21bc7ee.entry.js} +1 -1
  323. package/dist/twilight/{p-37b64e36.entry.js → p-a255167f.entry.js} +1 -1
  324. package/dist/twilight/{p-bf65d2fa.entry.js → p-a76a2a5d.entry.js} +1 -1
  325. package/dist/twilight/{p-4ec15515.entry.js → p-a7aa162c.entry.js} +1 -1
  326. package/dist/twilight/{p-f9dd6b3e.entry.js → p-aa5be7cf.entry.js} +1 -1
  327. package/dist/twilight/{p-b71673ee.entry.js → p-ac31a382.entry.js} +1 -1
  328. package/dist/twilight/{p-9a2567e2.entry.js → p-ad95bb9a.entry.js} +1 -1
  329. package/dist/twilight/{p-8b0b6bca.entry.js → p-ae4ea8c9.entry.js} +1 -1
  330. package/dist/twilight/{p-c0301e00.entry.js → p-ba601791.entry.js} +1 -1
  331. package/dist/twilight/{p-008740fe.entry.js → p-c0423cfc.entry.js} +1 -1
  332. package/dist/twilight/{p-8d3c5d1f.entry.js → p-c861b955.entry.js} +1 -1
  333. package/dist/twilight/{p-792494c8.entry.js → p-c96e9150.entry.js} +1 -1
  334. package/dist/twilight/{p-d61298f8.entry.js → p-cdd8e44a.entry.js} +1 -1
  335. package/dist/twilight/{p-830abcc1.entry.js → p-cf3285f1.entry.js} +1 -1
  336. package/dist/twilight/p-d02dee6d.entry.js +4 -0
  337. package/dist/twilight/{p-f7c06bee.entry.js → p-d204326c.entry.js} +1 -1
  338. package/dist/twilight/{p-cbd056ba.entry.js → p-d304b8fc.entry.js} +1 -1
  339. package/dist/twilight/{p-9dd7cf71.entry.js → p-da63cbf0.entry.js} +1 -1
  340. package/dist/twilight/p-db2b9499.entry.js +4 -0
  341. package/dist/twilight/{p-59694c45.entry.js → p-dba5b89a.entry.js} +1 -1
  342. package/dist/twilight/{p-f23ada45.entry.js → p-e0387b79.entry.js} +1 -1
  343. package/dist/twilight/{p-12a52f1b.entry.js → p-e0dc2c2d.entry.js} +1 -1
  344. package/dist/twilight/{p-16e2a110.entry.js → p-e3d37ab2.entry.js} +1 -1
  345. package/dist/twilight/{p-5f9d87ec.entry.js → p-e59a8901.entry.js} +1 -1
  346. package/dist/twilight/{p-dceb3725.entry.js → p-e776afcd.entry.js} +1 -1
  347. package/dist/twilight/{p-03b2df97.entry.js → p-e8921db3.entry.js} +1 -1
  348. package/dist/twilight/{p-da0349f9.entry.js → p-ec9434d9.entry.js} +1 -1
  349. package/dist/twilight/{p-cdeaf60b.entry.js → p-ee7e6ce9.entry.js} +1 -1
  350. package/dist/twilight/{p-3ec3e9fb.entry.js → p-f0ab3933.entry.js} +1 -1
  351. package/dist/twilight/{p-cb961f05.entry.js → p-f16bdaf5.entry.js} +1 -1
  352. package/dist/twilight/{p-a7849674.entry.js → p-f2718aec.entry.js} +1 -1
  353. package/dist/twilight/{p-da60995f.entry.js → p-f581bb32.entry.js} +1 -1
  354. package/dist/twilight/{p-de10d0c3.entry.js → p-f6981856.entry.js} +1 -1
  355. package/dist/twilight/{p-a1a650ab.entry.js → p-f7f8d758.entry.js} +1 -1
  356. package/dist/twilight/{p-20949dfb.entry.js → p-fbff3efd.entry.js} +1 -1
  357. package/dist/twilight/{p-07e581af.entry.js → p-ff890108.entry.js} +1 -1
  358. package/dist/twilight/{p-4cf81a44.entry.js → p-fffd562d.entry.js} +1 -1
  359. package/dist/twilight/{p-ze9e0dxM.js → p-g-_4am8C.js} +1 -1
  360. package/dist/twilight/twilight.esm.js +1 -1
  361. package/dist/types/components/salla-cart-summary-card/salla-cart-summary-card.d.ts +26 -0
  362. package/dist/types/components/salla-order-totals-card/interfaces.d.ts +8 -3
  363. package/dist/types/components/salla-order-totals-card/salla-order-totals-card.d.ts +2 -1
  364. package/package.json +5 -5
  365. package/dist/twilight/p-0c0b2b36.entry.js +0 -4
  366. package/dist/twilight/p-61b98119.entry.js +0 -4
  367. package/dist/twilight/p-8d096f95.entry.js +0 -4
  368. package/dist/twilight/p-be8c42f1.entry.js +0 -4
@@ -0,0 +1,11 @@
1
+ /*!
2
+ * Crafted with ❤ by Salla
3
+ */
4
+ var InfoIcon = `<!-- Generated by IcoMoon.io -->
5
+ <svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 32 32">
6
+ <title>info</title>
7
+ <path d="M16 13.333c-0.737 0-1.333 0.596-1.333 1.333v9.333c0 0.737 0.596 1.333 1.333 1.333s1.333-0.596 1.333-1.333v-9.333c0-0.737-0.596-1.333-1.333-1.333zM16 7.987c-0.737 0-1.333 0.596-1.333 1.333v0.013c0 0.737 0.596 1.327 1.333 1.327s1.333-0.603 1.333-1.34-0.596-1.333-1.333-1.333zM16 0c-8.823 0-16 7.177-16 16s7.177 16 16 16 16-7.177 16-16-7.177-16-16-16zM16 29.333c-7.352 0-13.333-5.981-13.333-13.333s5.981-13.333 13.333-13.333 13.333 5.981 13.333 13.333-5.981 13.333-13.333 13.333z"></path>
8
+ </svg>
9
+ `;
10
+
11
+ export { InfoIcon as I };
@@ -2,6 +2,7 @@
2
2
  * Crafted with ❤ by Salla
3
3
  */
4
4
  import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal/client';
5
+ import { I as InfoIcon } from './info.js';
5
6
  import { P as PendingOrdersIcon } from './cart.js';
6
7
  import { I as ImageIcon } from './image.js';
7
8
  import { s as setTranslationDefault } from './translate.js';
@@ -9,13 +10,6 @@ import { d as defineCustomElement$4 } from './salla-button2.js';
9
10
  import { d as defineCustomElement$3 } from './salla-drawer2.js';
10
11
  import { d as defineCustomElement$2 } from './salla-loading2.js';
11
12
 
12
- var infoIcon = `<!-- Generated by IcoMoon.io -->
13
- <svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 32 32">
14
- <title>info</title>
15
- <path d="M16 13.333c-0.737 0-1.333 0.596-1.333 1.333v9.333c0 0.737 0.596 1.333 1.333 1.333s1.333-0.596 1.333-1.333v-9.333c0-0.737-0.596-1.333-1.333-1.333zM16 7.987c-0.737 0-1.333 0.596-1.333 1.333v0.013c0 0.737 0.596 1.327 1.333 1.327s1.333-0.603 1.333-1.34-0.596-1.333-1.333-1.333zM16 0c-8.823 0-16 7.177-16 16s7.177 16 16 16 16-7.177 16-16-7.177-16-16-16zM16 29.333c-7.352 0-13.333-5.981-13.333-13.333s5.981-13.333 13.333-13.333 13.333 5.981 13.333 13.333-5.981 13.333-13.333 13.333z"></path>
16
- </svg>
17
- `;
18
-
19
13
  var moneyIcon = `<!-- Generated by IcoMoon.io -->
20
14
  <svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 32 32">
21
15
  <title>money-card</title>
@@ -160,7 +154,7 @@ const SallaBottomAlert$1 = /*@__PURE__*/ proxyCustomElement(class SallaBottomAle
160
154
  }
161
155
  render() {
162
156
  const hasTemplate = this.template && typeof this.template === 'object' && Object.keys(this.template).length > 0;
163
- return (h(Host, { key: 'e3aa3e9170abe209c668d986cdee8a1e218796b5', class: `s-bottom-alert-wrapper ${hasTemplate ? 's-bottom-alert-wrapper-with-template' : ''}` }, hasTemplate && (h("div", { key: '92c6cce5cee33c11f8efe6365e647967fa7f5233', class: "s-bottom-alert-logo-section" }, h("img", { key: '4ad9449846a7e30daaa1b6bcc9739c91073e8c37', src: "https://cdn.salla.network/images/logo/logo-light.svg", alt: "Salla", class: "s-bottom-alert-logo" }), h("span", { key: '7075d44f4a2c73661f491a9dd66cc59bda60db58', class: "s-bottom-alert-logo-text" }, this.readyStores))), h("div", { key: 'd0f63ff07acd57b6f7f5663dc40e533a1cab6b99', class: "s-bottom-alert-content" }, h("div", { key: 'bbacb8bba096ab59ccba5faf90c7a9d67b618831', class: "flex items-center gap-2" }, h("div", { key: '8d6fd88b4865d9eb736bad0caf37aabd48e462f2', class: "s-bottom-alert-icon" }, this.icon ? h("i", { class: this.icon }) : h("i", { innerHTML: infoIcon })), h("div", { key: '92beef20dc89d12250dfcd4a07f5eaa0d69e9612', class: "s-bottom-alert-message" }, this.message ? (this.message) : hasTemplate ? (h("span", { class: "flex flex-wrap items-center gap-1" }, this.defaultMessage, h("span", { class: {
157
+ return (h(Host, { key: 'e3aa3e9170abe209c668d986cdee8a1e218796b5', class: `s-bottom-alert-wrapper ${hasTemplate ? 's-bottom-alert-wrapper-with-template' : ''}` }, hasTemplate && (h("div", { key: '92c6cce5cee33c11f8efe6365e647967fa7f5233', class: "s-bottom-alert-logo-section" }, h("img", { key: '4ad9449846a7e30daaa1b6bcc9739c91073e8c37', src: "https://cdn.salla.network/images/logo/logo-light.svg", alt: "Salla", class: "s-bottom-alert-logo" }), h("span", { key: '7075d44f4a2c73661f491a9dd66cc59bda60db58', class: "s-bottom-alert-logo-text" }, this.readyStores))), h("div", { key: 'd0f63ff07acd57b6f7f5663dc40e533a1cab6b99', class: "s-bottom-alert-content" }, h("div", { key: 'bbacb8bba096ab59ccba5faf90c7a9d67b618831', class: "flex items-center gap-2" }, h("div", { key: '8d6fd88b4865d9eb736bad0caf37aabd48e462f2', class: "s-bottom-alert-icon" }, this.icon ? h("i", { class: this.icon }) : h("i", { innerHTML: InfoIcon })), h("div", { key: '92beef20dc89d12250dfcd4a07f5eaa0d69e9612', class: "s-bottom-alert-message" }, this.message ? (this.message) : hasTemplate ? (h("span", { class: "flex flex-wrap items-center gap-1" }, this.defaultMessage, h("span", { class: {
164
158
  's-bottom-alert-message-highlight': true,
165
159
  }, "aria-label": "Developer" }, this.salla), h("span", { innerHTML: salla.money(this.template.price) }))) : (this.defaultMessage))), this.type !== 'banner' && (h("div", { key: '86d72792e488df2c1cd18929c8e4d92fac27488f', class: hasTemplate ? 's-bottom-alert-actions-group' : 's-bottom-alert-action' }, hasTemplate ? (this.loading ? (h("salla-loading", { size: "20" })) : (h("div", { class: "s-bottom-alert-actions-group-container" }, h("a", { class: "s-bottom-alert-action-link", onClick: () => this.handleAction() }, this.actionLabel || this.moreDetailsLabel), this.templateData?.link ? (h("button", { type: "button", class: "s-bottom-alert-action-purchase-button", onClick: () => window.open(this.templateData?.link, '_blank') }, this.buyTheTemplate)) : null))) : (h("salla-button", { href: this.actionUrl, size: "medium", onClick: () => this.handleAction(), width: "normal" }, this.actionLabel || this.defaultActionLabel)))), this.type === 'popup' && this.popup())));
166
160
  }
@@ -2,10 +2,11 @@
2
2
  * Crafted with ❤ by Salla
3
3
  */
4
4
  import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal/client';
5
+ import { I as InfoIcon } from './info.js';
5
6
  import { d as defineCustomElement$3 } from './salla-button2.js';
6
7
  import { d as defineCustomElement$2 } from './salla-skeleton2.js';
7
8
 
8
- const sallaCartSummaryCardCss = "/*!twlt*/:host{display:block}.sticky{position:sticky}.block{display:block}.transform{transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transition{transition-property:color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms}.\\!btn{display:inline-flex;flex:1 1 0%;align-items:center;justify-content:center;white-space:nowrap;border-radius:0.375rem;padding-left:1.5rem;padding-right:1.5rem;padding-bottom:0.625rem;padding-top:0.5rem;font-size:0.875rem;line-height:1.25rem;font-weight:700;transition-property:color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:300ms}.\\!btn:hover{opacity:0.8}.btn{display:inline-flex;flex:1 1 0%;align-items:center;justify-content:center;white-space:nowrap;border-radius:0.375rem;padding-left:1.5rem;padding-right:1.5rem;padding-bottom:0.625rem;padding-top:0.5rem;font-size:0.875rem;line-height:1.25rem;font-weight:700;transition-property:color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:300ms}.btn:hover{opacity:0.8}.s-cart-summary-card-sheet-title{margin-bottom:0.5rem;flex:1 1 0%;font-size:0.875rem;line-height:1.25rem;font-weight:700;--tw-text-opacity:1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.s-cart-summary-card-line{margin-bottom:0.5rem;display:flex;align-items:center;justify-content:space-between;font-size:0.875rem;line-height:1.25rem}.s-cart-summary-card-line span{--tw-text-opacity:1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.s-cart-summary-card-line b{font-size:1rem;line-height:1.5rem;font-weight:600;--tw-text-opacity:1;color:rgb(51 51 51 / var(--tw-text-opacity, 1))}.s-cart-summary-card-line--discount b{--tw-text-opacity:1 !important;color:rgb(220 38 38 / var(--tw-text-opacity, 1)) !important}.s-cart-summary-card-line--discount b *{--tw-text-opacity:1 !important;color:rgb(220 38 38 / var(--tw-text-opacity, 1)) !important}.s-cart-summary-card-bar-label{display:flex;flex-direction:column;gap:0.125rem}.s-cart-summary-card-bar-label-main{display:flex;align-items:baseline;gap:0.375rem}.s-cart-summary-card-bar-label-text{white-space:nowrap;font-size:1rem;line-height:1.5rem;font-weight:700;--tw-text-opacity:1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.s-cart-summary-card-bar-count{white-space:nowrap;font-size:0.75rem;line-height:1rem;--tw-text-opacity:1;color:rgb(115 115 115 / var(--tw-text-opacity, 1))}.s-cart-summary-card-bar-label-sub{font-size:11px;--tw-text-opacity:1;color:rgb(115 115 115 / var(--tw-text-opacity, 1))}.s-cart-summary-card-bar-totals{display:flex;flex-direction:column;align-items:flex-end;gap:0.375rem}.s-cart-summary-card-bar-totals-row{display:flex;align-items:center;gap:0.375rem}.s-cart-summary-card-bar-total{font-size:1rem;line-height:1.5rem;font-weight:700;--tw-text-opacity:1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.s-cart-summary-card-bar-original{font-size:1rem;line-height:1.5rem;--tw-text-opacity:1;color:rgb(156 163 175 / var(--tw-text-opacity, 1));text-decoration-line:line-through}.s-cart-summary-card-bar-savings-badge{display:inline-flex;width:max-content;align-items:center;gap:0.25rem;border-radius:var(--s-radius, 0.25rem);--tw-bg-opacity:1;background-color:rgb(239 251 246 / var(--tw-bg-opacity, 1));padding-left:0.5rem;padding-right:0.5rem;padding-top:0.125rem;padding-bottom:0.125rem;font-size:11px;font-weight:600;--tw-text-opacity:1;color:rgb(22 163 74 / var(--tw-text-opacity, 1))}.s-cart-summary-card-chevron{display:inline-flex;height:1.5rem;width:1.5rem;cursor:pointer;align-items:center;justify-content:center;border-width:0px;background-color:transparent;--tw-text-opacity:1;color:rgb(75 85 99 / var(--tw-text-opacity, 1));outline:2px solid transparent;outline-offset:2px}.s-cart-summary-card-chevron-icon{display:inline-flex;transition-property:transform;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:300ms}.s-cart-summary-card{display:block;--tw-bg-opacity:1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}@media (max-width: 1023px){.s-cart-summary-card{position:fixed;inset-inline:0;bottom:0;z-index:1;border-radius:24px 24px 0 0;box-shadow:0 -12px 24px -12px rgba(0, 0, 0, 0.12);transition:box-shadow 0.3s ease;padding-bottom:calc(env(safe-area-inset-bottom) + 0.5rem)}}@media (min-width: 1024px){.s-cart-summary-card{position:relative;border-radius:0.5rem;box-shadow:0 2px 6px rgba(0, 0, 0, 0.05);padding:1.25rem 1.5rem;margin-bottom:1.25rem}}@media (max-width: 1023px){.s-cart-summary-card--open{border-radius:0;box-shadow:none}}.s-cart-summary-card-sheet-wrap{display:grid;grid-template-rows:0fr;transition:grid-template-rows 0.4s cubic-bezier(0.32, 0.72, 0, 1), box-shadow 0.3s ease}@media (max-width: 1023px){.s-cart-summary-card-sheet-wrap{position:absolute;inset-inline:0;bottom:calc(100% - 1px);background:#fff;border-radius:24px 24px 0 0;overflow:hidden;box-shadow:0 -12px 24px -12px rgba(0, 0, 0, 0)}}@media (min-width: 1024px){.s-cart-summary-card-sheet-wrap{grid-template-rows:1fr}}@media (max-width: 1023px){.s-cart-summary-card-sheet-wrap--open{grid-template-rows:1fr;box-shadow:0 -12px 24px -12px rgba(0, 0, 0, 0.12)}}.s-cart-summary-card-sheet{min-height:0;overflow:hidden}@media (max-width: 1023px){.s-cart-summary-card-sheet-wrap--open .s-cart-summary-card-sheet{overflow-y:auto;max-height:70vh;-webkit-overflow-scrolling:touch;padding:0.75rem 1rem 0}}.s-cart-summary-card-sheet-header{display:flex;align-items:center;justify-content:space-between;gap:0.5rem}@media (max-width: 1023px){.s-cart-summary-card-sheet-header{padding-bottom:0.5rem}}.s-cart-summary-card-bar{display:flex;align-items:flex-start;justify-content:space-between;gap:0.75rem;--tw-bg-opacity:1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}@media (min-width: 1024px){.s-cart-summary-card-bar{margin-top:1rem}}@media (max-width: 1023px){.s-cart-summary-card-bar{padding:0.875rem 1rem 0.5rem;border-radius:24px 24px 0 0}.s-cart-summary-card--open .s-cart-summary-card-bar{padding-top:0;border-radius:0}}@media (min-width: 1024px){.s-cart-summary-card-action{padding-top:1rem}}@media (max-width: 1023px){.s-cart-summary-card-action{padding:0 1rem 0.75rem}}.s-cart-summary-card--open .s-cart-summary-card-chevron-icon{transform:rotate(180deg)}.s-cart-summary-card-action *:focus{outline:none}";
9
+ const sallaCartSummaryCardCss = "/*!twlt*/@charset \"UTF-8\";:host{display:block}.s-cart-summary-card-fee-tip-wrap{display:inline-flex;align-items:center}.s-cart-summary-card-fee-tip{appearance:none;border:0;background:transparent;padding:0;outline:none}.s-cart-summary-card-fee-tip svg{width:100%;height:100%;fill:currentColor}.s-cart-summary-card-fee-tip-bubble{position:fixed;transform:translateX(-50%);display:flex;flex-direction:column;gap:6px;min-width:132px;max-width:min(220px, 100vw - 24px);padding:10px 12px;border-radius:8px;background:var(--color-primary);color:var(--color-primary-reverse);line-height:1.35;white-space:nowrap;z-index:1000;pointer-events:none;box-shadow:0 4px 12px rgba(0, 0, 0, 0.15)}.s-cart-summary-card-fee-tip-bubble::after{content:\"\";position:absolute;bottom:100%;left:50%;transform:translateX(-50%);border:6px solid transparent;border-bottom-color:var(--color-primary)}.s-cart-summary-card-fee-tip-line{display:flex;align-items:baseline;justify-content:space-between;gap:12px;color:var(--color-primary-reverse)}.s-cart-summary-card-fee-tip-line-label{font-size:11px;font-weight:400;opacity:0.72}.s-cart-summary-card-fee-tip-line-value{font-size:13px;font-weight:700}.fixed{position:fixed}.sticky{position:sticky}.block{display:block}.transform{transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.resize{resize:both}.transition{transition-property:color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms}.\\!btn{display:inline-flex;flex:1 1 0%;align-items:center;justify-content:center;white-space:nowrap;border-radius:0.375rem;padding-left:1.5rem;padding-right:1.5rem;padding-bottom:0.625rem;padding-top:0.5rem;font-size:0.875rem;line-height:1.25rem;font-weight:700;transition-property:color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:300ms}.\\!btn:hover{opacity:0.8}.btn{display:inline-flex;flex:1 1 0%;align-items:center;justify-content:center;white-space:nowrap;border-radius:0.375rem;padding-left:1.5rem;padding-right:1.5rem;padding-bottom:0.625rem;padding-top:0.5rem;font-size:0.875rem;line-height:1.25rem;font-weight:700;transition-property:color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:300ms}.btn:hover{opacity:0.8}.s-cart-summary-card-sheet-title{margin-bottom:0.5rem;flex:1 1 0%;font-size:0.875rem;line-height:1.25rem;font-weight:700;--tw-text-opacity:1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.s-cart-summary-card-line{margin-bottom:0.5rem;display:flex;align-items:center;justify-content:space-between;font-size:0.875rem;line-height:1.25rem}.s-cart-summary-card-line>span{--tw-text-opacity:1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.s-cart-summary-card-line b{font-size:1rem;line-height:1.5rem;font-weight:600;--tw-text-opacity:1;color:rgb(51 51 51 / var(--tw-text-opacity, 1))}.s-cart-summary-card-line--discount b{--tw-text-opacity:1 !important;color:rgb(220 38 38 / var(--tw-text-opacity, 1)) !important}.s-cart-summary-card-line--discount b *{--tw-text-opacity:1 !important;color:rgb(220 38 38 / var(--tw-text-opacity, 1)) !important}.s-cart-summary-card-fee-label{display:inline-flex;align-items:center;gap:0.25rem;--tw-text-opacity:1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.s-cart-summary-card-fee-tip{display:inline-flex;height:0.875rem;width:0.875rem;cursor:pointer;align-items:center;justify-content:center;--tw-text-opacity:1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.s-cart-summary-card-bar-label{display:flex;flex-direction:column;gap:0.125rem}.s-cart-summary-card-bar-label-main{display:flex;align-items:baseline;gap:0.375rem}.s-cart-summary-card-bar-label-text{white-space:nowrap;font-size:1rem;line-height:1.5rem;font-weight:700;--tw-text-opacity:1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.s-cart-summary-card-bar-count{white-space:nowrap;font-size:0.75rem;line-height:1rem;--tw-text-opacity:1;color:rgb(115 115 115 / var(--tw-text-opacity, 1))}.s-cart-summary-card-bar-label-sub{font-size:11px;--tw-text-opacity:1;color:rgb(115 115 115 / var(--tw-text-opacity, 1))}.s-cart-summary-card-bar-totals{display:flex;flex-direction:column;align-items:flex-end;gap:0.375rem}.s-cart-summary-card-bar-totals-row{display:flex;align-items:center;gap:0.375rem}.s-cart-summary-card-bar-total{font-size:1rem;line-height:1.5rem;font-weight:700;--tw-text-opacity:1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.s-cart-summary-card-bar-original{font-size:1rem;line-height:1.5rem;--tw-text-opacity:1;color:rgb(156 163 175 / var(--tw-text-opacity, 1));text-decoration-line:line-through}.s-cart-summary-card-bar-savings-badge{display:inline-flex;width:max-content;align-items:center;gap:0.25rem;border-radius:var(--s-radius, 0.25rem);--tw-bg-opacity:1;background-color:rgb(239 251 246 / var(--tw-bg-opacity, 1));padding-left:0.5rem;padding-right:0.5rem;padding-top:0.125rem;padding-bottom:0.125rem;font-size:11px;font-weight:600;--tw-text-opacity:1;color:rgb(22 163 74 / var(--tw-text-opacity, 1))}.s-cart-summary-card-chevron{display:inline-flex;height:1.5rem;width:1.5rem;cursor:pointer;align-items:center;justify-content:center;border-width:0px;background-color:transparent;--tw-text-opacity:1;color:rgb(75 85 99 / var(--tw-text-opacity, 1));outline:2px solid transparent;outline-offset:2px}.s-cart-summary-card-chevron-icon{display:inline-flex;transition-property:transform;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:300ms}.s-cart-summary-card{display:block;--tw-bg-opacity:1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}@media (max-width: 1023px){.s-cart-summary-card{position:fixed;inset-inline:0;bottom:0;z-index:1;border-radius:24px 24px 0 0;box-shadow:0 -12px 24px -12px rgba(0, 0, 0, 0.12);transition:box-shadow 0.3s ease;padding-bottom:calc(env(safe-area-inset-bottom) + 0.5rem)}}@media (min-width: 1024px){.s-cart-summary-card{position:relative;border-radius:0.5rem;box-shadow:0 2px 6px rgba(0, 0, 0, 0.05);padding:1.25rem 1.5rem;margin-bottom:1.25rem}}@media (max-width: 1023px){.s-cart-summary-card--open{border-radius:0;box-shadow:none}}.s-cart-summary-card-sheet-wrap{display:grid;grid-template-rows:0fr;transition:grid-template-rows 0.4s cubic-bezier(0.32, 0.72, 0, 1), box-shadow 0.3s ease}@media (max-width: 1023px){.s-cart-summary-card-sheet-wrap{position:absolute;inset-inline:0;bottom:calc(100% - 1px);background:#fff;border-radius:24px 24px 0 0;overflow:hidden;box-shadow:0 -12px 24px -12px rgba(0, 0, 0, 0)}}@media (min-width: 1024px){.s-cart-summary-card-sheet-wrap{grid-template-rows:1fr}}@media (max-width: 1023px){.s-cart-summary-card-sheet-wrap--open{grid-template-rows:1fr;box-shadow:0 -12px 24px -12px rgba(0, 0, 0, 0.12)}}.s-cart-summary-card-sheet{min-height:0;overflow:hidden}@media (max-width: 1023px){.s-cart-summary-card-sheet-wrap--open .s-cart-summary-card-sheet{overflow-y:auto;max-height:70vh;-webkit-overflow-scrolling:touch;padding:0.75rem 1rem 0}}.s-cart-summary-card-sheet-header{display:flex;align-items:center;justify-content:space-between;gap:0.5rem}@media (max-width: 1023px){.s-cart-summary-card-sheet-header{padding-bottom:0.5rem}}.s-cart-summary-card-bar{display:flex;align-items:flex-start;justify-content:space-between;gap:0.75rem;--tw-bg-opacity:1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}@media (min-width: 1024px){.s-cart-summary-card-bar{margin-top:1rem}}@media (max-width: 1023px){.s-cart-summary-card-bar{padding:0.875rem 1rem 0.5rem;border-radius:24px 24px 0 0}.s-cart-summary-card--open .s-cart-summary-card-bar{padding-top:0;border-radius:0}}@media (min-width: 1024px){.s-cart-summary-card-action{padding-top:1rem}}@media (max-width: 1023px){.s-cart-summary-card-action{padding:0 1rem 0.75rem}}.s-cart-summary-card--open .s-cart-summary-card-chevron-icon{transform:rotate(180deg)}.s-cart-summary-card-action *:focus{outline:none}";
9
10
 
10
11
  const SKELETON_ROWS = [
11
12
  { label: '100px', value: '56px' },
@@ -24,6 +25,8 @@ const SallaCartSummaryCard$1 = /*@__PURE__*/ proxyCustomElement(class SallaCartS
24
25
  this.cartCashbackAmount = 0;
25
26
  this.cartSubTotal = 0;
26
27
  this.cartOptionsTotal = 0;
28
+ /* From cart.service_fees[] — charged amount plus optional min/max for the tip. */
29
+ this.cartServiceFees = [];
27
30
  this.cartShippingCost = 0;
28
31
  this.cartTaxAmount = 0;
29
32
  this.cartHasShipping = false;
@@ -31,6 +34,24 @@ const SallaCartSummaryCard$1 = /*@__PURE__*/ proxyCustomElement(class SallaCartS
31
34
  this.isDesktop = false;
32
35
  /** True until the first cart payload (API response or cart event) arrives. */
33
36
  this.isLoading = true;
37
+ /* Viewport coords — fixed tip escapes the sheet's overflow:hidden. */
38
+ this.feeTip = null;
39
+ this.showFeeTip = (key, event) => {
40
+ const wrap = event.currentTarget;
41
+ if (!wrap)
42
+ return;
43
+ const rect = wrap.getBoundingClientRect();
44
+ this.feeTip = {
45
+ key,
46
+ top: Math.round(rect.bottom + 8),
47
+ left: this.clampFeeTipLeft(rect.left + rect.width / 2),
48
+ };
49
+ this.bindFeeTipDismiss();
50
+ };
51
+ this.hideFeeTip = () => {
52
+ this.feeTip = null;
53
+ this.unbindFeeTipDismiss();
54
+ };
34
55
  // Original DOM location — needed to restore the host on the mobile→desktop flip.
35
56
  this.originalParent = null;
36
57
  this.originalNextSibling = null;
@@ -38,6 +59,7 @@ const SallaCartSummaryCard$1 = /*@__PURE__*/ proxyCustomElement(class SallaCartS
38
59
  this.mediaQueryList = null;
39
60
  this.submitObserver = null;
40
61
  this.isSubmitting = false;
62
+ this.feeTipDismissBound = false;
41
63
  // Stable handler refs — anonymous functions can't be unbound from listeners.
42
64
  this.mqlChangeHandler = (e) => {
43
65
  this.isDesktop = e.matches;
@@ -63,8 +85,11 @@ const SallaCartSummaryCard$1 = /*@__PURE__*/ proxyCustomElement(class SallaCartS
63
85
  this.host.querySelector('#s-cart-summary-card-submit')?.removeAttribute?.('loading');
64
86
  };
65
87
  this.toggleSheet = () => {
66
- if (!this.isDesktop)
67
- this.isOpen = !this.isOpen;
88
+ if (this.isDesktop)
89
+ return;
90
+ this.isOpen = !this.isOpen;
91
+ if (!this.isOpen)
92
+ this.hideFeeTip();
68
93
  };
69
94
  this.handleSubmit = async (event) => {
70
95
  // Re-entrancy guard, set before the async validation so a second tap during
@@ -139,6 +164,8 @@ const SallaCartSummaryCard$1 = /*@__PURE__*/ proxyCustomElement(class SallaCartS
139
164
  this.completeOrderLabel = salla.lang.get('pages.cart.complete_order');
140
165
  this.openSummaryLabel = salla.lang.get('pages.cart.open_summary');
141
166
  this.closeSummaryLabel = salla.lang.get('pages.cart.close_summary');
167
+ this.minimumLabel = salla.lang.get('pages.cart.minimum');
168
+ this.maximumLabel = salla.lang.get('pages.cart.up_to');
142
169
  this.itemsCountTemplate = salla.lang.get('pages.cart.items_with_count');
143
170
  }
144
171
  /** Coerces PHP cart values: numbers, strings, and Money/MoneyTaxable objects. */
@@ -159,6 +186,86 @@ const SallaCartSummaryCard$1 = /*@__PURE__*/ proxyCustomElement(class SallaCartS
159
186
  }
160
187
  return 0;
161
188
  }
189
+ /* BE uses null for “no bound”; treat 0 the same so the tip never shows a useless zero. */
190
+ optionalBound(value) {
191
+ if (value === null || value === undefined || value === '')
192
+ return null;
193
+ const amount = this.num(value);
194
+ return Number.isFinite(amount) && amount > 0 ? amount : null;
195
+ }
196
+ mapServiceFees(fees) {
197
+ return fees.flatMap((fee, index) => {
198
+ const title = String(fee?.title ?? '').trim();
199
+ const amount = this.num(fee?.amount);
200
+ if (!title || amount <= 0)
201
+ return [];
202
+ return [
203
+ {
204
+ key: String(index),
205
+ title,
206
+ amount,
207
+ minAmount: this.optionalBound(fee?.min_amount ?? fee?.min_service_amount),
208
+ maxAmount: this.optionalBound(fee?.max_amount ?? fee?.max_service_amount),
209
+ },
210
+ ];
211
+ });
212
+ }
213
+ /* Strip HTML for tip text; keep SAR when the theme renders it as <i class="sicon-sar">. */
214
+ plainMoney(value) {
215
+ return this.money(value)
216
+ .replace(/<i[^>]*sicon-sar[^>]*>.*?<\/i>/gi, ' SAR')
217
+ .replace(/<[^>]+>/g, '')
218
+ .replace(/\s+/g, ' ')
219
+ .trim();
220
+ }
221
+ serviceFeeBoundLines(fee) {
222
+ const lines = [];
223
+ if (fee.minAmount !== null)
224
+ lines.push({ label: this.minimumLabel, amount: fee.minAmount });
225
+ if (fee.maxAmount !== null)
226
+ lines.push({ label: this.maximumLabel, amount: fee.maxAmount });
227
+ return lines;
228
+ }
229
+ /* Bubble is centered with translateX(-50%); keep that center inside the viewport. */
230
+ clampFeeTipLeft(centerX) {
231
+ const margin = 12;
232
+ const tipWidth = Math.min(220, Math.max(132, window.innerWidth - margin * 2));
233
+ const half = tipWidth / 2;
234
+ const min = margin + half;
235
+ const max = window.innerWidth - margin - half;
236
+ if (max <= min)
237
+ return Math.round(window.innerWidth / 2);
238
+ return Math.round(Math.min(Math.max(centerX, min), max));
239
+ }
240
+ bindFeeTipDismiss() {
241
+ if (this.feeTipDismissBound)
242
+ return;
243
+ window.addEventListener('scroll', this.hideFeeTip, true);
244
+ window.addEventListener('resize', this.hideFeeTip);
245
+ this.feeTipDismissBound = true;
246
+ }
247
+ unbindFeeTipDismiss() {
248
+ if (!this.feeTipDismissBound)
249
+ return;
250
+ window.removeEventListener('scroll', this.hideFeeTip, true);
251
+ window.removeEventListener('resize', this.hideFeeTip);
252
+ this.feeTipDismissBound = false;
253
+ }
254
+ renderServiceFeeBoundsTip(fee) {
255
+ const lines = this.serviceFeeBoundLines(fee);
256
+ if (!lines.length)
257
+ return null;
258
+ return (h("span", { class: "s-cart-summary-card-fee-tip-wrap", onMouseEnter: event => this.showFeeTip(fee.key, event), onMouseLeave: this.hideFeeTip }, h("button", { type: "button", class: "s-cart-summary-card-fee-tip", "aria-label": lines.map(line => `${line.label}: ${this.plainMoney(line.amount)}`).join(', '), innerHTML: InfoIcon, onFocus: event => this.showFeeTip(fee.key, event), onBlur: this.hideFeeTip })));
259
+ }
260
+ renderFixedFeeTipBubble() {
261
+ if (!this.feeTip)
262
+ return null;
263
+ const fee = this.cartServiceFees.find(item => item.key === this.feeTip.key);
264
+ const lines = fee ? this.serviceFeeBoundLines(fee) : [];
265
+ if (!lines.length)
266
+ return null;
267
+ return (h("span", { class: "s-cart-summary-card-fee-tip-bubble", role: "tooltip", style: { top: `${this.feeTip.top}px`, left: `${this.feeTip.left}px` } }, lines.map(line => (h("span", { class: "s-cart-summary-card-fee-tip-line", key: line.label }, h("span", { class: "s-cart-summary-card-fee-tip-line-label" }, line.label), h("span", { class: "s-cart-summary-card-fee-tip-line-value" }, this.plainMoney(line.amount)))))));
268
+ }
162
269
  // Desktop cutoff — must match the SCSS media queries so JS and CSS never diverge.
163
270
  breakpointPx() {
164
271
  return 1024;
@@ -238,6 +345,7 @@ const SallaCartSummaryCard$1 = /*@__PURE__*/ proxyCustomElement(class SallaCartS
238
345
  this.mediaQueryList?.removeListener(this.mqlChangeHandler);
239
346
  }
240
347
  this.mediaQueryList = null;
348
+ this.unbindFeeTipDismiss();
241
349
  this.cartEventNames.forEach(name => salla.event.off(name, this.cartEventHandler));
242
350
  salla.event.off('cart::submit.failed', this.releaseSubmitLoading);
243
351
  });
@@ -313,6 +421,13 @@ const SallaCartSummaryCard$1 = /*@__PURE__*/ proxyCustomElement(class SallaCartS
313
421
  this.cartOptionsTotal = this.num(data.options_total);
314
422
  if (data.tax_amount !== undefined)
315
423
  this.cartTaxAmount = this.num(data.tax_amount);
424
+ /* Same retractability as cashback — cached/metadata payloads must not wipe live fees. */
425
+ if (Array.isArray(data.service_fees)) {
426
+ this.cartServiceFees = this.mapServiceFees(data.service_fees);
427
+ }
428
+ else if (recomputedTotals) {
429
+ this.cartServiceFees = [];
430
+ }
316
431
  // Shipping cost (free-shipping aware): prefer `shipping_cost`, else `real_shipping_cost`.
317
432
  const hasFreeShipping = !!data.free_shipping_bar?.has_free_shipping;
318
433
  if (data.shipping_cost !== undefined)
@@ -392,7 +507,7 @@ const SallaCartSummaryCard$1 = /*@__PURE__*/ proxyCustomElement(class SallaCartS
392
507
  } }, h("div", { class: {
393
508
  's-cart-summary-card-sheet-wrap': true,
394
509
  's-cart-summary-card-sheet-wrap--open': this.isOpen,
395
- }, "aria-hidden": this.isOpen ? 'false' : 'true' }, h("div", { class: "s-cart-summary-card-sheet", style: sheetStyle }, h("header", { class: "s-cart-summary-card-sheet-header" }, h("h3", { class: "s-cart-summary-card-sheet-title" }, this.summaryLabel)), h("div", { class: "s-cart-summary-card-line" }, h("span", null, subTotalLabel), h("b", { innerHTML: this.money(this.cartSubTotal) })), this.cartOptionsTotal > 0 && (h("div", { class: "s-cart-summary-card-line" }, h("span", null, this.optionsTotalLabel), h("b", { innerHTML: this.money(this.cartOptionsTotal) }))), this.cartHasShipping && (h("div", { class: "s-cart-summary-card-line" }, h("span", null, this.shippingCostLabel), h("b", { innerHTML: this.money(this.cartShippingCost) }))), this.cartTaxAmount > 0 && (h("div", { class: "s-cart-summary-card-line" }, h("span", null, this.vatTaxLabel), h("b", { innerHTML: this.money(this.cartTaxAmount) }))), showSavings && (h("div", { class: "s-cart-summary-card-line s-cart-summary-card-line--discount" }, h("span", null, this.savedLabel), h("b", null, "\u2212 ", h("span", { innerHTML: this.money(this.cartTotalDiscount) })))))), h("div", { class: "s-cart-summary-card-bar" }, h("div", { class: "s-cart-summary-card-bar-label" }, h("div", { class: "s-cart-summary-card-bar-label-main" }, h("span", { class: "s-cart-summary-card-bar-label-text" }, this.finalTotalLabel), h("span", { class: "s-cart-summary-card-bar-count" }, this.getItemsLabel())), this.cartTaxAmount > 0 && (h("div", { class: "s-cart-summary-card-bar-label-sub" }, this.pricesTaxedLabel))), h("div", { class: "s-cart-summary-card-bar-totals" }, h("div", { class: "s-cart-summary-card-bar-totals-row" }, showSavings && (h("s", { class: "s-cart-summary-card-bar-original" }, salla.helpers.number(this.roundToCurrency(this.cartTotal + this.cartTotalDiscount)))), h("b", { class: "s-cart-summary-card-bar-total", innerHTML: this.money(this.cartTotal) }), !this.isDesktop && (h("button", { type: "button", class: "s-cart-summary-card-chevron", "aria-label": this.isOpen ? this.closeSummaryLabel : this.openSummaryLabel, "aria-expanded": this.isOpen ? 'true' : 'false', onClick: this.toggleSheet }, h("i", { class: "sicon-keyboard_arrow_up s-cart-summary-card-chevron-icon" })))), (showSavings || showCashback) && (h("div", { class: "s-cart-summary-card-bar-savings-badge" }, h("span", { "aria-hidden": "true" }, "\uD83C\uDF89"), h("span", null, showSavings && (h("span", null, this.discountBadge, " ", h("span", { innerHTML: this.money(this.cartTotalDiscount) }))), showSavings && showCashback && ' + ', showCashback && (h("span", null, h("span", { innerHTML: this.money(this.cartCashbackAmount) }), " ", this.cashbackLabel))))))), h("div", { class: "s-cart-summary-card-action" }, h("salla-button", { id: "s-cart-summary-card-submit", width: "wide", "loader-position": "center", onClick: this.handleSubmit }, this.completeOrderLabel))));
510
+ }, "aria-hidden": this.isOpen ? 'false' : 'true' }, h("div", { class: "s-cart-summary-card-sheet", style: sheetStyle }, h("header", { class: "s-cart-summary-card-sheet-header" }, h("h3", { class: "s-cart-summary-card-sheet-title" }, this.summaryLabel)), h("div", { class: "s-cart-summary-card-line" }, h("span", null, subTotalLabel), h("b", { innerHTML: this.money(this.cartSubTotal) })), this.cartOptionsTotal > 0 && (h("div", { class: "s-cart-summary-card-line" }, h("span", null, this.optionsTotalLabel), h("b", { innerHTML: this.money(this.cartOptionsTotal) }))), this.cartServiceFees.map(fee => (h("div", { class: "s-cart-summary-card-line", key: fee.key }, h("span", { class: "s-cart-summary-card-fee-label" }, h("span", null, fee.title), this.renderServiceFeeBoundsTip(fee)), h("b", { innerHTML: this.money(fee.amount) })))), this.cartHasShipping && (h("div", { class: "s-cart-summary-card-line" }, h("span", null, this.shippingCostLabel), h("b", { innerHTML: this.money(this.cartShippingCost) }))), this.cartTaxAmount > 0 && (h("div", { class: "s-cart-summary-card-line" }, h("span", null, this.vatTaxLabel), h("b", { innerHTML: this.money(this.cartTaxAmount) }))), showSavings && (h("div", { class: "s-cart-summary-card-line s-cart-summary-card-line--discount" }, h("span", null, this.savedLabel), h("b", null, "\u2212 ", h("span", { innerHTML: this.money(this.cartTotalDiscount) })))))), h("div", { class: "s-cart-summary-card-bar" }, h("div", { class: "s-cart-summary-card-bar-label" }, h("div", { class: "s-cart-summary-card-bar-label-main" }, h("span", { class: "s-cart-summary-card-bar-label-text" }, this.finalTotalLabel), h("span", { class: "s-cart-summary-card-bar-count" }, this.getItemsLabel())), this.cartTaxAmount > 0 && (h("div", { class: "s-cart-summary-card-bar-label-sub" }, this.pricesTaxedLabel))), h("div", { class: "s-cart-summary-card-bar-totals" }, h("div", { class: "s-cart-summary-card-bar-totals-row" }, showSavings && (h("s", { class: "s-cart-summary-card-bar-original" }, salla.helpers.number(this.roundToCurrency(this.cartTotal + this.cartTotalDiscount)))), h("b", { class: "s-cart-summary-card-bar-total", innerHTML: this.money(this.cartTotal) }), !this.isDesktop && (h("button", { type: "button", class: "s-cart-summary-card-chevron", "aria-label": this.isOpen ? this.closeSummaryLabel : this.openSummaryLabel, "aria-expanded": this.isOpen ? 'true' : 'false', onClick: this.toggleSheet }, h("i", { class: "sicon-keyboard_arrow_up s-cart-summary-card-chevron-icon" })))), (showSavings || showCashback) && (h("div", { class: "s-cart-summary-card-bar-savings-badge" }, h("span", { "aria-hidden": "true" }, "\uD83C\uDF89"), h("span", null, showSavings && (h("span", null, this.discountBadge, " ", h("span", { innerHTML: this.money(this.cartTotalDiscount) }))), showSavings && showCashback && ' + ', showCashback && (h("span", null, h("span", { innerHTML: this.money(this.cartCashbackAmount) }), " ", this.cashbackLabel))))))), h("div", { class: "s-cart-summary-card-action" }, h("salla-button", { id: "s-cart-summary-card-submit", width: "wide", "loader-position": "center", onClick: this.handleSubmit }, this.completeOrderLabel)), this.renderFixedFeeTipBubble()));
396
511
  }
397
512
  get host() { return this; }
398
513
  static get style() { return sallaCartSummaryCardCss; }
@@ -404,6 +519,7 @@ const SallaCartSummaryCard$1 = /*@__PURE__*/ proxyCustomElement(class SallaCartS
404
519
  "cartCashbackAmount": [32],
405
520
  "cartSubTotal": [32],
406
521
  "cartOptionsTotal": [32],
522
+ "cartServiceFees": [32],
407
523
  "cartShippingCost": [32],
408
524
  "cartTaxAmount": [32],
409
525
  "cartHasShipping": [32],
@@ -424,7 +540,10 @@ const SallaCartSummaryCard$1 = /*@__PURE__*/ proxyCustomElement(class SallaCartS
424
540
  "completeOrderLabel": [32],
425
541
  "openSummaryLabel": [32],
426
542
  "closeSummaryLabel": [32],
427
- "itemsCountTemplate": [32]
543
+ "minimumLabel": [32],
544
+ "maximumLabel": [32],
545
+ "itemsCountTemplate": [32],
546
+ "feeTip": [32]
428
547
  }]);
429
548
  function defineCustomElement$1() {
430
549
  if (typeof customElements === "undefined") {
@@ -3,7 +3,7 @@
3
3
  */
4
4
  import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal/client';
5
5
 
6
- const sallaOrderTotalsCardCss = "/*!twlt*/:host{display:block}.s-order-totals-card-wrapper{display:block}.s-order-totals-card-panel{border-radius:0.375rem;--tw-bg-opacity:1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));padding-left:1.5rem;padding-right:1.5rem}.s-order-totals-card-heading{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0}.s-order-totals-card-flow{display:flow-root}.s-order-totals-card-list{font-size:0.875rem;line-height:1.25rem;--tw-text-opacity:1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.s-order-totals-card-list>.s-order-totals-card-row{border-bottom-width:1px}.s-order-totals-card-list>.s-order-totals-card-row:last-child{border-bottom-width:0px}.s-order-totals-card-row{display:block}.s-order-totals-card-row-inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-top:1.25rem;padding-bottom:1.25rem}.s-order-totals-card-label{--tw-text-opacity:1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.s-order-totals-card-value{font-weight:500}.s-order-totals-card-discount{--tw-text-opacity:1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.s-order-totals-card-tax-value{font-weight:500;--tw-text-opacity:1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.s-order-totals-card-total{margin-left:-1.5rem;margin-right:-1.5rem;border-radius:0.375rem;background-color:var(--color-border);padding-left:1.5rem;padding-right:1.5rem}.s-order-totals-card-total-label{font-size:1rem;line-height:1.5rem;font-weight:500}.s-order-totals-card-total-value{font-size:1rem;line-height:1.5rem;font-weight:500}.s-order-totals-card-refund{margin-left:-1.5rem;margin-right:-1.5rem;border-left-width:4px;--tw-border-opacity:1;border-color:rgb(254 202 202 / var(--tw-border-opacity, 1));--tw-bg-opacity:1;background-color:rgb(254 242 242 / var(--tw-bg-opacity, 1));padding-left:1.5rem;padding-right:1.5rem}.s-order-totals-card-refund:where([dir=\"rtl\"],[dir=\"rtl\"] *){border-left-width:0px;border-right-width:4px}.s-order-totals-card-refund-label{display:flex;align-items:center;gap:0.5rem;--tw-text-opacity:1;color:rgb(220 38 38 / var(--tw-text-opacity, 1))}.s-order-totals-card-refund-icon{font-size:0.875rem;line-height:1.25rem;--tw-text-opacity:1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.s-order-totals-card-refund-value{font-weight:500;--tw-text-opacity:1;color:rgb(220 38 38 / var(--tw-text-opacity, 1))}";
6
+ const sallaOrderTotalsCardCss = "/*!twlt*/:host{display:block}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.s-order-totals-card-wrapper{display:block}.s-order-totals-card-panel{border-radius:0.375rem;--tw-bg-opacity:1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));padding-left:1.5rem;padding-right:1.5rem}.s-order-totals-card-heading{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0}.s-order-totals-card-flow{display:flow-root}.s-order-totals-card-list{font-size:0.875rem;line-height:1.25rem;--tw-text-opacity:1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.s-order-totals-card-list>.s-order-totals-card-row{border-bottom-width:1px}.s-order-totals-card-list>.s-order-totals-card-row:last-child{border-bottom-width:0px}.s-order-totals-card-row{display:block}.s-order-totals-card-row-inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-top:1.25rem;padding-bottom:1.25rem}.s-order-totals-card-label{--tw-text-opacity:1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.s-order-totals-card-value{font-weight:500}.s-order-totals-card-discount{--tw-text-opacity:1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.s-order-totals-card-tax-value{font-weight:500;--tw-text-opacity:1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.s-order-totals-card-total{margin-left:-1.5rem;margin-right:-1.5rem;border-radius:0.375rem;background-color:var(--color-border);padding-left:1.5rem;padding-right:1.5rem}.s-order-totals-card-total-label{font-size:1rem;line-height:1.5rem;font-weight:500}.s-order-totals-card-total-value{font-size:1rem;line-height:1.5rem;font-weight:500}.s-order-totals-card-refund{margin-left:-1.5rem;margin-right:-1.5rem;border-left-width:4px;--tw-border-opacity:1;border-color:rgb(254 202 202 / var(--tw-border-opacity, 1));--tw-bg-opacity:1;background-color:rgb(254 242 242 / var(--tw-bg-opacity, 1));padding-left:1.5rem;padding-right:1.5rem}.s-order-totals-card-refund:where([dir=\"rtl\"],[dir=\"rtl\"] *){border-left-width:0px;border-right-width:4px}.s-order-totals-card-refund-label{display:flex;align-items:center;gap:0.5rem;--tw-text-opacity:1;color:rgb(220 38 38 / var(--tw-text-opacity, 1))}.s-order-totals-card-refund-icon{font-size:0.875rem;line-height:1.25rem;--tw-text-opacity:1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.s-order-totals-card-refund-value{font-weight:500;--tw-text-opacity:1;color:rgb(220 38 38 / var(--tw-text-opacity, 1))}";
7
7
 
8
8
  const SallaOrderTotalsCard$1 = /*@__PURE__*/ proxyCustomElement(class SallaOrderTotalsCard extends HTMLElement {
9
9
  constructor() {
@@ -44,6 +44,7 @@ const SallaOrderTotalsCard$1 = /*@__PURE__*/ proxyCustomElement(class SallaOrder
44
44
  refund_amount: parsed.refund_amount,
45
45
  options: parsed.options,
46
46
  options_total: parsed.options_total,
47
+ service_fees: Array.isArray(parsed.service_fees) ? parsed.service_fees : undefined,
47
48
  tax: parsed.tax
48
49
  ? {
49
50
  percent: typeof parsed.tax.percent === 'string' ? parseFloat(parsed.tax.percent) : parsed.tax.percent,
@@ -67,7 +68,10 @@ const SallaOrderTotalsCard$1 = /*@__PURE__*/ proxyCustomElement(class SallaOrder
67
68
  }
68
69
  setSummaryFromOrder(value) {
69
70
  try {
70
- const parsedValue = typeof value === 'string' ? JSON.parse(value) : value;
71
+ const parsedValue = typeof value === 'string' ? JSON.parse(value) : { ...value };
72
+ if (!Array.isArray(parsedValue.service_fees)) {
73
+ delete parsedValue.service_fees;
74
+ }
71
75
  this.summary = parsedValue;
72
76
  }
73
77
  catch (error) {
@@ -84,9 +88,26 @@ const SallaOrderTotalsCard$1 = /*@__PURE__*/ proxyCustomElement(class SallaOrder
84
88
  renderRefundRow(amount) {
85
89
  return (h("div", { class: "s-order-totals-card-row" }, h("div", { class: "s-order-totals-card-row-inner" }, h("dt", { class: "s-order-totals-card-refund-label" }, h("span", { class: "s-order-totals-card-refund-icon" }, h("i", { class: "sicon-info" })), h("span", null, " ", salla.lang.get('pages.orders.refund_amount'))), h("dd", { class: "s-order-totals-card-refund-value" }, h("b", { innerHTML: salla.money(amount) })))));
86
90
  }
87
- /** Totals arrive either as a money object or a plain float, depending on the presenter. */
91
+ /* Totals arrive as a money object, plain number, or numeric string depending on the presenter. */
88
92
  toAmount(value) {
89
- return (typeof value === 'number' ? value : value?.amount) || 0;
93
+ if (value === null || value === undefined)
94
+ return 0;
95
+ if (typeof value === 'number')
96
+ return Number.isFinite(value) ? value : 0;
97
+ if (typeof value === 'string')
98
+ return parseFloat(value) || 0;
99
+ return this.toAmount(value.amount);
100
+ }
101
+ isChargeableServiceFee(fee) {
102
+ return String(fee?.title ?? '').trim().length > 0 && this.toAmount(fee?.amount) > 0;
103
+ }
104
+ renderServiceFeeRows() {
105
+ const fees = this.summary?.service_fees;
106
+ if (!Array.isArray(fees))
107
+ return null;
108
+ return fees
109
+ .filter(fee => this.isChargeableServiceFee(fee))
110
+ .map(fee => this.renderTotalRow(String(fee.title).trim(), fee.amount));
90
111
  }
91
112
  render() {
92
113
  if (!this.summary) {
@@ -98,7 +119,7 @@ const SallaOrderTotalsCard$1 = /*@__PURE__*/ proxyCustomElement(class SallaOrder
98
119
  // Independent of the refund: a partially refunded order can still owe a balance.
99
120
  const isPartiallyPaid = summary.has_remaining_amount ?? this.toAmount(summary.remaining_amount) > 0;
100
121
  return (h(Host, { class: "s-order-totals-card-wrapper" }, h("div", { class: "s-order-totals-card-panel" }, h("h2", { id: "summary-heading", class: "s-order-totals-card-heading" }, salla.lang.get('pages.orders.summary')), h("div", { class: "s-order-totals-card-flow" }, h("dl", { class: "s-order-totals-card-list" }, this.renderTotalRow(salla.lang.get('pages.cart.items_total'), summary.sub_total), hasOptions &&
101
- this.renderTotalRow(salla.lang.get('pages.cart.order_options_total'), summary.options_total), summary.discounts && this.renderDiscountRow(), summary.cod_cost &&
122
+ this.renderTotalRow(salla.lang.get('pages.cart.order_options_total'), summary.options_total), this.renderServiceFeeRows(), summary.discounts && this.renderDiscountRow(), summary.cod_cost &&
102
123
  this.renderTotalRow(salla.lang.get('pages.orders.cod_cost'), summary.cod_cost, ''), summary.shipping_cost &&
103
124
  this.renderTotalRow(salla.lang.get('pages.orders.shipping_cost'), summary.shipping_cost, 's-order-totals-card-shipping'), summary.tax &&
104
125
  this.renderTotalRow(`${salla.lang.get('pages.cart.tax')} ${summary.tax.percent}%`, summary.tax.amount, ''), isPartiallyPaid && summary.paid_amount != null
package/dist/docs.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "timestamp": "2026-11-03T09:08:49",
2
+ "timestamp": "2026-11-03T09:42:26",
3
3
  "compiler": {
4
4
  "name": "@stencil/core",
5
5
  "version": "4.35.1",
@@ -31269,8 +31269,8 @@
31269
31269
  "path": "src/components/salla-order-shipments/interfaces.ts"
31270
31270
  },
31271
31271
  "src/components/salla-order-totals-card/interfaces.ts::Amounts": {
31272
- "declaration": "export interface Amounts {\n sub_total?: Total;\n shipping_cost?: Total;\n cash_on_delivery?: Total;\n tax?: AmountsTax;\n discounts?: AmountsDiscount[];\n total?: Total;\n paid_amount?: Total;\n remaining_amount?: Total;\n refund_amount?: Total;\n}",
31273
- "docstring": "Amounts prop shape (from theme's Moneys interface)",
31272
+ "declaration": "export interface Amounts {\n sub_total?: Total;\n shipping_cost?: Total;\n cash_on_delivery?: Total;\n tax?: AmountsTax;\n discounts?: AmountsDiscount[];\n service_fees?: ServiceFee[];\n total?: Total;\n paid_amount?: Total;\n remaining_amount?: Total;\n refund_amount?: Total;\n}",
31273
+ "docstring": "Amounts prop shape (from theme's Moneys interface).",
31274
31274
  "path": "src/components/salla-order-totals-card/interfaces.ts"
31275
31275
  },
31276
31276
  "src/components/salla-orders/interface.ts::Order": {
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * Crafted with ❤ by Salla
3
3
  */
4
- import './index-ze9e0dxM.js';
4
+ import './index-g-_4am8C.js';
5
5
 
6
6
  var FilterOptionTypes;
7
7
  (function (FilterOptionTypes) {
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * Crafted with ❤ by Salla
3
3
  */
4
- import { d as getDefaultExportFromCjs } from './index-ze9e0dxM.js';
4
+ import { d as getDefaultExportFromCjs } from './index-g-_4am8C.js';
5
5
 
6
6
  function _mergeNamespaces(n, m) {
7
7
  m.forEach(function (e) {
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * Crafted with ❤ by Salla
3
3
  */
4
- import { d as getDefaultExportFromCjs } from './index-ze9e0dxM.js';
4
+ import { d as getDefaultExportFromCjs } from './index-g-_4am8C.js';
5
5
 
6
6
  function _mergeNamespaces(n, m) {
7
7
  m.forEach(function (e) {
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * Crafted with ❤ by Salla
3
3
  */
4
- import { d as getDefaultExportFromCjs } from './index-ze9e0dxM.js';
4
+ import { d as getDefaultExportFromCjs } from './index-g-_4am8C.js';
5
5
 
6
6
  function _mergeNamespaces(n, m) {
7
7
  m.forEach(function (e) {
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * Crafted with ❤ by Salla
3
3
  */
4
- import { d as getDefaultExportFromCjs } from './index-ze9e0dxM.js';
4
+ import { d as getDefaultExportFromCjs } from './index-g-_4am8C.js';
5
5
 
6
6
  function _mergeNamespaces(n, m) {
7
7
  m.forEach(function (e) {
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * Crafted with ❤ by Salla
3
3
  */
4
- import { d as getDefaultExportFromCjs } from './index-ze9e0dxM.js';
4
+ import { d as getDefaultExportFromCjs } from './index-g-_4am8C.js';
5
5
 
6
6
  function _mergeNamespaces(n, m) {
7
7
  m.forEach(function (e) {
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * Crafted with ❤ by Salla
3
3
  */
4
- import { d as getDefaultExportFromCjs } from './index-ze9e0dxM.js';
4
+ import { d as getDefaultExportFromCjs } from './index-g-_4am8C.js';
5
5
 
6
6
  function _mergeNamespaces(n, m) {
7
7
  m.forEach(function (e) {
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * Crafted with ❤ by Salla
3
3
  */
4
- import { d as getDefaultExportFromCjs } from './index-ze9e0dxM.js';
4
+ import { d as getDefaultExportFromCjs } from './index-g-_4am8C.js';
5
5
 
6
6
  function _mergeNamespaces(n, m) {
7
7
  m.forEach(function (e) {