@salla.sa/twilight-components 1.6.15-alpha.0 → 1.6.15-alpha.1

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 (1097) hide show
  1. package/dist/cjs/_commonjsHelpers-691dd63b.js +28 -0
  2. package/dist/cjs/css-shim-c9fa4209.js +9 -0
  3. package/dist/cjs/dom-92c2a073.js +78 -0
  4. package/dist/{twilight/index-2bf908a1.js → cjs/index-cac2fd59.js} +243 -1307
  5. package/dist/cjs/index-db09186f.js +7516 -0
  6. package/dist/cjs/index.cjs.js +5 -0
  7. package/dist/cjs/loader.cjs.js +40 -0
  8. package/dist/cjs/salla-add-product-button.cjs.entry.js +104 -0
  9. package/dist/cjs/salla-button_27.cjs.entry.js +27879 -0
  10. package/dist/cjs/salla-conditional-fields.cjs.entry.js +87 -0
  11. package/dist/cjs/salla-installment.cjs.entry.js +135 -0
  12. package/dist/cjs/salla-loyalty-prize-item.cjs.entry.js +26 -0
  13. package/dist/cjs/salla-scopes.cjs.entry.js +166 -0
  14. package/dist/cjs/salla-select.cjs.entry.js +159 -0
  15. package/dist/cjs/search-b487cc49.js +13 -0
  16. package/dist/cjs/twilight.cjs.js +81 -0
  17. package/dist/collection/Helpers/Helper.js +24 -0
  18. package/dist/collection/assets/svg/ER-square.svg +5 -0
  19. package/dist/collection/assets/svg/HD-square.svg +5 -0
  20. package/dist/collection/assets/svg/HD.svg +5 -0
  21. package/dist/collection/assets/svg/activity.svg +5 -0
  22. package/dist/collection/assets/svg/add-circle.svg +5 -0
  23. package/dist/collection/assets/svg/add-square.svg +5 -0
  24. package/dist/collection/assets/svg/add-to-cart.svg +5 -0
  25. package/dist/collection/assets/svg/add.svg +5 -0
  26. package/dist/collection/assets/svg/add_col_after.svg +5 -0
  27. package/dist/collection/assets/svg/add_col_before.svg +5 -0
  28. package/dist/collection/assets/svg/add_row_after.svg +5 -0
  29. package/dist/collection/assets/svg/add_row_before.svg +5 -0
  30. package/dist/collection/assets/svg/address-book.svg +5 -0
  31. package/dist/collection/assets/svg/airplane-mode-off.svg +5 -0
  32. package/dist/collection/assets/svg/airplane-mode.svg +5 -0
  33. package/dist/collection/assets/svg/airplane.svg +5 -0
  34. package/dist/collection/assets/svg/airplay-audio.svg +5 -0
  35. package/dist/collection/assets/svg/airplay-screen.svg +5 -0
  36. package/dist/collection/assets/svg/alarm-add.svg +5 -0
  37. package/dist/collection/assets/svg/alarm-cancel.svg +5 -0
  38. package/dist/collection/assets/svg/alarm-check.svg +5 -0
  39. package/dist/collection/assets/svg/alarm-snooze.svg +5 -0
  40. package/dist/collection/assets/svg/alarm.svg +5 -0
  41. package/dist/collection/assets/svg/album-audio.svg +5 -0
  42. package/dist/collection/assets/svg/album-music.svg +5 -0
  43. package/dist/collection/assets/svg/album-photo.svg +5 -0
  44. package/dist/collection/assets/svg/album-portrait.svg +5 -0
  45. package/dist/collection/assets/svg/album-time.svg +5 -0
  46. package/dist/collection/assets/svg/alert-engine.svg +5 -0
  47. package/dist/collection/assets/svg/alert.svg +5 -0
  48. package/dist/collection/assets/svg/align-center.svg +5 -0
  49. package/dist/collection/assets/svg/align-justify.svg +5 -0
  50. package/dist/collection/assets/svg/align-left.svg +5 -0
  51. package/dist/collection/assets/svg/align-right.svg +5 -0
  52. package/dist/collection/assets/svg/ambulance.svg +5 -0
  53. package/dist/collection/assets/svg/anchor.svg +5 -0
  54. package/dist/collection/assets/svg/android-phone.svg +5 -0
  55. package/dist/collection/assets/svg/android-tablet.svg +5 -0
  56. package/dist/collection/assets/svg/android.svg +5 -0
  57. package/dist/collection/assets/svg/apple.svg +5 -0
  58. package/dist/collection/assets/svg/archive-download.svg +5 -0
  59. package/dist/collection/assets/svg/archive-upload.svg +5 -0
  60. package/dist/collection/assets/svg/archive.svg +5 -0
  61. package/dist/collection/assets/svg/arrow-diverge.svg +5 -0
  62. package/dist/collection/assets/svg/arrow-down-left.svg +5 -0
  63. package/dist/collection/assets/svg/arrow-down-right.svg +5 -0
  64. package/dist/collection/assets/svg/arrow-down.svg +5 -0
  65. package/dist/collection/assets/svg/arrow-expand.svg +5 -0
  66. package/dist/{twilight/arrow-left-334d96d9.js → collection/assets/svg/arrow-left.svg} +1 -7
  67. package/dist/collection/assets/svg/arrow-merge.svg +5 -0
  68. package/dist/collection/assets/svg/arrow-right.svg +5 -0
  69. package/dist/collection/assets/svg/arrow-shrink.svg +5 -0
  70. package/dist/collection/assets/svg/arrow-swap.svg +5 -0
  71. package/dist/collection/assets/svg/arrow-up-left.svg +5 -0
  72. package/dist/collection/assets/svg/arrow-up-right.svg +5 -0
  73. package/dist/collection/assets/svg/arrow-up.svg +5 -0
  74. package/dist/collection/assets/svg/art-palette.svg +5 -0
  75. package/dist/collection/assets/svg/at.svg +5 -0
  76. package/dist/collection/assets/svg/atm.svg +5 -0
  77. package/dist/collection/assets/svg/audio-wave.svg +5 -0
  78. package/dist/collection/assets/svg/award-academy.svg +5 -0
  79. package/dist/collection/assets/svg/award-ribbon.svg +5 -0
  80. package/dist/collection/assets/svg/back.svg +5 -0
  81. package/dist/collection/assets/svg/badge-ID.svg +5 -0
  82. package/dist/collection/assets/svg/badge-alt.svg +5 -0
  83. package/dist/collection/assets/svg/badge.svg +5 -0
  84. package/dist/collection/assets/svg/bag-bitcoin.svg +5 -0
  85. package/dist/collection/assets/svg/bag-dollar.svg +5 -0
  86. package/dist/collection/assets/svg/bag-money.svg +5 -0
  87. package/dist/collection/assets/svg/bank-building.svg +5 -0
  88. package/dist/collection/assets/svg/bank.svg +5 -0
  89. package/dist/collection/assets/svg/banknote-bitcoin.svg +5 -0
  90. package/dist/collection/assets/svg/banknote-dollar.svg +5 -0
  91. package/dist/collection/assets/svg/banknote-off.svg +5 -0
  92. package/dist/collection/assets/svg/banknote.svg +5 -0
  93. package/dist/collection/assets/svg/barcode-scan.svg +5 -0
  94. package/dist/collection/assets/svg/barcode.svg +5 -0
  95. package/dist/collection/assets/svg/basket.svg +5 -0
  96. package/dist/collection/assets/svg/battery-alert.svg +5 -0
  97. package/dist/collection/assets/svg/battery-charge.svg +5 -0
  98. package/dist/collection/assets/svg/battery-empty.svg +5 -0
  99. package/dist/collection/assets/svg/battery-full.svg +5 -0
  100. package/dist/collection/assets/svg/battery-low.svg +5 -0
  101. package/dist/collection/assets/svg/battery-off.svg +5 -0
  102. package/dist/collection/assets/svg/beard.svg +5 -0
  103. package/dist/collection/assets/svg/bed-single.svg +5 -0
  104. package/dist/collection/assets/svg/bell-add.svg +5 -0
  105. package/dist/collection/assets/svg/bell-off.svg +5 -0
  106. package/dist/collection/assets/svg/bell-ring.svg +5 -0
  107. package/dist/collection/assets/svg/bell-snooze.svg +5 -0
  108. package/dist/collection/assets/svg/bell-time.svg +5 -0
  109. package/dist/collection/assets/svg/bell.svg +5 -0
  110. package/dist/collection/assets/svg/bells.svg +5 -0
  111. package/dist/collection/assets/svg/binary.svg +5 -0
  112. package/dist/collection/assets/svg/binoculars.svg +5 -0
  113. package/dist/collection/assets/svg/birdhouse.svg +5 -0
  114. package/dist/collection/assets/svg/bitcoin.svg +5 -0
  115. package/dist/collection/assets/svg/block.svg +5 -0
  116. package/dist/collection/assets/svg/bluetooth.svg +5 -0
  117. package/dist/collection/assets/svg/boat.svg +5 -0
  118. package/dist/collection/assets/svg/bold.svg +5 -0
  119. package/dist/collection/assets/svg/book-open.svg +5 -0
  120. package/dist/collection/assets/svg/book-person.svg +5 -0
  121. package/dist/collection/assets/svg/book.svg +5 -0
  122. package/dist/collection/assets/svg/bookmark-add.svg +5 -0
  123. package/dist/collection/assets/svg/bookmark.svg +5 -0
  124. package/dist/collection/assets/svg/books-alt.svg +5 -0
  125. package/dist/collection/assets/svg/books-pencil.svg +5 -0
  126. package/dist/collection/assets/svg/books.svg +5 -0
  127. package/dist/collection/assets/svg/border-all.svg +5 -0
  128. package/dist/collection/assets/svg/box-bankers.svg +5 -0
  129. package/dist/collection/assets/svg/box.svg +5 -0
  130. package/dist/collection/assets/svg/braille-hand.svg +5 -0
  131. package/dist/collection/assets/svg/braille.svg +5 -0
  132. package/dist/collection/assets/svg/brain.svg +5 -0
  133. package/dist/collection/assets/svg/branch.svg +5 -0
  134. package/dist/collection/assets/svg/briefcase-health.svg +5 -0
  135. package/dist/collection/assets/svg/briefcase-metal.svg +5 -0
  136. package/dist/collection/assets/svg/briefcase.svg +5 -0
  137. package/dist/collection/assets/svg/brightness-low.svg +5 -0
  138. package/dist/collection/assets/svg/browser-alt.svg +5 -0
  139. package/dist/collection/assets/svg/browser-code-alt.svg +5 -0
  140. package/dist/collection/assets/svg/browser-code.svg +5 -0
  141. package/dist/collection/assets/svg/brush.svg +5 -0
  142. package/dist/collection/assets/svg/bucket-drip.svg +5 -0
  143. package/dist/collection/assets/svg/bullhorn.svg +5 -0
  144. package/dist/collection/assets/svg/bus-alt.svg +5 -0
  145. package/dist/collection/assets/svg/bus.svg +5 -0
  146. package/dist/collection/assets/svg/cake.svg +5 -0
  147. package/dist/collection/assets/svg/calculator.svg +5 -0
  148. package/dist/collection/assets/svg/calculator2.svg +5 -0
  149. package/dist/collection/assets/svg/calendar-15.svg +5 -0
  150. package/dist/collection/assets/svg/calendar-add.svg +5 -0
  151. package/dist/collection/assets/svg/calendar-alt.svg +5 -0
  152. package/dist/collection/assets/svg/calendar-cancel.svg +5 -0
  153. package/dist/collection/assets/svg/calendar-check.svg +5 -0
  154. package/dist/collection/assets/svg/calendar-date.svg +5 -0
  155. package/dist/collection/assets/svg/calendar-dates.svg +5 -0
  156. package/dist/collection/assets/svg/calendar-download.svg +5 -0
  157. package/dist/collection/assets/svg/calendar-favorite.svg +5 -0
  158. package/dist/collection/assets/svg/calendar-heart.svg +5 -0
  159. package/dist/collection/assets/svg/calendar-next.svg +5 -0
  160. package/dist/collection/assets/svg/calendar-previous.svg +5 -0
  161. package/dist/collection/assets/svg/calendar-snooze.svg +5 -0
  162. package/dist/collection/assets/svg/calendar-time.svg +5 -0
  163. package/dist/collection/assets/svg/calendar-upload.svg +5 -0
  164. package/dist/collection/assets/svg/calendar-user.svg +5 -0
  165. package/dist/collection/assets/svg/calendar.svg +5 -0
  166. package/dist/collection/assets/svg/camcorder.svg +5 -0
  167. package/dist/collection/assets/svg/camera-add.svg +5 -0
  168. package/dist/collection/assets/svg/camera-movie.svg +5 -0
  169. package/dist/collection/assets/svg/camera-off.svg +5 -0
  170. package/dist/collection/assets/svg/camera.svg +5 -0
  171. package/dist/collection/assets/svg/cancel-circle.svg +5 -0
  172. package/dist/collection/assets/svg/cancel-square.svg +5 -0
  173. package/dist/collection/assets/svg/cancel.svg +5 -0
  174. package/dist/collection/assets/svg/capitol-building.svg +5 -0
  175. package/dist/collection/assets/svg/car-alt-off.svg +5 -0
  176. package/dist/collection/assets/svg/car-alt.svg +5 -0
  177. package/dist/collection/assets/svg/car-key.svg +5 -0
  178. package/dist/collection/assets/svg/caret-down-circle.svg +5 -0
  179. package/dist/collection/assets/svg/caret-down-double.svg +5 -0
  180. package/dist/collection/assets/svg/caret-down.svg +4 -0
  181. package/dist/collection/assets/svg/caret-left-circle.svg +5 -0
  182. package/dist/collection/assets/svg/caret-left-double.svg +5 -0
  183. package/dist/collection/assets/svg/caret-left.svg +5 -0
  184. package/dist/collection/assets/svg/caret-right-circle.svg +5 -0
  185. package/dist/collection/assets/svg/caret-right-double.svg +5 -0
  186. package/dist/collection/assets/svg/caret-right.svg +5 -0
  187. package/dist/collection/assets/svg/caret-up-circle.svg +5 -0
  188. package/dist/collection/assets/svg/caret-up-double.svg +5 -0
  189. package/dist/collection/assets/svg/caret-up.svg +5 -0
  190. package/dist/collection/assets/svg/carousel.svg +5 -0
  191. package/dist/collection/assets/svg/cart-add.svg +5 -0
  192. package/dist/collection/assets/svg/cart-cancel.svg +5 -0
  193. package/dist/collection/assets/svg/cart-download.svg +5 -0
  194. package/dist/collection/assets/svg/cart-minus.svg +5 -0
  195. package/dist/collection/assets/svg/cart-upload.svg +5 -0
  196. package/dist/collection/assets/svg/cart.svg +5 -0
  197. package/dist/collection/assets/svg/cart2.svg +5 -0
  198. package/dist/collection/assets/svg/cart22.svg +5 -0
  199. package/dist/collection/assets/svg/cash-payment.svg +5 -0
  200. package/dist/collection/assets/svg/cctv-camera.svg +5 -0
  201. package/dist/collection/assets/svg/cell-signal.svg +5 -0
  202. package/dist/collection/assets/svg/cellphone-landscape.svg +5 -0
  203. package/dist/collection/assets/svg/center.svg +5 -0
  204. package/dist/collection/assets/svg/chair-easy.svg +5 -0
  205. package/dist/collection/assets/svg/chair-theater.svg +5 -0
  206. package/dist/collection/assets/svg/chair.svg +5 -0
  207. package/dist/collection/assets/svg/chart-bar.svg +5 -0
  208. package/dist/collection/assets/svg/chart-pie.svg +5 -0
  209. package/dist/collection/assets/svg/chat-alert-alt.svg +5 -0
  210. package/dist/collection/assets/svg/chat-alert.svg +5 -0
  211. package/dist/collection/assets/svg/chat-alt.svg +5 -0
  212. package/dist/collection/assets/svg/chat-bubbles-alt.svg +5 -0
  213. package/dist/collection/assets/svg/chat-bubbles.svg +5 -0
  214. package/dist/collection/assets/svg/chat-conversation-alt.svg +5 -0
  215. package/dist/collection/assets/svg/chat-conversation.svg +5 -0
  216. package/dist/collection/assets/svg/chat-message-alt.svg +5 -0
  217. package/dist/collection/assets/svg/chat-message.svg +5 -0
  218. package/dist/collection/assets/svg/chat-person-alt.svg +5 -0
  219. package/dist/collection/assets/svg/chat-person.svg +5 -0
  220. package/dist/collection/assets/svg/chat.svg +5 -0
  221. package/dist/collection/assets/svg/check-circle.svg +5 -0
  222. package/dist/{twilight/check-circle2-378453c5.js → collection/assets/svg/check-circle2.svg} +1 -7
  223. package/dist/collection/assets/svg/check-square.svg +5 -0
  224. package/dist/collection/assets/svg/check.svg +5 -0
  225. package/dist/collection/assets/svg/checkbox-active.svg +5 -0
  226. package/dist/collection/assets/svg/checkbox.svg +5 -0
  227. package/dist/collection/assets/svg/checklist.svg +9 -0
  228. package/dist/collection/assets/svg/chip.svg +5 -0
  229. package/dist/collection/assets/svg/chromecast.svg +5 -0
  230. package/dist/collection/assets/svg/city.svg +5 -0
  231. package/dist/collection/assets/svg/clapboard.svg +5 -0
  232. package/dist/collection/assets/svg/clipboard-person.svg +5 -0
  233. package/dist/collection/assets/svg/clock.svg +5 -0
  234. package/dist/collection/assets/svg/closed-captioning.svg +5 -0
  235. package/dist/collection/assets/svg/clothes-tag.svg +5 -0
  236. package/dist/collection/assets/svg/cloud-add.svg +5 -0
  237. package/dist/collection/assets/svg/cloud-audio.svg +5 -0
  238. package/dist/collection/assets/svg/cloud-cancel.svg +5 -0
  239. package/dist/collection/assets/svg/cloud-check.svg +5 -0
  240. package/dist/collection/assets/svg/cloud-day.svg +5 -0
  241. package/dist/collection/assets/svg/cloud-download.svg +5 -0
  242. package/dist/collection/assets/svg/cloud-heart.svg +5 -0
  243. package/dist/collection/assets/svg/cloud-minus.svg +5 -0
  244. package/dist/collection/assets/svg/cloud-music.svg +5 -0
  245. package/dist/collection/assets/svg/cloud-night.svg +5 -0
  246. package/dist/collection/assets/svg/cloud-off.svg +5 -0
  247. package/dist/collection/assets/svg/cloud-upload.svg +5 -0
  248. package/dist/collection/assets/svg/cloud.svg +5 -0
  249. package/dist/collection/assets/svg/cloudy.svg +5 -0
  250. package/dist/collection/assets/svg/code.svg +6 -0
  251. package/dist/collection/assets/svg/coffee-takeout.svg +5 -0
  252. package/dist/collection/assets/svg/coffee-togo.svg +5 -0
  253. package/dist/collection/assets/svg/coin-bitcoin.svg +5 -0
  254. package/dist/collection/assets/svg/coin-dollar.svg +5 -0
  255. package/dist/collection/assets/svg/combine_cells.svg +5 -0
  256. package/dist/collection/assets/svg/command.svg +5 -0
  257. package/dist/collection/assets/svg/compare.svg +5 -0
  258. package/dist/collection/assets/svg/compass-direction.svg +5 -0
  259. package/dist/collection/assets/svg/computer.svg +5 -0
  260. package/dist/collection/assets/svg/contact-book.svg +5 -0
  261. package/dist/collection/assets/svg/contact-card.svg +5 -0
  262. package/dist/collection/assets/svg/content.svg +5 -0
  263. package/dist/collection/assets/svg/cool.svg +5 -0
  264. package/dist/collection/assets/svg/cord-alt.svg +5 -0
  265. package/dist/collection/assets/svg/crdit-card-alt.svg +5 -0
  266. package/dist/collection/assets/svg/credit-card.svg +5 -0
  267. package/dist/collection/assets/svg/crop.svg +5 -0
  268. package/dist/collection/assets/svg/crown.svg +5 -0
  269. package/dist/collection/assets/svg/cup-hot.svg +5 -0
  270. package/dist/collection/assets/svg/cut.svg +5 -0
  271. package/dist/collection/assets/svg/d-rotate.svg +8 -0
  272. package/dist/collection/assets/svg/dashboard-high.svg +5 -0
  273. package/dist/collection/assets/svg/dashboard-low.svg +5 -0
  274. package/dist/collection/assets/svg/dashboard.svg +5 -0
  275. package/dist/collection/assets/svg/database-add.svg +5 -0
  276. package/dist/collection/assets/svg/database-cancel.svg +5 -0
  277. package/dist/collection/assets/svg/database-lock.svg +5 -0
  278. package/dist/collection/assets/svg/database-minus.svg +5 -0
  279. package/dist/collection/assets/svg/database.svg +5 -0
  280. package/dist/collection/assets/svg/dead-mask.svg +5 -0
  281. package/dist/collection/assets/svg/debit-card-back.svg +5 -0
  282. package/dist/collection/assets/svg/delete.svg +5 -0
  283. package/dist/collection/assets/svg/delete_col.svg +5 -0
  284. package/dist/collection/assets/svg/delete_row.svg +5 -0
  285. package/dist/collection/assets/svg/delete_table.svg +5 -0
  286. package/dist/collection/assets/svg/delivery-parcel2.svg +5 -0
  287. package/dist/collection/assets/svg/device-image.svg +5 -0
  288. package/dist/collection/assets/svg/device-portrait.svg +5 -0
  289. package/dist/collection/assets/svg/devices.svg +5 -0
  290. package/dist/collection/assets/svg/directional-pad.svg +5 -0
  291. package/dist/collection/assets/svg/discount-calculator.svg +5 -0
  292. package/dist/collection/assets/svg/discount-coupon.svg +5 -0
  293. package/dist/collection/assets/svg/do-not-enter.svg +5 -0
  294. package/dist/collection/assets/svg/doh.svg +5 -0
  295. package/dist/collection/assets/svg/dollar-cash.svg +5 -0
  296. package/dist/collection/assets/svg/dollar-coin-stack.svg +5 -0
  297. package/dist/collection/assets/svg/dollar-money.svg +5 -0
  298. package/dist/collection/assets/svg/dolley.svg +5 -0
  299. package/dist/collection/assets/svg/donation.svg +5 -0
  300. package/dist/collection/assets/svg/double-tap.svg +5 -0
  301. package/dist/collection/assets/svg/double-zero-square.svg +5 -0
  302. package/dist/collection/assets/svg/double-zero.svg +5 -0
  303. package/dist/collection/assets/svg/download-harddrive.svg +5 -0
  304. package/dist/collection/assets/svg/download.svg +5 -0
  305. package/dist/collection/assets/svg/dress-long-sleeve.svg +5 -0
  306. package/dist/collection/assets/svg/ear-off.svg +5 -0
  307. package/dist/collection/assets/svg/ear.svg +5 -0
  308. package/dist/collection/assets/svg/earth.svg +5 -0
  309. package/dist/collection/assets/svg/easel-landscape.svg +5 -0
  310. package/dist/collection/assets/svg/easel-portrait.svg +5 -0
  311. package/dist/collection/assets/svg/edit.svg +5 -0
  312. package/dist/collection/assets/svg/eject.svg +5 -0
  313. package/dist/collection/assets/svg/ellipsis-filled.svg +7 -0
  314. package/dist/collection/assets/svg/ellipsis-vertical-filled.svg +7 -0
  315. package/dist/collection/assets/svg/ellipsis-vertical.svg +5 -0
  316. package/dist/collection/assets/svg/ellipsis.svg +5 -0
  317. package/dist/collection/assets/svg/empire-state-building.svg +5 -0
  318. package/dist/collection/assets/svg/energy-circle.svg +5 -0
  319. package/dist/collection/assets/svg/energy-square.svg +5 -0
  320. package/dist/collection/assets/svg/envelope.svg +5 -0
  321. package/dist/collection/assets/svg/expand.svg +5 -0
  322. package/dist/collection/assets/svg/expert.svg +5 -0
  323. package/dist/collection/assets/svg/explode.svg +5 -0
  324. package/dist/collection/assets/svg/exposure-alt.svg +5 -0
  325. package/dist/collection/assets/svg/eye-dropper.svg +5 -0
  326. package/dist/collection/assets/svg/eye-off.svg +5 -0
  327. package/dist/collection/assets/svg/eye.svg +5 -0
  328. package/dist/collection/assets/svg/fabric-swatch.svg +5 -0
  329. package/dist/collection/assets/svg/face-id.svg +5 -0
  330. package/dist/collection/assets/svg/facebook.svg +5 -0
  331. package/dist/collection/assets/svg/facebook2.svg +5 -0
  332. package/dist/collection/assets/svg/fast-forward.svg +5 -0
  333. package/dist/collection/assets/svg/favorite-off.svg +5 -0
  334. package/dist/collection/assets/svg/favorite.svg +5 -0
  335. package/dist/collection/assets/svg/fax-machine.svg +5 -0
  336. package/dist/collection/assets/svg/feather-pen.svg +5 -0
  337. package/dist/collection/assets/svg/female.svg +5 -0
  338. package/dist/collection/assets/svg/file-archive.svg +5 -0
  339. package/dist/collection/assets/svg/file-badge.svg +5 -0
  340. package/dist/collection/assets/svg/file-bitcoin.svg +5 -0
  341. package/dist/collection/assets/svg/file-cabinet.svg +5 -0
  342. package/dist/collection/assets/svg/file-dollar.svg +5 -0
  343. package/dist/collection/assets/svg/file-download.svg +5 -0
  344. package/dist/collection/assets/svg/file-medicine.svg +5 -0
  345. package/dist/collection/assets/svg/file-off.svg +5 -0
  346. package/dist/collection/assets/svg/file-partial.svg +5 -0
  347. package/dist/collection/assets/svg/file-upload.svg +5 -0
  348. package/dist/collection/assets/svg/film-reel.svg +5 -0
  349. package/dist/collection/assets/svg/film-strip.svg +5 -0
  350. package/dist/collection/assets/svg/film.svg +5 -0
  351. package/dist/collection/assets/svg/filter.svg +5 -0
  352. package/dist/collection/assets/svg/fingerprint.svg +5 -0
  353. package/dist/collection/assets/svg/fire.svg +5 -0
  354. package/dist/collection/assets/svg/fit.svg +5 -0
  355. package/dist/collection/assets/svg/fitness-watch.svg +5 -0
  356. package/dist/collection/assets/svg/flag-wave.svg +5 -0
  357. package/dist/collection/assets/svg/flag.svg +5 -0
  358. package/dist/collection/assets/svg/flash.svg +5 -0
  359. package/dist/collection/assets/svg/flat.svg +1 -0
  360. package/dist/collection/assets/svg/floppy-disk.svg +5 -0
  361. package/dist/collection/assets/svg/flower-setting.svg +5 -0
  362. package/dist/collection/assets/svg/flower-stem.svg +5 -0
  363. package/dist/collection/assets/svg/folder-add.svg +5 -0
  364. package/dist/collection/assets/svg/folder-audio.svg +5 -0
  365. package/dist/collection/assets/svg/folder-cancel.svg +5 -0
  366. package/dist/collection/assets/svg/folder-check.svg +5 -0
  367. package/dist/collection/assets/svg/folder-cloud.svg +5 -0
  368. package/dist/collection/assets/svg/folder-code.svg +5 -0
  369. package/dist/collection/assets/svg/folder-download.svg +5 -0
  370. package/dist/collection/assets/svg/folder-health.svg +5 -0
  371. package/dist/collection/assets/svg/folder-image.svg +5 -0
  372. package/dist/collection/assets/svg/folder-music.svg +5 -0
  373. package/dist/collection/assets/svg/folder-open.svg +5 -0
  374. package/dist/collection/assets/svg/folder-upload.svg +5 -0
  375. package/dist/collection/assets/svg/folder-user.svg +5 -0
  376. package/dist/collection/assets/svg/folder.svg +5 -0
  377. package/dist/collection/assets/svg/folders-image.svg +5 -0
  378. package/dist/collection/assets/svg/folders.svg +5 -0
  379. package/dist/collection/assets/svg/fork-knife.svg +5 -0
  380. package/dist/collection/assets/svg/forked.svg +5 -0
  381. package/dist/collection/assets/svg/format-bold.svg +5 -0
  382. package/dist/collection/assets/svg/format-border-color.svg +5 -0
  383. package/dist/collection/assets/svg/format-fill.svg +5 -0
  384. package/dist/collection/assets/svg/format-italic.svg +5 -0
  385. package/dist/collection/assets/svg/format-shapes.svg +5 -0
  386. package/dist/collection/assets/svg/format-size.svg +5 -0
  387. package/dist/collection/assets/svg/format-strikethrough-alt.svg +5 -0
  388. package/dist/collection/assets/svg/format-strikethrough.svg +5 -0
  389. package/dist/collection/assets/svg/format-text-alt.svg +5 -0
  390. package/dist/collection/assets/svg/format-text-color.svg +5 -0
  391. package/dist/collection/assets/svg/format-text.svg +5 -0
  392. package/dist/collection/assets/svg/format-underline.svg +5 -0
  393. package/dist/collection/assets/svg/forward.svg +5 -0
  394. package/dist/collection/assets/svg/frame-image.svg +5 -0
  395. package/dist/collection/assets/svg/frame-portrait.svg +5 -0
  396. package/dist/collection/assets/svg/free-sign.svg +5 -0
  397. package/dist/collection/assets/svg/fresh-arrival.svg +5 -0
  398. package/dist/collection/assets/svg/frown.svg +5 -0
  399. package/dist/collection/assets/svg/full-wallet.svg +5 -0
  400. package/dist/collection/assets/svg/game-controller-alt.svg +5 -0
  401. package/dist/collection/assets/svg/gameboard.svg +5 -0
  402. package/dist/collection/assets/svg/gameboy.svg +5 -0
  403. package/dist/collection/assets/svg/gavel.svg +5 -0
  404. package/dist/collection/assets/svg/ghost.svg +5 -0
  405. package/dist/collection/assets/svg/gift-card.svg +5 -0
  406. package/dist/collection/assets/svg/gift-sharing.svg +5 -0
  407. package/dist/collection/assets/svg/gift.svg +5 -0
  408. package/dist/collection/assets/svg/gifts.svg +5 -0
  409. package/dist/collection/assets/svg/gold-badge.svg +5 -0
  410. package/dist/collection/assets/svg/graduation-cap.svg +5 -0
  411. package/dist/collection/assets/svg/graph-bar.svg +5 -0
  412. package/dist/collection/assets/svg/graph-line.svg +5 -0
  413. package/dist/collection/assets/svg/grid.svg +5 -0
  414. package/dist/collection/assets/svg/grocery-bag.svg +5 -0
  415. package/dist/collection/assets/svg/group-add.svg +5 -0
  416. package/dist/collection/assets/svg/group-four.svg +5 -0
  417. package/dist/collection/assets/svg/group.svg +5 -0
  418. package/dist/collection/assets/svg/hammer-screwdriver.svg +5 -0
  419. package/dist/collection/assets/svg/hand.svg +5 -0
  420. package/dist/collection/assets/svg/happy.svg +5 -0
  421. package/dist/collection/assets/svg/harddrive.svg +5 -0
  422. package/dist/collection/assets/svg/hashtag.svg +5 -0
  423. package/dist/collection/assets/svg/headphones.svg +5 -0
  424. package/dist/collection/assets/svg/headset.svg +5 -0
  425. package/dist/collection/assets/svg/health-cross.svg +5 -0
  426. package/dist/collection/assets/svg/heart-arrow.svg +5 -0
  427. package/dist/collection/assets/svg/heart-check.svg +5 -0
  428. package/dist/collection/assets/svg/heart-money.svg +5 -0
  429. package/dist/collection/assets/svg/heart-off.svg +5 -0
  430. package/dist/collection/assets/svg/heart-rate.svg +5 -0
  431. package/dist/collection/assets/svg/heart.svg +5 -0
  432. package/dist/collection/assets/svg/hearts.svg +5 -0
  433. package/dist/collection/assets/svg/help.svg +5 -0
  434. package/dist/collection/assets/svg/hierarchy.svg +5 -0
  435. package/dist/collection/assets/svg/hiking-pack.svg +5 -0
  436. package/dist/collection/assets/svg/hiking.svg +5 -0
  437. package/dist/collection/assets/svg/hipster.svg +5 -0
  438. package/dist/collection/assets/svg/history.svg +5 -0
  439. package/dist/collection/assets/svg/hitchikers-guide.svg +5 -0
  440. package/dist/collection/assets/svg/hobby-knife.svg +5 -0
  441. package/dist/collection/assets/svg/home-heart.svg +5 -0
  442. package/dist/collection/assets/svg/home-water.svg +5 -0
  443. package/dist/collection/assets/svg/home.svg +5 -0
  444. package/dist/collection/assets/svg/house-door.svg +5 -0
  445. package/dist/collection/assets/svg/house.svg +5 -0
  446. package/dist/collection/assets/svg/hr.svg +5 -0
  447. package/dist/collection/assets/svg/image-carousel.svg +5 -0
  448. package/dist/collection/assets/svg/image-chat.svg +5 -0
  449. package/dist/collection/assets/svg/image-search.svg +5 -0
  450. package/dist/collection/assets/svg/image.svg +5 -0
  451. package/dist/collection/assets/svg/image1.svg +8 -0
  452. package/dist/collection/assets/svg/images.svg +4 -0
  453. package/dist/collection/assets/svg/inbox-add.svg +5 -0
  454. package/dist/collection/assets/svg/inbox-download.svg +5 -0
  455. package/dist/collection/assets/svg/inbox-full.svg +5 -0
  456. package/dist/collection/assets/svg/inbox-multi.svg +5 -0
  457. package/dist/collection/assets/svg/inbox-music.svg +5 -0
  458. package/dist/collection/assets/svg/inbox-upload.svg +5 -0
  459. package/dist/collection/assets/svg/inbox.svg +5 -0
  460. package/dist/collection/assets/svg/indent-decrease.svg +5 -0
  461. package/dist/collection/assets/svg/indent.svg +5 -0
  462. package/dist/collection/assets/svg/info.svg +5 -0
  463. package/dist/collection/assets/svg/information.svg +5 -0
  464. package/dist/collection/assets/svg/instagram.svg +5 -0
  465. package/dist/collection/assets/svg/instagram2.svg +5 -0
  466. package/dist/collection/assets/svg/ipad.svg +5 -0
  467. package/dist/collection/assets/svg/iphone-x.svg +5 -0
  468. package/dist/collection/assets/svg/iphone.svg +5 -0
  469. package/dist/collection/assets/svg/ipod.svg +5 -0
  470. package/dist/collection/assets/svg/italic.svg +5 -0
  471. package/dist/collection/assets/svg/journal-pencil.svg +5 -0
  472. package/dist/collection/assets/svg/journal.svg +5 -0
  473. package/dist/collection/assets/svg/key.svg +5 -0
  474. package/dist/collection/assets/svg/keyboard-down.svg +5 -0
  475. package/dist/collection/assets/svg/keyboard-up.svg +5 -0
  476. package/dist/collection/assets/svg/keyboard.svg +5 -0
  477. package/dist/collection/assets/svg/keyboard_arrow_down.svg +5 -0
  478. package/dist/collection/assets/svg/keyboard_arrow_left.svg +5 -0
  479. package/dist/collection/assets/svg/keyboard_arrow_right.svg +5 -0
  480. package/dist/collection/assets/svg/keyboard_arrow_up.svg +5 -0
  481. package/dist/collection/assets/svg/keyhole-alt.svg +5 -0
  482. package/dist/collection/assets/svg/keyhole.svg +5 -0
  483. package/dist/collection/assets/svg/keypad.svg +5 -0
  484. package/dist/collection/assets/svg/lang.svg +5 -0
  485. package/dist/collection/assets/svg/laptop.svg +5 -0
  486. package/dist/collection/assets/svg/layout-grid-rearrange.svg +5 -0
  487. package/dist/collection/assets/svg/layout-grid.svg +5 -0
  488. package/dist/collection/assets/svg/leaf-angle.svg +5 -0
  489. package/dist/collection/assets/svg/left.svg +5 -0
  490. package/dist/collection/assets/svg/lego.svg +5 -0
  491. package/dist/collection/assets/svg/library.svg +5 -0
  492. package/dist/collection/assets/svg/life-ring.svg +5 -0
  493. package/dist/collection/assets/svg/lightbulb.svg +5 -0
  494. package/dist/collection/assets/svg/lightning.svg +5 -0
  495. package/dist/collection/assets/svg/link.svg +5 -0
  496. package/dist/collection/assets/svg/link1.svg +7 -0
  497. package/dist/collection/assets/svg/list-add.svg +5 -0
  498. package/dist/collection/assets/svg/list-check.svg +5 -0
  499. package/dist/collection/assets/svg/list-numbered.svg +5 -0
  500. package/dist/collection/assets/svg/list-play.svg +5 -0
  501. package/dist/collection/assets/svg/list-reorder.svg +5 -0
  502. package/dist/collection/assets/svg/list.svg +5 -0
  503. package/dist/collection/assets/svg/location-add.svg +5 -0
  504. package/dist/collection/assets/svg/location-cancel.svg +5 -0
  505. package/dist/collection/assets/svg/location-off.svg +5 -0
  506. package/dist/collection/assets/svg/location-target.svg +5 -0
  507. package/dist/collection/assets/svg/location.svg +5 -0
  508. package/dist/collection/assets/svg/lock-off.svg +5 -0
  509. package/dist/collection/assets/svg/lock.svg +5 -0
  510. package/dist/collection/assets/svg/loupe-zoom.svg +5 -0
  511. package/dist/collection/assets/svg/loupe.svg +5 -0
  512. package/dist/collection/assets/svg/love-letter.svg +5 -0
  513. package/dist/collection/assets/svg/luggage-cart.svg +5 -0
  514. package/dist/collection/assets/svg/macro.svg +5 -0
  515. package/dist/collection/assets/svg/magazine.svg +5 -0
  516. package/dist/collection/assets/svg/magic-wand.svg +5 -0
  517. package/dist/collection/assets/svg/magnet.svg +5 -0
  518. package/dist/collection/assets/svg/mail-add-alt.svg +5 -0
  519. package/dist/collection/assets/svg/mail-add.svg +5 -0
  520. package/dist/collection/assets/svg/mail-cascade.svg +5 -0
  521. package/dist/collection/assets/svg/mail-download.svg +5 -0
  522. package/dist/collection/assets/svg/mail-letter.svg +5 -0
  523. package/dist/collection/assets/svg/mail-multi.svg +5 -0
  524. package/dist/collection/assets/svg/mail-open.svg +5 -0
  525. package/dist/collection/assets/svg/mail-search.svg +5 -0
  526. package/dist/collection/assets/svg/mail-time.svg +5 -0
  527. package/dist/collection/assets/svg/mail-upload.svg +5 -0
  528. package/dist/collection/assets/svg/mail.svg +5 -0
  529. package/dist/collection/assets/svg/mailbox.svg +5 -0
  530. package/dist/collection/assets/svg/male.svg +5 -0
  531. package/dist/collection/assets/svg/man-fancy.svg +5 -0
  532. package/dist/collection/assets/svg/map-grid.svg +5 -0
  533. package/dist/collection/assets/svg/map-location.svg +5 -0
  534. package/dist/collection/assets/svg/map-search.svg +5 -0
  535. package/dist/collection/assets/svg/map.svg +5 -0
  536. package/dist/collection/assets/svg/medal.svg +5 -0
  537. package/dist/collection/assets/svg/media-player.svg +5 -0
  538. package/dist/collection/assets/svg/megaphone.svg +5 -0
  539. package/dist/collection/assets/svg/meh.svg +5 -0
  540. package/dist/collection/assets/svg/memo-money.svg +5 -0
  541. package/dist/collection/assets/svg/memo.svg +5 -0
  542. package/dist/collection/assets/svg/mention.svg +5 -0
  543. package/dist/collection/assets/svg/menu-vertical.svg +5 -0
  544. package/dist/collection/assets/svg/menu.svg +5 -0
  545. package/dist/collection/assets/svg/mic-alt.svg +5 -0
  546. package/dist/collection/assets/svg/mic-stand.svg +5 -0
  547. package/dist/collection/assets/svg/mic.svg +5 -0
  548. package/dist/collection/assets/svg/minimize.svg +5 -0
  549. package/dist/collection/assets/svg/minus-circle.svg +5 -0
  550. package/dist/collection/assets/svg/minus-square.svg +5 -0
  551. package/dist/collection/assets/svg/minus.svg +5 -0
  552. package/dist/collection/assets/svg/money-card.svg +5 -0
  553. package/dist/collection/assets/svg/money-chat.svg +5 -0
  554. package/dist/collection/assets/svg/money-circle.svg +5 -0
  555. package/dist/collection/assets/svg/money-home.svg +5 -0
  556. package/dist/collection/assets/svg/moon.svg +5 -0
  557. package/dist/collection/assets/svg/mouse-buttons.svg +5 -0
  558. package/dist/collection/assets/svg/mug-heart.svg +5 -0
  559. package/dist/collection/assets/svg/music-cascade.svg +5 -0
  560. package/dist/collection/assets/svg/music.svg +5 -0
  561. package/dist/collection/assets/svg/navigation-circle.svg +5 -0
  562. package/dist/collection/assets/svg/navigation.svg +5 -0
  563. package/dist/collection/assets/svg/near-me-circle.svg +5 -0
  564. package/dist/collection/assets/svg/near-me.svg +5 -0
  565. package/dist/collection/assets/svg/neck-tie.svg +5 -0
  566. package/dist/collection/assets/svg/newspaper-alt.svg +5 -0
  567. package/dist/collection/assets/svg/newspaper.svg +5 -0
  568. package/dist/collection/assets/svg/notification.svg +5 -0
  569. package/dist/collection/assets/svg/office.svg +5 -0
  570. package/dist/collection/assets/svg/ol.svg +10 -0
  571. package/dist/collection/assets/svg/packed-box.svg +5 -0
  572. package/dist/collection/assets/svg/padlock-unlock.svg +5 -0
  573. package/dist/collection/assets/svg/padlock.svg +5 -0
  574. package/dist/collection/assets/svg/page-add.svg +5 -0
  575. package/dist/collection/assets/svg/page-alt.svg +5 -0
  576. package/dist/collection/assets/svg/page-cancel.svg +5 -0
  577. package/dist/collection/assets/svg/page-check.svg +5 -0
  578. package/dist/collection/assets/svg/page-content.svg +5 -0
  579. package/dist/collection/assets/svg/page-minus.svg +5 -0
  580. package/dist/collection/assets/svg/page-search-alt.svg +5 -0
  581. package/dist/collection/assets/svg/page-search.svg +5 -0
  582. package/dist/collection/assets/svg/page.svg +5 -0
  583. package/dist/collection/assets/svg/pages-insert.svg +5 -0
  584. package/dist/collection/assets/svg/pages.svg +5 -0
  585. package/dist/collection/assets/svg/paper-airplane.svg +5 -0
  586. package/dist/collection/assets/svg/paper-plane-o.svg +5 -0
  587. package/dist/collection/assets/svg/paper-plane.svg +5 -0
  588. package/dist/collection/assets/svg/paper-send.svg +5 -0
  589. package/dist/collection/assets/svg/paperclip.svg +5 -0
  590. package/dist/collection/assets/svg/paragraph.svg +5 -0
  591. package/dist/collection/assets/svg/parking.svg +5 -0
  592. package/dist/collection/assets/svg/partly-cloudy.svg +5 -0
  593. package/dist/collection/assets/svg/party-bell.svg +5 -0
  594. package/dist/collection/assets/svg/party-horn.svg +5 -0
  595. package/dist/collection/assets/svg/passport.svg +5 -0
  596. package/dist/collection/assets/svg/pause-circle.svg +5 -0
  597. package/dist/collection/assets/svg/pause.svg +5 -0
  598. package/dist/collection/assets/svg/paypal.svg +5 -0
  599. package/dist/collection/assets/svg/pen-nib.svg +5 -0
  600. package/dist/collection/assets/svg/pen.svg +5 -0
  601. package/dist/collection/assets/svg/pencil-off.svg +5 -0
  602. package/dist/collection/assets/svg/pencil-paintbrush.svg +5 -0
  603. package/dist/collection/assets/svg/pencil-ruler.svg +5 -0
  604. package/dist/collection/assets/svg/pencil.svg +5 -0
  605. package/dist/collection/assets/svg/percentage-chat.svg +5 -0
  606. package/dist/collection/assets/svg/percentage.svg +5 -0
  607. package/dist/collection/assets/svg/person-bowtie-suspenders.svg +5 -0
  608. package/dist/collection/assets/svg/phone-pencil.svg +5 -0
  609. package/dist/collection/assets/svg/phone-rotary.svg +5 -0
  610. package/dist/collection/assets/svg/phone-talking.svg +5 -0
  611. package/dist/collection/assets/svg/phone.svg +5 -0
  612. package/dist/collection/assets/svg/photo-flower.svg +5 -0
  613. package/dist/collection/assets/svg/photo-library.svg +5 -0
  614. package/dist/collection/assets/svg/photo-portrait.svg +5 -0
  615. package/dist/collection/assets/svg/photo-search.svg +5 -0
  616. package/dist/collection/assets/svg/photo.svg +5 -0
  617. package/dist/collection/assets/svg/photos.svg +5 -0
  618. package/dist/collection/assets/svg/pin.svg +5 -0
  619. package/dist/collection/assets/svg/plane-arrival.svg +5 -0
  620. package/dist/collection/assets/svg/plane-departure.svg +5 -0
  621. package/dist/collection/assets/svg/play-circle.svg +5 -0
  622. package/dist/collection/assets/svg/play-library.svg +5 -0
  623. package/dist/collection/assets/svg/play.svg +5 -0
  624. package/dist/collection/assets/svg/playlist.svg +5 -0
  625. package/dist/collection/assets/svg/plug-electric.svg +5 -0
  626. package/dist/collection/assets/svg/plug-sun.svg +5 -0
  627. package/dist/collection/assets/svg/plug.svg +5 -0
  628. package/dist/collection/assets/svg/podcast.svg +5 -0
  629. package/dist/collection/assets/svg/point-down.svg +5 -0
  630. package/dist/collection/assets/svg/point-left.svg +5 -0
  631. package/dist/collection/assets/svg/point-right.svg +5 -0
  632. package/dist/collection/assets/svg/point-up.svg +5 -0
  633. package/dist/collection/assets/svg/poll.svg +5 -0
  634. package/dist/collection/assets/svg/polo-shirt.svg +5 -0
  635. package/dist/collection/assets/svg/portfolio.svg +5 -0
  636. package/dist/collection/assets/svg/portrait-carousel.svg +5 -0
  637. package/dist/collection/assets/svg/portrait-library.svg +5 -0
  638. package/dist/collection/assets/svg/portrait.svg +5 -0
  639. package/dist/collection/assets/svg/portraits.svg +5 -0
  640. package/dist/collection/assets/svg/power-circle.svg +5 -0
  641. package/dist/collection/assets/svg/power.svg +5 -0
  642. package/dist/collection/assets/svg/prescription-bottle.svg +5 -0
  643. package/dist/collection/assets/svg/presentation-alt.svg +5 -0
  644. package/dist/collection/assets/svg/printer.svg +5 -0
  645. package/dist/collection/assets/svg/printer2.svg +5 -0
  646. package/dist/collection/assets/svg/puzzle.svg +5 -0
  647. package/dist/collection/assets/svg/quote-close-alt.svg +5 -0
  648. package/dist/collection/assets/svg/quote-close.svg +5 -0
  649. package/dist/collection/assets/svg/quote-open-alt.svg +5 -0
  650. package/dist/collection/assets/svg/quote-open.svg +5 -0
  651. package/dist/collection/assets/svg/quote.svg +6 -0
  652. package/dist/collection/assets/svg/receipt-money.svg +5 -0
  653. package/dist/collection/assets/svg/receipt.svg +5 -0
  654. package/dist/collection/assets/svg/recycle.svg +5 -0
  655. package/dist/collection/assets/svg/redeye.svg +5 -0
  656. package/dist/collection/assets/svg/redo.svg +5 -0
  657. package/dist/collection/assets/svg/refund.svg +5 -0
  658. package/dist/collection/assets/svg/register.svg +5 -0
  659. package/dist/collection/assets/svg/remove.svg +6 -0
  660. package/dist/collection/assets/svg/reply-all.svg +5 -0
  661. package/dist/collection/assets/svg/reply.svg +5 -0
  662. package/dist/collection/assets/svg/rewind.svg +5 -0
  663. package/dist/collection/assets/svg/right.svg +5 -0
  664. package/dist/collection/assets/svg/rocket.svg +5 -0
  665. package/dist/collection/assets/svg/room-card.svg +5 -0
  666. package/dist/collection/assets/svg/rotate.svg +5 -0
  667. package/dist/collection/assets/svg/rotation-lock.svg +5 -0
  668. package/dist/collection/assets/svg/rotation-unlock.svg +5 -0
  669. package/dist/collection/assets/svg/round-neck-t-shirt.svg +5 -0
  670. package/dist/collection/assets/svg/route-highway.svg +5 -0
  671. package/dist/collection/assets/svg/rss.svg +5 -0
  672. package/dist/collection/assets/svg/ruler-square.svg +5 -0
  673. package/dist/collection/assets/svg/ruler.svg +5 -0
  674. package/dist/collection/assets/svg/running.svg +5 -0
  675. package/dist/collection/assets/svg/sales-presentation.svg +5 -0
  676. package/dist/collection/assets/svg/school-bell.svg +5 -0
  677. package/dist/collection/assets/svg/schoolbus.svg +5 -0
  678. package/dist/collection/assets/svg/science.svg +5 -0
  679. package/dist/collection/assets/svg/screw-flathead.svg +5 -0
  680. package/dist/collection/assets/svg/screw-phillips.svg +5 -0
  681. package/dist/collection/assets/svg/screw-star.svg +5 -0
  682. package/dist/collection/assets/svg/script.svg +5 -0
  683. package/dist/collection/assets/svg/sd-card.svg +5 -0
  684. package/dist/collection/assets/svg/search.svg +5 -0
  685. package/dist/collection/assets/svg/season-winter.svg +5 -0
  686. package/dist/collection/assets/svg/secure-credit-card-2.svg +5 -0
  687. package/dist/collection/assets/svg/security-camera.svg +5 -0
  688. package/dist/collection/assets/svg/send-down.svg +5 -0
  689. package/dist/collection/assets/svg/send-forward.svg +5 -0
  690. package/dist/collection/assets/svg/send-in.svg +5 -0
  691. package/dist/collection/assets/svg/send-mail.svg +5 -0
  692. package/dist/collection/assets/svg/send-out.svg +5 -0
  693. package/dist/collection/assets/svg/send-to-device.svg +5 -0
  694. package/dist/collection/assets/svg/send-up.svg +5 -0
  695. package/dist/collection/assets/svg/send.svg +5 -0
  696. package/dist/collection/assets/svg/sending-email.svg +5 -0
  697. package/dist/collection/assets/svg/settings.svg +5 -0
  698. package/dist/collection/assets/svg/shake.svg +5 -0
  699. package/dist/collection/assets/svg/share-alt.svg +5 -0
  700. package/dist/collection/assets/svg/share.svg +5 -0
  701. package/dist/collection/assets/svg/shield-alert.svg +5 -0
  702. package/dist/collection/assets/svg/shield-alt.svg +5 -0
  703. package/dist/collection/assets/svg/shield-check.svg +5 -0
  704. package/dist/collection/assets/svg/ship-wheel.svg +5 -0
  705. package/dist/collection/assets/svg/ship.svg +5 -0
  706. package/dist/collection/assets/svg/shipping-fast.svg +5 -0
  707. package/dist/collection/assets/svg/shipping.svg +5 -0
  708. package/dist/collection/assets/svg/shirt-button-down.svg +5 -0
  709. package/dist/collection/assets/svg/shirt-tie.svg +5 -0
  710. package/dist/collection/assets/svg/shirt.svg +5 -0
  711. package/dist/collection/assets/svg/shopping-bag.svg +5 -0
  712. package/dist/collection/assets/svg/shopping-bag2.svg +5 -0
  713. package/dist/collection/assets/svg/shopping-basket-alt.svg +5 -0
  714. package/dist/collection/assets/svg/shopping-basket.svg +5 -0
  715. package/dist/collection/assets/svg/shopping.svg +5 -0
  716. package/dist/collection/assets/svg/shredder.svg +5 -0
  717. package/dist/collection/assets/svg/shuttle.svg +5 -0
  718. package/dist/collection/assets/svg/signal-range.svg +5 -0
  719. package/dist/collection/assets/svg/signs-alt.svg +5 -0
  720. package/dist/collection/assets/svg/sim-card-alert.svg +5 -0
  721. package/dist/collection/assets/svg/skip-backward.svg +5 -0
  722. package/dist/collection/assets/svg/skip-forward.svg +5 -0
  723. package/dist/collection/assets/svg/skull-crossbones.svg +5 -0
  724. package/dist/collection/assets/svg/skull.svg +5 -0
  725. package/dist/collection/assets/svg/sleep.svg +5 -0
  726. package/dist/collection/assets/svg/smile.svg +5 -0
  727. package/dist/collection/assets/svg/snapchat.svg +5 -0
  728. package/dist/collection/assets/svg/sort-asc.svg +5 -0
  729. package/dist/collection/assets/svg/sort-desc.svg +5 -0
  730. package/dist/collection/assets/svg/sort.svg +5 -0
  731. package/dist/collection/assets/svg/speaker.svg +5 -0
  732. package/dist/collection/assets/svg/special-alert.svg +5 -0
  733. package/dist/collection/assets/svg/special-check.svg +5 -0
  734. package/dist/collection/assets/svg/special-discount.svg +5 -0
  735. package/dist/collection/assets/svg/special-money.svg +5 -0
  736. package/dist/collection/assets/svg/spinner.svg +5 -0
  737. package/dist/collection/assets/svg/spy.svg +5 -0
  738. package/dist/collection/assets/svg/stack.svg +5 -0
  739. package/dist/collection/assets/svg/stair-car.svg +5 -0
  740. package/dist/collection/assets/svg/stamp-inset.svg +5 -0
  741. package/dist/collection/assets/svg/stanp-portrait.svg +5 -0
  742. package/dist/collection/assets/svg/star-o.svg +5 -0
  743. package/dist/collection/assets/svg/star.svg +5 -0
  744. package/dist/collection/assets/svg/star2.svg +5 -0
  745. package/dist/collection/assets/svg/star3.svg +48 -0
  746. package/dist/collection/assets/svg/steps.svg +5 -0
  747. package/dist/collection/assets/svg/stocks-down.svg +5 -0
  748. package/dist/collection/assets/svg/stocks-up.svg +5 -0
  749. package/dist/collection/assets/svg/stopsign-alert.svg +5 -0
  750. package/dist/collection/assets/svg/stopwatch-off.svg +5 -0
  751. package/dist/collection/assets/svg/stopwatch.svg +5 -0
  752. package/dist/collection/assets/svg/stopwatch1.svg +7 -0
  753. package/dist/collection/assets/svg/store-alt.svg +5 -0
  754. package/dist/collection/assets/svg/store.svg +5 -0
  755. package/dist/collection/assets/svg/store2.svg +5 -0
  756. package/dist/collection/assets/svg/storm.svg +5 -0
  757. package/dist/collection/assets/svg/strike.svg +5 -0
  758. package/dist/collection/assets/svg/suitcase.svg +5 -0
  759. package/dist/collection/assets/svg/sun.svg +5 -0
  760. package/dist/collection/assets/svg/sunglasses.svg +5 -0
  761. package/dist/collection/assets/svg/survey.svg +5 -0
  762. package/dist/collection/assets/svg/swap-fill.svg +5 -0
  763. package/dist/collection/assets/svg/swap-stroke.svg +5 -0
  764. package/dist/collection/assets/svg/swatchbook.svg +5 -0
  765. package/dist/collection/assets/svg/swipe-left.svg +5 -0
  766. package/dist/collection/assets/svg/swipe-right.svg +5 -0
  767. package/dist/collection/assets/svg/switch-flip.svg +5 -0
  768. package/dist/collection/assets/svg/sync.svg +5 -0
  769. package/dist/collection/assets/svg/t-shirt-long-sleeve.svg +5 -0
  770. package/dist/collection/assets/svg/t-shirt.svg +5 -0
  771. package/dist/collection/assets/svg/table.svg +5 -0
  772. package/dist/collection/assets/svg/tag-money.svg +5 -0
  773. package/dist/collection/assets/svg/tag-special.svg +5 -0
  774. package/dist/collection/assets/svg/tag.svg +4 -0
  775. package/dist/collection/assets/svg/tap.svg +5 -0
  776. package/dist/collection/assets/svg/target.svg +5 -0
  777. package/dist/collection/assets/svg/team.svg +5 -0
  778. package/dist/collection/assets/svg/terminal.svg +5 -0
  779. package/dist/collection/assets/svg/theater-masks.svg +5 -0
  780. package/dist/collection/assets/svg/three-square.svg +5 -0
  781. package/dist/collection/assets/svg/thumbdrive.svg +5 -0
  782. package/dist/collection/assets/svg/thumbs-down.svg +5 -0
  783. package/dist/collection/assets/svg/thumbs-up.svg +5 -0
  784. package/dist/collection/assets/svg/thumbtack.svg +5 -0
  785. package/dist/collection/assets/svg/ticket-movie.svg +5 -0
  786. package/dist/collection/assets/svg/ticket.svg +5 -0
  787. package/dist/collection/assets/svg/tiktok.svg +5 -0
  788. package/dist/collection/assets/svg/time.svg +5 -0
  789. package/dist/collection/assets/svg/timer.svg +5 -0
  790. package/dist/collection/assets/svg/toggle-off.svg +5 -0
  791. package/dist/collection/assets/svg/toggles.svg +5 -0
  792. package/dist/collection/assets/svg/toolbox.svg +5 -0
  793. package/dist/collection/assets/svg/tornado.svg +5 -0
  794. package/dist/collection/assets/svg/touch-type.svg +5 -0
  795. package/dist/collection/assets/svg/trail-map.svg +5 -0
  796. package/dist/collection/assets/svg/train.svg +5 -0
  797. package/dist/collection/assets/svg/transfer-alt.svg +5 -0
  798. package/dist/collection/assets/svg/transfer.svg +5 -0
  799. package/dist/collection/assets/svg/trash-2.svg +5 -0
  800. package/dist/collection/assets/svg/trash-cancel.svg +5 -0
  801. package/dist/collection/assets/svg/trash.svg +5 -0
  802. package/dist/collection/assets/svg/treasure-chest.svg +5 -0
  803. package/dist/collection/assets/svg/trend-down.svg +5 -0
  804. package/dist/collection/assets/svg/trend-up.svg +5 -0
  805. package/dist/collection/assets/svg/triangle-measure.svg +5 -0
  806. package/dist/collection/assets/svg/trophy-2.svg +5 -0
  807. package/dist/collection/assets/svg/trophy.svg +5 -0
  808. package/dist/collection/assets/svg/trophy2.svg +5 -0
  809. package/dist/collection/assets/svg/tty.svg +5 -0
  810. package/dist/collection/assets/svg/tulip-pot.svg +5 -0
  811. package/dist/collection/assets/svg/tune-alt.svg +5 -0
  812. package/dist/collection/assets/svg/tune.svg +5 -0
  813. package/dist/collection/assets/svg/turkey.svg +5 -0
  814. package/dist/collection/assets/svg/turret.svg +5 -0
  815. package/dist/collection/assets/svg/tv.svg +5 -0
  816. package/dist/collection/assets/svg/twitter.svg +5 -0
  817. package/dist/collection/assets/svg/twitter2.svg +5 -0
  818. package/dist/collection/assets/svg/type-square.svg +5 -0
  819. package/dist/collection/assets/svg/typewriter.svg +5 -0
  820. package/dist/collection/assets/svg/typography.svg +5 -0
  821. package/dist/collection/assets/svg/ul.svg +10 -0
  822. package/dist/collection/assets/svg/underline.svg +6 -0
  823. package/dist/collection/assets/svg/undo.svg +5 -0
  824. package/dist/collection/assets/svg/unicorn.svg +5 -0
  825. package/dist/collection/assets/svg/universal-access-alt.svg +5 -0
  826. package/dist/collection/assets/svg/universal-access.svg +5 -0
  827. package/dist/collection/assets/svg/unlock.svg +5 -0
  828. package/dist/collection/assets/svg/user-add.svg +5 -0
  829. package/dist/collection/assets/svg/user-cancel.svg +5 -0
  830. package/dist/collection/assets/svg/user-check.svg +5 -0
  831. package/dist/collection/assets/svg/user-circle.svg +5 -0
  832. package/dist/collection/assets/svg/user-heart.svg +5 -0
  833. package/dist/collection/assets/svg/user-list.svg +5 -0
  834. package/dist/collection/assets/svg/user-minus.svg +5 -0
  835. package/dist/collection/assets/svg/user-off.svg +5 -0
  836. package/dist/collection/assets/svg/user-square.svg +5 -0
  837. package/dist/collection/assets/svg/user.svg +5 -0
  838. package/dist/collection/assets/svg/users.svg +5 -0
  839. package/dist/collection/assets/svg/village.svg +5 -0
  840. package/dist/collection/assets/svg/vision.svg +5 -0
  841. package/dist/collection/assets/svg/volume-high.svg +5 -0
  842. package/dist/collection/assets/svg/volume-low.svg +5 -0
  843. package/dist/collection/assets/svg/volume-mute.svg +5 -0
  844. package/dist/collection/assets/svg/volume-off.svg +5 -0
  845. package/dist/collection/assets/svg/volume.svg +5 -0
  846. package/dist/collection/assets/svg/waffle.svg +5 -0
  847. package/dist/collection/assets/svg/walkie-talkie.svg +5 -0
  848. package/dist/collection/assets/svg/wallet.svg +5 -0
  849. package/dist/collection/assets/svg/warming-cover.svg +5 -0
  850. package/dist/collection/assets/svg/warning.svg +5 -0
  851. package/dist/collection/assets/svg/watch-apple.svg +5 -0
  852. package/dist/collection/assets/svg/watch-smart.svg +5 -0
  853. package/dist/collection/assets/svg/watch.svg +5 -0
  854. package/dist/collection/assets/svg/wave.svg +5 -0
  855. package/dist/collection/assets/svg/whatsapp.svg +5 -0
  856. package/dist/collection/assets/svg/whatsapp2.svg +5 -0
  857. package/dist/collection/assets/svg/wheelchair-alt.svg +5 -0
  858. package/dist/collection/assets/svg/wheelchair.svg +5 -0
  859. package/dist/collection/assets/svg/whistle.svg +5 -0
  860. package/dist/collection/assets/svg/wifi.svg +5 -0
  861. package/dist/collection/assets/svg/wind.svg +5 -0
  862. package/dist/collection/assets/svg/window-layout.svg +5 -0
  863. package/dist/collection/assets/svg/winners-dias.svg +5 -0
  864. package/dist/collection/assets/svg/woman-man.svg +5 -0
  865. package/dist/collection/assets/svg/women.svg +5 -0
  866. package/dist/collection/assets/svg/world.svg +5 -0
  867. package/dist/collection/assets/svg/wrench-pencil.svg +5 -0
  868. package/dist/collection/assets/svg/wrench.svg +5 -0
  869. package/dist/collection/assets/svg/wrenches.svg +5 -0
  870. package/dist/collection/assets/svg/writing.svg +5 -0
  871. package/dist/collection/assets/svg/youtube.svg +5 -0
  872. package/dist/collection/assets/svg/youtube2.svg +5 -0
  873. package/dist/collection/assets/svg/zip-archive.svg +5 -0
  874. package/dist/collection/assets/svg/zoom-in.svg +5 -0
  875. package/dist/collection/assets/svg/zoom-out.svg +5 -0
  876. package/dist/collection/collection-manifest.json +45 -0
  877. package/dist/collection/components/generate-summary.js +35 -0
  878. package/dist/collection/components/salla-add-product-button/salla-add-product-button.css +7 -0
  879. package/dist/collection/components/salla-add-product-button/salla-add-product-button.js +240 -0
  880. package/dist/collection/components/salla-button/salla-button.css +4 -0
  881. package/dist/collection/components/salla-button/salla-button.js +387 -0
  882. package/dist/collection/components/salla-conditional-fields/salla-conditional-fields.js +90 -0
  883. package/dist/collection/components/salla-datetime-picker/interfaces.js +4 -0
  884. package/dist/collection/components/salla-datetime-picker/salla-datetime-picker.css +13 -0
  885. package/dist/collection/components/salla-datetime-picker/salla-datetime-picker.js +1374 -0
  886. package/dist/collection/components/salla-file-upload/interfaces.js +42 -0
  887. package/dist/collection/components/salla-file-upload/salla-file-upload.css +219 -0
  888. package/dist/collection/components/salla-file-upload/salla-file-upload.js +1435 -0
  889. package/dist/collection/components/salla-gifting/gift-schema.js +4 -0
  890. package/dist/collection/components/salla-gifting/intefaces.js +4 -0
  891. package/dist/collection/components/salla-gifting/salla-gifting.css +15 -0
  892. package/dist/collection/components/salla-gifting/salla-gifting.js +569 -0
  893. package/dist/collection/components/salla-infinite-scroll/salla-infinite-scroll.css +4 -0
  894. package/dist/collection/components/salla-infinite-scroll/salla-infinite-scroll.js +171 -0
  895. package/dist/collection/components/salla-installment/salla-installment.css +134 -0
  896. package/dist/collection/components/salla-installment/salla-installment.js +196 -0
  897. package/dist/collection/components/salla-list-tile/salla-list-tile.css +0 -0
  898. package/dist/collection/components/salla-list-tile/salla-list-tile.js +80 -0
  899. package/dist/collection/components/salla-loading/salla-loading.css +19 -0
  900. package/dist/collection/components/salla-loading/salla-loading.js +111 -0
  901. package/dist/collection/components/salla-localization-modal/salla-localization-modal.css +1084 -0
  902. package/dist/collection/components/salla-localization-modal/salla-localization-modal.js +261 -0
  903. package/dist/collection/components/salla-login-modal/salla-login-modal.css +4 -0
  904. package/dist/collection/components/salla-login-modal/salla-login-modal.js +409 -0
  905. package/dist/collection/components/salla-loyalty/loyalty-schema.js +9 -0
  906. package/dist/collection/components/salla-loyalty/salla-loyalty-prize-item.css +3 -0
  907. package/dist/collection/components/salla-loyalty/salla-loyalty-prize-item.js +69 -0
  908. package/dist/collection/components/salla-loyalty/salla-loyalty.css +0 -0
  909. package/dist/collection/components/salla-loyalty/salla-loyalty.js +457 -0
  910. package/dist/collection/components/salla-modal/salla-modal.css +9 -0
  911. package/dist/collection/components/salla-modal/salla-modal.js +519 -0
  912. package/dist/collection/components/salla-offer-modal/offer-schema.js +4 -0
  913. package/dist/collection/components/salla-offer-modal/salla-offer-modal.css +4 -0
  914. package/dist/collection/components/salla-offer-modal/salla-offer-modal.js +247 -0
  915. package/dist/collection/components/salla-placeholder/salla-placeholder.css +0 -0
  916. package/dist/collection/components/salla-placeholder/salla-placeholder.js +109 -0
  917. package/dist/collection/components/salla-product-availability/salla-product-availability.css +5 -0
  918. package/dist/collection/components/salla-product-availability/salla-product-availability.js +191 -0
  919. package/dist/collection/components/salla-product-size-guide/salla-product-size-guide.css +4 -0
  920. package/dist/collection/components/salla-product-size-guide/salla-product-size-guide.js +136 -0
  921. package/dist/collection/components/salla-quantity-input/salla-quantity-input.css +4 -0
  922. package/dist/collection/components/salla-quantity-input/salla-quantity-input.js +168 -0
  923. package/dist/collection/components/salla-rating-modal/order-feedback-response.js +4 -0
  924. package/dist/collection/components/salla-rating-modal/salla-rating-modal.css +4 -0
  925. package/dist/collection/components/salla-rating-modal/salla-rating-modal.js +286 -0
  926. package/dist/collection/components/salla-rating-stars/salla-rating-stars.css +4 -0
  927. package/dist/collection/components/salla-rating-stars/salla-rating-stars.js +140 -0
  928. package/dist/collection/components/salla-scopes/interfaces.js +8 -0
  929. package/dist/collection/components/salla-scopes/salla-scopes.css +13 -0
  930. package/dist/collection/components/salla-scopes/salla-scopes.js +303 -0
  931. package/dist/collection/components/salla-search/salla-search.css +4 -0
  932. package/dist/collection/components/salla-search/salla-search.js +204 -0
  933. package/dist/collection/components/salla-search/search-response.js +4 -0
  934. package/dist/collection/components/salla-select/salla-select.css +86 -0
  935. package/dist/collection/components/salla-select/salla-select.js +610 -0
  936. package/dist/collection/components/salla-skeleton/salla-skeleton.css +3 -0
  937. package/dist/collection/components/salla-skeleton/salla-skeleton.js +91 -0
  938. package/dist/collection/components/salla-social-share/interfaces.js +11 -0
  939. package/dist/collection/components/salla-social-share/salla-social-share.css +0 -0
  940. package/dist/collection/components/salla-social-share/salla-social-share.js +182 -0
  941. package/dist/collection/components/salla-swiper/salla-swiper.css +177 -0
  942. package/dist/collection/components/salla-swiper/salla-swiper.js +148 -0
  943. package/dist/collection/components/salla-tabs/interfaces.js +4 -0
  944. package/dist/collection/components/salla-tabs/salla-tab-content.css +4 -0
  945. package/dist/collection/components/salla-tabs/salla-tab-content.js +80 -0
  946. package/dist/collection/components/salla-tabs/salla-tab-header.css +4 -0
  947. package/dist/collection/components/salla-tabs/salla-tab-header.js +173 -0
  948. package/dist/collection/components/salla-tabs/salla-tabs.css +15 -0
  949. package/dist/collection/components/salla-tabs/salla-tabs.js +109 -0
  950. package/dist/collection/components/salla-tabs/utils.js +6 -0
  951. package/dist/collection/components/salla-tel-input/interfaces.js +4 -0
  952. package/dist/collection/components/salla-tel-input/salla-tel-input.css +1302 -0
  953. package/dist/collection/components/salla-tel-input/salla-tel-input.js +259 -0
  954. package/dist/collection/components/salla-verify/salla-verify.css +7 -0
  955. package/dist/collection/components/salla-verify/salla-verify.js +331 -0
  956. package/dist/collection/global/app-dev.js +35 -0
  957. package/dist/collection/global/app.js +10 -0
  958. package/dist/collection/index.js +4 -0
  959. package/dist/collection/interfaces/colors.js +4 -0
  960. package/dist/collection/interfaces/index.js +5 -0
  961. package/dist/collection/interfaces/ratio.js +4 -0
  962. package/dist/{twilight/Helper-7bc9b55a.js → components/Helper.js} +0 -0
  963. package/dist/{twilight/_commonjsHelpers-2819da56.js → components/_commonjsHelpers.js} +1 -24
  964. package/dist/{twilight/anime.es-7317bfe3.js → components/anime.es.js} +2 -3
  965. package/dist/{twilight/arrow-right-1c3e04f2.js → components/arrow-right.js} +0 -0
  966. package/dist/{twilight/cancel-62d59306.js → components/cancel.js} +2 -2
  967. package/dist/{twilight/app-globals-83658112.js → components/index.js} +3283 -8183
  968. package/dist/{twilight/keyboard_arrow_right-37e18eed.js → components/keyboard_arrow_right.js} +0 -0
  969. package/dist/{twilight/mail-9d5204c6.js → components/mail.js} +0 -0
  970. package/dist/components/salla-add-product-button.js +155 -0
  971. package/dist/components/salla-button.js +9 -0
  972. package/dist/{twilight/salla-button.entry.js → components/salla-button2.js} +38 -8
  973. package/dist/components/salla-conditional-fields.js +101 -0
  974. package/dist/components/salla-datetime-picker.js +9 -0
  975. package/dist/{twilight/salla-datetime-picker.entry.js → components/salla-datetime-picker2.js} +80 -24
  976. package/dist/components/salla-file-upload.js +9 -0
  977. package/dist/{twilight/salla-file-upload.entry.js → components/salla-file-upload2.js} +8173 -11215
  978. package/dist/{twilight/salla-gifting.entry.js → components/salla-gifting.js} +147 -14
  979. package/dist/{twilight/salla-infinite-scroll.entry.js → components/salla-infinite-scroll.js} +35 -9
  980. package/dist/components/salla-installment.js +156 -0
  981. package/dist/components/salla-list-tile.js +9 -0
  982. package/dist/{twilight/salla-list-tile.entry.js → components/salla-list-tile2.js} +25 -7
  983. package/dist/components/salla-loading.js +9 -0
  984. package/dist/{twilight/salla-loading.entry.js → components/salla-loading2.js} +28 -8
  985. package/dist/{twilight/salla-localization-modal.entry.js → components/salla-localization-modal.js} +69 -10
  986. package/dist/{twilight/salla-login-modal.entry.js → components/salla-login-modal.js} +73 -12
  987. package/dist/components/salla-loyalty-prize-item.js +42 -0
  988. package/dist/{twilight/salla-loyalty.entry.js → components/salla-loyalty.js} +108 -10
  989. package/dist/components/salla-modal.js +9 -0
  990. package/dist/{twilight/salla-modal.entry.js → components/salla-modal2.js} +58 -13
  991. package/dist/{twilight/salla-offer-modal.entry.js → components/salla-offer-modal.js} +67 -10
  992. package/dist/components/salla-placeholder.js +9 -0
  993. package/dist/{twilight/salla-placeholder.entry.js → components/salla-placeholder2.js} +27 -7
  994. package/dist/components/salla-product-availability.js +9 -0
  995. package/dist/{twilight/salla-product-availability.entry.js → components/salla-product-availability2.js} +55 -9
  996. package/dist/{twilight/salla-product-size-guide.entry.js → components/salla-product-size-guide.js} +78 -9
  997. package/dist/{twilight/salla-quantity-input.entry.js → components/salla-quantity-input.js} +32 -9
  998. package/dist/{twilight/salla-rating-modal.entry.js → components/salla-rating-modal.js} +66 -11
  999. package/dist/components/salla-rating-stars.js +9 -0
  1000. package/dist/{twilight/salla-rating-stars.entry.js → components/salla-rating-stars2.js} +29 -10
  1001. package/dist/components/salla-scopes.js +230 -0
  1002. package/dist/{twilight/salla-search.entry.js → components/salla-search.js} +50 -10
  1003. package/dist/components/salla-select.js +199 -0
  1004. package/dist/components/salla-skeleton.js +9 -0
  1005. package/dist/components/salla-skeleton2.js +53 -0
  1006. package/dist/{twilight/salla-social-share.entry.js → components/salla-social-share.js} +43 -11
  1007. package/dist/components/salla-swiper.js +9 -0
  1008. package/dist/components/salla-swiper2.js +5048 -0
  1009. package/dist/components/salla-tab-content.js +9 -0
  1010. package/dist/components/salla-tab-content2.js +58 -0
  1011. package/dist/components/salla-tab-header.js +9 -0
  1012. package/dist/{twilight/salla-tab-header.entry.js → components/salla-tab-header2.js} +29 -7
  1013. package/dist/components/salla-tabs.js +9 -0
  1014. package/dist/{twilight/salla-tabs.entry.js → components/salla-tabs2.js} +26 -8
  1015. package/dist/components/salla-tel-input.js +9 -0
  1016. package/dist/{twilight/salla-tel-input.entry.js → components/salla-tel-input2.js} +41 -14
  1017. package/dist/components/salla-verify.js +9 -0
  1018. package/dist/{twilight/salla-verify.entry.js → components/salla-verify2.js} +53 -9
  1019. package/dist/{twilight/search-19ea3313.js → components/search.js} +0 -0
  1020. package/dist/{twilight/star2-b134fc74.js → components/star2.js} +0 -0
  1021. package/dist/esm/_commonjsHelpers-1415ffd3.js +24 -0
  1022. package/dist/esm/css-shim-0e7604db.js +7 -0
  1023. package/dist/{twilight → esm}/dom-a1a72c67.js +0 -0
  1024. package/dist/esm/index-0ce70ad2.js +1970 -0
  1025. package/dist/esm/index-f04e787f.js +7514 -0
  1026. package/dist/esm/index.js +3 -0
  1027. package/dist/esm/loader.js +36 -0
  1028. package/dist/esm/polyfills/core-js.js +11 -0
  1029. package/dist/esm/polyfills/css-shim.js +1 -0
  1030. package/dist/esm/polyfills/dom.js +79 -0
  1031. package/dist/esm/polyfills/es5-html-element.js +1 -0
  1032. package/dist/esm/polyfills/index.js +34 -0
  1033. package/dist/esm/polyfills/system.js +6 -0
  1034. package/dist/{twilight → esm}/salla-add-product-button.entry.js +1 -1
  1035. package/dist/esm/salla-button_27.entry.js +27849 -0
  1036. package/dist/{twilight → esm}/salla-conditional-fields.entry.js +1 -1
  1037. package/dist/{twilight → esm}/salla-installment.entry.js +2 -2
  1038. package/dist/{twilight → esm}/salla-loyalty-prize-item.entry.js +2 -2
  1039. package/dist/{twilight → esm}/salla-scopes.entry.js +2 -2
  1040. package/dist/{twilight → esm}/salla-select.entry.js +2 -2
  1041. package/dist/esm/search-19ea3313.js +11 -0
  1042. package/dist/esm/twilight.js +79 -0
  1043. package/dist/esm-es5/_commonjsHelpers-1415ffd3.js +4 -0
  1044. package/dist/esm-es5/css-shim-0e7604db.js +4 -0
  1045. package/dist/esm-es5/dom-a1a72c67.js +24 -0
  1046. package/dist/esm-es5/index-0ce70ad2.js +4 -0
  1047. package/dist/esm-es5/index-f04e787f.js +24 -0
  1048. package/dist/esm-es5/index.js +3 -0
  1049. package/dist/esm-es5/loader.js +4 -0
  1050. package/dist/esm-es5/salla-add-product-button.entry.js +4 -0
  1051. package/dist/esm-es5/salla-button_27.entry.js +34 -0
  1052. package/dist/esm-es5/salla-conditional-fields.entry.js +4 -0
  1053. package/dist/esm-es5/salla-installment.entry.js +4 -0
  1054. package/dist/esm-es5/salla-loyalty-prize-item.entry.js +4 -0
  1055. package/dist/esm-es5/salla-scopes.entry.js +4 -0
  1056. package/dist/esm-es5/salla-select.entry.js +4 -0
  1057. package/dist/esm-es5/search-19ea3313.js +4 -0
  1058. package/dist/esm-es5/twilight.js +4 -0
  1059. package/dist/index.cjs.js +1 -0
  1060. package/dist/index.js +1 -0
  1061. package/dist/twilight/p-0db2b810.entry.js +4 -0
  1062. package/dist/twilight/p-10ac9c79.entry.js +4 -0
  1063. package/dist/twilight/p-13129ac9.entry.js +4 -0
  1064. package/dist/twilight/p-1914490f.system.entry.js +4 -0
  1065. package/dist/twilight/p-1e26972a.js +24 -0
  1066. package/dist/twilight/p-24e726cc.system.entry.js +34 -0
  1067. package/dist/twilight/p-26a23097.system.entry.js +4 -0
  1068. package/dist/twilight/p-3d828bb4.js +4 -0
  1069. package/dist/twilight/p-475ef754.js +4 -0
  1070. package/dist/twilight/p-521b6fde.entry.js +4 -0
  1071. package/dist/twilight/p-5db948f2.js +22 -0
  1072. package/dist/twilight/p-89f1c6be.system.js +24 -0
  1073. package/dist/twilight/p-97daba27.entry.js +4 -0
  1074. package/dist/twilight/p-9beb6b7b.system.js +4 -0
  1075. package/dist/twilight/p-a7caaba3.system.entry.js +4 -0
  1076. package/dist/twilight/p-ad42e3b6.system.js +4 -0
  1077. package/dist/twilight/p-b7610000.system.js +4 -0
  1078. package/dist/twilight/p-bbc94b9b.entry.js +4 -0
  1079. package/dist/twilight/p-ca68752d.js +5 -0
  1080. package/dist/twilight/p-ce3e3fa2.system.entry.js +4 -0
  1081. package/dist/twilight/p-d64f3123.entry.js +22 -0
  1082. package/dist/twilight/p-da69797f.system.js +4 -0
  1083. package/dist/twilight/p-db0ba553.system.js +5 -0
  1084. package/dist/twilight/p-dd9b3c90.system.entry.js +4 -0
  1085. package/dist/twilight/p-e3655a96.system.js +24 -0
  1086. package/dist/twilight/p-f610b6bf.system.entry.js +4 -0
  1087. package/dist/twilight/p-f84bae34.js +4 -0
  1088. package/dist/twilight/p-fd444b25.system.js +4 -0
  1089. package/dist/twilight/twilight.esm.js +1 -130
  1090. package/dist/twilight/twilight.js +133 -0
  1091. package/package.json +3 -3
  1092. package/dist/twilight/css-shim-7e7f1376.js +0 -7
  1093. package/dist/twilight/salla-skeleton.entry.js +0 -34
  1094. package/dist/twilight/salla-swiper.entry.js +0 -11345
  1095. package/dist/twilight/salla-tab-content.entry.js +0 -39
  1096. package/dist/twilight/shadow-css-6bcafb5b.js +0 -390
  1097. package/dist/twilight/twilight.css +0 -5300
@@ -0,0 +1,5048 @@
1
+ /*!
2
+ * Crafted with ❤ by Salla
3
+ */
4
+ import { proxyCustomElement, HTMLElement as HTMLElement$1, h } from '@stencil/core/internal/client';
5
+ import { A as ArrowRightIcon } from './arrow-right.js';
6
+ import { d as defineCustomElement$1 } from './salla-button2.js';
7
+
8
+ const LeftArrow = `<!-- Generated by IcoMoon.io -->
9
+ <svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 32 32">
10
+ <title>arrow-left</title>
11
+ <path d="M28 14.667h-20.452l7.996-6.997c0.555-0.485 0.611-1.327 0.125-1.881-0.485-0.553-1.327-0.611-1.881-0.125l-10.667 9.333c-0.011 0.009-0.015 0.024-0.025 0.033-0.096 0.089-0.167 0.199-0.232 0.313-0.025 0.043-0.063 0.076-0.081 0.121-0.073 0.165-0.116 0.345-0.116 0.536s0.043 0.371 0.116 0.535c0.020 0.045 0.057 0.079 0.081 0.121 0.067 0.115 0.136 0.224 0.232 0.313 0.011 0.009 0.015 0.024 0.025 0.033l10.667 9.333c0.253 0.221 0.567 0.331 0.879 0.331 0.371 0 0.74-0.155 1.004-0.455 0.485-0.555 0.429-1.396-0.125-1.881l-7.997-6.997h20.452c0.736 0 1.333-0.597 1.333-1.333s-0.597-1.333-1.333-1.333z"></path>
12
+ </svg>
13
+ `;
14
+
15
+ /**
16
+ * SSR Window 4.0.2
17
+ * Better handling for window object in SSR environment
18
+ * https://github.com/nolimits4web/ssr-window
19
+ *
20
+ * Copyright 2021, Vladimir Kharlampidi
21
+ *
22
+ * Licensed under MIT
23
+ *
24
+ * Released on: December 13, 2021
25
+ */
26
+ /* eslint-disable no-param-reassign */
27
+ function isObject$1(obj) {
28
+ return (obj !== null &&
29
+ typeof obj === 'object' &&
30
+ 'constructor' in obj &&
31
+ obj.constructor === Object);
32
+ }
33
+ function extend$1(target = {}, src = {}) {
34
+ Object.keys(src).forEach((key) => {
35
+ if (typeof target[key] === 'undefined')
36
+ target[key] = src[key];
37
+ else if (isObject$1(src[key]) &&
38
+ isObject$1(target[key]) &&
39
+ Object.keys(src[key]).length > 0) {
40
+ extend$1(target[key], src[key]);
41
+ }
42
+ });
43
+ }
44
+
45
+ const ssrDocument = {
46
+ body: {},
47
+ addEventListener() { },
48
+ removeEventListener() { },
49
+ activeElement: {
50
+ blur() { },
51
+ nodeName: '',
52
+ },
53
+ querySelector() {
54
+ return null;
55
+ },
56
+ querySelectorAll() {
57
+ return [];
58
+ },
59
+ getElementById() {
60
+ return null;
61
+ },
62
+ createEvent() {
63
+ return {
64
+ initEvent() { },
65
+ };
66
+ },
67
+ createElement() {
68
+ return {
69
+ children: [],
70
+ childNodes: [],
71
+ style: {},
72
+ setAttribute() { },
73
+ getElementsByTagName() {
74
+ return [];
75
+ },
76
+ };
77
+ },
78
+ createElementNS() {
79
+ return {};
80
+ },
81
+ importNode() {
82
+ return null;
83
+ },
84
+ location: {
85
+ hash: '',
86
+ host: '',
87
+ hostname: '',
88
+ href: '',
89
+ origin: '',
90
+ pathname: '',
91
+ protocol: '',
92
+ search: '',
93
+ },
94
+ };
95
+ function getDocument() {
96
+ const doc = typeof document !== 'undefined' ? document : {};
97
+ extend$1(doc, ssrDocument);
98
+ return doc;
99
+ }
100
+
101
+ const ssrWindow = {
102
+ document: ssrDocument,
103
+ navigator: {
104
+ userAgent: '',
105
+ },
106
+ location: {
107
+ hash: '',
108
+ host: '',
109
+ hostname: '',
110
+ href: '',
111
+ origin: '',
112
+ pathname: '',
113
+ protocol: '',
114
+ search: '',
115
+ },
116
+ history: {
117
+ replaceState() { },
118
+ pushState() { },
119
+ go() { },
120
+ back() { },
121
+ },
122
+ CustomEvent: function CustomEvent() {
123
+ return this;
124
+ },
125
+ addEventListener() { },
126
+ removeEventListener() { },
127
+ getComputedStyle() {
128
+ return {
129
+ getPropertyValue() {
130
+ return '';
131
+ },
132
+ };
133
+ },
134
+ Image() { },
135
+ Date() { },
136
+ screen: {},
137
+ setTimeout() { },
138
+ clearTimeout() { },
139
+ matchMedia() {
140
+ return {};
141
+ },
142
+ requestAnimationFrame(callback) {
143
+ if (typeof setTimeout === 'undefined') {
144
+ callback();
145
+ return null;
146
+ }
147
+ return setTimeout(callback, 0);
148
+ },
149
+ cancelAnimationFrame(id) {
150
+ if (typeof setTimeout === 'undefined') {
151
+ return;
152
+ }
153
+ clearTimeout(id);
154
+ },
155
+ };
156
+ function getWindow() {
157
+ const win = typeof window !== 'undefined' ? window : {};
158
+ extend$1(win, ssrWindow);
159
+ return win;
160
+ }
161
+
162
+ /**
163
+ * Dom7 4.0.4
164
+ * Minimalistic JavaScript library for DOM manipulation, with a jQuery-compatible API
165
+ * https://framework7.io/docs/dom7.html
166
+ *
167
+ * Copyright 2022, Vladimir Kharlampidi
168
+ *
169
+ * Licensed under MIT
170
+ *
171
+ * Released on: January 11, 2022
172
+ */
173
+
174
+ /* eslint-disable no-proto */
175
+ function makeReactive(obj) {
176
+ const proto = obj.__proto__;
177
+ Object.defineProperty(obj, '__proto__', {
178
+ get() {
179
+ return proto;
180
+ },
181
+
182
+ set(value) {
183
+ proto.__proto__ = value;
184
+ }
185
+
186
+ });
187
+ }
188
+
189
+ class Dom7 extends Array {
190
+ constructor(items) {
191
+ if (typeof items === 'number') {
192
+ super(items);
193
+ } else {
194
+ super(...(items || []));
195
+ makeReactive(this);
196
+ }
197
+ }
198
+
199
+ }
200
+
201
+ function arrayFlat(arr = []) {
202
+ const res = [];
203
+ arr.forEach(el => {
204
+ if (Array.isArray(el)) {
205
+ res.push(...arrayFlat(el));
206
+ } else {
207
+ res.push(el);
208
+ }
209
+ });
210
+ return res;
211
+ }
212
+ function arrayFilter(arr, callback) {
213
+ return Array.prototype.filter.call(arr, callback);
214
+ }
215
+ function arrayUnique(arr) {
216
+ const uniqueArray = [];
217
+
218
+ for (let i = 0; i < arr.length; i += 1) {
219
+ if (uniqueArray.indexOf(arr[i]) === -1) uniqueArray.push(arr[i]);
220
+ }
221
+
222
+ return uniqueArray;
223
+ }
224
+
225
+ // eslint-disable-next-line
226
+
227
+ function qsa(selector, context) {
228
+ if (typeof selector !== 'string') {
229
+ return [selector];
230
+ }
231
+
232
+ const a = [];
233
+ const res = context.querySelectorAll(selector);
234
+
235
+ for (let i = 0; i < res.length; i += 1) {
236
+ a.push(res[i]);
237
+ }
238
+
239
+ return a;
240
+ }
241
+
242
+ function $(selector, context) {
243
+ const window = getWindow();
244
+ const document = getDocument();
245
+ let arr = [];
246
+
247
+ if (!context && selector instanceof Dom7) {
248
+ return selector;
249
+ }
250
+
251
+ if (!selector) {
252
+ return new Dom7(arr);
253
+ }
254
+
255
+ if (typeof selector === 'string') {
256
+ const html = selector.trim();
257
+
258
+ if (html.indexOf('<') >= 0 && html.indexOf('>') >= 0) {
259
+ let toCreate = 'div';
260
+ if (html.indexOf('<li') === 0) toCreate = 'ul';
261
+ if (html.indexOf('<tr') === 0) toCreate = 'tbody';
262
+ if (html.indexOf('<td') === 0 || html.indexOf('<th') === 0) toCreate = 'tr';
263
+ if (html.indexOf('<tbody') === 0) toCreate = 'table';
264
+ if (html.indexOf('<option') === 0) toCreate = 'select';
265
+ const tempParent = document.createElement(toCreate);
266
+ tempParent.innerHTML = html;
267
+
268
+ for (let i = 0; i < tempParent.childNodes.length; i += 1) {
269
+ arr.push(tempParent.childNodes[i]);
270
+ }
271
+ } else {
272
+ arr = qsa(selector.trim(), context || document);
273
+ } // arr = qsa(selector, document);
274
+
275
+ } else if (selector.nodeType || selector === window || selector === document) {
276
+ arr.push(selector);
277
+ } else if (Array.isArray(selector)) {
278
+ if (selector instanceof Dom7) return selector;
279
+ arr = selector;
280
+ }
281
+
282
+ return new Dom7(arrayUnique(arr));
283
+ }
284
+
285
+ $.fn = Dom7.prototype;
286
+
287
+ // eslint-disable-next-line
288
+
289
+ function addClass(...classes) {
290
+ const classNames = arrayFlat(classes.map(c => c.split(' ')));
291
+ this.forEach(el => {
292
+ el.classList.add(...classNames);
293
+ });
294
+ return this;
295
+ }
296
+
297
+ function removeClass(...classes) {
298
+ const classNames = arrayFlat(classes.map(c => c.split(' ')));
299
+ this.forEach(el => {
300
+ el.classList.remove(...classNames);
301
+ });
302
+ return this;
303
+ }
304
+
305
+ function toggleClass(...classes) {
306
+ const classNames = arrayFlat(classes.map(c => c.split(' ')));
307
+ this.forEach(el => {
308
+ classNames.forEach(className => {
309
+ el.classList.toggle(className);
310
+ });
311
+ });
312
+ }
313
+
314
+ function hasClass(...classes) {
315
+ const classNames = arrayFlat(classes.map(c => c.split(' ')));
316
+ return arrayFilter(this, el => {
317
+ return classNames.filter(className => el.classList.contains(className)).length > 0;
318
+ }).length > 0;
319
+ }
320
+
321
+ function attr(attrs, value) {
322
+ if (arguments.length === 1 && typeof attrs === 'string') {
323
+ // Get attr
324
+ if (this[0]) return this[0].getAttribute(attrs);
325
+ return undefined;
326
+ } // Set attrs
327
+
328
+
329
+ for (let i = 0; i < this.length; i += 1) {
330
+ if (arguments.length === 2) {
331
+ // String
332
+ this[i].setAttribute(attrs, value);
333
+ } else {
334
+ // Object
335
+ for (const attrName in attrs) {
336
+ this[i][attrName] = attrs[attrName];
337
+ this[i].setAttribute(attrName, attrs[attrName]);
338
+ }
339
+ }
340
+ }
341
+
342
+ return this;
343
+ }
344
+
345
+ function removeAttr(attr) {
346
+ for (let i = 0; i < this.length; i += 1) {
347
+ this[i].removeAttribute(attr);
348
+ }
349
+
350
+ return this;
351
+ }
352
+
353
+ function transform(transform) {
354
+ for (let i = 0; i < this.length; i += 1) {
355
+ this[i].style.transform = transform;
356
+ }
357
+
358
+ return this;
359
+ }
360
+
361
+ function transition$1(duration) {
362
+ for (let i = 0; i < this.length; i += 1) {
363
+ this[i].style.transitionDuration = typeof duration !== 'string' ? `${duration}ms` : duration;
364
+ }
365
+
366
+ return this;
367
+ }
368
+
369
+ function on(...args) {
370
+ let [eventType, targetSelector, listener, capture] = args;
371
+
372
+ if (typeof args[1] === 'function') {
373
+ [eventType, listener, capture] = args;
374
+ targetSelector = undefined;
375
+ }
376
+
377
+ if (!capture) capture = false;
378
+
379
+ function handleLiveEvent(e) {
380
+ const target = e.target;
381
+ if (!target) return;
382
+ const eventData = e.target.dom7EventData || [];
383
+
384
+ if (eventData.indexOf(e) < 0) {
385
+ eventData.unshift(e);
386
+ }
387
+
388
+ if ($(target).is(targetSelector)) listener.apply(target, eventData);else {
389
+ const parents = $(target).parents(); // eslint-disable-line
390
+
391
+ for (let k = 0; k < parents.length; k += 1) {
392
+ if ($(parents[k]).is(targetSelector)) listener.apply(parents[k], eventData);
393
+ }
394
+ }
395
+ }
396
+
397
+ function handleEvent(e) {
398
+ const eventData = e && e.target ? e.target.dom7EventData || [] : [];
399
+
400
+ if (eventData.indexOf(e) < 0) {
401
+ eventData.unshift(e);
402
+ }
403
+
404
+ listener.apply(this, eventData);
405
+ }
406
+
407
+ const events = eventType.split(' ');
408
+ let j;
409
+
410
+ for (let i = 0; i < this.length; i += 1) {
411
+ const el = this[i];
412
+
413
+ if (!targetSelector) {
414
+ for (j = 0; j < events.length; j += 1) {
415
+ const event = events[j];
416
+ if (!el.dom7Listeners) el.dom7Listeners = {};
417
+ if (!el.dom7Listeners[event]) el.dom7Listeners[event] = [];
418
+ el.dom7Listeners[event].push({
419
+ listener,
420
+ proxyListener: handleEvent
421
+ });
422
+ el.addEventListener(event, handleEvent, capture);
423
+ }
424
+ } else {
425
+ // Live events
426
+ for (j = 0; j < events.length; j += 1) {
427
+ const event = events[j];
428
+ if (!el.dom7LiveListeners) el.dom7LiveListeners = {};
429
+ if (!el.dom7LiveListeners[event]) el.dom7LiveListeners[event] = [];
430
+ el.dom7LiveListeners[event].push({
431
+ listener,
432
+ proxyListener: handleLiveEvent
433
+ });
434
+ el.addEventListener(event, handleLiveEvent, capture);
435
+ }
436
+ }
437
+ }
438
+
439
+ return this;
440
+ }
441
+
442
+ function off(...args) {
443
+ let [eventType, targetSelector, listener, capture] = args;
444
+
445
+ if (typeof args[1] === 'function') {
446
+ [eventType, listener, capture] = args;
447
+ targetSelector = undefined;
448
+ }
449
+
450
+ if (!capture) capture = false;
451
+ const events = eventType.split(' ');
452
+
453
+ for (let i = 0; i < events.length; i += 1) {
454
+ const event = events[i];
455
+
456
+ for (let j = 0; j < this.length; j += 1) {
457
+ const el = this[j];
458
+ let handlers;
459
+
460
+ if (!targetSelector && el.dom7Listeners) {
461
+ handlers = el.dom7Listeners[event];
462
+ } else if (targetSelector && el.dom7LiveListeners) {
463
+ handlers = el.dom7LiveListeners[event];
464
+ }
465
+
466
+ if (handlers && handlers.length) {
467
+ for (let k = handlers.length - 1; k >= 0; k -= 1) {
468
+ const handler = handlers[k];
469
+
470
+ if (listener && handler.listener === listener) {
471
+ el.removeEventListener(event, handler.proxyListener, capture);
472
+ handlers.splice(k, 1);
473
+ } else if (listener && handler.listener && handler.listener.dom7proxy && handler.listener.dom7proxy === listener) {
474
+ el.removeEventListener(event, handler.proxyListener, capture);
475
+ handlers.splice(k, 1);
476
+ } else if (!listener) {
477
+ el.removeEventListener(event, handler.proxyListener, capture);
478
+ handlers.splice(k, 1);
479
+ }
480
+ }
481
+ }
482
+ }
483
+ }
484
+
485
+ return this;
486
+ }
487
+
488
+ function trigger(...args) {
489
+ const window = getWindow();
490
+ const events = args[0].split(' ');
491
+ const eventData = args[1];
492
+
493
+ for (let i = 0; i < events.length; i += 1) {
494
+ const event = events[i];
495
+
496
+ for (let j = 0; j < this.length; j += 1) {
497
+ const el = this[j];
498
+
499
+ if (window.CustomEvent) {
500
+ const evt = new window.CustomEvent(event, {
501
+ detail: eventData,
502
+ bubbles: true,
503
+ cancelable: true
504
+ });
505
+ el.dom7EventData = args.filter((data, dataIndex) => dataIndex > 0);
506
+ el.dispatchEvent(evt);
507
+ el.dom7EventData = [];
508
+ delete el.dom7EventData;
509
+ }
510
+ }
511
+ }
512
+
513
+ return this;
514
+ }
515
+
516
+ function transitionEnd$1(callback) {
517
+ const dom = this;
518
+
519
+ function fireCallBack(e) {
520
+ if (e.target !== this) return;
521
+ callback.call(this, e);
522
+ dom.off('transitionend', fireCallBack);
523
+ }
524
+
525
+ if (callback) {
526
+ dom.on('transitionend', fireCallBack);
527
+ }
528
+
529
+ return this;
530
+ }
531
+
532
+ function outerWidth(includeMargins) {
533
+ if (this.length > 0) {
534
+ if (includeMargins) {
535
+ const styles = this.styles();
536
+ return this[0].offsetWidth + parseFloat(styles.getPropertyValue('margin-right')) + parseFloat(styles.getPropertyValue('margin-left'));
537
+ }
538
+
539
+ return this[0].offsetWidth;
540
+ }
541
+
542
+ return null;
543
+ }
544
+
545
+ function outerHeight(includeMargins) {
546
+ if (this.length > 0) {
547
+ if (includeMargins) {
548
+ const styles = this.styles();
549
+ return this[0].offsetHeight + parseFloat(styles.getPropertyValue('margin-top')) + parseFloat(styles.getPropertyValue('margin-bottom'));
550
+ }
551
+
552
+ return this[0].offsetHeight;
553
+ }
554
+
555
+ return null;
556
+ }
557
+
558
+ function offset() {
559
+ if (this.length > 0) {
560
+ const window = getWindow();
561
+ const document = getDocument();
562
+ const el = this[0];
563
+ const box = el.getBoundingClientRect();
564
+ const body = document.body;
565
+ const clientTop = el.clientTop || body.clientTop || 0;
566
+ const clientLeft = el.clientLeft || body.clientLeft || 0;
567
+ const scrollTop = el === window ? window.scrollY : el.scrollTop;
568
+ const scrollLeft = el === window ? window.scrollX : el.scrollLeft;
569
+ return {
570
+ top: box.top + scrollTop - clientTop,
571
+ left: box.left + scrollLeft - clientLeft
572
+ };
573
+ }
574
+
575
+ return null;
576
+ }
577
+
578
+ function styles() {
579
+ const window = getWindow();
580
+ if (this[0]) return window.getComputedStyle(this[0], null);
581
+ return {};
582
+ }
583
+
584
+ function css(props, value) {
585
+ const window = getWindow();
586
+ let i;
587
+
588
+ if (arguments.length === 1) {
589
+ if (typeof props === 'string') {
590
+ // .css('width')
591
+ if (this[0]) return window.getComputedStyle(this[0], null).getPropertyValue(props);
592
+ } else {
593
+ // .css({ width: '100px' })
594
+ for (i = 0; i < this.length; i += 1) {
595
+ for (const prop in props) {
596
+ this[i].style[prop] = props[prop];
597
+ }
598
+ }
599
+
600
+ return this;
601
+ }
602
+ }
603
+
604
+ if (arguments.length === 2 && typeof props === 'string') {
605
+ // .css('width', '100px')
606
+ for (i = 0; i < this.length; i += 1) {
607
+ this[i].style[props] = value;
608
+ }
609
+
610
+ return this;
611
+ }
612
+
613
+ return this;
614
+ }
615
+
616
+ function each(callback) {
617
+ if (!callback) return this;
618
+ this.forEach((el, index) => {
619
+ callback.apply(el, [el, index]);
620
+ });
621
+ return this;
622
+ }
623
+
624
+ function filter(callback) {
625
+ const result = arrayFilter(this, callback);
626
+ return $(result);
627
+ }
628
+
629
+ function html(html) {
630
+ if (typeof html === 'undefined') {
631
+ return this[0] ? this[0].innerHTML : null;
632
+ }
633
+
634
+ for (let i = 0; i < this.length; i += 1) {
635
+ this[i].innerHTML = html;
636
+ }
637
+
638
+ return this;
639
+ }
640
+
641
+ function text(text) {
642
+ if (typeof text === 'undefined') {
643
+ return this[0] ? this[0].textContent.trim() : null;
644
+ }
645
+
646
+ for (let i = 0; i < this.length; i += 1) {
647
+ this[i].textContent = text;
648
+ }
649
+
650
+ return this;
651
+ }
652
+
653
+ function is(selector) {
654
+ const window = getWindow();
655
+ const document = getDocument();
656
+ const el = this[0];
657
+ let compareWith;
658
+ let i;
659
+ if (!el || typeof selector === 'undefined') return false;
660
+
661
+ if (typeof selector === 'string') {
662
+ if (el.matches) return el.matches(selector);
663
+ if (el.webkitMatchesSelector) return el.webkitMatchesSelector(selector);
664
+ if (el.msMatchesSelector) return el.msMatchesSelector(selector);
665
+ compareWith = $(selector);
666
+
667
+ for (i = 0; i < compareWith.length; i += 1) {
668
+ if (compareWith[i] === el) return true;
669
+ }
670
+
671
+ return false;
672
+ }
673
+
674
+ if (selector === document) {
675
+ return el === document;
676
+ }
677
+
678
+ if (selector === window) {
679
+ return el === window;
680
+ }
681
+
682
+ if (selector.nodeType || selector instanceof Dom7) {
683
+ compareWith = selector.nodeType ? [selector] : selector;
684
+
685
+ for (i = 0; i < compareWith.length; i += 1) {
686
+ if (compareWith[i] === el) return true;
687
+ }
688
+
689
+ return false;
690
+ }
691
+
692
+ return false;
693
+ }
694
+
695
+ function index() {
696
+ let child = this[0];
697
+ let i;
698
+
699
+ if (child) {
700
+ i = 0; // eslint-disable-next-line
701
+
702
+ while ((child = child.previousSibling) !== null) {
703
+ if (child.nodeType === 1) i += 1;
704
+ }
705
+
706
+ return i;
707
+ }
708
+
709
+ return undefined;
710
+ }
711
+
712
+ function eq(index) {
713
+ if (typeof index === 'undefined') return this;
714
+ const length = this.length;
715
+
716
+ if (index > length - 1) {
717
+ return $([]);
718
+ }
719
+
720
+ if (index < 0) {
721
+ const returnIndex = length + index;
722
+ if (returnIndex < 0) return $([]);
723
+ return $([this[returnIndex]]);
724
+ }
725
+
726
+ return $([this[index]]);
727
+ }
728
+
729
+ function append(...els) {
730
+ let newChild;
731
+ const document = getDocument();
732
+
733
+ for (let k = 0; k < els.length; k += 1) {
734
+ newChild = els[k];
735
+
736
+ for (let i = 0; i < this.length; i += 1) {
737
+ if (typeof newChild === 'string') {
738
+ const tempDiv = document.createElement('div');
739
+ tempDiv.innerHTML = newChild;
740
+
741
+ while (tempDiv.firstChild) {
742
+ this[i].appendChild(tempDiv.firstChild);
743
+ }
744
+ } else if (newChild instanceof Dom7) {
745
+ for (let j = 0; j < newChild.length; j += 1) {
746
+ this[i].appendChild(newChild[j]);
747
+ }
748
+ } else {
749
+ this[i].appendChild(newChild);
750
+ }
751
+ }
752
+ }
753
+
754
+ return this;
755
+ }
756
+
757
+ function prepend(newChild) {
758
+ const document = getDocument();
759
+ let i;
760
+ let j;
761
+
762
+ for (i = 0; i < this.length; i += 1) {
763
+ if (typeof newChild === 'string') {
764
+ const tempDiv = document.createElement('div');
765
+ tempDiv.innerHTML = newChild;
766
+
767
+ for (j = tempDiv.childNodes.length - 1; j >= 0; j -= 1) {
768
+ this[i].insertBefore(tempDiv.childNodes[j], this[i].childNodes[0]);
769
+ }
770
+ } else if (newChild instanceof Dom7) {
771
+ for (j = 0; j < newChild.length; j += 1) {
772
+ this[i].insertBefore(newChild[j], this[i].childNodes[0]);
773
+ }
774
+ } else {
775
+ this[i].insertBefore(newChild, this[i].childNodes[0]);
776
+ }
777
+ }
778
+
779
+ return this;
780
+ }
781
+
782
+ function next(selector) {
783
+ if (this.length > 0) {
784
+ if (selector) {
785
+ if (this[0].nextElementSibling && $(this[0].nextElementSibling).is(selector)) {
786
+ return $([this[0].nextElementSibling]);
787
+ }
788
+
789
+ return $([]);
790
+ }
791
+
792
+ if (this[0].nextElementSibling) return $([this[0].nextElementSibling]);
793
+ return $([]);
794
+ }
795
+
796
+ return $([]);
797
+ }
798
+
799
+ function nextAll(selector) {
800
+ const nextEls = [];
801
+ let el = this[0];
802
+ if (!el) return $([]);
803
+
804
+ while (el.nextElementSibling) {
805
+ const next = el.nextElementSibling; // eslint-disable-line
806
+
807
+ if (selector) {
808
+ if ($(next).is(selector)) nextEls.push(next);
809
+ } else nextEls.push(next);
810
+
811
+ el = next;
812
+ }
813
+
814
+ return $(nextEls);
815
+ }
816
+
817
+ function prev(selector) {
818
+ if (this.length > 0) {
819
+ const el = this[0];
820
+
821
+ if (selector) {
822
+ if (el.previousElementSibling && $(el.previousElementSibling).is(selector)) {
823
+ return $([el.previousElementSibling]);
824
+ }
825
+
826
+ return $([]);
827
+ }
828
+
829
+ if (el.previousElementSibling) return $([el.previousElementSibling]);
830
+ return $([]);
831
+ }
832
+
833
+ return $([]);
834
+ }
835
+
836
+ function prevAll(selector) {
837
+ const prevEls = [];
838
+ let el = this[0];
839
+ if (!el) return $([]);
840
+
841
+ while (el.previousElementSibling) {
842
+ const prev = el.previousElementSibling; // eslint-disable-line
843
+
844
+ if (selector) {
845
+ if ($(prev).is(selector)) prevEls.push(prev);
846
+ } else prevEls.push(prev);
847
+
848
+ el = prev;
849
+ }
850
+
851
+ return $(prevEls);
852
+ }
853
+
854
+ function parent(selector) {
855
+ const parents = []; // eslint-disable-line
856
+
857
+ for (let i = 0; i < this.length; i += 1) {
858
+ if (this[i].parentNode !== null) {
859
+ if (selector) {
860
+ if ($(this[i].parentNode).is(selector)) parents.push(this[i].parentNode);
861
+ } else {
862
+ parents.push(this[i].parentNode);
863
+ }
864
+ }
865
+ }
866
+
867
+ return $(parents);
868
+ }
869
+
870
+ function parents(selector) {
871
+ const parents = []; // eslint-disable-line
872
+
873
+ for (let i = 0; i < this.length; i += 1) {
874
+ let parent = this[i].parentNode; // eslint-disable-line
875
+
876
+ while (parent) {
877
+ if (selector) {
878
+ if ($(parent).is(selector)) parents.push(parent);
879
+ } else {
880
+ parents.push(parent);
881
+ }
882
+
883
+ parent = parent.parentNode;
884
+ }
885
+ }
886
+
887
+ return $(parents);
888
+ }
889
+
890
+ function closest(selector) {
891
+ let closest = this; // eslint-disable-line
892
+
893
+ if (typeof selector === 'undefined') {
894
+ return $([]);
895
+ }
896
+
897
+ if (!closest.is(selector)) {
898
+ closest = closest.parents(selector).eq(0);
899
+ }
900
+
901
+ return closest;
902
+ }
903
+
904
+ function find(selector) {
905
+ const foundElements = [];
906
+
907
+ for (let i = 0; i < this.length; i += 1) {
908
+ const found = this[i].querySelectorAll(selector);
909
+
910
+ for (let j = 0; j < found.length; j += 1) {
911
+ foundElements.push(found[j]);
912
+ }
913
+ }
914
+
915
+ return $(foundElements);
916
+ }
917
+
918
+ function children(selector) {
919
+ const children = []; // eslint-disable-line
920
+
921
+ for (let i = 0; i < this.length; i += 1) {
922
+ const childNodes = this[i].children;
923
+
924
+ for (let j = 0; j < childNodes.length; j += 1) {
925
+ if (!selector || $(childNodes[j]).is(selector)) {
926
+ children.push(childNodes[j]);
927
+ }
928
+ }
929
+ }
930
+
931
+ return $(children);
932
+ }
933
+
934
+ function remove() {
935
+ for (let i = 0; i < this.length; i += 1) {
936
+ if (this[i].parentNode) this[i].parentNode.removeChild(this[i]);
937
+ }
938
+
939
+ return this;
940
+ }
941
+
942
+ const Methods = {
943
+ addClass,
944
+ removeClass,
945
+ hasClass,
946
+ toggleClass,
947
+ attr,
948
+ removeAttr,
949
+ transform,
950
+ transition: transition$1,
951
+ on,
952
+ off,
953
+ trigger,
954
+ transitionEnd: transitionEnd$1,
955
+ outerWidth,
956
+ outerHeight,
957
+ styles,
958
+ offset,
959
+ css,
960
+ each,
961
+ html,
962
+ text,
963
+ is,
964
+ index,
965
+ eq,
966
+ append,
967
+ prepend,
968
+ next,
969
+ nextAll,
970
+ prev,
971
+ prevAll,
972
+ parent,
973
+ parents,
974
+ closest,
975
+ find,
976
+ children,
977
+ filter,
978
+ remove
979
+ };
980
+ Object.keys(Methods).forEach(methodName => {
981
+ Object.defineProperty($.fn, methodName, {
982
+ value: Methods[methodName],
983
+ writable: true
984
+ });
985
+ });
986
+
987
+ function deleteProps(obj) {
988
+ const object = obj;
989
+ Object.keys(object).forEach(key => {
990
+ try {
991
+ object[key] = null;
992
+ } catch (e) {// no getter for object
993
+ }
994
+
995
+ try {
996
+ delete object[key];
997
+ } catch (e) {// something got wrong
998
+ }
999
+ });
1000
+ }
1001
+
1002
+ function nextTick(callback, delay) {
1003
+ if (delay === void 0) {
1004
+ delay = 0;
1005
+ }
1006
+
1007
+ return setTimeout(callback, delay);
1008
+ }
1009
+
1010
+ function now() {
1011
+ return Date.now();
1012
+ }
1013
+
1014
+ function getComputedStyle$1(el) {
1015
+ const window = getWindow();
1016
+ let style;
1017
+
1018
+ if (window.getComputedStyle) {
1019
+ style = window.getComputedStyle(el, null);
1020
+ }
1021
+
1022
+ if (!style && el.currentStyle) {
1023
+ style = el.currentStyle;
1024
+ }
1025
+
1026
+ if (!style) {
1027
+ style = el.style;
1028
+ }
1029
+
1030
+ return style;
1031
+ }
1032
+
1033
+ function getTranslate(el, axis) {
1034
+ if (axis === void 0) {
1035
+ axis = 'x';
1036
+ }
1037
+
1038
+ const window = getWindow();
1039
+ let matrix;
1040
+ let curTransform;
1041
+ let transformMatrix;
1042
+ const curStyle = getComputedStyle$1(el);
1043
+
1044
+ if (window.WebKitCSSMatrix) {
1045
+ curTransform = curStyle.transform || curStyle.webkitTransform;
1046
+
1047
+ if (curTransform.split(',').length > 6) {
1048
+ curTransform = curTransform.split(', ').map(a => a.replace(',', '.')).join(', ');
1049
+ } // Some old versions of Webkit choke when 'none' is passed; pass
1050
+ // empty string instead in this case
1051
+
1052
+
1053
+ transformMatrix = new window.WebKitCSSMatrix(curTransform === 'none' ? '' : curTransform);
1054
+ } else {
1055
+ transformMatrix = curStyle.MozTransform || curStyle.OTransform || curStyle.MsTransform || curStyle.msTransform || curStyle.transform || curStyle.getPropertyValue('transform').replace('translate(', 'matrix(1, 0, 0, 1,');
1056
+ matrix = transformMatrix.toString().split(',');
1057
+ }
1058
+
1059
+ if (axis === 'x') {
1060
+ // Latest Chrome and webkits Fix
1061
+ if (window.WebKitCSSMatrix) curTransform = transformMatrix.m41; // Crazy IE10 Matrix
1062
+ else if (matrix.length === 16) curTransform = parseFloat(matrix[12]); // Normal Browsers
1063
+ else curTransform = parseFloat(matrix[4]);
1064
+ }
1065
+
1066
+ if (axis === 'y') {
1067
+ // Latest Chrome and webkits Fix
1068
+ if (window.WebKitCSSMatrix) curTransform = transformMatrix.m42; // Crazy IE10 Matrix
1069
+ else if (matrix.length === 16) curTransform = parseFloat(matrix[13]); // Normal Browsers
1070
+ else curTransform = parseFloat(matrix[5]);
1071
+ }
1072
+
1073
+ return curTransform || 0;
1074
+ }
1075
+
1076
+ function isObject(o) {
1077
+ return typeof o === 'object' && o !== null && o.constructor && Object.prototype.toString.call(o).slice(8, -1) === 'Object';
1078
+ }
1079
+
1080
+ function isNode(node) {
1081
+ // eslint-disable-next-line
1082
+ if (typeof window !== 'undefined' && typeof window.HTMLElement !== 'undefined') {
1083
+ return node instanceof HTMLElement;
1084
+ }
1085
+
1086
+ return node && (node.nodeType === 1 || node.nodeType === 11);
1087
+ }
1088
+
1089
+ function extend() {
1090
+ const to = Object(arguments.length <= 0 ? undefined : arguments[0]);
1091
+ const noExtend = ['__proto__', 'constructor', 'prototype'];
1092
+
1093
+ for (let i = 1; i < arguments.length; i += 1) {
1094
+ const nextSource = i < 0 || arguments.length <= i ? undefined : arguments[i];
1095
+
1096
+ if (nextSource !== undefined && nextSource !== null && !isNode(nextSource)) {
1097
+ const keysArray = Object.keys(Object(nextSource)).filter(key => noExtend.indexOf(key) < 0);
1098
+
1099
+ for (let nextIndex = 0, len = keysArray.length; nextIndex < len; nextIndex += 1) {
1100
+ const nextKey = keysArray[nextIndex];
1101
+ const desc = Object.getOwnPropertyDescriptor(nextSource, nextKey);
1102
+
1103
+ if (desc !== undefined && desc.enumerable) {
1104
+ if (isObject(to[nextKey]) && isObject(nextSource[nextKey])) {
1105
+ if (nextSource[nextKey].__swiper__) {
1106
+ to[nextKey] = nextSource[nextKey];
1107
+ } else {
1108
+ extend(to[nextKey], nextSource[nextKey]);
1109
+ }
1110
+ } else if (!isObject(to[nextKey]) && isObject(nextSource[nextKey])) {
1111
+ to[nextKey] = {};
1112
+
1113
+ if (nextSource[nextKey].__swiper__) {
1114
+ to[nextKey] = nextSource[nextKey];
1115
+ } else {
1116
+ extend(to[nextKey], nextSource[nextKey]);
1117
+ }
1118
+ } else {
1119
+ to[nextKey] = nextSource[nextKey];
1120
+ }
1121
+ }
1122
+ }
1123
+ }
1124
+ }
1125
+
1126
+ return to;
1127
+ }
1128
+
1129
+ function setCSSProperty(el, varName, varValue) {
1130
+ el.style.setProperty(varName, varValue);
1131
+ }
1132
+
1133
+ function animateCSSModeScroll(_ref) {
1134
+ let {
1135
+ swiper,
1136
+ targetPosition,
1137
+ side
1138
+ } = _ref;
1139
+ const window = getWindow();
1140
+ const startPosition = -swiper.translate;
1141
+ let startTime = null;
1142
+ let time;
1143
+ const duration = swiper.params.speed;
1144
+ swiper.wrapperEl.style.scrollSnapType = 'none';
1145
+ window.cancelAnimationFrame(swiper.cssModeFrameID);
1146
+ const dir = targetPosition > startPosition ? 'next' : 'prev';
1147
+
1148
+ const isOutOfBound = (current, target) => {
1149
+ return dir === 'next' && current >= target || dir === 'prev' && current <= target;
1150
+ };
1151
+
1152
+ const animate = () => {
1153
+ time = new Date().getTime();
1154
+
1155
+ if (startTime === null) {
1156
+ startTime = time;
1157
+ }
1158
+
1159
+ const progress = Math.max(Math.min((time - startTime) / duration, 1), 0);
1160
+ const easeProgress = 0.5 - Math.cos(progress * Math.PI) / 2;
1161
+ let currentPosition = startPosition + easeProgress * (targetPosition - startPosition);
1162
+
1163
+ if (isOutOfBound(currentPosition, targetPosition)) {
1164
+ currentPosition = targetPosition;
1165
+ }
1166
+
1167
+ swiper.wrapperEl.scrollTo({
1168
+ [side]: currentPosition
1169
+ });
1170
+
1171
+ if (isOutOfBound(currentPosition, targetPosition)) {
1172
+ swiper.wrapperEl.style.overflow = 'hidden';
1173
+ swiper.wrapperEl.style.scrollSnapType = '';
1174
+ setTimeout(() => {
1175
+ swiper.wrapperEl.style.overflow = '';
1176
+ swiper.wrapperEl.scrollTo({
1177
+ [side]: currentPosition
1178
+ });
1179
+ });
1180
+ window.cancelAnimationFrame(swiper.cssModeFrameID);
1181
+ return;
1182
+ }
1183
+
1184
+ swiper.cssModeFrameID = window.requestAnimationFrame(animate);
1185
+ };
1186
+
1187
+ animate();
1188
+ }
1189
+
1190
+ let support;
1191
+
1192
+ function calcSupport() {
1193
+ const window = getWindow();
1194
+ const document = getDocument();
1195
+ return {
1196
+ smoothScroll: document.documentElement && 'scrollBehavior' in document.documentElement.style,
1197
+ touch: !!('ontouchstart' in window || window.DocumentTouch && document instanceof window.DocumentTouch),
1198
+ passiveListener: function checkPassiveListener() {
1199
+ let supportsPassive = false;
1200
+
1201
+ try {
1202
+ const opts = Object.defineProperty({}, 'passive', {
1203
+ // eslint-disable-next-line
1204
+ get() {
1205
+ supportsPassive = true;
1206
+ }
1207
+
1208
+ });
1209
+ window.addEventListener('testPassiveListener', null, opts);
1210
+ } catch (e) {// No support
1211
+ }
1212
+
1213
+ return supportsPassive;
1214
+ }(),
1215
+ gestures: function checkGestures() {
1216
+ return 'ongesturestart' in window;
1217
+ }()
1218
+ };
1219
+ }
1220
+
1221
+ function getSupport() {
1222
+ if (!support) {
1223
+ support = calcSupport();
1224
+ }
1225
+
1226
+ return support;
1227
+ }
1228
+
1229
+ let deviceCached;
1230
+
1231
+ function calcDevice(_temp) {
1232
+ let {
1233
+ userAgent
1234
+ } = _temp === void 0 ? {} : _temp;
1235
+ const support = getSupport();
1236
+ const window = getWindow();
1237
+ const platform = window.navigator.platform;
1238
+ const ua = userAgent || window.navigator.userAgent;
1239
+ const device = {
1240
+ ios: false,
1241
+ android: false
1242
+ };
1243
+ const screenWidth = window.screen.width;
1244
+ const screenHeight = window.screen.height;
1245
+ const android = ua.match(/(Android);?[\s\/]+([\d.]+)?/); // eslint-disable-line
1246
+
1247
+ let ipad = ua.match(/(iPad).*OS\s([\d_]+)/);
1248
+ const ipod = ua.match(/(iPod)(.*OS\s([\d_]+))?/);
1249
+ const iphone = !ipad && ua.match(/(iPhone\sOS|iOS)\s([\d_]+)/);
1250
+ const windows = platform === 'Win32';
1251
+ let macos = platform === 'MacIntel'; // iPadOs 13 fix
1252
+
1253
+ const iPadScreens = ['1024x1366', '1366x1024', '834x1194', '1194x834', '834x1112', '1112x834', '768x1024', '1024x768', '820x1180', '1180x820', '810x1080', '1080x810'];
1254
+
1255
+ if (!ipad && macos && support.touch && iPadScreens.indexOf(`${screenWidth}x${screenHeight}`) >= 0) {
1256
+ ipad = ua.match(/(Version)\/([\d.]+)/);
1257
+ if (!ipad) ipad = [0, 1, '13_0_0'];
1258
+ macos = false;
1259
+ } // Android
1260
+
1261
+
1262
+ if (android && !windows) {
1263
+ device.os = 'android';
1264
+ device.android = true;
1265
+ }
1266
+
1267
+ if (ipad || iphone || ipod) {
1268
+ device.os = 'ios';
1269
+ device.ios = true;
1270
+ } // Export object
1271
+
1272
+
1273
+ return device;
1274
+ }
1275
+
1276
+ function getDevice(overrides) {
1277
+ if (overrides === void 0) {
1278
+ overrides = {};
1279
+ }
1280
+
1281
+ if (!deviceCached) {
1282
+ deviceCached = calcDevice(overrides);
1283
+ }
1284
+
1285
+ return deviceCached;
1286
+ }
1287
+
1288
+ let browser;
1289
+
1290
+ function calcBrowser() {
1291
+ const window = getWindow();
1292
+
1293
+ function isSafari() {
1294
+ const ua = window.navigator.userAgent.toLowerCase();
1295
+ return ua.indexOf('safari') >= 0 && ua.indexOf('chrome') < 0 && ua.indexOf('android') < 0;
1296
+ }
1297
+
1298
+ return {
1299
+ isSafari: isSafari(),
1300
+ isWebView: /(iPhone|iPod|iPad).*AppleWebKit(?!.*Safari)/i.test(window.navigator.userAgent)
1301
+ };
1302
+ }
1303
+
1304
+ function getBrowser() {
1305
+ if (!browser) {
1306
+ browser = calcBrowser();
1307
+ }
1308
+
1309
+ return browser;
1310
+ }
1311
+
1312
+ function Resize(_ref) {
1313
+ let {
1314
+ swiper,
1315
+ on,
1316
+ emit
1317
+ } = _ref;
1318
+ const window = getWindow();
1319
+ let observer = null;
1320
+ let animationFrame = null;
1321
+
1322
+ const resizeHandler = () => {
1323
+ if (!swiper || swiper.destroyed || !swiper.initialized) return;
1324
+ emit('beforeResize');
1325
+ emit('resize');
1326
+ };
1327
+
1328
+ const createObserver = () => {
1329
+ if (!swiper || swiper.destroyed || !swiper.initialized) return;
1330
+ observer = new ResizeObserver(entries => {
1331
+ animationFrame = window.requestAnimationFrame(() => {
1332
+ const {
1333
+ width,
1334
+ height
1335
+ } = swiper;
1336
+ let newWidth = width;
1337
+ let newHeight = height;
1338
+ entries.forEach(_ref2 => {
1339
+ let {
1340
+ contentBoxSize,
1341
+ contentRect,
1342
+ target
1343
+ } = _ref2;
1344
+ if (target && target !== swiper.el) return;
1345
+ newWidth = contentRect ? contentRect.width : (contentBoxSize[0] || contentBoxSize).inlineSize;
1346
+ newHeight = contentRect ? contentRect.height : (contentBoxSize[0] || contentBoxSize).blockSize;
1347
+ });
1348
+
1349
+ if (newWidth !== width || newHeight !== height) {
1350
+ resizeHandler();
1351
+ }
1352
+ });
1353
+ });
1354
+ observer.observe(swiper.el);
1355
+ };
1356
+
1357
+ const removeObserver = () => {
1358
+ if (animationFrame) {
1359
+ window.cancelAnimationFrame(animationFrame);
1360
+ }
1361
+
1362
+ if (observer && observer.unobserve && swiper.el) {
1363
+ observer.unobserve(swiper.el);
1364
+ observer = null;
1365
+ }
1366
+ };
1367
+
1368
+ const orientationChangeHandler = () => {
1369
+ if (!swiper || swiper.destroyed || !swiper.initialized) return;
1370
+ emit('orientationchange');
1371
+ };
1372
+
1373
+ on('init', () => {
1374
+ if (swiper.params.resizeObserver && typeof window.ResizeObserver !== 'undefined') {
1375
+ createObserver();
1376
+ return;
1377
+ }
1378
+
1379
+ window.addEventListener('resize', resizeHandler);
1380
+ window.addEventListener('orientationchange', orientationChangeHandler);
1381
+ });
1382
+ on('destroy', () => {
1383
+ removeObserver();
1384
+ window.removeEventListener('resize', resizeHandler);
1385
+ window.removeEventListener('orientationchange', orientationChangeHandler);
1386
+ });
1387
+ }
1388
+
1389
+ function Observer(_ref) {
1390
+ let {
1391
+ swiper,
1392
+ extendParams,
1393
+ on,
1394
+ emit
1395
+ } = _ref;
1396
+ const observers = [];
1397
+ const window = getWindow();
1398
+
1399
+ const attach = function (target, options) {
1400
+ if (options === void 0) {
1401
+ options = {};
1402
+ }
1403
+
1404
+ const ObserverFunc = window.MutationObserver || window.WebkitMutationObserver;
1405
+ const observer = new ObserverFunc(mutations => {
1406
+ // The observerUpdate event should only be triggered
1407
+ // once despite the number of mutations. Additional
1408
+ // triggers are redundant and are very costly
1409
+ if (mutations.length === 1) {
1410
+ emit('observerUpdate', mutations[0]);
1411
+ return;
1412
+ }
1413
+
1414
+ const observerUpdate = function observerUpdate() {
1415
+ emit('observerUpdate', mutations[0]);
1416
+ };
1417
+
1418
+ if (window.requestAnimationFrame) {
1419
+ window.requestAnimationFrame(observerUpdate);
1420
+ } else {
1421
+ window.setTimeout(observerUpdate, 0);
1422
+ }
1423
+ });
1424
+ observer.observe(target, {
1425
+ attributes: typeof options.attributes === 'undefined' ? true : options.attributes,
1426
+ childList: typeof options.childList === 'undefined' ? true : options.childList,
1427
+ characterData: typeof options.characterData === 'undefined' ? true : options.characterData
1428
+ });
1429
+ observers.push(observer);
1430
+ };
1431
+
1432
+ const init = () => {
1433
+ if (!swiper.params.observer) return;
1434
+
1435
+ if (swiper.params.observeParents) {
1436
+ const containerParents = swiper.$el.parents();
1437
+
1438
+ for (let i = 0; i < containerParents.length; i += 1) {
1439
+ attach(containerParents[i]);
1440
+ }
1441
+ } // Observe container
1442
+
1443
+
1444
+ attach(swiper.$el[0], {
1445
+ childList: swiper.params.observeSlideChildren
1446
+ }); // Observe wrapper
1447
+
1448
+ attach(swiper.$wrapperEl[0], {
1449
+ attributes: false
1450
+ });
1451
+ };
1452
+
1453
+ const destroy = () => {
1454
+ observers.forEach(observer => {
1455
+ observer.disconnect();
1456
+ });
1457
+ observers.splice(0, observers.length);
1458
+ };
1459
+
1460
+ extendParams({
1461
+ observer: false,
1462
+ observeParents: false,
1463
+ observeSlideChildren: false
1464
+ });
1465
+ on('init', init);
1466
+ on('destroy', destroy);
1467
+ }
1468
+
1469
+ /* eslint-disable no-underscore-dangle */
1470
+ const eventsEmitter = {
1471
+ on(events, handler, priority) {
1472
+ const self = this;
1473
+ if (!self.eventsListeners || self.destroyed) return self;
1474
+ if (typeof handler !== 'function') return self;
1475
+ const method = priority ? 'unshift' : 'push';
1476
+ events.split(' ').forEach(event => {
1477
+ if (!self.eventsListeners[event]) self.eventsListeners[event] = [];
1478
+ self.eventsListeners[event][method](handler);
1479
+ });
1480
+ return self;
1481
+ },
1482
+
1483
+ once(events, handler, priority) {
1484
+ const self = this;
1485
+ if (!self.eventsListeners || self.destroyed) return self;
1486
+ if (typeof handler !== 'function') return self;
1487
+
1488
+ function onceHandler() {
1489
+ self.off(events, onceHandler);
1490
+
1491
+ if (onceHandler.__emitterProxy) {
1492
+ delete onceHandler.__emitterProxy;
1493
+ }
1494
+
1495
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
1496
+ args[_key] = arguments[_key];
1497
+ }
1498
+
1499
+ handler.apply(self, args);
1500
+ }
1501
+
1502
+ onceHandler.__emitterProxy = handler;
1503
+ return self.on(events, onceHandler, priority);
1504
+ },
1505
+
1506
+ onAny(handler, priority) {
1507
+ const self = this;
1508
+ if (!self.eventsListeners || self.destroyed) return self;
1509
+ if (typeof handler !== 'function') return self;
1510
+ const method = priority ? 'unshift' : 'push';
1511
+
1512
+ if (self.eventsAnyListeners.indexOf(handler) < 0) {
1513
+ self.eventsAnyListeners[method](handler);
1514
+ }
1515
+
1516
+ return self;
1517
+ },
1518
+
1519
+ offAny(handler) {
1520
+ const self = this;
1521
+ if (!self.eventsListeners || self.destroyed) return self;
1522
+ if (!self.eventsAnyListeners) return self;
1523
+ const index = self.eventsAnyListeners.indexOf(handler);
1524
+
1525
+ if (index >= 0) {
1526
+ self.eventsAnyListeners.splice(index, 1);
1527
+ }
1528
+
1529
+ return self;
1530
+ },
1531
+
1532
+ off(events, handler) {
1533
+ const self = this;
1534
+ if (!self.eventsListeners || self.destroyed) return self;
1535
+ if (!self.eventsListeners) return self;
1536
+ events.split(' ').forEach(event => {
1537
+ if (typeof handler === 'undefined') {
1538
+ self.eventsListeners[event] = [];
1539
+ } else if (self.eventsListeners[event]) {
1540
+ self.eventsListeners[event].forEach((eventHandler, index) => {
1541
+ if (eventHandler === handler || eventHandler.__emitterProxy && eventHandler.__emitterProxy === handler) {
1542
+ self.eventsListeners[event].splice(index, 1);
1543
+ }
1544
+ });
1545
+ }
1546
+ });
1547
+ return self;
1548
+ },
1549
+
1550
+ emit() {
1551
+ const self = this;
1552
+ if (!self.eventsListeners || self.destroyed) return self;
1553
+ if (!self.eventsListeners) return self;
1554
+ let events;
1555
+ let data;
1556
+ let context;
1557
+
1558
+ for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
1559
+ args[_key2] = arguments[_key2];
1560
+ }
1561
+
1562
+ if (typeof args[0] === 'string' || Array.isArray(args[0])) {
1563
+ events = args[0];
1564
+ data = args.slice(1, args.length);
1565
+ context = self;
1566
+ } else {
1567
+ events = args[0].events;
1568
+ data = args[0].data;
1569
+ context = args[0].context || self;
1570
+ }
1571
+
1572
+ data.unshift(context);
1573
+ const eventsArray = Array.isArray(events) ? events : events.split(' ');
1574
+ eventsArray.forEach(event => {
1575
+ if (self.eventsAnyListeners && self.eventsAnyListeners.length) {
1576
+ self.eventsAnyListeners.forEach(eventHandler => {
1577
+ eventHandler.apply(context, [event, ...data]);
1578
+ });
1579
+ }
1580
+
1581
+ if (self.eventsListeners && self.eventsListeners[event]) {
1582
+ self.eventsListeners[event].forEach(eventHandler => {
1583
+ eventHandler.apply(context, data);
1584
+ });
1585
+ }
1586
+ });
1587
+ return self;
1588
+ }
1589
+
1590
+ };
1591
+
1592
+ function updateSize() {
1593
+ const swiper = this;
1594
+ let width;
1595
+ let height;
1596
+ const $el = swiper.$el;
1597
+
1598
+ if (typeof swiper.params.width !== 'undefined' && swiper.params.width !== null) {
1599
+ width = swiper.params.width;
1600
+ } else {
1601
+ width = $el[0].clientWidth;
1602
+ }
1603
+
1604
+ if (typeof swiper.params.height !== 'undefined' && swiper.params.height !== null) {
1605
+ height = swiper.params.height;
1606
+ } else {
1607
+ height = $el[0].clientHeight;
1608
+ }
1609
+
1610
+ if (width === 0 && swiper.isHorizontal() || height === 0 && swiper.isVertical()) {
1611
+ return;
1612
+ } // Subtract paddings
1613
+
1614
+
1615
+ width = width - parseInt($el.css('padding-left') || 0, 10) - parseInt($el.css('padding-right') || 0, 10);
1616
+ height = height - parseInt($el.css('padding-top') || 0, 10) - parseInt($el.css('padding-bottom') || 0, 10);
1617
+ if (Number.isNaN(width)) width = 0;
1618
+ if (Number.isNaN(height)) height = 0;
1619
+ Object.assign(swiper, {
1620
+ width,
1621
+ height,
1622
+ size: swiper.isHorizontal() ? width : height
1623
+ });
1624
+ }
1625
+
1626
+ function updateSlides() {
1627
+ const swiper = this;
1628
+
1629
+ function getDirectionLabel(property) {
1630
+ if (swiper.isHorizontal()) {
1631
+ return property;
1632
+ } // prettier-ignore
1633
+
1634
+
1635
+ return {
1636
+ 'width': 'height',
1637
+ 'margin-top': 'margin-left',
1638
+ 'margin-bottom ': 'margin-right',
1639
+ 'margin-left': 'margin-top',
1640
+ 'margin-right': 'margin-bottom',
1641
+ 'padding-left': 'padding-top',
1642
+ 'padding-right': 'padding-bottom',
1643
+ 'marginRight': 'marginBottom'
1644
+ }[property];
1645
+ }
1646
+
1647
+ function getDirectionPropertyValue(node, label) {
1648
+ return parseFloat(node.getPropertyValue(getDirectionLabel(label)) || 0);
1649
+ }
1650
+
1651
+ const params = swiper.params;
1652
+ const {
1653
+ $wrapperEl,
1654
+ size: swiperSize,
1655
+ rtlTranslate: rtl,
1656
+ wrongRTL
1657
+ } = swiper;
1658
+ const isVirtual = swiper.virtual && params.virtual.enabled;
1659
+ const previousSlidesLength = isVirtual ? swiper.virtual.slides.length : swiper.slides.length;
1660
+ const slides = $wrapperEl.children(`.${swiper.params.slideClass}`);
1661
+ const slidesLength = isVirtual ? swiper.virtual.slides.length : slides.length;
1662
+ let snapGrid = [];
1663
+ const slidesGrid = [];
1664
+ const slidesSizesGrid = [];
1665
+ let offsetBefore = params.slidesOffsetBefore;
1666
+
1667
+ if (typeof offsetBefore === 'function') {
1668
+ offsetBefore = params.slidesOffsetBefore.call(swiper);
1669
+ }
1670
+
1671
+ let offsetAfter = params.slidesOffsetAfter;
1672
+
1673
+ if (typeof offsetAfter === 'function') {
1674
+ offsetAfter = params.slidesOffsetAfter.call(swiper);
1675
+ }
1676
+
1677
+ const previousSnapGridLength = swiper.snapGrid.length;
1678
+ const previousSlidesGridLength = swiper.slidesGrid.length;
1679
+ let spaceBetween = params.spaceBetween;
1680
+ let slidePosition = -offsetBefore;
1681
+ let prevSlideSize = 0;
1682
+ let index = 0;
1683
+
1684
+ if (typeof swiperSize === 'undefined') {
1685
+ return;
1686
+ }
1687
+
1688
+ if (typeof spaceBetween === 'string' && spaceBetween.indexOf('%') >= 0) {
1689
+ spaceBetween = parseFloat(spaceBetween.replace('%', '')) / 100 * swiperSize;
1690
+ }
1691
+
1692
+ swiper.virtualSize = -spaceBetween; // reset margins
1693
+
1694
+ if (rtl) slides.css({
1695
+ marginLeft: '',
1696
+ marginBottom: '',
1697
+ marginTop: ''
1698
+ });else slides.css({
1699
+ marginRight: '',
1700
+ marginBottom: '',
1701
+ marginTop: ''
1702
+ }); // reset cssMode offsets
1703
+
1704
+ if (params.centeredSlides && params.cssMode) {
1705
+ setCSSProperty(swiper.wrapperEl, '--swiper-centered-offset-before', '');
1706
+ setCSSProperty(swiper.wrapperEl, '--swiper-centered-offset-after', '');
1707
+ }
1708
+
1709
+ const gridEnabled = params.grid && params.grid.rows > 1 && swiper.grid;
1710
+
1711
+ if (gridEnabled) {
1712
+ swiper.grid.initSlides(slidesLength);
1713
+ } // Calc slides
1714
+
1715
+
1716
+ let slideSize;
1717
+ const shouldResetSlideSize = params.slidesPerView === 'auto' && params.breakpoints && Object.keys(params.breakpoints).filter(key => {
1718
+ return typeof params.breakpoints[key].slidesPerView !== 'undefined';
1719
+ }).length > 0;
1720
+
1721
+ for (let i = 0; i < slidesLength; i += 1) {
1722
+ slideSize = 0;
1723
+ const slide = slides.eq(i);
1724
+
1725
+ if (gridEnabled) {
1726
+ swiper.grid.updateSlide(i, slide, slidesLength, getDirectionLabel);
1727
+ }
1728
+
1729
+ if (slide.css('display') === 'none') continue; // eslint-disable-line
1730
+
1731
+ if (params.slidesPerView === 'auto') {
1732
+ if (shouldResetSlideSize) {
1733
+ slides[i].style[getDirectionLabel('width')] = ``;
1734
+ }
1735
+
1736
+ const slideStyles = getComputedStyle(slide[0]);
1737
+ const currentTransform = slide[0].style.transform;
1738
+ const currentWebKitTransform = slide[0].style.webkitTransform;
1739
+
1740
+ if (currentTransform) {
1741
+ slide[0].style.transform = 'none';
1742
+ }
1743
+
1744
+ if (currentWebKitTransform) {
1745
+ slide[0].style.webkitTransform = 'none';
1746
+ }
1747
+
1748
+ if (params.roundLengths) {
1749
+ slideSize = swiper.isHorizontal() ? slide.outerWidth(true) : slide.outerHeight(true);
1750
+ } else {
1751
+ // eslint-disable-next-line
1752
+ const width = getDirectionPropertyValue(slideStyles, 'width');
1753
+ const paddingLeft = getDirectionPropertyValue(slideStyles, 'padding-left');
1754
+ const paddingRight = getDirectionPropertyValue(slideStyles, 'padding-right');
1755
+ const marginLeft = getDirectionPropertyValue(slideStyles, 'margin-left');
1756
+ const marginRight = getDirectionPropertyValue(slideStyles, 'margin-right');
1757
+ const boxSizing = slideStyles.getPropertyValue('box-sizing');
1758
+
1759
+ if (boxSizing && boxSizing === 'border-box') {
1760
+ slideSize = width + marginLeft + marginRight;
1761
+ } else {
1762
+ const {
1763
+ clientWidth,
1764
+ offsetWidth
1765
+ } = slide[0];
1766
+ slideSize = width + paddingLeft + paddingRight + marginLeft + marginRight + (offsetWidth - clientWidth);
1767
+ }
1768
+ }
1769
+
1770
+ if (currentTransform) {
1771
+ slide[0].style.transform = currentTransform;
1772
+ }
1773
+
1774
+ if (currentWebKitTransform) {
1775
+ slide[0].style.webkitTransform = currentWebKitTransform;
1776
+ }
1777
+
1778
+ if (params.roundLengths) slideSize = Math.floor(slideSize);
1779
+ } else {
1780
+ slideSize = (swiperSize - (params.slidesPerView - 1) * spaceBetween) / params.slidesPerView;
1781
+ if (params.roundLengths) slideSize = Math.floor(slideSize);
1782
+
1783
+ if (slides[i]) {
1784
+ slides[i].style[getDirectionLabel('width')] = `${slideSize}px`;
1785
+ }
1786
+ }
1787
+
1788
+ if (slides[i]) {
1789
+ slides[i].swiperSlideSize = slideSize;
1790
+ }
1791
+
1792
+ slidesSizesGrid.push(slideSize);
1793
+
1794
+ if (params.centeredSlides) {
1795
+ slidePosition = slidePosition + slideSize / 2 + prevSlideSize / 2 + spaceBetween;
1796
+ if (prevSlideSize === 0 && i !== 0) slidePosition = slidePosition - swiperSize / 2 - spaceBetween;
1797
+ if (i === 0) slidePosition = slidePosition - swiperSize / 2 - spaceBetween;
1798
+ if (Math.abs(slidePosition) < 1 / 1000) slidePosition = 0;
1799
+ if (params.roundLengths) slidePosition = Math.floor(slidePosition);
1800
+ if (index % params.slidesPerGroup === 0) snapGrid.push(slidePosition);
1801
+ slidesGrid.push(slidePosition);
1802
+ } else {
1803
+ if (params.roundLengths) slidePosition = Math.floor(slidePosition);
1804
+ if ((index - Math.min(swiper.params.slidesPerGroupSkip, index)) % swiper.params.slidesPerGroup === 0) snapGrid.push(slidePosition);
1805
+ slidesGrid.push(slidePosition);
1806
+ slidePosition = slidePosition + slideSize + spaceBetween;
1807
+ }
1808
+
1809
+ swiper.virtualSize += slideSize + spaceBetween;
1810
+ prevSlideSize = slideSize;
1811
+ index += 1;
1812
+ }
1813
+
1814
+ swiper.virtualSize = Math.max(swiper.virtualSize, swiperSize) + offsetAfter;
1815
+
1816
+ if (rtl && wrongRTL && (params.effect === 'slide' || params.effect === 'coverflow')) {
1817
+ $wrapperEl.css({
1818
+ width: `${swiper.virtualSize + params.spaceBetween}px`
1819
+ });
1820
+ }
1821
+
1822
+ if (params.setWrapperSize) {
1823
+ $wrapperEl.css({
1824
+ [getDirectionLabel('width')]: `${swiper.virtualSize + params.spaceBetween}px`
1825
+ });
1826
+ }
1827
+
1828
+ if (gridEnabled) {
1829
+ swiper.grid.updateWrapperSize(slideSize, snapGrid, getDirectionLabel);
1830
+ } // Remove last grid elements depending on width
1831
+
1832
+
1833
+ if (!params.centeredSlides) {
1834
+ const newSlidesGrid = [];
1835
+
1836
+ for (let i = 0; i < snapGrid.length; i += 1) {
1837
+ let slidesGridItem = snapGrid[i];
1838
+ if (params.roundLengths) slidesGridItem = Math.floor(slidesGridItem);
1839
+
1840
+ if (snapGrid[i] <= swiper.virtualSize - swiperSize) {
1841
+ newSlidesGrid.push(slidesGridItem);
1842
+ }
1843
+ }
1844
+
1845
+ snapGrid = newSlidesGrid;
1846
+
1847
+ if (Math.floor(swiper.virtualSize - swiperSize) - Math.floor(snapGrid[snapGrid.length - 1]) > 1) {
1848
+ snapGrid.push(swiper.virtualSize - swiperSize);
1849
+ }
1850
+ }
1851
+
1852
+ if (snapGrid.length === 0) snapGrid = [0];
1853
+
1854
+ if (params.spaceBetween !== 0) {
1855
+ const key = swiper.isHorizontal() && rtl ? 'marginLeft' : getDirectionLabel('marginRight');
1856
+ slides.filter((_, slideIndex) => {
1857
+ if (!params.cssMode) return true;
1858
+
1859
+ if (slideIndex === slides.length - 1) {
1860
+ return false;
1861
+ }
1862
+
1863
+ return true;
1864
+ }).css({
1865
+ [key]: `${spaceBetween}px`
1866
+ });
1867
+ }
1868
+
1869
+ if (params.centeredSlides && params.centeredSlidesBounds) {
1870
+ let allSlidesSize = 0;
1871
+ slidesSizesGrid.forEach(slideSizeValue => {
1872
+ allSlidesSize += slideSizeValue + (params.spaceBetween ? params.spaceBetween : 0);
1873
+ });
1874
+ allSlidesSize -= params.spaceBetween;
1875
+ const maxSnap = allSlidesSize - swiperSize;
1876
+ snapGrid = snapGrid.map(snap => {
1877
+ if (snap < 0) return -offsetBefore;
1878
+ if (snap > maxSnap) return maxSnap + offsetAfter;
1879
+ return snap;
1880
+ });
1881
+ }
1882
+
1883
+ if (params.centerInsufficientSlides) {
1884
+ let allSlidesSize = 0;
1885
+ slidesSizesGrid.forEach(slideSizeValue => {
1886
+ allSlidesSize += slideSizeValue + (params.spaceBetween ? params.spaceBetween : 0);
1887
+ });
1888
+ allSlidesSize -= params.spaceBetween;
1889
+
1890
+ if (allSlidesSize < swiperSize) {
1891
+ const allSlidesOffset = (swiperSize - allSlidesSize) / 2;
1892
+ snapGrid.forEach((snap, snapIndex) => {
1893
+ snapGrid[snapIndex] = snap - allSlidesOffset;
1894
+ });
1895
+ slidesGrid.forEach((snap, snapIndex) => {
1896
+ slidesGrid[snapIndex] = snap + allSlidesOffset;
1897
+ });
1898
+ }
1899
+ }
1900
+
1901
+ Object.assign(swiper, {
1902
+ slides,
1903
+ snapGrid,
1904
+ slidesGrid,
1905
+ slidesSizesGrid
1906
+ });
1907
+
1908
+ if (params.centeredSlides && params.cssMode && !params.centeredSlidesBounds) {
1909
+ setCSSProperty(swiper.wrapperEl, '--swiper-centered-offset-before', `${-snapGrid[0]}px`);
1910
+ setCSSProperty(swiper.wrapperEl, '--swiper-centered-offset-after', `${swiper.size / 2 - slidesSizesGrid[slidesSizesGrid.length - 1] / 2}px`);
1911
+ const addToSnapGrid = -swiper.snapGrid[0];
1912
+ const addToSlidesGrid = -swiper.slidesGrid[0];
1913
+ swiper.snapGrid = swiper.snapGrid.map(v => v + addToSnapGrid);
1914
+ swiper.slidesGrid = swiper.slidesGrid.map(v => v + addToSlidesGrid);
1915
+ }
1916
+
1917
+ if (slidesLength !== previousSlidesLength) {
1918
+ swiper.emit('slidesLengthChange');
1919
+ }
1920
+
1921
+ if (snapGrid.length !== previousSnapGridLength) {
1922
+ if (swiper.params.watchOverflow) swiper.checkOverflow();
1923
+ swiper.emit('snapGridLengthChange');
1924
+ }
1925
+
1926
+ if (slidesGrid.length !== previousSlidesGridLength) {
1927
+ swiper.emit('slidesGridLengthChange');
1928
+ }
1929
+
1930
+ if (params.watchSlidesProgress) {
1931
+ swiper.updateSlidesOffset();
1932
+ }
1933
+
1934
+ if (!isVirtual && !params.cssMode && (params.effect === 'slide' || params.effect === 'fade')) {
1935
+ const backFaceHiddenClass = `${params.containerModifierClass}backface-hidden`;
1936
+ const hasClassBackfaceClassAdded = swiper.$el.hasClass(backFaceHiddenClass);
1937
+
1938
+ if (slidesLength <= params.maxBackfaceHiddenSlides) {
1939
+ if (!hasClassBackfaceClassAdded) swiper.$el.addClass(backFaceHiddenClass);
1940
+ } else if (hasClassBackfaceClassAdded) {
1941
+ swiper.$el.removeClass(backFaceHiddenClass);
1942
+ }
1943
+ }
1944
+ }
1945
+
1946
+ function updateAutoHeight(speed) {
1947
+ const swiper = this;
1948
+ const activeSlides = [];
1949
+ const isVirtual = swiper.virtual && swiper.params.virtual.enabled;
1950
+ let newHeight = 0;
1951
+ let i;
1952
+
1953
+ if (typeof speed === 'number') {
1954
+ swiper.setTransition(speed);
1955
+ } else if (speed === true) {
1956
+ swiper.setTransition(swiper.params.speed);
1957
+ }
1958
+
1959
+ const getSlideByIndex = index => {
1960
+ if (isVirtual) {
1961
+ return swiper.slides.filter(el => parseInt(el.getAttribute('data-swiper-slide-index'), 10) === index)[0];
1962
+ }
1963
+
1964
+ return swiper.slides.eq(index)[0];
1965
+ }; // Find slides currently in view
1966
+
1967
+
1968
+ if (swiper.params.slidesPerView !== 'auto' && swiper.params.slidesPerView > 1) {
1969
+ if (swiper.params.centeredSlides) {
1970
+ (swiper.visibleSlides || $([])).each(slide => {
1971
+ activeSlides.push(slide);
1972
+ });
1973
+ } else {
1974
+ for (i = 0; i < Math.ceil(swiper.params.slidesPerView); i += 1) {
1975
+ const index = swiper.activeIndex + i;
1976
+ if (index > swiper.slides.length && !isVirtual) break;
1977
+ activeSlides.push(getSlideByIndex(index));
1978
+ }
1979
+ }
1980
+ } else {
1981
+ activeSlides.push(getSlideByIndex(swiper.activeIndex));
1982
+ } // Find new height from highest slide in view
1983
+
1984
+
1985
+ for (i = 0; i < activeSlides.length; i += 1) {
1986
+ if (typeof activeSlides[i] !== 'undefined') {
1987
+ const height = activeSlides[i].offsetHeight;
1988
+ newHeight = height > newHeight ? height : newHeight;
1989
+ }
1990
+ } // Update Height
1991
+
1992
+
1993
+ if (newHeight || newHeight === 0) swiper.$wrapperEl.css('height', `${newHeight}px`);
1994
+ }
1995
+
1996
+ function updateSlidesOffset() {
1997
+ const swiper = this;
1998
+ const slides = swiper.slides;
1999
+
2000
+ for (let i = 0; i < slides.length; i += 1) {
2001
+ slides[i].swiperSlideOffset = swiper.isHorizontal() ? slides[i].offsetLeft : slides[i].offsetTop;
2002
+ }
2003
+ }
2004
+
2005
+ function updateSlidesProgress(translate) {
2006
+ if (translate === void 0) {
2007
+ translate = this && this.translate || 0;
2008
+ }
2009
+
2010
+ const swiper = this;
2011
+ const params = swiper.params;
2012
+ const {
2013
+ slides,
2014
+ rtlTranslate: rtl,
2015
+ snapGrid
2016
+ } = swiper;
2017
+ if (slides.length === 0) return;
2018
+ if (typeof slides[0].swiperSlideOffset === 'undefined') swiper.updateSlidesOffset();
2019
+ let offsetCenter = -translate;
2020
+ if (rtl) offsetCenter = translate; // Visible Slides
2021
+
2022
+ slides.removeClass(params.slideVisibleClass);
2023
+ swiper.visibleSlidesIndexes = [];
2024
+ swiper.visibleSlides = [];
2025
+
2026
+ for (let i = 0; i < slides.length; i += 1) {
2027
+ const slide = slides[i];
2028
+ let slideOffset = slide.swiperSlideOffset;
2029
+
2030
+ if (params.cssMode && params.centeredSlides) {
2031
+ slideOffset -= slides[0].swiperSlideOffset;
2032
+ }
2033
+
2034
+ const slideProgress = (offsetCenter + (params.centeredSlides ? swiper.minTranslate() : 0) - slideOffset) / (slide.swiperSlideSize + params.spaceBetween);
2035
+ const originalSlideProgress = (offsetCenter - snapGrid[0] + (params.centeredSlides ? swiper.minTranslate() : 0) - slideOffset) / (slide.swiperSlideSize + params.spaceBetween);
2036
+ const slideBefore = -(offsetCenter - slideOffset);
2037
+ const slideAfter = slideBefore + swiper.slidesSizesGrid[i];
2038
+ const isVisible = slideBefore >= 0 && slideBefore < swiper.size - 1 || slideAfter > 1 && slideAfter <= swiper.size || slideBefore <= 0 && slideAfter >= swiper.size;
2039
+
2040
+ if (isVisible) {
2041
+ swiper.visibleSlides.push(slide);
2042
+ swiper.visibleSlidesIndexes.push(i);
2043
+ slides.eq(i).addClass(params.slideVisibleClass);
2044
+ }
2045
+
2046
+ slide.progress = rtl ? -slideProgress : slideProgress;
2047
+ slide.originalProgress = rtl ? -originalSlideProgress : originalSlideProgress;
2048
+ }
2049
+
2050
+ swiper.visibleSlides = $(swiper.visibleSlides);
2051
+ }
2052
+
2053
+ function updateProgress(translate) {
2054
+ const swiper = this;
2055
+
2056
+ if (typeof translate === 'undefined') {
2057
+ const multiplier = swiper.rtlTranslate ? -1 : 1; // eslint-disable-next-line
2058
+
2059
+ translate = swiper && swiper.translate && swiper.translate * multiplier || 0;
2060
+ }
2061
+
2062
+ const params = swiper.params;
2063
+ const translatesDiff = swiper.maxTranslate() - swiper.minTranslate();
2064
+ let {
2065
+ progress,
2066
+ isBeginning,
2067
+ isEnd
2068
+ } = swiper;
2069
+ const wasBeginning = isBeginning;
2070
+ const wasEnd = isEnd;
2071
+
2072
+ if (translatesDiff === 0) {
2073
+ progress = 0;
2074
+ isBeginning = true;
2075
+ isEnd = true;
2076
+ } else {
2077
+ progress = (translate - swiper.minTranslate()) / translatesDiff;
2078
+ isBeginning = progress <= 0;
2079
+ isEnd = progress >= 1;
2080
+ }
2081
+
2082
+ Object.assign(swiper, {
2083
+ progress,
2084
+ isBeginning,
2085
+ isEnd
2086
+ });
2087
+ if (params.watchSlidesProgress || params.centeredSlides && params.autoHeight) swiper.updateSlidesProgress(translate);
2088
+
2089
+ if (isBeginning && !wasBeginning) {
2090
+ swiper.emit('reachBeginning toEdge');
2091
+ }
2092
+
2093
+ if (isEnd && !wasEnd) {
2094
+ swiper.emit('reachEnd toEdge');
2095
+ }
2096
+
2097
+ if (wasBeginning && !isBeginning || wasEnd && !isEnd) {
2098
+ swiper.emit('fromEdge');
2099
+ }
2100
+
2101
+ swiper.emit('progress', progress);
2102
+ }
2103
+
2104
+ function updateSlidesClasses() {
2105
+ const swiper = this;
2106
+ const {
2107
+ slides,
2108
+ params,
2109
+ $wrapperEl,
2110
+ activeIndex,
2111
+ realIndex
2112
+ } = swiper;
2113
+ const isVirtual = swiper.virtual && params.virtual.enabled;
2114
+ slides.removeClass(`${params.slideActiveClass} ${params.slideNextClass} ${params.slidePrevClass} ${params.slideDuplicateActiveClass} ${params.slideDuplicateNextClass} ${params.slideDuplicatePrevClass}`);
2115
+ let activeSlide;
2116
+
2117
+ if (isVirtual) {
2118
+ activeSlide = swiper.$wrapperEl.find(`.${params.slideClass}[data-swiper-slide-index="${activeIndex}"]`);
2119
+ } else {
2120
+ activeSlide = slides.eq(activeIndex);
2121
+ } // Active classes
2122
+
2123
+
2124
+ activeSlide.addClass(params.slideActiveClass);
2125
+
2126
+ if (params.loop) {
2127
+ // Duplicate to all looped slides
2128
+ if (activeSlide.hasClass(params.slideDuplicateClass)) {
2129
+ $wrapperEl.children(`.${params.slideClass}:not(.${params.slideDuplicateClass})[data-swiper-slide-index="${realIndex}"]`).addClass(params.slideDuplicateActiveClass);
2130
+ } else {
2131
+ $wrapperEl.children(`.${params.slideClass}.${params.slideDuplicateClass}[data-swiper-slide-index="${realIndex}"]`).addClass(params.slideDuplicateActiveClass);
2132
+ }
2133
+ } // Next Slide
2134
+
2135
+
2136
+ let nextSlide = activeSlide.nextAll(`.${params.slideClass}`).eq(0).addClass(params.slideNextClass);
2137
+
2138
+ if (params.loop && nextSlide.length === 0) {
2139
+ nextSlide = slides.eq(0);
2140
+ nextSlide.addClass(params.slideNextClass);
2141
+ } // Prev Slide
2142
+
2143
+
2144
+ let prevSlide = activeSlide.prevAll(`.${params.slideClass}`).eq(0).addClass(params.slidePrevClass);
2145
+
2146
+ if (params.loop && prevSlide.length === 0) {
2147
+ prevSlide = slides.eq(-1);
2148
+ prevSlide.addClass(params.slidePrevClass);
2149
+ }
2150
+
2151
+ if (params.loop) {
2152
+ // Duplicate to all looped slides
2153
+ if (nextSlide.hasClass(params.slideDuplicateClass)) {
2154
+ $wrapperEl.children(`.${params.slideClass}:not(.${params.slideDuplicateClass})[data-swiper-slide-index="${nextSlide.attr('data-swiper-slide-index')}"]`).addClass(params.slideDuplicateNextClass);
2155
+ } else {
2156
+ $wrapperEl.children(`.${params.slideClass}.${params.slideDuplicateClass}[data-swiper-slide-index="${nextSlide.attr('data-swiper-slide-index')}"]`).addClass(params.slideDuplicateNextClass);
2157
+ }
2158
+
2159
+ if (prevSlide.hasClass(params.slideDuplicateClass)) {
2160
+ $wrapperEl.children(`.${params.slideClass}:not(.${params.slideDuplicateClass})[data-swiper-slide-index="${prevSlide.attr('data-swiper-slide-index')}"]`).addClass(params.slideDuplicatePrevClass);
2161
+ } else {
2162
+ $wrapperEl.children(`.${params.slideClass}.${params.slideDuplicateClass}[data-swiper-slide-index="${prevSlide.attr('data-swiper-slide-index')}"]`).addClass(params.slideDuplicatePrevClass);
2163
+ }
2164
+ }
2165
+
2166
+ swiper.emitSlidesClasses();
2167
+ }
2168
+
2169
+ function updateActiveIndex(newActiveIndex) {
2170
+ const swiper = this;
2171
+ const translate = swiper.rtlTranslate ? swiper.translate : -swiper.translate;
2172
+ const {
2173
+ slidesGrid,
2174
+ snapGrid,
2175
+ params,
2176
+ activeIndex: previousIndex,
2177
+ realIndex: previousRealIndex,
2178
+ snapIndex: previousSnapIndex
2179
+ } = swiper;
2180
+ let activeIndex = newActiveIndex;
2181
+ let snapIndex;
2182
+
2183
+ if (typeof activeIndex === 'undefined') {
2184
+ for (let i = 0; i < slidesGrid.length; i += 1) {
2185
+ if (typeof slidesGrid[i + 1] !== 'undefined') {
2186
+ if (translate >= slidesGrid[i] && translate < slidesGrid[i + 1] - (slidesGrid[i + 1] - slidesGrid[i]) / 2) {
2187
+ activeIndex = i;
2188
+ } else if (translate >= slidesGrid[i] && translate < slidesGrid[i + 1]) {
2189
+ activeIndex = i + 1;
2190
+ }
2191
+ } else if (translate >= slidesGrid[i]) {
2192
+ activeIndex = i;
2193
+ }
2194
+ } // Normalize slideIndex
2195
+
2196
+
2197
+ if (params.normalizeSlideIndex) {
2198
+ if (activeIndex < 0 || typeof activeIndex === 'undefined') activeIndex = 0;
2199
+ }
2200
+ }
2201
+
2202
+ if (snapGrid.indexOf(translate) >= 0) {
2203
+ snapIndex = snapGrid.indexOf(translate);
2204
+ } else {
2205
+ const skip = Math.min(params.slidesPerGroupSkip, activeIndex);
2206
+ snapIndex = skip + Math.floor((activeIndex - skip) / params.slidesPerGroup);
2207
+ }
2208
+
2209
+ if (snapIndex >= snapGrid.length) snapIndex = snapGrid.length - 1;
2210
+
2211
+ if (activeIndex === previousIndex) {
2212
+ if (snapIndex !== previousSnapIndex) {
2213
+ swiper.snapIndex = snapIndex;
2214
+ swiper.emit('snapIndexChange');
2215
+ }
2216
+
2217
+ return;
2218
+ } // Get real index
2219
+
2220
+
2221
+ const realIndex = parseInt(swiper.slides.eq(activeIndex).attr('data-swiper-slide-index') || activeIndex, 10);
2222
+ Object.assign(swiper, {
2223
+ snapIndex,
2224
+ realIndex,
2225
+ previousIndex,
2226
+ activeIndex
2227
+ });
2228
+ swiper.emit('activeIndexChange');
2229
+ swiper.emit('snapIndexChange');
2230
+
2231
+ if (previousRealIndex !== realIndex) {
2232
+ swiper.emit('realIndexChange');
2233
+ }
2234
+
2235
+ if (swiper.initialized || swiper.params.runCallbacksOnInit) {
2236
+ swiper.emit('slideChange');
2237
+ }
2238
+ }
2239
+
2240
+ function updateClickedSlide(e) {
2241
+ const swiper = this;
2242
+ const params = swiper.params;
2243
+ const slide = $(e).closest(`.${params.slideClass}`)[0];
2244
+ let slideFound = false;
2245
+ let slideIndex;
2246
+
2247
+ if (slide) {
2248
+ for (let i = 0; i < swiper.slides.length; i += 1) {
2249
+ if (swiper.slides[i] === slide) {
2250
+ slideFound = true;
2251
+ slideIndex = i;
2252
+ break;
2253
+ }
2254
+ }
2255
+ }
2256
+
2257
+ if (slide && slideFound) {
2258
+ swiper.clickedSlide = slide;
2259
+
2260
+ if (swiper.virtual && swiper.params.virtual.enabled) {
2261
+ swiper.clickedIndex = parseInt($(slide).attr('data-swiper-slide-index'), 10);
2262
+ } else {
2263
+ swiper.clickedIndex = slideIndex;
2264
+ }
2265
+ } else {
2266
+ swiper.clickedSlide = undefined;
2267
+ swiper.clickedIndex = undefined;
2268
+ return;
2269
+ }
2270
+
2271
+ if (params.slideToClickedSlide && swiper.clickedIndex !== undefined && swiper.clickedIndex !== swiper.activeIndex) {
2272
+ swiper.slideToClickedSlide();
2273
+ }
2274
+ }
2275
+
2276
+ const update = {
2277
+ updateSize,
2278
+ updateSlides,
2279
+ updateAutoHeight,
2280
+ updateSlidesOffset,
2281
+ updateSlidesProgress,
2282
+ updateProgress,
2283
+ updateSlidesClasses,
2284
+ updateActiveIndex,
2285
+ updateClickedSlide
2286
+ };
2287
+
2288
+ function getSwiperTranslate(axis) {
2289
+ if (axis === void 0) {
2290
+ axis = this.isHorizontal() ? 'x' : 'y';
2291
+ }
2292
+
2293
+ const swiper = this;
2294
+ const {
2295
+ params,
2296
+ rtlTranslate: rtl,
2297
+ translate,
2298
+ $wrapperEl
2299
+ } = swiper;
2300
+
2301
+ if (params.virtualTranslate) {
2302
+ return rtl ? -translate : translate;
2303
+ }
2304
+
2305
+ if (params.cssMode) {
2306
+ return translate;
2307
+ }
2308
+
2309
+ let currentTranslate = getTranslate($wrapperEl[0], axis);
2310
+ if (rtl) currentTranslate = -currentTranslate;
2311
+ return currentTranslate || 0;
2312
+ }
2313
+
2314
+ function setTranslate(translate, byController) {
2315
+ const swiper = this;
2316
+ const {
2317
+ rtlTranslate: rtl,
2318
+ params,
2319
+ $wrapperEl,
2320
+ wrapperEl,
2321
+ progress
2322
+ } = swiper;
2323
+ let x = 0;
2324
+ let y = 0;
2325
+ const z = 0;
2326
+
2327
+ if (swiper.isHorizontal()) {
2328
+ x = rtl ? -translate : translate;
2329
+ } else {
2330
+ y = translate;
2331
+ }
2332
+
2333
+ if (params.roundLengths) {
2334
+ x = Math.floor(x);
2335
+ y = Math.floor(y);
2336
+ }
2337
+
2338
+ if (params.cssMode) {
2339
+ wrapperEl[swiper.isHorizontal() ? 'scrollLeft' : 'scrollTop'] = swiper.isHorizontal() ? -x : -y;
2340
+ } else if (!params.virtualTranslate) {
2341
+ $wrapperEl.transform(`translate3d(${x}px, ${y}px, ${z}px)`);
2342
+ }
2343
+
2344
+ swiper.previousTranslate = swiper.translate;
2345
+ swiper.translate = swiper.isHorizontal() ? x : y; // Check if we need to update progress
2346
+
2347
+ let newProgress;
2348
+ const translatesDiff = swiper.maxTranslate() - swiper.minTranslate();
2349
+
2350
+ if (translatesDiff === 0) {
2351
+ newProgress = 0;
2352
+ } else {
2353
+ newProgress = (translate - swiper.minTranslate()) / translatesDiff;
2354
+ }
2355
+
2356
+ if (newProgress !== progress) {
2357
+ swiper.updateProgress(translate);
2358
+ }
2359
+
2360
+ swiper.emit('setTranslate', swiper.translate, byController);
2361
+ }
2362
+
2363
+ function minTranslate() {
2364
+ return -this.snapGrid[0];
2365
+ }
2366
+
2367
+ function maxTranslate() {
2368
+ return -this.snapGrid[this.snapGrid.length - 1];
2369
+ }
2370
+
2371
+ function translateTo(translate, speed, runCallbacks, translateBounds, internal) {
2372
+ if (translate === void 0) {
2373
+ translate = 0;
2374
+ }
2375
+
2376
+ if (speed === void 0) {
2377
+ speed = this.params.speed;
2378
+ }
2379
+
2380
+ if (runCallbacks === void 0) {
2381
+ runCallbacks = true;
2382
+ }
2383
+
2384
+ if (translateBounds === void 0) {
2385
+ translateBounds = true;
2386
+ }
2387
+
2388
+ const swiper = this;
2389
+ const {
2390
+ params,
2391
+ wrapperEl
2392
+ } = swiper;
2393
+
2394
+ if (swiper.animating && params.preventInteractionOnTransition) {
2395
+ return false;
2396
+ }
2397
+
2398
+ const minTranslate = swiper.minTranslate();
2399
+ const maxTranslate = swiper.maxTranslate();
2400
+ let newTranslate;
2401
+ if (translateBounds && translate > minTranslate) newTranslate = minTranslate;else if (translateBounds && translate < maxTranslate) newTranslate = maxTranslate;else newTranslate = translate; // Update progress
2402
+
2403
+ swiper.updateProgress(newTranslate);
2404
+
2405
+ if (params.cssMode) {
2406
+ const isH = swiper.isHorizontal();
2407
+
2408
+ if (speed === 0) {
2409
+ wrapperEl[isH ? 'scrollLeft' : 'scrollTop'] = -newTranslate;
2410
+ } else {
2411
+ if (!swiper.support.smoothScroll) {
2412
+ animateCSSModeScroll({
2413
+ swiper,
2414
+ targetPosition: -newTranslate,
2415
+ side: isH ? 'left' : 'top'
2416
+ });
2417
+ return true;
2418
+ }
2419
+
2420
+ wrapperEl.scrollTo({
2421
+ [isH ? 'left' : 'top']: -newTranslate,
2422
+ behavior: 'smooth'
2423
+ });
2424
+ }
2425
+
2426
+ return true;
2427
+ }
2428
+
2429
+ if (speed === 0) {
2430
+ swiper.setTransition(0);
2431
+ swiper.setTranslate(newTranslate);
2432
+
2433
+ if (runCallbacks) {
2434
+ swiper.emit('beforeTransitionStart', speed, internal);
2435
+ swiper.emit('transitionEnd');
2436
+ }
2437
+ } else {
2438
+ swiper.setTransition(speed);
2439
+ swiper.setTranslate(newTranslate);
2440
+
2441
+ if (runCallbacks) {
2442
+ swiper.emit('beforeTransitionStart', speed, internal);
2443
+ swiper.emit('transitionStart');
2444
+ }
2445
+
2446
+ if (!swiper.animating) {
2447
+ swiper.animating = true;
2448
+
2449
+ if (!swiper.onTranslateToWrapperTransitionEnd) {
2450
+ swiper.onTranslateToWrapperTransitionEnd = function transitionEnd(e) {
2451
+ if (!swiper || swiper.destroyed) return;
2452
+ if (e.target !== this) return;
2453
+ swiper.$wrapperEl[0].removeEventListener('transitionend', swiper.onTranslateToWrapperTransitionEnd);
2454
+ swiper.$wrapperEl[0].removeEventListener('webkitTransitionEnd', swiper.onTranslateToWrapperTransitionEnd);
2455
+ swiper.onTranslateToWrapperTransitionEnd = null;
2456
+ delete swiper.onTranslateToWrapperTransitionEnd;
2457
+
2458
+ if (runCallbacks) {
2459
+ swiper.emit('transitionEnd');
2460
+ }
2461
+ };
2462
+ }
2463
+
2464
+ swiper.$wrapperEl[0].addEventListener('transitionend', swiper.onTranslateToWrapperTransitionEnd);
2465
+ swiper.$wrapperEl[0].addEventListener('webkitTransitionEnd', swiper.onTranslateToWrapperTransitionEnd);
2466
+ }
2467
+ }
2468
+
2469
+ return true;
2470
+ }
2471
+
2472
+ const translate = {
2473
+ getTranslate: getSwiperTranslate,
2474
+ setTranslate,
2475
+ minTranslate,
2476
+ maxTranslate,
2477
+ translateTo
2478
+ };
2479
+
2480
+ function setTransition(duration, byController) {
2481
+ const swiper = this;
2482
+
2483
+ if (!swiper.params.cssMode) {
2484
+ swiper.$wrapperEl.transition(duration);
2485
+ }
2486
+
2487
+ swiper.emit('setTransition', duration, byController);
2488
+ }
2489
+
2490
+ function transitionEmit(_ref) {
2491
+ let {
2492
+ swiper,
2493
+ runCallbacks,
2494
+ direction,
2495
+ step
2496
+ } = _ref;
2497
+ const {
2498
+ activeIndex,
2499
+ previousIndex
2500
+ } = swiper;
2501
+ let dir = direction;
2502
+
2503
+ if (!dir) {
2504
+ if (activeIndex > previousIndex) dir = 'next';else if (activeIndex < previousIndex) dir = 'prev';else dir = 'reset';
2505
+ }
2506
+
2507
+ swiper.emit(`transition${step}`);
2508
+
2509
+ if (runCallbacks && activeIndex !== previousIndex) {
2510
+ if (dir === 'reset') {
2511
+ swiper.emit(`slideResetTransition${step}`);
2512
+ return;
2513
+ }
2514
+
2515
+ swiper.emit(`slideChangeTransition${step}`);
2516
+
2517
+ if (dir === 'next') {
2518
+ swiper.emit(`slideNextTransition${step}`);
2519
+ } else {
2520
+ swiper.emit(`slidePrevTransition${step}`);
2521
+ }
2522
+ }
2523
+ }
2524
+
2525
+ function transitionStart(runCallbacks, direction) {
2526
+ if (runCallbacks === void 0) {
2527
+ runCallbacks = true;
2528
+ }
2529
+
2530
+ const swiper = this;
2531
+ const {
2532
+ params
2533
+ } = swiper;
2534
+ if (params.cssMode) return;
2535
+
2536
+ if (params.autoHeight) {
2537
+ swiper.updateAutoHeight();
2538
+ }
2539
+
2540
+ transitionEmit({
2541
+ swiper,
2542
+ runCallbacks,
2543
+ direction,
2544
+ step: 'Start'
2545
+ });
2546
+ }
2547
+
2548
+ function transitionEnd(runCallbacks, direction) {
2549
+ if (runCallbacks === void 0) {
2550
+ runCallbacks = true;
2551
+ }
2552
+
2553
+ const swiper = this;
2554
+ const {
2555
+ params
2556
+ } = swiper;
2557
+ swiper.animating = false;
2558
+ if (params.cssMode) return;
2559
+ swiper.setTransition(0);
2560
+ transitionEmit({
2561
+ swiper,
2562
+ runCallbacks,
2563
+ direction,
2564
+ step: 'End'
2565
+ });
2566
+ }
2567
+
2568
+ const transition = {
2569
+ setTransition,
2570
+ transitionStart,
2571
+ transitionEnd
2572
+ };
2573
+
2574
+ function slideTo(index, speed, runCallbacks, internal, initial) {
2575
+ if (index === void 0) {
2576
+ index = 0;
2577
+ }
2578
+
2579
+ if (speed === void 0) {
2580
+ speed = this.params.speed;
2581
+ }
2582
+
2583
+ if (runCallbacks === void 0) {
2584
+ runCallbacks = true;
2585
+ }
2586
+
2587
+ if (typeof index !== 'number' && typeof index !== 'string') {
2588
+ throw new Error(`The 'index' argument cannot have type other than 'number' or 'string'. [${typeof index}] given.`);
2589
+ }
2590
+
2591
+ if (typeof index === 'string') {
2592
+ /**
2593
+ * The `index` argument converted from `string` to `number`.
2594
+ * @type {number}
2595
+ */
2596
+ const indexAsNumber = parseInt(index, 10);
2597
+ /**
2598
+ * Determines whether the `index` argument is a valid `number`
2599
+ * after being converted from the `string` type.
2600
+ * @type {boolean}
2601
+ */
2602
+
2603
+ const isValidNumber = isFinite(indexAsNumber);
2604
+
2605
+ if (!isValidNumber) {
2606
+ throw new Error(`The passed-in 'index' (string) couldn't be converted to 'number'. [${index}] given.`);
2607
+ } // Knowing that the converted `index` is a valid number,
2608
+ // we can update the original argument's value.
2609
+
2610
+
2611
+ index = indexAsNumber;
2612
+ }
2613
+
2614
+ const swiper = this;
2615
+ let slideIndex = index;
2616
+ if (slideIndex < 0) slideIndex = 0;
2617
+ const {
2618
+ params,
2619
+ snapGrid,
2620
+ slidesGrid,
2621
+ previousIndex,
2622
+ activeIndex,
2623
+ rtlTranslate: rtl,
2624
+ wrapperEl,
2625
+ enabled
2626
+ } = swiper;
2627
+
2628
+ if (swiper.animating && params.preventInteractionOnTransition || !enabled && !internal && !initial) {
2629
+ return false;
2630
+ }
2631
+
2632
+ const skip = Math.min(swiper.params.slidesPerGroupSkip, slideIndex);
2633
+ let snapIndex = skip + Math.floor((slideIndex - skip) / swiper.params.slidesPerGroup);
2634
+ if (snapIndex >= snapGrid.length) snapIndex = snapGrid.length - 1;
2635
+
2636
+ if ((activeIndex || params.initialSlide || 0) === (previousIndex || 0) && runCallbacks) {
2637
+ swiper.emit('beforeSlideChangeStart');
2638
+ }
2639
+
2640
+ const translate = -snapGrid[snapIndex]; // Update progress
2641
+
2642
+ swiper.updateProgress(translate); // Normalize slideIndex
2643
+
2644
+ if (params.normalizeSlideIndex) {
2645
+ for (let i = 0; i < slidesGrid.length; i += 1) {
2646
+ const normalizedTranslate = -Math.floor(translate * 100);
2647
+ const normalizedGrid = Math.floor(slidesGrid[i] * 100);
2648
+ const normalizedGridNext = Math.floor(slidesGrid[i + 1] * 100);
2649
+
2650
+ if (typeof slidesGrid[i + 1] !== 'undefined') {
2651
+ if (normalizedTranslate >= normalizedGrid && normalizedTranslate < normalizedGridNext - (normalizedGridNext - normalizedGrid) / 2) {
2652
+ slideIndex = i;
2653
+ } else if (normalizedTranslate >= normalizedGrid && normalizedTranslate < normalizedGridNext) {
2654
+ slideIndex = i + 1;
2655
+ }
2656
+ } else if (normalizedTranslate >= normalizedGrid) {
2657
+ slideIndex = i;
2658
+ }
2659
+ }
2660
+ } // Directions locks
2661
+
2662
+
2663
+ if (swiper.initialized && slideIndex !== activeIndex) {
2664
+ if (!swiper.allowSlideNext && translate < swiper.translate && translate < swiper.minTranslate()) {
2665
+ return false;
2666
+ }
2667
+
2668
+ if (!swiper.allowSlidePrev && translate > swiper.translate && translate > swiper.maxTranslate()) {
2669
+ if ((activeIndex || 0) !== slideIndex) return false;
2670
+ }
2671
+ }
2672
+
2673
+ let direction;
2674
+ if (slideIndex > activeIndex) direction = 'next';else if (slideIndex < activeIndex) direction = 'prev';else direction = 'reset'; // Update Index
2675
+
2676
+ if (rtl && -translate === swiper.translate || !rtl && translate === swiper.translate) {
2677
+ swiper.updateActiveIndex(slideIndex); // Update Height
2678
+
2679
+ if (params.autoHeight) {
2680
+ swiper.updateAutoHeight();
2681
+ }
2682
+
2683
+ swiper.updateSlidesClasses();
2684
+
2685
+ if (params.effect !== 'slide') {
2686
+ swiper.setTranslate(translate);
2687
+ }
2688
+
2689
+ if (direction !== 'reset') {
2690
+ swiper.transitionStart(runCallbacks, direction);
2691
+ swiper.transitionEnd(runCallbacks, direction);
2692
+ }
2693
+
2694
+ return false;
2695
+ }
2696
+
2697
+ if (params.cssMode) {
2698
+ const isH = swiper.isHorizontal();
2699
+ const t = rtl ? translate : -translate;
2700
+
2701
+ if (speed === 0) {
2702
+ const isVirtual = swiper.virtual && swiper.params.virtual.enabled;
2703
+
2704
+ if (isVirtual) {
2705
+ swiper.wrapperEl.style.scrollSnapType = 'none';
2706
+ swiper._immediateVirtual = true;
2707
+ }
2708
+
2709
+ wrapperEl[isH ? 'scrollLeft' : 'scrollTop'] = t;
2710
+
2711
+ if (isVirtual) {
2712
+ requestAnimationFrame(() => {
2713
+ swiper.wrapperEl.style.scrollSnapType = '';
2714
+ swiper._swiperImmediateVirtual = false;
2715
+ });
2716
+ }
2717
+ } else {
2718
+ if (!swiper.support.smoothScroll) {
2719
+ animateCSSModeScroll({
2720
+ swiper,
2721
+ targetPosition: t,
2722
+ side: isH ? 'left' : 'top'
2723
+ });
2724
+ return true;
2725
+ }
2726
+
2727
+ wrapperEl.scrollTo({
2728
+ [isH ? 'left' : 'top']: t,
2729
+ behavior: 'smooth'
2730
+ });
2731
+ }
2732
+
2733
+ return true;
2734
+ }
2735
+
2736
+ swiper.setTransition(speed);
2737
+ swiper.setTranslate(translate);
2738
+ swiper.updateActiveIndex(slideIndex);
2739
+ swiper.updateSlidesClasses();
2740
+ swiper.emit('beforeTransitionStart', speed, internal);
2741
+ swiper.transitionStart(runCallbacks, direction);
2742
+
2743
+ if (speed === 0) {
2744
+ swiper.transitionEnd(runCallbacks, direction);
2745
+ } else if (!swiper.animating) {
2746
+ swiper.animating = true;
2747
+
2748
+ if (!swiper.onSlideToWrapperTransitionEnd) {
2749
+ swiper.onSlideToWrapperTransitionEnd = function transitionEnd(e) {
2750
+ if (!swiper || swiper.destroyed) return;
2751
+ if (e.target !== this) return;
2752
+ swiper.$wrapperEl[0].removeEventListener('transitionend', swiper.onSlideToWrapperTransitionEnd);
2753
+ swiper.$wrapperEl[0].removeEventListener('webkitTransitionEnd', swiper.onSlideToWrapperTransitionEnd);
2754
+ swiper.onSlideToWrapperTransitionEnd = null;
2755
+ delete swiper.onSlideToWrapperTransitionEnd;
2756
+ swiper.transitionEnd(runCallbacks, direction);
2757
+ };
2758
+ }
2759
+
2760
+ swiper.$wrapperEl[0].addEventListener('transitionend', swiper.onSlideToWrapperTransitionEnd);
2761
+ swiper.$wrapperEl[0].addEventListener('webkitTransitionEnd', swiper.onSlideToWrapperTransitionEnd);
2762
+ }
2763
+
2764
+ return true;
2765
+ }
2766
+
2767
+ function slideToLoop(index, speed, runCallbacks, internal) {
2768
+ if (index === void 0) {
2769
+ index = 0;
2770
+ }
2771
+
2772
+ if (speed === void 0) {
2773
+ speed = this.params.speed;
2774
+ }
2775
+
2776
+ if (runCallbacks === void 0) {
2777
+ runCallbacks = true;
2778
+ }
2779
+
2780
+ if (typeof index === 'string') {
2781
+ /**
2782
+ * The `index` argument converted from `string` to `number`.
2783
+ * @type {number}
2784
+ */
2785
+ const indexAsNumber = parseInt(index, 10);
2786
+ /**
2787
+ * Determines whether the `index` argument is a valid `number`
2788
+ * after being converted from the `string` type.
2789
+ * @type {boolean}
2790
+ */
2791
+
2792
+ const isValidNumber = isFinite(indexAsNumber);
2793
+
2794
+ if (!isValidNumber) {
2795
+ throw new Error(`The passed-in 'index' (string) couldn't be converted to 'number'. [${index}] given.`);
2796
+ } // Knowing that the converted `index` is a valid number,
2797
+ // we can update the original argument's value.
2798
+
2799
+
2800
+ index = indexAsNumber;
2801
+ }
2802
+
2803
+ const swiper = this;
2804
+ let newIndex = index;
2805
+
2806
+ if (swiper.params.loop) {
2807
+ newIndex += swiper.loopedSlides;
2808
+ }
2809
+
2810
+ return swiper.slideTo(newIndex, speed, runCallbacks, internal);
2811
+ }
2812
+
2813
+ /* eslint no-unused-vars: "off" */
2814
+ function slideNext(speed, runCallbacks, internal) {
2815
+ if (speed === void 0) {
2816
+ speed = this.params.speed;
2817
+ }
2818
+
2819
+ if (runCallbacks === void 0) {
2820
+ runCallbacks = true;
2821
+ }
2822
+
2823
+ const swiper = this;
2824
+ const {
2825
+ animating,
2826
+ enabled,
2827
+ params
2828
+ } = swiper;
2829
+ if (!enabled) return swiper;
2830
+ let perGroup = params.slidesPerGroup;
2831
+
2832
+ if (params.slidesPerView === 'auto' && params.slidesPerGroup === 1 && params.slidesPerGroupAuto) {
2833
+ perGroup = Math.max(swiper.slidesPerViewDynamic('current', true), 1);
2834
+ }
2835
+
2836
+ const increment = swiper.activeIndex < params.slidesPerGroupSkip ? 1 : perGroup;
2837
+
2838
+ if (params.loop) {
2839
+ if (animating && params.loopPreventsSlide) return false;
2840
+ swiper.loopFix(); // eslint-disable-next-line
2841
+
2842
+ swiper._clientLeft = swiper.$wrapperEl[0].clientLeft;
2843
+ }
2844
+
2845
+ if (params.rewind && swiper.isEnd) {
2846
+ return swiper.slideTo(0, speed, runCallbacks, internal);
2847
+ }
2848
+
2849
+ return swiper.slideTo(swiper.activeIndex + increment, speed, runCallbacks, internal);
2850
+ }
2851
+
2852
+ /* eslint no-unused-vars: "off" */
2853
+ function slidePrev(speed, runCallbacks, internal) {
2854
+ if (speed === void 0) {
2855
+ speed = this.params.speed;
2856
+ }
2857
+
2858
+ if (runCallbacks === void 0) {
2859
+ runCallbacks = true;
2860
+ }
2861
+
2862
+ const swiper = this;
2863
+ const {
2864
+ params,
2865
+ animating,
2866
+ snapGrid,
2867
+ slidesGrid,
2868
+ rtlTranslate,
2869
+ enabled
2870
+ } = swiper;
2871
+ if (!enabled) return swiper;
2872
+
2873
+ if (params.loop) {
2874
+ if (animating && params.loopPreventsSlide) return false;
2875
+ swiper.loopFix(); // eslint-disable-next-line
2876
+
2877
+ swiper._clientLeft = swiper.$wrapperEl[0].clientLeft;
2878
+ }
2879
+
2880
+ const translate = rtlTranslate ? swiper.translate : -swiper.translate;
2881
+
2882
+ function normalize(val) {
2883
+ if (val < 0) return -Math.floor(Math.abs(val));
2884
+ return Math.floor(val);
2885
+ }
2886
+
2887
+ const normalizedTranslate = normalize(translate);
2888
+ const normalizedSnapGrid = snapGrid.map(val => normalize(val));
2889
+ let prevSnap = snapGrid[normalizedSnapGrid.indexOf(normalizedTranslate) - 1];
2890
+
2891
+ if (typeof prevSnap === 'undefined' && params.cssMode) {
2892
+ let prevSnapIndex;
2893
+ snapGrid.forEach((snap, snapIndex) => {
2894
+ if (normalizedTranslate >= snap) {
2895
+ // prevSnap = snap;
2896
+ prevSnapIndex = snapIndex;
2897
+ }
2898
+ });
2899
+
2900
+ if (typeof prevSnapIndex !== 'undefined') {
2901
+ prevSnap = snapGrid[prevSnapIndex > 0 ? prevSnapIndex - 1 : prevSnapIndex];
2902
+ }
2903
+ }
2904
+
2905
+ let prevIndex = 0;
2906
+
2907
+ if (typeof prevSnap !== 'undefined') {
2908
+ prevIndex = slidesGrid.indexOf(prevSnap);
2909
+ if (prevIndex < 0) prevIndex = swiper.activeIndex - 1;
2910
+
2911
+ if (params.slidesPerView === 'auto' && params.slidesPerGroup === 1 && params.slidesPerGroupAuto) {
2912
+ prevIndex = prevIndex - swiper.slidesPerViewDynamic('previous', true) + 1;
2913
+ prevIndex = Math.max(prevIndex, 0);
2914
+ }
2915
+ }
2916
+
2917
+ if (params.rewind && swiper.isBeginning) {
2918
+ const lastIndex = swiper.params.virtual && swiper.params.virtual.enabled && swiper.virtual ? swiper.virtual.slides.length - 1 : swiper.slides.length - 1;
2919
+ return swiper.slideTo(lastIndex, speed, runCallbacks, internal);
2920
+ }
2921
+
2922
+ return swiper.slideTo(prevIndex, speed, runCallbacks, internal);
2923
+ }
2924
+
2925
+ /* eslint no-unused-vars: "off" */
2926
+ function slideReset(speed, runCallbacks, internal) {
2927
+ if (speed === void 0) {
2928
+ speed = this.params.speed;
2929
+ }
2930
+
2931
+ if (runCallbacks === void 0) {
2932
+ runCallbacks = true;
2933
+ }
2934
+
2935
+ const swiper = this;
2936
+ return swiper.slideTo(swiper.activeIndex, speed, runCallbacks, internal);
2937
+ }
2938
+
2939
+ /* eslint no-unused-vars: "off" */
2940
+ function slideToClosest(speed, runCallbacks, internal, threshold) {
2941
+ if (speed === void 0) {
2942
+ speed = this.params.speed;
2943
+ }
2944
+
2945
+ if (runCallbacks === void 0) {
2946
+ runCallbacks = true;
2947
+ }
2948
+
2949
+ if (threshold === void 0) {
2950
+ threshold = 0.5;
2951
+ }
2952
+
2953
+ const swiper = this;
2954
+ let index = swiper.activeIndex;
2955
+ const skip = Math.min(swiper.params.slidesPerGroupSkip, index);
2956
+ const snapIndex = skip + Math.floor((index - skip) / swiper.params.slidesPerGroup);
2957
+ const translate = swiper.rtlTranslate ? swiper.translate : -swiper.translate;
2958
+
2959
+ if (translate >= swiper.snapGrid[snapIndex]) {
2960
+ // The current translate is on or after the current snap index, so the choice
2961
+ // is between the current index and the one after it.
2962
+ const currentSnap = swiper.snapGrid[snapIndex];
2963
+ const nextSnap = swiper.snapGrid[snapIndex + 1];
2964
+
2965
+ if (translate - currentSnap > (nextSnap - currentSnap) * threshold) {
2966
+ index += swiper.params.slidesPerGroup;
2967
+ }
2968
+ } else {
2969
+ // The current translate is before the current snap index, so the choice
2970
+ // is between the current index and the one before it.
2971
+ const prevSnap = swiper.snapGrid[snapIndex - 1];
2972
+ const currentSnap = swiper.snapGrid[snapIndex];
2973
+
2974
+ if (translate - prevSnap <= (currentSnap - prevSnap) * threshold) {
2975
+ index -= swiper.params.slidesPerGroup;
2976
+ }
2977
+ }
2978
+
2979
+ index = Math.max(index, 0);
2980
+ index = Math.min(index, swiper.slidesGrid.length - 1);
2981
+ return swiper.slideTo(index, speed, runCallbacks, internal);
2982
+ }
2983
+
2984
+ function slideToClickedSlide() {
2985
+ const swiper = this;
2986
+ const {
2987
+ params,
2988
+ $wrapperEl
2989
+ } = swiper;
2990
+ const slidesPerView = params.slidesPerView === 'auto' ? swiper.slidesPerViewDynamic() : params.slidesPerView;
2991
+ let slideToIndex = swiper.clickedIndex;
2992
+ let realIndex;
2993
+
2994
+ if (params.loop) {
2995
+ if (swiper.animating) return;
2996
+ realIndex = parseInt($(swiper.clickedSlide).attr('data-swiper-slide-index'), 10);
2997
+
2998
+ if (params.centeredSlides) {
2999
+ if (slideToIndex < swiper.loopedSlides - slidesPerView / 2 || slideToIndex > swiper.slides.length - swiper.loopedSlides + slidesPerView / 2) {
3000
+ swiper.loopFix();
3001
+ slideToIndex = $wrapperEl.children(`.${params.slideClass}[data-swiper-slide-index="${realIndex}"]:not(.${params.slideDuplicateClass})`).eq(0).index();
3002
+ nextTick(() => {
3003
+ swiper.slideTo(slideToIndex);
3004
+ });
3005
+ } else {
3006
+ swiper.slideTo(slideToIndex);
3007
+ }
3008
+ } else if (slideToIndex > swiper.slides.length - slidesPerView) {
3009
+ swiper.loopFix();
3010
+ slideToIndex = $wrapperEl.children(`.${params.slideClass}[data-swiper-slide-index="${realIndex}"]:not(.${params.slideDuplicateClass})`).eq(0).index();
3011
+ nextTick(() => {
3012
+ swiper.slideTo(slideToIndex);
3013
+ });
3014
+ } else {
3015
+ swiper.slideTo(slideToIndex);
3016
+ }
3017
+ } else {
3018
+ swiper.slideTo(slideToIndex);
3019
+ }
3020
+ }
3021
+
3022
+ const slide = {
3023
+ slideTo,
3024
+ slideToLoop,
3025
+ slideNext,
3026
+ slidePrev,
3027
+ slideReset,
3028
+ slideToClosest,
3029
+ slideToClickedSlide
3030
+ };
3031
+
3032
+ function loopCreate() {
3033
+ const swiper = this;
3034
+ const document = getDocument();
3035
+ const {
3036
+ params,
3037
+ $wrapperEl
3038
+ } = swiper; // Remove duplicated slides
3039
+
3040
+ const $selector = $wrapperEl.children().length > 0 ? $($wrapperEl.children()[0].parentNode) : $wrapperEl;
3041
+ $selector.children(`.${params.slideClass}.${params.slideDuplicateClass}`).remove();
3042
+ let slides = $selector.children(`.${params.slideClass}`);
3043
+
3044
+ if (params.loopFillGroupWithBlank) {
3045
+ const blankSlidesNum = params.slidesPerGroup - slides.length % params.slidesPerGroup;
3046
+
3047
+ if (blankSlidesNum !== params.slidesPerGroup) {
3048
+ for (let i = 0; i < blankSlidesNum; i += 1) {
3049
+ const blankNode = $(document.createElement('div')).addClass(`${params.slideClass} ${params.slideBlankClass}`);
3050
+ $selector.append(blankNode);
3051
+ }
3052
+
3053
+ slides = $selector.children(`.${params.slideClass}`);
3054
+ }
3055
+ }
3056
+
3057
+ if (params.slidesPerView === 'auto' && !params.loopedSlides) params.loopedSlides = slides.length;
3058
+ swiper.loopedSlides = Math.ceil(parseFloat(params.loopedSlides || params.slidesPerView, 10));
3059
+ swiper.loopedSlides += params.loopAdditionalSlides;
3060
+
3061
+ if (swiper.loopedSlides > slides.length && swiper.params.loopedSlidesLimit) {
3062
+ swiper.loopedSlides = slides.length;
3063
+ }
3064
+
3065
+ const prependSlides = [];
3066
+ const appendSlides = [];
3067
+ slides.each((el, index) => {
3068
+ $(el).attr('data-swiper-slide-index', index);
3069
+ });
3070
+
3071
+ for (let i = 0; i < swiper.loopedSlides; i += 1) {
3072
+ const index = i - Math.floor(i / slides.length) * slides.length;
3073
+ appendSlides.push(slides.eq(index)[0]);
3074
+ prependSlides.unshift(slides.eq(slides.length - index - 1)[0]);
3075
+ }
3076
+
3077
+ for (let i = 0; i < appendSlides.length; i += 1) {
3078
+ $selector.append($(appendSlides[i].cloneNode(true)).addClass(params.slideDuplicateClass));
3079
+ }
3080
+
3081
+ for (let i = prependSlides.length - 1; i >= 0; i -= 1) {
3082
+ $selector.prepend($(prependSlides[i].cloneNode(true)).addClass(params.slideDuplicateClass));
3083
+ }
3084
+ }
3085
+
3086
+ function loopFix() {
3087
+ const swiper = this;
3088
+ swiper.emit('beforeLoopFix');
3089
+ const {
3090
+ activeIndex,
3091
+ slides,
3092
+ loopedSlides,
3093
+ allowSlidePrev,
3094
+ allowSlideNext,
3095
+ snapGrid,
3096
+ rtlTranslate: rtl
3097
+ } = swiper;
3098
+ let newIndex;
3099
+ swiper.allowSlidePrev = true;
3100
+ swiper.allowSlideNext = true;
3101
+ const snapTranslate = -snapGrid[activeIndex];
3102
+ const diff = snapTranslate - swiper.getTranslate(); // Fix For Negative Oversliding
3103
+
3104
+ if (activeIndex < loopedSlides) {
3105
+ newIndex = slides.length - loopedSlides * 3 + activeIndex;
3106
+ newIndex += loopedSlides;
3107
+ const slideChanged = swiper.slideTo(newIndex, 0, false, true);
3108
+
3109
+ if (slideChanged && diff !== 0) {
3110
+ swiper.setTranslate((rtl ? -swiper.translate : swiper.translate) - diff);
3111
+ }
3112
+ } else if (activeIndex >= slides.length - loopedSlides) {
3113
+ // Fix For Positive Oversliding
3114
+ newIndex = -slides.length + activeIndex + loopedSlides;
3115
+ newIndex += loopedSlides;
3116
+ const slideChanged = swiper.slideTo(newIndex, 0, false, true);
3117
+
3118
+ if (slideChanged && diff !== 0) {
3119
+ swiper.setTranslate((rtl ? -swiper.translate : swiper.translate) - diff);
3120
+ }
3121
+ }
3122
+
3123
+ swiper.allowSlidePrev = allowSlidePrev;
3124
+ swiper.allowSlideNext = allowSlideNext;
3125
+ swiper.emit('loopFix');
3126
+ }
3127
+
3128
+ function loopDestroy() {
3129
+ const swiper = this;
3130
+ const {
3131
+ $wrapperEl,
3132
+ params,
3133
+ slides
3134
+ } = swiper;
3135
+ $wrapperEl.children(`.${params.slideClass}.${params.slideDuplicateClass},.${params.slideClass}.${params.slideBlankClass}`).remove();
3136
+ slides.removeAttr('data-swiper-slide-index');
3137
+ }
3138
+
3139
+ const loop = {
3140
+ loopCreate,
3141
+ loopFix,
3142
+ loopDestroy
3143
+ };
3144
+
3145
+ function setGrabCursor(moving) {
3146
+ const swiper = this;
3147
+ if (swiper.support.touch || !swiper.params.simulateTouch || swiper.params.watchOverflow && swiper.isLocked || swiper.params.cssMode) return;
3148
+ const el = swiper.params.touchEventsTarget === 'container' ? swiper.el : swiper.wrapperEl;
3149
+ el.style.cursor = 'move';
3150
+ el.style.cursor = moving ? 'grabbing' : 'grab';
3151
+ }
3152
+
3153
+ function unsetGrabCursor() {
3154
+ const swiper = this;
3155
+
3156
+ if (swiper.support.touch || swiper.params.watchOverflow && swiper.isLocked || swiper.params.cssMode) {
3157
+ return;
3158
+ }
3159
+
3160
+ swiper[swiper.params.touchEventsTarget === 'container' ? 'el' : 'wrapperEl'].style.cursor = '';
3161
+ }
3162
+
3163
+ const grabCursor = {
3164
+ setGrabCursor,
3165
+ unsetGrabCursor
3166
+ };
3167
+
3168
+ function closestElement(selector, base) {
3169
+ if (base === void 0) {
3170
+ base = this;
3171
+ }
3172
+
3173
+ function __closestFrom(el) {
3174
+ if (!el || el === getDocument() || el === getWindow()) return null;
3175
+ if (el.assignedSlot) el = el.assignedSlot;
3176
+ const found = el.closest(selector);
3177
+
3178
+ if (!found && !el.getRootNode) {
3179
+ return null;
3180
+ }
3181
+
3182
+ return found || __closestFrom(el.getRootNode().host);
3183
+ }
3184
+
3185
+ return __closestFrom(base);
3186
+ }
3187
+
3188
+ function onTouchStart(event) {
3189
+ const swiper = this;
3190
+ const document = getDocument();
3191
+ const window = getWindow();
3192
+ const data = swiper.touchEventsData;
3193
+ const {
3194
+ params,
3195
+ touches,
3196
+ enabled
3197
+ } = swiper;
3198
+ if (!enabled) return;
3199
+
3200
+ if (swiper.animating && params.preventInteractionOnTransition) {
3201
+ return;
3202
+ }
3203
+
3204
+ if (!swiper.animating && params.cssMode && params.loop) {
3205
+ swiper.loopFix();
3206
+ }
3207
+
3208
+ let e = event;
3209
+ if (e.originalEvent) e = e.originalEvent;
3210
+ let $targetEl = $(e.target);
3211
+
3212
+ if (params.touchEventsTarget === 'wrapper') {
3213
+ if (!$targetEl.closest(swiper.wrapperEl).length) return;
3214
+ }
3215
+
3216
+ data.isTouchEvent = e.type === 'touchstart';
3217
+ if (!data.isTouchEvent && 'which' in e && e.which === 3) return;
3218
+ if (!data.isTouchEvent && 'button' in e && e.button > 0) return;
3219
+ if (data.isTouched && data.isMoved) return; // change target el for shadow root component
3220
+
3221
+ const swipingClassHasValue = !!params.noSwipingClass && params.noSwipingClass !== '';
3222
+
3223
+ if (swipingClassHasValue && e.target && e.target.shadowRoot && event.path && event.path[0]) {
3224
+ $targetEl = $(event.path[0]);
3225
+ }
3226
+
3227
+ const noSwipingSelector = params.noSwipingSelector ? params.noSwipingSelector : `.${params.noSwipingClass}`;
3228
+ const isTargetShadow = !!(e.target && e.target.shadowRoot); // use closestElement for shadow root element to get the actual closest for nested shadow root element
3229
+
3230
+ if (params.noSwiping && (isTargetShadow ? closestElement(noSwipingSelector, $targetEl[0]) : $targetEl.closest(noSwipingSelector)[0])) {
3231
+ swiper.allowClick = true;
3232
+ return;
3233
+ }
3234
+
3235
+ if (params.swipeHandler) {
3236
+ if (!$targetEl.closest(params.swipeHandler)[0]) return;
3237
+ }
3238
+
3239
+ touches.currentX = e.type === 'touchstart' ? e.targetTouches[0].pageX : e.pageX;
3240
+ touches.currentY = e.type === 'touchstart' ? e.targetTouches[0].pageY : e.pageY;
3241
+ const startX = touches.currentX;
3242
+ const startY = touches.currentY; // Do NOT start if iOS edge swipe is detected. Otherwise iOS app cannot swipe-to-go-back anymore
3243
+
3244
+ const edgeSwipeDetection = params.edgeSwipeDetection || params.iOSEdgeSwipeDetection;
3245
+ const edgeSwipeThreshold = params.edgeSwipeThreshold || params.iOSEdgeSwipeThreshold;
3246
+
3247
+ if (edgeSwipeDetection && (startX <= edgeSwipeThreshold || startX >= window.innerWidth - edgeSwipeThreshold)) {
3248
+ if (edgeSwipeDetection === 'prevent') {
3249
+ event.preventDefault();
3250
+ } else {
3251
+ return;
3252
+ }
3253
+ }
3254
+
3255
+ Object.assign(data, {
3256
+ isTouched: true,
3257
+ isMoved: false,
3258
+ allowTouchCallbacks: true,
3259
+ isScrolling: undefined,
3260
+ startMoving: undefined
3261
+ });
3262
+ touches.startX = startX;
3263
+ touches.startY = startY;
3264
+ data.touchStartTime = now();
3265
+ swiper.allowClick = true;
3266
+ swiper.updateSize();
3267
+ swiper.swipeDirection = undefined;
3268
+ if (params.threshold > 0) data.allowThresholdMove = false;
3269
+
3270
+ if (e.type !== 'touchstart') {
3271
+ let preventDefault = true;
3272
+
3273
+ if ($targetEl.is(data.focusableElements)) {
3274
+ preventDefault = false;
3275
+
3276
+ if ($targetEl[0].nodeName === 'SELECT') {
3277
+ data.isTouched = false;
3278
+ }
3279
+ }
3280
+
3281
+ if (document.activeElement && $(document.activeElement).is(data.focusableElements) && document.activeElement !== $targetEl[0]) {
3282
+ document.activeElement.blur();
3283
+ }
3284
+
3285
+ const shouldPreventDefault = preventDefault && swiper.allowTouchMove && params.touchStartPreventDefault;
3286
+
3287
+ if ((params.touchStartForcePreventDefault || shouldPreventDefault) && !$targetEl[0].isContentEditable) {
3288
+ e.preventDefault();
3289
+ }
3290
+ }
3291
+
3292
+ if (swiper.params.freeMode && swiper.params.freeMode.enabled && swiper.freeMode && swiper.animating && !params.cssMode) {
3293
+ swiper.freeMode.onTouchStart();
3294
+ }
3295
+
3296
+ swiper.emit('touchStart', e);
3297
+ }
3298
+
3299
+ function onTouchMove(event) {
3300
+ const document = getDocument();
3301
+ const swiper = this;
3302
+ const data = swiper.touchEventsData;
3303
+ const {
3304
+ params,
3305
+ touches,
3306
+ rtlTranslate: rtl,
3307
+ enabled
3308
+ } = swiper;
3309
+ if (!enabled) return;
3310
+ let e = event;
3311
+ if (e.originalEvent) e = e.originalEvent;
3312
+
3313
+ if (!data.isTouched) {
3314
+ if (data.startMoving && data.isScrolling) {
3315
+ swiper.emit('touchMoveOpposite', e);
3316
+ }
3317
+
3318
+ return;
3319
+ }
3320
+
3321
+ if (data.isTouchEvent && e.type !== 'touchmove') return;
3322
+ const targetTouch = e.type === 'touchmove' && e.targetTouches && (e.targetTouches[0] || e.changedTouches[0]);
3323
+ const pageX = e.type === 'touchmove' ? targetTouch.pageX : e.pageX;
3324
+ const pageY = e.type === 'touchmove' ? targetTouch.pageY : e.pageY;
3325
+
3326
+ if (e.preventedByNestedSwiper) {
3327
+ touches.startX = pageX;
3328
+ touches.startY = pageY;
3329
+ return;
3330
+ }
3331
+
3332
+ if (!swiper.allowTouchMove) {
3333
+ if (!$(e.target).is(data.focusableElements)) {
3334
+ swiper.allowClick = false;
3335
+ }
3336
+
3337
+ if (data.isTouched) {
3338
+ Object.assign(touches, {
3339
+ startX: pageX,
3340
+ startY: pageY,
3341
+ currentX: pageX,
3342
+ currentY: pageY
3343
+ });
3344
+ data.touchStartTime = now();
3345
+ }
3346
+
3347
+ return;
3348
+ }
3349
+
3350
+ if (data.isTouchEvent && params.touchReleaseOnEdges && !params.loop) {
3351
+ if (swiper.isVertical()) {
3352
+ // Vertical
3353
+ if (pageY < touches.startY && swiper.translate <= swiper.maxTranslate() || pageY > touches.startY && swiper.translate >= swiper.minTranslate()) {
3354
+ data.isTouched = false;
3355
+ data.isMoved = false;
3356
+ return;
3357
+ }
3358
+ } else if (pageX < touches.startX && swiper.translate <= swiper.maxTranslate() || pageX > touches.startX && swiper.translate >= swiper.minTranslate()) {
3359
+ return;
3360
+ }
3361
+ }
3362
+
3363
+ if (data.isTouchEvent && document.activeElement) {
3364
+ if (e.target === document.activeElement && $(e.target).is(data.focusableElements)) {
3365
+ data.isMoved = true;
3366
+ swiper.allowClick = false;
3367
+ return;
3368
+ }
3369
+ }
3370
+
3371
+ if (data.allowTouchCallbacks) {
3372
+ swiper.emit('touchMove', e);
3373
+ }
3374
+
3375
+ if (e.targetTouches && e.targetTouches.length > 1) return;
3376
+ touches.currentX = pageX;
3377
+ touches.currentY = pageY;
3378
+ const diffX = touches.currentX - touches.startX;
3379
+ const diffY = touches.currentY - touches.startY;
3380
+ if (swiper.params.threshold && Math.sqrt(diffX ** 2 + diffY ** 2) < swiper.params.threshold) return;
3381
+
3382
+ if (typeof data.isScrolling === 'undefined') {
3383
+ let touchAngle;
3384
+
3385
+ if (swiper.isHorizontal() && touches.currentY === touches.startY || swiper.isVertical() && touches.currentX === touches.startX) {
3386
+ data.isScrolling = false;
3387
+ } else {
3388
+ // eslint-disable-next-line
3389
+ if (diffX * diffX + diffY * diffY >= 25) {
3390
+ touchAngle = Math.atan2(Math.abs(diffY), Math.abs(diffX)) * 180 / Math.PI;
3391
+ data.isScrolling = swiper.isHorizontal() ? touchAngle > params.touchAngle : 90 - touchAngle > params.touchAngle;
3392
+ }
3393
+ }
3394
+ }
3395
+
3396
+ if (data.isScrolling) {
3397
+ swiper.emit('touchMoveOpposite', e);
3398
+ }
3399
+
3400
+ if (typeof data.startMoving === 'undefined') {
3401
+ if (touches.currentX !== touches.startX || touches.currentY !== touches.startY) {
3402
+ data.startMoving = true;
3403
+ }
3404
+ }
3405
+
3406
+ if (data.isScrolling) {
3407
+ data.isTouched = false;
3408
+ return;
3409
+ }
3410
+
3411
+ if (!data.startMoving) {
3412
+ return;
3413
+ }
3414
+
3415
+ swiper.allowClick = false;
3416
+
3417
+ if (!params.cssMode && e.cancelable) {
3418
+ e.preventDefault();
3419
+ }
3420
+
3421
+ if (params.touchMoveStopPropagation && !params.nested) {
3422
+ e.stopPropagation();
3423
+ }
3424
+
3425
+ if (!data.isMoved) {
3426
+ if (params.loop && !params.cssMode) {
3427
+ swiper.loopFix();
3428
+ }
3429
+
3430
+ data.startTranslate = swiper.getTranslate();
3431
+ swiper.setTransition(0);
3432
+
3433
+ if (swiper.animating) {
3434
+ swiper.$wrapperEl.trigger('webkitTransitionEnd transitionend');
3435
+ }
3436
+
3437
+ data.allowMomentumBounce = false; // Grab Cursor
3438
+
3439
+ if (params.grabCursor && (swiper.allowSlideNext === true || swiper.allowSlidePrev === true)) {
3440
+ swiper.setGrabCursor(true);
3441
+ }
3442
+
3443
+ swiper.emit('sliderFirstMove', e);
3444
+ }
3445
+
3446
+ swiper.emit('sliderMove', e);
3447
+ data.isMoved = true;
3448
+ let diff = swiper.isHorizontal() ? diffX : diffY;
3449
+ touches.diff = diff;
3450
+ diff *= params.touchRatio;
3451
+ if (rtl) diff = -diff;
3452
+ swiper.swipeDirection = diff > 0 ? 'prev' : 'next';
3453
+ data.currentTranslate = diff + data.startTranslate;
3454
+ let disableParentSwiper = true;
3455
+ let resistanceRatio = params.resistanceRatio;
3456
+
3457
+ if (params.touchReleaseOnEdges) {
3458
+ resistanceRatio = 0;
3459
+ }
3460
+
3461
+ if (diff > 0 && data.currentTranslate > swiper.minTranslate()) {
3462
+ disableParentSwiper = false;
3463
+ if (params.resistance) data.currentTranslate = swiper.minTranslate() - 1 + (-swiper.minTranslate() + data.startTranslate + diff) ** resistanceRatio;
3464
+ } else if (diff < 0 && data.currentTranslate < swiper.maxTranslate()) {
3465
+ disableParentSwiper = false;
3466
+ if (params.resistance) data.currentTranslate = swiper.maxTranslate() + 1 - (swiper.maxTranslate() - data.startTranslate - diff) ** resistanceRatio;
3467
+ }
3468
+
3469
+ if (disableParentSwiper) {
3470
+ e.preventedByNestedSwiper = true;
3471
+ } // Directions locks
3472
+
3473
+
3474
+ if (!swiper.allowSlideNext && swiper.swipeDirection === 'next' && data.currentTranslate < data.startTranslate) {
3475
+ data.currentTranslate = data.startTranslate;
3476
+ }
3477
+
3478
+ if (!swiper.allowSlidePrev && swiper.swipeDirection === 'prev' && data.currentTranslate > data.startTranslate) {
3479
+ data.currentTranslate = data.startTranslate;
3480
+ }
3481
+
3482
+ if (!swiper.allowSlidePrev && !swiper.allowSlideNext) {
3483
+ data.currentTranslate = data.startTranslate;
3484
+ } // Threshold
3485
+
3486
+
3487
+ if (params.threshold > 0) {
3488
+ if (Math.abs(diff) > params.threshold || data.allowThresholdMove) {
3489
+ if (!data.allowThresholdMove) {
3490
+ data.allowThresholdMove = true;
3491
+ touches.startX = touches.currentX;
3492
+ touches.startY = touches.currentY;
3493
+ data.currentTranslate = data.startTranslate;
3494
+ touches.diff = swiper.isHorizontal() ? touches.currentX - touches.startX : touches.currentY - touches.startY;
3495
+ return;
3496
+ }
3497
+ } else {
3498
+ data.currentTranslate = data.startTranslate;
3499
+ return;
3500
+ }
3501
+ }
3502
+
3503
+ if (!params.followFinger || params.cssMode) return; // Update active index in free mode
3504
+
3505
+ if (params.freeMode && params.freeMode.enabled && swiper.freeMode || params.watchSlidesProgress) {
3506
+ swiper.updateActiveIndex();
3507
+ swiper.updateSlidesClasses();
3508
+ }
3509
+
3510
+ if (swiper.params.freeMode && params.freeMode.enabled && swiper.freeMode) {
3511
+ swiper.freeMode.onTouchMove();
3512
+ } // Update progress
3513
+
3514
+
3515
+ swiper.updateProgress(data.currentTranslate); // Update translate
3516
+
3517
+ swiper.setTranslate(data.currentTranslate);
3518
+ }
3519
+
3520
+ function onTouchEnd(event) {
3521
+ const swiper = this;
3522
+ const data = swiper.touchEventsData;
3523
+ const {
3524
+ params,
3525
+ touches,
3526
+ rtlTranslate: rtl,
3527
+ slidesGrid,
3528
+ enabled
3529
+ } = swiper;
3530
+ if (!enabled) return;
3531
+ let e = event;
3532
+ if (e.originalEvent) e = e.originalEvent;
3533
+
3534
+ if (data.allowTouchCallbacks) {
3535
+ swiper.emit('touchEnd', e);
3536
+ }
3537
+
3538
+ data.allowTouchCallbacks = false;
3539
+
3540
+ if (!data.isTouched) {
3541
+ if (data.isMoved && params.grabCursor) {
3542
+ swiper.setGrabCursor(false);
3543
+ }
3544
+
3545
+ data.isMoved = false;
3546
+ data.startMoving = false;
3547
+ return;
3548
+ } // Return Grab Cursor
3549
+
3550
+
3551
+ if (params.grabCursor && data.isMoved && data.isTouched && (swiper.allowSlideNext === true || swiper.allowSlidePrev === true)) {
3552
+ swiper.setGrabCursor(false);
3553
+ } // Time diff
3554
+
3555
+
3556
+ const touchEndTime = now();
3557
+ const timeDiff = touchEndTime - data.touchStartTime; // Tap, doubleTap, Click
3558
+
3559
+ if (swiper.allowClick) {
3560
+ const pathTree = e.path || e.composedPath && e.composedPath();
3561
+ swiper.updateClickedSlide(pathTree && pathTree[0] || e.target);
3562
+ swiper.emit('tap click', e);
3563
+
3564
+ if (timeDiff < 300 && touchEndTime - data.lastClickTime < 300) {
3565
+ swiper.emit('doubleTap doubleClick', e);
3566
+ }
3567
+ }
3568
+
3569
+ data.lastClickTime = now();
3570
+ nextTick(() => {
3571
+ if (!swiper.destroyed) swiper.allowClick = true;
3572
+ });
3573
+
3574
+ if (!data.isTouched || !data.isMoved || !swiper.swipeDirection || touches.diff === 0 || data.currentTranslate === data.startTranslate) {
3575
+ data.isTouched = false;
3576
+ data.isMoved = false;
3577
+ data.startMoving = false;
3578
+ return;
3579
+ }
3580
+
3581
+ data.isTouched = false;
3582
+ data.isMoved = false;
3583
+ data.startMoving = false;
3584
+ let currentPos;
3585
+
3586
+ if (params.followFinger) {
3587
+ currentPos = rtl ? swiper.translate : -swiper.translate;
3588
+ } else {
3589
+ currentPos = -data.currentTranslate;
3590
+ }
3591
+
3592
+ if (params.cssMode) {
3593
+ return;
3594
+ }
3595
+
3596
+ if (swiper.params.freeMode && params.freeMode.enabled) {
3597
+ swiper.freeMode.onTouchEnd({
3598
+ currentPos
3599
+ });
3600
+ return;
3601
+ } // Find current slide
3602
+
3603
+
3604
+ let stopIndex = 0;
3605
+ let groupSize = swiper.slidesSizesGrid[0];
3606
+
3607
+ for (let i = 0; i < slidesGrid.length; i += i < params.slidesPerGroupSkip ? 1 : params.slidesPerGroup) {
3608
+ const increment = i < params.slidesPerGroupSkip - 1 ? 1 : params.slidesPerGroup;
3609
+
3610
+ if (typeof slidesGrid[i + increment] !== 'undefined') {
3611
+ if (currentPos >= slidesGrid[i] && currentPos < slidesGrid[i + increment]) {
3612
+ stopIndex = i;
3613
+ groupSize = slidesGrid[i + increment] - slidesGrid[i];
3614
+ }
3615
+ } else if (currentPos >= slidesGrid[i]) {
3616
+ stopIndex = i;
3617
+ groupSize = slidesGrid[slidesGrid.length - 1] - slidesGrid[slidesGrid.length - 2];
3618
+ }
3619
+ }
3620
+
3621
+ let rewindFirstIndex = null;
3622
+ let rewindLastIndex = null;
3623
+
3624
+ if (params.rewind) {
3625
+ if (swiper.isBeginning) {
3626
+ rewindLastIndex = swiper.params.virtual && swiper.params.virtual.enabled && swiper.virtual ? swiper.virtual.slides.length - 1 : swiper.slides.length - 1;
3627
+ } else if (swiper.isEnd) {
3628
+ rewindFirstIndex = 0;
3629
+ }
3630
+ } // Find current slide size
3631
+
3632
+
3633
+ const ratio = (currentPos - slidesGrid[stopIndex]) / groupSize;
3634
+ const increment = stopIndex < params.slidesPerGroupSkip - 1 ? 1 : params.slidesPerGroup;
3635
+
3636
+ if (timeDiff > params.longSwipesMs) {
3637
+ // Long touches
3638
+ if (!params.longSwipes) {
3639
+ swiper.slideTo(swiper.activeIndex);
3640
+ return;
3641
+ }
3642
+
3643
+ if (swiper.swipeDirection === 'next') {
3644
+ if (ratio >= params.longSwipesRatio) swiper.slideTo(params.rewind && swiper.isEnd ? rewindFirstIndex : stopIndex + increment);else swiper.slideTo(stopIndex);
3645
+ }
3646
+
3647
+ if (swiper.swipeDirection === 'prev') {
3648
+ if (ratio > 1 - params.longSwipesRatio) {
3649
+ swiper.slideTo(stopIndex + increment);
3650
+ } else if (rewindLastIndex !== null && ratio < 0 && Math.abs(ratio) > params.longSwipesRatio) {
3651
+ swiper.slideTo(rewindLastIndex);
3652
+ } else {
3653
+ swiper.slideTo(stopIndex);
3654
+ }
3655
+ }
3656
+ } else {
3657
+ // Short swipes
3658
+ if (!params.shortSwipes) {
3659
+ swiper.slideTo(swiper.activeIndex);
3660
+ return;
3661
+ }
3662
+
3663
+ const isNavButtonTarget = swiper.navigation && (e.target === swiper.navigation.nextEl || e.target === swiper.navigation.prevEl);
3664
+
3665
+ if (!isNavButtonTarget) {
3666
+ if (swiper.swipeDirection === 'next') {
3667
+ swiper.slideTo(rewindFirstIndex !== null ? rewindFirstIndex : stopIndex + increment);
3668
+ }
3669
+
3670
+ if (swiper.swipeDirection === 'prev') {
3671
+ swiper.slideTo(rewindLastIndex !== null ? rewindLastIndex : stopIndex);
3672
+ }
3673
+ } else if (e.target === swiper.navigation.nextEl) {
3674
+ swiper.slideTo(stopIndex + increment);
3675
+ } else {
3676
+ swiper.slideTo(stopIndex);
3677
+ }
3678
+ }
3679
+ }
3680
+
3681
+ function onResize() {
3682
+ const swiper = this;
3683
+ const {
3684
+ params,
3685
+ el
3686
+ } = swiper;
3687
+ if (el && el.offsetWidth === 0) return; // Breakpoints
3688
+
3689
+ if (params.breakpoints) {
3690
+ swiper.setBreakpoint();
3691
+ } // Save locks
3692
+
3693
+
3694
+ const {
3695
+ allowSlideNext,
3696
+ allowSlidePrev,
3697
+ snapGrid
3698
+ } = swiper; // Disable locks on resize
3699
+
3700
+ swiper.allowSlideNext = true;
3701
+ swiper.allowSlidePrev = true;
3702
+ swiper.updateSize();
3703
+ swiper.updateSlides();
3704
+ swiper.updateSlidesClasses();
3705
+
3706
+ if ((params.slidesPerView === 'auto' || params.slidesPerView > 1) && swiper.isEnd && !swiper.isBeginning && !swiper.params.centeredSlides) {
3707
+ swiper.slideTo(swiper.slides.length - 1, 0, false, true);
3708
+ } else {
3709
+ swiper.slideTo(swiper.activeIndex, 0, false, true);
3710
+ }
3711
+
3712
+ if (swiper.autoplay && swiper.autoplay.running && swiper.autoplay.paused) {
3713
+ swiper.autoplay.run();
3714
+ } // Return locks after resize
3715
+
3716
+
3717
+ swiper.allowSlidePrev = allowSlidePrev;
3718
+ swiper.allowSlideNext = allowSlideNext;
3719
+
3720
+ if (swiper.params.watchOverflow && snapGrid !== swiper.snapGrid) {
3721
+ swiper.checkOverflow();
3722
+ }
3723
+ }
3724
+
3725
+ function onClick(e) {
3726
+ const swiper = this;
3727
+ if (!swiper.enabled) return;
3728
+
3729
+ if (!swiper.allowClick) {
3730
+ if (swiper.params.preventClicks) e.preventDefault();
3731
+
3732
+ if (swiper.params.preventClicksPropagation && swiper.animating) {
3733
+ e.stopPropagation();
3734
+ e.stopImmediatePropagation();
3735
+ }
3736
+ }
3737
+ }
3738
+
3739
+ function onScroll() {
3740
+ const swiper = this;
3741
+ const {
3742
+ wrapperEl,
3743
+ rtlTranslate,
3744
+ enabled
3745
+ } = swiper;
3746
+ if (!enabled) return;
3747
+ swiper.previousTranslate = swiper.translate;
3748
+
3749
+ if (swiper.isHorizontal()) {
3750
+ swiper.translate = -wrapperEl.scrollLeft;
3751
+ } else {
3752
+ swiper.translate = -wrapperEl.scrollTop;
3753
+ } // eslint-disable-next-line
3754
+
3755
+
3756
+ if (swiper.translate === 0) swiper.translate = 0;
3757
+ swiper.updateActiveIndex();
3758
+ swiper.updateSlidesClasses();
3759
+ let newProgress;
3760
+ const translatesDiff = swiper.maxTranslate() - swiper.minTranslate();
3761
+
3762
+ if (translatesDiff === 0) {
3763
+ newProgress = 0;
3764
+ } else {
3765
+ newProgress = (swiper.translate - swiper.minTranslate()) / translatesDiff;
3766
+ }
3767
+
3768
+ if (newProgress !== swiper.progress) {
3769
+ swiper.updateProgress(rtlTranslate ? -swiper.translate : swiper.translate);
3770
+ }
3771
+
3772
+ swiper.emit('setTranslate', swiper.translate, false);
3773
+ }
3774
+
3775
+ let dummyEventAttached = false;
3776
+
3777
+ function dummyEventListener() {}
3778
+
3779
+ const events = (swiper, method) => {
3780
+ const document = getDocument();
3781
+ const {
3782
+ params,
3783
+ touchEvents,
3784
+ el,
3785
+ wrapperEl,
3786
+ device,
3787
+ support
3788
+ } = swiper;
3789
+ const capture = !!params.nested;
3790
+ const domMethod = method === 'on' ? 'addEventListener' : 'removeEventListener';
3791
+ const swiperMethod = method; // Touch Events
3792
+
3793
+ if (!support.touch) {
3794
+ el[domMethod](touchEvents.start, swiper.onTouchStart, false);
3795
+ document[domMethod](touchEvents.move, swiper.onTouchMove, capture);
3796
+ document[domMethod](touchEvents.end, swiper.onTouchEnd, false);
3797
+ } else {
3798
+ const passiveListener = touchEvents.start === 'touchstart' && support.passiveListener && params.passiveListeners ? {
3799
+ passive: true,
3800
+ capture: false
3801
+ } : false;
3802
+ el[domMethod](touchEvents.start, swiper.onTouchStart, passiveListener);
3803
+ el[domMethod](touchEvents.move, swiper.onTouchMove, support.passiveListener ? {
3804
+ passive: false,
3805
+ capture
3806
+ } : capture);
3807
+ el[domMethod](touchEvents.end, swiper.onTouchEnd, passiveListener);
3808
+
3809
+ if (touchEvents.cancel) {
3810
+ el[domMethod](touchEvents.cancel, swiper.onTouchEnd, passiveListener);
3811
+ }
3812
+ } // Prevent Links Clicks
3813
+
3814
+
3815
+ if (params.preventClicks || params.preventClicksPropagation) {
3816
+ el[domMethod]('click', swiper.onClick, true);
3817
+ }
3818
+
3819
+ if (params.cssMode) {
3820
+ wrapperEl[domMethod]('scroll', swiper.onScroll);
3821
+ } // Resize handler
3822
+
3823
+
3824
+ if (params.updateOnWindowResize) {
3825
+ swiper[swiperMethod](device.ios || device.android ? 'resize orientationchange observerUpdate' : 'resize observerUpdate', onResize, true);
3826
+ } else {
3827
+ swiper[swiperMethod]('observerUpdate', onResize, true);
3828
+ }
3829
+ };
3830
+
3831
+ function attachEvents() {
3832
+ const swiper = this;
3833
+ const document = getDocument();
3834
+ const {
3835
+ params,
3836
+ support
3837
+ } = swiper;
3838
+ swiper.onTouchStart = onTouchStart.bind(swiper);
3839
+ swiper.onTouchMove = onTouchMove.bind(swiper);
3840
+ swiper.onTouchEnd = onTouchEnd.bind(swiper);
3841
+
3842
+ if (params.cssMode) {
3843
+ swiper.onScroll = onScroll.bind(swiper);
3844
+ }
3845
+
3846
+ swiper.onClick = onClick.bind(swiper);
3847
+
3848
+ if (support.touch && !dummyEventAttached) {
3849
+ document.addEventListener('touchstart', dummyEventListener);
3850
+ dummyEventAttached = true;
3851
+ }
3852
+
3853
+ events(swiper, 'on');
3854
+ }
3855
+
3856
+ function detachEvents() {
3857
+ const swiper = this;
3858
+ events(swiper, 'off');
3859
+ }
3860
+
3861
+ const events$1 = {
3862
+ attachEvents,
3863
+ detachEvents
3864
+ };
3865
+
3866
+ const isGridEnabled = (swiper, params) => {
3867
+ return swiper.grid && params.grid && params.grid.rows > 1;
3868
+ };
3869
+
3870
+ function setBreakpoint() {
3871
+ const swiper = this;
3872
+ const {
3873
+ activeIndex,
3874
+ initialized,
3875
+ loopedSlides = 0,
3876
+ params,
3877
+ $el
3878
+ } = swiper;
3879
+ const breakpoints = params.breakpoints;
3880
+ if (!breakpoints || breakpoints && Object.keys(breakpoints).length === 0) return; // Get breakpoint for window width and update parameters
3881
+
3882
+ const breakpoint = swiper.getBreakpoint(breakpoints, swiper.params.breakpointsBase, swiper.el);
3883
+ if (!breakpoint || swiper.currentBreakpoint === breakpoint) return;
3884
+ const breakpointOnlyParams = breakpoint in breakpoints ? breakpoints[breakpoint] : undefined;
3885
+ const breakpointParams = breakpointOnlyParams || swiper.originalParams;
3886
+ const wasMultiRow = isGridEnabled(swiper, params);
3887
+ const isMultiRow = isGridEnabled(swiper, breakpointParams);
3888
+ const wasEnabled = params.enabled;
3889
+
3890
+ if (wasMultiRow && !isMultiRow) {
3891
+ $el.removeClass(`${params.containerModifierClass}grid ${params.containerModifierClass}grid-column`);
3892
+ swiper.emitContainerClasses();
3893
+ } else if (!wasMultiRow && isMultiRow) {
3894
+ $el.addClass(`${params.containerModifierClass}grid`);
3895
+
3896
+ if (breakpointParams.grid.fill && breakpointParams.grid.fill === 'column' || !breakpointParams.grid.fill && params.grid.fill === 'column') {
3897
+ $el.addClass(`${params.containerModifierClass}grid-column`);
3898
+ }
3899
+
3900
+ swiper.emitContainerClasses();
3901
+ } // Toggle navigation, pagination, scrollbar
3902
+
3903
+
3904
+ ['navigation', 'pagination', 'scrollbar'].forEach(prop => {
3905
+ const wasModuleEnabled = params[prop] && params[prop].enabled;
3906
+ const isModuleEnabled = breakpointParams[prop] && breakpointParams[prop].enabled;
3907
+
3908
+ if (wasModuleEnabled && !isModuleEnabled) {
3909
+ swiper[prop].disable();
3910
+ }
3911
+
3912
+ if (!wasModuleEnabled && isModuleEnabled) {
3913
+ swiper[prop].enable();
3914
+ }
3915
+ });
3916
+ const directionChanged = breakpointParams.direction && breakpointParams.direction !== params.direction;
3917
+ const needsReLoop = params.loop && (breakpointParams.slidesPerView !== params.slidesPerView || directionChanged);
3918
+
3919
+ if (directionChanged && initialized) {
3920
+ swiper.changeDirection();
3921
+ }
3922
+
3923
+ extend(swiper.params, breakpointParams);
3924
+ const isEnabled = swiper.params.enabled;
3925
+ Object.assign(swiper, {
3926
+ allowTouchMove: swiper.params.allowTouchMove,
3927
+ allowSlideNext: swiper.params.allowSlideNext,
3928
+ allowSlidePrev: swiper.params.allowSlidePrev
3929
+ });
3930
+
3931
+ if (wasEnabled && !isEnabled) {
3932
+ swiper.disable();
3933
+ } else if (!wasEnabled && isEnabled) {
3934
+ swiper.enable();
3935
+ }
3936
+
3937
+ swiper.currentBreakpoint = breakpoint;
3938
+ swiper.emit('_beforeBreakpoint', breakpointParams);
3939
+
3940
+ if (needsReLoop && initialized) {
3941
+ swiper.loopDestroy();
3942
+ swiper.loopCreate();
3943
+ swiper.updateSlides();
3944
+ swiper.slideTo(activeIndex - loopedSlides + swiper.loopedSlides, 0, false);
3945
+ }
3946
+
3947
+ swiper.emit('breakpoint', breakpointParams);
3948
+ }
3949
+
3950
+ function getBreakpoint(breakpoints, base, containerEl) {
3951
+ if (base === void 0) {
3952
+ base = 'window';
3953
+ }
3954
+
3955
+ if (!breakpoints || base === 'container' && !containerEl) return undefined;
3956
+ let breakpoint = false;
3957
+ const window = getWindow();
3958
+ const currentHeight = base === 'window' ? window.innerHeight : containerEl.clientHeight;
3959
+ const points = Object.keys(breakpoints).map(point => {
3960
+ if (typeof point === 'string' && point.indexOf('@') === 0) {
3961
+ const minRatio = parseFloat(point.substr(1));
3962
+ const value = currentHeight * minRatio;
3963
+ return {
3964
+ value,
3965
+ point
3966
+ };
3967
+ }
3968
+
3969
+ return {
3970
+ value: point,
3971
+ point
3972
+ };
3973
+ });
3974
+ points.sort((a, b) => parseInt(a.value, 10) - parseInt(b.value, 10));
3975
+
3976
+ for (let i = 0; i < points.length; i += 1) {
3977
+ const {
3978
+ point,
3979
+ value
3980
+ } = points[i];
3981
+
3982
+ if (base === 'window') {
3983
+ if (window.matchMedia(`(min-width: ${value}px)`).matches) {
3984
+ breakpoint = point;
3985
+ }
3986
+ } else if (value <= containerEl.clientWidth) {
3987
+ breakpoint = point;
3988
+ }
3989
+ }
3990
+
3991
+ return breakpoint || 'max';
3992
+ }
3993
+
3994
+ const breakpoints = {
3995
+ setBreakpoint,
3996
+ getBreakpoint
3997
+ };
3998
+
3999
+ function prepareClasses(entries, prefix) {
4000
+ const resultClasses = [];
4001
+ entries.forEach(item => {
4002
+ if (typeof item === 'object') {
4003
+ Object.keys(item).forEach(classNames => {
4004
+ if (item[classNames]) {
4005
+ resultClasses.push(prefix + classNames);
4006
+ }
4007
+ });
4008
+ } else if (typeof item === 'string') {
4009
+ resultClasses.push(prefix + item);
4010
+ }
4011
+ });
4012
+ return resultClasses;
4013
+ }
4014
+
4015
+ function addClasses() {
4016
+ const swiper = this;
4017
+ const {
4018
+ classNames,
4019
+ params,
4020
+ rtl,
4021
+ $el,
4022
+ device,
4023
+ support
4024
+ } = swiper; // prettier-ignore
4025
+
4026
+ const suffixes = prepareClasses(['initialized', params.direction, {
4027
+ 'pointer-events': !support.touch
4028
+ }, {
4029
+ 'free-mode': swiper.params.freeMode && params.freeMode.enabled
4030
+ }, {
4031
+ 'autoheight': params.autoHeight
4032
+ }, {
4033
+ 'rtl': rtl
4034
+ }, {
4035
+ 'grid': params.grid && params.grid.rows > 1
4036
+ }, {
4037
+ 'grid-column': params.grid && params.grid.rows > 1 && params.grid.fill === 'column'
4038
+ }, {
4039
+ 'android': device.android
4040
+ }, {
4041
+ 'ios': device.ios
4042
+ }, {
4043
+ 'css-mode': params.cssMode
4044
+ }, {
4045
+ 'centered': params.cssMode && params.centeredSlides
4046
+ }, {
4047
+ 'watch-progress': params.watchSlidesProgress
4048
+ }], params.containerModifierClass);
4049
+ classNames.push(...suffixes);
4050
+ $el.addClass([...classNames].join(' '));
4051
+ swiper.emitContainerClasses();
4052
+ }
4053
+
4054
+ function removeClasses() {
4055
+ const swiper = this;
4056
+ const {
4057
+ $el,
4058
+ classNames
4059
+ } = swiper;
4060
+ $el.removeClass(classNames.join(' '));
4061
+ swiper.emitContainerClasses();
4062
+ }
4063
+
4064
+ const classes = {
4065
+ addClasses,
4066
+ removeClasses
4067
+ };
4068
+
4069
+ function loadImage(imageEl, src, srcset, sizes, checkForComplete, callback) {
4070
+ const window = getWindow();
4071
+ let image;
4072
+
4073
+ function onReady() {
4074
+ if (callback) callback();
4075
+ }
4076
+
4077
+ const isPicture = $(imageEl).parent('picture')[0];
4078
+
4079
+ if (!isPicture && (!imageEl.complete || !checkForComplete)) {
4080
+ if (src) {
4081
+ image = new window.Image();
4082
+ image.onload = onReady;
4083
+ image.onerror = onReady;
4084
+
4085
+ if (sizes) {
4086
+ image.sizes = sizes;
4087
+ }
4088
+
4089
+ if (srcset) {
4090
+ image.srcset = srcset;
4091
+ }
4092
+
4093
+ if (src) {
4094
+ image.src = src;
4095
+ }
4096
+ } else {
4097
+ onReady();
4098
+ }
4099
+ } else {
4100
+ // image already loaded...
4101
+ onReady();
4102
+ }
4103
+ }
4104
+
4105
+ function preloadImages() {
4106
+ const swiper = this;
4107
+ swiper.imagesToLoad = swiper.$el.find('img');
4108
+
4109
+ function onReady() {
4110
+ if (typeof swiper === 'undefined' || swiper === null || !swiper || swiper.destroyed) return;
4111
+ if (swiper.imagesLoaded !== undefined) swiper.imagesLoaded += 1;
4112
+
4113
+ if (swiper.imagesLoaded === swiper.imagesToLoad.length) {
4114
+ if (swiper.params.updateOnImagesReady) swiper.update();
4115
+ swiper.emit('imagesReady');
4116
+ }
4117
+ }
4118
+
4119
+ for (let i = 0; i < swiper.imagesToLoad.length; i += 1) {
4120
+ const imageEl = swiper.imagesToLoad[i];
4121
+ swiper.loadImage(imageEl, imageEl.currentSrc || imageEl.getAttribute('src'), imageEl.srcset || imageEl.getAttribute('srcset'), imageEl.sizes || imageEl.getAttribute('sizes'), true, onReady);
4122
+ }
4123
+ }
4124
+
4125
+ const images = {
4126
+ loadImage,
4127
+ preloadImages
4128
+ };
4129
+
4130
+ function checkOverflow() {
4131
+ const swiper = this;
4132
+ const {
4133
+ isLocked: wasLocked,
4134
+ params
4135
+ } = swiper;
4136
+ const {
4137
+ slidesOffsetBefore
4138
+ } = params;
4139
+
4140
+ if (slidesOffsetBefore) {
4141
+ const lastSlideIndex = swiper.slides.length - 1;
4142
+ const lastSlideRightEdge = swiper.slidesGrid[lastSlideIndex] + swiper.slidesSizesGrid[lastSlideIndex] + slidesOffsetBefore * 2;
4143
+ swiper.isLocked = swiper.size > lastSlideRightEdge;
4144
+ } else {
4145
+ swiper.isLocked = swiper.snapGrid.length === 1;
4146
+ }
4147
+
4148
+ if (params.allowSlideNext === true) {
4149
+ swiper.allowSlideNext = !swiper.isLocked;
4150
+ }
4151
+
4152
+ if (params.allowSlidePrev === true) {
4153
+ swiper.allowSlidePrev = !swiper.isLocked;
4154
+ }
4155
+
4156
+ if (wasLocked && wasLocked !== swiper.isLocked) {
4157
+ swiper.isEnd = false;
4158
+ }
4159
+
4160
+ if (wasLocked !== swiper.isLocked) {
4161
+ swiper.emit(swiper.isLocked ? 'lock' : 'unlock');
4162
+ }
4163
+ }
4164
+
4165
+ const checkOverflow$1 = {
4166
+ checkOverflow
4167
+ };
4168
+
4169
+ const defaults = {
4170
+ init: true,
4171
+ direction: 'horizontal',
4172
+ touchEventsTarget: 'wrapper',
4173
+ initialSlide: 0,
4174
+ speed: 300,
4175
+ cssMode: false,
4176
+ updateOnWindowResize: true,
4177
+ resizeObserver: true,
4178
+ nested: false,
4179
+ createElements: false,
4180
+ enabled: true,
4181
+ focusableElements: 'input, select, option, textarea, button, video, label',
4182
+ // Overrides
4183
+ width: null,
4184
+ height: null,
4185
+ //
4186
+ preventInteractionOnTransition: false,
4187
+ // ssr
4188
+ userAgent: null,
4189
+ url: null,
4190
+ // To support iOS's swipe-to-go-back gesture (when being used in-app).
4191
+ edgeSwipeDetection: false,
4192
+ edgeSwipeThreshold: 20,
4193
+ // Autoheight
4194
+ autoHeight: false,
4195
+ // Set wrapper width
4196
+ setWrapperSize: false,
4197
+ // Virtual Translate
4198
+ virtualTranslate: false,
4199
+ // Effects
4200
+ effect: 'slide',
4201
+ // 'slide' or 'fade' or 'cube' or 'coverflow' or 'flip'
4202
+ // Breakpoints
4203
+ breakpoints: undefined,
4204
+ breakpointsBase: 'window',
4205
+ // Slides grid
4206
+ spaceBetween: 0,
4207
+ slidesPerView: 1,
4208
+ slidesPerGroup: 1,
4209
+ slidesPerGroupSkip: 0,
4210
+ slidesPerGroupAuto: false,
4211
+ centeredSlides: false,
4212
+ centeredSlidesBounds: false,
4213
+ slidesOffsetBefore: 0,
4214
+ // in px
4215
+ slidesOffsetAfter: 0,
4216
+ // in px
4217
+ normalizeSlideIndex: true,
4218
+ centerInsufficientSlides: false,
4219
+ // Disable swiper and hide navigation when container not overflow
4220
+ watchOverflow: true,
4221
+ // Round length
4222
+ roundLengths: false,
4223
+ // Touches
4224
+ touchRatio: 1,
4225
+ touchAngle: 45,
4226
+ simulateTouch: true,
4227
+ shortSwipes: true,
4228
+ longSwipes: true,
4229
+ longSwipesRatio: 0.5,
4230
+ longSwipesMs: 300,
4231
+ followFinger: true,
4232
+ allowTouchMove: true,
4233
+ threshold: 0,
4234
+ touchMoveStopPropagation: false,
4235
+ touchStartPreventDefault: true,
4236
+ touchStartForcePreventDefault: false,
4237
+ touchReleaseOnEdges: false,
4238
+ // Unique Navigation Elements
4239
+ uniqueNavElements: true,
4240
+ // Resistance
4241
+ resistance: true,
4242
+ resistanceRatio: 0.85,
4243
+ // Progress
4244
+ watchSlidesProgress: false,
4245
+ // Cursor
4246
+ grabCursor: false,
4247
+ // Clicks
4248
+ preventClicks: true,
4249
+ preventClicksPropagation: true,
4250
+ slideToClickedSlide: false,
4251
+ // Images
4252
+ preloadImages: true,
4253
+ updateOnImagesReady: true,
4254
+ // loop
4255
+ loop: false,
4256
+ loopAdditionalSlides: 0,
4257
+ loopedSlides: null,
4258
+ loopedSlidesLimit: true,
4259
+ loopFillGroupWithBlank: false,
4260
+ loopPreventsSlide: true,
4261
+ // rewind
4262
+ rewind: false,
4263
+ // Swiping/no swiping
4264
+ allowSlidePrev: true,
4265
+ allowSlideNext: true,
4266
+ swipeHandler: null,
4267
+ // '.swipe-handler',
4268
+ noSwiping: true,
4269
+ noSwipingClass: 'swiper-no-swiping',
4270
+ noSwipingSelector: null,
4271
+ // Passive Listeners
4272
+ passiveListeners: true,
4273
+ maxBackfaceHiddenSlides: 10,
4274
+ // NS
4275
+ containerModifierClass: 'swiper-',
4276
+ // NEW
4277
+ slideClass: 'swiper-slide',
4278
+ slideBlankClass: 'swiper-slide-invisible-blank',
4279
+ slideActiveClass: 'swiper-slide-active',
4280
+ slideDuplicateActiveClass: 'swiper-slide-duplicate-active',
4281
+ slideVisibleClass: 'swiper-slide-visible',
4282
+ slideDuplicateClass: 'swiper-slide-duplicate',
4283
+ slideNextClass: 'swiper-slide-next',
4284
+ slideDuplicateNextClass: 'swiper-slide-duplicate-next',
4285
+ slidePrevClass: 'swiper-slide-prev',
4286
+ slideDuplicatePrevClass: 'swiper-slide-duplicate-prev',
4287
+ wrapperClass: 'swiper-wrapper',
4288
+ // Callbacks
4289
+ runCallbacksOnInit: true,
4290
+ // Internals
4291
+ _emitClasses: false
4292
+ };
4293
+
4294
+ function moduleExtendParams(params, allModulesParams) {
4295
+ return function extendParams(obj) {
4296
+ if (obj === void 0) {
4297
+ obj = {};
4298
+ }
4299
+
4300
+ const moduleParamName = Object.keys(obj)[0];
4301
+ const moduleParams = obj[moduleParamName];
4302
+
4303
+ if (typeof moduleParams !== 'object' || moduleParams === null) {
4304
+ extend(allModulesParams, obj);
4305
+ return;
4306
+ }
4307
+
4308
+ if (['navigation', 'pagination', 'scrollbar'].indexOf(moduleParamName) >= 0 && params[moduleParamName] === true) {
4309
+ params[moduleParamName] = {
4310
+ auto: true
4311
+ };
4312
+ }
4313
+
4314
+ if (!(moduleParamName in params && 'enabled' in moduleParams)) {
4315
+ extend(allModulesParams, obj);
4316
+ return;
4317
+ }
4318
+
4319
+ if (params[moduleParamName] === true) {
4320
+ params[moduleParamName] = {
4321
+ enabled: true
4322
+ };
4323
+ }
4324
+
4325
+ if (typeof params[moduleParamName] === 'object' && !('enabled' in params[moduleParamName])) {
4326
+ params[moduleParamName].enabled = true;
4327
+ }
4328
+
4329
+ if (!params[moduleParamName]) params[moduleParamName] = {
4330
+ enabled: false
4331
+ };
4332
+ extend(allModulesParams, obj);
4333
+ };
4334
+ }
4335
+
4336
+ /* eslint no-param-reassign: "off" */
4337
+ const prototypes = {
4338
+ eventsEmitter,
4339
+ update,
4340
+ translate,
4341
+ transition,
4342
+ slide,
4343
+ loop,
4344
+ grabCursor,
4345
+ events: events$1,
4346
+ breakpoints,
4347
+ checkOverflow: checkOverflow$1,
4348
+ classes,
4349
+ images
4350
+ };
4351
+ const extendedDefaults = {};
4352
+
4353
+ class Swiper {
4354
+ constructor() {
4355
+ let el;
4356
+ let params;
4357
+
4358
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
4359
+ args[_key] = arguments[_key];
4360
+ }
4361
+
4362
+ if (args.length === 1 && args[0].constructor && Object.prototype.toString.call(args[0]).slice(8, -1) === 'Object') {
4363
+ params = args[0];
4364
+ } else {
4365
+ [el, params] = args;
4366
+ }
4367
+
4368
+ if (!params) params = {};
4369
+ params = extend({}, params);
4370
+ if (el && !params.el) params.el = el;
4371
+
4372
+ if (params.el && $(params.el).length > 1) {
4373
+ const swipers = [];
4374
+ $(params.el).each(containerEl => {
4375
+ const newParams = extend({}, params, {
4376
+ el: containerEl
4377
+ });
4378
+ swipers.push(new Swiper(newParams));
4379
+ });
4380
+ return swipers;
4381
+ } // Swiper Instance
4382
+
4383
+
4384
+ const swiper = this;
4385
+ swiper.__swiper__ = true;
4386
+ swiper.support = getSupport();
4387
+ swiper.device = getDevice({
4388
+ userAgent: params.userAgent
4389
+ });
4390
+ swiper.browser = getBrowser();
4391
+ swiper.eventsListeners = {};
4392
+ swiper.eventsAnyListeners = [];
4393
+ swiper.modules = [...swiper.__modules__];
4394
+
4395
+ if (params.modules && Array.isArray(params.modules)) {
4396
+ swiper.modules.push(...params.modules);
4397
+ }
4398
+
4399
+ const allModulesParams = {};
4400
+ swiper.modules.forEach(mod => {
4401
+ mod({
4402
+ swiper,
4403
+ extendParams: moduleExtendParams(params, allModulesParams),
4404
+ on: swiper.on.bind(swiper),
4405
+ once: swiper.once.bind(swiper),
4406
+ off: swiper.off.bind(swiper),
4407
+ emit: swiper.emit.bind(swiper)
4408
+ });
4409
+ }); // Extend defaults with modules params
4410
+
4411
+ const swiperParams = extend({}, defaults, allModulesParams); // Extend defaults with passed params
4412
+
4413
+ swiper.params = extend({}, swiperParams, extendedDefaults, params);
4414
+ swiper.originalParams = extend({}, swiper.params);
4415
+ swiper.passedParams = extend({}, params); // add event listeners
4416
+
4417
+ if (swiper.params && swiper.params.on) {
4418
+ Object.keys(swiper.params.on).forEach(eventName => {
4419
+ swiper.on(eventName, swiper.params.on[eventName]);
4420
+ });
4421
+ }
4422
+
4423
+ if (swiper.params && swiper.params.onAny) {
4424
+ swiper.onAny(swiper.params.onAny);
4425
+ } // Save Dom lib
4426
+
4427
+
4428
+ swiper.$ = $; // Extend Swiper
4429
+
4430
+ Object.assign(swiper, {
4431
+ enabled: swiper.params.enabled,
4432
+ el,
4433
+ // Classes
4434
+ classNames: [],
4435
+ // Slides
4436
+ slides: $(),
4437
+ slidesGrid: [],
4438
+ snapGrid: [],
4439
+ slidesSizesGrid: [],
4440
+
4441
+ // isDirection
4442
+ isHorizontal() {
4443
+ return swiper.params.direction === 'horizontal';
4444
+ },
4445
+
4446
+ isVertical() {
4447
+ return swiper.params.direction === 'vertical';
4448
+ },
4449
+
4450
+ // Indexes
4451
+ activeIndex: 0,
4452
+ realIndex: 0,
4453
+ //
4454
+ isBeginning: true,
4455
+ isEnd: false,
4456
+ // Props
4457
+ translate: 0,
4458
+ previousTranslate: 0,
4459
+ progress: 0,
4460
+ velocity: 0,
4461
+ animating: false,
4462
+ // Locks
4463
+ allowSlideNext: swiper.params.allowSlideNext,
4464
+ allowSlidePrev: swiper.params.allowSlidePrev,
4465
+ // Touch Events
4466
+ touchEvents: function touchEvents() {
4467
+ const touch = ['touchstart', 'touchmove', 'touchend', 'touchcancel'];
4468
+ const desktop = ['pointerdown', 'pointermove', 'pointerup'];
4469
+ swiper.touchEventsTouch = {
4470
+ start: touch[0],
4471
+ move: touch[1],
4472
+ end: touch[2],
4473
+ cancel: touch[3]
4474
+ };
4475
+ swiper.touchEventsDesktop = {
4476
+ start: desktop[0],
4477
+ move: desktop[1],
4478
+ end: desktop[2]
4479
+ };
4480
+ return swiper.support.touch || !swiper.params.simulateTouch ? swiper.touchEventsTouch : swiper.touchEventsDesktop;
4481
+ }(),
4482
+ touchEventsData: {
4483
+ isTouched: undefined,
4484
+ isMoved: undefined,
4485
+ allowTouchCallbacks: undefined,
4486
+ touchStartTime: undefined,
4487
+ isScrolling: undefined,
4488
+ currentTranslate: undefined,
4489
+ startTranslate: undefined,
4490
+ allowThresholdMove: undefined,
4491
+ // Form elements to match
4492
+ focusableElements: swiper.params.focusableElements,
4493
+ // Last click time
4494
+ lastClickTime: now(),
4495
+ clickTimeout: undefined,
4496
+ // Velocities
4497
+ velocities: [],
4498
+ allowMomentumBounce: undefined,
4499
+ isTouchEvent: undefined,
4500
+ startMoving: undefined
4501
+ },
4502
+ // Clicks
4503
+ allowClick: true,
4504
+ // Touches
4505
+ allowTouchMove: swiper.params.allowTouchMove,
4506
+ touches: {
4507
+ startX: 0,
4508
+ startY: 0,
4509
+ currentX: 0,
4510
+ currentY: 0,
4511
+ diff: 0
4512
+ },
4513
+ // Images
4514
+ imagesToLoad: [],
4515
+ imagesLoaded: 0
4516
+ });
4517
+ swiper.emit('_swiper'); // Init
4518
+
4519
+ if (swiper.params.init) {
4520
+ swiper.init();
4521
+ } // Return app instance
4522
+
4523
+
4524
+ return swiper;
4525
+ }
4526
+
4527
+ enable() {
4528
+ const swiper = this;
4529
+ if (swiper.enabled) return;
4530
+ swiper.enabled = true;
4531
+
4532
+ if (swiper.params.grabCursor) {
4533
+ swiper.setGrabCursor();
4534
+ }
4535
+
4536
+ swiper.emit('enable');
4537
+ }
4538
+
4539
+ disable() {
4540
+ const swiper = this;
4541
+ if (!swiper.enabled) return;
4542
+ swiper.enabled = false;
4543
+
4544
+ if (swiper.params.grabCursor) {
4545
+ swiper.unsetGrabCursor();
4546
+ }
4547
+
4548
+ swiper.emit('disable');
4549
+ }
4550
+
4551
+ setProgress(progress, speed) {
4552
+ const swiper = this;
4553
+ progress = Math.min(Math.max(progress, 0), 1);
4554
+ const min = swiper.minTranslate();
4555
+ const max = swiper.maxTranslate();
4556
+ const current = (max - min) * progress + min;
4557
+ swiper.translateTo(current, typeof speed === 'undefined' ? 0 : speed);
4558
+ swiper.updateActiveIndex();
4559
+ swiper.updateSlidesClasses();
4560
+ }
4561
+
4562
+ emitContainerClasses() {
4563
+ const swiper = this;
4564
+ if (!swiper.params._emitClasses || !swiper.el) return;
4565
+ const cls = swiper.el.className.split(' ').filter(className => {
4566
+ return className.indexOf('swiper') === 0 || className.indexOf(swiper.params.containerModifierClass) === 0;
4567
+ });
4568
+ swiper.emit('_containerClasses', cls.join(' '));
4569
+ }
4570
+
4571
+ getSlideClasses(slideEl) {
4572
+ const swiper = this;
4573
+ if (swiper.destroyed) return '';
4574
+ return slideEl.className.split(' ').filter(className => {
4575
+ return className.indexOf('swiper-slide') === 0 || className.indexOf(swiper.params.slideClass) === 0;
4576
+ }).join(' ');
4577
+ }
4578
+
4579
+ emitSlidesClasses() {
4580
+ const swiper = this;
4581
+ if (!swiper.params._emitClasses || !swiper.el) return;
4582
+ const updates = [];
4583
+ swiper.slides.each(slideEl => {
4584
+ const classNames = swiper.getSlideClasses(slideEl);
4585
+ updates.push({
4586
+ slideEl,
4587
+ classNames
4588
+ });
4589
+ swiper.emit('_slideClass', slideEl, classNames);
4590
+ });
4591
+ swiper.emit('_slideClasses', updates);
4592
+ }
4593
+
4594
+ slidesPerViewDynamic(view, exact) {
4595
+ if (view === void 0) {
4596
+ view = 'current';
4597
+ }
4598
+
4599
+ if (exact === void 0) {
4600
+ exact = false;
4601
+ }
4602
+
4603
+ const swiper = this;
4604
+ const {
4605
+ params,
4606
+ slides,
4607
+ slidesGrid,
4608
+ slidesSizesGrid,
4609
+ size: swiperSize,
4610
+ activeIndex
4611
+ } = swiper;
4612
+ let spv = 1;
4613
+
4614
+ if (params.centeredSlides) {
4615
+ let slideSize = slides[activeIndex].swiperSlideSize;
4616
+ let breakLoop;
4617
+
4618
+ for (let i = activeIndex + 1; i < slides.length; i += 1) {
4619
+ if (slides[i] && !breakLoop) {
4620
+ slideSize += slides[i].swiperSlideSize;
4621
+ spv += 1;
4622
+ if (slideSize > swiperSize) breakLoop = true;
4623
+ }
4624
+ }
4625
+
4626
+ for (let i = activeIndex - 1; i >= 0; i -= 1) {
4627
+ if (slides[i] && !breakLoop) {
4628
+ slideSize += slides[i].swiperSlideSize;
4629
+ spv += 1;
4630
+ if (slideSize > swiperSize) breakLoop = true;
4631
+ }
4632
+ }
4633
+ } else {
4634
+ // eslint-disable-next-line
4635
+ if (view === 'current') {
4636
+ for (let i = activeIndex + 1; i < slides.length; i += 1) {
4637
+ const slideInView = exact ? slidesGrid[i] + slidesSizesGrid[i] - slidesGrid[activeIndex] < swiperSize : slidesGrid[i] - slidesGrid[activeIndex] < swiperSize;
4638
+
4639
+ if (slideInView) {
4640
+ spv += 1;
4641
+ }
4642
+ }
4643
+ } else {
4644
+ // previous
4645
+ for (let i = activeIndex - 1; i >= 0; i -= 1) {
4646
+ const slideInView = slidesGrid[activeIndex] - slidesGrid[i] < swiperSize;
4647
+
4648
+ if (slideInView) {
4649
+ spv += 1;
4650
+ }
4651
+ }
4652
+ }
4653
+ }
4654
+
4655
+ return spv;
4656
+ }
4657
+
4658
+ update() {
4659
+ const swiper = this;
4660
+ if (!swiper || swiper.destroyed) return;
4661
+ const {
4662
+ snapGrid,
4663
+ params
4664
+ } = swiper; // Breakpoints
4665
+
4666
+ if (params.breakpoints) {
4667
+ swiper.setBreakpoint();
4668
+ }
4669
+
4670
+ swiper.updateSize();
4671
+ swiper.updateSlides();
4672
+ swiper.updateProgress();
4673
+ swiper.updateSlidesClasses();
4674
+
4675
+ function setTranslate() {
4676
+ const translateValue = swiper.rtlTranslate ? swiper.translate * -1 : swiper.translate;
4677
+ const newTranslate = Math.min(Math.max(translateValue, swiper.maxTranslate()), swiper.minTranslate());
4678
+ swiper.setTranslate(newTranslate);
4679
+ swiper.updateActiveIndex();
4680
+ swiper.updateSlidesClasses();
4681
+ }
4682
+
4683
+ let translated;
4684
+
4685
+ if (swiper.params.freeMode && swiper.params.freeMode.enabled) {
4686
+ setTranslate();
4687
+
4688
+ if (swiper.params.autoHeight) {
4689
+ swiper.updateAutoHeight();
4690
+ }
4691
+ } else {
4692
+ if ((swiper.params.slidesPerView === 'auto' || swiper.params.slidesPerView > 1) && swiper.isEnd && !swiper.params.centeredSlides) {
4693
+ translated = swiper.slideTo(swiper.slides.length - 1, 0, false, true);
4694
+ } else {
4695
+ translated = swiper.slideTo(swiper.activeIndex, 0, false, true);
4696
+ }
4697
+
4698
+ if (!translated) {
4699
+ setTranslate();
4700
+ }
4701
+ }
4702
+
4703
+ if (params.watchOverflow && snapGrid !== swiper.snapGrid) {
4704
+ swiper.checkOverflow();
4705
+ }
4706
+
4707
+ swiper.emit('update');
4708
+ }
4709
+
4710
+ changeDirection(newDirection, needUpdate) {
4711
+ if (needUpdate === void 0) {
4712
+ needUpdate = true;
4713
+ }
4714
+
4715
+ const swiper = this;
4716
+ const currentDirection = swiper.params.direction;
4717
+
4718
+ if (!newDirection) {
4719
+ // eslint-disable-next-line
4720
+ newDirection = currentDirection === 'horizontal' ? 'vertical' : 'horizontal';
4721
+ }
4722
+
4723
+ if (newDirection === currentDirection || newDirection !== 'horizontal' && newDirection !== 'vertical') {
4724
+ return swiper;
4725
+ }
4726
+
4727
+ swiper.$el.removeClass(`${swiper.params.containerModifierClass}${currentDirection}`).addClass(`${swiper.params.containerModifierClass}${newDirection}`);
4728
+ swiper.emitContainerClasses();
4729
+ swiper.params.direction = newDirection;
4730
+ swiper.slides.each(slideEl => {
4731
+ if (newDirection === 'vertical') {
4732
+ slideEl.style.width = '';
4733
+ } else {
4734
+ slideEl.style.height = '';
4735
+ }
4736
+ });
4737
+ swiper.emit('changeDirection');
4738
+ if (needUpdate) swiper.update();
4739
+ return swiper;
4740
+ }
4741
+
4742
+ changeLanguageDirection(direction) {
4743
+ const swiper = this;
4744
+ if (swiper.rtl && direction === 'rtl' || !swiper.rtl && direction === 'ltr') return;
4745
+ swiper.rtl = direction === 'rtl';
4746
+ swiper.rtlTranslate = swiper.params.direction === 'horizontal' && swiper.rtl;
4747
+
4748
+ if (swiper.rtl) {
4749
+ swiper.$el.addClass(`${swiper.params.containerModifierClass}rtl`);
4750
+ swiper.el.dir = 'rtl';
4751
+ } else {
4752
+ swiper.$el.removeClass(`${swiper.params.containerModifierClass}rtl`);
4753
+ swiper.el.dir = 'ltr';
4754
+ }
4755
+
4756
+ swiper.update();
4757
+ }
4758
+
4759
+ mount(el) {
4760
+ const swiper = this;
4761
+ if (swiper.mounted) return true; // Find el
4762
+
4763
+ const $el = $(el || swiper.params.el);
4764
+ el = $el[0];
4765
+
4766
+ if (!el) {
4767
+ return false;
4768
+ }
4769
+
4770
+ el.swiper = swiper;
4771
+
4772
+ const getWrapperSelector = () => {
4773
+ return `.${(swiper.params.wrapperClass || '').trim().split(' ').join('.')}`;
4774
+ };
4775
+
4776
+ const getWrapper = () => {
4777
+ if (el && el.shadowRoot && el.shadowRoot.querySelector) {
4778
+ const res = $(el.shadowRoot.querySelector(getWrapperSelector())); // Children needs to return slot items
4779
+
4780
+ res.children = options => $el.children(options);
4781
+
4782
+ return res;
4783
+ }
4784
+
4785
+ if (!$el.children) {
4786
+ return $($el).children(getWrapperSelector());
4787
+ }
4788
+
4789
+ return $el.children(getWrapperSelector());
4790
+ }; // Find Wrapper
4791
+
4792
+
4793
+ let $wrapperEl = getWrapper();
4794
+
4795
+ if ($wrapperEl.length === 0 && swiper.params.createElements) {
4796
+ const document = getDocument();
4797
+ const wrapper = document.createElement('div');
4798
+ $wrapperEl = $(wrapper);
4799
+ wrapper.className = swiper.params.wrapperClass;
4800
+ $el.append(wrapper);
4801
+ $el.children(`.${swiper.params.slideClass}`).each(slideEl => {
4802
+ $wrapperEl.append(slideEl);
4803
+ });
4804
+ }
4805
+
4806
+ Object.assign(swiper, {
4807
+ $el,
4808
+ el,
4809
+ $wrapperEl,
4810
+ wrapperEl: $wrapperEl[0],
4811
+ mounted: true,
4812
+ // RTL
4813
+ rtl: el.dir.toLowerCase() === 'rtl' || $el.css('direction') === 'rtl',
4814
+ rtlTranslate: swiper.params.direction === 'horizontal' && (el.dir.toLowerCase() === 'rtl' || $el.css('direction') === 'rtl'),
4815
+ wrongRTL: $wrapperEl.css('display') === '-webkit-box'
4816
+ });
4817
+ return true;
4818
+ }
4819
+
4820
+ init(el) {
4821
+ const swiper = this;
4822
+ if (swiper.initialized) return swiper;
4823
+ const mounted = swiper.mount(el);
4824
+ if (mounted === false) return swiper;
4825
+ swiper.emit('beforeInit'); // Set breakpoint
4826
+
4827
+ if (swiper.params.breakpoints) {
4828
+ swiper.setBreakpoint();
4829
+ } // Add Classes
4830
+
4831
+
4832
+ swiper.addClasses(); // Create loop
4833
+
4834
+ if (swiper.params.loop) {
4835
+ swiper.loopCreate();
4836
+ } // Update size
4837
+
4838
+
4839
+ swiper.updateSize(); // Update slides
4840
+
4841
+ swiper.updateSlides();
4842
+
4843
+ if (swiper.params.watchOverflow) {
4844
+ swiper.checkOverflow();
4845
+ } // Set Grab Cursor
4846
+
4847
+
4848
+ if (swiper.params.grabCursor && swiper.enabled) {
4849
+ swiper.setGrabCursor();
4850
+ }
4851
+
4852
+ if (swiper.params.preloadImages) {
4853
+ swiper.preloadImages();
4854
+ } // Slide To Initial Slide
4855
+
4856
+
4857
+ if (swiper.params.loop) {
4858
+ swiper.slideTo(swiper.params.initialSlide + swiper.loopedSlides, 0, swiper.params.runCallbacksOnInit, false, true);
4859
+ } else {
4860
+ swiper.slideTo(swiper.params.initialSlide, 0, swiper.params.runCallbacksOnInit, false, true);
4861
+ } // Attach events
4862
+
4863
+
4864
+ swiper.attachEvents(); // Init Flag
4865
+
4866
+ swiper.initialized = true; // Emit
4867
+
4868
+ swiper.emit('init');
4869
+ swiper.emit('afterInit');
4870
+ return swiper;
4871
+ }
4872
+
4873
+ destroy(deleteInstance, cleanStyles) {
4874
+ if (deleteInstance === void 0) {
4875
+ deleteInstance = true;
4876
+ }
4877
+
4878
+ if (cleanStyles === void 0) {
4879
+ cleanStyles = true;
4880
+ }
4881
+
4882
+ const swiper = this;
4883
+ const {
4884
+ params,
4885
+ $el,
4886
+ $wrapperEl,
4887
+ slides
4888
+ } = swiper;
4889
+
4890
+ if (typeof swiper.params === 'undefined' || swiper.destroyed) {
4891
+ return null;
4892
+ }
4893
+
4894
+ swiper.emit('beforeDestroy'); // Init Flag
4895
+
4896
+ swiper.initialized = false; // Detach events
4897
+
4898
+ swiper.detachEvents(); // Destroy loop
4899
+
4900
+ if (params.loop) {
4901
+ swiper.loopDestroy();
4902
+ } // Cleanup styles
4903
+
4904
+
4905
+ if (cleanStyles) {
4906
+ swiper.removeClasses();
4907
+ $el.removeAttr('style');
4908
+ $wrapperEl.removeAttr('style');
4909
+
4910
+ if (slides && slides.length) {
4911
+ slides.removeClass([params.slideVisibleClass, params.slideActiveClass, params.slideNextClass, params.slidePrevClass].join(' ')).removeAttr('style').removeAttr('data-swiper-slide-index');
4912
+ }
4913
+ }
4914
+
4915
+ swiper.emit('destroy'); // Detach emitter events
4916
+
4917
+ Object.keys(swiper.eventsListeners).forEach(eventName => {
4918
+ swiper.off(eventName);
4919
+ });
4920
+
4921
+ if (deleteInstance !== false) {
4922
+ swiper.$el[0].swiper = null;
4923
+ deleteProps(swiper);
4924
+ }
4925
+
4926
+ swiper.destroyed = true;
4927
+ return null;
4928
+ }
4929
+
4930
+ static extendDefaults(newDefaults) {
4931
+ extend(extendedDefaults, newDefaults);
4932
+ }
4933
+
4934
+ static get extendedDefaults() {
4935
+ return extendedDefaults;
4936
+ }
4937
+
4938
+ static get defaults() {
4939
+ return defaults;
4940
+ }
4941
+
4942
+ static installModule(mod) {
4943
+ if (!Swiper.prototype.__modules__) Swiper.prototype.__modules__ = [];
4944
+ const modules = Swiper.prototype.__modules__;
4945
+
4946
+ if (typeof mod === 'function' && modules.indexOf(mod) < 0) {
4947
+ modules.push(mod);
4948
+ }
4949
+ }
4950
+
4951
+ static use(module) {
4952
+ if (Array.isArray(module)) {
4953
+ module.forEach(m => Swiper.installModule(m));
4954
+ return Swiper;
4955
+ }
4956
+
4957
+ Swiper.installModule(module);
4958
+ return Swiper;
4959
+ }
4960
+
4961
+ }
4962
+
4963
+ Object.keys(prototypes).forEach(prototypeGroup => {
4964
+ Object.keys(prototypes[prototypeGroup]).forEach(protoMethod => {
4965
+ Swiper.prototype[protoMethod] = prototypes[prototypeGroup][protoMethod];
4966
+ });
4967
+ });
4968
+ Swiper.use([Resize, Observer]);
4969
+
4970
+ const sallaSwiperCss = "@font-face{font-family:\"swiper-icons\";src:url(\"data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA\") format(\"woff\");font-weight:400;font-style:normal}:root{--swiper-theme-color:#007aff}.swiper{margin-left:auto;margin-right:auto;position:relative;overflow:hidden;list-style:none;padding:0;z-index:1}.swiper-vertical>.swiper-wrapper{-ms-flex-direction:column;flex-direction:column}.swiper-wrapper{position:relative;width:100%;height:100%;z-index:1;display:-ms-flexbox;display:flex;-webkit-transition-property:-webkit-transform;transition-property:-webkit-transform;transition-property:transform;transition-property:transform, -webkit-transform;-webkit-box-sizing:content-box;box-sizing:content-box}.swiper-android .swiper-slide,.swiper-wrapper{-webkit-transform:translate3d(0px, 0, 0);transform:translate3d(0px, 0, 0)}.swiper-pointer-events{-ms-touch-action:pan-y;touch-action:pan-y}.swiper-pointer-events.swiper-vertical{-ms-touch-action:pan-x;touch-action:pan-x}.swiper-slide{-ms-flex-negative:0;flex-shrink:0;width:100%;height:100%;position:relative;-webkit-transition-property:-webkit-transform;transition-property:-webkit-transform;transition-property:transform;transition-property:transform, -webkit-transform}.swiper-slide-invisible-blank{visibility:hidden}.swiper-autoheight,.swiper-autoheight .swiper-slide{height:auto}.swiper-autoheight .swiper-wrapper{-ms-flex-align:start;align-items:flex-start;-webkit-transition-property:height, -webkit-transform;transition-property:height, -webkit-transform;transition-property:transform, height;transition-property:transform, height, -webkit-transform}.swiper-backface-hidden .swiper-slide{-webkit-transform:translateZ(0);transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-3d,.swiper-3d.swiper-css-mode .swiper-wrapper{-webkit-perspective:1200px;perspective:1200px}.swiper-3d .swiper-wrapper,.swiper-3d .swiper-slide,.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top,.swiper-3d .swiper-slide-shadow-bottom,.swiper-3d .swiper-cube-shadow{-webkit-transform-style:preserve-3d;transform-style:preserve-3d}.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top,.swiper-3d .swiper-slide-shadow-bottom{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;z-index:10}.swiper-3d .swiper-slide-shadow{background:rgba(0, 0, 0, 0.15)}.swiper-3d .swiper-slide-shadow-left{background-image:-webkit-gradient(linear, right top, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));background-image:linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0))}.swiper-3d .swiper-slide-shadow-right{background-image:-webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));background-image:linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0))}.swiper-3d .swiper-slide-shadow-top{background-image:-webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));background-image:linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0))}.swiper-3d .swiper-slide-shadow-bottom{background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));background-image:linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0))}.swiper-css-mode>.swiper-wrapper{overflow:auto;scrollbar-width:none;-ms-overflow-style:none;}.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar{display:none}.swiper-css-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:start start}.swiper-horizontal.swiper-css-mode>.swiper-wrapper{-webkit-scroll-snap-type:x mandatory;-ms-scroll-snap-type:x mandatory;scroll-snap-type:x mandatory}.swiper-vertical.swiper-css-mode>.swiper-wrapper{-webkit-scroll-snap-type:y mandatory;-ms-scroll-snap-type:y mandatory;scroll-snap-type:y mandatory}.swiper-centered>.swiper-wrapper::before{content:\"\";-ms-flex-negative:0;flex-shrink:0;-ms-flex-order:9999;order:9999}.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child{-webkit-margin-start:var(--swiper-centered-offset-before);margin-inline-start:var(--swiper-centered-offset-before)}.swiper-centered.swiper-horizontal>.swiper-wrapper::before{height:100%;width:var(--swiper-centered-offset-after)}.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child{-webkit-margin-before:var(--swiper-centered-offset-before);margin-block-start:var(--swiper-centered-offset-before)}.swiper-centered.swiper-vertical>.swiper-wrapper::before{width:100%;height:var(--swiper-centered-offset-after)}.swiper-centered>.swiper-wrapper>.swiper-slide{scroll-snap-align:center center}.s-swiper{position:relative}";
4971
+
4972
+ const SallaSwiper = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement$1 {
4973
+ constructor() {
4974
+ super();
4975
+ this.__registerHost();
4976
+ /**
4977
+ * Set to true to enable continuous loop mode. Defaults to false.
4978
+ */
4979
+ this.loop = false;
4980
+ /**
4981
+ * Duration of transition between slides (in ms). Defaults to 300ms.
4982
+ */
4983
+ this.speed = 300;
4984
+ /**
4985
+ * Number of slides per view (slides visible at the same time on slider's container).
4986
+ */
4987
+ this.itemPerView = "auto";
4988
+ /**
4989
+ * Distance between slide items in px. Defaults to 8px
4990
+ */
4991
+ this.spaceBetweenItems = 8;
4992
+ // States
4993
+ this.currentIndex = undefined;
4994
+ this.isLastSlideItem = false;
4995
+ this.isFirstSlideItem = true;
4996
+ }
4997
+ componentDidLoad() {
4998
+ this.initSwiper();
4999
+ }
5000
+ initSwiper() {
5001
+ for (const slide of this.swiperWrapper.children) {
5002
+ slide.classList.add('swiper-slide');
5003
+ }
5004
+ this.swiper = new Swiper(this.swiperContainer, {
5005
+ loop: this.loop,
5006
+ speed: this.speed,
5007
+ slidesPerView: this.itemPerView,
5008
+ spaceBetween: this.spaceBetweenItems,
5009
+ });
5010
+ }
5011
+ update() {
5012
+ this.swiper.update();
5013
+ }
5014
+ render() {
5015
+ var _a, _b;
5016
+ return (h("div", { class: "s-swiper" }, h("div", { class: "s-swiper-button-prev" }, h("salla-button", { disabled: (_a = this.swiper) === null || _a === void 0 ? void 0 : _a.isBeginning, shape: "icon", color: "light", onClick: () => this.swiper.slidePrev() }, h("span", { class: "s-swiper-button-icon", innerHTML: LeftArrow }))), h("div", { class: "s-swiper-button-next" }, h("salla-button", { disabled: (_b = this.swiper) === null || _b === void 0 ? void 0 : _b.isEnd, shape: "icon", color: "light", onClick: () => this.swiper.slideNext() }, h("span", { class: "s-swiper-button-icon", innerHTML: ArrowRightIcon }))), h("div", { class: "swiper" }, h("div", { class: "swiper-container s-swiper-container", ref: el => this.swiperContainer = el }, h("div", { class: "swiper-wrapper s-swiper-wrapper", ref: el => this.swiperWrapper = el }, h("slot", null))))));
5017
+ }
5018
+ static get style() { return sallaSwiperCss; }
5019
+ }, [4, "salla-swiper", {
5020
+ "loop": [4],
5021
+ "speed": [2],
5022
+ "itemPerView": [8, "item-per-view"],
5023
+ "spaceBetweenItems": [2, "space-between-items"],
5024
+ "currentIndex": [32],
5025
+ "isLastSlideItem": [32],
5026
+ "isFirstSlideItem": [32]
5027
+ }]);
5028
+ function defineCustomElement() {
5029
+ if (typeof customElements === "undefined") {
5030
+ return;
5031
+ }
5032
+ const components = ["salla-swiper", "salla-button"];
5033
+ components.forEach(tagName => { switch (tagName) {
5034
+ case "salla-swiper":
5035
+ if (!customElements.get(tagName)) {
5036
+ customElements.define(tagName, SallaSwiper);
5037
+ }
5038
+ break;
5039
+ case "salla-button":
5040
+ if (!customElements.get(tagName)) {
5041
+ defineCustomElement$1();
5042
+ }
5043
+ break;
5044
+ } });
5045
+ }
5046
+ defineCustomElement();
5047
+
5048
+ export { LeftArrow as L, SallaSwiper as S, defineCustomElement as d };