@salla.sa/twilight-components 2.14.170 → 2.14.172

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 (287) hide show
  1. package/dist/cjs/{app-globals-KyQhbOUb.js → app-globals-Bk9IDSPX.js} +3 -3
  2. package/dist/cjs/{app-globals-KyQhbOUb.js.map → app-globals-Bk9IDSPX.js.map} +1 -1
  3. package/dist/cjs/{index-CyyWuThh.js → index-B1jJnKON.js} +4 -4
  4. package/dist/cjs/{index-CyyWuThh.js.map → index-B1jJnKON.js.map} +1 -1
  5. package/dist/cjs/loader.cjs.js +2 -2
  6. package/dist/cjs/salla-add-product-button_49.cjs.entry.js +1 -1
  7. package/dist/cjs/salla-advertisement.cjs.entry.js +1 -1
  8. package/dist/cjs/salla-app-install-alert.cjs.entry.js +1 -1
  9. package/dist/cjs/salla-apps-icons.cjs.entry.js +1 -1
  10. package/dist/cjs/salla-booking-field.salla-conditional-fields.entry.cjs.js.map +1 -1
  11. package/dist/cjs/salla-booking-field_2.cjs.entry.js +2 -2
  12. package/dist/cjs/salla-booking-field_2.cjs.entry.js.map +1 -1
  13. package/dist/cjs/salla-cart-item-offers.cjs.entry.js +1 -1
  14. package/dist/cjs/salla-conditional-offer.cjs.entry.js +1 -1
  15. package/dist/cjs/salla-contacts.cjs.entry.js +1 -1
  16. package/dist/cjs/salla-filters-widget.cjs.entry.js +1 -1
  17. package/dist/cjs/salla-filters.cjs.entry.js +1 -1
  18. package/dist/cjs/salla-installment.cjs.entry.js +1 -1
  19. package/dist/cjs/salla-loyalty-prize-item.cjs.entry.js +1 -1
  20. package/dist/cjs/salla-metadata.cjs.entry.js +1 -1
  21. package/dist/cjs/salla-notification-item.cjs.entry.js +1 -1
  22. package/dist/cjs/salla-notifications.cjs.entry.js +1 -1
  23. package/dist/cjs/salla-offer.cjs.entry.js +11 -7
  24. package/dist/cjs/salla-offer.cjs.entry.js.map +1 -1
  25. package/dist/cjs/salla-offer.entry.cjs.js.map +1 -1
  26. package/dist/cjs/salla-order-summary.cjs.entry.js +1 -1
  27. package/dist/cjs/salla-orders.cjs.entry.js +1 -1
  28. package/dist/cjs/salla-payments.cjs.entry.js +1 -1
  29. package/dist/cjs/salla-price-range.cjs.entry.js +1 -1
  30. package/dist/cjs/salla-product-options.cjs.entry.js +1 -1
  31. package/dist/cjs/salla-review-card.cjs.entry.js +1 -1
  32. package/dist/cjs/salla-reviews-page.cjs.entry.js +1 -1
  33. package/dist/cjs/salla-reviews.cjs.entry.js +1 -1
  34. package/dist/cjs/salla-social.cjs.entry.js +1 -1
  35. package/dist/cjs/salla-tooltip.cjs.entry.js +1 -1
  36. package/dist/cjs/salla-verify.cjs.entry.js +1 -1
  37. package/dist/cjs/salla-wallet.cjs.entry.js +1 -1
  38. package/dist/cjs/twilight.cjs.js +2 -2
  39. package/dist/collection/components/salla-booking-field/salla-booking-field.js +1 -1
  40. package/dist/collection/components/salla-booking-field/salla-booking-field.js.map +1 -1
  41. package/dist/collection/components/salla-offer/salla-offer.js +10 -6
  42. package/dist/collection/components/salla-offer/salla-offer.js.map +1 -1
  43. package/dist/components/index.js +2 -2
  44. package/dist/components/index.js.map +1 -1
  45. package/dist/components/salla-booking-field2.js +1 -1
  46. package/dist/components/salla-booking-field2.js.map +1 -1
  47. package/dist/components/salla-offer.js +10 -6
  48. package/dist/components/salla-offer.js.map +1 -1
  49. package/dist/esm/{app-globals-Eok5C8eP.js → app-globals-BlWInTtE.js} +3 -3
  50. package/dist/esm/{app-globals-Eok5C8eP.js.map → app-globals-BlWInTtE.js.map} +1 -1
  51. package/dist/esm/{index-EWYMQsdr.js → index-CayW-agT.js} +4 -4
  52. package/dist/esm/{index-EWYMQsdr.js.map → index-CayW-agT.js.map} +1 -1
  53. package/dist/esm/loader.js +3 -3
  54. package/dist/esm/salla-add-product-button_49.entry.js +1 -1
  55. package/dist/esm/salla-advertisement.entry.js +1 -1
  56. package/dist/esm/salla-app-install-alert.entry.js +1 -1
  57. package/dist/esm/salla-apps-icons.entry.js +1 -1
  58. package/dist/esm/salla-booking-field.salla-conditional-fields.entry.js.map +1 -1
  59. package/dist/esm/salla-booking-field_2.entry.js +2 -2
  60. package/dist/esm/salla-booking-field_2.entry.js.map +1 -1
  61. package/dist/esm/salla-cart-item-offers.entry.js +1 -1
  62. package/dist/esm/salla-conditional-offer.entry.js +1 -1
  63. package/dist/esm/salla-contacts.entry.js +1 -1
  64. package/dist/esm/salla-filters-widget.entry.js +1 -1
  65. package/dist/esm/salla-filters.entry.js +1 -1
  66. package/dist/esm/salla-installment.entry.js +1 -1
  67. package/dist/esm/salla-loyalty-prize-item.entry.js +1 -1
  68. package/dist/esm/salla-metadata.entry.js +1 -1
  69. package/dist/esm/salla-notification-item.entry.js +1 -1
  70. package/dist/esm/salla-notifications.entry.js +1 -1
  71. package/dist/esm/salla-offer.entry.js +11 -7
  72. package/dist/esm/salla-offer.entry.js.map +1 -1
  73. package/dist/esm/salla-order-summary.entry.js +1 -1
  74. package/dist/esm/salla-orders.entry.js +1 -1
  75. package/dist/esm/salla-payments.entry.js +1 -1
  76. package/dist/esm/salla-price-range.entry.js +1 -1
  77. package/dist/esm/salla-product-options.entry.js +1 -1
  78. package/dist/esm/salla-review-card.entry.js +1 -1
  79. package/dist/esm/salla-reviews-page.entry.js +1 -1
  80. package/dist/esm/salla-reviews.entry.js +1 -1
  81. package/dist/esm/salla-social.entry.js +1 -1
  82. package/dist/esm/salla-tooltip.entry.js +1 -1
  83. package/dist/esm/salla-verify.entry.js +1 -1
  84. package/dist/esm/salla-wallet.entry.js +1 -1
  85. package/dist/esm/twilight.js +3 -3
  86. package/dist/esm-es5/{app-globals-Eok5C8eP.js → app-globals-BlWInTtE.js} +2 -2
  87. package/dist/esm-es5/{app-globals-Eok5C8eP.js.map → app-globals-BlWInTtE.js.map} +1 -1
  88. package/dist/esm-es5/{index-EWYMQsdr.js → index-CayW-agT.js} +3 -3
  89. package/dist/esm-es5/{index-EWYMQsdr.js.map → index-CayW-agT.js.map} +1 -1
  90. package/dist/esm-es5/loader.js +1 -1
  91. package/dist/esm-es5/salla-add-product-button_49.entry.js +1 -1
  92. package/dist/esm-es5/salla-advertisement.entry.js +1 -1
  93. package/dist/esm-es5/salla-app-install-alert.entry.js +1 -1
  94. package/dist/esm-es5/salla-apps-icons.entry.js +1 -1
  95. package/dist/esm-es5/salla-booking-field.salla-conditional-fields.entry.js.map +1 -1
  96. package/dist/esm-es5/salla-booking-field_2.entry.js +2 -2
  97. package/dist/esm-es5/salla-booking-field_2.entry.js.map +1 -1
  98. package/dist/esm-es5/salla-cart-item-offers.entry.js +1 -1
  99. package/dist/esm-es5/salla-conditional-offer.entry.js +1 -1
  100. package/dist/esm-es5/salla-contacts.entry.js +1 -1
  101. package/dist/esm-es5/salla-filters-widget.entry.js +1 -1
  102. package/dist/esm-es5/salla-filters.entry.js +1 -1
  103. package/dist/esm-es5/salla-installment.entry.js +1 -1
  104. package/dist/esm-es5/salla-loyalty-prize-item.entry.js +1 -1
  105. package/dist/esm-es5/salla-metadata.entry.js +1 -1
  106. package/dist/esm-es5/salla-notification-item.entry.js +1 -1
  107. package/dist/esm-es5/salla-notifications.entry.js +1 -1
  108. package/dist/esm-es5/salla-offer.entry.js +2 -2
  109. package/dist/esm-es5/salla-offer.entry.js.map +1 -1
  110. package/dist/esm-es5/salla-order-summary.entry.js +1 -1
  111. package/dist/esm-es5/salla-orders.entry.js +2 -2
  112. package/dist/esm-es5/salla-payments.entry.js +1 -1
  113. package/dist/esm-es5/salla-price-range.entry.js +1 -1
  114. package/dist/esm-es5/salla-product-options.entry.js +1 -1
  115. package/dist/esm-es5/salla-review-card.entry.js +1 -1
  116. package/dist/esm-es5/salla-reviews-page.entry.js +1 -1
  117. package/dist/esm-es5/salla-reviews.entry.js +1 -1
  118. package/dist/esm-es5/salla-social.entry.js +1 -1
  119. package/dist/esm-es5/salla-tooltip.entry.js +1 -1
  120. package/dist/esm-es5/salla-verify.entry.js +1 -1
  121. package/dist/esm-es5/salla-wallet.entry.js +1 -1
  122. package/dist/esm-es5/twilight.js +1 -1
  123. package/dist/twilight/{p-4fbad277.entry.js → p-0649d076.entry.js} +2 -2
  124. package/dist/twilight/{p-b6d17480.system.entry.js → p-1696a245.system.entry.js} +2 -2
  125. package/dist/twilight/{p-1d879370.entry.js → p-19f533ec.entry.js} +2 -2
  126. package/dist/twilight/{p-0bdf2224.entry.js → p-1dd178a2.entry.js} +2 -2
  127. package/dist/twilight/{p-1f4fc47f.entry.js → p-20bdcd53.entry.js} +2 -2
  128. package/dist/twilight/{p-5c52e00c.entry.js → p-247636ef.entry.js} +2 -2
  129. package/dist/twilight/{p-38a60819.entry.js → p-269ebd5d.entry.js} +2 -2
  130. package/dist/twilight/{p-1fbf0ba0.entry.js → p-29e96484.entry.js} +2 -2
  131. package/dist/twilight/p-29e96484.entry.js.map +1 -0
  132. package/dist/twilight/{p-fe7d4113.system.entry.js → p-2a10bff2.system.entry.js} +2 -2
  133. package/dist/twilight/{p-cd6c8a64.entry.js → p-2d0c2877.entry.js} +2 -2
  134. package/dist/twilight/{p-8a42ee60.system.entry.js → p-2da442c2.system.entry.js} +2 -2
  135. package/dist/twilight/{p-c7589247.system.entry.js → p-3093ea8e.system.entry.js} +2 -2
  136. package/dist/twilight/{p-7f0b3753.entry.js → p-316e3ea9.entry.js} +2 -2
  137. package/dist/twilight/{p-f5929cee.entry.js → p-33963e7d.entry.js} +2 -2
  138. package/dist/twilight/{p-feb9b85a.entry.js → p-37a3c661.entry.js} +2 -2
  139. package/dist/twilight/{p-d9073cf3.entry.js → p-41480e7b.entry.js} +2 -2
  140. package/dist/twilight/{p-2a8279d6.entry.js → p-41ecc4f7.entry.js} +2 -2
  141. package/dist/twilight/{p-9395f082.system.entry.js → p-44a213de.system.entry.js} +2 -2
  142. package/dist/twilight/p-4ced9aab.entry.js +5 -0
  143. package/dist/twilight/p-4fb112e6.system.entry.js +5 -0
  144. package/dist/twilight/p-4fb112e6.system.entry.js.map +1 -0
  145. package/dist/twilight/{p-ec81a36e.entry.js → p-51195e76.entry.js} +2 -2
  146. package/dist/twilight/{p-ff9d70f4.system.entry.js → p-54bd7e18.system.entry.js} +2 -2
  147. package/dist/twilight/{p-3134126e.system.entry.js → p-611b6013.system.entry.js} +2 -2
  148. package/dist/twilight/{p-bd4d0f9a.system.entry.js → p-679bb855.system.entry.js} +2 -2
  149. package/dist/twilight/{p-4c74100d.system.entry.js → p-67fe618e.system.entry.js} +2 -2
  150. package/dist/twilight/{p-1ebd5929.system.entry.js → p-69ec9ac8.system.entry.js} +2 -2
  151. package/dist/twilight/{p-b09ad735.system.entry.js → p-740b39fc.system.entry.js} +2 -2
  152. package/dist/twilight/{p-2ea1d52b.entry.js → p-756fe45d.entry.js} +2 -2
  153. package/dist/twilight/{p-d2edeb7c.system.entry.js → p-7ddf00a9.system.entry.js} +2 -2
  154. package/dist/twilight/{p-5fd16112.system.entry.js → p-86dd7e02.system.entry.js} +2 -2
  155. package/dist/twilight/{p-42291bce.entry.js → p-8c9ae8bd.entry.js} +2 -2
  156. package/dist/twilight/{p-3b5eb2c9.system.entry.js → p-8e242779.system.entry.js} +2 -2
  157. package/dist/twilight/{p-4daef7a0.entry.js → p-9361e7a2.entry.js} +2 -2
  158. package/dist/twilight/{p-3aa0ac01.entry.js → p-952a8078.entry.js} +2 -2
  159. package/dist/twilight/{p-bf454ddd.entry.js → p-9ca8c6b6.entry.js} +2 -2
  160. package/dist/twilight/{p-15e36352.system.entry.js → p-9d750b3d.system.entry.js} +2 -2
  161. package/dist/twilight/{p-B4BfwIfE.system.js.map → p-B3wutB2s.system.js.map} +1 -1
  162. package/dist/twilight/{p-BRLbCud3.system.js.map → p-BYBYDro2.system.js.map} +1 -1
  163. package/dist/twilight/{p-CaL9vXSW.system.js.map → p-BeVJFUxX.system.js.map} +1 -1
  164. package/dist/twilight/{p-ug8rkhBt.system.js.map → p-BmwlZkRw.system.js.map} +1 -1
  165. package/dist/twilight/{p-D9oLy_KT.system.js → p-BuezmX1t.system.js} +2 -2
  166. package/dist/twilight/{p-D9oLy_KT.system.js.map → p-BuezmX1t.system.js.map} +1 -1
  167. package/dist/twilight/{p-qSZ6al46.system.js.map → p-BuxFmGAL.system.js.map} +1 -1
  168. package/dist/twilight/{p-DSV8tV1E.system.js.map → p-Bxsqm2ye.system.js.map} +1 -1
  169. package/dist/twilight/{p-5vs3r5UR.system.js.map → p-C2OoabIm.system.js.map} +1 -1
  170. package/dist/twilight/{p-vvacIepq.system.js.map → p-C4gOv56I.system.js.map} +1 -1
  171. package/dist/twilight/{p-CbLv2Rkn.system.js.map → p-C7B9pjwv.system.js.map} +1 -1
  172. package/dist/twilight/{p-6eZfgC1O.system.js.map → p-CCr4sv_K.system.js.map} +1 -1
  173. package/dist/twilight/{p-DO9CJiWa.system.js.map → p-CECjqlBg.system.js.map} +1 -1
  174. package/dist/twilight/p-CPIDPWPd.system.js.map +1 -0
  175. package/dist/twilight/{p-DraEtCIO.system.js.map → p-CT4XUl4u.system.js.map} +1 -1
  176. package/dist/twilight/{p-Mx729n7_.system.js.map → p-CT7GoHDG.system.js.map} +1 -1
  177. package/dist/twilight/{p-EWYMQsdr.js → p-CayW-agT.js} +3 -3
  178. package/dist/twilight/{p-EWYMQsdr.js.map → p-CayW-agT.js.map} +1 -1
  179. package/dist/twilight/{p-zj6gyLfC.system.js.map → p-Ccj3kuAD.system.js.map} +1 -1
  180. package/dist/twilight/{p-Ew9kSVbn.system.js.map → p-CeyDIaJF.system.js.map} +1 -1
  181. package/dist/twilight/{p-CeyGkw1h.system.js.map → p-CjXAM86c.system.js.map} +1 -1
  182. package/dist/twilight/{p-BU23HIMq.system.js → p-CmumtzEL.system.js} +3 -3
  183. package/dist/twilight/{p-BU23HIMq.system.js.map → p-CmumtzEL.system.js.map} +1 -1
  184. package/dist/twilight/{p-48XKn75T.system.js.map → p-D4ot6EsS.system.js.map} +1 -1
  185. package/dist/twilight/{p-Dd5CEUFO.system.js.map → p-DEOECcHf.system.js.map} +1 -1
  186. package/dist/twilight/{p-gm6N2F_h.system.js.map → p-DUKloBXK.system.js.map} +1 -1
  187. package/dist/twilight/{p-Cni316MV.system.js.map → p-Dg8Ywiaf.system.js.map} +1 -1
  188. package/dist/twilight/{p-5QHjuX9p.system.js.map → p-Dmm2RXZq.system.js.map} +1 -1
  189. package/dist/twilight/{p-QtuY1UHD.system.js.map → p-DraNKP6B.system.js.map} +1 -1
  190. package/dist/twilight/{p-a0nHD-aB.system.js.map → p-DzJCsxNk.system.js.map} +1 -1
  191. package/dist/twilight/{p-m9Evhpmi.system.js → p-FxRE-bWf.system.js} +2 -2
  192. package/dist/twilight/{p-m9Evhpmi.system.js.map → p-FxRE-bWf.system.js.map} +1 -1
  193. package/dist/twilight/{p-B3t8frU_.js → p-PnQHllOh.js} +2 -2
  194. package/dist/twilight/{p-B3t8frU_.js.map → p-PnQHllOh.js.map} +1 -1
  195. package/dist/twilight/{p-BBMoQKyK.system.js.map → p-UOO6uSKD.system.js.map} +1 -1
  196. package/dist/twilight/{p-L8BD77j0.system.js.map → p-W3JU15BC.system.js.map} +1 -1
  197. package/dist/twilight/{p-9f657953.system.entry.js → p-a78387e7.system.entry.js} +2 -2
  198. package/dist/twilight/{p-abcc0cbf.entry.js → p-aa6a0113.entry.js} +2 -2
  199. package/dist/twilight/{p-2147391e.system.entry.js → p-ad02a471.system.entry.js} +2 -2
  200. package/dist/twilight/{p-c8053b6f.entry.js → p-b63bc4db.entry.js} +2 -2
  201. package/dist/twilight/{p-213c3ce4.entry.js → p-b72f268b.entry.js} +2 -2
  202. package/dist/twilight/{p-f2dda5b0.system.entry.js → p-c70ed29b.system.entry.js} +2 -2
  203. package/dist/twilight/{p-5a86938a.system.entry.js → p-cdc147d2.system.entry.js} +2 -2
  204. package/dist/twilight/p-d0912efd.entry.js +5 -0
  205. package/dist/twilight/p-d0912efd.entry.js.map +1 -0
  206. package/dist/twilight/{p-55ce45d1.system.entry.js → p-d14e40fe.system.entry.js} +2 -2
  207. package/dist/twilight/{p-01578d6d.system.entry.js → p-d2c834be.system.entry.js} +2 -2
  208. package/dist/twilight/{p-32429afe.system.entry.js → p-d56a7bd9.system.entry.js} +2 -2
  209. package/dist/twilight/{p-50c60622.entry.js → p-d600f506.entry.js} +2 -2
  210. package/dist/twilight/{p-b6ac3dd8.system.entry.js → p-db68e58b.system.entry.js} +2 -2
  211. package/dist/twilight/p-db68e58b.system.entry.js.map +1 -0
  212. package/dist/twilight/{p-95e2b228.system.entry.js → p-e061a1f5.system.entry.js} +2 -2
  213. package/dist/twilight/{p-065d60f6.entry.js → p-e084e3c4.entry.js} +2 -2
  214. package/dist/twilight/{p-0ebd2162.entry.js → p-e9ca7e7c.entry.js} +2 -2
  215. package/dist/twilight/{p-df8a68d9.system.entry.js → p-ee97bc7b.system.entry.js} +2 -2
  216. package/dist/twilight/{p-8079920d.system.entry.js → p-f5ce1227.system.entry.js} +2 -2
  217. package/dist/twilight/{p-e9046909.system.entry.js → p-fb9cd621.system.entry.js} +2 -2
  218. package/dist/twilight/{p-01f043b8.entry.js → p-fdd3788a.entry.js} +2 -2
  219. package/dist/twilight/{p-zB1aXyll.system.js.map → p-hIDulQlu.system.js.map} +1 -1
  220. package/dist/twilight/p-qziIzWVk.system.js.map +1 -0
  221. package/dist/twilight/{p-Bs4v2LtA.system.js.map → p-y427D1HL.system.js.map} +1 -1
  222. package/dist/twilight/salla-booking-field.salla-conditional-fields.entry.esm.js.map +1 -1
  223. package/dist/twilight/salla-offer.entry.esm.js.map +1 -1
  224. package/dist/twilight/twilight.esm.js +1 -1
  225. package/dist/twilight/twilight.js +1 -1
  226. package/package.json +5 -5
  227. package/dist/twilight/p-1fbf0ba0.entry.js.map +0 -1
  228. package/dist/twilight/p-545302d2.entry.js +0 -5
  229. package/dist/twilight/p-545302d2.entry.js.map +0 -1
  230. package/dist/twilight/p-B3dc8MoR.system.js.map +0 -1
  231. package/dist/twilight/p-BkvW8UWg.system.js.map +0 -1
  232. package/dist/twilight/p-a22b72f6.entry.js +0 -5
  233. package/dist/twilight/p-b6ac3dd8.system.entry.js.map +0 -1
  234. package/dist/twilight/p-d0122bff.system.entry.js +0 -5
  235. package/dist/twilight/p-d0122bff.system.entry.js.map +0 -1
  236. /package/dist/twilight/{p-4fbad277.entry.js.map → p-0649d076.entry.js.map} +0 -0
  237. /package/dist/twilight/{p-b6d17480.system.entry.js.map → p-1696a245.system.entry.js.map} +0 -0
  238. /package/dist/twilight/{p-1d879370.entry.js.map → p-19f533ec.entry.js.map} +0 -0
  239. /package/dist/twilight/{p-0bdf2224.entry.js.map → p-1dd178a2.entry.js.map} +0 -0
  240. /package/dist/twilight/{p-1f4fc47f.entry.js.map → p-20bdcd53.entry.js.map} +0 -0
  241. /package/dist/twilight/{p-5c52e00c.entry.js.map → p-247636ef.entry.js.map} +0 -0
  242. /package/dist/twilight/{p-38a60819.entry.js.map → p-269ebd5d.entry.js.map} +0 -0
  243. /package/dist/twilight/{p-fe7d4113.system.entry.js.map → p-2a10bff2.system.entry.js.map} +0 -0
  244. /package/dist/twilight/{p-cd6c8a64.entry.js.map → p-2d0c2877.entry.js.map} +0 -0
  245. /package/dist/twilight/{p-8a42ee60.system.entry.js.map → p-2da442c2.system.entry.js.map} +0 -0
  246. /package/dist/twilight/{p-c7589247.system.entry.js.map → p-3093ea8e.system.entry.js.map} +0 -0
  247. /package/dist/twilight/{p-7f0b3753.entry.js.map → p-316e3ea9.entry.js.map} +0 -0
  248. /package/dist/twilight/{p-f5929cee.entry.js.map → p-33963e7d.entry.js.map} +0 -0
  249. /package/dist/twilight/{p-feb9b85a.entry.js.map → p-37a3c661.entry.js.map} +0 -0
  250. /package/dist/twilight/{p-d9073cf3.entry.js.map → p-41480e7b.entry.js.map} +0 -0
  251. /package/dist/twilight/{p-2a8279d6.entry.js.map → p-41ecc4f7.entry.js.map} +0 -0
  252. /package/dist/twilight/{p-9395f082.system.entry.js.map → p-44a213de.system.entry.js.map} +0 -0
  253. /package/dist/twilight/{p-a22b72f6.entry.js.map → p-4ced9aab.entry.js.map} +0 -0
  254. /package/dist/twilight/{p-ec81a36e.entry.js.map → p-51195e76.entry.js.map} +0 -0
  255. /package/dist/twilight/{p-ff9d70f4.system.entry.js.map → p-54bd7e18.system.entry.js.map} +0 -0
  256. /package/dist/twilight/{p-3134126e.system.entry.js.map → p-611b6013.system.entry.js.map} +0 -0
  257. /package/dist/twilight/{p-bd4d0f9a.system.entry.js.map → p-679bb855.system.entry.js.map} +0 -0
  258. /package/dist/twilight/{p-4c74100d.system.entry.js.map → p-67fe618e.system.entry.js.map} +0 -0
  259. /package/dist/twilight/{p-1ebd5929.system.entry.js.map → p-69ec9ac8.system.entry.js.map} +0 -0
  260. /package/dist/twilight/{p-b09ad735.system.entry.js.map → p-740b39fc.system.entry.js.map} +0 -0
  261. /package/dist/twilight/{p-2ea1d52b.entry.js.map → p-756fe45d.entry.js.map} +0 -0
  262. /package/dist/twilight/{p-d2edeb7c.system.entry.js.map → p-7ddf00a9.system.entry.js.map} +0 -0
  263. /package/dist/twilight/{p-5fd16112.system.entry.js.map → p-86dd7e02.system.entry.js.map} +0 -0
  264. /package/dist/twilight/{p-42291bce.entry.js.map → p-8c9ae8bd.entry.js.map} +0 -0
  265. /package/dist/twilight/{p-3b5eb2c9.system.entry.js.map → p-8e242779.system.entry.js.map} +0 -0
  266. /package/dist/twilight/{p-4daef7a0.entry.js.map → p-9361e7a2.entry.js.map} +0 -0
  267. /package/dist/twilight/{p-3aa0ac01.entry.js.map → p-952a8078.entry.js.map} +0 -0
  268. /package/dist/twilight/{p-bf454ddd.entry.js.map → p-9ca8c6b6.entry.js.map} +0 -0
  269. /package/dist/twilight/{p-15e36352.system.entry.js.map → p-9d750b3d.system.entry.js.map} +0 -0
  270. /package/dist/twilight/{p-9f657953.system.entry.js.map → p-a78387e7.system.entry.js.map} +0 -0
  271. /package/dist/twilight/{p-abcc0cbf.entry.js.map → p-aa6a0113.entry.js.map} +0 -0
  272. /package/dist/twilight/{p-2147391e.system.entry.js.map → p-ad02a471.system.entry.js.map} +0 -0
  273. /package/dist/twilight/{p-c8053b6f.entry.js.map → p-b63bc4db.entry.js.map} +0 -0
  274. /package/dist/twilight/{p-213c3ce4.entry.js.map → p-b72f268b.entry.js.map} +0 -0
  275. /package/dist/twilight/{p-f2dda5b0.system.entry.js.map → p-c70ed29b.system.entry.js.map} +0 -0
  276. /package/dist/twilight/{p-5a86938a.system.entry.js.map → p-cdc147d2.system.entry.js.map} +0 -0
  277. /package/dist/twilight/{p-55ce45d1.system.entry.js.map → p-d14e40fe.system.entry.js.map} +0 -0
  278. /package/dist/twilight/{p-01578d6d.system.entry.js.map → p-d2c834be.system.entry.js.map} +0 -0
  279. /package/dist/twilight/{p-32429afe.system.entry.js.map → p-d56a7bd9.system.entry.js.map} +0 -0
  280. /package/dist/twilight/{p-50c60622.entry.js.map → p-d600f506.entry.js.map} +0 -0
  281. /package/dist/twilight/{p-95e2b228.system.entry.js.map → p-e061a1f5.system.entry.js.map} +0 -0
  282. /package/dist/twilight/{p-065d60f6.entry.js.map → p-e084e3c4.entry.js.map} +0 -0
  283. /package/dist/twilight/{p-0ebd2162.entry.js.map → p-e9ca7e7c.entry.js.map} +0 -0
  284. /package/dist/twilight/{p-df8a68d9.system.entry.js.map → p-ee97bc7b.system.entry.js.map} +0 -0
  285. /package/dist/twilight/{p-8079920d.system.entry.js.map → p-f5ce1227.system.entry.js.map} +0 -0
  286. /package/dist/twilight/{p-e9046909.system.entry.js.map → p-fb9cd621.system.entry.js.map} +0 -0
  287. /package/dist/twilight/{p-01f043b8.entry.js.map → p-fdd3788a.entry.js.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"salla-offer.js","sourceRoot":"","sources":["../../../src/components/salla-offer/salla-offer.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,eAAe,CAAC;AACnE,OAAO,EAAgE,QAAQ,EAAE,SAAS,EAAkC,MAAM,cAAc,CAAC;AAGjJ;;;;;;;;;;GAUG;AAKH,MAAM,OAAO,UAAU;IAErB;;QAoBA;;;;;;;;WAQG;QACK,yBAAoB,GAAW,2BAA2B,CAAC;QAEnE,oCAAoC;QAC3B,eAAU,GAAY,EAAE,CAAC;QAEzB,mBAAc,GAAY,KAAK,CAAC;QAKhC,gBAAW,GAAY,KAAK,CAAC;QAC7B,cAAS,GAAY,KAAK,CAAC;QAC3B,cAAS,GAAY,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,4CAA4C,CAAC,CAAC;QAE7F,2BAA2B;QAClB,0BAAqB,GAAW,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,wBAAwB,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;QACxF,uBAAkB,GAAW,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAA;QAC7E,0BAAqB,GAAW,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAA;QACzE,uBAAkB,GAAW,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAA;QAC3E,+BAA0B,GAAW,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAA;QAC7F,sCAAiC,GAAW,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAA;QACtG,sBAAiB,GAAiC,CAAC,QAAQ,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,0BAA0B,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAA;QAjD/H,WAAW;QACX,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE;YACvB,IAAI,CAAC,qBAAqB,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;YACtE,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;YAC3E,IAAI,CAAC,qBAAqB,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;YACvE,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;YACzE,IAAI,CAAC,0BAA0B,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAC;YAC3F,IAAI,CAAC,iCAAiC,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAC;YACpG,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC;QAC5B,CAAC,CAAC,CAAA;QAEF,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE;YACjB,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAAA;YAChD,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,CAAC,MAAM,CAAA;QACnG,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,YAAY,GAAG,CAAA,MAAA,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,mBAAmB,CAAC,0CAAE,SAAS,KAAI,uFAAuF,CAAC;KACxK;IAuCO,qBAAqB;QAC3B,OAAO;YACL,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,eAAe,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE;YAC9D,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,kBAAkB,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE;SAC1E,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,QAAQ,CAAC;IAClC,CAAC;IAED,iBAAiB;QACf,IAAI,CAAC,kBAAkB,GAAG,CAAC,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;QAC1E,4CAA4C;QAC5C,gBAAgB;QAChB,kFAAkF;QAClF,IAAI;QAEJ,OAAO,CAAC,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;aACpD,IAAI,CAAC,GAAG,EAAE;YACT,IAAI,CAAC,SAAS,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,gBAAgB,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,4CAA4C,CAAC,CAAA;YACvH,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;gBACnB,OAAO;YACT,CAAC;YACD,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;QAC1E,CAAC,CACA;aACA,IAAI,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,qBAAqB,EAAE,CAAC,CAAC;aAC3D,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE;YACZ,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC;gBACzC,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;YACxD,CAAC;YACD,8BAA8B;YAC9B,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,IAAI,EAAE,SAAS,CAAC,QAAQ,EAAE,SAAS,CAAC,cAAc,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAW,CAAC,CAAC,CAAC;YACxI,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;YAClE,CAAC;YACD,8FAA8F;YAC9F,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,cAAc,EAAE,CAAC;gBAC5C,OAAO,IAAI,CAAC,UAAU,GAAG,CAAC,KAAK,CAAC,CAAC;YACnC,CAAC;YAED,+DAA+D;YAC/D,IAAI,CAAC,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;gBACvD,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,IAAI,CAAC,CAAC;gBACjF,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC;gBACjD,OAAO,IAAI,CAAC,UAAU,CAAC;YACzB,CAAC;YACD,iBAAiB;YACjB,MAAM,IAAI,GAAI,KAAK,CAAC,OAA0B,CAAC,GAAG,CAAC;YAEnD,OAAO,IAAI,CAAC,MAAM,KAAK,UAAU;gBAC/B,wIAAwI;gBACxI,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC;qBAC/E,IAAI,CAAC,CAAC,QAAa,EAAE,EAAE;oBACtB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC;oBAC7B,KAAK,CAAC,OAAe,CAAC,GAAG,GAAG,IAAI,CAAC;oBAClC,OAAO,IAAI,CAAC,UAAU,GAAG,CAAC,KAAK,CAAC,CAAC;gBACnC,CAAC,CAAC,CAAA,kBAAkB;gBACtB,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,CAAA,wGAAwG;qBACrI,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE;oBACZ,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;oBAClE,KAAK,CAAC,OAAe,CAAC,GAAG,GAAG,IAAI,CAAC;oBAClC,OAAO,IAAI,CAAC,UAAU,GAAG,CAAC,KAAK,CAAC,CAAC;gBACnC,CAAC,CAAC,CAAC;QACT,CAAC,CAAC;aACD,IAAI,CAAC,CAAC,MAAe,EAAE,EAAE;YACxB,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;YACrF,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACxB,CAAC,CAAC;aACD,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;YACf,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QAC1B,CAAC,CAAC,CAAC;IACP,CAAC;IAED,gBAAgB;QACd,IAAI,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,4BAA4B,CAAC,CAAC;QAChE,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,SAAS,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAA;IAChD,CAAC;IAGD,cAAc,CAAC,UAAsB,EAAE,GAAU;;QAC/C,IAAI,KAAK,GAAe,EAAE,CAAC;QAE3B,KAAK,MAAM,QAAQ,IAAI,UAAU,EAAE,CAAC;YAClC,IAAI,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,IAAI,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,4DAA4D;gBAC3G,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACvB,CAAC;YACD,IAAI,CAAA,MAAA,QAAQ,CAAC,cAAc,0CAAE,MAAM,IAAG,CAAC,EAAE,CAAC;gBACxC,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC,CAAC;YAC1E,CAAC;QACH,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED,wGAAwG;IACxG,aAAa;QACX,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YACjE,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YACtC,MAAM,YAAY,GAAG,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC;YAElD,IAAI,CAAC,QAAQ,IAAI,CAAC,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;gBAC1C,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;YACpD,CAAC;YAED,OAAO,YAAY,QAAQ,IAAI,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,MAAM,IAAI,YAAY,EAAE,CAAC;QACzF,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;IAED,YAAY;IACZ,oBAAoB;QAClB,IAAI,aAAa,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;QAC5D,yFAAyF;QACzF,IAAI,CAAC,aAAa,IAAI,aAAa,CAAC,SAAS,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC;YACxF,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;YAC3C,OAAO,IAAI,CAAC;QACd,CAAC;QACD,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QAEtB,uCAAuC;QACvC,OAAO,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IAC/C,CAAC;IAED,MAAM;QACJ,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,SAAS;YAAE,OAAO,IAAI,CAAC;QAC/E,MAAM,KAAK,GAAU,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QAExC,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC;QACnH,MAAM,aAAa,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC;QAEnI,MAAM,MAAM,GAAG;YACb,aAAa,EAAE,UAAU;YACzB,gBAAgB,EAAE,aAAa;YAC/B,eAAe,EAAE,IAAI,CAAC,cAAc;SACrC,CAAC;QAEF,OAAO,CACL,WAAK,KAAK,EAAC,iBAAiB;YACzB,SAAG,KAAK,EAAC,sBAAsB,IAAE,IAAI,CAAC,kBAAkB,CAAK;YAG9D,kCAAc,IAAI,EAAC,UAAU,EAAC,EAAE,EAAC,cAAc,IAAK,MAAM;gBACxD,WAAK,IAAI,EAAC,OAAO,IACd,IAAI,CAAC,yBAAyB,CAAC,KAAK,CAAC,IAAI,CAAC,CACvC,CACO,CACX,CACP,CAAC;IACJ,CAAC;IAEO,yBAAyB,CAAC,SAA6B;QAC7D,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACrB,OAAO,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAClC,CAAC;QACD,IAAI,SAAS,IAAI,SAAS,CAAC,QAAQ,EAAE,CAAC;YACpC,OAAO,IAAI,CAAC,qBAAqB,EAAE,CAAC;QACtC,CAAC;QAED,OAAO,IAAI,CAAC,0BAA0B,EAAE,CAAC;IAC3C,CAAC;IAED;;;;;OAKG;IACK,oBAAoB,CAAC,QAAkB;QAC7C,OAAO,WAAK,KAAK,EAAC,sCAAsC,EAAC,SAAS,EAAE,IAAI,CAAC,YAAY;iBAClF,OAAO,CAAC,UAAU,EAAE,QAAQ,CAAC,GAAG,CAAC;iBACjC,OAAO,CAAC,WAAW,EAAE,QAAQ,CAAC,IAAI,IAAI,aAAa,CAAC;iBACpD,OAAO,CAAC,WAAW,EAAE,QAAQ,CAAC,IAAI,CAAC,GAAQ,CAAA;IAChD,CAAC;IAEO,qBAAqB;;QAC3B,MAAM,OAAO,GAAI,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,OAA0B,CAAA;QAC9D,OAAO;YACL,MAAA,OAAO,CAAC,GAAG,CAAC,QAAQ,0CAAE,GAAG,CAAC,CAAC,OAAgB,EAAE,EAAE,CAAC,CAC9C,WAAK,KAAK,EAAC,0BAA0B,IAClC,IAAI,CAAC,kBAAkB;gBACtB,CAAC,CAAC,EAAC,IAAI,CAAC,oBAAoB,IAAC,OAAO,EAAE,OAAO,GAA8B;gBAC3E,CAAC,CAAC,mDAAoC,OAAO,EAAE,OAAO,GAAuB,CAC3E,CACP,CAAC;YACF,MAAA,OAAO,CAAC,GAAG,CAAC,UAAU,0CAAE,GAAG,CAAC,CAAC,QAAkB,EAAE,EAAE,CAAC,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC;SACzF,CAAC;IACJ,CAAC;IAED;;;;;;;;;OASG;IACK,iBAAiB;QACvB,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,SAAgB,EAAE,EAAE;YAC9C,OAAO,WAAK,KAAK,EAAE,EAAE,yBAAyB,EAAE,IAAI,CAAC,cAAc,EAAE,kCAAkC,EAAE,CAAC,IAAI,CAAC,cAAc,EAAE;gBAC7H,WAAK,KAAK,EAAE,EAAE,sBAAsB,EAAE,IAAI,EAAE,yBAAyB,EAAE,CAAC,IAAI,CAAC,cAAc,EAAE,mCAAmC,EAAE,IAAI,CAAC,cAAc,EAAE;oBACrJ,WAAK,KAAK,EAAC,mBAAmB;wBAC5B,WAAK,GAAG,EAAG,SAAS,CAAC,OAAqB,CAAC,IAAI,IAAI,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,oBAAoB,CAAC,cAAa,SAAS,CAAC,OAAqB,CAAC,IAAI,EAAE,GAAG,EAAE,SAAS,CAAC,KAAK,GAAG,QAAQ,GAAI,CACxK;oBACN,UAAI,KAAK,EAAC,8BAA8B,IACpC,SAAS,CAAC,OAAqB,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAe,EAAE,EAAE;wBACjE,OAAO,UAAI,KAAK,EAAC,6BAA6B;4BAC5C,WACE,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,iBAAiB,GAAG,OAAO,GAAG,MAAM,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,oBAAoB,CAAC,cACrF,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,iBAAiB,GAAG,OAAO,GAAG,MAAM,CAAC,EAC7D,GAAG,EAAC,SAAS,GAAG,CACf,CAAA;oBACP,CAAC,CAAC,CACC;oBACJ,IAAI,CAAC,cAAc,CAAC,CAAC;wBACpB,SAAG,KAAK,EAAC,uCAAuC,IAC7C,GAAG,IAAI,CAAC,qBAAqB,IAAK,SAAS,CAAC,OAAqB,CAAC,cAAc,GAAI,SAAS,CAAC,OAAqB,CAAC,aAAa,KAAK,YAAY,IAAI,GAAG,EAAE,CAC1J;wBACJ,CAAC,CAAC,EAAE,CACF;gBACL,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;oBACrB,WAAK,KAAK,EAAC,+CAA+C;wBACxD,cAAK,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,KAAK,CAAM;wBACnC,SAAG,SAAS,EAAE,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,WAAW,EAAG,SAAS,CAAC,OAAqB,CAAC,cAAc,CAAC,GAAM,CAC7H;oBACN,CAAC,CAAC,EAAE,CACF,CAAA;QACR,CAAC,CAAC,CAAA;IACJ,CAAC;IAEO,uBAAuB,CAAC,IAAY,EAAE,KAAK;QACjD,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,GAAG,KAAK,IAAI,CAAC,EAAE,6CAA6C,KAAK,WAAW,CAAC,CAAA;IAC9G,CAAC;IAED;;;;;OAKG;IACK,0BAA0B;;QAChC,MAAM,KAAK,GAAU,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QACxC,IAAI,qBAAqB,GAAI,KAAK,CAAC,OAA+B,CAAC,yBAAyB,CAAC;QAC7F,OAAO,MAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,OAA+B,CAAC,SAAS,0CAAE,GAAG,CAAC,CAAC,QAAkB,EAAE,EAAE,CAAC,WAAK,KAAK,EAAC,0BAA0B;YACrI,WAAK,KAAK,EAAC,2BAA2B;gBACpC,WAAK,KAAK,EAAC,oDAAoD;oBAC7D,SAAG,KAAK,EAAC,oCAAoC,IAAE,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAK;oBAC5F,qBAAqB,CAAC,CAAC;wBACtB,WAAK,KAAK,EAAC,iCAAiC;4BAC1C,gBAAO,IAAI,CAAC,qBAAqB,CAAQ;4BACzC,YAAM,KAAK,EAAC,wCAAwC,IAAE,QAAQ,CAAC,iBAAiB,CAAQ;;4BAAC,gBAAO,IAAI,CAAC,YAAY,CAAQ,CACrH,CAAC,CAAC,CAAC,EAAE,CACT;gBACN,SAAG,KAAK,EAAC,gDAAgD;oBAAE,IAAI,CAAC,kBAAkB;;oBAC/E;wBAAO,QAAQ,CAAC,UAAU;wBAAE,CAAC,CAAC,QAAQ,CAAC,UAAU,IAAI,GAAG,CAAQ;wBAAK,CACpE,CACF,CACL,CAAA;IACH,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAEF","sourcesContent":["import { Component, Element, Prop, State, h } from '@stencil/core';\nimport { Offer, Category, Product, Discount, Currency, BuyXGetYDetail, PageType, OfferType, BankOffer, DiscountDetailTable } from './interfaces';\n\n\n/**\n * `salla-offer` is a StencilJS component that displays offers, categories, products, banks, and discount information.\n * It uses the `salla-slider` component for carousel functionality.\n *\n * @slot category - The slot for customizing the category entry layout.\n * \n * @csspart custom - Custom CSS part to target specific elements in the component.\n *\n * @example\n * <salla-offer product-id=\"123\"></salla-offer>\n */\n@Component({\n tag: 'salla-offer',\n styleUrl: 'salla-offer.scss',\n})\nexport class SallaOffer {\n\n constructor() {\n // Language\n salla.lang.onLoaded(() => {\n this.offer_with_price_text = salla.lang.get('pages.offer.with_price');\n this.with_discount_text = salla.lang.get('pages.products.with_a_discount');\n this.product_discount_text = salla.lang.get('pages.products.discount');\n this.special_offer_text = salla.lang.get('pages.products.special_offer');\n this.multipleBankOfferTitleText = salla.lang.get('pages.offer.multiple_bank_offers_title');\n this.multipleBankOfferTitleDescription = salla.lang.get('pages.offer.multiple_bank_offers_message');\n this.buy_quantity_text(0);\n })\n\n salla.onReady(() => {\n this.currentPage = salla.config.get('page.slug')\n this.userCurrency = salla.config.get('currencies')[salla.config.get('user.currency_code')].symbol\n });\n\n this.categorySlot = this.host.querySelector('[slot=\"category\"]')?.innerHTML || '<a href={url} class=\"s-offer-slide-cat-entry\"><i class={icon}></i><h4>{name}</h4></a>';\n }\n\n /**\n * Custom Card Component for the Salla Products List.\n *\n * This component allows you to customize the appearance of individual product cards within a Salla Products List.\n *\n * @example\n * <salla-products-list product-card-component=\"my-custom-card-style1\" ...\n * <salla-products-list product-card-component=\"my-custom-card-style2\" ...\n */\n @Prop() productCardComponent: string = 'custom-salla-product-card';\n\n // Declare component state variables\n @State() offersList: Offer[] = [];\n @State() userCurrency: Currency;\n @State() isMultipleBank: boolean = false;\n @State() title?: string;\n @State() currentPage: string;\n @State() hasCustomComponent: boolean;\n\n @State() isBankOffer: boolean = false;\n @State() canRender: boolean = false;\n @State() showOffer: boolean = salla.config.get('store.settings.product.show_special_offers');\n\n // Default translated texts\n @State() offer_with_price_text: string = salla.lang.get('pages.offer.with_price', { price: '' });\n @State() with_discount_text: string = salla.lang.get('pages.products.with_a_discount')\n @State() product_discount_text: string = salla.lang.get('pages.products.discount')\n @State() special_offer_text: string = salla.lang.get('pages.products.special_offer')\n @State() multipleBankOfferTitleText: string = salla.lang.get('pages.offer.multiple_bank_offers_title')\n @State() multipleBankOfferTitleDescription: string = salla.lang.get('pages.offer.multiple_bank_offers_message')\n @State() buy_quantity_text: (quantity: number) => string = (quantity) => salla.lang.get('pages.offer.buy_quantity', { quantity })\n\n // Reference to the host element\n @Element() host: HTMLElement;\n\n private categorySlot: string;\n\n private getEndpointByPageName(): string {\n return {\n [PageType.Cart]: `offers/cart/${salla.storage.get('cart.id')}`,\n [PageType.ProductDetail]: `offers/product/${salla.config.get('page.id')}`,\n }[this.currentPage] || \"offers\";\n }\n\n componentWillLoad() {\n this.hasCustomComponent = !!customElements.get(this.productCardComponent);\n // let offers = this.getOffersFromStorage();\n // if (offers) {\n // return offers.then(offersFromStorage => this.offersList = offersFromStorage);\n // }\n\n return (new Promise(resolve => salla.onReady(resolve)))\n .then(() => {\n this.showOffer = !salla.url.is_page('product.single') || salla.config.get('store.settings.product.show_special_offers')\n if (this.showOffer) {\n return;\n }\n throw new Error(\"Merchant disabled showing the offers on product page\");\n }\n )\n .then(() => salla.api.request(this.getEndpointByPageName()))\n .then((res) => {\n if (!(this.offersList = res.data).length) {\n throw new Error('salla-offers:: There is no offers!');\n }\n //we support these offers only\n const offer = this.offersList.find(offer => [OfferType.Bank, OfferType.BuyXGetY, OfferType.DiscountsTable].includes(offer.type as any));\n if (!offer) {\n throw new Error('salla-offers:: Offer type not supported yet!');\n }\n //because there is no need for special handling for discounts table, just skip the other cases\n if (offer.type === OfferType.DiscountsTable) {\n return this.offersList = [offer];\n }\n\n //if it's banks offer, we need to include the other banks overs\n if ((this.isBankOffer = offer.type === OfferType.Bank)) {\n this.offersList = this.offersList.filter(offer => offer.type === OfferType.Bank);\n this.isMultipleBank = this.offersList.length > 1;\n return this.offersList;\n }\n //BuyXGetY offers\n const getY = (offer.details as BuyXGetYDetail).get;\n\n return getY.source === 'products'\n //todo:: avoid this request, and the handling for the products, just use `salla-products-slider` and don't forget to pass the customcard\n ? salla.product.api.fetch({ source: \"selected\", source_value: getY.source_value })\n .then((response: any) => {\n getY.products = response.data;\n (offer.details as any).get = getY;\n return this.offersList = [offer];\n })//set the products\n : salla.product.api.categories()//get all categories in one query, then extract only the selected one, instead of sending multi requests\n .then((res) => {\n getY.categories = this.findCategories(res.data, getY.source_value);\n (offer.details as any).get = getY;\n return this.offersList = [offer];\n });\n })\n .then((offers: Offer[]) => {\n salla.storage.set(this.getStorageKey(), { offers, stored_at: new Date().getTime() });\n this.canRender = true;\n })\n .catch((error) => {\n salla.logger.warn(error)\n });\n }\n\n componentDidLoad() {\n let nav = this.host.querySelector('.s-slider-block__title-nav');\n nav?.classList.add(\"s-offer-bank-payment-nav\")\n }\n\n\n findCategories(categories: Category[], ids: any[]): Category[] {\n let found: Category[] = [];\n\n for (const category of categories) {\n if (ids.includes(category.id_ || category.id)) { //here we are using || because we are planning to drop `id_`\n found.push(category);\n }\n if (category.sub_categories?.length > 0) {\n found = found.concat(this.findCategories(category.sub_categories, ids));\n }\n }\n\n return found;\n }\n\n //todo::add to the key params, to make sure it will support multi offers in the same page if it's wanted\n getStorageKey(): string {\n try {\n const pageSlug = salla.config.get('page.slug').replace('.', '_');\n const locale = salla.lang.getLocale();\n const currencyCode = salla.config.currency().code;\n\n if (!pageSlug || !locale || !currencyCode) {\n throw new Error('Unable to get the storage key.');\n }\n\n return `s-offers-${pageSlug}-${salla.config.get('page.id')}-${locale}-${currencyCode}`;\n } catch (error) {\n return '';\n }\n }\n\n //@ts-ignore\n getOffersFromStorage(): null | Promise<Offer[]> {\n let storageOffers = salla.storage.get(this.getStorageKey());\n //if the offers not existed, or it has been stored before 10 minutes from now, ignore it;\n if (!storageOffers || storageOffers.stored_at < (new Date().getTime() - 10 * 60 * 1000)) {\n salla.storage.remove(this.getStorageKey());\n return null;\n }\n this.canRender = true;\n\n //return it as resolve to support .then\n return Promise.resolve(storageOffers.offers);\n }\n\n render() {\n if (!this.offersList.length || !this.canRender || !this.showOffer) return null;\n const offer: Offer = this.offersList[0];\n\n const blockTitle = this.isBankOffer ? (this.isMultipleBank ? this.multipleBankOfferTitleText : null) : offer.title;\n const blockSubTitle = this.isBankOffer ? (this.isMultipleBank ? this.multipleBankOfferTitleDescription : null) : offer.description;\n\n const titles = {\n 'block-title': blockTitle,\n 'block-subTitle': blockSubTitle,\n 'show-controls': this.isMultipleBank\n };\n\n return (\n <div class=\"s-offer-wrapper\">\n {<p class=\"s-offer-corner-badge\">{this.special_offer_text}</p>}\n {/* discounts table is not a slider, it's a table🤔 */}\n {/* single bank offer is not a slider, it's a dom without slider🤔 */}\n <salla-slider type=\"carousel\" id=\"offer-slider\" {...titles}>\n <div slot='items'>\n {this.renderSectionForOfferType(offer.type)}\n </div>\n </salla-slider>\n </div>\n );\n }\n\n private renderSectionForOfferType(offerType: OfferType | string) {\n if (this.isBankOffer) {\n return this.renderBankSection();\n }\n if (offerType == OfferType.BuyXGetY) {\n return this.renderBuyXGetYSection();\n }\n\n return this.renderDiscountTableSection();\n }\n\n /**\n * Generates content for the categories section.\n *\n * @param offeredCategories - An array of Category objects.\n * @returns An array of HTML elements representing categories.\n */\n private getCategoriesSection(category: Category) {\n return <div class=\"s-offer-slide-one-sixth swiper-slide\" innerHTML={this.categorySlot\n .replace(/\\{url\\}/g, category.url)\n .replace(/\\{icon\\}/g, category.icon || \"sicon-store\")\n .replace(/\\{name\\}/g, category.name)}></div>\n }\n\n private renderBuyXGetYSection() {\n const details = (this.offersList[0].details as BuyXGetYDetail)\n return [\n details.get.products?.map((product: Product) => (\n <div class=\"s-offer-slide-one-fourth\">\n {this.hasCustomComponent\n ? <this.productCardComponent product={product}></this.productCardComponent>\n : <salla-product-card shadow-on-hover product={product}></salla-product-card>}\n </div>\n )),\n details.get.categories?.map((category: Category) => this.getCategoriesSection(category))\n ];\n }\n\n /**\n * Generates content for the bank section.\n *\n * @param offeredBank - An array of Bank objects.\n * @param name - The title of the current offer.\n * @param description - The description of the current offer.\n * @returns An array of HTML elements representing banks.\n * \n * TODO: loop over the list and filter bank types and pass it to this function\n */\n private renderBankSection() {\n return this.offersList.map((bankOffer: Offer) => {\n return <div class={{ \"s-offer-slide-one-sixth\": this.isMultipleBank, \"s-offer-bank-wrapper-sinlge-item\": !this.isMultipleBank }}>\n <div class={{ \"s-offer-bank-wrapper\": true, \"s-offer-slide-one-sixth\": !this.isMultipleBank, \"s-offer-bank-wrapper-multi-spacer\": this.isMultipleBank }}>\n <div class=\"s-offer-bank-logo\">\n <img src={(bankOffer.details as BankOffer).logo || salla.url.cdn('images/s-empty.png')} data-src={(bankOffer.details as BankOffer).logo} alt={bankOffer.title + \" offer\"} />\n </div>\n <ul class=\"s-offer-bank-payment-wrapper\">\n {(bankOffer.details as BankOffer).payments.map((payment: string) => {\n return <li class=\"s-offer-bank-payment-single\">\n <img\n src={salla.url.cdn('images/payment/' + payment + '.png') || salla.url.cdn('images/s-empty.png')}\n data-src={salla.url.cdn('images/payment/' + payment + '.png')}\n alt=\"payment\" />\n </li>\n })}\n </ul>\n {this.isMultipleBank ?\n <p class=\"s-offer-bank-payment-discount-percent\">\n {`${this.product_discount_text} ${(bankOffer.details as BankOffer).discount_value}${(bankOffer.details as BankOffer).discount_type === \"percentage\" && '%'}`}\n </p>\n : \"\"}\n </div>\n {!this.isMultipleBank ?\n <div class=\"s-offer-bank-message s-offer-slide-one-fourth\">\n <h2>{this.offersList[0].title}</h2>\n <p innerHTML={this.generateBankDescription(this.offersList[0].description, (bankOffer.details as BankOffer).discount_value)}></p>\n </div>\n : \"\"}\n </div>\n })\n }\n\n private generateBankDescription(desc: string, value): string {\n return desc.replace(new RegExp(`${value} %`), `<span class=\"s-offer-bank-message-amount\">${value} %</span>`)\n }\n\n /**\n * Generates content for the discount table section.\n *\n * @param discountTable - An array of Discount objects.\n * @returns An array of HTML elements representing discounts_table.\n */\n private renderDiscountTableSection() {\n const offer: Offer = this.offersList[0];\n let show_discounted_price = (offer.details as DiscountDetailTable).show_price_after_discount;\n return (this.offersList[0].details as DiscountDetailTable).discounts?.map((discount: Discount) => <div class=\"s-offer-slide-one-fourth\">\n <div class=\"s-offer-slide-offer-entry\">\n <div class=\"s-offer-slide-offer-entry-price-quantity-container\">\n <p class=\"s-offer-slide-offer-entry-quantity\">{this.buy_quantity_text(discount.quantity)}</p>\n {show_discounted_price ?\n <div class=\"s-offer-slide-offer-entry-price\">\n <span>{this.offer_with_price_text}</span>\n <span class=\"s-offer-slide-offer-entry-price-amount\">{discount.discounted_amount}</span> <span>{this.userCurrency}</span>\n </div> : \"\"}\n </div>\n <p class=\"s-offer-slide-offer-entry-price-amount-percent\">{this.with_discount_text}\n (<span>{discount.percentage}{!!discount.percentage && '%'}</span>)</p>\n </div>\n </div>\n )\n }\n\n}\n"]}
1
+ {"version":3,"file":"salla-offer.js","sourceRoot":"","sources":["../../../src/components/salla-offer/salla-offer.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Element, Prop, State, h } from '@stencil/core';\nimport { Offer, Category, Product, Discount, Currency, BuyXGetYDetail, PageType, OfferType, BankOffer, DiscountDetailTable } from './interfaces';\n\n\n/**\n * `salla-offer` is a StencilJS component that displays offers, categories, products, banks, and discount information.\n * It uses the `salla-slider` component for carousel functionality.\n *\n * @slot category - The slot for customizing the category entry layout.\n * \n * @csspart custom - Custom CSS part to target specific elements in the component.\n *\n * @example\n * <salla-offer product-id=\"123\"></salla-offer>\n */\n@Component({\n tag: 'salla-offer',\n styleUrl: 'salla-offer.scss',\n})\nexport class SallaOffer {\n\n constructor() {\n // Language\n salla.lang.onLoaded(() => {\n this.offer_with_price_text = salla.lang.get('pages.offer.with_price');\n this.with_discount_text = salla.lang.get('pages.products.with_a_discount');\n this.product_discount_text = salla.lang.get('pages.products.discount');\n this.special_offer_text = salla.lang.get('pages.products.special_offer');\n this.multipleBankOfferTitleText = salla.lang.get('pages.offer.multiple_bank_offers_title');\n this.multipleBankOfferTitleDescription = salla.lang.get('pages.offer.multiple_bank_offers_message');\n this.buy_quantity_text(0);\n })\n\n salla.onReady(() => {\n this.currentPage = salla.config.get('page.slug')\n this.userCurrency = salla.config.get('currencies')[salla.config.get('user.currency_code')].symbol\n });\n\n this.categorySlot = this.host.querySelector('[slot=\"category\"]')?.innerHTML || '<a href={url} class=\"s-offer-slide-cat-entry\"><i class={icon}></i><h4>{name}</h4></a>';\n }\n\n /**\n * Custom Card Component for the Salla Products List.\n *\n * This component allows you to customize the appearance of individual product cards within a Salla Products List.\n *\n * @example\n * <salla-products-list product-card-component=\"my-custom-card-style1\" ...\n * <salla-products-list product-card-component=\"my-custom-card-style2\" ...\n */\n @Prop() productCardComponent: string = 'custom-salla-product-card';\n\n // Declare component state variables\n @State() offersList: Offer[] = [];\n @State() userCurrency: Currency;\n @State() isMultipleBank: boolean = false;\n @State() title?: string;\n @State() currentPage: string;\n @State() hasCustomComponent: boolean;\n\n @State() isBankOffer: boolean = false;\n @State() canRender: boolean = false;\n @State() showOffer: boolean = salla.config.get('store.settings.product.show_special_offers');\n\n // Default translated texts\n @State() offer_with_price_text: string = salla.lang.get('pages.offer.with_price', { price: '' });\n @State() with_discount_text: string = salla.lang.get('pages.products.with_a_discount')\n @State() product_discount_text: string = salla.lang.get('pages.products.discount')\n @State() special_offer_text: string = salla.lang.get('pages.products.special_offer')\n @State() multipleBankOfferTitleText: string = salla.lang.get('pages.offer.multiple_bank_offers_title')\n @State() multipleBankOfferTitleDescription: string = salla.lang.get('pages.offer.multiple_bank_offers_message')\n @State() buy_quantity_text: (quantity: number) => string = (quantity) => salla.lang.get('pages.offer.buy_quantity', { quantity })\n\n // Reference to the host element\n @Element() host: HTMLElement;\n\n private categorySlot: string;\n\n private async getEndpointByPageName(): Promise<string> {\n if (this.currentPage == PageType.Cart) {\n const cartId = await Salla.cart.getCurrentCartId();\n return `offers/cart/${cartId}`;\n }\n\n if (this.currentPage == PageType.ProductDetail) {\n return `offers/product/${salla.config.get('page.id')}`;\n }\n\n return \"offers\";\n }\n\n componentWillLoad() {\n this.hasCustomComponent = !!customElements.get(this.productCardComponent);\n // let offers = this.getOffersFromStorage();\n // if (offers) {\n // return offers.then(offersFromStorage => this.offersList = offersFromStorage);\n // }\n\n return (new Promise(resolve => salla.onReady(resolve)))\n .then(() => {\n this.showOffer = !salla.url.is_page('product.single') || salla.config.get('store.settings.product.show_special_offers')\n if (this.showOffer) {\n return;\n }\n throw new Error(\"Merchant disabled showing the offers on product page\");\n }\n )\n .then(async () => salla.api.request(await this.getEndpointByPageName()))\n .then((res) => {\n if (!(this.offersList = res.data).length) {\n throw new Error('salla-offers:: There is no offers!');\n }\n //we support these offers only\n const offer = this.offersList.find(offer => [OfferType.Bank, OfferType.BuyXGetY, OfferType.DiscountsTable].includes(offer.type as any));\n if (!offer) {\n throw new Error('salla-offers:: Offer type not supported yet!');\n }\n //because there is no need for special handling for discounts table, just skip the other cases\n if (offer.type === OfferType.DiscountsTable) {\n return this.offersList = [offer];\n }\n\n //if it's banks offer, we need to include the other banks overs\n if ((this.isBankOffer = offer.type === OfferType.Bank)) {\n this.offersList = this.offersList.filter(offer => offer.type === OfferType.Bank);\n this.isMultipleBank = this.offersList.length > 1;\n return this.offersList;\n }\n //BuyXGetY offers\n const getY = (offer.details as BuyXGetYDetail).get;\n\n return getY.source === 'products'\n //todo:: avoid this request, and the handling for the products, just use `salla-products-slider` and don't forget to pass the customcard\n ? salla.product.api.fetch({ source: \"selected\", source_value: getY.source_value })\n .then((response: any) => {\n getY.products = response.data;\n (offer.details as any).get = getY;\n return this.offersList = [offer];\n })//set the products\n : salla.product.api.categories()//get all categories in one query, then extract only the selected one, instead of sending multi requests\n .then((res) => {\n getY.categories = this.findCategories(res.data, getY.source_value);\n (offer.details as any).get = getY;\n return this.offersList = [offer];\n });\n })\n .then((offers: Offer[]) => {\n salla.storage.set(this.getStorageKey(), { offers, stored_at: new Date().getTime() });\n this.canRender = true;\n })\n .catch((error) => {\n salla.logger.warn(error)\n });\n }\n\n componentDidLoad() {\n let nav = this.host.querySelector('.s-slider-block__title-nav');\n nav?.classList.add(\"s-offer-bank-payment-nav\")\n }\n\n\n findCategories(categories: Category[], ids: any[]): Category[] {\n let found: Category[] = [];\n\n for (const category of categories) {\n if (ids.includes(category.id_ || category.id)) { //here we are using || because we are planning to drop `id_`\n found.push(category);\n }\n if (category.sub_categories?.length > 0) {\n found = found.concat(this.findCategories(category.sub_categories, ids));\n }\n }\n\n return found;\n }\n\n //todo::add to the key params, to make sure it will support multi offers in the same page if it's wanted\n getStorageKey(): string {\n try {\n const pageSlug = salla.config.get('page.slug').replace('.', '_');\n const locale = salla.lang.getLocale();\n const currencyCode = salla.config.currency().code;\n\n if (!pageSlug || !locale || !currencyCode) {\n throw new Error('Unable to get the storage key.');\n }\n\n return `s-offers-${pageSlug}-${salla.config.get('page.id')}-${locale}-${currencyCode}`;\n } catch (error) {\n return '';\n }\n }\n\n //@ts-ignore\n getOffersFromStorage(): null | Promise<Offer[]> {\n let storageOffers = salla.storage.get(this.getStorageKey());\n //if the offers not existed, or it has been stored before 10 minutes from now, ignore it;\n if (!storageOffers || storageOffers.stored_at < (new Date().getTime() - 10 * 60 * 1000)) {\n salla.storage.remove(this.getStorageKey());\n return null;\n }\n this.canRender = true;\n\n //return it as resolve to support .then\n return Promise.resolve(storageOffers.offers);\n }\n\n render() {\n if (!this.offersList.length || !this.canRender || !this.showOffer) return null;\n const offer: Offer = this.offersList[0];\n\n const blockTitle = this.isBankOffer ? (this.isMultipleBank ? this.multipleBankOfferTitleText : null) : offer.title;\n const blockSubTitle = this.isBankOffer ? (this.isMultipleBank ? this.multipleBankOfferTitleDescription : null) : offer.description;\n\n const titles = {\n 'block-title': blockTitle,\n 'block-subTitle': blockSubTitle,\n 'show-controls': this.isMultipleBank\n };\n\n return (\n <div class=\"s-offer-wrapper\">\n {<p class=\"s-offer-corner-badge\">{this.special_offer_text}</p>}\n {/* discounts table is not a slider, it's a table🤔 */}\n {/* single bank offer is not a slider, it's a dom without slider🤔 */}\n <salla-slider type=\"carousel\" id=\"offer-slider\" {...titles}>\n <div slot='items'>\n {this.renderSectionForOfferType(offer.type)}\n </div>\n </salla-slider>\n </div>\n );\n }\n\n private renderSectionForOfferType(offerType: OfferType | string) {\n if (this.isBankOffer) {\n return this.renderBankSection();\n }\n if (offerType == OfferType.BuyXGetY) {\n return this.renderBuyXGetYSection();\n }\n\n return this.renderDiscountTableSection();\n }\n\n /**\n * Generates content for the categories section.\n *\n * @param offeredCategories - An array of Category objects.\n * @returns An array of HTML elements representing categories.\n */\n private getCategoriesSection(category: Category) {\n return <div class=\"s-offer-slide-one-sixth swiper-slide\" innerHTML={this.categorySlot\n .replace(/\\{url\\}/g, category.url)\n .replace(/\\{icon\\}/g, category.icon || \"sicon-store\")\n .replace(/\\{name\\}/g, category.name)}></div>\n }\n\n private renderBuyXGetYSection() {\n const details = (this.offersList[0].details as BuyXGetYDetail)\n return [\n details.get.products?.map((product: Product) => (\n <div class=\"s-offer-slide-one-fourth\">\n {this.hasCustomComponent\n ? <this.productCardComponent product={product}></this.productCardComponent>\n : <salla-product-card shadow-on-hover product={product}></salla-product-card>}\n </div>\n )),\n details.get.categories?.map((category: Category) => this.getCategoriesSection(category))\n ];\n }\n\n /**\n * Generates content for the bank section.\n *\n * @param offeredBank - An array of Bank objects.\n * @param name - The title of the current offer.\n * @param description - The description of the current offer.\n * @returns An array of HTML elements representing banks.\n * \n * TODO: loop over the list and filter bank types and pass it to this function\n */\n private renderBankSection() {\n return this.offersList.map((bankOffer: Offer) => {\n return <div class={{ \"s-offer-slide-one-sixth\": this.isMultipleBank, \"s-offer-bank-wrapper-sinlge-item\": !this.isMultipleBank }}>\n <div class={{ \"s-offer-bank-wrapper\": true, \"s-offer-slide-one-sixth\": !this.isMultipleBank, \"s-offer-bank-wrapper-multi-spacer\": this.isMultipleBank }}>\n <div class=\"s-offer-bank-logo\">\n <img src={(bankOffer.details as BankOffer).logo || salla.url.cdn('images/s-empty.png')} data-src={(bankOffer.details as BankOffer).logo} alt={bankOffer.title + \" offer\"} />\n </div>\n <ul class=\"s-offer-bank-payment-wrapper\">\n {(bankOffer.details as BankOffer).payments.map((payment: string) => {\n return <li class=\"s-offer-bank-payment-single\">\n <img\n src={salla.url.cdn('images/payment/' + payment + '.png') || salla.url.cdn('images/s-empty.png')}\n data-src={salla.url.cdn('images/payment/' + payment + '.png')}\n alt=\"payment\" />\n </li>\n })}\n </ul>\n {this.isMultipleBank ?\n <p class=\"s-offer-bank-payment-discount-percent\">\n {`${this.product_discount_text} ${(bankOffer.details as BankOffer).discount_value}${(bankOffer.details as BankOffer).discount_type === \"percentage\" && '%'}`}\n </p>\n : \"\"}\n </div>\n {!this.isMultipleBank ?\n <div class=\"s-offer-bank-message s-offer-slide-one-fourth\">\n <h2>{this.offersList[0].title}</h2>\n <p innerHTML={this.generateBankDescription(this.offersList[0].description, (bankOffer.details as BankOffer).discount_value)}></p>\n </div>\n : \"\"}\n </div>\n })\n }\n\n private generateBankDescription(desc: string, value): string {\n return desc.replace(new RegExp(`${value} %`), `<span class=\"s-offer-bank-message-amount\">${value} %</span>`)\n }\n\n /**\n * Generates content for the discount table section.\n *\n * @param discountTable - An array of Discount objects.\n * @returns An array of HTML elements representing discounts_table.\n */\n private renderDiscountTableSection() {\n const offer: Offer = this.offersList[0];\n let show_discounted_price = (offer.details as DiscountDetailTable).show_price_after_discount;\n return (this.offersList[0].details as DiscountDetailTable).discounts?.map((discount: Discount) => <div class=\"s-offer-slide-one-fourth\">\n <div class=\"s-offer-slide-offer-entry\">\n <div class=\"s-offer-slide-offer-entry-price-quantity-container\">\n <p class=\"s-offer-slide-offer-entry-quantity\">{this.buy_quantity_text(discount.quantity)}</p>\n {show_discounted_price ?\n <div class=\"s-offer-slide-offer-entry-price\">\n <span>{this.offer_with_price_text}</span>\n <span class=\"s-offer-slide-offer-entry-price-amount\">{discount.discounted_amount}</span> <span>{this.userCurrency}</span>\n </div> : \"\"}\n </div>\n <p class=\"s-offer-slide-offer-entry-price-amount-percent\">{this.with_discount_text}\n (<span>{discount.percentage}{!!discount.percentage && '%'}</span>)</p>\n </div>\n </div>\n )\n }\n\n}\n"]}